get_sizes.py revision 81578c6df6541d965dcfe32dd0e0decb64a42284
6ca0e6973c8176100f4a426444823ae5e777e28fsascha# Copyright (c) 2001, Stanford University
e379fc6d7f79163700290d92ce75deb4f3005301jerenkrantz# All rights reserved.
e379fc6d7f79163700290d92ce75deb4f3005301jerenkrantz# See the file LICENSE.txt for information on redistributing this software.
0af58edfee6112cc3399e0e693340e525b96ab1ctrawick #GL_ARB_IMAGING which is part of 1.2.1
6ca0e6973c8176100f4a426444823ae5e777e28fsascha 'GL_BLEND_SRC_RGB_EXT': (1, 'CR_EXT_blend_func_separate'),
e379fc6d7f79163700290d92ce75deb4f3005301jerenkrantz 'GL_BLEND_DST_RGB_EXT': (1, 'CR_EXT_blend_func_separate'),
e379fc6d7f79163700290d92ce75deb4f3005301jerenkrantz 'GL_BLEND_SRC_ALPHA_EXT': (1, 'CR_EXT_blend_func_separate'),
7a9190dfde3a06f271dc6c4f4830c1a5440efef8fanf 'GL_BLEND_DST_ALPHA_EXT': (1, 'CR_EXT_blend_func_separate'),
d0211374a981173d4537e3f919c708b5f64040fcgstein 'GL_FOG_DISTANCE_MODE_NV': (1, 'CR_NV_fog_distance'),
5b43275cebfb0ff9961ac462f3a96f7fe612d327rjung 'GL_MAX_CUBE_MAP_TEXTURE_SIZE_ARB': (1, 'CR_ARB_texture_cube_map'),
212c401808586d1fecd0e639ec1697229674a151sf 'GL_MAX_TEXTURE_MAX_ANISOTROPY_EXT': (1, 'CR_EXT_texture_filter_anisotropic'),
212c401808586d1fecd0e639ec1697229674a151sf 'GL_TEXTURE_BINDING_CUBE_MAP_ARB': (1, 'CR_ARB_texture_cube_map'),
212c401808586d1fecd0e639ec1697229674a151sf 'GL_TEXTURE_CUBE_MAP_ARB': (1, 'CR_ARB_texture_cube_map'),
e68a106d8ca66ed58b44bca438b13838ddd4f2b8sf 'GL_CLIENT_ACTIVE_TEXTURE_ARB': (1, 'CR_ARB_multitexture'),
e68a106d8ca66ed58b44bca438b13838ddd4f2b8sf 'GL_NUM_GENERAL_COMBINERS_NV': (1, 'CR_NV_register_combiners'),
e68a106d8ca66ed58b44bca438b13838ddd4f2b8sf 'GL_MAX_GENERAL_COMBINERS_NV': (1, 'CR_NV_register_combiners'),
e68a106d8ca66ed58b44bca438b13838ddd4f2b8sf 'GL_COLOR_SUM_CLAMP_NV': (1, 'CR_NV_register_combiners'),
e68a106d8ca66ed58b44bca438b13838ddd4f2b8sf 'GL_CONSTANT_COLOR0_NV': (4, 'CR_NV_register_combiners'),
e68a106d8ca66ed58b44bca438b13838ddd4f2b8sf 'GL_CONSTANT_COLOR1_NV': (4, 'CR_NV_register_combiners'),
e68a106d8ca66ed58b44bca438b13838ddd4f2b8sf 'GL_PER_STAGE_CONSTANTS_NV': (1, 'CR_NV_register_combiners2'),
e68a106d8ca66ed58b44bca438b13838ddd4f2b8sf 'GL_LIGHT_MODEL_COLOR_CONTROL_EXT': (1, 'CR_EXT_separate_specular_color'),
e68a106d8ca66ed58b44bca438b13838ddd4f2b8sf 'GL_CURRENT_SECONDARY_COLOR_EXT': (4, 'CR_EXT_secondary_color'),
e68a106d8ca66ed58b44bca438b13838ddd4f2b8sf 'GL_SECONDARY_COLOR_ARRAY_SIZE_EXT': (1, 'CR_EXT_secondary_color'),
e68a106d8ca66ed58b44bca438b13838ddd4f2b8sf 'GL_SECONDARY_COLOR_ARRAY_TYPE_EXT': (1, 'CR_EXT_secondary_color'),
2c294c31addd5c957bafe6e78c4a30d423ad6e80rbb 'GL_SECONDARY_COLOR_ARRAY_STRIDE_EXT': (1, 'CR_EXT_secondary_color'),
2c294c31addd5c957bafe6e78c4a30d423ad6e80rbb 'GL_NUM_COMPRESSED_TEXTURE_FORMATS': (1, 'CR_ARB_texture_compression'),
2c294c31addd5c957bafe6e78c4a30d423ad6e80rbb 'GL_LIGHT_MODEL_COLOR_CONTROL': (1, 'CR_OPENGL_VERSION_1_2'),
d0bec559bdc255b6bfc91251d24c5ea9a10e1b75rjung 'GL_ALIASED_POINT_SIZE_RANGE': (2, 'CR_OPENGL_VERSION_1_2'),
68de907078051f290050b089c0570d8167b3500dgstein 'GL_ALIASED_LINE_WIDTH_RANGE': (2, 'CR_OPENGL_VERSION_1_2'),
d0211374a981173d4537e3f919c708b5f64040fcgstein 'GL_MAX_ELEMENTS_INDICES': (1, 'CR_OPENGL_VERSION_1_2'),
d0bec559bdc255b6bfc91251d24c5ea9a10e1b75rjung 'GL_MAX_ELEMENTS_VERTICES': (1, 'CR_OPENGL_VERSION_1_2'),
212c401808586d1fecd0e639ec1697229674a151sf 'GL_SAMPLE_ALPHA_TO_COVERAGE_ARB': (1, 'CR_ARB_multisample'),
68de907078051f290050b089c0570d8167b3500dgstein 'GL_SAMPLE_COVERAGE_VALUE_ARB': (1, 'CR_ARB_multisample'),
d0211374a981173d4537e3f919c708b5f64040fcgstein 'GL_SAMPLE_COVERAGE_INVERT_ARB': (1, 'CR_ARB_multisample'),
212c401808586d1fecd0e639ec1697229674a151sf 'GL_MAX_TEXTURE_LOD_BIAS_EXT': (1, 'CR_EXT_texture_lod_bias'),
212c401808586d1fecd0e639ec1697229674a151sf 'GL_NUM_COMPRESSED_TEXTURE_FORMATS_ARB': (1, 'CR_ARB_texture_compression'),
d0211374a981173d4537e3f919c708b5f64040fcgstein 'GL_PROGRAM_ERROR_POSITION_NV': (1, 'CR_NV_vertex_program'),
855aa233fcb7b51d738fca5c36585646ae1960c3jerenkrantz 'GL_VERTEX_PROGRAM_BINDING_NV': (1, 'CR_NV_vertex_program'),
855aa233fcb7b51d738fca5c36585646ae1960c3jerenkrantz 'GL_MAX_VERTEX_ATTRIBS_ARB': (1, 'CR_ARB_vertex_program'),
855aa233fcb7b51d738fca5c36585646ae1960c3jerenkrantz 'GL_MAX_TEXTURE_COORDS_ARB': (1, 'CR_ARB_vertex_program'),
855aa233fcb7b51d738fca5c36585646ae1960c3jerenkrantz 'GL_PROGRAM_ERROR_POSITION_NV': (1, 'CR_NV_fragment_program'),
855aa233fcb7b51d738fca5c36585646ae1960c3jerenkrantz 'GL_FRAGMENT_PROGRAM_BINDING_NV': (1, 'CR_NV_fragment_program'),
855aa233fcb7b51d738fca5c36585646ae1960c3jerenkrantz 'GL_MAX_RECTANGLE_TEXTURE_SIZE_NV': (1, 'CR_NV_texture_rectangle'),
855aa233fcb7b51d738fca5c36585646ae1960c3jerenkrantz 'GL_TEXTURE_RECTANGLE_NV': (1, 'CR_NV_texture_rectangle'),
71cd8b65badad4cda51aa7eaba1dea44f78190c7jerenkrantz 'GL_TEXTURE_BINDING_RECTANGLE_NV': (1, 'CR_NV_texture_rectangle'),
71cd8b65badad4cda51aa7eaba1dea44f78190c7jerenkrantz 'GL_CLIP_VOLUME_CLIPPING_HINT_EXT' : (3, 'CR_EXT_clip_volume_hint'),
71cd8b65badad4cda51aa7eaba1dea44f78190c7jerenkrantz 'GL_RASTER_POSITION_UNCLIPPED_IBM' : (1, 'CR_IBM_rasterpos_clip'),
71cd8b65badad4cda51aa7eaba1dea44f78190c7jerenkrantz 'GL_GENERATE_MIPMAP_HINT_SGIS' : (1, 'CR_SGIS_generate_mipmap'),
71cd8b65badad4cda51aa7eaba1dea44f78190c7jerenkrantz 'GL_CURRENT_FOG_COORDINATE_EXT' : (1, 'CR_EXT_fog_coord'),
855aa233fcb7b51d738fca5c36585646ae1960c3jerenkrantz 'GL_FOG_COORDINATE_ARRAY_TYPE_EXT' : (1, 'CR_EXT_fog_coord'),
855aa233fcb7b51d738fca5c36585646ae1960c3jerenkrantz 'GL_FOG_COORDINATE_ARRAY_STRIDE_EXT' : (1, 'CR_EXT_fog_coord'),
d0211374a981173d4537e3f919c708b5f64040fcgstein 'GL_TRANSPOSE_COLOR_MATRIX_ARB': (16, 'CR_ARB_transpose_matrix'),
6ca0e6973c8176100f4a426444823ae5e777e28fsascha 'GL_TRANSPOSE_MODELVIEW_MATRIX_ARB': (16, 'CR_ARB_transpose_matrix'),
6ca0e6973c8176100f4a426444823ae5e777e28fsascha 'GL_TRANSPOSE_PROJECTION_MATRIX_ARB': (16, 'CR_ARB_transpose_matrix'),
d0bec559bdc255b6bfc91251d24c5ea9a10e1b75rjung 'GL_TRANSPOSE_TEXTURE_MATRIX_ARB': (16, 'CR_ARB_transpose_matrix'),
6ca0e6973c8176100f4a426444823ae5e777e28fsascha 'GL_ARRAY_BUFFER_BINDING_ARB': (1, 'CR_ARB_vertex_buffer_object'),
df349d5fc2ae7d106b058fe779c7ea4d19ee0588trawick 'GL_ELEMENT_ARRAY_BUFFER_BINDING_ARB': (1, 'CR_ARB_vertex_buffer_object'),
c803b0d84b48f151504b87ec3f196cb433149592rbb 'GL_VERTEX_ARRAY_BUFFER_BINDING_ARB': (1, 'CR_ARB_vertex_buffer_object'),
c803b0d84b48f151504b87ec3f196cb433149592rbb 'GL_NORMAL_ARRAY_BUFFER_BINDING_ARB': (1, 'CR_ARB_vertex_buffer_object'),
6ca0e6973c8176100f4a426444823ae5e777e28fsascha 'GL_COLOR_ARRAY_BUFFER_BINDING_ARB': (1, 'CR_ARB_vertex_buffer_object'),
d0bec559bdc255b6bfc91251d24c5ea9a10e1b75rjung 'GL_INDEX_ARRAY_BUFFER_BINDING_ARB': (1, 'CR_ARB_vertex_buffer_object'),
d0bec559bdc255b6bfc91251d24c5ea9a10e1b75rjung 'GL_TEXTURE_COORD_ARRAY_BUFFER_BINDING_ARB': (1, 'CR_ARB_vertex_buffer_object'),
d0bec559bdc255b6bfc91251d24c5ea9a10e1b75rjung 'GL_EDGE_FLAG_ARRAY_BUFFER_BINDING_ARB': (1, 'CR_ARB_vertex_buffer_object'),
d0bec559bdc255b6bfc91251d24c5ea9a10e1b75rjung 'GL_SECONDARY_COLOR_ARRAY_BUFFER_BINDING_ARB': (1, 'CR_ARB_vertex_buffer_object'),
d0bec559bdc255b6bfc91251d24c5ea9a10e1b75rjung 'GL_FOG_COORDINATE_ARRAY_BUFFER_BINDING_ARB': (1, 'CR_ARB_vertex_buffer_object'),
d0bec559bdc255b6bfc91251d24c5ea9a10e1b75rjung 'GL_WEIGHT_ARRAY_BUFFER_BINDING_ARB': (1, 'CR_ARB_vertex_buffer_object'),
6ca0e6973c8176100f4a426444823ae5e777e28fsascha 'GL_MAX_TEXTURE_IMAGE_UNITS_ARB': (1, 'CR_ARB_fragment_program'),
164141857c02667118df04b14fe536d1756f0ef4jorton # We don't support GL_ARB_draw_buffers, but for some reason ubuntu64 8.10 vm queries it on macos host
164141857c02667118df04b14fe536d1756f0ef4jorton 'GL_MAX_PROGRAM_MATRICES_ARB': (1, 'CR_ARB_vertex_program'),
164141857c02667118df04b14fe536d1756f0ef4jorton 'GL_MAX_PROGRAM_MATRIX_STACK_DEPTH_ARB': (1, 'CR_ARB_vertex_program'),
6ca0e6973c8176100f4a426444823ae5e777e28fsascha # Vertex shaders (2.0) #
6ca0e6973c8176100f4a426444823ae5e777e28fsascha 'GL_MAX_VERTEX_UNIFORM_COMPONENTS': (1, 'CR_OPENGL_VERSION_2_0'),
a91a466a0d812a522d492c3c182163f73591ca20aaron 'GL_MAX_VARYING_FLOATS': (1, 'CR_OPENGL_VERSION_2_0'),
6ca0e6973c8176100f4a426444823ae5e777e28fsascha 'GL_MAX_VERTEX_ATTRIBS': (1, 'CR_OPENGL_VERSION_2_0'),
6ca0e6973c8176100f4a426444823ae5e777e28fsascha 'GL_MAX_TEXTURE_IMAGE_UNITS': (1, 'CR_OPENGL_VERSION_2_0'),
6ca0e6973c8176100f4a426444823ae5e777e28fsascha 'GL_MAX_VERTEX_TEXTURE_IMAGE_UNITS': (1, 'CR_OPENGL_VERSION_2_0'),
6ca0e6973c8176100f4a426444823ae5e777e28fsascha 'GL_MAX_COMBINED_TEXTURE_IMAGE_UNITS': (1, 'CR_OPENGL_VERSION_2_0'),
d0bec559bdc255b6bfc91251d24c5ea9a10e1b75rjung 'GL_MAX_TEXTURE_COORDS': (1, 'CR_OPENGL_VERSION_2_0'),
d0bec559bdc255b6bfc91251d24c5ea9a10e1b75rjung 'GL_VERTEX_PROGRAM_POINT_SIZE': (1, 'CR_OPENGL_VERSION_2_0'),
d0bec559bdc255b6bfc91251d24c5ea9a10e1b75rjung 'GL_VERTEX_PROGRAM_TWO_SIDE': (1, 'CR_OPENGL_VERSION_2_0'),
d0bec559bdc255b6bfc91251d24c5ea9a10e1b75rjung # Fragment shaders (2.0) #
d0bec559bdc255b6bfc91251d24c5ea9a10e1b75rjung 'GL_MAX_FRAGMENT_UNIFORM_COMPONENTS': (1, 'CR_OPENGL_VERSION_2_0'),
d0bec559bdc255b6bfc91251d24c5ea9a10e1b75rjung 'GL_FRAGMENT_SHADER_DERIVATIVE_HINT': (1, 'CR_OPENGL_VERSION_2_0'),
d0bec559bdc255b6bfc91251d24c5ea9a10e1b75rjung # Draw buffers (2.0) #
c71458c4b81237e414c1c774a80da14fe22c52b4jorton # Point sprite (2.0) #
c71458c4b81237e414c1c774a80da14fe22c52b4jorton # Separate stencil (2.0) #
c71458c4b81237e414c1c774a80da14fe22c52b4jorton 'GL_STENCIL_BACK_FUNC': (1, 'CR_OPENGL_VERSION_2_0'),
d0211374a981173d4537e3f919c708b5f64040fcgstein 'GL_STENCIL_BACK_VALUE_MASK': (1, 'CR_OPENGL_VERSION_2_0'),
d0211374a981173d4537e3f919c708b5f64040fcgstein 'GL_STENCIL_BACK_FAIL': (1, 'CR_OPENGL_VERSION_2_0'),
d0211374a981173d4537e3f919c708b5f64040fcgstein 'GL_STENCIL_BACK_PASS_DEPTH_FAIL': (1, 'CR_OPENGL_VERSION_2_0'),
686555019e71b355e835166dfefbec33f7fb6f90rjung 'GL_STENCIL_BACK_PASS_DEPTH_PASS': (1, 'CR_OPENGL_VERSION_2_0'),
d0211374a981173d4537e3f919c708b5f64040fcgstein # Frame buffer object EXT #
212c401808586d1fecd0e639ec1697229674a151sf 'GL_FRAMEBUFFER_BINDING_EXT': (1, 'CR_EXT_framebuffer_object'),
212c401808586d1fecd0e639ec1697229674a151sf 'GL_RENDERBUFFER_BINDING_EXT': (1, 'CR_EXT_framebuffer_object'),
d0211374a981173d4537e3f919c708b5f64040fcgstein 'GL_MAX_COLOR_ATTACHMENTS_EXT': (1, 'CR_EXT_framebuffer_object'),
d0211374a981173d4537e3f919c708b5f64040fcgstein 'GL_MAX_RENDERBUFFER_SIZE_EXT': (1, 'CR_EXT_framebuffer_object'),
d0211374a981173d4537e3f919c708b5f64040fcgstein # ARB_shader_objects
d0211374a981173d4537e3f919c708b5f64040fcgstein # EXT_framebuffer_blit
d0211374a981173d4537e3f919c708b5f64040fcgstein 'GL_READ_FRAMEBUFFER_BINDING_EXT': (1, 'CR_EXT_framebuffer_blit'),
d0211374a981173d4537e3f919c708b5f64040fcgstein 'GL_DRAW_FRAMEBUFFER_BINDING_EXT': (1, 'CR_EXT_framebuffer_blit'),
d0211374a981173d4537e3f919c708b5f64040fcgstein # EXT_stencil_two_side
d0bec559bdc255b6bfc91251d24c5ea9a10e1b75rjung 'GL_ACTIVE_STENCIL_FACE_EXT': (1, 'CR_EXT_stencil_two_side'),
d0bec559bdc255b6bfc91251d24c5ea9a10e1b75rjungget_keys = num_get_values.keys() + extensions_num_get_values.keys()
d0bec559bdc255b6bfc91251d24c5ea9a10e1b75rjungstruct nv_struct { GLenum pname; unsigned int num_values;
d0bec559bdc255b6bfc91251d24c5ea9a10e1b75rjung#ifdef VBOX_WITH_CRDUMPER
d0bec559bdc255b6bfc91251d24c5ea9a10e1b75rjungconst char* pszName;
d0bec559bdc255b6bfc91251d24c5ea9a10e1b75rjung} num_values_array[] = {
7bfe076b680e6e591add6cdc754ce9a6910682a2sascha#ifdef VBOX_WITH_CRDUMPER
8c2ac56b3654234237ca3a943407361c45a3a4d1sf \t{ %s, %d
8c2ac56b3654234237ca3a943407361c45a3a4d1sf #ifdef VBOX_WITH_CRDUMPER
8c2ac56b3654234237ca3a943407361c45a3a4d1sfprint "\t{ 0, 0 }"
8c2ac56b3654234237ca3a943407361c45a3a4d1sfstatic unsigned int __numValues( GLenum pname )
8c2ac56b3654234237ca3a943407361c45a3a4d1sf struct nv_struct *temp;
8c2ac56b3654234237ca3a943407361c45a3a4d1sf for (temp = num_values_array; temp->num_values != 0 ; temp++)
8c2ac56b3654234237ca3a943407361c45a3a4d1sf if (temp->pname == pname)
8c2ac56b3654234237ca3a943407361c45a3a4d1sf return temp->num_values;
8c2ac56b3654234237ca3a943407361c45a3a4d1sf crDebug( "Invalid pname to __numValues: 0x%x\\n", (int) pname );