| /* |
| ** |
| ** Copyright 2009, The Android Open Source Project |
| ** |
| ** Licensed under the Apache License, Version 2.0 (the "License"); |
| ** you may not use this file except in compliance with the License. |
| ** You may obtain a copy of the License at |
| ** |
| ** http://www.apache.org/licenses/LICENSE-2.0 |
| ** |
| ** Unless required by applicable law or agreed to in writing, software |
| ** distributed under the License is distributed on an "AS IS" BASIS, |
| ** WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| ** See the License for the specific language governing permissions and |
| ** limitations under the License. |
| */ |
| |
| // This source file is automatically generated |
| |
| #include "jni.h" |
| #include "JNIHelp.h" |
| #include <android_runtime/AndroidRuntime.h> |
| #include <utils/misc.h> |
| |
| #include <assert.h> |
| #include <GLES/gl.h> |
| #include <GLES/glext.h> |
| |
| /* special calls implemented in Android's GLES wrapper used to more |
| * efficiently bound-check passed arrays */ |
| extern "C" { |
| GL_API void GL_APIENTRY glColorPointerBounds(GLint size, GLenum type, GLsizei stride, |
| const GLvoid *ptr, GLsizei count); |
| GL_API void GL_APIENTRY glNormalPointerBounds(GLenum type, GLsizei stride, |
| const GLvoid *pointer, GLsizei count); |
| GL_API void GL_APIENTRY glTexCoordPointerBounds(GLint size, GLenum type, |
| GLsizei stride, const GLvoid *pointer, GLsizei count); |
| GL_API void GL_APIENTRY glVertexPointerBounds(GLint size, GLenum type, |
| GLsizei stride, const GLvoid *pointer, GLsizei count); |
| } |
| |
| static int initialized = 0; |
| |
| static jclass nioAccessClass; |
| static jclass bufferClass; |
| static jmethodID getBasePointerID; |
| static jmethodID getBaseArrayID; |
| static jmethodID getBaseArrayOffsetID; |
| static jfieldID positionID; |
| static jfieldID limitID; |
| static jfieldID elementSizeShiftID; |
| |
| /* Cache method IDs each time the class is loaded. */ |
| |
| static void |
| nativeClassInit(JNIEnv *_env, jclass glImplClass) |
| { |
| jclass nioAccessClassLocal = _env->FindClass("java/nio/NIOAccess"); |
| nioAccessClass = (jclass) _env->NewGlobalRef(nioAccessClassLocal); |
| |
| jclass bufferClassLocal = _env->FindClass("java/nio/Buffer"); |
| bufferClass = (jclass) _env->NewGlobalRef(bufferClassLocal); |
| |
| getBasePointerID = _env->GetStaticMethodID(nioAccessClass, |
| "getBasePointer", "(Ljava/nio/Buffer;)J"); |
| getBaseArrayID = _env->GetStaticMethodID(nioAccessClass, |
| "getBaseArray", "(Ljava/nio/Buffer;)Ljava/lang/Object;"); |
| getBaseArrayOffsetID = _env->GetStaticMethodID(nioAccessClass, |
| "getBaseArrayOffset", "(Ljava/nio/Buffer;)I"); |
| |
| positionID = _env->GetFieldID(bufferClass, "position", "I"); |
| limitID = _env->GetFieldID(bufferClass, "limit", "I"); |
| elementSizeShiftID = |
| _env->GetFieldID(bufferClass, "_elementSizeShift", "I"); |
| } |
| |
| static void * |
| getPointer(JNIEnv *_env, jobject buffer, jarray *array, jint *remaining) |
| { |
| jint position; |
| jint limit; |
| jint elementSizeShift; |
| jlong pointer; |
| jint offset; |
| void *data; |
| |
| 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); |
| if (pointer != 0L) { |
| *array = NULL; |
| return (void *) (jint) pointer; |
| } |
| |
| *array = (jarray) _env->CallStaticObjectMethod(nioAccessClass, |
| getBaseArrayID, buffer); |
| offset = _env->CallStaticIntMethod(nioAccessClass, |
| getBaseArrayOffsetID, buffer); |
| data = _env->GetPrimitiveArrayCritical(*array, (jboolean *) 0); |
| |
| return (void *) ((char *) data + offset); |
| } |
| |
| static void |
| releasePointer(JNIEnv *_env, jarray array, void *data, jboolean commit) |
| { |
| _env->ReleasePrimitiveArrayCritical(array, data, |
| commit ? 0 : JNI_ABORT); |
| } |
| |
| static void * |
| getDirectBufferPointer(JNIEnv *_env, jobject buffer) { |
| char* buf = (char*) _env->GetDirectBufferAddress(buffer); |
| if (buf) { |
| jint position = _env->GetIntField(buffer, positionID); |
| jint elementSizeShift = _env->GetIntField(buffer, elementSizeShiftID); |
| buf += position << elementSizeShift; |
| } else { |
| jniThrowException(_env, "java/lang/IllegalArgumentException", |
| "Must use a native order direct Buffer"); |
| } |
| return (void*) buf; |
| } |
| |
| static int |
| getNumCompressedTextureFormats() { |
| int numCompressedTextureFormats = 0; |
| glGetIntegerv(GL_NUM_COMPRESSED_TEXTURE_FORMATS, &numCompressedTextureFormats); |
| return numCompressedTextureFormats; |
| } |
| |
| // -------------------------------------------------------------------------- |
| /* void glActiveTexture ( GLenum texture ) */ |
| static void |
| android_glActiveTexture__I |
| (JNIEnv *_env, jobject _this, jint texture) { |
| glActiveTexture( |
| (GLenum)texture |
| ); |
| } |
| |
| /* void glAlphaFunc ( GLenum func, GLclampf ref ) */ |
| static void |
| android_glAlphaFunc__IF |
| (JNIEnv *_env, jobject _this, jint func, jfloat ref) { |
| glAlphaFunc( |
| (GLenum)func, |
| (GLclampf)ref |
| ); |
| } |
| |
| /* void glAlphaFuncx ( GLenum func, GLclampx ref ) */ |
| static void |
| android_glAlphaFuncx__II |
| (JNIEnv *_env, jobject _this, jint func, jint ref) { |
| glAlphaFuncx( |
| (GLenum)func, |
| (GLclampx)ref |
| ); |
| } |
| |
| /* void glBindTexture ( GLenum target, GLuint texture ) */ |
| static void |
| android_glBindTexture__II |
| (JNIEnv *_env, jobject _this, jint target, jint texture) { |
| glBindTexture( |
| (GLenum)target, |
| (GLuint)texture |
| ); |
| } |
| |
| /* void glBlendFunc ( GLenum sfactor, GLenum dfactor ) */ |
| static void |
| android_glBlendFunc__II |
| (JNIEnv *_env, jobject _this, jint sfactor, jint dfactor) { |
| glBlendFunc( |
| (GLenum)sfactor, |
| (GLenum)dfactor |
| ); |
| } |
| |
| /* void glClear ( GLbitfield mask ) */ |
| static void |
| android_glClear__I |
| (JNIEnv *_env, jobject _this, jint mask) { |
| glClear( |
| (GLbitfield)mask |
| ); |
| } |
| |
| /* void glClearColor ( GLclampf red, GLclampf green, GLclampf blue, GLclampf alpha ) */ |
| static void |
| android_glClearColor__FFFF |
| (JNIEnv *_env, jobject _this, jfloat red, jfloat green, jfloat blue, jfloat alpha) { |
| glClearColor( |
| (GLclampf)red, |
| (GLclampf)green, |
| (GLclampf)blue, |
| (GLclampf)alpha |
| ); |
| } |
| |
| /* void glClearColorx ( GLclampx red, GLclampx green, GLclampx blue, GLclampx alpha ) */ |
| static void |
| android_glClearColorx__IIII |
| (JNIEnv *_env, jobject _this, jint red, jint green, jint blue, jint alpha) { |
| glClearColorx( |
| (GLclampx)red, |
| (GLclampx)green, |
| (GLclampx)blue, |
| (GLclampx)alpha |
| ); |
| } |
| |
| /* void glClearDepthf ( GLclampf depth ) */ |
| static void |
| android_glClearDepthf__F |
| (JNIEnv *_env, jobject _this, jfloat depth) { |
| glClearDepthf( |
| (GLclampf)depth |
| ); |
| } |
| |
| /* void glClearDepthx ( GLclampx depth ) */ |
| static void |
| android_glClearDepthx__I |
| (JNIEnv *_env, jobject _this, jint depth) { |
| glClearDepthx( |
| (GLclampx)depth |
| ); |
| } |
| |
| /* void glClearStencil ( GLint s ) */ |
| static void |
| android_glClearStencil__I |
| (JNIEnv *_env, jobject _this, jint s) { |
| glClearStencil( |
| (GLint)s |
| ); |
| } |
| |
| /* void glClientActiveTexture ( GLenum texture ) */ |
| static void |
| android_glClientActiveTexture__I |
| (JNIEnv *_env, jobject _this, jint texture) { |
| glClientActiveTexture( |
| (GLenum)texture |
| ); |
| } |
| |
| /* void glColor4f ( GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha ) */ |
| static void |
| android_glColor4f__FFFF |
| (JNIEnv *_env, jobject _this, jfloat red, jfloat green, jfloat blue, jfloat alpha) { |
| glColor4f( |
| (GLfloat)red, |
| (GLfloat)green, |
| (GLfloat)blue, |
| (GLfloat)alpha |
| ); |
| } |
| |
| /* void glColor4x ( GLfixed red, GLfixed green, GLfixed blue, GLfixed alpha ) */ |
| static void |
| android_glColor4x__IIII |
| (JNIEnv *_env, jobject _this, jint red, jint green, jint blue, jint alpha) { |
| glColor4x( |
| (GLfixed)red, |
| (GLfixed)green, |
| (GLfixed)blue, |
| (GLfixed)alpha |
| ); |
| } |
| |
| /* void glColorMask ( GLboolean red, GLboolean green, GLboolean blue, GLboolean alpha ) */ |
| static void |
| android_glColorMask__ZZZZ |
| (JNIEnv *_env, jobject _this, jboolean red, jboolean green, jboolean blue, jboolean alpha) { |
| glColorMask( |
| (GLboolean)red, |
| (GLboolean)green, |
| (GLboolean)blue, |
| (GLboolean)alpha |
| ); |
| } |
| |
| /* void glColorPointer ( GLint size, GLenum type, GLsizei stride, const GLvoid *pointer ) */ |
| static void |
| android_glColorPointerBounds__IIILjava_nio_Buffer_2I |
| (JNIEnv *_env, jobject _this, jint size, jint type, jint stride, jobject pointer_buf, jint remaining) { |
| jarray _array = (jarray) 0; |
| jint _remaining; |
| GLvoid *pointer = (GLvoid *) 0; |
| |
| if (pointer_buf) { |
| pointer = (GLvoid *) getDirectBufferPointer(_env, pointer_buf); |
| if ( ! pointer ) { |
| return; |
| } |
| } |
| glColorPointerBounds( |
| (GLint)size, |
| (GLenum)type, |
| (GLsizei)stride, |
| (GLvoid *)pointer, |
| (GLsizei)remaining |
| ); |
| } |
| |
| /* void glCompressedTexImage2D ( GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, const GLvoid *data ) */ |
| static void |
| android_glCompressedTexImage2D__IIIIIIILjava_nio_Buffer_2 |
| (JNIEnv *_env, jobject _this, jint target, jint level, jint internalformat, jint width, jint height, jint border, jint imageSize, jobject data_buf) { |
| jarray _array = (jarray) 0; |
| jint _remaining; |
| GLvoid *data = (GLvoid *) 0; |
| |
| data = (GLvoid *)getPointer(_env, data_buf, &_array, &_remaining); |
| glCompressedTexImage2D( |
| (GLenum)target, |
| (GLint)level, |
| (GLenum)internalformat, |
| (GLsizei)width, |
| (GLsizei)height, |
| (GLint)border, |
| (GLsizei)imageSize, |
| (GLvoid *)data |
| ); |
| if (_array) { |
| releasePointer(_env, _array, data, JNI_FALSE); |
| } |
| } |
| |
| /* void glCompressedTexSubImage2D ( GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const GLvoid *data ) */ |
| static void |
| android_glCompressedTexSubImage2D__IIIIIIIILjava_nio_Buffer_2 |
| (JNIEnv *_env, jobject _this, jint target, jint level, jint xoffset, jint yoffset, jint width, jint height, jint format, jint imageSize, jobject data_buf) { |
| jarray _array = (jarray) 0; |
| jint _remaining; |
| GLvoid *data = (GLvoid *) 0; |
| |
| data = (GLvoid *)getPointer(_env, data_buf, &_array, &_remaining); |
| glCompressedTexSubImage2D( |
| (GLenum)target, |
| (GLint)level, |
| (GLint)xoffset, |
| (GLint)yoffset, |
| (GLsizei)width, |
| (GLsizei)height, |
| (GLenum)format, |
| (GLsizei)imageSize, |
| (GLvoid *)data |
| ); |
| if (_array) { |
| releasePointer(_env, _array, data, JNI_FALSE); |
| } |
| } |
| |
| /* void glCopyTexImage2D ( GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height, GLint border ) */ |
| static void |
| android_glCopyTexImage2D__IIIIIIII |
| (JNIEnv *_env, jobject _this, jint target, jint level, jint internalformat, jint x, jint y, jint width, jint height, jint border) { |
| glCopyTexImage2D( |
| (GLenum)target, |
| (GLint)level, |
| (GLenum)internalformat, |
| (GLint)x, |
| (GLint)y, |
| (GLsizei)width, |
| (GLsizei)height, |
| (GLint)border |
| ); |
| } |
| |
| /* void glCopyTexSubImage2D ( GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint x, GLint y, GLsizei width, GLsizei height ) */ |
| static void |
| android_glCopyTexSubImage2D__IIIIIIII |
| (JNIEnv *_env, jobject _this, jint target, jint level, jint xoffset, jint yoffset, jint x, jint y, jint width, jint height) { |
| glCopyTexSubImage2D( |
| (GLenum)target, |
| (GLint)level, |
| (GLint)xoffset, |
| (GLint)yoffset, |
| (GLint)x, |
| (GLint)y, |
| (GLsizei)width, |
| (GLsizei)height |
| ); |
| } |
| |
| /* void glCullFace ( GLenum mode ) */ |
| static void |
| android_glCullFace__I |
| (JNIEnv *_env, jobject _this, jint mode) { |
| glCullFace( |
| (GLenum)mode |
| ); |
| } |
| |
| /* void glDeleteTextures ( GLsizei n, const GLuint *textures ) */ |
| static void |
| android_glDeleteTextures__I_3II |
| (JNIEnv *_env, jobject _this, jint n, jintArray textures_ref, jint offset) { |
| jint _exception = 0; |
| const char * _exceptionType; |
| const char * _exceptionMessage; |
| GLuint *textures_base = (GLuint *) 0; |
| jint _remaining; |
| GLuint *textures = (GLuint *) 0; |
| |
| if (!textures_ref) { |
| _exception = 1; |
| _exceptionType = "java/lang/IllegalArgumentException"; |
| _exceptionMessage = "textures == null"; |
| goto exit; |
| } |
| if (offset < 0) { |
| _exception = 1; |
| _exceptionType = "java/lang/IllegalArgumentException"; |
| _exceptionMessage = "offset < 0"; |
| goto exit; |
| } |
| _remaining = _env->GetArrayLength(textures_ref) - offset; |
| if (_remaining < n) { |
| _exception = 1; |
| _exceptionType = "java/lang/IllegalArgumentException"; |
| _exceptionMessage = "length - offset < n < needed"; |
| goto exit; |
| } |
| textures_base = (GLuint *) |
| _env->GetPrimitiveArrayCritical(textures_ref, (jboolean *)0); |
| textures = textures_base + offset; |
| |
| glDeleteTextures( |
| (GLsizei)n, |
| (GLuint *)textures |
| ); |
| |
| exit: |
| if (textures_base) { |
| _env->ReleasePrimitiveArrayCritical(textures_ref, textures_base, |
| JNI_ABORT); |
| } |
| if (_exception) { |
| jniThrowException(_env, _exceptionType, _exceptionMessage); |
| } |
| } |
| |
| /* void glDeleteTextures ( GLsizei n, const GLuint *textures ) */ |
| static void |
| android_glDeleteTextures__ILjava_nio_IntBuffer_2 |
| (JNIEnv *_env, jobject _this, jint n, jobject textures_buf) { |
| jint _exception = 0; |
| const char * _exceptionType; |
| const char * _exceptionMessage; |
| jarray _array = (jarray) 0; |
| jint _remaining; |
| GLuint *textures = (GLuint *) 0; |
| |
| textures = (GLuint *)getPointer(_env, textures_buf, &_array, &_remaining); |
| if (_remaining < n) { |
| _exception = 1; |
| _exceptionType = "java/lang/IllegalArgumentException"; |
| _exceptionMessage = "remaining() < n < needed"; |
| goto exit; |
| } |
| glDeleteTextures( |
| (GLsizei)n, |
| (GLuint *)textures |
| ); |
| |
| exit: |
| if (_array) { |
| releasePointer(_env, _array, textures, JNI_FALSE); |
| } |
| if (_exception) { |
| jniThrowException(_env, _exceptionType, _exceptionMessage); |
| } |
| } |
| |
| /* void glDepthFunc ( GLenum func ) */ |
| static void |
| android_glDepthFunc__I |
| (JNIEnv *_env, jobject _this, jint func) { |
| glDepthFunc( |
| (GLenum)func |
| ); |
| } |
| |
| /* void glDepthMask ( GLboolean flag ) */ |
| static void |
| android_glDepthMask__Z |
| (JNIEnv *_env, jobject _this, jboolean flag) { |
| glDepthMask( |
| (GLboolean)flag |
| ); |
| } |
| |
| /* void glDepthRangef ( GLclampf zNear, GLclampf zFar ) */ |
| static void |
| android_glDepthRangef__FF |
| (JNIEnv *_env, jobject _this, jfloat zNear, jfloat zFar) { |
| glDepthRangef( |
| (GLclampf)zNear, |
| (GLclampf)zFar |
| ); |
| } |
| |
| /* void glDepthRangex ( GLclampx zNear, GLclampx zFar ) */ |
| static void |
| android_glDepthRangex__II |
| (JNIEnv *_env, jobject _this, jint zNear, jint zFar) { |
| glDepthRangex( |
| (GLclampx)zNear, |
| (GLclampx)zFar |
| ); |
| } |
| |
| /* void glDisable ( GLenum cap ) */ |
| static void |
| android_glDisable__I |
| (JNIEnv *_env, jobject _this, jint cap) { |
| glDisable( |
| (GLenum)cap |
| ); |
| } |
| |
| /* void glDisableClientState ( GLenum array ) */ |
| static void |
| android_glDisableClientState__I |
| (JNIEnv *_env, jobject _this, jint array) { |
| glDisableClientState( |
| (GLenum)array |
| ); |
| } |
| |
| /* void glDrawArrays ( GLenum mode, GLint first, GLsizei count ) */ |
| static void |
| android_glDrawArrays__III |
| (JNIEnv *_env, jobject _this, jint mode, jint first, jint count) { |
| glDrawArrays( |
| (GLenum)mode, |
| (GLint)first, |
| (GLsizei)count |
| ); |
| } |
| |
| /* void glDrawElements ( GLenum mode, GLsizei count, GLenum type, const GLvoid *indices ) */ |
| static void |
| android_glDrawElements__IIILjava_nio_Buffer_2 |
| (JNIEnv *_env, jobject _this, jint mode, jint count, jint type, jobject indices_buf) { |
| jint _exception = 0; |
| const char * _exceptionType; |
| const char * _exceptionMessage; |
| jarray _array = (jarray) 0; |
| jint _remaining; |
| GLvoid *indices = (GLvoid *) 0; |
| |
| indices = (GLvoid *)getPointer(_env, indices_buf, &_array, &_remaining); |
| if (_remaining < count) { |
| _exception = 1; |
| _exceptionType = "java/lang/ArrayIndexOutOfBoundsException"; |
| _exceptionMessage = "remaining() < count < needed"; |
| goto exit; |
| } |
| glDrawElements( |
| (GLenum)mode, |
| (GLsizei)count, |
| (GLenum)type, |
| (GLvoid *)indices |
| ); |
| |
| exit: |
| if (_array) { |
| releasePointer(_env, _array, indices, JNI_FALSE); |
| } |
| if (_exception) { |
| jniThrowException(_env, _exceptionType, _exceptionMessage); |
| } |
| } |
| |
| /* void glEnable ( GLenum cap ) */ |
| static void |
| android_glEnable__I |
| (JNIEnv *_env, jobject _this, jint cap) { |
| glEnable( |
| (GLenum)cap |
| ); |
| } |
| |
| /* void glEnableClientState ( GLenum array ) */ |
| static void |
| android_glEnableClientState__I |
| (JNIEnv *_env, jobject _this, jint array) { |
| glEnableClientState( |
| (GLenum)array |
| ); |
| } |
| |
| /* void glFinish ( void ) */ |
| static void |
| android_glFinish__ |
| (JNIEnv *_env, jobject _this) { |
| glFinish(); |
| } |
| |
| /* void glFlush ( void ) */ |
| static void |
| android_glFlush__ |
| (JNIEnv *_env, jobject _this) { |
| glFlush(); |
| } |
| |
| /* void glFogf ( GLenum pname, GLfloat param ) */ |
| static void |
| android_glFogf__IF |
| (JNIEnv *_env, jobject _this, jint pname, jfloat param) { |
| glFogf( |
| (GLenum)pname, |
| (GLfloat)param |
| ); |
| } |
| |
| /* void glFogfv ( GLenum pname, const GLfloat *params ) */ |
| static void |
| android_glFogfv__I_3FI |
| (JNIEnv *_env, jobject _this, jint pname, jfloatArray params_ref, jint offset) { |
| jint _exception = 0; |
| const char * _exceptionType; |
| const char * _exceptionMessage; |
| GLfloat *params_base = (GLfloat *) 0; |
| jint _remaining; |
| GLfloat *params = (GLfloat *) 0; |
| |
| if (!params_ref) { |
| _exception = 1; |
| _exceptionType = "java/lang/IllegalArgumentException"; |
| _exceptionMessage = "params == null"; |
| goto exit; |
| } |
| if (offset < 0) { |
| _exception = 1; |
| _exceptionType = "java/lang/IllegalArgumentException"; |
| _exceptionMessage = "offset < 0"; |
| goto exit; |
| } |
| _remaining = _env->GetArrayLength(params_ref) - offset; |
| int _needed; |
| switch (pname) { |
| #if defined(GL_FOG_MODE) |
| case GL_FOG_MODE: |
| #endif // defined(GL_FOG_MODE) |
| #if defined(GL_FOG_DENSITY) |
| case GL_FOG_DENSITY: |
| #endif // defined(GL_FOG_DENSITY) |
| #if defined(GL_FOG_START) |
| case GL_FOG_START: |
| #endif // defined(GL_FOG_START) |
| #if defined(GL_FOG_END) |
| case GL_FOG_END: |
| #endif // defined(GL_FOG_END) |
| _needed = 1; |
| break; |
| #if defined(GL_FOG_COLOR) |
| case GL_FOG_COLOR: |
| #endif // defined(GL_FOG_COLOR) |
| _needed = 4; |
| break; |
| default: |
| _needed = 0; |
| break; |
| } |
| if (_remaining < _needed) { |
| _exception = 1; |
| _exceptionType = "java/lang/IllegalArgumentException"; |
| _exceptionMessage = "length - offset < needed"; |
| goto exit; |
| } |
| params_base = (GLfloat *) |
| _env->GetPrimitiveArrayCritical(params_ref, (jboolean *)0); |
| params = params_base + offset; |
| |
| glFogfv( |
| (GLenum)pname, |
| (GLfloat *)params |
| ); |
| |
| exit: |
| if (params_base) { |
| _env->ReleasePrimitiveArrayCritical(params_ref, params_base, |
| JNI_ABORT); |
| } |
| if (_exception) { |
| jniThrowException(_env, _exceptionType, _exceptionMessage); |
| } |
| } |
| |
| /* void glFogfv ( GLenum pname, const GLfloat *params ) */ |
| static void |
| android_glFogfv__ILjava_nio_FloatBuffer_2 |
| (JNIEnv *_env, jobject _this, jint pname, jobject params_buf) { |
| jint _exception = 0; |
| const char * _exceptionType; |
| const char * _exceptionMessage; |
| jarray _array = (jarray) 0; |
| jint _remaining; |
| GLfloat *params = (GLfloat *) 0; |
| |
| params = (GLfloat *)getPointer(_env, params_buf, &_array, &_remaining); |
| int _needed; |
| switch (pname) { |
| #if defined(GL_FOG_MODE) |
| case GL_FOG_MODE: |
| #endif // defined(GL_FOG_MODE) |
| #if defined(GL_FOG_DENSITY) |
| case GL_FOG_DENSITY: |
| #endif // defined(GL_FOG_DENSITY) |
| #if defined(GL_FOG_START) |
| case GL_FOG_START: |
| #endif // defined(GL_FOG_START) |
| #if defined(GL_FOG_END) |
| case GL_FOG_END: |
| #endif // defined(GL_FOG_END) |
| _needed = 1; |
| break; |
| #if defined(GL_FOG_COLOR) |
| case GL_FOG_COLOR: |
| #endif // defined(GL_FOG_COLOR) |
| _needed = 4; |
| break; |
| default: |
| _needed = 0; |
| break; |
| } |
| if (_remaining < _needed) { |
| _exception = 1; |
| _exceptionType = "java/lang/IllegalArgumentException"; |
| _exceptionMessage = "remaining() < needed"; |
| goto exit; |
| } |
| glFogfv( |
| (GLenum)pname, |
| (GLfloat *)params |
| ); |
| |
| exit: |
| if (_array) { |
| releasePointer(_env, _array, params, JNI_FALSE); |
| } |
| if (_exception) { |
| jniThrowException(_env, _exceptionType, _exceptionMessage); |
| } |
| } |
| |
| /* void glFogx ( GLenum pname, GLfixed param ) */ |
| static void |
| android_glFogx__II |
| (JNIEnv *_env, jobject _this, jint pname, jint param) { |
| glFogx( |
| (GLenum)pname, |
| (GLfixed)param |
| ); |
| } |
| |
| /* void glFogxv ( GLenum pname, const GLfixed *params ) */ |
| static void |
| android_glFogxv__I_3II |
| (JNIEnv *_env, jobject _this, jint pname, jintArray params_ref, jint offset) { |
| jint _exception = 0; |
| const char * _exceptionType; |
| const char * _exceptionMessage; |
| GLfixed *params_base = (GLfixed *) 0; |
| jint _remaining; |
| GLfixed *params = (GLfixed *) 0; |
| |
| if (!params_ref) { |
| _exception = 1; |
| _exceptionType = "java/lang/IllegalArgumentException"; |
| _exceptionMessage = "params == null"; |
| goto exit; |
| } |
| if (offset < 0) { |
| _exception = 1; |
| _exceptionType = "java/lang/IllegalArgumentException"; |
| _exceptionMessage = "offset < 0"; |
| goto exit; |
| } |
| _remaining = _env->GetArrayLength(params_ref) - offset; |
| int _needed; |
| switch (pname) { |
| #if defined(GL_FOG_MODE) |
| case GL_FOG_MODE: |
| #endif // defined(GL_FOG_MODE) |
| #if defined(GL_FOG_DENSITY) |
| case GL_FOG_DENSITY: |
| #endif // defined(GL_FOG_DENSITY) |
| #if defined(GL_FOG_START) |
| case GL_FOG_START: |
| #endif // defined(GL_FOG_START) |
| #if defined(GL_FOG_END) |
| case GL_FOG_END: |
| #endif // defined(GL_FOG_END) |
| _needed = 1; |
| break; |
| #if defined(GL_FOG_COLOR) |
| case GL_FOG_COLOR: |
| #endif // defined(GL_FOG_COLOR) |
| _needed = 4; |
| break; |
| default: |
| _needed = 0; |
| break; |
| } |
| if (_remaining < _needed) { |
| _exception = 1; |
| _exceptionType = "java/lang/IllegalArgumentException"; |
| _exceptionMessage = "length - offset < needed"; |
| goto exit; |
| } |
| params_base = (GLfixed *) |
| _env->GetPrimitiveArrayCritical(params_ref, (jboolean *)0); |
| params = params_base + offset; |
| |
| glFogxv( |
| (GLenum)pname, |
| (GLfixed *)params |
| ); |
| |
| exit: |
| if (params_base) { |
| _env->ReleasePrimitiveArrayCritical(params_ref, params_base, |
| JNI_ABORT); |
| } |
| if (_exception) { |
| jniThrowException(_env, _exceptionType, _exceptionMessage); |
| } |
| } |
| |
| /* void glFogxv ( GLenum pname, const GLfixed *params ) */ |
| static void |
| android_glFogxv__ILjava_nio_IntBuffer_2 |
| (JNIEnv *_env, jobject _this, jint pname, jobject params_buf) { |
| jint _exception = 0; |
| const char * _exceptionType; |
| const char * _exceptionMessage; |
| jarray _array = (jarray) 0; |
| jint _remaining; |
| GLfixed *params = (GLfixed *) 0; |
| |
| params = (GLfixed *)getPointer(_env, params_buf, &_array, &_remaining); |
| int _needed; |
| switch (pname) { |
| #if defined(GL_FOG_MODE) |
| case GL_FOG_MODE: |
| #endif // defined(GL_FOG_MODE) |
| #if defined(GL_FOG_DENSITY) |
| case GL_FOG_DENSITY: |
| #endif // defined(GL_FOG_DENSITY) |
| #if defined(GL_FOG_START) |
| case GL_FOG_START: |
| #endif // defined(GL_FOG_START) |
| #if defined(GL_FOG_END) |
| case GL_FOG_END: |
| #endif // defined(GL_FOG_END) |
| _needed = 1; |
| break; |
| #if defined(GL_FOG_COLOR) |
| case GL_FOG_COLOR: |
| #endif // defined(GL_FOG_COLOR) |
| _needed = 4; |
| break; |
| default: |
| _needed = 0; |
| break; |
| } |
| if (_remaining < _needed) { |
| _exception = 1; |
| _exceptionType = "java/lang/IllegalArgumentException"; |
| _exceptionMessage = "remaining() < needed"; |
| goto exit; |
| } |
| glFogxv( |
| (GLenum)pname, |
| (GLfixed *)params |
| ); |
| |
| exit: |
| if (_array) { |
| releasePointer(_env, _array, params, JNI_FALSE); |
| } |
| if (_exception) { |
| jniThrowException(_env, _exceptionType, _exceptionMessage); |
| } |
| } |
| |
| /* void glFrontFace ( GLenum mode ) */ |
| static void |
| android_glFrontFace__I |
| (JNIEnv *_env, jobject _this, jint mode) { |
| glFrontFace( |
| (GLenum)mode |
| ); |
| } |
| |
| /* void glFrustumf ( GLfloat left, GLfloat right, GLfloat bottom, GLfloat top, GLfloat zNear, GLfloat zFar ) */ |
| static void |
| android_glFrustumf__FFFFFF |
| (JNIEnv *_env, jobject _this, jfloat left, jfloat right, jfloat bottom, jfloat top, jfloat zNear, jfloat zFar) { |
| glFrustumf( |
| (GLfloat)left, |
| (GLfloat)right, |
| (GLfloat)bottom, |
| (GLfloat)top, |
| (GLfloat)zNear, |
| (GLfloat)zFar |
| ); |
| } |
| |
| /* void glFrustumx ( GLfixed left, GLfixed right, GLfixed bottom, GLfixed top, GLfixed zNear, GLfixed zFar ) */ |
| static void |
| android_glFrustumx__IIIIII |
| (JNIEnv *_env, jobject _this, jint left, jint right, jint bottom, jint top, jint zNear, jint zFar) { |
| glFrustumx( |
| (GLfixed)left, |
| (GLfixed)right, |
| (GLfixed)bottom, |
| (GLfixed)top, |
| (GLfixed)zNear, |
| (GLfixed)zFar |
| ); |
| } |
| |
| /* void glGenTextures ( GLsizei n, GLuint *textures ) */ |
| static void |
| android_glGenTextures__I_3II |
| (JNIEnv *_env, jobject _this, jint n, jintArray textures_ref, jint offset) { |
| jint _exception = 0; |
| const char * _exceptionType; |
| const char * _exceptionMessage; |
| GLuint *textures_base = (GLuint *) 0; |
| jint _remaining; |
| GLuint *textures = (GLuint *) 0; |
| |
| if (!textures_ref) { |
| _exception = 1; |
| _exceptionType = "java/lang/IllegalArgumentException"; |
| _exceptionMessage = "textures == null"; |
| goto exit; |
| } |
| if (offset < 0) { |
| _exception = 1; |
| _exceptionType = "java/lang/IllegalArgumentException"; |
| _exceptionMessage = "offset < 0"; |
| goto exit; |
| } |
| _remaining = _env->GetArrayLength(textures_ref) - offset; |
| if (_remaining < n) { |
| _exception = 1; |
| _exceptionType = "java/lang/IllegalArgumentException"; |
| _exceptionMessage = "length - offset < n < needed"; |
| goto exit; |
| } |
| textures_base = (GLuint *) |
| _env->GetPrimitiveArrayCritical(textures_ref, (jboolean *)0); |
| textures = textures_base + offset; |
| |
| glGenTextures( |
| (GLsizei)n, |
| (GLuint *)textures |
| ); |
| |
| exit: |
| if (textures_base) { |
| _env->ReleasePrimitiveArrayCritical(textures_ref, textures_base, |
| _exception ? JNI_ABORT: 0); |
| } |
| if (_exception) { |
| jniThrowException(_env, _exceptionType, _exceptionMessage); |
| } |
| } |
| |
| /* void glGenTextures ( GLsizei n, GLuint *textures ) */ |
| static void |
| android_glGenTextures__ILjava_nio_IntBuffer_2 |
| (JNIEnv *_env, jobject _this, jint n, jobject textures_buf) { |
| jint _exception = 0; |
| const char * _exceptionType; |
| const char * _exceptionMessage; |
| jarray _array = (jarray) 0; |
| jint _remaining; |
| GLuint *textures = (GLuint *) 0; |
| |
| textures = (GLuint *)getPointer(_env, textures_buf, &_array, &_remaining); |
| if (_remaining < n) { |
| _exception = 1; |
| _exceptionType = "java/lang/IllegalArgumentException"; |
| _exceptionMessage = "remaining() < n < needed"; |
| goto exit; |
| } |
| glGenTextures( |
| (GLsizei)n, |
| (GLuint *)textures |
| ); |
| |
| exit: |
| if (_array) { |
| releasePointer(_env, _array, textures, _exception ? JNI_FALSE : JNI_TRUE); |
| } |
| if (_exception) { |
| jniThrowException(_env, _exceptionType, _exceptionMessage); |
| } |
| } |
| |
| /* GLenum glGetError ( void ) */ |
| static jint |
| android_glGetError__ |
| (JNIEnv *_env, jobject _this) { |
| GLenum _returnValue; |
| _returnValue = glGetError(); |
| return _returnValue; |
| } |
| |
| /* void glGetIntegerv ( GLenum pname, GLint *params ) */ |
| static void |
| android_glGetIntegerv__I_3II |
| (JNIEnv *_env, jobject _this, jint pname, jintArray params_ref, jint offset) { |
| jint _exception = 0; |
| const char * _exceptionType; |
| const char * _exceptionMessage; |
| GLint *params_base = (GLint *) 0; |
| jint _remaining; |
| GLint *params = (GLint *) 0; |
| |
| if (!params_ref) { |
| _exception = 1; |
| _exceptionType = "java/lang/IllegalArgumentException"; |
| _exceptionMessage = "params == null"; |
| goto exit; |
| } |
| if (offset < 0) { |
| _exception = 1; |
| _exceptionType = "java/lang/IllegalArgumentException"; |
| _exceptionMessage = "offset < 0"; |
| goto exit; |
| } |
| _remaining = _env->GetArrayLength(params_ref) - offset; |
| int _needed; |
| switch (pname) { |
| #if defined(GL_ALPHA_BITS) |
| case GL_ALPHA_BITS: |
| #endif // defined(GL_ALPHA_BITS) |
| #if defined(GL_ALPHA_TEST_FUNC) |
| case GL_ALPHA_TEST_FUNC: |
| #endif // defined(GL_ALPHA_TEST_FUNC) |
| #if defined(GL_ALPHA_TEST_REF) |
| case GL_ALPHA_TEST_REF: |
| #endif // defined(GL_ALPHA_TEST_REF) |
| #if defined(GL_BLEND_DST) |
| case GL_BLEND_DST: |
| #endif // defined(GL_BLEND_DST) |
| #if defined(GL_BLUE_BITS) |
| case GL_BLUE_BITS: |
| #endif // defined(GL_BLUE_BITS) |
| #if defined(GL_COLOR_ARRAY_BUFFER_BINDING) |
| case GL_COLOR_ARRAY_BUFFER_BINDING: |
| #endif // defined(GL_COLOR_ARRAY_BUFFER_BINDING) |
| #if defined(GL_COLOR_ARRAY_SIZE) |
| case GL_COLOR_ARRAY_SIZE: |
| #endif // defined(GL_COLOR_ARRAY_SIZE) |
| #if defined(GL_COLOR_ARRAY_STRIDE) |
| case GL_COLOR_ARRAY_STRIDE: |
| #endif // defined(GL_COLOR_ARRAY_STRIDE) |
| #if defined(GL_COLOR_ARRAY_TYPE) |
| case GL_COLOR_ARRAY_TYPE: |
| #endif // defined(GL_COLOR_ARRAY_TYPE) |
| #if defined(GL_CULL_FACE) |
| case GL_CULL_FACE: |
| #endif // defined(GL_CULL_FACE) |
| #if defined(GL_DEPTH_BITS) |
| case GL_DEPTH_BITS: |
| #endif // defined(GL_DEPTH_BITS) |
| #if defined(GL_DEPTH_CLEAR_VALUE) |
| case GL_DEPTH_CLEAR_VALUE: |
| #endif // defined(GL_DEPTH_CLEAR_VALUE) |
| #if defined(GL_DEPTH_FUNC) |
| case GL_DEPTH_FUNC: |
| #endif // defined(GL_DEPTH_FUNC) |
| #if defined(GL_DEPTH_WRITEMASK) |
| case GL_DEPTH_WRITEMASK: |
| #endif // defined(GL_DEPTH_WRITEMASK) |
| #if defined(GL_FOG_DENSITY) |
| case GL_FOG_DENSITY: |
| #endif // defined(GL_FOG_DENSITY) |
| #if defined(GL_FOG_END) |
| case GL_FOG_END: |
| #endif // defined(GL_FOG_END) |
| #if defined(GL_FOG_MODE) |
| case GL_FOG_MODE: |
| #endif // defined(GL_FOG_MODE) |
| #if defined(GL_FOG_START) |
| case GL_FOG_START: |
| #endif // defined(GL_FOG_START) |
| #if defined(GL_FRONT_FACE) |
| case GL_FRONT_FACE: |
| #endif // defined(GL_FRONT_FACE) |
| #if defined(GL_GREEN_BITS) |
| case GL_GREEN_BITS: |
| #endif // defined(GL_GREEN_BITS) |
| #if defined(GL_IMPLEMENTATION_COLOR_READ_FORMAT_OES) |
| case GL_IMPLEMENTATION_COLOR_READ_FORMAT_OES: |
| #endif // defined(GL_IMPLEMENTATION_COLOR_READ_FORMAT_OES) |
| #if defined(GL_IMPLEMENTATION_COLOR_READ_TYPE_OES) |
| case GL_IMPLEMENTATION_COLOR_READ_TYPE_OES: |
| #endif // defined(GL_IMPLEMENTATION_COLOR_READ_TYPE_OES) |
| #if defined(GL_LIGHT_MODEL_COLOR_CONTROL) |
| case GL_LIGHT_MODEL_COLOR_CONTROL: |
| #endif // defined(GL_LIGHT_MODEL_COLOR_CONTROL) |
| #if defined(GL_LIGHT_MODEL_LOCAL_VIEWER) |
| case GL_LIGHT_MODEL_LOCAL_VIEWER: |
| #endif // defined(GL_LIGHT_MODEL_LOCAL_VIEWER) |
| #if defined(GL_LIGHT_MODEL_TWO_SIDE) |
| case GL_LIGHT_MODEL_TWO_SIDE: |
| #endif // defined(GL_LIGHT_MODEL_TWO_SIDE) |
| #if defined(GL_LINE_SMOOTH_HINT) |
| case GL_LINE_SMOOTH_HINT: |
| #endif // defined(GL_LINE_SMOOTH_HINT) |
| #if defined(GL_LINE_WIDTH) |
| case GL_LINE_WIDTH: |
| #endif // defined(GL_LINE_WIDTH) |
| #if defined(GL_LOGIC_OP_MODE) |
| case GL_LOGIC_OP_MODE: |
| #endif // defined(GL_LOGIC_OP_MODE) |
| #if defined(GL_MATRIX_INDEX_ARRAY_BUFFER_BINDING_OES) |
| case GL_MATRIX_INDEX_ARRAY_BUFFER_BINDING_OES: |
| #endif // defined(GL_MATRIX_INDEX_ARRAY_BUFFER_BINDING_OES) |
| #if defined(GL_MATRIX_INDEX_ARRAY_SIZE_OES) |
| case GL_MATRIX_INDEX_ARRAY_SIZE_OES: |
| #endif // defined(GL_MATRIX_INDEX_ARRAY_SIZE_OES) |
| #if defined(GL_MATRIX_INDEX_ARRAY_STRIDE_OES) |
| case GL_MATRIX_INDEX_ARRAY_STRIDE_OES: |
| #endif // defined(GL_MATRIX_INDEX_ARRAY_STRIDE_OES) |
| #if defined(GL_MATRIX_INDEX_ARRAY_TYPE_OES) |
| case GL_MATRIX_INDEX_ARRAY_TYPE_OES: |
| #endif // defined(GL_MATRIX_INDEX_ARRAY_TYPE_OES) |
| #if defined(GL_MATRIX_MODE) |
| case GL_MATRIX_MODE: |
| #endif // defined(GL_MATRIX_MODE) |
| #if defined(GL_MAX_CLIP_PLANES) |
| case GL_MAX_CLIP_PLANES: |
| #endif // defined(GL_MAX_CLIP_PLANES) |
| #if defined(GL_MAX_ELEMENTS_INDICES) |
| case GL_MAX_ELEMENTS_INDICES: |
| #endif // defined(GL_MAX_ELEMENTS_INDICES) |
| #if defined(GL_MAX_ELEMENTS_VERTICES) |
| case GL_MAX_ELEMENTS_VERTICES: |
| #endif // defined(GL_MAX_ELEMENTS_VERTICES) |
| #if defined(GL_MAX_LIGHTS) |
| case GL_MAX_LIGHTS: |
| #endif // defined(GL_MAX_LIGHTS) |
| #if defined(GL_MAX_MODELVIEW_STACK_DEPTH) |
| case GL_MAX_MODELVIEW_STACK_DEPTH: |
| #endif // defined(GL_MAX_MODELVIEW_STACK_DEPTH) |
| #if defined(GL_MAX_PALETTE_MATRICES_OES) |
| case GL_MAX_PALETTE_MATRICES_OES: |
| #endif // defined(GL_MAX_PALETTE_MATRICES_OES) |
| #if defined(GL_MAX_PROJECTION_STACK_DEPTH) |
| case GL_MAX_PROJECTION_STACK_DEPTH: |
| #endif // defined(GL_MAX_PROJECTION_STACK_DEPTH) |
| #if defined(GL_MAX_TEXTURE_SIZE) |
| case GL_MAX_TEXTURE_SIZE: |
| #endif // defined(GL_MAX_TEXTURE_SIZE) |
| #if defined(GL_MAX_TEXTURE_STACK_DEPTH) |
| case GL_MAX_TEXTURE_STACK_DEPTH: |
| #endif // defined(GL_MAX_TEXTURE_STACK_DEPTH) |
| #if defined(GL_MAX_TEXTURE_UNITS) |
| case GL_MAX_TEXTURE_UNITS: |
| #endif // defined(GL_MAX_TEXTURE_UNITS) |
| #if defined(GL_MAX_VERTEX_UNITS_OES) |
| case GL_MAX_VERTEX_UNITS_OES: |
| #endif // defined(GL_MAX_VERTEX_UNITS_OES) |
| #if defined(GL_MODELVIEW_STACK_DEPTH) |
| case GL_MODELVIEW_STACK_DEPTH: |
| #endif // defined(GL_MODELVIEW_STACK_DEPTH) |
| #if defined(GL_NORMAL_ARRAY_BUFFER_BINDING) |
| case GL_NORMAL_ARRAY_BUFFER_BINDING: |
| #endif // defined(GL_NORMAL_ARRAY_BUFFER_BINDING) |
| #if defined(GL_NORMAL_ARRAY_STRIDE) |
| case GL_NORMAL_ARRAY_STRIDE: |
| #endif // defined(GL_NORMAL_ARRAY_STRIDE) |
| #if defined(GL_NORMAL_ARRAY_TYPE) |
| case GL_NORMAL_ARRAY_TYPE: |
| #endif // defined(GL_NORMAL_ARRAY_TYPE) |
| #if defined(GL_NUM_COMPRESSED_TEXTURE_FORMATS) |
| case GL_NUM_COMPRESSED_TEXTURE_FORMATS: |
| #endif // defined(GL_NUM_COMPRESSED_TEXTURE_FORMATS) |
| #if defined(GL_PACK_ALIGNMENT) |
| case GL_PACK_ALIGNMENT: |
| #endif // defined(GL_PACK_ALIGNMENT) |
| #if defined(GL_PERSPECTIVE_CORRECTION_HINT) |
| case GL_PERSPECTIVE_CORRECTION_HINT: |
| #endif // defined(GL_PERSPECTIVE_CORRECTION_HINT) |
| #if defined(GL_POINT_SIZE) |
| case GL_POINT_SIZE: |
| #endif // defined(GL_POINT_SIZE) |
| #if defined(GL_POINT_SIZE_ARRAY_BUFFER_BINDING_OES) |
| case GL_POINT_SIZE_ARRAY_BUFFER_BINDING_OES: |
| #endif // defined(GL_POINT_SIZE_ARRAY_BUFFER_BINDING_OES) |
| #if defined(GL_POINT_SIZE_ARRAY_STRIDE_OES) |
| case GL_POINT_SIZE_ARRAY_STRIDE_OES: |
| #endif // defined(GL_POINT_SIZE_ARRAY_STRIDE_OES) |
| #if defined(GL_POINT_SIZE_ARRAY_TYPE_OES) |
| case GL_POINT_SIZE_ARRAY_TYPE_OES: |
| #endif // defined(GL_POINT_SIZE_ARRAY_TYPE_OES) |
| #if defined(GL_POINT_SMOOTH_HINT) |
| case GL_POINT_SMOOTH_HINT: |
| #endif // defined(GL_POINT_SMOOTH_HINT) |
| #if defined(GL_POLYGON_OFFSET_FACTOR) |
| case GL_POLYGON_OFFSET_FACTOR: |
| #endif // defined(GL_POLYGON_OFFSET_FACTOR) |
| #if defined(GL_POLYGON_OFFSET_UNITS) |
| case GL_POLYGON_OFFSET_UNITS: |
| #endif // defined(GL_POLYGON_OFFSET_UNITS) |
| #if defined(GL_PROJECTION_STACK_DEPTH) |
| case GL_PROJECTION_STACK_DEPTH: |
| #endif // defined(GL_PROJECTION_STACK_DEPTH) |
| #if defined(GL_RED_BITS) |
| case GL_RED_BITS: |
| #endif // defined(GL_RED_BITS) |
| #if defined(GL_SHADE_MODEL) |
| case GL_SHADE_MODEL: |
| #endif // defined(GL_SHADE_MODEL) |
| #if defined(GL_STENCIL_BITS) |
| case GL_STENCIL_BITS: |
| #endif // defined(GL_STENCIL_BITS) |
| #if defined(GL_STENCIL_CLEAR_VALUE) |
| case GL_STENCIL_CLEAR_VALUE: |
| #endif // defined(GL_STENCIL_CLEAR_VALUE) |
| #if defined(GL_STENCIL_FAIL) |
| case GL_STENCIL_FAIL: |
| #endif // defined(GL_STENCIL_FAIL) |
| #if defined(GL_STENCIL_FUNC) |
| case GL_STENCIL_FUNC: |
| #endif // defined(GL_STENCIL_FUNC) |
| #if defined(GL_STENCIL_PASS_DEPTH_FAIL) |
| case GL_STENCIL_PASS_DEPTH_FAIL: |
| #endif // defined(GL_STENCIL_PASS_DEPTH_FAIL) |
| #if defined(GL_STENCIL_PASS_DEPTH_PASS) |
| case GL_STENCIL_PASS_DEPTH_PASS: |
| #endif // defined(GL_STENCIL_PASS_DEPTH_PASS) |
| #if defined(GL_STENCIL_REF) |
| case GL_STENCIL_REF: |
| #endif // defined(GL_STENCIL_REF) |
| #if defined(GL_STENCIL_VALUE_MASK) |
| case GL_STENCIL_VALUE_MASK: |
| #endif // defined(GL_STENCIL_VALUE_MASK) |
| #if defined(GL_STENCIL_WRITEMASK) |
| case GL_STENCIL_WRITEMASK: |
| #endif // defined(GL_STENCIL_WRITEMASK) |
| #if defined(GL_SUBPIXEL_BITS) |
| case GL_SUBPIXEL_BITS: |
| #endif // defined(GL_SUBPIXEL_BITS) |
| #if defined(GL_TEXTURE_BINDING_2D) |
| case GL_TEXTURE_BINDING_2D: |
| #endif // defined(GL_TEXTURE_BINDING_2D) |
| #if defined(GL_TEXTURE_COORD_ARRAY_BUFFER_BINDING) |
| case GL_TEXTURE_COORD_ARRAY_BUFFER_BINDING: |
| #endif // defined(GL_TEXTURE_COORD_ARRAY_BUFFER_BINDING) |
| #if defined(GL_TEXTURE_COORD_ARRAY_SIZE) |
| case GL_TEXTURE_COORD_ARRAY_SIZE: |
| #endif // defined(GL_TEXTURE_COORD_ARRAY_SIZE) |
| #if defined(GL_TEXTURE_COORD_ARRAY_STRIDE) |
| case GL_TEXTURE_COORD_ARRAY_STRIDE: |
| #endif // defined(GL_TEXTURE_COORD_ARRAY_STRIDE) |
| #if defined(GL_TEXTURE_COORD_ARRAY_TYPE) |
| case GL_TEXTURE_COORD_ARRAY_TYPE: |
| #endif // defined(GL_TEXTURE_COORD_ARRAY_TYPE) |
| #if defined(GL_TEXTURE_STACK_DEPTH) |
| case GL_TEXTURE_STACK_DEPTH: |
| #endif // defined(GL_TEXTURE_STACK_DEPTH) |
| #if defined(GL_UNPACK_ALIGNMENT) |
| case GL_UNPACK_ALIGNMENT: |
| #endif // defined(GL_UNPACK_ALIGNMENT) |
| #if defined(GL_VERTEX_ARRAY_BUFFER_BINDING) |
| case GL_VERTEX_ARRAY_BUFFER_BINDING: |
| #endif // defined(GL_VERTEX_ARRAY_BUFFER_BINDING) |
| #if defined(GL_VERTEX_ARRAY_SIZE) |
| case GL_VERTEX_ARRAY_SIZE: |
| #endif // defined(GL_VERTEX_ARRAY_SIZE) |
| #if defined(GL_VERTEX_ARRAY_STRIDE) |
| case GL_VERTEX_ARRAY_STRIDE: |
| #endif // defined(GL_VERTEX_ARRAY_STRIDE) |
| #if defined(GL_VERTEX_ARRAY_TYPE) |
| case GL_VERTEX_ARRAY_TYPE: |
| #endif // defined(GL_VERTEX_ARRAY_TYPE) |
| #if defined(GL_WEIGHT_ARRAY_BUFFER_BINDING_OES) |
| case GL_WEIGHT_ARRAY_BUFFER_BINDING_OES: |
| #endif // defined(GL_WEIGHT_ARRAY_BUFFER_BINDING_OES) |
| #if defined(GL_WEIGHT_ARRAY_SIZE_OES) |
| case GL_WEIGHT_ARRAY_SIZE_OES: |
| #endif // defined(GL_WEIGHT_ARRAY_SIZE_OES) |
| #if defined(GL_WEIGHT_ARRAY_STRIDE_OES) |
| case GL_WEIGHT_ARRAY_STRIDE_OES: |
| #endif // defined(GL_WEIGHT_ARRAY_STRIDE_OES) |
| #if defined(GL_WEIGHT_ARRAY_TYPE_OES) |
| case GL_WEIGHT_ARRAY_TYPE_OES: |
| #endif // defined(GL_WEIGHT_ARRAY_TYPE_OES) |
| _needed = 1; |
| break; |
| #if defined(GL_ALIASED_POINT_SIZE_RANGE) |
| case GL_ALIASED_POINT_SIZE_RANGE: |
| #endif // defined(GL_ALIASED_POINT_SIZE_RANGE) |
| #if defined(GL_ALIASED_LINE_WIDTH_RANGE) |
| case GL_ALIASED_LINE_WIDTH_RANGE: |
| #endif // defined(GL_ALIASED_LINE_WIDTH_RANGE) |
| #if defined(GL_DEPTH_RANGE) |
| case GL_DEPTH_RANGE: |
| #endif // defined(GL_DEPTH_RANGE) |
| #if defined(GL_MAX_VIEWPORT_DIMS) |
| case GL_MAX_VIEWPORT_DIMS: |
| #endif // defined(GL_MAX_VIEWPORT_DIMS) |
| #if defined(GL_SMOOTH_LINE_WIDTH_RANGE) |
| case GL_SMOOTH_LINE_WIDTH_RANGE: |
| #endif // defined(GL_SMOOTH_LINE_WIDTH_RANGE) |
| #if defined(GL_SMOOTH_POINT_SIZE_RANGE) |
| case GL_SMOOTH_POINT_SIZE_RANGE: |
| #endif // defined(GL_SMOOTH_POINT_SIZE_RANGE) |
| _needed = 2; |
| break; |
| #if defined(GL_COLOR_CLEAR_VALUE) |
| case GL_COLOR_CLEAR_VALUE: |
| #endif // defined(GL_COLOR_CLEAR_VALUE) |
| #if defined(GL_COLOR_WRITEMASK) |
| case GL_COLOR_WRITEMASK: |
| #endif // defined(GL_COLOR_WRITEMASK) |
| #if defined(GL_FOG_COLOR) |
| case GL_FOG_COLOR: |
| #endif // defined(GL_FOG_COLOR) |
| #if defined(GL_LIGHT_MODEL_AMBIENT) |
| case GL_LIGHT_MODEL_AMBIENT: |
| #endif // defined(GL_LIGHT_MODEL_AMBIENT) |
| #if defined(GL_SCISSOR_BOX) |
| case GL_SCISSOR_BOX: |
| #endif // defined(GL_SCISSOR_BOX) |
| #if defined(GL_VIEWPORT) |
| case GL_VIEWPORT: |
| #endif // defined(GL_VIEWPORT) |
| _needed = 4; |
| break; |
| #if defined(GL_MODELVIEW_MATRIX) |
| case GL_MODELVIEW_MATRIX: |
| #endif // defined(GL_MODELVIEW_MATRIX) |
| #if defined(GL_MODELVIEW_MATRIX_FLOAT_AS_INT_BITS_OES) |
| case GL_MODELVIEW_MATRIX_FLOAT_AS_INT_BITS_OES: |
| #endif // defined(GL_MODELVIEW_MATRIX_FLOAT_AS_INT_BITS_OES) |
| #if defined(GL_PROJECTION_MATRIX) |
| case GL_PROJECTION_MATRIX: |
| #endif // defined(GL_PROJECTION_MATRIX) |
| #if defined(GL_PROJECTION_MATRIX_FLOAT_AS_INT_BITS_OES) |
| case GL_PROJECTION_MATRIX_FLOAT_AS_INT_BITS_OES: |
| #endif // defined(GL_PROJECTION_MATRIX_FLOAT_AS_INT_BITS_OES) |
| #if defined(GL_TEXTURE_MATRIX) |
| case GL_TEXTURE_MATRIX: |
| #endif // defined(GL_TEXTURE_MATRIX) |
| #if defined(GL_TEXTURE_MATRIX_FLOAT_AS_INT_BITS_OES) |
| case GL_TEXTURE_MATRIX_FLOAT_AS_INT_BITS_OES: |
| #endif // defined(GL_TEXTURE_MATRIX_FLOAT_AS_INT_BITS_OES) |
| _needed = 16; |
| break; |
| #if defined(GL_COMPRESSED_TEXTURE_FORMATS) |
| case GL_COMPRESSED_TEXTURE_FORMATS: |
| #endif // defined(GL_COMPRESSED_TEXTURE_FORMATS) |
| _needed = getNumCompressedTextureFormats(); |
| break; |
| default: |
| _needed = 0; |
| break; |
| } |
| if (_remaining < _needed) { |
| _exception = 1; |
| _exceptionType = "java/lang/IllegalArgumentException"; |
| _exceptionMessage = "length - offset < needed"; |
| goto exit; |
| } |
| params_base = (GLint *) |
| _env->GetPrimitiveArrayCritical(params_ref, (jboolean *)0); |
| params = params_base + offset; |
| |
| glGetIntegerv( |
| (GLenum)pname, |
| (GLint *)params |
| ); |
| |
| exit: |
| if (params_base) { |
| _env->ReleasePrimitiveArrayCritical(params_ref, params_base, |
| _exception ? JNI_ABORT: 0); |
| } |
| if (_exception) { |
| jniThrowException(_env, _exceptionType, _exceptionMessage); |
| } |
| } |
| |
| /* void glGetIntegerv ( GLenum pname, GLint *params ) */ |
| static void |
| android_glGetIntegerv__ILjava_nio_IntBuffer_2 |
| (JNIEnv *_env, jobject _this, jint pname, jobject params_buf) { |
| jint _exception = 0; |
| const char * _exceptionType; |
| const char * _exceptionMessage; |
| jarray _array = (jarray) 0; |
| jint _remaining; |
| GLint *params = (GLint *) 0; |
| |
| params = (GLint *)getPointer(_env, params_buf, &_array, &_remaining); |
| int _needed; |
| switch (pname) { |
| #if defined(GL_ALPHA_BITS) |
| case GL_ALPHA_BITS: |
| #endif // defined(GL_ALPHA_BITS) |
| #if defined(GL_ALPHA_TEST_FUNC) |
| case GL_ALPHA_TEST_FUNC: |
| #endif // defined(GL_ALPHA_TEST_FUNC) |
| #if defined(GL_ALPHA_TEST_REF) |
| case GL_ALPHA_TEST_REF: |
| #endif // defined(GL_ALPHA_TEST_REF) |
| #if defined(GL_BLEND_DST) |
| case GL_BLEND_DST: |
| #endif // defined(GL_BLEND_DST) |
| #if defined(GL_BLUE_BITS) |
| case GL_BLUE_BITS: |
| #endif // defined(GL_BLUE_BITS) |
| #if defined(GL_COLOR_ARRAY_BUFFER_BINDING) |
| case GL_COLOR_ARRAY_BUFFER_BINDING: |
| #endif // defined(GL_COLOR_ARRAY_BUFFER_BINDING) |
| #if defined(GL_COLOR_ARRAY_SIZE) |
| case GL_COLOR_ARRAY_SIZE: |
| #endif // defined(GL_COLOR_ARRAY_SIZE) |
| #if defined(GL_COLOR_ARRAY_STRIDE) |
| case GL_COLOR_ARRAY_STRIDE: |
| #endif // defined(GL_COLOR_ARRAY_STRIDE) |
| #if defined(GL_COLOR_ARRAY_TYPE) |
| case GL_COLOR_ARRAY_TYPE: |
| #endif // defined(GL_COLOR_ARRAY_TYPE) |
| #if defined(GL_CULL_FACE) |
| case GL_CULL_FACE: |
| #endif // defined(GL_CULL_FACE) |
| #if defined(GL_DEPTH_BITS) |
| case GL_DEPTH_BITS: |
| #endif // defined(GL_DEPTH_BITS) |
| #if defined(GL_DEPTH_CLEAR_VALUE) |
| case GL_DEPTH_CLEAR_VALUE: |
| #endif // defined(GL_DEPTH_CLEAR_VALUE) |
| #if defined(GL_DEPTH_FUNC) |
| case GL_DEPTH_FUNC: |
| #endif // defined(GL_DEPTH_FUNC) |
| #if defined(GL_DEPTH_WRITEMASK) |
| case GL_DEPTH_WRITEMASK: |
| #endif // defined(GL_DEPTH_WRITEMASK) |
| #if defined(GL_FOG_DENSITY) |
| case GL_FOG_DENSITY: |
| #endif // defined(GL_FOG_DENSITY) |
| #if defined(GL_FOG_END) |
| case GL_FOG_END: |
| #endif // defined(GL_FOG_END) |
| #if defined(GL_FOG_MODE) |
| case GL_FOG_MODE: |
| #endif // defined(GL_FOG_MODE) |
| #if defined(GL_FOG_START) |
| case GL_FOG_START: |
| #endif // defined(GL_FOG_START) |
| #if defined(GL_FRONT_FACE) |
| case GL_FRONT_FACE: |
| #endif // defined(GL_FRONT_FACE) |
| #if defined(GL_GREEN_BITS) |
| case GL_GREEN_BITS: |
| #endif // defined(GL_GREEN_BITS) |
| #if defined(GL_IMPLEMENTATION_COLOR_READ_FORMAT_OES) |
| case GL_IMPLEMENTATION_COLOR_READ_FORMAT_OES: |
| #endif // defined(GL_IMPLEMENTATION_COLOR_READ_FORMAT_OES) |
| #if defined(GL_IMPLEMENTATION_COLOR_READ_TYPE_OES) |
| case GL_IMPLEMENTATION_COLOR_READ_TYPE_OES: |
| #endif // defined(GL_IMPLEMENTATION_COLOR_READ_TYPE_OES) |
| #if defined(GL_LIGHT_MODEL_COLOR_CONTROL) |
| case GL_LIGHT_MODEL_COLOR_CONTROL: |
| #endif // defined(GL_LIGHT_MODEL_COLOR_CONTROL) |
| #if defined(GL_LIGHT_MODEL_LOCAL_VIEWER) |
| case GL_LIGHT_MODEL_LOCAL_VIEWER: |
| #endif // defined(GL_LIGHT_MODEL_LOCAL_VIEWER) |
| #if defined(GL_LIGHT_MODEL_TWO_SIDE) |
| case GL_LIGHT_MODEL_TWO_SIDE: |
| #endif // defined(GL_LIGHT_MODEL_TWO_SIDE) |
| #if defined(GL_LINE_SMOOTH_HINT) |
| case GL_LINE_SMOOTH_HINT: |
| #endif // defined(GL_LINE_SMOOTH_HINT) |
| #if defined(GL_LINE_WIDTH) |
| case GL_LINE_WIDTH: |
| #endif // defined(GL_LINE_WIDTH) |
| #if defined(GL_LOGIC_OP_MODE) |
| case GL_LOGIC_OP_MODE: |
| #endif // defined(GL_LOGIC_OP_MODE) |
| #if defined(GL_MATRIX_INDEX_ARRAY_BUFFER_BINDING_OES) |
| case GL_MATRIX_INDEX_ARRAY_BUFFER_BINDING_OES: |
| #endif // defined(GL_MATRIX_INDEX_ARRAY_BUFFER_BINDING_OES) |
| #if defined(GL_MATRIX_INDEX_ARRAY_SIZE_OES) |
| case GL_MATRIX_INDEX_ARRAY_SIZE_OES: |
| #endif // defined(GL_MATRIX_INDEX_ARRAY_SIZE_OES) |
| #if defined(GL_MATRIX_INDEX_ARRAY_STRIDE_OES) |
| case GL_MATRIX_INDEX_ARRAY_STRIDE_OES: |
| #endif // defined(GL_MATRIX_INDEX_ARRAY_STRIDE_OES) |
| #if defined(GL_MATRIX_INDEX_ARRAY_TYPE_OES) |
| case GL_MATRIX_INDEX_ARRAY_TYPE_OES: |
| #endif // defined(GL_MATRIX_INDEX_ARRAY_TYPE_OES) |
| #if defined(GL_MATRIX_MODE) |
| case GL_MATRIX_MODE: |
| #endif // defined(GL_MATRIX_MODE) |
| #if defined(GL_MAX_CLIP_PLANES) |
| case GL_MAX_CLIP_PLANES: |
| #endif // defined(GL_MAX_CLIP_PLANES) |
| #if defined(GL_MAX_ELEMENTS_INDICES) |
| case GL_MAX_ELEMENTS_INDICES: |
| #endif // defined(GL_MAX_ELEMENTS_INDICES) |
| #if defined(GL_MAX_ELEMENTS_VERTICES) |
| case GL_MAX_ELEMENTS_VERTICES: |
| #endif // defined(GL_MAX_ELEMENTS_VERTICES) |
| #if defined(GL_MAX_LIGHTS) |
| case GL_MAX_LIGHTS: |
| #endif // defined(GL_MAX_LIGHTS) |
| #if defined(GL_MAX_MODELVIEW_STACK_DEPTH) |
| case GL_MAX_MODELVIEW_STACK_DEPTH: |
| #endif // defined(GL_MAX_MODELVIEW_STACK_DEPTH) |
| #if defined(GL_MAX_PALETTE_MATRICES_OES) |
| case GL_MAX_PALETTE_MATRICES_OES: |
| #endif // defined(GL_MAX_PALETTE_MATRICES_OES) |
| #if defined(GL_MAX_PROJECTION_STACK_DEPTH) |
| case GL_MAX_PROJECTION_STACK_DEPTH: |
| #endif // defined(GL_MAX_PROJECTION_STACK_DEPTH) |
| #if defined(GL_MAX_TEXTURE_SIZE) |
| case GL_MAX_TEXTURE_SIZE: |
| #endif // defined(GL_MAX_TEXTURE_SIZE) |
| #if defined(GL_MAX_TEXTURE_STACK_DEPTH) |
| case GL_MAX_TEXTURE_STACK_DEPTH: |
| #endif // defined(GL_MAX_TEXTURE_STACK_DEPTH) |
| #if defined(GL_MAX_TEXTURE_UNITS) |
| case GL_MAX_TEXTURE_UNITS: |
| #endif // defined(GL_MAX_TEXTURE_UNITS) |
| #if defined(GL_MAX_VERTEX_UNITS_OES) |
| case GL_MAX_VERTEX_UNITS_OES: |
| #endif // defined(GL_MAX_VERTEX_UNITS_OES) |
| #if defined(GL_MODELVIEW_STACK_DEPTH) |
| case GL_MODELVIEW_STACK_DEPTH: |
| #endif // defined(GL_MODELVIEW_STACK_DEPTH) |
| #if defined(GL_NORMAL_ARRAY_BUFFER_BINDING) |
| case GL_NORMAL_ARRAY_BUFFER_BINDING: |
| #endif // defined(GL_NORMAL_ARRAY_BUFFER_BINDING) |
| #if defined(GL_NORMAL_ARRAY_STRIDE) |
| case GL_NORMAL_ARRAY_STRIDE: |
| #endif // defined(GL_NORMAL_ARRAY_STRIDE) |
| #if defined(GL_NORMAL_ARRAY_TYPE) |
| case GL_NORMAL_ARRAY_TYPE: |
| #endif // defined(GL_NORMAL_ARRAY_TYPE) |
| #if defined(GL_NUM_COMPRESSED_TEXTURE_FORMATS) |
| case GL_NUM_COMPRESSED_TEXTURE_FORMATS: |
| #endif // defined(GL_NUM_COMPRESSED_TEXTURE_FORMATS) |
| #if defined(GL_PACK_ALIGNMENT) |
| case GL_PACK_ALIGNMENT: |
| #endif // defined(GL_PACK_ALIGNMENT) |
| #if defined(GL_PERSPECTIVE_CORRECTION_HINT) |
| case GL_PERSPECTIVE_CORRECTION_HINT: |
| #endif // defined(GL_PERSPECTIVE_CORRECTION_HINT) |
| #if defined(GL_POINT_SIZE) |
| case GL_POINT_SIZE: |
| #endif // defined(GL_POINT_SIZE) |
| #if defined(GL_POINT_SIZE_ARRAY_BUFFER_BINDING_OES) |
| case GL_POINT_SIZE_ARRAY_BUFFER_BINDING_OES: |
| #endif // defined(GL_POINT_SIZE_ARRAY_BUFFER_BINDING_OES) |
| #if defined(GL_POINT_SIZE_ARRAY_STRIDE_OES) |
| case GL_POINT_SIZE_ARRAY_STRIDE_OES: |
| #endif // defined(GL_POINT_SIZE_ARRAY_STRIDE_OES) |
| #if defined(GL_POINT_SIZE_ARRAY_TYPE_OES) |
| case GL_POINT_SIZE_ARRAY_TYPE_OES: |
| #endif // defined(GL_POINT_SIZE_ARRAY_TYPE_OES) |
| #if defined(GL_POINT_SMOOTH_HINT) |
| case GL_POINT_SMOOTH_HINT: |
| #endif // defined(GL_POINT_SMOOTH_HINT) |
| #if defined(GL_POLYGON_OFFSET_FACTOR) |
| case GL_POLYGON_OFFSET_FACTOR: |
| #endif // defined(GL_POLYGON_OFFSET_FACTOR) |
| #if defined(GL_POLYGON_OFFSET_UNITS) |
| case GL_POLYGON_OFFSET_UNITS: |
| #endif // defined(GL_POLYGON_OFFSET_UNITS) |
| #if defined(GL_PROJECTION_STACK_DEPTH) |
| case GL_PROJECTION_STACK_DEPTH: |
| #endif // defined(GL_PROJECTION_STACK_DEPTH) |
| #if defined(GL_RED_BITS) |
| case GL_RED_BITS: |
| #endif // defined(GL_RED_BITS) |
| #if defined(GL_SHADE_MODEL) |
| case GL_SHADE_MODEL: |
| #endif // defined(GL_SHADE_MODEL) |
| #if defined(GL_STENCIL_BITS) |
| case GL_STENCIL_BITS: |
| #endif // defined(GL_STENCIL_BITS) |
| #if defined(GL_STENCIL_CLEAR_VALUE) |
| case GL_STENCIL_CLEAR_VALUE: |
| #endif // defined(GL_STENCIL_CLEAR_VALUE) |
| #if defined(GL_STENCIL_FAIL) |
| case GL_STENCIL_FAIL: |
| #endif // defined(GL_STENCIL_FAIL) |
| #if defined(GL_STENCIL_FUNC) |
| case GL_STENCIL_FUNC: |
| #endif // defined(GL_STENCIL_FUNC) |
| #if defined(GL_STENCIL_PASS_DEPTH_FAIL) |
| case GL_STENCIL_PASS_DEPTH_FAIL: |
| #endif // defined(GL_STENCIL_PASS_DEPTH_FAIL) |
| #if defined(GL_STENCIL_PASS_DEPTH_PASS) |
| case GL_STENCIL_PASS_DEPTH_PASS: |
| #endif // defined(GL_STENCIL_PASS_DEPTH_PASS) |
| #if defined(GL_STENCIL_REF) |
| case GL_STENCIL_REF: |
| #endif // defined(GL_STENCIL_REF) |
| #if defined(GL_STENCIL_VALUE_MASK) |
| case GL_STENCIL_VALUE_MASK: |
| #endif // defined(GL_STENCIL_VALUE_MASK) |
| #if defined(GL_STENCIL_WRITEMASK) |
| case GL_STENCIL_WRITEMASK: |
| #endif // defined(GL_STENCIL_WRITEMASK) |
| #if defined(GL_SUBPIXEL_BITS) |
| case GL_SUBPIXEL_BITS: |
| #endif // defined(GL_SUBPIXEL_BITS) |
| #if defined(GL_TEXTURE_BINDING_2D) |
| case GL_TEXTURE_BINDING_2D: |
| #endif // defined(GL_TEXTURE_BINDING_2D) |
| #if defined(GL_TEXTURE_COORD_ARRAY_BUFFER_BINDING) |
| case GL_TEXTURE_COORD_ARRAY_BUFFER_BINDING: |
| #endif // defined(GL_TEXTURE_COORD_ARRAY_BUFFER_BINDING) |
| #if defined(GL_TEXTURE_COORD_ARRAY_SIZE) |
| case GL_TEXTURE_COORD_ARRAY_SIZE: |
| #endif // defined(GL_TEXTURE_COORD_ARRAY_SIZE) |
| #if defined(GL_TEXTURE_COORD_ARRAY_STRIDE) |
| case GL_TEXTURE_COORD_ARRAY_STRIDE: |
| #endif // defined(GL_TEXTURE_COORD_ARRAY_STRIDE) |
| #if defined(GL_TEXTURE_COORD_ARRAY_TYPE) |
| case GL_TEXTURE_COORD_ARRAY_TYPE: |
| #endif // defined(GL_TEXTURE_COORD_ARRAY_TYPE) |
| #if defined(GL_TEXTURE_STACK_DEPTH) |
| case GL_TEXTURE_STACK_DEPTH: |
| #endif // defined(GL_TEXTURE_STACK_DEPTH) |
| #if defined(GL_UNPACK_ALIGNMENT) |
| case GL_UNPACK_ALIGNMENT: |
| #endif // defined(GL_UNPACK_ALIGNMENT) |
| #if defined(GL_VERTEX_ARRAY_BUFFER_BINDING) |
| case GL_VERTEX_ARRAY_BUFFER_BINDING: |
| #endif // defined(GL_VERTEX_ARRAY_BUFFER_BINDING) |
| #if defined(GL_VERTEX_ARRAY_SIZE) |
| case GL_VERTEX_ARRAY_SIZE: |
| #endif // defined(GL_VERTEX_ARRAY_SIZE) |
| #if defined(GL_VERTEX_ARRAY_STRIDE) |
| case GL_VERTEX_ARRAY_STRIDE: |
| #endif // defined(GL_VERTEX_ARRAY_STRIDE) |
| #if defined(GL_VERTEX_ARRAY_TYPE) |
| case GL_VERTEX_ARRAY_TYPE: |
| #endif // defined(GL_VERTEX_ARRAY_TYPE) |
| #if defined(GL_WEIGHT_ARRAY_BUFFER_BINDING_OES) |
| case GL_WEIGHT_ARRAY_BUFFER_BINDING_OES: |
| #endif // defined(GL_WEIGHT_ARRAY_BUFFER_BINDING_OES) |
| #if defined(GL_WEIGHT_ARRAY_SIZE_OES) |
| case GL_WEIGHT_ARRAY_SIZE_OES: |
| #endif // defined(GL_WEIGHT_ARRAY_SIZE_OES) |
| #if defined(GL_WEIGHT_ARRAY_STRIDE_OES) |
| case GL_WEIGHT_ARRAY_STRIDE_OES: |
| #endif // defined(GL_WEIGHT_ARRAY_STRIDE_OES) |
| #if defined(GL_WEIGHT_ARRAY_TYPE_OES) |
| case GL_WEIGHT_ARRAY_TYPE_OES: |
| #endif // defined(GL_WEIGHT_ARRAY_TYPE_OES) |
| _needed = 1; |
| break; |
| #if defined(GL_ALIASED_POINT_SIZE_RANGE) |
| case GL_ALIASED_POINT_SIZE_RANGE: |
| #endif // defined(GL_ALIASED_POINT_SIZE_RANGE) |
| #if defined(GL_ALIASED_LINE_WIDTH_RANGE) |
| case GL_ALIASED_LINE_WIDTH_RANGE: |
| #endif // defined(GL_ALIASED_LINE_WIDTH_RANGE) |
| #if defined(GL_DEPTH_RANGE) |
| case GL_DEPTH_RANGE: |
| #endif // defined(GL_DEPTH_RANGE) |
| #if defined(GL_MAX_VIEWPORT_DIMS) |
| case GL_MAX_VIEWPORT_DIMS: |
| #endif // defined(GL_MAX_VIEWPORT_DIMS) |
| #if defined(GL_SMOOTH_LINE_WIDTH_RANGE) |
| case GL_SMOOTH_LINE_WIDTH_RANGE: |
| #endif // defined(GL_SMOOTH_LINE_WIDTH_RANGE) |
| #if defined(GL_SMOOTH_POINT_SIZE_RANGE) |
| case GL_SMOOTH_POINT_SIZE_RANGE: |
| #endif // defined(GL_SMOOTH_POINT_SIZE_RANGE) |
| _needed = 2; |
| break; |
| #if defined(GL_COLOR_CLEAR_VALUE) |
| case GL_COLOR_CLEAR_VALUE: |
| #endif // defined(GL_COLOR_CLEAR_VALUE) |
| #if defined(GL_COLOR_WRITEMASK) |
| case GL_COLOR_WRITEMASK: |
| #endif // defined(GL_COLOR_WRITEMASK) |
| #if defined(GL_FOG_COLOR) |
| case GL_FOG_COLOR: |
| #endif // defined(GL_FOG_COLOR) |
| #if defined(GL_LIGHT_MODEL_AMBIENT) |
| case GL_LIGHT_MODEL_AMBIENT: |
| #endif // defined(GL_LIGHT_MODEL_AMBIENT) |
| #if defined(GL_SCISSOR_BOX) |
| case GL_SCISSOR_BOX: |
| #endif // defined(GL_SCISSOR_BOX) |
| #if defined(GL_VIEWPORT) |
| case GL_VIEWPORT: |
| #endif // defined(GL_VIEWPORT) |
| _needed = 4; |
| break; |
| #if defined(GL_MODELVIEW_MATRIX) |
| case GL_MODELVIEW_MATRIX: |
| #endif // defined(GL_MODELVIEW_MATRIX) |
| #if defined(GL_MODELVIEW_MATRIX_FLOAT_AS_INT_BITS_OES) |
| case GL_MODELVIEW_MATRIX_FLOAT_AS_INT_BITS_OES: |
| #endif // defined(GL_MODELVIEW_MATRIX_FLOAT_AS_INT_BITS_OES) |
| #if defined(GL_PROJECTION_MATRIX) |
| case GL_PROJECTION_MATRIX: |
| #endif // defined(GL_PROJECTION_MATRIX) |
| #if defined(GL_PROJECTION_MATRIX_FLOAT_AS_INT_BITS_OES) |
| case GL_PROJECTION_MATRIX_FLOAT_AS_INT_BITS_OES: |
| #endif // defined(GL_PROJECTION_MATRIX_FLOAT_AS_INT_BITS_OES) |
| #if defined(GL_TEXTURE_MATRIX) |
| case GL_TEXTURE_MATRIX: |
| #endif // defined(GL_TEXTURE_MATRIX) |
| #if defined(GL_TEXTURE_MATRIX_FLOAT_AS_INT_BITS_OES) |
| case GL_TEXTURE_MATRIX_FLOAT_AS_INT_BITS_OES: |
| #endif // defined(GL_TEXTURE_MATRIX_FLOAT_AS_INT_BITS_OES) |
| _needed = 16; |
| break; |
| #if defined(GL_COMPRESSED_TEXTURE_FORMATS) |
| case GL_COMPRESSED_TEXTURE_FORMATS: |
| #endif // defined(GL_COMPRESSED_TEXTURE_FORMATS) |
| _needed = getNumCompressedTextureFormats(); |
| break; |
| default: |
| _needed = 0; |
| break; |
| } |
| if (_remaining < _needed) { |
| _exception = 1; |
| _exceptionType = "java/lang/IllegalArgumentException"; |
| _exceptionMessage = "remaining() < needed"; |
| goto exit; |
| } |
| glGetIntegerv( |
| (GLenum)pname, |
| (GLint *)params |
| ); |
| |
| exit: |
| if (_array) { |
| releasePointer(_env, _array, params, _exception ? JNI_FALSE : JNI_TRUE); |
| } |
| if (_exception) { |
| jniThrowException(_env, _exceptionType, _exceptionMessage); |
| } |
| } |
| |
| /* const GLubyte * glGetString ( GLenum name ) */ |
| static jstring android_glGetString(JNIEnv* _env, jobject, jint name) { |
| const char* chars = (const char*) glGetString((GLenum) name); |
| return _env->NewStringUTF(chars); |
| } |
| /* void glHint ( GLenum target, GLenum mode ) */ |
| static void |
| android_glHint__II |
| (JNIEnv *_env, jobject _this, jint target, jint mode) { |
| glHint( |
| (GLenum)target, |
| (GLenum)mode |
| ); |
| } |
| |
| /* void glLightModelf ( GLenum pname, GLfloat param ) */ |
| static void |
| android_glLightModelf__IF |
| (JNIEnv *_env, jobject _this, jint pname, jfloat param) { |
| glLightModelf( |
| (GLenum)pname, |
| (GLfloat)param |
| ); |
| } |
| |
| /* void glLightModelfv ( GLenum pname, const GLfloat *params ) */ |
| static void |
| android_glLightModelfv__I_3FI |
| (JNIEnv *_env, jobject _this, jint pname, jfloatArray params_ref, jint offset) { |
| jint _exception = 0; |
| const char * _exceptionType; |
| const char * _exceptionMessage; |
| GLfloat *params_base = (GLfloat *) 0; |
| jint _remaining; |
| GLfloat *params = (GLfloat *) 0; |
| |
| if (!params_ref) { |
| _exception = 1; |
| _exceptionType = "java/lang/IllegalArgumentException"; |
| _exceptionMessage = "params == null"; |
| goto exit; |
| } |
| if (offset < 0) { |
| _exception = 1; |
| _exceptionType = "java/lang/IllegalArgumentException"; |
| _exceptionMessage = "offset < 0"; |
| goto exit; |
| } |
| _remaining = _env->GetArrayLength(params_ref) - offset; |
| int _needed; |
| switch (pname) { |
| #if defined(GL_LIGHT_MODEL_TWO_SIDE) |
| case GL_LIGHT_MODEL_TWO_SIDE: |
| #endif // defined(GL_LIGHT_MODEL_TWO_SIDE) |
| _needed = 1; |
| break; |
| #if defined(GL_LIGHT_MODEL_AMBIENT) |
| case GL_LIGHT_MODEL_AMBIENT: |
| #endif // defined(GL_LIGHT_MODEL_AMBIENT) |
| _needed = 4; |
| break; |
| default: |
| _needed = 0; |
| break; |
| } |
| if (_remaining < _needed) { |
| _exception = 1; |
| _exceptionType = "java/lang/IllegalArgumentException"; |
| _exceptionMessage = "length - offset < needed"; |
| goto exit; |
| } |
| params_base = (GLfloat *) |
| _env->GetPrimitiveArrayCritical(params_ref, (jboolean *)0); |
| params = params_base + offset; |
| |
| glLightModelfv( |
| (GLenum)pname, |
| (GLfloat *)params |
| ); |
| |
| exit: |
| if (params_base) { |
| _env->ReleasePrimitiveArrayCritical(params_ref, params_base, |
| JNI_ABORT); |
| } |
| if (_exception) { |
| jniThrowException(_env, _exceptionType, _exceptionMessage); |
| } |
| } |
| |
| /* void glLightModelfv ( GLenum pname, const GLfloat *params ) */ |
| static void |
| android_glLightModelfv__ILjava_nio_FloatBuffer_2 |
| (JNIEnv *_env, jobject _this, jint pname, jobject params_buf) { |
| jint _exception = 0; |
| const char * _exceptionType; |
| const char * _exceptionMessage; |
| jarray _array = (jarray) 0; |
| jint _remaining; |
| GLfloat *params = (GLfloat *) 0; |
| |
| params = (GLfloat *)getPointer(_env, params_buf, &_array, &_remaining); |
| int _needed; |
| switch (pname) { |
| #if defined(GL_LIGHT_MODEL_TWO_SIDE) |
| case GL_LIGHT_MODEL_TWO_SIDE: |
| #endif // defined(GL_LIGHT_MODEL_TWO_SIDE) |
| _needed = 1; |
| break; |
| #if defined(GL_LIGHT_MODEL_AMBIENT) |
| case GL_LIGHT_MODEL_AMBIENT: |
| #endif // defined(GL_LIGHT_MODEL_AMBIENT) |
| _needed = 4; |
| break; |
| default: |
| _needed = 0; |
| break; |
| } |
| if (_remaining < _needed) { |
| _exception = 1; |
| _exceptionType = "java/lang/IllegalArgumentException"; |
| _exceptionMessage = "remaining() < needed"; |
| goto exit; |
| } |
| glLightModelfv( |
| (GLenum)pname, |
| (GLfloat *)params |
| ); |
| |
| exit: |
| if (_array) { |
| releasePointer(_env, _array, params, JNI_FALSE); |
| } |
| if (_exception) { |
| jniThrowException(_env, _exceptionType, _exceptionMessage); |
| } |
| } |
| |
| /* void glLightModelx ( GLenum pname, GLfixed param ) */ |
| static void |
| android_glLightModelx__II |
| (JNIEnv *_env, jobject _this, jint pname, jint param) { |
| glLightModelx( |
| (GLenum)pname, |
| (GLfixed)param |
| ); |
| } |
| |
| /* void glLightModelxv ( GLenum pname, const GLfixed *params ) */ |
| static void |
| android_glLightModelxv__I_3II |
| (JNIEnv *_env, jobject _this, jint pname, jintArray params_ref, jint offset) { |
| jint _exception = 0; |
| const char * _exceptionType; |
| const char * _exceptionMessage; |
| GLfixed *params_base = (GLfixed *) 0; |
| jint _remaining; |
| GLfixed *params = (GLfixed *) 0; |
| |
| if (!params_ref) { |
| _exception = 1; |
| _exceptionType = "java/lang/IllegalArgumentException"; |
| _exceptionMessage = "params == null"; |
| goto exit; |
| } |
| if (offset < 0) { |
| _exception = 1; |
| _exceptionType = "java/lang/IllegalArgumentException"; |
| _exceptionMessage = "offset < 0"; |
| goto exit; |
| } |
| _remaining = _env->GetArrayLength(params_ref) - offset; |
| int _needed; |
| switch (pname) { |
| #if defined(GL_LIGHT_MODEL_TWO_SIDE) |
| case GL_LIGHT_MODEL_TWO_SIDE: |
| #endif // defined(GL_LIGHT_MODEL_TWO_SIDE) |
| _needed = 1; |
| break; |
| #if defined(GL_LIGHT_MODEL_AMBIENT) |
| case GL_LIGHT_MODEL_AMBIENT: |
| #endif // defined(GL_LIGHT_MODEL_AMBIENT) |
| _needed = 4; |
| break; |
| default: |
| _needed = 0; |
| break; |
| } |
| if (_remaining < _needed) { |
| _exception = 1; |
| _exceptionType = "java/lang/IllegalArgumentException"; |
| _exceptionMessage = "length - offset < needed"; |
| goto exit; |
| } |
| params_base = (GLfixed *) |
| _env->GetPrimitiveArrayCritical(params_ref, (jboolean *)0); |
| params = params_base + offset; |
| |
| glLightModelxv( |
| (GLenum)pname, |
| (GLfixed *)params |
| ); |
| |
| exit: |
| if (params_base) { |
| _env->ReleasePrimitiveArrayCritical(params_ref, params_base, |
| JNI_ABORT); |
| } |
| if (_exception) { |
| jniThrowException(_env, _exceptionType, _exceptionMessage); |
| } |
| } |
| |
| /* void glLightModelxv ( GLenum pname, const GLfixed *params ) */ |
| static void |
| android_glLightModelxv__ILjava_nio_IntBuffer_2 |
| (JNIEnv *_env, jobject _this, jint pname, jobject params_buf) { |
| jint _exception = 0; |
| const char * _exceptionType; |
| const char * _exceptionMessage; |
| jarray _array = (jarray) 0; |
| jint _remaining; |
| GLfixed *params = (GLfixed *) 0; |
| |
| params = (GLfixed *)getPointer(_env, params_buf, &_array, &_remaining); |
| int _needed; |
| switch (pname) { |
| #if defined(GL_LIGHT_MODEL_TWO_SIDE) |
| case GL_LIGHT_MODEL_TWO_SIDE: |
| #endif // defined(GL_LIGHT_MODEL_TWO_SIDE) |
| _needed = 1; |
| break; |
| #if defined(GL_LIGHT_MODEL_AMBIENT) |
| case GL_LIGHT_MODEL_AMBIENT: |
| #endif // defined(GL_LIGHT_MODEL_AMBIENT) |
| _needed = 4; |
| break; |
| default: |
| _needed = 0; |
| break; |
| } |
| if (_remaining < _needed) { |
| _exception = 1; |
| _exceptionType = "java/lang/IllegalArgumentException"; |
| _exceptionMessage = "remaining() < needed"; |
| goto exit; |
| } |
| glLightModelxv( |
| (GLenum)pname, |
| (GLfixed *)params |
| ); |
| |
| exit: |
| if (_array) { |
| releasePointer(_env, _array, params, JNI_FALSE); |
| } |
| if (_exception) { |
| jniThrowException(_env, _exceptionType, _exceptionMessage); |
| } |
| } |
| |
| /* void glLightf ( GLenum light, GLenum pname, GLfloat param ) */ |
| static void |
| android_glLightf__IIF |
| (JNIEnv *_env, jobject _this, jint light, jint pname, jfloat param) { |
| glLightf( |
| (GLenum)light, |
| (GLenum)pname, |
| (GLfloat)param |
| ); |
| } |
| |
| /* void glLightfv ( GLenum light, GLenum pname, const GLfloat *params ) */ |
| static void |
| android_glLightfv__II_3FI |
| (JNIEnv *_env, jobject _this, jint light, jint pname, jfloatArray params_ref, jint offset) { |
| jint _exception = 0; |
| const char * _exceptionType; |
| const char * _exceptionMessage; |
| GLfloat *params_base = (GLfloat *) 0; |
| jint _remaining; |
| GLfloat *params = (GLfloat *) 0; |
| |
| if (!params_ref) { |
| _exception = 1; |
| _exceptionType = "java/lang/IllegalArgumentException"; |
| _exceptionMessage = "params == null"; |
| goto exit; |
| } |
| if (offset < 0) { |
| _exception = 1; |
| _exceptionType = "java/lang/IllegalArgumentException"; |
| _exceptionMessage = "offset < 0"; |
| goto exit; |
| } |
| _remaining = _env->GetArrayLength(params_ref) - offset; |
| int _needed; |
| switch (pname) { |
| #if defined(GL_SPOT_EXPONENT) |
| case GL_SPOT_EXPONENT: |
| #endif // defined(GL_SPOT_EXPONENT) |
| #if defined(GL_SPOT_CUTOFF) |
| case GL_SPOT_CUTOFF: |
| #endif // defined(GL_SPOT_CUTOFF) |
| #if defined(GL_CONSTANT_ATTENUATION) |
| case GL_CONSTANT_ATTENUATION: |
| #endif // defined(GL_CONSTANT_ATTENUATION) |
| #if defined(GL_LINEAR_ATTENUATION) |
| case GL_LINEAR_ATTENUATION: |
| #endif // defined(GL_LINEAR_ATTENUATION) |
| #if defined(GL_QUADRATIC_ATTENUATION) |
| case GL_QUADRATIC_ATTENUATION: |
| #endif // defined(GL_QUADRATIC_ATTENUATION) |
| _needed = 1; |
| break; |
| #if defined(GL_SPOT_DIRECTION) |
| case GL_SPOT_DIRECTION: |
| #endif // defined(GL_SPOT_DIRECTION) |
| _needed = 3; |
| break; |
| #if defined(GL_AMBIENT) |
| case GL_AMBIENT: |
| #endif // defined(GL_AMBIENT) |
| #if defined(GL_DIFFUSE) |
| case GL_DIFFUSE: |
| #endif // defined(GL_DIFFUSE) |
| #if defined(GL_SPECULAR) |
| case GL_SPECULAR: |
| #endif // defined(GL_SPECULAR) |
| #if defined(GL_EMISSION) |
| case GL_EMISSION: |
| #endif // defined(GL_EMISSION) |
| _needed = 4; |
| break; |
| default: |
| _needed = 0; |
| break; |
| } |
| if (_remaining < _needed) { |
| _exception = 1; |
| _exceptionType = "java/lang/IllegalArgumentException"; |
| _exceptionMessage = "length - offset < needed"; |
| goto exit; |
| } |
| params_base = (GLfloat *) |
| _env->GetPrimitiveArrayCritical(params_ref, (jboolean *)0); |
| params = params_base + offset; |
| |
| glLightfv( |
| (GLenum)light, |
| (GLenum)pname, |
| (GLfloat *)params |
| ); |
| |
| exit: |
| if (params_base) { |
| _env->ReleasePrimitiveArrayCritical(params_ref, params_base, |
| JNI_ABORT); |
| } |
| if (_exception) { |
| jniThrowException(_env, _exceptionType, _exceptionMessage); |
| } |
| } |
| |
| /* void glLightfv ( GLenum light, GLenum pname, const GLfloat *params ) */ |
| static void |
| android_glLightfv__IILjava_nio_FloatBuffer_2 |
| (JNIEnv *_env, jobject _this, jint light, jint pname, jobject params_buf) { |
| jint _exception = 0; |
| const char * _exceptionType; |
| const char * _exceptionMessage; |
| jarray _array = (jarray) 0; |
| jint _remaining; |
| GLfloat *params = (GLfloat *) 0; |
| |
| params = (GLfloat *)getPointer(_env, params_buf, &_array, &_remaining); |
| int _needed; |
| switch (pname) { |
| #if defined(GL_SPOT_EXPONENT) |
| case GL_SPOT_EXPONENT: |
| #endif // defined(GL_SPOT_EXPONENT) |
| #if defined(GL_SPOT_CUTOFF) |
| case GL_SPOT_CUTOFF: |
| #endif // defined(GL_SPOT_CUTOFF) |
| #if defined(GL_CONSTANT_ATTENUATION) |
| case GL_CONSTANT_ATTENUATION: |
| #endif // defined(GL_CONSTANT_ATTENUATION) |
| #if defined(GL_LINEAR_ATTENUATION) |
| case GL_LINEAR_ATTENUATION: |
| #endif // defined(GL_LINEAR_ATTENUATION) |
| #if defined(GL_QUADRATIC_ATTENUATION) |
| case GL_QUADRATIC_ATTENUATION: |
| #endif // defined(GL_QUADRATIC_ATTENUATION) |
| _needed = 1; |
| break; |
| #if defined(GL_SPOT_DIRECTION) |
| case GL_SPOT_DIRECTION: |
| #endif // defined(GL_SPOT_DIRECTION) |
| _needed = 3; |
| break; |
| #if defined(GL_AMBIENT) |
| case GL_AMBIENT: |
| #endif // defined(GL_AMBIENT) |
| #if defined(GL_DIFFUSE) |
| case GL_DIFFUSE: |
| #endif // defined(GL_DIFFUSE) |
| #if defined(GL_SPECULAR) |
| case GL_SPECULAR: |
| #endif // defined(GL_SPECULAR) |
| #if defined(GL_EMISSION) |
| case GL_EMISSION: |
| #endif // defined(GL_EMISSION) |
| _needed = 4; |
| break; |
| default: |
| _needed = 0; |
| break; |
| } |
| if (_remaining < _needed) { |
| _exception = 1; |
| _exceptionType = "java/lang/IllegalArgumentException"; |
| _exceptionMessage = "remaining() < needed"; |
| goto exit; |
| } |
| glLightfv( |
| (GLenum)light, |
| (GLenum)pname, |
| (GLfloat *)params |
| ); |
| |
| exit: |
| if (_array) { |
| releasePointer(_env, _array, params, JNI_FALSE); |
| } |
| if (_exception) { |
| jniThrowException(_env, _exceptionType, _exceptionMessage); |
| } |
| } |
| |
| /* void glLightx ( GLenum light, GLenum pname, GLfixed param ) */ |
| static void |
| android_glLightx__III |
| (JNIEnv *_env, jobject _this, jint light, jint pname, jint param) { |
| glLightx( |
| (GLenum)light, |
| (GLenum)pname, |
| (GLfixed)param |
| ); |
| } |
| |
| /* void glLightxv ( GLenum light, GLenum pname, const GLfixed *params ) */ |
| static void |
| android_glLightxv__II_3II |
| (JNIEnv *_env, jobject _this, jint light, jint pname, jintArray params_ref, jint offset) { |
| jint _exception = 0; |
| const char * _exceptionType; |
| const char * _exceptionMessage; |
| GLfixed *params_base = (GLfixed *) 0; |
| jint _remaining; |
| GLfixed *params = (GLfixed *) 0; |
| |
| if (!params_ref) { |
| _exception = 1; |
| _exceptionType = "java/lang/IllegalArgumentException"; |
| _exceptionMessage = "params == null"; |
| goto exit; |
| } |
| if (offset < 0) { |
| _exception = 1; |
| _exceptionType = "java/lang/IllegalArgumentException"; |
| _exceptionMessage = "offset < 0"; |
| goto exit; |
| } |
| _remaining = _env->GetArrayLength(params_ref) - offset; |
| int _needed; |
| switch (pname) { |
| #if defined(GL_SPOT_EXPONENT) |
| case GL_SPOT_EXPONENT: |
| #endif // defined(GL_SPOT_EXPONENT) |
| #if defined(GL_SPOT_CUTOFF) |
| case GL_SPOT_CUTOFF: |
| #endif // defined(GL_SPOT_CUTOFF) |
| #if defined(GL_CONSTANT_ATTENUATION) |
| case GL_CONSTANT_ATTENUATION: |
| #endif // defined(GL_CONSTANT_ATTENUATION) |
| #if defined(GL_LINEAR_ATTENUATION) |
| case GL_LINEAR_ATTENUATION: |
| #endif // defined(GL_LINEAR_ATTENUATION) |
| #if defined(GL_QUADRATIC_ATTENUATION) |
| case GL_QUADRATIC_ATTENUATION: |
| #endif // defined(GL_QUADRATIC_ATTENUATION) |
| _needed = 1; |
| break; |
| #if defined(GL_SPOT_DIRECTION) |
| case GL_SPOT_DIRECTION: |
| #endif // defined(GL_SPOT_DIRECTION) |
| _needed = 3; |
| break; |
| #if defined(GL_AMBIENT) |
| case GL_AMBIENT: |
| #endif // defined(GL_AMBIENT) |
| #if defined(GL_DIFFUSE) |
| case GL_DIFFUSE: |
| #endif // defined(GL_DIFFUSE) |
| #if defined(GL_SPECULAR) |
| case GL_SPECULAR: |
| #endif // defined(GL_SPECULAR) |
| #if defined(GL_EMISSION) |
| case GL_EMISSION: |
| #endif // defined(GL_EMISSION) |
| _needed = 4; |
| break; |
| default: |
| _needed = 0; |
| break; |
| } |
| if (_remaining < _needed) { |
| _exception = 1; |
| _exceptionType = "java/lang/IllegalArgumentException"; |
| _exceptionMessage = "length - offset < needed"; |
| goto exit; |
| } |
| params_base = (GLfixed *) |
| _env->GetPrimitiveArrayCritical(params_ref, (jboolean *)0); |
| params = params_base + offset; |
| |
| glLightxv( |
| (GLenum)light, |
| (GLenum)pname, |
| (GLfixed *)params |
| ); |
| |
| exit: |
| if (params_base) { |
| _env->ReleasePrimitiveArrayCritical(params_ref, params_base, |
| JNI_ABORT); |
| } |
| if (_exception) { |
| jniThrowException(_env, _exceptionType, _exceptionMessage); |
| } |
| } |
| |
| /* void glLightxv ( GLenum light, GLenum pname, const GLfixed *params ) */ |
| static void |
| android_glLightxv__IILjava_nio_IntBuffer_2 |
| (JNIEnv *_env, jobject _this, jint light, jint pname, jobject params_buf) { |
| jint _exception = 0; |
| const char * _exceptionType; |
| const char * _exceptionMessage; |
| jarray _array = (jarray) 0; |
| jint _remaining; |
| GLfixed *params = (GLfixed *) 0; |
| |
| params = (GLfixed *)getPointer(_env, params_buf, &_array, &_remaining); |
| int _needed; |
| switch (pname) { |
| #if defined(GL_SPOT_EXPONENT) |
| case GL_SPOT_EXPONENT: |
| #endif // defined(GL_SPOT_EXPONENT) |
| #if defined(GL_SPOT_CUTOFF) |
| case GL_SPOT_CUTOFF: |
| #endif // defined(GL_SPOT_CUTOFF) |
| #if defined(GL_CONSTANT_ATTENUATION) |
| case GL_CONSTANT_ATTENUATION: |
| #endif // defined(GL_CONSTANT_ATTENUATION) |
| #if defined(GL_LINEAR_ATTENUATION) |
| case GL_LINEAR_ATTENUATION: |
| #endif // defined(GL_LINEAR_ATTENUATION) |
| #if defined(GL_QUADRATIC_ATTENUATION) |
| case GL_QUADRATIC_ATTENUATION: |
| #endif // defined(GL_QUADRATIC_ATTENUATION) |
| _needed = 1; |
| break; |
| #if defined(GL_SPOT_DIRECTION) |
| case GL_SPOT_DIRECTION: |
| #endif // defined(GL_SPOT_DIRECTION) |
| _needed = 3; |
| break; |
| #if defined(GL_AMBIENT) |
| case GL_AMBIENT: |
| #endif // defined(GL_AMBIENT) |
| #if defined(GL_DIFFUSE) |
| case GL_DIFFUSE: |
| #endif // defined(GL_DIFFUSE) |
| #if defined(GL_SPECULAR) |
| case GL_SPECULAR: |
| #endif // defined(GL_SPECULAR) |
| #if defined(GL_EMISSION) |
| case GL_EMISSION: |
| #endif // defined(GL_EMISSION) |
| _needed = 4; |
| break; |
| default: |
| _needed = 0; |
| break; |
| } |
| if (_remaining < _needed) { |
| _exception = 1; |
| _exceptionType = "java/lang/IllegalArgumentException"; |
| _exceptionMessage = "remaining() < needed"; |
| goto exit; |
| } |
| glLightxv( |
| (GLenum)light, |
| (GLenum)pname, |
| (GLfixed *)params |
| ); |
| |
| exit: |
| if (_array) { |
| releasePointer(_env, _array, params, JNI_FALSE); |
| } |
| if (_exception) { |
| jniThrowException(_env, _exceptionType, _exceptionMessage); |
| } |
| } |
| |
| /* void glLineWidth ( GLfloat width ) */ |
| static void |
| android_glLineWidth__F |
| (JNIEnv *_env, jobject _this, jfloat width) { |
| glLineWidth( |
| (GLfloat)width |
| ); |
| } |
| |
| /* void glLineWidthx ( GLfixed width ) */ |
| static void |
| android_glLineWidthx__I |
| (JNIEnv *_env, jobject _this, jint width) { |
| glLineWidthx( |
| (GLfixed)width |
| ); |
| } |
| |
| /* void glLoadIdentity ( void ) */ |
| static void |
| android_glLoadIdentity__ |
| (JNIEnv *_env, jobject _this) { |
| glLoadIdentity(); |
| } |
| |
| /* void glLoadMatrixf ( const GLfloat *m ) */ |
| static void |
| android_glLoadMatrixf___3FI |
| (JNIEnv *_env, jobject _this, jfloatArray m_ref, jint offset) { |
| jint _exception = 0; |
| const char * _exceptionType; |
| const char * _exceptionMessage; |
| GLfloat *m_base = (GLfloat *) 0; |
| jint _remaining; |
| GLfloat *m = (GLfloat *) 0; |
| |
| if (!m_ref) { |
| _exception = 1; |
| _exceptionType = "java/lang/IllegalArgumentException"; |
| _exceptionMessage = "m == null"; |
| goto exit; |
| } |
| if (offset < 0) { |
| _exception = 1; |
| _exceptionType = "java/lang/IllegalArgumentException"; |
| _exceptionMessage = "offset < 0"; |
| goto exit; |
| } |
| _remaining = _env->GetArrayLength(m_ref) - offset; |
| m_base = (GLfloat *) |
| _env->GetPrimitiveArrayCritical(m_ref, (jboolean *)0); |
| m = m_base + offset; |
| |
| glLoadMatrixf( |
| (GLfloat *)m |
| ); |
| |
| exit: |
| if (m_base) { |
| _env->ReleasePrimitiveArrayCritical(m_ref, m_base, |
| JNI_ABORT); |
| } |
| if (_exception) { |
| jniThrowException(_env, _exceptionType, _exceptionMessage); |
| } |
| } |
| |
| /* void glLoadMatrixf ( const GLfloat *m ) */ |
| static void |
| android_glLoadMatrixf__Ljava_nio_FloatBuffer_2 |
| (JNIEnv *_env, jobject _this, jobject m_buf) { |
| jarray _array = (jarray) 0; |
| jint _remaining; |
| GLfloat *m = (GLfloat *) 0; |
| |
| m = (GLfloat *)getPointer(_env, m_buf, &_array, &_remaining); |
| glLoadMatrixf( |
| (GLfloat *)m |
| ); |
| if (_array) { |
| releasePointer(_env, _array, m, JNI_FALSE); |
| } |
| } |
| |
| /* void glLoadMatrixx ( const GLfixed *m ) */ |
| static void |
| android_glLoadMatrixx___3II |
| (JNIEnv *_env, jobject _this, jintArray m_ref, jint offset) { |
| jint _exception = 0; |
| const char * _exceptionType; |
| const char * _exceptionMessage; |
| GLfixed *m_base = (GLfixed *) 0; |
| jint _remaining; |
| GLfixed *m = (GLfixed *) 0; |
| |
| if (!m_ref) { |
| _exception = 1; |
| _exceptionType = "java/lang/IllegalArgumentException"; |
| _exceptionMessage = "m == null"; |
| goto exit; |
| } |
| if (offset < 0) { |
| _exception = 1; |
| _exceptionType = "java/lang/IllegalArgumentException"; |
| _exceptionMessage = "offset < 0"; |
| goto exit; |
| } |
| _remaining = _env->GetArrayLength(m_ref) - offset; |
| m_base = (GLfixed *) |
| _env->GetPrimitiveArrayCritical(m_ref, (jboolean *)0); |
| m = m_base + offset; |
| |
| glLoadMatrixx( |
| (GLfixed *)m |
| ); |
| |
| exit: |
| if (m_base) { |
| _env->ReleasePrimitiveArrayCritical(m_ref, m_base, |
| JNI_ABORT); |
| } |
| if (_exception) { |
| jniThrowException(_env, _exceptionType, _exceptionMessage); |
| } |
| } |
| |
| /* void glLoadMatrixx ( const GLfixed *m ) */ |
| static void |
| android_glLoadMatrixx__Ljava_nio_IntBuffer_2 |
| (JNIEnv *_env, jobject _this, jobject m_buf) { |
| jarray _array = (jarray) 0; |
| jint _remaining; |
| GLfixed *m = (GLfixed *) 0; |
| |
| m = (GLfixed *)getPointer(_env, m_buf, &_array, &_remaining); |
| glLoadMatrixx( |
| (GLfixed *)m |
| ); |
| if (_array) { |
| releasePointer(_env, _array, m, JNI_FALSE); |
| } |
| } |
| |
| /* void glLogicOp ( GLenum opcode ) */ |
| static void |
| android_glLogicOp__I |
| (JNIEnv *_env, jobject _this, jint opcode) { |
| glLogicOp( |
| (GLenum)opcode |
| ); |
| } |
| |
| /* void glMaterialf ( GLenum face, GLenum pname, GLfloat param ) */ |
| static void |
| android_glMaterialf__IIF |
| (JNIEnv *_env, jobject _this, jint face, jint pname, jfloat param) { |
| glMaterialf( |
| (GLenum)face, |
| (GLenum)pname, |
| (GLfloat)param |
| ); |
| } |
| |
| /* void glMaterialfv ( GLenum face, GLenum pname, const GLfloat *params ) */ |
| static void |
| android_glMaterialfv__II_3FI |
| (JNIEnv *_env, jobject _this, jint face, jint pname, jfloatArray params_ref, jint offset) { |
| jint _exception = 0; |
| const char * _exceptionType; |
| const char * _exceptionMessage; |
| GLfloat *params_base = (GLfloat *) 0; |
| jint _remaining; |
| GLfloat *params = (GLfloat *) 0; |
| |
| if (!params_ref) { |
| _exception = 1; |
| _exceptionType = "java/lang/IllegalArgumentException"; |
| _exceptionMessage = "params == null"; |
| goto exit; |
| } |
| if (offset < 0) { |
| _exception = 1; |
| _exceptionType = "java/lang/IllegalArgumentException"; |
| _exceptionMessage = "offset < 0"; |
| goto exit; |
| } |
| _remaining = _env->GetArrayLength(params_ref) - offset; |
| int _needed; |
| switch (pname) { |
| #if defined(GL_SHININESS) |
| case GL_SHININESS: |
| #endif // defined(GL_SHININESS) |
| _needed = 1; |
| break; |
| #if defined(GL_AMBIENT) |
| case GL_AMBIENT: |
| #endif // defined(GL_AMBIENT) |
| #if defined(GL_DIFFUSE) |
| case GL_DIFFUSE: |
| #endif // defined(GL_DIFFUSE) |
| #if defined(GL_SPECULAR) |
| case GL_SPECULAR: |
| #endif // defined(GL_SPECULAR) |
| #if defined(GL_EMISSION) |
| case GL_EMISSION: |
| #endif // defined(GL_EMISSION) |
| #if defined(GL_AMBIENT_AND_DIFFUSE) |
| case GL_AMBIENT_AND_DIFFUSE: |
| #endif // defined(GL_AMBIENT_AND_DIFFUSE) |
| _needed = 4; |
| break; |
| default: |
| _needed = 0; |
| break; |
| } |
| if (_remaining < _needed) { |
| _exception = 1; |
| _exceptionType = "java/lang/IllegalArgumentException"; |
| _exceptionMessage = "length - offset < needed"; |
| goto exit; |
| } |
| params_base = (GLfloat *) |
| _env->GetPrimitiveArrayCritical(params_ref, (jboolean *)0); |
| params = params_base + offset; |
| |
| glMaterialfv( |
| (GLenum)face, |
| (GLenum)pname, |
| (GLfloat *)params |
| ); |
| |
| exit: |
| if (params_base) { |
| _env->ReleasePrimitiveArrayCritical(params_ref, params_base, |
| JNI_ABORT); |
| } |
| if (_exception) { |
| jniThrowException(_env, _exceptionType, _exceptionMessage); |
| } |
| } |
| |
| /* void glMaterialfv ( GLenum face, GLenum pname, const GLfloat *params ) */ |
| static void |
| android_glMaterialfv__IILjava_nio_FloatBuffer_2 |
| (JNIEnv *_env, jobject _this, jint face, jint pname, jobject params_buf) { |
| jint _exception = 0; |
| const char * _exceptionType; |
| const char * _exceptionMessage; |
| jarray _array = (jarray) 0; |
| jint _remaining; |
| GLfloat *params = (GLfloat *) 0; |
| |
| params = (GLfloat *)getPointer(_env, params_buf, &_array, &_remaining); |
| int _needed; |
| switch (pname) { |
| #if defined(GL_SHININESS) |
| case GL_SHININESS: |
| #endif // defined(GL_SHININESS) |
| _needed = 1; |
| break; |
| #if defined(GL_AMBIENT) |
| case GL_AMBIENT: |
| #endif // defined(GL_AMBIENT) |
| #if defined(GL_DIFFUSE) |
| case GL_DIFFUSE: |
| #endif // defined(GL_DIFFUSE) |
| #if defined(GL_SPECULAR) |
| case GL_SPECULAR: |
| #endif // defined(GL_SPECULAR) |
| #if defined(GL_EMISSION) |
| case GL_EMISSION: |
| #endif // defined(GL_EMISSION) |
| #if defined(GL_AMBIENT_AND_DIFFUSE) |
| case GL_AMBIENT_AND_DIFFUSE: |
| #endif // defined(GL_AMBIENT_AND_DIFFUSE) |
| _needed = 4; |
| break; |
| default: |
| _needed = 0; |
| break; |
| } |
| if (_remaining < _needed) { |
| _exception = 1; |
| _exceptionType = "java/lang/IllegalArgumentException"; |
| _exceptionMessage = "remaining() < needed"; |
| goto exit; |
| } |
| glMaterialfv( |
| (GLenum)face, |
| (GLenum)pname, |
| (GLfloat *)params |
| ); |
| |
| exit: |
| if (_array) { |
| releasePointer(_env, _array, params, JNI_FALSE); |
| } |
| if (_exception) { |
| jniThrowException(_env, _exceptionType, _exceptionMessage); |
| } |
| } |
| |
| /* void glMaterialx ( GLenum face, GLenum pname, GLfixed param ) */ |
| static void |
| android_glMaterialx__III |
| (JNIEnv *_env, jobject _this, jint face, jint pname, jint param) { |
| glMaterialx( |
| (GLenum)face, |
| (GLenum)pname, |
| (GLfixed)param |
| ); |
| } |
| |
| /* void glMaterialxv ( GLenum face, GLenum pname, const GLfixed *params ) */ |
| static void |
| android_glMaterialxv__II_3II |
| (JNIEnv *_env, jobject _this, jint face, jint pname, jintArray params_ref, jint offset) { |
| jint _exception = 0; |
| const char * _exceptionType; |
| const char * _exceptionMessage; |
| GLfixed *params_base = (GLfixed *) 0; |
| jint _remaining; |
| GLfixed *params = (GLfixed *) 0; |
| |
| if (!params_ref) { |
| _exception = 1; |
| _exceptionType = "java/lang/IllegalArgumentException"; |
| _exceptionMessage = "params == null"; |
| goto exit; |
| } |
| if (offset < 0) { |
| _exception = 1; |
| _exceptionType = "java/lang/IllegalArgumentException"; |
| _exceptionMessage = "offset < 0"; |
| goto exit; |
| } |
| _remaining = _env->GetArrayLength(params_ref) - offset; |
| int _needed; |
| switch (pname) { |
| #if defined(GL_SHININESS) |
| case GL_SHININESS: |
| #endif // defined(GL_SHININESS) |
| _needed = 1; |
| break; |
| #if defined(GL_AMBIENT) |
| case GL_AMBIENT: |
| #endif // defined(GL_AMBIENT) |
| #if defined(GL_DIFFUSE) |
| case GL_DIFFUSE: |
| #endif // defined(GL_DIFFUSE) |
| #if defined(GL_SPECULAR) |
| case GL_SPECULAR: |
| #endif // defined(GL_SPECULAR) |
| #if defined(GL_EMISSION) |
| case GL_EMISSION: |
| #endif // defined(GL_EMISSION) |
| #if defined(GL_AMBIENT_AND_DIFFUSE) |
| case GL_AMBIENT_AND_DIFFUSE: |
| #endif // defined(GL_AMBIENT_AND_DIFFUSE) |
| _needed = 4; |
| break; |
| default: |
| _needed = 0; |
| break; |
| } |
| if (_remaining < _needed) { |
| _exception = 1; |
| _exceptionType = "java/lang/IllegalArgumentException"; |
| _exceptionMessage = "length - offset < needed"; |
| goto exit; |
| } |
| params_base = (GLfixed *) |
| _env->GetPrimitiveArrayCritical(params_ref, (jboolean *)0); |
| params = params_base + offset; |
| |
| glMaterialxv( |
| (GLenum)face, |
| (GLenum)pname, |
| (GLfixed *)params |
| ); |
| |
| exit: |
| if (params_base) { |
| _env->ReleasePrimitiveArrayCritical(params_ref, params_base, |
| JNI_ABORT); |
| } |
| if (_exception) { |
| jniThrowException(_env, _exceptionType, _exceptionMessage); |
| } |
| } |
| |
| /* void glMaterialxv ( GLenum face, GLenum pname, const GLfixed *params ) */ |
| static void |
| android_glMaterialxv__IILjava_nio_IntBuffer_2 |
| (JNIEnv *_env, jobject _this, jint face, jint pname, jobject params_buf) { |
| jint _exception = 0; |
| const char * _exceptionType; |
| const char * _exceptionMessage; |
| jarray _array = (jarray) 0; |
| jint _remaining; |
| GLfixed *params = (GLfixed *) 0; |
| |
| params = (GLfixed *)getPointer(_env, params_buf, &_array, &_remaining); |
| int _needed; |
| switch (pname) { |
| #if defined(GL_SHININESS) |
| case GL_SHININESS: |
| #endif // defined(GL_SHININESS) |
| _needed = 1; |
| break; |
| #if defined(GL_AMBIENT) |
| case GL_AMBIENT: |
| #endif // defined(GL_AMBIENT) |
| #if defined(GL_DIFFUSE) |
| case GL_DIFFUSE: |
| #endif // defined(GL_DIFFUSE) |
| #if defined(GL_SPECULAR) |
| case GL_SPECULAR: |
| #endif // defined(GL_SPECULAR) |
| #if defined(GL_EMISSION) |
| case GL_EMISSION: |
| #endif // defined(GL_EMISSION) |
| #if defined(GL_AMBIENT_AND_DIFFUSE) |
| case GL_AMBIENT_AND_DIFFUSE: |
| #endif // defined(GL_AMBIENT_AND_DIFFUSE) |
| _needed = 4; |
| break; |
| default: |
| _needed = 0; |
| break; |
| } |
| if (_remaining < _needed) { |
| _exception = 1; |
| _exceptionType = "java/lang/IllegalArgumentException"; |
| _exceptionMessage = "remaining() < needed"; |
| goto exit; |
| } |
| glMaterialxv( |
| (GLenum)face, |
| (GLenum)pname, |
| (GLfixed *)params |
| ); |
| |
| exit: |
| if (_array) { |
| releasePointer(_env, _array, params, JNI_FALSE); |
| } |
| if (_exception) { |
| jniThrowException(_env, _exceptionType, _exceptionMessage); |
| } |
| } |
| |
| /* void glMatrixMode ( GLenum mode ) */ |
| static void |
| android_glMatrixMode__I |
| (JNIEnv *_env, jobject _this, jint mode) { |
| glMatrixMode( |
| (GLenum)mode |
| ); |
| } |
| |
| /* void glMultMatrixf ( const GLfloat *m ) */ |
| static void |
| android_glMultMatrixf___3FI |
| (JNIEnv *_env, jobject _this, jfloatArray m_ref, jint offset) { |
| jint _exception = 0; |
| const char * _exceptionType; |
| const char * _exceptionMessage; |
| GLfloat *m_base = (GLfloat *) 0; |
| jint _remaining; |
| GLfloat *m = (GLfloat *) 0; |
| |
| if (!m_ref) { |
| _exception = 1; |
| _exceptionType = "java/lang/IllegalArgumentException"; |
| _exceptionMessage = "m == null"; |
| goto exit; |
| } |
| if (offset < 0) { |
| _exception = 1; |
| _exceptionType = "java/lang/IllegalArgumentException"; |
| _exceptionMessage = "offset < 0"; |
| goto exit; |
| } |
| _remaining = _env->GetArrayLength(m_ref) - offset; |
| m_base = (GLfloat *) |
| _env->GetPrimitiveArrayCritical(m_ref, (jboolean *)0); |
| m = m_base + offset; |
| |
| glMultMatrixf( |
| (GLfloat *)m |
| ); |
| |
| exit: |
| if (m_base) { |
| _env->ReleasePrimitiveArrayCritical(m_ref, m_base, |
| JNI_ABORT); |
| } |
| if (_exception) { |
| jniThrowException(_env, _exceptionType, _exceptionMessage); |
| } |
| } |
| |
| /* void glMultMatrixf ( const GLfloat *m ) */ |
| static void |
| android_glMultMatrixf__Ljava_nio_FloatBuffer_2 |
| (JNIEnv *_env, jobject _this, jobject m_buf) { |
| jarray _array = (jarray) 0; |
| jint _remaining; |
| GLfloat *m = (GLfloat *) 0; |
| |
| m = (GLfloat *)getPointer(_env, m_buf, &_array, &_remaining); |
| glMultMatrixf( |
| (GLfloat *)m |
| ); |
| if (_array) { |
| releasePointer(_env, _array, m, JNI_FALSE); |
| } |
| } |
| |
| /* void glMultMatrixx ( const GLfixed *m ) */ |
| static void |
| android_glMultMatrixx___3II |
| (JNIEnv *_env, jobject _this, jintArray m_ref, jint offset) { |
| jint _exception = 0; |
| const char * _exceptionType; |
| const char * _exceptionMessage; |
| GLfixed *m_base = (GLfixed *) 0; |
| jint _remaining; |
| GLfixed *m = (GLfixed *) 0; |
| |
| if (!m_ref) { |
| _exception = 1; |
| _exceptionType = "java/lang/IllegalArgumentException"; |
| _exceptionMessage = "m == null"; |
| goto exit; |
| } |
| if (offset < 0) { |
| _exception = 1; |
| _exceptionType = "java/lang/IllegalArgumentException"; |
| _exceptionMessage = "offset < 0"; |
| goto exit; |
| } |
| _remaining = _env->GetArrayLength(m_ref) - offset; |
| m_base = (GLfixed *) |
| _env->GetPrimitiveArrayCritical(m_ref, (jboolean *)0); |
| m = m_base + offset; |
| |
| glMultMatrixx( |
| (GLfixed *)m |
| ); |
| |
| exit: |
| if (m_base) { |
| _env->ReleasePrimitiveArrayCritical(m_ref, m_base, |
| JNI_ABORT); |
| } |
| if (_exception) { |
| jniThrowException(_env, _exceptionType, _exceptionMessage); |
| } |
| } |
| |
| /* void glMultMatrixx ( const GLfixed *m ) */ |
| static void |
| android_glMultMatrixx__Ljava_nio_IntBuffer_2 |
| (JNIEnv *_env, jobject _this, jobject m_buf) { |
| jarray _array = (jarray) 0; |
| jint _remaining; |
| GLfixed *m = (GLfixed *) 0; |
| |
| m = (GLfixed *)getPointer(_env, m_buf, &_array, &_remaining); |
| glMultMatrixx( |
| (GLfixed *)m |
| ); |
| if (_array) { |
| releasePointer(_env, _array, m, JNI_FALSE); |
| } |
| } |
| |
| /* void glMultiTexCoord4f ( GLenum target, GLfloat s, GLfloat t, GLfloat r, GLfloat q ) */ |
| static void |
| android_glMultiTexCoord4f__IFFFF |
| (JNIEnv *_env, jobject _this, jint target, jfloat s, jfloat t, jfloat r, jfloat q) { |
| glMultiTexCoord4f( |
| (GLenum)target, |
| (GLfloat)s, |
| (GLfloat)t, |
| (GLfloat)r, |
| (GLfloat)q |
| ); |
| } |
| |
| /* void glMultiTexCoord4x ( GLenum target, GLfixed s, GLfixed t, GLfixed r, GLfixed q ) */ |
| static void |
| android_glMultiTexCoord4x__IIIII |
| (JNIEnv *_env, jobject _this, jint target, jint s, jint t, jint r, jint q) { |
| glMultiTexCoord4x( |
| (GLenum)target, |
| (GLfixed)s, |
| (GLfixed)t, |
| (GLfixed)r, |
| (GLfixed)q |
| ); |
| } |
| |
| /* void glNormal3f ( GLfloat nx, GLfloat ny, GLfloat nz ) */ |
| static void |
| android_glNormal3f__FFF |
| (JNIEnv *_env, jobject _this, jfloat nx, jfloat ny, jfloat nz) { |
| glNormal3f( |
| (GLfloat)nx, |
| (GLfloat)ny, |
| (GLfloat)nz |
| ); |
| } |
| |
| /* void glNormal3x ( GLfixed nx, GLfixed ny, GLfixed nz ) */ |
| static void |
| android_glNormal3x__III |
| (JNIEnv *_env, jobject _this, jint nx, jint ny, jint nz) { |
| glNormal3x( |
| (GLfixed)nx, |
| (GLfixed)ny, |
| (GLfixed)nz |
| ); |
| } |
| |
| /* void glNormalPointer ( GLenum type, GLsizei stride, const GLvoid *pointer ) */ |
| static void |
| android_glNormalPointerBounds__IILjava_nio_Buffer_2I |
| (JNIEnv *_env, jobject _this, jint type, jint stride, jobject pointer_buf, jint remaining) { |
| jarray _array = (jarray) 0; |
| jint _remaining; |
| GLvoid *pointer = (GLvoid *) 0; |
| |
| if (pointer_buf) { |
| pointer = (GLvoid *) getDirectBufferPointer(_env, pointer_buf); |
| if ( ! pointer ) { |
| return; |
| } |
| } |
| glNormalPointerBounds( |
| (GLenum)type, |
| (GLsizei)stride, |
| (GLvoid *)pointer, |
| (GLsizei)remaining |
| ); |
| } |
| |
| /* void glOrthof ( GLfloat left, GLfloat right, GLfloat bottom, GLfloat top, GLfloat zNear, GLfloat zFar ) */ |
| static void |
| android_glOrthof__FFFFFF |
| (JNIEnv *_env, jobject _this, jfloat left, jfloat right, jfloat bottom, jfloat top, jfloat zNear, jfloat zFar) { |
| glOrthof( |
| (GLfloat)left, |
| (GLfloat)right, |
| (GLfloat)bottom, |
| (GLfloat)top, |
| (GLfloat)zNear, |
| (GLfloat)zFar |
| ); |
| } |
| |
| /* void glOrthox ( GLfixed left, GLfixed right, GLfixed bottom, GLfixed top, GLfixed zNear, GLfixed zFar ) */ |
| static void |
| android_glOrthox__IIIIII |
| (JNIEnv *_env, jobject _this, jint left, jint right, jint bottom, jint top, jint zNear, jint zFar) { |
| glOrthox( |
| (GLfixed)left, |
| (GLfixed)right, |
| (GLfixed)bottom, |
| (GLfixed)top, |
| (GLfixed)zNear, |
| (GLfixed)zFar |
| ); |
| } |
| |
| /* void glPixelStorei ( GLenum pname, GLint param ) */ |
| static void |
| android_glPixelStorei__II |
| (JNIEnv *_env, jobject _this, jint pname, jint param) { |
| glPixelStorei( |
| (GLenum)pname, |
| (GLint)param |
| ); |
| } |
| |
| /* void glPointSize ( GLfloat size ) */ |
| static void |
| android_glPointSize__F |
| (JNIEnv *_env, jobject _this, jfloat size) { |
| glPointSize( |
| (GLfloat)size |
| ); |
| } |
| |
| /* void glPointSizex ( GLfixed size ) */ |
| static void |
| android_glPointSizex__I |
| (JNIEnv *_env, jobject _this, jint size) { |
| glPointSizex( |
| (GLfixed)size |
| ); |
| } |
| |
| /* void glPolygonOffset ( GLfloat factor, GLfloat units ) */ |
| static void |
| android_glPolygonOffset__FF |
| (JNIEnv *_env, jobject _this, jfloat factor, jfloat units) { |
| glPolygonOffset( |
| (GLfloat)factor, |
| (GLfloat)units |
| ); |
| } |
| |
| /* void glPolygonOffsetx ( GLfixed factor, GLfixed units ) */ |
| static void |
| android_glPolygonOffsetx__II |
| (JNIEnv *_env, jobject _this, jint factor, jint units) { |
| glPolygonOffsetx( |
| (GLfixed)factor, |
| (GLfixed)units |
| ); |
| } |
| |
| /* void glPopMatrix ( void ) */ |
| static void |
| android_glPopMatrix__ |
| (JNIEnv *_env, jobject _this) { |
| glPopMatrix(); |
| } |
| |
| /* void glPushMatrix ( void ) */ |
| static void |
| android_glPushMatrix__ |
| (JNIEnv *_env, jobject _this) { |
| glPushMatrix(); |
| } |
| |
| /* void glReadPixels ( GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, GLvoid *pixels ) */ |
| static void |
| android_glReadPixels__IIIIIILjava_nio_Buffer_2 |
| (JNIEnv *_env, jobject _this, jint x, jint y, jint width, jint height, jint format, jint type, jobject pixels_buf) { |
| jarray _array = (jarray) 0; |
| jint _remaining; |
| GLvoid *pixels = (GLvoid *) 0; |
| |
| pixels = (GLvoid *)getPointer(_env, pixels_buf, &_array, &_remaining); |
| glReadPixels( |
| (GLint)x, |
| (GLint)y, |
| (GLsizei)width, |
| (GLsizei)height, |
| (GLenum)format, |
| (GLenum)type, |
| (GLvoid *)pixels |
| ); |
| if (_array) { |
| releasePointer(_env, _array, pixels, JNI_TRUE); |
| } |
| } |
| |
| /* void glRotatef ( GLfloat angle, GLfloat x, GLfloat y, GLfloat z ) */ |
| static void |
| android_glRotatef__FFFF |
| (JNIEnv *_env, jobject _this, jfloat angle, jfloat x, jfloat y, jfloat z) { |
| glRotatef( |
| (GLfloat)angle, |
| (GLfloat)x, |
| (GLfloat)y, |
| (GLfloat)z |
| ); |
| } |
| |
| /* void glRotatex ( GLfixed angle, GLfixed x, GLfixed y, GLfixed z ) */ |
| static void |
| android_glRotatex__IIII |
| (JNIEnv *_env, jobject _this, jint angle, jint x, jint y, jint z) { |
| glRotatex( |
| (GLfixed)angle, |
| (GLfixed)x, |
| (GLfixed)y, |
| (GLfixed)z |
| ); |
| } |
| |
| /* void glSampleCoverage ( GLclampf value, GLboolean invert ) */ |
| static void |
| android_glSampleCoverage__FZ |
| (JNIEnv *_env, jobject _this, jfloat value, jboolean invert) { |
| glSampleCoverage( |
| (GLclampf)value, |
| (GLboolean)invert |
| ); |
| } |
| |
| /* void glSampleCoveragex ( GLclampx value, GLboolean invert ) */ |
| static void |
| android_glSampleCoveragex__IZ |
| (JNIEnv *_env, jobject _this, jint value, jboolean invert) { |
| glSampleCoveragex( |
| (GLclampx)value, |
| (GLboolean)invert |
| ); |
| } |
| |
| /* void glScalef ( GLfloat x, GLfloat y, GLfloat z ) */ |
| static void |
| android_glScalef__FFF |
| (JNIEnv *_env, jobject _this, jfloat x, jfloat y, jfloat z) { |
| glScalef( |
| (GLfloat)x, |
| (GLfloat)y, |
| (GLfloat)z |
| ); |
| } |
| |
| /* void glScalex ( GLfixed x, GLfixed y, GLfixed z ) */ |
| static void |
| android_glScalex__III |
| (JNIEnv *_env, jobject _this, jint x, jint y, jint z) { |
| glScalex( |
| (GLfixed)x, |
| (GLfixed)y, |
| (GLfixed)z |
| ); |
| } |
| |
| /* void glScissor ( GLint x, GLint y, GLsizei width, GLsizei height ) */ |
| static void |
| android_glScissor__IIII |
| (JNIEnv *_env, jobject _this, jint x, jint y, jint width, jint height) { |
| glScissor( |
| (GLint)x, |
| (GLint)y, |
| (GLsizei)width, |
| (GLsizei)height |
| ); |
| } |
| |
| /* void glShadeModel ( GLenum mode ) */ |
| static void |
| android_glShadeModel__I |
| (JNIEnv *_env, jobject _this, jint mode) { |
| glShadeModel( |
| (GLenum)mode |
| ); |
| } |
| |
| /* void glStencilFunc ( GLenum func, GLint ref, GLuint mask ) */ |
| static void |
| android_glStencilFunc__III |
| (JNIEnv *_env, jobject _this, jint func, jint ref, jint mask) { |
| glStencilFunc( |
| (GLenum)func, |
| (GLint)ref, |
| (GLuint)mask |
| ); |
| } |
| |
| /* void glStencilMask ( GLuint mask ) */ |
| static void |
| android_glStencilMask__I |
| (JNIEnv *_env, jobject _this, jint mask) { |
| glStencilMask( |
| (GLuint)mask |
| ); |
| } |
| |
| /* void glStencilOp ( GLenum fail, GLenum zfail, GLenum zpass ) */ |
| static void |
| android_glStencilOp__III |
| (JNIEnv *_env, jobject _this, jint fail, jint zfail, jint zpass) { |
| glStencilOp( |
| (GLenum)fail, |
| (GLenum)zfail, |
| (GLenum)zpass |
| ); |
| } |
| |
| /* void glTexCoordPointer ( GLint size, GLenum type, GLsizei stride, const GLvoid *pointer ) */ |
| static void |
| android_glTexCoordPointerBounds__IIILjava_nio_Buffer_2I |
| (JNIEnv *_env, jobject _this, jint size, jint type, jint stride, jobject pointer_buf, jint remaining) { |
| jarray _array = (jarray) 0; |
| jint _remaining; |
| GLvoid *pointer = (GLvoid *) 0; |
| |
| if (pointer_buf) { |
| pointer = (GLvoid *) getDirectBufferPointer(_env, pointer_buf); |
| if ( ! pointer ) { |
| return; |
| } |
| } |
| glTexCoordPointerBounds( |
| (GLint)size, |
| (GLenum)type, |
| (GLsizei)stride, |
| (GLvoid *)pointer, |
| (GLsizei)remaining |
| ); |
| } |
| |
| /* void glTexEnvf ( GLenum target, GLenum pname, GLfloat param ) */ |
| static void |
| android_glTexEnvf__IIF |
| (JNIEnv *_env, jobject _this, jint target, jint pname, jfloat param) { |
| glTexEnvf( |
| (GLenum)target, |
| (GLenum)pname, |
| (GLfloat)param |
| ); |
| } |
| |
| /* void glTexEnvfv ( GLenum target, GLenum pname, const GLfloat *params ) */ |
| static void |
| android_glTexEnvfv__II_3FI |
| (JNIEnv *_env, jobject _this, jint target, jint pname, jfloatArray params_ref, jint offset) { |
| jint _exception = 0; |
| const char * _exceptionType; |
| const char * _exceptionMessage; |
| GLfloat *params_base = (GLfloat *) 0; |
| jint _remaining; |
| GLfloat *params = (GLfloat *) 0; |
| |
| if (!params_ref) { |
| _exception = 1; |
| _exceptionType = "java/lang/IllegalArgumentException"; |
| _exceptionMessage = "params == null"; |
| goto exit; |
| } |
| if (offset < 0) { |
| _exception = 1; |
| _exceptionType = "java/lang/IllegalArgumentException"; |
| _exceptionMessage = "offset < 0"; |
| goto exit; |
| } |
| _remaining = _env->GetArrayLength(params_ref) - offset; |
| int _needed; |
| switch (pname) { |
| #if defined(GL_TEXTURE_ENV_MODE) |
| case GL_TEXTURE_ENV_MODE: |
| #endif // defined(GL_TEXTURE_ENV_MODE) |
| #if defined(GL_COMBINE_RGB) |
| case GL_COMBINE_RGB: |
| #endif // defined(GL_COMBINE_RGB) |
| #if defined(GL_COMBINE_ALPHA) |
| case GL_COMBINE_ALPHA: |
| #endif // defined(GL_COMBINE_ALPHA) |
| _needed = 1; |
| break; |
| #if defined(GL_TEXTURE_ENV_COLOR) |
| case GL_TEXTURE_ENV_COLOR: |
| #endif // defined(GL_TEXTURE_ENV_COLOR) |
| _needed = 4; |
| break; |
| default: |
| _needed = 0; |
| break; |
| } |
| if (_remaining < _needed) { |
| _exception = 1; |
| _exceptionType = "java/lang/IllegalArgumentException"; |
| _exceptionMessage = "length - offset < needed"; |
| goto exit; |
| } |
| params_base = (GLfloat *) |
| _env->GetPrimitiveArrayCritical(params_ref, (jboolean *)0); |
| params = params_base + offset; |
| |
| glTexEnvfv( |
| (GLenum)target, |
| (GLenum)pname, |
| (GLfloat *)params |
| ); |
| |
| exit: |
| if (params_base) { |
| _env->ReleasePrimitiveArrayCritical(params_ref, params_base, |
| JNI_ABORT); |
| } |
| if (_exception) { |
| jniThrowException(_env, _exceptionType, _exceptionMessage); |
| } |
| } |
| |
| /* void glTexEnvfv ( GLenum target, GLenum pname, const GLfloat *params ) */ |
| static void |
| android_glTexEnvfv__IILjava_nio_FloatBuffer_2 |
| (JNIEnv *_env, jobject _this, jint target, jint pname, jobject params_buf) { |
| jint _exception = 0; |
| const char * _exceptionType; |
| const char * _exceptionMessage; |
| jarray _array = (jarray) 0; |
| jint _remaining; |
| GLfloat *params = (GLfloat *) 0; |
| |
| params = (GLfloat *)getPointer(_env, params_buf, &_array, &_remaining); |
| int _needed; |
| switch (pname) { |
| #if defined(GL_TEXTURE_ENV_MODE) |
| case GL_TEXTURE_ENV_MODE: |
| #endif // defined(GL_TEXTURE_ENV_MODE) |
| #if defined(GL_COMBINE_RGB) |
| case GL_COMBINE_RGB: |
| #endif // defined(GL_COMBINE_RGB) |
| #if defined(GL_COMBINE_ALPHA) |
| case GL_COMBINE_ALPHA: |
| #endif // defined(GL_COMBINE_ALPHA) |
| _needed = 1; |
| break; |
| #if defined(GL_TEXTURE_ENV_COLOR) |
| case GL_TEXTURE_ENV_COLOR: |
| #endif // defined(GL_TEXTURE_ENV_COLOR) |
| _needed = 4; |
| break; |
| default: |
| _needed = 0; |
| break; |
| } |
| if (_remaining < _needed) { |
| _exception = 1; |
| _exceptionType = "java/lang/IllegalArgumentException"; |
| _exceptionMessage = "remaining() < needed"; |
| goto exit; |
| } |
| glTexEnvfv( |
| (GLenum)target, |
| (GLenum)pname, |
| (GLfloat *)params |
| ); |
| |
| exit: |
| if (_array) { |
| releasePointer(_env, _array, params, JNI_FALSE); |
| } |
| if (_exception) { |
| jniThrowException(_env, _exceptionType, _exceptionMessage); |
| } |
| } |
| |
| /* void glTexEnvx ( GLenum target, GLenum pname, GLfixed param ) */ |
| static void |
| android_glTexEnvx__III |
| (JNIEnv *_env, jobject _this, jint target, jint pname, jint param) { |
| glTexEnvx( |
| (GLenum)target, |
| (GLenum)pname, |
| (GLfixed)param |
| ); |
| } |
| |
| /* void glTexEnvxv ( GLenum target, GLenum pname, const GLfixed *params ) */ |
| static void |
| android_glTexEnvxv__II_3II |
| (JNIEnv *_env, jobject _this, jint target, jint pname, jintArray params_ref, jint offset) { |
| jint _exception = 0; |
| const char * _exceptionType; |
| const char * _exceptionMessage; |
| GLfixed *params_base = (GLfixed *) 0; |
| jint _remaining; |
| GLfixed *params = (GLfixed *) 0; |
| |
| if (!params_ref) { |
| _exception = 1; |
| _exceptionType = "java/lang/IllegalArgumentException"; |
| _exceptionMessage = "params == null"; |
| goto exit; |
| } |
| if (offset < 0) { |
| _exception = 1; |
| _exceptionType = "java/lang/IllegalArgumentException"; |
| _exceptionMessage = "offset < 0"; |
| goto exit; |
| } |
| _remaining = _env->GetArrayLength(params_ref) - offset; |
| int _needed; |
| switch (pname) { |
| #if defined(GL_TEXTURE_ENV_MODE) |
| case GL_TEXTURE_ENV_MODE: |
| #endif // defined(GL_TEXTURE_ENV_MODE) |
| #if defined(GL_COMBINE_RGB) |
| case GL_COMBINE_RGB: |
| #endif // defined(GL_COMBINE_RGB) |
| #if defined(GL_COMBINE_ALPHA) |
| case GL_COMBINE_ALPHA: |
| #endif // defined(GL_COMBINE_ALPHA) |
| _needed = 1; |
| break; |
| #if defined(GL_TEXTURE_ENV_COLOR) |
| case GL_TEXTURE_ENV_COLOR: |
| #endif // defined(GL_TEXTURE_ENV_COLOR) |
| _needed = 4; |
| break; |
| default: |
| _needed = 0; |
| break; |
| } |
| if (_remaining < _needed) { |
| _exception = 1; |
| _exceptionType = "java/lang/IllegalArgumentException"; |
| _exceptionMessage = "length - offset < needed"; |
| goto exit; |
| } |
| params_base = (GLfixed *) |
| _env->GetPrimitiveArrayCritical(params_ref, (jboolean *)0); |
| params = params_base + offset; |
| |
| glTexEnvxv( |
| (GLenum)target, |
| (GLenum)pname, |
| (GLfixed *)params |
| ); |
| |
| exit: |
| if (params_base) { |
| _env->ReleasePrimitiveArrayCritical(params_ref, params_base, |
| JNI_ABORT); |
| } |
| if (_exception) { |
| jniThrowException(_env, _exceptionType, _exceptionMessage); |
| } |
| } |
| |
| /* void glTexEnvxv ( GLenum target, GLenum pname, const GLfixed *params ) */ |
| static void |
| android_glTexEnvxv__IILjava_nio_IntBuffer_2 |
| (JNIEnv *_env, jobject _this, jint target, jint pname, jobject params_buf) { |
| jint _exception = 0; |
| const char * _exceptionType; |
| const char * _exceptionMessage; |
| jarray _array = (jarray) 0; |
| jint _remaining; |
| GLfixed *params = (GLfixed *) 0; |
| |
| params = (GLfixed *)getPointer(_env, params_buf, &_array, &_remaining); |
| int _needed; |
| switch (pname) { |
| #if defined(GL_TEXTURE_ENV_MODE) |
| case GL_TEXTURE_ENV_MODE: |
| #endif // defined(GL_TEXTURE_ENV_MODE) |
| #if defined(GL_COMBINE_RGB) |
| case GL_COMBINE_RGB: |
| #endif // defined(GL_COMBINE_RGB) |
| #if defined(GL_COMBINE_ALPHA) |
| case GL_COMBINE_ALPHA: |
| #endif // defined(GL_COMBINE_ALPHA) |
| _needed = 1; |
| break; |
| #if defined(GL_TEXTURE_ENV_COLOR) |
| case GL_TEXTURE_ENV_COLOR: |
| #endif // defined(GL_TEXTURE_ENV_COLOR) |
| _needed = 4; |
| break; |
| default: |
| _needed = 0; |
| break; |
| } |
| if (_remaining < _needed) { |
| _exception = 1; |
| _exceptionType = "java/lang/IllegalArgumentException"; |
| _exceptionMessage = "remaining() < needed"; |
| goto exit; |
| } |
| glTexEnvxv( |
| (GLenum)target, |
| (GLenum)pname, |
| (GLfixed *)params |
| ); |
| |
| exit: |
| if (_array) { |
| releasePointer(_env, _array, params, JNI_FALSE); |
| } |
| if (_exception) { |
| jniThrowException(_env, _exceptionType, _exceptionMessage); |
| } |
| } |
| |
| /* void glTexImage2D ( GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLint border, GLenum format, GLenum type, const GLvoid *pixels ) */ |
| static void |
| android_glTexImage2D__IIIIIIIILjava_nio_Buffer_2 |
| (JNIEnv *_env, jobject _this, jint target, jint level, jint internalformat, jint width, jint height, jint border, jint format, jint type, jobject pixels_buf) { |
| jarray _array = (jarray) 0; |
| jint _remaining; |
| GLvoid *pixels = (GLvoid *) 0; |
| |
| if (pixels_buf) { |
| pixels = (GLvoid *)getPointer(_env, pixels_buf, &_array, &_remaining); |
| } |
| glTexImage2D( |
| (GLenum)target, |
| (GLint)level, |
| (GLint)internalformat, |
| (GLsizei)width, |
| (GLsizei)height, |
| (GLint)border, |
| (GLenum)format, |
| (GLenum)type, |
| (GLvoid *)pixels |
| ); |
| if (_array) { |
| releasePointer(_env, _array, pixels, JNI_FALSE); |
| } |
| } |
| |
| /* void glTexParameterf ( GLenum target, GLenum pname, GLfloat param ) */ |
| static void |
| android_glTexParameterf__IIF |
| (JNIEnv *_env, jobject _this, jint target, jint pname, jfloat param) { |
| glTexParameterf( |
| (GLenum)target, |
| (GLenum)pname, |
| (GLfloat)param |
| ); |
| } |
| |
| /* void glTexParameterx ( GLenum target, GLenum pname, GLfixed param ) */ |
| static void |
| android_glTexParameterx__III |
| (JNIEnv *_env, jobject _this, jint target, jint pname, jint param) { |
| glTexParameterx( |
| (GLenum)target, |
| (GLenum)pname, |
| (GLfixed)param |
| ); |
| } |
| |
| /* void glTexSubImage2D ( GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *pixels ) */ |
| static void |
| android_glTexSubImage2D__IIIIIIIILjava_nio_Buffer_2 |
| (JNIEnv *_env, jobject _this, jint target, jint level, jint xoffset, jint yoffset, jint width, jint height, jint format, jint type, jobject pixels_buf) { |
| jarray _array = (jarray) 0; |
| jint _remaining; |
| GLvoid *pixels = (GLvoid *) 0; |
| |
| if (pixels_buf) { |
| pixels = (GLvoid *)getPointer(_env, pixels_buf, &_array, &_remaining); |
| } |
| glTexSubImage2D( |
| (GLenum)target, |
| (GLint)level, |
| (GLint)xoffset, |
| (GLint)yoffset, |
| (GLsizei)width, |
| (GLsizei)height, |
| (GLenum)format, |
| (GLenum)type, |
| (GLvoid *)pixels |
| ); |
| if (_array) { |
| releasePointer(_env, _array, pixels, JNI_FALSE); |
| } |
| } |
| |
| /* void glTranslatef ( GLfloat x, GLfloat y, GLfloat z ) */ |
| static void |
| android_glTranslatef__FFF |
| (JNIEnv *_env, jobject _this, jfloat x, jfloat y, jfloat z) { |
| glTranslatef( |
| (GLfloat)x, |
| (GLfloat)y, |
| (GLfloat)z |
| ); |
| } |
| |
| /* void glTranslatex ( GLfixed x, GLfixed y, GLfixed z ) */ |
| static void |
| android_glTranslatex__III |
| (JNIEnv *_env, jobject _this, jint x, jint y, jint z) { |
| glTranslatex( |
| (GLfixed)x, |
| (GLfixed)y, |
| (GLfixed)z |
| ); |
| } |
| |
| /* void glVertexPointer ( GLint size, GLenum type, GLsizei stride, const GLvoid *pointer ) */ |
| static void |
| android_glVertexPointerBounds__IIILjava_nio_Buffer_2I |
| (JNIEnv *_env, jobject _this, jint size, jint type, jint stride, jobject pointer_buf, jint remaining) { |
| jarray _array = (jarray) 0; |
| jint _remaining; |
| GLvoid *pointer = (GLvoid *) 0; |
| |
| if (pointer_buf) { |
| pointer = (GLvoid *) getDirectBufferPointer(_env, pointer_buf); |
| if ( ! pointer ) { |
| return; |
| } |
| } |
| glVertexPointerBounds( |
| (GLint)size, |
| (GLenum)type, |
| (GLsizei)stride, |
| (GLvoid *)pointer, |
| (GLsizei)remaining |
| ); |
| } |
| |
| /* void glViewport ( GLint x, GLint y, GLsizei width, GLsizei height ) */ |
| static void |
| android_glViewport__IIII |
| (JNIEnv *_env, jobject _this, jint x, jint y, jint width, jint height) { |
| glViewport( |
| (GLint)x, |
| (GLint)y, |
| (GLsizei)width, |
| (GLsizei)height |
| ); |
| } |
| |
| static const char *classPathName = "android/opengl/GLES10"; |
| |
| static JNINativeMethod methods[] = { |
| {"_nativeClassInit", "()V", (void*)nativeClassInit }, |
| {"glActiveTexture", "(I)V", (void *) android_glActiveTexture__I }, |
| {"glAlphaFunc", "(IF)V", (void *) android_glAlphaFunc__IF }, |
| {"glAlphaFuncx", "(II)V", (void *) android_glAlphaFuncx__II }, |
| {"glBindTexture", "(II)V", (void *) android_glBindTexture__II }, |
| {"glBlendFunc", "(II)V", (void *) android_glBlendFunc__II }, |
| {"glClear", "(I)V", (void *) android_glClear__I }, |
| {"glClearColor", "(FFFF)V", (void *) android_glClearColor__FFFF }, |
| {"glClearColorx", "(IIII)V", (void *) android_glClearColorx__IIII }, |
| {"glClearDepthf", "(F)V", (void *) android_glClearDepthf__F }, |
| {"glClearDepthx", "(I)V", (void *) android_glClearDepthx__I }, |
| {"glClearStencil", "(I)V", (void *) android_glClearStencil__I }, |
| {"glClientActiveTexture", "(I)V", (void *) android_glClientActiveTexture__I }, |
| {"glColor4f", "(FFFF)V", (void *) android_glColor4f__FFFF }, |
| {"glColor4x", "(IIII)V", (void *) android_glColor4x__IIII }, |
| {"glColorMask", "(ZZZZ)V", (void *) android_glColorMask__ZZZZ }, |
| {"glColorPointerBounds", "(IIILjava/nio/Buffer;I)V", (void *) android_glColorPointerBounds__IIILjava_nio_Buffer_2I }, |
| {"glCompressedTexImage2D", "(IIIIIIILjava/nio/Buffer;)V", (void *) android_glCompressedTexImage2D__IIIIIIILjava_nio_Buffer_2 }, |
| {"glCompressedTexSubImage2D", "(IIIIIIIILjava/nio/Buffer;)V", (void *) android_glCompressedTexSubImage2D__IIIIIIIILjava_nio_Buffer_2 }, |
| {"glCopyTexImage2D", "(IIIIIIII)V", (void *) android_glCopyTexImage2D__IIIIIIII }, |
| {"glCopyTexSubImage2D", "(IIIIIIII)V", (void *) android_glCopyTexSubImage2D__IIIIIIII }, |
| {"glCullFace", "(I)V", (void *) android_glCullFace__I }, |
| {"glDeleteTextures", "(I[II)V", (void *) android_glDeleteTextures__I_3II }, |
| {"glDeleteTextures", "(ILjava/nio/IntBuffer;)V", (void *) android_glDeleteTextures__ILjava_nio_IntBuffer_2 }, |
| {"glDepthFunc", "(I)V", (void *) android_glDepthFunc__I }, |
| {"glDepthMask", "(Z)V", (void *) android_glDepthMask__Z }, |
| {"glDepthRangef", "(FF)V", (void *) android_glDepthRangef__FF }, |
| {"glDepthRangex", "(II)V", (void *) android_glDepthRangex__II }, |
| {"glDisable", "(I)V", (void *) android_glDisable__I }, |
| {"glDisableClientState", "(I)V", (void *) android_glDisableClientState__I }, |
| {"glDrawArrays", "(III)V", (void *) android_glDrawArrays__III }, |
| {"glDrawElements", "(IIILjava/nio/Buffer;)V", (void *) android_glDrawElements__IIILjava_nio_Buffer_2 }, |
| {"glEnable", "(I)V", (void *) android_glEnable__I }, |
| {"glEnableClientState", "(I)V", (void *) android_glEnableClientState__I }, |
| {"glFinish", "()V", (void *) android_glFinish__ }, |
| {"glFlush", "()V", (void *) android_glFlush__ }, |
| {"glFogf", "(IF)V", (void *) android_glFogf__IF }, |
| {"glFogfv", "(I[FI)V", (void *) android_glFogfv__I_3FI }, |
| {"glFogfv", "(ILjava/nio/FloatBuffer;)V", (void *) android_glFogfv__ILjava_nio_FloatBuffer_2 }, |
| {"glFogx", "(II)V", (void *) android_glFogx__II }, |
| {"glFogxv", "(I[II)V", (void *) android_glFogxv__I_3II }, |
| {"glFogxv", "(ILjava/nio/IntBuffer;)V", (void *) android_glFogxv__ILjava_nio_IntBuffer_2 }, |
| {"glFrontFace", "(I)V", (void *) android_glFrontFace__I }, |
| {"glFrustumf", "(FFFFFF)V", (void *) android_glFrustumf__FFFFFF }, |
| {"glFrustumx", "(IIIIII)V", (void *) android_glFrustumx__IIIIII }, |
| {"glGenTextures", "(I[II)V", (void *) android_glGenTextures__I_3II }, |
| {"glGenTextures", "(ILjava/nio/IntBuffer;)V", (void *) android_glGenTextures__ILjava_nio_IntBuffer_2 }, |
| {"glGetError", "()I", (void *) android_glGetError__ }, |
| {"glGetIntegerv", "(I[II)V", (void *) android_glGetIntegerv__I_3II }, |
| {"glGetIntegerv", "(ILjava/nio/IntBuffer;)V", (void *) android_glGetIntegerv__ILjava_nio_IntBuffer_2 }, |
| {"glGetString", "(I)Ljava/lang/String;", (void *) android_glGetString }, |
| {"glHint", "(II)V", (void *) android_glHint__II }, |
| {"glLightModelf", "(IF)V", (void *) android_glLightModelf__IF }, |
| {"glLightModelfv", "(I[FI)V", (void *) android_glLightModelfv__I_3FI }, |
| {"glLightModelfv", "(ILjava/nio/FloatBuffer;)V", (void *) android_glLightModelfv__ILjava_nio_FloatBuffer_2 }, |
| {"glLightModelx", "(II)V", (void *) android_glLightModelx__II }, |
| {"glLightModelxv", "(I[II)V", (void *) android_glLightModelxv__I_3II }, |
| {"glLightModelxv", "(ILjava/nio/IntBuffer;)V", (void *) android_glLightModelxv__ILjava_nio_IntBuffer_2 }, |
| {"glLightf", "(IIF)V", (void *) android_glLightf__IIF }, |
| {"glLightfv", "(II[FI)V", (void *) android_glLightfv__II_3FI }, |
| {"glLightfv", "(IILjava/nio/FloatBuffer;)V", (void *) android_glLightfv__IILjava_nio_FloatBuffer_2 }, |
| {"glLightx", "(III)V", (void *) android_glLightx__III }, |
| {"glLightxv", "(II[II)V", (void *) android_glLightxv__II_3II }, |
| {"glLightxv", "(IILjava/nio/IntBuffer;)V", (void *) android_glLightxv__IILjava_nio_IntBuffer_2 }, |
| {"glLineWidth", "(F)V", (void *) android_glLineWidth__F }, |
| {"glLineWidthx", "(I)V", (void *) android_glLineWidthx__I }, |
| {"glLoadIdentity", "()V", (void *) android_glLoadIdentity__ }, |
| {"glLoadMatrixf", "([FI)V", (void *) android_glLoadMatrixf___3FI }, |
| {"glLoadMatrixf", "(Ljava/nio/FloatBuffer;)V", (void *) android_glLoadMatrixf__Ljava_nio_FloatBuffer_2 }, |
| {"glLoadMatrixx", "([II)V", (void *) android_glLoadMatrixx___3II }, |
| {"glLoadMatrixx", "(Ljava/nio/IntBuffer;)V", (void *) android_glLoadMatrixx__Ljava_nio_IntBuffer_2 }, |
| {"glLogicOp", "(I)V", (void *) android_glLogicOp__I }, |
| {"glMaterialf", "(IIF)V", (void *) android_glMaterialf__IIF }, |
| {"glMaterialfv", "(II[FI)V", (void *) android_glMaterialfv__II_3FI }, |
| {"glMaterialfv", "(IILjava/nio/FloatBuffer;)V", (void *) android_glMaterialfv__IILjava_nio_FloatBuffer_2 }, |
| {"glMaterialx", "(III)V", (void *) android_glMaterialx__III }, |
| {"glMaterialxv", "(II[II)V", (void *) android_glMaterialxv__II_3II }, |
| {"glMaterialxv", "(IILjava/nio/IntBuffer;)V", (void *) android_glMaterialxv__IILjava_nio_IntBuffer_2 }, |
| {"glMatrixMode", "(I)V", (void *) android_glMatrixMode__I }, |
| {"glMultMatrixf", "([FI)V", (void *) android_glMultMatrixf___3FI }, |
| {"glMultMatrixf", "(Ljava/nio/FloatBuffer;)V", (void *) android_glMultMatrixf__Ljava_nio_FloatBuffer_2 }, |
| {"glMultMatrixx", "([II)V", (void *) android_glMultMatrixx___3II }, |
| {"glMultMatrixx", "(Ljava/nio/IntBuffer;)V", (void *) android_glMultMatrixx__Ljava_nio_IntBuffer_2 }, |
| {"glMultiTexCoord4f", "(IFFFF)V", (void *) android_glMultiTexCoord4f__IFFFF }, |
| {"glMultiTexCoord4x", "(IIIII)V", (void *) android_glMultiTexCoord4x__IIIII }, |
| {"glNormal3f", "(FFF)V", (void *) android_glNormal3f__FFF }, |
| {"glNormal3x", "(III)V", (void *) android_glNormal3x__III }, |
| {"glNormalPointerBounds", "(IILjava/nio/Buffer;I)V", (void *) android_glNormalPointerBounds__IILjava_nio_Buffer_2I }, |
| {"glOrthof", "(FFFFFF)V", (void *) android_glOrthof__FFFFFF }, |
| {"glOrthox", "(IIIIII)V", (void *) android_glOrthox__IIIIII }, |
| {"glPixelStorei", "(II)V", (void *) android_glPixelStorei__II }, |
| {"glPointSize", "(F)V", (void *) android_glPointSize__F }, |
| {"glPointSizex", "(I)V", (void *) android_glPointSizex__I }, |
| {"glPolygonOffset", "(FF)V", (void *) android_glPolygonOffset__FF }, |
| {"glPolygonOffsetx", "(II)V", (void *) android_glPolygonOffsetx__II }, |
| {"glPopMatrix", "()V", (void *) android_glPopMatrix__ }, |
| {"glPushMatrix", "()V", (void *) android_glPushMatrix__ }, |
| {"glReadPixels", "(IIIIIILjava/nio/Buffer;)V", (void *) android_glReadPixels__IIIIIILjava_nio_Buffer_2 }, |
| {"glRotatef", "(FFFF)V", (void *) android_glRotatef__FFFF }, |
| {"glRotatex", "(IIII)V", (void *) android_glRotatex__IIII }, |
| {"glSampleCoverage", "(FZ)V", (void *) android_glSampleCoverage__FZ }, |
| {"glSampleCoveragex", "(IZ)V", (void *) android_glSampleCoveragex__IZ }, |
| {"glScalef", "(FFF)V", (void *) android_glScalef__FFF }, |
| {"glScalex", "(III)V", (void *) android_glScalex__III }, |
| {"glScissor", "(IIII)V", (void *) android_glScissor__IIII }, |
| {"glShadeModel", "(I)V", (void *) android_glShadeModel__I }, |
| {"glStencilFunc", "(III)V", (void *) android_glStencilFunc__III }, |
| {"glStencilMask", "(I)V", (void *) android_glStencilMask__I }, |
| {"glStencilOp", "(III)V", (void *) android_glStencilOp__III }, |
| {"glTexCoordPointerBounds", "(IIILjava/nio/Buffer;I)V", (void *) android_glTexCoordPointerBounds__IIILjava_nio_Buffer_2I }, |
| {"glTexEnvf", "(IIF)V", (void *) android_glTexEnvf__IIF }, |
| {"glTexEnvfv", "(II[FI)V", (void *) android_glTexEnvfv__II_3FI }, |
| {"glTexEnvfv", "(IILjava/nio/FloatBuffer;)V", (void *) android_glTexEnvfv__IILjava_nio_FloatBuffer_2 }, |
| {"glTexEnvx", "(III)V", (void *) android_glTexEnvx__III }, |
| {"glTexEnvxv", "(II[II)V", (void *) android_glTexEnvxv__II_3II }, |
| {"glTexEnvxv", "(IILjava/nio/IntBuffer;)V", (void *) android_glTexEnvxv__IILjava_nio_IntBuffer_2 }, |
| {"glTexImage2D", "(IIIIIIIILjava/nio/Buffer;)V", (void *) android_glTexImage2D__IIIIIIIILjava_nio_Buffer_2 }, |
| {"glTexParameterf", "(IIF)V", (void *) android_glTexParameterf__IIF }, |
| {"glTexParameterx", "(III)V", (void *) android_glTexParameterx__III }, |
| {"glTexSubImage2D", "(IIIIIIIILjava/nio/Buffer;)V", (void *) android_glTexSubImage2D__IIIIIIIILjava_nio_Buffer_2 }, |
| {"glTranslatef", "(FFF)V", (void *) android_glTranslatef__FFF }, |
| {"glTranslatex", "(III)V", (void *) android_glTranslatex__III }, |
| {"glVertexPointerBounds", "(IIILjava/nio/Buffer;I)V", (void *) android_glVertexPointerBounds__IIILjava_nio_Buffer_2I }, |
| {"glViewport", "(IIII)V", (void *) android_glViewport__IIII }, |
| }; |
| |
| int register_android_opengl_jni_GLES10(JNIEnv *_env) |
| { |
| int err; |
| err = android::AndroidRuntime::registerNativeMethods(_env, classPathName, methods, NELEM(methods)); |
| return err; |
| } |