Home | History | Annotate | Download | only in GLES2
      1 #ifndef __gl2ext_h_
      2 #define __gl2ext_h_
      3 
      4 /* $Revision: 10798 $ on $Date:: 2010-03-19 17:34:30 -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_compressed_ETC1_RGB8_texture */
     24 #ifndef GL_OES_compressed_ETC1_RGB8_texture
     25 #define GL_ETC1_RGB8_OES                                        0x8D64
     26 #endif
     27 
     28 /* GL_OES_compressed_paletted_texture */
     29 #ifndef GL_OES_compressed_paletted_texture
     30 #define GL_PALETTE4_RGB8_OES                                    0x8B90
     31 #define GL_PALETTE4_RGBA8_OES                                   0x8B91
     32 #define GL_PALETTE4_R5_G6_B5_OES                                0x8B92
     33 #define GL_PALETTE4_RGBA4_OES                                   0x8B93
     34 #define GL_PALETTE4_RGB5_A1_OES                                 0x8B94
     35 #define GL_PALETTE8_RGB8_OES                                    0x8B95
     36 #define GL_PALETTE8_RGBA8_OES                                   0x8B96
     37 #define GL_PALETTE8_R5_G6_B5_OES                                0x8B97
     38 #define GL_PALETTE8_RGBA4_OES                                   0x8B98
     39 #define GL_PALETTE8_RGB5_A1_OES                                 0x8B99
     40 #endif
     41 
     42 /* GL_OES_depth24 */
     43 #ifndef GL_OES_depth24
     44 #define GL_DEPTH_COMPONENT24_OES                                0x81A6
     45 #endif
     46 
     47 /* GL_OES_depth32 */
     48 #ifndef GL_OES_depth32
     49 #define GL_DEPTH_COMPONENT32_OES                                0x81A7
     50 #endif
     51 
     52 /* GL_OES_depth_texture */
     53 /* No new tokens introduced by this extension. */
     54 
     55 /* GL_OES_EGL_image */
     56 #ifndef GL_OES_EGL_image
     57 typedef void* GLeglImageOES;
     58 #endif
     59 
     60 /* GL_OES_element_index_uint */
     61 #ifndef GL_OES_element_index_uint
     62 #define GL_UNSIGNED_INT                                         0x1405
     63 #endif
     64 
     65 /* GL_OES_get_program_binary */
     66 #ifndef GL_OES_get_program_binary
     67 #define GL_PROGRAM_BINARY_LENGTH_OES                            0x8741
     68 #define GL_NUM_PROGRAM_BINARY_FORMATS_OES                       0x87FE
     69 #define GL_PROGRAM_BINARY_FORMATS_OES                           0x87FF
     70 #endif
     71 
     72 /* GL_OES_mapbuffer */
     73 #ifndef GL_OES_mapbuffer
     74 #define GL_WRITE_ONLY_OES                                       0x88B9
     75 #define GL_BUFFER_ACCESS_OES                                    0x88BB
     76 #define GL_BUFFER_MAPPED_OES                                    0x88BC
     77 #define GL_BUFFER_MAP_POINTER_OES                               0x88BD
     78 #endif
     79 
     80 /* GL_OES_packed_depth_stencil */
     81 #ifndef GL_OES_packed_depth_stencil
     82 #define GL_DEPTH_STENCIL_OES                                    0x84F9
     83 #define GL_UNSIGNED_INT_24_8_OES                                0x84FA
     84 #define GL_DEPTH24_STENCIL8_OES                                 0x88F0
     85 #endif
     86 
     87 /* GL_OES_rgb8_rgba8 */
     88 #ifndef GL_OES_rgb8_rgba8
     89 #define GL_RGB8_OES                                             0x8051
     90 #define GL_RGBA8_OES                                            0x8058
     91 #endif
     92 
     93 /* GL_OES_standard_derivatives */
     94 #ifndef GL_OES_standard_derivatives
     95 #define GL_FRAGMENT_SHADER_DERIVATIVE_HINT_OES                  0x8B8B
     96 #endif
     97 
     98 /* GL_OES_stencil1 */
     99 #ifndef GL_OES_stencil1
    100 #define GL_STENCIL_INDEX1_OES                                   0x8D46
    101 #endif
    102 
    103 /* GL_OES_stencil4 */
    104 #ifndef GL_OES_stencil4
    105 #define GL_STENCIL_INDEX4_OES                                   0x8D47
    106 #endif
    107 
    108 /* GL_OES_texture_3D */
    109 #ifndef GL_OES_texture_3D
    110 #define GL_TEXTURE_WRAP_R_OES                                   0x8072
    111 #define GL_TEXTURE_3D_OES                                       0x806F
    112 #define GL_TEXTURE_BINDING_3D_OES                               0x806A
    113 #define GL_MAX_3D_TEXTURE_SIZE_OES                              0x8073
    114 #define GL_SAMPLER_3D_OES                                       0x8B5F
    115 #define GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_3D_ZOFFSET_OES        0x8CD4
    116 #endif
    117 
    118 /* GL_OES_texture_float */
    119 /* No new tokens introduced by this extension. */
    120 
    121 /* GL_OES_texture_float_linear */
    122 /* No new tokens introduced by this extension. */
    123 
    124 /* GL_OES_texture_half_float */
    125 #ifndef GL_OES_texture_half_float
    126 #define GL_HALF_FLOAT_OES                                       0x8D61
    127 #endif
    128 
    129 /* GL_OES_texture_half_float_linear */
    130 /* No new tokens introduced by this extension. */
    131 
    132 /* GL_OES_texture_npot */
    133 /* No new tokens introduced by this extension. */
    134 
    135 /* GL_OES_vertex_array_object */
    136 #ifndef GL_OES_vertex_array_object
    137 #define GL_VERTEX_ARRAY_BINDING_OES                             0x85B5
    138 #endif
    139 
    140 /* GL_OES_vertex_half_float */
    141 /* GL_HALF_FLOAT_OES defined in GL_OES_texture_half_float already. */
    142 
    143 /* GL_OES_vertex_type_10_10_10_2 */
    144 #ifndef GL_OES_vertex_type_10_10_10_2
    145 #define GL_UNSIGNED_INT_10_10_10_2_OES                          0x8DF6
    146 #define GL_INT_10_10_10_2_OES                                   0x8DF7
    147 #endif
    148 
    149 /*------------------------------------------------------------------------*
    150  * AMD extension tokens
    151  *------------------------------------------------------------------------*/
    152 
    153 /* GL_AMD_compressed_3DC_texture */
    154 #ifndef GL_AMD_compressed_3DC_texture
    155 #define GL_3DC_X_AMD                                            0x87F9
    156 #define GL_3DC_XY_AMD                                           0x87FA
    157 #endif
    158 
    159 /* GL_AMD_compressed_ATC_texture */
    160 #ifndef GL_AMD_compressed_ATC_texture
    161 #define GL_ATC_RGB_AMD                                          0x8C92
    162 #define GL_ATC_RGBA_EXPLICIT_ALPHA_AMD                          0x8C93
    163 #define GL_ATC_RGBA_INTERPOLATED_ALPHA_AMD                      0x87EE
    164 #endif
    165 
    166 /* GL_AMD_performance_monitor */
    167 #ifndef GL_AMD_performance_monitor
    168 #define GL_COUNTER_TYPE_AMD                                     0x8BC0
    169 #define GL_COUNTER_RANGE_AMD                                    0x8BC1
    170 #define GL_UNSIGNED_INT64_AMD                                   0x8BC2
    171 #define GL_PERCENTAGE_AMD                                       0x8BC3
    172 #define GL_PERFMON_RESULT_AVAILABLE_AMD                         0x8BC4
    173 #define GL_PERFMON_RESULT_SIZE_AMD                              0x8BC5
    174 #define GL_PERFMON_RESULT_AMD                                   0x8BC6
    175 #endif
    176 
    177 /* GL_AMD_program_binary_Z400 */
    178 #ifndef GL_AMD_program_binary_Z400
    179 #define GL_Z400_BINARY_AMD                                      0x8740
    180 #endif
    181 
    182 /*------------------------------------------------------------------------*
    183  * EXT extension tokens
    184  *------------------------------------------------------------------------*/
    185 
    186 /* GL_EXT_blend_minmax */
    187 #ifndef GL_EXT_blend_minmax
    188 #define GL_MIN_EXT                                              0x8007
    189 #define GL_MAX_EXT                                              0x8008
    190 #endif
    191 
    192 /* GL_EXT_discard_framebuffer */
    193 #ifndef GL_EXT_discard_framebuffer
    194 #define GL_COLOR_EXT                                            0x1800
    195 #define GL_DEPTH_EXT                                            0x1801
    196 #define GL_STENCIL_EXT                                          0x1802
    197 #endif
    198 
    199 /* GL_EXT_multi_draw_arrays */
    200 /* No new tokens introduced by this extension. */
    201 
    202 /* GL_EXT_read_format_bgra */
    203 #ifndef GL_EXT_read_format_bgra
    204 #define GL_BGRA_EXT                                             0x80E1
    205 #define GL_UNSIGNED_SHORT_4_4_4_4_REV_EXT                       0x8365
    206 #define GL_UNSIGNED_SHORT_1_5_5_5_REV_EXT                       0x8366
    207 #endif
    208 
    209 /* GL_EXT_texture_filter_anisotropic */
    210 #ifndef GL_EXT_texture_filter_anisotropic
    211 #define GL_TEXTURE_MAX_ANISOTROPY_EXT                           0x84FE
    212 #define GL_MAX_TEXTURE_MAX_ANISOTROPY_EXT                       0x84FF
    213 #endif
    214 
    215 /* GL_EXT_texture_format_BGRA8888 */
    216 #ifndef GL_EXT_texture_format_BGRA8888
    217 #define GL_BGRA_EXT                                             0x80E1
    218 #endif
    219 
    220 /* GL_EXT_texture_type_2_10_10_10_REV */
    221 #ifndef GL_EXT_texture_type_2_10_10_10_REV
    222 #define GL_UNSIGNED_INT_2_10_10_10_REV_EXT                      0x8368
    223 #endif
    224 
    225 /* GL_EXT_texture_compression_dxt1 */
    226 #ifndef GL_EXT_texture_compression_dxt1
    227 #define GL_COMPRESSED_RGB_S3TC_DXT1_EXT                         0x83F0
    228 #define GL_COMPRESSED_RGBA_S3TC_DXT1_EXT                        0x83F1
    229 #endif
    230 
    231 /*------------------------------------------------------------------------*
    232  * IMG extension tokens
    233  *------------------------------------------------------------------------*/
    234 
    235 /* GL_IMG_program_binary */
    236 #ifndef GL_IMG_program_binary
    237 #define GL_SGX_PROGRAM_BINARY_IMG                               0x9130
    238 #endif
    239 
    240 /* GL_IMG_read_format */
    241 #ifndef GL_IMG_read_format
    242 #define GL_BGRA_IMG                                             0x80E1
    243 #define GL_UNSIGNED_SHORT_4_4_4_4_REV_IMG                       0x8365
    244 #endif
    245 
    246 /* GL_IMG_shader_binary */
    247 #ifndef GL_IMG_shader_binary
    248 #define GL_SGX_BINARY_IMG                                       0x8C0A
    249 #endif
    250 
    251 /* GL_IMG_texture_compression_pvrtc */
    252 #ifndef GL_IMG_texture_compression_pvrtc
    253 #define GL_COMPRESSED_RGB_PVRTC_4BPPV1_IMG                      0x8C00
    254 #define GL_COMPRESSED_RGB_PVRTC_2BPPV1_IMG                      0x8C01
    255 #define GL_COMPRESSED_RGBA_PVRTC_4BPPV1_IMG                     0x8C02
    256 #define GL_COMPRESSED_RGBA_PVRTC_2BPPV1_IMG                     0x8C03
    257 #endif
    258 
    259 /*------------------------------------------------------------------------*
    260  * NV extension tokens
    261  *------------------------------------------------------------------------*/
    262 
    263 /* GL_NV_fence */
    264 #ifndef GL_NV_fence
    265 #define GL_ALL_COMPLETED_NV                                     0x84F2
    266 #define GL_FENCE_STATUS_NV                                      0x84F3
    267 #define GL_FENCE_CONDITION_NV                                   0x84F4
    268 #endif
    269 
    270 /* GL_NV_coverage_sample */
    271 #ifndef GL_NV_coverage_sample
    272 #define GL_COVERAGE_COMPONENT_NV                                0x8ED0
    273 #define GL_COVERAGE_COMPONENT4_NV                               0x8ED1
    274 #define GL_COVERAGE_ATTACHMENT_NV                               0x8ED2
    275 #define GL_COVERAGE_BUFFERS_NV                                  0x8ED3
    276 #define GL_COVERAGE_SAMPLES_NV                                  0x8ED4
    277 #define GL_COVERAGE_ALL_FRAGMENTS_NV                            0x8ED5
    278 #define GL_COVERAGE_EDGE_FRAGMENTS_NV                           0x8ED6
    279 #define GL_COVERAGE_AUTOMATIC_NV                                0x8ED7
    280 #define GL_COVERAGE_BUFFER_BIT_NV                               0x8000
    281 #endif
    282 
    283 /* GL_NV_depth_nonlinear */
    284 #ifndef GL_NV_depth_nonlinear
    285 #define GL_DEPTH_COMPONENT16_NONLINEAR_NV                       0x8E2C
    286 #endif
    287 
    288 /*------------------------------------------------------------------------*
    289  * QCOM extension tokens
    290  *------------------------------------------------------------------------*/
    291 
    292 /* GL_QCOM_driver_control */
    293 /* No new tokens introduced by this extension. */
    294 
    295 /* GL_QCOM_extended_get */
    296 #ifndef GL_QCOM_extended_get
    297 #define GL_TEXTURE_WIDTH_QCOM                                   0x8BD2
    298 #define GL_TEXTURE_HEIGHT_QCOM                                  0x8BD3
    299 #define GL_TEXTURE_DEPTH_QCOM                                   0x8BD4
    300 #define GL_TEXTURE_INTERNAL_FORMAT_QCOM                         0x8BD5
    301 #define GL_TEXTURE_FORMAT_QCOM                                  0x8BD6
    302 #define GL_TEXTURE_TYPE_QCOM                                    0x8BD7
    303 #define GL_TEXTURE_IMAGE_VALID_QCOM                             0x8BD8
    304 #define GL_TEXTURE_NUM_LEVELS_QCOM                              0x8BD9
    305 #define GL_TEXTURE_TARGET_QCOM                                  0x8BDA
    306 #define GL_TEXTURE_OBJECT_VALID_QCOM                            0x8BDB
    307 #define GL_STATE_RESTORE                                        0x8BDC
    308 #endif
    309 
    310 /* GL_QCOM_extended_get2 */
    311 /* No new tokens introduced by this extension. */
    312 
    313 /* GL_QCOM_perfmon_global_mode */
    314 #ifndef GL_QCOM_perfmon_global_mode
    315 #define GL_PERFMON_GLOBAL_MODE_QCOM                             0x8FA0
    316 #endif
    317 
    318 /* GL_QCOM_writeonly_rendering */
    319 #ifndef GL_QCOM_writeonly_rendering
    320 #define GL_WRITEONLY_RENDERING_QCOM                             0x8823
    321 #endif
    322 
    323 /* GL_QCOM_tiled_rendering */
    324 #ifndef GL_QCOM_tiled_rendering
    325 #define GL_COLOR_BUFFER_BIT0_QCOM                               0x00000001
    326 #define GL_COLOR_BUFFER_BIT1_QCOM                               0x00000002
    327 #define GL_COLOR_BUFFER_BIT2_QCOM                               0x00000004
    328 #define GL_COLOR_BUFFER_BIT3_QCOM                               0x00000008
    329 #define GL_COLOR_BUFFER_BIT4_QCOM                               0x00000010
    330 #define GL_COLOR_BUFFER_BIT5_QCOM                               0x00000020
    331 #define GL_COLOR_BUFFER_BIT6_QCOM                               0x00000040
    332 #define GL_COLOR_BUFFER_BIT7_QCOM                               0x00000080
    333 #define GL_DEPTH_BUFFER_BIT0_QCOM                               0x00000100
    334 #define GL_DEPTH_BUFFER_BIT1_QCOM                               0x00000200
    335 #define GL_DEPTH_BUFFER_BIT2_QCOM                               0x00000400
    336 #define GL_DEPTH_BUFFER_BIT3_QCOM                               0x00000800
    337 #define GL_DEPTH_BUFFER_BIT4_QCOM                               0x00001000
    338 #define GL_DEPTH_BUFFER_BIT5_QCOM                               0x00002000
    339 #define GL_DEPTH_BUFFER_BIT6_QCOM                               0x00004000
    340 #define GL_DEPTH_BUFFER_BIT7_QCOM                               0x00008000
    341 #define GL_STENCIL_BUFFER_BIT0_QCOM                             0x00010000
    342 #define GL_STENCIL_BUFFER_BIT1_QCOM                             0x00020000
    343 #define GL_STENCIL_BUFFER_BIT2_QCOM                             0x00040000
    344 #define GL_STENCIL_BUFFER_BIT3_QCOM                             0x00080000
    345 #define GL_STENCIL_BUFFER_BIT4_QCOM                             0x00100000
    346 #define GL_STENCIL_BUFFER_BIT5_QCOM                             0x00200000
    347 #define GL_STENCIL_BUFFER_BIT6_QCOM                             0x00400000
    348 #define GL_STENCIL_BUFFER_BIT7_QCOM                             0x00800000
    349 #define GL_MULTISAMPLE_BUFFER_BIT0_QCOM                         0x01000000
    350 #define GL_MULTISAMPLE_BUFFER_BIT1_QCOM                         0x02000000
    351 #define GL_MULTISAMPLE_BUFFER_BIT2_QCOM                         0x04000000
    352 #define GL_MULTISAMPLE_BUFFER_BIT3_QCOM                         0x08000000
    353 #define GL_MULTISAMPLE_BUFFER_BIT4_QCOM                         0x10000000
    354 #define GL_MULTISAMPLE_BUFFER_BIT5_QCOM                         0x20000000
    355 #define GL_MULTISAMPLE_BUFFER_BIT6_QCOM                         0x40000000
    356 #define GL_MULTISAMPLE_BUFFER_BIT7_QCOM                         0x80000000
    357 #endif
    358 
    359 /*------------------------------------------------------------------------*
    360  * ANGLE extension tokens
    361  *------------------------------------------------------------------------*/
    362 
    363 /* GL_ANGLE_framebuffer_blit */
    364 #ifndef GL_ANGLE_framebuffer_blit
    365 #define GL_READ_FRAMEBUFFER_ANGLE         0x8CA8
    366 #define GL_DRAW_FRAMEBUFFER_ANGLE         0x8CA9
    367 #define GL_DRAW_FRAMEBUFFER_BINDING_ANGLE 0x8CA6 // alias GL_FRAMEBUFFER_BINDING
    368 #define GL_READ_FRAMEBUFFER_BINDING_ANGLE 0x8CAA
    369 #endif
    370 
    371 /* GL_ANGLE_framebuffer_multisample */
    372 #ifndef GL_ANGLE_framebuffer_multisample
    373 #define GL_RENDERBUFFER_SAMPLES_ANGLE                   0x8CAB
    374 #define GL_FRAMEBUFFER_INCOMPLETE_MULTISAMPLE_ANGLE     0x8D56
    375 #define GL_MAX_SAMPLES_ANGLE                            0x8D57
    376 #endif
    377 
    378 /*------------------------------------------------------------------------*
    379  * End of extension tokens, start of corresponding extension functions
    380  *------------------------------------------------------------------------*/
    381 
    382 /*------------------------------------------------------------------------*
    383  * OES extension functions
    384  *------------------------------------------------------------------------*/
    385 
    386 /* GL_OES_compressed_ETC1_RGB8_texture */
    387 #ifndef GL_OES_compressed_ETC1_RGB8_texture
    388 #define GL_OES_compressed_ETC1_RGB8_texture 1
    389 #endif
    390 
    391 /* GL_OES_compressed_paletted_texture */
    392 #ifndef GL_OES_compressed_paletted_texture
    393 #define GL_OES_compressed_paletted_texture 1
    394 #endif
    395 
    396 /* GL_OES_depth24 */
    397 #ifndef GL_OES_depth24
    398 #define GL_OES_depth24 1
    399 #endif
    400 
    401 /* GL_OES_depth32 */
    402 #ifndef GL_OES_depth32
    403 #define GL_OES_depth32 1
    404 #endif
    405 
    406 /* GL_OES_depth_texture */
    407 #ifndef GL_OES_depth_texture
    408 #define GL_OES_depth_texture 1
    409 #endif
    410 
    411 /* GL_OES_EGL_image */
    412 #ifndef GL_OES_EGL_image
    413 #define GL_OES_EGL_image 1
    414 #ifdef GL_GLEXT_PROTOTYPES
    415 GL_APICALL void GL_APIENTRY glEGLImageTargetTexture2DOES (GLenum target, GLeglImageOES image);
    416 GL_APICALL void GL_APIENTRY glEGLImageTargetRenderbufferStorageOES (GLenum target, GLeglImageOES image);
    417 #endif
    418 typedef void (GL_APIENTRYP PFNGLEGLIMAGETARGETTEXTURE2DOESPROC) (GLenum target, GLeglImageOES image);
    419 typedef void (GL_APIENTRYP PFNGLEGLIMAGETARGETRENDERBUFFERSTORAGEOESPROC) (GLenum target, GLeglImageOES image);
    420 #endif
    421 
    422 /* GL_OES_element_index_uint */
    423 #ifndef GL_OES_element_index_uint
    424 #define GL_OES_element_index_uint 1
    425 #endif
    426 
    427 /* GL_OES_fbo_render_mipmap */
    428 #ifndef GL_OES_fbo_render_mipmap
    429 #define GL_OES_fbo_render_mipmap 1
    430 #endif
    431 
    432 /* GL_OES_fragment_precision_high */
    433 #ifndef GL_OES_fragment_precision_high
    434 #define GL_OES_fragment_precision_high 1
    435 #endif
    436 
    437 /* GL_OES_get_program_binary */
    438 #ifndef GL_OES_get_program_binary
    439 #define GL_OES_get_program_binary 1
    440 #ifdef GL_GLEXT_PROTOTYPES
    441 GL_APICALL void GL_APIENTRY glGetProgramBinaryOES (GLuint program, GLsizei bufSize, GLsizei *length, GLenum *binaryFormat, GLvoid *binary);
    442 GL_APICALL void GL_APIENTRY glProgramBinaryOES (GLuint program, GLenum binaryFormat, const GLvoid *binary, GLint length);
    443 #endif
    444 typedef void (GL_APIENTRYP PFNGLGETPROGRAMBINARYOESPROC) (GLuint program, GLsizei bufSize, GLsizei *length, GLenum *binaryFormat, GLvoid *binary);
    445 typedef void (GL_APIENTRYP PFNGLPROGRAMBINARYOESPROC) (GLuint program, GLenum binaryFormat, const GLvoid *binary, GLint length);
    446 #endif
    447 
    448 /* GL_OES_mapbuffer */
    449 #ifndef GL_OES_mapbuffer
    450 #define GL_OES_mapbuffer 1
    451 #ifdef GL_GLEXT_PROTOTYPES
    452 GL_APICALL void* GL_APIENTRY glMapBufferOES (GLenum target, GLenum access);
    453 GL_APICALL GLboolean GL_APIENTRY glUnmapBufferOES (GLenum target);
    454 GL_APICALL void GL_APIENTRY glGetBufferPointervOES (GLenum target, GLenum pname, GLvoid** params);
    455 #endif
    456 typedef void* (GL_APIENTRYP PFNGLMAPBUFFEROESPROC) (GLenum target, GLenum access);
    457 typedef GLboolean (GL_APIENTRYP PFNGLUNMAPBUFFEROESPROC) (GLenum target);
    458 typedef void (GL_APIENTRYP PFNGLGETBUFFERPOINTERVOESPROC) (GLenum target, GLenum pname, GLvoid** params);
    459 #endif
    460 
    461 /* GL_OES_packed_depth_stencil */
    462 #ifndef GL_OES_packed_depth_stencil
    463 #define GL_OES_packed_depth_stencil 1
    464 #endif
    465 
    466 /* GL_OES_rgb8_rgba8 */
    467 #ifndef GL_OES_rgb8_rgba8
    468 #define GL_OES_rgb8_rgba8 1
    469 #endif
    470 
    471 /* GL_OES_standard_derivatives */
    472 #ifndef GL_OES_standard_derivatives
    473 #define GL_OES_standard_derivatives 1
    474 #endif
    475 
    476 /* GL_OES_stencil1 */
    477 #ifndef GL_OES_stencil1
    478 #define GL_OES_stencil1 1
    479 #endif
    480 
    481 /* GL_OES_stencil4 */
    482 #ifndef GL_OES_stencil4
    483 #define GL_OES_stencil4 1
    484 #endif
    485 
    486 /* GL_OES_texture_3D */
    487 #ifndef GL_OES_texture_3D
    488 #define GL_OES_texture_3D 1
    489 #ifdef GL_GLEXT_PROTOTYPES
    490 GL_APICALL void GL_APIENTRY glTexImage3DOES (GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLenum format, GLenum type, const GLvoid* pixels);
    491 GL_APICALL void GL_APIENTRY glTexSubImage3DOES (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const GLvoid* pixels);
    492 GL_APICALL void GL_APIENTRY glCopyTexSubImage3DOES (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height);
    493 GL_APICALL void GL_APIENTRY glCompressedTexImage3DOES (GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, const GLvoid* data);
    494 GL_APICALL void GL_APIENTRY glCompressedTexSubImage3DOES (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, const GLvoid* data);
    495 GL_APICALL void GL_APIENTRY glFramebufferTexture3DOES (GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLint zoffset);
    496 #endif
    497 typedef void (GL_APIENTRYP PFNGLTEXIMAGE3DOESPROC) (GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLenum format, GLenum type, const GLvoid* pixels);
    498 typedef void (GL_APIENTRYP PFNGLTEXSUBIMAGE3DOESPROC) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const GLvoid* pixels);
    499 typedef void (GL_APIENTRYP PFNGLCOPYTEXSUBIMAGE3DOESPROC) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height);
    500 typedef void (GL_APIENTRYP PFNGLCOMPRESSEDTEXIMAGE3DOESPROC) (GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, const GLvoid* data);
    501 typedef void (GL_APIENTRYP PFNGLCOMPRESSEDTEXSUBIMAGE3DOESPROC) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, const GLvoid* data);
    502 typedef void (GL_APIENTRYP PFNGLFRAMEBUFFERTEXTURE3DOES) (GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLint zoffset);
    503 #endif
    504 
    505 /* GL_OES_texture_float */
    506 #ifndef GL_OES_texture_float
    507 #define GL_OES_texture_float 1
    508 #endif
    509 
    510 /* GL_OES_texture_float_linear */
    511 #ifndef GL_OES_texture_float_linear
    512 #define GL_OES_texture_float_linear 1
    513 #endif
    514 
    515 /* GL_OES_texture_half_float */
    516 #ifndef GL_OES_texture_half_float
    517 #define GL_OES_texture_half_float 1
    518 #endif
    519 
    520 /* GL_OES_texture_half_float_linear */
    521 #ifndef GL_OES_texture_half_float_linear
    522 #define GL_OES_texture_half_float_linear 1
    523 #endif
    524 
    525 /* GL_OES_texture_npot */
    526 #ifndef GL_OES_texture_npot
    527 #define GL_OES_texture_npot 1
    528 #endif
    529 
    530 /* GL_OES_vertex_array_object */
    531 #ifndef GL_OES_vertex_array_object
    532 #define GL_OES_vertex_array_object 1
    533 #ifdef GL_GLEXT_PROTOTYPES
    534 GL_APICALL void GL_APIENTRY glBindVertexArrayOES (GLuint array);
    535 GL_APICALL void GL_APIENTRY glDeleteVertexArraysOES (GLsizei n, const GLuint *arrays);
    536 GL_APICALL void GL_APIENTRY glGenVertexArraysOES (GLsizei n, GLuint *arrays);
    537 GL_APICALL GLboolean GL_APIENTRY glIsVertexArrayOES (GLuint array);
    538 #endif
    539 typedef void (GL_APIENTRYP PFNGLBINDVERTEXARRAYOESPROC) (GLuint array);
    540 typedef void (GL_APIENTRYP PFNGLDELETEVERTEXARRAYSOESPROC) (GLsizei n, const GLuint *arrays);
    541 typedef void (GL_APIENTRYP PFNGLGENVERTEXARRAYSOESPROC) (GLsizei n, GLuint *arrays);
    542 typedef GLboolean (GL_APIENTRYP PFNGLISVERTEXARRAYOESPROC) (GLuint array);
    543 #endif
    544 
    545 /* GL_OES_vertex_half_float */
    546 #ifndef GL_OES_vertex_half_float
    547 #define GL_OES_vertex_half_float 1
    548 #endif
    549 
    550 /* GL_OES_vertex_type_10_10_10_2 */
    551 #ifndef GL_OES_vertex_type_10_10_10_2
    552 #define GL_OES_vertex_type_10_10_10_2 1
    553 #endif
    554 
    555 /*------------------------------------------------------------------------*
    556  * AMD extension functions
    557  *------------------------------------------------------------------------*/
    558 
    559 /* GL_AMD_compressed_3DC_texture */
    560 #ifndef GL_AMD_compressed_3DC_texture
    561 #define GL_AMD_compressed_3DC_texture 1
    562 #endif
    563 
    564 /* GL_AMD_compressed_ATC_texture */
    565 #ifndef GL_AMD_compressed_ATC_texture
    566 #define GL_AMD_compressed_ATC_texture 1
    567 #endif
    568 
    569 /* AMD_performance_monitor */
    570 #ifndef GL_AMD_performance_monitor
    571 #define GL_AMD_performance_monitor 1
    572 #ifdef GL_GLEXT_PROTOTYPES
    573 GL_APICALL void GL_APIENTRY glGetPerfMonitorGroupsAMD (GLint *numGroups, GLsizei groupsSize, GLuint *groups);
    574 GL_APICALL void GL_APIENTRY glGetPerfMonitorCountersAMD (GLuint group, GLint *numCounters, GLint *maxActiveCounters, GLsizei counterSize, GLuint *counters);
    575 GL_APICALL void GL_APIENTRY glGetPerfMonitorGroupStringAMD (GLuint group, GLsizei bufSize, GLsizei *length, GLchar *groupString);
    576 GL_APICALL void GL_APIENTRY glGetPerfMonitorCounterStringAMD (GLuint group, GLuint counter, GLsizei bufSize, GLsizei *length, GLchar *counterString);
    577 GL_APICALL void GL_APIENTRY glGetPerfMonitorCounterInfoAMD (GLuint group, GLuint counter, GLenum pname, GLvoid *data);
    578 GL_APICALL void GL_APIENTRY glGenPerfMonitorsAMD (GLsizei n, GLuint *monitors);
    579 GL_APICALL void GL_APIENTRY glDeletePerfMonitorsAMD (GLsizei n, GLuint *monitors);
    580 GL_APICALL void GL_APIENTRY glSelectPerfMonitorCountersAMD (GLuint monitor, GLboolean enable, GLuint group, GLint numCounters, GLuint *countersList);
    581 GL_APICALL void GL_APIENTRY glBeginPerfMonitorAMD (GLuint monitor);
    582 GL_APICALL void GL_APIENTRY glEndPerfMonitorAMD (GLuint monitor);
    583 GL_APICALL void GL_APIENTRY glGetPerfMonitorCounterDataAMD (GLuint monitor, GLenum pname, GLsizei dataSize, GLuint *data, GLint *bytesWritten);
    584 #endif
    585 typedef void (GL_APIENTRYP PFNGLGETPERFMONITORGROUPSAMDPROC) (GLint *numGroups, GLsizei groupsSize, GLuint *groups);
    586 typedef void (GL_APIENTRYP PFNGLGETPERFMONITORCOUNTERSAMDPROC) (GLuint group, GLint *numCounters, GLint *maxActiveCounters, GLsizei counterSize, GLuint *counters);
    587 typedef void (GL_APIENTRYP PFNGLGETPERFMONITORGROUPSTRINGAMDPROC) (GLuint group, GLsizei bufSize, GLsizei *length, GLchar *groupString);
    588 typedef void (GL_APIENTRYP PFNGLGETPERFMONITORCOUNTERSTRINGAMDPROC) (GLuint group, GLuint counter, GLsizei bufSize, GLsizei *length, GLchar *counterString);
    589 typedef void (GL_APIENTRYP PFNGLGETPERFMONITORCOUNTERINFOAMDPROC) (GLuint group, GLuint counter, GLenum pname, GLvoid *data);
    590 typedef void (GL_APIENTRYP PFNGLGENPERFMONITORSAMDPROC) (GLsizei n, GLuint *monitors);
    591 typedef void (GL_APIENTRYP PFNGLDELETEPERFMONITORSAMDPROC) (GLsizei n, GLuint *monitors);
    592 typedef void (GL_APIENTRYP PFNGLSELECTPERFMONITORCOUNTERSAMDPROC) (GLuint monitor, GLboolean enable, GLuint group, GLint numCounters, GLuint *countersList);
    593 typedef void (GL_APIENTRYP PFNGLBEGINPERFMONITORAMDPROC) (GLuint monitor);
    594 typedef void (GL_APIENTRYP PFNGLENDPERFMONITORAMDPROC) (GLuint monitor);
    595 typedef void (GL_APIENTRYP PFNGLGETPERFMONITORCOUNTERDATAAMDPROC) (GLuint monitor, GLenum pname, GLsizei dataSize, GLuint *data, GLint *bytesWritten);
    596 #endif
    597 
    598 /* GL_AMD_program_binary_Z400 */
    599 #ifndef GL_AMD_program_binary_Z400
    600 #define GL_AMD_program_binary_Z400 1
    601 #endif
    602 
    603 /*------------------------------------------------------------------------*
    604  * EXT extension functions
    605  *------------------------------------------------------------------------*/
    606 
    607 /* GL_EXT_blend_minmax */
    608 #ifndef GL_EXT_blend_minmax
    609 #define GL_EXT_blend_minmax 1
    610 #endif
    611 
    612 /* GL_EXT_discard_framebuffer */
    613 #ifndef GL_EXT_discard_framebuffer
    614 #define GL_EXT_discard_framebuffer 1
    615 #ifdef GL_GLEXT_PROTOTYPES
    616 GL_APICALL void GL_APIENTRY glDiscardFramebufferEXT (GLenum target, GLsizei numAttachments, const GLenum *attachments);
    617 #endif
    618 typedef void (GL_APIENTRYP PFNGLDISCARDFRAMEBUFFEREXTPROC) (GLenum target, GLsizei numAttachments, const GLenum *attachments);
    619 #endif
    620 
    621 #ifndef GL_EXT_multi_draw_arrays
    622 #define GL_EXT_multi_draw_arrays 1
    623 #ifdef GL_GLEXT_PROTOTYPES
    624 GL_APICALL void GL_APIENTRY glMultiDrawArraysEXT (GLenum, GLint *, GLsizei *, GLsizei);
    625 GL_APICALL void GL_APIENTRY glMultiDrawElementsEXT (GLenum, const GLsizei *, GLenum, const GLvoid* *, GLsizei);
    626 #endif /* GL_GLEXT_PROTOTYPES */
    627 typedef void (GL_APIENTRYP PFNGLMULTIDRAWARRAYSEXTPROC) (GLenum mode, GLint *first, GLsizei *count, GLsizei primcount);
    628 typedef void (GL_APIENTRYP PFNGLMULTIDRAWELEMENTSEXTPROC) (GLenum mode, const GLsizei *count, GLenum type, const GLvoid* *indices, GLsizei primcount);
    629 #endif
    630 
    631 /* GL_EXT_read_format_bgra */
    632 #ifndef GL_EXT_read_format_bgra
    633 #define GL_EXT_read_format_bgra 1
    634 #endif
    635 
    636 /* GL_EXT_texture_filter_anisotropic */
    637 #ifndef GL_EXT_texture_filter_anisotropic
    638 #define GL_EXT_texture_filter_anisotropic 1
    639 #endif
    640 
    641 /* GL_EXT_texture_format_BGRA8888 */
    642 #ifndef GL_EXT_texture_format_BGRA8888
    643 #define GL_EXT_texture_format_BGRA8888 1
    644 #endif
    645 
    646 /* GL_EXT_texture_type_2_10_10_10_REV */
    647 #ifndef GL_EXT_texture_type_2_10_10_10_REV
    648 #define GL_EXT_texture_type_2_10_10_10_REV 1
    649 #endif
    650 
    651 /* GL_EXT_texture_compression_dxt1 */
    652 #ifndef GL_EXT_texture_compression_dxt1
    653 #define GL_EXT_texture_compression_dxt1 1
    654 #endif
    655 
    656 /*------------------------------------------------------------------------*
    657  * IMG extension functions
    658  *------------------------------------------------------------------------*/
    659 
    660 /* GL_IMG_program_binary */
    661 #ifndef GL_IMG_program_binary
    662 #define GL_IMG_program_binary 1
    663 #endif
    664 
    665 /* GL_IMG_read_format */
    666 #ifndef GL_IMG_read_format
    667 #define GL_IMG_read_format 1
    668 #endif
    669 
    670 /* GL_IMG_shader_binary */
    671 #ifndef GL_IMG_shader_binary
    672 #define GL_IMG_shader_binary 1
    673 #endif
    674 
    675 /* GL_IMG_texture_compression_pvrtc */
    676 #ifndef GL_IMG_texture_compression_pvrtc
    677 #define GL_IMG_texture_compression_pvrtc 1
    678 #endif
    679 
    680 /*------------------------------------------------------------------------*
    681  * NV extension functions
    682  *------------------------------------------------------------------------*/
    683 
    684 /* GL_NV_fence */
    685 #ifndef GL_NV_fence
    686 #define GL_NV_fence 1
    687 #ifdef GL_GLEXT_PROTOTYPES
    688 GL_APICALL void GL_APIENTRY glDeleteFencesNV (GLsizei, const GLuint *);
    689 GL_APICALL void GL_APIENTRY glGenFencesNV (GLsizei, GLuint *);
    690 GL_APICALL GLboolean GL_APIENTRY glIsFenceNV (GLuint);
    691 GL_APICALL GLboolean GL_APIENTRY glTestFenceNV (GLuint);
    692 GL_APICALL void GL_APIENTRY glGetFenceivNV (GLuint, GLenum, GLint *);
    693 GL_APICALL void GL_APIENTRY glFinishFenceNV (GLuint);
    694 GL_APICALL void GL_APIENTRY glSetFenceNV (GLuint, GLenum);
    695 #endif
    696 typedef void (GL_APIENTRYP PFNGLDELETEFENCESNVPROC) (GLsizei n, const GLuint *fences);
    697 typedef void (GL_APIENTRYP PFNGLGENFENCESNVPROC) (GLsizei n, GLuint *fences);
    698 typedef GLboolean (GL_APIENTRYP PFNGLISFENCENVPROC) (GLuint fence);
    699 typedef GLboolean (GL_APIENTRYP PFNGLTESTFENCENVPROC) (GLuint fence);
    700 typedef void (GL_APIENTRYP PFNGLGETFENCEIVNVPROC) (GLuint fence, GLenum pname, GLint *params);
    701 typedef void (GL_APIENTRYP PFNGLFINISHFENCENVPROC) (GLuint fence);
    702 typedef void (GL_APIENTRYP PFNGLSETFENCENVPROC) (GLuint fence, GLenum condition);
    703 #endif
    704 
    705 /* GL_NV_coverage_sample */
    706 #ifndef GL_NV_coverage_sample
    707 #define GL_NV_coverage_sample 1
    708 #ifdef GL_GLEXT_PROTOTYPES
    709 GL_APICALL void GL_APIENTRY glCoverageMaskNV (GLboolean mask);
    710 GL_APICALL void GL_APIENTRY glCoverageOperationNV (GLenum operation);
    711 #endif
    712 typedef void (GL_APIENTRYP PFNGLCOVERAGEMASKNVPROC) (GLboolean mask);
    713 typedef void (GL_APIENTRYP PFNGLCOVERAGEOPERATIONNVPROC) (GLenum operation);
    714 #endif
    715 
    716 /* GL_NV_depth_nonlinear */
    717 #ifndef GL_NV_depth_nonlinear
    718 #define GL_NV_depth_nonlinear 1
    719 #endif
    720 
    721 /*------------------------------------------------------------------------*
    722  * QCOM extension functions
    723  *------------------------------------------------------------------------*/
    724 
    725 /* GL_QCOM_driver_control */
    726 #ifndef GL_QCOM_driver_control
    727 #define GL_QCOM_driver_control 1
    728 #ifdef GL_GLEXT_PROTOTYPES
    729 GL_APICALL void GL_APIENTRY glGetDriverControlsQCOM (GLint *num, GLsizei size, GLuint *driverControls);
    730 GL_APICALL void GL_APIENTRY glGetDriverControlStringQCOM (GLuint driverControl, GLsizei bufSize, GLsizei *length, GLchar *driverControlString);
    731 GL_APICALL void GL_APIENTRY glEnableDriverControlQCOM (GLuint driverControl);
    732 GL_APICALL void GL_APIENTRY glDisableDriverControlQCOM (GLuint driverControl);
    733 #endif
    734 typedef void (GL_APIENTRYP PFNGLGETDRIVERCONTROLSQCOMPROC) (GLint *num, GLsizei size, GLuint *driverControls);
    735 typedef void (GL_APIENTRYP PFNGLGETDRIVERCONTROLSTRINGQCOMPROC) (GLuint driverControl, GLsizei bufSize, GLsizei *length, GLchar *driverControlString);
    736 typedef void (GL_APIENTRYP PFNGLENABLEDRIVERCONTROLQCOMPROC) (GLuint driverControl);
    737 typedef void (GL_APIENTRYP PFNGLDISABLEDRIVERCONTROLQCOMPROC) (GLuint driverControl);
    738 #endif
    739 
    740 /* GL_QCOM_extended_get */
    741 #ifndef GL_QCOM_extended_get
    742 #define GL_QCOM_extended_get 1
    743 #ifdef GL_GLEXT_PROTOTYPES
    744 GL_APICALL void GL_APIENTRY glExtGetTexturesQCOM (GLuint *textures, GLint maxTextures, GLint *numTextures);
    745 GL_APICALL void GL_APIENTRY glExtGetBuffersQCOM (GLuint *buffers, GLint maxBuffers, GLint *numBuffers);
    746 GL_APICALL void GL_APIENTRY glExtGetRenderbuffersQCOM (GLuint *renderbuffers, GLint maxRenderbuffers, GLint *numRenderbuffers);
    747 GL_APICALL void GL_APIENTRY glExtGetFramebuffersQCOM (GLuint *framebuffers, GLint maxFramebuffers, GLint *numFramebuffers);
    748 GL_APICALL void GL_APIENTRY glExtGetTexLevelParameterivQCOM (GLuint texture, GLenum face, GLint level, GLenum pname, GLint *params);
    749 GL_APICALL void GL_APIENTRY glExtTexObjectStateOverrideiQCOM (GLenum target, GLenum pname, GLint param);
    750 GL_APICALL 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);
    751 GL_APICALL void GL_APIENTRY glExtGetBufferPointervQCOM (GLenum target, GLvoid **params);
    752 #endif
    753 typedef void (GL_APIENTRYP PFNGLEXTGETTEXTURESQCOMPROC) (GLuint *textures, GLint maxTextures, GLint *numTextures);
    754 typedef void (GL_APIENTRYP PFNGLEXTGETBUFFERSQCOMPROC) (GLuint *buffers, GLint maxBuffers, GLint *numBuffers);
    755 typedef void (GL_APIENTRYP PFNGLEXTGETRENDERBUFFERSQCOMPROC) (GLuint *renderbuffers, GLint maxRenderbuffers, GLint *numRenderbuffers);
    756 typedef void (GL_APIENTRYP PFNGLEXTGETFRAMEBUFFERSQCOMPROC) (GLuint *framebuffers, GLint maxFramebuffers, GLint *numFramebuffers);
    757 typedef void (GL_APIENTRYP PFNGLEXTGETTEXLEVELPARAMETERIVQCOMPROC) (GLuint texture, GLenum face, GLint level, GLenum pname, GLint *params);
    758 typedef void (GL_APIENTRYP PFNGLEXTTEXOBJECTSTATEOVERRIDEIQCOMPROC) (GLenum target, GLenum pname, GLint param);
    759 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);
    760 typedef void (GL_APIENTRYP PFNGLEXTGETBUFFERPOINTERVQCOMPROC) (GLenum target, GLvoid **params);
    761 #endif
    762 
    763 /* GL_QCOM_extended_get2 */
    764 #ifndef GL_QCOM_extended_get2
    765 #define GL_QCOM_extended_get2 1
    766 #ifdef GL_GLEXT_PROTOTYPES
    767 GL_APICALL void GL_APIENTRY glExtGetShadersQCOM (GLuint *shaders, GLint maxShaders, GLint *numShaders);
    768 GL_APICALL void GL_APIENTRY glExtGetProgramsQCOM (GLuint *programs, GLint maxPrograms, GLint *numPrograms);
    769 GL_APICALL GLboolean GL_APIENTRY glExtIsProgramBinaryQCOM (GLuint program);
    770 GL_APICALL void GL_APIENTRY glExtGetProgramBinarySourceQCOM (GLuint program, GLenum shadertype, GLchar *source, GLint *length);
    771 #endif
    772 typedef void (GL_APIENTRYP PFNGLEXTGETSHADERSQCOMPROC) (GLuint *shaders, GLint maxShaders, GLint *numShaders);
    773 typedef void (GL_APIENTRYP PFNGLEXTGETPROGRAMSQCOMPROC) (GLuint *programs, GLint maxPrograms, GLint *numPrograms);
    774 typedef GLboolean (GL_APIENTRYP PFNGLEXTISPROGRAMBINARYQCOMPROC) (GLuint program);
    775 typedef void (GL_APIENTRYP PFNGLEXTGETPROGRAMBINARYSOURCEQCOMPROC) (GLuint program, GLenum shadertype, GLchar *source, GLint *length);
    776 #endif
    777 
    778 /* GL_QCOM_perfmon_global_mode */
    779 #ifndef GL_QCOM_perfmon_global_mode
    780 #define GL_QCOM_perfmon_global_mode 1
    781 #endif
    782 
    783 /* GL_QCOM_writeonly_rendering */
    784 #ifndef GL_QCOM_writeonly_rendering
    785 #define GL_QCOM_writeonly_rendering 1
    786 #endif
    787 
    788 /* GL_QCOM_tiled_rendering */
    789 #ifndef GL_QCOM_tiled_rendering
    790 #define GL_QCOM_tiled_rendering 1
    791 #ifdef GL_GLEXT_PROTOTYPES
    792 GL_APICALL void GL_APIENTRY glStartTilingQCOM (GLuint x, GLuint y, GLuint width, GLuint height, GLbitfield preserveMask);
    793 GL_APICALL void GL_APIENTRY glEndTilingQCOM (GLbitfield preserveMask);
    794 #endif
    795 typedef void (GL_APIENTRYP PFNGLSTARTTILINGQCOMPROC) (GLuint x, GLuint y, GLuint width, GLuint height, GLbitfield preserveMask);
    796 typedef void (GL_APIENTRYP PFNGLENDTILINGQCOMPROC) (GLbitfield preserveMask);
    797 #endif
    798 
    799 /*------------------------------------------------------------------------*
    800  * ANGLE extension functions
    801  *------------------------------------------------------------------------*/
    802 
    803 /* GL_ANGLE_framebuffer_blit */
    804 #ifndef GL_ANGLE_framebuffer_blit
    805 #define GL_ANGLE_framebuffer_blit 1
    806 #ifdef GL_GLEXT_PROTOTYPES
    807 GL_APICALL void GL_APIENTRY glBlitFramebufferANGLE (GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1,
    808                                                     GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1,
    809                                                     GLbitfield mask, GLenum filter);
    810 #endif
    811 typedef void (GL_APIENTRYP PFNGLBLITFRAMEBUFFERANGLEPROC) (GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1,
    812                                                            GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1,
    813                                                            GLbitfield mask, GLenum filter);
    814 #endif
    815 
    816 /* GL_ANGLE_framebuffer_multisample */
    817 #ifndef GL_ANGLE_framebuffer_multisample
    818 #define GL_ANGLE_framebuffer_multisample 1
    819 #ifdef GL_GLEXT_PROTOTYPES
    820 GL_APICALL void GL_APIENTRY glRenderbufferStorageMultisampleANGLE (GLenum target, GLsizei samples, GLenum internalformat,
    821                                                                    GLsizei width, GLsizei height);
    822 #endif
    823 typedef void (GL_APIENTRYP PFNGLRENDERBUFFERSTORAGEMULTISAMPLEANGLEPROC) (GLenum target, GLsizei samples, GLenum internalformat,
    824                                                                           GLsizei width, GLsizei height);
    825 #endif
    826 
    827 #ifdef __cplusplus
    828 }
    829 #endif
    830 
    831 #endif /* __gl2ext_h_ */
    832