mesa/es: Validate glMapBuffer access in Mesa code rather than the ES wrapper
[mesa.git] / src / mesa / main / APIspec.xml
1 <?xml version="1.0"?>
2 <!DOCTYPE apispec SYSTEM "APIspec.dtd">
3
4 <!-- A function is generated from a template. Multiple functions can be
5 generated from a single template with different arguments. For example,
6 glColor3f can be generated from
7
8 <function name="Color3f" template="Color" gltype="GLfloat" vector_size="3" expand_vector="true"/>
9
10 and glColor4iv can be generated from
11
12 <function name="Color4iv" template="Color" gltype="GLint" vector_size="4"/>
13
14 In a template, there are <desc>s that describe the properties of
15 parameters. A <desc> can enumerate the valid values of a parameter. It
16 can also specify the error code when an invalid value is given, and etc.
17 By nesting <desc>s, they can create dependency between parameters.
18
19 A function can be marked as external. It means that the function cannot
20 be dispatched to the corresponding mesa function, if one exists, directly,
21 and requires an external implementation.
22 -->
23
24 <apispec>
25
26 <template name="Color">
27 <proto>
28 <return type="void"/>
29 <vector name="v" type="const GLtype *" size="dynamic">
30 <param name="red" type="GLtype"/>
31 <param name="green" type="GLtype"/>
32 <param name="blue" type="GLtype"/>
33 <param name="alpha" type="GLtype"/>
34 </vector>
35 </proto>
36 </template>
37
38 <template name="ClipPlane">
39 <proto>
40 <return type="void"/>
41 <param name="plane" type="GLenum"/>
42 <vector name="equation" type="const GLtype *" size="4"/>
43 </proto>
44 </template>
45
46 <template name="CullFace">
47 <proto>
48 <return type="void"/>
49 <param name="mode" type="GLenum"/>
50 </proto>
51 </template>
52
53 <template name="Fog">
54 <proto>
55 <return type="void"/>
56 <param name="pname" type="GLenum"/>
57 <vector name="params" type="const GLtype *" size="dynamic">
58 <param name="param" type="GLtype"/>
59 </vector>
60 </proto>
61
62 <desc name="pname">
63 <value name="GL_FOG_MODE"/>
64 <desc name="param">
65 <value name="GL_EXP"/>
66 <value name="GL_EXP2"/>
67 <value name="GL_LINEAR"/>
68 </desc>
69 </desc>
70
71 <desc name="pname">
72 <value name="GL_FOG_COLOR"/>
73
74 <desc name="params" vector_size="4"/>
75 </desc>
76
77 <desc name="pname">
78 <value name="GL_FOG_DENSITY"/>
79 <value name="GL_FOG_START"/>
80 <value name="GL_FOG_END"/>
81
82 <desc name="params" vector_size="1"/>
83 </desc>
84 </template>
85
86 <template name="FrontFace">
87 <proto>
88 <return type="void"/>
89 <param name="mode" type="GLenum"/>
90 </proto>
91 </template>
92
93 <template name="Hint">
94 <proto>
95 <return type="void"/>
96 <param name="target" type="GLenum"/>
97 <param name="mode" type="GLenum"/>
98 </proto>
99
100 <desc name="target" category="GLES1.1">
101 <value name="GL_FOG_HINT"/>
102 <value name="GL_LINE_SMOOTH_HINT"/>
103 <value name="GL_PERSPECTIVE_CORRECTION_HINT"/>
104 <value name="GL_POINT_SMOOTH_HINT"/>
105 </desc>
106 <desc name="target" category="OES_standard_derivatives">
107 <value name="GL_FRAGMENT_SHADER_DERIVATIVE_HINT_OES"/>
108 </desc>
109 <desc name="target">
110 <value name="GL_GENERATE_MIPMAP_HINT"/>
111 </desc>
112 </template>
113
114 <template name="Light">
115 <proto>
116 <return type="void"/>
117 <param name="light" type="GLenum"/>
118 <param name="pname" type="GLenum"/>
119 <vector name="params" type="const GLtype *" size="dynamic">
120 <param name="param" type="GLtype"/>
121 </vector>
122 </proto>
123 </template>
124
125 <template name="LightModel">
126 <proto>
127 <return type="void"/>
128 <param name="pname" type="GLenum"/>
129 <vector name="params" type="const GLtype *" size="dynamic">
130 <param name="param" type="GLtype"/>
131 </vector>
132 </proto>
133
134 <desc name="pname">
135 <value name="GL_LIGHT_MODEL_AMBIENT"/>
136
137 <desc name="params" vector_size="4"/>
138 </desc>
139
140 <desc name="pname">
141 <value name="GL_LIGHT_MODEL_TWO_SIDE"/>
142 <desc name="param">
143 <value name="GL_TRUE"/>
144 <value name="GL_FALSE"/>
145 </desc>
146 </desc>
147 </template>
148
149 <template name="LineWidth">
150 <proto>
151 <return type="void"/>
152 <param name="width" type="GLtype"/>
153 </proto>
154 </template>
155
156 <template name="Material">
157 <proto>
158 <return type="void"/>
159 <param name="face" type="GLenum"/>
160 <param name="pname" type="GLenum"/>
161 <vector name="params" type="const GLtype *" size="dynamic">
162 <param name="param" type="GLtype"/>
163 </vector>
164 </proto>
165
166 <desc name="face">
167 <value name="GL_FRONT_AND_BACK"/>
168 </desc>
169
170 <desc name="pname">
171 <value name="GL_AMBIENT"/>
172 <value name="GL_DIFFUSE"/>
173 <value name="GL_AMBIENT_AND_DIFFUSE"/>
174 <value name="GL_SPECULAR"/>
175 <value name="GL_EMISSION"/>
176
177 <desc name="params" vector_size="4"/>
178 </desc>
179
180 <desc name="pname">
181 <value name="GL_SHININESS"/>
182
183 <desc name="params" vector_size="1"/>
184 </desc>
185 </template>
186
187 <template name="PointSize">
188 <proto>
189 <return type="void"/>
190 <param name="size" type="GLtype"/>
191 </proto>
192 </template>
193
194 <template name="PointSizePointer">
195 <proto>
196 <return type="void"/>
197 <param name="type" type="GLenum"/>
198 <param name="stride" type="GLsizei"/>
199 <param name="pointer" type="const GLvoid *"/>
200 </proto>
201 </template>
202
203 <template name="Scissor">
204 <proto>
205 <return type="void"/>
206 <param name="x" type="GLint"/>
207 <param name="y" type="GLint"/>
208 <param name="width" type="GLsizei"/>
209 <param name="height" type="GLsizei"/>
210 </proto>
211 </template>
212
213 <template name="ShadeModel">
214 <proto>
215 <return type="void"/>
216 <param name="mode" type="GLenum"/>
217 </proto>
218 </template>
219
220 <template name="TexParameter">
221 <proto>
222 <return type="void"/>
223 <param name="target" type="GLenum"/>
224 <param name="pname" type="GLenum"/>
225 <vector name="params" type="const GLtype *" size="dynamic">
226 <param name="param" type="GLtype"/>
227 </vector>
228 </proto>
229 </template>
230
231 <template name="TexImage2D">
232 <proto>
233 <return type="void"/>
234 <param name="target" type="GLenum"/>
235 <param name="level" type="GLint"/>
236 <param name="internalFormat" type="GLint"/> <!-- should be GLenum -->
237 <param name="width" type="GLsizei"/>
238 <param name="height" type="GLsizei"/>
239 <param name="border" type="GLint"/>
240 <param name="format" type="GLenum"/>
241 <param name="type" type="GLenum"/>
242 <param name="pixels" type="const GLvoid *"/>
243 </proto>
244 </template>
245
246 <template name="TexEnv">
247 <proto>
248 <return type="void"/>
249 <param name="target" type="GLenum"/>
250 <param name="pname" type="GLenum"/>
251 <vector name="params" type="const GLtype *" size="dynamic">
252 <param name="param" type="GLtype"/>
253 </vector>
254 </proto>
255
256 <desc name="target" category="OES_point_sprite">
257 <value name="GL_POINT_SPRITE_OES"/>
258
259 <desc name="pname">
260 <value name="GL_COORD_REPLACE_OES"/>
261 </desc>
262 </desc>
263
264 <desc name="pname" category="OES_point_sprite">
265 <value name="GL_COORD_REPLACE_OES"/>
266
267 <desc name="param">
268 <value name="GL_TRUE"/>
269 <value name="GL_FALSE"/>
270 </desc>
271 </desc>
272
273 <desc name="target" category="EXT_texture_lod_bias">
274 <value name="GL_TEXTURE_FILTER_CONTROL_EXT"/>
275
276 <desc name="pname">
277 <value name="GL_TEXTURE_LOD_BIAS_EXT"/>
278 </desc>
279 </desc>
280
281 <desc name="pname" category="EXT_texture_lod_bias">
282 <value name="GL_TEXTURE_LOD_BIAS_EXT"/>
283 <desc name="params" vector_size="1"/>
284 </desc>
285
286 <desc name="target">
287 <value name="GL_TEXTURE_ENV"/>
288
289 <desc name="pname">
290 <value name="GL_TEXTURE_ENV_MODE"/>
291 <value name="GL_COMBINE_RGB"/>
292 <value name="GL_COMBINE_ALPHA"/>
293 <value name="GL_RGB_SCALE"/>
294 <value name="GL_ALPHA_SCALE"/>
295 <value name="GL_SRC0_RGB"/>
296 <value name="GL_SRC1_RGB"/>
297 <value name="GL_SRC2_RGB"/>
298 <value name="GL_SRC0_ALPHA"/>
299 <value name="GL_SRC1_ALPHA"/>
300 <value name="GL_SRC2_ALPHA"/>
301 <value name="GL_OPERAND0_RGB"/>
302 <value name="GL_OPERAND1_RGB"/>
303 <value name="GL_OPERAND2_RGB"/>
304 <value name="GL_OPERAND0_ALPHA"/>
305 <value name="GL_OPERAND1_ALPHA"/>
306 <value name="GL_OPERAND2_ALPHA"/>
307 <value name="GL_TEXTURE_ENV_COLOR"/>
308 </desc>
309 </desc>
310
311 <desc name="pname">
312 <value name="GL_TEXTURE_ENV_MODE"/>
313
314 <desc name="param">
315 <value name="GL_REPLACE"/>
316 <value name="GL_MODULATE"/>
317 <value name="GL_DECAL"/>
318 <value name="GL_BLEND"/>
319 <value name="GL_ADD"/>
320 <value name="GL_COMBINE"/>
321 </desc>
322 </desc>
323
324 <desc name="pname">
325 <value name="GL_COMBINE_RGB"/>
326
327 <desc name="param">
328 <value name="GL_REPLACE"/>
329 <value name="GL_MODULATE"/>
330 <value name="GL_ADD"/>
331 <value name="GL_ADD_SIGNED"/>
332 <value name="GL_INTERPOLATE"/>
333 <value name="GL_SUBTRACT"/>
334 <value name="GL_DOT3_RGB"/>
335 <value name="GL_DOT3_RGBA"/>
336 </desc>
337 </desc>
338
339 <desc name="pname">
340 <value name="GL_COMBINE_ALPHA"/>
341
342 <desc name="param">
343 <value name="GL_REPLACE"/>
344 <value name="GL_MODULATE"/>
345 <value name="GL_ADD"/>
346 <value name="GL_ADD_SIGNED"/>
347 <value name="GL_INTERPOLATE"/>
348 <value name="GL_SUBTRACT"/>
349 </desc>
350 </desc>
351
352 <desc name="pname">
353 <value name="GL_RGB_SCALE"/>
354 <value name="GL_ALPHA_SCALE"/>
355 </desc>
356
357 <desc name="pname">
358 <value name="GL_SRC0_RGB"/>
359 <value name="GL_SRC1_RGB"/>
360 <value name="GL_SRC2_RGB"/>
361 <value name="GL_SRC0_ALPHA"/>
362 <value name="GL_SRC1_ALPHA"/>
363 <value name="GL_SRC2_ALPHA"/>
364
365 <desc name="param">
366 <value name="GL_TEXTURE"/>
367 <value name="GL_CONSTANT"/>
368 <value name="GL_PRIMARY_COLOR"/>
369 <value name="GL_PREVIOUS"/>
370
371 <range base="GL_TEXTURE" from="0" to="31" category="OES_texture_env_crossbar"/>
372 </desc>
373 </desc>
374
375 <desc name="pname">
376 <value name="GL_OPERAND0_RGB"/>
377 <value name="GL_OPERAND1_RGB"/>
378 <value name="GL_OPERAND2_RGB"/>
379
380 <desc name="param">
381 <value name="GL_SRC_COLOR"/>
382 <value name="GL_ONE_MINUS_SRC_COLOR"/>
383 <value name="GL_SRC_ALPHA"/>
384 <value name="GL_ONE_MINUS_SRC_ALPHA"/>
385 </desc>
386 </desc>
387
388 <desc name="pname">
389 <value name="GL_OPERAND0_ALPHA"/>
390 <value name="GL_OPERAND1_ALPHA"/>
391 <value name="GL_OPERAND2_ALPHA"/>
392
393 <desc name="param">
394 <value name="GL_SRC_ALPHA"/>
395 <value name="GL_ONE_MINUS_SRC_ALPHA"/>
396 </desc>
397 </desc>
398
399 <desc name="pname">
400 <value name="GL_TEXTURE_ENV_COLOR"/>
401
402 <desc name="params" vector_size="4"/>
403 </desc>
404 </template>
405
406 <template name="TexGen">
407 <proto>
408 <return type="void"/>
409 <param name="coord" type="GLenum"/>
410 <param name="pname" type="GLenum"/>
411 <vector name="params" type="const GLtype *" size="dynamic">
412 <param name="param" type="GLtype"/>
413 </vector>
414 </proto>
415
416 <desc name="coord" category="OES_texture_cube_map">
417 <value name="GL_TEXTURE_GEN_STR_OES"/>
418 </desc>
419
420 <desc name="pname" category="OES_texture_cube_map">
421 <value name="GL_TEXTURE_GEN_MODE_OES"/>
422
423 <desc name="param">
424 <value name="GL_NORMAL_MAP_OES"/>
425 <value name="GL_REFLECTION_MAP_OES"/>
426 </desc>
427 </desc>
428 </template>
429
430 <template name="Clear">
431 <proto>
432 <return type="void"/>
433 <param name="mask" type="GLbitfield"/>
434 </proto>
435
436 <desc name="mask" error="GL_INVALID_VALUE">
437 <value name="0"/>
438 <value name="(GL_COLOR_BUFFER_BIT)"/>
439 <value name="(GL_DEPTH_BUFFER_BIT)"/>
440 <value name="(GL_STENCIL_BUFFER_BIT)"/>
441 <value name="(GL_COLOR_BUFFER_BIT|GL_DEPTH_BUFFER_BIT)"/>
442 <value name="(GL_COLOR_BUFFER_BIT|GL_STENCIL_BUFFER_BIT)"/>
443 <value name="(GL_DEPTH_BUFFER_BIT|GL_STENCIL_BUFFER_BIT)"/>
444 <value name="(GL_COLOR_BUFFER_BIT|GL_DEPTH_BUFFER_BIT|GL_STENCIL_BUFFER_BIT)"/>
445 </desc>
446 </template>
447
448 <template name="ClearColor">
449 <proto>
450 <return type="void"/>
451 <param name="red" type="GLtype"/>
452 <param name="green" type="GLtype"/>
453 <param name="blue" type="GLtype"/>
454 <param name="alpha" type="GLtype"/>
455 </proto>
456 </template>
457
458 <template name="ClearStencil">
459 <proto>
460 <return type="void"/>
461 <param name="s" type="GLint"/>
462 </proto>
463 </template>
464
465 <template name="ClearDepth">
466 <proto>
467 <return type="void"/>
468 <param name="depth" type="GLtype"/>
469 </proto>
470 </template>
471
472 <template name="StencilMask">
473 <proto>
474 <return type="void"/>
475 <param name="mask" type="GLuint"/>
476 </proto>
477 </template>
478
479 <template name="StencilMaskSeparate">
480 <proto>
481 <return type="void"/>
482 <param name="face" type="GLenum"/>
483 <param name="mask" type="GLuint"/>
484 </proto>
485 </template>
486
487 <template name="ColorMask">
488 <proto>
489 <return type="void"/>
490 <param name="red" type="GLboolean"/>
491 <param name="green" type="GLboolean"/>
492 <param name="blue" type="GLboolean"/>
493 <param name="alpha" type="GLboolean"/>
494 </proto>
495 </template>
496
497 <template name="DepthMask">
498 <proto>
499 <return type="void"/>
500 <param name="flag" type="GLboolean"/>
501 </proto>
502 </template>
503
504 <template name="Disable">
505 <proto>
506 <return type="void"/>
507 <param name="cap" type="GLenum"/>
508 </proto>
509
510 <desc name="cap" category="GLES1.1">
511 <value name="GL_NORMALIZE"/>
512 <value name="GL_RESCALE_NORMAL"/>
513
514 <range base="GL_CLIP_PLANE" from="0" to="5"/>
515 <value name="GL_CLIP_PLANE0+6"/>
516 <value name="GL_CLIP_PLANE0+7"/>
517
518 <value name="GL_FOG"/>
519 <value name="GL_LIGHTING"/>
520 <value name="GL_COLOR_MATERIAL"/>
521
522 <range base="GL_LIGHT" from="0" to="7"/>
523
524 <value name="GL_POINT_SMOOTH"/>
525 <value name="GL_LINE_SMOOTH"/>
526 <value name="GL_CULL_FACE"/>
527 <value name="GL_POLYGON_OFFSET_FILL"/>
528 <value name="GL_MULTISAMPLE"/>
529 <value name="GL_SAMPLE_ALPHA_TO_COVERAGE"/>
530 <value name="GL_SAMPLE_ALPHA_TO_ONE"/>
531 <value name="GL_SAMPLE_COVERAGE"/>
532 <value name="GL_TEXTURE_2D"/>
533 <value name="GL_SCISSOR_TEST"/>
534 <value name="GL_ALPHA_TEST"/>
535 <value name="GL_STENCIL_TEST"/>
536 <value name="GL_DEPTH_TEST"/>
537 <value name="GL_BLEND"/>
538 <value name="GL_DITHER"/>
539 <value name="GL_COLOR_LOGIC_OP"/>
540
541 <value name="GL_POINT_SPRITE_OES" category="OES_point_sprite"/>
542 <value name="GL_MATRIX_PALETTE_OES" category="OES_matrix_palette"/>
543 <value name="GL_TEXTURE_CUBE_MAP_OES" category="OES_texture_cube_map"/>
544 <value name="GL_TEXTURE_GEN_STR_OES" category="OES_texture_cube_map"/>
545 <value name="GL_TEXTURE_EXTERNAL_OES" category="OES_EGL_image_external"/>
546 </desc>
547
548 <desc name="cap" category="GLES2.0">
549 <value name="GL_CULL_FACE"/>
550 <value name="GL_SCISSOR_TEST"/>
551 <value name="GL_POLYGON_OFFSET_FILL"/>
552 <value name="GL_SAMPLE_ALPHA_TO_COVERAGE"/>
553 <value name="GL_SAMPLE_COVERAGE"/>
554 <value name="GL_STENCIL_TEST"/>
555 <value name="GL_DEPTH_TEST"/>
556 <value name="GL_DITHER"/>
557 <value name="GL_BLEND"/>
558 </desc>
559 </template>
560
561 <!-- it is exactly the same as Disable -->
562 <template name="Enable">
563 <proto>
564 <return type="void"/>
565 <param name="cap" type="GLenum"/>
566 </proto>
567
568 <desc name="cap" category="GLES1.1">
569 <value name="GL_NORMALIZE"/>
570 <value name="GL_RESCALE_NORMAL"/>
571
572 <range base="GL_CLIP_PLANE" from="0" to="5"/>
573 <value name="GL_CLIP_PLANE0+6"/>
574 <value name="GL_CLIP_PLANE0+7"/>
575
576 <value name="GL_FOG"/>
577 <value name="GL_LIGHTING"/>
578 <value name="GL_COLOR_MATERIAL"/>
579
580 <range base="GL_LIGHT" from="0" to="7"/>
581
582 <value name="GL_POINT_SMOOTH"/>
583 <value name="GL_LINE_SMOOTH"/>
584 <value name="GL_CULL_FACE"/>
585 <value name="GL_POLYGON_OFFSET_FILL"/>
586 <value name="GL_MULTISAMPLE"/>
587 <value name="GL_SAMPLE_ALPHA_TO_COVERAGE"/>
588 <value name="GL_SAMPLE_ALPHA_TO_ONE"/>
589 <value name="GL_SAMPLE_COVERAGE"/>
590 <value name="GL_TEXTURE_2D"/>
591 <value name="GL_SCISSOR_TEST"/>
592 <value name="GL_ALPHA_TEST"/>
593 <value name="GL_STENCIL_TEST"/>
594 <value name="GL_DEPTH_TEST"/>
595 <value name="GL_BLEND"/>
596 <value name="GL_DITHER"/>
597 <value name="GL_COLOR_LOGIC_OP"/>
598
599 <value name="GL_POINT_SPRITE_OES" category="OES_point_sprite"/>
600 <value name="GL_MATRIX_PALETTE_OES" category="OES_matrix_palette"/>
601 <value name="GL_TEXTURE_CUBE_MAP_OES" category="OES_texture_cube_map"/>
602 <value name="GL_TEXTURE_GEN_STR_OES" category="OES_texture_cube_map"/>
603 <value name="GL_TEXTURE_EXTERNAL_OES" category="OES_EGL_image_external"/>
604 </desc>
605
606 <desc name="cap" category="GLES2.0">
607 <value name="GL_CULL_FACE"/>
608 <value name="GL_SCISSOR_TEST"/>
609 <value name="GL_POLYGON_OFFSET_FILL"/>
610 <value name="GL_SAMPLE_ALPHA_TO_COVERAGE"/>
611 <value name="GL_SAMPLE_COVERAGE"/>
612 <value name="GL_STENCIL_TEST"/>
613 <value name="GL_DEPTH_TEST"/>
614 <value name="GL_DITHER"/>
615 <value name="GL_BLEND"/>
616 </desc>
617 </template>
618
619 <template name="Finish">
620 <proto>
621 <return type="void"/>
622 </proto>
623 </template>
624
625 <template name="Flush">
626 <proto>
627 <return type="void"/>
628 </proto>
629 </template>
630
631 <template name="AlphaFunc">
632 <proto>
633 <return type="void"/>
634 <param name="func" type="GLenum"/>
635 <param name="ref" type="GLtype"/>
636 </proto>
637 </template>
638
639 <template name="BlendFunc">
640 <proto>
641 <return type="void"/>
642 <param name="sfactor" type="GLenum"/>
643 <param name="dfactor" type="GLenum"/>
644 </proto>
645
646 <desc name="sfactor">
647 <value name="GL_ZERO"/>
648 <value name="GL_ONE"/>
649 <value name="GL_SRC_COLOR"/>
650 <value name="GL_ONE_MINUS_SRC_COLOR"/>
651 <value name="GL_SRC_ALPHA"/>
652 <value name="GL_ONE_MINUS_SRC_ALPHA"/>
653 <value name="GL_DST_ALPHA"/>
654 <value name="GL_ONE_MINUS_DST_ALPHA"/>
655 <value name="GL_DST_COLOR"/>
656 <value name="GL_ONE_MINUS_DST_COLOR"/>
657 <value name="GL_SRC_ALPHA_SATURATE"/>
658
659 <value name="GL_CONSTANT_COLOR" category="GLES2.0"/>
660 <value name="GL_CONSTANT_ALPHA" category="GLES2.0"/>
661 <value name="GL_ONE_MINUS_CONSTANT_COLOR" category="GLES2.0"/>
662 <value name="GL_ONE_MINUS_CONSTANT_ALPHA" category="GLES2.0"/>
663 </desc>
664
665 <desc name="dfactor">
666 <value name="GL_ZERO"/>
667 <value name="GL_ONE"/>
668 <value name="GL_SRC_COLOR"/>
669 <value name="GL_ONE_MINUS_SRC_COLOR"/>
670 <value name="GL_SRC_ALPHA"/>
671 <value name="GL_ONE_MINUS_SRC_ALPHA"/>
672 <value name="GL_DST_ALPHA"/>
673 <value name="GL_ONE_MINUS_DST_ALPHA"/>
674 <value name="GL_DST_COLOR"/>
675 <value name="GL_ONE_MINUS_DST_COLOR"/>
676
677 <value name="GL_CONSTANT_COLOR" category="GLES2.0"/>
678 <value name="GL_CONSTANT_ALPHA" category="GLES2.0"/>
679 <value name="GL_ONE_MINUS_CONSTANT_COLOR" category="GLES2.0"/>
680 <value name="GL_ONE_MINUS_CONSTANT_ALPHA" category="GLES2.0"/>
681 </desc>
682 </template>
683
684 <template name="LogicOp">
685 <proto>
686 <return type="void"/>
687 <param name="opcode" type="GLenum"/>
688 </proto>
689 </template>
690
691 <template name="StencilFunc">
692 <proto>
693 <return type="void"/>
694 <param name="func" type="GLenum"/>
695 <param name="ref" type="GLint"/>
696 <param name="mask" type="GLuint"/>
697 </proto>
698 </template>
699
700 <template name="StencilFuncSeparate">
701 <proto>
702 <return type="void"/>
703 <param name="face" type="GLenum"/>
704 <param name="func" type="GLenum"/>
705 <param name="ref" type="GLint"/>
706 <param name="mask" type="GLuint"/>
707 </proto>
708 </template>
709
710 <template name="StencilOp">
711 <proto>
712 <return type="void"/>
713 <param name="fail" type="GLenum"/>
714 <param name="zfail" type="GLenum"/>
715 <param name="zpass" type="GLenum"/>
716 </proto>
717 </template>
718
719 <template name="StencilOpSeparate">
720 <proto>
721 <return type="void"/>
722 <param name="face" type="GLenum"/>
723 <param name="fail" type="GLenum"/>
724 <param name="zfail" type="GLenum"/>
725 <param name="zpass" type="GLenum"/>
726 </proto>
727 </template>
728
729 <template name="DepthFunc">
730 <proto>
731 <return type="void"/>
732 <param name="func" type="GLenum"/>
733 </proto>
734 </template>
735
736 <template name="PixelStore">
737 <proto>
738 <return type="void"/>
739 <param name="pname" type="GLenum"/>
740 <param name="param" type="GLtype"/>
741 </proto>
742
743 <desc name="pname">
744 <value name="GL_PACK_ALIGNMENT"/>
745 <desc name="param" error="GL_INVALID_VALUE">
746 <value name="1"/>
747 <value name="2"/>
748 <value name="4"/>
749 <value name="8"/>
750 </desc>
751 </desc>
752
753 <desc name="pname">
754 <value name="GL_UNPACK_ALIGNMENT"/>
755 <desc name="param" error="GL_INVALID_VALUE">
756 <value name="1"/>
757 <value name="2"/>
758 <value name="4"/>
759 <value name="8"/>
760 </desc>
761 </desc>
762
763 <desc name="pname" category="EXT_unpack_subimage">
764 <value name="GL_UNPACK_ROW_LENGTH"/>
765 <value name="GL_UNPACK_SKIP_PIXELS"/>
766 <value name="GL_UNPACK_SKIP_ROWS"/>
767 </desc>
768
769 </template>
770
771 <template name="ReadPixels" direction="get">
772 <proto>
773 <return type="void"/>
774 <param name="x" type="GLint"/>
775 <param name="y" type="GLint"/>
776 <param name="width" type="GLsizei"/>
777 <param name="height" type="GLsizei"/>
778 <param name="format" type="GLenum"/>
779 <param name="type" type="GLenum"/>
780 <param name="pixels" type="GLvoid *"/>
781 </proto>
782
783 <!-- Technically, only two combinations are actually allowed:
784 GL_RGBA/GL_UNSIGNED_BYTE, and some implementation-specific
785 internal preferred combination. I don't know what that is, so I'm
786 allowing any valid combination for now; the underlying support
787 should fail when necessary.-->
788 <desc name="format">
789 <value name="GL_ALPHA"/>
790 <desc name="type" error="GL_INVALID_OPERATION">
791 <value name="GL_UNSIGNED_BYTE"/>
792 </desc>
793 </desc>
794
795 <desc name="format">
796 <value name="GL_RGB"/>
797 <desc name="type" error="GL_INVALID_OPERATION">
798 <value name="GL_UNSIGNED_BYTE"/>
799 <value name="GL_UNSIGNED_SHORT_5_6_5"/>
800 </desc>
801 </desc>
802
803 <desc name="format">
804 <value name="GL_RGBA"/>
805 <desc name="type" error="GL_INVALID_OPERATION">
806 <value name="GL_UNSIGNED_BYTE"/>
807 <value name="GL_UNSIGNED_SHORT_4_4_4_4"/>
808 <value name="GL_UNSIGNED_SHORT_5_5_5_1"/>
809 </desc>
810 </desc>
811
812 <desc name="format">
813 <value name="GL_LUMINANCE"/>
814 <desc name="type" error="GL_INVALID_OPERATION">
815 <value name="GL_UNSIGNED_BYTE"/>
816 </desc>
817 </desc>
818
819 <desc name="format">
820 <value name="GL_LUMINANCE_ALPHA"/>
821 <desc name="type" error="GL_INVALID_OPERATION">
822 <value name="GL_UNSIGNED_BYTE"/>
823 </desc>
824 </desc>
825
826 <desc name="format" category="EXT_read_format_bgra">
827 <value name="GL_BGRA_EXT"/>
828
829 <desc name="type" error="GL_INVALID_OPERATION">
830 <value name="GL_UNSIGNED_BYTE"/>
831 <value name="GL_UNSIGNED_SHORT_4_4_4_4_REV_EXT"/>
832 <value name="GL_UNSIGNED_SHORT_1_5_5_5_REV_EXT"/>
833 </desc>
834 </desc>
835 </template>
836
837 <template name="GetClipPlane" direction="get">
838 <proto>
839 <return type="void"/>
840 <param name="plane" type="GLenum"/>
841 <vector name="equation" type="GLtype *" size="4"/>
842 </proto>
843 </template>
844
845 <template name="GetError" direction="get">
846 <proto>
847 <return type="GLenum"/>
848 </proto>
849 </template>
850
851 <!-- template for GetFloatv, GetIntegerv, GetBoolean, and GetFixedv -->
852 <template name="GetState" direction="get">
853 <proto>
854 <return type="void"/>
855 <param name="pname" type="GLenum"/>
856 <vector name="params" type="GLtype *" size="dynamic"/>
857 </proto>
858 <!-- param checking is done in mesa -->
859 </template>
860
861 <template name="GetLight" direction="get">
862 <proto>
863 <return type="void"/>
864 <param name="light" type="GLenum"/>
865 <param name="pname" type="GLenum"/>
866 <vector name="params" type="GLtype *" size="dynamic"/>
867 </proto>
868 </template>
869
870 <template name="GetMaterial" direction="get">
871 <proto>
872 <return type="void"/>
873 <param name="face" type="GLenum"/>
874 <param name="pname" type="GLenum"/>
875 <vector name="params" type="GLtype *" size="dynamic">
876 <param name="param" type="GLtype"/>
877 </vector>
878 </proto>
879
880 <desc name="face">
881 <value name="GL_FRONT"/>
882 <value name="GL_BACK"/>
883 </desc>
884
885 <desc name="pname">
886 <value name="GL_SHININESS"/>
887 <desc name="params" vector_size="1"/>
888 </desc>
889
890 <desc name="pname">
891 <value name="GL_AMBIENT"/>
892 <value name="GL_DIFFUSE"/>
893 <value name="GL_AMBIENT_AND_DIFFUSE"/>
894 <value name="GL_SPECULAR"/>
895 <value name="GL_EMISSION"/>
896
897 <desc name="params" vector_size="4"/>
898 </desc>
899 </template>
900
901 <template name="GetString" direction="get">
902 <proto>
903 <return type="const GLubyte *"/>
904 <param name="name" type="GLenum"/>
905 </proto>
906
907 <desc name="name">
908 <value name="GL_VENDOR"/>
909 <value name="GL_RENDERER"/>
910 <value name="GL_VERSION"/>
911 <value name="GL_EXTENSIONS"/>
912 <value name="GL_SHADING_LANGUAGE_VERSION" category="GLES2.0"/>
913 </desc>
914 </template>
915
916 <template name="GetTexEnv" direction="get">
917 <proto>
918 <return type="void"/>
919 <param name="target" type="GLenum"/>
920 <param name="pname" type="GLenum"/>
921 <vector name="params" type="GLtype *" size="dynamic"/>
922 </proto>
923
924 <desc name="target" category="OES_point_sprite">
925 <value name="GL_POINT_SPRITE_OES"/>
926 <desc name="pname">
927 <value name="GL_COORD_REPLACE_OES"/>
928 </desc>
929 </desc>
930
931 <desc name="pname" category="OES_point_sprite">
932 <value name="GL_COORD_REPLACE_OES"/>
933 <desc name="params" vector_size="1" convert="false"/>
934 </desc>
935
936 <desc name="target" category="EXT_texture_lod_bias">
937 <value name="GL_TEXTURE_FILTER_CONTROL_EXT"/>
938
939 <desc name="pname">
940 <value name="GL_TEXTURE_LOD_BIAS_EXT"/>
941 </desc>
942 </desc>
943
944 <desc name="pname" category="EXT_texture_lod_bias">
945 <value name="GL_TEXTURE_LOD_BIAS_EXT"/>
946 <desc name="params" vector_size="1"/>
947 </desc>
948
949 <desc name="target">
950 <value name="GL_TEXTURE_ENV"/>
951
952 <desc name="pname">
953 <value name="GL_TEXTURE_ENV_COLOR"/>
954 <value name="GL_RGB_SCALE"/>
955 <value name="GL_ALPHA_SCALE"/>
956 <value name="GL_TEXTURE_ENV_MODE"/>
957 <value name="GL_COMBINE_RGB"/>
958 <value name="GL_COMBINE_ALPHA"/>
959 <value name="GL_SRC0_RGB"/>
960 <value name="GL_SRC1_RGB"/>
961 <value name="GL_SRC2_RGB"/>
962 <value name="GL_SRC0_ALPHA"/>
963 <value name="GL_SRC1_ALPHA"/>
964 <value name="GL_SRC2_ALPHA"/>
965 <value name="GL_OPERAND0_RGB"/>
966 <value name="GL_OPERAND1_RGB"/>
967 <value name="GL_OPERAND2_RGB"/>
968 <value name="GL_OPERAND0_ALPHA"/>
969 <value name="GL_OPERAND1_ALPHA"/>
970 <value name="GL_OPERAND2_ALPHA"/>
971 </desc>
972 </desc>
973
974 <desc name="pname">
975 <value name="GL_TEXTURE_ENV_COLOR"/>
976 <desc name="params" vector_size="4"/>
977 </desc>
978
979 <desc name="pname">
980 <value name="GL_RGB_SCALE"/>
981 <value name="GL_ALPHA_SCALE"/>
982
983 <desc name="params" vector_size="1"/>
984 </desc>
985
986 <desc name="pname">
987 <value name="GL_TEXTURE_ENV_MODE"/>
988 <value name="GL_COMBINE_RGB"/>
989 <value name="GL_COMBINE_ALPHA"/>
990 <value name="GL_SRC0_RGB"/>
991 <value name="GL_SRC1_RGB"/>
992 <value name="GL_SRC2_RGB"/>
993 <value name="GL_SRC0_ALPHA"/>
994 <value name="GL_SRC1_ALPHA"/>
995 <value name="GL_SRC2_ALPHA"/>
996 <value name="GL_OPERAND0_RGB"/>
997 <value name="GL_OPERAND1_RGB"/>
998 <value name="GL_OPERAND2_RGB"/>
999 <value name="GL_OPERAND0_ALPHA"/>
1000 <value name="GL_OPERAND1_ALPHA"/>
1001 <value name="GL_OPERAND2_ALPHA"/>
1002
1003 <desc name="params" vector_size="1" convert="false"/>
1004 </desc>
1005 </template>
1006
1007 <template name="GetTexGen" direction="get">
1008 <proto>
1009 <return type="void"/>
1010 <param name="coord" type="GLenum"/>
1011 <param name="pname" type="GLenum"/>
1012 <vector name="params" type="GLtype *" size="dynamic"/>
1013 </proto>
1014
1015 <desc name="coord">
1016 <value name="GL_TEXTURE_GEN_STR_OES"/>
1017 </desc>
1018 <desc name="pname">
1019 <value name="GL_TEXTURE_GEN_MODE_OES"/>
1020 <desc name="params" vector_size="1" convert="false"/>
1021 </desc>
1022 </template>
1023
1024 <template name="GetTexParameter" direction="get">
1025 <proto>
1026 <return type="void"/>
1027 <param name="target" type="GLenum"/>
1028 <param name="pname" type="GLenum"/>
1029 <vector name="params" type="GLtype *" size="dynamic"/>
1030 </proto>
1031 </template>
1032
1033 <template name="IsEnabled" direction="get">
1034 <proto>
1035 <return type="GLboolean"/>
1036 <param name="cap" type="GLenum"/>
1037 </proto>
1038
1039 <desc name="cap" category="GLES1.1">
1040 <value name="GL_NORMALIZE"/>
1041 <value name="GL_RESCALE_NORMAL"/>
1042
1043 <range base="GL_CLIP_PLANE" from="0" to="5"/>
1044 <value name="GL_CLIP_PLANE0+6"/>
1045 <value name="GL_CLIP_PLANE0+7"/>
1046
1047 <value name="GL_FOG"/>
1048 <value name="GL_LIGHTING"/>
1049 <value name="GL_COLOR_MATERIAL"/>
1050
1051 <range base="GL_LIGHT" from="0" to="7"/>
1052
1053 <value name="GL_POINT_SMOOTH"/>
1054 <value name="GL_LINE_SMOOTH"/>
1055 <value name="GL_CULL_FACE"/>
1056 <value name="GL_POLYGON_OFFSET_FILL"/>
1057 <value name="GL_MULTISAMPLE"/>
1058 <value name="GL_SAMPLE_ALPHA_TO_COVERAGE"/>
1059 <value name="GL_SAMPLE_ALPHA_TO_ONE"/>
1060 <value name="GL_SAMPLE_COVERAGE"/>
1061 <value name="GL_TEXTURE_2D"/>
1062 <value name="GL_SCISSOR_TEST"/>
1063 <value name="GL_ALPHA_TEST"/>
1064 <value name="GL_STENCIL_TEST"/>
1065 <value name="GL_DEPTH_TEST"/>
1066 <value name="GL_BLEND"/>
1067 <value name="GL_DITHER"/>
1068 <value name="GL_COLOR_LOGIC_OP"/>
1069
1070 <value name="GL_POINT_SPRITE_OES" category="OES_point_sprite"/>
1071 <value name="GL_TEXTURE_CUBE_MAP_OES" category="OES_texture_cube_map"/>
1072 <value name="GL_TEXTURE_GEN_STR_OES" category="OES_texture_cube_map"/>
1073
1074 <value name="GL_VERTEX_ARRAY"/>
1075 <value name="GL_NORMAL_ARRAY"/>
1076 <value name="GL_COLOR_ARRAY"/>
1077 <value name="GL_TEXTURE_COORD_ARRAY"/>
1078 <value name="GL_MATRIX_INDEX_ARRAY_OES" category="OES_matrix_palette"/>
1079 <value name="GL_WEIGHT_ARRAY_OES" category="OES_matrix_palette"/>
1080 <value name="GL_POINT_SIZE_ARRAY_OES" category="OES_point_size_array"/>
1081 <value name="GL_TEXTURE_EXTERNAL_OES" category="OES_EGL_image_external"/>
1082 </desc>
1083
1084 <desc name="cap" category="GLES2.0">
1085 <value name="GL_CULL_FACE"/>
1086 <value name="GL_SCISSOR_TEST"/>
1087 <value name="GL_POLYGON_OFFSET_FILL"/>
1088 <value name="GL_SAMPLE_ALPHA_TO_COVERAGE"/>
1089 <value name="GL_SAMPLE_COVERAGE"/>
1090 <value name="GL_STENCIL_TEST"/>
1091 <value name="GL_DEPTH_TEST"/>
1092 <value name="GL_DITHER"/>
1093 <value name="GL_BLEND"/>
1094 </desc>
1095 </template>
1096
1097 <template name="DepthRange">
1098 <proto>
1099 <return type="void"/>
1100 <param name="zNear" type="GLtype"/>
1101 <param name="zFar" type="GLtype"/>
1102 </proto>
1103 </template>
1104
1105 <template name="Frustum">
1106 <proto>
1107 <return type="void"/>
1108 <param name="left" type="GLtype"/>
1109 <param name="right" type="GLtype"/>
1110 <param name="bottom" type="GLtype"/>
1111 <param name="top" type="GLtype"/>
1112 <param name="zNear" type="GLtype"/>
1113 <param name="zFar" type="GLtype"/>
1114 </proto>
1115 </template>
1116
1117 <template name="LoadIdentity">
1118 <proto>
1119 <return type="void"/>
1120 </proto>
1121 </template>
1122
1123 <template name="LoadMatrix">
1124 <proto>
1125 <return type="void"/>
1126 <vector name="m" type="const GLtype *" size="16"/>
1127 </proto>
1128 </template>
1129
1130 <template name="MatrixMode">
1131 <proto>
1132 <return type="void"/>
1133 <param name="mode" type="GLenum"/>
1134 </proto>
1135
1136 <desc name="mode">
1137 <value name="GL_MODELVIEW"/>
1138 <value name="GL_PROJECTION"/>
1139 <value name="GL_TEXTURE"/>
1140 <value name="GL_MATRIX_PALETTE_OES" category="OES_matrix_palette"/>
1141 </desc>
1142 </template>
1143
1144 <template name="MultMatrix">
1145 <proto>
1146 <return type="void"/>
1147 <vector name="m" type="const GLtype *" size="16"/>
1148 </proto>
1149 </template>
1150
1151 <template name="Ortho">
1152 <proto>
1153 <return type="void"/>
1154 <param name="left" type="GLtype"/>
1155 <param name="right" type="GLtype"/>
1156 <param name="bottom" type="GLtype"/>
1157 <param name="top" type="GLtype"/>
1158 <param name="zNear" type="GLtype"/>
1159 <param name="zFar" type="GLtype"/>
1160 </proto>
1161 </template>
1162
1163 <template name="PopMatrix">
1164 <proto>
1165 <return type="void"/>
1166 </proto>
1167 </template>
1168
1169 <template name="PushMatrix">
1170 <proto>
1171 <return type="void"/>
1172 </proto>
1173 </template>
1174
1175 <template name="Rotate">
1176 <proto>
1177 <return type="void"/>
1178 <param name="angle" type="GLtype"/>
1179 <param name="x" type="GLtype"/>
1180 <param name="y" type="GLtype"/>
1181 <param name="z" type="GLtype"/>
1182 </proto>
1183 </template>
1184
1185 <template name="Scale">
1186 <proto>
1187 <return type="void"/>
1188 <param name="x" type="GLtype"/>
1189 <param name="y" type="GLtype"/>
1190 <param name="z" type="GLtype"/>
1191 </proto>
1192 </template>
1193
1194 <template name="Translate">
1195 <proto>
1196 <return type="void"/>
1197 <param name="x" type="GLtype"/>
1198 <param name="y" type="GLtype"/>
1199 <param name="z" type="GLtype"/>
1200 </proto>
1201 </template>
1202
1203 <template name="Viewport">
1204 <proto>
1205 <return type="void"/>
1206 <param name="x" type="GLint"/>
1207 <param name="y" type="GLint"/>
1208 <param name="width" type="GLsizei"/>
1209 <param name="height" type="GLsizei"/>
1210 </proto>
1211 </template>
1212
1213 <template name="ColorPointer">
1214 <proto>
1215 <return type="void"/>
1216 <param name="size" type="GLint"/>
1217 <param name="type" type="GLenum"/>
1218 <param name="stride" type="GLsizei"/>
1219 <param name="pointer" type="const GLvoid *"/>
1220 </proto>
1221 </template>
1222
1223 <template name="DisableClientState">
1224 <proto>
1225 <return type="void"/>
1226 <param name="array" type="GLenum"/>
1227 </proto>
1228
1229 <desc name="array">
1230 <value name="GL_VERTEX_ARRAY"/>
1231 <value name="GL_NORMAL_ARRAY"/>
1232 <value name="GL_COLOR_ARRAY"/>
1233 <value name="GL_TEXTURE_COORD_ARRAY"/>
1234 <value name="GL_MATRIX_INDEX_ARRAY_OES" category="OES_matrix_palette"/>
1235 <value name="GL_WEIGHT_ARRAY_OES" category="OES_matrix_palette"/>
1236 <value name="GL_POINT_SIZE_ARRAY_OES" category="OES_point_size_array"/>
1237 </desc>
1238 </template>
1239
1240 <template name="DrawArrays">
1241 <proto>
1242 <return type="void"/>
1243 <param name="mode" type="GLenum"/>
1244 <param name="first" type="GLint"/>
1245 <param name="count" type="GLsizei"/>
1246 </proto>
1247
1248 <desc name="mode">
1249 <value name="GL_POINTS"/>
1250 <value name="GL_LINES"/>
1251 <value name="GL_LINE_LOOP"/>
1252 <value name="GL_LINE_STRIP"/>
1253 <value name="GL_TRIANGLES"/>
1254 <value name="GL_TRIANGLE_STRIP"/>
1255 <value name="GL_TRIANGLE_FAN"/>
1256 </desc>
1257 </template>
1258
1259 <template name="DrawElements">
1260 <proto>
1261 <return type="void"/>
1262 <param name="mode" type="GLenum"/>
1263 <param name="count" type="GLsizei"/>
1264 <param name="type" type="GLenum"/>
1265 <param name="indices" type="const GLvoid *"/>
1266 </proto>
1267
1268 <desc name="mode">
1269 <value name="GL_POINTS"/>
1270 <value name="GL_LINES"/>
1271 <value name="GL_LINE_LOOP"/>
1272 <value name="GL_LINE_STRIP"/>
1273 <value name="GL_TRIANGLES"/>
1274 <value name="GL_TRIANGLE_STRIP"/>
1275 <value name="GL_TRIANGLE_FAN"/>
1276 </desc>
1277 </template>
1278
1279 <template name="EnableClientState">
1280 <proto>
1281 <return type="void"/>
1282 <param name="array" type="GLenum"/>
1283 </proto>
1284
1285 <desc name="array">
1286 <value name="GL_VERTEX_ARRAY"/>
1287 <value name="GL_NORMAL_ARRAY"/>
1288 <value name="GL_COLOR_ARRAY"/>
1289 <value name="GL_TEXTURE_COORD_ARRAY"/>
1290 <value name="GL_MATRIX_INDEX_ARRAY_OES" category="OES_matrix_palette"/>
1291 <value name="GL_WEIGHT_ARRAY_OES" category="OES_matrix_palette"/>
1292 <value name="GL_POINT_SIZE_ARRAY_OES" category="OES_point_size_array"/>
1293 </desc>
1294 </template>
1295
1296 <template name="GetPointer" direction="get">
1297 <proto>
1298 <return type="void"/>
1299 <param name="pname" type="GLenum"/>
1300 <vector name="params" type="GLvoid **" size="dynamic"/>
1301 </proto>
1302
1303 <desc name="pname">
1304 <value name="GL_VERTEX_ARRAY_POINTER"/>
1305 <value name="GL_NORMAL_ARRAY_POINTER"/>
1306 <value name="GL_COLOR_ARRAY_POINTER"/>
1307 <value name="GL_TEXTURE_COORD_ARRAY_POINTER"/>
1308 <value name="GL_MATRIX_INDEX_ARRAY_POINTER_OES" category="OES_matrix_palette"/>
1309 <value name="GL_WEIGHT_ARRAY_POINTER_OES" category="OES_matrix_palette"/>
1310 <value name="GL_POINT_SIZE_ARRAY_POINTER_OES" category="OES_point_size_array"/>
1311 </desc>
1312 </template>
1313
1314 <template name="Normal">
1315 <proto>
1316 <return type="void"/>
1317 <vector name="v" type="const GLtype *" size="3">
1318 <param name="nx" type="GLtype"/>
1319 <param name="ny" type="GLtype"/>
1320 <param name="nz" type="GLtype"/>
1321 </vector>
1322 </proto>
1323 </template>
1324
1325 <template name="NormalPointer">
1326 <proto>
1327 <return type="void"/>
1328 <param name="type" type="GLenum"/>
1329 <param name="stride" type="GLsizei"/>
1330 <param name="pointer" type="const GLvoid *"/>
1331 </proto>
1332 </template>
1333
1334 <template name="TexCoordPointer">
1335 <proto>
1336 <return type="void"/>
1337 <param name="size" type="GLint"/>
1338 <param name="type" type="GLenum"/>
1339 <param name="stride" type="GLsizei"/>
1340 <param name="pointer" type="const GLvoid *"/>
1341 </proto>
1342 </template>
1343
1344 <template name="VertexPointer">
1345 <proto>
1346 <return type="void"/>
1347 <param name="size" type="GLint"/>
1348 <param name="type" type="GLenum"/>
1349 <param name="stride" type="GLsizei"/>
1350 <param name="pointer" type="const GLvoid *"/>
1351 </proto>
1352 </template>
1353
1354 <template name="PolygonOffset">
1355 <proto>
1356 <return type="void"/>
1357 <param name="factor" type="GLtype"/>
1358 <param name="units" type="GLtype"/>
1359 </proto>
1360 </template>
1361
1362 <template name="CopyTexImage2D">
1363 <proto>
1364 <return type="void"/>
1365 <param name="target" type="GLenum"/>
1366 <param name="level" type="GLint"/>
1367 <param name="internalFormat" type="GLenum"/>
1368 <param name="x" type="GLint"/>
1369 <param name="y" type="GLint"/>
1370 <param name="width" type="GLsizei"/>
1371 <param name="height" type="GLsizei"/>
1372 <param name="border" type="GLint"/>
1373 </proto>
1374 </template>
1375
1376 <template name="CopyTexSubImage2D">
1377 <proto>
1378 <return type="void"/>
1379 <param name="target" type="GLenum"/>
1380 <param name="level" type="GLint"/>
1381 <param name="xoffset" type="GLint"/>
1382 <param name="yoffset" type="GLint"/>
1383 <param name="x" type="GLint"/>
1384 <param name="y" type="GLint"/>
1385 <param name="width" type="GLsizei"/>
1386 <param name="height" type="GLsizei"/>
1387 </proto>
1388 </template>
1389
1390 <template name="TexSubImage2D">
1391 <proto>
1392 <return type="void"/>
1393 <param name="target" type="GLenum"/>
1394 <param name="level" type="GLint"/>
1395 <param name="xoffset" type="GLint"/>
1396 <param name="yoffset" type="GLint"/>
1397 <param name="width" type="GLsizei"/>
1398 <param name="height" type="GLsizei"/>
1399 <param name="format" type="GLenum"/>
1400 <param name="type" type="GLenum"/>
1401 <param name="pixels" type="const GLvoid *"/>
1402 </proto>
1403 </template>
1404
1405 <template name="BindTexture">
1406 <proto>
1407 <return type="void"/>
1408 <param name="target" type="GLenum"/>
1409 <param name="texture" type="GLuint"/>
1410 </proto>
1411 </template>
1412
1413 <template name="DeleteTextures">
1414 <proto>
1415 <return type="void"/>
1416 <param name="n" type="GLsizei"/>
1417 <param name="textures" type="const GLuint *"/>
1418 </proto>
1419 </template>
1420
1421 <template name="GenTextures" direction="get">
1422 <proto>
1423 <return type="void"/>
1424 <param name="n" type="GLsizei"/>
1425 <param name="textures" type="GLuint *"/>
1426 </proto>
1427 </template>
1428
1429 <template name="IsTexture" direction="get">
1430 <proto>
1431 <return type="GLboolean"/>
1432 <param name="texture" type="GLuint"/>
1433 </proto>
1434 </template>
1435
1436 <template name="BlendColor">
1437 <proto>
1438 <return type="void"/>
1439 <param name="red" type="GLtype"/>
1440 <param name="green" type="GLtype"/>
1441 <param name="blue" type="GLtype"/>
1442 <param name="alpha" type="GLtype"/>
1443 </proto>
1444 </template>
1445
1446 <template name="BlendEquation">
1447 <proto>
1448 <return type="void"/>
1449 <param name="mode" type="GLenum"/>
1450 </proto>
1451 </template>
1452
1453 <template name="BlendEquationSeparate">
1454 <proto>
1455 <return type="void"/>
1456 <param name="modeRGB" type="GLenum"/>
1457 <param name="modeAlpha" type="GLenum"/>
1458 </proto>
1459 </template>
1460
1461 <template name="TexImage3D">
1462 <proto>
1463 <return type="void"/>
1464 <param name="target" type="GLenum"/>
1465 <param name="level" type="GLint"/>
1466 <param name="internalFormat" type="GLenum"/>
1467 <param name="width" type="GLsizei"/>
1468 <param name="height" type="GLsizei"/>
1469 <param name="depth" type="GLsizei"/>
1470 <param name="border" type="GLint"/>
1471 <param name="format" type="GLenum"/>
1472 <param name="type" type="GLenum"/>
1473 <param name="pixels" type="const GLvoid *"/>
1474 </proto>
1475
1476 </template>
1477
1478 <template name="TexSubImage3D">
1479 <proto>
1480 <return type="void"/>
1481 <param name="target" type="GLenum"/>
1482 <param name="level" type="GLint"/>
1483 <param name="xoffset" type="GLint"/>
1484 <param name="yoffset" type="GLint"/>
1485 <param name="zoffset" type="GLint"/>
1486 <param name="width" type="GLsizei"/>
1487 <param name="height" type="GLsizei"/>
1488 <param name="depth" type="GLsizei"/>
1489 <param name="format" type="GLenum"/>
1490 <param name="type" type="GLenum"/>
1491 <param name="pixels" type="const GLvoid *"/>
1492 </proto>
1493 </template>
1494
1495 <template name="CopyTexSubImage3D">
1496 <proto>
1497 <return type="void"/>
1498 <param name="target" type="GLenum"/>
1499 <param name="level" type="GLint"/>
1500 <param name="xoffset" type="GLint"/>
1501 <param name="yoffset" type="GLint"/>
1502 <param name="zoffset" type="GLint"/>
1503 <param name="x" type="GLint"/>
1504 <param name="y" type="GLint"/>
1505 <param name="width" type="GLsizei"/>
1506 <param name="height" type="GLsizei"/>
1507 </proto>
1508 </template>
1509
1510 <template name="MultiTexCoord">
1511 <proto>
1512 <return type="void"/>
1513 <param name="texture" type="GLenum"/>
1514 <vector name="v" type="const GLtype *" size="dynamic">
1515 <param name="s" type="GLtype"/>
1516 <param name="t" type="GLtype"/>
1517 <param name="r" type="GLtype"/>
1518 <param name="q" type="GLtype"/>
1519 </vector>
1520 </proto>
1521 </template>
1522
1523 <template name="CompressedTexImage3D">
1524 <proto>
1525 <return type="void"/>
1526 <param name="target" type="GLenum"/>
1527 <param name="level" type="GLint"/>
1528 <param name="internalFormat" type="GLenum"/>
1529 <param name="width" type="GLsizei"/>
1530 <param name="height" type="GLsizei"/>
1531 <param name="depth" type="GLsizei"/>
1532 <param name="border" type="GLint"/>
1533 <param name="imagesize" type="GLsizei"/>
1534 <param name="data" type="const GLvoid *"/>
1535 </proto>
1536 </template>
1537
1538 <template name="CompressedTexSubImage3D">
1539 <proto>
1540 <return type="void"/>
1541 <param name="target" type="GLenum"/>
1542 <param name="level" type="GLint"/>
1543 <param name="xoffset" type="GLint"/>
1544 <param name="yoffset" type="GLint"/>
1545 <param name="zoffset" type="GLint"/>
1546 <param name="width" type="GLsizei"/>
1547 <param name="height" type="GLsizei"/>
1548 <param name="depth" type="GLsizei"/>
1549 <param name="format" type="GLenum"/>
1550 <param name="imagesize" type="GLsizei"/>
1551 <param name="data" type="const GLvoid *"/>
1552 </proto>
1553 </template>
1554
1555 <template name="ActiveTexture">
1556 <proto>
1557 <return type="void"/>
1558 <param name="texture" type="GLenum"/>
1559 </proto>
1560 </template>
1561
1562 <template name="ClientActiveTexture">
1563 <proto>
1564 <return type="void"/>
1565 <param name="texture" type="GLenum"/>
1566 </proto>
1567 </template>
1568
1569 <template name="SampleCoverage">
1570 <proto>
1571 <return type="void"/>
1572 <param name="value" type="GLtype"/>
1573 <param name="invert" type="GLboolean"/>
1574 </proto>
1575 </template>
1576
1577 <template name="CompressedTexImage2D">
1578 <proto>
1579 <return type="void"/>
1580 <param name="target" type="GLenum"/>
1581 <param name="level" type="GLint"/>
1582 <param name="internalFormat" type="GLenum"/>
1583 <param name="width" type="GLsizei"/>
1584 <param name="height" type="GLsizei"/>
1585 <param name="border" type="GLint"/>
1586 <param name="imageSize" type="GLsizei"/>
1587 <param name="data" type="const GLvoid *"/>
1588 </proto>
1589 </template>
1590
1591 <template name="CompressedTexSubImage2D">
1592 <proto>
1593 <return type="void"/>
1594 <param name="target" type="GLenum"/>
1595 <param name="level" type="GLint"/>
1596 <param name="xoffset" type="GLint"/>
1597 <param name="yoffset" type="GLint"/>
1598 <param name="width" type="GLsizei"/>
1599 <param name="height" type="GLsizei"/>
1600 <param name="format" type="GLenum"/>
1601 <param name="imageSize" type="GLsizei"/>
1602 <param name="data" type="const GLvoid *"/>
1603 </proto>
1604 </template>
1605
1606 <template name="BlendFuncSeparate">
1607 <proto>
1608 <return type="void"/>
1609 <param name="srcRGB" type="GLenum"/>
1610 <param name="dstRGB" type="GLenum"/>
1611 <param name="srcAlpha" type="GLenum"/>
1612 <param name="dstAlpha" type="GLenum"/>
1613 </proto>
1614
1615 <desc name="srcRGB">
1616 <value name="GL_ZERO"/>
1617 <value name="GL_ONE"/>
1618 <value name="GL_SRC_COLOR"/>
1619 <value name="GL_ONE_MINUS_SRC_COLOR"/>
1620 <value name="GL_SRC_ALPHA"/>
1621 <value name="GL_ONE_MINUS_SRC_ALPHA"/>
1622 <value name="GL_DST_ALPHA"/>
1623 <value name="GL_ONE_MINUS_DST_ALPHA"/>
1624 <value name="GL_DST_COLOR"/>
1625 <value name="GL_ONE_MINUS_DST_COLOR"/>
1626 <value name="GL_SRC_ALPHA_SATURATE"/>
1627
1628 <value name="GL_CONSTANT_COLOR" category="GLES2.0"/>
1629 <value name="GL_ONE_MINUS_CONSTANT_COLOR" category="GLES2.0"/>
1630 <value name="GL_CONSTANT_ALPHA" category="GLES2.0"/>
1631 <value name="GL_ONE_MINUS_CONSTANT_ALPHA" category="GLES2.0"/>
1632 </desc>
1633
1634 <desc name="dstRGB">
1635 <value name="GL_ZERO"/>
1636 <value name="GL_ONE"/>
1637 <value name="GL_SRC_COLOR"/>
1638 <value name="GL_ONE_MINUS_SRC_COLOR"/>
1639 <value name="GL_SRC_ALPHA"/>
1640 <value name="GL_ONE_MINUS_SRC_ALPHA"/>
1641 <value name="GL_DST_ALPHA"/>
1642 <value name="GL_ONE_MINUS_DST_ALPHA"/>
1643 <value name="GL_DST_COLOR"/>
1644 <value name="GL_ONE_MINUS_DST_COLOR"/>
1645
1646 <value name="GL_CONSTANT_COLOR" category="GLES2.0"/>
1647 <value name="GL_ONE_MINUS_CONSTANT_COLOR" category="GLES2.0"/>
1648 <value name="GL_CONSTANT_ALPHA" category="GLES2.0"/>
1649 <value name="GL_ONE_MINUS_CONSTANT_ALPHA" category="GLES2.0"/>
1650 </desc>
1651
1652 <desc name="srcAlpha">
1653 <value name="GL_ZERO"/>
1654 <value name="GL_ONE"/>
1655 <value name="GL_SRC_COLOR"/>
1656 <value name="GL_ONE_MINUS_SRC_COLOR"/>
1657 <value name="GL_SRC_ALPHA"/>
1658 <value name="GL_ONE_MINUS_SRC_ALPHA"/>
1659 <value name="GL_DST_ALPHA"/>
1660 <value name="GL_ONE_MINUS_DST_ALPHA"/>
1661 <value name="GL_DST_COLOR"/>
1662 <value name="GL_ONE_MINUS_DST_COLOR"/>
1663 <value name="GL_SRC_ALPHA_SATURATE"/>
1664
1665 <value name="GL_CONSTANT_COLOR" category="GLES2.0"/>
1666 <value name="GL_ONE_MINUS_CONSTANT_COLOR" category="GLES2.0"/>
1667 <value name="GL_CONSTANT_ALPHA" category="GLES2.0"/>
1668 <value name="GL_ONE_MINUS_CONSTANT_ALPHA" category="GLES2.0"/>
1669 </desc>
1670
1671 <desc name="dstAlpha">
1672 <value name="GL_ZERO"/>
1673 <value name="GL_ONE"/>
1674 <value name="GL_SRC_COLOR"/>
1675 <value name="GL_ONE_MINUS_SRC_COLOR"/>
1676 <value name="GL_SRC_ALPHA"/>
1677 <value name="GL_ONE_MINUS_SRC_ALPHA"/>
1678 <value name="GL_DST_ALPHA"/>
1679 <value name="GL_ONE_MINUS_DST_ALPHA"/>
1680 <value name="GL_DST_COLOR"/>
1681 <value name="GL_ONE_MINUS_DST_COLOR"/>
1682
1683 <value name="GL_CONSTANT_COLOR" category="GLES2.0"/>
1684 <value name="GL_ONE_MINUS_CONSTANT_COLOR" category="GLES2.0"/>
1685 <value name="GL_CONSTANT_ALPHA" category="GLES2.0"/>
1686 <value name="GL_ONE_MINUS_CONSTANT_ALPHA" category="GLES2.0"/>
1687 </desc>
1688 </template>
1689
1690 <template name="PointParameter">
1691 <proto>
1692 <return type="void"/>
1693 <param name="pname" type="GLenum"/>
1694 <vector name="params" type="const GLtype *" size="dynamic">
1695 <param name="param" type="GLtype"/>
1696 </vector>
1697 </proto>
1698
1699 <desc name="pname">
1700 <value name="GL_POINT_SIZE_MIN"/>
1701 <value name="GL_POINT_SIZE_MAX"/>
1702 <value name="GL_POINT_FADE_THRESHOLD_SIZE"/>
1703
1704 <desc name="params" vector_size="1"/>
1705 </desc>
1706
1707 <desc name="pname">
1708 <value name="GL_POINT_DISTANCE_ATTENUATION"/>
1709 <desc name="params" vector_size="3"/>
1710 </desc>
1711 </template>
1712
1713 <template name="VertexAttrib">
1714 <proto>
1715 <return type="void"/>
1716 <param name="index" type="GLuint"/>
1717 <vector name="v" type="const GLtype *" size="dynamic">
1718 <param name="x" type="GLtype"/>
1719 <param name="y" type="GLtype"/>
1720 <param name="z" type="GLtype"/>
1721 <param name="w" type="GLtype"/>
1722 </vector>
1723 </proto>
1724 </template>
1725
1726 <template name="VertexAttribPointer">
1727 <proto>
1728 <return type="void"/>
1729 <param name="index" type="GLuint"/>
1730 <param name="size" type="GLint"/>
1731 <param name="type" type="GLenum"/>
1732 <param name="normalized" type="GLboolean"/>
1733 <param name="stride" type="GLsizei"/>
1734 <param name="pointer" type="const GLvoid *"/>
1735 </proto>
1736 </template>
1737
1738 <template name="EnableVertexAttribArray">
1739 <proto>
1740 <return type="void"/>
1741 <param name="index" type="GLuint"/>
1742 </proto>
1743 </template>
1744
1745 <template name="DisableVertexAttribArray">
1746 <proto>
1747 <return type="void"/>
1748 <param name="index" type="GLuint"/>
1749 </proto>
1750 </template>
1751
1752 <template name="IsProgram" direction="get">
1753 <proto>
1754 <return type="GLboolean"/>
1755 <param name="program" type="GLuint"/>
1756 </proto>
1757 </template>
1758
1759 <template name="GetProgram" direction="get">
1760 <proto>
1761 <return type="void"/>
1762 <param name="program" type="GLuint"/>
1763 <param name="pname" type="GLenum"/>
1764 <vector name="params" type="GLtype *" size="dynamic"/>
1765 </proto>
1766 </template>
1767
1768 <template name="GetVertexAttrib" direction="get">
1769 <proto>
1770 <return type="void"/>
1771 <param name="index" type="GLuint"/>
1772 <param name="pname" type="GLenum"/>
1773 <vector name="params" type="GLtype *" size="dynamic"/>
1774 </proto>
1775
1776 <desc name="pname">
1777 <value name="GL_VERTEX_ATTRIB_ARRAY_ENABLED"/>
1778 <value name="GL_VERTEX_ATTRIB_ARRAY_SIZE"/>
1779 <value name="GL_VERTEX_ATTRIB_ARRAY_STRIDE"/>
1780 <value name="GL_VERTEX_ATTRIB_ARRAY_TYPE"/>
1781 <value name="GL_VERTEX_ATTRIB_ARRAY_NORMALIZED"/>
1782 <value name="GL_VERTEX_ATTRIB_ARRAY_BUFFER_BINDING"/>
1783
1784 <desc name="params" vector_size="1" convert="false"/>
1785 </desc>
1786
1787 <desc name="pname">
1788 <value name="GL_CURRENT_VERTEX_ATTRIB"/>
1789 <desc name="params" vector_size="16?" convert="false"/>
1790 </desc>
1791 </template>
1792
1793 <template name="GetVertexAttribPointer" direction="get">
1794 <proto>
1795 <return type="void"/>
1796 <param name="index" type="GLuint"/>
1797 <param name="pname" type="GLenum"/>
1798 <vector name="pointer" type="GLvoid **" size="dynamic"/>
1799 </proto>
1800 </template>
1801
1802 <template name="GetBufferPointer" direction="get">
1803 <proto>
1804 <return type="void"/>
1805 <param name="target" type="GLenum"/>
1806 <param name="pname" type="GLenum"/>
1807 <vector name="params" type="GLvoid **" size="dynamic"/>
1808 </proto>
1809 </template>
1810
1811 <template name="MapBuffer" direction="get">
1812 <proto>
1813 <return type="void *"/>
1814 <param name="target" type="GLenum"/>
1815 <param name="access" type="GLenum"/>
1816 </proto>
1817 </template>
1818
1819 <template name="UnmapBuffer" direction="get">
1820 <proto>
1821 <return type="GLboolean"/>
1822 <param name="target" type="GLenum"/>
1823 </proto>
1824 </template>
1825
1826 <template name="BindBuffer">
1827 <proto>
1828 <return type="void"/>
1829 <param name="target" type="GLenum"/>
1830 <param name="buffer" type="GLuint"/>
1831 </proto>
1832 </template>
1833
1834 <template name="BufferData">
1835 <proto>
1836 <return type="void"/>
1837 <param name="target" type="GLenum"/>
1838 <param name="size" type="GLsizeiptr"/>
1839 <param name="data" type="const GLvoid *"/>
1840 <param name="usage" type="GLenum"/>
1841 </proto>
1842 </template>
1843
1844 <template name="BufferSubData">
1845 <proto>
1846 <return type="void"/>
1847 <param name="target" type="GLenum"/>
1848 <param name="offset" type="GLintptr"/>
1849 <param name="size" type="GLsizeiptr"/>
1850 <param name="data" type="const GLvoid *"/>
1851 </proto>
1852 </template>
1853
1854 <template name="DeleteBuffers">
1855 <proto>
1856 <return type="void"/>
1857 <param name="n" type="GLsizei"/>
1858 <param name="buffer" type="const GLuint *"/>
1859 </proto>
1860 </template>
1861
1862 <template name="GenBuffers" direction="get">
1863 <proto>
1864 <return type="void"/>
1865 <param name="n" type="GLsizei"/>
1866 <param name="buffer" type="GLuint *"/>
1867 </proto>
1868 </template>
1869
1870 <template name="GetBufferParameter" direction="get">
1871 <proto>
1872 <return type="void"/>
1873 <param name="target" type="GLenum"/>
1874 <param name="pname" type="GLenum"/>
1875 <vector name="params" type="GLtype *" size="dynamic"/>
1876 </proto>
1877
1878 <desc name="pname">
1879 <value name="GL_BUFFER_SIZE"/>
1880 <value name="GL_BUFFER_USAGE"/>
1881 <value name="GL_BUFFER_ACCESS_OES" category="OES_mapbuffer"/>
1882 <value name="GL_BUFFER_MAPPED_OES" category="OES_mapbuffer"/>
1883 </desc>
1884 </template>
1885
1886 <template name="IsBuffer" direction="get">
1887 <proto>
1888 <return type="GLboolean"/>
1889 <param name="buffer" type="GLuint"/>
1890 </proto>
1891 </template>
1892
1893 <template name="CreateShader">
1894 <proto>
1895 <return type="GLuint"/>
1896 <param name="type" type="GLenum"/>
1897 </proto>
1898 </template>
1899
1900 <template name="ShaderSource">
1901 <proto>
1902 <return type="void"/>
1903 <param name="shader" type="GLuint"/>
1904 <param name="count" type="GLsizei"/>
1905 <param name="string" type="const GLchar * const *"/>
1906 <param name="length" type="const int *"/>
1907 </proto>
1908 </template>
1909
1910 <template name="CompileShader">
1911 <proto>
1912 <return type="void"/>
1913 <param name="shader" type="GLuint"/>
1914 </proto>
1915 </template>
1916
1917 <template name="ReleaseShaderCompiler">
1918 <proto>
1919 <return type="void"/>
1920 </proto>
1921 </template>
1922
1923 <template name="DeleteShader">
1924 <proto>
1925 <return type="void"/>
1926 <param name="shader" type="GLuint"/>
1927 </proto>
1928 </template>
1929
1930 <template name="ShaderBinary">
1931 <proto>
1932 <return type="void"/>
1933 <param name="n" type="GLsizei"/>
1934 <param name="shaders" type="const GLuint *"/>
1935 <param name="binaryformat" type="GLenum"/>
1936 <param name="binary" type="const GLvoid *"/>
1937 <param name="length" type="GLsizei"/>
1938 </proto>
1939 </template>
1940
1941 <template name="CreateProgram">
1942 <proto>
1943 <return type="GLuint"/>
1944 </proto>
1945 </template>
1946
1947 <template name="AttachShader">
1948 <proto>
1949 <return type="void"/>
1950 <param name="program" type="GLuint"/>
1951 <param name="shader" type="GLuint"/>
1952 </proto>
1953 </template>
1954
1955 <template name="DetachShader">
1956 <proto>
1957 <return type="void"/>
1958 <param name="program" type="GLuint"/>
1959 <param name="shader" type="GLuint"/>
1960 </proto>
1961 </template>
1962
1963 <template name="LinkProgram">
1964 <proto>
1965 <return type="void"/>
1966 <param name="program" type="GLuint"/>
1967 </proto>
1968 </template>
1969
1970 <template name="UseProgram">
1971 <proto>
1972 <return type="void"/>
1973 <param name="program" type="GLuint"/>
1974 </proto>
1975 </template>
1976
1977 <template name="DeleteProgram">
1978 <proto>
1979 <return type="void"/>
1980 <param name="program" type="GLuint"/>
1981 </proto>
1982 </template>
1983
1984 <template name="GetActiveAttrib" direction="get">
1985 <proto>
1986 <return type="void"/>
1987 <param name="program" type="GLuint"/>
1988 <param name="index" type="GLuint"/>
1989 <param name="bufSize" type="GLsizei"/>
1990 <param name="length" type="GLsizei *"/>
1991 <param name="size" type="GLint *"/>
1992 <param name="type" type="GLenum *"/>
1993 <param name="name" type="GLchar *"/>
1994 </proto>
1995 </template>
1996
1997 <template name="GetAttribLocation" direction="get">
1998 <proto>
1999 <return type="GLint"/>
2000 <param name="program" type="GLuint"/>
2001 <param name="name" type="const char *"/>
2002 </proto>
2003 </template>
2004
2005 <template name="BindAttribLocation">
2006 <proto>
2007 <return type="void"/>
2008 <param name="program" type="GLuint"/>
2009 <param name="index" type="GLuint"/>
2010 <param name="name" type="const char *"/>
2011 </proto>
2012 </template>
2013
2014 <template name="GetUniformLocation" direction="get">
2015 <proto>
2016 <return type="GLint"/>
2017 <param name="program" type="GLuint"/>
2018 <param name="name" type="const char *"/>
2019 </proto>
2020 </template>
2021
2022 <template name="GetActiveUniform" direction="get">
2023 <proto>
2024 <return type="void"/>
2025 <param name="program" type="GLuint"/>
2026 <param name="index" type="GLuint"/>
2027 <param name="bufSize" type="GLsizei"/>
2028 <param name="length" type="GLsizei *"/>
2029 <param name="size" type="GLint *"/>
2030 <param name="type" type="GLenum *"/>
2031 <param name="name" type="GLchar *"/>
2032 </proto>
2033 </template>
2034
2035 <template name="Uniform">
2036 <proto>
2037 <return type="void"/>
2038 <param name="location" type="GLint"/>
2039 <param name="count" type="GLsizei" hide_if_expanded="true"/>
2040 <vector name="values" type="const GLtype *" size="dynamic">
2041 <param name="v0" type="GLtype"/>
2042 <param name="v1" type="GLtype"/>
2043 <param name="v2" type="GLtype"/>
2044 <param name="v3" type="GLtype"/>
2045 </vector>
2046 </proto>
2047 </template>
2048
2049 <template name="UniformMatrix">
2050 <proto>
2051 <return type="void"/>
2052 <param name="location" type="GLint"/>
2053 <param name="count" type="GLsizei"/>
2054 <param name="transpose" type="GLboolean"/>
2055 <vector name="value" type="const GLtype *" size="dynamic"/>
2056 </proto>
2057 </template>
2058
2059 <template name="ValidateProgram">
2060 <proto>
2061 <return type="void"/>
2062 <param name="program" type="GLuint"/>
2063 </proto>
2064 </template>
2065
2066 <template name="GenerateMipmap">
2067 <proto>
2068 <return type="void"/>
2069 <param name="target" type="GLenum"/>
2070 </proto>
2071
2072 <desc name="target">
2073 <value name="GL_TEXTURE_2D"/>
2074 <value name="GL_TEXTURE_CUBE_MAP" category="GLES2.0"/>
2075 <value name="GL_TEXTURE_CUBE_MAP_OES" category="OES_texture_cube_map"/>
2076 <value name="GL_TEXTURE_3D_OES" category="OES_texture_3D"/>
2077 </desc>
2078 </template>
2079
2080 <template name="BindFramebuffer">
2081 <proto>
2082 <return type="void"/>
2083 <param name="target" type="GLenum"/>
2084 <param name="framebuffer" type="GLuint"/>
2085 </proto>
2086 </template>
2087
2088 <template name="DeleteFramebuffers">
2089 <proto>
2090 <return type="void"/>
2091 <param name="n" type="GLsizei"/>
2092 <param name="framebuffers" type="const GLuint *"/>
2093 </proto>
2094 </template>
2095
2096 <template name="GenFramebuffers">
2097 <proto>
2098 <return type="void"/>
2099 <param name="n" type="GLsizei"/>
2100 <param name="ids" type="GLuint *"/>
2101 </proto>
2102 </template>
2103
2104 <template name="BindRenderbuffer">
2105 <proto>
2106 <return type="void"/>
2107 <param name="target" type="GLenum"/>
2108 <param name="renderbuffer" type="GLuint"/>
2109 </proto>
2110 </template>
2111
2112 <template name="DeleteRenderbuffers">
2113 <proto>
2114 <return type="void"/>
2115 <param name="n" type="GLsizei"/>
2116 <param name="renderbuffers" type="const GLuint *"/>
2117 </proto>
2118 </template>
2119
2120 <template name="GenRenderbuffers">
2121 <proto>
2122 <return type="void"/>
2123 <param name="n" type="GLsizei"/>
2124 <param name="renderbuffers" type="GLuint *"/>
2125 </proto>
2126 </template>
2127
2128 <template name="RenderbufferStorage">
2129 <proto>
2130 <return type="void"/>
2131 <param name="target" type="GLenum"/>
2132 <param name="internalFormat" type="GLenum"/>
2133 <param name="width" type="GLsizei"/>
2134 <param name="height" type="GLsizei"/>
2135 </proto>
2136
2137 <desc name="internalFormat">
2138 <value name="GL_DEPTH_COMPONENT16_OES" category="OES_framebuffer_object"/>
2139 <value name="GL_RGBA4_OES" category="OES_framebuffer_object"/>
2140 <value name="GL_RGB5_A1_OES" category="OES_framebuffer_object"/>
2141 <value name="GL_RGB565_OES" category="OES_framebuffer_object"/>
2142 <value name="GL_STENCIL_INDEX8_OES" category="OES_stencil8"/>
2143
2144 <value name="GL_DEPTH_COMPONENT16" category="GLES2.0"/>
2145 <value name="GL_RGBA4" category="GLES2.0"/>
2146 <value name="GL_RGB5_A1" category="GLES2.0"/>
2147 <value name="GL_RGB565" category="GLES2.0"/>
2148 <value name="GL_STENCIL_INDEX8" category="GLES2.0"/>
2149
2150 <value name="GL_DEPTH_COMPONENT24_OES" category="OES_depth24"/>
2151 <value name="GL_DEPTH_COMPONENT32_OES" category="OES_depth32"/>
2152 <value name="GL_RGB8_OES" category="OES_rgb8_rgba8"/>
2153 <value name="GL_RGBA8_OES" category="OES_rgb8_rgba8"/>
2154 <value name="GL_STENCIL_INDEX1_OES" category="OES_stencil1"/>
2155 <value name="GL_STENCIL_INDEX4_OES" category="OES_stencil4"/>
2156 <value name="GL_DEPTH24_STENCIL8_OES" category="OES_packed_depth_stencil"/>
2157 </desc>
2158 </template>
2159
2160 <template name="FramebufferRenderbuffer">
2161 <proto>
2162 <return type="void"/>
2163 <param name="target" type="GLenum"/>
2164 <param name="attachment" type="GLenum"/>
2165 <param name="renderbuffertarget" type="GLenum"/>
2166 <param name="renderbuffer" type="GLuint"/>
2167 </proto>
2168 </template>
2169
2170 <template name="FramebufferTexture2D">
2171 <proto>
2172 <return type="void"/>
2173 <param name="target" type="GLenum"/>
2174 <param name="attachment" type="GLenum"/>
2175 <param name="textarget" type="GLenum"/>
2176 <param name="texture" type="GLuint"/>
2177 <param name="level" type="GLint"/>
2178 </proto>
2179
2180 <desc name="textarget" error="GL_INVALID_OPERATION">
2181 <value name="GL_TEXTURE_2D"/>
2182 <value name="GL_TEXTURE_CUBE_MAP_POSITIVE_X" category="GLES2.0"/>
2183 <value name="GL_TEXTURE_CUBE_MAP_POSITIVE_Y" category="GLES2.0"/>
2184 <value name="GL_TEXTURE_CUBE_MAP_POSITIVE_Z" category="GLES2.0"/>
2185 <value name="GL_TEXTURE_CUBE_MAP_NEGATIVE_X" category="GLES2.0"/>
2186 <value name="GL_TEXTURE_CUBE_MAP_NEGATIVE_Y" category="GLES2.0"/>
2187 <value name="GL_TEXTURE_CUBE_MAP_NEGATIVE_Z" category="GLES2.0"/>
2188 <value name="GL_TEXTURE_CUBE_MAP_POSITIVE_X_OES" category="OES_texture_cube_map"/>
2189 <value name="GL_TEXTURE_CUBE_MAP_POSITIVE_Y_OES" category="OES_texture_cube_map"/>
2190 <value name="GL_TEXTURE_CUBE_MAP_POSITIVE_Z_OES" category="OES_texture_cube_map"/>
2191 <value name="GL_TEXTURE_CUBE_MAP_NEGATIVE_X_OES" category="OES_texture_cube_map"/>
2192 <value name="GL_TEXTURE_CUBE_MAP_NEGATIVE_Y_OES" category="OES_texture_cube_map"/>
2193 <value name="GL_TEXTURE_CUBE_MAP_NEGATIVE_Z_OES" category="OES_texture_cube_map"/>
2194 </desc>
2195 <!-- According to the base specification, "level" must be 0. But
2196 extension GL_OES_fbo_render_mipmap lifts that restriction,
2197 so no restriction is placed here. -->
2198 </template>
2199
2200 <template name="FramebufferTexture3D">
2201 <proto>
2202 <return type="void"/>
2203 <param name="target" type="GLenum"/>
2204 <param name="attachment" type="GLenum"/>
2205 <param name="textarget" type="GLenum"/>
2206 <param name="texture" type="GLuint"/>
2207 <param name="level" type="GLint"/>
2208 <param name="zoffset" type="GLint"/>
2209 </proto>
2210 </template>
2211
2212 <template name="CheckFramebufferStatus" direction="get">
2213 <proto>
2214 <return type="GLenum"/>
2215 <param name="target" type="GLenum"/>
2216 </proto>
2217 </template>
2218
2219 <template name="GetFramebufferAttachmentParameter" direction="get">
2220 <proto>
2221 <return type="void"/>
2222 <param name="target" type="GLenum"/>
2223 <param name="attachment" type="GLenum"/>
2224 <param name="pname" type="GLenum"/>
2225 <vector name="params" type="GLtype *" size="dynamic"/>
2226 </proto>
2227
2228 <desc name="pname">
2229 <value name="GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE_OES" category="OES_framebuffer_object"/>
2230 <value name="GL_FRAMEBUFFER_ATTACHMENT_OBJECT_NAME_OES" category="OES_framebuffer_object"/>
2231 <value name="GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL_OES" category="OES_framebuffer_object"/>
2232 <value name="GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE_OES" category="OES_framebuffer_object"/>
2233
2234 <value name="GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE" category="GLES2.0"/>
2235 <value name="GL_FRAMEBUFFER_ATTACHMENT_OBJECT_NAME" category="GLES2.0"/>
2236 <value name="GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL" category="GLES2.0"/>
2237 <value name="GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE" category="GLES2.0"/>
2238 <value name="GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_3D_ZOFFSET_OES" category="OES_texture_3D"/>
2239
2240 <desc name="params" vector_size="1" convert="false"/>
2241 </desc>
2242 </template>
2243
2244 <template name="GetRenderbufferParameter" direction="get">
2245 <proto>
2246 <return type="void"/>
2247 <param name="target" type="GLenum"/>
2248 <param name="pname" type="GLenum"/>
2249 <vector name="params" type="GLtype *" size="dynamic"/>
2250 </proto>
2251
2252 <desc name="pname" category="OES_framebuffer_object">
2253 <value name="GL_RENDERBUFFER_WIDTH_OES"/>
2254 <value name="GL_RENDERBUFFER_HEIGHT_OES"/>
2255 <value name="GL_RENDERBUFFER_INTERNAL_FORMAT_OES"/>
2256 <value name="GL_RENDERBUFFER_RED_SIZE_OES"/>
2257 <value name="GL_RENDERBUFFER_GREEN_SIZE_OES"/>
2258 <value name="GL_RENDERBUFFER_BLUE_SIZE_OES"/>
2259 <value name="GL_RENDERBUFFER_ALPHA_SIZE_OES"/>
2260 <value name="GL_RENDERBUFFER_DEPTH_SIZE_OES"/>
2261 <value name="GL_RENDERBUFFER_STENCIL_SIZE_OES"/>
2262
2263 <desc name="params" vector_size="1" convert="false"/>
2264 </desc>
2265
2266 <desc name="pname" category="GLES2.0">
2267 <value name="GL_RENDERBUFFER_WIDTH"/>
2268 <value name="GL_RENDERBUFFER_HEIGHT"/>
2269 <value name="GL_RENDERBUFFER_INTERNAL_FORMAT"/>
2270 <value name="GL_RENDERBUFFER_RED_SIZE"/>
2271 <value name="GL_RENDERBUFFER_GREEN_SIZE"/>
2272 <value name="GL_RENDERBUFFER_BLUE_SIZE"/>
2273 <value name="GL_RENDERBUFFER_ALPHA_SIZE"/>
2274 <value name="GL_RENDERBUFFER_DEPTH_SIZE"/>
2275 <value name="GL_RENDERBUFFER_STENCIL_SIZE"/>
2276
2277 <desc name="params" vector_size="1" convert="false"/>
2278 </desc>
2279 </template>
2280
2281 <template name="IsRenderbuffer" direction="get">
2282 <proto>
2283 <return type="GLboolean"/>
2284 <param name="renderbuffer" type="GLuint"/>
2285 </proto>
2286 </template>
2287
2288 <template name="IsFramebuffer" direction="get">
2289 <proto>
2290 <return type="GLboolean"/>
2291 <param name="framebuffer" type="GLuint"/>
2292 </proto>
2293 </template>
2294
2295 <template name="IsShader" direction="get">
2296 <proto>
2297 <return type="GLboolean"/>
2298 <param name="shader" type="GLuint"/>
2299 </proto>
2300 </template>
2301
2302 <template name="GetShader" direction="get">
2303 <proto>
2304 <return type="void"/>
2305 <param name="shader" type="GLuint"/>
2306 <param name="pname" type="GLenum"/>
2307 <vector name="params" type="GLtype *" size="dynamic"/>
2308 </proto>
2309 </template>
2310
2311 <template name="GetAttachedShaders" direction="get">
2312 <proto>
2313 <return type="void"/>
2314 <param name="program" type="GLuint"/>
2315 <param name="maxCount" type="GLsizei"/>
2316 <param name="count" type="GLsizei *"/>
2317 <param name="shaders" type="GLuint *"/>
2318 </proto>
2319 </template>
2320
2321 <template name="GetShaderInfoLog" direction="get">
2322 <proto>
2323 <return type="void"/>
2324 <param name="shader" type="GLuint"/>
2325 <param name="bufSize" type="GLsizei"/>
2326 <param name="length" type="GLsizei *"/>
2327 <param name="infoLog" type="GLchar *"/>
2328 </proto>
2329 </template>
2330
2331 <template name="GetProgramInfoLog" direction="get">
2332 <proto>
2333 <return type="void"/>
2334 <param name="program" type="GLuint"/>
2335 <param name="bufSize" type="GLsizei"/>
2336 <param name="length" type="GLsizei *"/>
2337 <param name="infoLog" type="GLchar *"/>
2338 </proto>
2339 </template>
2340
2341 <template name="GetShaderSource" direction="get">
2342 <proto>
2343 <return type="void"/>
2344 <param name="shader" type="GLuint"/>
2345 <param name="bufSize" type="GLsizei"/>
2346 <param name="length" type="GLsizei *"/>
2347 <param name="source" type="GLchar *"/>
2348 </proto>
2349 </template>
2350
2351 <template name="GetShaderPrecisionFormat" direction="get">
2352 <proto>
2353 <return type="void"/>
2354 <param name="shadertype" type="GLenum"/>
2355 <param name="precisiontype" type="GLenum"/>
2356 <param name="range" type="GLint *"/>
2357 <param name="precision" type="GLint *"/>
2358 </proto>
2359 </template>
2360
2361 <template name="GetUniform" direction="get">
2362 <proto>
2363 <return type="void"/>
2364 <param name="program" type="GLuint"/>
2365 <param name="location" type="GLint"/>
2366 <vector name="params" type="GLtype *" size="dynamic"/>
2367 </proto>
2368 </template>
2369
2370 <template name="QueryMatrix" direction="get">
2371 <proto>
2372 <return type="GLbitfield"/>
2373 <vector name="mantissa" type="GLtype *" size="16"/>
2374 <vector name="exponent" type="GLint *" size="16"/>
2375 </proto>
2376 </template>
2377
2378 <template name="DrawTex">
2379 <proto>
2380 <return type="void"/>
2381 <vector name="coords" type="const GLtype *" size="5">
2382 <param name="x" type="GLtype"/>
2383 <param name="y" type="GLtype"/>
2384 <param name="z" type="GLtype"/>
2385 <param name="w" type="GLtype"/>
2386 <param name="h" type="GLtype"/>
2387 </vector>
2388 </proto>
2389 </template>
2390
2391 <template name="MultiDrawArrays">
2392 <proto>
2393 <return type="void"/>
2394 <param name="mode" type="GLenum"/>
2395 <param name="first" type="const GLint *"/>
2396 <param name="count" type="const GLsizei *"/>
2397 <param name="primcount" type="GLsizei"/>
2398 </proto>
2399
2400 <desc name="mode">
2401 <value name="GL_POINTS"/>
2402 <value name="GL_LINES"/>
2403 <value name="GL_LINE_LOOP"/>
2404 <value name="GL_LINE_STRIP"/>
2405 <value name="GL_TRIANGLES"/>
2406 <value name="GL_TRIANGLE_STRIP"/>
2407 <value name="GL_TRIANGLE_FAN"/>
2408 </desc>
2409 </template>
2410
2411 <template name="MultiDrawElements">
2412 <proto>
2413 <return type="void"/>
2414 <param name="mode" type="GLenum"/>
2415 <param name="count" type="const GLsizei *"/>
2416 <param name="type" type="GLenum"/>
2417 <param name="indices" type="const GLvoid **"/>
2418 <param name="primcount" type="GLsizei"/>
2419 </proto>
2420
2421 <desc name="mode">
2422 <value name="GL_POINTS"/>
2423 <value name="GL_LINES"/>
2424 <value name="GL_LINE_LOOP"/>
2425 <value name="GL_LINE_STRIP"/>
2426 <value name="GL_TRIANGLES"/>
2427 <value name="GL_TRIANGLE_STRIP"/>
2428 <value name="GL_TRIANGLE_FAN"/>
2429 </desc>
2430 </template>
2431
2432 <template name="EGLImageTargetTexture2D">
2433 <proto>
2434 <return type="void"/>
2435 <param name="target" type="GLenum"/>
2436 <param name="image" type="GLeglImageOES"/>
2437 </proto>
2438 </template>
2439
2440 <template name="EGLImageTargetRenderbufferStorage">
2441 <proto>
2442 <return type="void"/>
2443 <param name="target" type="GLenum"/>
2444 <param name="image" type="GLeglImageOES"/>
2445 </proto>
2446 </template>
2447
2448 <template name="DrawBuffers">
2449 <proto>
2450 <return type="void"/>
2451 <param name="n" type="GLsizei"/>
2452 <param name="bufs" type="const GLenum *"/>
2453 </proto>
2454 </template>
2455
2456 <template name="ReadBuffer">
2457 <proto>
2458 <return type="void"/>
2459 <param name="mode" type="GLenum"/>
2460 </proto>
2461 </template>
2462
2463 <api name="mesa" implementation="true">
2464 <category name="MESA"/>
2465
2466 <function name="Color4f" default_prefix="_es_" template="Color" gltype="GLfloat" vector_size="4" expand_vector="true"/>
2467 <function name="ClipPlane" template="ClipPlane" gltype="GLdouble"/>
2468 <function name="CullFace" template="CullFace"/>
2469
2470 <function name="Fogf" template="Fog" gltype="GLfloat" expand_vector="true"/>
2471 <function name="Fogfv" template="Fog" gltype="GLfloat"/>
2472
2473 <function name="FrontFace" template="FrontFace"/>
2474 <function name="Hint" template="Hint"/>
2475
2476 <function name="Lightf" template="Light" gltype="GLfloat" expand_vector="true"/>
2477 <function name="Lightfv" template="Light" gltype="GLfloat"/>
2478
2479 <function name="LightModelf" template="LightModel" gltype="GLfloat" expand_vector="true"/>
2480 <function name="LightModelfv" template="LightModel" gltype="GLfloat"/>
2481
2482 <function name="LineWidth" template="LineWidth" gltype="GLfloat"/>
2483
2484 <function name="Materialf" default_prefix="_es_" template="Material" gltype="GLfloat" expand_vector="true"/>
2485 <function name="Materialfv" default_prefix="_es_" template="Material" gltype="GLfloat"/>
2486
2487 <function name="PointSize" template="PointSize" gltype="GLfloat"/>
2488 <function name="PointSizePointer" template="PointSizePointer"/>
2489
2490 <function name="Scissor" template="Scissor"/>
2491 <function name="ShadeModel" template="ShadeModel"/>
2492
2493 <function name="TexParameterf" template="TexParameter" gltype="GLfloat" expand_vector="true"/>
2494 <function name="TexParameterfv" template="TexParameter" gltype="GLfloat"/>
2495 <function name="TexParameteri" template="TexParameter" gltype="GLint" expand_vector="true"/>
2496 <function name="TexParameteriv" template="TexParameter" gltype="GLint"/>
2497
2498 <function name="TexImage2D" template="TexImage2D"/>
2499
2500 <function name="TexEnvf" template="TexEnv" gltype="GLfloat" expand_vector="true"/>
2501 <function name="TexEnvi" template="TexEnv" gltype="GLint" expand_vector="true"/>
2502 <function name="TexEnvfv" template="TexEnv" gltype="GLfloat"/>
2503 <function name="TexEnviv" template="TexEnv" gltype="GLint"/>
2504
2505 <function name="TexGenf" template="TexGen" gltype="GLfloat" expand_vector="true"/>
2506 <function name="TexGenfv" template="TexGen" gltype="GLfloat"/>
2507
2508 <function name="Clear" template="Clear"/>
2509 <function name="ClearColor" template="ClearColor" gltype="GLclampf"/>
2510 <function name="ClearStencil" template="ClearStencil"/>
2511 <function name="ClearDepth" template="ClearDepth" gltype="GLclampd"/>
2512 <function name="ClearDepthf" template="ClearDepth" gltype="GLclampf"/>
2513
2514 <function name="StencilMask" template="StencilMask"/>
2515 <function name="StencilMaskSeparate" template="StencilMaskSeparate"/>
2516 <function name="ColorMask" template="ColorMask"/>
2517 <function name="DepthMask" template="DepthMask"/>
2518 <function name="Disable" template="Disable"/>
2519 <function name="Enable" template="Enable"/>
2520 <function name="Finish" template="Finish"/>
2521 <function name="Flush" template="Flush"/>
2522
2523 <function name="AlphaFunc" template="AlphaFunc" gltype="GLclampf"/>
2524
2525 <function name="BlendFunc" template="BlendFunc"/>
2526 <function name="LogicOp" template="LogicOp"/>
2527 <function name="StencilFunc" template="StencilFunc"/>
2528 <function name="StencilFuncSeparate" template="StencilFuncSeparate"/>
2529 <function name="StencilOp" template="StencilOp"/>
2530 <function name="StencilOpSeparate" template="StencilOpSeparate"/>
2531 <function name="DepthFunc" template="DepthFunc"/>
2532 <function name="PixelStorei" template="PixelStore" gltype="GLint"/>
2533
2534 <function name="ReadPixels" template="ReadPixels"/>
2535 <function name="GetBooleanv" template="GetState" gltype="GLboolean"/>
2536 <function name="GetClipPlane" template="GetClipPlane" gltype="GLdouble"/>
2537 <function name="GetError" template="GetError"/>
2538 <function name="GetFloatv" template="GetState" gltype="GLfloat"/>
2539 <function name="GetFixedv" template="GetState" gltype="GLfixed"/>
2540 <function name="GetIntegerv" template="GetState" gltype="GLint"/>
2541
2542 <function name="GetLightfv" template="GetLight" gltype="GLfloat"/>
2543 <function name="GetMaterialfv" template="GetMaterial" gltype="GLfloat"/>
2544 <function name="GetMaterialiv" template="GetMaterial" gltype="GLint"/>
2545
2546 <function name="GetString" template="GetString"/>
2547
2548 <function name="GetTexEnvfv" template="GetTexEnv" gltype="GLfloat"/>
2549 <function name="GetTexEnviv" template="GetTexEnv" gltype="GLint"/>
2550 <function name="GetTexGenfv" template="GetTexGen" gltype="GLfloat"/>
2551 <function name="GetTexParameterfv" template="GetTexParameter" gltype="GLfloat"/>
2552 <function name="GetTexParameteriv" template="GetTexParameter" gltype="GLint"/>
2553
2554 <function name="IsEnabled" template="IsEnabled"/>
2555
2556 <function name="DepthRange" template="DepthRange" gltype="GLclampd"/>
2557 <function name="DepthRangef" template="DepthRange" gltype="GLclampf"/>
2558 <function name="Frustum" template="Frustum" gltype="GLdouble"/>
2559
2560 <function name="LoadIdentity" template="LoadIdentity"/>
2561 <function name="LoadMatrixf" template="LoadMatrix" gltype="GLfloat"/>
2562 <function name="MatrixMode" template="MatrixMode"/>
2563
2564 <function name="MultMatrixf" template="MultMatrix" gltype="GLfloat"/>
2565 <function name="Ortho" template="Ortho" gltype="GLdouble"/>
2566 <function name="PopMatrix" template="PopMatrix"/>
2567 <function name="PushMatrix" template="PushMatrix"/>
2568
2569 <function name="Rotatef" template="Rotate" gltype="GLfloat"/>
2570 <function name="Scalef" template="Scale" gltype="GLfloat"/>
2571 <function name="Translatef" template="Translate" gltype="GLfloat"/>
2572
2573 <function name="Viewport" template="Viewport"/>
2574
2575 <function name="ColorPointer" template="ColorPointer"/>
2576 <function name="DisableClientState" template="DisableClientState"/>
2577 <function name="DrawArrays" template="DrawArrays"/>
2578 <function name="DrawElements" template="DrawElements"/>
2579 <function name="EnableClientState" template="EnableClientState"/>
2580
2581 <function name="GetPointerv" template="GetPointer"/>
2582 <function name="Normal3f" default_prefix="_es_" template="Normal" gltype="GLfloat" expand_vector="true"/>
2583 <function name="NormalPointer" template="NormalPointer"/>
2584 <function name="TexCoordPointer" template="TexCoordPointer"/>
2585 <function name="VertexPointer" template="VertexPointer"/>
2586
2587 <function name="PolygonOffset" template="PolygonOffset" gltype="GLfloat"/>
2588 <function name="CopyTexImage2D" template="CopyTexImage2D"/>
2589 <function name="CopyTexSubImage2D" template="CopyTexSubImage2D"/>
2590 <function name="TexSubImage2D" template="TexSubImage2D"/>
2591
2592 <function name="BindTexture" template="BindTexture"/>
2593 <function name="DeleteTextures" template="DeleteTextures"/>
2594 <function name="GenTextures" template="GenTextures"/>
2595 <function name="IsTexture" template="IsTexture"/>
2596
2597 <function name="BlendColor" template="BlendColor" gltype="GLclampf"/>
2598 <function name="BlendEquation" template="BlendEquation"/>
2599 <function name="BlendEquationSeparateEXT" template="BlendEquationSeparate"/>
2600
2601 <function name="TexImage3D" template="TexImage3D"/>
2602 <function name="TexSubImage3D" template="TexSubImage3D"/>
2603 <function name="CopyTexSubImage3D" template="CopyTexSubImage3D"/>
2604
2605 <function name="CompressedTexImage3DARB" template="CompressedTexImage3D"/>
2606 <function name="CompressedTexSubImage3DARB" template="CompressedTexSubImage3D"/>
2607
2608 <function name="ActiveTextureARB" template="ActiveTexture"/>
2609 <function name="ClientActiveTextureARB" template="ClientActiveTexture"/>
2610
2611 <function name="MultiTexCoord4f" default_prefix="_es_" template="MultiTexCoord" gltype="GLfloat" vector_size="4" expand_vector="true"/>
2612
2613 <function name="SampleCoverageARB" template="SampleCoverage" gltype="GLclampf"/>
2614
2615 <function name="CompressedTexImage2DARB" template="CompressedTexImage2D"/>
2616 <function name="CompressedTexSubImage2DARB" template="CompressedTexSubImage2D"/>
2617
2618 <function name="BlendFuncSeparateEXT" template="BlendFuncSeparate"/>
2619
2620 <function name="PointParameterf" template="PointParameter" gltype="GLfloat" expand_vector="true"/>
2621 <function name="PointParameterfv" template="PointParameter" gltype="GLfloat"/>
2622
2623 <function name="VertexAttrib1f" default_prefix="_es_" template="VertexAttrib" gltype="GLfloat" vector_size="1" expand_vector="true"/>
2624 <function name="VertexAttrib2f" default_prefix="_es_" template="VertexAttrib" gltype="GLfloat" vector_size="2" expand_vector="true"/>
2625 <function name="VertexAttrib3f" default_prefix="_es_" template="VertexAttrib" gltype="GLfloat" vector_size="3" expand_vector="true"/>
2626 <function name="VertexAttrib4f" default_prefix="_es_" template="VertexAttrib" gltype="GLfloat" vector_size="4" expand_vector="true"/>
2627 <function name="VertexAttrib1fv" default_prefix="_es_" template="VertexAttrib" gltype="GLfloat" vector_size="1"/>
2628 <function name="VertexAttrib2fv" default_prefix="_es_" template="VertexAttrib" gltype="GLfloat" vector_size="2"/>
2629 <function name="VertexAttrib3fv" default_prefix="_es_" template="VertexAttrib" gltype="GLfloat" vector_size="3"/>
2630 <function name="VertexAttrib4fv" default_prefix="_es_" template="VertexAttrib" gltype="GLfloat" vector_size="4"/>
2631
2632 <function name="VertexAttribPointerARB" template="VertexAttribPointer"/>
2633 <function name="EnableVertexAttribArrayARB" template="EnableVertexAttribArray"/>
2634 <function name="DisableVertexAttribArrayARB" template="DisableVertexAttribArray"/>
2635
2636 <function name="IsProgram" template="IsProgram"/>
2637 <function name="GetProgramiv" template="GetProgram" gltype="GLint"/>
2638
2639 <function name="GetVertexAttribfvARB" template="GetVertexAttrib" gltype="GLfloat"/>
2640 <function name="GetVertexAttribivARB" template="GetVertexAttrib" gltype="GLint"/>
2641 <function name="GetVertexAttribPointervARB" template="GetVertexAttribPointer"/>
2642
2643 <function name="GetBufferPointervARB" template="GetBufferPointer"/>
2644 <function name="MapBufferARB" template="MapBuffer"/>
2645 <function name="UnmapBufferARB" template="UnmapBuffer"/>
2646 <function name="BindBufferARB" template="BindBuffer"/>
2647 <function name="BufferDataARB" template="BufferData"/>
2648 <function name="BufferSubDataARB" template="BufferSubData"/>
2649 <function name="DeleteBuffersARB" template="DeleteBuffers"/>
2650 <function name="GenBuffersARB" template="GenBuffers"/>
2651 <function name="GetBufferParameterivARB" template="GetBufferParameter" gltype="GLint"/>
2652 <function name="IsBufferARB" template="IsBuffer"/>
2653
2654 <function name="CreateShader" template="CreateShader"/>
2655 <function name="ShaderSourceARB" template="ShaderSource"/>
2656 <function name="CompileShaderARB" template="CompileShader"/>
2657 <function name="ReleaseShaderCompiler" template="ReleaseShaderCompiler"/>
2658 <function name="DeleteShader" template="DeleteShader"/>
2659 <function name="ShaderBinary" template="ShaderBinary"/>
2660 <function name="CreateProgram" template="CreateProgram"/>
2661 <function name="AttachShader" template="AttachShader"/>
2662 <function name="DetachShader" template="DetachShader"/>
2663 <function name="LinkProgramARB" template="LinkProgram"/>
2664 <function name="UseProgramObjectARB" template="UseProgram"/>
2665 <function name="DeleteProgram" template="DeleteProgram"/>
2666
2667 <function name="GetActiveAttribARB" template="GetActiveAttrib"/>
2668 <function name="GetAttribLocationARB" template="GetAttribLocation"/>
2669 <function name="BindAttribLocationARB" template="BindAttribLocation"/>
2670 <function name="GetUniformLocationARB" template="GetUniformLocation"/>
2671 <function name="GetActiveUniformARB" template="GetActiveUniform"/>
2672
2673 <function name="Uniform1fARB" template="Uniform" gltype="GLfloat" vector_size="1" expand_vector="true"/>
2674 <function name="Uniform2fARB" template="Uniform" gltype="GLfloat" vector_size="2" expand_vector="true"/>
2675 <function name="Uniform3fARB" template="Uniform" gltype="GLfloat" vector_size="3" expand_vector="true"/>
2676 <function name="Uniform4fARB" template="Uniform" gltype="GLfloat" vector_size="4" expand_vector="true"/>
2677 <function name="Uniform1iARB" template="Uniform" gltype="GLint" vector_size="1" expand_vector="true"/>
2678 <function name="Uniform2iARB" template="Uniform" gltype="GLint" vector_size="2" expand_vector="true"/>
2679 <function name="Uniform3iARB" template="Uniform" gltype="GLint" vector_size="3" expand_vector="true"/>
2680 <function name="Uniform4iARB" template="Uniform" gltype="GLint" vector_size="4" expand_vector="true"/>
2681 <function name="Uniform1fvARB" template="Uniform" gltype="GLfloat" vector_size="1"/>
2682 <function name="Uniform2fvARB" template="Uniform" gltype="GLfloat" vector_size="2"/>
2683 <function name="Uniform3fvARB" template="Uniform" gltype="GLfloat" vector_size="3"/>
2684 <function name="Uniform4fvARB" template="Uniform" gltype="GLfloat" vector_size="4"/>
2685 <function name="Uniform1ivARB" template="Uniform" gltype="GLint" vector_size="1"/>
2686 <function name="Uniform2ivARB" template="Uniform" gltype="GLint" vector_size="2"/>
2687 <function name="Uniform3ivARB" template="Uniform" gltype="GLint" vector_size="3"/>
2688 <function name="Uniform4ivARB" template="Uniform" gltype="GLint" vector_size="4"/>
2689
2690 <function name="UniformMatrix2fvARB" template="UniformMatrix" gltype="GLfloat" vector_size="2"/>
2691 <function name="UniformMatrix3fvARB" template="UniformMatrix" gltype="GLfloat" vector_size="3"/>
2692 <function name="UniformMatrix4fvARB" template="UniformMatrix" gltype="GLfloat" vector_size="4"/>
2693
2694 <function name="ValidateProgramARB" template="ValidateProgram"/>
2695
2696 <function name="GenerateMipmapEXT" template="GenerateMipmap"/>
2697 <function name="BindFramebufferEXT" template="BindFramebuffer"/>
2698 <function name="DeleteFramebuffersEXT" template="DeleteFramebuffers"/>
2699 <function name="GenFramebuffersEXT" template="GenFramebuffers"/>
2700 <function name="BindRenderbufferEXT" template="BindRenderbuffer"/>
2701 <function name="DeleteRenderbuffersEXT" template="DeleteRenderbuffers"/>
2702 <function name="GenRenderbuffersEXT" template="GenRenderbuffers"/>
2703 <function name="RenderbufferStorageEXT" template="RenderbufferStorage"/>
2704 <function name="FramebufferRenderbufferEXT" template="FramebufferRenderbuffer"/>
2705 <function name="FramebufferTexture2DEXT" template="FramebufferTexture2D"/>
2706 <function name="FramebufferTexture3DEXT" template="FramebufferTexture3D"/>
2707 <function name="CheckFramebufferStatusEXT" template="CheckFramebufferStatus"/>
2708 <function name="GetFramebufferAttachmentParameterivEXT" template="GetFramebufferAttachmentParameter" gltype="GLint"/>
2709 <function name="GetRenderbufferParameterivEXT" template="GetRenderbufferParameter" gltype="GLint"/>
2710 <function name="IsRenderbufferEXT" template="IsRenderbuffer"/>
2711 <function name="IsFramebufferEXT" template="IsFramebuffer"/>
2712
2713 <function name="IsShader" template="IsShader"/>
2714 <function name="GetShaderiv" template="GetShader" gltype="GLint"/>
2715 <function name="GetAttachedShaders" template="GetAttachedShaders"/>
2716 <function name="GetShaderInfoLog" template="GetShaderInfoLog"/>
2717 <function name="GetProgramInfoLog" template="GetProgramInfoLog"/>
2718 <function name="GetShaderSourceARB" template="GetShaderSource"/>
2719 <function name="GetShaderPrecisionFormat" template="GetShaderPrecisionFormat"/>
2720 <function name="GetUniformfvARB" template="GetUniform" gltype="GLfloat"/>
2721 <function name="GetUniformivARB" template="GetUniform" gltype="GLint"/>
2722
2723 <function name="DrawTexf" template="DrawTex" gltype="GLfloat" expand_vector="true"/>
2724 <function name="DrawTexfv" template="DrawTex" gltype="GLfloat"/>
2725 <function name="DrawTexi" template="DrawTex" gltype="GLint" expand_vector="true"/>
2726 <function name="DrawTexiv" template="DrawTex" gltype="GLint"/>
2727 <function name="DrawTexs" template="DrawTex" gltype="GLshort" expand_vector="true"/>
2728 <function name="DrawTexsv" template="DrawTex" gltype="GLshort"/>
2729
2730 <!-- EXT_multi_draw_arrays -->
2731 <function name="MultiDrawArraysEXT" template="MultiDrawArrays"/>
2732 <function name="MultiDrawElementsEXT" template="MultiDrawElements"/>
2733
2734 <!-- OES_EGL_image -->
2735 <function name="EGLImageTargetTexture2DOES" template="EGLImageTargetTexture2D"/>
2736 <function name="EGLImageTargetRenderbufferStorageOES" template="EGLImageTargetRenderbufferStorage"/>
2737
2738 <function name="DrawBuffersARB" template="DrawBuffers"/>
2739
2740 <function name="ReadBuffer" template="ReadBuffer"/>
2741
2742 </api>
2743
2744 <api name="GLES1.1">
2745 <category name="GLES1.1"/>
2746
2747 <category name="OES_byte_coordinates"/>
2748 <category name="OES_fixed_point"/>
2749 <category name="OES_single_precision"/>
2750 <category name="OES_matrix_get"/>
2751 <category name="OES_read_format"/>
2752 <category name="OES_compressed_paletted_texture"/>
2753 <category name="OES_compressed_ETC1_RGB8_texture"/>
2754 <category name="OES_point_size_array"/>
2755 <category name="OES_point_sprite"/>
2756 <category name="OES_query_matrix"/>
2757 <category name="OES_draw_texture"/>
2758 <category name="OES_blend_equation_separate"/>
2759 <category name="OES_blend_func_separate"/>
2760 <category name="OES_blend_subtract"/>
2761 <category name="OES_stencil_wrap"/>
2762 <category name="OES_texture_cube_map"/>
2763 <category name="OES_texture_env_crossbar"/>
2764 <category name="OES_texture_mirrored_repeat"/>
2765 <category name="OES_framebuffer_object"/>
2766 <category name="OES_depth24"/>
2767 <category name="OES_depth32"/>
2768 <category name="OES_fbo_render_mipmap"/>
2769 <category name="OES_rgb8_rgba8"/>
2770 <category name="OES_stencil1"/>
2771 <category name="OES_stencil4"/>
2772 <category name="OES_stencil8"/>
2773 <category name="OES_element_index_uint"/>
2774 <category name="OES_mapbuffer"/>
2775 <category name="EXT_texture_filter_anisotropic"/>
2776 <category name="EXT_texture_format_BGRA8888"/>
2777 <category name="EXT_read_format_bgra"/>
2778
2779 <category name="ARB_texture_non_power_of_two"/>
2780 <!-- disabled due to missing enums
2781 <category name="EXT_texture_compression_dxt1"/>
2782 -->
2783 <category name="EXT_texture_lod_bias"/>
2784 <category name="EXT_blend_minmax"/>
2785 <category name="EXT_multi_draw_arrays"/>
2786 <category name="OES_EGL_image"/>
2787 <category name="OES_EGL_image_external"/>
2788
2789 <category name="OES_matrix_palette"/>
2790
2791 <function name="Color4f" external="true" template="Color" gltype="GLfloat" vector_size="4" expand_vector="true"/>
2792 <function name="Color4ub" template="Color" gltype="GLubyte" vector_size="4" expand_vector="true"/>
2793 <function name="Color4x" template="Color" gltype="GLfixed" vector_size="4" expand_vector="true"/>
2794
2795 <function name="ClipPlanef" template="ClipPlane" gltype="GLfloat"/>
2796 <function name="ClipPlanex" template="ClipPlane" gltype="GLfixed"/>
2797
2798 <function name="CullFace" template="CullFace"/>
2799
2800 <function name="Fogf" template="Fog" gltype="GLfloat" expand_vector="true"/>
2801 <function name="Fogx" template="Fog" gltype="GLfixed" expand_vector="true"/>
2802 <function name="Fogfv" template="Fog" gltype="GLfloat"/>
2803 <function name="Fogxv" template="Fog" gltype="GLfixed"/>
2804
2805 <function name="FrontFace" template="FrontFace"/>
2806 <function name="Hint" template="Hint"/>
2807
2808 <function name="Lightf" template="Light" gltype="GLfloat" expand_vector="true"/>
2809 <function name="Lightx" template="Light" gltype="GLfixed" expand_vector="true"/>
2810 <function name="Lightfv" template="Light" gltype="GLfloat"/>
2811 <function name="Lightxv" template="Light" gltype="GLfixed"/>
2812
2813 <function name="LightModelf" template="LightModel" gltype="GLfloat" expand_vector="true"/>
2814 <function name="LightModelx" template="LightModel" gltype="GLfixed" expand_vector="true"/>
2815 <function name="LightModelfv" template="LightModel" gltype="GLfloat"/>
2816 <function name="LightModelxv" template="LightModel" gltype="GLfixed"/>
2817
2818 <function name="LineWidth" template="LineWidth" gltype="GLfloat"/>
2819 <function name="LineWidthx" template="LineWidth" gltype="GLfixed"/>
2820
2821 <function name="Materialf" external="true" template="Material" gltype="GLfloat" expand_vector="true"/>
2822 <function name="Materialfv" external="true" template="Material" gltype="GLfloat"/>
2823 <function name="Materialx" template="Material" gltype="GLfixed" expand_vector="true"/>
2824 <function name="Materialxv" template="Material" gltype="GLfixed"/>
2825
2826 <function name="PointSize" template="PointSize" gltype="GLfloat"/>
2827 <function name="PointSizex" template="PointSize" gltype="GLfixed"/>
2828 <function name="PointSizePointerOES" template="PointSizePointer"/>
2829
2830 <function name="Scissor" template="Scissor"/>
2831 <function name="ShadeModel" template="ShadeModel"/>
2832
2833 <function name="TexParameterf" template="TexParameter" gltype="GLfloat" expand_vector="true"/>
2834 <function name="TexParameterfv" template="TexParameter" gltype="GLfloat"/>
2835 <function name="TexParameteri" template="TexParameter" gltype="GLint" expand_vector="true"/>
2836 <function name="TexParameteriv" template="TexParameter" gltype="GLint"/>
2837 <function name="TexParameterx" template="TexParameter" gltype="GLfixed" expand_vector="true"/>
2838 <function name="TexParameterxv" template="TexParameter" gltype="GLfixed"/>
2839
2840 <function name="TexImage2D" template="TexImage2D"/>
2841
2842 <function name="TexEnvf" template="TexEnv" gltype="GLfloat" expand_vector="true"/>
2843 <function name="TexEnvfv" template="TexEnv" gltype="GLfloat"/>
2844 <function name="TexEnvi" template="TexEnv" gltype="GLint" expand_vector="true"/>
2845 <function name="TexEnviv" template="TexEnv" gltype="GLint"/>
2846 <function name="TexEnvx" template="TexEnv" gltype="GLfixed" expand_vector="true"/>
2847 <function name="TexEnvxv" template="TexEnv" gltype="GLfixed"/>
2848
2849 <function name="TexGenfOES" external="true" template="TexGen" gltype="GLfloat" expand_vector="true"/>
2850 <function name="TexGenfvOES" external="true" template="TexGen" gltype="GLfloat"/>
2851 <function name="TexGeniOES" external="true" template="TexGen" gltype="GLint" expand_vector="true"/>
2852 <function name="TexGenivOES" external="true" template="TexGen" gltype="GLint"/>
2853 <function name="TexGenxOES" external="true" template="TexGen" gltype="GLfixed" expand_vector="true"/>
2854 <function name="TexGenxvOES" external="true" template="TexGen" gltype="GLfixed"/>
2855
2856 <function name="Clear" template="Clear"/>
2857 <function name="ClearColor" template="ClearColor" gltype="GLclampf"/>
2858 <function name="ClearColorx" template="ClearColor" gltype="GLclampx"/>
2859
2860 <function name="ClearStencil" template="ClearStencil"/>
2861 <function name="ClearDepthf" template="ClearDepth" gltype="GLclampf"/>
2862 <function name="ClearDepthx" template="ClearDepth" gltype="GLclampx"/>
2863
2864 <function name="StencilMask" template="StencilMask"/>
2865 <function name="ColorMask" template="ColorMask"/>
2866 <function name="DepthMask" template="DepthMask"/>
2867
2868 <function name="Disable" template="Disable"/>
2869 <function name="Enable" template="Enable"/>
2870 <function name="Finish" template="Finish"/>
2871 <function name="Flush" template="Flush"/>
2872
2873 <function name="AlphaFunc" template="AlphaFunc" gltype="GLclampf"/>
2874 <function name="AlphaFuncx" template="AlphaFunc" gltype="GLclampx"/>
2875
2876 <function name="BlendFunc" template="BlendFunc"/>
2877 <function name="LogicOp" template="LogicOp"/>
2878 <function name="StencilFunc" template="StencilFunc"/>
2879
2880 <function name="StencilOp" template="StencilOp"/>
2881 <function name="DepthFunc" template="DepthFunc"/>
2882
2883 <function name="PixelStorei" template="PixelStore" gltype="GLint"/>
2884 <function name="ReadPixels" template="ReadPixels"/>
2885
2886 <function name="GetBooleanv" template="GetState" gltype="GLboolean"/>
2887
2888 <function name="GetClipPlanef" template="GetClipPlane" gltype="GLfloat"/>
2889 <function name="GetClipPlanex" template="GetClipPlane" gltype="GLfixed"/>
2890
2891 <function name="GetError" template="GetError"/>
2892 <function name="GetFloatv" template="GetState" gltype="GLfloat"/>
2893 <function name="GetFixedv" template="GetState" gltype="GLfixed"/>
2894 <function name="GetIntegerv" template="GetState" gltype="GLint"/>
2895
2896 <function name="GetLightfv" template="GetLight" gltype="GLfloat"/>
2897 <function name="GetLightxv" template="GetLight" gltype="GLfixed"/>
2898
2899 <function name="GetMaterialfv" template="GetMaterial" gltype="GLfloat"/>
2900 <function name="GetMaterialxv" template="GetMaterial" gltype="GLfixed"/>
2901
2902 <function name="GetString" template="GetString"/>
2903
2904 <function name="GetTexEnvfv" template="GetTexEnv" gltype="GLfloat"/>
2905 <function name="GetTexEnviv" template="GetTexEnv" gltype="GLint"/>
2906 <function name="GetTexEnvxv" template="GetTexEnv" gltype="GLfixed"/>
2907
2908 <function name="GetTexGenfvOES" external="true" template="GetTexGen" gltype="GLfloat"/>
2909 <function name="GetTexGenivOES" external="true" template="GetTexGen" gltype="GLint"/>
2910 <function name="GetTexGenxvOES" external="true" template="GetTexGen" gltype="GLfixed"/>
2911
2912 <function name="GetTexParameterfv" template="GetTexParameter" gltype="GLfloat"/>
2913 <function name="GetTexParameteriv" template="GetTexParameter" gltype="GLint"/>
2914 <function name="GetTexParameterxv" template="GetTexParameter" gltype="GLfixed"/>
2915
2916 <function name="IsEnabled" template="IsEnabled"/>
2917
2918 <function name="DepthRangef" template="DepthRange" gltype="GLclampf"/>
2919 <function name="DepthRangex" template="DepthRange" gltype="GLclampx"/>
2920
2921 <function name="Frustumf" template="Frustum" gltype="GLfloat"/>
2922 <function name="Frustumx" template="Frustum" gltype="GLfixed"/>
2923
2924 <function name="LoadIdentity" template="LoadIdentity"/>
2925 <function name="LoadMatrixf" template="LoadMatrix" gltype="GLfloat"/>
2926 <function name="LoadMatrixx" template="LoadMatrix" gltype="GLfixed"/>
2927 <function name="MatrixMode" template="MatrixMode"/>
2928
2929 <function name="MultMatrixf" template="MultMatrix" gltype="GLfloat"/>
2930 <function name="MultMatrixx" template="MultMatrix" gltype="GLfixed"/>
2931 <function name="Orthof" template="Ortho" gltype="GLfloat"/>
2932 <function name="Orthox" template="Ortho" gltype="GLfixed"/>
2933
2934 <function name="PopMatrix" template="PopMatrix"/>
2935 <function name="PushMatrix" template="PushMatrix"/>
2936
2937 <function name="Rotatef" template="Rotate" gltype="GLfloat"/>
2938 <function name="Rotatex" template="Rotate" gltype="GLfixed"/>
2939 <function name="Scalef" template="Scale" gltype="GLfloat"/>
2940 <function name="Scalex" template="Scale" gltype="GLfixed"/>
2941 <function name="Translatef" template="Translate" gltype="GLfloat"/>
2942 <function name="Translatex" template="Translate" gltype="GLfixed"/>
2943
2944 <function name="Viewport" template="Viewport"/>
2945 <function name="ColorPointer" template="ColorPointer"/>
2946 <function name="DisableClientState" template="DisableClientState"/>
2947 <function name="DrawArrays" template="DrawArrays"/>
2948 <function name="DrawElements" template="DrawElements"/>
2949 <function name="EnableClientState" template="EnableClientState"/>
2950
2951 <function name="GetPointerv" template="GetPointer"/>
2952
2953 <function name="Normal3f" external="true" template="Normal" gltype="GLfloat" expand_vector="true"/>
2954 <function name="Normal3x" template="Normal" gltype="GLfixed" expand_vector="true"/>
2955 <function name="NormalPointer" template="NormalPointer"/>
2956 <function name="TexCoordPointer" template="TexCoordPointer"/>
2957 <function name="VertexPointer" template="VertexPointer"/>
2958
2959 <function name="PolygonOffset" template="PolygonOffset" gltype="GLfloat"/>
2960 <function name="PolygonOffsetx" template="PolygonOffset" gltype="GLfixed"/>
2961
2962 <function name="CopyTexImage2D" template="CopyTexImage2D"/>
2963 <function name="CopyTexSubImage2D" template="CopyTexSubImage2D"/>
2964
2965 <function name="TexSubImage2D" template="TexSubImage2D"/>
2966
2967 <function name="BindTexture" template="BindTexture"/>
2968 <function name="DeleteTextures" template="DeleteTextures"/>
2969 <function name="GenTextures" template="GenTextures"/>
2970 <function name="IsTexture" template="IsTexture"/>
2971
2972 <function name="BlendEquationOES" template="BlendEquation"/>
2973 <function name="BlendEquationSeparateOES" template="BlendEquationSeparate"/>
2974
2975 <function name="MultiTexCoord4x" template="MultiTexCoord" gltype="GLfixed" vector_size="4" expand_vector="true"/>
2976
2977 <function name="ActiveTexture" template="ActiveTexture"/>
2978 <function name="ClientActiveTexture" template="ClientActiveTexture"/>
2979
2980 <function name="MultiTexCoord4f" external="true" template="MultiTexCoord" gltype="GLfloat" vector_size="4" expand_vector="true"/>
2981
2982 <function name="SampleCoverage" template="SampleCoverage" gltype="GLclampf"/>
2983 <function name="SampleCoveragex" template="SampleCoverage" gltype="GLclampx"/>
2984
2985 <!-- CompressedTexImage2D calls out to two different functions based on
2986 whether the image is a paletted image or not -->
2987 <function name="CompressedTexImage2D" template="CompressedTexImage2D"/>
2988 <function name="CompressedTexSubImage2D" template="CompressedTexSubImage2D"/>
2989
2990 <function name="BlendFuncSeparateOES" template="BlendFuncSeparate"/>
2991
2992 <function name="PointParameterf" template="PointParameter" gltype="GLfloat" expand_vector="true"/>
2993 <function name="PointParameterfv" template="PointParameter" gltype="GLfloat"/>
2994 <function name="PointParameterx" template="PointParameter" gltype="GLfixed" expand_vector="true"/>
2995 <function name="PointParameterxv" template="PointParameter" gltype="GLfixed"/>
2996
2997 <!-- OES_mapbuffer -->
2998 <function name="GetBufferPointervOES" template="GetBufferPointer"/>
2999 <function name="MapBufferOES" template="MapBuffer"/>
3000 <function name="UnmapBufferOES" template="UnmapBuffer"/>
3001
3002 <function name="BindBuffer" template="BindBuffer"/>
3003 <function name="BufferData" template="BufferData"/>
3004 <function name="BufferSubData" template="BufferSubData"/>
3005 <function name="DeleteBuffers" template="DeleteBuffers"/>
3006 <function name="GenBuffers" template="GenBuffers"/>
3007 <function name="GetBufferParameteriv" template="GetBufferParameter" gltype="GLint"/>
3008 <function name="IsBuffer" template="IsBuffer"/>
3009
3010 <!-- OES_framebuffer_object -->
3011 <function name="GenerateMipmapOES" template="GenerateMipmap"/>
3012 <function name="BindFramebufferOES" template="BindFramebuffer"/>
3013 <function name="DeleteFramebuffersOES" template="DeleteFramebuffers"/>
3014 <function name="GenFramebuffersOES" template="GenFramebuffers"/>
3015 <function name="BindRenderbufferOES" template="BindRenderbuffer"/>
3016 <function name="DeleteRenderbuffersOES" template="DeleteRenderbuffers"/>
3017 <function name="GenRenderbuffersOES" template="GenRenderbuffers"/>
3018 <function name="RenderbufferStorageOES" external="true" template="RenderbufferStorage"/>
3019 <function name="FramebufferRenderbufferOES" template="FramebufferRenderbuffer"/>
3020 <function name="FramebufferTexture2DOES" template="FramebufferTexture2D"/>
3021 <function name="CheckFramebufferStatusOES" template="CheckFramebufferStatus"/>
3022 <function name="GetFramebufferAttachmentParameterivOES" template="GetFramebufferAttachmentParameter" gltype="GLint"/>
3023 <function name="GetRenderbufferParameterivOES" template="GetRenderbufferParameter" gltype="GLint"/>
3024 <function name="IsRenderbufferOES" template="IsRenderbuffer"/>
3025 <function name="IsFramebufferOES" template="IsFramebuffer"/>
3026
3027 <!-- OES_query_matrix -->
3028 <!-- QueryMatrixx returns values in an unusual, decomposed, fixed-value
3029 form; it has its own code for this -->
3030 <function name="QueryMatrixxOES" external="true" template="QueryMatrix" gltype="GLfixed"/>
3031
3032 <!-- OES_draw_texture -->
3033 <function name="DrawTexfOES" template="DrawTex" gltype="GLfloat" expand_vector="true"/>
3034 <function name="DrawTexiOES" template="DrawTex" gltype="GLint" expand_vector="true"/>
3035 <function name="DrawTexsOES" template="DrawTex" gltype="GLshort" expand_vector="true"/>
3036 <function name="DrawTexxOES" template="DrawTex" gltype="GLfixed" expand_vector="true"/>
3037 <function name="DrawTexfvOES" template="DrawTex" gltype="GLfloat"/>
3038 <function name="DrawTexivOES" template="DrawTex" gltype="GLint"/>
3039 <function name="DrawTexsvOES" template="DrawTex" gltype="GLshort"/>
3040 <function name="DrawTexxvOES" template="DrawTex" gltype="GLfixed"/>
3041
3042 <!-- EXT_multi_draw_arrays -->
3043 <function name="MultiDrawArraysEXT" template="MultiDrawArrays"/>
3044 <function name="MultiDrawElementsEXT" template="MultiDrawElements"/>
3045
3046 <!-- OES_EGL_image -->
3047 <function name="EGLImageTargetTexture2DOES" template="EGLImageTargetTexture2D"/>
3048 <function name="EGLImageTargetRenderbufferStorageOES" template="EGLImageTargetRenderbufferStorage"/>
3049 </api>
3050
3051 <api name="GLES2.0">
3052 <category name="GLES2.0"/>
3053
3054 <category name="OES_compressed_paletted_texture"/>
3055 <category name="OES_compressed_ETC1_RGB8_texture"/>
3056 <category name="OES_depth24"/>
3057 <category name="OES_depth32"/>
3058 <category name="OES_fbo_render_mipmap"/>
3059 <category name="OES_rgb8_rgba8"/>
3060 <category name="OES_stencil1"/>
3061 <category name="OES_stencil4"/>
3062 <category name="OES_element_index_uint"/>
3063 <category name="OES_mapbuffer"/>
3064 <category name="OES_texture_3D"/>
3065 <category name="OES_texture_npot"/>
3066 <category name="EXT_texture_filter_anisotropic"/>
3067 <category name="EXT_texture_type_2_10_10_10_REV"/>
3068 <category name="OES_depth_texture"/>
3069 <category name="OES_packed_depth_stencil"/>
3070 <category name="OES_standard_derivatives"/>
3071 <category name="EXT_texture_format_BGRA8888"/>
3072 <category name="EXT_texture_rg"/>
3073 <category name="EXT_read_format_bgra"/>
3074
3075 <category name="EXT_texture_compression_dxt1"/>
3076 <category name="EXT_blend_minmax"/>
3077 <category name="EXT_multi_draw_arrays"/>
3078 <category name="OES_EGL_image"/>
3079 <category name="OES_EGL_image_external"/>
3080 <category name="EXT_unpack_subimage"/>
3081
3082 <category name="NV_draw_buffers"/>
3083 <category name="NV_read_buffer"/>
3084
3085 <function name="DrawBuffersNV" template="DrawBuffers"/>
3086 <function name="ReadBufferNV" template="ReadBuffer"/>
3087
3088 <function name="CullFace" template="CullFace"/>
3089
3090 <function name="FrontFace" template="FrontFace"/>
3091 <function name="Hint" template="Hint"/>
3092
3093 <function name="LineWidth" template="LineWidth" gltype="GLfloat"/>
3094
3095 <function name="Scissor" template="Scissor"/>
3096
3097 <function name="TexParameterf" template="TexParameter" gltype="GLfloat" expand_vector="true"/>
3098 <function name="TexParameterfv" template="TexParameter" gltype="GLfloat"/>
3099 <function name="TexParameteri" template="TexParameter" gltype="GLint" expand_vector="true"/>
3100 <function name="TexParameteriv" template="TexParameter" gltype="GLint"/>
3101
3102 <function name="TexImage2D" template="TexImage2D"/>
3103
3104 <function name="Clear" template="Clear"/>
3105 <function name="ClearColor" template="ClearColor" gltype="GLclampf"/>
3106 <function name="ClearStencil" template="ClearStencil"/>
3107 <function name="ClearDepthf" template="ClearDepth" gltype="GLclampf"/>
3108
3109 <function name="StencilMask" template="StencilMask"/>
3110 <function name="StencilMaskSeparate" template="StencilMaskSeparate"/>
3111 <function name="ColorMask" template="ColorMask"/>
3112 <function name="DepthMask" template="DepthMask"/>
3113 <function name="Disable" template="Disable"/>
3114 <function name="Enable" template="Enable"/>
3115 <function name="Finish" template="Finish"/>
3116 <function name="Flush" template="Flush"/>
3117
3118 <function name="BlendFunc" template="BlendFunc"/>
3119
3120 <function name="StencilFunc" template="StencilFunc"/>
3121 <function name="StencilFuncSeparate" template="StencilFuncSeparate"/>
3122 <function name="StencilOp" template="StencilOp"/>
3123 <function name="StencilOpSeparate" template="StencilOpSeparate"/>
3124
3125 <function name="DepthFunc" template="DepthFunc"/>
3126
3127 <function name="PixelStorei" template="PixelStore" gltype="GLint"/>
3128 <function name="ReadPixels" template="ReadPixels"/>
3129
3130 <function name="GetBooleanv" template="GetState" gltype="GLboolean"/>
3131 <function name="GetError" template="GetError"/>
3132 <function name="GetFloatv" template="GetState" gltype="GLfloat"/>
3133 <function name="GetIntegerv" template="GetState" gltype="GLint"/>
3134
3135 <function name="GetString" template="GetString"/>
3136
3137 <function name="GetTexParameterfv" template="GetTexParameter" gltype="GLfloat"/>
3138 <function name="GetTexParameteriv" template="GetTexParameter" gltype="GLint"/>
3139
3140 <function name="IsEnabled" template="IsEnabled"/>
3141
3142 <function name="DepthRangef" template="DepthRange" gltype="GLclampf"/>
3143
3144 <function name="Viewport" template="Viewport"/>
3145
3146 <function name="DrawArrays" template="DrawArrays"/>
3147 <function name="DrawElements" template="DrawElements"/>
3148
3149 <function name="PolygonOffset" template="PolygonOffset" gltype="GLfloat"/>
3150 <function name="CopyTexImage2D" template="CopyTexImage2D"/>
3151 <function name="CopyTexSubImage2D" template="CopyTexSubImage2D"/>
3152 <function name="TexSubImage2D" template="TexSubImage2D"/>
3153
3154 <function name="BindTexture" template="BindTexture"/>
3155 <function name="DeleteTextures" template="DeleteTextures"/>
3156 <function name="GenTextures" template="GenTextures"/>
3157 <function name="IsTexture" template="IsTexture"/>
3158
3159 <function name="BlendColor" template="BlendColor" gltype="GLclampf"/>
3160 <function name="BlendEquation" template="BlendEquation"/>
3161 <function name="BlendEquationSeparate" template="BlendEquationSeparate"/>
3162
3163 <function name="TexImage3DOES" template="TexImage3D"/>
3164 <function name="TexSubImage3DOES" template="TexSubImage3D"/>
3165 <function name="CopyTexSubImage3DOES" template="CopyTexSubImage3D"/>
3166
3167 <function name="CompressedTexImage3DOES" template="CompressedTexImage3D"/>
3168 <function name="CompressedTexSubImage3DOES" template="CompressedTexSubImage3D"/>
3169
3170 <function name="ActiveTexture" template="ActiveTexture"/>
3171
3172 <function name="SampleCoverage" template="SampleCoverage" gltype="GLclampf"/>
3173
3174 <function name="CompressedTexImage2D" template="CompressedTexImage2D"/>
3175 <function name="CompressedTexSubImage2D" template="CompressedTexSubImage2D"/>
3176
3177 <function name="BlendFuncSeparate" template="BlendFuncSeparate"/>
3178
3179 <function name="VertexAttrib1f" external="true" template="VertexAttrib" gltype="GLfloat" vector_size="1" expand_vector="true"/>
3180 <function name="VertexAttrib2f" external="true" template="VertexAttrib" gltype="GLfloat" vector_size="2" expand_vector="true"/>
3181 <function name="VertexAttrib3f" external="true" template="VertexAttrib" gltype="GLfloat" vector_size="3" expand_vector="true"/>
3182 <function name="VertexAttrib4f" external="true" template="VertexAttrib" gltype="GLfloat" vector_size="4" expand_vector="true"/>
3183 <function name="VertexAttrib1fv" external="true" template="VertexAttrib" gltype="GLfloat" vector_size="1"/>
3184 <function name="VertexAttrib2fv" external="true" template="VertexAttrib" gltype="GLfloat" vector_size="2"/>
3185 <function name="VertexAttrib3fv" external="true" template="VertexAttrib" gltype="GLfloat" vector_size="3"/>
3186 <function name="VertexAttrib4fv" external="true" template="VertexAttrib" gltype="GLfloat" vector_size="4"/>
3187
3188 <function name="VertexAttribPointer" template="VertexAttribPointer"/>
3189
3190 <function name="EnableVertexAttribArray" template="EnableVertexAttribArray"/>
3191 <function name="DisableVertexAttribArray" template="DisableVertexAttribArray"/>
3192
3193 <function name="IsProgram" template="IsProgram"/>
3194 <function name="GetProgramiv" template="GetProgram" gltype="GLint"/>
3195
3196 <function name="GetVertexAttribfv" template="GetVertexAttrib" gltype="GLfloat"/>
3197 <function name="GetVertexAttribiv" template="GetVertexAttrib" gltype="GLint"/>
3198 <function name="GetVertexAttribPointerv" template="GetVertexAttribPointer"/>
3199
3200 <function name="GetBufferPointervOES" template="GetBufferPointer"/>
3201 <function name="MapBufferOES" template="MapBuffer"/>
3202 <function name="UnmapBufferOES" template="UnmapBuffer"/>
3203 <function name="BindBuffer" template="BindBuffer"/>
3204 <function name="BufferData" template="BufferData"/>
3205 <function name="BufferSubData" template="BufferSubData"/>
3206 <function name="DeleteBuffers" template="DeleteBuffers"/>
3207 <function name="GenBuffers" template="GenBuffers"/>
3208 <function name="GetBufferParameteriv" template="GetBufferParameter" gltype="GLint"/>
3209 <function name="IsBuffer" template="IsBuffer"/>
3210
3211 <function name="CreateShader" template="CreateShader"/>
3212 <function name="ShaderSource" template="ShaderSource"/>
3213 <function name="CompileShader" template="CompileShader"/>
3214 <function name="ReleaseShaderCompiler" template="ReleaseShaderCompiler"/>
3215 <function name="DeleteShader" template="DeleteShader"/>
3216 <function name="ShaderBinary" template="ShaderBinary"/>
3217 <function name="CreateProgram" template="CreateProgram"/>
3218 <function name="AttachShader" template="AttachShader"/>
3219 <function name="DetachShader" template="DetachShader"/>
3220 <function name="LinkProgram" template="LinkProgram"/>
3221 <function name="UseProgram" template="UseProgram"/>
3222 <function name="DeleteProgram" template="DeleteProgram"/>
3223
3224 <function name="GetActiveAttrib" template="GetActiveAttrib"/>
3225 <function name="GetAttribLocation" template="GetAttribLocation"/>
3226 <function name="BindAttribLocation" template="BindAttribLocation"/>
3227 <function name="GetUniformLocation" template="GetUniformLocation"/>
3228 <function name="GetActiveUniform" template="GetActiveUniform"/>
3229
3230 <function name="Uniform1f" template="Uniform" gltype="GLfloat" vector_size="1" expand_vector="true"/>
3231 <function name="Uniform2f" template="Uniform" gltype="GLfloat" vector_size="2" expand_vector="true"/>
3232 <function name="Uniform3f" template="Uniform" gltype="GLfloat" vector_size="3" expand_vector="true"/>
3233 <function name="Uniform4f" template="Uniform" gltype="GLfloat" vector_size="4" expand_vector="true"/>
3234 <function name="Uniform1i" template="Uniform" gltype="GLint" vector_size="1" expand_vector="true"/>
3235 <function name="Uniform2i" template="Uniform" gltype="GLint" vector_size="2" expand_vector="true"/>
3236 <function name="Uniform3i" template="Uniform" gltype="GLint" vector_size="3" expand_vector="true"/>
3237 <function name="Uniform4i" template="Uniform" gltype="GLint" vector_size="4" expand_vector="true"/>
3238
3239 <function name="Uniform1fv" template="Uniform" gltype="GLfloat" vector_size="1"/>
3240 <function name="Uniform2fv" template="Uniform" gltype="GLfloat" vector_size="2"/>
3241 <function name="Uniform3fv" template="Uniform" gltype="GLfloat" vector_size="3"/>
3242 <function name="Uniform4fv" template="Uniform" gltype="GLfloat" vector_size="4"/>
3243 <function name="Uniform1iv" template="Uniform" gltype="GLint" vector_size="1"/>
3244 <function name="Uniform2iv" template="Uniform" gltype="GLint" vector_size="2"/>
3245 <function name="Uniform3iv" template="Uniform" gltype="GLint" vector_size="3"/>
3246 <function name="Uniform4iv" template="Uniform" gltype="GLint" vector_size="4"/>
3247
3248 <function name="UniformMatrix2fv" template="UniformMatrix" gltype="GLfloat" vector_size="2"/>
3249 <function name="UniformMatrix3fv" template="UniformMatrix" gltype="GLfloat" vector_size="3"/>
3250 <function name="UniformMatrix4fv" template="UniformMatrix" gltype="GLfloat" vector_size="4"/>
3251
3252 <function name="ValidateProgram" template="ValidateProgram"/>
3253
3254 <function name="GenerateMipmap" template="GenerateMipmap"/>
3255 <function name="BindFramebuffer" template="BindFramebuffer"/>
3256 <function name="DeleteFramebuffers" template="DeleteFramebuffers"/>
3257 <function name="GenFramebuffers" template="GenFramebuffers"/>
3258 <function name="BindRenderbuffer" template="BindRenderbuffer"/>
3259 <function name="DeleteRenderbuffers" template="DeleteRenderbuffers"/>
3260 <function name="GenRenderbuffers" template="GenRenderbuffers"/>
3261 <function name="RenderbufferStorage" external="true" template="RenderbufferStorage"/>
3262 <function name="FramebufferRenderbuffer" template="FramebufferRenderbuffer"/>
3263 <function name="FramebufferTexture2D" template="FramebufferTexture2D"/>
3264 <function name="FramebufferTexture3DOES" template="FramebufferTexture3D"/>
3265 <function name="CheckFramebufferStatus" template="CheckFramebufferStatus"/>
3266 <function name="GetFramebufferAttachmentParameteriv" template="GetFramebufferAttachmentParameter" gltype="GLint"/>
3267 <function name="GetRenderbufferParameteriv" template="GetRenderbufferParameter" gltype="GLint"/>
3268 <function name="IsRenderbuffer" template="IsRenderbuffer"/>
3269 <function name="IsFramebuffer" template="IsFramebuffer"/>
3270
3271 <function name="IsShader" template="IsShader"/>
3272 <function name="GetShaderiv" template="GetShader" gltype="GLint"/>
3273 <function name="GetAttachedShaders" template="GetAttachedShaders"/>
3274 <function name="GetShaderInfoLog" template="GetShaderInfoLog"/>
3275 <function name="GetProgramInfoLog" template="GetProgramInfoLog"/>
3276 <function name="GetShaderSource" template="GetShaderSource"/>
3277 <function name="GetShaderPrecisionFormat" template="GetShaderPrecisionFormat"/>
3278 <function name="GetUniformfv" template="GetUniform" gltype="GLfloat"/>
3279 <function name="GetUniformiv" template="GetUniform" gltype="GLint"/>
3280
3281 <!-- EXT_multi_draw_arrays -->
3282 <function name="MultiDrawArraysEXT" template="MultiDrawArrays"/>
3283 <function name="MultiDrawElementsEXT" template="MultiDrawElements"/>
3284
3285 <!-- OES_EGL_image -->
3286 <function name="EGLImageTargetTexture2DOES" template="EGLImageTargetTexture2D"/>
3287 <function name="EGLImageTargetRenderbufferStorageOES" template="EGLImageTargetRenderbufferStorage"/>
3288 </api>
3289
3290 </apispec>