1 #ifndef __glext_h_ 2 #define __glext_h_ 3 4 /* $Revision: 10965 $ on $Date:: 2010-04-09 02:11:29 -0700 #$ */ 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_element_index_uint */ 72 #ifndef GL_OES_element_index_uint 73 #define GL_UNSIGNED_INT 0x1405 74 #endif 75 76 /* GL_OES_fixed_point */ 77 #ifndef GL_OES_fixed_point 78 #define GL_FIXED_OES 0x140C 79 #endif 80 81 /* GL_OES_framebuffer_object */ 82 #ifndef GL_OES_framebuffer_object 83 #define GL_NONE_OES 0 84 #define GL_FRAMEBUFFER_OES 0x8D40 85 #define GL_RENDERBUFFER_OES 0x8D41 86 #define GL_RGBA4_OES 0x8056 87 #define GL_RGB5_A1_OES 0x8057 88 #define GL_RGB565_OES 0x8D62 89 #define GL_DEPTH_COMPONENT16_OES 0x81A5 90 #define GL_RENDERBUFFER_WIDTH_OES 0x8D42 91 #define GL_RENDERBUFFER_HEIGHT_OES 0x8D43 92 #define GL_RENDERBUFFER_INTERNAL_FORMAT_OES 0x8D44 93 #define GL_RENDERBUFFER_RED_SIZE_OES 0x8D50 94 #define GL_RENDERBUFFER_GREEN_SIZE_OES 0x8D51 95 #define GL_RENDERBUFFER_BLUE_SIZE_OES 0x8D52 96 #define GL_RENDERBUFFER_ALPHA_SIZE_OES 0x8D53 97 #define GL_RENDERBUFFER_DEPTH_SIZE_OES 0x8D54 98 #define GL_RENDERBUFFER_STENCIL_SIZE_OES 0x8D55 99 #define GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE_OES 0x8CD0 100 #define GL_FRAMEBUFFER_ATTACHMENT_OBJECT_NAME_OES 0x8CD1 101 #define GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL_OES 0x8CD2 102 #define GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE_OES 0x8CD3 103 #define GL_COLOR_ATTACHMENT0_OES 0x8CE0 104 #define GL_DEPTH_ATTACHMENT_OES 0x8D00 105 #define GL_STENCIL_ATTACHMENT_OES 0x8D20 106 #define GL_FRAMEBUFFER_COMPLETE_OES 0x8CD5 107 #define GL_FRAMEBUFFER_INCOMPLETE_ATTACHMENT_OES 0x8CD6 108 #define GL_FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT_OES 0x8CD7 109 #define GL_FRAMEBUFFER_INCOMPLETE_DIMENSIONS_OES 0x8CD9 110 #define GL_FRAMEBUFFER_INCOMPLETE_FORMATS_OES 0x8CDA 111 #define GL_FRAMEBUFFER_UNSUPPORTED_OES 0x8CDD 112 #define GL_FRAMEBUFFER_BINDING_OES 0x8CA6 113 #define GL_RENDERBUFFER_BINDING_OES 0x8CA7 114 #define GL_MAX_RENDERBUFFER_SIZE_OES 0x84E8 115 #define GL_INVALID_FRAMEBUFFER_OPERATION_OES 0x0506 116 #endif 117 118 /* GL_OES_mapbuffer */ 119 #ifndef GL_OES_mapbuffer 120 #define GL_WRITE_ONLY_OES 0x88B9 121 #define GL_BUFFER_ACCESS_OES 0x88BB 122 #define GL_BUFFER_MAPPED_OES 0x88BC 123 #define GL_BUFFER_MAP_POINTER_OES 0x88BD 124 #endif 125 126 /* GL_OES_matrix_get */ 127 #ifndef GL_OES_matrix_get 128 #define GL_MODELVIEW_MATRIX_FLOAT_AS_INT_BITS_OES 0x898D 129 #define GL_PROJECTION_MATRIX_FLOAT_AS_INT_BITS_OES 0x898E 130 #define GL_TEXTURE_MATRIX_FLOAT_AS_INT_BITS_OES 0x898F 131 #endif 132 133 /* GL_OES_matrix_palette */ 134 #ifndef GL_OES_matrix_palette 135 #define GL_MAX_VERTEX_UNITS_OES 0x86A4 136 #define GL_MAX_PALETTE_MATRICES_OES 0x8842 137 #define GL_MATRIX_PALETTE_OES 0x8840 138 #define GL_MATRIX_INDEX_ARRAY_OES 0x8844 139 #define GL_WEIGHT_ARRAY_OES 0x86AD 140 #define GL_CURRENT_PALETTE_MATRIX_OES 0x8843 141 #define GL_MATRIX_INDEX_ARRAY_SIZE_OES 0x8846 142 #define GL_MATRIX_INDEX_ARRAY_TYPE_OES 0x8847 143 #define GL_MATRIX_INDEX_ARRAY_STRIDE_OES 0x8848 144 #define GL_MATRIX_INDEX_ARRAY_POINTER_OES 0x8849 145 #define GL_MATRIX_INDEX_ARRAY_BUFFER_BINDING_OES 0x8B9E 146 #define GL_WEIGHT_ARRAY_SIZE_OES 0x86AB 147 #define GL_WEIGHT_ARRAY_TYPE_OES 0x86A9 148 #define GL_WEIGHT_ARRAY_STRIDE_OES 0x86AA 149 #define GL_WEIGHT_ARRAY_POINTER_OES 0x86AC 150 #define GL_WEIGHT_ARRAY_BUFFER_BINDING_OES 0x889E 151 #endif 152 153 /* GL_OES_packed_depth_stencil */ 154 #ifndef GL_OES_packed_depth_stencil 155 #define GL_DEPTH_STENCIL_OES 0x84F9 156 #define GL_UNSIGNED_INT_24_8_OES 0x84FA 157 #define GL_DEPTH24_STENCIL8_OES 0x88F0 158 #endif 159 160 /* GL_OES_rgb8_rgba8 */ 161 #ifndef GL_OES_rgb8_rgba8 162 #define GL_RGB8_OES 0x8051 163 #define GL_RGBA8_OES 0x8058 164 #endif 165 166 /* GL_OES_stencil1 */ 167 #ifndef GL_OES_stencil1 168 #define GL_STENCIL_INDEX1_OES 0x8D46 169 #endif 170 171 /* GL_OES_stencil4 */ 172 #ifndef GL_OES_stencil4 173 #define GL_STENCIL_INDEX4_OES 0x8D47 174 #endif 175 176 /* GL_OES_stencil8 */ 177 #ifndef GL_OES_stencil8 178 #define GL_STENCIL_INDEX8_OES 0x8D48 179 #endif 180 181 /* GL_OES_stencil_wrap */ 182 #ifndef GL_OES_stencil_wrap 183 #define GL_INCR_WRAP_OES 0x8507 184 #define GL_DECR_WRAP_OES 0x8508 185 #endif 186 187 /* GL_OES_texture_cube_map */ 188 #ifndef GL_OES_texture_cube_map 189 #define GL_NORMAL_MAP_OES 0x8511 190 #define GL_REFLECTION_MAP_OES 0x8512 191 #define GL_TEXTURE_CUBE_MAP_OES 0x8513 192 #define GL_TEXTURE_BINDING_CUBE_MAP_OES 0x8514 193 #define GL_TEXTURE_CUBE_MAP_POSITIVE_X_OES 0x8515 194 #define GL_TEXTURE_CUBE_MAP_NEGATIVE_X_OES 0x8516 195 #define GL_TEXTURE_CUBE_MAP_POSITIVE_Y_OES 0x8517 196 #define GL_TEXTURE_CUBE_MAP_NEGATIVE_Y_OES 0x8518 197 #define GL_TEXTURE_CUBE_MAP_POSITIVE_Z_OES 0x8519 198 #define GL_TEXTURE_CUBE_MAP_NEGATIVE_Z_OES 0x851A 199 #define GL_MAX_CUBE_MAP_TEXTURE_SIZE_OES 0x851C 200 #define GL_TEXTURE_GEN_MODE_OES 0x2500 201 #define GL_TEXTURE_GEN_STR_OES 0x8D60 202 #endif 203 204 /* GL_OES_texture_mirrored_repeat */ 205 #ifndef GL_OES_texture_mirrored_repeat 206 #define GL_MIRRORED_REPEAT_OES 0x8370 207 #endif 208 209 /* GL_OES_vertex_array_object */ 210 #ifndef GL_OES_vertex_array_object 211 #define GL_VERTEX_ARRAY_BINDING_OES 0x85B5 212 #endif 213 214 /* GL_OES_EGL_image_external */ 215 #ifndef GL_OES_EGL_image_external 216 #define GL_TEXTURE_EXTERNAL_OES 0x8D65 217 #define GL_SAMPLER_EXTERNAL_OES 0x8D66 218 #define GL_TEXTURE_BINDING_EXTERNAL_OES 0x8D67 219 #define GL_REQUIRED_TEXTURE_IMAGE_UNITS_OES 0x8D68 220 #endif 221 222 /*------------------------------------------------------------------------* 223 * AMD extension tokens 224 *------------------------------------------------------------------------*/ 225 226 /* GL_AMD_compressed_3DC_texture */ 227 #ifndef GL_AMD_compressed_3DC_texture 228 #define GL_3DC_X_AMD 0x87F9 229 #define GL_3DC_XY_AMD 0x87FA 230 #endif 231 232 /* GL_AMD_compressed_ATC_texture */ 233 #ifndef GL_AMD_compressed_ATC_texture 234 #define GL_ATC_RGB_AMD 0x8C92 235 #define GL_ATC_RGBA_EXPLICIT_ALPHA_AMD 0x8C93 236 #define GL_ATC_RGBA_INTERPOLATED_ALPHA_AMD 0x87EE 237 #endif 238 239 /*------------------------------------------------------------------------* 240 * APPLE extension tokens 241 *------------------------------------------------------------------------*/ 242 243 /* GL_APPLE_texture_2D_limited_npot */ 244 /* No new tokens introduced by this extension. */ 245 246 /*------------------------------------------------------------------------* 247 * EXT extension tokens 248 *------------------------------------------------------------------------*/ 249 250 /* GL_EXT_blend_minmax */ 251 #ifndef GL_EXT_blend_minmax 252 #define GL_MIN_EXT 0x8007 253 #define GL_MAX_EXT 0x8008 254 #endif 255 256 /* GL_EXT_discard_framebuffer */ 257 #ifndef GL_EXT_discard_framebuffer 258 #define GL_COLOR_EXT 0x1800 259 #define GL_DEPTH_EXT 0x1801 260 #define GL_STENCIL_EXT 0x1802 261 #endif 262 263 /* GL_EXT_multi_draw_arrays */ 264 /* No new tokens introduced by this extension. */ 265 266 /* GL_EXT_read_format_bgra */ 267 #ifndef GL_EXT_read_format_bgra 268 #define GL_BGRA_EXT 0x80E1 269 #define GL_UNSIGNED_SHORT_4_4_4_4_REV_EXT 0x8365 270 #define GL_UNSIGNED_SHORT_1_5_5_5_REV_EXT 0x8366 271 #endif 272 273 /* GL_EXT_texture_filter_anisotropic */ 274 #ifndef GL_EXT_texture_filter_anisotropic 275 #define GL_TEXTURE_MAX_ANISOTROPY_EXT 0x84FE 276 #define GL_MAX_TEXTURE_MAX_ANISOTROPY_EXT 0x84FF 277 #endif 278 279 /* GL_EXT_texture_format_BGRA8888 */ 280 #ifndef GL_EXT_texture_format_BGRA8888 281 #define GL_BGRA_EXT 0x80E1 282 #endif 283 284 /* GL_EXT_texture_lod_bias */ 285 #ifndef GL_EXT_texture_lod_bias 286 #define GL_MAX_TEXTURE_LOD_BIAS_EXT 0x84FD 287 #define GL_TEXTURE_FILTER_CONTROL_EXT 0x8500 288 #define GL_TEXTURE_LOD_BIAS_EXT 0x8501 289 #endif 290 291 /*------------------------------------------------------------------------* 292 * IMG extension tokens 293 *------------------------------------------------------------------------*/ 294 295 /* GL_IMG_read_format */ 296 #ifndef GL_IMG_read_format 297 #define GL_BGRA_IMG 0x80E1 298 #define GL_UNSIGNED_SHORT_4_4_4_4_REV_IMG 0x8365 299 #endif 300 301 /* GL_IMG_texture_compression_pvrtc */ 302 #ifndef GL_IMG_texture_compression_pvrtc 303 #define GL_COMPRESSED_RGB_PVRTC_4BPPV1_IMG 0x8C00 304 #define GL_COMPRESSED_RGB_PVRTC_2BPPV1_IMG 0x8C01 305 #define GL_COMPRESSED_RGBA_PVRTC_4BPPV1_IMG 0x8C02 306 #define GL_COMPRESSED_RGBA_PVRTC_2BPPV1_IMG 0x8C03 307 #endif 308 309 /* GL_IMG_texture_env_enhanced_fixed_function */ 310 #ifndef GL_IMG_texture_env_enhanced_fixed_function 311 #define GL_MODULATE_COLOR_IMG 0x8C04 312 #define GL_RECIP_ADD_SIGNED_ALPHA_IMG 0x8C05 313 #define GL_TEXTURE_ALPHA_MODULATE_IMG 0x8C06 314 #define GL_FACTOR_ALPHA_MODULATE_IMG 0x8C07 315 #define GL_FRAGMENT_ALPHA_MODULATE_IMG 0x8C08 316 #define GL_ADD_BLEND_IMG 0x8C09 317 #define GL_DOT3_RGBA_IMG 0x86AF 318 #endif 319 320 /* GL_IMG_user_clip_plane */ 321 #ifndef GL_IMG_user_clip_plane 322 #define GL_CLIP_PLANE0_IMG 0x3000 323 #define GL_CLIP_PLANE1_IMG 0x3001 324 #define GL_CLIP_PLANE2_IMG 0x3002 325 #define GL_CLIP_PLANE3_IMG 0x3003 326 #define GL_CLIP_PLANE4_IMG 0x3004 327 #define GL_CLIP_PLANE5_IMG 0x3005 328 #define GL_MAX_CLIP_PLANES_IMG 0x0D32 329 #endif 330 331 /* GL_IMG_multisampled_render_to_texture */ 332 #ifndef GL_IMG_multisampled_render_to_texture 333 #define GL_RENDERBUFFER_SAMPLES_IMG 0x9133 334 #define GL_FRAMEBUFFER_INCOMPLETE_MULTISAMPLE_IMG 0x9134 335 #define GL_MAX_SAMPLES_IMG 0x9135 336 #define GL_TEXTURE_SAMPLES_IMG 0x9136 337 #endif 338 339 /*------------------------------------------------------------------------* 340 * NV extension tokens 341 *------------------------------------------------------------------------*/ 342 343 /* GL_NV_fence */ 344 #ifndef GL_NV_fence 345 #define GL_ALL_COMPLETED_NV 0x84F2 346 #define GL_FENCE_STATUS_NV 0x84F3 347 #define GL_FENCE_CONDITION_NV 0x84F4 348 #endif 349 350 /*------------------------------------------------------------------------* 351 * QCOM extension tokens 352 *------------------------------------------------------------------------*/ 353 354 /* GL_QCOM_driver_control */ 355 /* No new tokens introduced by this extension. */ 356 357 /* GL_QCOM_extended_get */ 358 #ifndef GL_QCOM_extended_get 359 #define GL_TEXTURE_WIDTH_QCOM 0x8BD2 360 #define GL_TEXTURE_HEIGHT_QCOM 0x8BD3 361 #define GL_TEXTURE_DEPTH_QCOM 0x8BD4 362 #define GL_TEXTURE_INTERNAL_FORMAT_QCOM 0x8BD5 363 #define GL_TEXTURE_FORMAT_QCOM 0x8BD6 364 #define GL_TEXTURE_TYPE_QCOM 0x8BD7 365 #define GL_TEXTURE_IMAGE_VALID_QCOM 0x8BD8 366 #define GL_TEXTURE_NUM_LEVELS_QCOM 0x8BD9 367 #define GL_TEXTURE_TARGET_QCOM 0x8BDA 368 #define GL_TEXTURE_OBJECT_VALID_QCOM 0x8BDB 369 #define GL_STATE_RESTORE 0x8BDC 370 #endif 371 372 /* GL_QCOM_extended_get2 */ 373 /* No new tokens introduced by this extension. */ 374 375 /* GL_QCOM_perfmon_global_mode */ 376 #ifndef GL_QCOM_perfmon_global_mode 377 #define GL_PERFMON_GLOBAL_MODE_QCOM 0x8FA0 378 #endif 379 380 /* GL_QCOM_writeonly_rendering */ 381 #ifndef GL_QCOM_writeonly_rendering 382 #define GL_WRITEONLY_RENDERING_QCOM 0x8823 383 #endif 384 385 /* GL_QCOM_tiled_rendering */ 386 #ifndef GL_QCOM_tiled_rendering 387 #define GL_COLOR_BUFFER_BIT0_QCOM 0x00000001 388 #define GL_COLOR_BUFFER_BIT1_QCOM 0x00000002 389 #define GL_COLOR_BUFFER_BIT2_QCOM 0x00000004 390 #define GL_COLOR_BUFFER_BIT3_QCOM 0x00000008 391 #define GL_COLOR_BUFFER_BIT4_QCOM 0x00000010 392 #define GL_COLOR_BUFFER_BIT5_QCOM 0x00000020 393 #define GL_COLOR_BUFFER_BIT6_QCOM 0x00000040 394 #define GL_COLOR_BUFFER_BIT7_QCOM 0x00000080 395 #define GL_DEPTH_BUFFER_BIT0_QCOM 0x00000100 396 #define GL_DEPTH_BUFFER_BIT1_QCOM 0x00000200 397 #define GL_DEPTH_BUFFER_BIT2_QCOM 0x00000400 398 #define GL_DEPTH_BUFFER_BIT3_QCOM 0x00000800 399 #define GL_DEPTH_BUFFER_BIT4_QCOM 0x00001000 400 #define GL_DEPTH_BUFFER_BIT5_QCOM 0x00002000 401 #define GL_DEPTH_BUFFER_BIT6_QCOM 0x00004000 402 #define GL_DEPTH_BUFFER_BIT7_QCOM 0x00008000 403 #define GL_STENCIL_BUFFER_BIT0_QCOM 0x00010000 404 #define GL_STENCIL_BUFFER_BIT1_QCOM 0x00020000 405 #define GL_STENCIL_BUFFER_BIT2_QCOM 0x00040000 406 #define GL_STENCIL_BUFFER_BIT3_QCOM 0x00080000 407 #define GL_STENCIL_BUFFER_BIT4_QCOM 0x00100000 408 #define GL_STENCIL_BUFFER_BIT5_QCOM 0x00200000 409 #define GL_STENCIL_BUFFER_BIT6_QCOM 0x00400000 410 #define GL_STENCIL_BUFFER_BIT7_QCOM 0x00800000 411 #define GL_MULTISAMPLE_BUFFER_BIT0_QCOM 0x01000000 412 #define GL_MULTISAMPLE_BUFFER_BIT1_QCOM 0x02000000 413 #define GL_MULTISAMPLE_BUFFER_BIT2_QCOM 0x04000000 414 #define GL_MULTISAMPLE_BUFFER_BIT3_QCOM 0x08000000 415 #define GL_MULTISAMPLE_BUFFER_BIT4_QCOM 0x10000000 416 #define GL_MULTISAMPLE_BUFFER_BIT5_QCOM 0x20000000 417 #define GL_MULTISAMPLE_BUFFER_BIT6_QCOM 0x40000000 418 #define GL_MULTISAMPLE_BUFFER_BIT7_QCOM 0x80000000 419 #endif 420 421 /*------------------------------------------------------------------------* 422 * End of extension tokens, start of corresponding extension functions 423 *------------------------------------------------------------------------*/ 424 425 /*------------------------------------------------------------------------* 426 * OES extension functions 427 *------------------------------------------------------------------------*/ 428 429 /* GL_OES_blend_equation_separate */ 430 #ifndef GL_OES_blend_equation_separate 431 #define GL_OES_blend_equation_separate 1 432 #ifdef GL_GLEXT_PROTOTYPES 433 GL_API void GL_APIENTRY glBlendEquationSeparateOES (GLenum modeRGB, GLenum modeAlpha); 434 #endif 435 typedef void (GL_APIENTRYP PFNGLBLENDEQUATIONSEPARATEOESPROC) (GLenum modeRGB, GLenum modeAlpha); 436 #endif 437 438 /* GL_OES_blend_func_separate */ 439 #ifndef GL_OES_blend_func_separate 440 #define GL_OES_blend_func_separate 1 441 #ifdef GL_GLEXT_PROTOTYPES 442 GL_API void GL_APIENTRY glBlendFuncSeparateOES (GLenum srcRGB, GLenum dstRGB, GLenum srcAlpha, GLenum dstAlpha); 443 #endif 444 typedef void (GL_APIENTRYP PFNGLBLENDFUNCSEPARATEOESPROC) (GLenum srcRGB, GLenum dstRGB, GLenum srcAlpha, GLenum dstAlpha); 445 #endif 446 447 /* GL_OES_blend_subtract */ 448 #ifndef GL_OES_blend_subtract 449 #define GL_OES_blend_subtract 1 450 #ifdef GL_GLEXT_PROTOTYPES 451 GL_API void GL_APIENTRY glBlendEquationOES (GLenum mode); 452 #endif 453 typedef void (GL_APIENTRYP PFNGLBLENDEQUATIONOESPROC) (GLenum mode); 454 #endif 455 456 /* GL_OES_byte_coordinates */ 457 #ifndef GL_OES_byte_coordinates 458 #define GL_OES_byte_coordinates 1 459 #endif 460 461 /* GL_OES_compressed_ETC1_RGB8_texture */ 462 #ifndef GL_OES_compressed_ETC1_RGB8_texture 463 #define GL_OES_compressed_ETC1_RGB8_texture 1 464 #endif 465 466 /* GL_OES_depth24 */ 467 #ifndef GL_OES_depth24 468 #define GL_OES_depth24 1 469 #endif 470 471 /* GL_OES_depth32 */ 472 #ifndef GL_OES_depth32 473 #define GL_OES_depth32 1 474 #endif 475 476 /* GL_OES_draw_texture */ 477 #ifndef GL_OES_draw_texture 478 #define GL_OES_draw_texture 1 479 #ifdef GL_GLEXT_PROTOTYPES 480 GL_API void GL_APIENTRY glDrawTexsOES (GLshort x, GLshort y, GLshort z, GLshort width, GLshort height); 481 GL_API void GL_APIENTRY glDrawTexiOES (GLint x, GLint y, GLint z, GLint width, GLint height); 482 GL_API void GL_APIENTRY glDrawTexxOES (GLfixed x, GLfixed y, GLfixed z, GLfixed width, GLfixed height); 483 GL_API void GL_APIENTRY glDrawTexsvOES (const GLshort *coords); 484 GL_API void GL_APIENTRY glDrawTexivOES (const GLint *coords); 485 GL_API void GL_APIENTRY glDrawTexxvOES (const GLfixed *coords); 486 GL_API void GL_APIENTRY glDrawTexfOES (GLfloat x, GLfloat y, GLfloat z, GLfloat width, GLfloat height); 487 GL_API void GL_APIENTRY glDrawTexfvOES (const GLfloat *coords); 488 #endif 489 typedef void (GL_APIENTRYP PFNGLDRAWTEXSOESPROC) (GLshort x, GLshort y, GLshort z, GLshort width, GLshort height); 490 typedef void (GL_APIENTRYP PFNGLDRAWTEXIOESPROC) (GLint x, GLint y, GLint z, GLint width, GLint height); 491 typedef void (GL_APIENTRYP PFNGLDRAWTEXXOESPROC) (GLfixed x, GLfixed y, GLfixed z, GLfixed width, GLfixed height); 492 typedef void (GL_APIENTRYP PFNGLDRAWTEXSVOESPROC) (const GLshort *coords); 493 typedef void (GL_APIENTRYP PFNGLDRAWTEXIVOESPROC) (const GLint *coords); 494 typedef void (GL_APIENTRYP PFNGLDRAWTEXXVOESPROC) (const GLfixed *coords); 495 typedef void (GL_APIENTRYP PFNGLDRAWTEXFOESPROC) (GLfloat x, GLfloat y, GLfloat z, GLfloat width, GLfloat height); 496 typedef void (GL_APIENTRYP PFNGLDRAWTEXFVOESPROC) (const GLfloat *coords); 497 #endif 498 499 /* GL_OES_EGL_image */ 500 #ifndef GL_OES_EGL_image 501 #define GL_OES_EGL_image 1 502 #ifdef GL_GLEXT_PROTOTYPES 503 GL_API void GL_APIENTRY glEGLImageTargetTexture2DOES (GLenum target, GLeglImageOES image); 504 GL_API void GL_APIENTRY glEGLImageTargetRenderbufferStorageOES (GLenum target, GLeglImageOES image); 505 #endif 506 typedef void (GL_APIENTRYP PFNGLEGLIMAGETARGETTEXTURE2DOESPROC) (GLenum target, GLeglImageOES image); 507 typedef void (GL_APIENTRYP PFNGLEGLIMAGETARGETRENDERBUFFERSTORAGEOESPROC) (GLenum target, GLeglImageOES image); 508 #endif 509 510 /* GL_OES_element_index_uint */ 511 #ifndef GL_OES_element_index_uint 512 #define GL_OES_element_index_uint 1 513 #endif 514 515 /* GL_OES_extended_matrix_palette */ 516 #ifndef GL_OES_extended_matrix_palette 517 #define GL_OES_extended_matrix_palette 1 518 #endif 519 520 /* GL_OES_fbo_render_mipmap */ 521 #ifndef GL_OES_fbo_render_mipmap 522 #define GL_OES_fbo_render_mipmap 1 523 #endif 524 525 /* GL_OES_fixed_point */ 526 #ifndef GL_OES_fixed_point 527 #define GL_OES_fixed_point 1 528 #ifdef GL_GLEXT_PROTOTYPES 529 GL_API void GL_APIENTRY glAlphaFuncxOES (GLenum func, GLclampx ref); 530 GL_API void GL_APIENTRY glClearColorxOES (GLclampx red, GLclampx green, GLclampx blue, GLclampx alpha); 531 GL_API void GL_APIENTRY glClearDepthxOES (GLclampx depth); 532 GL_API void GL_APIENTRY glClipPlanexOES (GLenum plane, const GLfixed *equation); 533 GL_API void GL_APIENTRY glColor4xOES (GLfixed red, GLfixed green, GLfixed blue, GLfixed alpha); 534 GL_API void GL_APIENTRY glDepthRangexOES (GLclampx zNear, GLclampx zFar); 535 GL_API void GL_APIENTRY glFogxOES (GLenum pname, GLfixed param); 536 GL_API void GL_APIENTRY glFogxvOES (GLenum pname, const GLfixed *params); 537 GL_API void GL_APIENTRY glFrustumxOES (GLfixed left, GLfixed right, GLfixed bottom, GLfixed top, GLfixed zNear, GLfixed zFar); 538 GL_API void GL_APIENTRY glGetClipPlanexOES (GLenum pname, GLfixed eqn[4]); 539 GL_API void GL_APIENTRY glGetFixedvOES (GLenum pname, GLfixed *params); 540 GL_API void GL_APIENTRY glGetLightxvOES (GLenum light, GLenum pname, GLfixed *params); 541 GL_API void GL_APIENTRY glGetMaterialxvOES (GLenum face, GLenum pname, GLfixed *params); 542 GL_API void GL_APIENTRY glGetTexEnvxvOES (GLenum env, GLenum pname, GLfixed *params); 543 GL_API void GL_APIENTRY glGetTexParameterxvOES (GLenum target, GLenum pname, GLfixed *params); 544 GL_API void GL_APIENTRY glLightModelxOES (GLenum pname, GLfixed param); 545 GL_API void GL_APIENTRY glLightModelxvOES (GLenum pname, const GLfixed *params); 546 GL_API void GL_APIENTRY glLightxOES (GLenum light, GLenum pname, GLfixed param); 547 GL_API void GL_APIENTRY glLightxvOES (GLenum light, GLenum pname, const GLfixed *params); 548 GL_API void GL_APIENTRY glLineWidthxOES (GLfixed width); 549 GL_API void GL_APIENTRY glLoadMatrixxOES (const GLfixed *m); 550 GL_API void GL_APIENTRY glMaterialxOES (GLenum face, GLenum pname, GLfixed param); 551 GL_API void GL_APIENTRY glMaterialxvOES (GLenum face, GLenum pname, const GLfixed *params); 552 GL_API void GL_APIENTRY glMultMatrixxOES (const GLfixed *m); 553 GL_API void GL_APIENTRY glMultiTexCoord4xOES (GLenum target, GLfixed s, GLfixed t, GLfixed r, GLfixed q); 554 GL_API void GL_APIENTRY glNormal3xOES (GLfixed nx, GLfixed ny, GLfixed nz); 555 GL_API void GL_APIENTRY glOrthoxOES (GLfixed left, GLfixed right, GLfixed bottom, GLfixed top, GLfixed zNear, GLfixed zFar); 556 GL_API void GL_APIENTRY glPointParameterxOES (GLenum pname, GLfixed param); 557 GL_API void GL_APIENTRY glPointParameterxvOES (GLenum pname, const GLfixed *params); 558 GL_API void GL_APIENTRY glPointSizexOES (GLfixed size); 559 GL_API void GL_APIENTRY glPolygonOffsetxOES (GLfixed factor, GLfixed units); 560 GL_API void GL_APIENTRY glRotatexOES (GLfixed angle, GLfixed x, GLfixed y, GLfixed z); 561 GL_API void GL_APIENTRY glSampleCoveragexOES (GLclampx value, GLboolean invert); 562 GL_API void GL_APIENTRY glScalexOES (GLfixed x, GLfixed y, GLfixed z); 563 GL_API void GL_APIENTRY glTexEnvxOES (GLenum target, GLenum pname, GLfixed param); 564 GL_API void GL_APIENTRY glTexEnvxvOES (GLenum target, GLenum pname, const GLfixed *params); 565 GL_API void GL_APIENTRY glTexParameterxOES (GLenum target, GLenum pname, GLfixed param); 566 GL_API void GL_APIENTRY glTexParameterxvOES (GLenum target, GLenum pname, const GLfixed *params); 567 GL_API void GL_APIENTRY glTranslatexOES (GLfixed x, GLfixed y, GLfixed z); 568 #endif 569 typedef void (GL_APIENTRYP PFNGLALPHAFUNCXOESPROC) (GLenum func, GLclampx ref); 570 typedef void (GL_APIENTRYP PFNGLCLEARCOLORXOESPROC) (GLclampx red, GLclampx green, GLclampx blue, GLclampx alpha); 571 typedef void (GL_APIENTRYP PFNGLCLEARDEPTHXOESPROC) (GLclampx depth); 572 typedef void (GL_APIENTRYP PFNGLCLIPPLANEXOESPROC) (GLenum plane, const GLfixed *equation); 573 typedef void (GL_APIENTRYP PFNGLCOLOR4XOESPROC) (GLfixed red, GLfixed green, GLfixed blue, GLfixed alpha); 574 typedef void (GL_APIENTRYP PFNGLDEPTHRANGEXOESPROC) (GLclampx zNear, GLclampx zFar); 575 typedef void (GL_APIENTRYP PFNGLFOGXOESPROC) (GLenum pname, GLfixed param); 576 typedef void (GL_APIENTRYP PFNGLFOGXVOESPROC) (GLenum pname, const GLfixed *params); 577 typedef void (GL_APIENTRYP PFNGLFRUSTUMXOESPROC) (GLfixed left, GLfixed right, GLfixed bottom, GLfixed top, GLfixed zNear, GLfixed zFar); 578 typedef void (GL_APIENTRYP PFNGLGETCLIPPLANEXOESPROC) (GLenum pname, GLfixed eqn[4]); 579 typedef void (GL_APIENTRYP PFNGLGETFIXEDVOESPROC) (GLenum pname, GLfixed *params); 580 typedef void (GL_APIENTRYP PFNGLGETLIGHTXVOESPROC) (GLenum light, GLenum pname, GLfixed *params); 581 typedef void (GL_APIENTRYP PFNGLGETMATERIALXVOESPROC) (GLenum face, GLenum pname, GLfixed *params); 582 typedef void (GL_APIENTRYP PFNGLGETTEXENVXVOESPROC) (GLenum env, GLenum pname, GLfixed *params); 583 typedef void (GL_APIENTRYP PFNGLGETTEXPARAMETERXVOESPROC) (GLenum target, GLenum pname, GLfixed *params); 584 typedef void (GL_APIENTRYP PFNGLLIGHTMODELXOESPROC) (GLenum pname, GLfixed param); 585 typedef void (GL_APIENTRYP PFNGLLIGHTMODELXVOESPROC) (GLenum pname, const GLfixed *params); 586 typedef void (GL_APIENTRYP PFNGLLIGHTXOESPROC) (GLenum light, GLenum pname, GLfixed param); 587 typedef void (GL_APIENTRYP PFNGLLIGHTXVOESPROC) (GLenum light, GLenum pname, const GLfixed *params); 588 typedef void (GL_APIENTRYP PFNGLLINEWIDTHXOESPROC) (GLfixed width); 589 typedef void (GL_APIENTRYP PFNGLLOADMATRIXXOESPROC) (const GLfixed *m); 590 typedef void (GL_APIENTRYP PFNGLMATERIALXOESPROC) (GLenum face, GLenum pname, GLfixed param); 591 typedef void (GL_APIENTRYP PFNGLMATERIALXVOESPROC) (GLenum face, GLenum pname, const GLfixed *params); 592 typedef void (GL_APIENTRYP PFNGLMULTMATRIXXOESPROC) (const GLfixed *m); 593 typedef void (GL_APIENTRYP PFNGLMULTITEXCOORD4XOESPROC) (GLenum target, GLfixed s, GLfixed t, GLfixed r, GLfixed q); 594 typedef void (GL_APIENTRYP PFNGLNORMAL3XOESPROC) (GLfixed nx, GLfixed ny, GLfixed nz); 595 typedef void (GL_APIENTRYP PFNGLORTHOXOESPROC) (GLfixed left, GLfixed right, GLfixed bottom, GLfixed top, GLfixed zNear, GLfixed zFar); 596 typedef void (GL_APIENTRYP PFNGLPOINTPARAMETERXOESPROC) (GLenum pname, GLfixed param); 597 typedef void (GL_APIENTRYP PFNGLPOINTPARAMETERXVOESPROC) (GLenum pname, const GLfixed *params); 598 typedef void (GL_APIENTRYP PFNGLPOINTSIZEXOESPROC) (GLfixed size); 599 typedef void (GL_APIENTRYP PFNGLPOLYGONOFFSETXOESPROC) (GLfixed factor, GLfixed units); 600 typedef void (GL_APIENTRYP PFNGLROTATEXOESPROC) (GLfixed angle, GLfixed x, GLfixed y, GLfixed z); 601 typedef void (GL_APIENTRYP PFNGLSAMPLECOVERAGEXOESPROC) (GLclampx value, GLboolean invert); 602 typedef void (GL_APIENTRYP PFNGLSCALEXOESPROC) (GLfixed x, GLfixed y, GLfixed z); 603 typedef void (GL_APIENTRYP PFNGLTEXENVXOESPROC) (GLenum target, GLenum pname, GLfixed param); 604 typedef void (GL_APIENTRYP PFNGLTEXENVXVOESPROC) (GLenum target, GLenum pname, const GLfixed *params); 605 typedef void (GL_APIENTRYP PFNGLTEXPARAMETERXOESPROC) (GLenum target, GLenum pname, GLfixed param); 606 typedef void (GL_APIENTRYP PFNGLTEXPARAMETERXVOESPROC) (GLenum target, GLenum pname, const GLfixed *params); 607 typedef void (GL_APIENTRYP PFNGLTRANSLATEXOESPROC) (GLfixed x, GLfixed y, GLfixed z); 608 #endif 609 610 /* GL_OES_framebuffer_object */ 611 #ifndef GL_OES_framebuffer_object 612 #define GL_OES_framebuffer_object 1 613 #ifdef GL_GLEXT_PROTOTYPES 614 GL_API GLboolean GL_APIENTRY glIsRenderbufferOES (GLuint renderbuffer); 615 GL_API void GL_APIENTRY glBindRenderbufferOES (GLenum target, GLuint renderbuffer); 616 GL_API void GL_APIENTRY glDeleteRenderbuffersOES (GLsizei n, const GLuint* renderbuffers); 617 GL_API void GL_APIENTRY glGenRenderbuffersOES (GLsizei n, GLuint* renderbuffers); 618 GL_API void GL_APIENTRY glRenderbufferStorageOES (GLenum target, GLenum internalformat, GLsizei width, GLsizei height); 619 GL_API void GL_APIENTRY glGetRenderbufferParameterivOES (GLenum target, GLenum pname, GLint* params); 620 GL_API GLboolean GL_APIENTRY glIsFramebufferOES (GLuint framebuffer); 621 GL_API void GL_APIENTRY glBindFramebufferOES (GLenum target, GLuint framebuffer); 622 GL_API void GL_APIENTRY glDeleteFramebuffersOES (GLsizei n, const GLuint* framebuffers); 623 GL_API void GL_APIENTRY glGenFramebuffersOES (GLsizei n, GLuint* framebuffers); 624 GL_API GLenum GL_APIENTRY glCheckFramebufferStatusOES (GLenum target); 625 GL_API void GL_APIENTRY glFramebufferRenderbufferOES (GLenum target, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer); 626 GL_API void GL_APIENTRY glFramebufferTexture2DOES (GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level); 627 GL_API void GL_APIENTRY glGetFramebufferAttachmentParameterivOES (GLenum target, GLenum attachment, GLenum pname, GLint* params); 628 GL_API void GL_APIENTRY glGenerateMipmapOES (GLenum target); 629 #endif 630 typedef GLboolean (GL_APIENTRYP PFNGLISRENDERBUFFEROESPROC) (GLuint renderbuffer); 631 typedef void (GL_APIENTRYP PFNGLBINDRENDERBUFFEROESPROC) (GLenum target, GLuint renderbuffer); 632 typedef void (GL_APIENTRYP PFNGLDELETERENDERBUFFERSOESPROC) (GLsizei n, const GLuint* renderbuffers); 633 typedef void (GL_APIENTRYP PFNGLGENRENDERBUFFERSOESPROC) (GLsizei n, GLuint* renderbuffers); 634 typedef void (GL_APIENTRYP PFNGLRENDERBUFFERSTORAGEOESPROC) (GLenum target, GLenum internalformat, GLsizei width, GLsizei height); 635 typedef void (GL_APIENTRYP PFNGLGETRENDERBUFFERPARAMETERIVOESPROC) (GLenum target, GLenum pname, GLint* params); 636 typedef GLboolean (GL_APIENTRYP PFNGLISFRAMEBUFFEROESPROC) (GLuint framebuffer); 637 typedef void (GL_APIENTRYP PFNGLBINDFRAMEBUFFEROESPROC) (GLenum target, GLuint framebuffer); 638 typedef void (GL_APIENTRYP PFNGLDELETEFRAMEBUFFERSOESPROC) (GLsizei n, const GLuint* framebuffers); 639 typedef void (GL_APIENTRYP PFNGLGENFRAMEBUFFERSOESPROC) (GLsizei n, GLuint* framebuffers); 640 typedef GLenum (GL_APIENTRYP PFNGLCHECKFRAMEBUFFERSTATUSOESPROC) (GLenum target); 641 typedef void (GL_APIENTRYP PFNGLFRAMEBUFFERRENDERBUFFEROESPROC) (GLenum target, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer); 642 typedef void (GL_APIENTRYP PFNGLFRAMEBUFFERTEXTURE2DOESPROC) (GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level); 643 typedef void (GL_APIENTRYP PFNGLGETFRAMEBUFFERATTACHMENTPARAMETERIVOESPROC) (GLenum target, GLenum attachment, GLenum pname, GLint* params); 644 typedef void (GL_APIENTRYP PFNGLGENERATEMIPMAPOESPROC) (GLenum target); 645 #endif 646 647 /* GL_OES_mapbuffer */ 648 #ifndef GL_OES_mapbuffer 649 #define GL_OES_mapbuffer 1 650 #ifdef GL_GLEXT_PROTOTYPES 651 GL_API void* GL_APIENTRY glMapBufferOES (GLenum target, GLenum access); 652 GL_API GLboolean GL_APIENTRY glUnmapBufferOES (GLenum target); 653 GL_API void GL_APIENTRY glGetBufferPointervOES (GLenum target, GLenum pname, GLvoid ** params); 654 #endif 655 typedef void* (GL_APIENTRYP PFNGLMAPBUFFEROESPROC) (GLenum target, GLenum access); 656 typedef GLboolean (GL_APIENTRYP PFNGLUNMAPBUFFEROESPROC) (GLenum target); 657 typedef void (GL_APIENTRYP PFNGLGETBUFFERPOINTERVOESPROC) (GLenum target, GLenum pname, GLvoid ** params); 658 #endif 659 660 /* GL_OES_matrix_get */ 661 #ifndef GL_OES_matrix_get 662 #define GL_OES_matrix_get 1 663 #endif 664 665 /* GL_OES_matrix_palette */ 666 #ifndef GL_OES_matrix_palette 667 #define GL_OES_matrix_palette 1 668 #ifdef GL_GLEXT_PROTOTYPES 669 GL_API void GL_APIENTRY glCurrentPaletteMatrixOES (GLuint matrixpaletteindex); 670 GL_API void GL_APIENTRY glLoadPaletteFromModelViewMatrixOES (void); 671 GL_API void GL_APIENTRY glMatrixIndexPointerOES (GLint size, GLenum type, GLsizei stride, const GLvoid *pointer); 672 GL_API void GL_APIENTRY glWeightPointerOES (GLint size, GLenum type, GLsizei stride, const GLvoid *pointer); 673 #endif 674 typedef void (GL_APIENTRYP PFNGLCURRENTPALETTEMATRIXOESPROC) (GLuint matrixpaletteindex); 675 typedef void (GL_APIENTRYP PFNGLLOADPALETTEFROMMODELVIEWMATRIXOESPROC) (void); 676 typedef void (GL_APIENTRYP PFNGLMATRIXINDEXPOINTEROESPROC) (GLint size, GLenum type, GLsizei stride, const GLvoid *pointer); 677 typedef void (GL_APIENTRYP PFNGLWEIGHTPOINTEROESPROC) (GLint size, GLenum type, GLsizei stride, const GLvoid *pointer); 678 #endif 679 680 /* GL_OES_packed_depth_stencil */ 681 #ifndef GL_OES_packed_depth_stencil 682 #define GL_OES_packed_depth_stencil 1 683 #endif 684 685 /* GL_OES_query_matrix */ 686 #ifndef GL_OES_query_matrix 687 #define GL_OES_query_matrix 1 688 #ifdef GL_GLEXT_PROTOTYPES 689 GL_API GLbitfield GL_APIENTRY glQueryMatrixxOES (GLfixed mantissa[16], GLint exponent[16]); 690 #endif 691 typedef GLbitfield (GL_APIENTRYP PFNGLQUERYMATRIXXOESPROC) (GLfixed mantissa[16], GLint exponent[16]); 692 #endif 693 694 /* GL_OES_rgb8_rgba8 */ 695 #ifndef GL_OES_rgb8_rgba8 696 #define GL_OES_rgb8_rgba8 1 697 #endif 698 699 /* GL_OES_single_precision */ 700 #ifndef GL_OES_single_precision 701 #define GL_OES_single_precision 1 702 #ifdef GL_GLEXT_PROTOTYPES 703 GL_API void GL_APIENTRY glDepthRangefOES (GLclampf zNear, GLclampf zFar); 704 GL_API void GL_APIENTRY glFrustumfOES (GLfloat left, GLfloat right, GLfloat bottom, GLfloat top, GLfloat zNear, GLfloat zFar); 705 GL_API void GL_APIENTRY glOrthofOES (GLfloat left, GLfloat right, GLfloat bottom, GLfloat top, GLfloat zNear, GLfloat zFar); 706 GL_API void GL_APIENTRY glClipPlanefOES (GLenum plane, const GLfloat *equation); 707 GL_API void GL_APIENTRY glGetClipPlanefOES (GLenum pname, GLfloat eqn[4]); 708 GL_API void GL_APIENTRY glClearDepthfOES (GLclampf depth); 709 #endif 710 typedef void (GL_APIENTRYP PFNGLDEPTHRANGEFOESPROC) (GLclampf zNear, GLclampf zFar); 711 typedef void (GL_APIENTRYP PFNGLFRUSTUMFOESPROC) (GLfloat left, GLfloat right, GLfloat bottom, GLfloat top, GLfloat zNear, GLfloat zFar); 712 typedef void (GL_APIENTRYP PFNGLORTHOFOESPROC) (GLfloat left, GLfloat right, GLfloat bottom, GLfloat top, GLfloat zNear, GLfloat zFar); 713 typedef void (GL_APIENTRYP PFNGLCLIPPLANEFOESPROC) (GLenum plane, const GLfloat *equation); 714 typedef void (GL_APIENTRYP PFNGLGETCLIPPLANEFOESPROC) (GLenum pname, GLfloat eqn[4]); 715 typedef void (GL_APIENTRYP PFNGLCLEARDEPTHFOESPROC) (GLclampf depth); 716 #endif 717 718 /* GL_OES_stencil1 */ 719 #ifndef GL_OES_stencil1 720 #define GL_OES_stencil1 1 721 #endif 722 723 /* GL_OES_stencil4 */ 724 #ifndef GL_OES_stencil4 725 #define GL_OES_stencil4 1 726 #endif 727 728 /* GL_OES_stencil8 */ 729 #ifndef GL_OES_stencil8 730 #define GL_OES_stencil8 1 731 #endif 732 733 /* GL_OES_stencil_wrap */ 734 #ifndef GL_OES_stencil_wrap 735 #define GL_OES_stencil_wrap 1 736 #endif 737 738 /* GL_OES_texture_cube_map */ 739 #ifndef GL_OES_texture_cube_map 740 #define GL_OES_texture_cube_map 1 741 #ifdef GL_GLEXT_PROTOTYPES 742 GL_API void GL_APIENTRY glTexGenfOES (GLenum coord, GLenum pname, GLfloat param); 743 GL_API void GL_APIENTRY glTexGenfvOES (GLenum coord, GLenum pname, const GLfloat *params); 744 GL_API void GL_APIENTRY glTexGeniOES (GLenum coord, GLenum pname, GLint param); 745 GL_API void GL_APIENTRY glTexGenivOES (GLenum coord, GLenum pname, const GLint *params); 746 GL_API void GL_APIENTRY glTexGenxOES (GLenum coord, GLenum pname, GLfixed param); 747 GL_API void GL_APIENTRY glTexGenxvOES (GLenum coord, GLenum pname, const GLfixed *params); 748 GL_API void GL_APIENTRY glGetTexGenfvOES (GLenum coord, GLenum pname, GLfloat *params); 749 GL_API void GL_APIENTRY glGetTexGenivOES (GLenum coord, GLenum pname, GLint *params); 750 GL_API void GL_APIENTRY glGetTexGenxvOES (GLenum coord, GLenum pname, GLfixed *params); 751 #endif 752 typedef void (GL_APIENTRYP PFNGLTEXGENFOESPROC) (GLenum coord, GLenum pname, GLfloat param); 753 typedef void (GL_APIENTRYP PFNGLTEXGENFVOESPROC) (GLenum coord, GLenum pname, const GLfloat *params); 754 typedef void (GL_APIENTRYP PFNGLTEXGENIOESPROC) (GLenum coord, GLenum pname, GLint param); 755 typedef void (GL_APIENTRYP PFNGLTEXGENIVOESPROC) (GLenum coord, GLenum pname, const GLint *params); 756 typedef void (GL_APIENTRYP PFNGLTEXGENXOESPROC) (GLenum coord, GLenum pname, GLfixed param); 757 typedef void (GL_APIENTRYP PFNGLTEXGENXVOESPROC) (GLenum coord, GLenum pname, const GLfixed *params); 758 typedef void (GL_APIENTRYP PFNGLGETTEXGENFVOESPROC) (GLenum coord, GLenum pname, GLfloat *params); 759 typedef void (GL_APIENTRYP PFNGLGETTEXGENIVOESPROC) (GLenum coord, GLenum pname, GLint *params); 760 typedef void (GL_APIENTRYP PFNGLGETTEXGENXVOESPROC) (GLenum coord, GLenum pname, GLfixed *params); 761 #endif 762 763 /* GL_OES_texture_env_crossbar */ 764 #ifndef GL_OES_texture_env_crossbar 765 #define GL_OES_texture_env_crossbar 1 766 #endif 767 768 /* GL_OES_texture_mirrored_repeat */ 769 #ifndef GL_OES_texture_mirrored_repeat 770 #define GL_OES_texture_mirrored_repeat 1 771 #endif 772 773 /* GL_OES_vertex_array_object */ 774 #ifndef GL_OES_vertex_array_object 775 #define GL_OES_vertex_array_object 1 776 #ifdef GL_GLEXT_PROTOTYPES 777 GL_API void GL_APIENTRY glBindVertexArrayOES (GLuint array); 778 GL_API void GL_APIENTRY glDeleteVertexArraysOES (GLsizei n, const GLuint *arrays); 779 GL_API void GL_APIENTRY glGenVertexArraysOES (GLsizei n, GLuint *arrays); 780 GL_API GLboolean GL_APIENTRY glIsVertexArrayOES (GLuint array); 781 #endif 782 typedef void (GL_APIENTRYP PFNGLBINDVERTEXARRAYOESPROC) (GLuint array); 783 typedef void (GL_APIENTRYP PFNGLDELETEVERTEXARRAYSOESPROC) (GLsizei n, const GLuint *arrays); 784 typedef void (GL_APIENTRYP PFNGLGENVERTEXARRAYSOESPROC) (GLsizei n, GLuint *arrays); 785 typedef GLboolean (GL_APIENTRYP PFNGLISVERTEXARRAYOESPROC) (GLuint array); 786 #endif 787 788 /* GL_OES_EGL_image_external */ 789 #ifndef GL_OES_EGL_image_external 790 #define GL_OES_EGL_image_external 1 791 #endif 792 793 /*------------------------------------------------------------------------* 794 * AMD extension functions 795 *------------------------------------------------------------------------*/ 796 797 /* GL_AMD_compressed_3DC_texture */ 798 #ifndef GL_AMD_compressed_3DC_texture 799 #define GL_AMD_compressed_3DC_texture 1 800 #endif 801 802 /* GL_AMD_compressed_ATC_texture */ 803 #ifndef GL_AMD_compressed_ATC_texture 804 #define GL_AMD_compressed_ATC_texture 1 805 #endif 806 807 /*------------------------------------------------------------------------* 808 * APPLE extension functions 809 *------------------------------------------------------------------------*/ 810 811 /* GL_APPLE_texture_2D_limited_npot */ 812 #ifndef GL_APPLE_texture_2D_limited_npot 813 #define GL_APPLE_texture_2D_limited_npot 1 814 #endif 815 816 /*------------------------------------------------------------------------* 817 * EXT extension functions 818 *------------------------------------------------------------------------*/ 819 820 /* GL_EXT_blend_minmax */ 821 #ifndef GL_EXT_blend_minmax 822 #define GL_EXT_blend_minmax 1 823 #endif 824 825 /* GL_EXT_discard_framebuffer */ 826 #ifndef GL_EXT_discard_framebuffer 827 #define GL_EXT_discard_framebuffer 1 828 #ifdef GL_GLEXT_PROTOTYPES 829 GL_API void GL_APIENTRY glDiscardFramebufferEXT (GLenum target, GLsizei numAttachments, const GLenum *attachments); 830 #endif 831 typedef void (GL_APIENTRYP PFNGLDISCARDFRAMEBUFFEREXTPROC) (GLenum target, GLsizei numAttachments, const GLenum *attachments); 832 #endif 833 834 /* GL_EXT_multi_draw_arrays */ 835 #ifndef GL_EXT_multi_draw_arrays 836 #define GL_EXT_multi_draw_arrays 1 837 #ifdef GL_GLEXT_PROTOTYPES 838 GL_API void GL_APIENTRY glMultiDrawArraysEXT (GLenum mode, GLint *first, GLsizei *count, GLsizei primcount); 839 GL_API void GL_APIENTRY glMultiDrawElementsEXT (GLenum mode, const GLsizei *count, GLenum type, const GLvoid* *indices, GLsizei primcount); 840 #endif /* GL_GLEXT_PROTOTYPES */ 841 typedef void (GL_APIENTRYP PFNGLMULTIDRAWARRAYSEXTPROC) (GLenum mode, GLint *first, GLsizei *count, GLsizei primcount); 842 typedef void (GL_APIENTRYP PFNGLMULTIDRAWELEMENTSEXTPROC) (GLenum mode, const GLsizei *count, GLenum type, const GLvoid* *indices, GLsizei primcount); 843 #endif 844 845 /* GL_EXT_read_format_bgra */ 846 #ifndef GL_EXT_read_format_bgra 847 #define GL_EXT_read_format_bgra 1 848 #endif 849 850 /* GL_EXT_texture_filter_anisotropic */ 851 #ifndef GL_EXT_texture_filter_anisotropic 852 #define GL_EXT_texture_filter_anisotropic 1 853 #endif 854 855 /* GL_EXT_texture_format_BGRA8888 */ 856 #ifndef GL_EXT_texture_format_BGRA8888 857 #define GL_EXT_texture_format_BGRA8888 1 858 #endif 859 860 /* GL_EXT_texture_lod_bias */ 861 #ifndef GL_EXT_texture_lod_bias 862 #define GL_EXT_texture_lod_bias 1 863 #endif 864 865 /*------------------------------------------------------------------------* 866 * IMG extension functions 867 *------------------------------------------------------------------------*/ 868 869 /* GL_IMG_read_format */ 870 #ifndef GL_IMG_read_format 871 #define GL_IMG_read_format 1 872 #endif 873 874 /* GL_IMG_texture_compression_pvrtc */ 875 #ifndef GL_IMG_texture_compression_pvrtc 876 #define GL_IMG_texture_compression_pvrtc 1 877 #endif 878 879 /* GL_IMG_texture_env_enhanced_fixed_function */ 880 #ifndef GL_IMG_texture_env_enhanced_fixed_function 881 #define GL_IMG_texture_env_enhanced_fixed_function 1 882 #endif 883 884 /* GL_IMG_user_clip_plane */ 885 #ifndef GL_IMG_user_clip_plane 886 #define GL_IMG_user_clip_plane 1 887 #ifdef GL_GLEXT_PROTOTYPES 888 GL_API void GL_APIENTRY glClipPlanefIMG (GLenum p, const GLfloat *eqn); 889 GL_API void GL_APIENTRY glClipPlanexIMG (GLenum p, const GLfixed *eqn); 890 #endif 891 typedef void (GL_APIENTRYP PFNGLCLIPPLANEFIMGPROC) (GLenum p, const GLfloat *eqn); 892 typedef void (GL_APIENTRYP PFNGLCLIPPLANEXIMGPROC) (GLenum p, const GLfixed *eqn); 893 #endif 894 895 /* GL_IMG_multisampled_render_to_texture */ 896 #ifndef GL_IMG_multisampled_render_to_texture 897 #define GL_IMG_multisampled_render_to_texture 1 898 #ifdef GL_GLEXT_PROTOTYPES 899 GL_API void GL_APIENTRY glRenderbufferStorageMultisampleIMG (GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height); 900 GL_API void GL_APIENTRY glFramebufferTexture2DMultisampleIMG (GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLsizei samples); 901 #endif 902 typedef void (GL_APIENTRYP PFNGLRENDERBUFFERSTORAGEMULTISAMPLEIMG) (GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height); 903 typedef void (GL_APIENTRYP PFNGLFRAMEBUFFERTEXTURE2DMULTISAMPLEIMG) (GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLsizei samples); 904 #endif 905 906 /*------------------------------------------------------------------------* 907 * NV extension functions 908 *------------------------------------------------------------------------*/ 909 910 /* NV_fence */ 911 #ifndef GL_NV_fence 912 #define GL_NV_fence 1 913 #ifdef GL_GLEXT_PROTOTYPES 914 GL_API void GL_APIENTRY glDeleteFencesNV (GLsizei n, const GLuint *fences); 915 GL_API void GL_APIENTRY glGenFencesNV (GLsizei n, GLuint *fences); 916 GL_API GLboolean GL_APIENTRY glIsFenceNV (GLuint fence); 917 GL_API GLboolean GL_APIENTRY glTestFenceNV (GLuint fence); 918 GL_API void GL_APIENTRY glGetFenceivNV (GLuint fence, GLenum pname, GLint *params); 919 GL_API void GL_APIENTRY glFinishFenceNV (GLuint fence); 920 GL_API void GL_APIENTRY glSetFenceNV (GLuint fence, GLenum condition); 921 #endif 922 typedef void (GL_APIENTRYP PFNGLDELETEFENCESNVPROC) (GLsizei n, const GLuint *fences); 923 typedef void (GL_APIENTRYP PFNGLGENFENCESNVPROC) (GLsizei n, GLuint *fences); 924 typedef GLboolean (GL_APIENTRYP PFNGLISFENCENVPROC) (GLuint fence); 925 typedef GLboolean (GL_APIENTRYP PFNGLTESTFENCENVPROC) (GLuint fence); 926 typedef void (GL_APIENTRYP PFNGLGETFENCEIVNVPROC) (GLuint fence, GLenum pname, GLint *params); 927 typedef void (GL_APIENTRYP PFNGLFINISHFENCENVPROC) (GLuint fence); 928 typedef void (GL_APIENTRYP PFNGLSETFENCENVPROC) (GLuint fence, GLenum condition); 929 #endif 930 931 /*------------------------------------------------------------------------* 932 * QCOM extension functions 933 *------------------------------------------------------------------------*/ 934 935 /* GL_QCOM_driver_control */ 936 #ifndef GL_QCOM_driver_control 937 #define GL_QCOM_driver_control 1 938 #ifdef GL_GLEXT_PROTOTYPES 939 GL_API void GL_APIENTRY glGetDriverControlsQCOM (GLint *num, GLsizei size, GLuint *driverControls); 940 GL_API void GL_APIENTRY glGetDriverControlStringQCOM (GLuint driverControl, GLsizei bufSize, GLsizei *length, GLchar *driverControlString); 941 GL_API void GL_APIENTRY glEnableDriverControlQCOM (GLuint driverControl); 942 GL_API void GL_APIENTRY glDisableDriverControlQCOM (GLuint driverControl); 943 #endif 944 typedef void (GL_APIENTRYP PFNGLGETDRIVERCONTROLSQCOMPROC) (GLint *num, GLsizei size, GLuint *driverControls); 945 typedef void (GL_APIENTRYP PFNGLGETDRIVERCONTROLSTRINGQCOMPROC) (GLuint driverControl, GLsizei bufSize, GLsizei *length, GLchar *driverControlString); 946 typedef void (GL_APIENTRYP PFNGLENABLEDRIVERCONTROLQCOMPROC) (GLuint driverControl); 947 typedef void (GL_APIENTRYP PFNGLDISABLEDRIVERCONTROLQCOMPROC) (GLuint driverControl); 948 #endif 949 950 /* GL_QCOM_extended_get */ 951 #ifndef GL_QCOM_extended_get 952 #define GL_QCOM_extended_get 1 953 #ifdef GL_GLEXT_PROTOTYPES 954 GL_API void GL_APIENTRY glExtGetTexturesQCOM (GLuint *textures, GLint maxTextures, GLint *numTextures); 955 GL_API void GL_APIENTRY glExtGetBuffersQCOM (GLuint *buffers, GLint maxBuffers, GLint *numBuffers); 956 GL_API void GL_APIENTRY glExtGetRenderbuffersQCOM (GLuint *renderbuffers, GLint maxRenderbuffers, GLint *numRenderbuffers); 957 GL_API void GL_APIENTRY glExtGetFramebuffersQCOM (GLuint *framebuffers, GLint maxFramebuffers, GLint *numFramebuffers); 958 GL_API void GL_APIENTRY glExtGetTexLevelParameterivQCOM (GLuint texture, GLenum face, GLint level, GLenum pname, GLint *params); 959 GL_API void GL_APIENTRY glExtTexObjectStateOverrideiQCOM (GLenum target, GLenum pname, GLint param); 960 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); 961 GL_API void GL_APIENTRY glExtGetBufferPointervQCOM (GLenum target, GLvoid **params); 962 #endif 963 typedef void (GL_APIENTRYP PFNGLEXTGETTEXTURESQCOMPROC) (GLuint *textures, GLint maxTextures, GLint *numTextures); 964 typedef void (GL_APIENTRYP PFNGLEXTGETBUFFERSQCOMPROC) (GLuint *buffers, GLint maxBuffers, GLint *numBuffers); 965 typedef void (GL_APIENTRYP PFNGLEXTGETRENDERBUFFERSQCOMPROC) (GLuint *renderbuffers, GLint maxRenderbuffers, GLint *numRenderbuffers); 966 typedef void (GL_APIENTRYP PFNGLEXTGETFRAMEBUFFERSQCOMPROC) (GLuint *framebuffers, GLint maxFramebuffers, GLint *numFramebuffers); 967 typedef void (GL_APIENTRYP PFNGLEXTGETTEXLEVELPARAMETERIVQCOMPROC) (GLuint texture, GLenum face, GLint level, GLenum pname, GLint *params); 968 typedef void (GL_APIENTRYP PFNGLEXTTEXOBJECTSTATEOVERRIDEIQCOMPROC) (GLenum target, GLenum pname, GLint param); 969 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); 970 typedef void (GL_APIENTRYP PFNGLEXTGETBUFFERPOINTERVQCOMPROC) (GLenum target, GLvoid **params); 971 #endif 972 973 /* GL_QCOM_extended_get2 */ 974 #ifndef GL_QCOM_extended_get2 975 #define GL_QCOM_extended_get2 1 976 #ifdef GL_GLEXT_PROTOTYPES 977 GL_API void GL_APIENTRY glExtGetShadersQCOM (GLuint *shaders, GLint maxShaders, GLint *numShaders); 978 GL_API void GL_APIENTRY glExtGetProgramsQCOM (GLuint *programs, GLint maxPrograms, GLint *numPrograms); 979 GL_API GLboolean GL_APIENTRY glExtIsProgramBinaryQCOM (GLuint program); 980 GL_API void GL_APIENTRY glExtGetProgramBinarySourceQCOM (GLuint program, GLenum shadertype, GLchar *source, GLint *length); 981 #endif 982 typedef void (GL_APIENTRYP PFNGLEXTGETSHADERSQCOMPROC) (GLuint *shaders, GLint maxShaders, GLint *numShaders); 983 typedef void (GL_APIENTRYP PFNGLEXTGETPROGRAMSQCOMPROC) (GLuint *programs, GLint maxPrograms, GLint *numPrograms); 984 typedef GLboolean (GL_APIENTRYP PFNGLEXTISPROGRAMBINARYQCOMPROC) (GLuint program); 985 typedef void (GL_APIENTRYP PFNGLEXTGETPROGRAMBINARYSOURCEQCOMPROC) (GLuint program, GLenum shadertype, GLchar *source, GLint *length); 986 #endif 987 988 /* GL_QCOM_perfmon_global_mode */ 989 #ifndef GL_QCOM_perfmon_global_mode 990 #define GL_QCOM_perfmon_global_mode 1 991 #endif 992 993 /* GL_QCOM_writeonly_rendering */ 994 #ifndef GL_QCOM_writeonly_rendering 995 #define GL_QCOM_writeonly_rendering 1 996 #endif 997 998 /* GL_QCOM_tiled_rendering */ 999 #ifndef GL_QCOM_tiled_rendering 1000 #define GL_QCOM_tiled_rendering 1 1001 #ifdef GL_GLEXT_PROTOTYPES 1002 GL_API void GL_APIENTRY glStartTilingQCOM (GLuint x, GLuint y, GLuint width, GLuint height, GLbitfield preserveMask); 1003 GL_API void GL_APIENTRY glEndTilingQCOM (GLbitfield preserveMask); 1004 #endif 1005 typedef void (GL_APIENTRYP PFNGLSTARTTILINGQCOMPROC) (GLuint x, GLuint y, GLuint width, GLuint height, GLbitfield preserveMask); 1006 typedef void (GL_APIENTRYP PFNGLENDTILINGQCOMPROC) (GLbitfield preserveMask); 1007 #endif 1008 1009 #ifdef __cplusplus 1010 } 1011 #endif 1012 1013 #endif /* __glext_h_ */ 1014 1015