jni_helper.h revision 12cf388ecf3b2aa5ba66ed680b931fa356ab75b5
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);
14void setBooleanField(JNIEnv *env, jobject obj, const char *name, jboolean value);
15void setLongField(JNIEnv *env, jobject obj, const char *name, jlong value);
16void setLongArrayField(JNIEnv *env, jobject obj, const char *name, jlongArray value);
17void setLongArrayElement(JNIEnv *env, jobject obj, const char *name, int index, jlong value);
18void setStringField(JNIEnv *env, jobject obj, const char *name, const char *value);
19void reportEvent(JNIEnv *env, jclass cls, const char *method, const char *signature, ...);
20jobject createObject(JNIEnv *env, const char *className);
21jobjectArray createObjectArray(JNIEnv *env, const char *className, int size);
22void setObjectField(JNIEnv *env, jobject obj, const char *name, const char *type, jobject value);
23
24jlong getStaticLongField(JNIEnv *env, jobject obj, const char *name);
25jlong getStaticLongField(JNIEnv *env, jclass cls, const char *name);
26void setStaticLongField(JNIEnv *env, jobject obj, const char *name, jlong value);
27void setStaticLongField(JNIEnv *env, jclass cls, const char *name, jlong value);
28jlong getStaticLongArrayField(JNIEnv *env, jobject obj, const char *name, int index);
29jlong getStaticLongArrayField(JNIEnv *env, jclass cls, const char *name, int index);
30void setStaticLongArrayField(JNIEnv *env, jobject obj, const char *name, jlongArray value);
31void setStaticLongArrayField(JNIEnv *env, jclass obj, const char *name, jlongArray value);
32}
33
34#define THROW(env, message)      throwException(env, message, __LINE__)
35