Home | History | Annotate | Download | only in gen
      1 <?xml version="1.0"?>
      2 <!DOCTYPE OpenGLAPI SYSTEM "gl_API.dtd">
      3 
      4 <!-- Note: no GLX protocol info yet. -->
      5 
      6 <OpenGLAPI>
      7 
      8 <category name="3.0">
      9 
     10   <enum name="COMPARE_REF_TO_TEXTURE"           value="0x884E"/>
     11   <enum name="CLIP_DISTANCE0"                   value="0x3000"/>
     12   <enum name="CLIP_DISTANCE1"                   value="0x3001"/>
     13   <enum name="CLIP_DISTANCE2"                   value="0x3002"/>
     14   <enum name="CLIP_DISTANCE3"                   value="0x3003"/>
     15   <enum name="CLIP_DISTANCE4"                   value="0x3004"/>
     16   <enum name="CLIP_DISTANCE5"                   value="0x3005"/>
     17   <enum name="CLIP_DISTANCE6"                   value="0x3006"/>
     18   <enum name="CLIP_DISTANCE7"                   value="0x3007"/>
     19   <enum name="MAX_CLIP_DISTANCES"               value="0x0D32"/>
     20   <enum name="MAJOR_VERSION"                    value="0x821B"/>
     21   <enum name="MINOR_VERSION"                    value="0x821C"/>
     22   <enum name="NUM_EXTENSIONS"                   value="0x821D"/>
     23   <enum name="CONTEXT_FLAGS"                    value="0x821E"/>
     24   <enum name="DEPTH_BUFFER"                     value="0x8223"/>
     25   <enum name="STENCIL_BUFFER"                   value="0x8224"/>
     26   <enum name="CONTEXT_FLAG_FORWARD_COMPATIBLE_BIT"  value="0x0001"/>
     27   <enum name="RGBA32F"                          value="0x8814"/>
     28   <enum name="RGB32F"                           value="0x8815"/>
     29   <enum name="RGBA16F"                          value="0x881A"/>
     30   <enum name="RGB16F"                           value="0x881B"/>
     31   <enum name="VERTEX_ATTRIB_ARRAY_INTEGER"      value="0x88FD"/>
     32   <enum name="MAX_ARRAY_TEXTURE_LAYERS"         value="0x88FF"/>
     33   <enum name="MIN_PROGRAM_TEXEL_OFFSET"         value="0x8904"/>
     34   <enum name="MAX_PROGRAM_TEXEL_OFFSET"         value="0x8905"/>
     35   <enum name="CLAMP_VERTEX_COLOR"               value="0x891A"/>
     36   <enum name="CLAMP_FRAGMENT_COLOR"             value="0x891B"/>
     37   <enum name="CLAMP_READ_COLOR"                 value="0x891C"/>
     38   <enum name="FIXED_ONLY"                       value="0x891D"/>
     39   <enum name="MAX_VARYING_COMPONENTS"           value="0x8B4B"/>
     40   <enum name="TEXTURE_RED_TYPE"                 value="0x8C10"/>
     41   <enum name="TEXTURE_GREEN_TYPE"               value="0x8C11"/>
     42   <enum name="TEXTURE_BLUE_TYPE"                value="0x8C12"/>
     43   <enum name="TEXTURE_ALPHA_TYPE"               value="0x8C13"/>
     44   <enum name="TEXTURE_LUMINANCE_TYPE"           value="0x8C14"/>
     45   <enum name="TEXTURE_INTENSITY_TYPE"           value="0x8C15"/>
     46   <enum name="TEXTURE_DEPTH_TYPE"               value="0x8C16"/>
     47   <enum name="TEXTURE_1D_ARRAY"                 value="0x8C18"/>
     48   <enum name="PROXY_TEXTURE_1D_ARRAY"           value="0x8C19"/>
     49   <enum name="TEXTURE_2D_ARRAY"                 value="0x8C1A"/>
     50   <enum name="PROXY_TEXTURE_2D_ARRAY"           value="0x8C1B"/>
     51   <enum name="TEXTURE_BINDING_1D_ARRAY"         value="0x8C1C"/>
     52   <enum name="TEXTURE_BINDING_2D_ARRAY"         value="0x8C1D"/>
     53   <enum name="R11F_G11F_B10F"                   value="0x8C3A"/>
     54   <enum name="UNSIGNED_INT_10F_11F_11F_REV"     value="0x8C3B"/>
     55   <enum name="RGB9_E5"                          value="0x8C3D"/>
     56   <enum name="UNSIGNED_INT_5_9_9_9_REV"         value="0x8C3E"/>
     57   <enum name="TEXTURE_SHARED_SIZE"              value="0x8C3F"/>
     58   <enum name="TRANSFORM_FEEDBACK_VARYING_MAX_LENGTH"  value="0x8C76"/>
     59   <enum name="TRANSFORM_FEEDBACK_BUFFER_MODE"   value="0x8C7F"/>
     60   <enum name="MAX_TRANSFORM_FEEDBACK_SEPARATE_COMPONENTS"  value="0x8C80"/>
     61   <enum name="TRANSFORM_FEEDBACK_VARYINGS"      value="0x8C83"/>
     62   <enum name="TRANSFORM_FEEDBACK_BUFFER_START"  value="0x8C84"/>
     63   <enum name="TRANSFORM_FEEDBACK_BUFFER_SIZE"   value="0x8C85"/>
     64   <enum name="PRIMITIVES_GENERATED"             value="0x8C87"/>
     65   <enum name="TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN"  value="0x8C88"/>
     66   <enum name="RASTERIZER_DISCARD"               value="0x8C89"/>
     67   <enum name="MAX_TRANSFORM_FEEDBACK_INTERLEAVED_COMPONENTS"  value="0x8C8A"/>
     68   <enum name="MAX_TRANSFORM_FEEDBACK_SEPARATE_ATTRIBS"  value="0x8C8B"/>
     69   <enum name="INTERLEAVED_ATTRIBS"              value="0x8C8C"/>
     70   <enum name="SEPARATE_ATTRIBS"                 value="0x8C8D"/>
     71   <enum name="TRANSFORM_FEEDBACK_BUFFER"        value="0x8C8E"/>
     72   <enum name="TRANSFORM_FEEDBACK_BUFFER_BINDING"  value="0x8C8F"/>
     73   <enum name="RGBA32UI"                         value="0x8D70"/>
     74   <enum name="RGB32UI"                          value="0x8D71"/>
     75   <enum name="RGBA16UI"                         value="0x8D76"/>
     76   <enum name="RGB16UI"                          value="0x8D77"/>
     77   <enum name="RGBA8UI"                          value="0x8D7C"/>
     78   <enum name="RGB8UI"                           value="0x8D7D"/>
     79   <enum name="RGBA32I"                          value="0x8D82"/>
     80   <enum name="RGB32I"                           value="0x8D83"/>
     81   <enum name="RGBA16I"                          value="0x8D88"/>
     82   <enum name="RGB16I"                           value="0x8D89"/>
     83   <enum name="RGBA8I"                           value="0x8D8E"/>
     84   <enum name="RGB8I"                            value="0x8D8F"/>
     85   <enum name="RED_INTEGER"                      value="0x8D94"/>
     86   <enum name="GREEN_INTEGER"                    value="0x8D95"/>
     87   <enum name="BLUE_INTEGER"                     value="0x8D96"/>
     88   <enum name="RGB_INTEGER"                      value="0x8D98"/>
     89   <enum name="RGBA_INTEGER"                     value="0x8D99"/>
     90   <enum name="BGR_INTEGER"                      value="0x8D9A"/>
     91   <enum name="BGRA_INTEGER"                     value="0x8D9B"/>
     92   <enum name="SAMPLER_1D_ARRAY"                 value="0x8DC0"/>
     93   <enum name="SAMPLER_2D_ARRAY"                 value="0x8DC1"/>
     94   <enum name="SAMPLER_1D_ARRAY_SHADOW"          value="0x8DC3"/>
     95   <enum name="SAMPLER_2D_ARRAY_SHADOW"          value="0x8DC4"/>
     96   <enum name="SAMPLER_CUBE_SHADOW"              value="0x8DC5"/>
     97   <enum name="UNSIGNED_INT_VEC2"                value="0x8DC6"/>
     98   <enum name="UNSIGNED_INT_VEC3"                value="0x8DC7"/>
     99   <enum name="UNSIGNED_INT_VEC4"                value="0x8DC8"/>
    100   <enum name="INT_SAMPLER_1D"                   value="0x8DC9"/>
    101   <enum name="INT_SAMPLER_2D"                   value="0x8DCA"/>
    102   <enum name="INT_SAMPLER_3D"                   value="0x8DCB"/>
    103   <enum name="INT_SAMPLER_CUBE"                 value="0x8DCC"/>
    104   <enum name="INT_SAMPLER_1D_ARRAY"             value="0x8DCE"/>
    105   <enum name="INT_SAMPLER_2D_ARRAY"             value="0x8DCF"/>
    106   <enum name="UNSIGNED_INT_SAMPLER_1D"          value="0x8DD1"/>
    107   <enum name="UNSIGNED_INT_SAMPLER_2D"          value="0x8DD2"/>
    108   <enum name="UNSIGNED_INT_SAMPLER_3D"          value="0x8DD3"/>
    109   <enum name="UNSIGNED_INT_SAMPLER_CUBE"        value="0x8DD4"/>
    110   <enum name="UNSIGNED_INT_SAMPLER_1D_ARRAY"    value="0x8DD6"/>
    111   <enum name="UNSIGNED_INT_SAMPLER_2D_ARRAY"    value="0x8DD7"/>
    112   <enum name="QUERY_WAIT"                       value="0x8E13"/>
    113   <enum name="QUERY_NO_WAIT"                    value="0x8E14"/>
    114   <enum name="QUERY_BY_REGION_WAIT"             value="0x8E15"/>
    115   <enum name="QUERY_BY_REGION_NO_WAIT"          value="0x8E16"/>
    116   <enum name="BUFFER_ACCESS_FLAGS"              value="0x911F"/>
    117   <enum name="BUFFER_MAP_LENGTH"                value="0x9120"/>
    118   <enum name="BUFFER_MAP_OFFSET"                value="0x9121"/>
    119 
    120   <!-- These functions are unique to GL3 -->
    121 
    122   <function name="ClearBufferiv" offset="assign">
    123     <param name="buffer" type="GLenum"/>
    124     <param name="drawbuffer" type="GLint"/>
    125     <param name="value" type="const GLint *"/>
    126   </function>
    127 
    128   <function name="ClearBufferuiv" offset="assign">
    129     <param name="buffer" type="GLenum"/>
    130     <param name="drawbuffer" type="GLint"/>
    131     <param name="value" type="const GLuint *"/>
    132   </function>
    133 
    134   <function name="ClearBufferfv" offset="assign">
    135     <param name="buffer" type="GLenum"/>
    136     <param name="drawbuffer" type="GLint"/>
    137     <param name="value" type="const GLfloat *"/>
    138   </function>
    139 
    140   <function name="ClearBufferfi" offset="assign">
    141     <param name="buffer" type="GLenum"/>
    142     <param name="drawbuffer" type="GLint"/>
    143     <param name="depth" type="GLfloat"/>
    144     <param name="stencil" type="GLint"/>
    145   </function>
    146 
    147   <function name="GetStringi" offset="assign">
    148     <param name="name" type="GLenum"/>
    149     <param name="index" type="GLuint"/>
    150       <return type="const GLubyte *"/>
    151   </function>
    152 
    153   <function name="ClampColor" offset="assign">
    154     <param name="target" type="GLenum"/>
    155     <param name="clamp" type="GLenum"/>
    156   </function>
    157 
    158   <!-- These functions alias ones form GL_ARB_draw_buffers2 -->
    159 
    160   <function name="ColorMaski" alias="ColorMaskIndexedEXT">
    161     <param name="buf" type="GLuint"/>
    162     <param name="r" type="GLboolean"/>
    163     <param name="g" type="GLboolean"/>
    164     <param name="b" type="GLboolean"/>
    165     <param name="a" type="GLboolean"/>
    166   </function>
    167 
    168   <function name="GetBooleani_v" alias="GetBooleanIndexedvEXT">
    169     <param name="value" type="GLenum"/>
    170     <param name="index" type="GLuint"/>
    171     <param name="data" type="GLboolean *"/>
    172   </function>
    173 
    174   <function name="GetIntegeri_v" alias="GetIntegerIndexedvEXT">
    175     <param name="value" type="GLenum"/>
    176     <param name="index" type="GLuint"/>
    177     <param name="data" type="GLint *"/>
    178   </function>
    179 
    180   <function name="Enablei" alias="EnableIndexedEXT">
    181     <param name="target" type="GLenum"/>
    182     <param name="index" type="GLuint"/>
    183   </function>
    184 
    185   <function name="Disablei" alias="DisableIndexedEXT">
    186     <param name="target" type="GLenum"/>
    187     <param name="index" type="GLuint"/>
    188   </function>
    189 
    190   <function name="IsEnabledi" alias="IsEnabledIndexedEXT">
    191     <param name="target" type="GLenum"/>
    192     <param name="index" type="GLuint"/>
    193       <return type="GLboolean"/>
    194   </function>
    195 
    196   <!-- These functions alias ones form GL_EXT_transform_feedback -->
    197 
    198   <function name="GetFragDataLocation" alias="GetFragDataLocationEXT">
    199     <param name="program" type="GLuint"/>
    200     <param name="name" type="const GLchar *"/>
    201       <return type="GLint"/>
    202   </function>
    203 
    204   <function name="BindFragDataLocation" alias="BindFragDataLocationEXT">
    205     <param name="program" type="GLuint"/>
    206     <param name="colorNumber" type="GLuint"/>
    207     <param name="name" type="const GLchar *"/>
    208   </function>
    209 
    210   <function name="BeginTransformFeedback" alias="BeginTransformFeedbackEXT">
    211     <param name="mode" type="GLenum"/>
    212   </function>
    213 
    214   <function name="EndTransformFeedback" alias="EndTransformFeedbackEXT">
    215   </function>
    216 
    217   <function name="BindBufferRange" alias="BindBufferRangeEXT">
    218     <param name="target" type="GLenum"/>
    219     <param name="index" type="GLuint"/>
    220     <param name="buffer" type="GLuint"/>
    221     <param name="offset" type="GLintptr"/>
    222     <param name="size" type="GLsizeiptr"/>
    223   </function>
    224 
    225   <function name="BindBufferBase" alias="BindBufferBaseEXT">
    226     <param name="target" type="GLenum"/>
    227     <param name="index" type="GLuint"/>
    228     <param name="buffer" type="GLuint"/>
    229   </function>
    230 
    231   <function name="TransformFeedbackVaryings" alias="TransformFeedbackVaryingsEXT">
    232     <param name="program" type="GLuint"/>
    233     <param name="count" type="GLsizei"/>
    234     <param name="varyings" type="const GLchar * const *"/>
    235     <param name="bufferMode" type="GLenum"/>
    236   </function>
    237 
    238   <function name="GetTransformFeedbackVarying" alias="GetTransformFeedbackVaryingEXT">
    239     <param name="program" type="GLuint"/>
    240     <param name="index" type="GLuint"/>
    241     <param name="bufSize" type="GLsizei"/>
    242     <param name="length" type="GLsizei *"/>
    243     <param name="size" type="GLsizei *"/>
    244     <param name="type" type="GLenum *"/>
    245     <param name="name" type="GLchar *"/>
    246   </function>
    247 
    248   <!-- These functions alias ones from GL_NV_conditional_render -->
    249 
    250   <function name="BeginConditionalRender" alias="BeginConditionalRenderNV">
    251     <param name="query" type="GLuint"/>
    252     <param name="mode" type="GLenum"/>
    253   </function>
    254 
    255   <function name="EndConditionalRender" alias="EndConditionalRenderNV">
    256   </function>
    257 
    258   <!-- These functions alias ones from GL_EXT_gpu_shader4 -->
    259 
    260   <function name="VertexAttribIPointer" alias="VertexAttribIPointerEXT">
    261     <param name="index" type="GLuint"/>
    262     <param name="size" type="GLint"/>
    263     <param name="type" type="GLenum"/>
    264     <param name="stride" type="GLsizei"/>
    265     <param name="pointer" type="const GLvoid *"/>
    266   </function>
    267 
    268   <function name="GetVertexAttribIiv" alias="GetVertexAttribIivEXT">
    269     <param name="index" type="GLuint"/>
    270     <param name="pname" type="GLenum"/>
    271     <param name="params" type="GLint *"/>
    272   </function>
    273 
    274   <function name="GetVertexAttribIuiv" alias="GetVertexAttribIuivEXT">
    275     <param name="index" type="GLuint"/>
    276     <param name="pname" type="GLenum"/>
    277     <param name="params" type="GLuint *"/>
    278   </function>
    279 
    280   <function name="VertexAttribI1i" alias="VertexAttribI1iEXT">
    281     <param name="index" type="GLuint"/>
    282     <param name="x" type="GLint"/>
    283   </function>
    284 
    285   <function name="VertexAttribI2i" alias="VertexAttribI2iEXT">
    286     <param name="index" type="GLuint"/>
    287     <param name="x" type="GLint"/>
    288     <param name="y" type="GLint"/>
    289   </function>
    290 
    291   <function name="VertexAttribI3i" alias="VertexAttribI3iEXT">
    292     <param name="index" type="GLuint"/>
    293     <param name="x" type="GLint"/>
    294     <param name="y" type="GLint"/>
    295     <param name="z" type="GLint"/>
    296   </function>
    297 
    298   <function name="VertexAttribI4i" alias="VertexAttribI4iEXT">
    299     <param name="index" type="GLuint"/>
    300     <param name="x" type="GLint"/>
    301     <param name="y" type="GLint"/>
    302     <param name="z" type="GLint"/>
    303     <param name="w" type="GLint"/>
    304   </function>
    305 
    306   <function name="VertexAttribI1ui" alias="VertexAttribI1uiEXT">
    307     <param name="index" type="GLuint"/>
    308     <param name="x" type="GLuint"/>
    309   </function>
    310 
    311   <function name="VertexAttribI2ui" alias="VertexAttribI2uiEXT">
    312     <param name="index" type="GLuint"/>
    313     <param name="x" type="GLuint"/>
    314     <param name="y" type="GLuint"/>
    315   </function>
    316 
    317   <function name="VertexAttribI3ui" alias="VertexAttribI3uiEXT">
    318     <param name="index" type="GLuint"/>
    319     <param name="x" type="GLuint"/>
    320     <param name="y" type="GLuint"/>
    321     <param name="z" type="GLuint"/>
    322   </function>
    323 
    324   <function name="VertexAttribI4ui" alias="VertexAttribI4uiEXT">
    325     <param name="index" type="GLuint"/>
    326     <param name="x" type="GLuint"/>
    327     <param name="y" type="GLuint"/>
    328     <param name="z" type="GLuint"/>
    329     <param name="w" type="GLuint"/>
    330   </function>
    331 
    332   <function name="VertexAttribI1iv" alias="VertexAttribI1ivEXT">
    333     <param name="index" type="GLuint"/>
    334     <param name="v" type="const GLint *"/>
    335   </function>
    336 
    337   <function name="VertexAttribI2iv" alias="VertexAttribI2ivEXT">
    338     <param name="index" type="GLuint"/>
    339     <param name="v" type="const GLint *"/>
    340   </function>
    341 
    342   <function name="VertexAttribI3iv" alias="VertexAttribI3ivEXT">
    343     <param name="index" type="GLuint"/>
    344     <param name="v" type="const GLint *"/>
    345   </function>
    346 
    347   <function name="VertexAttribI4iv" alias="VertexAttribI4ivEXT">
    348     <param name="index" type="GLuint"/>
    349     <param name="v" type="const GLint *"/>
    350   </function>
    351 
    352   <function name="VertexAttribI1uiv" alias="VertexAttribI1uivEXT">
    353     <param name="index" type="GLuint"/>
    354     <param name="v" type="const GLuint *"/>
    355   </function>
    356 
    357   <function name="VertexAttribI2uiv" alias="VertexAttribI2uivEXT">
    358     <param name="index" type="GLuint"/>
    359     <param name="v" type="const GLuint *"/>
    360   </function>
    361 
    362   <function name="VertexAttribI3uiv" alias="VertexAttribI3uivEXT">
    363     <param name="index" type="GLuint"/>
    364     <param name="v" type="const GLuint *"/>
    365   </function>
    366 
    367   <function name="VertexAttribI4uiv" alias="VertexAttribI4uivEXT">
    368     <param name="index" type="GLuint"/>
    369     <param name="v" type="const GLuint *"/>
    370   </function>
    371 
    372   <function name="VertexAttribI4bv" alias="VertexAttribI4bvEXT">
    373     <param name="index" type="GLuint"/>
    374     <param name="v" type="const GLbyte *"/>
    375   </function>
    376 
    377   <function name="VertexAttribI4sv" alias="VertexAttribI4svEXT">
    378     <param name="index" type="GLuint"/>
    379     <param name="v" type="const GLshort *"/>
    380   </function>
    381 
    382   <function name="VertexAttribI4ubv" alias="VertexAttribI4ubvEXT">
    383     <param name="index" type="GLuint"/>
    384     <param name="v" type="const GLubyte *"/>
    385   </function>
    386 
    387   <function name="VertexAttribI4usv" alias="VertexAttribI4usvEXT">
    388     <param name="index" type="GLuint"/>
    389     <param name="v" type="const GLushort *"/>
    390   </function>
    391 
    392   <function name="GetUniformuiv" alias="GetUniformuivEXT">
    393     <param name="program" type="GLuint"/>
    394     <param name="location" type="GLint"/>
    395     <param name="params" type="GLuint *"/>
    396   </function>
    397 
    398   <function name="Uniform1ui" alias="Uniform1uiEXT">
    399     <param name="location" type="GLint"/>
    400     <param name="x" type="GLuint"/>
    401   </function>
    402 
    403   <function name="Uniform2ui" alias="Uniform2uiEXT">
    404     <param name="location" type="GLint"/>
    405     <param name="x" type="GLuint"/>
    406     <param name="y" type="GLuint"/>
    407   </function>
    408 
    409   <function name="Uniform3ui" alias="Uniform3uiEXT">
    410     <param name="location" type="GLint"/>
    411     <param name="x" type="GLuint"/>
    412     <param name="y" type="GLuint"/>
    413     <param name="z" type="GLuint"/>
    414   </function>
    415 
    416   <function name="Uniform4ui" alias="Uniform4uiEXT">
    417     <param name="location" type="GLint"/>
    418     <param name="x" type="GLuint"/>
    419     <param name="y" type="GLuint"/>
    420     <param name="z" type="GLuint"/>
    421     <param name="w" type="GLuint"/>
    422   </function>
    423 
    424   <function name="Uniform1uiv" alias="Uniform1uivEXT">
    425     <param name="location" type="GLint"/>
    426     <param name="count" type="GLsizei"/>
    427     <param name="value" type="const GLuint *"/>
    428   </function>
    429 
    430   <function name="Uniform2uiv" alias="Uniform2uivEXT">
    431     <param name="location" type="GLint"/>
    432     <param name="count" type="GLsizei"/>
    433     <param name="value" type="const GLuint *"/>
    434   </function>
    435 
    436   <function name="Uniform3uiv" alias="Uniform3uivEXT">
    437     <param name="location" type="GLint"/>
    438     <param name="count" type="GLsizei"/>
    439     <param name="value" type="const GLuint *"/>
    440   </function>
    441 
    442   <function name="Uniform4uiv" alias="Uniform4uivEXT">
    443     <param name="location" type="GLint"/>
    444     <param name="count" type="GLsizei"/>
    445     <param name="value" type="const GLuint *"/>
    446   </function>
    447 
    448   <!-- These functions alias ones from GL_EXT_texture_integer -->
    449 
    450   <function name="TexParameterIiv" alias="TexParameterIivEXT">
    451     <param name="target" type="GLenum"/>
    452     <param name="pname" type="GLenum"/>
    453     <param name="params" type="const GLint *"/>
    454   </function>
    455 
    456   <function name="TexParameterIuiv" alias="TexParameterIuivEXT">
    457     <param name="target" type="GLenum"/>
    458     <param name="pname" type="GLenum"/>
    459     <param name="params" type="const GLuint *"/>
    460   </function>
    461 
    462   <function name="GetTexParameterIiv" alias="GetTexParameterIivEXT">
    463     <param name="target" type="GLenum"/>
    464     <param name="pname" type="GLenum"/>
    465     <param name="params" type="GLint *"/>
    466   </function>
    467 
    468   <function name="GetTexParameterIuiv" alias="GetTexParameterIuivEXT">
    469     <param name="target" type="GLenum"/>
    470     <param name="pname" type="GLenum"/>
    471     <param name="params" type="GLuint *"/>
    472   </function>
    473 
    474 </category>
    475 
    476 
    477 <category name="3.1">
    478 
    479   <enum name="UNIFORM_BUFFER"                 value="0x8A11"/>
    480   <enum name="UNIFORM_BUFFER_BINDING"         value="0x8A28"/>
    481   <enum name="UNIFORM_BUFFER_START"           value="0x8A29"/>
    482   <enum name="UNIFORM_BUFFER_SIZE"            value="0x8A2A"/>
    483   <enum name="MAX_VERTEX_UNIFORM_BLOCKS"      value="0x8A2B"/>
    484   <enum name="MAX_GEOMETRY_UNIFORM_BLOCKS"    value="0x8A2C"/>
    485   <enum name="MAX_FRAGMENT_UNIFORM_BLOCKS"    value="0x8A2D"/>
    486   <enum name="MAX_COMBINED_UNIFORM_BLOCKS"    value="0x8A2E"/>
    487   <enum name="MAX_UNIFORM_BUFFER_BINDINGS"    value="0x8A2F"/>
    488   <enum name="MAX_UNIFORM_BLOCK_SIZE"         value="0x8A30"/>
    489   <enum name="MAX_COMBINED_VERTEX_UNIFORM_COMPONENTS" value="0x8A31"/>
    490   <enum name="MAX_COMBINED_GEOMETRY_UNIFORM_COMPONENTS" value="0x8A32"/>
    491   <enum name="MAX_COMBINED_FRAGMENT_UNIFORM_COMPONENTS" value="0x8A33"/>
    492   <enum name="UNIFORM_BUFFER_OFFSET_ALIGNMENT" value="0x8A34"/>
    493   <enum name="ACTIVE_UNIFORM_BLOCK_MAX_NAME_LENGTH" value="0x8A35"/>
    494   <enum name="ACTIVE_UNIFORM_BLOCKS"          value="0x8A36"/>
    495   <enum name="UNIFORM_TYPE"                   value="0x8A37"/>
    496   <enum name="UNIFORM_SIZE"                   value="0x8A38"/>
    497   <enum name="UNIFORM_NAME_LENGTH"            value="0x8A39"/>
    498   <enum name="UNIFORM_BLOCK_INDEX"            value="0x8A3A"/>
    499   <enum name="UNIFORM_OFFSET"                 value="0x8A3B"/>
    500   <enum name="UNIFORM_ARRAY_STRIDE"           value="0x8A3C"/>
    501   <enum name="UNIFORM_MATRIX_STRIDE"          value="0x8A3D"/>
    502   <enum name="UNIFORM_IS_ROW_MAJOR"           value="0x8A3E"/>
    503   <enum name="UNIFORM_BLOCK_BINDING"          value="0x8A3F"/>
    504   <enum name="UNIFORM_BLOCK_DATA_SIZE"        value="0x8A40"/>
    505   <enum name="UNIFORM_BLOCK_NAME_LENGTH"      value="0x8A41"/>
    506   <enum name="UNIFORM_BLOCK_ACTIVE_UNIFORMS"  value="0x8A42"/>
    507   <enum name="UNIFORM_BLOCK_ACTIVE_UNIFORM_INDICES" value="0x8A43"/>
    508   <enum name="UNIFORM_BLOCK_REFERENCED_BY_VERTEX_SHADER" value="0x8A44"/>
    509   <enum name="UNIFORM_BLOCK_REFERENCED_BY_GEOMETRY_SHADER" value="0x8A45"/>
    510   <enum name="UNIFORM_BLOCK_REFERENCED_BY_FRAGMENT_SHADER" value="0x8A46"/>
    511   <enum name="SAMPLER_2D_RECT"                value="0x8B63"/>
    512   <enum name="SAMPLER_2D_RECT_SHADOW"         value="0x8B64"/>
    513   <enum name="FRAMEBUFFER_SRGB"               value="0x8DB9"/>
    514   <enum name="SAMPLER_BUFFER"                 value="0x8DC2"/>
    515   <enum name="INT_SAMPLER_2D_RECT"            value="0x8DCD"/>
    516   <enum name="INT_SAMPLER_BUFFER"             value="0x8DD0"/>
    517   <enum name="UNSIGNED_INT_SAMPLER_2D_RECT"   value="0x8DD5"/>
    518   <enum name="UNSIGNED_INT_SAMPLER_BUFFER"    value="0x8DD8"/>
    519   <enum name="TEXTURE_BUFFER"                 value="0x8C2A"/>
    520   <enum name="MAX_TEXTURE_BUFFER_SIZE"        value="0x8C2B"/>
    521   <enum name="TEXTURE_BINDING_BUFFER"         value="0x8C2C"/>
    522   <enum name="TEXTURE_BUFFER_DATA_STORE_BINDING" value="0x8C2D"/>
    523   <enum name="TEXTURE_BUFFER_FORMAT"          value="0x8C2E"/>
    524   <enum name="TEXTURE_RECTANGLE"              value="0x84F5"/>
    525   <enum name="TEXTURE_BINDING_RECTANGLE"      value="0x84F6"/>
    526   <enum name="PROXY_TEXTURE_RECTANGLE"        value="0x84F7"/>
    527   <enum name="MAX_RECTANGLE_TEXTURE_SIZE"     value="0x84F8"/>
    528   <enum name="RED_SNORM"                      value="0x8F90"/>
    529   <enum name="RG_SNORM"                       value="0x8F91"/>
    530   <enum name="RGB_SNORM"                      value="0x8F92"/>
    531   <enum name="RGBA_SNORM"                     value="0x8F93"/>
    532   <enum name="R8_SNORM"                       value="0x8F94"/>
    533   <enum name="RG8_SNORM"                      value="0x8F95"/>
    534   <enum name="RGB8_SNORM"                     value="0x8F96"/>
    535   <enum name="RGBA8_SNORM"                    value="0x8F97"/>
    536   <enum name="R16_SNORM"                      value="0x8F98"/>
    537   <enum name="RG16_SNORM"                     value="0x8F99"/>
    538   <enum name="RGB16_SNORM"                    value="0x8F9A"/>
    539   <enum name="RGBA16_SNORM"                   value="0x8F9B"/>
    540   <enum name="SIGNED_NORMALIZED"              value="0x8F9C"/>
    541   <enum name="PRIMITIVE_RESTART"              value="0x8F9D"/>
    542   <enum name="PRIMITIVE_RESTART_INDEX"        value="0x8F9E"/>
    543 
    544   <function name="DrawArraysInstanced" alias="DrawArraysInstancedARB">
    545     <param name="mode" type="GLenum"/>
    546     <param name="first" type="GLint"/>
    547     <param name="count" type="GLsizei"/>
    548     <param name="primcount" type="GLsizei"/>
    549   </function>
    550 
    551   <function name="DrawElementsInstanced" alias="DrawElementsInstancedARB">
    552     <param name="mode" type="GLenum"/>
    553     <param name="count" type="GLsizei"/>
    554     <param name="type" type="GLenum"/>
    555     <param name="indices" type="const GLvoid *"/>
    556     <param name="primcount" type="GLsizei"/>
    557   </function>
    558 
    559   <function name="TexBuffer" offset="assign" alias="TexBufferARB">
    560     <param name="target" type="GLenum"/>
    561     <param name="internalFormat" type="GLenum"/>
    562     <param name="buffer" type="GLuint"/>
    563   </function>
    564 
    565   <function name="PrimitiveRestartIndex" alias="PrimitiveRestartIndexNV">
    566     <param name="index" type="GLuint"/>
    567   </function>
    568 
    569 </category>
    570 
    571 
    572 <category name="3.2">
    573 
    574   <enum name="CONTEXT_CORE_PROFILE_BIT"             value="0x00000001"/>
    575   <enum name="CONTEXT_COMPATIBILITY_PROFILE_BIT"    value="0x00000002"/>
    576   <enum name="LINES_ADJACENCY"                      value="0x000A"/>
    577   <enum name="LINE_STRIP_ADJACENCY"                 value="0x000B"/>
    578   <enum name="TRIANGLES_ADJACENCY"                  value="0x000C"/>
    579   <enum name="TRIANGLE_STRIP_ADJACENCY"             value="0x000D"/>
    580   <enum name="PROGRAM_POINT_SIZE"                   value="0x8642"/>
    581   <enum name="MAX_GEOMETRY_TEXTURE_IMAGE_UNITS"     value="0x8C29"/>
    582   <enum name="FRAMEBUFFER_ATTACHMENT_LAYERED"       value="0x8DA7"/>
    583   <enum name="FRAMEBUFFER_INCOMPLETE_LAYER_TARGETS" value="0x8DA8"/>
    584   <enum name="GEOMETRY_SHADER"                      value="0x8DD9"/>
    585   <enum name="GEOMETRY_VERTICES_OUT"                value="0x8916"/>
    586   <enum name="GEOMETRY_INPUT_TYPE"                  value="0x8917"/>
    587   <enum name="GEOMETRY_OUTPUT_TYPE"                 value="0x8918"/>
    588   <enum name="MAX_GEOMETRY_UNIFORM_COMPONENTS"      value="0x8DDF"/>
    589   <enum name="MAX_GEOMETRY_OUTPUT_VERTICES"         value="0x8DE0"/>
    590   <enum name="MAX_GEOMETRY_TOTAL_OUTPUT_COMPONENTS" value="0x8DE1"/>
    591   <enum name="MAX_VERTEX_OUTPUT_COMPONENTS"         value="0x9122"/>
    592   <enum name="MAX_GEOMETRY_INPUT_COMPONENTS"        value="0x9123"/>
    593   <enum name="MAX_GEOMETRY_OUTPUT_COMPONENTS"       value="0x9124"/>
    594   <enum name="MAX_FRAGMENT_INPUT_COMPONENTS"        value="0x9125"/>
    595   <enum name="CONTEXT_PROFILE_MASK"                 value="0x9126"/>
    596 
    597   <function name="GetInteger64i_v" offset="assign">
    598     <param name="cap" type="GLenum"/>
    599     <param name="index" type="GLuint"/>
    600     <param name="data" type="GLint64 *"/>
    601   </function>
    602 
    603   <function name="GetBufferParameteri64v" offset="assign">
    604     <param name="target" type="GLenum"/>
    605     <param name="pname" type="GLenum"/>
    606     <param name="params" type="GLint64 *"/>
    607   </function>
    608 
    609   <function name="FramebufferTexture" offset="assign">
    610     <param name="target" type="GLenum"/>
    611     <param name="attachment" type="GLenum"/>
    612     <param name="texture" type="GLuint"/>
    613     <param name="level" type="GLint"/>
    614   </function>
    615 
    616 </category>
    617 
    618 
    619 <category name="3.3">
    620   <!-- There are other new functions and tokens defined by other extensions -->
    621   <enum name="TEXTURE_SWIZZLE_R"                value="0x8E42"/>
    622   <enum name="TEXTURE_SWIZZLE_G"                value="0x8E43"/>
    623   <enum name="TEXTURE_SWIZZLE_B"                value="0x8E44"/>
    624   <enum name="TEXTURE_SWIZZLE_A"                value="0x8E45"/>
    625   <enum name="TEXTURE_SWIZZLE_RGBA"             value="0x8E46"/>
    626 
    627   <function name="VertexAttribDivisor" offset="assign">
    628     <param name="index" type="GLuint"/>
    629     <param name="divisor" type="GLuint"/>
    630   </function>
    631 
    632 </category>
    633 
    634 </OpenGLAPI>
    635