mesa: Implement VertexArrayBindingDivisor
[mesa.git] / src / mapi / glapi / gen / ARB_direct_state_access.xml
1 <?xml version="1.0"?>
2 <!DOCTYPE OpenGLAPI SYSTEM "gl_API.dtd">
3
4 <OpenGLAPI>
5 <category name="GL_ARB_direct_state_access" number="164">
6 <enum name="TEXTURE_TARGET" value="0x1006"/>
7 <enum name="QUERY_TARGET" value="0x82EA"/>
8 <enum name="TEXTURE_BINDING" value="0x82EB"/>
9
10 <!-- Transform Feedback object functions -->
11
12 <function name="CreateTransformFeedbacks" offset="assign">
13 <param name="n" type="GLsizei" />
14 <param name="ids" type="GLuint *" />
15 </function>
16
17 <function name="TransformFeedbackBufferBase" offset="assign">
18 <param name="xfb" type="GLuint" />
19 <param name="index" type="GLuint" />
20 <param name="buffer" type="GLuint" />
21 </function>
22
23 <function name="TransformFeedbackBufferRange" offset="assign">
24 <param name="xfb" type="GLuint" />
25 <param name="index" type="GLuint" />
26 <param name="buffer" type="GLuint" />
27 <param name="offset" type="GLintptr" />
28 <param name="size" type="GLsizeiptr" />
29 </function>
30
31 <function name="GetTransformFeedbackiv" offset="assign">
32 <param name="xfb" type="GLuint" />
33 <param name="pname" type="GLenum" />
34 <param name="param" type="GLint *" />
35 </function>
36
37 <function name="GetTransformFeedbacki_v" offset="assign">
38 <param name="xfb" type="GLuint" />
39 <param name="pname" type="GLenum" />
40 <param name="index" type="GLuint" />
41 <param name="param" type="GLint *" />
42 </function>
43
44 <function name="GetTransformFeedbacki64_v" offset="assign">
45 <param name="xfb" type="GLuint" />
46 <param name="pname" type="GLenum" />
47 <param name="index" type="GLuint" />
48 <param name="param" type="GLint64 *" />
49 </function>
50
51 <!-- Buffer object functions -->
52
53 <function name="CreateBuffers" offset="assign">
54 <param name="n" type="GLsizei" />
55 <param name="buffers" type="GLuint *" />
56 </function>
57
58 <function name="NamedBufferStorage" offset="assign">
59 <param name="buffer" type="GLuint" />
60 <param name="size" type="GLsizeiptr" />
61 <param name="data" type="const GLvoid *" />
62 <param name="flags" type="GLbitfield" />
63 </function>
64
65 <function name="NamedBufferData" offset="assign">
66 <param name="buffer" type="GLuint" />
67 <param name="size" type="GLsizeiptr" />
68 <param name="data" type="const GLvoid *" />
69 <param name="usage" type="GLenum" />
70 </function>
71
72 <function name="NamedBufferSubData" offset="assign">
73 <param name="buffer" type="GLuint" />
74 <param name="offset" type="GLintptr" />
75 <param name="size" type="GLsizeiptr" />
76 <param name="data" type="const GLvoid *" />
77 </function>
78
79 <function name="CopyNamedBufferSubData" offset="assign">
80 <param name="readBuffer" type="GLuint" />
81 <param name="writeBuffer" type="GLuint" />
82 <param name="readOffset" type="GLintptr" />
83 <param name="writeOffset" type="GLintptr" />
84 <param name="size" type="GLsizeiptr" />
85 </function>
86
87 <function name="ClearNamedBufferData" offset="assign">
88 <param name="buffer" type="GLuint" />
89 <param name="internalformat" type="GLenum" />
90 <param name="format" type="GLenum" />
91 <param name="type" type="GLenum" />
92 <param name="data" type="const GLvoid *" />
93 </function>
94
95 <function name="ClearNamedBufferSubData" offset="assign">
96 <param name="buffer" type="GLuint" />
97 <param name="internalformat" type="GLenum" />
98 <param name="offset" type="GLintptr" />
99 <param name="size" type="GLsizeiptr" />
100 <param name="format" type="GLenum" />
101 <param name="type" type="GLenum" />
102 <param name="data" type="const GLvoid *" />
103 </function>
104
105 <function name="MapNamedBuffer" offset="assign">
106 <return type="GLvoid *" />
107 <param name="buffer" type="GLuint" />
108 <param name="access" type="GLenum" />
109 </function>
110
111 <function name="MapNamedBufferRange" offset="assign">
112 <return type="GLvoid *" />
113 <param name="buffer" type="GLuint" />
114 <param name="offset" type="GLintptr" />
115 <param name="length" type="GLsizeiptr" />
116 <param name="access" type="GLbitfield" />
117 </function>
118
119 <function name="UnmapNamedBuffer" offset="assign">
120 <return type="GLboolean" />
121 <param name="buffer" type="GLuint" />
122 </function>
123
124 <function name="FlushMappedNamedBufferRange" offset="assign">
125 <param name="buffer" type="GLuint" />
126 <param name="offset" type="GLintptr" />
127 <param name="length" type="GLsizeiptr" />
128 </function>
129
130 <function name="GetNamedBufferParameteriv" offset="assign">
131 <param name="buffer" type="GLuint" />
132 <param name="pname" type="GLenum" />
133 <param name="params" type="GLint *" />
134 </function>
135
136 <function name="GetNamedBufferParameteri64v" offset="assign">
137 <param name="buffer" type="GLuint" />
138 <param name="pname" type="GLenum" />
139 <param name="params" type="GLint64 *" />
140 </function>
141
142 <function name="GetNamedBufferPointerv" offset="assign">
143 <param name="buffer" type="GLuint" />
144 <param name="pname" type="GLenum" />
145 <param name="params" type="GLvoid **" />
146 </function>
147
148 <function name="GetNamedBufferSubData" offset="assign">
149 <param name="buffer" type="GLuint" />
150 <param name="offset" type="GLintptr" />
151 <param name="size" type="GLsizeiptr" />
152 <param name="data" type="GLvoid *" />
153 </function>
154
155 <!-- Renderbuffer object functions -->
156
157 <function name="CreateRenderbuffers" offset="assign">
158 <param name="n" type="GLsizei" />
159 <param name="renderbuffers" type="GLuint *" />
160 </function>
161
162 <function name="NamedRenderbufferStorage" offset="assign">
163 <param name="renderbuffer" type="GLuint" />
164 <param name="internalformat" type="GLenum" />
165 <param name="width" type="GLsizei" />
166 <param name="height" type="GLsizei" />
167 </function>
168
169 <function name="NamedRenderbufferStorageMultisample" offset="assign">
170 <param name="renderbuffer" type="GLuint" />
171 <param name="samples" type="GLsizei" />
172 <param name="internalformat" type="GLenum" />
173 <param name="width" type="GLsizei" />
174 <param name="height" type="GLsizei" />
175 </function>
176
177 <function name="GetNamedRenderbufferParameteriv" offset="assign">
178 <param name="renderbuffer" type="GLuint" />
179 <param name="pname" type="GLenum" />
180 <param name="params" type="GLint *" />
181 </function>
182
183 <!-- Texture object functions -->
184
185 <function name="CreateTextures" offset="assign">
186 <param name="target" type="GLenum" />
187 <param name="n" type="GLsizei" />
188 <param name="textures" type="GLuint *" />
189 </function>
190
191 <function name="TextureBuffer" offset="assign">
192 <param name="texture" type="GLuint" />
193 <param name="internalformat" type="GLenum" />
194 <param name="buffer" type="GLuint" />
195 </function>
196
197 <function name="TextureBufferRange" offset="assign">
198 <param name="texture" type="GLuint" />
199 <param name="internalformat" type="GLenum" />
200 <param name="buffer" type="GLuint" />
201 <param name="offset" type="GLintptr" />
202 <param name="size" type="GLsizeiptr" />
203 </function>
204
205 <function name="TextureStorage1D" offset="assign">
206 <param name="texture" type="GLuint" />
207 <param name="levels" type="GLsizei" />
208 <param name="internalformat" type="GLenum" />
209 <param name="width" type="GLsizei" />
210 </function>
211
212 <function name="TextureStorage2D" offset="assign">
213 <param name="texture" type="GLuint" />
214 <param name="levels" type="GLsizei" />
215 <param name="internalformat" type="GLenum" />
216 <param name="width" type="GLsizei" />
217 <param name="height" type="GLsizei" />
218 </function>
219
220 <function name="TextureStorage3D" offset="assign">
221 <param name="texture" type="GLuint" />
222 <param name="levels" type="GLsizei" />
223 <param name="internalformat" type="GLenum" />
224 <param name="width" type="GLsizei" />
225 <param name="height" type="GLsizei" />
226 <param name="depth" type="GLsizei" />
227 </function>
228
229 <function name="TextureStorage2DMultisample" offset="assign">
230 <param name="texture" type="GLuint" />
231 <param name="samples" type="GLsizei" />
232 <param name="internalformat" type="GLenum" />
233 <param name="width" type="GLsizei" />
234 <param name="height" type="GLsizei" />
235 <param name="fixedsamplelocations" type="GLboolean" />
236 </function>
237
238 <function name="TextureStorage3DMultisample" offset="assign">
239 <param name="texture" type="GLuint" />
240 <param name="samples" type="GLsizei" />
241 <param name="internalformat" type="GLenum" />
242 <param name="width" type="GLsizei" />
243 <param name="height" type="GLsizei" />
244 <param name="depth" type="GLsizei" />
245 <param name="fixedsamplelocations" type="GLboolean" />
246 </function>
247
248 <function name="TextureSubImage1D" offset="assign">
249 <param name="texture" type="GLuint" />
250 <param name="level" type="GLint" />
251 <param name="xoffset" type="GLint" />
252 <param name="width" type="GLsizei" />
253 <param name="format" type="GLenum" />
254 <param name="type" type="GLenum" />
255 <param name="pixels" type="const GLvoid *" />
256 </function>
257
258 <function name="TextureSubImage2D" offset="assign">
259 <param name="texture" type="GLuint" />
260 <param name="level" type="GLint" />
261 <param name="xoffset" type="GLint" />
262 <param name="yoffset" type="GLint" />
263 <param name="width" type="GLsizei" />
264 <param name="height" type="GLsizei" />
265 <param name="format" type="GLenum" />
266 <param name="type" type="GLenum" />
267 <param name="pixels" type="const GLvoid *" />
268 </function>
269
270 <function name="TextureSubImage3D" offset="assign">
271 <param name="texture" type="GLuint" />
272 <param name="level" type="GLint" />
273 <param name="xoffset" type="GLint" />
274 <param name="yoffset" type="GLint" />
275 <param name="zoffset" type="GLint" />
276 <param name="width" type="GLsizei" />
277 <param name="height" type="GLsizei" />
278 <param name="depth" type="GLsizei" />
279 <param name="format" type="GLenum" />
280 <param name="type" type="GLenum" />
281 <param name="pixels" type="const GLvoid *" />
282 </function>
283
284 <function name="CompressedTextureSubImage1D" offset="assign">
285 <param name="texture" type="GLuint" />
286 <param name="level" type="GLint" />
287 <param name="xoffset" type="GLint" />
288 <param name="width" type="GLsizei" />
289 <param name="format" type="GLenum" />
290 <param name="imageSize" type="GLsizei" />
291 <param name="data" type="const GLvoid *" />
292 </function>
293
294 <function name="CompressedTextureSubImage2D" offset="assign">
295 <param name="texture" type="GLuint" />
296 <param name="level" type="GLint" />
297 <param name="xoffset" type="GLint" />
298 <param name="yoffset" type="GLint" />
299 <param name="width" type="GLsizei" />
300 <param name="height" type="GLsizei" />
301 <param name="format" type="GLenum" />
302 <param name="imageSize" type="GLsizei" />
303 <param name="data" type="const GLvoid *" />
304 </function>
305
306 <function name="CompressedTextureSubImage3D" offset="assign">
307 <param name="texture" type="GLuint" />
308 <param name="level" type="GLint" />
309 <param name="xoffset" type="GLint" />
310 <param name="yoffset" type="GLint" />
311 <param name="zoffset" type="GLint" />
312 <param name="width" type="GLsizei" />
313 <param name="height" type="GLsizei" />
314 <param name="depth" type="GLsizei" />
315 <param name="format" type="GLenum" />
316 <param name="imageSize" type="GLsizei" />
317 <param name="data" type="const GLvoid *" />
318 </function>
319
320 <function name="CopyTextureSubImage1D" offset="assign">
321 <param name="texture" type="GLuint" />
322 <param name="level" type="GLint" />
323 <param name="xoffset" type="GLint" />
324 <param name="x" type="GLint" />
325 <param name="y" type="GLint" />
326 <param name="width" type="GLsizei" />
327 </function>
328
329 <function name="CopyTextureSubImage2D" offset="assign">
330 <param name="texture" type="GLuint" />
331 <param name="level" type="GLint" />
332 <param name="xoffset" type="GLint" />
333 <param name="yoffset" type="GLint" />
334 <param name="x" type="GLint" />
335 <param name="y" type="GLint" />
336 <param name="width" type="GLsizei" />
337 <param name="height" type="GLsizei" />
338 </function>
339
340 <function name="CopyTextureSubImage3D" offset="assign">
341 <param name="texture" type="GLuint" />
342 <param name="level" type="GLint" />
343 <param name="xoffset" type="GLint" />
344 <param name="yoffset" type="GLint" />
345 <param name="zoffset" type="GLint" />
346 <param name="x" type="GLint" />
347 <param name="y" type="GLint" />
348 <param name="width" type="GLsizei" />
349 <param name="height" type="GLsizei" />
350 </function>
351
352 <function name="TextureParameterf" offset="assign">
353 <param name="texture" type="GLuint" />
354 <param name="pname" type="GLenum" />
355 <param name="param" type="GLfloat" />
356 </function>
357
358 <function name="TextureParameterfv" offset="assign">
359 <param name="texture" type="GLuint" />
360 <param name="pname" type="GLenum" />
361 <param name="param" type="const GLfloat *" />
362 </function>
363
364 <function name="TextureParameteri" offset="assign">
365 <param name="texture" type="GLuint" />
366 <param name="pname" type="GLenum" />
367 <param name="param" type="GLint" />
368 </function>
369
370 <function name="TextureParameterIiv" offset="assign">
371 <param name="texture" type="GLuint" />
372 <param name="pname" type="GLenum" />
373 <param name="params" type="const GLint *" />
374 </function>
375
376 <function name="TextureParameterIuiv" offset="assign">
377 <param name="texture" type="GLuint" />
378 <param name="pname" type="GLenum" />
379 <param name="params" type="const GLuint *" />
380 </function>
381
382 <function name="TextureParameteriv" offset="assign">
383 <param name="texture" type="GLuint" />
384 <param name="pname" type="GLenum" />
385 <param name="param" type="const GLint *" />
386 </function>
387
388 <function name="GenerateTextureMipmap" offset="assign">
389 <param name="texture" type="GLuint" />
390 </function>
391
392 <function name="BindTextureUnit" offset="assign">
393 <param name="unit" type="GLuint" />
394 <param name="texture" type="GLuint" />
395 </function>
396
397 <function name="GetTextureImage" offset="assign">
398 <param name="texture" type="GLuint" />
399 <param name="level" type="GLint" />
400 <param name="format" type="GLenum" />
401 <param name="type" type="GLenum" />
402 <param name="bufSize" type="GLsizei" />
403 <param name="pixels" type="GLvoid *" />
404 </function>
405
406 <function name="GetCompressedTextureImage" offset="assign">
407 <param name="texture" type="GLuint" />
408 <param name="level" type="GLint" />
409 <param name="bufSize" type="GLsizei" />
410 <param name="pixels" type="GLvoid *" />
411 </function>
412
413 <function name="GetTextureLevelParameterfv" offset="assign">
414 <param name="texture" type="GLuint" />
415 <param name="level" type="GLint" />
416 <param name="pname" type="GLenum" />
417 <param name="params" type="GLfloat *" />
418 </function>
419
420 <function name="GetTextureLevelParameteriv" offset="assign">
421 <param name="texture" type="GLuint" />
422 <param name="level" type="GLint" />
423 <param name="pname" type="GLenum" />
424 <param name="params" type="GLint *" />
425 </function>
426
427 <function name="GetTextureParameterfv" offset="assign">
428 <param name="texture" type="GLuint" />
429 <param name="pname" type="GLenum" />
430 <param name="params" type="GLfloat *" />
431 </function>
432
433 <function name="GetTextureParameterIiv" offset="assign">
434 <param name="texture" type="GLuint" />
435 <param name="pname" type="GLenum" />
436 <param name="params" type="GLint *" />
437 </function>
438
439 <function name="GetTextureParameterIuiv" offset="assign">
440 <param name="texture" type="GLuint" />
441 <param name="pname" type="GLenum" />
442 <param name="params" type="GLuint *" />
443 </function>
444
445 <function name="GetTextureParameteriv" offset="assign">
446 <param name="texture" type="GLuint" />
447 <param name="pname" type="GLenum" />
448 <param name="params" type="GLint *" />
449 </function>
450
451 <!-- Vertex Array object functions -->
452
453 <function name="CreateVertexArrays" offset="assign">
454 <param name="n" type="GLsizei" />
455 <param name="arrays" type="GLuint *" />
456 </function>
457
458 <function name="DisableVertexArrayAttrib" offset="assign">
459 <param name="vaobj" type="GLuint" />
460 <param name="index" type="GLuint" />
461 </function>
462
463 <function name="EnableVertexArrayAttrib" offset="assign">
464 <param name="vaobj" type="GLuint" />
465 <param name="index" type="GLuint" />
466 </function>
467
468 <function name="VertexArrayElementBuffer" offset="assign">
469 <param name="vaobj" type="GLuint" />
470 <param name="buffer" type="GLuint" />
471 </function>
472
473 <function name="VertexArrayVertexBuffer" offset="assign">
474 <param name="vaobj" type="GLuint" />
475 <param name="bindingindex" type="GLuint" />
476 <param name="buffer" type="GLuint" />
477 <param name="offset" type="GLintptr" />
478 <param name="stride" type="GLsizei" />
479 </function>
480
481 <function name="VertexArrayVertexBuffers" offset="assign">
482 <param name="vaobj" type="GLuint" />
483 <param name="first" type="GLuint" />
484 <param name="count" type="GLsizei" />
485 <param name="buffers" type="const GLuint *" />
486 <param name="offsets" type="const GLintptr *" />
487 <param name="strides" type="const GLsizei *" />
488 </function>
489
490 <function name="VertexArrayAttribFormat" offset="assign">
491 <param name="vaobj" type="GLuint" />
492 <param name="attribindex" type="GLuint" />
493 <param name="size" type="GLint" />
494 <param name="type" type="GLenum" />
495 <param name="normalized" type="GLboolean" />
496 <param name="relativeoffset" type="GLuint" />
497 </function>
498
499 <function name="VertexArrayAttribIFormat" offset="assign">
500 <param name="vaobj" type="GLuint" />
501 <param name="attribindex" type="GLuint" />
502 <param name="size" type="GLint" />
503 <param name="type" type="GLenum" />
504 <param name="relativeoffset" type="GLuint" />
505 </function>
506
507 <function name="VertexArrayAttribLFormat" offset="assign">
508 <param name="vaobj" type="GLuint" />
509 <param name="attribindex" type="GLuint" />
510 <param name="size" type="GLint" />
511 <param name="type" type="GLenum" />
512 <param name="relativeoffset" type="GLuint" />
513 </function>
514
515 <function name="VertexArrayAttribBinding" offset="assign">
516 <param name="vaobj" type="GLuint" />
517 <param name="attribindex" type="GLuint" />
518 <param name="bindingindex" type="GLuint" />
519 </function>
520
521 <function name="VertexArrayBindingDivisor" offset="assign">
522 <param name="vaobj" type="GLuint" />
523 <param name="bindingindex" type="GLuint" />
524 <param name="divisor" type="GLuint" />
525 </function>
526
527 <!-- Sampler object functions -->
528
529 <function name="CreateSamplers" offset="assign">
530 <param name="n" type="GLsizei" />
531 <param name="samplers" type="GLuint *" />
532 </function>
533
534 <!-- Program Pipeline object functions -->
535
536 <function name="CreateProgramPipelines" offset="assign">
537 <param name="n" type="GLsizei" />
538 <param name="pipelines" type="GLuint *" />
539 </function>
540
541 <!-- Query object functions -->
542
543 <function name="CreateQueries" offset="assign">
544 <param name="target" type="GLenum" />
545 <param name="n" type="GLsizei" />
546 <param name="ids" type="GLuint *" />
547 </function>
548
549 <function name="GetQueryBufferObjectiv" offset="assign">
550 <param name="id" type="GLuint" />
551 <param name="buffer" type="GLuint" />
552 <param name="pname" type="GLenum" />
553 <param name="offset" type="GLintptr" />
554 </function>
555
556 <function name="GetQueryBufferObjectuiv" offset="assign">
557 <param name="id" type="GLuint" />
558 <param name="buffer" type="GLuint" />
559 <param name="pname" type="GLenum" />
560 <param name="offset" type="GLintptr" />
561 </function>
562
563 <function name="GetQueryBufferObjecti64v" offset="assign">
564 <param name="id" type="GLuint" />
565 <param name="buffer" type="GLuint" />
566 <param name="pname" type="GLenum" />
567 <param name="offset" type="GLintptr" />
568 </function>
569
570 <function name="GetQueryBufferObjectui64v" offset="assign">
571 <param name="id" type="GLuint" />
572 <param name="buffer" type="GLuint" />
573 <param name="pname" type="GLenum" />
574 <param name="offset" type="GLintptr" />
575 </function>
576 </category>
577 </OpenGLAPI>