127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* 227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich** 327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich** Copyright 2009, The Android Open Source Project 427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich** 524ce5fb2cc09d0a14406e7b935f8648c5720d27eElliott Hughes** Licensed under the Apache License, Version 2.0 (the "License"); 624ce5fb2cc09d0a14406e7b935f8648c5720d27eElliott Hughes** you may not use this file except in compliance with the License. 724ce5fb2cc09d0a14406e7b935f8648c5720d27eElliott Hughes** You may obtain a copy of the License at 827f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich** 924ce5fb2cc09d0a14406e7b935f8648c5720d27eElliott Hughes** http://www.apache.org/licenses/LICENSE-2.0 1027f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich** 1124ce5fb2cc09d0a14406e7b935f8648c5720d27eElliott Hughes** Unless required by applicable law or agreed to in writing, software 1224ce5fb2cc09d0a14406e7b935f8648c5720d27eElliott Hughes** distributed under the License is distributed on an "AS IS" BASIS, 1324ce5fb2cc09d0a14406e7b935f8648c5720d27eElliott Hughes** WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 1424ce5fb2cc09d0a14406e7b935f8648c5720d27eElliott Hughes** See the License for the specific language governing permissions and 1527f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich** limitations under the License. 1627f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich*/ 1727f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich 1827f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich// This source file is automatically generated 1927f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich 202ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian#include <GLES/gl.h> 212ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian#include <GLES/glext.h> 222ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian 239626f8203a8c222b8960a49cdc66d540fdb688b0Jesse Hall#include <jni.h> 249626f8203a8c222b8960a49cdc66d540fdb688b0Jesse Hall#include <JNIHelp.h> 2527f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich#include <android_runtime/AndroidRuntime.h> 2627f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich#include <utils/misc.h> 2727f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich#include <assert.h> 28be6eac828f5af8b608c3fa6749330f1dcd6b6206Jack Palevich 2927f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic int initialized = 0; 3027f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich 3127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic jclass nioAccessClass; 3227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic jclass bufferClass; 3327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic jmethodID getBasePointerID; 3427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic jmethodID getBaseArrayID; 3527f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic jmethodID getBaseArrayOffsetID; 3627f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic jfieldID positionID; 3727f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic jfieldID limitID; 3827f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic jfieldID elementSizeShiftID; 3927f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich 402ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian 412ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian/* special calls implemented in Android's GLES wrapper used to more 422ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian * efficiently bound-check passed arrays */ 432ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopianextern "C" { 442ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian#ifdef GL_VERSION_ES_CM_1_1 452ad0477f16c64dc3126741933f11e27353521bb4Mathias AgopianGL_API void GL_APIENTRY glColorPointerBounds(GLint size, GLenum type, GLsizei stride, 462ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian const GLvoid *ptr, GLsizei count); 472ad0477f16c64dc3126741933f11e27353521bb4Mathias AgopianGL_API void GL_APIENTRY glNormalPointerBounds(GLenum type, GLsizei stride, 482ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian const GLvoid *pointer, GLsizei count); 492ad0477f16c64dc3126741933f11e27353521bb4Mathias AgopianGL_API void GL_APIENTRY glTexCoordPointerBounds(GLint size, GLenum type, 502ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian GLsizei stride, const GLvoid *pointer, GLsizei count); 512ad0477f16c64dc3126741933f11e27353521bb4Mathias AgopianGL_API void GL_APIENTRY glVertexPointerBounds(GLint size, GLenum type, 522ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian GLsizei stride, const GLvoid *pointer, GLsizei count); 532ad0477f16c64dc3126741933f11e27353521bb4Mathias AgopianGL_API void GL_APIENTRY glPointSizePointerOESBounds(GLenum type, 542ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian GLsizei stride, const GLvoid *pointer, GLsizei count); 552ad0477f16c64dc3126741933f11e27353521bb4Mathias AgopianGL_API void GL_APIENTRY glMatrixIndexPointerOESBounds(GLint size, GLenum type, 562ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian GLsizei stride, const GLvoid *pointer, GLsizei count); 572ad0477f16c64dc3126741933f11e27353521bb4Mathias AgopianGL_API void GL_APIENTRY glWeightPointerOESBounds(GLint size, GLenum type, 582ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian GLsizei stride, const GLvoid *pointer, GLsizei count); 592ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian#endif 602ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian#ifdef GL_ES_VERSION_2_0 612ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopianstatic void glVertexAttribPointerBounds(GLuint indx, GLint size, GLenum type, 622ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian GLboolean normalized, GLsizei stride, const GLvoid *pointer, GLsizei count) { 632ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian glVertexAttribPointer(indx, size, type, normalized, stride, pointer); 642ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian} 652ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian#endif 66cee5198e7199fcbb131ff0d30165fb1d5c0107cfAndy McFadden#ifdef GL_ES_VERSION_3_0 67cee5198e7199fcbb131ff0d30165fb1d5c0107cfAndy McFaddenstatic void glVertexAttribIPointerBounds(GLuint indx, GLint size, GLenum type, 68cee5198e7199fcbb131ff0d30165fb1d5c0107cfAndy McFadden GLsizei stride, const GLvoid *pointer, GLsizei count) { 69cee5198e7199fcbb131ff0d30165fb1d5c0107cfAndy McFadden glVertexAttribIPointer(indx, size, type, stride, pointer); 70cee5198e7199fcbb131ff0d30165fb1d5c0107cfAndy McFadden} 71cee5198e7199fcbb131ff0d30165fb1d5c0107cfAndy McFadden#endif 722ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian} 732ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian 7427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* Cache method IDs each time the class is loaded. */ 7527f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich 7627f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void 7724ce5fb2cc09d0a14406e7b935f8648c5720d27eElliott HughesnativeClassInit(JNIEnv *_env, jclass glImplClass) 7827f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{ 7927f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich jclass nioAccessClassLocal = _env->FindClass("java/nio/NIOAccess"); 8027f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich nioAccessClass = (jclass) _env->NewGlobalRef(nioAccessClassLocal); 8127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich 8227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich jclass bufferClassLocal = _env->FindClass("java/nio/Buffer"); 8327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich bufferClass = (jclass) _env->NewGlobalRef(bufferClassLocal); 8427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich 8527f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich getBasePointerID = _env->GetStaticMethodID(nioAccessClass, 8627f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich "getBasePointer", "(Ljava/nio/Buffer;)J"); 8727f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich getBaseArrayID = _env->GetStaticMethodID(nioAccessClass, 8827f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich "getBaseArray", "(Ljava/nio/Buffer;)Ljava/lang/Object;"); 8927f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich getBaseArrayOffsetID = _env->GetStaticMethodID(nioAccessClass, 9027f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich "getBaseArrayOffset", "(Ljava/nio/Buffer;)I"); 9127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich 9227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich positionID = _env->GetFieldID(bufferClass, "position", "I"); 9327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich limitID = _env->GetFieldID(bufferClass, "limit", "I"); 9427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich elementSizeShiftID = 9527f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich _env->GetFieldID(bufferClass, "_elementSizeShift", "I"); 9627f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich} 9727f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich 9827f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void * 9917045a16575ece34cfadb63da4791f115625df78Thomas TafertshofergetPointer(JNIEnv *_env, jobject buffer, jarray *array, jint *remaining, jint *offset) 10027f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{ 10127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich jint position; 10227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich jint limit; 10327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich jint elementSizeShift; 10427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich jlong pointer; 10527f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich 10627f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich position = _env->GetIntField(buffer, positionID); 10727f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich limit = _env->GetIntField(buffer, limitID); 10827f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich elementSizeShift = _env->GetIntField(buffer, elementSizeShiftID); 10927f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich *remaining = (limit - position) << elementSizeShift; 11027f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich pointer = _env->CallStaticLongMethod(nioAccessClass, 11127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich getBasePointerID, buffer); 11227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich if (pointer != 0L) { 11327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich *array = NULL; 11401c26ea89d4bbea3cf550e9328742302dd9a2b25Ashok Bhat return reinterpret_cast<void*>(pointer); 11527f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich } 11624ce5fb2cc09d0a14406e7b935f8648c5720d27eElliott Hughes 11727f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich *array = (jarray) _env->CallStaticObjectMethod(nioAccessClass, 11827f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich getBaseArrayID, buffer); 11917045a16575ece34cfadb63da4791f115625df78Thomas Tafertshofer *offset = _env->CallStaticIntMethod(nioAccessClass, 12027f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich getBaseArrayOffsetID, buffer); 1212ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian 12217045a16575ece34cfadb63da4791f115625df78Thomas Tafertshofer return NULL; 12327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich} 12427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich 12527f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void 12627f8002e591b5c579f75b2580183b5d1c4219cd4Jack PalevichreleasePointer(JNIEnv *_env, jarray array, void *data, jboolean commit) 12727f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{ 12827f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich _env->ReleasePrimitiveArrayCritical(array, data, 1292ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian commit ? 0 : JNI_ABORT); 13027f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich} 13127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich 132be6eac828f5af8b608c3fa6749330f1dcd6b6206Jack Palevichstatic void * 133be6eac828f5af8b608c3fa6749330f1dcd6b6206Jack PalevichgetDirectBufferPointer(JNIEnv *_env, jobject buffer) { 134be6eac828f5af8b608c3fa6749330f1dcd6b6206Jack Palevich char* buf = (char*) _env->GetDirectBufferAddress(buffer); 135be6eac828f5af8b608c3fa6749330f1dcd6b6206Jack Palevich if (buf) { 136be6eac828f5af8b608c3fa6749330f1dcd6b6206Jack Palevich jint position = _env->GetIntField(buffer, positionID); 137be6eac828f5af8b608c3fa6749330f1dcd6b6206Jack Palevich jint elementSizeShift = _env->GetIntField(buffer, elementSizeShiftID); 138be6eac828f5af8b608c3fa6749330f1dcd6b6206Jack Palevich buf += position << elementSizeShift; 139be6eac828f5af8b608c3fa6749330f1dcd6b6206Jack Palevich } else { 14024ce5fb2cc09d0a14406e7b935f8648c5720d27eElliott Hughes jniThrowException(_env, "java/lang/IllegalArgumentException", 14124ce5fb2cc09d0a14406e7b935f8648c5720d27eElliott Hughes "Must use a native order direct Buffer"); 142be6eac828f5af8b608c3fa6749330f1dcd6b6206Jack Palevich } 143be6eac828f5af8b608c3fa6749330f1dcd6b6206Jack Palevich return (void*) buf; 144be6eac828f5af8b608c3fa6749330f1dcd6b6206Jack Palevich} 1452ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian 1462ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian// -------------------------------------------------------------------------- 1472ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian 1482ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian/* 1492ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian * returns the number of values glGet returns for a given pname. 1502ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian * 1512ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian * The code below is written such that pnames requiring only one values 1522ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian * are the default (and are not explicitely tested for). This makes the 1532ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian * checking code much shorter/readable/efficient. 1542ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian * 1552ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian * This means that unknown pnames (e.g.: extensions) will default to 1. If 1562ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian * that unknown pname needs more than 1 value, then the validation check 1572ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian * is incomplete and the app may crash if it passed the wrong number params. 1582ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian */ 1592ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopianstatic int getNeededCount(GLint pname) { 1602ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian int needed = 1; 1612ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian#ifdef GL_ES_VERSION_2_0 1622ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian // GLES 2.x pnames 1632ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian switch (pname) { 1642ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian case GL_ALIASED_LINE_WIDTH_RANGE: 1652ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian case GL_ALIASED_POINT_SIZE_RANGE: 1662ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian needed = 2; 1672ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian break; 1682ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian 1692ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian case GL_BLEND_COLOR: 1702ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian case GL_COLOR_CLEAR_VALUE: 1712ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian case GL_COLOR_WRITEMASK: 1722ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian case GL_SCISSOR_BOX: 1732ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian case GL_VIEWPORT: 1742ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian needed = 4; 1752ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian break; 1762ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian 1772ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian case GL_COMPRESSED_TEXTURE_FORMATS: 1782ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian glGetIntegerv(GL_NUM_COMPRESSED_TEXTURE_FORMATS, &needed); 1792ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian break; 1802ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian 1812ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian case GL_SHADER_BINARY_FORMATS: 1822ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian glGetIntegerv(GL_NUM_SHADER_BINARY_FORMATS, &needed); 1832ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian break; 1842ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian } 1852ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian#endif 1862ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian 1872ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian#ifdef GL_VERSION_ES_CM_1_1 1882ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian // GLES 1.x pnames 1892ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian switch (pname) { 1902ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian case GL_ALIASED_LINE_WIDTH_RANGE: 1912ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian case GL_ALIASED_POINT_SIZE_RANGE: 1922ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian case GL_DEPTH_RANGE: 1932ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian case GL_SMOOTH_LINE_WIDTH_RANGE: 1942ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian case GL_SMOOTH_POINT_SIZE_RANGE: 1952ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian needed = 2; 1962ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian break; 1972ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian 1982ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian case GL_CURRENT_NORMAL: 1992ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian case GL_POINT_DISTANCE_ATTENUATION: 2002ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian needed = 3; 2012ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian break; 2022ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian 2032ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian case GL_COLOR_CLEAR_VALUE: 2042ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian case GL_COLOR_WRITEMASK: 2052ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian case GL_CURRENT_COLOR: 2062ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian case GL_CURRENT_TEXTURE_COORDS: 2072ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian case GL_FOG_COLOR: 2082ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian case GL_LIGHT_MODEL_AMBIENT: 2092ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian case GL_SCISSOR_BOX: 2102ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian case GL_VIEWPORT: 2112ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian needed = 4; 2122ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian break; 2132ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian 2142ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian case GL_MODELVIEW_MATRIX: 2152ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian case GL_PROJECTION_MATRIX: 2162ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian case GL_TEXTURE_MATRIX: 2172ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian needed = 16; 2182ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian break; 2192ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian 2202ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian case GL_COMPRESSED_TEXTURE_FORMATS: 2212ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian glGetIntegerv(GL_NUM_COMPRESSED_TEXTURE_FORMATS, &needed); 2222ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian break; 2232ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian } 2242ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian#endif 2252ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian return needed; 2262ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian} 2272ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian 2282ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopiantemplate <typename JTYPEARRAY, typename CTYPE, void GET(GLenum, CTYPE*)> 2292ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopianstatic void 2302ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopianget 2312ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian (JNIEnv *_env, jobject _this, jint pname, JTYPEARRAY params_ref, jint offset) { 2322ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian jint _exception = 0; 2332ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian const char * _exceptionType; 2342ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian const char * _exceptionMessage; 2352ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian CTYPE *params_base = (CTYPE *) 0; 2362ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian jint _remaining; 2372ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian CTYPE *params = (CTYPE *) 0; 2382ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian int _needed = 0; 2392ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian 2402ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian if (!params_ref) { 2412ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian _exception = 1; 2422ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian _exceptionType = "java/lang/IllegalArgumentException"; 2432ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian _exceptionMessage = "params == null"; 2442ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian goto exit; 2452ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian } 2462ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian if (offset < 0) { 2472ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian _exception = 1; 2482ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian _exceptionType = "java/lang/IllegalArgumentException"; 2492ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian _exceptionMessage = "offset < 0"; 2502ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian goto exit; 2512ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian } 2522ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian _remaining = _env->GetArrayLength(params_ref) - offset; 2532ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian _needed = getNeededCount(pname); 2542ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian // if we didn't find this pname, we just assume the user passed 2552ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian // an array of the right size -- this might happen with extensions 2562ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian // or if we forget an enum here. 2572ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian if (_remaining < _needed) { 2582ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian _exception = 1; 2592ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian _exceptionType = "java/lang/IllegalArgumentException"; 2602ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian _exceptionMessage = "length - offset < needed"; 2612ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian goto exit; 2622ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian } 2632ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian params_base = (CTYPE *) 2642ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian _env->GetPrimitiveArrayCritical(params_ref, (jboolean *)0); 2652ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian params = params_base + offset; 2662ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian 2672ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian GET( 2682ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian (GLenum)pname, 2692ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian (CTYPE *)params 2702ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian ); 2712ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian 2722ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopianexit: 2732ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian if (params_base) { 2742ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian _env->ReleasePrimitiveArrayCritical(params_ref, params_base, 2752ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian _exception ? JNI_ABORT: 0); 2762ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian } 2772ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian if (_exception) { 2782ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian jniThrowException(_env, _exceptionType, _exceptionMessage); 2792ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian } 2802ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian} 2812ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian 2822ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian 2832ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopiantemplate <typename CTYPE, void GET(GLenum, CTYPE*)> 2842ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopianstatic void 2852ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopiangetarray 2862ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian (JNIEnv *_env, jobject _this, jint pname, jobject params_buf) { 2872ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian jint _exception = 0; 2882ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian const char * _exceptionType; 2892ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian const char * _exceptionMessage; 2902ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian jarray _array = (jarray) 0; 2912ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian jint _bufferOffset = (jint) 0; 2922ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian jint _remaining; 2932ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian CTYPE *params = (CTYPE *) 0; 2942ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian int _needed = 0; 2952ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian 2962ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian params = (CTYPE *)getPointer(_env, params_buf, &_array, &_remaining, &_bufferOffset); 297cee5198e7199fcbb131ff0d30165fb1d5c0107cfAndy McFadden _remaining /= sizeof(CTYPE); // convert from bytes to item count 2982ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian _needed = getNeededCount(pname); 2992ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian // if we didn't find this pname, we just assume the user passed 3002ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian // an array of the right size -- this might happen with extensions 3012ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian // or if we forget an enum here. 3022ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian if (_needed>0 && _remaining < _needed) { 3032ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian _exception = 1; 3042ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian _exceptionType = "java/lang/IllegalArgumentException"; 3052ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian _exceptionMessage = "remaining() < needed"; 3062ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian goto exit; 3072ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian } 3082ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian if (params == NULL) { 3092ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian char * _paramsBase = (char *)_env->GetPrimitiveArrayCritical(_array, (jboolean *) 0); 3102ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian params = (CTYPE *) (_paramsBase + _bufferOffset); 3112ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian } 3122ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian GET( 3132ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian (GLenum)pname, 3142ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian (CTYPE *)params 3152ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian ); 3162ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian 3172ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopianexit: 3182ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian if (_array) { 3192ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian releasePointer(_env, _array, params, _exception ? JNI_FALSE : JNI_TRUE); 3202ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian } 3212ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian if (_exception) { 3222ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian jniThrowException(_env, _exceptionType, _exceptionMessage); 3232ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian } 3242ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian} 3252ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian 32627f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich// -------------------------------------------------------------------------- 32727f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glBlendEquationSeparateOES ( GLenum modeRGB, GLenum modeAlpha ) */ 32827f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void 32927f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glBlendEquationSeparateOES__II 33027f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich (JNIEnv *_env, jobject _this, jint modeRGB, jint modeAlpha) { 331a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich glBlendEquationSeparateOES( 332a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich (GLenum)modeRGB, 333a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich (GLenum)modeAlpha 334a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich ); 33527f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich} 33627f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich 33727f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glBlendFuncSeparateOES ( GLenum srcRGB, GLenum dstRGB, GLenum srcAlpha, GLenum dstAlpha ) */ 33827f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void 33927f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glBlendFuncSeparateOES__IIII 34027f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich (JNIEnv *_env, jobject _this, jint srcRGB, jint dstRGB, jint srcAlpha, jint dstAlpha) { 341a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich glBlendFuncSeparateOES( 342a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich (GLenum)srcRGB, 343a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich (GLenum)dstRGB, 344a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich (GLenum)srcAlpha, 345a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich (GLenum)dstAlpha 346a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich ); 34727f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich} 34827f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich 34927f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glBlendEquationOES ( GLenum mode ) */ 35027f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void 35127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glBlendEquationOES__I 35227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich (JNIEnv *_env, jobject _this, jint mode) { 353a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich glBlendEquationOES( 354a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich (GLenum)mode 355a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich ); 35627f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich} 35727f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich 35827f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glDrawTexsOES ( GLshort x, GLshort y, GLshort z, GLshort width, GLshort height ) */ 35927f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void 36027f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glDrawTexsOES__SSSSS 36127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich (JNIEnv *_env, jobject _this, jshort x, jshort y, jshort z, jshort width, jshort height) { 36227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich glDrawTexsOES( 36327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich (GLshort)x, 36427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich (GLshort)y, 36527f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich (GLshort)z, 36627f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich (GLshort)width, 36727f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich (GLshort)height 36827f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich ); 36927f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich} 37027f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich 37127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glDrawTexiOES ( GLint x, GLint y, GLint z, GLint width, GLint height ) */ 37227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void 37327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glDrawTexiOES__IIIII 37427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich (JNIEnv *_env, jobject _this, jint x, jint y, jint z, jint width, jint height) { 37527f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich glDrawTexiOES( 37627f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich (GLint)x, 37727f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich (GLint)y, 37827f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich (GLint)z, 37927f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich (GLint)width, 38027f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich (GLint)height 38127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich ); 38227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich} 38327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich 38427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glDrawTexxOES ( GLfixed x, GLfixed y, GLfixed z, GLfixed width, GLfixed height ) */ 38527f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void 38627f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glDrawTexxOES__IIIII 38727f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich (JNIEnv *_env, jobject _this, jint x, jint y, jint z, jint width, jint height) { 38827f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich glDrawTexxOES( 38927f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich (GLfixed)x, 39027f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich (GLfixed)y, 39127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich (GLfixed)z, 39227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich (GLfixed)width, 39327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich (GLfixed)height 39427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich ); 39527f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich} 39627f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich 39727f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glDrawTexsvOES ( const GLshort *coords ) */ 39827f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void 39927f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glDrawTexsvOES___3SI 40027f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich (JNIEnv *_env, jobject _this, jshortArray coords_ref, jint offset) { 4012545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer jint _exception = 0; 4022ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian const char * _exceptionType = NULL; 4032ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian const char * _exceptionMessage = NULL; 40427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich GLshort *coords_base = (GLshort *) 0; 40527f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich jint _remaining; 40627f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich GLshort *coords = (GLshort *) 0; 40727f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich 40827f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich if (!coords_ref) { 4092545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exception = 1; 4102545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exceptionType = "java/lang/IllegalArgumentException"; 4112545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exceptionMessage = "coords == null"; 41227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich goto exit; 41327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich } 41427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich if (offset < 0) { 4152545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exception = 1; 4162545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exceptionType = "java/lang/IllegalArgumentException"; 4172545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exceptionMessage = "offset < 0"; 41827f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich goto exit; 41927f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich } 42027f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich _remaining = _env->GetArrayLength(coords_ref) - offset; 42127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich if (_remaining < 5) { 4222545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exception = 1; 4232545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exceptionType = "java/lang/IllegalArgumentException"; 4242545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exceptionMessage = "length - offset < 5 < needed"; 42527f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich goto exit; 42627f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich } 42727f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich coords_base = (GLshort *) 42827f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich _env->GetPrimitiveArrayCritical(coords_ref, (jboolean *)0); 42927f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich coords = coords_base + offset; 43027f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich 43127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich glDrawTexsvOES( 43227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich (GLshort *)coords 43327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich ); 43427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich 43527f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichexit: 43627f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich if (coords_base) { 43727f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich _env->ReleasePrimitiveArrayCritical(coords_ref, coords_base, 43827f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich JNI_ABORT); 43927f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich } 4402545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer if (_exception) { 4412545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer jniThrowException(_env, _exceptionType, _exceptionMessage); 4422545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer } 44327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich} 44427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich 44527f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glDrawTexsvOES ( const GLshort *coords ) */ 44627f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void 44727f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glDrawTexsvOES__Ljava_nio_ShortBuffer_2 44827f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich (JNIEnv *_env, jobject _this, jobject coords_buf) { 4492545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer jint _exception = 0; 4502ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian const char * _exceptionType = NULL; 4512ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian const char * _exceptionMessage = NULL; 45227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich jarray _array = (jarray) 0; 45317045a16575ece34cfadb63da4791f115625df78Thomas Tafertshofer jint _bufferOffset = (jint) 0; 45427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich jint _remaining; 45527f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich GLshort *coords = (GLshort *) 0; 45627f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich 45717045a16575ece34cfadb63da4791f115625df78Thomas Tafertshofer coords = (GLshort *)getPointer(_env, coords_buf, &_array, &_remaining, &_bufferOffset); 45827f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich if (_remaining < 5) { 4592545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exception = 1; 4602545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exceptionType = "java/lang/IllegalArgumentException"; 4612545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exceptionMessage = "remaining() < 5 < needed"; 46227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich goto exit; 46327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich } 46417045a16575ece34cfadb63da4791f115625df78Thomas Tafertshofer if (coords == NULL) { 46517045a16575ece34cfadb63da4791f115625df78Thomas Tafertshofer char * _coordsBase = (char *)_env->GetPrimitiveArrayCritical(_array, (jboolean *) 0); 46617045a16575ece34cfadb63da4791f115625df78Thomas Tafertshofer coords = (GLshort *) (_coordsBase + _bufferOffset); 46717045a16575ece34cfadb63da4791f115625df78Thomas Tafertshofer } 46827f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich glDrawTexsvOES( 46927f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich (GLshort *)coords 47027f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich ); 47127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich 47227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichexit: 47327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich if (_array) { 47427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich releasePointer(_env, _array, coords, JNI_FALSE); 47527f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich } 4762545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer if (_exception) { 4772545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer jniThrowException(_env, _exceptionType, _exceptionMessage); 4782545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer } 47927f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich} 48027f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich 48127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glDrawTexivOES ( const GLint *coords ) */ 48227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void 48327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glDrawTexivOES___3II 48427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich (JNIEnv *_env, jobject _this, jintArray coords_ref, jint offset) { 4852545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer jint _exception = 0; 4862ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian const char * _exceptionType = NULL; 4872ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian const char * _exceptionMessage = NULL; 48827f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich GLint *coords_base = (GLint *) 0; 48927f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich jint _remaining; 49027f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich GLint *coords = (GLint *) 0; 49127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich 49227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich if (!coords_ref) { 4932545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exception = 1; 4942545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exceptionType = "java/lang/IllegalArgumentException"; 4952545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exceptionMessage = "coords == null"; 49627f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich goto exit; 49727f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich } 49827f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich if (offset < 0) { 4992545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exception = 1; 5002545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exceptionType = "java/lang/IllegalArgumentException"; 5012545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exceptionMessage = "offset < 0"; 50227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich goto exit; 50327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich } 50427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich _remaining = _env->GetArrayLength(coords_ref) - offset; 50527f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich if (_remaining < 5) { 5062545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exception = 1; 5072545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exceptionType = "java/lang/IllegalArgumentException"; 5082545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exceptionMessage = "length - offset < 5 < needed"; 50927f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich goto exit; 51027f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich } 51127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich coords_base = (GLint *) 51227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich _env->GetPrimitiveArrayCritical(coords_ref, (jboolean *)0); 51327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich coords = coords_base + offset; 51427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich 51527f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich glDrawTexivOES( 51627f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich (GLint *)coords 51727f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich ); 51827f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich 51927f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichexit: 52027f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich if (coords_base) { 52127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich _env->ReleasePrimitiveArrayCritical(coords_ref, coords_base, 52227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich JNI_ABORT); 52327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich } 5242545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer if (_exception) { 5252545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer jniThrowException(_env, _exceptionType, _exceptionMessage); 5262545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer } 52727f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich} 52827f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich 52927f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glDrawTexivOES ( const GLint *coords ) */ 53027f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void 53127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glDrawTexivOES__Ljava_nio_IntBuffer_2 53227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich (JNIEnv *_env, jobject _this, jobject coords_buf) { 5332545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer jint _exception = 0; 5342ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian const char * _exceptionType = NULL; 5352ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian const char * _exceptionMessage = NULL; 53627f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich jarray _array = (jarray) 0; 53717045a16575ece34cfadb63da4791f115625df78Thomas Tafertshofer jint _bufferOffset = (jint) 0; 53827f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich jint _remaining; 53927f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich GLint *coords = (GLint *) 0; 54027f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich 54117045a16575ece34cfadb63da4791f115625df78Thomas Tafertshofer coords = (GLint *)getPointer(_env, coords_buf, &_array, &_remaining, &_bufferOffset); 54227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich if (_remaining < 5) { 5432545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exception = 1; 5442545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exceptionType = "java/lang/IllegalArgumentException"; 5452545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exceptionMessage = "remaining() < 5 < needed"; 54627f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich goto exit; 54727f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich } 54817045a16575ece34cfadb63da4791f115625df78Thomas Tafertshofer if (coords == NULL) { 54917045a16575ece34cfadb63da4791f115625df78Thomas Tafertshofer char * _coordsBase = (char *)_env->GetPrimitiveArrayCritical(_array, (jboolean *) 0); 55017045a16575ece34cfadb63da4791f115625df78Thomas Tafertshofer coords = (GLint *) (_coordsBase + _bufferOffset); 55117045a16575ece34cfadb63da4791f115625df78Thomas Tafertshofer } 55227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich glDrawTexivOES( 55327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich (GLint *)coords 55427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich ); 55527f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich 55627f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichexit: 55727f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich if (_array) { 55827f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich releasePointer(_env, _array, coords, JNI_FALSE); 55927f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich } 5602545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer if (_exception) { 5612545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer jniThrowException(_env, _exceptionType, _exceptionMessage); 5622545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer } 56327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich} 56427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich 56527f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glDrawTexxvOES ( const GLfixed *coords ) */ 56627f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void 56727f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glDrawTexxvOES___3II 56827f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich (JNIEnv *_env, jobject _this, jintArray coords_ref, jint offset) { 5692545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer jint _exception = 0; 5702ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian const char * _exceptionType = NULL; 5712ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian const char * _exceptionMessage = NULL; 57227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich GLfixed *coords_base = (GLfixed *) 0; 57327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich jint _remaining; 57427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich GLfixed *coords = (GLfixed *) 0; 57527f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich 57627f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich if (!coords_ref) { 5772545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exception = 1; 5782545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exceptionType = "java/lang/IllegalArgumentException"; 5792545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exceptionMessage = "coords == null"; 58027f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich goto exit; 58127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich } 58227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich if (offset < 0) { 5832545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exception = 1; 5842545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exceptionType = "java/lang/IllegalArgumentException"; 5852545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exceptionMessage = "offset < 0"; 58627f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich goto exit; 58727f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich } 58827f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich _remaining = _env->GetArrayLength(coords_ref) - offset; 58927f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich if (_remaining < 5) { 5902545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exception = 1; 5912545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exceptionType = "java/lang/IllegalArgumentException"; 5922545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exceptionMessage = "length - offset < 5 < needed"; 59327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich goto exit; 59427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich } 59527f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich coords_base = (GLfixed *) 59627f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich _env->GetPrimitiveArrayCritical(coords_ref, (jboolean *)0); 59727f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich coords = coords_base + offset; 59827f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich 59927f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich glDrawTexxvOES( 60027f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich (GLfixed *)coords 60127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich ); 60227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich 60327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichexit: 60427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich if (coords_base) { 60527f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich _env->ReleasePrimitiveArrayCritical(coords_ref, coords_base, 60627f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich JNI_ABORT); 60727f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich } 6082545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer if (_exception) { 6092545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer jniThrowException(_env, _exceptionType, _exceptionMessage); 6102545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer } 61127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich} 61227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich 61327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glDrawTexxvOES ( const GLfixed *coords ) */ 61427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void 61527f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glDrawTexxvOES__Ljava_nio_IntBuffer_2 61627f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich (JNIEnv *_env, jobject _this, jobject coords_buf) { 6172545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer jint _exception = 0; 6182ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian const char * _exceptionType = NULL; 6192ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian const char * _exceptionMessage = NULL; 62027f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich jarray _array = (jarray) 0; 62117045a16575ece34cfadb63da4791f115625df78Thomas Tafertshofer jint _bufferOffset = (jint) 0; 62227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich jint _remaining; 62327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich GLfixed *coords = (GLfixed *) 0; 62427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich 62517045a16575ece34cfadb63da4791f115625df78Thomas Tafertshofer coords = (GLfixed *)getPointer(_env, coords_buf, &_array, &_remaining, &_bufferOffset); 62627f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich if (_remaining < 5) { 6272545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exception = 1; 6282545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exceptionType = "java/lang/IllegalArgumentException"; 6292545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exceptionMessage = "remaining() < 5 < needed"; 63027f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich goto exit; 63127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich } 63217045a16575ece34cfadb63da4791f115625df78Thomas Tafertshofer if (coords == NULL) { 63317045a16575ece34cfadb63da4791f115625df78Thomas Tafertshofer char * _coordsBase = (char *)_env->GetPrimitiveArrayCritical(_array, (jboolean *) 0); 63417045a16575ece34cfadb63da4791f115625df78Thomas Tafertshofer coords = (GLfixed *) (_coordsBase + _bufferOffset); 63517045a16575ece34cfadb63da4791f115625df78Thomas Tafertshofer } 63627f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich glDrawTexxvOES( 63727f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich (GLfixed *)coords 63827f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich ); 63927f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich 64027f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichexit: 64127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich if (_array) { 64227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich releasePointer(_env, _array, coords, JNI_FALSE); 64327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich } 6442545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer if (_exception) { 6452545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer jniThrowException(_env, _exceptionType, _exceptionMessage); 6462545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer } 64727f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich} 64827f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich 64927f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glDrawTexfOES ( GLfloat x, GLfloat y, GLfloat z, GLfloat width, GLfloat height ) */ 65027f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void 65127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glDrawTexfOES__FFFFF 65227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich (JNIEnv *_env, jobject _this, jfloat x, jfloat y, jfloat z, jfloat width, jfloat height) { 65327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich glDrawTexfOES( 65427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich (GLfloat)x, 65527f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich (GLfloat)y, 65627f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich (GLfloat)z, 65727f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich (GLfloat)width, 65827f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich (GLfloat)height 65927f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich ); 66027f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich} 66127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich 66227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glDrawTexfvOES ( const GLfloat *coords ) */ 66327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void 66427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glDrawTexfvOES___3FI 66527f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich (JNIEnv *_env, jobject _this, jfloatArray coords_ref, jint offset) { 6662545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer jint _exception = 0; 6672ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian const char * _exceptionType = NULL; 6682ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian const char * _exceptionMessage = NULL; 66927f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich GLfloat *coords_base = (GLfloat *) 0; 67027f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich jint _remaining; 67127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich GLfloat *coords = (GLfloat *) 0; 67227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich 67327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich if (!coords_ref) { 6742545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exception = 1; 6752545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exceptionType = "java/lang/IllegalArgumentException"; 6762545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exceptionMessage = "coords == null"; 67727f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich goto exit; 67827f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich } 67927f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich if (offset < 0) { 6802545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exception = 1; 6812545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exceptionType = "java/lang/IllegalArgumentException"; 6822545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exceptionMessage = "offset < 0"; 68327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich goto exit; 68427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich } 68527f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich _remaining = _env->GetArrayLength(coords_ref) - offset; 68627f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich if (_remaining < 5) { 6872545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exception = 1; 6882545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exceptionType = "java/lang/IllegalArgumentException"; 6892545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exceptionMessage = "length - offset < 5 < needed"; 69027f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich goto exit; 69127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich } 69227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich coords_base = (GLfloat *) 69327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich _env->GetPrimitiveArrayCritical(coords_ref, (jboolean *)0); 69427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich coords = coords_base + offset; 69527f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich 69627f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich glDrawTexfvOES( 69727f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich (GLfloat *)coords 69827f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich ); 69927f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich 70027f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichexit: 70127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich if (coords_base) { 70227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich _env->ReleasePrimitiveArrayCritical(coords_ref, coords_base, 70327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich JNI_ABORT); 70427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich } 7052545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer if (_exception) { 7062545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer jniThrowException(_env, _exceptionType, _exceptionMessage); 7072545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer } 70827f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich} 70927f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich 71027f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glDrawTexfvOES ( const GLfloat *coords ) */ 71127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void 71227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glDrawTexfvOES__Ljava_nio_FloatBuffer_2 71327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich (JNIEnv *_env, jobject _this, jobject coords_buf) { 7142545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer jint _exception = 0; 7152ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian const char * _exceptionType = NULL; 7162ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian const char * _exceptionMessage = NULL; 71727f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich jarray _array = (jarray) 0; 71817045a16575ece34cfadb63da4791f115625df78Thomas Tafertshofer jint _bufferOffset = (jint) 0; 71927f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich jint _remaining; 72027f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich GLfloat *coords = (GLfloat *) 0; 72127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich 72217045a16575ece34cfadb63da4791f115625df78Thomas Tafertshofer coords = (GLfloat *)getPointer(_env, coords_buf, &_array, &_remaining, &_bufferOffset); 72327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich if (_remaining < 5) { 7242545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exception = 1; 7252545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exceptionType = "java/lang/IllegalArgumentException"; 7262545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exceptionMessage = "remaining() < 5 < needed"; 72727f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich goto exit; 72827f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich } 72917045a16575ece34cfadb63da4791f115625df78Thomas Tafertshofer if (coords == NULL) { 73017045a16575ece34cfadb63da4791f115625df78Thomas Tafertshofer char * _coordsBase = (char *)_env->GetPrimitiveArrayCritical(_array, (jboolean *) 0); 73117045a16575ece34cfadb63da4791f115625df78Thomas Tafertshofer coords = (GLfloat *) (_coordsBase + _bufferOffset); 73217045a16575ece34cfadb63da4791f115625df78Thomas Tafertshofer } 73327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich glDrawTexfvOES( 73427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich (GLfloat *)coords 73527f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich ); 73627f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich 73727f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichexit: 73827f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich if (_array) { 73927f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich releasePointer(_env, _array, coords, JNI_FALSE); 74027f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich } 7412545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer if (_exception) { 7422545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer jniThrowException(_env, _exceptionType, _exceptionMessage); 7432545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer } 74427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich} 74527f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich 74627f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glEGLImageTargetTexture2DOES ( GLenum target, GLeglImageOES image ) */ 74727f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void 74827f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glEGLImageTargetTexture2DOES__ILjava_nio_Buffer_2 74927f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich (JNIEnv *_env, jobject _this, jint target, jobject image_buf) { 750a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich jarray _array = (jarray) 0; 75117045a16575ece34cfadb63da4791f115625df78Thomas Tafertshofer jint _bufferOffset = (jint) 0; 752a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich jint _remaining; 753a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich GLeglImageOES image = (GLeglImageOES) 0; 754a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich 75517045a16575ece34cfadb63da4791f115625df78Thomas Tafertshofer image = (GLeglImageOES)getPointer(_env, image_buf, &_array, &_remaining, &_bufferOffset); 75617045a16575ece34cfadb63da4791f115625df78Thomas Tafertshofer if (image == NULL) { 75717045a16575ece34cfadb63da4791f115625df78Thomas Tafertshofer char * _imageBase = (char *)_env->GetPrimitiveArrayCritical(_array, (jboolean *) 0); 75817045a16575ece34cfadb63da4791f115625df78Thomas Tafertshofer image = (GLeglImageOES) (_imageBase + _bufferOffset); 75917045a16575ece34cfadb63da4791f115625df78Thomas Tafertshofer } 760a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich glEGLImageTargetTexture2DOES( 761a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich (GLenum)target, 762a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich (GLeglImageOES)image 763a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich ); 764a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich if (_array) { 7652545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer releasePointer(_env, _array, image, JNI_TRUE); 766a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich } 76727f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich} 76827f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich 76927f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glEGLImageTargetRenderbufferStorageOES ( GLenum target, GLeglImageOES image ) */ 77027f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void 77127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glEGLImageTargetRenderbufferStorageOES__ILjava_nio_Buffer_2 77227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich (JNIEnv *_env, jobject _this, jint target, jobject image_buf) { 773a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich jarray _array = (jarray) 0; 77417045a16575ece34cfadb63da4791f115625df78Thomas Tafertshofer jint _bufferOffset = (jint) 0; 775a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich jint _remaining; 776a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich GLeglImageOES image = (GLeglImageOES) 0; 777a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich 77817045a16575ece34cfadb63da4791f115625df78Thomas Tafertshofer image = (GLeglImageOES)getPointer(_env, image_buf, &_array, &_remaining, &_bufferOffset); 77917045a16575ece34cfadb63da4791f115625df78Thomas Tafertshofer if (image == NULL) { 78017045a16575ece34cfadb63da4791f115625df78Thomas Tafertshofer char * _imageBase = (char *)_env->GetPrimitiveArrayCritical(_array, (jboolean *) 0); 78117045a16575ece34cfadb63da4791f115625df78Thomas Tafertshofer image = (GLeglImageOES) (_imageBase + _bufferOffset); 78217045a16575ece34cfadb63da4791f115625df78Thomas Tafertshofer } 783a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich glEGLImageTargetRenderbufferStorageOES( 784a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich (GLenum)target, 785a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich (GLeglImageOES)image 786a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich ); 787a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich if (_array) { 7882545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer releasePointer(_env, _array, image, JNI_TRUE); 789a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich } 79027f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich} 79127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich 79227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glAlphaFuncxOES ( GLenum func, GLclampx ref ) */ 79327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void 79427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glAlphaFuncxOES__II 79527f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich (JNIEnv *_env, jobject _this, jint func, jint ref) { 796a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich glAlphaFuncxOES( 797a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich (GLenum)func, 798a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich (GLclampx)ref 799a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich ); 80027f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich} 80127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich 80227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glClearColorxOES ( GLclampx red, GLclampx green, GLclampx blue, GLclampx alpha ) */ 80327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void 80427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glClearColorxOES__IIII 80527f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich (JNIEnv *_env, jobject _this, jint red, jint green, jint blue, jint alpha) { 806a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich glClearColorxOES( 807a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich (GLclampx)red, 808a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich (GLclampx)green, 809a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich (GLclampx)blue, 810a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich (GLclampx)alpha 811a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich ); 81227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich} 81327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich 81427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glClearDepthxOES ( GLclampx depth ) */ 81527f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void 81627f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glClearDepthxOES__I 81727f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich (JNIEnv *_env, jobject _this, jint depth) { 818a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich glClearDepthxOES( 819a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich (GLclampx)depth 820a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich ); 82127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich} 82227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich 82327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glClipPlanexOES ( GLenum plane, const GLfixed *equation ) */ 82427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void 82527f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glClipPlanexOES__I_3II 82627f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich (JNIEnv *_env, jobject _this, jint plane, jintArray equation_ref, jint offset) { 8272545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer jint _exception = 0; 8282ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian const char * _exceptionType = NULL; 8292ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian const char * _exceptionMessage = NULL; 830a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich GLfixed *equation_base = (GLfixed *) 0; 831a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich jint _remaining; 832a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich GLfixed *equation = (GLfixed *) 0; 833a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich 834a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich if (!equation_ref) { 8352545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exception = 1; 8362545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exceptionType = "java/lang/IllegalArgumentException"; 8372545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exceptionMessage = "equation == null"; 838a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich goto exit; 839a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich } 840a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich if (offset < 0) { 8412545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exception = 1; 8422545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exceptionType = "java/lang/IllegalArgumentException"; 8432545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exceptionMessage = "offset < 0"; 844a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich goto exit; 845a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich } 846a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich _remaining = _env->GetArrayLength(equation_ref) - offset; 847a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich equation_base = (GLfixed *) 848a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich _env->GetPrimitiveArrayCritical(equation_ref, (jboolean *)0); 849a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich equation = equation_base + offset; 850a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich 851a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich glClipPlanexOES( 852a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich (GLenum)plane, 853a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich (GLfixed *)equation 854a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich ); 855a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich 856a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevichexit: 857a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich if (equation_base) { 858a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich _env->ReleasePrimitiveArrayCritical(equation_ref, equation_base, 859a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich JNI_ABORT); 860a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich } 8612545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer if (_exception) { 8622545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer jniThrowException(_env, _exceptionType, _exceptionMessage); 8632545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer } 86427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich} 86527f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich 86627f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glClipPlanexOES ( GLenum plane, const GLfixed *equation ) */ 86727f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void 86827f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glClipPlanexOES__ILjava_nio_IntBuffer_2 86927f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich (JNIEnv *_env, jobject _this, jint plane, jobject equation_buf) { 870a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich jarray _array = (jarray) 0; 87117045a16575ece34cfadb63da4791f115625df78Thomas Tafertshofer jint _bufferOffset = (jint) 0; 872a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich jint _remaining; 873a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich GLfixed *equation = (GLfixed *) 0; 874a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich 87517045a16575ece34cfadb63da4791f115625df78Thomas Tafertshofer equation = (GLfixed *)getPointer(_env, equation_buf, &_array, &_remaining, &_bufferOffset); 87617045a16575ece34cfadb63da4791f115625df78Thomas Tafertshofer if (equation == NULL) { 87717045a16575ece34cfadb63da4791f115625df78Thomas Tafertshofer char * _equationBase = (char *)_env->GetPrimitiveArrayCritical(_array, (jboolean *) 0); 87817045a16575ece34cfadb63da4791f115625df78Thomas Tafertshofer equation = (GLfixed *) (_equationBase + _bufferOffset); 87917045a16575ece34cfadb63da4791f115625df78Thomas Tafertshofer } 880a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich glClipPlanexOES( 881a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich (GLenum)plane, 882a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich (GLfixed *)equation 883a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich ); 884a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich if (_array) { 885a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich releasePointer(_env, _array, equation, JNI_FALSE); 886a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich } 88727f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich} 88827f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich 88927f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glColor4xOES ( GLfixed red, GLfixed green, GLfixed blue, GLfixed alpha ) */ 89027f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void 89127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glColor4xOES__IIII 89227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich (JNIEnv *_env, jobject _this, jint red, jint green, jint blue, jint alpha) { 893a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich glColor4xOES( 894a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich (GLfixed)red, 895a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich (GLfixed)green, 896a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich (GLfixed)blue, 897a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich (GLfixed)alpha 898a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich ); 89927f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich} 90027f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich 90127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glDepthRangexOES ( GLclampx zNear, GLclampx zFar ) */ 90227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void 90327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glDepthRangexOES__II 90427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich (JNIEnv *_env, jobject _this, jint zNear, jint zFar) { 905a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich glDepthRangexOES( 906a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich (GLclampx)zNear, 907a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich (GLclampx)zFar 908a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich ); 90927f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich} 91027f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich 91127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glFogxOES ( GLenum pname, GLfixed param ) */ 91227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void 91327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glFogxOES__II 91427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich (JNIEnv *_env, jobject _this, jint pname, jint param) { 915a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich glFogxOES( 916a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich (GLenum)pname, 917a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich (GLfixed)param 918a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich ); 91927f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich} 92027f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich 92127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glFogxvOES ( GLenum pname, const GLfixed *params ) */ 92227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void 92327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glFogxvOES__I_3II 92427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich (JNIEnv *_env, jobject _this, jint pname, jintArray params_ref, jint offset) { 9252545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer jint _exception = 0; 9262ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian const char * _exceptionType = NULL; 9272ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian const char * _exceptionMessage = NULL; 928a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich GLfixed *params_base = (GLfixed *) 0; 929a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich jint _remaining; 930a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich GLfixed *params = (GLfixed *) 0; 931a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich 932a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich if (!params_ref) { 9332545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exception = 1; 9342545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exceptionType = "java/lang/IllegalArgumentException"; 9352545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exceptionMessage = "params == null"; 936a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich goto exit; 937a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich } 938a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich if (offset < 0) { 9392545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exception = 1; 9402545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exceptionType = "java/lang/IllegalArgumentException"; 9412545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exceptionMessage = "offset < 0"; 942a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich goto exit; 943a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich } 944a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich _remaining = _env->GetArrayLength(params_ref) - offset; 945a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich params_base = (GLfixed *) 946a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich _env->GetPrimitiveArrayCritical(params_ref, (jboolean *)0); 947a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich params = params_base + offset; 948a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich 949a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich glFogxvOES( 950a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich (GLenum)pname, 951a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich (GLfixed *)params 952a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich ); 953a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich 954a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevichexit: 955a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich if (params_base) { 956a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich _env->ReleasePrimitiveArrayCritical(params_ref, params_base, 957a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich JNI_ABORT); 958a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich } 9592545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer if (_exception) { 9602545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer jniThrowException(_env, _exceptionType, _exceptionMessage); 9612545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer } 96227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich} 96327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich 96427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glFogxvOES ( GLenum pname, const GLfixed *params ) */ 96527f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void 96627f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glFogxvOES__ILjava_nio_IntBuffer_2 96727f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich (JNIEnv *_env, jobject _this, jint pname, jobject params_buf) { 968a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich jarray _array = (jarray) 0; 96917045a16575ece34cfadb63da4791f115625df78Thomas Tafertshofer jint _bufferOffset = (jint) 0; 970a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich jint _remaining; 971a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich GLfixed *params = (GLfixed *) 0; 972a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich 97317045a16575ece34cfadb63da4791f115625df78Thomas Tafertshofer params = (GLfixed *)getPointer(_env, params_buf, &_array, &_remaining, &_bufferOffset); 97417045a16575ece34cfadb63da4791f115625df78Thomas Tafertshofer if (params == NULL) { 97517045a16575ece34cfadb63da4791f115625df78Thomas Tafertshofer char * _paramsBase = (char *)_env->GetPrimitiveArrayCritical(_array, (jboolean *) 0); 97617045a16575ece34cfadb63da4791f115625df78Thomas Tafertshofer params = (GLfixed *) (_paramsBase + _bufferOffset); 97717045a16575ece34cfadb63da4791f115625df78Thomas Tafertshofer } 978a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich glFogxvOES( 979a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich (GLenum)pname, 980a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich (GLfixed *)params 981a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich ); 982a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich if (_array) { 983a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich releasePointer(_env, _array, params, JNI_FALSE); 984a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich } 98527f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich} 98627f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich 98727f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glFrustumxOES ( GLfixed left, GLfixed right, GLfixed bottom, GLfixed top, GLfixed zNear, GLfixed zFar ) */ 98827f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void 98927f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glFrustumxOES__IIIIII 99027f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich (JNIEnv *_env, jobject _this, jint left, jint right, jint bottom, jint top, jint zNear, jint zFar) { 991a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich glFrustumxOES( 992a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich (GLfixed)left, 993a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich (GLfixed)right, 994a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich (GLfixed)bottom, 995a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich (GLfixed)top, 996a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich (GLfixed)zNear, 997a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich (GLfixed)zFar 998a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich ); 99927f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich} 100027f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich 100127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glGetClipPlanexOES ( GLenum pname, GLfixed *eqn ) */ 100227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void 100327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glGetClipPlanexOES__I_3II 100427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich (JNIEnv *_env, jobject _this, jint pname, jintArray eqn_ref, jint offset) { 1005a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich jint _exception = 0; 10062ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian const char * _exceptionType = NULL; 10072ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian const char * _exceptionMessage = NULL; 1008a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich GLfixed *eqn_base = (GLfixed *) 0; 1009a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich jint _remaining; 1010a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich GLfixed *eqn = (GLfixed *) 0; 1011a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich 1012a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich if (!eqn_ref) { 1013a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich _exception = 1; 10142545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exceptionType = "java/lang/IllegalArgumentException"; 10152545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exceptionMessage = "eqn == null"; 1016a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich goto exit; 1017a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich } 1018a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich if (offset < 0) { 1019a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich _exception = 1; 10202545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exceptionType = "java/lang/IllegalArgumentException"; 10212545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exceptionMessage = "offset < 0"; 1022a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich goto exit; 1023a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich } 1024a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich _remaining = _env->GetArrayLength(eqn_ref) - offset; 1025a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich if (_remaining < 4) { 1026a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich _exception = 1; 10272545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exceptionType = "java/lang/IllegalArgumentException"; 10282545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exceptionMessage = "length - offset < 4 < needed"; 1029a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich goto exit; 1030a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich } 1031a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich eqn_base = (GLfixed *) 1032a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich _env->GetPrimitiveArrayCritical(eqn_ref, (jboolean *)0); 1033a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich eqn = eqn_base + offset; 1034a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich 1035a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich glGetClipPlanexOES( 1036a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich (GLenum)pname, 1037a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich (GLfixed *)eqn 1038a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich ); 1039a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich 1040a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevichexit: 1041a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich if (eqn_base) { 1042a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich _env->ReleasePrimitiveArrayCritical(eqn_ref, eqn_base, 1043a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich _exception ? JNI_ABORT: 0); 1044a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich } 10452545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer if (_exception) { 10462545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer jniThrowException(_env, _exceptionType, _exceptionMessage); 10472545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer } 104827f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich} 104927f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich 105027f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glGetClipPlanexOES ( GLenum pname, GLfixed *eqn ) */ 105127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void 105227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glGetClipPlanexOES__ILjava_nio_IntBuffer_2 105327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich (JNIEnv *_env, jobject _this, jint pname, jobject eqn_buf) { 1054a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich jint _exception = 0; 10552ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian const char * _exceptionType = NULL; 10562ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian const char * _exceptionMessage = NULL; 1057a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich jarray _array = (jarray) 0; 105817045a16575ece34cfadb63da4791f115625df78Thomas Tafertshofer jint _bufferOffset = (jint) 0; 1059a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich jint _remaining; 1060a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich GLfixed *eqn = (GLfixed *) 0; 1061a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich 106217045a16575ece34cfadb63da4791f115625df78Thomas Tafertshofer eqn = (GLfixed *)getPointer(_env, eqn_buf, &_array, &_remaining, &_bufferOffset); 1063a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich if (_remaining < 4) { 1064a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich _exception = 1; 10652545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exceptionType = "java/lang/IllegalArgumentException"; 10662545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exceptionMessage = "remaining() < 4 < needed"; 1067a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich goto exit; 1068a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich } 106917045a16575ece34cfadb63da4791f115625df78Thomas Tafertshofer if (eqn == NULL) { 107017045a16575ece34cfadb63da4791f115625df78Thomas Tafertshofer char * _eqnBase = (char *)_env->GetPrimitiveArrayCritical(_array, (jboolean *) 0); 107117045a16575ece34cfadb63da4791f115625df78Thomas Tafertshofer eqn = (GLfixed *) (_eqnBase + _bufferOffset); 107217045a16575ece34cfadb63da4791f115625df78Thomas Tafertshofer } 1073a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich glGetClipPlanexOES( 1074a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich (GLenum)pname, 1075a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich (GLfixed *)eqn 1076a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich ); 1077a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich 1078a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevichexit: 1079a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich if (_array) { 1080a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich releasePointer(_env, _array, eqn, _exception ? JNI_FALSE : JNI_TRUE); 1081a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich } 10822545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer if (_exception) { 10832545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer jniThrowException(_env, _exceptionType, _exceptionMessage); 10842545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer } 108527f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich} 108627f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich 108727f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glGetFixedvOES ( GLenum pname, GLfixed *params ) */ 108827f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void 108927f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glGetFixedvOES__I_3II 109027f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich (JNIEnv *_env, jobject _this, jint pname, jintArray params_ref, jint offset) { 1091a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich jint _exception = 0; 10922ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian const char * _exceptionType = NULL; 10932ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian const char * _exceptionMessage = NULL; 1094a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich GLfixed *params_base = (GLfixed *) 0; 1095a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich jint _remaining; 1096a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich GLfixed *params = (GLfixed *) 0; 1097a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich 1098a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich if (!params_ref) { 1099a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich _exception = 1; 11002545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exceptionType = "java/lang/IllegalArgumentException"; 11012545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exceptionMessage = "params == null"; 1102a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich goto exit; 1103a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich } 1104a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich if (offset < 0) { 1105a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich _exception = 1; 11062545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exceptionType = "java/lang/IllegalArgumentException"; 11072545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exceptionMessage = "offset < 0"; 1108a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich goto exit; 1109a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich } 1110a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich _remaining = _env->GetArrayLength(params_ref) - offset; 1111a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich params_base = (GLfixed *) 1112a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich _env->GetPrimitiveArrayCritical(params_ref, (jboolean *)0); 1113a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich params = params_base + offset; 1114a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich 1115a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich glGetFixedvOES( 1116a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich (GLenum)pname, 1117a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich (GLfixed *)params 1118a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich ); 1119a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich 1120a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevichexit: 1121a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich if (params_base) { 1122a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich _env->ReleasePrimitiveArrayCritical(params_ref, params_base, 1123a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich _exception ? JNI_ABORT: 0); 1124a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich } 11252545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer if (_exception) { 11262545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer jniThrowException(_env, _exceptionType, _exceptionMessage); 11272545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer } 112827f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich} 112927f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich 113027f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glGetFixedvOES ( GLenum pname, GLfixed *params ) */ 113127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void 113227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glGetFixedvOES__ILjava_nio_IntBuffer_2 113327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich (JNIEnv *_env, jobject _this, jint pname, jobject params_buf) { 1134a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich jarray _array = (jarray) 0; 113517045a16575ece34cfadb63da4791f115625df78Thomas Tafertshofer jint _bufferOffset = (jint) 0; 1136a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich jint _remaining; 1137a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich GLfixed *params = (GLfixed *) 0; 1138a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich 113917045a16575ece34cfadb63da4791f115625df78Thomas Tafertshofer params = (GLfixed *)getPointer(_env, params_buf, &_array, &_remaining, &_bufferOffset); 114017045a16575ece34cfadb63da4791f115625df78Thomas Tafertshofer if (params == NULL) { 114117045a16575ece34cfadb63da4791f115625df78Thomas Tafertshofer char * _paramsBase = (char *)_env->GetPrimitiveArrayCritical(_array, (jboolean *) 0); 114217045a16575ece34cfadb63da4791f115625df78Thomas Tafertshofer params = (GLfixed *) (_paramsBase + _bufferOffset); 114317045a16575ece34cfadb63da4791f115625df78Thomas Tafertshofer } 1144a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich glGetFixedvOES( 1145a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich (GLenum)pname, 1146a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich (GLfixed *)params 1147a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich ); 1148a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich if (_array) { 11492545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer releasePointer(_env, _array, params, JNI_TRUE); 1150a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich } 115127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich} 115227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich 115327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glGetLightxvOES ( GLenum light, GLenum pname, GLfixed *params ) */ 115427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void 115527f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glGetLightxvOES__II_3II 115627f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich (JNIEnv *_env, jobject _this, jint light, jint pname, jintArray params_ref, jint offset) { 1157a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich jint _exception = 0; 11582ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian const char * _exceptionType = NULL; 11592ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian const char * _exceptionMessage = NULL; 1160a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich GLfixed *params_base = (GLfixed *) 0; 1161a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich jint _remaining; 1162a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich GLfixed *params = (GLfixed *) 0; 1163a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich 1164a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich if (!params_ref) { 1165a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich _exception = 1; 11662545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exceptionType = "java/lang/IllegalArgumentException"; 11672545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exceptionMessage = "params == null"; 1168a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich goto exit; 1169a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich } 1170a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich if (offset < 0) { 1171a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich _exception = 1; 11722545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exceptionType = "java/lang/IllegalArgumentException"; 11732545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exceptionMessage = "offset < 0"; 1174a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich goto exit; 1175a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich } 1176a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich _remaining = _env->GetArrayLength(params_ref) - offset; 1177a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich params_base = (GLfixed *) 1178a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich _env->GetPrimitiveArrayCritical(params_ref, (jboolean *)0); 1179a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich params = params_base + offset; 1180a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich 1181a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich glGetLightxvOES( 1182a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich (GLenum)light, 1183a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich (GLenum)pname, 1184a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich (GLfixed *)params 1185a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich ); 1186a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich 1187a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevichexit: 1188a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich if (params_base) { 1189a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich _env->ReleasePrimitiveArrayCritical(params_ref, params_base, 1190a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich _exception ? JNI_ABORT: 0); 1191a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich } 11922545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer if (_exception) { 11932545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer jniThrowException(_env, _exceptionType, _exceptionMessage); 11942545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer } 119527f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich} 119627f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich 119727f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glGetLightxvOES ( GLenum light, GLenum pname, GLfixed *params ) */ 119827f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void 119927f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glGetLightxvOES__IILjava_nio_IntBuffer_2 120027f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich (JNIEnv *_env, jobject _this, jint light, jint pname, jobject params_buf) { 1201a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich jarray _array = (jarray) 0; 120217045a16575ece34cfadb63da4791f115625df78Thomas Tafertshofer jint _bufferOffset = (jint) 0; 1203a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich jint _remaining; 1204a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich GLfixed *params = (GLfixed *) 0; 1205a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich 120617045a16575ece34cfadb63da4791f115625df78Thomas Tafertshofer params = (GLfixed *)getPointer(_env, params_buf, &_array, &_remaining, &_bufferOffset); 120717045a16575ece34cfadb63da4791f115625df78Thomas Tafertshofer if (params == NULL) { 120817045a16575ece34cfadb63da4791f115625df78Thomas Tafertshofer char * _paramsBase = (char *)_env->GetPrimitiveArrayCritical(_array, (jboolean *) 0); 120917045a16575ece34cfadb63da4791f115625df78Thomas Tafertshofer params = (GLfixed *) (_paramsBase + _bufferOffset); 121017045a16575ece34cfadb63da4791f115625df78Thomas Tafertshofer } 1211a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich glGetLightxvOES( 1212a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich (GLenum)light, 1213a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich (GLenum)pname, 1214a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich (GLfixed *)params 1215a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich ); 1216a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich if (_array) { 12172545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer releasePointer(_env, _array, params, JNI_TRUE); 1218a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich } 121927f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich} 122027f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich 122127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glGetMaterialxvOES ( GLenum face, GLenum pname, GLfixed *params ) */ 122227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void 122327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glGetMaterialxvOES__II_3II 122427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich (JNIEnv *_env, jobject _this, jint face, jint pname, jintArray params_ref, jint offset) { 1225a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich jint _exception = 0; 12262ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian const char * _exceptionType = NULL; 12272ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian const char * _exceptionMessage = NULL; 1228a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich GLfixed *params_base = (GLfixed *) 0; 1229a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich jint _remaining; 1230a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich GLfixed *params = (GLfixed *) 0; 1231a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich 1232a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich if (!params_ref) { 1233a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich _exception = 1; 12342545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exceptionType = "java/lang/IllegalArgumentException"; 12352545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exceptionMessage = "params == null"; 1236a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich goto exit; 1237a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich } 1238a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich if (offset < 0) { 1239a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich _exception = 1; 12402545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exceptionType = "java/lang/IllegalArgumentException"; 12412545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exceptionMessage = "offset < 0"; 1242a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich goto exit; 1243a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich } 1244a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich _remaining = _env->GetArrayLength(params_ref) - offset; 1245a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich params_base = (GLfixed *) 1246a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich _env->GetPrimitiveArrayCritical(params_ref, (jboolean *)0); 1247a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich params = params_base + offset; 1248a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich 1249a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich glGetMaterialxvOES( 1250a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich (GLenum)face, 1251a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich (GLenum)pname, 1252a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich (GLfixed *)params 1253a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich ); 1254a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich 1255a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevichexit: 1256a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich if (params_base) { 1257a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich _env->ReleasePrimitiveArrayCritical(params_ref, params_base, 1258a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich _exception ? JNI_ABORT: 0); 1259a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich } 12602545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer if (_exception) { 12612545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer jniThrowException(_env, _exceptionType, _exceptionMessage); 12622545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer } 126327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich} 126427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich 126527f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glGetMaterialxvOES ( GLenum face, GLenum pname, GLfixed *params ) */ 126627f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void 126727f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glGetMaterialxvOES__IILjava_nio_IntBuffer_2 126827f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich (JNIEnv *_env, jobject _this, jint face, jint pname, jobject params_buf) { 1269a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich jarray _array = (jarray) 0; 127017045a16575ece34cfadb63da4791f115625df78Thomas Tafertshofer jint _bufferOffset = (jint) 0; 1271a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich jint _remaining; 1272a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich GLfixed *params = (GLfixed *) 0; 1273a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich 127417045a16575ece34cfadb63da4791f115625df78Thomas Tafertshofer params = (GLfixed *)getPointer(_env, params_buf, &_array, &_remaining, &_bufferOffset); 127517045a16575ece34cfadb63da4791f115625df78Thomas Tafertshofer if (params == NULL) { 127617045a16575ece34cfadb63da4791f115625df78Thomas Tafertshofer char * _paramsBase = (char *)_env->GetPrimitiveArrayCritical(_array, (jboolean *) 0); 127717045a16575ece34cfadb63da4791f115625df78Thomas Tafertshofer params = (GLfixed *) (_paramsBase + _bufferOffset); 127817045a16575ece34cfadb63da4791f115625df78Thomas Tafertshofer } 1279a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich glGetMaterialxvOES( 1280a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich (GLenum)face, 1281a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich (GLenum)pname, 1282a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich (GLfixed *)params 1283a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich ); 1284a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich if (_array) { 12852545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer releasePointer(_env, _array, params, JNI_TRUE); 1286a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich } 128727f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich} 128827f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich 128927f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glGetTexEnvxvOES ( GLenum env, GLenum pname, GLfixed *params ) */ 129027f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void 129127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glGetTexEnvxvOES__II_3II 129227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich (JNIEnv *_env, jobject _this, jint env, jint pname, jintArray params_ref, jint offset) { 1293a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich jint _exception = 0; 12942ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian const char * _exceptionType = NULL; 12952ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian const char * _exceptionMessage = NULL; 1296a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich GLfixed *params_base = (GLfixed *) 0; 1297a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich jint _remaining; 1298a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich GLfixed *params = (GLfixed *) 0; 1299a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich 1300a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich if (!params_ref) { 1301a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich _exception = 1; 13022545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exceptionType = "java/lang/IllegalArgumentException"; 13032545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exceptionMessage = "params == null"; 1304a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich goto exit; 1305a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich } 1306a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich if (offset < 0) { 1307a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich _exception = 1; 13082545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exceptionType = "java/lang/IllegalArgumentException"; 13092545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exceptionMessage = "offset < 0"; 1310a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich goto exit; 1311a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich } 1312a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich _remaining = _env->GetArrayLength(params_ref) - offset; 1313a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich params_base = (GLfixed *) 1314a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich _env->GetPrimitiveArrayCritical(params_ref, (jboolean *)0); 1315a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich params = params_base + offset; 1316a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich 1317a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich glGetTexEnvxvOES( 1318a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich (GLenum)env, 1319a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich (GLenum)pname, 1320a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich (GLfixed *)params 1321a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich ); 1322a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich 1323a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevichexit: 1324a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich if (params_base) { 1325a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich _env->ReleasePrimitiveArrayCritical(params_ref, params_base, 1326a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich _exception ? JNI_ABORT: 0); 1327a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich } 13282545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer if (_exception) { 13292545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer jniThrowException(_env, _exceptionType, _exceptionMessage); 13302545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer } 133127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich} 133227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich 133327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glGetTexEnvxvOES ( GLenum env, GLenum pname, GLfixed *params ) */ 133427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void 133527f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glGetTexEnvxvOES__IILjava_nio_IntBuffer_2 133627f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich (JNIEnv *_env, jobject _this, jint env, jint pname, jobject params_buf) { 1337a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich jarray _array = (jarray) 0; 133817045a16575ece34cfadb63da4791f115625df78Thomas Tafertshofer jint _bufferOffset = (jint) 0; 1339a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich jint _remaining; 1340a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich GLfixed *params = (GLfixed *) 0; 1341a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich 134217045a16575ece34cfadb63da4791f115625df78Thomas Tafertshofer params = (GLfixed *)getPointer(_env, params_buf, &_array, &_remaining, &_bufferOffset); 134317045a16575ece34cfadb63da4791f115625df78Thomas Tafertshofer if (params == NULL) { 134417045a16575ece34cfadb63da4791f115625df78Thomas Tafertshofer char * _paramsBase = (char *)_env->GetPrimitiveArrayCritical(_array, (jboolean *) 0); 134517045a16575ece34cfadb63da4791f115625df78Thomas Tafertshofer params = (GLfixed *) (_paramsBase + _bufferOffset); 134617045a16575ece34cfadb63da4791f115625df78Thomas Tafertshofer } 1347a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich glGetTexEnvxvOES( 1348a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich (GLenum)env, 1349a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich (GLenum)pname, 1350a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich (GLfixed *)params 1351a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich ); 1352a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich if (_array) { 13532545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer releasePointer(_env, _array, params, JNI_TRUE); 1354a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich } 135527f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich} 135627f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich 135727f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glGetTexParameterxvOES ( GLenum target, GLenum pname, GLfixed *params ) */ 135827f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void 135927f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glGetTexParameterxvOES__II_3II 136027f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich (JNIEnv *_env, jobject _this, jint target, jint pname, jintArray params_ref, jint offset) { 1361a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich jint _exception = 0; 13622ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian const char * _exceptionType = NULL; 13632ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian const char * _exceptionMessage = NULL; 1364a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich GLfixed *params_base = (GLfixed *) 0; 1365a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich jint _remaining; 1366a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich GLfixed *params = (GLfixed *) 0; 1367a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich 1368a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich if (!params_ref) { 1369a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich _exception = 1; 13702545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exceptionType = "java/lang/IllegalArgumentException"; 13712545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exceptionMessage = "params == null"; 1372a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich goto exit; 1373a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich } 1374a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich if (offset < 0) { 1375a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich _exception = 1; 13762545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exceptionType = "java/lang/IllegalArgumentException"; 13772545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exceptionMessage = "offset < 0"; 1378a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich goto exit; 1379a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich } 1380a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich _remaining = _env->GetArrayLength(params_ref) - offset; 1381a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich params_base = (GLfixed *) 1382a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich _env->GetPrimitiveArrayCritical(params_ref, (jboolean *)0); 1383a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich params = params_base + offset; 1384a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich 1385a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich glGetTexParameterxvOES( 1386a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich (GLenum)target, 1387a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich (GLenum)pname, 1388a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich (GLfixed *)params 1389a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich ); 1390a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich 1391a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevichexit: 1392a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich if (params_base) { 1393a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich _env->ReleasePrimitiveArrayCritical(params_ref, params_base, 1394a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich _exception ? JNI_ABORT: 0); 1395a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich } 13962545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer if (_exception) { 13972545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer jniThrowException(_env, _exceptionType, _exceptionMessage); 13982545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer } 139927f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich} 140027f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich 140127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glGetTexParameterxvOES ( GLenum target, GLenum pname, GLfixed *params ) */ 140227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void 140327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glGetTexParameterxvOES__IILjava_nio_IntBuffer_2 140427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich (JNIEnv *_env, jobject _this, jint target, jint pname, jobject params_buf) { 1405a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich jarray _array = (jarray) 0; 140617045a16575ece34cfadb63da4791f115625df78Thomas Tafertshofer jint _bufferOffset = (jint) 0; 1407a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich jint _remaining; 1408a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich GLfixed *params = (GLfixed *) 0; 1409a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich 141017045a16575ece34cfadb63da4791f115625df78Thomas Tafertshofer params = (GLfixed *)getPointer(_env, params_buf, &_array, &_remaining, &_bufferOffset); 141117045a16575ece34cfadb63da4791f115625df78Thomas Tafertshofer if (params == NULL) { 141217045a16575ece34cfadb63da4791f115625df78Thomas Tafertshofer char * _paramsBase = (char *)_env->GetPrimitiveArrayCritical(_array, (jboolean *) 0); 141317045a16575ece34cfadb63da4791f115625df78Thomas Tafertshofer params = (GLfixed *) (_paramsBase + _bufferOffset); 141417045a16575ece34cfadb63da4791f115625df78Thomas Tafertshofer } 1415a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich glGetTexParameterxvOES( 1416a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich (GLenum)target, 1417a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich (GLenum)pname, 1418a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich (GLfixed *)params 1419a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich ); 1420a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich if (_array) { 14212545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer releasePointer(_env, _array, params, JNI_TRUE); 1422a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich } 142327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich} 142427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich 142527f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glLightModelxOES ( GLenum pname, GLfixed param ) */ 142627f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void 142727f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glLightModelxOES__II 142827f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich (JNIEnv *_env, jobject _this, jint pname, jint param) { 1429a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich glLightModelxOES( 1430a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich (GLenum)pname, 1431a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich (GLfixed)param 1432a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich ); 143327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich} 143427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich 143527f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glLightModelxvOES ( GLenum pname, const GLfixed *params ) */ 143627f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void 143727f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glLightModelxvOES__I_3II 143827f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich (JNIEnv *_env, jobject _this, jint pname, jintArray params_ref, jint offset) { 14392545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer jint _exception = 0; 14402ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian const char * _exceptionType = NULL; 14412ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian const char * _exceptionMessage = NULL; 1442a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich GLfixed *params_base = (GLfixed *) 0; 1443a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich jint _remaining; 1444a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich GLfixed *params = (GLfixed *) 0; 1445a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich 1446a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich if (!params_ref) { 14472545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exception = 1; 14482545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exceptionType = "java/lang/IllegalArgumentException"; 14492545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exceptionMessage = "params == null"; 1450a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich goto exit; 1451a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich } 1452a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich if (offset < 0) { 14532545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exception = 1; 14542545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exceptionType = "java/lang/IllegalArgumentException"; 14552545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exceptionMessage = "offset < 0"; 1456a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich goto exit; 1457a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich } 1458a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich _remaining = _env->GetArrayLength(params_ref) - offset; 1459a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich params_base = (GLfixed *) 1460a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich _env->GetPrimitiveArrayCritical(params_ref, (jboolean *)0); 1461a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich params = params_base + offset; 1462a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich 1463a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich glLightModelxvOES( 1464a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich (GLenum)pname, 1465a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich (GLfixed *)params 1466a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich ); 1467a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich 1468a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevichexit: 1469a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich if (params_base) { 1470a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich _env->ReleasePrimitiveArrayCritical(params_ref, params_base, 1471a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich JNI_ABORT); 1472a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich } 14732545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer if (_exception) { 14742545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer jniThrowException(_env, _exceptionType, _exceptionMessage); 14752545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer } 147627f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich} 147727f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich 147827f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glLightModelxvOES ( GLenum pname, const GLfixed *params ) */ 147927f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void 148027f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glLightModelxvOES__ILjava_nio_IntBuffer_2 148127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich (JNIEnv *_env, jobject _this, jint pname, jobject params_buf) { 1482a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich jarray _array = (jarray) 0; 148317045a16575ece34cfadb63da4791f115625df78Thomas Tafertshofer jint _bufferOffset = (jint) 0; 1484a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich jint _remaining; 1485a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich GLfixed *params = (GLfixed *) 0; 1486a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich 148717045a16575ece34cfadb63da4791f115625df78Thomas Tafertshofer params = (GLfixed *)getPointer(_env, params_buf, &_array, &_remaining, &_bufferOffset); 148817045a16575ece34cfadb63da4791f115625df78Thomas Tafertshofer if (params == NULL) { 148917045a16575ece34cfadb63da4791f115625df78Thomas Tafertshofer char * _paramsBase = (char *)_env->GetPrimitiveArrayCritical(_array, (jboolean *) 0); 149017045a16575ece34cfadb63da4791f115625df78Thomas Tafertshofer params = (GLfixed *) (_paramsBase + _bufferOffset); 149117045a16575ece34cfadb63da4791f115625df78Thomas Tafertshofer } 1492a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich glLightModelxvOES( 1493a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich (GLenum)pname, 1494a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich (GLfixed *)params 1495a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich ); 1496a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich if (_array) { 1497a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich releasePointer(_env, _array, params, JNI_FALSE); 1498a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich } 149927f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich} 150027f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich 150127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glLightxOES ( GLenum light, GLenum pname, GLfixed param ) */ 150227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void 150327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glLightxOES__III 150427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich (JNIEnv *_env, jobject _this, jint light, jint pname, jint param) { 1505a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich glLightxOES( 1506a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich (GLenum)light, 1507a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich (GLenum)pname, 1508a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich (GLfixed)param 1509a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich ); 151027f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich} 151127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich 151227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glLightxvOES ( GLenum light, GLenum pname, const GLfixed *params ) */ 151327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void 151427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glLightxvOES__II_3II 151527f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich (JNIEnv *_env, jobject _this, jint light, jint pname, jintArray params_ref, jint offset) { 15162545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer jint _exception = 0; 15172ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian const char * _exceptionType = NULL; 15182ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian const char * _exceptionMessage = NULL; 1519a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich GLfixed *params_base = (GLfixed *) 0; 1520a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich jint _remaining; 1521a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich GLfixed *params = (GLfixed *) 0; 1522a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich 1523a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich if (!params_ref) { 15242545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exception = 1; 15252545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exceptionType = "java/lang/IllegalArgumentException"; 15262545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exceptionMessage = "params == null"; 1527a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich goto exit; 1528a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich } 1529a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich if (offset < 0) { 15302545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exception = 1; 15312545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exceptionType = "java/lang/IllegalArgumentException"; 15322545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exceptionMessage = "offset < 0"; 1533a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich goto exit; 1534a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich } 1535a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich _remaining = _env->GetArrayLength(params_ref) - offset; 1536a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich params_base = (GLfixed *) 1537a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich _env->GetPrimitiveArrayCritical(params_ref, (jboolean *)0); 1538a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich params = params_base + offset; 1539a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich 1540a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich glLightxvOES( 1541a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich (GLenum)light, 1542a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich (GLenum)pname, 1543a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich (GLfixed *)params 1544a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich ); 1545a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich 1546a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevichexit: 1547a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich if (params_base) { 1548a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich _env->ReleasePrimitiveArrayCritical(params_ref, params_base, 1549a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich JNI_ABORT); 1550a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich } 15512545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer if (_exception) { 15522545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer jniThrowException(_env, _exceptionType, _exceptionMessage); 15532545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer } 155427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich} 155527f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich 155627f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glLightxvOES ( GLenum light, GLenum pname, const GLfixed *params ) */ 155727f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void 155827f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glLightxvOES__IILjava_nio_IntBuffer_2 155927f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich (JNIEnv *_env, jobject _this, jint light, jint pname, jobject params_buf) { 1560a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich jarray _array = (jarray) 0; 156117045a16575ece34cfadb63da4791f115625df78Thomas Tafertshofer jint _bufferOffset = (jint) 0; 1562a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich jint _remaining; 1563a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich GLfixed *params = (GLfixed *) 0; 1564a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich 156517045a16575ece34cfadb63da4791f115625df78Thomas Tafertshofer params = (GLfixed *)getPointer(_env, params_buf, &_array, &_remaining, &_bufferOffset); 156617045a16575ece34cfadb63da4791f115625df78Thomas Tafertshofer if (params == NULL) { 156717045a16575ece34cfadb63da4791f115625df78Thomas Tafertshofer char * _paramsBase = (char *)_env->GetPrimitiveArrayCritical(_array, (jboolean *) 0); 156817045a16575ece34cfadb63da4791f115625df78Thomas Tafertshofer params = (GLfixed *) (_paramsBase + _bufferOffset); 156917045a16575ece34cfadb63da4791f115625df78Thomas Tafertshofer } 1570a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich glLightxvOES( 1571a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich (GLenum)light, 1572a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich (GLenum)pname, 1573a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich (GLfixed *)params 1574a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich ); 1575a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich if (_array) { 1576a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich releasePointer(_env, _array, params, JNI_FALSE); 1577a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich } 157827f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich} 157927f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich 158027f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glLineWidthxOES ( GLfixed width ) */ 158127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void 158227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glLineWidthxOES__I 158327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich (JNIEnv *_env, jobject _this, jint width) { 1584a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich glLineWidthxOES( 1585a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich (GLfixed)width 1586a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich ); 158727f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich} 158827f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich 158927f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glLoadMatrixxOES ( const GLfixed *m ) */ 159027f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void 159127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glLoadMatrixxOES___3II 159227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich (JNIEnv *_env, jobject _this, jintArray m_ref, jint offset) { 15932545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer jint _exception = 0; 15942ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian const char * _exceptionType = NULL; 15952ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian const char * _exceptionMessage = NULL; 1596a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich GLfixed *m_base = (GLfixed *) 0; 1597a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich jint _remaining; 1598a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich GLfixed *m = (GLfixed *) 0; 159927f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich 1600a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich if (!m_ref) { 16012545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exception = 1; 16022545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exceptionType = "java/lang/IllegalArgumentException"; 16032545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exceptionMessage = "m == null"; 1604a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich goto exit; 1605a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich } 1606a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich if (offset < 0) { 16072545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exception = 1; 16082545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exceptionType = "java/lang/IllegalArgumentException"; 16092545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exceptionMessage = "offset < 0"; 1610a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich goto exit; 1611a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich } 1612a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich _remaining = _env->GetArrayLength(m_ref) - offset; 1613a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich m_base = (GLfixed *) 1614a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich _env->GetPrimitiveArrayCritical(m_ref, (jboolean *)0); 1615a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich m = m_base + offset; 1616a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich 1617a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich glLoadMatrixxOES( 1618a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich (GLfixed *)m 1619a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich ); 1620a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich 1621a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevichexit: 1622a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich if (m_base) { 1623a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich _env->ReleasePrimitiveArrayCritical(m_ref, m_base, 1624a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich JNI_ABORT); 1625a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich } 16262545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer if (_exception) { 16272545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer jniThrowException(_env, _exceptionType, _exceptionMessage); 16282545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer } 1629a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich} 1630a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich 1631a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich/* void glLoadMatrixxOES ( const GLfixed *m ) */ 1632a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevichstatic void 163327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glLoadMatrixxOES__Ljava_nio_IntBuffer_2 163427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich (JNIEnv *_env, jobject _this, jobject m_buf) { 1635a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich jarray _array = (jarray) 0; 163617045a16575ece34cfadb63da4791f115625df78Thomas Tafertshofer jint _bufferOffset = (jint) 0; 1637a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich jint _remaining; 1638a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich GLfixed *m = (GLfixed *) 0; 1639a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich 164017045a16575ece34cfadb63da4791f115625df78Thomas Tafertshofer m = (GLfixed *)getPointer(_env, m_buf, &_array, &_remaining, &_bufferOffset); 164117045a16575ece34cfadb63da4791f115625df78Thomas Tafertshofer if (m == NULL) { 164217045a16575ece34cfadb63da4791f115625df78Thomas Tafertshofer char * _mBase = (char *)_env->GetPrimitiveArrayCritical(_array, (jboolean *) 0); 164317045a16575ece34cfadb63da4791f115625df78Thomas Tafertshofer m = (GLfixed *) (_mBase + _bufferOffset); 164417045a16575ece34cfadb63da4791f115625df78Thomas Tafertshofer } 1645a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich glLoadMatrixxOES( 1646a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich (GLfixed *)m 1647a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich ); 1648a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich if (_array) { 1649a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich releasePointer(_env, _array, m, JNI_FALSE); 1650a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich } 165127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich} 165227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich 165327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glMaterialxOES ( GLenum face, GLenum pname, GLfixed param ) */ 165427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void 165527f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glMaterialxOES__III 165627f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich (JNIEnv *_env, jobject _this, jint face, jint pname, jint param) { 1657a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich glMaterialxOES( 1658a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich (GLenum)face, 1659a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich (GLenum)pname, 1660a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich (GLfixed)param 1661a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich ); 166227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich} 166327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich 166427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glMaterialxvOES ( GLenum face, GLenum pname, const GLfixed *params ) */ 166527f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void 166627f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glMaterialxvOES__II_3II 166727f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich (JNIEnv *_env, jobject _this, jint face, jint pname, jintArray params_ref, jint offset) { 16682545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer jint _exception = 0; 16692ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian const char * _exceptionType = NULL; 16702ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian const char * _exceptionMessage = NULL; 1671a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich GLfixed *params_base = (GLfixed *) 0; 1672a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich jint _remaining; 1673a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich GLfixed *params = (GLfixed *) 0; 1674a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich 1675a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich if (!params_ref) { 16762545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exception = 1; 16772545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exceptionType = "java/lang/IllegalArgumentException"; 16782545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exceptionMessage = "params == null"; 1679a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich goto exit; 1680a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich } 1681a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich if (offset < 0) { 16822545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exception = 1; 16832545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exceptionType = "java/lang/IllegalArgumentException"; 16842545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exceptionMessage = "offset < 0"; 1685a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich goto exit; 1686a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich } 1687a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich _remaining = _env->GetArrayLength(params_ref) - offset; 1688a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich params_base = (GLfixed *) 1689a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich _env->GetPrimitiveArrayCritical(params_ref, (jboolean *)0); 1690a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich params = params_base + offset; 1691a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich 1692a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich glMaterialxvOES( 1693a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich (GLenum)face, 1694a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich (GLenum)pname, 1695a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich (GLfixed *)params 1696a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich ); 1697a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich 1698a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevichexit: 1699a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich if (params_base) { 1700a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich _env->ReleasePrimitiveArrayCritical(params_ref, params_base, 1701a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich JNI_ABORT); 1702a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich } 17032545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer if (_exception) { 17042545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer jniThrowException(_env, _exceptionType, _exceptionMessage); 17052545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer } 170627f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich} 170727f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich 170827f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glMaterialxvOES ( GLenum face, GLenum pname, const GLfixed *params ) */ 170927f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void 171027f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glMaterialxvOES__IILjava_nio_IntBuffer_2 171127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich (JNIEnv *_env, jobject _this, jint face, jint pname, jobject params_buf) { 1712a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich jarray _array = (jarray) 0; 171317045a16575ece34cfadb63da4791f115625df78Thomas Tafertshofer jint _bufferOffset = (jint) 0; 1714a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich jint _remaining; 1715a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich GLfixed *params = (GLfixed *) 0; 1716a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich 171717045a16575ece34cfadb63da4791f115625df78Thomas Tafertshofer params = (GLfixed *)getPointer(_env, params_buf, &_array, &_remaining, &_bufferOffset); 171817045a16575ece34cfadb63da4791f115625df78Thomas Tafertshofer if (params == NULL) { 171917045a16575ece34cfadb63da4791f115625df78Thomas Tafertshofer char * _paramsBase = (char *)_env->GetPrimitiveArrayCritical(_array, (jboolean *) 0); 172017045a16575ece34cfadb63da4791f115625df78Thomas Tafertshofer params = (GLfixed *) (_paramsBase + _bufferOffset); 172117045a16575ece34cfadb63da4791f115625df78Thomas Tafertshofer } 1722a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich glMaterialxvOES( 1723a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich (GLenum)face, 1724a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich (GLenum)pname, 1725a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich (GLfixed *)params 1726a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich ); 1727a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich if (_array) { 1728a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich releasePointer(_env, _array, params, JNI_FALSE); 1729a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich } 173027f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich} 173127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich 173227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glMultMatrixxOES ( const GLfixed *m ) */ 173327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void 173427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glMultMatrixxOES___3II 173527f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich (JNIEnv *_env, jobject _this, jintArray m_ref, jint offset) { 17362545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer jint _exception = 0; 17372ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian const char * _exceptionType = NULL; 17382ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian const char * _exceptionMessage = NULL; 1739a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich GLfixed *m_base = (GLfixed *) 0; 1740a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich jint _remaining; 1741a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich GLfixed *m = (GLfixed *) 0; 1742a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich 1743a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich if (!m_ref) { 17442545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exception = 1; 17452545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exceptionType = "java/lang/IllegalArgumentException"; 17462545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exceptionMessage = "m == null"; 1747a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich goto exit; 1748a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich } 1749a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich if (offset < 0) { 17502545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exception = 1; 17512545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exceptionType = "java/lang/IllegalArgumentException"; 17522545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exceptionMessage = "offset < 0"; 1753a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich goto exit; 1754a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich } 1755a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich _remaining = _env->GetArrayLength(m_ref) - offset; 1756a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich m_base = (GLfixed *) 1757a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich _env->GetPrimitiveArrayCritical(m_ref, (jboolean *)0); 1758a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich m = m_base + offset; 1759a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich 1760a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich glMultMatrixxOES( 1761a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich (GLfixed *)m 1762a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich ); 1763a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich 1764a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevichexit: 1765a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich if (m_base) { 1766a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich _env->ReleasePrimitiveArrayCritical(m_ref, m_base, 1767a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich JNI_ABORT); 1768a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich } 17692545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer if (_exception) { 17702545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer jniThrowException(_env, _exceptionType, _exceptionMessage); 17712545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer } 177227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich} 177327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich 177427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glMultMatrixxOES ( const GLfixed *m ) */ 177527f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void 177627f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glMultMatrixxOES__Ljava_nio_IntBuffer_2 177727f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich (JNIEnv *_env, jobject _this, jobject m_buf) { 1778a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich jarray _array = (jarray) 0; 177917045a16575ece34cfadb63da4791f115625df78Thomas Tafertshofer jint _bufferOffset = (jint) 0; 1780a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich jint _remaining; 1781a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich GLfixed *m = (GLfixed *) 0; 1782a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich 178317045a16575ece34cfadb63da4791f115625df78Thomas Tafertshofer m = (GLfixed *)getPointer(_env, m_buf, &_array, &_remaining, &_bufferOffset); 178417045a16575ece34cfadb63da4791f115625df78Thomas Tafertshofer if (m == NULL) { 178517045a16575ece34cfadb63da4791f115625df78Thomas Tafertshofer char * _mBase = (char *)_env->GetPrimitiveArrayCritical(_array, (jboolean *) 0); 178617045a16575ece34cfadb63da4791f115625df78Thomas Tafertshofer m = (GLfixed *) (_mBase + _bufferOffset); 178717045a16575ece34cfadb63da4791f115625df78Thomas Tafertshofer } 1788a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich glMultMatrixxOES( 1789a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich (GLfixed *)m 1790a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich ); 1791a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich if (_array) { 1792a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich releasePointer(_env, _array, m, JNI_FALSE); 1793a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich } 179427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich} 179527f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich 179627f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glMultiTexCoord4xOES ( GLenum target, GLfixed s, GLfixed t, GLfixed r, GLfixed q ) */ 179727f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void 179827f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glMultiTexCoord4xOES__IIIII 179927f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich (JNIEnv *_env, jobject _this, jint target, jint s, jint t, jint r, jint q) { 1800a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich glMultiTexCoord4xOES( 1801a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich (GLenum)target, 1802a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich (GLfixed)s, 1803a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich (GLfixed)t, 1804a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich (GLfixed)r, 1805a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich (GLfixed)q 1806a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich ); 180727f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich} 180827f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich 180927f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glNormal3xOES ( GLfixed nx, GLfixed ny, GLfixed nz ) */ 181027f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void 181127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glNormal3xOES__III 181227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich (JNIEnv *_env, jobject _this, jint nx, jint ny, jint nz) { 1813a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich glNormal3xOES( 1814a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich (GLfixed)nx, 1815a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich (GLfixed)ny, 1816a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich (GLfixed)nz 1817a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich ); 181827f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich} 181927f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich 182027f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glOrthoxOES ( GLfixed left, GLfixed right, GLfixed bottom, GLfixed top, GLfixed zNear, GLfixed zFar ) */ 182127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void 182227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glOrthoxOES__IIIIII 182327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich (JNIEnv *_env, jobject _this, jint left, jint right, jint bottom, jint top, jint zNear, jint zFar) { 1824a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich glOrthoxOES( 1825a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich (GLfixed)left, 1826a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich (GLfixed)right, 1827a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich (GLfixed)bottom, 1828a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich (GLfixed)top, 1829a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich (GLfixed)zNear, 1830a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich (GLfixed)zFar 1831a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich ); 183227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich} 183327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich 183427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glPointParameterxOES ( GLenum pname, GLfixed param ) */ 183527f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void 183627f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glPointParameterxOES__II 183727f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich (JNIEnv *_env, jobject _this, jint pname, jint param) { 1838a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich glPointParameterxOES( 1839a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich (GLenum)pname, 1840a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich (GLfixed)param 1841a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich ); 184227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich} 184327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich 184427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glPointParameterxvOES ( GLenum pname, const GLfixed *params ) */ 184527f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void 184627f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glPointParameterxvOES__I_3II 184727f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich (JNIEnv *_env, jobject _this, jint pname, jintArray params_ref, jint offset) { 18482545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer jint _exception = 0; 18492ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian const char * _exceptionType = NULL; 18502ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian const char * _exceptionMessage = NULL; 1851a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich GLfixed *params_base = (GLfixed *) 0; 1852a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich jint _remaining; 1853a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich GLfixed *params = (GLfixed *) 0; 1854a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich 1855a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich if (!params_ref) { 18562545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exception = 1; 18572545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exceptionType = "java/lang/IllegalArgumentException"; 18582545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exceptionMessage = "params == null"; 1859a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich goto exit; 1860a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich } 1861a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich if (offset < 0) { 18622545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exception = 1; 18632545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exceptionType = "java/lang/IllegalArgumentException"; 18642545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exceptionMessage = "offset < 0"; 1865a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich goto exit; 1866a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich } 1867a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich _remaining = _env->GetArrayLength(params_ref) - offset; 1868a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich params_base = (GLfixed *) 1869a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich _env->GetPrimitiveArrayCritical(params_ref, (jboolean *)0); 1870a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich params = params_base + offset; 1871a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich 1872a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich glPointParameterxvOES( 1873a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich (GLenum)pname, 1874a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich (GLfixed *)params 1875a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich ); 1876a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich 1877a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevichexit: 1878a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich if (params_base) { 1879a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich _env->ReleasePrimitiveArrayCritical(params_ref, params_base, 1880a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich JNI_ABORT); 1881a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich } 18822545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer if (_exception) { 18832545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer jniThrowException(_env, _exceptionType, _exceptionMessage); 18842545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer } 188527f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich} 188627f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich 188727f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glPointParameterxvOES ( GLenum pname, const GLfixed *params ) */ 188827f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void 188927f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glPointParameterxvOES__ILjava_nio_IntBuffer_2 189027f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich (JNIEnv *_env, jobject _this, jint pname, jobject params_buf) { 1891a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich jarray _array = (jarray) 0; 189217045a16575ece34cfadb63da4791f115625df78Thomas Tafertshofer jint _bufferOffset = (jint) 0; 1893a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich jint _remaining; 1894a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich GLfixed *params = (GLfixed *) 0; 1895a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich 189617045a16575ece34cfadb63da4791f115625df78Thomas Tafertshofer params = (GLfixed *)getPointer(_env, params_buf, &_array, &_remaining, &_bufferOffset); 189717045a16575ece34cfadb63da4791f115625df78Thomas Tafertshofer if (params == NULL) { 189817045a16575ece34cfadb63da4791f115625df78Thomas Tafertshofer char * _paramsBase = (char *)_env->GetPrimitiveArrayCritical(_array, (jboolean *) 0); 189917045a16575ece34cfadb63da4791f115625df78Thomas Tafertshofer params = (GLfixed *) (_paramsBase + _bufferOffset); 190017045a16575ece34cfadb63da4791f115625df78Thomas Tafertshofer } 1901a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich glPointParameterxvOES( 1902a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich (GLenum)pname, 1903a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich (GLfixed *)params 1904a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich ); 1905a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich if (_array) { 1906a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich releasePointer(_env, _array, params, JNI_FALSE); 1907a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich } 190827f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich} 190927f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich 191027f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glPointSizexOES ( GLfixed size ) */ 191127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void 191227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glPointSizexOES__I 191327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich (JNIEnv *_env, jobject _this, jint size) { 1914a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich glPointSizexOES( 1915a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich (GLfixed)size 1916a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich ); 191727f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich} 191827f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich 191927f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glPolygonOffsetxOES ( GLfixed factor, GLfixed units ) */ 192027f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void 192127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glPolygonOffsetxOES__II 192227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich (JNIEnv *_env, jobject _this, jint factor, jint units) { 1923a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich glPolygonOffsetxOES( 1924a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich (GLfixed)factor, 1925a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich (GLfixed)units 1926a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich ); 192727f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich} 192827f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich 192927f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glRotatexOES ( GLfixed angle, GLfixed x, GLfixed y, GLfixed z ) */ 193027f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void 193127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glRotatexOES__IIII 193227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich (JNIEnv *_env, jobject _this, jint angle, jint x, jint y, jint z) { 1933a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich glRotatexOES( 1934a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich (GLfixed)angle, 1935a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich (GLfixed)x, 1936a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich (GLfixed)y, 1937a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich (GLfixed)z 1938a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich ); 193927f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich} 194027f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich 194127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glSampleCoveragexOES ( GLclampx value, GLboolean invert ) */ 194227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void 194327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glSampleCoveragexOES__IZ 194427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich (JNIEnv *_env, jobject _this, jint value, jboolean invert) { 1945a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich glSampleCoveragexOES( 1946a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich (GLclampx)value, 1947a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich (GLboolean)invert 1948a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich ); 194927f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich} 195027f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich 195127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glScalexOES ( GLfixed x, GLfixed y, GLfixed z ) */ 195227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void 195327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glScalexOES__III 195427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich (JNIEnv *_env, jobject _this, jint x, jint y, jint z) { 1955a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich glScalexOES( 1956a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich (GLfixed)x, 1957a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich (GLfixed)y, 1958a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich (GLfixed)z 1959a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich ); 196027f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich} 196127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich 196227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glTexEnvxOES ( GLenum target, GLenum pname, GLfixed param ) */ 196327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void 196427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glTexEnvxOES__III 196527f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich (JNIEnv *_env, jobject _this, jint target, jint pname, jint param) { 1966a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich glTexEnvxOES( 1967a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich (GLenum)target, 1968a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich (GLenum)pname, 1969a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich (GLfixed)param 1970a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich ); 197127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich} 197227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich 197327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glTexEnvxvOES ( GLenum target, GLenum pname, const GLfixed *params ) */ 197427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void 197527f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glTexEnvxvOES__II_3II 197627f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich (JNIEnv *_env, jobject _this, jint target, jint pname, jintArray params_ref, jint offset) { 19772545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer jint _exception = 0; 19782ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian const char * _exceptionType = NULL; 19792ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian const char * _exceptionMessage = NULL; 1980a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich GLfixed *params_base = (GLfixed *) 0; 1981a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich jint _remaining; 1982a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich GLfixed *params = (GLfixed *) 0; 1983a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich 1984a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich if (!params_ref) { 19852545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exception = 1; 19862545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exceptionType = "java/lang/IllegalArgumentException"; 19872545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exceptionMessage = "params == null"; 1988a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich goto exit; 1989a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich } 1990a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich if (offset < 0) { 19912545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exception = 1; 19922545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exceptionType = "java/lang/IllegalArgumentException"; 19932545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exceptionMessage = "offset < 0"; 1994a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich goto exit; 1995a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich } 1996a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich _remaining = _env->GetArrayLength(params_ref) - offset; 1997a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich params_base = (GLfixed *) 1998a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich _env->GetPrimitiveArrayCritical(params_ref, (jboolean *)0); 1999a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich params = params_base + offset; 2000a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich 2001a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich glTexEnvxvOES( 2002a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich (GLenum)target, 2003a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich (GLenum)pname, 2004a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich (GLfixed *)params 2005a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich ); 2006a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich 2007a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevichexit: 2008a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich if (params_base) { 2009a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich _env->ReleasePrimitiveArrayCritical(params_ref, params_base, 2010a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich JNI_ABORT); 2011a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich } 20122545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer if (_exception) { 20132545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer jniThrowException(_env, _exceptionType, _exceptionMessage); 20142545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer } 201527f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich} 201627f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich 201727f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glTexEnvxvOES ( GLenum target, GLenum pname, const GLfixed *params ) */ 201827f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void 201927f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glTexEnvxvOES__IILjava_nio_IntBuffer_2 202027f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich (JNIEnv *_env, jobject _this, jint target, jint pname, jobject params_buf) { 2021a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich jarray _array = (jarray) 0; 202217045a16575ece34cfadb63da4791f115625df78Thomas Tafertshofer jint _bufferOffset = (jint) 0; 2023a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich jint _remaining; 2024a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich GLfixed *params = (GLfixed *) 0; 2025a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich 202617045a16575ece34cfadb63da4791f115625df78Thomas Tafertshofer params = (GLfixed *)getPointer(_env, params_buf, &_array, &_remaining, &_bufferOffset); 202717045a16575ece34cfadb63da4791f115625df78Thomas Tafertshofer if (params == NULL) { 202817045a16575ece34cfadb63da4791f115625df78Thomas Tafertshofer char * _paramsBase = (char *)_env->GetPrimitiveArrayCritical(_array, (jboolean *) 0); 202917045a16575ece34cfadb63da4791f115625df78Thomas Tafertshofer params = (GLfixed *) (_paramsBase + _bufferOffset); 203017045a16575ece34cfadb63da4791f115625df78Thomas Tafertshofer } 2031a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich glTexEnvxvOES( 2032a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich (GLenum)target, 2033a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich (GLenum)pname, 2034a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich (GLfixed *)params 2035a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich ); 2036a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich if (_array) { 2037a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich releasePointer(_env, _array, params, JNI_FALSE); 2038a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich } 203927f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich} 204027f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich 204127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glTexParameterxOES ( GLenum target, GLenum pname, GLfixed param ) */ 204227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void 204327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glTexParameterxOES__III 204427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich (JNIEnv *_env, jobject _this, jint target, jint pname, jint param) { 2045a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich glTexParameterxOES( 2046a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich (GLenum)target, 2047a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich (GLenum)pname, 2048a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich (GLfixed)param 2049a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich ); 205027f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich} 205127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich 205227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glTexParameterxvOES ( GLenum target, GLenum pname, const GLfixed *params ) */ 205327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void 205427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glTexParameterxvOES__II_3II 205527f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich (JNIEnv *_env, jobject _this, jint target, jint pname, jintArray params_ref, jint offset) { 20562545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer jint _exception = 0; 20572ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian const char * _exceptionType = NULL; 20582ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian const char * _exceptionMessage = NULL; 2059a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich GLfixed *params_base = (GLfixed *) 0; 2060a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich jint _remaining; 2061a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich GLfixed *params = (GLfixed *) 0; 2062a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich 2063a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich if (!params_ref) { 20642545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exception = 1; 20652545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exceptionType = "java/lang/IllegalArgumentException"; 20662545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exceptionMessage = "params == null"; 2067a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich goto exit; 2068a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich } 2069a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich if (offset < 0) { 20702545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exception = 1; 20712545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exceptionType = "java/lang/IllegalArgumentException"; 20722545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exceptionMessage = "offset < 0"; 2073a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich goto exit; 2074a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich } 2075a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich _remaining = _env->GetArrayLength(params_ref) - offset; 2076a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich params_base = (GLfixed *) 2077a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich _env->GetPrimitiveArrayCritical(params_ref, (jboolean *)0); 2078a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich params = params_base + offset; 2079a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich 2080a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich glTexParameterxvOES( 2081a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich (GLenum)target, 2082a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich (GLenum)pname, 2083a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich (GLfixed *)params 2084a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich ); 2085a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich 2086a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevichexit: 2087a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich if (params_base) { 2088a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich _env->ReleasePrimitiveArrayCritical(params_ref, params_base, 2089a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich JNI_ABORT); 2090a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich } 20912545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer if (_exception) { 20922545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer jniThrowException(_env, _exceptionType, _exceptionMessage); 20932545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer } 209427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich} 209527f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich 209627f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glTexParameterxvOES ( GLenum target, GLenum pname, const GLfixed *params ) */ 209727f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void 209827f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glTexParameterxvOES__IILjava_nio_IntBuffer_2 209927f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich (JNIEnv *_env, jobject _this, jint target, jint pname, jobject params_buf) { 2100a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich jarray _array = (jarray) 0; 210117045a16575ece34cfadb63da4791f115625df78Thomas Tafertshofer jint _bufferOffset = (jint) 0; 2102a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich jint _remaining; 2103a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich GLfixed *params = (GLfixed *) 0; 2104a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich 210517045a16575ece34cfadb63da4791f115625df78Thomas Tafertshofer params = (GLfixed *)getPointer(_env, params_buf, &_array, &_remaining, &_bufferOffset); 210617045a16575ece34cfadb63da4791f115625df78Thomas Tafertshofer if (params == NULL) { 210717045a16575ece34cfadb63da4791f115625df78Thomas Tafertshofer char * _paramsBase = (char *)_env->GetPrimitiveArrayCritical(_array, (jboolean *) 0); 210817045a16575ece34cfadb63da4791f115625df78Thomas Tafertshofer params = (GLfixed *) (_paramsBase + _bufferOffset); 210917045a16575ece34cfadb63da4791f115625df78Thomas Tafertshofer } 2110a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich glTexParameterxvOES( 2111a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich (GLenum)target, 2112a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich (GLenum)pname, 2113a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich (GLfixed *)params 2114a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich ); 2115a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich if (_array) { 2116a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich releasePointer(_env, _array, params, JNI_FALSE); 2117a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich } 211827f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich} 211927f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich 212027f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glTranslatexOES ( GLfixed x, GLfixed y, GLfixed z ) */ 212127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void 212227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glTranslatexOES__III 212327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich (JNIEnv *_env, jobject _this, jint x, jint y, jint z) { 2124a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich glTranslatexOES( 2125a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich (GLfixed)x, 2126a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich (GLfixed)y, 2127a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich (GLfixed)z 2128a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich ); 212927f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich} 213027f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich 213127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* GLboolean glIsRenderbufferOES ( GLuint renderbuffer ) */ 213227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic jboolean 213327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glIsRenderbufferOES__I 213427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich (JNIEnv *_env, jobject _this, jint renderbuffer) { 213573108675c944ab4ee89631dced23566b12341b66Jack Palevich GLboolean _returnValue; 213673108675c944ab4ee89631dced23566b12341b66Jack Palevich _returnValue = glIsRenderbufferOES( 213773108675c944ab4ee89631dced23566b12341b66Jack Palevich (GLuint)renderbuffer 213873108675c944ab4ee89631dced23566b12341b66Jack Palevich ); 2139cee5198e7199fcbb131ff0d30165fb1d5c0107cfAndy McFadden return (jboolean)_returnValue; 214027f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich} 214127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich 214227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glBindRenderbufferOES ( GLenum target, GLuint renderbuffer ) */ 214327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void 214427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glBindRenderbufferOES__II 214527f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich (JNIEnv *_env, jobject _this, jint target, jint renderbuffer) { 214673108675c944ab4ee89631dced23566b12341b66Jack Palevich glBindRenderbufferOES( 214773108675c944ab4ee89631dced23566b12341b66Jack Palevich (GLenum)target, 214873108675c944ab4ee89631dced23566b12341b66Jack Palevich (GLuint)renderbuffer 214973108675c944ab4ee89631dced23566b12341b66Jack Palevich ); 215027f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich} 215127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich 215227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glDeleteRenderbuffersOES ( GLsizei n, const GLuint *renderbuffers ) */ 215327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void 215427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glDeleteRenderbuffersOES__I_3II 215527f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich (JNIEnv *_env, jobject _this, jint n, jintArray renderbuffers_ref, jint offset) { 21562545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer jint _exception = 0; 21572ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian const char * _exceptionType = NULL; 21582ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian const char * _exceptionMessage = NULL; 215973108675c944ab4ee89631dced23566b12341b66Jack Palevich GLuint *renderbuffers_base = (GLuint *) 0; 216073108675c944ab4ee89631dced23566b12341b66Jack Palevich jint _remaining; 216173108675c944ab4ee89631dced23566b12341b66Jack Palevich GLuint *renderbuffers = (GLuint *) 0; 216273108675c944ab4ee89631dced23566b12341b66Jack Palevich 216373108675c944ab4ee89631dced23566b12341b66Jack Palevich if (!renderbuffers_ref) { 21642545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exception = 1; 21652545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exceptionType = "java/lang/IllegalArgumentException"; 21662545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exceptionMessage = "renderbuffers == null"; 216773108675c944ab4ee89631dced23566b12341b66Jack Palevich goto exit; 216873108675c944ab4ee89631dced23566b12341b66Jack Palevich } 216973108675c944ab4ee89631dced23566b12341b66Jack Palevich if (offset < 0) { 21702545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exception = 1; 21712545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exceptionType = "java/lang/IllegalArgumentException"; 21722545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exceptionMessage = "offset < 0"; 217373108675c944ab4ee89631dced23566b12341b66Jack Palevich goto exit; 217473108675c944ab4ee89631dced23566b12341b66Jack Palevich } 217573108675c944ab4ee89631dced23566b12341b66Jack Palevich _remaining = _env->GetArrayLength(renderbuffers_ref) - offset; 217673108675c944ab4ee89631dced23566b12341b66Jack Palevich if (_remaining < n) { 21772545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exception = 1; 21782545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exceptionType = "java/lang/IllegalArgumentException"; 21792545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exceptionMessage = "length - offset < n < needed"; 218073108675c944ab4ee89631dced23566b12341b66Jack Palevich goto exit; 218173108675c944ab4ee89631dced23566b12341b66Jack Palevich } 218273108675c944ab4ee89631dced23566b12341b66Jack Palevich renderbuffers_base = (GLuint *) 218373108675c944ab4ee89631dced23566b12341b66Jack Palevich _env->GetPrimitiveArrayCritical(renderbuffers_ref, (jboolean *)0); 218473108675c944ab4ee89631dced23566b12341b66Jack Palevich renderbuffers = renderbuffers_base + offset; 218573108675c944ab4ee89631dced23566b12341b66Jack Palevich 218673108675c944ab4ee89631dced23566b12341b66Jack Palevich glDeleteRenderbuffersOES( 218773108675c944ab4ee89631dced23566b12341b66Jack Palevich (GLsizei)n, 218873108675c944ab4ee89631dced23566b12341b66Jack Palevich (GLuint *)renderbuffers 218973108675c944ab4ee89631dced23566b12341b66Jack Palevich ); 219073108675c944ab4ee89631dced23566b12341b66Jack Palevich 219173108675c944ab4ee89631dced23566b12341b66Jack Palevichexit: 219273108675c944ab4ee89631dced23566b12341b66Jack Palevich if (renderbuffers_base) { 219373108675c944ab4ee89631dced23566b12341b66Jack Palevich _env->ReleasePrimitiveArrayCritical(renderbuffers_ref, renderbuffers_base, 219473108675c944ab4ee89631dced23566b12341b66Jack Palevich JNI_ABORT); 219573108675c944ab4ee89631dced23566b12341b66Jack Palevich } 21962545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer if (_exception) { 21972545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer jniThrowException(_env, _exceptionType, _exceptionMessage); 21982545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer } 219927f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich} 220027f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich 220127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glDeleteRenderbuffersOES ( GLsizei n, const GLuint *renderbuffers ) */ 220227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void 220327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glDeleteRenderbuffersOES__ILjava_nio_IntBuffer_2 220427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich (JNIEnv *_env, jobject _this, jint n, jobject renderbuffers_buf) { 22052545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer jint _exception = 0; 22062ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian const char * _exceptionType = NULL; 22072ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian const char * _exceptionMessage = NULL; 220873108675c944ab4ee89631dced23566b12341b66Jack Palevich jarray _array = (jarray) 0; 220917045a16575ece34cfadb63da4791f115625df78Thomas Tafertshofer jint _bufferOffset = (jint) 0; 221073108675c944ab4ee89631dced23566b12341b66Jack Palevich jint _remaining; 221173108675c944ab4ee89631dced23566b12341b66Jack Palevich GLuint *renderbuffers = (GLuint *) 0; 221273108675c944ab4ee89631dced23566b12341b66Jack Palevich 221317045a16575ece34cfadb63da4791f115625df78Thomas Tafertshofer renderbuffers = (GLuint *)getPointer(_env, renderbuffers_buf, &_array, &_remaining, &_bufferOffset); 221473108675c944ab4ee89631dced23566b12341b66Jack Palevich if (_remaining < n) { 22152545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exception = 1; 22162545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exceptionType = "java/lang/IllegalArgumentException"; 22172545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exceptionMessage = "remaining() < n < needed"; 221873108675c944ab4ee89631dced23566b12341b66Jack Palevich goto exit; 221973108675c944ab4ee89631dced23566b12341b66Jack Palevich } 222017045a16575ece34cfadb63da4791f115625df78Thomas Tafertshofer if (renderbuffers == NULL) { 222117045a16575ece34cfadb63da4791f115625df78Thomas Tafertshofer char * _renderbuffersBase = (char *)_env->GetPrimitiveArrayCritical(_array, (jboolean *) 0); 222217045a16575ece34cfadb63da4791f115625df78Thomas Tafertshofer renderbuffers = (GLuint *) (_renderbuffersBase + _bufferOffset); 222317045a16575ece34cfadb63da4791f115625df78Thomas Tafertshofer } 222473108675c944ab4ee89631dced23566b12341b66Jack Palevich glDeleteRenderbuffersOES( 222573108675c944ab4ee89631dced23566b12341b66Jack Palevich (GLsizei)n, 222673108675c944ab4ee89631dced23566b12341b66Jack Palevich (GLuint *)renderbuffers 222773108675c944ab4ee89631dced23566b12341b66Jack Palevich ); 222873108675c944ab4ee89631dced23566b12341b66Jack Palevich 222973108675c944ab4ee89631dced23566b12341b66Jack Palevichexit: 223073108675c944ab4ee89631dced23566b12341b66Jack Palevich if (_array) { 223173108675c944ab4ee89631dced23566b12341b66Jack Palevich releasePointer(_env, _array, renderbuffers, JNI_FALSE); 223273108675c944ab4ee89631dced23566b12341b66Jack Palevich } 22332545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer if (_exception) { 22342545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer jniThrowException(_env, _exceptionType, _exceptionMessage); 22352545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer } 223627f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich} 223727f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich 223827f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glGenRenderbuffersOES ( GLsizei n, GLuint *renderbuffers ) */ 223927f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void 224027f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glGenRenderbuffersOES__I_3II 224127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich (JNIEnv *_env, jobject _this, jint n, jintArray renderbuffers_ref, jint offset) { 224273108675c944ab4ee89631dced23566b12341b66Jack Palevich jint _exception = 0; 22432ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian const char * _exceptionType = NULL; 22442ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian const char * _exceptionMessage = NULL; 224573108675c944ab4ee89631dced23566b12341b66Jack Palevich GLuint *renderbuffers_base = (GLuint *) 0; 224673108675c944ab4ee89631dced23566b12341b66Jack Palevich jint _remaining; 224773108675c944ab4ee89631dced23566b12341b66Jack Palevich GLuint *renderbuffers = (GLuint *) 0; 224873108675c944ab4ee89631dced23566b12341b66Jack Palevich 224973108675c944ab4ee89631dced23566b12341b66Jack Palevich if (!renderbuffers_ref) { 225073108675c944ab4ee89631dced23566b12341b66Jack Palevich _exception = 1; 22512545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exceptionType = "java/lang/IllegalArgumentException"; 22522545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exceptionMessage = "renderbuffers == null"; 225373108675c944ab4ee89631dced23566b12341b66Jack Palevich goto exit; 225473108675c944ab4ee89631dced23566b12341b66Jack Palevich } 225573108675c944ab4ee89631dced23566b12341b66Jack Palevich if (offset < 0) { 225673108675c944ab4ee89631dced23566b12341b66Jack Palevich _exception = 1; 22572545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exceptionType = "java/lang/IllegalArgumentException"; 22582545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exceptionMessage = "offset < 0"; 225973108675c944ab4ee89631dced23566b12341b66Jack Palevich goto exit; 226073108675c944ab4ee89631dced23566b12341b66Jack Palevich } 226173108675c944ab4ee89631dced23566b12341b66Jack Palevich _remaining = _env->GetArrayLength(renderbuffers_ref) - offset; 226273108675c944ab4ee89631dced23566b12341b66Jack Palevich if (_remaining < n) { 226373108675c944ab4ee89631dced23566b12341b66Jack Palevich _exception = 1; 22642545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exceptionType = "java/lang/IllegalArgumentException"; 22652545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exceptionMessage = "length - offset < n < needed"; 226673108675c944ab4ee89631dced23566b12341b66Jack Palevich goto exit; 226773108675c944ab4ee89631dced23566b12341b66Jack Palevich } 226873108675c944ab4ee89631dced23566b12341b66Jack Palevich renderbuffers_base = (GLuint *) 226973108675c944ab4ee89631dced23566b12341b66Jack Palevich _env->GetPrimitiveArrayCritical(renderbuffers_ref, (jboolean *)0); 227073108675c944ab4ee89631dced23566b12341b66Jack Palevich renderbuffers = renderbuffers_base + offset; 227173108675c944ab4ee89631dced23566b12341b66Jack Palevich 227273108675c944ab4ee89631dced23566b12341b66Jack Palevich glGenRenderbuffersOES( 227373108675c944ab4ee89631dced23566b12341b66Jack Palevich (GLsizei)n, 227473108675c944ab4ee89631dced23566b12341b66Jack Palevich (GLuint *)renderbuffers 227573108675c944ab4ee89631dced23566b12341b66Jack Palevich ); 227673108675c944ab4ee89631dced23566b12341b66Jack Palevich 227773108675c944ab4ee89631dced23566b12341b66Jack Palevichexit: 227873108675c944ab4ee89631dced23566b12341b66Jack Palevich if (renderbuffers_base) { 227973108675c944ab4ee89631dced23566b12341b66Jack Palevich _env->ReleasePrimitiveArrayCritical(renderbuffers_ref, renderbuffers_base, 228073108675c944ab4ee89631dced23566b12341b66Jack Palevich _exception ? JNI_ABORT: 0); 228173108675c944ab4ee89631dced23566b12341b66Jack Palevich } 22822545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer if (_exception) { 22832545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer jniThrowException(_env, _exceptionType, _exceptionMessage); 22842545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer } 228527f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich} 228627f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich 228727f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glGenRenderbuffersOES ( GLsizei n, GLuint *renderbuffers ) */ 228827f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void 228927f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glGenRenderbuffersOES__ILjava_nio_IntBuffer_2 229027f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich (JNIEnv *_env, jobject _this, jint n, jobject renderbuffers_buf) { 229173108675c944ab4ee89631dced23566b12341b66Jack Palevich jint _exception = 0; 22922ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian const char * _exceptionType = NULL; 22932ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian const char * _exceptionMessage = NULL; 229473108675c944ab4ee89631dced23566b12341b66Jack Palevich jarray _array = (jarray) 0; 229517045a16575ece34cfadb63da4791f115625df78Thomas Tafertshofer jint _bufferOffset = (jint) 0; 229673108675c944ab4ee89631dced23566b12341b66Jack Palevich jint _remaining; 229773108675c944ab4ee89631dced23566b12341b66Jack Palevich GLuint *renderbuffers = (GLuint *) 0; 229873108675c944ab4ee89631dced23566b12341b66Jack Palevich 229917045a16575ece34cfadb63da4791f115625df78Thomas Tafertshofer renderbuffers = (GLuint *)getPointer(_env, renderbuffers_buf, &_array, &_remaining, &_bufferOffset); 230073108675c944ab4ee89631dced23566b12341b66Jack Palevich if (_remaining < n) { 230173108675c944ab4ee89631dced23566b12341b66Jack Palevich _exception = 1; 23022545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exceptionType = "java/lang/IllegalArgumentException"; 23032545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exceptionMessage = "remaining() < n < needed"; 230473108675c944ab4ee89631dced23566b12341b66Jack Palevich goto exit; 230573108675c944ab4ee89631dced23566b12341b66Jack Palevich } 230617045a16575ece34cfadb63da4791f115625df78Thomas Tafertshofer if (renderbuffers == NULL) { 230717045a16575ece34cfadb63da4791f115625df78Thomas Tafertshofer char * _renderbuffersBase = (char *)_env->GetPrimitiveArrayCritical(_array, (jboolean *) 0); 230817045a16575ece34cfadb63da4791f115625df78Thomas Tafertshofer renderbuffers = (GLuint *) (_renderbuffersBase + _bufferOffset); 230917045a16575ece34cfadb63da4791f115625df78Thomas Tafertshofer } 231073108675c944ab4ee89631dced23566b12341b66Jack Palevich glGenRenderbuffersOES( 231173108675c944ab4ee89631dced23566b12341b66Jack Palevich (GLsizei)n, 231273108675c944ab4ee89631dced23566b12341b66Jack Palevich (GLuint *)renderbuffers 231373108675c944ab4ee89631dced23566b12341b66Jack Palevich ); 231473108675c944ab4ee89631dced23566b12341b66Jack Palevich 231573108675c944ab4ee89631dced23566b12341b66Jack Palevichexit: 231673108675c944ab4ee89631dced23566b12341b66Jack Palevich if (_array) { 231773108675c944ab4ee89631dced23566b12341b66Jack Palevich releasePointer(_env, _array, renderbuffers, _exception ? JNI_FALSE : JNI_TRUE); 231873108675c944ab4ee89631dced23566b12341b66Jack Palevich } 23192545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer if (_exception) { 23202545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer jniThrowException(_env, _exceptionType, _exceptionMessage); 23212545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer } 232227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich} 232327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich 232427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glRenderbufferStorageOES ( GLenum target, GLenum internalformat, GLsizei width, GLsizei height ) */ 232527f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void 232627f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glRenderbufferStorageOES__IIII 232727f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich (JNIEnv *_env, jobject _this, jint target, jint internalformat, jint width, jint height) { 232873108675c944ab4ee89631dced23566b12341b66Jack Palevich glRenderbufferStorageOES( 232973108675c944ab4ee89631dced23566b12341b66Jack Palevich (GLenum)target, 233073108675c944ab4ee89631dced23566b12341b66Jack Palevich (GLenum)internalformat, 233173108675c944ab4ee89631dced23566b12341b66Jack Palevich (GLsizei)width, 233273108675c944ab4ee89631dced23566b12341b66Jack Palevich (GLsizei)height 233373108675c944ab4ee89631dced23566b12341b66Jack Palevich ); 233427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich} 233527f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich 233627f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glGetRenderbufferParameterivOES ( GLenum target, GLenum pname, GLint *params ) */ 233727f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void 233827f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glGetRenderbufferParameterivOES__II_3II 233927f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich (JNIEnv *_env, jobject _this, jint target, jint pname, jintArray params_ref, jint offset) { 234073108675c944ab4ee89631dced23566b12341b66Jack Palevich jint _exception = 0; 23412ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian const char * _exceptionType = NULL; 23422ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian const char * _exceptionMessage = NULL; 234373108675c944ab4ee89631dced23566b12341b66Jack Palevich GLint *params_base = (GLint *) 0; 234473108675c944ab4ee89631dced23566b12341b66Jack Palevich jint _remaining; 234573108675c944ab4ee89631dced23566b12341b66Jack Palevich GLint *params = (GLint *) 0; 234673108675c944ab4ee89631dced23566b12341b66Jack Palevich 234773108675c944ab4ee89631dced23566b12341b66Jack Palevich if (!params_ref) { 234873108675c944ab4ee89631dced23566b12341b66Jack Palevich _exception = 1; 23492545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exceptionType = "java/lang/IllegalArgumentException"; 23502545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exceptionMessage = "params == null"; 235173108675c944ab4ee89631dced23566b12341b66Jack Palevich goto exit; 235273108675c944ab4ee89631dced23566b12341b66Jack Palevich } 235373108675c944ab4ee89631dced23566b12341b66Jack Palevich if (offset < 0) { 235473108675c944ab4ee89631dced23566b12341b66Jack Palevich _exception = 1; 23552545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exceptionType = "java/lang/IllegalArgumentException"; 23562545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exceptionMessage = "offset < 0"; 235773108675c944ab4ee89631dced23566b12341b66Jack Palevich goto exit; 235873108675c944ab4ee89631dced23566b12341b66Jack Palevich } 235973108675c944ab4ee89631dced23566b12341b66Jack Palevich _remaining = _env->GetArrayLength(params_ref) - offset; 236073108675c944ab4ee89631dced23566b12341b66Jack Palevich if (_remaining < 1) { 236173108675c944ab4ee89631dced23566b12341b66Jack Palevich _exception = 1; 23622545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exceptionType = "java/lang/IllegalArgumentException"; 23632545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exceptionMessage = "length - offset < 1 < needed"; 236473108675c944ab4ee89631dced23566b12341b66Jack Palevich goto exit; 236573108675c944ab4ee89631dced23566b12341b66Jack Palevich } 236673108675c944ab4ee89631dced23566b12341b66Jack Palevich params_base = (GLint *) 236773108675c944ab4ee89631dced23566b12341b66Jack Palevich _env->GetPrimitiveArrayCritical(params_ref, (jboolean *)0); 236873108675c944ab4ee89631dced23566b12341b66Jack Palevich params = params_base + offset; 236973108675c944ab4ee89631dced23566b12341b66Jack Palevich 237073108675c944ab4ee89631dced23566b12341b66Jack Palevich glGetRenderbufferParameterivOES( 237173108675c944ab4ee89631dced23566b12341b66Jack Palevich (GLenum)target, 237273108675c944ab4ee89631dced23566b12341b66Jack Palevich (GLenum)pname, 237373108675c944ab4ee89631dced23566b12341b66Jack Palevich (GLint *)params 237473108675c944ab4ee89631dced23566b12341b66Jack Palevich ); 237573108675c944ab4ee89631dced23566b12341b66Jack Palevich 237673108675c944ab4ee89631dced23566b12341b66Jack Palevichexit: 237773108675c944ab4ee89631dced23566b12341b66Jack Palevich if (params_base) { 237873108675c944ab4ee89631dced23566b12341b66Jack Palevich _env->ReleasePrimitiveArrayCritical(params_ref, params_base, 237973108675c944ab4ee89631dced23566b12341b66Jack Palevich _exception ? JNI_ABORT: 0); 238073108675c944ab4ee89631dced23566b12341b66Jack Palevich } 23812545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer if (_exception) { 23822545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer jniThrowException(_env, _exceptionType, _exceptionMessage); 23832545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer } 238427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich} 238527f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich 238627f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glGetRenderbufferParameterivOES ( GLenum target, GLenum pname, GLint *params ) */ 238727f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void 238827f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glGetRenderbufferParameterivOES__IILjava_nio_IntBuffer_2 238927f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich (JNIEnv *_env, jobject _this, jint target, jint pname, jobject params_buf) { 239073108675c944ab4ee89631dced23566b12341b66Jack Palevich jint _exception = 0; 23912ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian const char * _exceptionType = NULL; 23922ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian const char * _exceptionMessage = NULL; 239373108675c944ab4ee89631dced23566b12341b66Jack Palevich jarray _array = (jarray) 0; 239417045a16575ece34cfadb63da4791f115625df78Thomas Tafertshofer jint _bufferOffset = (jint) 0; 239573108675c944ab4ee89631dced23566b12341b66Jack Palevich jint _remaining; 239673108675c944ab4ee89631dced23566b12341b66Jack Palevich GLint *params = (GLint *) 0; 239773108675c944ab4ee89631dced23566b12341b66Jack Palevich 239817045a16575ece34cfadb63da4791f115625df78Thomas Tafertshofer params = (GLint *)getPointer(_env, params_buf, &_array, &_remaining, &_bufferOffset); 239973108675c944ab4ee89631dced23566b12341b66Jack Palevich if (_remaining < 1) { 240073108675c944ab4ee89631dced23566b12341b66Jack Palevich _exception = 1; 24012545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exceptionType = "java/lang/IllegalArgumentException"; 24022545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exceptionMessage = "remaining() < 1 < needed"; 240373108675c944ab4ee89631dced23566b12341b66Jack Palevich goto exit; 240473108675c944ab4ee89631dced23566b12341b66Jack Palevich } 240517045a16575ece34cfadb63da4791f115625df78Thomas Tafertshofer if (params == NULL) { 240617045a16575ece34cfadb63da4791f115625df78Thomas Tafertshofer char * _paramsBase = (char *)_env->GetPrimitiveArrayCritical(_array, (jboolean *) 0); 240717045a16575ece34cfadb63da4791f115625df78Thomas Tafertshofer params = (GLint *) (_paramsBase + _bufferOffset); 240817045a16575ece34cfadb63da4791f115625df78Thomas Tafertshofer } 240973108675c944ab4ee89631dced23566b12341b66Jack Palevich glGetRenderbufferParameterivOES( 241073108675c944ab4ee89631dced23566b12341b66Jack Palevich (GLenum)target, 241173108675c944ab4ee89631dced23566b12341b66Jack Palevich (GLenum)pname, 241273108675c944ab4ee89631dced23566b12341b66Jack Palevich (GLint *)params 241373108675c944ab4ee89631dced23566b12341b66Jack Palevich ); 241473108675c944ab4ee89631dced23566b12341b66Jack Palevich 241573108675c944ab4ee89631dced23566b12341b66Jack Palevichexit: 241673108675c944ab4ee89631dced23566b12341b66Jack Palevich if (_array) { 241773108675c944ab4ee89631dced23566b12341b66Jack Palevich releasePointer(_env, _array, params, _exception ? JNI_FALSE : JNI_TRUE); 241873108675c944ab4ee89631dced23566b12341b66Jack Palevich } 24192545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer if (_exception) { 24202545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer jniThrowException(_env, _exceptionType, _exceptionMessage); 24212545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer } 242227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich} 242327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich 242427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* GLboolean glIsFramebufferOES ( GLuint framebuffer ) */ 242527f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic jboolean 242627f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glIsFramebufferOES__I 242727f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich (JNIEnv *_env, jobject _this, jint framebuffer) { 242873108675c944ab4ee89631dced23566b12341b66Jack Palevich GLboolean _returnValue; 242973108675c944ab4ee89631dced23566b12341b66Jack Palevich _returnValue = glIsFramebufferOES( 243073108675c944ab4ee89631dced23566b12341b66Jack Palevich (GLuint)framebuffer 243173108675c944ab4ee89631dced23566b12341b66Jack Palevich ); 2432cee5198e7199fcbb131ff0d30165fb1d5c0107cfAndy McFadden return (jboolean)_returnValue; 243327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich} 243427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich 243527f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glBindFramebufferOES ( GLenum target, GLuint framebuffer ) */ 243627f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void 243727f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glBindFramebufferOES__II 243827f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich (JNIEnv *_env, jobject _this, jint target, jint framebuffer) { 243973108675c944ab4ee89631dced23566b12341b66Jack Palevich glBindFramebufferOES( 244073108675c944ab4ee89631dced23566b12341b66Jack Palevich (GLenum)target, 244173108675c944ab4ee89631dced23566b12341b66Jack Palevich (GLuint)framebuffer 244273108675c944ab4ee89631dced23566b12341b66Jack Palevich ); 244327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich} 244427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich 244527f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glDeleteFramebuffersOES ( GLsizei n, const GLuint *framebuffers ) */ 244627f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void 244727f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glDeleteFramebuffersOES__I_3II 244827f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich (JNIEnv *_env, jobject _this, jint n, jintArray framebuffers_ref, jint offset) { 24492545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer jint _exception = 0; 24502ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian const char * _exceptionType = NULL; 24512ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian const char * _exceptionMessage = NULL; 245273108675c944ab4ee89631dced23566b12341b66Jack Palevich GLuint *framebuffers_base = (GLuint *) 0; 245373108675c944ab4ee89631dced23566b12341b66Jack Palevich jint _remaining; 245473108675c944ab4ee89631dced23566b12341b66Jack Palevich GLuint *framebuffers = (GLuint *) 0; 245573108675c944ab4ee89631dced23566b12341b66Jack Palevich 245673108675c944ab4ee89631dced23566b12341b66Jack Palevich if (!framebuffers_ref) { 24572545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exception = 1; 24582545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exceptionType = "java/lang/IllegalArgumentException"; 24592545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exceptionMessage = "framebuffers == null"; 246073108675c944ab4ee89631dced23566b12341b66Jack Palevich goto exit; 246173108675c944ab4ee89631dced23566b12341b66Jack Palevich } 246273108675c944ab4ee89631dced23566b12341b66Jack Palevich if (offset < 0) { 24632545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exception = 1; 24642545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exceptionType = "java/lang/IllegalArgumentException"; 24652545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exceptionMessage = "offset < 0"; 246673108675c944ab4ee89631dced23566b12341b66Jack Palevich goto exit; 246773108675c944ab4ee89631dced23566b12341b66Jack Palevich } 246873108675c944ab4ee89631dced23566b12341b66Jack Palevich _remaining = _env->GetArrayLength(framebuffers_ref) - offset; 246973108675c944ab4ee89631dced23566b12341b66Jack Palevich if (_remaining < n) { 24702545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exception = 1; 24712545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exceptionType = "java/lang/IllegalArgumentException"; 24722545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exceptionMessage = "length - offset < n < needed"; 247373108675c944ab4ee89631dced23566b12341b66Jack Palevich goto exit; 247473108675c944ab4ee89631dced23566b12341b66Jack Palevich } 247573108675c944ab4ee89631dced23566b12341b66Jack Palevich framebuffers_base = (GLuint *) 247673108675c944ab4ee89631dced23566b12341b66Jack Palevich _env->GetPrimitiveArrayCritical(framebuffers_ref, (jboolean *)0); 247773108675c944ab4ee89631dced23566b12341b66Jack Palevich framebuffers = framebuffers_base + offset; 247873108675c944ab4ee89631dced23566b12341b66Jack Palevich 247973108675c944ab4ee89631dced23566b12341b66Jack Palevich glDeleteFramebuffersOES( 248073108675c944ab4ee89631dced23566b12341b66Jack Palevich (GLsizei)n, 248173108675c944ab4ee89631dced23566b12341b66Jack Palevich (GLuint *)framebuffers 248273108675c944ab4ee89631dced23566b12341b66Jack Palevich ); 248373108675c944ab4ee89631dced23566b12341b66Jack Palevich 248473108675c944ab4ee89631dced23566b12341b66Jack Palevichexit: 248573108675c944ab4ee89631dced23566b12341b66Jack Palevich if (framebuffers_base) { 248673108675c944ab4ee89631dced23566b12341b66Jack Palevich _env->ReleasePrimitiveArrayCritical(framebuffers_ref, framebuffers_base, 248773108675c944ab4ee89631dced23566b12341b66Jack Palevich JNI_ABORT); 248873108675c944ab4ee89631dced23566b12341b66Jack Palevich } 24892545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer if (_exception) { 24902545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer jniThrowException(_env, _exceptionType, _exceptionMessage); 24912545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer } 249227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich} 249327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich 249427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glDeleteFramebuffersOES ( GLsizei n, const GLuint *framebuffers ) */ 249527f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void 249627f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glDeleteFramebuffersOES__ILjava_nio_IntBuffer_2 249727f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich (JNIEnv *_env, jobject _this, jint n, jobject framebuffers_buf) { 24982545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer jint _exception = 0; 24992ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian const char * _exceptionType = NULL; 25002ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian const char * _exceptionMessage = NULL; 250173108675c944ab4ee89631dced23566b12341b66Jack Palevich jarray _array = (jarray) 0; 250217045a16575ece34cfadb63da4791f115625df78Thomas Tafertshofer jint _bufferOffset = (jint) 0; 250373108675c944ab4ee89631dced23566b12341b66Jack Palevich jint _remaining; 250473108675c944ab4ee89631dced23566b12341b66Jack Palevich GLuint *framebuffers = (GLuint *) 0; 250573108675c944ab4ee89631dced23566b12341b66Jack Palevich 250617045a16575ece34cfadb63da4791f115625df78Thomas Tafertshofer framebuffers = (GLuint *)getPointer(_env, framebuffers_buf, &_array, &_remaining, &_bufferOffset); 250773108675c944ab4ee89631dced23566b12341b66Jack Palevich if (_remaining < n) { 25082545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exception = 1; 25092545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exceptionType = "java/lang/IllegalArgumentException"; 25102545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exceptionMessage = "remaining() < n < needed"; 251173108675c944ab4ee89631dced23566b12341b66Jack Palevich goto exit; 251273108675c944ab4ee89631dced23566b12341b66Jack Palevich } 251317045a16575ece34cfadb63da4791f115625df78Thomas Tafertshofer if (framebuffers == NULL) { 251417045a16575ece34cfadb63da4791f115625df78Thomas Tafertshofer char * _framebuffersBase = (char *)_env->GetPrimitiveArrayCritical(_array, (jboolean *) 0); 251517045a16575ece34cfadb63da4791f115625df78Thomas Tafertshofer framebuffers = (GLuint *) (_framebuffersBase + _bufferOffset); 251617045a16575ece34cfadb63da4791f115625df78Thomas Tafertshofer } 251773108675c944ab4ee89631dced23566b12341b66Jack Palevich glDeleteFramebuffersOES( 251873108675c944ab4ee89631dced23566b12341b66Jack Palevich (GLsizei)n, 251973108675c944ab4ee89631dced23566b12341b66Jack Palevich (GLuint *)framebuffers 252073108675c944ab4ee89631dced23566b12341b66Jack Palevich ); 252173108675c944ab4ee89631dced23566b12341b66Jack Palevich 252273108675c944ab4ee89631dced23566b12341b66Jack Palevichexit: 252373108675c944ab4ee89631dced23566b12341b66Jack Palevich if (_array) { 252473108675c944ab4ee89631dced23566b12341b66Jack Palevich releasePointer(_env, _array, framebuffers, JNI_FALSE); 252573108675c944ab4ee89631dced23566b12341b66Jack Palevich } 25262545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer if (_exception) { 25272545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer jniThrowException(_env, _exceptionType, _exceptionMessage); 25282545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer } 252927f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich} 253027f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich 253127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glGenFramebuffersOES ( GLsizei n, GLuint *framebuffers ) */ 253227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void 253327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glGenFramebuffersOES__I_3II 253427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich (JNIEnv *_env, jobject _this, jint n, jintArray framebuffers_ref, jint offset) { 253573108675c944ab4ee89631dced23566b12341b66Jack Palevich jint _exception = 0; 25362ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian const char * _exceptionType = NULL; 25372ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian const char * _exceptionMessage = NULL; 253873108675c944ab4ee89631dced23566b12341b66Jack Palevich GLuint *framebuffers_base = (GLuint *) 0; 253973108675c944ab4ee89631dced23566b12341b66Jack Palevich jint _remaining; 254073108675c944ab4ee89631dced23566b12341b66Jack Palevich GLuint *framebuffers = (GLuint *) 0; 254173108675c944ab4ee89631dced23566b12341b66Jack Palevich 254273108675c944ab4ee89631dced23566b12341b66Jack Palevich if (!framebuffers_ref) { 254373108675c944ab4ee89631dced23566b12341b66Jack Palevich _exception = 1; 25442545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exceptionType = "java/lang/IllegalArgumentException"; 25452545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exceptionMessage = "framebuffers == null"; 254673108675c944ab4ee89631dced23566b12341b66Jack Palevich goto exit; 254773108675c944ab4ee89631dced23566b12341b66Jack Palevich } 254873108675c944ab4ee89631dced23566b12341b66Jack Palevich if (offset < 0) { 254973108675c944ab4ee89631dced23566b12341b66Jack Palevich _exception = 1; 25502545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exceptionType = "java/lang/IllegalArgumentException"; 25512545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exceptionMessage = "offset < 0"; 255273108675c944ab4ee89631dced23566b12341b66Jack Palevich goto exit; 255373108675c944ab4ee89631dced23566b12341b66Jack Palevich } 255473108675c944ab4ee89631dced23566b12341b66Jack Palevich _remaining = _env->GetArrayLength(framebuffers_ref) - offset; 255573108675c944ab4ee89631dced23566b12341b66Jack Palevich if (_remaining < n) { 255673108675c944ab4ee89631dced23566b12341b66Jack Palevich _exception = 1; 25572545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exceptionType = "java/lang/IllegalArgumentException"; 25582545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exceptionMessage = "length - offset < n < needed"; 255973108675c944ab4ee89631dced23566b12341b66Jack Palevich goto exit; 256073108675c944ab4ee89631dced23566b12341b66Jack Palevich } 256173108675c944ab4ee89631dced23566b12341b66Jack Palevich framebuffers_base = (GLuint *) 256273108675c944ab4ee89631dced23566b12341b66Jack Palevich _env->GetPrimitiveArrayCritical(framebuffers_ref, (jboolean *)0); 256373108675c944ab4ee89631dced23566b12341b66Jack Palevich framebuffers = framebuffers_base + offset; 256473108675c944ab4ee89631dced23566b12341b66Jack Palevich 256573108675c944ab4ee89631dced23566b12341b66Jack Palevich glGenFramebuffersOES( 256673108675c944ab4ee89631dced23566b12341b66Jack Palevich (GLsizei)n, 256773108675c944ab4ee89631dced23566b12341b66Jack Palevich (GLuint *)framebuffers 256873108675c944ab4ee89631dced23566b12341b66Jack Palevich ); 256973108675c944ab4ee89631dced23566b12341b66Jack Palevich 257073108675c944ab4ee89631dced23566b12341b66Jack Palevichexit: 257173108675c944ab4ee89631dced23566b12341b66Jack Palevich if (framebuffers_base) { 257273108675c944ab4ee89631dced23566b12341b66Jack Palevich _env->ReleasePrimitiveArrayCritical(framebuffers_ref, framebuffers_base, 257373108675c944ab4ee89631dced23566b12341b66Jack Palevich _exception ? JNI_ABORT: 0); 257473108675c944ab4ee89631dced23566b12341b66Jack Palevich } 25752545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer if (_exception) { 25762545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer jniThrowException(_env, _exceptionType, _exceptionMessage); 25772545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer } 257827f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich} 257927f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich 258027f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glGenFramebuffersOES ( GLsizei n, GLuint *framebuffers ) */ 258127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void 258227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glGenFramebuffersOES__ILjava_nio_IntBuffer_2 258327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich (JNIEnv *_env, jobject _this, jint n, jobject framebuffers_buf) { 258473108675c944ab4ee89631dced23566b12341b66Jack Palevich jint _exception = 0; 25852ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian const char * _exceptionType = NULL; 25862ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian const char * _exceptionMessage = NULL; 258773108675c944ab4ee89631dced23566b12341b66Jack Palevich jarray _array = (jarray) 0; 258817045a16575ece34cfadb63da4791f115625df78Thomas Tafertshofer jint _bufferOffset = (jint) 0; 258973108675c944ab4ee89631dced23566b12341b66Jack Palevich jint _remaining; 259073108675c944ab4ee89631dced23566b12341b66Jack Palevich GLuint *framebuffers = (GLuint *) 0; 259173108675c944ab4ee89631dced23566b12341b66Jack Palevich 259217045a16575ece34cfadb63da4791f115625df78Thomas Tafertshofer framebuffers = (GLuint *)getPointer(_env, framebuffers_buf, &_array, &_remaining, &_bufferOffset); 259373108675c944ab4ee89631dced23566b12341b66Jack Palevich if (_remaining < n) { 259473108675c944ab4ee89631dced23566b12341b66Jack Palevich _exception = 1; 25952545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exceptionType = "java/lang/IllegalArgumentException"; 25962545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exceptionMessage = "remaining() < n < needed"; 259773108675c944ab4ee89631dced23566b12341b66Jack Palevich goto exit; 259873108675c944ab4ee89631dced23566b12341b66Jack Palevich } 259917045a16575ece34cfadb63da4791f115625df78Thomas Tafertshofer if (framebuffers == NULL) { 260017045a16575ece34cfadb63da4791f115625df78Thomas Tafertshofer char * _framebuffersBase = (char *)_env->GetPrimitiveArrayCritical(_array, (jboolean *) 0); 260117045a16575ece34cfadb63da4791f115625df78Thomas Tafertshofer framebuffers = (GLuint *) (_framebuffersBase + _bufferOffset); 260217045a16575ece34cfadb63da4791f115625df78Thomas Tafertshofer } 260373108675c944ab4ee89631dced23566b12341b66Jack Palevich glGenFramebuffersOES( 260473108675c944ab4ee89631dced23566b12341b66Jack Palevich (GLsizei)n, 260573108675c944ab4ee89631dced23566b12341b66Jack Palevich (GLuint *)framebuffers 260673108675c944ab4ee89631dced23566b12341b66Jack Palevich ); 260773108675c944ab4ee89631dced23566b12341b66Jack Palevich 260873108675c944ab4ee89631dced23566b12341b66Jack Palevichexit: 260973108675c944ab4ee89631dced23566b12341b66Jack Palevich if (_array) { 261073108675c944ab4ee89631dced23566b12341b66Jack Palevich releasePointer(_env, _array, framebuffers, _exception ? JNI_FALSE : JNI_TRUE); 261173108675c944ab4ee89631dced23566b12341b66Jack Palevich } 26122545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer if (_exception) { 26132545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer jniThrowException(_env, _exceptionType, _exceptionMessage); 26142545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer } 261527f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich} 261627f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich 261727f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* GLenum glCheckFramebufferStatusOES ( GLenum target ) */ 261827f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic jint 261927f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glCheckFramebufferStatusOES__I 262027f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich (JNIEnv *_env, jobject _this, jint target) { 262173108675c944ab4ee89631dced23566b12341b66Jack Palevich GLenum _returnValue; 262273108675c944ab4ee89631dced23566b12341b66Jack Palevich _returnValue = glCheckFramebufferStatusOES( 262373108675c944ab4ee89631dced23566b12341b66Jack Palevich (GLenum)target 262473108675c944ab4ee89631dced23566b12341b66Jack Palevich ); 2625cee5198e7199fcbb131ff0d30165fb1d5c0107cfAndy McFadden return (jint)_returnValue; 262627f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich} 262727f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich 262827f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glFramebufferRenderbufferOES ( GLenum target, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer ) */ 262927f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void 263027f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glFramebufferRenderbufferOES__IIII 263127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich (JNIEnv *_env, jobject _this, jint target, jint attachment, jint renderbuffertarget, jint renderbuffer) { 263273108675c944ab4ee89631dced23566b12341b66Jack Palevich glFramebufferRenderbufferOES( 263373108675c944ab4ee89631dced23566b12341b66Jack Palevich (GLenum)target, 263473108675c944ab4ee89631dced23566b12341b66Jack Palevich (GLenum)attachment, 263573108675c944ab4ee89631dced23566b12341b66Jack Palevich (GLenum)renderbuffertarget, 263673108675c944ab4ee89631dced23566b12341b66Jack Palevich (GLuint)renderbuffer 263773108675c944ab4ee89631dced23566b12341b66Jack Palevich ); 263827f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich} 263927f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich 264027f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glFramebufferTexture2DOES ( GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level ) */ 264127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void 264227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glFramebufferTexture2DOES__IIIII 264327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich (JNIEnv *_env, jobject _this, jint target, jint attachment, jint textarget, jint texture, jint level) { 264473108675c944ab4ee89631dced23566b12341b66Jack Palevich glFramebufferTexture2DOES( 264573108675c944ab4ee89631dced23566b12341b66Jack Palevich (GLenum)target, 264673108675c944ab4ee89631dced23566b12341b66Jack Palevich (GLenum)attachment, 264773108675c944ab4ee89631dced23566b12341b66Jack Palevich (GLenum)textarget, 264873108675c944ab4ee89631dced23566b12341b66Jack Palevich (GLuint)texture, 264973108675c944ab4ee89631dced23566b12341b66Jack Palevich (GLint)level 265073108675c944ab4ee89631dced23566b12341b66Jack Palevich ); 265127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich} 265227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich 265327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glGetFramebufferAttachmentParameterivOES ( GLenum target, GLenum attachment, GLenum pname, GLint *params ) */ 265427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void 265527f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glGetFramebufferAttachmentParameterivOES__III_3II 265627f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich (JNIEnv *_env, jobject _this, jint target, jint attachment, jint pname, jintArray params_ref, jint offset) { 265773108675c944ab4ee89631dced23566b12341b66Jack Palevich jint _exception = 0; 26582ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian const char * _exceptionType = NULL; 26592ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian const char * _exceptionMessage = NULL; 266073108675c944ab4ee89631dced23566b12341b66Jack Palevich GLint *params_base = (GLint *) 0; 266173108675c944ab4ee89631dced23566b12341b66Jack Palevich jint _remaining; 266273108675c944ab4ee89631dced23566b12341b66Jack Palevich GLint *params = (GLint *) 0; 266373108675c944ab4ee89631dced23566b12341b66Jack Palevich 266473108675c944ab4ee89631dced23566b12341b66Jack Palevich if (!params_ref) { 266573108675c944ab4ee89631dced23566b12341b66Jack Palevich _exception = 1; 26662545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exceptionType = "java/lang/IllegalArgumentException"; 26672545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exceptionMessage = "params == null"; 266873108675c944ab4ee89631dced23566b12341b66Jack Palevich goto exit; 266973108675c944ab4ee89631dced23566b12341b66Jack Palevich } 267073108675c944ab4ee89631dced23566b12341b66Jack Palevich if (offset < 0) { 267173108675c944ab4ee89631dced23566b12341b66Jack Palevich _exception = 1; 26722545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exceptionType = "java/lang/IllegalArgumentException"; 26732545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exceptionMessage = "offset < 0"; 267473108675c944ab4ee89631dced23566b12341b66Jack Palevich goto exit; 267573108675c944ab4ee89631dced23566b12341b66Jack Palevich } 267673108675c944ab4ee89631dced23566b12341b66Jack Palevich _remaining = _env->GetArrayLength(params_ref) - offset; 267773108675c944ab4ee89631dced23566b12341b66Jack Palevich if (_remaining < 1) { 267873108675c944ab4ee89631dced23566b12341b66Jack Palevich _exception = 1; 26792545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exceptionType = "java/lang/IllegalArgumentException"; 26802545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exceptionMessage = "length - offset < 1 < needed"; 268173108675c944ab4ee89631dced23566b12341b66Jack Palevich goto exit; 268273108675c944ab4ee89631dced23566b12341b66Jack Palevich } 268373108675c944ab4ee89631dced23566b12341b66Jack Palevich params_base = (GLint *) 268473108675c944ab4ee89631dced23566b12341b66Jack Palevich _env->GetPrimitiveArrayCritical(params_ref, (jboolean *)0); 268573108675c944ab4ee89631dced23566b12341b66Jack Palevich params = params_base + offset; 268673108675c944ab4ee89631dced23566b12341b66Jack Palevich 268773108675c944ab4ee89631dced23566b12341b66Jack Palevich glGetFramebufferAttachmentParameterivOES( 268873108675c944ab4ee89631dced23566b12341b66Jack Palevich (GLenum)target, 268973108675c944ab4ee89631dced23566b12341b66Jack Palevich (GLenum)attachment, 269073108675c944ab4ee89631dced23566b12341b66Jack Palevich (GLenum)pname, 269173108675c944ab4ee89631dced23566b12341b66Jack Palevich (GLint *)params 269273108675c944ab4ee89631dced23566b12341b66Jack Palevich ); 269373108675c944ab4ee89631dced23566b12341b66Jack Palevich 269473108675c944ab4ee89631dced23566b12341b66Jack Palevichexit: 269573108675c944ab4ee89631dced23566b12341b66Jack Palevich if (params_base) { 269673108675c944ab4ee89631dced23566b12341b66Jack Palevich _env->ReleasePrimitiveArrayCritical(params_ref, params_base, 269773108675c944ab4ee89631dced23566b12341b66Jack Palevich _exception ? JNI_ABORT: 0); 269873108675c944ab4ee89631dced23566b12341b66Jack Palevich } 26992545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer if (_exception) { 27002545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer jniThrowException(_env, _exceptionType, _exceptionMessage); 27012545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer } 270227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich} 270327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich 270427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glGetFramebufferAttachmentParameterivOES ( GLenum target, GLenum attachment, GLenum pname, GLint *params ) */ 270527f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void 270627f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glGetFramebufferAttachmentParameterivOES__IIILjava_nio_IntBuffer_2 270727f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich (JNIEnv *_env, jobject _this, jint target, jint attachment, jint pname, jobject params_buf) { 270873108675c944ab4ee89631dced23566b12341b66Jack Palevich jint _exception = 0; 27092ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian const char * _exceptionType = NULL; 27102ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian const char * _exceptionMessage = NULL; 271173108675c944ab4ee89631dced23566b12341b66Jack Palevich jarray _array = (jarray) 0; 271217045a16575ece34cfadb63da4791f115625df78Thomas Tafertshofer jint _bufferOffset = (jint) 0; 271373108675c944ab4ee89631dced23566b12341b66Jack Palevich jint _remaining; 271473108675c944ab4ee89631dced23566b12341b66Jack Palevich GLint *params = (GLint *) 0; 271573108675c944ab4ee89631dced23566b12341b66Jack Palevich 271617045a16575ece34cfadb63da4791f115625df78Thomas Tafertshofer params = (GLint *)getPointer(_env, params_buf, &_array, &_remaining, &_bufferOffset); 271773108675c944ab4ee89631dced23566b12341b66Jack Palevich if (_remaining < 1) { 271873108675c944ab4ee89631dced23566b12341b66Jack Palevich _exception = 1; 27192545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exceptionType = "java/lang/IllegalArgumentException"; 27202545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exceptionMessage = "remaining() < 1 < needed"; 272173108675c944ab4ee89631dced23566b12341b66Jack Palevich goto exit; 272273108675c944ab4ee89631dced23566b12341b66Jack Palevich } 272317045a16575ece34cfadb63da4791f115625df78Thomas Tafertshofer if (params == NULL) { 272417045a16575ece34cfadb63da4791f115625df78Thomas Tafertshofer char * _paramsBase = (char *)_env->GetPrimitiveArrayCritical(_array, (jboolean *) 0); 272517045a16575ece34cfadb63da4791f115625df78Thomas Tafertshofer params = (GLint *) (_paramsBase + _bufferOffset); 272617045a16575ece34cfadb63da4791f115625df78Thomas Tafertshofer } 272773108675c944ab4ee89631dced23566b12341b66Jack Palevich glGetFramebufferAttachmentParameterivOES( 272873108675c944ab4ee89631dced23566b12341b66Jack Palevich (GLenum)target, 272973108675c944ab4ee89631dced23566b12341b66Jack Palevich (GLenum)attachment, 273073108675c944ab4ee89631dced23566b12341b66Jack Palevich (GLenum)pname, 273173108675c944ab4ee89631dced23566b12341b66Jack Palevich (GLint *)params 273273108675c944ab4ee89631dced23566b12341b66Jack Palevich ); 273373108675c944ab4ee89631dced23566b12341b66Jack Palevich 273473108675c944ab4ee89631dced23566b12341b66Jack Palevichexit: 273573108675c944ab4ee89631dced23566b12341b66Jack Palevich if (_array) { 273673108675c944ab4ee89631dced23566b12341b66Jack Palevich releasePointer(_env, _array, params, _exception ? JNI_FALSE : JNI_TRUE); 273773108675c944ab4ee89631dced23566b12341b66Jack Palevich } 27382545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer if (_exception) { 27392545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer jniThrowException(_env, _exceptionType, _exceptionMessage); 27402545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer } 274127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich} 274227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich 274327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glGenerateMipmapOES ( GLenum target ) */ 274427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void 274527f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glGenerateMipmapOES__I 274627f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich (JNIEnv *_env, jobject _this, jint target) { 274773108675c944ab4ee89631dced23566b12341b66Jack Palevich glGenerateMipmapOES( 274873108675c944ab4ee89631dced23566b12341b66Jack Palevich (GLenum)target 274973108675c944ab4ee89631dced23566b12341b66Jack Palevich ); 275027f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich} 275127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich 275227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glCurrentPaletteMatrixOES ( GLuint matrixpaletteindex ) */ 275327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void 275427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glCurrentPaletteMatrixOES__I 275527f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich (JNIEnv *_env, jobject _this, jint matrixpaletteindex) { 2756be6eac828f5af8b608c3fa6749330f1dcd6b6206Jack Palevich glCurrentPaletteMatrixOES( 2757be6eac828f5af8b608c3fa6749330f1dcd6b6206Jack Palevich (GLuint)matrixpaletteindex 2758be6eac828f5af8b608c3fa6749330f1dcd6b6206Jack Palevich ); 275927f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich} 276027f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich 276127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glLoadPaletteFromModelViewMatrixOES ( void ) */ 276227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void 276327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glLoadPaletteFromModelViewMatrixOES__ 276427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich (JNIEnv *_env, jobject _this) { 2765be6eac828f5af8b608c3fa6749330f1dcd6b6206Jack Palevich glLoadPaletteFromModelViewMatrixOES(); 276627f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich} 276727f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich 276827f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glMatrixIndexPointerOES ( GLint size, GLenum type, GLsizei stride, const GLvoid *pointer ) */ 276927f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void 2770be6eac828f5af8b608c3fa6749330f1dcd6b6206Jack Palevichandroid_glMatrixIndexPointerOESBounds__IIILjava_nio_Buffer_2I 2771be6eac828f5af8b608c3fa6749330f1dcd6b6206Jack Palevich (JNIEnv *_env, jobject _this, jint size, jint type, jint stride, jobject pointer_buf, jint remaining) { 2772be6eac828f5af8b608c3fa6749330f1dcd6b6206Jack Palevich jarray _array = (jarray) 0; 277317045a16575ece34cfadb63da4791f115625df78Thomas Tafertshofer jint _bufferOffset = (jint) 0; 2774be6eac828f5af8b608c3fa6749330f1dcd6b6206Jack Palevich jint _remaining; 2775be6eac828f5af8b608c3fa6749330f1dcd6b6206Jack Palevich GLvoid *pointer = (GLvoid *) 0; 2776be6eac828f5af8b608c3fa6749330f1dcd6b6206Jack Palevich 2777be6eac828f5af8b608c3fa6749330f1dcd6b6206Jack Palevich if (pointer_buf) { 2778be6eac828f5af8b608c3fa6749330f1dcd6b6206Jack Palevich pointer = (GLvoid *) getDirectBufferPointer(_env, pointer_buf); 2779be6eac828f5af8b608c3fa6749330f1dcd6b6206Jack Palevich if ( ! pointer ) { 2780be6eac828f5af8b608c3fa6749330f1dcd6b6206Jack Palevich return; 2781be6eac828f5af8b608c3fa6749330f1dcd6b6206Jack Palevich } 2782be6eac828f5af8b608c3fa6749330f1dcd6b6206Jack Palevich } 2783be6eac828f5af8b608c3fa6749330f1dcd6b6206Jack Palevich glMatrixIndexPointerOESBounds( 2784be6eac828f5af8b608c3fa6749330f1dcd6b6206Jack Palevich (GLint)size, 2785be6eac828f5af8b608c3fa6749330f1dcd6b6206Jack Palevich (GLenum)type, 2786be6eac828f5af8b608c3fa6749330f1dcd6b6206Jack Palevich (GLsizei)stride, 2787be6eac828f5af8b608c3fa6749330f1dcd6b6206Jack Palevich (GLvoid *)pointer, 2788be6eac828f5af8b608c3fa6749330f1dcd6b6206Jack Palevich (GLsizei)remaining 2789be6eac828f5af8b608c3fa6749330f1dcd6b6206Jack Palevich ); 279027f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich} 279127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich 279227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glWeightPointerOES ( GLint size, GLenum type, GLsizei stride, const GLvoid *pointer ) */ 279327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void 2794be6eac828f5af8b608c3fa6749330f1dcd6b6206Jack Palevichandroid_glWeightPointerOESBounds__IIILjava_nio_Buffer_2I 2795be6eac828f5af8b608c3fa6749330f1dcd6b6206Jack Palevich (JNIEnv *_env, jobject _this, jint size, jint type, jint stride, jobject pointer_buf, jint remaining) { 2796be6eac828f5af8b608c3fa6749330f1dcd6b6206Jack Palevich jarray _array = (jarray) 0; 279717045a16575ece34cfadb63da4791f115625df78Thomas Tafertshofer jint _bufferOffset = (jint) 0; 2798be6eac828f5af8b608c3fa6749330f1dcd6b6206Jack Palevich jint _remaining; 2799be6eac828f5af8b608c3fa6749330f1dcd6b6206Jack Palevich GLvoid *pointer = (GLvoid *) 0; 2800be6eac828f5af8b608c3fa6749330f1dcd6b6206Jack Palevich 2801be6eac828f5af8b608c3fa6749330f1dcd6b6206Jack Palevich if (pointer_buf) { 2802be6eac828f5af8b608c3fa6749330f1dcd6b6206Jack Palevich pointer = (GLvoid *) getDirectBufferPointer(_env, pointer_buf); 2803be6eac828f5af8b608c3fa6749330f1dcd6b6206Jack Palevich if ( ! pointer ) { 2804be6eac828f5af8b608c3fa6749330f1dcd6b6206Jack Palevich return; 2805be6eac828f5af8b608c3fa6749330f1dcd6b6206Jack Palevich } 2806be6eac828f5af8b608c3fa6749330f1dcd6b6206Jack Palevich } 2807be6eac828f5af8b608c3fa6749330f1dcd6b6206Jack Palevich glWeightPointerOESBounds( 2808be6eac828f5af8b608c3fa6749330f1dcd6b6206Jack Palevich (GLint)size, 2809be6eac828f5af8b608c3fa6749330f1dcd6b6206Jack Palevich (GLenum)type, 2810be6eac828f5af8b608c3fa6749330f1dcd6b6206Jack Palevich (GLsizei)stride, 2811be6eac828f5af8b608c3fa6749330f1dcd6b6206Jack Palevich (GLvoid *)pointer, 2812be6eac828f5af8b608c3fa6749330f1dcd6b6206Jack Palevich (GLsizei)remaining 2813be6eac828f5af8b608c3fa6749330f1dcd6b6206Jack Palevich ); 281427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich} 281527f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich 281627f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glDepthRangefOES ( GLclampf zNear, GLclampf zFar ) */ 281727f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void 281827f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glDepthRangefOES__FF 281927f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich (JNIEnv *_env, jobject _this, jfloat zNear, jfloat zFar) { 2820a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich glDepthRangefOES( 2821a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich (GLclampf)zNear, 2822a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich (GLclampf)zFar 2823a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich ); 282427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich} 282527f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich 282627f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glFrustumfOES ( GLfloat left, GLfloat right, GLfloat bottom, GLfloat top, GLfloat zNear, GLfloat zFar ) */ 282727f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void 282827f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glFrustumfOES__FFFFFF 282927f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich (JNIEnv *_env, jobject _this, jfloat left, jfloat right, jfloat bottom, jfloat top, jfloat zNear, jfloat zFar) { 2830a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich glFrustumfOES( 2831a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich (GLfloat)left, 2832a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich (GLfloat)right, 2833a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich (GLfloat)bottom, 2834a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich (GLfloat)top, 2835a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich (GLfloat)zNear, 2836a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich (GLfloat)zFar 2837a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich ); 283827f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich} 283927f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich 284027f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glOrthofOES ( GLfloat left, GLfloat right, GLfloat bottom, GLfloat top, GLfloat zNear, GLfloat zFar ) */ 284127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void 284227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glOrthofOES__FFFFFF 284327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich (JNIEnv *_env, jobject _this, jfloat left, jfloat right, jfloat bottom, jfloat top, jfloat zNear, jfloat zFar) { 2844a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich glOrthofOES( 2845a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich (GLfloat)left, 2846a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich (GLfloat)right, 2847a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich (GLfloat)bottom, 2848a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich (GLfloat)top, 2849a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich (GLfloat)zNear, 2850a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich (GLfloat)zFar 2851a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich ); 285227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich} 285327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich 285427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glClipPlanefOES ( GLenum plane, const GLfloat *equation ) */ 285527f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void 285627f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glClipPlanefOES__I_3FI 285727f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich (JNIEnv *_env, jobject _this, jint plane, jfloatArray equation_ref, jint offset) { 28582545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer jint _exception = 0; 28592ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian const char * _exceptionType = NULL; 28602ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian const char * _exceptionMessage = NULL; 2861a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich GLfloat *equation_base = (GLfloat *) 0; 2862a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich jint _remaining; 2863a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich GLfloat *equation = (GLfloat *) 0; 2864a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich 2865a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich if (!equation_ref) { 28662545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exception = 1; 28672545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exceptionType = "java/lang/IllegalArgumentException"; 28682545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exceptionMessage = "equation == null"; 2869a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich goto exit; 2870a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich } 2871a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich if (offset < 0) { 28722545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exception = 1; 28732545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exceptionType = "java/lang/IllegalArgumentException"; 28742545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exceptionMessage = "offset < 0"; 2875a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich goto exit; 2876a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich } 2877a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich _remaining = _env->GetArrayLength(equation_ref) - offset; 2878a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich equation_base = (GLfloat *) 2879a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich _env->GetPrimitiveArrayCritical(equation_ref, (jboolean *)0); 2880a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich equation = equation_base + offset; 2881a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich 2882a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich glClipPlanefOES( 2883a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich (GLenum)plane, 2884a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich (GLfloat *)equation 2885a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich ); 2886a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich 2887a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevichexit: 2888a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich if (equation_base) { 2889a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich _env->ReleasePrimitiveArrayCritical(equation_ref, equation_base, 2890a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich JNI_ABORT); 2891a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich } 28922545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer if (_exception) { 28932545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer jniThrowException(_env, _exceptionType, _exceptionMessage); 28942545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer } 289527f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich} 289627f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich 289727f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glClipPlanefOES ( GLenum plane, const GLfloat *equation ) */ 289827f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void 289927f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glClipPlanefOES__ILjava_nio_FloatBuffer_2 290027f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich (JNIEnv *_env, jobject _this, jint plane, jobject equation_buf) { 2901a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich jarray _array = (jarray) 0; 290217045a16575ece34cfadb63da4791f115625df78Thomas Tafertshofer jint _bufferOffset = (jint) 0; 2903a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich jint _remaining; 2904a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich GLfloat *equation = (GLfloat *) 0; 2905a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich 290617045a16575ece34cfadb63da4791f115625df78Thomas Tafertshofer equation = (GLfloat *)getPointer(_env, equation_buf, &_array, &_remaining, &_bufferOffset); 290717045a16575ece34cfadb63da4791f115625df78Thomas Tafertshofer if (equation == NULL) { 290817045a16575ece34cfadb63da4791f115625df78Thomas Tafertshofer char * _equationBase = (char *)_env->GetPrimitiveArrayCritical(_array, (jboolean *) 0); 290917045a16575ece34cfadb63da4791f115625df78Thomas Tafertshofer equation = (GLfloat *) (_equationBase + _bufferOffset); 291017045a16575ece34cfadb63da4791f115625df78Thomas Tafertshofer } 2911a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich glClipPlanefOES( 2912a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich (GLenum)plane, 2913a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich (GLfloat *)equation 2914a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich ); 2915a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich if (_array) { 2916a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich releasePointer(_env, _array, equation, JNI_FALSE); 2917a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich } 291827f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich} 291927f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich 292027f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glGetClipPlanefOES ( GLenum pname, GLfloat *eqn ) */ 292127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void 292227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glGetClipPlanefOES__I_3FI 292327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich (JNIEnv *_env, jobject _this, jint pname, jfloatArray eqn_ref, jint offset) { 2924a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich jint _exception = 0; 29252ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian const char * _exceptionType = NULL; 29262ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian const char * _exceptionMessage = NULL; 2927a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich GLfloat *eqn_base = (GLfloat *) 0; 2928a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich jint _remaining; 2929a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich GLfloat *eqn = (GLfloat *) 0; 2930a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich 2931a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich if (!eqn_ref) { 2932a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich _exception = 1; 29332545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exceptionType = "java/lang/IllegalArgumentException"; 29342545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exceptionMessage = "eqn == null"; 2935a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich goto exit; 2936a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich } 2937a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich if (offset < 0) { 2938a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich _exception = 1; 29392545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exceptionType = "java/lang/IllegalArgumentException"; 29402545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exceptionMessage = "offset < 0"; 2941a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich goto exit; 2942a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich } 2943a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich _remaining = _env->GetArrayLength(eqn_ref) - offset; 2944a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich if (_remaining < 4) { 2945a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich _exception = 1; 29462545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exceptionType = "java/lang/IllegalArgumentException"; 29472545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exceptionMessage = "length - offset < 4 < needed"; 2948a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich goto exit; 2949a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich } 2950a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich eqn_base = (GLfloat *) 2951a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich _env->GetPrimitiveArrayCritical(eqn_ref, (jboolean *)0); 2952a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich eqn = eqn_base + offset; 2953a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich 2954a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich glGetClipPlanefOES( 2955a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich (GLenum)pname, 2956a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich (GLfloat *)eqn 2957a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich ); 2958a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich 2959a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevichexit: 2960a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich if (eqn_base) { 2961a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich _env->ReleasePrimitiveArrayCritical(eqn_ref, eqn_base, 2962a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich _exception ? JNI_ABORT: 0); 2963a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich } 29642545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer if (_exception) { 29652545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer jniThrowException(_env, _exceptionType, _exceptionMessage); 29662545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer } 296727f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich} 296827f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich 296927f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glGetClipPlanefOES ( GLenum pname, GLfloat *eqn ) */ 297027f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void 297127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glGetClipPlanefOES__ILjava_nio_FloatBuffer_2 297227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich (JNIEnv *_env, jobject _this, jint pname, jobject eqn_buf) { 2973a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich jint _exception = 0; 29742ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian const char * _exceptionType = NULL; 29752ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian const char * _exceptionMessage = NULL; 2976a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich jarray _array = (jarray) 0; 297717045a16575ece34cfadb63da4791f115625df78Thomas Tafertshofer jint _bufferOffset = (jint) 0; 2978a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich jint _remaining; 2979a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich GLfloat *eqn = (GLfloat *) 0; 2980a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich 298117045a16575ece34cfadb63da4791f115625df78Thomas Tafertshofer eqn = (GLfloat *)getPointer(_env, eqn_buf, &_array, &_remaining, &_bufferOffset); 2982a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich if (_remaining < 4) { 2983a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich _exception = 1; 29842545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exceptionType = "java/lang/IllegalArgumentException"; 29852545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exceptionMessage = "remaining() < 4 < needed"; 2986a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich goto exit; 2987a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich } 298817045a16575ece34cfadb63da4791f115625df78Thomas Tafertshofer if (eqn == NULL) { 298917045a16575ece34cfadb63da4791f115625df78Thomas Tafertshofer char * _eqnBase = (char *)_env->GetPrimitiveArrayCritical(_array, (jboolean *) 0); 299017045a16575ece34cfadb63da4791f115625df78Thomas Tafertshofer eqn = (GLfloat *) (_eqnBase + _bufferOffset); 299117045a16575ece34cfadb63da4791f115625df78Thomas Tafertshofer } 2992a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich glGetClipPlanefOES( 2993a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich (GLenum)pname, 2994a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich (GLfloat *)eqn 2995a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich ); 2996a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich 2997a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevichexit: 2998a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich if (_array) { 2999a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich releasePointer(_env, _array, eqn, _exception ? JNI_FALSE : JNI_TRUE); 3000a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich } 30012545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer if (_exception) { 30022545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer jniThrowException(_env, _exceptionType, _exceptionMessage); 30032545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer } 300427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich} 300527f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich 300627f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glClearDepthfOES ( GLclampf depth ) */ 300727f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void 300827f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glClearDepthfOES__F 300927f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich (JNIEnv *_env, jobject _this, jfloat depth) { 3010a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich glClearDepthfOES( 3011a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich (GLclampf)depth 3012a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich ); 301327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich} 301427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich 301527f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glTexGenfOES ( GLenum coord, GLenum pname, GLfloat param ) */ 301627f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void 301727f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glTexGenfOES__IIF 301827f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich (JNIEnv *_env, jobject _this, jint coord, jint pname, jfloat param) { 3019a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich glTexGenfOES( 3020a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich (GLenum)coord, 3021a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich (GLenum)pname, 3022a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich (GLfloat)param 3023a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich ); 302427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich} 302527f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich 302627f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glTexGenfvOES ( GLenum coord, GLenum pname, const GLfloat *params ) */ 302727f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void 302827f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glTexGenfvOES__II_3FI 302927f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich (JNIEnv *_env, jobject _this, jint coord, jint pname, jfloatArray params_ref, jint offset) { 30302545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer jint _exception = 0; 30312ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian const char * _exceptionType = NULL; 30322ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian const char * _exceptionMessage = NULL; 3033a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich GLfloat *params_base = (GLfloat *) 0; 3034a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich jint _remaining; 3035a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich GLfloat *params = (GLfloat *) 0; 3036a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich 3037a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich if (!params_ref) { 30382545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exception = 1; 30392545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exceptionType = "java/lang/IllegalArgumentException"; 30402545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exceptionMessage = "params == null"; 3041a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich goto exit; 3042a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich } 3043a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich if (offset < 0) { 30442545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exception = 1; 30452545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exceptionType = "java/lang/IllegalArgumentException"; 30462545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exceptionMessage = "offset < 0"; 3047a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich goto exit; 3048a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich } 3049a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich _remaining = _env->GetArrayLength(params_ref) - offset; 3050a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich params_base = (GLfloat *) 3051a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich _env->GetPrimitiveArrayCritical(params_ref, (jboolean *)0); 3052a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich params = params_base + offset; 3053a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich 3054a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich glTexGenfvOES( 3055a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich (GLenum)coord, 3056a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich (GLenum)pname, 3057a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich (GLfloat *)params 3058a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich ); 3059a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich 3060a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevichexit: 3061a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich if (params_base) { 3062a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich _env->ReleasePrimitiveArrayCritical(params_ref, params_base, 3063a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich JNI_ABORT); 3064a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich } 30652545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer if (_exception) { 30662545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer jniThrowException(_env, _exceptionType, _exceptionMessage); 30672545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer } 306827f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich} 306927f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich 307027f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glTexGenfvOES ( GLenum coord, GLenum pname, const GLfloat *params ) */ 307127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void 307227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glTexGenfvOES__IILjava_nio_FloatBuffer_2 307327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich (JNIEnv *_env, jobject _this, jint coord, jint pname, jobject params_buf) { 3074a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich jarray _array = (jarray) 0; 307517045a16575ece34cfadb63da4791f115625df78Thomas Tafertshofer jint _bufferOffset = (jint) 0; 3076a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich jint _remaining; 3077a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich GLfloat *params = (GLfloat *) 0; 3078a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich 307917045a16575ece34cfadb63da4791f115625df78Thomas Tafertshofer params = (GLfloat *)getPointer(_env, params_buf, &_array, &_remaining, &_bufferOffset); 308017045a16575ece34cfadb63da4791f115625df78Thomas Tafertshofer if (params == NULL) { 308117045a16575ece34cfadb63da4791f115625df78Thomas Tafertshofer char * _paramsBase = (char *)_env->GetPrimitiveArrayCritical(_array, (jboolean *) 0); 308217045a16575ece34cfadb63da4791f115625df78Thomas Tafertshofer params = (GLfloat *) (_paramsBase + _bufferOffset); 308317045a16575ece34cfadb63da4791f115625df78Thomas Tafertshofer } 3084a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich glTexGenfvOES( 3085a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich (GLenum)coord, 3086a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich (GLenum)pname, 3087a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich (GLfloat *)params 3088a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich ); 3089a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich if (_array) { 3090a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich releasePointer(_env, _array, params, JNI_FALSE); 3091a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich } 309227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich} 309327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich 309427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glTexGeniOES ( GLenum coord, GLenum pname, GLint param ) */ 309527f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void 309627f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glTexGeniOES__III 309727f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich (JNIEnv *_env, jobject _this, jint coord, jint pname, jint param) { 3098a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich glTexGeniOES( 3099a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich (GLenum)coord, 3100a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich (GLenum)pname, 3101a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich (GLint)param 3102a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich ); 310327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich} 310427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich 310527f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glTexGenivOES ( GLenum coord, GLenum pname, const GLint *params ) */ 310627f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void 310727f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glTexGenivOES__II_3II 310827f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich (JNIEnv *_env, jobject _this, jint coord, jint pname, jintArray params_ref, jint offset) { 31092545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer jint _exception = 0; 31102ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian const char * _exceptionType = NULL; 31112ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian const char * _exceptionMessage = NULL; 3112a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich GLint *params_base = (GLint *) 0; 3113a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich jint _remaining; 3114a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich GLint *params = (GLint *) 0; 3115a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich 3116a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich if (!params_ref) { 31172545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exception = 1; 31182545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exceptionType = "java/lang/IllegalArgumentException"; 31192545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exceptionMessage = "params == null"; 3120a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich goto exit; 3121a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich } 3122a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich if (offset < 0) { 31232545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exception = 1; 31242545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exceptionType = "java/lang/IllegalArgumentException"; 31252545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exceptionMessage = "offset < 0"; 3126a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich goto exit; 3127a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich } 3128a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich _remaining = _env->GetArrayLength(params_ref) - offset; 3129a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich params_base = (GLint *) 3130a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich _env->GetPrimitiveArrayCritical(params_ref, (jboolean *)0); 3131a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich params = params_base + offset; 3132a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich 3133a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich glTexGenivOES( 3134a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich (GLenum)coord, 3135a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich (GLenum)pname, 3136a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich (GLint *)params 3137a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich ); 3138a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich 3139a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevichexit: 3140a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich if (params_base) { 3141a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich _env->ReleasePrimitiveArrayCritical(params_ref, params_base, 3142a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich JNI_ABORT); 3143a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich } 31442545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer if (_exception) { 31452545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer jniThrowException(_env, _exceptionType, _exceptionMessage); 31462545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer } 314727f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich} 314827f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich 314927f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glTexGenivOES ( GLenum coord, GLenum pname, const GLint *params ) */ 315027f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void 315127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glTexGenivOES__IILjava_nio_IntBuffer_2 315227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich (JNIEnv *_env, jobject _this, jint coord, jint pname, jobject params_buf) { 3153a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich jarray _array = (jarray) 0; 315417045a16575ece34cfadb63da4791f115625df78Thomas Tafertshofer jint _bufferOffset = (jint) 0; 3155a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich jint _remaining; 3156a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich GLint *params = (GLint *) 0; 3157a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich 315817045a16575ece34cfadb63da4791f115625df78Thomas Tafertshofer params = (GLint *)getPointer(_env, params_buf, &_array, &_remaining, &_bufferOffset); 315917045a16575ece34cfadb63da4791f115625df78Thomas Tafertshofer if (params == NULL) { 316017045a16575ece34cfadb63da4791f115625df78Thomas Tafertshofer char * _paramsBase = (char *)_env->GetPrimitiveArrayCritical(_array, (jboolean *) 0); 316117045a16575ece34cfadb63da4791f115625df78Thomas Tafertshofer params = (GLint *) (_paramsBase + _bufferOffset); 316217045a16575ece34cfadb63da4791f115625df78Thomas Tafertshofer } 3163a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich glTexGenivOES( 3164a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich (GLenum)coord, 3165a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich (GLenum)pname, 3166a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich (GLint *)params 3167a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich ); 3168a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich if (_array) { 3169a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich releasePointer(_env, _array, params, JNI_FALSE); 3170a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich } 317127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich} 317227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich 317327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glTexGenxOES ( GLenum coord, GLenum pname, GLfixed param ) */ 317427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void 317527f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glTexGenxOES__III 317627f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich (JNIEnv *_env, jobject _this, jint coord, jint pname, jint param) { 3177a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich glTexGenxOES( 3178a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich (GLenum)coord, 3179a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich (GLenum)pname, 3180a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich (GLfixed)param 3181a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich ); 318227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich} 318327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich 318427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glTexGenxvOES ( GLenum coord, GLenum pname, const GLfixed *params ) */ 318527f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void 318627f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glTexGenxvOES__II_3II 318727f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich (JNIEnv *_env, jobject _this, jint coord, jint pname, jintArray params_ref, jint offset) { 31882545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer jint _exception = 0; 31892ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian const char * _exceptionType = NULL; 31902ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian const char * _exceptionMessage = NULL; 3191a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich GLfixed *params_base = (GLfixed *) 0; 3192a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich jint _remaining; 3193a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich GLfixed *params = (GLfixed *) 0; 3194a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich 3195a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich if (!params_ref) { 31962545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exception = 1; 31972545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exceptionType = "java/lang/IllegalArgumentException"; 31982545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exceptionMessage = "params == null"; 3199a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich goto exit; 3200a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich } 3201a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich if (offset < 0) { 32022545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exception = 1; 32032545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exceptionType = "java/lang/IllegalArgumentException"; 32042545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exceptionMessage = "offset < 0"; 3205a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich goto exit; 3206a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich } 3207a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich _remaining = _env->GetArrayLength(params_ref) - offset; 3208a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich params_base = (GLfixed *) 3209a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich _env->GetPrimitiveArrayCritical(params_ref, (jboolean *)0); 3210a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich params = params_base + offset; 3211a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich 3212a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich glTexGenxvOES( 3213a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich (GLenum)coord, 3214a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich (GLenum)pname, 3215a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich (GLfixed *)params 3216a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich ); 3217a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich 3218a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevichexit: 3219a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich if (params_base) { 3220a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich _env->ReleasePrimitiveArrayCritical(params_ref, params_base, 3221a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich JNI_ABORT); 3222a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich } 32232545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer if (_exception) { 32242545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer jniThrowException(_env, _exceptionType, _exceptionMessage); 32252545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer } 322627f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich} 322727f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich 322827f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glTexGenxvOES ( GLenum coord, GLenum pname, const GLfixed *params ) */ 322927f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void 323027f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glTexGenxvOES__IILjava_nio_IntBuffer_2 323127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich (JNIEnv *_env, jobject _this, jint coord, jint pname, jobject params_buf) { 3232a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich jarray _array = (jarray) 0; 323317045a16575ece34cfadb63da4791f115625df78Thomas Tafertshofer jint _bufferOffset = (jint) 0; 3234a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich jint _remaining; 3235a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich GLfixed *params = (GLfixed *) 0; 3236a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich 323717045a16575ece34cfadb63da4791f115625df78Thomas Tafertshofer params = (GLfixed *)getPointer(_env, params_buf, &_array, &_remaining, &_bufferOffset); 323817045a16575ece34cfadb63da4791f115625df78Thomas Tafertshofer if (params == NULL) { 323917045a16575ece34cfadb63da4791f115625df78Thomas Tafertshofer char * _paramsBase = (char *)_env->GetPrimitiveArrayCritical(_array, (jboolean *) 0); 324017045a16575ece34cfadb63da4791f115625df78Thomas Tafertshofer params = (GLfixed *) (_paramsBase + _bufferOffset); 324117045a16575ece34cfadb63da4791f115625df78Thomas Tafertshofer } 3242a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich glTexGenxvOES( 3243a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich (GLenum)coord, 3244a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich (GLenum)pname, 3245a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich (GLfixed *)params 3246a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich ); 3247a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich if (_array) { 3248a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich releasePointer(_env, _array, params, JNI_FALSE); 3249a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich } 325027f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich} 325127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich 325227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glGetTexGenfvOES ( GLenum coord, GLenum pname, GLfloat *params ) */ 325327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void 325427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glGetTexGenfvOES__II_3FI 325527f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich (JNIEnv *_env, jobject _this, jint coord, jint pname, jfloatArray params_ref, jint offset) { 3256a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich jint _exception = 0; 32572ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian const char * _exceptionType = NULL; 32582ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian const char * _exceptionMessage = NULL; 3259a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich GLfloat *params_base = (GLfloat *) 0; 3260a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich jint _remaining; 3261a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich GLfloat *params = (GLfloat *) 0; 3262a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich 3263a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich if (!params_ref) { 3264a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich _exception = 1; 32652545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exceptionType = "java/lang/IllegalArgumentException"; 32662545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exceptionMessage = "params == null"; 3267a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich goto exit; 3268a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich } 3269a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich if (offset < 0) { 3270a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich _exception = 1; 32712545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exceptionType = "java/lang/IllegalArgumentException"; 32722545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exceptionMessage = "offset < 0"; 3273a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich goto exit; 3274a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich } 3275a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich _remaining = _env->GetArrayLength(params_ref) - offset; 3276a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich params_base = (GLfloat *) 3277a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich _env->GetPrimitiveArrayCritical(params_ref, (jboolean *)0); 3278a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich params = params_base + offset; 3279a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich 3280a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich glGetTexGenfvOES( 3281a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich (GLenum)coord, 3282a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich (GLenum)pname, 3283a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich (GLfloat *)params 3284a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich ); 3285a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich 3286a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevichexit: 3287a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich if (params_base) { 3288a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich _env->ReleasePrimitiveArrayCritical(params_ref, params_base, 3289a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich _exception ? JNI_ABORT: 0); 3290a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich } 32912545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer if (_exception) { 32922545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer jniThrowException(_env, _exceptionType, _exceptionMessage); 32932545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer } 329427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich} 329527f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich 329627f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glGetTexGenfvOES ( GLenum coord, GLenum pname, GLfloat *params ) */ 329727f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void 329827f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glGetTexGenfvOES__IILjava_nio_FloatBuffer_2 329927f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich (JNIEnv *_env, jobject _this, jint coord, jint pname, jobject params_buf) { 3300a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich jarray _array = (jarray) 0; 330117045a16575ece34cfadb63da4791f115625df78Thomas Tafertshofer jint _bufferOffset = (jint) 0; 3302a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich jint _remaining; 3303a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich GLfloat *params = (GLfloat *) 0; 3304a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich 330517045a16575ece34cfadb63da4791f115625df78Thomas Tafertshofer params = (GLfloat *)getPointer(_env, params_buf, &_array, &_remaining, &_bufferOffset); 330617045a16575ece34cfadb63da4791f115625df78Thomas Tafertshofer if (params == NULL) { 330717045a16575ece34cfadb63da4791f115625df78Thomas Tafertshofer char * _paramsBase = (char *)_env->GetPrimitiveArrayCritical(_array, (jboolean *) 0); 330817045a16575ece34cfadb63da4791f115625df78Thomas Tafertshofer params = (GLfloat *) (_paramsBase + _bufferOffset); 330917045a16575ece34cfadb63da4791f115625df78Thomas Tafertshofer } 3310a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich glGetTexGenfvOES( 3311a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich (GLenum)coord, 3312a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich (GLenum)pname, 3313a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich (GLfloat *)params 3314a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich ); 3315a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich if (_array) { 33162545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer releasePointer(_env, _array, params, JNI_TRUE); 3317a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich } 331827f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich} 331927f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich 332027f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glGetTexGenivOES ( GLenum coord, GLenum pname, GLint *params ) */ 332127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void 332227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glGetTexGenivOES__II_3II 332327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich (JNIEnv *_env, jobject _this, jint coord, jint pname, jintArray params_ref, jint offset) { 3324a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich jint _exception = 0; 33252ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian const char * _exceptionType = NULL; 33262ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian const char * _exceptionMessage = NULL; 3327a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich GLint *params_base = (GLint *) 0; 3328a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich jint _remaining; 3329a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich GLint *params = (GLint *) 0; 3330a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich 3331a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich if (!params_ref) { 3332a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich _exception = 1; 33332545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exceptionType = "java/lang/IllegalArgumentException"; 33342545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exceptionMessage = "params == null"; 3335a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich goto exit; 3336a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich } 3337a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich if (offset < 0) { 3338a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich _exception = 1; 33392545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exceptionType = "java/lang/IllegalArgumentException"; 33402545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exceptionMessage = "offset < 0"; 3341a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich goto exit; 3342a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich } 3343a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich _remaining = _env->GetArrayLength(params_ref) - offset; 3344a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich params_base = (GLint *) 3345a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich _env->GetPrimitiveArrayCritical(params_ref, (jboolean *)0); 3346a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich params = params_base + offset; 3347a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich 3348a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich glGetTexGenivOES( 3349a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich (GLenum)coord, 3350a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich (GLenum)pname, 3351a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich (GLint *)params 3352a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich ); 3353a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich 3354a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevichexit: 3355a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich if (params_base) { 3356a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich _env->ReleasePrimitiveArrayCritical(params_ref, params_base, 3357a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich _exception ? JNI_ABORT: 0); 3358a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich } 33592545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer if (_exception) { 33602545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer jniThrowException(_env, _exceptionType, _exceptionMessage); 33612545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer } 336227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich} 336327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich 336427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glGetTexGenivOES ( GLenum coord, GLenum pname, GLint *params ) */ 336527f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void 336627f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glGetTexGenivOES__IILjava_nio_IntBuffer_2 336727f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich (JNIEnv *_env, jobject _this, jint coord, jint pname, jobject params_buf) { 3368a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich jarray _array = (jarray) 0; 336917045a16575ece34cfadb63da4791f115625df78Thomas Tafertshofer jint _bufferOffset = (jint) 0; 3370a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich jint _remaining; 3371a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich GLint *params = (GLint *) 0; 3372a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich 337317045a16575ece34cfadb63da4791f115625df78Thomas Tafertshofer params = (GLint *)getPointer(_env, params_buf, &_array, &_remaining, &_bufferOffset); 337417045a16575ece34cfadb63da4791f115625df78Thomas Tafertshofer if (params == NULL) { 337517045a16575ece34cfadb63da4791f115625df78Thomas Tafertshofer char * _paramsBase = (char *)_env->GetPrimitiveArrayCritical(_array, (jboolean *) 0); 337617045a16575ece34cfadb63da4791f115625df78Thomas Tafertshofer params = (GLint *) (_paramsBase + _bufferOffset); 337717045a16575ece34cfadb63da4791f115625df78Thomas Tafertshofer } 3378a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich glGetTexGenivOES( 3379a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich (GLenum)coord, 3380a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich (GLenum)pname, 3381a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich (GLint *)params 3382a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich ); 3383a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich if (_array) { 33842545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer releasePointer(_env, _array, params, JNI_TRUE); 3385a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich } 338627f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich} 338727f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich 338827f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glGetTexGenxvOES ( GLenum coord, GLenum pname, GLfixed *params ) */ 338927f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void 339027f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glGetTexGenxvOES__II_3II 339127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich (JNIEnv *_env, jobject _this, jint coord, jint pname, jintArray params_ref, jint offset) { 3392a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich jint _exception = 0; 33932ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian const char * _exceptionType = NULL; 33942ad0477f16c64dc3126741933f11e27353521bb4Mathias Agopian const char * _exceptionMessage = NULL; 3395a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich GLfixed *params_base = (GLfixed *) 0; 3396a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich jint _remaining; 3397a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich GLfixed *params = (GLfixed *) 0; 3398a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich 3399a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich if (!params_ref) { 3400a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich _exception = 1; 34012545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exceptionType = "java/lang/IllegalArgumentException"; 34022545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exceptionMessage = "params == null"; 3403a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich goto exit; 3404a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich } 3405a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich if (offset < 0) { 3406a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich _exception = 1; 34072545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exceptionType = "java/lang/IllegalArgumentException"; 34082545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer _exceptionMessage = "offset < 0"; 3409a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich goto exit; 3410a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich } 3411a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich _remaining = _env->GetArrayLength(params_ref) - offset; 3412a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich params_base = (GLfixed *) 3413a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich _env->GetPrimitiveArrayCritical(params_ref, (jboolean *)0); 3414a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich params = params_base + offset; 3415a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich 3416a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich glGetTexGenxvOES( 3417a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich (GLenum)coord, 3418a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich (GLenum)pname, 3419a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich (GLfixed *)params 3420a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich ); 3421a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich 3422a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevichexit: 3423a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich if (params_base) { 3424a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich _env->ReleasePrimitiveArrayCritical(params_ref, params_base, 3425a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich _exception ? JNI_ABORT: 0); 3426a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich } 34272545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer if (_exception) { 34282545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer jniThrowException(_env, _exceptionType, _exceptionMessage); 34292545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer } 343027f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich} 343127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich 343227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glGetTexGenxvOES ( GLenum coord, GLenum pname, GLfixed *params ) */ 343327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void 343427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glGetTexGenxvOES__IILjava_nio_IntBuffer_2 343527f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich (JNIEnv *_env, jobject _this, jint coord, jint pname, jobject params_buf) { 3436a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich jarray _array = (jarray) 0; 343717045a16575ece34cfadb63da4791f115625df78Thomas Tafertshofer jint _bufferOffset = (jint) 0; 3438a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich jint _remaining; 3439a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich GLfixed *params = (GLfixed *) 0; 3440a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich 344117045a16575ece34cfadb63da4791f115625df78Thomas Tafertshofer params = (GLfixed *)getPointer(_env, params_buf, &_array, &_remaining, &_bufferOffset); 344217045a16575ece34cfadb63da4791f115625df78Thomas Tafertshofer if (params == NULL) { 344317045a16575ece34cfadb63da4791f115625df78Thomas Tafertshofer char * _paramsBase = (char *)_env->GetPrimitiveArrayCritical(_array, (jboolean *) 0); 344417045a16575ece34cfadb63da4791f115625df78Thomas Tafertshofer params = (GLfixed *) (_paramsBase + _bufferOffset); 344517045a16575ece34cfadb63da4791f115625df78Thomas Tafertshofer } 3446a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich glGetTexGenxvOES( 3447a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich (GLenum)coord, 3448a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich (GLenum)pname, 3449a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich (GLfixed *)params 3450a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich ); 3451a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich if (_array) { 34522545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer releasePointer(_env, _array, params, JNI_TRUE); 3453a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich } 345427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich} 345527f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich 345627f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic const char *classPathName = "android/opengl/GLES11Ext"; 345727f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich 345827f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic JNINativeMethod methods[] = { 345927f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"_nativeClassInit", "()V", (void*)nativeClassInit }, 346027f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glBlendEquationSeparateOES", "(II)V", (void *) android_glBlendEquationSeparateOES__II }, 346127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glBlendFuncSeparateOES", "(IIII)V", (void *) android_glBlendFuncSeparateOES__IIII }, 346227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glBlendEquationOES", "(I)V", (void *) android_glBlendEquationOES__I }, 346327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glDrawTexsOES", "(SSSSS)V", (void *) android_glDrawTexsOES__SSSSS }, 346427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glDrawTexiOES", "(IIIII)V", (void *) android_glDrawTexiOES__IIIII }, 346527f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glDrawTexxOES", "(IIIII)V", (void *) android_glDrawTexxOES__IIIII }, 346627f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glDrawTexsvOES", "([SI)V", (void *) android_glDrawTexsvOES___3SI }, 346727f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glDrawTexsvOES", "(Ljava/nio/ShortBuffer;)V", (void *) android_glDrawTexsvOES__Ljava_nio_ShortBuffer_2 }, 346827f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glDrawTexivOES", "([II)V", (void *) android_glDrawTexivOES___3II }, 346927f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glDrawTexivOES", "(Ljava/nio/IntBuffer;)V", (void *) android_glDrawTexivOES__Ljava_nio_IntBuffer_2 }, 347027f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glDrawTexxvOES", "([II)V", (void *) android_glDrawTexxvOES___3II }, 347127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glDrawTexxvOES", "(Ljava/nio/IntBuffer;)V", (void *) android_glDrawTexxvOES__Ljava_nio_IntBuffer_2 }, 347227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glDrawTexfOES", "(FFFFF)V", (void *) android_glDrawTexfOES__FFFFF }, 347327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glDrawTexfvOES", "([FI)V", (void *) android_glDrawTexfvOES___3FI }, 347427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glDrawTexfvOES", "(Ljava/nio/FloatBuffer;)V", (void *) android_glDrawTexfvOES__Ljava_nio_FloatBuffer_2 }, 347527f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glEGLImageTargetTexture2DOES", "(ILjava/nio/Buffer;)V", (void *) android_glEGLImageTargetTexture2DOES__ILjava_nio_Buffer_2 }, 347627f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glEGLImageTargetRenderbufferStorageOES", "(ILjava/nio/Buffer;)V", (void *) android_glEGLImageTargetRenderbufferStorageOES__ILjava_nio_Buffer_2 }, 347727f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glAlphaFuncxOES", "(II)V", (void *) android_glAlphaFuncxOES__II }, 347827f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glClearColorxOES", "(IIII)V", (void *) android_glClearColorxOES__IIII }, 347927f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glClearDepthxOES", "(I)V", (void *) android_glClearDepthxOES__I }, 348027f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glClipPlanexOES", "(I[II)V", (void *) android_glClipPlanexOES__I_3II }, 348127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glClipPlanexOES", "(ILjava/nio/IntBuffer;)V", (void *) android_glClipPlanexOES__ILjava_nio_IntBuffer_2 }, 348227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glColor4xOES", "(IIII)V", (void *) android_glColor4xOES__IIII }, 348327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glDepthRangexOES", "(II)V", (void *) android_glDepthRangexOES__II }, 348427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glFogxOES", "(II)V", (void *) android_glFogxOES__II }, 348527f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glFogxvOES", "(I[II)V", (void *) android_glFogxvOES__I_3II }, 348627f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glFogxvOES", "(ILjava/nio/IntBuffer;)V", (void *) android_glFogxvOES__ILjava_nio_IntBuffer_2 }, 348727f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glFrustumxOES", "(IIIIII)V", (void *) android_glFrustumxOES__IIIIII }, 348827f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glGetClipPlanexOES", "(I[II)V", (void *) android_glGetClipPlanexOES__I_3II }, 348927f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glGetClipPlanexOES", "(ILjava/nio/IntBuffer;)V", (void *) android_glGetClipPlanexOES__ILjava_nio_IntBuffer_2 }, 349027f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glGetFixedvOES", "(I[II)V", (void *) android_glGetFixedvOES__I_3II }, 349127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glGetFixedvOES", "(ILjava/nio/IntBuffer;)V", (void *) android_glGetFixedvOES__ILjava_nio_IntBuffer_2 }, 349227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glGetLightxvOES", "(II[II)V", (void *) android_glGetLightxvOES__II_3II }, 349327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glGetLightxvOES", "(IILjava/nio/IntBuffer;)V", (void *) android_glGetLightxvOES__IILjava_nio_IntBuffer_2 }, 349427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glGetMaterialxvOES", "(II[II)V", (void *) android_glGetMaterialxvOES__II_3II }, 349527f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glGetMaterialxvOES", "(IILjava/nio/IntBuffer;)V", (void *) android_glGetMaterialxvOES__IILjava_nio_IntBuffer_2 }, 349627f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glGetTexEnvxvOES", "(II[II)V", (void *) android_glGetTexEnvxvOES__II_3II }, 349727f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glGetTexEnvxvOES", "(IILjava/nio/IntBuffer;)V", (void *) android_glGetTexEnvxvOES__IILjava_nio_IntBuffer_2 }, 349827f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glGetTexParameterxvOES", "(II[II)V", (void *) android_glGetTexParameterxvOES__II_3II }, 349927f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glGetTexParameterxvOES", "(IILjava/nio/IntBuffer;)V", (void *) android_glGetTexParameterxvOES__IILjava_nio_IntBuffer_2 }, 350027f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glLightModelxOES", "(II)V", (void *) android_glLightModelxOES__II }, 350127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glLightModelxvOES", "(I[II)V", (void *) android_glLightModelxvOES__I_3II }, 350227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glLightModelxvOES", "(ILjava/nio/IntBuffer;)V", (void *) android_glLightModelxvOES__ILjava_nio_IntBuffer_2 }, 350327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glLightxOES", "(III)V", (void *) android_glLightxOES__III }, 350427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glLightxvOES", "(II[II)V", (void *) android_glLightxvOES__II_3II }, 350527f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glLightxvOES", "(IILjava/nio/IntBuffer;)V", (void *) android_glLightxvOES__IILjava_nio_IntBuffer_2 }, 350627f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glLineWidthxOES", "(I)V", (void *) android_glLineWidthxOES__I }, 350727f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glLoadMatrixxOES", "([II)V", (void *) android_glLoadMatrixxOES___3II }, 350827f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glLoadMatrixxOES", "(Ljava/nio/IntBuffer;)V", (void *) android_glLoadMatrixxOES__Ljava_nio_IntBuffer_2 }, 350927f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glMaterialxOES", "(III)V", (void *) android_glMaterialxOES__III }, 351027f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glMaterialxvOES", "(II[II)V", (void *) android_glMaterialxvOES__II_3II }, 351127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glMaterialxvOES", "(IILjava/nio/IntBuffer;)V", (void *) android_glMaterialxvOES__IILjava_nio_IntBuffer_2 }, 351227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glMultMatrixxOES", "([II)V", (void *) android_glMultMatrixxOES___3II }, 351327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glMultMatrixxOES", "(Ljava/nio/IntBuffer;)V", (void *) android_glMultMatrixxOES__Ljava_nio_IntBuffer_2 }, 351427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glMultiTexCoord4xOES", "(IIIII)V", (void *) android_glMultiTexCoord4xOES__IIIII }, 351527f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glNormal3xOES", "(III)V", (void *) android_glNormal3xOES__III }, 351627f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glOrthoxOES", "(IIIIII)V", (void *) android_glOrthoxOES__IIIIII }, 351727f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glPointParameterxOES", "(II)V", (void *) android_glPointParameterxOES__II }, 351827f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glPointParameterxvOES", "(I[II)V", (void *) android_glPointParameterxvOES__I_3II }, 351927f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glPointParameterxvOES", "(ILjava/nio/IntBuffer;)V", (void *) android_glPointParameterxvOES__ILjava_nio_IntBuffer_2 }, 352027f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glPointSizexOES", "(I)V", (void *) android_glPointSizexOES__I }, 352127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glPolygonOffsetxOES", "(II)V", (void *) android_glPolygonOffsetxOES__II }, 352227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glRotatexOES", "(IIII)V", (void *) android_glRotatexOES__IIII }, 352327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glSampleCoveragexOES", "(IZ)V", (void *) android_glSampleCoveragexOES__IZ }, 352427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glScalexOES", "(III)V", (void *) android_glScalexOES__III }, 352527f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glTexEnvxOES", "(III)V", (void *) android_glTexEnvxOES__III }, 352627f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glTexEnvxvOES", "(II[II)V", (void *) android_glTexEnvxvOES__II_3II }, 352727f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glTexEnvxvOES", "(IILjava/nio/IntBuffer;)V", (void *) android_glTexEnvxvOES__IILjava_nio_IntBuffer_2 }, 352827f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glTexParameterxOES", "(III)V", (void *) android_glTexParameterxOES__III }, 352927f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glTexParameterxvOES", "(II[II)V", (void *) android_glTexParameterxvOES__II_3II }, 353027f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glTexParameterxvOES", "(IILjava/nio/IntBuffer;)V", (void *) android_glTexParameterxvOES__IILjava_nio_IntBuffer_2 }, 353127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glTranslatexOES", "(III)V", (void *) android_glTranslatexOES__III }, 353227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glIsRenderbufferOES", "(I)Z", (void *) android_glIsRenderbufferOES__I }, 353327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glBindRenderbufferOES", "(II)V", (void *) android_glBindRenderbufferOES__II }, 353427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glDeleteRenderbuffersOES", "(I[II)V", (void *) android_glDeleteRenderbuffersOES__I_3II }, 353527f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glDeleteRenderbuffersOES", "(ILjava/nio/IntBuffer;)V", (void *) android_glDeleteRenderbuffersOES__ILjava_nio_IntBuffer_2 }, 353627f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glGenRenderbuffersOES", "(I[II)V", (void *) android_glGenRenderbuffersOES__I_3II }, 353727f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glGenRenderbuffersOES", "(ILjava/nio/IntBuffer;)V", (void *) android_glGenRenderbuffersOES__ILjava_nio_IntBuffer_2 }, 353827f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glRenderbufferStorageOES", "(IIII)V", (void *) android_glRenderbufferStorageOES__IIII }, 353927f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glGetRenderbufferParameterivOES", "(II[II)V", (void *) android_glGetRenderbufferParameterivOES__II_3II }, 354027f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glGetRenderbufferParameterivOES", "(IILjava/nio/IntBuffer;)V", (void *) android_glGetRenderbufferParameterivOES__IILjava_nio_IntBuffer_2 }, 354127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glIsFramebufferOES", "(I)Z", (void *) android_glIsFramebufferOES__I }, 354227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glBindFramebufferOES", "(II)V", (void *) android_glBindFramebufferOES__II }, 354327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glDeleteFramebuffersOES", "(I[II)V", (void *) android_glDeleteFramebuffersOES__I_3II }, 354427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glDeleteFramebuffersOES", "(ILjava/nio/IntBuffer;)V", (void *) android_glDeleteFramebuffersOES__ILjava_nio_IntBuffer_2 }, 354527f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glGenFramebuffersOES", "(I[II)V", (void *) android_glGenFramebuffersOES__I_3II }, 354627f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glGenFramebuffersOES", "(ILjava/nio/IntBuffer;)V", (void *) android_glGenFramebuffersOES__ILjava_nio_IntBuffer_2 }, 354727f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glCheckFramebufferStatusOES", "(I)I", (void *) android_glCheckFramebufferStatusOES__I }, 354827f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glFramebufferRenderbufferOES", "(IIII)V", (void *) android_glFramebufferRenderbufferOES__IIII }, 354927f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glFramebufferTexture2DOES", "(IIIII)V", (void *) android_glFramebufferTexture2DOES__IIIII }, 355027f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glGetFramebufferAttachmentParameterivOES", "(III[II)V", (void *) android_glGetFramebufferAttachmentParameterivOES__III_3II }, 355127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glGetFramebufferAttachmentParameterivOES", "(IIILjava/nio/IntBuffer;)V", (void *) android_glGetFramebufferAttachmentParameterivOES__IIILjava_nio_IntBuffer_2 }, 355227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glGenerateMipmapOES", "(I)V", (void *) android_glGenerateMipmapOES__I }, 355327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glCurrentPaletteMatrixOES", "(I)V", (void *) android_glCurrentPaletteMatrixOES__I }, 355427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glLoadPaletteFromModelViewMatrixOES", "()V", (void *) android_glLoadPaletteFromModelViewMatrixOES__ }, 3555be6eac828f5af8b608c3fa6749330f1dcd6b6206Jack Palevich{"glMatrixIndexPointerOESBounds", "(IIILjava/nio/Buffer;I)V", (void *) android_glMatrixIndexPointerOESBounds__IIILjava_nio_Buffer_2I }, 3556be6eac828f5af8b608c3fa6749330f1dcd6b6206Jack Palevich{"glWeightPointerOESBounds", "(IIILjava/nio/Buffer;I)V", (void *) android_glWeightPointerOESBounds__IIILjava_nio_Buffer_2I }, 355727f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glDepthRangefOES", "(FF)V", (void *) android_glDepthRangefOES__FF }, 355827f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glFrustumfOES", "(FFFFFF)V", (void *) android_glFrustumfOES__FFFFFF }, 355927f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glOrthofOES", "(FFFFFF)V", (void *) android_glOrthofOES__FFFFFF }, 356027f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glClipPlanefOES", "(I[FI)V", (void *) android_glClipPlanefOES__I_3FI }, 356127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glClipPlanefOES", "(ILjava/nio/FloatBuffer;)V", (void *) android_glClipPlanefOES__ILjava_nio_FloatBuffer_2 }, 356227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glGetClipPlanefOES", "(I[FI)V", (void *) android_glGetClipPlanefOES__I_3FI }, 356327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glGetClipPlanefOES", "(ILjava/nio/FloatBuffer;)V", (void *) android_glGetClipPlanefOES__ILjava_nio_FloatBuffer_2 }, 356427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glClearDepthfOES", "(F)V", (void *) android_glClearDepthfOES__F }, 356527f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glTexGenfOES", "(IIF)V", (void *) android_glTexGenfOES__IIF }, 356627f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glTexGenfvOES", "(II[FI)V", (void *) android_glTexGenfvOES__II_3FI }, 356727f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glTexGenfvOES", "(IILjava/nio/FloatBuffer;)V", (void *) android_glTexGenfvOES__IILjava_nio_FloatBuffer_2 }, 356827f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glTexGeniOES", "(III)V", (void *) android_glTexGeniOES__III }, 356927f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glTexGenivOES", "(II[II)V", (void *) android_glTexGenivOES__II_3II }, 357027f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glTexGenivOES", "(IILjava/nio/IntBuffer;)V", (void *) android_glTexGenivOES__IILjava_nio_IntBuffer_2 }, 357127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glTexGenxOES", "(III)V", (void *) android_glTexGenxOES__III }, 357227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glTexGenxvOES", "(II[II)V", (void *) android_glTexGenxvOES__II_3II }, 357327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glTexGenxvOES", "(IILjava/nio/IntBuffer;)V", (void *) android_glTexGenxvOES__IILjava_nio_IntBuffer_2 }, 357427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glGetTexGenfvOES", "(II[FI)V", (void *) android_glGetTexGenfvOES__II_3FI }, 357527f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glGetTexGenfvOES", "(IILjava/nio/FloatBuffer;)V", (void *) android_glGetTexGenfvOES__IILjava_nio_FloatBuffer_2 }, 357627f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glGetTexGenivOES", "(II[II)V", (void *) android_glGetTexGenivOES__II_3II }, 357727f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glGetTexGenivOES", "(IILjava/nio/IntBuffer;)V", (void *) android_glGetTexGenivOES__IILjava_nio_IntBuffer_2 }, 357827f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glGetTexGenxvOES", "(II[II)V", (void *) android_glGetTexGenxvOES__II_3II }, 357927f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glGetTexGenxvOES", "(IILjava/nio/IntBuffer;)V", (void *) android_glGetTexGenxvOES__IILjava_nio_IntBuffer_2 }, 358027f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich}; 358127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich 358227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichint register_android_opengl_jni_GLES11Ext(JNIEnv *_env) 358327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{ 358427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich int err; 358527f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich err = android::AndroidRuntime::registerNativeMethods(_env, classPathName, methods, NELEM(methods)); 358627f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich return err; 358727f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich} 3588