Home | History | Annotate | Download | only in GLES
      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