2013-02-23 03:34:06 +00:00
|
|
|
/*
|
Manually merge 129, 174, and 233 from donut
This adds a static OpenGL ES API.
Here are the three commit messages for the original changes:
Clean up trivial Eclipse warnings and fix whitespace.
Added @Override to overridden methods.
Removed unused imports.
Converted tabs to spaces.
Removed \r characters from end-of-lines.
Add .gitignore file to ignore the .class files that are
generated when the "gen" script is run.
This is the 2nd commit message:
Improve glgen
+ gen script is really a bash script rather than a sh script,
so declare that to be true. (For example, it uses pushd,
which is a part of bash, but not a part of sh. Not sure
how this worked until now. Possibly gen was only run in
environments where /bin/sh was really bash.
+ Check the results of the java compile of the code generator,
and abort the script if the compile fails.
+ Turn on the bash shell option that guards against using
uninitialized variables in the script.
+ Remove the generated class files.
Refactor JniCodeEmitter into two classes: a general-purpose
JniCodeEmitter and a specific Jsr239CodeEmitter. The hope is
to use JniCodeEmitter as a base for emitting static OpenGL ES
bindings.
This is the 3rd commit message:
Add an Android-specific static OpenGL ES 1.1 Java API.
This change adds four new public classes that expose a static OpenGL ES 1.1 API:
android.opengl.GLES10
android.opengl.GLES10Ext
android.opengl.GLES11
android.opengl.GLES11Ext
Benefits:
+ The static API is slightly faster (1% to 4%) than the existing Interface based JSR239 API.
+ The static API is similar to the C API, which should make it easier to import C-based
example code.
+ The static API provides a clear path for adding new OpenGL ES 1.1 extensions
and OpenGL ES 2.0 APIs, neither of which currently have a JSR standard.
Example:
import static android.opengl.GLES10.*;
...
glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);
Note that it is possible to mix-and-match calls to both the static and JSR239 APIs.
This works because neither API maintains state. They both call through to the same underlying
C OpenGL ES APIs.
Implementation details:
This change enhances the "glgen" "gen" script to generate both the original JSR239 and
new static OpenGL ES APIs. The contents of the generated JSR239 classes remained the same as before,
so there is no need to check in new versions of the generated JSR239 classes.
As part of this work the gen script was updated to be somewhat more robust, and to
work with git instead of perforce. The script prints out commands to git add the generated files,
but leaves it up to the script runner to actually execute those commands.
2009-04-13 23:22:25 +00:00
|
|
|
**
|
|
|
|
** Copyright 2009, The Android Open Source Project
|
|
|
|
**
|
|
|
|
** Licensed under the Apache License, Version 2.0 (the "License");
|
|
|
|
** you may not use this file except in compliance with the License.
|
|
|
|
** You may obtain a copy of the License at
|
|
|
|
**
|
|
|
|
** http://www.apache.org/licenses/LICENSE-2.0
|
|
|
|
**
|
|
|
|
** Unless required by applicable law or agreed to in writing, software
|
|
|
|
** distributed under the License is distributed on an "AS IS" BASIS,
|
|
|
|
** WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
|
|
** See the License for the specific language governing permissions and
|
|
|
|
** limitations under the License.
|
|
|
|
*/
|
|
|
|
|
|
|
|
// This source file is automatically generated
|
|
|
|
|
|
|
|
package android.opengl;
|
|
|
|
|
2009-12-08 07:43:51 +00:00
|
|
|
import java.nio.Buffer;
|
|
|
|
|
Manually merge 129, 174, and 233 from donut
This adds a static OpenGL ES API.
Here are the three commit messages for the original changes:
Clean up trivial Eclipse warnings and fix whitespace.
Added @Override to overridden methods.
Removed unused imports.
Converted tabs to spaces.
Removed \r characters from end-of-lines.
Add .gitignore file to ignore the .class files that are
generated when the "gen" script is run.
This is the 2nd commit message:
Improve glgen
+ gen script is really a bash script rather than a sh script,
so declare that to be true. (For example, it uses pushd,
which is a part of bash, but not a part of sh. Not sure
how this worked until now. Possibly gen was only run in
environments where /bin/sh was really bash.
+ Check the results of the java compile of the code generator,
and abort the script if the compile fails.
+ Turn on the bash shell option that guards against using
uninitialized variables in the script.
+ Remove the generated class files.
Refactor JniCodeEmitter into two classes: a general-purpose
JniCodeEmitter and a specific Jsr239CodeEmitter. The hope is
to use JniCodeEmitter as a base for emitting static OpenGL ES
bindings.
This is the 3rd commit message:
Add an Android-specific static OpenGL ES 1.1 Java API.
This change adds four new public classes that expose a static OpenGL ES 1.1 API:
android.opengl.GLES10
android.opengl.GLES10Ext
android.opengl.GLES11
android.opengl.GLES11Ext
Benefits:
+ The static API is slightly faster (1% to 4%) than the existing Interface based JSR239 API.
+ The static API is similar to the C API, which should make it easier to import C-based
example code.
+ The static API provides a clear path for adding new OpenGL ES 1.1 extensions
and OpenGL ES 2.0 APIs, neither of which currently have a JSR standard.
Example:
import static android.opengl.GLES10.*;
...
glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);
Note that it is possible to mix-and-match calls to both the static and JSR239 APIs.
This works because neither API maintains state. They both call through to the same underlying
C OpenGL ES APIs.
Implementation details:
This change enhances the "glgen" "gen" script to generate both the original JSR239 and
new static OpenGL ES APIs. The contents of the generated JSR239 classes remained the same as before,
so there is no need to check in new versions of the generated JSR239 classes.
As part of this work the gen script was updated to be somewhat more robust, and to
work with git instead of perforce. The script prints out commands to git add the generated files,
but leaves it up to the script runner to actually execute those commands.
2009-04-13 23:22:25 +00:00
|
|
|
public class GLES11Ext {
|
|
|
|
public static final int GL_BLEND_EQUATION_RGB_OES = 0x8009;
|
|
|
|
public static final int GL_BLEND_EQUATION_ALPHA_OES = 0x883D;
|
|
|
|
public static final int GL_BLEND_DST_RGB_OES = 0x80C8;
|
|
|
|
public static final int GL_BLEND_SRC_RGB_OES = 0x80C9;
|
|
|
|
public static final int GL_BLEND_DST_ALPHA_OES = 0x80CA;
|
|
|
|
public static final int GL_BLEND_SRC_ALPHA_OES = 0x80CB;
|
|
|
|
public static final int GL_BLEND_EQUATION_OES = 0x8009;
|
|
|
|
public static final int GL_FUNC_ADD_OES = 0x8006;
|
|
|
|
public static final int GL_FUNC_SUBTRACT_OES = 0x800A;
|
|
|
|
public static final int GL_FUNC_REVERSE_SUBTRACT_OES = 0x800B;
|
|
|
|
public static final int GL_ETC1_RGB8_OES = 0x8D64;
|
|
|
|
public static final int GL_DEPTH_COMPONENT24_OES = 0x81A6;
|
|
|
|
public static final int GL_DEPTH_COMPONENT32_OES = 0x81A7;
|
|
|
|
public static final int GL_TEXTURE_CROP_RECT_OES = 0x8B9D;
|
|
|
|
public static final int GL_FIXED_OES = 0x140C;
|
|
|
|
public static final int GL_NONE_OES = 0;
|
|
|
|
public static final int GL_FRAMEBUFFER_OES = 0x8D40;
|
|
|
|
public static final int GL_RENDERBUFFER_OES = 0x8D41;
|
|
|
|
public static final int GL_RGBA4_OES = 0x8056;
|
|
|
|
public static final int GL_RGB5_A1_OES = 0x8057;
|
|
|
|
public static final int GL_RGB565_OES = 0x8D62;
|
|
|
|
public static final int GL_DEPTH_COMPONENT16_OES = 0x81A5;
|
|
|
|
public static final int GL_RENDERBUFFER_WIDTH_OES = 0x8D42;
|
|
|
|
public static final int GL_RENDERBUFFER_HEIGHT_OES = 0x8D43;
|
|
|
|
public static final int GL_RENDERBUFFER_INTERNAL_FORMAT_OES = 0x8D44;
|
|
|
|
public static final int GL_RENDERBUFFER_RED_SIZE_OES = 0x8D50;
|
|
|
|
public static final int GL_RENDERBUFFER_GREEN_SIZE_OES = 0x8D51;
|
|
|
|
public static final int GL_RENDERBUFFER_BLUE_SIZE_OES = 0x8D52;
|
|
|
|
public static final int GL_RENDERBUFFER_ALPHA_SIZE_OES = 0x8D53;
|
|
|
|
public static final int GL_RENDERBUFFER_DEPTH_SIZE_OES = 0x8D54;
|
|
|
|
public static final int GL_RENDERBUFFER_STENCIL_SIZE_OES = 0x8D55;
|
|
|
|
public static final int GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE_OES = 0x8CD0;
|
|
|
|
public static final int GL_FRAMEBUFFER_ATTACHMENT_OBJECT_NAME_OES = 0x8CD1;
|
|
|
|
public static final int GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL_OES = 0x8CD2;
|
|
|
|
public static final int GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE_OES = 0x8CD3;
|
|
|
|
public static final int GL_COLOR_ATTACHMENT0_OES = 0x8CE0;
|
|
|
|
public static final int GL_DEPTH_ATTACHMENT_OES = 0x8D00;
|
|
|
|
public static final int GL_STENCIL_ATTACHMENT_OES = 0x8D20;
|
|
|
|
public static final int GL_FRAMEBUFFER_COMPLETE_OES = 0x8CD5;
|
|
|
|
public static final int GL_FRAMEBUFFER_INCOMPLETE_ATTACHMENT_OES = 0x8CD6;
|
|
|
|
public static final int GL_FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT_OES = 0x8CD7;
|
|
|
|
public static final int GL_FRAMEBUFFER_INCOMPLETE_DIMENSIONS_OES = 0x8CD9;
|
|
|
|
public static final int GL_FRAMEBUFFER_INCOMPLETE_FORMATS_OES = 0x8CDA;
|
|
|
|
public static final int GL_FRAMEBUFFER_UNSUPPORTED_OES = 0x8CDD;
|
|
|
|
public static final int GL_FRAMEBUFFER_BINDING_OES = 0x8CA6;
|
|
|
|
public static final int GL_RENDERBUFFER_BINDING_OES = 0x8CA7;
|
|
|
|
public static final int GL_MAX_RENDERBUFFER_SIZE_OES = 0x84E8;
|
|
|
|
public static final int GL_INVALID_FRAMEBUFFER_OPERATION_OES = 0x0506;
|
|
|
|
public static final int GL_WRITE_ONLY_OES = 0x88B9;
|
|
|
|
public static final int GL_BUFFER_ACCESS_OES = 0x88BB;
|
|
|
|
public static final int GL_BUFFER_MAPPED_OES = 0x88BC;
|
|
|
|
public static final int GL_BUFFER_MAP_POINTER_OES = 0x88BD;
|
|
|
|
public static final int GL_MODELVIEW_MATRIX_FLOAT_AS_INT_BITS_OES = 0x898D;
|
|
|
|
public static final int GL_PROJECTION_MATRIX_FLOAT_AS_INT_BITS_OES = 0x898E;
|
|
|
|
public static final int GL_TEXTURE_MATRIX_FLOAT_AS_INT_BITS_OES = 0x898F;
|
|
|
|
public static final int GL_MAX_VERTEX_UNITS_OES = 0x86A4;
|
|
|
|
public static final int GL_MAX_PALETTE_MATRICES_OES = 0x8842;
|
|
|
|
public static final int GL_MATRIX_PALETTE_OES = 0x8840;
|
|
|
|
public static final int GL_MATRIX_INDEX_ARRAY_OES = 0x8844;
|
|
|
|
public static final int GL_WEIGHT_ARRAY_OES = 0x86AD;
|
|
|
|
public static final int GL_CURRENT_PALETTE_MATRIX_OES = 0x8843;
|
|
|
|
public static final int GL_MATRIX_INDEX_ARRAY_SIZE_OES = 0x8846;
|
|
|
|
public static final int GL_MATRIX_INDEX_ARRAY_TYPE_OES = 0x8847;
|
|
|
|
public static final int GL_MATRIX_INDEX_ARRAY_STRIDE_OES = 0x8848;
|
|
|
|
public static final int GL_MATRIX_INDEX_ARRAY_POINTER_OES = 0x8849;
|
|
|
|
public static final int GL_MATRIX_INDEX_ARRAY_BUFFER_BINDING_OES = 0x8B9E;
|
|
|
|
public static final int GL_WEIGHT_ARRAY_SIZE_OES = 0x86AB;
|
|
|
|
public static final int GL_WEIGHT_ARRAY_TYPE_OES = 0x86A9;
|
|
|
|
public static final int GL_WEIGHT_ARRAY_STRIDE_OES = 0x86AA;
|
|
|
|
public static final int GL_WEIGHT_ARRAY_POINTER_OES = 0x86AC;
|
|
|
|
public static final int GL_WEIGHT_ARRAY_BUFFER_BINDING_OES = 0x889E;
|
|
|
|
public static final int GL_DEPTH_STENCIL_OES = 0x84F9;
|
|
|
|
public static final int GL_UNSIGNED_INT_24_8_OES = 0x84FA;
|
|
|
|
public static final int GL_DEPTH24_STENCIL8_OES = 0x88F0;
|
|
|
|
public static final int GL_RGB8_OES = 0x8051;
|
|
|
|
public static final int GL_RGBA8_OES = 0x8058;
|
|
|
|
public static final int GL_STENCIL_INDEX1_OES = 0x8D46;
|
|
|
|
public static final int GL_STENCIL_INDEX4_OES = 0x8D47;
|
|
|
|
public static final int GL_STENCIL_INDEX8_OES = 0x8D48;
|
|
|
|
public static final int GL_INCR_WRAP_OES = 0x8507;
|
|
|
|
public static final int GL_DECR_WRAP_OES = 0x8508;
|
|
|
|
public static final int GL_NORMAL_MAP_OES = 0x8511;
|
|
|
|
public static final int GL_REFLECTION_MAP_OES = 0x8512;
|
|
|
|
public static final int GL_TEXTURE_CUBE_MAP_OES = 0x8513;
|
|
|
|
public static final int GL_TEXTURE_BINDING_CUBE_MAP_OES = 0x8514;
|
|
|
|
public static final int GL_TEXTURE_CUBE_MAP_POSITIVE_X_OES = 0x8515;
|
|
|
|
public static final int GL_TEXTURE_CUBE_MAP_NEGATIVE_X_OES = 0x8516;
|
|
|
|
public static final int GL_TEXTURE_CUBE_MAP_POSITIVE_Y_OES = 0x8517;
|
|
|
|
public static final int GL_TEXTURE_CUBE_MAP_NEGATIVE_Y_OES = 0x8518;
|
|
|
|
public static final int GL_TEXTURE_CUBE_MAP_POSITIVE_Z_OES = 0x8519;
|
|
|
|
public static final int GL_TEXTURE_CUBE_MAP_NEGATIVE_Z_OES = 0x851A;
|
|
|
|
public static final int GL_MAX_CUBE_MAP_TEXTURE_SIZE_OES = 0x851C;
|
|
|
|
public static final int GL_TEXTURE_GEN_MODE_OES = 0x2500;
|
|
|
|
public static final int GL_TEXTURE_GEN_STR_OES = 0x8D60;
|
|
|
|
public static final int GL_MIRRORED_REPEAT_OES = 0x8370;
|
|
|
|
public static final int GL_3DC_X_AMD = 0x87F9;
|
|
|
|
public static final int GL_3DC_XY_AMD = 0x87FA;
|
|
|
|
public static final int GL_ATC_RGB_AMD = 0x8C92;
|
|
|
|
public static final int GL_ATC_RGBA_EXPLICIT_ALPHA_AMD = 0x8C93;
|
|
|
|
public static final int GL_ATC_RGBA_INTERPOLATED_ALPHA_AMD = 0x87EE;
|
|
|
|
public static final int GL_TEXTURE_MAX_ANISOTROPY_EXT = 0x84FE;
|
|
|
|
public static final int GL_MAX_TEXTURE_MAX_ANISOTROPY_EXT = 0x84FF;
|
|
|
|
public static final int GL_BGRA = 0x80E1;
|
2011-11-15 18:32:53 +00:00
|
|
|
public static final int GL_TEXTURE_EXTERNAL_OES = 0x8D65;
|
|
|
|
public static final int GL_SAMPLER_EXTERNAL_OES = 0x8D66;
|
|
|
|
public static final int GL_TEXTURE_BINDING_EXTERNAL_OES = 0x8D67;
|
|
|
|
public static final int GL_REQUIRED_TEXTURE_IMAGE_UNITS_OES = 0x8D68;
|
Manually merge 129, 174, and 233 from donut
This adds a static OpenGL ES API.
Here are the three commit messages for the original changes:
Clean up trivial Eclipse warnings and fix whitespace.
Added @Override to overridden methods.
Removed unused imports.
Converted tabs to spaces.
Removed \r characters from end-of-lines.
Add .gitignore file to ignore the .class files that are
generated when the "gen" script is run.
This is the 2nd commit message:
Improve glgen
+ gen script is really a bash script rather than a sh script,
so declare that to be true. (For example, it uses pushd,
which is a part of bash, but not a part of sh. Not sure
how this worked until now. Possibly gen was only run in
environments where /bin/sh was really bash.
+ Check the results of the java compile of the code generator,
and abort the script if the compile fails.
+ Turn on the bash shell option that guards against using
uninitialized variables in the script.
+ Remove the generated class files.
Refactor JniCodeEmitter into two classes: a general-purpose
JniCodeEmitter and a specific Jsr239CodeEmitter. The hope is
to use JniCodeEmitter as a base for emitting static OpenGL ES
bindings.
This is the 3rd commit message:
Add an Android-specific static OpenGL ES 1.1 Java API.
This change adds four new public classes that expose a static OpenGL ES 1.1 API:
android.opengl.GLES10
android.opengl.GLES10Ext
android.opengl.GLES11
android.opengl.GLES11Ext
Benefits:
+ The static API is slightly faster (1% to 4%) than the existing Interface based JSR239 API.
+ The static API is similar to the C API, which should make it easier to import C-based
example code.
+ The static API provides a clear path for adding new OpenGL ES 1.1 extensions
and OpenGL ES 2.0 APIs, neither of which currently have a JSR standard.
Example:
import static android.opengl.GLES10.*;
...
glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);
Note that it is possible to mix-and-match calls to both the static and JSR239 APIs.
This works because neither API maintains state. They both call through to the same underlying
C OpenGL ES APIs.
Implementation details:
This change enhances the "glgen" "gen" script to generate both the original JSR239 and
new static OpenGL ES APIs. The contents of the generated JSR239 classes remained the same as before,
so there is no need to check in new versions of the generated JSR239 classes.
As part of this work the gen script was updated to be somewhat more robust, and to
work with git instead of perforce. The script prints out commands to git add the generated files,
but leaves it up to the script runner to actually execute those commands.
2009-04-13 23:22:25 +00:00
|
|
|
|
|
|
|
native private static void _nativeClassInit();
|
|
|
|
static {
|
2014-05-18 22:31:54 +00:00
|
|
|
_nativeClassInit();
|
Manually merge 129, 174, and 233 from donut
This adds a static OpenGL ES API.
Here are the three commit messages for the original changes:
Clean up trivial Eclipse warnings and fix whitespace.
Added @Override to overridden methods.
Removed unused imports.
Converted tabs to spaces.
Removed \r characters from end-of-lines.
Add .gitignore file to ignore the .class files that are
generated when the "gen" script is run.
This is the 2nd commit message:
Improve glgen
+ gen script is really a bash script rather than a sh script,
so declare that to be true. (For example, it uses pushd,
which is a part of bash, but not a part of sh. Not sure
how this worked until now. Possibly gen was only run in
environments where /bin/sh was really bash.
+ Check the results of the java compile of the code generator,
and abort the script if the compile fails.
+ Turn on the bash shell option that guards against using
uninitialized variables in the script.
+ Remove the generated class files.
Refactor JniCodeEmitter into two classes: a general-purpose
JniCodeEmitter and a specific Jsr239CodeEmitter. The hope is
to use JniCodeEmitter as a base for emitting static OpenGL ES
bindings.
This is the 3rd commit message:
Add an Android-specific static OpenGL ES 1.1 Java API.
This change adds four new public classes that expose a static OpenGL ES 1.1 API:
android.opengl.GLES10
android.opengl.GLES10Ext
android.opengl.GLES11
android.opengl.GLES11Ext
Benefits:
+ The static API is slightly faster (1% to 4%) than the existing Interface based JSR239 API.
+ The static API is similar to the C API, which should make it easier to import C-based
example code.
+ The static API provides a clear path for adding new OpenGL ES 1.1 extensions
and OpenGL ES 2.0 APIs, neither of which currently have a JSR standard.
Example:
import static android.opengl.GLES10.*;
...
glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);
Note that it is possible to mix-and-match calls to both the static and JSR239 APIs.
This works because neither API maintains state. They both call through to the same underlying
C OpenGL ES APIs.
Implementation details:
This change enhances the "glgen" "gen" script to generate both the original JSR239 and
new static OpenGL ES APIs. The contents of the generated JSR239 classes remained the same as before,
so there is no need to check in new versions of the generated JSR239 classes.
As part of this work the gen script was updated to be somewhat more robust, and to
work with git instead of perforce. The script prints out commands to git add the generated files,
but leaves it up to the script runner to actually execute those commands.
2009-04-13 23:22:25 +00:00
|
|
|
}
|
2009-12-08 07:43:51 +00:00
|
|
|
|
|
|
|
private static final int GL_BYTE = GLES10.GL_BYTE;
|
|
|
|
private static final int GL_FIXED = GLES10.GL_FIXED;
|
|
|
|
private static final int GL_FLOAT = GLES10.GL_FLOAT;
|
|
|
|
private static final int GL_SHORT = GLES10.GL_SHORT;
|
|
|
|
|
2011-11-15 18:32:53 +00:00
|
|
|
private static Buffer _matrixIndexPointerOES;
|