diff options
| author | martin-s <martin-s@ffa7fe5e-494d-0410-b361-a75ebd5db220> | 2009-08-16 16:40:26 +0000 |
|---|---|---|
| committer | martin-s <martin-s@ffa7fe5e-494d-0410-b361-a75ebd5db220> | 2009-08-16 16:40:26 +0000 |
| commit | a2f441579ac0862157385997aef1befb15f979b1 (patch) | |
| tree | 70b504e30d213d8a71df97ac95f50db767eddb5d /navit/android.c | |
| parent | 6da5a61760df1dd39737bc0e3f805391479d1b01 (diff) | |
| download | navit-a2f441579ac0862157385997aef1befb15f979b1.tar.gz | |
Add:Core:And another batch of android updates
git-svn-id: http://svn.code.sf.net/p/navit/code/trunk/navit@2468 ffa7fe5e-494d-0410-b361-a75ebd5db220
Diffstat (limited to 'navit/android.c')
| -rw-r--r-- | navit/android.c | 33 |
1 files changed, 33 insertions, 0 deletions
diff --git a/navit/android.c b/navit/android.c index e6b7ee7cd..9e94f5114 100644 --- a/navit/android.c +++ b/navit/android.c @@ -1,7 +1,9 @@ #include <string.h> +#include <poll.h> #include "android.h" #include <android/log.h> #include "debug.h" +#include "event.h" #include "callback.h" JNIEnv *jnienv; @@ -104,3 +106,34 @@ Java_org_navitproject_navit_NavitIdle_IdleCallback( JNIEnv* env, jobject thiz, i callback_call_0((struct callback *)id); } +JNIEXPORT void JNICALL +Java_org_navitproject_navit_NavitWatch_poll( JNIEnv* env, jobject thiz, int fd, int cond) +{ + struct pollfd pfd; + pfd.fd=fd; + dbg(0,"%p poll called for %d %d\n",env, fd, cond); + switch ((enum event_watch_cond)cond) { + case event_watch_cond_read: + pfd.events=POLLIN; + break; + case event_watch_cond_write: + pfd.events=POLLOUT; + break; + case event_watch_cond_except: + pfd.events=POLLERR; + break; + default: + pfd.events=0; + } + pfd.revents=0; + poll(&pfd, 1, -1); +} + +JNIEXPORT void JNICALL +Java_org_navitproject_navit_NavitWatch_WatchCallback( JNIEnv* env, jobject thiz, int id) +{ + dbg(1,"enter %p %p\n",thiz, (void *)id); + callback_call_0((struct callback *)id); +} + + |
