%{ #include <stdint.h> #include "jni.h" /** * A stash area embedded in each allocation to hold java handles */ struct Jalloc { jbyteArray jba; jobject ref; }; static JavaVM *cached_jvm = 0; JNIEXPORT jint JNICALL JNI_OnLoad(JavaVM *jvm, void *reserved) { cached_jvm = jvm; return JNI_VERSION_1_2; } static JNIEnv * JNU_GetEnv() { JNIEnv *env; jint rc = (*cached_jvm)->GetEnv(cached_jvm, (void **)&env, JNI_VERSION_1_2); if (rc == JNI_EDETACHED) av_log(NULL, AV_LOG_ERROR, "current thread not attached\n"); if (rc == JNI_EVERSION) av_log(NULL, AV_LOG_ERROR, "jni version not supported\n"); return env; } %}
Wednesday, April 10, 2013
How to get JNIEnv from swig?
Subscribe to:
Posts (Atom)