1848b8605Smrg<?xml version="1.0"?>
2848b8605Smrg<!DOCTYPE OpenGLAPI SYSTEM "gl_API.dtd">
3848b8605Smrg
4848b8605Smrg<!-- Note: no GLX protocol info yet. -->
5848b8605Smrg
6848b8605Smrg<OpenGLAPI>
7848b8605Smrg
8848b8605Smrg<category name="3.0">
9848b8605Smrg
10848b8605Smrg  <enum name="COMPARE_REF_TO_TEXTURE"           value="0x884E"/>
11848b8605Smrg  <enum name="CLIP_DISTANCE0"                   value="0x3000"/>
12848b8605Smrg  <enum name="CLIP_DISTANCE1"                   value="0x3001"/>
13848b8605Smrg  <enum name="CLIP_DISTANCE2"                   value="0x3002"/>
14848b8605Smrg  <enum name="CLIP_DISTANCE3"                   value="0x3003"/>
15848b8605Smrg  <enum name="CLIP_DISTANCE4"                   value="0x3004"/>
16848b8605Smrg  <enum name="CLIP_DISTANCE5"                   value="0x3005"/>
17848b8605Smrg  <enum name="CLIP_DISTANCE6"                   value="0x3006"/>
18848b8605Smrg  <enum name="CLIP_DISTANCE7"                   value="0x3007"/>
19848b8605Smrg  <enum name="MAX_CLIP_DISTANCES"               value="0x0D32"/>
20848b8605Smrg  <enum name="MAJOR_VERSION"                    value="0x821B"/>
21848b8605Smrg  <enum name="MINOR_VERSION"                    value="0x821C"/>
22848b8605Smrg  <enum name="NUM_EXTENSIONS"                   value="0x821D"/>
23848b8605Smrg  <enum name="CONTEXT_FLAGS"                    value="0x821E"/>
24848b8605Smrg  <enum name="CONTEXT_FLAG_FORWARD_COMPATIBLE_BIT"  value="0x0001"/>
25848b8605Smrg  <enum name="RGBA32F"                          value="0x8814"/>
26848b8605Smrg  <enum name="RGB32F"                           value="0x8815"/>
27848b8605Smrg  <enum name="RGBA16F"                          value="0x881A"/>
28848b8605Smrg  <enum name="RGB16F"                           value="0x881B"/>
29848b8605Smrg  <enum name="VERTEX_ATTRIB_ARRAY_INTEGER"      value="0x88FD"/>
30848b8605Smrg  <enum name="MAX_ARRAY_TEXTURE_LAYERS"         value="0x88FF"/>
31848b8605Smrg  <enum name="MIN_PROGRAM_TEXEL_OFFSET"         value="0x8904"/>
32848b8605Smrg  <enum name="MAX_PROGRAM_TEXEL_OFFSET"         value="0x8905"/>
33848b8605Smrg  <enum name="CLAMP_VERTEX_COLOR"               value="0x891A"/>
34848b8605Smrg  <enum name="CLAMP_FRAGMENT_COLOR"             value="0x891B"/>
35848b8605Smrg  <enum name="CLAMP_READ_COLOR"                 value="0x891C"/>
36848b8605Smrg  <enum name="FIXED_ONLY"                       value="0x891D"/>
37848b8605Smrg  <enum name="MAX_VARYING_COMPONENTS"           value="0x8B4B"/>
38848b8605Smrg  <enum name="TEXTURE_RED_TYPE"                 value="0x8C10"/>
39848b8605Smrg  <enum name="TEXTURE_GREEN_TYPE"               value="0x8C11"/>
40848b8605Smrg  <enum name="TEXTURE_BLUE_TYPE"                value="0x8C12"/>
41848b8605Smrg  <enum name="TEXTURE_ALPHA_TYPE"               value="0x8C13"/>
42848b8605Smrg  <enum name="TEXTURE_LUMINANCE_TYPE"           value="0x8C14"/>
43848b8605Smrg  <enum name="TEXTURE_INTENSITY_TYPE"           value="0x8C15"/>
44848b8605Smrg  <enum name="TEXTURE_DEPTH_TYPE"               value="0x8C16"/>
45848b8605Smrg  <enum name="TEXTURE_1D_ARRAY"                 value="0x8C18"/>
46848b8605Smrg  <enum name="PROXY_TEXTURE_1D_ARRAY"           value="0x8C19"/>
47848b8605Smrg  <enum name="TEXTURE_2D_ARRAY"                 value="0x8C1A"/>
48848b8605Smrg  <enum name="PROXY_TEXTURE_2D_ARRAY"           value="0x8C1B"/>
49848b8605Smrg  <enum name="TEXTURE_BINDING_1D_ARRAY"         value="0x8C1C"/>
50848b8605Smrg  <enum name="TEXTURE_BINDING_2D_ARRAY"         value="0x8C1D"/>
51848b8605Smrg  <enum name="R11F_G11F_B10F"                   value="0x8C3A"/>
52848b8605Smrg  <enum name="UNSIGNED_INT_10F_11F_11F_REV"     value="0x8C3B"/>
53848b8605Smrg  <enum name="RGB9_E5"                          value="0x8C3D"/>
54848b8605Smrg  <enum name="UNSIGNED_INT_5_9_9_9_REV"         value="0x8C3E"/>
55848b8605Smrg  <enum name="TEXTURE_SHARED_SIZE"              value="0x8C3F"/>
56848b8605Smrg  <enum name="TRANSFORM_FEEDBACK_VARYING_MAX_LENGTH"  value="0x8C76"/>
57848b8605Smrg  <enum name="TRANSFORM_FEEDBACK_BUFFER_MODE"   value="0x8C7F"/>
58848b8605Smrg  <enum name="MAX_TRANSFORM_FEEDBACK_SEPARATE_COMPONENTS"  value="0x8C80"/>
59848b8605Smrg  <enum name="TRANSFORM_FEEDBACK_VARYINGS"      value="0x8C83"/>
60848b8605Smrg  <enum name="TRANSFORM_FEEDBACK_BUFFER_START"  value="0x8C84"/>
61848b8605Smrg  <enum name="TRANSFORM_FEEDBACK_BUFFER_SIZE"   value="0x8C85"/>
62848b8605Smrg  <enum name="PRIMITIVES_GENERATED"             value="0x8C87"/>
63848b8605Smrg  <enum name="TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN"  value="0x8C88"/>
64848b8605Smrg  <enum name="RASTERIZER_DISCARD"               value="0x8C89"/>
65848b8605Smrg  <enum name="MAX_TRANSFORM_FEEDBACK_INTERLEAVED_COMPONENTS"  value="0x8C8A"/>
66848b8605Smrg  <enum name="MAX_TRANSFORM_FEEDBACK_SEPARATE_ATTRIBS"  value="0x8C8B"/>
67848b8605Smrg  <enum name="INTERLEAVED_ATTRIBS"              value="0x8C8C"/>
68848b8605Smrg  <enum name="SEPARATE_ATTRIBS"                 value="0x8C8D"/>
69848b8605Smrg  <enum name="TRANSFORM_FEEDBACK_BUFFER"        value="0x8C8E"/>
70848b8605Smrg  <enum name="TRANSFORM_FEEDBACK_BUFFER_BINDING"  value="0x8C8F"/>
71848b8605Smrg  <enum name="RGBA32UI"                         value="0x8D70"/>
72848b8605Smrg  <enum name="RGB32UI"                          value="0x8D71"/>
73848b8605Smrg  <enum name="RGBA16UI"                         value="0x8D76"/>
74848b8605Smrg  <enum name="RGB16UI"                          value="0x8D77"/>
75848b8605Smrg  <enum name="RGBA8UI"                          value="0x8D7C"/>
76848b8605Smrg  <enum name="RGB8UI"                           value="0x8D7D"/>
77848b8605Smrg  <enum name="RGBA32I"                          value="0x8D82"/>
78848b8605Smrg  <enum name="RGB32I"                           value="0x8D83"/>
79848b8605Smrg  <enum name="RGBA16I"                          value="0x8D88"/>
80848b8605Smrg  <enum name="RGB16I"                           value="0x8D89"/>
81848b8605Smrg  <enum name="RGBA8I"                           value="0x8D8E"/>
82848b8605Smrg  <enum name="RGB8I"                            value="0x8D8F"/>
83848b8605Smrg  <enum name="RED_INTEGER"                      value="0x8D94"/>
84848b8605Smrg  <enum name="GREEN_INTEGER"                    value="0x8D95"/>
85848b8605Smrg  <enum name="BLUE_INTEGER"                     value="0x8D96"/>
86848b8605Smrg  <enum name="RGB_INTEGER"                      value="0x8D98"/>
87848b8605Smrg  <enum name="RGBA_INTEGER"                     value="0x8D99"/>
88848b8605Smrg  <enum name="BGR_INTEGER"                      value="0x8D9A"/>
89848b8605Smrg  <enum name="BGRA_INTEGER"                     value="0x8D9B"/>
90848b8605Smrg  <enum name="SAMPLER_1D_ARRAY"                 value="0x8DC0"/>
91848b8605Smrg  <enum name="SAMPLER_2D_ARRAY"                 value="0x8DC1"/>
92848b8605Smrg  <enum name="SAMPLER_1D_ARRAY_SHADOW"          value="0x8DC3"/>
93848b8605Smrg  <enum name="SAMPLER_2D_ARRAY_SHADOW"          value="0x8DC4"/>
94848b8605Smrg  <enum name="SAMPLER_CUBE_SHADOW"              value="0x8DC5"/>
95848b8605Smrg  <enum name="UNSIGNED_INT_VEC2"                value="0x8DC6"/>
96848b8605Smrg  <enum name="UNSIGNED_INT_VEC3"                value="0x8DC7"/>
97848b8605Smrg  <enum name="UNSIGNED_INT_VEC4"                value="0x8DC8"/>
98848b8605Smrg  <enum name="INT_SAMPLER_1D"                   value="0x8DC9"/>
99848b8605Smrg  <enum name="INT_SAMPLER_2D"                   value="0x8DCA"/>
100848b8605Smrg  <enum name="INT_SAMPLER_3D"                   value="0x8DCB"/>
101848b8605Smrg  <enum name="INT_SAMPLER_CUBE"                 value="0x8DCC"/>
102848b8605Smrg  <enum name="INT_SAMPLER_1D_ARRAY"             value="0x8DCE"/>
103848b8605Smrg  <enum name="INT_SAMPLER_2D_ARRAY"             value="0x8DCF"/>
104848b8605Smrg  <enum name="UNSIGNED_INT_SAMPLER_1D"          value="0x8DD1"/>
105848b8605Smrg  <enum name="UNSIGNED_INT_SAMPLER_2D"          value="0x8DD2"/>
106848b8605Smrg  <enum name="UNSIGNED_INT_SAMPLER_3D"          value="0x8DD3"/>
107848b8605Smrg  <enum name="UNSIGNED_INT_SAMPLER_CUBE"        value="0x8DD4"/>
108848b8605Smrg  <enum name="UNSIGNED_INT_SAMPLER_1D_ARRAY"    value="0x8DD6"/>
109848b8605Smrg  <enum name="UNSIGNED_INT_SAMPLER_2D_ARRAY"    value="0x8DD7"/>
110848b8605Smrg  <enum name="QUERY_WAIT"                       value="0x8E13"/>
111848b8605Smrg  <enum name="QUERY_NO_WAIT"                    value="0x8E14"/>
112848b8605Smrg  <enum name="QUERY_BY_REGION_WAIT"             value="0x8E15"/>
113848b8605Smrg  <enum name="QUERY_BY_REGION_NO_WAIT"          value="0x8E16"/>
114848b8605Smrg  <enum name="BUFFER_ACCESS_FLAGS"              value="0x911F"/>
115848b8605Smrg  <enum name="BUFFER_MAP_LENGTH"                value="0x9120"/>
116848b8605Smrg  <enum name="BUFFER_MAP_OFFSET"                value="0x9121"/>
117848b8605Smrg
118848b8605Smrg  <!-- These functions are unique to GL3 -->
119848b8605Smrg
120b8e80941Smrg  <function name="ClearBufferiv" es2="3.0" marshal="custom" no_error="true">
121848b8605Smrg    <param name="buffer" type="GLenum"/>
122848b8605Smrg    <param name="drawbuffer" type="GLint"/>
123848b8605Smrg    <param name="value" type="const GLint *"/>
124848b8605Smrg  </function>
125848b8605Smrg
126b8e80941Smrg  <function name="ClearBufferuiv" es2="3.0" marshal="custom" no_error="true">
127848b8605Smrg    <param name="buffer" type="GLenum"/>
128848b8605Smrg    <param name="drawbuffer" type="GLint"/>
129848b8605Smrg    <param name="value" type="const GLuint *"/>
130848b8605Smrg  </function>
131848b8605Smrg
132b8e80941Smrg  <function name="ClearBufferfv" es2="3.0" marshal="custom" no_error="true">
133848b8605Smrg    <param name="buffer" type="GLenum"/>
134848b8605Smrg    <param name="drawbuffer" type="GLint"/>
135848b8605Smrg    <param name="value" type="const GLfloat *"/>
136848b8605Smrg  </function>
137848b8605Smrg
138b8e80941Smrg  <function name="ClearBufferfi" es2="3.0" marshal="custom" no_error="true">
139848b8605Smrg    <param name="buffer" type="GLenum"/>
140848b8605Smrg    <param name="drawbuffer" type="GLint"/>
141848b8605Smrg    <param name="depth" type="GLfloat"/>
142848b8605Smrg    <param name="stencil" type="GLint"/>
143848b8605Smrg  </function>
144848b8605Smrg
145b8e80941Smrg  <function name="GetStringi" es2="3.0">
146848b8605Smrg    <param name="name" type="GLenum"/>
147848b8605Smrg    <param name="index" type="GLuint"/>
148848b8605Smrg      <return type="const GLubyte *"/>
149848b8605Smrg  </function>
150848b8605Smrg
151b8e80941Smrg  <function name="ClampColor">
152848b8605Smrg    <param name="target" type="GLenum"/>
153848b8605Smrg    <param name="clamp" type="GLenum"/>
154848b8605Smrg    <glx rop="234"/>
155848b8605Smrg  </function>
156848b8605Smrg
157848b8605Smrg  <!-- These functions alias ones form GL_ARB_draw_buffers2 -->
158848b8605Smrg
159b8e80941Smrg  <function name="ColorMaski" es2="3.2">
160848b8605Smrg    <param name="buf" type="GLuint"/>
161848b8605Smrg    <param name="r" type="GLboolean"/>
162848b8605Smrg    <param name="g" type="GLboolean"/>
163848b8605Smrg    <param name="b" type="GLboolean"/>
164848b8605Smrg    <param name="a" type="GLboolean"/>
165848b8605Smrg  </function>
166848b8605Smrg
167b8e80941Smrg  <function name="GetBooleani_v" es2="3.1">
168848b8605Smrg    <param name="value" type="GLenum"/>
169848b8605Smrg    <param name="index" type="GLuint"/>
170848b8605Smrg    <param name="data" type="GLboolean *"/>
171848b8605Smrg  </function>
172848b8605Smrg
173b8e80941Smrg  <function name="GetIntegeri_v" es2="3.0">
174848b8605Smrg    <param name="value" type="GLenum"/>
175848b8605Smrg    <param name="index" type="GLuint"/>
176848b8605Smrg    <param name="data" type="GLint *"/>
177848b8605Smrg  </function>
178848b8605Smrg
179b8e80941Smrg  <function name="Enablei" es2="3.2">
180848b8605Smrg    <param name="target" type="GLenum"/>
181848b8605Smrg    <param name="index" type="GLuint"/>
182848b8605Smrg  </function>
183848b8605Smrg
184b8e80941Smrg  <function name="Disablei" es2="3.2">
185848b8605Smrg    <param name="target" type="GLenum"/>
186848b8605Smrg    <param name="index" type="GLuint"/>
187848b8605Smrg  </function>
188848b8605Smrg
189b8e80941Smrg  <function name="IsEnabledi" es2="3.2">
190848b8605Smrg    <param name="target" type="GLenum"/>
191848b8605Smrg    <param name="index" type="GLuint"/>
192848b8605Smrg      <return type="GLboolean"/>
193848b8605Smrg  </function>
194848b8605Smrg
195848b8605Smrg  <!-- These functions alias ones form GL_EXT_transform_feedback -->
196848b8605Smrg
197b8e80941Smrg  <function name="GetFragDataLocation" es2="3.0">
198848b8605Smrg    <param name="program" type="GLuint"/>
199848b8605Smrg    <param name="name" type="const GLchar *"/>
200848b8605Smrg      <return type="GLint"/>
201848b8605Smrg  </function>
202848b8605Smrg
203b8e80941Smrg  <function name="BindFragDataLocation" no_error="true">
204848b8605Smrg    <param name="program" type="GLuint"/>
205848b8605Smrg    <param name="colorNumber" type="GLuint"/>
206848b8605Smrg    <param name="name" type="const GLchar *"/>
207848b8605Smrg  </function>
208848b8605Smrg
209b8e80941Smrg  <function name="BeginTransformFeedback" es2="3.0" no_error="true">
210848b8605Smrg    <param name="mode" type="GLenum"/>
211848b8605Smrg  </function>
212848b8605Smrg
213b8e80941Smrg  <function name="EndTransformFeedback" es2="3.0" no_error="true">
214848b8605Smrg  </function>
215848b8605Smrg
216b8e80941Smrg  <function name="BindBufferRange" es2="3.0" no_error="true">
217848b8605Smrg    <param name="target" type="GLenum"/>
218848b8605Smrg    <param name="index" type="GLuint"/>
219848b8605Smrg    <param name="buffer" type="GLuint"/>
220848b8605Smrg    <param name="offset" type="GLintptr"/>
221848b8605Smrg    <param name="size" type="GLsizeiptr"/>
222848b8605Smrg  </function>
223848b8605Smrg
224b8e80941Smrg  <function name="BindBufferBase" es2="3.0">
225848b8605Smrg    <param name="target" type="GLenum"/>
226848b8605Smrg    <param name="index" type="GLuint"/>
227848b8605Smrg    <param name="buffer" type="GLuint"/>
228848b8605Smrg  </function>
229848b8605Smrg
230b8e80941Smrg  <function name="TransformFeedbackVaryings" es2="3.0" no_error="true">
231848b8605Smrg    <param name="program" type="GLuint"/>
232848b8605Smrg    <param name="count" type="GLsizei"/>
233848b8605Smrg    <param name="varyings" type="const GLchar * const *"/>
234848b8605Smrg    <param name="bufferMode" type="GLenum"/>
235848b8605Smrg  </function>
236848b8605Smrg
237b8e80941Smrg  <function name="GetTransformFeedbackVarying" es2="3.0">
238848b8605Smrg    <param name="program" type="GLuint"/>
239848b8605Smrg    <param name="index" type="GLuint"/>
240848b8605Smrg    <param name="bufSize" type="GLsizei"/>
241848b8605Smrg    <param name="length" type="GLsizei *"/>
242848b8605Smrg    <param name="size" type="GLsizei *"/>
243848b8605Smrg    <param name="type" type="GLenum *"/>
244848b8605Smrg    <param name="name" type="GLchar *"/>
245848b8605Smrg  </function>
246848b8605Smrg
247848b8605Smrg  <!-- These functions alias ones from GL_NV_conditional_render -->
248848b8605Smrg
249b8e80941Smrg  <function name="BeginConditionalRender" no_error="true">
250848b8605Smrg    <param name="query" type="GLuint"/>
251848b8605Smrg    <param name="mode" type="GLenum"/>
252848b8605Smrg  </function>
253848b8605Smrg
254b8e80941Smrg  <function name="EndConditionalRender" no_error="true">
255848b8605Smrg  </function>
256848b8605Smrg
257848b8605Smrg  <!-- These functions alias ones from GL_EXT_gpu_shader4 -->
258848b8605Smrg
259b8e80941Smrg  <function name="VertexAttribIPointer" es2="3.0" marshal="async"
260b8e80941Smrg            no_error="true"
261b8e80941Smrg            marshal_fail="_mesa_glthread_is_non_vbo_vertex_attrib_pointer(ctx)">
262848b8605Smrg    <param name="index" type="GLuint"/>
263848b8605Smrg    <param name="size" type="GLint"/>
264848b8605Smrg    <param name="type" type="GLenum"/>
265848b8605Smrg    <param name="stride" type="GLsizei"/>
266848b8605Smrg    <param name="pointer" type="const GLvoid *"/>
267848b8605Smrg  </function>
268848b8605Smrg
269b8e80941Smrg  <function name="GetVertexAttribIiv" es2="3.0">
270848b8605Smrg    <param name="index" type="GLuint"/>
271848b8605Smrg    <param name="pname" type="GLenum"/>
272848b8605Smrg    <param name="params" type="GLint *"/>
273848b8605Smrg  </function>
274848b8605Smrg
275b8e80941Smrg  <function name="GetVertexAttribIuiv" es2="3.0">
276848b8605Smrg    <param name="index" type="GLuint"/>
277848b8605Smrg    <param name="pname" type="GLenum"/>
278848b8605Smrg    <param name="params" type="GLuint *"/>
279848b8605Smrg  </function>
280848b8605Smrg
281848b8605Smrg  <function name="VertexAttribI1i" alias="VertexAttribI1iEXT">
282848b8605Smrg    <param name="index" type="GLuint"/>
283848b8605Smrg    <param name="x" type="GLint"/>
284848b8605Smrg  </function>
285848b8605Smrg
286848b8605Smrg  <function name="VertexAttribI2i" alias="VertexAttribI2iEXT">
287848b8605Smrg    <param name="index" type="GLuint"/>
288848b8605Smrg    <param name="x" type="GLint"/>
289848b8605Smrg    <param name="y" type="GLint"/>
290848b8605Smrg  </function>
291848b8605Smrg
292848b8605Smrg  <function name="VertexAttribI3i" alias="VertexAttribI3iEXT">
293848b8605Smrg    <param name="index" type="GLuint"/>
294848b8605Smrg    <param name="x" type="GLint"/>
295848b8605Smrg    <param name="y" type="GLint"/>
296848b8605Smrg    <param name="z" type="GLint"/>
297848b8605Smrg  </function>
298848b8605Smrg
299848b8605Smrg  <function name="VertexAttribI4i" alias="VertexAttribI4iEXT" es2="3.0">
300848b8605Smrg    <param name="index" type="GLuint"/>
301848b8605Smrg    <param name="x" type="GLint"/>
302848b8605Smrg    <param name="y" type="GLint"/>
303848b8605Smrg    <param name="z" type="GLint"/>
304848b8605Smrg    <param name="w" type="GLint"/>
305848b8605Smrg  </function>
306848b8605Smrg
307848b8605Smrg  <function name="VertexAttribI1ui" alias="VertexAttribI1uiEXT">
308848b8605Smrg    <param name="index" type="GLuint"/>
309848b8605Smrg    <param name="x" type="GLuint"/>
310848b8605Smrg  </function>
311848b8605Smrg
312848b8605Smrg  <function name="VertexAttribI2ui" alias="VertexAttribI2uiEXT">
313848b8605Smrg    <param name="index" type="GLuint"/>
314848b8605Smrg    <param name="x" type="GLuint"/>
315848b8605Smrg    <param name="y" type="GLuint"/>
316848b8605Smrg  </function>
317848b8605Smrg
318848b8605Smrg  <function name="VertexAttribI3ui" alias="VertexAttribI3uiEXT">
319848b8605Smrg    <param name="index" type="GLuint"/>
320848b8605Smrg    <param name="x" type="GLuint"/>
321848b8605Smrg    <param name="y" type="GLuint"/>
322848b8605Smrg    <param name="z" type="GLuint"/>
323848b8605Smrg  </function>
324848b8605Smrg
325848b8605Smrg  <function name="VertexAttribI4ui" alias="VertexAttribI4uiEXT" es2="3.0">
326848b8605Smrg    <param name="index" type="GLuint"/>
327848b8605Smrg    <param name="x" type="GLuint"/>
328848b8605Smrg    <param name="y" type="GLuint"/>
329848b8605Smrg    <param name="z" type="GLuint"/>
330848b8605Smrg    <param name="w" type="GLuint"/>
331848b8605Smrg  </function>
332848b8605Smrg
333b8e80941Smrg  <function name="VertexAttribI1iv">
334848b8605Smrg    <param name="index" type="GLuint"/>
335848b8605Smrg    <param name="v" type="const GLint *"/>
336848b8605Smrg  </function>
337848b8605Smrg
338848b8605Smrg  <function name="VertexAttribI2iv" alias="VertexAttribI2ivEXT">
339848b8605Smrg    <param name="index" type="GLuint"/>
340848b8605Smrg    <param name="v" type="const GLint *"/>
341848b8605Smrg  </function>
342848b8605Smrg
343848b8605Smrg  <function name="VertexAttribI3iv" alias="VertexAttribI3ivEXT">
344848b8605Smrg    <param name="index" type="GLuint"/>
345848b8605Smrg    <param name="v" type="const GLint *"/>
346848b8605Smrg  </function>
347848b8605Smrg
348848b8605Smrg  <function name="VertexAttribI4iv" alias="VertexAttribI4ivEXT" es2="3.0">
349848b8605Smrg    <param name="index" type="GLuint"/>
350848b8605Smrg    <param name="v" type="const GLint *"/>
351848b8605Smrg  </function>
352848b8605Smrg
353b8e80941Smrg  <function name="VertexAttribI1uiv">
354848b8605Smrg    <param name="index" type="GLuint"/>
355848b8605Smrg    <param name="v" type="const GLuint *"/>
356848b8605Smrg  </function>
357848b8605Smrg
358848b8605Smrg  <function name="VertexAttribI2uiv" alias="VertexAttribI2uivEXT">
359848b8605Smrg    <param name="index" type="GLuint"/>
360848b8605Smrg    <param name="v" type="const GLuint *"/>
361848b8605Smrg  </function>
362848b8605Smrg
363848b8605Smrg  <function name="VertexAttribI3uiv" alias="VertexAttribI3uivEXT">
364848b8605Smrg    <param name="index" type="GLuint"/>
365848b8605Smrg    <param name="v" type="const GLuint *"/>
366848b8605Smrg  </function>
367848b8605Smrg
368848b8605Smrg  <function name="VertexAttribI4uiv" alias="VertexAttribI4uivEXT" es2="3.0">
369848b8605Smrg    <param name="index" type="GLuint"/>
370848b8605Smrg    <param name="v" type="const GLuint *"/>
371848b8605Smrg  </function>
372848b8605Smrg
373b8e80941Smrg  <function name="VertexAttribI4bv">
374848b8605Smrg    <param name="index" type="GLuint"/>
375848b8605Smrg    <param name="v" type="const GLbyte *"/>
376848b8605Smrg  </function>
377848b8605Smrg
378b8e80941Smrg  <function name="VertexAttribI4sv">
379848b8605Smrg    <param name="index" type="GLuint"/>
380848b8605Smrg    <param name="v" type="const GLshort *"/>
381848b8605Smrg  </function>
382848b8605Smrg
383b8e80941Smrg  <function name="VertexAttribI4ubv">
384848b8605Smrg    <param name="index" type="GLuint"/>
385848b8605Smrg    <param name="v" type="const GLubyte *"/>
386848b8605Smrg  </function>
387848b8605Smrg
388b8e80941Smrg  <function name="VertexAttribI4usv">
389848b8605Smrg    <param name="index" type="GLuint"/>
390848b8605Smrg    <param name="v" type="const GLushort *"/>
391848b8605Smrg  </function>
392848b8605Smrg
393b8e80941Smrg  <function name="GetUniformuiv" es2="3.0">
394848b8605Smrg    <param name="program" type="GLuint"/>
395848b8605Smrg    <param name="location" type="GLint"/>
396848b8605Smrg    <param name="params" type="GLuint *"/>
397848b8605Smrg  </function>
398848b8605Smrg
399b8e80941Smrg  <function name="Uniform1ui" es2="3.0">
400848b8605Smrg    <param name="location" type="GLint"/>
401848b8605Smrg    <param name="x" type="GLuint"/>
402848b8605Smrg  </function>
403848b8605Smrg
404b8e80941Smrg  <function name="Uniform2ui" es2="3.0">
405848b8605Smrg    <param name="location" type="GLint"/>
406848b8605Smrg    <param name="x" type="GLuint"/>
407848b8605Smrg    <param name="y" type="GLuint"/>
408848b8605Smrg  </function>
409848b8605Smrg
410b8e80941Smrg  <function name="Uniform3ui" es2="3.0">
411848b8605Smrg    <param name="location" type="GLint"/>
412848b8605Smrg    <param name="x" type="GLuint"/>
413848b8605Smrg    <param name="y" type="GLuint"/>
414848b8605Smrg    <param name="z" type="GLuint"/>
415848b8605Smrg  </function>
416848b8605Smrg
417b8e80941Smrg  <function name="Uniform4ui" es2="3.0">
418848b8605Smrg    <param name="location" type="GLint"/>
419848b8605Smrg    <param name="x" type="GLuint"/>
420848b8605Smrg    <param name="y" type="GLuint"/>
421848b8605Smrg    <param name="z" type="GLuint"/>
422848b8605Smrg    <param name="w" type="GLuint"/>
423848b8605Smrg  </function>
424848b8605Smrg
425b8e80941Smrg  <function name="Uniform1uiv" es2="3.0">
426848b8605Smrg    <param name="location" type="GLint"/>
427848b8605Smrg    <param name="count" type="GLsizei" counter="true"/>
428848b8605Smrg    <param name="value" type="const GLuint *" count="count"/>
429848b8605Smrg  </function>
430848b8605Smrg
431b8e80941Smrg  <function name="Uniform2uiv" es2="3.0">
432848b8605Smrg    <param name="location" type="GLint"/>
433848b8605Smrg    <param name="count" type="GLsizei" counter="true"/>
434848b8605Smrg    <param name="value" type="const GLuint *" count="count" count_scale="2"/>
435848b8605Smrg  </function>
436848b8605Smrg
437b8e80941Smrg  <function name="Uniform3uiv" es2="3.0">
438848b8605Smrg    <param name="location" type="GLint"/>
439848b8605Smrg    <param name="count" type="GLsizei" counter="true"/>
440848b8605Smrg    <param name="value" type="const GLuint *" count="count" count_scale="3"/>
441848b8605Smrg  </function>
442848b8605Smrg
443b8e80941Smrg  <function name="Uniform4uiv" es2="3.0">
444848b8605Smrg    <param name="location" type="GLint"/>
445848b8605Smrg    <param name="count" type="GLsizei" counter="true"/>
446848b8605Smrg    <param name="value" type="const GLuint *" count="count" count_scale="4"/>
447848b8605Smrg  </function>
448848b8605Smrg
449848b8605Smrg  <!-- These functions alias ones from GL_EXT_texture_integer -->
450848b8605Smrg
451b8e80941Smrg  <function name="TexParameterIiv" es2="3.2">
452848b8605Smrg    <param name="target" type="GLenum"/>
453848b8605Smrg    <param name="pname" type="GLenum"/>
454848b8605Smrg    <param name="params" type="const GLint *"/>
455848b8605Smrg  </function>
456848b8605Smrg
457b8e80941Smrg  <function name="TexParameterIuiv" es2="3.2">
458848b8605Smrg    <param name="target" type="GLenum"/>
459848b8605Smrg    <param name="pname" type="GLenum"/>
460848b8605Smrg    <param name="params" type="const GLuint *"/>
461848b8605Smrg  </function>
462848b8605Smrg
463b8e80941Smrg  <function name="GetTexParameterIiv" es2="3.2">
464848b8605Smrg    <param name="target" type="GLenum"/>
465848b8605Smrg    <param name="pname" type="GLenum"/>
466848b8605Smrg    <param name="params" type="GLint *"/>
467848b8605Smrg  </function>
468848b8605Smrg
469b8e80941Smrg  <function name="GetTexParameterIuiv" es2="3.2">
470848b8605Smrg    <param name="target" type="GLenum"/>
471848b8605Smrg    <param name="pname" type="GLenum"/>
472848b8605Smrg    <param name="params" type="GLuint *"/>
473848b8605Smrg  </function>
474848b8605Smrg
475848b8605Smrg</category>
476848b8605Smrg
477848b8605Smrg
478848b8605Smrg<category name="3.1">
479848b8605Smrg
480848b8605Smrg  <enum name="UNIFORM_BUFFER"                 value="0x8A11"/>
481848b8605Smrg  <enum name="UNIFORM_BUFFER_BINDING"         value="0x8A28"/>
482848b8605Smrg  <enum name="UNIFORM_BUFFER_START"           value="0x8A29"/>
483848b8605Smrg  <enum name="UNIFORM_BUFFER_SIZE"            value="0x8A2A"/>
484848b8605Smrg  <enum name="MAX_VERTEX_UNIFORM_BLOCKS"      value="0x8A2B"/>
485848b8605Smrg  <enum name="MAX_GEOMETRY_UNIFORM_BLOCKS"    value="0x8A2C"/>
486848b8605Smrg  <enum name="MAX_FRAGMENT_UNIFORM_BLOCKS"    value="0x8A2D"/>
487848b8605Smrg  <enum name="MAX_COMBINED_UNIFORM_BLOCKS"    value="0x8A2E"/>
488848b8605Smrg  <enum name="MAX_UNIFORM_BUFFER_BINDINGS"    value="0x8A2F"/>
489848b8605Smrg  <enum name="MAX_UNIFORM_BLOCK_SIZE"         value="0x8A30"/>
490848b8605Smrg  <enum name="MAX_COMBINED_VERTEX_UNIFORM_COMPONENTS" value="0x8A31"/>
491848b8605Smrg  <enum name="MAX_COMBINED_GEOMETRY_UNIFORM_COMPONENTS" value="0x8A32"/>
492848b8605Smrg  <enum name="MAX_COMBINED_FRAGMENT_UNIFORM_COMPONENTS" value="0x8A33"/>
493848b8605Smrg  <enum name="UNIFORM_BUFFER_OFFSET_ALIGNMENT" value="0x8A34"/>
494848b8605Smrg  <enum name="ACTIVE_UNIFORM_BLOCK_MAX_NAME_LENGTH" value="0x8A35"/>
495848b8605Smrg  <enum name="ACTIVE_UNIFORM_BLOCKS"          value="0x8A36"/>
496848b8605Smrg  <enum name="UNIFORM_TYPE"                   value="0x8A37"/>
497848b8605Smrg  <enum name="UNIFORM_SIZE"                   value="0x8A38"/>
498848b8605Smrg  <enum name="UNIFORM_NAME_LENGTH"            value="0x8A39"/>
499848b8605Smrg  <enum name="UNIFORM_BLOCK_INDEX"            value="0x8A3A"/>
500848b8605Smrg  <enum name="UNIFORM_OFFSET"                 value="0x8A3B"/>
501848b8605Smrg  <enum name="UNIFORM_ARRAY_STRIDE"           value="0x8A3C"/>
502848b8605Smrg  <enum name="UNIFORM_MATRIX_STRIDE"          value="0x8A3D"/>
503848b8605Smrg  <enum name="UNIFORM_IS_ROW_MAJOR"           value="0x8A3E"/>
504848b8605Smrg  <enum name="UNIFORM_BLOCK_BINDING"          value="0x8A3F"/>
505848b8605Smrg  <enum name="UNIFORM_BLOCK_DATA_SIZE"        value="0x8A40"/>
506848b8605Smrg  <enum name="UNIFORM_BLOCK_NAME_LENGTH"      value="0x8A41"/>
507848b8605Smrg  <enum name="UNIFORM_BLOCK_ACTIVE_UNIFORMS"  value="0x8A42"/>
508848b8605Smrg  <enum name="UNIFORM_BLOCK_ACTIVE_UNIFORM_INDICES" value="0x8A43"/>
509848b8605Smrg  <enum name="UNIFORM_BLOCK_REFERENCED_BY_VERTEX_SHADER" value="0x8A44"/>
510848b8605Smrg  <enum name="UNIFORM_BLOCK_REFERENCED_BY_GEOMETRY_SHADER" value="0x8A45"/>
511848b8605Smrg  <enum name="UNIFORM_BLOCK_REFERENCED_BY_FRAGMENT_SHADER" value="0x8A46"/>
512848b8605Smrg  <enum name="SAMPLER_2D_RECT"                value="0x8B63"/>
513848b8605Smrg  <enum name="SAMPLER_2D_RECT_SHADOW"         value="0x8B64"/>
514848b8605Smrg  <enum name="FRAMEBUFFER_SRGB"               value="0x8DB9"/>
515848b8605Smrg  <enum name="SAMPLER_BUFFER"                 value="0x8DC2"/>
516848b8605Smrg  <enum name="INT_SAMPLER_2D_RECT"            value="0x8DCD"/>
517848b8605Smrg  <enum name="INT_SAMPLER_BUFFER"             value="0x8DD0"/>
518848b8605Smrg  <enum name="UNSIGNED_INT_SAMPLER_2D_RECT"   value="0x8DD5"/>
519848b8605Smrg  <enum name="UNSIGNED_INT_SAMPLER_BUFFER"    value="0x8DD8"/>
520848b8605Smrg  <enum name="TEXTURE_BUFFER"                 value="0x8C2A"/>
521848b8605Smrg  <enum name="MAX_TEXTURE_BUFFER_SIZE"        value="0x8C2B"/>
522848b8605Smrg  <enum name="TEXTURE_BINDING_BUFFER"         value="0x8C2C"/>
523848b8605Smrg  <enum name="TEXTURE_BUFFER_DATA_STORE_BINDING" value="0x8C2D"/>
524848b8605Smrg  <enum name="TEXTURE_BUFFER_FORMAT"          value="0x8C2E"/>
525848b8605Smrg  <enum name="TEXTURE_RECTANGLE"              value="0x84F5"/>
526848b8605Smrg  <enum name="TEXTURE_BINDING_RECTANGLE"      value="0x84F6"/>
527848b8605Smrg  <enum name="PROXY_TEXTURE_RECTANGLE"        value="0x84F7"/>
528848b8605Smrg  <enum name="MAX_RECTANGLE_TEXTURE_SIZE"     value="0x84F8"/>
529848b8605Smrg  <enum name="RED_SNORM"                      value="0x8F90"/>
530848b8605Smrg  <enum name="RG_SNORM"                       value="0x8F91"/>
531848b8605Smrg  <enum name="RGB_SNORM"                      value="0x8F92"/>
532848b8605Smrg  <enum name="RGBA_SNORM"                     value="0x8F93"/>
533848b8605Smrg  <enum name="R8_SNORM"                       value="0x8F94"/>
534848b8605Smrg  <enum name="RG8_SNORM"                      value="0x8F95"/>
535848b8605Smrg  <enum name="RGB8_SNORM"                     value="0x8F96"/>
536848b8605Smrg  <enum name="RGBA8_SNORM"                    value="0x8F97"/>
537848b8605Smrg  <enum name="R16_SNORM"                      value="0x8F98"/>
538848b8605Smrg  <enum name="RG16_SNORM"                     value="0x8F99"/>
539848b8605Smrg  <enum name="RGB16_SNORM"                    value="0x8F9A"/>
540848b8605Smrg  <enum name="RGBA16_SNORM"                   value="0x8F9B"/>
541848b8605Smrg  <enum name="SIGNED_NORMALIZED"              value="0x8F9C"/>
542848b8605Smrg  <enum name="PRIMITIVE_RESTART"              value="0x8F9D"/>
543848b8605Smrg  <enum name="PRIMITIVE_RESTART_INDEX"        value="0x8F9E"/>
544848b8605Smrg
545848b8605Smrg  <function name="DrawArraysInstanced" alias="DrawArraysInstancedARB" es2="3.0">
546848b8605Smrg    <param name="mode" type="GLenum"/>
547848b8605Smrg    <param name="first" type="GLint"/>
548848b8605Smrg    <param name="count" type="GLsizei"/>
549848b8605Smrg    <param name="primcount" type="GLsizei"/>
550848b8605Smrg  </function>
551848b8605Smrg
552848b8605Smrg  <function name="DrawElementsInstanced" alias="DrawElementsInstancedARB" es2="3.0">
553848b8605Smrg    <param name="mode" type="GLenum"/>
554848b8605Smrg    <param name="count" type="GLsizei"/>
555848b8605Smrg    <param name="type" type="GLenum"/>
556848b8605Smrg    <param name="indices" type="const GLvoid *"/>
557848b8605Smrg    <param name="primcount" type="GLsizei"/>
558848b8605Smrg  </function>
559848b8605Smrg
560b8e80941Smrg  <function name="TexBuffer" es2="3.2">
561848b8605Smrg    <param name="target" type="GLenum"/>
562848b8605Smrg    <param name="internalFormat" type="GLenum"/>
563848b8605Smrg    <param name="buffer" type="GLuint"/>
564848b8605Smrg  </function>
565848b8605Smrg
566b8e80941Smrg  <function name="PrimitiveRestartIndex" no_error="true">
567848b8605Smrg    <param name="index" type="GLuint"/>
568848b8605Smrg  </function>
569848b8605Smrg
570848b8605Smrg</category>
571848b8605Smrg
572848b8605Smrg
573848b8605Smrg<category name="3.2">
574848b8605Smrg
575848b8605Smrg  <enum name="CONTEXT_CORE_PROFILE_BIT"             value="0x00000001"/>
576848b8605Smrg  <enum name="CONTEXT_COMPATIBILITY_PROFILE_BIT"    value="0x00000002"/>
577848b8605Smrg  <enum name="LINES_ADJACENCY"                      value="0x000A"/>
578848b8605Smrg  <enum name="LINE_STRIP_ADJACENCY"                 value="0x000B"/>
579848b8605Smrg  <enum name="TRIANGLES_ADJACENCY"                  value="0x000C"/>
580848b8605Smrg  <enum name="TRIANGLE_STRIP_ADJACENCY"             value="0x000D"/>
581848b8605Smrg  <enum name="PROGRAM_POINT_SIZE"                   value="0x8642"/>
582848b8605Smrg  <enum name="MAX_GEOMETRY_TEXTURE_IMAGE_UNITS"     value="0x8C29"/>
583848b8605Smrg  <enum name="FRAMEBUFFER_ATTACHMENT_LAYERED"       value="0x8DA7"/>
584848b8605Smrg  <enum name="FRAMEBUFFER_INCOMPLETE_LAYER_TARGETS" value="0x8DA8"/>
585848b8605Smrg  <enum name="GEOMETRY_SHADER"                      value="0x8DD9"/>
586848b8605Smrg  <enum name="GEOMETRY_VERTICES_OUT"                value="0x8916"/>
587848b8605Smrg  <enum name="GEOMETRY_INPUT_TYPE"                  value="0x8917"/>
588848b8605Smrg  <enum name="GEOMETRY_OUTPUT_TYPE"                 value="0x8918"/>
589848b8605Smrg  <enum name="MAX_GEOMETRY_UNIFORM_COMPONENTS"      value="0x8DDF"/>
590848b8605Smrg  <enum name="MAX_GEOMETRY_OUTPUT_VERTICES"         value="0x8DE0"/>
591848b8605Smrg  <enum name="MAX_GEOMETRY_TOTAL_OUTPUT_COMPONENTS" value="0x8DE1"/>
592848b8605Smrg  <enum name="MAX_VERTEX_OUTPUT_COMPONENTS"         value="0x9122"/>
593848b8605Smrg  <enum name="MAX_GEOMETRY_INPUT_COMPONENTS"        value="0x9123"/>
594848b8605Smrg  <enum name="MAX_GEOMETRY_OUTPUT_COMPONENTS"       value="0x9124"/>
595848b8605Smrg  <enum name="MAX_FRAGMENT_INPUT_COMPONENTS"        value="0x9125"/>
596848b8605Smrg  <enum name="CONTEXT_PROFILE_MASK"                 value="0x9126"/>
597848b8605Smrg
598b8e80941Smrg  <function name="GetInteger64i_v" es2="3.0">
599848b8605Smrg    <param name="cap" type="GLenum"/>
600848b8605Smrg    <param name="index" type="GLuint"/>
601848b8605Smrg    <param name="data" type="GLint64 *"/>
602848b8605Smrg  </function>
603848b8605Smrg
604b8e80941Smrg  <function name="GetBufferParameteri64v" es2="3.0">
605848b8605Smrg    <param name="target" type="GLenum"/>
606848b8605Smrg    <param name="pname" type="GLenum"/>
607848b8605Smrg    <param name="params" type="GLint64 *"/>
608848b8605Smrg  </function>
609848b8605Smrg
610b8e80941Smrg  <function name="FramebufferTexture" es2="3.2" no_error="true">
611848b8605Smrg    <param name="target" type="GLenum"/>
612848b8605Smrg    <param name="attachment" type="GLenum"/>
613848b8605Smrg    <param name="texture" type="GLuint"/>
614848b8605Smrg    <param name="level" type="GLint"/>
615848b8605Smrg  </function>
616848b8605Smrg
617848b8605Smrg</category>
618848b8605Smrg
619848b8605Smrg
620848b8605Smrg<category name="3.3">
621848b8605Smrg  <!-- There are other new functions and tokens defined by other extensions -->
622848b8605Smrg  <enum name="TEXTURE_SWIZZLE_R"                value="0x8E42"/>
623848b8605Smrg  <enum name="TEXTURE_SWIZZLE_G"                value="0x8E43"/>
624848b8605Smrg  <enum name="TEXTURE_SWIZZLE_B"                value="0x8E44"/>
625848b8605Smrg  <enum name="TEXTURE_SWIZZLE_A"                value="0x8E45"/>
626848b8605Smrg  <enum name="TEXTURE_SWIZZLE_RGBA"             value="0x8E46"/>
627848b8605Smrg
628b8e80941Smrg  <function name="VertexAttribDivisor" es2="3.0" no_error="true">
629848b8605Smrg    <param name="index" type="GLuint"/>
630848b8605Smrg    <param name="divisor" type="GLuint"/>
631848b8605Smrg  </function>
632848b8605Smrg
633848b8605Smrg</category>
634848b8605Smrg
635848b8605Smrg</OpenGLAPI>
636