1 #ifndef __glext_h_ 2 #define __glext_h_ 3 4 /* $Revision: 20798 $ on $Date:: 2013-03-07 01:19:34 -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_blend_equation_separate */ 24 #ifndef GL_OES_blend_equation_separate 25 /* BLEND_EQUATION_RGB_OES same as BLEND_EQUATION_OES */ 26 #define GL_BLEND_EQUATION_RGB_OES 0x8009 27 #define GL_BLEND_EQUATION_ALPHA_OES 0x883D 28 #endif 29 30 /* GL_OES_blend_func_separate */ 31 #ifndef GL_OES_blend_func_separate 32 #define GL_BLEND_DST_RGB_OES 0x80C8 33 #define GL_BLEND_SRC_RGB_OES 0x80C9 34 #define GL_BLEND_DST_ALPHA_OES 0x80CA 35 #define GL_BLEND_SRC_ALPHA_OES 0x80CB 36 #endif 37 38 /* GL_OES_blend_subtract */ 39 #ifndef GL_OES_blend_subtract 40 #define GL_BLEND_EQUATION_OES 0x8009 41 #define GL_FUNC_ADD_OES 0x8006 42 #define GL_FUNC_SUBTRACT_OES 0x800A 43 #define GL_FUNC_REVERSE_SUBTRACT_OES 0x800B 44 #endif 45 46 /* GL_OES_compressed_ETC1_RGB8_texture */ 47 #ifndef GL_OES_compressed_ETC1_RGB8_texture 48 #define GL_ETC1_RGB8_OES 0x8D64 49 #endif 50 51 /* GL_OES_depth24 */ 52 #ifndef GL_OES_depth24 53 #define GL_DEPTH_COMPONENT24_OES 0x81A6 54 #endif 55 56 /* GL_OES_depth32 */ 57 #ifndef GL_OES_depth32 58 #define GL_DEPTH_COMPONENT32_OES 0x81A7 59 #endif 60 61 /* GL_OES_draw_texture */ 62 #ifndef GL_OES_draw_texture 63 #define GL_TEXTURE_CROP_RECT_OES 0x8B9D 64 #endif 65 66 /* GL_OES_EGL_image */ 67 #ifndef GL_OES_EGL_image 68 typedef void* GLeglImageOES; 69 #endif 70 71 /* GL_OES_EGL_image_external */ 72 #ifndef GL_OES_EGL_image_external 73 /* GLeglImageOES defined in GL_OES_EGL_image already. */ 74 #define GL_TEXTURE_EXTERNAL_OES 0x8D65 75 #define GL_TEXTURE_BINDING_EXTERNAL_OES 0x8D67 76 #define GL_REQUIRED_TEXTURE_IMAGE_UNITS_OES 0x8D68 77 #endif 78 79 /* GL_OES_element_index_uint */ 80 #ifndef GL_OES_element_index_uint 81 #define GL_UNSIGNED_INT 0x1405 82 #endif 83 84 /* GL_OES_fixed_point */ 85 #ifndef GL_OES_fixed_point 86 #define GL_FIXED_OES 0x140C 87 #endif 88 89 /* GL_OES_framebuffer_object */ 90 #ifndef GL_OES_framebuffer_object 91 #define GL_NONE_OES 0 92 #define GL_FRAMEBUFFER_OES 0x8D40 93 #define GL_RENDERBUFFER_OES 0x8D41 94 #define GL_RGBA4_OES 0x8056 95 #define GL_RGB5_A1_OES 0x8057 96 #define GL_RGB565_OES 0x8D62 97 #define GL_DEPTH_COMPONENT16_OES 0x81A5 98 #define GL_RENDERBUFFER_WIDTH_OES 0x8D42 99 #define GL_RENDERBUFFER_HEIGHT_OES 0x8D43 100 #define GL_RENDERBUFFER_INTERNAL_FORMAT_OES 0x8D44 101 #define GL_RENDERBUFFER_RED_SIZE_OES 0x8D50 102 #define GL_RENDERBUFFER_GREEN_SIZE_OES 0x8D51 103 #define GL_RENDERBUFFER_BLUE_SIZE_OES 0x8D52 104 #define GL_RENDERBUFFER_ALPHA_SIZE_OES 0x8D53 105 #define GL_RENDERBUFFER_DEPTH_SIZE_OES 0x8D54 106 #define GL_RENDERBUFFER_STENCIL_SIZE_OES 0x8D55 107 #define GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE_OES 0x8CD0 108 #define GL_FRAMEBUFFER_ATTACHMENT_OBJECT_NAME_OES 0x8CD1 109 #define GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL_OES 0x8CD2 110 #define GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE_OES 0x8CD3 111 #define GL_COLOR_ATTACHMENT0_OES 0x8CE0 112 #define GL_DEPTH_ATTACHMENT_OES 0x8D00 113 #define GL_STENCIL_ATTACHMENT_OES 0x8D20 114 #define GL_FRAMEBUFFER_COMPLETE_OES 0x8CD5 115 #define GL_FRAMEBUFFER_INCOMPLETE_ATTACHMENT_OES 0x8CD6 116 #define GL_FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT_OES 0x8CD7 117 #define GL_FRAMEBUFFER_INCOMPLETE_DIMENSIONS_OES 0x8CD9 118 #define GL_FRAMEBUFFER_INCOMPLETE_FORMATS_OES 0x8CDA 119 #define GL_FRAMEBUFFER_UNSUPPORTED_OES 0x8CDD 120 #define GL_FRAMEBUFFER_BINDING_OES 0x8CA6 121 #define GL_RENDERBUFFER_BINDING_OES 0x8CA7 122 #define GL_MAX_RENDERBUFFER_SIZE_OES 0x84E8 123 #define GL_INVALID_FRAMEBUFFER_OPERATION_OES 0x0506 124 #endif 125 126 /* GL_OES_mapbuffer */ 127 #ifndef GL_OES_mapbuffer 128 #define GL_WRITE_ONLY_OES 0x88B9 129 #define GL_BUFFER_ACCESS_OES 0x88BB 130 #define GL_BUFFER_MAPPED_OES 0x88BC 131 #define GL_BUFFER_MAP_POINTER_OES 0x88BD 132 #endif 133 134 /* GL_OES_matrix_get */ 135 #ifndef GL_OES_matrix_get 136 #define GL_MODELVIEW_MATRIX_FLOAT_AS_INT_BITS_OES 0x898D 137 #define GL_PROJECTION_MATRIX_FLOAT_AS_INT_BITS_OES 0x898E 138 #define GL_TEXTURE_MATRIX_FLOAT_AS_INT_BITS_OES 0x898F 139 #endif 140 141 /* GL_OES_matrix_palette */ 142 #ifndef GL_OES_matrix_palette 143 #define GL_MAX_VERTEX_UNITS_OES 0x86A4 144 #define GL_MAX_PALETTE_MATRICES_OES 0x8842 145 #define GL_MATRIX_PALETTE_OES 0x8840 146 #define GL_MATRIX_INDEX_ARRAY_OES 0x8844 147 #define GL_WEIGHT_ARRAY_OES 0x86AD 148 #define GL_CURRENT_PALETTE_MATRIX_OES 0x8843 149 #define GL_MATRIX_INDEX_ARRAY_SIZE_OES 0x8846 150 #define GL_MATRIX_INDEX_ARRAY_TYPE_OES 0x8847 151 #define GL_MATRIX_INDEX_ARRAY_STRIDE_OES 0x8848 152 #define GL_MATRIX_INDEX_ARRAY_POINTER_OES 0x8849 153 #define GL_MATRIX_INDEX_ARRAY_BUFFER_BINDING_OES 0x8B9E 154 #define GL_WEIGHT_ARRAY_SIZE_OES 0x86AB 155 #define GL_WEIGHT_ARRAY_TYPE_OES 0x86A9 156 #define GL_WEIGHT_ARRAY_STRIDE_OES 0x86AA 157 #define GL_WEIGHT_ARRAY_POINTER_OES 0x86AC 158 #define GL_WEIGHT_ARRAY_BUFFER_BINDING_OES 0x889E 159 #endif 160 161 /* GL_OES_packed_depth_stencil */ 162 #ifndef GL_OES_packed_depth_stencil 163 #define GL_DEPTH_STENCIL_OES 0x84F9 164 #define GL_UNSIGNED_INT_24_8_OES 0x84FA 165 #define GL_DEPTH24_STENCIL8_OES 0x88F0 166 #endif 167 168 /* GL_OES_required_internalformat */ 169 /* No new tokens introduced by this extension. */ 170 171 /* GL_OES_rgb8_rgba8 */ 172 #ifndef GL_OES_rgb8_rgba8 173 #define GL_RGB8_OES 0x8051 174 #define GL_RGBA8_OES 0x8058 175 #endif 176 177 /* GL_OES_stencil1 */ 178 #ifndef GL_OES_stencil1 179 #define GL_STENCIL_INDEX1_OES 0x8D46 180 #endif 181 182 /* GL_OES_stencil4 */ 183 #ifndef GL_OES_stencil4 184 #define GL_STENCIL_INDEX4_OES 0x8D47 185 #endif 186 187 /* GL_OES_stencil8 */ 188 #ifndef GL_OES_stencil8 189 #define GL_STENCIL_INDEX8_OES 0x8D48 190 #endif 191 192 /* GL_OES_stencil_wrap */ 193 #ifndef GL_OES_stencil_wrap 194 #define GL_INCR_WRAP_OES 0x8507 195 #define GL_DECR_WRAP_OES 0x8508 196 #endif 197 198 /* GL_OES_texture_cube_map */ 199 #ifndef GL_OES_texture_cube_map 200 #define GL_NORMAL_MAP_OES 0x8511 201 #define GL_REFLECTION_MAP_OES 0x8512 202 #define GL_TEXTURE_CUBE_MAP_OES 0x8513 203 #define GL_TEXTURE_BINDING_CUBE_MAP_OES 0x8514 204 #define GL_TEXTURE_CUBE_MAP_POSITIVE_X_OES 0x8515 205 #define GL_TEXTURE_CUBE_MAP_NEGATIVE_X_OES 0x8516 206 #define GL_TEXTURE_CUBE_MAP_POSITIVE_Y_OES 0x8517 207 #define GL_TEXTURE_CUBE_MAP_NEGATIVE_Y_OES 0x8518 208 #define GL_TEXTURE_CUBE_MAP_POSITIVE_Z_OES 0x8519 209 #define GL_TEXTURE_CUBE_MAP_NEGATIVE_Z_OES 0x851A 210 #define GL_MAX_CUBE_MAP_TEXTURE_SIZE_OES 0x851C 211 #define GL_TEXTURE_GEN_MODE_OES 0x2500 212 #define GL_TEXTURE_GEN_STR_OES 0x8D60 213 #endif 214 215 /* GL_OES_texture_mirrored_repeat */ 216 #ifndef GL_OES_texture_mirrored_repeat 217 #define GL_MIRRORED_REPEAT_OES 0x8370 218 #endif 219 220 /* GL_OES_vertex_array_object */ 221 #ifndef GL_OES_vertex_array_object 222 #define GL_VERTEX_ARRAY_BINDING_OES 0x85B5 223 #endif 224 225 /*------------------------------------------------------------------------* 226 * AMD extension tokens 227 *------------------------------------------------------------------------*/ 228 229 /* GL_AMD_compressed_3DC_texture */ 230 #ifndef GL_AMD_compressed_3DC_texture 231 #define GL_3DC_X_AMD 0x87F9 232 #define GL_3DC_XY_AMD 0x87FA 233 #endif 234 235 /* GL_AMD_compressed_ATC_texture */ 236 #ifndef GL_AMD_compressed_ATC_texture 237 #define GL_ATC_RGB_AMD 0x8C92 238 #define GL_ATC_RGBA_EXPLICIT_ALPHA_AMD 0x8C93 239 #define GL_ATC_RGBA_INTERPOLATED_ALPHA_AMD 0x87EE 240 #endif 241 242 /*------------------------------------------------------------------------* 243 * APPLE extension tokens 244 *------------------------------------------------------------------------*/ 245 246 /* GL_APPLE_copy_texture_levels */ 247 /* No new tokens introduced by this extension. */ 248 249 /* GL_APPLE_framebuffer_multisample */ 250 #ifndef GL_APPLE_framebuffer_multisample 251 #define GL_RENDERBUFFER_SAMPLES_APPLE 0x8CAB 252 #define GL_FRAMEBUFFER_INCOMPLETE_MULTISAMPLE_APPLE 0x8D56 253 #define GL_MAX_SAMPLES_APPLE 0x8D57 254 #define GL_READ_FRAMEBUFFER_APPLE 0x8CA8 255 #define GL_DRAW_FRAMEBUFFER_APPLE 0x8CA9 256 #define GL_DRAW_FRAMEBUFFER_BINDING_APPLE 0x8CA6 257 #define GL_READ_FRAMEBUFFER_BINDING_APPLE 0x8CAA 258 #endif 259 260 /* GL_APPLE_sync */ 261 #ifndef GL_APPLE_sync 262 263 /* These types are defined with reference to <inttypes.h> 264 * in the Apple extension spec, but here we use the Khronos 265 * portable types in khrplatform.h, and assume those types 266 * are always defined. 267 * If any other extensions using these types are defined, 268 * the typedefs must move out of this block and be shared. 269 */ 270 typedef khronos_int64_t GLint64; 271 typedef khronos_uint64_t GLuint64; 272 typedef struct __GLsync *GLsync; 273 274 #define GL_SYNC_OBJECT_APPLE 0x8A53 275 #define GL_MAX_SERVER_WAIT_TIMEOUT_APPLE 0x9111 276 #define GL_OBJECT_TYPE_APPLE 0x9112 277 #define GL_SYNC_CONDITION_APPLE 0x9113 278 #define GL_SYNC_STATUS_APPLE 0x9114 279 #define GL_SYNC_FLAGS_APPLE 0x9115 280 #define GL_SYNC_FENCE_APPLE 0x9116 281 #define GL_SYNC_GPU_COMMANDS_COMPLETE_APPLE 0x9117 282 #define GL_UNSIGNALED_APPLE 0x9118 283 #define GL_SIGNALED_APPLE 0x9119 284 #define GL_ALREADY_SIGNALED_APPLE 0x911A 285 #define GL_TIMEOUT_EXPIRED_APPLE 0x911B 286 #define GL_CONDITION_SATISFIED_APPLE 0x911C 287 #define GL_WAIT_FAILED_APPLE 0x911D 288 #define GL_SYNC_FLUSH_COMMANDS_BIT_APPLE 0x00000001 289 #define GL_TIMEOUT_IGNORED_APPLE 0xFFFFFFFFFFFFFFFFull 290 #endif 291 292 /* GL_APPLE_texture_2D_limited_npot */ 293 /* No new tokens introduced by this extension. */ 294 295 /* GL_APPLE_texture_format_BGRA8888 */ 296 #ifndef GL_APPLE_texture_format_BGRA8888 297 #define GL_BGRA_EXT 0x80E1 298 #endif 299 300 /* GL_APPLE_texture_max_level */ 301 #ifndef GL_APPLE_texture_max_level 302 #define GL_TEXTURE_MAX_LEVEL_APPLE 0x813D 303 #endif 304 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_map_buffer_range */ 330 #ifndef GL_EXT_map_buffer_range 331 #define GL_MAP_READ_BIT_EXT 0x0001 332 #define GL_MAP_WRITE_BIT_EXT 0x0002 333 #define GL_MAP_INVALIDATE_RANGE_BIT_EXT 0x0004 334 #define GL_MAP_INVALIDATE_BUFFER_BIT_EXT 0x0008 335 #define GL_MAP_FLUSH_EXPLICIT_BIT_EXT 0x0010 336 #define GL_MAP_UNSYNCHRONIZED_BIT_EXT 0x0020 337 #endif 338 339 /* GL_EXT_multisampled_render_to_texture */ 340 #ifndef GL_EXT_multisampled_render_to_texture 341 #define GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_SAMPLES_EXT 0x8D6C 342 /* reuse values from GL_EXT_framebuffer_multisample (desktop extension) */ 343 #define GL_RENDERBUFFER_SAMPLES_EXT 0x8CAB 344 #define GL_FRAMEBUFFER_INCOMPLETE_MULTISAMPLE_EXT 0x8D56 345 #define GL_MAX_SAMPLES_EXT 0x8D57 346 #endif 347 348 /* GL_EXT_multi_draw_arrays */ 349 /* No new tokens introduced by this extension. */ 350 351 /* GL_EXT_read_format_bgra */ 352 #ifndef GL_EXT_read_format_bgra 353 #define GL_BGRA_EXT 0x80E1 354 #define GL_UNSIGNED_SHORT_4_4_4_4_REV_EXT 0x8365 355 #define GL_UNSIGNED_SHORT_1_5_5_5_REV_EXT 0x8366 356 #endif 357 358 /* GL_EXT_robustness */ 359 #ifndef GL_EXT_robustness 360 /* reuse GL_NO_ERROR */ 361 #define GL_GUILTY_CONTEXT_RESET_EXT 0x8253 362 #define GL_INNOCENT_CONTEXT_RESET_EXT 0x8254 363 #define GL_UNKNOWN_CONTEXT_RESET_EXT 0x8255 364 #define GL_CONTEXT_ROBUST_ACCESS_EXT 0x90F3 365 #define GL_RESET_NOTIFICATION_STRATEGY_EXT 0x8256 366 #define GL_LOSE_CONTEXT_ON_RESET_EXT 0x8252 367 #define GL_NO_RESET_NOTIFICATION_EXT 0x8261 368 #endif 369 370 /* GL_EXT_sRGB */ 371 #ifndef GL_EXT_sRGB 372 #define GL_SRGB_EXT 0x8C40 373 #define GL_SRGB_ALPHA_EXT 0x8C42 374 #define GL_SRGB8_ALPHA8_EXT 0x8C43 375 #define GL_FRAMEBUFFER_ATTACHMENT_COLOR_ENCODING_EXT 0x8210 376 #define GL_COMPRESSED_SRGB_S3TC_DXT1_EXT 0x8C4C 377 #define GL_COMPRESSED_SRGB_ALPHA_S3TC_DXT1_EXT 0x8C4D 378 #define GL_COMPRESSED_SRGB_ALPHA_S3TC_DXT3_EXT 0x8C4E 379 #define GL_COMPRESSED_SRGB_ALPHA_S3TC_DXT5_EXT 0x8C4F 380 #endif 381 382 /* GL_EXT_texture_compression_dxt1 */ 383 #ifndef GL_EXT_texture_compression_dxt1 384 #define GL_COMPRESSED_RGB_S3TC_DXT1_EXT 0x83F0 385 #define GL_COMPRESSED_RGBA_S3TC_DXT1_EXT 0x83F1 386 #endif 387 388 /* GL_EXT_texture_filter_anisotropic */ 389 #ifndef GL_EXT_texture_filter_anisotropic 390 #define GL_TEXTURE_MAX_ANISOTROPY_EXT 0x84FE 391 #define GL_MAX_TEXTURE_MAX_ANISOTROPY_EXT 0x84FF 392 #endif 393 394 /* GL_EXT_texture_format_BGRA8888 */ 395 #ifndef GL_EXT_texture_format_BGRA8888 396 #define GL_BGRA_EXT 0x80E1 397 #endif 398 399 /* GL_EXT_texture_lod_bias */ 400 #ifndef GL_EXT_texture_lod_bias 401 #define GL_MAX_TEXTURE_LOD_BIAS_EXT 0x84FD 402 #define GL_TEXTURE_FILTER_CONTROL_EXT 0x8500 403 #define GL_TEXTURE_LOD_BIAS_EXT 0x8501 404 #endif 405 406 /* GL_EXT_texture_storage */ 407 #ifndef GL_EXT_texture_storage 408 #define GL_TEXTURE_IMMUTABLE_FORMAT_EXT 0x912F 409 #define GL_ALPHA8_EXT 0x803C 410 #define GL_LUMINANCE8_EXT 0x8040 411 #define GL_LUMINANCE8_ALPHA8_EXT 0x8045 412 #define GL_RGBA32F_EXT 0x8814 413 #define GL_RGB32F_EXT 0x8815 414 #define GL_ALPHA32F_EXT 0x8816 415 #define GL_LUMINANCE32F_EXT 0x8818 416 #define GL_LUMINANCE_ALPHA32F_EXT 0x8819 417 /* reuse GL_RGBA16F_EXT */ 418 #define GL_RGB16F_EXT 0x881B 419 #define GL_ALPHA16F_EXT 0x881C 420 #define GL_LUMINANCE16F_EXT 0x881E 421 #define GL_LUMINANCE_ALPHA16F_EXT 0x881F 422 #define GL_RGB10_A2_EXT 0x8059 423 #define GL_RGB10_EXT 0x8052 424 #define GL_BGRA8_EXT 0x93A1 425 #endif 426 427 /*------------------------------------------------------------------------* 428 * IMG extension tokens 429 *------------------------------------------------------------------------*/ 430 431 /* GL_IMG_read_format */ 432 #ifndef GL_IMG_read_format 433 #define GL_BGRA_IMG 0x80E1 434 #define GL_UNSIGNED_SHORT_4_4_4_4_REV_IMG 0x8365 435 #endif 436 437 /* GL_IMG_texture_compression_pvrtc */ 438 #ifndef GL_IMG_texture_compression_pvrtc 439 #define GL_COMPRESSED_RGB_PVRTC_4BPPV1_IMG 0x8C00 440 #define GL_COMPRESSED_RGB_PVRTC_2BPPV1_IMG 0x8C01 441 #define GL_COMPRESSED_RGBA_PVRTC_4BPPV1_IMG 0x8C02 442 #define GL_COMPRESSED_RGBA_PVRTC_2BPPV1_IMG 0x8C03 443 #endif 444 445 /* GL_IMG_texture_env_enhanced_fixed_function */ 446 #ifndef GL_IMG_texture_env_enhanced_fixed_function 447 #define GL_MODULATE_COLOR_IMG 0x8C04 448 #define GL_RECIP_ADD_SIGNED_ALPHA_IMG 0x8C05 449 #define GL_TEXTURE_ALPHA_MODULATE_IMG 0x8C06 450 #define GL_FACTOR_ALPHA_MODULATE_IMG 0x8C07 451 #define GL_FRAGMENT_ALPHA_MODULATE_IMG 0x8C08 452 #define GL_ADD_BLEND_IMG 0x8C09 453 #define GL_DOT3_RGBA_IMG 0x86AF 454 #endif 455 456 /* GL_IMG_user_clip_plane */ 457 #ifndef GL_IMG_user_clip_plane 458 #define GL_CLIP_PLANE0_IMG 0x3000 459 #define GL_CLIP_PLANE1_IMG 0x3001 460 #define GL_CLIP_PLANE2_IMG 0x3002 461 #define GL_CLIP_PLANE3_IMG 0x3003 462 #define GL_CLIP_PLANE4_IMG 0x3004 463 #define GL_CLIP_PLANE5_IMG 0x3005 464 #define GL_MAX_CLIP_PLANES_IMG 0x0D32 465 #endif 466 467 /* GL_IMG_multisampled_render_to_texture */ 468 #ifndef GL_IMG_multisampled_render_to_texture 469 #define GL_RENDERBUFFER_SAMPLES_IMG 0x9133 470 #define GL_FRAMEBUFFER_INCOMPLETE_MULTISAMPLE_IMG 0x9134 471 #define GL_MAX_SAMPLES_IMG 0x9135 472 #define GL_TEXTURE_SAMPLES_IMG 0x9136 473 #endif 474 475 /*------------------------------------------------------------------------* 476 * NV extension tokens 477 *------------------------------------------------------------------------*/ 478 479 /* GL_NV_fence */ 480 #ifndef GL_NV_fence 481 #define GL_ALL_COMPLETED_NV 0x84F2 482 #define GL_FENCE_STATUS_NV 0x84F3 483 #define GL_FENCE_CONDITION_NV 0x84F4 484 #endif 485 486 /*------------------------------------------------------------------------* 487 * QCOM extension tokens 488 *------------------------------------------------------------------------*/ 489 490 /* GL_QCOM_driver_control */ 491 /* No new tokens introduced by this extension. */ 492 493 /* GL_QCOM_extended_get */ 494 #ifndef GL_QCOM_extended_get 495 #define GL_TEXTURE_WIDTH_QCOM 0x8BD2 496 #define GL_TEXTURE_HEIGHT_QCOM 0x8BD3 497 #define GL_TEXTURE_DEPTH_QCOM 0x8BD4 498 #define GL_TEXTURE_INTERNAL_FORMAT_QCOM 0x8BD5 499 #define GL_TEXTURE_FORMAT_QCOM 0x8BD6 500 #define GL_TEXTURE_TYPE_QCOM 0x8BD7 501 #define GL_TEXTURE_IMAGE_VALID_QCOM 0x8BD8 502 #define GL_TEXTURE_NUM_LEVELS_QCOM 0x8BD9 503 #define GL_TEXTURE_TARGET_QCOM 0x8BDA 504 #define GL_TEXTURE_OBJECT_VALID_QCOM 0x8BDB 505 #define GL_STATE_RESTORE 0x8BDC 506 #endif 507 508 /* GL_QCOM_extended_get2 */ 509 /* No new tokens introduced by this extension. */ 510 511 /* GL_QCOM_perfmon_global_mode */ 512 #ifndef GL_QCOM_perfmon_global_mode 513 #define GL_PERFMON_GLOBAL_MODE_QCOM 0x8FA0 514 #endif 515 516 /* GL_QCOM_writeonly_rendering */ 517 #ifndef GL_QCOM_writeonly_rendering 518 #define GL_WRITEONLY_RENDERING_QCOM 0x8823 519 #endif 520 521 /* GL_QCOM_tiled_rendering */ 522 #ifndef GL_QCOM_tiled_rendering 523 #define GL_COLOR_BUFFER_BIT0_QCOM 0x00000001 524 #define GL_COLOR_BUFFER_BIT1_QCOM 0x00000002 525 #define GL_COLOR_BUFFER_BIT2_QCOM 0x00000004 526 #define GL_COLOR_BUFFER_BIT3_QCOM 0x00000008 527 #define GL_COLOR_BUFFER_BIT4_QCOM 0x00000010 528 #define GL_COLOR_BUFFER_BIT5_QCOM 0x00000020 529 #define GL_COLOR_BUFFER_BIT6_QCOM 0x00000040 530 #define GL_COLOR_BUFFER_BIT7_QCOM 0x00000080 531 #define GL_DEPTH_BUFFER_BIT0_QCOM 0x00000100 532 #define GL_DEPTH_BUFFER_BIT1_QCOM 0x00000200 533 #define GL_DEPTH_BUFFER_BIT2_QCOM 0x00000400 534 #define GL_DEPTH_BUFFER_BIT3_QCOM 0x00000800 535 #define GL_DEPTH_BUFFER_BIT4_QCOM 0x00001000 536 #define GL_DEPTH_BUFFER_BIT5_QCOM 0x00002000 537 #define GL_DEPTH_BUFFER_BIT6_QCOM 0x00004000 538 #define GL_DEPTH_BUFFER_BIT7_QCOM 0x00008000 539 #define GL_STENCIL_BUFFER_BIT0_QCOM 0x00010000 540 #define GL_STENCIL_BUFFER_BIT1_QCOM 0x00020000 541 #define GL_STENCIL_BUFFER_BIT2_QCOM 0x00040000 542 #define GL_STENCIL_BUFFER_BIT3_QCOM 0x00080000 543 #define GL_STENCIL_BUFFER_BIT4_QCOM 0x00100000 544 #define GL_STENCIL_BUFFER_BIT5_QCOM 0x00200000 545 #define GL_STENCIL_BUFFER_BIT6_QCOM 0x00400000 546 #define GL_STENCIL_BUFFER_BIT7_QCOM 0x00800000 547 #define GL_MULTISAMPLE_BUFFER_BIT0_QCOM 0x01000000 548 #define GL_MULTISAMPLE_BUFFER_BIT1_QCOM 0x02000000 549 #define GL_MULTISAMPLE_BUFFER_BIT2_QCOM 0x04000000 550 #define GL_MULTISAMPLE_BUFFER_BIT3_QCOM 0x08000000 551 #define GL_MULTISAMPLE_BUFFER_BIT4_QCOM 0x10000000 552 #define GL_MULTISAMPLE_BUFFER_BIT5_QCOM 0x20000000 553 #define GL_MULTISAMPLE_BUFFER_BIT6_QCOM 0x40000000 554 #define GL_MULTISAMPLE_BUFFER_BIT7_QCOM 0x80000000 555 #endif 556 557 /*------------------------------------------------------------------------* 558 * End of extension tokens, start of corresponding extension functions 559 *------------------------------------------------------------------------*/ 560 561 /*------------------------------------------------------------------------* 562 * OES extension functions 563 *------------------------------------------------------------------------*/ 564 565 /* GL_OES_blend_equation_separate */ 566 #ifndef GL_OES_blend_equation_separate 567 #define GL_OES_blend_equation_separate 1 568 #ifdef GL_GLEXT_PROTOTYPES 569 GL_API void GL_APIENTRY glBlendEquationSeparateOES (GLenum modeRGB, GLenum modeAlpha); 570 #endif 571 typedef void (GL_APIENTRYP PFNGLBLENDEQUATIONSEPARATEOESPROC) (GLenum modeRGB, GLenum modeAlpha); 572 #endif 573 574 /* GL_OES_blend_func_separate */ 575 #ifndef GL_OES_blend_func_separate 576 #define GL_OES_blend_func_separate 1 577 #ifdef GL_GLEXT_PROTOTYPES 578 GL_API void GL_APIENTRY glBlendFuncSeparateOES (GLenum srcRGB, GLenum dstRGB, GLenum srcAlpha, GLenum dstAlpha); 579 #endif 580 typedef void (GL_APIENTRYP PFNGLBLENDFUNCSEPARATEOESPROC) (GLenum srcRGB, GLenum dstRGB, GLenum srcAlpha, GLenum dstAlpha); 581 #endif 582 583 /* GL_OES_blend_subtract */ 584 #ifndef GL_OES_blend_subtract 585 #define GL_OES_blend_subtract 1 586 #ifdef GL_GLEXT_PROTOTYPES 587 GL_API void GL_APIENTRY glBlendEquationOES (GLenum mode); 588 #endif 589 typedef void (GL_APIENTRYP PFNGLBLENDEQUATIONOESPROC) (GLenum mode); 590 #endif 591 592 /* GL_OES_byte_coordinates */ 593 #ifndef GL_OES_byte_coordinates 594 #define GL_OES_byte_coordinates 1 595 #endif 596 597 /* GL_OES_compressed_ETC1_RGB8_texture */ 598 #ifndef GL_OES_compressed_ETC1_RGB8_texture 599 #define GL_OES_compressed_ETC1_RGB8_texture 1 600 #endif 601 602 /* GL_OES_depth24 */ 603 #ifndef GL_OES_depth24 604 #define GL_OES_depth24 1 605 #endif 606 607 /* GL_OES_depth32 */ 608 #ifndef GL_OES_depth32 609 #define GL_OES_depth32 1 610 #endif 611 612 /* GL_OES_draw_texture */ 613 #ifndef GL_OES_draw_texture 614 #define GL_OES_draw_texture 1 615 #ifdef GL_GLEXT_PROTOTYPES 616 GL_API void GL_APIENTRY glDrawTexsOES (GLshort x, GLshort y, GLshort z, GLshort width, GLshort height); 617 GL_API void GL_APIENTRY glDrawTexiOES (GLint x, GLint y, GLint z, GLint width, GLint height); 618 GL_API void GL_APIENTRY glDrawTexxOES (GLfixed x, GLfixed y, GLfixed z, GLfixed width, GLfixed height); 619 GL_API void GL_APIENTRY glDrawTexsvOES (const GLshort *coords); 620 GL_API void GL_APIENTRY glDrawTexivOES (const GLint *coords); 621 GL_API void GL_APIENTRY glDrawTexxvOES (const GLfixed *coords); 622 GL_API void GL_APIENTRY glDrawTexfOES (GLfloat x, GLfloat y, GLfloat z, GLfloat width, GLfloat height); 623 GL_API void GL_APIENTRY glDrawTexfvOES (const GLfloat *coords); 624 #endif 625 typedef void (GL_APIENTRYP PFNGLDRAWTEXSOESPROC) (GLshort x, GLshort y, GLshort z, GLshort width, GLshort height); 626 typedef void (GL_APIENTRYP PFNGLDRAWTEXIOESPROC) (GLint x, GLint y, GLint z, GLint width, GLint height); 627 typedef void (GL_APIENTRYP PFNGLDRAWTEXXOESPROC) (GLfixed x, GLfixed y, GLfixed z, GLfixed width, GLfixed height); 628 typedef void (GL_APIENTRYP PFNGLDRAWTEXSVOESPROC) (const GLshort *coords); 629 typedef void (GL_APIENTRYP PFNGLDRAWTEXIVOESPROC) (const GLint *coords); 630 typedef void (GL_APIENTRYP PFNGLDRAWTEXXVOESPROC) (const GLfixed *coords); 631 typedef void (GL_APIENTRYP PFNGLDRAWTEXFOESPROC) (GLfloat x, GLfloat y, GLfloat z, GLfloat width, GLfloat height); 632 typedef void (GL_APIENTRYP PFNGLDRAWTEXFVOESPROC) (const GLfloat *coords); 633 #endif 634 635 /* GL_OES_EGL_image */ 636 #ifndef GL_OES_EGL_image 637 #define GL_OES_EGL_image 1 638 #ifdef GL_GLEXT_PROTOTYPES 639 GL_API void GL_APIENTRY glEGLImageTargetTexture2DOES (GLenum target, GLeglImageOES image); 640 GL_API void GL_APIENTRY glEGLImageTargetRenderbufferStorageOES (GLenum target, GLeglImageOES image); 641 #endif 642 typedef void (GL_APIENTRYP PFNGLEGLIMAGETARGETTEXTURE2DOESPROC) (GLenum target, GLeglImageOES image); 643 typedef void (GL_APIENTRYP PFNGLEGLIMAGETARGETRENDERBUFFERSTORAGEOESPROC) (GLenum target, GLeglImageOES image); 644 #endif 645 646 /* GL_OES_EGL_image_external */ 647 #ifndef GL_OES_EGL_image_external 648 #define GL_OES_EGL_image_external 1 649 /* glEGLImageTargetTexture2DOES defined in GL_OES_EGL_image already. */ 650 #endif 651 652 /* GL_OES_element_index_uint */ 653 #ifndef GL_OES_element_index_uint 654 #define GL_OES_element_index_uint 1 655 #endif 656 657 /* GL_OES_extended_matrix_palette */ 658 #ifndef GL_OES_extended_matrix_palette 659 #define GL_OES_extended_matrix_palette 1 660 #endif 661 662 /* GL_OES_fbo_render_mipmap */ 663 #ifndef GL_OES_fbo_render_mipmap 664 #define GL_OES_fbo_render_mipmap 1 665 #endif 666 667 /* GL_OES_fixed_point */ 668 #ifndef GL_OES_fixed_point 669 #define GL_OES_fixed_point 1 670 #ifdef GL_GLEXT_PROTOTYPES 671 GL_API void GL_APIENTRY glAlphaFuncxOES (GLenum func, GLclampx ref); 672 GL_API void GL_APIENTRY glClearColorxOES (GLclampx red, GLclampx green, GLclampx blue, GLclampx alpha); 673 GL_API void GL_APIENTRY glClearDepthxOES (GLclampx depth); 674 GL_API void GL_APIENTRY glClipPlanexOES (GLenum plane, const GLfixed *equation); 675 GL_API void GL_APIENTRY glColor4xOES (GLfixed red, GLfixed green, GLfixed blue, GLfixed alpha); 676 GL_API void GL_APIENTRY glDepthRangexOES (GLclampx zNear, GLclampx zFar); 677 GL_API void GL_APIENTRY glFogxOES (GLenum pname, GLfixed param); 678 GL_API void GL_APIENTRY glFogxvOES (GLenum pname, const GLfixed *params); 679 GL_API void GL_APIENTRY glFrustumxOES (GLfixed left, GLfixed right, GLfixed bottom, GLfixed top, GLfixed zNear, GLfixed zFar); 680 GL_API void GL_APIENTRY glGetClipPlanexOES (GLenum pname, GLfixed eqn[4]); 681 GL_API void GL_APIENTRY glGetFixedvOES (GLenum pname, GLfixed *params); 682 GL_API void GL_APIENTRY glGetLightxvOES (GLenum light, GLenum pname, GLfixed *params); 683 GL_API void GL_APIENTRY glGetMaterialxvOES (GLenum face, GLenum pname, GLfixed *params); 684 GL_API void GL_APIENTRY glGetTexEnvxvOES (GLenum env, GLenum pname, GLfixed *params); 685 GL_API void GL_APIENTRY glGetTexParameterxvOES (GLenum target, GLenum pname, GLfixed *params); 686 GL_API void GL_APIENTRY glLightModelxOES (GLenum pname, GLfixed param); 687 GL_API void GL_APIENTRY glLightModelxvOES (GLenum pname, const GLfixed *params); 688 GL_API void GL_APIENTRY glLightxOES (GLenum light, GLenum pname, GLfixed param); 689 GL_API void GL_APIENTRY glLightxvOES (GLenum light, GLenum pname, const GLfixed *params); 690 GL_API void GL_APIENTRY glLineWidthxOES (GLfixed width); 691 GL_API void GL_APIENTRY glLoadMatrixxOES (const GLfixed *m); 692 GL_API void GL_APIENTRY glMaterialxOES (GLenum face, GLenum pname, GLfixed param); 693 GL_API void GL_APIENTRY glMaterialxvOES (GLenum face, GLenum pname, const GLfixed *params); 694 GL_API void GL_APIENTRY glMultMatrixxOES (const GLfixed *m); 695 GL_API void GL_APIENTRY glMultiTexCoord4xOES (GLenum target, GLfixed s, GLfixed t, GLfixed r, GLfixed q); 696 GL_API void GL_APIENTRY glNormal3xOES (GLfixed nx, GLfixed ny, GLfixed nz); 697 GL_API void GL_APIENTRY glOrthoxOES (GLfixed left, GLfixed right, GLfixed bottom, GLfixed top, GLfixed zNear, GLfixed zFar); 698 GL_API void GL_APIENTRY glPointParameterxOES (GLenum pname, GLfixed param); 699 GL_API void GL_APIENTRY glPointParameterxvOES (GLenum pname, const GLfixed *params); 700 GL_API void GL_APIENTRY glPointSizexOES (GLfixed size); 701 GL_API void GL_APIENTRY glPolygonOffsetxOES (GLfixed factor, GLfixed units); 702 GL_API void GL_APIENTRY glRotatexOES (GLfixed angle, GLfixed x, GLfixed y, GLfixed z); 703 GL_API void GL_APIENTRY glSampleCoveragexOES (GLclampx value, GLboolean invert); 704 GL_API void GL_APIENTRY glScalexOES (GLfixed x, GLfixed y, GLfixed z); 705 GL_API void GL_APIENTRY glTexEnvxOES (GLenum target, GLenum pname, GLfixed param); 706 GL_API void GL_APIENTRY glTexEnvxvOES (GLenum target, GLenum pname, const GLfixed *params); 707 GL_API void GL_APIENTRY glTexParameterxOES (GLenum target, GLenum pname, GLfixed param); 708 GL_API void GL_APIENTRY glTexParameterxvOES (GLenum target, GLenum pname, const GLfixed *params); 709 GL_API void GL_APIENTRY glTranslatexOES (GLfixed x, GLfixed y, GLfixed z); 710 #endif 711 typedef void (GL_APIENTRYP PFNGLALPHAFUNCXOESPROC) (GLenum func, GLclampx ref); 712 typedef void (GL_APIENTRYP PFNGLCLEARCOLORXOESPROC) (GLclampx red, GLclampx green, GLclampx blue, GLclampx alpha); 713 typedef void (GL_APIENTRYP PFNGLCLEARDEPTHXOESPROC) (GLclampx depth); 714 typedef void (GL_APIENTRYP PFNGLCLIPPLANEXOESPROC) (GLenum plane, const GLfixed *equation); 715 typedef void (GL_APIENTRYP PFNGLCOLOR4XOESPROC) (GLfixed red, GLfixed green, GLfixed blue, GLfixed alpha); 716 typedef void (GL_APIENTRYP PFNGLDEPTHRANGEXOESPROC) (GLclampx zNear, GLclampx zFar); 717 typedef void (GL_APIENTRYP PFNGLFOGXOESPROC) (GLenum pname, GLfixed param); 718 typedef void (GL_APIENTRYP PFNGLFOGXVOESPROC) (GLenum pname, const GLfixed *params); 719 typedef void (GL_APIENTRYP PFNGLFRUSTUMXOESPROC) (GLfixed left, GLfixed right, GLfixed bottom, GLfixed top, GLfixed zNear, GLfixed zFar); 720 typedef void (GL_APIENTRYP PFNGLGETCLIPPLANEXOESPROC) (GLenum pname, GLfixed eqn[4]); 721 typedef void (GL_APIENTRYP PFNGLGETFIXEDVOESPROC) (GLenum pname, GLfixed *params); 722 typedef void (GL_APIENTRYP PFNGLGETLIGHTXVOESPROC) (GLenum light, GLenum pname, GLfixed *params); 723 typedef void (GL_APIENTRYP PFNGLGETMATERIALXVOESPROC) (GLenum face, GLenum pname, GLfixed *params); 724 typedef void (GL_APIENTRYP PFNGLGETTEXENVXVOESPROC) (GLenum env, GLenum pname, GLfixed *params); 725 typedef void (GL_APIENTRYP PFNGLGETTEXPARAMETERXVOESPROC) (GLenum target, GLenum pname, GLfixed *params); 726 typedef void (GL_APIENTRYP PFNGLLIGHTMODELXOESPROC) (GLenum pname, GLfixed param); 727 typedef void (GL_APIENTRYP PFNGLLIGHTMODELXVOESPROC) (GLenum pname, const GLfixed *params); 728 typedef void (GL_APIENTRYP PFNGLLIGHTXOESPROC) (GLenum light, GLenum pname, GLfixed param); 729 typedef void (GL_APIENTRYP PFNGLLIGHTXVOESPROC) (GLenum light, GLenum pname, const GLfixed *params); 730 typedef void (GL_APIENTRYP PFNGLLINEWIDTHXOESPROC) (GLfixed width); 731 typedef void (GL_APIENTRYP PFNGLLOADMATRIXXOESPROC) (const GLfixed *m); 732 typedef void (GL_APIENTRYP PFNGLMATERIALXOESPROC) (GLenum face, GLenum pname, GLfixed param); 733 typedef void (GL_APIENTRYP PFNGLMATERIALXVOESPROC) (GLenum face, GLenum pname, const GLfixed *params); 734 typedef void (GL_APIENTRYP PFNGLMULTMATRIXXOESPROC) (const GLfixed *m); 735 typedef void (GL_APIENTRYP PFNGLMULTITEXCOORD4XOESPROC) (GLenum target, GLfixed s, GLfixed t, GLfixed r, GLfixed q); 736 typedef void (GL_APIENTRYP PFNGLNORMAL3XOESPROC) (GLfixed nx, GLfixed ny, GLfixed nz); 737 typedef void (GL_APIENTRYP PFNGLORTHOXOESPROC) (GLfixed left, GLfixed right, GLfixed bottom, GLfixed top, GLfixed zNear, GLfixed zFar); 738 typedef void (GL_APIENTRYP PFNGLPOINTPARAMETERXOESPROC) (GLenum pname, GLfixed param); 739 typedef void (GL_APIENTRYP PFNGLPOINTPARAMETERXVOESPROC) (GLenum pname, const GLfixed *params); 740 typedef void (GL_APIENTRYP PFNGLPOINTSIZEXOESPROC) (GLfixed size); 741 typedef void (GL_APIENTRYP PFNGLPOLYGONOFFSETXOESPROC) (GLfixed factor, GLfixed units); 742 typedef void (GL_APIENTRYP PFNGLROTATEXOESPROC) (GLfixed angle, GLfixed x, GLfixed y, GLfixed z); 743 typedef void (GL_APIENTRYP PFNGLSAMPLECOVERAGEXOESPROC) (GLclampx value, GLboolean invert); 744 typedef void (GL_APIENTRYP PFNGLSCALEXOESPROC) (GLfixed x, GLfixed y, GLfixed z); 745 typedef void (GL_APIENTRYP PFNGLTEXENVXOESPROC) (GLenum target, GLenum pname, GLfixed param); 746 typedef void (GL_APIENTRYP PFNGLTEXENVXVOESPROC) (GLenum target, GLenum pname, const GLfixed *params); 747 typedef void (GL_APIENTRYP PFNGLTEXPARAMETERXOESPROC) (GLenum target, GLenum pname, GLfixed param); 748 typedef void (GL_APIENTRYP PFNGLTEXPARAMETERXVOESPROC) (GLenum target, GLenum pname, const GLfixed *params); 749 typedef void (GL_APIENTRYP PFNGLTRANSLATEXOESPROC) (GLfixed x, GLfixed y, GLfixed z); 750 #endif 751 752 /* GL_OES_framebuffer_object */ 753 #ifndef GL_OES_framebuffer_object 754 #define GL_OES_framebuffer_object 1 755 #ifdef GL_GLEXT_PROTOTYPES 756 GL_API GLboolean GL_APIENTRY glIsRenderbufferOES (GLuint renderbuffer); 757 GL_API void GL_APIENTRY glBindRenderbufferOES (GLenum target, GLuint renderbuffer); 758 GL_API void GL_APIENTRY glDeleteRenderbuffersOES (GLsizei n, const GLuint* renderbuffers); 759 GL_API void GL_APIENTRY glGenRenderbuffersOES (GLsizei n, GLuint* renderbuffers); 760 GL_API void GL_APIENTRY glRenderbufferStorageOES (GLenum target, GLenum internalformat, GLsizei width, GLsizei height); 761 GL_API void GL_APIENTRY glGetRenderbufferParameterivOES (GLenum target, GLenum pname, GLint* params); 762 GL_API GLboolean GL_APIENTRY glIsFramebufferOES (GLuint framebuffer); 763 GL_API void GL_APIENTRY glBindFramebufferOES (GLenum target, GLuint framebuffer); 764 GL_API void GL_APIENTRY glDeleteFramebuffersOES (GLsizei n, const GLuint* framebuffers); 765 GL_API void GL_APIENTRY glGenFramebuffersOES (GLsizei n, GLuint* framebuffers); 766 GL_API GLenum GL_APIENTRY glCheckFramebufferStatusOES (GLenum target); 767 GL_API void GL_APIENTRY glFramebufferRenderbufferOES (GLenum target, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer); 768 GL_API void GL_APIENTRY glFramebufferTexture2DOES (GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level); 769 GL_API void GL_APIENTRY glGetFramebufferAttachmentParameterivOES (GLenum target, GLenum attachment, GLenum pname, GLint* params); 770 GL_API void GL_APIENTRY glGenerateMipmapOES (GLenum target); 771 #endif 772 typedef GLboolean (GL_APIENTRYP PFNGLISRENDERBUFFEROESPROC) (GLuint renderbuffer); 773 typedef void (GL_APIENTRYP PFNGLBINDRENDERBUFFEROESPROC) (GLenum target, GLuint renderbuffer); 774 typedef void (GL_APIENTRYP PFNGLDELETERENDERBUFFERSOESPROC) (GLsizei n, const GLuint* renderbuffers); 775 typedef void (GL_APIENTRYP PFNGLGENRENDERBUFFERSOESPROC) (GLsizei n, GLuint* renderbuffers); 776 typedef void (GL_APIENTRYP PFNGLRENDERBUFFERSTORAGEOESPROC) (GLenum target, GLenum internalformat, GLsizei width, GLsizei height); 777 typedef void (GL_APIENTRYP PFNGLGETRENDERBUFFERPARAMETERIVOESPROC) (GLenum target, GLenum pname, GLint* params); 778 typedef GLboolean (GL_APIENTRYP PFNGLISFRAMEBUFFEROESPROC) (GLuint framebuffer); 779 typedef void (GL_APIENTRYP PFNGLBINDFRAMEBUFFEROESPROC) (GLenum target, GLuint framebuffer); 780 typedef void (GL_APIENTRYP PFNGLDELETEFRAMEBUFFERSOESPROC) (GLsizei n, const GLuint* framebuffers); 781 typedef void (GL_APIENTRYP PFNGLGENFRAMEBUFFERSOESPROC) (GLsizei n, GLuint* framebuffers); 782 typedef GLenum (GL_APIENTRYP PFNGLCHECKFRAMEBUFFERSTATUSOESPROC) (GLenum target); 783 typedef void (GL_APIENTRYP PFNGLFRAMEBUFFERRENDERBUFFEROESPROC) (GLenum target, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer); 784 typedef void (GL_APIENTRYP PFNGLFRAMEBUFFERTEXTURE2DOESPROC) (GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level); 785 typedef void (GL_APIENTRYP PFNGLGETFRAMEBUFFERATTACHMENTPARAMETERIVOESPROC) (GLenum target, GLenum attachment, GLenum pname, GLint* params); 786 typedef void (GL_APIENTRYP PFNGLGENERATEMIPMAPOESPROC) (GLenum target); 787 #endif 788 789 /* GL_OES_mapbuffer */ 790 #ifndef GL_OES_mapbuffer 791 #define GL_OES_mapbuffer 1 792 #ifdef GL_GLEXT_PROTOTYPES 793 GL_API void* GL_APIENTRY glMapBufferOES (GLenum target, GLenum access); 794 GL_API GLboolean GL_APIENTRY glUnmapBufferOES (GLenum target); 795 GL_API void GL_APIENTRY glGetBufferPointervOES (GLenum target, GLenum pname, GLvoid ** params); 796 #endif 797 typedef void* (GL_APIENTRYP PFNGLMAPBUFFEROESPROC) (GLenum target, GLenum access); 798 typedef GLboolean (GL_APIENTRYP PFNGLUNMAPBUFFEROESPROC) (GLenum target); 799 typedef void (GL_APIENTRYP PFNGLGETBUFFERPOINTERVOESPROC) (GLenum target, GLenum pname, GLvoid ** params); 800 #endif 801 802 /* GL_OES_matrix_get */ 803 #ifndef GL_OES_matrix_get 804 #define GL_OES_matrix_get 1 805 #endif 806 807 /* GL_OES_matrix_palette */ 808 #ifndef GL_OES_matrix_palette 809 #define GL_OES_matrix_palette 1 810 #ifdef GL_GLEXT_PROTOTYPES 811 GL_API void GL_APIENTRY glCurrentPaletteMatrixOES (GLuint matrixpaletteindex); 812 GL_API void GL_APIENTRY glLoadPaletteFromModelViewMatrixOES (void); 813 GL_API void GL_APIENTRY glMatrixIndexPointerOES (GLint size, GLenum type, GLsizei stride, const GLvoid *pointer); 814 GL_API void GL_APIENTRY glWeightPointerOES (GLint size, GLenum type, GLsizei stride, const GLvoid *pointer); 815 #endif 816 typedef void (GL_APIENTRYP PFNGLCURRENTPALETTEMATRIXOESPROC) (GLuint matrixpaletteindex); 817 typedef void (GL_APIENTRYP PFNGLLOADPALETTEFROMMODELVIEWMATRIXOESPROC) (void); 818 typedef void (GL_APIENTRYP PFNGLMATRIXINDEXPOINTEROESPROC) (GLint size, GLenum type, GLsizei stride, const GLvoid *pointer); 819 typedef void (GL_APIENTRYP PFNGLWEIGHTPOINTEROESPROC) (GLint size, GLenum type, GLsizei stride, const GLvoid *pointer); 820 #endif 821 822 /* GL_OES_packed_depth_stencil */ 823 #ifndef GL_OES_packed_depth_stencil 824 #define GL_OES_packed_depth_stencil 1 825 #endif 826 827 /* GL_OES_required_internalformat */ 828 #ifndef GL_OES_required_internalformat 829 #define GL_OES_required_internalformat 1 830 #endif 831 832 /* GL_OES_query_matrix */ 833 #ifndef GL_OES_query_matrix 834 #define GL_OES_query_matrix 1 835 #ifdef GL_GLEXT_PROTOTYPES 836 GL_API GLbitfield GL_APIENTRY glQueryMatrixxOES (GLfixed mantissa[16], GLint exponent[16]); 837 #endif 838 typedef GLbitfield (GL_APIENTRYP PFNGLQUERYMATRIXXOESPROC) (GLfixed mantissa[16], GLint exponent[16]); 839 #endif 840 841 /* GL_OES_rgb8_rgba8 */ 842 #ifndef GL_OES_rgb8_rgba8 843 #define GL_OES_rgb8_rgba8 1 844 #endif 845 846 /* GL_OES_single_precision */ 847 #ifndef GL_OES_single_precision 848 #define GL_OES_single_precision 1 849 #ifdef GL_GLEXT_PROTOTYPES 850 GL_API void GL_APIENTRY glDepthRangefOES (GLclampf zNear, GLclampf zFar); 851 GL_API void GL_APIENTRY glFrustumfOES (GLfloat left, GLfloat right, GLfloat bottom, GLfloat top, GLfloat zNear, GLfloat zFar); 852 GL_API void GL_APIENTRY glOrthofOES (GLfloat left, GLfloat right, GLfloat bottom, GLfloat top, GLfloat zNear, GLfloat zFar); 853 GL_API void GL_APIENTRY glClipPlanefOES (GLenum plane, const GLfloat *equation); 854 GL_API void GL_APIENTRY glGetClipPlanefOES (GLenum pname, GLfloat eqn[4]); 855 GL_API void GL_APIENTRY glClearDepthfOES (GLclampf depth); 856 #endif 857 typedef void (GL_APIENTRYP PFNGLDEPTHRANGEFOESPROC) (GLclampf zNear, GLclampf zFar); 858 typedef void (GL_APIENTRYP PFNGLFRUSTUMFOESPROC) (GLfloat left, GLfloat right, GLfloat bottom, GLfloat top, GLfloat zNear, GLfloat zFar); 859 typedef void (GL_APIENTRYP PFNGLORTHOFOESPROC) (GLfloat left, GLfloat right, GLfloat bottom, GLfloat top, GLfloat zNear, GLfloat zFar); 860 typedef void (GL_APIENTRYP PFNGLCLIPPLANEFOESPROC) (GLenum plane, const GLfloat *equation); 861 typedef void (GL_APIENTRYP PFNGLGETCLIPPLANEFOESPROC) (GLenum pname, GLfloat eqn[4]); 862 typedef void (GL_APIENTRYP PFNGLCLEARDEPTHFOESPROC) (GLclampf depth); 863 #endif 864 865 /* GL_OES_stencil1 */ 866 #ifndef GL_OES_stencil1 867 #define GL_OES_stencil1 1 868 #endif 869 870 /* GL_OES_stencil4 */ 871 #ifndef GL_OES_stencil4 872 #define GL_OES_stencil4 1 873 #endif 874 875 /* GL_OES_stencil8 */ 876 #ifndef GL_OES_stencil8 877 #define GL_OES_stencil8 1 878 #endif 879 880 /* GL_OES_stencil_wrap */ 881 #ifndef GL_OES_stencil_wrap 882 #define GL_OES_stencil_wrap 1 883 #endif 884 885 /* GL_OES_texture_cube_map */ 886 #ifndef GL_OES_texture_cube_map 887 #define GL_OES_texture_cube_map 1 888 #ifdef GL_GLEXT_PROTOTYPES 889 GL_API void GL_APIENTRY glTexGenfOES (GLenum coord, GLenum pname, GLfloat param); 890 GL_API void GL_APIENTRY glTexGenfvOES (GLenum coord, GLenum pname, const GLfloat *params); 891 GL_API void GL_APIENTRY glTexGeniOES (GLenum coord, GLenum pname, GLint param); 892 GL_API void GL_APIENTRY glTexGenivOES (GLenum coord, GLenum pname, const GLint *params); 893 GL_API void GL_APIENTRY glTexGenxOES (GLenum coord, GLenum pname, GLfixed param); 894 GL_API void GL_APIENTRY glTexGenxvOES (GLenum coord, GLenum pname, const GLfixed *params); 895 GL_API void GL_APIENTRY glGetTexGenfvOES (GLenum coord, GLenum pname, GLfloat *params); 896 GL_API void GL_APIENTRY glGetTexGenivOES (GLenum coord, GLenum pname, GLint *params); 897 GL_API void GL_APIENTRY glGetTexGenxvOES (GLenum coord, GLenum pname, GLfixed *params); 898 #endif 899 typedef void (GL_APIENTRYP PFNGLTEXGENFOESPROC) (GLenum coord, GLenum pname, GLfloat param); 900 typedef void (GL_APIENTRYP PFNGLTEXGENFVOESPROC) (GLenum coord, GLenum pname, const GLfloat *params); 901 typedef void (GL_APIENTRYP PFNGLTEXGENIOESPROC) (GLenum coord, GLenum pname, GLint param); 902 typedef void (GL_APIENTRYP PFNGLTEXGENIVOESPROC) (GLenum coord, GLenum pname, const GLint *params); 903 typedef void (GL_APIENTRYP PFNGLTEXGENXOESPROC) (GLenum coord, GLenum pname, GLfixed param); 904 typedef void (GL_APIENTRYP PFNGLTEXGENXVOESPROC) (GLenum coord, GLenum pname, const GLfixed *params); 905 typedef void (GL_APIENTRYP PFNGLGETTEXGENFVOESPROC) (GLenum coord, GLenum pname, GLfloat *params); 906 typedef void (GL_APIENTRYP PFNGLGETTEXGENIVOESPROC) (GLenum coord, GLenum pname, GLint *params); 907 typedef void (GL_APIENTRYP PFNGLGETTEXGENXVOESPROC) (GLenum coord, GLenum pname, GLfixed *params); 908 #endif 909 910 /* GL_OES_texture_env_crossbar */ 911 #ifndef GL_OES_texture_env_crossbar 912 #define GL_OES_texture_env_crossbar 1 913 #endif 914 915 /* GL_OES_texture_mirrored_repeat */ 916 #ifndef GL_OES_texture_mirrored_repeat 917 #define GL_OES_texture_mirrored_repeat 1 918 #endif 919 920 /* GL_OES_vertex_array_object */ 921 #ifndef GL_OES_vertex_array_object 922 #define GL_OES_vertex_array_object 1 923 #ifdef GL_GLEXT_PROTOTYPES 924 GL_API void GL_APIENTRY glBindVertexArrayOES (GLuint array); 925 GL_API void GL_APIENTRY glDeleteVertexArraysOES (GLsizei n, const GLuint *arrays); 926 GL_API void GL_APIENTRY glGenVertexArraysOES (GLsizei n, GLuint *arrays); 927 GL_API GLboolean GL_APIENTRY glIsVertexArrayOES (GLuint array); 928 #endif 929 typedef void (GL_APIENTRYP PFNGLBINDVERTEXARRAYOESPROC) (GLuint array); 930 typedef void (GL_APIENTRYP PFNGLDELETEVERTEXARRAYSOESPROC) (GLsizei n, const GLuint *arrays); 931 typedef void (GL_APIENTRYP PFNGLGENVERTEXARRAYSOESPROC) (GLsizei n, GLuint *arrays); 932 typedef GLboolean (GL_APIENTRYP PFNGLISVERTEXARRAYOESPROC) (GLuint array); 933 #endif 934 935 /*------------------------------------------------------------------------* 936 * AMD extension functions 937 *------------------------------------------------------------------------*/ 938 939 /* GL_AMD_compressed_3DC_texture */ 940 #ifndef GL_AMD_compressed_3DC_texture 941 #define GL_AMD_compressed_3DC_texture 1 942 #endif 943 944 /* GL_AMD_compressed_ATC_texture */ 945 #ifndef GL_AMD_compressed_ATC_texture 946 #define GL_AMD_compressed_ATC_texture 1 947 #endif 948 949 /*------------------------------------------------------------------------* 950 * APPLE extension functions 951 *------------------------------------------------------------------------*/ 952 953 /* GL_APPLE_copy_texture_levels */ 954 #ifndef GL_APPLE_copy_texture_levels 955 #define GL_APPLE_copy_texture_levels 1 956 #ifdef GL_GLEXT_PROTOTYPES 957 GL_API void GL_APIENTRY glCopyTextureLevelsAPPLE (GLuint destinationTexture, GLuint sourceTexture, GLint sourceBaseLevel, GLsizei sourceLevelCount); 958 #endif 959 typedef void (GL_APIENTRYP PFNGLCOPYTEXTURELEVELSAPPLEPROC) (GLuint destinationTexture, GLuint sourceTexture, GLint sourceBaseLevel, GLsizei sourceLevelCount); 960 #endif 961 962 /* GL_APPLE_framebuffer_multisample */ 963 #ifndef GL_APPLE_framebuffer_multisample 964 #define GL_APPLE_framebuffer_multisample 1 965 #ifdef GL_GLEXT_PROTOTYPES 966 GL_API void GL_APIENTRY glRenderbufferStorageMultisampleAPPLE (GLenum, GLsizei, GLenum, GLsizei, GLsizei); 967 GL_API void GL_APIENTRY glResolveMultisampleFramebufferAPPLE (void); 968 #endif /* GL_GLEXT_PROTOTYPES */ 969 typedef void (GL_APIENTRYP PFNGLRENDERBUFFERSTORAGEMULTISAMPLEAPPLEPROC) (GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height); 970 typedef void (GL_APIENTRYP PFNGLRESOLVEMULTISAMPLEFRAMEBUFFERAPPLEPROC) (void); 971 #endif 972 973 /* GL_APPLE_sync */ 974 #ifndef GL_APPLE_sync 975 #define GL_APPLE_sync 1 976 #ifdef GL_GLEXT_PROTOTYPES 977 GL_API GLsync GL_APIENTRY glFenceSyncAPPLE (GLenum condition, GLbitfield flags); 978 GL_API GLboolean GL_APIENTRY glIsSyncAPPLE (GLsync sync); 979 GL_API void GL_APIENTRY glDeleteSyncAPPLE (GLsync sync); 980 GL_API GLenum GL_APIENTRY glClientWaitSyncAPPLE (GLsync sync, GLbitfield flags, GLuint64 timeout); 981 GL_API void GL_APIENTRY glWaitSyncAPPLE (GLsync sync, GLbitfield flags, GLuint64 timeout); 982 GL_API void GL_APIENTRY glGetInteger64vAPPLE (GLenum pname, GLint64 *params); 983 GL_API void GL_APIENTRY glGetSyncivAPPLE (GLsync sync, GLenum pname, GLsizei bufSize, GLsizei *length, GLint *values); 984 #endif 985 typedef GLsync (GL_APIENTRYP PFNGLFENCESYNCAPPLEPROC) (GLenum condition, GLbitfield flags); 986 typedef GLboolean (GL_APIENTRYP PFNGLISSYNCAPPLEPROC) (GLsync sync); 987 typedef void (GL_APIENTRYP PFNGLDELETESYNCAPPLEPROC) (GLsync sync); 988 typedef GLenum (GL_APIENTRYP PFNGLCLIENTWAITSYNCAPPLEPROC) (GLsync sync, GLbitfield flags, GLuint64 timeout); 989 typedef void (GL_APIENTRYP PFNGLWAITSYNCAPPLEPROC) (GLsync sync, GLbitfield flags, GLuint64 timeout); 990 typedef void (GL_APIENTRYP PFNGLGETINTEGER64VAPPLEPROC) (GLenum pname, GLint64 *params); 991 typedef void (GL_APIENTRYP PFNGLGETSYNCIVAPPLEPROC) (GLsync sync, GLenum pname, GLsizei bufSize, GLsizei *length, GLint *values); 992 #endif 993 994 /* GL_APPLE_texture_2D_limited_npot */ 995 #ifndef GL_APPLE_texture_2D_limited_npot 996 #define GL_APPLE_texture_2D_limited_npot 1 997 #endif 998 999 /* GL_APPLE_texture_format_BGRA8888 */ 1000 #ifndef GL_APPLE_texture_format_BGRA8888 1001 #define GL_APPLE_texture_format_BGRA8888 1 1002 #endif 1003 1004 /* GL_APPLE_texture_max_level */ 1005 #ifndef GL_APPLE_texture_max_level 1006 #define GL_APPLE_texture_max_level 1 1007 #endif 1008 1009 /*------------------------------------------------------------------------* 1010 * ARM extension functions 1011 *------------------------------------------------------------------------*/ 1012 1013 /* GL_ARM_rgba8 */ 1014 #ifndef GL_ARM_rgba8 1015 #define GL_ARM_rgba8 1 1016 #endif 1017 1018 /*------------------------------------------------------------------------* 1019 * EXT extension functions 1020 *------------------------------------------------------------------------*/ 1021 1022 /* GL_EXT_blend_minmax */ 1023 #ifndef GL_EXT_blend_minmax 1024 #define GL_EXT_blend_minmax 1 1025 #endif 1026 1027 /* GL_EXT_discard_framebuffer */ 1028 #ifndef GL_EXT_discard_framebuffer 1029 #define GL_EXT_discard_framebuffer 1 1030 #ifdef GL_GLEXT_PROTOTYPES 1031 GL_API void GL_APIENTRY glDiscardFramebufferEXT (GLenum target, GLsizei numAttachments, const GLenum *attachments); 1032 #endif 1033 typedef void (GL_APIENTRYP PFNGLDISCARDFRAMEBUFFEREXTPROC) (GLenum target, GLsizei numAttachments, const GLenum *attachments); 1034 #endif 1035 1036 /* GL_EXT_map_buffer_range */ 1037 #ifndef GL_EXT_map_buffer_range 1038 #define GL_EXT_map_buffer_range 1 1039 #ifdef GL_GLEXT_PROTOTYPES 1040 GL_API void GL_APIENTRY *glMapBufferRangeEXT (GLenum target, GLintptr offset, GLsizeiptr length, GLbitfield access); 1041 GL_API void GL_APIENTRY glFlushMappedBufferRangeEXT (GLenum target, GLintptr offset, GLsizeiptr length); 1042 #endif 1043 typedef void* (GL_APIENTRYP PFNGLMAPBUFFERRANGEEXTPROC) (GLenum target, GLintptr offset, GLsizeiptr length, GLbitfield access); 1044 typedef void (GL_APIENTRYP PFNGLFLUSHMAPPEDBUFFERRANGEEXTPROC) (GLenum target, GLintptr offset, GLsizeiptr length); 1045 #endif 1046 1047 /* GL_EXT_multisampled_render_to_texture */ 1048 #ifndef GL_EXT_multisampled_render_to_texture 1049 #define GL_EXT_multisampled_render_to_texture 1 1050 #ifdef GL_GLEXT_PROTOTYPES 1051 GL_API void GL_APIENTRY glRenderbufferStorageMultisampleEXT (GLenum, GLsizei, GLenum, GLsizei, GLsizei); 1052 GL_API void GL_APIENTRY glFramebufferTexture2DMultisampleEXT (GLenum, GLenum, GLenum, GLuint, GLint, GLsizei); 1053 #endif 1054 typedef void (GL_APIENTRYP PFNGLRENDERBUFFERSTORAGEMULTISAMPLEEXTPROC) (GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height); 1055 typedef void (GL_APIENTRYP PFNGLFRAMEBUFFERTEXTURE2DMULTISAMPLEEXTPROC) (GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLsizei samples); 1056 #endif 1057 1058 /* GL_EXT_multi_draw_arrays */ 1059 #ifndef GL_EXT_multi_draw_arrays 1060 #define GL_EXT_multi_draw_arrays 1 1061 #ifdef GL_GLEXT_PROTOTYPES 1062 GL_API void GL_APIENTRY glMultiDrawArraysEXT (GLenum, const GLint *, const GLsizei *, GLsizei); 1063 GL_API void GL_APIENTRY glMultiDrawElementsEXT (GLenum, const GLsizei *, GLenum, const GLvoid* const*, GLsizei); 1064 #endif /* GL_GLEXT_PROTOTYPES */ 1065 typedef void (GL_APIENTRYP PFNGLMULTIDRAWARRAYSEXTPROC) (GLenum mode, const GLint *first, const GLsizei *count, GLsizei primcount); 1066 typedef void (GL_APIENTRYP PFNGLMULTIDRAWELEMENTSEXTPROC) (GLenum mode, const GLsizei *count, GLenum type, const GLvoid* const*indices, GLsizei primcount); 1067 #endif 1068 1069 /* GL_EXT_read_format_bgra */ 1070 #ifndef GL_EXT_read_format_bgra 1071 #define GL_EXT_read_format_bgra 1 1072 #endif 1073 1074 /* GL_EXT_robustness */ 1075 #ifndef GL_EXT_robustness 1076 #define GL_EXT_robustness 1 1077 #ifdef GL_GLEXT_PROTOTYPES 1078 GL_API GLenum GL_APIENTRY glGetGraphicsResetStatusEXT (void); 1079 GL_API void GL_APIENTRY glReadnPixelsEXT (GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, GLsizei bufSize, void *data); 1080 GL_API void GL_APIENTRY glGetnUniformfvEXT (GLuint program, GLint location, GLsizei bufSize, float *params); 1081 GL_API void GL_APIENTRY glGetnUniformivEXT (GLuint program, GLint location, GLsizei bufSize, GLint *params); 1082 #endif 1083 typedef GLenum (GL_APIENTRYP PFNGLGETGRAPHICSRESETSTATUSEXTPROC) (void); 1084 typedef void (GL_APIENTRYP PFNGLREADNPIXELSEXTPROC) (GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, GLsizei bufSize, void *data); 1085 typedef void (GL_APIENTRYP PFNGLGETNUNIFORMFVEXTPROC) (GLuint program, GLint location, GLsizei bufSize, float *params); 1086 typedef void (GL_APIENTRYP PFNGLGETNUNIFORMIVEXTPROC) (GLuint program, GLint location, GLsizei bufSize, GLint *params); 1087 #endif 1088 1089 /* GL_EXT_sRGB */ 1090 #ifndef GL_EXT_sRGB 1091 #define GL_EXT_sRGB 1 1092 #endif 1093 1094 /* GL_EXT_texture_compression_dxt1 */ 1095 #ifndef GL_EXT_texture_compression_dxt1 1096 #define GL_EXT_texture_compression_dxt1 1 1097 #endif 1098 1099 /* GL_EXT_texture_filter_anisotropic */ 1100 #ifndef GL_EXT_texture_filter_anisotropic 1101 #define GL_EXT_texture_filter_anisotropic 1 1102 #endif 1103 1104 /* GL_EXT_texture_format_BGRA8888 */ 1105 #ifndef GL_EXT_texture_format_BGRA8888 1106 #define GL_EXT_texture_format_BGRA8888 1 1107 #endif 1108 1109 /* GL_EXT_texture_lod_bias */ 1110 #ifndef GL_EXT_texture_lod_bias 1111 #define GL_EXT_texture_lod_bias 1 1112 #endif 1113 1114 /* GL_EXT_texture_storage */ 1115 #ifndef GL_EXT_texture_storage 1116 #define GL_EXT_texture_storage 1 1117 #ifdef GL_GLEXT_PROTOTYPES 1118 GL_API void GL_APIENTRY glTexStorage1DEXT (GLenum target, GLsizei levels, GLenum internalformat, GLsizei width); 1119 GL_API void GL_APIENTRY glTexStorage2DEXT (GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height); 1120 GL_API void GL_APIENTRY glTexStorage3DEXT (GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth); 1121 GL_API void GL_APIENTRY glTextureStorage1DEXT (GLuint texture, GLenum target, GLsizei levels, GLenum internalformat, GLsizei width); 1122 GL_API void GL_APIENTRY glTextureStorage2DEXT (GLuint texture, GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height); 1123 GL_API void GL_APIENTRY glTextureStorage3DEXT (GLuint texture, GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth); 1124 #endif 1125 typedef void (GL_APIENTRYP PFNGLTEXSTORAGE1DEXTPROC) (GLenum target, GLsizei levels, GLenum internalformat, GLsizei width); 1126 typedef void (GL_APIENTRYP PFNGLTEXSTORAGE2DEXTPROC) (GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height); 1127 typedef void (GL_APIENTRYP PFNGLTEXSTORAGE3DEXTPROC) (GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth); 1128 typedef void (GL_APIENTRYP PFNGLTEXTURESTORAGE1DEXTPROC) (GLuint texture, GLenum target, GLsizei levels, GLenum internalformat, GLsizei width); 1129 typedef void (GL_APIENTRYP PFNGLTEXTURESTORAGE2DEXTPROC) (GLuint texture, GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height); 1130 typedef void (GL_APIENTRYP PFNGLTEXTURESTORAGE3DEXTPROC) (GLuint texture, GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth); 1131 #endif 1132 1133 /*------------------------------------------------------------------------* 1134 * IMG extension functions 1135 *------------------------------------------------------------------------*/ 1136 1137 /* GL_IMG_read_format */ 1138 #ifndef GL_IMG_read_format 1139 #define GL_IMG_read_format 1 1140 #endif 1141 1142 /* GL_IMG_texture_compression_pvrtc */ 1143 #ifndef GL_IMG_texture_compression_pvrtc 1144 #define GL_IMG_texture_compression_pvrtc 1 1145 #endif 1146 1147 /* GL_IMG_texture_env_enhanced_fixed_function */ 1148 #ifndef GL_IMG_texture_env_enhanced_fixed_function 1149 #define GL_IMG_texture_env_enhanced_fixed_function 1 1150 #endif 1151 1152 /* GL_IMG_user_clip_plane */ 1153 #ifndef GL_IMG_user_clip_plane 1154 #define GL_IMG_user_clip_plane 1 1155 #ifdef GL_GLEXT_PROTOTYPES 1156 GL_API void GL_APIENTRY glClipPlanefIMG (GLenum, const GLfloat *); 1157 GL_API void GL_APIENTRY glClipPlanexIMG (GLenum, const GLfixed *); 1158 #endif 1159 typedef void (GL_APIENTRYP PFNGLCLIPPLANEFIMGPROC) (GLenum p, const GLfloat *eqn); 1160 typedef void (GL_APIENTRYP PFNGLCLIPPLANEXIMGPROC) (GLenum p, const GLfixed *eqn); 1161 #endif 1162 1163 /* GL_IMG_multisampled_render_to_texture */ 1164 #ifndef GL_IMG_multisampled_render_to_texture 1165 #define GL_IMG_multisampled_render_to_texture 1 1166 #ifdef GL_GLEXT_PROTOTYPES 1167 GL_API void GL_APIENTRY glRenderbufferStorageMultisampleIMG (GLenum, GLsizei, GLenum, GLsizei, GLsizei); 1168 GL_API void GL_APIENTRY glFramebufferTexture2DMultisampleIMG (GLenum, GLenum, GLenum, GLuint, GLint, GLsizei); 1169 #endif 1170 typedef void (GL_APIENTRYP PFNGLRENDERBUFFERSTORAGEMULTISAMPLEIMGPROC) (GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height); 1171 typedef void (GL_APIENTRYP PFNGLFRAMEBUFFERTEXTURE2DMULTISAMPLEIMGPROC) (GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLsizei samples); 1172 #endif 1173 1174 /*------------------------------------------------------------------------* 1175 * NV extension functions 1176 *------------------------------------------------------------------------*/ 1177 1178 /* NV_fence */ 1179 #ifndef GL_NV_fence 1180 #define GL_NV_fence 1 1181 #ifdef GL_GLEXT_PROTOTYPES 1182 GL_API void GL_APIENTRY glDeleteFencesNV (GLsizei, const GLuint *); 1183 GL_API void GL_APIENTRY glGenFencesNV (GLsizei, GLuint *); 1184 GL_API GLboolean GL_APIENTRY glIsFenceNV (GLuint); 1185 GL_API GLboolean GL_APIENTRY glTestFenceNV (GLuint); 1186 GL_API void GL_APIENTRY glGetFenceivNV (GLuint, GLenum, GLint *); 1187 GL_API void GL_APIENTRY glFinishFenceNV (GLuint); 1188 GL_API void GL_APIENTRY glSetFenceNV (GLuint, GLenum); 1189 #endif 1190 typedef void (GL_APIENTRYP PFNGLDELETEFENCESNVPROC) (GLsizei n, const GLuint *fences); 1191 typedef void (GL_APIENTRYP PFNGLGENFENCESNVPROC) (GLsizei n, GLuint *fences); 1192 typedef GLboolean (GL_APIENTRYP PFNGLISFENCENVPROC) (GLuint fence); 1193 typedef GLboolean (GL_APIENTRYP PFNGLTESTFENCENVPROC) (GLuint fence); 1194 typedef void (GL_APIENTRYP PFNGLGETFENCEIVNVPROC) (GLuint fence, GLenum pname, GLint *params); 1195 typedef void (GL_APIENTRYP PFNGLFINISHFENCENVPROC) (GLuint fence); 1196 typedef void (GL_APIENTRYP PFNGLSETFENCENVPROC) (GLuint fence, GLenum condition); 1197 #endif 1198 1199 /*------------------------------------------------------------------------* 1200 * QCOM extension functions 1201 *------------------------------------------------------------------------*/ 1202 1203 /* GL_QCOM_driver_control */ 1204 #ifndef GL_QCOM_driver_control 1205 #define GL_QCOM_driver_control 1 1206 #ifdef GL_GLEXT_PROTOTYPES 1207 GL_API void GL_APIENTRY glGetDriverControlsQCOM (GLint *num, GLsizei size, GLuint *driverControls); 1208 GL_API void GL_APIENTRY glGetDriverControlStringQCOM (GLuint driverControl, GLsizei bufSize, GLsizei *length, GLchar *driverControlString); 1209 GL_API void GL_APIENTRY glEnableDriverControlQCOM (GLuint driverControl); 1210 GL_API void GL_APIENTRY glDisableDriverControlQCOM (GLuint driverControl); 1211 #endif 1212 typedef void (GL_APIENTRYP PFNGLGETDRIVERCONTROLSQCOMPROC) (GLint *num, GLsizei size, GLuint *driverControls); 1213 typedef void (GL_APIENTRYP PFNGLGETDRIVERCONTROLSTRINGQCOMPROC) (GLuint driverControl, GLsizei bufSize, GLsizei *length, GLchar *driverControlString); 1214 typedef void (GL_APIENTRYP PFNGLENABLEDRIVERCONTROLQCOMPROC) (GLuint driverControl); 1215 typedef void (GL_APIENTRYP PFNGLDISABLEDRIVERCONTROLQCOMPROC) (GLuint driverControl); 1216 #endif 1217 1218 /* GL_QCOM_extended_get */ 1219 #ifndef GL_QCOM_extended_get 1220 #define GL_QCOM_extended_get 1 1221 #ifdef GL_GLEXT_PROTOTYPES 1222 GL_API void GL_APIENTRY glExtGetTexturesQCOM (GLuint *textures, GLint maxTextures, GLint *numTextures); 1223 GL_API void GL_APIENTRY glExtGetBuffersQCOM (GLuint *buffers, GLint maxBuffers, GLint *numBuffers); 1224 GL_API void GL_APIENTRY glExtGetRenderbuffersQCOM (GLuint *renderbuffers, GLint maxRenderbuffers, GLint *numRenderbuffers); 1225 GL_API void GL_APIENTRY glExtGetFramebuffersQCOM (GLuint *framebuffers, GLint maxFramebuffers, GLint *numFramebuffers); 1226 GL_API void GL_APIENTRY glExtGetTexLevelParameterivQCOM (GLuint texture, GLenum face, GLint level, GLenum pname, GLint *params); 1227 GL_API void GL_APIENTRY glExtTexObjectStateOverrideiQCOM (GLenum target, GLenum pname, GLint param); 1228 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); 1229 GL_API void GL_APIENTRY glExtGetBufferPointervQCOM (GLenum target, GLvoid **params); 1230 #endif 1231 typedef void (GL_APIENTRYP PFNGLEXTGETTEXTURESQCOMPROC) (GLuint *textures, GLint maxTextures, GLint *numTextures); 1232 typedef void (GL_APIENTRYP PFNGLEXTGETBUFFERSQCOMPROC) (GLuint *buffers, GLint maxBuffers, GLint *numBuffers); 1233 typedef void (GL_APIENTRYP PFNGLEXTGETRENDERBUFFERSQCOMPROC) (GLuint *renderbuffers, GLint maxRenderbuffers, GLint *numRenderbuffers); 1234 typedef void (GL_APIENTRYP PFNGLEXTGETFRAMEBUFFERSQCOMPROC) (GLuint *framebuffers, GLint maxFramebuffers, GLint *numFramebuffers); 1235 typedef void (GL_APIENTRYP PFNGLEXTGETTEXLEVELPARAMETERIVQCOMPROC) (GLuint texture, GLenum face, GLint level, GLenum pname, GLint *params); 1236 typedef void (GL_APIENTRYP PFNGLEXTTEXOBJECTSTATEOVERRIDEIQCOMPROC) (GLenum target, GLenum pname, GLint param); 1237 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); 1238 typedef void (GL_APIENTRYP PFNGLEXTGETBUFFERPOINTERVQCOMPROC) (GLenum target, GLvoid **params); 1239 #endif 1240 1241 /* GL_QCOM_extended_get2 */ 1242 #ifndef GL_QCOM_extended_get2 1243 #define GL_QCOM_extended_get2 1 1244 #ifdef GL_GLEXT_PROTOTYPES 1245 GL_API void GL_APIENTRY glExtGetShadersQCOM (GLuint *shaders, GLint maxShaders, GLint *numShaders); 1246 GL_API void GL_APIENTRY glExtGetProgramsQCOM (GLuint *programs, GLint maxPrograms, GLint *numPrograms); 1247 GL_API GLboolean GL_APIENTRY glExtIsProgramBinaryQCOM (GLuint program); 1248 GL_API void GL_APIENTRY glExtGetProgramBinarySourceQCOM (GLuint program, GLenum shadertype, GLchar *source, GLint *length); 1249 #endif 1250 typedef void (GL_APIENTRYP PFNGLEXTGETSHADERSQCOMPROC) (GLuint *shaders, GLint maxShaders, GLint *numShaders); 1251 typedef void (GL_APIENTRYP PFNGLEXTGETPROGRAMSQCOMPROC) (GLuint *programs, GLint maxPrograms, GLint *numPrograms); 1252 typedef GLboolean (GL_APIENTRYP PFNGLEXTISPROGRAMBINARYQCOMPROC) (GLuint program); 1253 typedef void (GL_APIENTRYP PFNGLEXTGETPROGRAMBINARYSOURCEQCOMPROC) (GLuint program, GLenum shadertype, GLchar *source, GLint *length); 1254 #endif 1255 1256 /* GL_QCOM_perfmon_global_mode */ 1257 #ifndef GL_QCOM_perfmon_global_mode 1258 #define GL_QCOM_perfmon_global_mode 1 1259 #endif 1260 1261 /* GL_QCOM_writeonly_rendering */ 1262 #ifndef GL_QCOM_writeonly_rendering 1263 #define GL_QCOM_writeonly_rendering 1 1264 #endif 1265 1266 /* GL_QCOM_tiled_rendering */ 1267 #ifndef GL_QCOM_tiled_rendering 1268 #define GL_QCOM_tiled_rendering 1 1269 #ifdef GL_GLEXT_PROTOTYPES 1270 GL_API void GL_APIENTRY glStartTilingQCOM (GLuint x, GLuint y, GLuint width, GLuint height, GLbitfield preserveMask); 1271 GL_API void GL_APIENTRY glEndTilingQCOM (GLbitfield preserveMask); 1272 #endif 1273 typedef void (GL_APIENTRYP PFNGLSTARTTILINGQCOMPROC) (GLuint x, GLuint y, GLuint width, GLuint height, GLbitfield preserveMask); 1274 typedef void (GL_APIENTRYP PFNGLENDTILINGQCOMPROC) (GLbitfield preserveMask); 1275 #endif 1276 1277 #ifdef __cplusplus 1278 } 1279 #endif 1280 1281 #endif /* __glext_h_ */ 1282