412f38f270
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.
91 lines
5.9 KiB
Ruby
91 lines
5.9 KiB
Ruby
void glBlendEquationSeparateOES ( GLenum modeRGB, GLenum modeAlpha )
|
|
void glBlendFuncSeparateOES ( GLenum srcRGB, GLenum dstRGB, GLenum srcAlpha, GLenum dstAlpha )
|
|
void glBlendEquationOES ( GLenum mode )
|
|
void glDrawTexsOES ( GLshort x, GLshort y, GLshort z, GLshort width, GLshort height )
|
|
void glDrawTexiOES ( GLint x, GLint y, GLint z, GLint width, GLint height )
|
|
void glDrawTexxOES ( GLfixed x, GLfixed y, GLfixed z, GLfixed width, GLfixed height )
|
|
void glDrawTexsvOES ( const GLshort *coords )
|
|
void glDrawTexivOES ( const GLint *coords )
|
|
void glDrawTexxvOES ( const GLfixed *coords )
|
|
void glDrawTexfOES ( GLfloat x, GLfloat y, GLfloat z, GLfloat width, GLfloat height )
|
|
void glDrawTexfvOES ( const GLfloat *coords )
|
|
void glEGLImageTargetTexture2DOES ( GLenum target, GLeglImageOES image )
|
|
void glEGLImageTargetRenderbufferStorageOES ( GLenum target, GLeglImageOES image )
|
|
void glAlphaFuncxOES ( GLenum func, GLclampx ref )
|
|
void glClearColorxOES ( GLclampx red, GLclampx green, GLclampx blue, GLclampx alpha )
|
|
void glClearDepthxOES ( GLclampx depth )
|
|
void glClipPlanexOES ( GLenum plane, const GLfixed *equation )
|
|
void glColor4xOES ( GLfixed red, GLfixed green, GLfixed blue, GLfixed alpha )
|
|
void glDepthRangexOES ( GLclampx zNear, GLclampx zFar )
|
|
void glFogxOES ( GLenum pname, GLfixed param )
|
|
void glFogxvOES ( GLenum pname, const GLfixed *params )
|
|
void glFrustumxOES ( GLfixed left, GLfixed right, GLfixed bottom, GLfixed top, GLfixed zNear, GLfixed zFar )
|
|
void glGetClipPlanexOES ( GLenum pname, GLfixed *eqn )
|
|
void glGetFixedvOES ( GLenum pname, GLfixed *params )
|
|
void glGetLightxvOES ( GLenum light, GLenum pname, GLfixed *params )
|
|
void glGetMaterialxvOES ( GLenum face, GLenum pname, GLfixed *params )
|
|
void glGetTexEnvxvOES ( GLenum env, GLenum pname, GLfixed *params )
|
|
void glGetTexParameterxvOES ( GLenum target, GLenum pname, GLfixed *params )
|
|
void glLightModelxOES ( GLenum pname, GLfixed param )
|
|
void glLightModelxvOES ( GLenum pname, const GLfixed *params )
|
|
void glLightxOES ( GLenum light, GLenum pname, GLfixed param )
|
|
void glLightxvOES ( GLenum light, GLenum pname, const GLfixed *params )
|
|
void glLineWidthxOES ( GLfixed width )
|
|
void glLoadMatrixxOES ( const GLfixed *m )
|
|
void glMaterialxOES ( GLenum face, GLenum pname, GLfixed param )
|
|
void glMaterialxvOES ( GLenum face, GLenum pname, const GLfixed *params )
|
|
void glMultMatrixxOES ( const GLfixed *m )
|
|
void glMultiTexCoord4xOES ( GLenum target, GLfixed s, GLfixed t, GLfixed r, GLfixed q )
|
|
void glNormal3xOES ( GLfixed nx, GLfixed ny, GLfixed nz )
|
|
void glOrthoxOES ( GLfixed left, GLfixed right, GLfixed bottom, GLfixed top, GLfixed zNear, GLfixed zFar )
|
|
void glPointParameterxOES ( GLenum pname, GLfixed param )
|
|
void glPointParameterxvOES ( GLenum pname, const GLfixed *params )
|
|
void glPointSizexOES ( GLfixed size )
|
|
void glPolygonOffsetxOES ( GLfixed factor, GLfixed units )
|
|
void glRotatexOES ( GLfixed angle, GLfixed x, GLfixed y, GLfixed z )
|
|
void glSampleCoveragexOES ( GLclampx value, GLboolean invert )
|
|
void glScalexOES ( GLfixed x, GLfixed y, GLfixed z )
|
|
void glTexEnvxOES ( GLenum target, GLenum pname, GLfixed param )
|
|
void glTexEnvxvOES ( GLenum target, GLenum pname, const GLfixed *params )
|
|
void glTexParameterxOES ( GLenum target, GLenum pname, GLfixed param )
|
|
void glTexParameterxvOES ( GLenum target, GLenum pname, const GLfixed *params )
|
|
void glTranslatexOES ( GLfixed x, GLfixed y, GLfixed z )
|
|
GLboolean glIsRenderbufferOES ( GLuint renderbuffer )
|
|
void glBindRenderbufferOES ( GLenum target, GLuint renderbuffer )
|
|
void glDeleteRenderbuffersOES ( GLsizei n, const GLuint *renderbuffers )
|
|
void glGenRenderbuffersOES ( GLsizei n, GLuint *renderbuffers )
|
|
void glRenderbufferStorageOES ( GLenum target, GLenum internalformat, GLsizei width, GLsizei height )
|
|
void glGetRenderbufferParameterivOES ( GLenum target, GLenum pname, GLint *params )
|
|
GLboolean glIsFramebufferOES ( GLuint framebuffer )
|
|
void glBindFramebufferOES ( GLenum target, GLuint framebuffer )
|
|
void glDeleteFramebuffersOES ( GLsizei n, const GLuint *framebuffers )
|
|
void glGenFramebuffersOES ( GLsizei n, GLuint *framebuffers )
|
|
GLenum glCheckFramebufferStatusOES ( GLenum target )
|
|
void glFramebufferRenderbufferOES ( GLenum target, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer )
|
|
void glFramebufferTexture2DOES ( GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level )
|
|
void glGetFramebufferAttachmentParameterivOES ( GLenum target, GLenum attachment, GLenum pname, GLint *params )
|
|
void glGenerateMipmapOES ( GLenum target )
|
|
// Hard to export to Java:
|
|
// void *glMapBufferOES ( GLenum target, GLenum access )
|
|
// GLboolean glUnmapBufferOES ( GLenum target )
|
|
// void glGetBufferPointervOES ( GLenum target, GLenum pname, void **params )
|
|
void glCurrentPaletteMatrixOES ( GLuint matrixpaletteindex )
|
|
void glLoadPaletteFromModelViewMatrixOES ( void )
|
|
void glMatrixIndexPointerOES ( GLint size, GLenum type, GLsizei stride, const GLvoid *pointer )
|
|
void glWeightPointerOES ( GLint size, GLenum type, GLsizei stride, const GLvoid *pointer )
|
|
void glDepthRangefOES ( GLclampf zNear, GLclampf zFar )
|
|
void glFrustumfOES ( GLfloat left, GLfloat right, GLfloat bottom, GLfloat top, GLfloat zNear, GLfloat zFar )
|
|
void glOrthofOES ( GLfloat left, GLfloat right, GLfloat bottom, GLfloat top, GLfloat zNear, GLfloat zFar )
|
|
void glClipPlanefOES ( GLenum plane, const GLfloat *equation )
|
|
void glGetClipPlanefOES ( GLenum pname, GLfloat *eqn )
|
|
void glClearDepthfOES ( GLclampf depth )
|
|
void glTexGenfOES ( GLenum coord, GLenum pname, GLfloat param )
|
|
void glTexGenfvOES ( GLenum coord, GLenum pname, const GLfloat *params )
|
|
void glTexGeniOES ( GLenum coord, GLenum pname, GLint param )
|
|
void glTexGenivOES ( GLenum coord, GLenum pname, const GLint *params )
|
|
void glTexGenxOES ( GLenum coord, GLenum pname, GLfixed param )
|
|
void glTexGenxvOES ( GLenum coord, GLenum pname, const GLfixed *params )
|
|
void glGetTexGenfvOES ( GLenum coord, GLenum pname, GLfloat *params )
|
|
void glGetTexGenivOES ( GLenum coord, GLenum pname, GLint *params )
|
|
void glGetTexGenxvOES ( GLenum coord, GLenum pname, GLfixed *params )
|