1 #ifndef __gl2ext_h_ 2 #define __gl2ext_h_ 3 4 /* $Revision: 16619 $ on $Date:: 2012-01-18 10:00:14 -0800 #$ */ 5 6 #ifdef __cplusplus 7 extern "C" { 8 #endif 9 10 /* 11 * This document is licensed under the SGI Free Software B License Version 12 * 2.0. For details, see http://oss.sgi.com/projects/FreeB/ . 13 */ 14 15 #ifndef GL_APIENTRYP 16 # define GL_APIENTRYP GL_APIENTRY* 17 #endif 18 19 /*------------------------------------------------------------------------* 20 * OES extension tokens 21 *------------------------------------------------------------------------*/ 22 23 /* GL_OES_compressed_ETC1_RGB8_texture */ 24 #ifndef GL_OES_compressed_ETC1_RGB8_texture 25 #define GL_ETC1_RGB8_OES 0x8D64 26 #endif 27 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 40 #endif 41 42 /* GL_OES_depth24 */ 43 #ifndef GL_OES_depth24 44 #define GL_DEPTH_COMPONENT24_OES 0x81A6 45 #endif 46 47 /* GL_OES_depth32 */ 48 #ifndef GL_OES_depth32 49 #define GL_DEPTH_COMPONENT32_OES 0x81A7 50 #endif 51 52 /* GL_OES_depth_texture */ 53 /* No new tokens introduced by this extension. */ 54 55 /* GL_OES_EGL_image */ 56 #ifndef GL_OES_EGL_image 57 typedef void* GLeglImageOES; 58 #endif 59 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 67 #endif 68 69 /* GL_OES_element_index_uint */ 70 #ifndef GL_OES_element_index_uint 71 #define GL_UNSIGNED_INT 0x1405 72 #endif 73 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 79 #endif 80 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 87 #endif 88 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 94 #endif 95 96 /* GL_OES_rgb8_rgba8 */ 97 #ifndef GL_OES_rgb8_rgba8 98 #define GL_RGB8_OES 0x8051 99 #define GL_RGBA8_OES 0x8058 100 #endif 101 102 /* GL_OES_standard_derivatives */ 103 #ifndef GL_OES_standard_derivatives 104 #define GL_FRAGMENT_SHADER_DERIVATIVE_HINT_OES 0x8B8B 105 #endif 106 107 /* GL_OES_stencil1 */ 108 #ifndef GL_OES_stencil1 109 #define GL_STENCIL_INDEX1_OES 0x8D46 110 #endif 111 112 /* GL_OES_stencil4 */ 113 #ifndef GL_OES_stencil4 114 #define GL_STENCIL_INDEX4_OES 0x8D47 115 #endif 116 117 /* GL_OES_texture_3D */ 118 #ifndef GL_OES_texture_3D 119 #define GL_TEXTURE_WRAP_R_OES 0x8072 120 #define GL_TEXTURE_3D_OES 0x806F 121 #define GL_TEXTURE_BINDING_3D_OES 0x806A 122 #define GL_MAX_3D_TEXTURE_SIZE_OES 0x8073 123 #define GL_SAMPLER_3D_OES 0x8B5F 124 #define GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_3D_ZOFFSET_OES 0x8CD4 125 #endif 126 127 /* GL_OES_texture_float */ 128 /* No new tokens introduced by this extension. */ 129 130 /* GL_OES_texture_float_linear */ 131 /* No new tokens introduced by this extension. */ 132 133 /* GL_OES_texture_half_float */ 134 #ifndef GL_OES_texture_half_float 135 #define GL_HALF_FLOAT_OES 0x8D61 136 #endif 137 138 /* GL_OES_texture_half_float_linear */ 139 /* No new tokens introduced by this extension. */ 140 141 /* GL_OES_texture_npot */ 142 /* No new tokens introduced by this extension. */ 143 144 /* GL_OES_vertex_array_object */ 145 #ifndef GL_OES_vertex_array_object 146 #define GL_VERTEX_ARRAY_BINDING_OES 0x85B5 147 #endif 148 149 /* GL_OES_vertex_half_float */ 150 /* GL_HALF_FLOAT_OES defined in GL_OES_texture_half_float already. */ 151 152 /* GL_OES_vertex_type_10_10_10_2 */ 153 #ifndef GL_OES_vertex_type_10_10_10_2 154 #define GL_UNSIGNED_INT_10_10_10_2_OES 0x8DF6 155 #define GL_INT_10_10_10_2_OES 0x8DF7 156 #endif 157 158 /*------------------------------------------------------------------------* 159 * AMD extension tokens 160 *------------------------------------------------------------------------*/ 161 162 /* GL_AMD_compressed_3DC_texture */ 163 #ifndef GL_AMD_compressed_3DC_texture 164 #define GL_3DC_X_AMD 0x87F9 165 #define GL_3DC_XY_AMD 0x87FA 166 #endif 167 168 /* GL_AMD_compressed_ATC_texture */ 169 #ifndef GL_AMD_compressed_ATC_texture 170 #define GL_ATC_RGB_AMD 0x8C92 171 #define GL_ATC_RGBA_EXPLICIT_ALPHA_AMD 0x8C93 172 #define GL_ATC_RGBA_INTERPOLATED_ALPHA_AMD 0x87EE 173 #endif 174 175 /* GL_AMD_performance_monitor */ 176 #ifndef GL_AMD_performance_monitor 177 #define GL_COUNTER_TYPE_AMD 0x8BC0 178 #define GL_COUNTER_RANGE_AMD 0x8BC1 179 #define GL_UNSIGNED_INT64_AMD 0x8BC2 180 #define GL_PERCENTAGE_AMD 0x8BC3 181 #define GL_PERFMON_RESULT_AVAILABLE_AMD 0x8BC4 182 #define GL_PERFMON_RESULT_SIZE_AMD 0x8BC5 183 #define GL_PERFMON_RESULT_AMD 0x8BC6 184 #endif 185 186 /* GL_AMD_program_binary_Z400 */ 187 #ifndef GL_AMD_program_binary_Z400 188 #define GL_Z400_BINARY_AMD 0x8740 189 #endif 190 191 /*------------------------------------------------------------------------* 192 * ANGLE extension tokens 193 *------------------------------------------------------------------------*/ 194 195 /* GL_ANGLE_framebuffer_blit */ 196 #ifndef GL_ANGLE_framebuffer_blit 197 #define GL_READ_FRAMEBUFFER_ANGLE 0x8CA8 198 #define GL_DRAW_FRAMEBUFFER_ANGLE 0x8CA9 199 #define GL_DRAW_FRAMEBUFFER_BINDING_ANGLE 0x8CA6 200 #define GL_READ_FRAMEBUFFER_BINDING_ANGLE 0x8CAA 201 #endif 202 203 /* GL_ANGLE_framebuffer_multisample */ 204 #ifndef GL_ANGLE_framebuffer_multisample 205 #define GL_RENDERBUFFER_SAMPLES_ANGLE 0x8CAB 206 #define GL_FRAMEBUFFER_INCOMPLETE_MULTISAMPLE_ANGLE 0x8D56 207 #define GL_MAX_SAMPLES_ANGLE 0x8D57 208 #endif 209 210 /*------------------------------------------------------------------------* 211 * APPLE extension tokens 212 *------------------------------------------------------------------------*/ 213 214 /* GL_APPLE_rgb_422 */ 215 #ifndef GL_APPLE_rgb_422 216 #define GL_RGB_422_APPLE 0x8A1F 217 #define GL_UNSIGNED_SHORT_8_8_APPLE 0x85BA 218 #define GL_UNSIGNED_SHORT_8_8_REV_APPLE 0x85BB 219 #endif 220 221 /* GL_APPLE_framebuffer_multisample */ 222 #ifndef GL_APPLE_framebuffer_multisample 223 #define GL_RENDERBUFFER_SAMPLES_APPLE 0x8CAB 224 #define GL_FRAMEBUFFER_INCOMPLETE_MULTISAMPLE_APPLE 0x8D56 225 #define GL_MAX_SAMPLES_APPLE 0x8D57 226 #define GL_READ_FRAMEBUFFER_APPLE 0x8CA8 227 #define GL_DRAW_FRAMEBUFFER_APPLE 0x8CA9 228 #define GL_DRAW_FRAMEBUFFER_BINDING_APPLE 0x8CA6 229 #define GL_READ_FRAMEBUFFER_BINDING_APPLE 0x8CAA 230 #endif 231 232 /* GL_APPLE_texture_format_BGRA8888 */ 233 #ifndef GL_APPLE_texture_format_BGRA8888 234 #define GL_BGRA_EXT 0x80E1 235 #endif 236 237 /* GL_APPLE_texture_max_level */ 238 #ifndef GL_APPLE_texture_max_level 239 #define GL_TEXTURE_MAX_LEVEL_APPLE 0x813D 240 #endif 241 242 /*------------------------------------------------------------------------* 243 * ARM extension tokens 244 *------------------------------------------------------------------------*/ 245 246 /* GL_ARM_mali_shader_binary */ 247 #ifndef GL_ARM_mali_shader_binary 248 #define GL_MALI_SHADER_BINARY_ARM 0x8F60 249 #endif 250 251 /* GL_ARM_rgba8 */ 252 /* No new tokens introduced by this extension. */ 253 254 /*------------------------------------------------------------------------* 255 * EXT extension tokens 256 *------------------------------------------------------------------------*/ 257 258 /* GL_EXT_blend_minmax */ 259 #ifndef GL_EXT_blend_minmax 260 #define GL_MIN_EXT 0x8007 261 #define GL_MAX_EXT 0x8008 262 #endif 263 264 /* GL_EXT_color_buffer_half_float */ 265 #ifndef GL_EXT_color_buffer_half_float 266 #define GL_RGBA16F_EXT 0x881A 267 #define GL_RGB16F_EXT 0x881B 268 #define GL_RG16F_EXT 0x822F 269 #define GL_R16F_EXT 0x822D 270 #define GL_FRAMEBUFFER_ATTACHMENT_COMPONENT_TYPE_EXT 0x8211 271 #define GL_UNSIGNED_NORMALIZED_EXT 0x8C17 272 #endif 273 274 /* GL_EXT_debug_label */ 275 #ifndef GL_EXT_debug_label 276 #define GL_PROGRAM_PIPELINE_OBJECT_EXT 0x8A4F 277 #define GL_PROGRAM_OBJECT_EXT 0x8B40 278 #define GL_SHADER_OBJECT_EXT 0x8B48 279 #define GL_BUFFER_OBJECT_EXT 0x9151 280 #define GL_QUERY_OBJECT_EXT 0x9153 281 #define GL_VERTEX_ARRAY_OBJECT_EXT 0x9154 282 #endif 283 284 /* GL_EXT_debug_marker */ 285 /* No new tokens introduced by this extension. */ 286 287 /* GL_EXT_discard_framebuffer */ 288 #ifndef GL_EXT_discard_framebuffer 289 #define GL_COLOR_EXT 0x1800 290 #define GL_DEPTH_EXT 0x1801 291 #define GL_STENCIL_EXT 0x1802 292 #endif 293 294 /* GL_EXT_multisampled_render_to_texture */ 295 #ifndef GL_EXT_multisampled_render_to_texture 296 #define GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_SAMPLES_EXT 0x8D6C 297 #define GL_RENDERBUFFER_SAMPLES_EXT 0x9133 298 #define GL_FRAMEBUFFER_INCOMPLETE_MULTISAMPLE_EXT 0x9134 299 #define GL_MAX_SAMPLES_EXT 0x9135 300 #endif 301 302 /* GL_EXT_multi_draw_arrays */ 303 /* No new tokens introduced by this extension. */ 304 305 /* GL_EXT_occlusion_query_boolean */ 306 #ifndef GL_EXT_occlusion_query_boolean 307 #define GL_ANY_SAMPLES_PASSED_EXT 0x8C2F 308 #define GL_ANY_SAMPLES_PASSED_CONSERVATIVE_EXT 0x8D6A 309 #define GL_CURRENT_QUERY_EXT 0x8865 310 #define GL_QUERY_RESULT_EXT 0x8866 311 #define GL_QUERY_RESULT_AVAILABLE_EXT 0x8867 312 #endif 313 314 /* GL_EXT_read_format_bgra */ 315 #ifndef GL_EXT_read_format_bgra 316 #define GL_BGRA_EXT 0x80E1 317 #define GL_UNSIGNED_SHORT_4_4_4_4_REV_EXT 0x8365 318 #define GL_UNSIGNED_SHORT_1_5_5_5_REV_EXT 0x8366 319 #endif 320 321 /* GL_EXT_robustness */ 322 #ifndef GL_EXT_robustness 323 /* reuse GL_NO_ERROR */ 324 #define GL_GUILTY_CONTEXT_RESET_EXT 0x8253 325 #define GL_INNOCENT_CONTEXT_RESET_EXT 0x8254 326 #define GL_UNKNOWN_CONTEXT_RESET_EXT 0x8255 327 #define GL_CONTEXT_ROBUST_ACCESS_EXT 0x90F3 328 #define GL_RESET_NOTIFICATION_STRATEGY_EXT 0x8256 329 #define GL_LOSE_CONTEXT_ON_RESET_EXT 0x8252 330 #define GL_NO_RESET_NOTIFICATION_EXT 0x8261 331 #endif 332 333 /* GL_EXT_separate_shader_objects */ 334 #ifndef GL_EXT_separate_shader_objects 335 #define GL_VERTEX_SHADER_BIT_EXT 0x00000001 336 #define GL_FRAGMENT_SHADER_BIT_EXT 0x00000002 337 #define GL_ALL_SHADER_BITS_EXT 0xFFFFFFFF 338 #define GL_PROGRAM_SEPARABLE_EXT 0x8258 339 #define GL_ACTIVE_PROGRAM_EXT 0x8259 340 #define GL_PROGRAM_PIPELINE_BINDING_EXT 0x825A 341 #endif 342 343 /* GL_EXT_shader_texture_lod */ 344 /* No new tokens introduced by this extension. */ 345 346 /* GL_EXT_shadow_samplers */ 347 #ifndef GL_EXT_shadow_samplers 348 #define GL_TEXTURE_COMPARE_MODE_EXT 0x884C 349 #define GL_TEXTURE_COMPARE_FUNC_EXT 0x884D 350 #define GL_COMPARE_REF_TO_TEXTURE_EXT 0x884E 351 #define GL_SAMPLER_2D_SHADOW_EXT 0x8B62 352 #endif 353 354 /* GL_EXT_sRGB */ 355 #ifndef GL_EXT_sRGB 356 #define GL_SRGB_EXT 0x8C40 357 #define GL_SRGB_ALPHA_EXT 0x8C42 358 #define GL_SRGB8_ALPHA8_EXT 0x8C43 359 #define GL_FRAMEBUFFER_ATTACHMENT_COLOR_ENCODING_EXT 0x8210 360 #endif 361 362 /* GL_EXT_texture_compression_dxt1 */ 363 #ifndef GL_EXT_texture_compression_dxt1 364 #define GL_COMPRESSED_RGB_S3TC_DXT1_EXT 0x83F0 365 #define GL_COMPRESSED_RGBA_S3TC_DXT1_EXT 0x83F1 366 #endif 367 368 /* GL_EXT_texture_filter_anisotropic */ 369 #ifndef GL_EXT_texture_filter_anisotropic 370 #define GL_TEXTURE_MAX_ANISOTROPY_EXT 0x84FE 371 #define GL_MAX_TEXTURE_MAX_ANISOTROPY_EXT 0x84FF 372 #endif 373 374 /* GL_EXT_texture_format_BGRA8888 */ 375 #ifndef GL_EXT_texture_format_BGRA8888 376 #define GL_BGRA_EXT 0x80E1 377 #endif 378 379 /* GL_EXT_texture_rg */ 380 #ifndef GL_EXT_texture_rg 381 #define GL_RED_EXT 0x1903 382 #define GL_RG_EXT 0x8227 383 #define GL_R8_EXT 0x8229 384 #define GL_RG8_EXT 0x822B 385 #endif 386 387 /* GL_EXT_texture_storage */ 388 #ifndef GL_EXT_texture_storage 389 #define GL_TEXTURE_IMMUTABLE_FORMAT_EXT 0x912F 390 #define GL_ALPHA8_EXT 0x803C 391 #define GL_LUMINANCE8_EXT 0x8040 392 #define GL_LUMINANCE8_ALPHA8_EXT 0x8045 393 #define GL_RGBA32F_EXT 0x8814 394 #define GL_RGB32F_EXT 0x8815 395 #define GL_ALPHA32F_EXT 0x8816 396 #define GL_LUMINANCE32F_EXT 0x8818 397 #define GL_LUMINANCE_ALPHA32F_EXT 0x8819 398 /* reuse GL_RGBA16F_EXT */ 399 #define GL_RGB16F_EXT 0x881B 400 #define GL_ALPHA16F_EXT 0x881C 401 #define GL_LUMINANCE16F_EXT 0x881E 402 #define GL_LUMINANCE_ALPHA16F_EXT 0x881F 403 #define GL_RGB10_A2_EXT 0x8059 404 #define GL_RGB10_EXT 0x8052 405 #define GL_BGRA8_EXT 0x93A1 406 #endif 407 408 /* GL_EXT_texture_type_2_10_10_10_REV */ 409 #ifndef GL_EXT_texture_type_2_10_10_10_REV 410 #define GL_UNSIGNED_INT_2_10_10_10_REV_EXT 0x8368 411 #endif 412 413 /* GL_EXT_unpack_subimage */ 414 #ifndef GL_EXT_unpack_subimage 415 #define GL_UNPACK_ROW_LENGTH 0x0CF2 416 #define GL_UNPACK_SKIP_ROWS 0x0CF3 417 #define GL_UNPACK_SKIP_PIXELS 0x0CF4 418 #endif 419 420 /*------------------------------------------------------------------------* 421 * DMP extension tokens 422 *------------------------------------------------------------------------*/ 423 424 /* GL_DMP_shader_binary */ 425 #ifndef GL_DMP_shader_binary 426 #define GL_SHADER_BINARY_DMP 0x9250 427 #endif 428 429 /*------------------------------------------------------------------------* 430 * IMG extension tokens 431 *------------------------------------------------------------------------*/ 432 433 /* GL_IMG_program_binary */ 434 #ifndef GL_IMG_program_binary 435 #define GL_SGX_PROGRAM_BINARY_IMG 0x9130 436 #endif 437 438 /* GL_IMG_read_format */ 439 #ifndef GL_IMG_read_format 440 #define GL_BGRA_IMG 0x80E1 441 #define GL_UNSIGNED_SHORT_4_4_4_4_REV_IMG 0x8365 442 #endif 443 444 /* GL_IMG_shader_binary */ 445 #ifndef GL_IMG_shader_binary 446 #define GL_SGX_BINARY_IMG 0x8C0A 447 #endif 448 449 /* GL_IMG_texture_compression_pvrtc */ 450 #ifndef GL_IMG_texture_compression_pvrtc 451 #define GL_COMPRESSED_RGB_PVRTC_4BPPV1_IMG 0x8C00 452 #define GL_COMPRESSED_RGB_PVRTC_2BPPV1_IMG 0x8C01 453 #define GL_COMPRESSED_RGBA_PVRTC_4BPPV1_IMG 0x8C02 454 #define GL_COMPRESSED_RGBA_PVRTC_2BPPV1_IMG 0x8C03 455 #endif 456 457 /* GL_IMG_multisampled_render_to_texture */ 458 #ifndef GL_IMG_multisampled_render_to_texture 459 #define GL_RENDERBUFFER_SAMPLES_IMG 0x9133 460 #define GL_FRAMEBUFFER_INCOMPLETE_MULTISAMPLE_IMG 0x9134 461 #define GL_MAX_SAMPLES_IMG 0x9135 462 #define GL_TEXTURE_SAMPLES_IMG 0x9136 463 #endif 464 465 /*------------------------------------------------------------------------* 466 * NV extension tokens 467 *------------------------------------------------------------------------*/ 468 469 /* GL_NV_coverage_sample */ 470 #ifndef GL_NV_coverage_sample 471 #define GL_COVERAGE_COMPONENT_NV 0x8ED0 472 #define GL_COVERAGE_COMPONENT4_NV 0x8ED1 473 #define GL_COVERAGE_ATTACHMENT_NV 0x8ED2 474 #define GL_COVERAGE_BUFFERS_NV 0x8ED3 475 #define GL_COVERAGE_SAMPLES_NV 0x8ED4 476 #define GL_COVERAGE_ALL_FRAGMENTS_NV 0x8ED5 477 #define GL_COVERAGE_EDGE_FRAGMENTS_NV 0x8ED6 478 #define GL_COVERAGE_AUTOMATIC_NV 0x8ED7 479 #define GL_COVERAGE_BUFFER_BIT_NV 0x8000 480 #endif 481 482 /* GL_NV_depth_nonlinear */ 483 #ifndef GL_NV_depth_nonlinear 484 #define GL_DEPTH_COMPONENT16_NONLINEAR_NV 0x8E2C 485 #endif 486 487 /* GL_NV_draw_buffers */ 488 #ifndef GL_NV_draw_buffers 489 #define GL_MAX_DRAW_BUFFERS_NV 0x8824 490 #define GL_DRAW_BUFFER0_NV 0x8825 491 #define GL_DRAW_BUFFER1_NV 0x8826 492 #define GL_DRAW_BUFFER2_NV 0x8827 493 #define GL_DRAW_BUFFER3_NV 0x8828 494 #define GL_DRAW_BUFFER4_NV 0x8829 495 #define GL_DRAW_BUFFER5_NV 0x882A 496 #define GL_DRAW_BUFFER6_NV 0x882B 497 #define GL_DRAW_BUFFER7_NV 0x882C 498 #define GL_DRAW_BUFFER8_NV 0x882D 499 #define GL_DRAW_BUFFER9_NV 0x882E 500 #define GL_DRAW_BUFFER10_NV 0x882F 501 #define GL_DRAW_BUFFER11_NV 0x8830 502 #define GL_DRAW_BUFFER12_NV 0x8831 503 #define GL_DRAW_BUFFER13_NV 0x8832 504 #define GL_DRAW_BUFFER14_NV 0x8833 505 #define GL_DRAW_BUFFER15_NV 0x8834 506 #define GL_COLOR_ATTACHMENT0_NV 0x8CE0 507 #define GL_COLOR_ATTACHMENT1_NV 0x8CE1 508 #define GL_COLOR_ATTACHMENT2_NV 0x8CE2 509 #define GL_COLOR_ATTACHMENT3_NV 0x8CE3 510 #define GL_COLOR_ATTACHMENT4_NV 0x8CE4 511 #define GL_COLOR_ATTACHMENT5_NV 0x8CE5 512 #define GL_COLOR_ATTACHMENT6_NV 0x8CE6 513 #define GL_COLOR_ATTACHMENT7_NV 0x8CE7 514 #define GL_COLOR_ATTACHMENT8_NV 0x8CE8 515 #define GL_COLOR_ATTACHMENT9_NV 0x8CE9 516 #define GL_COLOR_ATTACHMENT10_NV 0x8CEA 517 #define GL_COLOR_ATTACHMENT11_NV 0x8CEB 518 #define GL_COLOR_ATTACHMENT12_NV 0x8CEC 519 #define GL_COLOR_ATTACHMENT13_NV 0x8CED 520 #define GL_COLOR_ATTACHMENT14_NV 0x8CEE 521 #define GL_COLOR_ATTACHMENT15_NV 0x8CEF 522 #endif 523 524 /* GL_NV_fbo_color_attachments */ 525 #ifndef GL_NV_fbo_color_attachments 526 #define GL_MAX_COLOR_ATTACHMENTS_NV 0x8CDF 527 /* GL_COLOR_ATTACHMENT{0-15}_NV defined in GL_NV_draw_buffers already. */ 528 #endif 529 530 /* GL_NV_fence */ 531 #ifndef GL_NV_fence 532 #define GL_ALL_COMPLETED_NV 0x84F2 533 #define GL_FENCE_STATUS_NV 0x84F3 534 #define GL_FENCE_CONDITION_NV 0x84F4 535 #endif 536 537 /* GL_NV_read_buffer */ 538 #ifndef GL_NV_read_buffer 539 #define GL_READ_BUFFER_NV 0x0C02 540 #endif 541 542 /* GL_NV_read_buffer_front */ 543 /* No new tokens introduced by this extension. */ 544 545 /* GL_NV_read_depth */ 546 /* No new tokens introduced by this extension. */ 547 548 /* GL_NV_read_depth_stencil */ 549 /* No new tokens introduced by this extension. */ 550 551 /* GL_NV_read_stencil */ 552 /* No new tokens introduced by this extension. */ 553 554 /* GL_NV_texture_compression_s3tc_update */ 555 /* No new tokens introduced by this extension. */ 556 557 /* GL_NV_texture_npot_2D_mipmap */ 558 /* No new tokens introduced by this extension. */ 559 560 /*------------------------------------------------------------------------* 561 * QCOM extension tokens 562 *------------------------------------------------------------------------*/ 563 564 /* GL_QCOM_alpha_test */ 565 #ifndef GL_QCOM_alpha_test 566 #define GL_ALPHA_TEST_QCOM 0x0BC0 567 #define GL_ALPHA_TEST_FUNC_QCOM 0x0BC1 568 #define GL_ALPHA_TEST_REF_QCOM 0x0BC2 569 #endif 570 571 /* GL_QCOM_driver_control */ 572 /* No new tokens introduced by this extension. */ 573 574 /* GL_QCOM_extended_get */ 575 #ifndef GL_QCOM_extended_get 576 #define GL_TEXTURE_WIDTH_QCOM 0x8BD2 577 #define GL_TEXTURE_HEIGHT_QCOM 0x8BD3 578 #define GL_TEXTURE_DEPTH_QCOM 0x8BD4 579 #define GL_TEXTURE_INTERNAL_FORMAT_QCOM 0x8BD5 580 #define GL_TEXTURE_FORMAT_QCOM 0x8BD6 581 #define GL_TEXTURE_TYPE_QCOM 0x8BD7 582 #define GL_TEXTURE_IMAGE_VALID_QCOM 0x8BD8 583 #define GL_TEXTURE_NUM_LEVELS_QCOM 0x8BD9 584 #define GL_TEXTURE_TARGET_QCOM 0x8BDA 585 #define GL_TEXTURE_OBJECT_VALID_QCOM 0x8BDB 586 #define GL_STATE_RESTORE 0x8BDC 587 #endif 588 589 /* GL_QCOM_extended_get2 */ 590 /* No new tokens introduced by this extension. */ 591 592 /* GL_QCOM_perfmon_global_mode */ 593 #ifndef GL_QCOM_perfmon_global_mode 594 #define GL_PERFMON_GLOBAL_MODE_QCOM 0x8FA0 595 #endif 596 597 /* GL_QCOM_writeonly_rendering */ 598 #ifndef GL_QCOM_writeonly_rendering 599 #define GL_WRITEONLY_RENDERING_QCOM 0x8823 600 #endif 601 602 /* GL_QCOM_tiled_rendering */ 603 #ifndef GL_QCOM_tiled_rendering 604 #define GL_COLOR_BUFFER_BIT0_QCOM 0x00000001 605 #define GL_COLOR_BUFFER_BIT1_QCOM 0x00000002 606 #define GL_COLOR_BUFFER_BIT2_QCOM 0x00000004 607 #define GL_COLOR_BUFFER_BIT3_QCOM 0x00000008 608 #define GL_COLOR_BUFFER_BIT4_QCOM 0x00000010 609 #define GL_COLOR_BUFFER_BIT5_QCOM 0x00000020 610 #define GL_COLOR_BUFFER_BIT6_QCOM 0x00000040 611 #define GL_COLOR_BUFFER_BIT7_QCOM 0x00000080 612 #define GL_DEPTH_BUFFER_BIT0_QCOM 0x00000100 613 #define GL_DEPTH_BUFFER_BIT1_QCOM 0x00000200 614 #define GL_DEPTH_BUFFER_BIT2_QCOM 0x00000400 615 #define GL_DEPTH_BUFFER_BIT3_QCOM 0x00000800 616 #define GL_DEPTH_BUFFER_BIT4_QCOM 0x00001000 617 #define GL_DEPTH_BUFFER_BIT5_QCOM 0x00002000 618 #define GL_DEPTH_BUFFER_BIT6_QCOM 0x00004000 619 #define GL_DEPTH_BUFFER_BIT7_QCOM 0x00008000 620 #define GL_STENCIL_BUFFER_BIT0_QCOM 0x00010000 621 #define GL_STENCIL_BUFFER_BIT1_QCOM 0x00020000 622 #define GL_STENCIL_BUFFER_BIT2_QCOM 0x00040000 623 #define GL_STENCIL_BUFFER_BIT3_QCOM 0x00080000 624 #define GL_STENCIL_BUFFER_BIT4_QCOM 0x00100000 625 #define GL_STENCIL_BUFFER_BIT5_QCOM 0x00200000 626 #define GL_STENCIL_BUFFER_BIT6_QCOM 0x00400000 627 #define GL_STENCIL_BUFFER_BIT7_QCOM 0x00800000 628 #define GL_MULTISAMPLE_BUFFER_BIT0_QCOM 0x01000000 629 #define GL_MULTISAMPLE_BUFFER_BIT1_QCOM 0x02000000 630 #define GL_MULTISAMPLE_BUFFER_BIT2_QCOM 0x04000000 631 #define GL_MULTISAMPLE_BUFFER_BIT3_QCOM 0x08000000 632 #define GL_MULTISAMPLE_BUFFER_BIT4_QCOM 0x10000000 633 #define GL_MULTISAMPLE_BUFFER_BIT5_QCOM 0x20000000 634 #define GL_MULTISAMPLE_BUFFER_BIT6_QCOM 0x40000000 635 #define GL_MULTISAMPLE_BUFFER_BIT7_QCOM 0x80000000 636 #endif 637 638 /*------------------------------------------------------------------------* 639 * VIV extension tokens 640 *------------------------------------------------------------------------*/ 641 642 /* GL_VIV_shader_binary */ 643 #ifndef GL_VIV_shader_binary 644 #define GL_SHADER_BINARY_VIV 0x8FC4 645 #endif 646 647 /*------------------------------------------------------------------------* 648 * End of extension tokens, start of corresponding extension functions 649 *------------------------------------------------------------------------*/ 650 651 /*------------------------------------------------------------------------* 652 * OES extension functions 653 *------------------------------------------------------------------------*/ 654 655 /* GL_OES_compressed_ETC1_RGB8_texture */ 656 #ifndef GL_OES_compressed_ETC1_RGB8_texture 657 #define GL_OES_compressed_ETC1_RGB8_texture 1 658 #endif 659 660 /* GL_OES_compressed_paletted_texture */ 661 #ifndef GL_OES_compressed_paletted_texture 662 #define GL_OES_compressed_paletted_texture 1 663 #endif 664 665 /* GL_OES_depth24 */ 666 #ifndef GL_OES_depth24 667 #define GL_OES_depth24 1 668 #endif 669 670 /* GL_OES_depth32 */ 671 #ifndef GL_OES_depth32 672 #define GL_OES_depth32 1 673 #endif 674 675 /* GL_OES_depth_texture */ 676 #ifndef GL_OES_depth_texture 677 #define GL_OES_depth_texture 1 678 #endif 679 680 /* GL_OES_EGL_image */ 681 #ifndef GL_OES_EGL_image 682 #define GL_OES_EGL_image 1 683 #ifdef GL_GLEXT_PROTOTYPES 684 GL_APICALL void GL_APIENTRY glEGLImageTargetTexture2DOES (GLenum target, GLeglImageOES image); 685 GL_APICALL void GL_APIENTRY glEGLImageTargetRenderbufferStorageOES (GLenum target, GLeglImageOES image); 686 #endif 687 typedef void (GL_APIENTRYP PFNGLEGLIMAGETARGETTEXTURE2DOESPROC) (GLenum target, GLeglImageOES image); 688 typedef void (GL_APIENTRYP PFNGLEGLIMAGETARGETRENDERBUFFERSTORAGEOESPROC) (GLenum target, GLeglImageOES image); 689 #endif 690 691 /* GL_OES_EGL_image_external */ 692 #ifndef GL_OES_EGL_image_external 693 #define GL_OES_EGL_image_external 1 694 /* glEGLImageTargetTexture2DOES defined in GL_OES_EGL_image already. */ 695 #endif 696 697 /* GL_OES_element_index_uint */ 698 #ifndef GL_OES_element_index_uint 699 #define GL_OES_element_index_uint 1 700 #endif 701 702 /* GL_OES_fbo_render_mipmap */ 703 #ifndef GL_OES_fbo_render_mipmap 704 #define GL_OES_fbo_render_mipmap 1 705 #endif 706 707 /* GL_OES_fragment_precision_high */ 708 #ifndef GL_OES_fragment_precision_high 709 #define GL_OES_fragment_precision_high 1 710 #endif 711 712 /* GL_OES_get_program_binary */ 713 #ifndef GL_OES_get_program_binary 714 #define GL_OES_get_program_binary 1 715 #ifdef GL_GLEXT_PROTOTYPES 716 GL_APICALL void GL_APIENTRY glGetProgramBinaryOES (GLuint program, GLsizei bufSize, GLsizei *length, GLenum *binaryFormat, GLvoid *binary); 717 GL_APICALL void GL_APIENTRY glProgramBinaryOES (GLuint program, GLenum binaryFormat, const GLvoid *binary, GLint length); 718 #endif 719 typedef void (GL_APIENTRYP PFNGLGETPROGRAMBINARYOESPROC) (GLuint program, GLsizei bufSize, GLsizei *length, GLenum *binaryFormat, GLvoid *binary); 720 typedef void (GL_APIENTRYP PFNGLPROGRAMBINARYOESPROC) (GLuint program, GLenum binaryFormat, const GLvoid *binary, GLint length); 721 #endif 722 723 /* GL_OES_mapbuffer */ 724 #ifndef GL_OES_mapbuffer 725 #define GL_OES_mapbuffer 1 726 #ifdef GL_GLEXT_PROTOTYPES 727 GL_APICALL void* GL_APIENTRY glMapBufferOES (GLenum target, GLenum access); 728 GL_APICALL GLboolean GL_APIENTRY glUnmapBufferOES (GLenum target); 729 GL_APICALL void GL_APIENTRY glGetBufferPointervOES (GLenum target, GLenum pname, GLvoid** params); 730 #endif 731 typedef void* (GL_APIENTRYP PFNGLMAPBUFFEROESPROC) (GLenum target, GLenum access); 732 typedef GLboolean (GL_APIENTRYP PFNGLUNMAPBUFFEROESPROC) (GLenum target); 733 typedef void (GL_APIENTRYP PFNGLGETBUFFERPOINTERVOESPROC) (GLenum target, GLenum pname, GLvoid** params); 734 #endif 735 736 /* GL_OES_packed_depth_stencil */ 737 #ifndef GL_OES_packed_depth_stencil 738 #define GL_OES_packed_depth_stencil 1 739 #endif 740 741 /* GL_OES_rgb8_rgba8 */ 742 #ifndef GL_OES_rgb8_rgba8 743 #define GL_OES_rgb8_rgba8 1 744 #endif 745 746 /* GL_OES_standard_derivatives */ 747 #ifndef GL_OES_standard_derivatives 748 #define GL_OES_standard_derivatives 1 749 #endif 750 751 /* GL_OES_stencil1 */ 752 #ifndef GL_OES_stencil1 753 #define GL_OES_stencil1 1 754 #endif 755 756 /* GL_OES_stencil4 */ 757 #ifndef GL_OES_stencil4 758 #define GL_OES_stencil4 1 759 #endif 760 761 /* GL_OES_texture_3D */ 762 #ifndef GL_OES_texture_3D 763 #define GL_OES_texture_3D 1 764 #ifdef GL_GLEXT_PROTOTYPES 765 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); 766 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); 767 GL_APICALL void GL_APIENTRY glCopyTexSubImage3DOES (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height); 768 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); 769 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); 770 GL_APICALL void GL_APIENTRY glFramebufferTexture3DOES (GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLint zoffset); 771 #endif 772 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); 773 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); 774 typedef void (GL_APIENTRYP PFNGLCOPYTEXSUBIMAGE3DOESPROC) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height); 775 typedef void (GL_APIENTRYP PFNGLCOMPRESSEDTEXIMAGE3DOESPROC) (GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, const GLvoid* data); 776 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); 777 typedef void (GL_APIENTRYP PFNGLFRAMEBUFFERTEXTURE3DOES) (GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLint zoffset); 778 #endif 779 780 /* GL_OES_texture_float */ 781 #ifndef GL_OES_texture_float 782 #define GL_OES_texture_float 1 783 #endif 784 785 /* GL_OES_texture_float_linear */ 786 #ifndef GL_OES_texture_float_linear 787 #define GL_OES_texture_float_linear 1 788 #endif 789 790 /* GL_OES_texture_half_float */ 791 #ifndef GL_OES_texture_half_float 792 #define GL_OES_texture_half_float 1 793 #endif 794 795 /* GL_OES_texture_half_float_linear */ 796 #ifndef GL_OES_texture_half_float_linear 797 #define GL_OES_texture_half_float_linear 1 798 #endif 799 800 /* GL_OES_texture_npot */ 801 #ifndef GL_OES_texture_npot 802 #define GL_OES_texture_npot 1 803 #endif 804 805 /* GL_OES_vertex_array_object */ 806 #ifndef GL_OES_vertex_array_object 807 #define GL_OES_vertex_array_object 1 808 #ifdef GL_GLEXT_PROTOTYPES 809 GL_APICALL void GL_APIENTRY glBindVertexArrayOES (GLuint array); 810 GL_APICALL void GL_APIENTRY glDeleteVertexArraysOES (GLsizei n, const GLuint *arrays); 811 GL_APICALL void GL_APIENTRY glGenVertexArraysOES (GLsizei n, GLuint *arrays); 812 GL_APICALL GLboolean GL_APIENTRY glIsVertexArrayOES (GLuint array); 813 #endif 814 typedef void (GL_APIENTRYP PFNGLBINDVERTEXARRAYOESPROC) (GLuint array); 815 typedef void (GL_APIENTRYP PFNGLDELETEVERTEXARRAYSOESPROC) (GLsizei n, const GLuint *arrays); 816 typedef void (GL_APIENTRYP PFNGLGENVERTEXARRAYSOESPROC) (GLsizei n, GLuint *arrays); 817 typedef GLboolean (GL_APIENTRYP PFNGLISVERTEXARRAYOESPROC) (GLuint array); 818 #endif 819 820 /* GL_OES_vertex_half_float */ 821 #ifndef GL_OES_vertex_half_float 822 #define GL_OES_vertex_half_float 1 823 #endif 824 825 /* GL_OES_vertex_type_10_10_10_2 */ 826 #ifndef GL_OES_vertex_type_10_10_10_2 827 #define GL_OES_vertex_type_10_10_10_2 1 828 #endif 829 830 /*------------------------------------------------------------------------* 831 * AMD extension functions 832 *------------------------------------------------------------------------*/ 833 834 /* GL_AMD_compressed_3DC_texture */ 835 #ifndef GL_AMD_compressed_3DC_texture 836 #define GL_AMD_compressed_3DC_texture 1 837 #endif 838 839 /* GL_AMD_compressed_ATC_texture */ 840 #ifndef GL_AMD_compressed_ATC_texture 841 #define GL_AMD_compressed_ATC_texture 1 842 #endif 843 844 /* AMD_performance_monitor */ 845 #ifndef GL_AMD_performance_monitor 846 #define GL_AMD_performance_monitor 1 847 #ifdef GL_GLEXT_PROTOTYPES 848 GL_APICALL void GL_APIENTRY glGetPerfMonitorGroupsAMD (GLint *numGroups, GLsizei groupsSize, GLuint *groups); 849 GL_APICALL void GL_APIENTRY glGetPerfMonitorCountersAMD (GLuint group, GLint *numCounters, GLint *maxActiveCounters, GLsizei counterSize, GLuint *counters); 850 GL_APICALL void GL_APIENTRY glGetPerfMonitorGroupStringAMD (GLuint group, GLsizei bufSize, GLsizei *length, GLchar *groupString); 851 GL_APICALL void GL_APIENTRY glGetPerfMonitorCounterStringAMD (GLuint group, GLuint counter, GLsizei bufSize, GLsizei *length, GLchar *counterString); 852 GL_APICALL void GL_APIENTRY glGetPerfMonitorCounterInfoAMD (GLuint group, GLuint counter, GLenum pname, GLvoid *data); 853 GL_APICALL void GL_APIENTRY glGenPerfMonitorsAMD (GLsizei n, GLuint *monitors); 854 GL_APICALL void GL_APIENTRY glDeletePerfMonitorsAMD (GLsizei n, GLuint *monitors); 855 GL_APICALL void GL_APIENTRY glSelectPerfMonitorCountersAMD (GLuint monitor, GLboolean enable, GLuint group, GLint numCounters, GLuint *countersList); 856 GL_APICALL void GL_APIENTRY glBeginPerfMonitorAMD (GLuint monitor); 857 GL_APICALL void GL_APIENTRY glEndPerfMonitorAMD (GLuint monitor); 858 GL_APICALL void GL_APIENTRY glGetPerfMonitorCounterDataAMD (GLuint monitor, GLenum pname, GLsizei dataSize, GLuint *data, GLint *bytesWritten); 859 #endif 860 typedef void (GL_APIENTRYP PFNGLGETPERFMONITORGROUPSAMDPROC) (GLint *numGroups, GLsizei groupsSize, GLuint *groups); 861 typedef void (GL_APIENTRYP PFNGLGETPERFMONITORCOUNTERSAMDPROC) (GLuint group, GLint *numCounters, GLint *maxActiveCounters, GLsizei counterSize, GLuint *counters); 862 typedef void (GL_APIENTRYP PFNGLGETPERFMONITORGROUPSTRINGAMDPROC) (GLuint group, GLsizei bufSize, GLsizei *length, GLchar *groupString); 863 typedef void (GL_APIENTRYP PFNGLGETPERFMONITORCOUNTERSTRINGAMDPROC) (GLuint group, GLuint counter, GLsizei bufSize, GLsizei *length, GLchar *counterString); 864 typedef void (GL_APIENTRYP PFNGLGETPERFMONITORCOUNTERINFOAMDPROC) (GLuint group, GLuint counter, GLenum pname, GLvoid *data); 865 typedef void (GL_APIENTRYP PFNGLGENPERFMONITORSAMDPROC) (GLsizei n, GLuint *monitors); 866 typedef void (GL_APIENTRYP PFNGLDELETEPERFMONITORSAMDPROC) (GLsizei n, GLuint *monitors); 867 typedef void (GL_APIENTRYP PFNGLSELECTPERFMONITORCOUNTERSAMDPROC) (GLuint monitor, GLboolean enable, GLuint group, GLint numCounters, GLuint *countersList); 868 typedef void (GL_APIENTRYP PFNGLBEGINPERFMONITORAMDPROC) (GLuint monitor); 869 typedef void (GL_APIENTRYP PFNGLENDPERFMONITORAMDPROC) (GLuint monitor); 870 typedef void (GL_APIENTRYP PFNGLGETPERFMONITORCOUNTERDATAAMDPROC) (GLuint monitor, GLenum pname, GLsizei dataSize, GLuint *data, GLint *bytesWritten); 871 #endif 872 873 /* GL_AMD_program_binary_Z400 */ 874 #ifndef GL_AMD_program_binary_Z400 875 #define GL_AMD_program_binary_Z400 1 876 #endif 877 878 /*------------------------------------------------------------------------* 879 * ANGLE extension functions 880 *------------------------------------------------------------------------*/ 881 882 /* GL_ANGLE_framebuffer_blit */ 883 #ifndef GL_ANGLE_framebuffer_blit 884 #define GL_ANGLE_framebuffer_blit 1 885 #ifdef GL_GLEXT_PROTOTYPES 886 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); 887 #endif 888 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); 889 #endif 890 891 /* GL_ANGLE_framebuffer_multisample */ 892 #ifndef GL_ANGLE_framebuffer_multisample 893 #define GL_ANGLE_framebuffer_multisample 1 894 #ifdef GL_GLEXT_PROTOTYPES 895 GL_APICALL void GL_APIENTRY glRenderbufferStorageMultisampleANGLE (GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height); 896 #endif 897 typedef void (GL_APIENTRYP PFNGLRENDERBUFFERSTORAGEMULTISAMPLEANGLEPROC) (GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height); 898 #endif 899 900 /*------------------------------------------------------------------------* 901 * APPLE extension functions 902 *------------------------------------------------------------------------*/ 903 904 /* GL_APPLE_rgb_422 */ 905 #ifndef GL_APPLE_rgb_422 906 #define GL_APPLE_rgb_422 1 907 #endif 908 909 /* GL_APPLE_framebuffer_multisample */ 910 #ifndef GL_APPLE_framebuffer_multisample 911 #define GL_APPLE_framebuffer_multisample 1 912 #ifdef GL_GLEXT_PROTOTYPES 913 GL_APICALL void GL_APIENTRY glRenderbufferStorageMultisampleAPPLE (GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height); 914 GL_APICALL void GL_APIENTRY glResolveMultisampleFramebufferAPPLE (void); 915 #endif /* GL_GLEXT_PROTOTYPES */ 916 typedef void (GL_APIENTRYP PFNGLRENDERBUFFERSTORAGEMULTISAMPLEAPPLEPROC) (GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height); 917 typedef void (GL_APIENTRYP PFNGLRESOLVEMULTISAMPLEFRAMEBUFFERAPPLEPROC) (void); 918 #endif 919 920 /* GL_APPLE_texture_format_BGRA8888 */ 921 #ifndef GL_APPLE_texture_format_BGRA8888 922 #define GL_APPLE_texture_format_BGRA8888 1 923 #endif 924 925 /* GL_APPLE_texture_max_level */ 926 #ifndef GL_APPLE_texture_max_level 927 #define GL_APPLE_texture_max_level 1 928 #endif 929 930 /*------------------------------------------------------------------------* 931 * ARM extension functions 932 *------------------------------------------------------------------------*/ 933 934 /* GL_ARM_mali_shader_binary */ 935 #ifndef GL_ARM_mali_shader_binary 936 #define GL_ARM_mali_shader_binary 1 937 #endif 938 939 /* GL_ARM_rgba8 */ 940 #ifndef GL_ARM_rgba8 941 #define GL_ARM_rgba8 1 942 #endif 943 944 /*------------------------------------------------------------------------* 945 * EXT extension functions 946 *------------------------------------------------------------------------*/ 947 948 /* GL_EXT_blend_minmax */ 949 #ifndef GL_EXT_blend_minmax 950 #define GL_EXT_blend_minmax 1 951 #endif 952 953 /* GL_EXT_color_buffer_half_float */ 954 #ifndef GL_EXT_color_buffer_half_float 955 #define GL_EXT_color_buffer_half_float 1 956 #endif 957 958 /* GL_EXT_debug_label */ 959 #ifndef GL_EXT_debug_label 960 #define GL_EXT_debug_label 1 961 #ifdef GL_GLEXT_PROTOTYPES 962 GL_APICALL void GL_APIENTRY glLabelObjectEXT (GLenum type, GLuint object, GLsizei length, const GLchar *label); 963 GL_APICALL void GL_APIENTRY glGetObjectLabelEXT (GLenum type, GLuint object, GLsizei bufSize, GLsizei *length, GLchar *label); 964 #endif 965 typedef void (GL_APIENTRYP PFNGLLABELOBJECTEXTPROC) (GLenum type, GLuint object, GLsizei length, const GLchar *label); 966 typedef void (GL_APIENTRYP PFNGLGETOBJECTLABELEXTPROC) (GLenum type, GLuint object, GLsizei bufSize, GLsizei *length, GLchar *label); 967 #endif 968 969 /* GL_EXT_debug_marker */ 970 #ifndef GL_EXT_debug_marker 971 #define GL_EXT_debug_marker 1 972 #ifdef GL_GLEXT_PROTOTYPES 973 GL_APICALL void GL_APIENTRY glInsertEventMarkerEXT (GLsizei length, const GLchar *marker); 974 GL_APICALL void GL_APIENTRY glPushGroupMarkerEXT (GLsizei length, const GLchar *marker); 975 GL_APICALL void GL_APIENTRY glPopGroupMarkerEXT (void); 976 #endif 977 typedef void (GL_APIENTRYP PFNGLINSERTEVENTMARKEREXTPROC) (GLsizei length, const GLchar *marker); 978 typedef void (GL_APIENTRYP PFNGLPUSHGROUPMARKEREXTPROC) (GLsizei length, const GLchar *marker); 979 typedef void (GL_APIENTRYP PFNGLPOPGROUPMARKEREXTPROC) (void); 980 #endif 981 982 /* GL_EXT_discard_framebuffer */ 983 #ifndef GL_EXT_discard_framebuffer 984 #define GL_EXT_discard_framebuffer 1 985 #ifdef GL_GLEXT_PROTOTYPES 986 GL_APICALL void GL_APIENTRY glDiscardFramebufferEXT (GLenum target, GLsizei numAttachments, const GLenum *attachments); 987 #endif 988 typedef void (GL_APIENTRYP PFNGLDISCARDFRAMEBUFFEREXTPROC) (GLenum target, GLsizei numAttachments, const GLenum *attachments); 989 #endif 990 991 /* GL_EXT_multisampled_render_to_texture */ 992 #ifndef GL_EXT_multisampled_render_to_texture 993 #define GL_EXT_multisampled_render_to_texture 1 994 #ifdef GL_GLEXT_PROTOTYPES 995 GL_APICALL void GL_APIENTRY glRenderbufferStorageMultisampleEXT (GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height); 996 GL_APICALL void GL_APIENTRY glFramebufferTexture2DMultisampleEXT (GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLsizei samples); 997 #endif 998 typedef void (GL_APIENTRYP PFNGLRENDERBUFFERSTORAGEMULTISAMPLEEXTPROC) (GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height); 999 typedef void (GL_APIENTRYP PFNGLFRAMEBUFFERTEXTURE2DMULTISAMPLEEXTPROC) (GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLsizei samples); 1000 #endif 1001 1002 #ifndef GL_EXT_multi_draw_arrays 1003 #define GL_EXT_multi_draw_arrays 1 1004 #ifdef GL_GLEXT_PROTOTYPES 1005 GL_APICALL void GL_APIENTRY glMultiDrawArraysEXT (GLenum mode, GLint *first, GLsizei *count, GLsizei primcount); 1006 GL_APICALL void GL_APIENTRY glMultiDrawElementsEXT (GLenum mode, const GLsizei *count, GLenum type, const GLvoid* *indices, GLsizei primcount); 1007 #endif /* GL_GLEXT_PROTOTYPES */ 1008 typedef void (GL_APIENTRYP PFNGLMULTIDRAWARRAYSEXTPROC) (GLenum mode, GLint *first, GLsizei *count, GLsizei primcount); 1009 typedef void (GL_APIENTRYP PFNGLMULTIDRAWELEMENTSEXTPROC) (GLenum mode, const GLsizei *count, GLenum type, const GLvoid* *indices, GLsizei primcount); 1010 #endif 1011 1012 /* GL_EXT_occlusion_query_boolean */ 1013 #ifndef GL_EXT_occlusion_query_boolean 1014 #define GL_EXT_occlusion_query_boolean 1 1015 #ifdef GL_GLEXT_PROTOTYPES 1016 GL_APICALL void GL_APIENTRY glGenQueriesEXT (GLsizei n, GLuint *ids); 1017 GL_APICALL void GL_APIENTRY glDeleteQueriesEXT (GLsizei n, const GLuint *ids); 1018 GL_APICALL GLboolean GL_APIENTRY glIsQueryEXT (GLuint id); 1019 GL_APICALL void GL_APIENTRY glBeginQueryEXT (GLenum target, GLuint id); 1020 GL_APICALL void GL_APIENTRY glEndQueryEXT (GLenum target); 1021 GL_APICALL void GL_APIENTRY glGetQueryivEXT (GLenum target, GLenum pname, GLint *params); 1022 GL_APICALL void GL_APIENTRY glGetQueryObjectuivEXT (GLuint id, GLenum pname, GLuint *params); 1023 #endif 1024 typedef void (GL_APIENTRYP PFNGLGENQUERIESEXTPROC) (GLsizei n, GLuint *ids); 1025 typedef void (GL_APIENTRYP PFNGLDELETEQUERIESEXTPROC) (GLsizei n, const GLuint *ids); 1026 typedef GLboolean (GL_APIENTRYP PFNGLISQUERYEXTPROC) (GLuint id); 1027 typedef void (GL_APIENTRYP PFNGLBEGINQUERYEXTPROC) (GLenum target, GLuint id); 1028 typedef void (GL_APIENTRYP PFNGLENDQUERYEXTPROC) (GLenum target); 1029 typedef void (GL_APIENTRYP PFNGLGETQUERYIVEXTPROC) (GLenum target, GLenum pname, GLint *params); 1030 typedef void (GL_APIENTRYP PFNGLGETQUERYOBJECTUIVEXTPROC) (GLuint id, GLenum pname, GLuint *params); 1031 #endif 1032 1033 /* GL_EXT_read_format_bgra */ 1034 #ifndef GL_EXT_read_format_bgra 1035 #define GL_EXT_read_format_bgra 1 1036 #endif 1037 1038 /* GL_EXT_robustness */ 1039 #ifndef GL_EXT_robustness 1040 #define GL_EXT_robustness 1 1041 #ifdef GL_GLEXT_PROTOTYPES 1042 GL_APICALL GLenum GL_APIENTRY glGetGraphicsResetStatusEXT (void); 1043 GL_APICALL void GL_APIENTRY glReadnPixelsEXT (GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, GLsizei bufSize, void *data); 1044 GL_APICALL void GL_APIENTRY glGetnUniformfvEXT (GLuint program, GLint location, GLsizei bufSize, float *params); 1045 GL_APICALL void GL_APIENTRY glGetnUniformivEXT (GLuint program, GLint location, GLsizei bufSize, GLint *params); 1046 #endif 1047 typedef GLenum (GL_APIENTRYP PFNGLGETGRAPHICSRESETSTATUSEXTPROC) (void); 1048 typedef void (GL_APIENTRYP PFNGLREADNPIXELSEXTPROC) (GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, GLsizei bufSize, void *data); 1049 typedef void (GL_APIENTRYP PFNGLGETNUNIFORMFVEXTPROC) (GLuint program, GLint location, GLsizei bufSize, float *params); 1050 typedef void (GL_APIENTRYP PFNGLGETNUNIFORMIVEXTPROC) (GLuint program, GLint location, GLsizei bufSize, GLint *params); 1051 #endif 1052 1053 /* GL_EXT_separate_shader_objects */ 1054 #ifndef GL_EXT_separate_shader_objects 1055 #define GL_EXT_separate_shader_objects 1 1056 #ifdef GL_GLEXT_PROTOTYPES 1057 GL_APICALL void GL_APIENTRY glUseProgramStagesEXT (GLuint pipeline, GLbitfield stages, GLuint program); 1058 GL_APICALL void GL_APIENTRY glActiveShaderProgramEXT (GLuint pipeline, GLuint program); 1059 GL_APICALL GLuint GL_APIENTRY glCreateShaderProgramvEXT (GLenum type, GLsizei count, const GLchar **strings); 1060 GL_APICALL void GL_APIENTRY glBindProgramPipelineEXT (GLuint pipeline); 1061 GL_APICALL void GL_APIENTRY glDeleteProgramPipelinesEXT (GLsizei n, const GLuint *pipelines); 1062 GL_APICALL void GL_APIENTRY glGenProgramPipelinesEXT (GLsizei n, GLuint *pipelines); 1063 GL_APICALL GLboolean GL_APIENTRY glIsProgramPipelineEXT (GLuint pipeline); 1064 GL_APICALL void GL_APIENTRY glProgramParameteriEXT (GLuint program, GLenum pname, GLint value); 1065 GL_APICALL void GL_APIENTRY glGetProgramPipelineivEXT (GLuint pipeline, GLenum pname, GLint *params); 1066 GL_APICALL void GL_APIENTRY glProgramUniform1iEXT (GLuint program, GLint location, GLint x); 1067 GL_APICALL void GL_APIENTRY glProgramUniform2iEXT (GLuint program, GLint location, GLint x, GLint y); 1068 GL_APICALL void GL_APIENTRY glProgramUniform3iEXT (GLuint program, GLint location, GLint x, GLint y, GLint z); 1069 GL_APICALL void GL_APIENTRY glProgramUniform4iEXT (GLuint program, GLint location, GLint x, GLint y, GLint z, GLint w); 1070 GL_APICALL void GL_APIENTRY glProgramUniform1fEXT (GLuint program, GLint location, GLfloat x); 1071 GL_APICALL void GL_APIENTRY glProgramUniform2fEXT (GLuint program, GLint location, GLfloat x, GLfloat y); 1072 GL_APICALL void GL_APIENTRY glProgramUniform3fEXT (GLuint program, GLint location, GLfloat x, GLfloat y, GLfloat z); 1073 GL_APICALL void GL_APIENTRY glProgramUniform4fEXT (GLuint program, GLint location, GLfloat x, GLfloat y, GLfloat z, GLfloat w); 1074 GL_APICALL void GL_APIENTRY glProgramUniform1ivEXT (GLuint program, GLint location, GLsizei count, const GLint *value); 1075 GL_APICALL void GL_APIENTRY glProgramUniform2ivEXT (GLuint program, GLint location, GLsizei count, const GLint *value); 1076 GL_APICALL void GL_APIENTRY glProgramUniform3ivEXT (GLuint program, GLint location, GLsizei count, const GLint *value); 1077 GL_APICALL void GL_APIENTRY glProgramUniform4ivEXT (GLuint program, GLint location, GLsizei count, const GLint *value); 1078 GL_APICALL void GL_APIENTRY glProgramUniform1fvEXT (GLuint program, GLint location, GLsizei count, const GLfloat *value); 1079 GL_APICALL void GL_APIENTRY glProgramUniform2fvEXT (GLuint program, GLint location, GLsizei count, const GLfloat *value); 1080 GL_APICALL void GL_APIENTRY glProgramUniform3fvEXT (GLuint program, GLint location, GLsizei count, const GLfloat *value); 1081 GL_APICALL void GL_APIENTRY glProgramUniform4fvEXT (GLuint program, GLint location, GLsizei count, const GLfloat *value); 1082 GL_APICALL void GL_APIENTRY glProgramUniformMatrix2fvEXT (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value); 1083 GL_APICALL void GL_APIENTRY glProgramUniformMatrix3fvEXT (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value); 1084 GL_APICALL void GL_APIENTRY glProgramUniformMatrix4fvEXT (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value); 1085 GL_APICALL void GL_APIENTRY glValidateProgramPipelineEXT (GLuint pipeline); 1086 GL_APICALL void GL_APIENTRY glGetProgramPipelineInfoLogEXT (GLuint pipeline, GLsizei bufSize, GLsizei *length, GLchar *infoLog); 1087 #endif 1088 typedef void (GL_APIENTRYP PFNGLUSEPROGRAMSTAGESEXTPROC) (GLuint pipeline, GLbitfield stages, GLuint program); 1089 typedef void (GL_APIENTRYP PFNGLACTIVESHADERPROGRAMEXTPROC) (GLuint pipeline, GLuint program); 1090 typedef GLuint (GL_APIENTRYP PFNGLCREATESHADERPROGRAMVEXTPROC) (GLenum type, GLsizei count, const GLchar **strings); 1091 typedef void (GL_APIENTRYP PFNGLBINDPROGRAMPIPELINEEXTPROC) (GLuint pipeline); 1092 typedef void (GL_APIENTRYP PFNGLDELETEPROGRAMPIPELINESEXTPROC) (GLsizei n, const GLuint *pipelines); 1093 typedef void (GL_APIENTRYP PFNGLGENPROGRAMPIPELINESEXTPROC) (GLsizei n, GLuint *pipelines); 1094 typedef GLboolean (GL_APIENTRYP PFNGLISPROGRAMPIPELINEEXTPROC) (GLuint pipeline); 1095 typedef void (GL_APIENTRYP PFNGLPROGRAMPARAMETERIEXTPROC) (GLuint program, GLenum pname, GLint value); 1096 typedef void (GL_APIENTRYP PFNGLGETPROGRAMPIPELINEIVEXTPROC) (GLuint pipeline, GLenum pname, GLint *params); 1097 typedef void (GL_APIENTRYP PFNGLPROGRAMUNIFORM1IEXTPROC) (GLuint program, GLint location, GLint x); 1098 typedef void (GL_APIENTRYP PFNGLPROGRAMUNIFORM2IEXTPROC) (GLuint program, GLint location, GLint x, GLint y); 1099 typedef void (GL_APIENTRYP PFNGLPROGRAMUNIFORM3IEXTPROC) (GLuint program, GLint location, GLint x, GLint y, GLint z); 1100 typedef void (GL_APIENTRYP PFNGLPROGRAMUNIFORM4IEXTPROC) (GLuint program, GLint location, GLint x, GLint y, GLint z, GLint w); 1101 typedef void (GL_APIENTRYP PFNGLPROGRAMUNIFORM1FEXTPROC) (GLuint program, GLint location, GLfloat x); 1102 typedef void (GL_APIENTRYP PFNGLPROGRAMUNIFORM2FEXTPROC) (GLuint program, GLint location, GLfloat x, GLfloat y); 1103 typedef void (GL_APIENTRYP PFNGLPROGRAMUNIFORM3FEXTPROC) (GLuint program, GLint location, GLfloat x, GLfloat y, GLfloat z); 1104 typedef void (GL_APIENTRYP PFNGLPROGRAMUNIFORM4FEXTPROC) (GLuint program, GLint location, GLfloat x, GLfloat y, GLfloat z, GLfloat w); 1105 typedef void (GL_APIENTRYP PFNGLPROGRAMUNIFORM1IVEXTPROC) (GLuint program, GLint location, GLsizei count, const GLint *value); 1106 typedef void (GL_APIENTRYP PFNGLPROGRAMUNIFORM2IVEXTPROC) (GLuint program, GLint location, GLsizei count, const GLint *value); 1107 typedef void (GL_APIENTRYP PFNGLPROGRAMUNIFORM3IVEXTPROC) (GLuint program, GLint location, GLsizei count, const GLint *value); 1108 typedef void (GL_APIENTRYP PFNGLPROGRAMUNIFORM4IVEXTPROC) (GLuint program, GLint location, GLsizei count, const GLint *value); 1109 typedef void (GL_APIENTRYP PFNGLPROGRAMUNIFORM1FVEXTPROC) (GLuint program, GLint location, GLsizei count, const GLfloat *value); 1110 typedef void (GL_APIENTRYP PFNGLPROGRAMUNIFORM2FVEXTPROC) (GLuint program, GLint location, GLsizei count, const GLfloat *value); 1111 typedef void (GL_APIENTRYP PFNGLPROGRAMUNIFORM3FVEXTPROC) (GLuint program, GLint location, GLsizei count, const GLfloat *value); 1112 typedef void (GL_APIENTRYP PFNGLPROGRAMUNIFORM4FVEXTPROC) (GLuint program, GLint location, GLsizei count, const GLfloat *value); 1113 typedef void (GL_APIENTRYP PFNGLPROGRAMUNIFORMMATRIX2FVEXTPROC) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value); 1114 typedef void (GL_APIENTRYP PFNGLPROGRAMUNIFORMMATRIX3FVEXTPROC) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value); 1115 typedef void (GL_APIENTRYP PFNGLPROGRAMUNIFORMMATRIX4FVEXTPROC) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value); 1116 typedef void (GL_APIENTRYP PFNGLVALIDATEPROGRAMPIPELINEEXTPROC) (GLuint pipeline); 1117 typedef void (GL_APIENTRYP PFNGLGETPROGRAMPIPELINEINFOLOGEXTPROC) (GLuint pipeline, GLsizei bufSize, GLsizei *length, GLchar *infoLog); 1118 #endif 1119 1120 /* GL_EXT_shader_texture_lod */ 1121 #ifndef GL_EXT_shader_texture_lod 1122 #define GL_EXT_shader_texture_lod 1 1123 #endif 1124 1125 /* GL_EXT_shadow_samplers */ 1126 #ifndef GL_EXT_shadow_samplers 1127 #define GL_EXT_shadow_samplers 1 1128 #endif 1129 1130 /* GL_EXT_sRGB */ 1131 #ifndef GL_EXT_sRGB 1132 #define GL_EXT_sRGB 1 1133 #endif 1134 1135 /* GL_EXT_texture_compression_dxt1 */ 1136 #ifndef GL_EXT_texture_compression_dxt1 1137 #define GL_EXT_texture_compression_dxt1 1 1138 #endif 1139 1140 /* GL_EXT_texture_filter_anisotropic */ 1141 #ifndef GL_EXT_texture_filter_anisotropic 1142 #define GL_EXT_texture_filter_anisotropic 1 1143 #endif 1144 1145 /* GL_EXT_texture_format_BGRA8888 */ 1146 #ifndef GL_EXT_texture_format_BGRA8888 1147 #define GL_EXT_texture_format_BGRA8888 1 1148 #endif 1149 1150 /* GL_EXT_texture_rg */ 1151 #ifndef GL_EXT_texture_rg 1152 #define GL_EXT_texture_rg 1 1153 #endif 1154 1155 /* GL_EXT_texture_storage */ 1156 #ifndef GL_EXT_texture_storage 1157 #define GL_EXT_texture_storage 1 1158 #ifdef GL_GLEXT_PROTOTYPES 1159 GL_APICALL void GL_APIENTRY glTexStorage1DEXT (GLenum target, GLsizei levels, GLenum internalformat, GLsizei width); 1160 GL_APICALL void GL_APIENTRY glTexStorage2DEXT (GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height); 1161 GL_APICALL void GL_APIENTRY glTexStorage3DEXT (GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth); 1162 GL_APICALL void GL_APIENTRY glTextureStorage1DEXT (GLuint texture, GLenum target, GLsizei levels, GLenum internalformat, GLsizei width); 1163 GL_APICALL void GL_APIENTRY glTextureStorage2DEXT (GLuint texture, GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height); 1164 GL_APICALL void GL_APIENTRY glTextureStorage3DEXT (GLuint texture, GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth); 1165 #endif 1166 typedef void (GL_APIENTRYP PFNGLTEXSTORAGE1DEXTPROC) (GLenum target, GLsizei levels, GLenum internalformat, GLsizei width); 1167 typedef void (GL_APIENTRYP PFNGLTEXSTORAGE2DEXTPROC) (GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height); 1168 typedef void (GL_APIENTRYP PFNGLTEXSTORAGE3DEXTPROC) (GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth); 1169 typedef void (GL_APIENTRYP PFNGLTEXTURESTORAGE1DEXTPROC) (GLuint texture, GLenum target, GLsizei levels, GLenum internalformat, GLsizei width); 1170 typedef void (GL_APIENTRYP PFNGLTEXTURESTORAGE2DEXTPROC) (GLuint texture, GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height); 1171 typedef void (GL_APIENTRYP PFNGLTEXTURESTORAGE3DEXTPROC) (GLuint texture, GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth); 1172 #endif 1173 1174 /* GL_EXT_texture_type_2_10_10_10_REV */ 1175 #ifndef GL_EXT_texture_type_2_10_10_10_REV 1176 #define GL_EXT_texture_type_2_10_10_10_REV 1 1177 #endif 1178 1179 /* GL_EXT_unpack_subimage */ 1180 #ifndef GL_EXT_unpack_subimage 1181 #define GL_EXT_unpack_subimage 1 1182 #endif 1183 1184 /*------------------------------------------------------------------------* 1185 * DMP extension functions 1186 *------------------------------------------------------------------------*/ 1187 1188 /* GL_DMP_shader_binary */ 1189 #ifndef GL_DMP_shader_binary 1190 #define GL_DMP_shader_binary 1 1191 #endif 1192 1193 /*------------------------------------------------------------------------* 1194 * IMG extension functions 1195 *------------------------------------------------------------------------*/ 1196 1197 /* GL_IMG_program_binary */ 1198 #ifndef GL_IMG_program_binary 1199 #define GL_IMG_program_binary 1 1200 #endif 1201 1202 /* GL_IMG_read_format */ 1203 #ifndef GL_IMG_read_format 1204 #define GL_IMG_read_format 1 1205 #endif 1206 1207 /* GL_IMG_shader_binary */ 1208 #ifndef GL_IMG_shader_binary 1209 #define GL_IMG_shader_binary 1 1210 #endif 1211 1212 /* GL_IMG_texture_compression_pvrtc */ 1213 #ifndef GL_IMG_texture_compression_pvrtc 1214 #define GL_IMG_texture_compression_pvrtc 1 1215 #endif 1216 1217 /* GL_IMG_multisampled_render_to_texture */ 1218 #ifndef GL_IMG_multisampled_render_to_texture 1219 #define GL_IMG_multisampled_render_to_texture 1 1220 #ifdef GL_GLEXT_PROTOTYPES 1221 GL_APICALL void GL_APIENTRY glRenderbufferStorageMultisampleIMG (GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height); 1222 GL_APICALL void GL_APIENTRY glFramebufferTexture2DMultisampleIMG (GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLsizei samples); 1223 #endif 1224 typedef void (GL_APIENTRYP PFNGLRENDERBUFFERSTORAGEMULTISAMPLEIMG) (GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height); 1225 typedef void (GL_APIENTRYP PFNGLFRAMEBUFFERTEXTURE2DMULTISAMPLEIMG) (GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLsizei samples); 1226 #endif 1227 1228 /*------------------------------------------------------------------------* 1229 * NV extension functions 1230 *------------------------------------------------------------------------*/ 1231 1232 /* GL_NV_coverage_sample */ 1233 #ifndef GL_NV_coverage_sample 1234 #define GL_NV_coverage_sample 1 1235 #ifdef GL_GLEXT_PROTOTYPES 1236 GL_APICALL void GL_APIENTRY glCoverageMaskNV (GLboolean mask); 1237 GL_APICALL void GL_APIENTRY glCoverageOperationNV (GLenum operation); 1238 #endif 1239 typedef void (GL_APIENTRYP PFNGLCOVERAGEMASKNVPROC) (GLboolean mask); 1240 typedef void (GL_APIENTRYP PFNGLCOVERAGEOPERATIONNVPROC) (GLenum operation); 1241 #endif 1242 1243 /* GL_NV_depth_nonlinear */ 1244 #ifndef GL_NV_depth_nonlinear 1245 #define GL_NV_depth_nonlinear 1 1246 #endif 1247 1248 /* GL_NV_draw_buffers */ 1249 #ifndef GL_NV_draw_buffers 1250 #define GL_NV_draw_buffers 1 1251 #ifdef GL_GLEXT_PROTOTYPES 1252 GL_APICALL void GL_APIENTRY glDrawBuffersNV (GLsizei n, const GLenum *bufs); 1253 #endif 1254 typedef void (GL_APIENTRYP PFNGLDRAWBUFFERSNVPROC) (GLsizei n, const GLenum *bufs); 1255 #endif 1256 1257 /* GL_NV_fbo_color_attachments */ 1258 #ifndef GL_NV_fbo_color_attachments 1259 #define GL_NV_fbo_color_attachments 1 1260 #endif 1261 1262 /* GL_NV_fence */ 1263 #ifndef GL_NV_fence 1264 #define GL_NV_fence 1 1265 #ifdef GL_GLEXT_PROTOTYPES 1266 GL_APICALL void GL_APIENTRY glDeleteFencesNV (GLsizei n, const GLuint *fences); 1267 GL_APICALL void GL_APIENTRY glGenFencesNV (GLsizei n, GLuint *fences); 1268 GL_APICALL GLboolean GL_APIENTRY glIsFenceNV (GLuint fence); 1269 GL_APICALL GLboolean GL_APIENTRY glTestFenceNV (GLuint fence); 1270 GL_APICALL void GL_APIENTRY glGetFenceivNV (GLuint fence, GLenum pname, GLint *params); 1271 GL_APICALL void GL_APIENTRY glFinishFenceNV (GLuint fence); 1272 GL_APICALL void GL_APIENTRY glSetFenceNV (GLuint fence, GLenum condition); 1273 #endif 1274 typedef void (GL_APIENTRYP PFNGLDELETEFENCESNVPROC) (GLsizei n, const GLuint *fences); 1275 typedef void (GL_APIENTRYP PFNGLGENFENCESNVPROC) (GLsizei n, GLuint *fences); 1276 typedef GLboolean (GL_APIENTRYP PFNGLISFENCENVPROC) (GLuint fence); 1277 typedef GLboolean (GL_APIENTRYP PFNGLTESTFENCENVPROC) (GLuint fence); 1278 typedef void (GL_APIENTRYP PFNGLGETFENCEIVNVPROC) (GLuint fence, GLenum pname, GLint *params); 1279 typedef void (GL_APIENTRYP PFNGLFINISHFENCENVPROC) (GLuint fence); 1280 typedef void (GL_APIENTRYP PFNGLSETFENCENVPROC) (GLuint fence, GLenum condition); 1281 #endif 1282 1283 /* GL_NV_read_buffer */ 1284 #ifndef GL_NV_read_buffer 1285 #define GL_NV_read_buffer 1 1286 #ifdef GL_GLEXT_PROTOTYPES 1287 GL_APICALL void GL_APIENTRY glReadBufferNV (GLenum mode); 1288 #endif 1289 typedef void (GL_APIENTRYP PFNGLREADBUFFERNVPROC) (GLenum mode); 1290 #endif 1291 1292 /* GL_NV_read_buffer_front */ 1293 #ifndef GL_NV_read_buffer_front 1294 #define GL_NV_read_buffer_front 1 1295 #endif 1296 1297 /* GL_NV_read_depth */ 1298 #ifndef GL_NV_read_depth 1299 #define GL_NV_read_depth 1 1300 #endif 1301 1302 /* GL_NV_read_depth_stencil */ 1303 #ifndef GL_NV_read_depth_stencil 1304 #define GL_NV_read_depth_stencil 1 1305 #endif 1306 1307 /* GL_NV_read_stencil */ 1308 #ifndef GL_NV_read_stencil 1309 #define GL_NV_read_stencil 1 1310 #endif 1311 1312 /* GL_NV_texture_compression_s3tc_update */ 1313 #ifndef GL_NV_texture_compression_s3tc_update 1314 #define GL_NV_texture_compression_s3tc_update 1 1315 #endif 1316 1317 /* GL_NV_texture_npot_2D_mipmap */ 1318 #ifndef GL_NV_texture_npot_2D_mipmap 1319 #define GL_NV_texture_npot_2D_mipmap 1 1320 #endif 1321 1322 /*------------------------------------------------------------------------* 1323 * QCOM extension functions 1324 *------------------------------------------------------------------------*/ 1325 1326 /* GL_QCOM_alpha_test */ 1327 #ifndef GL_QCOM_alpha_test 1328 #define GL_QCOM_alpha_test 1 1329 #ifdef GL_GLEXT_PROTOTYPES 1330 GL_APICALL void GL_APIENTRY glAlphaFuncQCOM (GLenum func, GLclampf ref); 1331 #endif 1332 typedef void (GL_APIENTRYP PFNGLALPHAFUNCQCOMPROC) (GLenum func, GLclampf ref); 1333 #endif 1334 1335 /* GL_QCOM_driver_control */ 1336 #ifndef GL_QCOM_driver_control 1337 #define GL_QCOM_driver_control 1 1338 #ifdef GL_GLEXT_PROTOTYPES 1339 GL_APICALL void GL_APIENTRY glGetDriverControlsQCOM (GLint *num, GLsizei size, GLuint *driverControls); 1340 GL_APICALL void GL_APIENTRY glGetDriverControlStringQCOM (GLuint driverControl, GLsizei bufSize, GLsizei *length, GLchar *driverControlString); 1341 GL_APICALL void GL_APIENTRY glEnableDriverControlQCOM (GLuint driverControl); 1342 GL_APICALL void GL_APIENTRY glDisableDriverControlQCOM (GLuint driverControl); 1343 #endif 1344 typedef void (GL_APIENTRYP PFNGLGETDRIVERCONTROLSQCOMPROC) (GLint *num, GLsizei size, GLuint *driverControls); 1345 typedef void (GL_APIENTRYP PFNGLGETDRIVERCONTROLSTRINGQCOMPROC) (GLuint driverControl, GLsizei bufSize, GLsizei *length, GLchar *driverControlString); 1346 typedef void (GL_APIENTRYP PFNGLENABLEDRIVERCONTROLQCOMPROC) (GLuint driverControl); 1347 typedef void (GL_APIENTRYP PFNGLDISABLEDRIVERCONTROLQCOMPROC) (GLuint driverControl); 1348 #endif 1349 1350 /* GL_QCOM_extended_get */ 1351 #ifndef GL_QCOM_extended_get 1352 #define GL_QCOM_extended_get 1 1353 #ifdef GL_GLEXT_PROTOTYPES 1354 GL_APICALL void GL_APIENTRY glExtGetTexturesQCOM (GLuint *textures, GLint maxTextures, GLint *numTextures); 1355 GL_APICALL void GL_APIENTRY glExtGetBuffersQCOM (GLuint *buffers, GLint maxBuffers, GLint *numBuffers); 1356 GL_APICALL void GL_APIENTRY glExtGetRenderbuffersQCOM (GLuint *renderbuffers, GLint maxRenderbuffers, GLint *numRenderbuffers); 1357 GL_APICALL void GL_APIENTRY glExtGetFramebuffersQCOM (GLuint *framebuffers, GLint maxFramebuffers, GLint *numFramebuffers); 1358 GL_APICALL void GL_APIENTRY glExtGetTexLevelParameterivQCOM (GLuint texture, GLenum face, GLint level, GLenum pname, GLint *params); 1359 GL_APICALL void GL_APIENTRY glExtTexObjectStateOverrideiQCOM (GLenum target, GLenum pname, GLint param); 1360 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); 1361 GL_APICALL void GL_APIENTRY glExtGetBufferPointervQCOM (GLenum target, GLvoid **params); 1362 #endif 1363 typedef void (GL_APIENTRYP PFNGLEXTGETTEXTURESQCOMPROC) (GLuint *textures, GLint maxTextures, GLint *numTextures); 1364 typedef void (GL_APIENTRYP PFNGLEXTGETBUFFERSQCOMPROC) (GLuint *buffers, GLint maxBuffers, GLint *numBuffers); 1365 typedef void (GL_APIENTRYP PFNGLEXTGETRENDERBUFFERSQCOMPROC) (GLuint *renderbuffers, GLint maxRenderbuffers, GLint *numRenderbuffers); 1366 typedef void (GL_APIENTRYP PFNGLEXTGETFRAMEBUFFERSQCOMPROC) (GLuint *framebuffers, GLint maxFramebuffers, GLint *numFramebuffers); 1367 typedef void (GL_APIENTRYP PFNGLEXTGETTEXLEVELPARAMETERIVQCOMPROC) (GLuint texture, GLenum face, GLint level, GLenum pname, GLint *params); 1368 typedef void (GL_APIENTRYP PFNGLEXTTEXOBJECTSTATEOVERRIDEIQCOMPROC) (GLenum target, GLenum pname, GLint param); 1369 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); 1370 typedef void (GL_APIENTRYP PFNGLEXTGETBUFFERPOINTERVQCOMPROC) (GLenum target, GLvoid **params); 1371 #endif 1372 1373 /* GL_QCOM_extended_get2 */ 1374 #ifndef GL_QCOM_extended_get2 1375 #define GL_QCOM_extended_get2 1 1376 #ifdef GL_GLEXT_PROTOTYPES 1377 GL_APICALL void GL_APIENTRY glExtGetShadersQCOM (GLuint *shaders, GLint maxShaders, GLint *numShaders); 1378 GL_APICALL void GL_APIENTRY glExtGetProgramsQCOM (GLuint *programs, GLint maxPrograms, GLint *numPrograms); 1379 GL_APICALL GLboolean GL_APIENTRY glExtIsProgramBinaryQCOM (GLuint program); 1380 GL_APICALL void GL_APIENTRY glExtGetProgramBinarySourceQCOM (GLuint program, GLenum shadertype, GLchar *source, GLint *length); 1381 #endif 1382 typedef void (GL_APIENTRYP PFNGLEXTGETSHADERSQCOMPROC) (GLuint *shaders, GLint maxShaders, GLint *numShaders); 1383 typedef void (GL_APIENTRYP PFNGLEXTGETPROGRAMSQCOMPROC) (GLuint *programs, GLint maxPrograms, GLint *numPrograms); 1384 typedef GLboolean (GL_APIENTRYP PFNGLEXTISPROGRAMBINARYQCOMPROC) (GLuint program); 1385 typedef void (GL_APIENTRYP PFNGLEXTGETPROGRAMBINARYSOURCEQCOMPROC) (GLuint program, GLenum shadertype, GLchar *source, GLint *length); 1386 #endif 1387 1388 /* GL_QCOM_perfmon_global_mode */ 1389 #ifndef GL_QCOM_perfmon_global_mode 1390 #define GL_QCOM_perfmon_global_mode 1 1391 #endif 1392 1393 /* GL_QCOM_writeonly_rendering */ 1394 #ifndef GL_QCOM_writeonly_rendering 1395 #define GL_QCOM_writeonly_rendering 1 1396 #endif 1397 1398 /* GL_QCOM_tiled_rendering */ 1399 #ifndef GL_QCOM_tiled_rendering 1400 #define GL_QCOM_tiled_rendering 1 1401 #ifdef GL_GLEXT_PROTOTYPES 1402 GL_APICALL void GL_APIENTRY glStartTilingQCOM (GLuint x, GLuint y, GLuint width, GLuint height, GLbitfield preserveMask); 1403 GL_APICALL void GL_APIENTRY glEndTilingQCOM (GLbitfield preserveMask); 1404 #endif 1405 typedef void (GL_APIENTRYP PFNGLSTARTTILINGQCOMPROC) (GLuint x, GLuint y, GLuint width, GLuint height, GLbitfield preserveMask); 1406 typedef void (GL_APIENTRYP PFNGLENDTILINGQCOMPROC) (GLbitfield preserveMask); 1407 #endif 1408 1409 /*------------------------------------------------------------------------* 1410 * VIV extension tokens 1411 *------------------------------------------------------------------------*/ 1412 1413 /* GL_VIV_shader_binary */ 1414 #ifndef GL_VIV_shader_binary 1415 #define GL_VIV_shader_binary 1 1416 #endif 1417 1418 #ifdef __cplusplus 1419 } 1420 #endif 1421 1422 #endif /* __gl2ext_h_ */ 1423