Loading opengl/tools/glgen/gen +2 −2 Original line number Diff line number Diff line Loading @@ -70,7 +70,7 @@ if [ $JAVA_RESULT -ne 0 ]; then exit $JAVA_RESULT fi echo "Generating static OpenGLES 1.1 bindings" echo "Generating static OpenGLES bindings" java -classpath src GenerateGLES JAVA_RESULT=$? if [ $JAVA_RESULT -ne 0 ]; then Loading @@ -78,7 +78,7 @@ if [ $JAVA_RESULT -ne 0 ]; then exit $JAVA_RESULT fi echo "Generating static EGL 1.4 bindings" echo "Generating static EGL bindings" java -classpath src GenerateEGL JAVA_RESULT=$? if [ $JAVA_RESULT -ne 0 ]; then Loading opengl/tools/glgen/specs/gles11/checks.spec +69 −11 Original line number Diff line number Diff line # Copyright (C) 2013 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. # # # ifcheck defaults to 1 so we don't explicitly list pnames requiring # a single value. unknown pnames will be validated against one value, which # is not perfect but better than nothing. # glBufferData nullAllowed check data size glBufferSubData check data size # glCompressedTexImage2D # glCompressedTexSubImage2D glClipPlanef check eqn 4 glClipPlanex check eqn 4 glDeleteBuffers check buffers n glDeleteFramebuffers check framebuffers n glDeleteFramebuffersOES check framebuffers n glDeleteRenderbuffers check renderbuffers n glDeleteRenderbuffersOES check renderbuffers n glDeleteTextures check textures n glDrawElements check_AIOOBE indices count Loading @@ -11,31 +36,64 @@ glDrawTexfvOES check coords 5 glDrawTexivOES check coords 5 glDrawTexsvOES check coords 5 glDrawTexxvOES check coords 5 glFog ifcheck params 1 pname GL_FOG_MODE,GL_FOG_DENSITY,GL_FOG_START,GL_FOG_END ifcheck params 4 pname GL_FOG_COLOR glFog ifcheck params 4 pname GL_FOG_COLOR glGenBuffers check buffers n glGenFramebuffersOES check framebuffers n glGenFramebuffers check framebuffers n glGenRenderbuffersOES check renderbuffers n glGenRenderbuffers check renderbuffers n glGenTextures check textures n // glGetActiveAttrib // glGetActiveUniform glGetAttachedShaders nullAllowed check count 1 check shaders maxcount // glGetBooleanv glGetBufferParameter check params 1 glGetClipPlane check eqn 4 glGetClipPlanef check eqn 4 glGetClipPlanex check eqn 4 glGetClipPlanefOES check eqn 4 glGetClipPlanexOES check eqn 4 // glGetFloatv glGetFramebufferAttachmentParameterivOES check params 1 glGetIntegerv ifcheck params 1 pname GL_ALPHA_BITS,GL_ALPHA_TEST_FUNC,GL_ALPHA_TEST_REF,GL_BLEND_DST,GL_BLUE_BITS,GL_COLOR_ARRAY_BUFFER_BINDING,GL_COLOR_ARRAY_SIZE,GL_COLOR_ARRAY_STRIDE,GL_COLOR_ARRAY_TYPE,GL_CULL_FACE,GL_DEPTH_BITS,GL_DEPTH_CLEAR_VALUE,GL_DEPTH_FUNC,GL_DEPTH_WRITEMASK,GL_FOG_DENSITY,GL_FOG_END,GL_FOG_MODE,GL_FOG_START,GL_FRONT_FACE,GL_GREEN_BITS,GL_IMPLEMENTATION_COLOR_READ_FORMAT_OES,GL_IMPLEMENTATION_COLOR_READ_TYPE_OES,GL_LIGHT_MODEL_COLOR_CONTROL,GL_LIGHT_MODEL_LOCAL_VIEWER,GL_LIGHT_MODEL_TWO_SIDE,GL_LINE_SMOOTH_HINT,GL_LINE_WIDTH,GL_LOGIC_OP_MODE,GL_MATRIX_INDEX_ARRAY_BUFFER_BINDING_OES,GL_MATRIX_INDEX_ARRAY_SIZE_OES,GL_MATRIX_INDEX_ARRAY_STRIDE_OES,GL_MATRIX_INDEX_ARRAY_TYPE_OES,GL_MATRIX_MODE,GL_MAX_CLIP_PLANES,GL_MAX_ELEMENTS_INDICES,GL_MAX_ELEMENTS_VERTICES,GL_MAX_LIGHTS,GL_MAX_MODELVIEW_STACK_DEPTH,GL_MAX_PALETTE_MATRICES_OES,GL_MAX_PROJECTION_STACK_DEPTH,GL_MAX_TEXTURE_SIZE,GL_MAX_TEXTURE_STACK_DEPTH,GL_MAX_TEXTURE_UNITS,GL_MAX_VERTEX_UNITS_OES,GL_MODELVIEW_STACK_DEPTH,GL_NORMAL_ARRAY_BUFFER_BINDING,GL_NORMAL_ARRAY_STRIDE,GL_NORMAL_ARRAY_TYPE,GL_NUM_COMPRESSED_TEXTURE_FORMATS,GL_PACK_ALIGNMENT,GL_PERSPECTIVE_CORRECTION_HINT,GL_POINT_SIZE,GL_POINT_SIZE_ARRAY_BUFFER_BINDING_OES,GL_POINT_SIZE_ARRAY_STRIDE_OES,GL_POINT_SIZE_ARRAY_TYPE_OES,GL_POINT_SMOOTH_HINT,GL_POLYGON_OFFSET_FACTOR,GL_POLYGON_OFFSET_UNITS,GL_PROJECTION_STACK_DEPTH,GL_RED_BITS,GL_SHADE_MODEL,GL_STENCIL_BITS,GL_STENCIL_CLEAR_VALUE,GL_STENCIL_FAIL,GL_STENCIL_FUNC,GL_STENCIL_PASS_DEPTH_FAIL,GL_STENCIL_PASS_DEPTH_PASS,GL_STENCIL_REF,GL_STENCIL_VALUE_MASK,GL_STENCIL_WRITEMASK,GL_SUBPIXEL_BITS,GL_TEXTURE_BINDING_2D,GL_TEXTURE_COORD_ARRAY_BUFFER_BINDING,GL_TEXTURE_COORD_ARRAY_SIZE,GL_TEXTURE_COORD_ARRAY_STRIDE,GL_TEXTURE_COORD_ARRAY_TYPE,GL_TEXTURE_STACK_DEPTH,GL_UNPACK_ALIGNMENT,GL_VERTEX_ARRAY_BUFFER_BINDING,GL_VERTEX_ARRAY_SIZE,GL_VERTEX_ARRAY_STRIDE,GL_VERTEX_ARRAY_TYPE,GL_WEIGHT_ARRAY_BUFFER_BINDING_OES,GL_WEIGHT_ARRAY_SIZE_OES,GL_WEIGHT_ARRAY_STRIDE_OES,GL_WEIGHT_ARRAY_TYPE_OES ifcheck params 2 pname GL_ALIASED_POINT_SIZE_RANGE,GL_ALIASED_LINE_WIDTH_RANGE,GL_DEPTH_RANGE,GL_MAX_VIEWPORT_DIMS,GL_SMOOTH_LINE_WIDTH_RANGE,GL_SMOOTH_POINT_SIZE_RANGE ifcheck params 4 pname GL_COLOR_CLEAR_VALUE,GL_COLOR_WRITEMASK,GL_FOG_COLOR,GL_LIGHT_MODEL_AMBIENT,GL_SCISSOR_BOX,GL_VIEWPORT ifcheck params 16 pname GL_MODELVIEW_MATRIX,GL_MODELVIEW_MATRIX_FLOAT_AS_INT_BITS_OES,GL_PROJECTION_MATRIX,GL_PROJECTION_MATRIX_FLOAT_AS_INT_BITS_OES,GL_TEXTURE_MATRIX,GL_TEXTURE_MATRIX_FLOAT_AS_INT_BITS_OES ifcheck params getNumCompressedTextureFormats() pname GL_COMPRESSED_TEXTURE_FORMATS glGetLight ifcheck params 1 pname GL_SPOT_EXPONENT,GL_SPOT_CUTOFF,GL_CONSTANT_ATTENUATION,GL_LINEAR_ATTENUATION,GL_QUADRATIC_ATTENUATION ifcheck params 3 pname GL_SPOT_DIRECTION ifcheck params 4 pname GL_AMBIENT,GL_DIFFUSE,GL_SPECULAR,GL_EMISSION glGetMaterial ifcheck params 1 pname GL_SHININESS ifcheck params 4 pname GL_AMBIENT,GL_DIFFUSE,GL_SPECULAR,GL_EMISSION,GL_AMBIENT_AND_DIFFUSE // glGetIntegerv glGetLight ifcheck params 3 pname GL_SPOT_DIRECTION ifcheck params 4 pname GL_AMBIENT,GL_DIFFUSE,GL_SPECULAR,GL_EMISSION glGetMaterial ifcheck params 4 pname GL_AMBIENT,GL_DIFFUSE,GL_SPECULAR,GL_EMISSION,GL_AMBIENT_AND_DIFFUSE // glGetProgramInfoLog glGetProgramiv check params 1 glGetRenderbufferParameteriv check params 1 glGetRenderbufferParameterivOES check params 1 glGetTexEnv ifcheck params 1 pname GL_TEXTURE_ENV_MODE,GL_COMBINE_RGB,GL_COMBINE_ALPHA ifcheck params 4 pname GL_TEXTURE_ENV_COLOR glGetTexGen ifcheck params 1 pname GL_TEXTURE_GEN_MODE ifcheck params 4 pname GL_OBJECT_PLANE,GL_EYE_PLANE // glGetShaderInfoLog glGetShaderiv check params 1 glGetShaderPrecisionFormat check range 1 check precision 1 // glGetShaderSource // glGetString glGetTexEnv ifcheck params 4 pname GL_TEXTURE_ENV_COLOR glGetTexGen ifcheck params 4 pname GL_OBJECT_PLANE,GL_EYE_PLANE glGetTexParameter check params 1 glLight ifcheck params 1 pname GL_SPOT_EXPONENT,GL_SPOT_CUTOFF,GL_CONSTANT_ATTENUATION,GL_LINEAR_ATTENUATION,GL_QUADRATIC_ATTENUATION ifcheck params 3 pname GL_SPOT_DIRECTION ifcheck params 4 pname GL_AMBIENT,GL_DIFFUSE,GL_SPECULAR,GL_EMISSION glLightModel ifcheck params 1 pname GL_LIGHT_MODEL_TWO_SIDE ifcheck params 4 pname GL_LIGHT_MODEL_AMBIENT glGetUniform check params 1 glGetVertexAttrib ifcheck params 4 pname GL_CURRENT_VERTEX_ATTRIB glLight ifcheck params 3 pname GL_SPOT_DIRECTION ifcheck params 4 pname GL_AMBIENT,GL_DIFFUSE,GL_SPECULAR,GL_EMISSION glLightModel ifcheck params 4 pname GL_LIGHT_MODEL_AMBIENT glLoadMatrix check m 16 glMaterial ifcheck params 1 pname GL_SHININESS ifcheck params 4 pname GL_AMBIENT,GL_DIFFUSE,GL_SPECULAR,GL_EMISSION,GL_AMBIENT_AND_DIFFUSE glMaterial ifcheck params 4 pname GL_AMBIENT,GL_DIFFUSE,GL_SPECULAR,GL_EMISSION,GL_AMBIENT_AND_DIFFUSE glMultMatrix check m 16 glPointParameter check params 1 glQueryMatrixxOES check mantissa 16 check exponent 16 return -1 glTexEnv ifcheck params 1 pname GL_TEXTURE_ENV_MODE,GL_COMBINE_RGB,GL_COMBINE_ALPHA ifcheck params 4 pname GL_TEXTURE_ENV_COLOR # glReadPixels glShaderBinary check binary length // glShaderSource glTexEnv ifcheck params 4 pname GL_TEXTURE_ENV_COLOR glTexImage2D nullAllowed glTexParameter check params 1 glTexSubImage2D nullAllowed glUniform1 check v count glUniform2 check v count*2 glUniform3 check v count*3 glUniform4 check v count*4 glUniformMatrix2 check value count*4 glUniformMatrix3 check value count*9 glUniformMatrix4 check value count*16 glVertexAttrib1 check values 1 glVertexAttrib2 check values 2 glVertexAttrib3 check values 3 glVertexAttrib4 check values 4 # glVertexAttribPointer opengl/tools/glgen/src/GenerateGLES.java +1 −3 Original line number Diff line number Diff line Loading @@ -42,7 +42,6 @@ public class GenerateGLES { } CFunc cfunc = CFunc.parseCFunc(s); String fname = cfunc.getName(); String stubRoot = "stubs/gles11/" + fname; String javaPath = stubRoot + ".java"; Loading Loading @@ -96,10 +95,9 @@ public class GenerateGLES { new PrintStream(new FileOutputStream("out/" + gl11Filename)); PrintStream gl11cStream = new PrintStream(new FileOutputStream("out/" + gl11cFilename)); gl11Stream.println("/*"); gl11cStream.println("/*"); copy("stubs/gles11/" + suffix + "Header.java-if", gl11Stream); copy("stubs/gles11/" + suffix + "cHeader.cpp", gl11cStream); copy("stubs/gles11/common.cpp", gl11cStream); GLESCodeEmitter emitter = new GLESCodeEmitter( "android/opengl/" + suffix, checker, gl11Stream, gl11cStream); Loading opengl/tools/glgen/src/JniCodeEmitter.java +23 −23 Original line number Diff line number Diff line Loading @@ -204,7 +204,7 @@ public class JniCodeEmitter { void printIfcheckPostamble(PrintStream out, boolean isBuffer, boolean emitExceptionCheck, String offset, String remaining, String iii) { out.println(iii + " default:"); out.println(iii + " _needed = 0;"); out.println(iii + " _needed = 1;"); out.println(iii + " break;"); out.println(iii + "}"); Loading Loading @@ -932,8 +932,8 @@ public class JniCodeEmitter { // Emit an _exeption variable if there will be error checks if (emitExceptionCheck) { out.println(indent + "jint _exception = 0;"); out.println(indent + "const char * _exceptionType;"); out.println(indent + "const char * _exceptionMessage;"); out.println(indent + "const char * _exceptionType = NULL;"); out.println(indent + "const char * _exceptionMessage = NULL;"); } // Emit a single _array or multiple _XXXArray variables Loading opengl/tools/glgen/src/ParameterChecker.java +15 −2 Original line number Diff line number Diff line Loading @@ -22,8 +22,21 @@ public class ParameterChecker { HashMap<String,String[]> map = new HashMap<String,String[]>(); public ParameterChecker(BufferedReader reader) throws Exception { String s; while ((s = reader.readLine()) != null) { String line; while ((line = reader.readLine()) != null) { String s = line.trim(); // skip empty lines if (s.isEmpty()) { continue; } // skip single-line comments if (s.startsWith("//") || s.startsWith("#")) { continue; } String[] tokens = s.split("\\s"); map.put(tokens[0], tokens); } Loading Loading
opengl/tools/glgen/gen +2 −2 Original line number Diff line number Diff line Loading @@ -70,7 +70,7 @@ if [ $JAVA_RESULT -ne 0 ]; then exit $JAVA_RESULT fi echo "Generating static OpenGLES 1.1 bindings" echo "Generating static OpenGLES bindings" java -classpath src GenerateGLES JAVA_RESULT=$? if [ $JAVA_RESULT -ne 0 ]; then Loading @@ -78,7 +78,7 @@ if [ $JAVA_RESULT -ne 0 ]; then exit $JAVA_RESULT fi echo "Generating static EGL 1.4 bindings" echo "Generating static EGL bindings" java -classpath src GenerateEGL JAVA_RESULT=$? if [ $JAVA_RESULT -ne 0 ]; then Loading
opengl/tools/glgen/specs/gles11/checks.spec +69 −11 Original line number Diff line number Diff line # Copyright (C) 2013 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. # # # ifcheck defaults to 1 so we don't explicitly list pnames requiring # a single value. unknown pnames will be validated against one value, which # is not perfect but better than nothing. # glBufferData nullAllowed check data size glBufferSubData check data size # glCompressedTexImage2D # glCompressedTexSubImage2D glClipPlanef check eqn 4 glClipPlanex check eqn 4 glDeleteBuffers check buffers n glDeleteFramebuffers check framebuffers n glDeleteFramebuffersOES check framebuffers n glDeleteRenderbuffers check renderbuffers n glDeleteRenderbuffersOES check renderbuffers n glDeleteTextures check textures n glDrawElements check_AIOOBE indices count Loading @@ -11,31 +36,64 @@ glDrawTexfvOES check coords 5 glDrawTexivOES check coords 5 glDrawTexsvOES check coords 5 glDrawTexxvOES check coords 5 glFog ifcheck params 1 pname GL_FOG_MODE,GL_FOG_DENSITY,GL_FOG_START,GL_FOG_END ifcheck params 4 pname GL_FOG_COLOR glFog ifcheck params 4 pname GL_FOG_COLOR glGenBuffers check buffers n glGenFramebuffersOES check framebuffers n glGenFramebuffers check framebuffers n glGenRenderbuffersOES check renderbuffers n glGenRenderbuffers check renderbuffers n glGenTextures check textures n // glGetActiveAttrib // glGetActiveUniform glGetAttachedShaders nullAllowed check count 1 check shaders maxcount // glGetBooleanv glGetBufferParameter check params 1 glGetClipPlane check eqn 4 glGetClipPlanef check eqn 4 glGetClipPlanex check eqn 4 glGetClipPlanefOES check eqn 4 glGetClipPlanexOES check eqn 4 // glGetFloatv glGetFramebufferAttachmentParameterivOES check params 1 glGetIntegerv ifcheck params 1 pname GL_ALPHA_BITS,GL_ALPHA_TEST_FUNC,GL_ALPHA_TEST_REF,GL_BLEND_DST,GL_BLUE_BITS,GL_COLOR_ARRAY_BUFFER_BINDING,GL_COLOR_ARRAY_SIZE,GL_COLOR_ARRAY_STRIDE,GL_COLOR_ARRAY_TYPE,GL_CULL_FACE,GL_DEPTH_BITS,GL_DEPTH_CLEAR_VALUE,GL_DEPTH_FUNC,GL_DEPTH_WRITEMASK,GL_FOG_DENSITY,GL_FOG_END,GL_FOG_MODE,GL_FOG_START,GL_FRONT_FACE,GL_GREEN_BITS,GL_IMPLEMENTATION_COLOR_READ_FORMAT_OES,GL_IMPLEMENTATION_COLOR_READ_TYPE_OES,GL_LIGHT_MODEL_COLOR_CONTROL,GL_LIGHT_MODEL_LOCAL_VIEWER,GL_LIGHT_MODEL_TWO_SIDE,GL_LINE_SMOOTH_HINT,GL_LINE_WIDTH,GL_LOGIC_OP_MODE,GL_MATRIX_INDEX_ARRAY_BUFFER_BINDING_OES,GL_MATRIX_INDEX_ARRAY_SIZE_OES,GL_MATRIX_INDEX_ARRAY_STRIDE_OES,GL_MATRIX_INDEX_ARRAY_TYPE_OES,GL_MATRIX_MODE,GL_MAX_CLIP_PLANES,GL_MAX_ELEMENTS_INDICES,GL_MAX_ELEMENTS_VERTICES,GL_MAX_LIGHTS,GL_MAX_MODELVIEW_STACK_DEPTH,GL_MAX_PALETTE_MATRICES_OES,GL_MAX_PROJECTION_STACK_DEPTH,GL_MAX_TEXTURE_SIZE,GL_MAX_TEXTURE_STACK_DEPTH,GL_MAX_TEXTURE_UNITS,GL_MAX_VERTEX_UNITS_OES,GL_MODELVIEW_STACK_DEPTH,GL_NORMAL_ARRAY_BUFFER_BINDING,GL_NORMAL_ARRAY_STRIDE,GL_NORMAL_ARRAY_TYPE,GL_NUM_COMPRESSED_TEXTURE_FORMATS,GL_PACK_ALIGNMENT,GL_PERSPECTIVE_CORRECTION_HINT,GL_POINT_SIZE,GL_POINT_SIZE_ARRAY_BUFFER_BINDING_OES,GL_POINT_SIZE_ARRAY_STRIDE_OES,GL_POINT_SIZE_ARRAY_TYPE_OES,GL_POINT_SMOOTH_HINT,GL_POLYGON_OFFSET_FACTOR,GL_POLYGON_OFFSET_UNITS,GL_PROJECTION_STACK_DEPTH,GL_RED_BITS,GL_SHADE_MODEL,GL_STENCIL_BITS,GL_STENCIL_CLEAR_VALUE,GL_STENCIL_FAIL,GL_STENCIL_FUNC,GL_STENCIL_PASS_DEPTH_FAIL,GL_STENCIL_PASS_DEPTH_PASS,GL_STENCIL_REF,GL_STENCIL_VALUE_MASK,GL_STENCIL_WRITEMASK,GL_SUBPIXEL_BITS,GL_TEXTURE_BINDING_2D,GL_TEXTURE_COORD_ARRAY_BUFFER_BINDING,GL_TEXTURE_COORD_ARRAY_SIZE,GL_TEXTURE_COORD_ARRAY_STRIDE,GL_TEXTURE_COORD_ARRAY_TYPE,GL_TEXTURE_STACK_DEPTH,GL_UNPACK_ALIGNMENT,GL_VERTEX_ARRAY_BUFFER_BINDING,GL_VERTEX_ARRAY_SIZE,GL_VERTEX_ARRAY_STRIDE,GL_VERTEX_ARRAY_TYPE,GL_WEIGHT_ARRAY_BUFFER_BINDING_OES,GL_WEIGHT_ARRAY_SIZE_OES,GL_WEIGHT_ARRAY_STRIDE_OES,GL_WEIGHT_ARRAY_TYPE_OES ifcheck params 2 pname GL_ALIASED_POINT_SIZE_RANGE,GL_ALIASED_LINE_WIDTH_RANGE,GL_DEPTH_RANGE,GL_MAX_VIEWPORT_DIMS,GL_SMOOTH_LINE_WIDTH_RANGE,GL_SMOOTH_POINT_SIZE_RANGE ifcheck params 4 pname GL_COLOR_CLEAR_VALUE,GL_COLOR_WRITEMASK,GL_FOG_COLOR,GL_LIGHT_MODEL_AMBIENT,GL_SCISSOR_BOX,GL_VIEWPORT ifcheck params 16 pname GL_MODELVIEW_MATRIX,GL_MODELVIEW_MATRIX_FLOAT_AS_INT_BITS_OES,GL_PROJECTION_MATRIX,GL_PROJECTION_MATRIX_FLOAT_AS_INT_BITS_OES,GL_TEXTURE_MATRIX,GL_TEXTURE_MATRIX_FLOAT_AS_INT_BITS_OES ifcheck params getNumCompressedTextureFormats() pname GL_COMPRESSED_TEXTURE_FORMATS glGetLight ifcheck params 1 pname GL_SPOT_EXPONENT,GL_SPOT_CUTOFF,GL_CONSTANT_ATTENUATION,GL_LINEAR_ATTENUATION,GL_QUADRATIC_ATTENUATION ifcheck params 3 pname GL_SPOT_DIRECTION ifcheck params 4 pname GL_AMBIENT,GL_DIFFUSE,GL_SPECULAR,GL_EMISSION glGetMaterial ifcheck params 1 pname GL_SHININESS ifcheck params 4 pname GL_AMBIENT,GL_DIFFUSE,GL_SPECULAR,GL_EMISSION,GL_AMBIENT_AND_DIFFUSE // glGetIntegerv glGetLight ifcheck params 3 pname GL_SPOT_DIRECTION ifcheck params 4 pname GL_AMBIENT,GL_DIFFUSE,GL_SPECULAR,GL_EMISSION glGetMaterial ifcheck params 4 pname GL_AMBIENT,GL_DIFFUSE,GL_SPECULAR,GL_EMISSION,GL_AMBIENT_AND_DIFFUSE // glGetProgramInfoLog glGetProgramiv check params 1 glGetRenderbufferParameteriv check params 1 glGetRenderbufferParameterivOES check params 1 glGetTexEnv ifcheck params 1 pname GL_TEXTURE_ENV_MODE,GL_COMBINE_RGB,GL_COMBINE_ALPHA ifcheck params 4 pname GL_TEXTURE_ENV_COLOR glGetTexGen ifcheck params 1 pname GL_TEXTURE_GEN_MODE ifcheck params 4 pname GL_OBJECT_PLANE,GL_EYE_PLANE // glGetShaderInfoLog glGetShaderiv check params 1 glGetShaderPrecisionFormat check range 1 check precision 1 // glGetShaderSource // glGetString glGetTexEnv ifcheck params 4 pname GL_TEXTURE_ENV_COLOR glGetTexGen ifcheck params 4 pname GL_OBJECT_PLANE,GL_EYE_PLANE glGetTexParameter check params 1 glLight ifcheck params 1 pname GL_SPOT_EXPONENT,GL_SPOT_CUTOFF,GL_CONSTANT_ATTENUATION,GL_LINEAR_ATTENUATION,GL_QUADRATIC_ATTENUATION ifcheck params 3 pname GL_SPOT_DIRECTION ifcheck params 4 pname GL_AMBIENT,GL_DIFFUSE,GL_SPECULAR,GL_EMISSION glLightModel ifcheck params 1 pname GL_LIGHT_MODEL_TWO_SIDE ifcheck params 4 pname GL_LIGHT_MODEL_AMBIENT glGetUniform check params 1 glGetVertexAttrib ifcheck params 4 pname GL_CURRENT_VERTEX_ATTRIB glLight ifcheck params 3 pname GL_SPOT_DIRECTION ifcheck params 4 pname GL_AMBIENT,GL_DIFFUSE,GL_SPECULAR,GL_EMISSION glLightModel ifcheck params 4 pname GL_LIGHT_MODEL_AMBIENT glLoadMatrix check m 16 glMaterial ifcheck params 1 pname GL_SHININESS ifcheck params 4 pname GL_AMBIENT,GL_DIFFUSE,GL_SPECULAR,GL_EMISSION,GL_AMBIENT_AND_DIFFUSE glMaterial ifcheck params 4 pname GL_AMBIENT,GL_DIFFUSE,GL_SPECULAR,GL_EMISSION,GL_AMBIENT_AND_DIFFUSE glMultMatrix check m 16 glPointParameter check params 1 glQueryMatrixxOES check mantissa 16 check exponent 16 return -1 glTexEnv ifcheck params 1 pname GL_TEXTURE_ENV_MODE,GL_COMBINE_RGB,GL_COMBINE_ALPHA ifcheck params 4 pname GL_TEXTURE_ENV_COLOR # glReadPixels glShaderBinary check binary length // glShaderSource glTexEnv ifcheck params 4 pname GL_TEXTURE_ENV_COLOR glTexImage2D nullAllowed glTexParameter check params 1 glTexSubImage2D nullAllowed glUniform1 check v count glUniform2 check v count*2 glUniform3 check v count*3 glUniform4 check v count*4 glUniformMatrix2 check value count*4 glUniformMatrix3 check value count*9 glUniformMatrix4 check value count*16 glVertexAttrib1 check values 1 glVertexAttrib2 check values 2 glVertexAttrib3 check values 3 glVertexAttrib4 check values 4 # glVertexAttribPointer
opengl/tools/glgen/src/GenerateGLES.java +1 −3 Original line number Diff line number Diff line Loading @@ -42,7 +42,6 @@ public class GenerateGLES { } CFunc cfunc = CFunc.parseCFunc(s); String fname = cfunc.getName(); String stubRoot = "stubs/gles11/" + fname; String javaPath = stubRoot + ".java"; Loading Loading @@ -96,10 +95,9 @@ public class GenerateGLES { new PrintStream(new FileOutputStream("out/" + gl11Filename)); PrintStream gl11cStream = new PrintStream(new FileOutputStream("out/" + gl11cFilename)); gl11Stream.println("/*"); gl11cStream.println("/*"); copy("stubs/gles11/" + suffix + "Header.java-if", gl11Stream); copy("stubs/gles11/" + suffix + "cHeader.cpp", gl11cStream); copy("stubs/gles11/common.cpp", gl11cStream); GLESCodeEmitter emitter = new GLESCodeEmitter( "android/opengl/" + suffix, checker, gl11Stream, gl11cStream); Loading
opengl/tools/glgen/src/JniCodeEmitter.java +23 −23 Original line number Diff line number Diff line Loading @@ -204,7 +204,7 @@ public class JniCodeEmitter { void printIfcheckPostamble(PrintStream out, boolean isBuffer, boolean emitExceptionCheck, String offset, String remaining, String iii) { out.println(iii + " default:"); out.println(iii + " _needed = 0;"); out.println(iii + " _needed = 1;"); out.println(iii + " break;"); out.println(iii + "}"); Loading Loading @@ -932,8 +932,8 @@ public class JniCodeEmitter { // Emit an _exeption variable if there will be error checks if (emitExceptionCheck) { out.println(indent + "jint _exception = 0;"); out.println(indent + "const char * _exceptionType;"); out.println(indent + "const char * _exceptionMessage;"); out.println(indent + "const char * _exceptionType = NULL;"); out.println(indent + "const char * _exceptionMessage = NULL;"); } // Emit a single _array or multiple _XXXArray variables Loading
opengl/tools/glgen/src/ParameterChecker.java +15 −2 Original line number Diff line number Diff line Loading @@ -22,8 +22,21 @@ public class ParameterChecker { HashMap<String,String[]> map = new HashMap<String,String[]>(); public ParameterChecker(BufferedReader reader) throws Exception { String s; while ((s = reader.readLine()) != null) { String line; while ((line = reader.readLine()) != null) { String s = line.trim(); // skip empty lines if (s.isEmpty()) { continue; } // skip single-line comments if (s.startsWith("//") || s.startsWith("#")) { continue; } String[] tokens = s.split("\\s"); map.put(tokens[0], tokens); } Loading