1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27
|
JNIEXPORT void JNICALL Java_arrayTiTi_ArrayMM_MaximumUnsigned___3B_3B_3B(JNIEnv *env, jclass obj, jbyteArray Array1, jbyteArray Array2, jbyteArray Result)
{
jsize length = env->GetArrayLength(Array1) ;
UINT8 *array1 = (UINT8 *)env->GetPrimitiveArrayCritical(Array1, 0) ;
UINT8 *array2 = (UINT8 *)env->GetPrimitiveArrayCritical(Array2, 0) ;
jboolean copyres = JNI_FALSE ;
UINT8 *result = (UINT8 *)env->GetPrimitiveArrayCritical(Result, ©res) ;
Maximum(array1, array2, length, result) ;
env->ReleasePrimitiveArrayCritical(Array1, array1, JNI_ABORT) ;
env->ReleasePrimitiveArrayCritical(Array2, array2, JNI_ABORT) ;
env->ReleasePrimitiveArrayCritical(Result, result, copyres == JNI_TRUE ? 0 : JNI_ABORT) ;
}
JNIEXPORT void JNICALL Java_arrayTiTi_ArrayMM_Maximum___3I_3I_3I(JNIEnv *env, jclass obj,
jintArray Array1, jintArray Array2, jintArray Result)
{
jsize length = env->GetArrayLength(Array1) ;
int *array1 = (int*)env->GetPrimitiveArrayCritical(Array1, 0) ;
int *array2 = (int*)env->GetPrimitiveArrayCritical(Array2, 0) ;
jboolean copyres = JNI_FALSE ;
int *result = (int*)env->GetPrimitiveArrayCritical(Result, ©res) ;
Maximum(array1, array2, length, result) ;
env->ReleasePrimitiveArrayCritical(Array1, array1, JNI_ABORT) ;
env->ReleasePrimitiveArrayCritical(Array2, array2, JNI_ABORT) ;
env->ReleasePrimitiveArrayCritical(Result, result, copyres == JNI_TRUE ? 0 : JNI_ABORT) ;
} |
Partager