Home | History | Annotate | Download | only in GLES
      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 #endif
    377 
    378 /* GL_EXT_texture_compression_dxt1 */
    379 #ifndef GL_EXT_texture_compression_dxt1
    380 #define GL_COMPRESSED_RGB_S3TC_DXT1_EXT                         0x83F0
    381 #define GL_COMPRESSED_RGBA_S3TC_DXT1_EXT                        0x83F1
    382 #endif
    383 
    384 /* GL_EXT_texture_filter_anisotropic */
    385 #ifndef GL_EXT_texture_filter_anisotropic
    386 #define GL_TEXTURE_MAX_ANISOTROPY_EXT                           0x84FE
    387 #define GL_MAX_TEXTURE_MAX_ANISOTROPY_EXT                       0x84FF
    388 #endif
    389 
    390 /* GL_EXT_texture_format_BGRA8888 */
    391 #ifndef GL_EXT_texture_format_BGRA8888
    392 #define GL_BGRA_EXT                                             0x80E1
    393 #endif
    394 
    395 /* GL_EXT_texture_lod_bias */
    396 #ifndef GL_EXT_texture_lod_bias
    397 #define GL_MAX_TEXTURE_LOD_BIAS_EXT                             0x84FD
    398 #define GL_TEXTURE_FILTER_CONTROL_EXT                           0x8500
    399 #define GL_TEXTURE_LOD_BIAS_EXT                                 0x8501
    400 #endif
    401 
    402 /* GL_EXT_texture_storage */
    403 #ifndef GL_EXT_texture_storage
    404 #define GL_TEXTURE_IMMUTABLE_FORMAT_EXT                         0x912F
    405 #define GL_ALPHA8_EXT                                           0x803C
    406 #define GL_LUMINANCE8_EXT                                       0x8040
    407 #define GL_LUMINANCE8_ALPHA8_EXT                                0x8045
    408 #define GL_RGBA32F_EXT                                          0x8814
    409 #define GL_RGB32F_EXT                                           0x8815
    410 #define GL_ALPHA32F_EXT                                         0x8816
    411 #define GL_LUMINANCE32F_EXT                                     0x8818
    412 #define GL_LUMINANCE_ALPHA32F_EXT                               0x8819
    413 /* reuse GL_RGBA16F_EXT */
    414 #define GL_RGB16F_EXT                                           0x881B
    415 #define GL_ALPHA16F_EXT                                         0x881C
    416 #define GL_LUMINANCE16F_EXT                                     0x881E
    417 #define GL_LUMINANCE_ALPHA16F_EXT                               0x881F
    418 #define GL_RGB10_A2_EXT                                         0x8059
    419 #define GL_RGB10_EXT                                            0x8052
    420 #define GL_BGRA8_EXT                                            0x93A1
    421 #endif
    422 
    423 /*------------------------------------------------------------------------*
    424  * IMG extension tokens
    425  *------------------------------------------------------------------------*/
    426 
    427 /* GL_IMG_read_format */
    428 #ifndef GL_IMG_read_format
    429 #define GL_BGRA_IMG                                             0x80E1
    430 #define GL_UNSIGNED_SHORT_4_4_4_4_REV_IMG                       0x8365
    431 #endif
    432 
    433 /* GL_IMG_texture_compression_pvrtc */
    434 #ifndef GL_IMG_texture_compression_pvrtc
    435 #define GL_COMPRESSED_RGB_PVRTC_4BPPV1_IMG                      0x8C00
    436 #define GL_COMPRESSED_RGB_PVRTC_2BPPV1_IMG                      0x8C01
    437 #define GL_COMPRESSED_RGBA_PVRTC_4BPPV1_IMG                     0x8C02
    438 #define GL_COMPRESSED_RGBA_PVRTC_2BPPV1_IMG                     0x8C03
    439 #endif
    440 
    441 /* GL_IMG_texture_env_enhanced_fixed_function */
    442 #ifndef GL_IMG_texture_env_enhanced_fixed_function
    443 #define GL_MODULATE_COLOR_IMG                                   0x8C04
    444 #define GL_RECIP_ADD_SIGNED_ALPHA_IMG                           0x8C05
    445 #define GL_TEXTURE_ALPHA_MODULATE_IMG                           0x8C06
    446 #define GL_FACTOR_ALPHA_MODULATE_IMG                            0x8C07
    447 #define GL_FRAGMENT_ALPHA_MODULATE_IMG                          0x8C08
    448 #define GL_ADD_BLEND_IMG                                        0x8C09
    449 #define GL_DOT3_RGBA_IMG                                        0x86AF
    450 #endif
    451 
    452 /* GL_IMG_user_clip_plane */
    453 #ifndef GL_IMG_user_clip_plane
    454 #define GL_CLIP_PLANE0_IMG                                      0x3000
    455 #define GL_CLIP_PLANE1_IMG                                      0x3001
    456 #define GL_CLIP_PLANE2_IMG                                      0x3002
    457 #define GL_CLIP_PLANE3_IMG                                      0x3003
    458 #define GL_CLIP_PLANE4_IMG                                      0x3004
    459 #define GL_CLIP_PLANE5_IMG                                      0x3005
    460 #define GL_MAX_CLIP_PLANES_IMG                                  0x0D32
    461 #endif
    462 
    463 /* GL_IMG_multisampled_render_to_texture */
    464 #ifndef GL_IMG_multisampled_render_to_texture
    465 #define GL_RENDERBUFFER_SAMPLES_IMG                             0x9133
    466 #define GL_FRAMEBUFFER_INCOMPLETE_MULTISAMPLE_IMG               0x9134
    467 #define GL_MAX_SAMPLES_IMG                                      0x9135
    468 #define GL_TEXTURE_SAMPLES_IMG                                  0x9136
    469 #endif
    470 
    471 /*------------------------------------------------------------------------*
    472  * NV extension tokens
    473  *------------------------------------------------------------------------*/
    474 
    475 /* GL_NV_fence */
    476 #ifndef GL_NV_fence
    477 #define GL_ALL_COMPLETED_NV                                     0x84F2
    478 #define GL_FENCE_STATUS_NV                                      0x84F3
    479 #define GL_FENCE_CONDITION_NV                                   0x84F4
    480 #endif
    481 
    482 /*------------------------------------------------------------------------*
    483  * QCOM extension tokens
    484  *------------------------------------------------------------------------*/
    485 
    486 /* GL_QCOM_driver_control */
    487 /* No new tokens introduced by this extension. */
    488 
    489 /* GL_QCOM_extended_get */
    490 #ifndef GL_QCOM_extended_get
    491 #define GL_TEXTURE_WIDTH_QCOM                                   0x8BD2
    492 #define GL_TEXTURE_HEIGHT_QCOM                                  0x8BD3
    493 #define GL_TEXTURE_DEPTH_QCOM                                   0x8BD4
    494 #define GL_TEXTURE_INTERNAL_FORMAT_QCOM                         0x8BD5
    495 #define GL_TEXTURE_FORMAT_QCOM                                  0x8BD6
    496 #define GL_TEXTURE_TYPE_QCOM                                    0x8BD7
    497 #define GL_TEXTURE_IMAGE_VALID_QCOM                             0x8BD8
    498 #define GL_TEXTURE_NUM_LEVELS_QCOM                              0x8BD9
    499 #define GL_TEXTURE_TARGET_QCOM                                  0x8BDA
    500 #define GL_TEXTURE_OBJECT_VALID_QCOM                            0x8BDB
    501 #define GL_STATE_RESTORE                                        0x8BDC
    502 #endif
    503 
    504 /* GL_QCOM_extended_get2 */
    505 /* No new tokens introduced by this extension. */
    506 
    507 /* GL_QCOM_perfmon_global_mode */
    508 #ifndef GL_QCOM_perfmon_global_mode
    509 #define GL_PERFMON_GLOBAL_MODE_QCOM                             0x8FA0
    510 #endif
    511 
    512 /* GL_QCOM_writeonly_rendering */
    513 #ifndef GL_QCOM_writeonly_rendering
    514 #define GL_WRITEONLY_RENDERING_QCOM                             0x8823
    515 #endif
    516 
    517 /* GL_QCOM_tiled_rendering */
    518 #ifndef GL_QCOM_tiled_rendering
    519 #define GL_COLOR_BUFFER_BIT0_QCOM                               0x00000001
    520 #define GL_COLOR_BUFFER_BIT1_QCOM                               0x00000002
    521 #define GL_COLOR_BUFFER_BIT2_QCOM                               0x00000004
    522 #define GL_COLOR_BUFFER_BIT3_QCOM                               0x00000008
    523 #define GL_COLOR_BUFFER_BIT4_QCOM                               0x00000010
    524 #define GL_COLOR_BUFFER_BIT5_QCOM                               0x00000020
    525 #define GL_COLOR_BUFFER_BIT6_QCOM                               0x00000040
    526 #define GL_COLOR_BUFFER_BIT7_QCOM                               0x00000080
    527 #define GL_DEPTH_BUFFER_BIT0_QCOM                               0x00000100
    528 #define GL_DEPTH_BUFFER_BIT1_QCOM                               0x00000200
    529 #define GL_DEPTH_BUFFER_BIT2_QCOM                               0x00000400
    530 #define GL_DEPTH_BUFFER_BIT3_QCOM                               0x00000800
    531 #define GL_DEPTH_BUFFER_BIT4_QCOM                               0x00001000
    532 #define GL_DEPTH_BUFFER_BIT5_QCOM                               0x00002000
    533 #define GL_DEPTH_BUFFER_BIT6_QCOM                               0x00004000
    534 #define GL_DEPTH_BUFFER_BIT7_QCOM                               0x00008000
    535 #define GL_STENCIL_BUFFER_BIT0_QCOM                             0x00010000
    536 #define GL_STENCIL_BUFFER_BIT1_QCOM                             0x00020000
    537 #define GL_STENCIL_BUFFER_BIT2_QCOM                             0x00040000
    538 #define GL_STENCIL_BUFFER_BIT3_QCOM                             0x00080000
    539 #define GL_STENCIL_BUFFER_BIT4_QCOM                             0x00100000
    540 #define GL_STENCIL_BUFFER_BIT5_QCOM                             0x00200000
    541 #define GL_STENCIL_BUFFER_BIT6_QCOM                             0x00400000
    542 #define GL_STENCIL_BUFFER_BIT7_QCOM                             0x00800000
    543 #define GL_MULTISAMPLE_BUFFER_BIT0_QCOM                         0x01000000
    544 #define GL_MULTISAMPLE_BUFFER_BIT1_QCOM                         0x02000000
    545 #define GL_MULTISAMPLE_BUFFER_BIT2_QCOM                         0x04000000
    546 #define GL_MULTISAMPLE_BUFFER_BIT3_QCOM                         0x08000000
    547 #define GL_MULTISAMPLE_BUFFER_BIT4_QCOM                         0x10000000
    548 #define GL_MULTISAMPLE_BUFFER_BIT5_QCOM                         0x20000000
    549 #define GL_MULTISAMPLE_BUFFER_BIT6_QCOM                         0x40000000
    550 #define GL_MULTISAMPLE_BUFFER_BIT7_QCOM                         0x80000000
    551 #endif
    552 
    553 /*------------------------------------------------------------------------*
    554  * End of extension tokens, start of corresponding extension functions
    555  *------------------------------------------------------------------------*/
    556 
    557 /*------------------------------------------------------------------------*
    558  * OES extension functions
    559  *------------------------------------------------------------------------*/
    560 
    561 /* GL_OES_blend_equation_separate */
    562 #ifndef GL_OES_blend_equation_separate
    563 #define GL_OES_blend_equation_separate 1
    564 #ifdef GL_GLEXT_PROTOTYPES
    565 GL_API void GL_APIENTRY glBlendEquationSeparateOES (GLenum modeRGB, GLenum modeAlpha);
    566 #endif
    567 typedef void (GL_APIENTRYP PFNGLBLENDEQUATIONSEPARATEOESPROC) (GLenum modeRGB, GLenum modeAlpha);
    568 #endif
    569 
    570 /* GL_OES_blend_func_separate */
    571 #ifndef GL_OES_blend_func_separate
    572 #define GL_OES_blend_func_separate 1
    573 #ifdef GL_GLEXT_PROTOTYPES
    574 GL_API void GL_APIENTRY glBlendFuncSeparateOES (GLenum srcRGB, GLenum dstRGB, GLenum srcAlpha, GLenum dstAlpha);
    575 #endif
    576 typedef void (GL_APIENTRYP PFNGLBLENDFUNCSEPARATEOESPROC) (GLenum srcRGB, GLenum dstRGB, GLenum srcAlpha, GLenum dstAlpha);
    577 #endif
    578 
    579 /* GL_OES_blend_subtract */
    580 #ifndef GL_OES_blend_subtract
    581 #define GL_OES_blend_subtract 1
    582 #ifdef GL_GLEXT_PROTOTYPES
    583 GL_API void GL_APIENTRY glBlendEquationOES (GLenum mode);
    584 #endif
    585 typedef void (GL_APIENTRYP PFNGLBLENDEQUATIONOESPROC) (GLenum mode);
    586 #endif
    587 
    588 /* GL_OES_byte_coordinates */
    589 #ifndef GL_OES_byte_coordinates
    590 #define GL_OES_byte_coordinates 1
    591 #endif
    592 
    593 /* GL_OES_compressed_ETC1_RGB8_texture */
    594 #ifndef GL_OES_compressed_ETC1_RGB8_texture
    595 #define GL_OES_compressed_ETC1_RGB8_texture 1
    596 #endif
    597 
    598 /* GL_OES_depth24 */
    599 #ifndef GL_OES_depth24
    600 #define GL_OES_depth24 1
    601 #endif
    602 
    603 /* GL_OES_depth32 */
    604 #ifndef GL_OES_depth32
    605 #define GL_OES_depth32 1
    606 #endif
    607 
    608 /* GL_OES_draw_texture */
    609 #ifndef GL_OES_draw_texture
    610 #define GL_OES_draw_texture 1
    611 #ifdef GL_GLEXT_PROTOTYPES
    612 GL_API void GL_APIENTRY glDrawTexsOES (GLshort x, GLshort y, GLshort z, GLshort width, GLshort height);
    613 GL_API void GL_APIENTRY glDrawTexiOES (GLint x, GLint y, GLint z, GLint width, GLint height);
    614 GL_API void GL_APIENTRY glDrawTexxOES (GLfixed x, GLfixed y, GLfixed z, GLfixed width, GLfixed height);
    615 GL_API void GL_APIENTRY glDrawTexsvOES (const GLshort *coords);
    616 GL_API void GL_APIENTRY glDrawTexivOES (const GLint *coords);
    617 GL_API void GL_APIENTRY glDrawTexxvOES (const GLfixed *coords);
    618 GL_API void GL_APIENTRY glDrawTexfOES (GLfloat x, GLfloat y, GLfloat z, GLfloat width, GLfloat height);
    619 GL_API void GL_APIENTRY glDrawTexfvOES (const GLfloat *coords);
    620 #endif
    621 typedef void (GL_APIENTRYP PFNGLDRAWTEXSOESPROC) (GLshort x, GLshort y, GLshort z, GLshort width, GLshort height);
    622 typedef void (GL_APIENTRYP PFNGLDRAWTEXIOESPROC) (GLint x, GLint y, GLint z, GLint width, GLint height);
    623 typedef void (GL_APIENTRYP PFNGLDRAWTEXXOESPROC) (GLfixed x, GLfixed y, GLfixed z, GLfixed width, GLfixed height);
    624 typedef void (GL_APIENTRYP PFNGLDRAWTEXSVOESPROC) (const GLshort *coords);
    625 typedef void (GL_APIENTRYP PFNGLDRAWTEXIVOESPROC) (const GLint *coords);
    626 typedef void (GL_APIENTRYP PFNGLDRAWTEXXVOESPROC) (const GLfixed *coords);
    627 typedef void (GL_APIENTRYP PFNGLDRAWTEXFOESPROC) (GLfloat x, GLfloat y, GLfloat z, GLfloat width, GLfloat height);
    628 typedef void (GL_APIENTRYP PFNGLDRAWTEXFVOESPROC) (const GLfloat *coords);
    629 #endif
    630 
    631 /* GL_OES_EGL_image */
    632 #ifndef GL_OES_EGL_image
    633 #define GL_OES_EGL_image 1
    634 #ifdef GL_GLEXT_PROTOTYPES
    635 GL_API void GL_APIENTRY glEGLImageTargetTexture2DOES (GLenum target, GLeglImageOES image);
    636 GL_API void GL_APIENTRY glEGLImageTargetRenderbufferStorageOES (GLenum target, GLeglImageOES image);
    637 #endif
    638 typedef void (GL_APIENTRYP PFNGLEGLIMAGETARGETTEXTURE2DOESPROC) (GLenum target, GLeglImageOES image);
    639 typedef void (GL_APIENTRYP PFNGLEGLIMAGETARGETRENDERBUFFERSTORAGEOESPROC) (GLenum target, GLeglImageOES image);
    640 #endif
    641 
    642 /* GL_OES_EGL_image_external */
    643 #ifndef GL_OES_EGL_image_external
    644 #define GL_OES_EGL_image_external 1
    645 /* glEGLImageTargetTexture2DOES defined in GL_OES_EGL_image already. */
    646 #endif
    647 
    648 /* GL_OES_element_index_uint */
    649 #ifndef GL_OES_element_index_uint
    650 #define GL_OES_element_index_uint 1
    651 #endif
    652 
    653 /* GL_OES_extended_matrix_palette */
    654 #ifndef GL_OES_extended_matrix_palette
    655 #define GL_OES_extended_matrix_palette 1
    656 #endif
    657 
    658 /* GL_OES_fbo_render_mipmap */
    659 #ifndef GL_OES_fbo_render_mipmap
    660 #define GL_OES_fbo_render_mipmap 1
    661 #endif
    662 
    663 /* GL_OES_fixed_point */
    664 #ifndef GL_OES_fixed_point
    665 #define GL_OES_fixed_point 1
    666 #ifdef GL_GLEXT_PROTOTYPES
    667 GL_API void GL_APIENTRY glAlphaFuncxOES (GLenum func, GLclampx ref);
    668 GL_API void GL_APIENTRY glClearColorxOES (GLclampx red, GLclampx green, GLclampx blue, GLclampx alpha);
    669 GL_API void GL_APIENTRY glClearDepthxOES (GLclampx depth);
    670 GL_API void GL_APIENTRY glClipPlanexOES (GLenum plane, const GLfixed *equation);
    671 GL_API void GL_APIENTRY glColor4xOES (GLfixed red, GLfixed green, GLfixed blue, GLfixed alpha);
    672 GL_API void GL_APIENTRY glDepthRangexOES (GLclampx zNear, GLclampx zFar);
    673 GL_API void GL_APIENTRY glFogxOES (GLenum pname, GLfixed param);
    674 GL_API void GL_APIENTRY glFogxvOES (GLenum pname, const GLfixed *params);
    675 GL_API void GL_APIENTRY glFrustumxOES (GLfixed left, GLfixed right, GLfixed bottom, GLfixed top, GLfixed zNear, GLfixed zFar);
    676 GL_API void GL_APIENTRY glGetClipPlanexOES (GLenum pname, GLfixed eqn[4]);
    677 GL_API void GL_APIENTRY glGetFixedvOES (GLenum pname, GLfixed *params);
    678 GL_API void GL_APIENTRY glGetLightxvOES (GLenum light, GLenum pname, GLfixed *params);
    679 GL_API void GL_APIENTRY glGetMaterialxvOES (GLenum face, GLenum pname, GLfixed *params);
    680 GL_API void GL_APIENTRY glGetTexEnvxvOES (GLenum env, GLenum pname, GLfixed *params);
    681 GL_API void GL_APIENTRY glGetTexParameterxvOES (GLenum target, GLenum pname, GLfixed *params);
    682 GL_API void GL_APIENTRY glLightModelxOES (GLenum pname, GLfixed param);
    683 GL_API void GL_APIENTRY glLightModelxvOES (GLenum pname, const GLfixed *params);
    684 GL_API void GL_APIENTRY glLightxOES (GLenum light, GLenum pname, GLfixed param);
    685 GL_API void GL_APIENTRY glLightxvOES (GLenum light, GLenum pname, const GLfixed *params);
    686 GL_API void GL_APIENTRY glLineWidthxOES (GLfixed width);
    687 GL_API void GL_APIENTRY glLoadMatrixxOES (const GLfixed *m);
    688 GL_API void GL_APIENTRY glMaterialxOES (GLenum face, GLenum pname, GLfixed param);
    689 GL_API void GL_APIENTRY glMaterialxvOES (GLenum face, GLenum pname, const GLfixed *params);
    690 GL_API void GL_APIENTRY glMultMatrixxOES (const GLfixed *m);
    691 GL_API void GL_APIENTRY glMultiTexCoord4xOES (GLenum target, GLfixed s, GLfixed t, GLfixed r, GLfixed q);
    692 GL_API void GL_APIENTRY glNormal3xOES (GLfixed nx, GLfixed ny, GLfixed nz);
    693 GL_API void GL_APIENTRY glOrthoxOES (GLfixed left, GLfixed right, GLfixed bottom, GLfixed top, GLfixed zNear, GLfixed zFar);
    694 GL_API void GL_APIENTRY glPointParameterxOES (GLenum pname, GLfixed param);
    695 GL_API void GL_APIENTRY glPointParameterxvOES (GLenum pname, const GLfixed *params);
    696 GL_API void GL_APIENTRY glPointSizexOES (GLfixed size);
    697 GL_API void GL_APIENTRY glPolygonOffsetxOES (GLfixed factor, GLfixed units);
    698 GL_API void GL_APIENTRY glRotatexOES (GLfixed angle, GLfixed x, GLfixed y, GLfixed z);
    699 GL_API void GL_APIENTRY glSampleCoveragexOES (GLclampx value, GLboolean invert);
    700 GL_API void GL_APIENTRY glScalexOES (GLfixed x, GLfixed y, GLfixed z);
    701 GL_API void GL_APIENTRY glTexEnvxOES (GLenum target, GLenum pname, GLfixed param);
    702 GL_API void GL_APIENTRY glTexEnvxvOES (GLenum target, GLenum pname, const GLfixed *params);
    703 GL_API void GL_APIENTRY glTexParameterxOES (GLenum target, GLenum pname, GLfixed param);
    704 GL_API void GL_APIENTRY glTexParameterxvOES (GLenum target, GLenum pname, const GLfixed *params);
    705 GL_API void GL_APIENTRY glTranslatexOES (GLfixed x, GLfixed y, GLfixed z);
    706 #endif
    707 typedef void (GL_APIENTRYP PFNGLALPHAFUNCXOESPROC) (GLenum func, GLclampx ref);
    708 typedef void (GL_APIENTRYP PFNGLCLEARCOLORXOESPROC) (GLclampx red, GLclampx green, GLclampx blue, GLclampx alpha);
    709 typedef void (GL_APIENTRYP PFNGLCLEARDEPTHXOESPROC) (GLclampx depth);
    710 typedef void (GL_APIENTRYP PFNGLCLIPPLANEXOESPROC) (GLenum plane, const GLfixed *equation);
    711 typedef void (GL_APIENTRYP PFNGLCOLOR4XOESPROC) (GLfixed red, GLfixed green, GLfixed blue, GLfixed alpha);
    712 typedef void (GL_APIENTRYP PFNGLDEPTHRANGEXOESPROC) (GLclampx zNear, GLclampx zFar);
    713 typedef void (GL_APIENTRYP PFNGLFOGXOESPROC) (GLenum pname, GLfixed param);
    714 typedef void (GL_APIENTRYP PFNGLFOGXVOESPROC) (GLenum pname, const GLfixed *params);
    715 typedef void (GL_APIENTRYP PFNGLFRUSTUMXOESPROC) (GLfixed left, GLfixed right, GLfixed bottom, GLfixed top, GLfixed zNear, GLfixed zFar);
    716 typedef void (GL_APIENTRYP PFNGLGETCLIPPLANEXOESPROC) (GLenum pname, GLfixed eqn[4]);
    717 typedef void (GL_APIENTRYP PFNGLGETFIXEDVOESPROC) (GLenum pname, GLfixed *params);
    718 typedef void (GL_APIENTRYP PFNGLGETLIGHTXVOESPROC) (GLenum light, GLenum pname, GLfixed *params);
    719 typedef void (GL_APIENTRYP PFNGLGETMATERIALXVOESPROC) (GLenum face, GLenum pname, GLfixed *params);
    720 typedef void (GL_APIENTRYP PFNGLGETTEXENVXVOESPROC) (GLenum env, GLenum pname, GLfixed *params);
    721 typedef void (GL_APIENTRYP PFNGLGETTEXPARAMETERXVOESPROC) (GLenum target, GLenum pname, GLfixed *params);
    722 typedef void (GL_APIENTRYP PFNGLLIGHTMODELXOESPROC) (GLenum pname, GLfixed param);
    723 typedef void (GL_APIENTRYP PFNGLLIGHTMODELXVOESPROC) (GLenum pname, const GLfixed *params);
    724 typedef void (GL_APIENTRYP PFNGLLIGHTXOESPROC) (GLenum light, GLenum pname, GLfixed param);
    725 typedef void (GL_APIENTRYP PFNGLLIGHTXVOESPROC) (GLenum light, GLenum pname, const GLfixed *params);
    726 typedef void (GL_APIENTRYP PFNGLLINEWIDTHXOESPROC) (GLfixed width);
    727 typedef void (GL_APIENTRYP PFNGLLOADMATRIXXOESPROC) (const GLfixed *m);
    728 typedef void (GL_APIENTRYP PFNGLMATERIALXOESPROC) (GLenum face, GLenum pname, GLfixed param);
    729 typedef void (GL_APIENTRYP PFNGLMATERIALXVOESPROC) (GLenum face, GLenum pname, const GLfixed *params);
    730 typedef void (GL_APIENTRYP PFNGLMULTMATRIXXOESPROC) (const GLfixed *m);
    731 typedef void (GL_APIENTRYP PFNGLMULTITEXCOORD4XOESPROC) (GLenum target, GLfixed s, GLfixed t, GLfixed r, GLfixed q);
    732 typedef void (GL_APIENTRYP PFNGLNORMAL3XOESPROC) (GLfixed nx, GLfixed ny, GLfixed nz);
    733 typedef void (GL_APIENTRYP PFNGLORTHOXOESPROC) (GLfixed left, GLfixed right, GLfixed bottom, GLfixed top, GLfixed zNear, GLfixed zFar);
    734 typedef void (GL_APIENTRYP PFNGLPOINTPARAMETERXOESPROC) (GLenum pname, GLfixed param);
    735 typedef void (GL_APIENTRYP PFNGLPOINTPARAMETERXVOESPROC) (GLenum pname, const GLfixed *params);
    736 typedef void (GL_APIENTRYP PFNGLPOINTSIZEXOESPROC) (GLfixed size);
    737 typedef void (GL_APIENTRYP PFNGLPOLYGONOFFSETXOESPROC) (GLfixed factor, GLfixed units);
    738 typedef void (GL_APIENTRYP PFNGLROTATEXOESPROC) (GLfixed angle, GLfixed x, GLfixed y, GLfixed z);
    739 typedef void (GL_APIENTRYP PFNGLSAMPLECOVERAGEXOESPROC) (GLclampx value, GLboolean invert);
    740 typedef void (GL_APIENTRYP PFNGLSCALEXOESPROC) (GLfixed x, GLfixed y, GLfixed z);
    741 typedef void (GL_APIENTRYP PFNGLTEXENVXOESPROC) (GLenum target, GLenum pname, GLfixed param);
    742 typedef void (GL_APIENTRYP PFNGLTEXENVXVOESPROC) (GLenum target, GLenum pname, const GLfixed *params);
    743 typedef void (GL_APIENTRYP PFNGLTEXPARAMETERXOESPROC) (GLenum target, GLenum pname, GLfixed param);
    744 typedef void (GL_APIENTRYP PFNGLTEXPARAMETERXVOESPROC) (GLenum target, GLenum pname, const GLfixed *params);
    745 typedef void (GL_APIENTRYP PFNGLTRANSLATEXOESPROC) (GLfixed x, GLfixed y, GLfixed z);
    746 #endif
    747 
    748 /* GL_OES_framebuffer_object */
    749 #ifndef GL_OES_framebuffer_object
    750 #define GL_OES_framebuffer_object 1
    751 #ifdef GL_GLEXT_PROTOTYPES
    752 GL_API GLboolean GL_APIENTRY glIsRenderbufferOES (GLuint renderbuffer);
    753 GL_API void GL_APIENTRY glBindRenderbufferOES (GLenum target, GLuint renderbuffer);
    754 GL_API void GL_APIENTRY glDeleteRenderbuffersOES (GLsizei n, const GLuint* renderbuffers);
    755 GL_API void GL_APIENTRY glGenRenderbuffersOES (GLsizei n, GLuint* renderbuffers);
    756 GL_API void GL_APIENTRY glRenderbufferStorageOES (GLenum target, GLenum internalformat, GLsizei width, GLsizei height);
    757 GL_API void GL_APIENTRY glGetRenderbufferParameterivOES (GLenum target, GLenum pname, GLint* params);
    758 GL_API GLboolean GL_APIENTRY glIsFramebufferOES (GLuint framebuffer);
    759 GL_API void GL_APIENTRY glBindFramebufferOES (GLenum target, GLuint framebuffer);
    760 GL_API void GL_APIENTRY glDeleteFramebuffersOES (GLsizei n, const GLuint* framebuffers);
    761 GL_API void GL_APIENTRY glGenFramebuffersOES (GLsizei n, GLuint* framebuffers);
    762 GL_API GLenum GL_APIENTRY glCheckFramebufferStatusOES (GLenum target);
    763 GL_API void GL_APIENTRY glFramebufferRenderbufferOES (GLenum target, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer);
    764 GL_API void GL_APIENTRY glFramebufferTexture2DOES (GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level);
    765 GL_API void GL_APIENTRY glGetFramebufferAttachmentParameterivOES (GLenum target, GLenum attachment, GLenum pname, GLint* params);
    766 GL_API void GL_APIENTRY glGenerateMipmapOES (GLenum target);
    767 #endif
    768 typedef GLboolean (GL_APIENTRYP PFNGLISRENDERBUFFEROESPROC) (GLuint renderbuffer);
    769 typedef void (GL_APIENTRYP PFNGLBINDRENDERBUFFEROESPROC) (GLenum target, GLuint renderbuffer);
    770 typedef void (GL_APIENTRYP PFNGLDELETERENDERBUFFERSOESPROC) (GLsizei n, const GLuint* renderbuffers);
    771 typedef void (GL_APIENTRYP PFNGLGENRENDERBUFFERSOESPROC) (GLsizei n, GLuint* renderbuffers);
    772 typedef void (GL_APIENTRYP PFNGLRENDERBUFFERSTORAGEOESPROC) (GLenum target, GLenum internalformat, GLsizei width, GLsizei height);
    773 typedef void (GL_APIENTRYP PFNGLGETRENDERBUFFERPARAMETERIVOESPROC) (GLenum target, GLenum pname, GLint* params);
    774 typedef GLboolean (GL_APIENTRYP PFNGLISFRAMEBUFFEROESPROC) (GLuint framebuffer);
    775 typedef void (GL_APIENTRYP PFNGLBINDFRAMEBUFFEROESPROC) (GLenum target, GLuint framebuffer);
    776 typedef void (GL_APIENTRYP PFNGLDELETEFRAMEBUFFERSOESPROC) (GLsizei n, const GLuint* framebuffers);
    777 typedef void (GL_APIENTRYP PFNGLGENFRAMEBUFFERSOESPROC) (GLsizei n, GLuint* framebuffers);
    778 typedef GLenum (GL_APIENTRYP PFNGLCHECKFRAMEBUFFERSTATUSOESPROC) (GLenum target);
    779 typedef void (GL_APIENTRYP PFNGLFRAMEBUFFERRENDERBUFFEROESPROC) (GLenum target, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer);
    780 typedef void (GL_APIENTRYP PFNGLFRAMEBUFFERTEXTURE2DOESPROC) (GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level);
    781 typedef void (GL_APIENTRYP PFNGLGETFRAMEBUFFERATTACHMENTPARAMETERIVOESPROC) (GLenum target, GLenum attachment, GLenum pname, GLint* params);
    782 typedef void (GL_APIENTRYP PFNGLGENERATEMIPMAPOESPROC) (GLenum target);
    783 #endif
    784 
    785 /* GL_OES_mapbuffer */
    786 #ifndef GL_OES_mapbuffer
    787 #define GL_OES_mapbuffer 1
    788 #ifdef GL_GLEXT_PROTOTYPES
    789 GL_API void* GL_APIENTRY glMapBufferOES (GLenum target, GLenum access);
    790 GL_API GLboolean GL_APIENTRY glUnmapBufferOES (GLenum target);
    791 GL_API void GL_APIENTRY glGetBufferPointervOES (GLenum target, GLenum pname, GLvoid ** params);
    792 #endif
    793 typedef void* (GL_APIENTRYP PFNGLMAPBUFFEROESPROC) (GLenum target, GLenum access);
    794 typedef GLboolean (GL_APIENTRYP PFNGLUNMAPBUFFEROESPROC) (GLenum target);
    795 typedef void (GL_APIENTRYP PFNGLGETBUFFERPOINTERVOESPROC) (GLenum target, GLenum pname, GLvoid ** params);
    796 #endif
    797 
    798 /* GL_OES_matrix_get */
    799 #ifndef GL_OES_matrix_get
    800 #define GL_OES_matrix_get 1
    801 #endif
    802 
    803 /* GL_OES_matrix_palette */
    804 #ifndef GL_OES_matrix_palette
    805 #define GL_OES_matrix_palette 1
    806 #ifdef GL_GLEXT_PROTOTYPES
    807 GL_API void GL_APIENTRY glCurrentPaletteMatrixOES (GLuint matrixpaletteindex);
    808 GL_API void GL_APIENTRY glLoadPaletteFromModelViewMatrixOES (void);
    809 GL_API void GL_APIENTRY glMatrixIndexPointerOES (GLint size, GLenum type, GLsizei stride, const GLvoid *pointer);
    810 GL_API void GL_APIENTRY glWeightPointerOES (GLint size, GLenum type, GLsizei stride, const GLvoid *pointer);
    811 #endif
    812 typedef void (GL_APIENTRYP PFNGLCURRENTPALETTEMATRIXOESPROC) (GLuint matrixpaletteindex);
    813 typedef void (GL_APIENTRYP PFNGLLOADPALETTEFROMMODELVIEWMATRIXOESPROC) (void);
    814 typedef void (GL_APIENTRYP PFNGLMATRIXINDEXPOINTEROESPROC) (GLint size, GLenum type, GLsizei stride, const GLvoid *pointer);
    815 typedef void (GL_APIENTRYP PFNGLWEIGHTPOINTEROESPROC) (GLint size, GLenum type, GLsizei stride, const GLvoid *pointer);
    816 #endif
    817 
    818 /* GL_OES_packed_depth_stencil */
    819 #ifndef GL_OES_packed_depth_stencil
    820 #define GL_OES_packed_depth_stencil 1
    821 #endif
    822 
    823 /* GL_OES_required_internalformat */
    824 #ifndef GL_OES_required_internalformat
    825 #define GL_OES_required_internalformat 1
    826 #endif
    827 
    828 /* GL_OES_query_matrix */
    829 #ifndef GL_OES_query_matrix
    830 #define GL_OES_query_matrix 1
    831 #ifdef GL_GLEXT_PROTOTYPES
    832 GL_API GLbitfield GL_APIENTRY glQueryMatrixxOES (GLfixed mantissa[16], GLint exponent[16]);
    833 #endif
    834 typedef GLbitfield (GL_APIENTRYP PFNGLQUERYMATRIXXOESPROC) (GLfixed mantissa[16], GLint exponent[16]);
    835 #endif
    836 
    837 /* GL_OES_rgb8_rgba8 */
    838 #ifndef GL_OES_rgb8_rgba8
    839 #define GL_OES_rgb8_rgba8 1
    840 #endif
    841 
    842 /* GL_OES_single_precision */
    843 #ifndef GL_OES_single_precision
    844 #define GL_OES_single_precision 1
    845 #ifdef GL_GLEXT_PROTOTYPES
    846 GL_API void GL_APIENTRY glDepthRangefOES (GLclampf zNear, GLclampf zFar);
    847 GL_API void GL_APIENTRY glFrustumfOES (GLfloat left, GLfloat right, GLfloat bottom, GLfloat top, GLfloat zNear, GLfloat zFar);
    848 GL_API void GL_APIENTRY glOrthofOES (GLfloat left, GLfloat right, GLfloat bottom, GLfloat top, GLfloat zNear, GLfloat zFar);
    849 GL_API void GL_APIENTRY glClipPlanefOES (GLenum plane, const GLfloat *equation);
    850 GL_API void GL_APIENTRY glGetClipPlanefOES (GLenum pname, GLfloat eqn[4]);
    851 GL_API void GL_APIENTRY glClearDepthfOES (GLclampf depth);
    852 #endif
    853 typedef void (GL_APIENTRYP PFNGLDEPTHRANGEFOESPROC) (GLclampf zNear, GLclampf zFar);
    854 typedef void (GL_APIENTRYP PFNGLFRUSTUMFOESPROC) (GLfloat left, GLfloat right, GLfloat bottom, GLfloat top, GLfloat zNear, GLfloat zFar);
    855 typedef void (GL_APIENTRYP PFNGLORTHOFOESPROC) (GLfloat left, GLfloat right, GLfloat bottom, GLfloat top, GLfloat zNear, GLfloat zFar);
    856 typedef void (GL_APIENTRYP PFNGLCLIPPLANEFOESPROC) (GLenum plane, const GLfloat *equation);
    857 typedef void (GL_APIENTRYP PFNGLGETCLIPPLANEFOESPROC) (GLenum pname, GLfloat eqn[4]);
    858 typedef void (GL_APIENTRYP PFNGLCLEARDEPTHFOESPROC) (GLclampf depth);
    859 #endif
    860 
    861 /* GL_OES_stencil1 */
    862 #ifndef GL_OES_stencil1
    863 #define GL_OES_stencil1 1
    864 #endif
    865 
    866 /* GL_OES_stencil4 */
    867 #ifndef GL_OES_stencil4
    868 #define GL_OES_stencil4 1
    869 #endif
    870 
    871 /* GL_OES_stencil8 */
    872 #ifndef GL_OES_stencil8
    873 #define GL_OES_stencil8 1
    874 #endif
    875 
    876 /* GL_OES_stencil_wrap */
    877 #ifndef GL_OES_stencil_wrap
    878 #define GL_OES_stencil_wrap 1
    879 #endif
    880 
    881 /* GL_OES_texture_cube_map */
    882 #ifndef GL_OES_texture_cube_map
    883 #define GL_OES_texture_cube_map 1
    884 #ifdef GL_GLEXT_PROTOTYPES
    885 GL_API void GL_APIENTRY glTexGenfOES (GLenum coord, GLenum pname, GLfloat param);
    886 GL_API void GL_APIENTRY glTexGenfvOES (GLenum coord, GLenum pname, const GLfloat *params);
    887 GL_API void GL_APIENTRY glTexGeniOES (GLenum coord, GLenum pname, GLint param);
    888 GL_API void GL_APIENTRY glTexGenivOES (GLenum coord, GLenum pname, const GLint *params);
    889 GL_API void GL_APIENTRY glTexGenxOES (GLenum coord, GLenum pname, GLfixed param);
    890 GL_API void GL_APIENTRY glTexGenxvOES (GLenum coord, GLenum pname, const GLfixed *params);
    891 GL_API void GL_APIENTRY glGetTexGenfvOES (GLenum coord, GLenum pname, GLfloat *params);
    892 GL_API void GL_APIENTRY glGetTexGenivOES (GLenum coord, GLenum pname, GLint *params);
    893 GL_API void GL_APIENTRY glGetTexGenxvOES (GLenum coord, GLenum pname, GLfixed *params);
    894 #endif
    895 typedef void (GL_APIENTRYP PFNGLTEXGENFOESPROC) (GLenum coord, GLenum pname, GLfloat param);
    896 typedef void (GL_APIENTRYP PFNGLTEXGENFVOESPROC) (GLenum coord, GLenum pname, const GLfloat *params);
    897 typedef void (GL_APIENTRYP PFNGLTEXGENIOESPROC) (GLenum coord, GLenum pname, GLint param);
    898 typedef void (GL_APIENTRYP PFNGLTEXGENIVOESPROC) (GLenum coord, GLenum pname, const GLint *params);
    899 typedef void (GL_APIENTRYP PFNGLTEXGENXOESPROC) (GLenum coord, GLenum pname, GLfixed param);
    900 typedef void (GL_APIENTRYP PFNGLTEXGENXVOESPROC) (GLenum coord, GLenum pname, const GLfixed *params);
    901 typedef void (GL_APIENTRYP PFNGLGETTEXGENFVOESPROC) (GLenum coord, GLenum pname, GLfloat *params);
    902 typedef void (GL_APIENTRYP PFNGLGETTEXGENIVOESPROC) (GLenum coord, GLenum pname, GLint *params);
    903 typedef void (GL_APIENTRYP PFNGLGETTEXGENXVOESPROC) (GLenum coord, GLenum pname, GLfixed *params);
    904 #endif
    905 
    906 /* GL_OES_texture_env_crossbar */
    907 #ifndef GL_OES_texture_env_crossbar
    908 #define GL_OES_texture_env_crossbar 1
    909 #endif
    910 
    911 /* GL_OES_texture_mirrored_repeat */
    912 #ifndef GL_OES_texture_mirrored_repeat
    913 #define GL_OES_texture_mirrored_repeat 1
    914 #endif
    915 
    916 /* GL_OES_vertex_array_object */
    917 #ifndef GL_OES_vertex_array_object
    918 #define GL_OES_vertex_array_object 1
    919 #ifdef GL_GLEXT_PROTOTYPES
    920 GL_API void GL_APIENTRY glBindVertexArrayOES (GLuint array);
    921 GL_API void GL_APIENTRY glDeleteVertexArraysOES (GLsizei n, const GLuint *arrays);
    922 GL_API void GL_APIENTRY glGenVertexArraysOES (GLsizei n, GLuint *arrays);
    923 GL_API GLboolean GL_APIENTRY glIsVertexArrayOES (GLuint array);
    924 #endif
    925 typedef void (GL_APIENTRYP PFNGLBINDVERTEXARRAYOESPROC) (GLuint array);
    926 typedef void (GL_APIENTRYP PFNGLDELETEVERTEXARRAYSOESPROC) (GLsizei n, const GLuint *arrays);
    927 typedef void (GL_APIENTRYP PFNGLGENVERTEXARRAYSOESPROC) (GLsizei n, GLuint *arrays);
    928 typedef GLboolean (GL_APIENTRYP PFNGLISVERTEXARRAYOESPROC) (GLuint array);
    929 #endif
    930 
    931 /*------------------------------------------------------------------------*
    932  * AMD extension functions
    933  *------------------------------------------------------------------------*/
    934 
    935 /* GL_AMD_compressed_3DC_texture */
    936 #ifndef GL_AMD_compressed_3DC_texture
    937 #define GL_AMD_compressed_3DC_texture 1
    938 #endif
    939 
    940 /* GL_AMD_compressed_ATC_texture */
    941 #ifndef GL_AMD_compressed_ATC_texture
    942 #define GL_AMD_compressed_ATC_texture 1
    943 #endif
    944 
    945 /*------------------------------------------------------------------------*
    946  * APPLE extension functions
    947  *------------------------------------------------------------------------*/
    948 
    949 /* GL_APPLE_copy_texture_levels */
    950 #ifndef GL_APPLE_copy_texture_levels
    951 #define GL_APPLE_copy_texture_levels 1
    952 #ifdef GL_GLEXT_PROTOTYPES
    953 GL_API void GL_APIENTRY glCopyTextureLevelsAPPLE (GLuint destinationTexture, GLuint sourceTexture, GLint sourceBaseLevel, GLsizei sourceLevelCount);
    954 #endif
    955 typedef void (GL_APIENTRYP PFNGLCOPYTEXTURELEVELSAPPLEPROC) (GLuint destinationTexture, GLuint sourceTexture, GLint sourceBaseLevel, GLsizei sourceLevelCount);
    956 #endif
    957 
    958 /* GL_APPLE_framebuffer_multisample */
    959 #ifndef GL_APPLE_framebuffer_multisample
    960 #define GL_APPLE_framebuffer_multisample 1
    961 #ifdef GL_GLEXT_PROTOTYPES
    962 GL_API void GL_APIENTRY glRenderbufferStorageMultisampleAPPLE (GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height);
    963 GL_API void GL_APIENTRY glResolveMultisampleFramebufferAPPLE (void);
    964 #endif /* GL_GLEXT_PROTOTYPES */
    965 typedef void (GL_APIENTRYP PFNGLRENDERBUFFERSTORAGEMULTISAMPLEAPPLEPROC) (GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height);
    966 typedef void (GL_APIENTRYP PFNGLRESOLVEMULTISAMPLEFRAMEBUFFERAPPLEPROC) (void);
    967 #endif
    968 
    969 /* GL_APPLE_sync */
    970 #ifndef GL_APPLE_sync
    971 #define GL_APPLE_sync 1
    972 #ifdef GL_GLEXT_PROTOTYPES
    973 GL_API GLsync GL_APIENTRY glFenceSyncAPPLE (GLenum condition, GLbitfield flags);
    974 GL_API GLboolean GL_APIENTRY glIsSyncAPPLE (GLsync sync);
    975 GL_API void GL_APIENTRY glDeleteSyncAPPLE (GLsync sync);
    976 GL_API GLenum GL_APIENTRY glClientWaitSyncAPPLE (GLsync sync, GLbitfield flags, GLuint64 timeout);
    977 GL_API void GL_APIENTRY glWaitSyncAPPLE (GLsync sync, GLbitfield flags, GLuint64 timeout);
    978 GL_API void GL_APIENTRY glGetInteger64vAPPLE (GLenum pname, GLint64 *params);
    979 GL_API void GL_APIENTRY glGetSyncivAPPLE (GLsync sync, GLenum pname, GLsizei bufSize, GLsizei *length, GLint *values);
    980 #endif
    981 typedef GLsync (GL_APIENTRYP PFNGLFENCESYNCAPPLEPROC) (GLenum condition, GLbitfield flags);
    982 typedef GLboolean (GL_APIENTRYP PFNGLISSYNCAPPLEPROC) (GLsync sync);
    983 typedef void (GL_APIENTRYP PFNGLDELETESYNCAPPLEPROC) (GLsync sync);
    984 typedef GLenum (GL_APIENTRYP PFNGLCLIENTWAITSYNCAPPLEPROC) (GLsync sync, GLbitfield flags, GLuint64 timeout);
    985 typedef void (GL_APIENTRYP PFNGLWAITSYNCAPPLEPROC) (GLsync sync, GLbitfield flags, GLuint64 timeout);
    986 typedef void (GL_APIENTRYP PFNGLGETINTEGER64VAPPLEPROC) (GLenum pname, GLint64 *params);
    987 typedef void (GL_APIENTRYP PFNGLGETSYNCIVAPPLEPROC) (GLsync sync, GLenum pname, GLsizei bufSize, GLsizei *length, GLint *values);
    988 #endif
    989 
    990 /* GL_APPLE_texture_2D_limited_npot */
    991 #ifndef GL_APPLE_texture_2D_limited_npot
    992 #define GL_APPLE_texture_2D_limited_npot 1
    993 #endif
    994 
    995 /* GL_APPLE_texture_format_BGRA8888 */
    996 #ifndef GL_APPLE_texture_format_BGRA8888
    997 #define GL_APPLE_texture_format_BGRA8888 1
    998 #endif
    999 
   1000 /* GL_APPLE_texture_max_level */
   1001 #ifndef GL_APPLE_texture_max_level
   1002 #define GL_APPLE_texture_max_level 1
   1003 #endif
   1004 
   1005 /*------------------------------------------------------------------------*
   1006  * ARM extension functions
   1007  *------------------------------------------------------------------------*/
   1008 
   1009 /* GL_ARM_rgba8 */
   1010 #ifndef GL_ARM_rgba8
   1011 #define GL_ARM_rgba8 1
   1012 #endif
   1013 
   1014 /*------------------------------------------------------------------------*
   1015  * EXT extension functions
   1016  *------------------------------------------------------------------------*/
   1017 
   1018 /* GL_EXT_blend_minmax */
   1019 #ifndef GL_EXT_blend_minmax
   1020 #define GL_EXT_blend_minmax 1
   1021 #endif
   1022 
   1023 /* GL_EXT_discard_framebuffer */
   1024 #ifndef GL_EXT_discard_framebuffer
   1025 #define GL_EXT_discard_framebuffer 1
   1026 #ifdef GL_GLEXT_PROTOTYPES
   1027 GL_API void GL_APIENTRY glDiscardFramebufferEXT (GLenum target, GLsizei numAttachments, const GLenum *attachments);
   1028 #endif
   1029 typedef void (GL_APIENTRYP PFNGLDISCARDFRAMEBUFFEREXTPROC) (GLenum target, GLsizei numAttachments, const GLenum *attachments);
   1030 #endif
   1031 
   1032 /* GL_EXT_map_buffer_range */
   1033 #ifndef GL_EXT_map_buffer_range
   1034 #define GL_EXT_map_buffer_range 1
   1035 #ifdef GL_GLEXT_PROTOTYPES
   1036 GL_API void* GL_APIENTRY glMapBufferRangeEXT (GLenum target, GLintptr offset, GLsizeiptr length, GLbitfield access);
   1037 GL_API void GL_APIENTRY glFlushMappedBufferRangeEXT (GLenum target, GLintptr offset, GLsizeiptr length);
   1038 #endif
   1039 typedef void* (GL_APIENTRYP PFNGLMAPBUFFERRANGEEXTPROC) (GLenum target, GLintptr offset, GLsizeiptr length, GLbitfield access);
   1040 typedef void (GL_APIENTRYP PFNGLFLUSHMAPPEDBUFFERRANGEEXTPROC) (GLenum target, GLintptr offset, GLsizeiptr length);
   1041 #endif
   1042 
   1043 /* GL_EXT_multisampled_render_to_texture */
   1044 #ifndef GL_EXT_multisampled_render_to_texture
   1045 #define GL_EXT_multisampled_render_to_texture 1
   1046 #ifdef GL_GLEXT_PROTOTYPES
   1047 GL_API void GL_APIENTRY glRenderbufferStorageMultisampleEXT (GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height);
   1048 GL_API void GL_APIENTRY glFramebufferTexture2DMultisampleEXT (GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLsizei samples);
   1049 #endif
   1050 typedef void (GL_APIENTRYP PFNGLRENDERBUFFERSTORAGEMULTISAMPLEEXTPROC) (GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height);
   1051 typedef void (GL_APIENTRYP PFNGLFRAMEBUFFERTEXTURE2DMULTISAMPLEEXTPROC) (GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLsizei samples);
   1052 #endif
   1053 
   1054 /* GL_EXT_multi_draw_arrays */
   1055 #ifndef GL_EXT_multi_draw_arrays
   1056 #define GL_EXT_multi_draw_arrays 1
   1057 #ifdef GL_GLEXT_PROTOTYPES
   1058 GL_API void GL_APIENTRY glMultiDrawArraysEXT (GLenum mode, const GLint *first, const GLsizei *count, GLsizei primcount);
   1059 GL_API void GL_APIENTRY glMultiDrawElementsEXT (GLenum mode, const GLsizei *count, GLenum type, const GLvoid* *indices, GLsizei primcount);
   1060 #endif /* GL_GLEXT_PROTOTYPES */
   1061 typedef void (GL_APIENTRYP PFNGLMULTIDRAWARRAYSEXTPROC) (GLenum mode, const GLint *first, const GLsizei *count, GLsizei primcount);
   1062 typedef void (GL_APIENTRYP PFNGLMULTIDRAWELEMENTSEXTPROC) (GLenum mode, const GLsizei *count, GLenum type, const GLvoid* *indices, GLsizei primcount);
   1063 #endif
   1064 
   1065 /* GL_EXT_read_format_bgra */
   1066 #ifndef GL_EXT_read_format_bgra
   1067 #define GL_EXT_read_format_bgra 1
   1068 #endif
   1069 
   1070 /* GL_EXT_robustness */
   1071 #ifndef GL_EXT_robustness
   1072 #define GL_EXT_robustness 1
   1073 #ifdef GL_GLEXT_PROTOTYPES
   1074 GL_API GLenum GL_APIENTRY glGetGraphicsResetStatusEXT (void);
   1075 GL_API void GL_APIENTRY glReadnPixelsEXT (GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, GLsizei bufSize, void *data);
   1076 GL_API void GL_APIENTRY glGetnUniformfvEXT (GLuint program, GLint location, GLsizei bufSize, float *params);
   1077 GL_API void GL_APIENTRY glGetnUniformivEXT (GLuint program, GLint location, GLsizei bufSize, GLint *params);
   1078 #endif
   1079 typedef GLenum (GL_APIENTRYP PFNGLGETGRAPHICSRESETSTATUSEXTPROC) (void);
   1080 typedef void (GL_APIENTRYP PFNGLREADNPIXELSEXTPROC) (GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, GLsizei bufSize, void *data);
   1081 typedef void (GL_APIENTRYP PFNGLGETNUNIFORMFVEXTPROC) (GLuint program, GLint location, GLsizei bufSize, float *params);
   1082 typedef void (GL_APIENTRYP PFNGLGETNUNIFORMIVEXTPROC) (GLuint program, GLint location, GLsizei bufSize, GLint *params);
   1083 #endif
   1084 
   1085 /* GL_EXT_sRGB */
   1086 #ifndef GL_EXT_sRGB
   1087 #define GL_EXT_sRGB 1
   1088 #endif
   1089 
   1090 /* GL_EXT_texture_compression_dxt1 */
   1091 #ifndef GL_EXT_texture_compression_dxt1
   1092 #define GL_EXT_texture_compression_dxt1 1
   1093 #endif
   1094 
   1095 /* GL_EXT_texture_filter_anisotropic */
   1096 #ifndef GL_EXT_texture_filter_anisotropic
   1097 #define GL_EXT_texture_filter_anisotropic 1
   1098 #endif
   1099 
   1100 /* GL_EXT_texture_format_BGRA8888 */
   1101 #ifndef GL_EXT_texture_format_BGRA8888
   1102 #define GL_EXT_texture_format_BGRA8888 1
   1103 #endif
   1104 
   1105 /* GL_EXT_texture_lod_bias */
   1106 #ifndef GL_EXT_texture_lod_bias
   1107 #define GL_EXT_texture_lod_bias 1
   1108 #endif
   1109 
   1110 /* GL_EXT_texture_storage */
   1111 #ifndef GL_EXT_texture_storage
   1112 #define GL_EXT_texture_storage 1
   1113 #ifdef GL_GLEXT_PROTOTYPES
   1114 GL_API void GL_APIENTRY glTexStorage1DEXT (GLenum target, GLsizei levels, GLenum internalformat, GLsizei width);
   1115 GL_API void GL_APIENTRY glTexStorage2DEXT (GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height);
   1116 GL_API void GL_APIENTRY glTexStorage3DEXT (GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth);
   1117 GL_API void GL_APIENTRY glTextureStorage1DEXT (GLuint texture, GLenum target, GLsizei levels, GLenum internalformat, GLsizei width);
   1118 GL_API void GL_APIENTRY glTextureStorage2DEXT (GLuint texture, GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height);
   1119 GL_API void GL_APIENTRY glTextureStorage3DEXT (GLuint texture, GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth);
   1120 #endif
   1121 typedef void (GL_APIENTRYP PFNGLTEXSTORAGE1DEXTPROC) (GLenum target, GLsizei levels, GLenum internalformat, GLsizei width);
   1122 typedef void (GL_APIENTRYP PFNGLTEXSTORAGE2DEXTPROC) (GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height);
   1123 typedef void (GL_APIENTRYP PFNGLTEXSTORAGE3DEXTPROC) (GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth);
   1124 typedef void (GL_APIENTRYP PFNGLTEXTURESTORAGE1DEXTPROC) (GLuint texture, GLenum target, GLsizei levels, GLenum internalformat, GLsizei width);
   1125 typedef void (GL_APIENTRYP PFNGLTEXTURESTORAGE2DEXTPROC) (GLuint texture, GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height);
   1126 typedef void (GL_APIENTRYP PFNGLTEXTURESTORAGE3DEXTPROC) (GLuint texture, GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth);
   1127 #endif
   1128 
   1129 /*------------------------------------------------------------------------*
   1130  * IMG extension functions
   1131  *------------------------------------------------------------------------*/
   1132 
   1133 /* GL_IMG_read_format */
   1134 #ifndef GL_IMG_read_format
   1135 #define GL_IMG_read_format 1
   1136 #endif
   1137 
   1138 /* GL_IMG_texture_compression_pvrtc */
   1139 #ifndef GL_IMG_texture_compression_pvrtc
   1140 #define GL_IMG_texture_compression_pvrtc 1
   1141 #endif
   1142 
   1143 /* GL_IMG_texture_env_enhanced_fixed_function */
   1144 #ifndef GL_IMG_texture_env_enhanced_fixed_function
   1145 #define GL_IMG_texture_env_enhanced_fixed_function 1
   1146 #endif
   1147 
   1148 /* GL_IMG_user_clip_plane */
   1149 #ifndef GL_IMG_user_clip_plane
   1150 #define GL_IMG_user_clip_plane 1
   1151 #ifdef GL_GLEXT_PROTOTYPES
   1152 GL_API void GL_APIENTRY glClipPlanefIMG (GLenum p, const GLfloat *eqn);
   1153 GL_API void GL_APIENTRY glClipPlanexIMG (GLenum p, const GLfixed *eqn);
   1154 #endif
   1155 typedef void (GL_APIENTRYP PFNGLCLIPPLANEFIMGPROC) (GLenum p, const GLfloat *eqn);
   1156 typedef void (GL_APIENTRYP PFNGLCLIPPLANEXIMGPROC) (GLenum p, const GLfixed *eqn);
   1157 #endif
   1158 
   1159 /* GL_IMG_multisampled_render_to_texture */
   1160 #ifndef GL_IMG_multisampled_render_to_texture
   1161 #define GL_IMG_multisampled_render_to_texture 1
   1162 #ifdef GL_GLEXT_PROTOTYPES
   1163 GL_API void GL_APIENTRY glRenderbufferStorageMultisampleIMG (GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height);
   1164 GL_API void GL_APIENTRY glFramebufferTexture2DMultisampleIMG (GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLsizei samples);
   1165 #endif
   1166 typedef void (GL_APIENTRYP PFNGLRENDERBUFFERSTORAGEMULTISAMPLEIMGPROC) (GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height);
   1167 typedef void (GL_APIENTRYP PFNGLFRAMEBUFFERTEXTURE2DMULTISAMPLEIMGPROC) (GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLsizei samples);
   1168 #endif
   1169 
   1170 /*------------------------------------------------------------------------*
   1171  * NV extension functions
   1172  *------------------------------------------------------------------------*/
   1173 
   1174 /* NV_fence */
   1175 #ifndef GL_NV_fence
   1176 #define GL_NV_fence 1
   1177 #ifdef GL_GLEXT_PROTOTYPES
   1178 GL_API void GL_APIENTRY glDeleteFencesNV (GLsizei n, const GLuint *fences);
   1179 GL_API void GL_APIENTRY glGenFencesNV (GLsizei n, GLuint *fences);
   1180 GL_API GLboolean GL_APIENTRY glIsFenceNV (GLuint fence);
   1181 GL_API GLboolean GL_APIENTRY glTestFenceNV (GLuint fence);
   1182 GL_API void GL_APIENTRY glGetFenceivNV (GLuint fence, GLenum pname, GLint *params);
   1183 GL_API void GL_APIENTRY glFinishFenceNV (GLuint fence);
   1184 GL_API void GL_APIENTRY glSetFenceNV (GLuint fence, GLenum condition);
   1185 #endif
   1186 typedef void (GL_APIENTRYP PFNGLDELETEFENCESNVPROC) (GLsizei n, const GLuint *fences);
   1187 typedef void (GL_APIENTRYP PFNGLGENFENCESNVPROC) (GLsizei n, GLuint *fences);
   1188 typedef GLboolean (GL_APIENTRYP PFNGLISFENCENVPROC) (GLuint fence);
   1189 typedef GLboolean (GL_APIENTRYP PFNGLTESTFENCENVPROC) (GLuint fence);
   1190 typedef void (GL_APIENTRYP PFNGLGETFENCEIVNVPROC) (GLuint fence, GLenum pname, GLint *params);
   1191 typedef void (GL_APIENTRYP PFNGLFINISHFENCENVPROC) (GLuint fence);
   1192 typedef void (GL_APIENTRYP PFNGLSETFENCENVPROC) (GLuint fence, GLenum condition);
   1193 #endif
   1194 
   1195 /*------------------------------------------------------------------------*
   1196  * QCOM extension functions
   1197  *------------------------------------------------------------------------*/
   1198 
   1199 /* GL_QCOM_driver_control */
   1200 #ifndef GL_QCOM_driver_control
   1201 #define GL_QCOM_driver_control 1
   1202 #ifdef GL_GLEXT_PROTOTYPES
   1203 GL_API void GL_APIENTRY glGetDriverControlsQCOM (GLint *num, GLsizei size, GLuint *driverControls);
   1204 GL_API void GL_APIENTRY glGetDriverControlStringQCOM (GLuint driverControl, GLsizei bufSize, GLsizei *length, GLchar *driverControlString);
   1205 GL_API void GL_APIENTRY glEnableDriverControlQCOM (GLuint driverControl);
   1206 GL_API void GL_APIENTRY glDisableDriverControlQCOM (GLuint driverControl);
   1207 #endif
   1208 typedef void (GL_APIENTRYP PFNGLGETDRIVERCONTROLSQCOMPROC) (GLint *num, GLsizei size, GLuint *driverControls);
   1209 typedef void (GL_APIENTRYP PFNGLGETDRIVERCONTROLSTRINGQCOMPROC) (GLuint driverControl, GLsizei bufSize, GLsizei *length, GLchar *driverControlString);
   1210 typedef void (GL_APIENTRYP PFNGLENABLEDRIVERCONTROLQCOMPROC) (GLuint driverControl);
   1211 typedef void (GL_APIENTRYP PFNGLDISABLEDRIVERCONTROLQCOMPROC) (GLuint driverControl);
   1212 #endif
   1213 
   1214 /* GL_QCOM_extended_get */
   1215 #ifndef GL_QCOM_extended_get
   1216 #define GL_QCOM_extended_get 1
   1217 #ifdef GL_GLEXT_PROTOTYPES
   1218 GL_API void GL_APIENTRY glExtGetTexturesQCOM (GLuint *textures, GLint maxTextures, GLint *numTextures);
   1219 GL_API void GL_APIENTRY glExtGetBuffersQCOM (GLuint *buffers, GLint maxBuffers, GLint *numBuffers);
   1220 GL_API void GL_APIENTRY glExtGetRenderbuffersQCOM (GLuint *renderbuffers, GLint maxRenderbuffers, GLint *numRenderbuffers);
   1221 GL_API void GL_APIENTRY glExtGetFramebuffersQCOM (GLuint *framebuffers, GLint maxFramebuffers, GLint *numFramebuffers);
   1222 GL_API void GL_APIENTRY glExtGetTexLevelParameterivQCOM (GLuint texture, GLenum face, GLint level, GLenum pname, GLint *params);
   1223 GL_API void GL_APIENTRY glExtTexObjectStateOverrideiQCOM (GLenum target, GLenum pname, GLint param);
   1224 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);
   1225 GL_API void GL_APIENTRY glExtGetBufferPointervQCOM (GLenum target, GLvoid **params);
   1226 #endif
   1227 typedef void (GL_APIENTRYP PFNGLEXTGETTEXTURESQCOMPROC) (GLuint *textures, GLint maxTextures, GLint *numTextures);
   1228 typedef void (GL_APIENTRYP PFNGLEXTGETBUFFERSQCOMPROC) (GLuint *buffers, GLint maxBuffers, GLint *numBuffers);
   1229 typedef void (GL_APIENTRYP PFNGLEXTGETRENDERBUFFERSQCOMPROC) (GLuint *renderbuffers, GLint maxRenderbuffers, GLint *numRenderbuffers);
   1230 typedef void (GL_APIENTRYP PFNGLEXTGETFRAMEBUFFERSQCOMPROC) (GLuint *framebuffers, GLint maxFramebuffers, GLint *numFramebuffers);
   1231 typedef void (GL_APIENTRYP PFNGLEXTGETTEXLEVELPARAMETERIVQCOMPROC) (GLuint texture, GLenum face, GLint level, GLenum pname, GLint *params);
   1232 typedef void (GL_APIENTRYP PFNGLEXTTEXOBJECTSTATEOVERRIDEIQCOMPROC) (GLenum target, GLenum pname, GLint param);
   1233 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);
   1234 typedef void (GL_APIENTRYP PFNGLEXTGETBUFFERPOINTERVQCOMPROC) (GLenum target, GLvoid **params);
   1235 #endif
   1236 
   1237 /* GL_QCOM_extended_get2 */
   1238 #ifndef GL_QCOM_extended_get2
   1239 #define GL_QCOM_extended_get2 1
   1240 #ifdef GL_GLEXT_PROTOTYPES
   1241 GL_API void GL_APIENTRY glExtGetShadersQCOM (GLuint *shaders, GLint maxShaders, GLint *numShaders);
   1242 GL_API void GL_APIENTRY glExtGetProgramsQCOM (GLuint *programs, GLint maxPrograms, GLint *numPrograms);
   1243 GL_API GLboolean GL_APIENTRY glExtIsProgramBinaryQCOM (GLuint program);
   1244 GL_API void GL_APIENTRY glExtGetProgramBinarySourceQCOM (GLuint program, GLenum shadertype, GLchar *source, GLint *length);
   1245 #endif
   1246 typedef void (GL_APIENTRYP PFNGLEXTGETSHADERSQCOMPROC) (GLuint *shaders, GLint maxShaders, GLint *numShaders);
   1247 typedef void (GL_APIENTRYP PFNGLEXTGETPROGRAMSQCOMPROC) (GLuint *programs, GLint maxPrograms, GLint *numPrograms);
   1248 typedef GLboolean (GL_APIENTRYP PFNGLEXTISPROGRAMBINARYQCOMPROC) (GLuint program);
   1249 typedef void (GL_APIENTRYP PFNGLEXTGETPROGRAMBINARYSOURCEQCOMPROC) (GLuint program, GLenum shadertype, GLchar *source, GLint *length);
   1250 #endif
   1251 
   1252 /* GL_QCOM_perfmon_global_mode */
   1253 #ifndef GL_QCOM_perfmon_global_mode
   1254 #define GL_QCOM_perfmon_global_mode 1
   1255 #endif
   1256 
   1257 /* GL_QCOM_writeonly_rendering */
   1258 #ifndef GL_QCOM_writeonly_rendering
   1259 #define GL_QCOM_writeonly_rendering 1
   1260 #endif
   1261 
   1262 /* GL_QCOM_tiled_rendering */
   1263 #ifndef GL_QCOM_tiled_rendering
   1264 #define GL_QCOM_tiled_rendering 1
   1265 #ifdef GL_GLEXT_PROTOTYPES
   1266 GL_API void GL_APIENTRY glStartTilingQCOM (GLuint x, GLuint y, GLuint width, GLuint height, GLbitfield preserveMask);
   1267 GL_API void GL_APIENTRY glEndTilingQCOM (GLbitfield preserveMask);
   1268 #endif
   1269 typedef void (GL_APIENTRYP PFNGLSTARTTILINGQCOMPROC) (GLuint x, GLuint y, GLuint width, GLuint height, GLbitfield preserveMask);
   1270 typedef void (GL_APIENTRYP PFNGLENDTILINGQCOMPROC) (GLbitfield preserveMask);
   1271 #endif
   1272 
   1273 #ifdef __cplusplus
   1274 }
   1275 #endif
   1276 
   1277 #endif /* __glext_h_ */
   1278 
   1279