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