154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project/*
254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * Copyright (C) 2007 The Android Open Source Project
354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project *
454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * Licensed under the Apache License, Version 2.0 (the "License");
554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * you may not use this file except in compliance with the License.
654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * You may obtain a copy of the License at
754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project *
854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project *      http://www.apache.org/licenses/LICENSE-2.0
954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project *
1054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * Unless required by applicable law or agreed to in writing, software
1154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * distributed under the License is distributed on an "AS IS" BASIS,
1254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
1354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * See the License for the specific language governing permissions and
1454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * limitations under the License.
1554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project */
1654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
1754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Projectpackage android.opengl;
1854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
1954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Projectimport java.io.IOException;
2054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Projectimport java.io.Writer;
2154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Projectimport java.nio.Buffer;
2254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Projectimport java.nio.ByteBuffer;
2354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Projectimport java.nio.ByteOrder;
2454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Projectimport java.nio.CharBuffer;
2554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Projectimport java.nio.DoubleBuffer;
2654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Projectimport java.nio.FloatBuffer;
2754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Projectimport java.nio.IntBuffer;
2854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Projectimport java.nio.LongBuffer;
2954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Projectimport java.nio.ShortBuffer;
3054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Projectimport java.util.Arrays;
3154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
3254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Projectimport javax.microedition.khronos.opengles.GL;
3354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
3454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project/**
3554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project * A wrapper that logs all GL calls (and results) in human-readable form.
3654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project *
3754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project */
3854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Projectclass GLLogWrapper extends GLWrapperBase {
3954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    private static final int FORMAT_INT = 0;
4054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    private static final int FORMAT_FLOAT = 1;
4154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    private static final int FORMAT_FIXED = 2;
4254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
4354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    public GLLogWrapper(GL gl, Writer log, boolean logArgumentNames) {
4454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        super(gl);
4554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        mLog = log;
4654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        mLogArgumentNames = logArgumentNames;
4754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
4854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
4954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    private void checkError() {
5054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        int glError;
5154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        if ((glError = mgl.glGetError()) != 0) {
5254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            String errorMessage = "glError: " + Integer.toString(glError);
5354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            logLine(errorMessage);
5454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        }
5554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
5654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
5754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    private void logLine(String message) {
5854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        log(message + '\n');
5954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
6054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
6154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    private void log(String message) {
6254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        try {
6354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            mLog.write(message);
6454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        } catch (IOException e) {
6554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            // Ignore exception, keep on trying
6654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        }
6754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
6854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
6954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    private void begin(String name) {
7054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        log(name + '(');
7154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        mArgCount = 0;
7254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
7354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
7454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    private void arg(String name, String value) {
7554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        if (mArgCount++ > 0) {
7654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            log(", ");
7754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        }
7854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        if (mLogArgumentNames) {
7954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            log(name + "=");
8054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        }
8154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        log(value);
8254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
8354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
8454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    private void end() {
8554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        log(");\n");
8654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        flush();
8754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
8854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
8954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    private void flush() {
9054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        try {
9154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            mLog.flush();
9254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        } catch (IOException e) {
9354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            mLog = null;
9454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        }
9554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
9654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
9754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    private void arg(String name, boolean value) {
9854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg(name, Boolean.toString(value));
9954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
10054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
10154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    private void arg(String name, int value) {
10254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg(name, Integer.toString(value));
10354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
10454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
10554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    private void arg(String name, float value) {
10654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg(name, Float.toString(value));
10754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
10854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
10954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    private void returns(String result) {
11054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        log(") returns " + result + ";\n");
11154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        flush();
11254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
11354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
11454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    private void returns(int result) {
11554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        returns(Integer.toString(result));
11654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
11754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
11854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    private void arg(String name, int n, int[] arr, int offset) {
11954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg(name, toString(n, FORMAT_INT, arr, offset));
12054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
12154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
12254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    private void arg(String name, int n, short[] arr, int offset) {
12354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg(name, toString(n, arr, offset));
12454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
12554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
12654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    private void arg(String name, int n, float[] arr, int offset) {
12754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg(name, toString(n, arr, offset));
12854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
12954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
13054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    private void formattedAppend(StringBuilder buf, int value, int format) {
13154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        switch (format) {
13254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        case FORMAT_INT:
13354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            buf.append(value);
13454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            break;
13554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        case FORMAT_FLOAT:
13654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            buf.append(Float.intBitsToFloat(value));
13754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            break;
13854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        case FORMAT_FIXED:
13954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            buf.append(value / 65536.0f);
14054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            break;
14154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        }
14254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
14354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
14454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    private String toString(int n, int format, int[] arr, int offset) {
14554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        StringBuilder buf = new StringBuilder();
14654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        buf.append("{\n");
14754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        int arrLen = arr.length;
14854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        for (int i = 0; i < n; i++) {
14954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            int index = offset + i;
15054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            buf.append(" [" + index + "] = ");
15154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            if (index < 0 || index >= arrLen) {
15254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project                buf.append("out of bounds");
15354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            } else {
15454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project                formattedAppend(buf, arr[index], format);
15554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            }
15654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            buf.append('\n');
15754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        }
15854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        buf.append("}");
15954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        return buf.toString();
16054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
16154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
16254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    private String toString(int n, short[] arr, int offset) {
16354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        StringBuilder buf = new StringBuilder();
16454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        buf.append("{\n");
16554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        int arrLen = arr.length;
16654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        for (int i = 0; i < n; i++) {
16754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            int index = offset + i;
16854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            buf.append(" [" + index + "] = ");
16954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            if (index < 0 || index >= arrLen) {
17054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project                buf.append("out of bounds");
17154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            } else {
17254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project                buf.append(arr[index]);
17354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            }
17454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            buf.append('\n');
17554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        }
17654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        buf.append("}");
17754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        return buf.toString();
17854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
17954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
18054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    private String toString(int n, float[] arr, int offset) {
18154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        StringBuilder buf = new StringBuilder();
18254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        buf.append("{\n");
18354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        int arrLen = arr.length;
18454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        for (int i = 0; i < n; i++) {
18554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            int index = offset + i;
18654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            buf.append("[" + index + "] = ");
18754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            if (index < 0 || index >= arrLen) {
18854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project                buf.append("out of bounds");
18954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            } else {
19054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project                buf.append(arr[index]);
19154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            }
19254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            buf.append('\n');
19354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        }
19454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        buf.append("}");
19554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        return buf.toString();
19654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
19754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
19854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    private String toString(int n, FloatBuffer buf) {
19954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        StringBuilder builder = new StringBuilder();
20054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        builder.append("{\n");
20154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        for (int i = 0; i < n; i++) {
20254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            builder.append(" [" + i + "] = " + buf.get(i) + '\n');
20354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        }
20454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        builder.append("}");
20554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        return builder.toString();
20654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
20754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
20854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    private String toString(int n, int format, IntBuffer buf) {
20954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        StringBuilder builder = new StringBuilder();
21054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        builder.append("{\n");
21154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        for (int i = 0; i < n; i++) {
21254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            builder.append(" [" + i + "] = ");
21354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            formattedAppend(builder, buf.get(i), format);
21454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            builder.append('\n');
21554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        }
21654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        builder.append("}");
21754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        return builder.toString();
21854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
21954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
22054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    private String toString(int n, ShortBuffer buf) {
22154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        StringBuilder builder = new StringBuilder();
22254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        builder.append("{\n");
22354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        for (int i = 0; i < n; i++) {
22454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            builder.append(" [" + i + "] = " + buf.get(i) + '\n');
22554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        }
22654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        builder.append("}");
22754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        return builder.toString();
22854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
22954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
23054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    private void arg(String name, int n, FloatBuffer buf) {
23154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg(name, toString(n, buf));
23254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
23354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
23454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    private void arg(String name, int n, IntBuffer buf) {
23554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg(name, toString(n, FORMAT_INT, buf));
23654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
23754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
23854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    private void arg(String name, int n, ShortBuffer buf) {
23954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg(name, toString(n, buf));
24054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
24154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
24254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    private void argPointer(int size, int type, int stride, Buffer pointer) {
24354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("size", size);
24454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("type", getPointerTypeName(type));
24554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("stride", stride);
24654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("pointer", pointer.toString());
24754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
24854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
24954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    private static String getHex(int value) {
25054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        return "0x" + Integer.toHexString(value);
25154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
25254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
25354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    public static String getErrorString(int error) {
25454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        switch (error) {
25554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        case GL_NO_ERROR:
25654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            return "GL_NO_ERROR";
25754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        case GL_INVALID_ENUM:
25854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            return "GL_INVALID_ENUM";
25954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        case GL_INVALID_VALUE:
26054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            return "GL_INVALID_VALUE";
26154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        case GL_INVALID_OPERATION:
26254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            return "GL_INVALID_OPERATION";
26354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        case GL_STACK_OVERFLOW:
26454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            return "GL_STACK_OVERFLOW";
26554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        case GL_STACK_UNDERFLOW:
26654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            return "GL_STACK_UNDERFLOW";
26754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        case GL_OUT_OF_MEMORY:
26854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            return "GL_OUT_OF_MEMORY";
26954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        default:
27054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            return getHex(error);
27154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        }
27254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
27354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
27454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    private String getClearBufferMask(int mask) {
27554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        StringBuilder b = new StringBuilder();
27654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        if ((mask & GL_DEPTH_BUFFER_BIT) != 0) {
27754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            b.append("GL_DEPTH_BUFFER_BIT");
27854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            mask &= ~GL_DEPTH_BUFFER_BIT;
27954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        }
28054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        if ((mask & GL_STENCIL_BUFFER_BIT) != 0) {
28154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            if (b.length() > 0) {
28254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project                b.append(" | ");
28354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            }
28454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            b.append("GL_STENCIL_BUFFER_BIT");
28554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            mask &= ~GL_STENCIL_BUFFER_BIT;
28654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        }
28754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        if ((mask & GL_COLOR_BUFFER_BIT) != 0) {
28854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            if (b.length() > 0) {
28954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project                b.append(" | ");
29054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            }
29154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            b.append("GL_COLOR_BUFFER_BIT");
29254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            mask &= ~GL_COLOR_BUFFER_BIT;
29354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        }
29454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        if (mask != 0) {
29554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            if (b.length() > 0) {
29654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project                b.append(" | ");
29754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            }
29854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            b.append(getHex(mask));
29954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        }
30054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        return b.toString();
30154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
30254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
30354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    private String getFactor(int factor) {
30454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        switch(factor) {
30554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        case GL_ZERO:
30654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            return "GL_ZERO";
30754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        case GL_ONE:
30854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            return "GL_ONE";
30954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        case GL_SRC_COLOR:
31054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            return "GL_SRC_COLOR";
31154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        case GL_ONE_MINUS_SRC_COLOR:
31254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            return "GL_ONE_MINUS_SRC_COLOR";
31354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        case GL_DST_COLOR:
31454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            return "GL_DST_COLOR";
31554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        case GL_ONE_MINUS_DST_COLOR:
31654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            return "GL_ONE_MINUS_DST_COLOR";
31754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        case GL_SRC_ALPHA:
31854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            return "GL_SRC_ALPHA";
31954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        case GL_ONE_MINUS_SRC_ALPHA:
32054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            return "GL_ONE_MINUS_SRC_ALPHA";
32154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        case GL_DST_ALPHA:
32254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            return "GL_DST_ALPHA";
32354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        case GL_ONE_MINUS_DST_ALPHA:
32454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            return "GL_ONE_MINUS_DST_ALPHA";
32554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        case GL_SRC_ALPHA_SATURATE:
32654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            return "GL_SRC_ALPHA_SATURATE";
32754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
32854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        default:
32954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            return getHex(factor);
33054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        }
33154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
33254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
33354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    private String getShadeModel(int model) {
33454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        switch(model) {
33554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        case GL_FLAT:
33654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            return "GL_FLAT";
33754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        case GL_SMOOTH:
33854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            return "GL_SMOOTH";
33954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        default:
34054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            return getHex(model);
34154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        }
34254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
34354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
34454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    private String getTextureTarget(int target) {
34554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        switch (target) {
34654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        case GL_TEXTURE_2D:
34754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            return "GL_TEXTURE_2D";
34854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        default:
34954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            return getHex(target);
35054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        }
35154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
35254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
35354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    private String getTextureEnvTarget(int target) {
35454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        switch (target) {
35554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        case GL_TEXTURE_ENV:
35654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            return "GL_TEXTURE_ENV";
35754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        default:
35854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            return getHex(target);
35954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        }
36054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
36154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
36254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    private String getTextureEnvPName(int pname) {
36354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        switch (pname) {
36454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        case GL_TEXTURE_ENV_MODE:
36554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            return "GL_TEXTURE_ENV_MODE";
36654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        case GL_TEXTURE_ENV_COLOR:
36754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            return "GL_TEXTURE_ENV_COLOR";
36854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        default:
36954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            return getHex(pname);
37054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        }
37154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
37254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
37354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    private int getTextureEnvParamCount(int pname) {
37454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        switch (pname) {
37554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        case GL_TEXTURE_ENV_MODE:
37654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            return 1;
37754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        case GL_TEXTURE_ENV_COLOR:
37854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            return 4;
37954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        default:
38054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            return 0;
38154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        }
38254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
38354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
38454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    private String getTextureEnvParamName(float param) {
38554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        int iparam = (int) param;
38654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        if (param == (float) iparam) {
38754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            switch (iparam) {
38854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            case GL_REPLACE:
38954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project                return "GL_REPLACE";
39054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            case GL_MODULATE:
39154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project                return "GL_MODULATE";
39254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            case GL_DECAL:
39354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project                return "GL_DECAL";
39454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            case GL_BLEND:
39554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project                return "GL_BLEND";
39654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            case GL_ADD:
39754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project                return "GL_ADD";
39854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            case GL_COMBINE:
39954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project                return "GL_COMBINE";
40054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            default:
40154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project                return getHex(iparam);
40254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            }
40354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        }
40454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        return Float.toString(param);
40554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
40654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
40754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    private String getMatrixMode(int matrixMode) {
40854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        switch (matrixMode) {
40954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        case GL_MODELVIEW:
41054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            return "GL_MODELVIEW";
41154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        case GL_PROJECTION:
41254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            return "GL_PROJECTION";
41354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        case GL_TEXTURE:
41454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            return "GL_TEXTURE";
41554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        default:
41654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            return getHex(matrixMode);
41754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        }
41854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
41954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
42054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    private String getClientState(int clientState) {
42154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        switch (clientState) {
42254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        case GL_COLOR_ARRAY:
42354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            return "GL_COLOR_ARRAY";
42454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        case GL_VERTEX_ARRAY:
42554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            return "GL_VERTEX_ARRAY";
42654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        case GL_NORMAL_ARRAY:
42754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            return "GL_NORMAL_ARRAY";
42854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        case GL_TEXTURE_COORD_ARRAY:
42954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            return "GL_TEXTURE_COORD_ARRAY";
43054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        default:
43154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            return getHex(clientState);
43254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        }
43354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
43454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
43554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    private String getCap(int cap) {
43654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        switch (cap) {
43754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        case GL_FOG:
43854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            return "GL_FOG";
43954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        case GL_LIGHTING:
44054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            return "GL_LIGHTING";
44154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        case GL_TEXTURE_2D:
44254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            return "GL_TEXTURE_2D";
44354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        case GL_CULL_FACE:
44454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            return "GL_CULL_FACE";
44554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        case GL_ALPHA_TEST:
44654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            return "GL_ALPHA_TEST";
44754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        case GL_BLEND:
44854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            return "GL_BLEND";
44954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        case GL_COLOR_LOGIC_OP:
45054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            return "GL_COLOR_LOGIC_OP";
45154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        case GL_DITHER:
45254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            return "GL_DITHER";
45354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        case GL_STENCIL_TEST:
45454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            return "GL_STENCIL_TEST";
45554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        case GL_DEPTH_TEST:
45654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            return "GL_DEPTH_TEST";
45754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        case GL_LIGHT0:
45854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            return "GL_LIGHT0";
45954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        case GL_LIGHT1:
46054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            return "GL_LIGHT1";
46154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        case GL_LIGHT2:
46254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            return "GL_LIGHT2";
46354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        case GL_LIGHT3:
46454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            return "GL_LIGHT3";
46554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        case GL_LIGHT4:
46654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            return "GL_LIGHT4";
46754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        case GL_LIGHT5:
46854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            return "GL_LIGHT5";
46954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        case GL_LIGHT6:
47054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            return "GL_LIGHT6";
47154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        case GL_LIGHT7:
47254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            return "GL_LIGHT7";
47354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        case GL_POINT_SMOOTH:
47454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            return "GL_POINT_SMOOTH";
47554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        case GL_LINE_SMOOTH:
47654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            return "GL_LINE_SMOOTH";
47754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        case GL_COLOR_MATERIAL:
47854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            return "GL_COLOR_MATERIAL";
47954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        case GL_NORMALIZE:
48054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            return "GL_NORMALIZE";
48154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        case GL_RESCALE_NORMAL:
48254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            return "GL_RESCALE_NORMAL";
48354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        case GL_VERTEX_ARRAY:
48454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            return "GL_VERTEX_ARRAY";
48554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        case GL_NORMAL_ARRAY:
48654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            return "GL_NORMAL_ARRAY";
48754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        case GL_COLOR_ARRAY:
48854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            return "GL_COLOR_ARRAY";
48954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        case GL_TEXTURE_COORD_ARRAY:
49054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            return "GL_TEXTURE_COORD_ARRAY";
49154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        case GL_MULTISAMPLE:
49254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            return "GL_MULTISAMPLE";
49354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        case GL_SAMPLE_ALPHA_TO_COVERAGE:
49454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            return "GL_SAMPLE_ALPHA_TO_COVERAGE";
49554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        case GL_SAMPLE_ALPHA_TO_ONE:
49654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            return "GL_SAMPLE_ALPHA_TO_ONE";
49754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        case GL_SAMPLE_COVERAGE:
49854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            return "GL_SAMPLE_COVERAGE";
49954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        case GL_SCISSOR_TEST:
50054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            return "GL_SCISSOR_TEST";
50154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        default:
50254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            return getHex(cap);
50354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        }
50454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
50554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
50654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    private String getTexturePName(int pname) {
50754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        switch (pname) {
50854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        case GL_TEXTURE_MAG_FILTER:
50954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            return "GL_TEXTURE_MAG_FILTER";
51054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        case GL_TEXTURE_MIN_FILTER:
51154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            return "GL_TEXTURE_MIN_FILTER";
51254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        case GL_TEXTURE_WRAP_S:
51354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            return "GL_TEXTURE_WRAP_S";
51454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        case GL_TEXTURE_WRAP_T:
51554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            return "GL_TEXTURE_WRAP_T";
51654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        case GL_GENERATE_MIPMAP:
51754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            return "GL_GENERATE_MIPMAP";
51854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        case GL_TEXTURE_CROP_RECT_OES:
51954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            return "GL_TEXTURE_CROP_RECT_OES";
52054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        default:
52154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            return getHex(pname);
52254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        }
52354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
52454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
52554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    private String getTextureParamName(float param) {
52654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        int iparam = (int) param;
52754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        if (param == (float) iparam) {
52854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            switch (iparam) {
52954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            case GL_CLAMP_TO_EDGE:
53054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project                return "GL_CLAMP_TO_EDGE";
53154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            case GL_REPEAT:
53254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project                return "GL_REPEAT";
53354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            case GL_NEAREST:
53454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project                return "GL_NEAREST";
53554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            case GL_LINEAR:
53654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project                return "GL_LINEAR";
53754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            case GL_NEAREST_MIPMAP_NEAREST:
53854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project                return "GL_NEAREST_MIPMAP_NEAREST";
53954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            case GL_LINEAR_MIPMAP_NEAREST:
54054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project                return "GL_LINEAR_MIPMAP_NEAREST";
54154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            case GL_NEAREST_MIPMAP_LINEAR:
54254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project                return "GL_NEAREST_MIPMAP_LINEAR";
54354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            case GL_LINEAR_MIPMAP_LINEAR:
54454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project                return "GL_LINEAR_MIPMAP_LINEAR";
54554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            default:
54654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project                return getHex(iparam);
54754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            }
54854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        }
54954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        return Float.toString(param);
55054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
55154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
55254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    private String getFogPName(int pname) {
55354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        switch (pname) {
55454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        case GL_FOG_DENSITY:
55554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            return "GL_FOG_DENSITY";
55654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        case GL_FOG_START:
55754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            return "GL_FOG_START";
55854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        case GL_FOG_END:
55954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            return "GL_FOG_END";
56054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        case GL_FOG_MODE:
56154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            return "GL_FOG_MODE";
56254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        case GL_FOG_COLOR:
56354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            return "GL_FOG_COLOR";
56454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        default:
56554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            return getHex(pname);
56654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        }
56754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
56854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
56954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    private int getFogParamCount(int pname) {
57054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        switch (pname) {
57154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        case GL_FOG_DENSITY:
57254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            return 1;
57354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        case GL_FOG_START:
57454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            return 1;
57554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        case GL_FOG_END:
57654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            return 1;
57754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        case GL_FOG_MODE:
57854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            return 1;
57954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        case GL_FOG_COLOR:
58054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            return 4;
58154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        default:
58254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            return 0;
58354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        }
58454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
58554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
58654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    private String getBeginMode(int mode) {
58754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        switch (mode) {
58854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        case GL_POINTS:
58954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            return "GL_POINTS";
59054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        case GL_LINES:
59154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            return "GL_LINES";
59254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        case GL_LINE_LOOP:
59354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            return "GL_LINE_LOOP";
59454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        case GL_LINE_STRIP:
59554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            return "GL_LINE_STRIP";
59654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        case GL_TRIANGLES:
59754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            return "GL_TRIANGLES";
59854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        case GL_TRIANGLE_STRIP:
59954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            return "GL_TRIANGLE_STRIP";
60054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        case GL_TRIANGLE_FAN:
60154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            return "GL_TRIANGLE_FAN";
60254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        default:
60354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            return getHex(mode);
60454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        }
60554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
60654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
60754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    private String getIndexType(int type) {
60854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        switch (type) {
60954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        case GL_UNSIGNED_SHORT:
61054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            return "GL_UNSIGNED_SHORT";
61154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        case GL_UNSIGNED_BYTE:
61254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            return "GL_UNSIGNED_BYTE";
61354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        default:
61454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            return getHex(type);
61554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        }
61654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
61754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
61854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    private String getIntegerStateName(int pname) {
61954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        switch (pname) {
62054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        case GL_ALPHA_BITS:
62154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            return "GL_ALPHA_BITS";
62254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        case GL_ALIASED_LINE_WIDTH_RANGE:
62354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            return "GL_ALIASED_LINE_WIDTH_RANGE";
62454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        case GL_ALIASED_POINT_SIZE_RANGE:
62554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            return "GL_ALIASED_POINT_SIZE_RANGE";
62654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        case GL_BLUE_BITS:
62754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            return "GL_BLUE_BITS";
62854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        case GL_COMPRESSED_TEXTURE_FORMATS:
62954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            return "GL_COMPRESSED_TEXTURE_FORMATS";
63054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        case GL_DEPTH_BITS:
63154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            return "GL_DEPTH_BITS";
63254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        case GL_GREEN_BITS:
63354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            return "GL_GREEN_BITS";
63454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        case GL_MAX_ELEMENTS_INDICES:
63554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            return "GL_MAX_ELEMENTS_INDICES";
63654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        case GL_MAX_ELEMENTS_VERTICES:
63754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            return "GL_MAX_ELEMENTS_VERTICES";
63854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        case GL_MAX_LIGHTS:
63954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            return "GL_MAX_LIGHTS";
64054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        case GL_MAX_TEXTURE_SIZE:
64154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            return "GL_MAX_TEXTURE_SIZE";
64254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        case GL_MAX_VIEWPORT_DIMS:
64354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            return "GL_MAX_VIEWPORT_DIMS";
64454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        case GL_MAX_MODELVIEW_STACK_DEPTH:
64554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            return "GL_MAX_MODELVIEW_STACK_DEPTH";
64654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        case GL_MAX_PROJECTION_STACK_DEPTH:
64754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            return "GL_MAX_PROJECTION_STACK_DEPTH";
64854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        case GL_MAX_TEXTURE_STACK_DEPTH:
64954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            return "GL_MAX_TEXTURE_STACK_DEPTH";
65054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        case GL_MAX_TEXTURE_UNITS:
65154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            return "GL_MAX_TEXTURE_UNITS";
65254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        case GL_NUM_COMPRESSED_TEXTURE_FORMATS:
65354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            return "GL_NUM_COMPRESSED_TEXTURE_FORMATS";
65454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        case GL_RED_BITS:
65554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            return "GL_RED_BITS";
65654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        case GL_SMOOTH_LINE_WIDTH_RANGE:
65754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            return "GL_SMOOTH_LINE_WIDTH_RANGE";
65854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        case GL_SMOOTH_POINT_SIZE_RANGE:
65954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            return "GL_SMOOTH_POINT_SIZE_RANGE";
66054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        case GL_STENCIL_BITS:
66154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            return "GL_STENCIL_BITS";
66254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        case GL_SUBPIXEL_BITS:
66354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            return "GL_SUBPIXEL_BITS";
66454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
66554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        case GL_MODELVIEW_MATRIX_FLOAT_AS_INT_BITS_OES:
66654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            return "GL_MODELVIEW_MATRIX_FLOAT_AS_INT_BITS_OES";
66754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        case GL_PROJECTION_MATRIX_FLOAT_AS_INT_BITS_OES:
66854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            return "GL_PROJECTION_MATRIX_FLOAT_AS_INT_BITS_OES";
66954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        case GL_TEXTURE_MATRIX_FLOAT_AS_INT_BITS_OES:
67054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            return "GL_TEXTURE_MATRIX_FLOAT_AS_INT_BITS_OES";
67154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
67254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        default:
67354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            return getHex(pname);
67454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        }
67554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
67654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
67754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    private int getIntegerStateSize(int pname) {
67854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        switch (pname) {
67954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        case GL_ALPHA_BITS:
68054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            return 1;
68154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        case GL_ALIASED_LINE_WIDTH_RANGE:
68254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            return 2;
68354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        case GL_ALIASED_POINT_SIZE_RANGE:
68454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            return 2;
68554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        case GL_BLUE_BITS:
68654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            return 1;
68754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        case GL_COMPRESSED_TEXTURE_FORMATS:
68854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            // Have to ask the implementation for the size
68954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        {
69054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            int[] buffer = new int[1];
69154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            mgl.glGetIntegerv(GL_NUM_COMPRESSED_TEXTURE_FORMATS, buffer, 0);
69254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            return buffer[0];
69354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        }
69454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        case GL_DEPTH_BITS:
69554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            return 1;
69654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        case GL_GREEN_BITS:
69754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            return 1;
69854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        case GL_MAX_ELEMENTS_INDICES:
69954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            return 1;
70054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        case GL_MAX_ELEMENTS_VERTICES:
70154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            return 1;
70254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        case GL_MAX_LIGHTS:
70354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            return 1;
70454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        case GL_MAX_TEXTURE_SIZE:
70554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            return 1;
70654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        case GL_MAX_VIEWPORT_DIMS:
70754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            return 2;
70854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        case GL_MAX_MODELVIEW_STACK_DEPTH:
70954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            return 1;
71054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        case GL_MAX_PROJECTION_STACK_DEPTH:
71154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            return 1;
71254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        case GL_MAX_TEXTURE_STACK_DEPTH:
71354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            return 1;
71454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        case GL_MAX_TEXTURE_UNITS:
71554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            return 1;
71654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        case GL_NUM_COMPRESSED_TEXTURE_FORMATS:
71754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            return 1;
71854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        case GL_RED_BITS:
71954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            return 1;
72054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        case GL_SMOOTH_LINE_WIDTH_RANGE:
72154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            return 2;
72254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        case GL_SMOOTH_POINT_SIZE_RANGE:
72354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            return 2;
72454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        case GL_STENCIL_BITS:
72554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            return 1;
72654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        case GL_SUBPIXEL_BITS:
72754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            return 1;
72854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
72954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        case GL_MODELVIEW_MATRIX_FLOAT_AS_INT_BITS_OES:
73054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        case GL_PROJECTION_MATRIX_FLOAT_AS_INT_BITS_OES:
73154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        case GL_TEXTURE_MATRIX_FLOAT_AS_INT_BITS_OES:
73254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            return 16;
73354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
73454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        default:
73554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            return 0;
73654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        }
73754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
73854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
73954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    private int getIntegerStateFormat(int pname) {
74054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        switch (pname) {
74154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        case GL_MODELVIEW_MATRIX_FLOAT_AS_INT_BITS_OES:
74254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        case GL_PROJECTION_MATRIX_FLOAT_AS_INT_BITS_OES:
74354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        case GL_TEXTURE_MATRIX_FLOAT_AS_INT_BITS_OES:
74454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            return FORMAT_FLOAT;
74554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
74654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        default:
74754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            return FORMAT_INT;
74854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        }
74954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
75054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
75154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    private String getHintTarget(int target) {
75254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        switch (target) {
75354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        case GL_FOG_HINT:
75454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            return "GL_FOG_HINT";
75554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        case GL_LINE_SMOOTH_HINT:
75654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            return "GL_LINE_SMOOTH_HINT";
75754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        case GL_PERSPECTIVE_CORRECTION_HINT:
75854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            return "GL_PERSPECTIVE_CORRECTION_HINT";
75954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        case GL_POINT_SMOOTH_HINT:
76054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            return "GL_POINT_SMOOTH_HINT";
76154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        case GL_POLYGON_SMOOTH_HINT:
76254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            return "GL_POLYGON_SMOOTH_HINT";
76354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        case GL_GENERATE_MIPMAP_HINT:
76454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            return "GL_GENERATE_MIPMAP_HINT";
76554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        default:
76654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            return getHex(target);
76754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        }
76854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
76954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
77054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    private String getHintMode(int mode) {
77154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        switch (mode) {
77254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        case GL_FASTEST:
77354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            return "GL_FASTEST";
77454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        case GL_NICEST:
77554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            return "GL_NICEST";
77654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        case GL_DONT_CARE:
77754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            return "GL_DONT_CARE";
77854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        default:
77954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            return getHex(mode);
78054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        }
78154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
78254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
78354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    private String getFaceName(int face) {
78454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        switch (face) {
78554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        case GL_FRONT_AND_BACK:
78654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            return "GL_FRONT_AND_BACK";
78754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        default:
78854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            return getHex(face);
78954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        }
79054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
79154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
79254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    private String getMaterialPName(int pname) {
79354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        switch (pname) {
79454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        case GL_AMBIENT:
79554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            return "GL_AMBIENT";
79654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        case GL_DIFFUSE:
79754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            return "GL_DIFFUSE";
79854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        case GL_SPECULAR:
79954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            return "GL_SPECULAR";
80054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        case GL_EMISSION:
80154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            return "GL_EMISSION";
80254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        case GL_SHININESS:
80354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            return "GL_SHININESS";
80454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        case GL_AMBIENT_AND_DIFFUSE:
80554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            return "GL_AMBIENT_AND_DIFFUSE";
80654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        default:
80754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            return getHex(pname);
80854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        }
80954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
81054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
81154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    private int getMaterialParamCount(int pname) {
81254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        switch (pname) {
81354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        case GL_AMBIENT:
81454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            return 4;
81554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        case GL_DIFFUSE:
81654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            return 4;
81754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        case GL_SPECULAR:
81854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            return 4;
81954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        case GL_EMISSION:
82054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            return 4;
82154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        case GL_SHININESS:
82254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            return 1;
82354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        case GL_AMBIENT_AND_DIFFUSE:
82454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            return 4;
82554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        default:
82654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            return 0;
82754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        }
82854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
82954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
83054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    private String getLightName(int light) {
83154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        if (light >= GL_LIGHT0 && light <= GL_LIGHT7) {
83254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            return "GL_LIGHT" + Integer.toString(light);
83354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        }
83454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        return getHex(light);
83554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
83654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
83754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    private String getLightPName(int pname) {
83854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        switch (pname) {
83954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        case GL_AMBIENT:
84054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            return "GL_AMBIENT";
84154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        case GL_DIFFUSE:
84254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            return "GL_DIFFUSE";
84354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        case GL_SPECULAR:
84454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            return "GL_SPECULAR";
84554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        case GL_POSITION:
84654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            return "GL_POSITION";
84754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        case GL_SPOT_DIRECTION:
84854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            return "GL_SPOT_DIRECTION";
84954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        case GL_SPOT_EXPONENT:
85054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            return "GL_SPOT_EXPONENT";
85154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        case GL_SPOT_CUTOFF:
85254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            return "GL_SPOT_CUTOFF";
85354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        case GL_CONSTANT_ATTENUATION:
85454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            return "GL_CONSTANT_ATTENUATION";
85554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        case GL_LINEAR_ATTENUATION:
85654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            return "GL_LINEAR_ATTENUATION";
85754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        case GL_QUADRATIC_ATTENUATION:
85854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            return "GL_QUADRATIC_ATTENUATION";
85954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        default:
86054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            return getHex(pname);
86154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        }
86254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
86354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
86454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    private int getLightParamCount(int pname) {
86554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        switch (pname) {
86654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        case GL_AMBIENT:
86754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            return 4;
86854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        case GL_DIFFUSE:
86954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            return 4;
87054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        case GL_SPECULAR:
87154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            return 4;
87254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        case GL_POSITION:
87354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            return 4;
87454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        case GL_SPOT_DIRECTION:
87554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            return 3;
87654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        case GL_SPOT_EXPONENT:
87754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            return 1;
87854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        case GL_SPOT_CUTOFF:
87954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            return 1;
88054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        case GL_CONSTANT_ATTENUATION:
88154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            return 1;
88254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        case GL_LINEAR_ATTENUATION:
88354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            return 1;
88454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        case GL_QUADRATIC_ATTENUATION:
88554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            return 1;
88654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        default:
88754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            return 0;
88854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        }
88954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
89054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
89154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    private String getLightModelPName(int pname) {
89254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        switch (pname) {
89354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        case GL_LIGHT_MODEL_AMBIENT:
89454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            return "GL_LIGHT_MODEL_AMBIENT";
89554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        case GL_LIGHT_MODEL_TWO_SIDE:
89654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            return "GL_LIGHT_MODEL_TWO_SIDE";
89754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        default:
89854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            return getHex(pname);
89954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        }
90054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
90154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
90254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    private int getLightModelParamCount(int pname) {
90354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        switch (pname) {
90454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        case GL_LIGHT_MODEL_AMBIENT:
90554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            return 4;
90654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        case GL_LIGHT_MODEL_TWO_SIDE:
90754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            return 1;
90854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        default:
90954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            return 0;
91054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        }
91154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
91254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
91354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    private String getPointerTypeName(int type) {
91454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        switch (type) {
91554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        case GL_BYTE:
91654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            return "GL_BYTE";
91754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        case GL_UNSIGNED_BYTE:
91854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            return "GL_UNSIGNED_BYTE";
91954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        case GL_SHORT:
92054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            return "GL_SHORT";
92154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        case GL_FIXED:
92254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            return "GL_FIXED";
92354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        case GL_FLOAT:
92454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            return "GL_FLOAT";
92554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        default:
92654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            return getHex(type);
92754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        }
92854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
92954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
93054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    private ByteBuffer toByteBuffer(int byteCount, Buffer input) {
93154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        ByteBuffer result = null;
93254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        boolean convertWholeBuffer = (byteCount < 0);
93354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        if (input instanceof ByteBuffer) {
93454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            ByteBuffer input2 = (ByteBuffer) input;
935be6eac828f5af8b608c3fa6749330f1dcd6b6206Jack Palevich            int position = input2.position();
93654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            if (convertWholeBuffer) {
937be6eac828f5af8b608c3fa6749330f1dcd6b6206Jack Palevich                byteCount = input2.limit() - position;
93854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            }
93954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            result = ByteBuffer.allocate(byteCount).order(input2.order());
94054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            for (int i = 0; i < byteCount; i++) {
94154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project                result.put(input2.get());
94254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            }
94354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            input2.position(position);
94454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        } else if (input instanceof CharBuffer) {
94554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            CharBuffer input2 = (CharBuffer) input;
946be6eac828f5af8b608c3fa6749330f1dcd6b6206Jack Palevich            int position = input2.position();
94754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            if (convertWholeBuffer) {
948be6eac828f5af8b608c3fa6749330f1dcd6b6206Jack Palevich                byteCount = (input2.limit() - position) * 2;
94954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            }
95054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            result = ByteBuffer.allocate(byteCount).order(input2.order());
95154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            CharBuffer result2 = result.asCharBuffer();
95254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            for (int i = 0; i < byteCount / 2; i++) {
95354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project                result2.put(input2.get());
95454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            }
95554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            input2.position(position);
95654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        } else if (input instanceof ShortBuffer) {
95754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            ShortBuffer input2 = (ShortBuffer) input;
958be6eac828f5af8b608c3fa6749330f1dcd6b6206Jack Palevich            int position = input2.position();
95954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            if (convertWholeBuffer) {
960be6eac828f5af8b608c3fa6749330f1dcd6b6206Jack Palevich                byteCount = (input2.limit() - position)* 2;
96154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            }
96254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            result = ByteBuffer.allocate(byteCount).order(input2.order());
96354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            ShortBuffer result2 = result.asShortBuffer();
96454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            for (int i = 0; i < byteCount / 2; i++) {
96554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project                result2.put(input2.get());
96654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            }
96754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            input2.position(position);
96854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        } else if (input instanceof IntBuffer) {
96954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            IntBuffer input2 = (IntBuffer) input;
970be6eac828f5af8b608c3fa6749330f1dcd6b6206Jack Palevich            int position = input2.position();
97154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            if (convertWholeBuffer) {
972be6eac828f5af8b608c3fa6749330f1dcd6b6206Jack Palevich                byteCount = (input2.limit() - position) * 4;
97354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            }
97454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            result = ByteBuffer.allocate(byteCount).order(input2.order());
97554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            IntBuffer result2 = result.asIntBuffer();
97654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            for (int i = 0; i < byteCount / 4; i++) {
97754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project                result2.put(input2.get());
97854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            }
97954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            input2.position(position);
98054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        } else if (input instanceof FloatBuffer) {
98154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            FloatBuffer input2 = (FloatBuffer) input;
982be6eac828f5af8b608c3fa6749330f1dcd6b6206Jack Palevich            int position = input2.position();
98354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            if (convertWholeBuffer) {
984be6eac828f5af8b608c3fa6749330f1dcd6b6206Jack Palevich                byteCount = (input2.limit() - position) * 4;
98554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            }
98654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            result = ByteBuffer.allocate(byteCount).order(input2.order());
98754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            FloatBuffer result2 = result.asFloatBuffer();
98854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            for (int i = 0; i < byteCount / 4; i++) {
98954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project                result2.put(input2.get());
99054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            }
99154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            input2.position(position);
99254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        } else if (input instanceof DoubleBuffer) {
99354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            DoubleBuffer input2 = (DoubleBuffer) input;
994be6eac828f5af8b608c3fa6749330f1dcd6b6206Jack Palevich            int position = input2.position();
99554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            if (convertWholeBuffer) {
996be6eac828f5af8b608c3fa6749330f1dcd6b6206Jack Palevich                byteCount = (input2.limit() - position) * 8;
99754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            }
99854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            result = ByteBuffer.allocate(byteCount).order(input2.order());
99954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            DoubleBuffer result2 = result.asDoubleBuffer();
100054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            for (int i = 0; i < byteCount / 8; i++) {
100154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project                result2.put(input2.get());
100254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            }
100354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            input2.position(position);
100454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        } else if (input instanceof LongBuffer) {
100554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            LongBuffer input2 = (LongBuffer) input;
1006be6eac828f5af8b608c3fa6749330f1dcd6b6206Jack Palevich            int position = input2.position();
100754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            if (convertWholeBuffer) {
1008be6eac828f5af8b608c3fa6749330f1dcd6b6206Jack Palevich                byteCount = (input2.limit() - position) * 8;
100954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            }
101054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            result = ByteBuffer.allocate(byteCount).order(input2.order());
101154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            LongBuffer result2 = result.asLongBuffer();
101254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            for (int i = 0; i < byteCount / 8; i++) {
101354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project                result2.put(input2.get());
101454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            }
101554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            input2.position(position);
101654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        } else {
101754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            throw new RuntimeException("Unimplemented Buffer subclass.");
101854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        }
101954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        result.rewind();
102054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        // The OpenGL API will interpret the result in hardware byte order,
102154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        // so we better do that as well:
102254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        result.order(ByteOrder.nativeOrder());
102354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        return result;
102454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
102554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
102654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    private char[] toCharIndices(int count, int type, Buffer indices) {
102754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        char[] result = new char[count];
102854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        switch (type) {
102954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        case GL_UNSIGNED_BYTE: {
103054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            ByteBuffer byteBuffer = toByteBuffer(count, indices);
103154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            byte[] array = byteBuffer.array();
103254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            int offset = byteBuffer.arrayOffset();
103354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            for (int i = 0; i < count; i++) {
103454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project                result[i] = (char) (0xff & array[offset + i]);
103554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            }
103654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        }
103754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            break;
103854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        case GL_UNSIGNED_SHORT: {
103954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            CharBuffer charBuffer;
104054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            if (indices instanceof CharBuffer) {
104154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project                charBuffer = (CharBuffer) indices;
104254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            } else {
104354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project                ByteBuffer byteBuffer = toByteBuffer(count * 2, indices);
104454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project                charBuffer = byteBuffer.asCharBuffer();
104554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            }
104654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            int oldPosition = charBuffer.position();
104754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            charBuffer.position(0);
104854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            charBuffer.get(result);
104954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            charBuffer.position(oldPosition);
105054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        }
105154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            break;
105254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        default:
105354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            // Don't throw an exception, because we don't want logging to
105454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            // change the behavior.
105554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            break;
105654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        }
105754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        return result;
105854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
105954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
106054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    private void doArrayElement(StringBuilder builder, boolean enabled,
106154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            String name, PointerInfo pointer, int index) {
106254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        if (!enabled) {
106354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            return;
106454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        }
106554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        builder.append(" ");
106654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        builder.append(name + ":{");
1067be6eac828f5af8b608c3fa6749330f1dcd6b6206Jack Palevich        if (pointer == null || pointer.mTempByteBuffer == null ) {
1068be6eac828f5af8b608c3fa6749330f1dcd6b6206Jack Palevich            builder.append("undefined }");
106954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            return;
107054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        }
107154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        if (pointer.mStride < 0) {
107254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            builder.append("invalid stride");
107354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            return;
107454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        }
107554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
107654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        int stride = pointer.getStride();
107754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        ByteBuffer byteBuffer = pointer.mTempByteBuffer;
107854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        int size = pointer.mSize;
107954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        int type = pointer.mType;
108054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        int sizeofType = pointer.sizeof(type);
108154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        int byteOffset = stride * index;
108254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        for (int i = 0; i < size; i++) {
108354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            if (i > 0) {
108454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project                builder.append(", ");
108554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            }
108654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            switch (type) {
108754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            case GL_BYTE: {
108854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project                byte d = byteBuffer.get(byteOffset);
108954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project                builder.append(Integer.toString(d));
109054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            }
109154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project                break;
109254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            case GL_UNSIGNED_BYTE: {
109354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project                byte d = byteBuffer.get(byteOffset);
109454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project                builder.append(Integer.toString(0xff & d));
109554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            }
109654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project                break;
109754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            case GL_SHORT: {
109854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project                ShortBuffer shortBuffer = byteBuffer.asShortBuffer();
109954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project                short d = shortBuffer.get(byteOffset / 2);
110054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project                builder.append(Integer.toString(d));
110154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            }
110254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project                break;
110354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            case GL_FIXED: {
110454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project                IntBuffer intBuffer = byteBuffer.asIntBuffer();
110554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project                int d = intBuffer.get(byteOffset / 4);
110654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project                builder.append(Integer.toString(d));
110754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            }
110854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project                break;
110954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            case GL_FLOAT: {
111054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project                FloatBuffer intBuffer = byteBuffer.asFloatBuffer();
111154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project                float d = intBuffer.get(byteOffset / 4);
111254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project                builder.append(Float.toString(d));
111354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            }
111454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project                break;
111554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            default:
111654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project                builder.append("?");
111754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project                break;
111854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            }
111954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            byteOffset += sizeofType;
112054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        }
112154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        builder.append("}");
112254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
112354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
112454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    private void doElement(StringBuilder builder, int ordinal, int vertexIndex) {
112554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        builder.append(" [" + ordinal + " : " + vertexIndex + "] =");
112654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        doArrayElement(builder, mVertexArrayEnabled, "v", mVertexPointer,
112754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project                vertexIndex);
112854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        doArrayElement(builder, mNormalArrayEnabled, "n", mNormalPointer,
112954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project                vertexIndex);
113054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        doArrayElement(builder, mColorArrayEnabled, "c", mColorPointer,
113154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project                vertexIndex);
113254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        doArrayElement(builder, mTextureCoordArrayEnabled, "t",
113354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project                mTexCoordPointer, vertexIndex);
113454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        builder.append("\n");
113554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        // Vertex
113654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        // Normal
113754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        // Color
113854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        // TexCoord
113954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
114054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
114154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    private void bindArrays() {
114254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        if (mColorArrayEnabled)
114354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            mColorPointer.bindByteBuffer();
114454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        if (mNormalArrayEnabled)
114554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            mNormalPointer.bindByteBuffer();
114654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        if (mTextureCoordArrayEnabled)
114754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            mTexCoordPointer.bindByteBuffer();
114854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        if (mVertexArrayEnabled)
114954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            mVertexPointer.bindByteBuffer();
115054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
115154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
115254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    private void unbindArrays() {
115354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        if (mColorArrayEnabled)
115454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            mColorPointer.unbindByteBuffer();
115554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        if (mNormalArrayEnabled)
115654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            mNormalPointer.unbindByteBuffer();
115754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        if (mTextureCoordArrayEnabled)
115854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            mTexCoordPointer.unbindByteBuffer();
115954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        if (mVertexArrayEnabled)
116054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            mVertexPointer.unbindByteBuffer();
116154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
116254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
116354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    private void startLogIndices() {
116454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        mStringBuilder = new StringBuilder();
116554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        mStringBuilder.append("\n");
116654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        bindArrays();
116754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
116854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
116954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    private void endLogIndices() {
117054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        log(mStringBuilder.toString());
117154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        unbindArrays();
117254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
117354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
117454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    // ---------------------------------------------------------------------
117554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    // GL10 methods:
117654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
117754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    public void glActiveTexture(int texture) {
117854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        begin("glActiveTexture");
117954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("texture", texture);
118054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        end();
118154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        mgl.glActiveTexture(texture);
118254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        checkError();
118354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
118454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
118554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    public void glAlphaFunc(int func, float ref) {
118654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        begin("glAlphaFunc");
118754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("func", func);
118854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("ref", ref);
118954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        end();
119054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        mgl.glAlphaFunc(func, ref);
119154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        checkError();
119254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
119354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
119454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    public void glAlphaFuncx(int func, int ref) {
119554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        begin("glAlphaFuncx");
119654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("func", func);
119754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("ref", ref);
119854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        end();
119954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        mgl.glAlphaFuncx(func, ref);
120054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        checkError();
120154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
120254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
120354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    public void glBindTexture(int target, int texture) {
120454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        begin("glBindTexture");
120554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("target", getTextureTarget(target));
120654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("texture", texture);
120754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        end();
120854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        mgl.glBindTexture(target, texture);
120954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        checkError();
121054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
121154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
121254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    public void glBlendFunc(int sfactor, int dfactor) {
121354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        begin("glBlendFunc");
121454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("sfactor", getFactor(sfactor));
121554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("dfactor", getFactor(dfactor));
121654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        end();
121754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
121854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        mgl.glBlendFunc(sfactor, dfactor);
121954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        checkError();
122054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
122154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
122254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    public void glClear(int mask) {
122354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        begin("glClear");
122454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("mask", getClearBufferMask(mask));
122554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        end();
122654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
122754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        mgl.glClear(mask);
122854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        checkError();
122954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
123054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
123154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    public void glClearColor(float red, float green, float blue, float alpha) {
123254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        begin("glClearColor");
123354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("red", red);
123454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("green", green);
123554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("blue", blue);
123654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("alpha", alpha);
123754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        end();
123854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
123954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        mgl.glClearColor(red, green, blue, alpha);
124054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        checkError();
124154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
124254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
124354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    public void glClearColorx(int red, int green, int blue, int alpha) {
124454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        begin("glClearColor");
124554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("red", red);
124654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("green", green);
124754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("blue", blue);
124854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("alpha", alpha);
124954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        end();
125054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
125154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        mgl.glClearColorx(red, green, blue, alpha);
125254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        checkError();
125354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
125454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
125554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    public void glClearDepthf(float depth) {
125654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        begin("glClearDepthf");
125754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("depth", depth);
125854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        end();
125954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
126054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        mgl.glClearDepthf(depth);
126154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        checkError();
126254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
126354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
126454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    public void glClearDepthx(int depth) {
126554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        begin("glClearDepthx");
126654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("depth", depth);
126754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        end();
126854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
126954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        mgl.glClearDepthx(depth);
127054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        checkError();
127154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
127254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
127354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    public void glClearStencil(int s) {
127454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        begin("glClearStencil");
127554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("s", s);
127654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        end();
127754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
127854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        mgl.glClearStencil(s);
127954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        checkError();
128054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
128154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
128254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    public void glClientActiveTexture(int texture) {
128354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        begin("glClientActiveTexture");
128454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("texture", texture);
128554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        end();
128654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
128754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        mgl.glClientActiveTexture(texture);
128854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        checkError();
128954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
129054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
129154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    public void glColor4f(float red, float green, float blue, float alpha) {
129254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        begin("glColor4f");
129354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("red", red);
129454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("green", green);
129554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("blue", blue);
129654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("alpha", alpha);
129754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        end();
129854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
129954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        mgl.glColor4f(red, green, blue, alpha);
130054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        checkError();
130154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
130254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
130354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    public void glColor4x(int red, int green, int blue, int alpha) {
130454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        begin("glColor4x");
130554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("red", red);
130654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("green", green);
130754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("blue", blue);
130854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("alpha", alpha);
130954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        end();
131054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
131154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        mgl.glColor4x(red, green, blue, alpha);
131254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        checkError();
131354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
131454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
131554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    public void glColorMask(boolean red, boolean green, boolean blue,
131654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            boolean alpha) {
131754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        begin("glColorMask");
131854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("red", red);
131954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("green", green);
132054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("blue", blue);
132154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("alpha", alpha);
132254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        end();
132354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
132454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        mgl.glColorMask(red, green, blue, alpha);
132554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        checkError();
132654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
132754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
132854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    public void glColorPointer(int size, int type, int stride, Buffer pointer) {
132954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        begin("glColorPointer");
133054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        argPointer(size, type, stride, pointer);
133154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        end();
133254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        mColorPointer = new PointerInfo(size, type, stride, pointer);
133354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
133454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        mgl.glColorPointer(size, type, stride, pointer);
133554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        checkError();
133654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
133754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
133854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    public void glCompressedTexImage2D(int target, int level,
133954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            int internalformat, int width, int height, int border,
134054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            int imageSize, Buffer data) {
134154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        begin("glCompressedTexImage2D");
134254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("target", getTextureTarget(target));
134354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("level", level);
134454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("internalformat", internalformat);
134554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("width", width);
134654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("height", height);
134754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("border", border);
134854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("imageSize", imageSize);
134954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("data", data.toString());
135054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        end();
135154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
135254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        mgl.glCompressedTexImage2D(target, level, internalformat, width,
135354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project                height, border, imageSize, data);
135454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        checkError();
135554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
135654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
135754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    public void glCompressedTexSubImage2D(int target, int level, int xoffset,
135854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            int yoffset, int width, int height, int format, int imageSize,
135954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            Buffer data) {
136054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        begin("glCompressedTexSubImage2D");
136154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("target", getTextureTarget(target));
136254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("level", level);
136354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("xoffset", xoffset);
136454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("yoffset", yoffset);
136554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("width", width);
136654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("height", height);
136754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("format", format);
136854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("imageSize", imageSize);
136954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("data", data.toString());
137054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        end();
137154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
137254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        mgl.glCompressedTexSubImage2D(target, level, xoffset, yoffset, width,
137354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project                height, format, imageSize, data);
137454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        checkError();
137554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
137654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
137754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    public void glCopyTexImage2D(int target, int level, int internalformat,
137854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            int x, int y, int width, int height, int border) {
137954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        begin("glCopyTexImage2D");
138054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("target", getTextureTarget(target));
138154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("level", level);
138254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("internalformat", internalformat);
138354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("x", x);
138454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("y", y);
138554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("width", width);
138654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("height", height);
138754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("border", border);
138854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        end();
138954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
139054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        mgl.glCopyTexImage2D(target, level, internalformat, x, y, width,
139154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project                height, border);
139254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        checkError();
139354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
139454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
139554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    public void glCopyTexSubImage2D(int target, int level, int xoffset,
139654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            int yoffset, int x, int y, int width, int height) {
139754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        begin("glCopyTexSubImage2D");
139854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("target", getTextureTarget(target));
139954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("level", level);
140054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("xoffset", xoffset);
140154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("yoffset", yoffset);
140254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("x", x);
140354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("y", y);
140454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("width", width);
140554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("height", height);
140654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        end();
140754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
140854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        mgl.glCopyTexSubImage2D(target, level, xoffset, yoffset, x, y, width,
140954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project                height);
141054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        checkError();
141154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
141254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
141354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    public void glCullFace(int mode) {
141454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        begin("glCullFace");
141554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("mode", mode);
141654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        end();
141754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
141854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        mgl.glCullFace(mode);
141954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        checkError();
142054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
142154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
142254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    public void glDeleteTextures(int n, int[] textures, int offset) {
142354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        begin("glDeleteTextures");
142454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("n", n);
142554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("textures", n, textures, offset);
142654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("offset", offset);
142754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        end();
142854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
142954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        mgl.glDeleteTextures(n, textures, offset);
143054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        checkError();
143154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
143254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
143354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    public void glDeleteTextures(int n, IntBuffer textures) {
143454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        begin("glDeleteTextures");
143554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("n", n);
143654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("textures", n, textures);
143754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        end();
143854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
143954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        mgl.glDeleteTextures(n, textures);
144054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        checkError();
144154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
144254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
144354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    public void glDepthFunc(int func) {
144454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        begin("glDepthFunc");
144554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("func", func);
144654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        end();
144754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
144854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        mgl.glDepthFunc(func);
144954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        checkError();
145054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
145154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
145254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    public void glDepthMask(boolean flag) {
145354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        begin("glDepthMask");
145454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("flag", flag);
145554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        end();
145654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
145754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        mgl.glDepthMask(flag);
145854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        checkError();
145954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
146054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
146154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    public void glDepthRangef(float near, float far) {
146254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        begin("glDepthRangef");
146354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("near", near);
146454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("far", far);
146554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        end();
146654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
146754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        mgl.glDepthRangef(near, far);
146854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        checkError();
146954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
147054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
147154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    public void glDepthRangex(int near, int far) {
147254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        begin("glDepthRangex");
147354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("near", near);
147454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("far", far);
147554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        end();
147654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
147754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        mgl.glDepthRangex(near, far);
147854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        checkError();
147954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
148054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
148154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    public void glDisable(int cap) {
148254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        begin("glDisable");
148354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("cap", getCap(cap));
148454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        end();
148554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
148654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        mgl.glDisable(cap);
148754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        checkError();
148854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
148954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
149054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    public void glDisableClientState(int array) {
149154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        begin("glDisableClientState");
149254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("array", getClientState(array));
149354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        end();
149454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
149554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        switch (array) {
149654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        case GL_COLOR_ARRAY:
149754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            mColorArrayEnabled = false;
149854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            break;
149954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        case GL_NORMAL_ARRAY:
150054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            mNormalArrayEnabled = false;
150154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            break;
150254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        case GL_TEXTURE_COORD_ARRAY:
150354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            mTextureCoordArrayEnabled = false;
150454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            break;
150554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        case GL_VERTEX_ARRAY:
150654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            mVertexArrayEnabled = false;
150754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            break;
150854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        }
150954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        mgl.glDisableClientState(array);
151054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        checkError();
151154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
151254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
151354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    public void glDrawArrays(int mode, int first, int count) {
151454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        begin("glDrawArrays");
151554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("mode", mode);
151654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("first", first);
151754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("count", count);
151854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        startLogIndices();
151954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        for (int i = 0; i < count; i++) {
1520219749df3ef8ad8efa4a1d4889403e179c268067Li Wenhao            doElement(mStringBuilder, i, first + i);
152154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        }
152254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        endLogIndices();
152354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        end();
152454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
152554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        mgl.glDrawArrays(mode, first, count);
152654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        checkError();
152754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
152854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
152954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    public void glDrawElements(int mode, int count, int type, Buffer indices) {
153054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        begin("glDrawElements");
153154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("mode", getBeginMode(mode));
153254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("count", count);
153354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("type", getIndexType(type));
153454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        char[] indexArray = toCharIndices(count, type, indices);
153554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        int indexArrayLength = indexArray.length;
153654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        startLogIndices();
153754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        for (int i = 0; i < indexArrayLength; i++) {
153854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            doElement(mStringBuilder, i, indexArray[i]);
153954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        }
154054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        endLogIndices();
154154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        end();
154254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
154354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        mgl.glDrawElements(mode, count, type, indices);
154454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        checkError();
154554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
154654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
154754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    public void glEnable(int cap) {
154854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        begin("glEnable");
154954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("cap", getCap(cap));
155054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        end();
155154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
155254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        mgl.glEnable(cap);
155354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        checkError();
155454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
155554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
155654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    public void glEnableClientState(int array) {
155754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        begin("glEnableClientState");
155854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("array", getClientState(array));
155954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        end();
156054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
156154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        switch (array) {
156254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        case GL_COLOR_ARRAY:
156354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            mColorArrayEnabled = true;
156454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            break;
156554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        case GL_NORMAL_ARRAY:
156654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            mNormalArrayEnabled = true;
156754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            break;
156854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        case GL_TEXTURE_COORD_ARRAY:
156954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            mTextureCoordArrayEnabled = true;
157054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            break;
157154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        case GL_VERTEX_ARRAY:
157254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            mVertexArrayEnabled = true;
157354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            break;
157454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        }
157554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        mgl.glEnableClientState(array);
157654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        checkError();
157754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
157854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
157954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    public void glFinish() {
158054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        begin("glFinish");
158154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        end();
158254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
158354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        mgl.glFinish();
158454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        checkError();
158554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
158654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
158754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    public void glFlush() {
158854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        begin("glFlush");
158954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        end();
159054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
159154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        mgl.glFlush();
159254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        checkError();
159354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
159454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
159554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    public void glFogf(int pname, float param) {
159654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        begin("glFogf");
159754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("pname", pname);
159854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("param", param);
159954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        end();
160054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
160154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        mgl.glFogf(pname, param);
160254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        checkError();
160354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
160454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
160554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    public void glFogfv(int pname, float[] params, int offset) {
160654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        begin("glFogfv");
160754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("pname", getFogPName(pname));
160854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("params", getFogParamCount(pname), params, offset);
160954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("offset", offset);
161054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        end();
161154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
161254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        mgl.glFogfv(pname, params, offset);
161354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        checkError();
161454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
161554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
161654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    public void glFogfv(int pname, FloatBuffer params) {
161754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        begin("glFogfv");
161854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("pname", getFogPName(pname));
161954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("params", getFogParamCount(pname), params);
162054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        end();
162154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
162254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        mgl.glFogfv(pname, params);
162354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        checkError();
162454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
162554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
162654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    public void glFogx(int pname, int param) {
162754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        begin("glFogx");
162854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("pname", getFogPName(pname));
162954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("param", param);
163054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        end();
163154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
163254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        mgl.glFogx(pname, param);
163354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        checkError();
163454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
163554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
163654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    public void glFogxv(int pname, int[] params, int offset) {
163754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        begin("glFogxv");
163854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("pname", getFogPName(pname));
163954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("params", getFogParamCount(pname), params, offset);
164054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("offset", offset);
164154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        end();
164254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
164354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        mgl.glFogxv(pname, params, offset);
164454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        checkError();
164554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
164654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
164754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    public void glFogxv(int pname, IntBuffer params) {
164854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        begin("glFogxv");
164954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("pname", getFogPName(pname));
165054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("params", getFogParamCount(pname), params);
165154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        end();
165254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
165354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        mgl.glFogxv(pname, params);
165454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        checkError();
165554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
165654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
165754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    public void glFrontFace(int mode) {
165854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        begin("glFrontFace");
165954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("mode", mode);
166054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        end();
166154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
166254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        mgl.glFrontFace(mode);
166354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        checkError();
166454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
166554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
166654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    public void glFrustumf(float left, float right, float bottom, float top,
166754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            float near, float far) {
166854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        begin("glFrustumf");
166954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("left", left);
167054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("right", right);
167154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("bottom", bottom);
167254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("top", top);
167354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("near", near);
167454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("far", far);
167554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        end();
167654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
167754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        mgl.glFrustumf(left, right, bottom, top, near, far);
167854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        checkError();
167954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
168054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
168154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    public void glFrustumx(int left, int right, int bottom, int top, int near,
168254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            int far) {
168354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        begin("glFrustumx");
168454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("left", left);
168554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("right", right);
168654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("bottom", bottom);
168754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("top", top);
168854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("near", near);
168954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("far", far);
169054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        end();
169154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
169254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        mgl.glFrustumx(left, right, bottom, top, near, far);
169354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        checkError();
169454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
169554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
169654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    public void glGenTextures(int n, int[] textures, int offset) {
169754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        begin("glGenTextures");
169854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("n", n);
169954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("textures", Arrays.toString(textures));
170054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("offset", offset);
170154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
170254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        mgl.glGenTextures(n, textures, offset);
170354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
170454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        returns(toString(n, FORMAT_INT, textures, offset));
170554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
170654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        checkError();
170754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
170854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
170954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    public void glGenTextures(int n, IntBuffer textures) {
171054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        begin("glGenTextures");
171154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("n", n);
171254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("textures", textures.toString());
171354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
171454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        mgl.glGenTextures(n, textures);
171554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
171654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        returns(toString(n, FORMAT_INT, textures));
171754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
171854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        checkError();
171954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
172054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
172154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    public int glGetError() {
172254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        begin("glGetError");
172354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
172454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        int result = mgl.glGetError();
172554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
172654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        returns(result);
172754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
172854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        return result;
172954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
173054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
173154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    public void glGetIntegerv(int pname, int[] params, int offset) {
173254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        begin("glGetIntegerv");
173354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("pname", getIntegerStateName(pname));
173454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("params", Arrays.toString(params));
173554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("offset", offset);
173654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
173754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        mgl.glGetIntegerv(pname, params, offset);
173854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
173954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        returns(toString(getIntegerStateSize(pname),
174054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project                getIntegerStateFormat(pname), params, offset));
174154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
174254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        checkError();
174354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
174454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
174554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    public void glGetIntegerv(int pname, IntBuffer params) {
174654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        begin("glGetIntegerv");
174754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("pname", getIntegerStateName(pname));
174854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("params", params.toString());
174954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
175054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        mgl.glGetIntegerv(pname, params);
175154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
175254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        returns(toString(getIntegerStateSize(pname),
175354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project                getIntegerStateFormat(pname), params));
175454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
175554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        checkError();
175654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
175754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
175854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    public String glGetString(int name) {
175954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        begin("glGetString");
176054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("name", name);
176154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
176254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        String result = mgl.glGetString(name);
176354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
176454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        returns(result);
176554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
176654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        checkError();
176754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        return result;
176854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
176954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
177054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    public void glHint(int target, int mode) {
177154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        begin("glHint");
177254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("target", getHintTarget(target));
177354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("mode", getHintMode(mode));
177454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        end();
177554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
177654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        mgl.glHint(target, mode);
177754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        checkError();
177854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
177954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
178054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    public void glLightModelf(int pname, float param) {
178154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        begin("glLightModelf");
178254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("pname", getLightModelPName(pname));
178354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("param", param);
178454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        end();
178554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
178654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        mgl.glLightModelf(pname, param);
178754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        checkError();
178854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
178954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
179054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    public void glLightModelfv(int pname, float[] params, int offset) {
179154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        begin("glLightModelfv");
179254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("pname", getLightModelPName(pname));
179354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("params", getLightModelParamCount(pname), params, offset);
179454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("offset", offset);
179554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        end();
179654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
179754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        mgl.glLightModelfv(pname, params, offset);
179854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        checkError();
179954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
180054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
180154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    public void glLightModelfv(int pname, FloatBuffer params) {
180254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        begin("glLightModelfv");
180354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("pname", getLightModelPName(pname));
180454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("params", getLightModelParamCount(pname), params);
180554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        end();
180654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
180754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        mgl.glLightModelfv(pname, params);
180854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        checkError();
180954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
181054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
181154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    public void glLightModelx(int pname, int param) {
181254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        begin("glLightModelx");
181354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("pname", getLightModelPName(pname));
181454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("param", param);
181554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        end();
181654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
181754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        mgl.glLightModelx(pname, param);
181854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        checkError();
181954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
182054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
182154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    public void glLightModelxv(int pname, int[] params, int offset) {
182254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        begin("glLightModelxv");
182354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("pname", getLightModelPName(pname));
182454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("params", getLightModelParamCount(pname), params, offset);
182554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("offset", offset);
182654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        end();
182754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
182854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        mgl.glLightModelxv(pname, params, offset);
182954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        checkError();
183054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
183154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
183254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    public void glLightModelxv(int pname, IntBuffer params) {
183354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        begin("glLightModelfv");
183454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("pname", getLightModelPName(pname));
183554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("params", getLightModelParamCount(pname), params);
183654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        end();
183754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
183854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        mgl.glLightModelxv(pname, params);
183954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        checkError();
184054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
184154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
184254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    public void glLightf(int light, int pname, float param) {
184354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        begin("glLightf");
184454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("light", getLightName(light));
184554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("pname", getLightPName(pname));
184654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("param", param);
184754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        end();
184854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
184954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        mgl.glLightf(light, pname, param);
185054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        checkError();
185154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
185254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
185354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    public void glLightfv(int light, int pname, float[] params, int offset) {
185454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        begin("glLightfv");
185554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("light", getLightName(light));
185654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("pname", getLightPName(pname));
185754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("params", getLightParamCount(pname), params, offset);
185854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("offset", offset);
185954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        end();
186054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
186154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        mgl.glLightfv(light, pname, params, offset);
186254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        checkError();
186354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
186454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
186554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    public void glLightfv(int light, int pname, FloatBuffer params) {
186654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        begin("glLightfv");
186754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("light", getLightName(light));
186854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("pname", getLightPName(pname));
186954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("params", getLightParamCount(pname), params);
187054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        end();
187154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
187254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        mgl.glLightfv(light, pname, params);
187354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        checkError();
187454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
187554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
187654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    public void glLightx(int light, int pname, int param) {
187754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        begin("glLightx");
187854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("light", getLightName(light));
187954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("pname", getLightPName(pname));
188054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("param", param);
188154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        end();
188254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
188354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        mgl.glLightx(light, pname, param);
188454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        checkError();
188554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
188654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
188754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    public void glLightxv(int light, int pname, int[] params, int offset) {
188854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        begin("glLightxv");
188954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("light", getLightName(light));
189054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("pname", getLightPName(pname));
189154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("params", getLightParamCount(pname), params, offset);
189254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("offset", offset);
189354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        end();
189454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
189554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        mgl.glLightxv(light, pname, params, offset);
189654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        checkError();
189754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
189854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
189954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    public void glLightxv(int light, int pname, IntBuffer params) {
190054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        begin("glLightxv");
190154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("light", getLightName(light));
190254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("pname", getLightPName(pname));
190354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("params", getLightParamCount(pname), params);
190454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        end();
190554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
190654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        mgl.glLightxv(light, pname, params);
190754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        checkError();
190854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
190954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
191054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    public void glLineWidth(float width) {
191154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        begin("glLineWidth");
191254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("width", width);
191354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        end();
191454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
191554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        mgl.glLineWidth(width);
191654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        checkError();
191754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
191854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
191954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    public void glLineWidthx(int width) {
192054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        begin("glLineWidthx");
192154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("width", width);
192254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        end();
192354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
192454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        mgl.glLineWidthx(width);
192554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        checkError();
192654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
192754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
192854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    public void glLoadIdentity() {
192954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        begin("glLoadIdentity");
193054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        end();
193154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
193254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        mgl.glLoadIdentity();
193354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        checkError();
193454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
193554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
193654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    public void glLoadMatrixf(float[] m, int offset) {
193754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        begin("glLoadMatrixf");
193854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("m", 16, m, offset);
193954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("offset", offset);
194054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        end();
194154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
194254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        mgl.glLoadMatrixf(m, offset);
194354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        checkError();
194454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
194554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
194654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    public void glLoadMatrixf(FloatBuffer m) {
194754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        begin("glLoadMatrixf");
194854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("m", 16, m);
194954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        end();
195054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
195154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        mgl.glLoadMatrixf(m);
195254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        checkError();
195354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
195454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
195554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    public void glLoadMatrixx(int[] m, int offset) {
195654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        begin("glLoadMatrixx");
195754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("m", 16, m, offset);
195854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("offset", offset);
195954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        end();
196054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
196154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        mgl.glLoadMatrixx(m, offset);
196254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        checkError();
196354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
196454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
196554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    public void glLoadMatrixx(IntBuffer m) {
196654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        begin("glLoadMatrixx");
196754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("m", 16, m);
196854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        end();
196954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
197054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        mgl.glLoadMatrixx(m);
197154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        checkError();
197254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
197354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
197454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    public void glLogicOp(int opcode) {
197554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        begin("glLogicOp");
197654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("opcode", opcode);
197754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        end();
197854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
197954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        mgl.glLogicOp(opcode);
198054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        checkError();
198154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
198254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
198354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    public void glMaterialf(int face, int pname, float param) {
198454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        begin("glMaterialf");
198554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("face", getFaceName(face));
198654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("pname", getMaterialPName(pname));
198754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("param", param);
198854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        end();
198954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
199054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        mgl.glMaterialf(face, pname, param);
199154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        checkError();
199254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
199354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
199454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    public void glMaterialfv(int face, int pname, float[] params, int offset) {
199554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        begin("glMaterialfv");
199654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("face", getFaceName(face));
199754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("pname", getMaterialPName(pname));
199854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("params", getMaterialParamCount(pname), params, offset);
199954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("offset", offset);
200054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        end();
200154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
200254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        mgl.glMaterialfv(face, pname, params, offset);
200354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        checkError();
200454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
200554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
200654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    public void glMaterialfv(int face, int pname, FloatBuffer params) {
200754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        begin("glMaterialfv");
200854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("face", getFaceName(face));
200954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("pname", getMaterialPName(pname));
201054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("params", getMaterialParamCount(pname), params);
201154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        end();
201254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
201354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        mgl.glMaterialfv(face, pname, params);
201454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        checkError();
201554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
201654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
201754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    public void glMaterialx(int face, int pname, int param) {
201854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        begin("glMaterialx");
201954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("face", getFaceName(face));
202054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("pname", getMaterialPName(pname));
202154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("param", param);
202254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        end();
202354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
202454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        mgl.glMaterialx(face, pname, param);
202554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        checkError();
202654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
202754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
202854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    public void glMaterialxv(int face, int pname, int[] params, int offset) {
202954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        begin("glMaterialxv");
203054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("face", getFaceName(face));
203154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("pname", getMaterialPName(pname));
203254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("params", getMaterialParamCount(pname), params, offset);
203354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("offset", offset);
203454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        end();
203554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
203654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        mgl.glMaterialxv(face, pname, params, offset);
203754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        checkError();
203854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
203954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
204054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    public void glMaterialxv(int face, int pname, IntBuffer params) {
204154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        begin("glMaterialxv");
204254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("face", getFaceName(face));
204354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("pname", getMaterialPName(pname));
204454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("params", getMaterialParamCount(pname), params);
204554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        end();
204654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
204754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        mgl.glMaterialxv(face, pname, params);
204854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        checkError();
204954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
205054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
205154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    public void glMatrixMode(int mode) {
205254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        begin("glMatrixMode");
205354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("mode", getMatrixMode(mode));
205454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        end();
205554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
205654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        mgl.glMatrixMode(mode);
205754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        checkError();
205854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
205954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
206054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    public void glMultMatrixf(float[] m, int offset) {
206154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        begin("glMultMatrixf");
206254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("m", 16, m, offset);
206354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("offset", offset);
206454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        end();
206554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
206654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        mgl.glMultMatrixf(m, offset);
206754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        checkError();
206854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
206954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
207054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    public void glMultMatrixf(FloatBuffer m) {
207154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        begin("glMultMatrixf");
207254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("m", 16, m);
207354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        end();
207454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
207554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        mgl.glMultMatrixf(m);
207654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        checkError();
207754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
207854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
207954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    public void glMultMatrixx(int[] m, int offset) {
208054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        begin("glMultMatrixx");
208154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("m", 16, m, offset);
208254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("offset", offset);
208354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        end();
208454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
208554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        mgl.glMultMatrixx(m, offset);
208654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        checkError();
208754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
208854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
208954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    public void glMultMatrixx(IntBuffer m) {
209054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        begin("glMultMatrixx");
209154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("m", 16, m);
209254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        end();
209354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
209454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        mgl.glMultMatrixx(m);
209554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        checkError();
209654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
209754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
209854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    public void glMultiTexCoord4f(int target, float s, float t, float r, float q) {
209954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        begin("glMultiTexCoord4f");
210054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("target", target);
210154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("s", s);
210254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("t", t);
210354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("r", r);
210454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("q", q);
210554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        end();
210654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
210754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        mgl.glMultiTexCoord4f(target, s, t, r, q);
210854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        checkError();
210954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
211054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
211154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    public void glMultiTexCoord4x(int target, int s, int t, int r, int q) {
211254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        begin("glMultiTexCoord4x");
211354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("target", target);
211454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("s", s);
211554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("t", t);
211654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("r", r);
211754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("q", q);
211854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        end();
211954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
212054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        mgl.glMultiTexCoord4x(target, s, t, r, q);
212154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        checkError();
212254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
212354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
212454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    public void glNormal3f(float nx, float ny, float nz) {
212554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        begin("glNormal3f");
212654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("nx", nx);
212754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("ny", ny);
212854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("nz", nz);
212954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        end();
213054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
213154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        mgl.glNormal3f(nx, ny, nz);
213254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        checkError();
213354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
213454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
213554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    public void glNormal3x(int nx, int ny, int nz) {
213654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        begin("glNormal3x");
213754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("nx", nx);
213854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("ny", ny);
213954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("nz", nz);
214054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        end();
214154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
214254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        mgl.glNormal3x(nx, ny, nz);
214354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        checkError();
214454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
214554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
214654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    public void glNormalPointer(int type, int stride, Buffer pointer) {
214754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        begin("glNormalPointer");
214854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("type", type);
214954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("stride", stride);
215054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("pointer", pointer.toString());
215154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        end();
215254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        mNormalPointer = new PointerInfo(3, type, stride, pointer);
215354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
215454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        mgl.glNormalPointer(type, stride, pointer);
215554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        checkError();
215654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
215754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
215854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    public void glOrthof(float left, float right, float bottom, float top,
215954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            float near, float far) {
216054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        begin("glOrthof");
216154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("left", left);
216254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("right", right);
216354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("bottom", bottom);
216454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("top", top);
216554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("near", near);
216654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("far", far);
216754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        end();
216854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
216954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        mgl.glOrthof(left, right, bottom, top, near, far);
217054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        checkError();
217154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
217254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
217354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    public void glOrthox(int left, int right, int bottom, int top, int near,
217454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            int far) {
217554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        begin("glOrthox");
217654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("left", left);
217754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("right", right);
217854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("bottom", bottom);
217954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("top", top);
218054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("near", near);
218154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("far", far);
218254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        end();
218354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
218454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        mgl.glOrthox(left, right, bottom, top, near, far);
218554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        checkError();
218654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
218754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
218854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    public void glPixelStorei(int pname, int param) {
218954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        begin("glPixelStorei");
219054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("pname", pname);
219154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("param", param);
219254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        end();
219354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
219454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        mgl.glPixelStorei(pname, param);
219554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        checkError();
219654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
219754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
219854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    public void glPointSize(float size) {
219954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        begin("glPointSize");
220054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("size", size);
220154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        end();
220254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
220354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        mgl.glPointSize(size);
220454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        checkError();
220554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
220654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
220754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    public void glPointSizex(int size) {
220854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        begin("glPointSizex");
220954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("size", size);
221054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        end();
221154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
221254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        mgl.glPointSizex(size);
221354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        checkError();
221454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
221554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
221654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    public void glPolygonOffset(float factor, float units) {
221754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        begin("glPolygonOffset");
221854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("factor", factor);
221954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("units", units);
222054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        end();
222154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        mgl.glPolygonOffset(factor, units);
222254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        checkError();
222354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
222454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
222554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    public void glPolygonOffsetx(int factor, int units) {
222654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        begin("glPolygonOffsetx");
222754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("factor", factor);
222854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("units", units);
222954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        end();
223054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
223154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        mgl.glPolygonOffsetx(factor, units);
223254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        checkError();
223354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
223454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
223554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    public void glPopMatrix() {
223654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        begin("glPopMatrix");
223754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        end();
223854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
223954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        mgl.glPopMatrix();
224054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        checkError();
224154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
224254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
224354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    public void glPushMatrix() {
224454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        begin("glPushMatrix");
224554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        end();
224654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
224754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        mgl.glPushMatrix();
224854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        checkError();
224954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
225054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
225154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    public void glReadPixels(int x, int y, int width, int height, int format,
225254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            int type, Buffer pixels) {
225354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        begin("glReadPixels");
225454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("x", x);
225554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("y", y);
225654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("width", width);
225754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("height", height);
225854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("format", format);
225954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("type", type);
226054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("pixels", pixels.toString());
226154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        end();
226254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
226354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        mgl.glReadPixels(x, y, width, height, format, type, pixels);
226454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        checkError();
226554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
226654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
226754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    public void glRotatef(float angle, float x, float y, float z) {
226854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        begin("glRotatef");
226954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("angle", angle);
227054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("x", x);
227154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("y", y);
227254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("z", z);
227354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        end();
227454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
227554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        mgl.glRotatef(angle, x, y, z);
227654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        checkError();
227754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
227854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
227954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    public void glRotatex(int angle, int x, int y, int z) {
228054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        begin("glRotatex");
228154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("angle", angle);
228254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("x", x);
228354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("y", y);
228454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("z", z);
228554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        end();
228654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
228754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        mgl.glRotatex(angle, x, y, z);
228854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        checkError();
228954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
229054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
229154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    public void glSampleCoverage(float value, boolean invert) {
229254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        begin("glSampleCoveragex");
229354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("value", value);
229454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("invert", invert);
229554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        end();
229654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
229754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        mgl.glSampleCoverage(value, invert);
229854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        checkError();
229954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
230054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
230154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    public void glSampleCoveragex(int value, boolean invert) {
230254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        begin("glSampleCoveragex");
230354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("value", value);
230454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("invert", invert);
230554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        end();
230654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
230754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        mgl.glSampleCoveragex(value, invert);
230854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        checkError();
230954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
231054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
231154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    public void glScalef(float x, float y, float z) {
231254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        begin("glScalef");
231354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("x", x);
231454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("y", y);
231554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("z", z);
231654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        end();
231754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
231854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        mgl.glScalef(x, y, z);
231954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        checkError();
232054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
232154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
232254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    public void glScalex(int x, int y, int z) {
232354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        begin("glScalex");
232454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("x", x);
232554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("y", y);
232654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("z", z);
232754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        end();
232854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
232954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        mgl.glScalex(x, y, z);
233054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        checkError();
233154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
233254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
233354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    public void glScissor(int x, int y, int width, int height) {
233454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        begin("glScissor");
233554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("x", x);
233654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("y", y);
233754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("width", width);
233854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("height", height);
233954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        end();
234054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
234154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        mgl.glScissor(x, y, width, height);
234254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        checkError();
234354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
234454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
234554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    public void glShadeModel(int mode) {
234654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        begin("glShadeModel");
234754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("mode", getShadeModel(mode));
234854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        end();
234954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
235054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        mgl.glShadeModel(mode);
235154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        checkError();
235254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
235354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
235454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    public void glStencilFunc(int func, int ref, int mask) {
235554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        begin("glStencilFunc");
235654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("func", func);
235754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("ref", ref);
235854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("mask", mask);
235954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        end();
236054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
236154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        mgl.glStencilFunc(func, ref, mask);
236254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        checkError();
236354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
236454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
236554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    public void glStencilMask(int mask) {
236654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        begin("glStencilMask");
236754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("mask", mask);
236854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        end();
236954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
237054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        mgl.glStencilMask(mask);
237154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        checkError();
237254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
237354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
237454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    public void glStencilOp(int fail, int zfail, int zpass) {
237554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        begin("glStencilOp");
237654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("fail", fail);
237754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("zfail", zfail);
237854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("zpass", zpass);
237954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        end();
238054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
238154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        mgl.glStencilOp(fail, zfail, zpass);
238254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        checkError();
238354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
238454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
238554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    public void glTexCoordPointer(int size, int type, int stride, Buffer pointer) {
238654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        begin("glTexCoordPointer");
238754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        argPointer(size, type, stride, pointer);
238854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        end();
238954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        mTexCoordPointer = new PointerInfo(size, type, stride, pointer);
239054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
239154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        mgl.glTexCoordPointer(size, type, stride, pointer);
239254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        checkError();
239354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
239454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
239554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    public void glTexEnvf(int target, int pname, float param) {
239654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        begin("glTexEnvf");
239754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("target", getTextureEnvTarget(target));
239854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("pname", getTextureEnvPName(pname));
239954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("param", getTextureEnvParamName(param));
240054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        end();
240154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
240254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        mgl.glTexEnvf(target, pname, param);
240354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        checkError();
240454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
240554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
240654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    public void glTexEnvfv(int target, int pname, float[] params, int offset) {
240754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        begin("glTexEnvfv");
240854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("target", getTextureEnvTarget(target));
240954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("pname", getTextureEnvPName(pname));
241054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("params", getTextureEnvParamCount(pname), params, offset);
241154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("offset", offset);
241254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        end();
241354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
241454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        mgl.glTexEnvfv(target, pname, params, offset);
241554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        checkError();
241654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
241754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
241854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    public void glTexEnvfv(int target, int pname, FloatBuffer params) {
241954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        begin("glTexEnvfv");
242054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("target", getTextureEnvTarget(target));
242154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("pname", getTextureEnvPName(pname));
242254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("params", getTextureEnvParamCount(pname), params);
242354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        end();
242454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
242554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        mgl.glTexEnvfv(target, pname, params);
242654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        checkError();
242754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
242854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
242954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    public void glTexEnvx(int target, int pname, int param) {
243054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        begin("glTexEnvx");
243154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("target", getTextureEnvTarget(target));
243254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("pname", getTextureEnvPName(pname));
243354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("param", param);
243454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        end();
243554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
243654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        mgl.glTexEnvx(target, pname, param);
243754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        checkError();
243854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
243954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
244054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    public void glTexEnvxv(int target, int pname, int[] params, int offset) {
244154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        begin("glTexEnvxv");
244254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("target", getTextureEnvTarget(target));
244354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("pname", getTextureEnvPName(pname));
244454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("params", getTextureEnvParamCount(pname), params, offset);
244554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("offset", offset);
244654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        end();
244754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
244854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        mgl.glTexEnvxv(target, pname, params, offset);
244954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        checkError();
245054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
245154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
245254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    public void glTexEnvxv(int target, int pname, IntBuffer params) {
245354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        begin("glTexEnvxv");
245454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("target", getTextureEnvTarget(target));
245554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("pname", getTextureEnvPName(pname));
245654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("params", getTextureEnvParamCount(pname), params);
245754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        end();
245854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
245954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        mgl.glTexEnvxv(target, pname, params);
246054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        checkError();
246154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
246254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
246354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    public void glTexImage2D(int target, int level, int internalformat,
246454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            int width, int height, int border, int format, int type,
246554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            Buffer pixels) {
246654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        begin("glTexImage2D");
246754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("target", target);
246854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("level", level);
246954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("internalformat", internalformat);
247054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("width", width);
247154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("height", height);
247254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("border", border);
247354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("format", format);
247454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("type", type);
247554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("pixels", pixels.toString());
247654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        end();
247754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
247854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        mgl.glTexImage2D(target, level, internalformat, width, height, border,
247954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project                format, type, pixels);
248054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        checkError();
248154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
248254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
248354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    public void glTexParameterf(int target, int pname, float param) {
248454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        begin("glTexParameterf");
248554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("target", getTextureTarget(target));
248654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("pname", getTexturePName(pname));
248754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("param", getTextureParamName(param));
248854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        end();
248954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
249054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        mgl.glTexParameterf(target, pname, param);
249154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        checkError();
249254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
249354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
249454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    public void glTexParameterx(int target, int pname, int param) {
249554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        begin("glTexParameterx");
249654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("target", getTextureTarget(target));
249754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("pname", getTexturePName(pname));
249854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("param", param);
249954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        end();
250054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
250154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        mgl.glTexParameterx(target, pname, param);
250254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        checkError();
250354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
250454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
250554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    public void glTexParameteriv(int target, int pname, int[] params, int offset) {
250654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        begin("glTexParameteriv");
250754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("target", getTextureTarget(target));
250854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("pname", getTexturePName(pname));
250954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("params", 4, params, offset);
251054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        end();
251154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
251254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        mgl11.glTexParameteriv(target, pname, params, offset);
251354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        checkError();
251454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
251554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
251654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    public void glTexParameteriv(int target, int pname, IntBuffer params) {
251754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        begin("glTexParameteriv");
251854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("target", getTextureTarget(target));
251954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("pname", getTexturePName(pname));
252054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("params", 4, params);
252154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        end();
252254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
252354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        mgl11.glTexParameteriv(target, pname, params);
252454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        checkError();
252554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
252654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
252754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    public void glTexSubImage2D(int target, int level, int xoffset,
252854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            int yoffset, int width, int height, int format, int type,
252954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            Buffer pixels) {
253054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        begin("glTexSubImage2D");
253154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("target", getTextureTarget(target));
253254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("level", level);
253354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("xoffset", xoffset);
253454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("yoffset", yoffset);
253554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("width", width);
253654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("height", height);
253754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("format", format);
253854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("type", type);
253954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("pixels", pixels.toString());
254054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        end();
254154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        mgl.glTexSubImage2D(target, level, xoffset, yoffset, width, height,
254254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project                format, type, pixels);
254354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        checkError();
254454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
254554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
254654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    public void glTranslatef(float x, float y, float z) {
254754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        begin("glTranslatef");
254854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("x", x);
254954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("y", y);
255054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("z", z);
255154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        end();
255254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        mgl.glTranslatef(x, y, z);
255354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        checkError();
255454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
255554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
255654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    public void glTranslatex(int x, int y, int z) {
255754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        begin("glTranslatex");
255854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("x", x);
255954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("y", y);
256054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("z", z);
256154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        end();
256254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        mgl.glTranslatex(x, y, z);
256354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        checkError();
256454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
256554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
256654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    public void glVertexPointer(int size, int type, int stride, Buffer pointer) {
256754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        begin("glVertexPointer");
256854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        argPointer(size, type, stride, pointer);
256954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        end();
257054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        mVertexPointer = new PointerInfo(size, type, stride, pointer);
257154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        mgl.glVertexPointer(size, type, stride, pointer);
257254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        checkError();
257354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
257454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
257554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    public void glViewport(int x, int y, int width, int height) {
257654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        begin("glViewport");
257754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("x", x);
257854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("y", y);
257954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("width", width);
258054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("height", height);
258154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        end();
258254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        mgl.glViewport(x, y, width, height);
258354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        checkError();
258454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
258554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
258654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    public void glClipPlanef(int plane, float[] equation, int offset) {
258754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        begin("glClipPlanef");
258854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("plane", plane);
258954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("equation", 4, equation, offset);
259054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("offset", offset);
259154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        end();
259254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        mgl11.glClipPlanef(plane, equation, offset);
259354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        checkError();
259454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
259554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
259654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    public void glClipPlanef(int plane, FloatBuffer equation) {
259754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        begin("glClipPlanef");
259854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("plane", plane);
259954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("equation", 4, equation);
260054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        end();
260154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        mgl11.glClipPlanef(plane, equation);
260254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        checkError();
260354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
260454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
260554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    public void glClipPlanex(int plane, int[] equation, int offset) {
260654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        begin("glClipPlanex");
260754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("plane", plane);
260854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("equation", 4, equation, offset);
260954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("offset", offset);
261054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        end();
261154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        mgl11.glClipPlanex(plane, equation, offset);
261254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        checkError();
261354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
261454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
261554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    public void glClipPlanex(int plane, IntBuffer equation) {
261654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        begin("glClipPlanef");
261754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("plane", plane);
261854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("equation", 4, equation);
261954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        end();
262054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        mgl11.glClipPlanex(plane, equation);
262154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        checkError();
262254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
262354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
262454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    // Draw Texture Extension
262554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
262654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    public void glDrawTexfOES(float x, float y, float z,
262754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        float width, float height) {
262854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        begin("glDrawTexfOES");
262954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("x", x);
263054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("y", y);
263154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("z", z);
263254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("width", width);
263354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("height", height);
263454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        end();
263554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        mgl11Ext.glDrawTexfOES(x, y, z, width, height);
263654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        checkError();
263754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
263854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
263954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    public void glDrawTexfvOES(float[] coords, int offset) {
264054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        begin("glDrawTexfvOES");
264154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("coords", 5, coords, offset);
264254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("offset", offset);
264354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        end();
264454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        mgl11Ext.glDrawTexfvOES(coords, offset);
264554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        checkError();
264654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
264754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
264854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    public void glDrawTexfvOES(FloatBuffer coords) {
264954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        begin("glDrawTexfvOES");
265054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("coords", 5, coords);
265154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        end();
265254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        mgl11Ext.glDrawTexfvOES(coords);
265354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        checkError();
265454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
265554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
265654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    public void glDrawTexiOES(int x, int y, int z, int width, int height) {
265754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        begin("glDrawTexiOES");
265854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("x", x);
265954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("y", y);
266054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("z", z);
266154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("width", width);
266254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("height", height);
266354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        end();
266454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        mgl11Ext.glDrawTexiOES(x, y, z, width, height);
266554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        checkError();
266654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
266754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
266854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    public void glDrawTexivOES(int[] coords, int offset) {
266954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        begin("glDrawTexivOES");
267054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("coords", 5, coords, offset);
267154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("offset", offset);
267254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        end();
267354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        mgl11Ext.glDrawTexivOES(coords, offset);
267454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        checkError();
267554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
267654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
267754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    public void glDrawTexivOES(IntBuffer coords) {
267854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        begin("glDrawTexivOES");
267954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("coords", 5, coords);
268054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        end();
268154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        mgl11Ext.glDrawTexivOES(coords);
268254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        checkError();
268354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
268454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
268554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    public void glDrawTexsOES(short x, short y, short z,
268654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        short width, short height) {
268754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        begin("glDrawTexsOES");
268854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("x", x);
268954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("y", y);
269054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("z", z);
269154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("width", width);
269254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("height", height);
269354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        end();
269454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        mgl11Ext.glDrawTexsOES(x, y, z, width, height);
269554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        checkError();
269654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
269754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
269854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    public void glDrawTexsvOES(short[] coords, int offset) {
269954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        begin("glDrawTexsvOES");
270054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("coords", 5, coords, offset);
270154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("offset", offset);
270254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        end();
270354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        mgl11Ext.glDrawTexsvOES(coords, offset);
270454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        checkError();
270554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
270654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
270754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    public void glDrawTexsvOES(ShortBuffer coords) {
270854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        begin("glDrawTexsvOES");
270954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("coords", 5, coords);
271054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        end();
271154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        mgl11Ext.glDrawTexsvOES(coords);
271254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        checkError();
271354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
271454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
271554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    public void glDrawTexxOES(int x, int y, int z, int width, int height) {
271654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        begin("glDrawTexxOES");
271754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("x", x);
271854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("y", y);
271954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("z", z);
272054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("width", width);
272154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("height", height);
272254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        end();
272354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        mgl11Ext.glDrawTexxOES(x, y, z, width, height);
272454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        checkError();
272554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
272654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
272754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    public void glDrawTexxvOES(int[] coords, int offset) {
272854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        begin("glDrawTexxvOES");
272954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("coords", 5, coords, offset);
273054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("offset", offset);
273154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        end();
273254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        mgl11Ext.glDrawTexxvOES(coords, offset);
273354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        checkError();
273454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
273554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
273654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    public void glDrawTexxvOES(IntBuffer coords) {
273754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        begin("glDrawTexxvOES");
273854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("coords", 5, coords);
273954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        end();
274054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        mgl11Ext.glDrawTexxvOES(coords);
274154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        checkError();
274254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
274354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
274454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    public int glQueryMatrixxOES(int[] mantissa, int mantissaOffset,
274554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        int[] exponent, int exponentOffset) {
274654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        begin("glQueryMatrixxOES");
274754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("mantissa", Arrays.toString(mantissa));
274854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("exponent", Arrays.toString(exponent));
274954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        end();
275054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        int valid = mgl10Ext.glQueryMatrixxOES(mantissa, mantissaOffset,
275154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            exponent, exponentOffset);
275254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        returns(toString(16, FORMAT_FIXED, mantissa, mantissaOffset));
275354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        returns(toString(16, FORMAT_INT, exponent, exponentOffset));
275454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        checkError();
275554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        return valid;
275654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
275754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
275854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    public int glQueryMatrixxOES(IntBuffer mantissa, IntBuffer exponent) {
275954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        begin("glQueryMatrixxOES");
276054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("mantissa", mantissa.toString());
276154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        arg("exponent", exponent.toString());
276254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        end();
276354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        int valid = mgl10Ext.glQueryMatrixxOES(mantissa, exponent);
276454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        returns(toString(16, FORMAT_FIXED, mantissa));
276554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        returns(toString(16, FORMAT_INT, exponent));
276654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        checkError();
276754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        return valid;
276854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
276954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
277054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    public void glBindBuffer(int target, int buffer) {
2771d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        begin("glBindBuffer");
2772d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        arg("target", target);
2773d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        arg("buffer", buffer);
2774d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        end();
2775d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        mgl11.glBindBuffer(target, buffer);
2776d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        checkError();
277754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
277854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
277954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    public void glBufferData(int target, int size, Buffer data, int usage) {
2780d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        begin("glBufferData");
2781d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        arg("target", target);
2782d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        arg("size", size);
2783d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        arg("data", data.toString());
2784d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        arg("usage", usage);
2785d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        end();
2786d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        mgl11.glBufferData(target, size, data, usage);
2787d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        checkError();
278854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
278954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
279054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    public void glBufferSubData(int target, int offset, int size, Buffer data) {
2791d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        begin("glBufferSubData");
2792d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        arg("target", target);
2793d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        arg("offset", offset);
2794d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        arg("size", size);
2795d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        arg("data", data.toString());
2796d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        end();
2797d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        mgl11.glBufferSubData(target, offset, size, data);
2798d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        checkError();
279954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
280054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
280154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    public void glColor4ub(byte red, byte green, byte blue, byte alpha) {
2802d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        begin("glColor4ub");
2803d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        arg("red", red);
2804d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        arg("green", green);
2805d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        arg("blue", blue);
2806d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        arg("alpha", alpha);
2807d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        end();
2808d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        mgl11.glColor4ub(red, green, blue, alpha);
2809d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        checkError();
281054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
281154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
281254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    public void glDeleteBuffers(int n, int[] buffers, int offset) {
2813d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        begin("glDeleteBuffers");
2814d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        arg("n", n);
2815d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        arg("buffers", buffers.toString());
2816d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        arg("offset", offset);
2817d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        end();
2818d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        mgl11.glDeleteBuffers(n, buffers, offset);
2819d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        checkError();
282054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
282154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
282254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    public void glDeleteBuffers(int n, IntBuffer buffers) {
2823d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        begin("glDeleteBuffers");
2824d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        arg("n", n);
2825d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        arg("buffers", buffers.toString());
2826d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        end();
2827d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        mgl11.glDeleteBuffers(n, buffers);
2828d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        checkError();
282954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
283054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
283154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    public void glGenBuffers(int n, int[] buffers, int offset) {
2832d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        begin("glGenBuffers");
2833d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        arg("n", n);
2834d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        arg("buffers", buffers.toString());
2835d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        arg("offset", offset);
2836d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        end();
2837d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        mgl11.glGenBuffers(n, buffers, offset);
2838d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        checkError();
283954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
284054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
284154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    public void glGenBuffers(int n, IntBuffer buffers) {
2842d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        begin("glGenBuffers");
2843d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        arg("n", n);
2844d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        arg("buffers", buffers.toString());
2845d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        end();
2846d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        mgl11.glGenBuffers(n, buffers);
2847d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        checkError();
284854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
284954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
285054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    public void glGetBooleanv(int pname, boolean[] params, int offset) {
2851d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        begin("glGetBooleanv");
2852d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        arg("pname", pname);
2853d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        arg("params", params.toString());
2854d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        arg("offset", offset);
2855d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        end();
2856d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        mgl11.glGetBooleanv(pname, params, offset);
2857d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        checkError();
285854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
285954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
286054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    public void glGetBooleanv(int pname, IntBuffer params) {
2861d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        begin("glGetBooleanv");
2862d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        arg("pname", pname);
2863d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        arg("params", params.toString());
2864d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        end();
2865d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        mgl11.glGetBooleanv(pname, params);
2866d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        checkError();
286754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
286854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
2869d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich    public void glGetBufferParameteriv(int target, int pname, int[] params,
2870d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich            int offset) {
2871d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        begin("glGetBufferParameteriv");
2872d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        arg("target", target);
2873d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        arg("pname", pname);
2874d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        arg("params", params.toString());
2875d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        arg("offset", offset);
2876d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        end();
2877d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        mgl11.glGetBufferParameteriv(target, pname, params, offset);
2878d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        checkError();
287954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
288054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
288154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    public void glGetBufferParameteriv(int target, int pname, IntBuffer params) {
2882d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        begin("glGetBufferParameteriv");
2883d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        arg("target", target);
2884d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        arg("pname", pname);
2885d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        arg("params", params.toString());
2886d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        end();
2887d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        mgl11.glGetBufferParameteriv(target, pname, params);
2888d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        checkError();
288954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
289054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
289154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    public void glGetClipPlanef(int pname, float[] eqn, int offset) {
2892d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        begin("glGetClipPlanef");
2893d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        arg("pname", pname);
2894d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        arg("eqn", eqn.toString());
2895d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        arg("offset", offset);
2896d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        end();
2897d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        mgl11.glGetClipPlanef(pname, eqn, offset);
2898d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        checkError();
289954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
290054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
290154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    public void glGetClipPlanef(int pname, FloatBuffer eqn) {
2902d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        begin("glGetClipPlanef");
2903d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        arg("pname", pname);
2904d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        arg("eqn", eqn.toString());
2905d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        end();
2906d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        mgl11.glGetClipPlanef(pname, eqn);
2907d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        checkError();
290854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
290954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
291054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    public void glGetClipPlanex(int pname, int[] eqn, int offset) {
2911d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        begin("glGetClipPlanex");
2912d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        arg("pname", pname);
2913d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        arg("eqn", eqn.toString());
2914d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        arg("offset", offset);
2915d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        end();
2916d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        mgl11.glGetClipPlanex(pname, eqn, offset);
291754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
291854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
291954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    public void glGetClipPlanex(int pname, IntBuffer eqn) {
2920d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        begin("glGetClipPlanex");
2921d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        arg("pname", pname);
2922d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        arg("eqn", eqn.toString());
2923d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        end();
2924d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        mgl11.glGetClipPlanex(pname, eqn);
2925d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        checkError();
292654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
292754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
292854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    public void glGetFixedv(int pname, int[] params, int offset) {
2929d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        begin("glGetFixedv");
2930d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        arg("pname", pname);
2931d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        arg("params", params.toString());
2932d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        arg("offset", offset);
2933d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        end();
2934d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        mgl11.glGetFixedv(pname, params, offset);
293554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
293654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
293754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    public void glGetFixedv(int pname, IntBuffer params) {
2938d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        begin("glGetFixedv");
2939d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        arg("pname", pname);
2940d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        arg("params", params.toString());
2941d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        end();
2942d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        mgl11.glGetFixedv(pname, params);
2943d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        checkError();
294454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
294554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
294654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    public void glGetFloatv(int pname, float[] params, int offset) {
2947d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        begin("glGetFloatv");
2948d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        arg("pname", pname);
2949d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        arg("params", params.toString());
2950d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        arg("offset", offset);
2951d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        end();
2952d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        mgl11.glGetFloatv(pname, params, offset);
295354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
295454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
295554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    public void glGetFloatv(int pname, FloatBuffer params) {
2956d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        begin("glGetFloatv");
2957d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        arg("pname", pname);
2958d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        arg("params", params.toString());
2959d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        end();
2960d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        mgl11.glGetFloatv(pname, params);
2961d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        checkError();
296254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
296354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
296454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    public void glGetLightfv(int light, int pname, float[] params, int offset) {
2965d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        begin("glGetLightfv");
2966d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        arg("light", light);
2967d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        arg("pname", pname);
2968d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        arg("params", params.toString());
2969d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        arg("offset", offset);
2970d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        end();
2971d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        mgl11.glGetLightfv(light, pname, params, offset);
2972d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        checkError();
297354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
297454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
297554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    public void glGetLightfv(int light, int pname, FloatBuffer params) {
2976d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        begin("glGetLightfv");
2977d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        arg("light", light);
2978d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        arg("pname", pname);
2979d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        arg("params", params.toString());
2980d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        end();
2981d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        mgl11.glGetLightfv(light, pname, params);
2982d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        checkError();
298354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
298454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
298554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    public void glGetLightxv(int light, int pname, int[] params, int offset) {
2986d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        begin("glGetLightxv");
2987d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        arg("light", light);
2988d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        arg("pname", pname);
2989d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        arg("params", params.toString());
2990d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        arg("offset", offset);
2991d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        end();
2992d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        mgl11.glGetLightxv(light, pname, params, offset);
2993d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        checkError();
299454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
299554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
299654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    public void glGetLightxv(int light, int pname, IntBuffer params) {
2997d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        begin("glGetLightxv");
2998d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        arg("light", light);
2999d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        arg("pname", pname);
3000d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        arg("params", params.toString());
3001d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        end();
3002d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        mgl11.glGetLightxv(light, pname, params);
3003d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        checkError();
300454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
300554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
3006d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich    public void glGetMaterialfv(int face, int pname, float[] params,
3007d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich            int offset) {
3008d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        begin("glGetMaterialfv");
3009d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        arg("face", face);
3010d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        arg("pname", pname);
3011d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        arg("params", params.toString());
3012d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        arg("offset", offset);
3013d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        end();
3014d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        mgl11.glGetMaterialfv(face, pname, params, offset);
3015d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        checkError();
301654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
301754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
301854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    public void glGetMaterialfv(int face, int pname, FloatBuffer params) {
3019d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        begin("glGetMaterialfv");
3020d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        arg("face", face);
3021d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        arg("pname", pname);
3022d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        arg("params", params.toString());
3023d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        end();
3024d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        mgl11.glGetMaterialfv(face, pname, params);
3025d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        checkError();
302654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
302754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
302854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    public void glGetMaterialxv(int face, int pname, int[] params, int offset) {
3029d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        begin("glGetMaterialxv");
3030d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        arg("face", face);
3031d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        arg("pname", pname);
3032d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        arg("params", params.toString());
3033d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        arg("offset", offset);
3034d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        end();
3035d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        mgl11.glGetMaterialxv(face, pname, params, offset);
3036d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        checkError();
303754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
303854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
303954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    public void glGetMaterialxv(int face, int pname, IntBuffer params) {
3040d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        begin("glGetMaterialxv");
3041d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        arg("face", face);
3042d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        arg("pname", pname);
3043d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        arg("params", params.toString());
3044d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        end();
3045d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        mgl11.glGetMaterialxv(face, pname, params);
3046d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        checkError();
304754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
304854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
304954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    public void glGetTexEnviv(int env, int pname, int[] params, int offset) {
3050d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        begin("glGetTexEnviv");
3051d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        arg("env", env);
3052d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        arg("pname", pname);
3053d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        arg("params", params.toString());
3054d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        arg("offset", offset);
3055d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        end();
3056d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        mgl11.glGetTexEnviv(env, pname, params, offset);
3057d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        checkError();
305854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
305954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
306054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    public void glGetTexEnviv(int env, int pname, IntBuffer params) {
3061d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        begin("glGetTexEnviv");
3062d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        arg("env", env);
3063d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        arg("pname", pname);
3064d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        arg("params", params.toString());
3065d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        end();
3066d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        mgl11.glGetTexEnviv(env, pname, params);
3067d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        checkError();
306854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
306954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
307054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    public void glGetTexEnvxv(int env, int pname, int[] params, int offset) {
3071d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        begin("glGetTexEnviv");
3072d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        arg("env", env);
3073d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        arg("pname", pname);
3074d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        arg("params", params.toString());
3075d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        arg("offset", offset);
3076d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        end();
3077d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        mgl11.glGetTexEnviv(env, pname, params, offset);
3078d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        checkError();
307954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
308054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
308154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    public void glGetTexEnvxv(int env, int pname, IntBuffer params) {
3082d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        begin("glGetTexEnviv");
3083d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        arg("env", env);
3084d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        arg("pname", pname);
3085d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        arg("params", params.toString());
3086d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        end();
3087d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        mgl11.glGetTexEnvxv(env, pname, params);
3088d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        checkError();
308954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
309054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
309154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    public void glGetTexParameterfv(int target, int pname, float[] params, int offset) {
3092d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        begin("glGetTexParameterfv");
3093d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        arg("target", target);
3094d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        arg("pname", pname);
3095d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        arg("params", params.toString());
3096d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        arg("offset", offset);
3097d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        end();
3098d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        mgl11.glGetTexParameterfv(target, pname, params, offset);
3099d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        checkError();
310054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
310154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
310254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    public void glGetTexParameterfv(int target, int pname, FloatBuffer params) {
3103d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        begin("glGetTexParameterfv");
3104d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        arg("target", target);
3105d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        arg("pname", pname);
3106d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        arg("params", params.toString());
3107d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        end();
3108d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        mgl11.glGetTexParameterfv(target, pname, params);
3109d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        checkError();
311054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
311154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
311254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    public void glGetTexParameteriv(int target, int pname, int[] params, int offset) {
3113d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        begin("glGetTexParameteriv");
3114d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        arg("target", target);
3115d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        arg("pname", pname);
3116d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        arg("params", params.toString());
3117d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        arg("offset", offset);
3118d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        end();
3119d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        mgl11.glGetTexEnviv(target, pname, params, offset);
3120d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        checkError();
312154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
312254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
312354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    public void glGetTexParameteriv(int target, int pname, IntBuffer params) {
3124d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        begin("glGetTexParameteriv");
3125d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        arg("target", target);
3126d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        arg("pname", pname);
3127d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        arg("params", params.toString());
3128d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        end();
3129d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        mgl11.glGetTexParameteriv(target, pname, params);
3130d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        checkError();
313154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
313254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
3133d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich    public void glGetTexParameterxv(int target, int pname, int[] params,
3134d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich            int offset) {
3135d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        begin("glGetTexParameterxv");
3136d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        arg("target", target);
3137d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        arg("pname", pname);
3138d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        arg("params", params.toString());
3139d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        arg("offset", offset);
3140d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        end();
3141d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        mgl11.glGetTexParameterxv(target, pname, params, offset);
3142d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        checkError();
314354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
314454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
314554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    public void glGetTexParameterxv(int target, int pname, IntBuffer params) {
3146d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        begin("glGetTexParameterxv");
3147d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        arg("target", target);
3148d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        arg("pname", pname);
3149d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        arg("params", params.toString());
3150d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        end();
3151d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        mgl11.glGetTexParameterxv(target, pname, params);
3152d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        checkError();
315354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
315454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
315554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    public boolean glIsBuffer(int buffer) {
3156d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        begin("glIsBuffer");
3157d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        arg("buffer", buffer);
3158d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        end();
3159d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        boolean result = mgl11.glIsBuffer(buffer);
3160d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        checkError();
3161d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        return result;
316254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
316354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
316454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    public boolean glIsEnabled(int cap) {
3165d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        begin("glIsEnabled");
3166d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        arg("cap", cap);
3167d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        end();
3168d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        boolean result = mgl11.glIsEnabled(cap);
3169d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        checkError();
3170d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        return result;
317154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
317254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
317354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    public boolean glIsTexture(int texture) {
3174d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        begin("glIsTexture");
3175d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        arg("texture", texture);
3176d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        end();
3177d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        boolean result = mgl11.glIsTexture(texture);
3178d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        checkError();
3179d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        return result;
318054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
318154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
318254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    public void glPointParameterf(int pname, float param) {
3183d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        begin("glPointParameterf");
3184d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        arg("pname", pname);
3185d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        arg("param", param);
3186d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        end();
3187d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        mgl11.glPointParameterf( pname, param);
3188d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        checkError();
318954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
319054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
319154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    public void glPointParameterfv(int pname, float[] params, int offset) {
3192d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        begin("glPointParameterfv");
3193d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        arg("pname", pname);
3194d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        arg("params", params.toString());
3195d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        arg("offset", offset);
3196d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        end();
3197d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        mgl11.glPointParameterfv(pname, params, offset);
3198d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        checkError();
319954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
320054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
320154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    public void glPointParameterfv(int pname, FloatBuffer params) {
3202d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        begin("glPointParameterfv");
3203d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        arg("pname", pname);
3204d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        arg("params", params.toString());
3205d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        end();
3206d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        mgl11.glPointParameterfv(pname, params);
3207d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        checkError();
320854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
320954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
321054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    public void glPointParameterx(int pname, int param) {
3211d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        begin("glPointParameterfv");
3212d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        arg("pname", pname);
3213d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        arg("param", param);
3214d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        end();
3215d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        mgl11.glPointParameterx( pname, param);
3216d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        checkError();
321754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
321854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
321954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    public void glPointParameterxv(int pname, int[] params, int offset) {
3220d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        begin("glPointParameterxv");
3221d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        arg("pname", pname);
3222d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        arg("params", params.toString());
3223d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        arg("offset", offset);
3224d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        end();
3225d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        mgl11.glPointParameterxv(pname, params, offset);
3226d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        checkError();
322754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
322854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
322954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    public void glPointParameterxv(int pname, IntBuffer params) {
3230d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        begin("glPointParameterxv");
3231d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        arg("pname", pname);
3232d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        arg("params", params.toString());
3233d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        end();
3234d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        mgl11.glPointParameterxv( pname, params);
3235d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        checkError();
323654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
323754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
323854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    public void glPointSizePointerOES(int type, int stride, Buffer pointer) {
3239d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        begin("glPointSizePointerOES");
3240d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        arg("type", type);
3241d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        arg("stride", stride);
3242d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        arg("params", pointer.toString());
3243d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        end();
3244d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        mgl11.glPointSizePointerOES( type, stride, pointer);
3245d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        checkError();
324654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
324754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
324854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    public void glTexEnvi(int target, int pname, int param) {
3249d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        begin("glTexEnvi");
3250d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        arg("target", target);
3251d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        arg("pname", pname);
3252d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        arg("param", param);
3253d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        end();
3254d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        mgl11.glTexEnvi(target, pname, param);
3255d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        checkError();
325654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
325754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
325854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    public void glTexEnviv(int target, int pname, int[] params, int offset) {
3259d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        begin("glTexEnviv");
3260d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        arg("target", target);
3261d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        arg("pname", pname);
3262d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        arg("params", params.toString());
3263d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        arg("offset", offset);
3264d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        end();
3265d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        mgl11.glTexEnviv(target, pname, params, offset);
3266d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        checkError();
326754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
326854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
326954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    public void glTexEnviv(int target, int pname, IntBuffer params) {
3270d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        begin("glTexEnviv");
3271d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        arg("target", target);
3272d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        arg("pname", pname);
3273d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        arg("params", params.toString());
3274d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        end();
3275d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        mgl11.glTexEnviv( target, pname, params);
3276d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        checkError();
327754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
327854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
3279d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich    public void glTexParameterfv(int target, int pname, float[] params,
3280d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich            int offset) {
3281d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        begin("glTexParameterfv");
3282d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        arg("target", target);
3283d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        arg("pname", pname);
3284d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        arg("params", params.toString());
3285d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        arg("offset", offset);
3286d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        end();
3287d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        mgl11.glTexParameterfv( target, pname, params, offset);
3288d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        checkError();
328954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
329054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
329154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    public void glTexParameterfv(int target, int pname, FloatBuffer params) {
3292d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        begin("glTexParameterfv");
3293d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        arg("target", target);
3294d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        arg("pname", pname);
3295d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        arg("params", params.toString());
3296d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        end();
3297d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        mgl11.glTexParameterfv(target, pname, params);
3298d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        checkError();
329954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
330054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
330154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    public void glTexParameteri(int target, int pname, int param) {
3302d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        begin("glTexParameterxv");
3303d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        arg("target", target);
3304d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        arg("pname", pname);
3305d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        arg("param", param);
3306d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        end();
3307d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        mgl11.glTexParameteri(target, pname, param);
3308d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        checkError();
330954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
331054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
3311d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich    public void glTexParameterxv(int target, int pname, int[] params,
3312d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich            int offset) {
3313d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        begin("glTexParameterxv");
3314d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        arg("target", target);
3315d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        arg("pname", pname);
3316d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        arg("params", params.toString());
3317d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        arg("offset", offset);
3318d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        end();
3319d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        mgl11.glTexParameterxv(target, pname, params, offset);
3320d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        checkError();
332154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
332254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
332354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    public void glTexParameterxv(int target, int pname, IntBuffer params) {
3324d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        begin("glTexParameterxv");
3325d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        arg("target", target);
3326d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        arg("pname", pname);
3327d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        arg("params", params.toString());
3328d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        end();
3329d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        mgl11.glTexParameterxv(target, pname, params);
3330d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        checkError();
3331d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich    }
3332d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich
3333d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich
3334d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich    public void glColorPointer(int size, int type, int stride, int offset) {
3335d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        begin("glColorPointer");
3336d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        arg("size", size);
3337d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        arg("type", type);
3338d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        arg("stride", stride);
3339d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        arg("offset", offset);
3340d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        end();
3341d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        mgl11.glColorPointer(size, type, stride, offset);
3342d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        checkError();
3343d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich    }
3344d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich
3345d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich    public void glDrawElements(int mode, int count, int type, int offset) {
3346d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        begin("glDrawElements");
3347d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        arg("mode", mode);
3348d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        arg("count", count);
3349d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        arg("type", type);
3350d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        arg("offset", offset);
3351d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        end();
3352d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        mgl11.glDrawElements(mode, count, type, offset);
3353d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        checkError();
3354d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich    }
3355d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich
3356d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich    public void glGetPointerv(int pname, Buffer[] params) {
3357d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        begin("glGetPointerv");
3358d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        arg("pname", pname);
3359d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        arg("params", params.toString());
3360d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        end();
3361d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        mgl11.glGetPointerv(pname, params);
3362d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        checkError();
3363d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich    }
3364d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich
3365d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich    public void glNormalPointer(int type, int stride, int offset) {
3366d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        begin("glNormalPointer");
3367d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        arg("type", type);
3368d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        arg("stride", stride);
3369d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        arg("offset", offset);
3370d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        end();
3371d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        mgl11.glNormalPointer(type, stride, offset);
3372d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich    }
3373d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich
3374d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich    public void glTexCoordPointer(int size, int type, int stride, int offset) {
3375d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        begin("glTexCoordPointer");
3376d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        arg("size", size);
3377d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        arg("type", type);
3378d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        arg("stride", stride);
3379d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        arg("offset", offset);
3380d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        end();
3381d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        mgl11.glTexCoordPointer(size, type, stride, offset);
3382d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich    }
3383d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich
3384d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich    public void glVertexPointer(int size, int type, int stride, int offset) {
3385d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        begin("glVertexPointer");
3386d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        arg("size", size);
3387d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        arg("type", type);
3388d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        arg("stride", stride);
3389d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        arg("offset", offset);
3390d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        end();
3391d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        mgl11.glVertexPointer(size, type, stride, offset);
3392d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich    }
3393d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich
3394d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich    public void glCurrentPaletteMatrixOES(int matrixpaletteindex) {
3395d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        begin("glCurrentPaletteMatrixOES");
3396d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        arg("matrixpaletteindex", matrixpaletteindex);
3397d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        end();
3398d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        mgl11Ext.glCurrentPaletteMatrixOES(matrixpaletteindex);
3399d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        checkError();
3400d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich    }
3401d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich
3402d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich    public void glLoadPaletteFromModelViewMatrixOES() {
3403d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        begin("glLoadPaletteFromModelViewMatrixOES");
3404d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        end();
3405d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        mgl11Ext.glLoadPaletteFromModelViewMatrixOES();
3406d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        checkError();
3407d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich    }
3408d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich
3409d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich    public void glMatrixIndexPointerOES(int size, int type, int stride,
3410d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich            Buffer pointer) {
3411d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        begin("glMatrixIndexPointerOES");
3412d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        argPointer(size, type, stride, pointer);
3413d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        end();
3414d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        mgl11Ext.glMatrixIndexPointerOES(size, type, stride, pointer);
3415d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        checkError();
3416d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich    }
3417d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich
3418d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich    public void glMatrixIndexPointerOES(int size, int type, int stride,
3419d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich            int offset) {
3420d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        begin("glMatrixIndexPointerOES");
3421d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        arg("size", size);
3422d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        arg("type", type);
3423d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        arg("stride", stride);
3424d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        arg("offset", offset);
3425d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        end();
3426d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        mgl11Ext.glMatrixIndexPointerOES(size, type, stride, offset);
3427d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        checkError();
3428d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich    }
3429d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich
3430d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich    public void glWeightPointerOES(int size, int type, int stride,
3431d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich            Buffer pointer) {
3432d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        begin("glWeightPointerOES");
3433d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        argPointer(size, type, stride, pointer);
3434d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        end();
3435d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        mgl11Ext.glWeightPointerOES(size, type, stride, pointer);
3436d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        checkError();
3437d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich    }
3438d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich
3439d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich    public void glWeightPointerOES(int size, int type, int stride, int offset) {
3440d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        begin("glWeightPointerOES");
3441d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        arg("size", size);
3442d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        arg("type", type);
3443d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        arg("stride", stride);
3444d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        arg("offset", offset);
3445d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        end();
3446d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        mgl11Ext.glWeightPointerOES(size, type, stride, offset);
3447d70213e70ed4b2648d696a554a0ba7dac4c32757Jack Palevich        checkError();
344854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
344954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
345029406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich    @Override
345129406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich    public void glBindFramebufferOES(int target, int framebuffer) {
345229406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        begin("glBindFramebufferOES");
345329406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        arg("target", target);
345429406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        arg("framebuffer", framebuffer);
345529406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        end();
345629406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        mgl11ExtensionPack.glBindFramebufferOES(target, framebuffer);
345729406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        checkError();
345829406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich    }
345929406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich
346029406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich    @Override
346129406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich    public void glBindRenderbufferOES(int target, int renderbuffer) {
346229406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        begin("glBindRenderbufferOES");
346329406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        arg("target", target);
346429406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        arg("renderbuffer", renderbuffer);
346529406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        end();
346629406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        mgl11ExtensionPack.glBindRenderbufferOES(target, renderbuffer);
346729406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        checkError();
346829406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich    }
346929406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich
347029406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich    @Override
347129406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich    public void glBlendEquation(int mode) {
347229406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        begin("glBlendEquation");
347329406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        arg("mode", mode);
347429406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        end();
347529406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        mgl11ExtensionPack.glBlendEquation(mode);
347629406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        checkError();
347729406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich    }
347829406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich
347929406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich    @Override
348029406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich    public void glBlendEquationSeparate(int modeRGB, int modeAlpha) {
348129406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        begin("glBlendEquationSeparate");
348229406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        arg("modeRGB", modeRGB);
348329406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        arg("modeAlpha", modeAlpha);
348429406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        end();
348529406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        mgl11ExtensionPack.glBlendEquationSeparate(modeRGB, modeAlpha);
348629406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        checkError();
348729406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich    }
348829406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich
348929406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich    @Override
349029406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich    public void glBlendFuncSeparate(int srcRGB, int dstRGB, int srcAlpha,
349129406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich            int dstAlpha) {
349229406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        begin("glBlendFuncSeparate");
349329406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        arg("srcRGB", srcRGB);
349429406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        arg("dstRGB", dstRGB);
349529406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        arg("srcAlpha", srcAlpha);
349629406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        arg("dstAlpha", dstAlpha);
349729406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        end();
349829406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        mgl11ExtensionPack.glBlendFuncSeparate(srcRGB, dstRGB, srcAlpha, dstAlpha);
349929406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        checkError();
350029406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich    }
350129406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich
350229406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich    @Override
350329406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich    public int glCheckFramebufferStatusOES(int target) {
350429406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        begin("glCheckFramebufferStatusOES");
350529406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        arg("target", target);
350629406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        end();
350729406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        int result = mgl11ExtensionPack.glCheckFramebufferStatusOES(target);
350829406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        checkError();
350929406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        return result;
351029406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich    }
351129406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich
351229406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich    @Override
351329406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich    public void glDeleteFramebuffersOES(int n, int[] framebuffers, int offset) {
351429406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        begin("glDeleteFramebuffersOES");
351529406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        arg("n", n);
351629406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        arg("framebuffers", framebuffers.toString());
351729406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        arg("offset", offset);
351829406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        end();
351929406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        mgl11ExtensionPack.glDeleteFramebuffersOES(n, framebuffers, offset);
352029406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        checkError();
352129406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich    }
352229406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich
352329406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich    @Override
352429406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich    public void glDeleteFramebuffersOES(int n, IntBuffer framebuffers) {
352529406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        begin("glDeleteFramebuffersOES");
352629406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        arg("n", n);
352729406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        arg("framebuffers", framebuffers.toString());
352829406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        end();
352929406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        mgl11ExtensionPack.glDeleteFramebuffersOES(n, framebuffers);
353029406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        checkError();
353129406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich    }
353229406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich
353329406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich    @Override
353429406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich    public void glDeleteRenderbuffersOES(int n, int[] renderbuffers, int offset) {
353529406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        begin("glDeleteRenderbuffersOES");
353629406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        arg("n", n);
353729406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        arg("renderbuffers", renderbuffers.toString());
353829406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        arg("offset", offset);
353929406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        end();
354029406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        mgl11ExtensionPack.glDeleteRenderbuffersOES(n, renderbuffers, offset);
354129406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        checkError();
354229406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich    }
354329406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich
354429406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich    @Override
354529406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich    public void glDeleteRenderbuffersOES(int n, IntBuffer renderbuffers) {
354629406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        begin("glDeleteRenderbuffersOES");
354729406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        arg("n", n);
354829406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        arg("renderbuffers", renderbuffers.toString());
354929406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        end();
355029406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        mgl11ExtensionPack.glDeleteRenderbuffersOES(n, renderbuffers);
355129406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        checkError();
355229406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich    }
355329406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich
355429406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich    @Override
355529406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich    public void glFramebufferRenderbufferOES(int target, int attachment,
355629406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich            int renderbuffertarget, int renderbuffer) {
355729406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        begin("glFramebufferRenderbufferOES");
355829406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        arg("target", target);
355929406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        arg("attachment", attachment);
356029406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        arg("renderbuffertarget", renderbuffertarget);
356129406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        arg("renderbuffer", renderbuffer);
356229406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        end();
356329406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        mgl11ExtensionPack.glFramebufferRenderbufferOES(target, attachment, renderbuffertarget, renderbuffer);
356429406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        checkError();
356529406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich    }
356629406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich
356729406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich    @Override
356829406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich    public void glFramebufferTexture2DOES(int target, int attachment,
356929406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich            int textarget, int texture, int level) {
357029406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        begin("glFramebufferTexture2DOES");
357129406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        arg("target", target);
357229406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        arg("attachment", attachment);
357329406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        arg("textarget", textarget);
357429406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        arg("texture", texture);
357529406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        arg("level", level);
357629406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        end();
357729406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        mgl11ExtensionPack.glFramebufferTexture2DOES(target, attachment, textarget, texture, level);
357829406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        checkError();
357929406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich    }
358029406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich
358129406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich    @Override
358229406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich    public void glGenerateMipmapOES(int target) {
358329406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        begin("glGenerateMipmapOES");
358429406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        arg("target", target);
358529406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        end();
358629406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        mgl11ExtensionPack.glGenerateMipmapOES(target);
358729406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        checkError();
358829406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich    }
358929406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich
359029406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich    @Override
359129406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich    public void glGenFramebuffersOES(int n, int[] framebuffers, int offset) {
359229406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        begin("glGenFramebuffersOES");
359329406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        arg("n", n);
359429406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        arg("framebuffers", framebuffers.toString());
359529406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        arg("offset", offset);
359629406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        end();
359729406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        mgl11ExtensionPack.glGenFramebuffersOES(n, framebuffers, offset);
359829406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        checkError();
359929406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich    }
360029406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich
360129406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich    @Override
360229406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich    public void glGenFramebuffersOES(int n, IntBuffer framebuffers) {
360329406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        begin("glGenFramebuffersOES");
360429406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        arg("n", n);
360529406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        arg("framebuffers", framebuffers.toString());
360629406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        end();
360729406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        mgl11ExtensionPack.glGenFramebuffersOES(n, framebuffers);
360829406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        checkError();
360929406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich    }
361029406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich
361129406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich    @Override
361229406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich    public void glGenRenderbuffersOES(int n, int[] renderbuffers, int offset) {
361329406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        begin("glGenRenderbuffersOES");
361429406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        arg("n", n);
361529406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        arg("renderbuffers", renderbuffers.toString());
361629406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        arg("offset", offset);
361729406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        end();
361829406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        mgl11ExtensionPack.glGenRenderbuffersOES(n, renderbuffers, offset);
361929406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        checkError();
362029406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich    }
362129406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich
362229406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich    @Override
362329406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich    public void glGenRenderbuffersOES(int n, IntBuffer renderbuffers) {
362429406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        begin("glGenRenderbuffersOES");
362529406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        arg("n", n);
362629406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        arg("renderbuffers", renderbuffers.toString());
362729406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        end();
362829406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        mgl11ExtensionPack.glGenRenderbuffersOES(n, renderbuffers);
362929406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        checkError();
363029406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich    }
363129406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich
363229406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich    @Override
363329406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich    public void glGetFramebufferAttachmentParameterivOES(int target,
363429406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich            int attachment, int pname, int[] params, int offset) {
363529406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        begin("glGetFramebufferAttachmentParameterivOES");
363629406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        arg("target", target);
363729406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        arg("attachment", attachment);
363829406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        arg("pname", pname);
363929406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        arg("params", params.toString());
364029406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        arg("offset", offset);
364129406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        end();
364229406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        mgl11ExtensionPack.glGetFramebufferAttachmentParameterivOES(target, attachment, pname, params, offset);
364329406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        checkError();
364429406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich    }
364529406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich
364629406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich    @Override
364729406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich    public void glGetFramebufferAttachmentParameterivOES(int target,
364829406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich            int attachment, int pname, IntBuffer params) {
364929406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        begin("glGetFramebufferAttachmentParameterivOES");
365029406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        arg("target", target);
365129406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        arg("attachment", attachment);
365229406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        arg("pname", pname);
365329406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        arg("params", params.toString());
365429406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        end();
365529406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        mgl11ExtensionPack.glGetFramebufferAttachmentParameterivOES(target, attachment, pname, params);
365629406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        checkError();
365729406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich    }
365829406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich
365929406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich    @Override
366029406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich    public void glGetRenderbufferParameterivOES(int target, int pname,
366129406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich            int[] params, int offset) {
366229406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        begin("glGetRenderbufferParameterivOES");
366329406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        arg("target", target);
366429406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        arg("pname", pname);
366529406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        arg("params", params.toString());
366629406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        arg("offset", offset);
366729406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        end();
366829406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        mgl11ExtensionPack.glGetRenderbufferParameterivOES(target, pname, params, offset);
366929406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        checkError();
367029406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich    }
367129406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich
367229406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich    @Override
367329406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich    public void glGetRenderbufferParameterivOES(int target, int pname,
367429406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich            IntBuffer params) {
367529406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        begin("glGetRenderbufferParameterivOES");
367629406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        arg("target", target);
367729406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        arg("pname", pname);
367829406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        arg("params", params.toString());
367929406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        end();
368029406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        mgl11ExtensionPack.glGetRenderbufferParameterivOES(target, pname, params);
368129406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        checkError();
368229406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich    }
368329406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich
368429406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich    @Override
368529406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich    public void glGetTexGenfv(int coord, int pname, float[] params, int offset) {
368629406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        begin("glGetTexGenfv");
368729406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        arg("coord", coord);
368829406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        arg("pname", pname);
368929406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        arg("params", params.toString());
369029406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        arg("offset", offset);
369129406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        end();
369229406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        mgl11ExtensionPack.glGetTexGenfv(coord, pname, params, offset);
369329406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        checkError();
369429406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich    }
369529406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich
369629406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich    @Override
369729406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich    public void glGetTexGenfv(int coord, int pname, FloatBuffer params) {
369829406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        begin("glGetTexGenfv");
369929406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        arg("coord", coord);
370029406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        arg("pname", pname);
370129406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        arg("params", params.toString());
370229406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        end();
370329406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        mgl11ExtensionPack.glGetTexGenfv(coord, pname, params);
370429406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        checkError();
370529406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich    }
370629406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich
370729406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich    @Override
370829406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich    public void glGetTexGeniv(int coord, int pname, int[] params, int offset) {
370929406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        begin("glGetTexGeniv");
371029406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        arg("coord", coord);
371129406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        arg("pname", pname);
371229406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        arg("params", params.toString());
371329406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        arg("offset", offset);
371429406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        end();
371529406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        mgl11ExtensionPack.glGetTexGeniv(coord, pname, params, offset);
371629406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        checkError();
371729406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich    }
371829406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich
371929406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich    @Override
372029406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich    public void glGetTexGeniv(int coord, int pname, IntBuffer params) {
372129406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        begin("glGetTexGeniv");
372229406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        arg("coord", coord);
372329406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        arg("pname", pname);
372429406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        arg("params", params.toString());
372529406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        end();
372629406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        mgl11ExtensionPack.glGetTexGeniv(coord, pname, params);
372729406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        checkError();
372829406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich    }
372929406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich
373029406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich    @Override
373129406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich    public void glGetTexGenxv(int coord, int pname, int[] params, int offset) {
373229406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        begin("glGetTexGenxv");
373329406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        arg("coord", coord);
373429406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        arg("pname", pname);
373529406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        arg("params", params.toString());
373629406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        arg("offset", offset);
373729406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        end();
373829406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        mgl11ExtensionPack.glGetTexGenxv(coord, pname, params, offset);
373929406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        checkError();
374029406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich    }
374129406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich
374229406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich    @Override
374329406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich    public void glGetTexGenxv(int coord, int pname, IntBuffer params) {
374429406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        begin("glGetTexGenxv");
374529406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        arg("coord", coord);
374629406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        arg("pname", pname);
374729406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        arg("params", params.toString());
374829406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        end();
374929406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        mgl11ExtensionPack.glGetTexGenxv(coord, pname, params);
375029406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        checkError();
375129406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich    }
375229406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich
375329406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich    @Override
375429406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich    public boolean glIsFramebufferOES(int framebuffer) {
375529406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        begin("glIsFramebufferOES");
375629406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        arg("framebuffer", framebuffer);
375729406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        end();
375829406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        boolean result = mgl11ExtensionPack.glIsFramebufferOES(framebuffer);
375929406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        checkError();
376029406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        return result;
376129406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich    }
376229406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich
376329406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich    @Override
376429406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich    public boolean glIsRenderbufferOES(int renderbuffer) {
376529406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        begin("glIsRenderbufferOES");
376629406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        arg("renderbuffer", renderbuffer);
376729406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        end();
376829406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        mgl11ExtensionPack.glIsRenderbufferOES(renderbuffer);
376929406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        checkError();
377029406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        return false;
377129406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich    }
377229406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich
377329406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich    @Override
377429406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich    public void glRenderbufferStorageOES(int target, int internalformat,
377529406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich            int width, int height) {
377629406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        begin("glRenderbufferStorageOES");
377729406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        arg("target", target);
377829406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        arg("internalformat", internalformat);
377929406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        arg("width", width);
378029406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        arg("height", height);
378129406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        end();
378229406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        mgl11ExtensionPack.glRenderbufferStorageOES(target, internalformat, width, height);
378329406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        checkError();
378429406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich    }
378529406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich
378629406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich    @Override
378729406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich    public void glTexGenf(int coord, int pname, float param) {
378829406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        begin("glTexGenf");
378929406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        arg("coord", coord);
379029406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        arg("pname", pname);
379129406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        arg("param", param);
379229406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        end();
379329406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        mgl11ExtensionPack.glTexGenf(coord, pname, param);
379429406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        checkError();
379529406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich    }
379629406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich
379729406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich    @Override
379829406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich    public void glTexGenfv(int coord, int pname, float[] params, int offset) {
379929406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        begin("glTexGenfv");
380029406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        arg("coord", coord);
380129406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        arg("pname", pname);
380229406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        arg("params", params.toString());
380329406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        arg("offset", offset);
380429406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        end();
380529406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        mgl11ExtensionPack.glTexGenfv(coord, pname, params, offset);
380629406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        checkError();
380729406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich    }
380829406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich
380929406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich    @Override
381029406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich    public void glTexGenfv(int coord, int pname, FloatBuffer params) {
381129406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        begin("glTexGenfv");
381229406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        arg("coord", coord);
381329406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        arg("pname", pname);
381429406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        arg("params", params.toString());
381529406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        end();
381629406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        mgl11ExtensionPack.glTexGenfv(coord, pname, params);
381729406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        checkError();
381829406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich    }
381929406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich
382029406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich    @Override
382129406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich    public void glTexGeni(int coord, int pname, int param) {
382229406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        begin("glTexGeni");
382329406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        arg("coord", coord);
382429406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        arg("pname", pname);
382529406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        arg("param", param);
382629406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        end();
382729406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        mgl11ExtensionPack.glTexGeni(coord, pname, param);
382829406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        checkError();
382929406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich    }
383029406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich
383129406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich    @Override
383229406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich    public void glTexGeniv(int coord, int pname, int[] params, int offset) {
383329406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        begin("glTexGeniv");
383429406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        arg("coord", coord);
383529406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        arg("pname", pname);
383629406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        arg("params", params.toString());
383729406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        arg("offset", offset);
383829406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        end();
383929406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        mgl11ExtensionPack.glTexGeniv(coord, pname, params, offset);
384029406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        checkError();
384129406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich    }
384229406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich
384329406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich    @Override
384429406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich    public void glTexGeniv(int coord, int pname, IntBuffer params) {
384529406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        begin("glTexGeniv");
384629406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        arg("coord", coord);
384729406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        arg("pname", pname);
384829406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        arg("params", params.toString());
384929406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        end();
385029406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        mgl11ExtensionPack.glTexGeniv(coord, pname, params);
385129406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        checkError();
385229406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich    }
385329406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich
385429406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich    @Override
385529406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich    public void glTexGenx(int coord, int pname, int param) {
385629406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        begin("glTexGenx");
385729406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        arg("coord", coord);
385829406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        arg("pname", pname);
385929406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        arg("param", param);
386029406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        end();
386129406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        mgl11ExtensionPack.glTexGenx(coord, pname, param);
386229406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        checkError();
386329406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich    }
386429406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich
386529406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich    @Override
386629406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich    public void glTexGenxv(int coord, int pname, int[] params, int offset) {
386729406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        begin("glTexGenxv");
386829406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        arg("coord", coord);
386929406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        arg("pname", pname);
387029406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        arg("params", params.toString());
387129406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        arg("offset", offset);
387229406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        end();
387329406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        mgl11ExtensionPack.glTexGenxv(coord, pname, params, offset);
387429406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        checkError();
387529406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich    }
387629406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich
387729406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich    @Override
387829406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich    public void glTexGenxv(int coord, int pname, IntBuffer params) {
387929406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        begin("glTexGenxv");
388029406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        arg("coord", coord);
388129406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        arg("pname", pname);
388229406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        arg("params", params.toString());
388329406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        end();
388429406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        mgl11ExtensionPack.glTexGenxv(coord, pname, params);
388529406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich        checkError();
388629406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich    }
388729406daf21c2dfa4d893b421d39137eb47fb3aa6Jack Palevich
388854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    private class PointerInfo {
388954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        /**
389054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project         * The number of coordinates per vertex. 1..4
389154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project         */
389254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        public int mSize;
389354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        /**
389454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project         * The type of each coordinate.
389554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project         */
389654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        public int mType;
389754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        /**
389854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project         * The byte offset between consecutive vertices. 0 means mSize *
389954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project         * sizeof(mType)
390054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project         */
390154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        public int mStride;
390254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        public Buffer mPointer;
390354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        public ByteBuffer mTempByteBuffer; // Only valid during glDrawXXX calls
390454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
3905be6eac828f5af8b608c3fa6749330f1dcd6b6206Jack Palevich        public PointerInfo() {
3906be6eac828f5af8b608c3fa6749330f1dcd6b6206Jack Palevich        }
3907be6eac828f5af8b608c3fa6749330f1dcd6b6206Jack Palevich
390854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        public PointerInfo(int size, int type, int stride, Buffer pointer) {
390954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            mSize = size;
391054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            mType = type;
391154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            mStride = stride;
391254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            mPointer = pointer;
391354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        }
391454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
391554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        public int sizeof(int type) {
391654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            switch (type) {
391754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            case GL_UNSIGNED_BYTE:
391854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project                return 1;
391954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            case GL_BYTE:
392054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project                return 1;
392154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            case GL_SHORT:
392254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project                return 2;
392354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            case GL_FIXED:
392454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project                return 4;
392554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            case GL_FLOAT:
392654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project                return 4;
392754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            default:
392854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project                return 0;
392954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            }
393054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        }
393154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
393254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        public int getStride() {
393354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            return mStride > 0 ? mStride : sizeof(mType) * mSize;
393454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        }
393554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
393654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        public void bindByteBuffer() {
3937be6eac828f5af8b608c3fa6749330f1dcd6b6206Jack Palevich            mTempByteBuffer = mPointer == null ? null : toByteBuffer(-1, mPointer);
393854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        }
393954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
394054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        public void unbindByteBuffer() {
394154b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project            mTempByteBuffer = null;
394254b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project        }
394354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    }
394454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
394554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    private Writer mLog;
394654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    private boolean mLogArgumentNames;
394754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    private int mArgCount;
394854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
3949be6eac828f5af8b608c3fa6749330f1dcd6b6206Jack Palevich    private PointerInfo mColorPointer = new PointerInfo();
3950be6eac828f5af8b608c3fa6749330f1dcd6b6206Jack Palevich    private PointerInfo mNormalPointer = new PointerInfo();
3951be6eac828f5af8b608c3fa6749330f1dcd6b6206Jack Palevich    private PointerInfo mTexCoordPointer = new PointerInfo();
3952be6eac828f5af8b608c3fa6749330f1dcd6b6206Jack Palevich    private PointerInfo mVertexPointer = new PointerInfo();
395354b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
395454b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    boolean mColorArrayEnabled;
395554b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    boolean mNormalArrayEnabled;
395654b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    boolean mTextureCoordArrayEnabled;
395754b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    boolean mVertexArrayEnabled;
395854b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project
395954b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project    StringBuilder mStringBuilder;
396054b6cfa9a9e5b861a9930af873580d6dc20f773The Android Open Source Project}
3961