com_google_android_gles_jni_GLImpl.cpp revision be509c9c7de5929d014dfe6d45e71cc8454ede0f
19066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* //device/libs/android_runtime/com_google_android_gles_jni_GLImpl.cpp 29066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project** 39066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project** Copyright 2006, The Android Open Source Project 49066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project** 59066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project** Licensed under the Apache License, Version 2.0 (the "License"); 69066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project** you may not use this file except in compliance with the License. 79066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project** You may obtain a copy of the License at 89066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project** 99066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project** http://www.apache.org/licenses/LICENSE-2.0 109066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project** 119066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project** Unless required by applicable law or agreed to in writing, software 129066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project** distributed under the License is distributed on an "AS IS" BASIS, 139066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project** WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 149066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project** See the License for the specific language governing permissions and 159066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project** limitations under the License. 169066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project*/ 179066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 189066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project// This source file is automatically generated 199066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 209066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#include <android_runtime/AndroidRuntime.h> 219066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#include <utils/misc.h> 229066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 239066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#include <assert.h> 249066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#include <GLES/gl.h> 25be509c9c7de5929d014dfe6d45e71cc8454ede0fJack Palevich#include <GLES/glext.h> 269066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 279066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic int initialized = 0; 289066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 299066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic jclass nioAccessClass; 309066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic jclass bufferClass; 319066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic jclass OOMEClass; 329066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic jclass UOEClass; 339066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic jclass IAEClass; 349066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic jclass AIOOBEClass; 359066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic jmethodID getBasePointerID; 369066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic jmethodID getBaseArrayID; 379066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic jmethodID getBaseArrayOffsetID; 389066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic jfieldID positionID; 399066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic jfieldID limitID; 409066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic jfieldID elementSizeShiftID; 419066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 429066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* Cache method IDs each time the class is loaded. */ 439066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 4427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void 459066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source ProjectnativeClassInitBuffer(JNIEnv *_env) 469066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{ 479066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project jclass nioAccessClassLocal = _env->FindClass("java/nio/NIOAccess"); 489066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project nioAccessClass = (jclass) _env->NewGlobalRef(nioAccessClassLocal); 499066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 509066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project jclass bufferClassLocal = _env->FindClass("java/nio/Buffer"); 519066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project bufferClass = (jclass) _env->NewGlobalRef(bufferClassLocal); 529066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 539066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project getBasePointerID = _env->GetStaticMethodID(nioAccessClass, 549066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project "getBasePointer", "(Ljava/nio/Buffer;)J"); 559066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project getBaseArrayID = _env->GetStaticMethodID(nioAccessClass, 569066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project "getBaseArray", "(Ljava/nio/Buffer;)Ljava/lang/Object;"); 579066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project getBaseArrayOffsetID = _env->GetStaticMethodID(nioAccessClass, 589066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project "getBaseArrayOffset", "(Ljava/nio/Buffer;)I"); 599066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 609066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project positionID = _env->GetFieldID(bufferClass, "position", "I"); 619066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project limitID = _env->GetFieldID(bufferClass, "limit", "I"); 629066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project elementSizeShiftID = 639066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->GetFieldID(bufferClass, "_elementSizeShift", "I"); 649066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 659066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 669066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 679066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source ProjectnativeClassInit(JNIEnv *_env, jclass glImplClass) 689066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{ 699066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project nativeClassInitBuffer(_env); 709066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 719066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project jclass IAEClassLocal = 729066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->FindClass("java/lang/IllegalArgumentException"); 739066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project jclass OOMEClassLocal = 749066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->FindClass("java/lang/OutOfMemoryError"); 759066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project jclass UOEClassLocal = 769066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->FindClass("java/lang/UnsupportedOperationException"); 779066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project jclass AIOOBEClassLocal = 789066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->FindClass("java/lang/ArrayIndexOutOfBoundsException"); 799066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 809066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project IAEClass = (jclass) _env->NewGlobalRef(IAEClassLocal); 819066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project OOMEClass = (jclass) _env->NewGlobalRef(OOMEClassLocal); 829066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project UOEClass = (jclass) _env->NewGlobalRef(UOEClassLocal); 839066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project AIOOBEClass = (jclass) _env->NewGlobalRef(AIOOBEClassLocal); 849066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 859066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 869066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void * 879066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source ProjectgetPointer(JNIEnv *_env, jobject buffer, jarray *array, jint *remaining) 889066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{ 899066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project jint position; 909066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project jint limit; 919066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project jint elementSizeShift; 929066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project jlong pointer; 939066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project jint offset; 949066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project void *data; 959066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 969066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project position = _env->GetIntField(buffer, positionID); 979066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project limit = _env->GetIntField(buffer, limitID); 989066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project elementSizeShift = _env->GetIntField(buffer, elementSizeShiftID); 999066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project *remaining = (limit - position) << elementSizeShift; 1009066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project pointer = _env->CallStaticLongMethod(nioAccessClass, 1019066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project getBasePointerID, buffer); 1029066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (pointer != 0L) { 1039066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project *array = NULL; 1049066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project return (void *) (jint) pointer; 1059066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 1069066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 1079066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project *array = (jarray) _env->CallStaticObjectMethod(nioAccessClass, 1089066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project getBaseArrayID, buffer); 1099066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project offset = _env->CallStaticIntMethod(nioAccessClass, 1109066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project getBaseArrayOffsetID, buffer); 1119066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project data = _env->GetPrimitiveArrayCritical(*array, (jboolean *) 0); 1129066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 1139066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project return (void *) ((char *) data + offset); 1149066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 1159066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 1169066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 1179066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source ProjectreleasePointer(JNIEnv *_env, jarray array, void *data, jboolean commit) 1189066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{ 1199066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ReleasePrimitiveArrayCritical(array, data, 1209066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project commit ? 0 : JNI_ABORT); 1219066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 1229066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 123be509c9c7de5929d014dfe6d45e71cc8454ede0fJack Palevichstatic int 124be509c9c7de5929d014dfe6d45e71cc8454ede0fJack PalevichgetNumCompressedTextureFormats() { 125be509c9c7de5929d014dfe6d45e71cc8454ede0fJack Palevich int numCompressedTextureFormats = 0; 126be509c9c7de5929d014dfe6d45e71cc8454ede0fJack Palevich glGetIntegerv(GL_NUM_COMPRESSED_TEXTURE_FORMATS, &numCompressedTextureFormats); 127be509c9c7de5929d014dfe6d45e71cc8454ede0fJack Palevich return numCompressedTextureFormats; 128be509c9c7de5929d014dfe6d45e71cc8454ede0fJack Palevich} 129be509c9c7de5929d014dfe6d45e71cc8454ede0fJack Palevich 1309066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project// -------------------------------------------------------------------------- 1319066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 1329066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glActiveTexture ( GLenum texture ) */ 1339066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 1349066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glActiveTexture__I 1359066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jint texture) { 1369066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project glActiveTexture( 1379066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLenum)texture 1389066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project ); 1399066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 1409066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 1419066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glAlphaFunc ( GLenum func, GLclampf ref ) */ 1429066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 1439066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glAlphaFunc__IF 1449066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jint func, jfloat ref) { 1459066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project glAlphaFunc( 1469066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLenum)func, 1479066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLclampf)ref 1489066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project ); 1499066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 1509066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 1519066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glAlphaFuncx ( GLenum func, GLclampx ref ) */ 1529066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 1539066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glAlphaFuncx__II 1549066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jint func, jint ref) { 1559066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project glAlphaFuncx( 1569066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLenum)func, 1579066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLclampx)ref 1589066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project ); 1599066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 1609066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 1619066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glBindTexture ( GLenum target, GLuint texture ) */ 1629066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 1639066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glBindTexture__II 1649066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jint target, jint texture) { 1659066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project glBindTexture( 1669066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLenum)target, 1679066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLuint)texture 1689066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project ); 1699066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 1709066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 1719066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glBlendFunc ( GLenum sfactor, GLenum dfactor ) */ 1729066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 1739066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glBlendFunc__II 1749066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jint sfactor, jint dfactor) { 1759066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project glBlendFunc( 1769066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLenum)sfactor, 1779066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLenum)dfactor 1789066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project ); 1799066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 1809066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 1819066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glClear ( GLbitfield mask ) */ 1829066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 1839066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glClear__I 1849066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jint mask) { 1859066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project glClear( 1869066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLbitfield)mask 1879066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project ); 1889066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 1899066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 1909066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glClearColor ( GLclampf red, GLclampf green, GLclampf blue, GLclampf alpha ) */ 1919066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 1929066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glClearColor__FFFF 1939066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jfloat red, jfloat green, jfloat blue, jfloat alpha) { 1949066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project glClearColor( 1959066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLclampf)red, 1969066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLclampf)green, 1979066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLclampf)blue, 1989066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLclampf)alpha 1999066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project ); 2009066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 2019066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 2029066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glClearColorx ( GLclampx red, GLclampx green, GLclampx blue, GLclampx alpha ) */ 2039066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 2049066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glClearColorx__IIII 2059066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jint red, jint green, jint blue, jint alpha) { 2069066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project glClearColorx( 2079066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLclampx)red, 2089066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLclampx)green, 2099066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLclampx)blue, 2109066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLclampx)alpha 2119066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project ); 2129066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 2139066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 2149066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glClearDepthf ( GLclampf depth ) */ 2159066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 2169066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glClearDepthf__F 2179066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jfloat depth) { 2189066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project glClearDepthf( 2199066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLclampf)depth 2209066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project ); 2219066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 2229066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 2239066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glClearDepthx ( GLclampx depth ) */ 2249066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 2259066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glClearDepthx__I 2269066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jint depth) { 2279066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project glClearDepthx( 2289066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLclampx)depth 2299066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project ); 2309066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 2319066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 2329066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glClearStencil ( GLint s ) */ 2339066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 2349066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glClearStencil__I 2359066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jint s) { 2369066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project glClearStencil( 2379066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLint)s 2389066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project ); 2399066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 2409066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 2419066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glClientActiveTexture ( GLenum texture ) */ 2429066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 2439066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glClientActiveTexture__I 2449066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jint texture) { 2459066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project glClientActiveTexture( 2469066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLenum)texture 2479066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project ); 2489066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 2499066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 2509066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glColor4f ( GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha ) */ 2519066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 2529066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glColor4f__FFFF 2539066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jfloat red, jfloat green, jfloat blue, jfloat alpha) { 2549066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project glColor4f( 2559066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLfloat)red, 2569066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLfloat)green, 2579066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLfloat)blue, 2589066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLfloat)alpha 2599066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project ); 2609066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 2619066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 2629066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glColor4x ( GLfixed red, GLfixed green, GLfixed blue, GLfixed alpha ) */ 2639066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 2649066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glColor4x__IIII 2659066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jint red, jint green, jint blue, jint alpha) { 2669066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project glColor4x( 2679066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLfixed)red, 2689066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLfixed)green, 2699066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLfixed)blue, 2709066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLfixed)alpha 2719066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project ); 2729066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 2739066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 2749066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glColorMask ( GLboolean red, GLboolean green, GLboolean blue, GLboolean alpha ) */ 2759066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 2769066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glColorMask__ZZZZ 2779066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jboolean red, jboolean green, jboolean blue, jboolean alpha) { 2789066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project glColorMask( 2799066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLboolean)red, 2809066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLboolean)green, 2819066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLboolean)blue, 2829066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLboolean)alpha 2839066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project ); 2849066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 2859066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 2869066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glColorPointer ( GLint size, GLenum type, GLsizei stride, const GLvoid *pointer ) */ 2879066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 2889066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glColorPointerBounds__IIILjava_nio_Buffer_2I 2899066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jint size, jint type, jint stride, jobject pointer_buf, jint remaining) { 2909066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project jarray _array = (jarray) 0; 2919066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project jint _remaining; 2929066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project GLvoid *pointer = (GLvoid *) 0; 2939066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 2949066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project pointer = (GLvoid *)getPointer(_env, pointer_buf, &_array, &_remaining); 2959066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project glColorPointerBounds( 2969066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLint)size, 2979066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLenum)type, 2989066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLsizei)stride, 2999066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLvoid *)pointer, 3009066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLsizei)remaining 3019066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project ); 3029066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (_array) { 3039066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project releasePointer(_env, _array, pointer, JNI_FALSE); 3049066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 3059066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 3069066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 3079066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glCompressedTexImage2D ( GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, const GLvoid *data ) */ 3089066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 3099066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glCompressedTexImage2D__IIIIIIILjava_nio_Buffer_2 3109066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jint target, jint level, jint internalformat, jint width, jint height, jint border, jint imageSize, jobject data_buf) { 3119066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project jarray _array = (jarray) 0; 3129066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project jint _remaining; 3139066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project GLvoid *data = (GLvoid *) 0; 3149066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 3159066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project data = (GLvoid *)getPointer(_env, data_buf, &_array, &_remaining); 3169066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project glCompressedTexImage2D( 3179066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLenum)target, 3189066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLint)level, 3199066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLenum)internalformat, 3209066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLsizei)width, 3219066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLsizei)height, 3229066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLint)border, 3239066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLsizei)imageSize, 3249066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLvoid *)data 3259066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project ); 3269066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (_array) { 3279066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project releasePointer(_env, _array, data, JNI_FALSE); 3289066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 3299066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 3309066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 3319066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glCompressedTexSubImage2D ( GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const GLvoid *data ) */ 3329066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 3339066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glCompressedTexSubImage2D__IIIIIIIILjava_nio_Buffer_2 3349066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jint target, jint level, jint xoffset, jint yoffset, jint width, jint height, jint format, jint imageSize, jobject data_buf) { 3359066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project jarray _array = (jarray) 0; 3369066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project jint _remaining; 3379066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project GLvoid *data = (GLvoid *) 0; 3389066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 3399066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project data = (GLvoid *)getPointer(_env, data_buf, &_array, &_remaining); 3409066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project glCompressedTexSubImage2D( 3419066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLenum)target, 3429066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLint)level, 3439066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLint)xoffset, 3449066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLint)yoffset, 3459066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLsizei)width, 3469066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLsizei)height, 3479066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLenum)format, 3489066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLsizei)imageSize, 3499066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLvoid *)data 3509066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project ); 3519066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (_array) { 3529066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project releasePointer(_env, _array, data, JNI_FALSE); 3539066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 3549066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 3559066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 3569066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glCopyTexImage2D ( GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height, GLint border ) */ 3579066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 3589066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glCopyTexImage2D__IIIIIIII 3599066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jint target, jint level, jint internalformat, jint x, jint y, jint width, jint height, jint border) { 3609066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project glCopyTexImage2D( 3619066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLenum)target, 3629066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLint)level, 3639066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLenum)internalformat, 3649066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLint)x, 3659066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLint)y, 3669066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLsizei)width, 3679066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLsizei)height, 3689066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLint)border 3699066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project ); 3709066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 3719066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 3729066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glCopyTexSubImage2D ( GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint x, GLint y, GLsizei width, GLsizei height ) */ 3739066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 3749066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glCopyTexSubImage2D__IIIIIIII 3759066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jint target, jint level, jint xoffset, jint yoffset, jint x, jint y, jint width, jint height) { 3769066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project glCopyTexSubImage2D( 3779066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLenum)target, 3789066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLint)level, 3799066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLint)xoffset, 3809066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLint)yoffset, 3819066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLint)x, 3829066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLint)y, 3839066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLsizei)width, 3849066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLsizei)height 3859066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project ); 3869066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 3879066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 3889066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glCullFace ( GLenum mode ) */ 3899066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 3909066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glCullFace__I 3919066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jint mode) { 3929066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project glCullFace( 3939066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLenum)mode 3949066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project ); 3959066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 3969066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 3979066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glDeleteTextures ( GLsizei n, const GLuint *textures ) */ 3989066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 3999066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glDeleteTextures__I_3II 4009066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jint n, jintArray textures_ref, jint offset) { 4019066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project GLuint *textures_base = (GLuint *) 0; 4029066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project jint _remaining; 4039066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project GLuint *textures = (GLuint *) 0; 4049066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 4059066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (!textures_ref) { 4069066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ThrowNew(IAEClass, "textures == null"); 4079066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project goto exit; 4089066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 4099066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (offset < 0) { 4109066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ThrowNew(IAEClass, "offset < 0"); 4119066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project goto exit; 4129066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 4139066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _remaining = _env->GetArrayLength(textures_ref) - offset; 4149066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (_remaining < n) { 4159066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ThrowNew(IAEClass, "length - offset < n"); 4169066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project goto exit; 4179066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 4189066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project textures_base = (GLuint *) 4199066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->GetPrimitiveArrayCritical(textures_ref, (jboolean *)0); 4209066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project textures = textures_base + offset; 4219066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 4229066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project glDeleteTextures( 4239066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLsizei)n, 4249066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLuint *)textures 4259066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project ); 4269066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 4279066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectexit: 4289066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (textures_base) { 4299066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ReleasePrimitiveArrayCritical(textures_ref, textures_base, 4309066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project JNI_ABORT); 4319066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 4329066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 4339066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 4349066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glDeleteTextures ( GLsizei n, const GLuint *textures ) */ 4359066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 4369066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glDeleteTextures__ILjava_nio_IntBuffer_2 4379066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jint n, jobject textures_buf) { 4389066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project jarray _array = (jarray) 0; 4399066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project jint _remaining; 4409066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project GLuint *textures = (GLuint *) 0; 4419066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 4429066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project textures = (GLuint *)getPointer(_env, textures_buf, &_array, &_remaining); 4439066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (_remaining < n) { 4449066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ThrowNew(IAEClass, "remaining() < n"); 4459066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project goto exit; 4469066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 4479066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project glDeleteTextures( 4489066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLsizei)n, 4499066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLuint *)textures 4509066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project ); 4519066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 4529066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectexit: 4539066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (_array) { 4549066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project releasePointer(_env, _array, textures, JNI_FALSE); 4559066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 4569066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 4579066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 4589066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glDepthFunc ( GLenum func ) */ 4599066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 4609066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glDepthFunc__I 4619066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jint func) { 4629066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project glDepthFunc( 4639066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLenum)func 4649066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project ); 4659066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 4669066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 4679066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glDepthMask ( GLboolean flag ) */ 4689066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 4699066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glDepthMask__Z 4709066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jboolean flag) { 4719066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project glDepthMask( 4729066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLboolean)flag 4739066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project ); 4749066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 4759066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 4769066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glDepthRangef ( GLclampf zNear, GLclampf zFar ) */ 4779066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 4789066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glDepthRangef__FF 4799066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jfloat zNear, jfloat zFar) { 4809066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project glDepthRangef( 4819066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLclampf)zNear, 4829066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLclampf)zFar 4839066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project ); 4849066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 4859066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 4869066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glDepthRangex ( GLclampx zNear, GLclampx zFar ) */ 4879066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 4889066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glDepthRangex__II 4899066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jint zNear, jint zFar) { 4909066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project glDepthRangex( 4919066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLclampx)zNear, 4929066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLclampx)zFar 4939066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project ); 4949066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 4959066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 4969066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glDisable ( GLenum cap ) */ 4979066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 4989066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glDisable__I 4999066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jint cap) { 5009066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project glDisable( 5019066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLenum)cap 5029066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project ); 5039066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 5049066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 5059066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glDisableClientState ( GLenum array ) */ 5069066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 5079066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glDisableClientState__I 5089066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jint array) { 5099066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project glDisableClientState( 5109066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLenum)array 5119066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project ); 5129066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 5139066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 5149066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glDrawArrays ( GLenum mode, GLint first, GLsizei count ) */ 5159066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 5169066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glDrawArrays__III 5179066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jint mode, jint first, jint count) { 5189066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project glDrawArrays( 5199066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLenum)mode, 5209066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLint)first, 5219066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLsizei)count 5229066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project ); 5239066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 5249066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 5259066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glDrawElements ( GLenum mode, GLsizei count, GLenum type, const GLvoid *indices ) */ 5269066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 5279066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glDrawElements__IIILjava_nio_Buffer_2 5289066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jint mode, jint count, jint type, jobject indices_buf) { 5299066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project jarray _array = (jarray) 0; 5309066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project jint _remaining; 5319066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project GLvoid *indices = (GLvoid *) 0; 5329066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 5339066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project indices = (GLvoid *)getPointer(_env, indices_buf, &_array, &_remaining); 5349066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (_remaining < count) { 5359066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ThrowNew(AIOOBEClass, "remaining() < count"); 5369066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project goto exit; 5379066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 5389066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project glDrawElements( 5399066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLenum)mode, 5409066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLsizei)count, 5419066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLenum)type, 5429066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLvoid *)indices 5439066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project ); 5449066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 5459066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectexit: 5469066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (_array) { 5479066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project releasePointer(_env, _array, indices, JNI_FALSE); 5489066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 5499066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 5509066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 5519066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glEnable ( GLenum cap ) */ 5529066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 5539066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glEnable__I 5549066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jint cap) { 5559066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project glEnable( 5569066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLenum)cap 5579066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project ); 5589066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 5599066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 5609066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glEnableClientState ( GLenum array ) */ 5619066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 5629066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glEnableClientState__I 5639066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jint array) { 5649066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project glEnableClientState( 5659066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLenum)array 5669066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project ); 5679066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 5689066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 5699066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glFinish ( void ) */ 5709066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 5719066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glFinish__ 5729066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this) { 5739066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project glFinish(); 5749066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 5759066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 5769066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glFlush ( void ) */ 5779066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 5789066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glFlush__ 5799066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this) { 5809066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project glFlush(); 5819066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 5829066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 5839066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glFogf ( GLenum pname, GLfloat param ) */ 5849066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 5859066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glFogf__IF 5869066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jint pname, jfloat param) { 5879066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project glFogf( 5889066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLenum)pname, 5899066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLfloat)param 5909066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project ); 5919066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 5929066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 5939066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glFogfv ( GLenum pname, const GLfloat *params ) */ 5949066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 5959066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glFogfv__I_3FI 5969066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jint pname, jfloatArray params_ref, jint offset) { 5979066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project GLfloat *params_base = (GLfloat *) 0; 5989066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project jint _remaining; 5999066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project GLfloat *params = (GLfloat *) 0; 6009066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 6019066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (!params_ref) { 6029066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ThrowNew(IAEClass, "params == null"); 6039066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project goto exit; 6049066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 6059066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (offset < 0) { 6069066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ThrowNew(IAEClass, "offset < 0"); 6079066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project goto exit; 6089066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 6099066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _remaining = _env->GetArrayLength(params_ref) - offset; 6109066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project int _needed; 6119066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project switch (pname) { 6129066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_FOG_MODE) 6139066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_FOG_MODE: 6149066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_FOG_MODE) 6159066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_FOG_DENSITY) 6169066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_FOG_DENSITY: 6179066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_FOG_DENSITY) 6189066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_FOG_START) 6199066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_FOG_START: 6209066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_FOG_START) 6219066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_FOG_END) 6229066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_FOG_END: 6239066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_FOG_END) 6249066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _needed = 1; 6259066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project break; 6269066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_FOG_COLOR) 6279066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_FOG_COLOR: 6289066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_FOG_COLOR) 6299066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _needed = 4; 6309066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project break; 6319066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project default: 6329066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _needed = 0; 6339066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project break; 6349066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 6359066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (_remaining < _needed) { 6369066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ThrowNew(IAEClass, "length - offset < needed"); 6379066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project goto exit; 6389066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 6399066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project params_base = (GLfloat *) 6409066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->GetPrimitiveArrayCritical(params_ref, (jboolean *)0); 6419066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project params = params_base + offset; 6429066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 6439066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project glFogfv( 6449066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLenum)pname, 6459066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLfloat *)params 6469066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project ); 6479066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 6489066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectexit: 6499066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (params_base) { 6509066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ReleasePrimitiveArrayCritical(params_ref, params_base, 6519066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project JNI_ABORT); 6529066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 6539066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 6549066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 6559066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glFogfv ( GLenum pname, const GLfloat *params ) */ 6569066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 6579066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glFogfv__ILjava_nio_FloatBuffer_2 6589066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jint pname, jobject params_buf) { 6599066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project jarray _array = (jarray) 0; 6609066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project jint _remaining; 6619066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project GLfloat *params = (GLfloat *) 0; 6629066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 6639066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project params = (GLfloat *)getPointer(_env, params_buf, &_array, &_remaining); 6649066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project int _needed; 6659066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project switch (pname) { 6669066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_FOG_MODE) 6679066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_FOG_MODE: 6689066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_FOG_MODE) 6699066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_FOG_DENSITY) 6709066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_FOG_DENSITY: 6719066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_FOG_DENSITY) 6729066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_FOG_START) 6739066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_FOG_START: 6749066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_FOG_START) 6759066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_FOG_END) 6769066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_FOG_END: 6779066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_FOG_END) 6789066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _needed = 1; 6799066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project break; 6809066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_FOG_COLOR) 6819066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_FOG_COLOR: 6829066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_FOG_COLOR) 6839066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _needed = 4; 6849066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project break; 6859066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project default: 6869066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _needed = 0; 6879066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project break; 6889066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 6899066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (_remaining < _needed) { 6909066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ThrowNew(IAEClass, "remaining() < needed"); 6919066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project goto exit; 6929066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 6939066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project glFogfv( 6949066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLenum)pname, 6959066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLfloat *)params 6969066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project ); 6979066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 6989066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectexit: 6999066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (_array) { 7009066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project releasePointer(_env, _array, params, JNI_FALSE); 7019066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 7029066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 7039066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 7049066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glFogx ( GLenum pname, GLfixed param ) */ 7059066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 7069066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glFogx__II 7079066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jint pname, jint param) { 7089066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project glFogx( 7099066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLenum)pname, 7109066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLfixed)param 7119066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project ); 7129066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 7139066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 7149066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glFogxv ( GLenum pname, const GLfixed *params ) */ 7159066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 7169066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glFogxv__I_3II 7179066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jint pname, jintArray params_ref, jint offset) { 7189066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project GLfixed *params_base = (GLfixed *) 0; 7199066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project jint _remaining; 7209066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project GLfixed *params = (GLfixed *) 0; 7219066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 7229066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (!params_ref) { 7239066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ThrowNew(IAEClass, "params == null"); 7249066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project goto exit; 7259066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 7269066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (offset < 0) { 7279066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ThrowNew(IAEClass, "offset < 0"); 7289066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project goto exit; 7299066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 7309066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _remaining = _env->GetArrayLength(params_ref) - offset; 7319066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project int _needed; 7329066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project switch (pname) { 7339066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_FOG_MODE) 7349066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_FOG_MODE: 7359066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_FOG_MODE) 7369066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_FOG_DENSITY) 7379066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_FOG_DENSITY: 7389066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_FOG_DENSITY) 7399066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_FOG_START) 7409066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_FOG_START: 7419066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_FOG_START) 7429066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_FOG_END) 7439066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_FOG_END: 7449066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_FOG_END) 7459066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _needed = 1; 7469066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project break; 7479066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_FOG_COLOR) 7489066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_FOG_COLOR: 7499066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_FOG_COLOR) 7509066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _needed = 4; 7519066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project break; 7529066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project default: 7539066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _needed = 0; 7549066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project break; 7559066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 7569066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (_remaining < _needed) { 7579066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ThrowNew(IAEClass, "length - offset < needed"); 7589066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project goto exit; 7599066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 7609066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project params_base = (GLfixed *) 7619066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->GetPrimitiveArrayCritical(params_ref, (jboolean *)0); 7629066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project params = params_base + offset; 7639066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 7649066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project glFogxv( 7659066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLenum)pname, 7669066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLfixed *)params 7679066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project ); 7689066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 7699066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectexit: 7709066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (params_base) { 7719066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ReleasePrimitiveArrayCritical(params_ref, params_base, 7729066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project JNI_ABORT); 7739066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 7749066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 7759066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 7769066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glFogxv ( GLenum pname, const GLfixed *params ) */ 7779066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 7789066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glFogxv__ILjava_nio_IntBuffer_2 7799066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jint pname, jobject params_buf) { 7809066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project jarray _array = (jarray) 0; 7819066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project jint _remaining; 7829066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project GLfixed *params = (GLfixed *) 0; 7839066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 7849066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project params = (GLfixed *)getPointer(_env, params_buf, &_array, &_remaining); 7859066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project int _needed; 7869066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project switch (pname) { 7879066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_FOG_MODE) 7889066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_FOG_MODE: 7899066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_FOG_MODE) 7909066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_FOG_DENSITY) 7919066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_FOG_DENSITY: 7929066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_FOG_DENSITY) 7939066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_FOG_START) 7949066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_FOG_START: 7959066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_FOG_START) 7969066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_FOG_END) 7979066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_FOG_END: 7989066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_FOG_END) 7999066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _needed = 1; 8009066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project break; 8019066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_FOG_COLOR) 8029066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_FOG_COLOR: 8039066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_FOG_COLOR) 8049066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _needed = 4; 8059066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project break; 8069066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project default: 8079066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _needed = 0; 8089066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project break; 8099066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 8109066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (_remaining < _needed) { 8119066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ThrowNew(IAEClass, "remaining() < needed"); 8129066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project goto exit; 8139066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 8149066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project glFogxv( 8159066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLenum)pname, 8169066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLfixed *)params 8179066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project ); 8189066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 8199066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectexit: 8209066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (_array) { 8219066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project releasePointer(_env, _array, params, JNI_FALSE); 8229066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 8239066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 8249066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 8259066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glFrontFace ( GLenum mode ) */ 8269066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 8279066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glFrontFace__I 8289066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jint mode) { 8299066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project glFrontFace( 8309066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLenum)mode 8319066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project ); 8329066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 8339066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 8349066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glFrustumf ( GLfloat left, GLfloat right, GLfloat bottom, GLfloat top, GLfloat zNear, GLfloat zFar ) */ 8359066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 8369066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glFrustumf__FFFFFF 8379066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jfloat left, jfloat right, jfloat bottom, jfloat top, jfloat zNear, jfloat zFar) { 8389066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project glFrustumf( 8399066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLfloat)left, 8409066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLfloat)right, 8419066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLfloat)bottom, 8429066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLfloat)top, 8439066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLfloat)zNear, 8449066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLfloat)zFar 8459066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project ); 8469066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 8479066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 8489066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glFrustumx ( GLfixed left, GLfixed right, GLfixed bottom, GLfixed top, GLfixed zNear, GLfixed zFar ) */ 8499066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 8509066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glFrustumx__IIIIII 8519066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jint left, jint right, jint bottom, jint top, jint zNear, jint zFar) { 8529066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project glFrustumx( 8539066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLfixed)left, 8549066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLfixed)right, 8559066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLfixed)bottom, 8569066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLfixed)top, 8579066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLfixed)zNear, 8589066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLfixed)zFar 8599066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project ); 8609066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 8619066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 8629066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glGenTextures ( GLsizei n, GLuint *textures ) */ 8639066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 8649066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glGenTextures__I_3II 8659066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jint n, jintArray textures_ref, jint offset) { 8669066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project jint _exception = 0; 8679066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project GLuint *textures_base = (GLuint *) 0; 8689066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project jint _remaining; 8699066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project GLuint *textures = (GLuint *) 0; 8709066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 8719066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (!textures_ref) { 8729066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _exception = 1; 8739066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ThrowNew(IAEClass, "textures == null"); 8749066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project goto exit; 8759066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 8769066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (offset < 0) { 8779066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _exception = 1; 8789066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ThrowNew(IAEClass, "offset < 0"); 8799066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project goto exit; 8809066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 8819066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _remaining = _env->GetArrayLength(textures_ref) - offset; 8829066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (_remaining < n) { 8839066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _exception = 1; 8849066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ThrowNew(IAEClass, "length - offset < n"); 8859066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project goto exit; 8869066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 8879066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project textures_base = (GLuint *) 8889066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->GetPrimitiveArrayCritical(textures_ref, (jboolean *)0); 8899066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project textures = textures_base + offset; 8909066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 8919066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project glGenTextures( 8929066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLsizei)n, 8939066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLuint *)textures 8949066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project ); 8959066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 8969066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectexit: 8979066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (textures_base) { 8989066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ReleasePrimitiveArrayCritical(textures_ref, textures_base, 8999066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _exception ? JNI_ABORT: 0); 9009066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 9019066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 9029066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 9039066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glGenTextures ( GLsizei n, GLuint *textures ) */ 9049066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 9059066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glGenTextures__ILjava_nio_IntBuffer_2 9069066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jint n, jobject textures_buf) { 9079066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project jint _exception = 0; 9089066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project jarray _array = (jarray) 0; 9099066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project jint _remaining; 9109066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project GLuint *textures = (GLuint *) 0; 9119066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 9129066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project textures = (GLuint *)getPointer(_env, textures_buf, &_array, &_remaining); 9139066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (_remaining < n) { 9149066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _exception = 1; 9159066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ThrowNew(IAEClass, "remaining() < n"); 9169066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project goto exit; 9179066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 9189066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project glGenTextures( 9199066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLsizei)n, 9209066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLuint *)textures 9219066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project ); 9229066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 9239066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectexit: 9249066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (_array) { 9259066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project releasePointer(_env, _array, textures, _exception ? JNI_FALSE : JNI_TRUE); 9269066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 9279066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 9289066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 9299066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* GLenum glGetError ( void ) */ 9309066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic jint 9319066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glGetError__ 9329066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this) { 9339066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project GLenum _returnValue; 9349066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _returnValue = glGetError(); 9359066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project return _returnValue; 9369066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 9379066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 9389066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glGetIntegerv ( GLenum pname, GLint *params ) */ 9399066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 9409066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glGetIntegerv__I_3II 9419066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jint pname, jintArray params_ref, jint offset) { 9429066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project jint _exception = 0; 9439066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project GLint *params_base = (GLint *) 0; 9449066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project jint _remaining; 9459066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project GLint *params = (GLint *) 0; 9469066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 9479066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (!params_ref) { 9489066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _exception = 1; 9499066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ThrowNew(IAEClass, "params == null"); 9509066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project goto exit; 9519066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 9529066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (offset < 0) { 9539066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _exception = 1; 9549066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ThrowNew(IAEClass, "offset < 0"); 9559066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project goto exit; 9569066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 9579066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _remaining = _env->GetArrayLength(params_ref) - offset; 9589066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project int _needed; 9599066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project switch (pname) { 9609066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_ALPHA_BITS) 9619066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_ALPHA_BITS: 9629066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_ALPHA_BITS) 9639066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_ALPHA_TEST_FUNC) 9649066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_ALPHA_TEST_FUNC: 9659066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_ALPHA_TEST_FUNC) 9669066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_ALPHA_TEST_REF) 9679066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_ALPHA_TEST_REF: 9689066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_ALPHA_TEST_REF) 9699066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_BLEND_DST) 9709066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_BLEND_DST: 9719066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_BLEND_DST) 9729066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_BLUE_BITS) 9739066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_BLUE_BITS: 9749066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_BLUE_BITS) 9759066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_COLOR_ARRAY_BUFFER_BINDING) 9769066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_COLOR_ARRAY_BUFFER_BINDING: 9779066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_COLOR_ARRAY_BUFFER_BINDING) 9789066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_COLOR_ARRAY_SIZE) 9799066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_COLOR_ARRAY_SIZE: 9809066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_COLOR_ARRAY_SIZE) 9819066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_COLOR_ARRAY_STRIDE) 9829066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_COLOR_ARRAY_STRIDE: 9839066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_COLOR_ARRAY_STRIDE) 9849066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_COLOR_ARRAY_TYPE) 9859066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_COLOR_ARRAY_TYPE: 9869066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_COLOR_ARRAY_TYPE) 9879066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_CULL_FACE) 9889066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_CULL_FACE: 9899066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_CULL_FACE) 9909066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_DEPTH_BITS) 9919066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_DEPTH_BITS: 9929066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_DEPTH_BITS) 9939066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_DEPTH_CLEAR_VALUE) 9949066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_DEPTH_CLEAR_VALUE: 9959066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_DEPTH_CLEAR_VALUE) 9969066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_DEPTH_FUNC) 9979066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_DEPTH_FUNC: 9989066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_DEPTH_FUNC) 9999066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_DEPTH_WRITEMASK) 10009066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_DEPTH_WRITEMASK: 10019066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_DEPTH_WRITEMASK) 10029066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_FOG_DENSITY) 10039066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_FOG_DENSITY: 10049066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_FOG_DENSITY) 10059066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_FOG_END) 10069066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_FOG_END: 10079066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_FOG_END) 10089066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_FOG_MODE) 10099066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_FOG_MODE: 10109066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_FOG_MODE) 10119066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_FOG_START) 10129066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_FOG_START: 10139066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_FOG_START) 10149066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_FRONT_FACE) 10159066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_FRONT_FACE: 10169066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_FRONT_FACE) 10179066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_GREEN_BITS) 10189066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_GREEN_BITS: 10199066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_GREEN_BITS) 10209066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_IMPLEMENTATION_COLOR_READ_FORMAT_OES) 10219066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_IMPLEMENTATION_COLOR_READ_FORMAT_OES: 10229066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_IMPLEMENTATION_COLOR_READ_FORMAT_OES) 10239066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_IMPLEMENTATION_COLOR_READ_TYPE_OES) 10249066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_IMPLEMENTATION_COLOR_READ_TYPE_OES: 10259066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_IMPLEMENTATION_COLOR_READ_TYPE_OES) 1026be509c9c7de5929d014dfe6d45e71cc8454ede0fJack Palevich#if defined(GL_LIGHT_MODEL_COLOR_CONTROL) 1027be509c9c7de5929d014dfe6d45e71cc8454ede0fJack Palevich case GL_LIGHT_MODEL_COLOR_CONTROL: 1028be509c9c7de5929d014dfe6d45e71cc8454ede0fJack Palevich#endif // defined(GL_LIGHT_MODEL_COLOR_CONTROL) 1029be509c9c7de5929d014dfe6d45e71cc8454ede0fJack Palevich#if defined(GL_LIGHT_MODEL_LOCAL_VIEWER) 1030be509c9c7de5929d014dfe6d45e71cc8454ede0fJack Palevich case GL_LIGHT_MODEL_LOCAL_VIEWER: 1031be509c9c7de5929d014dfe6d45e71cc8454ede0fJack Palevich#endif // defined(GL_LIGHT_MODEL_LOCAL_VIEWER) 10329066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_LIGHT_MODEL_TWO_SIDE) 10339066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_LIGHT_MODEL_TWO_SIDE: 10349066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_LIGHT_MODEL_TWO_SIDE) 10359066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_LINE_SMOOTH_HINT) 10369066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_LINE_SMOOTH_HINT: 10379066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_LINE_SMOOTH_HINT) 10389066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_LINE_WIDTH) 10399066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_LINE_WIDTH: 10409066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_LINE_WIDTH) 10419066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_LOGIC_OP_MODE) 10429066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_LOGIC_OP_MODE: 10439066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_LOGIC_OP_MODE) 10449066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_MATRIX_INDEX_ARRAY_BUFFER_BINDING_OES) 10459066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_MATRIX_INDEX_ARRAY_BUFFER_BINDING_OES: 10469066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_MATRIX_INDEX_ARRAY_BUFFER_BINDING_OES) 10479066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_MATRIX_INDEX_ARRAY_SIZE_OES) 10489066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_MATRIX_INDEX_ARRAY_SIZE_OES: 10499066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_MATRIX_INDEX_ARRAY_SIZE_OES) 10509066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_MATRIX_INDEX_ARRAY_STRIDE_OES) 10519066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_MATRIX_INDEX_ARRAY_STRIDE_OES: 10529066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_MATRIX_INDEX_ARRAY_STRIDE_OES) 10539066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_MATRIX_INDEX_ARRAY_TYPE_OES) 10549066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_MATRIX_INDEX_ARRAY_TYPE_OES: 10559066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_MATRIX_INDEX_ARRAY_TYPE_OES) 10569066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_MATRIX_MODE) 10579066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_MATRIX_MODE: 10589066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_MATRIX_MODE) 10599066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_MAX_CLIP_PLANES) 10609066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_MAX_CLIP_PLANES: 10619066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_MAX_CLIP_PLANES) 10629066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_MAX_ELEMENTS_INDICES) 10639066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_MAX_ELEMENTS_INDICES: 10649066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_MAX_ELEMENTS_INDICES) 10659066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_MAX_ELEMENTS_VERTICES) 10669066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_MAX_ELEMENTS_VERTICES: 10679066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_MAX_ELEMENTS_VERTICES) 10689066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_MAX_LIGHTS) 10699066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_MAX_LIGHTS: 10709066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_MAX_LIGHTS) 10719066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_MAX_MODELVIEW_STACK_DEPTH) 10729066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_MAX_MODELVIEW_STACK_DEPTH: 10739066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_MAX_MODELVIEW_STACK_DEPTH) 10749066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_MAX_PALETTE_MATRICES_OES) 10759066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_MAX_PALETTE_MATRICES_OES: 10769066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_MAX_PALETTE_MATRICES_OES) 10779066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_MAX_PROJECTION_STACK_DEPTH) 10789066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_MAX_PROJECTION_STACK_DEPTH: 10799066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_MAX_PROJECTION_STACK_DEPTH) 10809066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_MAX_TEXTURE_SIZE) 10819066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_MAX_TEXTURE_SIZE: 10829066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_MAX_TEXTURE_SIZE) 10839066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_MAX_TEXTURE_STACK_DEPTH) 10849066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_MAX_TEXTURE_STACK_DEPTH: 10859066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_MAX_TEXTURE_STACK_DEPTH) 10869066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_MAX_TEXTURE_UNITS) 10879066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_MAX_TEXTURE_UNITS: 10889066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_MAX_TEXTURE_UNITS) 10899066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_MAX_VERTEX_UNITS_OES) 10909066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_MAX_VERTEX_UNITS_OES: 10919066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_MAX_VERTEX_UNITS_OES) 10929066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_MODELVIEW_STACK_DEPTH) 10939066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_MODELVIEW_STACK_DEPTH: 10949066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_MODELVIEW_STACK_DEPTH) 10959066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_NORMAL_ARRAY_BUFFER_BINDING) 10969066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_NORMAL_ARRAY_BUFFER_BINDING: 10979066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_NORMAL_ARRAY_BUFFER_BINDING) 10989066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_NORMAL_ARRAY_STRIDE) 10999066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_NORMAL_ARRAY_STRIDE: 11009066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_NORMAL_ARRAY_STRIDE) 11019066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_NORMAL_ARRAY_TYPE) 11029066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_NORMAL_ARRAY_TYPE: 11039066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_NORMAL_ARRAY_TYPE) 11049066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_NUM_COMPRESSED_TEXTURE_FORMATS) 11059066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_NUM_COMPRESSED_TEXTURE_FORMATS: 11069066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_NUM_COMPRESSED_TEXTURE_FORMATS) 11079066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_PACK_ALIGNMENT) 11089066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_PACK_ALIGNMENT: 11099066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_PACK_ALIGNMENT) 11109066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_PERSPECTIVE_CORRECTION_HINT) 11119066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_PERSPECTIVE_CORRECTION_HINT: 11129066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_PERSPECTIVE_CORRECTION_HINT) 11139066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_POINT_SIZE) 11149066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_POINT_SIZE: 11159066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_POINT_SIZE) 11169066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_POINT_SIZE_ARRAY_BUFFER_BINDING_OES) 11179066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_POINT_SIZE_ARRAY_BUFFER_BINDING_OES: 11189066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_POINT_SIZE_ARRAY_BUFFER_BINDING_OES) 11199066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_POINT_SIZE_ARRAY_STRIDE_OES) 11209066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_POINT_SIZE_ARRAY_STRIDE_OES: 11219066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_POINT_SIZE_ARRAY_STRIDE_OES) 11229066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_POINT_SIZE_ARRAY_TYPE_OES) 11239066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_POINT_SIZE_ARRAY_TYPE_OES: 11249066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_POINT_SIZE_ARRAY_TYPE_OES) 11259066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_POINT_SMOOTH_HINT) 11269066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_POINT_SMOOTH_HINT: 11279066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_POINT_SMOOTH_HINT) 11289066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_POLYGON_OFFSET_FACTOR) 11299066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_POLYGON_OFFSET_FACTOR: 11309066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_POLYGON_OFFSET_FACTOR) 11319066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_POLYGON_OFFSET_UNITS) 11329066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_POLYGON_OFFSET_UNITS: 11339066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_POLYGON_OFFSET_UNITS) 11349066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_PROJECTION_STACK_DEPTH) 11359066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_PROJECTION_STACK_DEPTH: 11369066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_PROJECTION_STACK_DEPTH) 11379066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_RED_BITS) 11389066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_RED_BITS: 11399066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_RED_BITS) 11409066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_SHADE_MODEL) 11419066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_SHADE_MODEL: 11429066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_SHADE_MODEL) 11439066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_STENCIL_BITS) 11449066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_STENCIL_BITS: 11459066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_STENCIL_BITS) 11469066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_STENCIL_CLEAR_VALUE) 11479066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_STENCIL_CLEAR_VALUE: 11489066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_STENCIL_CLEAR_VALUE) 11499066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_STENCIL_FAIL) 11509066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_STENCIL_FAIL: 11519066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_STENCIL_FAIL) 11529066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_STENCIL_FUNC) 11539066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_STENCIL_FUNC: 11549066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_STENCIL_FUNC) 11559066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_STENCIL_PASS_DEPTH_FAIL) 11569066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_STENCIL_PASS_DEPTH_FAIL: 11579066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_STENCIL_PASS_DEPTH_FAIL) 11589066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_STENCIL_PASS_DEPTH_PASS) 11599066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_STENCIL_PASS_DEPTH_PASS: 11609066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_STENCIL_PASS_DEPTH_PASS) 11619066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_STENCIL_REF) 11629066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_STENCIL_REF: 11639066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_STENCIL_REF) 11649066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_STENCIL_VALUE_MASK) 11659066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_STENCIL_VALUE_MASK: 11669066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_STENCIL_VALUE_MASK) 11679066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_STENCIL_WRITEMASK) 11689066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_STENCIL_WRITEMASK: 11699066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_STENCIL_WRITEMASK) 11709066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_SUBPIXEL_BITS) 11719066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_SUBPIXEL_BITS: 11729066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_SUBPIXEL_BITS) 11739066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_TEXTURE_BINDING_2D) 11749066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_TEXTURE_BINDING_2D: 11759066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_TEXTURE_BINDING_2D) 11769066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_TEXTURE_COORD_ARRAY_BUFFER_BINDING) 11779066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_TEXTURE_COORD_ARRAY_BUFFER_BINDING: 11789066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_TEXTURE_COORD_ARRAY_BUFFER_BINDING) 11799066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_TEXTURE_COORD_ARRAY_SIZE) 11809066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_TEXTURE_COORD_ARRAY_SIZE: 11819066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_TEXTURE_COORD_ARRAY_SIZE) 11829066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_TEXTURE_COORD_ARRAY_STRIDE) 11839066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_TEXTURE_COORD_ARRAY_STRIDE: 11849066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_TEXTURE_COORD_ARRAY_STRIDE) 11859066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_TEXTURE_COORD_ARRAY_TYPE) 11869066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_TEXTURE_COORD_ARRAY_TYPE: 11879066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_TEXTURE_COORD_ARRAY_TYPE) 11889066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_TEXTURE_STACK_DEPTH) 11899066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_TEXTURE_STACK_DEPTH: 11909066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_TEXTURE_STACK_DEPTH) 11919066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_UNPACK_ALIGNMENT) 11929066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_UNPACK_ALIGNMENT: 11939066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_UNPACK_ALIGNMENT) 11949066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_VERTEX_ARRAY_BUFFER_BINDING) 11959066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_VERTEX_ARRAY_BUFFER_BINDING: 11969066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_VERTEX_ARRAY_BUFFER_BINDING) 11979066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_VERTEX_ARRAY_SIZE) 11989066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_VERTEX_ARRAY_SIZE: 11999066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_VERTEX_ARRAY_SIZE) 12009066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_VERTEX_ARRAY_STRIDE) 12019066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_VERTEX_ARRAY_STRIDE: 12029066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_VERTEX_ARRAY_STRIDE) 12039066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_VERTEX_ARRAY_TYPE) 12049066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_VERTEX_ARRAY_TYPE: 12059066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_VERTEX_ARRAY_TYPE) 12069066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_WEIGHT_ARRAY_BUFFER_BINDING_OES) 12079066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_WEIGHT_ARRAY_BUFFER_BINDING_OES: 12089066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_WEIGHT_ARRAY_BUFFER_BINDING_OES) 12099066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_WEIGHT_ARRAY_SIZE_OES) 12109066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_WEIGHT_ARRAY_SIZE_OES: 12119066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_WEIGHT_ARRAY_SIZE_OES) 12129066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_WEIGHT_ARRAY_STRIDE_OES) 12139066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_WEIGHT_ARRAY_STRIDE_OES: 12149066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_WEIGHT_ARRAY_STRIDE_OES) 12159066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_WEIGHT_ARRAY_TYPE_OES) 12169066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_WEIGHT_ARRAY_TYPE_OES: 12179066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_WEIGHT_ARRAY_TYPE_OES) 12189066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _needed = 1; 12199066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project break; 12209066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_ALIASED_POINT_SIZE_RANGE) 12219066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_ALIASED_POINT_SIZE_RANGE: 12229066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_ALIASED_POINT_SIZE_RANGE) 12239066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_ALIASED_LINE_WIDTH_RANGE) 12249066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_ALIASED_LINE_WIDTH_RANGE: 12259066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_ALIASED_LINE_WIDTH_RANGE) 12269066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_DEPTH_RANGE) 12279066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_DEPTH_RANGE: 12289066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_DEPTH_RANGE) 12299066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_MAX_VIEWPORT_DIMS) 12309066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_MAX_VIEWPORT_DIMS: 12319066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_MAX_VIEWPORT_DIMS) 12329066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_SMOOTH_LINE_WIDTH_RANGE) 12339066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_SMOOTH_LINE_WIDTH_RANGE: 12349066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_SMOOTH_LINE_WIDTH_RANGE) 12359066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_SMOOTH_POINT_SIZE_RANGE) 12369066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_SMOOTH_POINT_SIZE_RANGE: 12379066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_SMOOTH_POINT_SIZE_RANGE) 12389066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _needed = 2; 12399066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project break; 12409066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_COLOR_CLEAR_VALUE) 12419066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_COLOR_CLEAR_VALUE: 12429066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_COLOR_CLEAR_VALUE) 12439066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_COLOR_WRITEMASK) 12449066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_COLOR_WRITEMASK: 12459066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_COLOR_WRITEMASK) 1246be509c9c7de5929d014dfe6d45e71cc8454ede0fJack Palevich#if defined(GL_FOG_COLOR) 1247be509c9c7de5929d014dfe6d45e71cc8454ede0fJack Palevich case GL_FOG_COLOR: 1248be509c9c7de5929d014dfe6d45e71cc8454ede0fJack Palevich#endif // defined(GL_FOG_COLOR) 1249be509c9c7de5929d014dfe6d45e71cc8454ede0fJack Palevich#if defined(GL_LIGHT_MODEL_AMBIENT) 1250be509c9c7de5929d014dfe6d45e71cc8454ede0fJack Palevich case GL_LIGHT_MODEL_AMBIENT: 1251be509c9c7de5929d014dfe6d45e71cc8454ede0fJack Palevich#endif // defined(GL_LIGHT_MODEL_AMBIENT) 12529066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_SCISSOR_BOX) 12539066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_SCISSOR_BOX: 12549066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_SCISSOR_BOX) 12559066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_VIEWPORT) 12569066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_VIEWPORT: 12579066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_VIEWPORT) 12589066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _needed = 4; 12599066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project break; 12609066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_MODELVIEW_MATRIX) 12619066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_MODELVIEW_MATRIX: 12629066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_MODELVIEW_MATRIX) 12639066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_MODELVIEW_MATRIX_FLOAT_AS_INT_BITS_OES) 12649066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_MODELVIEW_MATRIX_FLOAT_AS_INT_BITS_OES: 12659066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_MODELVIEW_MATRIX_FLOAT_AS_INT_BITS_OES) 12669066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_PROJECTION_MATRIX) 12679066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_PROJECTION_MATRIX: 12689066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_PROJECTION_MATRIX) 12699066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_PROJECTION_MATRIX_FLOAT_AS_INT_BITS_OES) 12709066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_PROJECTION_MATRIX_FLOAT_AS_INT_BITS_OES: 12719066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_PROJECTION_MATRIX_FLOAT_AS_INT_BITS_OES) 12729066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_TEXTURE_MATRIX) 12739066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_TEXTURE_MATRIX: 12749066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_TEXTURE_MATRIX) 12759066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_TEXTURE_MATRIX_FLOAT_AS_INT_BITS_OES) 12769066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_TEXTURE_MATRIX_FLOAT_AS_INT_BITS_OES: 12779066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_TEXTURE_MATRIX_FLOAT_AS_INT_BITS_OES) 12789066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _needed = 16; 12799066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project break; 12809066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_COMPRESSED_TEXTURE_FORMATS) 12819066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_COMPRESSED_TEXTURE_FORMATS: 12829066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_COMPRESSED_TEXTURE_FORMATS) 1283be509c9c7de5929d014dfe6d45e71cc8454ede0fJack Palevich _needed = getNumCompressedTextureFormats(); 12849066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project break; 12859066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project default: 12869066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _needed = 0; 12879066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project break; 12889066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 12899066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (_remaining < _needed) { 12909066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _exception = 1; 12919066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ThrowNew(IAEClass, "length - offset < needed"); 12929066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project goto exit; 12939066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 12949066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project params_base = (GLint *) 12959066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->GetPrimitiveArrayCritical(params_ref, (jboolean *)0); 12969066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project params = params_base + offset; 12979066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 12989066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project glGetIntegerv( 12999066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLenum)pname, 13009066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLint *)params 13019066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project ); 13029066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 13039066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectexit: 13049066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (params_base) { 13059066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ReleasePrimitiveArrayCritical(params_ref, params_base, 13069066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _exception ? JNI_ABORT: 0); 13079066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 13089066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 13099066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 13109066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glGetIntegerv ( GLenum pname, GLint *params ) */ 13119066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 13129066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glGetIntegerv__ILjava_nio_IntBuffer_2 13139066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jint pname, jobject params_buf) { 13149066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project jint _exception = 0; 13159066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project jarray _array = (jarray) 0; 13169066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project jint _remaining; 13179066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project GLint *params = (GLint *) 0; 13189066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 13199066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project params = (GLint *)getPointer(_env, params_buf, &_array, &_remaining); 13209066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project int _needed; 13219066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project switch (pname) { 13229066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_ALPHA_BITS) 13239066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_ALPHA_BITS: 13249066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_ALPHA_BITS) 13259066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_ALPHA_TEST_FUNC) 13269066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_ALPHA_TEST_FUNC: 13279066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_ALPHA_TEST_FUNC) 13289066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_ALPHA_TEST_REF) 13299066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_ALPHA_TEST_REF: 13309066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_ALPHA_TEST_REF) 13319066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_BLEND_DST) 13329066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_BLEND_DST: 13339066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_BLEND_DST) 13349066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_BLUE_BITS) 13359066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_BLUE_BITS: 13369066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_BLUE_BITS) 13379066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_COLOR_ARRAY_BUFFER_BINDING) 13389066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_COLOR_ARRAY_BUFFER_BINDING: 13399066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_COLOR_ARRAY_BUFFER_BINDING) 13409066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_COLOR_ARRAY_SIZE) 13419066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_COLOR_ARRAY_SIZE: 13429066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_COLOR_ARRAY_SIZE) 13439066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_COLOR_ARRAY_STRIDE) 13449066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_COLOR_ARRAY_STRIDE: 13459066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_COLOR_ARRAY_STRIDE) 13469066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_COLOR_ARRAY_TYPE) 13479066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_COLOR_ARRAY_TYPE: 13489066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_COLOR_ARRAY_TYPE) 13499066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_CULL_FACE) 13509066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_CULL_FACE: 13519066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_CULL_FACE) 13529066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_DEPTH_BITS) 13539066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_DEPTH_BITS: 13549066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_DEPTH_BITS) 13559066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_DEPTH_CLEAR_VALUE) 13569066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_DEPTH_CLEAR_VALUE: 13579066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_DEPTH_CLEAR_VALUE) 13589066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_DEPTH_FUNC) 13599066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_DEPTH_FUNC: 13609066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_DEPTH_FUNC) 13619066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_DEPTH_WRITEMASK) 13629066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_DEPTH_WRITEMASK: 13639066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_DEPTH_WRITEMASK) 13649066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_FOG_DENSITY) 13659066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_FOG_DENSITY: 13669066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_FOG_DENSITY) 13679066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_FOG_END) 13689066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_FOG_END: 13699066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_FOG_END) 13709066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_FOG_MODE) 13719066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_FOG_MODE: 13729066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_FOG_MODE) 13739066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_FOG_START) 13749066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_FOG_START: 13759066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_FOG_START) 13769066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_FRONT_FACE) 13779066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_FRONT_FACE: 13789066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_FRONT_FACE) 13799066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_GREEN_BITS) 13809066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_GREEN_BITS: 13819066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_GREEN_BITS) 13829066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_IMPLEMENTATION_COLOR_READ_FORMAT_OES) 13839066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_IMPLEMENTATION_COLOR_READ_FORMAT_OES: 13849066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_IMPLEMENTATION_COLOR_READ_FORMAT_OES) 13859066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_IMPLEMENTATION_COLOR_READ_TYPE_OES) 13869066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_IMPLEMENTATION_COLOR_READ_TYPE_OES: 13879066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_IMPLEMENTATION_COLOR_READ_TYPE_OES) 1388be509c9c7de5929d014dfe6d45e71cc8454ede0fJack Palevich#if defined(GL_LIGHT_MODEL_COLOR_CONTROL) 1389be509c9c7de5929d014dfe6d45e71cc8454ede0fJack Palevich case GL_LIGHT_MODEL_COLOR_CONTROL: 1390be509c9c7de5929d014dfe6d45e71cc8454ede0fJack Palevich#endif // defined(GL_LIGHT_MODEL_COLOR_CONTROL) 1391be509c9c7de5929d014dfe6d45e71cc8454ede0fJack Palevich#if defined(GL_LIGHT_MODEL_LOCAL_VIEWER) 1392be509c9c7de5929d014dfe6d45e71cc8454ede0fJack Palevich case GL_LIGHT_MODEL_LOCAL_VIEWER: 1393be509c9c7de5929d014dfe6d45e71cc8454ede0fJack Palevich#endif // defined(GL_LIGHT_MODEL_LOCAL_VIEWER) 13949066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_LIGHT_MODEL_TWO_SIDE) 13959066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_LIGHT_MODEL_TWO_SIDE: 13969066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_LIGHT_MODEL_TWO_SIDE) 13979066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_LINE_SMOOTH_HINT) 13989066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_LINE_SMOOTH_HINT: 13999066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_LINE_SMOOTH_HINT) 14009066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_LINE_WIDTH) 14019066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_LINE_WIDTH: 14029066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_LINE_WIDTH) 14039066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_LOGIC_OP_MODE) 14049066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_LOGIC_OP_MODE: 14059066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_LOGIC_OP_MODE) 14069066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_MATRIX_INDEX_ARRAY_BUFFER_BINDING_OES) 14079066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_MATRIX_INDEX_ARRAY_BUFFER_BINDING_OES: 14089066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_MATRIX_INDEX_ARRAY_BUFFER_BINDING_OES) 14099066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_MATRIX_INDEX_ARRAY_SIZE_OES) 14109066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_MATRIX_INDEX_ARRAY_SIZE_OES: 14119066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_MATRIX_INDEX_ARRAY_SIZE_OES) 14129066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_MATRIX_INDEX_ARRAY_STRIDE_OES) 14139066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_MATRIX_INDEX_ARRAY_STRIDE_OES: 14149066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_MATRIX_INDEX_ARRAY_STRIDE_OES) 14159066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_MATRIX_INDEX_ARRAY_TYPE_OES) 14169066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_MATRIX_INDEX_ARRAY_TYPE_OES: 14179066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_MATRIX_INDEX_ARRAY_TYPE_OES) 14189066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_MATRIX_MODE) 14199066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_MATRIX_MODE: 14209066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_MATRIX_MODE) 14219066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_MAX_CLIP_PLANES) 14229066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_MAX_CLIP_PLANES: 14239066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_MAX_CLIP_PLANES) 14249066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_MAX_ELEMENTS_INDICES) 14259066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_MAX_ELEMENTS_INDICES: 14269066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_MAX_ELEMENTS_INDICES) 14279066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_MAX_ELEMENTS_VERTICES) 14289066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_MAX_ELEMENTS_VERTICES: 14299066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_MAX_ELEMENTS_VERTICES) 14309066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_MAX_LIGHTS) 14319066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_MAX_LIGHTS: 14329066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_MAX_LIGHTS) 14339066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_MAX_MODELVIEW_STACK_DEPTH) 14349066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_MAX_MODELVIEW_STACK_DEPTH: 14359066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_MAX_MODELVIEW_STACK_DEPTH) 14369066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_MAX_PALETTE_MATRICES_OES) 14379066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_MAX_PALETTE_MATRICES_OES: 14389066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_MAX_PALETTE_MATRICES_OES) 14399066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_MAX_PROJECTION_STACK_DEPTH) 14409066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_MAX_PROJECTION_STACK_DEPTH: 14419066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_MAX_PROJECTION_STACK_DEPTH) 14429066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_MAX_TEXTURE_SIZE) 14439066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_MAX_TEXTURE_SIZE: 14449066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_MAX_TEXTURE_SIZE) 14459066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_MAX_TEXTURE_STACK_DEPTH) 14469066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_MAX_TEXTURE_STACK_DEPTH: 14479066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_MAX_TEXTURE_STACK_DEPTH) 14489066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_MAX_TEXTURE_UNITS) 14499066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_MAX_TEXTURE_UNITS: 14509066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_MAX_TEXTURE_UNITS) 14519066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_MAX_VERTEX_UNITS_OES) 14529066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_MAX_VERTEX_UNITS_OES: 14539066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_MAX_VERTEX_UNITS_OES) 14549066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_MODELVIEW_STACK_DEPTH) 14559066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_MODELVIEW_STACK_DEPTH: 14569066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_MODELVIEW_STACK_DEPTH) 14579066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_NORMAL_ARRAY_BUFFER_BINDING) 14589066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_NORMAL_ARRAY_BUFFER_BINDING: 14599066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_NORMAL_ARRAY_BUFFER_BINDING) 14609066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_NORMAL_ARRAY_STRIDE) 14619066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_NORMAL_ARRAY_STRIDE: 14629066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_NORMAL_ARRAY_STRIDE) 14639066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_NORMAL_ARRAY_TYPE) 14649066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_NORMAL_ARRAY_TYPE: 14659066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_NORMAL_ARRAY_TYPE) 14669066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_NUM_COMPRESSED_TEXTURE_FORMATS) 14679066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_NUM_COMPRESSED_TEXTURE_FORMATS: 14689066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_NUM_COMPRESSED_TEXTURE_FORMATS) 14699066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_PACK_ALIGNMENT) 14709066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_PACK_ALIGNMENT: 14719066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_PACK_ALIGNMENT) 14729066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_PERSPECTIVE_CORRECTION_HINT) 14739066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_PERSPECTIVE_CORRECTION_HINT: 14749066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_PERSPECTIVE_CORRECTION_HINT) 14759066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_POINT_SIZE) 14769066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_POINT_SIZE: 14779066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_POINT_SIZE) 14789066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_POINT_SIZE_ARRAY_BUFFER_BINDING_OES) 14799066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_POINT_SIZE_ARRAY_BUFFER_BINDING_OES: 14809066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_POINT_SIZE_ARRAY_BUFFER_BINDING_OES) 14819066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_POINT_SIZE_ARRAY_STRIDE_OES) 14829066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_POINT_SIZE_ARRAY_STRIDE_OES: 14839066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_POINT_SIZE_ARRAY_STRIDE_OES) 14849066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_POINT_SIZE_ARRAY_TYPE_OES) 14859066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_POINT_SIZE_ARRAY_TYPE_OES: 14869066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_POINT_SIZE_ARRAY_TYPE_OES) 14879066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_POINT_SMOOTH_HINT) 14889066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_POINT_SMOOTH_HINT: 14899066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_POINT_SMOOTH_HINT) 14909066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_POLYGON_OFFSET_FACTOR) 14919066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_POLYGON_OFFSET_FACTOR: 14929066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_POLYGON_OFFSET_FACTOR) 14939066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_POLYGON_OFFSET_UNITS) 14949066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_POLYGON_OFFSET_UNITS: 14959066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_POLYGON_OFFSET_UNITS) 14969066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_PROJECTION_STACK_DEPTH) 14979066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_PROJECTION_STACK_DEPTH: 14989066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_PROJECTION_STACK_DEPTH) 14999066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_RED_BITS) 15009066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_RED_BITS: 15019066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_RED_BITS) 15029066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_SHADE_MODEL) 15039066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_SHADE_MODEL: 15049066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_SHADE_MODEL) 15059066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_STENCIL_BITS) 15069066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_STENCIL_BITS: 15079066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_STENCIL_BITS) 15089066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_STENCIL_CLEAR_VALUE) 15099066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_STENCIL_CLEAR_VALUE: 15109066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_STENCIL_CLEAR_VALUE) 15119066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_STENCIL_FAIL) 15129066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_STENCIL_FAIL: 15139066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_STENCIL_FAIL) 15149066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_STENCIL_FUNC) 15159066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_STENCIL_FUNC: 15169066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_STENCIL_FUNC) 15179066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_STENCIL_PASS_DEPTH_FAIL) 15189066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_STENCIL_PASS_DEPTH_FAIL: 15199066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_STENCIL_PASS_DEPTH_FAIL) 15209066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_STENCIL_PASS_DEPTH_PASS) 15219066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_STENCIL_PASS_DEPTH_PASS: 15229066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_STENCIL_PASS_DEPTH_PASS) 15239066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_STENCIL_REF) 15249066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_STENCIL_REF: 15259066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_STENCIL_REF) 15269066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_STENCIL_VALUE_MASK) 15279066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_STENCIL_VALUE_MASK: 15289066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_STENCIL_VALUE_MASK) 15299066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_STENCIL_WRITEMASK) 15309066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_STENCIL_WRITEMASK: 15319066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_STENCIL_WRITEMASK) 15329066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_SUBPIXEL_BITS) 15339066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_SUBPIXEL_BITS: 15349066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_SUBPIXEL_BITS) 15359066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_TEXTURE_BINDING_2D) 15369066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_TEXTURE_BINDING_2D: 15379066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_TEXTURE_BINDING_2D) 15389066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_TEXTURE_COORD_ARRAY_BUFFER_BINDING) 15399066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_TEXTURE_COORD_ARRAY_BUFFER_BINDING: 15409066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_TEXTURE_COORD_ARRAY_BUFFER_BINDING) 15419066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_TEXTURE_COORD_ARRAY_SIZE) 15429066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_TEXTURE_COORD_ARRAY_SIZE: 15439066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_TEXTURE_COORD_ARRAY_SIZE) 15449066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_TEXTURE_COORD_ARRAY_STRIDE) 15459066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_TEXTURE_COORD_ARRAY_STRIDE: 15469066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_TEXTURE_COORD_ARRAY_STRIDE) 15479066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_TEXTURE_COORD_ARRAY_TYPE) 15489066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_TEXTURE_COORD_ARRAY_TYPE: 15499066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_TEXTURE_COORD_ARRAY_TYPE) 15509066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_TEXTURE_STACK_DEPTH) 15519066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_TEXTURE_STACK_DEPTH: 15529066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_TEXTURE_STACK_DEPTH) 15539066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_UNPACK_ALIGNMENT) 15549066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_UNPACK_ALIGNMENT: 15559066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_UNPACK_ALIGNMENT) 15569066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_VERTEX_ARRAY_BUFFER_BINDING) 15579066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_VERTEX_ARRAY_BUFFER_BINDING: 15589066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_VERTEX_ARRAY_BUFFER_BINDING) 15599066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_VERTEX_ARRAY_SIZE) 15609066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_VERTEX_ARRAY_SIZE: 15619066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_VERTEX_ARRAY_SIZE) 15629066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_VERTEX_ARRAY_STRIDE) 15639066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_VERTEX_ARRAY_STRIDE: 15649066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_VERTEX_ARRAY_STRIDE) 15659066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_VERTEX_ARRAY_TYPE) 15669066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_VERTEX_ARRAY_TYPE: 15679066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_VERTEX_ARRAY_TYPE) 15689066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_WEIGHT_ARRAY_BUFFER_BINDING_OES) 15699066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_WEIGHT_ARRAY_BUFFER_BINDING_OES: 15709066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_WEIGHT_ARRAY_BUFFER_BINDING_OES) 15719066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_WEIGHT_ARRAY_SIZE_OES) 15729066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_WEIGHT_ARRAY_SIZE_OES: 15739066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_WEIGHT_ARRAY_SIZE_OES) 15749066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_WEIGHT_ARRAY_STRIDE_OES) 15759066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_WEIGHT_ARRAY_STRIDE_OES: 15769066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_WEIGHT_ARRAY_STRIDE_OES) 15779066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_WEIGHT_ARRAY_TYPE_OES) 15789066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_WEIGHT_ARRAY_TYPE_OES: 15799066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_WEIGHT_ARRAY_TYPE_OES) 15809066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _needed = 1; 15819066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project break; 15829066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_ALIASED_POINT_SIZE_RANGE) 15839066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_ALIASED_POINT_SIZE_RANGE: 15849066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_ALIASED_POINT_SIZE_RANGE) 15859066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_ALIASED_LINE_WIDTH_RANGE) 15869066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_ALIASED_LINE_WIDTH_RANGE: 15879066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_ALIASED_LINE_WIDTH_RANGE) 15889066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_DEPTH_RANGE) 15899066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_DEPTH_RANGE: 15909066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_DEPTH_RANGE) 15919066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_MAX_VIEWPORT_DIMS) 15929066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_MAX_VIEWPORT_DIMS: 15939066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_MAX_VIEWPORT_DIMS) 15949066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_SMOOTH_LINE_WIDTH_RANGE) 15959066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_SMOOTH_LINE_WIDTH_RANGE: 15969066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_SMOOTH_LINE_WIDTH_RANGE) 15979066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_SMOOTH_POINT_SIZE_RANGE) 15989066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_SMOOTH_POINT_SIZE_RANGE: 15999066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_SMOOTH_POINT_SIZE_RANGE) 16009066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _needed = 2; 16019066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project break; 16029066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_COLOR_CLEAR_VALUE) 16039066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_COLOR_CLEAR_VALUE: 16049066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_COLOR_CLEAR_VALUE) 16059066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_COLOR_WRITEMASK) 16069066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_COLOR_WRITEMASK: 16079066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_COLOR_WRITEMASK) 1608be509c9c7de5929d014dfe6d45e71cc8454ede0fJack Palevich#if defined(GL_FOG_COLOR) 1609be509c9c7de5929d014dfe6d45e71cc8454ede0fJack Palevich case GL_FOG_COLOR: 1610be509c9c7de5929d014dfe6d45e71cc8454ede0fJack Palevich#endif // defined(GL_FOG_COLOR) 1611be509c9c7de5929d014dfe6d45e71cc8454ede0fJack Palevich#if defined(GL_LIGHT_MODEL_AMBIENT) 1612be509c9c7de5929d014dfe6d45e71cc8454ede0fJack Palevich case GL_LIGHT_MODEL_AMBIENT: 1613be509c9c7de5929d014dfe6d45e71cc8454ede0fJack Palevich#endif // defined(GL_LIGHT_MODEL_AMBIENT) 16149066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_SCISSOR_BOX) 16159066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_SCISSOR_BOX: 16169066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_SCISSOR_BOX) 16179066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_VIEWPORT) 16189066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_VIEWPORT: 16199066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_VIEWPORT) 16209066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _needed = 4; 16219066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project break; 16229066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_MODELVIEW_MATRIX) 16239066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_MODELVIEW_MATRIX: 16249066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_MODELVIEW_MATRIX) 16259066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_MODELVIEW_MATRIX_FLOAT_AS_INT_BITS_OES) 16269066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_MODELVIEW_MATRIX_FLOAT_AS_INT_BITS_OES: 16279066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_MODELVIEW_MATRIX_FLOAT_AS_INT_BITS_OES) 16289066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_PROJECTION_MATRIX) 16299066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_PROJECTION_MATRIX: 16309066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_PROJECTION_MATRIX) 16319066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_PROJECTION_MATRIX_FLOAT_AS_INT_BITS_OES) 16329066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_PROJECTION_MATRIX_FLOAT_AS_INT_BITS_OES: 16339066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_PROJECTION_MATRIX_FLOAT_AS_INT_BITS_OES) 16349066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_TEXTURE_MATRIX) 16359066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_TEXTURE_MATRIX: 16369066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_TEXTURE_MATRIX) 16379066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_TEXTURE_MATRIX_FLOAT_AS_INT_BITS_OES) 16389066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_TEXTURE_MATRIX_FLOAT_AS_INT_BITS_OES: 16399066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_TEXTURE_MATRIX_FLOAT_AS_INT_BITS_OES) 16409066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _needed = 16; 16419066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project break; 16429066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_COMPRESSED_TEXTURE_FORMATS) 16439066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_COMPRESSED_TEXTURE_FORMATS: 16449066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_COMPRESSED_TEXTURE_FORMATS) 1645be509c9c7de5929d014dfe6d45e71cc8454ede0fJack Palevich _needed = getNumCompressedTextureFormats(); 16469066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project break; 16479066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project default: 16489066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _needed = 0; 16499066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project break; 16509066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 16519066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (_remaining < _needed) { 16529066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _exception = 1; 16539066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ThrowNew(IAEClass, "remaining() < needed"); 16549066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project goto exit; 16559066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 16569066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project glGetIntegerv( 16579066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLenum)pname, 16589066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLint *)params 16599066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project ); 16609066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 16619066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectexit: 16629066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (_array) { 16639066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project releasePointer(_env, _array, params, _exception ? JNI_FALSE : JNI_TRUE); 16649066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 16659066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 16669066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 16679066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#include <string.h> 16689066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 16699066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* const GLubyte * glGetString ( GLenum name ) */ 167027f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic 16719066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectjstring 16729066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glGetString 16739066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jint name) { 16749066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project const char * chars = (const char *)glGetString((GLenum)name); 16759066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project jstring output = _env->NewStringUTF(chars); 16769066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project return output; 16779066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 16789066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glHint ( GLenum target, GLenum mode ) */ 16799066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 16809066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glHint__II 16819066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jint target, jint mode) { 16829066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project glHint( 16839066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLenum)target, 16849066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLenum)mode 16859066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project ); 16869066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 16879066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 16889066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glLightModelf ( GLenum pname, GLfloat param ) */ 16899066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 16909066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glLightModelf__IF 16919066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jint pname, jfloat param) { 16929066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project glLightModelf( 16939066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLenum)pname, 16949066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLfloat)param 16959066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project ); 16969066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 16979066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 16989066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glLightModelfv ( GLenum pname, const GLfloat *params ) */ 16999066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 17009066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glLightModelfv__I_3FI 17019066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jint pname, jfloatArray params_ref, jint offset) { 17029066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project GLfloat *params_base = (GLfloat *) 0; 17039066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project jint _remaining; 17049066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project GLfloat *params = (GLfloat *) 0; 17059066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 17069066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (!params_ref) { 17079066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ThrowNew(IAEClass, "params == null"); 17089066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project goto exit; 17099066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 17109066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (offset < 0) { 17119066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ThrowNew(IAEClass, "offset < 0"); 17129066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project goto exit; 17139066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 17149066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _remaining = _env->GetArrayLength(params_ref) - offset; 17159066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project int _needed; 17169066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project switch (pname) { 17179066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_LIGHT_MODEL_TWO_SIDE) 17189066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_LIGHT_MODEL_TWO_SIDE: 17199066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_LIGHT_MODEL_TWO_SIDE) 17209066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _needed = 1; 17219066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project break; 17229066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_LIGHT_MODEL_AMBIENT) 17239066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_LIGHT_MODEL_AMBIENT: 17249066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_LIGHT_MODEL_AMBIENT) 17259066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _needed = 4; 17269066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project break; 17279066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project default: 17289066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _needed = 0; 17299066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project break; 17309066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 17319066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (_remaining < _needed) { 17329066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ThrowNew(IAEClass, "length - offset < needed"); 17339066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project goto exit; 17349066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 17359066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project params_base = (GLfloat *) 17369066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->GetPrimitiveArrayCritical(params_ref, (jboolean *)0); 17379066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project params = params_base + offset; 17389066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 17399066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project glLightModelfv( 17409066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLenum)pname, 17419066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLfloat *)params 17429066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project ); 17439066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 17449066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectexit: 17459066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (params_base) { 17469066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ReleasePrimitiveArrayCritical(params_ref, params_base, 17479066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project JNI_ABORT); 17489066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 17499066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 17509066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 17519066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glLightModelfv ( GLenum pname, const GLfloat *params ) */ 17529066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 17539066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glLightModelfv__ILjava_nio_FloatBuffer_2 17549066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jint pname, jobject params_buf) { 17559066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project jarray _array = (jarray) 0; 17569066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project jint _remaining; 17579066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project GLfloat *params = (GLfloat *) 0; 17589066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 17599066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project params = (GLfloat *)getPointer(_env, params_buf, &_array, &_remaining); 17609066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project int _needed; 17619066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project switch (pname) { 17629066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_LIGHT_MODEL_TWO_SIDE) 17639066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_LIGHT_MODEL_TWO_SIDE: 17649066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_LIGHT_MODEL_TWO_SIDE) 17659066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _needed = 1; 17669066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project break; 17679066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_LIGHT_MODEL_AMBIENT) 17689066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_LIGHT_MODEL_AMBIENT: 17699066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_LIGHT_MODEL_AMBIENT) 17709066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _needed = 4; 17719066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project break; 17729066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project default: 17739066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _needed = 0; 17749066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project break; 17759066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 17769066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (_remaining < _needed) { 17779066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ThrowNew(IAEClass, "remaining() < needed"); 17789066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project goto exit; 17799066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 17809066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project glLightModelfv( 17819066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLenum)pname, 17829066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLfloat *)params 17839066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project ); 17849066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 17859066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectexit: 17869066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (_array) { 17879066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project releasePointer(_env, _array, params, JNI_FALSE); 17889066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 17899066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 17909066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 17919066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glLightModelx ( GLenum pname, GLfixed param ) */ 17929066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 17939066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glLightModelx__II 17949066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jint pname, jint param) { 17959066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project glLightModelx( 17969066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLenum)pname, 17979066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLfixed)param 17989066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project ); 17999066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 18009066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 18019066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glLightModelxv ( GLenum pname, const GLfixed *params ) */ 18029066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 18039066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glLightModelxv__I_3II 18049066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jint pname, jintArray params_ref, jint offset) { 18059066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project GLfixed *params_base = (GLfixed *) 0; 18069066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project jint _remaining; 18079066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project GLfixed *params = (GLfixed *) 0; 18089066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 18099066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (!params_ref) { 18109066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ThrowNew(IAEClass, "params == null"); 18119066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project goto exit; 18129066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 18139066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (offset < 0) { 18149066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ThrowNew(IAEClass, "offset < 0"); 18159066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project goto exit; 18169066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 18179066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _remaining = _env->GetArrayLength(params_ref) - offset; 18189066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project int _needed; 18199066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project switch (pname) { 18209066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_LIGHT_MODEL_TWO_SIDE) 18219066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_LIGHT_MODEL_TWO_SIDE: 18229066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_LIGHT_MODEL_TWO_SIDE) 18239066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _needed = 1; 18249066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project break; 18259066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_LIGHT_MODEL_AMBIENT) 18269066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_LIGHT_MODEL_AMBIENT: 18279066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_LIGHT_MODEL_AMBIENT) 18289066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _needed = 4; 18299066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project break; 18309066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project default: 18319066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _needed = 0; 18329066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project break; 18339066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 18349066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (_remaining < _needed) { 18359066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ThrowNew(IAEClass, "length - offset < needed"); 18369066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project goto exit; 18379066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 18389066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project params_base = (GLfixed *) 18399066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->GetPrimitiveArrayCritical(params_ref, (jboolean *)0); 18409066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project params = params_base + offset; 18419066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 18429066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project glLightModelxv( 18439066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLenum)pname, 18449066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLfixed *)params 18459066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project ); 18469066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 18479066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectexit: 18489066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (params_base) { 18499066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ReleasePrimitiveArrayCritical(params_ref, params_base, 18509066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project JNI_ABORT); 18519066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 18529066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 18539066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 18549066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glLightModelxv ( GLenum pname, const GLfixed *params ) */ 18559066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 18569066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glLightModelxv__ILjava_nio_IntBuffer_2 18579066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jint pname, jobject params_buf) { 18589066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project jarray _array = (jarray) 0; 18599066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project jint _remaining; 18609066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project GLfixed *params = (GLfixed *) 0; 18619066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 18629066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project params = (GLfixed *)getPointer(_env, params_buf, &_array, &_remaining); 18639066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project int _needed; 18649066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project switch (pname) { 18659066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_LIGHT_MODEL_TWO_SIDE) 18669066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_LIGHT_MODEL_TWO_SIDE: 18679066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_LIGHT_MODEL_TWO_SIDE) 18689066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _needed = 1; 18699066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project break; 18709066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_LIGHT_MODEL_AMBIENT) 18719066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_LIGHT_MODEL_AMBIENT: 18729066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_LIGHT_MODEL_AMBIENT) 18739066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _needed = 4; 18749066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project break; 18759066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project default: 18769066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _needed = 0; 18779066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project break; 18789066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 18799066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (_remaining < _needed) { 18809066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ThrowNew(IAEClass, "remaining() < needed"); 18819066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project goto exit; 18829066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 18839066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project glLightModelxv( 18849066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLenum)pname, 18859066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLfixed *)params 18869066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project ); 18879066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 18889066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectexit: 18899066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (_array) { 18909066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project releasePointer(_env, _array, params, JNI_FALSE); 18919066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 18929066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 18939066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 18949066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glLightf ( GLenum light, GLenum pname, GLfloat param ) */ 18959066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 18969066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glLightf__IIF 18979066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jint light, jint pname, jfloat param) { 18989066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project glLightf( 18999066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLenum)light, 19009066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLenum)pname, 19019066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLfloat)param 19029066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project ); 19039066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 19049066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 19059066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glLightfv ( GLenum light, GLenum pname, const GLfloat *params ) */ 19069066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 19079066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glLightfv__II_3FI 19089066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jint light, jint pname, jfloatArray params_ref, jint offset) { 19099066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project GLfloat *params_base = (GLfloat *) 0; 19109066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project jint _remaining; 19119066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project GLfloat *params = (GLfloat *) 0; 19129066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 19139066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (!params_ref) { 19149066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ThrowNew(IAEClass, "params == null"); 19159066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project goto exit; 19169066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 19179066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (offset < 0) { 19189066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ThrowNew(IAEClass, "offset < 0"); 19199066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project goto exit; 19209066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 19219066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _remaining = _env->GetArrayLength(params_ref) - offset; 19229066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project int _needed; 19239066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project switch (pname) { 19249066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_SPOT_EXPONENT) 19259066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_SPOT_EXPONENT: 19269066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_SPOT_EXPONENT) 19279066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_SPOT_CUTOFF) 19289066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_SPOT_CUTOFF: 19299066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_SPOT_CUTOFF) 19309066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_CONSTANT_ATTENUATION) 19319066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_CONSTANT_ATTENUATION: 19329066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_CONSTANT_ATTENUATION) 19339066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_LINEAR_ATTENUATION) 19349066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_LINEAR_ATTENUATION: 19359066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_LINEAR_ATTENUATION) 19369066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_QUADRATIC_ATTENUATION) 19379066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_QUADRATIC_ATTENUATION: 19389066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_QUADRATIC_ATTENUATION) 19399066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _needed = 1; 19409066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project break; 19419066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_SPOT_DIRECTION) 19429066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_SPOT_DIRECTION: 19439066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_SPOT_DIRECTION) 19449066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _needed = 3; 19459066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project break; 19469066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_AMBIENT) 19479066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_AMBIENT: 19489066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_AMBIENT) 19499066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_DIFFUSE) 19509066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_DIFFUSE: 19519066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_DIFFUSE) 19529066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_SPECULAR) 19539066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_SPECULAR: 19549066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_SPECULAR) 19559066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_EMISSION) 19569066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_EMISSION: 19579066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_EMISSION) 19589066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _needed = 4; 19599066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project break; 19609066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project default: 19619066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _needed = 0; 19629066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project break; 19639066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 19649066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (_remaining < _needed) { 19659066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ThrowNew(IAEClass, "length - offset < needed"); 19669066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project goto exit; 19679066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 19689066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project params_base = (GLfloat *) 19699066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->GetPrimitiveArrayCritical(params_ref, (jboolean *)0); 19709066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project params = params_base + offset; 19719066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 19729066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project glLightfv( 19739066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLenum)light, 19749066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLenum)pname, 19759066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLfloat *)params 19769066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project ); 19779066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 19789066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectexit: 19799066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (params_base) { 19809066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ReleasePrimitiveArrayCritical(params_ref, params_base, 19819066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project JNI_ABORT); 19829066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 19839066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 19849066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 19859066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glLightfv ( GLenum light, GLenum pname, const GLfloat *params ) */ 19869066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 19879066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glLightfv__IILjava_nio_FloatBuffer_2 19889066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jint light, jint pname, jobject params_buf) { 19899066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project jarray _array = (jarray) 0; 19909066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project jint _remaining; 19919066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project GLfloat *params = (GLfloat *) 0; 19929066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 19939066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project params = (GLfloat *)getPointer(_env, params_buf, &_array, &_remaining); 19949066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project int _needed; 19959066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project switch (pname) { 19969066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_SPOT_EXPONENT) 19979066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_SPOT_EXPONENT: 19989066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_SPOT_EXPONENT) 19999066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_SPOT_CUTOFF) 20009066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_SPOT_CUTOFF: 20019066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_SPOT_CUTOFF) 20029066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_CONSTANT_ATTENUATION) 20039066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_CONSTANT_ATTENUATION: 20049066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_CONSTANT_ATTENUATION) 20059066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_LINEAR_ATTENUATION) 20069066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_LINEAR_ATTENUATION: 20079066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_LINEAR_ATTENUATION) 20089066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_QUADRATIC_ATTENUATION) 20099066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_QUADRATIC_ATTENUATION: 20109066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_QUADRATIC_ATTENUATION) 20119066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _needed = 1; 20129066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project break; 20139066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_SPOT_DIRECTION) 20149066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_SPOT_DIRECTION: 20159066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_SPOT_DIRECTION) 20169066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _needed = 3; 20179066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project break; 20189066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_AMBIENT) 20199066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_AMBIENT: 20209066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_AMBIENT) 20219066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_DIFFUSE) 20229066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_DIFFUSE: 20239066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_DIFFUSE) 20249066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_SPECULAR) 20259066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_SPECULAR: 20269066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_SPECULAR) 20279066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_EMISSION) 20289066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_EMISSION: 20299066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_EMISSION) 20309066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _needed = 4; 20319066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project break; 20329066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project default: 20339066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _needed = 0; 20349066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project break; 20359066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 20369066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (_remaining < _needed) { 20379066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ThrowNew(IAEClass, "remaining() < needed"); 20389066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project goto exit; 20399066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 20409066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project glLightfv( 20419066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLenum)light, 20429066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLenum)pname, 20439066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLfloat *)params 20449066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project ); 20459066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 20469066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectexit: 20479066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (_array) { 20489066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project releasePointer(_env, _array, params, JNI_FALSE); 20499066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 20509066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 20519066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 20529066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glLightx ( GLenum light, GLenum pname, GLfixed param ) */ 20539066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 20549066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glLightx__III 20559066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jint light, jint pname, jint param) { 20569066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project glLightx( 20579066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLenum)light, 20589066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLenum)pname, 20599066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLfixed)param 20609066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project ); 20619066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 20629066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 20639066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glLightxv ( GLenum light, GLenum pname, const GLfixed *params ) */ 20649066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 20659066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glLightxv__II_3II 20669066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jint light, jint pname, jintArray params_ref, jint offset) { 20679066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project GLfixed *params_base = (GLfixed *) 0; 20689066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project jint _remaining; 20699066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project GLfixed *params = (GLfixed *) 0; 20709066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 20719066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (!params_ref) { 20729066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ThrowNew(IAEClass, "params == null"); 20739066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project goto exit; 20749066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 20759066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (offset < 0) { 20769066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ThrowNew(IAEClass, "offset < 0"); 20779066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project goto exit; 20789066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 20799066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _remaining = _env->GetArrayLength(params_ref) - offset; 20809066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project int _needed; 20819066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project switch (pname) { 20829066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_SPOT_EXPONENT) 20839066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_SPOT_EXPONENT: 20849066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_SPOT_EXPONENT) 20859066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_SPOT_CUTOFF) 20869066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_SPOT_CUTOFF: 20879066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_SPOT_CUTOFF) 20889066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_CONSTANT_ATTENUATION) 20899066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_CONSTANT_ATTENUATION: 20909066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_CONSTANT_ATTENUATION) 20919066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_LINEAR_ATTENUATION) 20929066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_LINEAR_ATTENUATION: 20939066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_LINEAR_ATTENUATION) 20949066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_QUADRATIC_ATTENUATION) 20959066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_QUADRATIC_ATTENUATION: 20969066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_QUADRATIC_ATTENUATION) 20979066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _needed = 1; 20989066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project break; 20999066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_SPOT_DIRECTION) 21009066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_SPOT_DIRECTION: 21019066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_SPOT_DIRECTION) 21029066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _needed = 3; 21039066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project break; 21049066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_AMBIENT) 21059066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_AMBIENT: 21069066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_AMBIENT) 21079066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_DIFFUSE) 21089066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_DIFFUSE: 21099066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_DIFFUSE) 21109066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_SPECULAR) 21119066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_SPECULAR: 21129066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_SPECULAR) 21139066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_EMISSION) 21149066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_EMISSION: 21159066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_EMISSION) 21169066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _needed = 4; 21179066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project break; 21189066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project default: 21199066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _needed = 0; 21209066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project break; 21219066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 21229066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (_remaining < _needed) { 21239066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ThrowNew(IAEClass, "length - offset < needed"); 21249066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project goto exit; 21259066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 21269066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project params_base = (GLfixed *) 21279066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->GetPrimitiveArrayCritical(params_ref, (jboolean *)0); 21289066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project params = params_base + offset; 21299066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 21309066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project glLightxv( 21319066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLenum)light, 21329066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLenum)pname, 21339066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLfixed *)params 21349066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project ); 21359066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 21369066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectexit: 21379066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (params_base) { 21389066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ReleasePrimitiveArrayCritical(params_ref, params_base, 21399066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project JNI_ABORT); 21409066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 21419066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 21429066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 21439066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glLightxv ( GLenum light, GLenum pname, const GLfixed *params ) */ 21449066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 21459066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glLightxv__IILjava_nio_IntBuffer_2 21469066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jint light, jint pname, jobject params_buf) { 21479066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project jarray _array = (jarray) 0; 21489066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project jint _remaining; 21499066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project GLfixed *params = (GLfixed *) 0; 21509066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 21519066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project params = (GLfixed *)getPointer(_env, params_buf, &_array, &_remaining); 21529066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project int _needed; 21539066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project switch (pname) { 21549066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_SPOT_EXPONENT) 21559066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_SPOT_EXPONENT: 21569066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_SPOT_EXPONENT) 21579066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_SPOT_CUTOFF) 21589066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_SPOT_CUTOFF: 21599066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_SPOT_CUTOFF) 21609066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_CONSTANT_ATTENUATION) 21619066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_CONSTANT_ATTENUATION: 21629066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_CONSTANT_ATTENUATION) 21639066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_LINEAR_ATTENUATION) 21649066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_LINEAR_ATTENUATION: 21659066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_LINEAR_ATTENUATION) 21669066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_QUADRATIC_ATTENUATION) 21679066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_QUADRATIC_ATTENUATION: 21689066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_QUADRATIC_ATTENUATION) 21699066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _needed = 1; 21709066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project break; 21719066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_SPOT_DIRECTION) 21729066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_SPOT_DIRECTION: 21739066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_SPOT_DIRECTION) 21749066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _needed = 3; 21759066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project break; 21769066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_AMBIENT) 21779066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_AMBIENT: 21789066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_AMBIENT) 21799066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_DIFFUSE) 21809066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_DIFFUSE: 21819066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_DIFFUSE) 21829066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_SPECULAR) 21839066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_SPECULAR: 21849066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_SPECULAR) 21859066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_EMISSION) 21869066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_EMISSION: 21879066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_EMISSION) 21889066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _needed = 4; 21899066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project break; 21909066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project default: 21919066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _needed = 0; 21929066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project break; 21939066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 21949066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (_remaining < _needed) { 21959066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ThrowNew(IAEClass, "remaining() < needed"); 21969066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project goto exit; 21979066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 21989066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project glLightxv( 21999066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLenum)light, 22009066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLenum)pname, 22019066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLfixed *)params 22029066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project ); 22039066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 22049066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectexit: 22059066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (_array) { 22069066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project releasePointer(_env, _array, params, JNI_FALSE); 22079066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 22089066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 22099066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 22109066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glLineWidth ( GLfloat width ) */ 22119066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 22129066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glLineWidth__F 22139066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jfloat width) { 22149066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project glLineWidth( 22159066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLfloat)width 22169066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project ); 22179066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 22189066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 22199066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glLineWidthx ( GLfixed width ) */ 22209066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 22219066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glLineWidthx__I 22229066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jint width) { 22239066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project glLineWidthx( 22249066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLfixed)width 22259066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project ); 22269066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 22279066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 22289066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glLoadIdentity ( void ) */ 22299066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 22309066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glLoadIdentity__ 22319066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this) { 22329066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project glLoadIdentity(); 22339066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 22349066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 22359066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glLoadMatrixf ( const GLfloat *m ) */ 22369066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 22379066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glLoadMatrixf___3FI 22389066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jfloatArray m_ref, jint offset) { 22399066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project GLfloat *m_base = (GLfloat *) 0; 22409066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project jint _remaining; 22419066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project GLfloat *m = (GLfloat *) 0; 22429066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 22439066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (!m_ref) { 22449066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ThrowNew(IAEClass, "m == null"); 22459066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project goto exit; 22469066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 22479066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (offset < 0) { 22489066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ThrowNew(IAEClass, "offset < 0"); 22499066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project goto exit; 22509066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 22519066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _remaining = _env->GetArrayLength(m_ref) - offset; 22529066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project m_base = (GLfloat *) 22539066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->GetPrimitiveArrayCritical(m_ref, (jboolean *)0); 22549066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project m = m_base + offset; 22559066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 22569066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project glLoadMatrixf( 22579066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLfloat *)m 22589066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project ); 22599066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 22609066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectexit: 22619066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (m_base) { 22629066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ReleasePrimitiveArrayCritical(m_ref, m_base, 22639066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project JNI_ABORT); 22649066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 22659066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 22669066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 22679066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glLoadMatrixf ( const GLfloat *m ) */ 22689066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 22699066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glLoadMatrixf__Ljava_nio_FloatBuffer_2 22709066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jobject m_buf) { 22719066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project jarray _array = (jarray) 0; 22729066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project jint _remaining; 22739066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project GLfloat *m = (GLfloat *) 0; 22749066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 22759066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project m = (GLfloat *)getPointer(_env, m_buf, &_array, &_remaining); 22769066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project glLoadMatrixf( 22779066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLfloat *)m 22789066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project ); 22799066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (_array) { 22809066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project releasePointer(_env, _array, m, JNI_FALSE); 22819066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 22829066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 22839066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 22849066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glLoadMatrixx ( const GLfixed *m ) */ 22859066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 22869066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glLoadMatrixx___3II 22879066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jintArray m_ref, jint offset) { 22889066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project GLfixed *m_base = (GLfixed *) 0; 22899066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project jint _remaining; 22909066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project GLfixed *m = (GLfixed *) 0; 22919066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 22929066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (!m_ref) { 22939066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ThrowNew(IAEClass, "m == null"); 22949066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project goto exit; 22959066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 22969066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (offset < 0) { 22979066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ThrowNew(IAEClass, "offset < 0"); 22989066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project goto exit; 22999066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 23009066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _remaining = _env->GetArrayLength(m_ref) - offset; 23019066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project m_base = (GLfixed *) 23029066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->GetPrimitiveArrayCritical(m_ref, (jboolean *)0); 23039066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project m = m_base + offset; 23049066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 23059066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project glLoadMatrixx( 23069066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLfixed *)m 23079066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project ); 23089066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 23099066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectexit: 23109066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (m_base) { 23119066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ReleasePrimitiveArrayCritical(m_ref, m_base, 23129066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project JNI_ABORT); 23139066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 23149066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 23159066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 23169066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glLoadMatrixx ( const GLfixed *m ) */ 23179066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 23189066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glLoadMatrixx__Ljava_nio_IntBuffer_2 23199066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jobject m_buf) { 23209066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project jarray _array = (jarray) 0; 23219066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project jint _remaining; 23229066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project GLfixed *m = (GLfixed *) 0; 23239066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 23249066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project m = (GLfixed *)getPointer(_env, m_buf, &_array, &_remaining); 23259066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project glLoadMatrixx( 23269066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLfixed *)m 23279066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project ); 23289066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (_array) { 23299066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project releasePointer(_env, _array, m, JNI_FALSE); 23309066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 23319066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 23329066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 23339066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glLogicOp ( GLenum opcode ) */ 23349066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 23359066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glLogicOp__I 23369066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jint opcode) { 23379066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project glLogicOp( 23389066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLenum)opcode 23399066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project ); 23409066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 23419066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 23429066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glMaterialf ( GLenum face, GLenum pname, GLfloat param ) */ 23439066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 23449066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glMaterialf__IIF 23459066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jint face, jint pname, jfloat param) { 23469066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project glMaterialf( 23479066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLenum)face, 23489066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLenum)pname, 23499066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLfloat)param 23509066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project ); 23519066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 23529066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 23539066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glMaterialfv ( GLenum face, GLenum pname, const GLfloat *params ) */ 23549066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 23559066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glMaterialfv__II_3FI 23569066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jint face, jint pname, jfloatArray params_ref, jint offset) { 23579066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project GLfloat *params_base = (GLfloat *) 0; 23589066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project jint _remaining; 23599066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project GLfloat *params = (GLfloat *) 0; 23609066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 23619066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (!params_ref) { 23629066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ThrowNew(IAEClass, "params == null"); 23639066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project goto exit; 23649066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 23659066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (offset < 0) { 23669066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ThrowNew(IAEClass, "offset < 0"); 23679066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project goto exit; 23689066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 23699066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _remaining = _env->GetArrayLength(params_ref) - offset; 23709066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project int _needed; 23719066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project switch (pname) { 23729066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_SHININESS) 23739066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_SHININESS: 23749066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_SHININESS) 23759066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _needed = 1; 23769066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project break; 23779066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_AMBIENT) 23789066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_AMBIENT: 23799066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_AMBIENT) 23809066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_DIFFUSE) 23819066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_DIFFUSE: 23829066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_DIFFUSE) 23839066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_SPECULAR) 23849066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_SPECULAR: 23859066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_SPECULAR) 23869066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_EMISSION) 23879066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_EMISSION: 23889066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_EMISSION) 23899066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_AMBIENT_AND_DIFFUSE) 23909066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_AMBIENT_AND_DIFFUSE: 23919066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_AMBIENT_AND_DIFFUSE) 23929066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _needed = 4; 23939066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project break; 23949066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project default: 23959066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _needed = 0; 23969066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project break; 23979066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 23989066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (_remaining < _needed) { 23999066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ThrowNew(IAEClass, "length - offset < needed"); 24009066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project goto exit; 24019066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 24029066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project params_base = (GLfloat *) 24039066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->GetPrimitiveArrayCritical(params_ref, (jboolean *)0); 24049066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project params = params_base + offset; 24059066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 24069066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project glMaterialfv( 24079066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLenum)face, 24089066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLenum)pname, 24099066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLfloat *)params 24109066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project ); 24119066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 24129066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectexit: 24139066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (params_base) { 24149066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ReleasePrimitiveArrayCritical(params_ref, params_base, 24159066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project JNI_ABORT); 24169066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 24179066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 24189066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 24199066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glMaterialfv ( GLenum face, GLenum pname, const GLfloat *params ) */ 24209066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 24219066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glMaterialfv__IILjava_nio_FloatBuffer_2 24229066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jint face, jint pname, jobject params_buf) { 24239066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project jarray _array = (jarray) 0; 24249066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project jint _remaining; 24259066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project GLfloat *params = (GLfloat *) 0; 24269066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 24279066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project params = (GLfloat *)getPointer(_env, params_buf, &_array, &_remaining); 24289066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project int _needed; 24299066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project switch (pname) { 24309066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_SHININESS) 24319066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_SHININESS: 24329066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_SHININESS) 24339066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _needed = 1; 24349066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project break; 24359066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_AMBIENT) 24369066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_AMBIENT: 24379066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_AMBIENT) 24389066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_DIFFUSE) 24399066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_DIFFUSE: 24409066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_DIFFUSE) 24419066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_SPECULAR) 24429066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_SPECULAR: 24439066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_SPECULAR) 24449066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_EMISSION) 24459066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_EMISSION: 24469066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_EMISSION) 24479066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_AMBIENT_AND_DIFFUSE) 24489066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_AMBIENT_AND_DIFFUSE: 24499066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_AMBIENT_AND_DIFFUSE) 24509066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _needed = 4; 24519066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project break; 24529066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project default: 24539066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _needed = 0; 24549066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project break; 24559066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 24569066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (_remaining < _needed) { 24579066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ThrowNew(IAEClass, "remaining() < needed"); 24589066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project goto exit; 24599066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 24609066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project glMaterialfv( 24619066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLenum)face, 24629066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLenum)pname, 24639066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLfloat *)params 24649066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project ); 24659066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 24669066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectexit: 24679066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (_array) { 24689066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project releasePointer(_env, _array, params, JNI_FALSE); 24699066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 24709066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 24719066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 24729066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glMaterialx ( GLenum face, GLenum pname, GLfixed param ) */ 24739066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 24749066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glMaterialx__III 24759066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jint face, jint pname, jint param) { 24769066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project glMaterialx( 24779066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLenum)face, 24789066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLenum)pname, 24799066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLfixed)param 24809066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project ); 24819066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 24829066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 24839066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glMaterialxv ( GLenum face, GLenum pname, const GLfixed *params ) */ 24849066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 24859066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glMaterialxv__II_3II 24869066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jint face, jint pname, jintArray params_ref, jint offset) { 24879066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project GLfixed *params_base = (GLfixed *) 0; 24889066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project jint _remaining; 24899066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project GLfixed *params = (GLfixed *) 0; 24909066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 24919066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (!params_ref) { 24929066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ThrowNew(IAEClass, "params == null"); 24939066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project goto exit; 24949066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 24959066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (offset < 0) { 24969066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ThrowNew(IAEClass, "offset < 0"); 24979066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project goto exit; 24989066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 24999066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _remaining = _env->GetArrayLength(params_ref) - offset; 25009066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project int _needed; 25019066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project switch (pname) { 25029066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_SHININESS) 25039066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_SHININESS: 25049066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_SHININESS) 25059066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _needed = 1; 25069066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project break; 25079066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_AMBIENT) 25089066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_AMBIENT: 25099066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_AMBIENT) 25109066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_DIFFUSE) 25119066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_DIFFUSE: 25129066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_DIFFUSE) 25139066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_SPECULAR) 25149066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_SPECULAR: 25159066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_SPECULAR) 25169066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_EMISSION) 25179066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_EMISSION: 25189066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_EMISSION) 25199066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_AMBIENT_AND_DIFFUSE) 25209066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_AMBIENT_AND_DIFFUSE: 25219066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_AMBIENT_AND_DIFFUSE) 25229066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _needed = 4; 25239066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project break; 25249066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project default: 25259066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _needed = 0; 25269066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project break; 25279066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 25289066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (_remaining < _needed) { 25299066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ThrowNew(IAEClass, "length - offset < needed"); 25309066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project goto exit; 25319066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 25329066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project params_base = (GLfixed *) 25339066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->GetPrimitiveArrayCritical(params_ref, (jboolean *)0); 25349066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project params = params_base + offset; 25359066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 25369066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project glMaterialxv( 25379066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLenum)face, 25389066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLenum)pname, 25399066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLfixed *)params 25409066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project ); 25419066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 25429066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectexit: 25439066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (params_base) { 25449066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ReleasePrimitiveArrayCritical(params_ref, params_base, 25459066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project JNI_ABORT); 25469066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 25479066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 25489066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 25499066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glMaterialxv ( GLenum face, GLenum pname, const GLfixed *params ) */ 25509066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 25519066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glMaterialxv__IILjava_nio_IntBuffer_2 25529066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jint face, jint pname, jobject params_buf) { 25539066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project jarray _array = (jarray) 0; 25549066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project jint _remaining; 25559066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project GLfixed *params = (GLfixed *) 0; 25569066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 25579066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project params = (GLfixed *)getPointer(_env, params_buf, &_array, &_remaining); 25589066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project int _needed; 25599066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project switch (pname) { 25609066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_SHININESS) 25619066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_SHININESS: 25629066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_SHININESS) 25639066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _needed = 1; 25649066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project break; 25659066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_AMBIENT) 25669066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_AMBIENT: 25679066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_AMBIENT) 25689066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_DIFFUSE) 25699066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_DIFFUSE: 25709066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_DIFFUSE) 25719066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_SPECULAR) 25729066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_SPECULAR: 25739066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_SPECULAR) 25749066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_EMISSION) 25759066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_EMISSION: 25769066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_EMISSION) 25779066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_AMBIENT_AND_DIFFUSE) 25789066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_AMBIENT_AND_DIFFUSE: 25799066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_AMBIENT_AND_DIFFUSE) 25809066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _needed = 4; 25819066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project break; 25829066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project default: 25839066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _needed = 0; 25849066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project break; 25859066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 25869066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (_remaining < _needed) { 25879066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ThrowNew(IAEClass, "remaining() < needed"); 25889066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project goto exit; 25899066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 25909066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project glMaterialxv( 25919066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLenum)face, 25929066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLenum)pname, 25939066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLfixed *)params 25949066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project ); 25959066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 25969066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectexit: 25979066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (_array) { 25989066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project releasePointer(_env, _array, params, JNI_FALSE); 25999066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 26009066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 26019066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 26029066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glMatrixMode ( GLenum mode ) */ 26039066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 26049066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glMatrixMode__I 26059066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jint mode) { 26069066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project glMatrixMode( 26079066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLenum)mode 26089066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project ); 26099066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 26109066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 26119066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glMultMatrixf ( const GLfloat *m ) */ 26129066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 26139066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glMultMatrixf___3FI 26149066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jfloatArray m_ref, jint offset) { 26159066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project GLfloat *m_base = (GLfloat *) 0; 26169066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project jint _remaining; 26179066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project GLfloat *m = (GLfloat *) 0; 26189066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 26199066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (!m_ref) { 26209066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ThrowNew(IAEClass, "m == null"); 26219066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project goto exit; 26229066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 26239066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (offset < 0) { 26249066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ThrowNew(IAEClass, "offset < 0"); 26259066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project goto exit; 26269066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 26279066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _remaining = _env->GetArrayLength(m_ref) - offset; 26289066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project m_base = (GLfloat *) 26299066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->GetPrimitiveArrayCritical(m_ref, (jboolean *)0); 26309066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project m = m_base + offset; 26319066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 26329066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project glMultMatrixf( 26339066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLfloat *)m 26349066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project ); 26359066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 26369066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectexit: 26379066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (m_base) { 26389066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ReleasePrimitiveArrayCritical(m_ref, m_base, 26399066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project JNI_ABORT); 26409066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 26419066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 26429066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 26439066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glMultMatrixf ( const GLfloat *m ) */ 26449066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 26459066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glMultMatrixf__Ljava_nio_FloatBuffer_2 26469066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jobject m_buf) { 26479066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project jarray _array = (jarray) 0; 26489066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project jint _remaining; 26499066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project GLfloat *m = (GLfloat *) 0; 26509066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 26519066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project m = (GLfloat *)getPointer(_env, m_buf, &_array, &_remaining); 26529066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project glMultMatrixf( 26539066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLfloat *)m 26549066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project ); 26559066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (_array) { 26569066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project releasePointer(_env, _array, m, JNI_FALSE); 26579066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 26589066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 26599066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 26609066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glMultMatrixx ( const GLfixed *m ) */ 26619066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 26629066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glMultMatrixx___3II 26639066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jintArray m_ref, jint offset) { 26649066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project GLfixed *m_base = (GLfixed *) 0; 26659066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project jint _remaining; 26669066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project GLfixed *m = (GLfixed *) 0; 26679066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 26689066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (!m_ref) { 26699066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ThrowNew(IAEClass, "m == null"); 26709066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project goto exit; 26719066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 26729066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (offset < 0) { 26739066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ThrowNew(IAEClass, "offset < 0"); 26749066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project goto exit; 26759066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 26769066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _remaining = _env->GetArrayLength(m_ref) - offset; 26779066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project m_base = (GLfixed *) 26789066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->GetPrimitiveArrayCritical(m_ref, (jboolean *)0); 26799066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project m = m_base + offset; 26809066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 26819066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project glMultMatrixx( 26829066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLfixed *)m 26839066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project ); 26849066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 26859066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectexit: 26869066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (m_base) { 26879066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ReleasePrimitiveArrayCritical(m_ref, m_base, 26889066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project JNI_ABORT); 26899066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 26909066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 26919066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 26929066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glMultMatrixx ( const GLfixed *m ) */ 26939066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 26949066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glMultMatrixx__Ljava_nio_IntBuffer_2 26959066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jobject m_buf) { 26969066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project jarray _array = (jarray) 0; 26979066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project jint _remaining; 26989066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project GLfixed *m = (GLfixed *) 0; 26999066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 27009066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project m = (GLfixed *)getPointer(_env, m_buf, &_array, &_remaining); 27019066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project glMultMatrixx( 27029066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLfixed *)m 27039066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project ); 27049066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (_array) { 27059066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project releasePointer(_env, _array, m, JNI_FALSE); 27069066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 27079066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 27089066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 27099066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glMultiTexCoord4f ( GLenum target, GLfloat s, GLfloat t, GLfloat r, GLfloat q ) */ 27109066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 27119066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glMultiTexCoord4f__IFFFF 27129066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jint target, jfloat s, jfloat t, jfloat r, jfloat q) { 27139066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project glMultiTexCoord4f( 27149066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLenum)target, 27159066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLfloat)s, 27169066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLfloat)t, 27179066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLfloat)r, 27189066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLfloat)q 27199066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project ); 27209066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 27219066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 27229066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glMultiTexCoord4x ( GLenum target, GLfixed s, GLfixed t, GLfixed r, GLfixed q ) */ 27239066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 27249066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glMultiTexCoord4x__IIIII 27259066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jint target, jint s, jint t, jint r, jint q) { 27269066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project glMultiTexCoord4x( 27279066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLenum)target, 27289066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLfixed)s, 27299066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLfixed)t, 27309066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLfixed)r, 27319066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLfixed)q 27329066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project ); 27339066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 27349066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 27359066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glNormal3f ( GLfloat nx, GLfloat ny, GLfloat nz ) */ 27369066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 27379066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glNormal3f__FFF 27389066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jfloat nx, jfloat ny, jfloat nz) { 27399066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project glNormal3f( 27409066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLfloat)nx, 27419066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLfloat)ny, 27429066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLfloat)nz 27439066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project ); 27449066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 27459066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 27469066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glNormal3x ( GLfixed nx, GLfixed ny, GLfixed nz ) */ 27479066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 27489066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glNormal3x__III 27499066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jint nx, jint ny, jint nz) { 27509066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project glNormal3x( 27519066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLfixed)nx, 27529066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLfixed)ny, 27539066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLfixed)nz 27549066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project ); 27559066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 27569066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 27579066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glNormalPointer ( GLenum type, GLsizei stride, const GLvoid *pointer ) */ 27589066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 27599066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glNormalPointerBounds__IILjava_nio_Buffer_2I 27609066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jint type, jint stride, jobject pointer_buf, jint remaining) { 27619066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project jarray _array = (jarray) 0; 27629066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project jint _remaining; 27639066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project GLvoid *pointer = (GLvoid *) 0; 27649066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 27659066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project pointer = (GLvoid *)getPointer(_env, pointer_buf, &_array, &_remaining); 27669066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project glNormalPointerBounds( 27679066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLenum)type, 27689066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLsizei)stride, 27699066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLvoid *)pointer, 27709066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLsizei)remaining 27719066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project ); 27729066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (_array) { 27739066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project releasePointer(_env, _array, pointer, JNI_FALSE); 27749066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 27759066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 27769066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 27779066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glOrthof ( GLfloat left, GLfloat right, GLfloat bottom, GLfloat top, GLfloat zNear, GLfloat zFar ) */ 27789066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 27799066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glOrthof__FFFFFF 27809066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jfloat left, jfloat right, jfloat bottom, jfloat top, jfloat zNear, jfloat zFar) { 27819066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project glOrthof( 27829066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLfloat)left, 27839066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLfloat)right, 27849066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLfloat)bottom, 27859066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLfloat)top, 27869066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLfloat)zNear, 27879066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLfloat)zFar 27889066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project ); 27899066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 27909066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 27919066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glOrthox ( GLfixed left, GLfixed right, GLfixed bottom, GLfixed top, GLfixed zNear, GLfixed zFar ) */ 27929066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 27939066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glOrthox__IIIIII 27949066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jint left, jint right, jint bottom, jint top, jint zNear, jint zFar) { 27959066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project glOrthox( 27969066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLfixed)left, 27979066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLfixed)right, 27989066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLfixed)bottom, 27999066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLfixed)top, 28009066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLfixed)zNear, 28019066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLfixed)zFar 28029066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project ); 28039066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 28049066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 28059066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glPixelStorei ( GLenum pname, GLint param ) */ 28069066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 28079066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glPixelStorei__II 28089066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jint pname, jint param) { 28099066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project glPixelStorei( 28109066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLenum)pname, 28119066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLint)param 28129066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project ); 28139066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 28149066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 28159066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glPointSize ( GLfloat size ) */ 28169066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 28179066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glPointSize__F 28189066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jfloat size) { 28199066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project glPointSize( 28209066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLfloat)size 28219066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project ); 28229066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 28239066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 28249066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glPointSizex ( GLfixed size ) */ 28259066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 28269066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glPointSizex__I 28279066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jint size) { 28289066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project glPointSizex( 28299066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLfixed)size 28309066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project ); 28319066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 28329066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 28339066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glPolygonOffset ( GLfloat factor, GLfloat units ) */ 28349066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 28359066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glPolygonOffset__FF 28369066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jfloat factor, jfloat units) { 28379066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project glPolygonOffset( 28389066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLfloat)factor, 28399066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLfloat)units 28409066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project ); 28419066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 28429066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 28439066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glPolygonOffsetx ( GLfixed factor, GLfixed units ) */ 28449066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 28459066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glPolygonOffsetx__II 28469066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jint factor, jint units) { 28479066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project glPolygonOffsetx( 28489066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLfixed)factor, 28499066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLfixed)units 28509066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project ); 28519066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 28529066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 28539066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glPopMatrix ( void ) */ 28549066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 28559066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glPopMatrix__ 28569066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this) { 28579066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project glPopMatrix(); 28589066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 28599066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 28609066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glPushMatrix ( void ) */ 28619066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 28629066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glPushMatrix__ 28639066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this) { 28649066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project glPushMatrix(); 28659066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 28669066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 28679066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glReadPixels ( GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, GLvoid *pixels ) */ 28689066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 28699066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glReadPixels__IIIIIILjava_nio_Buffer_2 28709066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jint x, jint y, jint width, jint height, jint format, jint type, jobject pixels_buf) { 28719066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project jint _exception = 0; 28729066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project jarray _array = (jarray) 0; 28739066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project jint _remaining; 28749066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project GLvoid *pixels = (GLvoid *) 0; 28759066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 28769066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project pixels = (GLvoid *)getPointer(_env, pixels_buf, &_array, &_remaining); 28779066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project glReadPixels( 28789066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLint)x, 28799066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLint)y, 28809066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLsizei)width, 28819066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLsizei)height, 28829066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLenum)format, 28839066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLenum)type, 28849066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLvoid *)pixels 28859066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project ); 28869066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (_array) { 28879066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project releasePointer(_env, _array, pixels, _exception ? JNI_FALSE : JNI_TRUE); 28889066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 28899066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 28909066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 28919066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glRotatef ( GLfloat angle, GLfloat x, GLfloat y, GLfloat z ) */ 28929066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 28939066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glRotatef__FFFF 28949066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jfloat angle, jfloat x, jfloat y, jfloat z) { 28959066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project glRotatef( 28969066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLfloat)angle, 28979066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLfloat)x, 28989066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLfloat)y, 28999066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLfloat)z 29009066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project ); 29019066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 29029066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 29039066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glRotatex ( GLfixed angle, GLfixed x, GLfixed y, GLfixed z ) */ 29049066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 29059066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glRotatex__IIII 29069066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jint angle, jint x, jint y, jint z) { 29079066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project glRotatex( 29089066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLfixed)angle, 29099066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLfixed)x, 29109066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLfixed)y, 29119066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLfixed)z 29129066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project ); 29139066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 29149066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 29159066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glSampleCoverage ( GLclampf value, GLboolean invert ) */ 29169066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 29179066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glSampleCoverage__FZ 29189066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jfloat value, jboolean invert) { 29199066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project glSampleCoverage( 29209066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLclampf)value, 29219066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLboolean)invert 29229066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project ); 29239066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 29249066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 29259066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glSampleCoveragex ( GLclampx value, GLboolean invert ) */ 29269066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 29279066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glSampleCoveragex__IZ 29289066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jint value, jboolean invert) { 29299066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project glSampleCoveragex( 29309066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLclampx)value, 29319066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLboolean)invert 29329066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project ); 29339066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 29349066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 29359066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glScalef ( GLfloat x, GLfloat y, GLfloat z ) */ 29369066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 29379066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glScalef__FFF 29389066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jfloat x, jfloat y, jfloat z) { 29399066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project glScalef( 29409066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLfloat)x, 29419066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLfloat)y, 29429066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLfloat)z 29439066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project ); 29449066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 29459066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 29469066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glScalex ( GLfixed x, GLfixed y, GLfixed z ) */ 29479066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 29489066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glScalex__III 29499066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jint x, jint y, jint z) { 29509066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project glScalex( 29519066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLfixed)x, 29529066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLfixed)y, 29539066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLfixed)z 29549066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project ); 29559066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 29569066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 29579066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glScissor ( GLint x, GLint y, GLsizei width, GLsizei height ) */ 29589066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 29599066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glScissor__IIII 29609066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jint x, jint y, jint width, jint height) { 29619066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project glScissor( 29629066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLint)x, 29639066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLint)y, 29649066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLsizei)width, 29659066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLsizei)height 29669066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project ); 29679066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 29689066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 29699066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glShadeModel ( GLenum mode ) */ 29709066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 29719066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glShadeModel__I 29729066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jint mode) { 29739066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project glShadeModel( 29749066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLenum)mode 29759066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project ); 29769066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 29779066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 29789066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glStencilFunc ( GLenum func, GLint ref, GLuint mask ) */ 29799066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 29809066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glStencilFunc__III 29819066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jint func, jint ref, jint mask) { 29829066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project glStencilFunc( 29839066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLenum)func, 29849066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLint)ref, 29859066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLuint)mask 29869066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project ); 29879066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 29889066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 29899066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glStencilMask ( GLuint mask ) */ 29909066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 29919066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glStencilMask__I 29929066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jint mask) { 29939066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project glStencilMask( 29949066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLuint)mask 29959066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project ); 29969066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 29979066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 29989066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glStencilOp ( GLenum fail, GLenum zfail, GLenum zpass ) */ 29999066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 30009066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glStencilOp__III 30019066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jint fail, jint zfail, jint zpass) { 30029066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project glStencilOp( 30039066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLenum)fail, 30049066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLenum)zfail, 30059066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLenum)zpass 30069066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project ); 30079066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 30089066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 30099066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glTexCoordPointer ( GLint size, GLenum type, GLsizei stride, const GLvoid *pointer ) */ 30109066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 30119066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glTexCoordPointerBounds__IIILjava_nio_Buffer_2I 30129066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jint size, jint type, jint stride, jobject pointer_buf, jint remaining) { 30139066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project jarray _array = (jarray) 0; 30149066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project jint _remaining; 30159066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project GLvoid *pointer = (GLvoid *) 0; 30169066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 30179066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project pointer = (GLvoid *)getPointer(_env, pointer_buf, &_array, &_remaining); 30189066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project glTexCoordPointerBounds( 30199066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLint)size, 30209066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLenum)type, 30219066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLsizei)stride, 30229066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLvoid *)pointer, 30239066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLsizei)remaining 30249066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project ); 30259066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (_array) { 30269066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project releasePointer(_env, _array, pointer, JNI_FALSE); 30279066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 30289066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 30299066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 30309066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glTexEnvf ( GLenum target, GLenum pname, GLfloat param ) */ 30319066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 30329066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glTexEnvf__IIF 30339066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jint target, jint pname, jfloat param) { 30349066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project glTexEnvf( 30359066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLenum)target, 30369066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLenum)pname, 30379066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLfloat)param 30389066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project ); 30399066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 30409066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 30419066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glTexEnvfv ( GLenum target, GLenum pname, const GLfloat *params ) */ 30429066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 30439066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glTexEnvfv__II_3FI 30449066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jint target, jint pname, jfloatArray params_ref, jint offset) { 30459066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project GLfloat *params_base = (GLfloat *) 0; 30469066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project jint _remaining; 30479066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project GLfloat *params = (GLfloat *) 0; 30489066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 30499066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (!params_ref) { 30509066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ThrowNew(IAEClass, "params == null"); 30519066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project goto exit; 30529066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 30539066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (offset < 0) { 30549066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ThrowNew(IAEClass, "offset < 0"); 30559066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project goto exit; 30569066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 30579066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _remaining = _env->GetArrayLength(params_ref) - offset; 30589066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project int _needed; 30599066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project switch (pname) { 30609066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_TEXTURE_ENV_MODE) 30619066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_TEXTURE_ENV_MODE: 30629066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_TEXTURE_ENV_MODE) 30639066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_COMBINE_RGB) 30649066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_COMBINE_RGB: 30659066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_COMBINE_RGB) 30669066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_COMBINE_ALPHA) 30679066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_COMBINE_ALPHA: 30689066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_COMBINE_ALPHA) 30699066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _needed = 1; 30709066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project break; 30719066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_TEXTURE_ENV_COLOR) 30729066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_TEXTURE_ENV_COLOR: 30739066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_TEXTURE_ENV_COLOR) 30749066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _needed = 4; 30759066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project break; 30769066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project default: 30779066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _needed = 0; 30789066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project break; 30799066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 30809066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (_remaining < _needed) { 30819066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ThrowNew(IAEClass, "length - offset < needed"); 30829066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project goto exit; 30839066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 30849066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project params_base = (GLfloat *) 30859066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->GetPrimitiveArrayCritical(params_ref, (jboolean *)0); 30869066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project params = params_base + offset; 30879066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 30889066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project glTexEnvfv( 30899066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLenum)target, 30909066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLenum)pname, 30919066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLfloat *)params 30929066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project ); 30939066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 30949066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectexit: 30959066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (params_base) { 30969066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ReleasePrimitiveArrayCritical(params_ref, params_base, 30979066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project JNI_ABORT); 30989066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 30999066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 31009066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 31019066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glTexEnvfv ( GLenum target, GLenum pname, const GLfloat *params ) */ 31029066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 31039066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glTexEnvfv__IILjava_nio_FloatBuffer_2 31049066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jint target, jint pname, jobject params_buf) { 31059066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project jarray _array = (jarray) 0; 31069066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project jint _remaining; 31079066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project GLfloat *params = (GLfloat *) 0; 31089066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 31099066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project params = (GLfloat *)getPointer(_env, params_buf, &_array, &_remaining); 31109066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project int _needed; 31119066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project switch (pname) { 31129066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_TEXTURE_ENV_MODE) 31139066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_TEXTURE_ENV_MODE: 31149066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_TEXTURE_ENV_MODE) 31159066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_COMBINE_RGB) 31169066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_COMBINE_RGB: 31179066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_COMBINE_RGB) 31189066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_COMBINE_ALPHA) 31199066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_COMBINE_ALPHA: 31209066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_COMBINE_ALPHA) 31219066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _needed = 1; 31229066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project break; 31239066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_TEXTURE_ENV_COLOR) 31249066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_TEXTURE_ENV_COLOR: 31259066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_TEXTURE_ENV_COLOR) 31269066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _needed = 4; 31279066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project break; 31289066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project default: 31299066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _needed = 0; 31309066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project break; 31319066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 31329066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (_remaining < _needed) { 31339066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ThrowNew(IAEClass, "remaining() < needed"); 31349066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project goto exit; 31359066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 31369066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project glTexEnvfv( 31379066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLenum)target, 31389066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLenum)pname, 31399066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLfloat *)params 31409066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project ); 31419066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 31429066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectexit: 31439066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (_array) { 31449066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project releasePointer(_env, _array, params, JNI_FALSE); 31459066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 31469066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 31479066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 31489066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glTexEnvx ( GLenum target, GLenum pname, GLfixed param ) */ 31499066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 31509066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glTexEnvx__III 31519066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jint target, jint pname, jint param) { 31529066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project glTexEnvx( 31539066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLenum)target, 31549066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLenum)pname, 31559066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLfixed)param 31569066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project ); 31579066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 31589066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 31599066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glTexEnvxv ( GLenum target, GLenum pname, const GLfixed *params ) */ 31609066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 31619066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glTexEnvxv__II_3II 31629066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jint target, jint pname, jintArray params_ref, jint offset) { 31639066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project GLfixed *params_base = (GLfixed *) 0; 31649066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project jint _remaining; 31659066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project GLfixed *params = (GLfixed *) 0; 31669066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 31679066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (!params_ref) { 31689066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ThrowNew(IAEClass, "params == null"); 31699066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project goto exit; 31709066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 31719066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (offset < 0) { 31729066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ThrowNew(IAEClass, "offset < 0"); 31739066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project goto exit; 31749066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 31759066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _remaining = _env->GetArrayLength(params_ref) - offset; 31769066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project int _needed; 31779066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project switch (pname) { 31789066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_TEXTURE_ENV_MODE) 31799066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_TEXTURE_ENV_MODE: 31809066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_TEXTURE_ENV_MODE) 31819066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_COMBINE_RGB) 31829066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_COMBINE_RGB: 31839066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_COMBINE_RGB) 31849066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_COMBINE_ALPHA) 31859066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_COMBINE_ALPHA: 31869066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_COMBINE_ALPHA) 31879066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _needed = 1; 31889066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project break; 31899066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_TEXTURE_ENV_COLOR) 31909066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_TEXTURE_ENV_COLOR: 31919066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_TEXTURE_ENV_COLOR) 31929066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _needed = 4; 31939066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project break; 31949066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project default: 31959066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _needed = 0; 31969066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project break; 31979066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 31989066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (_remaining < _needed) { 31999066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ThrowNew(IAEClass, "length - offset < needed"); 32009066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project goto exit; 32019066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 32029066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project params_base = (GLfixed *) 32039066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->GetPrimitiveArrayCritical(params_ref, (jboolean *)0); 32049066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project params = params_base + offset; 32059066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 32069066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project glTexEnvxv( 32079066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLenum)target, 32089066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLenum)pname, 32099066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLfixed *)params 32109066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project ); 32119066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 32129066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectexit: 32139066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (params_base) { 32149066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ReleasePrimitiveArrayCritical(params_ref, params_base, 32159066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project JNI_ABORT); 32169066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 32179066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 32189066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 32199066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glTexEnvxv ( GLenum target, GLenum pname, const GLfixed *params ) */ 32209066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 32219066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glTexEnvxv__IILjava_nio_IntBuffer_2 32229066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jint target, jint pname, jobject params_buf) { 32239066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project jarray _array = (jarray) 0; 32249066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project jint _remaining; 32259066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project GLfixed *params = (GLfixed *) 0; 32269066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 32279066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project params = (GLfixed *)getPointer(_env, params_buf, &_array, &_remaining); 32289066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project int _needed; 32299066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project switch (pname) { 32309066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_TEXTURE_ENV_MODE) 32319066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_TEXTURE_ENV_MODE: 32329066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_TEXTURE_ENV_MODE) 32339066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_COMBINE_RGB) 32349066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_COMBINE_RGB: 32359066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_COMBINE_RGB) 32369066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_COMBINE_ALPHA) 32379066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_COMBINE_ALPHA: 32389066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_COMBINE_ALPHA) 32399066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _needed = 1; 32409066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project break; 32419066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_TEXTURE_ENV_COLOR) 32429066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_TEXTURE_ENV_COLOR: 32439066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_TEXTURE_ENV_COLOR) 32449066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _needed = 4; 32459066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project break; 32469066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project default: 32479066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _needed = 0; 32489066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project break; 32499066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 32509066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (_remaining < _needed) { 32519066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ThrowNew(IAEClass, "remaining() < needed"); 32529066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project goto exit; 32539066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 32549066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project glTexEnvxv( 32559066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLenum)target, 32569066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLenum)pname, 32579066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLfixed *)params 32589066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project ); 32599066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 32609066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectexit: 32619066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (_array) { 32629066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project releasePointer(_env, _array, params, JNI_FALSE); 32639066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 32649066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 32659066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 32669066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glTexImage2D ( GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLint border, GLenum format, GLenum type, const GLvoid *pixels ) */ 32679066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 32689066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glTexImage2D__IIIIIIIILjava_nio_Buffer_2 32699066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jint target, jint level, jint internalformat, jint width, jint height, jint border, jint format, jint type, jobject pixels_buf) { 32709066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project jarray _array = (jarray) 0; 32719066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project jint _remaining; 32729066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project GLvoid *pixels = (GLvoid *) 0; 32739066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 32749066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (pixels_buf) { 32759066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project pixels = (GLvoid *)getPointer(_env, pixels_buf, &_array, &_remaining); 32769066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 32779066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project glTexImage2D( 32789066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLenum)target, 32799066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLint)level, 32809066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLint)internalformat, 32819066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLsizei)width, 32829066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLsizei)height, 32839066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLint)border, 32849066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLenum)format, 32859066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLenum)type, 32869066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLvoid *)pixels 32879066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project ); 32889066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (_array) { 32899066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project releasePointer(_env, _array, pixels, JNI_FALSE); 32909066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 32919066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 32929066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 32939066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glTexParameterf ( GLenum target, GLenum pname, GLfloat param ) */ 32949066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 32959066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glTexParameterf__IIF 32969066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jint target, jint pname, jfloat param) { 32979066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project glTexParameterf( 32989066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLenum)target, 32999066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLenum)pname, 33009066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLfloat)param 33019066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project ); 33029066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 33039066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 33049066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glTexParameterx ( GLenum target, GLenum pname, GLfixed param ) */ 33059066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 33069066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glTexParameterx__III 33079066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jint target, jint pname, jint param) { 33089066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project glTexParameterx( 33099066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLenum)target, 33109066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLenum)pname, 33119066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLfixed)param 33129066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project ); 33139066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 33149066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 33159066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glTexSubImage2D ( GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, const GLvoid *pixels ) */ 33169066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 33179066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glTexSubImage2D__IIIIIIIILjava_nio_Buffer_2 33189066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jint target, jint level, jint xoffset, jint yoffset, jint width, jint height, jint format, jint type, jobject pixels_buf) { 33199066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project jarray _array = (jarray) 0; 33209066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project jint _remaining; 33219066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project GLvoid *pixels = (GLvoid *) 0; 33229066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 33239066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (pixels_buf) { 33249066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project pixels = (GLvoid *)getPointer(_env, pixels_buf, &_array, &_remaining); 33259066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 33269066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project glTexSubImage2D( 33279066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLenum)target, 33289066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLint)level, 33299066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLint)xoffset, 33309066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLint)yoffset, 33319066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLsizei)width, 33329066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLsizei)height, 33339066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLenum)format, 33349066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLenum)type, 33359066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLvoid *)pixels 33369066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project ); 33379066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (_array) { 33389066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project releasePointer(_env, _array, pixels, JNI_FALSE); 33399066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 33409066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 33419066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 33429066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glTranslatef ( GLfloat x, GLfloat y, GLfloat z ) */ 33439066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 33449066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glTranslatef__FFF 33459066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jfloat x, jfloat y, jfloat z) { 33469066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project glTranslatef( 33479066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLfloat)x, 33489066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLfloat)y, 33499066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLfloat)z 33509066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project ); 33519066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 33529066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 33539066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glTranslatex ( GLfixed x, GLfixed y, GLfixed z ) */ 33549066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 33559066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glTranslatex__III 33569066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jint x, jint y, jint z) { 33579066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project glTranslatex( 33589066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLfixed)x, 33599066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLfixed)y, 33609066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLfixed)z 33619066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project ); 33629066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 33639066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 33649066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glVertexPointer ( GLint size, GLenum type, GLsizei stride, const GLvoid *pointer ) */ 33659066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 33669066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glVertexPointerBounds__IIILjava_nio_Buffer_2I 33679066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jint size, jint type, jint stride, jobject pointer_buf, jint remaining) { 33689066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project jarray _array = (jarray) 0; 33699066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project jint _remaining; 33709066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project GLvoid *pointer = (GLvoid *) 0; 33719066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 33729066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project pointer = (GLvoid *)getPointer(_env, pointer_buf, &_array, &_remaining); 33739066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project glVertexPointerBounds( 33749066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLint)size, 33759066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLenum)type, 33769066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLsizei)stride, 33779066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLvoid *)pointer, 33789066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLsizei)remaining 33799066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project ); 33809066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (_array) { 33819066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project releasePointer(_env, _array, pointer, JNI_FALSE); 33829066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 33839066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 33849066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 33859066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glViewport ( GLint x, GLint y, GLsizei width, GLsizei height ) */ 33869066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 33879066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glViewport__IIII 33889066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jint x, jint y, jint width, jint height) { 33899066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project glViewport( 33909066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLint)x, 33919066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLint)y, 33929066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLsizei)width, 33939066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLsizei)height 33949066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project ); 33959066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 33969066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 33979066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* GLbitfield glQueryMatrixxOES ( GLfixed *mantissa, GLint *exponent ) */ 33989066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic jint 33999066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glQueryMatrixxOES___3II_3II 34009066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jintArray mantissa_ref, jint mantissaOffset, jintArray exponent_ref, jint exponentOffset) { 34019066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project jint _exception = 0; 34029066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project GLbitfield _returnValue = -1; 34039066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project GLfixed *mantissa_base = (GLfixed *) 0; 34049066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project jint _mantissaRemaining; 34059066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project GLfixed *mantissa = (GLfixed *) 0; 34069066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project GLint *exponent_base = (GLint *) 0; 34079066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project jint _exponentRemaining; 34089066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project GLint *exponent = (GLint *) 0; 34099066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 34109066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (!mantissa_ref) { 34119066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _exception = 1; 34129066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ThrowNew(IAEClass, "mantissa == null"); 34139066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project goto exit; 34149066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 34159066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (mantissaOffset < 0) { 34169066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _exception = 1; 34179066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ThrowNew(IAEClass, "mantissaOffset < 0"); 34189066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project goto exit; 34199066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 34209066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _mantissaRemaining = _env->GetArrayLength(mantissa_ref) - mantissaOffset; 34219066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (_mantissaRemaining < 16) { 34229066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _exception = 1; 34239066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ThrowNew(IAEClass, "length - mantissaOffset < 16"); 34249066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project goto exit; 34259066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 34269066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project mantissa_base = (GLfixed *) 34279066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->GetPrimitiveArrayCritical(mantissa_ref, (jboolean *)0); 34289066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project mantissa = mantissa_base + mantissaOffset; 34299066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 34309066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (!exponent_ref) { 34319066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _exception = 1; 34329066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ThrowNew(IAEClass, "exponent == null"); 34339066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project goto exit; 34349066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 34359066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (exponentOffset < 0) { 34369066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _exception = 1; 34379066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ThrowNew(IAEClass, "exponentOffset < 0"); 34389066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project goto exit; 34399066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 34409066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _exponentRemaining = _env->GetArrayLength(exponent_ref) - exponentOffset; 34419066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (_exponentRemaining < 16) { 34429066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _exception = 1; 34439066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ThrowNew(IAEClass, "length - exponentOffset < 16"); 34449066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project goto exit; 34459066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 34469066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project exponent_base = (GLint *) 34479066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->GetPrimitiveArrayCritical(exponent_ref, (jboolean *)0); 34489066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project exponent = exponent_base + exponentOffset; 34499066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 34509066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _returnValue = glQueryMatrixxOES( 34519066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLfixed *)mantissa, 34529066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLint *)exponent 34539066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project ); 34549066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 34559066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectexit: 34569066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (exponent_base) { 34579066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ReleasePrimitiveArrayCritical(exponent_ref, exponent_base, 34589066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _exception ? JNI_ABORT: 0); 34599066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 34609066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (mantissa_base) { 34619066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ReleasePrimitiveArrayCritical(mantissa_ref, mantissa_base, 34629066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _exception ? JNI_ABORT: 0); 34639066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 34649066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project return _returnValue; 34659066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 34669066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 34679066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* GLbitfield glQueryMatrixxOES ( GLfixed *mantissa, GLint *exponent ) */ 34689066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic jint 34699066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glQueryMatrixxOES__Ljava_nio_IntBuffer_2Ljava_nio_IntBuffer_2 34709066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jobject mantissa_buf, jobject exponent_buf) { 34719066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project jint _exception = 0; 34729066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project jarray _mantissaArray = (jarray) 0; 34739066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project jarray _exponentArray = (jarray) 0; 34749066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project GLbitfield _returnValue = -1; 34759066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project jint _mantissaRemaining; 34769066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project GLfixed *mantissa = (GLfixed *) 0; 34779066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project jint _exponentRemaining; 34789066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project GLint *exponent = (GLint *) 0; 34799066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 34809066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project mantissa = (GLfixed *)getPointer(_env, mantissa_buf, &_mantissaArray, &_mantissaRemaining); 34819066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (_mantissaRemaining < 16) { 34829066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _exception = 1; 34839066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ThrowNew(IAEClass, "remaining() < 16"); 34849066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project goto exit; 34859066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 34869066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project exponent = (GLint *)getPointer(_env, exponent_buf, &_exponentArray, &_exponentRemaining); 34879066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (_exponentRemaining < 16) { 34889066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _exception = 1; 34899066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ThrowNew(IAEClass, "remaining() < 16"); 34909066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project goto exit; 34919066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 34929066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _returnValue = glQueryMatrixxOES( 34939066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLfixed *)mantissa, 34949066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLint *)exponent 34959066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project ); 34969066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 34979066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectexit: 34989066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (_mantissaArray) { 34999066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project releasePointer(_env, _mantissaArray, exponent, _exception ? JNI_FALSE : JNI_TRUE); 35009066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 35019066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (_exponentArray) { 35029066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project releasePointer(_env, _exponentArray, mantissa, _exception ? JNI_FALSE : JNI_TRUE); 35039066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 35049066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project return _returnValue; 35059066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 35069066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 35079066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glBindBuffer ( GLenum target, GLuint buffer ) */ 35089066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 35099066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glBindBuffer__II 35109066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jint target, jint buffer) { 35119066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project glBindBuffer( 35129066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLenum)target, 35139066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLuint)buffer 35149066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project ); 35159066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 35169066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 35179066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glBufferData ( GLenum target, GLsizeiptr size, const GLvoid *data, GLenum usage ) */ 35189066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 35199066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glBufferData__IILjava_nio_Buffer_2I 35209066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jint target, jint size, jobject data_buf, jint usage) { 35219066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project jarray _array = (jarray) 0; 35229066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project jint _remaining; 35239066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project GLvoid *data = (GLvoid *) 0; 35249066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 35259066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (data_buf) { 35269066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project data = (GLvoid *)getPointer(_env, data_buf, &_array, &_remaining); 35279066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 35289066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project glBufferData( 35299066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLenum)target, 35309066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLsizeiptr)size, 35319066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLvoid *)data, 35329066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLenum)usage 35339066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project ); 35349066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (_array) { 35359066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project releasePointer(_env, _array, data, JNI_FALSE); 35369066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 35379066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 35389066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 35399066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glBufferSubData ( GLenum target, GLintptr offset, GLsizeiptr size, const GLvoid *data ) */ 35409066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 35419066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glBufferSubData__IIILjava_nio_Buffer_2 35429066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jint target, jint offset, jint size, jobject data_buf) { 35439066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project jarray _array = (jarray) 0; 35449066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project jint _remaining; 35459066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project GLvoid *data = (GLvoid *) 0; 35469066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 35479066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project data = (GLvoid *)getPointer(_env, data_buf, &_array, &_remaining); 35489066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project glBufferSubData( 35499066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLenum)target, 35509066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLintptr)offset, 35519066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLsizeiptr)size, 35529066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLvoid *)data 35539066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project ); 35549066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (_array) { 35559066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project releasePointer(_env, _array, data, JNI_FALSE); 35569066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 35579066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 35589066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 35599066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glClipPlanef ( GLenum plane, const GLfloat *equation ) */ 35609066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 35619066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glClipPlanef__I_3FI 35629066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jint plane, jfloatArray equation_ref, jint offset) { 35639066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project GLfloat *equation_base = (GLfloat *) 0; 35649066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project jint _remaining; 35659066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project GLfloat *equation = (GLfloat *) 0; 35669066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 35679066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (!equation_ref) { 35689066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ThrowNew(IAEClass, "equation == null"); 35699066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project goto exit; 35709066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 35719066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (offset < 0) { 35729066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ThrowNew(IAEClass, "offset < 0"); 35739066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project goto exit; 35749066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 35759066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _remaining = _env->GetArrayLength(equation_ref) - offset; 35769066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (_remaining < 4) { 35779066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ThrowNew(IAEClass, "length - offset < 4"); 35789066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project goto exit; 35799066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 35809066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project equation_base = (GLfloat *) 35819066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->GetPrimitiveArrayCritical(equation_ref, (jboolean *)0); 35829066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project equation = equation_base + offset; 35839066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 35849066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project glClipPlanef( 35859066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLenum)plane, 35869066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLfloat *)equation 35879066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project ); 35889066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 35899066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectexit: 35909066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (equation_base) { 35919066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ReleasePrimitiveArrayCritical(equation_ref, equation_base, 35929066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project JNI_ABORT); 35939066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 35949066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 35959066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 35969066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glClipPlanef ( GLenum plane, const GLfloat *equation ) */ 35979066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 35989066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glClipPlanef__ILjava_nio_FloatBuffer_2 35999066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jint plane, jobject equation_buf) { 36009066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project jarray _array = (jarray) 0; 36019066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project jint _remaining; 36029066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project GLfloat *equation = (GLfloat *) 0; 36039066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 36049066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project equation = (GLfloat *)getPointer(_env, equation_buf, &_array, &_remaining); 36059066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (_remaining < 4) { 36069066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ThrowNew(IAEClass, "remaining() < 4"); 36079066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project goto exit; 36089066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 36099066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project glClipPlanef( 36109066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLenum)plane, 36119066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLfloat *)equation 36129066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project ); 36139066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 36149066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectexit: 36159066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (_array) { 36169066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project releasePointer(_env, _array, equation, JNI_FALSE); 36179066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 36189066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 36199066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 36209066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glClipPlanex ( GLenum plane, const GLfixed *equation ) */ 36219066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 36229066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glClipPlanex__I_3II 36239066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jint plane, jintArray equation_ref, jint offset) { 36249066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project GLfixed *equation_base = (GLfixed *) 0; 36259066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project jint _remaining; 36269066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project GLfixed *equation = (GLfixed *) 0; 36279066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 36289066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (!equation_ref) { 36299066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ThrowNew(IAEClass, "equation == null"); 36309066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project goto exit; 36319066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 36329066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (offset < 0) { 36339066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ThrowNew(IAEClass, "offset < 0"); 36349066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project goto exit; 36359066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 36369066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _remaining = _env->GetArrayLength(equation_ref) - offset; 36379066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (_remaining < 4) { 36389066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ThrowNew(IAEClass, "length - offset < 4"); 36399066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project goto exit; 36409066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 36419066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project equation_base = (GLfixed *) 36429066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->GetPrimitiveArrayCritical(equation_ref, (jboolean *)0); 36439066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project equation = equation_base + offset; 36449066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 36459066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project glClipPlanex( 36469066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLenum)plane, 36479066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLfixed *)equation 36489066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project ); 36499066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 36509066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectexit: 36519066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (equation_base) { 36529066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ReleasePrimitiveArrayCritical(equation_ref, equation_base, 36539066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project JNI_ABORT); 36549066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 36559066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 36569066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 36579066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glClipPlanex ( GLenum plane, const GLfixed *equation ) */ 36589066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 36599066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glClipPlanex__ILjava_nio_IntBuffer_2 36609066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jint plane, jobject equation_buf) { 36619066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project jarray _array = (jarray) 0; 36629066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project jint _remaining; 36639066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project GLfixed *equation = (GLfixed *) 0; 36649066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 36659066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project equation = (GLfixed *)getPointer(_env, equation_buf, &_array, &_remaining); 36669066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (_remaining < 4) { 36679066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ThrowNew(IAEClass, "remaining() < 4"); 36689066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project goto exit; 36699066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 36709066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project glClipPlanex( 36719066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLenum)plane, 36729066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLfixed *)equation 36739066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project ); 36749066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 36759066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectexit: 36769066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (_array) { 36779066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project releasePointer(_env, _array, equation, JNI_FALSE); 36789066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 36799066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 36809066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 36819066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glColor4ub ( GLubyte red, GLubyte green, GLubyte blue, GLubyte alpha ) */ 36829066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 36839066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glColor4ub__BBBB 36849066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jbyte red, jbyte green, jbyte blue, jbyte alpha) { 36859066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project glColor4ub( 36869066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLubyte)red, 36879066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLubyte)green, 36889066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLubyte)blue, 36899066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLubyte)alpha 36909066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project ); 36919066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 36929066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 36939066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glColorPointer ( GLint size, GLenum type, GLsizei stride, GLint offset ) */ 36949066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 36959066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glColorPointer__IIII 36969066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jint size, jint type, jint stride, jint offset) { 36979066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project glColorPointer( 36989066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLint)size, 36999066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLenum)type, 37009066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLsizei)stride, 37019066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (const GLvoid *)offset 37029066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project ); 37039066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 37049066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 37059066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glDeleteBuffers ( GLsizei n, const GLuint *buffers ) */ 37069066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 37079066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glDeleteBuffers__I_3II 37089066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jint n, jintArray buffers_ref, jint offset) { 37099066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project GLuint *buffers_base = (GLuint *) 0; 37109066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project jint _remaining; 37119066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project GLuint *buffers = (GLuint *) 0; 37129066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 37139066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (!buffers_ref) { 37149066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ThrowNew(IAEClass, "buffers == null"); 37159066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project goto exit; 37169066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 37179066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (offset < 0) { 37189066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ThrowNew(IAEClass, "offset < 0"); 37199066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project goto exit; 37209066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 37219066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _remaining = _env->GetArrayLength(buffers_ref) - offset; 37229066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (_remaining < n) { 37239066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ThrowNew(IAEClass, "length - offset < n"); 37249066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project goto exit; 37259066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 37269066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project buffers_base = (GLuint *) 37279066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->GetPrimitiveArrayCritical(buffers_ref, (jboolean *)0); 37289066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project buffers = buffers_base + offset; 37299066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 37309066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project glDeleteBuffers( 37319066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLsizei)n, 37329066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLuint *)buffers 37339066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project ); 37349066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 37359066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectexit: 37369066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (buffers_base) { 37379066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ReleasePrimitiveArrayCritical(buffers_ref, buffers_base, 37389066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project JNI_ABORT); 37399066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 37409066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 37419066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 37429066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glDeleteBuffers ( GLsizei n, const GLuint *buffers ) */ 37439066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 37449066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glDeleteBuffers__ILjava_nio_IntBuffer_2 37459066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jint n, jobject buffers_buf) { 37469066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project jarray _array = (jarray) 0; 37479066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project jint _remaining; 37489066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project GLuint *buffers = (GLuint *) 0; 37499066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 37509066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project buffers = (GLuint *)getPointer(_env, buffers_buf, &_array, &_remaining); 37519066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (_remaining < n) { 37529066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ThrowNew(IAEClass, "remaining() < n"); 37539066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project goto exit; 37549066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 37559066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project glDeleteBuffers( 37569066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLsizei)n, 37579066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLuint *)buffers 37589066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project ); 37599066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 37609066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectexit: 37619066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (_array) { 37629066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project releasePointer(_env, _array, buffers, JNI_FALSE); 37639066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 37649066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 37659066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 37669066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glDrawElements ( GLenum mode, GLsizei count, GLenum type, GLint offset ) */ 37679066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 37689066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glDrawElements__IIII 37699066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jint mode, jint count, jint type, jint offset) { 37709066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project glDrawElements( 37719066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLenum)mode, 37729066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLsizei)count, 37739066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLenum)type, 37749066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (const GLvoid *)offset 37759066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project ); 37769066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 37779066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 37789066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glGenBuffers ( GLsizei n, GLuint *buffers ) */ 37799066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 37809066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glGenBuffers__I_3II 37819066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jint n, jintArray buffers_ref, jint offset) { 37829066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project jint _exception = 0; 37839066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project GLuint *buffers_base = (GLuint *) 0; 37849066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project jint _remaining; 37859066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project GLuint *buffers = (GLuint *) 0; 37869066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 37879066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (!buffers_ref) { 37889066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _exception = 1; 37899066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ThrowNew(IAEClass, "buffers == null"); 37909066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project goto exit; 37919066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 37929066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (offset < 0) { 37939066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _exception = 1; 37949066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ThrowNew(IAEClass, "offset < 0"); 37959066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project goto exit; 37969066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 37979066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _remaining = _env->GetArrayLength(buffers_ref) - offset; 37989066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (_remaining < n) { 37999066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _exception = 1; 38009066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ThrowNew(IAEClass, "length - offset < n"); 38019066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project goto exit; 38029066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 38039066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project buffers_base = (GLuint *) 38049066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->GetPrimitiveArrayCritical(buffers_ref, (jboolean *)0); 38059066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project buffers = buffers_base + offset; 38069066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 38079066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project glGenBuffers( 38089066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLsizei)n, 38099066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLuint *)buffers 38109066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project ); 38119066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 38129066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectexit: 38139066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (buffers_base) { 38149066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ReleasePrimitiveArrayCritical(buffers_ref, buffers_base, 38159066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _exception ? JNI_ABORT: 0); 38169066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 38179066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 38189066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 38199066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glGenBuffers ( GLsizei n, GLuint *buffers ) */ 38209066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 38219066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glGenBuffers__ILjava_nio_IntBuffer_2 38229066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jint n, jobject buffers_buf) { 38239066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project jint _exception = 0; 38249066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project jarray _array = (jarray) 0; 38259066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project jint _remaining; 38269066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project GLuint *buffers = (GLuint *) 0; 38279066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 38289066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project buffers = (GLuint *)getPointer(_env, buffers_buf, &_array, &_remaining); 38299066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (_remaining < n) { 38309066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _exception = 1; 38319066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ThrowNew(IAEClass, "remaining() < n"); 38329066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project goto exit; 38339066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 38349066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project glGenBuffers( 38359066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLsizei)n, 38369066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLuint *)buffers 38379066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project ); 38389066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 38399066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectexit: 38409066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (_array) { 38419066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project releasePointer(_env, _array, buffers, _exception ? JNI_FALSE : JNI_TRUE); 38429066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 38439066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 38449066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 38459066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glGetBooleanv ( GLenum pname, GLboolean *params ) */ 38469066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 38479066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glGetBooleanv__I_3ZI 38489066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jint pname, jbooleanArray params_ref, jint offset) { 38499066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project jint _exception = 0; 38509066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project GLboolean *params_base = (GLboolean *) 0; 38519066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project jint _remaining; 38529066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project GLboolean *params = (GLboolean *) 0; 38539066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 38549066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (!params_ref) { 38559066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _exception = 1; 38569066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ThrowNew(IAEClass, "params == null"); 38579066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project goto exit; 38589066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 38599066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (offset < 0) { 38609066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _exception = 1; 38619066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ThrowNew(IAEClass, "offset < 0"); 38629066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project goto exit; 38639066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 38649066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _remaining = _env->GetArrayLength(params_ref) - offset; 38659066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project params_base = (GLboolean *) 38669066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->GetPrimitiveArrayCritical(params_ref, (jboolean *)0); 38679066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project params = params_base + offset; 38689066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 38699066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project glGetBooleanv( 38709066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLenum)pname, 38719066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLboolean *)params 38729066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project ); 38739066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 38749066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectexit: 38759066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (params_base) { 38769066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ReleasePrimitiveArrayCritical(params_ref, params_base, 38779066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _exception ? JNI_ABORT: 0); 38789066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 38799066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 38809066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 38819066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glGetBooleanv ( GLenum pname, GLboolean *params ) */ 38829066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 38839066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glGetBooleanv__ILjava_nio_IntBuffer_2 38849066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jint pname, jobject params_buf) { 38859066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project jint _exception = 0; 38869066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project jarray _array = (jarray) 0; 38879066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project jint _remaining; 38889066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project GLboolean *params = (GLboolean *) 0; 38899066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 38909066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project params = (GLboolean *)getPointer(_env, params_buf, &_array, &_remaining); 38919066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project glGetBooleanv( 38929066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLenum)pname, 38939066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLboolean *)params 38949066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project ); 38959066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (_array) { 38969066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project releasePointer(_env, _array, params, _exception ? JNI_FALSE : JNI_TRUE); 38979066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 38989066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 38999066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 39009066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glGetBufferParameteriv ( GLenum target, GLenum pname, GLint *params ) */ 39019066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 39029066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glGetBufferParameteriv__II_3II 39039066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jint target, jint pname, jintArray params_ref, jint offset) { 39049066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ThrowNew(UOEClass, 39059066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project "glGetBufferParameteriv"); 39069066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 39079066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 39089066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glGetBufferParameteriv ( GLenum target, GLenum pname, GLint *params ) */ 39099066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 39109066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glGetBufferParameteriv__IILjava_nio_IntBuffer_2 39119066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jint target, jint pname, jobject params_buf) { 39129066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ThrowNew(UOEClass, 39139066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project "glGetBufferParameteriv"); 39149066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 39159066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 39169066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glGetClipPlanef ( GLenum pname, GLfloat *eqn ) */ 39179066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 39189066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glGetClipPlanef__I_3FI 39199066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jint pname, jfloatArray eqn_ref, jint offset) { 39209066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project jint _exception = 0; 39219066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project GLfloat *eqn_base = (GLfloat *) 0; 39229066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project jint _remaining; 39239066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project GLfloat *eqn = (GLfloat *) 0; 39249066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 39259066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (!eqn_ref) { 39269066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _exception = 1; 39279066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ThrowNew(IAEClass, "eqn == null"); 39289066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project goto exit; 39299066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 39309066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (offset < 0) { 39319066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _exception = 1; 39329066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ThrowNew(IAEClass, "offset < 0"); 39339066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project goto exit; 39349066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 39359066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _remaining = _env->GetArrayLength(eqn_ref) - offset; 39369066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project eqn_base = (GLfloat *) 39379066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->GetPrimitiveArrayCritical(eqn_ref, (jboolean *)0); 39389066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project eqn = eqn_base + offset; 39399066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 39409066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project glGetClipPlanef( 39419066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLenum)pname, 39429066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLfloat *)eqn 39439066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project ); 39449066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 39459066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectexit: 39469066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (eqn_base) { 39479066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ReleasePrimitiveArrayCritical(eqn_ref, eqn_base, 39489066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _exception ? JNI_ABORT: 0); 39499066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 39509066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 39519066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 39529066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glGetClipPlanef ( GLenum pname, GLfloat *eqn ) */ 39539066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 39549066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glGetClipPlanef__ILjava_nio_FloatBuffer_2 39559066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jint pname, jobject eqn_buf) { 39569066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project jint _exception = 0; 39579066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project jarray _array = (jarray) 0; 39589066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project jint _remaining; 39599066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project GLfloat *eqn = (GLfloat *) 0; 39609066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 39619066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project eqn = (GLfloat *)getPointer(_env, eqn_buf, &_array, &_remaining); 39629066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project glGetClipPlanef( 39639066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLenum)pname, 39649066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLfloat *)eqn 39659066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project ); 39669066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (_array) { 39679066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project releasePointer(_env, _array, eqn, _exception ? JNI_FALSE : JNI_TRUE); 39689066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 39699066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 39709066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 39719066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glGetClipPlanex ( GLenum pname, GLfixed *eqn ) */ 39729066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 39739066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glGetClipPlanex__I_3II 39749066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jint pname, jintArray eqn_ref, jint offset) { 39759066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project jint _exception = 0; 39769066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project GLfixed *eqn_base = (GLfixed *) 0; 39779066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project jint _remaining; 39789066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project GLfixed *eqn = (GLfixed *) 0; 39799066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 39809066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (!eqn_ref) { 39819066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _exception = 1; 39829066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ThrowNew(IAEClass, "eqn == null"); 39839066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project goto exit; 39849066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 39859066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (offset < 0) { 39869066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _exception = 1; 39879066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ThrowNew(IAEClass, "offset < 0"); 39889066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project goto exit; 39899066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 39909066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _remaining = _env->GetArrayLength(eqn_ref) - offset; 39919066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project eqn_base = (GLfixed *) 39929066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->GetPrimitiveArrayCritical(eqn_ref, (jboolean *)0); 39939066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project eqn = eqn_base + offset; 39949066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 39959066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project glGetClipPlanex( 39969066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLenum)pname, 39979066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLfixed *)eqn 39989066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project ); 39999066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 40009066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectexit: 40019066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (eqn_base) { 40029066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ReleasePrimitiveArrayCritical(eqn_ref, eqn_base, 40039066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _exception ? JNI_ABORT: 0); 40049066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 40059066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 40069066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 40079066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glGetClipPlanex ( GLenum pname, GLfixed *eqn ) */ 40089066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 40099066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glGetClipPlanex__ILjava_nio_IntBuffer_2 40109066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jint pname, jobject eqn_buf) { 40119066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project jint _exception = 0; 40129066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project jarray _array = (jarray) 0; 40139066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project jint _remaining; 40149066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project GLfixed *eqn = (GLfixed *) 0; 40159066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 40169066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project eqn = (GLfixed *)getPointer(_env, eqn_buf, &_array, &_remaining); 40179066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project glGetClipPlanex( 40189066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLenum)pname, 40199066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLfixed *)eqn 40209066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project ); 40219066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (_array) { 40229066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project releasePointer(_env, _array, eqn, _exception ? JNI_FALSE : JNI_TRUE); 40239066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 40249066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 40259066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 40269066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glGetFixedv ( GLenum pname, GLfixed *params ) */ 40279066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 40289066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glGetFixedv__I_3II 40299066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jint pname, jintArray params_ref, jint offset) { 40309066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project jint _exception = 0; 40319066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project GLfixed *params_base = (GLfixed *) 0; 40329066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project jint _remaining; 40339066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project GLfixed *params = (GLfixed *) 0; 40349066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 40359066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (!params_ref) { 40369066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _exception = 1; 40379066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ThrowNew(IAEClass, "params == null"); 40389066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project goto exit; 40399066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 40409066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (offset < 0) { 40419066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _exception = 1; 40429066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ThrowNew(IAEClass, "offset < 0"); 40439066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project goto exit; 40449066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 40459066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _remaining = _env->GetArrayLength(params_ref) - offset; 40469066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project params_base = (GLfixed *) 40479066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->GetPrimitiveArrayCritical(params_ref, (jboolean *)0); 40489066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project params = params_base + offset; 40499066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 40509066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project glGetFixedv( 40519066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLenum)pname, 40529066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLfixed *)params 40539066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project ); 40549066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 40559066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectexit: 40569066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (params_base) { 40579066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ReleasePrimitiveArrayCritical(params_ref, params_base, 40589066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _exception ? JNI_ABORT: 0); 40599066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 40609066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 40619066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 40629066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glGetFixedv ( GLenum pname, GLfixed *params ) */ 40639066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 40649066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glGetFixedv__ILjava_nio_IntBuffer_2 40659066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jint pname, jobject params_buf) { 40669066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project jint _exception = 0; 40679066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project jarray _array = (jarray) 0; 40689066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project jint _remaining; 40699066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project GLfixed *params = (GLfixed *) 0; 40709066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 40719066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project params = (GLfixed *)getPointer(_env, params_buf, &_array, &_remaining); 40729066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project glGetFixedv( 40739066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLenum)pname, 40749066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLfixed *)params 40759066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project ); 40769066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (_array) { 40779066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project releasePointer(_env, _array, params, _exception ? JNI_FALSE : JNI_TRUE); 40789066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 40799066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 40809066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 40819066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glGetFloatv ( GLenum pname, GLfloat *params ) */ 40829066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 40839066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glGetFloatv__I_3FI 40849066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jint pname, jfloatArray params_ref, jint offset) { 40859066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project jint _exception = 0; 40869066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project GLfloat *params_base = (GLfloat *) 0; 40879066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project jint _remaining; 40889066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project GLfloat *params = (GLfloat *) 0; 40899066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 40909066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (!params_ref) { 40919066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _exception = 1; 40929066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ThrowNew(IAEClass, "params == null"); 40939066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project goto exit; 40949066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 40959066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (offset < 0) { 40969066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _exception = 1; 40979066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ThrowNew(IAEClass, "offset < 0"); 40989066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project goto exit; 40999066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 41009066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _remaining = _env->GetArrayLength(params_ref) - offset; 41019066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project params_base = (GLfloat *) 41029066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->GetPrimitiveArrayCritical(params_ref, (jboolean *)0); 41039066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project params = params_base + offset; 41049066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 41059066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project glGetFloatv( 41069066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLenum)pname, 41079066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLfloat *)params 41089066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project ); 41099066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 41109066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectexit: 41119066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (params_base) { 41129066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ReleasePrimitiveArrayCritical(params_ref, params_base, 41139066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _exception ? JNI_ABORT: 0); 41149066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 41159066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 41169066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 41179066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glGetFloatv ( GLenum pname, GLfloat *params ) */ 41189066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 41199066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glGetFloatv__ILjava_nio_FloatBuffer_2 41209066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jint pname, jobject params_buf) { 41219066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project jint _exception = 0; 41229066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project jarray _array = (jarray) 0; 41239066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project jint _remaining; 41249066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project GLfloat *params = (GLfloat *) 0; 41259066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 41269066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project params = (GLfloat *)getPointer(_env, params_buf, &_array, &_remaining); 41279066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project glGetFloatv( 41289066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLenum)pname, 41299066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLfloat *)params 41309066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project ); 41319066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (_array) { 41329066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project releasePointer(_env, _array, params, _exception ? JNI_FALSE : JNI_TRUE); 41339066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 41349066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 41359066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 41369066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glGetLightfv ( GLenum light, GLenum pname, GLfloat *params ) */ 41379066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 41389066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glGetLightfv__II_3FI 41399066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jint light, jint pname, jfloatArray params_ref, jint offset) { 41409066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project jint _exception = 0; 41419066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project GLfloat *params_base = (GLfloat *) 0; 41429066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project jint _remaining; 41439066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project GLfloat *params = (GLfloat *) 0; 41449066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 41459066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (!params_ref) { 41469066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _exception = 1; 41479066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ThrowNew(IAEClass, "params == null"); 41489066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project goto exit; 41499066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 41509066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (offset < 0) { 41519066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _exception = 1; 41529066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ThrowNew(IAEClass, "offset < 0"); 41539066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project goto exit; 41549066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 41559066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _remaining = _env->GetArrayLength(params_ref) - offset; 41569066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project int _needed; 41579066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project switch (pname) { 41589066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_SPOT_EXPONENT) 41599066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_SPOT_EXPONENT: 41609066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_SPOT_EXPONENT) 41619066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_SPOT_CUTOFF) 41629066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_SPOT_CUTOFF: 41639066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_SPOT_CUTOFF) 41649066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_CONSTANT_ATTENUATION) 41659066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_CONSTANT_ATTENUATION: 41669066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_CONSTANT_ATTENUATION) 41679066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_LINEAR_ATTENUATION) 41689066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_LINEAR_ATTENUATION: 41699066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_LINEAR_ATTENUATION) 41709066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_QUADRATIC_ATTENUATION) 41719066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_QUADRATIC_ATTENUATION: 41729066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_QUADRATIC_ATTENUATION) 41739066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _needed = 1; 41749066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project break; 41759066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_SPOT_DIRECTION) 41769066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_SPOT_DIRECTION: 41779066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_SPOT_DIRECTION) 41789066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _needed = 3; 41799066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project break; 41809066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_AMBIENT) 41819066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_AMBIENT: 41829066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_AMBIENT) 41839066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_DIFFUSE) 41849066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_DIFFUSE: 41859066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_DIFFUSE) 41869066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_SPECULAR) 41879066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_SPECULAR: 41889066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_SPECULAR) 41899066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_EMISSION) 41909066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_EMISSION: 41919066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_EMISSION) 41929066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _needed = 4; 41939066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project break; 41949066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project default: 41959066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _needed = 0; 41969066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project break; 41979066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 41989066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (_remaining < _needed) { 41999066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _exception = 1; 42009066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ThrowNew(IAEClass, "length - offset < needed"); 42019066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project goto exit; 42029066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 42039066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project params_base = (GLfloat *) 42049066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->GetPrimitiveArrayCritical(params_ref, (jboolean *)0); 42059066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project params = params_base + offset; 42069066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 42079066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project glGetLightfv( 42089066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLenum)light, 42099066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLenum)pname, 42109066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLfloat *)params 42119066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project ); 42129066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 42139066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectexit: 42149066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (params_base) { 42159066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ReleasePrimitiveArrayCritical(params_ref, params_base, 42169066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _exception ? JNI_ABORT: 0); 42179066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 42189066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 42199066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 42209066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glGetLightfv ( GLenum light, GLenum pname, GLfloat *params ) */ 42219066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 42229066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glGetLightfv__IILjava_nio_FloatBuffer_2 42239066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jint light, jint pname, jobject params_buf) { 42249066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project jint _exception = 0; 42259066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project jarray _array = (jarray) 0; 42269066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project jint _remaining; 42279066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project GLfloat *params = (GLfloat *) 0; 42289066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 42299066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project params = (GLfloat *)getPointer(_env, params_buf, &_array, &_remaining); 42309066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project int _needed; 42319066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project switch (pname) { 42329066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_SPOT_EXPONENT) 42339066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_SPOT_EXPONENT: 42349066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_SPOT_EXPONENT) 42359066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_SPOT_CUTOFF) 42369066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_SPOT_CUTOFF: 42379066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_SPOT_CUTOFF) 42389066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_CONSTANT_ATTENUATION) 42399066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_CONSTANT_ATTENUATION: 42409066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_CONSTANT_ATTENUATION) 42419066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_LINEAR_ATTENUATION) 42429066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_LINEAR_ATTENUATION: 42439066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_LINEAR_ATTENUATION) 42449066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_QUADRATIC_ATTENUATION) 42459066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_QUADRATIC_ATTENUATION: 42469066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_QUADRATIC_ATTENUATION) 42479066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _needed = 1; 42489066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project break; 42499066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_SPOT_DIRECTION) 42509066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_SPOT_DIRECTION: 42519066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_SPOT_DIRECTION) 42529066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _needed = 3; 42539066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project break; 42549066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_AMBIENT) 42559066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_AMBIENT: 42569066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_AMBIENT) 42579066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_DIFFUSE) 42589066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_DIFFUSE: 42599066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_DIFFUSE) 42609066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_SPECULAR) 42619066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_SPECULAR: 42629066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_SPECULAR) 42639066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_EMISSION) 42649066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_EMISSION: 42659066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_EMISSION) 42669066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _needed = 4; 42679066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project break; 42689066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project default: 42699066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _needed = 0; 42709066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project break; 42719066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 42729066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (_remaining < _needed) { 42739066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _exception = 1; 42749066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ThrowNew(IAEClass, "remaining() < needed"); 42759066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project goto exit; 42769066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 42779066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project glGetLightfv( 42789066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLenum)light, 42799066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLenum)pname, 42809066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLfloat *)params 42819066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project ); 42829066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 42839066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectexit: 42849066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (_array) { 42859066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project releasePointer(_env, _array, params, _exception ? JNI_FALSE : JNI_TRUE); 42869066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 42879066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 42889066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 42899066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glGetLightxv ( GLenum light, GLenum pname, GLfixed *params ) */ 42909066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 42919066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glGetLightxv__II_3II 42929066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jint light, jint pname, jintArray params_ref, jint offset) { 42939066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project jint _exception = 0; 42949066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project GLfixed *params_base = (GLfixed *) 0; 42959066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project jint _remaining; 42969066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project GLfixed *params = (GLfixed *) 0; 42979066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 42989066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (!params_ref) { 42999066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _exception = 1; 43009066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ThrowNew(IAEClass, "params == null"); 43019066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project goto exit; 43029066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 43039066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (offset < 0) { 43049066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _exception = 1; 43059066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ThrowNew(IAEClass, "offset < 0"); 43069066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project goto exit; 43079066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 43089066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _remaining = _env->GetArrayLength(params_ref) - offset; 43099066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project int _needed; 43109066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project switch (pname) { 43119066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_SPOT_EXPONENT) 43129066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_SPOT_EXPONENT: 43139066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_SPOT_EXPONENT) 43149066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_SPOT_CUTOFF) 43159066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_SPOT_CUTOFF: 43169066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_SPOT_CUTOFF) 43179066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_CONSTANT_ATTENUATION) 43189066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_CONSTANT_ATTENUATION: 43199066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_CONSTANT_ATTENUATION) 43209066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_LINEAR_ATTENUATION) 43219066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_LINEAR_ATTENUATION: 43229066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_LINEAR_ATTENUATION) 43239066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_QUADRATIC_ATTENUATION) 43249066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_QUADRATIC_ATTENUATION: 43259066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_QUADRATIC_ATTENUATION) 43269066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _needed = 1; 43279066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project break; 43289066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_SPOT_DIRECTION) 43299066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_SPOT_DIRECTION: 43309066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_SPOT_DIRECTION) 43319066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _needed = 3; 43329066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project break; 43339066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_AMBIENT) 43349066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_AMBIENT: 43359066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_AMBIENT) 43369066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_DIFFUSE) 43379066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_DIFFUSE: 43389066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_DIFFUSE) 43399066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_SPECULAR) 43409066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_SPECULAR: 43419066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_SPECULAR) 43429066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_EMISSION) 43439066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_EMISSION: 43449066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_EMISSION) 43459066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _needed = 4; 43469066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project break; 43479066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project default: 43489066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _needed = 0; 43499066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project break; 43509066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 43519066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (_remaining < _needed) { 43529066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _exception = 1; 43539066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ThrowNew(IAEClass, "length - offset < needed"); 43549066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project goto exit; 43559066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 43569066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project params_base = (GLfixed *) 43579066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->GetPrimitiveArrayCritical(params_ref, (jboolean *)0); 43589066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project params = params_base + offset; 43599066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 43609066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project glGetLightxv( 43619066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLenum)light, 43629066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLenum)pname, 43639066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLfixed *)params 43649066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project ); 43659066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 43669066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectexit: 43679066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (params_base) { 43689066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ReleasePrimitiveArrayCritical(params_ref, params_base, 43699066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _exception ? JNI_ABORT: 0); 43709066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 43719066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 43729066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 43739066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glGetLightxv ( GLenum light, GLenum pname, GLfixed *params ) */ 43749066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 43759066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glGetLightxv__IILjava_nio_IntBuffer_2 43769066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jint light, jint pname, jobject params_buf) { 43779066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project jint _exception = 0; 43789066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project jarray _array = (jarray) 0; 43799066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project jint _remaining; 43809066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project GLfixed *params = (GLfixed *) 0; 43819066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 43829066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project params = (GLfixed *)getPointer(_env, params_buf, &_array, &_remaining); 43839066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project int _needed; 43849066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project switch (pname) { 43859066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_SPOT_EXPONENT) 43869066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_SPOT_EXPONENT: 43879066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_SPOT_EXPONENT) 43889066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_SPOT_CUTOFF) 43899066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_SPOT_CUTOFF: 43909066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_SPOT_CUTOFF) 43919066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_CONSTANT_ATTENUATION) 43929066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_CONSTANT_ATTENUATION: 43939066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_CONSTANT_ATTENUATION) 43949066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_LINEAR_ATTENUATION) 43959066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_LINEAR_ATTENUATION: 43969066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_LINEAR_ATTENUATION) 43979066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_QUADRATIC_ATTENUATION) 43989066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_QUADRATIC_ATTENUATION: 43999066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_QUADRATIC_ATTENUATION) 44009066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _needed = 1; 44019066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project break; 44029066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_SPOT_DIRECTION) 44039066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_SPOT_DIRECTION: 44049066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_SPOT_DIRECTION) 44059066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _needed = 3; 44069066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project break; 44079066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_AMBIENT) 44089066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_AMBIENT: 44099066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_AMBIENT) 44109066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_DIFFUSE) 44119066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_DIFFUSE: 44129066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_DIFFUSE) 44139066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_SPECULAR) 44149066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_SPECULAR: 44159066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_SPECULAR) 44169066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_EMISSION) 44179066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_EMISSION: 44189066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_EMISSION) 44199066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _needed = 4; 44209066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project break; 44219066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project default: 44229066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _needed = 0; 44239066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project break; 44249066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 44259066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (_remaining < _needed) { 44269066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _exception = 1; 44279066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ThrowNew(IAEClass, "remaining() < needed"); 44289066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project goto exit; 44299066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 44309066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project glGetLightxv( 44319066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLenum)light, 44329066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLenum)pname, 44339066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLfixed *)params 44349066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project ); 44359066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 44369066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectexit: 44379066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (_array) { 44389066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project releasePointer(_env, _array, params, _exception ? JNI_FALSE : JNI_TRUE); 44399066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 44409066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 44419066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 44429066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glGetMaterialfv ( GLenum face, GLenum pname, GLfloat *params ) */ 44439066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 44449066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glGetMaterialfv__II_3FI 44459066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jint face, jint pname, jfloatArray params_ref, jint offset) { 44469066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project jint _exception = 0; 44479066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project GLfloat *params_base = (GLfloat *) 0; 44489066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project jint _remaining; 44499066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project GLfloat *params = (GLfloat *) 0; 44509066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 44519066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (!params_ref) { 44529066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _exception = 1; 44539066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ThrowNew(IAEClass, "params == null"); 44549066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project goto exit; 44559066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 44569066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (offset < 0) { 44579066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _exception = 1; 44589066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ThrowNew(IAEClass, "offset < 0"); 44599066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project goto exit; 44609066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 44619066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _remaining = _env->GetArrayLength(params_ref) - offset; 44629066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project int _needed; 44639066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project switch (pname) { 44649066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_SHININESS) 44659066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_SHININESS: 44669066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_SHININESS) 44679066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _needed = 1; 44689066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project break; 44699066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_AMBIENT) 44709066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_AMBIENT: 44719066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_AMBIENT) 44729066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_DIFFUSE) 44739066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_DIFFUSE: 44749066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_DIFFUSE) 44759066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_SPECULAR) 44769066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_SPECULAR: 44779066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_SPECULAR) 44789066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_EMISSION) 44799066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_EMISSION: 44809066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_EMISSION) 44819066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_AMBIENT_AND_DIFFUSE) 44829066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_AMBIENT_AND_DIFFUSE: 44839066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_AMBIENT_AND_DIFFUSE) 44849066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _needed = 4; 44859066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project break; 44869066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project default: 44879066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _needed = 0; 44889066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project break; 44899066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 44909066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (_remaining < _needed) { 44919066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _exception = 1; 44929066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ThrowNew(IAEClass, "length - offset < needed"); 44939066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project goto exit; 44949066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 44959066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project params_base = (GLfloat *) 44969066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->GetPrimitiveArrayCritical(params_ref, (jboolean *)0); 44979066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project params = params_base + offset; 44989066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 44999066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project glGetMaterialfv( 45009066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLenum)face, 45019066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLenum)pname, 45029066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLfloat *)params 45039066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project ); 45049066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 45059066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectexit: 45069066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (params_base) { 45079066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ReleasePrimitiveArrayCritical(params_ref, params_base, 45089066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _exception ? JNI_ABORT: 0); 45099066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 45109066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 45119066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 45129066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glGetMaterialfv ( GLenum face, GLenum pname, GLfloat *params ) */ 45139066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 45149066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glGetMaterialfv__IILjava_nio_FloatBuffer_2 45159066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jint face, jint pname, jobject params_buf) { 45169066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project jint _exception = 0; 45179066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project jarray _array = (jarray) 0; 45189066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project jint _remaining; 45199066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project GLfloat *params = (GLfloat *) 0; 45209066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 45219066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project params = (GLfloat *)getPointer(_env, params_buf, &_array, &_remaining); 45229066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project int _needed; 45239066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project switch (pname) { 45249066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_SHININESS) 45259066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_SHININESS: 45269066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_SHININESS) 45279066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _needed = 1; 45289066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project break; 45299066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_AMBIENT) 45309066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_AMBIENT: 45319066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_AMBIENT) 45329066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_DIFFUSE) 45339066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_DIFFUSE: 45349066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_DIFFUSE) 45359066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_SPECULAR) 45369066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_SPECULAR: 45379066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_SPECULAR) 45389066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_EMISSION) 45399066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_EMISSION: 45409066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_EMISSION) 45419066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_AMBIENT_AND_DIFFUSE) 45429066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_AMBIENT_AND_DIFFUSE: 45439066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_AMBIENT_AND_DIFFUSE) 45449066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _needed = 4; 45459066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project break; 45469066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project default: 45479066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _needed = 0; 45489066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project break; 45499066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 45509066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (_remaining < _needed) { 45519066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _exception = 1; 45529066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ThrowNew(IAEClass, "remaining() < needed"); 45539066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project goto exit; 45549066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 45559066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project glGetMaterialfv( 45569066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLenum)face, 45579066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLenum)pname, 45589066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLfloat *)params 45599066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project ); 45609066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 45619066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectexit: 45629066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (_array) { 45639066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project releasePointer(_env, _array, params, _exception ? JNI_FALSE : JNI_TRUE); 45649066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 45659066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 45669066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 45679066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glGetMaterialxv ( GLenum face, GLenum pname, GLfixed *params ) */ 45689066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 45699066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glGetMaterialxv__II_3II 45709066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jint face, jint pname, jintArray params_ref, jint offset) { 45719066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project jint _exception = 0; 45729066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project GLfixed *params_base = (GLfixed *) 0; 45739066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project jint _remaining; 45749066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project GLfixed *params = (GLfixed *) 0; 45759066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 45769066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (!params_ref) { 45779066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _exception = 1; 45789066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ThrowNew(IAEClass, "params == null"); 45799066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project goto exit; 45809066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 45819066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (offset < 0) { 45829066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _exception = 1; 45839066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ThrowNew(IAEClass, "offset < 0"); 45849066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project goto exit; 45859066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 45869066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _remaining = _env->GetArrayLength(params_ref) - offset; 45879066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project int _needed; 45889066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project switch (pname) { 45899066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_SHININESS) 45909066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_SHININESS: 45919066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_SHININESS) 45929066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _needed = 1; 45939066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project break; 45949066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_AMBIENT) 45959066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_AMBIENT: 45969066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_AMBIENT) 45979066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_DIFFUSE) 45989066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_DIFFUSE: 45999066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_DIFFUSE) 46009066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_SPECULAR) 46019066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_SPECULAR: 46029066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_SPECULAR) 46039066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_EMISSION) 46049066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_EMISSION: 46059066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_EMISSION) 46069066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_AMBIENT_AND_DIFFUSE) 46079066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_AMBIENT_AND_DIFFUSE: 46089066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_AMBIENT_AND_DIFFUSE) 46099066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _needed = 4; 46109066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project break; 46119066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project default: 46129066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _needed = 0; 46139066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project break; 46149066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 46159066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (_remaining < _needed) { 46169066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _exception = 1; 46179066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ThrowNew(IAEClass, "length - offset < needed"); 46189066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project goto exit; 46199066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 46209066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project params_base = (GLfixed *) 46219066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->GetPrimitiveArrayCritical(params_ref, (jboolean *)0); 46229066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project params = params_base + offset; 46239066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 46249066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project glGetMaterialxv( 46259066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLenum)face, 46269066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLenum)pname, 46279066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLfixed *)params 46289066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project ); 46299066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 46309066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectexit: 46319066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (params_base) { 46329066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ReleasePrimitiveArrayCritical(params_ref, params_base, 46339066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _exception ? JNI_ABORT: 0); 46349066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 46359066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 46369066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 46379066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glGetMaterialxv ( GLenum face, GLenum pname, GLfixed *params ) */ 46389066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 46399066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glGetMaterialxv__IILjava_nio_IntBuffer_2 46409066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jint face, jint pname, jobject params_buf) { 46419066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project jint _exception = 0; 46429066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project jarray _array = (jarray) 0; 46439066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project jint _remaining; 46449066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project GLfixed *params = (GLfixed *) 0; 46459066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 46469066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project params = (GLfixed *)getPointer(_env, params_buf, &_array, &_remaining); 46479066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project int _needed; 46489066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project switch (pname) { 46499066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_SHININESS) 46509066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_SHININESS: 46519066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_SHININESS) 46529066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _needed = 1; 46539066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project break; 46549066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_AMBIENT) 46559066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_AMBIENT: 46569066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_AMBIENT) 46579066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_DIFFUSE) 46589066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_DIFFUSE: 46599066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_DIFFUSE) 46609066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_SPECULAR) 46619066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_SPECULAR: 46629066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_SPECULAR) 46639066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_EMISSION) 46649066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_EMISSION: 46659066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_EMISSION) 46669066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_AMBIENT_AND_DIFFUSE) 46679066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_AMBIENT_AND_DIFFUSE: 46689066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_AMBIENT_AND_DIFFUSE) 46699066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _needed = 4; 46709066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project break; 46719066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project default: 46729066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _needed = 0; 46739066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project break; 46749066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 46759066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (_remaining < _needed) { 46769066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _exception = 1; 46779066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ThrowNew(IAEClass, "remaining() < needed"); 46789066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project goto exit; 46799066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 46809066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project glGetMaterialxv( 46819066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLenum)face, 46829066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLenum)pname, 46839066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLfixed *)params 46849066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project ); 46859066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 46869066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectexit: 46879066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (_array) { 46889066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project releasePointer(_env, _array, params, _exception ? JNI_FALSE : JNI_TRUE); 46899066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 46909066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 46919066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 46929066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glGetTexEnviv ( GLenum env, GLenum pname, GLint *params ) */ 46939066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 46949066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glGetTexEnviv__II_3II 46959066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jint env, jint pname, jintArray params_ref, jint offset) { 46969066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project jint _exception = 0; 46979066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project GLint *params_base = (GLint *) 0; 46989066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project jint _remaining; 46999066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project GLint *params = (GLint *) 0; 47009066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 47019066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (!params_ref) { 47029066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _exception = 1; 47039066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ThrowNew(IAEClass, "params == null"); 47049066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project goto exit; 47059066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 47069066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (offset < 0) { 47079066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _exception = 1; 47089066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ThrowNew(IAEClass, "offset < 0"); 47099066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project goto exit; 47109066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 47119066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _remaining = _env->GetArrayLength(params_ref) - offset; 47129066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project int _needed; 47139066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project switch (pname) { 47149066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_TEXTURE_ENV_MODE) 47159066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_TEXTURE_ENV_MODE: 47169066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_TEXTURE_ENV_MODE) 47179066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_COMBINE_RGB) 47189066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_COMBINE_RGB: 47199066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_COMBINE_RGB) 47209066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_COMBINE_ALPHA) 47219066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_COMBINE_ALPHA: 47229066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_COMBINE_ALPHA) 47239066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _needed = 1; 47249066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project break; 47259066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_TEXTURE_ENV_COLOR) 47269066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_TEXTURE_ENV_COLOR: 47279066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_TEXTURE_ENV_COLOR) 47289066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _needed = 4; 47299066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project break; 47309066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project default: 47319066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _needed = 0; 47329066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project break; 47339066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 47349066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (_remaining < _needed) { 47359066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _exception = 1; 47369066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ThrowNew(IAEClass, "length - offset < needed"); 47379066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project goto exit; 47389066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 47399066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project params_base = (GLint *) 47409066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->GetPrimitiveArrayCritical(params_ref, (jboolean *)0); 47419066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project params = params_base + offset; 47429066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 47439066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project glGetTexEnviv( 47449066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLenum)env, 47459066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLenum)pname, 47469066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLint *)params 47479066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project ); 47489066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 47499066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectexit: 47509066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (params_base) { 47519066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ReleasePrimitiveArrayCritical(params_ref, params_base, 47529066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _exception ? JNI_ABORT: 0); 47539066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 47549066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 47559066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 47569066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glGetTexEnviv ( GLenum env, GLenum pname, GLint *params ) */ 47579066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 47589066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glGetTexEnviv__IILjava_nio_IntBuffer_2 47599066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jint env, jint pname, jobject params_buf) { 47609066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project jint _exception = 0; 47619066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project jarray _array = (jarray) 0; 47629066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project jint _remaining; 47639066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project GLint *params = (GLint *) 0; 47649066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 47659066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project params = (GLint *)getPointer(_env, params_buf, &_array, &_remaining); 47669066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project int _needed; 47679066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project switch (pname) { 47689066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_TEXTURE_ENV_MODE) 47699066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_TEXTURE_ENV_MODE: 47709066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_TEXTURE_ENV_MODE) 47719066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_COMBINE_RGB) 47729066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_COMBINE_RGB: 47739066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_COMBINE_RGB) 47749066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_COMBINE_ALPHA) 47759066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_COMBINE_ALPHA: 47769066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_COMBINE_ALPHA) 47779066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _needed = 1; 47789066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project break; 47799066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_TEXTURE_ENV_COLOR) 47809066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_TEXTURE_ENV_COLOR: 47819066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_TEXTURE_ENV_COLOR) 47829066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _needed = 4; 47839066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project break; 47849066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project default: 47859066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _needed = 0; 47869066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project break; 47879066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 47889066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (_remaining < _needed) { 47899066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _exception = 1; 47909066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ThrowNew(IAEClass, "remaining() < needed"); 47919066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project goto exit; 47929066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 47939066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project glGetTexEnviv( 47949066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLenum)env, 47959066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLenum)pname, 47969066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLint *)params 47979066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project ); 47989066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 47999066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectexit: 48009066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (_array) { 48019066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project releasePointer(_env, _array, params, _exception ? JNI_FALSE : JNI_TRUE); 48029066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 48039066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 48049066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 48059066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glGetTexEnvxv ( GLenum env, GLenum pname, GLfixed *params ) */ 48069066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 48079066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glGetTexEnvxv__II_3II 48089066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jint env, jint pname, jintArray params_ref, jint offset) { 48099066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project jint _exception = 0; 48109066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project GLfixed *params_base = (GLfixed *) 0; 48119066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project jint _remaining; 48129066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project GLfixed *params = (GLfixed *) 0; 48139066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 48149066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (!params_ref) { 48159066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _exception = 1; 48169066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ThrowNew(IAEClass, "params == null"); 48179066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project goto exit; 48189066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 48199066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (offset < 0) { 48209066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _exception = 1; 48219066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ThrowNew(IAEClass, "offset < 0"); 48229066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project goto exit; 48239066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 48249066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _remaining = _env->GetArrayLength(params_ref) - offset; 48259066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project int _needed; 48269066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project switch (pname) { 48279066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_TEXTURE_ENV_MODE) 48289066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_TEXTURE_ENV_MODE: 48299066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_TEXTURE_ENV_MODE) 48309066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_COMBINE_RGB) 48319066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_COMBINE_RGB: 48329066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_COMBINE_RGB) 48339066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_COMBINE_ALPHA) 48349066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_COMBINE_ALPHA: 48359066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_COMBINE_ALPHA) 48369066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _needed = 1; 48379066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project break; 48389066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_TEXTURE_ENV_COLOR) 48399066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_TEXTURE_ENV_COLOR: 48409066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_TEXTURE_ENV_COLOR) 48419066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _needed = 4; 48429066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project break; 48439066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project default: 48449066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _needed = 0; 48459066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project break; 48469066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 48479066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (_remaining < _needed) { 48489066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _exception = 1; 48499066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ThrowNew(IAEClass, "length - offset < needed"); 48509066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project goto exit; 48519066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 48529066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project params_base = (GLfixed *) 48539066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->GetPrimitiveArrayCritical(params_ref, (jboolean *)0); 48549066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project params = params_base + offset; 48559066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 48569066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project glGetTexEnvxv( 48579066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLenum)env, 48589066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLenum)pname, 48599066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLfixed *)params 48609066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project ); 48619066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 48629066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectexit: 48639066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (params_base) { 48649066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ReleasePrimitiveArrayCritical(params_ref, params_base, 48659066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _exception ? JNI_ABORT: 0); 48669066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 48679066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 48689066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 48699066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glGetTexEnvxv ( GLenum env, GLenum pname, GLfixed *params ) */ 48709066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 48719066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glGetTexEnvxv__IILjava_nio_IntBuffer_2 48729066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jint env, jint pname, jobject params_buf) { 48739066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project jint _exception = 0; 48749066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project jarray _array = (jarray) 0; 48759066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project jint _remaining; 48769066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project GLfixed *params = (GLfixed *) 0; 48779066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 48789066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project params = (GLfixed *)getPointer(_env, params_buf, &_array, &_remaining); 48799066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project int _needed; 48809066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project switch (pname) { 48819066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_TEXTURE_ENV_MODE) 48829066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_TEXTURE_ENV_MODE: 48839066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_TEXTURE_ENV_MODE) 48849066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_COMBINE_RGB) 48859066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_COMBINE_RGB: 48869066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_COMBINE_RGB) 48879066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_COMBINE_ALPHA) 48889066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_COMBINE_ALPHA: 48899066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_COMBINE_ALPHA) 48909066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _needed = 1; 48919066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project break; 48929066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_TEXTURE_ENV_COLOR) 48939066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_TEXTURE_ENV_COLOR: 48949066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_TEXTURE_ENV_COLOR) 48959066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _needed = 4; 48969066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project break; 48979066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project default: 48989066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _needed = 0; 48999066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project break; 49009066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 49019066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (_remaining < _needed) { 49029066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _exception = 1; 49039066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ThrowNew(IAEClass, "remaining() < needed"); 49049066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project goto exit; 49059066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 49069066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project glGetTexEnvxv( 49079066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLenum)env, 49089066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLenum)pname, 49099066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLfixed *)params 49109066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project ); 49119066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 49129066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectexit: 49139066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (_array) { 49149066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project releasePointer(_env, _array, params, _exception ? JNI_FALSE : JNI_TRUE); 49159066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 49169066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 49179066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 49189066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glGetTexParameterfv ( GLenum target, GLenum pname, GLfloat *params ) */ 49199066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 49209066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glGetTexParameterfv__II_3FI 49219066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jint target, jint pname, jfloatArray params_ref, jint offset) { 49229066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project jint _exception = 0; 49239066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project GLfloat *params_base = (GLfloat *) 0; 49249066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project jint _remaining; 49259066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project GLfloat *params = (GLfloat *) 0; 49269066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 49279066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (!params_ref) { 49289066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _exception = 1; 49299066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ThrowNew(IAEClass, "params == null"); 49309066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project goto exit; 49319066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 49329066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (offset < 0) { 49339066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _exception = 1; 49349066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ThrowNew(IAEClass, "offset < 0"); 49359066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project goto exit; 49369066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 49379066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _remaining = _env->GetArrayLength(params_ref) - offset; 49389066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (_remaining < 1) { 49399066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _exception = 1; 49409066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ThrowNew(IAEClass, "length - offset < 1"); 49419066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project goto exit; 49429066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 49439066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project params_base = (GLfloat *) 49449066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->GetPrimitiveArrayCritical(params_ref, (jboolean *)0); 49459066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project params = params_base + offset; 49469066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 49479066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project glGetTexParameterfv( 49489066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLenum)target, 49499066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLenum)pname, 49509066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLfloat *)params 49519066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project ); 49529066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 49539066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectexit: 49549066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (params_base) { 49559066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ReleasePrimitiveArrayCritical(params_ref, params_base, 49569066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _exception ? JNI_ABORT: 0); 49579066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 49589066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 49599066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 49609066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glGetTexParameterfv ( GLenum target, GLenum pname, GLfloat *params ) */ 49619066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 49629066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glGetTexParameterfv__IILjava_nio_FloatBuffer_2 49639066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jint target, jint pname, jobject params_buf) { 49649066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project jint _exception = 0; 49659066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project jarray _array = (jarray) 0; 49669066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project jint _remaining; 49679066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project GLfloat *params = (GLfloat *) 0; 49689066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 49699066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project params = (GLfloat *)getPointer(_env, params_buf, &_array, &_remaining); 49709066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (_remaining < 1) { 49719066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _exception = 1; 49729066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ThrowNew(IAEClass, "remaining() < 1"); 49739066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project goto exit; 49749066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 49759066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project glGetTexParameterfv( 49769066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLenum)target, 49779066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLenum)pname, 49789066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLfloat *)params 49799066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project ); 49809066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 49819066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectexit: 49829066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (_array) { 49839066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project releasePointer(_env, _array, params, _exception ? JNI_FALSE : JNI_TRUE); 49849066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 49859066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 49869066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 49879066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glGetTexParameteriv ( GLenum target, GLenum pname, GLint *params ) */ 49889066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 49899066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glGetTexParameteriv__II_3II 49909066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jint target, jint pname, jintArray params_ref, jint offset) { 49919066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project jint _exception = 0; 49929066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project GLint *params_base = (GLint *) 0; 49939066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project jint _remaining; 49949066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project GLint *params = (GLint *) 0; 49959066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 49969066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (!params_ref) { 49979066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _exception = 1; 49989066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ThrowNew(IAEClass, "params == null"); 49999066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project goto exit; 50009066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 50019066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (offset < 0) { 50029066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _exception = 1; 50039066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ThrowNew(IAEClass, "offset < 0"); 50049066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project goto exit; 50059066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 50069066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _remaining = _env->GetArrayLength(params_ref) - offset; 50079066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (_remaining < 1) { 50089066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _exception = 1; 50099066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ThrowNew(IAEClass, "length - offset < 1"); 50109066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project goto exit; 50119066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 50129066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project params_base = (GLint *) 50139066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->GetPrimitiveArrayCritical(params_ref, (jboolean *)0); 50149066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project params = params_base + offset; 50159066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 50169066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project glGetTexParameteriv( 50179066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLenum)target, 50189066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLenum)pname, 50199066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLint *)params 50209066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project ); 50219066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 50229066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectexit: 50239066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (params_base) { 50249066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ReleasePrimitiveArrayCritical(params_ref, params_base, 50259066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _exception ? JNI_ABORT: 0); 50269066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 50279066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 50289066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 50299066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glGetTexParameteriv ( GLenum target, GLenum pname, GLint *params ) */ 50309066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 50319066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glGetTexParameteriv__IILjava_nio_IntBuffer_2 50329066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jint target, jint pname, jobject params_buf) { 50339066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project jint _exception = 0; 50349066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project jarray _array = (jarray) 0; 50359066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project jint _remaining; 50369066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project GLint *params = (GLint *) 0; 50379066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 50389066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project params = (GLint *)getPointer(_env, params_buf, &_array, &_remaining); 50399066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (_remaining < 1) { 50409066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _exception = 1; 50419066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ThrowNew(IAEClass, "remaining() < 1"); 50429066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project goto exit; 50439066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 50449066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project glGetTexParameteriv( 50459066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLenum)target, 50469066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLenum)pname, 50479066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLint *)params 50489066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project ); 50499066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 50509066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectexit: 50519066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (_array) { 50529066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project releasePointer(_env, _array, params, _exception ? JNI_FALSE : JNI_TRUE); 50539066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 50549066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 50559066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 50569066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glGetTexParameterxv ( GLenum target, GLenum pname, GLfixed *params ) */ 50579066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 50589066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glGetTexParameterxv__II_3II 50599066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jint target, jint pname, jintArray params_ref, jint offset) { 50609066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project jint _exception = 0; 50619066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project GLfixed *params_base = (GLfixed *) 0; 50629066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project jint _remaining; 50639066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project GLfixed *params = (GLfixed *) 0; 50649066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 50659066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (!params_ref) { 50669066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _exception = 1; 50679066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ThrowNew(IAEClass, "params == null"); 50689066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project goto exit; 50699066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 50709066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (offset < 0) { 50719066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _exception = 1; 50729066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ThrowNew(IAEClass, "offset < 0"); 50739066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project goto exit; 50749066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 50759066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _remaining = _env->GetArrayLength(params_ref) - offset; 50769066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (_remaining < 1) { 50779066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _exception = 1; 50789066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ThrowNew(IAEClass, "length - offset < 1"); 50799066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project goto exit; 50809066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 50819066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project params_base = (GLfixed *) 50829066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->GetPrimitiveArrayCritical(params_ref, (jboolean *)0); 50839066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project params = params_base + offset; 50849066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 50859066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project glGetTexParameterxv( 50869066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLenum)target, 50879066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLenum)pname, 50889066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLfixed *)params 50899066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project ); 50909066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 50919066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectexit: 50929066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (params_base) { 50939066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ReleasePrimitiveArrayCritical(params_ref, params_base, 50949066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _exception ? JNI_ABORT: 0); 50959066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 50969066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 50979066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 50989066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glGetTexParameterxv ( GLenum target, GLenum pname, GLfixed *params ) */ 50999066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 51009066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glGetTexParameterxv__IILjava_nio_IntBuffer_2 51019066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jint target, jint pname, jobject params_buf) { 51029066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project jint _exception = 0; 51039066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project jarray _array = (jarray) 0; 51049066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project jint _remaining; 51059066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project GLfixed *params = (GLfixed *) 0; 51069066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 51079066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project params = (GLfixed *)getPointer(_env, params_buf, &_array, &_remaining); 51089066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (_remaining < 1) { 51099066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _exception = 1; 51109066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ThrowNew(IAEClass, "remaining() < 1"); 51119066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project goto exit; 51129066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 51139066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project glGetTexParameterxv( 51149066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLenum)target, 51159066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLenum)pname, 51169066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLfixed *)params 51179066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project ); 51189066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 51199066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectexit: 51209066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (_array) { 51219066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project releasePointer(_env, _array, params, _exception ? JNI_FALSE : JNI_TRUE); 51229066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 51239066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 51249066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 51259066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* GLboolean glIsBuffer ( GLuint buffer ) */ 51269066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic jboolean 51279066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glIsBuffer__I 51289066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jint buffer) { 51299066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project GLboolean _returnValue; 51309066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _returnValue = glIsBuffer( 51319066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLuint)buffer 51329066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project ); 51339066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project return _returnValue; 51349066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 51359066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 51369066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* GLboolean glIsEnabled ( GLenum cap ) */ 51379066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic jboolean 51389066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glIsEnabled__I 51399066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jint cap) { 51409066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project GLboolean _returnValue; 51419066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _returnValue = glIsEnabled( 51429066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLenum)cap 51439066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project ); 51449066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project return _returnValue; 51459066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 51469066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 51479066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* GLboolean glIsTexture ( GLuint texture ) */ 51489066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic jboolean 51499066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glIsTexture__I 51509066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jint texture) { 51519066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project GLboolean _returnValue; 51529066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _returnValue = glIsTexture( 51539066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLuint)texture 51549066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project ); 51559066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project return _returnValue; 51569066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 51579066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 51589066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glNormalPointer ( GLenum type, GLsizei stride, GLint offset ) */ 51599066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 51609066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glNormalPointer__III 51619066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jint type, jint stride, jint offset) { 51629066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project glNormalPointer( 51639066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLenum)type, 51649066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLsizei)stride, 51659066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (const GLvoid *)offset 51669066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project ); 51679066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 51689066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 51699066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glPointParameterf ( GLenum pname, GLfloat param ) */ 51709066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 51719066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glPointParameterf__IF 51729066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jint pname, jfloat param) { 51739066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project glPointParameterf( 51749066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLenum)pname, 51759066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLfloat)param 51769066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project ); 51779066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 51789066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 51799066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glPointParameterfv ( GLenum pname, const GLfloat *params ) */ 51809066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 51819066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glPointParameterfv__I_3FI 51829066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jint pname, jfloatArray params_ref, jint offset) { 51839066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project GLfloat *params_base = (GLfloat *) 0; 51849066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project jint _remaining; 51859066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project GLfloat *params = (GLfloat *) 0; 51869066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 51879066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (!params_ref) { 51889066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ThrowNew(IAEClass, "params == null"); 51899066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project goto exit; 51909066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 51919066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (offset < 0) { 51929066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ThrowNew(IAEClass, "offset < 0"); 51939066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project goto exit; 51949066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 51959066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _remaining = _env->GetArrayLength(params_ref) - offset; 51969066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (_remaining < 1) { 51979066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ThrowNew(IAEClass, "length - offset < 1"); 51989066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project goto exit; 51999066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 52009066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project params_base = (GLfloat *) 52019066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->GetPrimitiveArrayCritical(params_ref, (jboolean *)0); 52029066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project params = params_base + offset; 52039066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 52049066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project glPointParameterfv( 52059066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLenum)pname, 52069066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLfloat *)params 52079066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project ); 52089066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 52099066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectexit: 52109066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (params_base) { 52119066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ReleasePrimitiveArrayCritical(params_ref, params_base, 52129066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project JNI_ABORT); 52139066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 52149066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 52159066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 52169066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glPointParameterfv ( GLenum pname, const GLfloat *params ) */ 52179066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 52189066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glPointParameterfv__ILjava_nio_FloatBuffer_2 52199066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jint pname, jobject params_buf) { 52209066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project jarray _array = (jarray) 0; 52219066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project jint _remaining; 52229066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project GLfloat *params = (GLfloat *) 0; 52239066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 52249066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project params = (GLfloat *)getPointer(_env, params_buf, &_array, &_remaining); 52259066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (_remaining < 1) { 52269066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ThrowNew(IAEClass, "remaining() < 1"); 52279066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project goto exit; 52289066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 52299066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project glPointParameterfv( 52309066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLenum)pname, 52319066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLfloat *)params 52329066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project ); 52339066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 52349066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectexit: 52359066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (_array) { 52369066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project releasePointer(_env, _array, params, JNI_FALSE); 52379066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 52389066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 52399066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 52409066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glPointParameterx ( GLenum pname, GLfixed param ) */ 52419066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 52429066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glPointParameterx__II 52439066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jint pname, jint param) { 52449066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project glPointParameterx( 52459066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLenum)pname, 52469066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLfixed)param 52479066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project ); 52489066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 52499066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 52509066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glPointParameterxv ( GLenum pname, const GLfixed *params ) */ 52519066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 52529066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glPointParameterxv__I_3II 52539066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jint pname, jintArray params_ref, jint offset) { 52549066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project GLfixed *params_base = (GLfixed *) 0; 52559066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project jint _remaining; 52569066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project GLfixed *params = (GLfixed *) 0; 52579066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 52589066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (!params_ref) { 52599066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ThrowNew(IAEClass, "params == null"); 52609066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project goto exit; 52619066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 52629066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (offset < 0) { 52639066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ThrowNew(IAEClass, "offset < 0"); 52649066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project goto exit; 52659066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 52669066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _remaining = _env->GetArrayLength(params_ref) - offset; 52679066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (_remaining < 1) { 52689066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ThrowNew(IAEClass, "length - offset < 1"); 52699066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project goto exit; 52709066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 52719066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project params_base = (GLfixed *) 52729066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->GetPrimitiveArrayCritical(params_ref, (jboolean *)0); 52739066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project params = params_base + offset; 52749066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 52759066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project glPointParameterxv( 52769066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLenum)pname, 52779066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLfixed *)params 52789066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project ); 52799066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 52809066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectexit: 52819066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (params_base) { 52829066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ReleasePrimitiveArrayCritical(params_ref, params_base, 52839066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project JNI_ABORT); 52849066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 52859066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 52869066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 52879066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glPointParameterxv ( GLenum pname, const GLfixed *params ) */ 52889066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 52899066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glPointParameterxv__ILjava_nio_IntBuffer_2 52909066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jint pname, jobject params_buf) { 52919066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project jarray _array = (jarray) 0; 52929066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project jint _remaining; 52939066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project GLfixed *params = (GLfixed *) 0; 52949066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 52959066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project params = (GLfixed *)getPointer(_env, params_buf, &_array, &_remaining); 52969066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (_remaining < 1) { 52979066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ThrowNew(IAEClass, "remaining() < 1"); 52989066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project goto exit; 52999066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 53009066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project glPointParameterxv( 53019066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLenum)pname, 53029066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLfixed *)params 53039066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project ); 53049066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 53059066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectexit: 53069066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (_array) { 53079066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project releasePointer(_env, _array, params, JNI_FALSE); 53089066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 53099066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 53109066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 53119066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glPointSizePointerOES ( GLenum type, GLsizei stride, const GLvoid *pointer ) */ 53129066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 53139066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glPointSizePointerOES__IILjava_nio_Buffer_2 53149066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jint type, jint stride, jobject pointer_buf) { 53159066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project jarray _array = (jarray) 0; 53169066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project jint _remaining; 53179066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project GLvoid *pointer = (GLvoid *) 0; 53189066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 53199066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project pointer = (GLvoid *)getPointer(_env, pointer_buf, &_array, &_remaining); 53209066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project glPointSizePointerOES( 53219066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLenum)type, 53229066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLsizei)stride, 53239066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLvoid *)pointer 53249066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project ); 53259066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (_array) { 53269066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project releasePointer(_env, _array, pointer, JNI_FALSE); 53279066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 53289066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 53299066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 53309066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glTexCoordPointer ( GLint size, GLenum type, GLsizei stride, GLint offset ) */ 53319066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 53329066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glTexCoordPointer__IIII 53339066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jint size, jint type, jint stride, jint offset) { 53349066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project glTexCoordPointer( 53359066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLint)size, 53369066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLenum)type, 53379066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLsizei)stride, 53389066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (const GLvoid *)offset 53399066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project ); 53409066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 53419066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 53429066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glTexEnvi ( GLenum target, GLenum pname, GLint param ) */ 53439066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 53449066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glTexEnvi__III 53459066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jint target, jint pname, jint param) { 53469066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project glTexEnvi( 53479066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLenum)target, 53489066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLenum)pname, 53499066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLint)param 53509066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project ); 53519066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 53529066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 53539066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glTexEnviv ( GLenum target, GLenum pname, const GLint *params ) */ 53549066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 53559066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glTexEnviv__II_3II 53569066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jint target, jint pname, jintArray params_ref, jint offset) { 53579066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project GLint *params_base = (GLint *) 0; 53589066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project jint _remaining; 53599066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project GLint *params = (GLint *) 0; 53609066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 53619066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (!params_ref) { 53629066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ThrowNew(IAEClass, "params == null"); 53639066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project goto exit; 53649066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 53659066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (offset < 0) { 53669066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ThrowNew(IAEClass, "offset < 0"); 53679066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project goto exit; 53689066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 53699066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _remaining = _env->GetArrayLength(params_ref) - offset; 53709066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project int _needed; 53719066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project switch (pname) { 53729066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_TEXTURE_ENV_MODE) 53739066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_TEXTURE_ENV_MODE: 53749066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_TEXTURE_ENV_MODE) 53759066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_COMBINE_RGB) 53769066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_COMBINE_RGB: 53779066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_COMBINE_RGB) 53789066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_COMBINE_ALPHA) 53799066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_COMBINE_ALPHA: 53809066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_COMBINE_ALPHA) 53819066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _needed = 1; 53829066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project break; 53839066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_TEXTURE_ENV_COLOR) 53849066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_TEXTURE_ENV_COLOR: 53859066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_TEXTURE_ENV_COLOR) 53869066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _needed = 4; 53879066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project break; 53889066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project default: 53899066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _needed = 0; 53909066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project break; 53919066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 53929066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (_remaining < _needed) { 53939066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ThrowNew(IAEClass, "length - offset < needed"); 53949066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project goto exit; 53959066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 53969066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project params_base = (GLint *) 53979066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->GetPrimitiveArrayCritical(params_ref, (jboolean *)0); 53989066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project params = params_base + offset; 53999066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 54009066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project glTexEnviv( 54019066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLenum)target, 54029066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLenum)pname, 54039066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLint *)params 54049066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project ); 54059066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 54069066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectexit: 54079066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (params_base) { 54089066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ReleasePrimitiveArrayCritical(params_ref, params_base, 54099066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project JNI_ABORT); 54109066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 54119066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 54129066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 54139066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glTexEnviv ( GLenum target, GLenum pname, const GLint *params ) */ 54149066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 54159066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glTexEnviv__IILjava_nio_IntBuffer_2 54169066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jint target, jint pname, jobject params_buf) { 54179066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project jarray _array = (jarray) 0; 54189066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project jint _remaining; 54199066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project GLint *params = (GLint *) 0; 54209066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 54219066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project params = (GLint *)getPointer(_env, params_buf, &_array, &_remaining); 54229066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project int _needed; 54239066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project switch (pname) { 54249066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_TEXTURE_ENV_MODE) 54259066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_TEXTURE_ENV_MODE: 54269066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_TEXTURE_ENV_MODE) 54279066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_COMBINE_RGB) 54289066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_COMBINE_RGB: 54299066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_COMBINE_RGB) 54309066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_COMBINE_ALPHA) 54319066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_COMBINE_ALPHA: 54329066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_COMBINE_ALPHA) 54339066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _needed = 1; 54349066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project break; 54359066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#if defined(GL_TEXTURE_ENV_COLOR) 54369066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project case GL_TEXTURE_ENV_COLOR: 54379066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif // defined(GL_TEXTURE_ENV_COLOR) 54389066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _needed = 4; 54399066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project break; 54409066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project default: 54419066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _needed = 0; 54429066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project break; 54439066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 54449066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (_remaining < _needed) { 54459066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ThrowNew(IAEClass, "remaining() < needed"); 54469066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project goto exit; 54479066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 54489066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project glTexEnviv( 54499066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLenum)target, 54509066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLenum)pname, 54519066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLint *)params 54529066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project ); 54539066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 54549066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectexit: 54559066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (_array) { 54569066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project releasePointer(_env, _array, params, JNI_FALSE); 54579066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 54589066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 54599066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 54609066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glTexParameterfv ( GLenum target, GLenum pname, const GLfloat *params ) */ 54619066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 54629066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glTexParameterfv__II_3FI 54639066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jint target, jint pname, jfloatArray params_ref, jint offset) { 54649066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project GLfloat *params_base = (GLfloat *) 0; 54659066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project jint _remaining; 54669066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project GLfloat *params = (GLfloat *) 0; 54679066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 54689066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (!params_ref) { 54699066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ThrowNew(IAEClass, "params == null"); 54709066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project goto exit; 54719066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 54729066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (offset < 0) { 54739066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ThrowNew(IAEClass, "offset < 0"); 54749066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project goto exit; 54759066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 54769066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _remaining = _env->GetArrayLength(params_ref) - offset; 54779066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (_remaining < 1) { 54789066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ThrowNew(IAEClass, "length - offset < 1"); 54799066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project goto exit; 54809066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 54819066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project params_base = (GLfloat *) 54829066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->GetPrimitiveArrayCritical(params_ref, (jboolean *)0); 54839066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project params = params_base + offset; 54849066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 54859066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project glTexParameterfv( 54869066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLenum)target, 54879066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLenum)pname, 54889066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLfloat *)params 54899066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project ); 54909066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 54919066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectexit: 54929066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (params_base) { 54939066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ReleasePrimitiveArrayCritical(params_ref, params_base, 54949066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project JNI_ABORT); 54959066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 54969066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 54979066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 54989066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glTexParameterfv ( GLenum target, GLenum pname, const GLfloat *params ) */ 54999066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 55009066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glTexParameterfv__IILjava_nio_FloatBuffer_2 55019066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jint target, jint pname, jobject params_buf) { 55029066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project jarray _array = (jarray) 0; 55039066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project jint _remaining; 55049066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project GLfloat *params = (GLfloat *) 0; 55059066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 55069066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project params = (GLfloat *)getPointer(_env, params_buf, &_array, &_remaining); 55079066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (_remaining < 1) { 55089066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ThrowNew(IAEClass, "remaining() < 1"); 55099066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project goto exit; 55109066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 55119066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project glTexParameterfv( 55129066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLenum)target, 55139066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLenum)pname, 55149066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLfloat *)params 55159066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project ); 55169066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 55179066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectexit: 55189066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (_array) { 55199066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project releasePointer(_env, _array, params, JNI_FALSE); 55209066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 55219066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 55229066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 55239066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glTexParameteri ( GLenum target, GLenum pname, GLint param ) */ 55249066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 55259066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glTexParameteri__III 55269066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jint target, jint pname, jint param) { 55279066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project glTexParameteri( 55289066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLenum)target, 55299066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLenum)pname, 55309066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLint)param 55319066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project ); 55329066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 55339066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 55349066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glTexParameteriv ( GLenum target, GLenum pname, const GLint *params ) */ 55359066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 55369066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glTexParameteriv__II_3II 55379066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jint target, jint pname, jintArray params_ref, jint offset) { 55389066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project GLint *params_base = (GLint *) 0; 55399066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project jint _remaining; 55409066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project GLint *params = (GLint *) 0; 55419066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 55429066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (!params_ref) { 55439066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ThrowNew(IAEClass, "params == null"); 55449066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project goto exit; 55459066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 55469066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (offset < 0) { 55479066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ThrowNew(IAEClass, "offset < 0"); 55489066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project goto exit; 55499066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 55509066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _remaining = _env->GetArrayLength(params_ref) - offset; 55519066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (_remaining < 1) { 55529066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ThrowNew(IAEClass, "length - offset < 1"); 55539066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project goto exit; 55549066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 55559066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project params_base = (GLint *) 55569066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->GetPrimitiveArrayCritical(params_ref, (jboolean *)0); 55579066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project params = params_base + offset; 55589066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 55599066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project glTexParameteriv( 55609066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLenum)target, 55619066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLenum)pname, 55629066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLint *)params 55639066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project ); 55649066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 55659066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectexit: 55669066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (params_base) { 55679066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ReleasePrimitiveArrayCritical(params_ref, params_base, 55689066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project JNI_ABORT); 55699066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 55709066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 55719066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 55729066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glTexParameteriv ( GLenum target, GLenum pname, const GLint *params ) */ 55739066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 55749066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glTexParameteriv__IILjava_nio_IntBuffer_2 55759066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jint target, jint pname, jobject params_buf) { 55769066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project jarray _array = (jarray) 0; 55779066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project jint _remaining; 55789066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project GLint *params = (GLint *) 0; 55799066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 55809066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project params = (GLint *)getPointer(_env, params_buf, &_array, &_remaining); 55819066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (_remaining < 1) { 55829066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ThrowNew(IAEClass, "remaining() < 1"); 55839066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project goto exit; 55849066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 55859066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project glTexParameteriv( 55869066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLenum)target, 55879066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLenum)pname, 55889066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLint *)params 55899066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project ); 55909066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 55919066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectexit: 55929066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (_array) { 55939066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project releasePointer(_env, _array, params, JNI_FALSE); 55949066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 55959066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 55969066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 55979066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glTexParameterxv ( GLenum target, GLenum pname, const GLfixed *params ) */ 55989066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 55999066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glTexParameterxv__II_3II 56009066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jint target, jint pname, jintArray params_ref, jint offset) { 56019066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project GLfixed *params_base = (GLfixed *) 0; 56029066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project jint _remaining; 56039066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project GLfixed *params = (GLfixed *) 0; 56049066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 56059066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (!params_ref) { 56069066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ThrowNew(IAEClass, "params == null"); 56079066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project goto exit; 56089066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 56099066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (offset < 0) { 56109066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ThrowNew(IAEClass, "offset < 0"); 56119066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project goto exit; 56129066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 56139066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _remaining = _env->GetArrayLength(params_ref) - offset; 56149066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (_remaining < 1) { 56159066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ThrowNew(IAEClass, "length - offset < 1"); 56169066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project goto exit; 56179066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 56189066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project params_base = (GLfixed *) 56199066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->GetPrimitiveArrayCritical(params_ref, (jboolean *)0); 56209066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project params = params_base + offset; 56219066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 56229066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project glTexParameterxv( 56239066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLenum)target, 56249066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLenum)pname, 56259066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLfixed *)params 56269066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project ); 56279066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 56289066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectexit: 56299066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (params_base) { 56309066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ReleasePrimitiveArrayCritical(params_ref, params_base, 56319066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project JNI_ABORT); 56329066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 56339066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 56349066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 56359066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glTexParameterxv ( GLenum target, GLenum pname, const GLfixed *params ) */ 56369066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 56379066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glTexParameterxv__IILjava_nio_IntBuffer_2 56389066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jint target, jint pname, jobject params_buf) { 56399066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project jarray _array = (jarray) 0; 56409066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project jint _remaining; 56419066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project GLfixed *params = (GLfixed *) 0; 56429066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 56439066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project params = (GLfixed *)getPointer(_env, params_buf, &_array, &_remaining); 56449066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (_remaining < 1) { 56459066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ThrowNew(IAEClass, "remaining() < 1"); 56469066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project goto exit; 56479066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 56489066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project glTexParameterxv( 56499066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLenum)target, 56509066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLenum)pname, 56519066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLfixed *)params 56529066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project ); 56539066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 56549066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectexit: 56559066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (_array) { 56569066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project releasePointer(_env, _array, params, JNI_FALSE); 56579066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 56589066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 56599066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 56609066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glVertexPointer ( GLint size, GLenum type, GLsizei stride, GLint offset ) */ 56619066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 56629066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glVertexPointer__IIII 56639066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jint size, jint type, jint stride, jint offset) { 56649066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project glVertexPointer( 56659066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLint)size, 56669066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLenum)type, 56679066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLsizei)stride, 56689066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (const GLvoid *)offset 56699066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project ); 56709066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 56719066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 56729066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glCurrentPaletteMatrixOES ( GLuint matrixpaletteindex ) */ 56739066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 56749066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glCurrentPaletteMatrixOES__I 56759066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jint matrixpaletteindex) { 56769066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ThrowNew(UOEClass, 56779066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project "glCurrentPaletteMatrixOES"); 56789066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 56799066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 56809066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glDrawTexfOES ( GLfloat x, GLfloat y, GLfloat z, GLfloat width, GLfloat height ) */ 56819066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 56829066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glDrawTexfOES__FFFFF 56839066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jfloat x, jfloat y, jfloat z, jfloat width, jfloat height) { 56849066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project glDrawTexfOES( 56859066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLfloat)x, 56869066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLfloat)y, 56879066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLfloat)z, 56889066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLfloat)width, 56899066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLfloat)height 56909066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project ); 56919066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 56929066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 56939066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glDrawTexfvOES ( const GLfloat *coords ) */ 56949066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 56959066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glDrawTexfvOES___3FI 56969066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jfloatArray coords_ref, jint offset) { 56979066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project GLfloat *coords_base = (GLfloat *) 0; 56989066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project jint _remaining; 56999066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project GLfloat *coords = (GLfloat *) 0; 57009066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 57019066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (!coords_ref) { 57029066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ThrowNew(IAEClass, "coords == null"); 57039066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project goto exit; 57049066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 57059066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (offset < 0) { 57069066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ThrowNew(IAEClass, "offset < 0"); 57079066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project goto exit; 57089066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 57099066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _remaining = _env->GetArrayLength(coords_ref) - offset; 57109066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (_remaining < 5) { 57119066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ThrowNew(IAEClass, "length - offset < 5"); 57129066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project goto exit; 57139066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 57149066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project coords_base = (GLfloat *) 57159066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->GetPrimitiveArrayCritical(coords_ref, (jboolean *)0); 57169066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project coords = coords_base + offset; 57179066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 57189066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project glDrawTexfvOES( 57199066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLfloat *)coords 57209066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project ); 57219066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 57229066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectexit: 57239066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (coords_base) { 57249066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ReleasePrimitiveArrayCritical(coords_ref, coords_base, 57259066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project JNI_ABORT); 57269066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 57279066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 57289066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 57299066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glDrawTexfvOES ( const GLfloat *coords ) */ 57309066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 57319066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glDrawTexfvOES__Ljava_nio_FloatBuffer_2 57329066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jobject coords_buf) { 57339066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project jarray _array = (jarray) 0; 57349066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project jint _remaining; 57359066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project GLfloat *coords = (GLfloat *) 0; 57369066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 57379066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project coords = (GLfloat *)getPointer(_env, coords_buf, &_array, &_remaining); 57389066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (_remaining < 5) { 57399066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ThrowNew(IAEClass, "remaining() < 5"); 57409066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project goto exit; 57419066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 57429066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project glDrawTexfvOES( 57439066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLfloat *)coords 57449066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project ); 57459066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 57469066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectexit: 57479066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (_array) { 57489066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project releasePointer(_env, _array, coords, JNI_FALSE); 57499066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 57509066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 57519066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 57529066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glDrawTexiOES ( GLint x, GLint y, GLint z, GLint width, GLint height ) */ 57539066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 57549066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glDrawTexiOES__IIIII 57559066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jint x, jint y, jint z, jint width, jint height) { 57569066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project glDrawTexiOES( 57579066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLint)x, 57589066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLint)y, 57599066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLint)z, 57609066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLint)width, 57619066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLint)height 57629066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project ); 57639066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 57649066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 57659066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glDrawTexivOES ( const GLint *coords ) */ 57669066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 57679066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glDrawTexivOES___3II 57689066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jintArray coords_ref, jint offset) { 57699066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project GLint *coords_base = (GLint *) 0; 57709066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project jint _remaining; 57719066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project GLint *coords = (GLint *) 0; 57729066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 57739066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (!coords_ref) { 57749066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ThrowNew(IAEClass, "coords == null"); 57759066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project goto exit; 57769066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 57779066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (offset < 0) { 57789066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ThrowNew(IAEClass, "offset < 0"); 57799066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project goto exit; 57809066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 57819066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _remaining = _env->GetArrayLength(coords_ref) - offset; 57829066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (_remaining < 5) { 57839066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ThrowNew(IAEClass, "length - offset < 5"); 57849066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project goto exit; 57859066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 57869066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project coords_base = (GLint *) 57879066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->GetPrimitiveArrayCritical(coords_ref, (jboolean *)0); 57889066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project coords = coords_base + offset; 57899066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 57909066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project glDrawTexivOES( 57919066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLint *)coords 57929066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project ); 57939066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 57949066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectexit: 57959066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (coords_base) { 57969066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ReleasePrimitiveArrayCritical(coords_ref, coords_base, 57979066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project JNI_ABORT); 57989066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 57999066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 58009066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 58019066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glDrawTexivOES ( const GLint *coords ) */ 58029066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 58039066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glDrawTexivOES__Ljava_nio_IntBuffer_2 58049066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jobject coords_buf) { 58059066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project jarray _array = (jarray) 0; 58069066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project jint _remaining; 58079066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project GLint *coords = (GLint *) 0; 58089066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 58099066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project coords = (GLint *)getPointer(_env, coords_buf, &_array, &_remaining); 58109066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (_remaining < 5) { 58119066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ThrowNew(IAEClass, "remaining() < 5"); 58129066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project goto exit; 58139066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 58149066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project glDrawTexivOES( 58159066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLint *)coords 58169066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project ); 58179066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 58189066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectexit: 58199066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (_array) { 58209066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project releasePointer(_env, _array, coords, JNI_FALSE); 58219066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 58229066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 58239066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 58249066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glDrawTexsOES ( GLshort x, GLshort y, GLshort z, GLshort width, GLshort height ) */ 58259066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 58269066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glDrawTexsOES__SSSSS 58279066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jshort x, jshort y, jshort z, jshort width, jshort height) { 58289066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project glDrawTexsOES( 58299066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLshort)x, 58309066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLshort)y, 58319066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLshort)z, 58329066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLshort)width, 58339066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLshort)height 58349066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project ); 58359066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 58369066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 58379066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glDrawTexsvOES ( const GLshort *coords ) */ 58389066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 58399066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glDrawTexsvOES___3SI 58409066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jshortArray coords_ref, jint offset) { 58419066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project GLshort *coords_base = (GLshort *) 0; 58429066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project jint _remaining; 58439066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project GLshort *coords = (GLshort *) 0; 58449066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 58459066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (!coords_ref) { 58469066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ThrowNew(IAEClass, "coords == null"); 58479066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project goto exit; 58489066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 58499066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (offset < 0) { 58509066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ThrowNew(IAEClass, "offset < 0"); 58519066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project goto exit; 58529066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 58539066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _remaining = _env->GetArrayLength(coords_ref) - offset; 58549066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (_remaining < 5) { 58559066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ThrowNew(IAEClass, "length - offset < 5"); 58569066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project goto exit; 58579066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 58589066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project coords_base = (GLshort *) 58599066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->GetPrimitiveArrayCritical(coords_ref, (jboolean *)0); 58609066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project coords = coords_base + offset; 58619066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 58629066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project glDrawTexsvOES( 58639066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLshort *)coords 58649066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project ); 58659066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 58669066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectexit: 58679066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (coords_base) { 58689066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ReleasePrimitiveArrayCritical(coords_ref, coords_base, 58699066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project JNI_ABORT); 58709066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 58719066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 58729066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 58739066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glDrawTexsvOES ( const GLshort *coords ) */ 58749066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 58759066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glDrawTexsvOES__Ljava_nio_ShortBuffer_2 58769066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jobject coords_buf) { 58779066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project jarray _array = (jarray) 0; 58789066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project jint _remaining; 58799066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project GLshort *coords = (GLshort *) 0; 58809066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 58819066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project coords = (GLshort *)getPointer(_env, coords_buf, &_array, &_remaining); 58829066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (_remaining < 5) { 58839066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ThrowNew(IAEClass, "remaining() < 5"); 58849066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project goto exit; 58859066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 58869066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project glDrawTexsvOES( 58879066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLshort *)coords 58889066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project ); 58899066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 58909066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectexit: 58919066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (_array) { 58929066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project releasePointer(_env, _array, coords, JNI_FALSE); 58939066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 58949066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 58959066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 58969066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glDrawTexxOES ( GLfixed x, GLfixed y, GLfixed z, GLfixed width, GLfixed height ) */ 58979066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 58989066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glDrawTexxOES__IIIII 58999066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jint x, jint y, jint z, jint width, jint height) { 59009066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project glDrawTexxOES( 59019066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLfixed)x, 59029066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLfixed)y, 59039066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLfixed)z, 59049066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLfixed)width, 59059066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLfixed)height 59069066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project ); 59079066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 59089066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 59099066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glDrawTexxvOES ( const GLfixed *coords ) */ 59109066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 59119066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glDrawTexxvOES___3II 59129066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jintArray coords_ref, jint offset) { 59139066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project GLfixed *coords_base = (GLfixed *) 0; 59149066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project jint _remaining; 59159066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project GLfixed *coords = (GLfixed *) 0; 59169066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 59179066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (!coords_ref) { 59189066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ThrowNew(IAEClass, "coords == null"); 59199066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project goto exit; 59209066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 59219066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (offset < 0) { 59229066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ThrowNew(IAEClass, "offset < 0"); 59239066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project goto exit; 59249066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 59259066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _remaining = _env->GetArrayLength(coords_ref) - offset; 59269066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (_remaining < 5) { 59279066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ThrowNew(IAEClass, "length - offset < 5"); 59289066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project goto exit; 59299066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 59309066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project coords_base = (GLfixed *) 59319066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->GetPrimitiveArrayCritical(coords_ref, (jboolean *)0); 59329066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project coords = coords_base + offset; 59339066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 59349066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project glDrawTexxvOES( 59359066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLfixed *)coords 59369066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project ); 59379066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 59389066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectexit: 59399066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (coords_base) { 59409066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ReleasePrimitiveArrayCritical(coords_ref, coords_base, 59419066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project JNI_ABORT); 59429066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 59439066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 59449066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 59459066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glDrawTexxvOES ( const GLfixed *coords ) */ 59469066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 59479066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glDrawTexxvOES__Ljava_nio_IntBuffer_2 59489066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jobject coords_buf) { 59499066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project jarray _array = (jarray) 0; 59509066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project jint _remaining; 59519066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project GLfixed *coords = (GLfixed *) 0; 59529066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 59539066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project coords = (GLfixed *)getPointer(_env, coords_buf, &_array, &_remaining); 59549066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (_remaining < 5) { 59559066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ThrowNew(IAEClass, "remaining() < 5"); 59569066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project goto exit; 59579066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 59589066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project glDrawTexxvOES( 59599066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (GLfixed *)coords 59609066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project ); 59619066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 59629066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectexit: 59639066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project if (_array) { 59649066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project releasePointer(_env, _array, coords, JNI_FALSE); 59659066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project } 59669066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 59679066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 59689066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glLoadPaletteFromModelViewMatrixOES ( void ) */ 59699066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 59709066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glLoadPaletteFromModelViewMatrixOES__ 59719066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this) { 59729066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ThrowNew(UOEClass, 59739066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project "glLoadPaletteFromModelViewMatrixOES"); 59749066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 59759066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 59769066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glMatrixIndexPointerOES ( GLint size, GLenum type, GLsizei stride, const GLvoid *pointer ) */ 59779066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 59789066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glMatrixIndexPointerOES__IIILjava_nio_Buffer_2 59799066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jint size, jint type, jint stride, jobject pointer_buf) { 59809066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ThrowNew(UOEClass, 59819066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project "glMatrixIndexPointerOES"); 59829066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 59839066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 59849066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glMatrixIndexPointerOES ( GLint size, GLenum type, GLsizei stride, GLint offset ) */ 59859066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 59869066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glMatrixIndexPointerOES__IIII 59879066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jint size, jint type, jint stride, jint offset) { 59889066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ThrowNew(UOEClass, 59899066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project "glMatrixIndexPointerOES"); 59909066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 59919066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 59929066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glWeightPointerOES ( GLint size, GLenum type, GLsizei stride, const GLvoid *pointer ) */ 59939066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 59949066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glWeightPointerOES__IIILjava_nio_Buffer_2 59959066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jint size, jint type, jint stride, jobject pointer_buf) { 59969066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ThrowNew(UOEClass, 59979066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project "glWeightPointerOES"); 59989066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 59999066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 60009066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glWeightPointerOES ( GLint size, GLenum type, GLsizei stride, GLint offset ) */ 60019066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 60029066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glWeightPointerOES__IIII 60039066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jint size, jint type, jint stride, jint offset) { 60049066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ThrowNew(UOEClass, 60059066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project "glWeightPointerOES"); 60069066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 60079066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 60089066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glBindFramebufferOES ( GLint target, GLint framebuffer ) */ 60099066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 60109066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glBindFramebufferOES__II 60119066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jint target, jint framebuffer) { 60129066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ThrowNew(UOEClass, 60139066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project "glBindFramebufferOES"); 60149066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 60159066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 60169066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glBindRenderbufferOES ( GLint target, GLint renderbuffer ) */ 60179066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 60189066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glBindRenderbufferOES__II 60199066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jint target, jint renderbuffer) { 60209066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ThrowNew(UOEClass, 60219066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project "glBindRenderbufferOES"); 60229066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 60239066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 60249066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glBlendEquation ( GLint mode ) */ 60259066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 60269066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glBlendEquation__I 60279066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jint mode) { 60289066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ThrowNew(UOEClass, 60299066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project "glBlendEquation"); 60309066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 60319066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 60329066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glBlendEquationSeparate ( GLint modeRGB, GLint modeAlpha ) */ 60339066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 60349066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glBlendEquationSeparate__II 60359066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jint modeRGB, jint modeAlpha) { 60369066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ThrowNew(UOEClass, 60379066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project "glBlendEquationSeparate"); 60389066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 60399066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 60409066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glBlendFuncSeparate ( GLint srcRGB, GLint dstRGB, GLint srcAlpha, GLint dstAlpha ) */ 60419066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 60429066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glBlendFuncSeparate__IIII 60439066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jint srcRGB, jint dstRGB, jint srcAlpha, jint dstAlpha) { 60449066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ThrowNew(UOEClass, 60459066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project "glBlendFuncSeparate"); 60469066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 60479066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 60489066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* GLint glCheckFramebufferStatusOES ( GLint target ) */ 60499066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic jint 60509066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glCheckFramebufferStatusOES__I 60519066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jint target) { 60529066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ThrowNew(UOEClass, 60539066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project "glCheckFramebufferStatusOES"); 60549066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project return 0; 60559066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 60569066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 60579066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glDeleteFramebuffersOES ( GLint n, GLint *framebuffers ) */ 60589066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 60599066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glDeleteFramebuffersOES__I_3II 60609066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jint n, jintArray framebuffers_ref, jint offset) { 60619066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ThrowNew(UOEClass, 60629066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project "glDeleteFramebuffersOES"); 60639066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 60649066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 60659066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glDeleteFramebuffersOES ( GLint n, GLint *framebuffers ) */ 60669066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 60679066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glDeleteFramebuffersOES__ILjava_nio_IntBuffer_2 60689066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jint n, jobject framebuffers_buf) { 60699066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ThrowNew(UOEClass, 60709066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project "glDeleteFramebuffersOES"); 60719066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 60729066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 60739066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glDeleteRenderbuffersOES ( GLint n, GLint *renderbuffers ) */ 60749066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 60759066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glDeleteRenderbuffersOES__I_3II 60769066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jint n, jintArray renderbuffers_ref, jint offset) { 60779066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ThrowNew(UOEClass, 60789066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project "glDeleteRenderbuffersOES"); 60799066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 60809066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 60819066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glDeleteRenderbuffersOES ( GLint n, GLint *renderbuffers ) */ 60829066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 60839066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glDeleteRenderbuffersOES__ILjava_nio_IntBuffer_2 60849066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jint n, jobject renderbuffers_buf) { 60859066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ThrowNew(UOEClass, 60869066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project "glDeleteRenderbuffersOES"); 60879066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 60889066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 60899066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glFramebufferRenderbufferOES ( GLint target, GLint attachment, GLint renderbuffertarget, GLint renderbuffer ) */ 60909066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 60919066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glFramebufferRenderbufferOES__IIII 60929066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jint target, jint attachment, jint renderbuffertarget, jint renderbuffer) { 60939066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ThrowNew(UOEClass, 60949066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project "glFramebufferRenderbufferOES"); 60959066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 60969066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 60979066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glFramebufferTexture2DOES ( GLint target, GLint attachment, GLint textarget, GLint texture, GLint level ) */ 60989066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 60999066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glFramebufferTexture2DOES__IIIII 61009066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jint target, jint attachment, jint textarget, jint texture, jint level) { 61019066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ThrowNew(UOEClass, 61029066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project "glFramebufferTexture2DOES"); 61039066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 61049066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 61059066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glGenerateMipmapOES ( GLint target ) */ 61069066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 61079066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glGenerateMipmapOES__I 61089066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jint target) { 61099066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ThrowNew(UOEClass, 61109066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project "glGenerateMipmapOES"); 61119066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 61129066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 61139066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glGenFramebuffersOES ( GLint n, GLint *framebuffers ) */ 61149066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 61159066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glGenFramebuffersOES__I_3II 61169066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jint n, jintArray framebuffers_ref, jint offset) { 61179066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ThrowNew(UOEClass, 61189066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project "glGenFramebuffersOES"); 61199066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 61209066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 61219066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glGenFramebuffersOES ( GLint n, GLint *framebuffers ) */ 61229066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 61239066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glGenFramebuffersOES__ILjava_nio_IntBuffer_2 61249066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jint n, jobject framebuffers_buf) { 61259066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ThrowNew(UOEClass, 61269066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project "glGenFramebuffersOES"); 61279066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 61289066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 61299066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glGenRenderbuffersOES ( GLint n, GLint *renderbuffers ) */ 61309066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 61319066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glGenRenderbuffersOES__I_3II 61329066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jint n, jintArray renderbuffers_ref, jint offset) { 61339066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ThrowNew(UOEClass, 61349066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project "glGenRenderbuffersOES"); 61359066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 61369066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 61379066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glGenRenderbuffersOES ( GLint n, GLint *renderbuffers ) */ 61389066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 61399066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glGenRenderbuffersOES__ILjava_nio_IntBuffer_2 61409066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jint n, jobject renderbuffers_buf) { 61419066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ThrowNew(UOEClass, 61429066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project "glGenRenderbuffersOES"); 61439066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 61449066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 61459066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glGetFramebufferAttachmentParameterivOES ( GLint target, GLint attachment, GLint pname, GLint *params ) */ 61469066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 61479066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glGetFramebufferAttachmentParameterivOES__III_3II 61489066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jint target, jint attachment, jint pname, jintArray params_ref, jint offset) { 61499066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ThrowNew(UOEClass, 61509066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project "glGetFramebufferAttachmentParameterivOES"); 61519066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 61529066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 61539066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glGetFramebufferAttachmentParameterivOES ( GLint target, GLint attachment, GLint pname, GLint *params ) */ 61549066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 61559066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glGetFramebufferAttachmentParameterivOES__IIILjava_nio_IntBuffer_2 61569066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jint target, jint attachment, jint pname, jobject params_buf) { 61579066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ThrowNew(UOEClass, 61589066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project "glGetFramebufferAttachmentParameterivOES"); 61599066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 61609066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 61619066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glGetRenderbufferParameterivOES ( GLint target, GLint pname, GLint *params ) */ 61629066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 61639066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glGetRenderbufferParameterivOES__II_3II 61649066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jint target, jint pname, jintArray params_ref, jint offset) { 61659066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ThrowNew(UOEClass, 61669066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project "glGetRenderbufferParameterivOES"); 61679066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 61689066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 61699066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glGetRenderbufferParameterivOES ( GLint target, GLint pname, GLint *params ) */ 61709066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 61719066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glGetRenderbufferParameterivOES__IILjava_nio_IntBuffer_2 61729066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jint target, jint pname, jobject params_buf) { 61739066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ThrowNew(UOEClass, 61749066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project "glGetRenderbufferParameterivOES"); 61759066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 61769066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 61779066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glGetTexGenfv ( GLint coord, GLint pname, GLfloat *params ) */ 61789066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 61799066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glGetTexGenfv__II_3FI 61809066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jint coord, jint pname, jfloatArray params_ref, jint offset) { 61819066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ThrowNew(UOEClass, 61829066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project "glGetTexGenfv"); 61839066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 61849066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 61859066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glGetTexGenfv ( GLint coord, GLint pname, GLfloat *params ) */ 61869066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 61879066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glGetTexGenfv__IILjava_nio_FloatBuffer_2 61889066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jint coord, jint pname, jobject params_buf) { 61899066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ThrowNew(UOEClass, 61909066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project "glGetTexGenfv"); 61919066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 61929066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 61939066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glGetTexGeniv ( GLint coord, GLint pname, GLint *params ) */ 61949066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 61959066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glGetTexGeniv__II_3II 61969066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jint coord, jint pname, jintArray params_ref, jint offset) { 61979066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ThrowNew(UOEClass, 61989066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project "glGetTexGeniv"); 61999066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 62009066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 62019066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glGetTexGeniv ( GLint coord, GLint pname, GLint *params ) */ 62029066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 62039066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glGetTexGeniv__IILjava_nio_IntBuffer_2 62049066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jint coord, jint pname, jobject params_buf) { 62059066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ThrowNew(UOEClass, 62069066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project "glGetTexGeniv"); 62079066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 62089066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 62099066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glGetTexGenxv ( GLint coord, GLint pname, GLint *params ) */ 62109066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 62119066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glGetTexGenxv__II_3II 62129066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jint coord, jint pname, jintArray params_ref, jint offset) { 62139066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ThrowNew(UOEClass, 62149066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project "glGetTexGenxv"); 62159066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 62169066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 62179066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glGetTexGenxv ( GLint coord, GLint pname, GLint *params ) */ 62189066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 62199066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glGetTexGenxv__IILjava_nio_IntBuffer_2 62209066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jint coord, jint pname, jobject params_buf) { 62219066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ThrowNew(UOEClass, 62229066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project "glGetTexGenxv"); 62239066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 62249066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 62259066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* GLboolean glIsFramebufferOES ( GLint framebuffer ) */ 62269066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic jboolean 62279066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glIsFramebufferOES__I 62289066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jint framebuffer) { 62299066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ThrowNew(UOEClass, 62309066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project "glIsFramebufferOES"); 62319066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project return JNI_FALSE; 62329066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 62339066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 62349066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* GLboolean glIsRenderbufferOES ( GLint renderbuffer ) */ 62359066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic jboolean 62369066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glIsRenderbufferOES__I 62379066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jint renderbuffer) { 62389066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ThrowNew(UOEClass, 62399066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project "glIsRenderbufferOES"); 62409066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project return JNI_FALSE; 62419066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 62429066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 62439066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glRenderbufferStorageOES ( GLint target, GLint internalformat, GLint width, GLint height ) */ 62449066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 62459066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glRenderbufferStorageOES__IIII 62469066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jint target, jint internalformat, jint width, jint height) { 62479066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ThrowNew(UOEClass, 62489066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project "glRenderbufferStorageOES"); 62499066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 62509066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 62519066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glTexGenf ( GLint coord, GLint pname, GLfloat param ) */ 62529066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 62539066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glTexGenf__IIF 62549066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jint coord, jint pname, jfloat param) { 62559066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ThrowNew(UOEClass, 62569066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project "glTexGenf"); 62579066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 62589066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 62599066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glTexGenfv ( GLint coord, GLint pname, GLfloat *params ) */ 62609066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 62619066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glTexGenfv__II_3FI 62629066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jint coord, jint pname, jfloatArray params_ref, jint offset) { 62639066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ThrowNew(UOEClass, 62649066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project "glTexGenfv"); 62659066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 62669066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 62679066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glTexGenfv ( GLint coord, GLint pname, GLfloat *params ) */ 62689066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 62699066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glTexGenfv__IILjava_nio_FloatBuffer_2 62709066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jint coord, jint pname, jobject params_buf) { 62719066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ThrowNew(UOEClass, 62729066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project "glTexGenfv"); 62739066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 62749066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 62759066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glTexGeni ( GLint coord, GLint pname, GLint param ) */ 62769066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 62779066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glTexGeni__III 62789066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jint coord, jint pname, jint param) { 62799066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ThrowNew(UOEClass, 62809066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project "glTexGeni"); 62819066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 62829066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 62839066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glTexGeniv ( GLint coord, GLint pname, GLint *params ) */ 62849066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 62859066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glTexGeniv__II_3II 62869066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jint coord, jint pname, jintArray params_ref, jint offset) { 62879066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ThrowNew(UOEClass, 62889066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project "glTexGeniv"); 62899066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 62909066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 62919066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glTexGeniv ( GLint coord, GLint pname, GLint *params ) */ 62929066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 62939066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glTexGeniv__IILjava_nio_IntBuffer_2 62949066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jint coord, jint pname, jobject params_buf) { 62959066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ThrowNew(UOEClass, 62969066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project "glTexGeniv"); 62979066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 62989066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 62999066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glTexGenx ( GLint coord, GLint pname, GLint param ) */ 63009066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 63019066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glTexGenx__III 63029066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jint coord, jint pname, jint param) { 63039066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ThrowNew(UOEClass, 63049066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project "glTexGenx"); 63059066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 63069066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 63079066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glTexGenxv ( GLint coord, GLint pname, GLint *params ) */ 63089066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 63099066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glTexGenxv__II_3II 63109066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jint coord, jint pname, jintArray params_ref, jint offset) { 63119066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ThrowNew(UOEClass, 63129066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project "glTexGenxv"); 63139066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 63149066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 63159066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* void glTexGenxv ( GLint coord, GLint pname, GLint *params ) */ 63169066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic void 63179066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectandroid_glTexGenxv__IILjava_nio_IntBuffer_2 63189066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project (JNIEnv *_env, jobject _this, jint coord, jint pname, jobject params_buf) { 63199066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project _env->ThrowNew(UOEClass, 63209066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project "glTexGenxv"); 63219066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 63229066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 63239066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic const char *classPathName = "com/google/android/gles_jni/GLImpl"; 63249066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 63259066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectstatic JNINativeMethod methods[] = { 63269066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"_nativeClassInit", "()V", (void*)nativeClassInit }, 63279066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glActiveTexture", "(I)V", (void *) android_glActiveTexture__I }, 63289066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glAlphaFunc", "(IF)V", (void *) android_glAlphaFunc__IF }, 63299066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glAlphaFuncx", "(II)V", (void *) android_glAlphaFuncx__II }, 63309066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glBindTexture", "(II)V", (void *) android_glBindTexture__II }, 63319066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glBlendFunc", "(II)V", (void *) android_glBlendFunc__II }, 63329066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glClear", "(I)V", (void *) android_glClear__I }, 63339066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glClearColor", "(FFFF)V", (void *) android_glClearColor__FFFF }, 63349066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glClearColorx", "(IIII)V", (void *) android_glClearColorx__IIII }, 63359066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glClearDepthf", "(F)V", (void *) android_glClearDepthf__F }, 63369066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glClearDepthx", "(I)V", (void *) android_glClearDepthx__I }, 63379066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glClearStencil", "(I)V", (void *) android_glClearStencil__I }, 63389066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glClientActiveTexture", "(I)V", (void *) android_glClientActiveTexture__I }, 63399066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glColor4f", "(FFFF)V", (void *) android_glColor4f__FFFF }, 63409066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glColor4x", "(IIII)V", (void *) android_glColor4x__IIII }, 63419066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glColorMask", "(ZZZZ)V", (void *) android_glColorMask__ZZZZ }, 63429066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glColorPointerBounds", "(IIILjava/nio/Buffer;I)V", (void *) android_glColorPointerBounds__IIILjava_nio_Buffer_2I }, 63439066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glCompressedTexImage2D", "(IIIIIIILjava/nio/Buffer;)V", (void *) android_glCompressedTexImage2D__IIIIIIILjava_nio_Buffer_2 }, 63449066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glCompressedTexSubImage2D", "(IIIIIIIILjava/nio/Buffer;)V", (void *) android_glCompressedTexSubImage2D__IIIIIIIILjava_nio_Buffer_2 }, 63459066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glCopyTexImage2D", "(IIIIIIII)V", (void *) android_glCopyTexImage2D__IIIIIIII }, 63469066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glCopyTexSubImage2D", "(IIIIIIII)V", (void *) android_glCopyTexSubImage2D__IIIIIIII }, 63479066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glCullFace", "(I)V", (void *) android_glCullFace__I }, 63489066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glDeleteTextures", "(I[II)V", (void *) android_glDeleteTextures__I_3II }, 63499066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glDeleteTextures", "(ILjava/nio/IntBuffer;)V", (void *) android_glDeleteTextures__ILjava_nio_IntBuffer_2 }, 63509066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glDepthFunc", "(I)V", (void *) android_glDepthFunc__I }, 63519066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glDepthMask", "(Z)V", (void *) android_glDepthMask__Z }, 63529066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glDepthRangef", "(FF)V", (void *) android_glDepthRangef__FF }, 63539066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glDepthRangex", "(II)V", (void *) android_glDepthRangex__II }, 63549066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glDisable", "(I)V", (void *) android_glDisable__I }, 63559066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glDisableClientState", "(I)V", (void *) android_glDisableClientState__I }, 63569066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glDrawArrays", "(III)V", (void *) android_glDrawArrays__III }, 63579066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glDrawElements", "(IIILjava/nio/Buffer;)V", (void *) android_glDrawElements__IIILjava_nio_Buffer_2 }, 63589066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glEnable", "(I)V", (void *) android_glEnable__I }, 63599066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glEnableClientState", "(I)V", (void *) android_glEnableClientState__I }, 63609066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glFinish", "()V", (void *) android_glFinish__ }, 63619066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glFlush", "()V", (void *) android_glFlush__ }, 63629066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glFogf", "(IF)V", (void *) android_glFogf__IF }, 63639066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glFogfv", "(I[FI)V", (void *) android_glFogfv__I_3FI }, 63649066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glFogfv", "(ILjava/nio/FloatBuffer;)V", (void *) android_glFogfv__ILjava_nio_FloatBuffer_2 }, 63659066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glFogx", "(II)V", (void *) android_glFogx__II }, 63669066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glFogxv", "(I[II)V", (void *) android_glFogxv__I_3II }, 63679066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glFogxv", "(ILjava/nio/IntBuffer;)V", (void *) android_glFogxv__ILjava_nio_IntBuffer_2 }, 63689066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glFrontFace", "(I)V", (void *) android_glFrontFace__I }, 63699066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glFrustumf", "(FFFFFF)V", (void *) android_glFrustumf__FFFFFF }, 63709066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glFrustumx", "(IIIIII)V", (void *) android_glFrustumx__IIIIII }, 63719066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glGenTextures", "(I[II)V", (void *) android_glGenTextures__I_3II }, 63729066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glGenTextures", "(ILjava/nio/IntBuffer;)V", (void *) android_glGenTextures__ILjava_nio_IntBuffer_2 }, 63739066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glGetError", "()I", (void *) android_glGetError__ }, 63749066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glGetIntegerv", "(I[II)V", (void *) android_glGetIntegerv__I_3II }, 63759066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glGetIntegerv", "(ILjava/nio/IntBuffer;)V", (void *) android_glGetIntegerv__ILjava_nio_IntBuffer_2 }, 63769066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"_glGetString", "(I)Ljava/lang/String;", (void *) android_glGetString }, 63779066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glHint", "(II)V", (void *) android_glHint__II }, 63789066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glLightModelf", "(IF)V", (void *) android_glLightModelf__IF }, 63799066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glLightModelfv", "(I[FI)V", (void *) android_glLightModelfv__I_3FI }, 63809066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glLightModelfv", "(ILjava/nio/FloatBuffer;)V", (void *) android_glLightModelfv__ILjava_nio_FloatBuffer_2 }, 63819066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glLightModelx", "(II)V", (void *) android_glLightModelx__II }, 63829066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glLightModelxv", "(I[II)V", (void *) android_glLightModelxv__I_3II }, 63839066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glLightModelxv", "(ILjava/nio/IntBuffer;)V", (void *) android_glLightModelxv__ILjava_nio_IntBuffer_2 }, 63849066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glLightf", "(IIF)V", (void *) android_glLightf__IIF }, 63859066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glLightfv", "(II[FI)V", (void *) android_glLightfv__II_3FI }, 63869066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glLightfv", "(IILjava/nio/FloatBuffer;)V", (void *) android_glLightfv__IILjava_nio_FloatBuffer_2 }, 63879066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glLightx", "(III)V", (void *) android_glLightx__III }, 63889066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glLightxv", "(II[II)V", (void *) android_glLightxv__II_3II }, 63899066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glLightxv", "(IILjava/nio/IntBuffer;)V", (void *) android_glLightxv__IILjava_nio_IntBuffer_2 }, 63909066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glLineWidth", "(F)V", (void *) android_glLineWidth__F }, 63919066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glLineWidthx", "(I)V", (void *) android_glLineWidthx__I }, 63929066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glLoadIdentity", "()V", (void *) android_glLoadIdentity__ }, 63939066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glLoadMatrixf", "([FI)V", (void *) android_glLoadMatrixf___3FI }, 63949066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glLoadMatrixf", "(Ljava/nio/FloatBuffer;)V", (void *) android_glLoadMatrixf__Ljava_nio_FloatBuffer_2 }, 63959066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glLoadMatrixx", "([II)V", (void *) android_glLoadMatrixx___3II }, 63969066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glLoadMatrixx", "(Ljava/nio/IntBuffer;)V", (void *) android_glLoadMatrixx__Ljava_nio_IntBuffer_2 }, 63979066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glLogicOp", "(I)V", (void *) android_glLogicOp__I }, 63989066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glMaterialf", "(IIF)V", (void *) android_glMaterialf__IIF }, 63999066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glMaterialfv", "(II[FI)V", (void *) android_glMaterialfv__II_3FI }, 64009066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glMaterialfv", "(IILjava/nio/FloatBuffer;)V", (void *) android_glMaterialfv__IILjava_nio_FloatBuffer_2 }, 64019066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glMaterialx", "(III)V", (void *) android_glMaterialx__III }, 64029066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glMaterialxv", "(II[II)V", (void *) android_glMaterialxv__II_3II }, 64039066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glMaterialxv", "(IILjava/nio/IntBuffer;)V", (void *) android_glMaterialxv__IILjava_nio_IntBuffer_2 }, 64049066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glMatrixMode", "(I)V", (void *) android_glMatrixMode__I }, 64059066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glMultMatrixf", "([FI)V", (void *) android_glMultMatrixf___3FI }, 64069066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glMultMatrixf", "(Ljava/nio/FloatBuffer;)V", (void *) android_glMultMatrixf__Ljava_nio_FloatBuffer_2 }, 64079066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glMultMatrixx", "([II)V", (void *) android_glMultMatrixx___3II }, 64089066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glMultMatrixx", "(Ljava/nio/IntBuffer;)V", (void *) android_glMultMatrixx__Ljava_nio_IntBuffer_2 }, 64099066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glMultiTexCoord4f", "(IFFFF)V", (void *) android_glMultiTexCoord4f__IFFFF }, 64109066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glMultiTexCoord4x", "(IIIII)V", (void *) android_glMultiTexCoord4x__IIIII }, 64119066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glNormal3f", "(FFF)V", (void *) android_glNormal3f__FFF }, 64129066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glNormal3x", "(III)V", (void *) android_glNormal3x__III }, 64139066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glNormalPointerBounds", "(IILjava/nio/Buffer;I)V", (void *) android_glNormalPointerBounds__IILjava_nio_Buffer_2I }, 64149066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glOrthof", "(FFFFFF)V", (void *) android_glOrthof__FFFFFF }, 64159066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glOrthox", "(IIIIII)V", (void *) android_glOrthox__IIIIII }, 64169066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glPixelStorei", "(II)V", (void *) android_glPixelStorei__II }, 64179066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glPointSize", "(F)V", (void *) android_glPointSize__F }, 64189066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glPointSizex", "(I)V", (void *) android_glPointSizex__I }, 64199066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glPolygonOffset", "(FF)V", (void *) android_glPolygonOffset__FF }, 64209066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glPolygonOffsetx", "(II)V", (void *) android_glPolygonOffsetx__II }, 64219066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glPopMatrix", "()V", (void *) android_glPopMatrix__ }, 64229066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glPushMatrix", "()V", (void *) android_glPushMatrix__ }, 64239066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glReadPixels", "(IIIIIILjava/nio/Buffer;)V", (void *) android_glReadPixels__IIIIIILjava_nio_Buffer_2 }, 64249066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glRotatef", "(FFFF)V", (void *) android_glRotatef__FFFF }, 64259066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glRotatex", "(IIII)V", (void *) android_glRotatex__IIII }, 64269066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glSampleCoverage", "(FZ)V", (void *) android_glSampleCoverage__FZ }, 64279066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glSampleCoveragex", "(IZ)V", (void *) android_glSampleCoveragex__IZ }, 64289066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glScalef", "(FFF)V", (void *) android_glScalef__FFF }, 64299066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glScalex", "(III)V", (void *) android_glScalex__III }, 64309066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glScissor", "(IIII)V", (void *) android_glScissor__IIII }, 64319066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glShadeModel", "(I)V", (void *) android_glShadeModel__I }, 64329066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glStencilFunc", "(III)V", (void *) android_glStencilFunc__III }, 64339066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glStencilMask", "(I)V", (void *) android_glStencilMask__I }, 64349066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glStencilOp", "(III)V", (void *) android_glStencilOp__III }, 64359066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glTexCoordPointerBounds", "(IIILjava/nio/Buffer;I)V", (void *) android_glTexCoordPointerBounds__IIILjava_nio_Buffer_2I }, 64369066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glTexEnvf", "(IIF)V", (void *) android_glTexEnvf__IIF }, 64379066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glTexEnvfv", "(II[FI)V", (void *) android_glTexEnvfv__II_3FI }, 64389066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glTexEnvfv", "(IILjava/nio/FloatBuffer;)V", (void *) android_glTexEnvfv__IILjava_nio_FloatBuffer_2 }, 64399066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glTexEnvx", "(III)V", (void *) android_glTexEnvx__III }, 64409066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glTexEnvxv", "(II[II)V", (void *) android_glTexEnvxv__II_3II }, 64419066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glTexEnvxv", "(IILjava/nio/IntBuffer;)V", (void *) android_glTexEnvxv__IILjava_nio_IntBuffer_2 }, 64429066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glTexImage2D", "(IIIIIIIILjava/nio/Buffer;)V", (void *) android_glTexImage2D__IIIIIIIILjava_nio_Buffer_2 }, 64439066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glTexParameterf", "(IIF)V", (void *) android_glTexParameterf__IIF }, 64449066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glTexParameterx", "(III)V", (void *) android_glTexParameterx__III }, 64459066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glTexSubImage2D", "(IIIIIIIILjava/nio/Buffer;)V", (void *) android_glTexSubImage2D__IIIIIIIILjava_nio_Buffer_2 }, 64469066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glTranslatef", "(FFF)V", (void *) android_glTranslatef__FFF }, 64479066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glTranslatex", "(III)V", (void *) android_glTranslatex__III }, 64489066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glVertexPointerBounds", "(IIILjava/nio/Buffer;I)V", (void *) android_glVertexPointerBounds__IIILjava_nio_Buffer_2I }, 64499066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glViewport", "(IIII)V", (void *) android_glViewport__IIII }, 64509066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glQueryMatrixxOES", "([II[II)I", (void *) android_glQueryMatrixxOES___3II_3II }, 64519066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glQueryMatrixxOES", "(Ljava/nio/IntBuffer;Ljava/nio/IntBuffer;)I", (void *) android_glQueryMatrixxOES__Ljava_nio_IntBuffer_2Ljava_nio_IntBuffer_2 }, 64529066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glBindBuffer", "(II)V", (void *) android_glBindBuffer__II }, 64539066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glBufferData", "(IILjava/nio/Buffer;I)V", (void *) android_glBufferData__IILjava_nio_Buffer_2I }, 64549066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glBufferSubData", "(IIILjava/nio/Buffer;)V", (void *) android_glBufferSubData__IIILjava_nio_Buffer_2 }, 64559066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glClipPlanef", "(I[FI)V", (void *) android_glClipPlanef__I_3FI }, 64569066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glClipPlanef", "(ILjava/nio/FloatBuffer;)V", (void *) android_glClipPlanef__ILjava_nio_FloatBuffer_2 }, 64579066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glClipPlanex", "(I[II)V", (void *) android_glClipPlanex__I_3II }, 64589066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glClipPlanex", "(ILjava/nio/IntBuffer;)V", (void *) android_glClipPlanex__ILjava_nio_IntBuffer_2 }, 64599066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glColor4ub", "(BBBB)V", (void *) android_glColor4ub__BBBB }, 64609066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glColorPointer", "(IIII)V", (void *) android_glColorPointer__IIII }, 64619066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glDeleteBuffers", "(I[II)V", (void *) android_glDeleteBuffers__I_3II }, 64629066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glDeleteBuffers", "(ILjava/nio/IntBuffer;)V", (void *) android_glDeleteBuffers__ILjava_nio_IntBuffer_2 }, 64639066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glDrawElements", "(IIII)V", (void *) android_glDrawElements__IIII }, 64649066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glGenBuffers", "(I[II)V", (void *) android_glGenBuffers__I_3II }, 64659066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glGenBuffers", "(ILjava/nio/IntBuffer;)V", (void *) android_glGenBuffers__ILjava_nio_IntBuffer_2 }, 64669066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glGetBooleanv", "(I[ZI)V", (void *) android_glGetBooleanv__I_3ZI }, 64679066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glGetBooleanv", "(ILjava/nio/IntBuffer;)V", (void *) android_glGetBooleanv__ILjava_nio_IntBuffer_2 }, 64689066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glGetBufferParameteriv", "(II[II)V", (void *) android_glGetBufferParameteriv__II_3II }, 64699066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glGetBufferParameteriv", "(IILjava/nio/IntBuffer;)V", (void *) android_glGetBufferParameteriv__IILjava_nio_IntBuffer_2 }, 64709066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glGetClipPlanef", "(I[FI)V", (void *) android_glGetClipPlanef__I_3FI }, 64719066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glGetClipPlanef", "(ILjava/nio/FloatBuffer;)V", (void *) android_glGetClipPlanef__ILjava_nio_FloatBuffer_2 }, 64729066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glGetClipPlanex", "(I[II)V", (void *) android_glGetClipPlanex__I_3II }, 64739066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glGetClipPlanex", "(ILjava/nio/IntBuffer;)V", (void *) android_glGetClipPlanex__ILjava_nio_IntBuffer_2 }, 64749066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glGetFixedv", "(I[II)V", (void *) android_glGetFixedv__I_3II }, 64759066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glGetFixedv", "(ILjava/nio/IntBuffer;)V", (void *) android_glGetFixedv__ILjava_nio_IntBuffer_2 }, 64769066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glGetFloatv", "(I[FI)V", (void *) android_glGetFloatv__I_3FI }, 64779066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glGetFloatv", "(ILjava/nio/FloatBuffer;)V", (void *) android_glGetFloatv__ILjava_nio_FloatBuffer_2 }, 64789066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glGetLightfv", "(II[FI)V", (void *) android_glGetLightfv__II_3FI }, 64799066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glGetLightfv", "(IILjava/nio/FloatBuffer;)V", (void *) android_glGetLightfv__IILjava_nio_FloatBuffer_2 }, 64809066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glGetLightxv", "(II[II)V", (void *) android_glGetLightxv__II_3II }, 64819066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glGetLightxv", "(IILjava/nio/IntBuffer;)V", (void *) android_glGetLightxv__IILjava_nio_IntBuffer_2 }, 64829066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glGetMaterialfv", "(II[FI)V", (void *) android_glGetMaterialfv__II_3FI }, 64839066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glGetMaterialfv", "(IILjava/nio/FloatBuffer;)V", (void *) android_glGetMaterialfv__IILjava_nio_FloatBuffer_2 }, 64849066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glGetMaterialxv", "(II[II)V", (void *) android_glGetMaterialxv__II_3II }, 64859066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glGetMaterialxv", "(IILjava/nio/IntBuffer;)V", (void *) android_glGetMaterialxv__IILjava_nio_IntBuffer_2 }, 64869066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glGetTexEnviv", "(II[II)V", (void *) android_glGetTexEnviv__II_3II }, 64879066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glGetTexEnviv", "(IILjava/nio/IntBuffer;)V", (void *) android_glGetTexEnviv__IILjava_nio_IntBuffer_2 }, 64889066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glGetTexEnvxv", "(II[II)V", (void *) android_glGetTexEnvxv__II_3II }, 64899066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glGetTexEnvxv", "(IILjava/nio/IntBuffer;)V", (void *) android_glGetTexEnvxv__IILjava_nio_IntBuffer_2 }, 64909066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glGetTexParameterfv", "(II[FI)V", (void *) android_glGetTexParameterfv__II_3FI }, 64919066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glGetTexParameterfv", "(IILjava/nio/FloatBuffer;)V", (void *) android_glGetTexParameterfv__IILjava_nio_FloatBuffer_2 }, 64929066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glGetTexParameteriv", "(II[II)V", (void *) android_glGetTexParameteriv__II_3II }, 64939066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glGetTexParameteriv", "(IILjava/nio/IntBuffer;)V", (void *) android_glGetTexParameteriv__IILjava_nio_IntBuffer_2 }, 64949066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glGetTexParameterxv", "(II[II)V", (void *) android_glGetTexParameterxv__II_3II }, 64959066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glGetTexParameterxv", "(IILjava/nio/IntBuffer;)V", (void *) android_glGetTexParameterxv__IILjava_nio_IntBuffer_2 }, 64969066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glIsBuffer", "(I)Z", (void *) android_glIsBuffer__I }, 64979066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glIsEnabled", "(I)Z", (void *) android_glIsEnabled__I }, 64989066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glIsTexture", "(I)Z", (void *) android_glIsTexture__I }, 64999066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glNormalPointer", "(III)V", (void *) android_glNormalPointer__III }, 65009066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glPointParameterf", "(IF)V", (void *) android_glPointParameterf__IF }, 65019066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glPointParameterfv", "(I[FI)V", (void *) android_glPointParameterfv__I_3FI }, 65029066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glPointParameterfv", "(ILjava/nio/FloatBuffer;)V", (void *) android_glPointParameterfv__ILjava_nio_FloatBuffer_2 }, 65039066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glPointParameterx", "(II)V", (void *) android_glPointParameterx__II }, 65049066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glPointParameterxv", "(I[II)V", (void *) android_glPointParameterxv__I_3II }, 65059066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glPointParameterxv", "(ILjava/nio/IntBuffer;)V", (void *) android_glPointParameterxv__ILjava_nio_IntBuffer_2 }, 65069066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glPointSizePointerOES", "(IILjava/nio/Buffer;)V", (void *) android_glPointSizePointerOES__IILjava_nio_Buffer_2 }, 65079066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glTexCoordPointer", "(IIII)V", (void *) android_glTexCoordPointer__IIII }, 65089066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glTexEnvi", "(III)V", (void *) android_glTexEnvi__III }, 65099066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glTexEnviv", "(II[II)V", (void *) android_glTexEnviv__II_3II }, 65109066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glTexEnviv", "(IILjava/nio/IntBuffer;)V", (void *) android_glTexEnviv__IILjava_nio_IntBuffer_2 }, 65119066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glTexParameterfv", "(II[FI)V", (void *) android_glTexParameterfv__II_3FI }, 65129066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glTexParameterfv", "(IILjava/nio/FloatBuffer;)V", (void *) android_glTexParameterfv__IILjava_nio_FloatBuffer_2 }, 65139066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glTexParameteri", "(III)V", (void *) android_glTexParameteri__III }, 65149066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glTexParameteriv", "(II[II)V", (void *) android_glTexParameteriv__II_3II }, 65159066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glTexParameteriv", "(IILjava/nio/IntBuffer;)V", (void *) android_glTexParameteriv__IILjava_nio_IntBuffer_2 }, 65169066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glTexParameterxv", "(II[II)V", (void *) android_glTexParameterxv__II_3II }, 65179066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glTexParameterxv", "(IILjava/nio/IntBuffer;)V", (void *) android_glTexParameterxv__IILjava_nio_IntBuffer_2 }, 65189066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glVertexPointer", "(IIII)V", (void *) android_glVertexPointer__IIII }, 65199066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glCurrentPaletteMatrixOES", "(I)V", (void *) android_glCurrentPaletteMatrixOES__I }, 65209066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glDrawTexfOES", "(FFFFF)V", (void *) android_glDrawTexfOES__FFFFF }, 65219066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glDrawTexfvOES", "([FI)V", (void *) android_glDrawTexfvOES___3FI }, 65229066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glDrawTexfvOES", "(Ljava/nio/FloatBuffer;)V", (void *) android_glDrawTexfvOES__Ljava_nio_FloatBuffer_2 }, 65239066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glDrawTexiOES", "(IIIII)V", (void *) android_glDrawTexiOES__IIIII }, 65249066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glDrawTexivOES", "([II)V", (void *) android_glDrawTexivOES___3II }, 65259066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glDrawTexivOES", "(Ljava/nio/IntBuffer;)V", (void *) android_glDrawTexivOES__Ljava_nio_IntBuffer_2 }, 65269066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glDrawTexsOES", "(SSSSS)V", (void *) android_glDrawTexsOES__SSSSS }, 65279066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glDrawTexsvOES", "([SI)V", (void *) android_glDrawTexsvOES___3SI }, 65289066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glDrawTexsvOES", "(Ljava/nio/ShortBuffer;)V", (void *) android_glDrawTexsvOES__Ljava_nio_ShortBuffer_2 }, 65299066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glDrawTexxOES", "(IIIII)V", (void *) android_glDrawTexxOES__IIIII }, 65309066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glDrawTexxvOES", "([II)V", (void *) android_glDrawTexxvOES___3II }, 65319066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glDrawTexxvOES", "(Ljava/nio/IntBuffer;)V", (void *) android_glDrawTexxvOES__Ljava_nio_IntBuffer_2 }, 65329066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glLoadPaletteFromModelViewMatrixOES", "()V", (void *) android_glLoadPaletteFromModelViewMatrixOES__ }, 65339066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glMatrixIndexPointerOES", "(IIILjava/nio/Buffer;)V", (void *) android_glMatrixIndexPointerOES__IIILjava_nio_Buffer_2 }, 65349066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glMatrixIndexPointerOES", "(IIII)V", (void *) android_glMatrixIndexPointerOES__IIII }, 65359066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glWeightPointerOES", "(IIILjava/nio/Buffer;)V", (void *) android_glWeightPointerOES__IIILjava_nio_Buffer_2 }, 65369066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glWeightPointerOES", "(IIII)V", (void *) android_glWeightPointerOES__IIII }, 65379066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glBindFramebufferOES", "(II)V", (void *) android_glBindFramebufferOES__II }, 65389066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glBindRenderbufferOES", "(II)V", (void *) android_glBindRenderbufferOES__II }, 65399066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glBlendEquation", "(I)V", (void *) android_glBlendEquation__I }, 65409066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glBlendEquationSeparate", "(II)V", (void *) android_glBlendEquationSeparate__II }, 65419066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glBlendFuncSeparate", "(IIII)V", (void *) android_glBlendFuncSeparate__IIII }, 65429066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glCheckFramebufferStatusOES", "(I)I", (void *) android_glCheckFramebufferStatusOES__I }, 65439066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glDeleteFramebuffersOES", "(I[II)V", (void *) android_glDeleteFramebuffersOES__I_3II }, 65449066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glDeleteFramebuffersOES", "(ILjava/nio/IntBuffer;)V", (void *) android_glDeleteFramebuffersOES__ILjava_nio_IntBuffer_2 }, 65459066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glDeleteRenderbuffersOES", "(I[II)V", (void *) android_glDeleteRenderbuffersOES__I_3II }, 65469066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glDeleteRenderbuffersOES", "(ILjava/nio/IntBuffer;)V", (void *) android_glDeleteRenderbuffersOES__ILjava_nio_IntBuffer_2 }, 65479066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glFramebufferRenderbufferOES", "(IIII)V", (void *) android_glFramebufferRenderbufferOES__IIII }, 65489066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glFramebufferTexture2DOES", "(IIIII)V", (void *) android_glFramebufferTexture2DOES__IIIII }, 65499066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glGenerateMipmapOES", "(I)V", (void *) android_glGenerateMipmapOES__I }, 65509066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glGenFramebuffersOES", "(I[II)V", (void *) android_glGenFramebuffersOES__I_3II }, 65519066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glGenFramebuffersOES", "(ILjava/nio/IntBuffer;)V", (void *) android_glGenFramebuffersOES__ILjava_nio_IntBuffer_2 }, 65529066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glGenRenderbuffersOES", "(I[II)V", (void *) android_glGenRenderbuffersOES__I_3II }, 65539066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glGenRenderbuffersOES", "(ILjava/nio/IntBuffer;)V", (void *) android_glGenRenderbuffersOES__ILjava_nio_IntBuffer_2 }, 65549066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glGetFramebufferAttachmentParameterivOES", "(III[II)V", (void *) android_glGetFramebufferAttachmentParameterivOES__III_3II }, 65559066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glGetFramebufferAttachmentParameterivOES", "(IIILjava/nio/IntBuffer;)V", (void *) android_glGetFramebufferAttachmentParameterivOES__IIILjava_nio_IntBuffer_2 }, 65569066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glGetRenderbufferParameterivOES", "(II[II)V", (void *) android_glGetRenderbufferParameterivOES__II_3II }, 65579066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glGetRenderbufferParameterivOES", "(IILjava/nio/IntBuffer;)V", (void *) android_glGetRenderbufferParameterivOES__IILjava_nio_IntBuffer_2 }, 65589066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glGetTexGenfv", "(II[FI)V", (void *) android_glGetTexGenfv__II_3FI }, 65599066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glGetTexGenfv", "(IILjava/nio/FloatBuffer;)V", (void *) android_glGetTexGenfv__IILjava_nio_FloatBuffer_2 }, 65609066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glGetTexGeniv", "(II[II)V", (void *) android_glGetTexGeniv__II_3II }, 65619066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glGetTexGeniv", "(IILjava/nio/IntBuffer;)V", (void *) android_glGetTexGeniv__IILjava_nio_IntBuffer_2 }, 65629066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glGetTexGenxv", "(II[II)V", (void *) android_glGetTexGenxv__II_3II }, 65639066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glGetTexGenxv", "(IILjava/nio/IntBuffer;)V", (void *) android_glGetTexGenxv__IILjava_nio_IntBuffer_2 }, 65649066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glIsFramebufferOES", "(I)Z", (void *) android_glIsFramebufferOES__I }, 65659066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glIsRenderbufferOES", "(I)Z", (void *) android_glIsRenderbufferOES__I }, 65669066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glRenderbufferStorageOES", "(IIII)V", (void *) android_glRenderbufferStorageOES__IIII }, 65679066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glTexGenf", "(IIF)V", (void *) android_glTexGenf__IIF }, 65689066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glTexGenfv", "(II[FI)V", (void *) android_glTexGenfv__II_3FI }, 65699066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glTexGenfv", "(IILjava/nio/FloatBuffer;)V", (void *) android_glTexGenfv__IILjava_nio_FloatBuffer_2 }, 65709066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glTexGeni", "(III)V", (void *) android_glTexGeni__III }, 65719066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glTexGeniv", "(II[II)V", (void *) android_glTexGeniv__II_3II }, 65729066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glTexGeniv", "(IILjava/nio/IntBuffer;)V", (void *) android_glTexGeniv__IILjava_nio_IntBuffer_2 }, 65739066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glTexGenx", "(III)V", (void *) android_glTexGenx__III }, 65749066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glTexGenxv", "(II[II)V", (void *) android_glTexGenxv__II_3II }, 65759066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{"glTexGenxv", "(IILjava/nio/IntBuffer;)V", (void *) android_glTexGenxv__IILjava_nio_IntBuffer_2 }, 65769066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project}; 65779066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 65789066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectint register_com_google_android_gles_jni_GLImpl(JNIEnv *_env) 65799066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project{ 65809066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project int err; 65819066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project err = android::AndroidRuntime::registerNativeMethods(_env, classPathName, methods, NELEM(methods)); 65829066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project return err; 65839066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project} 6584