]> git.cworth.org Git - apitrace/blob - thirdparty/khronos/GLES/glext.h
Update khronos headers.
[apitrace] / thirdparty / khronos / GLES / glext.h
1 #ifndef __gles_glext_h_
2 #define __gles_glext_h_
3
4 /* $Revision: 18482 $ on $Date:: 2012-07-11 18:08:18 -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_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_required_internalformat */
169 /* No new tokens introduced by this extension. */
170
171 /* GL_OES_rgb8_rgba8 */
172 #ifndef GL_OES_rgb8_rgba8
173 #define GL_RGB8_OES                                             0x8051
174 #define GL_RGBA8_OES                                            0x8058
175 #endif
176
177 /* GL_OES_stencil1 */
178 #ifndef GL_OES_stencil1
179 #define GL_STENCIL_INDEX1_OES                                   0x8D46
180 #endif
181
182 /* GL_OES_stencil4 */
183 #ifndef GL_OES_stencil4
184 #define GL_STENCIL_INDEX4_OES                                   0x8D47
185 #endif
186
187 /* GL_OES_stencil8 */
188 #ifndef GL_OES_stencil8
189 #define GL_STENCIL_INDEX8_OES                                   0x8D48
190 #endif
191
192 /* GL_OES_stencil_wrap */
193 #ifndef GL_OES_stencil_wrap
194 #define GL_INCR_WRAP_OES                                        0x8507
195 #define GL_DECR_WRAP_OES                                        0x8508
196 #endif
197
198 /* GL_OES_texture_cube_map */
199 #ifndef GL_OES_texture_cube_map
200 #define GL_NORMAL_MAP_OES                                       0x8511
201 #define GL_REFLECTION_MAP_OES                                   0x8512
202 #define GL_TEXTURE_CUBE_MAP_OES                                 0x8513
203 #define GL_TEXTURE_BINDING_CUBE_MAP_OES                         0x8514
204 #define GL_TEXTURE_CUBE_MAP_POSITIVE_X_OES                      0x8515
205 #define GL_TEXTURE_CUBE_MAP_NEGATIVE_X_OES                      0x8516
206 #define GL_TEXTURE_CUBE_MAP_POSITIVE_Y_OES                      0x8517
207 #define GL_TEXTURE_CUBE_MAP_NEGATIVE_Y_OES                      0x8518
208 #define GL_TEXTURE_CUBE_MAP_POSITIVE_Z_OES                      0x8519
209 #define GL_TEXTURE_CUBE_MAP_NEGATIVE_Z_OES                      0x851A
210 #define GL_MAX_CUBE_MAP_TEXTURE_SIZE_OES                        0x851C
211 #define GL_TEXTURE_GEN_MODE_OES                                 0x2500
212 #define GL_TEXTURE_GEN_STR_OES                                  0x8D60
213 #endif
214
215 /* GL_OES_texture_mirrored_repeat */
216 #ifndef GL_OES_texture_mirrored_repeat
217 #define GL_MIRRORED_REPEAT_OES                                  0x8370
218 #endif
219
220 /* GL_OES_vertex_array_object */
221 #ifndef GL_OES_vertex_array_object
222 #define GL_VERTEX_ARRAY_BINDING_OES                             0x85B5
223 #endif
224
225 /*------------------------------------------------------------------------*
226  * AMD extension tokens
227  *------------------------------------------------------------------------*/
228
229 /* GL_AMD_compressed_3DC_texture */
230 #ifndef GL_AMD_compressed_3DC_texture
231 #define GL_3DC_X_AMD                                            0x87F9
232 #define GL_3DC_XY_AMD                                           0x87FA
233 #endif
234
235 /* GL_AMD_compressed_ATC_texture */
236 #ifndef GL_AMD_compressed_ATC_texture
237 #define GL_ATC_RGB_AMD                                          0x8C92
238 #define GL_ATC_RGBA_EXPLICIT_ALPHA_AMD                          0x8C93
239 #define GL_ATC_RGBA_INTERPOLATED_ALPHA_AMD                      0x87EE
240 #endif
241
242 /*------------------------------------------------------------------------*
243  * APPLE extension tokens
244  *------------------------------------------------------------------------*/
245
246 /* GL_APPLE_texture_2D_limited_npot */
247 /* No new tokens introduced by this extension. */
248
249 /* GL_APPLE_framebuffer_multisample */
250 #ifndef GL_APPLE_framebuffer_multisample
251 #define GL_RENDERBUFFER_SAMPLES_APPLE                           0x8CAB
252 #define GL_FRAMEBUFFER_INCOMPLETE_MULTISAMPLE_APPLE             0x8D56
253 #define GL_MAX_SAMPLES_APPLE                                    0x8D57
254 #define GL_READ_FRAMEBUFFER_APPLE                               0x8CA8
255 #define GL_DRAW_FRAMEBUFFER_APPLE                               0x8CA9
256 #define GL_DRAW_FRAMEBUFFER_BINDING_APPLE                       0x8CA6
257 #define GL_READ_FRAMEBUFFER_BINDING_APPLE                       0x8CAA
258 #endif
259
260 /* GL_APPLE_texture_format_BGRA8888 */
261 #ifndef GL_APPLE_texture_format_BGRA8888
262 #define GL_BGRA_EXT                                             0x80E1
263 #endif
264
265 /* GL_APPLE_texture_max_level */
266 #ifndef GL_APPLE_texture_max_level
267 #define GL_TEXTURE_MAX_LEVEL_APPLE                              0x813D
268 #endif
269
270 /*------------------------------------------------------------------------*
271  * ARM extension tokens
272  *------------------------------------------------------------------------*/
273
274 /* GL_ARM_rgba8 */
275 /* No new tokens introduced by this extension. */
276
277 /*------------------------------------------------------------------------*
278  * EXT extension tokens
279  *------------------------------------------------------------------------*/
280
281 /* GL_EXT_blend_minmax */
282 #ifndef GL_EXT_blend_minmax
283 #define GL_MIN_EXT                                              0x8007
284 #define GL_MAX_EXT                                              0x8008
285 #endif
286
287 /* GL_EXT_discard_framebuffer */
288 #ifndef GL_EXT_discard_framebuffer
289 #define GL_COLOR_EXT                                            0x1800
290 #define GL_DEPTH_EXT                                            0x1801
291 #define GL_STENCIL_EXT                                          0x1802
292 #endif
293
294 /* GL_EXT_multisampled_render_to_texture */
295 #ifndef GL_EXT_multisampled_render_to_texture
296 #define GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_SAMPLES_EXT           0x8D6C
297 /* reuse values from GL_EXT_framebuffer_multisample (desktop extension) */ 
298 #define GL_RENDERBUFFER_SAMPLES_EXT                             0x8CAB
299 #define GL_FRAMEBUFFER_INCOMPLETE_MULTISAMPLE_EXT               0x8D56
300 #define GL_MAX_SAMPLES_EXT                                      0x8D57
301 #endif
302
303 /* GL_EXT_multi_draw_arrays */
304 /* No new tokens introduced by this extension. */
305
306 /* GL_EXT_read_format_bgra */
307 #ifndef GL_EXT_read_format_bgra
308 #define GL_BGRA_EXT                                             0x80E1
309 #define GL_UNSIGNED_SHORT_4_4_4_4_REV_EXT                       0x8365
310 #define GL_UNSIGNED_SHORT_1_5_5_5_REV_EXT                       0x8366
311 #endif
312
313 /* GL_EXT_robustness */
314 #ifndef GL_EXT_robustness
315 /* reuse GL_NO_ERROR */
316 #define GL_GUILTY_CONTEXT_RESET_EXT                             0x8253
317 #define GL_INNOCENT_CONTEXT_RESET_EXT                           0x8254
318 #define GL_UNKNOWN_CONTEXT_RESET_EXT                            0x8255
319 #define GL_CONTEXT_ROBUST_ACCESS_EXT                            0x90F3
320 #define GL_RESET_NOTIFICATION_STRATEGY_EXT                      0x8256
321 #define GL_LOSE_CONTEXT_ON_RESET_EXT                            0x8252
322 #define GL_NO_RESET_NOTIFICATION_EXT                            0x8261
323 #endif
324
325 /* GL_EXT_sRGB */
326 #ifndef GL_EXT_sRGB
327 #define GL_SRGB_EXT                                             0x8C40
328 #define GL_SRGB_ALPHA_EXT                                       0x8C42
329 #define GL_SRGB8_ALPHA8_EXT                                     0x8C43
330 #define GL_FRAMEBUFFER_ATTACHMENT_COLOR_ENCODING_EXT            0x8210
331 #endif
332
333 /* GL_EXT_texture_compression_dxt1 */
334 #ifndef GL_EXT_texture_compression_dxt1
335 #define GL_COMPRESSED_RGB_S3TC_DXT1_EXT                         0x83F0
336 #define GL_COMPRESSED_RGBA_S3TC_DXT1_EXT                        0x83F1
337 #endif
338
339 /* GL_EXT_texture_filter_anisotropic */
340 #ifndef GL_EXT_texture_filter_anisotropic
341 #define GL_TEXTURE_MAX_ANISOTROPY_EXT                           0x84FE
342 #define GL_MAX_TEXTURE_MAX_ANISOTROPY_EXT                       0x84FF
343 #endif
344
345 /* GL_EXT_texture_format_BGRA8888 */
346 #ifndef GL_EXT_texture_format_BGRA8888
347 #define GL_BGRA_EXT                                             0x80E1
348 #endif
349
350 /* GL_EXT_texture_lod_bias */
351 #ifndef GL_EXT_texture_lod_bias
352 #define GL_MAX_TEXTURE_LOD_BIAS_EXT                             0x84FD
353 #define GL_TEXTURE_FILTER_CONTROL_EXT                           0x8500
354 #define GL_TEXTURE_LOD_BIAS_EXT                                 0x8501
355 #endif
356
357 /* GL_EXT_texture_storage */
358 #ifndef GL_EXT_texture_storage
359 #define GL_TEXTURE_IMMUTABLE_FORMAT_EXT                         0x912F
360 #define GL_ALPHA8_EXT                                           0x803C  
361 #define GL_LUMINANCE8_EXT                                       0x8040
362 #define GL_LUMINANCE8_ALPHA8_EXT                                0x8045
363 #define GL_RGBA32F_EXT                                          0x8814  
364 #define GL_RGB32F_EXT                                           0x8815
365 #define GL_ALPHA32F_EXT                                         0x8816
366 #define GL_LUMINANCE32F_EXT                                     0x8818
367 #define GL_LUMINANCE_ALPHA32F_EXT                               0x8819
368 /* reuse GL_RGBA16F_EXT */
369 #define GL_RGB16F_EXT                                           0x881B
370 #define GL_ALPHA16F_EXT                                         0x881C
371 #define GL_LUMINANCE16F_EXT                                     0x881E
372 #define GL_LUMINANCE_ALPHA16F_EXT                               0x881F
373 #define GL_RGB10_A2_EXT                                         0x8059  
374 #define GL_RGB10_EXT                                            0x8052
375 #define GL_BGRA8_EXT                                            0x93A1
376 #endif
377
378 /*------------------------------------------------------------------------*
379  * IMG extension tokens
380  *------------------------------------------------------------------------*/
381
382 /* GL_IMG_read_format */
383 #ifndef GL_IMG_read_format
384 #define GL_BGRA_IMG                                             0x80E1
385 #define GL_UNSIGNED_SHORT_4_4_4_4_REV_IMG                       0x8365
386 #endif
387
388 /* GL_IMG_texture_compression_pvrtc */
389 #ifndef GL_IMG_texture_compression_pvrtc
390 #define GL_COMPRESSED_RGB_PVRTC_4BPPV1_IMG                      0x8C00
391 #define GL_COMPRESSED_RGB_PVRTC_2BPPV1_IMG                      0x8C01
392 #define GL_COMPRESSED_RGBA_PVRTC_4BPPV1_IMG                     0x8C02
393 #define GL_COMPRESSED_RGBA_PVRTC_2BPPV1_IMG                     0x8C03
394 #endif
395
396 /* GL_IMG_texture_env_enhanced_fixed_function */
397 #ifndef GL_IMG_texture_env_enhanced_fixed_function
398 #define GL_MODULATE_COLOR_IMG                                   0x8C04
399 #define GL_RECIP_ADD_SIGNED_ALPHA_IMG                           0x8C05
400 #define GL_TEXTURE_ALPHA_MODULATE_IMG                           0x8C06
401 #define GL_FACTOR_ALPHA_MODULATE_IMG                            0x8C07
402 #define GL_FRAGMENT_ALPHA_MODULATE_IMG                          0x8C08
403 #define GL_ADD_BLEND_IMG                                        0x8C09
404 #define GL_DOT3_RGBA_IMG                                        0x86AF
405 #endif
406
407 /* GL_IMG_user_clip_plane */
408 #ifndef GL_IMG_user_clip_plane
409 #define GL_CLIP_PLANE0_IMG                                      0x3000
410 #define GL_CLIP_PLANE1_IMG                                      0x3001
411 #define GL_CLIP_PLANE2_IMG                                      0x3002
412 #define GL_CLIP_PLANE3_IMG                                      0x3003
413 #define GL_CLIP_PLANE4_IMG                                      0x3004
414 #define GL_CLIP_PLANE5_IMG                                      0x3005
415 #define GL_MAX_CLIP_PLANES_IMG                                  0x0D32
416 #endif
417
418 /* GL_IMG_multisampled_render_to_texture */
419 #ifndef GL_IMG_multisampled_render_to_texture
420 #define GL_RENDERBUFFER_SAMPLES_IMG                             0x9133
421 #define GL_FRAMEBUFFER_INCOMPLETE_MULTISAMPLE_IMG               0x9134
422 #define GL_MAX_SAMPLES_IMG                                      0x9135
423 #define GL_TEXTURE_SAMPLES_IMG                                  0x9136
424 #endif
425
426 /*------------------------------------------------------------------------*
427  * NV extension tokens
428  *------------------------------------------------------------------------*/
429
430 /* GL_NV_fence */
431 #ifndef GL_NV_fence
432 #define GL_ALL_COMPLETED_NV                                     0x84F2
433 #define GL_FENCE_STATUS_NV                                      0x84F3
434 #define GL_FENCE_CONDITION_NV                                   0x84F4
435 #endif
436
437 /*------------------------------------------------------------------------*
438  * QCOM extension tokens
439  *------------------------------------------------------------------------*/
440
441 /* GL_QCOM_driver_control */
442 /* No new tokens introduced by this extension. */
443
444 /* GL_QCOM_extended_get */
445 #ifndef GL_QCOM_extended_get
446 #define GL_TEXTURE_WIDTH_QCOM                                   0x8BD2
447 #define GL_TEXTURE_HEIGHT_QCOM                                  0x8BD3
448 #define GL_TEXTURE_DEPTH_QCOM                                   0x8BD4
449 #define GL_TEXTURE_INTERNAL_FORMAT_QCOM                         0x8BD5
450 #define GL_TEXTURE_FORMAT_QCOM                                  0x8BD6
451 #define GL_TEXTURE_TYPE_QCOM                                    0x8BD7
452 #define GL_TEXTURE_IMAGE_VALID_QCOM                             0x8BD8
453 #define GL_TEXTURE_NUM_LEVELS_QCOM                              0x8BD9
454 #define GL_TEXTURE_TARGET_QCOM                                  0x8BDA
455 #define GL_TEXTURE_OBJECT_VALID_QCOM                            0x8BDB
456 #define GL_STATE_RESTORE                                        0x8BDC
457 #endif
458
459 /* GL_QCOM_extended_get2 */
460 /* No new tokens introduced by this extension. */
461
462 /* GL_QCOM_perfmon_global_mode */
463 #ifndef GL_QCOM_perfmon_global_mode
464 #define GL_PERFMON_GLOBAL_MODE_QCOM                             0x8FA0
465 #endif
466
467 /* GL_QCOM_writeonly_rendering */
468 #ifndef GL_QCOM_writeonly_rendering
469 #define GL_WRITEONLY_RENDERING_QCOM                             0x8823
470 #endif
471
472 /* GL_QCOM_tiled_rendering */
473 #ifndef GL_QCOM_tiled_rendering
474 #define GL_COLOR_BUFFER_BIT0_QCOM                               0x00000001
475 #define GL_COLOR_BUFFER_BIT1_QCOM                               0x00000002
476 #define GL_COLOR_BUFFER_BIT2_QCOM                               0x00000004
477 #define GL_COLOR_BUFFER_BIT3_QCOM                               0x00000008
478 #define GL_COLOR_BUFFER_BIT4_QCOM                               0x00000010
479 #define GL_COLOR_BUFFER_BIT5_QCOM                               0x00000020
480 #define GL_COLOR_BUFFER_BIT6_QCOM                               0x00000040
481 #define GL_COLOR_BUFFER_BIT7_QCOM                               0x00000080
482 #define GL_DEPTH_BUFFER_BIT0_QCOM                               0x00000100
483 #define GL_DEPTH_BUFFER_BIT1_QCOM                               0x00000200
484 #define GL_DEPTH_BUFFER_BIT2_QCOM                               0x00000400
485 #define GL_DEPTH_BUFFER_BIT3_QCOM                               0x00000800
486 #define GL_DEPTH_BUFFER_BIT4_QCOM                               0x00001000
487 #define GL_DEPTH_BUFFER_BIT5_QCOM                               0x00002000
488 #define GL_DEPTH_BUFFER_BIT6_QCOM                               0x00004000
489 #define GL_DEPTH_BUFFER_BIT7_QCOM                               0x00008000
490 #define GL_STENCIL_BUFFER_BIT0_QCOM                             0x00010000
491 #define GL_STENCIL_BUFFER_BIT1_QCOM                             0x00020000
492 #define GL_STENCIL_BUFFER_BIT2_QCOM                             0x00040000
493 #define GL_STENCIL_BUFFER_BIT3_QCOM                             0x00080000
494 #define GL_STENCIL_BUFFER_BIT4_QCOM                             0x00100000
495 #define GL_STENCIL_BUFFER_BIT5_QCOM                             0x00200000
496 #define GL_STENCIL_BUFFER_BIT6_QCOM                             0x00400000
497 #define GL_STENCIL_BUFFER_BIT7_QCOM                             0x00800000
498 #define GL_MULTISAMPLE_BUFFER_BIT0_QCOM                         0x01000000
499 #define GL_MULTISAMPLE_BUFFER_BIT1_QCOM                         0x02000000
500 #define GL_MULTISAMPLE_BUFFER_BIT2_QCOM                         0x04000000
501 #define GL_MULTISAMPLE_BUFFER_BIT3_QCOM                         0x08000000
502 #define GL_MULTISAMPLE_BUFFER_BIT4_QCOM                         0x10000000
503 #define GL_MULTISAMPLE_BUFFER_BIT5_QCOM                         0x20000000
504 #define GL_MULTISAMPLE_BUFFER_BIT6_QCOM                         0x40000000
505 #define GL_MULTISAMPLE_BUFFER_BIT7_QCOM                         0x80000000
506 #endif
507
508 /*------------------------------------------------------------------------*
509  * End of extension tokens, start of corresponding extension functions
510  *------------------------------------------------------------------------*/
511
512 /*------------------------------------------------------------------------*
513  * OES extension functions
514  *------------------------------------------------------------------------*/
515
516 /* GL_OES_blend_equation_separate */
517 #ifndef GL_OES_blend_equation_separate
518 #define GL_OES_blend_equation_separate 1
519 #ifdef GL_GLEXT_PROTOTYPES
520 GL_API void GL_APIENTRY glBlendEquationSeparateOES (GLenum modeRGB, GLenum modeAlpha);
521 #endif
522 typedef void (GL_APIENTRYP PFNGLBLENDEQUATIONSEPARATEOESPROC) (GLenum modeRGB, GLenum modeAlpha);
523 #endif
524
525 /* GL_OES_blend_func_separate */
526 #ifndef GL_OES_blend_func_separate
527 #define GL_OES_blend_func_separate 1
528 #ifdef GL_GLEXT_PROTOTYPES
529 GL_API void GL_APIENTRY glBlendFuncSeparateOES (GLenum srcRGB, GLenum dstRGB, GLenum srcAlpha, GLenum dstAlpha);
530 #endif
531 typedef void (GL_APIENTRYP PFNGLBLENDFUNCSEPARATEOESPROC) (GLenum srcRGB, GLenum dstRGB, GLenum srcAlpha, GLenum dstAlpha);
532 #endif
533
534 /* GL_OES_blend_subtract */
535 #ifndef GL_OES_blend_subtract
536 #define GL_OES_blend_subtract 1
537 #ifdef GL_GLEXT_PROTOTYPES
538 GL_API void GL_APIENTRY glBlendEquationOES (GLenum mode);
539 #endif
540 typedef void (GL_APIENTRYP PFNGLBLENDEQUATIONOESPROC) (GLenum mode);
541 #endif
542
543 /* GL_OES_byte_coordinates */
544 #ifndef GL_OES_byte_coordinates
545 #define GL_OES_byte_coordinates 1
546 #endif
547
548 /* GL_OES_compressed_ETC1_RGB8_texture */
549 #ifndef GL_OES_compressed_ETC1_RGB8_texture
550 #define GL_OES_compressed_ETC1_RGB8_texture 1
551 #endif
552
553 /* GL_OES_depth24 */
554 #ifndef GL_OES_depth24
555 #define GL_OES_depth24 1
556 #endif
557
558 /* GL_OES_depth32 */
559 #ifndef GL_OES_depth32
560 #define GL_OES_depth32 1
561 #endif
562
563 /* GL_OES_draw_texture */
564 #ifndef GL_OES_draw_texture
565 #define GL_OES_draw_texture 1
566 #ifdef GL_GLEXT_PROTOTYPES
567 GL_API void GL_APIENTRY glDrawTexsOES (GLshort x, GLshort y, GLshort z, GLshort width, GLshort height);
568 GL_API void GL_APIENTRY glDrawTexiOES (GLint x, GLint y, GLint z, GLint width, GLint height);
569 GL_API void GL_APIENTRY glDrawTexxOES (GLfixed x, GLfixed y, GLfixed z, GLfixed width, GLfixed height);
570 GL_API void GL_APIENTRY glDrawTexsvOES (const GLshort *coords);
571 GL_API void GL_APIENTRY glDrawTexivOES (const GLint *coords);
572 GL_API void GL_APIENTRY glDrawTexxvOES (const GLfixed *coords);
573 GL_API void GL_APIENTRY glDrawTexfOES (GLfloat x, GLfloat y, GLfloat z, GLfloat width, GLfloat height);
574 GL_API void GL_APIENTRY glDrawTexfvOES (const GLfloat *coords);
575 #endif
576 typedef void (GL_APIENTRYP PFNGLDRAWTEXSOESPROC) (GLshort x, GLshort y, GLshort z, GLshort width, GLshort height);
577 typedef void (GL_APIENTRYP PFNGLDRAWTEXIOESPROC) (GLint x, GLint y, GLint z, GLint width, GLint height);
578 typedef void (GL_APIENTRYP PFNGLDRAWTEXXOESPROC) (GLfixed x, GLfixed y, GLfixed z, GLfixed width, GLfixed height);
579 typedef void (GL_APIENTRYP PFNGLDRAWTEXSVOESPROC) (const GLshort *coords);
580 typedef void (GL_APIENTRYP PFNGLDRAWTEXIVOESPROC) (const GLint *coords);
581 typedef void (GL_APIENTRYP PFNGLDRAWTEXXVOESPROC) (const GLfixed *coords);
582 typedef void (GL_APIENTRYP PFNGLDRAWTEXFOESPROC) (GLfloat x, GLfloat y, GLfloat z, GLfloat width, GLfloat height);
583 typedef void (GL_APIENTRYP PFNGLDRAWTEXFVOESPROC) (const GLfloat *coords);
584 #endif
585
586 /* GL_OES_EGL_image */
587 #ifndef GL_OES_EGL_image
588 #define GL_OES_EGL_image 1
589 #ifdef GL_GLEXT_PROTOTYPES
590 GL_API void GL_APIENTRY glEGLImageTargetTexture2DOES (GLenum target, GLeglImageOES image);
591 GL_API void GL_APIENTRY glEGLImageTargetRenderbufferStorageOES (GLenum target, GLeglImageOES image);
592 #endif
593 typedef void (GL_APIENTRYP PFNGLEGLIMAGETARGETTEXTURE2DOESPROC) (GLenum target, GLeglImageOES image);
594 typedef void (GL_APIENTRYP PFNGLEGLIMAGETARGETRENDERBUFFERSTORAGEOESPROC) (GLenum target, GLeglImageOES image);
595 #endif
596
597 /* GL_OES_EGL_image_external */
598 #ifndef GL_OES_EGL_image_external
599 #define GL_OES_EGL_image_external 1
600 /* glEGLImageTargetTexture2DOES defined in GL_OES_EGL_image already. */
601 #endif
602
603 /* GL_OES_element_index_uint */
604 #ifndef GL_OES_element_index_uint
605 #define GL_OES_element_index_uint 1
606 #endif
607
608 /* GL_OES_extended_matrix_palette */
609 #ifndef GL_OES_extended_matrix_palette
610 #define GL_OES_extended_matrix_palette 1
611 #endif
612
613 /* GL_OES_fbo_render_mipmap */
614 #ifndef GL_OES_fbo_render_mipmap
615 #define GL_OES_fbo_render_mipmap 1
616 #endif
617
618 /* GL_OES_fixed_point */
619 #ifndef GL_OES_fixed_point
620 #define GL_OES_fixed_point 1
621 #ifdef GL_GLEXT_PROTOTYPES
622 GL_API void GL_APIENTRY glAlphaFuncxOES (GLenum func, GLclampx ref);
623 GL_API void GL_APIENTRY glClearColorxOES (GLclampx red, GLclampx green, GLclampx blue, GLclampx alpha);
624 GL_API void GL_APIENTRY glClearDepthxOES (GLclampx depth);
625 GL_API void GL_APIENTRY glClipPlanexOES (GLenum plane, const GLfixed *equation);
626 GL_API void GL_APIENTRY glColor4xOES (GLfixed red, GLfixed green, GLfixed blue, GLfixed alpha);
627 GL_API void GL_APIENTRY glDepthRangexOES (GLclampx zNear, GLclampx zFar);
628 GL_API void GL_APIENTRY glFogxOES (GLenum pname, GLfixed param);
629 GL_API void GL_APIENTRY glFogxvOES (GLenum pname, const GLfixed *params);
630 GL_API void GL_APIENTRY glFrustumxOES (GLfixed left, GLfixed right, GLfixed bottom, GLfixed top, GLfixed zNear, GLfixed zFar);
631 GL_API void GL_APIENTRY glGetClipPlanexOES (GLenum pname, GLfixed eqn[4]);
632 GL_API void GL_APIENTRY glGetFixedvOES (GLenum pname, GLfixed *params);
633 GL_API void GL_APIENTRY glGetLightxvOES (GLenum light, GLenum pname, GLfixed *params);
634 GL_API void GL_APIENTRY glGetMaterialxvOES (GLenum face, GLenum pname, GLfixed *params);
635 GL_API void GL_APIENTRY glGetTexEnvxvOES (GLenum env, GLenum pname, GLfixed *params);
636 GL_API void GL_APIENTRY glGetTexParameterxvOES (GLenum target, GLenum pname, GLfixed *params);
637 GL_API void GL_APIENTRY glLightModelxOES (GLenum pname, GLfixed param);
638 GL_API void GL_APIENTRY glLightModelxvOES (GLenum pname, const GLfixed *params);
639 GL_API void GL_APIENTRY glLightxOES (GLenum light, GLenum pname, GLfixed param);
640 GL_API void GL_APIENTRY glLightxvOES (GLenum light, GLenum pname, const GLfixed *params);
641 GL_API void GL_APIENTRY glLineWidthxOES (GLfixed width);
642 GL_API void GL_APIENTRY glLoadMatrixxOES (const GLfixed *m);
643 GL_API void GL_APIENTRY glMaterialxOES (GLenum face, GLenum pname, GLfixed param);
644 GL_API void GL_APIENTRY glMaterialxvOES (GLenum face, GLenum pname, const GLfixed *params);
645 GL_API void GL_APIENTRY glMultMatrixxOES (const GLfixed *m);
646 GL_API void GL_APIENTRY glMultiTexCoord4xOES (GLenum target, GLfixed s, GLfixed t, GLfixed r, GLfixed q);
647 GL_API void GL_APIENTRY glNormal3xOES (GLfixed nx, GLfixed ny, GLfixed nz);
648 GL_API void GL_APIENTRY glOrthoxOES (GLfixed left, GLfixed right, GLfixed bottom, GLfixed top, GLfixed zNear, GLfixed zFar);
649 GL_API void GL_APIENTRY glPointParameterxOES (GLenum pname, GLfixed param);
650 GL_API void GL_APIENTRY glPointParameterxvOES (GLenum pname, const GLfixed *params);
651 GL_API void GL_APIENTRY glPointSizexOES (GLfixed size);
652 GL_API void GL_APIENTRY glPolygonOffsetxOES (GLfixed factor, GLfixed units);
653 GL_API void GL_APIENTRY glRotatexOES (GLfixed angle, GLfixed x, GLfixed y, GLfixed z);
654 GL_API void GL_APIENTRY glSampleCoveragexOES (GLclampx value, GLboolean invert);
655 GL_API void GL_APIENTRY glScalexOES (GLfixed x, GLfixed y, GLfixed z);
656 GL_API void GL_APIENTRY glTexEnvxOES (GLenum target, GLenum pname, GLfixed param);
657 GL_API void GL_APIENTRY glTexEnvxvOES (GLenum target, GLenum pname, const GLfixed *params);
658 GL_API void GL_APIENTRY glTexParameterxOES (GLenum target, GLenum pname, GLfixed param);
659 GL_API void GL_APIENTRY glTexParameterxvOES (GLenum target, GLenum pname, const GLfixed *params);
660 GL_API void GL_APIENTRY glTranslatexOES (GLfixed x, GLfixed y, GLfixed z);
661 #endif
662 typedef void (GL_APIENTRYP PFNGLALPHAFUNCXOESPROC) (GLenum func, GLclampx ref);
663 typedef void (GL_APIENTRYP PFNGLCLEARCOLORXOESPROC) (GLclampx red, GLclampx green, GLclampx blue, GLclampx alpha);
664 typedef void (GL_APIENTRYP PFNGLCLEARDEPTHXOESPROC) (GLclampx depth);
665 typedef void (GL_APIENTRYP PFNGLCLIPPLANEXOESPROC) (GLenum plane, const GLfixed *equation);
666 typedef void (GL_APIENTRYP PFNGLCOLOR4XOESPROC) (GLfixed red, GLfixed green, GLfixed blue, GLfixed alpha);
667 typedef void (GL_APIENTRYP PFNGLDEPTHRANGEXOESPROC) (GLclampx zNear, GLclampx zFar);
668 typedef void (GL_APIENTRYP PFNGLFOGXOESPROC) (GLenum pname, GLfixed param);
669 typedef void (GL_APIENTRYP PFNGLFOGXVOESPROC) (GLenum pname, const GLfixed *params);
670 typedef void (GL_APIENTRYP PFNGLFRUSTUMXOESPROC) (GLfixed left, GLfixed right, GLfixed bottom, GLfixed top, GLfixed zNear, GLfixed zFar);
671 typedef void (GL_APIENTRYP PFNGLGETCLIPPLANEXOESPROC) (GLenum pname, GLfixed eqn[4]);
672 typedef void (GL_APIENTRYP PFNGLGETFIXEDVOESPROC) (GLenum pname, GLfixed *params);
673 typedef void (GL_APIENTRYP PFNGLGETLIGHTXVOESPROC) (GLenum light, GLenum pname, GLfixed *params);
674 typedef void (GL_APIENTRYP PFNGLGETMATERIALXVOESPROC) (GLenum face, GLenum pname, GLfixed *params);
675 typedef void (GL_APIENTRYP PFNGLGETTEXENVXVOESPROC) (GLenum env, GLenum pname, GLfixed *params);
676 typedef void (GL_APIENTRYP PFNGLGETTEXPARAMETERXVOESPROC) (GLenum target, GLenum pname, GLfixed *params);
677 typedef void (GL_APIENTRYP PFNGLLIGHTMODELXOESPROC) (GLenum pname, GLfixed param);
678 typedef void (GL_APIENTRYP PFNGLLIGHTMODELXVOESPROC) (GLenum pname, const GLfixed *params);
679 typedef void (GL_APIENTRYP PFNGLLIGHTXOESPROC) (GLenum light, GLenum pname, GLfixed param);
680 typedef void (GL_APIENTRYP PFNGLLIGHTXVOESPROC) (GLenum light, GLenum pname, const GLfixed *params);
681 typedef void (GL_APIENTRYP PFNGLLINEWIDTHXOESPROC) (GLfixed width);
682 typedef void (GL_APIENTRYP PFNGLLOADMATRIXXOESPROC) (const GLfixed *m);
683 typedef void (GL_APIENTRYP PFNGLMATERIALXOESPROC) (GLenum face, GLenum pname, GLfixed param);
684 typedef void (GL_APIENTRYP PFNGLMATERIALXVOESPROC) (GLenum face, GLenum pname, const GLfixed *params);
685 typedef void (GL_APIENTRYP PFNGLMULTMATRIXXOESPROC) (const GLfixed *m);
686 typedef void (GL_APIENTRYP PFNGLMULTITEXCOORD4XOESPROC) (GLenum target, GLfixed s, GLfixed t, GLfixed r, GLfixed q);
687 typedef void (GL_APIENTRYP PFNGLNORMAL3XOESPROC) (GLfixed nx, GLfixed ny, GLfixed nz);
688 typedef void (GL_APIENTRYP PFNGLORTHOXOESPROC) (GLfixed left, GLfixed right, GLfixed bottom, GLfixed top, GLfixed zNear, GLfixed zFar);
689 typedef void (GL_APIENTRYP PFNGLPOINTPARAMETERXOESPROC) (GLenum pname, GLfixed param);
690 typedef void (GL_APIENTRYP PFNGLPOINTPARAMETERXVOESPROC) (GLenum pname, const GLfixed *params);
691 typedef void (GL_APIENTRYP PFNGLPOINTSIZEXOESPROC) (GLfixed size);
692 typedef void (GL_APIENTRYP PFNGLPOLYGONOFFSETXOESPROC) (GLfixed factor, GLfixed units);
693 typedef void (GL_APIENTRYP PFNGLROTATEXOESPROC) (GLfixed angle, GLfixed x, GLfixed y, GLfixed z);
694 typedef void (GL_APIENTRYP PFNGLSAMPLECOVERAGEXOESPROC) (GLclampx value, GLboolean invert);
695 typedef void (GL_APIENTRYP PFNGLSCALEXOESPROC) (GLfixed x, GLfixed y, GLfixed z);
696 typedef void (GL_APIENTRYP PFNGLTEXENVXOESPROC) (GLenum target, GLenum pname, GLfixed param);
697 typedef void (GL_APIENTRYP PFNGLTEXENVXVOESPROC) (GLenum target, GLenum pname, const GLfixed *params);
698 typedef void (GL_APIENTRYP PFNGLTEXPARAMETERXOESPROC) (GLenum target, GLenum pname, GLfixed param);
699 typedef void (GL_APIENTRYP PFNGLTEXPARAMETERXVOESPROC) (GLenum target, GLenum pname, const GLfixed *params);
700 typedef void (GL_APIENTRYP PFNGLTRANSLATEXOESPROC) (GLfixed x, GLfixed y, GLfixed z);
701 #endif
702
703 /* GL_OES_framebuffer_object */
704 #ifndef GL_OES_framebuffer_object
705 #define GL_OES_framebuffer_object 1
706 #ifdef GL_GLEXT_PROTOTYPES
707 GL_API GLboolean GL_APIENTRY glIsRenderbufferOES (GLuint renderbuffer);
708 GL_API void GL_APIENTRY glBindRenderbufferOES (GLenum target, GLuint renderbuffer);
709 GL_API void GL_APIENTRY glDeleteRenderbuffersOES (GLsizei n, const GLuint* renderbuffers);
710 GL_API void GL_APIENTRY glGenRenderbuffersOES (GLsizei n, GLuint* renderbuffers);
711 GL_API void GL_APIENTRY glRenderbufferStorageOES (GLenum target, GLenum internalformat, GLsizei width, GLsizei height);
712 GL_API void GL_APIENTRY glGetRenderbufferParameterivOES (GLenum target, GLenum pname, GLint* params);
713 GL_API GLboolean GL_APIENTRY glIsFramebufferOES (GLuint framebuffer);
714 GL_API void GL_APIENTRY glBindFramebufferOES (GLenum target, GLuint framebuffer);
715 GL_API void GL_APIENTRY glDeleteFramebuffersOES (GLsizei n, const GLuint* framebuffers);
716 GL_API void GL_APIENTRY glGenFramebuffersOES (GLsizei n, GLuint* framebuffers);
717 GL_API GLenum GL_APIENTRY glCheckFramebufferStatusOES (GLenum target);
718 GL_API void GL_APIENTRY glFramebufferRenderbufferOES (GLenum target, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer);
719 GL_API void GL_APIENTRY glFramebufferTexture2DOES (GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level);
720 GL_API void GL_APIENTRY glGetFramebufferAttachmentParameterivOES (GLenum target, GLenum attachment, GLenum pname, GLint* params);
721 GL_API void GL_APIENTRY glGenerateMipmapOES (GLenum target);
722 #endif
723 typedef GLboolean (GL_APIENTRYP PFNGLISRENDERBUFFEROESPROC) (GLuint renderbuffer);
724 typedef void (GL_APIENTRYP PFNGLBINDRENDERBUFFEROESPROC) (GLenum target, GLuint renderbuffer);
725 typedef void (GL_APIENTRYP PFNGLDELETERENDERBUFFERSOESPROC) (GLsizei n, const GLuint* renderbuffers);
726 typedef void (GL_APIENTRYP PFNGLGENRENDERBUFFERSOESPROC) (GLsizei n, GLuint* renderbuffers);
727 typedef void (GL_APIENTRYP PFNGLRENDERBUFFERSTORAGEOESPROC) (GLenum target, GLenum internalformat, GLsizei width, GLsizei height);
728 typedef void (GL_APIENTRYP PFNGLGETRENDERBUFFERPARAMETERIVOESPROC) (GLenum target, GLenum pname, GLint* params);
729 typedef GLboolean (GL_APIENTRYP PFNGLISFRAMEBUFFEROESPROC) (GLuint framebuffer);
730 typedef void (GL_APIENTRYP PFNGLBINDFRAMEBUFFEROESPROC) (GLenum target, GLuint framebuffer);
731 typedef void (GL_APIENTRYP PFNGLDELETEFRAMEBUFFERSOESPROC) (GLsizei n, const GLuint* framebuffers);
732 typedef void (GL_APIENTRYP PFNGLGENFRAMEBUFFERSOESPROC) (GLsizei n, GLuint* framebuffers);
733 typedef GLenum (GL_APIENTRYP PFNGLCHECKFRAMEBUFFERSTATUSOESPROC) (GLenum target);
734 typedef void (GL_APIENTRYP PFNGLFRAMEBUFFERRENDERBUFFEROESPROC) (GLenum target, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer);
735 typedef void (GL_APIENTRYP PFNGLFRAMEBUFFERTEXTURE2DOESPROC) (GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level);
736 typedef void (GL_APIENTRYP PFNGLGETFRAMEBUFFERATTACHMENTPARAMETERIVOESPROC) (GLenum target, GLenum attachment, GLenum pname, GLint* params);
737 typedef void (GL_APIENTRYP PFNGLGENERATEMIPMAPOESPROC) (GLenum target);
738 #endif
739
740 /* GL_OES_mapbuffer */
741 #ifndef GL_OES_mapbuffer
742 #define GL_OES_mapbuffer 1
743 #ifdef GL_GLEXT_PROTOTYPES
744 GL_API void* GL_APIENTRY glMapBufferOES (GLenum target, GLenum access);
745 GL_API GLboolean GL_APIENTRY glUnmapBufferOES (GLenum target);
746 GL_API void GL_APIENTRY glGetBufferPointervOES (GLenum target, GLenum pname, GLvoid ** params);
747 #endif
748 typedef void* (GL_APIENTRYP PFNGLMAPBUFFEROESPROC) (GLenum target, GLenum access);
749 typedef GLboolean (GL_APIENTRYP PFNGLUNMAPBUFFEROESPROC) (GLenum target);
750 typedef void (GL_APIENTRYP PFNGLGETBUFFERPOINTERVOESPROC) (GLenum target, GLenum pname, GLvoid ** params);
751 #endif
752
753 /* GL_OES_matrix_get */
754 #ifndef GL_OES_matrix_get
755 #define GL_OES_matrix_get 1
756 #endif
757
758 /* GL_OES_matrix_palette */
759 #ifndef GL_OES_matrix_palette
760 #define GL_OES_matrix_palette 1
761 #ifdef GL_GLEXT_PROTOTYPES
762 GL_API void GL_APIENTRY glCurrentPaletteMatrixOES (GLuint matrixpaletteindex);
763 GL_API void GL_APIENTRY glLoadPaletteFromModelViewMatrixOES (void);
764 GL_API void GL_APIENTRY glMatrixIndexPointerOES (GLint size, GLenum type, GLsizei stride, const GLvoid *pointer);
765 GL_API void GL_APIENTRY glWeightPointerOES (GLint size, GLenum type, GLsizei stride, const GLvoid *pointer);
766 #endif
767 typedef void (GL_APIENTRYP PFNGLCURRENTPALETTEMATRIXOESPROC) (GLuint matrixpaletteindex);
768 typedef void (GL_APIENTRYP PFNGLLOADPALETTEFROMMODELVIEWMATRIXOESPROC) (void);
769 typedef void (GL_APIENTRYP PFNGLMATRIXINDEXPOINTEROESPROC) (GLint size, GLenum type, GLsizei stride, const GLvoid *pointer);
770 typedef void (GL_APIENTRYP PFNGLWEIGHTPOINTEROESPROC) (GLint size, GLenum type, GLsizei stride, const GLvoid *pointer);
771 #endif
772
773 /* GL_OES_packed_depth_stencil */
774 #ifndef GL_OES_packed_depth_stencil
775 #define GL_OES_packed_depth_stencil 1
776 #endif
777
778 /* GL_OES_required_internalformat */
779 #ifndef GL_OES_required_internalformat
780 #define GL_OES_required_internalformat 1
781 #endif
782
783 /* GL_OES_query_matrix */
784 #ifndef GL_OES_query_matrix
785 #define GL_OES_query_matrix 1
786 #ifdef GL_GLEXT_PROTOTYPES
787 GL_API GLbitfield GL_APIENTRY glQueryMatrixxOES (GLfixed mantissa[16], GLint exponent[16]);
788 #endif
789 typedef GLbitfield (GL_APIENTRYP PFNGLQUERYMATRIXXOESPROC) (GLfixed mantissa[16], GLint exponent[16]);
790 #endif
791
792 /* GL_OES_rgb8_rgba8 */
793 #ifndef GL_OES_rgb8_rgba8
794 #define GL_OES_rgb8_rgba8 1
795 #endif
796
797 /* GL_OES_single_precision */
798 #ifndef GL_OES_single_precision
799 #define GL_OES_single_precision 1
800 #ifdef GL_GLEXT_PROTOTYPES
801 GL_API void GL_APIENTRY glDepthRangefOES (GLclampf zNear, GLclampf zFar);
802 GL_API void GL_APIENTRY glFrustumfOES (GLfloat left, GLfloat right, GLfloat bottom, GLfloat top, GLfloat zNear, GLfloat zFar);
803 GL_API void GL_APIENTRY glOrthofOES (GLfloat left, GLfloat right, GLfloat bottom, GLfloat top, GLfloat zNear, GLfloat zFar);
804 GL_API void GL_APIENTRY glClipPlanefOES (GLenum plane, const GLfloat *equation);
805 GL_API void GL_APIENTRY glGetClipPlanefOES (GLenum pname, GLfloat eqn[4]);
806 GL_API void GL_APIENTRY glClearDepthfOES (GLclampf depth);
807 #endif
808 typedef void (GL_APIENTRYP PFNGLDEPTHRANGEFOESPROC) (GLclampf zNear, GLclampf zFar);
809 typedef void (GL_APIENTRYP PFNGLFRUSTUMFOESPROC) (GLfloat left, GLfloat right, GLfloat bottom, GLfloat top, GLfloat zNear, GLfloat zFar);
810 typedef void (GL_APIENTRYP PFNGLORTHOFOESPROC) (GLfloat left, GLfloat right, GLfloat bottom, GLfloat top, GLfloat zNear, GLfloat zFar);
811 typedef void (GL_APIENTRYP PFNGLCLIPPLANEFOESPROC) (GLenum plane, const GLfloat *equation);
812 typedef void (GL_APIENTRYP PFNGLGETCLIPPLANEFOESPROC) (GLenum pname, GLfloat eqn[4]);
813 typedef void (GL_APIENTRYP PFNGLCLEARDEPTHFOESPROC) (GLclampf depth);
814 #endif
815
816 /* GL_OES_stencil1 */
817 #ifndef GL_OES_stencil1
818 #define GL_OES_stencil1 1
819 #endif
820
821 /* GL_OES_stencil4 */
822 #ifndef GL_OES_stencil4
823 #define GL_OES_stencil4 1
824 #endif
825
826 /* GL_OES_stencil8 */
827 #ifndef GL_OES_stencil8
828 #define GL_OES_stencil8 1
829 #endif
830
831 /* GL_OES_stencil_wrap */
832 #ifndef GL_OES_stencil_wrap
833 #define GL_OES_stencil_wrap 1
834 #endif
835
836 /* GL_OES_texture_cube_map */
837 #ifndef GL_OES_texture_cube_map
838 #define GL_OES_texture_cube_map 1
839 #ifdef GL_GLEXT_PROTOTYPES
840 GL_API void GL_APIENTRY glTexGenfOES (GLenum coord, GLenum pname, GLfloat param);
841 GL_API void GL_APIENTRY glTexGenfvOES (GLenum coord, GLenum pname, const GLfloat *params);
842 GL_API void GL_APIENTRY glTexGeniOES (GLenum coord, GLenum pname, GLint param);
843 GL_API void GL_APIENTRY glTexGenivOES (GLenum coord, GLenum pname, const GLint *params);
844 GL_API void GL_APIENTRY glTexGenxOES (GLenum coord, GLenum pname, GLfixed param);
845 GL_API void GL_APIENTRY glTexGenxvOES (GLenum coord, GLenum pname, const GLfixed *params);
846 GL_API void GL_APIENTRY glGetTexGenfvOES (GLenum coord, GLenum pname, GLfloat *params);
847 GL_API void GL_APIENTRY glGetTexGenivOES (GLenum coord, GLenum pname, GLint *params);
848 GL_API void GL_APIENTRY glGetTexGenxvOES (GLenum coord, GLenum pname, GLfixed *params);
849 #endif
850 typedef void (GL_APIENTRYP PFNGLTEXGENFOESPROC) (GLenum coord, GLenum pname, GLfloat param);
851 typedef void (GL_APIENTRYP PFNGLTEXGENFVOESPROC) (GLenum coord, GLenum pname, const GLfloat *params);
852 typedef void (GL_APIENTRYP PFNGLTEXGENIOESPROC) (GLenum coord, GLenum pname, GLint param);
853 typedef void (GL_APIENTRYP PFNGLTEXGENIVOESPROC) (GLenum coord, GLenum pname, const GLint *params);
854 typedef void (GL_APIENTRYP PFNGLTEXGENXOESPROC) (GLenum coord, GLenum pname, GLfixed param);
855 typedef void (GL_APIENTRYP PFNGLTEXGENXVOESPROC) (GLenum coord, GLenum pname, const GLfixed *params);
856 typedef void (GL_APIENTRYP PFNGLGETTEXGENFVOESPROC) (GLenum coord, GLenum pname, GLfloat *params);
857 typedef void (GL_APIENTRYP PFNGLGETTEXGENIVOESPROC) (GLenum coord, GLenum pname, GLint *params);
858 typedef void (GL_APIENTRYP PFNGLGETTEXGENXVOESPROC) (GLenum coord, GLenum pname, GLfixed *params);
859 #endif
860
861 /* GL_OES_texture_env_crossbar */
862 #ifndef GL_OES_texture_env_crossbar
863 #define GL_OES_texture_env_crossbar 1
864 #endif
865
866 /* GL_OES_texture_mirrored_repeat */
867 #ifndef GL_OES_texture_mirrored_repeat
868 #define GL_OES_texture_mirrored_repeat 1
869 #endif
870
871 /* GL_OES_vertex_array_object */
872 #ifndef GL_OES_vertex_array_object
873 #define GL_OES_vertex_array_object 1
874 #ifdef GL_GLEXT_PROTOTYPES
875 GL_API void GL_APIENTRY glBindVertexArrayOES (GLuint array);
876 GL_API void GL_APIENTRY glDeleteVertexArraysOES (GLsizei n, const GLuint *arrays);
877 GL_API void GL_APIENTRY glGenVertexArraysOES (GLsizei n, GLuint *arrays);
878 GL_API GLboolean GL_APIENTRY glIsVertexArrayOES (GLuint array);
879 #endif
880 typedef void (GL_APIENTRYP PFNGLBINDVERTEXARRAYOESPROC) (GLuint array);
881 typedef void (GL_APIENTRYP PFNGLDELETEVERTEXARRAYSOESPROC) (GLsizei n, const GLuint *arrays);
882 typedef void (GL_APIENTRYP PFNGLGENVERTEXARRAYSOESPROC) (GLsizei n, GLuint *arrays);
883 typedef GLboolean (GL_APIENTRYP PFNGLISVERTEXARRAYOESPROC) (GLuint array);
884 #endif
885
886 /*------------------------------------------------------------------------*
887  * AMD extension functions
888  *------------------------------------------------------------------------*/
889
890 /* GL_AMD_compressed_3DC_texture */
891 #ifndef GL_AMD_compressed_3DC_texture
892 #define GL_AMD_compressed_3DC_texture 1
893 #endif
894
895 /* GL_AMD_compressed_ATC_texture */
896 #ifndef GL_AMD_compressed_ATC_texture
897 #define GL_AMD_compressed_ATC_texture 1
898 #endif
899
900 /*------------------------------------------------------------------------*
901  * APPLE extension functions
902  *------------------------------------------------------------------------*/
903
904 /* GL_APPLE_texture_2D_limited_npot */
905 #ifndef GL_APPLE_texture_2D_limited_npot
906 #define GL_APPLE_texture_2D_limited_npot 1
907 #endif
908
909 /* GL_APPLE_framebuffer_multisample */
910 #ifndef GL_APPLE_framebuffer_multisample
911 #define GL_APPLE_framebuffer_multisample 1
912 #ifdef GL_GLEXT_PROTOTYPES
913 GL_API void GL_APIENTRY glRenderbufferStorageMultisampleAPPLE (GLenum, GLsizei, GLenum, GLsizei, GLsizei);
914 GL_API void GL_APIENTRY glResolveMultisampleFramebufferAPPLE (void);
915 #endif /* GL_GLEXT_PROTOTYPES */
916 typedef void (GL_APIENTRYP PFNGLRENDERBUFFERSTORAGEMULTISAMPLEAPPLEPROC) (GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height);
917 typedef void (GL_APIENTRYP PFNGLRESOLVEMULTISAMPLEFRAMEBUFFERAPPLEPROC) (void);
918 #endif
919
920 /* GL_APPLE_texture_format_BGRA8888 */
921 #ifndef GL_APPLE_texture_format_BGRA8888
922 #define GL_APPLE_texture_format_BGRA8888 1
923 #endif
924
925 /* GL_APPLE_texture_max_level */
926 #ifndef GL_APPLE_texture_max_level
927 #define GL_APPLE_texture_max_level 1
928 #endif
929
930 /*------------------------------------------------------------------------*
931  * ARM extension functions
932  *------------------------------------------------------------------------*/
933
934 /* GL_ARM_rgba8 */
935 #ifndef GL_ARM_rgba8
936 #define GL_ARM_rgba8 1
937 #endif
938
939 /*------------------------------------------------------------------------*
940  * EXT extension functions
941  *------------------------------------------------------------------------*/
942
943 /* GL_EXT_blend_minmax */
944 #ifndef GL_EXT_blend_minmax
945 #define GL_EXT_blend_minmax 1
946 #endif
947
948 /* GL_EXT_discard_framebuffer */
949 #ifndef GL_EXT_discard_framebuffer
950 #define GL_EXT_discard_framebuffer 1
951 #ifdef GL_GLEXT_PROTOTYPES
952 GL_API void GL_APIENTRY glDiscardFramebufferEXT (GLenum target, GLsizei numAttachments, const GLenum *attachments);
953 #endif
954 typedef void (GL_APIENTRYP PFNGLDISCARDFRAMEBUFFEREXTPROC) (GLenum target, GLsizei numAttachments, const GLenum *attachments);
955 #endif
956
957 /* GL_EXT_multisampled_render_to_texture */
958 #ifndef GL_EXT_multisampled_render_to_texture
959 #define GL_EXT_multisampled_render_to_texture 1
960 #ifdef GL_GLEXT_PROTOTYPES
961 GL_API void GL_APIENTRY glRenderbufferStorageMultisampleEXT (GLenum, GLsizei, GLenum, GLsizei, GLsizei);
962 GL_API void GL_APIENTRY glFramebufferTexture2DMultisampleEXT (GLenum, GLenum, GLenum, GLuint, GLint, GLsizei);
963 #endif
964 typedef void (GL_APIENTRYP PFNGLRENDERBUFFERSTORAGEMULTISAMPLEEXTPROC) (GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height);
965 typedef void (GL_APIENTRYP PFNGLFRAMEBUFFERTEXTURE2DMULTISAMPLEEXTPROC) (GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLsizei samples);
966 #endif
967
968 /* GL_EXT_multi_draw_arrays */
969 #ifndef GL_EXT_multi_draw_arrays
970 #define GL_EXT_multi_draw_arrays 1
971 #ifdef GL_GLEXT_PROTOTYPES
972 GL_API void GL_APIENTRY glMultiDrawArraysEXT (GLenum, GLint *, GLsizei *, GLsizei);
973 GL_API void GL_APIENTRY glMultiDrawElementsEXT (GLenum, const GLsizei *, GLenum, const GLvoid* *, GLsizei);
974 #endif /* GL_GLEXT_PROTOTYPES */
975 typedef void (GL_APIENTRYP PFNGLMULTIDRAWARRAYSEXTPROC) (GLenum mode, GLint *first, GLsizei *count, GLsizei primcount);
976 typedef void (GL_APIENTRYP PFNGLMULTIDRAWELEMENTSEXTPROC) (GLenum mode, const GLsizei *count, GLenum type, const GLvoid* *indices, GLsizei primcount);
977 #endif
978
979 /* GL_EXT_read_format_bgra */
980 #ifndef GL_EXT_read_format_bgra
981 #define GL_EXT_read_format_bgra 1
982 #endif
983
984 /* GL_EXT_robustness */
985 #ifndef GL_EXT_robustness
986 #define GL_EXT_robustness 1
987 #ifdef GL_GLEXT_PROTOTYPES
988 GL_API GLenum GL_APIENTRY glGetGraphicsResetStatusEXT (void);
989 GL_API void GL_APIENTRY glReadnPixelsEXT (GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, GLsizei bufSize, void *data);
990 GL_API void GL_APIENTRY glGetnUniformfvEXT (GLuint program, GLint location, GLsizei bufSize, float *params);
991 GL_API void GL_APIENTRY glGetnUniformivEXT (GLuint program, GLint location, GLsizei bufSize, GLint *params);
992 #endif
993 typedef GLenum (GL_APIENTRYP PFNGLGETGRAPHICSRESETSTATUSEXTPROC) (void);
994 typedef void (GL_APIENTRYP PFNGLREADNPIXELSEXTPROC) (GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, GLsizei bufSize, void *data);
995 typedef void (GL_APIENTRYP PFNGLGETNUNIFORMFVEXTPROC) (GLuint program, GLint location, GLsizei bufSize, float *params);
996 typedef void (GL_APIENTRYP PFNGLGETNUNIFORMIVEXTPROC) (GLuint program, GLint location, GLsizei bufSize, GLint *params);
997 #endif
998
999 /* GL_EXT_sRGB */
1000 #ifndef GL_EXT_sRGB
1001 #define GL_EXT_sRGB 1
1002 #endif
1003
1004 /* GL_EXT_texture_compression_dxt1 */
1005 #ifndef GL_EXT_texture_compression_dxt1
1006 #define GL_EXT_texture_compression_dxt1 1
1007 #endif
1008
1009 /* GL_EXT_texture_filter_anisotropic */
1010 #ifndef GL_EXT_texture_filter_anisotropic
1011 #define GL_EXT_texture_filter_anisotropic 1
1012 #endif
1013
1014 /* GL_EXT_texture_format_BGRA8888 */
1015 #ifndef GL_EXT_texture_format_BGRA8888
1016 #define GL_EXT_texture_format_BGRA8888 1
1017 #endif
1018
1019 /* GL_EXT_texture_lod_bias */
1020 #ifndef GL_EXT_texture_lod_bias
1021 #define GL_EXT_texture_lod_bias 1
1022 #endif
1023
1024 /* GL_EXT_texture_storage */
1025 #ifndef GL_EXT_texture_storage
1026 #define GL_EXT_texture_storage 1
1027 #ifdef GL_GLEXT_PROTOTYPES
1028 GL_API void GL_APIENTRY glTexStorage1DEXT (GLenum target, GLsizei levels, GLenum internalformat, GLsizei width);
1029 GL_API void GL_APIENTRY glTexStorage2DEXT (GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height);
1030 GL_API void GL_APIENTRY glTexStorage3DEXT (GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth);
1031 GL_API void GL_APIENTRY glTextureStorage1DEXT (GLuint texture, GLenum target, GLsizei levels, GLenum internalformat, GLsizei width);
1032 GL_API void GL_APIENTRY glTextureStorage2DEXT (GLuint texture, GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height);
1033 GL_API void GL_APIENTRY glTextureStorage3DEXT (GLuint texture, GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth);
1034 #endif
1035 typedef void (GL_APIENTRYP PFNGLTEXSTORAGE1DEXTPROC) (GLenum target, GLsizei levels, GLenum internalformat, GLsizei width);
1036 typedef void (GL_APIENTRYP PFNGLTEXSTORAGE2DEXTPROC) (GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height);
1037 typedef void (GL_APIENTRYP PFNGLTEXSTORAGE3DEXTPROC) (GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth);
1038 typedef void (GL_APIENTRYP PFNGLTEXTURESTORAGE1DEXTPROC) (GLuint texture, GLenum target, GLsizei levels, GLenum internalformat, GLsizei width);
1039 typedef void (GL_APIENTRYP PFNGLTEXTURESTORAGE2DEXTPROC) (GLuint texture, GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height);
1040 typedef void (GL_APIENTRYP PFNGLTEXTURESTORAGE3DEXTPROC) (GLuint texture, GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth);
1041 #endif
1042
1043 /*------------------------------------------------------------------------*
1044  * IMG extension functions
1045  *------------------------------------------------------------------------*/
1046
1047 /* GL_IMG_read_format */
1048 #ifndef GL_IMG_read_format
1049 #define GL_IMG_read_format 1
1050 #endif
1051
1052 /* GL_IMG_texture_compression_pvrtc */
1053 #ifndef GL_IMG_texture_compression_pvrtc
1054 #define GL_IMG_texture_compression_pvrtc 1
1055 #endif
1056
1057 /* GL_IMG_texture_env_enhanced_fixed_function */
1058 #ifndef GL_IMG_texture_env_enhanced_fixed_function
1059 #define GL_IMG_texture_env_enhanced_fixed_function 1
1060 #endif
1061
1062 /* GL_IMG_user_clip_plane */
1063 #ifndef GL_IMG_user_clip_plane
1064 #define GL_IMG_user_clip_plane 1
1065 #ifdef GL_GLEXT_PROTOTYPES
1066 GL_API void GL_APIENTRY glClipPlanefIMG (GLenum, const GLfloat *);
1067 GL_API void GL_APIENTRY glClipPlanexIMG (GLenum, const GLfixed *);
1068 #endif
1069 typedef void (GL_APIENTRYP PFNGLCLIPPLANEFIMGPROC) (GLenum p, const GLfloat *eqn);
1070 typedef void (GL_APIENTRYP PFNGLCLIPPLANEXIMGPROC) (GLenum p, const GLfixed *eqn);
1071 #endif
1072
1073 /* GL_IMG_multisampled_render_to_texture */
1074 #ifndef GL_IMG_multisampled_render_to_texture
1075 #define GL_IMG_multisampled_render_to_texture 1
1076 #ifdef GL_GLEXT_PROTOTYPES
1077 GL_API void GL_APIENTRY glRenderbufferStorageMultisampleIMG (GLenum, GLsizei, GLenum, GLsizei, GLsizei);
1078 GL_API void GL_APIENTRY glFramebufferTexture2DMultisampleIMG (GLenum, GLenum, GLenum, GLuint, GLint, GLsizei);
1079 #endif
1080 typedef void (GL_APIENTRYP PFNGLRENDERBUFFERSTORAGEMULTISAMPLEIMGPROC) (GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height);
1081 typedef void (GL_APIENTRYP PFNGLFRAMEBUFFERTEXTURE2DMULTISAMPLEIMGPROC) (GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLsizei samples);
1082 #endif
1083
1084 /*------------------------------------------------------------------------*
1085  * NV extension functions
1086  *------------------------------------------------------------------------*/
1087
1088 /* NV_fence */
1089 #ifndef GL_NV_fence
1090 #define GL_NV_fence 1
1091 #ifdef GL_GLEXT_PROTOTYPES
1092 GL_API void GL_APIENTRY glDeleteFencesNV (GLsizei, const GLuint *);
1093 GL_API void GL_APIENTRY glGenFencesNV (GLsizei, GLuint *);
1094 GL_API GLboolean GL_APIENTRY glIsFenceNV (GLuint);
1095 GL_API GLboolean GL_APIENTRY glTestFenceNV (GLuint);
1096 GL_API void GL_APIENTRY glGetFenceivNV (GLuint, GLenum, GLint *);
1097 GL_API void GL_APIENTRY glFinishFenceNV (GLuint);
1098 GL_API void GL_APIENTRY glSetFenceNV (GLuint, GLenum);
1099 #endif
1100 typedef void (GL_APIENTRYP PFNGLDELETEFENCESNVPROC) (GLsizei n, const GLuint *fences);
1101 typedef void (GL_APIENTRYP PFNGLGENFENCESNVPROC) (GLsizei n, GLuint *fences);
1102 typedef GLboolean (GL_APIENTRYP PFNGLISFENCENVPROC) (GLuint fence);
1103 typedef GLboolean (GL_APIENTRYP PFNGLTESTFENCENVPROC) (GLuint fence);
1104 typedef void (GL_APIENTRYP PFNGLGETFENCEIVNVPROC) (GLuint fence, GLenum pname, GLint *params);
1105 typedef void (GL_APIENTRYP PFNGLFINISHFENCENVPROC) (GLuint fence);
1106 typedef void (GL_APIENTRYP PFNGLSETFENCENVPROC) (GLuint fence, GLenum condition);
1107 #endif
1108
1109 /*------------------------------------------------------------------------*
1110  * QCOM extension functions
1111  *------------------------------------------------------------------------*/
1112
1113 /* GL_QCOM_driver_control */
1114 #ifndef GL_QCOM_driver_control
1115 #define GL_QCOM_driver_control 1
1116 #ifdef GL_GLEXT_PROTOTYPES
1117 GL_API void GL_APIENTRY glGetDriverControlsQCOM (GLint *num, GLsizei size, GLuint *driverControls);
1118 GL_API void GL_APIENTRY glGetDriverControlStringQCOM (GLuint driverControl, GLsizei bufSize, GLsizei *length, GLchar *driverControlString);
1119 GL_API void GL_APIENTRY glEnableDriverControlQCOM (GLuint driverControl);
1120 GL_API void GL_APIENTRY glDisableDriverControlQCOM (GLuint driverControl);
1121 #endif
1122 typedef void (GL_APIENTRYP PFNGLGETDRIVERCONTROLSQCOMPROC) (GLint *num, GLsizei size, GLuint *driverControls);
1123 typedef void (GL_APIENTRYP PFNGLGETDRIVERCONTROLSTRINGQCOMPROC) (GLuint driverControl, GLsizei bufSize, GLsizei *length, GLchar *driverControlString);
1124 typedef void (GL_APIENTRYP PFNGLENABLEDRIVERCONTROLQCOMPROC) (GLuint driverControl);
1125 typedef void (GL_APIENTRYP PFNGLDISABLEDRIVERCONTROLQCOMPROC) (GLuint driverControl);
1126 #endif
1127
1128 /* GL_QCOM_extended_get */
1129 #ifndef GL_QCOM_extended_get
1130 #define GL_QCOM_extended_get 1
1131 #ifdef GL_GLEXT_PROTOTYPES
1132 GL_API void GL_APIENTRY glExtGetTexturesQCOM (GLuint *textures, GLint maxTextures, GLint *numTextures);
1133 GL_API void GL_APIENTRY glExtGetBuffersQCOM (GLuint *buffers, GLint maxBuffers, GLint *numBuffers);
1134 GL_API void GL_APIENTRY glExtGetRenderbuffersQCOM (GLuint *renderbuffers, GLint maxRenderbuffers, GLint *numRenderbuffers);
1135 GL_API void GL_APIENTRY glExtGetFramebuffersQCOM (GLuint *framebuffers, GLint maxFramebuffers, GLint *numFramebuffers);
1136 GL_API void GL_APIENTRY glExtGetTexLevelParameterivQCOM (GLuint texture, GLenum face, GLint level, GLenum pname, GLint *params);
1137 GL_API void GL_APIENTRY glExtTexObjectStateOverrideiQCOM (GLenum target, GLenum pname, GLint param);
1138 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);
1139 GL_API void GL_APIENTRY glExtGetBufferPointervQCOM (GLenum target, GLvoid **params);
1140 #endif
1141 typedef void (GL_APIENTRYP PFNGLEXTGETTEXTURESQCOMPROC) (GLuint *textures, GLint maxTextures, GLint *numTextures);
1142 typedef void (GL_APIENTRYP PFNGLEXTGETBUFFERSQCOMPROC) (GLuint *buffers, GLint maxBuffers, GLint *numBuffers);
1143 typedef void (GL_APIENTRYP PFNGLEXTGETRENDERBUFFERSQCOMPROC) (GLuint *renderbuffers, GLint maxRenderbuffers, GLint *numRenderbuffers);
1144 typedef void (GL_APIENTRYP PFNGLEXTGETFRAMEBUFFERSQCOMPROC) (GLuint *framebuffers, GLint maxFramebuffers, GLint *numFramebuffers);
1145 typedef void (GL_APIENTRYP PFNGLEXTGETTEXLEVELPARAMETERIVQCOMPROC) (GLuint texture, GLenum face, GLint level, GLenum pname, GLint *params);
1146 typedef void (GL_APIENTRYP PFNGLEXTTEXOBJECTSTATEOVERRIDEIQCOMPROC) (GLenum target, GLenum pname, GLint param);
1147 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);
1148 typedef void (GL_APIENTRYP PFNGLEXTGETBUFFERPOINTERVQCOMPROC) (GLenum target, GLvoid **params);
1149 #endif
1150
1151 /* GL_QCOM_extended_get2 */
1152 #ifndef GL_QCOM_extended_get2
1153 #define GL_QCOM_extended_get2 1
1154 #ifdef GL_GLEXT_PROTOTYPES
1155 GL_API void GL_APIENTRY glExtGetShadersQCOM (GLuint *shaders, GLint maxShaders, GLint *numShaders);
1156 GL_API void GL_APIENTRY glExtGetProgramsQCOM (GLuint *programs, GLint maxPrograms, GLint *numPrograms);
1157 GL_API GLboolean GL_APIENTRY glExtIsProgramBinaryQCOM (GLuint program);
1158 GL_API void GL_APIENTRY glExtGetProgramBinarySourceQCOM (GLuint program, GLenum shadertype, GLchar *source, GLint *length);
1159 #endif
1160 typedef void (GL_APIENTRYP PFNGLEXTGETSHADERSQCOMPROC) (GLuint *shaders, GLint maxShaders, GLint *numShaders);
1161 typedef void (GL_APIENTRYP PFNGLEXTGETPROGRAMSQCOMPROC) (GLuint *programs, GLint maxPrograms, GLint *numPrograms);
1162 typedef GLboolean (GL_APIENTRYP PFNGLEXTISPROGRAMBINARYQCOMPROC) (GLuint program);
1163 typedef void (GL_APIENTRYP PFNGLEXTGETPROGRAMBINARYSOURCEQCOMPROC) (GLuint program, GLenum shadertype, GLchar *source, GLint *length);
1164 #endif
1165
1166 /* GL_QCOM_perfmon_global_mode */
1167 #ifndef GL_QCOM_perfmon_global_mode
1168 #define GL_QCOM_perfmon_global_mode 1
1169 #endif
1170
1171 /* GL_QCOM_writeonly_rendering */
1172 #ifndef GL_QCOM_writeonly_rendering
1173 #define GL_QCOM_writeonly_rendering 1
1174 #endif
1175
1176 /* GL_QCOM_tiled_rendering */
1177 #ifndef GL_QCOM_tiled_rendering
1178 #define GL_QCOM_tiled_rendering 1
1179 #ifdef GL_GLEXT_PROTOTYPES
1180 GL_API void GL_APIENTRY glStartTilingQCOM (GLuint x, GLuint y, GLuint width, GLuint height, GLbitfield preserveMask);
1181 GL_API void GL_APIENTRY glEndTilingQCOM (GLbitfield preserveMask);
1182 #endif
1183 typedef void (GL_APIENTRYP PFNGLSTARTTILINGQCOMPROC) (GLuint x, GLuint y, GLuint width, GLuint height, GLbitfield preserveMask);
1184 typedef void (GL_APIENTRYP PFNGLENDTILINGQCOMPROC) (GLbitfield preserveMask);
1185 #endif
1186
1187 #ifdef __cplusplus
1188 }
1189 #endif
1190
1191 #endif /* __gles_glext_h_ */
1192