jni_helper.h revision c96feb800590f43b7be76d1000ab5d949e5c6790
1
2namespace android {
3
4/* JNI Helpers for wifi_hal to WifiNative bridge implementation */
5
6void throwException( JNIEnv *env, const char *message, int line );
7jboolean  getBoolField(JNIEnv *env, jobject obj, const char *name);
8jint  getIntField(JNIEnv *env, jobject obj, const char *name);
9jlong getLongField(JNIEnv *env, jobject obj, const char *name);
10jobject getObjectField(JNIEnv *env, jobject obj, const char *name, const char *type);
11jlong getLongArrayField(JNIEnv *env, jobject obj, const char *name, int index);
12jobject getObjectArrayField(JNIEnv *env, jobject obj, const char *name, const char *type, int index);
13void setIntField(JNIEnv *env, jobject obj, const char *name, jint value);
14 void setByteField(JNIEnv *env, jobject obj, const char *name, jbyte value);
15 jbyte getByteField(JNIEnv *env, jobject obj, const char *name);
16void setBooleanField(JNIEnv *env, jobject obj, const char *name, jboolean value);
17void setLongField(JNIEnv *env, jobject obj, const char *name, jlong value);
18void setLongArrayField(JNIEnv *env, jobject obj, const char *name, jlongArray value);
19void setLongArrayElement(JNIEnv *env, jobject obj, const char *name, int index, jlong value);
20void setStringField(JNIEnv *env, jobject obj, const char *name, const char *value);
21void reportEvent(JNIEnv *env, jclass cls, const char *method, const char *signature, ...);
22jobject createObject(JNIEnv *env, const char *className);
23jobjectArray createObjectArray(JNIEnv *env, const char *className, int size);
24void setObjectField(JNIEnv *env, jobject obj, const char *name, const char *type, jobject value);
25
26jlong getStaticLongField(JNIEnv *env, jobject obj, const char *name);
27jlong getStaticLongField(JNIEnv *env, jclass cls, const char *name);
28void setStaticLongField(JNIEnv *env, jobject obj, const char *name, jlong value);
29void setStaticLongField(JNIEnv *env, jclass cls, const char *name, jlong value);
30jlong getStaticLongArrayField(JNIEnv *env, jobject obj, const char *name, int index);
31jlong getStaticLongArrayField(JNIEnv *env, jclass cls, const char *name, int index);
32void setStaticLongArrayField(JNIEnv *env, jobject obj, const char *name, jlongArray value);
33void setStaticLongArrayField(JNIEnv *env, jclass obj, const char *name, jlongArray value);
34}
35
36#define THROW(env, message)      throwException(env, message, __LINE__)
37