Home | History | Annotate | Download | only in gen
      1 <?xml version="1.0"?>
      2 <!DOCTYPE OpenGLAPI SYSTEM "../gen/gl_API.dtd">
      3 
      4 <!-- OpenGL ES specific extensions -->
      5 
      6 <OpenGLAPI>
      7 
      8 <!-- part of es1.1 extension pack -->
      9 <category name="GL_OES_blend_equation_separate" number="1">
     10     <enum name="BLEND_EQUATION_RGB_OES"                   value="0x8009"/>
     11     <enum name="BLEND_EQUATION_ALPHA_OES"                 value="0x883D"/>
     12 
     13     <function name="BlendEquationSeparateOES" alias="BlendEquationSeparate"
     14 	      es1="1.0">
     15         <param name="modeRGB" type="GLenum"/>
     16         <param name="modeA" type="GLenum"/>
     17     </function>
     18 </category>
     19 
     20 <!-- part of es1.1 extension pack -->
     21 <category name="GL_OES_blend_func_separate" number="2">
     22     <enum name="BLEND_DST_RGB_OES"                        value="0x80C8"/>
     23     <enum name="BLEND_SRC_RGB_OES"                        value="0x80C9"/>
     24     <enum name="BLEND_DST_ALPHA_OES"                      value="0x80CA"/>
     25     <enum name="BLEND_SRC_ALPHA_OES"                      value="0x80CB"/>
     26 
     27     <function name="BlendFuncSeparateOES" alias="BlendFuncSeparate" es1="1.0">
     28         <param name="sfactorRGB" type="GLenum"/>
     29         <param name="dfactorRGB" type="GLenum"/>
     30         <param name="sfactorAlpha" type="GLenum"/>
     31         <param name="dfactorAlpha" type="GLenum"/>
     32     </function>
     33 </category>
     34 
     35 <!-- part of es1.1 extension pack -->
     36 <category name="GL_OES_blend_subtract" number="3">
     37     <enum name="FUNC_ADD_OES"                             value="0x8006"/>
     38     <enum name="BLEND_EQUATION_OES"                       value="0x8009"/>
     39     <enum name="FUNC_SUBTRACT_OES"                        value="0x800A"/>
     40     <enum name="FUNC_REVERSE_SUBTRACT_OES"                value="0x800B"/>
     41 
     42     <function name="BlendEquationOES" alias="BlendEquation" es1="1.0">
     43         <param name="mode" type="GLenum"/>
     44     </function>
     45 </category>
     46 
     47 <!-- core addition to es1.0 and later -->
     48 <category name="GL_OES_byte_coordinates" number="4">
     49     <enum name="BYTE"                                     value="0x1400"/>
     50 </category>
     51 
     52 <category name="GL_OES_compressed_ETC1_RGB8_texture" number="5">
     53     <enum name="ETC1_RGB8_OES"                            value="0x8D64"/>
     54 </category>
     55 
     56 <category name="GL_OES_compressed_paletted_texture" number="6">
     57     <enum name="PALETTE4_RGB8_OES"                        value="0x8B90"/>
     58     <enum name="PALETTE4_RGBA8_OES"                       value="0x8B91"/>
     59     <enum name="PALETTE4_R5_G6_B5_OES"                    value="0x8B92"/>
     60     <enum name="PALETTE4_RGBA4_OES"                       value="0x8B93"/>
     61     <enum name="PALETTE4_RGB5_A1_OES"                     value="0x8B94"/>
     62     <enum name="PALETTE8_RGB8_OES"                        value="0x8B95"/>
     63     <enum name="PALETTE8_RGBA8_OES"                       value="0x8B96"/>
     64     <enum name="PALETTE8_R5_G6_B5_OES"                    value="0x8B97"/>
     65     <enum name="PALETTE8_RGBA4_OES"                       value="0x8B98"/>
     66     <enum name="PALETTE8_RGB5_A1_OES"                     value="0x8B99"/>
     67 </category>
     68 
     69 <!-- optional for es1.1 -->
     70 <category name="GL_OES_draw_texture" number="7">
     71     <enum name="TEXTURE_CROP_RECT_OES"                    value="0x8B9D"/>
     72 
     73     <function name="DrawTexiOES" es1="1.0" desktop="false">
     74         <param name="x" type="GLint"/>
     75         <param name="y" type="GLint"/>
     76         <param name="z" type="GLint"/>
     77         <param name="width" type="GLint"/>
     78         <param name="height" type="GLint"/>
     79     </function>
     80 
     81     <function name="DrawTexivOES" es1="1.0" desktop="false">
     82         <param name="coords" type="const GLint *" count="5"/>
     83     </function>
     84 
     85     <function name="DrawTexfOES" es1="1.0" desktop="false">
     86         <param name="x" type="GLfloat"/>
     87         <param name="y" type="GLfloat"/>
     88         <param name="z" type="GLfloat"/>
     89         <param name="width" type="GLfloat"/>
     90         <param name="height" type="GLfloat"/>
     91     </function>
     92 
     93     <function name="DrawTexfvOES" es1="1.0" desktop="false">
     94         <param name="coords" type="const GLfloat *" count="5"/>
     95     </function>
     96 
     97     <function name="DrawTexsOES" es1="1.0" desktop="false">
     98         <param name="x" type="GLshort"/>
     99         <param name="y" type="GLshort"/>
    100         <param name="z" type="GLshort"/>
    101         <param name="width" type="GLshort"/>
    102         <param name="height" type="GLshort"/>
    103     </function>
    104 
    105     <function name="DrawTexsvOES" es1="1.0" desktop="false">
    106         <param name="coords" type="const GLshort *" count="5"/>
    107     </function>
    108 
    109     <function name="DrawTexxOES" es1="1.0" desktop="false">
    110         <param name="x" type="GLfixed"/>
    111         <param name="y" type="GLfixed"/>
    112         <param name="z" type="GLfixed"/>
    113         <param name="width" type="GLfixed"/>
    114         <param name="height" type="GLfixed"/>
    115     </function>
    116 
    117     <function name="DrawTexxvOES" es1="1.0" desktop="false">
    118         <param name="coords" type="const GLfixed *" count="5"/>
    119     </function>
    120 
    121     <!-- TexParameter{ifx}v is skipped here -->
    122 </category>
    123 
    124 <!-- core addition to es1.0 and later -->
    125 <!-- 9. GL_OES_fixed_point -->
    126 
    127 <!-- part of es1.1 extension pack -->
    128 <category name="GL_OES_framebuffer_object" number="10">
    129     <enum name="NONE_OES"                                 value="0"/>
    130     <enum name="INVALID_FRAMEBUFFER_OPERATION_OES"        value="0x0506"/>
    131     <enum name="RGBA4_OES"                                value="0x8056"/>
    132     <enum name="RGB5_A1_OES"                              value="0x8057"/>
    133     <enum name="DEPTH_COMPONENT16_OES"                    value="0x81A5"/>
    134 
    135     <enum name="MAX_RENDERBUFFER_SIZE_OES"                value="0x84E8"/>
    136     <enum name="FRAMEBUFFER_BINDING_OES"                  value="0x8CA6"/>
    137     <enum name="RENDERBUFFER_BINDING_OES"                 value="0x8CA7"/>
    138     <enum name="FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE_OES"   value="0x8CD0"/>
    139     <enum name="FRAMEBUFFER_ATTACHMENT_OBJECT_NAME_OES"   value="0x8CD1"/>
    140     <enum name="FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL_OES" value="0x8CD2"/>
    141     <enum name="FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE_OES" value="0x8CD3"/>
    142     <enum name="FRAMEBUFFER_ATTACHMENT_TEXTURE_3D_ZOFFSET_OES" value="0x8CD4"/>
    143     <enum name="FRAMEBUFFER_COMPLETE_OES"                 value="0x8CD5"/>
    144     <enum name="FRAMEBUFFER_INCOMPLETE_ATTACHMENT_OES"    value="0x8CD6"/>
    145     <enum name="FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT_OES" value="0x8CD7"/>
    146     <enum name="FRAMEBUFFER_INCOMPLETE_DIMENSIONS_OES"    value="0x8CD9"/>
    147     <enum name="FRAMEBUFFER_INCOMPLETE_FORMATS_OES"       value="0x8CDA"/>
    148     <enum name="FRAMEBUFFER_INCOMPLETE_DRAW_BUFFER_OES"   value="0x8CDB"/>
    149     <enum name="FRAMEBUFFER_INCOMPLETE_READ_BUFFER_OES"   value="0x8CDC"/>
    150     <enum name="FRAMEBUFFER_UNSUPPORTED_OES"              value="0x8CDD"/>
    151     <enum name="COLOR_ATTACHMENT0_OES"                    value="0x8CE0"/>
    152     <enum name="DEPTH_ATTACHMENT_OES"                     value="0x8D00"/>
    153     <enum name="STENCIL_ATTACHMENT_OES"                   value="0x8D20"/>
    154     <enum name="FRAMEBUFFER_OES"                          value="0x8D40"/>
    155     <enum name="RENDERBUFFER_OES"                         value="0x8D41"/>
    156     <enum name="RENDERBUFFER_WIDTH_OES"                   value="0x8D42"/>
    157     <enum name="RENDERBUFFER_HEIGHT_OES"                  value="0x8D43"/>
    158     <enum name="RENDERBUFFER_INTERNAL_FORMAT_OES"         value="0x8D44"/>
    159     <enum name="STENCIL_INDEX1_OES"                       value="0x8D46"/>
    160     <enum name="STENCIL_INDEX4_OES"                       value="0x8D47"/>
    161     <enum name="STENCIL_INDEX8_OES"                       value="0x8D48"/>
    162     <enum name="RENDERBUFFER_RED_SIZE_OES"                value="0x8D50"/>
    163     <enum name="RENDERBUFFER_GREEN_SIZE_OES"              value="0x8D51"/>
    164     <enum name="RENDERBUFFER_BLUE_SIZE_OES"               value="0x8D52"/>
    165     <enum name="RENDERBUFFER_ALPHA_SIZE_OES"              value="0x8D53"/>
    166     <enum name="RENDERBUFFER_DEPTH_SIZE_OES"              value="0x8D54"/>
    167     <enum name="RENDERBUFFER_STENCIL_SIZE_OES"            value="0x8D55"/>
    168     <enum name="RGB565_OES"                               value="0x8D62"/>
    169 
    170     <function name="BindFramebufferOES" alias="BindFramebuffer" es1="1.0">
    171         <param name="target" type="GLenum"/>
    172         <param name="framebuffer" type="GLuint"/>
    173     </function>
    174 
    175     <function name="BindRenderbufferOES" alias="BindRenderbuffer" es1="1.0">
    176         <param name="target" type="GLenum"/>
    177         <param name="renderbuffer" type="GLuint"/>
    178     </function>
    179 
    180     <function name="CheckFramebufferStatusOES"
    181               alias="CheckFramebufferStatus" es1="1.0">
    182         <param name="target" type="GLenum"/>
    183 	<return type="GLenum"/>
    184     </function>
    185 
    186     <function name="DeleteFramebuffersOES" alias="DeleteFramebuffers" es1="1.0">
    187         <param name="n" type="GLsizei" counter="true"/>
    188         <param name="framebuffers" type="const GLuint *" count="n"/>
    189     </function>
    190 
    191     <function name="DeleteRenderbuffersOES" alias="DeleteRenderbuffers"
    192 	      es1="1.0">
    193         <param name="n" type="GLsizei" counter="true"/>
    194         <param name="renderbuffers" type="const GLuint *" count="n"/>
    195     </function>
    196 
    197     <function name="FramebufferRenderbufferOES"
    198               alias="FramebufferRenderbuffer" es1="1.0">
    199         <param name="target" type="GLenum"/>
    200         <param name="attachment" type="GLenum"/>
    201         <param name="renderbuffertarget" type="GLenum"/>
    202         <param name="renderbuffer" type="GLuint"/>
    203     </function>
    204 
    205     <function name="FramebufferTexture2DOES" alias="FramebufferTexture2D"
    206 	      es1="1.0">
    207         <param name="target" type="GLenum"/>
    208         <param name="attachment" type="GLenum"/>
    209         <param name="textarget" type="GLenum"/>
    210         <param name="texture" type="GLuint"/>
    211         <param name="level" type="GLint"/>
    212     </function>
    213 
    214     <function name="GenerateMipmapOES" alias="GenerateMipmap" es1="1.0">
    215         <param name="target" type="GLenum"/>
    216     </function>
    217 
    218     <function name="GenFramebuffersOES" alias="GenFramebuffers" es1="1.0">
    219         <param name="n" type="GLsizei" counter="true"/>
    220         <param name="framebuffers" type="GLuint *" count="n" output="true"/>
    221     </function>
    222 
    223     <function name="GenRenderbuffersOES" alias="GenRenderbuffers" es1="1.0">
    224         <param name="n" type="GLsizei" counter="true"/>
    225         <param name="renderbuffers" type="GLuint *" count="n" output="true"/>
    226     </function>
    227 
    228     <function name="GetFramebufferAttachmentParameterivOES"
    229               alias="GetFramebufferAttachmentParameteriv" es1="1.0">
    230         <param name="target" type="GLenum"/>
    231         <param name="attachment" type="GLenum"/>
    232         <param name="pname" type="GLenum"/>
    233         <param name="params" type="GLint *" output="true"/>
    234     </function>
    235 
    236     <function name="GetRenderbufferParameterivOES"
    237               alias="GetRenderbufferParameteriv" es1="1.0">
    238         <param name="target" type="GLenum"/>
    239         <param name="pname" type="GLenum"/>
    240         <param name="params" type="GLint *" output="true"/>
    241     </function>
    242 
    243     <function name="IsFramebufferOES" alias="IsFramebuffer" es1="1.0">
    244         <param name="framebuffer" type="GLuint"/>
    245 	<return type="GLboolean"/>
    246     </function>
    247 
    248     <function name="IsRenderbufferOES" alias="IsRenderbuffer" es1="1.0">
    249         <param name="renderbuffer" type="GLuint"/>
    250 	<return type="GLboolean"/>
    251     </function>
    252 
    253     <function name="RenderbufferStorageOES" alias="RenderbufferStorage"
    254 	      es1="1.0">
    255         <param name="target" type="GLenum"/>
    256         <param name="internalformat" type="GLenum"/>
    257         <param name="width" type="GLsizei"/>
    258         <param name="height" type="GLsizei"/>
    259     </function>
    260 </category>
    261 
    262 <!-- core addition to es1.1 -->
    263 <category name="GL_OES_matrix_get" number="11">
    264     <enum name="MODELVIEW_MATRIX_FLOAT_AS_INT_BITS_OES"   value="0x898D"/>
    265     <enum name="PROJECTION_MATRIX_FLOAT_AS_INT_BITS_OES"  value="0x898E"/>
    266     <enum name="TEXTURE_MATRIX_FLOAT_AS_INT_BITS_OES"	  value="0x898F"/>
    267 </category>
    268 
    269 <!-- optional for es1.1 -->
    270 <category name="GL_OES_matrix_palette" number="12">
    271     <enum name="MAX_VERTEX_UNITS_OES"                     value="0x86A4"/>
    272     <enum name="WEIGHT_ARRAY_TYPE_OES"                    value="0x86A9"/>
    273     <enum name="WEIGHT_ARRAY_STRIDE_OES"                  value="0x86AA"/>
    274     <enum name="WEIGHT_ARRAY_SIZE_OES"                    value="0x86AB"/>
    275     <enum name="WEIGHT_ARRAY_POINTER_OES"                 value="0x86AC"/>
    276     <enum name="WEIGHT_ARRAY_OES"                         value="0x86AD"/>
    277     <enum name="MATRIX_PALETTE_OES"                       value="0x8840"/>
    278     <enum name="MAX_PALETTE_MATRICES_OES"                 value="0x8842"/>
    279     <enum name="CURRENT_PALETTE_MATRIX_OES"               value="0x8843"/>
    280     <enum name="MATRIX_INDEX_ARRAY_OES"                   value="0x8844"/>
    281     <enum name="MATRIX_INDEX_ARRAY_SIZE_OES"              value="0x8846"/>
    282     <enum name="MATRIX_INDEX_ARRAY_TYPE_OES"              value="0x8847"/>
    283     <enum name="MATRIX_INDEX_ARRAY_STRIDE_OES"            value="0x8848"/>
    284     <enum name="MATRIX_INDEX_ARRAY_POINTER_OES"           value="0x8849"/>
    285     <enum name="WEIGHT_ARRAY_BUFFER_BINDING_OES"          value="0x889E"/>
    286     <enum name="MATRIX_INDEX_ARRAY_BUFFER_BINDING_OES"    value="0x8B9E"/>
    287 
    288     <function name="CurrentPaletteMatrixOES" alias="CurrentPaletteMatrixARB"
    289 	      exec="skip">
    290         <param name="matrixpaletteindex" type="GLuint"/>
    291     </function>
    292 
    293     <!-- no offset -->
    294     <function name="LoadPaletteFromModelViewMatrixOES" exec="skip">
    295     </function>
    296 
    297     <function name="MatrixIndexPointerOES" alias="MatrixIndexPointerARB"
    298 	      exec="skip">
    299         <param name="size" type="GLint"/>
    300         <param name="type" type="GLenum"/>
    301         <param name="stride" type="GLsizei"/>
    302         <param name="pointer" type="const GLvoid *"/>
    303     </function>
    304 
    305     <function name="WeightPointerOES" alias="WeightPointerARB" exec="skip">
    306         <param name="size" type="GLint"/>
    307         <param name="type" type="GLenum"/>
    308         <param name="stride" type="GLsizei"/>
    309         <param name="pointer" type="const GLvoid *"/>
    310     </function>
    311 </category>
    312 
    313 <!-- required for es1.1 -->
    314 <category name="GL_OES_point_size_array" number="14">
    315     <enum name="POINT_SIZE_ARRAY_TYPE_OES"                value="0x898A"/>
    316     <enum name="POINT_SIZE_ARRAY_STRIDE_OES"	          value="0x898B"/>
    317     <enum name="POINT_SIZE_ARRAY_POINTER_OES"	          value="0x898C"/>
    318     <enum name="POINT_SIZE_ARRAY_OES"                     value="0x8B9C"/>
    319     <enum name="POINT_SIZE_ARRAY_BUFFER_BINDING_OES"	  value="0x8B9F"/>
    320 
    321     <function name="PointSizePointerOES" es1="1.0" desktop="false">
    322         <param name="type" type="GLenum"/>
    323         <param name="stride" type="GLsizei"/>
    324         <param name="pointer" type="const GLvoid *"/>
    325     </function>
    326 </category>
    327 
    328 <!-- required for es1.1 -->
    329 <category name="GL_OES_point_sprite" number="15">
    330     <enum name="POINT_SPRITE_OES"                         value="0x8861"/>
    331     <enum name="COORD_REPLACE_OES"	                  value="0x8862"/>
    332 </category>
    333 
    334 <!-- optional for es1.0 -->
    335 <category name="GL_OES_query_matrix" number="16">
    336     <function name="QueryMatrixxOES" es1="1.0" desktop="false">
    337         <param name="mantissa" type="GLfixed *" count="16" />
    338         <param name="exponent" type="GLint *" count="16" />
    339 	<return type="GLbitfield"/>
    340     </function>
    341 </category>
    342 
    343 <!-- required for es1.0 and later -->
    344 <!-- 17. GL_OES_read_format -->
    345 
    346 <!-- core addition to es1.0 and later -->
    347 <!-- 18. GL_OES_single_precision -->
    348 
    349 <!-- part of es1.1 extension pack -->
    350 <category name="GL_OES_texture_cube_map" number="20">
    351     <enum name="TEXTURE_GEN_MODE_OES"                     value="0x2500"/>
    352     <enum name="NORMAL_MAP_OES"                           value="0x8511"/>
    353     <enum name="REFLECTION_MAP_OES"                       value="0x8512"/>
    354     <enum name="TEXTURE_CUBE_MAP_OES"                     value="0x8513"/>
    355     <enum name="TEXTURE_BINDING_CUBE_MAP_OES"             value="0x8514"/>
    356     <enum name="TEXTURE_CUBE_MAP_POSITIVE_X_OES"          value="0x8515"/>
    357     <enum name="TEXTURE_CUBE_MAP_NEGATIVE_X_OES"          value="0x8516"/>
    358     <enum name="TEXTURE_CUBE_MAP_POSITIVE_Y_OES"          value="0x8517"/>
    359     <enum name="TEXTURE_CUBE_MAP_NEGATIVE_Y_OES"          value="0x8518"/>
    360     <enum name="TEXTURE_CUBE_MAP_POSITIVE_Z_OES"          value="0x8519"/>
    361     <enum name="TEXTURE_CUBE_MAP_NEGATIVE_Z_OES"          value="0x851A"/>
    362     <enum name="MAX_CUBE_MAP_TEXTURE_SIZE_OES"            value="0x851C"/>
    363     <enum name="TEXTURE_GEN_STR_OES"                      value="0x8D60"/>
    364 
    365     <function name="GetTexGenfvOES" alias="GetTexGenfv" es1="1.0">
    366         <param name="coord" type="GLenum"/>
    367         <param name="pname" type="GLenum"/>
    368         <param name="params" type="GLfloat *" output="true" variable_param="pname"/>
    369     </function>
    370 
    371     <function name="GetTexGenivOES" alias="GetTexGeniv" es1="1.0">
    372         <param name="coord" type="GLenum"/>
    373         <param name="pname" type="GLenum"/>
    374         <param name="params" type="GLint *" output="true" variable_param="pname"/>
    375     </function>
    376 
    377     <function name="TexGenfOES" alias="TexGenf" es1="1.0">
    378         <param name="coord" type="GLenum"/>
    379         <param name="pname" type="GLenum"/>
    380         <param name="param" type="GLfloat"/>
    381     </function>
    382 
    383     <function name="TexGenfvOES" alias="TexGenfv" es1="1.0">
    384         <param name="coord" type="GLenum"/>
    385         <param name="pname" type="GLenum"/>
    386         <param name="params" type="const GLfloat *" variable_param="pname"/>
    387     </function>
    388 
    389     <function name="TexGeniOES" alias="TexGeni" es1="1.0">
    390         <param name="coord" type="GLenum"/>
    391         <param name="pname" type="GLenum"/>
    392         <param name="param" type="GLint"/>
    393     </function>
    394 
    395     <function name="TexGenivOES" alias="TexGeniv" es1="1.0">
    396         <param name="coord" type="GLenum"/>
    397         <param name="pname" type="GLenum"/>
    398         <param name="params" type="const GLint *" variable_param="pname"/>
    399     </function>
    400 </category>
    401 
    402 <category name="GL_OES_texture_env_crossbar" number="21">
    403     <!-- No new functions, types, enums. -->
    404 </category>
    405 
    406 <category name="GL_OES_texture_mirrored_repeat" number="22">
    407     <!-- No new functions, types, enums. -->
    408 </category>
    409 
    410 <!-- 23. GL_OES_EGL_image -->
    411 
    412 <category name="GL_OES_depth24" number="24">
    413     <enum name="DEPTH_COMPONENT24_OES"                    value="0x81A6"/>
    414 </category>
    415 
    416 <category name="GL_OES_depth32" number="25">
    417     <enum name="DEPTH_COMPONENT32_OES"                    value="0x81A7"/>
    418 </category>
    419 
    420 <!-- 26. GL_OES_element_index_uint -->
    421 
    422 <!-- 27. GL_OES_fbo_render_mipmap -->
    423 
    424 <category name="GL_OES_mapbuffer" number="29">
    425     <enum name="WRITE_ONLY_OES"                           value="0x88B9"/>
    426     <enum name="BUFFER_ACCESS_OES"                        value="0x88BB"/>
    427     <enum name="BUFFER_MAPPED_OES"                        value="0x88BC"/>
    428     <enum name="BUFFER_MAP_POINTER_OES"                   value="0x88BD"/>
    429 
    430     <function name="GetBufferPointervOES" alias="GetBufferPointerv"
    431 	      es1="1.0" es2="2.0">
    432         <param name="target" type="GLenum"/>
    433         <param name="pname" type="GLenum"/>
    434         <param name="params" type="GLvoid **"/>
    435     </function>
    436 
    437     <function name="MapBufferOES" alias="MapBuffer" es1="1.0" es2="2.0">
    438         <param name="target" type="GLenum"/>
    439         <param name="access" type="GLenum"/>
    440 	<return type="GLvoid *"/>
    441     </function>
    442 
    443     <function name="UnmapBufferOES" alias="UnmapBuffer" es1="1.0" es2="2.0">
    444         <param name="target" type="GLenum"/>
    445 	<return type="GLboolean"/>
    446     </function>
    447 </category>
    448 
    449 <category name="GL_OES_rgb8_rgba8" number="30">
    450     <enum name="RGB8_OES"                                 value="0x8051"/>
    451     <enum name="RGBA8_OES"                                value="0x8058"/>
    452 </category>
    453 
    454 <category name="GL_OES_stencil1" number="31">
    455     <enum name="STENCIL_INDEX1_OES"                       value="0x8D46"/>
    456 </category>
    457 
    458 <category name="GL_OES_stencil4" number="32">
    459     <enum name="STENCIL_INDEX4_OES"                       value="0x8D47"/>
    460 </category>
    461 
    462 <category name="GL_OES_stencil8" number="33">
    463     <enum name="STENCIL_INDEX8_OES"                       value="0x8D48"/>
    464 </category>
    465 
    466 <category name="GL_OES_texture_3D" number="34">
    467     <enum name="TEXTURE_BINDING_3D_OES"                   value="0x806A"/>
    468     <enum name="TEXTURE_3D_OES"                           value="0x806F"/>
    469     <enum name="TEXTURE_WRAP_R_OES"                       value="0x8072"/>
    470     <enum name="MAX_3D_TEXTURE_SIZE_OES"                  value="0x8073"/>
    471     <enum name="SAMPLER_3D_OES"                           value="0x8B5F"/>
    472     <enum name="FRAMEBUFFER_ATTACHMENT_TEXTURE_3D_ZOFFSET_OES" value="0x8CD4"/>
    473 
    474     <function name="CompressedTexImage3DOES" alias="CompressedTexImage3D"
    475 	      es2="2.0">
    476         <param name="target" type="GLenum"/>
    477         <param name="level" type="GLint"/>
    478         <param name="internalformat" type="GLenum"/>
    479         <param name="width" type="GLsizei"/>
    480         <param name="height" type="GLsizei"/>
    481         <param name="depth" type="GLsizei"/>
    482         <param name="border" type="GLint"/>
    483         <param name="imageSize" type="GLsizei" counter="true"/>
    484         <param name="data" type="const GLvoid *" count="imageSize"/>
    485     </function>
    486 
    487     <function name="CompressedTexSubImage3DOES"
    488               alias="CompressedTexSubImage3D" es2="2.0">
    489         <param name="target" type="GLenum"/>
    490         <param name="level" type="GLint"/>
    491         <param name="xoffset" type="GLint"/>
    492         <param name="yoffset" type="GLint"/>
    493         <param name="zoffset" type="GLint"/>
    494         <param name="width" type="GLsizei"/>
    495         <param name="height" type="GLsizei"/>
    496         <param name="depth" type="GLsizei"/>
    497         <param name="format" type="GLenum"/>
    498         <param name="imageSize" type="GLsizei" counter="true"/>
    499         <param name="data" type="const GLvoid *" count="imageSize"/>
    500     </function>
    501 
    502     <function name="CopyTexSubImage3DOES" alias="CopyTexSubImage3D" es2="2.0">
    503         <param name="target" type="GLenum"/>
    504         <param name="level" type="GLint"/>
    505         <param name="xoffset" type="GLint"/>
    506         <param name="yoffset" type="GLint"/>
    507         <param name="zoffset" type="GLint"/>
    508         <param name="x" type="GLint"/>
    509         <param name="y" type="GLint"/>
    510         <param name="width" type="GLsizei"/>
    511         <param name="height" type="GLsizei"/>
    512     </function>
    513 
    514     <function name="FramebufferTexture3DOES" alias="FramebufferTexture3D"
    515 	      es2="2.0">
    516         <param name="target" type="GLenum"/>
    517         <param name="attachment" type="GLenum"/>
    518         <param name="textarget" type="GLenum"/>
    519         <param name="texture" type="GLuint"/>
    520         <param name="level" type="GLint"/>
    521         <param name="zoffset" type="GLint"/>
    522     </function>
    523 
    524     <function name="TexImage3DOES" alias="TexImage3D" es2="2.0">
    525         <param name="target" type="GLenum"/>
    526         <param name="level" type="GLint"/>
    527         <param name="internalformat" type="GLenum"/>
    528         <param name="width" type="GLsizei"/>
    529         <param name="height" type="GLsizei"/>
    530         <param name="depth" type="GLsizei"/>
    531         <param name="border" type="GLint"/>
    532         <param name="format" type="GLenum"/>
    533         <param name="type" type="GLenum"/>
    534         <param name="pixels" type="const GLvoid *" img_width="width" img_height="height" img_depth="depth" img_format="format" img_type="type" img_target="target" img_null_flag="true" img_pad_dimensions="true"/>
    535     </function>
    536 
    537     <function name="TexSubImage3DOES" alias="TexSubImage3D" es2="2.0">
    538         <param name="target" type="GLenum"/>
    539         <param name="level" type="GLint"/>
    540         <param name="xoffset" type="GLint"/>
    541         <param name="yoffset" type="GLint"/>
    542         <param name="zoffset" type="GLint"/>
    543         <param name="width" type="GLsizei"/>
    544         <param name="height" type="GLsizei"/>
    545         <param name="depth" type="GLsizei"/>
    546         <param name="format" type="GLenum"/>
    547         <param name="type" type="GLenum"/>
    548         <param name="UNUSED" type="GLuint" padding="true"/>
    549         <param name="pixels" type="const GLvoid *" img_width="width" img_height="height" img_depth="depth" img_xoff="xoffset" img_yoff="yoffset" img_zoff="zoffset" img_format="format" img_type="type" img_target="target" img_pad_dimensions="true"/>
    550     </function>
    551 </category>
    552 
    553 <!-- the other name is OES_texture_float_linear -->
    554 <!-- 35. GL_OES_texture_half_float_linear -->
    555 
    556 <!-- the other name is OES_texture_float -->
    557 <category name="GL_OES_texture_half_float" number="36">
    558     <enum name="HALF_FLOAT_OES"                           value="0x8D61"/>
    559 </category>
    560 
    561 <!-- 37. GL_OES_texture_npot -->
    562 
    563 <category name="GL_OES_vertex_half_float" number="38">
    564     <enum name="HALF_FLOAT_OES"                           value="0x8D61"/>
    565 </category>
    566 
    567 <!-- 41. GL_EXT_texture_filter_anisotropic -->
    568 
    569 <category name="GL_EXT_texture_type_2_10_10_10_REV" number="42">
    570     <enum name="UNSIGNED_INT_2_10_10_10_REV_EXT"          value="0x8368"/>
    571 </category>
    572 
    573 <category name="GL_OES_packed_depth_stencil" number="43">
    574     <enum name="DEPTH_STENCIL_OES"                        value="0x84F9"/>
    575     <enum name="UNSIGNED_INT_24_8_OES"                    value="0x84FA"/>
    576     <enum name="DEPTH24_STENCIL8_OES"                     value="0x88F0"/>
    577 </category>
    578 
    579 <!-- 44. GL_OES_depth_texture -->
    580 
    581 <category name="GL_OES_standard_derivatives" number="45">
    582     <enum name="FRAGMENT_SHADER_DERIVATIVE_HINT_OES"      value="0x8B8B"/>
    583 </category>
    584 
    585 <category name="GL_OES_vertex_type_10_10_10_2" number="46">
    586     <enum name="UNSIGNED_INT_10_10_10_2_OES"              value="0x8DF6"/>
    587     <enum name="INT_10_10_10_2_OES"                       value="0x8DF7"/>
    588 </category>
    589 
    590 <category name="GL_OES_get_program_binary" number="47">
    591     <enum name="PROGRAM_BINARY_LENGTH_OES"                value="0x8741"/>
    592     <enum name="NUM_PROGRAM_BINARY_FORMATS_OES"           value="0x87FE"/>
    593     <enum name="PROGRAM_BINARY_FORMATS_OES"               value="0x87FF"/>
    594 
    595     <function name="GetProgramBinaryOES" alias="GetProgramBinary" es2="2.0">
    596         <param name="program" type="GLuint"/>
    597         <param name="bufSize" type="GLsizei"/>
    598         <param name="length" type="GLsizei *"/>
    599         <param name="binaryFormat" type="GLenum *"/>
    600         <param name="binary" type="GLvoid *"/>
    601     </function>
    602 
    603     <function name="ProgramBinaryOES" alias="ProgramBinary" es2="2.0">
    604         <param name="program" type="GLuint"/>
    605         <param name="binaryFormat" type="GLenum"/>
    606         <param name="binary" type="const GLvoid *"/>
    607         <param name="length" type="GLint"/>
    608     </function>
    609 </category>
    610 
    611 <category name="GL_EXT_texture_compression_dxt1" number="49">
    612     <enum name="COMPRESSED_RGB_S3TC_DXT1_EXT"             value="0x83F0"/>
    613     <enum name="COMPRESSED_RGBA_S3TC_DXT1_EXT"            value="0x83F1"/>
    614 </category>
    615 
    616 <category name="GL_EXT_texture_format_BGRA8888" number="51">
    617     <enum name="BGRA_EXT"                                 value="0x80E1"/>
    618 </category>
    619 
    620 <category name="GL_EXT_texture_lod_bias" number="60">
    621     <enum name="TEXTURE_FILTER_CONTROL_EXT"               value="0x8500"/>
    622     <enum name="TEXTURE_LOD_BIAS_EXT"                     value="0x8501"/>
    623     <enum name="MAX_TEXTURE_LOD_BIAS_EXT"                 value="0x84FD"/>
    624 </category>
    625 
    626 <!-- 64. GL_EXT_discard_framebuffer -->
    627 
    628 <category name="GL_EXT_discard_framebuffer" number="64">
    629     <function name="DiscardFramebufferEXT" es1="1.0" es2="2.0" desktop="false">
    630         <param name="target" type="GLenum"/>
    631         <param name="numAttachments" type="GLsizei"/>
    632         <param name="attachments" type="const GLenum *" count="numAttachments"/>
    633     </function>
    634     <enum name="COLOR_EXT"                                value="0x1800"/>
    635     <enum name="DEPTH_EXT"                                value="0x1801"/>
    636     <enum name="STENCIL_EXT"                              value="0x1802"/>
    637 </category>
    638 
    639 <!-- 65. GL_EXT_blend_minmax -->
    640 
    641 <category name="GL_EXT_read_format_bgra" number="66">
    642     <enum name="BGRA_EXT"                                 value="0x80E1"/>
    643     <enum name="UNSIGNED_SHORT_4_4_4_4_REV_EXT"           value="0x8365"/>
    644     <enum name="UNSIGNED_SHORT_1_5_5_5_REV_EXT"           value="0x8366"/>
    645 </category>
    646 
    647 <!-- 69. GL_EXT_multi_draw_arrays -->
    648 
    649 <!-- 71. GL_OES_vertex_array_object -->
    650 <category name="GL_OES_vertex_array_object" number="71">
    651     <function name="BindVertexArrayOES" alias="BindVertexArray" es2="2.0">
    652         <param name="array" type="GLuint"/>
    653     </function>
    654 
    655     <function name="DeleteVertexArraysOES" alias="DeleteVertexArrays" es2="2.0">
    656         <param name="n" type="GLsizei"/>
    657         <param name="arrays" type="const GLuint *" count="n"/>
    658     </function>
    659 
    660     <function name="GenVertexArraysOES" alias="GenVertexArrays" es2="2.0">
    661         <param name="n" type="GLsizei"/>
    662         <param name="arrays" type="GLuint *" output="true" count="n"/>
    663     </function>
    664 
    665     <function name="IsVertexArrayOES" alias="IsVertexArray" es2="2.0">
    666         <param name="array" type="GLuint"/>
    667         <return type="GLboolean"/>
    668     </function>
    669 
    670     <enum name="VERTEX_ARRAY_BINDING_OES"      count="1"  value="0x85B5">
    671         <size name="Get" mode="get"/>
    672     </enum>
    673 </category>
    674 
    675 <!-- 87. GL_OES_EGL_image_external -->
    676 <category name="GL_OES_EGL_image_external" number="87">
    677     <enum name="TEXTURE_EXTERNAL_OES"                     value="0x8D65"/>
    678     <enum name="SAMPLER_EXTERNAL_OES"                     value="0x8D66"/>
    679     <enum name="TEXTURE_BINDING_EXTERNAL_OES"             value="0x8D67"/>
    680     <enum name="REQUIRED_TEXTURE_IMAGE_UNITS_OES"         value="0x8D68"/>
    681 </category>
    682 
    683 <!--
    684     This extension serves a similar purpose to ARB_draw_buffers except
    685     that this is for OpenGL ES 2.0.
    686 -->
    687 <category name="GL_NV_draw_buffers" number="91">
    688     <enum name="MAX_DRAW_BUFFERS_NV"           count="1"  value="0x8824">
    689         <size name="Get" mode="get"/>
    690     </enum>
    691     <enum name="DRAW_BUFFER0_NV"               count="1"  value="0x8825">
    692         <size name="Get" mode="get"/>
    693     </enum>
    694     <enum name="DRAW_BUFFER1_NV"               count="1"  value="0x8826">
    695         <size name="Get" mode="get"/>
    696     </enum>
    697     <enum name="DRAW_BUFFER2_NV"               count="1"  value="0x8827">
    698         <size name="Get" mode="get"/>
    699     </enum>
    700     <enum name="DRAW_BUFFER3_NV"               count="1"  value="0x8828">
    701         <size name="Get" mode="get"/>
    702     </enum>
    703     <enum name="DRAW_BUFFER4_NV"               count="1"  value="0x8829">
    704         <size name="Get" mode="get"/>
    705     </enum>
    706     <enum name="DRAW_BUFFER5_NV"               count="1"  value="0x882A">
    707         <size name="Get" mode="get"/>
    708     </enum>
    709     <enum name="DRAW_BUFFER6_NV"               count="1"  value="0x882B">
    710         <size name="Get" mode="get"/>
    711     </enum>
    712     <enum name="DRAW_BUFFER7_NV"               count="1"  value="0x882C">
    713         <size name="Get" mode="get"/>
    714     </enum>
    715     <enum name="DRAW_BUFFER8_NV"               count="1"  value="0x882D">
    716         <size name="Get" mode="get"/>
    717     </enum>
    718     <enum name="DRAW_BUFFER9_NV"               count="1"  value="0x882E">
    719         <size name="Get" mode="get"/>
    720     </enum>
    721     <enum name="DRAW_BUFFER10_NV"              count="1"  value="0x882F">
    722         <size name="Get" mode="get"/>
    723     </enum>
    724     <enum name="DRAW_BUFFER11_NV"              count="1"  value="0x8830">
    725         <size name="Get" mode="get"/>
    726     </enum>
    727     <enum name="DRAW_BUFFER12_NV"              count="1"  value="0x8831">
    728         <size name="Get" mode="get"/>
    729     </enum>
    730     <enum name="DRAW_BUFFER13_NV"              count="1"  value="0x8832">
    731         <size name="Get" mode="get"/>
    732     </enum>
    733     <enum name="DRAW_BUFFER14_NV"              count="1"  value="0x8833">
    734         <size name="Get" mode="get"/>
    735     </enum>
    736     <enum name="DRAW_BUFFER15_NV"              count="1"  value="0x8834">
    737         <size name="Get" mode="get"/>
    738     </enum>
    739 
    740     <function name="DrawBuffersNV" alias="DrawBuffers" es2="2.0">
    741         <param name="n" type="GLsizei" counter="true"/>
    742         <param name="bufs" type="const GLenum *" count="n"/>
    743     </function>
    744 </category>
    745 
    746 <!-- 93. GL_NV_read_buffer -->
    747 <category name="GL_NV_read_buffer">
    748     <function name="ReadBufferNV" alias="ReadBuffer" es2="2.0">
    749         <param name="mode" type="GLenum"/>
    750     </function>
    751 </category>
    752 
    753 <!-- 103. GL_EXT_texture_rg -->
    754 <category name="GL_EXT_texture_rg" number="103">
    755     <enum name="RED_EXT"                                  value="0x1903"/>
    756     <enum name="RG_EXT"                                   value="0x8227"/>
    757     <enum name="R8_EXT"                                   value="0x8229"/>
    758     <enum name="RG8_EXT"                                  value="0x822B"/>
    759 </category>
    760 
    761 <!-- 111. GL_ANGLE_texture_compression_dxt -->
    762 <category name="GL_ANGLE_texture_compression_dxt" number="111">
    763     <enum name="COMPRESSED_RGBA_S3TC_DXT3_ANGLE"        value="0x83F2"/>
    764     <enum name="COMPRESSED_RGBA_S3TC_DXT5_ANGLE"        value="0x83F3"/>
    765 </category>
    766 
    767 <!-- 121. GL_EXT_map_buffer_range -->
    768 <category name="GL_EXT_map_buffer_range" number="121">
    769     <enum name="MAP_READ_BIT_EXT"                         value="0x0001"/>
    770     <enum name="MAP_WRITE_BIT_EXT"                        value="0x0002"/>
    771     <enum name="MAP_INVALIDATE_RANGE_BIT_EXT"             value="0x0004"/>
    772     <enum name="MAP_INVALIDATE_BUFFER_BIT_EXT"            value="0x0008"/>
    773     <enum name="MAP_FLUSH_EXPLICIT_BIT_EXT"               value="0x0010"/>
    774     <enum name="MAP_UNSYNCHRONIZED_BIT_EXT"               value="0x0020"/>
    775 
    776     <function name="MapBufferRangeEXT" alias="MapBufferRange"
    777 	      es1="1.0" es2="2.0">
    778         <param name="target" type="GLenum"/>
    779         <param name="offset" type="GLintptr"/>
    780         <param name="size" type="GLsizeiptr"/>
    781         <param name="length" type="GLbitfield"/>
    782         <return type="GLvoid *"/>
    783     </function>
    784 
    785     <function name="FlushMappedBufferRangeEXT" alias="FlushMappedBufferRange"
    786 	      es1="1.0" es2="2.0">
    787         <param name="target" type="GLenum"/>
    788         <param name="offset" type="GLintptr"/>
    789         <param name="length" type="GLsizeiptr"/>
    790     </function>
    791 </category>
    792 
    793 <!-- 122. GL_EXT_shader_framebuffer_fetch -->
    794 <category name="GL_EXT_shader_framebuffer_fetch" number="122">
    795     <enum name="FRAGMENT_SHADER_DISCARDS_SAMPLES_EXT" value="0x8A52"/>
    796 </category>
    797 
    798 <!-- 151. GL_EXT_draw_buffers -->
    799 <category name="GL_EXT_draw_buffers" number="151">
    800     <function name="DrawBuffersEXT" alias="DrawBuffers" es2="2.0">
    801         <param name="n" type="GLsizei" counter="true"/>
    802         <param name="bufs" type="const GLenum *" count="n"/>
    803     </function>
    804 </category>
    805 
    806 <category name="GL_OES_sample_shading" number="169">
    807     <function name="MinSampleShadingOES" alias="MinSampleShading" es2="3.0">
    808         <param name="value" type="GLfloat"/>
    809     </function>
    810 </category>
    811 
    812 <!-- 174. GL_OES_texture_storage_multisample_2d_array -->
    813 <category name="GL_OES_texture_storage_multisample_2d_array" number="174">
    814     <enum name="TEXTURE_2D_MULTISAMPLE_ARRAY_OES"              value="0x9102"/>
    815     <enum name="TEXTURE_BINDING_2D_MULTISAMPLE_ARRAY_OES"      value="0x9105"/>
    816     <enum name="SAMPLER_2D_MULTISAMPLE_ARRAY_OES"              value="0x910B"/>
    817     <enum name="INT_SAMPLER_2D_MULTISAMPLE_ARRAY_OES"          value="0x910C"/>
    818     <enum name="UNSIGNED_INT_SAMPLER_2D_MULTISAMPLE_ARRAY_OES" value="0x910D"/>
    819 
    820     <function name="TexStorage3DMultisampleOES" alias="TexStorage3DMultisample" es2="3.1">
    821         <param name="target" type="GLenum"/>
    822         <param name="samples" type="GLsizei"/>
    823         <param name="internalformat" type="GLenum"/>
    824         <param name="width" type="GLsizei"/>
    825         <param name="height" type="GLsizei"/>
    826         <param name="depth" type="GLsizei"/>
    827         <param name="fixedsamplelocations" type="GLboolean"/>
    828     </function>
    829 </category>
    830 
    831 <category name="GL_EXT_draw_buffers_indexed" number="176">
    832 
    833   <function name="BlendFunciEXT" alias="BlendFunciARB" es2="3.0">
    834     <param name="buf" type="GLuint"/>
    835     <param name="sfactor" type="GLenum"/>
    836     <param name="dfactor" type="GLenum"/>
    837   </function>
    838 
    839   <function name="BlendFuncSeparateiEXT" alias="BlendFuncSeparateiARB" es2="3.0">
    840     <param name="buf" type="GLuint"/>
    841     <param name="sfactorRGB" type="GLenum"/>
    842     <param name="dfactorRGB" type="GLenum"/>
    843     <param name="sfactorAlpha" type="GLenum"/>
    844     <param name="dfactorAlpha" type="GLenum"/>
    845   </function>
    846 
    847   <function name="BlendEquationiEXT" alias="BlendEquationiARB" es2="3.0">
    848     <param name="buf" type="GLuint"/>
    849     <param name="mode" type="GLenum"/>
    850   </function>
    851 
    852   <function name="BlendEquationSeparateiEXT" alias="BlendEquationSeparateiARB" es2="3.0">
    853     <param name="buf" type="GLuint"/>
    854     <param name="modeRGB" type="GLenum"/>
    855     <param name="modeA" type="GLenum"/>
    856   </function>
    857 
    858   <function name="ColorMaskiEXT" alias="ColorMaski" es2="3.0">
    859     <param name="buf" type="GLuint"/>
    860     <param name="r" type="GLboolean"/>
    861     <param name="g" type="GLboolean"/>
    862     <param name="b" type="GLboolean"/>
    863     <param name="a" type="GLboolean"/>
    864   </function>
    865 
    866   <function name="EnableiEXT" alias="Enablei" es2="3.0">
    867     <param name="target" type="GLenum"/>
    868     <param name="index" type="GLuint"/>
    869   </function>
    870 
    871   <function name="DisableiEXT" alias="Disablei" es2="3.0">
    872     <param name="target" type="GLenum"/>
    873     <param name="index" type="GLuint"/>
    874   </function>
    875 
    876   <function name="IsEnablediEXT" alias="IsEnabledi" es2="3.0">
    877     <param name="target" type="GLenum"/>
    878     <param name="index" type="GLuint"/>
    879     <return type="GLboolean"/>
    880   </function>
    881 
    882 </category>
    883 
    884 <category name="GL_EXT_geometry_shader" number="177">
    885     <!-- The rest of the bits for this are below in OES_geometry_shader. -->
    886     <function name="FramebufferTextureEXT" alias="FramebufferTexture" es2="3.1">
    887         <param name="target" type="GLenum"/>
    888         <param name="attachment" type="GLenum"/>
    889         <param name="texture" type="GLuint"/>
    890         <param name="level" type="GLint"/>
    891     </function>
    892 </category>
    893 
    894 <category name="GL_EXT_texture_border_clamp" number="182">
    895 
    896     <!-- The *TexParameter* functions are added in EXT_texture_integer -->
    897 
    898     <function name="SamplerParameterIivEXT" es2="3.0" alias="SamplerParameterIiv">
    899       <param name="sampler" type="GLuint"/>
    900       <param name="pname" type="GLenum"/>
    901       <param name="params" type="const GLint *"/>
    902     </function>
    903 
    904     <function name="SamplerParameterIuivEXT" es2="3.0" alias="SamplerParameterIuiv">
    905       <param name="sampler" type="GLuint"/>
    906       <param name="pname" type="GLenum"/>
    907       <param name="params" type="const GLuint *"/>
    908     </function>
    909 
    910     <function name="GetSamplerParameterIivEXT" es2="3.0" alias="GetSamplerParameterIiv">
    911       <param name="sampler" type="GLuint"/>
    912       <param name="pname" type="GLenum"/>
    913       <param name="params" type="GLint *"/>
    914     </function>
    915 
    916     <function name="GetSamplerParameterIuivEXT" es2="3.0" alias="GetSamplerParameterIuiv">
    917       <param name="sampler" type="GLuint"/>
    918       <param name="pname" type="GLenum"/>
    919       <param name="params" type="GLuint *"/>
    920     </function>
    921 
    922 </category>
    923 
    924 <category name="GL_EXT_texture_buffer" number="183">
    925 
    926     <function name="TexBufferEXT" es2="3.1" alias="TexBuffer">
    927         <param name="target" type="GLenum"/>
    928         <param name="internalFormat" type="GLenum"/>
    929         <param name="buffer" type="GLuint"/>
    930     </function>
    931 
    932     <function name="TexBufferRangeEXT" es2="3.1" alias="TexBufferRange">
    933         <param name="target" type="GLenum"/>
    934         <param name="internalformat" type="GLenum"/>
    935         <param name="buffer" type="GLuint"/>
    936         <param name="offset" type="GLintptr"/>
    937         <param name="size" type="GLsizeiptr"/>
    938     </function>
    939 
    940 </category>
    941 
    942 <category name="GL_EXT_primitive_bounding_box" number="187">
    943 
    944     <function name="PrimitiveBoundingBoxEXT" es2="3.1" alias="PrimitiveBoundingBox">
    945         <param name="minX" type="GLfloat"/>
    946         <param name="minY" type="GLfloat"/>
    947         <param name="minZ" type="GLfloat"/>
    948         <param name="minW" type="GLfloat"/>
    949         <param name="maxX" type="GLfloat"/>
    950         <param name="maxY" type="GLfloat"/>
    951         <param name="maxZ" type="GLfloat"/>
    952         <param name="maxW" type="GLfloat"/>
    953     </function>
    954 
    955 </category>
    956 
    957 <xi:include href="KHR_robustness_es.xml" xmlns:xi="http://www.w3.org/2001/XInclude"/>
    958 
    959 <category name="GL_EXT_base_instance" number="203">
    960 
    961   <function name="DrawArraysInstancedBaseInstanceEXT" es2="3.0"
    962             alias="DrawArraysInstancedBaseInstance">
    963     <param name="mode" type="GLenum"/>
    964     <param name="first" type="GLint"/>
    965     <param name="count" type="GLsizei"/>
    966     <param name="instancecount" type="GLsizei"/>
    967     <param name="baseinstance" type="GLuint"/>
    968   </function>
    969 
    970   <function name="DrawElementsInstancedBaseInstanceEXT" es2="3.0"
    971             alias="DrawElementsInstancedBaseInstance">
    972     <param name="mode" type="GLenum"/>
    973     <param name="count" type="GLsizei"/>
    974     <param name="type" type="GLenum"/>
    975     <param name="indices" type="const GLvoid *"/>
    976     <param name="instancecount" type="GLsizei"/>
    977     <param name="baseinstance" type="GLuint"/>
    978   </function>
    979 
    980   <function name="DrawElementsInstancedBaseVertexBaseInstanceEXT" es2="3.0"
    981             alias="DrawElementsInstancedBaseVertexBaseInstance">
    982     <param name="mode" type="GLenum"/>
    983     <param name="count" type="GLsizei"/>
    984     <param name="type" type="GLenum"/>
    985     <param name="indices" type="const GLvoid *"/>
    986     <param name="instancecount" type="GLsizei"/>
    987     <param name="basevertex" type="GLint"/>
    988     <param name="baseinstance" type="GLuint"/>
    989   </function>
    990 
    991 </category>
    992 
    993 <category name="GL_EXT_draw_elements_base_vertex" number="204">
    994 
    995     <function name="DrawElementsBaseVertexEXT" alias="DrawElementsBaseVertex"
    996               es2="2.0" exec="dynamic">
    997         <param name="mode" type="GLenum"/>
    998         <param name="count" type="GLsizei"/>
    999         <param name="type" type="GLenum"/>
   1000         <param name="indices" type="const GLvoid *"/>
   1001         <param name="basevertex" type="GLint"/>
   1002     </function>
   1003 
   1004     <function name="DrawRangeElementsBaseVertexEXT" alias="DrawRangeElementsBaseVertex"
   1005               es2="3.0" exec="dynamic">
   1006         <param name="mode" type="GLenum"/>
   1007         <param name="start" type="GLuint"/>
   1008         <param name="end" type="GLuint"/>
   1009         <param name="count" type="GLsizei"/>
   1010         <param name="type" type="GLenum"/>
   1011         <param name="indices" type="const GLvoid *"/>
   1012         <param name="basevertex" type="GLint"/>
   1013     </function>
   1014 
   1015     <function name="MultiDrawElementsBaseVertexEXT" alias="MultiDrawElementsBaseVertex"
   1016               es2="2.0" exec="dynamic">
   1017         <param name="mode" type="GLenum"/>
   1018         <param name="count" type="const GLsizei *"/>
   1019         <param name="type" type="GLenum"/>
   1020         <param name="indices" type="const GLvoid * const *"/>
   1021         <param name="primcount" type="GLsizei"/>
   1022         <param name="basevertex" type="const GLint *"/>
   1023     </function>
   1024 
   1025     <function name="DrawElementsInstancedBaseVertexEXT" alias="DrawElementsInstancedBaseVertex"
   1026               es2="3.0" exec="dynamic">
   1027         <param name="mode" type="GLenum"/>
   1028         <param name="count" type="GLsizei"/>
   1029         <param name="type" type="GLenum"/>
   1030         <param name="indices" type="const GLvoid *"/>
   1031         <param name="primcount" type="GLsizei"/>
   1032         <param name="basevertex" type="GLint"/>
   1033     </function>
   1034 
   1035 </category>
   1036 
   1037 <category name="GL_EXT_copy_image" number="208">
   1038 
   1039     <function name="CopyImageSubDataEXT" alias="CopyImageSubData" es2="3.0">
   1040         <param name="srcName" type="GLuint"/>
   1041         <param name="srcTarget" type="GLenum"/>
   1042         <param name="srcLevel" type="GLint"/>
   1043         <param name="srcX" type="GLint"/>
   1044         <param name="srcY" type="GLint"/>
   1045         <param name="srcZ" type="GLint"/>
   1046         <param name="dstName" type="GLuint"/>
   1047         <param name="dstTarget" type="GLenum"/>
   1048         <param name="dstLevel" type="GLint"/>
   1049         <param name="dstX" type="GLint"/>
   1050         <param name="dstY" type="GLint"/>
   1051         <param name="dstZ" type="GLint"/>
   1052         <param name="srcWidth" type="GLsizei"/>
   1053         <param name="srcHeight" type="GLsizei"/>
   1054         <param name="srcDepth" type="GLsizei"/>
   1055     </function>
   1056 
   1057 </category>
   1058 
   1059 <category name="GL_OES_draw_buffers_indexed" number="209">
   1060 
   1061   <function name="BlendFunciOES" alias="BlendFunciARB" es2="3.0">
   1062     <param name="buf" type="GLuint"/>
   1063     <param name="sfactor" type="GLenum"/>
   1064     <param name="dfactor" type="GLenum"/>
   1065   </function>
   1066 
   1067   <function name="BlendFuncSeparateiOES" alias="BlendFuncSeparateiARB" es2="3.0">
   1068     <param name="buf" type="GLuint"/>
   1069     <param name="sfactorRGB" type="GLenum"/>
   1070     <param name="dfactorRGB" type="GLenum"/>
   1071     <param name="sfactorAlpha" type="GLenum"/>
   1072     <param name="dfactorAlpha" type="GLenum"/>
   1073   </function>
   1074 
   1075   <function name="BlendEquationiOES" alias="BlendEquationiARB" es2="3.0">
   1076     <param name="buf" type="GLuint"/>
   1077     <param name="mode" type="GLenum"/>
   1078   </function>
   1079 
   1080   <function name="BlendEquationSeparateiOES" alias="BlendEquationSeparateiARB" es2="3.0">
   1081     <param name="buf" type="GLuint"/>
   1082     <param name="modeRGB" type="GLenum"/>
   1083     <param name="modeA" type="GLenum"/>
   1084   </function>
   1085 
   1086   <function name="ColorMaskiOES" alias="ColorMaski" es2="3.0">
   1087     <param name="buf" type="GLuint"/>
   1088     <param name="r" type="GLboolean"/>
   1089     <param name="g" type="GLboolean"/>
   1090     <param name="b" type="GLboolean"/>
   1091     <param name="a" type="GLboolean"/>
   1092   </function>
   1093 
   1094   <function name="EnableiOES" alias="Enablei" es2="3.0">
   1095     <param name="target" type="GLenum"/>
   1096     <param name="index" type="GLuint"/>
   1097   </function>
   1098 
   1099   <function name="DisableiOES" alias="Disablei" es2="3.0">
   1100     <param name="target" type="GLenum"/>
   1101     <param name="index" type="GLuint"/>
   1102   </function>
   1103 
   1104   <function name="IsEnablediOES" alias="IsEnabledi" es2="3.0">
   1105     <param name="target" type="GLenum"/>
   1106     <param name="index" type="GLuint"/>
   1107     <return type="GLboolean"/>
   1108   </function>
   1109 
   1110 </category>
   1111 
   1112 <category name="GL_EXT_primitive_bounding_box" number="212">
   1113 
   1114     <function name="PrimitiveBoundingBoxOES" es2="3.1" alias="PrimitiveBoundingBox">
   1115         <param name="minX" type="GLfloat"/>
   1116         <param name="minY" type="GLfloat"/>
   1117         <param name="minZ" type="GLfloat"/>
   1118         <param name="minW" type="GLfloat"/>
   1119         <param name="maxX" type="GLfloat"/>
   1120         <param name="maxY" type="GLfloat"/>
   1121         <param name="maxZ" type="GLfloat"/>
   1122         <param name="maxW" type="GLfloat"/>
   1123     </function>
   1124 
   1125 </category>
   1126 
   1127 <category name="GL_OES_texture_buffer" number="216">
   1128 
   1129     <function name="TexBufferOES" es2="3.1" alias="TexBuffer">
   1130         <param name="target" type="GLenum"/>
   1131         <param name="internalFormat" type="GLenum"/>
   1132         <param name="buffer" type="GLuint"/>
   1133     </function>
   1134 
   1135     <function name="TexBufferRangeOES" es2="3.1" alias="TexBufferRange">
   1136         <param name="target" type="GLenum"/>
   1137         <param name="internalformat" type="GLenum"/>
   1138         <param name="buffer" type="GLuint"/>
   1139         <param name="offset" type="GLintptr"/>
   1140         <param name="size" type="GLsizeiptr"/>
   1141     </function>
   1142 
   1143 </category>
   1144 
   1145 <category name="GL_OES_draw_elements_base_vertex" number="219">
   1146 
   1147     <function name="DrawElementsBaseVertexOES" alias="DrawElementsBaseVertex"
   1148               es2="2.0" exec="dynamic">
   1149         <param name="mode" type="GLenum"/>
   1150         <param name="count" type="GLsizei"/>
   1151         <param name="type" type="GLenum"/>
   1152         <param name="indices" type="const GLvoid *"/>
   1153         <param name="basevertex" type="GLint"/>
   1154     </function>
   1155 
   1156     <function name="DrawRangeElementsBaseVertexOES" alias="DrawRangeElementsBaseVertex"
   1157               es2="3.0" exec="dynamic">
   1158         <param name="mode" type="GLenum"/>
   1159         <param name="start" type="GLuint"/>
   1160         <param name="end" type="GLuint"/>
   1161         <param name="count" type="GLsizei"/>
   1162         <param name="type" type="GLenum"/>
   1163         <param name="indices" type="const GLvoid *"/>
   1164         <param name="basevertex" type="GLint"/>
   1165     </function>
   1166 
   1167     <function name="MultiDrawElementsBaseVertexOES" alias="MultiDrawElementsBaseVertex"
   1168               es2="2.0" exec="dynamic">
   1169         <param name="mode" type="GLenum"/>
   1170         <param name="count" type="const GLsizei *"/>
   1171         <param name="type" type="GLenum"/>
   1172         <param name="indices" type="const GLvoid * const *"/>
   1173         <param name="primcount" type="GLsizei"/>
   1174         <param name="basevertex" type="const GLint *"/>
   1175     </function>
   1176 
   1177     <function name="DrawElementsInstancedBaseVertexOES" alias="DrawElementsInstancedBaseVertex"
   1178               es2="3.0" exec="dynamic">
   1179         <param name="mode" type="GLenum"/>
   1180         <param name="count" type="GLsizei"/>
   1181         <param name="type" type="GLenum"/>
   1182         <param name="indices" type="const GLvoid *"/>
   1183         <param name="primcount" type="GLsizei"/>
   1184         <param name="basevertex" type="GLint"/>
   1185     </function>
   1186 
   1187 </category>
   1188 
   1189 <category name="GL_EXT_buffer_storage" number="239">
   1190     <function name="BufferStorageEXT" alias="BufferStorage" es2="3.1">
   1191         <param name="target" type="GLenum"/>
   1192         <param name="size" type="GLsizeiptr"/>
   1193         <param name="data" type="const GLvoid *"/>
   1194         <param name="flags" type="GLbitfield"/>
   1195     </function>
   1196 </category>
   1197 
   1198 <category name="GL_EXT_blend_func_extended" number="247">
   1199 
   1200     <function name="BindFragDataLocationIndexedEXT" alias="BindFragDataLocationIndexed"
   1201             es2="3.0">
   1202         <param name="program" type="GLuint"/>
   1203         <param name="colorNumber" type="GLuint"/>
   1204         <param name="index" type="GLuint"/>
   1205         <param name="name" type="const GLchar *"/>
   1206     </function>
   1207 
   1208     <function name="GetFragDataIndexEXT" alias="GetFragDataIndex"
   1209             es2="3.0">
   1210         <param name="program" type="GLuint"/>
   1211         <param name="name" type="const GLchar *"/>
   1212         <return type="GLint"/>
   1213     </function>
   1214 
   1215     <function name="GetProgramResourceLocationIndexEXT" alias="GetProgramResourceLocationIndex"
   1216            es2="3.1">
   1217         <param name="program" type="GLuint"/>
   1218         <param name="programInterface" type="GLenum"/>
   1219         <param name="name" type="const GLchar *"/>
   1220         <return type="GLint"/>
   1221     </function>
   1222 
   1223 </category>
   1224 
   1225 <category name="GL_OES_copy_image" number="208">
   1226 
   1227     <function name="CopyImageSubDataOES" alias="CopyImageSubData" es2="3.0">
   1228         <param name="srcName" type="GLuint"/>
   1229         <param name="srcTarget" type="GLenum"/>
   1230         <param name="srcLevel" type="GLint"/>
   1231         <param name="srcX" type="GLint"/>
   1232         <param name="srcY" type="GLint"/>
   1233         <param name="srcZ" type="GLint"/>
   1234         <param name="dstName" type="GLuint"/>
   1235         <param name="dstTarget" type="GLenum"/>
   1236         <param name="dstLevel" type="GLint"/>
   1237         <param name="dstX" type="GLint"/>
   1238         <param name="dstY" type="GLint"/>
   1239         <param name="dstZ" type="GLint"/>
   1240         <param name="srcWidth" type="GLsizei"/>
   1241         <param name="srcHeight" type="GLsizei"/>
   1242         <param name="srcDepth" type="GLsizei"/>
   1243     </function>
   1244 
   1245 </category>
   1246 
   1247 <!-- 175. GL_OES_geometry_shader -->
   1248 <category name="GL_OES_geometry_shader" number="210">
   1249     <enum name="GEOMETRY_SHADER_OES"                             value="0x8DD9"/>
   1250     <enum name="GEOMETRY_SHADER_BIT_OES"                         value="0x00000004"/>
   1251     <enum name="GEOMETRY_LINKED_VERTICES_OUT_OES"                value="0x8916"/>
   1252     <enum name="GEOMETRY_LINKED_INPUT_TYPE_OES"                  value="0x8917"/>
   1253     <enum name="GEOMETRY_LINKED_OUTPUT_TYPE_OES"                 value="0x8918"/>
   1254     <enum name="GEOMETRY_SHADER_INVOCATIONS_OES"                 value="0x887F"/>
   1255     <enum name="LAYER_PROVOKING_VERTEX_OES"                      value="0x825E"/>
   1256     <enum name="MAX_GEOMETRY_UNIFORM_BLOCKS_OES"                 value="0x8A2C"/>
   1257     <enum name="MAX_COMBINED_GEOMETRY_UNIFORM_COMPONENTS_OES"    value="0x8A32"/>
   1258     <enum name="MAX_GEOMETRY_INPUT_COMPONENTS_OES"               value="0x9123"/>
   1259     <enum name="MAX_GEOMETRY_OUTPUT_COMPONENTS_OES"              value="0x9124"/>
   1260     <enum name="MAX_GEOMETRY_OUTPUT_VERTICES_OES"                value="0x8DE0"/>
   1261     <enum name="MAX_GEOMETRY_TOTAL_OUTPUT_COMPONENTS_OES"        value="0x8DE1"/>
   1262     <enum name="MAX_GEOMETRY_SHADER_INVOCATIONS_OES"             value="0x8E5A"/>
   1263     <enum name="MAX_GEOMETRY_TEXTURE_IMAGE_UNITS_OES"            value="0x8C29"/>
   1264     <enum name="MAX_GEOMETRY_ATOMIC_COUNTER_BUFFERS_OES"         value="0x92CF"/>
   1265     <enum name="MAX_GEOMETRY_ATOMIC_COUNTERS_OES"                value="0x92D5"/>
   1266     <enum name="MAX_GEOMETRY_IMAGE_UNIFORMS_OES"                 value="0x90CD"/>
   1267     <enum name="MAX_GEOMETRY_SHADER_STORAGE_BLOCKS_OES"          value="0x90D7"/>
   1268     <enum name="FIRST_VERTEX_CONVENTION_OES"                     value="0x8E4D"/>
   1269     <enum name="LAST_VERTEX_CONVENTION_OES"                      value="0x8E4E"/>
   1270     <enum name="UNDEFINED_VERTEX_OES"                            value="0x8260"/>
   1271     <enum name="PRIMITIVES_GENERATED_OES"                        value="0x8C87"/>
   1272     <enum name="LINES_ADJACENCY_OES"                             value="0xA"/>
   1273     <enum name="LINE_STRIP_ADJACENCY_OES"                        value="0xB"/>
   1274     <enum name="TRIANGLES_ADJACENCY_OES"                         value="0xC"/>
   1275     <enum name="TRIANGLE_STRIP_ADJACENCY_OES"                    value="0xD"/>
   1276     <enum name="FRAMEBUFFER_DEFAULT_LAYERS_OES"                  value="0x9312"/>
   1277     <enum name="MAX_FRAMEBUFFER_LAYERS_OES"                      value="0x9317"/>
   1278     <enum name="FRAMEBUFFER_INCOMPLETE_LAYER_TARGETS_OES"        value="0x8DA8"/>
   1279     <enum name="FRAMEBUFFER_ATTACHMENT_LAYERED_OES"              value="0x8DA7"/>
   1280     <enum name="REFERENCED_BY_GEOMETRY_SHADER_OES"               value="0x9309"/>
   1281 
   1282     <function name="FramebufferTextureOES" alias="FramebufferTexture" es2="3.1">
   1283         <param name="target" type="GLenum"/>
   1284         <param name="attachment" type="GLenum"/>
   1285         <param name="texture" type="GLuint"/>
   1286         <param name="level" type="GLint"/>
   1287     </function>
   1288 </category>
   1289 
   1290 <category name="GL_OES_texture_border_clamp" number="215">
   1291 
   1292     <enum name="TEXTURE_BORDER_COLOR_OES" value ="0x1004"/>
   1293     <enum name="CLAMP_TO_BORDER_OES"      value="0x812D"/>
   1294 
   1295     <function name="TexParameterIivOES" es2="3.0" alias="TexParameterIiv">
   1296         <param name="target" type="GLenum"/>
   1297         <param name="pname"  type="GLenum"/>
   1298         <param name="params" type="const GLint *"/>
   1299     </function>
   1300 
   1301     <function name="TexParameterIuivOES" es2="3.0" alias="TexParameterIuiv">
   1302         <param name="target" type="GLenum"/>
   1303         <param name="pname"  type="GLenum"/>
   1304         <param name="params" type="const GLuint *"/>
   1305     </function>
   1306 
   1307     <function name="GetTexParameterIivOES" es2="3.0" alias="GetTexParameterIiv">
   1308         <param name="target" type="GLenum"/>
   1309         <param name="pname"  type="GLenum"/>
   1310         <param name="params" type="GLint *"/>
   1311     </function>
   1312 
   1313     <function name="GetTexParameterIuivOES" es2="3.0" alias="GetTexParameterIuiv">
   1314         <param name="target" type="GLenum"/>
   1315         <param name="pname"  type="GLenum"/>
   1316         <param name="params" type="GLuint *"/>
   1317     </function>
   1318 
   1319     <function name="SamplerParameterIivOES" es2="3.0" alias="SamplerParameterIiv">
   1320       <param name="sampler" type="GLuint"/>
   1321       <param name="pname" type="GLenum"/>
   1322       <param name="params" type="const GLint *"/>
   1323     </function>
   1324 
   1325     <function name="SamplerParameterIuivOES" es2="3.0" alias="SamplerParameterIuiv">
   1326       <param name="sampler" type="GLuint"/>
   1327       <param name="pname" type="GLenum"/>
   1328       <param name="params" type="const GLuint *"/>
   1329     </function>
   1330 
   1331     <function name="GetSamplerParameterIivOES" es2="3.0" alias="GetSamplerParameterIiv">
   1332       <param name="sampler" type="GLuint"/>
   1333       <param name="pname" type="GLenum"/>
   1334       <param name="params" type="GLint *"/>
   1335     </function>
   1336 
   1337     <function name="GetSamplerParameterIuivOES" es2="3.0" alias="GetSamplerParameterIuiv">
   1338       <param name="sampler" type="GLuint"/>
   1339       <param name="pname" type="GLenum"/>
   1340       <param name="params" type="GLuint *"/>
   1341     </function>
   1342 
   1343 </category>
   1344 
   1345 <category name="GL_OES_viewport_array" number="267">
   1346     <function name="ViewportArrayvOES" es2="3.1" alias="ViewportArrayv">
   1347         <param name="first" type="GLuint"/>
   1348         <param name="count" type="GLsizei"/>
   1349         <param name="v" type="const GLfloat *"/>
   1350     </function>
   1351     <function name="ViewportIndexedfOES" es2="3.1" alias="ViewportIndexedf">
   1352         <param name="index" type="GLuint"/>
   1353         <param name="x" type="GLfloat"/>
   1354         <param name="y" type="GLfloat"/>
   1355         <param name="w" type="GLfloat"/>
   1356         <param name="h" type="GLfloat"/>
   1357     </function>
   1358     <function name="ViewportIndexedfvOES" es2="3.1" alias="ViewportIndexedfv">
   1359         <param name="index" type="GLuint"/>
   1360         <param name="v" type="const GLfloat *"/>
   1361     </function>
   1362     <function name="ScissorArrayvOES" es2="3.1" alias="ScissorArrayv">
   1363         <param name="first" type="GLuint"/>
   1364         <param name="count" type="GLsizei"/>
   1365         <param name="v" type="const int *"/>
   1366     </function>
   1367     <function name="ScissorIndexedOES" es2="3.1" alias="ScissorIndexed">
   1368         <param name="index" type="GLuint"/>
   1369         <param name="left" type="GLint"/>
   1370         <param name="bottom" type="GLint"/>
   1371         <param name="width" type="GLsizei"/>
   1372         <param name="height" type="GLsizei"/>
   1373     </function>
   1374     <function name="ScissorIndexedvOES" es2="3.1" alias="ScissorIndexedv">
   1375         <param name="index" type="GLuint"/>
   1376         <param name="v" type="const GLint *"/>
   1377     </function>
   1378     <function name="DepthRangeArrayfvOES" es2="3.1" desktop="false">
   1379         <param name="first" type="GLuint"/>
   1380         <param name="count" type="GLsizei"/>
   1381         <param name="v" type="const GLfloat *"/>
   1382     </function>
   1383     <function name="DepthRangeIndexedfOES" es2="3.1" desktop="false">
   1384         <param name="index" type="GLuint"/>
   1385         <param name="n" type="GLfloat"/>
   1386         <param name="f" type="GLfloat"/>
   1387     </function>
   1388     <function name="GetFloati_vOES" es2="3.1" alias="GetFloati_v">
   1389         <param name="target" type="GLenum"/>
   1390         <param name="index" type="GLuint"/>
   1391         <param name="data" type="GLfloat *"/>
   1392     </function>
   1393 </category>
   1394 
   1395 </OpenGLAPI>
   1396