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