コード例 #1
0
static void
nativeClassInit(JNIEnv *env)
{
  LOGD("nativeClassInit.--- 1 ---");
  nativeClassInitBuffer(env);
  LOGD("nativeClassInit.--- 2 ---");
  jclass IAEClassLocal = env->FindClass("java/lang/IllegalArgumentException");
  jclass OOMEClassLocal = env->FindClass("java/lang/OutOfMemoryError");
  jclass UOEClassLocal = env->FindClass("java/lang/UnsupportedOperationException");
  jclass AIOOBEClassLocal = env->FindClass("java/lang/ArrayIndexOutOfBoundsException");

  IAEClass = (jclass) env->NewGlobalRef(IAEClassLocal);
  OOMEClass = (jclass) env->NewGlobalRef(OOMEClassLocal);
  UOEClass = (jclass) env->NewGlobalRef(UOEClassLocal);
  AIOOBEClass = (jclass) env->NewGlobalRef(AIOOBEClassLocal);
  LOGD("nativeClassInit.--- done. ---");
}
コード例 #2
0
ファイル: GLCHeader.cpp プロジェクト: Abhishekh-TEL/pdroid
static void
nativeClassInit(JNIEnv *_env, jclass glImplClass)
{
    nativeClassInitBuffer(_env);

    jclass IAEClassLocal =
        _env->FindClass("java/lang/IllegalArgumentException");
    jclass OOMEClassLocal =
         _env->FindClass("java/lang/OutOfMemoryError");
    jclass UOEClassLocal =
         _env->FindClass("java/lang/UnsupportedOperationException");
    jclass AIOOBEClassLocal =
         _env->FindClass("java/lang/ArrayIndexOutOfBoundsException");

    IAEClass = (jclass) _env->NewGlobalRef(IAEClassLocal);
    OOMEClass = (jclass) _env->NewGlobalRef(OOMEClassLocal);
    UOEClass = (jclass) _env->NewGlobalRef(UOEClassLocal);
    AIOOBEClass = (jclass) _env->NewGlobalRef(AIOOBEClassLocal);
}
コード例 #3
0
static void *
getPointer(JNIEnv *env, jobject buffer, jarray *array, jint *remaining){
	jint position;
	jint limit;
	jint elementSizeShift;
	jlong pointer;
	jint offset;
	void *data;

	nativeClassInitBuffer( env );
	position = env->GetIntField(buffer, positionID);
	limit = env->GetIntField(buffer, limitID);
	elementSizeShift = env->GetIntField(buffer, elementSizeShiftID);
	*remaining = (limit - position) << elementSizeShift;
	pointer = env->CallStaticLongMethod(nioAccessClass,  getBasePointerID, buffer);

	*array = (jarray) env->CallStaticObjectMethod(nioAccessClass, getBaseArrayID, buffer);
	offset = env->CallStaticIntMethod(nioAccessClass, getBaseArrayOffsetID, buffer);

	data = env->GetPrimitiveArrayCritical( *array, 0);
	return (void *) ((char*) data + offset );
	
}