1020 |
|
|
1021 |
JNIEXPORT void JNICALL Java_gzz_gfx_gl_GL_interruptEventloop |
JNIEXPORT void JNICALL Java_gzz_gfx_gl_GL_interruptEventloop |
1022 |
(JNIEnv *env, jclass) { |
(JNIEnv *env, jclass) { |
1023 |
DBG(dbg) << "Interrupting C++ eventloop"; |
DBG(dbg) << "Interrupting C++ eventloop\n"; |
1024 |
ws->interrupt(); |
ws->interrupt(); |
1025 |
DBG(dbg) << "Done interrupting - should wake soon"; |
DBG(dbg) << "Done interrupting - should wake soon\n"; |
1026 |
} |
} |
1027 |
|
|
1028 |
|
|
1041 |
jintArray j_inds2, jfloatArray j_pts2, |
jintArray j_inds2, jfloatArray j_pts2, |
1042 |
jintArray j_codes, |
jintArray j_codes, |
1043 |
jfloat fract, jboolean standardcoords, jboolean showFinal) { |
jfloat fract, jboolean standardcoords, jboolean showFinal) { |
1044 |
DBG(dbg) << "RENDER\n"; |
DBG(dbg) << "RENDER "<<window<<" "<<numinds<<" " |
1045 |
|
<<j_inds1<<" "<<j_pts1<<" "<< |
1046 |
|
j_interpinds<<" "<<j_inds2<<" "<<j_pts2<<" "<<j_codes<<"\n"; |
1047 |
GLERR |
GLERR |
1048 |
|
DBG(dbg) << "1\n"; |
1049 |
if(standardcoords) |
if(standardcoords) |
1050 |
setWindow(window); |
setWindow(window); |
1051 |
|
DBG(dbg) << "2\n"; |
1052 |
|
|
1053 |
if(sizeof(jint) != sizeof(jint) || |
if(sizeof(jint) != sizeof(jint) || |
1054 |
sizeof(jfloat) != sizeof(float)) |
sizeof(jfloat) != sizeof(float)) |
1055 |
env->FatalError("Invalid data type sizes!"); |
env->FatalError("Invalid data type sizes!"); |
1056 |
|
DBG(dbg) << "3\n"; |
1057 |
|
|
1058 |
jint *inds1 = env->GetIntArrayElements(j_inds1, 0); |
jint *inds1 = env->GetIntArrayElements(j_inds1, 0); |
1059 |
|
DBG(dbg) << "4\n"; |
1060 |
jfloat *pts1 = env->GetFloatArrayElements(j_pts1, 0); |
jfloat *pts1 = env->GetFloatArrayElements(j_pts1, 0); |
1061 |
|
DBG(dbg) << "5\n"; |
1062 |
|
|
1063 |
jint *inds2 = 0; |
jint *inds2 = 0; |
1064 |
jfloat *pts2 = 0; |
jfloat *pts2 = 0; |
1065 |
jint *interpinds = 0; |
jint *interpinds = 0; |
1066 |
if(j_inds2 != 0) { |
if(j_inds2 != 0) { |
1067 |
|
DBG(dbg) << "6\n"; |
1068 |
inds2 = env->GetIntArrayElements(j_inds2, 0); |
inds2 = env->GetIntArrayElements(j_inds2, 0); |
1069 |
pts2 = env->GetFloatArrayElements(j_pts2, 0); |
pts2 = env->GetFloatArrayElements(j_pts2, 0); |
1070 |
interpinds = env->GetIntArrayElements(j_interpinds, 0); |
interpinds = env->GetIntArrayElements(j_interpinds, 0); |
1071 |
} |
} |
1072 |
|
DBG(dbg) << "7\n"; |
1073 |
|
|
1074 |
jint *codes = env->GetIntArrayElements(j_codes, 0); |
jint *codes = env->GetIntArrayElements(j_codes, 0); |
1075 |
|
|