4 /* $Revision: 19436 $ on $Date:: 2012-10-10 10:37:04 -0700 #$ */
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/ .
16 # define GL_APIENTRYP GL_APIENTRY*
19 /*------------------------------------------------------------------------*
20 * OES extension tokens
21 *------------------------------------------------------------------------*/
23 /* GL_OES_compressed_ETC1_RGB8_texture */
24 #ifndef GL_OES_compressed_ETC1_RGB8_texture
25 #define GL_ETC1_RGB8_OES 0x8D64
28 /* GL_OES_compressed_paletted_texture */
29 #ifndef GL_OES_compressed_paletted_texture
30 #define GL_PALETTE4_RGB8_OES 0x8B90
31 #define GL_PALETTE4_RGBA8_OES 0x8B91
32 #define GL_PALETTE4_R5_G6_B5_OES 0x8B92
33 #define GL_PALETTE4_RGBA4_OES 0x8B93
34 #define GL_PALETTE4_RGB5_A1_OES 0x8B94
35 #define GL_PALETTE8_RGB8_OES 0x8B95
36 #define GL_PALETTE8_RGBA8_OES 0x8B96
37 #define GL_PALETTE8_R5_G6_B5_OES 0x8B97
38 #define GL_PALETTE8_RGBA4_OES 0x8B98
39 #define GL_PALETTE8_RGB5_A1_OES 0x8B99
43 #ifndef GL_OES_depth24
44 #define GL_DEPTH_COMPONENT24_OES 0x81A6
48 #ifndef GL_OES_depth32
49 #define GL_DEPTH_COMPONENT32_OES 0x81A7
52 /* GL_OES_depth_texture */
53 /* No new tokens introduced by this extension. */
55 /* GL_OES_EGL_image */
56 #ifndef GL_OES_EGL_image
57 typedef void* GLeglImageOES
;
60 /* GL_OES_EGL_image_external */
61 #ifndef GL_OES_EGL_image_external
62 /* GLeglImageOES defined in GL_OES_EGL_image already. */
63 #define GL_TEXTURE_EXTERNAL_OES 0x8D65
64 #define GL_SAMPLER_EXTERNAL_OES 0x8D66
65 #define GL_TEXTURE_BINDING_EXTERNAL_OES 0x8D67
66 #define GL_REQUIRED_TEXTURE_IMAGE_UNITS_OES 0x8D68
69 /* GL_OES_element_index_uint */
70 #ifndef GL_OES_element_index_uint
71 #define GL_UNSIGNED_INT 0x1405
74 /* GL_OES_get_program_binary */
75 #ifndef GL_OES_get_program_binary
76 #define GL_PROGRAM_BINARY_LENGTH_OES 0x8741
77 #define GL_NUM_PROGRAM_BINARY_FORMATS_OES 0x87FE
78 #define GL_PROGRAM_BINARY_FORMATS_OES 0x87FF
81 /* GL_OES_mapbuffer */
82 #ifndef GL_OES_mapbuffer
83 #define GL_WRITE_ONLY_OES 0x88B9
84 #define GL_BUFFER_ACCESS_OES 0x88BB
85 #define GL_BUFFER_MAPPED_OES 0x88BC
86 #define GL_BUFFER_MAP_POINTER_OES 0x88BD
89 /* GL_OES_packed_depth_stencil */
90 #ifndef GL_OES_packed_depth_stencil
91 #define GL_DEPTH_STENCIL_OES 0x84F9
92 #define GL_UNSIGNED_INT_24_8_OES 0x84FA
93 #define GL_DEPTH24_STENCIL8_OES 0x88F0
96 /* GL_OES_required_internalformat */
97 #ifndef GL_OES_required_internalformat
98 #define GL_ALPHA8_OES 0x803C
99 #define GL_DEPTH_COMPONENT16_OES 0x81A5
100 /* reuse GL_DEPTH_COMPONENT24_OES */
101 /* reuse GL_DEPTH24_STENCIL8_OES */
102 /* reuse GL_DEPTH_COMPONENT32_OES */
103 #define GL_LUMINANCE4_ALPHA4_OES 0x8043
104 #define GL_LUMINANCE8_ALPHA8_OES 0x8045
105 #define GL_LUMINANCE8_OES 0x8040
106 #define GL_RGBA4_OES 0x8056
107 #define GL_RGB5_A1_OES 0x8057
108 #define GL_RGB565_OES 0x8D62
109 /* reuse GL_RGB8_OES */
110 /* reuse GL_RGBA8_OES */
111 /* reuse GL_RGB10_EXT */
112 /* reuse GL_RGB10_A2_EXT */
115 /* GL_OES_rgb8_rgba8 */
116 #ifndef GL_OES_rgb8_rgba8
117 #define GL_RGB8_OES 0x8051
118 #define GL_RGBA8_OES 0x8058
121 /* GL_OES_standard_derivatives */
122 #ifndef GL_OES_standard_derivatives
123 #define GL_FRAGMENT_SHADER_DERIVATIVE_HINT_OES 0x8B8B
126 /* GL_OES_stencil1 */
127 #ifndef GL_OES_stencil1
128 #define GL_STENCIL_INDEX1_OES 0x8D46
131 /* GL_OES_stencil4 */
132 #ifndef GL_OES_stencil4
133 #define GL_STENCIL_INDEX4_OES 0x8D47
136 #ifndef GL_OES_surfaceless_context
137 #define GL_FRAMEBUFFER_UNDEFINED_OES 0x8219
140 /* GL_OES_texture_3D */
141 #ifndef GL_OES_texture_3D
142 #define GL_TEXTURE_WRAP_R_OES 0x8072
143 #define GL_TEXTURE_3D_OES 0x806F
144 #define GL_TEXTURE_BINDING_3D_OES 0x806A
145 #define GL_MAX_3D_TEXTURE_SIZE_OES 0x8073
146 #define GL_SAMPLER_3D_OES 0x8B5F
147 #define GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_3D_ZOFFSET_OES 0x8CD4
150 /* GL_OES_texture_float */
151 /* No new tokens introduced by this extension. */
153 /* GL_OES_texture_float_linear */
154 /* No new tokens introduced by this extension. */
156 /* GL_OES_texture_half_float */
157 #ifndef GL_OES_texture_half_float
158 #define GL_HALF_FLOAT_OES 0x8D61
161 /* GL_OES_texture_half_float_linear */
162 /* No new tokens introduced by this extension. */
164 /* GL_OES_texture_npot */
165 /* No new tokens introduced by this extension. */
167 /* GL_OES_vertex_array_object */
168 #ifndef GL_OES_vertex_array_object
169 #define GL_VERTEX_ARRAY_BINDING_OES 0x85B5
172 /* GL_OES_vertex_half_float */
173 /* GL_HALF_FLOAT_OES defined in GL_OES_texture_half_float already. */
175 /* GL_OES_vertex_type_10_10_10_2 */
176 #ifndef GL_OES_vertex_type_10_10_10_2
177 #define GL_UNSIGNED_INT_10_10_10_2_OES 0x8DF6
178 #define GL_INT_10_10_10_2_OES 0x8DF7
181 /*------------------------------------------------------------------------*
182 * KHR extension tokens
183 *------------------------------------------------------------------------*/
186 typedef void (GL_APIENTRYP GLDEBUGPROC
)(GLenum source
,GLenum type
,GLuint id
,GLenum severity
,GLsizei length
,const GLchar
*message
,GLvoid
*userParam
);
187 #define GL_DEBUG_OUTPUT_SYNCHRONOUS 0x8242
188 #define GL_DEBUG_NEXT_LOGGED_MESSAGE_LENGTH 0x8243
189 #define GL_DEBUG_CALLBACK_FUNCTION 0x8244
190 #define GL_DEBUG_CALLBACK_USER_PARAM 0x8245
191 #define GL_DEBUG_SOURCE_API 0x8246
192 #define GL_DEBUG_SOURCE_WINDOW_SYSTEM 0x8247
193 #define GL_DEBUG_SOURCE_SHADER_COMPILER 0x8248
194 #define GL_DEBUG_SOURCE_THIRD_PARTY 0x8249
195 #define GL_DEBUG_SOURCE_APPLICATION 0x824A
196 #define GL_DEBUG_SOURCE_OTHER 0x824B
197 #define GL_DEBUG_TYPE_ERROR 0x824C
198 #define GL_DEBUG_TYPE_DEPRECATED_BEHAVIOR 0x824D
199 #define GL_DEBUG_TYPE_UNDEFINED_BEHAVIOR 0x824E
200 #define GL_DEBUG_TYPE_PORTABILITY 0x824F
201 #define GL_DEBUG_TYPE_PERFORMANCE 0x8250
202 #define GL_DEBUG_TYPE_OTHER 0x8251
203 #define GL_DEBUG_TYPE_MARKER 0x8268
204 #define GL_DEBUG_TYPE_PUSH_GROUP 0x8269
205 #define GL_DEBUG_TYPE_POP_GROUP 0x826A
206 #define GL_DEBUG_SEVERITY_NOTIFICATION 0x826B
207 #define GL_MAX_DEBUG_GROUP_STACK_DEPTH 0x826C
208 #define GL_DEBUG_GROUP_STACK_DEPTH 0x826D
209 #define GL_BUFFER 0x82E0
210 #define GL_SHADER 0x82E1
211 #define GL_PROGRAM 0x82E2
212 #define GL_QUERY 0x82E3
213 /* PROGRAM_PIPELINE only in GL */
214 #define GL_SAMPLER 0x82E6
215 /* DISPLAY_LIST only in GL */
216 #define GL_MAX_LABEL_LENGTH 0x82E8
217 #define GL_MAX_DEBUG_MESSAGE_LENGTH 0x9143
218 #define GL_MAX_DEBUG_LOGGED_MESSAGES 0x9144
219 #define GL_DEBUG_LOGGED_MESSAGES 0x9145
220 #define GL_DEBUG_SEVERITY_HIGH 0x9146
221 #define GL_DEBUG_SEVERITY_MEDIUM 0x9147
222 #define GL_DEBUG_SEVERITY_LOW 0x9148
223 #define GL_DEBUG_OUTPUT 0x92E0
224 #define GL_CONTEXT_FLAG_DEBUG_BIT 0x00000002
225 #define GL_STACK_OVERFLOW 0x0503
226 #define GL_STACK_UNDERFLOW 0x0504
229 #ifndef GL_KHR_texture_compression_astc_ldr
230 #define GL_COMPRESSED_RGBA_ASTC_4x4_KHR 0x93B0
231 #define GL_COMPRESSED_RGBA_ASTC_5x4_KHR 0x93B1
232 #define GL_COMPRESSED_RGBA_ASTC_5x5_KHR 0x93B2
233 #define GL_COMPRESSED_RGBA_ASTC_6x5_KHR 0x93B3
234 #define GL_COMPRESSED_RGBA_ASTC_6x6_KHR 0x93B4
235 #define GL_COMPRESSED_RGBA_ASTC_8x5_KHR 0x93B5
236 #define GL_COMPRESSED_RGBA_ASTC_8x6_KHR 0x93B6
237 #define GL_COMPRESSED_RGBA_ASTC_8x8_KHR 0x93B7
238 #define GL_COMPRESSED_RGBA_ASTC_10x5_KHR 0x93B8
239 #define GL_COMPRESSED_RGBA_ASTC_10x6_KHR 0x93B9
240 #define GL_COMPRESSED_RGBA_ASTC_10x8_KHR 0x93BA
241 #define GL_COMPRESSED_RGBA_ASTC_10x10_KHR 0x93BB
242 #define GL_COMPRESSED_RGBA_ASTC_12x10_KHR 0x93BC
243 #define GL_COMPRESSED_RGBA_ASTC_12x12_KHR 0x93BD
244 #define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_4x4_KHR 0x93D0
245 #define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_5x4_KHR 0x93D1
246 #define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_5x5_KHR 0x93D2
247 #define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_6x5_KHR 0x93D3
248 #define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_6x6_KHR 0x93D4
249 #define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_8x5_KHR 0x93D5
250 #define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_8x6_KHR 0x93D6
251 #define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_8x8_KHR 0x93D7
252 #define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_10x5_KHR 0x93D8
253 #define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_10x6_KHR 0x93D9
254 #define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_10x8_KHR 0x93DA
255 #define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_10x10_KHR 0x93DB
256 #define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_12x10_KHR 0x93DC
257 #define GL_COMPRESSED_SRGB8_ALPHA8_ASTC_12x12_KHR 0x93DD
260 /*------------------------------------------------------------------------*
261 * AMD extension tokens
262 *------------------------------------------------------------------------*/
264 /* GL_AMD_compressed_3DC_texture */
265 #ifndef GL_AMD_compressed_3DC_texture
266 #define GL_3DC_X_AMD 0x87F9
267 #define GL_3DC_XY_AMD 0x87FA
270 /* GL_AMD_compressed_ATC_texture */
271 #ifndef GL_AMD_compressed_ATC_texture
272 #define GL_ATC_RGB_AMD 0x8C92
273 #define GL_ATC_RGBA_EXPLICIT_ALPHA_AMD 0x8C93
274 #define GL_ATC_RGBA_INTERPOLATED_ALPHA_AMD 0x87EE
277 /* GL_AMD_performance_monitor */
278 #ifndef GL_AMD_performance_monitor
279 #define GL_COUNTER_TYPE_AMD 0x8BC0
280 #define GL_COUNTER_RANGE_AMD 0x8BC1
281 #define GL_UNSIGNED_INT64_AMD 0x8BC2
282 #define GL_PERCENTAGE_AMD 0x8BC3
283 #define GL_PERFMON_RESULT_AVAILABLE_AMD 0x8BC4
284 #define GL_PERFMON_RESULT_SIZE_AMD 0x8BC5
285 #define GL_PERFMON_RESULT_AMD 0x8BC6
288 /* GL_AMD_program_binary_Z400 */
289 #ifndef GL_AMD_program_binary_Z400
290 #define GL_Z400_BINARY_AMD 0x8740
293 /*------------------------------------------------------------------------*
294 * ANGLE extension tokens
295 *------------------------------------------------------------------------*/
297 /* GL_ANGLE_framebuffer_blit */
298 #ifndef GL_ANGLE_framebuffer_blit
299 #define GL_READ_FRAMEBUFFER_ANGLE 0x8CA8
300 #define GL_DRAW_FRAMEBUFFER_ANGLE 0x8CA9
301 #define GL_DRAW_FRAMEBUFFER_BINDING_ANGLE 0x8CA6
302 #define GL_READ_FRAMEBUFFER_BINDING_ANGLE 0x8CAA
305 /* GL_ANGLE_framebuffer_multisample */
306 #ifndef GL_ANGLE_framebuffer_multisample
307 #define GL_RENDERBUFFER_SAMPLES_ANGLE 0x8CAB
308 #define GL_FRAMEBUFFER_INCOMPLETE_MULTISAMPLE_ANGLE 0x8D56
309 #define GL_MAX_SAMPLES_ANGLE 0x8D57
312 /* GL_ANGLE_instanced_arrays */
313 #ifndef GL_ANGLE_instanced_arrays
314 #define GL_VERTEX_ATTRIB_ARRAY_DIVISOR_ANGLE 0x88FE
317 /* GL_ANGLE_pack_reverse_row_order */
318 #ifndef GL_ANGLE_pack_reverse_row_order
319 #define GL_PACK_REVERSE_ROW_ORDER_ANGLE 0x93A4
322 /* GL_ANGLE_texture_compression_dxt3 */
323 #ifndef GL_ANGLE_texture_compression_dxt3
324 #define GL_COMPRESSED_RGBA_S3TC_DXT3_ANGLE 0x83F2
327 /* GL_ANGLE_texture_compression_dxt5 */
328 #ifndef GL_ANGLE_texture_compression_dxt5
329 #define GL_COMPRESSED_RGBA_S3TC_DXT5_ANGLE 0x83F3
332 /* GL_ANGLE_texture_usage */
333 #ifndef GL_ANGLE_texture_usage
334 #define GL_TEXTURE_USAGE_ANGLE 0x93A2
335 #define GL_FRAMEBUFFER_ATTACHMENT_ANGLE 0x93A3
338 /* GL_ANGLE_translated_shader_source */
339 #ifndef GL_ANGLE_translated_shader_source
340 #define GL_TRANSLATED_SHADER_SOURCE_LENGTH_ANGLE 0x93A0
343 /*------------------------------------------------------------------------*
344 * APPLE extension tokens
345 *------------------------------------------------------------------------*/
347 /* GL_APPLE_copy_texture_levels */
348 /* No new tokens introduced by this extension. */
350 /* GL_APPLE_framebuffer_multisample */
351 #ifndef GL_APPLE_framebuffer_multisample
352 #define GL_RENDERBUFFER_SAMPLES_APPLE 0x8CAB
353 #define GL_FRAMEBUFFER_INCOMPLETE_MULTISAMPLE_APPLE 0x8D56
354 #define GL_MAX_SAMPLES_APPLE 0x8D57
355 #define GL_READ_FRAMEBUFFER_APPLE 0x8CA8
356 #define GL_DRAW_FRAMEBUFFER_APPLE 0x8CA9
357 #define GL_DRAW_FRAMEBUFFER_BINDING_APPLE 0x8CA6
358 #define GL_READ_FRAMEBUFFER_BINDING_APPLE 0x8CAA
361 /* GL_APPLE_rgb_422 */
362 #ifndef GL_APPLE_rgb_422
363 #define GL_RGB_422_APPLE 0x8A1F
364 #define GL_UNSIGNED_SHORT_8_8_APPLE 0x85BA
365 #define GL_UNSIGNED_SHORT_8_8_REV_APPLE 0x85BB
369 #ifndef GL_APPLE_sync
372 /* These types are defined with reference to <inttypes.h>
373 * in the Apple extension spec, but here we use the Khronos
374 * portable types in khrplatform.h, and assume those types
375 * are always defined.
376 * If any other extensions using these types are defined,
377 * the typedefs must move out of this block and be shared.
379 typedef khronos_int64_t GLint64
;
380 typedef khronos_uint64_t GLuint64
;
381 typedef struct __GLsync
*GLsync
;
384 #define GL_SYNC_OBJECT_APPLE 0x8A53
385 #define GL_MAX_SERVER_WAIT_TIMEOUT_APPLE 0x9111
386 #define GL_OBJECT_TYPE_APPLE 0x9112
387 #define GL_SYNC_CONDITION_APPLE 0x9113
388 #define GL_SYNC_STATUS_APPLE 0x9114
389 #define GL_SYNC_FLAGS_APPLE 0x9115
390 #define GL_SYNC_FENCE_APPLE 0x9116
391 #define GL_SYNC_GPU_COMMANDS_COMPLETE_APPLE 0x9117
392 #define GL_UNSIGNALED_APPLE 0x9118
393 #define GL_SIGNALED_APPLE 0x9119
394 #define GL_ALREADY_SIGNALED_APPLE 0x911A
395 #define GL_TIMEOUT_EXPIRED_APPLE 0x911B
396 #define GL_CONDITION_SATISFIED_APPLE 0x911C
397 #define GL_WAIT_FAILED_APPLE 0x911D
398 #define GL_SYNC_FLUSH_COMMANDS_BIT_APPLE 0x00000001
399 #define GL_TIMEOUT_IGNORED_APPLE 0xFFFFFFFFFFFFFFFFull
402 /* GL_APPLE_texture_format_BGRA8888 */
403 #ifndef GL_APPLE_texture_format_BGRA8888
404 #define GL_BGRA_EXT 0x80E1
407 /* GL_APPLE_texture_max_level */
408 #ifndef GL_APPLE_texture_max_level
409 #define GL_TEXTURE_MAX_LEVEL_APPLE 0x813D
412 /*------------------------------------------------------------------------*
413 * ARM extension tokens
414 *------------------------------------------------------------------------*/
416 /* GL_ARM_mali_program_binary */
417 #ifndef GL_ARM_mali_program_binary
418 #define GL_MALI_PROGRAM_BINARY_ARM 0x8F61
421 /* GL_ARM_mali_shader_binary */
422 #ifndef GL_ARM_mali_shader_binary
423 #define GL_MALI_SHADER_BINARY_ARM 0x8F60
427 /* No new tokens introduced by this extension. */
429 /*------------------------------------------------------------------------*
430 * EXT extension tokens
431 *------------------------------------------------------------------------*/
433 /* GL_EXT_blend_minmax */
434 #ifndef GL_EXT_blend_minmax
435 #define GL_MIN_EXT 0x8007
436 #define GL_MAX_EXT 0x8008
439 /* GL_EXT_color_buffer_half_float */
440 #ifndef GL_EXT_color_buffer_half_float
441 #define GL_RGBA16F_EXT 0x881A
442 #define GL_RGB16F_EXT 0x881B
443 #define GL_RG16F_EXT 0x822F
444 #define GL_R16F_EXT 0x822D
445 #define GL_FRAMEBUFFER_ATTACHMENT_COMPONENT_TYPE_EXT 0x8211
446 #define GL_UNSIGNED_NORMALIZED_EXT 0x8C17
449 /* GL_EXT_debug_label */
450 #ifndef GL_EXT_debug_label
451 #define GL_PROGRAM_PIPELINE_OBJECT_EXT 0x8A4F
452 #define GL_PROGRAM_OBJECT_EXT 0x8B40
453 #define GL_SHADER_OBJECT_EXT 0x8B48
454 #define GL_BUFFER_OBJECT_EXT 0x9151
455 #define GL_QUERY_OBJECT_EXT 0x9153
456 #define GL_VERTEX_ARRAY_OBJECT_EXT 0x9154
459 /* GL_EXT_debug_marker */
460 /* No new tokens introduced by this extension. */
462 /* GL_EXT_discard_framebuffer */
463 #ifndef GL_EXT_discard_framebuffer
464 #define GL_COLOR_EXT 0x1800
465 #define GL_DEPTH_EXT 0x1801
466 #define GL_STENCIL_EXT 0x1802
469 /* GL_EXT_map_buffer_range */
470 #ifndef GL_EXT_map_buffer_range
471 #define GL_MAP_READ_BIT_EXT 0x0001
472 #define GL_MAP_WRITE_BIT_EXT 0x0002
473 #define GL_MAP_INVALIDATE_RANGE_BIT_EXT 0x0004
474 #define GL_MAP_INVALIDATE_BUFFER_BIT_EXT 0x0008
475 #define GL_MAP_FLUSH_EXPLICIT_BIT_EXT 0x0010
476 #define GL_MAP_UNSYNCHRONIZED_BIT_EXT 0x0020
479 /* GL_EXT_multisampled_render_to_texture */
480 #ifndef GL_EXT_multisampled_render_to_texture
481 #define GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_SAMPLES_EXT 0x8D6C
482 /* reuse values from GL_EXT_framebuffer_multisample (desktop extension) */
483 #define GL_RENDERBUFFER_SAMPLES_EXT 0x8CAB
484 #define GL_FRAMEBUFFER_INCOMPLETE_MULTISAMPLE_EXT 0x8D56
485 #define GL_MAX_SAMPLES_EXT 0x8D57
488 /* GL_EXT_multiview_draw_buffers */
489 #ifndef GL_EXT_multiview_draw_buffers
490 #define GL_COLOR_ATTACHMENT_EXT 0x90F0
491 #define GL_MULTIVIEW_EXT 0x90F1
492 #define GL_DRAW_BUFFER_EXT 0x0C01
493 #define GL_READ_BUFFER_EXT 0x0C02
494 #define GL_MAX_MULTIVIEW_BUFFERS_EXT 0x90F2
497 /* GL_EXT_multi_draw_arrays */
498 /* No new tokens introduced by this extension. */
500 /* GL_EXT_occlusion_query_boolean */
501 #ifndef GL_EXT_occlusion_query_boolean
502 #define GL_ANY_SAMPLES_PASSED_EXT 0x8C2F
503 #define GL_ANY_SAMPLES_PASSED_CONSERVATIVE_EXT 0x8D6A
504 #define GL_CURRENT_QUERY_EXT 0x8865
505 #define GL_QUERY_RESULT_EXT 0x8866
506 #define GL_QUERY_RESULT_AVAILABLE_EXT 0x8867
509 /* GL_EXT_read_format_bgra */
510 #ifndef GL_EXT_read_format_bgra
511 #define GL_BGRA_EXT 0x80E1
512 #define GL_UNSIGNED_SHORT_4_4_4_4_REV_EXT 0x8365
513 #define GL_UNSIGNED_SHORT_1_5_5_5_REV_EXT 0x8366
516 /* GL_EXT_robustness */
517 #ifndef GL_EXT_robustness
518 /* reuse GL_NO_ERROR */
519 #define GL_GUILTY_CONTEXT_RESET_EXT 0x8253
520 #define GL_INNOCENT_CONTEXT_RESET_EXT 0x8254
521 #define GL_UNKNOWN_CONTEXT_RESET_EXT 0x8255
522 #define GL_CONTEXT_ROBUST_ACCESS_EXT 0x90F3
523 #define GL_RESET_NOTIFICATION_STRATEGY_EXT 0x8256
524 #define GL_LOSE_CONTEXT_ON_RESET_EXT 0x8252
525 #define GL_NO_RESET_NOTIFICATION_EXT 0x8261
528 /* GL_EXT_separate_shader_objects */
529 #ifndef GL_EXT_separate_shader_objects
530 #define GL_VERTEX_SHADER_BIT_EXT 0x00000001
531 #define GL_FRAGMENT_SHADER_BIT_EXT 0x00000002
532 #define GL_ALL_SHADER_BITS_EXT 0xFFFFFFFF
533 #define GL_PROGRAM_SEPARABLE_EXT 0x8258
534 #define GL_ACTIVE_PROGRAM_EXT 0x8259
535 #define GL_PROGRAM_PIPELINE_BINDING_EXT 0x825A
538 /* GL_EXT_shader_framebuffer_fetch */
539 #ifndef GL_EXT_shader_framebuffer_fetch
540 #define GL_FRAGMENT_SHADER_DISCARDS_SAMPLES_EXT 0x8A52
543 /* GL_EXT_shader_texture_lod */
544 /* No new tokens introduced by this extension. */
546 /* GL_EXT_shadow_samplers */
547 #ifndef GL_EXT_shadow_samplers
548 #define GL_TEXTURE_COMPARE_MODE_EXT 0x884C
549 #define GL_TEXTURE_COMPARE_FUNC_EXT 0x884D
550 #define GL_COMPARE_REF_TO_TEXTURE_EXT 0x884E
551 #define GL_SAMPLER_2D_SHADOW_EXT 0x8B62
556 #define GL_SRGB_EXT 0x8C40
557 #define GL_SRGB_ALPHA_EXT 0x8C42
558 #define GL_SRGB8_ALPHA8_EXT 0x8C43
559 #define GL_FRAMEBUFFER_ATTACHMENT_COLOR_ENCODING_EXT 0x8210
562 /* GL_EXT_texture_compression_dxt1 */
563 #ifndef GL_EXT_texture_compression_dxt1
564 #define GL_COMPRESSED_RGB_S3TC_DXT1_EXT 0x83F0
565 #define GL_COMPRESSED_RGBA_S3TC_DXT1_EXT 0x83F1
568 /* GL_EXT_texture_filter_anisotropic */
569 #ifndef GL_EXT_texture_filter_anisotropic
570 #define GL_TEXTURE_MAX_ANISOTROPY_EXT 0x84FE
571 #define GL_MAX_TEXTURE_MAX_ANISOTROPY_EXT 0x84FF
574 /* GL_EXT_texture_format_BGRA8888 */
575 #ifndef GL_EXT_texture_format_BGRA8888
576 #define GL_BGRA_EXT 0x80E1
579 /* GL_EXT_texture_rg */
580 #ifndef GL_EXT_texture_rg
581 #define GL_RED_EXT 0x1903
582 #define GL_RG_EXT 0x8227
583 #define GL_R8_EXT 0x8229
584 #define GL_RG8_EXT 0x822B
587 /* GL_EXT_texture_storage */
588 #ifndef GL_EXT_texture_storage
589 #define GL_TEXTURE_IMMUTABLE_FORMAT_EXT 0x912F
590 #define GL_ALPHA8_EXT 0x803C
591 #define GL_LUMINANCE8_EXT 0x8040
592 #define GL_LUMINANCE8_ALPHA8_EXT 0x8045
593 #define GL_RGBA32F_EXT 0x8814
594 #define GL_RGB32F_EXT 0x8815
595 #define GL_ALPHA32F_EXT 0x8816
596 #define GL_LUMINANCE32F_EXT 0x8818
597 #define GL_LUMINANCE_ALPHA32F_EXT 0x8819
598 /* reuse GL_RGBA16F_EXT */
599 /* reuse GL_RGB16F_EXT */
600 #define GL_ALPHA16F_EXT 0x881C
601 #define GL_LUMINANCE16F_EXT 0x881E
602 #define GL_LUMINANCE_ALPHA16F_EXT 0x881F
603 #define GL_RGB10_A2_EXT 0x8059
604 #define GL_RGB10_EXT 0x8052
605 #define GL_BGRA8_EXT 0x93A1
606 #define GL_R8_EXT 0x8229
607 #define GL_RG8_EXT 0x822B
608 #define GL_R32F_EXT 0x822E
609 #define GL_RG32F_EXT 0x8230
610 #define GL_R16F_EXT 0x822D
611 #define GL_RG16F_EXT 0x822F
614 /* GL_EXT_texture_type_2_10_10_10_REV */
615 #ifndef GL_EXT_texture_type_2_10_10_10_REV
616 #define GL_UNSIGNED_INT_2_10_10_10_REV_EXT 0x8368
619 /* GL_EXT_unpack_subimage */
620 #ifndef GL_EXT_unpack_subimage
621 #define GL_UNPACK_ROW_LENGTH 0x0CF2
622 #define GL_UNPACK_SKIP_ROWS 0x0CF3
623 #define GL_UNPACK_SKIP_PIXELS 0x0CF4
626 /*------------------------------------------------------------------------*
627 * DMP extension tokens
628 *------------------------------------------------------------------------*/
630 /* GL_DMP_shader_binary */
631 #ifndef GL_DMP_shader_binary
632 #define GL_SHADER_BINARY_DMP 0x9250
635 /*------------------------------------------------------------------------*
636 * FJ extension tokens
637 *------------------------------------------------------------------------*/
639 /* GL_FJ_shader_binary_GCCSO */
640 #ifndef GL_FJ_shader_binary_GCCSO
641 #define GCCSO_SHADER_BINARY_FJ 0x9260
644 /*------------------------------------------------------------------------*
645 * IMG extension tokens
646 *------------------------------------------------------------------------*/
648 /* GL_IMG_program_binary */
649 #ifndef GL_IMG_program_binary
650 #define GL_SGX_PROGRAM_BINARY_IMG 0x9130
653 /* GL_IMG_read_format */
654 #ifndef GL_IMG_read_format
655 #define GL_BGRA_IMG 0x80E1
656 #define GL_UNSIGNED_SHORT_4_4_4_4_REV_IMG 0x8365
659 /* GL_IMG_shader_binary */
660 #ifndef GL_IMG_shader_binary
661 #define GL_SGX_BINARY_IMG 0x8C0A
664 /* GL_IMG_texture_compression_pvrtc */
665 #ifndef GL_IMG_texture_compression_pvrtc
666 #define GL_COMPRESSED_RGB_PVRTC_4BPPV1_IMG 0x8C00
667 #define GL_COMPRESSED_RGB_PVRTC_2BPPV1_IMG 0x8C01
668 #define GL_COMPRESSED_RGBA_PVRTC_4BPPV1_IMG 0x8C02
669 #define GL_COMPRESSED_RGBA_PVRTC_2BPPV1_IMG 0x8C03
672 /* GL_IMG_multisampled_render_to_texture */
673 #ifndef GL_IMG_multisampled_render_to_texture
674 #define GL_RENDERBUFFER_SAMPLES_IMG 0x9133
675 #define GL_FRAMEBUFFER_INCOMPLETE_MULTISAMPLE_IMG 0x9134
676 #define GL_MAX_SAMPLES_IMG 0x9135
677 #define GL_TEXTURE_SAMPLES_IMG 0x9136
680 /*------------------------------------------------------------------------*
681 * NV extension tokens
682 *------------------------------------------------------------------------*/
684 /* GL_NV_coverage_sample */
685 #ifndef GL_NV_coverage_sample
686 #define GL_COVERAGE_COMPONENT_NV 0x8ED0
687 #define GL_COVERAGE_COMPONENT4_NV 0x8ED1
688 #define GL_COVERAGE_ATTACHMENT_NV 0x8ED2
689 #define GL_COVERAGE_BUFFERS_NV 0x8ED3
690 #define GL_COVERAGE_SAMPLES_NV 0x8ED4
691 #define GL_COVERAGE_ALL_FRAGMENTS_NV 0x8ED5
692 #define GL_COVERAGE_EDGE_FRAGMENTS_NV 0x8ED6
693 #define GL_COVERAGE_AUTOMATIC_NV 0x8ED7
694 #define GL_COVERAGE_BUFFER_BIT_NV 0x8000
697 /* GL_NV_depth_nonlinear */
698 #ifndef GL_NV_depth_nonlinear
699 #define GL_DEPTH_COMPONENT16_NONLINEAR_NV 0x8E2C
702 /* GL_NV_draw_buffers */
703 #ifndef GL_NV_draw_buffers
704 #define GL_MAX_DRAW_BUFFERS_NV 0x8824
705 #define GL_DRAW_BUFFER0_NV 0x8825
706 #define GL_DRAW_BUFFER1_NV 0x8826
707 #define GL_DRAW_BUFFER2_NV 0x8827
708 #define GL_DRAW_BUFFER3_NV 0x8828
709 #define GL_DRAW_BUFFER4_NV 0x8829
710 #define GL_DRAW_BUFFER5_NV 0x882A
711 #define GL_DRAW_BUFFER6_NV 0x882B
712 #define GL_DRAW_BUFFER7_NV 0x882C
713 #define GL_DRAW_BUFFER8_NV 0x882D
714 #define GL_DRAW_BUFFER9_NV 0x882E
715 #define GL_DRAW_BUFFER10_NV 0x882F
716 #define GL_DRAW_BUFFER11_NV 0x8830
717 #define GL_DRAW_BUFFER12_NV 0x8831
718 #define GL_DRAW_BUFFER13_NV 0x8832
719 #define GL_DRAW_BUFFER14_NV 0x8833
720 #define GL_DRAW_BUFFER15_NV 0x8834
721 #define GL_COLOR_ATTACHMENT0_NV 0x8CE0
722 #define GL_COLOR_ATTACHMENT1_NV 0x8CE1
723 #define GL_COLOR_ATTACHMENT2_NV 0x8CE2
724 #define GL_COLOR_ATTACHMENT3_NV 0x8CE3
725 #define GL_COLOR_ATTACHMENT4_NV 0x8CE4
726 #define GL_COLOR_ATTACHMENT5_NV 0x8CE5
727 #define GL_COLOR_ATTACHMENT6_NV 0x8CE6
728 #define GL_COLOR_ATTACHMENT7_NV 0x8CE7
729 #define GL_COLOR_ATTACHMENT8_NV 0x8CE8
730 #define GL_COLOR_ATTACHMENT9_NV 0x8CE9
731 #define GL_COLOR_ATTACHMENT10_NV 0x8CEA
732 #define GL_COLOR_ATTACHMENT11_NV 0x8CEB
733 #define GL_COLOR_ATTACHMENT12_NV 0x8CEC
734 #define GL_COLOR_ATTACHMENT13_NV 0x8CED
735 #define GL_COLOR_ATTACHMENT14_NV 0x8CEE
736 #define GL_COLOR_ATTACHMENT15_NV 0x8CEF
739 /* GL_NV_fbo_color_attachments */
740 #ifndef GL_NV_fbo_color_attachments
741 #define GL_MAX_COLOR_ATTACHMENTS_NV 0x8CDF
742 /* GL_COLOR_ATTACHMENT{0-15}_NV defined in GL_NV_draw_buffers already. */
747 #define GL_ALL_COMPLETED_NV 0x84F2
748 #define GL_FENCE_STATUS_NV 0x84F3
749 #define GL_FENCE_CONDITION_NV 0x84F4
752 /* GL_NV_read_buffer */
753 #ifndef GL_NV_read_buffer
754 #define GL_READ_BUFFER_NV 0x0C02
757 /* GL_NV_read_buffer_front */
758 /* No new tokens introduced by this extension. */
760 /* GL_NV_read_depth */
761 /* No new tokens introduced by this extension. */
763 /* GL_NV_read_depth_stencil */
764 /* No new tokens introduced by this extension. */
766 /* GL_NV_read_stencil */
767 /* No new tokens introduced by this extension. */
769 /* GL_NV_texture_compression_s3tc_update */
770 /* No new tokens introduced by this extension. */
772 /* GL_NV_texture_npot_2D_mipmap */
773 /* No new tokens introduced by this extension. */
775 /*------------------------------------------------------------------------*
776 * QCOM extension tokens
777 *------------------------------------------------------------------------*/
779 /* GL_QCOM_alpha_test */
780 #ifndef GL_QCOM_alpha_test
781 #define GL_ALPHA_TEST_QCOM 0x0BC0
782 #define GL_ALPHA_TEST_FUNC_QCOM 0x0BC1
783 #define GL_ALPHA_TEST_REF_QCOM 0x0BC2
786 /* GL_QCOM_binning_control */
787 #ifndef GL_QCOM_binning_control
788 #define GL_BINNING_CONTROL_HINT_QCOM 0x8FB0
789 #define GL_CPU_OPTIMIZED_QCOM 0x8FB1
790 #define GL_GPU_OPTIMIZED_QCOM 0x8FB2
791 #define GL_RENDER_DIRECT_TO_FRAMEBUFFER_QCOM 0x8FB3
794 /* GL_QCOM_driver_control */
795 /* No new tokens introduced by this extension. */
797 /* GL_QCOM_extended_get */
798 #ifndef GL_QCOM_extended_get
799 #define GL_TEXTURE_WIDTH_QCOM 0x8BD2
800 #define GL_TEXTURE_HEIGHT_QCOM 0x8BD3
801 #define GL_TEXTURE_DEPTH_QCOM 0x8BD4
802 #define GL_TEXTURE_INTERNAL_FORMAT_QCOM 0x8BD5
803 #define GL_TEXTURE_FORMAT_QCOM 0x8BD6
804 #define GL_TEXTURE_TYPE_QCOM 0x8BD7
805 #define GL_TEXTURE_IMAGE_VALID_QCOM 0x8BD8
806 #define GL_TEXTURE_NUM_LEVELS_QCOM 0x8BD9
807 #define GL_TEXTURE_TARGET_QCOM 0x8BDA
808 #define GL_TEXTURE_OBJECT_VALID_QCOM 0x8BDB
809 #define GL_STATE_RESTORE 0x8BDC
812 /* GL_QCOM_extended_get2 */
813 /* No new tokens introduced by this extension. */
815 /* GL_QCOM_perfmon_global_mode */
816 #ifndef GL_QCOM_perfmon_global_mode
817 #define GL_PERFMON_GLOBAL_MODE_QCOM 0x8FA0
820 /* GL_QCOM_writeonly_rendering */
821 #ifndef GL_QCOM_writeonly_rendering
822 #define GL_WRITEONLY_RENDERING_QCOM 0x8823
825 /* GL_QCOM_tiled_rendering */
826 #ifndef GL_QCOM_tiled_rendering
827 #define GL_COLOR_BUFFER_BIT0_QCOM 0x00000001
828 #define GL_COLOR_BUFFER_BIT1_QCOM 0x00000002
829 #define GL_COLOR_BUFFER_BIT2_QCOM 0x00000004
830 #define GL_COLOR_BUFFER_BIT3_QCOM 0x00000008
831 #define GL_COLOR_BUFFER_BIT4_QCOM 0x00000010
832 #define GL_COLOR_BUFFER_BIT5_QCOM 0x00000020
833 #define GL_COLOR_BUFFER_BIT6_QCOM 0x00000040
834 #define GL_COLOR_BUFFER_BIT7_QCOM 0x00000080
835 #define GL_DEPTH_BUFFER_BIT0_QCOM 0x00000100
836 #define GL_DEPTH_BUFFER_BIT1_QCOM 0x00000200
837 #define GL_DEPTH_BUFFER_BIT2_QCOM 0x00000400
838 #define GL_DEPTH_BUFFER_BIT3_QCOM 0x00000800
839 #define GL_DEPTH_BUFFER_BIT4_QCOM 0x00001000
840 #define GL_DEPTH_BUFFER_BIT5_QCOM 0x00002000
841 #define GL_DEPTH_BUFFER_BIT6_QCOM 0x00004000
842 #define GL_DEPTH_BUFFER_BIT7_QCOM 0x00008000
843 #define GL_STENCIL_BUFFER_BIT0_QCOM 0x00010000
844 #define GL_STENCIL_BUFFER_BIT1_QCOM 0x00020000
845 #define GL_STENCIL_BUFFER_BIT2_QCOM 0x00040000
846 #define GL_STENCIL_BUFFER_BIT3_QCOM 0x00080000
847 #define GL_STENCIL_BUFFER_BIT4_QCOM 0x00100000
848 #define GL_STENCIL_BUFFER_BIT5_QCOM 0x00200000
849 #define GL_STENCIL_BUFFER_BIT6_QCOM 0x00400000
850 #define GL_STENCIL_BUFFER_BIT7_QCOM 0x00800000
851 #define GL_MULTISAMPLE_BUFFER_BIT0_QCOM 0x01000000
852 #define GL_MULTISAMPLE_BUFFER_BIT1_QCOM 0x02000000
853 #define GL_MULTISAMPLE_BUFFER_BIT2_QCOM 0x04000000
854 #define GL_MULTISAMPLE_BUFFER_BIT3_QCOM 0x08000000
855 #define GL_MULTISAMPLE_BUFFER_BIT4_QCOM 0x10000000
856 #define GL_MULTISAMPLE_BUFFER_BIT5_QCOM 0x20000000
857 #define GL_MULTISAMPLE_BUFFER_BIT6_QCOM 0x40000000
858 #define GL_MULTISAMPLE_BUFFER_BIT7_QCOM 0x80000000
861 /*------------------------------------------------------------------------*
862 * VIV extension tokens
863 *------------------------------------------------------------------------*/
865 /* GL_VIV_shader_binary */
866 #ifndef GL_VIV_shader_binary
867 #define GL_SHADER_BINARY_VIV 0x8FC4
870 /*------------------------------------------------------------------------*
871 * End of extension tokens, start of corresponding extension functions
872 *------------------------------------------------------------------------*/
874 /*------------------------------------------------------------------------*
875 * OES extension functions
876 *------------------------------------------------------------------------*/
878 /* GL_OES_compressed_ETC1_RGB8_texture */
879 #ifndef GL_OES_compressed_ETC1_RGB8_texture
880 #define GL_OES_compressed_ETC1_RGB8_texture 1
883 /* GL_OES_compressed_paletted_texture */
884 #ifndef GL_OES_compressed_paletted_texture
885 #define GL_OES_compressed_paletted_texture 1
889 #ifndef GL_OES_depth24
890 #define GL_OES_depth24 1
894 #ifndef GL_OES_depth32
895 #define GL_OES_depth32 1
898 /* GL_OES_depth_texture */
899 #ifndef GL_OES_depth_texture
900 #define GL_OES_depth_texture 1
903 /* GL_OES_EGL_image */
904 #ifndef GL_OES_EGL_image
905 #define GL_OES_EGL_image 1
906 #ifdef GL_GLEXT_PROTOTYPES
907 GL_APICALL
void GL_APIENTRY
glEGLImageTargetTexture2DOES (GLenum target
, GLeglImageOES image
);
908 GL_APICALL
void GL_APIENTRY
glEGLImageTargetRenderbufferStorageOES (GLenum target
, GLeglImageOES image
);
910 typedef void (GL_APIENTRYP PFNGLEGLIMAGETARGETTEXTURE2DOESPROC
) (GLenum target
, GLeglImageOES image
);
911 typedef void (GL_APIENTRYP PFNGLEGLIMAGETARGETRENDERBUFFERSTORAGEOESPROC
) (GLenum target
, GLeglImageOES image
);
914 /* GL_OES_EGL_image_external */
915 #ifndef GL_OES_EGL_image_external
916 #define GL_OES_EGL_image_external 1
917 /* glEGLImageTargetTexture2DOES defined in GL_OES_EGL_image already. */
920 /* GL_OES_element_index_uint */
921 #ifndef GL_OES_element_index_uint
922 #define GL_OES_element_index_uint 1
925 /* GL_OES_fbo_render_mipmap */
926 #ifndef GL_OES_fbo_render_mipmap
927 #define GL_OES_fbo_render_mipmap 1
930 /* GL_OES_fragment_precision_high */
931 #ifndef GL_OES_fragment_precision_high
932 #define GL_OES_fragment_precision_high 1
935 /* GL_OES_get_program_binary */
936 #ifndef GL_OES_get_program_binary
937 #define GL_OES_get_program_binary 1
938 #ifdef GL_GLEXT_PROTOTYPES
939 GL_APICALL
void GL_APIENTRY
glGetProgramBinaryOES (GLuint program
, GLsizei bufSize
, GLsizei
*length
, GLenum
*binaryFormat
, GLvoid
*binary
);
940 GL_APICALL
void GL_APIENTRY
glProgramBinaryOES (GLuint program
, GLenum binaryFormat
, const GLvoid
*binary
, GLint length
);
942 typedef void (GL_APIENTRYP PFNGLGETPROGRAMBINARYOESPROC
) (GLuint program
, GLsizei bufSize
, GLsizei
*length
, GLenum
*binaryFormat
, GLvoid
*binary
);
943 typedef void (GL_APIENTRYP PFNGLPROGRAMBINARYOESPROC
) (GLuint program
, GLenum binaryFormat
, const GLvoid
*binary
, GLint length
);
946 /* GL_OES_mapbuffer */
947 #ifndef GL_OES_mapbuffer
948 #define GL_OES_mapbuffer 1
949 #ifdef GL_GLEXT_PROTOTYPES
950 GL_APICALL
void* GL_APIENTRY
glMapBufferOES (GLenum target
, GLenum access
);
951 GL_APICALL GLboolean GL_APIENTRY
glUnmapBufferOES (GLenum target
);
952 GL_APICALL
void GL_APIENTRY
glGetBufferPointervOES (GLenum target
, GLenum pname
, GLvoid
** params
);
954 typedef void* (GL_APIENTRYP PFNGLMAPBUFFEROESPROC
) (GLenum target
, GLenum access
);
955 typedef GLboolean (GL_APIENTRYP PFNGLUNMAPBUFFEROESPROC
) (GLenum target
);
956 typedef void (GL_APIENTRYP PFNGLGETBUFFERPOINTERVOESPROC
) (GLenum target
, GLenum pname
, GLvoid
** params
);
959 /* GL_OES_packed_depth_stencil */
960 #ifndef GL_OES_packed_depth_stencil
961 #define GL_OES_packed_depth_stencil 1
964 /* GL_OES_required_internalformat */
965 #ifndef GL_OES_required_internalformat
966 #define GL_OES_required_internalformat 1
969 /* GL_OES_rgb8_rgba8 */
970 #ifndef GL_OES_rgb8_rgba8
971 #define GL_OES_rgb8_rgba8 1
974 /* GL_OES_standard_derivatives */
975 #ifndef GL_OES_standard_derivatives
976 #define GL_OES_standard_derivatives 1
979 /* GL_OES_stencil1 */
980 #ifndef GL_OES_stencil1
981 #define GL_OES_stencil1 1
984 /* GL_OES_stencil4 */
985 #ifndef GL_OES_stencil4
986 #define GL_OES_stencil4 1
989 #ifndef GL_OES_surfaceless_context
990 #define GL_OES_surfaceless_context 1
993 /* GL_OES_texture_3D */
994 #ifndef GL_OES_texture_3D
995 #define GL_OES_texture_3D 1
996 #ifdef GL_GLEXT_PROTOTYPES
997 GL_APICALL
void GL_APIENTRY
glTexImage3DOES (GLenum target
, GLint level
, GLenum internalformat
, GLsizei width
, GLsizei height
, GLsizei depth
, GLint border
, GLenum format
, GLenum type
, const GLvoid
* pixels
);
998 GL_APICALL
void GL_APIENTRY
glTexSubImage3DOES (GLenum target
, GLint level
, GLint xoffset
, GLint yoffset
, GLint zoffset
, GLsizei width
, GLsizei height
, GLsizei depth
, GLenum format
, GLenum type
, const GLvoid
* pixels
);
999 GL_APICALL
void GL_APIENTRY
glCopyTexSubImage3DOES (GLenum target
, GLint level
, GLint xoffset
, GLint yoffset
, GLint zoffset
, GLint x
, GLint y
, GLsizei width
, GLsizei height
);
1000 GL_APICALL
void GL_APIENTRY
glCompressedTexImage3DOES (GLenum target
, GLint level
, GLenum internalformat
, GLsizei width
, GLsizei height
, GLsizei depth
, GLint border
, GLsizei imageSize
, const GLvoid
* data
);
1001 GL_APICALL
void GL_APIENTRY
glCompressedTexSubImage3DOES (GLenum target
, GLint level
, GLint xoffset
, GLint yoffset
, GLint zoffset
, GLsizei width
, GLsizei height
, GLsizei depth
, GLenum format
, GLsizei imageSize
, const GLvoid
* data
);
1002 GL_APICALL
void GL_APIENTRY
glFramebufferTexture3DOES (GLenum target
, GLenum attachment
, GLenum textarget
, GLuint texture
, GLint level
, GLint zoffset
);
1004 typedef void (GL_APIENTRYP PFNGLTEXIMAGE3DOESPROC
) (GLenum target
, GLint level
, GLenum internalformat
, GLsizei width
, GLsizei height
, GLsizei depth
, GLint border
, GLenum format
, GLenum type
, const GLvoid
* pixels
);
1005 typedef void (GL_APIENTRYP PFNGLTEXSUBIMAGE3DOESPROC
) (GLenum target
, GLint level
, GLint xoffset
, GLint yoffset
, GLint zoffset
, GLsizei width
, GLsizei height
, GLsizei depth
, GLenum format
, GLenum type
, const GLvoid
* pixels
);
1006 typedef void (GL_APIENTRYP PFNGLCOPYTEXSUBIMAGE3DOESPROC
) (GLenum target
, GLint level
, GLint xoffset
, GLint yoffset
, GLint zoffset
, GLint x
, GLint y
, GLsizei width
, GLsizei height
);
1007 typedef void (GL_APIENTRYP PFNGLCOMPRESSEDTEXIMAGE3DOESPROC
) (GLenum target
, GLint level
, GLenum internalformat
, GLsizei width
, GLsizei height
, GLsizei depth
, GLint border
, GLsizei imageSize
, const GLvoid
* data
);
1008 typedef void (GL_APIENTRYP PFNGLCOMPRESSEDTEXSUBIMAGE3DOESPROC
) (GLenum target
, GLint level
, GLint xoffset
, GLint yoffset
, GLint zoffset
, GLsizei width
, GLsizei height
, GLsizei depth
, GLenum format
, GLsizei imageSize
, const GLvoid
* data
);
1009 typedef void (GL_APIENTRYP PFNGLFRAMEBUFFERTEXTURE3DOES
) (GLenum target
, GLenum attachment
, GLenum textarget
, GLuint texture
, GLint level
, GLint zoffset
);
1012 /* GL_OES_texture_float */
1013 #ifndef GL_OES_texture_float
1014 #define GL_OES_texture_float 1
1017 /* GL_OES_texture_float_linear */
1018 #ifndef GL_OES_texture_float_linear
1019 #define GL_OES_texture_float_linear 1
1022 /* GL_OES_texture_half_float */
1023 #ifndef GL_OES_texture_half_float
1024 #define GL_OES_texture_half_float 1
1027 /* GL_OES_texture_half_float_linear */
1028 #ifndef GL_OES_texture_half_float_linear
1029 #define GL_OES_texture_half_float_linear 1
1032 /* GL_OES_texture_npot */
1033 #ifndef GL_OES_texture_npot
1034 #define GL_OES_texture_npot 1
1037 /* GL_OES_vertex_array_object */
1038 #ifndef GL_OES_vertex_array_object
1039 #define GL_OES_vertex_array_object 1
1040 #ifdef GL_GLEXT_PROTOTYPES
1041 GL_APICALL
void GL_APIENTRY
glBindVertexArrayOES (GLuint array
);
1042 GL_APICALL
void GL_APIENTRY
glDeleteVertexArraysOES (GLsizei n
, const GLuint
*arrays
);
1043 GL_APICALL
void GL_APIENTRY
glGenVertexArraysOES (GLsizei n
, GLuint
*arrays
);
1044 GL_APICALL GLboolean GL_APIENTRY
glIsVertexArrayOES (GLuint array
);
1046 typedef void (GL_APIENTRYP PFNGLBINDVERTEXARRAYOESPROC
) (GLuint array
);
1047 typedef void (GL_APIENTRYP PFNGLDELETEVERTEXARRAYSOESPROC
) (GLsizei n
, const GLuint
*arrays
);
1048 typedef void (GL_APIENTRYP PFNGLGENVERTEXARRAYSOESPROC
) (GLsizei n
, GLuint
*arrays
);
1049 typedef GLboolean (GL_APIENTRYP PFNGLISVERTEXARRAYOESPROC
) (GLuint array
);
1052 /* GL_OES_vertex_half_float */
1053 #ifndef GL_OES_vertex_half_float
1054 #define GL_OES_vertex_half_float 1
1057 /* GL_OES_vertex_type_10_10_10_2 */
1058 #ifndef GL_OES_vertex_type_10_10_10_2
1059 #define GL_OES_vertex_type_10_10_10_2 1
1062 /*------------------------------------------------------------------------*
1063 * KHR extension functions
1064 *------------------------------------------------------------------------*/
1066 #ifndef GL_KHR_debug
1067 #define GL_KHR_debug 1
1068 #ifdef GL_GLEXT_PROTOTYPES
1069 GL_APICALL
void GL_APIENTRY
glDebugMessageControl (GLenum source
, GLenum type
, GLenum severity
, GLsizei count
, const GLuint
*ids
, GLboolean enabled
);
1070 GL_APICALL
void GL_APIENTRY
glDebugMessageInsert (GLenum source
, GLenum type
, GLuint id
, GLenum severity
, GLsizei length
, const GLchar
*buf
);
1071 GL_APICALL
void GL_APIENTRY
glDebugMessageCallback (GLDEBUGPROC callback
, const void *userParam
);
1072 GL_APICALL GLuint GL_APIENTRY
glGetDebugMessageLog (GLuint count
, GLsizei bufsize
, GLenum
*sources
, GLenum
*types
, GLuint
*ids
, GLenum
*severities
, GLsizei
*lengths
, GLchar
*messageLog
);
1073 GL_APICALL
void GL_APIENTRY
glPushDebugGroup (GLenum source
, GLuint id
, GLsizei length
, const GLchar
*message
);
1074 GL_APICALL
void GL_APIENTRY
glPopDebugGroup (void);
1075 GL_APICALL
void GL_APIENTRY
glObjectLabel (GLenum identifier
, GLuint name
, GLsizei length
, const GLchar
*label
);
1076 GL_APICALL
void GL_APIENTRY
glGetObjectLabel (GLenum identifier
, GLuint name
, GLsizei bufSize
, GLsizei
*length
, GLchar
*label
);
1077 GL_APICALL
void GL_APIENTRY
glObjectPtrLabel (const void *ptr
, GLsizei length
, const GLchar
*label
);
1078 GL_APICALL
void GL_APIENTRY
glGetObjectPtrLabel (const void *ptr
, GLsizei bufSize
, GLsizei
*length
, GLchar
*label
);
1079 GL_APICALL
void GL_APIENTRY
glGetPointerv (GLenum pname
, void **params
);
1081 typedef void (GL_APIENTRYP PFNGLDEBUGMESSAGECONTROLPROC
) (GLenum source
, GLenum type
, GLenum severity
, GLsizei count
, const GLuint
*ids
, GLboolean enabled
);
1082 typedef void (GL_APIENTRYP PFNGLDEBUGMESSAGEINSERTPROC
) (GLenum source
, GLenum type
, GLuint id
, GLenum severity
, GLsizei length
, const GLchar
*buf
);
1083 typedef void (GL_APIENTRYP PFNGLDEBUGMESSAGECALLBACKPROC
) (GLDEBUGPROC callback
, const void *userParam
);
1084 typedef GLuint (GL_APIENTRYP PFNGLGETDEBUGMESSAGELOGPROC
) (GLuint count
, GLsizei bufsize
, GLenum
*sources
, GLenum
*types
, GLuint
*ids
, GLenum
*severities
, GLsizei
*lengths
, GLchar
*messageLog
);
1085 typedef void (GL_APIENTRYP PFNGLPUSHDEBUGGROUPPROC
) (GLenum source
, GLuint id
, GLsizei length
, const GLchar
*message
);
1086 typedef void (GL_APIENTRYP PFNGLPOPDEBUGGROUPPROC
) (void);
1087 typedef void (GL_APIENTRYP PFNGLOBJECTLABELPROC
) (GLenum identifier
, GLuint name
, GLsizei length
, const GLchar
*label
);
1088 typedef void (GL_APIENTRYP PFNGLGETOBJECTLABELPROC
) (GLenum identifier
, GLuint name
, GLsizei bufSize
, GLsizei
*length
, GLchar
*label
);
1089 typedef void (GL_APIENTRYP PFNGLOBJECTPTRLABELPROC
) (const void *ptr
, GLsizei length
, const GLchar
*label
);
1090 typedef void (GL_APIENTRYP PFNGLGETOBJECTPTRLABELPROC
) (const void *ptr
, GLsizei bufSize
, GLsizei
*length
, GLchar
*label
);
1091 typedef void (GL_APIENTRYP PFNGLGETPOINTERVPROC
) (GLenum pname
, void **params
);
1094 #ifndef GL_KHR_texture_compression_astc_ldr
1095 #define GL_KHR_texture_compression_astc_ldr 1
1099 /*------------------------------------------------------------------------*
1100 * AMD extension functions
1101 *------------------------------------------------------------------------*/
1103 /* GL_AMD_compressed_3DC_texture */
1104 #ifndef GL_AMD_compressed_3DC_texture
1105 #define GL_AMD_compressed_3DC_texture 1
1108 /* GL_AMD_compressed_ATC_texture */
1109 #ifndef GL_AMD_compressed_ATC_texture
1110 #define GL_AMD_compressed_ATC_texture 1
1113 /* AMD_performance_monitor */
1114 #ifndef GL_AMD_performance_monitor
1115 #define GL_AMD_performance_monitor 1
1116 #ifdef GL_GLEXT_PROTOTYPES
1117 GL_APICALL
void GL_APIENTRY
glGetPerfMonitorGroupsAMD (GLint
*numGroups
, GLsizei groupsSize
, GLuint
*groups
);
1118 GL_APICALL
void GL_APIENTRY
glGetPerfMonitorCountersAMD (GLuint group
, GLint
*numCounters
, GLint
*maxActiveCounters
, GLsizei counterSize
, GLuint
*counters
);
1119 GL_APICALL
void GL_APIENTRY
glGetPerfMonitorGroupStringAMD (GLuint group
, GLsizei bufSize
, GLsizei
*length
, GLchar
*groupString
);
1120 GL_APICALL
void GL_APIENTRY
glGetPerfMonitorCounterStringAMD (GLuint group
, GLuint counter
, GLsizei bufSize
, GLsizei
*length
, GLchar
*counterString
);
1121 GL_APICALL
void GL_APIENTRY
glGetPerfMonitorCounterInfoAMD (GLuint group
, GLuint counter
, GLenum pname
, GLvoid
*data
);
1122 GL_APICALL
void GL_APIENTRY
glGenPerfMonitorsAMD (GLsizei n
, GLuint
*monitors
);
1123 GL_APICALL
void GL_APIENTRY
glDeletePerfMonitorsAMD (GLsizei n
, GLuint
*monitors
);
1124 GL_APICALL
void GL_APIENTRY
glSelectPerfMonitorCountersAMD (GLuint monitor
, GLboolean enable
, GLuint group
, GLint numCounters
, GLuint
*countersList
);
1125 GL_APICALL
void GL_APIENTRY
glBeginPerfMonitorAMD (GLuint monitor
);
1126 GL_APICALL
void GL_APIENTRY
glEndPerfMonitorAMD (GLuint monitor
);
1127 GL_APICALL
void GL_APIENTRY
glGetPerfMonitorCounterDataAMD (GLuint monitor
, GLenum pname
, GLsizei dataSize
, GLuint
*data
, GLint
*bytesWritten
);
1129 typedef void (GL_APIENTRYP PFNGLGETPERFMONITORGROUPSAMDPROC
) (GLint
*numGroups
, GLsizei groupsSize
, GLuint
*groups
);
1130 typedef void (GL_APIENTRYP PFNGLGETPERFMONITORCOUNTERSAMDPROC
) (GLuint group
, GLint
*numCounters
, GLint
*maxActiveCounters
, GLsizei counterSize
, GLuint
*counters
);
1131 typedef void (GL_APIENTRYP PFNGLGETPERFMONITORGROUPSTRINGAMDPROC
) (GLuint group
, GLsizei bufSize
, GLsizei
*length
, GLchar
*groupString
);
1132 typedef void (GL_APIENTRYP PFNGLGETPERFMONITORCOUNTERSTRINGAMDPROC
) (GLuint group
, GLuint counter
, GLsizei bufSize
, GLsizei
*length
, GLchar
*counterString
);
1133 typedef void (GL_APIENTRYP PFNGLGETPERFMONITORCOUNTERINFOAMDPROC
) (GLuint group
, GLuint counter
, GLenum pname
, GLvoid
*data
);
1134 typedef void (GL_APIENTRYP PFNGLGENPERFMONITORSAMDPROC
) (GLsizei n
, GLuint
*monitors
);
1135 typedef void (GL_APIENTRYP PFNGLDELETEPERFMONITORSAMDPROC
) (GLsizei n
, GLuint
*monitors
);
1136 typedef void (GL_APIENTRYP PFNGLSELECTPERFMONITORCOUNTERSAMDPROC
) (GLuint monitor
, GLboolean enable
, GLuint group
, GLint numCounters
, GLuint
*countersList
);
1137 typedef void (GL_APIENTRYP PFNGLBEGINPERFMONITORAMDPROC
) (GLuint monitor
);
1138 typedef void (GL_APIENTRYP PFNGLENDPERFMONITORAMDPROC
) (GLuint monitor
);
1139 typedef void (GL_APIENTRYP PFNGLGETPERFMONITORCOUNTERDATAAMDPROC
) (GLuint monitor
, GLenum pname
, GLsizei dataSize
, GLuint
*data
, GLint
*bytesWritten
);
1142 /* GL_AMD_program_binary_Z400 */
1143 #ifndef GL_AMD_program_binary_Z400
1144 #define GL_AMD_program_binary_Z400 1
1147 /*------------------------------------------------------------------------*
1148 * ANGLE extension functions
1149 *------------------------------------------------------------------------*/
1151 /* GL_ANGLE_framebuffer_blit */
1152 #ifndef GL_ANGLE_framebuffer_blit
1153 #define GL_ANGLE_framebuffer_blit 1
1154 #ifdef GL_GLEXT_PROTOTYPES
1155 GL_APICALL
void GL_APIENTRY
glBlitFramebufferANGLE (GLint srcX0
, GLint srcY0
, GLint srcX1
, GLint srcY1
, GLint dstX0
, GLint dstY0
, GLint dstX1
, GLint dstY1
, GLbitfield mask
, GLenum filter
);
1157 typedef void (GL_APIENTRYP PFNGLBLITFRAMEBUFFERANGLEPROC
) (GLint srcX0
, GLint srcY0
, GLint srcX1
, GLint srcY1
, GLint dstX0
, GLint dstY0
, GLint dstX1
, GLint dstY1
, GLbitfield mask
, GLenum filter
);
1160 /* GL_ANGLE_framebuffer_multisample */
1161 #ifndef GL_ANGLE_framebuffer_multisample
1162 #define GL_ANGLE_framebuffer_multisample 1
1163 #ifdef GL_GLEXT_PROTOTYPES
1164 GL_APICALL
void GL_APIENTRY
glRenderbufferStorageMultisampleANGLE (GLenum target
, GLsizei samples
, GLenum internalformat
, GLsizei width
, GLsizei height
);
1166 typedef void (GL_APIENTRYP PFNGLRENDERBUFFERSTORAGEMULTISAMPLEANGLEPROC
) (GLenum target
, GLsizei samples
, GLenum internalformat
, GLsizei width
, GLsizei height
);
1169 #ifndef GL_ANGLE_instanced_arrays
1170 #ifdef GL_GLEXT_PROTOTYPES
1171 GL_APICALL
void GL_APIENTRY
glDrawArraysInstancedANGLE (GLenum mode
, GLint first
, GLsizei count
, GLsizei primcount
);
1172 GL_APICALL
void GL_APIENTRY
glDrawElementsInstancedANGLE (GLenum mode
, GLsizei count
, GLenum type
, const void *indices
, GLsizei primcount
);
1173 GL_APICALL
void GL_APIENTRY
glVertexAttribDivisorANGLE (GLuint index
, GLuint divisor
);
1175 typedef void (GL_APIENTRYP PFLGLDRAWARRAYSINSTANCEDANGLEPROC
) (GLenum mode
, GLint first
, GLsizei count
, GLsizei primcount
);
1176 typedef void (GL_APIENTRYP PFLGLDRAWELEMENTSINSTANCEDANGLEPROC
) (GLenum mode
, GLsizei count
, GLenum type
, const void *indices
, GLsizei primcount
);
1177 typedef void (GL_APIENTRYP PFLGLVERTEXATTRIBDIVISORANGLEPROC
) (GLuint index
, GLuint divisor
);
1180 /* GL_ANGLE_pack_reverse_row_order */
1181 #ifndef GL_ANGLE_pack_reverse_row_order
1182 #define GL_ANGLE_pack_reverse_row_order 1
1185 /* GL_ANGLE_texture_compression_dxt3 */
1186 #ifndef GL_ANGLE_texture_compression_dxt3
1187 #define GL_ANGLE_texture_compression_dxt3 1
1190 /* GL_ANGLE_texture_compression_dxt5 */
1191 #ifndef GL_ANGLE_texture_compression_dxt5
1192 #define GL_ANGLE_texture_compression_dxt5 1
1195 /* GL_ANGLE_texture_usage */
1196 #ifndef GL_ANGLE_texture_usage
1197 #define GL_ANGLE_texture_usage 1
1200 #ifndef GL_ANGLE_translated_shader_source
1201 #define GL_ANGLE_translated_shader_source 1
1202 #ifdef GL_GLEXT_PROTOTYPES
1203 GL_APICALL
void GL_APIENTRY
glGetTranslatedShaderSourceANGLE (GLuint shader
, GLsizei bufsize
, GLsizei
*length
, GLchar
*source
);
1205 typedef void (GL_APIENTRYP PFLGLGETTRANSLATEDSHADERSOURCEANGLEPROC
) (GLuint shader
, GLsizei bufsize
, GLsizei
*length
, GLchar
*source
);
1208 /*------------------------------------------------------------------------*
1209 * APPLE extension functions
1210 *------------------------------------------------------------------------*/
1212 /* GL_APPLE_copy_texture_levels */
1213 #ifndef GL_APPLE_copy_texture_levels
1214 #define GL_APPLE_copy_texture_levels 1
1215 #ifdef GL_GLEXT_PROTOTYPES
1216 GL_APICALL
void GL_APIENTRY
glCopyTextureLevelsAPPLE (GLuint destinationTexture
, GLuint sourceTexture
, GLint sourceBaseLevel
, GLsizei sourceLevelCount
);
1218 typedef void (GL_APIENTRYP PFNGLCOPYTEXTURELEVELSAPPLEPROC
) (GLuint destinationTexture
, GLuint sourceTexture
, GLint sourceBaseLevel
, GLsizei sourceLevelCount
);
1221 /* GL_APPLE_framebuffer_multisample */
1222 #ifndef GL_APPLE_framebuffer_multisample
1223 #define GL_APPLE_framebuffer_multisample 1
1224 #ifdef GL_GLEXT_PROTOTYPES
1225 GL_APICALL
void GL_APIENTRY
glRenderbufferStorageMultisampleAPPLE (GLenum
, GLsizei
, GLenum
, GLsizei
, GLsizei
);
1226 GL_APICALL
void GL_APIENTRY
glResolveMultisampleFramebufferAPPLE (void);
1227 #endif /* GL_GLEXT_PROTOTYPES */
1228 typedef void (GL_APIENTRYP PFNGLRENDERBUFFERSTORAGEMULTISAMPLEAPPLEPROC
) (GLenum target
, GLsizei samples
, GLenum internalformat
, GLsizei width
, GLsizei height
);
1229 typedef void (GL_APIENTRYP PFNGLRESOLVEMULTISAMPLEFRAMEBUFFERAPPLEPROC
) (void);
1232 /* GL_APPLE_rgb_422 */
1233 #ifndef GL_APPLE_rgb_422
1234 #define GL_APPLE_rgb_422 1
1238 #ifndef GL_APPLE_sync
1239 #define GL_APPLE_sync 1
1240 #ifdef GL_GLEXT_PROTOTYPES
1241 GL_APICALL GLsync GL_APIENTRY
glFenceSyncAPPLE (GLenum condition
, GLbitfield flags
);
1242 GL_APICALL GLboolean GL_APIENTRY
glIsSyncAPPLE (GLsync sync
);
1243 GL_APICALL
void GL_APIENTRY
glDeleteSyncAPPLE (GLsync sync
);
1244 GL_APICALL GLenum GL_APIENTRY
glClientWaitSyncAPPLE (GLsync sync
, GLbitfield flags
, GLuint64 timeout
);
1245 GL_APICALL
void GL_APIENTRY
glWaitSyncAPPLE (GLsync sync
, GLbitfield flags
, GLuint64 timeout
);
1246 GL_APICALL
void GL_APIENTRY
glGetInteger64vAPPLE (GLenum pname
, GLint64
*params
);
1247 GL_APICALL
void GL_APIENTRY
glGetSyncivAPPLE (GLsync sync
, GLenum pname
, GLsizei bufSize
, GLsizei
*length
, GLint
*values
);
1249 typedef GLsync (GL_APIENTRYP PFNGLFENCESYNCAPPLEPROC
) (GLenum condition
, GLbitfield flags
);
1250 typedef GLboolean (GL_APIENTRYP PFNGLISSYNCAPPLEPROC
) (GLsync sync
);
1251 typedef void (GL_APIENTRYP PFNGLDELETESYNCAPPLEPROC
) (GLsync sync
);
1252 typedef GLenum (GL_APIENTRYP PFNGLCLIENTWAITSYNCAPPLEPROC
) (GLsync sync
, GLbitfield flags
, GLuint64 timeout
);
1253 typedef void (GL_APIENTRYP PFNGLWAITSYNCAPPLEPROC
) (GLsync sync
, GLbitfield flags
, GLuint64 timeout
);
1254 typedef void (GL_APIENTRYP PFNGLGETINTEGER64VAPPLEPROC
) (GLenum pname
, GLint64
*params
);
1255 typedef void (GL_APIENTRYP PFNGLGETSYNCIVAPPLEPROC
) (GLsync sync
, GLenum pname
, GLsizei bufSize
, GLsizei
*length
, GLint
*values
);
1258 /* GL_APPLE_texture_format_BGRA8888 */
1259 #ifndef GL_APPLE_texture_format_BGRA8888
1260 #define GL_APPLE_texture_format_BGRA8888 1
1263 /* GL_APPLE_texture_max_level */
1264 #ifndef GL_APPLE_texture_max_level
1265 #define GL_APPLE_texture_max_level 1
1268 /*------------------------------------------------------------------------*
1269 * ARM extension functions
1270 *------------------------------------------------------------------------*/
1272 /* GL_ARM_mali_program_binary */
1273 #ifndef GL_ARM_mali_program_binary
1274 #define GL_ARM_mali_program_binary 1
1277 /* GL_ARM_mali_shader_binary */
1278 #ifndef GL_ARM_mali_shader_binary
1279 #define GL_ARM_mali_shader_binary 1
1283 #ifndef GL_ARM_rgba8
1284 #define GL_ARM_rgba8 1
1287 /*------------------------------------------------------------------------*
1288 * EXT extension functions
1289 *------------------------------------------------------------------------*/
1291 /* GL_EXT_blend_minmax */
1292 #ifndef GL_EXT_blend_minmax
1293 #define GL_EXT_blend_minmax 1
1296 /* GL_EXT_color_buffer_half_float */
1297 #ifndef GL_EXT_color_buffer_half_float
1298 #define GL_EXT_color_buffer_half_float 1
1301 /* GL_EXT_debug_label */
1302 #ifndef GL_EXT_debug_label
1303 #define GL_EXT_debug_label 1
1304 #ifdef GL_GLEXT_PROTOTYPES
1305 GL_APICALL
void GL_APIENTRY
glLabelObjectEXT (GLenum type
, GLuint object
, GLsizei length
, const GLchar
*label
);
1306 GL_APICALL
void GL_APIENTRY
glGetObjectLabelEXT (GLenum type
, GLuint object
, GLsizei bufSize
, GLsizei
*length
, GLchar
*label
);
1308 typedef void (GL_APIENTRYP PFNGLLABELOBJECTEXTPROC
) (GLenum type
, GLuint object
, GLsizei length
, const GLchar
*label
);
1309 typedef void (GL_APIENTRYP PFNGLGETOBJECTLABELEXTPROC
) (GLenum type
, GLuint object
, GLsizei bufSize
, GLsizei
*length
, GLchar
*label
);
1312 /* GL_EXT_debug_marker */
1313 #ifndef GL_EXT_debug_marker
1314 #define GL_EXT_debug_marker 1
1315 #ifdef GL_GLEXT_PROTOTYPES
1316 GL_APICALL
void GL_APIENTRY
glInsertEventMarkerEXT (GLsizei length
, const GLchar
*marker
);
1317 GL_APICALL
void GL_APIENTRY
glPushGroupMarkerEXT (GLsizei length
, const GLchar
*marker
);
1318 GL_APICALL
void GL_APIENTRY
glPopGroupMarkerEXT (void);
1320 typedef void (GL_APIENTRYP PFNGLINSERTEVENTMARKEREXTPROC
) (GLsizei length
, const GLchar
*marker
);
1321 typedef void (GL_APIENTRYP PFNGLPUSHGROUPMARKEREXTPROC
) (GLsizei length
, const GLchar
*marker
);
1322 typedef void (GL_APIENTRYP PFNGLPOPGROUPMARKEREXTPROC
) (void);
1325 /* GL_EXT_discard_framebuffer */
1326 #ifndef GL_EXT_discard_framebuffer
1327 #define GL_EXT_discard_framebuffer 1
1328 #ifdef GL_GLEXT_PROTOTYPES
1329 GL_APICALL
void GL_APIENTRY
glDiscardFramebufferEXT (GLenum target
, GLsizei numAttachments
, const GLenum
*attachments
);
1331 typedef void (GL_APIENTRYP PFNGLDISCARDFRAMEBUFFEREXTPROC
) (GLenum target
, GLsizei numAttachments
, const GLenum
*attachments
);
1334 /* GL_EXT_map_buffer_range */
1335 #ifndef GL_EXT_map_buffer_range
1336 #define GL_EXT_map_buffer_range 1
1337 #ifdef GL_GLEXT_PROTOTYPES
1338 GL_APICALL
void* GL_APIENTRY
glMapBufferRangeEXT (GLenum target
, GLintptr offset
, GLsizeiptr length
, GLbitfield access
);
1339 GL_APICALL
void GL_APIENTRY
glFlushMappedBufferRangeEXT (GLenum target
, GLintptr offset
, GLsizeiptr length
);
1341 typedef void* (GL_APIENTRYP PFNGLMAPBUFFERRANGEEXTPROC
) (GLenum target
, GLintptr offset
, GLsizeiptr length
, GLbitfield access
);
1342 typedef void (GL_APIENTRYP PFNGLFLUSHMAPPEDBUFFERRANGEEXTPROC
) (GLenum target
, GLintptr offset
, GLsizeiptr length
);
1345 /* GL_EXT_multisampled_render_to_texture */
1346 #ifndef GL_EXT_multisampled_render_to_texture
1347 #define GL_EXT_multisampled_render_to_texture 1
1348 #ifdef GL_GLEXT_PROTOTYPES
1349 GL_APICALL
void GL_APIENTRY
glRenderbufferStorageMultisampleEXT (GLenum
, GLsizei
, GLenum
, GLsizei
, GLsizei
);
1350 GL_APICALL
void GL_APIENTRY
glFramebufferTexture2DMultisampleEXT (GLenum
, GLenum
, GLenum
, GLuint
, GLint
, GLsizei
);
1352 typedef void (GL_APIENTRYP PFNGLRENDERBUFFERSTORAGEMULTISAMPLEEXTPROC
) (GLenum target
, GLsizei samples
, GLenum internalformat
, GLsizei width
, GLsizei height
);
1353 typedef void (GL_APIENTRYP PFNGLFRAMEBUFFERTEXTURE2DMULTISAMPLEEXTPROC
) (GLenum target
, GLenum attachment
, GLenum textarget
, GLuint texture
, GLint level
, GLsizei samples
);
1356 /* GL_EXT_multiview_draw_buffers */
1357 #ifndef GL_EXT_multiview_draw_buffers
1358 #define GL_EXT_multiview_draw_buffers 1
1359 #ifdef GL_GLEXT_PROTOTYPES
1360 GL_APICALL
void GL_APIENTRY
glReadBufferIndexedEXT (GLenum src
, GLint index
);
1361 GL_APICALL
void GL_APIENTRY
glDrawBuffersIndexedEXT (GLint n
, const GLenum
*location
, const GLint
*indices
);
1362 GL_APICALL
void GL_APIENTRY
glGetIntegeri_vEXT (GLenum target
, GLuint index
, GLint
*data
);
1364 typedef void (GL_APIENTRYP PFNGLREADBUFFERINDEXEDEXTPROC
) (GLenum src
, GLint index
);
1365 typedef void (GL_APIENTRYP PFNGLDRAWBUFFERSINDEXEDEXTPROC
) (GLint n
, const GLenum
*location
, const GLint
*indices
);
1366 typedef void (GL_APIENTRYP PFNGLGETINTEGERI_VEXTPROC
) (GLenum target
, GLuint index
, GLint
*data
);
1369 #ifndef GL_EXT_multi_draw_arrays
1370 #define GL_EXT_multi_draw_arrays 1
1371 #ifdef GL_GLEXT_PROTOTYPES
1372 GL_APICALL
void GL_APIENTRY
glMultiDrawArraysEXT (GLenum
, GLint
*, GLsizei
*, GLsizei
);
1373 GL_APICALL
void GL_APIENTRY
glMultiDrawElementsEXT (GLenum
, const GLsizei
*, GLenum
, const GLvoid
* *, GLsizei
);
1374 #endif /* GL_GLEXT_PROTOTYPES */
1375 typedef void (GL_APIENTRYP PFNGLMULTIDRAWARRAYSEXTPROC
) (GLenum mode
, GLint
*first
, GLsizei
*count
, GLsizei primcount
);
1376 typedef void (GL_APIENTRYP PFNGLMULTIDRAWELEMENTSEXTPROC
) (GLenum mode
, const GLsizei
*count
, GLenum type
, const GLvoid
* *indices
, GLsizei primcount
);
1379 /* GL_EXT_occlusion_query_boolean */
1380 #ifndef GL_EXT_occlusion_query_boolean
1381 #define GL_EXT_occlusion_query_boolean 1
1382 #ifdef GL_GLEXT_PROTOTYPES
1383 GL_APICALL
void GL_APIENTRY
glGenQueriesEXT (GLsizei n
, GLuint
*ids
);
1384 GL_APICALL
void GL_APIENTRY
glDeleteQueriesEXT (GLsizei n
, const GLuint
*ids
);
1385 GL_APICALL GLboolean GL_APIENTRY
glIsQueryEXT (GLuint id
);
1386 GL_APICALL
void GL_APIENTRY
glBeginQueryEXT (GLenum target
, GLuint id
);
1387 GL_APICALL
void GL_APIENTRY
glEndQueryEXT (GLenum target
);
1388 GL_APICALL
void GL_APIENTRY
glGetQueryivEXT (GLenum target
, GLenum pname
, GLint
*params
);
1389 GL_APICALL
void GL_APIENTRY
glGetQueryObjectuivEXT (GLuint id
, GLenum pname
, GLuint
*params
);
1391 typedef void (GL_APIENTRYP PFNGLGENQUERIESEXTPROC
) (GLsizei n
, GLuint
*ids
);
1392 typedef void (GL_APIENTRYP PFNGLDELETEQUERIESEXTPROC
) (GLsizei n
, const GLuint
*ids
);
1393 typedef GLboolean (GL_APIENTRYP PFNGLISQUERYEXTPROC
) (GLuint id
);
1394 typedef void (GL_APIENTRYP PFNGLBEGINQUERYEXTPROC
) (GLenum target
, GLuint id
);
1395 typedef void (GL_APIENTRYP PFNGLENDQUERYEXTPROC
) (GLenum target
);
1396 typedef void (GL_APIENTRYP PFNGLGETQUERYIVEXTPROC
) (GLenum target
, GLenum pname
, GLint
*params
);
1397 typedef void (GL_APIENTRYP PFNGLGETQUERYOBJECTUIVEXTPROC
) (GLuint id
, GLenum pname
, GLuint
*params
);
1400 /* GL_EXT_read_format_bgra */
1401 #ifndef GL_EXT_read_format_bgra
1402 #define GL_EXT_read_format_bgra 1
1405 /* GL_EXT_robustness */
1406 #ifndef GL_EXT_robustness
1407 #define GL_EXT_robustness 1
1408 #ifdef GL_GLEXT_PROTOTYPES
1409 GL_APICALL GLenum GL_APIENTRY
glGetGraphicsResetStatusEXT (void);
1410 GL_APICALL
void GL_APIENTRY
glReadnPixelsEXT (GLint x
, GLint y
, GLsizei width
, GLsizei height
, GLenum format
, GLenum type
, GLsizei bufSize
, void *data
);
1411 GL_APICALL
void GL_APIENTRY
glGetnUniformfvEXT (GLuint program
, GLint location
, GLsizei bufSize
, float *params
);
1412 GL_APICALL
void GL_APIENTRY
glGetnUniformivEXT (GLuint program
, GLint location
, GLsizei bufSize
, GLint
*params
);
1414 typedef GLenum (GL_APIENTRYP PFNGLGETGRAPHICSRESETSTATUSEXTPROC
) (void);
1415 typedef void (GL_APIENTRYP PFNGLREADNPIXELSEXTPROC
) (GLint x
, GLint y
, GLsizei width
, GLsizei height
, GLenum format
, GLenum type
, GLsizei bufSize
, void *data
);
1416 typedef void (GL_APIENTRYP PFNGLGETNUNIFORMFVEXTPROC
) (GLuint program
, GLint location
, GLsizei bufSize
, float *params
);
1417 typedef void (GL_APIENTRYP PFNGLGETNUNIFORMIVEXTPROC
) (GLuint program
, GLint location
, GLsizei bufSize
, GLint
*params
);
1420 /* GL_EXT_separate_shader_objects */
1421 #ifndef GL_EXT_separate_shader_objects
1422 #define GL_EXT_separate_shader_objects 1
1423 #ifdef GL_GLEXT_PROTOTYPES
1424 GL_APICALL
void GL_APIENTRY
glUseProgramStagesEXT (GLuint pipeline
, GLbitfield stages
, GLuint program
);
1425 GL_APICALL
void GL_APIENTRY
glActiveShaderProgramEXT (GLuint pipeline
, GLuint program
);
1426 GL_APICALL GLuint GL_APIENTRY
glCreateShaderProgramvEXT (GLenum type
, GLsizei count
, const GLchar
**strings
);
1427 GL_APICALL
void GL_APIENTRY
glBindProgramPipelineEXT (GLuint pipeline
);
1428 GL_APICALL
void GL_APIENTRY
glDeleteProgramPipelinesEXT (GLsizei n
, const GLuint
*pipelines
);
1429 GL_APICALL
void GL_APIENTRY
glGenProgramPipelinesEXT (GLsizei n
, GLuint
*pipelines
);
1430 GL_APICALL GLboolean GL_APIENTRY
glIsProgramPipelineEXT (GLuint pipeline
);
1431 GL_APICALL
void GL_APIENTRY
glProgramParameteriEXT (GLuint program
, GLenum pname
, GLint value
);
1432 GL_APICALL
void GL_APIENTRY
glGetProgramPipelineivEXT (GLuint pipeline
, GLenum pname
, GLint
*params
);
1433 GL_APICALL
void GL_APIENTRY
glProgramUniform1iEXT (GLuint program
, GLint location
, GLint x
);
1434 GL_APICALL
void GL_APIENTRY
glProgramUniform2iEXT (GLuint program
, GLint location
, GLint x
, GLint y
);
1435 GL_APICALL
void GL_APIENTRY
glProgramUniform3iEXT (GLuint program
, GLint location
, GLint x
, GLint y
, GLint z
);
1436 GL_APICALL
void GL_APIENTRY
glProgramUniform4iEXT (GLuint program
, GLint location
, GLint x
, GLint y
, GLint z
, GLint w
);
1437 GL_APICALL
void GL_APIENTRY
glProgramUniform1fEXT (GLuint program
, GLint location
, GLfloat x
);
1438 GL_APICALL
void GL_APIENTRY
glProgramUniform2fEXT (GLuint program
, GLint location
, GLfloat x
, GLfloat y
);
1439 GL_APICALL
void GL_APIENTRY
glProgramUniform3fEXT (GLuint program
, GLint location
, GLfloat x
, GLfloat y
, GLfloat z
);
1440 GL_APICALL
void GL_APIENTRY
glProgramUniform4fEXT (GLuint program
, GLint location
, GLfloat x
, GLfloat y
, GLfloat z
, GLfloat w
);
1441 GL_APICALL
void GL_APIENTRY
glProgramUniform1ivEXT (GLuint program
, GLint location
, GLsizei count
, const GLint
*value
);
1442 GL_APICALL
void GL_APIENTRY
glProgramUniform2ivEXT (GLuint program
, GLint location
, GLsizei count
, const GLint
*value
);
1443 GL_APICALL
void GL_APIENTRY
glProgramUniform3ivEXT (GLuint program
, GLint location
, GLsizei count
, const GLint
*value
);
1444 GL_APICALL
void GL_APIENTRY
glProgramUniform4ivEXT (GLuint program
, GLint location
, GLsizei count
, const GLint
*value
);
1445 GL_APICALL
void GL_APIENTRY
glProgramUniform1fvEXT (GLuint program
, GLint location
, GLsizei count
, const GLfloat
*value
);
1446 GL_APICALL
void GL_APIENTRY
glProgramUniform2fvEXT (GLuint program
, GLint location
, GLsizei count
, const GLfloat
*value
);
1447 GL_APICALL
void GL_APIENTRY
glProgramUniform3fvEXT (GLuint program
, GLint location
, GLsizei count
, const GLfloat
*value
);
1448 GL_APICALL
void GL_APIENTRY
glProgramUniform4fvEXT (GLuint program
, GLint location
, GLsizei count
, const GLfloat
*value
);
1449 GL_APICALL
void GL_APIENTRY
glProgramUniformMatrix2fvEXT (GLuint program
, GLint location
, GLsizei count
, GLboolean transpose
, const GLfloat
*value
);
1450 GL_APICALL
void GL_APIENTRY
glProgramUniformMatrix3fvEXT (GLuint program
, GLint location
, GLsizei count
, GLboolean transpose
, const GLfloat
*value
);
1451 GL_APICALL
void GL_APIENTRY
glProgramUniformMatrix4fvEXT (GLuint program
, GLint location
, GLsizei count
, GLboolean transpose
, const GLfloat
*value
);
1452 GL_APICALL
void GL_APIENTRY
glValidateProgramPipelineEXT (GLuint pipeline
);
1453 GL_APICALL
void GL_APIENTRY
glGetProgramPipelineInfoLogEXT (GLuint pipeline
, GLsizei bufSize
, GLsizei
*length
, GLchar
*infoLog
);
1455 typedef void (GL_APIENTRYP PFNGLUSEPROGRAMSTAGESEXTPROC
) (GLuint pipeline
, GLbitfield stages
, GLuint program
);
1456 typedef void (GL_APIENTRYP PFNGLACTIVESHADERPROGRAMEXTPROC
) (GLuint pipeline
, GLuint program
);
1457 typedef GLuint (GL_APIENTRYP PFNGLCREATESHADERPROGRAMVEXTPROC
) (GLenum type
, GLsizei count
, const GLchar
**strings
);
1458 typedef void (GL_APIENTRYP PFNGLBINDPROGRAMPIPELINEEXTPROC
) (GLuint pipeline
);
1459 typedef void (GL_APIENTRYP PFNGLDELETEPROGRAMPIPELINESEXTPROC
) (GLsizei n
, const GLuint
*pipelines
);
1460 typedef void (GL_APIENTRYP PFNGLGENPROGRAMPIPELINESEXTPROC
) (GLsizei n
, GLuint
*pipelines
);
1461 typedef GLboolean (GL_APIENTRYP PFNGLISPROGRAMPIPELINEEXTPROC
) (GLuint pipeline
);
1462 typedef void (GL_APIENTRYP PFNGLPROGRAMPARAMETERIEXTPROC
) (GLuint program
, GLenum pname
, GLint value
);
1463 typedef void (GL_APIENTRYP PFNGLGETPROGRAMPIPELINEIVEXTPROC
) (GLuint pipeline
, GLenum pname
, GLint
*params
);
1464 typedef void (GL_APIENTRYP PFNGLPROGRAMUNIFORM1IEXTPROC
) (GLuint program
, GLint location
, GLint x
);
1465 typedef void (GL_APIENTRYP PFNGLPROGRAMUNIFORM2IEXTPROC
) (GLuint program
, GLint location
, GLint x
, GLint y
);
1466 typedef void (GL_APIENTRYP PFNGLPROGRAMUNIFORM3IEXTPROC
) (GLuint program
, GLint location
, GLint x
, GLint y
, GLint z
);
1467 typedef void (GL_APIENTRYP PFNGLPROGRAMUNIFORM4IEXTPROC
) (GLuint program
, GLint location
, GLint x
, GLint y
, GLint z
, GLint w
);
1468 typedef void (GL_APIENTRYP PFNGLPROGRAMUNIFORM1FEXTPROC
) (GLuint program
, GLint location
, GLfloat x
);
1469 typedef void (GL_APIENTRYP PFNGLPROGRAMUNIFORM2FEXTPROC
) (GLuint program
, GLint location
, GLfloat x
, GLfloat y
);
1470 typedef void (GL_APIENTRYP PFNGLPROGRAMUNIFORM3FEXTPROC
) (GLuint program
, GLint location
, GLfloat x
, GLfloat y
, GLfloat z
);
1471 typedef void (GL_APIENTRYP PFNGLPROGRAMUNIFORM4FEXTPROC
) (GLuint program
, GLint location
, GLfloat x
, GLfloat y
, GLfloat z
, GLfloat w
);
1472 typedef void (GL_APIENTRYP PFNGLPROGRAMUNIFORM1IVEXTPROC
) (GLuint program
, GLint location
, GLsizei count
, const GLint
*value
);
1473 typedef void (GL_APIENTRYP PFNGLPROGRAMUNIFORM2IVEXTPROC
) (GLuint program
, GLint location
, GLsizei count
, const GLint
*value
);
1474 typedef void (GL_APIENTRYP PFNGLPROGRAMUNIFORM3IVEXTPROC
) (GLuint program
, GLint location
, GLsizei count
, const GLint
*value
);
1475 typedef void (GL_APIENTRYP PFNGLPROGRAMUNIFORM4IVEXTPROC
) (GLuint program
, GLint location
, GLsizei count
, const GLint
*value
);
1476 typedef void (GL_APIENTRYP PFNGLPROGRAMUNIFORM1FVEXTPROC
) (GLuint program
, GLint location
, GLsizei count
, const GLfloat
*value
);
1477 typedef void (GL_APIENTRYP PFNGLPROGRAMUNIFORM2FVEXTPROC
) (GLuint program
, GLint location
, GLsizei count
, const GLfloat
*value
);
1478 typedef void (GL_APIENTRYP PFNGLPROGRAMUNIFORM3FVEXTPROC
) (GLuint program
, GLint location
, GLsizei count
, const GLfloat
*value
);
1479 typedef void (GL_APIENTRYP PFNGLPROGRAMUNIFORM4FVEXTPROC
) (GLuint program
, GLint location
, GLsizei count
, const GLfloat
*value
);
1480 typedef void (GL_APIENTRYP PFNGLPROGRAMUNIFORMMATRIX2FVEXTPROC
) (GLuint program
, GLint location
, GLsizei count
, GLboolean transpose
, const GLfloat
*value
);
1481 typedef void (GL_APIENTRYP PFNGLPROGRAMUNIFORMMATRIX3FVEXTPROC
) (GLuint program
, GLint location
, GLsizei count
, GLboolean transpose
, const GLfloat
*value
);
1482 typedef void (GL_APIENTRYP PFNGLPROGRAMUNIFORMMATRIX4FVEXTPROC
) (GLuint program
, GLint location
, GLsizei count
, GLboolean transpose
, const GLfloat
*value
);
1483 typedef void (GL_APIENTRYP PFNGLVALIDATEPROGRAMPIPELINEEXTPROC
) (GLuint pipeline
);
1484 typedef void (GL_APIENTRYP PFNGLGETPROGRAMPIPELINEINFOLOGEXTPROC
) (GLuint pipeline
, GLsizei bufSize
, GLsizei
*length
, GLchar
*infoLog
);
1487 /* GL_EXT_shader_framebuffer_fetch */
1488 #ifndef GL_EXT_shader_framebuffer_fetch
1489 #define GL_EXT_shader_framebuffer_fetch 1
1492 /* GL_EXT_shader_texture_lod */
1493 #ifndef GL_EXT_shader_texture_lod
1494 #define GL_EXT_shader_texture_lod 1
1497 /* GL_EXT_shadow_samplers */
1498 #ifndef GL_EXT_shadow_samplers
1499 #define GL_EXT_shadow_samplers 1
1504 #define GL_EXT_sRGB 1
1507 /* GL_EXT_texture_compression_dxt1 */
1508 #ifndef GL_EXT_texture_compression_dxt1
1509 #define GL_EXT_texture_compression_dxt1 1
1512 /* GL_EXT_texture_filter_anisotropic */
1513 #ifndef GL_EXT_texture_filter_anisotropic
1514 #define GL_EXT_texture_filter_anisotropic 1
1517 /* GL_EXT_texture_format_BGRA8888 */
1518 #ifndef GL_EXT_texture_format_BGRA8888
1519 #define GL_EXT_texture_format_BGRA8888 1
1522 /* GL_EXT_texture_rg */
1523 #ifndef GL_EXT_texture_rg
1524 #define GL_EXT_texture_rg 1
1527 /* GL_EXT_texture_storage */
1528 #ifndef GL_EXT_texture_storage
1529 #define GL_EXT_texture_storage 1
1530 #ifdef GL_GLEXT_PROTOTYPES
1531 GL_APICALL
void GL_APIENTRY
glTexStorage1DEXT (GLenum target
, GLsizei levels
, GLenum internalformat
, GLsizei width
);
1532 GL_APICALL
void GL_APIENTRY
glTexStorage2DEXT (GLenum target
, GLsizei levels
, GLenum internalformat
, GLsizei width
, GLsizei height
);
1533 GL_APICALL
void GL_APIENTRY
glTexStorage3DEXT (GLenum target
, GLsizei levels
, GLenum internalformat
, GLsizei width
, GLsizei height
, GLsizei depth
);
1534 GL_APICALL
void GL_APIENTRY
glTextureStorage1DEXT (GLuint texture
, GLenum target
, GLsizei levels
, GLenum internalformat
, GLsizei width
);
1535 GL_APICALL
void GL_APIENTRY
glTextureStorage2DEXT (GLuint texture
, GLenum target
, GLsizei levels
, GLenum internalformat
, GLsizei width
, GLsizei height
);
1536 GL_APICALL
void GL_APIENTRY
glTextureStorage3DEXT (GLuint texture
, GLenum target
, GLsizei levels
, GLenum internalformat
, GLsizei width
, GLsizei height
, GLsizei depth
);
1538 typedef void (GL_APIENTRYP PFNGLTEXSTORAGE1DEXTPROC
) (GLenum target
, GLsizei levels
, GLenum internalformat
, GLsizei width
);
1539 typedef void (GL_APIENTRYP PFNGLTEXSTORAGE2DEXTPROC
) (GLenum target
, GLsizei levels
, GLenum internalformat
, GLsizei width
, GLsizei height
);
1540 typedef void (GL_APIENTRYP PFNGLTEXSTORAGE3DEXTPROC
) (GLenum target
, GLsizei levels
, GLenum internalformat
, GLsizei width
, GLsizei height
, GLsizei depth
);
1541 typedef void (GL_APIENTRYP PFNGLTEXTURESTORAGE1DEXTPROC
) (GLuint texture
, GLenum target
, GLsizei levels
, GLenum internalformat
, GLsizei width
);
1542 typedef void (GL_APIENTRYP PFNGLTEXTURESTORAGE2DEXTPROC
) (GLuint texture
, GLenum target
, GLsizei levels
, GLenum internalformat
, GLsizei width
, GLsizei height
);
1543 typedef void (GL_APIENTRYP PFNGLTEXTURESTORAGE3DEXTPROC
) (GLuint texture
, GLenum target
, GLsizei levels
, GLenum internalformat
, GLsizei width
, GLsizei height
, GLsizei depth
);
1546 /* GL_EXT_texture_type_2_10_10_10_REV */
1547 #ifndef GL_EXT_texture_type_2_10_10_10_REV
1548 #define GL_EXT_texture_type_2_10_10_10_REV 1
1551 /* GL_EXT_unpack_subimage */
1552 #ifndef GL_EXT_unpack_subimage
1553 #define GL_EXT_unpack_subimage 1
1556 /*------------------------------------------------------------------------*
1557 * DMP extension functions
1558 *------------------------------------------------------------------------*/
1560 /* GL_DMP_shader_binary */
1561 #ifndef GL_DMP_shader_binary
1562 #define GL_DMP_shader_binary 1
1565 /*------------------------------------------------------------------------*
1566 * FJ extension functions
1567 *------------------------------------------------------------------------*/
1569 /* GL_FJ_shader_binary_GCCSO */
1570 #ifndef GL_FJ_shader_binary_GCCSO
1571 #define GL_FJ_shader_binary_GCCSO 1
1574 /*------------------------------------------------------------------------*
1575 * IMG extension functions
1576 *------------------------------------------------------------------------*/
1578 /* GL_IMG_program_binary */
1579 #ifndef GL_IMG_program_binary
1580 #define GL_IMG_program_binary 1
1583 /* GL_IMG_read_format */
1584 #ifndef GL_IMG_read_format
1585 #define GL_IMG_read_format 1
1588 /* GL_IMG_shader_binary */
1589 #ifndef GL_IMG_shader_binary
1590 #define GL_IMG_shader_binary 1
1593 /* GL_IMG_texture_compression_pvrtc */
1594 #ifndef GL_IMG_texture_compression_pvrtc
1595 #define GL_IMG_texture_compression_pvrtc 1
1598 /* GL_IMG_multisampled_render_to_texture */
1599 #ifndef GL_IMG_multisampled_render_to_texture
1600 #define GL_IMG_multisampled_render_to_texture 1
1601 #ifdef GL_GLEXT_PROTOTYPES
1602 GL_APICALL
void GL_APIENTRY
glRenderbufferStorageMultisampleIMG (GLenum
, GLsizei
, GLenum
, GLsizei
, GLsizei
);
1603 GL_APICALL
void GL_APIENTRY
glFramebufferTexture2DMultisampleIMG (GLenum
, GLenum
, GLenum
, GLuint
, GLint
, GLsizei
);
1605 typedef void (GL_APIENTRYP PFNGLRENDERBUFFERSTORAGEMULTISAMPLEIMGPROC
) (GLenum target
, GLsizei samples
, GLenum internalformat
, GLsizei width
, GLsizei height
);
1606 typedef void (GL_APIENTRYP PFNGLFRAMEBUFFERTEXTURE2DMULTISAMPLEIMGPROC
) (GLenum target
, GLenum attachment
, GLenum textarget
, GLuint texture
, GLint level
, GLsizei samples
);
1609 /*------------------------------------------------------------------------*
1610 * NV extension functions
1611 *------------------------------------------------------------------------*/
1613 /* GL_NV_coverage_sample */
1614 #ifndef GL_NV_coverage_sample
1615 #define GL_NV_coverage_sample 1
1616 #ifdef GL_GLEXT_PROTOTYPES
1617 GL_APICALL
void GL_APIENTRY
glCoverageMaskNV (GLboolean mask
);
1618 GL_APICALL
void GL_APIENTRY
glCoverageOperationNV (GLenum operation
);
1620 typedef void (GL_APIENTRYP PFNGLCOVERAGEMASKNVPROC
) (GLboolean mask
);
1621 typedef void (GL_APIENTRYP PFNGLCOVERAGEOPERATIONNVPROC
) (GLenum operation
);
1624 /* GL_NV_depth_nonlinear */
1625 #ifndef GL_NV_depth_nonlinear
1626 #define GL_NV_depth_nonlinear 1
1629 /* GL_NV_draw_buffers */
1630 #ifndef GL_NV_draw_buffers
1631 #define GL_NV_draw_buffers 1
1632 #ifdef GL_GLEXT_PROTOTYPES
1633 GL_APICALL
void GL_APIENTRY
glDrawBuffersNV (GLsizei n
, const GLenum
*bufs
);
1635 typedef void (GL_APIENTRYP PFNGLDRAWBUFFERSNVPROC
) (GLsizei n
, const GLenum
*bufs
);
1638 /* GL_NV_fbo_color_attachments */
1639 #ifndef GL_NV_fbo_color_attachments
1640 #define GL_NV_fbo_color_attachments 1
1645 #define GL_NV_fence 1
1646 #ifdef GL_GLEXT_PROTOTYPES
1647 GL_APICALL
void GL_APIENTRY
glDeleteFencesNV (GLsizei
, const GLuint
*);
1648 GL_APICALL
void GL_APIENTRY
glGenFencesNV (GLsizei
, GLuint
*);
1649 GL_APICALL GLboolean GL_APIENTRY
glIsFenceNV (GLuint
);
1650 GL_APICALL GLboolean GL_APIENTRY
glTestFenceNV (GLuint
);
1651 GL_APICALL
void GL_APIENTRY
glGetFenceivNV (GLuint
, GLenum
, GLint
*);
1652 GL_APICALL
void GL_APIENTRY
glFinishFenceNV (GLuint
);
1653 GL_APICALL
void GL_APIENTRY
glSetFenceNV (GLuint
, GLenum
);
1655 typedef void (GL_APIENTRYP PFNGLDELETEFENCESNVPROC
) (GLsizei n
, const GLuint
*fences
);
1656 typedef void (GL_APIENTRYP PFNGLGENFENCESNVPROC
) (GLsizei n
, GLuint
*fences
);
1657 typedef GLboolean (GL_APIENTRYP PFNGLISFENCENVPROC
) (GLuint fence
);
1658 typedef GLboolean (GL_APIENTRYP PFNGLTESTFENCENVPROC
) (GLuint fence
);
1659 typedef void (GL_APIENTRYP PFNGLGETFENCEIVNVPROC
) (GLuint fence
, GLenum pname
, GLint
*params
);
1660 typedef void (GL_APIENTRYP PFNGLFINISHFENCENVPROC
) (GLuint fence
);
1661 typedef void (GL_APIENTRYP PFNGLSETFENCENVPROC
) (GLuint fence
, GLenum condition
);
1664 /* GL_NV_read_buffer */
1665 #ifndef GL_NV_read_buffer
1666 #define GL_NV_read_buffer 1
1667 #ifdef GL_GLEXT_PROTOTYPES
1668 GL_APICALL
void GL_APIENTRY
glReadBufferNV (GLenum mode
);
1670 typedef void (GL_APIENTRYP PFNGLREADBUFFERNVPROC
) (GLenum mode
);
1673 /* GL_NV_read_buffer_front */
1674 #ifndef GL_NV_read_buffer_front
1675 #define GL_NV_read_buffer_front 1
1678 /* GL_NV_read_depth */
1679 #ifndef GL_NV_read_depth
1680 #define GL_NV_read_depth 1
1683 /* GL_NV_read_depth_stencil */
1684 #ifndef GL_NV_read_depth_stencil
1685 #define GL_NV_read_depth_stencil 1
1688 /* GL_NV_read_stencil */
1689 #ifndef GL_NV_read_stencil
1690 #define GL_NV_read_stencil 1
1693 /* GL_NV_texture_compression_s3tc_update */
1694 #ifndef GL_NV_texture_compression_s3tc_update
1695 #define GL_NV_texture_compression_s3tc_update 1
1698 /* GL_NV_texture_npot_2D_mipmap */
1699 #ifndef GL_NV_texture_npot_2D_mipmap
1700 #define GL_NV_texture_npot_2D_mipmap 1
1703 /*------------------------------------------------------------------------*
1704 * QCOM extension functions
1705 *------------------------------------------------------------------------*/
1707 /* GL_QCOM_alpha_test */
1708 #ifndef GL_QCOM_alpha_test
1709 #define GL_QCOM_alpha_test 1
1710 #ifdef GL_GLEXT_PROTOTYPES
1711 GL_APICALL
void GL_APIENTRY
glAlphaFuncQCOM (GLenum func
, GLclampf ref
);
1713 typedef void (GL_APIENTRYP PFNGLALPHAFUNCQCOMPROC
) (GLenum func
, GLclampf ref
);
1716 /* GL_QCOM_binning_control */
1717 #ifndef GL_QCOM_binning_control
1718 #define GL_QCOM_binning_control 1
1721 /* GL_QCOM_driver_control */
1722 #ifndef GL_QCOM_driver_control
1723 #define GL_QCOM_driver_control 1
1724 #ifdef GL_GLEXT_PROTOTYPES
1725 GL_APICALL
void GL_APIENTRY
glGetDriverControlsQCOM (GLint
*num
, GLsizei size
, GLuint
*driverControls
);
1726 GL_APICALL
void GL_APIENTRY
glGetDriverControlStringQCOM (GLuint driverControl
, GLsizei bufSize
, GLsizei
*length
, GLchar
*driverControlString
);
1727 GL_APICALL
void GL_APIENTRY
glEnableDriverControlQCOM (GLuint driverControl
);
1728 GL_APICALL
void GL_APIENTRY
glDisableDriverControlQCOM (GLuint driverControl
);
1730 typedef void (GL_APIENTRYP PFNGLGETDRIVERCONTROLSQCOMPROC
) (GLint
*num
, GLsizei size
, GLuint
*driverControls
);
1731 typedef void (GL_APIENTRYP PFNGLGETDRIVERCONTROLSTRINGQCOMPROC
) (GLuint driverControl
, GLsizei bufSize
, GLsizei
*length
, GLchar
*driverControlString
);
1732 typedef void (GL_APIENTRYP PFNGLENABLEDRIVERCONTROLQCOMPROC
) (GLuint driverControl
);
1733 typedef void (GL_APIENTRYP PFNGLDISABLEDRIVERCONTROLQCOMPROC
) (GLuint driverControl
);
1736 /* GL_QCOM_extended_get */
1737 #ifndef GL_QCOM_extended_get
1738 #define GL_QCOM_extended_get 1
1739 #ifdef GL_GLEXT_PROTOTYPES
1740 GL_APICALL
void GL_APIENTRY
glExtGetTexturesQCOM (GLuint
*textures
, GLint maxTextures
, GLint
*numTextures
);
1741 GL_APICALL
void GL_APIENTRY
glExtGetBuffersQCOM (GLuint
*buffers
, GLint maxBuffers
, GLint
*numBuffers
);
1742 GL_APICALL
void GL_APIENTRY
glExtGetRenderbuffersQCOM (GLuint
*renderbuffers
, GLint maxRenderbuffers
, GLint
*numRenderbuffers
);
1743 GL_APICALL
void GL_APIENTRY
glExtGetFramebuffersQCOM (GLuint
*framebuffers
, GLint maxFramebuffers
, GLint
*numFramebuffers
);
1744 GL_APICALL
void GL_APIENTRY
glExtGetTexLevelParameterivQCOM (GLuint texture
, GLenum face
, GLint level
, GLenum pname
, GLint
*params
);
1745 GL_APICALL
void GL_APIENTRY
glExtTexObjectStateOverrideiQCOM (GLenum target
, GLenum pname
, GLint param
);
1746 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
);
1747 GL_APICALL
void GL_APIENTRY
glExtGetBufferPointervQCOM (GLenum target
, GLvoid
**params
);
1749 typedef void (GL_APIENTRYP PFNGLEXTGETTEXTURESQCOMPROC
) (GLuint
*textures
, GLint maxTextures
, GLint
*numTextures
);
1750 typedef void (GL_APIENTRYP PFNGLEXTGETBUFFERSQCOMPROC
) (GLuint
*buffers
, GLint maxBuffers
, GLint
*numBuffers
);
1751 typedef void (GL_APIENTRYP PFNGLEXTGETRENDERBUFFERSQCOMPROC
) (GLuint
*renderbuffers
, GLint maxRenderbuffers
, GLint
*numRenderbuffers
);
1752 typedef void (GL_APIENTRYP PFNGLEXTGETFRAMEBUFFERSQCOMPROC
) (GLuint
*framebuffers
, GLint maxFramebuffers
, GLint
*numFramebuffers
);
1753 typedef void (GL_APIENTRYP PFNGLEXTGETTEXLEVELPARAMETERIVQCOMPROC
) (GLuint texture
, GLenum face
, GLint level
, GLenum pname
, GLint
*params
);
1754 typedef void (GL_APIENTRYP PFNGLEXTTEXOBJECTSTATEOVERRIDEIQCOMPROC
) (GLenum target
, GLenum pname
, GLint param
);
1755 typedef void (GL_APIENTRYP PFNGLEXTGETTEXSUBIMAGEQCOMPROC
) (GLenum target
, GLint level
, GLint xoffset
, GLint yoffset
, GLint zoffset
, GLsizei width
, GLsizei height
, GLsizei depth
, GLenum format
, GLenum type
, GLvoid
*texels
);
1756 typedef void (GL_APIENTRYP PFNGLEXTGETBUFFERPOINTERVQCOMPROC
) (GLenum target
, GLvoid
**params
);
1759 /* GL_QCOM_extended_get2 */
1760 #ifndef GL_QCOM_extended_get2
1761 #define GL_QCOM_extended_get2 1
1762 #ifdef GL_GLEXT_PROTOTYPES
1763 GL_APICALL
void GL_APIENTRY
glExtGetShadersQCOM (GLuint
*shaders
, GLint maxShaders
, GLint
*numShaders
);
1764 GL_APICALL
void GL_APIENTRY
glExtGetProgramsQCOM (GLuint
*programs
, GLint maxPrograms
, GLint
*numPrograms
);
1765 GL_APICALL GLboolean GL_APIENTRY
glExtIsProgramBinaryQCOM (GLuint program
);
1766 GL_APICALL
void GL_APIENTRY
glExtGetProgramBinarySourceQCOM (GLuint program
, GLenum shadertype
, GLchar
*source
, GLint
*length
);
1768 typedef void (GL_APIENTRYP PFNGLEXTGETSHADERSQCOMPROC
) (GLuint
*shaders
, GLint maxShaders
, GLint
*numShaders
);
1769 typedef void (GL_APIENTRYP PFNGLEXTGETPROGRAMSQCOMPROC
) (GLuint
*programs
, GLint maxPrograms
, GLint
*numPrograms
);
1770 typedef GLboolean (GL_APIENTRYP PFNGLEXTISPROGRAMBINARYQCOMPROC
) (GLuint program
);
1771 typedef void (GL_APIENTRYP PFNGLEXTGETPROGRAMBINARYSOURCEQCOMPROC
) (GLuint program
, GLenum shadertype
, GLchar
*source
, GLint
*length
);
1774 /* GL_QCOM_perfmon_global_mode */
1775 #ifndef GL_QCOM_perfmon_global_mode
1776 #define GL_QCOM_perfmon_global_mode 1
1779 /* GL_QCOM_writeonly_rendering */
1780 #ifndef GL_QCOM_writeonly_rendering
1781 #define GL_QCOM_writeonly_rendering 1
1784 /* GL_QCOM_tiled_rendering */
1785 #ifndef GL_QCOM_tiled_rendering
1786 #define GL_QCOM_tiled_rendering 1
1787 #ifdef GL_GLEXT_PROTOTYPES
1788 GL_APICALL
void GL_APIENTRY
glStartTilingQCOM (GLuint x
, GLuint y
, GLuint width
, GLuint height
, GLbitfield preserveMask
);
1789 GL_APICALL
void GL_APIENTRY
glEndTilingQCOM (GLbitfield preserveMask
);
1791 typedef void (GL_APIENTRYP PFNGLSTARTTILINGQCOMPROC
) (GLuint x
, GLuint y
, GLuint width
, GLuint height
, GLbitfield preserveMask
);
1792 typedef void (GL_APIENTRYP PFNGLENDTILINGQCOMPROC
) (GLbitfield preserveMask
);
1795 /*------------------------------------------------------------------------*
1796 * VIV extension tokens
1797 *------------------------------------------------------------------------*/
1799 /* GL_VIV_shader_binary */
1800 #ifndef GL_VIV_shader_binary
1801 #define GL_VIV_shader_binary 1
1808 #endif /* __gl2ext_h_ */