android_opengl_GLES11Ext.cpp revision 2545b32ced69100fe70685b95315c6adf411083b
127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/*
227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich**
327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich** Copyright 2009, The Android Open Source Project
427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich**
524ce5fb2cc09d0a14406e7b935f8648c5720d27eElliott Hughes** Licensed under the Apache License, Version 2.0 (the "License");
624ce5fb2cc09d0a14406e7b935f8648c5720d27eElliott Hughes** you may not use this file except in compliance with the License.
724ce5fb2cc09d0a14406e7b935f8648c5720d27eElliott Hughes** You may obtain a copy of the License at
827f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich**
924ce5fb2cc09d0a14406e7b935f8648c5720d27eElliott Hughes**     http://www.apache.org/licenses/LICENSE-2.0
1027f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich**
1124ce5fb2cc09d0a14406e7b935f8648c5720d27eElliott Hughes** Unless required by applicable law or agreed to in writing, software
1224ce5fb2cc09d0a14406e7b935f8648c5720d27eElliott Hughes** distributed under the License is distributed on an "AS IS" BASIS,
1324ce5fb2cc09d0a14406e7b935f8648c5720d27eElliott Hughes** WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
1424ce5fb2cc09d0a14406e7b935f8648c5720d27eElliott Hughes** See the License for the specific language governing permissions and
1527f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich** limitations under the License.
1627f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich*/
1727f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich
1827f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich// This source file is automatically generated
1927f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich
2024ce5fb2cc09d0a14406e7b935f8648c5720d27eElliott Hughes#include "jni.h"
2124ce5fb2cc09d0a14406e7b935f8648c5720d27eElliott Hughes#include "JNIHelp.h"
2227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich#include <android_runtime/AndroidRuntime.h>
2327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich#include <utils/misc.h>
2427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich
2527f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich#include <assert.h>
2627f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich#include <GLES/gl.h>
27be509c9c7de5929d014dfe6d45e71cc8454ede0fJack Palevich#include <GLES/glext.h>
2827f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich
29be6eac828f5af8b608c3fa6749330f1dcd6b6206Jack Palevich/* special calls implemented in Android's GLES wrapper used to more
30be6eac828f5af8b608c3fa6749330f1dcd6b6206Jack Palevich * efficiently bound-check passed arrays */
31be6eac828f5af8b608c3fa6749330f1dcd6b6206Jack Palevichextern "C" {
32be6eac828f5af8b608c3fa6749330f1dcd6b6206Jack PalevichGL_API void GL_APIENTRY glMatrixIndexPointerOESBounds(GLint size, GLenum type, GLsizei stride,
33be6eac828f5af8b608c3fa6749330f1dcd6b6206Jack Palevich        const GLvoid *ptr, GLsizei count);
34be6eac828f5af8b608c3fa6749330f1dcd6b6206Jack PalevichGL_API void GL_APIENTRY glWeightPointerOESBounds(GLint size, GLenum type, GLsizei stride,
35be6eac828f5af8b608c3fa6749330f1dcd6b6206Jack Palevich        const GLvoid *ptr, GLsizei count);
36be6eac828f5af8b608c3fa6749330f1dcd6b6206Jack Palevich}
37be6eac828f5af8b608c3fa6749330f1dcd6b6206Jack Palevich
3827f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic int initialized = 0;
3927f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich
4027f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic jclass nioAccessClass;
4127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic jclass bufferClass;
4227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic jmethodID getBasePointerID;
4327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic jmethodID getBaseArrayID;
4427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic jmethodID getBaseArrayOffsetID;
4527f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic jfieldID positionID;
4627f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic jfieldID limitID;
4727f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic jfieldID elementSizeShiftID;
4827f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich
4927f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* Cache method IDs each time the class is loaded. */
5027f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich
5127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void
5224ce5fb2cc09d0a14406e7b935f8648c5720d27eElliott HughesnativeClassInit(JNIEnv *_env, jclass glImplClass)
5327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{
5427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich    jclass nioAccessClassLocal = _env->FindClass("java/nio/NIOAccess");
5527f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich    nioAccessClass = (jclass) _env->NewGlobalRef(nioAccessClassLocal);
5627f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich
5727f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich    jclass bufferClassLocal = _env->FindClass("java/nio/Buffer");
5827f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich    bufferClass = (jclass) _env->NewGlobalRef(bufferClassLocal);
5927f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich
6027f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich    getBasePointerID = _env->GetStaticMethodID(nioAccessClass,
6127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich            "getBasePointer", "(Ljava/nio/Buffer;)J");
6227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich    getBaseArrayID = _env->GetStaticMethodID(nioAccessClass,
6327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich            "getBaseArray", "(Ljava/nio/Buffer;)Ljava/lang/Object;");
6427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich    getBaseArrayOffsetID = _env->GetStaticMethodID(nioAccessClass,
6527f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich            "getBaseArrayOffset", "(Ljava/nio/Buffer;)I");
6627f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich
6727f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich    positionID = _env->GetFieldID(bufferClass, "position", "I");
6827f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich    limitID = _env->GetFieldID(bufferClass, "limit", "I");
6927f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich    elementSizeShiftID =
7027f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich        _env->GetFieldID(bufferClass, "_elementSizeShift", "I");
7127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich}
7227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich
7327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich
7427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void *
7527f8002e591b5c579f75b2580183b5d1c4219cd4Jack PalevichgetPointer(JNIEnv *_env, jobject buffer, jarray *array, jint *remaining)
7627f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{
7727f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich    jint position;
7827f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich    jint limit;
7927f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich    jint elementSizeShift;
8027f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich    jlong pointer;
8127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich    jint offset;
8227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich    void *data;
8327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich
8427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich    position = _env->GetIntField(buffer, positionID);
8527f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich    limit = _env->GetIntField(buffer, limitID);
8627f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich    elementSizeShift = _env->GetIntField(buffer, elementSizeShiftID);
8727f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich    *remaining = (limit - position) << elementSizeShift;
8827f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich    pointer = _env->CallStaticLongMethod(nioAccessClass,
8927f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich            getBasePointerID, buffer);
9027f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich    if (pointer != 0L) {
9127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich        *array = NULL;
9227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich        return (void *) (jint) pointer;
9327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich    }
9424ce5fb2cc09d0a14406e7b935f8648c5720d27eElliott Hughes
9527f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich    *array = (jarray) _env->CallStaticObjectMethod(nioAccessClass,
9627f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich            getBaseArrayID, buffer);
9727f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich    offset = _env->CallStaticIntMethod(nioAccessClass,
9827f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich            getBaseArrayOffsetID, buffer);
9927f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich    data = _env->GetPrimitiveArrayCritical(*array, (jboolean *) 0);
10024ce5fb2cc09d0a14406e7b935f8648c5720d27eElliott Hughes
10127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich    return (void *) ((char *) data + offset);
10227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich}
10327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich
10427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich
10527f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void
10627f8002e591b5c579f75b2580183b5d1c4219cd4Jack PalevichreleasePointer(JNIEnv *_env, jarray array, void *data, jboolean commit)
10727f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{
10827f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich    _env->ReleasePrimitiveArrayCritical(array, data,
10927f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich					   commit ? 0 : JNI_ABORT);
11027f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich}
11127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich
112be6eac828f5af8b608c3fa6749330f1dcd6b6206Jack Palevichstatic void *
113be6eac828f5af8b608c3fa6749330f1dcd6b6206Jack PalevichgetDirectBufferPointer(JNIEnv *_env, jobject buffer) {
114be6eac828f5af8b608c3fa6749330f1dcd6b6206Jack Palevich    char* buf = (char*) _env->GetDirectBufferAddress(buffer);
115be6eac828f5af8b608c3fa6749330f1dcd6b6206Jack Palevich    if (buf) {
116be6eac828f5af8b608c3fa6749330f1dcd6b6206Jack Palevich        jint position = _env->GetIntField(buffer, positionID);
117be6eac828f5af8b608c3fa6749330f1dcd6b6206Jack Palevich        jint elementSizeShift = _env->GetIntField(buffer, elementSizeShiftID);
118be6eac828f5af8b608c3fa6749330f1dcd6b6206Jack Palevich        buf += position << elementSizeShift;
119be6eac828f5af8b608c3fa6749330f1dcd6b6206Jack Palevich    } else {
12024ce5fb2cc09d0a14406e7b935f8648c5720d27eElliott Hughes        jniThrowException(_env, "java/lang/IllegalArgumentException",
12124ce5fb2cc09d0a14406e7b935f8648c5720d27eElliott Hughes                          "Must use a native order direct Buffer");
122be6eac828f5af8b608c3fa6749330f1dcd6b6206Jack Palevich    }
123be6eac828f5af8b608c3fa6749330f1dcd6b6206Jack Palevich    return (void*) buf;
124be6eac828f5af8b608c3fa6749330f1dcd6b6206Jack Palevich}
12527f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich// --------------------------------------------------------------------------
12627f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glBlendEquationSeparateOES ( GLenum modeRGB, GLenum modeAlpha ) */
12727f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void
12827f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glBlendEquationSeparateOES__II
12927f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich  (JNIEnv *_env, jobject _this, jint modeRGB, jint modeAlpha) {
130a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    glBlendEquationSeparateOES(
131a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        (GLenum)modeRGB,
132a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        (GLenum)modeAlpha
133a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    );
13427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich}
13527f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich
13627f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glBlendFuncSeparateOES ( GLenum srcRGB, GLenum dstRGB, GLenum srcAlpha, GLenum dstAlpha ) */
13727f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void
13827f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glBlendFuncSeparateOES__IIII
13927f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich  (JNIEnv *_env, jobject _this, jint srcRGB, jint dstRGB, jint srcAlpha, jint dstAlpha) {
140a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    glBlendFuncSeparateOES(
141a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        (GLenum)srcRGB,
142a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        (GLenum)dstRGB,
143a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        (GLenum)srcAlpha,
144a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        (GLenum)dstAlpha
145a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    );
14627f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich}
14727f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich
14827f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glBlendEquationOES ( GLenum mode ) */
14927f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void
15027f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glBlendEquationOES__I
15127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich  (JNIEnv *_env, jobject _this, jint mode) {
152a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    glBlendEquationOES(
153a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        (GLenum)mode
154a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    );
15527f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich}
15627f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich
15727f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glDrawTexsOES ( GLshort x, GLshort y, GLshort z, GLshort width, GLshort height ) */
15827f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void
15927f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glDrawTexsOES__SSSSS
16027f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich  (JNIEnv *_env, jobject _this, jshort x, jshort y, jshort z, jshort width, jshort height) {
16127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich    glDrawTexsOES(
16227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich        (GLshort)x,
16327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich        (GLshort)y,
16427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich        (GLshort)z,
16527f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich        (GLshort)width,
16627f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich        (GLshort)height
16727f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich    );
16827f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich}
16927f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich
17027f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glDrawTexiOES ( GLint x, GLint y, GLint z, GLint width, GLint height ) */
17127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void
17227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glDrawTexiOES__IIIII
17327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich  (JNIEnv *_env, jobject _this, jint x, jint y, jint z, jint width, jint height) {
17427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich    glDrawTexiOES(
17527f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich        (GLint)x,
17627f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich        (GLint)y,
17727f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich        (GLint)z,
17827f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich        (GLint)width,
17927f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich        (GLint)height
18027f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich    );
18127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich}
18227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich
18327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glDrawTexxOES ( GLfixed x, GLfixed y, GLfixed z, GLfixed width, GLfixed height ) */
18427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void
18527f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glDrawTexxOES__IIIII
18627f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich  (JNIEnv *_env, jobject _this, jint x, jint y, jint z, jint width, jint height) {
18727f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich    glDrawTexxOES(
18827f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich        (GLfixed)x,
18927f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich        (GLfixed)y,
19027f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich        (GLfixed)z,
19127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich        (GLfixed)width,
19227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich        (GLfixed)height
19327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich    );
19427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich}
19527f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich
19627f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glDrawTexsvOES ( const GLshort *coords ) */
19727f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void
19827f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glDrawTexsvOES___3SI
19927f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich  (JNIEnv *_env, jobject _this, jshortArray coords_ref, jint offset) {
2002545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer    jint _exception = 0;
2012545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer    const char * _exceptionType;
2022545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer    const char * _exceptionMessage;
20327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich    GLshort *coords_base = (GLshort *) 0;
20427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich    jint _remaining;
20527f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich    GLshort *coords = (GLshort *) 0;
20627f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich
20727f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich    if (!coords_ref) {
2082545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exception = 1;
2092545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exceptionType = "java/lang/IllegalArgumentException";
2102545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exceptionMessage = "coords == null";
21127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich        goto exit;
21227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich    }
21327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich    if (offset < 0) {
2142545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exception = 1;
2152545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exceptionType = "java/lang/IllegalArgumentException";
2162545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exceptionMessage = "offset < 0";
21727f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich        goto exit;
21827f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich    }
21927f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich    _remaining = _env->GetArrayLength(coords_ref) - offset;
22027f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich    if (_remaining < 5) {
2212545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exception = 1;
2222545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exceptionType = "java/lang/IllegalArgumentException";
2232545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exceptionMessage = "length - offset < 5 < needed";
22427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich        goto exit;
22527f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich    }
22627f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich    coords_base = (GLshort *)
22727f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich        _env->GetPrimitiveArrayCritical(coords_ref, (jboolean *)0);
22827f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich    coords = coords_base + offset;
22927f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich
23027f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich    glDrawTexsvOES(
23127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich        (GLshort *)coords
23227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich    );
23327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich
23427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichexit:
23527f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich    if (coords_base) {
23627f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich        _env->ReleasePrimitiveArrayCritical(coords_ref, coords_base,
23727f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich            JNI_ABORT);
23827f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich    }
2392545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer    if (_exception) {
2402545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        jniThrowException(_env, _exceptionType, _exceptionMessage);
2412545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer    }
24227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich}
24327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich
24427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glDrawTexsvOES ( const GLshort *coords ) */
24527f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void
24627f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glDrawTexsvOES__Ljava_nio_ShortBuffer_2
24727f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich  (JNIEnv *_env, jobject _this, jobject coords_buf) {
2482545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer    jint _exception = 0;
2492545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer    const char * _exceptionType;
2502545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer    const char * _exceptionMessage;
25127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich    jarray _array = (jarray) 0;
25227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich    jint _remaining;
25327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich    GLshort *coords = (GLshort *) 0;
25427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich
25527f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich    coords = (GLshort *)getPointer(_env, coords_buf, &_array, &_remaining);
25627f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich    if (_remaining < 5) {
2572545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exception = 1;
2582545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exceptionType = "java/lang/IllegalArgumentException";
2592545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exceptionMessage = "remaining() < 5 < needed";
26027f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich        goto exit;
26127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich    }
26227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich    glDrawTexsvOES(
26327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich        (GLshort *)coords
26427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich    );
26527f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich
26627f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichexit:
26727f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich    if (_array) {
26827f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich        releasePointer(_env, _array, coords, JNI_FALSE);
26927f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich    }
2702545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer    if (_exception) {
2712545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        jniThrowException(_env, _exceptionType, _exceptionMessage);
2722545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer    }
27327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich}
27427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich
27527f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glDrawTexivOES ( const GLint *coords ) */
27627f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void
27727f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glDrawTexivOES___3II
27827f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich  (JNIEnv *_env, jobject _this, jintArray coords_ref, jint offset) {
2792545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer    jint _exception = 0;
2802545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer    const char * _exceptionType;
2812545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer    const char * _exceptionMessage;
28227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich    GLint *coords_base = (GLint *) 0;
28327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich    jint _remaining;
28427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich    GLint *coords = (GLint *) 0;
28527f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich
28627f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich    if (!coords_ref) {
2872545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exception = 1;
2882545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exceptionType = "java/lang/IllegalArgumentException";
2892545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exceptionMessage = "coords == null";
29027f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich        goto exit;
29127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich    }
29227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich    if (offset < 0) {
2932545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exception = 1;
2942545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exceptionType = "java/lang/IllegalArgumentException";
2952545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exceptionMessage = "offset < 0";
29627f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich        goto exit;
29727f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich    }
29827f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich    _remaining = _env->GetArrayLength(coords_ref) - offset;
29927f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich    if (_remaining < 5) {
3002545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exception = 1;
3012545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exceptionType = "java/lang/IllegalArgumentException";
3022545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exceptionMessage = "length - offset < 5 < needed";
30327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich        goto exit;
30427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich    }
30527f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich    coords_base = (GLint *)
30627f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich        _env->GetPrimitiveArrayCritical(coords_ref, (jboolean *)0);
30727f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich    coords = coords_base + offset;
30827f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich
30927f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich    glDrawTexivOES(
31027f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich        (GLint *)coords
31127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich    );
31227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich
31327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichexit:
31427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich    if (coords_base) {
31527f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich        _env->ReleasePrimitiveArrayCritical(coords_ref, coords_base,
31627f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich            JNI_ABORT);
31727f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich    }
3182545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer    if (_exception) {
3192545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        jniThrowException(_env, _exceptionType, _exceptionMessage);
3202545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer    }
32127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich}
32227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich
32327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glDrawTexivOES ( const GLint *coords ) */
32427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void
32527f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glDrawTexivOES__Ljava_nio_IntBuffer_2
32627f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich  (JNIEnv *_env, jobject _this, jobject coords_buf) {
3272545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer    jint _exception = 0;
3282545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer    const char * _exceptionType;
3292545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer    const char * _exceptionMessage;
33027f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich    jarray _array = (jarray) 0;
33127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich    jint _remaining;
33227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich    GLint *coords = (GLint *) 0;
33327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich
33427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich    coords = (GLint *)getPointer(_env, coords_buf, &_array, &_remaining);
33527f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich    if (_remaining < 5) {
3362545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exception = 1;
3372545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exceptionType = "java/lang/IllegalArgumentException";
3382545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exceptionMessage = "remaining() < 5 < needed";
33927f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich        goto exit;
34027f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich    }
34127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich    glDrawTexivOES(
34227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich        (GLint *)coords
34327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich    );
34427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich
34527f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichexit:
34627f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich    if (_array) {
34727f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich        releasePointer(_env, _array, coords, JNI_FALSE);
34827f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich    }
3492545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer    if (_exception) {
3502545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        jniThrowException(_env, _exceptionType, _exceptionMessage);
3512545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer    }
35227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich}
35327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich
35427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glDrawTexxvOES ( const GLfixed *coords ) */
35527f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void
35627f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glDrawTexxvOES___3II
35727f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich  (JNIEnv *_env, jobject _this, jintArray coords_ref, jint offset) {
3582545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer    jint _exception = 0;
3592545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer    const char * _exceptionType;
3602545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer    const char * _exceptionMessage;
36127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich    GLfixed *coords_base = (GLfixed *) 0;
36227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich    jint _remaining;
36327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich    GLfixed *coords = (GLfixed *) 0;
36427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich
36527f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich    if (!coords_ref) {
3662545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exception = 1;
3672545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exceptionType = "java/lang/IllegalArgumentException";
3682545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exceptionMessage = "coords == null";
36927f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich        goto exit;
37027f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich    }
37127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich    if (offset < 0) {
3722545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exception = 1;
3732545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exceptionType = "java/lang/IllegalArgumentException";
3742545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exceptionMessage = "offset < 0";
37527f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich        goto exit;
37627f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich    }
37727f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich    _remaining = _env->GetArrayLength(coords_ref) - offset;
37827f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich    if (_remaining < 5) {
3792545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exception = 1;
3802545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exceptionType = "java/lang/IllegalArgumentException";
3812545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exceptionMessage = "length - offset < 5 < needed";
38227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich        goto exit;
38327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich    }
38427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich    coords_base = (GLfixed *)
38527f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich        _env->GetPrimitiveArrayCritical(coords_ref, (jboolean *)0);
38627f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich    coords = coords_base + offset;
38727f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich
38827f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich    glDrawTexxvOES(
38927f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich        (GLfixed *)coords
39027f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich    );
39127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich
39227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichexit:
39327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich    if (coords_base) {
39427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich        _env->ReleasePrimitiveArrayCritical(coords_ref, coords_base,
39527f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich            JNI_ABORT);
39627f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich    }
3972545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer    if (_exception) {
3982545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        jniThrowException(_env, _exceptionType, _exceptionMessage);
3992545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer    }
40027f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich}
40127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich
40227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glDrawTexxvOES ( const GLfixed *coords ) */
40327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void
40427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glDrawTexxvOES__Ljava_nio_IntBuffer_2
40527f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich  (JNIEnv *_env, jobject _this, jobject coords_buf) {
4062545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer    jint _exception = 0;
4072545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer    const char * _exceptionType;
4082545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer    const char * _exceptionMessage;
40927f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich    jarray _array = (jarray) 0;
41027f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich    jint _remaining;
41127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich    GLfixed *coords = (GLfixed *) 0;
41227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich
41327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich    coords = (GLfixed *)getPointer(_env, coords_buf, &_array, &_remaining);
41427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich    if (_remaining < 5) {
4152545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exception = 1;
4162545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exceptionType = "java/lang/IllegalArgumentException";
4172545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exceptionMessage = "remaining() < 5 < needed";
41827f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich        goto exit;
41927f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich    }
42027f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich    glDrawTexxvOES(
42127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich        (GLfixed *)coords
42227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich    );
42327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich
42427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichexit:
42527f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich    if (_array) {
42627f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich        releasePointer(_env, _array, coords, JNI_FALSE);
42727f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich    }
4282545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer    if (_exception) {
4292545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        jniThrowException(_env, _exceptionType, _exceptionMessage);
4302545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer    }
43127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich}
43227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich
43327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glDrawTexfOES ( GLfloat x, GLfloat y, GLfloat z, GLfloat width, GLfloat height ) */
43427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void
43527f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glDrawTexfOES__FFFFF
43627f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich  (JNIEnv *_env, jobject _this, jfloat x, jfloat y, jfloat z, jfloat width, jfloat height) {
43727f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich    glDrawTexfOES(
43827f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich        (GLfloat)x,
43927f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich        (GLfloat)y,
44027f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich        (GLfloat)z,
44127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich        (GLfloat)width,
44227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich        (GLfloat)height
44327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich    );
44427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich}
44527f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich
44627f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glDrawTexfvOES ( const GLfloat *coords ) */
44727f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void
44827f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glDrawTexfvOES___3FI
44927f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich  (JNIEnv *_env, jobject _this, jfloatArray coords_ref, jint offset) {
4502545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer    jint _exception = 0;
4512545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer    const char * _exceptionType;
4522545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer    const char * _exceptionMessage;
45327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich    GLfloat *coords_base = (GLfloat *) 0;
45427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich    jint _remaining;
45527f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich    GLfloat *coords = (GLfloat *) 0;
45627f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich
45727f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich    if (!coords_ref) {
4582545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exception = 1;
4592545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exceptionType = "java/lang/IllegalArgumentException";
4602545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exceptionMessage = "coords == null";
46127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich        goto exit;
46227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich    }
46327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich    if (offset < 0) {
4642545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exception = 1;
4652545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exceptionType = "java/lang/IllegalArgumentException";
4662545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exceptionMessage = "offset < 0";
46727f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich        goto exit;
46827f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich    }
46927f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich    _remaining = _env->GetArrayLength(coords_ref) - offset;
47027f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich    if (_remaining < 5) {
4712545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exception = 1;
4722545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exceptionType = "java/lang/IllegalArgumentException";
4732545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exceptionMessage = "length - offset < 5 < needed";
47427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich        goto exit;
47527f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich    }
47627f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich    coords_base = (GLfloat *)
47727f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich        _env->GetPrimitiveArrayCritical(coords_ref, (jboolean *)0);
47827f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich    coords = coords_base + offset;
47927f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich
48027f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich    glDrawTexfvOES(
48127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich        (GLfloat *)coords
48227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich    );
48327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich
48427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichexit:
48527f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich    if (coords_base) {
48627f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich        _env->ReleasePrimitiveArrayCritical(coords_ref, coords_base,
48727f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich            JNI_ABORT);
48827f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich    }
4892545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer    if (_exception) {
4902545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        jniThrowException(_env, _exceptionType, _exceptionMessage);
4912545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer    }
49227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich}
49327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich
49427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glDrawTexfvOES ( const GLfloat *coords ) */
49527f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void
49627f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glDrawTexfvOES__Ljava_nio_FloatBuffer_2
49727f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich  (JNIEnv *_env, jobject _this, jobject coords_buf) {
4982545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer    jint _exception = 0;
4992545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer    const char * _exceptionType;
5002545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer    const char * _exceptionMessage;
50127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich    jarray _array = (jarray) 0;
50227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich    jint _remaining;
50327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich    GLfloat *coords = (GLfloat *) 0;
50427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich
50527f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich    coords = (GLfloat *)getPointer(_env, coords_buf, &_array, &_remaining);
50627f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich    if (_remaining < 5) {
5072545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exception = 1;
5082545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exceptionType = "java/lang/IllegalArgumentException";
5092545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exceptionMessage = "remaining() < 5 < needed";
51027f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich        goto exit;
51127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich    }
51227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich    glDrawTexfvOES(
51327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich        (GLfloat *)coords
51427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich    );
51527f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich
51627f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichexit:
51727f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich    if (_array) {
51827f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich        releasePointer(_env, _array, coords, JNI_FALSE);
51927f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich    }
5202545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer    if (_exception) {
5212545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        jniThrowException(_env, _exceptionType, _exceptionMessage);
5222545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer    }
52327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich}
52427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich
52527f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glEGLImageTargetTexture2DOES ( GLenum target, GLeglImageOES image ) */
52627f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void
52727f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glEGLImageTargetTexture2DOES__ILjava_nio_Buffer_2
52827f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich  (JNIEnv *_env, jobject _this, jint target, jobject image_buf) {
529a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    jarray _array = (jarray) 0;
530a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    jint _remaining;
531a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    GLeglImageOES image = (GLeglImageOES) 0;
532a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich
533a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    image = (GLeglImageOES)getPointer(_env, image_buf, &_array, &_remaining);
534a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    glEGLImageTargetTexture2DOES(
535a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        (GLenum)target,
536a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        (GLeglImageOES)image
537a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    );
538a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    if (_array) {
5392545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        releasePointer(_env, _array, image, JNI_TRUE);
540a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    }
54127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich}
54227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich
54327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glEGLImageTargetRenderbufferStorageOES ( GLenum target, GLeglImageOES image ) */
54427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void
54527f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glEGLImageTargetRenderbufferStorageOES__ILjava_nio_Buffer_2
54627f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich  (JNIEnv *_env, jobject _this, jint target, jobject image_buf) {
547a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    jarray _array = (jarray) 0;
548a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    jint _remaining;
549a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    GLeglImageOES image = (GLeglImageOES) 0;
550a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich
551a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    image = (GLeglImageOES)getPointer(_env, image_buf, &_array, &_remaining);
552a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    glEGLImageTargetRenderbufferStorageOES(
553a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        (GLenum)target,
554a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        (GLeglImageOES)image
555a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    );
556a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    if (_array) {
5572545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        releasePointer(_env, _array, image, JNI_TRUE);
558a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    }
55927f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich}
56027f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich
56127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glAlphaFuncxOES ( GLenum func, GLclampx ref ) */
56227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void
56327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glAlphaFuncxOES__II
56427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich  (JNIEnv *_env, jobject _this, jint func, jint ref) {
565a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    glAlphaFuncxOES(
566a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        (GLenum)func,
567a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        (GLclampx)ref
568a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    );
56927f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich}
57027f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich
57127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glClearColorxOES ( GLclampx red, GLclampx green, GLclampx blue, GLclampx alpha ) */
57227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void
57327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glClearColorxOES__IIII
57427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich  (JNIEnv *_env, jobject _this, jint red, jint green, jint blue, jint alpha) {
575a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    glClearColorxOES(
576a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        (GLclampx)red,
577a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        (GLclampx)green,
578a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        (GLclampx)blue,
579a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        (GLclampx)alpha
580a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    );
58127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich}
58227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich
58327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glClearDepthxOES ( GLclampx depth ) */
58427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void
58527f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glClearDepthxOES__I
58627f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich  (JNIEnv *_env, jobject _this, jint depth) {
587a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    glClearDepthxOES(
588a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        (GLclampx)depth
589a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    );
59027f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich}
59127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich
59227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glClipPlanexOES ( GLenum plane, const GLfixed *equation ) */
59327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void
59427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glClipPlanexOES__I_3II
59527f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich  (JNIEnv *_env, jobject _this, jint plane, jintArray equation_ref, jint offset) {
5962545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer    jint _exception = 0;
5972545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer    const char * _exceptionType;
5982545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer    const char * _exceptionMessage;
599a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    GLfixed *equation_base = (GLfixed *) 0;
600a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    jint _remaining;
601a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    GLfixed *equation = (GLfixed *) 0;
602a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich
603a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    if (!equation_ref) {
6042545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exception = 1;
6052545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exceptionType = "java/lang/IllegalArgumentException";
6062545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exceptionMessage = "equation == null";
607a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        goto exit;
608a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    }
609a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    if (offset < 0) {
6102545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exception = 1;
6112545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exceptionType = "java/lang/IllegalArgumentException";
6122545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exceptionMessage = "offset < 0";
613a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        goto exit;
614a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    }
615a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    _remaining = _env->GetArrayLength(equation_ref) - offset;
616a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    equation_base = (GLfixed *)
617a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        _env->GetPrimitiveArrayCritical(equation_ref, (jboolean *)0);
618a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    equation = equation_base + offset;
619a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich
620a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    glClipPlanexOES(
621a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        (GLenum)plane,
622a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        (GLfixed *)equation
623a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    );
624a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich
625a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevichexit:
626a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    if (equation_base) {
627a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        _env->ReleasePrimitiveArrayCritical(equation_ref, equation_base,
628a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich            JNI_ABORT);
629a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    }
6302545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer    if (_exception) {
6312545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        jniThrowException(_env, _exceptionType, _exceptionMessage);
6322545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer    }
63327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich}
63427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich
63527f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glClipPlanexOES ( GLenum plane, const GLfixed *equation ) */
63627f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void
63727f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glClipPlanexOES__ILjava_nio_IntBuffer_2
63827f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich  (JNIEnv *_env, jobject _this, jint plane, jobject equation_buf) {
639a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    jarray _array = (jarray) 0;
640a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    jint _remaining;
641a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    GLfixed *equation = (GLfixed *) 0;
642a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich
643a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    equation = (GLfixed *)getPointer(_env, equation_buf, &_array, &_remaining);
644a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    glClipPlanexOES(
645a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        (GLenum)plane,
646a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        (GLfixed *)equation
647a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    );
648a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    if (_array) {
649a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        releasePointer(_env, _array, equation, JNI_FALSE);
650a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    }
65127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich}
65227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich
65327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glColor4xOES ( GLfixed red, GLfixed green, GLfixed blue, GLfixed alpha ) */
65427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void
65527f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glColor4xOES__IIII
65627f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich  (JNIEnv *_env, jobject _this, jint red, jint green, jint blue, jint alpha) {
657a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    glColor4xOES(
658a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        (GLfixed)red,
659a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        (GLfixed)green,
660a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        (GLfixed)blue,
661a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        (GLfixed)alpha
662a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    );
66327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich}
66427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich
66527f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glDepthRangexOES ( GLclampx zNear, GLclampx zFar ) */
66627f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void
66727f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glDepthRangexOES__II
66827f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich  (JNIEnv *_env, jobject _this, jint zNear, jint zFar) {
669a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    glDepthRangexOES(
670a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        (GLclampx)zNear,
671a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        (GLclampx)zFar
672a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    );
67327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich}
67427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich
67527f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glFogxOES ( GLenum pname, GLfixed param ) */
67627f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void
67727f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glFogxOES__II
67827f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich  (JNIEnv *_env, jobject _this, jint pname, jint param) {
679a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    glFogxOES(
680a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        (GLenum)pname,
681a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        (GLfixed)param
682a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    );
68327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich}
68427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich
68527f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glFogxvOES ( GLenum pname, const GLfixed *params ) */
68627f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void
68727f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glFogxvOES__I_3II
68827f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich  (JNIEnv *_env, jobject _this, jint pname, jintArray params_ref, jint offset) {
6892545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer    jint _exception = 0;
6902545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer    const char * _exceptionType;
6912545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer    const char * _exceptionMessage;
692a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    GLfixed *params_base = (GLfixed *) 0;
693a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    jint _remaining;
694a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    GLfixed *params = (GLfixed *) 0;
695a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich
696a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    if (!params_ref) {
6972545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exception = 1;
6982545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exceptionType = "java/lang/IllegalArgumentException";
6992545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exceptionMessage = "params == null";
700a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        goto exit;
701a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    }
702a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    if (offset < 0) {
7032545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exception = 1;
7042545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exceptionType = "java/lang/IllegalArgumentException";
7052545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exceptionMessage = "offset < 0";
706a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        goto exit;
707a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    }
708a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    _remaining = _env->GetArrayLength(params_ref) - offset;
709a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    params_base = (GLfixed *)
710a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        _env->GetPrimitiveArrayCritical(params_ref, (jboolean *)0);
711a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    params = params_base + offset;
712a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich
713a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    glFogxvOES(
714a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        (GLenum)pname,
715a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        (GLfixed *)params
716a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    );
717a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich
718a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevichexit:
719a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    if (params_base) {
720a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        _env->ReleasePrimitiveArrayCritical(params_ref, params_base,
721a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich            JNI_ABORT);
722a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    }
7232545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer    if (_exception) {
7242545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        jniThrowException(_env, _exceptionType, _exceptionMessage);
7252545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer    }
72627f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich}
72727f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich
72827f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glFogxvOES ( GLenum pname, const GLfixed *params ) */
72927f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void
73027f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glFogxvOES__ILjava_nio_IntBuffer_2
73127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich  (JNIEnv *_env, jobject _this, jint pname, jobject params_buf) {
732a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    jarray _array = (jarray) 0;
733a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    jint _remaining;
734a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    GLfixed *params = (GLfixed *) 0;
735a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich
736a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    params = (GLfixed *)getPointer(_env, params_buf, &_array, &_remaining);
737a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    glFogxvOES(
738a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        (GLenum)pname,
739a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        (GLfixed *)params
740a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    );
741a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    if (_array) {
742a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        releasePointer(_env, _array, params, JNI_FALSE);
743a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    }
74427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich}
74527f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich
74627f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glFrustumxOES ( GLfixed left, GLfixed right, GLfixed bottom, GLfixed top, GLfixed zNear, GLfixed zFar ) */
74727f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void
74827f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glFrustumxOES__IIIIII
74927f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich  (JNIEnv *_env, jobject _this, jint left, jint right, jint bottom, jint top, jint zNear, jint zFar) {
750a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    glFrustumxOES(
751a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        (GLfixed)left,
752a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        (GLfixed)right,
753a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        (GLfixed)bottom,
754a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        (GLfixed)top,
755a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        (GLfixed)zNear,
756a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        (GLfixed)zFar
757a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    );
75827f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich}
75927f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich
76027f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glGetClipPlanexOES ( GLenum pname, GLfixed *eqn ) */
76127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void
76227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glGetClipPlanexOES__I_3II
76327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich  (JNIEnv *_env, jobject _this, jint pname, jintArray eqn_ref, jint offset) {
764a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    jint _exception = 0;
7652545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer    const char * _exceptionType;
7662545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer    const char * _exceptionMessage;
767a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    GLfixed *eqn_base = (GLfixed *) 0;
768a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    jint _remaining;
769a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    GLfixed *eqn = (GLfixed *) 0;
770a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich
771a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    if (!eqn_ref) {
772a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        _exception = 1;
7732545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exceptionType = "java/lang/IllegalArgumentException";
7742545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exceptionMessage = "eqn == null";
775a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        goto exit;
776a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    }
777a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    if (offset < 0) {
778a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        _exception = 1;
7792545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exceptionType = "java/lang/IllegalArgumentException";
7802545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exceptionMessage = "offset < 0";
781a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        goto exit;
782a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    }
783a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    _remaining = _env->GetArrayLength(eqn_ref) - offset;
784a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    if (_remaining < 4) {
785a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        _exception = 1;
7862545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exceptionType = "java/lang/IllegalArgumentException";
7872545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exceptionMessage = "length - offset < 4 < needed";
788a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        goto exit;
789a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    }
790a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    eqn_base = (GLfixed *)
791a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        _env->GetPrimitiveArrayCritical(eqn_ref, (jboolean *)0);
792a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    eqn = eqn_base + offset;
793a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich
794a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    glGetClipPlanexOES(
795a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        (GLenum)pname,
796a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        (GLfixed *)eqn
797a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    );
798a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich
799a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevichexit:
800a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    if (eqn_base) {
801a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        _env->ReleasePrimitiveArrayCritical(eqn_ref, eqn_base,
802a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich            _exception ? JNI_ABORT: 0);
803a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    }
8042545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer    if (_exception) {
8052545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        jniThrowException(_env, _exceptionType, _exceptionMessage);
8062545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer    }
80727f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich}
80827f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich
80927f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glGetClipPlanexOES ( GLenum pname, GLfixed *eqn ) */
81027f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void
81127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glGetClipPlanexOES__ILjava_nio_IntBuffer_2
81227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich  (JNIEnv *_env, jobject _this, jint pname, jobject eqn_buf) {
813a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    jint _exception = 0;
8142545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer    const char * _exceptionType;
8152545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer    const char * _exceptionMessage;
816a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    jarray _array = (jarray) 0;
817a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    jint _remaining;
818a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    GLfixed *eqn = (GLfixed *) 0;
819a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich
820a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    eqn = (GLfixed *)getPointer(_env, eqn_buf, &_array, &_remaining);
821a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    if (_remaining < 4) {
822a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        _exception = 1;
8232545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exceptionType = "java/lang/IllegalArgumentException";
8242545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exceptionMessage = "remaining() < 4 < needed";
825a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        goto exit;
826a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    }
827a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    glGetClipPlanexOES(
828a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        (GLenum)pname,
829a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        (GLfixed *)eqn
830a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    );
831a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich
832a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevichexit:
833a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    if (_array) {
834a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        releasePointer(_env, _array, eqn, _exception ? JNI_FALSE : JNI_TRUE);
835a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    }
8362545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer    if (_exception) {
8372545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        jniThrowException(_env, _exceptionType, _exceptionMessage);
8382545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer    }
83927f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich}
84027f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich
84127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glGetFixedvOES ( GLenum pname, GLfixed *params ) */
84227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void
84327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glGetFixedvOES__I_3II
84427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich  (JNIEnv *_env, jobject _this, jint pname, jintArray params_ref, jint offset) {
845a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    jint _exception = 0;
8462545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer    const char * _exceptionType;
8472545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer    const char * _exceptionMessage;
848a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    GLfixed *params_base = (GLfixed *) 0;
849a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    jint _remaining;
850a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    GLfixed *params = (GLfixed *) 0;
851a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich
852a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    if (!params_ref) {
853a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        _exception = 1;
8542545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exceptionType = "java/lang/IllegalArgumentException";
8552545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exceptionMessage = "params == null";
856a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        goto exit;
857a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    }
858a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    if (offset < 0) {
859a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        _exception = 1;
8602545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exceptionType = "java/lang/IllegalArgumentException";
8612545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exceptionMessage = "offset < 0";
862a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        goto exit;
863a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    }
864a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    _remaining = _env->GetArrayLength(params_ref) - offset;
865a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    params_base = (GLfixed *)
866a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        _env->GetPrimitiveArrayCritical(params_ref, (jboolean *)0);
867a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    params = params_base + offset;
868a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich
869a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    glGetFixedvOES(
870a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        (GLenum)pname,
871a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        (GLfixed *)params
872a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    );
873a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich
874a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevichexit:
875a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    if (params_base) {
876a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        _env->ReleasePrimitiveArrayCritical(params_ref, params_base,
877a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich            _exception ? JNI_ABORT: 0);
878a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    }
8792545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer    if (_exception) {
8802545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        jniThrowException(_env, _exceptionType, _exceptionMessage);
8812545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer    }
88227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich}
88327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich
88427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glGetFixedvOES ( GLenum pname, GLfixed *params ) */
88527f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void
88627f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glGetFixedvOES__ILjava_nio_IntBuffer_2
88727f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich  (JNIEnv *_env, jobject _this, jint pname, jobject params_buf) {
888a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    jarray _array = (jarray) 0;
889a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    jint _remaining;
890a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    GLfixed *params = (GLfixed *) 0;
891a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich
892a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    params = (GLfixed *)getPointer(_env, params_buf, &_array, &_remaining);
893a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    glGetFixedvOES(
894a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        (GLenum)pname,
895a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        (GLfixed *)params
896a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    );
897a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    if (_array) {
8982545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        releasePointer(_env, _array, params, JNI_TRUE);
899a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    }
90027f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich}
90127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich
90227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glGetLightxvOES ( GLenum light, GLenum pname, GLfixed *params ) */
90327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void
90427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glGetLightxvOES__II_3II
90527f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich  (JNIEnv *_env, jobject _this, jint light, jint pname, jintArray params_ref, jint offset) {
906a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    jint _exception = 0;
9072545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer    const char * _exceptionType;
9082545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer    const char * _exceptionMessage;
909a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    GLfixed *params_base = (GLfixed *) 0;
910a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    jint _remaining;
911a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    GLfixed *params = (GLfixed *) 0;
912a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich
913a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    if (!params_ref) {
914a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        _exception = 1;
9152545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exceptionType = "java/lang/IllegalArgumentException";
9162545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exceptionMessage = "params == null";
917a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        goto exit;
918a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    }
919a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    if (offset < 0) {
920a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        _exception = 1;
9212545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exceptionType = "java/lang/IllegalArgumentException";
9222545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exceptionMessage = "offset < 0";
923a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        goto exit;
924a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    }
925a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    _remaining = _env->GetArrayLength(params_ref) - offset;
926a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    params_base = (GLfixed *)
927a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        _env->GetPrimitiveArrayCritical(params_ref, (jboolean *)0);
928a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    params = params_base + offset;
929a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich
930a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    glGetLightxvOES(
931a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        (GLenum)light,
932a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        (GLenum)pname,
933a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        (GLfixed *)params
934a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    );
935a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich
936a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevichexit:
937a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    if (params_base) {
938a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        _env->ReleasePrimitiveArrayCritical(params_ref, params_base,
939a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich            _exception ? JNI_ABORT: 0);
940a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    }
9412545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer    if (_exception) {
9422545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        jniThrowException(_env, _exceptionType, _exceptionMessage);
9432545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer    }
94427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich}
94527f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich
94627f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glGetLightxvOES ( GLenum light, GLenum pname, GLfixed *params ) */
94727f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void
94827f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glGetLightxvOES__IILjava_nio_IntBuffer_2
94927f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich  (JNIEnv *_env, jobject _this, jint light, jint pname, jobject params_buf) {
950a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    jarray _array = (jarray) 0;
951a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    jint _remaining;
952a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    GLfixed *params = (GLfixed *) 0;
953a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich
954a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    params = (GLfixed *)getPointer(_env, params_buf, &_array, &_remaining);
955a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    glGetLightxvOES(
956a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        (GLenum)light,
957a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        (GLenum)pname,
958a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        (GLfixed *)params
959a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    );
960a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    if (_array) {
9612545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        releasePointer(_env, _array, params, JNI_TRUE);
962a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    }
96327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich}
96427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich
96527f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glGetMaterialxvOES ( GLenum face, GLenum pname, GLfixed *params ) */
96627f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void
96727f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glGetMaterialxvOES__II_3II
96827f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich  (JNIEnv *_env, jobject _this, jint face, jint pname, jintArray params_ref, jint offset) {
969a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    jint _exception = 0;
9702545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer    const char * _exceptionType;
9712545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer    const char * _exceptionMessage;
972a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    GLfixed *params_base = (GLfixed *) 0;
973a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    jint _remaining;
974a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    GLfixed *params = (GLfixed *) 0;
975a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich
976a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    if (!params_ref) {
977a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        _exception = 1;
9782545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exceptionType = "java/lang/IllegalArgumentException";
9792545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exceptionMessage = "params == null";
980a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        goto exit;
981a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    }
982a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    if (offset < 0) {
983a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        _exception = 1;
9842545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exceptionType = "java/lang/IllegalArgumentException";
9852545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exceptionMessage = "offset < 0";
986a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        goto exit;
987a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    }
988a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    _remaining = _env->GetArrayLength(params_ref) - offset;
989a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    params_base = (GLfixed *)
990a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        _env->GetPrimitiveArrayCritical(params_ref, (jboolean *)0);
991a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    params = params_base + offset;
992a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich
993a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    glGetMaterialxvOES(
994a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        (GLenum)face,
995a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        (GLenum)pname,
996a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        (GLfixed *)params
997a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    );
998a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich
999a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevichexit:
1000a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    if (params_base) {
1001a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        _env->ReleasePrimitiveArrayCritical(params_ref, params_base,
1002a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich            _exception ? JNI_ABORT: 0);
1003a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    }
10042545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer    if (_exception) {
10052545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        jniThrowException(_env, _exceptionType, _exceptionMessage);
10062545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer    }
100727f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich}
100827f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich
100927f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glGetMaterialxvOES ( GLenum face, GLenum pname, GLfixed *params ) */
101027f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void
101127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glGetMaterialxvOES__IILjava_nio_IntBuffer_2
101227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich  (JNIEnv *_env, jobject _this, jint face, jint pname, jobject params_buf) {
1013a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    jarray _array = (jarray) 0;
1014a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    jint _remaining;
1015a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    GLfixed *params = (GLfixed *) 0;
1016a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich
1017a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    params = (GLfixed *)getPointer(_env, params_buf, &_array, &_remaining);
1018a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    glGetMaterialxvOES(
1019a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        (GLenum)face,
1020a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        (GLenum)pname,
1021a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        (GLfixed *)params
1022a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    );
1023a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    if (_array) {
10242545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        releasePointer(_env, _array, params, JNI_TRUE);
1025a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    }
102627f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich}
102727f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich
102827f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glGetTexEnvxvOES ( GLenum env, GLenum pname, GLfixed *params ) */
102927f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void
103027f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glGetTexEnvxvOES__II_3II
103127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich  (JNIEnv *_env, jobject _this, jint env, jint pname, jintArray params_ref, jint offset) {
1032a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    jint _exception = 0;
10332545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer    const char * _exceptionType;
10342545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer    const char * _exceptionMessage;
1035a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    GLfixed *params_base = (GLfixed *) 0;
1036a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    jint _remaining;
1037a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    GLfixed *params = (GLfixed *) 0;
1038a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich
1039a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    if (!params_ref) {
1040a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        _exception = 1;
10412545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exceptionType = "java/lang/IllegalArgumentException";
10422545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exceptionMessage = "params == null";
1043a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        goto exit;
1044a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    }
1045a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    if (offset < 0) {
1046a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        _exception = 1;
10472545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exceptionType = "java/lang/IllegalArgumentException";
10482545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exceptionMessage = "offset < 0";
1049a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        goto exit;
1050a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    }
1051a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    _remaining = _env->GetArrayLength(params_ref) - offset;
1052a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    params_base = (GLfixed *)
1053a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        _env->GetPrimitiveArrayCritical(params_ref, (jboolean *)0);
1054a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    params = params_base + offset;
1055a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich
1056a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    glGetTexEnvxvOES(
1057a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        (GLenum)env,
1058a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        (GLenum)pname,
1059a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        (GLfixed *)params
1060a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    );
1061a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich
1062a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevichexit:
1063a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    if (params_base) {
1064a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        _env->ReleasePrimitiveArrayCritical(params_ref, params_base,
1065a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich            _exception ? JNI_ABORT: 0);
1066a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    }
10672545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer    if (_exception) {
10682545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        jniThrowException(_env, _exceptionType, _exceptionMessage);
10692545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer    }
107027f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich}
107127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich
107227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glGetTexEnvxvOES ( GLenum env, GLenum pname, GLfixed *params ) */
107327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void
107427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glGetTexEnvxvOES__IILjava_nio_IntBuffer_2
107527f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich  (JNIEnv *_env, jobject _this, jint env, jint pname, jobject params_buf) {
1076a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    jarray _array = (jarray) 0;
1077a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    jint _remaining;
1078a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    GLfixed *params = (GLfixed *) 0;
1079a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich
1080a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    params = (GLfixed *)getPointer(_env, params_buf, &_array, &_remaining);
1081a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    glGetTexEnvxvOES(
1082a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        (GLenum)env,
1083a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        (GLenum)pname,
1084a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        (GLfixed *)params
1085a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    );
1086a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    if (_array) {
10872545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        releasePointer(_env, _array, params, JNI_TRUE);
1088a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    }
108927f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich}
109027f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich
109127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glGetTexParameterxvOES ( GLenum target, GLenum pname, GLfixed *params ) */
109227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void
109327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glGetTexParameterxvOES__II_3II
109427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich  (JNIEnv *_env, jobject _this, jint target, jint pname, jintArray params_ref, jint offset) {
1095a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    jint _exception = 0;
10962545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer    const char * _exceptionType;
10972545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer    const char * _exceptionMessage;
1098a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    GLfixed *params_base = (GLfixed *) 0;
1099a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    jint _remaining;
1100a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    GLfixed *params = (GLfixed *) 0;
1101a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich
1102a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    if (!params_ref) {
1103a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        _exception = 1;
11042545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exceptionType = "java/lang/IllegalArgumentException";
11052545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exceptionMessage = "params == null";
1106a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        goto exit;
1107a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    }
1108a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    if (offset < 0) {
1109a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        _exception = 1;
11102545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exceptionType = "java/lang/IllegalArgumentException";
11112545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exceptionMessage = "offset < 0";
1112a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        goto exit;
1113a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    }
1114a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    _remaining = _env->GetArrayLength(params_ref) - offset;
1115a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    params_base = (GLfixed *)
1116a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        _env->GetPrimitiveArrayCritical(params_ref, (jboolean *)0);
1117a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    params = params_base + offset;
1118a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich
1119a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    glGetTexParameterxvOES(
1120a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        (GLenum)target,
1121a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        (GLenum)pname,
1122a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        (GLfixed *)params
1123a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    );
1124a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich
1125a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevichexit:
1126a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    if (params_base) {
1127a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        _env->ReleasePrimitiveArrayCritical(params_ref, params_base,
1128a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich            _exception ? JNI_ABORT: 0);
1129a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    }
11302545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer    if (_exception) {
11312545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        jniThrowException(_env, _exceptionType, _exceptionMessage);
11322545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer    }
113327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich}
113427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich
113527f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glGetTexParameterxvOES ( GLenum target, GLenum pname, GLfixed *params ) */
113627f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void
113727f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glGetTexParameterxvOES__IILjava_nio_IntBuffer_2
113827f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich  (JNIEnv *_env, jobject _this, jint target, jint pname, jobject params_buf) {
1139a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    jarray _array = (jarray) 0;
1140a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    jint _remaining;
1141a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    GLfixed *params = (GLfixed *) 0;
1142a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich
1143a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    params = (GLfixed *)getPointer(_env, params_buf, &_array, &_remaining);
1144a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    glGetTexParameterxvOES(
1145a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        (GLenum)target,
1146a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        (GLenum)pname,
1147a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        (GLfixed *)params
1148a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    );
1149a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    if (_array) {
11502545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        releasePointer(_env, _array, params, JNI_TRUE);
1151a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    }
115227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich}
115327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich
115427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glLightModelxOES ( GLenum pname, GLfixed param ) */
115527f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void
115627f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glLightModelxOES__II
115727f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich  (JNIEnv *_env, jobject _this, jint pname, jint param) {
1158a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    glLightModelxOES(
1159a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        (GLenum)pname,
1160a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        (GLfixed)param
1161a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    );
116227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich}
116327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich
116427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glLightModelxvOES ( GLenum pname, const GLfixed *params ) */
116527f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void
116627f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glLightModelxvOES__I_3II
116727f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich  (JNIEnv *_env, jobject _this, jint pname, jintArray params_ref, jint offset) {
11682545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer    jint _exception = 0;
11692545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer    const char * _exceptionType;
11702545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer    const char * _exceptionMessage;
1171a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    GLfixed *params_base = (GLfixed *) 0;
1172a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    jint _remaining;
1173a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    GLfixed *params = (GLfixed *) 0;
1174a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich
1175a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    if (!params_ref) {
11762545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exception = 1;
11772545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exceptionType = "java/lang/IllegalArgumentException";
11782545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exceptionMessage = "params == null";
1179a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        goto exit;
1180a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    }
1181a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    if (offset < 0) {
11822545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exception = 1;
11832545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exceptionType = "java/lang/IllegalArgumentException";
11842545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exceptionMessage = "offset < 0";
1185a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        goto exit;
1186a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    }
1187a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    _remaining = _env->GetArrayLength(params_ref) - offset;
1188a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    params_base = (GLfixed *)
1189a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        _env->GetPrimitiveArrayCritical(params_ref, (jboolean *)0);
1190a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    params = params_base + offset;
1191a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich
1192a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    glLightModelxvOES(
1193a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        (GLenum)pname,
1194a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        (GLfixed *)params
1195a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    );
1196a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich
1197a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevichexit:
1198a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    if (params_base) {
1199a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        _env->ReleasePrimitiveArrayCritical(params_ref, params_base,
1200a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich            JNI_ABORT);
1201a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    }
12022545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer    if (_exception) {
12032545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        jniThrowException(_env, _exceptionType, _exceptionMessage);
12042545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer    }
120527f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich}
120627f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich
120727f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glLightModelxvOES ( GLenum pname, const GLfixed *params ) */
120827f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void
120927f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glLightModelxvOES__ILjava_nio_IntBuffer_2
121027f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich  (JNIEnv *_env, jobject _this, jint pname, jobject params_buf) {
1211a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    jarray _array = (jarray) 0;
1212a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    jint _remaining;
1213a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    GLfixed *params = (GLfixed *) 0;
1214a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich
1215a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    params = (GLfixed *)getPointer(_env, params_buf, &_array, &_remaining);
1216a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    glLightModelxvOES(
1217a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        (GLenum)pname,
1218a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        (GLfixed *)params
1219a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    );
1220a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    if (_array) {
1221a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        releasePointer(_env, _array, params, JNI_FALSE);
1222a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    }
122327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich}
122427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich
122527f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glLightxOES ( GLenum light, GLenum pname, GLfixed param ) */
122627f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void
122727f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glLightxOES__III
122827f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich  (JNIEnv *_env, jobject _this, jint light, jint pname, jint param) {
1229a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    glLightxOES(
1230a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        (GLenum)light,
1231a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        (GLenum)pname,
1232a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        (GLfixed)param
1233a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    );
123427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich}
123527f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich
123627f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glLightxvOES ( GLenum light, GLenum pname, const GLfixed *params ) */
123727f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void
123827f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glLightxvOES__II_3II
123927f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich  (JNIEnv *_env, jobject _this, jint light, jint pname, jintArray params_ref, jint offset) {
12402545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer    jint _exception = 0;
12412545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer    const char * _exceptionType;
12422545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer    const char * _exceptionMessage;
1243a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    GLfixed *params_base = (GLfixed *) 0;
1244a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    jint _remaining;
1245a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    GLfixed *params = (GLfixed *) 0;
1246a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich
1247a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    if (!params_ref) {
12482545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exception = 1;
12492545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exceptionType = "java/lang/IllegalArgumentException";
12502545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exceptionMessage = "params == null";
1251a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        goto exit;
1252a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    }
1253a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    if (offset < 0) {
12542545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exception = 1;
12552545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exceptionType = "java/lang/IllegalArgumentException";
12562545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exceptionMessage = "offset < 0";
1257a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        goto exit;
1258a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    }
1259a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    _remaining = _env->GetArrayLength(params_ref) - offset;
1260a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    params_base = (GLfixed *)
1261a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        _env->GetPrimitiveArrayCritical(params_ref, (jboolean *)0);
1262a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    params = params_base + offset;
1263a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich
1264a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    glLightxvOES(
1265a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        (GLenum)light,
1266a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        (GLenum)pname,
1267a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        (GLfixed *)params
1268a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    );
1269a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich
1270a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevichexit:
1271a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    if (params_base) {
1272a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        _env->ReleasePrimitiveArrayCritical(params_ref, params_base,
1273a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich            JNI_ABORT);
1274a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    }
12752545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer    if (_exception) {
12762545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        jniThrowException(_env, _exceptionType, _exceptionMessage);
12772545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer    }
127827f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich}
127927f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich
128027f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glLightxvOES ( GLenum light, GLenum pname, const GLfixed *params ) */
128127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void
128227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glLightxvOES__IILjava_nio_IntBuffer_2
128327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich  (JNIEnv *_env, jobject _this, jint light, jint pname, jobject params_buf) {
1284a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    jarray _array = (jarray) 0;
1285a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    jint _remaining;
1286a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    GLfixed *params = (GLfixed *) 0;
1287a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich
1288a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    params = (GLfixed *)getPointer(_env, params_buf, &_array, &_remaining);
1289a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    glLightxvOES(
1290a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        (GLenum)light,
1291a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        (GLenum)pname,
1292a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        (GLfixed *)params
1293a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    );
1294a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    if (_array) {
1295a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        releasePointer(_env, _array, params, JNI_FALSE);
1296a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    }
129727f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich}
129827f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich
129927f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glLineWidthxOES ( GLfixed width ) */
130027f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void
130127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glLineWidthxOES__I
130227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich  (JNIEnv *_env, jobject _this, jint width) {
1303a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    glLineWidthxOES(
1304a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        (GLfixed)width
1305a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    );
130627f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich}
130727f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich
130827f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glLoadMatrixxOES ( const GLfixed *m ) */
130927f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void
131027f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glLoadMatrixxOES___3II
131127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich  (JNIEnv *_env, jobject _this, jintArray m_ref, jint offset) {
13122545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer    jint _exception = 0;
13132545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer    const char * _exceptionType;
13142545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer    const char * _exceptionMessage;
1315a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    GLfixed *m_base = (GLfixed *) 0;
1316a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    jint _remaining;
1317a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    GLfixed *m = (GLfixed *) 0;
131827f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich
1319a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    if (!m_ref) {
13202545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exception = 1;
13212545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exceptionType = "java/lang/IllegalArgumentException";
13222545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exceptionMessage = "m == null";
1323a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        goto exit;
1324a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    }
1325a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    if (offset < 0) {
13262545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exception = 1;
13272545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exceptionType = "java/lang/IllegalArgumentException";
13282545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exceptionMessage = "offset < 0";
1329a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        goto exit;
1330a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    }
1331a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    _remaining = _env->GetArrayLength(m_ref) - offset;
1332a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    m_base = (GLfixed *)
1333a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        _env->GetPrimitiveArrayCritical(m_ref, (jboolean *)0);
1334a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    m = m_base + offset;
1335a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich
1336a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    glLoadMatrixxOES(
1337a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        (GLfixed *)m
1338a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    );
1339a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich
1340a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevichexit:
1341a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    if (m_base) {
1342a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        _env->ReleasePrimitiveArrayCritical(m_ref, m_base,
1343a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich            JNI_ABORT);
1344a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    }
13452545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer    if (_exception) {
13462545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        jniThrowException(_env, _exceptionType, _exceptionMessage);
13472545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer    }
1348a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich}
1349a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich
1350a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich/* void glLoadMatrixxOES ( const GLfixed *m ) */
1351a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevichstatic void
135227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glLoadMatrixxOES__Ljava_nio_IntBuffer_2
135327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich  (JNIEnv *_env, jobject _this, jobject m_buf) {
1354a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    jarray _array = (jarray) 0;
1355a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    jint _remaining;
1356a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    GLfixed *m = (GLfixed *) 0;
1357a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich
1358a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    m = (GLfixed *)getPointer(_env, m_buf, &_array, &_remaining);
1359a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    glLoadMatrixxOES(
1360a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        (GLfixed *)m
1361a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    );
1362a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    if (_array) {
1363a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        releasePointer(_env, _array, m, JNI_FALSE);
1364a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    }
136527f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich}
136627f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich
136727f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glMaterialxOES ( GLenum face, GLenum pname, GLfixed param ) */
136827f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void
136927f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glMaterialxOES__III
137027f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich  (JNIEnv *_env, jobject _this, jint face, jint pname, jint param) {
1371a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    glMaterialxOES(
1372a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        (GLenum)face,
1373a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        (GLenum)pname,
1374a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        (GLfixed)param
1375a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    );
137627f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich}
137727f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich
137827f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glMaterialxvOES ( GLenum face, GLenum pname, const GLfixed *params ) */
137927f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void
138027f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glMaterialxvOES__II_3II
138127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich  (JNIEnv *_env, jobject _this, jint face, jint pname, jintArray params_ref, jint offset) {
13822545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer    jint _exception = 0;
13832545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer    const char * _exceptionType;
13842545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer    const char * _exceptionMessage;
1385a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    GLfixed *params_base = (GLfixed *) 0;
1386a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    jint _remaining;
1387a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    GLfixed *params = (GLfixed *) 0;
1388a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich
1389a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    if (!params_ref) {
13902545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exception = 1;
13912545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exceptionType = "java/lang/IllegalArgumentException";
13922545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exceptionMessage = "params == null";
1393a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        goto exit;
1394a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    }
1395a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    if (offset < 0) {
13962545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exception = 1;
13972545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exceptionType = "java/lang/IllegalArgumentException";
13982545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exceptionMessage = "offset < 0";
1399a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        goto exit;
1400a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    }
1401a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    _remaining = _env->GetArrayLength(params_ref) - offset;
1402a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    params_base = (GLfixed *)
1403a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        _env->GetPrimitiveArrayCritical(params_ref, (jboolean *)0);
1404a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    params = params_base + offset;
1405a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich
1406a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    glMaterialxvOES(
1407a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        (GLenum)face,
1408a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        (GLenum)pname,
1409a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        (GLfixed *)params
1410a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    );
1411a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich
1412a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevichexit:
1413a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    if (params_base) {
1414a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        _env->ReleasePrimitiveArrayCritical(params_ref, params_base,
1415a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich            JNI_ABORT);
1416a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    }
14172545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer    if (_exception) {
14182545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        jniThrowException(_env, _exceptionType, _exceptionMessage);
14192545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer    }
142027f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich}
142127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich
142227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glMaterialxvOES ( GLenum face, GLenum pname, const GLfixed *params ) */
142327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void
142427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glMaterialxvOES__IILjava_nio_IntBuffer_2
142527f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich  (JNIEnv *_env, jobject _this, jint face, jint pname, jobject params_buf) {
1426a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    jarray _array = (jarray) 0;
1427a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    jint _remaining;
1428a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    GLfixed *params = (GLfixed *) 0;
1429a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich
1430a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    params = (GLfixed *)getPointer(_env, params_buf, &_array, &_remaining);
1431a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    glMaterialxvOES(
1432a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        (GLenum)face,
1433a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        (GLenum)pname,
1434a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        (GLfixed *)params
1435a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    );
1436a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    if (_array) {
1437a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        releasePointer(_env, _array, params, JNI_FALSE);
1438a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    }
143927f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich}
144027f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich
144127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glMultMatrixxOES ( const GLfixed *m ) */
144227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void
144327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glMultMatrixxOES___3II
144427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich  (JNIEnv *_env, jobject _this, jintArray m_ref, jint offset) {
14452545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer    jint _exception = 0;
14462545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer    const char * _exceptionType;
14472545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer    const char * _exceptionMessage;
1448a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    GLfixed *m_base = (GLfixed *) 0;
1449a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    jint _remaining;
1450a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    GLfixed *m = (GLfixed *) 0;
1451a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich
1452a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    if (!m_ref) {
14532545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exception = 1;
14542545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exceptionType = "java/lang/IllegalArgumentException";
14552545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exceptionMessage = "m == null";
1456a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        goto exit;
1457a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    }
1458a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    if (offset < 0) {
14592545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exception = 1;
14602545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exceptionType = "java/lang/IllegalArgumentException";
14612545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exceptionMessage = "offset < 0";
1462a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        goto exit;
1463a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    }
1464a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    _remaining = _env->GetArrayLength(m_ref) - offset;
1465a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    m_base = (GLfixed *)
1466a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        _env->GetPrimitiveArrayCritical(m_ref, (jboolean *)0);
1467a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    m = m_base + offset;
1468a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich
1469a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    glMultMatrixxOES(
1470a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        (GLfixed *)m
1471a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    );
1472a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich
1473a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevichexit:
1474a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    if (m_base) {
1475a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        _env->ReleasePrimitiveArrayCritical(m_ref, m_base,
1476a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich            JNI_ABORT);
1477a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    }
14782545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer    if (_exception) {
14792545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        jniThrowException(_env, _exceptionType, _exceptionMessage);
14802545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer    }
148127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich}
148227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich
148327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glMultMatrixxOES ( const GLfixed *m ) */
148427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void
148527f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glMultMatrixxOES__Ljava_nio_IntBuffer_2
148627f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich  (JNIEnv *_env, jobject _this, jobject m_buf) {
1487a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    jarray _array = (jarray) 0;
1488a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    jint _remaining;
1489a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    GLfixed *m = (GLfixed *) 0;
1490a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich
1491a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    m = (GLfixed *)getPointer(_env, m_buf, &_array, &_remaining);
1492a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    glMultMatrixxOES(
1493a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        (GLfixed *)m
1494a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    );
1495a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    if (_array) {
1496a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        releasePointer(_env, _array, m, JNI_FALSE);
1497a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    }
149827f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich}
149927f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich
150027f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glMultiTexCoord4xOES ( GLenum target, GLfixed s, GLfixed t, GLfixed r, GLfixed q ) */
150127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void
150227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glMultiTexCoord4xOES__IIIII
150327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich  (JNIEnv *_env, jobject _this, jint target, jint s, jint t, jint r, jint q) {
1504a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    glMultiTexCoord4xOES(
1505a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        (GLenum)target,
1506a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        (GLfixed)s,
1507a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        (GLfixed)t,
1508a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        (GLfixed)r,
1509a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        (GLfixed)q
1510a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    );
151127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich}
151227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich
151327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glNormal3xOES ( GLfixed nx, GLfixed ny, GLfixed nz ) */
151427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void
151527f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glNormal3xOES__III
151627f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich  (JNIEnv *_env, jobject _this, jint nx, jint ny, jint nz) {
1517a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    glNormal3xOES(
1518a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        (GLfixed)nx,
1519a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        (GLfixed)ny,
1520a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        (GLfixed)nz
1521a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    );
152227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich}
152327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich
152427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glOrthoxOES ( GLfixed left, GLfixed right, GLfixed bottom, GLfixed top, GLfixed zNear, GLfixed zFar ) */
152527f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void
152627f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glOrthoxOES__IIIIII
152727f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich  (JNIEnv *_env, jobject _this, jint left, jint right, jint bottom, jint top, jint zNear, jint zFar) {
1528a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    glOrthoxOES(
1529a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        (GLfixed)left,
1530a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        (GLfixed)right,
1531a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        (GLfixed)bottom,
1532a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        (GLfixed)top,
1533a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        (GLfixed)zNear,
1534a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        (GLfixed)zFar
1535a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    );
153627f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich}
153727f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich
153827f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glPointParameterxOES ( GLenum pname, GLfixed param ) */
153927f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void
154027f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glPointParameterxOES__II
154127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich  (JNIEnv *_env, jobject _this, jint pname, jint param) {
1542a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    glPointParameterxOES(
1543a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        (GLenum)pname,
1544a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        (GLfixed)param
1545a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    );
154627f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich}
154727f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich
154827f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glPointParameterxvOES ( GLenum pname, const GLfixed *params ) */
154927f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void
155027f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glPointParameterxvOES__I_3II
155127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich  (JNIEnv *_env, jobject _this, jint pname, jintArray params_ref, jint offset) {
15522545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer    jint _exception = 0;
15532545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer    const char * _exceptionType;
15542545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer    const char * _exceptionMessage;
1555a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    GLfixed *params_base = (GLfixed *) 0;
1556a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    jint _remaining;
1557a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    GLfixed *params = (GLfixed *) 0;
1558a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich
1559a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    if (!params_ref) {
15602545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exception = 1;
15612545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exceptionType = "java/lang/IllegalArgumentException";
15622545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exceptionMessage = "params == null";
1563a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        goto exit;
1564a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    }
1565a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    if (offset < 0) {
15662545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exception = 1;
15672545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exceptionType = "java/lang/IllegalArgumentException";
15682545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exceptionMessage = "offset < 0";
1569a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        goto exit;
1570a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    }
1571a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    _remaining = _env->GetArrayLength(params_ref) - offset;
1572a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    params_base = (GLfixed *)
1573a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        _env->GetPrimitiveArrayCritical(params_ref, (jboolean *)0);
1574a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    params = params_base + offset;
1575a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich
1576a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    glPointParameterxvOES(
1577a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        (GLenum)pname,
1578a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        (GLfixed *)params
1579a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    );
1580a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich
1581a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevichexit:
1582a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    if (params_base) {
1583a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        _env->ReleasePrimitiveArrayCritical(params_ref, params_base,
1584a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich            JNI_ABORT);
1585a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    }
15862545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer    if (_exception) {
15872545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        jniThrowException(_env, _exceptionType, _exceptionMessage);
15882545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer    }
158927f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich}
159027f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich
159127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glPointParameterxvOES ( GLenum pname, const GLfixed *params ) */
159227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void
159327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glPointParameterxvOES__ILjava_nio_IntBuffer_2
159427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich  (JNIEnv *_env, jobject _this, jint pname, jobject params_buf) {
1595a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    jarray _array = (jarray) 0;
1596a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    jint _remaining;
1597a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    GLfixed *params = (GLfixed *) 0;
1598a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich
1599a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    params = (GLfixed *)getPointer(_env, params_buf, &_array, &_remaining);
1600a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    glPointParameterxvOES(
1601a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        (GLenum)pname,
1602a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        (GLfixed *)params
1603a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    );
1604a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    if (_array) {
1605a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        releasePointer(_env, _array, params, JNI_FALSE);
1606a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    }
160727f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich}
160827f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich
160927f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glPointSizexOES ( GLfixed size ) */
161027f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void
161127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glPointSizexOES__I
161227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich  (JNIEnv *_env, jobject _this, jint size) {
1613a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    glPointSizexOES(
1614a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        (GLfixed)size
1615a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    );
161627f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich}
161727f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich
161827f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glPolygonOffsetxOES ( GLfixed factor, GLfixed units ) */
161927f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void
162027f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glPolygonOffsetxOES__II
162127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich  (JNIEnv *_env, jobject _this, jint factor, jint units) {
1622a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    glPolygonOffsetxOES(
1623a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        (GLfixed)factor,
1624a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        (GLfixed)units
1625a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    );
162627f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich}
162727f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich
162827f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glRotatexOES ( GLfixed angle, GLfixed x, GLfixed y, GLfixed z ) */
162927f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void
163027f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glRotatexOES__IIII
163127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich  (JNIEnv *_env, jobject _this, jint angle, jint x, jint y, jint z) {
1632a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    glRotatexOES(
1633a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        (GLfixed)angle,
1634a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        (GLfixed)x,
1635a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        (GLfixed)y,
1636a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        (GLfixed)z
1637a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    );
163827f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich}
163927f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich
164027f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glSampleCoveragexOES ( GLclampx value, GLboolean invert ) */
164127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void
164227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glSampleCoveragexOES__IZ
164327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich  (JNIEnv *_env, jobject _this, jint value, jboolean invert) {
1644a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    glSampleCoveragexOES(
1645a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        (GLclampx)value,
1646a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        (GLboolean)invert
1647a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    );
164827f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich}
164927f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich
165027f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glScalexOES ( GLfixed x, GLfixed y, GLfixed z ) */
165127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void
165227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glScalexOES__III
165327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich  (JNIEnv *_env, jobject _this, jint x, jint y, jint z) {
1654a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    glScalexOES(
1655a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        (GLfixed)x,
1656a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        (GLfixed)y,
1657a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        (GLfixed)z
1658a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    );
165927f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich}
166027f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich
166127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glTexEnvxOES ( GLenum target, GLenum pname, GLfixed param ) */
166227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void
166327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glTexEnvxOES__III
166427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich  (JNIEnv *_env, jobject _this, jint target, jint pname, jint param) {
1665a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    glTexEnvxOES(
1666a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        (GLenum)target,
1667a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        (GLenum)pname,
1668a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        (GLfixed)param
1669a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    );
167027f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich}
167127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich
167227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glTexEnvxvOES ( GLenum target, GLenum pname, const GLfixed *params ) */
167327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void
167427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glTexEnvxvOES__II_3II
167527f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich  (JNIEnv *_env, jobject _this, jint target, jint pname, jintArray params_ref, jint offset) {
16762545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer    jint _exception = 0;
16772545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer    const char * _exceptionType;
16782545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer    const char * _exceptionMessage;
1679a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    GLfixed *params_base = (GLfixed *) 0;
1680a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    jint _remaining;
1681a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    GLfixed *params = (GLfixed *) 0;
1682a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich
1683a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    if (!params_ref) {
16842545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exception = 1;
16852545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exceptionType = "java/lang/IllegalArgumentException";
16862545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exceptionMessage = "params == null";
1687a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        goto exit;
1688a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    }
1689a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    if (offset < 0) {
16902545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exception = 1;
16912545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exceptionType = "java/lang/IllegalArgumentException";
16922545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exceptionMessage = "offset < 0";
1693a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        goto exit;
1694a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    }
1695a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    _remaining = _env->GetArrayLength(params_ref) - offset;
1696a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    params_base = (GLfixed *)
1697a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        _env->GetPrimitiveArrayCritical(params_ref, (jboolean *)0);
1698a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    params = params_base + offset;
1699a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich
1700a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    glTexEnvxvOES(
1701a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        (GLenum)target,
1702a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        (GLenum)pname,
1703a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        (GLfixed *)params
1704a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    );
1705a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich
1706a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevichexit:
1707a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    if (params_base) {
1708a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        _env->ReleasePrimitiveArrayCritical(params_ref, params_base,
1709a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich            JNI_ABORT);
1710a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    }
17112545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer    if (_exception) {
17122545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        jniThrowException(_env, _exceptionType, _exceptionMessage);
17132545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer    }
171427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich}
171527f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich
171627f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glTexEnvxvOES ( GLenum target, GLenum pname, const GLfixed *params ) */
171727f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void
171827f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glTexEnvxvOES__IILjava_nio_IntBuffer_2
171927f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich  (JNIEnv *_env, jobject _this, jint target, jint pname, jobject params_buf) {
1720a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    jarray _array = (jarray) 0;
1721a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    jint _remaining;
1722a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    GLfixed *params = (GLfixed *) 0;
1723a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich
1724a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    params = (GLfixed *)getPointer(_env, params_buf, &_array, &_remaining);
1725a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    glTexEnvxvOES(
1726a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        (GLenum)target,
1727a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        (GLenum)pname,
1728a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        (GLfixed *)params
1729a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    );
1730a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    if (_array) {
1731a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        releasePointer(_env, _array, params, JNI_FALSE);
1732a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    }
173327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich}
173427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich
173527f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glTexParameterxOES ( GLenum target, GLenum pname, GLfixed param ) */
173627f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void
173727f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glTexParameterxOES__III
173827f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich  (JNIEnv *_env, jobject _this, jint target, jint pname, jint param) {
1739a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    glTexParameterxOES(
1740a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        (GLenum)target,
1741a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        (GLenum)pname,
1742a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        (GLfixed)param
1743a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    );
174427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich}
174527f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich
174627f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glTexParameterxvOES ( GLenum target, GLenum pname, const GLfixed *params ) */
174727f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void
174827f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glTexParameterxvOES__II_3II
174927f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich  (JNIEnv *_env, jobject _this, jint target, jint pname, jintArray params_ref, jint offset) {
17502545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer    jint _exception = 0;
17512545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer    const char * _exceptionType;
17522545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer    const char * _exceptionMessage;
1753a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    GLfixed *params_base = (GLfixed *) 0;
1754a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    jint _remaining;
1755a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    GLfixed *params = (GLfixed *) 0;
1756a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich
1757a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    if (!params_ref) {
17582545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exception = 1;
17592545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exceptionType = "java/lang/IllegalArgumentException";
17602545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exceptionMessage = "params == null";
1761a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        goto exit;
1762a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    }
1763a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    if (offset < 0) {
17642545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exception = 1;
17652545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exceptionType = "java/lang/IllegalArgumentException";
17662545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exceptionMessage = "offset < 0";
1767a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        goto exit;
1768a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    }
1769a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    _remaining = _env->GetArrayLength(params_ref) - offset;
1770a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    params_base = (GLfixed *)
1771a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        _env->GetPrimitiveArrayCritical(params_ref, (jboolean *)0);
1772a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    params = params_base + offset;
1773a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich
1774a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    glTexParameterxvOES(
1775a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        (GLenum)target,
1776a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        (GLenum)pname,
1777a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        (GLfixed *)params
1778a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    );
1779a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich
1780a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevichexit:
1781a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    if (params_base) {
1782a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        _env->ReleasePrimitiveArrayCritical(params_ref, params_base,
1783a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich            JNI_ABORT);
1784a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    }
17852545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer    if (_exception) {
17862545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        jniThrowException(_env, _exceptionType, _exceptionMessage);
17872545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer    }
178827f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich}
178927f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich
179027f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glTexParameterxvOES ( GLenum target, GLenum pname, const GLfixed *params ) */
179127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void
179227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glTexParameterxvOES__IILjava_nio_IntBuffer_2
179327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich  (JNIEnv *_env, jobject _this, jint target, jint pname, jobject params_buf) {
1794a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    jarray _array = (jarray) 0;
1795a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    jint _remaining;
1796a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    GLfixed *params = (GLfixed *) 0;
1797a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich
1798a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    params = (GLfixed *)getPointer(_env, params_buf, &_array, &_remaining);
1799a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    glTexParameterxvOES(
1800a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        (GLenum)target,
1801a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        (GLenum)pname,
1802a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        (GLfixed *)params
1803a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    );
1804a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    if (_array) {
1805a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        releasePointer(_env, _array, params, JNI_FALSE);
1806a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    }
180727f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich}
180827f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich
180927f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glTranslatexOES ( GLfixed x, GLfixed y, GLfixed z ) */
181027f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void
181127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glTranslatexOES__III
181227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich  (JNIEnv *_env, jobject _this, jint x, jint y, jint z) {
1813a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    glTranslatexOES(
1814a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        (GLfixed)x,
1815a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        (GLfixed)y,
1816a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        (GLfixed)z
1817a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    );
181827f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich}
181927f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich
182027f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* GLboolean glIsRenderbufferOES ( GLuint renderbuffer ) */
182127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic jboolean
182227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glIsRenderbufferOES__I
182327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich  (JNIEnv *_env, jobject _this, jint renderbuffer) {
182473108675c944ab4ee89631dced23566b12341b66Jack Palevich    GLboolean _returnValue;
182573108675c944ab4ee89631dced23566b12341b66Jack Palevich    _returnValue = glIsRenderbufferOES(
182673108675c944ab4ee89631dced23566b12341b66Jack Palevich        (GLuint)renderbuffer
182773108675c944ab4ee89631dced23566b12341b66Jack Palevich    );
182873108675c944ab4ee89631dced23566b12341b66Jack Palevich    return _returnValue;
182927f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich}
183027f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich
183127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glBindRenderbufferOES ( GLenum target, GLuint renderbuffer ) */
183227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void
183327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glBindRenderbufferOES__II
183427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich  (JNIEnv *_env, jobject _this, jint target, jint renderbuffer) {
183573108675c944ab4ee89631dced23566b12341b66Jack Palevich    glBindRenderbufferOES(
183673108675c944ab4ee89631dced23566b12341b66Jack Palevich        (GLenum)target,
183773108675c944ab4ee89631dced23566b12341b66Jack Palevich        (GLuint)renderbuffer
183873108675c944ab4ee89631dced23566b12341b66Jack Palevich    );
183927f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich}
184027f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich
184127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glDeleteRenderbuffersOES ( GLsizei n, const GLuint *renderbuffers ) */
184227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void
184327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glDeleteRenderbuffersOES__I_3II
184427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich  (JNIEnv *_env, jobject _this, jint n, jintArray renderbuffers_ref, jint offset) {
18452545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer    jint _exception = 0;
18462545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer    const char * _exceptionType;
18472545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer    const char * _exceptionMessage;
184873108675c944ab4ee89631dced23566b12341b66Jack Palevich    GLuint *renderbuffers_base = (GLuint *) 0;
184973108675c944ab4ee89631dced23566b12341b66Jack Palevich    jint _remaining;
185073108675c944ab4ee89631dced23566b12341b66Jack Palevich    GLuint *renderbuffers = (GLuint *) 0;
185173108675c944ab4ee89631dced23566b12341b66Jack Palevich
185273108675c944ab4ee89631dced23566b12341b66Jack Palevich    if (!renderbuffers_ref) {
18532545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exception = 1;
18542545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exceptionType = "java/lang/IllegalArgumentException";
18552545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exceptionMessage = "renderbuffers == null";
185673108675c944ab4ee89631dced23566b12341b66Jack Palevich        goto exit;
185773108675c944ab4ee89631dced23566b12341b66Jack Palevich    }
185873108675c944ab4ee89631dced23566b12341b66Jack Palevich    if (offset < 0) {
18592545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exception = 1;
18602545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exceptionType = "java/lang/IllegalArgumentException";
18612545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exceptionMessage = "offset < 0";
186273108675c944ab4ee89631dced23566b12341b66Jack Palevich        goto exit;
186373108675c944ab4ee89631dced23566b12341b66Jack Palevich    }
186473108675c944ab4ee89631dced23566b12341b66Jack Palevich    _remaining = _env->GetArrayLength(renderbuffers_ref) - offset;
186573108675c944ab4ee89631dced23566b12341b66Jack Palevich    if (_remaining < n) {
18662545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exception = 1;
18672545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exceptionType = "java/lang/IllegalArgumentException";
18682545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exceptionMessage = "length - offset < n < needed";
186973108675c944ab4ee89631dced23566b12341b66Jack Palevich        goto exit;
187073108675c944ab4ee89631dced23566b12341b66Jack Palevich    }
187173108675c944ab4ee89631dced23566b12341b66Jack Palevich    renderbuffers_base = (GLuint *)
187273108675c944ab4ee89631dced23566b12341b66Jack Palevich        _env->GetPrimitiveArrayCritical(renderbuffers_ref, (jboolean *)0);
187373108675c944ab4ee89631dced23566b12341b66Jack Palevich    renderbuffers = renderbuffers_base + offset;
187473108675c944ab4ee89631dced23566b12341b66Jack Palevich
187573108675c944ab4ee89631dced23566b12341b66Jack Palevich    glDeleteRenderbuffersOES(
187673108675c944ab4ee89631dced23566b12341b66Jack Palevich        (GLsizei)n,
187773108675c944ab4ee89631dced23566b12341b66Jack Palevich        (GLuint *)renderbuffers
187873108675c944ab4ee89631dced23566b12341b66Jack Palevich    );
187973108675c944ab4ee89631dced23566b12341b66Jack Palevich
188073108675c944ab4ee89631dced23566b12341b66Jack Palevichexit:
188173108675c944ab4ee89631dced23566b12341b66Jack Palevich    if (renderbuffers_base) {
188273108675c944ab4ee89631dced23566b12341b66Jack Palevich        _env->ReleasePrimitiveArrayCritical(renderbuffers_ref, renderbuffers_base,
188373108675c944ab4ee89631dced23566b12341b66Jack Palevich            JNI_ABORT);
188473108675c944ab4ee89631dced23566b12341b66Jack Palevich    }
18852545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer    if (_exception) {
18862545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        jniThrowException(_env, _exceptionType, _exceptionMessage);
18872545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer    }
188827f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich}
188927f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich
189027f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glDeleteRenderbuffersOES ( GLsizei n, const GLuint *renderbuffers ) */
189127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void
189227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glDeleteRenderbuffersOES__ILjava_nio_IntBuffer_2
189327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich  (JNIEnv *_env, jobject _this, jint n, jobject renderbuffers_buf) {
18942545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer    jint _exception = 0;
18952545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer    const char * _exceptionType;
18962545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer    const char * _exceptionMessage;
189773108675c944ab4ee89631dced23566b12341b66Jack Palevich    jarray _array = (jarray) 0;
189873108675c944ab4ee89631dced23566b12341b66Jack Palevich    jint _remaining;
189973108675c944ab4ee89631dced23566b12341b66Jack Palevich    GLuint *renderbuffers = (GLuint *) 0;
190073108675c944ab4ee89631dced23566b12341b66Jack Palevich
190173108675c944ab4ee89631dced23566b12341b66Jack Palevich    renderbuffers = (GLuint *)getPointer(_env, renderbuffers_buf, &_array, &_remaining);
190273108675c944ab4ee89631dced23566b12341b66Jack Palevich    if (_remaining < n) {
19032545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exception = 1;
19042545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exceptionType = "java/lang/IllegalArgumentException";
19052545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exceptionMessage = "remaining() < n < needed";
190673108675c944ab4ee89631dced23566b12341b66Jack Palevich        goto exit;
190773108675c944ab4ee89631dced23566b12341b66Jack Palevich    }
190873108675c944ab4ee89631dced23566b12341b66Jack Palevich    glDeleteRenderbuffersOES(
190973108675c944ab4ee89631dced23566b12341b66Jack Palevich        (GLsizei)n,
191073108675c944ab4ee89631dced23566b12341b66Jack Palevich        (GLuint *)renderbuffers
191173108675c944ab4ee89631dced23566b12341b66Jack Palevich    );
191273108675c944ab4ee89631dced23566b12341b66Jack Palevich
191373108675c944ab4ee89631dced23566b12341b66Jack Palevichexit:
191473108675c944ab4ee89631dced23566b12341b66Jack Palevich    if (_array) {
191573108675c944ab4ee89631dced23566b12341b66Jack Palevich        releasePointer(_env, _array, renderbuffers, JNI_FALSE);
191673108675c944ab4ee89631dced23566b12341b66Jack Palevich    }
19172545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer    if (_exception) {
19182545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        jniThrowException(_env, _exceptionType, _exceptionMessage);
19192545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer    }
192027f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich}
192127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich
192227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glGenRenderbuffersOES ( GLsizei n, GLuint *renderbuffers ) */
192327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void
192427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glGenRenderbuffersOES__I_3II
192527f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich  (JNIEnv *_env, jobject _this, jint n, jintArray renderbuffers_ref, jint offset) {
192673108675c944ab4ee89631dced23566b12341b66Jack Palevich    jint _exception = 0;
19272545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer    const char * _exceptionType;
19282545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer    const char * _exceptionMessage;
192973108675c944ab4ee89631dced23566b12341b66Jack Palevich    GLuint *renderbuffers_base = (GLuint *) 0;
193073108675c944ab4ee89631dced23566b12341b66Jack Palevich    jint _remaining;
193173108675c944ab4ee89631dced23566b12341b66Jack Palevich    GLuint *renderbuffers = (GLuint *) 0;
193273108675c944ab4ee89631dced23566b12341b66Jack Palevich
193373108675c944ab4ee89631dced23566b12341b66Jack Palevich    if (!renderbuffers_ref) {
193473108675c944ab4ee89631dced23566b12341b66Jack Palevich        _exception = 1;
19352545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exceptionType = "java/lang/IllegalArgumentException";
19362545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exceptionMessage = "renderbuffers == null";
193773108675c944ab4ee89631dced23566b12341b66Jack Palevich        goto exit;
193873108675c944ab4ee89631dced23566b12341b66Jack Palevich    }
193973108675c944ab4ee89631dced23566b12341b66Jack Palevich    if (offset < 0) {
194073108675c944ab4ee89631dced23566b12341b66Jack Palevich        _exception = 1;
19412545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exceptionType = "java/lang/IllegalArgumentException";
19422545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exceptionMessage = "offset < 0";
194373108675c944ab4ee89631dced23566b12341b66Jack Palevich        goto exit;
194473108675c944ab4ee89631dced23566b12341b66Jack Palevich    }
194573108675c944ab4ee89631dced23566b12341b66Jack Palevich    _remaining = _env->GetArrayLength(renderbuffers_ref) - offset;
194673108675c944ab4ee89631dced23566b12341b66Jack Palevich    if (_remaining < n) {
194773108675c944ab4ee89631dced23566b12341b66Jack Palevich        _exception = 1;
19482545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exceptionType = "java/lang/IllegalArgumentException";
19492545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exceptionMessage = "length - offset < n < needed";
195073108675c944ab4ee89631dced23566b12341b66Jack Palevich        goto exit;
195173108675c944ab4ee89631dced23566b12341b66Jack Palevich    }
195273108675c944ab4ee89631dced23566b12341b66Jack Palevich    renderbuffers_base = (GLuint *)
195373108675c944ab4ee89631dced23566b12341b66Jack Palevich        _env->GetPrimitiveArrayCritical(renderbuffers_ref, (jboolean *)0);
195473108675c944ab4ee89631dced23566b12341b66Jack Palevich    renderbuffers = renderbuffers_base + offset;
195573108675c944ab4ee89631dced23566b12341b66Jack Palevich
195673108675c944ab4ee89631dced23566b12341b66Jack Palevich    glGenRenderbuffersOES(
195773108675c944ab4ee89631dced23566b12341b66Jack Palevich        (GLsizei)n,
195873108675c944ab4ee89631dced23566b12341b66Jack Palevich        (GLuint *)renderbuffers
195973108675c944ab4ee89631dced23566b12341b66Jack Palevich    );
196073108675c944ab4ee89631dced23566b12341b66Jack Palevich
196173108675c944ab4ee89631dced23566b12341b66Jack Palevichexit:
196273108675c944ab4ee89631dced23566b12341b66Jack Palevich    if (renderbuffers_base) {
196373108675c944ab4ee89631dced23566b12341b66Jack Palevich        _env->ReleasePrimitiveArrayCritical(renderbuffers_ref, renderbuffers_base,
196473108675c944ab4ee89631dced23566b12341b66Jack Palevich            _exception ? JNI_ABORT: 0);
196573108675c944ab4ee89631dced23566b12341b66Jack Palevich    }
19662545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer    if (_exception) {
19672545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        jniThrowException(_env, _exceptionType, _exceptionMessage);
19682545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer    }
196927f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich}
197027f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich
197127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glGenRenderbuffersOES ( GLsizei n, GLuint *renderbuffers ) */
197227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void
197327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glGenRenderbuffersOES__ILjava_nio_IntBuffer_2
197427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich  (JNIEnv *_env, jobject _this, jint n, jobject renderbuffers_buf) {
197573108675c944ab4ee89631dced23566b12341b66Jack Palevich    jint _exception = 0;
19762545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer    const char * _exceptionType;
19772545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer    const char * _exceptionMessage;
197873108675c944ab4ee89631dced23566b12341b66Jack Palevich    jarray _array = (jarray) 0;
197973108675c944ab4ee89631dced23566b12341b66Jack Palevich    jint _remaining;
198073108675c944ab4ee89631dced23566b12341b66Jack Palevich    GLuint *renderbuffers = (GLuint *) 0;
198173108675c944ab4ee89631dced23566b12341b66Jack Palevich
198273108675c944ab4ee89631dced23566b12341b66Jack Palevich    renderbuffers = (GLuint *)getPointer(_env, renderbuffers_buf, &_array, &_remaining);
198373108675c944ab4ee89631dced23566b12341b66Jack Palevich    if (_remaining < n) {
198473108675c944ab4ee89631dced23566b12341b66Jack Palevich        _exception = 1;
19852545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exceptionType = "java/lang/IllegalArgumentException";
19862545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exceptionMessage = "remaining() < n < needed";
198773108675c944ab4ee89631dced23566b12341b66Jack Palevich        goto exit;
198873108675c944ab4ee89631dced23566b12341b66Jack Palevich    }
198973108675c944ab4ee89631dced23566b12341b66Jack Palevich    glGenRenderbuffersOES(
199073108675c944ab4ee89631dced23566b12341b66Jack Palevich        (GLsizei)n,
199173108675c944ab4ee89631dced23566b12341b66Jack Palevich        (GLuint *)renderbuffers
199273108675c944ab4ee89631dced23566b12341b66Jack Palevich    );
199373108675c944ab4ee89631dced23566b12341b66Jack Palevich
199473108675c944ab4ee89631dced23566b12341b66Jack Palevichexit:
199573108675c944ab4ee89631dced23566b12341b66Jack Palevich    if (_array) {
199673108675c944ab4ee89631dced23566b12341b66Jack Palevich        releasePointer(_env, _array, renderbuffers, _exception ? JNI_FALSE : JNI_TRUE);
199773108675c944ab4ee89631dced23566b12341b66Jack Palevich    }
19982545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer    if (_exception) {
19992545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        jniThrowException(_env, _exceptionType, _exceptionMessage);
20002545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer    }
200127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich}
200227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich
200327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glRenderbufferStorageOES ( GLenum target, GLenum internalformat, GLsizei width, GLsizei height ) */
200427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void
200527f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glRenderbufferStorageOES__IIII
200627f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich  (JNIEnv *_env, jobject _this, jint target, jint internalformat, jint width, jint height) {
200773108675c944ab4ee89631dced23566b12341b66Jack Palevich    glRenderbufferStorageOES(
200873108675c944ab4ee89631dced23566b12341b66Jack Palevich        (GLenum)target,
200973108675c944ab4ee89631dced23566b12341b66Jack Palevich        (GLenum)internalformat,
201073108675c944ab4ee89631dced23566b12341b66Jack Palevich        (GLsizei)width,
201173108675c944ab4ee89631dced23566b12341b66Jack Palevich        (GLsizei)height
201273108675c944ab4ee89631dced23566b12341b66Jack Palevich    );
201327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich}
201427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich
201527f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glGetRenderbufferParameterivOES ( GLenum target, GLenum pname, GLint *params ) */
201627f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void
201727f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glGetRenderbufferParameterivOES__II_3II
201827f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich  (JNIEnv *_env, jobject _this, jint target, jint pname, jintArray params_ref, jint offset) {
201973108675c944ab4ee89631dced23566b12341b66Jack Palevich    jint _exception = 0;
20202545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer    const char * _exceptionType;
20212545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer    const char * _exceptionMessage;
202273108675c944ab4ee89631dced23566b12341b66Jack Palevich    GLint *params_base = (GLint *) 0;
202373108675c944ab4ee89631dced23566b12341b66Jack Palevich    jint _remaining;
202473108675c944ab4ee89631dced23566b12341b66Jack Palevich    GLint *params = (GLint *) 0;
202573108675c944ab4ee89631dced23566b12341b66Jack Palevich
202673108675c944ab4ee89631dced23566b12341b66Jack Palevich    if (!params_ref) {
202773108675c944ab4ee89631dced23566b12341b66Jack Palevich        _exception = 1;
20282545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exceptionType = "java/lang/IllegalArgumentException";
20292545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exceptionMessage = "params == null";
203073108675c944ab4ee89631dced23566b12341b66Jack Palevich        goto exit;
203173108675c944ab4ee89631dced23566b12341b66Jack Palevich    }
203273108675c944ab4ee89631dced23566b12341b66Jack Palevich    if (offset < 0) {
203373108675c944ab4ee89631dced23566b12341b66Jack Palevich        _exception = 1;
20342545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exceptionType = "java/lang/IllegalArgumentException";
20352545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exceptionMessage = "offset < 0";
203673108675c944ab4ee89631dced23566b12341b66Jack Palevich        goto exit;
203773108675c944ab4ee89631dced23566b12341b66Jack Palevich    }
203873108675c944ab4ee89631dced23566b12341b66Jack Palevich    _remaining = _env->GetArrayLength(params_ref) - offset;
203973108675c944ab4ee89631dced23566b12341b66Jack Palevich    if (_remaining < 1) {
204073108675c944ab4ee89631dced23566b12341b66Jack Palevich        _exception = 1;
20412545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exceptionType = "java/lang/IllegalArgumentException";
20422545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exceptionMessage = "length - offset < 1 < needed";
204373108675c944ab4ee89631dced23566b12341b66Jack Palevich        goto exit;
204473108675c944ab4ee89631dced23566b12341b66Jack Palevich    }
204573108675c944ab4ee89631dced23566b12341b66Jack Palevich    params_base = (GLint *)
204673108675c944ab4ee89631dced23566b12341b66Jack Palevich        _env->GetPrimitiveArrayCritical(params_ref, (jboolean *)0);
204773108675c944ab4ee89631dced23566b12341b66Jack Palevich    params = params_base + offset;
204873108675c944ab4ee89631dced23566b12341b66Jack Palevich
204973108675c944ab4ee89631dced23566b12341b66Jack Palevich    glGetRenderbufferParameterivOES(
205073108675c944ab4ee89631dced23566b12341b66Jack Palevich        (GLenum)target,
205173108675c944ab4ee89631dced23566b12341b66Jack Palevich        (GLenum)pname,
205273108675c944ab4ee89631dced23566b12341b66Jack Palevich        (GLint *)params
205373108675c944ab4ee89631dced23566b12341b66Jack Palevich    );
205473108675c944ab4ee89631dced23566b12341b66Jack Palevich
205573108675c944ab4ee89631dced23566b12341b66Jack Palevichexit:
205673108675c944ab4ee89631dced23566b12341b66Jack Palevich    if (params_base) {
205773108675c944ab4ee89631dced23566b12341b66Jack Palevich        _env->ReleasePrimitiveArrayCritical(params_ref, params_base,
205873108675c944ab4ee89631dced23566b12341b66Jack Palevich            _exception ? JNI_ABORT: 0);
205973108675c944ab4ee89631dced23566b12341b66Jack Palevich    }
20602545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer    if (_exception) {
20612545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        jniThrowException(_env, _exceptionType, _exceptionMessage);
20622545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer    }
206327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich}
206427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich
206527f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glGetRenderbufferParameterivOES ( GLenum target, GLenum pname, GLint *params ) */
206627f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void
206727f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glGetRenderbufferParameterivOES__IILjava_nio_IntBuffer_2
206827f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich  (JNIEnv *_env, jobject _this, jint target, jint pname, jobject params_buf) {
206973108675c944ab4ee89631dced23566b12341b66Jack Palevich    jint _exception = 0;
20702545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer    const char * _exceptionType;
20712545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer    const char * _exceptionMessage;
207273108675c944ab4ee89631dced23566b12341b66Jack Palevich    jarray _array = (jarray) 0;
207373108675c944ab4ee89631dced23566b12341b66Jack Palevich    jint _remaining;
207473108675c944ab4ee89631dced23566b12341b66Jack Palevich    GLint *params = (GLint *) 0;
207573108675c944ab4ee89631dced23566b12341b66Jack Palevich
207673108675c944ab4ee89631dced23566b12341b66Jack Palevich    params = (GLint *)getPointer(_env, params_buf, &_array, &_remaining);
207773108675c944ab4ee89631dced23566b12341b66Jack Palevich    if (_remaining < 1) {
207873108675c944ab4ee89631dced23566b12341b66Jack Palevich        _exception = 1;
20792545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exceptionType = "java/lang/IllegalArgumentException";
20802545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exceptionMessage = "remaining() < 1 < needed";
208173108675c944ab4ee89631dced23566b12341b66Jack Palevich        goto exit;
208273108675c944ab4ee89631dced23566b12341b66Jack Palevich    }
208373108675c944ab4ee89631dced23566b12341b66Jack Palevich    glGetRenderbufferParameterivOES(
208473108675c944ab4ee89631dced23566b12341b66Jack Palevich        (GLenum)target,
208573108675c944ab4ee89631dced23566b12341b66Jack Palevich        (GLenum)pname,
208673108675c944ab4ee89631dced23566b12341b66Jack Palevich        (GLint *)params
208773108675c944ab4ee89631dced23566b12341b66Jack Palevich    );
208873108675c944ab4ee89631dced23566b12341b66Jack Palevich
208973108675c944ab4ee89631dced23566b12341b66Jack Palevichexit:
209073108675c944ab4ee89631dced23566b12341b66Jack Palevich    if (_array) {
209173108675c944ab4ee89631dced23566b12341b66Jack Palevich        releasePointer(_env, _array, params, _exception ? JNI_FALSE : JNI_TRUE);
209273108675c944ab4ee89631dced23566b12341b66Jack Palevich    }
20932545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer    if (_exception) {
20942545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        jniThrowException(_env, _exceptionType, _exceptionMessage);
20952545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer    }
209627f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich}
209727f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich
209827f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* GLboolean glIsFramebufferOES ( GLuint framebuffer ) */
209927f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic jboolean
210027f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glIsFramebufferOES__I
210127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich  (JNIEnv *_env, jobject _this, jint framebuffer) {
210273108675c944ab4ee89631dced23566b12341b66Jack Palevich    GLboolean _returnValue;
210373108675c944ab4ee89631dced23566b12341b66Jack Palevich    _returnValue = glIsFramebufferOES(
210473108675c944ab4ee89631dced23566b12341b66Jack Palevich        (GLuint)framebuffer
210573108675c944ab4ee89631dced23566b12341b66Jack Palevich    );
210673108675c944ab4ee89631dced23566b12341b66Jack Palevich    return _returnValue;
210727f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich}
210827f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich
210927f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glBindFramebufferOES ( GLenum target, GLuint framebuffer ) */
211027f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void
211127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glBindFramebufferOES__II
211227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich  (JNIEnv *_env, jobject _this, jint target, jint framebuffer) {
211373108675c944ab4ee89631dced23566b12341b66Jack Palevich    glBindFramebufferOES(
211473108675c944ab4ee89631dced23566b12341b66Jack Palevich        (GLenum)target,
211573108675c944ab4ee89631dced23566b12341b66Jack Palevich        (GLuint)framebuffer
211673108675c944ab4ee89631dced23566b12341b66Jack Palevich    );
211727f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich}
211827f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich
211927f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glDeleteFramebuffersOES ( GLsizei n, const GLuint *framebuffers ) */
212027f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void
212127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glDeleteFramebuffersOES__I_3II
212227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich  (JNIEnv *_env, jobject _this, jint n, jintArray framebuffers_ref, jint offset) {
21232545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer    jint _exception = 0;
21242545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer    const char * _exceptionType;
21252545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer    const char * _exceptionMessage;
212673108675c944ab4ee89631dced23566b12341b66Jack Palevich    GLuint *framebuffers_base = (GLuint *) 0;
212773108675c944ab4ee89631dced23566b12341b66Jack Palevich    jint _remaining;
212873108675c944ab4ee89631dced23566b12341b66Jack Palevich    GLuint *framebuffers = (GLuint *) 0;
212973108675c944ab4ee89631dced23566b12341b66Jack Palevich
213073108675c944ab4ee89631dced23566b12341b66Jack Palevich    if (!framebuffers_ref) {
21312545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exception = 1;
21322545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exceptionType = "java/lang/IllegalArgumentException";
21332545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exceptionMessage = "framebuffers == null";
213473108675c944ab4ee89631dced23566b12341b66Jack Palevich        goto exit;
213573108675c944ab4ee89631dced23566b12341b66Jack Palevich    }
213673108675c944ab4ee89631dced23566b12341b66Jack Palevich    if (offset < 0) {
21372545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exception = 1;
21382545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exceptionType = "java/lang/IllegalArgumentException";
21392545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exceptionMessage = "offset < 0";
214073108675c944ab4ee89631dced23566b12341b66Jack Palevich        goto exit;
214173108675c944ab4ee89631dced23566b12341b66Jack Palevich    }
214273108675c944ab4ee89631dced23566b12341b66Jack Palevich    _remaining = _env->GetArrayLength(framebuffers_ref) - offset;
214373108675c944ab4ee89631dced23566b12341b66Jack Palevich    if (_remaining < n) {
21442545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exception = 1;
21452545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exceptionType = "java/lang/IllegalArgumentException";
21462545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exceptionMessage = "length - offset < n < needed";
214773108675c944ab4ee89631dced23566b12341b66Jack Palevich        goto exit;
214873108675c944ab4ee89631dced23566b12341b66Jack Palevich    }
214973108675c944ab4ee89631dced23566b12341b66Jack Palevich    framebuffers_base = (GLuint *)
215073108675c944ab4ee89631dced23566b12341b66Jack Palevich        _env->GetPrimitiveArrayCritical(framebuffers_ref, (jboolean *)0);
215173108675c944ab4ee89631dced23566b12341b66Jack Palevich    framebuffers = framebuffers_base + offset;
215273108675c944ab4ee89631dced23566b12341b66Jack Palevich
215373108675c944ab4ee89631dced23566b12341b66Jack Palevich    glDeleteFramebuffersOES(
215473108675c944ab4ee89631dced23566b12341b66Jack Palevich        (GLsizei)n,
215573108675c944ab4ee89631dced23566b12341b66Jack Palevich        (GLuint *)framebuffers
215673108675c944ab4ee89631dced23566b12341b66Jack Palevich    );
215773108675c944ab4ee89631dced23566b12341b66Jack Palevich
215873108675c944ab4ee89631dced23566b12341b66Jack Palevichexit:
215973108675c944ab4ee89631dced23566b12341b66Jack Palevich    if (framebuffers_base) {
216073108675c944ab4ee89631dced23566b12341b66Jack Palevich        _env->ReleasePrimitiveArrayCritical(framebuffers_ref, framebuffers_base,
216173108675c944ab4ee89631dced23566b12341b66Jack Palevich            JNI_ABORT);
216273108675c944ab4ee89631dced23566b12341b66Jack Palevich    }
21632545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer    if (_exception) {
21642545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        jniThrowException(_env, _exceptionType, _exceptionMessage);
21652545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer    }
216627f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich}
216727f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich
216827f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glDeleteFramebuffersOES ( GLsizei n, const GLuint *framebuffers ) */
216927f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void
217027f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glDeleteFramebuffersOES__ILjava_nio_IntBuffer_2
217127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich  (JNIEnv *_env, jobject _this, jint n, jobject framebuffers_buf) {
21722545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer    jint _exception = 0;
21732545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer    const char * _exceptionType;
21742545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer    const char * _exceptionMessage;
217573108675c944ab4ee89631dced23566b12341b66Jack Palevich    jarray _array = (jarray) 0;
217673108675c944ab4ee89631dced23566b12341b66Jack Palevich    jint _remaining;
217773108675c944ab4ee89631dced23566b12341b66Jack Palevich    GLuint *framebuffers = (GLuint *) 0;
217873108675c944ab4ee89631dced23566b12341b66Jack Palevich
217973108675c944ab4ee89631dced23566b12341b66Jack Palevich    framebuffers = (GLuint *)getPointer(_env, framebuffers_buf, &_array, &_remaining);
218073108675c944ab4ee89631dced23566b12341b66Jack Palevich    if (_remaining < n) {
21812545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exception = 1;
21822545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exceptionType = "java/lang/IllegalArgumentException";
21832545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exceptionMessage = "remaining() < n < needed";
218473108675c944ab4ee89631dced23566b12341b66Jack Palevich        goto exit;
218573108675c944ab4ee89631dced23566b12341b66Jack Palevich    }
218673108675c944ab4ee89631dced23566b12341b66Jack Palevich    glDeleteFramebuffersOES(
218773108675c944ab4ee89631dced23566b12341b66Jack Palevich        (GLsizei)n,
218873108675c944ab4ee89631dced23566b12341b66Jack Palevich        (GLuint *)framebuffers
218973108675c944ab4ee89631dced23566b12341b66Jack Palevich    );
219073108675c944ab4ee89631dced23566b12341b66Jack Palevich
219173108675c944ab4ee89631dced23566b12341b66Jack Palevichexit:
219273108675c944ab4ee89631dced23566b12341b66Jack Palevich    if (_array) {
219373108675c944ab4ee89631dced23566b12341b66Jack Palevich        releasePointer(_env, _array, framebuffers, JNI_FALSE);
219473108675c944ab4ee89631dced23566b12341b66Jack Palevich    }
21952545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer    if (_exception) {
21962545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        jniThrowException(_env, _exceptionType, _exceptionMessage);
21972545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer    }
219827f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich}
219927f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich
220027f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glGenFramebuffersOES ( GLsizei n, GLuint *framebuffers ) */
220127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void
220227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glGenFramebuffersOES__I_3II
220327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich  (JNIEnv *_env, jobject _this, jint n, jintArray framebuffers_ref, jint offset) {
220473108675c944ab4ee89631dced23566b12341b66Jack Palevich    jint _exception = 0;
22052545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer    const char * _exceptionType;
22062545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer    const char * _exceptionMessage;
220773108675c944ab4ee89631dced23566b12341b66Jack Palevich    GLuint *framebuffers_base = (GLuint *) 0;
220873108675c944ab4ee89631dced23566b12341b66Jack Palevich    jint _remaining;
220973108675c944ab4ee89631dced23566b12341b66Jack Palevich    GLuint *framebuffers = (GLuint *) 0;
221073108675c944ab4ee89631dced23566b12341b66Jack Palevich
221173108675c944ab4ee89631dced23566b12341b66Jack Palevich    if (!framebuffers_ref) {
221273108675c944ab4ee89631dced23566b12341b66Jack Palevich        _exception = 1;
22132545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exceptionType = "java/lang/IllegalArgumentException";
22142545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exceptionMessage = "framebuffers == null";
221573108675c944ab4ee89631dced23566b12341b66Jack Palevich        goto exit;
221673108675c944ab4ee89631dced23566b12341b66Jack Palevich    }
221773108675c944ab4ee89631dced23566b12341b66Jack Palevich    if (offset < 0) {
221873108675c944ab4ee89631dced23566b12341b66Jack Palevich        _exception = 1;
22192545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exceptionType = "java/lang/IllegalArgumentException";
22202545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exceptionMessage = "offset < 0";
222173108675c944ab4ee89631dced23566b12341b66Jack Palevich        goto exit;
222273108675c944ab4ee89631dced23566b12341b66Jack Palevich    }
222373108675c944ab4ee89631dced23566b12341b66Jack Palevich    _remaining = _env->GetArrayLength(framebuffers_ref) - offset;
222473108675c944ab4ee89631dced23566b12341b66Jack Palevich    if (_remaining < n) {
222573108675c944ab4ee89631dced23566b12341b66Jack Palevich        _exception = 1;
22262545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exceptionType = "java/lang/IllegalArgumentException";
22272545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exceptionMessage = "length - offset < n < needed";
222873108675c944ab4ee89631dced23566b12341b66Jack Palevich        goto exit;
222973108675c944ab4ee89631dced23566b12341b66Jack Palevich    }
223073108675c944ab4ee89631dced23566b12341b66Jack Palevich    framebuffers_base = (GLuint *)
223173108675c944ab4ee89631dced23566b12341b66Jack Palevich        _env->GetPrimitiveArrayCritical(framebuffers_ref, (jboolean *)0);
223273108675c944ab4ee89631dced23566b12341b66Jack Palevich    framebuffers = framebuffers_base + offset;
223373108675c944ab4ee89631dced23566b12341b66Jack Palevich
223473108675c944ab4ee89631dced23566b12341b66Jack Palevich    glGenFramebuffersOES(
223573108675c944ab4ee89631dced23566b12341b66Jack Palevich        (GLsizei)n,
223673108675c944ab4ee89631dced23566b12341b66Jack Palevich        (GLuint *)framebuffers
223773108675c944ab4ee89631dced23566b12341b66Jack Palevich    );
223873108675c944ab4ee89631dced23566b12341b66Jack Palevich
223973108675c944ab4ee89631dced23566b12341b66Jack Palevichexit:
224073108675c944ab4ee89631dced23566b12341b66Jack Palevich    if (framebuffers_base) {
224173108675c944ab4ee89631dced23566b12341b66Jack Palevich        _env->ReleasePrimitiveArrayCritical(framebuffers_ref, framebuffers_base,
224273108675c944ab4ee89631dced23566b12341b66Jack Palevich            _exception ? JNI_ABORT: 0);
224373108675c944ab4ee89631dced23566b12341b66Jack Palevich    }
22442545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer    if (_exception) {
22452545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        jniThrowException(_env, _exceptionType, _exceptionMessage);
22462545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer    }
224727f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich}
224827f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich
224927f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glGenFramebuffersOES ( GLsizei n, GLuint *framebuffers ) */
225027f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void
225127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glGenFramebuffersOES__ILjava_nio_IntBuffer_2
225227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich  (JNIEnv *_env, jobject _this, jint n, jobject framebuffers_buf) {
225373108675c944ab4ee89631dced23566b12341b66Jack Palevich    jint _exception = 0;
22542545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer    const char * _exceptionType;
22552545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer    const char * _exceptionMessage;
225673108675c944ab4ee89631dced23566b12341b66Jack Palevich    jarray _array = (jarray) 0;
225773108675c944ab4ee89631dced23566b12341b66Jack Palevich    jint _remaining;
225873108675c944ab4ee89631dced23566b12341b66Jack Palevich    GLuint *framebuffers = (GLuint *) 0;
225973108675c944ab4ee89631dced23566b12341b66Jack Palevich
226073108675c944ab4ee89631dced23566b12341b66Jack Palevich    framebuffers = (GLuint *)getPointer(_env, framebuffers_buf, &_array, &_remaining);
226173108675c944ab4ee89631dced23566b12341b66Jack Palevich    if (_remaining < n) {
226273108675c944ab4ee89631dced23566b12341b66Jack Palevich        _exception = 1;
22632545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exceptionType = "java/lang/IllegalArgumentException";
22642545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exceptionMessage = "remaining() < n < needed";
226573108675c944ab4ee89631dced23566b12341b66Jack Palevich        goto exit;
226673108675c944ab4ee89631dced23566b12341b66Jack Palevich    }
226773108675c944ab4ee89631dced23566b12341b66Jack Palevich    glGenFramebuffersOES(
226873108675c944ab4ee89631dced23566b12341b66Jack Palevich        (GLsizei)n,
226973108675c944ab4ee89631dced23566b12341b66Jack Palevich        (GLuint *)framebuffers
227073108675c944ab4ee89631dced23566b12341b66Jack Palevich    );
227173108675c944ab4ee89631dced23566b12341b66Jack Palevich
227273108675c944ab4ee89631dced23566b12341b66Jack Palevichexit:
227373108675c944ab4ee89631dced23566b12341b66Jack Palevich    if (_array) {
227473108675c944ab4ee89631dced23566b12341b66Jack Palevich        releasePointer(_env, _array, framebuffers, _exception ? JNI_FALSE : JNI_TRUE);
227573108675c944ab4ee89631dced23566b12341b66Jack Palevich    }
22762545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer    if (_exception) {
22772545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        jniThrowException(_env, _exceptionType, _exceptionMessage);
22782545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer    }
227927f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich}
228027f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich
228127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* GLenum glCheckFramebufferStatusOES ( GLenum target ) */
228227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic jint
228327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glCheckFramebufferStatusOES__I
228427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich  (JNIEnv *_env, jobject _this, jint target) {
228573108675c944ab4ee89631dced23566b12341b66Jack Palevich    GLenum _returnValue;
228673108675c944ab4ee89631dced23566b12341b66Jack Palevich    _returnValue = glCheckFramebufferStatusOES(
228773108675c944ab4ee89631dced23566b12341b66Jack Palevich        (GLenum)target
228873108675c944ab4ee89631dced23566b12341b66Jack Palevich    );
228973108675c944ab4ee89631dced23566b12341b66Jack Palevich    return _returnValue;
229027f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich}
229127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich
229227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glFramebufferRenderbufferOES ( GLenum target, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer ) */
229327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void
229427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glFramebufferRenderbufferOES__IIII
229527f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich  (JNIEnv *_env, jobject _this, jint target, jint attachment, jint renderbuffertarget, jint renderbuffer) {
229673108675c944ab4ee89631dced23566b12341b66Jack Palevich    glFramebufferRenderbufferOES(
229773108675c944ab4ee89631dced23566b12341b66Jack Palevich        (GLenum)target,
229873108675c944ab4ee89631dced23566b12341b66Jack Palevich        (GLenum)attachment,
229973108675c944ab4ee89631dced23566b12341b66Jack Palevich        (GLenum)renderbuffertarget,
230073108675c944ab4ee89631dced23566b12341b66Jack Palevich        (GLuint)renderbuffer
230173108675c944ab4ee89631dced23566b12341b66Jack Palevich    );
230227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich}
230327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich
230427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glFramebufferTexture2DOES ( GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level ) */
230527f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void
230627f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glFramebufferTexture2DOES__IIIII
230727f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich  (JNIEnv *_env, jobject _this, jint target, jint attachment, jint textarget, jint texture, jint level) {
230873108675c944ab4ee89631dced23566b12341b66Jack Palevich    glFramebufferTexture2DOES(
230973108675c944ab4ee89631dced23566b12341b66Jack Palevich        (GLenum)target,
231073108675c944ab4ee89631dced23566b12341b66Jack Palevich        (GLenum)attachment,
231173108675c944ab4ee89631dced23566b12341b66Jack Palevich        (GLenum)textarget,
231273108675c944ab4ee89631dced23566b12341b66Jack Palevich        (GLuint)texture,
231373108675c944ab4ee89631dced23566b12341b66Jack Palevich        (GLint)level
231473108675c944ab4ee89631dced23566b12341b66Jack Palevich    );
231527f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich}
231627f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich
231727f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glGetFramebufferAttachmentParameterivOES ( GLenum target, GLenum attachment, GLenum pname, GLint *params ) */
231827f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void
231927f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glGetFramebufferAttachmentParameterivOES__III_3II
232027f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich  (JNIEnv *_env, jobject _this, jint target, jint attachment, jint pname, jintArray params_ref, jint offset) {
232173108675c944ab4ee89631dced23566b12341b66Jack Palevich    jint _exception = 0;
23222545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer    const char * _exceptionType;
23232545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer    const char * _exceptionMessage;
232473108675c944ab4ee89631dced23566b12341b66Jack Palevich    GLint *params_base = (GLint *) 0;
232573108675c944ab4ee89631dced23566b12341b66Jack Palevich    jint _remaining;
232673108675c944ab4ee89631dced23566b12341b66Jack Palevich    GLint *params = (GLint *) 0;
232773108675c944ab4ee89631dced23566b12341b66Jack Palevich
232873108675c944ab4ee89631dced23566b12341b66Jack Palevich    if (!params_ref) {
232973108675c944ab4ee89631dced23566b12341b66Jack Palevich        _exception = 1;
23302545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exceptionType = "java/lang/IllegalArgumentException";
23312545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exceptionMessage = "params == null";
233273108675c944ab4ee89631dced23566b12341b66Jack Palevich        goto exit;
233373108675c944ab4ee89631dced23566b12341b66Jack Palevich    }
233473108675c944ab4ee89631dced23566b12341b66Jack Palevich    if (offset < 0) {
233573108675c944ab4ee89631dced23566b12341b66Jack Palevich        _exception = 1;
23362545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exceptionType = "java/lang/IllegalArgumentException";
23372545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exceptionMessage = "offset < 0";
233873108675c944ab4ee89631dced23566b12341b66Jack Palevich        goto exit;
233973108675c944ab4ee89631dced23566b12341b66Jack Palevich    }
234073108675c944ab4ee89631dced23566b12341b66Jack Palevich    _remaining = _env->GetArrayLength(params_ref) - offset;
234173108675c944ab4ee89631dced23566b12341b66Jack Palevich    if (_remaining < 1) {
234273108675c944ab4ee89631dced23566b12341b66Jack Palevich        _exception = 1;
23432545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exceptionType = "java/lang/IllegalArgumentException";
23442545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exceptionMessage = "length - offset < 1 < needed";
234573108675c944ab4ee89631dced23566b12341b66Jack Palevich        goto exit;
234673108675c944ab4ee89631dced23566b12341b66Jack Palevich    }
234773108675c944ab4ee89631dced23566b12341b66Jack Palevich    params_base = (GLint *)
234873108675c944ab4ee89631dced23566b12341b66Jack Palevich        _env->GetPrimitiveArrayCritical(params_ref, (jboolean *)0);
234973108675c944ab4ee89631dced23566b12341b66Jack Palevich    params = params_base + offset;
235073108675c944ab4ee89631dced23566b12341b66Jack Palevich
235173108675c944ab4ee89631dced23566b12341b66Jack Palevich    glGetFramebufferAttachmentParameterivOES(
235273108675c944ab4ee89631dced23566b12341b66Jack Palevich        (GLenum)target,
235373108675c944ab4ee89631dced23566b12341b66Jack Palevich        (GLenum)attachment,
235473108675c944ab4ee89631dced23566b12341b66Jack Palevich        (GLenum)pname,
235573108675c944ab4ee89631dced23566b12341b66Jack Palevich        (GLint *)params
235673108675c944ab4ee89631dced23566b12341b66Jack Palevich    );
235773108675c944ab4ee89631dced23566b12341b66Jack Palevich
235873108675c944ab4ee89631dced23566b12341b66Jack Palevichexit:
235973108675c944ab4ee89631dced23566b12341b66Jack Palevich    if (params_base) {
236073108675c944ab4ee89631dced23566b12341b66Jack Palevich        _env->ReleasePrimitiveArrayCritical(params_ref, params_base,
236173108675c944ab4ee89631dced23566b12341b66Jack Palevich            _exception ? JNI_ABORT: 0);
236273108675c944ab4ee89631dced23566b12341b66Jack Palevich    }
23632545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer    if (_exception) {
23642545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        jniThrowException(_env, _exceptionType, _exceptionMessage);
23652545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer    }
236627f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich}
236727f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich
236827f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glGetFramebufferAttachmentParameterivOES ( GLenum target, GLenum attachment, GLenum pname, GLint *params ) */
236927f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void
237027f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glGetFramebufferAttachmentParameterivOES__IIILjava_nio_IntBuffer_2
237127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich  (JNIEnv *_env, jobject _this, jint target, jint attachment, jint pname, jobject params_buf) {
237273108675c944ab4ee89631dced23566b12341b66Jack Palevich    jint _exception = 0;
23732545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer    const char * _exceptionType;
23742545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer    const char * _exceptionMessage;
237573108675c944ab4ee89631dced23566b12341b66Jack Palevich    jarray _array = (jarray) 0;
237673108675c944ab4ee89631dced23566b12341b66Jack Palevich    jint _remaining;
237773108675c944ab4ee89631dced23566b12341b66Jack Palevich    GLint *params = (GLint *) 0;
237873108675c944ab4ee89631dced23566b12341b66Jack Palevich
237973108675c944ab4ee89631dced23566b12341b66Jack Palevich    params = (GLint *)getPointer(_env, params_buf, &_array, &_remaining);
238073108675c944ab4ee89631dced23566b12341b66Jack Palevich    if (_remaining < 1) {
238173108675c944ab4ee89631dced23566b12341b66Jack Palevich        _exception = 1;
23822545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exceptionType = "java/lang/IllegalArgumentException";
23832545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exceptionMessage = "remaining() < 1 < needed";
238473108675c944ab4ee89631dced23566b12341b66Jack Palevich        goto exit;
238573108675c944ab4ee89631dced23566b12341b66Jack Palevich    }
238673108675c944ab4ee89631dced23566b12341b66Jack Palevich    glGetFramebufferAttachmentParameterivOES(
238773108675c944ab4ee89631dced23566b12341b66Jack Palevich        (GLenum)target,
238873108675c944ab4ee89631dced23566b12341b66Jack Palevich        (GLenum)attachment,
238973108675c944ab4ee89631dced23566b12341b66Jack Palevich        (GLenum)pname,
239073108675c944ab4ee89631dced23566b12341b66Jack Palevich        (GLint *)params
239173108675c944ab4ee89631dced23566b12341b66Jack Palevich    );
239273108675c944ab4ee89631dced23566b12341b66Jack Palevich
239373108675c944ab4ee89631dced23566b12341b66Jack Palevichexit:
239473108675c944ab4ee89631dced23566b12341b66Jack Palevich    if (_array) {
239573108675c944ab4ee89631dced23566b12341b66Jack Palevich        releasePointer(_env, _array, params, _exception ? JNI_FALSE : JNI_TRUE);
239673108675c944ab4ee89631dced23566b12341b66Jack Palevich    }
23972545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer    if (_exception) {
23982545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        jniThrowException(_env, _exceptionType, _exceptionMessage);
23992545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer    }
240027f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich}
240127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich
240227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glGenerateMipmapOES ( GLenum target ) */
240327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void
240427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glGenerateMipmapOES__I
240527f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich  (JNIEnv *_env, jobject _this, jint target) {
240673108675c944ab4ee89631dced23566b12341b66Jack Palevich    glGenerateMipmapOES(
240773108675c944ab4ee89631dced23566b12341b66Jack Palevich        (GLenum)target
240873108675c944ab4ee89631dced23566b12341b66Jack Palevich    );
240927f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich}
241027f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich
241127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glCurrentPaletteMatrixOES ( GLuint matrixpaletteindex ) */
241227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void
241327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glCurrentPaletteMatrixOES__I
241427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich  (JNIEnv *_env, jobject _this, jint matrixpaletteindex) {
2415be6eac828f5af8b608c3fa6749330f1dcd6b6206Jack Palevich    glCurrentPaletteMatrixOES(
2416be6eac828f5af8b608c3fa6749330f1dcd6b6206Jack Palevich        (GLuint)matrixpaletteindex
2417be6eac828f5af8b608c3fa6749330f1dcd6b6206Jack Palevich    );
241827f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich}
241927f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich
242027f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glLoadPaletteFromModelViewMatrixOES ( void ) */
242127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void
242227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glLoadPaletteFromModelViewMatrixOES__
242327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich  (JNIEnv *_env, jobject _this) {
2424be6eac828f5af8b608c3fa6749330f1dcd6b6206Jack Palevich    glLoadPaletteFromModelViewMatrixOES();
242527f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich}
242627f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich
242727f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glMatrixIndexPointerOES ( GLint size, GLenum type, GLsizei stride, const GLvoid *pointer ) */
242827f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void
2429be6eac828f5af8b608c3fa6749330f1dcd6b6206Jack Palevichandroid_glMatrixIndexPointerOESBounds__IIILjava_nio_Buffer_2I
2430be6eac828f5af8b608c3fa6749330f1dcd6b6206Jack Palevich  (JNIEnv *_env, jobject _this, jint size, jint type, jint stride, jobject pointer_buf, jint remaining) {
2431be6eac828f5af8b608c3fa6749330f1dcd6b6206Jack Palevich    jarray _array = (jarray) 0;
2432be6eac828f5af8b608c3fa6749330f1dcd6b6206Jack Palevich    jint _remaining;
2433be6eac828f5af8b608c3fa6749330f1dcd6b6206Jack Palevich    GLvoid *pointer = (GLvoid *) 0;
2434be6eac828f5af8b608c3fa6749330f1dcd6b6206Jack Palevich
2435be6eac828f5af8b608c3fa6749330f1dcd6b6206Jack Palevich    if (pointer_buf) {
2436be6eac828f5af8b608c3fa6749330f1dcd6b6206Jack Palevich        pointer = (GLvoid *) getDirectBufferPointer(_env, pointer_buf);
2437be6eac828f5af8b608c3fa6749330f1dcd6b6206Jack Palevich        if ( ! pointer ) {
2438be6eac828f5af8b608c3fa6749330f1dcd6b6206Jack Palevich            return;
2439be6eac828f5af8b608c3fa6749330f1dcd6b6206Jack Palevich        }
2440be6eac828f5af8b608c3fa6749330f1dcd6b6206Jack Palevich    }
2441be6eac828f5af8b608c3fa6749330f1dcd6b6206Jack Palevich    glMatrixIndexPointerOESBounds(
2442be6eac828f5af8b608c3fa6749330f1dcd6b6206Jack Palevich        (GLint)size,
2443be6eac828f5af8b608c3fa6749330f1dcd6b6206Jack Palevich        (GLenum)type,
2444be6eac828f5af8b608c3fa6749330f1dcd6b6206Jack Palevich        (GLsizei)stride,
2445be6eac828f5af8b608c3fa6749330f1dcd6b6206Jack Palevich        (GLvoid *)pointer,
2446be6eac828f5af8b608c3fa6749330f1dcd6b6206Jack Palevich        (GLsizei)remaining
2447be6eac828f5af8b608c3fa6749330f1dcd6b6206Jack Palevich    );
244827f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich}
244927f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich
245027f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glWeightPointerOES ( GLint size, GLenum type, GLsizei stride, const GLvoid *pointer ) */
245127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void
2452be6eac828f5af8b608c3fa6749330f1dcd6b6206Jack Palevichandroid_glWeightPointerOESBounds__IIILjava_nio_Buffer_2I
2453be6eac828f5af8b608c3fa6749330f1dcd6b6206Jack Palevich  (JNIEnv *_env, jobject _this, jint size, jint type, jint stride, jobject pointer_buf, jint remaining) {
2454be6eac828f5af8b608c3fa6749330f1dcd6b6206Jack Palevich    jarray _array = (jarray) 0;
2455be6eac828f5af8b608c3fa6749330f1dcd6b6206Jack Palevich    jint _remaining;
2456be6eac828f5af8b608c3fa6749330f1dcd6b6206Jack Palevich    GLvoid *pointer = (GLvoid *) 0;
2457be6eac828f5af8b608c3fa6749330f1dcd6b6206Jack Palevich
2458be6eac828f5af8b608c3fa6749330f1dcd6b6206Jack Palevich    if (pointer_buf) {
2459be6eac828f5af8b608c3fa6749330f1dcd6b6206Jack Palevich        pointer = (GLvoid *) getDirectBufferPointer(_env, pointer_buf);
2460be6eac828f5af8b608c3fa6749330f1dcd6b6206Jack Palevich        if ( ! pointer ) {
2461be6eac828f5af8b608c3fa6749330f1dcd6b6206Jack Palevich            return;
2462be6eac828f5af8b608c3fa6749330f1dcd6b6206Jack Palevich        }
2463be6eac828f5af8b608c3fa6749330f1dcd6b6206Jack Palevich    }
2464be6eac828f5af8b608c3fa6749330f1dcd6b6206Jack Palevich    glWeightPointerOESBounds(
2465be6eac828f5af8b608c3fa6749330f1dcd6b6206Jack Palevich        (GLint)size,
2466be6eac828f5af8b608c3fa6749330f1dcd6b6206Jack Palevich        (GLenum)type,
2467be6eac828f5af8b608c3fa6749330f1dcd6b6206Jack Palevich        (GLsizei)stride,
2468be6eac828f5af8b608c3fa6749330f1dcd6b6206Jack Palevich        (GLvoid *)pointer,
2469be6eac828f5af8b608c3fa6749330f1dcd6b6206Jack Palevich        (GLsizei)remaining
2470be6eac828f5af8b608c3fa6749330f1dcd6b6206Jack Palevich    );
247127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich}
247227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich
247327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glDepthRangefOES ( GLclampf zNear, GLclampf zFar ) */
247427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void
247527f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glDepthRangefOES__FF
247627f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich  (JNIEnv *_env, jobject _this, jfloat zNear, jfloat zFar) {
2477a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    glDepthRangefOES(
2478a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        (GLclampf)zNear,
2479a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        (GLclampf)zFar
2480a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    );
248127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich}
248227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich
248327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glFrustumfOES ( GLfloat left, GLfloat right, GLfloat bottom, GLfloat top, GLfloat zNear, GLfloat zFar ) */
248427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void
248527f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glFrustumfOES__FFFFFF
248627f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich  (JNIEnv *_env, jobject _this, jfloat left, jfloat right, jfloat bottom, jfloat top, jfloat zNear, jfloat zFar) {
2487a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    glFrustumfOES(
2488a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        (GLfloat)left,
2489a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        (GLfloat)right,
2490a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        (GLfloat)bottom,
2491a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        (GLfloat)top,
2492a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        (GLfloat)zNear,
2493a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        (GLfloat)zFar
2494a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    );
249527f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich}
249627f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich
249727f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glOrthofOES ( GLfloat left, GLfloat right, GLfloat bottom, GLfloat top, GLfloat zNear, GLfloat zFar ) */
249827f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void
249927f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glOrthofOES__FFFFFF
250027f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich  (JNIEnv *_env, jobject _this, jfloat left, jfloat right, jfloat bottom, jfloat top, jfloat zNear, jfloat zFar) {
2501a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    glOrthofOES(
2502a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        (GLfloat)left,
2503a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        (GLfloat)right,
2504a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        (GLfloat)bottom,
2505a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        (GLfloat)top,
2506a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        (GLfloat)zNear,
2507a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        (GLfloat)zFar
2508a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    );
250927f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich}
251027f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich
251127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glClipPlanefOES ( GLenum plane, const GLfloat *equation ) */
251227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void
251327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glClipPlanefOES__I_3FI
251427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich  (JNIEnv *_env, jobject _this, jint plane, jfloatArray equation_ref, jint offset) {
25152545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer    jint _exception = 0;
25162545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer    const char * _exceptionType;
25172545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer    const char * _exceptionMessage;
2518a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    GLfloat *equation_base = (GLfloat *) 0;
2519a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    jint _remaining;
2520a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    GLfloat *equation = (GLfloat *) 0;
2521a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich
2522a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    if (!equation_ref) {
25232545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exception = 1;
25242545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exceptionType = "java/lang/IllegalArgumentException";
25252545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exceptionMessage = "equation == null";
2526a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        goto exit;
2527a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    }
2528a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    if (offset < 0) {
25292545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exception = 1;
25302545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exceptionType = "java/lang/IllegalArgumentException";
25312545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exceptionMessage = "offset < 0";
2532a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        goto exit;
2533a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    }
2534a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    _remaining = _env->GetArrayLength(equation_ref) - offset;
2535a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    equation_base = (GLfloat *)
2536a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        _env->GetPrimitiveArrayCritical(equation_ref, (jboolean *)0);
2537a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    equation = equation_base + offset;
2538a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich
2539a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    glClipPlanefOES(
2540a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        (GLenum)plane,
2541a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        (GLfloat *)equation
2542a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    );
2543a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich
2544a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevichexit:
2545a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    if (equation_base) {
2546a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        _env->ReleasePrimitiveArrayCritical(equation_ref, equation_base,
2547a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich            JNI_ABORT);
2548a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    }
25492545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer    if (_exception) {
25502545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        jniThrowException(_env, _exceptionType, _exceptionMessage);
25512545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer    }
255227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich}
255327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich
255427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glClipPlanefOES ( GLenum plane, const GLfloat *equation ) */
255527f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void
255627f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glClipPlanefOES__ILjava_nio_FloatBuffer_2
255727f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich  (JNIEnv *_env, jobject _this, jint plane, jobject equation_buf) {
2558a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    jarray _array = (jarray) 0;
2559a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    jint _remaining;
2560a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    GLfloat *equation = (GLfloat *) 0;
2561a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich
2562a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    equation = (GLfloat *)getPointer(_env, equation_buf, &_array, &_remaining);
2563a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    glClipPlanefOES(
2564a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        (GLenum)plane,
2565a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        (GLfloat *)equation
2566a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    );
2567a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    if (_array) {
2568a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        releasePointer(_env, _array, equation, JNI_FALSE);
2569a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    }
257027f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich}
257127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich
257227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glGetClipPlanefOES ( GLenum pname, GLfloat *eqn ) */
257327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void
257427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glGetClipPlanefOES__I_3FI
257527f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich  (JNIEnv *_env, jobject _this, jint pname, jfloatArray eqn_ref, jint offset) {
2576a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    jint _exception = 0;
25772545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer    const char * _exceptionType;
25782545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer    const char * _exceptionMessage;
2579a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    GLfloat *eqn_base = (GLfloat *) 0;
2580a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    jint _remaining;
2581a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    GLfloat *eqn = (GLfloat *) 0;
2582a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich
2583a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    if (!eqn_ref) {
2584a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        _exception = 1;
25852545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exceptionType = "java/lang/IllegalArgumentException";
25862545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exceptionMessage = "eqn == null";
2587a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        goto exit;
2588a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    }
2589a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    if (offset < 0) {
2590a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        _exception = 1;
25912545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exceptionType = "java/lang/IllegalArgumentException";
25922545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exceptionMessage = "offset < 0";
2593a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        goto exit;
2594a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    }
2595a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    _remaining = _env->GetArrayLength(eqn_ref) - offset;
2596a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    if (_remaining < 4) {
2597a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        _exception = 1;
25982545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exceptionType = "java/lang/IllegalArgumentException";
25992545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exceptionMessage = "length - offset < 4 < needed";
2600a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        goto exit;
2601a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    }
2602a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    eqn_base = (GLfloat *)
2603a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        _env->GetPrimitiveArrayCritical(eqn_ref, (jboolean *)0);
2604a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    eqn = eqn_base + offset;
2605a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich
2606a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    glGetClipPlanefOES(
2607a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        (GLenum)pname,
2608a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        (GLfloat *)eqn
2609a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    );
2610a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich
2611a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevichexit:
2612a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    if (eqn_base) {
2613a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        _env->ReleasePrimitiveArrayCritical(eqn_ref, eqn_base,
2614a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich            _exception ? JNI_ABORT: 0);
2615a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    }
26162545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer    if (_exception) {
26172545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        jniThrowException(_env, _exceptionType, _exceptionMessage);
26182545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer    }
261927f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich}
262027f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich
262127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glGetClipPlanefOES ( GLenum pname, GLfloat *eqn ) */
262227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void
262327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glGetClipPlanefOES__ILjava_nio_FloatBuffer_2
262427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich  (JNIEnv *_env, jobject _this, jint pname, jobject eqn_buf) {
2625a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    jint _exception = 0;
26262545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer    const char * _exceptionType;
26272545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer    const char * _exceptionMessage;
2628a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    jarray _array = (jarray) 0;
2629a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    jint _remaining;
2630a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    GLfloat *eqn = (GLfloat *) 0;
2631a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich
2632a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    eqn = (GLfloat *)getPointer(_env, eqn_buf, &_array, &_remaining);
2633a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    if (_remaining < 4) {
2634a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        _exception = 1;
26352545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exceptionType = "java/lang/IllegalArgumentException";
26362545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exceptionMessage = "remaining() < 4 < needed";
2637a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        goto exit;
2638a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    }
2639a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    glGetClipPlanefOES(
2640a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        (GLenum)pname,
2641a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        (GLfloat *)eqn
2642a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    );
2643a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich
2644a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevichexit:
2645a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    if (_array) {
2646a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        releasePointer(_env, _array, eqn, _exception ? JNI_FALSE : JNI_TRUE);
2647a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    }
26482545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer    if (_exception) {
26492545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        jniThrowException(_env, _exceptionType, _exceptionMessage);
26502545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer    }
265127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich}
265227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich
265327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glClearDepthfOES ( GLclampf depth ) */
265427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void
265527f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glClearDepthfOES__F
265627f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich  (JNIEnv *_env, jobject _this, jfloat depth) {
2657a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    glClearDepthfOES(
2658a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        (GLclampf)depth
2659a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    );
266027f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich}
266127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich
266227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glTexGenfOES ( GLenum coord, GLenum pname, GLfloat param ) */
266327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void
266427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glTexGenfOES__IIF
266527f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich  (JNIEnv *_env, jobject _this, jint coord, jint pname, jfloat param) {
2666a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    glTexGenfOES(
2667a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        (GLenum)coord,
2668a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        (GLenum)pname,
2669a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        (GLfloat)param
2670a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    );
267127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich}
267227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich
267327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glTexGenfvOES ( GLenum coord, GLenum pname, const GLfloat *params ) */
267427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void
267527f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glTexGenfvOES__II_3FI
267627f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich  (JNIEnv *_env, jobject _this, jint coord, jint pname, jfloatArray params_ref, jint offset) {
26772545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer    jint _exception = 0;
26782545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer    const char * _exceptionType;
26792545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer    const char * _exceptionMessage;
2680a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    GLfloat *params_base = (GLfloat *) 0;
2681a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    jint _remaining;
2682a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    GLfloat *params = (GLfloat *) 0;
2683a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich
2684a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    if (!params_ref) {
26852545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exception = 1;
26862545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exceptionType = "java/lang/IllegalArgumentException";
26872545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exceptionMessage = "params == null";
2688a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        goto exit;
2689a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    }
2690a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    if (offset < 0) {
26912545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exception = 1;
26922545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exceptionType = "java/lang/IllegalArgumentException";
26932545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exceptionMessage = "offset < 0";
2694a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        goto exit;
2695a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    }
2696a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    _remaining = _env->GetArrayLength(params_ref) - offset;
2697a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    params_base = (GLfloat *)
2698a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        _env->GetPrimitiveArrayCritical(params_ref, (jboolean *)0);
2699a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    params = params_base + offset;
2700a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich
2701a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    glTexGenfvOES(
2702a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        (GLenum)coord,
2703a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        (GLenum)pname,
2704a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        (GLfloat *)params
2705a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    );
2706a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich
2707a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevichexit:
2708a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    if (params_base) {
2709a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        _env->ReleasePrimitiveArrayCritical(params_ref, params_base,
2710a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich            JNI_ABORT);
2711a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    }
27122545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer    if (_exception) {
27132545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        jniThrowException(_env, _exceptionType, _exceptionMessage);
27142545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer    }
271527f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich}
271627f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich
271727f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glTexGenfvOES ( GLenum coord, GLenum pname, const GLfloat *params ) */
271827f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void
271927f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glTexGenfvOES__IILjava_nio_FloatBuffer_2
272027f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich  (JNIEnv *_env, jobject _this, jint coord, jint pname, jobject params_buf) {
2721a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    jarray _array = (jarray) 0;
2722a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    jint _remaining;
2723a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    GLfloat *params = (GLfloat *) 0;
2724a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich
2725a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    params = (GLfloat *)getPointer(_env, params_buf, &_array, &_remaining);
2726a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    glTexGenfvOES(
2727a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        (GLenum)coord,
2728a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        (GLenum)pname,
2729a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        (GLfloat *)params
2730a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    );
2731a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    if (_array) {
2732a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        releasePointer(_env, _array, params, JNI_FALSE);
2733a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    }
273427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich}
273527f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich
273627f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glTexGeniOES ( GLenum coord, GLenum pname, GLint param ) */
273727f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void
273827f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glTexGeniOES__III
273927f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich  (JNIEnv *_env, jobject _this, jint coord, jint pname, jint param) {
2740a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    glTexGeniOES(
2741a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        (GLenum)coord,
2742a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        (GLenum)pname,
2743a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        (GLint)param
2744a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    );
274527f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich}
274627f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich
274727f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glTexGenivOES ( GLenum coord, GLenum pname, const GLint *params ) */
274827f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void
274927f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glTexGenivOES__II_3II
275027f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich  (JNIEnv *_env, jobject _this, jint coord, jint pname, jintArray params_ref, jint offset) {
27512545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer    jint _exception = 0;
27522545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer    const char * _exceptionType;
27532545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer    const char * _exceptionMessage;
2754a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    GLint *params_base = (GLint *) 0;
2755a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    jint _remaining;
2756a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    GLint *params = (GLint *) 0;
2757a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich
2758a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    if (!params_ref) {
27592545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exception = 1;
27602545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exceptionType = "java/lang/IllegalArgumentException";
27612545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exceptionMessage = "params == null";
2762a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        goto exit;
2763a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    }
2764a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    if (offset < 0) {
27652545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exception = 1;
27662545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exceptionType = "java/lang/IllegalArgumentException";
27672545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exceptionMessage = "offset < 0";
2768a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        goto exit;
2769a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    }
2770a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    _remaining = _env->GetArrayLength(params_ref) - offset;
2771a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    params_base = (GLint *)
2772a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        _env->GetPrimitiveArrayCritical(params_ref, (jboolean *)0);
2773a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    params = params_base + offset;
2774a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich
2775a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    glTexGenivOES(
2776a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        (GLenum)coord,
2777a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        (GLenum)pname,
2778a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        (GLint *)params
2779a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    );
2780a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich
2781a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevichexit:
2782a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    if (params_base) {
2783a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        _env->ReleasePrimitiveArrayCritical(params_ref, params_base,
2784a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich            JNI_ABORT);
2785a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    }
27862545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer    if (_exception) {
27872545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        jniThrowException(_env, _exceptionType, _exceptionMessage);
27882545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer    }
278927f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich}
279027f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich
279127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glTexGenivOES ( GLenum coord, GLenum pname, const GLint *params ) */
279227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void
279327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glTexGenivOES__IILjava_nio_IntBuffer_2
279427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich  (JNIEnv *_env, jobject _this, jint coord, jint pname, jobject params_buf) {
2795a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    jarray _array = (jarray) 0;
2796a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    jint _remaining;
2797a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    GLint *params = (GLint *) 0;
2798a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich
2799a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    params = (GLint *)getPointer(_env, params_buf, &_array, &_remaining);
2800a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    glTexGenivOES(
2801a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        (GLenum)coord,
2802a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        (GLenum)pname,
2803a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        (GLint *)params
2804a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    );
2805a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    if (_array) {
2806a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        releasePointer(_env, _array, params, JNI_FALSE);
2807a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    }
280827f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich}
280927f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich
281027f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glTexGenxOES ( GLenum coord, GLenum pname, GLfixed param ) */
281127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void
281227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glTexGenxOES__III
281327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich  (JNIEnv *_env, jobject _this, jint coord, jint pname, jint param) {
2814a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    glTexGenxOES(
2815a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        (GLenum)coord,
2816a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        (GLenum)pname,
2817a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        (GLfixed)param
2818a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    );
281927f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich}
282027f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich
282127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glTexGenxvOES ( GLenum coord, GLenum pname, const GLfixed *params ) */
282227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void
282327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glTexGenxvOES__II_3II
282427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich  (JNIEnv *_env, jobject _this, jint coord, jint pname, jintArray params_ref, jint offset) {
28252545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer    jint _exception = 0;
28262545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer    const char * _exceptionType;
28272545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer    const char * _exceptionMessage;
2828a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    GLfixed *params_base = (GLfixed *) 0;
2829a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    jint _remaining;
2830a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    GLfixed *params = (GLfixed *) 0;
2831a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich
2832a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    if (!params_ref) {
28332545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exception = 1;
28342545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exceptionType = "java/lang/IllegalArgumentException";
28352545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exceptionMessage = "params == null";
2836a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        goto exit;
2837a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    }
2838a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    if (offset < 0) {
28392545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exception = 1;
28402545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exceptionType = "java/lang/IllegalArgumentException";
28412545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exceptionMessage = "offset < 0";
2842a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        goto exit;
2843a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    }
2844a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    _remaining = _env->GetArrayLength(params_ref) - offset;
2845a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    params_base = (GLfixed *)
2846a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        _env->GetPrimitiveArrayCritical(params_ref, (jboolean *)0);
2847a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    params = params_base + offset;
2848a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich
2849a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    glTexGenxvOES(
2850a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        (GLenum)coord,
2851a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        (GLenum)pname,
2852a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        (GLfixed *)params
2853a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    );
2854a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich
2855a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevichexit:
2856a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    if (params_base) {
2857a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        _env->ReleasePrimitiveArrayCritical(params_ref, params_base,
2858a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich            JNI_ABORT);
2859a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    }
28602545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer    if (_exception) {
28612545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        jniThrowException(_env, _exceptionType, _exceptionMessage);
28622545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer    }
286327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich}
286427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich
286527f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glTexGenxvOES ( GLenum coord, GLenum pname, const GLfixed *params ) */
286627f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void
286727f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glTexGenxvOES__IILjava_nio_IntBuffer_2
286827f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich  (JNIEnv *_env, jobject _this, jint coord, jint pname, jobject params_buf) {
2869a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    jarray _array = (jarray) 0;
2870a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    jint _remaining;
2871a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    GLfixed *params = (GLfixed *) 0;
2872a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich
2873a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    params = (GLfixed *)getPointer(_env, params_buf, &_array, &_remaining);
2874a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    glTexGenxvOES(
2875a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        (GLenum)coord,
2876a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        (GLenum)pname,
2877a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        (GLfixed *)params
2878a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    );
2879a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    if (_array) {
2880a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        releasePointer(_env, _array, params, JNI_FALSE);
2881a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    }
288227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich}
288327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich
288427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glGetTexGenfvOES ( GLenum coord, GLenum pname, GLfloat *params ) */
288527f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void
288627f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glGetTexGenfvOES__II_3FI
288727f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich  (JNIEnv *_env, jobject _this, jint coord, jint pname, jfloatArray params_ref, jint offset) {
2888a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    jint _exception = 0;
28892545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer    const char * _exceptionType;
28902545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer    const char * _exceptionMessage;
2891a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    GLfloat *params_base = (GLfloat *) 0;
2892a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    jint _remaining;
2893a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    GLfloat *params = (GLfloat *) 0;
2894a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich
2895a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    if (!params_ref) {
2896a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        _exception = 1;
28972545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exceptionType = "java/lang/IllegalArgumentException";
28982545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exceptionMessage = "params == null";
2899a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        goto exit;
2900a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    }
2901a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    if (offset < 0) {
2902a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        _exception = 1;
29032545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exceptionType = "java/lang/IllegalArgumentException";
29042545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exceptionMessage = "offset < 0";
2905a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        goto exit;
2906a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    }
2907a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    _remaining = _env->GetArrayLength(params_ref) - offset;
2908a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    params_base = (GLfloat *)
2909a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        _env->GetPrimitiveArrayCritical(params_ref, (jboolean *)0);
2910a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    params = params_base + offset;
2911a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich
2912a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    glGetTexGenfvOES(
2913a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        (GLenum)coord,
2914a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        (GLenum)pname,
2915a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        (GLfloat *)params
2916a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    );
2917a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich
2918a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevichexit:
2919a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    if (params_base) {
2920a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        _env->ReleasePrimitiveArrayCritical(params_ref, params_base,
2921a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich            _exception ? JNI_ABORT: 0);
2922a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    }
29232545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer    if (_exception) {
29242545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        jniThrowException(_env, _exceptionType, _exceptionMessage);
29252545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer    }
292627f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich}
292727f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich
292827f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glGetTexGenfvOES ( GLenum coord, GLenum pname, GLfloat *params ) */
292927f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void
293027f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glGetTexGenfvOES__IILjava_nio_FloatBuffer_2
293127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich  (JNIEnv *_env, jobject _this, jint coord, jint pname, jobject params_buf) {
2932a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    jarray _array = (jarray) 0;
2933a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    jint _remaining;
2934a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    GLfloat *params = (GLfloat *) 0;
2935a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich
2936a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    params = (GLfloat *)getPointer(_env, params_buf, &_array, &_remaining);
2937a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    glGetTexGenfvOES(
2938a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        (GLenum)coord,
2939a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        (GLenum)pname,
2940a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        (GLfloat *)params
2941a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    );
2942a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    if (_array) {
29432545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        releasePointer(_env, _array, params, JNI_TRUE);
2944a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    }
294527f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich}
294627f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich
294727f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glGetTexGenivOES ( GLenum coord, GLenum pname, GLint *params ) */
294827f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void
294927f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glGetTexGenivOES__II_3II
295027f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich  (JNIEnv *_env, jobject _this, jint coord, jint pname, jintArray params_ref, jint offset) {
2951a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    jint _exception = 0;
29522545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer    const char * _exceptionType;
29532545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer    const char * _exceptionMessage;
2954a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    GLint *params_base = (GLint *) 0;
2955a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    jint _remaining;
2956a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    GLint *params = (GLint *) 0;
2957a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich
2958a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    if (!params_ref) {
2959a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        _exception = 1;
29602545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exceptionType = "java/lang/IllegalArgumentException";
29612545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exceptionMessage = "params == null";
2962a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        goto exit;
2963a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    }
2964a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    if (offset < 0) {
2965a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        _exception = 1;
29662545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exceptionType = "java/lang/IllegalArgumentException";
29672545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exceptionMessage = "offset < 0";
2968a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        goto exit;
2969a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    }
2970a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    _remaining = _env->GetArrayLength(params_ref) - offset;
2971a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    params_base = (GLint *)
2972a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        _env->GetPrimitiveArrayCritical(params_ref, (jboolean *)0);
2973a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    params = params_base + offset;
2974a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich
2975a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    glGetTexGenivOES(
2976a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        (GLenum)coord,
2977a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        (GLenum)pname,
2978a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        (GLint *)params
2979a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    );
2980a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich
2981a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevichexit:
2982a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    if (params_base) {
2983a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        _env->ReleasePrimitiveArrayCritical(params_ref, params_base,
2984a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich            _exception ? JNI_ABORT: 0);
2985a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    }
29862545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer    if (_exception) {
29872545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        jniThrowException(_env, _exceptionType, _exceptionMessage);
29882545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer    }
298927f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich}
299027f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich
299127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glGetTexGenivOES ( GLenum coord, GLenum pname, GLint *params ) */
299227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void
299327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glGetTexGenivOES__IILjava_nio_IntBuffer_2
299427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich  (JNIEnv *_env, jobject _this, jint coord, jint pname, jobject params_buf) {
2995a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    jarray _array = (jarray) 0;
2996a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    jint _remaining;
2997a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    GLint *params = (GLint *) 0;
2998a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich
2999a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    params = (GLint *)getPointer(_env, params_buf, &_array, &_remaining);
3000a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    glGetTexGenivOES(
3001a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        (GLenum)coord,
3002a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        (GLenum)pname,
3003a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        (GLint *)params
3004a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    );
3005a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    if (_array) {
30062545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        releasePointer(_env, _array, params, JNI_TRUE);
3007a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    }
300827f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich}
300927f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich
301027f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glGetTexGenxvOES ( GLenum coord, GLenum pname, GLfixed *params ) */
301127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void
301227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glGetTexGenxvOES__II_3II
301327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich  (JNIEnv *_env, jobject _this, jint coord, jint pname, jintArray params_ref, jint offset) {
3014a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    jint _exception = 0;
30152545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer    const char * _exceptionType;
30162545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer    const char * _exceptionMessage;
3017a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    GLfixed *params_base = (GLfixed *) 0;
3018a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    jint _remaining;
3019a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    GLfixed *params = (GLfixed *) 0;
3020a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich
3021a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    if (!params_ref) {
3022a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        _exception = 1;
30232545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exceptionType = "java/lang/IllegalArgumentException";
30242545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exceptionMessage = "params == null";
3025a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        goto exit;
3026a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    }
3027a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    if (offset < 0) {
3028a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        _exception = 1;
30292545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exceptionType = "java/lang/IllegalArgumentException";
30302545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        _exceptionMessage = "offset < 0";
3031a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        goto exit;
3032a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    }
3033a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    _remaining = _env->GetArrayLength(params_ref) - offset;
3034a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    params_base = (GLfixed *)
3035a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        _env->GetPrimitiveArrayCritical(params_ref, (jboolean *)0);
3036a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    params = params_base + offset;
3037a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich
3038a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    glGetTexGenxvOES(
3039a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        (GLenum)coord,
3040a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        (GLenum)pname,
3041a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        (GLfixed *)params
3042a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    );
3043a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich
3044a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevichexit:
3045a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    if (params_base) {
3046a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        _env->ReleasePrimitiveArrayCritical(params_ref, params_base,
3047a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich            _exception ? JNI_ABORT: 0);
3048a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    }
30492545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer    if (_exception) {
30502545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        jniThrowException(_env, _exceptionType, _exceptionMessage);
30512545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer    }
305227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich}
305327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich
305427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich/* void glGetTexGenxvOES ( GLenum coord, GLenum pname, GLfixed *params ) */
305527f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic void
305627f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichandroid_glGetTexGenxvOES__IILjava_nio_IntBuffer_2
305727f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich  (JNIEnv *_env, jobject _this, jint coord, jint pname, jobject params_buf) {
3058a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    jarray _array = (jarray) 0;
3059a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    jint _remaining;
3060a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    GLfixed *params = (GLfixed *) 0;
3061a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich
3062a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    params = (GLfixed *)getPointer(_env, params_buf, &_array, &_remaining);
3063a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    glGetTexGenxvOES(
3064a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        (GLenum)coord,
3065a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        (GLenum)pname,
3066a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich        (GLfixed *)params
3067a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    );
3068a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    if (_array) {
30692545b32ced69100fe70685b95315c6adf411083bThomas Tafertshofer        releasePointer(_env, _array, params, JNI_TRUE);
3070a379585e6e3ff41db6d71a5cd0a0403931bc525dJack Palevich    }
307127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich}
307227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich
307327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic const char *classPathName = "android/opengl/GLES11Ext";
307427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich
307527f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichstatic JNINativeMethod methods[] = {
307627f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"_nativeClassInit", "()V", (void*)nativeClassInit },
307727f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glBlendEquationSeparateOES", "(II)V", (void *) android_glBlendEquationSeparateOES__II },
307827f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glBlendFuncSeparateOES", "(IIII)V", (void *) android_glBlendFuncSeparateOES__IIII },
307927f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glBlendEquationOES", "(I)V", (void *) android_glBlendEquationOES__I },
308027f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glDrawTexsOES", "(SSSSS)V", (void *) android_glDrawTexsOES__SSSSS },
308127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glDrawTexiOES", "(IIIII)V", (void *) android_glDrawTexiOES__IIIII },
308227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glDrawTexxOES", "(IIIII)V", (void *) android_glDrawTexxOES__IIIII },
308327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glDrawTexsvOES", "([SI)V", (void *) android_glDrawTexsvOES___3SI },
308427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glDrawTexsvOES", "(Ljava/nio/ShortBuffer;)V", (void *) android_glDrawTexsvOES__Ljava_nio_ShortBuffer_2 },
308527f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glDrawTexivOES", "([II)V", (void *) android_glDrawTexivOES___3II },
308627f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glDrawTexivOES", "(Ljava/nio/IntBuffer;)V", (void *) android_glDrawTexivOES__Ljava_nio_IntBuffer_2 },
308727f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glDrawTexxvOES", "([II)V", (void *) android_glDrawTexxvOES___3II },
308827f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glDrawTexxvOES", "(Ljava/nio/IntBuffer;)V", (void *) android_glDrawTexxvOES__Ljava_nio_IntBuffer_2 },
308927f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glDrawTexfOES", "(FFFFF)V", (void *) android_glDrawTexfOES__FFFFF },
309027f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glDrawTexfvOES", "([FI)V", (void *) android_glDrawTexfvOES___3FI },
309127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glDrawTexfvOES", "(Ljava/nio/FloatBuffer;)V", (void *) android_glDrawTexfvOES__Ljava_nio_FloatBuffer_2 },
309227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glEGLImageTargetTexture2DOES", "(ILjava/nio/Buffer;)V", (void *) android_glEGLImageTargetTexture2DOES__ILjava_nio_Buffer_2 },
309327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glEGLImageTargetRenderbufferStorageOES", "(ILjava/nio/Buffer;)V", (void *) android_glEGLImageTargetRenderbufferStorageOES__ILjava_nio_Buffer_2 },
309427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glAlphaFuncxOES", "(II)V", (void *) android_glAlphaFuncxOES__II },
309527f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glClearColorxOES", "(IIII)V", (void *) android_glClearColorxOES__IIII },
309627f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glClearDepthxOES", "(I)V", (void *) android_glClearDepthxOES__I },
309727f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glClipPlanexOES", "(I[II)V", (void *) android_glClipPlanexOES__I_3II },
309827f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glClipPlanexOES", "(ILjava/nio/IntBuffer;)V", (void *) android_glClipPlanexOES__ILjava_nio_IntBuffer_2 },
309927f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glColor4xOES", "(IIII)V", (void *) android_glColor4xOES__IIII },
310027f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glDepthRangexOES", "(II)V", (void *) android_glDepthRangexOES__II },
310127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glFogxOES", "(II)V", (void *) android_glFogxOES__II },
310227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glFogxvOES", "(I[II)V", (void *) android_glFogxvOES__I_3II },
310327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glFogxvOES", "(ILjava/nio/IntBuffer;)V", (void *) android_glFogxvOES__ILjava_nio_IntBuffer_2 },
310427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glFrustumxOES", "(IIIIII)V", (void *) android_glFrustumxOES__IIIIII },
310527f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glGetClipPlanexOES", "(I[II)V", (void *) android_glGetClipPlanexOES__I_3II },
310627f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glGetClipPlanexOES", "(ILjava/nio/IntBuffer;)V", (void *) android_glGetClipPlanexOES__ILjava_nio_IntBuffer_2 },
310727f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glGetFixedvOES", "(I[II)V", (void *) android_glGetFixedvOES__I_3II },
310827f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glGetFixedvOES", "(ILjava/nio/IntBuffer;)V", (void *) android_glGetFixedvOES__ILjava_nio_IntBuffer_2 },
310927f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glGetLightxvOES", "(II[II)V", (void *) android_glGetLightxvOES__II_3II },
311027f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glGetLightxvOES", "(IILjava/nio/IntBuffer;)V", (void *) android_glGetLightxvOES__IILjava_nio_IntBuffer_2 },
311127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glGetMaterialxvOES", "(II[II)V", (void *) android_glGetMaterialxvOES__II_3II },
311227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glGetMaterialxvOES", "(IILjava/nio/IntBuffer;)V", (void *) android_glGetMaterialxvOES__IILjava_nio_IntBuffer_2 },
311327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glGetTexEnvxvOES", "(II[II)V", (void *) android_glGetTexEnvxvOES__II_3II },
311427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glGetTexEnvxvOES", "(IILjava/nio/IntBuffer;)V", (void *) android_glGetTexEnvxvOES__IILjava_nio_IntBuffer_2 },
311527f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glGetTexParameterxvOES", "(II[II)V", (void *) android_glGetTexParameterxvOES__II_3II },
311627f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glGetTexParameterxvOES", "(IILjava/nio/IntBuffer;)V", (void *) android_glGetTexParameterxvOES__IILjava_nio_IntBuffer_2 },
311727f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glLightModelxOES", "(II)V", (void *) android_glLightModelxOES__II },
311827f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glLightModelxvOES", "(I[II)V", (void *) android_glLightModelxvOES__I_3II },
311927f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glLightModelxvOES", "(ILjava/nio/IntBuffer;)V", (void *) android_glLightModelxvOES__ILjava_nio_IntBuffer_2 },
312027f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glLightxOES", "(III)V", (void *) android_glLightxOES__III },
312127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glLightxvOES", "(II[II)V", (void *) android_glLightxvOES__II_3II },
312227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glLightxvOES", "(IILjava/nio/IntBuffer;)V", (void *) android_glLightxvOES__IILjava_nio_IntBuffer_2 },
312327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glLineWidthxOES", "(I)V", (void *) android_glLineWidthxOES__I },
312427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glLoadMatrixxOES", "([II)V", (void *) android_glLoadMatrixxOES___3II },
312527f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glLoadMatrixxOES", "(Ljava/nio/IntBuffer;)V", (void *) android_glLoadMatrixxOES__Ljava_nio_IntBuffer_2 },
312627f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glMaterialxOES", "(III)V", (void *) android_glMaterialxOES__III },
312727f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glMaterialxvOES", "(II[II)V", (void *) android_glMaterialxvOES__II_3II },
312827f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glMaterialxvOES", "(IILjava/nio/IntBuffer;)V", (void *) android_glMaterialxvOES__IILjava_nio_IntBuffer_2 },
312927f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glMultMatrixxOES", "([II)V", (void *) android_glMultMatrixxOES___3II },
313027f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glMultMatrixxOES", "(Ljava/nio/IntBuffer;)V", (void *) android_glMultMatrixxOES__Ljava_nio_IntBuffer_2 },
313127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glMultiTexCoord4xOES", "(IIIII)V", (void *) android_glMultiTexCoord4xOES__IIIII },
313227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glNormal3xOES", "(III)V", (void *) android_glNormal3xOES__III },
313327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glOrthoxOES", "(IIIIII)V", (void *) android_glOrthoxOES__IIIIII },
313427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glPointParameterxOES", "(II)V", (void *) android_glPointParameterxOES__II },
313527f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glPointParameterxvOES", "(I[II)V", (void *) android_glPointParameterxvOES__I_3II },
313627f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glPointParameterxvOES", "(ILjava/nio/IntBuffer;)V", (void *) android_glPointParameterxvOES__ILjava_nio_IntBuffer_2 },
313727f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glPointSizexOES", "(I)V", (void *) android_glPointSizexOES__I },
313827f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glPolygonOffsetxOES", "(II)V", (void *) android_glPolygonOffsetxOES__II },
313927f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glRotatexOES", "(IIII)V", (void *) android_glRotatexOES__IIII },
314027f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glSampleCoveragexOES", "(IZ)V", (void *) android_glSampleCoveragexOES__IZ },
314127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glScalexOES", "(III)V", (void *) android_glScalexOES__III },
314227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glTexEnvxOES", "(III)V", (void *) android_glTexEnvxOES__III },
314327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glTexEnvxvOES", "(II[II)V", (void *) android_glTexEnvxvOES__II_3II },
314427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glTexEnvxvOES", "(IILjava/nio/IntBuffer;)V", (void *) android_glTexEnvxvOES__IILjava_nio_IntBuffer_2 },
314527f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glTexParameterxOES", "(III)V", (void *) android_glTexParameterxOES__III },
314627f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glTexParameterxvOES", "(II[II)V", (void *) android_glTexParameterxvOES__II_3II },
314727f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glTexParameterxvOES", "(IILjava/nio/IntBuffer;)V", (void *) android_glTexParameterxvOES__IILjava_nio_IntBuffer_2 },
314827f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glTranslatexOES", "(III)V", (void *) android_glTranslatexOES__III },
314927f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glIsRenderbufferOES", "(I)Z", (void *) android_glIsRenderbufferOES__I },
315027f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glBindRenderbufferOES", "(II)V", (void *) android_glBindRenderbufferOES__II },
315127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glDeleteRenderbuffersOES", "(I[II)V", (void *) android_glDeleteRenderbuffersOES__I_3II },
315227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glDeleteRenderbuffersOES", "(ILjava/nio/IntBuffer;)V", (void *) android_glDeleteRenderbuffersOES__ILjava_nio_IntBuffer_2 },
315327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glGenRenderbuffersOES", "(I[II)V", (void *) android_glGenRenderbuffersOES__I_3II },
315427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glGenRenderbuffersOES", "(ILjava/nio/IntBuffer;)V", (void *) android_glGenRenderbuffersOES__ILjava_nio_IntBuffer_2 },
315527f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glRenderbufferStorageOES", "(IIII)V", (void *) android_glRenderbufferStorageOES__IIII },
315627f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glGetRenderbufferParameterivOES", "(II[II)V", (void *) android_glGetRenderbufferParameterivOES__II_3II },
315727f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glGetRenderbufferParameterivOES", "(IILjava/nio/IntBuffer;)V", (void *) android_glGetRenderbufferParameterivOES__IILjava_nio_IntBuffer_2 },
315827f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glIsFramebufferOES", "(I)Z", (void *) android_glIsFramebufferOES__I },
315927f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glBindFramebufferOES", "(II)V", (void *) android_glBindFramebufferOES__II },
316027f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glDeleteFramebuffersOES", "(I[II)V", (void *) android_glDeleteFramebuffersOES__I_3II },
316127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glDeleteFramebuffersOES", "(ILjava/nio/IntBuffer;)V", (void *) android_glDeleteFramebuffersOES__ILjava_nio_IntBuffer_2 },
316227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glGenFramebuffersOES", "(I[II)V", (void *) android_glGenFramebuffersOES__I_3II },
316327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glGenFramebuffersOES", "(ILjava/nio/IntBuffer;)V", (void *) android_glGenFramebuffersOES__ILjava_nio_IntBuffer_2 },
316427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glCheckFramebufferStatusOES", "(I)I", (void *) android_glCheckFramebufferStatusOES__I },
316527f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glFramebufferRenderbufferOES", "(IIII)V", (void *) android_glFramebufferRenderbufferOES__IIII },
316627f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glFramebufferTexture2DOES", "(IIIII)V", (void *) android_glFramebufferTexture2DOES__IIIII },
316727f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glGetFramebufferAttachmentParameterivOES", "(III[II)V", (void *) android_glGetFramebufferAttachmentParameterivOES__III_3II },
316827f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glGetFramebufferAttachmentParameterivOES", "(IIILjava/nio/IntBuffer;)V", (void *) android_glGetFramebufferAttachmentParameterivOES__IIILjava_nio_IntBuffer_2 },
316927f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glGenerateMipmapOES", "(I)V", (void *) android_glGenerateMipmapOES__I },
317027f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glCurrentPaletteMatrixOES", "(I)V", (void *) android_glCurrentPaletteMatrixOES__I },
317127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glLoadPaletteFromModelViewMatrixOES", "()V", (void *) android_glLoadPaletteFromModelViewMatrixOES__ },
3172be6eac828f5af8b608c3fa6749330f1dcd6b6206Jack Palevich{"glMatrixIndexPointerOESBounds", "(IIILjava/nio/Buffer;I)V", (void *) android_glMatrixIndexPointerOESBounds__IIILjava_nio_Buffer_2I },
3173be6eac828f5af8b608c3fa6749330f1dcd6b6206Jack Palevich{"glWeightPointerOESBounds", "(IIILjava/nio/Buffer;I)V", (void *) android_glWeightPointerOESBounds__IIILjava_nio_Buffer_2I },
317427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glDepthRangefOES", "(FF)V", (void *) android_glDepthRangefOES__FF },
317527f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glFrustumfOES", "(FFFFFF)V", (void *) android_glFrustumfOES__FFFFFF },
317627f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glOrthofOES", "(FFFFFF)V", (void *) android_glOrthofOES__FFFFFF },
317727f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glClipPlanefOES", "(I[FI)V", (void *) android_glClipPlanefOES__I_3FI },
317827f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glClipPlanefOES", "(ILjava/nio/FloatBuffer;)V", (void *) android_glClipPlanefOES__ILjava_nio_FloatBuffer_2 },
317927f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glGetClipPlanefOES", "(I[FI)V", (void *) android_glGetClipPlanefOES__I_3FI },
318027f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glGetClipPlanefOES", "(ILjava/nio/FloatBuffer;)V", (void *) android_glGetClipPlanefOES__ILjava_nio_FloatBuffer_2 },
318127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glClearDepthfOES", "(F)V", (void *) android_glClearDepthfOES__F },
318227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glTexGenfOES", "(IIF)V", (void *) android_glTexGenfOES__IIF },
318327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glTexGenfvOES", "(II[FI)V", (void *) android_glTexGenfvOES__II_3FI },
318427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glTexGenfvOES", "(IILjava/nio/FloatBuffer;)V", (void *) android_glTexGenfvOES__IILjava_nio_FloatBuffer_2 },
318527f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glTexGeniOES", "(III)V", (void *) android_glTexGeniOES__III },
318627f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glTexGenivOES", "(II[II)V", (void *) android_glTexGenivOES__II_3II },
318727f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glTexGenivOES", "(IILjava/nio/IntBuffer;)V", (void *) android_glTexGenivOES__IILjava_nio_IntBuffer_2 },
318827f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glTexGenxOES", "(III)V", (void *) android_glTexGenxOES__III },
318927f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glTexGenxvOES", "(II[II)V", (void *) android_glTexGenxvOES__II_3II },
319027f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glTexGenxvOES", "(IILjava/nio/IntBuffer;)V", (void *) android_glTexGenxvOES__IILjava_nio_IntBuffer_2 },
319127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glGetTexGenfvOES", "(II[FI)V", (void *) android_glGetTexGenfvOES__II_3FI },
319227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glGetTexGenfvOES", "(IILjava/nio/FloatBuffer;)V", (void *) android_glGetTexGenfvOES__IILjava_nio_FloatBuffer_2 },
319327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glGetTexGenivOES", "(II[II)V", (void *) android_glGetTexGenivOES__II_3II },
319427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glGetTexGenivOES", "(IILjava/nio/IntBuffer;)V", (void *) android_glGetTexGenivOES__IILjava_nio_IntBuffer_2 },
319527f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glGetTexGenxvOES", "(II[II)V", (void *) android_glGetTexGenxvOES__II_3II },
319627f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{"glGetTexGenxvOES", "(IILjava/nio/IntBuffer;)V", (void *) android_glGetTexGenxvOES__IILjava_nio_IntBuffer_2 },
319727f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich};
319827f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich
319927f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevichint register_android_opengl_jni_GLES11Ext(JNIEnv *_env)
320027f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich{
320127f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich    int err;
320227f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich    err = android::AndroidRuntime::registerNativeMethods(_env, classPathName, methods, NELEM(methods));
320327f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich    return err;
320427f8002e591b5c579f75b2580183b5d1c4219cd4Jack Palevich}
3205