Merge branch 'xa_branch'
[mesa.git] / include / GLES / glext.h
1 #ifndef __glext_h_
2 #define __glext_h_
3
4 /* $Revision: 10965 $ on $Date:: 2010-04-09 02:11:29 -0700 #$ */
5
6 #ifdef __cplusplus
7 extern "C" {
8 #endif
9
10 /*
11 * This document is licensed under the SGI Free Software B License Version
12 * 2.0. For details, see http://oss.sgi.com/projects/FreeB/ .
13 */
14
15 #ifndef GL_APIENTRYP
16 # define GL_APIENTRYP GL_APIENTRY*
17 #endif
18
19 /*------------------------------------------------------------------------*
20 * OES extension tokens
21 *------------------------------------------------------------------------*/
22
23 /* GL_OES_blend_equation_separate */
24 #ifndef GL_OES_blend_equation_separate
25 /* BLEND_EQUATION_RGB_OES same as BLEND_EQUATION_OES */
26 #define GL_BLEND_EQUATION_RGB_OES 0x8009
27 #define GL_BLEND_EQUATION_ALPHA_OES 0x883D
28 #endif
29
30 /* GL_OES_blend_func_separate */
31 #ifndef GL_OES_blend_func_separate
32 #define GL_BLEND_DST_RGB_OES 0x80C8
33 #define GL_BLEND_SRC_RGB_OES 0x80C9
34 #define GL_BLEND_DST_ALPHA_OES 0x80CA
35 #define GL_BLEND_SRC_ALPHA_OES 0x80CB
36 #endif
37
38 /* GL_OES_blend_subtract */
39 #ifndef GL_OES_blend_subtract
40 #define GL_BLEND_EQUATION_OES 0x8009
41 #define GL_FUNC_ADD_OES 0x8006
42 #define GL_FUNC_SUBTRACT_OES 0x800A
43 #define GL_FUNC_REVERSE_SUBTRACT_OES 0x800B
44 #endif
45
46 /* GL_OES_compressed_ETC1_RGB8_texture */
47 #ifndef GL_OES_compressed_ETC1_RGB8_texture
48 #define GL_ETC1_RGB8_OES 0x8D64
49 #endif
50
51 /* GL_OES_depth24 */
52 #ifndef GL_OES_depth24
53 #define GL_DEPTH_COMPONENT24_OES 0x81A6
54 #endif
55
56 /* GL_OES_depth32 */
57 #ifndef GL_OES_depth32
58 #define GL_DEPTH_COMPONENT32_OES 0x81A7
59 #endif
60
61 /* GL_OES_draw_texture */
62 #ifndef GL_OES_draw_texture
63 #define GL_TEXTURE_CROP_RECT_OES 0x8B9D
64 #endif
65
66 /* GL_OES_EGL_image */
67 #ifndef GL_OES_EGL_image
68 typedef void* GLeglImageOES;
69 #endif
70
71 /* GL_OES_element_index_uint */
72 #ifndef GL_OES_element_index_uint
73 #define GL_UNSIGNED_INT 0x1405
74 #endif
75
76 /* GL_OES_fixed_point */
77 #ifndef GL_OES_fixed_point
78 #define GL_FIXED_OES 0x140C
79 #endif
80
81 /* GL_OES_framebuffer_object */
82 #ifndef GL_OES_framebuffer_object
83 #define GL_NONE_OES 0
84 #define GL_FRAMEBUFFER_OES 0x8D40
85 #define GL_RENDERBUFFER_OES 0x8D41
86 #define GL_RGBA4_OES 0x8056
87 #define GL_RGB5_A1_OES 0x8057
88 #define GL_RGB565_OES 0x8D62
89 #define GL_DEPTH_COMPONENT16_OES 0x81A5
90 #define GL_RENDERBUFFER_WIDTH_OES 0x8D42
91 #define GL_RENDERBUFFER_HEIGHT_OES 0x8D43
92 #define GL_RENDERBUFFER_INTERNAL_FORMAT_OES 0x8D44
93 #define GL_RENDERBUFFER_RED_SIZE_OES 0x8D50
94 #define GL_RENDERBUFFER_GREEN_SIZE_OES 0x8D51
95 #define GL_RENDERBUFFER_BLUE_SIZE_OES 0x8D52
96 #define GL_RENDERBUFFER_ALPHA_SIZE_OES 0x8D53
97 #define GL_RENDERBUFFER_DEPTH_SIZE_OES 0x8D54
98 #define GL_RENDERBUFFER_STENCIL_SIZE_OES 0x8D55
99 #define GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE_OES 0x8CD0
100 #define GL_FRAMEBUFFER_ATTACHMENT_OBJECT_NAME_OES 0x8CD1
101 #define GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL_OES 0x8CD2
102 #define GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE_OES 0x8CD3
103 #define GL_COLOR_ATTACHMENT0_OES 0x8CE0
104 #define GL_DEPTH_ATTACHMENT_OES 0x8D00
105 #define GL_STENCIL_ATTACHMENT_OES 0x8D20
106 #define GL_FRAMEBUFFER_COMPLETE_OES 0x8CD5
107 #define GL_FRAMEBUFFER_INCOMPLETE_ATTACHMENT_OES 0x8CD6
108 #define GL_FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT_OES 0x8CD7
109 #define GL_FRAMEBUFFER_INCOMPLETE_DIMENSIONS_OES 0x8CD9
110 #define GL_FRAMEBUFFER_INCOMPLETE_FORMATS_OES 0x8CDA
111 #define GL_FRAMEBUFFER_UNSUPPORTED_OES 0x8CDD
112 #define GL_FRAMEBUFFER_BINDING_OES 0x8CA6
113 #define GL_RENDERBUFFER_BINDING_OES 0x8CA7
114 #define GL_MAX_RENDERBUFFER_SIZE_OES 0x84E8
115 #define GL_INVALID_FRAMEBUFFER_OPERATION_OES 0x0506
116 #endif
117
118 /* GL_OES_mapbuffer */
119 #ifndef GL_OES_mapbuffer
120 #define GL_WRITE_ONLY_OES 0x88B9
121 #define GL_BUFFER_ACCESS_OES 0x88BB
122 #define GL_BUFFER_MAPPED_OES 0x88BC
123 #define GL_BUFFER_MAP_POINTER_OES 0x88BD
124 #endif
125
126 /* GL_OES_matrix_get */
127 #ifndef GL_OES_matrix_get
128 #define GL_MODELVIEW_MATRIX_FLOAT_AS_INT_BITS_OES 0x898D
129 #define GL_PROJECTION_MATRIX_FLOAT_AS_INT_BITS_OES 0x898E
130 #define GL_TEXTURE_MATRIX_FLOAT_AS_INT_BITS_OES 0x898F
131 #endif
132
133 /* GL_OES_matrix_palette */
134 #ifndef GL_OES_matrix_palette
135 #define GL_MAX_VERTEX_UNITS_OES 0x86A4
136 #define GL_MAX_PALETTE_MATRICES_OES 0x8842
137 #define GL_MATRIX_PALETTE_OES 0x8840
138 #define GL_MATRIX_INDEX_ARRAY_OES 0x8844
139 #define GL_WEIGHT_ARRAY_OES 0x86AD
140 #define GL_CURRENT_PALETTE_MATRIX_OES 0x8843
141 #define GL_MATRIX_INDEX_ARRAY_SIZE_OES 0x8846
142 #define GL_MATRIX_INDEX_ARRAY_TYPE_OES 0x8847
143 #define GL_MATRIX_INDEX_ARRAY_STRIDE_OES 0x8848
144 #define GL_MATRIX_INDEX_ARRAY_POINTER_OES 0x8849
145 #define GL_MATRIX_INDEX_ARRAY_BUFFER_BINDING_OES 0x8B9E
146 #define GL_WEIGHT_ARRAY_SIZE_OES 0x86AB
147 #define GL_WEIGHT_ARRAY_TYPE_OES 0x86A9
148 #define GL_WEIGHT_ARRAY_STRIDE_OES 0x86AA
149 #define GL_WEIGHT_ARRAY_POINTER_OES 0x86AC
150 #define GL_WEIGHT_ARRAY_BUFFER_BINDING_OES 0x889E
151 #endif
152
153 /* GL_OES_packed_depth_stencil */
154 #ifndef GL_OES_packed_depth_stencil
155 #define GL_DEPTH_STENCIL_OES 0x84F9
156 #define GL_UNSIGNED_INT_24_8_OES 0x84FA
157 #define GL_DEPTH24_STENCIL8_OES 0x88F0
158 #endif
159
160 /* GL_OES_rgb8_rgba8 */
161 #ifndef GL_OES_rgb8_rgba8
162 #define GL_RGB8_OES 0x8051
163 #define GL_RGBA8_OES 0x8058
164 #endif
165
166 /* GL_OES_stencil1 */
167 #ifndef GL_OES_stencil1
168 #define GL_STENCIL_INDEX1_OES 0x8D46
169 #endif
170
171 /* GL_OES_stencil4 */
172 #ifndef GL_OES_stencil4
173 #define GL_STENCIL_INDEX4_OES 0x8D47
174 #endif
175
176 /* GL_OES_stencil8 */
177 #ifndef GL_OES_stencil8
178 #define GL_STENCIL_INDEX8_OES 0x8D48
179 #endif
180
181 /* GL_OES_stencil_wrap */
182 #ifndef GL_OES_stencil_wrap
183 #define GL_INCR_WRAP_OES 0x8507
184 #define GL_DECR_WRAP_OES 0x8508
185 #endif
186
187 /* GL_OES_texture_cube_map */
188 #ifndef GL_OES_texture_cube_map
189 #define GL_NORMAL_MAP_OES 0x8511
190 #define GL_REFLECTION_MAP_OES 0x8512
191 #define GL_TEXTURE_CUBE_MAP_OES 0x8513
192 #define GL_TEXTURE_BINDING_CUBE_MAP_OES 0x8514
193 #define GL_TEXTURE_CUBE_MAP_POSITIVE_X_OES 0x8515
194 #define GL_TEXTURE_CUBE_MAP_NEGATIVE_X_OES 0x8516
195 #define GL_TEXTURE_CUBE_MAP_POSITIVE_Y_OES 0x8517
196 #define GL_TEXTURE_CUBE_MAP_NEGATIVE_Y_OES 0x8518
197 #define GL_TEXTURE_CUBE_MAP_POSITIVE_Z_OES 0x8519
198 #define GL_TEXTURE_CUBE_MAP_NEGATIVE_Z_OES 0x851A
199 #define GL_MAX_CUBE_MAP_TEXTURE_SIZE_OES 0x851C
200 #define GL_TEXTURE_GEN_MODE_OES 0x2500
201 #define GL_TEXTURE_GEN_STR_OES 0x8D60
202 #endif
203
204 /* GL_OES_texture_mirrored_repeat */
205 #ifndef GL_OES_texture_mirrored_repeat
206 #define GL_MIRRORED_REPEAT_OES 0x8370
207 #endif
208
209 /* GL_OES_vertex_array_object */
210 #ifndef GL_OES_vertex_array_object
211 #define GL_VERTEX_ARRAY_BINDING_OES 0x85B5
212 #endif
213
214 /*------------------------------------------------------------------------*
215 * AMD extension tokens
216 *------------------------------------------------------------------------*/
217
218 /* GL_AMD_compressed_3DC_texture */
219 #ifndef GL_AMD_compressed_3DC_texture
220 #define GL_3DC_X_AMD 0x87F9
221 #define GL_3DC_XY_AMD 0x87FA
222 #endif
223
224 /* GL_AMD_compressed_ATC_texture */
225 #ifndef GL_AMD_compressed_ATC_texture
226 #define GL_ATC_RGB_AMD 0x8C92
227 #define GL_ATC_RGBA_EXPLICIT_ALPHA_AMD 0x8C93
228 #define GL_ATC_RGBA_INTERPOLATED_ALPHA_AMD 0x87EE
229 #endif
230
231 /*------------------------------------------------------------------------*
232 * APPLE extension tokens
233 *------------------------------------------------------------------------*/
234
235 /* GL_APPLE_texture_2D_limited_npot */
236 /* No new tokens introduced by this extension. */
237
238 /*------------------------------------------------------------------------*
239 * EXT extension tokens
240 *------------------------------------------------------------------------*/
241
242 /* GL_EXT_blend_minmax */
243 #ifndef GL_EXT_blend_minmax
244 #define GL_MIN_EXT 0x8007
245 #define GL_MAX_EXT 0x8008
246 #endif
247
248 /* GL_EXT_discard_framebuffer */
249 #ifndef GL_EXT_discard_framebuffer
250 #define GL_COLOR_EXT 0x1800
251 #define GL_DEPTH_EXT 0x1801
252 #define GL_STENCIL_EXT 0x1802
253 #endif
254
255 /* GL_EXT_multi_draw_arrays */
256 /* No new tokens introduced by this extension. */
257
258 /* GL_EXT_read_format_bgra */
259 #ifndef GL_EXT_read_format_bgra
260 #define GL_BGRA_EXT 0x80E1
261 #define GL_UNSIGNED_SHORT_4_4_4_4_REV_EXT 0x8365
262 #define GL_UNSIGNED_SHORT_1_5_5_5_REV_EXT 0x8366
263 #endif
264
265 /* GL_EXT_texture_filter_anisotropic */
266 #ifndef GL_EXT_texture_filter_anisotropic
267 #define GL_TEXTURE_MAX_ANISOTROPY_EXT 0x84FE
268 #define GL_MAX_TEXTURE_MAX_ANISOTROPY_EXT 0x84FF
269 #endif
270
271 /* GL_EXT_texture_format_BGRA8888 */
272 #ifndef GL_EXT_texture_format_BGRA8888
273 #define GL_BGRA_EXT 0x80E1
274 #endif
275
276 /* GL_EXT_texture_lod_bias */
277 #ifndef GL_EXT_texture_lod_bias
278 #define GL_MAX_TEXTURE_LOD_BIAS_EXT 0x84FD
279 #define GL_TEXTURE_FILTER_CONTROL_EXT 0x8500
280 #define GL_TEXTURE_LOD_BIAS_EXT 0x8501
281 #endif
282
283 /*------------------------------------------------------------------------*
284 * IMG extension tokens
285 *------------------------------------------------------------------------*/
286
287 /* GL_IMG_read_format */
288 #ifndef GL_IMG_read_format
289 #define GL_BGRA_IMG 0x80E1
290 #define GL_UNSIGNED_SHORT_4_4_4_4_REV_IMG 0x8365
291 #endif
292
293 /* GL_IMG_texture_compression_pvrtc */
294 #ifndef GL_IMG_texture_compression_pvrtc
295 #define GL_COMPRESSED_RGB_PVRTC_4BPPV1_IMG 0x8C00
296 #define GL_COMPRESSED_RGB_PVRTC_2BPPV1_IMG 0x8C01
297 #define GL_COMPRESSED_RGBA_PVRTC_4BPPV1_IMG 0x8C02
298 #define GL_COMPRESSED_RGBA_PVRTC_2BPPV1_IMG 0x8C03
299 #endif
300
301 /* GL_IMG_texture_env_enhanced_fixed_function */
302 #ifndef GL_IMG_texture_env_enhanced_fixed_function
303 #define GL_MODULATE_COLOR_IMG 0x8C04
304 #define GL_RECIP_ADD_SIGNED_ALPHA_IMG 0x8C05
305 #define GL_TEXTURE_ALPHA_MODULATE_IMG 0x8C06
306 #define GL_FACTOR_ALPHA_MODULATE_IMG 0x8C07
307 #define GL_FRAGMENT_ALPHA_MODULATE_IMG 0x8C08
308 #define GL_ADD_BLEND_IMG 0x8C09
309 #define GL_DOT3_RGBA_IMG 0x86AF
310 #endif
311
312 /* GL_IMG_user_clip_plane */
313 #ifndef GL_IMG_user_clip_plane
314 #define GL_CLIP_PLANE0_IMG 0x3000
315 #define GL_CLIP_PLANE1_IMG 0x3001
316 #define GL_CLIP_PLANE2_IMG 0x3002
317 #define GL_CLIP_PLANE3_IMG 0x3003
318 #define GL_CLIP_PLANE4_IMG 0x3004
319 #define GL_CLIP_PLANE5_IMG 0x3005
320 #define GL_MAX_CLIP_PLANES_IMG 0x0D32
321 #endif
322
323 /* GL_IMG_multisampled_render_to_texture */
324 #ifndef GL_IMG_multisampled_render_to_texture
325 #define GL_RENDERBUFFER_SAMPLES_IMG 0x9133
326 #define GL_FRAMEBUFFER_INCOMPLETE_MULTISAMPLE_IMG 0x9134
327 #define GL_MAX_SAMPLES_IMG 0x9135
328 #define GL_TEXTURE_SAMPLES_IMG 0x9136
329 #endif
330
331 /*------------------------------------------------------------------------*
332 * NV extension tokens
333 *------------------------------------------------------------------------*/
334
335 /* GL_NV_fence */
336 #ifndef GL_NV_fence
337 #define GL_ALL_COMPLETED_NV 0x84F2
338 #define GL_FENCE_STATUS_NV 0x84F3
339 #define GL_FENCE_CONDITION_NV 0x84F4
340 #endif
341
342 /*------------------------------------------------------------------------*
343 * QCOM extension tokens
344 *------------------------------------------------------------------------*/
345
346 /* GL_QCOM_driver_control */
347 /* No new tokens introduced by this extension. */
348
349 /* GL_QCOM_extended_get */
350 #ifndef GL_QCOM_extended_get
351 #define GL_TEXTURE_WIDTH_QCOM 0x8BD2
352 #define GL_TEXTURE_HEIGHT_QCOM 0x8BD3
353 #define GL_TEXTURE_DEPTH_QCOM 0x8BD4
354 #define GL_TEXTURE_INTERNAL_FORMAT_QCOM 0x8BD5
355 #define GL_TEXTURE_FORMAT_QCOM 0x8BD6
356 #define GL_TEXTURE_TYPE_QCOM 0x8BD7
357 #define GL_TEXTURE_IMAGE_VALID_QCOM 0x8BD8
358 #define GL_TEXTURE_NUM_LEVELS_QCOM 0x8BD9
359 #define GL_TEXTURE_TARGET_QCOM 0x8BDA
360 #define GL_TEXTURE_OBJECT_VALID_QCOM 0x8BDB
361 #define GL_STATE_RESTORE 0x8BDC
362 #endif
363
364 /* GL_QCOM_extended_get2 */
365 /* No new tokens introduced by this extension. */
366
367 /* GL_QCOM_perfmon_global_mode */
368 #ifndef GL_QCOM_perfmon_global_mode
369 #define GL_PERFMON_GLOBAL_MODE_QCOM 0x8FA0
370 #endif
371
372 /* GL_QCOM_writeonly_rendering */
373 #ifndef GL_QCOM_writeonly_rendering
374 #define GL_WRITEONLY_RENDERING_QCOM 0x8823
375 #endif
376
377 /* GL_QCOM_tiled_rendering */
378 #ifndef GL_QCOM_tiled_rendering
379 #define GL_COLOR_BUFFER_BIT0_QCOM 0x00000001
380 #define GL_COLOR_BUFFER_BIT1_QCOM 0x00000002
381 #define GL_COLOR_BUFFER_BIT2_QCOM 0x00000004
382 #define GL_COLOR_BUFFER_BIT3_QCOM 0x00000008
383 #define GL_COLOR_BUFFER_BIT4_QCOM 0x00000010
384 #define GL_COLOR_BUFFER_BIT5_QCOM 0x00000020
385 #define GL_COLOR_BUFFER_BIT6_QCOM 0x00000040
386 #define GL_COLOR_BUFFER_BIT7_QCOM 0x00000080
387 #define GL_DEPTH_BUFFER_BIT0_QCOM 0x00000100
388 #define GL_DEPTH_BUFFER_BIT1_QCOM 0x00000200
389 #define GL_DEPTH_BUFFER_BIT2_QCOM 0x00000400
390 #define GL_DEPTH_BUFFER_BIT3_QCOM 0x00000800
391 #define GL_DEPTH_BUFFER_BIT4_QCOM 0x00001000
392 #define GL_DEPTH_BUFFER_BIT5_QCOM 0x00002000
393 #define GL_DEPTH_BUFFER_BIT6_QCOM 0x00004000
394 #define GL_DEPTH_BUFFER_BIT7_QCOM 0x00008000
395 #define GL_STENCIL_BUFFER_BIT0_QCOM 0x00010000
396 #define GL_STENCIL_BUFFER_BIT1_QCOM 0x00020000
397 #define GL_STENCIL_BUFFER_BIT2_QCOM 0x00040000
398 #define GL_STENCIL_BUFFER_BIT3_QCOM 0x00080000
399 #define GL_STENCIL_BUFFER_BIT4_QCOM 0x00100000
400 #define GL_STENCIL_BUFFER_BIT5_QCOM 0x00200000
401 #define GL_STENCIL_BUFFER_BIT6_QCOM 0x00400000
402 #define GL_STENCIL_BUFFER_BIT7_QCOM 0x00800000
403 #define GL_MULTISAMPLE_BUFFER_BIT0_QCOM 0x01000000
404 #define GL_MULTISAMPLE_BUFFER_BIT1_QCOM 0x02000000
405 #define GL_MULTISAMPLE_BUFFER_BIT2_QCOM 0x04000000
406 #define GL_MULTISAMPLE_BUFFER_BIT3_QCOM 0x08000000
407 #define GL_MULTISAMPLE_BUFFER_BIT4_QCOM 0x10000000
408 #define GL_MULTISAMPLE_BUFFER_BIT5_QCOM 0x20000000
409 #define GL_MULTISAMPLE_BUFFER_BIT6_QCOM 0x40000000
410 #define GL_MULTISAMPLE_BUFFER_BIT7_QCOM 0x80000000
411 #endif
412
413 /*------------------------------------------------------------------------*
414 * End of extension tokens, start of corresponding extension functions
415 *------------------------------------------------------------------------*/
416
417 /*------------------------------------------------------------------------*
418 * OES extension functions
419 *------------------------------------------------------------------------*/
420
421 /* GL_OES_blend_equation_separate */
422 #ifndef GL_OES_blend_equation_separate
423 #define GL_OES_blend_equation_separate 1
424 #ifdef GL_GLEXT_PROTOTYPES
425 GL_API void GL_APIENTRY glBlendEquationSeparateOES (GLenum modeRGB, GLenum modeAlpha);
426 #endif
427 typedef void (GL_APIENTRYP PFNGLBLENDEQUATIONSEPARATEOESPROC) (GLenum modeRGB, GLenum modeAlpha);
428 #endif
429
430 /* GL_OES_blend_func_separate */
431 #ifndef GL_OES_blend_func_separate
432 #define GL_OES_blend_func_separate 1
433 #ifdef GL_GLEXT_PROTOTYPES
434 GL_API void GL_APIENTRY glBlendFuncSeparateOES (GLenum srcRGB, GLenum dstRGB, GLenum srcAlpha, GLenum dstAlpha);
435 #endif
436 typedef void (GL_APIENTRYP PFNGLBLENDFUNCSEPARATEOESPROC) (GLenum srcRGB, GLenum dstRGB, GLenum srcAlpha, GLenum dstAlpha);
437 #endif
438
439 /* GL_OES_blend_subtract */
440 #ifndef GL_OES_blend_subtract
441 #define GL_OES_blend_subtract 1
442 #ifdef GL_GLEXT_PROTOTYPES
443 GL_API void GL_APIENTRY glBlendEquationOES (GLenum mode);
444 #endif
445 typedef void (GL_APIENTRYP PFNGLBLENDEQUATIONOESPROC) (GLenum mode);
446 #endif
447
448 /* GL_OES_byte_coordinates */
449 #ifndef GL_OES_byte_coordinates
450 #define GL_OES_byte_coordinates 1
451 #endif
452
453 /* GL_OES_compressed_ETC1_RGB8_texture */
454 #ifndef GL_OES_compressed_ETC1_RGB8_texture
455 #define GL_OES_compressed_ETC1_RGB8_texture 1
456 #endif
457
458 /* GL_OES_depth24 */
459 #ifndef GL_OES_depth24
460 #define GL_OES_depth24 1
461 #endif
462
463 /* GL_OES_depth32 */
464 #ifndef GL_OES_depth32
465 #define GL_OES_depth32 1
466 #endif
467
468 /* GL_OES_draw_texture */
469 #ifndef GL_OES_draw_texture
470 #define GL_OES_draw_texture 1
471 #ifdef GL_GLEXT_PROTOTYPES
472 GL_API void GL_APIENTRY glDrawTexsOES (GLshort x, GLshort y, GLshort z, GLshort width, GLshort height);
473 GL_API void GL_APIENTRY glDrawTexiOES (GLint x, GLint y, GLint z, GLint width, GLint height);
474 GL_API void GL_APIENTRY glDrawTexxOES (GLfixed x, GLfixed y, GLfixed z, GLfixed width, GLfixed height);
475 GL_API void GL_APIENTRY glDrawTexsvOES (const GLshort *coords);
476 GL_API void GL_APIENTRY glDrawTexivOES (const GLint *coords);
477 GL_API void GL_APIENTRY glDrawTexxvOES (const GLfixed *coords);
478 GL_API void GL_APIENTRY glDrawTexfOES (GLfloat x, GLfloat y, GLfloat z, GLfloat width, GLfloat height);
479 GL_API void GL_APIENTRY glDrawTexfvOES (const GLfloat *coords);
480 #endif
481 typedef void (GL_APIENTRYP PFNGLDRAWTEXSOESPROC) (GLshort x, GLshort y, GLshort z, GLshort width, GLshort height);
482 typedef void (GL_APIENTRYP PFNGLDRAWTEXIOESPROC) (GLint x, GLint y, GLint z, GLint width, GLint height);
483 typedef void (GL_APIENTRYP PFNGLDRAWTEXXOESPROC) (GLfixed x, GLfixed y, GLfixed z, GLfixed width, GLfixed height);
484 typedef void (GL_APIENTRYP PFNGLDRAWTEXSVOESPROC) (const GLshort *coords);
485 typedef void (GL_APIENTRYP PFNGLDRAWTEXIVOESPROC) (const GLint *coords);
486 typedef void (GL_APIENTRYP PFNGLDRAWTEXXVOESPROC) (const GLfixed *coords);
487 typedef void (GL_APIENTRYP PFNGLDRAWTEXFOESPROC) (GLfloat x, GLfloat y, GLfloat z, GLfloat width, GLfloat height);
488 typedef void (GL_APIENTRYP PFNGLDRAWTEXFVOESPROC) (const GLfloat *coords);
489 #endif
490
491 /* GL_OES_EGL_image */
492 #ifndef GL_OES_EGL_image
493 #define GL_OES_EGL_image 1
494 #ifdef GL_GLEXT_PROTOTYPES
495 GL_API void GL_APIENTRY glEGLImageTargetTexture2DOES (GLenum target, GLeglImageOES image);
496 GL_API void GL_APIENTRY glEGLImageTargetRenderbufferStorageOES (GLenum target, GLeglImageOES image);
497 #endif
498 typedef void (GL_APIENTRYP PFNGLEGLIMAGETARGETTEXTURE2DOESPROC) (GLenum target, GLeglImageOES image);
499 typedef void (GL_APIENTRYP PFNGLEGLIMAGETARGETRENDERBUFFERSTORAGEOESPROC) (GLenum target, GLeglImageOES image);
500 #endif
501
502 /* GL_OES_element_index_uint */
503 #ifndef GL_OES_element_index_uint
504 #define GL_OES_element_index_uint 1
505 #endif
506
507 /* GL_OES_extended_matrix_palette */
508 #ifndef GL_OES_extended_matrix_palette
509 #define GL_OES_extended_matrix_palette 1
510 #endif
511
512 /* GL_OES_fbo_render_mipmap */
513 #ifndef GL_OES_fbo_render_mipmap
514 #define GL_OES_fbo_render_mipmap 1
515 #endif
516
517 /* GL_OES_fixed_point */
518 #ifndef GL_OES_fixed_point
519 #define GL_OES_fixed_point 1
520 #ifdef GL_GLEXT_PROTOTYPES
521 GL_API void GL_APIENTRY glAlphaFuncxOES (GLenum func, GLclampx ref);
522 GL_API void GL_APIENTRY glClearColorxOES (GLclampx red, GLclampx green, GLclampx blue, GLclampx alpha);
523 GL_API void GL_APIENTRY glClearDepthxOES (GLclampx depth);
524 GL_API void GL_APIENTRY glClipPlanexOES (GLenum plane, const GLfixed *equation);
525 GL_API void GL_APIENTRY glColor4xOES (GLfixed red, GLfixed green, GLfixed blue, GLfixed alpha);
526 GL_API void GL_APIENTRY glDepthRangexOES (GLclampx zNear, GLclampx zFar);
527 GL_API void GL_APIENTRY glFogxOES (GLenum pname, GLfixed param);
528 GL_API void GL_APIENTRY glFogxvOES (GLenum pname, const GLfixed *params);
529 GL_API void GL_APIENTRY glFrustumxOES (GLfixed left, GLfixed right, GLfixed bottom, GLfixed top, GLfixed zNear, GLfixed zFar);
530 GL_API void GL_APIENTRY glGetClipPlanexOES (GLenum pname, GLfixed eqn[4]);
531 GL_API void GL_APIENTRY glGetFixedvOES (GLenum pname, GLfixed *params);
532 GL_API void GL_APIENTRY glGetLightxvOES (GLenum light, GLenum pname, GLfixed *params);
533 GL_API void GL_APIENTRY glGetMaterialxvOES (GLenum face, GLenum pname, GLfixed *params);
534 GL_API void GL_APIENTRY glGetTexEnvxvOES (GLenum env, GLenum pname, GLfixed *params);
535 GL_API void GL_APIENTRY glGetTexParameterxvOES (GLenum target, GLenum pname, GLfixed *params);
536 GL_API void GL_APIENTRY glLightModelxOES (GLenum pname, GLfixed param);
537 GL_API void GL_APIENTRY glLightModelxvOES (GLenum pname, const GLfixed *params);
538 GL_API void GL_APIENTRY glLightxOES (GLenum light, GLenum pname, GLfixed param);
539 GL_API void GL_APIENTRY glLightxvOES (GLenum light, GLenum pname, const GLfixed *params);
540 GL_API void GL_APIENTRY glLineWidthxOES (GLfixed width);
541 GL_API void GL_APIENTRY glLoadMatrixxOES (const GLfixed *m);
542 GL_API void GL_APIENTRY glMaterialxOES (GLenum face, GLenum pname, GLfixed param);
543 GL_API void GL_APIENTRY glMaterialxvOES (GLenum face, GLenum pname, const GLfixed *params);
544 GL_API void GL_APIENTRY glMultMatrixxOES (const GLfixed *m);
545 GL_API void GL_APIENTRY glMultiTexCoord4xOES (GLenum target, GLfixed s, GLfixed t, GLfixed r, GLfixed q);
546 GL_API void GL_APIENTRY glNormal3xOES (GLfixed nx, GLfixed ny, GLfixed nz);
547 GL_API void GL_APIENTRY glOrthoxOES (GLfixed left, GLfixed right, GLfixed bottom, GLfixed top, GLfixed zNear, GLfixed zFar);
548 GL_API void GL_APIENTRY glPointParameterxOES (GLenum pname, GLfixed param);
549 GL_API void GL_APIENTRY glPointParameterxvOES (GLenum pname, const GLfixed *params);
550 GL_API void GL_APIENTRY glPointSizexOES (GLfixed size);
551 GL_API void GL_APIENTRY glPolygonOffsetxOES (GLfixed factor, GLfixed units);
552 GL_API void GL_APIENTRY glRotatexOES (GLfixed angle, GLfixed x, GLfixed y, GLfixed z);
553 GL_API void GL_APIENTRY glSampleCoveragexOES (GLclampx value, GLboolean invert);
554 GL_API void GL_APIENTRY glScalexOES (GLfixed x, GLfixed y, GLfixed z);
555 GL_API void GL_APIENTRY glTexEnvxOES (GLenum target, GLenum pname, GLfixed param);
556 GL_API void GL_APIENTRY glTexEnvxvOES (GLenum target, GLenum pname, const GLfixed *params);
557 GL_API void GL_APIENTRY glTexParameterxOES (GLenum target, GLenum pname, GLfixed param);
558 GL_API void GL_APIENTRY glTexParameterxvOES (GLenum target, GLenum pname, const GLfixed *params);
559 GL_API void GL_APIENTRY glTranslatexOES (GLfixed x, GLfixed y, GLfixed z);
560 #endif
561 typedef void (GL_APIENTRYP PFNGLALPHAFUNCXOESPROC) (GLenum func, GLclampx ref);
562 typedef void (GL_APIENTRYP PFNGLCLEARCOLORXOESPROC) (GLclampx red, GLclampx green, GLclampx blue, GLclampx alpha);
563 typedef void (GL_APIENTRYP PFNGLCLEARDEPTHXOESPROC) (GLclampx depth);
564 typedef void (GL_APIENTRYP PFNGLCLIPPLANEXOESPROC) (GLenum plane, const GLfixed *equation);
565 typedef void (GL_APIENTRYP PFNGLCOLOR4XOESPROC) (GLfixed red, GLfixed green, GLfixed blue, GLfixed alpha);
566 typedef void (GL_APIENTRYP PFNGLDEPTHRANGEXOESPROC) (GLclampx zNear, GLclampx zFar);
567 typedef void (GL_APIENTRYP PFNGLFOGXOESPROC) (GLenum pname, GLfixed param);
568 typedef void (GL_APIENTRYP PFNGLFOGXVOESPROC) (GLenum pname, const GLfixed *params);
569 typedef void (GL_APIENTRYP PFNGLFRUSTUMXOESPROC) (GLfixed left, GLfixed right, GLfixed bottom, GLfixed top, GLfixed zNear, GLfixed zFar);
570 typedef void (GL_APIENTRYP PFNGLGETCLIPPLANEXOESPROC) (GLenum pname, GLfixed eqn[4]);
571 typedef void (GL_APIENTRYP PFNGLGETFIXEDVOESPROC) (GLenum pname, GLfixed *params);
572 typedef void (GL_APIENTRYP PFNGLGETLIGHTXVOESPROC) (GLenum light, GLenum pname, GLfixed *params);
573 typedef void (GL_APIENTRYP PFNGLGETMATERIALXVOESPROC) (GLenum face, GLenum pname, GLfixed *params);
574 typedef void (GL_APIENTRYP PFNGLGETTEXENVXVOESPROC) (GLenum env, GLenum pname, GLfixed *params);
575 typedef void (GL_APIENTRYP PFNGLGETTEXPARAMETERXVOESPROC) (GLenum target, GLenum pname, GLfixed *params);
576 typedef void (GL_APIENTRYP PFNGLLIGHTMODELXOESPROC) (GLenum pname, GLfixed param);
577 typedef void (GL_APIENTRYP PFNGLLIGHTMODELXVOESPROC) (GLenum pname, const GLfixed *params);
578 typedef void (GL_APIENTRYP PFNGLLIGHTXOESPROC) (GLenum light, GLenum pname, GLfixed param);
579 typedef void (GL_APIENTRYP PFNGLLIGHTXVOESPROC) (GLenum light, GLenum pname, const GLfixed *params);
580 typedef void (GL_APIENTRYP PFNGLLINEWIDTHXOESPROC) (GLfixed width);
581 typedef void (GL_APIENTRYP PFNGLLOADMATRIXXOESPROC) (const GLfixed *m);
582 typedef void (GL_APIENTRYP PFNGLMATERIALXOESPROC) (GLenum face, GLenum pname, GLfixed param);
583 typedef void (GL_APIENTRYP PFNGLMATERIALXVOESPROC) (GLenum face, GLenum pname, const GLfixed *params);
584 typedef void (GL_APIENTRYP PFNGLMULTMATRIXXOESPROC) (const GLfixed *m);
585 typedef void (GL_APIENTRYP PFNGLMULTITEXCOORD4XOESPROC) (GLenum target, GLfixed s, GLfixed t, GLfixed r, GLfixed q);
586 typedef void (GL_APIENTRYP PFNGLNORMAL3XOESPROC) (GLfixed nx, GLfixed ny, GLfixed nz);
587 typedef void (GL_APIENTRYP PFNGLORTHOXOESPROC) (GLfixed left, GLfixed right, GLfixed bottom, GLfixed top, GLfixed zNear, GLfixed zFar);
588 typedef void (GL_APIENTRYP PFNGLPOINTPARAMETERXOESPROC) (GLenum pname, GLfixed param);
589 typedef void (GL_APIENTRYP PFNGLPOINTPARAMETERXVOESPROC) (GLenum pname, const GLfixed *params);
590 typedef void (GL_APIENTRYP PFNGLPOINTSIZEXOESPROC) (GLfixed size);
591 typedef void (GL_APIENTRYP PFNGLPOLYGONOFFSETXOESPROC) (GLfixed factor, GLfixed units);
592 typedef void (GL_APIENTRYP PFNGLROTATEXOESPROC) (GLfixed angle, GLfixed x, GLfixed y, GLfixed z);
593 typedef void (GL_APIENTRYP PFNGLSAMPLECOVERAGEXOESPROC) (GLclampx value, GLboolean invert);
594 typedef void (GL_APIENTRYP PFNGLSCALEXOESPROC) (GLfixed x, GLfixed y, GLfixed z);
595 typedef void (GL_APIENTRYP PFNGLTEXENVXOESPROC) (GLenum target, GLenum pname, GLfixed param);
596 typedef void (GL_APIENTRYP PFNGLTEXENVXVOESPROC) (GLenum target, GLenum pname, const GLfixed *params);
597 typedef void (GL_APIENTRYP PFNGLTEXPARAMETERXOESPROC) (GLenum target, GLenum pname, GLfixed param);
598 typedef void (GL_APIENTRYP PFNGLTEXPARAMETERXVOESPROC) (GLenum target, GLenum pname, const GLfixed *params);
599 typedef void (GL_APIENTRYP PFNGLTRANSLATEXOESPROC) (GLfixed x, GLfixed y, GLfixed z);
600 #endif
601
602 /* GL_OES_framebuffer_object */
603 #ifndef GL_OES_framebuffer_object
604 #define GL_OES_framebuffer_object 1
605 #ifdef GL_GLEXT_PROTOTYPES
606 GL_API GLboolean GL_APIENTRY glIsRenderbufferOES (GLuint renderbuffer);
607 GL_API void GL_APIENTRY glBindRenderbufferOES (GLenum target, GLuint renderbuffer);
608 GL_API void GL_APIENTRY glDeleteRenderbuffersOES (GLsizei n, const GLuint* renderbuffers);
609 GL_API void GL_APIENTRY glGenRenderbuffersOES (GLsizei n, GLuint* renderbuffers);
610 GL_API void GL_APIENTRY glRenderbufferStorageOES (GLenum target, GLenum internalformat, GLsizei width, GLsizei height);
611 GL_API void GL_APIENTRY glGetRenderbufferParameterivOES (GLenum target, GLenum pname, GLint* params);
612 GL_API GLboolean GL_APIENTRY glIsFramebufferOES (GLuint framebuffer);
613 GL_API void GL_APIENTRY glBindFramebufferOES (GLenum target, GLuint framebuffer);
614 GL_API void GL_APIENTRY glDeleteFramebuffersOES (GLsizei n, const GLuint* framebuffers);
615 GL_API void GL_APIENTRY glGenFramebuffersOES (GLsizei n, GLuint* framebuffers);
616 GL_API GLenum GL_APIENTRY glCheckFramebufferStatusOES (GLenum target);
617 GL_API void GL_APIENTRY glFramebufferRenderbufferOES (GLenum target, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer);
618 GL_API void GL_APIENTRY glFramebufferTexture2DOES (GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level);
619 GL_API void GL_APIENTRY glGetFramebufferAttachmentParameterivOES (GLenum target, GLenum attachment, GLenum pname, GLint* params);
620 GL_API void GL_APIENTRY glGenerateMipmapOES (GLenum target);
621 #endif
622 typedef GLboolean (GL_APIENTRYP PFNGLISRENDERBUFFEROESPROC) (GLuint renderbuffer);
623 typedef void (GL_APIENTRYP PFNGLBINDRENDERBUFFEROESPROC) (GLenum target, GLuint renderbuffer);
624 typedef void (GL_APIENTRYP PFNGLDELETERENDERBUFFERSOESPROC) (GLsizei n, const GLuint* renderbuffers);
625 typedef void (GL_APIENTRYP PFNGLGENRENDERBUFFERSOESPROC) (GLsizei n, GLuint* renderbuffers);
626 typedef void (GL_APIENTRYP PFNGLRENDERBUFFERSTORAGEOESPROC) (GLenum target, GLenum internalformat, GLsizei width, GLsizei height);
627 typedef void (GL_APIENTRYP PFNGLGETRENDERBUFFERPARAMETERIVOESPROC) (GLenum target, GLenum pname, GLint* params);
628 typedef GLboolean (GL_APIENTRYP PFNGLISFRAMEBUFFEROESPROC) (GLuint framebuffer);
629 typedef void (GL_APIENTRYP PFNGLBINDFRAMEBUFFEROESPROC) (GLenum target, GLuint framebuffer);
630 typedef void (GL_APIENTRYP PFNGLDELETEFRAMEBUFFERSOESPROC) (GLsizei n, const GLuint* framebuffers);
631 typedef void (GL_APIENTRYP PFNGLGENFRAMEBUFFERSOESPROC) (GLsizei n, GLuint* framebuffers);
632 typedef GLenum (GL_APIENTRYP PFNGLCHECKFRAMEBUFFERSTATUSOESPROC) (GLenum target);
633 typedef void (GL_APIENTRYP PFNGLFRAMEBUFFERRENDERBUFFEROESPROC) (GLenum target, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer);
634 typedef void (GL_APIENTRYP PFNGLFRAMEBUFFERTEXTURE2DOESPROC) (GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level);
635 typedef void (GL_APIENTRYP PFNGLGETFRAMEBUFFERATTACHMENTPARAMETERIVOESPROC) (GLenum target, GLenum attachment, GLenum pname, GLint* params);
636 typedef void (GL_APIENTRYP PFNGLGENERATEMIPMAPOESPROC) (GLenum target);
637 #endif
638
639 /* GL_OES_mapbuffer */
640 #ifndef GL_OES_mapbuffer
641 #define GL_OES_mapbuffer 1
642 #ifdef GL_GLEXT_PROTOTYPES
643 GL_API void* GL_APIENTRY glMapBufferOES (GLenum target, GLenum access);
644 GL_API GLboolean GL_APIENTRY glUnmapBufferOES (GLenum target);
645 GL_API void GL_APIENTRY glGetBufferPointervOES (GLenum target, GLenum pname, GLvoid ** params);
646 #endif
647 typedef void* (GL_APIENTRYP PFNGLMAPBUFFEROESPROC) (GLenum target, GLenum access);
648 typedef GLboolean (GL_APIENTRYP PFNGLUNMAPBUFFEROESPROC) (GLenum target);
649 typedef void (GL_APIENTRYP PFNGLGETBUFFERPOINTERVOESPROC) (GLenum target, GLenum pname, GLvoid ** params);
650 #endif
651
652 /* GL_OES_matrix_get */
653 #ifndef GL_OES_matrix_get
654 #define GL_OES_matrix_get 1
655 #endif
656
657 /* GL_OES_matrix_palette */
658 #ifndef GL_OES_matrix_palette
659 #define GL_OES_matrix_palette 1
660 #ifdef GL_GLEXT_PROTOTYPES
661 GL_API void GL_APIENTRY glCurrentPaletteMatrixOES (GLuint matrixpaletteindex);
662 GL_API void GL_APIENTRY glLoadPaletteFromModelViewMatrixOES (void);
663 GL_API void GL_APIENTRY glMatrixIndexPointerOES (GLint size, GLenum type, GLsizei stride, const GLvoid *pointer);
664 GL_API void GL_APIENTRY glWeightPointerOES (GLint size, GLenum type, GLsizei stride, const GLvoid *pointer);
665 #endif
666 typedef void (GL_APIENTRYP PFNGLCURRENTPALETTEMATRIXOESPROC) (GLuint matrixpaletteindex);
667 typedef void (GL_APIENTRYP PFNGLLOADPALETTEFROMMODELVIEWMATRIXOESPROC) (void);
668 typedef void (GL_APIENTRYP PFNGLMATRIXINDEXPOINTEROESPROC) (GLint size, GLenum type, GLsizei stride, const GLvoid *pointer);
669 typedef void (GL_APIENTRYP PFNGLWEIGHTPOINTEROESPROC) (GLint size, GLenum type, GLsizei stride, const GLvoid *pointer);
670 #endif
671
672 /* GL_OES_packed_depth_stencil */
673 #ifndef GL_OES_packed_depth_stencil
674 #define GL_OES_packed_depth_stencil 1
675 #endif
676
677 /* GL_OES_query_matrix */
678 #ifndef GL_OES_query_matrix
679 #define GL_OES_query_matrix 1
680 #ifdef GL_GLEXT_PROTOTYPES
681 GL_API GLbitfield GL_APIENTRY glQueryMatrixxOES (GLfixed mantissa[16], GLint exponent[16]);
682 #endif
683 typedef GLbitfield (GL_APIENTRYP PFNGLQUERYMATRIXXOESPROC) (GLfixed mantissa[16], GLint exponent[16]);
684 #endif
685
686 /* GL_OES_rgb8_rgba8 */
687 #ifndef GL_OES_rgb8_rgba8
688 #define GL_OES_rgb8_rgba8 1
689 #endif
690
691 /* GL_OES_single_precision */
692 #ifndef GL_OES_single_precision
693 #define GL_OES_single_precision 1
694 #ifdef GL_GLEXT_PROTOTYPES
695 GL_API void GL_APIENTRY glDepthRangefOES (GLclampf zNear, GLclampf zFar);
696 GL_API void GL_APIENTRY glFrustumfOES (GLfloat left, GLfloat right, GLfloat bottom, GLfloat top, GLfloat zNear, GLfloat zFar);
697 GL_API void GL_APIENTRY glOrthofOES (GLfloat left, GLfloat right, GLfloat bottom, GLfloat top, GLfloat zNear, GLfloat zFar);
698 GL_API void GL_APIENTRY glClipPlanefOES (GLenum plane, const GLfloat *equation);
699 GL_API void GL_APIENTRY glGetClipPlanefOES (GLenum pname, GLfloat eqn[4]);
700 GL_API void GL_APIENTRY glClearDepthfOES (GLclampf depth);
701 #endif
702 typedef void (GL_APIENTRYP PFNGLDEPTHRANGEFOESPROC) (GLclampf zNear, GLclampf zFar);
703 typedef void (GL_APIENTRYP PFNGLFRUSTUMFOESPROC) (GLfloat left, GLfloat right, GLfloat bottom, GLfloat top, GLfloat zNear, GLfloat zFar);
704 typedef void (GL_APIENTRYP PFNGLORTHOFOESPROC) (GLfloat left, GLfloat right, GLfloat bottom, GLfloat top, GLfloat zNear, GLfloat zFar);
705 typedef void (GL_APIENTRYP PFNGLCLIPPLANEFOESPROC) (GLenum plane, const GLfloat *equation);
706 typedef void (GL_APIENTRYP PFNGLGETCLIPPLANEFOESPROC) (GLenum pname, GLfloat eqn[4]);
707 typedef void (GL_APIENTRYP PFNGLCLEARDEPTHFOESPROC) (GLclampf depth);
708 #endif
709
710 /* GL_OES_stencil1 */
711 #ifndef GL_OES_stencil1
712 #define GL_OES_stencil1 1
713 #endif
714
715 /* GL_OES_stencil4 */
716 #ifndef GL_OES_stencil4
717 #define GL_OES_stencil4 1
718 #endif
719
720 /* GL_OES_stencil8 */
721 #ifndef GL_OES_stencil8
722 #define GL_OES_stencil8 1
723 #endif
724
725 /* GL_OES_stencil_wrap */
726 #ifndef GL_OES_stencil_wrap
727 #define GL_OES_stencil_wrap 1
728 #endif
729
730 /* GL_OES_texture_cube_map */
731 #ifndef GL_OES_texture_cube_map
732 #define GL_OES_texture_cube_map 1
733 #ifdef GL_GLEXT_PROTOTYPES
734 GL_API void GL_APIENTRY glTexGenfOES (GLenum coord, GLenum pname, GLfloat param);
735 GL_API void GL_APIENTRY glTexGenfvOES (GLenum coord, GLenum pname, const GLfloat *params);
736 GL_API void GL_APIENTRY glTexGeniOES (GLenum coord, GLenum pname, GLint param);
737 GL_API void GL_APIENTRY glTexGenivOES (GLenum coord, GLenum pname, const GLint *params);
738 GL_API void GL_APIENTRY glTexGenxOES (GLenum coord, GLenum pname, GLfixed param);
739 GL_API void GL_APIENTRY glTexGenxvOES (GLenum coord, GLenum pname, const GLfixed *params);
740 GL_API void GL_APIENTRY glGetTexGenfvOES (GLenum coord, GLenum pname, GLfloat *params);
741 GL_API void GL_APIENTRY glGetTexGenivOES (GLenum coord, GLenum pname, GLint *params);
742 GL_API void GL_APIENTRY glGetTexGenxvOES (GLenum coord, GLenum pname, GLfixed *params);
743 #endif
744 typedef void (GL_APIENTRYP PFNGLTEXGENFOESPROC) (GLenum coord, GLenum pname, GLfloat param);
745 typedef void (GL_APIENTRYP PFNGLTEXGENFVOESPROC) (GLenum coord, GLenum pname, const GLfloat *params);
746 typedef void (GL_APIENTRYP PFNGLTEXGENIOESPROC) (GLenum coord, GLenum pname, GLint param);
747 typedef void (GL_APIENTRYP PFNGLTEXGENIVOESPROC) (GLenum coord, GLenum pname, const GLint *params);
748 typedef void (GL_APIENTRYP PFNGLTEXGENXOESPROC) (GLenum coord, GLenum pname, GLfixed param);
749 typedef void (GL_APIENTRYP PFNGLTEXGENXVOESPROC) (GLenum coord, GLenum pname, const GLfixed *params);
750 typedef void (GL_APIENTRYP PFNGLGETTEXGENFVOESPROC) (GLenum coord, GLenum pname, GLfloat *params);
751 typedef void (GL_APIENTRYP PFNGLGETTEXGENIVOESPROC) (GLenum coord, GLenum pname, GLint *params);
752 typedef void (GL_APIENTRYP PFNGLGETTEXGENXVOESPROC) (GLenum coord, GLenum pname, GLfixed *params);
753 #endif
754
755 /* GL_OES_texture_env_crossbar */
756 #ifndef GL_OES_texture_env_crossbar
757 #define GL_OES_texture_env_crossbar 1
758 #endif
759
760 /* GL_OES_texture_mirrored_repeat */
761 #ifndef GL_OES_texture_mirrored_repeat
762 #define GL_OES_texture_mirrored_repeat 1
763 #endif
764
765 /* GL_OES_vertex_array_object */
766 #ifndef GL_OES_vertex_array_object
767 #define GL_OES_vertex_array_object 1
768 #ifdef GL_GLEXT_PROTOTYPES
769 GL_API void GL_APIENTRY glBindVertexArrayOES (GLuint array);
770 GL_API void GL_APIENTRY glDeleteVertexArraysOES (GLsizei n, const GLuint *arrays);
771 GL_API void GL_APIENTRY glGenVertexArraysOES (GLsizei n, GLuint *arrays);
772 GL_API GLboolean GL_APIENTRY glIsVertexArrayOES (GLuint array);
773 #endif
774 typedef void (GL_APIENTRYP PFNGLBINDVERTEXARRAYOESPROC) (GLuint array);
775 typedef void (GL_APIENTRYP PFNGLDELETEVERTEXARRAYSOESPROC) (GLsizei n, const GLuint *arrays);
776 typedef void (GL_APIENTRYP PFNGLGENVERTEXARRAYSOESPROC) (GLsizei n, GLuint *arrays);
777 typedef GLboolean (GL_APIENTRYP PFNGLISVERTEXARRAYOESPROC) (GLuint array);
778 #endif
779
780 /*------------------------------------------------------------------------*
781 * AMD extension functions
782 *------------------------------------------------------------------------*/
783
784 /* GL_AMD_compressed_3DC_texture */
785 #ifndef GL_AMD_compressed_3DC_texture
786 #define GL_AMD_compressed_3DC_texture 1
787 #endif
788
789 /* GL_AMD_compressed_ATC_texture */
790 #ifndef GL_AMD_compressed_ATC_texture
791 #define GL_AMD_compressed_ATC_texture 1
792 #endif
793
794 /*------------------------------------------------------------------------*
795 * APPLE extension functions
796 *------------------------------------------------------------------------*/
797
798 /* GL_APPLE_texture_2D_limited_npot */
799 #ifndef GL_APPLE_texture_2D_limited_npot
800 #define GL_APPLE_texture_2D_limited_npot 1
801 #endif
802
803 /*------------------------------------------------------------------------*
804 * EXT extension functions
805 *------------------------------------------------------------------------*/
806
807 /* GL_EXT_blend_minmax */
808 #ifndef GL_EXT_blend_minmax
809 #define GL_EXT_blend_minmax 1
810 #endif
811
812 /* GL_EXT_discard_framebuffer */
813 #ifndef GL_EXT_discard_framebuffer
814 #define GL_EXT_discard_framebuffer 1
815 #ifdef GL_GLEXT_PROTOTYPES
816 GL_API void GL_APIENTRY glDiscardFramebufferEXT (GLenum target, GLsizei numAttachments, const GLenum *attachments);
817 #endif
818 typedef void (GL_APIENTRYP PFNGLDISCARDFRAMEBUFFEREXTPROC) (GLenum target, GLsizei numAttachments, const GLenum *attachments);
819 #endif
820
821 /* GL_EXT_multi_draw_arrays */
822 #ifndef GL_EXT_multi_draw_arrays
823 #define GL_EXT_multi_draw_arrays 1
824 #ifdef GL_GLEXT_PROTOTYPES
825 GL_API void GL_APIENTRY glMultiDrawArraysEXT (GLenum, GLint *, GLsizei *, GLsizei);
826 GL_API void GL_APIENTRY glMultiDrawElementsEXT (GLenum, const GLsizei *, GLenum, const GLvoid* *, GLsizei);
827 #endif /* GL_GLEXT_PROTOTYPES */
828 typedef void (GL_APIENTRYP PFNGLMULTIDRAWARRAYSEXTPROC) (GLenum mode, GLint *first, GLsizei *count, GLsizei primcount);
829 typedef void (GL_APIENTRYP PFNGLMULTIDRAWELEMENTSEXTPROC) (GLenum mode, const GLsizei *count, GLenum type, const GLvoid* *indices, GLsizei primcount);
830 #endif
831
832 /* GL_EXT_read_format_bgra */
833 #ifndef GL_EXT_read_format_bgra
834 #define GL_EXT_read_format_bgra 1
835 #endif
836
837 /* GL_EXT_texture_filter_anisotropic */
838 #ifndef GL_EXT_texture_filter_anisotropic
839 #define GL_EXT_texture_filter_anisotropic 1
840 #endif
841
842 /* GL_EXT_texture_format_BGRA8888 */
843 #ifndef GL_EXT_texture_format_BGRA8888
844 #define GL_EXT_texture_format_BGRA8888 1
845 #endif
846
847 /* GL_EXT_texture_lod_bias */
848 #ifndef GL_EXT_texture_lod_bias
849 #define GL_EXT_texture_lod_bias 1
850 #endif
851
852 /*------------------------------------------------------------------------*
853 * IMG extension functions
854 *------------------------------------------------------------------------*/
855
856 /* GL_IMG_read_format */
857 #ifndef GL_IMG_read_format
858 #define GL_IMG_read_format 1
859 #endif
860
861 /* GL_IMG_texture_compression_pvrtc */
862 #ifndef GL_IMG_texture_compression_pvrtc
863 #define GL_IMG_texture_compression_pvrtc 1
864 #endif
865
866 /* GL_IMG_texture_env_enhanced_fixed_function */
867 #ifndef GL_IMG_texture_env_enhanced_fixed_function
868 #define GL_IMG_texture_env_enhanced_fixed_function 1
869 #endif
870
871 /* GL_IMG_user_clip_plane */
872 #ifndef GL_IMG_user_clip_plane
873 #define GL_IMG_user_clip_plane 1
874 #ifdef GL_GLEXT_PROTOTYPES
875 GL_API void GL_APIENTRY glClipPlanefIMG (GLenum, const GLfloat *);
876 GL_API void GL_APIENTRY glClipPlanexIMG (GLenum, const GLfixed *);
877 #endif
878 typedef void (GL_APIENTRYP PFNGLCLIPPLANEFIMGPROC) (GLenum p, const GLfloat *eqn);
879 typedef void (GL_APIENTRYP PFNGLCLIPPLANEXIMGPROC) (GLenum p, const GLfixed *eqn);
880 #endif
881
882 /* GL_IMG_multisampled_render_to_texture */
883 #ifndef GL_IMG_multisampled_render_to_texture
884 #define GL_IMG_multisampled_render_to_texture 1
885 #ifdef GL_GLEXT_PROTOTYPES
886 GL_API void GL_APIENTRY glRenderbufferStorageMultisampleIMG (GLenum, GLsizei, GLenum, GLsizei, GLsizei);
887 GL_API void GL_APIENTRY glFramebufferTexture2DMultisampleIMG (GLenum, GLenum, GLenum, GLuint, GLint, GLsizei);
888 #endif
889 typedef void (GL_APIENTRYP PFNGLRENDERBUFFERSTORAGEMULTISAMPLEIMG) (GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height);
890 typedef void (GL_APIENTRYP PFNGLCLIPPLANEXIMG) (GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLsizei samples);
891 #endif
892
893 /*------------------------------------------------------------------------*
894 * NV extension functions
895 *------------------------------------------------------------------------*/
896
897 /* NV_fence */
898 #ifndef GL_NV_fence
899 #define GL_NV_fence 1
900 #ifdef GL_GLEXT_PROTOTYPES
901 GL_API void GL_APIENTRY glDeleteFencesNV (GLsizei, const GLuint *);
902 GL_API void GL_APIENTRY glGenFencesNV (GLsizei, GLuint *);
903 GL_API GLboolean GL_APIENTRY glIsFenceNV (GLuint);
904 GL_API GLboolean GL_APIENTRY glTestFenceNV (GLuint);
905 GL_API void GL_APIENTRY glGetFenceivNV (GLuint, GLenum, GLint *);
906 GL_API void GL_APIENTRY glFinishFenceNV (GLuint);
907 GL_API void GL_APIENTRY glSetFenceNV (GLuint, GLenum);
908 #endif
909 typedef void (GL_APIENTRYP PFNGLDELETEFENCESNVPROC) (GLsizei n, const GLuint *fences);
910 typedef void (GL_APIENTRYP PFNGLGENFENCESNVPROC) (GLsizei n, GLuint *fences);
911 typedef GLboolean (GL_APIENTRYP PFNGLISFENCENVPROC) (GLuint fence);
912 typedef GLboolean (GL_APIENTRYP PFNGLTESTFENCENVPROC) (GLuint fence);
913 typedef void (GL_APIENTRYP PFNGLGETFENCEIVNVPROC) (GLuint fence, GLenum pname, GLint *params);
914 typedef void (GL_APIENTRYP PFNGLFINISHFENCENVPROC) (GLuint fence);
915 typedef void (GL_APIENTRYP PFNGLSETFENCENVPROC) (GLuint fence, GLenum condition);
916 #endif
917
918 /*------------------------------------------------------------------------*
919 * QCOM extension functions
920 *------------------------------------------------------------------------*/
921
922 /* GL_QCOM_driver_control */
923 #ifndef GL_QCOM_driver_control
924 #define GL_QCOM_driver_control 1
925 #ifdef GL_GLEXT_PROTOTYPES
926 GL_API void GL_APIENTRY glGetDriverControlsQCOM (GLint *num, GLsizei size, GLuint *driverControls);
927 GL_API void GL_APIENTRY glGetDriverControlStringQCOM (GLuint driverControl, GLsizei bufSize, GLsizei *length, GLchar *driverControlString);
928 GL_API void GL_APIENTRY glEnableDriverControlQCOM (GLuint driverControl);
929 GL_API void GL_APIENTRY glDisableDriverControlQCOM (GLuint driverControl);
930 #endif
931 typedef void (GL_APIENTRYP PFNGLGETDRIVERCONTROLSQCOMPROC) (GLint *num, GLsizei size, GLuint *driverControls);
932 typedef void (GL_APIENTRYP PFNGLGETDRIVERCONTROLSTRINGQCOMPROC) (GLuint driverControl, GLsizei bufSize, GLsizei *length, GLchar *driverControlString);
933 typedef void (GL_APIENTRYP PFNGLENABLEDRIVERCONTROLQCOMPROC) (GLuint driverControl);
934 typedef void (GL_APIENTRYP PFNGLDISABLEDRIVERCONTROLQCOMPROC) (GLuint driverControl);
935 #endif
936
937 /* GL_QCOM_extended_get */
938 #ifndef GL_QCOM_extended_get
939 #define GL_QCOM_extended_get 1
940 #ifdef GL_GLEXT_PROTOTYPES
941 GL_API void GL_APIENTRY glExtGetTexturesQCOM (GLuint *textures, GLint maxTextures, GLint *numTextures);
942 GL_API void GL_APIENTRY glExtGetBuffersQCOM (GLuint *buffers, GLint maxBuffers, GLint *numBuffers);
943 GL_API void GL_APIENTRY glExtGetRenderbuffersQCOM (GLuint *renderbuffers, GLint maxRenderbuffers, GLint *numRenderbuffers);
944 GL_API void GL_APIENTRY glExtGetFramebuffersQCOM (GLuint *framebuffers, GLint maxFramebuffers, GLint *numFramebuffers);
945 GL_API void GL_APIENTRY glExtGetTexLevelParameterivQCOM (GLuint texture, GLenum face, GLint level, GLenum pname, GLint *params);
946 GL_API void GL_APIENTRY glExtTexObjectStateOverrideiQCOM (GLenum target, GLenum pname, GLint param);
947 GL_API void GL_APIENTRY glExtGetTexSubImageQCOM (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, GLvoid *texels);
948 GL_API void GL_APIENTRY glExtGetBufferPointervQCOM (GLenum target, GLvoid **params);
949 #endif
950 typedef void (GL_APIENTRYP PFNGLEXTGETTEXTURESQCOMPROC) (GLuint *textures, GLint maxTextures, GLint *numTextures);
951 typedef void (GL_APIENTRYP PFNGLEXTGETBUFFERSQCOMPROC) (GLuint *buffers, GLint maxBuffers, GLint *numBuffers);
952 typedef void (GL_APIENTRYP PFNGLEXTGETRENDERBUFFERSQCOMPROC) (GLuint *renderbuffers, GLint maxRenderbuffers, GLint *numRenderbuffers);
953 typedef void (GL_APIENTRYP PFNGLEXTGETFRAMEBUFFERSQCOMPROC) (GLuint *framebuffers, GLint maxFramebuffers, GLint *numFramebuffers);
954 typedef void (GL_APIENTRYP PFNGLEXTGETTEXLEVELPARAMETERIVQCOMPROC) (GLuint texture, GLenum face, GLint level, GLenum pname, GLint *params);
955 typedef void (GL_APIENTRYP PFNGLEXTTEXOBJECTSTATEOVERRIDEIQCOMPROC) (GLenum target, GLenum pname, GLint param);
956 typedef void (GL_APIENTRYP PFNGLEXTGETTEXSUBIMAGEQCOMPROC) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, GLvoid *texels);
957 typedef void (GL_APIENTRYP PFNGLEXTGETBUFFERPOINTERVQCOMPROC) (GLenum target, GLvoid **params);
958 #endif
959
960 /* GL_QCOM_extended_get2 */
961 #ifndef GL_QCOM_extended_get2
962 #define GL_QCOM_extended_get2 1
963 #ifdef GL_GLEXT_PROTOTYPES
964 GL_API void GL_APIENTRY glExtGetShadersQCOM (GLuint *shaders, GLint maxShaders, GLint *numShaders);
965 GL_API void GL_APIENTRY glExtGetProgramsQCOM (GLuint *programs, GLint maxPrograms, GLint *numPrograms);
966 GL_API GLboolean GL_APIENTRY glExtIsProgramBinaryQCOM (GLuint program);
967 GL_API void GL_APIENTRY glExtGetProgramBinarySourceQCOM (GLuint program, GLenum shadertype, GLchar *source, GLint *length);
968 #endif
969 typedef void (GL_APIENTRYP PFNGLEXTGETSHADERSQCOMPROC) (GLuint *shaders, GLint maxShaders, GLint *numShaders);
970 typedef void (GL_APIENTRYP PFNGLEXTGETPROGRAMSQCOMPROC) (GLuint *programs, GLint maxPrograms, GLint *numPrograms);
971 typedef GLboolean (GL_APIENTRYP PFNGLEXTISPROGRAMBINARYQCOMPROC) (GLuint program);
972 typedef void (GL_APIENTRYP PFNGLEXTGETPROGRAMBINARYSOURCEQCOMPROC) (GLuint program, GLenum shadertype, GLchar *source, GLint *length);
973 #endif
974
975 /* GL_QCOM_perfmon_global_mode */
976 #ifndef GL_QCOM_perfmon_global_mode
977 #define GL_QCOM_perfmon_global_mode 1
978 #endif
979
980 /* GL_QCOM_writeonly_rendering */
981 #ifndef GL_QCOM_writeonly_rendering
982 #define GL_QCOM_writeonly_rendering 1
983 #endif
984
985 /* GL_QCOM_tiled_rendering */
986 #ifndef GL_QCOM_tiled_rendering
987 #define GL_QCOM_tiled_rendering 1
988 #ifdef GL_GLEXT_PROTOTYPES
989 GL_API void GL_APIENTRY glStartTilingQCOM (GLuint x, GLuint y, GLuint width, GLuint height, GLbitfield preserveMask);
990 GL_API void GL_APIENTRY glEndTilingQCOM (GLbitfield preserveMask);
991 #endif
992 typedef void (GL_APIENTRYP PFNGLSTARTTILINGQCOMPROC) (GLuint x, GLuint y, GLuint width, GLuint height, GLbitfield preserveMask);
993 typedef void (GL_APIENTRYP PFNGLENDTILINGQCOMPROC) (GLbitfield preserveMask);
994 #endif
995
996 #ifdef __cplusplus
997 }
998 #endif
999
1000 #endif /* __glext_h_ */
1001