mesa/es: Validate glCompressedTexSubImage internalFormat in Mesa code rather than...
[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
1222 <desc name="size" error="GL_INVALID_VALUE">
1223 <value name="4"/>
1224 </desc>
1225
1226 <desc name="type">
1227 <value name="GL_UNSIGNED_BYTE"/>
1228 <value name="GL_FLOAT"/>
1229 <value name="GL_FIXED"/>
1230 <value name="GL_HALF_FLOAT_OES" category="OES_vertex_half_float"/>
1231 </desc>
1232 </template>
1233
1234 <template name="DisableClientState">
1235 <proto>
1236 <return type="void"/>
1237 <param name="array" type="GLenum"/>
1238 </proto>
1239
1240 <desc name="array">
1241 <value name="GL_VERTEX_ARRAY"/>
1242 <value name="GL_NORMAL_ARRAY"/>
1243 <value name="GL_COLOR_ARRAY"/>
1244 <value name="GL_TEXTURE_COORD_ARRAY"/>
1245 <value name="GL_MATRIX_INDEX_ARRAY_OES" category="OES_matrix_palette"/>
1246 <value name="GL_WEIGHT_ARRAY_OES" category="OES_matrix_palette"/>
1247 <value name="GL_POINT_SIZE_ARRAY_OES" category="OES_point_size_array"/>
1248 </desc>
1249 </template>
1250
1251 <template name="DrawArrays">
1252 <proto>
1253 <return type="void"/>
1254 <param name="mode" type="GLenum"/>
1255 <param name="first" type="GLint"/>
1256 <param name="count" type="GLsizei"/>
1257 </proto>
1258
1259 <desc name="mode">
1260 <value name="GL_POINTS"/>
1261 <value name="GL_LINES"/>
1262 <value name="GL_LINE_LOOP"/>
1263 <value name="GL_LINE_STRIP"/>
1264 <value name="GL_TRIANGLES"/>
1265 <value name="GL_TRIANGLE_STRIP"/>
1266 <value name="GL_TRIANGLE_FAN"/>
1267 </desc>
1268 </template>
1269
1270 <template name="DrawElements">
1271 <proto>
1272 <return type="void"/>
1273 <param name="mode" type="GLenum"/>
1274 <param name="count" type="GLsizei"/>
1275 <param name="type" type="GLenum"/>
1276 <param name="indices" type="const GLvoid *"/>
1277 </proto>
1278
1279 <desc name="mode">
1280 <value name="GL_POINTS"/>
1281 <value name="GL_LINES"/>
1282 <value name="GL_LINE_LOOP"/>
1283 <value name="GL_LINE_STRIP"/>
1284 <value name="GL_TRIANGLES"/>
1285 <value name="GL_TRIANGLE_STRIP"/>
1286 <value name="GL_TRIANGLE_FAN"/>
1287 </desc>
1288 </template>
1289
1290 <template name="EnableClientState">
1291 <proto>
1292 <return type="void"/>
1293 <param name="array" type="GLenum"/>
1294 </proto>
1295
1296 <desc name="array">
1297 <value name="GL_VERTEX_ARRAY"/>
1298 <value name="GL_NORMAL_ARRAY"/>
1299 <value name="GL_COLOR_ARRAY"/>
1300 <value name="GL_TEXTURE_COORD_ARRAY"/>
1301 <value name="GL_MATRIX_INDEX_ARRAY_OES" category="OES_matrix_palette"/>
1302 <value name="GL_WEIGHT_ARRAY_OES" category="OES_matrix_palette"/>
1303 <value name="GL_POINT_SIZE_ARRAY_OES" category="OES_point_size_array"/>
1304 </desc>
1305 </template>
1306
1307 <template name="GetPointer" direction="get">
1308 <proto>
1309 <return type="void"/>
1310 <param name="pname" type="GLenum"/>
1311 <vector name="params" type="GLvoid **" size="dynamic"/>
1312 </proto>
1313
1314 <desc name="pname">
1315 <value name="GL_VERTEX_ARRAY_POINTER"/>
1316 <value name="GL_NORMAL_ARRAY_POINTER"/>
1317 <value name="GL_COLOR_ARRAY_POINTER"/>
1318 <value name="GL_TEXTURE_COORD_ARRAY_POINTER"/>
1319 <value name="GL_MATRIX_INDEX_ARRAY_POINTER_OES" category="OES_matrix_palette"/>
1320 <value name="GL_WEIGHT_ARRAY_POINTER_OES" category="OES_matrix_palette"/>
1321 <value name="GL_POINT_SIZE_ARRAY_POINTER_OES" category="OES_point_size_array"/>
1322 </desc>
1323 </template>
1324
1325 <template name="Normal">
1326 <proto>
1327 <return type="void"/>
1328 <vector name="v" type="const GLtype *" size="3">
1329 <param name="nx" type="GLtype"/>
1330 <param name="ny" type="GLtype"/>
1331 <param name="nz" type="GLtype"/>
1332 </vector>
1333 </proto>
1334 </template>
1335
1336 <template name="NormalPointer">
1337 <proto>
1338 <return type="void"/>
1339 <param name="type" type="GLenum"/>
1340 <param name="stride" type="GLsizei"/>
1341 <param name="pointer" type="const GLvoid *"/>
1342 </proto>
1343
1344 <desc name="type">
1345 <value name="GL_BYTE"/>
1346 <value name="GL_SHORT"/>
1347 <value name="GL_FLOAT"/>
1348 <value name="GL_FIXED"/>
1349 <value name="GL_HALF_FLOAT_OES" category="OES_vertex_half_float"/>
1350 </desc>
1351 </template>
1352
1353 <template name="TexCoordPointer">
1354 <proto>
1355 <return type="void"/>
1356 <param name="size" type="GLint"/>
1357 <param name="type" type="GLenum"/>
1358 <param name="stride" type="GLsizei"/>
1359 <param name="pointer" type="const GLvoid *"/>
1360 </proto>
1361
1362 <desc name="size" error="GL_INVALID_VALUE">
1363 <value name="2"/>
1364 <value name="3"/>
1365 <value name="4"/>
1366 </desc>
1367
1368 <desc name="type">
1369 <value name="GL_BYTE"/>
1370 <value name="GL_SHORT"/>
1371 <value name="GL_FLOAT"/>
1372 <value name="GL_FIXED"/>
1373 <value name="GL_HALF_FLOAT_OES" category="OES_vertex_half_float"/>
1374 </desc>
1375 </template>
1376
1377 <template name="VertexPointer">
1378 <proto>
1379 <return type="void"/>
1380 <param name="size" type="GLint"/>
1381 <param name="type" type="GLenum"/>
1382 <param name="stride" type="GLsizei"/>
1383 <param name="pointer" type="const GLvoid *"/>
1384 </proto>
1385
1386 <desc name="size" error="GL_INVALID_VALUE">
1387 <value name="2"/>
1388 <value name="3"/>
1389 <value name="4"/>
1390 </desc>
1391
1392 <desc name="type">
1393 <value name="GL_BYTE"/>
1394 <value name="GL_SHORT"/>
1395 <value name="GL_FLOAT"/>
1396 <value name="GL_FIXED"/>
1397 <value name="GL_HALF_FLOAT_OES" category="OES_vertex_half_float"/>
1398 </desc>
1399 </template>
1400
1401 <template name="PolygonOffset">
1402 <proto>
1403 <return type="void"/>
1404 <param name="factor" type="GLtype"/>
1405 <param name="units" type="GLtype"/>
1406 </proto>
1407 </template>
1408
1409 <template name="CopyTexImage2D">
1410 <proto>
1411 <return type="void"/>
1412 <param name="target" type="GLenum"/>
1413 <param name="level" type="GLint"/>
1414 <param name="internalFormat" type="GLenum"/>
1415 <param name="x" type="GLint"/>
1416 <param name="y" type="GLint"/>
1417 <param name="width" type="GLsizei"/>
1418 <param name="height" type="GLsizei"/>
1419 <param name="border" type="GLint"/>
1420 </proto>
1421 </template>
1422
1423 <template name="CopyTexSubImage2D">
1424 <proto>
1425 <return type="void"/>
1426 <param name="target" type="GLenum"/>
1427 <param name="level" type="GLint"/>
1428 <param name="xoffset" type="GLint"/>
1429 <param name="yoffset" type="GLint"/>
1430 <param name="x" type="GLint"/>
1431 <param name="y" type="GLint"/>
1432 <param name="width" type="GLsizei"/>
1433 <param name="height" type="GLsizei"/>
1434 </proto>
1435 </template>
1436
1437 <template name="TexSubImage2D">
1438 <proto>
1439 <return type="void"/>
1440 <param name="target" type="GLenum"/>
1441 <param name="level" type="GLint"/>
1442 <param name="xoffset" type="GLint"/>
1443 <param name="yoffset" type="GLint"/>
1444 <param name="width" type="GLsizei"/>
1445 <param name="height" type="GLsizei"/>
1446 <param name="format" type="GLenum"/>
1447 <param name="type" type="GLenum"/>
1448 <param name="pixels" type="const GLvoid *"/>
1449 </proto>
1450 </template>
1451
1452 <template name="BindTexture">
1453 <proto>
1454 <return type="void"/>
1455 <param name="target" type="GLenum"/>
1456 <param name="texture" type="GLuint"/>
1457 </proto>
1458 </template>
1459
1460 <template name="DeleteTextures">
1461 <proto>
1462 <return type="void"/>
1463 <param name="n" type="GLsizei"/>
1464 <param name="textures" type="const GLuint *"/>
1465 </proto>
1466 </template>
1467
1468 <template name="GenTextures" direction="get">
1469 <proto>
1470 <return type="void"/>
1471 <param name="n" type="GLsizei"/>
1472 <param name="textures" type="GLuint *"/>
1473 </proto>
1474 </template>
1475
1476 <template name="IsTexture" direction="get">
1477 <proto>
1478 <return type="GLboolean"/>
1479 <param name="texture" type="GLuint"/>
1480 </proto>
1481 </template>
1482
1483 <template name="BlendColor">
1484 <proto>
1485 <return type="void"/>
1486 <param name="red" type="GLtype"/>
1487 <param name="green" type="GLtype"/>
1488 <param name="blue" type="GLtype"/>
1489 <param name="alpha" type="GLtype"/>
1490 </proto>
1491 </template>
1492
1493 <template name="BlendEquation">
1494 <proto>
1495 <return type="void"/>
1496 <param name="mode" type="GLenum"/>
1497 </proto>
1498 </template>
1499
1500 <template name="BlendEquationSeparate">
1501 <proto>
1502 <return type="void"/>
1503 <param name="modeRGB" type="GLenum"/>
1504 <param name="modeAlpha" type="GLenum"/>
1505 </proto>
1506 </template>
1507
1508 <template name="TexImage3D">
1509 <proto>
1510 <return type="void"/>
1511 <param name="target" type="GLenum"/>
1512 <param name="level" type="GLint"/>
1513 <param name="internalFormat" type="GLenum"/>
1514 <param name="width" type="GLsizei"/>
1515 <param name="height" type="GLsizei"/>
1516 <param name="depth" type="GLsizei"/>
1517 <param name="border" type="GLint"/>
1518 <param name="format" type="GLenum"/>
1519 <param name="type" type="GLenum"/>
1520 <param name="pixels" type="const GLvoid *"/>
1521 </proto>
1522
1523 </template>
1524
1525 <template name="TexSubImage3D">
1526 <proto>
1527 <return type="void"/>
1528 <param name="target" type="GLenum"/>
1529 <param name="level" type="GLint"/>
1530 <param name="xoffset" type="GLint"/>
1531 <param name="yoffset" type="GLint"/>
1532 <param name="zoffset" type="GLint"/>
1533 <param name="width" type="GLsizei"/>
1534 <param name="height" type="GLsizei"/>
1535 <param name="depth" type="GLsizei"/>
1536 <param name="format" type="GLenum"/>
1537 <param name="type" type="GLenum"/>
1538 <param name="pixels" type="const GLvoid *"/>
1539 </proto>
1540 </template>
1541
1542 <template name="CopyTexSubImage3D">
1543 <proto>
1544 <return type="void"/>
1545 <param name="target" type="GLenum"/>
1546 <param name="level" type="GLint"/>
1547 <param name="xoffset" type="GLint"/>
1548 <param name="yoffset" type="GLint"/>
1549 <param name="zoffset" type="GLint"/>
1550 <param name="x" type="GLint"/>
1551 <param name="y" type="GLint"/>
1552 <param name="width" type="GLsizei"/>
1553 <param name="height" type="GLsizei"/>
1554 </proto>
1555 </template>
1556
1557 <template name="MultiTexCoord">
1558 <proto>
1559 <return type="void"/>
1560 <param name="texture" type="GLenum"/>
1561 <vector name="v" type="const GLtype *" size="dynamic">
1562 <param name="s" type="GLtype"/>
1563 <param name="t" type="GLtype"/>
1564 <param name="r" type="GLtype"/>
1565 <param name="q" type="GLtype"/>
1566 </vector>
1567 </proto>
1568 </template>
1569
1570 <template name="CompressedTexImage3D">
1571 <proto>
1572 <return type="void"/>
1573 <param name="target" type="GLenum"/>
1574 <param name="level" type="GLint"/>
1575 <param name="internalFormat" type="GLenum"/>
1576 <param name="width" type="GLsizei"/>
1577 <param name="height" type="GLsizei"/>
1578 <param name="depth" type="GLsizei"/>
1579 <param name="border" type="GLint"/>
1580 <param name="imagesize" type="GLsizei"/>
1581 <param name="data" type="const GLvoid *"/>
1582 </proto>
1583 </template>
1584
1585 <template name="CompressedTexSubImage3D">
1586 <proto>
1587 <return type="void"/>
1588 <param name="target" type="GLenum"/>
1589 <param name="level" type="GLint"/>
1590 <param name="xoffset" type="GLint"/>
1591 <param name="yoffset" type="GLint"/>
1592 <param name="zoffset" type="GLint"/>
1593 <param name="width" type="GLsizei"/>
1594 <param name="height" type="GLsizei"/>
1595 <param name="depth" type="GLsizei"/>
1596 <param name="format" type="GLenum"/>
1597 <param name="imagesize" type="GLsizei"/>
1598 <param name="data" type="const GLvoid *"/>
1599 </proto>
1600 </template>
1601
1602 <template name="ActiveTexture">
1603 <proto>
1604 <return type="void"/>
1605 <param name="texture" type="GLenum"/>
1606 </proto>
1607 </template>
1608
1609 <template name="ClientActiveTexture">
1610 <proto>
1611 <return type="void"/>
1612 <param name="texture" type="GLenum"/>
1613 </proto>
1614 </template>
1615
1616 <template name="SampleCoverage">
1617 <proto>
1618 <return type="void"/>
1619 <param name="value" type="GLtype"/>
1620 <param name="invert" type="GLboolean"/>
1621 </proto>
1622 </template>
1623
1624 <template name="CompressedTexImage2D">
1625 <proto>
1626 <return type="void"/>
1627 <param name="target" type="GLenum"/>
1628 <param name="level" type="GLint"/>
1629 <param name="internalFormat" type="GLenum"/>
1630 <param name="width" type="GLsizei"/>
1631 <param name="height" type="GLsizei"/>
1632 <param name="border" type="GLint"/>
1633 <param name="imageSize" type="GLsizei"/>
1634 <param name="data" type="const GLvoid *"/>
1635 </proto>
1636 </template>
1637
1638 <template name="CompressedTexSubImage2D">
1639 <proto>
1640 <return type="void"/>
1641 <param name="target" type="GLenum"/>
1642 <param name="level" type="GLint"/>
1643 <param name="xoffset" type="GLint"/>
1644 <param name="yoffset" type="GLint"/>
1645 <param name="width" type="GLsizei"/>
1646 <param name="height" type="GLsizei"/>
1647 <param name="format" type="GLenum"/>
1648 <param name="imageSize" type="GLsizei"/>
1649 <param name="data" type="const GLvoid *"/>
1650 </proto>
1651 </template>
1652
1653 <template name="BlendFuncSeparate">
1654 <proto>
1655 <return type="void"/>
1656 <param name="srcRGB" type="GLenum"/>
1657 <param name="dstRGB" type="GLenum"/>
1658 <param name="srcAlpha" type="GLenum"/>
1659 <param name="dstAlpha" type="GLenum"/>
1660 </proto>
1661
1662 <desc name="srcRGB">
1663 <value name="GL_ZERO"/>
1664 <value name="GL_ONE"/>
1665 <value name="GL_SRC_COLOR"/>
1666 <value name="GL_ONE_MINUS_SRC_COLOR"/>
1667 <value name="GL_SRC_ALPHA"/>
1668 <value name="GL_ONE_MINUS_SRC_ALPHA"/>
1669 <value name="GL_DST_ALPHA"/>
1670 <value name="GL_ONE_MINUS_DST_ALPHA"/>
1671 <value name="GL_DST_COLOR"/>
1672 <value name="GL_ONE_MINUS_DST_COLOR"/>
1673 <value name="GL_SRC_ALPHA_SATURATE"/>
1674
1675 <value name="GL_CONSTANT_COLOR" category="GLES2.0"/>
1676 <value name="GL_ONE_MINUS_CONSTANT_COLOR" category="GLES2.0"/>
1677 <value name="GL_CONSTANT_ALPHA" category="GLES2.0"/>
1678 <value name="GL_ONE_MINUS_CONSTANT_ALPHA" category="GLES2.0"/>
1679 </desc>
1680
1681 <desc name="dstRGB">
1682 <value name="GL_ZERO"/>
1683 <value name="GL_ONE"/>
1684 <value name="GL_SRC_COLOR"/>
1685 <value name="GL_ONE_MINUS_SRC_COLOR"/>
1686 <value name="GL_SRC_ALPHA"/>
1687 <value name="GL_ONE_MINUS_SRC_ALPHA"/>
1688 <value name="GL_DST_ALPHA"/>
1689 <value name="GL_ONE_MINUS_DST_ALPHA"/>
1690 <value name="GL_DST_COLOR"/>
1691 <value name="GL_ONE_MINUS_DST_COLOR"/>
1692
1693 <value name="GL_CONSTANT_COLOR" category="GLES2.0"/>
1694 <value name="GL_ONE_MINUS_CONSTANT_COLOR" category="GLES2.0"/>
1695 <value name="GL_CONSTANT_ALPHA" category="GLES2.0"/>
1696 <value name="GL_ONE_MINUS_CONSTANT_ALPHA" category="GLES2.0"/>
1697 </desc>
1698
1699 <desc name="srcAlpha">
1700 <value name="GL_ZERO"/>
1701 <value name="GL_ONE"/>
1702 <value name="GL_SRC_COLOR"/>
1703 <value name="GL_ONE_MINUS_SRC_COLOR"/>
1704 <value name="GL_SRC_ALPHA"/>
1705 <value name="GL_ONE_MINUS_SRC_ALPHA"/>
1706 <value name="GL_DST_ALPHA"/>
1707 <value name="GL_ONE_MINUS_DST_ALPHA"/>
1708 <value name="GL_DST_COLOR"/>
1709 <value name="GL_ONE_MINUS_DST_COLOR"/>
1710 <value name="GL_SRC_ALPHA_SATURATE"/>
1711
1712 <value name="GL_CONSTANT_COLOR" category="GLES2.0"/>
1713 <value name="GL_ONE_MINUS_CONSTANT_COLOR" category="GLES2.0"/>
1714 <value name="GL_CONSTANT_ALPHA" category="GLES2.0"/>
1715 <value name="GL_ONE_MINUS_CONSTANT_ALPHA" category="GLES2.0"/>
1716 </desc>
1717
1718 <desc name="dstAlpha">
1719 <value name="GL_ZERO"/>
1720 <value name="GL_ONE"/>
1721 <value name="GL_SRC_COLOR"/>
1722 <value name="GL_ONE_MINUS_SRC_COLOR"/>
1723 <value name="GL_SRC_ALPHA"/>
1724 <value name="GL_ONE_MINUS_SRC_ALPHA"/>
1725 <value name="GL_DST_ALPHA"/>
1726 <value name="GL_ONE_MINUS_DST_ALPHA"/>
1727 <value name="GL_DST_COLOR"/>
1728 <value name="GL_ONE_MINUS_DST_COLOR"/>
1729
1730 <value name="GL_CONSTANT_COLOR" category="GLES2.0"/>
1731 <value name="GL_ONE_MINUS_CONSTANT_COLOR" category="GLES2.0"/>
1732 <value name="GL_CONSTANT_ALPHA" category="GLES2.0"/>
1733 <value name="GL_ONE_MINUS_CONSTANT_ALPHA" category="GLES2.0"/>
1734 </desc>
1735 </template>
1736
1737 <template name="PointParameter">
1738 <proto>
1739 <return type="void"/>
1740 <param name="pname" type="GLenum"/>
1741 <vector name="params" type="const GLtype *" size="dynamic">
1742 <param name="param" type="GLtype"/>
1743 </vector>
1744 </proto>
1745
1746 <desc name="pname">
1747 <value name="GL_POINT_SIZE_MIN"/>
1748 <value name="GL_POINT_SIZE_MAX"/>
1749 <value name="GL_POINT_FADE_THRESHOLD_SIZE"/>
1750
1751 <desc name="params" vector_size="1"/>
1752 </desc>
1753
1754 <desc name="pname">
1755 <value name="GL_POINT_DISTANCE_ATTENUATION"/>
1756 <desc name="params" vector_size="3"/>
1757 </desc>
1758 </template>
1759
1760 <template name="VertexAttrib">
1761 <proto>
1762 <return type="void"/>
1763 <param name="index" type="GLuint"/>
1764 <vector name="v" type="const GLtype *" size="dynamic">
1765 <param name="x" type="GLtype"/>
1766 <param name="y" type="GLtype"/>
1767 <param name="z" type="GLtype"/>
1768 <param name="w" type="GLtype"/>
1769 </vector>
1770 </proto>
1771 </template>
1772
1773 <template name="VertexAttribPointer">
1774 <proto>
1775 <return type="void"/>
1776 <param name="index" type="GLuint"/>
1777 <param name="size" type="GLint"/>
1778 <param name="type" type="GLenum"/>
1779 <param name="normalized" type="GLboolean"/>
1780 <param name="stride" type="GLsizei"/>
1781 <param name="pointer" type="const GLvoid *"/>
1782 </proto>
1783
1784 <desc name="size" error="GL_INVALID_VALUE">
1785 <value name="1"/>
1786 <value name="2"/>
1787 <value name="3"/>
1788 <value name="4"/>
1789 </desc>
1790
1791 <desc name="type" error="GL_INVALID_VALUE">
1792 <value name="GL_BYTE"/>
1793 <value name="GL_UNSIGNED_BYTE"/>
1794 <value name="GL_SHORT"/>
1795 <value name="GL_UNSIGNED_SHORT"/>
1796 <value name="GL_FLOAT"/>
1797 <value name="GL_FIXED"/>
1798 <value name="GL_HALF_FLOAT_OES" category="OES_vertex_half_float"/>
1799 <value name="GL_UNSIGNED_INT_10_10_10_2_OES" category="OES_vertex_type_10_10_10_2"/>
1800 <value name="GL_INT_10_10_10_2_OES" category="OES_vertex_type_10_10_10_2"/>
1801 </desc>
1802
1803 <desc name="type" category="OES_vertex_type_10_10_10_2">
1804 <value name="GL_UNSIGNED_INT_10_10_10_2_OES"/>
1805 <value name="GL_INT_10_10_10_2_OES"/>
1806
1807 <desc name="size">
1808 <value name="3"/>
1809 <value name="4"/>
1810 </desc>
1811 </desc>
1812 </template>
1813
1814 <template name="EnableVertexAttribArray">
1815 <proto>
1816 <return type="void"/>
1817 <param name="index" type="GLuint"/>
1818 </proto>
1819 </template>
1820
1821 <template name="DisableVertexAttribArray">
1822 <proto>
1823 <return type="void"/>
1824 <param name="index" type="GLuint"/>
1825 </proto>
1826 </template>
1827
1828 <template name="IsProgram" direction="get">
1829 <proto>
1830 <return type="GLboolean"/>
1831 <param name="program" type="GLuint"/>
1832 </proto>
1833 </template>
1834
1835 <template name="GetProgram" direction="get">
1836 <proto>
1837 <return type="void"/>
1838 <param name="program" type="GLuint"/>
1839 <param name="pname" type="GLenum"/>
1840 <vector name="params" type="GLtype *" size="dynamic"/>
1841 </proto>
1842
1843 <desc name="pname">
1844 <value name="GL_DELETE_STATUS"/>
1845 <value name="GL_LINK_STATUS"/>
1846 <value name="GL_VALIDATE_STATUS"/>
1847 <value name="GL_INFO_LOG_LENGTH"/>
1848 <value name="GL_ATTACHED_SHADERS"/>
1849 <value name="GL_ACTIVE_ATTRIBUTES"/>
1850 <value name="GL_ACTIVE_ATTRIBUTE_MAX_LENGTH"/>
1851 <value name="GL_ACTIVE_UNIFORMS"/>
1852 <value name="GL_ACTIVE_UNIFORM_MAX_LENGTH"/>
1853 <value name="GL_PROGRAM_BINARY_LENGTH_OES" category="OES_get_program_binary"/>
1854
1855 <desc name="params" convert="false"/>
1856 </desc>
1857 </template>
1858
1859 <template name="GetVertexAttrib" direction="get">
1860 <proto>
1861 <return type="void"/>
1862 <param name="index" type="GLuint"/>
1863 <param name="pname" type="GLenum"/>
1864 <vector name="params" type="GLtype *" size="dynamic"/>
1865 </proto>
1866
1867 <desc name="pname">
1868 <value name="GL_VERTEX_ATTRIB_ARRAY_ENABLED"/>
1869 <value name="GL_VERTEX_ATTRIB_ARRAY_SIZE"/>
1870 <value name="GL_VERTEX_ATTRIB_ARRAY_STRIDE"/>
1871 <value name="GL_VERTEX_ATTRIB_ARRAY_TYPE"/>
1872 <value name="GL_VERTEX_ATTRIB_ARRAY_NORMALIZED"/>
1873 <value name="GL_VERTEX_ATTRIB_ARRAY_BUFFER_BINDING"/>
1874
1875 <desc name="params" vector_size="1" convert="false"/>
1876 </desc>
1877
1878 <desc name="pname">
1879 <value name="GL_CURRENT_VERTEX_ATTRIB"/>
1880 <desc name="params" vector_size="16?" convert="false"/>
1881 </desc>
1882 </template>
1883
1884 <template name="GetVertexAttribPointer" direction="get">
1885 <proto>
1886 <return type="void"/>
1887 <param name="index" type="GLuint"/>
1888 <param name="pname" type="GLenum"/>
1889 <vector name="pointer" type="GLvoid **" size="dynamic"/>
1890 </proto>
1891 </template>
1892
1893 <template name="GetBufferPointer" direction="get">
1894 <proto>
1895 <return type="void"/>
1896 <param name="target" type="GLenum"/>
1897 <param name="pname" type="GLenum"/>
1898 <vector name="params" type="GLvoid **" size="dynamic"/>
1899 </proto>
1900
1901 <desc name="target">
1902 <value name="GL_ARRAY_BUFFER"/>
1903 <value name="GL_ELEMENT_ARRAY_BUFFER"/>
1904 </desc>
1905 </template>
1906
1907 <template name="MapBuffer" direction="get">
1908 <proto>
1909 <return type="void *"/>
1910 <param name="target" type="GLenum"/>
1911 <param name="access" type="GLenum"/>
1912 </proto>
1913
1914 <desc name="target">
1915 <value name="GL_ARRAY_BUFFER"/>
1916 <value name="GL_ELEMENT_ARRAY_BUFFER"/>
1917 </desc>
1918
1919 <desc name="access">
1920 <value name="GL_WRITE_ONLY_OES"/>
1921 </desc>
1922 </template>
1923
1924 <template name="UnmapBuffer" direction="get">
1925 <proto>
1926 <return type="GLboolean"/>
1927 <param name="target" type="GLenum"/>
1928 </proto>
1929
1930 <desc name="target">
1931 <value name="GL_ARRAY_BUFFER"/>
1932 <value name="GL_ELEMENT_ARRAY_BUFFER"/>
1933 </desc>
1934 </template>
1935
1936 <template name="BindBuffer">
1937 <proto>
1938 <return type="void"/>
1939 <param name="target" type="GLenum"/>
1940 <param name="buffer" type="GLuint"/>
1941 </proto>
1942
1943 <desc name="target">
1944 <value name="GL_ARRAY_BUFFER"/>
1945 <value name="GL_ELEMENT_ARRAY_BUFFER"/>
1946 </desc>
1947 </template>
1948
1949 <template name="BufferData">
1950 <proto>
1951 <return type="void"/>
1952 <param name="target" type="GLenum"/>
1953 <param name="size" type="GLsizeiptr"/>
1954 <param name="data" type="const GLvoid *"/>
1955 <param name="usage" type="GLenum"/>
1956 </proto>
1957
1958 <desc name="target">
1959 <value name="GL_ARRAY_BUFFER"/>
1960 <value name="GL_ELEMENT_ARRAY_BUFFER"/>
1961 </desc>
1962
1963 <desc name="usage">
1964 <value name="GL_STATIC_DRAW"/>
1965 <value name="GL_DYNAMIC_DRAW"/>
1966 <value name="GL_STREAM_DRAW" category="GLES2.0"/>
1967 </desc>
1968 </template>
1969
1970 <template name="BufferSubData">
1971 <proto>
1972 <return type="void"/>
1973 <param name="target" type="GLenum"/>
1974 <param name="offset" type="GLintptr"/>
1975 <param name="size" type="GLsizeiptr"/>
1976 <param name="data" type="const GLvoid *"/>
1977 </proto>
1978
1979 <desc name="target">
1980 <value name="GL_ARRAY_BUFFER"/>
1981 <value name="GL_ELEMENT_ARRAY_BUFFER"/>
1982 </desc>
1983 </template>
1984
1985 <template name="DeleteBuffers">
1986 <proto>
1987 <return type="void"/>
1988 <param name="n" type="GLsizei"/>
1989 <param name="buffer" type="const GLuint *"/>
1990 </proto>
1991 </template>
1992
1993 <template name="GenBuffers" direction="get">
1994 <proto>
1995 <return type="void"/>
1996 <param name="n" type="GLsizei"/>
1997 <param name="buffer" type="GLuint *"/>
1998 </proto>
1999 </template>
2000
2001 <template name="GetBufferParameter" direction="get">
2002 <proto>
2003 <return type="void"/>
2004 <param name="target" type="GLenum"/>
2005 <param name="pname" type="GLenum"/>
2006 <vector name="params" type="GLtype *" size="dynamic"/>
2007 </proto>
2008
2009 <desc name="target">
2010 <value name="GL_ARRAY_BUFFER"/>
2011 <value name="GL_ELEMENT_ARRAY_BUFFER"/>
2012 </desc>
2013
2014 <desc name="pname">
2015 <value name="GL_BUFFER_SIZE"/>
2016 <value name="GL_BUFFER_USAGE"/>
2017 <value name="GL_BUFFER_ACCESS_OES" category="OES_mapbuffer"/>
2018 <value name="GL_BUFFER_MAPPED_OES" category="OES_mapbuffer"/>
2019 </desc>
2020 </template>
2021
2022 <template name="IsBuffer" direction="get">
2023 <proto>
2024 <return type="GLboolean"/>
2025 <param name="buffer" type="GLuint"/>
2026 </proto>
2027 </template>
2028
2029 <template name="CreateShader">
2030 <proto>
2031 <return type="GLuint"/>
2032 <param name="type" type="GLenum"/>
2033 </proto>
2034
2035 <desc name="type">
2036 <value name="GL_VERTEX_SHADER"/>
2037 <value name="GL_FRAGMENT_SHADER"/>
2038 </desc>
2039 </template>
2040
2041 <template name="ShaderSource">
2042 <proto>
2043 <return type="void"/>
2044 <param name="shader" type="GLuint"/>
2045 <param name="count" type="GLsizei"/>
2046 <param name="string" type="const GLchar * const *"/>
2047 <param name="length" type="const int *"/>
2048 </proto>
2049 </template>
2050
2051 <template name="CompileShader">
2052 <proto>
2053 <return type="void"/>
2054 <param name="shader" type="GLuint"/>
2055 </proto>
2056 </template>
2057
2058 <template name="ReleaseShaderCompiler">
2059 <proto>
2060 <return type="void"/>
2061 </proto>
2062 </template>
2063
2064 <template name="DeleteShader">
2065 <proto>
2066 <return type="void"/>
2067 <param name="shader" type="GLuint"/>
2068 </proto>
2069 </template>
2070
2071 <template name="ShaderBinary">
2072 <proto>
2073 <return type="void"/>
2074 <param name="n" type="GLsizei"/>
2075 <param name="shaders" type="const GLuint *"/>
2076 <param name="binaryformat" type="GLenum"/>
2077 <param name="binary" type="const GLvoid *"/>
2078 <param name="length" type="GLsizei"/>
2079 </proto>
2080 </template>
2081
2082 <template name="CreateProgram">
2083 <proto>
2084 <return type="GLuint"/>
2085 </proto>
2086 </template>
2087
2088 <template name="AttachShader">
2089 <proto>
2090 <return type="void"/>
2091 <param name="program" type="GLuint"/>
2092 <param name="shader" type="GLuint"/>
2093 </proto>
2094 </template>
2095
2096 <template name="DetachShader">
2097 <proto>
2098 <return type="void"/>
2099 <param name="program" type="GLuint"/>
2100 <param name="shader" type="GLuint"/>
2101 </proto>
2102 </template>
2103
2104 <template name="LinkProgram">
2105 <proto>
2106 <return type="void"/>
2107 <param name="program" type="GLuint"/>
2108 </proto>
2109 </template>
2110
2111 <template name="UseProgram">
2112 <proto>
2113 <return type="void"/>
2114 <param name="program" type="GLuint"/>
2115 </proto>
2116 </template>
2117
2118 <template name="DeleteProgram">
2119 <proto>
2120 <return type="void"/>
2121 <param name="program" type="GLuint"/>
2122 </proto>
2123 </template>
2124
2125 <template name="GetActiveAttrib" direction="get">
2126 <proto>
2127 <return type="void"/>
2128 <param name="program" type="GLuint"/>
2129 <param name="index" type="GLuint"/>
2130 <param name="bufSize" type="GLsizei"/>
2131 <param name="length" type="GLsizei *"/>
2132 <param name="size" type="GLint *"/>
2133 <param name="type" type="GLenum *"/>
2134 <param name="name" type="GLchar *"/>
2135 </proto>
2136 </template>
2137
2138 <template name="GetAttribLocation" direction="get">
2139 <proto>
2140 <return type="GLint"/>
2141 <param name="program" type="GLuint"/>
2142 <param name="name" type="const char *"/>
2143 </proto>
2144 </template>
2145
2146 <template name="BindAttribLocation">
2147 <proto>
2148 <return type="void"/>
2149 <param name="program" type="GLuint"/>
2150 <param name="index" type="GLuint"/>
2151 <param name="name" type="const char *"/>
2152 </proto>
2153 </template>
2154
2155 <template name="GetUniformLocation" direction="get">
2156 <proto>
2157 <return type="GLint"/>
2158 <param name="program" type="GLuint"/>
2159 <param name="name" type="const char *"/>
2160 </proto>
2161 </template>
2162
2163 <template name="GetActiveUniform" direction="get">
2164 <proto>
2165 <return type="void"/>
2166 <param name="program" type="GLuint"/>
2167 <param name="index" type="GLuint"/>
2168 <param name="bufSize" type="GLsizei"/>
2169 <param name="length" type="GLsizei *"/>
2170 <param name="size" type="GLint *"/>
2171 <param name="type" type="GLenum *"/>
2172 <param name="name" type="GLchar *"/>
2173 </proto>
2174 </template>
2175
2176 <template name="Uniform">
2177 <proto>
2178 <return type="void"/>
2179 <param name="location" type="GLint"/>
2180 <param name="count" type="GLsizei" hide_if_expanded="true"/>
2181 <vector name="values" type="const GLtype *" size="dynamic">
2182 <param name="v0" type="GLtype"/>
2183 <param name="v1" type="GLtype"/>
2184 <param name="v2" type="GLtype"/>
2185 <param name="v3" type="GLtype"/>
2186 </vector>
2187 </proto>
2188 </template>
2189
2190 <template name="UniformMatrix">
2191 <proto>
2192 <return type="void"/>
2193 <param name="location" type="GLint"/>
2194 <param name="count" type="GLsizei"/>
2195 <param name="transpose" type="GLboolean"/>
2196 <vector name="value" type="const GLtype *" size="dynamic"/>
2197 </proto>
2198 </template>
2199
2200 <template name="ValidateProgram">
2201 <proto>
2202 <return type="void"/>
2203 <param name="program" type="GLuint"/>
2204 </proto>
2205 </template>
2206
2207 <template name="GenerateMipmap">
2208 <proto>
2209 <return type="void"/>
2210 <param name="target" type="GLenum"/>
2211 </proto>
2212
2213 <desc name="target">
2214 <value name="GL_TEXTURE_2D"/>
2215 <value name="GL_TEXTURE_CUBE_MAP" category="GLES2.0"/>
2216 <value name="GL_TEXTURE_CUBE_MAP_OES" category="OES_texture_cube_map"/>
2217 <value name="GL_TEXTURE_3D_OES" category="OES_texture_3D"/>
2218 </desc>
2219 </template>
2220
2221 <template name="BindFramebuffer">
2222 <proto>
2223 <return type="void"/>
2224 <param name="target" type="GLenum"/>
2225 <param name="framebuffer" type="GLuint"/>
2226 </proto>
2227 </template>
2228
2229 <template name="DeleteFramebuffers">
2230 <proto>
2231 <return type="void"/>
2232 <param name="n" type="GLsizei"/>
2233 <param name="framebuffers" type="const GLuint *"/>
2234 </proto>
2235 </template>
2236
2237 <template name="GenFramebuffers">
2238 <proto>
2239 <return type="void"/>
2240 <param name="n" type="GLsizei"/>
2241 <param name="ids" type="GLuint *"/>
2242 </proto>
2243 </template>
2244
2245 <template name="BindRenderbuffer">
2246 <proto>
2247 <return type="void"/>
2248 <param name="target" type="GLenum"/>
2249 <param name="renderbuffer" type="GLuint"/>
2250 </proto>
2251 </template>
2252
2253 <template name="DeleteRenderbuffers">
2254 <proto>
2255 <return type="void"/>
2256 <param name="n" type="GLsizei"/>
2257 <param name="renderbuffers" type="const GLuint *"/>
2258 </proto>
2259 </template>
2260
2261 <template name="GenRenderbuffers">
2262 <proto>
2263 <return type="void"/>
2264 <param name="n" type="GLsizei"/>
2265 <param name="renderbuffers" type="GLuint *"/>
2266 </proto>
2267 </template>
2268
2269 <template name="RenderbufferStorage">
2270 <proto>
2271 <return type="void"/>
2272 <param name="target" type="GLenum"/>
2273 <param name="internalFormat" type="GLenum"/>
2274 <param name="width" type="GLsizei"/>
2275 <param name="height" type="GLsizei"/>
2276 </proto>
2277
2278 <desc name="internalFormat">
2279 <value name="GL_DEPTH_COMPONENT16_OES" category="OES_framebuffer_object"/>
2280 <value name="GL_RGBA4_OES" category="OES_framebuffer_object"/>
2281 <value name="GL_RGB5_A1_OES" category="OES_framebuffer_object"/>
2282 <value name="GL_RGB565_OES" category="OES_framebuffer_object"/>
2283 <value name="GL_STENCIL_INDEX8_OES" category="OES_stencil8"/>
2284
2285 <value name="GL_DEPTH_COMPONENT16" category="GLES2.0"/>
2286 <value name="GL_RGBA4" category="GLES2.0"/>
2287 <value name="GL_RGB5_A1" category="GLES2.0"/>
2288 <value name="GL_RGB565" category="GLES2.0"/>
2289 <value name="GL_STENCIL_INDEX8" category="GLES2.0"/>
2290
2291 <value name="GL_DEPTH_COMPONENT24_OES" category="OES_depth24"/>
2292 <value name="GL_DEPTH_COMPONENT32_OES" category="OES_depth32"/>
2293 <value name="GL_RGB8_OES" category="OES_rgb8_rgba8"/>
2294 <value name="GL_RGBA8_OES" category="OES_rgb8_rgba8"/>
2295 <value name="GL_STENCIL_INDEX1_OES" category="OES_stencil1"/>
2296 <value name="GL_STENCIL_INDEX4_OES" category="OES_stencil4"/>
2297 <value name="GL_DEPTH24_STENCIL8_OES" category="OES_packed_depth_stencil"/>
2298 </desc>
2299 </template>
2300
2301 <template name="FramebufferRenderbuffer">
2302 <proto>
2303 <return type="void"/>
2304 <param name="target" type="GLenum"/>
2305 <param name="attachment" type="GLenum"/>
2306 <param name="renderbuffertarget" type="GLenum"/>
2307 <param name="renderbuffer" type="GLuint"/>
2308 </proto>
2309 </template>
2310
2311 <template name="FramebufferTexture2D">
2312 <proto>
2313 <return type="void"/>
2314 <param name="target" type="GLenum"/>
2315 <param name="attachment" type="GLenum"/>
2316 <param name="textarget" type="GLenum"/>
2317 <param name="texture" type="GLuint"/>
2318 <param name="level" type="GLint"/>
2319 </proto>
2320
2321 <desc name="textarget" error="GL_INVALID_OPERATION">
2322 <value name="GL_TEXTURE_2D"/>
2323 <value name="GL_TEXTURE_CUBE_MAP_POSITIVE_X" category="GLES2.0"/>
2324 <value name="GL_TEXTURE_CUBE_MAP_POSITIVE_Y" category="GLES2.0"/>
2325 <value name="GL_TEXTURE_CUBE_MAP_POSITIVE_Z" category="GLES2.0"/>
2326 <value name="GL_TEXTURE_CUBE_MAP_NEGATIVE_X" category="GLES2.0"/>
2327 <value name="GL_TEXTURE_CUBE_MAP_NEGATIVE_Y" category="GLES2.0"/>
2328 <value name="GL_TEXTURE_CUBE_MAP_NEGATIVE_Z" category="GLES2.0"/>
2329 <value name="GL_TEXTURE_CUBE_MAP_POSITIVE_X_OES" category="OES_texture_cube_map"/>
2330 <value name="GL_TEXTURE_CUBE_MAP_POSITIVE_Y_OES" category="OES_texture_cube_map"/>
2331 <value name="GL_TEXTURE_CUBE_MAP_POSITIVE_Z_OES" category="OES_texture_cube_map"/>
2332 <value name="GL_TEXTURE_CUBE_MAP_NEGATIVE_X_OES" category="OES_texture_cube_map"/>
2333 <value name="GL_TEXTURE_CUBE_MAP_NEGATIVE_Y_OES" category="OES_texture_cube_map"/>
2334 <value name="GL_TEXTURE_CUBE_MAP_NEGATIVE_Z_OES" category="OES_texture_cube_map"/>
2335 </desc>
2336 <!-- According to the base specification, "level" must be 0. But
2337 extension GL_OES_fbo_render_mipmap lifts that restriction,
2338 so no restriction is placed here. -->
2339 </template>
2340
2341 <template name="FramebufferTexture3D">
2342 <proto>
2343 <return type="void"/>
2344 <param name="target" type="GLenum"/>
2345 <param name="attachment" type="GLenum"/>
2346 <param name="textarget" type="GLenum"/>
2347 <param name="texture" type="GLuint"/>
2348 <param name="level" type="GLint"/>
2349 <param name="zoffset" type="GLint"/>
2350 </proto>
2351 </template>
2352
2353 <template name="CheckFramebufferStatus" direction="get">
2354 <proto>
2355 <return type="GLenum"/>
2356 <param name="target" type="GLenum"/>
2357 </proto>
2358 </template>
2359
2360 <template name="GetFramebufferAttachmentParameter" direction="get">
2361 <proto>
2362 <return type="void"/>
2363 <param name="target" type="GLenum"/>
2364 <param name="attachment" type="GLenum"/>
2365 <param name="pname" type="GLenum"/>
2366 <vector name="params" type="GLtype *" size="dynamic"/>
2367 </proto>
2368
2369 <desc name="pname">
2370 <value name="GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE_OES" category="OES_framebuffer_object"/>
2371 <value name="GL_FRAMEBUFFER_ATTACHMENT_OBJECT_NAME_OES" category="OES_framebuffer_object"/>
2372 <value name="GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL_OES" category="OES_framebuffer_object"/>
2373 <value name="GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE_OES" category="OES_framebuffer_object"/>
2374
2375 <value name="GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE" category="GLES2.0"/>
2376 <value name="GL_FRAMEBUFFER_ATTACHMENT_OBJECT_NAME" category="GLES2.0"/>
2377 <value name="GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL" category="GLES2.0"/>
2378 <value name="GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE" category="GLES2.0"/>
2379 <value name="GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_3D_ZOFFSET_OES" category="OES_texture_3D"/>
2380
2381 <desc name="params" vector_size="1" convert="false"/>
2382 </desc>
2383 </template>
2384
2385 <template name="GetRenderbufferParameter" direction="get">
2386 <proto>
2387 <return type="void"/>
2388 <param name="target" type="GLenum"/>
2389 <param name="pname" type="GLenum"/>
2390 <vector name="params" type="GLtype *" size="dynamic"/>
2391 </proto>
2392
2393 <desc name="pname" category="OES_framebuffer_object">
2394 <value name="GL_RENDERBUFFER_WIDTH_OES"/>
2395 <value name="GL_RENDERBUFFER_HEIGHT_OES"/>
2396 <value name="GL_RENDERBUFFER_INTERNAL_FORMAT_OES"/>
2397 <value name="GL_RENDERBUFFER_RED_SIZE_OES"/>
2398 <value name="GL_RENDERBUFFER_GREEN_SIZE_OES"/>
2399 <value name="GL_RENDERBUFFER_BLUE_SIZE_OES"/>
2400 <value name="GL_RENDERBUFFER_ALPHA_SIZE_OES"/>
2401 <value name="GL_RENDERBUFFER_DEPTH_SIZE_OES"/>
2402 <value name="GL_RENDERBUFFER_STENCIL_SIZE_OES"/>
2403
2404 <desc name="params" vector_size="1" convert="false"/>
2405 </desc>
2406
2407 <desc name="pname" category="GLES2.0">
2408 <value name="GL_RENDERBUFFER_WIDTH"/>
2409 <value name="GL_RENDERBUFFER_HEIGHT"/>
2410 <value name="GL_RENDERBUFFER_INTERNAL_FORMAT"/>
2411 <value name="GL_RENDERBUFFER_RED_SIZE"/>
2412 <value name="GL_RENDERBUFFER_GREEN_SIZE"/>
2413 <value name="GL_RENDERBUFFER_BLUE_SIZE"/>
2414 <value name="GL_RENDERBUFFER_ALPHA_SIZE"/>
2415 <value name="GL_RENDERBUFFER_DEPTH_SIZE"/>
2416 <value name="GL_RENDERBUFFER_STENCIL_SIZE"/>
2417
2418 <desc name="params" vector_size="1" convert="false"/>
2419 </desc>
2420 </template>
2421
2422 <template name="IsRenderbuffer" direction="get">
2423 <proto>
2424 <return type="GLboolean"/>
2425 <param name="renderbuffer" type="GLuint"/>
2426 </proto>
2427 </template>
2428
2429 <template name="IsFramebuffer" direction="get">
2430 <proto>
2431 <return type="GLboolean"/>
2432 <param name="framebuffer" type="GLuint"/>
2433 </proto>
2434 </template>
2435
2436 <template name="IsShader" direction="get">
2437 <proto>
2438 <return type="GLboolean"/>
2439 <param name="shader" type="GLuint"/>
2440 </proto>
2441 </template>
2442
2443 <template name="GetShader" direction="get">
2444 <proto>
2445 <return type="void"/>
2446 <param name="shader" type="GLuint"/>
2447 <param name="pname" type="GLenum"/>
2448 <vector name="params" type="GLtype *" size="dynamic"/>
2449 </proto>
2450 </template>
2451
2452 <template name="GetAttachedShaders" direction="get">
2453 <proto>
2454 <return type="void"/>
2455 <param name="program" type="GLuint"/>
2456 <param name="maxCount" type="GLsizei"/>
2457 <param name="count" type="GLsizei *"/>
2458 <param name="shaders" type="GLuint *"/>
2459 </proto>
2460 </template>
2461
2462 <template name="GetShaderInfoLog" direction="get">
2463 <proto>
2464 <return type="void"/>
2465 <param name="shader" type="GLuint"/>
2466 <param name="bufSize" type="GLsizei"/>
2467 <param name="length" type="GLsizei *"/>
2468 <param name="infoLog" type="GLchar *"/>
2469 </proto>
2470 </template>
2471
2472 <template name="GetProgramInfoLog" direction="get">
2473 <proto>
2474 <return type="void"/>
2475 <param name="program" type="GLuint"/>
2476 <param name="bufSize" type="GLsizei"/>
2477 <param name="length" type="GLsizei *"/>
2478 <param name="infoLog" type="GLchar *"/>
2479 </proto>
2480 </template>
2481
2482 <template name="GetShaderSource" direction="get">
2483 <proto>
2484 <return type="void"/>
2485 <param name="shader" type="GLuint"/>
2486 <param name="bufSize" type="GLsizei"/>
2487 <param name="length" type="GLsizei *"/>
2488 <param name="source" type="GLchar *"/>
2489 </proto>
2490 </template>
2491
2492 <template name="GetShaderPrecisionFormat" direction="get">
2493 <proto>
2494 <return type="void"/>
2495 <param name="shadertype" type="GLenum"/>
2496 <param name="precisiontype" type="GLenum"/>
2497 <param name="range" type="GLint *"/>
2498 <param name="precision" type="GLint *"/>
2499 </proto>
2500 </template>
2501
2502 <template name="GetUniform" direction="get">
2503 <proto>
2504 <return type="void"/>
2505 <param name="program" type="GLuint"/>
2506 <param name="location" type="GLint"/>
2507 <vector name="params" type="GLtype *" size="dynamic"/>
2508 </proto>
2509 </template>
2510
2511 <template name="QueryMatrix" direction="get">
2512 <proto>
2513 <return type="GLbitfield"/>
2514 <vector name="mantissa" type="GLtype *" size="16"/>
2515 <vector name="exponent" type="GLint *" size="16"/>
2516 </proto>
2517 </template>
2518
2519 <template name="DrawTex">
2520 <proto>
2521 <return type="void"/>
2522 <vector name="coords" type="const GLtype *" size="5">
2523 <param name="x" type="GLtype"/>
2524 <param name="y" type="GLtype"/>
2525 <param name="z" type="GLtype"/>
2526 <param name="w" type="GLtype"/>
2527 <param name="h" type="GLtype"/>
2528 </vector>
2529 </proto>
2530 </template>
2531
2532 <template name="MultiDrawArrays">
2533 <proto>
2534 <return type="void"/>
2535 <param name="mode" type="GLenum"/>
2536 <param name="first" type="const GLint *"/>
2537 <param name="count" type="const GLsizei *"/>
2538 <param name="primcount" type="GLsizei"/>
2539 </proto>
2540
2541 <desc name="mode">
2542 <value name="GL_POINTS"/>
2543 <value name="GL_LINES"/>
2544 <value name="GL_LINE_LOOP"/>
2545 <value name="GL_LINE_STRIP"/>
2546 <value name="GL_TRIANGLES"/>
2547 <value name="GL_TRIANGLE_STRIP"/>
2548 <value name="GL_TRIANGLE_FAN"/>
2549 </desc>
2550 </template>
2551
2552 <template name="MultiDrawElements">
2553 <proto>
2554 <return type="void"/>
2555 <param name="mode" type="GLenum"/>
2556 <param name="count" type="const GLsizei *"/>
2557 <param name="type" type="GLenum"/>
2558 <param name="indices" type="const GLvoid **"/>
2559 <param name="primcount" type="GLsizei"/>
2560 </proto>
2561
2562 <desc name="mode">
2563 <value name="GL_POINTS"/>
2564 <value name="GL_LINES"/>
2565 <value name="GL_LINE_LOOP"/>
2566 <value name="GL_LINE_STRIP"/>
2567 <value name="GL_TRIANGLES"/>
2568 <value name="GL_TRIANGLE_STRIP"/>
2569 <value name="GL_TRIANGLE_FAN"/>
2570 </desc>
2571 </template>
2572
2573 <template name="EGLImageTargetTexture2D">
2574 <proto>
2575 <return type="void"/>
2576 <param name="target" type="GLenum"/>
2577 <param name="image" type="GLeglImageOES"/>
2578 </proto>
2579 </template>
2580
2581 <template name="EGLImageTargetRenderbufferStorage">
2582 <proto>
2583 <return type="void"/>
2584 <param name="target" type="GLenum"/>
2585 <param name="image" type="GLeglImageOES"/>
2586 </proto>
2587 </template>
2588
2589 <template name="DrawBuffers">
2590 <proto>
2591 <return type="void"/>
2592 <param name="n" type="GLsizei"/>
2593 <param name="bufs" type="const GLenum *"/>
2594 </proto>
2595 </template>
2596
2597 <template name="ReadBuffer">
2598 <proto>
2599 <return type="void"/>
2600 <param name="mode" type="GLenum"/>
2601 </proto>
2602 </template>
2603
2604 <api name="mesa" implementation="true">
2605 <category name="MESA"/>
2606
2607 <function name="Color4f" default_prefix="_es_" template="Color" gltype="GLfloat" vector_size="4" expand_vector="true"/>
2608 <function name="ClipPlane" template="ClipPlane" gltype="GLdouble"/>
2609 <function name="CullFace" template="CullFace"/>
2610
2611 <function name="Fogf" template="Fog" gltype="GLfloat" expand_vector="true"/>
2612 <function name="Fogfv" template="Fog" gltype="GLfloat"/>
2613
2614 <function name="FrontFace" template="FrontFace"/>
2615 <function name="Hint" template="Hint"/>
2616
2617 <function name="Lightf" template="Light" gltype="GLfloat" expand_vector="true"/>
2618 <function name="Lightfv" template="Light" gltype="GLfloat"/>
2619
2620 <function name="LightModelf" template="LightModel" gltype="GLfloat" expand_vector="true"/>
2621 <function name="LightModelfv" template="LightModel" gltype="GLfloat"/>
2622
2623 <function name="LineWidth" template="LineWidth" gltype="GLfloat"/>
2624
2625 <function name="Materialf" default_prefix="_es_" template="Material" gltype="GLfloat" expand_vector="true"/>
2626 <function name="Materialfv" default_prefix="_es_" template="Material" gltype="GLfloat"/>
2627
2628 <function name="PointSize" template="PointSize" gltype="GLfloat"/>
2629 <function name="PointSizePointer" template="PointSizePointer"/>
2630
2631 <function name="Scissor" template="Scissor"/>
2632 <function name="ShadeModel" template="ShadeModel"/>
2633
2634 <function name="TexParameterf" template="TexParameter" gltype="GLfloat" expand_vector="true"/>
2635 <function name="TexParameterfv" template="TexParameter" gltype="GLfloat"/>
2636 <function name="TexParameteri" template="TexParameter" gltype="GLint" expand_vector="true"/>
2637 <function name="TexParameteriv" template="TexParameter" gltype="GLint"/>
2638
2639 <function name="TexImage2D" template="TexImage2D"/>
2640
2641 <function name="TexEnvf" template="TexEnv" gltype="GLfloat" expand_vector="true"/>
2642 <function name="TexEnvi" template="TexEnv" gltype="GLint" expand_vector="true"/>
2643 <function name="TexEnvfv" template="TexEnv" gltype="GLfloat"/>
2644 <function name="TexEnviv" template="TexEnv" gltype="GLint"/>
2645
2646 <function name="TexGenf" template="TexGen" gltype="GLfloat" expand_vector="true"/>
2647 <function name="TexGenfv" template="TexGen" gltype="GLfloat"/>
2648
2649 <function name="Clear" template="Clear"/>
2650 <function name="ClearColor" template="ClearColor" gltype="GLclampf"/>
2651 <function name="ClearStencil" template="ClearStencil"/>
2652 <function name="ClearDepth" template="ClearDepth" gltype="GLclampd"/>
2653 <function name="ClearDepthf" template="ClearDepth" gltype="GLclampf"/>
2654
2655 <function name="StencilMask" template="StencilMask"/>
2656 <function name="StencilMaskSeparate" template="StencilMaskSeparate"/>
2657 <function name="ColorMask" template="ColorMask"/>
2658 <function name="DepthMask" template="DepthMask"/>
2659 <function name="Disable" template="Disable"/>
2660 <function name="Enable" template="Enable"/>
2661 <function name="Finish" template="Finish"/>
2662 <function name="Flush" template="Flush"/>
2663
2664 <function name="AlphaFunc" template="AlphaFunc" gltype="GLclampf"/>
2665
2666 <function name="BlendFunc" template="BlendFunc"/>
2667 <function name="LogicOp" template="LogicOp"/>
2668 <function name="StencilFunc" template="StencilFunc"/>
2669 <function name="StencilFuncSeparate" template="StencilFuncSeparate"/>
2670 <function name="StencilOp" template="StencilOp"/>
2671 <function name="StencilOpSeparate" template="StencilOpSeparate"/>
2672 <function name="DepthFunc" template="DepthFunc"/>
2673 <function name="PixelStorei" template="PixelStore" gltype="GLint"/>
2674
2675 <function name="ReadPixels" template="ReadPixels"/>
2676 <function name="GetBooleanv" template="GetState" gltype="GLboolean"/>
2677 <function name="GetClipPlane" template="GetClipPlane" gltype="GLdouble"/>
2678 <function name="GetError" template="GetError"/>
2679 <function name="GetFloatv" template="GetState" gltype="GLfloat"/>
2680 <function name="GetFixedv" template="GetState" gltype="GLfixed"/>
2681 <function name="GetIntegerv" template="GetState" gltype="GLint"/>
2682
2683 <function name="GetLightfv" template="GetLight" gltype="GLfloat"/>
2684 <function name="GetMaterialfv" template="GetMaterial" gltype="GLfloat"/>
2685 <function name="GetMaterialiv" template="GetMaterial" gltype="GLint"/>
2686
2687 <function name="GetString" template="GetString"/>
2688
2689 <function name="GetTexEnvfv" template="GetTexEnv" gltype="GLfloat"/>
2690 <function name="GetTexEnviv" template="GetTexEnv" gltype="GLint"/>
2691 <function name="GetTexGenfv" template="GetTexGen" gltype="GLfloat"/>
2692 <function name="GetTexParameterfv" template="GetTexParameter" gltype="GLfloat"/>
2693 <function name="GetTexParameteriv" template="GetTexParameter" gltype="GLint"/>
2694
2695 <function name="IsEnabled" template="IsEnabled"/>
2696
2697 <function name="DepthRange" template="DepthRange" gltype="GLclampd"/>
2698 <function name="DepthRangef" template="DepthRange" gltype="GLclampf"/>
2699 <function name="Frustum" template="Frustum" gltype="GLdouble"/>
2700
2701 <function name="LoadIdentity" template="LoadIdentity"/>
2702 <function name="LoadMatrixf" template="LoadMatrix" gltype="GLfloat"/>
2703 <function name="MatrixMode" template="MatrixMode"/>
2704
2705 <function name="MultMatrixf" template="MultMatrix" gltype="GLfloat"/>
2706 <function name="Ortho" template="Ortho" gltype="GLdouble"/>
2707 <function name="PopMatrix" template="PopMatrix"/>
2708 <function name="PushMatrix" template="PushMatrix"/>
2709
2710 <function name="Rotatef" template="Rotate" gltype="GLfloat"/>
2711 <function name="Scalef" template="Scale" gltype="GLfloat"/>
2712 <function name="Translatef" template="Translate" gltype="GLfloat"/>
2713
2714 <function name="Viewport" template="Viewport"/>
2715
2716 <function name="ColorPointer" template="ColorPointer"/>
2717 <function name="DisableClientState" template="DisableClientState"/>
2718 <function name="DrawArrays" template="DrawArrays"/>
2719 <function name="DrawElements" template="DrawElements"/>
2720 <function name="EnableClientState" template="EnableClientState"/>
2721
2722 <function name="GetPointerv" template="GetPointer"/>
2723 <function name="Normal3f" default_prefix="_es_" template="Normal" gltype="GLfloat" expand_vector="true"/>
2724 <function name="NormalPointer" template="NormalPointer"/>
2725 <function name="TexCoordPointer" template="TexCoordPointer"/>
2726 <function name="VertexPointer" template="VertexPointer"/>
2727
2728 <function name="PolygonOffset" template="PolygonOffset" gltype="GLfloat"/>
2729 <function name="CopyTexImage2D" template="CopyTexImage2D"/>
2730 <function name="CopyTexSubImage2D" template="CopyTexSubImage2D"/>
2731 <function name="TexSubImage2D" template="TexSubImage2D"/>
2732
2733 <function name="BindTexture" template="BindTexture"/>
2734 <function name="DeleteTextures" template="DeleteTextures"/>
2735 <function name="GenTextures" template="GenTextures"/>
2736 <function name="IsTexture" template="IsTexture"/>
2737
2738 <function name="BlendColor" template="BlendColor" gltype="GLclampf"/>
2739 <function name="BlendEquation" template="BlendEquation"/>
2740 <function name="BlendEquationSeparateEXT" template="BlendEquationSeparate"/>
2741
2742 <function name="TexImage3D" template="TexImage3D"/>
2743 <function name="TexSubImage3D" template="TexSubImage3D"/>
2744 <function name="CopyTexSubImage3D" template="CopyTexSubImage3D"/>
2745
2746 <function name="CompressedTexImage3DARB" template="CompressedTexImage3D"/>
2747 <function name="CompressedTexSubImage3DARB" template="CompressedTexSubImage3D"/>
2748
2749 <function name="ActiveTextureARB" template="ActiveTexture"/>
2750 <function name="ClientActiveTextureARB" template="ClientActiveTexture"/>
2751
2752 <function name="MultiTexCoord4f" default_prefix="_es_" template="MultiTexCoord" gltype="GLfloat" vector_size="4" expand_vector="true"/>
2753
2754 <function name="SampleCoverageARB" template="SampleCoverage" gltype="GLclampf"/>
2755
2756 <function name="CompressedTexImage2DARB" template="CompressedTexImage2D"/>
2757 <function name="CompressedTexSubImage2DARB" template="CompressedTexSubImage2D"/>
2758
2759 <function name="BlendFuncSeparateEXT" template="BlendFuncSeparate"/>
2760
2761 <function name="PointParameterf" template="PointParameter" gltype="GLfloat" expand_vector="true"/>
2762 <function name="PointParameterfv" template="PointParameter" gltype="GLfloat"/>
2763
2764 <function name="VertexAttrib1f" default_prefix="_es_" template="VertexAttrib" gltype="GLfloat" vector_size="1" expand_vector="true"/>
2765 <function name="VertexAttrib2f" default_prefix="_es_" template="VertexAttrib" gltype="GLfloat" vector_size="2" expand_vector="true"/>
2766 <function name="VertexAttrib3f" default_prefix="_es_" template="VertexAttrib" gltype="GLfloat" vector_size="3" expand_vector="true"/>
2767 <function name="VertexAttrib4f" default_prefix="_es_" template="VertexAttrib" gltype="GLfloat" vector_size="4" expand_vector="true"/>
2768 <function name="VertexAttrib1fv" default_prefix="_es_" template="VertexAttrib" gltype="GLfloat" vector_size="1"/>
2769 <function name="VertexAttrib2fv" default_prefix="_es_" template="VertexAttrib" gltype="GLfloat" vector_size="2"/>
2770 <function name="VertexAttrib3fv" default_prefix="_es_" template="VertexAttrib" gltype="GLfloat" vector_size="3"/>
2771 <function name="VertexAttrib4fv" default_prefix="_es_" template="VertexAttrib" gltype="GLfloat" vector_size="4"/>
2772
2773 <function name="VertexAttribPointerARB" template="VertexAttribPointer"/>
2774 <function name="EnableVertexAttribArrayARB" template="EnableVertexAttribArray"/>
2775 <function name="DisableVertexAttribArrayARB" template="DisableVertexAttribArray"/>
2776
2777 <function name="IsProgram" template="IsProgram"/>
2778 <function name="GetProgramiv" template="GetProgram" gltype="GLint"/>
2779
2780 <function name="GetVertexAttribfvARB" template="GetVertexAttrib" gltype="GLfloat"/>
2781 <function name="GetVertexAttribivARB" template="GetVertexAttrib" gltype="GLint"/>
2782 <function name="GetVertexAttribPointervARB" template="GetVertexAttribPointer"/>
2783
2784 <function name="GetBufferPointervARB" template="GetBufferPointer"/>
2785 <function name="MapBufferARB" template="MapBuffer"/>
2786 <function name="UnmapBufferARB" template="UnmapBuffer"/>
2787 <function name="BindBufferARB" template="BindBuffer"/>
2788 <function name="BufferDataARB" template="BufferData"/>
2789 <function name="BufferSubDataARB" template="BufferSubData"/>
2790 <function name="DeleteBuffersARB" template="DeleteBuffers"/>
2791 <function name="GenBuffersARB" template="GenBuffers"/>
2792 <function name="GetBufferParameterivARB" template="GetBufferParameter" gltype="GLint"/>
2793 <function name="IsBufferARB" template="IsBuffer"/>
2794
2795 <function name="CreateShader" template="CreateShader"/>
2796 <function name="ShaderSourceARB" template="ShaderSource"/>
2797 <function name="CompileShaderARB" template="CompileShader"/>
2798 <function name="ReleaseShaderCompiler" template="ReleaseShaderCompiler"/>
2799 <function name="DeleteShader" template="DeleteShader"/>
2800 <function name="ShaderBinary" template="ShaderBinary"/>
2801 <function name="CreateProgram" template="CreateProgram"/>
2802 <function name="AttachShader" template="AttachShader"/>
2803 <function name="DetachShader" template="DetachShader"/>
2804 <function name="LinkProgramARB" template="LinkProgram"/>
2805 <function name="UseProgramObjectARB" template="UseProgram"/>
2806 <function name="DeleteProgram" template="DeleteProgram"/>
2807
2808 <function name="GetActiveAttribARB" template="GetActiveAttrib"/>
2809 <function name="GetAttribLocationARB" template="GetAttribLocation"/>
2810 <function name="BindAttribLocationARB" template="BindAttribLocation"/>
2811 <function name="GetUniformLocationARB" template="GetUniformLocation"/>
2812 <function name="GetActiveUniformARB" template="GetActiveUniform"/>
2813
2814 <function name="Uniform1fARB" template="Uniform" gltype="GLfloat" vector_size="1" expand_vector="true"/>
2815 <function name="Uniform2fARB" template="Uniform" gltype="GLfloat" vector_size="2" expand_vector="true"/>
2816 <function name="Uniform3fARB" template="Uniform" gltype="GLfloat" vector_size="3" expand_vector="true"/>
2817 <function name="Uniform4fARB" template="Uniform" gltype="GLfloat" vector_size="4" expand_vector="true"/>
2818 <function name="Uniform1iARB" template="Uniform" gltype="GLint" vector_size="1" expand_vector="true"/>
2819 <function name="Uniform2iARB" template="Uniform" gltype="GLint" vector_size="2" expand_vector="true"/>
2820 <function name="Uniform3iARB" template="Uniform" gltype="GLint" vector_size="3" expand_vector="true"/>
2821 <function name="Uniform4iARB" template="Uniform" gltype="GLint" vector_size="4" expand_vector="true"/>
2822 <function name="Uniform1fvARB" template="Uniform" gltype="GLfloat" vector_size="1"/>
2823 <function name="Uniform2fvARB" template="Uniform" gltype="GLfloat" vector_size="2"/>
2824 <function name="Uniform3fvARB" template="Uniform" gltype="GLfloat" vector_size="3"/>
2825 <function name="Uniform4fvARB" template="Uniform" gltype="GLfloat" vector_size="4"/>
2826 <function name="Uniform1ivARB" template="Uniform" gltype="GLint" vector_size="1"/>
2827 <function name="Uniform2ivARB" template="Uniform" gltype="GLint" vector_size="2"/>
2828 <function name="Uniform3ivARB" template="Uniform" gltype="GLint" vector_size="3"/>
2829 <function name="Uniform4ivARB" template="Uniform" gltype="GLint" vector_size="4"/>
2830
2831 <function name="UniformMatrix2fvARB" template="UniformMatrix" gltype="GLfloat" vector_size="2"/>
2832 <function name="UniformMatrix3fvARB" template="UniformMatrix" gltype="GLfloat" vector_size="3"/>
2833 <function name="UniformMatrix4fvARB" template="UniformMatrix" gltype="GLfloat" vector_size="4"/>
2834
2835 <function name="ValidateProgramARB" template="ValidateProgram"/>
2836
2837 <function name="GenerateMipmapEXT" template="GenerateMipmap"/>
2838 <function name="BindFramebufferEXT" template="BindFramebuffer"/>
2839 <function name="DeleteFramebuffersEXT" template="DeleteFramebuffers"/>
2840 <function name="GenFramebuffersEXT" template="GenFramebuffers"/>
2841 <function name="BindRenderbufferEXT" template="BindRenderbuffer"/>
2842 <function name="DeleteRenderbuffersEXT" template="DeleteRenderbuffers"/>
2843 <function name="GenRenderbuffersEXT" template="GenRenderbuffers"/>
2844 <function name="RenderbufferStorageEXT" template="RenderbufferStorage"/>
2845 <function name="FramebufferRenderbufferEXT" template="FramebufferRenderbuffer"/>
2846 <function name="FramebufferTexture2DEXT" template="FramebufferTexture2D"/>
2847 <function name="FramebufferTexture3DEXT" template="FramebufferTexture3D"/>
2848 <function name="CheckFramebufferStatusEXT" template="CheckFramebufferStatus"/>
2849 <function name="GetFramebufferAttachmentParameterivEXT" template="GetFramebufferAttachmentParameter" gltype="GLint"/>
2850 <function name="GetRenderbufferParameterivEXT" template="GetRenderbufferParameter" gltype="GLint"/>
2851 <function name="IsRenderbufferEXT" template="IsRenderbuffer"/>
2852 <function name="IsFramebufferEXT" template="IsFramebuffer"/>
2853
2854 <function name="IsShader" template="IsShader"/>
2855 <function name="GetShaderiv" template="GetShader" gltype="GLint"/>
2856 <function name="GetAttachedShaders" template="GetAttachedShaders"/>
2857 <function name="GetShaderInfoLog" template="GetShaderInfoLog"/>
2858 <function name="GetProgramInfoLog" template="GetProgramInfoLog"/>
2859 <function name="GetShaderSourceARB" template="GetShaderSource"/>
2860 <function name="GetShaderPrecisionFormat" template="GetShaderPrecisionFormat"/>
2861 <function name="GetUniformfvARB" template="GetUniform" gltype="GLfloat"/>
2862 <function name="GetUniformivARB" template="GetUniform" gltype="GLint"/>
2863
2864 <function name="DrawTexf" template="DrawTex" gltype="GLfloat" expand_vector="true"/>
2865 <function name="DrawTexfv" template="DrawTex" gltype="GLfloat"/>
2866 <function name="DrawTexi" template="DrawTex" gltype="GLint" expand_vector="true"/>
2867 <function name="DrawTexiv" template="DrawTex" gltype="GLint"/>
2868 <function name="DrawTexs" template="DrawTex" gltype="GLshort" expand_vector="true"/>
2869 <function name="DrawTexsv" template="DrawTex" gltype="GLshort"/>
2870
2871 <!-- EXT_multi_draw_arrays -->
2872 <function name="MultiDrawArraysEXT" template="MultiDrawArrays"/>
2873 <function name="MultiDrawElementsEXT" template="MultiDrawElements"/>
2874
2875 <!-- OES_EGL_image -->
2876 <function name="EGLImageTargetTexture2DOES" template="EGLImageTargetTexture2D"/>
2877 <function name="EGLImageTargetRenderbufferStorageOES" template="EGLImageTargetRenderbufferStorage"/>
2878
2879 <function name="DrawBuffersARB" template="DrawBuffers"/>
2880
2881 <function name="ReadBuffer" template="ReadBuffer"/>
2882
2883 </api>
2884
2885 <api name="GLES1.1">
2886 <category name="GLES1.1"/>
2887
2888 <category name="OES_byte_coordinates"/>
2889 <category name="OES_fixed_point"/>
2890 <category name="OES_single_precision"/>
2891 <category name="OES_matrix_get"/>
2892 <category name="OES_read_format"/>
2893 <category name="OES_compressed_paletted_texture"/>
2894 <category name="OES_compressed_ETC1_RGB8_texture"/>
2895 <category name="OES_point_size_array"/>
2896 <category name="OES_point_sprite"/>
2897 <category name="OES_query_matrix"/>
2898 <category name="OES_draw_texture"/>
2899 <category name="OES_blend_equation_separate"/>
2900 <category name="OES_blend_func_separate"/>
2901 <category name="OES_blend_subtract"/>
2902 <category name="OES_stencil_wrap"/>
2903 <category name="OES_texture_cube_map"/>
2904 <category name="OES_texture_env_crossbar"/>
2905 <category name="OES_texture_mirrored_repeat"/>
2906 <category name="OES_framebuffer_object"/>
2907 <category name="OES_depth24"/>
2908 <category name="OES_depth32"/>
2909 <category name="OES_fbo_render_mipmap"/>
2910 <category name="OES_rgb8_rgba8"/>
2911 <category name="OES_stencil1"/>
2912 <category name="OES_stencil4"/>
2913 <category name="OES_stencil8"/>
2914 <category name="OES_element_index_uint"/>
2915 <category name="OES_mapbuffer"/>
2916 <category name="EXT_texture_filter_anisotropic"/>
2917 <category name="EXT_texture_format_BGRA8888"/>
2918 <category name="EXT_read_format_bgra"/>
2919
2920 <category name="ARB_texture_non_power_of_two"/>
2921 <!-- disabled due to missing enums
2922 <category name="EXT_texture_compression_dxt1"/>
2923 -->
2924 <category name="EXT_texture_lod_bias"/>
2925 <category name="EXT_blend_minmax"/>
2926 <category name="EXT_multi_draw_arrays"/>
2927 <category name="OES_EGL_image"/>
2928 <category name="OES_EGL_image_external"/>
2929
2930 <category name="OES_matrix_palette"/>
2931
2932 <function name="Color4f" external="true" template="Color" gltype="GLfloat" vector_size="4" expand_vector="true"/>
2933 <function name="Color4ub" template="Color" gltype="GLubyte" vector_size="4" expand_vector="true"/>
2934 <function name="Color4x" template="Color" gltype="GLfixed" vector_size="4" expand_vector="true"/>
2935
2936 <function name="ClipPlanef" template="ClipPlane" gltype="GLfloat"/>
2937 <function name="ClipPlanex" template="ClipPlane" gltype="GLfixed"/>
2938
2939 <function name="CullFace" template="CullFace"/>
2940
2941 <function name="Fogf" template="Fog" gltype="GLfloat" expand_vector="true"/>
2942 <function name="Fogx" template="Fog" gltype="GLfixed" expand_vector="true"/>
2943 <function name="Fogfv" template="Fog" gltype="GLfloat"/>
2944 <function name="Fogxv" template="Fog" gltype="GLfixed"/>
2945
2946 <function name="FrontFace" template="FrontFace"/>
2947 <function name="Hint" template="Hint"/>
2948
2949 <function name="Lightf" template="Light" gltype="GLfloat" expand_vector="true"/>
2950 <function name="Lightx" template="Light" gltype="GLfixed" expand_vector="true"/>
2951 <function name="Lightfv" template="Light" gltype="GLfloat"/>
2952 <function name="Lightxv" template="Light" gltype="GLfixed"/>
2953
2954 <function name="LightModelf" template="LightModel" gltype="GLfloat" expand_vector="true"/>
2955 <function name="LightModelx" template="LightModel" gltype="GLfixed" expand_vector="true"/>
2956 <function name="LightModelfv" template="LightModel" gltype="GLfloat"/>
2957 <function name="LightModelxv" template="LightModel" gltype="GLfixed"/>
2958
2959 <function name="LineWidth" template="LineWidth" gltype="GLfloat"/>
2960 <function name="LineWidthx" template="LineWidth" gltype="GLfixed"/>
2961
2962 <function name="Materialf" external="true" template="Material" gltype="GLfloat" expand_vector="true"/>
2963 <function name="Materialfv" external="true" template="Material" gltype="GLfloat"/>
2964 <function name="Materialx" template="Material" gltype="GLfixed" expand_vector="true"/>
2965 <function name="Materialxv" template="Material" gltype="GLfixed"/>
2966
2967 <function name="PointSize" template="PointSize" gltype="GLfloat"/>
2968 <function name="PointSizex" template="PointSize" gltype="GLfixed"/>
2969 <function name="PointSizePointerOES" template="PointSizePointer"/>
2970
2971 <function name="Scissor" template="Scissor"/>
2972 <function name="ShadeModel" template="ShadeModel"/>
2973
2974 <function name="TexParameterf" template="TexParameter" gltype="GLfloat" expand_vector="true"/>
2975 <function name="TexParameterfv" template="TexParameter" gltype="GLfloat"/>
2976 <function name="TexParameteri" template="TexParameter" gltype="GLint" expand_vector="true"/>
2977 <function name="TexParameteriv" template="TexParameter" gltype="GLint"/>
2978 <function name="TexParameterx" template="TexParameter" gltype="GLfixed" expand_vector="true"/>
2979 <function name="TexParameterxv" template="TexParameter" gltype="GLfixed"/>
2980
2981 <function name="TexImage2D" template="TexImage2D"/>
2982
2983 <function name="TexEnvf" template="TexEnv" gltype="GLfloat" expand_vector="true"/>
2984 <function name="TexEnvfv" template="TexEnv" gltype="GLfloat"/>
2985 <function name="TexEnvi" template="TexEnv" gltype="GLint" expand_vector="true"/>
2986 <function name="TexEnviv" template="TexEnv" gltype="GLint"/>
2987 <function name="TexEnvx" template="TexEnv" gltype="GLfixed" expand_vector="true"/>
2988 <function name="TexEnvxv" template="TexEnv" gltype="GLfixed"/>
2989
2990 <function name="TexGenfOES" external="true" template="TexGen" gltype="GLfloat" expand_vector="true"/>
2991 <function name="TexGenfvOES" external="true" template="TexGen" gltype="GLfloat"/>
2992 <function name="TexGeniOES" external="true" template="TexGen" gltype="GLint" expand_vector="true"/>
2993 <function name="TexGenivOES" external="true" template="TexGen" gltype="GLint"/>
2994 <function name="TexGenxOES" external="true" template="TexGen" gltype="GLfixed" expand_vector="true"/>
2995 <function name="TexGenxvOES" external="true" template="TexGen" gltype="GLfixed"/>
2996
2997 <function name="Clear" template="Clear"/>
2998 <function name="ClearColor" template="ClearColor" gltype="GLclampf"/>
2999 <function name="ClearColorx" template="ClearColor" gltype="GLclampx"/>
3000
3001 <function name="ClearStencil" template="ClearStencil"/>
3002 <function name="ClearDepthf" template="ClearDepth" gltype="GLclampf"/>
3003 <function name="ClearDepthx" template="ClearDepth" gltype="GLclampx"/>
3004
3005 <function name="StencilMask" template="StencilMask"/>
3006 <function name="ColorMask" template="ColorMask"/>
3007 <function name="DepthMask" template="DepthMask"/>
3008
3009 <function name="Disable" template="Disable"/>
3010 <function name="Enable" template="Enable"/>
3011 <function name="Finish" template="Finish"/>
3012 <function name="Flush" template="Flush"/>
3013
3014 <function name="AlphaFunc" template="AlphaFunc" gltype="GLclampf"/>
3015 <function name="AlphaFuncx" template="AlphaFunc" gltype="GLclampx"/>
3016
3017 <function name="BlendFunc" template="BlendFunc"/>
3018 <function name="LogicOp" template="LogicOp"/>
3019 <function name="StencilFunc" template="StencilFunc"/>
3020
3021 <function name="StencilOp" template="StencilOp"/>
3022 <function name="DepthFunc" template="DepthFunc"/>
3023
3024 <function name="PixelStorei" template="PixelStore" gltype="GLint"/>
3025 <function name="ReadPixels" template="ReadPixels"/>
3026
3027 <function name="GetBooleanv" template="GetState" gltype="GLboolean"/>
3028
3029 <function name="GetClipPlanef" template="GetClipPlane" gltype="GLfloat"/>
3030 <function name="GetClipPlanex" template="GetClipPlane" gltype="GLfixed"/>
3031
3032 <function name="GetError" template="GetError"/>
3033 <function name="GetFloatv" template="GetState" gltype="GLfloat"/>
3034 <function name="GetFixedv" template="GetState" gltype="GLfixed"/>
3035 <function name="GetIntegerv" template="GetState" gltype="GLint"/>
3036
3037 <function name="GetLightfv" template="GetLight" gltype="GLfloat"/>
3038 <function name="GetLightxv" template="GetLight" gltype="GLfixed"/>
3039
3040 <function name="GetMaterialfv" template="GetMaterial" gltype="GLfloat"/>
3041 <function name="GetMaterialxv" template="GetMaterial" gltype="GLfixed"/>
3042
3043 <function name="GetString" template="GetString"/>
3044
3045 <function name="GetTexEnvfv" template="GetTexEnv" gltype="GLfloat"/>
3046 <function name="GetTexEnviv" template="GetTexEnv" gltype="GLint"/>
3047 <function name="GetTexEnvxv" template="GetTexEnv" gltype="GLfixed"/>
3048
3049 <function name="GetTexGenfvOES" external="true" template="GetTexGen" gltype="GLfloat"/>
3050 <function name="GetTexGenivOES" external="true" template="GetTexGen" gltype="GLint"/>
3051 <function name="GetTexGenxvOES" external="true" template="GetTexGen" gltype="GLfixed"/>
3052
3053 <function name="GetTexParameterfv" template="GetTexParameter" gltype="GLfloat"/>
3054 <function name="GetTexParameteriv" template="GetTexParameter" gltype="GLint"/>
3055 <function name="GetTexParameterxv" template="GetTexParameter" gltype="GLfixed"/>
3056
3057 <function name="IsEnabled" template="IsEnabled"/>
3058
3059 <function name="DepthRangef" template="DepthRange" gltype="GLclampf"/>
3060 <function name="DepthRangex" template="DepthRange" gltype="GLclampx"/>
3061
3062 <function name="Frustumf" template="Frustum" gltype="GLfloat"/>
3063 <function name="Frustumx" template="Frustum" gltype="GLfixed"/>
3064
3065 <function name="LoadIdentity" template="LoadIdentity"/>
3066 <function name="LoadMatrixf" template="LoadMatrix" gltype="GLfloat"/>
3067 <function name="LoadMatrixx" template="LoadMatrix" gltype="GLfixed"/>
3068 <function name="MatrixMode" template="MatrixMode"/>
3069
3070 <function name="MultMatrixf" template="MultMatrix" gltype="GLfloat"/>
3071 <function name="MultMatrixx" template="MultMatrix" gltype="GLfixed"/>
3072 <function name="Orthof" template="Ortho" gltype="GLfloat"/>
3073 <function name="Orthox" template="Ortho" gltype="GLfixed"/>
3074
3075 <function name="PopMatrix" template="PopMatrix"/>
3076 <function name="PushMatrix" template="PushMatrix"/>
3077
3078 <function name="Rotatef" template="Rotate" gltype="GLfloat"/>
3079 <function name="Rotatex" template="Rotate" gltype="GLfixed"/>
3080 <function name="Scalef" template="Scale" gltype="GLfloat"/>
3081 <function name="Scalex" template="Scale" gltype="GLfixed"/>
3082 <function name="Translatef" template="Translate" gltype="GLfloat"/>
3083 <function name="Translatex" template="Translate" gltype="GLfixed"/>
3084
3085 <function name="Viewport" template="Viewport"/>
3086 <function name="ColorPointer" template="ColorPointer"/>
3087 <function name="DisableClientState" template="DisableClientState"/>
3088 <function name="DrawArrays" template="DrawArrays"/>
3089 <function name="DrawElements" template="DrawElements"/>
3090 <function name="EnableClientState" template="EnableClientState"/>
3091
3092 <function name="GetPointerv" template="GetPointer"/>
3093
3094 <function name="Normal3f" external="true" template="Normal" gltype="GLfloat" expand_vector="true"/>
3095 <function name="Normal3x" template="Normal" gltype="GLfixed" expand_vector="true"/>
3096 <function name="NormalPointer" template="NormalPointer"/>
3097 <function name="TexCoordPointer" template="TexCoordPointer"/>
3098 <function name="VertexPointer" template="VertexPointer"/>
3099
3100 <function name="PolygonOffset" template="PolygonOffset" gltype="GLfloat"/>
3101 <function name="PolygonOffsetx" template="PolygonOffset" gltype="GLfixed"/>
3102
3103 <function name="CopyTexImage2D" template="CopyTexImage2D"/>
3104 <function name="CopyTexSubImage2D" template="CopyTexSubImage2D"/>
3105
3106 <function name="TexSubImage2D" template="TexSubImage2D"/>
3107
3108 <function name="BindTexture" template="BindTexture"/>
3109 <function name="DeleteTextures" template="DeleteTextures"/>
3110 <function name="GenTextures" template="GenTextures"/>
3111 <function name="IsTexture" template="IsTexture"/>
3112
3113 <function name="BlendEquationOES" template="BlendEquation"/>
3114 <function name="BlendEquationSeparateOES" template="BlendEquationSeparate"/>
3115
3116 <function name="MultiTexCoord4x" template="MultiTexCoord" gltype="GLfixed" vector_size="4" expand_vector="true"/>
3117
3118 <function name="ActiveTexture" template="ActiveTexture"/>
3119 <function name="ClientActiveTexture" template="ClientActiveTexture"/>
3120
3121 <function name="MultiTexCoord4f" external="true" template="MultiTexCoord" gltype="GLfloat" vector_size="4" expand_vector="true"/>
3122
3123 <function name="SampleCoverage" template="SampleCoverage" gltype="GLclampf"/>
3124 <function name="SampleCoveragex" template="SampleCoverage" gltype="GLclampx"/>
3125
3126 <!-- CompressedTexImage2D calls out to two different functions based on
3127 whether the image is a paletted image or not -->
3128 <function name="CompressedTexImage2D" template="CompressedTexImage2D"/>
3129 <function name="CompressedTexSubImage2D" template="CompressedTexSubImage2D"/>
3130
3131 <function name="BlendFuncSeparateOES" template="BlendFuncSeparate"/>
3132
3133 <function name="PointParameterf" template="PointParameter" gltype="GLfloat" expand_vector="true"/>
3134 <function name="PointParameterfv" template="PointParameter" gltype="GLfloat"/>
3135 <function name="PointParameterx" template="PointParameter" gltype="GLfixed" expand_vector="true"/>
3136 <function name="PointParameterxv" template="PointParameter" gltype="GLfixed"/>
3137
3138 <!-- OES_mapbuffer -->
3139 <function name="GetBufferPointervOES" template="GetBufferPointer"/>
3140 <function name="MapBufferOES" template="MapBuffer"/>
3141 <function name="UnmapBufferOES" template="UnmapBuffer"/>
3142
3143 <function name="BindBuffer" template="BindBuffer"/>
3144 <function name="BufferData" template="BufferData"/>
3145 <function name="BufferSubData" template="BufferSubData"/>
3146 <function name="DeleteBuffers" template="DeleteBuffers"/>
3147 <function name="GenBuffers" template="GenBuffers"/>
3148 <function name="GetBufferParameteriv" template="GetBufferParameter" gltype="GLint"/>
3149 <function name="IsBuffer" template="IsBuffer"/>
3150
3151 <!-- OES_framebuffer_object -->
3152 <function name="GenerateMipmapOES" template="GenerateMipmap"/>
3153 <function name="BindFramebufferOES" template="BindFramebuffer"/>
3154 <function name="DeleteFramebuffersOES" template="DeleteFramebuffers"/>
3155 <function name="GenFramebuffersOES" template="GenFramebuffers"/>
3156 <function name="BindRenderbufferOES" template="BindRenderbuffer"/>
3157 <function name="DeleteRenderbuffersOES" template="DeleteRenderbuffers"/>
3158 <function name="GenRenderbuffersOES" template="GenRenderbuffers"/>
3159 <function name="RenderbufferStorageOES" external="true" template="RenderbufferStorage"/>
3160 <function name="FramebufferRenderbufferOES" template="FramebufferRenderbuffer"/>
3161 <function name="FramebufferTexture2DOES" template="FramebufferTexture2D"/>
3162 <function name="CheckFramebufferStatusOES" template="CheckFramebufferStatus"/>
3163 <function name="GetFramebufferAttachmentParameterivOES" template="GetFramebufferAttachmentParameter" gltype="GLint"/>
3164 <function name="GetRenderbufferParameterivOES" template="GetRenderbufferParameter" gltype="GLint"/>
3165 <function name="IsRenderbufferOES" template="IsRenderbuffer"/>
3166 <function name="IsFramebufferOES" template="IsFramebuffer"/>
3167
3168 <!-- OES_query_matrix -->
3169 <!-- QueryMatrixx returns values in an unusual, decomposed, fixed-value
3170 form; it has its own code for this -->
3171 <function name="QueryMatrixxOES" external="true" template="QueryMatrix" gltype="GLfixed"/>
3172
3173 <!-- OES_draw_texture -->
3174 <function name="DrawTexfOES" template="DrawTex" gltype="GLfloat" expand_vector="true"/>
3175 <function name="DrawTexiOES" template="DrawTex" gltype="GLint" expand_vector="true"/>
3176 <function name="DrawTexsOES" template="DrawTex" gltype="GLshort" expand_vector="true"/>
3177 <function name="DrawTexxOES" template="DrawTex" gltype="GLfixed" expand_vector="true"/>
3178 <function name="DrawTexfvOES" template="DrawTex" gltype="GLfloat"/>
3179 <function name="DrawTexivOES" template="DrawTex" gltype="GLint"/>
3180 <function name="DrawTexsvOES" template="DrawTex" gltype="GLshort"/>
3181 <function name="DrawTexxvOES" template="DrawTex" gltype="GLfixed"/>
3182
3183 <!-- EXT_multi_draw_arrays -->
3184 <function name="MultiDrawArraysEXT" template="MultiDrawArrays"/>
3185 <function name="MultiDrawElementsEXT" template="MultiDrawElements"/>
3186
3187 <!-- OES_EGL_image -->
3188 <function name="EGLImageTargetTexture2DOES" template="EGLImageTargetTexture2D"/>
3189 <function name="EGLImageTargetRenderbufferStorageOES" template="EGLImageTargetRenderbufferStorage"/>
3190 </api>
3191
3192 <api name="GLES2.0">
3193 <category name="GLES2.0"/>
3194
3195 <category name="OES_compressed_paletted_texture"/>
3196 <category name="OES_compressed_ETC1_RGB8_texture"/>
3197 <category name="OES_depth24"/>
3198 <category name="OES_depth32"/>
3199 <category name="OES_fbo_render_mipmap"/>
3200 <category name="OES_rgb8_rgba8"/>
3201 <category name="OES_stencil1"/>
3202 <category name="OES_stencil4"/>
3203 <category name="OES_element_index_uint"/>
3204 <category name="OES_mapbuffer"/>
3205 <category name="OES_texture_3D"/>
3206 <category name="OES_texture_npot"/>
3207 <category name="EXT_texture_filter_anisotropic"/>
3208 <category name="EXT_texture_type_2_10_10_10_REV"/>
3209 <category name="OES_depth_texture"/>
3210 <category name="OES_packed_depth_stencil"/>
3211 <category name="OES_standard_derivatives"/>
3212 <category name="EXT_texture_format_BGRA8888"/>
3213 <category name="EXT_texture_rg"/>
3214 <category name="EXT_read_format_bgra"/>
3215
3216 <category name="EXT_texture_compression_dxt1"/>
3217 <category name="EXT_blend_minmax"/>
3218 <category name="EXT_multi_draw_arrays"/>
3219 <category name="OES_EGL_image"/>
3220 <category name="OES_EGL_image_external"/>
3221 <category name="EXT_unpack_subimage"/>
3222
3223 <category name="NV_draw_buffers"/>
3224 <category name="NV_read_buffer"/>
3225
3226 <function name="DrawBuffersNV" template="DrawBuffers"/>
3227 <function name="ReadBufferNV" template="ReadBuffer"/>
3228
3229 <function name="CullFace" template="CullFace"/>
3230
3231 <function name="FrontFace" template="FrontFace"/>
3232 <function name="Hint" template="Hint"/>
3233
3234 <function name="LineWidth" template="LineWidth" gltype="GLfloat"/>
3235
3236 <function name="Scissor" template="Scissor"/>
3237
3238 <function name="TexParameterf" template="TexParameter" gltype="GLfloat" expand_vector="true"/>
3239 <function name="TexParameterfv" template="TexParameter" gltype="GLfloat"/>
3240 <function name="TexParameteri" template="TexParameter" gltype="GLint" expand_vector="true"/>
3241 <function name="TexParameteriv" template="TexParameter" gltype="GLint"/>
3242
3243 <function name="TexImage2D" template="TexImage2D"/>
3244
3245 <function name="Clear" template="Clear"/>
3246 <function name="ClearColor" template="ClearColor" gltype="GLclampf"/>
3247 <function name="ClearStencil" template="ClearStencil"/>
3248 <function name="ClearDepthf" template="ClearDepth" gltype="GLclampf"/>
3249
3250 <function name="StencilMask" template="StencilMask"/>
3251 <function name="StencilMaskSeparate" template="StencilMaskSeparate"/>
3252 <function name="ColorMask" template="ColorMask"/>
3253 <function name="DepthMask" template="DepthMask"/>
3254 <function name="Disable" template="Disable"/>
3255 <function name="Enable" template="Enable"/>
3256 <function name="Finish" template="Finish"/>
3257 <function name="Flush" template="Flush"/>
3258
3259 <function name="BlendFunc" template="BlendFunc"/>
3260
3261 <function name="StencilFunc" template="StencilFunc"/>
3262 <function name="StencilFuncSeparate" template="StencilFuncSeparate"/>
3263 <function name="StencilOp" template="StencilOp"/>
3264 <function name="StencilOpSeparate" template="StencilOpSeparate"/>
3265
3266 <function name="DepthFunc" template="DepthFunc"/>
3267
3268 <function name="PixelStorei" template="PixelStore" gltype="GLint"/>
3269 <function name="ReadPixels" template="ReadPixels"/>
3270
3271 <function name="GetBooleanv" template="GetState" gltype="GLboolean"/>
3272 <function name="GetError" template="GetError"/>
3273 <function name="GetFloatv" template="GetState" gltype="GLfloat"/>
3274 <function name="GetIntegerv" template="GetState" gltype="GLint"/>
3275
3276 <function name="GetString" template="GetString"/>
3277
3278 <function name="GetTexParameterfv" template="GetTexParameter" gltype="GLfloat"/>
3279 <function name="GetTexParameteriv" template="GetTexParameter" gltype="GLint"/>
3280
3281 <function name="IsEnabled" template="IsEnabled"/>
3282
3283 <function name="DepthRangef" template="DepthRange" gltype="GLclampf"/>
3284
3285 <function name="Viewport" template="Viewport"/>
3286
3287 <function name="DrawArrays" template="DrawArrays"/>
3288 <function name="DrawElements" template="DrawElements"/>
3289
3290 <function name="PolygonOffset" template="PolygonOffset" gltype="GLfloat"/>
3291 <function name="CopyTexImage2D" template="CopyTexImage2D"/>
3292 <function name="CopyTexSubImage2D" template="CopyTexSubImage2D"/>
3293 <function name="TexSubImage2D" template="TexSubImage2D"/>
3294
3295 <function name="BindTexture" template="BindTexture"/>
3296 <function name="DeleteTextures" template="DeleteTextures"/>
3297 <function name="GenTextures" template="GenTextures"/>
3298 <function name="IsTexture" template="IsTexture"/>
3299
3300 <function name="BlendColor" template="BlendColor" gltype="GLclampf"/>
3301 <function name="BlendEquation" template="BlendEquation"/>
3302 <function name="BlendEquationSeparate" template="BlendEquationSeparate"/>
3303
3304 <function name="TexImage3DOES" template="TexImage3D"/>
3305 <function name="TexSubImage3DOES" template="TexSubImage3D"/>
3306 <function name="CopyTexSubImage3DOES" template="CopyTexSubImage3D"/>
3307
3308 <function name="CompressedTexImage3DOES" template="CompressedTexImage3D"/>
3309 <function name="CompressedTexSubImage3DOES" template="CompressedTexSubImage3D"/>
3310
3311 <function name="ActiveTexture" template="ActiveTexture"/>
3312
3313 <function name="SampleCoverage" template="SampleCoverage" gltype="GLclampf"/>
3314
3315 <function name="CompressedTexImage2D" template="CompressedTexImage2D"/>
3316 <function name="CompressedTexSubImage2D" template="CompressedTexSubImage2D"/>
3317
3318 <function name="BlendFuncSeparate" template="BlendFuncSeparate"/>
3319
3320 <function name="VertexAttrib1f" external="true" template="VertexAttrib" gltype="GLfloat" vector_size="1" expand_vector="true"/>
3321 <function name="VertexAttrib2f" external="true" template="VertexAttrib" gltype="GLfloat" vector_size="2" expand_vector="true"/>
3322 <function name="VertexAttrib3f" external="true" template="VertexAttrib" gltype="GLfloat" vector_size="3" expand_vector="true"/>
3323 <function name="VertexAttrib4f" external="true" template="VertexAttrib" gltype="GLfloat" vector_size="4" expand_vector="true"/>
3324 <function name="VertexAttrib1fv" external="true" template="VertexAttrib" gltype="GLfloat" vector_size="1"/>
3325 <function name="VertexAttrib2fv" external="true" template="VertexAttrib" gltype="GLfloat" vector_size="2"/>
3326 <function name="VertexAttrib3fv" external="true" template="VertexAttrib" gltype="GLfloat" vector_size="3"/>
3327 <function name="VertexAttrib4fv" external="true" template="VertexAttrib" gltype="GLfloat" vector_size="4"/>
3328
3329 <function name="VertexAttribPointer" template="VertexAttribPointer"/>
3330
3331 <function name="EnableVertexAttribArray" template="EnableVertexAttribArray"/>
3332 <function name="DisableVertexAttribArray" template="DisableVertexAttribArray"/>
3333
3334 <function name="IsProgram" template="IsProgram"/>
3335 <function name="GetProgramiv" template="GetProgram" gltype="GLint"/>
3336
3337 <function name="GetVertexAttribfv" template="GetVertexAttrib" gltype="GLfloat"/>
3338 <function name="GetVertexAttribiv" template="GetVertexAttrib" gltype="GLint"/>
3339 <function name="GetVertexAttribPointerv" template="GetVertexAttribPointer"/>
3340
3341 <function name="GetBufferPointervOES" template="GetBufferPointer"/>
3342 <function name="MapBufferOES" template="MapBuffer"/>
3343 <function name="UnmapBufferOES" template="UnmapBuffer"/>
3344 <function name="BindBuffer" template="BindBuffer"/>
3345 <function name="BufferData" template="BufferData"/>
3346 <function name="BufferSubData" template="BufferSubData"/>
3347 <function name="DeleteBuffers" template="DeleteBuffers"/>
3348 <function name="GenBuffers" template="GenBuffers"/>
3349 <function name="GetBufferParameteriv" template="GetBufferParameter" gltype="GLint"/>
3350 <function name="IsBuffer" template="IsBuffer"/>
3351
3352 <function name="CreateShader" template="CreateShader"/>
3353 <function name="ShaderSource" template="ShaderSource"/>
3354 <function name="CompileShader" template="CompileShader"/>
3355 <function name="ReleaseShaderCompiler" template="ReleaseShaderCompiler"/>
3356 <function name="DeleteShader" template="DeleteShader"/>
3357 <function name="ShaderBinary" template="ShaderBinary"/>
3358 <function name="CreateProgram" template="CreateProgram"/>
3359 <function name="AttachShader" template="AttachShader"/>
3360 <function name="DetachShader" template="DetachShader"/>
3361 <function name="LinkProgram" template="LinkProgram"/>
3362 <function name="UseProgram" template="UseProgram"/>
3363 <function name="DeleteProgram" template="DeleteProgram"/>
3364
3365 <function name="GetActiveAttrib" template="GetActiveAttrib"/>
3366 <function name="GetAttribLocation" template="GetAttribLocation"/>
3367 <function name="BindAttribLocation" template="BindAttribLocation"/>
3368 <function name="GetUniformLocation" template="GetUniformLocation"/>
3369 <function name="GetActiveUniform" template="GetActiveUniform"/>
3370
3371 <function name="Uniform1f" template="Uniform" gltype="GLfloat" vector_size="1" expand_vector="true"/>
3372 <function name="Uniform2f" template="Uniform" gltype="GLfloat" vector_size="2" expand_vector="true"/>
3373 <function name="Uniform3f" template="Uniform" gltype="GLfloat" vector_size="3" expand_vector="true"/>
3374 <function name="Uniform4f" template="Uniform" gltype="GLfloat" vector_size="4" expand_vector="true"/>
3375 <function name="Uniform1i" template="Uniform" gltype="GLint" vector_size="1" expand_vector="true"/>
3376 <function name="Uniform2i" template="Uniform" gltype="GLint" vector_size="2" expand_vector="true"/>
3377 <function name="Uniform3i" template="Uniform" gltype="GLint" vector_size="3" expand_vector="true"/>
3378 <function name="Uniform4i" template="Uniform" gltype="GLint" vector_size="4" expand_vector="true"/>
3379
3380 <function name="Uniform1fv" template="Uniform" gltype="GLfloat" vector_size="1"/>
3381 <function name="Uniform2fv" template="Uniform" gltype="GLfloat" vector_size="2"/>
3382 <function name="Uniform3fv" template="Uniform" gltype="GLfloat" vector_size="3"/>
3383 <function name="Uniform4fv" template="Uniform" gltype="GLfloat" vector_size="4"/>
3384 <function name="Uniform1iv" template="Uniform" gltype="GLint" vector_size="1"/>
3385 <function name="Uniform2iv" template="Uniform" gltype="GLint" vector_size="2"/>
3386 <function name="Uniform3iv" template="Uniform" gltype="GLint" vector_size="3"/>
3387 <function name="Uniform4iv" template="Uniform" gltype="GLint" vector_size="4"/>
3388
3389 <function name="UniformMatrix2fv" template="UniformMatrix" gltype="GLfloat" vector_size="2"/>
3390 <function name="UniformMatrix3fv" template="UniformMatrix" gltype="GLfloat" vector_size="3"/>
3391 <function name="UniformMatrix4fv" template="UniformMatrix" gltype="GLfloat" vector_size="4"/>
3392
3393 <function name="ValidateProgram" template="ValidateProgram"/>
3394
3395 <function name="GenerateMipmap" template="GenerateMipmap"/>
3396 <function name="BindFramebuffer" template="BindFramebuffer"/>
3397 <function name="DeleteFramebuffers" template="DeleteFramebuffers"/>
3398 <function name="GenFramebuffers" template="GenFramebuffers"/>
3399 <function name="BindRenderbuffer" template="BindRenderbuffer"/>
3400 <function name="DeleteRenderbuffers" template="DeleteRenderbuffers"/>
3401 <function name="GenRenderbuffers" template="GenRenderbuffers"/>
3402 <function name="RenderbufferStorage" external="true" template="RenderbufferStorage"/>
3403 <function name="FramebufferRenderbuffer" template="FramebufferRenderbuffer"/>
3404 <function name="FramebufferTexture2D" template="FramebufferTexture2D"/>
3405 <function name="FramebufferTexture3DOES" template="FramebufferTexture3D"/>
3406 <function name="CheckFramebufferStatus" template="CheckFramebufferStatus"/>
3407 <function name="GetFramebufferAttachmentParameteriv" template="GetFramebufferAttachmentParameter" gltype="GLint"/>
3408 <function name="GetRenderbufferParameteriv" template="GetRenderbufferParameter" gltype="GLint"/>
3409 <function name="IsRenderbuffer" template="IsRenderbuffer"/>
3410 <function name="IsFramebuffer" template="IsFramebuffer"/>
3411
3412 <function name="IsShader" template="IsShader"/>
3413 <function name="GetShaderiv" template="GetShader" gltype="GLint"/>
3414 <function name="GetAttachedShaders" template="GetAttachedShaders"/>
3415 <function name="GetShaderInfoLog" template="GetShaderInfoLog"/>
3416 <function name="GetProgramInfoLog" template="GetProgramInfoLog"/>
3417 <function name="GetShaderSource" template="GetShaderSource"/>
3418 <function name="GetShaderPrecisionFormat" template="GetShaderPrecisionFormat"/>
3419 <function name="GetUniformfv" template="GetUniform" gltype="GLfloat"/>
3420 <function name="GetUniformiv" template="GetUniform" gltype="GLint"/>
3421
3422 <!-- EXT_multi_draw_arrays -->
3423 <function name="MultiDrawArraysEXT" template="MultiDrawArrays"/>
3424 <function name="MultiDrawElementsEXT" template="MultiDrawElements"/>
3425
3426 <!-- OES_EGL_image -->
3427 <function name="EGLImageTargetTexture2DOES" template="EGLImageTargetTexture2D"/>
3428 <function name="EGLImageTargetRenderbufferStorageOES" template="EGLImageTargetRenderbufferStorage"/>
3429 </api>
3430
3431 </apispec>