Jump to content

  • Log In with Google      Sign In   
  • Create Account


how to convert opengl macro to human readable string


Old topic!
Guest, the last post of this topic is over 60 days old and at this point you may not reply in this topic. If you wish to continue this conversation start a new topic.

  • You cannot reply to this topic
2 replies to this topic

#1 db123   Members   -  Reputation: 187

Like
0Likes
Like

Posted 01 August 2013 - 08:09 PM

when develop with opengl, i find that opengl has so many predefine Macro, linke:GL_FLOAT_VEC3/GL_INT_VEC2.

if i use glGetActiveUniform to get the information about uniform data information, the return value is always integer and can't readable in debugger:

ParamSize 0x00000001 int
ParamType 0x00008b52 unsigned int
+ szName 0x0018e64c "g_Mask" char[0x00000080]
Length 0x00000006 int
Location 0x00000000 unsigned int
i 0x00000001 int
+ Parameter {m_strName="" m_wIndex=0x00000000 m_wBytes=0x00000001 ...}
TotalCount 0x00000004 int
 
like this.
 
so, how can i convert 0x00008b52 to "GL_FLOAT_VEC4",  is there any interface exists in opengl?
 


Sponsor:

#2 LorenzoGatti   Crossbones+   -  Reputation: 2305

Like
0Likes
Like

Posted 02 August 2013 - 01:48 AM

Maybe you can enhance your debugger with a boring plugin that knows all OpenGL constants and shows, as an alternate representation of integer types, a set of constant names that match that value (including bitfield interpretations). If you prefer a low-tech approach, look up the constants once in OpenGL header files and write them on a piece of paper. In any given debugging puzzle, only a few constants will be involved, each only in a few places; your cheatsheet will remain manageable.
Produci, consuma, crepa

#3 WiredCat   Members   -  Reputation: 91

Like
0Likes
Like

Posted 02 August 2013 - 07:14 PM

i dont know if i understand you (its a bit late ;]) but you can try to parse gl.h

 

or reparse this for your own needs (i think you need to swap string and cardinals ) and make it to c++

 

 

every opengl name has its own number so you should parse it to get proper strings

 

sorry if its not the solution:



//[parsed gl.pas] ofc :C
function stringtocardinal(s : string) : cardinal;
begin
s := lowercase(s);
result := UNKNOWN;
if pos('gl_2_bytes',s) > 0 then result := GL_2_BYTES;
if pos('gl_2d',s) > 0 then result := GL_2D;
if pos('gl_3_bytes',s) > 0 then result := GL_3_BYTES;
if pos('gl_3d',s) > 0 then result := GL_3D;
if pos('gl_3d_color',s) > 0 then result := GL_3D_COLOR;
if pos('gl_3d_color_texture',s) > 0 then result := GL_3D_COLOR_TEXTURE;
if pos('gl_4_bytes',s) > 0 then result := GL_4_BYTES;
if pos('gl_4d_color_texture',s) > 0 then result := GL_4D_COLOR_TEXTURE;
if pos('gl_accum',s) > 0 then result := GL_ACCUM;
if pos('gl_accum_alpha_bits',s) > 0 then result := GL_ACCUM_ALPHA_BITS;
if pos('gl_accum_blue_bits',s) > 0 then result := GL_ACCUM_BLUE_BITS;
if pos('gl_accum_buffer_bit',s) > 0 then result := GL_ACCUM_BUFFER_BIT;
if pos('gl_accum_clear_value',s) > 0 then result := GL_ACCUM_CLEAR_VALUE;
if pos('gl_accum_green_bits',s) > 0 then result := GL_ACCUM_GREEN_BITS;
if pos('gl_accum_red_bits',s) > 0 then result := GL_ACCUM_RED_BITS;
if pos('gl_add',s) > 0 then result := GL_ADD;
if pos('gl_all_attrib_bits',s) > 0 then result := GL_ALL_ATTRIB_BITS;
if pos('gl_alpha',s) > 0 then result := GL_ALPHA;
if pos('gl_alpha_bias',s) > 0 then result := GL_ALPHA_BIAS;
if pos('gl_alpha_bits',s) > 0 then result := GL_ALPHA_BITS;
if pos('gl_alpha_scale',s) > 0 then result := GL_ALPHA_SCALE;
if pos('gl_alpha_test',s) > 0 then result := GL_ALPHA_TEST;
if pos('gl_alpha_test_func',s) > 0 then result := GL_ALPHA_TEST_FUNC;
if pos('gl_alpha_test_ref',s) > 0 then result := GL_ALPHA_TEST_REF;
if pos('gl_always',s) > 0 then result := GL_ALWAYS;
if pos('gl_ambient',s) > 0 then result := GL_AMBIENT;
if pos('gl_ambient_and_diffuse',s) > 0 then result := GL_AMBIENT_AND_DIFFUSE;
if pos('gl_and',s) > 0 then result := GL_AND;
if pos('gl_and_inverted',s) > 0 then result := GL_AND_INVERTED;
if pos('gl_and_reverse',s) > 0 then result := GL_AND_REVERSE;
if pos('gl_attrib_stack_depth',s) > 0 then result := GL_ATTRIB_STACK_DEPTH;
if pos('gl_auto_normal',s) > 0 then result := GL_AUTO_NORMAL;
if pos('gl_aux_buffers',s) > 0 then result := GL_AUX_BUFFERS;
if pos('gl_aux0',s) > 0 then result := GL_AUX0;
if pos('gl_aux1',s) > 0 then result := GL_AUX1;
if pos('gl_aux2',s) > 0 then result := GL_AUX2;
if pos('gl_aux3',s) > 0 then result := GL_AUX3;
if pos('gl_back',s) > 0 then result := GL_BACK;
if pos('gl_back_left',s) > 0 then result := GL_BACK_LEFT;
if pos('gl_back_right',s) > 0 then result := GL_BACK_RIGHT;
if pos('gl_bitmap',s) > 0 then result := GL_BITMAP;
if pos('gl_bitmap_token',s) > 0 then result := GL_BITMAP_TOKEN;
if pos('gl_blend',s) > 0 then result := GL_BLEND;
if pos('gl_blend_dst',s) > 0 then result := GL_BLEND_DST;
if pos('gl_blend_src',s) > 0 then result := GL_BLEND_SRC;
if pos('gl_blue',s) > 0 then result := GL_BLUE;
if pos('gl_blue_bias',s) > 0 then result := GL_BLUE_BIAS;
if pos('gl_blue_bits',s) > 0 then result := GL_BLUE_BITS;
if pos('gl_blue_scale',s) > 0 then result := GL_BLUE_SCALE;
if pos('gl_byte',s) > 0 then result := GL_BYTE;
if pos('gl_ccw',s) > 0 then result := GL_CCW;
if pos('gl_clamp',s) > 0 then result := GL_CLAMP;
if pos('gl_clear',s) > 0 then result := GL_CLEAR;
if pos('gl_clip_plane0',s) > 0 then result := GL_CLIP_PLANE0;
if pos('gl_clip_plane1',s) > 0 then result := GL_CLIP_PLANE1;
if pos('gl_clip_plane2',s) > 0 then result := GL_CLIP_PLANE2;
if pos('gl_clip_plane3',s) > 0 then result := GL_CLIP_PLANE3;
if pos('gl_clip_plane4',s) > 0 then result := GL_CLIP_PLANE4;
if pos('gl_clip_plane5',s) > 0 then result := GL_CLIP_PLANE5;
if pos('gl_coeff',s) > 0 then result := GL_COEFF;
if pos('gl_color',s) > 0 then result := GL_COLOR;
if pos('gl_color_array_count_ext',s) > 0 then result := GL_COLOR_ARRAY_COUNT_EXT;
if pos('gl_color_array_ext',s) > 0 then result := GL_COLOR_ARRAY_EXT;
if pos('gl_color_array_pointer_ext',s) > 0 then result := GL_COLOR_ARRAY_POINTER_EXT;
if pos('gl_color_array_size_ext',s) > 0 then result := GL_COLOR_ARRAY_SIZE_EXT;
if pos('gl_color_array_stride_ext',s) > 0 then result := GL_COLOR_ARRAY_STRIDE_EXT;
if pos('gl_color_array_type_ext',s) > 0 then result := GL_COLOR_ARRAY_TYPE_EXT;
if pos('gl_color_buffer_bit',s) > 0 then result := GL_COLOR_BUFFER_BIT;
if pos('gl_color_clear_value',s) > 0 then result := GL_COLOR_CLEAR_VALUE;
if pos('gl_color_index',s) > 0 then result := GL_COLOR_INDEX;
if pos('gl_color_indexes',s) > 0 then result := GL_COLOR_INDEXES;
if pos('gl_color_material',s) > 0 then result := GL_COLOR_MATERIAL;
if pos('gl_color_material_face',s) > 0 then result := GL_COLOR_MATERIAL_FACE;
if pos('gl_color_material_parameter',s) > 0 then result := GL_COLOR_MATERIAL_PARAMETER;
if pos('gl_color_writemask',s) > 0 then result := GL_COLOR_WRITEMASK;
if pos('gl_compile',s) > 0 then result := GL_COMPILE;
if pos('gl_compile_and_execute',s) > 0 then result := GL_COMPILE_AND_EXECUTE;
if pos('gl_constant_attenuation',s) > 0 then result := GL_CONSTANT_ATTENUATION;
if pos('gl_copy',s) > 0 then result := GL_COPY;
if pos('gl_copy_inverted',s) > 0 then result := GL_COPY_INVERTED;
if pos('gl_copy_pixel_token',s) > 0 then result := GL_COPY_PIXEL_TOKEN;
if pos('gl_cull_face',s) > 0 then result := GL_CULL_FACE;
if pos('gl_cull_face_mode',s) > 0 then result := GL_CULL_FACE_MODE;
if pos('gl_current_bit',s) > 0 then result := GL_CURRENT_BIT;
if pos('gl_current_color',s) > 0 then result := GL_CURRENT_COLOR;
if pos('gl_current_index',s) > 0 then result := GL_CURRENT_INDEX;
if pos('gl_current_normal',s) > 0 then result := GL_CURRENT_NORMAL;
if pos('gl_current_raster_color',s) > 0 then result := GL_CURRENT_RASTER_COLOR;
if pos('gl_current_raster_distance',s) > 0 then result := GL_CURRENT_RASTER_DISTANCE;
if pos('gl_current_raster_index',s) > 0 then result := GL_CURRENT_RASTER_INDEX;
if pos('gl_current_raster_position',s) > 0 then result := GL_CURRENT_RASTER_POSITION;
if pos('gl_current_raster_position_valid',s) > 0 then result := GL_CURRENT_RASTER_POSITION_VALID;
if pos('gl_current_raster_texture_coords',s) > 0 then result := GL_CURRENT_RASTER_TEXTURE_COORDS;
if pos('gl_current_texture_coords',s) > 0 then result := GL_CURRENT_TEXTURE_COORDS;
if pos('gl_cw',s) > 0 then result := GL_CW;
if pos('gl_decal',s) > 0 then result := GL_DECAL;
if pos('gl_decr',s) > 0 then result := GL_DECR;
if pos('gl_depth',s) > 0 then result := GL_DEPTH;
if pos('gl_depth_bias',s) > 0 then result := GL_DEPTH_BIAS;
if pos('gl_depth_bits',s) > 0 then result := GL_DEPTH_BITS;
if pos('gl_depth_buffer_bit',s) > 0 then result := GL_DEPTH_BUFFER_BIT;
if pos('gl_depth_clear_value',s) > 0 then result := GL_DEPTH_CLEAR_VALUE;
if pos('gl_depth_component',s) > 0 then result := GL_DEPTH_COMPONENT;
if pos('gl_depth_func',s) > 0 then result := GL_DEPTH_FUNC;
if pos('gl_depth_range',s) > 0 then result := GL_DEPTH_RANGE;
if pos('gl_depth_scale',s) > 0 then result := GL_DEPTH_SCALE;
if pos('gl_depth_test',s) > 0 then result := GL_DEPTH_TEST;
if pos('gl_depth_writemask',s) > 0 then result := GL_DEPTH_WRITEMASK;
if pos('gl_diffuse',s) > 0 then result := GL_DIFFUSE;
if pos('gl_dither',s) > 0 then result := GL_DITHER;
if pos('gl_domain',s) > 0 then result := GL_DOMAIN;
if pos('gl_dont_care',s) > 0 then result := GL_DONT_CARE;
if pos('gl_doublebuffer',s) > 0 then result := GL_DOUBLEBUFFER;
if pos('gl_draw_buffer',s) > 0 then result := GL_DRAW_BUFFER;
if pos('gl_draw_pixel_token',s) > 0 then result := GL_DRAW_PIXEL_TOKEN;
if pos('gl_dst_alpha',s) > 0 then result := GL_DST_ALPHA;
if pos('gl_dst_color',s) > 0 then result := GL_DST_COLOR;
if pos('gl_edge_flag',s) > 0 then result := GL_EDGE_FLAG;
if pos('gl_edge_flag_array_count_ext',s) > 0 then result := GL_EDGE_FLAG_ARRAY_COUNT_EXT;
if pos('gl_edge_flag_array_ext',s) > 0 then result := GL_EDGE_FLAG_ARRAY_EXT;
if pos('gl_edge_flag_array_pointer_ext',s) > 0 then result := GL_EDGE_FLAG_ARRAY_POINTER_EXT;
if pos('gl_edge_flag_array_stride_ext',s) > 0 then result := GL_EDGE_FLAG_ARRAY_STRIDE_EXT;
if pos('gl_emission',s) > 0 then result := GL_EMISSION;
if pos('gl_enable_bit',s) > 0 then result := GL_ENABLE_BIT;
if pos('gl_equal',s) > 0 then result := GL_EQUAL;
if pos('gl_equiv',s) > 0 then result := GL_EQUIV;
if pos('gl_eval_bit',s) > 0 then result := GL_EVAL_BIT;
if pos('gl_exp',s) > 0 then result := GL_EXP;
if pos('gl_exp2',s) > 0 then result := GL_EXP2;
//if pos('gl_ext_vertex_array',s) > 0 then result := GL_EXT_vertex_array;
if pos('gl_extensions',s) > 0 then result := GL_EXTENSIONS;
if pos('gl_eye_linear',s) > 0 then result := GL_EYE_LINEAR;
if pos('gl_eye_plane',s) > 0 then result := GL_EYE_PLANE;
if pos('gl_fastest',s) > 0 then result := GL_FASTEST;
if pos('gl_feedback',s) > 0 then result := GL_FEEDBACK;
if pos('gl_fill',s) > 0 then result := GL_FILL;
if pos('gl_flat',s) > 0 then result := GL_FLAT;
if pos('gl_float',s) > 0 then result := GL_FLOAT;
if pos('gl_fog',s) > 0 then result := GL_FOG;
if pos('gl_fog_bit',s) > 0 then result := GL_FOG_BIT;
if pos('gl_fog_color',s) > 0 then result := GL_FOG_COLOR;
if pos('gl_fog_density',s) > 0 then result := GL_FOG_DENSITY;
if pos('gl_fog_end',s) > 0 then result := GL_FOG_END;
if pos('gl_fog_hint',s) > 0 then result := GL_FOG_HINT;
if pos('gl_fog_index',s) > 0 then result := GL_FOG_INDEX;
if pos('gl_fog_mode',s) > 0 then result := GL_FOG_MODE;
if pos('gl_fog_start',s) > 0 then result := GL_FOG_START;
if pos('gl_front',s) > 0 then result := GL_FRONT;
if pos('gl_front_and_back',s) > 0 then result := GL_FRONT_AND_BACK;
if pos('gl_front_face',s) > 0 then result := GL_FRONT_FACE;
if pos('gl_front_left',s) > 0 then result := GL_FRONT_LEFT;
if pos('gl_front_right',s) > 0 then result := GL_FRONT_RIGHT;
if pos('gl_gequal',s) > 0 then result := GL_GEQUAL;
if pos('gl_greater',s) > 0 then result := GL_GREATER;
if pos('gl_green',s) > 0 then result := GL_GREEN;
if pos('gl_green_bias',s) > 0 then result := GL_GREEN_BIAS;
if pos('gl_green_bits',s) > 0 then result := GL_GREEN_BITS;
if pos('gl_green_scale',s) > 0 then result := GL_GREEN_SCALE;
if pos('gl_hint_bit',s) > 0 then result := GL_HINT_BIT;
if pos('gl_incr',s) > 0 then result := GL_INCR;
if pos('gl_index_array_count_ext',s) > 0 then result := GL_INDEX_ARRAY_COUNT_EXT;
if pos('gl_index_array_ext',s) > 0 then result := GL_INDEX_ARRAY_EXT;
if pos('gl_index_array_pointer_ext',s) > 0 then result := GL_INDEX_ARRAY_POINTER_EXT;
if pos('gl_index_array_stride_ext',s) > 0 then result := GL_INDEX_ARRAY_STRIDE_EXT;
if pos('gl_index_array_type_ext',s) > 0 then result := GL_INDEX_ARRAY_TYPE_EXT;
if pos('gl_index_bits',s) > 0 then result := GL_INDEX_BITS;
if pos('gl_index_clear_value',s) > 0 then result := GL_INDEX_CLEAR_VALUE;
if pos('gl_index_mode',s) > 0 then result := GL_INDEX_MODE;
if pos('gl_index_offset',s) > 0 then result := GL_INDEX_OFFSET;
if pos('gl_index_shift',s) > 0 then result := GL_INDEX_SHIFT;
if pos('gl_index_writemask',s) > 0 then result := GL_INDEX_WRITEMASK;
if pos('gl_int',s) > 0 then result := GL_INT;
if pos('gl_invalid_enum',s) > 0 then result := GL_INVALID_ENUM;
if pos('gl_invalid_operation',s) > 0 then result := GL_INVALID_OPERATION;
if pos('gl_invalid_value',s) > 0 then result := GL_INVALID_VALUE;
if pos('gl_invert',s) > 0 then result := GL_INVERT;
if pos('gl_keep',s) > 0 then result := GL_KEEP;
if pos('gl_left',s) > 0 then result := GL_LEFT;
if pos('gl_lequal',s) > 0 then result := GL_LEQUAL;
if pos('gl_less',s) > 0 then result := GL_LESS;
if pos('gl_light_model_ambient',s) > 0 then result := GL_LIGHT_MODEL_AMBIENT;
if pos('gl_light_model_local_viewer',s) > 0 then result := GL_LIGHT_MODEL_LOCAL_VIEWER;
if pos('gl_light_model_two_side',s) > 0 then result := GL_LIGHT_MODEL_TWO_SIDE;
if pos('gl_light0',s) > 0 then result := GL_LIGHT0;
if pos('gl_light1',s) > 0 then result := GL_LIGHT1;
if pos('gl_light2',s) > 0 then result := GL_LIGHT2;
if pos('gl_light3',s) > 0 then result := GL_LIGHT3;
if pos('gl_light4',s) > 0 then result := GL_LIGHT4;
if pos('gl_light5',s) > 0 then result := GL_LIGHT5;
if pos('gl_light6',s) > 0 then result := GL_LIGHT6;
if pos('gl_light7',s) > 0 then result := GL_LIGHT7;
if pos('gl_lighting',s) > 0 then result := GL_LIGHTING;
if pos('gl_lighting_bit',s) > 0 then result := GL_LIGHTING_BIT;
if pos('gl_line',s) > 0 then result := GL_LINE;
if pos('gl_line_bit',s) > 0 then result := GL_LINE_BIT;
if pos('gl_line_loop',s) > 0 then result := GL_LINE_LOOP;
if pos('gl_line_reset_token',s) > 0 then result := GL_LINE_RESET_TOKEN;
if pos('gl_line_smooth',s) > 0 then result := GL_LINE_SMOOTH;
if pos('gl_line_smooth_hint',s) > 0 then result := GL_LINE_SMOOTH_HINT;
if pos('gl_line_stipple',s) > 0 then result := GL_LINE_STIPPLE;
if pos('gl_line_stipple_pattern',s) > 0 then result := GL_LINE_STIPPLE_PATTERN;
if pos('gl_line_stipple_repeat',s) > 0 then result := GL_LINE_STIPPLE_REPEAT;
if pos('gl_line_strip',s) > 0 then result := GL_LINE_STRIP;
if pos('gl_line_token',s) > 0 then result := GL_LINE_TOKEN;
if pos('gl_line_width',s) > 0 then result := GL_LINE_WIDTH;
if pos('gl_line_width_granularity',s) > 0 then result := GL_LINE_WIDTH_GRANULARITY;
if pos('gl_line_width_range',s) > 0 then result := GL_LINE_WIDTH_RANGE;
if pos('gl_linear',s) > 0 then result := GL_LINEAR;
if pos('gl_linear_attenuation',s) > 0 then result := GL_LINEAR_ATTENUATION;
if pos('gl_linear_mipmap_linear',s) > 0 then result := GL_LINEAR_MIPMAP_LINEAR;
if pos('gl_linear_mipmap_nearest',s) > 0 then result := GL_LINEAR_MIPMAP_NEAREST;
if pos('gl_lines',s) > 0 then result := GL_LINES;
if pos('gl_list_base',s) > 0 then result := GL_LIST_BASE;
if pos('gl_list_bit',s) > 0 then result := GL_LIST_BIT;
if pos('gl_list_index',s) > 0 then result := GL_LIST_INDEX;
if pos('gl_list_mode',s) > 0 then result := GL_LIST_MODE;
if pos('gl_load',s) > 0 then result := GL_LOAD;
if pos('gl_logic_op',s) > 0 then result := GL_LOGIC_OP;
if pos('gl_logic_op_mode',s) > 0 then result := GL_LOGIC_OP_MODE;
if pos('gl_luminance',s) > 0 then result := GL_LUMINANCE;
if pos('gl_luminance_alpha',s) > 0 then result := GL_LUMINANCE_ALPHA;
if pos('gl_map_color',s) > 0 then result := GL_MAP_COLOR;
if pos('gl_map_stencil',s) > 0 then result := GL_MAP_STENCIL;
if pos('gl_map1_color_4',s) > 0 then result := GL_MAP1_COLOR_4;
if pos('gl_map1_grid_domain',s) > 0 then result := GL_MAP1_GRID_DOMAIN;
if pos('gl_map1_grid_segments',s) > 0 then result := GL_MAP1_GRID_SEGMENTS;
if pos('gl_map1_index',s) > 0 then result := GL_MAP1_INDEX;
if pos('gl_map1_normal',s) > 0 then result := GL_MAP1_NORMAL;
if pos('gl_map1_texture_coord_1',s) > 0 then result := GL_MAP1_TEXTURE_COORD_1;
if pos('gl_map1_texture_coord_2',s) > 0 then result := GL_MAP1_TEXTURE_COORD_2;
if pos('gl_map1_texture_coord_3',s) > 0 then result := GL_MAP1_TEXTURE_COORD_3;
if pos('gl_map1_texture_coord_4',s) > 0 then result := GL_MAP1_TEXTURE_COORD_4;
if pos('gl_map1_vertex_3',s) > 0 then result := GL_MAP1_VERTEX_3;
if pos('gl_map1_vertex_4',s) > 0 then result := GL_MAP1_VERTEX_4;
if pos('gl_map2_color_4',s) > 0 then result := GL_MAP2_COLOR_4;
if pos('gl_map2_grid_domain',s) > 0 then result := GL_MAP2_GRID_DOMAIN;
if pos('gl_map2_grid_segments',s) > 0 then result := GL_MAP2_GRID_SEGMENTS;
if pos('gl_map2_index',s) > 0 then result := GL_MAP2_INDEX;
if pos('gl_map2_normal',s) > 0 then result := GL_MAP2_NORMAL;
if pos('gl_map2_texture_coord_1',s) > 0 then result := GL_MAP2_TEXTURE_COORD_1;
if pos('gl_map2_texture_coord_2',s) > 0 then result := GL_MAP2_TEXTURE_COORD_2;
if pos('gl_map2_texture_coord_3',s) > 0 then result := GL_MAP2_TEXTURE_COORD_3;
if pos('gl_map2_texture_coord_4',s) > 0 then result := GL_MAP2_TEXTURE_COORD_4;
if pos('gl_map2_vertex_3',s) > 0 then result := GL_MAP2_VERTEX_3;
if pos('gl_map2_vertex_4',s) > 0 then result := GL_MAP2_VERTEX_4;
if pos('gl_matrix_mode',s) > 0 then result := GL_MATRIX_MODE;
if pos('gl_max_attrib_stack_depth',s) > 0 then result := GL_MAX_ATTRIB_STACK_DEPTH;
if pos('gl_max_clip_planes',s) > 0 then result := GL_MAX_CLIP_PLANES;
if pos('gl_max_eval_order',s) > 0 then result := GL_MAX_EVAL_ORDER;
if pos('gl_max_lights',s) > 0 then result := GL_MAX_LIGHTS;
if pos('gl_max_list_nesting',s) > 0 then result := GL_MAX_LIST_NESTING;
if pos('gl_max_modelview_stack_depth',s) > 0 then result := GL_MAX_MODELVIEW_STACK_DEPTH;
if pos('gl_max_name_stack_depth',s) > 0 then result := GL_MAX_NAME_STACK_DEPTH;
if pos('gl_max_pixel_map_table',s) > 0 then result := GL_MAX_PIXEL_MAP_TABLE;
if pos('gl_max_projection_stack_depth',s) > 0 then result := GL_MAX_PROJECTION_STACK_DEPTH;
if pos('gl_max_texture_size',s) > 0 then result := GL_MAX_TEXTURE_SIZE;
if pos('gl_max_texture_stack_depth',s) > 0 then result := GL_MAX_TEXTURE_STACK_DEPTH;
if pos('gl_max_viewport_dims',s) > 0 then result := GL_MAX_VIEWPORT_DIMS;
if pos('gl_modelview',s) > 0 then result := GL_MODELVIEW;
if pos('gl_modelview_matrix',s) > 0 then result := GL_MODELVIEW_MATRIX;
if pos('gl_modelview_stack_depth',s) > 0 then result := GL_MODELVIEW_STACK_DEPTH;
if pos('gl_modulate',s) > 0 then result := GL_MODULATE;
if pos('gl_mult',s) > 0 then result := GL_MULT;
if pos('gl_name_stack_depth',s) > 0 then result := GL_NAME_STACK_DEPTH;
if pos('gl_nand',s) > 0 then result := GL_NAND;
if pos('gl_nearest',s) > 0 then result := GL_NEAREST;
if pos('gl_nearest_mipmap_linear',s) > 0 then result := GL_NEAREST_MIPMAP_LINEAR;
if pos('gl_nearest_mipmap_nearest',s) > 0 then result := GL_NEAREST_MIPMAP_NEAREST;
if pos('gl_never',s) > 0 then result := GL_NEVER;
if pos('gl_nicest',s) > 0 then result := GL_NICEST;
if pos('gl_no_error',s) > 0 then result := GL_NO_ERROR;
if pos('gl_none',s) > 0 then result := GL_NONE;
if pos('gl_noop',s) > 0 then result := GL_NOOP;
if pos('gl_nor',s) > 0 then result := GL_NOR;
if pos('gl_normal_array_count_ext',s) > 0 then result := GL_NORMAL_ARRAY_COUNT_EXT;
if pos('gl_normal_array_ext',s) > 0 then result := GL_NORMAL_ARRAY_EXT;
if pos('gl_normal_array_pointer_ext',s) > 0 then result := GL_NORMAL_ARRAY_POINTER_EXT;
if pos('gl_normal_array_stride_ext',s) > 0 then result := GL_NORMAL_ARRAY_STRIDE_EXT;
if pos('gl_normal_array_type_ext',s) > 0 then result := GL_NORMAL_ARRAY_TYPE_EXT;
if pos('gl_normalize',s) > 0 then result := GL_NORMALIZE;
if pos('gl_notequal',s) > 0 then result := GL_NOTEQUAL;
if pos('gl_object_linear',s) > 0 then result := GL_OBJECT_LINEAR;
if pos('gl_object_plane',s) > 0 then result := GL_OBJECT_PLANE;
if pos('gl_one',s) > 0 then result := GL_ONE;
if pos('gl_one_minus_dst_alpha',s) > 0 then result := GL_ONE_MINUS_DST_ALPHA;
if pos('gl_one_minus_dst_color',s) > 0 then result := GL_ONE_MINUS_DST_COLOR;
if pos('gl_one_minus_src_alpha',s) > 0 then result := GL_ONE_MINUS_SRC_ALPHA;
if pos('gl_one_minus_src_color',s) > 0 then result := GL_ONE_MINUS_SRC_COLOR;
if pos('gl_or',s) > 0 then result := GL_OR;
if pos('gl_or_inverted',s) > 0 then result := GL_OR_INVERTED;
if pos('gl_or_reverse',s) > 0 then result := GL_OR_REVERSE;
if pos('gl_order',s) > 0 then result := GL_ORDER;
if pos('gl_out_of_memory',s) > 0 then result := GL_OUT_OF_MEMORY;
if pos('gl_pack_alignment',s) > 0 then result := GL_PACK_ALIGNMENT;
if pos('gl_pack_lsb_first',s) > 0 then result := GL_PACK_LSB_FIRST;
if pos('gl_pack_row_length',s) > 0 then result := GL_PACK_ROW_LENGTH;
if pos('gl_pack_skip_pixels',s) > 0 then result := GL_PACK_SKIP_PIXELS;
if pos('gl_pack_skip_rows',s) > 0 then result := GL_PACK_SKIP_ROWS;
if pos('gl_pack_swap_bytes',s) > 0 then result := GL_PACK_SWAP_BYTES;
if pos('gl_pass_through_token',s) > 0 then result := GL_PASS_THROUGH_TOKEN;
if pos('gl_perspective_correction_hint',s) > 0 then result := GL_PERSPECTIVE_CORRECTION_HINT;
if pos('gl_pixel_map_a_to_a',s) > 0 then result := GL_PIXEL_MAP_A_TO_A;
if pos('gl_pixel_map_a_to_a_size',s) > 0 then result := GL_PIXEL_MAP_A_TO_A_SIZE;
if pos('gl_pixel_map_b_to_b',s) > 0 then result := GL_PIXEL_MAP_B_TO_B;
if pos('gl_pixel_map_b_to_b_size',s) > 0 then result := GL_PIXEL_MAP_B_TO_B_SIZE;
if pos('gl_pixel_map_g_to_g',s) > 0 then result := GL_PIXEL_MAP_G_TO_G;
if pos('gl_pixel_map_g_to_g_size',s) > 0 then result := GL_PIXEL_MAP_G_TO_G_SIZE;
if pos('gl_pixel_map_i_to_a',s) > 0 then result := GL_PIXEL_MAP_I_TO_A;
if pos('gl_pixel_map_i_to_a_size',s) > 0 then result := GL_PIXEL_MAP_I_TO_A_SIZE;
if pos('gl_pixel_map_i_to_b',s) > 0 then result := GL_PIXEL_MAP_I_TO_B;
if pos('gl_pixel_map_i_to_b_size',s) > 0 then result := GL_PIXEL_MAP_I_TO_B_SIZE;
if pos('gl_pixel_map_i_to_g',s) > 0 then result := GL_PIXEL_MAP_I_TO_G;
if pos('gl_pixel_map_i_to_g_size',s) > 0 then result := GL_PIXEL_MAP_I_TO_G_SIZE;
if pos('gl_pixel_map_i_to_i',s) > 0 then result := GL_PIXEL_MAP_I_TO_I;
if pos('gl_pixel_map_i_to_i_size',s) > 0 then result := GL_PIXEL_MAP_I_TO_I_SIZE;
if pos('gl_pixel_map_i_to_r',s) > 0 then result := GL_PIXEL_MAP_I_TO_R;
if pos('gl_pixel_map_i_to_r_size',s) > 0 then result := GL_PIXEL_MAP_I_TO_R_SIZE;
if pos('gl_pixel_map_r_to_r',s) > 0 then result := GL_PIXEL_MAP_R_TO_R;
if pos('gl_pixel_map_r_to_r_size',s) > 0 then result := GL_PIXEL_MAP_R_TO_R_SIZE;
if pos('gl_pixel_map_s_to_s',s) > 0 then result := GL_PIXEL_MAP_S_TO_S;
if pos('gl_pixel_map_s_to_s_size',s) > 0 then result := GL_PIXEL_MAP_S_TO_S_SIZE;
if pos('gl_pixel_mode_bit',s) > 0 then result := GL_PIXEL_MODE_BIT;
if pos('gl_point',s) > 0 then result := GL_POINT;
if pos('gl_point_bit',s) > 0 then result := GL_POINT_BIT;
if pos('gl_point_size',s) > 0 then result := GL_POINT_SIZE;
if pos('gl_point_size_granularity',s) > 0 then result := GL_POINT_SIZE_GRANULARITY;
if pos('gl_point_size_range',s) > 0 then result := GL_POINT_SIZE_RANGE;
if pos('gl_point_smooth',s) > 0 then result := GL_POINT_SMOOTH;
if pos('gl_point_smooth_hint',s) > 0 then result := GL_POINT_SMOOTH_HINT;
if pos('gl_point_token',s) > 0 then result := GL_POINT_TOKEN;
if pos('gl_points',s) > 0 then result := GL_POINTS;
if pos('gl_polygon',s) > 0 then result := GL_POLYGON;
if pos('gl_polygon_bit',s) > 0 then result := GL_POLYGON_BIT;
if pos('gl_polygon_mode',s) > 0 then result := GL_POLYGON_MODE;
if pos('gl_polygon_smooth',s) > 0 then result := GL_POLYGON_SMOOTH;
if pos('gl_polygon_smooth_hint',s) > 0 then result := GL_POLYGON_SMOOTH_HINT;
if pos('gl_polygon_stipple',s) > 0 then result := GL_POLYGON_STIPPLE;
if pos('gl_polygon_stipple_bit',s) > 0 then result := GL_POLYGON_STIPPLE_BIT;
if pos('gl_polygon_token',s) > 0 then result := GL_POLYGON_TOKEN;
if pos('gl_position',s) > 0 then result := GL_POSITION;
if pos('gl_projection',s) > 0 then result := GL_PROJECTION;
if pos('gl_projection_matrix',s) > 0 then result := GL_PROJECTION_MATRIX;
if pos('gl_projection_stack_depth',s) > 0 then result := GL_PROJECTION_STACK_DEPTH;
if pos('gl_q',s) > 0 then result := GL_Q;
if pos('gl_quad_strip',s) > 0 then result := GL_QUAD_STRIP;
if pos('gl_quadratic_attenuation',s) > 0 then result := GL_QUADRATIC_ATTENUATION;
if pos('gl_quads',s) > 0 then result := GL_QUADS;
if pos('gl_r',s) > 0 then result := GL_R;
if pos('gl_read_buffer',s) > 0 then result := GL_READ_BUFFER;
if pos('gl_red',s) > 0 then result := GL_RED;
if pos('gl_red_bias',s) > 0 then result := GL_RED_BIAS;
if pos('gl_red_bits',s) > 0 then result := GL_RED_BITS;
if pos('gl_red_scale',s) > 0 then result := GL_RED_SCALE;
if pos('gl_render',s) > 0 then result := GL_RENDER;
if pos('gl_render_mode',s) > 0 then result := GL_RENDER_MODE;
if pos('gl_renderer',s) > 0 then result := GL_RENDERER;
if pos('gl_repeat',s) > 0 then result := GL_REPEAT;
if pos('gl_replace',s) > 0 then result := GL_REPLACE;
if pos('gl_return',s) > 0 then result := GL_RETURN;
if pos('gl_rgb',s) > 0 then result := GL_RGB;
if pos('gl_rgba',s) > 0 then result := GL_RGBA;
if pos('gl_rgba_mode',s) > 0 then result := GL_RGBA_MODE;
if pos('gl_right',s) > 0 then result := GL_RIGHT;
if pos('gl_s',s) > 0 then result := GL_S;
if pos('gl_scissor_bit',s) > 0 then result := GL_SCISSOR_BIT;
if pos('gl_scissor_box',s) > 0 then result := GL_SCISSOR_BOX;
if pos('gl_scissor_test',s) > 0 then result := GL_SCISSOR_TEST;
if pos('gl_select',s) > 0 then result := GL_SELECT;
if pos('gl_set',s) > 0 then result := GL_SET;
if pos('gl_shade_model',s) > 0 then result := GL_SHADE_MODEL;
if pos('gl_shininess',s) > 0 then result := GL_SHININESS;
if pos('gl_short',s) > 0 then result := GL_SHORT;
if pos('gl_smooth',s) > 0 then result := GL_SMOOTH;
if pos('gl_specular',s) > 0 then result := GL_SPECULAR;
if pos('gl_sphere_map',s) > 0 then result := GL_SPHERE_MAP;
if pos('gl_spot_cutoff',s) > 0 then result := GL_SPOT_CUTOFF;
if pos('gl_spot_direction',s) > 0 then result := GL_SPOT_DIRECTION;
if pos('gl_spot_exponent',s) > 0 then result := GL_SPOT_EXPONENT;
if pos('gl_src_alpha',s) > 0 then result := GL_SRC_ALPHA;
if pos('gl_src_alpha_saturate',s) > 0 then result := GL_SRC_ALPHA_SATURATE;
if pos('gl_src_color',s) > 0 then result := GL_SRC_COLOR;
if pos('gl_stack_overflow',s) > 0 then result := GL_STACK_OVERFLOW;
if pos('gl_stack_underflow',s) > 0 then result := GL_STACK_UNDERFLOW;
if pos('gl_stencil',s) > 0 then result := GL_STENCIL;
if pos('gl_stencil_bits',s) > 0 then result := GL_STENCIL_BITS;
if pos('gl_stencil_buffer_bit',s) > 0 then result := GL_STENCIL_BUFFER_BIT;
if pos('gl_stencil_clear_value',s) > 0 then result := GL_STENCIL_CLEAR_VALUE;
if pos('gl_stencil_fail',s) > 0 then result := GL_STENCIL_FAIL;
if pos('gl_stencil_func',s) > 0 then result := GL_STENCIL_FUNC;
if pos('gl_stencil_index',s) > 0 then result := GL_STENCIL_INDEX;
if pos('gl_stencil_pass_depth_fail',s) > 0 then result := GL_STENCIL_PASS_DEPTH_FAIL;
if pos('gl_stencil_pass_depth_pass',s) > 0 then result := GL_STENCIL_PASS_DEPTH_PASS;
if pos('gl_stencil_ref',s) > 0 then result := GL_STENCIL_REF;
if pos('gl_stencil_test',s) > 0 then result := GL_STENCIL_TEST;
if pos('gl_stencil_value_mask',s) > 0 then result := GL_STENCIL_VALUE_MASK;
if pos('gl_stencil_writemask',s) > 0 then result := GL_STENCIL_WRITEMASK;
if pos('gl_stereo',s) > 0 then result := GL_STEREO;
if pos('gl_subpixel_bits',s) > 0 then result := GL_SUBPIXEL_BITS;
if pos('gl_t',s) > 0 then result := GL_T;
if pos('gl_texture',s) > 0 then result := GL_TEXTURE;
if pos('gl_texture_1d',s) > 0 then result := GL_TEXTURE_1D;
if pos('gl_texture_2d',s) > 0 then result := GL_TEXTURE_2D;
if pos('gl_texture_bit',s) > 0 then result := GL_TEXTURE_BIT;
if pos('gl_texture_border',s) > 0 then result := GL_TEXTURE_BORDER;
if pos('gl_texture_border_color',s) > 0 then result := GL_TEXTURE_BORDER_COLOR;
if pos('gl_texture_components',s) > 0 then result := GL_TEXTURE_COMPONENTS;
if pos('gl_texture_coord_array_count_ext',s) > 0 then result := GL_TEXTURE_COORD_ARRAY_COUNT_EXT;
if pos('gl_texture_coord_array_ext',s) > 0 then result := GL_TEXTURE_COORD_ARRAY_EXT;
if pos('gl_texture_coord_array_pointer_ext',s) > 0 then result := GL_TEXTURE_COORD_ARRAY_POINTER_EXT;
if pos('gl_texture_coord_array_size_ext',s) > 0 then result := GL_TEXTURE_COORD_ARRAY_SIZE_EXT;
if pos('gl_texture_coord_array_stride_ext',s) > 0 then result := GL_TEXTURE_COORD_ARRAY_STRIDE_EXT;
if pos('gl_texture_coord_array_type_ext',s) > 0 then result := GL_TEXTURE_COORD_ARRAY_TYPE_EXT;
if pos('gl_texture_env',s) > 0 then result := GL_TEXTURE_ENV;
if pos('gl_texture_env_color',s) > 0 then result := GL_TEXTURE_ENV_COLOR;
if pos('gl_texture_env_mode',s) > 0 then result := GL_TEXTURE_ENV_MODE;
if pos('gl_texture_gen_mode',s) > 0 then result := GL_TEXTURE_GEN_MODE;
if pos('gl_texture_gen_q',s) > 0 then result := GL_TEXTURE_GEN_Q;
if pos('gl_texture_gen_r',s) > 0 then result := GL_TEXTURE_GEN_R;
if pos('gl_texture_gen_s',s) > 0 then result := GL_TEXTURE_GEN_S;
if pos('gl_texture_gen_t',s) > 0 then result := GL_TEXTURE_GEN_T;
if pos('gl_texture_height',s) > 0 then result := GL_TEXTURE_HEIGHT;
if pos('gl_texture_mag_filter',s) > 0 then result := GL_TEXTURE_MAG_FILTER;
if pos('gl_texture_matrix',s) > 0 then result := GL_TEXTURE_MATRIX;
if pos('gl_texture_min_filter',s) > 0 then result := GL_TEXTURE_MIN_FILTER;
if pos('gl_texture_stack_depth',s) > 0 then result := GL_TEXTURE_STACK_DEPTH;
if pos('gl_texture_width',s) > 0 then result := GL_TEXTURE_WIDTH;
if pos('gl_texture_wrap_s',s) > 0 then result := GL_TEXTURE_WRAP_S;
if pos('gl_texture_wrap_t',s) > 0 then result := GL_TEXTURE_WRAP_T;
if pos('gl_transform_bit',s) > 0 then result := GL_TRANSFORM_BIT;
if pos('gl_triangle_fan',s) > 0 then result := GL_TRIANGLE_FAN;
if pos('gl_triangle_strip',s) > 0 then result := GL_TRIANGLE_STRIP;
if pos('gl_triangles',s) > 0 then result := GL_TRIANGLES;
if pos('gl_unpack_alignment',s) > 0 then result := GL_UNPACK_ALIGNMENT;
if pos('gl_unpack_lsb_first',s) > 0 then result := GL_UNPACK_LSB_FIRST;
if pos('gl_unpack_row_length',s) > 0 then result := GL_UNPACK_ROW_LENGTH;
if pos('gl_unpack_skip_pixels',s) > 0 then result := GL_UNPACK_SKIP_PIXELS;
if pos('gl_unpack_skip_rows',s) > 0 then result := GL_UNPACK_SKIP_ROWS;
if pos('gl_unpack_swap_bytes',s) > 0 then result := GL_UNPACK_SWAP_BYTES;
if pos('gl_unsigned_byte',s) > 0 then result := GL_UNSIGNED_BYTE;
if pos('gl_unsigned_int',s) > 0 then result := GL_UNSIGNED_INT;
if pos('gl_unsigned_short',s) > 0 then result := GL_UNSIGNED_SHORT;
if pos('gl_vendor',s) > 0 then result := GL_VENDOR;
if pos('gl_version',s) > 0 then result := GL_VERSION;
if pos('gl_vertex_array_count_ext',s) > 0 then result := GL_VERTEX_ARRAY_COUNT_EXT;
if pos('gl_vertex_array_ext',s) > 0 then result := GL_VERTEX_ARRAY_EXT;
if pos('gl_vertex_array_pointer_ext',s) > 0 then result := GL_VERTEX_ARRAY_POINTER_EXT;
if pos('gl_vertex_array_size_ext',s) > 0 then result := GL_VERTEX_ARRAY_SIZE_EXT;
if pos('gl_vertex_array_stride_ext',s) > 0 then result := GL_VERTEX_ARRAY_STRIDE_EXT;
if pos('gl_vertex_array_type_ext',s) > 0 then result := GL_VERTEX_ARRAY_TYPE_EXT;
if pos('gl_viewport',s) > 0 then result := GL_VIEWPORT;
if pos('gl_viewport_bit',s) > 0 then result := GL_VIEWPORT_BIT;
if pos('gl_win_swap_hint',s) > 0 then result := GL_WIN_swap_hint;
if pos('gl_xor',s) > 0 then result := GL_XOR;
if pos('gl_zero',s) > 0 then result := GL_ZERO;
if pos('gl_zoom_x',s) > 0 then result := GL_ZOOM_X;
if pos('gl_zoom_y',s) > 0 then result := GL_ZOOM_Y;
if pos('gl_constant_color',s) > 0 then result := GL_CONSTANT_COLOR;
if pos('gl_one_minus_constant_color',s) > 0 then result := GL_ONE_MINUS_CONSTANT_COLOR;
if pos('gl_constant_alpha',s) > 0 then result := GL_CONSTANT_ALPHA;
if pos('gl_one_minus_constant_alpha',s) > 0 then result := GL_ONE_MINUS_CONSTANT_ALPHA;
if pos('gl_blend_color',s) > 0 then result := GL_BLEND_COLOR;
if pos('gl_func_add',s) > 0 then result := GL_FUNC_ADD;
if pos('gl_min',s) > 0 then result := GL_MIN;
if pos('gl_max',s) > 0 then result := GL_MAX;
if pos('gl_blend_equation',s) > 0 then result := GL_BLEND_EQUATION;
if pos('gl_func_subtract',s) > 0 then result := GL_FUNC_SUBTRACT;
if pos('gl_func_reverse_subtract',s) > 0 then result := GL_FUNC_REVERSE_SUBTRACT;
if pos('gl_convolution_1d',s) > 0 then result := GL_CONVOLUTION_1D;
if pos('gl_convolution_2d',s) > 0 then result := GL_CONVOLUTION_2D;
if pos('gl_separable_2d',s) > 0 then result := GL_SEPARABLE_2D;
if pos('gl_convolution_border_mode',s) > 0 then result := GL_CONVOLUTION_BORDER_MODE;
if pos('gl_convolution_filter_scale',s) > 0 then result := GL_CONVOLUTION_FILTER_SCALE;
if pos('gl_convolution_filter_bias',s) > 0 then result := GL_CONVOLUTION_FILTER_BIAS;
if pos('gl_reduce',s) > 0 then result := GL_REDUCE;
if pos('gl_convolution_format',s) > 0 then result := GL_CONVOLUTION_FORMAT;
if pos('gl_convolution_width',s) > 0 then result := GL_CONVOLUTION_WIDTH;
if pos('gl_convolution_height',s) > 0 then result := GL_CONVOLUTION_HEIGHT;
if pos('gl_max_convolution_width',s) > 0 then result := GL_MAX_CONVOLUTION_WIDTH;
if pos('gl_max_convolution_height',s) > 0 then result := GL_MAX_CONVOLUTION_HEIGHT;
if pos('gl_post_convolution_red_scale',s) > 0 then result := GL_POST_CONVOLUTION_RED_SCALE;
if pos('gl_post_convolution_green_scale',s) > 0 then result := GL_POST_CONVOLUTION_GREEN_SCALE;
if pos('gl_post_convolution_blue_scale',s) > 0 then result := GL_POST_CONVOLUTION_BLUE_SCALE;
if pos('gl_post_convolution_alpha_scale',s) > 0 then result := GL_POST_CONVOLUTION_ALPHA_SCALE;
if pos('gl_post_convolution_red_bias',s) > 0 then result := GL_POST_CONVOLUTION_RED_BIAS;
if pos('gl_post_convolution_green_bias',s) > 0 then result := GL_POST_CONVOLUTION_GREEN_BIAS;
if pos('gl_post_convolution_blue_bias',s) > 0 then result := GL_POST_CONVOLUTION_BLUE_BIAS;
if pos('gl_post_convolution_alpha_bias',s) > 0 then result := GL_POST_CONVOLUTION_ALPHA_BIAS;
if pos('gl_histogram',s) > 0 then result := GL_HISTOGRAM;
if pos('gl_proxy_histogram',s) > 0 then result := GL_PROXY_HISTOGRAM;
if pos('gl_histogram_width',s) > 0 then result := GL_HISTOGRAM_WIDTH;
if pos('gl_histogram_format',s) > 0 then result := GL_HISTOGRAM_FORMAT;
if pos('gl_histogram_red_size',s) > 0 then result := GL_HISTOGRAM_RED_SIZE;
if pos('gl_histogram_green_size',s) > 0 then result := GL_HISTOGRAM_GREEN_SIZE;
if pos('gl_histogram_blue_size',s) > 0 then result := GL_HISTOGRAM_BLUE_SIZE;
if pos('gl_histogram_alpha_size',s) > 0 then result := GL_HISTOGRAM_ALPHA_SIZE;
if pos('gl_histogram_luminance_size',s) > 0 then result := GL_HISTOGRAM_LUMINANCE_SIZE;
if pos('gl_histogram_sink',s) > 0 then result := GL_HISTOGRAM_SINK;
if pos('gl_minmax',s) > 0 then result := GL_MINMAX;
if pos('gl_minmax_format',s) > 0 then result := GL_MINMAX_FORMAT;
if pos('gl_minmax_sink',s) > 0 then result := GL_MINMAX_SINK;
if pos('gl_table_too_large',s) > 0 then result := GL_TABLE_TOO_LARGE;
if pos('gl_color_matrix',s) > 0 then result := GL_COLOR_MATRIX;
if pos('gl_color_matrix_stack_depth',s) > 0 then result := GL_COLOR_MATRIX_STACK_DEPTH;
if pos('gl_max_color_matrix_stack_depth',s) > 0 then result := GL_MAX_COLOR_MATRIX_STACK_DEPTH;
if pos('gl_post_color_matrix_red_scale',s) > 0 then result := GL_POST_COLOR_MATRIX_RED_SCALE;
if pos('gl_post_color_matrix_green_scale',s) > 0 then result := GL_POST_COLOR_MATRIX_GREEN_SCALE;
if pos('gl_post_color_matrix_blue_scale',s) > 0 then result := GL_POST_COLOR_MATRIX_BLUE_SCALE;
if pos('gl_post_color_matrix_alpha_scale',s) > 0 then result := GL_POST_COLOR_MATRIX_ALPHA_SCALE;
if pos('gl_post_color_matrix_red_bias',s) > 0 then result := GL_POST_COLOR_MATRIX_RED_BIAS;
if pos('gl_post_color_matrix_green_bias',s) > 0 then result := GL_POST_COLOR_MATRIX_GREEN_BIAS;
if pos('gl_post_color_matrix_blue_bias',s) > 0 then result := GL_POST_COLOR_MATRIX_BLUE_BIAS;
if pos('gl_post_color_matrix_alpha_bias',s) > 0 then result := GL_POST_COLOR_MATRIX_ALPHA_BIAS;
if pos('gl_color_table',s) > 0 then result := GL_COLOR_TABLE;
if pos('gl_post_convolution_color_table',s) > 0 then result := GL_POST_CONVOLUTION_COLOR_TABLE;
if pos('gl_post_color_matrix_color_table',s) > 0 then result := GL_POST_COLOR_MATRIX_COLOR_TABLE;
if pos('gl_proxy_color_table',s) > 0 then result := GL_PROXY_COLOR_TABLE;
if pos('gl_proxy_post_convolution_color_table',s) > 0 then result := GL_PROXY_POST_CONVOLUTION_COLOR_TABLE;
if pos('gl_proxy_post_color_matrix_color_table',s) > 0 then result := GL_PROXY_POST_COLOR_MATRIX_COLOR_TABLE;
if pos('gl_color_table_scale',s) > 0 then result := GL_COLOR_TABLE_SCALE;
if pos('gl_color_table_bias',s) > 0 then result := GL_COLOR_TABLE_BIAS;
if pos('gl_color_table_format',s) > 0 then result := GL_COLOR_TABLE_FORMAT;
if pos('gl_color_table_width',s) > 0 then result := GL_COLOR_TABLE_WIDTH;
if pos('gl_color_table_red_size',s) > 0 then result := GL_COLOR_TABLE_RED_SIZE;
if pos('gl_color_table_green_size',s) > 0 then result := GL_COLOR_TABLE_GREEN_SIZE;
if pos('gl_color_table_blue_size',s) > 0 then result := GL_COLOR_TABLE_BLUE_SIZE;
if pos('gl_color_table_alpha_size',s) > 0 then result := GL_COLOR_TABLE_ALPHA_SIZE;
if pos('gl_color_table_luminance_size',s) > 0 then result := GL_COLOR_TABLE_LUMINANCE_SIZE;
if pos('gl_color_table_intensity_size',s) > 0 then result := GL_COLOR_TABLE_INTENSITY_SIZE;
if pos('gl_constant_border',s) > 0 then result := GL_CONSTANT_BORDER;
if pos('gl_replicate_border',s) > 0 then result := GL_REPLICATE_BORDER;
if pos('gl_convolution_border_color',s) > 0 then result := GL_CONVOLUTION_BORDER_COLOR;

end;

end.






Old topic!
Guest, the last post of this topic is over 60 days old and at this point you may not reply in this topic. If you wish to continue this conversation start a new topic.



PARTNERS