SDL_opengles2_gl2ext.h (98695B)
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 7extern "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 */ 27typedef khronos_int64_t GLint64; 28typedef khronos_uint64_t GLuint64; 29typedef 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 71typedef 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 200typedef void (GL_APIENTRYP GLDEBUGPROCKHR)(GLenum source,GLenum type,GLuint id,GLenum severity,GLsizei length,const GLchar *message,const void *userParam); 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 1049GL_APICALL void GL_APIENTRY glEGLImageTargetTexture2DOES (GLenum target, GLeglImageOES image); 1050GL_APICALL void GL_APIENTRY glEGLImageTargetRenderbufferStorageOES (GLenum target, GLeglImageOES image); 1051#endif 1052typedef void (GL_APIENTRYP PFNGLEGLIMAGETARGETTEXTURE2DOESPROC) (GLenum target, GLeglImageOES image); 1053typedef 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 1081GL_APICALL void GL_APIENTRY glGetProgramBinaryOES (GLuint program, GLsizei bufSize, GLsizei *length, GLenum *binaryFormat, GLvoid *binary); 1082GL_APICALL void GL_APIENTRY glProgramBinaryOES (GLuint program, GLenum binaryFormat, const GLvoid *binary, GLint length); 1083#endif 1084typedef void (GL_APIENTRYP PFNGLGETPROGRAMBINARYOESPROC) (GLuint program, GLsizei bufSize, GLsizei *length, GLenum *binaryFormat, GLvoid *binary); 1085typedef 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 1092GL_APICALL void* GL_APIENTRY glMapBufferOES (GLenum target, GLenum access); 1093GL_APICALL GLboolean GL_APIENTRY glUnmapBufferOES (GLenum target); 1094GL_APICALL void GL_APIENTRY glGetBufferPointervOES (GLenum target, GLenum pname, GLvoid **params); 1095#endif 1096typedef void* (GL_APIENTRYP PFNGLMAPBUFFEROESPROC) (GLenum target, GLenum access); 1097typedef GLboolean (GL_APIENTRYP PFNGLUNMAPBUFFEROESPROC) (GLenum target); 1098typedef 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 1139GL_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); 1140GL_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); 1141GL_APICALL void GL_APIENTRY glCopyTexSubImage3DOES (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height); 1142GL_APICALL void GL_APIENTRY glCompressedTexImage3DOES (GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, const GLvoid* data); 1143GL_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); 1144GL_APICALL void GL_APIENTRY glFramebufferTexture3DOES (GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLint zoffset); 1145#endif 1146typedef 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); 1147typedef 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); 1148typedef void (GL_APIENTRYP PFNGLCOPYTEXSUBIMAGE3DOESPROC) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height); 1149typedef void (GL_APIENTRYP PFNGLCOMPRESSEDTEXIMAGE3DOESPROC) (GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, const GLvoid* data); 1150typedef 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); 1151typedef 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 1183GL_APICALL void GL_APIENTRY glBindVertexArrayOES (GLuint array); 1184GL_APICALL void GL_APIENTRY glDeleteVertexArraysOES (GLsizei n, const GLuint *arrays); 1185GL_APICALL void GL_APIENTRY glGenVertexArraysOES (GLsizei n, GLuint *arrays); 1186GL_APICALL GLboolean GL_APIENTRY glIsVertexArrayOES (GLuint array); 1187#endif 1188typedef void (GL_APIENTRYP PFNGLBINDVERTEXARRAYOESPROC) (GLuint array); 1189typedef void (GL_APIENTRYP PFNGLDELETEVERTEXARRAYSOESPROC) (GLsizei n, const GLuint *arrays); 1190typedef void (GL_APIENTRYP PFNGLGENVERTEXARRAYSOESPROC) (GLsizei n, GLuint *arrays); 1191typedef 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 1211GL_APICALL void GL_APIENTRY glDebugMessageControlKHR (GLenum source, GLenum type, GLenum severity, GLsizei count, const GLuint *ids, GLboolean enabled); 1212GL_APICALL void GL_APIENTRY glDebugMessageInsertKHR (GLenum source, GLenum type, GLuint id, GLenum severity, GLsizei length, const GLchar *buf); 1213GL_APICALL void GL_APIENTRY glDebugMessageCallbackKHR (GLDEBUGPROCKHR callback, const void *userParam); 1214GL_APICALL GLuint GL_APIENTRY glGetDebugMessageLogKHR (GLuint count, GLsizei bufsize, GLenum *sources, GLenum *types, GLuint *ids, GLenum *severities, GLsizei *lengths, GLchar *messageLog); 1215GL_APICALL void GL_APIENTRY glPushDebugGroupKHR (GLenum source, GLuint id, GLsizei length, const GLchar *message); 1216GL_APICALL void GL_APIENTRY glPopDebugGroupKHR (void); 1217GL_APICALL void GL_APIENTRY glObjectLabelKHR (GLenum identifier, GLuint name, GLsizei length, const GLchar *label); 1218GL_APICALL void GL_APIENTRY glGetObjectLabelKHR (GLenum identifier, GLuint name, GLsizei bufSize, GLsizei *length, GLchar *label); 1219GL_APICALL void GL_APIENTRY glObjectPtrLabelKHR (const void *ptr, GLsizei length, const GLchar *label); 1220GL_APICALL void GL_APIENTRY glGetObjectPtrLabelKHR (const void *ptr, GLsizei bufSize, GLsizei *length, GLchar *label); 1221GL_APICALL void GL_APIENTRY glGetPointervKHR (GLenum pname, GLvoid **params); 1222#endif 1223typedef void (GL_APIENTRYP PFNGLDEBUGMESSAGECONTROLKHRPROC) (GLenum source, GLenum type, GLenum severity, GLsizei count, const GLuint *ids, GLboolean enabled); 1224typedef void (GL_APIENTRYP PFNGLDEBUGMESSAGEINSERTKHRPROC) (GLenum source, GLenum type, GLuint id, GLenum severity, GLsizei length, const GLchar *buf); 1225typedef void (GL_APIENTRYP PFNGLDEBUGMESSAGECALLBACKKHRPROC) (GLDEBUGPROCKHR callback, const void *userParam); 1226typedef GLuint (GL_APIENTRYP PFNGLGETDEBUGMESSAGELOGKHRPROC) (GLuint count, GLsizei bufsize, GLenum *sources, GLenum *types, GLuint *ids, GLenum *severities, GLsizei *lengths, GLchar *messageLog); 1227typedef void (GL_APIENTRYP PFNGLPUSHDEBUGGROUPKHRPROC) (GLenum source, GLuint id, GLsizei length, const GLchar *message); 1228typedef void (GL_APIENTRYP PFNGLPOPDEBUGGROUPKHRPROC) (void); 1229typedef void (GL_APIENTRYP PFNGLOBJECTLABELKHRPROC) (GLenum identifier, GLuint name, GLsizei length, const GLchar *label); 1230typedef void (GL_APIENTRYP PFNGLGETOBJECTLABELKHRPROC) (GLenum identifier, GLuint name, GLsizei bufSize, GLsizei *length, GLchar *label); 1231typedef void (GL_APIENTRYP PFNGLOBJECTPTRLABELKHRPROC) (const void *ptr, GLsizei length, const GLchar *label); 1232typedef void (GL_APIENTRYP PFNGLGETOBJECTPTRLABELKHRPROC) (const void *ptr, GLsizei bufSize, GLsizei *length, GLchar *label); 1233typedef 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 1259GL_APICALL void GL_APIENTRY glGetPerfMonitorGroupsAMD (GLint *numGroups, GLsizei groupsSize, GLuint *groups); 1260GL_APICALL void GL_APIENTRY glGetPerfMonitorCountersAMD (GLuint group, GLint *numCounters, GLint *maxActiveCounters, GLsizei counterSize, GLuint *counters); 1261GL_APICALL void GL_APIENTRY glGetPerfMonitorGroupStringAMD (GLuint group, GLsizei bufSize, GLsizei *length, GLchar *groupString); 1262GL_APICALL void GL_APIENTRY glGetPerfMonitorCounterStringAMD (GLuint group, GLuint counter, GLsizei bufSize, GLsizei *length, GLchar *counterString); 1263GL_APICALL void GL_APIENTRY glGetPerfMonitorCounterInfoAMD (GLuint group, GLuint counter, GLenum pname, GLvoid *data); 1264GL_APICALL void GL_APIENTRY glGenPerfMonitorsAMD (GLsizei n, GLuint *monitors); 1265GL_APICALL void GL_APIENTRY glDeletePerfMonitorsAMD (GLsizei n, GLuint *monitors); 1266GL_APICALL void GL_APIENTRY glSelectPerfMonitorCountersAMD (GLuint monitor, GLboolean enable, GLuint group, GLint numCounters, GLuint *countersList); 1267GL_APICALL void GL_APIENTRY glBeginPerfMonitorAMD (GLuint monitor); 1268GL_APICALL void GL_APIENTRY glEndPerfMonitorAMD (GLuint monitor); 1269GL_APICALL void GL_APIENTRY glGetPerfMonitorCounterDataAMD (GLuint monitor, GLenum pname, GLsizei dataSize, GLuint *data, GLint *bytesWritten); 1270#endif 1271typedef void (GL_APIENTRYP PFNGLGETPERFMONITORGROUPSAMDPROC) (GLint *numGroups, GLsizei groupsSize, GLuint *groups); 1272typedef void (GL_APIENTRYP PFNGLGETPERFMONITORCOUNTERSAMDPROC) (GLuint group, GLint *numCounters, GLint *maxActiveCounters, GLsizei counterSize, GLuint *counters); 1273typedef void (GL_APIENTRYP PFNGLGETPERFMONITORGROUPSTRINGAMDPROC) (GLuint group, GLsizei bufSize, GLsizei *length, GLchar *groupString); 1274typedef void (GL_APIENTRYP PFNGLGETPERFMONITORCOUNTERSTRINGAMDPROC) (GLuint group, GLuint counter, GLsizei bufSize, GLsizei *length, GLchar *counterString); 1275typedef void (GL_APIENTRYP PFNGLGETPERFMONITORCOUNTERINFOAMDPROC) (GLuint group, GLuint counter, GLenum pname, GLvoid *data); 1276typedef void (GL_APIENTRYP PFNGLGENPERFMONITORSAMDPROC) (GLsizei n, GLuint *monitors); 1277typedef void (GL_APIENTRYP PFNGLDELETEPERFMONITORSAMDPROC) (GLsizei n, GLuint *monitors); 1278typedef void (GL_APIENTRYP PFNGLSELECTPERFMONITORCOUNTERSAMDPROC) (GLuint monitor, GLboolean enable, GLuint group, GLint numCounters, GLuint *countersList); 1279typedef void (GL_APIENTRYP PFNGLBEGINPERFMONITORAMDPROC) (GLuint monitor); 1280typedef void (GL_APIENTRYP PFNGLENDPERFMONITORAMDPROC) (GLuint monitor); 1281typedef 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 1302GL_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); 1303#endif 1304typedef void (GL_APIENTRYP PFNGLBLITFRAMEBUFFERANGLEPROC) (GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter); 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 1311GL_APICALL void GL_APIENTRY glRenderbufferStorageMultisampleANGLE (GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height); 1312#endif 1313typedef 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 1319GL_APICALL void GL_APIENTRY glDrawArraysInstancedANGLE (GLenum mode, GLint first, GLsizei count, GLsizei primcount); 1320GL_APICALL void GL_APIENTRY glDrawElementsInstancedANGLE (GLenum mode, GLsizei count, GLenum type, const void *indices, GLsizei primcount); 1321GL_APICALL void GL_APIENTRY glVertexAttribDivisorANGLE (GLuint index, GLuint divisor); 1322#endif 1323typedef void (GL_APIENTRYP PFNGLDRAWARRAYSINSTANCEDANGLEPROC) (GLenum mode, GLint first, GLsizei count, GLsizei primcount); 1324typedef void (GL_APIENTRYP PFNGLDRAWELEMENTSINSTANCEDANGLEPROC) (GLenum mode, GLsizei count, GLenum type, const void *indices, GLsizei primcount); 1325typedef 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 1356GL_APICALL void GL_APIENTRY glGetTranslatedShaderSourceANGLE (GLuint shader, GLsizei bufsize, GLsizei *length, GLchar *source); 1357#endif 1358typedef 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 1369GL_APICALL void GL_APIENTRY glCopyTextureLevelsAPPLE (GLuint destinationTexture, GLuint sourceTexture, GLint sourceBaseLevel, GLsizei sourceLevelCount); 1370#endif 1371typedef 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 1378GL_APICALL void GL_APIENTRY glRenderbufferStorageMultisampleAPPLE (GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height); 1379GL_APICALL void GL_APIENTRY glResolveMultisampleFramebufferAPPLE (void); 1380#endif /* GL_GLEXT_PROTOTYPES */ 1381typedef void (GL_APIENTRYP PFNGLRENDERBUFFERSTORAGEMULTISAMPLEAPPLEPROC) (GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height); 1382typedef 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 1394GL_APICALL GLsync GL_APIENTRY glFenceSyncAPPLE (GLenum condition, GLbitfield flags); 1395GL_APICALL GLboolean GL_APIENTRY glIsSyncAPPLE (GLsync sync); 1396GL_APICALL void GL_APIENTRY glDeleteSyncAPPLE (GLsync sync); 1397GL_APICALL GLenum GL_APIENTRY glClientWaitSyncAPPLE (GLsync sync, GLbitfield flags, GLuint64 timeout); 1398GL_APICALL void GL_APIENTRY glWaitSyncAPPLE (GLsync sync, GLbitfield flags, GLuint64 timeout); 1399GL_APICALL void GL_APIENTRY glGetInteger64vAPPLE (GLenum pname, GLint64 *params); 1400GL_APICALL void GL_APIENTRY glGetSyncivAPPLE (GLsync sync, GLenum pname, GLsizei bufSize, GLsizei *length, GLint *values); 1401#endif 1402typedef GLsync (GL_APIENTRYP PFNGLFENCESYNCAPPLEPROC) (GLenum condition, GLbitfield flags); 1403typedef GLboolean (GL_APIENTRYP PFNGLISSYNCAPPLEPROC) (GLsync sync); 1404typedef void (GL_APIENTRYP PFNGLDELETESYNCAPPLEPROC) (GLsync sync); 1405typedef GLenum (GL_APIENTRYP PFNGLCLIENTWAITSYNCAPPLEPROC) (GLsync sync, GLbitfield flags, GLuint64 timeout); 1406typedef void (GL_APIENTRYP PFNGLWAITSYNCAPPLEPROC) (GLsync sync, GLbitfield flags, GLuint64 timeout); 1407typedef void (GL_APIENTRYP PFNGLGETINTEGER64VAPPLEPROC) (GLenum pname, GLint64 *params); 1408typedef 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 1458GL_APICALL void GL_APIENTRY glLabelObjectEXT (GLenum type, GLuint object, GLsizei length, const GLchar *label); 1459GL_APICALL void GL_APIENTRY glGetObjectLabelEXT (GLenum type, GLuint object, GLsizei bufSize, GLsizei *length, GLchar *label); 1460#endif 1461typedef void (GL_APIENTRYP PFNGLLABELOBJECTEXTPROC) (GLenum type, GLuint object, GLsizei length, const GLchar *label); 1462typedef 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 1469GL_APICALL void GL_APIENTRY glInsertEventMarkerEXT (GLsizei length, const GLchar *marker); 1470GL_APICALL void GL_APIENTRY glPushGroupMarkerEXT (GLsizei length, const GLchar *marker); 1471GL_APICALL void GL_APIENTRY glPopGroupMarkerEXT (void); 1472#endif 1473typedef void (GL_APIENTRYP PFNGLINSERTEVENTMARKEREXTPROC) (GLsizei length, const GLchar *marker); 1474typedef void (GL_APIENTRYP PFNGLPUSHGROUPMARKEREXTPROC) (GLsizei length, const GLchar *marker); 1475typedef 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 1482GL_APICALL void GL_APIENTRY glDiscardFramebufferEXT (GLenum target, GLsizei numAttachments, const GLenum *attachments); 1483#endif 1484typedef 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 1490GL_APICALL void GL_APIENTRY glGenQueriesEXT (GLsizei n, GLuint *ids); 1491GL_APICALL void GL_APIENTRY glDeleteQueriesEXT (GLsizei n, const GLuint *ids); 1492GL_APICALL GLboolean GL_APIENTRY glIsQueryEXT (GLuint id); 1493GL_APICALL void GL_APIENTRY glBeginQueryEXT (GLenum target, GLuint id); 1494GL_APICALL void GL_APIENTRY glEndQueryEXT (GLenum target); 1495GL_APICALL void GL_APIENTRY glQueryCounterEXT (GLuint id, GLenum target); 1496GL_APICALL void GL_APIENTRY glGetQueryivEXT (GLenum target, GLenum pname, GLint *params); 1497GL_APICALL void GL_APIENTRY glGetQueryObjectivEXT (GLuint id, GLenum pname, GLint *params); 1498GL_APICALL void GL_APIENTRY glGetQueryObjectuivEXT (GLuint id, GLenum pname, GLuint *params); 1499GL_APICALL void GL_APIENTRY glGetQueryObjecti64vEXT (GLuint id, GLenum pname, GLint64 *params); 1500GL_APICALL void GL_APIENTRY glGetQueryObjectui64vEXT (GLuint id, GLenum pname, GLuint64 *params); 1501#endif 1502typedef void (GL_APIENTRYP PFNGLGENQUERIESEXTPROC) (GLsizei n, GLuint *ids); 1503typedef void (GL_APIENTRYP PFNGLDELETEQUERIESEXTPROC) (GLsizei n, const GLuint *ids); 1504typedef GLboolean (GL_APIENTRYP PFNGLISQUERYEXTPROC) (GLuint id); 1505typedef void (GL_APIENTRYP PFNGLBEGINQUERYEXTPROC) (GLenum target, GLuint id); 1506typedef void (GL_APIENTRYP PFNGLENDQUERYEXTPROC) (GLenum target); 1507typedef void (GL_APIENTRYP PFNGLQUERYCOUNTEREXTPROC) (GLuint id, GLenum target); 1508typedef void (GL_APIENTRYP PFNGLGETQUERYIVEXTPROC) (GLenum target, GLenum pname, GLint *params); 1509typedef void (GL_APIENTRYP PFNGLGETQUERYOBJECTIVEXTPROC) (GLuint id, GLenum pname, GLint *params); 1510typedef void (GL_APIENTRYP PFNGLGETQUERYOBJECTUIVEXTPROC) (GLuint id, GLenum pname, GLuint *params); 1511typedef void (GL_APIENTRYP PFNGLGETQUERYOBJECTI64VEXTPROC) (GLuint id, GLenum pname, GLint64 *params); 1512typedef 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 1518GL_APICALL void GL_APIENTRY glDrawBuffersEXT (GLsizei n, const GLenum *bufs); 1519#endif 1520typedef 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 1527GL_APICALL void* GL_APIENTRY glMapBufferRangeEXT (GLenum target, GLintptr offset, GLsizeiptr length, GLbitfield access); 1528GL_APICALL void GL_APIENTRY glFlushMappedBufferRangeEXT (GLenum target, GLintptr offset, GLsizeiptr length); 1529#endif 1530typedef void* (GL_APIENTRYP PFNGLMAPBUFFERRANGEEXTPROC) (GLenum target, GLintptr offset, GLsizeiptr length, GLbitfield access); 1531typedef 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 1538GL_APICALL void GL_APIENTRY glRenderbufferStorageMultisampleEXT (GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height); 1539GL_APICALL void GL_APIENTRY glFramebufferTexture2DMultisampleEXT (GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLsizei samples); 1540#endif 1541typedef void (GL_APIENTRYP PFNGLRENDERBUFFERSTORAGEMULTISAMPLEEXTPROC) (GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height); 1542typedef 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 1549GL_APICALL void GL_APIENTRY glReadBufferIndexedEXT (GLenum src, GLint index); 1550GL_APICALL void GL_APIENTRY glDrawBuffersIndexedEXT (GLint n, const GLenum *location, const GLint *indices); 1551GL_APICALL void GL_APIENTRY glGetIntegeri_vEXT (GLenum target, GLuint index, GLint *data); 1552#endif 1553typedef void (GL_APIENTRYP PFNGLREADBUFFERINDEXEDEXTPROC) (GLenum src, GLint index); 1554typedef void (GL_APIENTRYP PFNGLDRAWBUFFERSINDEXEDEXTPROC) (GLint n, const GLenum *location, const GLint *indices); 1555typedef 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 1561GL_APICALL void GL_APIENTRY glMultiDrawArraysEXT (GLenum mode, const GLint *first, const GLsizei *count, GLsizei primcount); 1562GL_APICALL void GL_APIENTRY glMultiDrawElementsEXT (GLenum mode, const GLsizei *count, GLenum type, const GLvoid **indices, GLsizei primcount); 1563#endif /* GL_GLEXT_PROTOTYPES */ 1564typedef void (GL_APIENTRYP PFNGLMULTIDRAWARRAYSEXTPROC) (GLenum mode, const GLint *first, const GLsizei *count, GLsizei primcount); 1565typedef 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 1583GL_APICALL GLenum GL_APIENTRY glGetGraphicsResetStatusEXT (void); 1584GL_APICALL void GL_APIENTRY glReadnPixelsEXT (GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, GLsizei bufSize, GLvoid *data); 1585GL_APICALL void GL_APIENTRY glGetnUniformfvEXT (GLuint program, GLint location, GLsizei bufSize, GLfloat *params); 1586GL_APICALL void GL_APIENTRY glGetnUniformivEXT (GLuint program, GLint location, GLsizei bufSize, GLint *params); 1587#endif 1588typedef GLenum (GL_APIENTRYP PFNGLGETGRAPHICSRESETSTATUSEXTPROC) (void); 1589typedef void (GL_APIENTRYP PFNGLREADNPIXELSEXTPROC) (GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, GLsizei bufSize, GLvoid *data); 1590typedef void (GL_APIENTRYP PFNGLGETNUNIFORMFVEXTPROC) (GLuint program, GLint location, GLsizei bufSize, GLfloat *params); 1591typedef 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 1598GL_APICALL void GL_APIENTRY glUseProgramStagesEXT (GLuint pipeline, GLbitfield stages, GLuint program); 1599GL_APICALL void GL_APIENTRY glActiveShaderProgramEXT (GLuint pipeline, GLuint program); 1600GL_APICALL GLuint GL_APIENTRY glCreateShaderProgramvEXT (GLenum type, GLsizei count, const GLchar **strings); 1601GL_APICALL void GL_APIENTRY glBindProgramPipelineEXT (GLuint pipeline); 1602GL_APICALL void GL_APIENTRY glDeleteProgramPipelinesEXT (GLsizei n, const GLuint *pipelines); 1603GL_APICALL void GL_APIENTRY glGenProgramPipelinesEXT (GLsizei n, GLuint *pipelines); 1604GL_APICALL GLboolean GL_APIENTRY glIsProgramPipelineEXT (GLuint pipeline); 1605GL_APICALL void GL_APIENTRY glProgramParameteriEXT (GLuint program, GLenum pname, GLint value); 1606GL_APICALL void GL_APIENTRY glGetProgramPipelineivEXT (GLuint pipeline, GLenum pname, GLint *params); 1607GL_APICALL void GL_APIENTRY glProgramUniform1iEXT (GLuint program, GLint location, GLint x); 1608GL_APICALL void GL_APIENTRY glProgramUniform2iEXT (GLuint program, GLint location, GLint x, GLint y); 1609GL_APICALL void GL_APIENTRY glProgramUniform3iEXT (GLuint program, GLint location, GLint x, GLint y, GLint z); 1610GL_APICALL void GL_APIENTRY glProgramUniform4iEXT (GLuint program, GLint location, GLint x, GLint y, GLint z, GLint w); 1611GL_APICALL void GL_APIENTRY glProgramUniform1fEXT (GLuint program, GLint location, GLfloat x); 1612GL_APICALL void GL_APIENTRY glProgramUniform2fEXT (GLuint program, GLint location, GLfloat x, GLfloat y); 1613GL_APICALL void GL_APIENTRY glProgramUniform3fEXT (GLuint program, GLint location, GLfloat x, GLfloat y, GLfloat z); 1614GL_APICALL void GL_APIENTRY glProgramUniform4fEXT (GLuint program, GLint location, GLfloat x, GLfloat y, GLfloat z, GLfloat w); 1615GL_APICALL void GL_APIENTRY glProgramUniform1ivEXT (GLuint program, GLint location, GLsizei count, const GLint *value); 1616GL_APICALL void GL_APIENTRY glProgramUniform2ivEXT (GLuint program, GLint location, GLsizei count, const GLint *value); 1617GL_APICALL void GL_APIENTRY glProgramUniform3ivEXT (GLuint program, GLint location, GLsizei count, const GLint *value); 1618GL_APICALL void GL_APIENTRY glProgramUniform4ivEXT (GLuint program, GLint location, GLsizei count, const GLint *value); 1619GL_APICALL void GL_APIENTRY glProgramUniform1fvEXT (GLuint program, GLint location, GLsizei count, const GLfloat *value); 1620GL_APICALL void GL_APIENTRY glProgramUniform2fvEXT (GLuint program, GLint location, GLsizei count, const GLfloat *value); 1621GL_APICALL void GL_APIENTRY glProgramUniform3fvEXT (GLuint program, GLint location, GLsizei count, const GLfloat *value); 1622GL_APICALL void GL_APIENTRY glProgramUniform4fvEXT (GLuint program, GLint location, GLsizei count, const GLfloat *value); 1623GL_APICALL void GL_APIENTRY glProgramUniformMatrix2fvEXT (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value); 1624GL_APICALL void GL_APIENTRY glProgramUniformMatrix3fvEXT (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value); 1625GL_APICALL void GL_APIENTRY glProgramUniformMatrix4fvEXT (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value); 1626GL_APICALL void GL_APIENTRY glValidateProgramPipelineEXT (GLuint pipeline); 1627GL_APICALL void GL_APIENTRY glGetProgramPipelineInfoLogEXT (GLuint pipeline, GLsizei bufSize, GLsizei *length, GLchar *infoLog); 1628#endif 1629typedef void (GL_APIENTRYP PFNGLUSEPROGRAMSTAGESEXTPROC) (GLuint pipeline, GLbitfield stages, GLuint program); 1630typedef void (GL_APIENTRYP PFNGLACTIVESHADERPROGRAMEXTPROC) (GLuint pipeline, GLuint program); 1631typedef GLuint (GL_APIENTRYP PFNGLCREATESHADERPROGRAMVEXTPROC) (GLenum type, GLsizei count, const GLchar **strings); 1632typedef void (GL_APIENTRYP PFNGLBINDPROGRAMPIPELINEEXTPROC) (GLuint pipeline); 1633typedef void (GL_APIENTRYP PFNGLDELETEPROGRAMPIPELINESEXTPROC) (GLsizei n, const GLuint *pipelines); 1634typedef void (GL_APIENTRYP PFNGLGENPROGRAMPIPELINESEXTPROC) (GLsizei n, GLuint *pipelines); 1635typedef GLboolean (GL_APIENTRYP PFNGLISPROGRAMPIPELINEEXTPROC) (GLuint pipeline); 1636typedef void (GL_APIENTRYP PFNGLPROGRAMPARAMETERIEXTPROC) (GLuint program, GLenum pname, GLint value); 1637typedef void (GL_APIENTRYP PFNGLGETPROGRAMPIPELINEIVEXTPROC) (GLuint pipeline, GLenum pname, GLint *params); 1638typedef void (GL_APIENTRYP PFNGLPROGRAMUNIFORM1IEXTPROC) (GLuint program, GLint location, GLint x); 1639typedef void (GL_APIENTRYP PFNGLPROGRAMUNIFORM2IEXTPROC) (GLuint program, GLint location, GLint x, GLint y); 1640typedef void (GL_APIENTRYP PFNGLPROGRAMUNIFORM3IEXTPROC) (GLuint program, GLint location, GLint x, GLint y, GLint z); 1641typedef void (GL_APIENTRYP PFNGLPROGRAMUNIFORM4IEXTPROC) (GLuint program, GLint location, GLint x, GLint y, GLint z, GLint w); 1642typedef void (GL_APIENTRYP PFNGLPROGRAMUNIFORM1FEXTPROC) (GLuint program, GLint location, GLfloat x); 1643typedef void (GL_APIENTRYP PFNGLPROGRAMUNIFORM2FEXTPROC) (GLuint program, GLint location, GLfloat x, GLfloat y); 1644typedef void (GL_APIENTRYP PFNGLPROGRAMUNIFORM3FEXTPROC) (GLuint program, GLint location, GLfloat x, GLfloat y, GLfloat z); 1645typedef void (GL_APIENTRYP PFNGLPROGRAMUNIFORM4FEXTPROC) (GLuint program, GLint location, GLfloat x, GLfloat y, GLfloat z, GLfloat w); 1646typedef void (GL_APIENTRYP PFNGLPROGRAMUNIFORM1IVEXTPROC) (GLuint program, GLint location, GLsizei count, const GLint *value); 1647typedef void (GL_APIENTRYP PFNGLPROGRAMUNIFORM2IVEXTPROC) (GLuint program, GLint location, GLsizei count, const GLint *value); 1648typedef void (GL_APIENTRYP PFNGLPROGRAMUNIFORM3IVEXTPROC) (GLuint program, GLint location, GLsizei count, const GLint *value); 1649typedef void (GL_APIENTRYP PFNGLPROGRAMUNIFORM4IVEXTPROC) (GLuint program, GLint location, GLsizei count, const GLint *value); 1650typedef void (GL_APIENTRYP PFNGLPROGRAMUNIFORM1FVEXTPROC) (GLuint program, GLint location, GLsizei count, const GLfloat *value); 1651typedef void (GL_APIENTRYP PFNGLPROGRAMUNIFORM2FVEXTPROC) (GLuint program, GLint location, GLsizei count, const GLfloat *value); 1652typedef void (GL_APIENTRYP PFNGLPROGRAMUNIFORM3FVEXTPROC) (GLuint program, GLint location, GLsizei count, const GLfloat *value); 1653typedef void (GL_APIENTRYP PFNGLPROGRAMUNIFORM4FVEXTPROC) (GLuint program, GLint location, GLsizei count, const GLfloat *value); 1654typedef void (GL_APIENTRYP PFNGLPROGRAMUNIFORMMATRIX2FVEXTPROC) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value); 1655typedef void (GL_APIENTRYP PFNGLPROGRAMUNIFORMMATRIX3FVEXTPROC) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value); 1656typedef void (GL_APIENTRYP PFNGLPROGRAMUNIFORMMATRIX4FVEXTPROC) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value); 1657typedef void (GL_APIENTRYP PFNGLVALIDATEPROGRAMPIPELINEEXTPROC) (GLuint pipeline); 1658typedef 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 1705GL_APICALL void GL_APIENTRY glTexStorage1DEXT (GLenum target, GLsizei levels, GLenum internalformat, GLsizei width); 1706GL_APICALL void GL_APIENTRY glTexStorage2DEXT (GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height); 1707GL_APICALL void GL_APIENTRY glTexStorage3DEXT (GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth); 1708GL_APICALL void GL_APIENTRY glTextureStorage1DEXT (GLuint texture, GLenum target, GLsizei levels, GLenum internalformat, GLsizei width); 1709GL_APICALL void GL_APIENTRY glTextureStorage2DEXT (GLuint texture, GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height); 1710GL_APICALL void GL_APIENTRY glTextureStorage3DEXT (GLuint texture, GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth); 1711#endif 1712typedef void (GL_APIENTRYP PFNGLTEXSTORAGE1DEXTPROC) (GLenum target, GLsizei levels, GLenum internalformat, GLsizei width); 1713typedef void (GL_APIENTRYP PFNGLTEXSTORAGE2DEXTPROC) (GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height); 1714typedef void (GL_APIENTRYP PFNGLTEXSTORAGE3DEXTPROC) (GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth); 1715typedef void (GL_APIENTRYP PFNGLTEXTURESTORAGE1DEXTPROC) (GLuint texture, GLenum target, GLsizei levels, GLenum internalformat, GLsizei width); 1716typedef void (GL_APIENTRYP PFNGLTEXTURESTORAGE2DEXTPROC) (GLuint texture, GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height); 1717typedef void (GL_APIENTRYP PFNGLTEXTURESTORAGE3DEXTPROC) (GLuint texture, GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth); 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 1781GL_APICALL void GL_APIENTRY glRenderbufferStorageMultisampleIMG (GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height); 1782GL_APICALL void GL_APIENTRY glFramebufferTexture2DMultisampleIMG (GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLsizei samples); 1783#endif 1784typedef void (GL_APIENTRYP PFNGLRENDERBUFFERSTORAGEMULTISAMPLEIMGPROC) (GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height); 1785typedef 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 1796GL_APICALL void GL_APIENTRY glCoverageMaskNV (GLboolean mask); 1797GL_APICALL void GL_APIENTRY glCoverageOperationNV (GLenum operation); 1798#endif 1799typedef void (GL_APIENTRYP PFNGLCOVERAGEMASKNVPROC) (GLboolean mask); 1800typedef 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 1812GL_APICALL void GL_APIENTRY glDrawBuffersNV (GLsizei n, const GLenum *bufs); 1813#endif 1814typedef 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 1821GL_APICALL void GL_APIENTRY glDrawArraysInstancedNV (GLenum mode, GLint first, GLsizei count, GLsizei primcount); 1822GL_APICALL void GL_APIENTRY glDrawElementsInstancedNV (GLenum mode, GLsizei count, GLenum type, const GLvoid *indices, GLsizei primcount); 1823#endif 1824typedef void (GL_APIENTRYP PFNGLDRAWARRAYSINSTANCEDNVPROC) (GLenum mode, GLint first, GLsizei count, GLsizei primcount); 1825typedef 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 1837GL_APICALL void GL_APIENTRY glDeleteFencesNV (GLsizei n, const GLuint *fences); 1838GL_APICALL void GL_APIENTRY glGenFencesNV (GLsizei n, GLuint *fences); 1839GL_APICALL GLboolean GL_APIENTRY glIsFenceNV (GLuint fence); 1840GL_APICALL GLboolean GL_APIENTRY glTestFenceNV (GLuint fence); 1841GL_APICALL void GL_APIENTRY glGetFenceivNV (GLuint fence, GLenum pname, GLint *params); 1842GL_APICALL void GL_APIENTRY glFinishFenceNV (GLuint fence); 1843GL_APICALL void GL_APIENTRY glSetFenceNV (GLuint fence, GLenum condition); 1844#endif 1845typedef void (GL_APIENTRYP PFNGLDELETEFENCESNVPROC) (GLsizei n, const GLuint *fences); 1846typedef void (GL_APIENTRYP PFNGLGENFENCESNVPROC) (GLsizei n, GLuint *fences); 1847typedef GLboolean (GL_APIENTRYP PFNGLISFENCENVPROC) (GLuint fence); 1848typedef GLboolean (GL_APIENTRYP PFNGLTESTFENCENVPROC) (GLuint fence); 1849typedef void (GL_APIENTRYP PFNGLGETFENCEIVNVPROC) (GLuint fence, GLenum pname, GLint *params); 1850typedef void (GL_APIENTRYP PFNGLFINISHFENCENVPROC) (GLuint fence); 1851typedef 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 1858GL_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 1860typedef 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 1867GL_APICALL void GL_APIENTRY glRenderbufferStorageMultisampleNV ( GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height); 1868#endif 1869typedef 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 1881GL_APICALL void GL_APIENTRY glVertexAttribDivisorNV (GLuint index, GLuint divisor); 1882#endif 1883typedef 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 1890GL_APICALL void GL_APIENTRY glReadBufferNV (GLenum mode); 1891#endif 1892typedef 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 1953GL_APICALL void GL_APIENTRY glAlphaFuncQCOM (GLenum func, GLclampf ref); 1954#endif 1955typedef 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 1967GL_APICALL void GL_APIENTRY glGetDriverControlsQCOM (GLint *num, GLsizei size, GLuint *driverControls); 1968GL_APICALL void GL_APIENTRY glGetDriverControlStringQCOM (GLuint driverControl, GLsizei bufSize, GLsizei *length, GLchar *driverControlString); 1969GL_APICALL void GL_APIENTRY glEnableDriverControlQCOM (GLuint driverControl); 1970GL_APICALL void GL_APIENTRY glDisableDriverControlQCOM (GLuint driverControl); 1971#endif 1972typedef void (GL_APIENTRYP PFNGLGETDRIVERCONTROLSQCOMPROC) (GLint *num, GLsizei size, GLuint *driverControls); 1973typedef void (GL_APIENTRYP PFNGLGETDRIVERCONTROLSTRINGQCOMPROC) (GLuint driverControl, GLsizei bufSize, GLsizei *length, GLchar *driverControlString); 1974typedef void (GL_APIENTRYP PFNGLENABLEDRIVERCONTROLQCOMPROC) (GLuint driverControl); 1975typedef 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 1982GL_APICALL void GL_APIENTRY glExtGetTexturesQCOM (GLuint *textures, GLint maxTextures, GLint *numTextures); 1983GL_APICALL void GL_APIENTRY glExtGetBuffersQCOM (GLuint *buffers, GLint maxBuffers, GLint *numBuffers); 1984GL_APICALL void GL_APIENTRY glExtGetRenderbuffersQCOM (GLuint *renderbuffers, GLint maxRenderbuffers, GLint *numRenderbuffers); 1985GL_APICALL void GL_APIENTRY glExtGetFramebuffersQCOM (GLuint *framebuffers, GLint maxFramebuffers, GLint *numFramebuffers); 1986GL_APICALL void GL_APIENTRY glExtGetTexLevelParameterivQCOM (GLuint texture, GLenum face, GLint level, GLenum pname, GLint *params); 1987GL_APICALL void GL_APIENTRY glExtTexObjectStateOverrideiQCOM (GLenum target, GLenum pname, GLint param); 1988GL_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); 1989GL_APICALL void GL_APIENTRY glExtGetBufferPointervQCOM (GLenum target, GLvoid **params); 1990#endif 1991typedef void (GL_APIENTRYP PFNGLEXTGETTEXTURESQCOMPROC) (GLuint *textures, GLint maxTextures, GLint *numTextures); 1992typedef void (GL_APIENTRYP PFNGLEXTGETBUFFERSQCOMPROC) (GLuint *buffers, GLint maxBuffers, GLint *numBuffers); 1993typedef void (GL_APIENTRYP PFNGLEXTGETRENDERBUFFERSQCOMPROC) (GLuint *renderbuffers, GLint maxRenderbuffers, GLint *numRenderbuffers); 1994typedef void (GL_APIENTRYP PFNGLEXTGETFRAMEBUFFERSQCOMPROC) (GLuint *framebuffers, GLint maxFramebuffers, GLint *numFramebuffers); 1995typedef void (GL_APIENTRYP PFNGLEXTGETTEXLEVELPARAMETERIVQCOMPROC) (GLuint texture, GLenum face, GLint level, GLenum pname, GLint *params); 1996typedef void (GL_APIENTRYP PFNGLEXTTEXOBJECTSTATEOVERRIDEIQCOMPROC) (GLenum target, GLenum pname, GLint param); 1997typedef 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); 1998typedef 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 2005GL_APICALL void GL_APIENTRY glExtGetShadersQCOM (GLuint *shaders, GLint maxShaders, GLint *numShaders); 2006GL_APICALL void GL_APIENTRY glExtGetProgramsQCOM (GLuint *programs, GLint maxPrograms, GLint *numPrograms); 2007GL_APICALL GLboolean GL_APIENTRY glExtIsProgramBinaryQCOM (GLuint program); 2008GL_APICALL void GL_APIENTRY glExtGetProgramBinarySourceQCOM (GLuint program, GLenum shadertype, GLchar *source, GLint *length); 2009#endif 2010typedef void (GL_APIENTRYP PFNGLEXTGETSHADERSQCOMPROC) (GLuint *shaders, GLint maxShaders, GLint *numShaders); 2011typedef void (GL_APIENTRYP PFNGLEXTGETPROGRAMSQCOMPROC) (GLuint *programs, GLint maxPrograms, GLint *numPrograms); 2012typedef GLboolean (GL_APIENTRYP PFNGLEXTISPROGRAMBINARYQCOMPROC) (GLuint program); 2013typedef 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 2030GL_APICALL void GL_APIENTRY glStartTilingQCOM (GLuint x, GLuint y, GLuint width, GLuint height, GLbitfield preserveMask); 2031GL_APICALL void GL_APIENTRY glEndTilingQCOM (GLbitfield preserveMask); 2032#endif 2033typedef void (GL_APIENTRYP PFNGLSTARTTILINGQCOMPROC) (GLuint x, GLuint y, GLuint width, GLuint height, GLbitfield preserveMask); 2034typedef 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_ */