Home | History | Annotate | Download | only in gles11
      1 /* void glDrawElementsInstancedBaseVertex ( GLenum mode, GLsizei count, GLenum type, const void *indices, GLsizei instanceCount, GLint basevertex ) */
      2 static void
      3 android_glDrawElementsInstancedBaseVertex__IIILjava_nio_Buffer_2II
      4   (JNIEnv *_env, jobject _this, jint mode, jint count, jint type, jobject indices_buf, jint instanceCount, jint basevertex) {
      5     jint _exception = 0;
      6     const char * _exceptionType = NULL;
      7     const char * _exceptionMessage = NULL;
      8     jarray _array = (jarray) 0;
      9     jint _bufferOffset = (jint) 0;
     10     jint _remaining;
     11     void *indices = (void *) 0;
     12 
     13     indices = (void *)getPointer(_env, indices_buf, &_array, &_remaining, &_bufferOffset);
     14     if (_remaining < count-basevertex) {
     15         _exception = 1;
     16         _exceptionType = "java/lang/ArrayIndexOutOfBoundsException";
     17         _exceptionMessage = "remaining() < count-basevertex < needed";
     18         goto exit;
     19     }
     20     if (indices == NULL) {
     21         char * _indicesBase = (char *)_env->GetPrimitiveArrayCritical(_array, (jboolean *) 0);
     22         indices = (void *) (_indicesBase + _bufferOffset);
     23     }
     24     glDrawElementsInstancedBaseVertex(
     25         (GLenum)mode,
     26         (GLsizei)count,
     27         (GLenum)type,
     28         (void *)indices,
     29         (GLsizei)instanceCount,
     30         (GLint) basevertex
     31     );
     32 
     33 exit:
     34     if (_array) {
     35         releasePointer(_env, _array, indices, JNI_FALSE);
     36     }
     37 }
     38 
     39 /* void glDrawElementsInstancedBaseVertex ( GLenum mode, GLsizei count, GLenum type, const void *indices, GLsizei instanceCount, GLint basevertex ) */
     40 static void
     41 android_glDrawElementsInstancedBaseVertex__IIIIII
     42   (JNIEnv *_env, jobject _this, jint mode, jint count, jint type, jint indicesOffset, jint instanceCount, jint basevertex) {
     43     glDrawElementsInstancedBaseVertex(
     44         (GLenum)mode,
     45         (GLsizei)count,
     46         (GLenum)type,
     47         (void *)static_cast<uintptr_t>(indicesOffset),
     48         (GLsizei)instanceCount,
     49         (GLint)basevertex
     50     );
     51 }
     52