michael@0: #ifndef __gl2ext_h_ michael@0: #define __gl2ext_h_ michael@0: michael@0: /* $Revision: 16482 $ on $Date:: 2012-01-04 13:44:55 -0500 #$ */ michael@0: michael@0: #ifdef __cplusplus michael@0: extern "C" { michael@0: #endif michael@0: michael@0: /* michael@0: * This document is licensed under the SGI Free Software B License Version michael@0: * 2.0. For details, see http://oss.sgi.com/projects/FreeB/ . michael@0: */ michael@0: michael@0: #ifndef GL_APIENTRYP michael@0: # define GL_APIENTRYP GL_APIENTRY* michael@0: #endif michael@0: michael@0: /*------------------------------------------------------------------------* michael@0: * OES extension tokens michael@0: *------------------------------------------------------------------------*/ michael@0: michael@0: /* GL_OES_compressed_ETC1_RGB8_texture */ michael@0: #ifndef GL_OES_compressed_ETC1_RGB8_texture michael@0: #define GL_ETC1_RGB8_OES 0x8D64 michael@0: #endif michael@0: michael@0: /* GL_OES_compressed_paletted_texture */ michael@0: #ifndef GL_OES_compressed_paletted_texture michael@0: #define GL_PALETTE4_RGB8_OES 0x8B90 michael@0: #define GL_PALETTE4_RGBA8_OES 0x8B91 michael@0: #define GL_PALETTE4_R5_G6_B5_OES 0x8B92 michael@0: #define GL_PALETTE4_RGBA4_OES 0x8B93 michael@0: #define GL_PALETTE4_RGB5_A1_OES 0x8B94 michael@0: #define GL_PALETTE8_RGB8_OES 0x8B95 michael@0: #define GL_PALETTE8_RGBA8_OES 0x8B96 michael@0: #define GL_PALETTE8_R5_G6_B5_OES 0x8B97 michael@0: #define GL_PALETTE8_RGBA4_OES 0x8B98 michael@0: #define GL_PALETTE8_RGB5_A1_OES 0x8B99 michael@0: #endif michael@0: michael@0: /* GL_OES_depth24 */ michael@0: #ifndef GL_OES_depth24 michael@0: #define GL_DEPTH_COMPONENT24_OES 0x81A6 michael@0: #endif michael@0: michael@0: /* GL_OES_depth32 */ michael@0: #ifndef GL_OES_depth32 michael@0: #define GL_DEPTH_COMPONENT32_OES 0x81A7 michael@0: #endif michael@0: michael@0: /* GL_OES_depth_texture */ michael@0: /* No new tokens introduced by this extension. */ michael@0: michael@0: /* GL_OES_EGL_image */ michael@0: #ifndef GL_OES_EGL_image michael@0: typedef void* GLeglImageOES; michael@0: #endif michael@0: michael@0: /* GL_OES_EGL_image_external */ michael@0: #ifndef GL_OES_EGL_image_external michael@0: /* GLeglImageOES defined in GL_OES_EGL_image already. */ michael@0: #define GL_TEXTURE_EXTERNAL_OES 0x8D65 michael@0: #define GL_SAMPLER_EXTERNAL_OES 0x8D66 michael@0: #define GL_TEXTURE_BINDING_EXTERNAL_OES 0x8D67 michael@0: #define GL_REQUIRED_TEXTURE_IMAGE_UNITS_OES 0x8D68 michael@0: #endif michael@0: michael@0: /* GL_OES_element_index_uint */ michael@0: #ifndef GL_OES_element_index_uint michael@0: #define GL_UNSIGNED_INT 0x1405 michael@0: #endif michael@0: michael@0: /* GL_OES_get_program_binary */ michael@0: #ifndef GL_OES_get_program_binary michael@0: #define GL_PROGRAM_BINARY_LENGTH_OES 0x8741 michael@0: #define GL_NUM_PROGRAM_BINARY_FORMATS_OES 0x87FE michael@0: #define GL_PROGRAM_BINARY_FORMATS_OES 0x87FF michael@0: #endif michael@0: michael@0: /* GL_OES_mapbuffer */ michael@0: #ifndef GL_OES_mapbuffer michael@0: #define GL_WRITE_ONLY_OES 0x88B9 michael@0: #define GL_BUFFER_ACCESS_OES 0x88BB michael@0: #define GL_BUFFER_MAPPED_OES 0x88BC michael@0: #define GL_BUFFER_MAP_POINTER_OES 0x88BD michael@0: #endif michael@0: michael@0: /* GL_OES_packed_depth_stencil */ michael@0: #ifndef GL_OES_packed_depth_stencil michael@0: #define GL_DEPTH_STENCIL_OES 0x84F9 michael@0: #define GL_UNSIGNED_INT_24_8_OES 0x84FA michael@0: #define GL_DEPTH24_STENCIL8_OES 0x88F0 michael@0: #endif michael@0: michael@0: /* GL_OES_rgb8_rgba8 */ michael@0: #ifndef GL_OES_rgb8_rgba8 michael@0: #define GL_RGB8_OES 0x8051 michael@0: #define GL_RGBA8_OES 0x8058 michael@0: #endif michael@0: michael@0: /* GL_OES_standard_derivatives */ michael@0: #ifndef GL_OES_standard_derivatives michael@0: #define GL_FRAGMENT_SHADER_DERIVATIVE_HINT_OES 0x8B8B michael@0: #endif michael@0: michael@0: /* GL_OES_stencil1 */ michael@0: #ifndef GL_OES_stencil1 michael@0: #define GL_STENCIL_INDEX1_OES 0x8D46 michael@0: #endif michael@0: michael@0: /* GL_OES_stencil4 */ michael@0: #ifndef GL_OES_stencil4 michael@0: #define GL_STENCIL_INDEX4_OES 0x8D47 michael@0: #endif michael@0: michael@0: /* GL_OES_texture_3D */ michael@0: #ifndef GL_OES_texture_3D michael@0: #define GL_TEXTURE_WRAP_R_OES 0x8072 michael@0: #define GL_TEXTURE_3D_OES 0x806F michael@0: #define GL_TEXTURE_BINDING_3D_OES 0x806A michael@0: #define GL_MAX_3D_TEXTURE_SIZE_OES 0x8073 michael@0: #define GL_SAMPLER_3D_OES 0x8B5F michael@0: #define GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_3D_ZOFFSET_OES 0x8CD4 michael@0: #endif michael@0: michael@0: /* GL_OES_texture_float */ michael@0: /* No new tokens introduced by this extension. */ michael@0: michael@0: /* GL_OES_texture_float_linear */ michael@0: /* No new tokens introduced by this extension. */ michael@0: michael@0: /* GL_OES_texture_half_float */ michael@0: #ifndef GL_OES_texture_half_float michael@0: #define GL_HALF_FLOAT_OES 0x8D61 michael@0: #endif michael@0: michael@0: /* GL_OES_texture_half_float_linear */ michael@0: /* No new tokens introduced by this extension. */ michael@0: michael@0: /* GL_OES_texture_npot */ michael@0: /* No new tokens introduced by this extension. */ michael@0: michael@0: /* GL_OES_vertex_array_object */ michael@0: #ifndef GL_OES_vertex_array_object michael@0: #define GL_VERTEX_ARRAY_BINDING_OES 0x85B5 michael@0: #endif michael@0: michael@0: /* GL_OES_vertex_half_float */ michael@0: /* GL_HALF_FLOAT_OES defined in GL_OES_texture_half_float already. */ michael@0: michael@0: /* GL_OES_vertex_type_10_10_10_2 */ michael@0: #ifndef GL_OES_vertex_type_10_10_10_2 michael@0: #define GL_UNSIGNED_INT_10_10_10_2_OES 0x8DF6 michael@0: #define GL_INT_10_10_10_2_OES 0x8DF7 michael@0: #endif michael@0: michael@0: /*------------------------------------------------------------------------* michael@0: * AMD extension tokens michael@0: *------------------------------------------------------------------------*/ michael@0: michael@0: /* GL_AMD_compressed_3DC_texture */ michael@0: #ifndef GL_AMD_compressed_3DC_texture michael@0: #define GL_3DC_X_AMD 0x87F9 michael@0: #define GL_3DC_XY_AMD 0x87FA michael@0: #endif michael@0: michael@0: /* GL_AMD_compressed_ATC_texture */ michael@0: #ifndef GL_AMD_compressed_ATC_texture michael@0: #define GL_ATC_RGB_AMD 0x8C92 michael@0: #define GL_ATC_RGBA_EXPLICIT_ALPHA_AMD 0x8C93 michael@0: #define GL_ATC_RGBA_INTERPOLATED_ALPHA_AMD 0x87EE michael@0: #endif michael@0: michael@0: /* GL_AMD_performance_monitor */ michael@0: #ifndef GL_AMD_performance_monitor michael@0: #define GL_COUNTER_TYPE_AMD 0x8BC0 michael@0: #define GL_COUNTER_RANGE_AMD 0x8BC1 michael@0: #define GL_UNSIGNED_INT64_AMD 0x8BC2 michael@0: #define GL_PERCENTAGE_AMD 0x8BC3 michael@0: #define GL_PERFMON_RESULT_AVAILABLE_AMD 0x8BC4 michael@0: #define GL_PERFMON_RESULT_SIZE_AMD 0x8BC5 michael@0: #define GL_PERFMON_RESULT_AMD 0x8BC6 michael@0: #endif michael@0: michael@0: /* GL_AMD_program_binary_Z400 */ michael@0: #ifndef GL_AMD_program_binary_Z400 michael@0: #define GL_Z400_BINARY_AMD 0x8740 michael@0: #endif michael@0: michael@0: /*------------------------------------------------------------------------* michael@0: * ANGLE extension tokens michael@0: *------------------------------------------------------------------------*/ michael@0: michael@0: /* GL_ANGLE_framebuffer_blit */ michael@0: #ifndef GL_ANGLE_framebuffer_blit michael@0: #define GL_READ_FRAMEBUFFER_ANGLE 0x8CA8 michael@0: #define GL_DRAW_FRAMEBUFFER_ANGLE 0x8CA9 michael@0: #define GL_DRAW_FRAMEBUFFER_BINDING_ANGLE 0x8CA6 michael@0: #define GL_READ_FRAMEBUFFER_BINDING_ANGLE 0x8CAA michael@0: #endif michael@0: michael@0: /* GL_ANGLE_framebuffer_multisample */ michael@0: #ifndef GL_ANGLE_framebuffer_multisample michael@0: #define GL_RENDERBUFFER_SAMPLES_ANGLE 0x8CAB michael@0: #define GL_FRAMEBUFFER_INCOMPLETE_MULTISAMPLE_ANGLE 0x8D56 michael@0: #define GL_MAX_SAMPLES_ANGLE 0x8D57 michael@0: #endif michael@0: michael@0: /* GL_ANGLE_pack_reverse_row_order */ michael@0: #ifndef GL_ANGLE_pack_reverse_row_order michael@0: #define GL_PACK_REVERSE_ROW_ORDER_ANGLE 0x93A4 michael@0: #endif michael@0: michael@0: /* GL_ANGLE_texture_compression_dxt3 */ michael@0: #ifndef GL_ANGLE_texture_compression_dxt3 michael@0: #define GL_COMPRESSED_RGBA_S3TC_DXT3_ANGLE 0x83F2 michael@0: #endif michael@0: michael@0: /* GL_ANGLE_texture_compression_dxt5 */ michael@0: #ifndef GL_ANGLE_texture_compression_dxt5 michael@0: #define GL_COMPRESSED_RGBA_S3TC_DXT5_ANGLE 0x83F3 michael@0: #endif michael@0: michael@0: /* GL_ANGLE_translated_shader_source */ michael@0: #ifndef GL_ANGLE_translated_shader_source michael@0: #define GL_TRANSLATED_SHADER_SOURCE_LENGTH_ANGLE 0x93A0 michael@0: #endif michael@0: michael@0: /* GL_ANGLE_texture_usage */ michael@0: #ifndef GL_ANGLE_texture_usage michael@0: #define GL_TEXTURE_USAGE_ANGLE 0x93A2 michael@0: #define GL_FRAMEBUFFER_ATTACHMENT_ANGLE 0x93A3 michael@0: #endif michael@0: michael@0: /* GL_ANGLE_instanced_arrays */ michael@0: #ifndef GL_ANGLE_instanced_arrays michael@0: #define GL_VERTEX_ATTRIB_ARRAY_DIVISOR_ANGLE 0x88FE michael@0: #endif michael@0: michael@0: /* GL_ANGLE_program_binary */ michael@0: #ifndef GL_ANGLE_program_binary michael@0: #define GL_PROGRAM_BINARY_ANGLE 0x93A6 michael@0: #endif michael@0: michael@0: /*------------------------------------------------------------------------* michael@0: * APPLE extension tokens michael@0: *------------------------------------------------------------------------*/ michael@0: michael@0: /* GL_APPLE_rgb_422 */ michael@0: #ifndef GL_APPLE_rgb_422 michael@0: #define GL_RGB_422_APPLE 0x8A1F michael@0: #define GL_UNSIGNED_SHORT_8_8_APPLE 0x85BA michael@0: #define GL_UNSIGNED_SHORT_8_8_REV_APPLE 0x85BB michael@0: #endif michael@0: michael@0: /* GL_APPLE_framebuffer_multisample */ michael@0: #ifndef GL_APPLE_framebuffer_multisample michael@0: #define GL_RENDERBUFFER_SAMPLES_APPLE 0x8CAB michael@0: #define GL_FRAMEBUFFER_INCOMPLETE_MULTISAMPLE_APPLE 0x8D56 michael@0: #define GL_MAX_SAMPLES_APPLE 0x8D57 michael@0: #define GL_READ_FRAMEBUFFER_APPLE 0x8CA8 michael@0: #define GL_DRAW_FRAMEBUFFER_APPLE 0x8CA9 michael@0: #define GL_DRAW_FRAMEBUFFER_BINDING_APPLE 0x8CA6 michael@0: #define GL_READ_FRAMEBUFFER_BINDING_APPLE 0x8CAA michael@0: #endif michael@0: michael@0: /* GL_APPLE_texture_format_BGRA8888 */ michael@0: #ifndef GL_APPLE_texture_format_BGRA8888 michael@0: #define GL_BGRA_EXT 0x80E1 michael@0: #endif michael@0: michael@0: /* GL_APPLE_texture_max_level */ michael@0: #ifndef GL_APPLE_texture_max_level michael@0: #define GL_TEXTURE_MAX_LEVEL_APPLE 0x813D michael@0: #endif michael@0: michael@0: /*------------------------------------------------------------------------* michael@0: * ARM extension tokens michael@0: *------------------------------------------------------------------------*/ michael@0: michael@0: /* GL_ARM_mali_shader_binary */ michael@0: #ifndef GL_ARM_mali_shader_binary michael@0: #define GL_MALI_SHADER_BINARY_ARM 0x8F60 michael@0: #endif michael@0: michael@0: /* GL_ARM_rgba8 */ michael@0: /* No new tokens introduced by this extension. */ michael@0: michael@0: /*------------------------------------------------------------------------* michael@0: * EXT extension tokens michael@0: *------------------------------------------------------------------------*/ michael@0: michael@0: /* GL_EXT_blend_minmax */ michael@0: #ifndef GL_EXT_blend_minmax michael@0: #define GL_MIN_EXT 0x8007 michael@0: #define GL_MAX_EXT 0x8008 michael@0: #endif michael@0: michael@0: /* GL_EXT_color_buffer_half_float */ michael@0: #ifndef GL_EXT_color_buffer_half_float michael@0: #define GL_RGBA16F_EXT 0x881A michael@0: #define GL_RGB16F_EXT 0x881B michael@0: #define GL_RG16F_EXT 0x822F michael@0: #define GL_R16F_EXT 0x822D michael@0: #define GL_FRAMEBUFFER_ATTACHMENT_COMPONENT_TYPE_EXT 0x8211 michael@0: #define GL_UNSIGNED_NORMALIZED_EXT 0x8C17 michael@0: #endif michael@0: michael@0: /* GL_EXT_debug_label */ michael@0: #ifndef GL_EXT_debug_label michael@0: #define GL_PROGRAM_PIPELINE_OBJECT_EXT 0x8A4F michael@0: #define GL_PROGRAM_OBJECT_EXT 0x8B40 michael@0: #define GL_SHADER_OBJECT_EXT 0x8B48 michael@0: #define GL_BUFFER_OBJECT_EXT 0x9151 michael@0: #define GL_QUERY_OBJECT_EXT 0x9153 michael@0: #define GL_VERTEX_ARRAY_OBJECT_EXT 0x9154 michael@0: #endif michael@0: michael@0: /* GL_EXT_debug_marker */ michael@0: /* No new tokens introduced by this extension. */ michael@0: michael@0: /* GL_EXT_discard_framebuffer */ michael@0: #ifndef GL_EXT_discard_framebuffer michael@0: #define GL_COLOR_EXT 0x1800 michael@0: #define GL_DEPTH_EXT 0x1801 michael@0: #define GL_STENCIL_EXT 0x1802 michael@0: #endif michael@0: michael@0: /* GL_EXT_multisampled_render_to_texture */ michael@0: #ifndef GL_EXT_multisampled_render_to_texture michael@0: #define GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_SAMPLES_EXT 0x8D6C michael@0: #define GL_RENDERBUFFER_SAMPLES_EXT 0x9133 michael@0: #define GL_FRAMEBUFFER_INCOMPLETE_MULTISAMPLE_EXT 0x9134 michael@0: #define GL_MAX_SAMPLES_EXT 0x9135 michael@0: #endif michael@0: michael@0: /* GL_EXT_multi_draw_arrays */ michael@0: /* No new tokens introduced by this extension. */ michael@0: michael@0: /* GL_EXT_occlusion_query_boolean */ michael@0: #ifndef GL_EXT_occlusion_query_boolean michael@0: #define GL_ANY_SAMPLES_PASSED_EXT 0x8C2F michael@0: #define GL_ANY_SAMPLES_PASSED_CONSERVATIVE_EXT 0x8D6A michael@0: #define GL_CURRENT_QUERY_EXT 0x8865 michael@0: #define GL_QUERY_RESULT_EXT 0x8866 michael@0: #define GL_QUERY_RESULT_AVAILABLE_EXT 0x8867 michael@0: #endif michael@0: michael@0: /* GL_EXT_read_format_bgra */ michael@0: #ifndef GL_EXT_read_format_bgra michael@0: #define GL_BGRA_EXT 0x80E1 michael@0: #define GL_UNSIGNED_SHORT_4_4_4_4_REV_EXT 0x8365 michael@0: #define GL_UNSIGNED_SHORT_1_5_5_5_REV_EXT 0x8366 michael@0: #endif michael@0: michael@0: /* GL_EXT_robustness */ michael@0: #ifndef GL_EXT_robustness michael@0: /* reuse GL_NO_ERROR */ michael@0: #define GL_GUILTY_CONTEXT_RESET_EXT 0x8253 michael@0: #define GL_INNOCENT_CONTEXT_RESET_EXT 0x8254 michael@0: #define GL_UNKNOWN_CONTEXT_RESET_EXT 0x8255 michael@0: #define GL_CONTEXT_ROBUST_ACCESS_EXT 0x90F3 michael@0: #define GL_RESET_NOTIFICATION_STRATEGY_EXT 0x8256 michael@0: #define GL_LOSE_CONTEXT_ON_RESET_EXT 0x8252 michael@0: #define GL_NO_RESET_NOTIFICATION_EXT 0x8261 michael@0: #endif michael@0: michael@0: /* GL_EXT_separate_shader_objects */ michael@0: #ifndef GL_EXT_separate_shader_objects michael@0: #define GL_VERTEX_SHADER_BIT_EXT 0x00000001 michael@0: #define GL_FRAGMENT_SHADER_BIT_EXT 0x00000002 michael@0: #define GL_ALL_SHADER_BITS_EXT 0xFFFFFFFF michael@0: #define GL_PROGRAM_SEPARABLE_EXT 0x8258 michael@0: #define GL_ACTIVE_PROGRAM_EXT 0x8259 michael@0: #define GL_PROGRAM_PIPELINE_BINDING_EXT 0x825A michael@0: #endif michael@0: michael@0: /* GL_EXT_shader_texture_lod */ michael@0: /* No new tokens introduced by this extension. */ michael@0: michael@0: /* GL_EXT_shadow_samplers */ michael@0: #ifndef GL_EXT_shadow_samplers michael@0: #define GL_TEXTURE_COMPARE_MODE_EXT 0x884C michael@0: #define GL_TEXTURE_COMPARE_FUNC_EXT 0x884D michael@0: #define GL_COMPARE_REF_TO_TEXTURE_EXT 0x884E michael@0: #endif michael@0: michael@0: /* GL_EXT_sRGB */ michael@0: #ifndef GL_EXT_sRGB michael@0: #define GL_SRGB_EXT 0x8C40 michael@0: #define GL_SRGB_ALPHA_EXT 0x8C42 michael@0: #define GL_SRGB8_ALPHA8_EXT 0x8C43 michael@0: #define GL_FRAMEBUFFER_ATTACHMENT_COLOR_ENCODING_EXT 0x8210 michael@0: #endif michael@0: michael@0: /* GL_EXT_texture_compression_dxt1 */ michael@0: #ifndef GL_EXT_texture_compression_dxt1 michael@0: #define GL_COMPRESSED_RGB_S3TC_DXT1_EXT 0x83F0 michael@0: #define GL_COMPRESSED_RGBA_S3TC_DXT1_EXT 0x83F1 michael@0: #endif michael@0: michael@0: /* GL_EXT_texture_filter_anisotropic */ michael@0: #ifndef GL_EXT_texture_filter_anisotropic michael@0: #define GL_TEXTURE_MAX_ANISOTROPY_EXT 0x84FE michael@0: #define GL_MAX_TEXTURE_MAX_ANISOTROPY_EXT 0x84FF michael@0: #endif michael@0: michael@0: /* GL_EXT_texture_format_BGRA8888 */ michael@0: #ifndef GL_EXT_texture_format_BGRA8888 michael@0: #define GL_BGRA_EXT 0x80E1 michael@0: #endif michael@0: michael@0: /* GL_EXT_texture_rg */ michael@0: #ifndef GL_EXT_texture_rg michael@0: #define GL_RED_EXT 0x1903 michael@0: #define GL_RG_EXT 0x8227 michael@0: #define GL_R8_EXT 0x8229 michael@0: #define GL_RG8_EXT 0x822B michael@0: #endif michael@0: michael@0: /* GL_EXT_texture_storage */ michael@0: #ifndef GL_EXT_texture_storage michael@0: #define GL_TEXTURE_IMMUTABLE_FORMAT_EXT 0x912F michael@0: #define GL_ALPHA8_EXT 0x803C michael@0: #define GL_LUMINANCE8_EXT 0x8040 michael@0: #define GL_LUMINANCE8_ALPHA8_EXT 0x8045 michael@0: #define GL_RGBA32F_EXT 0x8814 michael@0: #define GL_RGB32F_EXT 0x8815 michael@0: #define GL_ALPHA32F_EXT 0x8816 michael@0: #define GL_LUMINANCE32F_EXT 0x8818 michael@0: #define GL_LUMINANCE_ALPHA32F_EXT 0x8819 michael@0: /* reuse GL_RGBA16F_EXT */ michael@0: #define GL_RGB16F_EXT 0x881B michael@0: #define GL_ALPHA16F_EXT 0x881C michael@0: #define GL_LUMINANCE16F_EXT 0x881E michael@0: #define GL_LUMINANCE_ALPHA16F_EXT 0x881F michael@0: #define GL_RGB10_A2_EXT 0x8059 michael@0: #define GL_RGB10_EXT 0x8052 michael@0: #define GL_BGRA8_EXT 0x93A1 michael@0: #endif michael@0: michael@0: /* GL_EXT_texture_type_2_10_10_10_REV */ michael@0: #ifndef GL_EXT_texture_type_2_10_10_10_REV michael@0: #define GL_UNSIGNED_INT_2_10_10_10_REV_EXT 0x8368 michael@0: #endif michael@0: michael@0: /* GL_EXT_unpack_subimage */ michael@0: #ifndef GL_EXT_unpack_subimage michael@0: #define GL_UNPACK_ROW_LENGTH 0x0CF2 michael@0: #define GL_UNPACK_SKIP_ROWS 0x0CF3 michael@0: #define GL_UNPACK_SKIP_PIXELS 0x0CF4 michael@0: #endif michael@0: michael@0: /*------------------------------------------------------------------------* michael@0: * DMP extension tokens michael@0: *------------------------------------------------------------------------*/ michael@0: michael@0: /* GL_DMP_shader_binary */ michael@0: #ifndef GL_DMP_shader_binary michael@0: #define GL_SHADER_BINARY_DMP 0x9250 michael@0: #endif michael@0: michael@0: /*------------------------------------------------------------------------* michael@0: * IMG extension tokens michael@0: *------------------------------------------------------------------------*/ michael@0: michael@0: /* GL_IMG_program_binary */ michael@0: #ifndef GL_IMG_program_binary michael@0: #define GL_SGX_PROGRAM_BINARY_IMG 0x9130 michael@0: #endif michael@0: michael@0: /* GL_IMG_read_format */ michael@0: #ifndef GL_IMG_read_format michael@0: #define GL_BGRA_IMG 0x80E1 michael@0: #define GL_UNSIGNED_SHORT_4_4_4_4_REV_IMG 0x8365 michael@0: #endif michael@0: michael@0: /* GL_IMG_shader_binary */ michael@0: #ifndef GL_IMG_shader_binary michael@0: #define GL_SGX_BINARY_IMG 0x8C0A michael@0: #endif michael@0: michael@0: /* GL_IMG_texture_compression_pvrtc */ michael@0: #ifndef GL_IMG_texture_compression_pvrtc michael@0: #define GL_COMPRESSED_RGB_PVRTC_4BPPV1_IMG 0x8C00 michael@0: #define GL_COMPRESSED_RGB_PVRTC_2BPPV1_IMG 0x8C01 michael@0: #define GL_COMPRESSED_RGBA_PVRTC_4BPPV1_IMG 0x8C02 michael@0: #define GL_COMPRESSED_RGBA_PVRTC_2BPPV1_IMG 0x8C03 michael@0: #endif michael@0: michael@0: /* GL_IMG_multisampled_render_to_texture */ michael@0: #ifndef GL_IMG_multisampled_render_to_texture michael@0: #define GL_RENDERBUFFER_SAMPLES_IMG 0x9133 michael@0: #define GL_FRAMEBUFFER_INCOMPLETE_MULTISAMPLE_IMG 0x9134 michael@0: #define GL_MAX_SAMPLES_IMG 0x9135 michael@0: #define GL_TEXTURE_SAMPLES_IMG 0x9136 michael@0: #endif michael@0: michael@0: /*------------------------------------------------------------------------* michael@0: * NV extension tokens michael@0: *------------------------------------------------------------------------*/ michael@0: michael@0: /* GL_NV_coverage_sample */ michael@0: #ifndef GL_NV_coverage_sample michael@0: #define GL_COVERAGE_COMPONENT_NV 0x8ED0 michael@0: #define GL_COVERAGE_COMPONENT4_NV 0x8ED1 michael@0: #define GL_COVERAGE_ATTACHMENT_NV 0x8ED2 michael@0: #define GL_COVERAGE_BUFFERS_NV 0x8ED3 michael@0: #define GL_COVERAGE_SAMPLES_NV 0x8ED4 michael@0: #define GL_COVERAGE_ALL_FRAGMENTS_NV 0x8ED5 michael@0: #define GL_COVERAGE_EDGE_FRAGMENTS_NV 0x8ED6 michael@0: #define GL_COVERAGE_AUTOMATIC_NV 0x8ED7 michael@0: #define GL_COVERAGE_BUFFER_BIT_NV 0x8000 michael@0: #endif michael@0: michael@0: /* GL_NV_depth_nonlinear */ michael@0: #ifndef GL_NV_depth_nonlinear michael@0: #define GL_DEPTH_COMPONENT16_NONLINEAR_NV 0x8E2C michael@0: #endif michael@0: michael@0: /* GL_NV_draw_buffers */ michael@0: #ifndef GL_NV_draw_buffers michael@0: #define GL_MAX_DRAW_BUFFERS_NV 0x8824 michael@0: #define GL_DRAW_BUFFER0_NV 0x8825 michael@0: #define GL_DRAW_BUFFER1_NV 0x8826 michael@0: #define GL_DRAW_BUFFER2_NV 0x8827 michael@0: #define GL_DRAW_BUFFER3_NV 0x8828 michael@0: #define GL_DRAW_BUFFER4_NV 0x8829 michael@0: #define GL_DRAW_BUFFER5_NV 0x882A michael@0: #define GL_DRAW_BUFFER6_NV 0x882B michael@0: #define GL_DRAW_BUFFER7_NV 0x882C michael@0: #define GL_DRAW_BUFFER8_NV 0x882D michael@0: #define GL_DRAW_BUFFER9_NV 0x882E michael@0: #define GL_DRAW_BUFFER10_NV 0x882F michael@0: #define GL_DRAW_BUFFER11_NV 0x8830 michael@0: #define GL_DRAW_BUFFER12_NV 0x8831 michael@0: #define GL_DRAW_BUFFER13_NV 0x8832 michael@0: #define GL_DRAW_BUFFER14_NV 0x8833 michael@0: #define GL_DRAW_BUFFER15_NV 0x8834 michael@0: #define GL_COLOR_ATTACHMENT0_NV 0x8CE0 michael@0: #define GL_COLOR_ATTACHMENT1_NV 0x8CE1 michael@0: #define GL_COLOR_ATTACHMENT2_NV 0x8CE2 michael@0: #define GL_COLOR_ATTACHMENT3_NV 0x8CE3 michael@0: #define GL_COLOR_ATTACHMENT4_NV 0x8CE4 michael@0: #define GL_COLOR_ATTACHMENT5_NV 0x8CE5 michael@0: #define GL_COLOR_ATTACHMENT6_NV 0x8CE6 michael@0: #define GL_COLOR_ATTACHMENT7_NV 0x8CE7 michael@0: #define GL_COLOR_ATTACHMENT8_NV 0x8CE8 michael@0: #define GL_COLOR_ATTACHMENT9_NV 0x8CE9 michael@0: #define GL_COLOR_ATTACHMENT10_NV 0x8CEA michael@0: #define GL_COLOR_ATTACHMENT11_NV 0x8CEB michael@0: #define GL_COLOR_ATTACHMENT12_NV 0x8CEC michael@0: #define GL_COLOR_ATTACHMENT13_NV 0x8CED michael@0: #define GL_COLOR_ATTACHMENT14_NV 0x8CEE michael@0: #define GL_COLOR_ATTACHMENT15_NV 0x8CEF michael@0: #endif michael@0: michael@0: /* GL_EXT_draw_buffers */ michael@0: #ifndef GL_EXT_draw_buffers michael@0: #define GL_MAX_DRAW_BUFFERS_EXT 0x8824 michael@0: #define GL_DRAW_BUFFER0_EXT 0x8825 michael@0: #define GL_DRAW_BUFFER1_EXT 0x8826 michael@0: #define GL_DRAW_BUFFER2_EXT 0x8827 michael@0: #define GL_DRAW_BUFFER3_EXT 0x8828 michael@0: #define GL_DRAW_BUFFER4_EXT 0x8829 michael@0: #define GL_DRAW_BUFFER5_EXT 0x882A michael@0: #define GL_DRAW_BUFFER6_EXT 0x882B michael@0: #define GL_DRAW_BUFFER7_EXT 0x882C michael@0: #define GL_DRAW_BUFFER8_EXT 0x882D michael@0: #define GL_DRAW_BUFFER9_EXT 0x882E michael@0: #define GL_DRAW_BUFFER10_EXT 0x882F michael@0: #define GL_DRAW_BUFFER11_EXT 0x8830 michael@0: #define GL_DRAW_BUFFER12_EXT 0x8831 michael@0: #define GL_DRAW_BUFFER13_EXT 0x8832 michael@0: #define GL_DRAW_BUFFER14_EXT 0x8833 michael@0: #define GL_DRAW_BUFFER15_EXT 0x8834 michael@0: #define GL_COLOR_ATTACHMENT0_EXT 0x8CE0 michael@0: #define GL_COLOR_ATTACHMENT1_EXT 0x8CE1 michael@0: #define GL_COLOR_ATTACHMENT2_EXT 0x8CE2 michael@0: #define GL_COLOR_ATTACHMENT3_EXT 0x8CE3 michael@0: #define GL_COLOR_ATTACHMENT4_EXT 0x8CE4 michael@0: #define GL_COLOR_ATTACHMENT5_EXT 0x8CE5 michael@0: #define GL_COLOR_ATTACHMENT6_EXT 0x8CE6 michael@0: #define GL_COLOR_ATTACHMENT7_EXT 0x8CE7 michael@0: #define GL_COLOR_ATTACHMENT8_EXT 0x8CE8 michael@0: #define GL_COLOR_ATTACHMENT9_EXT 0x8CE9 michael@0: #define GL_COLOR_ATTACHMENT10_EXT 0x8CEA michael@0: #define GL_COLOR_ATTACHMENT11_EXT 0x8CEB michael@0: #define GL_COLOR_ATTACHMENT12_EXT 0x8CEC michael@0: #define GL_COLOR_ATTACHMENT13_EXT 0x8CED michael@0: #define GL_COLOR_ATTACHMENT14_EXT 0x8CEE michael@0: #define GL_COLOR_ATTACHMENT15_EXT 0x8CEF michael@0: #define GL_MAX_COLOR_ATTACHMENTS_EXT 0x8CDF michael@0: #endif michael@0: michael@0: /* GL_NV_fbo_color_attachments */ michael@0: #ifndef GL_NV_fbo_color_attachments michael@0: #define GL_MAX_COLOR_ATTACHMENTS_NV 0x8CDF michael@0: /* GL_COLOR_ATTACHMENT{0-15}_NV defined in GL_NV_draw_buffers already. */ michael@0: #endif michael@0: michael@0: /* GL_NV_fence */ michael@0: #ifndef GL_NV_fence michael@0: #define GL_ALL_COMPLETED_NV 0x84F2 michael@0: #define GL_FENCE_STATUS_NV 0x84F3 michael@0: #define GL_FENCE_CONDITION_NV 0x84F4 michael@0: #endif michael@0: michael@0: /* GL_NV_read_buffer */ michael@0: #ifndef GL_NV_read_buffer michael@0: #define GL_READ_BUFFER_NV 0x0C02 michael@0: #endif michael@0: michael@0: /* GL_NV_read_buffer_front */ michael@0: /* No new tokens introduced by this extension. */ michael@0: michael@0: /* GL_NV_read_depth */ michael@0: /* No new tokens introduced by this extension. */ michael@0: michael@0: /* GL_NV_read_depth_stencil */ michael@0: /* No new tokens introduced by this extension. */ michael@0: michael@0: /* GL_NV_read_stencil */ michael@0: /* No new tokens introduced by this extension. */ michael@0: michael@0: /* GL_NV_texture_compression_s3tc_update */ michael@0: /* No new tokens introduced by this extension. */ michael@0: michael@0: /* GL_NV_texture_npot_2D_mipmap */ michael@0: /* No new tokens introduced by this extension. */ michael@0: michael@0: /*------------------------------------------------------------------------* michael@0: * QCOM extension tokens michael@0: *------------------------------------------------------------------------*/ michael@0: michael@0: /* GL_QCOM_alpha_test */ michael@0: #ifndef GL_QCOM_alpha_test michael@0: #define GL_ALPHA_TEST_QCOM 0x0BC0 michael@0: #define GL_ALPHA_TEST_FUNC_QCOM 0x0BC1 michael@0: #define GL_ALPHA_TEST_REF_QCOM 0x0BC2 michael@0: #endif michael@0: michael@0: /* GL_QCOM_driver_control */ michael@0: /* No new tokens introduced by this extension. */ michael@0: michael@0: /* GL_QCOM_extended_get */ michael@0: #ifndef GL_QCOM_extended_get michael@0: #define GL_TEXTURE_WIDTH_QCOM 0x8BD2 michael@0: #define GL_TEXTURE_HEIGHT_QCOM 0x8BD3 michael@0: #define GL_TEXTURE_DEPTH_QCOM 0x8BD4 michael@0: #define GL_TEXTURE_INTERNAL_FORMAT_QCOM 0x8BD5 michael@0: #define GL_TEXTURE_FORMAT_QCOM 0x8BD6 michael@0: #define GL_TEXTURE_TYPE_QCOM 0x8BD7 michael@0: #define GL_TEXTURE_IMAGE_VALID_QCOM 0x8BD8 michael@0: #define GL_TEXTURE_NUM_LEVELS_QCOM 0x8BD9 michael@0: #define GL_TEXTURE_TARGET_QCOM 0x8BDA michael@0: #define GL_TEXTURE_OBJECT_VALID_QCOM 0x8BDB michael@0: #define GL_STATE_RESTORE 0x8BDC michael@0: #endif michael@0: michael@0: /* GL_QCOM_extended_get2 */ michael@0: /* No new tokens introduced by this extension. */ michael@0: michael@0: /* GL_QCOM_perfmon_global_mode */ michael@0: #ifndef GL_QCOM_perfmon_global_mode michael@0: #define GL_PERFMON_GLOBAL_MODE_QCOM 0x8FA0 michael@0: #endif michael@0: michael@0: /* GL_QCOM_writeonly_rendering */ michael@0: #ifndef GL_QCOM_writeonly_rendering michael@0: #define GL_WRITEONLY_RENDERING_QCOM 0x8823 michael@0: #endif michael@0: michael@0: /* GL_QCOM_tiled_rendering */ michael@0: #ifndef GL_QCOM_tiled_rendering michael@0: #define GL_COLOR_BUFFER_BIT0_QCOM 0x00000001 michael@0: #define GL_COLOR_BUFFER_BIT1_QCOM 0x00000002 michael@0: #define GL_COLOR_BUFFER_BIT2_QCOM 0x00000004 michael@0: #define GL_COLOR_BUFFER_BIT3_QCOM 0x00000008 michael@0: #define GL_COLOR_BUFFER_BIT4_QCOM 0x00000010 michael@0: #define GL_COLOR_BUFFER_BIT5_QCOM 0x00000020 michael@0: #define GL_COLOR_BUFFER_BIT6_QCOM 0x00000040 michael@0: #define GL_COLOR_BUFFER_BIT7_QCOM 0x00000080 michael@0: #define GL_DEPTH_BUFFER_BIT0_QCOM 0x00000100 michael@0: #define GL_DEPTH_BUFFER_BIT1_QCOM 0x00000200 michael@0: #define GL_DEPTH_BUFFER_BIT2_QCOM 0x00000400 michael@0: #define GL_DEPTH_BUFFER_BIT3_QCOM 0x00000800 michael@0: #define GL_DEPTH_BUFFER_BIT4_QCOM 0x00001000 michael@0: #define GL_DEPTH_BUFFER_BIT5_QCOM 0x00002000 michael@0: #define GL_DEPTH_BUFFER_BIT6_QCOM 0x00004000 michael@0: #define GL_DEPTH_BUFFER_BIT7_QCOM 0x00008000 michael@0: #define GL_STENCIL_BUFFER_BIT0_QCOM 0x00010000 michael@0: #define GL_STENCIL_BUFFER_BIT1_QCOM 0x00020000 michael@0: #define GL_STENCIL_BUFFER_BIT2_QCOM 0x00040000 michael@0: #define GL_STENCIL_BUFFER_BIT3_QCOM 0x00080000 michael@0: #define GL_STENCIL_BUFFER_BIT4_QCOM 0x00100000 michael@0: #define GL_STENCIL_BUFFER_BIT5_QCOM 0x00200000 michael@0: #define GL_STENCIL_BUFFER_BIT6_QCOM 0x00400000 michael@0: #define GL_STENCIL_BUFFER_BIT7_QCOM 0x00800000 michael@0: #define GL_MULTISAMPLE_BUFFER_BIT0_QCOM 0x01000000 michael@0: #define GL_MULTISAMPLE_BUFFER_BIT1_QCOM 0x02000000 michael@0: #define GL_MULTISAMPLE_BUFFER_BIT2_QCOM 0x04000000 michael@0: #define GL_MULTISAMPLE_BUFFER_BIT3_QCOM 0x08000000 michael@0: #define GL_MULTISAMPLE_BUFFER_BIT4_QCOM 0x10000000 michael@0: #define GL_MULTISAMPLE_BUFFER_BIT5_QCOM 0x20000000 michael@0: #define GL_MULTISAMPLE_BUFFER_BIT6_QCOM 0x40000000 michael@0: #define GL_MULTISAMPLE_BUFFER_BIT7_QCOM 0x80000000 michael@0: #endif michael@0: michael@0: /*------------------------------------------------------------------------* michael@0: * VIV extension tokens michael@0: *------------------------------------------------------------------------*/ michael@0: michael@0: /* GL_VIV_shader_binary */ michael@0: #ifndef GL_VIV_shader_binary michael@0: #define GL_SHADER_BINARY_VIV 0x8FC4 michael@0: #endif michael@0: michael@0: /*------------------------------------------------------------------------* michael@0: * End of extension tokens, start of corresponding extension functions michael@0: *------------------------------------------------------------------------*/ michael@0: michael@0: /*------------------------------------------------------------------------* michael@0: * OES extension functions michael@0: *------------------------------------------------------------------------*/ michael@0: michael@0: /* GL_OES_compressed_ETC1_RGB8_texture */ michael@0: #ifndef GL_OES_compressed_ETC1_RGB8_texture michael@0: #define GL_OES_compressed_ETC1_RGB8_texture 1 michael@0: #endif michael@0: michael@0: /* GL_OES_compressed_paletted_texture */ michael@0: #ifndef GL_OES_compressed_paletted_texture michael@0: #define GL_OES_compressed_paletted_texture 1 michael@0: #endif michael@0: michael@0: /* GL_OES_depth24 */ michael@0: #ifndef GL_OES_depth24 michael@0: #define GL_OES_depth24 1 michael@0: #endif michael@0: michael@0: /* GL_OES_depth32 */ michael@0: #ifndef GL_OES_depth32 michael@0: #define GL_OES_depth32 1 michael@0: #endif michael@0: michael@0: /* GL_OES_depth_texture */ michael@0: #ifndef GL_OES_depth_texture michael@0: #define GL_OES_depth_texture 1 michael@0: #endif michael@0: michael@0: /* GL_OES_EGL_image */ michael@0: #ifndef GL_OES_EGL_image michael@0: #define GL_OES_EGL_image 1 michael@0: #ifdef GL_GLEXT_PROTOTYPES michael@0: GL_APICALL void GL_APIENTRY glEGLImageTargetTexture2DOES (GLenum target, GLeglImageOES image); michael@0: GL_APICALL void GL_APIENTRY glEGLImageTargetRenderbufferStorageOES (GLenum target, GLeglImageOES image); michael@0: #endif michael@0: typedef void (GL_APIENTRYP PFNGLEGLIMAGETARGETTEXTURE2DOESPROC) (GLenum target, GLeglImageOES image); michael@0: typedef void (GL_APIENTRYP PFNGLEGLIMAGETARGETRENDERBUFFERSTORAGEOESPROC) (GLenum target, GLeglImageOES image); michael@0: #endif michael@0: michael@0: /* GL_OES_EGL_image_external */ michael@0: #ifndef GL_OES_EGL_image_external michael@0: #define GL_OES_EGL_image_external 1 michael@0: /* glEGLImageTargetTexture2DOES defined in GL_OES_EGL_image already. */ michael@0: #endif michael@0: michael@0: /* GL_OES_element_index_uint */ michael@0: #ifndef GL_OES_element_index_uint michael@0: #define GL_OES_element_index_uint 1 michael@0: #endif michael@0: michael@0: /* GL_OES_fbo_render_mipmap */ michael@0: #ifndef GL_OES_fbo_render_mipmap michael@0: #define GL_OES_fbo_render_mipmap 1 michael@0: #endif michael@0: michael@0: /* GL_OES_fragment_precision_high */ michael@0: #ifndef GL_OES_fragment_precision_high michael@0: #define GL_OES_fragment_precision_high 1 michael@0: #endif michael@0: michael@0: /* GL_OES_get_program_binary */ michael@0: #ifndef GL_OES_get_program_binary michael@0: #define GL_OES_get_program_binary 1 michael@0: #ifdef GL_GLEXT_PROTOTYPES michael@0: GL_APICALL void GL_APIENTRY glGetProgramBinaryOES (GLuint program, GLsizei bufSize, GLsizei *length, GLenum *binaryFormat, GLvoid *binary); michael@0: GL_APICALL void GL_APIENTRY glProgramBinaryOES (GLuint program, GLenum binaryFormat, const GLvoid *binary, GLint length); michael@0: #endif michael@0: typedef void (GL_APIENTRYP PFNGLGETPROGRAMBINARYOESPROC) (GLuint program, GLsizei bufSize, GLsizei *length, GLenum *binaryFormat, GLvoid *binary); michael@0: typedef void (GL_APIENTRYP PFNGLPROGRAMBINARYOESPROC) (GLuint program, GLenum binaryFormat, const GLvoid *binary, GLint length); michael@0: #endif michael@0: michael@0: /* GL_OES_mapbuffer */ michael@0: #ifndef GL_OES_mapbuffer michael@0: #define GL_OES_mapbuffer 1 michael@0: #ifdef GL_GLEXT_PROTOTYPES michael@0: GL_APICALL void* GL_APIENTRY glMapBufferOES (GLenum target, GLenum access); michael@0: GL_APICALL GLboolean GL_APIENTRY glUnmapBufferOES (GLenum target); michael@0: GL_APICALL void GL_APIENTRY glGetBufferPointervOES (GLenum target, GLenum pname, GLvoid** params); michael@0: #endif michael@0: typedef void* (GL_APIENTRYP PFNGLMAPBUFFEROESPROC) (GLenum target, GLenum access); michael@0: typedef GLboolean (GL_APIENTRYP PFNGLUNMAPBUFFEROESPROC) (GLenum target); michael@0: typedef void (GL_APIENTRYP PFNGLGETBUFFERPOINTERVOESPROC) (GLenum target, GLenum pname, GLvoid** params); michael@0: #endif michael@0: michael@0: /* GL_OES_packed_depth_stencil */ michael@0: #ifndef GL_OES_packed_depth_stencil michael@0: #define GL_OES_packed_depth_stencil 1 michael@0: #endif michael@0: michael@0: /* GL_OES_rgb8_rgba8 */ michael@0: #ifndef GL_OES_rgb8_rgba8 michael@0: #define GL_OES_rgb8_rgba8 1 michael@0: #endif michael@0: michael@0: /* GL_OES_standard_derivatives */ michael@0: #ifndef GL_OES_standard_derivatives michael@0: #define GL_OES_standard_derivatives 1 michael@0: #endif michael@0: michael@0: /* GL_OES_stencil1 */ michael@0: #ifndef GL_OES_stencil1 michael@0: #define GL_OES_stencil1 1 michael@0: #endif michael@0: michael@0: /* GL_OES_stencil4 */ michael@0: #ifndef GL_OES_stencil4 michael@0: #define GL_OES_stencil4 1 michael@0: #endif michael@0: michael@0: /* GL_OES_texture_3D */ michael@0: #ifndef GL_OES_texture_3D michael@0: #define GL_OES_texture_3D 1 michael@0: #ifdef GL_GLEXT_PROTOTYPES michael@0: 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); michael@0: 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); michael@0: GL_APICALL void GL_APIENTRY glCopyTexSubImage3DOES (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height); michael@0: 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); michael@0: 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); michael@0: GL_APICALL void GL_APIENTRY glFramebufferTexture3DOES (GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLint zoffset); michael@0: #endif michael@0: 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); michael@0: 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); michael@0: typedef void (GL_APIENTRYP PFNGLCOPYTEXSUBIMAGE3DOESPROC) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height); michael@0: typedef void (GL_APIENTRYP PFNGLCOMPRESSEDTEXIMAGE3DOESPROC) (GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, const GLvoid* data); michael@0: 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); michael@0: typedef void (GL_APIENTRYP PFNGLFRAMEBUFFERTEXTURE3DOES) (GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLint zoffset); michael@0: #endif michael@0: michael@0: /* GL_OES_texture_float */ michael@0: #ifndef GL_OES_texture_float michael@0: #define GL_OES_texture_float 1 michael@0: #endif michael@0: michael@0: /* GL_OES_texture_float_linear */ michael@0: #ifndef GL_OES_texture_float_linear michael@0: #define GL_OES_texture_float_linear 1 michael@0: #endif michael@0: michael@0: /* GL_OES_texture_half_float */ michael@0: #ifndef GL_OES_texture_half_float michael@0: #define GL_OES_texture_half_float 1 michael@0: #endif michael@0: michael@0: /* GL_OES_texture_half_float_linear */ michael@0: #ifndef GL_OES_texture_half_float_linear michael@0: #define GL_OES_texture_half_float_linear 1 michael@0: #endif michael@0: michael@0: /* GL_OES_texture_npot */ michael@0: #ifndef GL_OES_texture_npot michael@0: #define GL_OES_texture_npot 1 michael@0: #endif michael@0: michael@0: /* GL_OES_vertex_array_object */ michael@0: #ifndef GL_OES_vertex_array_object michael@0: #define GL_OES_vertex_array_object 1 michael@0: #ifdef GL_GLEXT_PROTOTYPES michael@0: GL_APICALL void GL_APIENTRY glBindVertexArrayOES (GLuint array); michael@0: GL_APICALL void GL_APIENTRY glDeleteVertexArraysOES (GLsizei n, const GLuint *arrays); michael@0: GL_APICALL void GL_APIENTRY glGenVertexArraysOES (GLsizei n, GLuint *arrays); michael@0: GL_APICALL GLboolean GL_APIENTRY glIsVertexArrayOES (GLuint array); michael@0: #endif michael@0: typedef void (GL_APIENTRYP PFNGLBINDVERTEXARRAYOESPROC) (GLuint array); michael@0: typedef void (GL_APIENTRYP PFNGLDELETEVERTEXARRAYSOESPROC) (GLsizei n, const GLuint *arrays); michael@0: typedef void (GL_APIENTRYP PFNGLGENVERTEXARRAYSOESPROC) (GLsizei n, GLuint *arrays); michael@0: typedef GLboolean (GL_APIENTRYP PFNGLISVERTEXARRAYOESPROC) (GLuint array); michael@0: #endif michael@0: michael@0: /* GL_OES_vertex_half_float */ michael@0: #ifndef GL_OES_vertex_half_float michael@0: #define GL_OES_vertex_half_float 1 michael@0: #endif michael@0: michael@0: /* GL_OES_vertex_type_10_10_10_2 */ michael@0: #ifndef GL_OES_vertex_type_10_10_10_2 michael@0: #define GL_OES_vertex_type_10_10_10_2 1 michael@0: #endif michael@0: michael@0: /*------------------------------------------------------------------------* michael@0: * AMD extension functions michael@0: *------------------------------------------------------------------------*/ michael@0: michael@0: /* GL_AMD_compressed_3DC_texture */ michael@0: #ifndef GL_AMD_compressed_3DC_texture michael@0: #define GL_AMD_compressed_3DC_texture 1 michael@0: #endif michael@0: michael@0: /* GL_AMD_compressed_ATC_texture */ michael@0: #ifndef GL_AMD_compressed_ATC_texture michael@0: #define GL_AMD_compressed_ATC_texture 1 michael@0: #endif michael@0: michael@0: /* AMD_performance_monitor */ michael@0: #ifndef GL_AMD_performance_monitor michael@0: #define GL_AMD_performance_monitor 1 michael@0: #ifdef GL_GLEXT_PROTOTYPES michael@0: GL_APICALL void GL_APIENTRY glGetPerfMonitorGroupsAMD (GLint *numGroups, GLsizei groupsSize, GLuint *groups); michael@0: GL_APICALL void GL_APIENTRY glGetPerfMonitorCountersAMD (GLuint group, GLint *numCounters, GLint *maxActiveCounters, GLsizei counterSize, GLuint *counters); michael@0: GL_APICALL void GL_APIENTRY glGetPerfMonitorGroupStringAMD (GLuint group, GLsizei bufSize, GLsizei *length, GLchar *groupString); michael@0: GL_APICALL void GL_APIENTRY glGetPerfMonitorCounterStringAMD (GLuint group, GLuint counter, GLsizei bufSize, GLsizei *length, GLchar *counterString); michael@0: GL_APICALL void GL_APIENTRY glGetPerfMonitorCounterInfoAMD (GLuint group, GLuint counter, GLenum pname, GLvoid *data); michael@0: GL_APICALL void GL_APIENTRY glGenPerfMonitorsAMD (GLsizei n, GLuint *monitors); michael@0: GL_APICALL void GL_APIENTRY glDeletePerfMonitorsAMD (GLsizei n, GLuint *monitors); michael@0: GL_APICALL void GL_APIENTRY glSelectPerfMonitorCountersAMD (GLuint monitor, GLboolean enable, GLuint group, GLint numCounters, GLuint *countersList); michael@0: GL_APICALL void GL_APIENTRY glBeginPerfMonitorAMD (GLuint monitor); michael@0: GL_APICALL void GL_APIENTRY glEndPerfMonitorAMD (GLuint monitor); michael@0: GL_APICALL void GL_APIENTRY glGetPerfMonitorCounterDataAMD (GLuint monitor, GLenum pname, GLsizei dataSize, GLuint *data, GLint *bytesWritten); michael@0: #endif michael@0: typedef void (GL_APIENTRYP PFNGLGETPERFMONITORGROUPSAMDPROC) (GLint *numGroups, GLsizei groupsSize, GLuint *groups); michael@0: typedef void (GL_APIENTRYP PFNGLGETPERFMONITORCOUNTERSAMDPROC) (GLuint group, GLint *numCounters, GLint *maxActiveCounters, GLsizei counterSize, GLuint *counters); michael@0: typedef void (GL_APIENTRYP PFNGLGETPERFMONITORGROUPSTRINGAMDPROC) (GLuint group, GLsizei bufSize, GLsizei *length, GLchar *groupString); michael@0: typedef void (GL_APIENTRYP PFNGLGETPERFMONITORCOUNTERSTRINGAMDPROC) (GLuint group, GLuint counter, GLsizei bufSize, GLsizei *length, GLchar *counterString); michael@0: typedef void (GL_APIENTRYP PFNGLGETPERFMONITORCOUNTERINFOAMDPROC) (GLuint group, GLuint counter, GLenum pname, GLvoid *data); michael@0: typedef void (GL_APIENTRYP PFNGLGENPERFMONITORSAMDPROC) (GLsizei n, GLuint *monitors); michael@0: typedef void (GL_APIENTRYP PFNGLDELETEPERFMONITORSAMDPROC) (GLsizei n, GLuint *monitors); michael@0: typedef void (GL_APIENTRYP PFNGLSELECTPERFMONITORCOUNTERSAMDPROC) (GLuint monitor, GLboolean enable, GLuint group, GLint numCounters, GLuint *countersList); michael@0: typedef void (GL_APIENTRYP PFNGLBEGINPERFMONITORAMDPROC) (GLuint monitor); michael@0: typedef void (GL_APIENTRYP PFNGLENDPERFMONITORAMDPROC) (GLuint monitor); michael@0: typedef void (GL_APIENTRYP PFNGLGETPERFMONITORCOUNTERDATAAMDPROC) (GLuint monitor, GLenum pname, GLsizei dataSize, GLuint *data, GLint *bytesWritten); michael@0: #endif michael@0: michael@0: /* GL_AMD_program_binary_Z400 */ michael@0: #ifndef GL_AMD_program_binary_Z400 michael@0: #define GL_AMD_program_binary_Z400 1 michael@0: #endif michael@0: michael@0: /*------------------------------------------------------------------------* michael@0: * ANGLE extension functions michael@0: *------------------------------------------------------------------------*/ michael@0: michael@0: /* GL_ANGLE_framebuffer_blit */ michael@0: #ifndef GL_ANGLE_framebuffer_blit michael@0: #define GL_ANGLE_framebuffer_blit 1 michael@0: #ifdef GL_GLEXT_PROTOTYPES michael@0: GL_APICALL void GL_APIENTRY glBlitFramebufferANGLE (GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter); michael@0: #endif michael@0: typedef void (GL_APIENTRYP PFNGLBLITFRAMEBUFFERANGLEPROC) (GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter); michael@0: #endif michael@0: michael@0: /* GL_ANGLE_framebuffer_multisample */ michael@0: #ifndef GL_ANGLE_framebuffer_multisample michael@0: #define GL_ANGLE_framebuffer_multisample 1 michael@0: #ifdef GL_GLEXT_PROTOTYPES michael@0: GL_APICALL void GL_APIENTRY glRenderbufferStorageMultisampleANGLE (GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height); michael@0: #endif michael@0: typedef void (GL_APIENTRYP PFNGLRENDERBUFFERSTORAGEMULTISAMPLEANGLEPROC) (GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height); michael@0: #endif michael@0: michael@0: /* GL_ANGLE_pack_reverse_row_order */ michael@0: #ifndef GL_ANGLE_pack_reverse_row_order michael@0: #define GL_ANGLE_pack_reverse_row_order 1 michael@0: #endif michael@0: michael@0: /* GL_ANGLE_texture_compression_dxt3 */ michael@0: #ifndef GL_ANGLE_texture_compression_dxt3 michael@0: #define GL_ANGLE_texture_compression_dxt3 1 michael@0: #endif michael@0: michael@0: /* GL_ANGLE_texture_compression_dxt5 */ michael@0: #ifndef GL_ANGLE_texture_compression_dxt5 michael@0: #define GL_ANGLE_texture_compression_dxt5 1 michael@0: #endif michael@0: michael@0: /* GL_ANGLE_translated_shader_source */ michael@0: #ifndef GL_ANGLE_translated_shader_source michael@0: #define GL_ANGLE_translated_shader_source 1 michael@0: #ifdef GL_GLEXT_PROTOTYPES michael@0: GL_APICALL void GL_APIENTRY glGetTranslatedShaderSourceANGLE (GLuint shader, GLsizei bufsize, GLsizei* length, GLchar* source); michael@0: #endif michael@0: typedef void (GL_APIENTRYP PFNGLGETTRANSLATEDSHADERSOURCEANGLEPROC) (GLuint shader, GLsizei bufsize, GLsizei* length, GLchar* source); michael@0: #endif michael@0: michael@0: /* GL_ANGLE_texture_usage */ michael@0: #ifndef GL_ANGLE_texture_usage michael@0: #define GL_ANGLE_texture_usage 1 michael@0: #endif michael@0: michael@0: /* GL_ANGLE_instanced_arrays */ michael@0: #ifndef GL_ANGLE_instanced_arrays michael@0: #define GL_ANGLE_instanced_arrays 1 michael@0: #ifdef GL_GLEXT_PROTOTYPES michael@0: GL_APICALL void GL_APIENTRY glVertexAttribDivisorANGLE(GLuint index, GLuint divisor); michael@0: GL_APICALL void GL_APIENTRY glDrawArraysInstancedANGLE(GLenum mode, GLint first, GLsizei count, GLsizei primcount); michael@0: GL_APICALL void GL_APIENTRY glDrawElementsInstancedANGLE(GLenum mode, GLsizei count, GLenum type, const GLvoid *indices, GLsizei primcount); michael@0: #endif michael@0: typedef void (GL_APIENTRYP PFNGLVERTEXATTRIBDIVISORANGLEPROC) (GLuint index, GLuint divisor); michael@0: typedef void (GL_APIENTRYP PFNGLDRAWARRAYSINSTANCEDANGLEPROC) (GLenum mode, GLint first, GLsizei count, GLsizei primcount); michael@0: typedef void (GL_APIENTRYP PFNGLDRAWELEMENTSINSTANCEDANGLEPROC) (GLenum mode, GLsizei count, GLenum type, const GLvoid *indices, GLsizei primcount); michael@0: #endif michael@0: michael@0: /*------------------------------------------------------------------------* michael@0: * APPLE extension functions michael@0: *------------------------------------------------------------------------*/ michael@0: michael@0: /* GL_APPLE_rgb_422 */ michael@0: #ifndef GL_APPLE_rgb_422 michael@0: #define GL_APPLE_rgb_422 1 michael@0: #endif michael@0: michael@0: /* GL_APPLE_framebuffer_multisample */ michael@0: #ifndef GL_APPLE_framebuffer_multisample michael@0: #define GL_APPLE_framebuffer_multisample 1 michael@0: #ifdef GL_GLEXT_PROTOTYPES michael@0: GL_APICALL void GL_APIENTRY glRenderbufferStorageMultisampleAPPLE (GLenum, GLsizei, GLenum, GLsizei, GLsizei); michael@0: GL_APICALL void GL_APIENTRY glResolveMultisampleFramebufferAPPLE (void); michael@0: #endif /* GL_GLEXT_PROTOTYPES */ michael@0: typedef void (GL_APIENTRYP PFNGLRENDERBUFFERSTORAGEMULTISAMPLEAPPLEPROC) (GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height); michael@0: typedef void (GL_APIENTRYP PFNGLRESOLVEMULTISAMPLEFRAMEBUFFERAPPLEPROC) (void); michael@0: #endif michael@0: michael@0: /* GL_APPLE_texture_format_BGRA8888 */ michael@0: #ifndef GL_APPLE_texture_format_BGRA8888 michael@0: #define GL_APPLE_texture_format_BGRA8888 1 michael@0: #endif michael@0: michael@0: /* GL_APPLE_texture_max_level */ michael@0: #ifndef GL_APPLE_texture_max_level michael@0: #define GL_APPLE_texture_max_level 1 michael@0: #endif michael@0: michael@0: /*------------------------------------------------------------------------* michael@0: * ARM extension functions michael@0: *------------------------------------------------------------------------*/ michael@0: michael@0: /* GL_ARM_mali_shader_binary */ michael@0: #ifndef GL_ARM_mali_shader_binary michael@0: #define GL_ARM_mali_shader_binary 1 michael@0: #endif michael@0: michael@0: /* GL_ARM_rgba8 */ michael@0: #ifndef GL_ARM_rgba8 michael@0: #define GL_ARM_rgba8 1 michael@0: #endif michael@0: michael@0: /*------------------------------------------------------------------------* michael@0: * EXT extension functions michael@0: *------------------------------------------------------------------------*/ michael@0: michael@0: /* GL_EXT_blend_minmax */ michael@0: #ifndef GL_EXT_blend_minmax michael@0: #define GL_EXT_blend_minmax 1 michael@0: #endif michael@0: michael@0: /* GL_EXT_color_buffer_half_float */ michael@0: #ifndef GL_EXT_color_buffer_half_float michael@0: #define GL_EXT_color_buffer_half_float 1 michael@0: #endif michael@0: michael@0: /* GL_EXT_debug_label */ michael@0: #ifndef GL_EXT_debug_label michael@0: #define GL_EXT_debug_label 1 michael@0: #ifdef GL_GLEXT_PROTOTYPES michael@0: GL_APICALL void GL_APIENTRY glLabelObjectEXT (GLenum type, GLuint object, GLsizei length, const GLchar *label); michael@0: GL_APICALL void GL_APIENTRY glGetObjectLabelEXT (GLenum type, GLuint object, GLsizei bufSize, GLsizei *length, GLchar *label); michael@0: #endif michael@0: typedef void (GL_APIENTRYP PFNGLLABELOBJECTEXTPROC) (GLenum type, GLuint object, GLsizei length, const GLchar *label); michael@0: typedef void (GL_APIENTRYP PFNGLGETOBJECTLABELEXTPROC) (GLenum type, GLuint object, GLsizei bufSize, GLsizei *length, GLchar *label); michael@0: #endif michael@0: michael@0: /* GL_EXT_debug_marker */ michael@0: #ifndef GL_EXT_debug_marker michael@0: #define GL_EXT_debug_marker 1 michael@0: #ifdef GL_GLEXT_PROTOTYPES michael@0: GL_APICALL void GL_APIENTRY glInsertEventMarkerEXT (GLsizei length, const GLchar *marker); michael@0: GL_APICALL void GL_APIENTRY glPushGroupMarkerEXT (GLsizei length, const GLchar *marker); michael@0: GL_APICALL void GL_APIENTRY glPopGroupMarkerEXT (void); michael@0: #endif michael@0: typedef void (GL_APIENTRYP PFNGLINSERTEVENTMARKEREXTPROC) (GLsizei length, const GLchar *marker); michael@0: typedef void (GL_APIENTRYP PFNGLPUSHGROUPMARKEREXTPROC) (GLsizei length, const GLchar *marker); michael@0: typedef void (GL_APIENTRYP PFNGLPOPGROUPMARKEREXTPROC) (void); michael@0: #endif michael@0: michael@0: /* GL_EXT_discard_framebuffer */ michael@0: #ifndef GL_EXT_discard_framebuffer michael@0: #define GL_EXT_discard_framebuffer 1 michael@0: #ifdef GL_GLEXT_PROTOTYPES michael@0: GL_APICALL void GL_APIENTRY glDiscardFramebufferEXT (GLenum target, GLsizei numAttachments, const GLenum *attachments); michael@0: #endif michael@0: typedef void (GL_APIENTRYP PFNGLDISCARDFRAMEBUFFEREXTPROC) (GLenum target, GLsizei numAttachments, const GLenum *attachments); michael@0: #endif michael@0: michael@0: /* GL_EXT_multisampled_render_to_texture */ michael@0: #ifndef GL_EXT_multisampled_render_to_texture michael@0: #define GL_EXT_multisampled_render_to_texture 1 michael@0: #ifdef GL_GLEXT_PROTOTYPES michael@0: GL_APICALL void GL_APIENTRY glRenderbufferStorageMultisampleEXT (GLenum, GLsizei, GLenum, GLsizei, GLsizei); michael@0: GL_APICALL void GL_APIENTRY glFramebufferTexture2DMultisampleEXT (GLenum, GLenum, GLenum, GLuint, GLint, GLsizei); michael@0: #endif michael@0: typedef void (GL_APIENTRYP PFNGLRENDERBUFFERSTORAGEMULTISAMPLEEXTPROC) (GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height); michael@0: typedef void (GL_APIENTRYP PFNGLFRAMEBUFFERTEXTURE2DMULTISAMPLEEXTPROC) (GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLsizei samples); michael@0: #endif michael@0: michael@0: #ifndef GL_EXT_multi_draw_arrays michael@0: #define GL_EXT_multi_draw_arrays 1 michael@0: #ifdef GL_GLEXT_PROTOTYPES michael@0: GL_APICALL void GL_APIENTRY glMultiDrawArraysEXT (GLenum, GLint *, GLsizei *, GLsizei); michael@0: GL_APICALL void GL_APIENTRY glMultiDrawElementsEXT (GLenum, const GLsizei *, GLenum, const GLvoid* *, GLsizei); michael@0: #endif /* GL_GLEXT_PROTOTYPES */ michael@0: typedef void (GL_APIENTRYP PFNGLMULTIDRAWARRAYSEXTPROC) (GLenum mode, GLint *first, GLsizei *count, GLsizei primcount); michael@0: typedef void (GL_APIENTRYP PFNGLMULTIDRAWELEMENTSEXTPROC) (GLenum mode, const GLsizei *count, GLenum type, const GLvoid* *indices, GLsizei primcount); michael@0: #endif michael@0: michael@0: /* GL_EXT_occlusion_query_boolean */ michael@0: #ifndef GL_EXT_occlusion_query_boolean michael@0: #define GL_EXT_occlusion_query_boolean 1 michael@0: #ifdef GL_GLEXT_PROTOTYPES michael@0: GL_APICALL void GL_APIENTRY glGenQueriesEXT (GLsizei n, GLuint *ids); michael@0: GL_APICALL void GL_APIENTRY glDeleteQueriesEXT (GLsizei n, const GLuint *ids); michael@0: GL_APICALL GLboolean GL_APIENTRY glIsQueryEXT (GLuint id); michael@0: GL_APICALL void GL_APIENTRY glBeginQueryEXT (GLenum target, GLuint id); michael@0: GL_APICALL void GL_APIENTRY glEndQueryEXT (GLenum target); michael@0: GL_APICALL void GL_APIENTRY glGetQueryivEXT (GLenum target, GLenum pname, GLint *params); michael@0: GL_APICALL void GL_APIENTRY glGetQueryObjectuivEXT (GLuint id, GLenum pname, GLuint *params); michael@0: #endif michael@0: typedef void (GL_APIENTRYP PFNGLGENQUERIESEXTPROC) (GLsizei n, GLuint *ids); michael@0: typedef void (GL_APIENTRYP PFNGLDELETEQUERIESEXTPROC) (GLsizei n, const GLuint *ids); michael@0: typedef GLboolean (GL_APIENTRYP PFNGLISQUERYEXTPROC) (GLuint id); michael@0: typedef void (GL_APIENTRYP PFNGLBEGINQUERYEXTPROC) (GLenum target, GLuint id); michael@0: typedef void (GL_APIENTRYP PFNGLENDQUERYEXTPROC) (GLenum target); michael@0: typedef void (GL_APIENTRYP PFNGLGETQUERYIVEXTPROC) (GLenum target, GLenum pname, GLint *params); michael@0: typedef void (GL_APIENTRYP PFNGLGETQUERYOBJECTUIVEXTPROC) (GLuint id, GLenum pname, GLuint *params); michael@0: #endif michael@0: michael@0: /* GL_EXT_read_format_bgra */ michael@0: #ifndef GL_EXT_read_format_bgra michael@0: #define GL_EXT_read_format_bgra 1 michael@0: #endif michael@0: michael@0: /* GL_EXT_robustness */ michael@0: #ifndef GL_EXT_robustness michael@0: #define GL_EXT_robustness 1 michael@0: #ifdef GL_GLEXT_PROTOTYPES michael@0: GL_APICALL GLenum GL_APIENTRY glGetGraphicsResetStatusEXT (void); michael@0: GL_APICALL void GL_APIENTRY glReadnPixelsEXT (GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, GLsizei bufSize, void *data); michael@0: GL_APICALL void GL_APIENTRY glGetnUniformfvEXT (GLuint program, GLint location, GLsizei bufSize, float *params); michael@0: GL_APICALL void GL_APIENTRY glGetnUniformivEXT (GLuint program, GLint location, GLsizei bufSize, GLint *params); michael@0: #endif michael@0: typedef GLenum (GL_APIENTRYP PFNGLGETGRAPHICSRESETSTATUSEXTPROC) (void); michael@0: typedef void (GL_APIENTRYP PFNGLREADNPIXELSEXTPROC) (GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, GLsizei bufSize, void *data); michael@0: typedef void (GL_APIENTRYP PFNGLGETNUNIFORMFVEXTPROC) (GLuint program, GLint location, GLsizei bufSize, float *params); michael@0: typedef void (GL_APIENTRYP PFNGLGETNUNIFORMIVEXTPROC) (GLuint program, GLint location, GLsizei bufSize, GLint *params); michael@0: #endif michael@0: michael@0: /* GL_EXT_separate_shader_objects */ michael@0: #ifndef GL_EXT_separate_shader_objects michael@0: #define GL_EXT_separate_shader_objects 1 michael@0: #ifdef GL_GLEXT_PROTOTYPES michael@0: GL_APICALL void GL_APIENTRY glUseProgramStagesEXT (GLuint pipeline, GLbitfield stages, GLuint program); michael@0: GL_APICALL void GL_APIENTRY glActiveShaderProgramEXT (GLuint pipeline, GLuint program); michael@0: GL_APICALL GLuint GL_APIENTRY glCreateShaderProgramvEXT (GLenum type, GLsizei count, const GLchar **strings); michael@0: GL_APICALL void GL_APIENTRY glBindProgramPipelineEXT (GLuint pipeline); michael@0: GL_APICALL void GL_APIENTRY glDeleteProgramPipelinesEXT (GLsizei n, const GLuint *pipelines); michael@0: GL_APICALL void GL_APIENTRY glGenProgramPipelinesEXT (GLsizei n, GLuint *pipelines); michael@0: GL_APICALL GLboolean GL_APIENTRY glIsProgramPipelineEXT (GLuint pipeline); michael@0: GL_APICALL void GL_APIENTRY glProgramParameteriEXT (GLuint program, GLenum pname, GLint value); michael@0: GL_APICALL void GL_APIENTRY glGetProgramPipelineivEXT (GLuint pipeline, GLenum pname, GLint *params); michael@0: GL_APICALL void GL_APIENTRY glProgramUniform1iEXT (GLuint program, GLint location, GLint x); michael@0: GL_APICALL void GL_APIENTRY glProgramUniform2iEXT (GLuint program, GLint location, GLint x, GLint y); michael@0: GL_APICALL void GL_APIENTRY glProgramUniform3iEXT (GLuint program, GLint location, GLint x, GLint y, GLint z); michael@0: GL_APICALL void GL_APIENTRY glProgramUniform4iEXT (GLuint program, GLint location, GLint x, GLint y, GLint z, GLint w); michael@0: GL_APICALL void GL_APIENTRY glProgramUniform1fEXT (GLuint program, GLint location, GLfloat x); michael@0: GL_APICALL void GL_APIENTRY glProgramUniform2fEXT (GLuint program, GLint location, GLfloat x, GLfloat y); michael@0: GL_APICALL void GL_APIENTRY glProgramUniform3fEXT (GLuint program, GLint location, GLfloat x, GLfloat y, GLfloat z); michael@0: GL_APICALL void GL_APIENTRY glProgramUniform4fEXT (GLuint program, GLint location, GLfloat x, GLfloat y, GLfloat z, GLfloat w); michael@0: GL_APICALL void GL_APIENTRY glProgramUniform1ivEXT (GLuint program, GLint location, GLsizei count, const GLint *value); michael@0: GL_APICALL void GL_APIENTRY glProgramUniform2ivEXT (GLuint program, GLint location, GLsizei count, const GLint *value); michael@0: GL_APICALL void GL_APIENTRY glProgramUniform3ivEXT (GLuint program, GLint location, GLsizei count, const GLint *value); michael@0: GL_APICALL void GL_APIENTRY glProgramUniform4ivEXT (GLuint program, GLint location, GLsizei count, const GLint *value); michael@0: GL_APICALL void GL_APIENTRY glProgramUniform1fvEXT (GLuint program, GLint location, GLsizei count, const GLfloat *value); michael@0: GL_APICALL void GL_APIENTRY glProgramUniform2fvEXT (GLuint program, GLint location, GLsizei count, const GLfloat *value); michael@0: GL_APICALL void GL_APIENTRY glProgramUniform3fvEXT (GLuint program, GLint location, GLsizei count, const GLfloat *value); michael@0: GL_APICALL void GL_APIENTRY glProgramUniform4fvEXT (GLuint program, GLint location, GLsizei count, const GLfloat *value); michael@0: GL_APICALL void GL_APIENTRY glProgramUniformMatrix2fvEXT (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value); michael@0: GL_APICALL void GL_APIENTRY glProgramUniformMatrix3fvEXT (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value); michael@0: GL_APICALL void GL_APIENTRY glProgramUniformMatrix4fvEXT (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value); michael@0: GL_APICALL void GL_APIENTRY glValidateProgramPipelineEXT (GLuint pipeline); michael@0: GL_APICALL void GL_APIENTRY glGetProgramPipelineInfoLogEXT (GLuint pipeline, GLsizei bufSize, GLsizei *length, GLchar *infoLog); michael@0: #endif michael@0: typedef void (GL_APIENTRYP PFNGLUSEPROGRAMSTAGESEXTPROC) (GLuint pipeline, GLbitfield stages, GLuint program); michael@0: typedef void (GL_APIENTRYP PFNGLACTIVESHADERPROGRAMEXTPROC) (GLuint pipeline, GLuint program); michael@0: typedef GLuint (GL_APIENTRYP PFNGLCREATESHADERPROGRAMVEXTPROC) (GLenum type, GLsizei count, const GLchar **strings); michael@0: typedef void (GL_APIENTRYP PFNGLBINDPROGRAMPIPELINEEXTPROC) (GLuint pipeline); michael@0: typedef void (GL_APIENTRYP PFNGLDELETEPROGRAMPIPELINESEXTPROC) (GLsizei n, const GLuint *pipelines); michael@0: typedef void (GL_APIENTRYP PFNGLGENPROGRAMPIPELINESEXTPROC) (GLsizei n, GLuint *pipelines); michael@0: typedef GLboolean (GL_APIENTRYP PFNGLISPROGRAMPIPELINEEXTPROC) (GLuint pipeline); michael@0: typedef void (GL_APIENTRYP PFNGLPROGRAMPARAMETERIEXTPROC) (GLuint program, GLenum pname, GLint value); michael@0: typedef void (GL_APIENTRYP PFNGLGETPROGRAMPIPELINEIVEXTPROC) (GLuint pipeline, GLenum pname, GLint *params); michael@0: typedef void (GL_APIENTRYP PFNGLPROGRAMUNIFORM1IEXTPROC) (GLuint program, GLint location, GLint x); michael@0: typedef void (GL_APIENTRYP PFNGLPROGRAMUNIFORM2IEXTPROC) (GLuint program, GLint location, GLint x, GLint y); michael@0: typedef void (GL_APIENTRYP PFNGLPROGRAMUNIFORM3IEXTPROC) (GLuint program, GLint location, GLint x, GLint y, GLint z); michael@0: typedef void (GL_APIENTRYP PFNGLPROGRAMUNIFORM4IEXTPROC) (GLuint program, GLint location, GLint x, GLint y, GLint z, GLint w); michael@0: typedef void (GL_APIENTRYP PFNGLPROGRAMUNIFORM1FEXTPROC) (GLuint program, GLint location, GLfloat x); michael@0: typedef void (GL_APIENTRYP PFNGLPROGRAMUNIFORM2FEXTPROC) (GLuint program, GLint location, GLfloat x, GLfloat y); michael@0: typedef void (GL_APIENTRYP PFNGLPROGRAMUNIFORM3FEXTPROC) (GLuint program, GLint location, GLfloat x, GLfloat y, GLfloat z); michael@0: typedef void (GL_APIENTRYP PFNGLPROGRAMUNIFORM4FEXTPROC) (GLuint program, GLint location, GLfloat x, GLfloat y, GLfloat z, GLfloat w); michael@0: typedef void (GL_APIENTRYP PFNGLPROGRAMUNIFORM1IVEXTPROC) (GLuint program, GLint location, GLsizei count, const GLint *value); michael@0: typedef void (GL_APIENTRYP PFNGLPROGRAMUNIFORM2IVEXTPROC) (GLuint program, GLint location, GLsizei count, const GLint *value); michael@0: typedef void (GL_APIENTRYP PFNGLPROGRAMUNIFORM3IVEXTPROC) (GLuint program, GLint location, GLsizei count, const GLint *value); michael@0: typedef void (GL_APIENTRYP PFNGLPROGRAMUNIFORM4IVEXTPROC) (GLuint program, GLint location, GLsizei count, const GLint *value); michael@0: typedef void (GL_APIENTRYP PFNGLPROGRAMUNIFORM1FVEXTPROC) (GLuint program, GLint location, GLsizei count, const GLfloat *value); michael@0: typedef void (GL_APIENTRYP PFNGLPROGRAMUNIFORM2FVEXTPROC) (GLuint program, GLint location, GLsizei count, const GLfloat *value); michael@0: typedef void (GL_APIENTRYP PFNGLPROGRAMUNIFORM3FVEXTPROC) (GLuint program, GLint location, GLsizei count, const GLfloat *value); michael@0: typedef void (GL_APIENTRYP PFNGLPROGRAMUNIFORM4FVEXTPROC) (GLuint program, GLint location, GLsizei count, const GLfloat *value); michael@0: typedef void (GL_APIENTRYP PFNGLPROGRAMUNIFORMMATRIX2FVEXTPROC) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value); michael@0: typedef void (GL_APIENTRYP PFNGLPROGRAMUNIFORMMATRIX3FVEXTPROC) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value); michael@0: typedef void (GL_APIENTRYP PFNGLPROGRAMUNIFORMMATRIX4FVEXTPROC) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value); michael@0: typedef void (GL_APIENTRYP PFNGLVALIDATEPROGRAMPIPELINEEXTPROC) (GLuint pipeline); michael@0: typedef void (GL_APIENTRYP PFNGLGETPROGRAMPIPELINEINFOLOGEXTPROC) (GLuint pipeline, GLsizei bufSize, GLsizei *length, GLchar *infoLog); michael@0: #endif michael@0: michael@0: /* GL_EXT_shader_texture_lod */ michael@0: #ifndef GL_EXT_shader_texture_lod michael@0: #define GL_EXT_shader_texture_lod 1 michael@0: #endif michael@0: michael@0: /* GL_EXT_shadow_samplers */ michael@0: #ifndef GL_EXT_shadow_samplers michael@0: #define GL_EXT_shadow_samplers 1 michael@0: #endif michael@0: michael@0: /* GL_EXT_sRGB */ michael@0: #ifndef GL_EXT_sRGB michael@0: #define GL_EXT_sRGB 1 michael@0: #endif michael@0: michael@0: /* GL_EXT_texture_compression_dxt1 */ michael@0: #ifndef GL_EXT_texture_compression_dxt1 michael@0: #define GL_EXT_texture_compression_dxt1 1 michael@0: #endif michael@0: michael@0: /* GL_EXT_texture_filter_anisotropic */ michael@0: #ifndef GL_EXT_texture_filter_anisotropic michael@0: #define GL_EXT_texture_filter_anisotropic 1 michael@0: #endif michael@0: michael@0: /* GL_EXT_texture_format_BGRA8888 */ michael@0: #ifndef GL_EXT_texture_format_BGRA8888 michael@0: #define GL_EXT_texture_format_BGRA8888 1 michael@0: #endif michael@0: michael@0: /* GL_EXT_texture_rg */ michael@0: #ifndef GL_EXT_texture_rg michael@0: #define GL_EXT_texture_rg 1 michael@0: #endif michael@0: michael@0: /* GL_EXT_texture_storage */ michael@0: #ifndef GL_EXT_texture_storage michael@0: #define GL_EXT_texture_storage 1 michael@0: #ifdef GL_GLEXT_PROTOTYPES michael@0: GL_APICALL void GL_APIENTRY glTexStorage1DEXT (GLenum target, GLsizei levels, GLenum internalformat, GLsizei width); michael@0: GL_APICALL void GL_APIENTRY glTexStorage2DEXT (GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height); michael@0: GL_APICALL void GL_APIENTRY glTexStorage3DEXT (GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth); michael@0: GL_APICALL void GL_APIENTRY glTextureStorage1DEXT (GLuint texture, GLenum target, GLsizei levels, GLenum internalformat, GLsizei width); michael@0: GL_APICALL void GL_APIENTRY glTextureStorage2DEXT (GLuint texture, GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height); michael@0: GL_APICALL void GL_APIENTRY glTextureStorage3DEXT (GLuint texture, GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth); michael@0: #endif michael@0: typedef void (GL_APIENTRYP PFNGLTEXSTORAGE1DEXTPROC) (GLenum target, GLsizei levels, GLenum internalformat, GLsizei width); michael@0: typedef void (GL_APIENTRYP PFNGLTEXSTORAGE2DEXTPROC) (GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height); michael@0: typedef void (GL_APIENTRYP PFNGLTEXSTORAGE3DEXTPROC) (GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth); michael@0: typedef void (GL_APIENTRYP PFNGLTEXTURESTORAGE1DEXTPROC) (GLuint texture, GLenum target, GLsizei levels, GLenum internalformat, GLsizei width); michael@0: typedef void (GL_APIENTRYP PFNGLTEXTURESTORAGE2DEXTPROC) (GLuint texture, GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height); michael@0: typedef void (GL_APIENTRYP PFNGLTEXTURESTORAGE3DEXTPROC) (GLuint texture, GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth); michael@0: #endif michael@0: michael@0: /* GL_EXT_texture_type_2_10_10_10_REV */ michael@0: #ifndef GL_EXT_texture_type_2_10_10_10_REV michael@0: #define GL_EXT_texture_type_2_10_10_10_REV 1 michael@0: #endif michael@0: michael@0: /* GL_EXT_unpack_subimage */ michael@0: #ifndef GL_EXT_unpack_subimage michael@0: #define GL_EXT_unpack_subimage 1 michael@0: #endif michael@0: michael@0: /*------------------------------------------------------------------------* michael@0: * DMP extension functions michael@0: *------------------------------------------------------------------------*/ michael@0: michael@0: /* GL_DMP_shader_binary */ michael@0: #ifndef GL_DMP_shader_binary michael@0: #define GL_DMP_shader_binary 1 michael@0: #endif michael@0: michael@0: /*------------------------------------------------------------------------* michael@0: * IMG extension functions michael@0: *------------------------------------------------------------------------*/ michael@0: michael@0: /* GL_IMG_program_binary */ michael@0: #ifndef GL_IMG_program_binary michael@0: #define GL_IMG_program_binary 1 michael@0: #endif michael@0: michael@0: /* GL_IMG_read_format */ michael@0: #ifndef GL_IMG_read_format michael@0: #define GL_IMG_read_format 1 michael@0: #endif michael@0: michael@0: /* GL_IMG_shader_binary */ michael@0: #ifndef GL_IMG_shader_binary michael@0: #define GL_IMG_shader_binary 1 michael@0: #endif michael@0: michael@0: /* GL_IMG_texture_compression_pvrtc */ michael@0: #ifndef GL_IMG_texture_compression_pvrtc michael@0: #define GL_IMG_texture_compression_pvrtc 1 michael@0: #endif michael@0: michael@0: /* GL_IMG_multisampled_render_to_texture */ michael@0: #ifndef GL_IMG_multisampled_render_to_texture michael@0: #define GL_IMG_multisampled_render_to_texture 1 michael@0: #ifdef GL_GLEXT_PROTOTYPES michael@0: GL_APICALL void GL_APIENTRY glRenderbufferStorageMultisampleIMG (GLenum, GLsizei, GLenum, GLsizei, GLsizei); michael@0: GL_APICALL void GL_APIENTRY glFramebufferTexture2DMultisampleIMG (GLenum, GLenum, GLenum, GLuint, GLint, GLsizei); michael@0: #endif michael@0: typedef void (GL_APIENTRYP PFNGLRENDERBUFFERSTORAGEMULTISAMPLEIMG) (GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height); michael@0: typedef void (GL_APIENTRYP PFNGLFRAMEBUFFERTEXTURE2DMULTISAMPLEIMG) (GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLsizei samples); michael@0: #endif michael@0: michael@0: /*------------------------------------------------------------------------* michael@0: * NV extension functions michael@0: *------------------------------------------------------------------------*/ michael@0: michael@0: /* GL_NV_coverage_sample */ michael@0: #ifndef GL_NV_coverage_sample michael@0: #define GL_NV_coverage_sample 1 michael@0: #ifdef GL_GLEXT_PROTOTYPES michael@0: GL_APICALL void GL_APIENTRY glCoverageMaskNV (GLboolean mask); michael@0: GL_APICALL void GL_APIENTRY glCoverageOperationNV (GLenum operation); michael@0: #endif michael@0: typedef void (GL_APIENTRYP PFNGLCOVERAGEMASKNVPROC) (GLboolean mask); michael@0: typedef void (GL_APIENTRYP PFNGLCOVERAGEOPERATIONNVPROC) (GLenum operation); michael@0: #endif michael@0: michael@0: /* GL_NV_depth_nonlinear */ michael@0: #ifndef GL_NV_depth_nonlinear michael@0: #define GL_NV_depth_nonlinear 1 michael@0: #endif michael@0: michael@0: /* GL_NV_draw_buffers */ michael@0: #ifndef GL_NV_draw_buffers michael@0: #define GL_NV_draw_buffers 1 michael@0: #ifdef GL_GLEXT_PROTOTYPES michael@0: GL_APICALL void GL_APIENTRY glDrawBuffersNV (GLsizei n, const GLenum *bufs); michael@0: #endif michael@0: typedef void (GL_APIENTRYP PFNGLDRAWBUFFERSNVPROC) (GLsizei n, const GLenum *bufs); michael@0: #endif michael@0: michael@0: #ifndef GL_EXT_draw_buffers michael@0: #define GL_EXT_draw_buffers 1 michael@0: #ifdef GL_GLEXT_PROTOTYPES michael@0: GL_APICALL void GL_APIENTRY glDrawBuffersEXT (GLsizei n, const GLenum *bufs); michael@0: #endif michael@0: typedef void (GL_APIENTRYP PFNGLDRAWBUFFERSEXTPROC) (GLsizei n, const GLenum *bufs); michael@0: #endif michael@0: michael@0: /* GL_NV_fbo_color_attachments */ michael@0: #ifndef GL_NV_fbo_color_attachments michael@0: #define GL_NV_fbo_color_attachments 1 michael@0: #endif michael@0: michael@0: /* GL_NV_fence */ michael@0: #ifndef GL_NV_fence michael@0: #define GL_NV_fence 1 michael@0: #ifdef GL_GLEXT_PROTOTYPES michael@0: GL_APICALL void GL_APIENTRY glDeleteFencesNV (GLsizei, const GLuint *); michael@0: GL_APICALL void GL_APIENTRY glGenFencesNV (GLsizei, GLuint *); michael@0: GL_APICALL GLboolean GL_APIENTRY glIsFenceNV (GLuint); michael@0: GL_APICALL GLboolean GL_APIENTRY glTestFenceNV (GLuint); michael@0: GL_APICALL void GL_APIENTRY glGetFenceivNV (GLuint, GLenum, GLint *); michael@0: GL_APICALL void GL_APIENTRY glFinishFenceNV (GLuint); michael@0: GL_APICALL void GL_APIENTRY glSetFenceNV (GLuint, GLenum); michael@0: #endif michael@0: typedef void (GL_APIENTRYP PFNGLDELETEFENCESNVPROC) (GLsizei n, const GLuint *fences); michael@0: typedef void (GL_APIENTRYP PFNGLGENFENCESNVPROC) (GLsizei n, GLuint *fences); michael@0: typedef GLboolean (GL_APIENTRYP PFNGLISFENCENVPROC) (GLuint fence); michael@0: typedef GLboolean (GL_APIENTRYP PFNGLTESTFENCENVPROC) (GLuint fence); michael@0: typedef void (GL_APIENTRYP PFNGLGETFENCEIVNVPROC) (GLuint fence, GLenum pname, GLint *params); michael@0: typedef void (GL_APIENTRYP PFNGLFINISHFENCENVPROC) (GLuint fence); michael@0: typedef void (GL_APIENTRYP PFNGLSETFENCENVPROC) (GLuint fence, GLenum condition); michael@0: #endif michael@0: michael@0: /* GL_NV_read_buffer */ michael@0: #ifndef GL_NV_read_buffer michael@0: #define GL_NV_read_buffer 1 michael@0: #ifdef GL_GLEXT_PROTOTYPES michael@0: GL_APICALL void GL_APIENTRY glReadBufferNV (GLenum mode); michael@0: #endif michael@0: typedef void (GL_APIENTRYP PFNGLREADBUFFERNVPROC) (GLenum mode); michael@0: #endif michael@0: michael@0: /* GL_NV_read_buffer_front */ michael@0: #ifndef GL_NV_read_buffer_front michael@0: #define GL_NV_read_buffer_front 1 michael@0: #endif michael@0: michael@0: /* GL_NV_read_depth */ michael@0: #ifndef GL_NV_read_depth michael@0: #define GL_NV_read_depth 1 michael@0: #endif michael@0: michael@0: /* GL_NV_read_depth_stencil */ michael@0: #ifndef GL_NV_read_depth_stencil michael@0: #define GL_NV_read_depth_stencil 1 michael@0: #endif michael@0: michael@0: /* GL_NV_read_stencil */ michael@0: #ifndef GL_NV_read_stencil michael@0: #define GL_NV_read_stencil 1 michael@0: #endif michael@0: michael@0: /* GL_NV_texture_compression_s3tc_update */ michael@0: #ifndef GL_NV_texture_compression_s3tc_update michael@0: #define GL_NV_texture_compression_s3tc_update 1 michael@0: #endif michael@0: michael@0: /* GL_NV_texture_npot_2D_mipmap */ michael@0: #ifndef GL_NV_texture_npot_2D_mipmap michael@0: #define GL_NV_texture_npot_2D_mipmap 1 michael@0: #endif michael@0: michael@0: /*------------------------------------------------------------------------* michael@0: * QCOM extension functions michael@0: *------------------------------------------------------------------------*/ michael@0: michael@0: /* GL_QCOM_alpha_test */ michael@0: #ifndef GL_QCOM_alpha_test michael@0: #define GL_QCOM_alpha_test 1 michael@0: #ifdef GL_GLEXT_PROTOTYPES michael@0: GL_APICALL void GL_APIENTRY glAlphaFuncQCOM (GLenum func, GLclampf ref); michael@0: #endif michael@0: typedef void (GL_APIENTRYP PFNGLALPHAFUNCQCOMPROC) (GLenum func, GLclampf ref); michael@0: #endif michael@0: michael@0: /* GL_QCOM_driver_control */ michael@0: #ifndef GL_QCOM_driver_control michael@0: #define GL_QCOM_driver_control 1 michael@0: #ifdef GL_GLEXT_PROTOTYPES michael@0: GL_APICALL void GL_APIENTRY glGetDriverControlsQCOM (GLint *num, GLsizei size, GLuint *driverControls); michael@0: GL_APICALL void GL_APIENTRY glGetDriverControlStringQCOM (GLuint driverControl, GLsizei bufSize, GLsizei *length, GLchar *driverControlString); michael@0: GL_APICALL void GL_APIENTRY glEnableDriverControlQCOM (GLuint driverControl); michael@0: GL_APICALL void GL_APIENTRY glDisableDriverControlQCOM (GLuint driverControl); michael@0: #endif michael@0: typedef void (GL_APIENTRYP PFNGLGETDRIVERCONTROLSQCOMPROC) (GLint *num, GLsizei size, GLuint *driverControls); michael@0: typedef void (GL_APIENTRYP PFNGLGETDRIVERCONTROLSTRINGQCOMPROC) (GLuint driverControl, GLsizei bufSize, GLsizei *length, GLchar *driverControlString); michael@0: typedef void (GL_APIENTRYP PFNGLENABLEDRIVERCONTROLQCOMPROC) (GLuint driverControl); michael@0: typedef void (GL_APIENTRYP PFNGLDISABLEDRIVERCONTROLQCOMPROC) (GLuint driverControl); michael@0: #endif michael@0: michael@0: /* GL_QCOM_extended_get */ michael@0: #ifndef GL_QCOM_extended_get michael@0: #define GL_QCOM_extended_get 1 michael@0: #ifdef GL_GLEXT_PROTOTYPES michael@0: GL_APICALL void GL_APIENTRY glExtGetTexturesQCOM (GLuint *textures, GLint maxTextures, GLint *numTextures); michael@0: GL_APICALL void GL_APIENTRY glExtGetBuffersQCOM (GLuint *buffers, GLint maxBuffers, GLint *numBuffers); michael@0: GL_APICALL void GL_APIENTRY glExtGetRenderbuffersQCOM (GLuint *renderbuffers, GLint maxRenderbuffers, GLint *numRenderbuffers); michael@0: GL_APICALL void GL_APIENTRY glExtGetFramebuffersQCOM (GLuint *framebuffers, GLint maxFramebuffers, GLint *numFramebuffers); michael@0: GL_APICALL void GL_APIENTRY glExtGetTexLevelParameterivQCOM (GLuint texture, GLenum face, GLint level, GLenum pname, GLint *params); michael@0: GL_APICALL void GL_APIENTRY glExtTexObjectStateOverrideiQCOM (GLenum target, GLenum pname, GLint param); michael@0: 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); michael@0: GL_APICALL void GL_APIENTRY glExtGetBufferPointervQCOM (GLenum target, GLvoid **params); michael@0: #endif michael@0: typedef void (GL_APIENTRYP PFNGLEXTGETTEXTURESQCOMPROC) (GLuint *textures, GLint maxTextures, GLint *numTextures); michael@0: typedef void (GL_APIENTRYP PFNGLEXTGETBUFFERSQCOMPROC) (GLuint *buffers, GLint maxBuffers, GLint *numBuffers); michael@0: typedef void (GL_APIENTRYP PFNGLEXTGETRENDERBUFFERSQCOMPROC) (GLuint *renderbuffers, GLint maxRenderbuffers, GLint *numRenderbuffers); michael@0: typedef void (GL_APIENTRYP PFNGLEXTGETFRAMEBUFFERSQCOMPROC) (GLuint *framebuffers, GLint maxFramebuffers, GLint *numFramebuffers); michael@0: typedef void (GL_APIENTRYP PFNGLEXTGETTEXLEVELPARAMETERIVQCOMPROC) (GLuint texture, GLenum face, GLint level, GLenum pname, GLint *params); michael@0: typedef void (GL_APIENTRYP PFNGLEXTTEXOBJECTSTATEOVERRIDEIQCOMPROC) (GLenum target, GLenum pname, GLint param); michael@0: 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); michael@0: typedef void (GL_APIENTRYP PFNGLEXTGETBUFFERPOINTERVQCOMPROC) (GLenum target, GLvoid **params); michael@0: #endif michael@0: michael@0: /* GL_QCOM_extended_get2 */ michael@0: #ifndef GL_QCOM_extended_get2 michael@0: #define GL_QCOM_extended_get2 1 michael@0: #ifdef GL_GLEXT_PROTOTYPES michael@0: GL_APICALL void GL_APIENTRY glExtGetShadersQCOM (GLuint *shaders, GLint maxShaders, GLint *numShaders); michael@0: GL_APICALL void GL_APIENTRY glExtGetProgramsQCOM (GLuint *programs, GLint maxPrograms, GLint *numPrograms); michael@0: GL_APICALL GLboolean GL_APIENTRY glExtIsProgramBinaryQCOM (GLuint program); michael@0: GL_APICALL void GL_APIENTRY glExtGetProgramBinarySourceQCOM (GLuint program, GLenum shadertype, GLchar *source, GLint *length); michael@0: #endif michael@0: typedef void (GL_APIENTRYP PFNGLEXTGETSHADERSQCOMPROC) (GLuint *shaders, GLint maxShaders, GLint *numShaders); michael@0: typedef void (GL_APIENTRYP PFNGLEXTGETPROGRAMSQCOMPROC) (GLuint *programs, GLint maxPrograms, GLint *numPrograms); michael@0: typedef GLboolean (GL_APIENTRYP PFNGLEXTISPROGRAMBINARYQCOMPROC) (GLuint program); michael@0: typedef void (GL_APIENTRYP PFNGLEXTGETPROGRAMBINARYSOURCEQCOMPROC) (GLuint program, GLenum shadertype, GLchar *source, GLint *length); michael@0: #endif michael@0: michael@0: /* GL_QCOM_perfmon_global_mode */ michael@0: #ifndef GL_QCOM_perfmon_global_mode michael@0: #define GL_QCOM_perfmon_global_mode 1 michael@0: #endif michael@0: michael@0: /* GL_QCOM_writeonly_rendering */ michael@0: #ifndef GL_QCOM_writeonly_rendering michael@0: #define GL_QCOM_writeonly_rendering 1 michael@0: #endif michael@0: michael@0: /* GL_QCOM_tiled_rendering */ michael@0: #ifndef GL_QCOM_tiled_rendering michael@0: #define GL_QCOM_tiled_rendering 1 michael@0: #ifdef GL_GLEXT_PROTOTYPES michael@0: GL_APICALL void GL_APIENTRY glStartTilingQCOM (GLuint x, GLuint y, GLuint width, GLuint height, GLbitfield preserveMask); michael@0: GL_APICALL void GL_APIENTRY glEndTilingQCOM (GLbitfield preserveMask); michael@0: #endif michael@0: typedef void (GL_APIENTRYP PFNGLSTARTTILINGQCOMPROC) (GLuint x, GLuint y, GLuint width, GLuint height, GLbitfield preserveMask); michael@0: typedef void (GL_APIENTRYP PFNGLENDTILINGQCOMPROC) (GLbitfield preserveMask); michael@0: #endif michael@0: michael@0: /*------------------------------------------------------------------------* michael@0: * VIV extension tokens michael@0: *------------------------------------------------------------------------*/ michael@0: michael@0: /* GL_VIV_shader_binary */ michael@0: #ifndef GL_VIV_shader_binary michael@0: #define GL_VIV_shader_binary 1 michael@0: #endif michael@0: michael@0: /* GL_ANGLE_program_binary */ michael@0: #ifndef GL_ANGLE_program_binary michael@0: #define GL_ANGLE_program_binary 1 michael@0: #endif michael@0: michael@0: #ifdef __cplusplus michael@0: } michael@0: #endif michael@0: michael@0: #endif /* __gl2ext_h_ */