SDL  2.0
SDL_opengles2_gl2ext.h
Go to the documentation of this file.
1 #ifndef __gl2ext_h_
2 #define __gl2ext_h_
3 
4 /* $Revision: 22801 $ on $Date:: 2013-08-21 03:20:48 -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 /* New types shared by several extensions */
20 
21 #ifndef __gl3_h_
22 /* These are defined with respect to <inttypes.h> in the
23  * Apple extension spec, but they are also used by non-APPLE
24  * extensions, and in the Khronos header we use the Khronos
25  * portable types in khrplatform.h, which must be defined.
26  */
29 typedef struct __GLsync *GLsync;
30 #endif
31 
32 
33 /*------------------------------------------------------------------------*
34  * OES extension tokens
35  *------------------------------------------------------------------------*/
36 
37 /* GL_OES_compressed_ETC1_RGB8_texture */
38 #ifndef GL_OES_compressed_ETC1_RGB8_texture
39 #define GL_ETC1_RGB8_OES 0x8D64
40 #endif
41 
42 /* GL_OES_compressed_paletted_texture */
43 #ifndef GL_OES_compressed_paletted_texture
44 #define GL_PALETTE4_RGB8_OES 0x8B90
45 #define GL_PALETTE4_RGBA8_OES 0x8B91
46 #define GL_PALETTE4_R5_G6_B5_OES 0x8B92
47 #define GL_PALETTE4_RGBA4_OES 0x8B93
48 #define GL_PALETTE4_RGB5_A1_OES 0x8B94
49 #define GL_PALETTE8_RGB8_OES 0x8B95
50 #define GL_PALETTE8_RGBA8_OES 0x8B96
51 #define GL_PALETTE8_R5_G6_B5_OES 0x8B97
52 #define GL_PALETTE8_RGBA4_OES 0x8B98
53 #define GL_PALETTE8_RGB5_A1_OES 0x8B99
54 #endif
55 
56 /* GL_OES_depth24 */
57 #ifndef GL_OES_depth24
58 #define GL_DEPTH_COMPONENT24_OES 0x81A6
59 #endif
60 
61 /* GL_OES_depth32 */
62 #ifndef GL_OES_depth32
63 #define GL_DEPTH_COMPONENT32_OES 0x81A7
64 #endif
65 
66 /* GL_OES_depth_texture */
67 /* No new tokens introduced by this extension. */
68 
69 /* GL_OES_EGL_image */
70 #ifndef GL_OES_EGL_image
71 typedef void* GLeglImageOES;
72 #endif
73 
74 /* GL_OES_EGL_image_external */
75 #ifndef GL_OES_EGL_image_external
76 /* GLeglImageOES defined in GL_OES_EGL_image already. */
77 #define GL_TEXTURE_EXTERNAL_OES 0x8D65
78 #define GL_SAMPLER_EXTERNAL_OES 0x8D66
79 #define GL_TEXTURE_BINDING_EXTERNAL_OES 0x8D67
80 #define GL_REQUIRED_TEXTURE_IMAGE_UNITS_OES 0x8D68
81 #endif
82 
83 /* GL_OES_element_index_uint */
84 #ifndef GL_OES_element_index_uint
85 #define GL_UNSIGNED_INT 0x1405
86 #endif
87 
88 /* GL_OES_get_program_binary */
89 #ifndef GL_OES_get_program_binary
90 #define GL_PROGRAM_BINARY_LENGTH_OES 0x8741
91 #define GL_NUM_PROGRAM_BINARY_FORMATS_OES 0x87FE
92 #define GL_PROGRAM_BINARY_FORMATS_OES 0x87FF
93 #endif
94 
95 /* GL_OES_mapbuffer */
96 #ifndef GL_OES_mapbuffer
97 #define GL_WRITE_ONLY_OES 0x88B9
98 #define GL_BUFFER_ACCESS_OES 0x88BB
99 #define GL_BUFFER_MAPPED_OES 0x88BC
100 #define GL_BUFFER_MAP_POINTER_OES 0x88BD
101 #endif
102 
103 /* GL_OES_packed_depth_stencil */
104 #ifndef GL_OES_packed_depth_stencil
105 #define GL_DEPTH_STENCIL_OES 0x84F9
106 #define GL_UNSIGNED_INT_24_8_OES 0x84FA
107 #define GL_DEPTH24_STENCIL8_OES 0x88F0
108 #endif
109 
110 /* GL_OES_required_internalformat */
111 #ifndef GL_OES_required_internalformat
112 #define GL_ALPHA8_OES 0x803C
113 #define GL_DEPTH_COMPONENT16_OES 0x81A5
114 /* reuse GL_DEPTH_COMPONENT24_OES */
115 /* reuse GL_DEPTH24_STENCIL8_OES */
116 /* reuse GL_DEPTH_COMPONENT32_OES */
117 #define GL_LUMINANCE4_ALPHA4_OES 0x8043
118 #define GL_LUMINANCE8_ALPHA8_OES 0x8045
119 #define GL_LUMINANCE8_OES 0x8040
120 #define GL_RGBA4_OES 0x8056
121 #define GL_RGB5_A1_OES 0x8057
122 #define GL_RGB565_OES 0x8D62
123 /* reuse GL_RGB8_OES */
124 /* reuse GL_RGBA8_OES */
125 /* reuse GL_RGB10_EXT */
126 /* reuse GL_RGB10_A2_EXT */
127 #endif
128 
129 /* GL_OES_rgb8_rgba8 */
130 #ifndef GL_OES_rgb8_rgba8
131 #define GL_RGB8_OES 0x8051
132 #define GL_RGBA8_OES 0x8058
133 #endif
134 
135 /* GL_OES_standard_derivatives */
136 #ifndef GL_OES_standard_derivatives
137 #define GL_FRAGMENT_SHADER_DERIVATIVE_HINT_OES 0x8B8B
138 #endif
139 
140 /* GL_OES_stencil1 */
141 #ifndef GL_OES_stencil1
142 #define GL_STENCIL_INDEX1_OES 0x8D46
143 #endif
144 
145 /* GL_OES_stencil4 */
146 #ifndef GL_OES_stencil4
147 #define GL_STENCIL_INDEX4_OES 0x8D47
148 #endif
149 
150 #ifndef GL_OES_surfaceless_context
151 #define GL_FRAMEBUFFER_UNDEFINED_OES 0x8219
152 #endif
153 
154 /* GL_OES_texture_3D */
155 #ifndef GL_OES_texture_3D
156 #define GL_TEXTURE_WRAP_R_OES 0x8072
157 #define GL_TEXTURE_3D_OES 0x806F
158 #define GL_TEXTURE_BINDING_3D_OES 0x806A
159 #define GL_MAX_3D_TEXTURE_SIZE_OES 0x8073
160 #define GL_SAMPLER_3D_OES 0x8B5F
161 #define GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_3D_ZOFFSET_OES 0x8CD4
162 #endif
163 
164 /* GL_OES_texture_float */
165 /* No new tokens introduced by this extension. */
166 
167 /* GL_OES_texture_float_linear */
168 /* No new tokens introduced by this extension. */
169 
170 /* GL_OES_texture_half_float */
171 #ifndef GL_OES_texture_half_float
172 #define GL_HALF_FLOAT_OES 0x8D61
173 #endif
174 
175 /* GL_OES_texture_half_float_linear */
176 /* No new tokens introduced by this extension. */
177 
178 /* GL_OES_texture_npot */
179 /* No new tokens introduced by this extension. */
180 
181 /* GL_OES_vertex_array_object */
182 #ifndef GL_OES_vertex_array_object
183 #define GL_VERTEX_ARRAY_BINDING_OES 0x85B5
184 #endif
185 
186 /* GL_OES_vertex_half_float */
187 /* GL_HALF_FLOAT_OES defined in GL_OES_texture_half_float already. */
188 
189 /* GL_OES_vertex_type_10_10_10_2 */
190 #ifndef GL_OES_vertex_type_10_10_10_2
191 #define GL_UNSIGNED_INT_10_10_10_2_OES 0x8DF6
192 #define GL_INT_10_10_10_2_OES 0x8DF7
193 #endif
194 
195 /*------------------------------------------------------------------------*
196  * KHR extension tokens
197  *------------------------------------------------------------------------*/
198 
199 #ifndef GL_KHR_debug
201 #define GL_DEBUG_OUTPUT_SYNCHRONOUS_KHR 0x8242
202 #define GL_DEBUG_NEXT_LOGGED_MESSAGE_LENGTH_KHR 0x8243
203 #define GL_DEBUG_CALLBACK_FUNCTION_KHR 0x8244
204 #define GL_DEBUG_CALLBACK_USER_PARAM_KHR 0x8245
205 #define GL_DEBUG_SOURCE_API_KHR 0x8246
206 #define GL_DEBUG_SOURCE_WINDOW_SYSTEM_KHR 0x8247
207 #define GL_DEBUG_SOURCE_SHADER_COMPILER_KHR 0x8248
208 #define GL_DEBUG_SOURCE_THIRD_PARTY_KHR 0x8249
209 #define GL_DEBUG_SOURCE_APPLICATION_KHR 0x824A
210 #define GL_DEBUG_SOURCE_OTHER_KHR 0x824B
211 #define GL_DEBUG_TYPE_ERROR_KHR 0x824C
212 #define GL_DEBUG_TYPE_DEPRECATED_BEHAVIOR_KHR 0x824D
213 #define GL_DEBUG_TYPE_UNDEFINED_BEHAVIOR_KHR 0x824E
214 #define GL_DEBUG_TYPE_PORTABILITY_KHR 0x824F
215 #define GL_DEBUG_TYPE_PERFORMANCE_KHR 0x8250
216 #define GL_DEBUG_TYPE_OTHER_KHR 0x8251
217 #define GL_DEBUG_TYPE_MARKER_KHR 0x8268
218 #define GL_DEBUG_TYPE_PUSH_GROUP_KHR 0x8269
219 #define GL_DEBUG_TYPE_POP_GROUP_KHR 0x826A
220 #define GL_DEBUG_SEVERITY_NOTIFICATION_KHR 0x826B
221 #define GL_MAX_DEBUG_GROUP_STACK_DEPTH_KHR 0x826C
222 #define GL_DEBUG_GROUP_STACK_DEPTH_KHR 0x826D
223 #define GL_BUFFER_KHR 0x82E0
224 #define GL_SHADER_KHR 0x82E1
225 #define GL_PROGRAM_KHR 0x82E2
226 #define GL_QUERY_KHR 0x82E3
227 /* PROGRAM_PIPELINE only in GL */
228 #define GL_SAMPLER_KHR 0x82E6
229 /* DISPLAY_LIST only in GL */
230 #define GL_MAX_LABEL_LENGTH_KHR 0x82E8
231 #define GL_MAX_DEBUG_MESSAGE_LENGTH_KHR 0x9143
232 #define GL_MAX_DEBUG_LOGGED_MESSAGES_KHR 0x9144
233 #define GL_DEBUG_LOGGED_MESSAGES_KHR 0x9145
234 #define GL_DEBUG_SEVERITY_HIGH_KHR 0x9146
235 #define GL_DEBUG_SEVERITY_MEDIUM_KHR 0x9147
236 #define GL_DEBUG_SEVERITY_LOW_KHR 0x9148
237 #define GL_DEBUG_OUTPUT_KHR 0x92E0
238 #define GL_CONTEXT_FLAG_DEBUG_BIT_KHR 0x00000002
239 #define GL_STACK_OVERFLOW_KHR 0x0503
240 #define GL_STACK_UNDERFLOW_KHR 0x0504
241 #endif
242 
243 #ifndef GL_KHR_texture_compression_astc_ldr
244 #define GL_COMPRESSED_RGBA_ASTC_4x4_KHR 0x93B0
245 #define GL_COMPRESSED_RGBA_ASTC_5x4_KHR 0x93B1
246 #define GL_COMPRESSED_RGBA_ASTC_5x5_KHR 0x93B2
247 #define GL_COMPRESSED_RGBA_ASTC_6x5_KHR 0x93B3
248 #define GL_COMPRESSED_RGBA_ASTC_6x6_KHR 0x93B4
249 #define GL_COMPRESSED_RGBA_ASTC_8x5_KHR 0x93B5
250 #define GL_COMPRESSED_RGBA_ASTC_8x6_KHR 0x93B6
251 #define GL_COMPRESSED_RGBA_ASTC_8x8_KHR 0x93B7
252 #define GL_COMPRESSED_RGBA_ASTC_10x5_KHR 0x93B8
253 #define GL_COMPRESSED_RGBA_ASTC_10x6_KHR 0x93B9
254 #define GL_COMPRESSED_RGBA_ASTC_10x8_KHR 0x93BA
255 #define GL_COMPRESSED_RGBA_ASTC_10x10_KHR 0x93BB
256 #define GL_COMPRESSED_RGBA_ASTC_12x10_KHR 0x93BC
257 #define GL_COMPRESSED_RGBA_ASTC_12x12_KHR 0x93BD
258 #define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_4x4_KHR 0x93D0
259 #define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_5x4_KHR 0x93D1
260 #define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_5x5_KHR 0x93D2
261 #define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_6x5_KHR 0x93D3
262 #define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_6x6_KHR 0x93D4
263 #define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_8x5_KHR 0x93D5
264 #define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_8x6_KHR 0x93D6
265 #define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_8x8_KHR 0x93D7
266 #define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_10x5_KHR 0x93D8
267 #define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_10x6_KHR 0x93D9
268 #define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_10x8_KHR 0x93DA
269 #define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_10x10_KHR 0x93DB
270 #define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_12x10_KHR 0x93DC
271 #define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_12x12_KHR 0x93DD
272 #endif
273 
274 /*------------------------------------------------------------------------*
275  * AMD extension tokens
276  *------------------------------------------------------------------------*/
277 
278 /* GL_AMD_compressed_3DC_texture */
279 #ifndef GL_AMD_compressed_3DC_texture
280 #define GL_3DC_X_AMD 0x87F9
281 #define GL_3DC_XY_AMD 0x87FA
282 #endif
283 
284 /* GL_AMD_compressed_ATC_texture */
285 #ifndef GL_AMD_compressed_ATC_texture
286 #define GL_ATC_RGB_AMD 0x8C92
287 #define GL_ATC_RGBA_EXPLICIT_ALPHA_AMD 0x8C93
288 #define GL_ATC_RGBA_INTERPOLATED_ALPHA_AMD 0x87EE
289 #endif
290 
291 /* GL_AMD_performance_monitor */
292 #ifndef GL_AMD_performance_monitor
293 #define GL_COUNTER_TYPE_AMD 0x8BC0
294 #define GL_COUNTER_RANGE_AMD 0x8BC1
295 #define GL_UNSIGNED_INT64_AMD 0x8BC2
296 #define GL_PERCENTAGE_AMD 0x8BC3
297 #define GL_PERFMON_RESULT_AVAILABLE_AMD 0x8BC4
298 #define GL_PERFMON_RESULT_SIZE_AMD 0x8BC5
299 #define GL_PERFMON_RESULT_AMD 0x8BC6
300 #endif
301 
302 /* GL_AMD_program_binary_Z400 */
303 #ifndef GL_AMD_program_binary_Z400
304 #define GL_Z400_BINARY_AMD 0x8740
305 #endif
306 
307 /*------------------------------------------------------------------------*
308  * ANGLE extension tokens
309  *------------------------------------------------------------------------*/
310 
311 /* GL_ANGLE_depth_texture */
312 #ifndef GL_ANGLE_depth_texture
313 #define GL_DEPTH_COMPONENT 0x1902
314 #define GL_DEPTH_STENCIL_OES 0x84F9
315 #define GL_UNSIGNED_SHORT 0x1403
316 #define GL_UNSIGNED_INT 0x1405
317 #define GL_UNSIGNED_INT_24_8_OES 0x84FA
318 #define GL_DEPTH_COMPONENT16 0x81A5
319 #define GL_DEPTH_COMPONENT32_OES 0x81A7
320 #define GL_DEPTH24_STENCIL8_OES 0x88F0
321 #endif
322 
323 /* GL_ANGLE_framebuffer_blit */
324 #ifndef GL_ANGLE_framebuffer_blit
325 #define GL_READ_FRAMEBUFFER_ANGLE 0x8CA8
326 #define GL_DRAW_FRAMEBUFFER_ANGLE 0x8CA9
327 #define GL_DRAW_FRAMEBUFFER_BINDING_ANGLE 0x8CA6
328 #define GL_READ_FRAMEBUFFER_BINDING_ANGLE 0x8CAA
329 #endif
330 
331 /* GL_ANGLE_framebuffer_multisample */
332 #ifndef GL_ANGLE_framebuffer_multisample
333 #define GL_RENDERBUFFER_SAMPLES_ANGLE 0x8CAB
334 #define GL_FRAMEBUFFER_INCOMPLETE_MULTISAMPLE_ANGLE 0x8D56
335 #define GL_MAX_SAMPLES_ANGLE 0x8D57
336 #endif
337 
338 /* GL_ANGLE_instanced_arrays */
339 #ifndef GL_ANGLE_instanced_arrays
340 #define GL_VERTEX_ATTRIB_ARRAY_DIVISOR_ANGLE 0x88FE
341 #endif
342 
343 /* GL_ANGLE_pack_reverse_row_order */
344 #ifndef GL_ANGLE_pack_reverse_row_order
345 #define GL_PACK_REVERSE_ROW_ORDER_ANGLE 0x93A4
346 #endif
347 
348 /* GL_ANGLE_program_binary */
349 #ifndef GL_ANGLE_program_binary
350 #define GL_PROGRAM_BINARY_ANGLE 0x93A6
351 #endif
352 
353 /* GL_ANGLE_texture_compression_dxt3 */
354 #ifndef GL_ANGLE_texture_compression_dxt3
355 #define GL_COMPRESSED_RGBA_S3TC_DXT3_ANGLE 0x83F2
356 #endif
357 
358 /* GL_ANGLE_texture_compression_dxt5 */
359 #ifndef GL_ANGLE_texture_compression_dxt5
360 #define GL_COMPRESSED_RGBA_S3TC_DXT5_ANGLE 0x83F3
361 #endif
362 
363 /* GL_ANGLE_texture_usage */
364 #ifndef GL_ANGLE_texture_usage
365 #define GL_TEXTURE_USAGE_ANGLE 0x93A2
366 #define GL_FRAMEBUFFER_ATTACHMENT_ANGLE 0x93A3
367 #endif
368 
369 /* GL_ANGLE_translated_shader_source */
370 #ifndef GL_ANGLE_translated_shader_source
371 #define GL_TRANSLATED_SHADER_SOURCE_LENGTH_ANGLE 0x93A0
372 #endif
373 
374 /*------------------------------------------------------------------------*
375  * APPLE extension tokens
376  *------------------------------------------------------------------------*/
377 
378 /* GL_APPLE_copy_texture_levels */
379 /* No new tokens introduced by this extension. */
380 
381 /* GL_APPLE_framebuffer_multisample */
382 #ifndef GL_APPLE_framebuffer_multisample
383 #define GL_RENDERBUFFER_SAMPLES_APPLE 0x8CAB
384 #define GL_FRAMEBUFFER_INCOMPLETE_MULTISAMPLE_APPLE 0x8D56
385 #define GL_MAX_SAMPLES_APPLE 0x8D57
386 #define GL_READ_FRAMEBUFFER_APPLE 0x8CA8
387 #define GL_DRAW_FRAMEBUFFER_APPLE 0x8CA9
388 #define GL_DRAW_FRAMEBUFFER_BINDING_APPLE 0x8CA6
389 #define GL_READ_FRAMEBUFFER_BINDING_APPLE 0x8CAA
390 #endif
391 
392 /* GL_APPLE_rgb_422 */
393 #ifndef GL_APPLE_rgb_422
394 #define GL_RGB_422_APPLE 0x8A1F
395 #define GL_UNSIGNED_SHORT_8_8_APPLE 0x85BA
396 #define GL_UNSIGNED_SHORT_8_8_REV_APPLE 0x85BB
397 #endif
398 
399 /* GL_APPLE_sync */
400 #ifndef GL_APPLE_sync
401 
402 #define GL_SYNC_OBJECT_APPLE 0x8A53
403 #define GL_MAX_SERVER_WAIT_TIMEOUT_APPLE 0x9111
404 #define GL_OBJECT_TYPE_APPLE 0x9112
405 #define GL_SYNC_CONDITION_APPLE 0x9113
406 #define GL_SYNC_STATUS_APPLE 0x9114
407 #define GL_SYNC_FLAGS_APPLE 0x9115
408 #define GL_SYNC_FENCE_APPLE 0x9116
409 #define GL_SYNC_GPU_COMMANDS_COMPLETE_APPLE 0x9117
410 #define GL_UNSIGNALED_APPLE 0x9118
411 #define GL_SIGNALED_APPLE 0x9119
412 #define GL_ALREADY_SIGNALED_APPLE 0x911A
413 #define GL_TIMEOUT_EXPIRED_APPLE 0x911B
414 #define GL_CONDITION_SATISFIED_APPLE 0x911C
415 #define GL_WAIT_FAILED_APPLE 0x911D
416 #define GL_SYNC_FLUSH_COMMANDS_BIT_APPLE 0x00000001
417 #define GL_TIMEOUT_IGNORED_APPLE 0xFFFFFFFFFFFFFFFFull
418 #endif
419 
420 /* GL_APPLE_texture_format_BGRA8888 */
421 #ifndef GL_APPLE_texture_format_BGRA8888
422 #define GL_BGRA_EXT 0x80E1
423 #endif
424 
425 /* GL_APPLE_texture_max_level */
426 #ifndef GL_APPLE_texture_max_level
427 #define GL_TEXTURE_MAX_LEVEL_APPLE 0x813D
428 #endif
429 
430 /*------------------------------------------------------------------------*
431  * ARM extension tokens
432  *------------------------------------------------------------------------*/
433 
434 /* GL_ARM_mali_program_binary */
435 #ifndef GL_ARM_mali_program_binary
436 #define GL_MALI_PROGRAM_BINARY_ARM 0x8F61
437 #endif
438 
439 /* GL_ARM_mali_shader_binary */
440 #ifndef GL_ARM_mali_shader_binary
441 #define GL_MALI_SHADER_BINARY_ARM 0x8F60
442 #endif
443 
444 /* GL_ARM_rgba8 */
445 /* No new tokens introduced by this extension. */
446 
447 /*------------------------------------------------------------------------*
448  * EXT extension tokens
449  *------------------------------------------------------------------------*/
450 
451 /* GL_EXT_blend_minmax */
452 #ifndef GL_EXT_blend_minmax
453 #define GL_MIN_EXT 0x8007
454 #define GL_MAX_EXT 0x8008
455 #endif
456 
457 /* GL_EXT_color_buffer_half_float */
458 #ifndef GL_EXT_color_buffer_half_float
459 #define GL_RGBA16F_EXT 0x881A
460 #define GL_RGB16F_EXT 0x881B
461 #define GL_RG16F_EXT 0x822F
462 #define GL_R16F_EXT 0x822D
463 #define GL_FRAMEBUFFER_ATTACHMENT_COMPONENT_TYPE_EXT 0x8211
464 #define GL_UNSIGNED_NORMALIZED_EXT 0x8C17
465 #endif
466 
467 /* GL_EXT_debug_label */
468 #ifndef GL_EXT_debug_label
469 #define GL_PROGRAM_PIPELINE_OBJECT_EXT 0x8A4F
470 #define GL_PROGRAM_OBJECT_EXT 0x8B40
471 #define GL_SHADER_OBJECT_EXT 0x8B48
472 #define GL_BUFFER_OBJECT_EXT 0x9151
473 #define GL_QUERY_OBJECT_EXT 0x9153
474 #define GL_VERTEX_ARRAY_OBJECT_EXT 0x9154
475 #endif
476 
477 /* GL_EXT_debug_marker */
478 /* No new tokens introduced by this extension. */
479 
480 /* GL_EXT_discard_framebuffer */
481 #ifndef GL_EXT_discard_framebuffer
482 #define GL_COLOR_EXT 0x1800
483 #define GL_DEPTH_EXT 0x1801
484 #define GL_STENCIL_EXT 0x1802
485 #endif
486 
487 #ifndef GL_EXT_disjoint_timer_query
488 #define GL_QUERY_COUNTER_BITS_EXT 0x8864
489 #define GL_CURRENT_QUERY_EXT 0x8865
490 #define GL_QUERY_RESULT_EXT 0x8866
491 #define GL_QUERY_RESULT_AVAILABLE_EXT 0x8867
492 #define GL_TIME_ELAPSED_EXT 0x88BF
493 #define GL_TIMESTAMP_EXT 0x8E28
494 #define GL_GPU_DISJOINT_EXT 0x8FBB
495 #endif
496 
497 #ifndef GL_EXT_draw_buffers
498 #define GL_EXT_draw_buffers 1
499 #define GL_MAX_COLOR_ATTACHMENTS_EXT 0x8CDF
500 #define GL_MAX_DRAW_BUFFERS_EXT 0x8824
501 #define GL_DRAW_BUFFER0_EXT 0x8825
502 #define GL_DRAW_BUFFER1_EXT 0x8826
503 #define GL_DRAW_BUFFER2_EXT 0x8827
504 #define GL_DRAW_BUFFER3_EXT 0x8828
505 #define GL_DRAW_BUFFER4_EXT 0x8829
506 #define GL_DRAW_BUFFER5_EXT 0x882A
507 #define GL_DRAW_BUFFER6_EXT 0x882B
508 #define GL_DRAW_BUFFER7_EXT 0x882C
509 #define GL_DRAW_BUFFER8_EXT 0x882D
510 #define GL_DRAW_BUFFER9_EXT 0x882E
511 #define GL_DRAW_BUFFER10_EXT 0x882F
512 #define GL_DRAW_BUFFER11_EXT 0x8830
513 #define GL_DRAW_BUFFER12_EXT 0x8831
514 #define GL_DRAW_BUFFER13_EXT 0x8832
515 #define GL_DRAW_BUFFER14_EXT 0x8833
516 #define GL_DRAW_BUFFER15_EXT 0x8834
517 #define GL_COLOR_ATTACHMENT0_EXT 0x8CE0
518 #define GL_COLOR_ATTACHMENT1_EXT 0x8CE1
519 #define GL_COLOR_ATTACHMENT2_EXT 0x8CE2
520 #define GL_COLOR_ATTACHMENT3_EXT 0x8CE3
521 #define GL_COLOR_ATTACHMENT4_EXT 0x8CE4
522 #define GL_COLOR_ATTACHMENT5_EXT 0x8CE5
523 #define GL_COLOR_ATTACHMENT6_EXT 0x8CE6
524 #define GL_COLOR_ATTACHMENT7_EXT 0x8CE7
525 #define GL_COLOR_ATTACHMENT8_EXT 0x8CE8
526 #define GL_COLOR_ATTACHMENT9_EXT 0x8CE9
527 #define GL_COLOR_ATTACHMENT10_EXT 0x8CEA
528 #define GL_COLOR_ATTACHMENT11_EXT 0x8CEB
529 #define GL_COLOR_ATTACHMENT12_EXT 0x8CEC
530 #define GL_COLOR_ATTACHMENT13_EXT 0x8CED
531 #define GL_COLOR_ATTACHMENT14_EXT 0x8CEE
532 #define GL_COLOR_ATTACHMENT15_EXT 0x8CEF
533 #endif
534 
535 /* GL_EXT_map_buffer_range */
536 #ifndef GL_EXT_map_buffer_range
537 #define GL_MAP_READ_BIT_EXT 0x0001
538 #define GL_MAP_WRITE_BIT_EXT 0x0002
539 #define GL_MAP_INVALIDATE_RANGE_BIT_EXT 0x0004
540 #define GL_MAP_INVALIDATE_BUFFER_BIT_EXT 0x0008
541 #define GL_MAP_FLUSH_EXPLICIT_BIT_EXT 0x0010
542 #define GL_MAP_UNSYNCHRONIZED_BIT_EXT 0x0020
543 #endif
544 
545 /* GL_EXT_multisampled_render_to_texture */
546 #ifndef GL_EXT_multisampled_render_to_texture
547 #define GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_SAMPLES_EXT 0x8D6C
548 /* reuse values from GL_EXT_framebuffer_multisample (desktop extension) */
549 #define GL_RENDERBUFFER_SAMPLES_EXT 0x8CAB
550 #define GL_FRAMEBUFFER_INCOMPLETE_MULTISAMPLE_EXT 0x8D56
551 #define GL_MAX_SAMPLES_EXT 0x8D57
552 #endif
553 
554 /* GL_EXT_multiview_draw_buffers */
555 #ifndef GL_EXT_multiview_draw_buffers
556 #define GL_COLOR_ATTACHMENT_EXT 0x90F0
557 #define GL_MULTIVIEW_EXT 0x90F1
558 #define GL_DRAW_BUFFER_EXT 0x0C01
559 #define GL_READ_BUFFER_EXT 0x0C02
560 #define GL_MAX_MULTIVIEW_BUFFERS_EXT 0x90F2
561 #endif
562 
563 /* GL_EXT_multi_draw_arrays */
564 /* No new tokens introduced by this extension. */
565 
566 /* GL_EXT_occlusion_query_boolean */
567 #ifndef GL_EXT_occlusion_query_boolean
568 #define GL_ANY_SAMPLES_PASSED_EXT 0x8C2F
569 #define GL_ANY_SAMPLES_PASSED_CONSERVATIVE_EXT 0x8D6A
570 #define GL_CURRENT_QUERY_EXT 0x8865
571 #define GL_QUERY_RESULT_EXT 0x8866
572 #define GL_QUERY_RESULT_AVAILABLE_EXT 0x8867
573 #endif
574 
575 /* GL_EXT_read_format_bgra */
576 #ifndef GL_EXT_read_format_bgra
577 #define GL_BGRA_EXT 0x80E1
578 #define GL_UNSIGNED_SHORT_4_4_4_4_REV_EXT 0x8365
579 #define GL_UNSIGNED_SHORT_1_5_5_5_REV_EXT 0x8366
580 #endif
581 
582 /* GL_EXT_robustness */
583 #ifndef GL_EXT_robustness
584 /* reuse GL_NO_ERROR */
585 #define GL_GUILTY_CONTEXT_RESET_EXT 0x8253
586 #define GL_INNOCENT_CONTEXT_RESET_EXT 0x8254
587 #define GL_UNKNOWN_CONTEXT_RESET_EXT 0x8255
588 #define GL_CONTEXT_ROBUST_ACCESS_EXT 0x90F3
589 #define GL_RESET_NOTIFICATION_STRATEGY_EXT 0x8256
590 #define GL_LOSE_CONTEXT_ON_RESET_EXT 0x8252
591 #define GL_NO_RESET_NOTIFICATION_EXT 0x8261
592 #endif
593 
594 /* GL_EXT_separate_shader_objects */
595 #ifndef GL_EXT_separate_shader_objects
596 #define GL_VERTEX_SHADER_BIT_EXT 0x00000001
597 #define GL_FRAGMENT_SHADER_BIT_EXT 0x00000002
598 #define GL_ALL_SHADER_BITS_EXT 0xFFFFFFFF
599 #define GL_PROGRAM_SEPARABLE_EXT 0x8258
600 #define GL_ACTIVE_PROGRAM_EXT 0x8259
601 #define GL_PROGRAM_PIPELINE_BINDING_EXT 0x825A
602 #endif
603 
604 /* GL_EXT_shader_framebuffer_fetch */
605 #ifndef GL_EXT_shader_framebuffer_fetch
606 #define GL_FRAGMENT_SHADER_DISCARDS_SAMPLES_EXT 0x8A52
607 #endif
608 
609 /* GL_EXT_shader_texture_lod */
610 /* No new tokens introduced by this extension. */
611 
612 /* GL_EXT_shadow_samplers */
613 #ifndef GL_EXT_shadow_samplers
614 #define GL_TEXTURE_COMPARE_MODE_EXT 0x884C
615 #define GL_TEXTURE_COMPARE_FUNC_EXT 0x884D
616 #define GL_COMPARE_REF_TO_TEXTURE_EXT 0x884E
617 #define GL_SAMPLER_2D_SHADOW_EXT 0x8B62
618 #endif
619 
620 /* GL_EXT_sRGB */
621 #ifndef GL_EXT_sRGB
622 #define GL_SRGB_EXT 0x8C40
623 #define GL_SRGB_ALPHA_EXT 0x8C42
624 #define GL_SRGB8_ALPHA8_EXT 0x8C43
625 #define GL_FRAMEBUFFER_ATTACHMENT_COLOR_ENCODING_EXT 0x8210
626 #endif
627 
628 /* GL_EXT_sRGB_write_control */
629 #ifndef GL_EXT_sRGB_write_control
630 #define GL_EXT_sRGB_write_control 1
631 #define GL_FRAMEBUFFER_SRGB_EXT 0x8DB9
632 #endif
633 
634 /* GL_EXT_texture_compression_dxt1 */
635 #ifndef GL_EXT_texture_compression_dxt1
636 #define GL_COMPRESSED_RGB_S3TC_DXT1_EXT 0x83F0
637 #define GL_COMPRESSED_RGBA_S3TC_DXT1_EXT 0x83F1
638 #endif
639 
640 /* GL_EXT_texture_filter_anisotropic */
641 #ifndef GL_EXT_texture_filter_anisotropic
642 #define GL_TEXTURE_MAX_ANISOTROPY_EXT 0x84FE
643 #define GL_MAX_TEXTURE_MAX_ANISOTROPY_EXT 0x84FF
644 #endif
645 
646 /* GL_EXT_texture_format_BGRA8888 */
647 #ifndef GL_EXT_texture_format_BGRA8888
648 #define GL_BGRA_EXT 0x80E1
649 #endif
650 
651 /* GL_EXT_texture_rg */
652 #ifndef GL_EXT_texture_rg
653 #define GL_RED_EXT 0x1903
654 #define GL_RG_EXT 0x8227
655 #define GL_R8_EXT 0x8229
656 #define GL_RG8_EXT 0x822B
657 #endif
658 
659 /* GL_EXT_texture_sRGB_decode */
660 #ifndef GL_EXT_texture_sRGB_decode
661 #define GL_EXT_texture_sRGB_decode 1
662 #define GL_TEXTURE_SRGB_DECODE_EXT 0x8A48
663 #define GL_DECODE_EXT 0x8A49
664 #define GL_SKIP_DECODE_EXT 0x8A4A
665 #endif
666 
667 /* GL_EXT_texture_storage */
668 #ifndef GL_EXT_texture_storage
669 #define GL_TEXTURE_IMMUTABLE_FORMAT_EXT 0x912F
670 #define GL_ALPHA8_EXT 0x803C
671 #define GL_LUMINANCE8_EXT 0x8040
672 #define GL_LUMINANCE8_ALPHA8_EXT 0x8045
673 #define GL_RGBA32F_EXT 0x8814
674 #define GL_RGB32F_EXT 0x8815
675 #define GL_ALPHA32F_EXT 0x8816
676 #define GL_LUMINANCE32F_EXT 0x8818
677 #define GL_LUMINANCE_ALPHA32F_EXT 0x8819
678 /* reuse GL_RGBA16F_EXT */
679 /* reuse GL_RGB16F_EXT */
680 #define GL_ALPHA16F_EXT 0x881C
681 #define GL_LUMINANCE16F_EXT 0x881E
682 #define GL_LUMINANCE_ALPHA16F_EXT 0x881F
683 #define GL_RGB10_A2_EXT 0x8059
684 #define GL_RGB10_EXT 0x8052
685 #define GL_BGRA8_EXT 0x93A1
686 #define GL_R8_EXT 0x8229
687 #define GL_RG8_EXT 0x822B
688 #define GL_R32F_EXT 0x822E
689 #define GL_RG32F_EXT 0x8230
690 #define GL_R16F_EXT 0x822D
691 #define GL_RG16F_EXT 0x822F
692 #endif
693 
694 /* GL_EXT_texture_type_2_10_10_10_REV */
695 #ifndef GL_EXT_texture_type_2_10_10_10_REV
696 #define GL_UNSIGNED_INT_2_10_10_10_REV_EXT 0x8368
697 #endif
698 
699 /* GL_EXT_unpack_subimage */
700 #ifndef GL_EXT_unpack_subimage
701 #define GL_UNPACK_ROW_LENGTH_EXT 0x0CF2
702 #define GL_UNPACK_SKIP_ROWS_EXT 0x0CF3
703 #define GL_UNPACK_SKIP_PIXELS_EXT 0x0CF4
704 #endif
705 
706 /*------------------------------------------------------------------------*
707  * DMP extension tokens
708  *------------------------------------------------------------------------*/
709 
710 /* GL_DMP_shader_binary */
711 #ifndef GL_DMP_shader_binary
712 #define GL_SHADER_BINARY_DMP 0x9250
713 #endif
714 
715 /*------------------------------------------------------------------------*
716  * FJ extension tokens
717  *------------------------------------------------------------------------*/
718 
719 /* GL_FJ_shader_binary_GCCSO */
720 #ifndef GL_FJ_shader_binary_GCCSO
721 #define GL_GCCSO_SHADER_BINARY_FJ 0x9260
722 #endif
723 
724 /*------------------------------------------------------------------------*
725  * IMG extension tokens
726  *------------------------------------------------------------------------*/
727 
728 /* GL_IMG_program_binary */
729 #ifndef GL_IMG_program_binary
730 #define GL_SGX_PROGRAM_BINARY_IMG 0x9130
731 #endif
732 
733 /* GL_IMG_read_format */
734 #ifndef GL_IMG_read_format
735 #define GL_BGRA_IMG 0x80E1
736 #define GL_UNSIGNED_SHORT_4_4_4_4_REV_IMG 0x8365
737 #endif
738 
739 /* GL_IMG_shader_binary */
740 #ifndef GL_IMG_shader_binary
741 #define GL_SGX_BINARY_IMG 0x8C0A
742 #endif
743 
744 /* GL_IMG_texture_compression_pvrtc */
745 #ifndef GL_IMG_texture_compression_pvrtc
746 #define GL_COMPRESSED_RGB_PVRTC_4BPPV1_IMG 0x8C00
747 #define GL_COMPRESSED_RGB_PVRTC_2BPPV1_IMG 0x8C01
748 #define GL_COMPRESSED_RGBA_PVRTC_4BPPV1_IMG 0x8C02
749 #define GL_COMPRESSED_RGBA_PVRTC_2BPPV1_IMG 0x8C03
750 #endif
751 
752 /* GL_IMG_texture_compression_pvrtc2 */
753 #ifndef GL_IMG_texture_compression_pvrtc2
754 #define GL_COMPRESSED_RGBA_PVRTC_2BPPV2_IMG 0x9137
755 #define GL_COMPRESSED_RGBA_PVRTC_4BPPV2_IMG 0x9138
756 #endif
757 
758 /* GL_IMG_multisampled_render_to_texture */
759 #ifndef GL_IMG_multisampled_render_to_texture
760 #define GL_RENDERBUFFER_SAMPLES_IMG 0x9133
761 #define GL_FRAMEBUFFER_INCOMPLETE_MULTISAMPLE_IMG 0x9134
762 #define GL_MAX_SAMPLES_IMG 0x9135
763 #define GL_TEXTURE_SAMPLES_IMG 0x9136
764 #endif
765 
766 /*------------------------------------------------------------------------*
767  * NV extension tokens
768  *------------------------------------------------------------------------*/
769 
770 /* GL_NV_coverage_sample */
771 #ifndef GL_NV_coverage_sample
772 #define GL_COVERAGE_COMPONENT_NV 0x8ED0
773 #define GL_COVERAGE_COMPONENT4_NV 0x8ED1
774 #define GL_COVERAGE_ATTACHMENT_NV 0x8ED2
775 #define GL_COVERAGE_BUFFERS_NV 0x8ED3
776 #define GL_COVERAGE_SAMPLES_NV 0x8ED4
777 #define GL_COVERAGE_ALL_FRAGMENTS_NV 0x8ED5
778 #define GL_COVERAGE_EDGE_FRAGMENTS_NV 0x8ED6
779 #define GL_COVERAGE_AUTOMATIC_NV 0x8ED7
780 #define GL_COVERAGE_BUFFER_BIT_NV 0x00008000
781 #endif
782 
783 /* GL_NV_depth_nonlinear */
784 #ifndef GL_NV_depth_nonlinear
785 #define GL_DEPTH_COMPONENT16_NONLINEAR_NV 0x8E2C
786 #endif
787 
788 /* GL_NV_draw_buffers */
789 #ifndef GL_NV_draw_buffers
790 #define GL_MAX_DRAW_BUFFERS_NV 0x8824
791 #define GL_DRAW_BUFFER0_NV 0x8825
792 #define GL_DRAW_BUFFER1_NV 0x8826
793 #define GL_DRAW_BUFFER2_NV 0x8827
794 #define GL_DRAW_BUFFER3_NV 0x8828
795 #define GL_DRAW_BUFFER4_NV 0x8829
796 #define GL_DRAW_BUFFER5_NV 0x882A
797 #define GL_DRAW_BUFFER6_NV 0x882B
798 #define GL_DRAW_BUFFER7_NV 0x882C
799 #define GL_DRAW_BUFFER8_NV 0x882D
800 #define GL_DRAW_BUFFER9_NV 0x882E
801 #define GL_DRAW_BUFFER10_NV 0x882F
802 #define GL_DRAW_BUFFER11_NV 0x8830
803 #define GL_DRAW_BUFFER12_NV 0x8831
804 #define GL_DRAW_BUFFER13_NV 0x8832
805 #define GL_DRAW_BUFFER14_NV 0x8833
806 #define GL_DRAW_BUFFER15_NV 0x8834
807 #define GL_COLOR_ATTACHMENT0_NV 0x8CE0
808 #define GL_COLOR_ATTACHMENT1_NV 0x8CE1
809 #define GL_COLOR_ATTACHMENT2_NV 0x8CE2
810 #define GL_COLOR_ATTACHMENT3_NV 0x8CE3
811 #define GL_COLOR_ATTACHMENT4_NV 0x8CE4
812 #define GL_COLOR_ATTACHMENT5_NV 0x8CE5
813 #define GL_COLOR_ATTACHMENT6_NV 0x8CE6
814 #define GL_COLOR_ATTACHMENT7_NV 0x8CE7
815 #define GL_COLOR_ATTACHMENT8_NV 0x8CE8
816 #define GL_COLOR_ATTACHMENT9_NV 0x8CE9
817 #define GL_COLOR_ATTACHMENT10_NV 0x8CEA
818 #define GL_COLOR_ATTACHMENT11_NV 0x8CEB
819 #define GL_COLOR_ATTACHMENT12_NV 0x8CEC
820 #define GL_COLOR_ATTACHMENT13_NV 0x8CED
821 #define GL_COLOR_ATTACHMENT14_NV 0x8CEE
822 #define GL_COLOR_ATTACHMENT15_NV 0x8CEF
823 #endif
824 
825 /* GL_NV_draw_instanced */
826 /* No new tokens introduced by this extension. */
827 
828 /* GL_NV_fbo_color_attachments */
829 #ifndef GL_NV_fbo_color_attachments
830 #define GL_MAX_COLOR_ATTACHMENTS_NV 0x8CDF
831 /* GL_COLOR_ATTACHMENT{0-15}_NV defined in GL_NV_draw_buffers already. */
832 #endif
833 
834 /* GL_NV_fence */
835 #ifndef GL_NV_fence
836 #define GL_ALL_COMPLETED_NV 0x84F2
837 #define GL_FENCE_STATUS_NV 0x84F3
838 #define GL_FENCE_CONDITION_NV 0x84F4
839 #endif
840 
841 /* GL_NV_framebuffer_blit */
842 #ifndef GL_NV_framebuffer_blit
843 #define GL_READ_FRAMEBUFFER_NV 0x8CA8
844 #define GL_DRAW_FRAMEBUFFER_NV 0x8CA9
845 #define GL_DRAW_FRAMEBUFFER_BINDING_NV 0x8CA6
846 #define GL_READ_FRAMEBUFFER_BINDING_NV 0x8CAA
847 #endif
848 
849 /* GL_NV_framebuffer_multisample */
850 #ifndef GL_NV_framebuffer_multisample
851 #define GL_RENDERBUFFER_SAMPLES_NV 0x8CAB
852 #define GL_FRAMEBUFFER_INCOMPLETE_MULTISAMPLE_NV 0x8D56
853 #define GL_MAX_SAMPLES_NV 0x8D57
854 #endif
855 
856 /* GL_NV_generate_mipmap_sRGB */
857 /* No new tokens introduced by this extension. */
858 
859 /* GL_NV_instanced_arrays */
860 #ifndef GL_NV_instanced_arrays
861 #define GL_VERTEX_ATTRIB_ARRAY_DIVISOR_NV 0x88FE
862 #endif
863 
864 /* GL_NV_read_buffer */
865 #ifndef GL_NV_read_buffer
866 #define GL_READ_BUFFER_NV 0x0C02
867 #endif
868 
869 /* GL_NV_read_buffer_front */
870 /* No new tokens introduced by this extension. */
871 
872 /* GL_NV_read_depth */
873 /* No new tokens introduced by this extension. */
874 
875 /* GL_NV_read_depth_stencil */
876 /* No new tokens introduced by this extension. */
877 
878 /* GL_NV_read_stencil */
879 /* No new tokens introduced by this extension. */
880 
881 /* GL_NV_shadow_samplers_array */
882 #ifndef GL_NV_shadow_samplers_array
883 #define GL_SAMPLER_2D_ARRAY_SHADOW_NV 0x8DC4
884 #endif
885 
886 /* GL_NV_shadow_samplers_cube */
887 #ifndef GL_NV_shadow_samplers_cube
888 #define GL_SAMPLER_CUBE_SHADOW_NV 0x8DC5
889 #endif
890 
891 /* GL_NV_sRGB_formats */
892 #ifndef GL_NV_sRGB_formats
893 #define GL_SLUMINANCE_NV 0x8C46
894 #define GL_SLUMINANCE_ALPHA_NV 0x8C44
895 #define GL_SRGB8_NV 0x8C41
896 #define GL_SLUMINANCE8_NV 0x8C47
897 #define GL_SLUMINANCE8_ALPHA8_NV 0x8C45
898 #define GL_COMPRESSED_SRGB_S3TC_DXT1_NV 0x8C4C
899 #define GL_COMPRESSED_SRGB_ALPHA_S3TC_DXT1_NV 0x8C4D
900 #define GL_COMPRESSED_SRGB_ALPHA_S3TC_DXT3_NV 0x8C4E
901 #define GL_COMPRESSED_SRGB_ALPHA_S3TC_DXT5_NV 0x8C4F
902 #define GL_ETC1_SRGB8_NV 0x88EE
903 #endif
904 
905 /* GL_NV_texture_border_clamp */
906 #ifndef GL_NV_texture_border_clamp
907 #define GL_TEXTURE_BORDER_COLOR_NV 0x1004
908 #define GL_CLAMP_TO_BORDER_NV 0x812D
909 #endif
910 
911 /* GL_NV_texture_compression_s3tc_update */
912 /* No new tokens introduced by this extension. */
913 
914 /* GL_NV_texture_npot_2D_mipmap */
915 /* No new tokens introduced by this extension. */
916 
917 /*------------------------------------------------------------------------*
918  * QCOM extension tokens
919  *------------------------------------------------------------------------*/
920 
921 /* GL_QCOM_alpha_test */
922 #ifndef GL_QCOM_alpha_test
923 #define GL_ALPHA_TEST_QCOM 0x0BC0
924 #define GL_ALPHA_TEST_FUNC_QCOM 0x0BC1
925 #define GL_ALPHA_TEST_REF_QCOM 0x0BC2
926 #endif
927 
928 /* GL_QCOM_binning_control */
929 #ifndef GL_QCOM_binning_control
930 #define GL_BINNING_CONTROL_HINT_QCOM 0x8FB0
931 #define GL_CPU_OPTIMIZED_QCOM 0x8FB1
932 #define GL_GPU_OPTIMIZED_QCOM 0x8FB2
933 #define GL_RENDER_DIRECT_TO_FRAMEBUFFER_QCOM 0x8FB3
934 #endif
935 
936 /* GL_QCOM_driver_control */
937 /* No new tokens introduced by this extension. */
938 
939 /* GL_QCOM_extended_get */
940 #ifndef GL_QCOM_extended_get
941 #define GL_TEXTURE_WIDTH_QCOM 0x8BD2
942 #define GL_TEXTURE_HEIGHT_QCOM 0x8BD3
943 #define GL_TEXTURE_DEPTH_QCOM 0x8BD4
944 #define GL_TEXTURE_INTERNAL_FORMAT_QCOM 0x8BD5
945 #define GL_TEXTURE_FORMAT_QCOM 0x8BD6
946 #define GL_TEXTURE_TYPE_QCOM 0x8BD7
947 #define GL_TEXTURE_IMAGE_VALID_QCOM 0x8BD8
948 #define GL_TEXTURE_NUM_LEVELS_QCOM 0x8BD9
949 #define GL_TEXTURE_TARGET_QCOM 0x8BDA
950 #define GL_TEXTURE_OBJECT_VALID_QCOM 0x8BDB
951 #define GL_STATE_RESTORE 0x8BDC
952 #endif
953 
954 /* GL_QCOM_extended_get2 */
955 /* No new tokens introduced by this extension. */
956 
957 /* GL_QCOM_perfmon_global_mode */
958 #ifndef GL_QCOM_perfmon_global_mode
959 #define GL_PERFMON_GLOBAL_MODE_QCOM 0x8FA0
960 #endif
961 
962 /* GL_QCOM_writeonly_rendering */
963 #ifndef GL_QCOM_writeonly_rendering
964 #define GL_WRITEONLY_RENDERING_QCOM 0x8823
965 #endif
966 
967 /* GL_QCOM_tiled_rendering */
968 #ifndef GL_QCOM_tiled_rendering
969 #define GL_COLOR_BUFFER_BIT0_QCOM 0x00000001
970 #define GL_COLOR_BUFFER_BIT1_QCOM 0x00000002
971 #define GL_COLOR_BUFFER_BIT2_QCOM 0x00000004
972 #define GL_COLOR_BUFFER_BIT3_QCOM 0x00000008
973 #define GL_COLOR_BUFFER_BIT4_QCOM 0x00000010
974 #define GL_COLOR_BUFFER_BIT5_QCOM 0x00000020
975 #define GL_COLOR_BUFFER_BIT6_QCOM 0x00000040
976 #define GL_COLOR_BUFFER_BIT7_QCOM 0x00000080
977 #define GL_DEPTH_BUFFER_BIT0_QCOM 0x00000100
978 #define GL_DEPTH_BUFFER_BIT1_QCOM 0x00000200
979 #define GL_DEPTH_BUFFER_BIT2_QCOM 0x00000400
980 #define GL_DEPTH_BUFFER_BIT3_QCOM 0x00000800
981 #define GL_DEPTH_BUFFER_BIT4_QCOM 0x00001000
982 #define GL_DEPTH_BUFFER_BIT5_QCOM 0x00002000
983 #define GL_DEPTH_BUFFER_BIT6_QCOM 0x00004000
984 #define GL_DEPTH_BUFFER_BIT7_QCOM 0x00008000
985 #define GL_STENCIL_BUFFER_BIT0_QCOM 0x00010000
986 #define GL_STENCIL_BUFFER_BIT1_QCOM 0x00020000
987 #define GL_STENCIL_BUFFER_BIT2_QCOM 0x00040000
988 #define GL_STENCIL_BUFFER_BIT3_QCOM 0x00080000
989 #define GL_STENCIL_BUFFER_BIT4_QCOM 0x00100000
990 #define GL_STENCIL_BUFFER_BIT5_QCOM 0x00200000
991 #define GL_STENCIL_BUFFER_BIT6_QCOM 0x00400000
992 #define GL_STENCIL_BUFFER_BIT7_QCOM 0x00800000
993 #define GL_MULTISAMPLE_BUFFER_BIT0_QCOM 0x01000000
994 #define GL_MULTISAMPLE_BUFFER_BIT1_QCOM 0x02000000
995 #define GL_MULTISAMPLE_BUFFER_BIT2_QCOM 0x04000000
996 #define GL_MULTISAMPLE_BUFFER_BIT3_QCOM 0x08000000
997 #define GL_MULTISAMPLE_BUFFER_BIT4_QCOM 0x10000000
998 #define GL_MULTISAMPLE_BUFFER_BIT5_QCOM 0x20000000
999 #define GL_MULTISAMPLE_BUFFER_BIT6_QCOM 0x40000000
1000 #define GL_MULTISAMPLE_BUFFER_BIT7_QCOM 0x80000000
1001 #endif
1002 
1003 /*------------------------------------------------------------------------*
1004  * VIV extension tokens
1005  *------------------------------------------------------------------------*/
1006 
1007 /* GL_VIV_shader_binary */
1008 #ifndef GL_VIV_shader_binary
1009 #define GL_SHADER_BINARY_VIV 0x8FC4
1010 #endif
1011 
1012 /*------------------------------------------------------------------------*
1013  * End of extension tokens, start of corresponding extension functions
1014  *------------------------------------------------------------------------*/
1015 
1016 /*------------------------------------------------------------------------*
1017  * OES extension functions
1018  *------------------------------------------------------------------------*/
1019 
1020 /* GL_OES_compressed_ETC1_RGB8_texture */
1021 #ifndef GL_OES_compressed_ETC1_RGB8_texture
1022 #define GL_OES_compressed_ETC1_RGB8_texture 1
1023 #endif
1024 
1025 /* GL_OES_compressed_paletted_texture */
1026 #ifndef GL_OES_compressed_paletted_texture
1027 #define GL_OES_compressed_paletted_texture 1
1028 #endif
1029 
1030 /* GL_OES_depth24 */
1031 #ifndef GL_OES_depth24
1032 #define GL_OES_depth24 1
1033 #endif
1034 
1035 /* GL_OES_depth32 */
1036 #ifndef GL_OES_depth32
1037 #define GL_OES_depth32 1
1038 #endif
1039 
1040 /* GL_OES_depth_texture */
1041 #ifndef GL_OES_depth_texture
1042 #define GL_OES_depth_texture 1
1043 #endif
1044 
1045 /* GL_OES_EGL_image */
1046 #ifndef GL_OES_EGL_image
1047 #define GL_OES_EGL_image 1
1048 #ifdef GL_GLEXT_PROTOTYPES
1049 GL_APICALL void GL_APIENTRY glEGLImageTargetTexture2DOES (GLenum target, GLeglImageOES image);
1050 GL_APICALL void GL_APIENTRY glEGLImageTargetRenderbufferStorageOES (GLenum target, GLeglImageOES image);
1051 #endif
1052 typedef void (GL_APIENTRYP PFNGLEGLIMAGETARGETTEXTURE2DOESPROC) (GLenum target, GLeglImageOES image);
1053 typedef void (GL_APIENTRYP PFNGLEGLIMAGETARGETRENDERBUFFERSTORAGEOESPROC) (GLenum target, GLeglImageOES image);
1054 #endif
1055 
1056 /* GL_OES_EGL_image_external */
1057 #ifndef GL_OES_EGL_image_external
1058 #define GL_OES_EGL_image_external 1
1059 /* glEGLImageTargetTexture2DOES defined in GL_OES_EGL_image already. */
1060 #endif
1061 
1062 /* GL_OES_element_index_uint */
1063 #ifndef GL_OES_element_index_uint
1064 #define GL_OES_element_index_uint 1
1065 #endif
1066 
1067 /* GL_OES_fbo_render_mipmap */
1068 #ifndef GL_OES_fbo_render_mipmap
1069 #define GL_OES_fbo_render_mipmap 1
1070 #endif
1071 
1072 /* GL_OES_fragment_precision_high */
1073 #ifndef GL_OES_fragment_precision_high
1074 #define GL_OES_fragment_precision_high 1
1075 #endif
1076 
1077 /* GL_OES_get_program_binary */
1078 #ifndef GL_OES_get_program_binary
1079 #define GL_OES_get_program_binary 1
1080 #ifdef GL_GLEXT_PROTOTYPES
1081 GL_APICALL void GL_APIENTRY glGetProgramBinaryOES (GLuint program, GLsizei bufSize, GLsizei *length, GLenum *binaryFormat, GLvoid *binary);
1082 GL_APICALL void GL_APIENTRY glProgramBinaryOES (GLuint program, GLenum binaryFormat, const GLvoid *binary, GLint length);
1083 #endif
1084 typedef void (GL_APIENTRYP PFNGLGETPROGRAMBINARYOESPROC) (GLuint program, GLsizei bufSize, GLsizei *length, GLenum *binaryFormat, GLvoid *binary);
1085 typedef void (GL_APIENTRYP PFNGLPROGRAMBINARYOESPROC) (GLuint program, GLenum binaryFormat, const GLvoid *binary, GLint length);
1086 #endif
1087 
1088 /* GL_OES_mapbuffer */
1089 #ifndef GL_OES_mapbuffer
1090 #define GL_OES_mapbuffer 1
1091 #ifdef GL_GLEXT_PROTOTYPES
1092 GL_APICALL void* GL_APIENTRY glMapBufferOES (GLenum target, GLenum access);
1093 GL_APICALL GLboolean GL_APIENTRY glUnmapBufferOES (GLenum target);
1094 GL_APICALL void GL_APIENTRY glGetBufferPointervOES (GLenum target, GLenum pname, GLvoid **params);
1095 #endif
1097 typedef GLboolean (GL_APIENTRYP PFNGLUNMAPBUFFEROESPROC) (GLenum target);
1098 typedef void (GL_APIENTRYP PFNGLGETBUFFERPOINTERVOESPROC) (GLenum target, GLenum pname, GLvoid **params);
1099 #endif
1100 
1101 /* GL_OES_packed_depth_stencil */
1102 #ifndef GL_OES_packed_depth_stencil
1103 #define GL_OES_packed_depth_stencil 1
1104 #endif
1105 
1106 /* GL_OES_required_internalformat */
1107 #ifndef GL_OES_required_internalformat
1108 #define GL_OES_required_internalformat 1
1109 #endif
1110 
1111 /* GL_OES_rgb8_rgba8 */
1112 #ifndef GL_OES_rgb8_rgba8
1113 #define GL_OES_rgb8_rgba8 1
1114 #endif
1115 
1116 /* GL_OES_standard_derivatives */
1117 #ifndef GL_OES_standard_derivatives
1118 #define GL_OES_standard_derivatives 1
1119 #endif
1120 
1121 /* GL_OES_stencil1 */
1122 #ifndef GL_OES_stencil1
1123 #define GL_OES_stencil1 1
1124 #endif
1125 
1126 /* GL_OES_stencil4 */
1127 #ifndef GL_OES_stencil4
1128 #define GL_OES_stencil4 1
1129 #endif
1130 
1131 #ifndef GL_OES_surfaceless_context
1132 #define GL_OES_surfaceless_context 1
1133 #endif
1134 
1135 /* GL_OES_texture_3D */
1136 #ifndef GL_OES_texture_3D
1137 #define GL_OES_texture_3D 1
1138 #ifdef GL_GLEXT_PROTOTYPES
1144 GL_APICALL void GL_APIENTRY glFramebufferTexture3DOES (GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLint zoffset);
1145 #endif
1151 typedef void (GL_APIENTRYP PFNGLFRAMEBUFFERTEXTURE3DOESPROC) (GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLint zoffset);
1152 #endif
1153 
1154 /* GL_OES_texture_float */
1155 #ifndef GL_OES_texture_float
1156 #define GL_OES_texture_float 1
1157 #endif
1158 
1159 /* GL_OES_texture_float_linear */
1160 #ifndef GL_OES_texture_float_linear
1161 #define GL_OES_texture_float_linear 1
1162 #endif
1163 
1164 /* GL_OES_texture_half_float */
1165 #ifndef GL_OES_texture_half_float
1166 #define GL_OES_texture_half_float 1
1167 #endif
1168 
1169 /* GL_OES_texture_half_float_linear */
1170 #ifndef GL_OES_texture_half_float_linear
1171 #define GL_OES_texture_half_float_linear 1
1172 #endif
1173 
1174 /* GL_OES_texture_npot */
1175 #ifndef GL_OES_texture_npot
1176 #define GL_OES_texture_npot 1
1177 #endif
1178 
1179 /* GL_OES_vertex_array_object */
1180 #ifndef GL_OES_vertex_array_object
1181 #define GL_OES_vertex_array_object 1
1182 #ifdef GL_GLEXT_PROTOTYPES
1183 GL_APICALL void GL_APIENTRY glBindVertexArrayOES (GLuint array);
1184 GL_APICALL void GL_APIENTRY glDeleteVertexArraysOES (GLsizei n, const GLuint *arrays);
1185 GL_APICALL void GL_APIENTRY glGenVertexArraysOES (GLsizei n, GLuint *arrays);
1186 GL_APICALL GLboolean GL_APIENTRY glIsVertexArrayOES (GLuint array);
1187 #endif
1188 typedef void (GL_APIENTRYP PFNGLBINDVERTEXARRAYOESPROC) (GLuint array);
1189 typedef void (GL_APIENTRYP PFNGLDELETEVERTEXARRAYSOESPROC) (GLsizei n, const GLuint *arrays);
1190 typedef void (GL_APIENTRYP PFNGLGENVERTEXARRAYSOESPROC) (GLsizei n, GLuint *arrays);
1191 typedef GLboolean (GL_APIENTRYP PFNGLISVERTEXARRAYOESPROC) (GLuint array);
1192 #endif
1193 
1194 /* GL_OES_vertex_half_float */
1195 #ifndef GL_OES_vertex_half_float
1196 #define GL_OES_vertex_half_float 1
1197 #endif
1198 
1199 /* GL_OES_vertex_type_10_10_10_2 */
1200 #ifndef GL_OES_vertex_type_10_10_10_2
1201 #define GL_OES_vertex_type_10_10_10_2 1
1202 #endif
1203 
1204 /*------------------------------------------------------------------------*
1205  * KHR extension functions
1206  *------------------------------------------------------------------------*/
1207 
1208 #ifndef GL_KHR_debug
1209 #define GL_KHR_debug 1
1210 #ifdef GL_GLEXT_PROTOTYPES
1211 GL_APICALL void GL_APIENTRY glDebugMessageControlKHR (GLenum source, GLenum type, GLenum severity, GLsizei count, const GLuint *ids, GLboolean enabled);
1212 GL_APICALL void GL_APIENTRY glDebugMessageInsertKHR (GLenum source, GLenum type, GLuint id, GLenum severity, GLsizei length, const GLchar *buf);
1213 GL_APICALL void GL_APIENTRY glDebugMessageCallbackKHR (GLDEBUGPROCKHR callback, const void *userParam);
1215 GL_APICALL void GL_APIENTRY glPushDebugGroupKHR (GLenum source, GLuint id, GLsizei length, const GLchar *message);
1216 GL_APICALL void GL_APIENTRY glPopDebugGroupKHR (void);
1217 GL_APICALL void GL_APIENTRY glObjectLabelKHR (GLenum identifier, GLuint name, GLsizei length, const GLchar *label);
1218 GL_APICALL void GL_APIENTRY glGetObjectLabelKHR (GLenum identifier, GLuint name, GLsizei bufSize, GLsizei *length, GLchar *label);
1219 GL_APICALL void GL_APIENTRY glObjectPtrLabelKHR (const void *ptr, GLsizei length, const GLchar *label);
1220 GL_APICALL void GL_APIENTRY glGetObjectPtrLabelKHR (const void *ptr, GLsizei bufSize, GLsizei *length, GLchar *label);
1221 GL_APICALL void GL_APIENTRY glGetPointervKHR (GLenum pname, GLvoid **params);
1222 #endif
1223 typedef void (GL_APIENTRYP PFNGLDEBUGMESSAGECONTROLKHRPROC) (GLenum source, GLenum type, GLenum severity, GLsizei count, const GLuint *ids, GLboolean enabled);
1224 typedef void (GL_APIENTRYP PFNGLDEBUGMESSAGEINSERTKHRPROC) (GLenum source, GLenum type, GLuint id, GLenum severity, GLsizei length, const GLchar *buf);
1225 typedef void (GL_APIENTRYP PFNGLDEBUGMESSAGECALLBACKKHRPROC) (GLDEBUGPROCKHR callback, const void *userParam);
1227 typedef void (GL_APIENTRYP PFNGLPUSHDEBUGGROUPKHRPROC) (GLenum source, GLuint id, GLsizei length, const GLchar *message);
1228 typedef void (GL_APIENTRYP PFNGLPOPDEBUGGROUPKHRPROC) (void);
1229 typedef void (GL_APIENTRYP PFNGLOBJECTLABELKHRPROC) (GLenum identifier, GLuint name, GLsizei length, const GLchar *label);
1230 typedef void (GL_APIENTRYP PFNGLGETOBJECTLABELKHRPROC) (GLenum identifier, GLuint name, GLsizei bufSize, GLsizei *length, GLchar *label);
1231 typedef void (GL_APIENTRYP PFNGLOBJECTPTRLABELKHRPROC) (const void *ptr, GLsizei length, const GLchar *label);
1232 typedef void (GL_APIENTRYP PFNGLGETOBJECTPTRLABELKHRPROC) (const void *ptr, GLsizei bufSize, GLsizei *length, GLchar *label);
1233 typedef void (GL_APIENTRYP PFNGLGETPOINTERVKHRPROC) (GLenum pname, GLvoid **params);
1234 #endif
1235 
1236 #ifndef GL_KHR_texture_compression_astc_ldr
1237 #define GL_KHR_texture_compression_astc_ldr 1
1238 #endif
1239 
1240 
1241 /*------------------------------------------------------------------------*
1242  * AMD extension functions
1243  *------------------------------------------------------------------------*/
1244 
1245 /* GL_AMD_compressed_3DC_texture */
1246 #ifndef GL_AMD_compressed_3DC_texture
1247 #define GL_AMD_compressed_3DC_texture 1
1248 #endif
1249 
1250 /* GL_AMD_compressed_ATC_texture */
1251 #ifndef GL_AMD_compressed_ATC_texture
1252 #define GL_AMD_compressed_ATC_texture 1
1253 #endif
1254 
1255 /* AMD_performance_monitor */
1256 #ifndef GL_AMD_performance_monitor
1257 #define GL_AMD_performance_monitor 1
1258 #ifdef GL_GLEXT_PROTOTYPES
1259 GL_APICALL void GL_APIENTRY glGetPerfMonitorGroupsAMD (GLint *numGroups, GLsizei groupsSize, GLuint *groups);
1261 GL_APICALL void GL_APIENTRY glGetPerfMonitorGroupStringAMD (GLuint group, GLsizei bufSize, GLsizei *length, GLchar *groupString);
1262 GL_APICALL void GL_APIENTRY glGetPerfMonitorCounterStringAMD (GLuint group, GLuint counter, GLsizei bufSize, GLsizei *length, GLchar *counterString);
1263 GL_APICALL void GL_APIENTRY glGetPerfMonitorCounterInfoAMD (GLuint group, GLuint counter, GLenum pname, GLvoid *data);
1264 GL_APICALL void GL_APIENTRY glGenPerfMonitorsAMD (GLsizei n, GLuint *monitors);
1265 GL_APICALL void GL_APIENTRY glDeletePerfMonitorsAMD (GLsizei n, GLuint *monitors);
1266 GL_APICALL void GL_APIENTRY glSelectPerfMonitorCountersAMD (GLuint monitor, GLboolean enable, GLuint group, GLint numCounters, GLuint *countersList);
1267 GL_APICALL void GL_APIENTRY glBeginPerfMonitorAMD (GLuint monitor);
1268 GL_APICALL void GL_APIENTRY glEndPerfMonitorAMD (GLuint monitor);
1269 GL_APICALL void GL_APIENTRY glGetPerfMonitorCounterDataAMD (GLuint monitor, GLenum pname, GLsizei dataSize, GLuint *data, GLint *bytesWritten);
1270 #endif
1271 typedef void (GL_APIENTRYP PFNGLGETPERFMONITORGROUPSAMDPROC) (GLint *numGroups, GLsizei groupsSize, GLuint *groups);
1272 typedef void (GL_APIENTRYP PFNGLGETPERFMONITORCOUNTERSAMDPROC) (GLuint group, GLint *numCounters, GLint *maxActiveCounters, GLsizei counterSize, GLuint *counters);
1273 typedef void (GL_APIENTRYP PFNGLGETPERFMONITORGROUPSTRINGAMDPROC) (GLuint group, GLsizei bufSize, GLsizei *length, GLchar *groupString);
1274 typedef void (GL_APIENTRYP PFNGLGETPERFMONITORCOUNTERSTRINGAMDPROC) (GLuint group, GLuint counter, GLsizei bufSize, GLsizei *length, GLchar *counterString);
1275 typedef void (GL_APIENTRYP PFNGLGETPERFMONITORCOUNTERINFOAMDPROC) (GLuint group, GLuint counter, GLenum pname, GLvoid *data);
1276 typedef void (GL_APIENTRYP PFNGLGENPERFMONITORSAMDPROC) (GLsizei n, GLuint *monitors);
1277 typedef void (GL_APIENTRYP PFNGLDELETEPERFMONITORSAMDPROC) (GLsizei n, GLuint *monitors);
1278 typedef void (GL_APIENTRYP PFNGLSELECTPERFMONITORCOUNTERSAMDPROC) (GLuint monitor, GLboolean enable, GLuint group, GLint numCounters, GLuint *countersList);
1279 typedef void (GL_APIENTRYP PFNGLBEGINPERFMONITORAMDPROC) (GLuint monitor);
1280 typedef void (GL_APIENTRYP PFNGLENDPERFMONITORAMDPROC) (GLuint monitor);
1281 typedef void (GL_APIENTRYP PFNGLGETPERFMONITORCOUNTERDATAAMDPROC) (GLuint monitor, GLenum pname, GLsizei dataSize, GLuint *data, GLint *bytesWritten);
1282 #endif
1283 
1284 /* GL_AMD_program_binary_Z400 */
1285 #ifndef GL_AMD_program_binary_Z400
1286 #define GL_AMD_program_binary_Z400 1
1287 #endif
1288 
1289 /*------------------------------------------------------------------------*
1290  * ANGLE extension functions
1291  *------------------------------------------------------------------------*/
1292 
1293 /* GL_ANGLE_depth_texture */
1294 #ifndef GL_ANGLE_depth_texture
1295 #define GL_ANGLE_depth_texture 1
1296 #endif
1297 
1298 /* GL_ANGLE_framebuffer_blit */
1299 #ifndef GL_ANGLE_framebuffer_blit
1300 #define GL_ANGLE_framebuffer_blit 1
1301 #ifdef GL_GLEXT_PROTOTYPES
1303 #endif
1305 #endif
1306 
1307 /* GL_ANGLE_framebuffer_multisample */
1308 #ifndef GL_ANGLE_framebuffer_multisample
1309 #define GL_ANGLE_framebuffer_multisample 1
1310 #ifdef GL_GLEXT_PROTOTYPES
1311 GL_APICALL void GL_APIENTRY glRenderbufferStorageMultisampleANGLE (GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height);
1312 #endif
1313 typedef void (GL_APIENTRYP PFNGLRENDERBUFFERSTORAGEMULTISAMPLEANGLEPROC) (GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height);
1314 #endif
1315 
1316 #ifndef GL_ANGLE_instanced_arrays
1317 #define GL_ANGLE_instanced_arrays 1
1318 #ifdef GL_GLEXT_PROTOTYPES
1319 GL_APICALL void GL_APIENTRY glDrawArraysInstancedANGLE (GLenum mode, GLint first, GLsizei count, GLsizei primcount);
1320 GL_APICALL void GL_APIENTRY glDrawElementsInstancedANGLE (GLenum mode, GLsizei count, GLenum type, const void *indices, GLsizei primcount);
1321 GL_APICALL void GL_APIENTRY glVertexAttribDivisorANGLE (GLuint index, GLuint divisor);
1322 #endif
1323 typedef void (GL_APIENTRYP PFNGLDRAWARRAYSINSTANCEDANGLEPROC) (GLenum mode, GLint first, GLsizei count, GLsizei primcount);
1324 typedef void (GL_APIENTRYP PFNGLDRAWELEMENTSINSTANCEDANGLEPROC) (GLenum mode, GLsizei count, GLenum type, const void *indices, GLsizei primcount);
1325 typedef void (GL_APIENTRYP PFNGLVERTEXATTRIBDIVISORANGLEPROC) (GLuint index, GLuint divisor);
1326 #endif
1327 
1328 /* GL_ANGLE_pack_reverse_row_order */
1329 #ifndef GL_ANGLE_pack_reverse_row_order
1330 #define GL_ANGLE_pack_reverse_row_order 1
1331 #endif
1332 
1333 /* GL_ANGLE_program_binary */
1334 #ifndef GL_ANGLE_program_binary
1335 #define GL_ANGLE_program_binary 1
1336 #endif
1337 
1338 /* GL_ANGLE_texture_compression_dxt3 */
1339 #ifndef GL_ANGLE_texture_compression_dxt3
1340 #define GL_ANGLE_texture_compression_dxt3 1
1341 #endif
1342 
1343 /* GL_ANGLE_texture_compression_dxt5 */
1344 #ifndef GL_ANGLE_texture_compression_dxt5
1345 #define GL_ANGLE_texture_compression_dxt5 1
1346 #endif
1347 
1348 /* GL_ANGLE_texture_usage */
1349 #ifndef GL_ANGLE_texture_usage
1350 #define GL_ANGLE_texture_usage 1
1351 #endif
1352 
1353 #ifndef GL_ANGLE_translated_shader_source
1354 #define GL_ANGLE_translated_shader_source 1
1355 #ifdef GL_GLEXT_PROTOTYPES
1356 GL_APICALL void GL_APIENTRY glGetTranslatedShaderSourceANGLE (GLuint shader, GLsizei bufsize, GLsizei *length, GLchar *source);
1357 #endif
1358 typedef void (GL_APIENTRYP PFNGLGETTRANSLATEDSHADERSOURCEANGLEPROC) (GLuint shader, GLsizei bufsize, GLsizei *length, GLchar *source);
1359 #endif
1360 
1361 /*------------------------------------------------------------------------*
1362  * APPLE extension functions
1363  *------------------------------------------------------------------------*/
1364 
1365 /* GL_APPLE_copy_texture_levels */
1366 #ifndef GL_APPLE_copy_texture_levels
1367 #define GL_APPLE_copy_texture_levels 1
1368 #ifdef GL_GLEXT_PROTOTYPES
1369 GL_APICALL void GL_APIENTRY glCopyTextureLevelsAPPLE (GLuint destinationTexture, GLuint sourceTexture, GLint sourceBaseLevel, GLsizei sourceLevelCount);
1370 #endif
1371 typedef void (GL_APIENTRYP PFNGLCOPYTEXTURELEVELSAPPLEPROC) (GLuint destinationTexture, GLuint sourceTexture, GLint sourceBaseLevel, GLsizei sourceLevelCount);
1372 #endif
1373 
1374 /* GL_APPLE_framebuffer_multisample */
1375 #ifndef GL_APPLE_framebuffer_multisample
1376 #define GL_APPLE_framebuffer_multisample 1
1377 #ifdef GL_GLEXT_PROTOTYPES
1378 GL_APICALL void GL_APIENTRY glRenderbufferStorageMultisampleAPPLE (GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height);
1379 GL_APICALL void GL_APIENTRY glResolveMultisampleFramebufferAPPLE (void);
1380 #endif /* GL_GLEXT_PROTOTYPES */
1381 typedef void (GL_APIENTRYP PFNGLRENDERBUFFERSTORAGEMULTISAMPLEAPPLEPROC) (GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height);
1382 typedef void (GL_APIENTRYP PFNGLRESOLVEMULTISAMPLEFRAMEBUFFERAPPLEPROC) (void);
1383 #endif
1384 
1385 /* GL_APPLE_rgb_422 */
1386 #ifndef GL_APPLE_rgb_422
1387 #define GL_APPLE_rgb_422 1
1388 #endif
1389 
1390 /* GL_APPLE_sync */
1391 #ifndef GL_APPLE_sync
1392 #define GL_APPLE_sync 1
1393 #ifdef GL_GLEXT_PROTOTYPES
1394 GL_APICALL GLsync GL_APIENTRY glFenceSyncAPPLE (GLenum condition, GLbitfield flags);
1395 GL_APICALL GLboolean GL_APIENTRY glIsSyncAPPLE (GLsync sync);
1396 GL_APICALL void GL_APIENTRY glDeleteSyncAPPLE (GLsync sync);
1397 GL_APICALL GLenum GL_APIENTRY glClientWaitSyncAPPLE (GLsync sync, GLbitfield flags, GLuint64 timeout);
1398 GL_APICALL void GL_APIENTRY glWaitSyncAPPLE (GLsync sync, GLbitfield flags, GLuint64 timeout);
1399 GL_APICALL void GL_APIENTRY glGetInteger64vAPPLE (GLenum pname, GLint64 *params);
1400 GL_APICALL void GL_APIENTRY glGetSyncivAPPLE (GLsync sync, GLenum pname, GLsizei bufSize, GLsizei *length, GLint *values);
1401 #endif
1402 typedef GLsync (GL_APIENTRYP PFNGLFENCESYNCAPPLEPROC) (GLenum condition, GLbitfield flags);
1403 typedef GLboolean (GL_APIENTRYP PFNGLISSYNCAPPLEPROC) (GLsync sync);
1404 typedef void (GL_APIENTRYP PFNGLDELETESYNCAPPLEPROC) (GLsync sync);
1405 typedef GLenum (GL_APIENTRYP PFNGLCLIENTWAITSYNCAPPLEPROC) (GLsync sync, GLbitfield flags, GLuint64 timeout);
1406 typedef void (GL_APIENTRYP PFNGLWAITSYNCAPPLEPROC) (GLsync sync, GLbitfield flags, GLuint64 timeout);
1407 typedef void (GL_APIENTRYP PFNGLGETINTEGER64VAPPLEPROC) (GLenum pname, GLint64 *params);
1408 typedef void (GL_APIENTRYP PFNGLGETSYNCIVAPPLEPROC) (GLsync sync, GLenum pname, GLsizei bufSize, GLsizei *length, GLint *values);
1409 #endif
1410 
1411 /* GL_APPLE_texture_format_BGRA8888 */
1412 #ifndef GL_APPLE_texture_format_BGRA8888
1413 #define GL_APPLE_texture_format_BGRA8888 1
1414 #endif
1415 
1416 /* GL_APPLE_texture_max_level */
1417 #ifndef GL_APPLE_texture_max_level
1418 #define GL_APPLE_texture_max_level 1
1419 #endif
1420 
1421 /*------------------------------------------------------------------------*
1422  * ARM extension functions
1423  *------------------------------------------------------------------------*/
1424 
1425 /* GL_ARM_mali_program_binary */
1426 #ifndef GL_ARM_mali_program_binary
1427 #define GL_ARM_mali_program_binary 1
1428 #endif
1429 
1430 /* GL_ARM_mali_shader_binary */
1431 #ifndef GL_ARM_mali_shader_binary
1432 #define GL_ARM_mali_shader_binary 1
1433 #endif
1434 
1435 /* GL_ARM_rgba8 */
1436 #ifndef GL_ARM_rgba8
1437 #define GL_ARM_rgba8 1
1438 #endif
1439 
1440 /*------------------------------------------------------------------------*
1441  * EXT extension functions
1442  *------------------------------------------------------------------------*/
1443 
1444 /* GL_EXT_blend_minmax */
1445 #ifndef GL_EXT_blend_minmax
1446 #define GL_EXT_blend_minmax 1
1447 #endif
1448 
1449 /* GL_EXT_color_buffer_half_float */
1450 #ifndef GL_EXT_color_buffer_half_float
1451 #define GL_EXT_color_buffer_half_float 1
1452 #endif
1453 
1454 /* GL_EXT_debug_label */
1455 #ifndef GL_EXT_debug_label
1456 #define GL_EXT_debug_label 1
1457 #ifdef GL_GLEXT_PROTOTYPES
1458 GL_APICALL void GL_APIENTRY glLabelObjectEXT (GLenum type, GLuint object, GLsizei length, const GLchar *label);
1459 GL_APICALL void GL_APIENTRY glGetObjectLabelEXT (GLenum type, GLuint object, GLsizei bufSize, GLsizei *length, GLchar *label);
1460 #endif
1461 typedef void (GL_APIENTRYP PFNGLLABELOBJECTEXTPROC) (GLenum type, GLuint object, GLsizei length, const GLchar *label);
1462 typedef void (GL_APIENTRYP PFNGLGETOBJECTLABELEXTPROC) (GLenum type, GLuint object, GLsizei bufSize, GLsizei *length, GLchar *label);
1463 #endif
1464 
1465 /* GL_EXT_debug_marker */
1466 #ifndef GL_EXT_debug_marker
1467 #define GL_EXT_debug_marker 1
1468 #ifdef GL_GLEXT_PROTOTYPES
1469 GL_APICALL void GL_APIENTRY glInsertEventMarkerEXT (GLsizei length, const GLchar *marker);
1470 GL_APICALL void GL_APIENTRY glPushGroupMarkerEXT (GLsizei length, const GLchar *marker);
1471 GL_APICALL void GL_APIENTRY glPopGroupMarkerEXT (void);
1472 #endif
1473 typedef void (GL_APIENTRYP PFNGLINSERTEVENTMARKEREXTPROC) (GLsizei length, const GLchar *marker);
1474 typedef void (GL_APIENTRYP PFNGLPUSHGROUPMARKEREXTPROC) (GLsizei length, const GLchar *marker);
1475 typedef void (GL_APIENTRYP PFNGLPOPGROUPMARKEREXTPROC) (void);
1476 #endif
1477 
1478 /* GL_EXT_discard_framebuffer */
1479 #ifndef GL_EXT_discard_framebuffer
1480 #define GL_EXT_discard_framebuffer 1
1481 #ifdef GL_GLEXT_PROTOTYPES
1482 GL_APICALL void GL_APIENTRY glDiscardFramebufferEXT (GLenum target, GLsizei numAttachments, const GLenum *attachments);
1483 #endif
1484 typedef void (GL_APIENTRYP PFNGLDISCARDFRAMEBUFFEREXTPROC) (GLenum target, GLsizei numAttachments, const GLenum *attachments);
1485 #endif
1486 
1487 #ifndef GL_EXT_disjoint_timer_query
1488 #define GL_EXT_disjoint_timer_query 1
1489 #ifdef GL_GLEXT_PROTOTYPES
1490 GL_APICALL void GL_APIENTRY glGenQueriesEXT (GLsizei n, GLuint *ids);
1491 GL_APICALL void GL_APIENTRY glDeleteQueriesEXT (GLsizei n, const GLuint *ids);
1492 GL_APICALL GLboolean GL_APIENTRY glIsQueryEXT (GLuint id);
1493 GL_APICALL void GL_APIENTRY glBeginQueryEXT (GLenum target, GLuint id);
1494 GL_APICALL void GL_APIENTRY glEndQueryEXT (GLenum target);
1495 GL_APICALL void GL_APIENTRY glQueryCounterEXT (GLuint id, GLenum target);
1496 GL_APICALL void GL_APIENTRY glGetQueryivEXT (GLenum target, GLenum pname, GLint *params);
1497 GL_APICALL void GL_APIENTRY glGetQueryObjectivEXT (GLuint id, GLenum pname, GLint *params);
1498 GL_APICALL void GL_APIENTRY glGetQueryObjectuivEXT (GLuint id, GLenum pname, GLuint *params);
1499 GL_APICALL void GL_APIENTRY glGetQueryObjecti64vEXT (GLuint id, GLenum pname, GLint64 *params);
1500 GL_APICALL void GL_APIENTRY glGetQueryObjectui64vEXT (GLuint id, GLenum pname, GLuint64 *params);
1501 #endif
1502 typedef void (GL_APIENTRYP PFNGLGENQUERIESEXTPROC) (GLsizei n, GLuint *ids);
1503 typedef void (GL_APIENTRYP PFNGLDELETEQUERIESEXTPROC) (GLsizei n, const GLuint *ids);
1504 typedef GLboolean (GL_APIENTRYP PFNGLISQUERYEXTPROC) (GLuint id);
1505 typedef void (GL_APIENTRYP PFNGLBEGINQUERYEXTPROC) (GLenum target, GLuint id);
1506 typedef void (GL_APIENTRYP PFNGLENDQUERYEXTPROC) (GLenum target);
1507 typedef void (GL_APIENTRYP PFNGLQUERYCOUNTEREXTPROC) (GLuint id, GLenum target);
1508 typedef void (GL_APIENTRYP PFNGLGETQUERYIVEXTPROC) (GLenum target, GLenum pname, GLint *params);
1509 typedef void (GL_APIENTRYP PFNGLGETQUERYOBJECTIVEXTPROC) (GLuint id, GLenum pname, GLint *params);
1510 typedef void (GL_APIENTRYP PFNGLGETQUERYOBJECTUIVEXTPROC) (GLuint id, GLenum pname, GLuint *params);
1511 typedef void (GL_APIENTRYP PFNGLGETQUERYOBJECTI64VEXTPROC) (GLuint id, GLenum pname, GLint64 *params);
1512 typedef void (GL_APIENTRYP PFNGLGETQUERYOBJECTUI64VEXTPROC) (GLuint id, GLenum pname, GLuint64 *params);
1513 #endif /* GL_EXT_disjoint_timer_query */
1514 
1515 #ifndef GL_EXT_draw_buffers
1516 #define GL_EXT_draw_buffers 1
1517 #ifdef GL_GLEXT_PROTOTYPES
1518 GL_APICALL void GL_APIENTRY glDrawBuffersEXT (GLsizei n, const GLenum *bufs);
1519 #endif
1520 typedef void (GL_APIENTRYP PFNGLDRAWBUFFERSEXTPROC) (GLsizei n, const GLenum *bufs);
1521 #endif /* GL_EXT_draw_buffers */
1522 
1523 /* GL_EXT_map_buffer_range */
1524 #ifndef GL_EXT_map_buffer_range
1525 #define GL_EXT_map_buffer_range 1
1526 #ifdef GL_GLEXT_PROTOTYPES
1527 GL_APICALL void* GL_APIENTRY glMapBufferRangeEXT (GLenum target, GLintptr offset, GLsizeiptr length, GLbitfield access);
1528 GL_APICALL void GL_APIENTRY glFlushMappedBufferRangeEXT (GLenum target, GLintptr offset, GLsizeiptr length);
1529 #endif
1531 typedef void (GL_APIENTRYP PFNGLFLUSHMAPPEDBUFFERRANGEEXTPROC) (GLenum target, GLintptr offset, GLsizeiptr length);
1532 #endif
1533 
1534 /* GL_EXT_multisampled_render_to_texture */
1535 #ifndef GL_EXT_multisampled_render_to_texture
1536 #define GL_EXT_multisampled_render_to_texture 1
1537 #ifdef GL_GLEXT_PROTOTYPES
1538 GL_APICALL void GL_APIENTRY glRenderbufferStorageMultisampleEXT (GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height);
1539 GL_APICALL void GL_APIENTRY glFramebufferTexture2DMultisampleEXT (GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLsizei samples);
1540 #endif
1541 typedef void (GL_APIENTRYP PFNGLRENDERBUFFERSTORAGEMULTISAMPLEEXTPROC) (GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height);
1542 typedef void (GL_APIENTRYP PFNGLFRAMEBUFFERTEXTURE2DMULTISAMPLEEXTPROC) (GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLsizei samples);
1543 #endif
1544 
1545 /* GL_EXT_multiview_draw_buffers */
1546 #ifndef GL_EXT_multiview_draw_buffers
1547 #define GL_EXT_multiview_draw_buffers 1
1548 #ifdef GL_GLEXT_PROTOTYPES
1549 GL_APICALL void GL_APIENTRY glReadBufferIndexedEXT (GLenum src, GLint index);
1550 GL_APICALL void GL_APIENTRY glDrawBuffersIndexedEXT (GLint n, const GLenum *location, const GLint *indices);
1551 GL_APICALL void GL_APIENTRY glGetIntegeri_vEXT (GLenum target, GLuint index, GLint *data);
1552 #endif
1553 typedef void (GL_APIENTRYP PFNGLREADBUFFERINDEXEDEXTPROC) (GLenum src, GLint index);
1554 typedef void (GL_APIENTRYP PFNGLDRAWBUFFERSINDEXEDEXTPROC) (GLint n, const GLenum *location, const GLint *indices);
1555 typedef void (GL_APIENTRYP PFNGLGETINTEGERI_VEXTPROC) (GLenum target, GLuint index, GLint *data);
1556 #endif
1557 
1558 #ifndef GL_EXT_multi_draw_arrays
1559 #define GL_EXT_multi_draw_arrays 1
1560 #ifdef GL_GLEXT_PROTOTYPES
1561 GL_APICALL void GL_APIENTRY glMultiDrawArraysEXT (GLenum mode, const GLint *first, const GLsizei *count, GLsizei primcount);
1562 GL_APICALL void GL_APIENTRY glMultiDrawElementsEXT (GLenum mode, const GLsizei *count, GLenum type, const GLvoid **indices, GLsizei primcount);
1563 #endif /* GL_GLEXT_PROTOTYPES */
1564 typedef void (GL_APIENTRYP PFNGLMULTIDRAWARRAYSEXTPROC) (GLenum mode, const GLint *first, const GLsizei *count, GLsizei primcount);
1565 typedef void (GL_APIENTRYP PFNGLMULTIDRAWELEMENTSEXTPROC) (GLenum mode, const GLsizei *count, GLenum type, const GLvoid **indices, GLsizei primcount);
1566 #endif
1567 
1568 /* GL_EXT_occlusion_query_boolean */
1569 #ifndef GL_EXT_occlusion_query_boolean
1570 #define GL_EXT_occlusion_query_boolean 1
1571 /* All entry points also exist in GL_EXT_disjoint_timer_query */
1572 #endif
1573 
1574 /* GL_EXT_read_format_bgra */
1575 #ifndef GL_EXT_read_format_bgra
1576 #define GL_EXT_read_format_bgra 1
1577 #endif
1578 
1579 /* GL_EXT_robustness */
1580 #ifndef GL_EXT_robustness
1581 #define GL_EXT_robustness 1
1582 #ifdef GL_GLEXT_PROTOTYPES
1583 GL_APICALL GLenum GL_APIENTRY glGetGraphicsResetStatusEXT (void);
1584 GL_APICALL void GL_APIENTRY glReadnPixelsEXT (GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, GLsizei bufSize, GLvoid *data);
1585 GL_APICALL void GL_APIENTRY glGetnUniformfvEXT (GLuint program, GLint location, GLsizei bufSize, GLfloat *params);
1586 GL_APICALL void GL_APIENTRY glGetnUniformivEXT (GLuint program, GLint location, GLsizei bufSize, GLint *params);
1587 #endif
1588 typedef GLenum (GL_APIENTRYP PFNGLGETGRAPHICSRESETSTATUSEXTPROC) (void);
1589 typedef void (GL_APIENTRYP PFNGLREADNPIXELSEXTPROC) (GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, GLsizei bufSize, GLvoid *data);
1590 typedef void (GL_APIENTRYP PFNGLGETNUNIFORMFVEXTPROC) (GLuint program, GLint location, GLsizei bufSize, GLfloat *params);
1591 typedef void (GL_APIENTRYP PFNGLGETNUNIFORMIVEXTPROC) (GLuint program, GLint location, GLsizei bufSize, GLint *params);
1592 #endif
1593 
1594 /* GL_EXT_separate_shader_objects */
1595 #ifndef GL_EXT_separate_shader_objects
1596 #define GL_EXT_separate_shader_objects 1
1597 #ifdef GL_GLEXT_PROTOTYPES
1598 GL_APICALL void GL_APIENTRY glUseProgramStagesEXT (GLuint pipeline, GLbitfield stages, GLuint program);
1599 GL_APICALL void GL_APIENTRY glActiveShaderProgramEXT (GLuint pipeline, GLuint program);
1600 GL_APICALL GLuint GL_APIENTRY glCreateShaderProgramvEXT (GLenum type, GLsizei count, const GLchar **strings);
1601 GL_APICALL void GL_APIENTRY glBindProgramPipelineEXT (GLuint pipeline);
1602 GL_APICALL void GL_APIENTRY glDeleteProgramPipelinesEXT (GLsizei n, const GLuint *pipelines);
1603 GL_APICALL void GL_APIENTRY glGenProgramPipelinesEXT (GLsizei n, GLuint *pipelines);
1604 GL_APICALL GLboolean GL_APIENTRY glIsProgramPipelineEXT (GLuint pipeline);
1605 GL_APICALL void GL_APIENTRY glProgramParameteriEXT (GLuint program, GLenum pname, GLint value);
1606 GL_APICALL void GL_APIENTRY glGetProgramPipelineivEXT (GLuint pipeline, GLenum pname, GLint *params);
1607 GL_APICALL void GL_APIENTRY glProgramUniform1iEXT (GLuint program, GLint location, GLint x);
1608 GL_APICALL void GL_APIENTRY glProgramUniform2iEXT (GLuint program, GLint location, GLint x, GLint y);
1609 GL_APICALL void GL_APIENTRY glProgramUniform3iEXT (GLuint program, GLint location, GLint x, GLint y, GLint z);
1610 GL_APICALL void GL_APIENTRY glProgramUniform4iEXT (GLuint program, GLint location, GLint x, GLint y, GLint z, GLint w);
1611 GL_APICALL void GL_APIENTRY glProgramUniform1fEXT (GLuint program, GLint location, GLfloat x);
1612 GL_APICALL void GL_APIENTRY glProgramUniform2fEXT (GLuint program, GLint location, GLfloat x, GLfloat y);
1613 GL_APICALL void GL_APIENTRY glProgramUniform3fEXT (GLuint program, GLint location, GLfloat x, GLfloat y, GLfloat z);
1614 GL_APICALL void GL_APIENTRY glProgramUniform4fEXT (GLuint program, GLint location, GLfloat x, GLfloat y, GLfloat z, GLfloat w);
1615 GL_APICALL void GL_APIENTRY glProgramUniform1ivEXT (GLuint program, GLint location, GLsizei count, const GLint *value);
1616 GL_APICALL void GL_APIENTRY glProgramUniform2ivEXT (GLuint program, GLint location, GLsizei count, const GLint *value);
1617 GL_APICALL void GL_APIENTRY glProgramUniform3ivEXT (GLuint program, GLint location, GLsizei count, const GLint *value);
1618 GL_APICALL void GL_APIENTRY glProgramUniform4ivEXT (GLuint program, GLint location, GLsizei count, const GLint *value);
1619 GL_APICALL void GL_APIENTRY glProgramUniform1fvEXT (GLuint program, GLint location, GLsizei count, const GLfloat *value);
1620 GL_APICALL void GL_APIENTRY glProgramUniform2fvEXT (GLuint program, GLint location, GLsizei count, const GLfloat *value);
1621 GL_APICALL void GL_APIENTRY glProgramUniform3fvEXT (GLuint program, GLint location, GLsizei count, const GLfloat *value);
1622 GL_APICALL void GL_APIENTRY glProgramUniform4fvEXT (GLuint program, GLint location, GLsizei count, const GLfloat *value);
1623 GL_APICALL void GL_APIENTRY glProgramUniformMatrix2fvEXT (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
1624 GL_APICALL void GL_APIENTRY glProgramUniformMatrix3fvEXT (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
1625 GL_APICALL void GL_APIENTRY glProgramUniformMatrix4fvEXT (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
1626 GL_APICALL void GL_APIENTRY glValidateProgramPipelineEXT (GLuint pipeline);
1627 GL_APICALL void GL_APIENTRY glGetProgramPipelineInfoLogEXT (GLuint pipeline, GLsizei bufSize, GLsizei *length, GLchar *infoLog);
1628 #endif
1629 typedef void (GL_APIENTRYP PFNGLUSEPROGRAMSTAGESEXTPROC) (GLuint pipeline, GLbitfield stages, GLuint program);
1630 typedef void (GL_APIENTRYP PFNGLACTIVESHADERPROGRAMEXTPROC) (GLuint pipeline, GLuint program);
1631 typedef GLuint (GL_APIENTRYP PFNGLCREATESHADERPROGRAMVEXTPROC) (GLenum type, GLsizei count, const GLchar **strings);
1632 typedef void (GL_APIENTRYP PFNGLBINDPROGRAMPIPELINEEXTPROC) (GLuint pipeline);
1633 typedef void (GL_APIENTRYP PFNGLDELETEPROGRAMPIPELINESEXTPROC) (GLsizei n, const GLuint *pipelines);
1634 typedef void (GL_APIENTRYP PFNGLGENPROGRAMPIPELINESEXTPROC) (GLsizei n, GLuint *pipelines);
1635 typedef GLboolean (GL_APIENTRYP PFNGLISPROGRAMPIPELINEEXTPROC) (GLuint pipeline);
1636 typedef void (GL_APIENTRYP PFNGLPROGRAMPARAMETERIEXTPROC) (GLuint program, GLenum pname, GLint value);
1637 typedef void (GL_APIENTRYP PFNGLGETPROGRAMPIPELINEIVEXTPROC) (GLuint pipeline, GLenum pname, GLint *params);
1638 typedef void (GL_APIENTRYP PFNGLPROGRAMUNIFORM1IEXTPROC) (GLuint program, GLint location, GLint x);
1639 typedef void (GL_APIENTRYP PFNGLPROGRAMUNIFORM2IEXTPROC) (GLuint program, GLint location, GLint x, GLint y);
1640 typedef void (GL_APIENTRYP PFNGLPROGRAMUNIFORM3IEXTPROC) (GLuint program, GLint location, GLint x, GLint y, GLint z);
1641 typedef void (GL_APIENTRYP PFNGLPROGRAMUNIFORM4IEXTPROC) (GLuint program, GLint location, GLint x, GLint y, GLint z, GLint w);
1642 typedef void (GL_APIENTRYP PFNGLPROGRAMUNIFORM1FEXTPROC) (GLuint program, GLint location, GLfloat x);
1643 typedef void (GL_APIENTRYP PFNGLPROGRAMUNIFORM2FEXTPROC) (GLuint program, GLint location, GLfloat x, GLfloat y);
1644 typedef void (GL_APIENTRYP PFNGLPROGRAMUNIFORM3FEXTPROC) (GLuint program, GLint location, GLfloat x, GLfloat y, GLfloat z);
1645 typedef void (GL_APIENTRYP PFNGLPROGRAMUNIFORM4FEXTPROC) (GLuint program, GLint location, GLfloat x, GLfloat y, GLfloat z, GLfloat w);
1646 typedef void (GL_APIENTRYP PFNGLPROGRAMUNIFORM1IVEXTPROC) (GLuint program, GLint location, GLsizei count, const GLint *value);
1647 typedef void (GL_APIENTRYP PFNGLPROGRAMUNIFORM2IVEXTPROC) (GLuint program, GLint location, GLsizei count, const GLint *value);
1648 typedef void (GL_APIENTRYP PFNGLPROGRAMUNIFORM3IVEXTPROC) (GLuint program, GLint location, GLsizei count, const GLint *value);
1649 typedef void (GL_APIENTRYP PFNGLPROGRAMUNIFORM4IVEXTPROC) (GLuint program, GLint location, GLsizei count, const GLint *value);
1650 typedef void (GL_APIENTRYP PFNGLPROGRAMUNIFORM1FVEXTPROC) (GLuint program, GLint location, GLsizei count, const GLfloat *value);
1651 typedef void (GL_APIENTRYP PFNGLPROGRAMUNIFORM2FVEXTPROC) (GLuint program, GLint location, GLsizei count, const GLfloat *value);
1652 typedef void (GL_APIENTRYP PFNGLPROGRAMUNIFORM3FVEXTPROC) (GLuint program, GLint location, GLsizei count, const GLfloat *value);
1653 typedef void (GL_APIENTRYP PFNGLPROGRAMUNIFORM4FVEXTPROC) (GLuint program, GLint location, GLsizei count, const GLfloat *value);
1654 typedef void (GL_APIENTRYP PFNGLPROGRAMUNIFORMMATRIX2FVEXTPROC) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
1655 typedef void (GL_APIENTRYP PFNGLPROGRAMUNIFORMMATRIX3FVEXTPROC) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
1656 typedef void (GL_APIENTRYP PFNGLPROGRAMUNIFORMMATRIX4FVEXTPROC) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
1657 typedef void (GL_APIENTRYP PFNGLVALIDATEPROGRAMPIPELINEEXTPROC) (GLuint pipeline);
1658 typedef void (GL_APIENTRYP PFNGLGETPROGRAMPIPELINEINFOLOGEXTPROC) (GLuint pipeline, GLsizei bufSize, GLsizei *length, GLchar *infoLog);
1659 #endif
1660 
1661 /* GL_EXT_shader_framebuffer_fetch */
1662 #ifndef GL_EXT_shader_framebuffer_fetch
1663 #define GL_EXT_shader_framebuffer_fetch 1
1664 #endif
1665 
1666 /* GL_EXT_shader_texture_lod */
1667 #ifndef GL_EXT_shader_texture_lod
1668 #define GL_EXT_shader_texture_lod 1
1669 #endif
1670 
1671 /* GL_EXT_shadow_samplers */
1672 #ifndef GL_EXT_shadow_samplers
1673 #define GL_EXT_shadow_samplers 1
1674 #endif
1675 
1676 /* GL_EXT_sRGB */
1677 #ifndef GL_EXT_sRGB
1678 #define GL_EXT_sRGB 1
1679 #endif
1680 
1681 /* GL_EXT_texture_compression_dxt1 */
1682 #ifndef GL_EXT_texture_compression_dxt1
1683 #define GL_EXT_texture_compression_dxt1 1
1684 #endif
1685 
1686 /* GL_EXT_texture_filter_anisotropic */
1687 #ifndef GL_EXT_texture_filter_anisotropic
1688 #define GL_EXT_texture_filter_anisotropic 1
1689 #endif
1690 
1691 /* GL_EXT_texture_format_BGRA8888 */
1692 #ifndef GL_EXT_texture_format_BGRA8888
1693 #define GL_EXT_texture_format_BGRA8888 1
1694 #endif
1695 
1696 /* GL_EXT_texture_rg */
1697 #ifndef GL_EXT_texture_rg
1698 #define GL_EXT_texture_rg 1
1699 #endif
1700 
1701 /* GL_EXT_texture_storage */
1702 #ifndef GL_EXT_texture_storage
1703 #define GL_EXT_texture_storage 1
1704 #ifdef GL_GLEXT_PROTOTYPES
1705 GL_APICALL void GL_APIENTRY glTexStorage1DEXT (GLenum target, GLsizei levels, GLenum internalformat, GLsizei width);
1706 GL_APICALL void GL_APIENTRY glTexStorage2DEXT (GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height);
1707 GL_APICALL void GL_APIENTRY glTexStorage3DEXT (GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth);
1708 GL_APICALL void GL_APIENTRY glTextureStorage1DEXT (GLuint texture, GLenum target, GLsizei levels, GLenum internalformat, GLsizei width);
1709 GL_APICALL void GL_APIENTRY glTextureStorage2DEXT (GLuint texture, GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height);
1710 GL_APICALL void GL_APIENTRY glTextureStorage3DEXT (GLuint texture, GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth);
1711 #endif
1712 typedef void (GL_APIENTRYP PFNGLTEXSTORAGE1DEXTPROC) (GLenum target, GLsizei levels, GLenum internalformat, GLsizei width);
1713 typedef void (GL_APIENTRYP PFNGLTEXSTORAGE2DEXTPROC) (GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height);
1715 typedef void (GL_APIENTRYP PFNGLTEXTURESTORAGE1DEXTPROC) (GLuint texture, GLenum target, GLsizei levels, GLenum internalformat, GLsizei width);
1716 typedef void (GL_APIENTRYP PFNGLTEXTURESTORAGE2DEXTPROC) (GLuint texture, GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height);
1718 #endif
1719 
1720 /* GL_EXT_texture_type_2_10_10_10_REV */
1721 #ifndef GL_EXT_texture_type_2_10_10_10_REV
1722 #define GL_EXT_texture_type_2_10_10_10_REV 1
1723 #endif
1724 
1725 /* GL_EXT_unpack_subimage */
1726 #ifndef GL_EXT_unpack_subimage
1727 #define GL_EXT_unpack_subimage 1
1728 #endif
1729 
1730 /*------------------------------------------------------------------------*
1731  * DMP extension functions
1732  *------------------------------------------------------------------------*/
1733 
1734 /* GL_DMP_shader_binary */
1735 #ifndef GL_DMP_shader_binary
1736 #define GL_DMP_shader_binary 1
1737 #endif
1738 
1739 /*------------------------------------------------------------------------*
1740  * FJ extension functions
1741  *------------------------------------------------------------------------*/
1742 
1743 /* GL_FJ_shader_binary_GCCSO */
1744 #ifndef GL_FJ_shader_binary_GCCSO
1745 #define GL_FJ_shader_binary_GCCSO 1
1746 #endif
1747 
1748 /*------------------------------------------------------------------------*
1749  * IMG extension functions
1750  *------------------------------------------------------------------------*/
1751 
1752 /* GL_IMG_program_binary */
1753 #ifndef GL_IMG_program_binary
1754 #define GL_IMG_program_binary 1
1755 #endif
1756 
1757 /* GL_IMG_read_format */
1758 #ifndef GL_IMG_read_format
1759 #define GL_IMG_read_format 1
1760 #endif
1761 
1762 /* GL_IMG_shader_binary */
1763 #ifndef GL_IMG_shader_binary
1764 #define GL_IMG_shader_binary 1
1765 #endif
1766 
1767 /* GL_IMG_texture_compression_pvrtc */
1768 #ifndef GL_IMG_texture_compression_pvrtc
1769 #define GL_IMG_texture_compression_pvrtc 1
1770 #endif
1771 
1772 /* GL_IMG_texture_compression_pvrtc2 */
1773 #ifndef GL_IMG_texture_compression_pvrtc2
1774 #define GL_IMG_texture_compression_pvrtc2 1
1775 #endif
1776 
1777 /* GL_IMG_multisampled_render_to_texture */
1778 #ifndef GL_IMG_multisampled_render_to_texture
1779 #define GL_IMG_multisampled_render_to_texture 1
1780 #ifdef GL_GLEXT_PROTOTYPES
1781 GL_APICALL void GL_APIENTRY glRenderbufferStorageMultisampleIMG (GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height);
1782 GL_APICALL void GL_APIENTRY glFramebufferTexture2DMultisampleIMG (GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLsizei samples);
1783 #endif
1784 typedef void (GL_APIENTRYP PFNGLRENDERBUFFERSTORAGEMULTISAMPLEIMGPROC) (GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height);
1785 typedef void (GL_APIENTRYP PFNGLFRAMEBUFFERTEXTURE2DMULTISAMPLEIMGPROC) (GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLsizei samples);
1786 #endif
1787 
1788 /*------------------------------------------------------------------------*
1789  * NV extension functions
1790  *------------------------------------------------------------------------*/
1791 
1792 /* GL_NV_coverage_sample */
1793 #ifndef GL_NV_coverage_sample
1794 #define GL_NV_coverage_sample 1
1795 #ifdef GL_GLEXT_PROTOTYPES
1796 GL_APICALL void GL_APIENTRY glCoverageMaskNV (GLboolean mask);
1797 GL_APICALL void GL_APIENTRY glCoverageOperationNV (GLenum operation);
1798 #endif
1799 typedef void (GL_APIENTRYP PFNGLCOVERAGEMASKNVPROC) (GLboolean mask);
1800 typedef void (GL_APIENTRYP PFNGLCOVERAGEOPERATIONNVPROC) (GLenum operation);
1801 #endif
1802 
1803 /* GL_NV_depth_nonlinear */
1804 #ifndef GL_NV_depth_nonlinear
1805 #define GL_NV_depth_nonlinear 1
1806 #endif
1807 
1808 /* GL_NV_draw_buffers */
1809 #ifndef GL_NV_draw_buffers
1810 #define GL_NV_draw_buffers 1
1811 #ifdef GL_GLEXT_PROTOTYPES
1812 GL_APICALL void GL_APIENTRY glDrawBuffersNV (GLsizei n, const GLenum *bufs);
1813 #endif
1814 typedef void (GL_APIENTRYP PFNGLDRAWBUFFERSNVPROC) (GLsizei n, const GLenum *bufs);
1815 #endif
1816 
1817 /* GL_NV_draw_instanced */
1818 #ifndef GL_NV_draw_instanced
1819 #define GL_NV_draw_instanced 1
1820 #ifdef GL_GLEXT_PROTOTYPES
1821 GL_APICALL void GL_APIENTRY glDrawArraysInstancedNV (GLenum mode, GLint first, GLsizei count, GLsizei primcount);
1822 GL_APICALL void GL_APIENTRY glDrawElementsInstancedNV (GLenum mode, GLsizei count, GLenum type, const GLvoid *indices, GLsizei primcount);
1823 #endif
1824 typedef void (GL_APIENTRYP PFNGLDRAWARRAYSINSTANCEDNVPROC) (GLenum mode, GLint first, GLsizei count, GLsizei primcount);
1825 typedef void (GL_APIENTRYP PFNGLDRAWELEMENTSINSTANCEDNVPROC) (GLenum mode, GLsizei count, GLenum type, const GLvoid *indices, GLsizei primcount);
1826 #endif
1827 
1828 /* GL_NV_fbo_color_attachments */
1829 #ifndef GL_NV_fbo_color_attachments
1830 #define GL_NV_fbo_color_attachments 1
1831 #endif
1832 
1833 /* GL_NV_fence */
1834 #ifndef GL_NV_fence
1835 #define GL_NV_fence 1
1836 #ifdef GL_GLEXT_PROTOTYPES
1837 GL_APICALL void GL_APIENTRY glDeleteFencesNV (GLsizei n, const GLuint *fences);
1838 GL_APICALL void GL_APIENTRY glGenFencesNV (GLsizei n, GLuint *fences);
1839 GL_APICALL GLboolean GL_APIENTRY glIsFenceNV (GLuint fence);
1840 GL_APICALL GLboolean GL_APIENTRY glTestFenceNV (GLuint fence);
1841 GL_APICALL void GL_APIENTRY glGetFenceivNV (GLuint fence, GLenum pname, GLint *params);
1842 GL_APICALL void GL_APIENTRY glFinishFenceNV (GLuint fence);
1843 GL_APICALL void GL_APIENTRY glSetFenceNV (GLuint fence, GLenum condition);
1844 #endif
1845 typedef void (GL_APIENTRYP PFNGLDELETEFENCESNVPROC) (GLsizei n, const GLuint *fences);
1846 typedef void (GL_APIENTRYP PFNGLGENFENCESNVPROC) (GLsizei n, GLuint *fences);
1847 typedef GLboolean (GL_APIENTRYP PFNGLISFENCENVPROC) (GLuint fence);
1848 typedef GLboolean (GL_APIENTRYP PFNGLTESTFENCENVPROC) (GLuint fence);
1849 typedef void (GL_APIENTRYP PFNGLGETFENCEIVNVPROC) (GLuint fence, GLenum pname, GLint *params);
1850 typedef void (GL_APIENTRYP PFNGLFINISHFENCENVPROC) (GLuint fence);
1851 typedef void (GL_APIENTRYP PFNGLSETFENCENVPROC) (GLuint fence, GLenum condition);
1852 #endif
1853 
1854 /* GL_NV_framebuffer_blit */
1855 #ifndef GL_NV_framebuffer_blit
1856 #define GL_NV_framebuffer_blit 1
1857 #ifdef GL_GLEXT_PROTOTYPES
1858 GL_APICALL void GL_APIENTRY glBlitFramebufferNV (GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter);
1859 #endif
1860 typedef void (GL_APIENTRYP PFNGLBLITFRAMEBUFFERNVPROC) (GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter);
1861 #endif
1862 
1863 /* GL_NV_framebuffer_multisample */
1864 #ifndef GL_NV_framebuffer_multisample
1865 #define GL_NV_framebuffer_multisample 1
1866 #ifdef GL_GLEXT_PROTOTYPES
1867 GL_APICALL void GL_APIENTRY glRenderbufferStorageMultisampleNV ( GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height);
1868 #endif
1869 typedef void (GL_APIENTRYP PFNGLRENDERBUFFERSTORAGEMULTISAMPLENVPROC) ( GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height);
1870 #endif
1871 
1872 /* GL_NV_generate_mipmap_sRGB */
1873 #ifndef GL_NV_generate_mipmap_sRGB
1874 #define GL_NV_generate_mipmap_sRGB 1
1875 #endif
1876 
1877 /* GL_NV_instanced_arrays */
1878 #ifndef GL_NV_instanced_arrays
1879 #define GL_NV_instanced_arrays 1
1880 #ifdef GL_GLEXT_PROTOTYPES
1881 GL_APICALL void GL_APIENTRY glVertexAttribDivisorNV (GLuint index, GLuint divisor);
1882 #endif
1883 typedef void (GL_APIENTRYP PFNGLVERTEXATTRIBDIVISORNVPROC) (GLuint index, GLuint divisor);
1884 #endif
1885 
1886 /* GL_NV_read_buffer */
1887 #ifndef GL_NV_read_buffer
1888 #define GL_NV_read_buffer 1
1889 #ifdef GL_GLEXT_PROTOTYPES
1890 GL_APICALL void GL_APIENTRY glReadBufferNV (GLenum mode);
1891 #endif
1892 typedef void (GL_APIENTRYP PFNGLREADBUFFERNVPROC) (GLenum mode);
1893 #endif
1894 
1895 /* GL_NV_read_buffer_front */
1896 #ifndef GL_NV_read_buffer_front
1897 #define GL_NV_read_buffer_front 1
1898 #endif
1899 
1900 /* GL_NV_read_depth */
1901 #ifndef GL_NV_read_depth
1902 #define GL_NV_read_depth 1
1903 #endif
1904 
1905 /* GL_NV_read_depth_stencil */
1906 #ifndef GL_NV_read_depth_stencil
1907 #define GL_NV_read_depth_stencil 1
1908 #endif
1909 
1910 /* GL_NV_read_stencil */
1911 #ifndef GL_NV_read_stencil
1912 #define GL_NV_read_stencil 1
1913 #endif
1914 
1915 /* GL_NV_shadow_samplers_array */
1916 #ifndef GL_NV_shadow_samplers_array
1917 #define GL_NV_shadow_samplers_array 1
1918 #endif
1919 
1920 /* GL_NV_shadow_samplers_cube */
1921 #ifndef GL_NV_shadow_samplers_cube
1922 #define GL_NV_shadow_samplers_cube 1
1923 #endif
1924 
1925 /* GL_NV_sRGB_formats */
1926 #ifndef GL_NV_sRGB_formats
1927 #define GL_NV_sRGB_formats 1
1928 #endif
1929 
1930 /* GL_NV_texture_border_clamp */
1931 #ifndef GL_NV_texture_border_clamp
1932 #define GL_NV_texture_border_clamp 1
1933 #endif
1934 
1935 /* GL_NV_texture_compression_s3tc_update */
1936 #ifndef GL_NV_texture_compression_s3tc_update
1937 #define GL_NV_texture_compression_s3tc_update 1
1938 #endif
1939 
1940 /* GL_NV_texture_npot_2D_mipmap */
1941 #ifndef GL_NV_texture_npot_2D_mipmap
1942 #define GL_NV_texture_npot_2D_mipmap 1
1943 #endif
1944 
1945 /*------------------------------------------------------------------------*
1946  * QCOM extension functions
1947  *------------------------------------------------------------------------*/
1948 
1949 /* GL_QCOM_alpha_test */
1950 #ifndef GL_QCOM_alpha_test
1951 #define GL_QCOM_alpha_test 1
1952 #ifdef GL_GLEXT_PROTOTYPES
1953 GL_APICALL void GL_APIENTRY glAlphaFuncQCOM (GLenum func, GLclampf ref);
1954 #endif
1955 typedef void (GL_APIENTRYP PFNGLALPHAFUNCQCOMPROC) (GLenum func, GLclampf ref);
1956 #endif
1957 
1958 /* GL_QCOM_binning_control */
1959 #ifndef GL_QCOM_binning_control
1960 #define GL_QCOM_binning_control 1
1961 #endif
1962 
1963 /* GL_QCOM_driver_control */
1964 #ifndef GL_QCOM_driver_control
1965 #define GL_QCOM_driver_control 1
1966 #ifdef GL_GLEXT_PROTOTYPES
1967 GL_APICALL void GL_APIENTRY glGetDriverControlsQCOM (GLint *num, GLsizei size, GLuint *driverControls);
1968 GL_APICALL void GL_APIENTRY glGetDriverControlStringQCOM (GLuint driverControl, GLsizei bufSize, GLsizei *length, GLchar *driverControlString);
1969 GL_APICALL void GL_APIENTRY glEnableDriverControlQCOM (GLuint driverControl);
1970 GL_APICALL void GL_APIENTRY glDisableDriverControlQCOM (GLuint driverControl);
1971 #endif
1972 typedef void (GL_APIENTRYP PFNGLGETDRIVERCONTROLSQCOMPROC) (GLint *num, GLsizei size, GLuint *driverControls);
1973 typedef void (GL_APIENTRYP PFNGLGETDRIVERCONTROLSTRINGQCOMPROC) (GLuint driverControl, GLsizei bufSize, GLsizei *length, GLchar *driverControlString);
1974 typedef void (GL_APIENTRYP PFNGLENABLEDRIVERCONTROLQCOMPROC) (GLuint driverControl);
1975 typedef void (GL_APIENTRYP PFNGLDISABLEDRIVERCONTROLQCOMPROC) (GLuint driverControl);
1976 #endif
1977 
1978 /* GL_QCOM_extended_get */
1979 #ifndef GL_QCOM_extended_get
1980 #define GL_QCOM_extended_get 1
1981 #ifdef GL_GLEXT_PROTOTYPES
1982 GL_APICALL void GL_APIENTRY glExtGetTexturesQCOM (GLuint *textures, GLint maxTextures, GLint *numTextures);
1983 GL_APICALL void GL_APIENTRY glExtGetBuffersQCOM (GLuint *buffers, GLint maxBuffers, GLint *numBuffers);
1986 GL_APICALL void GL_APIENTRY glExtGetTexLevelParameterivQCOM (GLuint texture, GLenum face, GLint level, GLenum pname, GLint *params);
1987 GL_APICALL void GL_APIENTRY glExtTexObjectStateOverrideiQCOM (GLenum target, GLenum pname, GLint param);
1988 GL_APICALL 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);
1989 GL_APICALL void GL_APIENTRY glExtGetBufferPointervQCOM (GLenum target, GLvoid **params);
1990 #endif
1991 typedef void (GL_APIENTRYP PFNGLEXTGETTEXTURESQCOMPROC) (GLuint *textures, GLint maxTextures, GLint *numTextures);
1992 typedef void (GL_APIENTRYP PFNGLEXTGETBUFFERSQCOMPROC) (GLuint *buffers, GLint maxBuffers, GLint *numBuffers);
1993 typedef void (GL_APIENTRYP PFNGLEXTGETRENDERBUFFERSQCOMPROC) (GLuint *renderbuffers, GLint maxRenderbuffers, GLint *numRenderbuffers);
1994 typedef void (GL_APIENTRYP PFNGLEXTGETFRAMEBUFFERSQCOMPROC) (GLuint *framebuffers, GLint maxFramebuffers, GLint *numFramebuffers);
1995 typedef void (GL_APIENTRYP PFNGLEXTGETTEXLEVELPARAMETERIVQCOMPROC) (GLuint texture, GLenum face, GLint level, GLenum pname, GLint *params);
1996 typedef void (GL_APIENTRYP PFNGLEXTTEXOBJECTSTATEOVERRIDEIQCOMPROC) (GLenum target, GLenum pname, GLint param);
1998 typedef void (GL_APIENTRYP PFNGLEXTGETBUFFERPOINTERVQCOMPROC) (GLenum target, GLvoid **params);
1999 #endif
2000 
2001 /* GL_QCOM_extended_get2 */
2002 #ifndef GL_QCOM_extended_get2
2003 #define GL_QCOM_extended_get2 1
2004 #ifdef GL_GLEXT_PROTOTYPES
2005 GL_APICALL void GL_APIENTRY glExtGetShadersQCOM (GLuint *shaders, GLint maxShaders, GLint *numShaders);
2006 GL_APICALL void GL_APIENTRY glExtGetProgramsQCOM (GLuint *programs, GLint maxPrograms, GLint *numPrograms);
2007 GL_APICALL GLboolean GL_APIENTRY glExtIsProgramBinaryQCOM (GLuint program);
2008 GL_APICALL void GL_APIENTRY glExtGetProgramBinarySourceQCOM (GLuint program, GLenum shadertype, GLchar *source, GLint *length);
2009 #endif
2010 typedef void (GL_APIENTRYP PFNGLEXTGETSHADERSQCOMPROC) (GLuint *shaders, GLint maxShaders, GLint *numShaders);
2011 typedef void (GL_APIENTRYP PFNGLEXTGETPROGRAMSQCOMPROC) (GLuint *programs, GLint maxPrograms, GLint *numPrograms);
2012 typedef GLboolean (GL_APIENTRYP PFNGLEXTISPROGRAMBINARYQCOMPROC) (GLuint program);
2013 typedef void (GL_APIENTRYP PFNGLEXTGETPROGRAMBINARYSOURCEQCOMPROC) (GLuint program, GLenum shadertype, GLchar *source, GLint *length);
2014 #endif
2015 
2016 /* GL_QCOM_perfmon_global_mode */
2017 #ifndef GL_QCOM_perfmon_global_mode
2018 #define GL_QCOM_perfmon_global_mode 1
2019 #endif
2020 
2021 /* GL_QCOM_writeonly_rendering */
2022 #ifndef GL_QCOM_writeonly_rendering
2023 #define GL_QCOM_writeonly_rendering 1
2024 #endif
2025 
2026 /* GL_QCOM_tiled_rendering */
2027 #ifndef GL_QCOM_tiled_rendering
2028 #define GL_QCOM_tiled_rendering 1
2029 #ifdef GL_GLEXT_PROTOTYPES
2030 GL_APICALL void GL_APIENTRY glStartTilingQCOM (GLuint x, GLuint y, GLuint width, GLuint height, GLbitfield preserveMask);
2031 GL_APICALL void GL_APIENTRY glEndTilingQCOM (GLbitfield preserveMask);
2032 #endif
2033 typedef void (GL_APIENTRYP PFNGLSTARTTILINGQCOMPROC) (GLuint x, GLuint y, GLuint width, GLuint height, GLbitfield preserveMask);
2034 typedef void (GL_APIENTRYP PFNGLENDTILINGQCOMPROC) (GLbitfield preserveMask);
2035 #endif
2036 
2037 /*------------------------------------------------------------------------*
2038  * VIV extension tokens
2039  *------------------------------------------------------------------------*/
2040 
2041 /* GL_VIV_shader_binary */
2042 #ifndef GL_VIV_shader_binary
2043 #define GL_VIV_shader_binary 1
2044 #endif
2045 
2046 #ifdef __cplusplus
2047 }
2048 #endif
2049 
2050 #endif /* __gl2ext_h_ */
GLuint * ids
GLuint GLuint GLsizei GLenum const GLvoid * indices
Definition: SDL_opengl.h:1571
GLboolean GLuint group
GLint GLenum GLsizei GLsizei GLsizei GLint GLenum GLenum const GLvoid * pixels
GLsizei GLenum GLenum GLuint GLenum GLsizei * lengths
GLsizei GLuint * groups
void *GL_APIENTRYP PFNGLMAPBUFFERRANGEEXTPROC(GLenum target, GLintptr offset, GLsizeiptr length, GLbitfield access)
EGLSyncKHR sync
Definition: eglext.h:459
GLint maxFramebuffers
GLsizei GLenum GLenum GLuint GLenum GLsizei GLchar * messageLog
GLenum GLsizei GLuint GLint * bytesWritten
GLint GLint srcX1
GLdouble GLdouble z
GLuint num
GLint GLint GLint yoffset
GLint GLsizei GLsizei primcount
const GLint * first
GLsizei GLenum GLenum GLuint GLenum * severities
GLeglImageOES image
Definition: SDL_opengl.h:2148
GLsizei GLenum * sources
GLeglImageOES image
const GLuint * framebuffers
GLint GLint GLint GLint GLint GLint GLint GLbitfield GLenum filter
GLenum GLuint GLenum severity
const GLuint * programs
GLint GLint GLint GLint GLint x
Definition: SDL_opengl.h:1574
void(GL_APIENTRY * GLDEBUGPROCKHR)(GLenum source, GLenum type, GLuint id, GLenum severity, GLsizei length, const GLchar *message, const void *userParam)
Definition: gl2ext.h:89
GLint level
Definition: SDL_opengl.h:1572
GLint GLint GLint GLint GLint GLint dstX1
GLintptr offset
GLint srcY0
GLuint GLuint GLsizei count
Definition: SDL_opengl.h:1571
GLint GLsizei GLboolean transpose
khronos_uint64_t GLuint64
GLint GLint * numTextures
GLbitfield GLuint64 timeout
set set set set set set set set set set set set set set set set set set set set *set set set macro pixldst op &r &cond WK op &r &cond WK op &r &cond WK else op &m &cond &ia op &r &cond WK else op &m &cond &ia elseif elseif else error unsupported base if elseif elseif else error unsupported unaligned pixldst unaligned endm macro pixst base base else pixldst base endif endm macro PF ptr
GLint GLint GLint srcY1
GLclampf ref
int GLint
Definition: SDL_opengl.h:182
GLenum type
GLint GLenum internalformat
GLbitfield flags
GLuint divisor
GLsizei groupsSize
GLenum GLenum GLuint texture
GLenum GLint ref
GLint GLenum GLsizei GLsizei GLsizei depth
const GLuint * buffers
GLint GLenum GLsizei GLsizei GLsizei GLint GLsizei const GLvoid * data
Definition: SDL_opengl.h:1974
GLsizei GLenum GLenum GLuint GLenum GLsizei GLchar * messageLog
GLenum GLenum textarget
GLint GLint GLint GLint GLint GLint dstX1
GLintptr offset
GLint GLenum GLsizei GLsizei GLsizei GLint GLenum format
const GLchar * marker
GLsizei GLsizei GLuint * shaders
GLsizei GLenum GLenum * types
GLsizei const GLchar ** strings
GLint GLint GLsizei counterSize
float GLfloat
Definition: SDL_opengl.h:187
GLenum shadertype
GLenum GLenum GLsizei const GLuint * ids
GLenum src
GLuint GLsizei bufSize
char GLchar
GLsizei GLsizei GLenum * binaryFormat
GLsizei bufsize
GLint GLint * numRenderbuffers
GLsizei GLsizei GLchar * infoLog
GLsizei groupsSize
GLuint * fences
const GLuint * pipelines
GLint GLint GLsizei GLuint * counters
GLuint GLint GLboolean GLint GLenum access
GLenum GLuint GLsizei bufsize
GLuint const GLchar * name
GLint GLint GLsizei width
Definition: SDL_opengl.h:1572
unsigned int GLbitfield
Definition: SDL_opengl.h:178
GLenum pname
GLenum GLuint GLenum GLsizei length
void *GL_APIENTRYP PFNGLMAPBUFFEROESPROC(GLenum target, GLenum access)
GLint GLint GLint GLint GLint GLint y
GLsizei GLsizei GLenum * binaryFormat
GLsizei GLuint * groups
const GLenum * bufs
GLint GLint GLsizei GLsizei GLsizei GLint GLenum format
Definition: SDL_opengl.h:1572
GLint GLint GLint GLint dstX0
GLenum GLsizei GLsizei GLint * values
GLint srcY0
GLenum GLvoid ** params
GLenum GLenum GLuint texture
GLint maxShaders
GLenum GLsizei dataSize
GLint GLint * numBuffers
GLenum GLuint GLint GLenum face
GLsizei numAttachments
GLsizei GLsizei GLchar * infoLog
ptrdiff_t GLintptr
GLuint GLsizei const GLchar * label
GLint GLint GLint GLint GLint w
GLint GLint GLint GLint GLint dstY0
typedef void(GL_APIENTRYP GLDEBUGPROCKHR)(GLenum source
GLint GLint * numPrograms
GLsizei GLuint * driverControls
GLsizei GLsizei GLchar * source
GLenum GLenum GLsizei const GLuint GLboolean enabled
GLsizei size
#define GL_APIENTRYP
GLint GLenum GLsizei GLsizei GLsizei GLint GLsizei imageSize
GLint GLenum GLsizei GLsizei GLsizei GLint GLsizei const GLvoid * data
GLsizei GLenum GLenum GLuint GLenum * severities
GLint location
GLuint GLint GLsizei sourceLevelCount
GLenum attachment
GLint GLint GLint GLint GLsizei GLsizei GLsizei GLenum GLenum GLvoid * texels
__int64 khronos_int64_t
GLenum GLsizei GLsizei GLint * values
GLenum GLint GLuint mask
const GLuint * pipelines
struct __GLsync * GLsync
GLint maxBuffers
GLint * numCounters
GLint GLint xoffset
Definition: SDL_opengl.h:1573
GLint GLint internalformat
Definition: SDL_opengl.h:1572
GLenum mode
float GLclampf
Definition: SDL_opengl.h:188
GLubyte GLubyte GLubyte GLubyte w
GLsizei const GLfloat * value
#define GL_APIENTRY
GLint GLint GLint srcY1
#define GL_APICALL
GLuint GLsizei GLsizei GLchar * counterString
static Uint32 callback(Uint32 interval, void *param)
Definition: testtimer.c:34
GLboolean GLuint GLint GLuint * countersList
GLint GLint GLint GLint GLint GLint y
Definition: SDL_opengl.h:1574
GLsizei numAttachments
GLint GLint GLint GLint GLint GLint GLint dstY1
GLint GLint GLsizei GLsizei GLsizei GLint GLenum GLenum const GLvoid * pixels
Definition: SDL_opengl.h:1572
GLenum GLuint id
GLint * numCounters
GLint first
GLsizei levels
const GLuint GLenum const void * binary
GLenum GLuint GLenum GLsizei const GLchar * buf
GLint GLenum GLsizei GLsizei GLsizei GLint GLsizei imageSize
Definition: SDL_opengl.h:1974
const GLuint * renderbuffers
GLsizeiptr size
GLuint * monitors
GLuint index
GLenum GLenum GLsizei const GLuint GLboolean enabled
GLint GLint GLint GLint zoffset
Definition: SDL_opengl.h:1573
GLint GLint GLint GLint GLint GLint GLint GLbitfield mask
const GLuint * arrays
GLint GLint * maxActiveCounters
GLenum target
unsigned int GLenum
Definition: SDL_opengl.h:176
typedef GLenum(GL_APIENTRYP PFNGLCLIENTWAITSYNCAPPLEPROC)(GLsync sync
GLint GLint GLint GLint GLint x
khronos_int64_t GLint64
GLuint sourceTexture
GLenum GLsizei GLuint GLint * bytesWritten
void * GLeglImageOES
const GLenum * bufs
GLboolean enable
GLint GLint GLsizei GLsizei GLsizei depth
Definition: SDL_opengl.h:1572
typedef GLuint(GL_APIENTRYP PFNGLGETDEBUGMESSAGELOGKHRPROC)(GLuint count
void GLvoid
Definition: SDL_opengl.h:179
GLsizei GLboolean transpose
GLint maxTextures
GLuint GLsizei GLsizei GLchar * counterString
GLbitfield stages
unsigned int GLuint
Definition: SDL_opengl.h:185
GLsizei GLenum GLenum GLuint GLenum GLsizei * lengths
GLbitfield flags
GLint GLint GLint GLint GLint dstY0
GLint GLint GLsizei GLsizei height
Definition: SDL_opengl.h:1572
GLenum func
GLsizei levels
const GLuint * arrays
GLenum GLint value
GLint index
GLuint GLint sourceBaseLevel
GLint GLint GLsizei GLuint * counters
unsigned __int64 khronos_uint64_t
GLint GLint GLint yoffset
Definition: SDL_opengl.h:1573
GLenum target
GLuint * monitors
GLbitfield GLuint64 timeout
unsigned char GLboolean
Definition: SDL_opengl.h:177
ptrdiff_t GLsizeiptr
GLsizei GLsizei GLchar * driverControlString
GLenum condition
GLint GLenum GLsizei GLsizei height
GLdouble n
GLint GLenum GLsizei GLsizei GLsizei GLint border
GLsizei GLenum * sources
GLenum attachment
const GLuint * fences
GLint GLint srcX1
GLsizei GLsizei GLchar * groupString
GLenum GLuint GLenum GLsizei const GLchar * message
GLboolean enable
GLuint counter
const GLfloat * params
GLint GLint GLint GLint dstX0
GLint GLint GLsizei GLsizei GLsizei GLint border
Definition: SDL_opengl.h:1572
GLuint GLsizei const GLchar * label
GLenum GLint param
GLsizei GLenum const void * indices
GLenum array
GLbitfield stages
GLuint counter
GLint GLint xoffset
GLenum shadertype
GLint GLint GLint GLint zoffset
GLbitfield GLuint program
GLsizei const GLenum * attachments
int GLsizei
Definition: SDL_opengl.h:186
GLenum GLuint GLenum GLsizei const GLchar * buf
GLsizei const GLenum * attachments
GLsizei bufSize
GLint maxPrograms
const GLenum * location
typedef GLboolean(GL_APIENTRYP PFNGLUNMAPBUFFEROESPROC)(GLenum target)
GLint GLsizei GLsizei primcount
GLsizei samples
GLbitfield GLuint program
GLenum pname
GLenum face
GLfloat param
GLsizei GLsizei GLenum GLvoid * binary
const GLchar * marker
GLenum GLenum GLsizei count
GLint maxRenderbuffers
const void * userParam
GLuint GLuint GLuint GLbitfield preserveMask
GLint GLenum GLsizei width
GLenum GLenum textarget
GLsizei const GLuint * textures
GLenum GLsizei dataSize
GLint GLint * numShaders
GLint level
GLsizei const GLchar *const * strings
GLsizei GLsizei GLchar * groupString
GLenum GLuint GLenum GLsizei const GLchar const void * userParam
GLuint shader
GLint GLint GLint GLint GLint GLint GLint GLbitfield GLenum filter
GLboolean GLuint group
GLint GLint GLsizei counterSize
GLuint object
GLint GLint * maxActiveCounters
GLenum condition
GLuint name
GLsizei GLenum GLenum * types
GLint GLint GLint GLint z
GLuint divisor
GLint GLint GLint GLint GLint GLint GLint dstY1
GLsizei samples
GLint GLint * numFramebuffers