1 /* 2 Copyright (c) 2012, Broadcom Europe Ltd 3 All rights reserved. 4 5 Redistribution and use in source and binary forms, with or without 6 modification, are permitted provided that the following conditions are met: 7 * Redistributions of source code must retain the above copyright 8 notice, this list of conditions and the following disclaimer. 9 * Redistributions in binary form must reproduce the above copyright 10 notice, this list of conditions and the following disclaimer in the 11 documentation and/or other materials provided with the distribution. 12 * Neither the name of the copyright holder nor the 13 names of its contributors may be used to endorse or promote products 14 derived from this software without specific prior written permission. 15 16 THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND 17 ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED 18 WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE 19 DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY 20 DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES 21 (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; 22 LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND 23 ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 24 (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS 25 SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 26 */ 27 #ifndef __glext_h_ 28 #define __glext_h_ 29 30 /* $Revision: 13240 $ on $Date:: 2010-12-17 15:16:00 -0800 #$ */ 31 32 #ifdef __cplusplus 33 extern "C" { 34 #endif 35 36 /* We want this */ 37 #ifndef GL_GLEXT_PROTOTYPES 38 #define GL_GLEXT_PROTOTYPES 39 #endif 40 41 /* 42 * This document is licensed under the SGI Free Software B License Version 43 * 2.0. For details, see http://oss.sgi.com/projects/FreeB/ . 44 */ 45 46 #ifndef GL_APIENTRYP 47 # define GL_APIENTRYP GL_APIENTRY* 48 #endif 49 50 /*------------------------------------------------------------------------* 51 * OES extension tokens 52 *------------------------------------------------------------------------*/ 53 54 /* GL_OES_blend_equation_separate */ 55 #ifndef GL_OES_blend_equation_separate 56 /* BLEND_EQUATION_RGB_OES same as BLEND_EQUATION_OES */ 57 #define GL_BLEND_EQUATION_RGB_OES 0x8009 58 #define GL_BLEND_EQUATION_ALPHA_OES 0x883D 59 #endif 60 61 /* GL_OES_blend_func_separate */ 62 #ifndef GL_OES_blend_func_separate 63 #define GL_BLEND_DST_RGB_OES 0x80C8 64 #define GL_BLEND_SRC_RGB_OES 0x80C9 65 #define GL_BLEND_DST_ALPHA_OES 0x80CA 66 #define GL_BLEND_SRC_ALPHA_OES 0x80CB 67 #endif 68 69 /* GL_OES_blend_subtract */ 70 #ifndef GL_OES_blend_subtract 71 #define GL_BLEND_EQUATION_OES 0x8009 72 #define GL_FUNC_ADD_OES 0x8006 73 #define GL_FUNC_SUBTRACT_OES 0x800A 74 #define GL_FUNC_REVERSE_SUBTRACT_OES 0x800B 75 #endif 76 77 /* GL_OES_compressed_ETC1_RGB8_texture */ 78 #ifndef GL_OES_compressed_ETC1_RGB8_texture 79 #define GL_ETC1_RGB8_OES 0x8D64 80 #endif 81 82 /* GL_OES_depth24 */ 83 #ifndef GL_OES_depth24 84 #define GL_DEPTH_COMPONENT24_OES 0x81A6 85 #endif 86 87 /* GL_OES_depth32 */ 88 #ifndef GL_OES_depth32 89 #define GL_DEPTH_COMPONENT32_OES 0x81A7 90 #endif 91 92 /* GL_OES_draw_texture */ 93 #ifndef GL_OES_draw_texture 94 #define GL_TEXTURE_CROP_RECT_OES 0x8B9D 95 #endif 96 97 /* GL_OES_EGL_image */ 98 #ifndef GL_OES_EGL_image 99 typedef void* GLeglImageOES; 100 #endif 101 102 /* GL_OES_EGL_image_external */ 103 #ifndef GL_OES_EGL_image_external 104 /* GLeglImageOES defined in GL_OES_EGL_image already. */ 105 #define GL_TEXTURE_EXTERNAL_OES 0x8D65 106 #define GL_TEXTURE_BINDING_EXTERNAL_OES 0x8D67 107 #define GL_REQUIRED_TEXTURE_IMAGE_UNITS_OES 0x8D68 108 #endif 109 110 /* GL_OES_element_index_uint */ 111 #ifndef GL_OES_element_index_uint 112 #define GL_UNSIGNED_INT 0x1405 113 #endif 114 115 /* GL_OES_fixed_point */ 116 #ifndef GL_OES_fixed_point 117 #define GL_FIXED_OES 0x140C 118 #endif 119 120 /* GL_OES_framebuffer_object */ 121 #ifndef GL_OES_framebuffer_object 122 #define GL_NONE_OES 0 123 #define GL_FRAMEBUFFER_OES 0x8D40 124 #define GL_RENDERBUFFER_OES 0x8D41 125 #define GL_RGBA4_OES 0x8056 126 #define GL_RGB5_A1_OES 0x8057 127 #define GL_RGB565_OES 0x8D62 128 #define GL_DEPTH_COMPONENT16_OES 0x81A5 129 #define GL_RENDERBUFFER_WIDTH_OES 0x8D42 130 #define GL_RENDERBUFFER_HEIGHT_OES 0x8D43 131 #define GL_RENDERBUFFER_INTERNAL_FORMAT_OES 0x8D44 132 #define GL_RENDERBUFFER_RED_SIZE_OES 0x8D50 133 #define GL_RENDERBUFFER_GREEN_SIZE_OES 0x8D51 134 #define GL_RENDERBUFFER_BLUE_SIZE_OES 0x8D52 135 #define GL_RENDERBUFFER_ALPHA_SIZE_OES 0x8D53 136 #define GL_RENDERBUFFER_DEPTH_SIZE_OES 0x8D54 137 #define GL_RENDERBUFFER_STENCIL_SIZE_OES 0x8D55 138 #define GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE_OES 0x8CD0 139 #define GL_FRAMEBUFFER_ATTACHMENT_OBJECT_NAME_OES 0x8CD1 140 #define GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL_OES 0x8CD2 141 #define GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE_OES 0x8CD3 142 #define GL_COLOR_ATTACHMENT0_OES 0x8CE0 143 #define GL_DEPTH_ATTACHMENT_OES 0x8D00 144 #define GL_STENCIL_ATTACHMENT_OES 0x8D20 145 #define GL_FRAMEBUFFER_COMPLETE_OES 0x8CD5 146 #define GL_FRAMEBUFFER_INCOMPLETE_ATTACHMENT_OES 0x8CD6 147 #define GL_FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT_OES 0x8CD7 148 #define GL_FRAMEBUFFER_INCOMPLETE_DIMENSIONS_OES 0x8CD9 149 #define GL_FRAMEBUFFER_INCOMPLETE_FORMATS_OES 0x8CDA 150 #define GL_FRAMEBUFFER_UNSUPPORTED_OES 0x8CDD 151 #define GL_FRAMEBUFFER_BINDING_OES 0x8CA6 152 #define GL_RENDERBUFFER_BINDING_OES 0x8CA7 153 #define GL_MAX_RENDERBUFFER_SIZE_OES 0x84E8 154 #define GL_INVALID_FRAMEBUFFER_OPERATION_OES 0x0506 155 #endif 156 157 /* GL_OES_mapbuffer */ 158 #ifndef GL_OES_mapbuffer 159 #define GL_WRITE_ONLY_OES 0x88B9 160 #define GL_BUFFER_ACCESS_OES 0x88BB 161 #define GL_BUFFER_MAPPED_OES 0x88BC 162 #define GL_BUFFER_MAP_POINTER_OES 0x88BD 163 #endif 164 165 /* GL_OES_matrix_get */ 166 #ifndef GL_OES_matrix_get 167 #define GL_MODELVIEW_MATRIX_FLOAT_AS_INT_BITS_OES 0x898D 168 #define GL_PROJECTION_MATRIX_FLOAT_AS_INT_BITS_OES 0x898E 169 #define GL_TEXTURE_MATRIX_FLOAT_AS_INT_BITS_OES 0x898F 170 #endif 171 172 /* GL_OES_matrix_palette */ 173 #ifndef GL_OES_matrix_palette 174 #define GL_MAX_VERTEX_UNITS_OES 0x86A4 175 #define GL_MAX_PALETTE_MATRICES_OES 0x8842 176 #define GL_MATRIX_PALETTE_OES 0x8840 177 #define GL_MATRIX_INDEX_ARRAY_OES 0x8844 178 #define GL_WEIGHT_ARRAY_OES 0x86AD 179 #define GL_CURRENT_PALETTE_MATRIX_OES 0x8843 180 #define GL_MATRIX_INDEX_ARRAY_SIZE_OES 0x8846 181 #define GL_MATRIX_INDEX_ARRAY_TYPE_OES 0x8847 182 #define GL_MATRIX_INDEX_ARRAY_STRIDE_OES 0x8848 183 #define GL_MATRIX_INDEX_ARRAY_POINTER_OES 0x8849 184 #define GL_MATRIX_INDEX_ARRAY_BUFFER_BINDING_OES 0x8B9E 185 #define GL_WEIGHT_ARRAY_SIZE_OES 0x86AB 186 #define GL_WEIGHT_ARRAY_TYPE_OES 0x86A9 187 #define GL_WEIGHT_ARRAY_STRIDE_OES 0x86AA 188 #define GL_WEIGHT_ARRAY_POINTER_OES 0x86AC 189 #define GL_WEIGHT_ARRAY_BUFFER_BINDING_OES 0x889E 190 #endif 191 192 /* GL_OES_packed_depth_stencil */ 193 #ifndef GL_OES_packed_depth_stencil 194 #define GL_DEPTH_STENCIL_OES 0x84F9 195 #define GL_UNSIGNED_INT_24_8_OES 0x84FA 196 #define GL_DEPTH24_STENCIL8_OES 0x88F0 197 #endif 198 199 /* GL_OES_rgb8_rgba8 */ 200 #ifndef GL_OES_rgb8_rgba8 201 #define GL_RGB8_OES 0x8051 202 #define GL_RGBA8_OES 0x8058 203 #endif 204 205 /* GL_OES_stencil1 */ 206 #ifndef GL_OES_stencil1 207 #define GL_STENCIL_INDEX1_OES 0x8D46 208 #endif 209 210 /* GL_OES_stencil4 */ 211 #ifndef GL_OES_stencil4 212 #define GL_STENCIL_INDEX4_OES 0x8D47 213 #endif 214 215 /* GL_OES_stencil8 */ 216 #ifndef GL_OES_stencil8 217 #define GL_STENCIL_INDEX8_OES 0x8D48 218 #endif 219 220 /* GL_OES_stencil_wrap */ 221 #ifndef GL_OES_stencil_wrap 222 #define GL_INCR_WRAP_OES 0x8507 223 #define GL_DECR_WRAP_OES 0x8508 224 #endif 225 226 /* GL_OES_texture_cube_map */ 227 #ifndef GL_OES_texture_cube_map 228 #define GL_NORMAL_MAP_OES 0x8511 229 #define GL_REFLECTION_MAP_OES 0x8512 230 #define GL_TEXTURE_CUBE_MAP_OES 0x8513 231 #define GL_TEXTURE_BINDING_CUBE_MAP_OES 0x8514 232 #define GL_TEXTURE_CUBE_MAP_POSITIVE_X_OES 0x8515 233 #define GL_TEXTURE_CUBE_MAP_NEGATIVE_X_OES 0x8516 234 #define GL_TEXTURE_CUBE_MAP_POSITIVE_Y_OES 0x8517 235 #define GL_TEXTURE_CUBE_MAP_NEGATIVE_Y_OES 0x8518 236 #define GL_TEXTURE_CUBE_MAP_POSITIVE_Z_OES 0x8519 237 #define GL_TEXTURE_CUBE_MAP_NEGATIVE_Z_OES 0x851A 238 #define GL_MAX_CUBE_MAP_TEXTURE_SIZE_OES 0x851C 239 #define GL_TEXTURE_GEN_MODE_OES 0x2500 240 #define GL_TEXTURE_GEN_STR_OES 0x8D60 241 #endif 242 243 /* GL_OES_texture_mirrored_repeat */ 244 #ifndef GL_OES_texture_mirrored_repeat 245 #define GL_MIRRORED_REPEAT_OES 0x8370 246 #endif 247 248 /* GL_OES_vertex_array_object */ 249 #ifndef GL_OES_vertex_array_object 250 #define GL_VERTEX_ARRAY_BINDING_OES 0x85B5 251 #endif 252 253 /*------------------------------------------------------------------------* 254 * AMD extension tokens 255 *------------------------------------------------------------------------*/ 256 257 /* GL_AMD_compressed_3DC_texture */ 258 #ifndef GL_AMD_compressed_3DC_texture 259 #define GL_3DC_X_AMD 0x87F9 260 #define GL_3DC_XY_AMD 0x87FA 261 #endif 262 263 /* GL_AMD_compressed_ATC_texture */ 264 #ifndef GL_AMD_compressed_ATC_texture 265 #define GL_ATC_RGB_AMD 0x8C92 266 #define GL_ATC_RGBA_EXPLICIT_ALPHA_AMD 0x8C93 267 #define GL_ATC_RGBA_INTERPOLATED_ALPHA_AMD 0x87EE 268 #endif 269 270 /*------------------------------------------------------------------------* 271 * APPLE extension tokens 272 *------------------------------------------------------------------------*/ 273 274 /* GL_APPLE_texture_2D_limited_npot */ 275 /* No new tokens introduced by this extension. */ 276 277 /* GL_APPLE_framebuffer_multisample */ 278 #ifndef GL_APPLE_framebuffer_multisample 279 #define GL_RENDERBUFFER_SAMPLES_APPLE 0x8CAB 280 #define GL_FRAMEBUFFER_INCOMPLETE_MULTISAMPLE_APPLE 0x8D56 281 #define GL_MAX_SAMPLES_APPLE 0x8D57 282 #define GL_READ_FRAMEBUFFER_APPLE 0x8CA8 283 #define GL_DRAW_FRAMEBUFFER_APPLE 0x8CA9 284 #define GL_DRAW_FRAMEBUFFER_BINDING_APPLE 0x8CA6 285 #define GL_READ_FRAMEBUFFER_BINDING_APPLE 0x8CAA 286 #endif 287 288 /* GL_APPLE_texture_format_BGRA8888 */ 289 #ifndef GL_APPLE_texture_format_BGRA8888 290 #define GL_BGRA_EXT 0x80E1 291 #endif 292 293 /* GL_APPLE_texture_max_level */ 294 #ifndef GL_APPLE_texture_max_level 295 #define GL_TEXTURE_MAX_LEVEL_APPLE 0x813D 296 #endif 297 298 /* GL_APPLE_rgb_422 */ 299 #ifndef GL_APPLE_rgb_422 300 #define GL_APPLE_rgb_422 1 301 #define GL_RGB_422_APPLE 0x8A1F 302 #define GL_UNSIGNED_SHORT_8_8_APPLE 0x85BA 303 #define GL_UNSIGNED_SHORT_8_8_REV_APPLE 0x85BB 304 #endif 305 /*------------------------------------------------------------------------* 306 * ARM extension tokens 307 *------------------------------------------------------------------------*/ 308 309 /* GL_ARM_rgba8 */ 310 /* No new tokens introduced by this extension. */ 311 312 /*------------------------------------------------------------------------* 313 * EXT extension tokens 314 *------------------------------------------------------------------------*/ 315 316 /* GL_EXT_blend_minmax */ 317 #ifndef GL_EXT_blend_minmax 318 #define GL_MIN_EXT 0x8007 319 #define GL_MAX_EXT 0x8008 320 #endif 321 322 /* GL_EXT_discard_framebuffer */ 323 #ifndef GL_EXT_discard_framebuffer 324 #define GL_COLOR_EXT 0x1800 325 #define GL_DEPTH_EXT 0x1801 326 #define GL_STENCIL_EXT 0x1802 327 #endif 328 329 /* GL_EXT_multi_draw_arrays */ 330 /* No new tokens introduced by this extension. */ 331 332 /* GL_EXT_read_format_bgra */ 333 #ifndef GL_EXT_read_format_bgra 334 #define GL_BGRA_EXT 0x80E1 335 #define GL_UNSIGNED_SHORT_4_4_4_4_REV_EXT 0x8365 336 #define GL_UNSIGNED_SHORT_1_5_5_5_REV_EXT 0x8366 337 #endif 338 339 /* GL_EXT_texture_filter_anisotropic */ 340 #ifndef GL_EXT_texture_filter_anisotropic 341 #define GL_TEXTURE_MAX_ANISOTROPY_EXT 0x84FE 342 #define GL_MAX_TEXTURE_MAX_ANISOTROPY_EXT 0x84FF 343 #endif 344 345 /* GL_EXT_texture_format_BGRA8888 */ 346 #ifndef GL_EXT_texture_format_BGRA8888 347 #define GL_BGRA_EXT 0x80E1 348 #endif 349 350 #ifndef GL_texture_format_RGBX8888_BRCM 351 #define GL_RGBX_BRCM 0x80EE 352 #endif 353 354 /* GL_EXT_texture_lod_bias */ 355 #ifndef GL_EXT_texture_lod_bias 356 #define GL_MAX_TEXTURE_LOD_BIAS_EXT 0x84FD 357 #define GL_TEXTURE_FILTER_CONTROL_EXT 0x8500 358 #define GL_TEXTURE_LOD_BIAS_EXT 0x8501 359 #endif 360 361 /*------------------------------------------------------------------------* 362 * IMG extension tokens 363 *------------------------------------------------------------------------*/ 364 365 /* GL_IMG_read_format */ 366 #ifndef GL_IMG_read_format 367 #define GL_BGRA_IMG 0x80E1 368 #define GL_UNSIGNED_SHORT_4_4_4_4_REV_IMG 0x8365 369 #endif 370 371 /* GL_IMG_texture_compression_pvrtc */ 372 #ifndef GL_IMG_texture_compression_pvrtc 373 #define GL_COMPRESSED_RGB_PVRTC_4BPPV1_IMG 0x8C00 374 #define GL_COMPRESSED_RGB_PVRTC_2BPPV1_IMG 0x8C01 375 #define GL_COMPRESSED_RGBA_PVRTC_4BPPV1_IMG 0x8C02 376 #define GL_COMPRESSED_RGBA_PVRTC_2BPPV1_IMG 0x8C03 377 #endif 378 379 /* GL_IMG_texture_env_enhanced_fixed_function */ 380 #ifndef GL_IMG_texture_env_enhanced_fixed_function 381 #define GL_MODULATE_COLOR_IMG 0x8C04 382 #define GL_RECIP_ADD_SIGNED_ALPHA_IMG 0x8C05 383 #define GL_TEXTURE_ALPHA_MODULATE_IMG 0x8C06 384 #define GL_FACTOR_ALPHA_MODULATE_IMG 0x8C07 385 #define GL_FRAGMENT_ALPHA_MODULATE_IMG 0x8C08 386 #define GL_ADD_BLEND_IMG 0x8C09 387 #define GL_DOT3_RGBA_IMG 0x86AF 388 #endif 389 390 /* GL_IMG_user_clip_plane */ 391 #ifndef GL_IMG_user_clip_plane 392 #define GL_CLIP_PLANE0_IMG 0x3000 393 #define GL_CLIP_PLANE1_IMG 0x3001 394 #define GL_CLIP_PLANE2_IMG 0x3002 395 #define GL_CLIP_PLANE3_IMG 0x3003 396 #define GL_CLIP_PLANE4_IMG 0x3004 397 #define GL_CLIP_PLANE5_IMG 0x3005 398 #define GL_MAX_CLIP_PLANES_IMG 0x0D32 399 #endif 400 401 /* GL_IMG_multisampled_render_to_texture */ 402 #ifndef GL_IMG_multisampled_render_to_texture 403 #define GL_RENDERBUFFER_SAMPLES_IMG 0x9133 404 #define GL_FRAMEBUFFER_INCOMPLETE_MULTISAMPLE_IMG 0x9134 405 #define GL_MAX_SAMPLES_IMG 0x9135 406 #define GL_TEXTURE_SAMPLES_IMG 0x9136 407 #endif 408 409 /*------------------------------------------------------------------------* 410 * NV extension tokens 411 *------------------------------------------------------------------------*/ 412 413 /* GL_NV_fence */ 414 #ifndef GL_NV_fence 415 #define GL_ALL_COMPLETED_NV 0x84F2 416 #define GL_FENCE_STATUS_NV 0x84F3 417 #define GL_FENCE_CONDITION_NV 0x84F4 418 #endif 419 420 /*------------------------------------------------------------------------* 421 * QCOM extension tokens 422 *------------------------------------------------------------------------*/ 423 424 /* GL_QCOM_driver_control */ 425 /* No new tokens introduced by this extension. */ 426 427 /* GL_QCOM_extended_get */ 428 #ifndef GL_QCOM_extended_get 429 #define GL_TEXTURE_WIDTH_QCOM 0x8BD2 430 #define GL_TEXTURE_HEIGHT_QCOM 0x8BD3 431 #define GL_TEXTURE_DEPTH_QCOM 0x8BD4 432 #define GL_TEXTURE_INTERNAL_FORMAT_QCOM 0x8BD5 433 #define GL_TEXTURE_FORMAT_QCOM 0x8BD6 434 #define GL_TEXTURE_TYPE_QCOM 0x8BD7 435 #define GL_TEXTURE_IMAGE_VALID_QCOM 0x8BD8 436 #define GL_TEXTURE_NUM_LEVELS_QCOM 0x8BD9 437 #define GL_TEXTURE_TARGET_QCOM 0x8BDA 438 #define GL_TEXTURE_OBJECT_VALID_QCOM 0x8BDB 439 #define GL_STATE_RESTORE 0x8BDC 440 #endif 441 442 /* GL_QCOM_extended_get2 */ 443 /* No new tokens introduced by this extension. */ 444 445 /* GL_QCOM_perfmon_global_mode */ 446 #ifndef GL_QCOM_perfmon_global_mode 447 #define GL_PERFMON_GLOBAL_MODE_QCOM 0x8FA0 448 #endif 449 450 /* GL_QCOM_writeonly_rendering */ 451 #ifndef GL_QCOM_writeonly_rendering 452 #define GL_WRITEONLY_RENDERING_QCOM 0x8823 453 #endif 454 455 /* GL_QCOM_tiled_rendering */ 456 #ifndef GL_QCOM_tiled_rendering 457 #define GL_COLOR_BUFFER_BIT0_QCOM 0x00000001 458 #define GL_COLOR_BUFFER_BIT1_QCOM 0x00000002 459 #define GL_COLOR_BUFFER_BIT2_QCOM 0x00000004 460 #define GL_COLOR_BUFFER_BIT3_QCOM 0x00000008 461 #define GL_COLOR_BUFFER_BIT4_QCOM 0x00000010 462 #define GL_COLOR_BUFFER_BIT5_QCOM 0x00000020 463 #define GL_COLOR_BUFFER_BIT6_QCOM 0x00000040 464 #define GL_COLOR_BUFFER_BIT7_QCOM 0x00000080 465 #define GL_DEPTH_BUFFER_BIT0_QCOM 0x00000100 466 #define GL_DEPTH_BUFFER_BIT1_QCOM 0x00000200 467 #define GL_DEPTH_BUFFER_BIT2_QCOM 0x00000400 468 #define GL_DEPTH_BUFFER_BIT3_QCOM 0x00000800 469 #define GL_DEPTH_BUFFER_BIT4_QCOM 0x00001000 470 #define GL_DEPTH_BUFFER_BIT5_QCOM 0x00002000 471 #define GL_DEPTH_BUFFER_BIT6_QCOM 0x00004000 472 #define GL_DEPTH_BUFFER_BIT7_QCOM 0x00008000 473 #define GL_STENCIL_BUFFER_BIT0_QCOM 0x00010000 474 #define GL_STENCIL_BUFFER_BIT1_QCOM 0x00020000 475 #define GL_STENCIL_BUFFER_BIT2_QCOM 0x00040000 476 #define GL_STENCIL_BUFFER_BIT3_QCOM 0x00080000 477 #define GL_STENCIL_BUFFER_BIT4_QCOM 0x00100000 478 #define GL_STENCIL_BUFFER_BIT5_QCOM 0x00200000 479 #define GL_STENCIL_BUFFER_BIT6_QCOM 0x00400000 480 #define GL_STENCIL_BUFFER_BIT7_QCOM 0x00800000 481 #define GL_MULTISAMPLE_BUFFER_BIT0_QCOM 0x01000000 482 #define GL_MULTISAMPLE_BUFFER_BIT1_QCOM 0x02000000 483 #define GL_MULTISAMPLE_BUFFER_BIT2_QCOM 0x04000000 484 #define GL_MULTISAMPLE_BUFFER_BIT3_QCOM 0x08000000 485 #define GL_MULTISAMPLE_BUFFER_BIT4_QCOM 0x10000000 486 #define GL_MULTISAMPLE_BUFFER_BIT5_QCOM 0x20000000 487 #define GL_MULTISAMPLE_BUFFER_BIT6_QCOM 0x40000000 488 #define GL_MULTISAMPLE_BUFFER_BIT7_QCOM 0x80000000 489 #endif 490 491 /*------------------------------------------------------------------------* 492 * BRCM extension tokens 493 * TODO: these aren't official yet 494 *------------------------------------------------------------------------*/ 495 #ifndef GL_BRCM_side_by_side_stero_hint 496 #define GL_SIDE_BY_SIDE_STEREO_HINT_BRCM 0x8193 /* GET AN OFFICIAL ENUM */ 497 #endif 498 499 /*------------------------------------------------------------------------* 500 * End of extension tokens, start of corresponding extension functions 501 *------------------------------------------------------------------------*/ 502 503 /*------------------------------------------------------------------------* 504 * OES extension functions 505 *------------------------------------------------------------------------*/ 506 507 /* GL_OES_blend_equation_separate */ 508 #ifndef GL_OES_blend_equation_separate 509 #define GL_OES_blend_equation_separate 0 510 #ifdef GL_GLEXT_PROTOTYPES 511 GL_API void GL_APIENTRY glBlendEquationSeparateOES (GLenum modeRGB, GLenum modeAlpha); 512 #endif 513 typedef void (GL_APIENTRYP PFNGLBLENDEQUATIONSEPARATEOESPROC) (GLenum modeRGB, GLenum modeAlpha); 514 #endif 515 516 /* GL_OES_blend_func_separate */ 517 #ifndef GL_OES_blend_func_separate 518 #define GL_OES_blend_func_separate 0 519 #ifdef GL_GLEXT_PROTOTYPES 520 GL_API void GL_APIENTRY glBlendFuncSeparateOES (GLenum srcRGB, GLenum dstRGB, GLenum srcAlpha, GLenum dstAlpha); 521 #endif 522 typedef void (GL_APIENTRYP PFNGLBLENDFUNCSEPARATEOESPROC) (GLenum srcRGB, GLenum dstRGB, GLenum srcAlpha, GLenum dstAlpha); 523 #endif 524 525 /* GL_OES_blend_subtract */ 526 #ifndef GL_OES_blend_subtract 527 #define GL_OES_blend_subtract 0 528 #ifdef GL_GLEXT_PROTOTYPES 529 GL_API void GL_APIENTRY glBlendEquationOES (GLenum mode); 530 #endif 531 typedef void (GL_APIENTRYP PFNGLBLENDEQUATIONOESPROC) (GLenum mode); 532 #endif 533 534 /* GL_OES_byte_coordinates */ 535 #ifndef GL_OES_byte_coordinates 536 #define GL_OES_byte_coordinates 0 537 #endif 538 539 /* GL_OES_compressed_ETC1_RGB8_texture */ 540 #ifndef GL_OES_compressed_ETC1_RGB8_texture 541 #define GL_OES_compressed_ETC1_RGB8_texture 1 542 #endif 543 544 /* GL_OES_depth24 */ 545 #ifndef GL_OES_depth24 546 #define GL_OES_depth24 0 547 #endif 548 549 /* GL_OES_depth32 */ 550 #ifndef GL_OES_depth32 551 #define GL_OES_depth32 0 552 #endif 553 554 /* GL_OES_draw_texture */ 555 #ifndef GL_OES_draw_texture 556 #define GL_OES_draw_texture 1 557 #ifdef GL_GLEXT_PROTOTYPES 558 GL_API void GL_APIENTRY glDrawTexsOES (GLshort x, GLshort y, GLshort z, GLshort width, GLshort height); 559 GL_API void GL_APIENTRY glDrawTexiOES (GLint x, GLint y, GLint z, GLint width, GLint height); 560 GL_API void GL_APIENTRY glDrawTexxOES (GLfixed x, GLfixed y, GLfixed z, GLfixed width, GLfixed height); 561 GL_API void GL_APIENTRY glDrawTexsvOES (const GLshort *coords); 562 GL_API void GL_APIENTRY glDrawTexivOES (const GLint *coords); 563 GL_API void GL_APIENTRY glDrawTexxvOES (const GLfixed *coords); 564 GL_API void GL_APIENTRY glDrawTexfOES (GLfloat x, GLfloat y, GLfloat z, GLfloat width, GLfloat height); 565 GL_API void GL_APIENTRY glDrawTexfvOES (const GLfloat *coords); 566 #endif 567 typedef void (GL_APIENTRYP PFNGLDRAWTEXSOESPROC) (GLshort x, GLshort y, GLshort z, GLshort width, GLshort height); 568 typedef void (GL_APIENTRYP PFNGLDRAWTEXIOESPROC) (GLint x, GLint y, GLint z, GLint width, GLint height); 569 typedef void (GL_APIENTRYP PFNGLDRAWTEXXOESPROC) (GLfixed x, GLfixed y, GLfixed z, GLfixed width, GLfixed height); 570 typedef void (GL_APIENTRYP PFNGLDRAWTEXSVOESPROC) (const GLshort *coords); 571 typedef void (GL_APIENTRYP PFNGLDRAWTEXIVOESPROC) (const GLint *coords); 572 typedef void (GL_APIENTRYP PFNGLDRAWTEXXVOESPROC) (const GLfixed *coords); 573 typedef void (GL_APIENTRYP PFNGLDRAWTEXFOESPROC) (GLfloat x, GLfloat y, GLfloat z, GLfloat width, GLfloat height); 574 typedef void (GL_APIENTRYP PFNGLDRAWTEXFVOESPROC) (const GLfloat *coords); 575 #endif 576 577 /* GL_OES_EGL_image */ 578 #ifndef GL_OES_EGL_image 579 #define GL_OES_EGL_image 1 580 #ifdef GL_GLEXT_PROTOTYPES 581 GL_API void GL_APIENTRY glEGLImageTargetTexture2DOES (GLenum target, GLeglImageOES image); 582 GL_API void GL_APIENTRY glEGLImageTargetRenderbufferStorageOES (GLenum target, GLeglImageOES image); 583 #endif 584 typedef void (GL_APIENTRYP PFNGLEGLIMAGETARGETTEXTURE2DOESPROC) (GLenum target, GLeglImageOES image); 585 typedef void (GL_APIENTRYP PFNGLEGLIMAGETARGETRENDERBUFFERSTORAGEOESPROC) (GLenum target, GLeglImageOES image); 586 #endif 587 588 /* GL_OES_EGL_image_external */ 589 #ifndef GL_OES_EGL_image_external 590 #define GL_OES_EGL_image_external 1 591 /* glEGLImageTargetTexture2DOES defined in GL_OES_EGL_image already. */ 592 #endif 593 594 /* GL_OES_element_index_uint */ 595 #ifndef GL_OES_element_index_uint 596 #define GL_OES_element_index_uint 0 597 #endif 598 599 /* GL_OES_extended_matrix_palette */ 600 #ifndef GL_OES_extended_matrix_palette 601 #define GL_OES_extended_matrix_palette 0 602 #endif 603 604 /* GL_OES_fbo_render_mipmap */ 605 #ifndef GL_OES_fbo_render_mipmap 606 #define GL_OES_fbo_render_mipmap 0 607 #endif 608 609 /* GL_OES_fixed_point */ 610 #ifndef GL_OES_fixed_point 611 #define GL_OES_fixed_point 0 612 #ifdef GL_GLEXT_PROTOTYPES 613 GL_API void GL_APIENTRY glAlphaFuncxOES (GLenum func, GLclampx ref); 614 GL_API void GL_APIENTRY glClearColorxOES (GLclampx red, GLclampx green, GLclampx blue, GLclampx alpha); 615 GL_API void GL_APIENTRY glClearDepthxOES (GLclampx depth); 616 GL_API void GL_APIENTRY glClipPlanexOES (GLenum plane, const GLfixed *equation); 617 GL_API void GL_APIENTRY glColor4xOES (GLfixed red, GLfixed green, GLfixed blue, GLfixed alpha); 618 GL_API void GL_APIENTRY glDepthRangexOES (GLclampx zNear, GLclampx zFar); 619 GL_API void GL_APIENTRY glFogxOES (GLenum pname, GLfixed param); 620 GL_API void GL_APIENTRY glFogxvOES (GLenum pname, const GLfixed *params); 621 GL_API void GL_APIENTRY glFrustumxOES (GLfixed left, GLfixed right, GLfixed bottom, GLfixed top, GLfixed zNear, GLfixed zFar); 622 GL_API void GL_APIENTRY glGetClipPlanexOES (GLenum pname, GLfixed eqn[4]); 623 GL_API void GL_APIENTRY glGetFixedvOES (GLenum pname, GLfixed *params); 624 GL_API void GL_APIENTRY glGetLightxvOES (GLenum light, GLenum pname, GLfixed *params); 625 GL_API void GL_APIENTRY glGetMaterialxvOES (GLenum face, GLenum pname, GLfixed *params); 626 GL_API void GL_APIENTRY glGetTexEnvxvOES (GLenum env, GLenum pname, GLfixed *params); 627 GL_API void GL_APIENTRY glGetTexParameterxvOES (GLenum target, GLenum pname, GLfixed *params); 628 GL_API void GL_APIENTRY glLightModelxOES (GLenum pname, GLfixed param); 629 GL_API void GL_APIENTRY glLightModelxvOES (GLenum pname, const GLfixed *params); 630 GL_API void GL_APIENTRY glLightxOES (GLenum light, GLenum pname, GLfixed param); 631 GL_API void GL_APIENTRY glLightxvOES (GLenum light, GLenum pname, const GLfixed *params); 632 GL_API void GL_APIENTRY glLineWidthxOES (GLfixed width); 633 GL_API void GL_APIENTRY glLoadMatrixxOES (const GLfixed *m); 634 GL_API void GL_APIENTRY glMaterialxOES (GLenum face, GLenum pname, GLfixed param); 635 GL_API void GL_APIENTRY glMaterialxvOES (GLenum face, GLenum pname, const GLfixed *params); 636 GL_API void GL_APIENTRY glMultMatrixxOES (const GLfixed *m); 637 GL_API void GL_APIENTRY glMultiTexCoord4xOES (GLenum target, GLfixed s, GLfixed t, GLfixed r, GLfixed q); 638 GL_API void GL_APIENTRY glNormal3xOES (GLfixed nx, GLfixed ny, GLfixed nz); 639 GL_API void GL_APIENTRY glOrthoxOES (GLfixed left, GLfixed right, GLfixed bottom, GLfixed top, GLfixed zNear, GLfixed zFar); 640 GL_API void GL_APIENTRY glPointParameterxOES (GLenum pname, GLfixed param); 641 GL_API void GL_APIENTRY glPointParameterxvOES (GLenum pname, const GLfixed *params); 642 GL_API void GL_APIENTRY glPointSizexOES (GLfixed size); 643 GL_API void GL_APIENTRY glPolygonOffsetxOES (GLfixed factor, GLfixed units); 644 GL_API void GL_APIENTRY glRotatexOES (GLfixed angle, GLfixed x, GLfixed y, GLfixed z); 645 GL_API void GL_APIENTRY glSampleCoveragexOES (GLclampx value, GLboolean invert); 646 GL_API void GL_APIENTRY glScalexOES (GLfixed x, GLfixed y, GLfixed z); 647 GL_API void GL_APIENTRY glTexEnvxOES (GLenum target, GLenum pname, GLfixed param); 648 GL_API void GL_APIENTRY glTexEnvxvOES (GLenum target, GLenum pname, const GLfixed *params); 649 GL_API void GL_APIENTRY glTexParameterxOES (GLenum target, GLenum pname, GLfixed param); 650 GL_API void GL_APIENTRY glTexParameterxvOES (GLenum target, GLenum pname, const GLfixed *params); 651 GL_API void GL_APIENTRY glTranslatexOES (GLfixed x, GLfixed y, GLfixed z); 652 #endif 653 typedef void (GL_APIENTRYP PFNGLALPHAFUNCXOESPROC) (GLenum func, GLclampx ref); 654 typedef void (GL_APIENTRYP PFNGLCLEARCOLORXOESPROC) (GLclampx red, GLclampx green, GLclampx blue, GLclampx alpha); 655 typedef void (GL_APIENTRYP PFNGLCLEARDEPTHXOESPROC) (GLclampx depth); 656 typedef void (GL_APIENTRYP PFNGLCLIPPLANEXOESPROC) (GLenum plane, const GLfixed *equation); 657 typedef void (GL_APIENTRYP PFNGLCOLOR4XOESPROC) (GLfixed red, GLfixed green, GLfixed blue, GLfixed alpha); 658 typedef void (GL_APIENTRYP PFNGLDEPTHRANGEXOESPROC) (GLclampx zNear, GLclampx zFar); 659 typedef void (GL_APIENTRYP PFNGLFOGXOESPROC) (GLenum pname, GLfixed param); 660 typedef void (GL_APIENTRYP PFNGLFOGXVOESPROC) (GLenum pname, const GLfixed *params); 661 typedef void (GL_APIENTRYP PFNGLFRUSTUMXOESPROC) (GLfixed left, GLfixed right, GLfixed bottom, GLfixed top, GLfixed zNear, GLfixed zFar); 662 typedef void (GL_APIENTRYP PFNGLGETCLIPPLANEXOESPROC) (GLenum pname, GLfixed eqn[4]); 663 typedef void (GL_APIENTRYP PFNGLGETFIXEDVOESPROC) (GLenum pname, GLfixed *params); 664 typedef void (GL_APIENTRYP PFNGLGETLIGHTXVOESPROC) (GLenum light, GLenum pname, GLfixed *params); 665 typedef void (GL_APIENTRYP PFNGLGETMATERIALXVOESPROC) (GLenum face, GLenum pname, GLfixed *params); 666 typedef void (GL_APIENTRYP PFNGLGETTEXENVXVOESPROC) (GLenum env, GLenum pname, GLfixed *params); 667 typedef void (GL_APIENTRYP PFNGLGETTEXPARAMETERXVOESPROC) (GLenum target, GLenum pname, GLfixed *params); 668 typedef void (GL_APIENTRYP PFNGLLIGHTMODELXOESPROC) (GLenum pname, GLfixed param); 669 typedef void (GL_APIENTRYP PFNGLLIGHTMODELXVOESPROC) (GLenum pname, const GLfixed *params); 670 typedef void (GL_APIENTRYP PFNGLLIGHTXOESPROC) (GLenum light, GLenum pname, GLfixed param); 671 typedef void (GL_APIENTRYP PFNGLLIGHTXVOESPROC) (GLenum light, GLenum pname, const GLfixed *params); 672 typedef void (GL_APIENTRYP PFNGLLINEWIDTHXOESPROC) (GLfixed width); 673 typedef void (GL_APIENTRYP PFNGLLOADMATRIXXOESPROC) (const GLfixed *m); 674 typedef void (GL_APIENTRYP PFNGLMATERIALXOESPROC) (GLenum face, GLenum pname, GLfixed param); 675 typedef void (GL_APIENTRYP PFNGLMATERIALXVOESPROC) (GLenum face, GLenum pname, const GLfixed *params); 676 typedef void (GL_APIENTRYP PFNGLMULTMATRIXXOESPROC) (const GLfixed *m); 677 typedef void (GL_APIENTRYP PFNGLMULTITEXCOORD4XOESPROC) (GLenum target, GLfixed s, GLfixed t, GLfixed r, GLfixed q); 678 typedef void (GL_APIENTRYP PFNGLNORMAL3XOESPROC) (GLfixed nx, GLfixed ny, GLfixed nz); 679 typedef void (GL_APIENTRYP PFNGLORTHOXOESPROC) (GLfixed left, GLfixed right, GLfixed bottom, GLfixed top, GLfixed zNear, GLfixed zFar); 680 typedef void (GL_APIENTRYP PFNGLPOINTPARAMETERXOESPROC) (GLenum pname, GLfixed param); 681 typedef void (GL_APIENTRYP PFNGLPOINTPARAMETERXVOESPROC) (GLenum pname, const GLfixed *params); 682 typedef void (GL_APIENTRYP PFNGLPOINTSIZEXOESPROC) (GLfixed size); 683 typedef void (GL_APIENTRYP PFNGLPOLYGONOFFSETXOESPROC) (GLfixed factor, GLfixed units); 684 typedef void (GL_APIENTRYP PFNGLROTATEXOESPROC) (GLfixed angle, GLfixed x, GLfixed y, GLfixed z); 685 typedef void (GL_APIENTRYP PFNGLSAMPLECOVERAGEXOESPROC) (GLclampx value, GLboolean invert); 686 typedef void (GL_APIENTRYP PFNGLSCALEXOESPROC) (GLfixed x, GLfixed y, GLfixed z); 687 typedef void (GL_APIENTRYP PFNGLTEXENVXOESPROC) (GLenum target, GLenum pname, GLfixed param); 688 typedef void (GL_APIENTRYP PFNGLTEXENVXVOESPROC) (GLenum target, GLenum pname, const GLfixed *params); 689 typedef void (GL_APIENTRYP PFNGLTEXPARAMETERXOESPROC) (GLenum target, GLenum pname, GLfixed param); 690 typedef void (GL_APIENTRYP PFNGLTEXPARAMETERXVOESPROC) (GLenum target, GLenum pname, const GLfixed *params); 691 typedef void (GL_APIENTRYP PFNGLTRANSLATEXOESPROC) (GLfixed x, GLfixed y, GLfixed z); 692 #endif 693 694 /* GL_OES_framebuffer_object */ 695 #ifndef GL_OES_framebuffer_object 696 #define GL_OES_framebuffer_object 1 697 #ifdef GL_GLEXT_PROTOTYPES 698 GL_API GLboolean GL_APIENTRY glIsRenderbufferOES (GLuint renderbuffer); 699 GL_API void GL_APIENTRY glBindRenderbufferOES (GLenum target, GLuint renderbuffer); 700 GL_API void GL_APIENTRY glDeleteRenderbuffersOES (GLsizei n, const GLuint* renderbuffers); 701 GL_API void GL_APIENTRY glGenRenderbuffersOES (GLsizei n, GLuint* renderbuffers); 702 GL_API void GL_APIENTRY glRenderbufferStorageOES (GLenum target, GLenum internalformat, GLsizei width, GLsizei height); 703 GL_API void GL_APIENTRY glGetRenderbufferParameterivOES (GLenum target, GLenum pname, GLint* params); 704 GL_API GLboolean GL_APIENTRY glIsFramebufferOES (GLuint framebuffer); 705 GL_API void GL_APIENTRY glBindFramebufferOES (GLenum target, GLuint framebuffer); 706 GL_API void GL_APIENTRY glDeleteFramebuffersOES (GLsizei n, const GLuint* framebuffers); 707 GL_API void GL_APIENTRY glGenFramebuffersOES (GLsizei n, GLuint* framebuffers); 708 GL_API GLenum GL_APIENTRY glCheckFramebufferStatusOES (GLenum target); 709 GL_API void GL_APIENTRY glFramebufferRenderbufferOES (GLenum target, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer); 710 GL_API void GL_APIENTRY glFramebufferTexture2DOES (GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level); 711 GL_API void GL_APIENTRY glGetFramebufferAttachmentParameterivOES (GLenum target, GLenum attachment, GLenum pname, GLint* params); 712 GL_API void GL_APIENTRY glGenerateMipmapOES (GLenum target); 713 #endif 714 typedef GLboolean (GL_APIENTRYP PFNGLISRENDERBUFFEROESPROC) (GLuint renderbuffer); 715 typedef void (GL_APIENTRYP PFNGLBINDRENDERBUFFEROESPROC) (GLenum target, GLuint renderbuffer); 716 typedef void (GL_APIENTRYP PFNGLDELETERENDERBUFFERSOESPROC) (GLsizei n, const GLuint* renderbuffers); 717 typedef void (GL_APIENTRYP PFNGLGENRENDERBUFFERSOESPROC) (GLsizei n, GLuint* renderbuffers); 718 typedef void (GL_APIENTRYP PFNGLRENDERBUFFERSTORAGEOESPROC) (GLenum target, GLenum internalformat, GLsizei width, GLsizei height); 719 typedef void (GL_APIENTRYP PFNGLGETRENDERBUFFERPARAMETERIVOESPROC) (GLenum target, GLenum pname, GLint* params); 720 typedef GLboolean (GL_APIENTRYP PFNGLISFRAMEBUFFEROESPROC) (GLuint framebuffer); 721 typedef void (GL_APIENTRYP PFNGLBINDFRAMEBUFFEROESPROC) (GLenum target, GLuint framebuffer); 722 typedef void (GL_APIENTRYP PFNGLDELETEFRAMEBUFFERSOESPROC) (GLsizei n, const GLuint* framebuffers); 723 typedef void (GL_APIENTRYP PFNGLGENFRAMEBUFFERSOESPROC) (GLsizei n, GLuint* framebuffers); 724 typedef GLenum (GL_APIENTRYP PFNGLCHECKFRAMEBUFFERSTATUSOESPROC) (GLenum target); 725 typedef void (GL_APIENTRYP PFNGLFRAMEBUFFERRENDERBUFFEROESPROC) (GLenum target, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer); 726 typedef void (GL_APIENTRYP PFNGLFRAMEBUFFERTEXTURE2DOESPROC) (GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level); 727 typedef void (GL_APIENTRYP PFNGLGETFRAMEBUFFERATTACHMENTPARAMETERIVOESPROC) (GLenum target, GLenum attachment, GLenum pname, GLint* params); 728 typedef void (GL_APIENTRYP PFNGLGENERATEMIPMAPOESPROC) (GLenum target); 729 #endif 730 731 /* GL_OES_mapbuffer */ 732 #ifndef GL_OES_mapbuffer 733 #define GL_OES_mapbuffer 1 734 #ifdef GL_GLEXT_PROTOTYPES 735 GL_API void* GL_APIENTRY glMapBufferOES (GLenum target, GLenum access); 736 GL_API GLboolean GL_APIENTRY glUnmapBufferOES (GLenum target); 737 GL_API void GL_APIENTRY glGetBufferPointervOES (GLenum target, GLenum pname, GLvoid ** params); 738 #endif 739 typedef void* (GL_APIENTRYP PFNGLMAPBUFFEROESPROC) (GLenum target, GLenum access); 740 typedef GLboolean (GL_APIENTRYP PFNGLUNMAPBUFFEROESPROC) (GLenum target); 741 typedef void (GL_APIENTRYP PFNGLGETBUFFERPOINTERVOESPROC) (GLenum target, GLenum pname, GLvoid ** params); 742 #endif 743 744 /* GL_OES_matrix_get */ 745 #ifndef GL_OES_matrix_get 746 #define GL_OES_matrix_get 0 747 #endif 748 749 /* GL_OES_matrix_palette */ 750 #ifndef GL_OES_matrix_palette 751 #define GL_OES_matrix_palette 1 752 #ifdef GL_GLEXT_PROTOTYPES 753 GL_API void GL_APIENTRY glCurrentPaletteMatrixOES (GLuint matrixpaletteindex); 754 GL_API void GL_APIENTRY glLoadPaletteFromModelViewMatrixOES (void); 755 GL_API void GL_APIENTRY glMatrixIndexPointerOES (GLint size, GLenum type, GLsizei stride, const GLvoid *pointer); 756 GL_API void GL_APIENTRY glWeightPointerOES (GLint size, GLenum type, GLsizei stride, const GLvoid *pointer); 757 #endif 758 typedef void (GL_APIENTRYP PFNGLCURRENTPALETTEMATRIXOESPROC) (GLuint matrixpaletteindex); 759 typedef void (GL_APIENTRYP PFNGLLOADPALETTEFROMMODELVIEWMATRIXOESPROC) (void); 760 typedef void (GL_APIENTRYP PFNGLMATRIXINDEXPOINTEROESPROC) (GLint size, GLenum type, GLsizei stride, const GLvoid *pointer); 761 typedef void (GL_APIENTRYP PFNGLWEIGHTPOINTEROESPROC) (GLint size, GLenum type, GLsizei stride, const GLvoid *pointer); 762 #endif 763 764 /* GL_OES_packed_depth_stencil */ 765 #ifndef GL_OES_packed_depth_stencil 766 #define GL_OES_packed_depth_stencil 0 767 #endif 768 769 /* GL_OES_query_matrix */ 770 #ifndef GL_OES_query_matrix 771 #define GL_OES_query_matrix 1 772 #ifdef GL_GLEXT_PROTOTYPES 773 GL_API GLbitfield GL_APIENTRY glQueryMatrixxOES (GLfixed mantissa[16], GLint exponent[16]); 774 #endif 775 typedef GLbitfield (GL_APIENTRYP PFNGLQUERYMATRIXXOESPROC) (GLfixed mantissa[16], GLint exponent[16]); 776 #endif 777 778 /* GL_OES_rgb8_rgba8 */ 779 #ifndef GL_OES_rgb8_rgba8 780 #define GL_OES_rgb8_rgba8 1 781 #endif 782 783 /* GL_OES_single_precision */ 784 #ifndef GL_OES_single_precision 785 #define GL_OES_single_precision 0 786 #ifdef GL_GLEXT_PROTOTYPES 787 GL_API void GL_APIENTRY glDepthRangefOES (GLclampf zNear, GLclampf zFar); 788 GL_API void GL_APIENTRY glFrustumfOES (GLfloat left, GLfloat right, GLfloat bottom, GLfloat top, GLfloat zNear, GLfloat zFar); 789 GL_API void GL_APIENTRY glOrthofOES (GLfloat left, GLfloat right, GLfloat bottom, GLfloat top, GLfloat zNear, GLfloat zFar); 790 GL_API void GL_APIENTRY glClipPlanefOES (GLenum plane, const GLfloat *equation); 791 GL_API void GL_APIENTRY glGetClipPlanefOES (GLenum pname, GLfloat eqn[4]); 792 GL_API void GL_APIENTRY glClearDepthfOES (GLclampf depth); 793 #endif 794 typedef void (GL_APIENTRYP PFNGLDEPTHRANGEFOESPROC) (GLclampf zNear, GLclampf zFar); 795 typedef void (GL_APIENTRYP PFNGLFRUSTUMFOESPROC) (GLfloat left, GLfloat right, GLfloat bottom, GLfloat top, GLfloat zNear, GLfloat zFar); 796 typedef void (GL_APIENTRYP PFNGLORTHOFOESPROC) (GLfloat left, GLfloat right, GLfloat bottom, GLfloat top, GLfloat zNear, GLfloat zFar); 797 typedef void (GL_APIENTRYP PFNGLCLIPPLANEFOESPROC) (GLenum plane, const GLfloat *equation); 798 typedef void (GL_APIENTRYP PFNGLGETCLIPPLANEFOESPROC) (GLenum pname, GLfloat eqn[4]); 799 typedef void (GL_APIENTRYP PFNGLCLEARDEPTHFOESPROC) (GLclampf depth); 800 #endif 801 802 /* GL_OES_stencil1 */ 803 #ifndef GL_OES_stencil1 804 #define GL_OES_stencil1 0 805 #endif 806 807 /* GL_OES_stencil4 */ 808 #ifndef GL_OES_stencil4 809 #define GL_OES_stencil4 0 810 #endif 811 812 /* GL_OES_stencil8 */ 813 #ifndef GL_OES_stencil8 814 #define GL_OES_stencil8 1 815 #endif 816 817 /* GL_OES_stencil_wrap */ 818 #ifndef GL_OES_stencil_wrap 819 #define GL_OES_stencil_wrap 0 820 #endif 821 822 /* GL_OES_texture_cube_map */ 823 #ifndef GL_OES_texture_cube_map 824 #define GL_OES_texture_cube_map 0 825 #ifdef GL_GLEXT_PROTOTYPES 826 GL_API void GL_APIENTRY glTexGenfOES (GLenum coord, GLenum pname, GLfloat param); 827 GL_API void GL_APIENTRY glTexGenfvOES (GLenum coord, GLenum pname, const GLfloat *params); 828 GL_API void GL_APIENTRY glTexGeniOES (GLenum coord, GLenum pname, GLint param); 829 GL_API void GL_APIENTRY glTexGenivOES (GLenum coord, GLenum pname, const GLint *params); 830 GL_API void GL_APIENTRY glTexGenxOES (GLenum coord, GLenum pname, GLfixed param); 831 GL_API void GL_APIENTRY glTexGenxvOES (GLenum coord, GLenum pname, const GLfixed *params); 832 GL_API void GL_APIENTRY glGetTexGenfvOES (GLenum coord, GLenum pname, GLfloat *params); 833 GL_API void GL_APIENTRY glGetTexGenivOES (GLenum coord, GLenum pname, GLint *params); 834 GL_API void GL_APIENTRY glGetTexGenxvOES (GLenum coord, GLenum pname, GLfixed *params); 835 #endif 836 typedef void (GL_APIENTRYP PFNGLTEXGENFOESPROC) (GLenum coord, GLenum pname, GLfloat param); 837 typedef void (GL_APIENTRYP PFNGLTEXGENFVOESPROC) (GLenum coord, GLenum pname, const GLfloat *params); 838 typedef void (GL_APIENTRYP PFNGLTEXGENIOESPROC) (GLenum coord, GLenum pname, GLint param); 839 typedef void (GL_APIENTRYP PFNGLTEXGENIVOESPROC) (GLenum coord, GLenum pname, const GLint *params); 840 typedef void (GL_APIENTRYP PFNGLTEXGENXOESPROC) (GLenum coord, GLenum pname, GLfixed param); 841 typedef void (GL_APIENTRYP PFNGLTEXGENXVOESPROC) (GLenum coord, GLenum pname, const GLfixed *params); 842 typedef void (GL_APIENTRYP PFNGLGETTEXGENFVOESPROC) (GLenum coord, GLenum pname, GLfloat *params); 843 typedef void (GL_APIENTRYP PFNGLGETTEXGENIVOESPROC) (GLenum coord, GLenum pname, GLint *params); 844 typedef void (GL_APIENTRYP PFNGLGETTEXGENXVOESPROC) (GLenum coord, GLenum pname, GLfixed *params); 845 #endif 846 847 /* GL_OES_texture_env_crossbar */ 848 #ifndef GL_OES_texture_env_crossbar 849 #define GL_OES_texture_env_crossbar 0 850 #endif 851 852 /* GL_OES_texture_mirrored_repeat */ 853 #ifndef GL_OES_texture_mirrored_repeat 854 #define GL_OES_texture_mirrored_repeat 0 855 #endif 856 857 /* GL_OES_vertex_array_object */ 858 #ifndef GL_OES_vertex_array_object 859 #define GL_OES_vertex_array_object 0 860 #ifdef GL_GLEXT_PROTOTYPES 861 GL_API void GL_APIENTRY glBindVertexArrayOES (GLuint array); 862 GL_API void GL_APIENTRY glDeleteVertexArraysOES (GLsizei n, const GLuint *arrays); 863 GL_API void GL_APIENTRY glGenVertexArraysOES (GLsizei n, GLuint *arrays); 864 GL_API GLboolean GL_APIENTRY glIsVertexArrayOES (GLuint array); 865 #endif 866 typedef void (GL_APIENTRYP PFNGLBINDVERTEXARRAYOESPROC) (GLuint array); 867 typedef void (GL_APIENTRYP PFNGLDELETEVERTEXARRAYSOESPROC) (GLsizei n, const GLuint *arrays); 868 typedef void (GL_APIENTRYP PFNGLGENVERTEXARRAYSOESPROC) (GLsizei n, GLuint *arrays); 869 typedef GLboolean (GL_APIENTRYP PFNGLISVERTEXARRAYOESPROC) (GLuint array); 870 #endif 871 872 /*------------------------------------------------------------------------* 873 * AMD extension functions 874 *------------------------------------------------------------------------*/ 875 876 /* GL_AMD_compressed_3DC_texture */ 877 #ifndef GL_AMD_compressed_3DC_texture 878 #define GL_AMD_compressed_3DC_texture 0 879 #endif 880 881 /* GL_AMD_compressed_ATC_texture */ 882 #ifndef GL_AMD_compressed_ATC_texture 883 #define GL_AMD_compressed_ATC_texture 0 884 #endif 885 886 /*------------------------------------------------------------------------* 887 * APPLE extension functions 888 *------------------------------------------------------------------------*/ 889 890 /* GL_APPLE_texture_2D_limited_npot */ 891 #ifndef GL_APPLE_texture_2D_limited_npot 892 #define GL_APPLE_texture_2D_limited_npot 0 893 #endif 894 895 /* GL_APPLE_framebuffer_multisample */ 896 #ifndef GL_APPLE_framebuffer_multisample 897 #define GL_APPLE_framebuffer_multisample 0 898 #ifdef GL_GLEXT_PROTOTYPES 899 GL_API void GL_APIENTRY glRenderbufferStorageMultisampleAPPLE (GLenum, GLsizei, GLenum, GLsizei, GLsizei); 900 GL_API void GL_APIENTRY glResolveMultisampleFramebufferAPPLE (void); 901 #endif /* GL_GLEXT_PROTOTYPES */ 902 typedef void (GL_APIENTRYP PFNGLRENDERBUFFERSTORAGEMULTISAMPLEAPPLEPROC) (GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height); 903 typedef void (GL_APIENTRYP PFNGLRESOLVEMULTISAMPLEFRAMEBUFFERAPPLEPROC) (void); 904 #endif 905 906 /* GL_APPLE_texture_format_BGRA8888 */ 907 #ifndef GL_APPLE_texture_format_BGRA8888 908 #define GL_APPLE_texture_format_BGRA8888 0 909 #endif 910 911 /* GL_APPLE_texture_max_level */ 912 #ifndef GL_APPLE_texture_max_level 913 #define GL_APPLE_texture_max_level 0 914 #endif 915 916 /*------------------------------------------------------------------------* 917 * ARM extension functions 918 *------------------------------------------------------------------------*/ 919 920 /* GL_ARM_rgba8 */ 921 #ifndef GL_ARM_rgba8 922 #define GL_ARM_rgba8 0 923 #endif 924 925 /*------------------------------------------------------------------------* 926 * EXT extension functions 927 *------------------------------------------------------------------------*/ 928 929 /* GL_EXT_blend_minmax */ 930 #ifndef GL_EXT_blend_minmax 931 #define GL_EXT_blend_minmax 0 932 #endif 933 934 /* GL_EXT_discard_framebuffer */ 935 #ifndef GL_EXT_discard_framebuffer 936 #define GL_EXT_discard_framebuffer 0 937 #ifdef GL_GLEXT_PROTOTYPES 938 GL_API void GL_APIENTRY glDiscardFramebufferEXT (GLenum target, GLsizei numAttachments, const GLenum *attachments); 939 #endif 940 typedef void (GL_APIENTRYP PFNGLDISCARDFRAMEBUFFEREXTPROC) (GLenum target, GLsizei numAttachments, const GLenum *attachments); 941 #endif 942 943 /* GL_EXT_debug_marker */ 944 #ifndef GL_EXT_debug_marker 945 #define GL_EXT_debug_marker 1 946 #ifdef GL_GLEXT_PROTOTYPES 947 GL_API void GL_APIENTRY glInsertEventMarkerEXT (GLsizei length, const GLchar *marker); 948 GL_API void GL_APIENTRY glPushGroupMarkerEXT (GLsizei length, const GLchar *marker); 949 GL_API void GL_APIENTRY glPopGroupMarkerEXT (void); 950 #endif 951 typedef void (GL_APIENTRYP PFNGLINSERTEVENTMARKEREXTPROC) (GLsizei length, const GLchar *marker); 952 typedef void (GL_APIENTRYP PFNGLPUSHGROUPMARKEREXTPROC) (GLsizei length, const GLchar *marker); 953 typedef void (GL_APIENTRYP PFNGLPOPGROUPMARKEREXTPROC) (void); 954 #endif 955 956 /* GL_EXT_multi_draw_arrays */ 957 #ifndef GL_EXT_multi_draw_arrays 958 #define GL_EXT_multi_draw_arrays 0 959 #ifdef GL_GLEXT_PROTOTYPES 960 GL_API void GL_APIENTRY glMultiDrawArraysEXT (GLenum, GLint *, GLsizei *, GLsizei); 961 GL_API void GL_APIENTRY glMultiDrawElementsEXT (GLenum, const GLsizei *, GLenum, const GLvoid* *, GLsizei); 962 #endif /* GL_GLEXT_PROTOTYPES */ 963 typedef void (GL_APIENTRYP PFNGLMULTIDRAWARRAYSEXTPROC) (GLenum mode, GLint *first, GLsizei *count, GLsizei primcount); 964 typedef void (GL_APIENTRYP PFNGLMULTIDRAWELEMENTSEXTPROC) (GLenum mode, const GLsizei *count, GLenum type, const GLvoid* *indices, GLsizei primcount); 965 #endif 966 967 /* GL_EXT_read_format_bgra */ 968 #ifndef GL_EXT_read_format_bgra 969 #define GL_EXT_read_format_bgra 0 970 #endif 971 972 /* GL_EXT_texture_filter_anisotropic */ 973 #ifndef GL_EXT_texture_filter_anisotropic 974 #define GL_EXT_texture_filter_anisotropic 0 975 #endif 976 977 /* GL_EXT_texture_format_BGRA8888 */ 978 #ifndef GL_EXT_texture_format_BGRA8888 979 #define GL_EXT_texture_format_BGRA8888 1 980 #endif 981 982 #ifndef GL_texture_format_RGBX8888_BRCM 983 #define GL_texture_format_RGBX8888_BRCM 1 984 #endif 985 986 /* GL_EXT_texture_lod_bias */ 987 #ifndef GL_EXT_texture_lod_bias 988 #define GL_EXT_texture_lod_bias 0 989 #endif 990 991 /*------------------------------------------------------------------------* 992 * IMG extension functions 993 *------------------------------------------------------------------------*/ 994 995 /* GL_IMG_read_format */ 996 #ifndef GL_IMG_read_format 997 #define GL_IMG_read_format 0 998 #endif 999 1000 /* GL_IMG_texture_compression_pvrtc */ 1001 #ifndef GL_IMG_texture_compression_pvrtc 1002 #define GL_IMG_texture_compression_pvrtc 0 1003 #endif 1004 1005 /* GL_IMG_texture_env_enhanced_fixed_function */ 1006 #ifndef GL_IMG_texture_env_enhanced_fixed_function 1007 #define GL_IMG_texture_env_enhanced_fixed_function 0 1008 #endif 1009 1010 /* GL_IMG_user_clip_plane */ 1011 #ifndef GL_IMG_user_clip_plane 1012 #define GL_IMG_user_clip_plane 0 1013 #ifdef GL_GLEXT_PROTOTYPES 1014 GL_API void GL_APIENTRY glClipPlanefIMG (GLenum, const GLfloat *); 1015 GL_API void GL_APIENTRY glClipPlanexIMG (GLenum, const GLfixed *); 1016 #endif 1017 typedef void (GL_APIENTRYP PFNGLCLIPPLANEFIMGPROC) (GLenum p, const GLfloat *eqn); 1018 typedef void (GL_APIENTRYP PFNGLCLIPPLANEXIMGPROC) (GLenum p, const GLfixed *eqn); 1019 #endif 1020 1021 /* GL_IMG_multisampled_render_to_texture */ 1022 #ifndef GL_IMG_multisampled_render_to_texture 1023 #define GL_IMG_multisampled_render_to_texture 0 1024 #ifdef GL_GLEXT_PROTOTYPES 1025 GL_API void GL_APIENTRY glRenderbufferStorageMultisampleIMG (GLenum, GLsizei, GLenum, GLsizei, GLsizei); 1026 GL_API void GL_APIENTRY glFramebufferTexture2DMultisampleIMG (GLenum, GLenum, GLenum, GLuint, GLint, GLsizei); 1027 #endif 1028 typedef void (GL_APIENTRYP PFNGLRENDERBUFFERSTORAGEMULTISAMPLEIMG) (GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height); 1029 typedef void (GL_APIENTRYP PFNGLFRAMEBUFFERTEXTURE2DMULTISAMPLEIMG) (GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLsizei samples); 1030 #endif 1031 1032 /*------------------------------------------------------------------------* 1033 * NV extension functions 1034 *------------------------------------------------------------------------*/ 1035 1036 /* NV_fence */ 1037 #ifndef GL_NV_fence 1038 #define GL_NV_fence 0 1039 #ifdef GL_GLEXT_PROTOTYPES 1040 GL_API void GL_APIENTRY glDeleteFencesNV (GLsizei, const GLuint *); 1041 GL_API void GL_APIENTRY glGenFencesNV (GLsizei, GLuint *); 1042 GL_API GLboolean GL_APIENTRY glIsFenceNV (GLuint); 1043 GL_API GLboolean GL_APIENTRY glTestFenceNV (GLuint); 1044 GL_API void GL_APIENTRY glGetFenceivNV (GLuint, GLenum, GLint *); 1045 GL_API void GL_APIENTRY glFinishFenceNV (GLuint); 1046 GL_API void GL_APIENTRY glSetFenceNV (GLuint, GLenum); 1047 #endif 1048 typedef void (GL_APIENTRYP PFNGLDELETEFENCESNVPROC) (GLsizei n, const GLuint *fences); 1049 typedef void (GL_APIENTRYP PFNGLGENFENCESNVPROC) (GLsizei n, GLuint *fences); 1050 typedef GLboolean (GL_APIENTRYP PFNGLISFENCENVPROC) (GLuint fence); 1051 typedef GLboolean (GL_APIENTRYP PFNGLTESTFENCENVPROC) (GLuint fence); 1052 typedef void (GL_APIENTRYP PFNGLGETFENCEIVNVPROC) (GLuint fence, GLenum pname, GLint *params); 1053 typedef void (GL_APIENTRYP PFNGLFINISHFENCENVPROC) (GLuint fence); 1054 typedef void (GL_APIENTRYP PFNGLSETFENCENVPROC) (GLuint fence, GLenum condition); 1055 #endif 1056 1057 /*------------------------------------------------------------------------* 1058 * QCOM extension functions 1059 *------------------------------------------------------------------------*/ 1060 1061 /* GL_QCOM_driver_control */ 1062 #ifndef GL_QCOM_driver_control 1063 #define GL_QCOM_driver_control 0 1064 #ifdef GL_GLEXT_PROTOTYPES 1065 GL_API void GL_APIENTRY glGetDriverControlsQCOM (GLint *num, GLsizei size, GLuint *driverControls); 1066 GL_API void GL_APIENTRY glGetDriverControlStringQCOM (GLuint driverControl, GLsizei bufSize, GLsizei *length, GLchar *driverControlString); 1067 GL_API void GL_APIENTRY glEnableDriverControlQCOM (GLuint driverControl); 1068 GL_API void GL_APIENTRY glDisableDriverControlQCOM (GLuint driverControl); 1069 #endif 1070 typedef void (GL_APIENTRYP PFNGLGETDRIVERCONTROLSQCOMPROC) (GLint *num, GLsizei size, GLuint *driverControls); 1071 typedef void (GL_APIENTRYP PFNGLGETDRIVERCONTROLSTRINGQCOMPROC) (GLuint driverControl, GLsizei bufSize, GLsizei *length, GLchar *driverControlString); 1072 typedef void (GL_APIENTRYP PFNGLENABLEDRIVERCONTROLQCOMPROC) (GLuint driverControl); 1073 typedef void (GL_APIENTRYP PFNGLDISABLEDRIVERCONTROLQCOMPROC) (GLuint driverControl); 1074 #endif 1075 1076 /* GL_QCOM_extended_get */ 1077 #ifndef GL_QCOM_extended_get 1078 #define GL_QCOM_extended_get 0 1079 #ifdef GL_GLEXT_PROTOTYPES 1080 GL_API void GL_APIENTRY glExtGetTexturesQCOM (GLuint *textures, GLint maxTextures, GLint *numTextures); 1081 GL_API void GL_APIENTRY glExtGetBuffersQCOM (GLuint *buffers, GLint maxBuffers, GLint *numBuffers); 1082 GL_API void GL_APIENTRY glExtGetRenderbuffersQCOM (GLuint *renderbuffers, GLint maxRenderbuffers, GLint *numRenderbuffers); 1083 GL_API void GL_APIENTRY glExtGetFramebuffersQCOM (GLuint *framebuffers, GLint maxFramebuffers, GLint *numFramebuffers); 1084 GL_API void GL_APIENTRY glExtGetTexLevelParameterivQCOM (GLuint texture, GLenum face, GLint level, GLenum pname, GLint *params); 1085 GL_API void GL_APIENTRY glExtTexObjectStateOverrideiQCOM (GLenum target, GLenum pname, GLint param); 1086 GL_API void GL_APIENTRY glExtGetTexSubImageQCOM (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, GLvoid *texels); 1087 GL_API void GL_APIENTRY glExtGetBufferPointervQCOM (GLenum target, GLvoid **params); 1088 #endif 1089 typedef void (GL_APIENTRYP PFNGLEXTGETTEXTURESQCOMPROC) (GLuint *textures, GLint maxTextures, GLint *numTextures); 1090 typedef void (GL_APIENTRYP PFNGLEXTGETBUFFERSQCOMPROC) (GLuint *buffers, GLint maxBuffers, GLint *numBuffers); 1091 typedef void (GL_APIENTRYP PFNGLEXTGETRENDERBUFFERSQCOMPROC) (GLuint *renderbuffers, GLint maxRenderbuffers, GLint *numRenderbuffers); 1092 typedef void (GL_APIENTRYP PFNGLEXTGETFRAMEBUFFERSQCOMPROC) (GLuint *framebuffers, GLint maxFramebuffers, GLint *numFramebuffers); 1093 typedef void (GL_APIENTRYP PFNGLEXTGETTEXLEVELPARAMETERIVQCOMPROC) (GLuint texture, GLenum face, GLint level, GLenum pname, GLint *params); 1094 typedef void (GL_APIENTRYP PFNGLEXTTEXOBJECTSTATEOVERRIDEIQCOMPROC) (GLenum target, GLenum pname, GLint param); 1095 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); 1096 typedef void (GL_APIENTRYP PFNGLEXTGETBUFFERPOINTERVQCOMPROC) (GLenum target, GLvoid **params); 1097 #endif 1098 1099 /* GL_QCOM_extended_get2 */ 1100 #ifndef GL_QCOM_extended_get2 1101 #define GL_QCOM_extended_get2 0 1102 #ifdef GL_GLEXT_PROTOTYPES 1103 GL_API void GL_APIENTRY glExtGetShadersQCOM (GLuint *shaders, GLint maxShaders, GLint *numShaders); 1104 GL_API void GL_APIENTRY glExtGetProgramsQCOM (GLuint *programs, GLint maxPrograms, GLint *numPrograms); 1105 GL_API GLboolean GL_APIENTRY glExtIsProgramBinaryQCOM (GLuint program); 1106 GL_API void GL_APIENTRY glExtGetProgramBinarySourceQCOM (GLuint program, GLenum shadertype, GLchar *source, GLint *length); 1107 #endif 1108 typedef void (GL_APIENTRYP PFNGLEXTGETSHADERSQCOMPROC) (GLuint *shaders, GLint maxShaders, GLint *numShaders); 1109 typedef void (GL_APIENTRYP PFNGLEXTGETPROGRAMSQCOMPROC) (GLuint *programs, GLint maxPrograms, GLint *numPrograms); 1110 typedef GLboolean (GL_APIENTRYP PFNGLEXTISPROGRAMBINARYQCOMPROC) (GLuint program); 1111 typedef void (GL_APIENTRYP PFNGLEXTGETPROGRAMBINARYSOURCEQCOMPROC) (GLuint program, GLenum shadertype, GLchar *source, GLint *length); 1112 #endif 1113 1114 /* GL_QCOM_perfmon_global_mode */ 1115 #ifndef GL_QCOM_perfmon_global_mode 1116 #define GL_QCOM_perfmon_global_mode 0 1117 #endif 1118 1119 /* GL_QCOM_writeonly_rendering */ 1120 #ifndef GL_QCOM_writeonly_rendering 1121 #define GL_QCOM_writeonly_rendering 0 1122 #endif 1123 1124 /* GL_QCOM_tiled_rendering */ 1125 #ifndef GL_QCOM_tiled_rendering 1126 #define GL_QCOM_tiled_rendering 0 1127 #ifdef GL_GLEXT_PROTOTYPES 1128 GL_API void GL_APIENTRY glStartTilingQCOM (GLuint x, GLuint y, GLuint width, GLuint height, GLbitfield preserveMask); 1129 GL_API void GL_APIENTRY glEndTilingQCOM (GLbitfield preserveMask); 1130 #endif 1131 typedef void (GL_APIENTRYP PFNGLSTARTTILINGQCOMPROC) (GLuint x, GLuint y, GLuint width, GLuint height, GLbitfield preserveMask); 1132 typedef void (GL_APIENTRYP PFNGLENDTILINGQCOMPROC) (GLbitfield preserveMask); 1133 #endif 1134 1135 /*------------------------------------------------------------------------* 1136 * BRCM extension functions 1137 * TODO: these aren't official yet 1138 *------------------------------------------------------------------------*/ 1139 #ifndef GL_BRCM_side_by_side_stero_hint 1140 #define GL_BRCM_side_by_side_stero_hint 1 1141 #endif 1142 1143 #ifdef __cplusplus 1144 } 1145 #endif 1146 1147 #endif /* __glext_h_ */ 1148