AccordionDrawer
Class AccordionDrawer

java.lang.Object
  |
  +--java.awt.Component
        |
        +--java.awt.Canvas
              |
              +--gl4java.awt.GLCanvas
                    |
                    +--AccordionDrawer.AccordionDrawer
All Implemented Interfaces:
javax.accessibility.Accessible, java.awt.event.ComponentListener, java.util.EventListener, gl4java.drawable.GLDrawable, gl4java.GLEnum, gl4java.GLUEnum, java.awt.image.ImageObserver, java.awt.event.KeyListener, java.awt.MenuContainer, java.awt.event.MouseListener, java.awt.event.MouseMotionListener, java.io.Serializable, java.awt.event.WindowListener
Direct Known Subclasses:
AccordionTreeDrawer

public abstract class AccordionDrawer
extends gl4java.awt.GLCanvas
implements java.awt.event.MouseListener, java.awt.event.MouseMotionListener, java.awt.event.KeyListener

An abstract class representing a multi-scale rectangular grid on which shapes consisting of horizontal and vertical line segments (such as trees and graphs) can be drawn

Version:
Author:
Tamara Munzner, Serdar Tasiran
See Also:
AccordionDrawer.AccordionTreeDrawer, AccordionTreeDrawerFinal, Serialized Form

Field Summary
(package private)  java.awt.Color backgroundColor
           
(package private)  float backplane
           
 boolean biggrid
           
protected  int[] bottomSize
          How many cells there are in the bottom level of the quadtree, indexed by X and Y.
static int BRUTEFORCE
           
 boolean cacherange
           
 int changedMarksFrame
           
 boolean checktime
           
 boolean colorgrid
           
protected  long continueStart
           
protected  int count
           
 int counter
           
 GridCell defaultFocusCell
           
 boolean dimbrite
           
 boolean dimcolors
           
protected  boolean doBox
           
protected  boolean doingFlash
           
protected  boolean doLensView
           
 int DOWN
           
protected  boolean doZoom
           
 boolean drawlabels
           
protected  java.util.ArrayList drawnLabels
          gridSize[xy][level] is the size (#of GridCells) of the quadtree structure (the grid) in the xy dimension at level "level"
 int draworder
          Order to draw elements in scene.
 boolean drawsplits
           
 boolean dumpstats
           
protected  long dynamicStart
           
protected  long dynamicTime
           
 int expandleaves
           
protected  InteractionBox flashBox
           
protected  InteractionBox flashBoxOld
           
protected  float flashBoxWidth
           
protected  java.awt.Color flashCol
           
protected  CellGeom flashGeom
           
protected  CellGeom flashGeomOld
           
protected  int flashX
           
protected  int flashXOld
           
protected  int flashY
           
protected  int flashYOld
           
(package private)  boolean floatbuffer
           
 GridCell focusCell
           
protected  int frameNum
           
static int FROMFOCUSCELL
           
private static int getTimeOfDayCounter
           
 gl4java.GLCapabilities glc
           
(package private)  gl4java.utils.glut.GLUTFunc glut
           
protected  int gridDepth
           
protected  float gridplane
           
 boolean guarvis
          Whether to guarantee visibility.
protected  float hiliteplane
           
 boolean horiz
           
protected  float inflateIncr
           
 float interactionplane
           
protected  boolean justPressed
           
 boolean keepDrawing
           
 boolean keepMoving
           
(package private)  int key
           
(package private)  java.awt.Color labelBackColor
           
(package private)  java.awt.Color labelBackHiColor
           
(package private)  float labelbgplane
           
(package private)  java.awt.Color labelColor
           
 boolean labeldrawback
           
(package private)  java.awt.Color labelHiColor
           
(package private)  float labelplane
           
 boolean labelpopup
           
 boolean labelposright
           
 boolean labeltransp
           
 int LEFT
           
 int leftRight
           
 Lens lens
           
 float linethickness
           
 boolean linkednav
           
(package private)  int[] maxStuckIndex
           
protected  float[] maxStuckVal
          maxStuckVal is the "stuck to the border" value for edge cells.
protected  GridCell[] maxUsed
           
(package private)  int[] minCellDims
           
protected  float minContextInside
          minContext is the percentage of screen area guaranteed for smooshed things
protected  float minContextPeriphery
           
(package private)  int[] minStuckIndex
           
protected  float[] minStuckVal
          minStuckVal is the "stuck to the border" value for edge cells.
protected  boolean mouseChanged
           
protected  boolean mouseDragging
           
protected  int nameStuckVal
           
 boolean noflash
           
 boolean nogeoms
           
 boolean nogrid
           
protected  long now
           
(package private)  int numAnimSteps
           
(package private)  int numCellsDrawnThisFrame
           
protected  float objplane
           
 Lens oldLens
           
protected  QuadTree quadTree
           
 boolean rendermode
           
 int RIGHT
           
 GridCell rootCell
          The root GridCell that contains all others.
protected  java.awt.Color rubberbandColor
           
 boolean showalg
           
 boolean showdiffs
           
protected  float shrinkFactor
          How much to shrink a cell-to-cell area if it is smaller than 2*inflateIncr;
protected  int sideBuffer
           
(package private)  SortedCell[][] sortedCells
          Companion data structure for splitCells[][] that has cells in sorted order in X and Y.
(package private)  GridCell[][] splitCells
          Store a single canonical cell for each moveable line that can be used to change the split position for that line.
(package private)  int[] splitCellSize
          Size of splitCell 2D array
(package private)  float[][] splits
          Stores actual split positions for a moveable line as relative numbers in the cell coordinate system (that is, between 0.0 and 1.0).
protected  java.io.PrintWriter stats
           
 boolean stoprendering
           
(package private)  java.util.TreeSet ToDrawQ
          Contains cells to draw
 java.util.Vector toMove
           
private  boolean transitionAnimating
           
 int UP
           
 int upDown
           
(package private)  int[] winsize
          Size of the window to draw the AccordionDrawer in winsize[0] = w(idth) winsize[0] = h(eight)
static int X
           
 int[] xInterval
           
protected  float[][] xlenspixels
          store lens pixel
static int Y
           
 int[] yInterval
           
protected  float[][] ylenspixels
           
protected  float[] zoompixels
           
 
Fields inherited from class gl4java.awt.GLCanvas
_f_dur, accumSize, capabilities, createOwnWindow, doubleBuffer, gl, glj, glu, mustResize, needCvsDispose, rgba, sharedGLContext, size, stencilBits, stereoView, topLevelWindow
 
Fields inherited from class java.awt.Canvas
 
Fields inherited from class java.awt.Component
BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT
 
Fields inherited from interface gl4java.GLEnum
GL_1PASS_EXT, GL_1PASS_SGIS, GL_2_BYTES, GL_2D, GL_2PASS_0_EXT, GL_2PASS_0_SGIS, GL_2PASS_1_EXT, GL_2PASS_1_SGIS, GL_2X_BIT_ATI, GL_3_BYTES, GL_3D, GL_3D_COLOR, GL_3D_COLOR_TEXTURE, GL_3DFX_multisample, GL_3DFX_tbuffer, GL_3DFX_texture_compression_FXT1, GL_4_BYTES, GL_422_AVERAGE_EXT, GL_422_EXT, GL_422_REV_AVERAGE_EXT, GL_422_REV_EXT, GL_4D_COLOR_TEXTURE, GL_4PASS_0_EXT, GL_4PASS_0_SGIS, GL_4PASS_1_EXT, GL_4PASS_1_SGIS, GL_4PASS_2_EXT, GL_4PASS_2_SGIS, GL_4PASS_3_EXT, GL_4PASS_3_SGIS, GL_4X_BIT_ATI, GL_8X_BIT_ATI, GL_ABGR_EXT, GL_ACCUM, GL_ACCUM_ALPHA_BITS, GL_ACCUM_BLUE_BITS, GL_ACCUM_BUFFER_BIT, GL_ACCUM_CLEAR_VALUE, GL_ACCUM_GREEN_BITS, GL_ACCUM_RED_BITS, GL_ACTIVE_STENCIL_FACE_EXT, GL_ACTIVE_TEXTURE, GL_ACTIVE_TEXTURE_ARB, GL_ACTIVE_VERTEX_UNITS_ARB, GL_ADD, GL_ADD_ATI, GL_ADD_SIGNED, GL_ADD_SIGNED_ARB, GL_ADD_SIGNED_EXT, GL_ALIASED_LINE_WIDTH_RANGE, GL_ALIASED_POINT_SIZE_RANGE, GL_ALL_ATTRIB_BITS, GL_ALL_CLIENT_ATTRIB_BITS, GL_ALL_COMPLETED_NV, GL_ALLOW_DRAW_FRG_HINT_PGI, GL_ALLOW_DRAW_MEM_HINT_PGI, GL_ALLOW_DRAW_OBJ_HINT_PGI, GL_ALLOW_DRAW_WIN_HINT_PGI, GL_ALPHA, GL_ALPHA_BIAS, GL_ALPHA_BITS, GL_ALPHA_MAX_CLAMP_INGR, GL_ALPHA_MAX_SGIX, GL_ALPHA_MIN_CLAMP_INGR, GL_ALPHA_MIN_SGIX, GL_ALPHA_SCALE, GL_ALPHA_TEST, GL_ALPHA_TEST_FUNC, GL_ALPHA_TEST_REF, GL_ALPHA12, GL_ALPHA12_EXT, GL_ALPHA16, GL_ALPHA16_EXT, GL_ALPHA4, GL_ALPHA4_EXT, GL_ALPHA8, GL_ALPHA8_EXT, GL_ALWAYS, GL_ALWAYS_FAST_HINT_PGI, GL_ALWAYS_SOFT_HINT_PGI, GL_AMBIENT, GL_AMBIENT_AND_DIFFUSE, GL_AND, GL_AND_INVERTED, GL_AND_REVERSE, GL_APPLE_client_storage, GL_APPLE_specular_vector, GL_APPLE_transform_hint, GL_APPLE_ycbcr_422, GL_ARB_depth_texture, GL_ARB_imaging, GL_ARB_matrix_palette, GL_ARB_multisample, GL_ARB_multitexture, GL_ARB_point_parameters, GL_ARB_shadow, GL_ARB_shadow_ambient, GL_ARB_texture_border_clamp, GL_ARB_texture_compression, GL_ARB_texture_cube_map, GL_ARB_texture_env_add, GL_ARB_texture_env_combine, GL_ARB_texture_env_crossbar, GL_ARB_texture_env_dot3, GL_ARB_texture_mirror_repeat, GL_ARB_transpose_matrix, GL_ARB_vertex_blend, GL_ARB_vertex_program, GL_ARB_window_pos, GL_ARRAY_ELEMENT_LOCK_COUNT_EXT, GL_ARRAY_ELEMENT_LOCK_FIRST_EXT, GL_ARRAY_OBJECT_BUFFER_ATI, GL_ARRAY_OBJECT_OFFSET_ATI, GL_ASYNC_DRAW_PIXELS_SGIX, GL_ASYNC_HISTOGRAM_SGIX, GL_ASYNC_MARKER_SGIX, GL_ASYNC_READ_PIXELS_SGIX, GL_ASYNC_TEX_IMAGE_SGIX, GL_ATI_element_array, GL_ATI_envmap_bumpmap, GL_ATI_fragment_shader, GL_ATI_pn_triangles, GL_ATI_texture_env_combine3, GL_ATI_texture_mirror_once, GL_ATI_vertex_array_object, GL_ATI_vertex_streams, GL_ATTENUATION_EXT, GL_ATTRIB_ARRAY_POINTER_NV, GL_ATTRIB_ARRAY_SIZE_NV, GL_ATTRIB_ARRAY_STRIDE_NV, GL_ATTRIB_ARRAY_TYPE_NV, GL_ATTRIB_STACK_DEPTH, GL_AUTO_NORMAL, GL_AUX_BUFFERS, GL_AUX0, GL_AUX1, GL_AUX2, GL_AUX3, GL_AVERAGE_EXT, GL_AVERAGE_HP, GL_BACK, GL_BACK_LEFT, GL_BACK_NORMALS_HINT_PGI, GL_BACK_RIGHT, GL_BGR, GL_BGR_EXT, GL_BGRA, GL_BGRA_EXT, GL_BIAS_BIT_ATI, GL_BIAS_BY_NEGATIVE_ONE_HALF_NV, GL_BINORMAL_ARRAY_EXT, GL_BINORMAL_ARRAY_POINTER_EXT, GL_BINORMAL_ARRAY_STRIDE_EXT, GL_BINORMAL_ARRAY_TYPE_EXT, GL_BITMAP, GL_BITMAP_TOKEN, GL_BLEND, GL_BLEND_COLOR, GL_BLEND_COLOR_EXT, GL_BLEND_DST, GL_BLEND_DST_ALPHA, GL_BLEND_DST_ALPHA_EXT, GL_BLEND_DST_RGB, GL_BLEND_DST_RGB_EXT, GL_BLEND_EQUATION, GL_BLEND_EQUATION_EXT, GL_BLEND_SRC, GL_BLEND_SRC_ALPHA, GL_BLEND_SRC_ALPHA_EXT, GL_BLEND_SRC_RGB, GL_BLEND_SRC_RGB_EXT, GL_BLUE, GL_BLUE_BIAS, GL_BLUE_BIT_ATI, GL_BLUE_BITS, GL_BLUE_MAX_CLAMP_INGR, GL_BLUE_MIN_CLAMP_INGR, GL_BLUE_SCALE, GL_BUMP_ENVMAP_ATI, GL_BUMP_NUM_TEX_UNITS_ATI, GL_BUMP_ROT_MATRIX_ATI, GL_BUMP_ROT_MATRIX_SIZE_ATI, GL_BUMP_TARGET_ATI, GL_BUMP_TEX_UNITS_ATI, GL_BYTE, GL_C3F_V3F, GL_C4F_N3F_V3F, GL_C4UB_V2F, GL_C4UB_V3F, GL_CALLIGRAPHIC_FRAGMENT_SGIX, GL_CCW, GL_CLAMP, GL_CLAMP_TO_BORDER, GL_CLAMP_TO_BORDER_ARB, GL_CLAMP_TO_EDGE, GL_CLAMP_TO_EDGE_SGIS, GL_CLEAR, GL_CLIENT_ACTIVE_TEXTURE, GL_CLIENT_ACTIVE_TEXTURE_ARB, GL_CLIENT_ALL_ATTRIB_BITS, GL_CLIENT_ATTRIB_STACK_DEPTH, GL_CLIENT_PIXEL_STORE_BIT, GL_CLIENT_VERTEX_ARRAY_BIT, GL_CLIP_FAR_HINT_PGI, GL_CLIP_NEAR_HINT_PGI, GL_CLIP_PLANE0, GL_CLIP_PLANE1, GL_CLIP_PLANE2, GL_CLIP_PLANE3, GL_CLIP_PLANE4, GL_CLIP_PLANE5, GL_CLIP_VOLUME_CLIPPING_HINT_EXT, GL_CMYK_EXT, GL_CMYKA_EXT, GL_CND_ATI, GL_CND0_ATI, GL_COEFF, GL_COLOR, GL_COLOR_ALPHA_PAIRING_ATI, GL_COLOR_ARRAY, GL_COLOR_ARRAY_COUNT_EXT, GL_COLOR_ARRAY_EXT, GL_COLOR_ARRAY_LIST_IBM, GL_COLOR_ARRAY_LIST_STRIDE_IBM, GL_COLOR_ARRAY_PARALLEL_POINTERS_INTEL, GL_COLOR_ARRAY_POINTER, GL_COLOR_ARRAY_POINTER_EXT, GL_COLOR_ARRAY_SIZE, GL_COLOR_ARRAY_SIZE_EXT, GL_COLOR_ARRAY_STRIDE, GL_COLOR_ARRAY_STRIDE_EXT, GL_COLOR_ARRAY_TYPE, GL_COLOR_ARRAY_TYPE_EXT, GL_COLOR_BUFFER_BIT, GL_COLOR_CLEAR_VALUE, GL_COLOR_INDEX, GL_COLOR_INDEX1_EXT, GL_COLOR_INDEX12_EXT, GL_COLOR_INDEX16_EXT, GL_COLOR_INDEX2_EXT, GL_COLOR_INDEX4_EXT, GL_COLOR_INDEX8_EXT, GL_COLOR_INDEXES, GL_COLOR_LOGIC_OP, GL_COLOR_MATERIAL, GL_COLOR_MATERIAL_FACE, GL_COLOR_MATERIAL_PARAMETER, GL_COLOR_MATRIX, GL_COLOR_MATRIX_SGI, GL_COLOR_MATRIX_STACK_DEPTH, GL_COLOR_MATRIX_STACK_DEPTH_SGI, GL_COLOR_SUM, GL_COLOR_SUM_ARB, GL_COLOR_SUM_CLAMP_NV, GL_COLOR_SUM_EXT, GL_COLOR_TABLE, GL_COLOR_TABLE_ALPHA_SIZE, GL_COLOR_TABLE_ALPHA_SIZE_SGI, GL_COLOR_TABLE_BIAS, GL_COLOR_TABLE_BIAS_SGI, GL_COLOR_TABLE_BLUE_SIZE, GL_COLOR_TABLE_BLUE_SIZE_SGI, GL_COLOR_TABLE_FORMAT, GL_COLOR_TABLE_FORMAT_SGI, GL_COLOR_TABLE_GREEN_SIZE, GL_COLOR_TABLE_GREEN_SIZE_SGI, GL_COLOR_TABLE_INTENSITY_SIZE, GL_COLOR_TABLE_INTENSITY_SIZE_SGI, GL_COLOR_TABLE_LUMINANCE_SIZE, GL_COLOR_TABLE_LUMINANCE_SIZE_SGI, GL_COLOR_TABLE_RED_SIZE, GL_COLOR_TABLE_RED_SIZE_SGI, GL_COLOR_TABLE_SCALE, GL_COLOR_TABLE_SCALE_SGI, GL_COLOR_TABLE_SGI, GL_COLOR_TABLE_WIDTH, GL_COLOR_TABLE_WIDTH_SGI, GL_COLOR_WRITEMASK, GL_COLOR3_BIT_PGI, GL_COLOR4_BIT_PGI, GL_COMBINE, GL_COMBINE_ALPHA, GL_COMBINE_ALPHA_ARB, GL_COMBINE_ALPHA_EXT, GL_COMBINE_ARB, GL_COMBINE_EXT, GL_COMBINE_RGB, GL_COMBINE_RGB_ARB, GL_COMBINE_RGB_EXT, GL_COMBINE4_NV, GL_COMBINER_AB_DOT_PRODUCT_NV, GL_COMBINER_AB_OUTPUT_NV, GL_COMBINER_BIAS_NV, GL_COMBINER_CD_DOT_PRODUCT_NV, GL_COMBINER_CD_OUTPUT_NV, GL_COMBINER_COMPONENT_USAGE_NV, GL_COMBINER_INPUT_NV, GL_COMBINER_MAPPING_NV, GL_COMBINER_MUX_SUM_NV, GL_COMBINER_SCALE_NV, GL_COMBINER_SUM_OUTPUT_NV, GL_COMBINER0_NV, GL_COMBINER1_NV, GL_COMBINER2_NV, GL_COMBINER3_NV, GL_COMBINER4_NV, GL_COMBINER5_NV, GL_COMBINER6_NV, GL_COMBINER7_NV, GL_COMP_BIT_ATI, GL_COMPARE_R_TO_TEXTURE, GL_COMPARE_R_TO_TEXTURE_ARB, GL_COMPILE, GL_COMPILE_AND_EXECUTE, GL_COMPRESSED_ALPHA, GL_COMPRESSED_ALPHA_ARB, GL_COMPRESSED_INTENSITY, GL_COMPRESSED_INTENSITY_ARB, GL_COMPRESSED_LUMINANCE, GL_COMPRESSED_LUMINANCE_ALPHA, GL_COMPRESSED_LUMINANCE_ALPHA_ARB, GL_COMPRESSED_LUMINANCE_ARB, GL_COMPRESSED_RGB, GL_COMPRESSED_RGB_ARB, GL_COMPRESSED_RGB_FXT1_3DFX, GL_COMPRESSED_RGB_S3TC_DXT1_EXT, GL_COMPRESSED_RGBA, GL_COMPRESSED_RGBA_ARB, GL_COMPRESSED_RGBA_FXT1_3DFX, GL_COMPRESSED_RGBA_S3TC_DXT1_EXT, GL_COMPRESSED_RGBA_S3TC_DXT3_EXT, GL_COMPRESSED_RGBA_S3TC_DXT5_EXT, GL_COMPRESSED_TEXTURE_FORMATS, GL_COMPRESSED_TEXTURE_FORMATS_ARB, GL_CON_0_ATI, GL_CON_1_ATI, GL_CON_10_ATI, GL_CON_11_ATI, GL_CON_12_ATI, GL_CON_13_ATI, GL_CON_14_ATI, GL_CON_15_ATI, GL_CON_16_ATI, GL_CON_17_ATI, GL_CON_18_ATI, GL_CON_19_ATI, GL_CON_2_ATI, GL_CON_20_ATI, GL_CON_21_ATI, GL_CON_22_ATI, GL_CON_23_ATI, GL_CON_24_ATI, GL_CON_25_ATI, GL_CON_26_ATI, GL_CON_27_ATI, GL_CON_28_ATI, GL_CON_29_ATI, GL_CON_3_ATI, GL_CON_30_ATI, GL_CON_31_ATI, GL_CON_4_ATI, GL_CON_5_ATI, GL_CON_6_ATI, GL_CON_7_ATI, GL_CON_8_ATI, GL_CON_9_ATI, GL_CONSERVE_MEMORY_HINT_PGI, GL_CONST_EYE_NV, GL_CONSTANT, GL_CONSTANT_ALPHA, GL_CONSTANT_ALPHA_EXT, GL_CONSTANT_ARB, GL_CONSTANT_ATTENUATION, GL_CONSTANT_BORDER, GL_CONSTANT_BORDER_HP, GL_CONSTANT_COLOR, GL_CONSTANT_COLOR_EXT, GL_CONSTANT_COLOR0_NV, GL_CONSTANT_COLOR1_NV, GL_CONSTANT_EXT, GL_CONVOLUTION_1D, GL_CONVOLUTION_1D_EXT, GL_CONVOLUTION_2D, GL_CONVOLUTION_2D_EXT, GL_CONVOLUTION_BORDER_COLOR, GL_CONVOLUTION_BORDER_COLOR_HP, GL_CONVOLUTION_BORDER_MODE, GL_CONVOLUTION_BORDER_MODE_EXT, GL_CONVOLUTION_FILTER_BIAS, GL_CONVOLUTION_FILTER_BIAS_EXT, GL_CONVOLUTION_FILTER_SCALE, GL_CONVOLUTION_FILTER_SCALE_EXT, GL_CONVOLUTION_FORMAT, GL_CONVOLUTION_FORMAT_EXT, GL_CONVOLUTION_HEIGHT, GL_CONVOLUTION_HEIGHT_EXT, GL_CONVOLUTION_HINT_SGIX, GL_CONVOLUTION_WIDTH, GL_CONVOLUTION_WIDTH_EXT, GL_COORD_REPLACE_NV, GL_COPY, GL_COPY_INVERTED, GL_COPY_PIXEL_TOKEN, GL_CUBIC_EXT, GL_CUBIC_HP, GL_CULL_FACE, GL_CULL_FACE_MODE, GL_CULL_FRAGMENT_NV, GL_CULL_MODES_NV, GL_CULL_VERTEX_EXT, GL_CULL_VERTEX_EYE_POSITION_EXT, GL_CULL_VERTEX_IBM, GL_CULL_VERTEX_OBJECT_POSITION_EXT, GL_CURRENT_ATTRIB_NV, GL_CURRENT_BINORMAL_EXT, GL_CURRENT_BIT, GL_CURRENT_COLOR, GL_CURRENT_FOG_COORDINATE, GL_CURRENT_FOG_COORDINATE_EXT, GL_CURRENT_INDEX, GL_CURRENT_MATRIX_ARB, GL_CURRENT_MATRIX_INDEX_ARB, GL_CURRENT_MATRIX_NV, GL_CURRENT_MATRIX_STACK_DEPTH_ARB, GL_CURRENT_MATRIX_STACK_DEPTH_NV, GL_CURRENT_NORMAL, GL_CURRENT_OCCLUSION_QUERY_ID_NV, GL_CURRENT_PALETTE_MATRIX_ARB, GL_CURRENT_RASTER_COLOR, GL_CURRENT_RASTER_DISTANCE, GL_CURRENT_RASTER_INDEX, GL_CURRENT_RASTER_NORMAL_SGIX, GL_CURRENT_RASTER_POSITION, GL_CURRENT_RASTER_POSITION_VALID, GL_CURRENT_RASTER_TEXTURE_COORDS, GL_CURRENT_SECONDARY_COLOR, GL_CURRENT_SECONDARY_COLOR_EXT, GL_CURRENT_TANGENT_EXT, GL_CURRENT_TEXTURE_COORDS, GL_CURRENT_VERTEX_ATTRIB_ARB, GL_CURRENT_VERTEX_EXT, GL_CURRENT_VERTEX_WEIGHT_EXT, GL_CURRENT_WEIGHT_ARB, GL_CW, GL_DECAL, GL_DECR, GL_DECR_WRAP, GL_DECR_WRAP_EXT, GL_DEFORMATIONS_MASK_SGIX, GL_DEPENDENT_AR_TEXTURE_2D_NV, GL_DEPENDENT_GB_TEXTURE_2D_NV, GL_DEPENDENT_HILO_TEXTURE_2D_NV, GL_DEPENDENT_RGB_TEXTURE_3D_NV, GL_DEPENDENT_RGB_TEXTURE_CUBE_MAP_NV, GL_DEPTH, GL_DEPTH_BIAS, GL_DEPTH_BITS, GL_DEPTH_BUFFER_BIT, GL_DEPTH_CLAMP_NV, GL_DEPTH_CLEAR_VALUE, GL_DEPTH_COMPONENT, GL_DEPTH_COMPONENT16, GL_DEPTH_COMPONENT16_ARB, GL_DEPTH_COMPONENT16_SGIX, GL_DEPTH_COMPONENT24, GL_DEPTH_COMPONENT24_ARB, GL_DEPTH_COMPONENT24_SGIX, GL_DEPTH_COMPONENT32, GL_DEPTH_COMPONENT32_ARB, GL_DEPTH_COMPONENT32_SGIX, GL_DEPTH_FUNC, GL_DEPTH_PASS_INSTRUMENT_COUNTERS_SGIX, GL_DEPTH_PASS_INSTRUMENT_MAX_SGIX, GL_DEPTH_PASS_INSTRUMENT_SGIX, GL_DEPTH_RANGE, GL_DEPTH_SCALE, GL_DEPTH_STENCIL_MESA, GL_DEPTH_STENCIL_NV, GL_DEPTH_STENCIL_TO_BGRA_NV, GL_DEPTH_STENCIL_TO_RGBA_NV, GL_DEPTH_TEST, GL_DEPTH_TEXTURE_MODE, GL_DEPTH_TEXTURE_MODE_ARB, GL_DEPTH_WRITEMASK, GL_DETAIL_TEXTURE_2D_BINDING_SGIS, GL_DETAIL_TEXTURE_2D_SGIS, GL_DETAIL_TEXTURE_FUNC_POINTS_SGIS, GL_DETAIL_TEXTURE_LEVEL_SGIS, GL_DETAIL_TEXTURE_MODE_SGIS, GL_DIFFUSE, GL_DISCARD_ATI, GL_DISCARD_NV, GL_DISTANCE_ATTENUATION_EXT, GL_DISTANCE_ATTENUATION_SGIS, GL_DITHER, GL_DOMAIN, GL_DONT_CARE, GL_DOT_PRODUCT_AFFINE_DEPTH_REPLACE_NV, GL_DOT_PRODUCT_CONST_EYE_REFLECT_CUBE_MAP_NV, GL_DOT_PRODUCT_DEPTH_REPLACE_NV, GL_DOT_PRODUCT_DIFFUSE_CUBE_MAP_NV, GL_DOT_PRODUCT_NV, GL_DOT_PRODUCT_PASS_THROUGH_NV, GL_DOT_PRODUCT_REFLECT_CUBE_MAP_NV, GL_DOT_PRODUCT_TEXTURE_1D_NV, GL_DOT_PRODUCT_TEXTURE_2D_NV, GL_DOT_PRODUCT_TEXTURE_3D_NV, GL_DOT_PRODUCT_TEXTURE_CUBE_MAP_NV, GL_DOT_PRODUCT_TEXTURE_RECTANGLE_NV, GL_DOT2_ADD_ATI, GL_DOT3_ATI, GL_DOT3_RGB, GL_DOT3_RGB_ARB, GL_DOT3_RGB_EXT, GL_DOT3_RGBA, GL_DOT3_RGBA_ARB, GL_DOT3_RGBA_EXT, GL_DOT4_ATI, GL_DOUBLE, GL_DOUBLEBUFFER, GL_DRAW_BUFFER, GL_DRAW_PIXEL_TOKEN, GL_DS_BIAS_NV, GL_DS_SCALE_NV, GL_DSDT_MAG_INTENSITY_NV, GL_DSDT_MAG_NV, GL_DSDT_MAG_VIB_NV, GL_DSDT_NV, GL_DSDT8_MAG8_INTENSITY8_NV, GL_DSDT8_MAG8_NV, GL_DSDT8_NV, GL_DST_ALPHA, GL_DST_COLOR, GL_DT_BIAS_NV, GL_DT_SCALE_NV, GL_DU8DV8_ATI, GL_DUAL_ALPHA12_SGIS, GL_DUAL_ALPHA16_SGIS, GL_DUAL_ALPHA4_SGIS, GL_DUAL_ALPHA8_SGIS, GL_DUAL_INTENSITY12_SGIS, GL_DUAL_INTENSITY16_SGIS, GL_DUAL_INTENSITY4_SGIS, GL_DUAL_INTENSITY8_SGIS, GL_DUAL_LUMINANCE_ALPHA4_SGIS, GL_DUAL_LUMINANCE_ALPHA8_SGIS, GL_DUAL_LUMINANCE12_SGIS, GL_DUAL_LUMINANCE16_SGIS, GL_DUAL_LUMINANCE4_SGIS, GL_DUAL_LUMINANCE8_SGIS, GL_DUAL_TEXTURE_SELECT_SGIS, GL_DUDV_ATI, GL_DYNAMIC_ATI, GL_E_TIMES_F_NV, GL_EDGE_FLAG, GL_EDGE_FLAG_ARRAY, GL_EDGE_FLAG_ARRAY_COUNT_EXT, GL_EDGE_FLAG_ARRAY_EXT, GL_EDGE_FLAG_ARRAY_LIST_IBM, GL_EDGE_FLAG_ARRAY_LIST_STRIDE_IBM, GL_EDGE_FLAG_ARRAY_POINTER, GL_EDGE_FLAG_ARRAY_POINTER_EXT, GL_EDGE_FLAG_ARRAY_STRIDE, GL_EDGE_FLAG_ARRAY_STRIDE_EXT, GL_EDGEFLAG_BIT_PGI, GL_EIGHTH_BIT_ATI, GL_ELEMENT_ARRAY_ATI, GL_ELEMENT_ARRAY_POINTER_ATI, GL_ELEMENT_ARRAY_TYPE_ATI, GL_EMBOSS_CONSTANT_NV, GL_EMBOSS_LIGHT_NV, GL_EMBOSS_MAP_NV, GL_EMISSION, GL_ENABLE_BIT, GL_EQUAL, GL_EQUIV, GL_EVAL_2D_NV, GL_EVAL_BIT, GL_EVAL_FRACTIONAL_TESSELLATION_NV, GL_EVAL_TRIANGULAR_2D_NV, GL_EVAL_VERTEX_ATTRIB0_NV, GL_EVAL_VERTEX_ATTRIB1_NV, GL_EVAL_VERTEX_ATTRIB10_NV, GL_EVAL_VERTEX_ATTRIB11_NV, GL_EVAL_VERTEX_ATTRIB12_NV, GL_EVAL_VERTEX_ATTRIB13_NV, GL_EVAL_VERTEX_ATTRIB14_NV, GL_EVAL_VERTEX_ATTRIB15_NV, GL_EVAL_VERTEX_ATTRIB2_NV, GL_EVAL_VERTEX_ATTRIB3_NV, GL_EVAL_VERTEX_ATTRIB4_NV, GL_EVAL_VERTEX_ATTRIB5_NV, GL_EVAL_VERTEX_ATTRIB6_NV, GL_EVAL_VERTEX_ATTRIB7_NV, GL_EVAL_VERTEX_ATTRIB8_NV, GL_EVAL_VERTEX_ATTRIB9_NV, GL_EXP, GL_EXP2, GL_EXPAND_NEGATE_NV, GL_EXPAND_NORMAL_NV, GL_EXT_422_pixels, GL_EXT_abgr, GL_EXT_bgra, GL_EXT_blend_color, GL_EXT_blend_func_separate, GL_EXT_blend_logic_op, GL_EXT_blend_minmax, GL_EXT_blend_subtract, GL_EXT_clip_volume_hint, GL_EXT_cmyka, GL_EXT_color_matrix, GL_EXT_color_subtable, GL_EXT_compiled_vertex_array, GL_EXT_convolution, GL_EXT_coordinate_frame, GL_EXT_copy_texture, GL_EXT_cull_vertex, GL_EXT_draw_range_elements, GL_EXT_fog_coord, GL_EXT_histogram, GL_EXT_index_array_formats, GL_EXT_index_func, GL_EXT_index_material, GL_EXT_index_texture, GL_EXT_light_texture, GL_EXT_misc_attribute, GL_EXT_multi_draw_arrays, GL_EXT_multisample, GL_EXT_packed_pixels, GL_EXT_paletted_texture, GL_EXT_pixel_transform, GL_EXT_pixel_transform_color_table, GL_EXT_point_parameters, GL_EXT_polygon_offset, GL_EXT_rescale_normal, GL_EXT_secondary_color, GL_EXT_separate_specular_color, GL_EXT_shadow_funcs, GL_EXT_shared_texture_palette, GL_EXT_stencil_two_side, GL_EXT_stencil_wrap, GL_EXT_subtexture, GL_EXT_texture, GL_EXT_texture_env_add, GL_EXT_texture_env_combine, GL_EXT_texture_env_dot3, GL_EXT_texture_filter_anisotropic, GL_EXT_texture_lod_bias, GL_EXT_texture_object, GL_EXT_texture_perturb_normal, GL_EXT_texture3D, GL_EXT_vertex_array, GL_EXT_vertex_shader, GL_EXT_vertex_weighting, GL_EXTENSIONS, GL_EYE_DISTANCE_TO_LINE_SGIS, GL_EYE_DISTANCE_TO_POINT_SGIS, GL_EYE_LINE_SGIS, GL_EYE_LINEAR, GL_EYE_PLANE, GL_EYE_PLANE_ABSOLUTE_NV, GL_EYE_POINT_SGIS, GL_EYE_RADIAL_NV, GL_FALSE, GL_FASTEST, GL_FEEDBACK, GL_FEEDBACK_BUFFER_POINTER, GL_FEEDBACK_BUFFER_SIZE, GL_FEEDBACK_BUFFER_TYPE, GL_FENCE_CONDITION_NV, GL_FENCE_STATUS_NV, GL_FILL, GL_FILTER4_SGIS, GL_FLAT, GL_FLOAT, GL_FOG, GL_FOG_BIT, GL_FOG_COLOR, GL_FOG_COORDINATE, GL_FOG_COORDINATE_ARRAY, GL_FOG_COORDINATE_ARRAY_EXT, GL_FOG_COORDINATE_ARRAY_LIST_IBM, GL_FOG_COORDINATE_ARRAY_LIST_STRIDE_IBM, GL_FOG_COORDINATE_ARRAY_POINTER, GL_FOG_COORDINATE_ARRAY_POINTER_EXT, GL_FOG_COORDINATE_ARRAY_STRIDE, GL_FOG_COORDINATE_ARRAY_STRIDE_EXT, GL_FOG_COORDINATE_ARRAY_TYPE, GL_FOG_COORDINATE_ARRAY_TYPE_EXT, GL_FOG_COORDINATE_EXT, GL_FOG_COORDINATE_SOURCE, GL_FOG_COORDINATE_SOURCE_EXT, GL_FOG_DENSITY, GL_FOG_DISTANCE_MODE_NV, GL_FOG_END, GL_FOG_FUNC_POINTS_SGIS, GL_FOG_FUNC_SGIS, GL_FOG_HINT, GL_FOG_INDEX, GL_FOG_MODE, GL_FOG_OFFSET_SGIX, GL_FOG_OFFSET_VALUE_SGIX, GL_FOG_SCALE_SGIX, GL_FOG_SCALE_VALUE_SGIX, GL_FOG_SPECULAR_TEXTURE_WIN, GL_FOG_START, GL_FORCE_BLUE_TO_ONE_NV, GL_FORMAT_SUBSAMPLE_24_24_OML, GL_FORMAT_SUBSAMPLE_244_244_OML, GL_FRAGMENT_COLOR_EXT, GL_FRAGMENT_COLOR_MATERIAL_FACE_SGIX, GL_FRAGMENT_COLOR_MATERIAL_PARAMETER_SGIX, GL_FRAGMENT_COLOR_MATERIAL_SGIX, GL_FRAGMENT_DEPTH, GL_FRAGMENT_DEPTH_EXT, GL_FRAGMENT_LIGHT_MODEL_AMBIENT_SGIX, GL_FRAGMENT_LIGHT_MODEL_LOCAL_VIEWER_SGIX, GL_FRAGMENT_LIGHT_MODEL_NORMAL_INTERPOLATION_SGIX, GL_FRAGMENT_LIGHT_MODEL_TWO_SIDE_SGIX, GL_FRAGMENT_LIGHT0_SGIX, GL_FRAGMENT_LIGHT1_SGIX, GL_FRAGMENT_LIGHT2_SGIX, GL_FRAGMENT_LIGHT3_SGIX, GL_FRAGMENT_LIGHT4_SGIX, GL_FRAGMENT_LIGHT5_SGIX, GL_FRAGMENT_LIGHT6_SGIX, GL_FRAGMENT_LIGHT7_SGIX, GL_FRAGMENT_LIGHTING_SGIX, GL_FRAGMENT_MATERIAL_EXT, GL_FRAGMENT_NORMAL_EXT, GL_FRAGMENT_SHADER_ATI, GL_FRAMEZOOM_FACTOR_SGIX, GL_FRAMEZOOM_SGIX, GL_FRONT, GL_FRONT_AND_BACK, GL_FRONT_FACE, GL_FRONT_LEFT, GL_FRONT_RIGHT, GL_FULL_RANGE_EXT, GL_FULL_STIPPLE_HINT_PGI, GL_FUNC_ADD, GL_FUNC_ADD_EXT, GL_FUNC_REVERSE_SUBTRACT, GL_FUNC_REVERSE_SUBTRACT_EXT, GL_FUNC_SUBTRACT, GL_FUNC_SUBTRACT_EXT, GL_GENERATE_MIPMAP, GL_GENERATE_MIPMAP_HINT, GL_GENERATE_MIPMAP_HINT_SGIS, GL_GENERATE_MIPMAP_SGIS, GL_GEOMETRY_DEFORMATION_BIT_SGIX, GL_GEOMETRY_DEFORMATION_SGIX, GL_GEQUAL, GL_GLEXT_VERSION, GL_GLOBAL_ALPHA_FACTOR_SUN, GL_GLOBAL_ALPHA_SUN, GL_GREATER, GL_GREEN, GL_GREEN_BIAS, GL_GREEN_BIT_ATI, GL_GREEN_BITS, GL_GREEN_MAX_CLAMP_INGR, GL_GREEN_MIN_CLAMP_INGR, GL_GREEN_SCALE, GL_HALF_BIAS_NEGATE_NV, GL_HALF_BIAS_NORMAL_NV, GL_HALF_BIT_ATI, GL_HI_BIAS_NV, GL_HI_SCALE_NV, GL_HILO_NV, GL_HILO16_NV, GL_HILO8_NV, GL_HINT_BIT, GL_HISTOGRAM, GL_HISTOGRAM_ALPHA_SIZE, GL_HISTOGRAM_ALPHA_SIZE_EXT, GL_HISTOGRAM_BLUE_SIZE, GL_HISTOGRAM_BLUE_SIZE_EXT, GL_HISTOGRAM_EXT, GL_HISTOGRAM_FORMAT, GL_HISTOGRAM_FORMAT_EXT, GL_HISTOGRAM_GREEN_SIZE, GL_HISTOGRAM_GREEN_SIZE_EXT, GL_HISTOGRAM_LUMINANCE_SIZE, GL_HISTOGRAM_LUMINANCE_SIZE_EXT, GL_HISTOGRAM_RED_SIZE, GL_HISTOGRAM_RED_SIZE_EXT, GL_HISTOGRAM_SINK, GL_HISTOGRAM_SINK_EXT, GL_HISTOGRAM_WIDTH, GL_HISTOGRAM_WIDTH_EXT, GL_HP_convolution_border_modes, GL_HP_image_transform, GL_HP_occlusion_test, GL_HP_texture_lighting, GL_IBM_cull_vertex, GL_IBM_multimode_draw_arrays, GL_IBM_rasterpos_clip, GL_IBM_vertex_array_lists, GL_IDENTITY_NV, GL_IGNORE_BORDER_HP, GL_IMAGE_CUBIC_WEIGHT_HP, GL_IMAGE_MAG_FILTER_HP, GL_IMAGE_MIN_FILTER_HP, GL_IMAGE_ROTATE_ANGLE_HP, GL_IMAGE_ROTATE_ORIGIN_X_HP, GL_IMAGE_ROTATE_ORIGIN_Y_HP, GL_IMAGE_SCALE_X_HP, GL_IMAGE_SCALE_Y_HP, GL_IMAGE_TRANSFORM_2D_HP, GL_IMAGE_TRANSLATE_X_HP, GL_IMAGE_TRANSLATE_Y_HP, GL_INCR, GL_INCR_WRAP, GL_INCR_WRAP_EXT, GL_INDEX_ARRAY, GL_INDEX_ARRAY_COUNT_EXT, GL_INDEX_ARRAY_EXT, GL_INDEX_ARRAY_LIST_IBM, GL_INDEX_ARRAY_LIST_STRIDE_IBM, GL_INDEX_ARRAY_POINTER, GL_INDEX_ARRAY_POINTER_EXT, GL_INDEX_ARRAY_STRIDE, GL_INDEX_ARRAY_STRIDE_EXT, GL_INDEX_ARRAY_TYPE, GL_INDEX_ARRAY_TYPE_EXT, GL_INDEX_BIT_PGI, GL_INDEX_BITS, GL_INDEX_CLEAR_VALUE, GL_INDEX_LOGIC_OP, GL_INDEX_MATERIAL_EXT, GL_INDEX_MATERIAL_FACE_EXT, GL_INDEX_MATERIAL_PARAMETER_EXT, GL_INDEX_MODE, GL_INDEX_OFFSET, GL_INDEX_SHIFT, GL_INDEX_TEST_EXT, GL_INDEX_TEST_FUNC_EXT, GL_INDEX_TEST_REF_EXT, GL_INDEX_WRITEMASK, GL_INGR_blend_func_separate, GL_INGR_color_clamp, GL_INGR_interlace_read, GL_INSTRUMENT_BUFFER_POINTER_SGIX, GL_INSTRUMENT_MEASUREMENTS_SGIX, GL_INT, GL_INTEL_parallel_arrays, GL_INTENSITY, GL_INTENSITY_EXT, GL_INTENSITY12, GL_INTENSITY12_EXT, GL_INTENSITY16, GL_INTENSITY16_EXT, GL_INTENSITY4, GL_INTENSITY4_EXT, GL_INTENSITY8, GL_INTENSITY8_EXT, GL_INTERLACE_OML, GL_INTERLACE_READ_INGR, GL_INTERLACE_READ_OML, GL_INTERLACE_SGIX, GL_INTERPOLATE, GL_INTERPOLATE_ARB, GL_INTERPOLATE_EXT, GL_INVALID_ENUM, GL_INVALID_OPERATION, GL_INVALID_VALUE, GL_INVARIANT_DATATYPE_EXT, GL_INVARIANT_EXT, GL_INVARIANT_VALUE_EXT, GL_INVERSE_NV, GL_INVERSE_TRANSPOSE_NV, GL_INVERT, GL_INVERTED_SCREEN_W_REND, GL_IR_INSTRUMENT1_SGIX, GL_IUI_N3F_V2F_EXT, GL_IUI_N3F_V3F_EXT, GL_IUI_V2F_EXT, GL_IUI_V3F_EXT, GL_KEEP, GL_LEFT, GL_LEQUAL, GL_LERP_ATI, GL_LESS, GL_LIGHT_ENV_MODE_SGIX, GL_LIGHT_MODEL_AMBIENT, GL_LIGHT_MODEL_COLOR_CONTROL, GL_LIGHT_MODEL_COLOR_CONTROL_EXT, GL_LIGHT_MODEL_LOCAL_VIEWER, GL_LIGHT_MODEL_SPECULAR_VECTOR_APPLE, GL_LIGHT_MODEL_TWO_SIDE, GL_LIGHT0, GL_LIGHT1, GL_LIGHT2, GL_LIGHT3, GL_LIGHT4, GL_LIGHT5, GL_LIGHT6, GL_LIGHT7, GL_LIGHTING, GL_LIGHTING_BIT, GL_LINE, GL_LINE_BIT, GL_LINE_LOOP, GL_LINE_RESET_TOKEN, GL_LINE_SMOOTH, GL_LINE_SMOOTH_HINT, GL_LINE_STIPPLE, GL_LINE_STIPPLE_PATTERN, GL_LINE_STIPPLE_REPEAT, GL_LINE_STRIP, GL_LINE_TOKEN, GL_LINE_WIDTH, GL_LINE_WIDTH_GRANULARITY, GL_LINE_WIDTH_RANGE, GL_LINEAR, GL_LINEAR_ATTENUATION, GL_LINEAR_CLIPMAP_LINEAR_SGIX, GL_LINEAR_CLIPMAP_NEAREST_SGIX, GL_LINEAR_DETAIL_ALPHA_SGIS, GL_LINEAR_DETAIL_COLOR_SGIS, GL_LINEAR_DETAIL_SGIS, GL_LINEAR_MIPMAP_LINEAR, GL_LINEAR_MIPMAP_NEAREST, GL_LINEAR_SHARPEN_ALPHA_SGIS, GL_LINEAR_SHARPEN_COLOR_SGIS, GL_LINEAR_SHARPEN_SGIS, GL_LINES, GL_LIST_BASE, GL_LIST_BIT, GL_LIST_INDEX, GL_LIST_MODE, GL_LIST_PRIORITY_SGIX, GL_LO_BIAS_NV, GL_LO_SCALE_NV, GL_LOAD, GL_LOCAL_CONSTANT_DATATYPE_EXT, GL_LOCAL_CONSTANT_EXT, GL_LOCAL_CONSTANT_VALUE_EXT, GL_LOCAL_EXT, GL_LOGIC_OP, GL_LOGIC_OP_MODE, GL_LUMINANCE, GL_LUMINANCE_ALPHA, GL_LUMINANCE12, GL_LUMINANCE12_ALPHA12, GL_LUMINANCE12_ALPHA12_EXT, GL_LUMINANCE12_ALPHA4, GL_LUMINANCE12_ALPHA4_EXT, GL_LUMINANCE12_EXT, GL_LUMINANCE16, GL_LUMINANCE16_ALPHA16, GL_LUMINANCE16_ALPHA16_EXT, GL_LUMINANCE16_EXT, GL_LUMINANCE4, GL_LUMINANCE4_ALPHA4, GL_LUMINANCE4_ALPHA4_EXT, GL_LUMINANCE4_EXT, GL_LUMINANCE6_ALPHA2, GL_LUMINANCE6_ALPHA2_EXT, GL_LUMINANCE8, GL_LUMINANCE8_ALPHA8, GL_LUMINANCE8_ALPHA8_EXT, GL_LUMINANCE8_EXT, GL_MAD_ATI, GL_MAGNITUDE_BIAS_NV, GL_MAGNITUDE_SCALE_NV, GL_MAP_ATTRIB_U_ORDER_NV, GL_MAP_ATTRIB_V_ORDER_NV, GL_MAP_COLOR, GL_MAP_STENCIL, GL_MAP_TESSELLATION_NV, GL_MAP1_BINORMAL_EXT, GL_MAP1_COLOR_4, GL_MAP1_GRID_DOMAIN, GL_MAP1_GRID_SEGMENTS, GL_MAP1_INDEX, GL_MAP1_NORMAL, GL_MAP1_TANGENT_EXT, GL_MAP1_TEXTURE_COORD_1, GL_MAP1_TEXTURE_COORD_2, GL_MAP1_TEXTURE_COORD_3, GL_MAP1_TEXTURE_COORD_4, GL_MAP1_VERTEX_3, GL_MAP1_VERTEX_4, GL_MAP1_VERTEX_ATTRIB0_4_NV, GL_MAP1_VERTEX_ATTRIB1_4_NV, GL_MAP1_VERTEX_ATTRIB10_4_NV, GL_MAP1_VERTEX_ATTRIB11_4_NV, GL_MAP1_VERTEX_ATTRIB12_4_NV, GL_MAP1_VERTEX_ATTRIB13_4_NV, GL_MAP1_VERTEX_ATTRIB14_4_NV, GL_MAP1_VERTEX_ATTRIB15_4_NV, GL_MAP1_VERTEX_ATTRIB2_4_NV, GL_MAP1_VERTEX_ATTRIB3_4_NV, GL_MAP1_VERTEX_ATTRIB4_4_NV, GL_MAP1_VERTEX_ATTRIB5_4_NV, GL_MAP1_VERTEX_ATTRIB6_4_NV, GL_MAP1_VERTEX_ATTRIB7_4_NV, GL_MAP1_VERTEX_ATTRIB8_4_NV, GL_MAP1_VERTEX_ATTRIB9_4_NV, GL_MAP2_BINORMAL_EXT, GL_MAP2_COLOR_4, GL_MAP2_GRID_DOMAIN, GL_MAP2_GRID_SEGMENTS, GL_MAP2_INDEX, GL_MAP2_NORMAL, GL_MAP2_TANGENT_EXT, GL_MAP2_TEXTURE_COORD_1, GL_MAP2_TEXTURE_COORD_2, GL_MAP2_TEXTURE_COORD_3, GL_MAP2_TEXTURE_COORD_4, GL_MAP2_VERTEX_3, GL_MAP2_VERTEX_4, GL_MAP2_VERTEX_ATTRIB0_4_NV, GL_MAP2_VERTEX_ATTRIB1_4_NV, GL_MAP2_VERTEX_ATTRIB10_4_NV, GL_MAP2_VERTEX_ATTRIB11_4_NV, GL_MAP2_VERTEX_ATTRIB12_4_NV, GL_MAP2_VERTEX_ATTRIB13_4_NV, GL_MAP2_VERTEX_ATTRIB14_4_NV, GL_MAP2_VERTEX_ATTRIB15_4_NV, GL_MAP2_VERTEX_ATTRIB2_4_NV, GL_MAP2_VERTEX_ATTRIB3_4_NV, GL_MAP2_VERTEX_ATTRIB4_4_NV, GL_MAP2_VERTEX_ATTRIB5_4_NV, GL_MAP2_VERTEX_ATTRIB6_4_NV, GL_MAP2_VERTEX_ATTRIB7_4_NV, GL_MAP2_VERTEX_ATTRIB8_4_NV, GL_MAP2_VERTEX_ATTRIB9_4_NV, GL_MAT_AMBIENT_AND_DIFFUSE_BIT_PGI, GL_MAT_AMBIENT_BIT_PGI, GL_MAT_COLOR_INDEXES_BIT_PGI, GL_MAT_DIFFUSE_BIT_PGI, GL_MAT_EMISSION_BIT_PGI, GL_MAT_SHININESS_BIT_PGI, GL_MAT_SPECULAR_BIT_PGI, GL_MATERIAL_SIDE_HINT_PGI, GL_MATRIX_EXT, GL_MATRIX_INDEX_ARRAY_ARB, GL_MATRIX_INDEX_ARRAY_POINTER_ARB, GL_MATRIX_INDEX_ARRAY_SIZE_ARB, GL_MATRIX_INDEX_ARRAY_STRIDE_ARB, GL_MATRIX_INDEX_ARRAY_TYPE_ARB, GL_MATRIX_MODE, GL_MATRIX_PALETTE_ARB, GL_MATRIX0_ARB, GL_MATRIX0_NV, GL_MATRIX1_ARB, GL_MATRIX1_NV, GL_MATRIX10_ARB, GL_MATRIX11_ARB, GL_MATRIX12_ARB, GL_MATRIX13_ARB, GL_MATRIX14_ARB, GL_MATRIX15_ARB, GL_MATRIX16_ARB, GL_MATRIX17_ARB, GL_MATRIX18_ARB, GL_MATRIX19_ARB, GL_MATRIX2_ARB, GL_MATRIX2_NV, GL_MATRIX20_ARB, GL_MATRIX21_ARB, GL_MATRIX22_ARB, GL_MATRIX23_ARB, GL_MATRIX24_ARB, GL_MATRIX25_ARB, GL_MATRIX26_ARB, GL_MATRIX27_ARB, GL_MATRIX28_ARB, GL_MATRIX29_ARB, GL_MATRIX3_ARB, GL_MATRIX3_NV, GL_MATRIX30_ARB, GL_MATRIX31_ARB, GL_MATRIX4_ARB, GL_MATRIX4_NV, GL_MATRIX5_ARB, GL_MATRIX5_NV, GL_MATRIX6_ARB, GL_MATRIX6_NV, GL_MATRIX7_ARB, GL_MATRIX7_NV, GL_MATRIX8_ARB, GL_MATRIX9_ARB, GL_MAX, GL_MAX_3D_TEXTURE_SIZE, GL_MAX_3D_TEXTURE_SIZE_EXT, GL_MAX_4D_TEXTURE_SIZE_SGIS, GL_MAX_ACTIVE_LIGHTS_SGIX, GL_MAX_ASYNC_DRAW_PIXELS_SGIX, GL_MAX_ASYNC_HISTOGRAM_SGIX, GL_MAX_ASYNC_READ_PIXELS_SGIX, GL_MAX_ASYNC_TEX_IMAGE_SGIX, GL_MAX_ATTRIB_STACK_DEPTH, GL_MAX_CLIENT_ATTRIB_STACK_DEPTH, GL_MAX_CLIP_PLANES, GL_MAX_CLIPMAP_DEPTH_SGIX, GL_MAX_CLIPMAP_VIRTUAL_DEPTH_SGIX, GL_MAX_COLOR_MATRIX_STACK_DEPTH, GL_MAX_COLOR_MATRIX_STACK_DEPTH_SGI, GL_MAX_CONVOLUTION_HEIGHT, GL_MAX_CONVOLUTION_HEIGHT_EXT, GL_MAX_CONVOLUTION_WIDTH, GL_MAX_CONVOLUTION_WIDTH_EXT, GL_MAX_CUBE_MAP_TEXTURE_SIZE, GL_MAX_CUBE_MAP_TEXTURE_SIZE_ARB, GL_MAX_CUBE_MAP_TEXTURE_SIZE_EXT, GL_MAX_DEFORMATION_ORDER_SGIX, GL_MAX_ELEMENTS_INDICES, GL_MAX_ELEMENTS_INDICES_EXT, GL_MAX_ELEMENTS_VERTICES, GL_MAX_ELEMENTS_VERTICES_EXT, GL_MAX_EVAL_ORDER, GL_MAX_EXT, GL_MAX_FOG_FUNC_POINTS_SGIS, GL_MAX_FRAGMENT_LIGHTS_SGIX, GL_MAX_FRAMEZOOM_FACTOR_SGIX, GL_MAX_GENERAL_COMBINERS_NV, GL_MAX_LIGHTS, GL_MAX_LIST_NESTING, GL_MAX_MAP_TESSELLATION_NV, GL_MAX_MATRIX_PALETTE_STACK_DEPTH_ARB, GL_MAX_MODELVIEW_STACK_DEPTH, GL_MAX_NAME_STACK_DEPTH, GL_MAX_OPTIMIZED_VERTEX_SHADER_INARIANTS_EXT, GL_MAX_OPTIMIZED_VERTEX_SHADER_INSTRUCTIONS_EXT, GL_MAX_OPTIMIZED_VERTEX_SHADER_LOCAL_CONSTANTS_EXT, GL_MAX_OPTIMIZED_VERTEX_SHADER_LOCALS_EXT, GL_MAX_OPTIMIZED_VERTEX_SHADER_VARIANTS_EXT, GL_MAX_PALETTE_MATRICES_ARB, GL_MAX_PIXEL_MAP_TABLE, GL_MAX_PIXEL_TRANSFORM_2D_STACK_DEPTH_EXT, GL_MAX_PN_TRIANGLES_TESSELATION_LEVEL_ATI, GL_MAX_PROGRAM_ADDRESS_REGISTERS_ARB, GL_MAX_PROGRAM_ATTRIBS_ARB, GL_MAX_PROGRAM_ENV_PARAMETERS_ARB, GL_MAX_PROGRAM_INSTRUCTIONS_ARB, GL_MAX_PROGRAM_LOCAL_PARAMETERS_ARB, GL_MAX_PROGRAM_MATRICES_ARB, GL_MAX_PROGRAM_MATRIX_STACK_DEPTH_ARB, GL_MAX_PROGRAM_NATIVE_ADDRESS_REGISTERS_ARB, GL_MAX_PROGRAM_NATIVE_ATTRIBS_ARB, GL_MAX_PROGRAM_NATIVE_INSTRUCTIONS_ARB, GL_MAX_PROGRAM_NATIVE_PARAMETERS_ARB, GL_MAX_PROGRAM_NATIVE_TEMPORARIES_ARB, GL_MAX_PROGRAM_PARAMETERS_ARB, GL_MAX_PROGRAM_TEMPORARIES_ARB, GL_MAX_PROJECTION_STACK_DEPTH, GL_MAX_RATIONAL_EVAL_ORDER_NV, GL_MAX_RECTANGLE_TEXTURE_SIZE_NV, GL_MAX_SHININESS_NV, GL_MAX_SPOT_EXPONENT_NV, GL_MAX_TEXTURE_LOD_BIAS, GL_MAX_TEXTURE_LOD_BIAS_EXT, GL_MAX_TEXTURE_MAX_ANISOTROPY_EXT, GL_MAX_TEXTURE_SIZE, GL_MAX_TEXTURE_STACK_DEPTH, GL_MAX_TEXTURE_UNITS, GL_MAX_TEXTURE_UNITS_ARB, GL_MAX_TRACK_MATRICES_NV, GL_MAX_TRACK_MATRIX_STACK_DEPTH_NV, GL_MAX_VERTEX_ARRAY_RANGE_ELEMENT_NV, GL_MAX_VERTEX_ATTRIBS_ARB, GL_MAX_VERTEX_HINT_PGI, GL_MAX_VERTEX_SHADER_INSTRUCTIONS_EXT, GL_MAX_VERTEX_SHADER_INVARIANTS_EXT, GL_MAX_VERTEX_SHADER_LOCAL_CONSTANTS_EXT, GL_MAX_VERTEX_SHADER_LOCALS_EXT, GL_MAX_VERTEX_SHADER_VARIANTS_EXT, GL_MAX_VERTEX_STREAMS_ATI, GL_MAX_VERTEX_UNITS_ARB, GL_MAX_VIEWPORT_DIMS, GL_MESA_pack_invert, GL_MESA_packed_depth_stencil, GL_MESA_resize_buffers, GL_MESA_trace, GL_MESA_window_pos, GL_MESA_ycbcr_texture, GL_MIN, GL_MIN_EXT, GL_MINMAX, GL_MINMAX_EXT, GL_MINMAX_FORMAT, GL_MINMAX_FORMAT_EXT, GL_MINMAX_SINK, GL_MINMAX_SINK_EXT, GL_MIRROR_CLAMP_ATI, GL_MIRROR_CLAMP_TO_EDGE_ATI, GL_MIRRORED_REPEAT, GL_MIRRORED_REPEAT_ARB, GL_MIRRORED_REPEAT_IBM, GL_MODELVIEW, GL_MODELVIEW_MATRIX, GL_MODELVIEW_PROJECTION_NV, GL_MODELVIEW_STACK_DEPTH, GL_MODELVIEW0_ARB, GL_MODELVIEW0_EXT, GL_MODELVIEW0_MATRIX_EXT, GL_MODELVIEW0_STACK_DEPTH_EXT, GL_MODELVIEW1_ARB, GL_MODELVIEW1_EXT, GL_MODELVIEW1_MATRIX_EXT, GL_MODELVIEW1_STACK_DEPTH_EXT, GL_MODELVIEW10_ARB, GL_MODELVIEW11_ARB, GL_MODELVIEW12_ARB, GL_MODELVIEW13_ARB, GL_MODELVIEW14_ARB, GL_MODELVIEW15_ARB, GL_MODELVIEW16_ARB, GL_MODELVIEW17_ARB, GL_MODELVIEW18_ARB, GL_MODELVIEW19_ARB, GL_MODELVIEW2_ARB, GL_MODELVIEW20_ARB, GL_MODELVIEW21_ARB, GL_MODELVIEW22_ARB, GL_MODELVIEW23_ARB, GL_MODELVIEW24_ARB, GL_MODELVIEW25_ARB, GL_MODELVIEW26_ARB, GL_MODELVIEW27_ARB, GL_MODELVIEW28_ARB, GL_MODELVIEW29_ARB, GL_MODELVIEW3_ARB, GL_MODELVIEW30_ARB, GL_MODELVIEW31_ARB, GL_MODELVIEW4_ARB, GL_MODELVIEW5_ARB, GL_MODELVIEW6_ARB, GL_MODELVIEW7_ARB, GL_MODELVIEW8_ARB, GL_MODELVIEW9_ARB, GL_MODULATE, GL_MODULATE_ADD_ATI, GL_MODULATE_SIGNED_ADD_ATI, GL_MODULATE_SUBTRACT_ATI, GL_MOV_ATI, GL_MUL_ATI, GL_MULT, GL_MULTISAMPLE, GL_MULTISAMPLE_3DFX, GL_MULTISAMPLE_ARB, GL_MULTISAMPLE_BIT, GL_MULTISAMPLE_BIT_3DFX, GL_MULTISAMPLE_BIT_ARB, GL_MULTISAMPLE_BIT_EXT, GL_MULTISAMPLE_EXT, GL_MULTISAMPLE_FILTER_HINT_NV, GL_MULTISAMPLE_SGIS, GL_MVP_MATRIX_EXT, GL_N3F_V3F, GL_NAME_STACK_DEPTH, GL_NAND, GL_NATIVE_GRAPHICS_BEGIN_HINT_PGI, GL_NATIVE_GRAPHICS_END_HINT_PGI, GL_NATIVE_GRAPHICS_HANDLE_PGI, GL_NEAREST, GL_NEAREST_CLIPMAP_LINEAR_SGIX, GL_NEAREST_CLIPMAP_NEAREST_SGIX, GL_NEAREST_MIPMAP_LINEAR, GL_NEAREST_MIPMAP_NEAREST, GL_NEGATE_BIT_ATI, GL_NEGATIVE_ONE_EXT, GL_NEGATIVE_W_EXT, GL_NEGATIVE_X_EXT, GL_NEGATIVE_Y_EXT, GL_NEGATIVE_Z_EXT, GL_NEVER, GL_NICEST, GL_NO_ERROR, GL_NONE, GL_NOOP, GL_NOR, GL_NORMAL_ARRAY, GL_NORMAL_ARRAY_COUNT_EXT, GL_NORMAL_ARRAY_EXT, GL_NORMAL_ARRAY_LIST_IBM, GL_NORMAL_ARRAY_LIST_STRIDE_IBM, GL_NORMAL_ARRAY_PARALLEL_POINTERS_INTEL, GL_NORMAL_ARRAY_POINTER, GL_NORMAL_ARRAY_POINTER_EXT, GL_NORMAL_ARRAY_STRIDE, GL_NORMAL_ARRAY_STRIDE_EXT, GL_NORMAL_ARRAY_TYPE, GL_NORMAL_ARRAY_TYPE_EXT, GL_NORMAL_BIT_PGI, GL_NORMAL_MAP, GL_NORMAL_MAP_ARB, GL_NORMAL_MAP_EXT, GL_NORMAL_MAP_NV, GL_NORMALIZE, GL_NORMALIZED_RANGE_EXT, GL_NOTEQUAL, GL_NUM_COMPRESSED_TEXTURE_FORMATS, GL_NUM_COMPRESSED_TEXTURE_FORMATS_ARB, GL_NUM_FRAGMENT_CONSTANTS_ATI, GL_NUM_FRAGMENT_REGISTERS_ATI, GL_NUM_GENERAL_COMBINERS_NV, GL_NUM_INPUT_INTERPOLATOR_COMPONENTS_ATI, GL_NUM_INSTRUCTIONS_PER_PASS_ATI, GL_NUM_INSTRUCTIONS_TOTAL_ATI, GL_NUM_LOOPBACK_COMPONENTS_ATI, GL_NUM_PASSES_ATI, GL_NV_blend_square, GL_NV_copy_depth_to_color, GL_NV_depth_clamp, GL_NV_evaluators, GL_NV_fence, GL_NV_fog_distance, GL_NV_light_max_exponent, GL_NV_multisample_filter_hint, GL_NV_occlusion_query, GL_NV_packed_depth_stencil, GL_NV_point_sprite, GL_NV_register_combiners, GL_NV_register_combiners2, GL_NV_texgen_emboss, GL_NV_texgen_reflection, GL_NV_texture_compression_vtc, GL_NV_texture_env_combine4, GL_NV_texture_rectangle, GL_NV_texture_shader, GL_NV_texture_shader2, GL_NV_texture_shader3, GL_NV_vertex_array_range, GL_NV_vertex_array_range2, GL_NV_vertex_program, GL_NV_vertex_program1_1, GL_OBJECT_BUFFER_SIZE_ATI, GL_OBJECT_BUFFER_USAGE_ATI, GL_OBJECT_DISTANCE_TO_LINE_SGIS, GL_OBJECT_DISTANCE_TO_POINT_SGIS, GL_OBJECT_LINE_SGIS, GL_OBJECT_LINEAR, GL_OBJECT_PLANE, GL_OBJECT_POINT_SGIS, GL_OCCLUSION_TEST_HP, GL_OCCLUSION_TEST_RESULT_HP, GL_OFFSET_HILO_PROJECTIVE_TEXTURE_2D_NV, GL_OFFSET_HILO_PROJECTIVE_TEXTURE_RECTANGLE_NV, GL_OFFSET_HILO_TEXTURE_2D_NV, GL_OFFSET_HILO_TEXTURE_RECTANGLE_NV, GL_OFFSET_PROJECTIVE_TEXTURE_2D_NV, GL_OFFSET_PROJECTIVE_TEXTURE_2D_SCALE_NV, GL_OFFSET_PROJECTIVE_TEXTURE_RECTANGLE_NV, GL_OFFSET_PROJECTIVE_TEXTURE_RECTANGLE_SCALE_NV, GL_OFFSET_TEXTURE_2D_BIAS_NV, GL_OFFSET_TEXTURE_2D_MATRIX_NV, GL_OFFSET_TEXTURE_2D_NV, GL_OFFSET_TEXTURE_2D_SCALE_NV, GL_OFFSET_TEXTURE_BIAS_NV, GL_OFFSET_TEXTURE_MATRIX_NV, GL_OFFSET_TEXTURE_RECTANGLE_NV, GL_OFFSET_TEXTURE_RECTANGLE_SCALE_NV, GL_OFFSET_TEXTURE_SCALE_NV, GL_OML_interlace, GL_OML_resample, GL_OML_subsample, GL_ONE, GL_ONE_EXT, GL_ONE_MINUS_CONSTANT_ALPHA, GL_ONE_MINUS_CONSTANT_ALPHA_EXT, GL_ONE_MINUS_CONSTANT_COLOR, GL_ONE_MINUS_CONSTANT_COLOR_EXT, GL_ONE_MINUS_DST_ALPHA, GL_ONE_MINUS_DST_COLOR, GL_ONE_MINUS_SRC_ALPHA, GL_ONE_MINUS_SRC_COLOR, GL_OP_ADD_EXT, GL_OP_CLAMP_EXT, GL_OP_CROSS_PRODUCT_EXT, GL_OP_DOT3_EXT, GL_OP_DOT4_EXT, GL_OP_EXP_BASE_2_EXT, GL_OP_FLOOR_EXT, GL_OP_FRAC_EXT, GL_OP_INDEX_EXT, GL_OP_LOG_BASE_2_EXT, GL_OP_MADD_EXT, GL_OP_MAX_EXT, GL_OP_MIN_EXT, GL_OP_MOV_EXT, GL_OP_MUL_EXT, GL_OP_MULTIPLY_MATRIX_EXT, GL_OP_NEGATE_EXT, GL_OP_POWER_EXT, GL_OP_RECIP_EXT, GL_OP_RECIP_SQRT_EXT, GL_OP_ROUND_EXT, GL_OP_SET_GE_EXT, GL_OP_SET_LT_EXT, GL_OP_SUB_EXT, GL_OPERAND0_ALPHA, GL_OPERAND0_ALPHA_ARB, GL_OPERAND0_ALPHA_EXT, GL_OPERAND0_RGB, GL_OPERAND0_RGB_ARB, GL_OPERAND0_RGB_EXT, GL_OPERAND1_ALPHA, GL_OPERAND1_ALPHA_ARB, GL_OPERAND1_ALPHA_EXT, GL_OPERAND1_RGB, GL_OPERAND1_RGB_ARB, GL_OPERAND1_RGB_EXT, GL_OPERAND2_ALPHA, GL_OPERAND2_ALPHA_ARB, GL_OPERAND2_ALPHA_EXT, GL_OPERAND2_RGB, GL_OPERAND2_RGB_ARB, GL_OPERAND2_RGB_EXT, GL_OPERAND3_ALPHA_NV, GL_OPERAND3_RGB_NV, GL_OR, GL_OR_INVERTED, GL_OR_REVERSE, GL_ORDER, GL_OUT_OF_MEMORY, GL_OUTPUT_COLOR0_EXT, GL_OUTPUT_COLOR1_EXT, GL_OUTPUT_FOG_EXT, GL_OUTPUT_TEXTURE_COORD0_EXT, GL_OUTPUT_TEXTURE_COORD1_EXT, GL_OUTPUT_TEXTURE_COORD10_EXT, GL_OUTPUT_TEXTURE_COORD11_EXT, GL_OUTPUT_TEXTURE_COORD12_EXT, GL_OUTPUT_TEXTURE_COORD13_EXT, GL_OUTPUT_TEXTURE_COORD14_EXT, GL_OUTPUT_TEXTURE_COORD15_EXT, GL_OUTPUT_TEXTURE_COORD16_EXT, GL_OUTPUT_TEXTURE_COORD17_EXT, GL_OUTPUT_TEXTURE_COORD18_EXT, GL_OUTPUT_TEXTURE_COORD19_EXT, GL_OUTPUT_TEXTURE_COORD2_EXT, GL_OUTPUT_TEXTURE_COORD20_EXT, GL_OUTPUT_TEXTURE_COORD21_EXT, GL_OUTPUT_TEXTURE_COORD22_EXT, GL_OUTPUT_TEXTURE_COORD23_EXT, GL_OUTPUT_TEXTURE_COORD24_EXT, GL_OUTPUT_TEXTURE_COORD25_EXT, GL_OUTPUT_TEXTURE_COORD26_EXT, GL_OUTPUT_TEXTURE_COORD27_EXT, GL_OUTPUT_TEXTURE_COORD28_EXT, GL_OUTPUT_TEXTURE_COORD29_EXT, GL_OUTPUT_TEXTURE_COORD3_EXT, GL_OUTPUT_TEXTURE_COORD30_EXT, GL_OUTPUT_TEXTURE_COORD31_EXT, GL_OUTPUT_TEXTURE_COORD4_EXT, GL_OUTPUT_TEXTURE_COORD5_EXT, GL_OUTPUT_TEXTURE_COORD6_EXT, GL_OUTPUT_TEXTURE_COORD7_EXT, GL_OUTPUT_TEXTURE_COORD8_EXT, GL_OUTPUT_TEXTURE_COORD9_EXT, GL_OUTPUT_VERTEX_EXT, GL_PACK_ALIGNMENT, GL_PACK_CMYK_HINT_EXT, GL_PACK_IMAGE_DEPTH_SGIS, GL_PACK_IMAGE_HEIGHT, GL_PACK_IMAGE_HEIGHT_EXT, GL_PACK_INVERT_MESA, GL_PACK_LSB_FIRST, GL_PACK_RESAMPLE_OML, GL_PACK_RESAMPLE_SGIX, GL_PACK_ROW_LENGTH, GL_PACK_SKIP_IMAGES, GL_PACK_SKIP_IMAGES_EXT, GL_PACK_SKIP_PIXELS, GL_PACK_SKIP_ROWS, GL_PACK_SKIP_VOLUMES_SGIS, GL_PACK_SUBSAMPLE_RATE_SGIX, GL_PACK_SWAP_BYTES, GL_PARALLEL_ARRAYS_INTEL, GL_PASS_THROUGH_NV, GL_PASS_THROUGH_TOKEN, GL_PER_STAGE_CONSTANTS_NV, GL_PERSPECTIVE_CORRECTION_HINT, GL_PERTURB_EXT, GL_PGI_misc_hints, GL_PGI_vertex_hints, GL_PHONG_HINT_WIN, GL_PHONG_WIN, GL_PIXEL_COUNT_AVAILABLE_NV, GL_PIXEL_COUNT_NV, GL_PIXEL_COUNTER_BITS_NV, GL_PIXEL_CUBIC_WEIGHT_EXT, GL_PIXEL_FRAGMENT_ALPHA_SOURCE_SGIS, GL_PIXEL_FRAGMENT_RGB_SOURCE_SGIS, GL_PIXEL_GROUP_COLOR_SGIS, GL_PIXEL_MAG_FILTER_EXT, GL_PIXEL_MAP_A_TO_A, GL_PIXEL_MAP_A_TO_A_SIZE, GL_PIXEL_MAP_B_TO_B, GL_PIXEL_MAP_B_TO_B_SIZE, GL_PIXEL_MAP_G_TO_G, GL_PIXEL_MAP_G_TO_G_SIZE, GL_PIXEL_MAP_I_TO_A, GL_PIXEL_MAP_I_TO_A_SIZE, GL_PIXEL_MAP_I_TO_B, GL_PIXEL_MAP_I_TO_B_SIZE, GL_PIXEL_MAP_I_TO_G, GL_PIXEL_MAP_I_TO_G_SIZE, GL_PIXEL_MAP_I_TO_I, GL_PIXEL_MAP_I_TO_I_SIZE, GL_PIXEL_MAP_I_TO_R, GL_PIXEL_MAP_I_TO_R_SIZE, GL_PIXEL_MAP_R_TO_R, GL_PIXEL_MAP_R_TO_R_SIZE, GL_PIXEL_MAP_S_TO_S, GL_PIXEL_MAP_S_TO_S_SIZE, GL_PIXEL_MIN_FILTER_EXT, GL_PIXEL_MODE_BIT, GL_PIXEL_SUBSAMPLE_2424_SGIX, GL_PIXEL_SUBSAMPLE_4242_SGIX, GL_PIXEL_SUBSAMPLE_4444_SGIX, GL_PIXEL_TEX_GEN_ALPHA_LS_SGIX, GL_PIXEL_TEX_GEN_ALPHA_MS_SGIX, GL_PIXEL_TEX_GEN_ALPHA_NO_REPLACE_SGIX, GL_PIXEL_TEX_GEN_ALPHA_REPLACE_SGIX, GL_PIXEL_TEX_GEN_MODE_SGIX, GL_PIXEL_TEX_GEN_Q_CEILING_SGIX, GL_PIXEL_TEX_GEN_Q_FLOOR_SGIX, GL_PIXEL_TEX_GEN_Q_ROUND_SGIX, GL_PIXEL_TEX_GEN_SGIX, GL_PIXEL_TEXTURE_SGIS, GL_PIXEL_TILE_BEST_ALIGNMENT_SGIX, GL_PIXEL_TILE_CACHE_INCREMENT_SGIX, GL_PIXEL_TILE_CACHE_SIZE_SGIX, GL_PIXEL_TILE_GRID_DEPTH_SGIX, GL_PIXEL_TILE_GRID_HEIGHT_SGIX, GL_PIXEL_TILE_GRID_WIDTH_SGIX, GL_PIXEL_TILE_HEIGHT_SGIX, GL_PIXEL_TILE_WIDTH_SGIX, GL_PIXEL_TRANSFORM_2D_EXT, GL_PIXEL_TRANSFORM_2D_MATRIX_EXT, GL_PIXEL_TRANSFORM_2D_STACK_DEPTH_EXT, GL_PN_TRIANGLES_ATI, GL_PN_TRIANGLES_NORMAL_MODE_ATI, GL_PN_TRIANGLES_NORMAL_MODE_LINEAR_ATI, GL_PN_TRIANGLES_NORMAL_MODE_QUADRATIC_ATI, GL_PN_TRIANGLES_POINT_MODE_ATI, GL_PN_TRIANGLES_POINT_MODE_CUBIC_ATI, GL_PN_TRIANGLES_POINT_MODE_LINEAR_ATI, GL_PN_TRIANGLES_TESSELATION_LEVEL_ATI, GL_POINT, GL_POINT_BIT, GL_POINT_DISTANCE_ATTENUATION, GL_POINT_DISTANCE_ATTENUATION_ARB, GL_POINT_FADE_THRESHOLD_SIZE, GL_POINT_FADE_THRESHOLD_SIZE_ARB, GL_POINT_FADE_THRESHOLD_SIZE_EXT, GL_POINT_FADE_THRESHOLD_SIZE_SGIS, GL_POINT_SIZE, GL_POINT_SIZE_GRANULARITY, GL_POINT_SIZE_MAX, GL_POINT_SIZE_MAX_ARB, GL_POINT_SIZE_MAX_EXT, GL_POINT_SIZE_MAX_SGIS, GL_POINT_SIZE_MIN, GL_POINT_SIZE_MIN_ARB, GL_POINT_SIZE_MIN_EXT, GL_POINT_SIZE_MIN_SGIS, GL_POINT_SIZE_RANGE, GL_POINT_SMOOTH, GL_POINT_SMOOTH_HINT, GL_POINT_SPRITE_NV, GL_POINT_SPRITE_R_MODE_NV, GL_POINT_TOKEN, GL_POINTS, GL_POLYGON, GL_POLYGON_BIT, GL_POLYGON_MODE, GL_POLYGON_OFFSET_BIAS_EXT, GL_POLYGON_OFFSET_EXT, GL_POLYGON_OFFSET_FACTOR, GL_POLYGON_OFFSET_FACTOR_EXT, GL_POLYGON_OFFSET_FILL, GL_POLYGON_OFFSET_LINE, GL_POLYGON_OFFSET_POINT, GL_POLYGON_OFFSET_UNITS, GL_POLYGON_SMOOTH, GL_POLYGON_SMOOTH_HINT, GL_POLYGON_STIPPLE, GL_POLYGON_STIPPLE_BIT, GL_POLYGON_TOKEN, GL_POSITION, GL_POST_COLOR_MATRIX_ALPHA_BIAS, GL_POST_COLOR_MATRIX_ALPHA_BIAS_SGI, GL_POST_COLOR_MATRIX_ALPHA_SCALE, GL_POST_COLOR_MATRIX_ALPHA_SCALE_SGI, GL_POST_COLOR_MATRIX_BLUE_BIAS, GL_POST_COLOR_MATRIX_BLUE_BIAS_SGI, GL_POST_COLOR_MATRIX_BLUE_SCALE, GL_POST_COLOR_MATRIX_BLUE_SCALE_SGI, GL_POST_COLOR_MATRIX_COLOR_TABLE, GL_POST_COLOR_MATRIX_COLOR_TABLE_SGI, GL_POST_COLOR_MATRIX_GREEN_BIAS, GL_POST_COLOR_MATRIX_GREEN_BIAS_SGI, GL_POST_COLOR_MATRIX_GREEN_SCALE, GL_POST_COLOR_MATRIX_GREEN_SCALE_SGI, GL_POST_COLOR_MATRIX_RED_BIAS, GL_POST_COLOR_MATRIX_RED_BIAS_SGI, GL_POST_COLOR_MATRIX_RED_SCALE, GL_POST_COLOR_MATRIX_RED_SCALE_SGI, GL_POST_CONVOLUTION_ALPHA_BIAS, GL_POST_CONVOLUTION_ALPHA_BIAS_EXT, GL_POST_CONVOLUTION_ALPHA_SCALE, GL_POST_CONVOLUTION_ALPHA_SCALE_EXT, GL_POST_CONVOLUTION_BLUE_BIAS, GL_POST_CONVOLUTION_BLUE_BIAS_EXT, GL_POST_CONVOLUTION_BLUE_SCALE, GL_POST_CONVOLUTION_BLUE_SCALE_EXT, GL_POST_CONVOLUTION_COLOR_TABLE, GL_POST_CONVOLUTION_COLOR_TABLE_SGI, GL_POST_CONVOLUTION_GREEN_BIAS, GL_POST_CONVOLUTION_GREEN_BIAS_EXT, GL_POST_CONVOLUTION_GREEN_SCALE, GL_POST_CONVOLUTION_GREEN_SCALE_EXT, GL_POST_CONVOLUTION_RED_BIAS, GL_POST_CONVOLUTION_RED_BIAS_EXT, GL_POST_CONVOLUTION_RED_SCALE, GL_POST_CONVOLUTION_RED_SCALE_EXT, GL_POST_IMAGE_TRANSFORM_COLOR_TABLE_HP, GL_POST_TEXTURE_FILTER_BIAS_RANGE_SGIX, GL_POST_TEXTURE_FILTER_BIAS_SGIX, GL_POST_TEXTURE_FILTER_SCALE_RANGE_SGIX, GL_POST_TEXTURE_FILTER_SCALE_SGIX, GL_PREFER_DOUBLEBUFFER_HINT_PGI, GL_PRESERVE_ATI, GL_PREVIOUS, GL_PREVIOUS_ARB, GL_PREVIOUS_EXT, GL_PREVIOUS_TEXTURE_INPUT_NV, GL_PRIMARY_COLOR, GL_PRIMARY_COLOR_ARB, GL_PRIMARY_COLOR_EXT, GL_PRIMARY_COLOR_NV, GL_PROGRAM_ADDRESS_REGISTERS_ARB, GL_PROGRAM_ATTRIBS_ARB, GL_PROGRAM_BINDING_ARB, GL_PROGRAM_ERROR_POSITION_ARB, GL_PROGRAM_ERROR_POSITION_NV, GL_PROGRAM_ERROR_STRING_ARB, GL_PROGRAM_FORMAT_ARB, GL_PROGRAM_FORMAT_ASCII_ARB, GL_PROGRAM_INSTRUCTIONS_ARB, GL_PROGRAM_LENGTH_ARB, GL_PROGRAM_LENGTH_NV, GL_PROGRAM_NATIVE_ADDRESS_REGISTERS_ARB, GL_PROGRAM_NATIVE_ATTRIBS_ARB, GL_PROGRAM_NATIVE_INSTRUCTIONS_ARB, GL_PROGRAM_NATIVE_PARAMETERS_ARB, GL_PROGRAM_NATIVE_TEMPORARIES_ARB, GL_PROGRAM_PARAMETER_NV, GL_PROGRAM_PARAMETERS_ARB, GL_PROGRAM_RESIDENT_NV, GL_PROGRAM_STRING_ARB, GL_PROGRAM_STRING_NV, GL_PROGRAM_TARGET_NV, GL_PROGRAM_TEMPORARIES_ARB, GL_PROGRAM_UNDER_NATIVE_LIMITS_ARB, GL_PROJECTION, GL_PROJECTION_MATRIX, GL_PROJECTION_STACK_DEPTH, GL_PROXY_COLOR_TABLE, GL_PROXY_COLOR_TABLE_SGI, GL_PROXY_HISTOGRAM, GL_PROXY_HISTOGRAM_EXT, GL_PROXY_POST_COLOR_MATRIX_COLOR_TABLE, GL_PROXY_POST_COLOR_MATRIX_COLOR_TABLE_SGI, GL_PROXY_POST_CONVOLUTION_COLOR_TABLE, GL_PROXY_POST_CONVOLUTION_COLOR_TABLE_SGI, GL_PROXY_POST_IMAGE_TRANSFORM_COLOR_TABLE_HP, GL_PROXY_TEXTURE_1D, GL_PROXY_TEXTURE_1D_EXT, GL_PROXY_TEXTURE_2D, GL_PROXY_TEXTURE_2D_EXT, GL_PROXY_TEXTURE_3D, GL_PROXY_TEXTURE_3D_EXT, GL_PROXY_TEXTURE_4D_SGIS, GL_PROXY_TEXTURE_COLOR_TABLE_SGI, GL_PROXY_TEXTURE_CUBE_MAP, GL_PROXY_TEXTURE_CUBE_MAP_ARB, GL_PROXY_TEXTURE_CUBE_MAP_EXT, GL_PROXY_TEXTURE_RECTANGLE_NV, GL_Q, GL_QUAD_ALPHA4_SGIS, GL_QUAD_ALPHA8_SGIS, GL_QUAD_INTENSITY4_SGIS, GL_QUAD_INTENSITY8_SGIS, GL_QUAD_LUMINANCE4_SGIS, GL_QUAD_LUMINANCE8_SGIS, GL_QUAD_MESH_SUN, GL_QUAD_STRIP, GL_QUAD_TEXTURE_SELECT_SGIS, GL_QUADRATIC_ATTENUATION, GL_QUADS, GL_QUARTER_BIT_ATI, GL_R, GL_R1UI_C3F_V3F_SUN, GL_R1UI_C4F_N3F_V3F_SUN, GL_R1UI_C4UB_V3F_SUN, GL_R1UI_N3F_V3F_SUN, GL_R1UI_T2F_C4F_N3F_V3F_SUN, GL_R1UI_T2F_N3F_V3F_SUN, GL_R1UI_T2F_V3F_SUN, GL_R1UI_V3F_SUN, GL_R3_G3_B2, GL_RASTER_POSITION_UNCLIPPED_IBM, GL_READ_BUFFER, GL_RECLAIM_MEMORY_HINT_PGI, GL_RED, GL_RED_BIAS, GL_RED_BIT_ATI, GL_RED_BITS, GL_RED_MAX_CLAMP_INGR, GL_RED_MIN_CLAMP_INGR, GL_RED_SCALE, GL_REDUCE, GL_REDUCE_EXT, GL_REFERENCE_PLANE_EQUATION_SGIX, GL_REFERENCE_PLANE_SGIX, GL_REFLECTION_MAP, GL_REFLECTION_MAP_ARB, GL_REFLECTION_MAP_EXT, GL_REFLECTION_MAP_NV, GL_REG_0_ATI, GL_REG_1_ATI, GL_REG_10_ATI, GL_REG_11_ATI, GL_REG_12_ATI, GL_REG_13_ATI, GL_REG_14_ATI, GL_REG_15_ATI, GL_REG_16_ATI, GL_REG_17_ATI, GL_REG_18_ATI, GL_REG_19_ATI, GL_REG_2_ATI, GL_REG_20_ATI, GL_REG_21_ATI, GL_REG_22_ATI, GL_REG_23_ATI, GL_REG_24_ATI, GL_REG_25_ATI, GL_REG_26_ATI, GL_REG_27_ATI, GL_REG_28_ATI, GL_REG_29_ATI, GL_REG_3_ATI, GL_REG_30_ATI, GL_REG_31_ATI, GL_REG_4_ATI, GL_REG_5_ATI, GL_REG_6_ATI, GL_REG_7_ATI, GL_REG_8_ATI, GL_REG_9_ATI, GL_REGISTER_COMBINERS_NV, GL_REND_screen_coordinates, GL_RENDER, GL_RENDER_MODE, GL_RENDERER, GL_REPEAT, GL_REPLACE, GL_REPLACE_EXT, GL_REPLACE_MIDDLE_SUN, GL_REPLACE_OLDEST_SUN, GL_REPLACEMENT_CODE_ARRAY_POINTER_SUN, GL_REPLACEMENT_CODE_ARRAY_STRIDE_SUN, GL_REPLACEMENT_CODE_ARRAY_SUN, GL_REPLACEMENT_CODE_ARRAY_TYPE_SUN, GL_REPLACEMENT_CODE_SUN, GL_REPLICATE_BORDER, GL_REPLICATE_BORDER_HP, GL_RESAMPLE_AVERAGE_OML, GL_RESAMPLE_DECIMATE_OML, GL_RESAMPLE_DECIMATE_SGIX, GL_RESAMPLE_REPLICATE_OML, GL_RESAMPLE_REPLICATE_SGIX, GL_RESAMPLE_ZERO_FILL_OML, GL_RESAMPLE_ZERO_FILL_SGIX, GL_RESCALE_NORMAL, GL_RESCALE_NORMAL_EXT, GL_RESTART_SUN, GL_RETURN, GL_RGB, GL_RGB_SCALE, GL_RGB_SCALE_ARB, GL_RGB_SCALE_EXT, GL_RGB10, GL_RGB10_A2, GL_RGB10_A2_EXT, GL_RGB10_EXT, GL_RGB12, GL_RGB12_EXT, GL_RGB16, GL_RGB16_EXT, GL_RGB2_EXT, GL_RGB4, GL_RGB4_EXT, GL_RGB5, GL_RGB5_A1, GL_RGB5_A1_EXT, GL_RGB5_EXT, GL_RGB8, GL_RGB8_EXT, GL_RGBA, GL_RGBA_MODE, GL_RGBA_UNSIGNED_DOT_PRODUCT_MAPPING_NV, GL_RGBA12, GL_RGBA12_EXT, GL_RGBA16, GL_RGBA16_EXT, GL_RGBA2, GL_RGBA2_EXT, GL_RGBA4, GL_RGBA4_EXT, GL_RGBA8, GL_RGBA8_EXT, GL_RIGHT, GL_S, GL_SAMPLE_ALPHA_TO_COVERAGE, GL_SAMPLE_ALPHA_TO_COVERAGE_ARB, GL_SAMPLE_ALPHA_TO_MASK_EXT, GL_SAMPLE_ALPHA_TO_MASK_SGIS, GL_SAMPLE_ALPHA_TO_ONE, GL_SAMPLE_ALPHA_TO_ONE_ARB, GL_SAMPLE_ALPHA_TO_ONE_EXT, GL_SAMPLE_ALPHA_TO_ONE_SGIS, GL_SAMPLE_BUFFERS, GL_SAMPLE_BUFFERS_3DFX, GL_SAMPLE_BUFFERS_ARB, GL_SAMPLE_BUFFERS_EXT, GL_SAMPLE_BUFFERS_SGIS, GL_SAMPLE_COVERAGE, GL_SAMPLE_COVERAGE_ARB, GL_SAMPLE_COVERAGE_INVERT, GL_SAMPLE_COVERAGE_INVERT_ARB, GL_SAMPLE_COVERAGE_VALUE, GL_SAMPLE_COVERAGE_VALUE_ARB, GL_SAMPLE_MASK_EXT, GL_SAMPLE_MASK_INVERT_EXT, GL_SAMPLE_MASK_INVERT_SGIS, GL_SAMPLE_MASK_SGIS, GL_SAMPLE_MASK_VALUE_EXT, GL_SAMPLE_MASK_VALUE_SGIS, GL_SAMPLE_PATTERN_EXT, GL_SAMPLE_PATTERN_SGIS, GL_SAMPLES, GL_SAMPLES_3DFX, GL_SAMPLES_ARB, GL_SAMPLES_EXT, GL_SAMPLES_SGIS, GL_SATURATE_BIT_ATI, GL_SCALAR_EXT, GL_SCALE_BY_FOUR_NV, GL_SCALE_BY_ONE_HALF_NV, GL_SCALE_BY_TWO_NV, GL_SCALEBIAS_HINT_SGIX, GL_SCISSOR_BIT, GL_SCISSOR_BOX, GL_SCISSOR_TEST, GL_SCREEN_COORDINATES_REND, GL_SECONDARY_COLOR_ARRAY, GL_SECONDARY_COLOR_ARRAY_EXT, GL_SECONDARY_COLOR_ARRAY_LIST_IBM, GL_SECONDARY_COLOR_ARRAY_LIST_STRIDE_IBM, GL_SECONDARY_COLOR_ARRAY_POINTER, GL_SECONDARY_COLOR_ARRAY_POINTER_EXT, GL_SECONDARY_COLOR_ARRAY_SIZE, GL_SECONDARY_COLOR_ARRAY_SIZE_EXT, GL_SECONDARY_COLOR_ARRAY_STRIDE, GL_SECONDARY_COLOR_ARRAY_STRIDE_EXT, GL_SECONDARY_COLOR_ARRAY_TYPE, GL_SECONDARY_COLOR_ARRAY_TYPE_EXT, GL_SECONDARY_COLOR_NV, GL_SECONDARY_INTERPOLATOR_ATI, GL_SELECT, GL_SELECTION_BUFFER_POINTER, GL_SELECTION_BUFFER_SIZE, GL_SEPARABLE_2D, GL_SEPARABLE_2D_EXT, GL_SEPARATE_SPECULAR_COLOR, GL_SEPARATE_SPECULAR_COLOR_EXT, GL_SET, GL_SGI_color_table, GL_SGI_texture_color_table, GL_SGIS_detail_texture, GL_SGIS_fog_function, GL_SGIS_generate_mipmap, GL_SGIS_multisample, GL_SGIS_pixel_texture, GL_SGIS_point_line_texgen, GL_SGIS_point_parameters, GL_SGIS_sharpen_texture, GL_SGIS_texture_border_clamp, GL_SGIS_texture_color_mask, GL_SGIS_texture_edge_clamp, GL_SGIS_texture_filter4, GL_SGIS_texture_lod, GL_SGIS_texture4D, GL_SGIX_async, GL_SGIX_async_histogram, GL_SGIX_async_pixel, GL_SGIX_blend_alpha_minmax, GL_SGIX_calligraphic_fragment, GL_SGIX_clipmap, GL_SGIX_convolution_accuracy, GL_SGIX_depth_pass_instrument, GL_SGIX_depth_texture, GL_SGIX_flush_raster, GL_SGIX_fog_offset, GL_SGIX_fog_scale, GL_SGIX_fragment_lighting, GL_SGIX_framezoom, GL_SGIX_igloo_interface, GL_SGIX_instruments, GL_SGIX_interlace, GL_SGIX_ir_instrument1, GL_SGIX_list_priority, GL_SGIX_pixel_texture, GL_SGIX_pixel_tiles, GL_SGIX_polynomial_ffd, GL_SGIX_reference_plane, GL_SGIX_resample, GL_SGIX_scalebias_hint, GL_SGIX_shadow, GL_SGIX_shadow_ambient, GL_SGIX_sprite, GL_SGIX_subsample, GL_SGIX_tag_sample_buffer, GL_SGIX_texture_add_env, GL_SGIX_texture_coordinate_clamp, GL_SGIX_texture_lod_bias, GL_SGIX_texture_multi_buffer, GL_SGIX_texture_scale_bias, GL_SGIX_texture_select, GL_SGIX_vertex_preclip, GL_SGIX_ycrcb, GL_SGIX_ycrcb_subsample, GL_SGIX_ycrcba, GL_SHADE_MODEL, GL_SHADER_CONSISTENT_NV, GL_SHADER_OPERATION_NV, GL_SHADOW_AMBIENT_SGIX, GL_SHADOW_ATTENUATION_EXT, GL_SHARED_TEXTURE_PALETTE_EXT, GL_SHARPEN_TEXTURE_FUNC_POINTS_SGIS, GL_SHININESS, GL_SHORT, GL_SIGNED_ALPHA_NV, GL_SIGNED_ALPHA8_NV, GL_SIGNED_HILO_NV, GL_SIGNED_HILO16_NV, GL_SIGNED_HILO8_NV, GL_SIGNED_IDENTITY_NV, GL_SIGNED_INTENSITY_NV, GL_SIGNED_INTENSITY8_NV, GL_SIGNED_LUMINANCE_ALPHA_NV, GL_SIGNED_LUMINANCE_NV, GL_SIGNED_LUMINANCE8_ALPHA8_NV, GL_SIGNED_LUMINANCE8_NV, GL_SIGNED_NEGATE_NV, GL_SIGNED_RGB_NV, GL_SIGNED_RGB_UNSIGNED_ALPHA_NV, GL_SIGNED_RGB8_NV, GL_SIGNED_RGB8_UNSIGNED_ALPHA8_NV, GL_SIGNED_RGBA_NV, GL_SIGNED_RGBA8_NV, GL_SINGLE_COLOR, GL_SINGLE_COLOR_EXT, GL_SLICE_ACCUM_SUN, GL_SMOOTH, GL_SMOOTH_LINE_WIDTH_GRANULARITY, GL_SMOOTH_LINE_WIDTH_RANGE, GL_SMOOTH_POINT_SIZE_GRANULARITY, GL_SMOOTH_POINT_SIZE_RANGE, GL_SOURCE0_ALPHA, GL_SOURCE0_ALPHA_ARB, GL_SOURCE0_ALPHA_EXT, GL_SOURCE0_RGB, GL_SOURCE0_RGB_ARB, GL_SOURCE0_RGB_EXT, GL_SOURCE1_ALPHA, GL_SOURCE1_ALPHA_ARB, GL_SOURCE1_ALPHA_EXT, GL_SOURCE1_RGB, GL_SOURCE1_RGB_ARB, GL_SOURCE1_RGB_EXT, GL_SOURCE2_ALPHA, GL_SOURCE2_ALPHA_ARB, GL_SOURCE2_ALPHA_EXT, GL_SOURCE2_RGB, GL_SOURCE2_RGB_ARB, GL_SOURCE2_RGB_EXT, GL_SOURCE3_ALPHA_NV, GL_SOURCE3_RGB_NV, GL_SPARE0_NV, GL_SPARE0_PLUS_SECONDARY_COLOR_NV, GL_SPARE1_NV, GL_SPECULAR, GL_SPHERE_MAP, GL_SPOT_CUTOFF, GL_SPOT_DIRECTION, GL_SPOT_EXPONENT, GL_SPRITE_AXIAL_SGIX, GL_SPRITE_AXIS_SGIX, GL_SPRITE_EYE_ALIGNED_SGIX, GL_SPRITE_MODE_SGIX, GL_SPRITE_OBJECT_ALIGNED_SGIX, GL_SPRITE_SGIX, GL_SPRITE_TRANSLATION_SGIX, GL_SRC_ALPHA, GL_SRC_ALPHA_SATURATE, GL_SRC_COLOR, GL_STACK_OVERFLOW, GL_STACK_UNDERFLOW, GL_STATIC_ATI, GL_STENCIL, GL_STENCIL_BITS, GL_STENCIL_BUFFER_BIT, GL_STENCIL_CLEAR_VALUE, GL_STENCIL_FAIL, GL_STENCIL_FUNC, GL_STENCIL_INDEX, GL_STENCIL_PASS_DEPTH_FAIL, GL_STENCIL_PASS_DEPTH_PASS, GL_STENCIL_REF, GL_STENCIL_TEST, GL_STENCIL_TEST_TWO_SIDE_EXT, GL_STENCIL_VALUE_MASK, GL_STENCIL_WRITEMASK, GL_STEREO, GL_STRICT_DEPTHFUNC_HINT_PGI, GL_STRICT_LIGHTING_HINT_PGI, GL_STRICT_SCISSOR_HINT_PGI, GL_SUB_ATI, GL_SUBPIXEL_BITS, GL_SUBTRACT, GL_SUBTRACT_ARB, GL_SUN_convolution_border_modes, GL_SUN_global_alpha, GL_SUN_mesh_array, GL_SUN_slice_accum, GL_SUN_triangle_list, GL_SUN_vertex, GL_SUNX_constant_data, GL_SWIZZLE_STQ_ATI, GL_SWIZZLE_STQ_DQ_ATI, GL_SWIZZLE_STR_ATI, GL_SWIZZLE_STR_DR_ATI, GL_SWIZZLE_STRQ_ATI, GL_SWIZZLE_STRQ_DQ_ATI, GL_T, GL_T2F_C3F_V3F, GL_T2F_C4F_N3F_V3F, GL_T2F_C4UB_V3F, GL_T2F_IUI_N3F_V2F_EXT, GL_T2F_IUI_N3F_V3F_EXT, GL_T2F_IUI_V2F_EXT, GL_T2F_IUI_V3F_EXT, GL_T2F_N3F_V3F, GL_T2F_V3F, GL_T4F_C4F_N3F_V4F, GL_T4F_V4F, GL_TABLE_TOO_LARGE, GL_TABLE_TOO_LARGE_EXT, GL_TANGENT_ARRAY_EXT, GL_TANGENT_ARRAY_POINTER_EXT, GL_TANGENT_ARRAY_STRIDE_EXT, GL_TANGENT_ARRAY_TYPE_EXT, GL_TEXCOORD1_BIT_PGI, GL_TEXCOORD2_BIT_PGI, GL_TEXCOORD3_BIT_PGI, GL_TEXCOORD4_BIT_PGI, GL_TEXTURE, GL_TEXTURE_1D, GL_TEXTURE_1D_BINDING_EXT, GL_TEXTURE_2D, GL_TEXTURE_2D_BINDING_EXT, GL_TEXTURE_3D, GL_TEXTURE_3D_BINDING_EXT, GL_TEXTURE_3D_EXT, GL_TEXTURE_4D_BINDING_SGIS, GL_TEXTURE_4D_SGIS, GL_TEXTURE_4DSIZE_SGIS, GL_TEXTURE_ALPHA_SIZE, GL_TEXTURE_ALPHA_SIZE_EXT, GL_TEXTURE_APPLICATION_MODE_EXT, GL_TEXTURE_BASE_LEVEL, GL_TEXTURE_BASE_LEVEL_SGIS, GL_TEXTURE_BINDING_1D, GL_TEXTURE_BINDING_2D, GL_TEXTURE_BINDING_3D, GL_TEXTURE_BINDING_CUBE_MAP, GL_TEXTURE_BINDING_CUBE_MAP_ARB, GL_TEXTURE_BINDING_CUBE_MAP_EXT, GL_TEXTURE_BINDING_RECTANGLE_NV, GL_TEXTURE_BIT, GL_TEXTURE_BLUE_SIZE, GL_TEXTURE_BLUE_SIZE_EXT, GL_TEXTURE_BORDER, GL_TEXTURE_BORDER_COLOR, GL_TEXTURE_BORDER_VALUES_NV, GL_TEXTURE_CLIPMAP_CENTER_SGIX, GL_TEXTURE_CLIPMAP_DEPTH_SGIX, GL_TEXTURE_CLIPMAP_FRAME_SGIX, GL_TEXTURE_CLIPMAP_LOD_OFFSET_SGIX, GL_TEXTURE_CLIPMAP_OFFSET_SGIX, GL_TEXTURE_CLIPMAP_VIRTUAL_DEPTH_SGIX, GL_TEXTURE_COLOR_TABLE_SGI, GL_TEXTURE_COLOR_WRITEMASK_SGIS, GL_TEXTURE_COMPARE_FAIL_VALUE_ARB, GL_TEXTURE_COMPARE_FUNC, GL_TEXTURE_COMPARE_FUNC_ARB, GL_TEXTURE_COMPARE_MODE, GL_TEXTURE_COMPARE_MODE_ARB, GL_TEXTURE_COMPARE_OPERATOR_SGIX, GL_TEXTURE_COMPARE_SGIX, GL_TEXTURE_COMPONENTS, GL_TEXTURE_COMPRESSED, GL_TEXTURE_COMPRESSED_ARB, GL_TEXTURE_COMPRESSED_IMAGE_SIZE, GL_TEXTURE_COMPRESSED_IMAGE_SIZE_ARB, GL_TEXTURE_COMPRESSION_HINT, GL_TEXTURE_COMPRESSION_HINT_ARB, GL_TEXTURE_CONSTANT_DATA_SUNX, GL_TEXTURE_COORD_ARRAY, GL_TEXTURE_COORD_ARRAY_COUNT_EXT, GL_TEXTURE_COORD_ARRAY_EXT, GL_TEXTURE_COORD_ARRAY_LIST_IBM, GL_TEXTURE_COORD_ARRAY_LIST_STRIDE_IBM, GL_TEXTURE_COORD_ARRAY_PARALLEL_POINTERS_INTEL, GL_TEXTURE_COORD_ARRAY_POINTER, GL_TEXTURE_COORD_ARRAY_POINTER_EXT, GL_TEXTURE_COORD_ARRAY_SIZE, GL_TEXTURE_COORD_ARRAY_SIZE_EXT, GL_TEXTURE_COORD_ARRAY_STRIDE, GL_TEXTURE_COORD_ARRAY_STRIDE_EXT, GL_TEXTURE_COORD_ARRAY_TYPE, GL_TEXTURE_COORD_ARRAY_TYPE_EXT, GL_TEXTURE_CUBE_MAP, GL_TEXTURE_CUBE_MAP_ARB, GL_TEXTURE_CUBE_MAP_EXT, GL_TEXTURE_CUBE_MAP_NEGATIVE_X, GL_TEXTURE_CUBE_MAP_NEGATIVE_X_ARB, GL_TEXTURE_CUBE_MAP_NEGATIVE_X_EXT, GL_TEXTURE_CUBE_MAP_NEGATIVE_Y, GL_TEXTURE_CUBE_MAP_NEGATIVE_Y_ARB, GL_TEXTURE_CUBE_MAP_NEGATIVE_Y_EXT, GL_TEXTURE_CUBE_MAP_NEGATIVE_Z, GL_TEXTURE_CUBE_MAP_NEGATIVE_Z_ARB, GL_TEXTURE_CUBE_MAP_NEGATIVE_Z_EXT, GL_TEXTURE_CUBE_MAP_POSITIVE_X, GL_TEXTURE_CUBE_MAP_POSITIVE_X_ARB, GL_TEXTURE_CUBE_MAP_POSITIVE_X_EXT, GL_TEXTURE_CUBE_MAP_POSITIVE_Y, GL_TEXTURE_CUBE_MAP_POSITIVE_Y_ARB, GL_TEXTURE_CUBE_MAP_POSITIVE_Y_EXT, GL_TEXTURE_CUBE_MAP_POSITIVE_Z, GL_TEXTURE_CUBE_MAP_POSITIVE_Z_ARB, GL_TEXTURE_CUBE_MAP_POSITIVE_Z_EXT, GL_TEXTURE_DEFORMATION_BIT_SGIX, GL_TEXTURE_DEFORMATION_SGIX, GL_TEXTURE_DEPTH, GL_TEXTURE_DEPTH_EXT, GL_TEXTURE_DEPTH_SIZE, GL_TEXTURE_DEPTH_SIZE_ARB, GL_TEXTURE_DS_SIZE_NV, GL_TEXTURE_DT_SIZE_NV, GL_TEXTURE_ENV, GL_TEXTURE_ENV_BIAS_SGIX, GL_TEXTURE_ENV_COLOR, GL_TEXTURE_ENV_MODE, GL_TEXTURE_FILTER_CONTROL, GL_TEXTURE_FILTER_CONTROL_EXT, GL_TEXTURE_FILTER4_SIZE_SGIS, GL_TEXTURE_GEN_MODE, GL_TEXTURE_GEN_Q, GL_TEXTURE_GEN_R, GL_TEXTURE_GEN_S, GL_TEXTURE_GEN_T, GL_TEXTURE_GEQUAL_R_SGIX, GL_TEXTURE_GREEN_SIZE, GL_TEXTURE_GREEN_SIZE_EXT, GL_TEXTURE_HEIGHT, GL_TEXTURE_HI_SIZE_NV, GL_TEXTURE_INDEX_SIZE_EXT, GL_TEXTURE_INTENSITY_SIZE, GL_TEXTURE_INTENSITY_SIZE_EXT, GL_TEXTURE_INTERNAL_FORMAT, GL_TEXTURE_LEQUAL_R_SGIX, GL_TEXTURE_LIGHT_EXT, GL_TEXTURE_LIGHTING_MODE_HP, GL_TEXTURE_LO_SIZE_NV, GL_TEXTURE_LOD_BIAS, GL_TEXTURE_LOD_BIAS_EXT, GL_TEXTURE_LOD_BIAS_R_SGIX, GL_TEXTURE_LOD_BIAS_S_SGIX, GL_TEXTURE_LOD_BIAS_T_SGIX, GL_TEXTURE_LUMINANCE_SIZE, GL_TEXTURE_LUMINANCE_SIZE_EXT, GL_TEXTURE_MAG_FILTER, GL_TEXTURE_MAG_SIZE_NV, GL_TEXTURE_MATERIAL_FACE_EXT, GL_TEXTURE_MATERIAL_PARAMETER_EXT, GL_TEXTURE_MATRIX, GL_TEXTURE_MAX_ANISOTROPY_EXT, GL_TEXTURE_MAX_CLAMP_R_SGIX, GL_TEXTURE_MAX_CLAMP_S_SGIX, GL_TEXTURE_MAX_CLAMP_T_SGIX, GL_TEXTURE_MAX_LEVEL, GL_TEXTURE_MAX_LEVEL_SGIS, GL_TEXTURE_MAX_LOD, GL_TEXTURE_MAX_LOD_SGIS, GL_TEXTURE_MIN_FILTER, GL_TEXTURE_MIN_LOD, GL_TEXTURE_MIN_LOD_SGIS, GL_TEXTURE_MULTI_BUFFER_HINT_SGIX, GL_TEXTURE_NORMAL_EXT, GL_TEXTURE_POST_SPECULAR_HP, GL_TEXTURE_PRE_SPECULAR_HP, GL_TEXTURE_PRIORITY, GL_TEXTURE_PRIORITY_EXT, GL_TEXTURE_RECTANGLE_NV, GL_TEXTURE_RED_SIZE, GL_TEXTURE_RED_SIZE_EXT, GL_TEXTURE_RESIDENT, GL_TEXTURE_RESIDENT_EXT, GL_TEXTURE_SHADER_NV, GL_TEXTURE_STACK_DEPTH, GL_TEXTURE_TOO_LARGE_EXT, GL_TEXTURE_WIDTH, GL_TEXTURE_WRAP_Q_SGIS, GL_TEXTURE_WRAP_R, GL_TEXTURE_WRAP_R_EXT, GL_TEXTURE_WRAP_S, GL_TEXTURE_WRAP_T, GL_TEXTURE0, GL_TEXTURE0_ARB, GL_TEXTURE1, GL_TEXTURE1_ARB, GL_TEXTURE10, GL_TEXTURE10_ARB, GL_TEXTURE11, GL_TEXTURE11_ARB, GL_TEXTURE12, GL_TEXTURE12_ARB, GL_TEXTURE13, GL_TEXTURE13_ARB, GL_TEXTURE14, GL_TEXTURE14_ARB, GL_TEXTURE15, GL_TEXTURE15_ARB, GL_TEXTURE16, GL_TEXTURE16_ARB, GL_TEXTURE17, GL_TEXTURE17_ARB, GL_TEXTURE18, GL_TEXTURE18_ARB, GL_TEXTURE19, GL_TEXTURE19_ARB, GL_TEXTURE2, GL_TEXTURE2_ARB, GL_TEXTURE20, GL_TEXTURE20_ARB, GL_TEXTURE21, GL_TEXTURE21_ARB, GL_TEXTURE22, GL_TEXTURE22_ARB, GL_TEXTURE23, GL_TEXTURE23_ARB, GL_TEXTURE24, GL_TEXTURE24_ARB, GL_TEXTURE25, GL_TEXTURE25_ARB, GL_TEXTURE26, GL_TEXTURE26_ARB, GL_TEXTURE27, GL_TEXTURE27_ARB, GL_TEXTURE28, GL_TEXTURE28_ARB, GL_TEXTURE29, GL_TEXTURE29_ARB, GL_TEXTURE3, GL_TEXTURE3_ARB, GL_TEXTURE30, GL_TEXTURE30_ARB, GL_TEXTURE31, GL_TEXTURE31_ARB, GL_TEXTURE4, GL_TEXTURE4_ARB, GL_TEXTURE5, GL_TEXTURE5_ARB, GL_TEXTURE6, GL_TEXTURE6_ARB, GL_TEXTURE7, GL_TEXTURE7_ARB, GL_TEXTURE8, GL_TEXTURE8_ARB, GL_TEXTURE9, GL_TEXTURE9_ARB, GL_TRACE_ALL_BITS_MESA, GL_TRACE_ARRAYS_BIT_MESA, GL_TRACE_ERRORS_BIT_MESA, GL_TRACE_MASK_MESA, GL_TRACE_NAME_MESA, GL_TRACE_OPERATIONS_BIT_MESA, GL_TRACE_PIXELS_BIT_MESA, GL_TRACE_PRIMITIVES_BIT_MESA, GL_TRACE_TEXTURES_BIT_MESA, GL_TRACK_MATRIX_NV, GL_TRACK_MATRIX_TRANSFORM_NV, GL_TRANSFORM_BIT, GL_TRANSFORM_HINT_APPLE, GL_TRANSPOSE_COLOR_MATRIX, GL_TRANSPOSE_COLOR_MATRIX_ARB, GL_TRANSPOSE_CURRENT_MATRIX_ARB, GL_TRANSPOSE_MODELVIEW_MATRIX, GL_TRANSPOSE_MODELVIEW_MATRIX_ARB, GL_TRANSPOSE_NV, GL_TRANSPOSE_PROJECTION_MATRIX, GL_TRANSPOSE_PROJECTION_MATRIX_ARB, GL_TRANSPOSE_TEXTURE_MATRIX, GL_TRANSPOSE_TEXTURE_MATRIX_ARB, GL_TRIANGLE_FAN, GL_TRIANGLE_LIST_SUN, GL_TRIANGLE_MESH_SUN, GL_TRIANGLE_STRIP, GL_TRIANGLES, GL_TRUE, GL_UNPACK_ALIGNMENT, GL_UNPACK_CLIENT_STORAGE_APPLE, GL_UNPACK_CMYK_HINT_EXT, GL_UNPACK_CONSTANT_DATA_SUNX, GL_UNPACK_IMAGE_DEPTH_SGIS, GL_UNPACK_IMAGE_HEIGHT, GL_UNPACK_IMAGE_HEIGHT_EXT, GL_UNPACK_LSB_FIRST, GL_UNPACK_RESAMPLE_OML, GL_UNPACK_RESAMPLE_SGIX, GL_UNPACK_ROW_LENGTH, GL_UNPACK_SKIP_IMAGES, GL_UNPACK_SKIP_IMAGES_EXT, GL_UNPACK_SKIP_PIXELS, GL_UNPACK_SKIP_ROWS, GL_UNPACK_SKIP_VOLUMES_SGIS, GL_UNPACK_SUBSAMPLE_RATE_SGIX, GL_UNPACK_SWAP_BYTES, GL_UNSIGNED_BYTE, GL_UNSIGNED_BYTE_2_3_3_REV, GL_UNSIGNED_BYTE_3_3_2, GL_UNSIGNED_BYTE_3_3_2_EXT, GL_UNSIGNED_IDENTITY_NV, GL_UNSIGNED_INT, GL_UNSIGNED_INT_10_10_10_2, GL_UNSIGNED_INT_10_10_10_2_EXT, GL_UNSIGNED_INT_2_10_10_10_REV, GL_UNSIGNED_INT_24_8_MESA, GL_UNSIGNED_INT_24_8_NV, GL_UNSIGNED_INT_8_24_REV_MESA, GL_UNSIGNED_INT_8_8_8_8, GL_UNSIGNED_INT_8_8_8_8_EXT, GL_UNSIGNED_INT_8_8_8_8_REV, GL_UNSIGNED_INT_8_8_S8_S8_REV_NV, GL_UNSIGNED_INT_S8_S8_8_8_NV, GL_UNSIGNED_INVERT_NV, GL_UNSIGNED_SHORT, GL_UNSIGNED_SHORT_1_15_REV_MESA, GL_UNSIGNED_SHORT_1_5_5_5_REV, GL_UNSIGNED_SHORT_15_1_MESA, GL_UNSIGNED_SHORT_4_4_4_4, GL_UNSIGNED_SHORT_4_4_4_4_EXT, GL_UNSIGNED_SHORT_4_4_4_4_REV, GL_UNSIGNED_SHORT_5_5_5_1, GL_UNSIGNED_SHORT_5_5_5_1_EXT, GL_UNSIGNED_SHORT_5_6_5, GL_UNSIGNED_SHORT_5_6_5_REV, GL_UNSIGNED_SHORT_8_8_APPLE, GL_UNSIGNED_SHORT_8_8_MESA, GL_UNSIGNED_SHORT_8_8_REV_APPLE, GL_UNSIGNED_SHORT_8_8_REV_MESA, GL_V2F, GL_V3F, GL_VARIABLE_A_NV, GL_VARIABLE_B_NV, GL_VARIABLE_C_NV, GL_VARIABLE_D_NV, GL_VARIABLE_E_NV, GL_VARIABLE_F_NV, GL_VARIABLE_G_NV, GL_VARIANT_ARRAY_EXT, GL_VARIANT_ARRAY_POINTER_EXT, GL_VARIANT_ARRAY_STRIDE_EXT, GL_VARIANT_ARRAY_TYPE_EXT, GL_VARIANT_DATATYPE_EXT, GL_VARIANT_EXT, GL_VARIANT_VALUE_EXT, GL_VECTOR_EXT, GL_VENDOR, GL_VERSION, GL_VERSION_1_1, GL_VERSION_1_2, GL_VERSION_1_3, GL_VERSION_1_4, GL_VERTEX_ARRAY, GL_VERTEX_ARRAY_COUNT_EXT, GL_VERTEX_ARRAY_EXT, GL_VERTEX_ARRAY_LIST_IBM, GL_VERTEX_ARRAY_LIST_STRIDE_IBM, GL_VERTEX_ARRAY_PARALLEL_POINTERS_INTEL, GL_VERTEX_ARRAY_POINTER, GL_VERTEX_ARRAY_POINTER_EXT, GL_VERTEX_ARRAY_RANGE_LENGTH_NV, GL_VERTEX_ARRAY_RANGE_NV, GL_VERTEX_ARRAY_RANGE_POINTER_NV, GL_VERTEX_ARRAY_RANGE_VALID_NV, GL_VERTEX_ARRAY_RANGE_WITHOUT_FLUSH_NV, GL_VERTEX_ARRAY_SIZE, GL_VERTEX_ARRAY_SIZE_EXT, GL_VERTEX_ARRAY_STRIDE, GL_VERTEX_ARRAY_STRIDE_EXT, GL_VERTEX_ARRAY_TYPE, GL_VERTEX_ARRAY_TYPE_EXT, GL_VERTEX_ATTRIB_ARRAY_ENABLED_ARB, GL_VERTEX_ATTRIB_ARRAY_NORMALIZED_ARB, GL_VERTEX_ATTRIB_ARRAY_POINTER_ARB, GL_VERTEX_ATTRIB_ARRAY_SIZE_ARB, GL_VERTEX_ATTRIB_ARRAY_STRIDE_ARB, GL_VERTEX_ATTRIB_ARRAY_TYPE_ARB, GL_VERTEX_ATTRIB_ARRAY0_NV, GL_VERTEX_ATTRIB_ARRAY1_NV, GL_VERTEX_ATTRIB_ARRAY10_NV, GL_VERTEX_ATTRIB_ARRAY11_NV, GL_VERTEX_ATTRIB_ARRAY12_NV, GL_VERTEX_ATTRIB_ARRAY13_NV, GL_VERTEX_ATTRIB_ARRAY14_NV, GL_VERTEX_ATTRIB_ARRAY15_NV, GL_VERTEX_ATTRIB_ARRAY2_NV, GL_VERTEX_ATTRIB_ARRAY3_NV, GL_VERTEX_ATTRIB_ARRAY4_NV, GL_VERTEX_ATTRIB_ARRAY5_NV, GL_VERTEX_ATTRIB_ARRAY6_NV, GL_VERTEX_ATTRIB_ARRAY7_NV, GL_VERTEX_ATTRIB_ARRAY8_NV, GL_VERTEX_ATTRIB_ARRAY9_NV, GL_VERTEX_BLEND_ARB, GL_VERTEX_CONSISTENT_HINT_PGI, GL_VERTEX_DATA_HINT_PGI, GL_VERTEX_PRECLIP_HINT_SGIX, GL_VERTEX_PRECLIP_SGIX, GL_VERTEX_PROGRAM_ARB, GL_VERTEX_PROGRAM_BINDING_NV, GL_VERTEX_PROGRAM_NV, GL_VERTEX_PROGRAM_POINT_SIZE_ARB, GL_VERTEX_PROGRAM_POINT_SIZE_NV, GL_VERTEX_PROGRAM_TWO_SIDE_ARB, GL_VERTEX_PROGRAM_TWO_SIDE_NV, GL_VERTEX_SHADER_BINDING_EXT, GL_VERTEX_SHADER_EXT, GL_VERTEX_SHADER_INSTRUCTIONS_EXT, GL_VERTEX_SHADER_INVARIANTS_EXT, GL_VERTEX_SHADER_LOCAL_CONSTANTS_EXT, GL_VERTEX_SHADER_LOCALS_EXT, GL_VERTEX_SHADER_OPTIMIZED_EXT, GL_VERTEX_SHADER_VARIANTS_EXT, GL_VERTEX_SOURCE_ATI, GL_VERTEX_STATE_PROGRAM_NV, GL_VERTEX_STREAM0_ATI, GL_VERTEX_STREAM1_ATI, GL_VERTEX_STREAM2_ATI, GL_VERTEX_STREAM3_ATI, GL_VERTEX_STREAM4_ATI, GL_VERTEX_STREAM5_ATI, GL_VERTEX_STREAM6_ATI, GL_VERTEX_STREAM7_ATI, GL_VERTEX_WEIGHT_ARRAY_EXT, GL_VERTEX_WEIGHT_ARRAY_POINTER_EXT, GL_VERTEX_WEIGHT_ARRAY_SIZE_EXT, GL_VERTEX_WEIGHT_ARRAY_STRIDE_EXT, GL_VERTEX_WEIGHT_ARRAY_TYPE_EXT, GL_VERTEX_WEIGHTING_EXT, GL_VERTEX23_BIT_PGI, GL_VERTEX4_BIT_PGI, GL_VIBRANCE_BIAS_NV, GL_VIBRANCE_SCALE_NV, GL_VIEWPORT, GL_VIEWPORT_BIT, GL_W_EXT, GL_WEIGHT_ARRAY_ARB, GL_WEIGHT_ARRAY_POINTER_ARB, GL_WEIGHT_ARRAY_SIZE_ARB, GL_WEIGHT_ARRAY_STRIDE_ARB, GL_WEIGHT_ARRAY_TYPE_ARB, GL_WEIGHT_SUM_UNITY_ARB, GL_WIDE_LINE_HINT_PGI, GL_WIN_phong_shading, GL_WIN_specular_fog, GL_WRAP_BORDER_SUN, GL_X_EXT, GL_XOR, GL_Y_EXT, GL_YCBCR_422_APPLE, GL_YCBCR_MESA, GL_YCRCB_422_SGIX, GL_YCRCB_444_SGIX, GL_YCRCB_SGIX, GL_YCRCBA_SGIX, GL_Z_EXT, GL_ZERO, GL_ZERO_EXT, GL_ZOOM_X, GL_ZOOM_Y
 
Fields inherited from interface gl4java.GLUEnum
GLU_AUTO_LOAD_MATRIX, GLU_BEGIN, GLU_CCW, GLU_CULLING, GLU_CW, GLU_DISPLAY_MODE, GLU_DOMAIN_DISTANCE, GLU_EDGE_FLAG, GLU_END, GLU_ERROR, GLU_EXTENSIONS, GLU_EXTERIOR, GLU_FALSE, GLU_FILL, GLU_FLAT, GLU_INSIDE, GLU_INTERIOR, GLU_INVALID_ENUM, GLU_INVALID_OPERATION, GLU_INVALID_VALUE, GLU_LINE, GLU_MAP1_TRIM_2, GLU_MAP1_TRIM_3, GLU_NONE, GLU_NURBS_BEGIN, GLU_NURBS_BEGIN_DATA, GLU_NURBS_BEGIN_DATA_EXT, GLU_NURBS_BEGIN_EXT, GLU_NURBS_COLOR, GLU_NURBS_COLOR_DATA, GLU_NURBS_COLOR_DATA_EXT, GLU_NURBS_COLOR_EXT, GLU_NURBS_END, GLU_NURBS_END_DATA, GLU_NURBS_END_DATA_EXT, GLU_NURBS_END_EXT, GLU_NURBS_ERROR, GLU_NURBS_ERROR1, GLU_NURBS_ERROR10, GLU_NURBS_ERROR11, GLU_NURBS_ERROR12, GLU_NURBS_ERROR13, GLU_NURBS_ERROR14, GLU_NURBS_ERROR15, GLU_NURBS_ERROR16, GLU_NURBS_ERROR17, GLU_NURBS_ERROR18, GLU_NURBS_ERROR19, GLU_NURBS_ERROR2, GLU_NURBS_ERROR20, GLU_NURBS_ERROR21, GLU_NURBS_ERROR22, GLU_NURBS_ERROR23, GLU_NURBS_ERROR24, GLU_NURBS_ERROR25, GLU_NURBS_ERROR26, GLU_NURBS_ERROR27, GLU_NURBS_ERROR28, GLU_NURBS_ERROR29, GLU_NURBS_ERROR3, GLU_NURBS_ERROR30, GLU_NURBS_ERROR31, GLU_NURBS_ERROR32, GLU_NURBS_ERROR33, GLU_NURBS_ERROR34, GLU_NURBS_ERROR35, GLU_NURBS_ERROR36, GLU_NURBS_ERROR37, GLU_NURBS_ERROR4, GLU_NURBS_ERROR5, GLU_NURBS_ERROR6, GLU_NURBS_ERROR7, GLU_NURBS_ERROR8, GLU_NURBS_ERROR9, GLU_NURBS_MODE, GLU_NURBS_MODE_EXT, GLU_NURBS_NORMAL, GLU_NURBS_NORMAL_DATA, GLU_NURBS_NORMAL_DATA_EXT, GLU_NURBS_NORMAL_EXT, GLU_NURBS_RENDERER, GLU_NURBS_RENDERER_EXT, GLU_NURBS_TESSELLATOR, GLU_NURBS_TESSELLATOR_EXT, GLU_NURBS_TEX_COORD_DATA_EXT, GLU_NURBS_TEX_COORD_EXT, GLU_NURBS_TEXTURE_COORD, GLU_NURBS_TEXTURE_COORD_DATA, GLU_NURBS_VERTEX, GLU_NURBS_VERTEX_DATA, GLU_NURBS_VERTEX_DATA_EXT, GLU_NURBS_VERTEX_EXT, GLU_OBJECT_PARAMETRIC_ERROR, GLU_OBJECT_PARAMETRIC_ERROR_EXT, GLU_OBJECT_PATH_LENGTH, GLU_OBJECT_PATH_LENGTH_EXT, GLU_OUT_OF_MEMORY, GLU_OUTLINE_PATCH, GLU_OUTLINE_POLYGON, GLU_OUTSIDE, GLU_PARAMETRIC_ERROR, GLU_PARAMETRIC_TOLERANCE, GLU_PATH_LENGTH, GLU_POINT, GLU_SAMPLING_METHOD, GLU_SAMPLING_TOLERANCE, GLU_SILHOUETTE, GLU_SMOOTH, GLU_TESS_BEGIN, GLU_TESS_BEGIN_DATA, GLU_TESS_BOUNDARY_ONLY, GLU_TESS_COMBINE, GLU_TESS_COMBINE_DATA, GLU_TESS_COORD_TOO_LARGE, GLU_TESS_EDGE_FLAG, GLU_TESS_EDGE_FLAG_DATA, GLU_TESS_END, GLU_TESS_END_DATA, GLU_TESS_ERROR, GLU_TESS_ERROR_DATA, GLU_TESS_ERROR1, GLU_TESS_ERROR2, GLU_TESS_ERROR3, GLU_TESS_ERROR4, GLU_TESS_ERROR5, GLU_TESS_ERROR6, GLU_TESS_ERROR7, GLU_TESS_ERROR8, GLU_TESS_MAX_COORD, GLU_TESS_MISSING_BEGIN_CONTOUR, GLU_TESS_MISSING_BEGIN_POLYGON, GLU_TESS_MISSING_END_CONTOUR, GLU_TESS_MISSING_END_POLYGON, GLU_TESS_NEED_COMBINE_CALLBACK, GLU_TESS_TOLERANCE, GLU_TESS_VERTEX, GLU_TESS_VERTEX_DATA, GLU_TESS_WINDING_ABS_GEQ_TWO, GLU_TESS_WINDING_NEGATIVE, GLU_TESS_WINDING_NONZERO, GLU_TESS_WINDING_ODD, GLU_TESS_WINDING_POSITIVE, GLU_TESS_WINDING_RULE, GLU_U_STEP, GLU_UNKNOWN, GLU_V_STEP, GLU_VERSION, GLU_VERTEX
 
Fields inherited from interface java.awt.image.ImageObserver
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH
 
Constructor Summary
AccordionDrawer(int w, int h)
           
 
Method Summary
 void addCellToQueue(GridCell cell)
           
protected  void buildGrids()
          Builds the GridCell (quadtree) hierarchy Creates the level 1 through level n grids from the bottom up.
private  void buildQuadTreeCellLines()
          Builds the minLine[] and maxLine[] arrays.
private  void buildSortedArrays()
          Builds sorted arrays to allow binary search on splitCells data Use the array elements (SortedCells) to look up the index in the splitCells array.
private  void buildSplitCells()
          Builds the splitCells data structure.
 void changedMarks()
           
 void clearLens()
           
 void clearQueue()
           
 void close()
          clear all the data structures initiated in AD, called when tree(s) get deleted from AD
(package private)  void continueFrame()
           
protected  InteractionBox createBoxFromCells(int[] dragStart, int[] dragEnd)
          Make an InteractionBox from the GridCells nearest to the box of the mousedrag.
protected  InteractionBox createRectFromPick(int[] dragStart, int[] dragEnd, InteractionBox baseBox)
          Make an InteractionBox from the GridCells nearest to the box of the mousedrag.
 void decreaseLineThickness()
           
 void display()
           
 void doCleanup()
           
(package private)  void doDrawFrame()
          Draws the contents of the AccordionDrawer (enclosed in the rootCell) in a new frame.
abstract  void doFlash()
           
private  void doFrameMove()
          Helper function for doDrawFrame to move grid lines during animated transitions.
 void doLens()
          render lens in a special mode readPixels form the front buffer in x and y direction to avoid flickering and overwrite only diffPos in x and y to render the lens do a twolinesmove with picked cells render the solution in a small viewport in the back buffer read pixels of this viewport switch back in the original viewport draw stored pixels TODO: x-distortion, check boundaries, flowmenu like zooming
private  void doShowAlg(GridCell c)
           
protected abstract  void drawBruteForce()
           
 void drawEnd()
           
abstract  void drawNextFancy(CellGeom g)
           
protected abstract  void drawPostFrame()
           
protected abstract  void drawPostScene()
           
protected abstract  void drawPreContFrame()
           
protected abstract  void drawPreNewFrame()
           
 boolean drawStart()
           
 void expandLeaves(int grow)
           
protected  void finalize()
           
 GridCell findEnclosingCell(int arow, int acol, int brow, int bcol)
           
 java.awt.Color getBackgroundColor()
           
 boolean getBigGrid()
           
 boolean getCacheRange()
           
(package private)  GridCell getCell(int level, int i, int j, int xy)
           
 boolean getCheckTime()
           
 boolean getColorGrid()
           
abstract  java.util.ArrayList getColorsForGridCell(GridCell c, int objkey)
           
 boolean getDimBrite()
           
 boolean getDimColors()
           
 boolean getDoubleBuffer()
           
 boolean getDrawLabels()
           
 java.util.ArrayList getDrawnLabels()
           
 int getDrawOrder()
           
 boolean getDumpStats()
           
 int getExpandLeaves()
           
 int getFrameNum()
           
 java.lang.Object getGraphicsStuff()
           
 boolean getGuarVis()
           
 float getInflateIncr()
           
 int getKey()
           
 java.awt.Color getLabelBackColor()
           
 java.awt.Color getLabelBackHiColor()
           
 java.awt.Color getLabelColor()
           
 boolean getLabelDrawBack()
           
 java.awt.Color getLabelHiColor()
           
 float getLabelplane()
           
 boolean getLabelPopup()
           
 boolean getLabelPosRight()
           
 boolean getLabelTransp()
           
 float getLineThickness()
           
 boolean getLinkedNav()
           
 int getMinCellDims(int xy)
           
 int getMinCellSize(int xy)
           
 boolean getNoFlash()
           
 boolean getNoGeoms()
           
 boolean getNoGrid()
           
 int getNumAnimSteps()
           
 float getObjplane()
           
 java.awt.Color getRubberbandColor()
           
 boolean getShowAlg()
           
 int getWinMax(int xy)
           
 int getWinMaxX()
           
 int getWinMaxY()
           
 int getWinsize(int xy)
           
 void increaseLineThickness()
           
 void init()
           
abstract  void initCells()
           
 boolean isDoingFlash()
           
 void lineMove(int xy, GridCell a, float value, boolean maintainStuck)
          Moves the splitPos of GridCell a to absolute position value in window coordinates.
abstract  java.util.ArrayList pickAttached(int x, int y)
           
 GridCell pickCell(int x, int y)
           
 GridCell pickCellClosestTo(int spot, int xy, boolean wantMax)
          Pick closest cell in either horizontal *or* vertical direction.
protected  void redraw()
          Redraws the entire canvas
 void requestRedraw()
          Redraw immediately, do not continue filling in details.
 void requestRedrawEventually()
          Enqueue a redraw request, but don't stop what we're in the middle of doing.
 void reset()
           
 void resetGridUniform()
           
protected  void resetHighlightPlane()
           
protected  void resetObjectPlane()
           
 void reshape(int w, int h)
          Reshapes the drawing area to new width w and height h in pixels
 void resizeArea(int areaStartX, int areaStartY, int areaEndX, int areaEndY, boolean grow, int numSteps)
          Resizes the area delineated by areaStartX, areaStartY, areaEndX, areaEndY, by the relative increment inflateIncr.
 void resizeFromCellToCell(GridCell a, GridCell b, boolean grow, int numSteps, int xy)
          Resizes the area delineated by GridCells a and b by the relative increment inflateIncr.
 void resizeRectangle(int numSteps, GridCell[] minCell, GridCell[] maxCell, float[] minBoundaryW, float[] maxBoundaryW)
          Creates smooth transitions for resizing an area determined by the splitPos's of minCell[] and maxCell[] to a rectanble determined by minBoundaryW[] and maxBoundaryW[].
 float s2w(float s, int xy)
           
 float s2w(int s, int xy)
          Converts pixel coordinates into relative "fractional" coordinates in [0,1]
protected abstract  void seedQueue()
           
 void setBackgroundColor(java.awt.Color backgroundColor)
           
 void setBigGrid(boolean on)
           
 void setCacheRange(boolean on)
           
 void setCellHighlight(GridCell c, boolean on)
           
 void setCheckTime(boolean on)
           
 void setColorGL(java.awt.Color col)
           
 void setColorGrid(boolean on)
           
 void setDimBrite(boolean on)
           
 void setDimColors(boolean on)
           
 void setDoubleBuffer(boolean value)
           
 void setDrawLabels(boolean on)
           
 void setDrawOrder(int order)
           
 void setDrawSplits(boolean on)
           
 void setDumpStats(boolean on)
           
 void setDynamicFrameTime(long milliseconds)
           
 void setExpandLeaves(int expand)
           
 void setFlash(CellGeom cg, java.awt.Color col, int x, int y, boolean doBox)
           
 void setFocusCell(GridCell fc)
           
 void setGuarVis(boolean on)
           
protected  void setHighlightPlane(float w)
           
 void setInflateIncr(float value)
           
 void setKey(int i)
           
 void setLabelBackColor(java.awt.Color labelBackColor)
           
 void setLabelBackHiColor(java.awt.Color labelBackHiColor)
           
 void setLabelColor(java.awt.Color labelColor)
           
 void setLabelDrawBack(boolean on)
           
 void setLabelHiColor(java.awt.Color labelHiColor)
           
 void setLabelPopup(boolean on)
           
 void setLabelPosRight(boolean on)
           
 void setLabelTransp(boolean on)
           
 void setLineThickness(float thickness)
           
 void setLinkedNav(boolean on)
           
 void setMinCellDims(int xy, int is)
           
 void setMinCellSize(int size, int xy)
           
 void setNoFlash(boolean on)
           
 void setNoGeoms(boolean on)
           
 void setNoGrid(boolean on)
           
 void setNumAnimSteps(int numAnimSteps)
           
protected  void setObjectPlane(float w)
           
 void setRubberbandColor(java.awt.Color rubberbandColor)
           
 void setShowAlg(boolean on)
           
 void setSplit(GridCell a, float val, int xy)
           
(package private)  void startNewFrame()
          Starts a new frame and draws the contents of the AccordionDrawer (enclosed in the rootCell) in a new frame.
abstract  void subpixelDraw(GridCell c)
           
 void toggleBigGrid()
           
 void toggleCacheRange()
           
 void toggleCheckTime()
           
 void toggleColorGrid()
           
 void toggleDimBrite()
           
 void toggleDimColors()
           
 void toggleDrawLabels()
           
 void toggleDrawOrder()
           
 void toggleDrawSplits()
           
 void toggleDumpStats()
           
 void toggleExpandLeaves()
           
 void toggleGuarVis()
           
 void toggleLabelDrawBack()
           
 void toggleLabelPopup()
           
 void toggleLabelPosRight()
           
 void toggleLabelTransp()
           
 void toggleLinkedNav()
           
 void toggleNoFlash()
           
 void toggleNoGeoms()
           
 void toggleNoGrid()
           
 void toggleShowAlg()
           
 void twoLinesMove(int xy, GridCell a, float aValue, GridCell b, float bValue)
          Moves the splitPos of GridCells a and b to absolute position aValue and bValue, respectively.
 void twoLinesMoveInsideFixedStrip(int xy, GridCell aCell, float aValue, GridCell bCell, float bValue, GridCell aBoundary, GridCell bBoundary)
          Moves the splitPos of GridCells a and b to absolute position aValue and bValue, respectively.
 int w2s(float w, int xy)
          Converts "fractional" coordinates in [0,1] into pixel coordinates
 
Methods inherited from class gl4java.awt.GLCanvas
addGLEventListener, componentHidden, componentMoved, componentResized, componentShown, cvsDispose, cvsGetHeight, cvsGetWidth, cvsIsInit, destroy, getGL, getGLContext, getGLU, getLastFrameMillis, getListeners, getMinimumSize, getPreferredSize, getTopLevelWindow, isGLEnabled, mouseClicked, mouseEntered, mouseExited, mousePressed, mouseReleased, paint, preInit, removeGLEventListener, sDisplay, setGLEnabled, setVisible, update, windowActivated, windowClosed, windowClosing, windowDeactivated, windowDeiconified, windowIconified, windowOpened
 
Methods inherited from class java.awt.Canvas
addNotify, createBufferStrategy, createBufferStrategy, getAccessibleContext, getBufferStrategy
 
Methods inherited from class java.awt.Component
action, add, addComponentListener, addFocusListener, addHierarchyBoundsListener, addHierarchyListener, addInputMethodListener, addKeyListener, addMouseListener, addMouseMotionListener, addMouseWheelListener, addPropertyChangeListener, addPropertyChangeListener, applyComponentOrientation, areFocusTraversalKeysSet, bounds, checkImage, checkImage, coalesceEvents, contains, contains, createImage, createImage, createVolatileImage, createVolatileImage, deliverEvent, disable, disableEvents, dispatchEvent, doLayout, enable, enable, enableEvents, enableInputMethods, firePropertyChange, firePropertyChange, firePropertyChange, getAlignmentX, getAlignmentY, getBackground, getBounds, getBounds, getColorModel, getComponentAt, getComponentAt, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusCycleRootAncestor, getFocusListeners, getFocusTraversalKeys, getFocusTraversalKeysEnabled, getFont, getFontMetrics, getForeground, getGraphics, getGraphicsConfiguration, getHeight, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputContext, getInputMethodListeners, getInputMethodRequests, getKeyListeners, getLocale, getLocation, getLocation, getLocationOnScreen, getMaximumSize, getMouseListeners, getMouseMotionListeners, getMouseWheelListeners, getName, getParent, getPeer, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getSize, getToolkit, getTreeLock, getWidth, getX, getY, gotFocus, handleEvent, hasFocus, hide, imageUpdate, inside, invalidate, isBackgroundSet, isCursorSet, isDisplayable, isDoubleBuffered, isEnabled, isFocusable, isFocusCycleRoot, isFocusOwner, isFocusTraversable, isFontSet, isForegroundSet, isLightweight, isOpaque, isShowing, isValid, isVisible, keyDown, keyUp, layout, list, list, list, list, list, locate, location, lostFocus, minimumSize, mouseDown, mouseDrag, mouseEnter, mouseExit, mouseMove, mouseUp, move, nextFocus, paintAll, paramString, postEvent, preferredSize, prepareImage, prepareImage, print, printAll, processComponentEvent, processEvent, processFocusEvent, processHierarchyBoundsEvent, processHierarchyEvent, processInputMethodEvent, processKeyEvent, processMouseEvent, processMouseMotionEvent, processMouseWheelEvent, remove, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, removeNotify, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, repaint, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, reshape, resize, resize, setBackground, setBounds, setBounds, setComponentOrientation, setCursor, setDropTarget, setEnabled, setFocusable, setFocusTraversalKeys, setFocusTraversalKeysEnabled, setFont, setForeground, setIgnoreRepaint, setLocale, setLocation, setLocation, setName, setSize, setSize, show, show, size, toString, transferFocus, transferFocusBackward, transferFocusUpCycle, validate
 
Methods inherited from class java.lang.Object
clone, equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface java.awt.event.MouseListener
mouseClicked, mouseEntered, mouseExited, mousePressed, mouseReleased
 
Methods inherited from interface java.awt.event.MouseMotionListener
mouseDragged, mouseMoved
 
Methods inherited from interface java.awt.event.KeyListener
keyPressed, keyReleased, keyTyped
 
Methods inherited from interface gl4java.drawable.GLDrawable
addComponentListener, addFocusListener, addKeyListener, addMouseListener, addMouseMotionListener, getSize, removeComponentListener, removeFocusListener, removeMouseListener, removeMouseMotionListener, repaint
 

Field Detail

quadTree

protected QuadTree quadTree

count

protected int count

getTimeOfDayCounter

private static int getTimeOfDayCounter

glut

gl4java.utils.glut.GLUTFunc glut

glc

public gl4java.GLCapabilities glc

ToDrawQ

java.util.TreeSet ToDrawQ
Contains cells to draw


winsize

int[] winsize
Size of the window to draw the AccordionDrawer in winsize[0] = w(idth) winsize[0] = h(eight)


nameStuckVal

protected int nameStuckVal

dynamicStart

protected long dynamicStart

continueStart

protected long continueStart

dynamicTime

protected long dynamicTime

now

protected long now

frameNum

protected int frameNum

changedMarksFrame

public int changedMarksFrame

rendermode

public boolean rendermode

backgroundColor

java.awt.Color backgroundColor

labelColor

java.awt.Color labelColor

labelBackColor

java.awt.Color labelBackColor

labelHiColor

java.awt.Color labelHiColor

labelBackHiColor

java.awt.Color labelBackHiColor

rubberbandColor

protected java.awt.Color rubberbandColor

backplane

float backplane

hiliteplane

protected float hiliteplane

labelplane

float labelplane

labelbgplane

float labelbgplane

gridplane

protected float gridplane

objplane

protected float objplane

interactionplane

public float interactionplane

focusCell

public GridCell focusCell

defaultFocusCell

public GridCell defaultFocusCell

xlenspixels

protected float[][] xlenspixels
store lens pixel


ylenspixels

protected float[][] ylenspixels

zoompixels

protected float[] zoompixels

lens

public Lens lens

oldLens

public Lens oldLens

doLensView

protected boolean doLensView

mouseChanged

protected boolean mouseChanged

justPressed

protected boolean justPressed

doZoom

protected boolean doZoom

rootCell

public GridCell rootCell
The root GridCell that contains all others. It is at level (gridDepth-1). rootCell = grids[gridDepth-1][0][0]


drawnLabels

protected java.util.ArrayList drawnLabels
gridSize[xy][level] is the size (#of GridCells) of the quadtree structure (the grid) in the xy dimension at level "level"


gridDepth

protected int gridDepth

bottomSize

protected int[] bottomSize
How many cells there are in the bottom level of the quadtree, indexed by X and Y.


maxUsed

protected GridCell[] maxUsed

splitCells

GridCell[][] splitCells
Store a single canonical cell for each moveable line that can be used to change the split position for that line. This array is *not* stored in sorted order, see its companion data structure sortedCells[][]. See buildSplitCells for more information on this field. (Also indexed by X and Y.)


sortedCells

SortedCell[][] sortedCells
Companion data structure for splitCells[][] that has cells in sorted order in X and Y. Each SortedCell contains the index of the corresponding cell in the splitCells array.


splitCellSize

int[] splitCellSize
Size of splitCell 2D array


splits

float[][] splits
Stores actual split positions for a moveable line as relative numbers in the cell coordinate system (that is, between 0.0 and 1.0). Each GridCell has a splitIndex field that is an index into this array. (Also indexed by X and Y.)


sideBuffer

protected int sideBuffer

minStuckIndex

int[] minStuckIndex

maxStuckIndex

int[] maxStuckIndex

minContextInside

protected float minContextInside
minContext is the percentage of screen area guaranteed for smooshed things


minContextPeriphery

protected float minContextPeriphery

shrinkFactor

protected float shrinkFactor
How much to shrink a cell-to-cell area if it is smaller than 2*inflateIncr;


maxStuckVal

protected float[] maxStuckVal
maxStuckVal is the "stuck to the border" value for edge cells. Must be bigger then maxSplitVal


minStuckVal

protected float[] minStuckVal
minStuckVal is the "stuck to the border" value for edge cells. Must be smaller than minSplitVal.


X

public static final int X
See Also:
Constant Field Values

Y

public static final int Y
See Also:
Constant Field Values

toMove

public java.util.Vector toMove

floatbuffer

boolean floatbuffer

keepDrawing

public boolean keepDrawing

keepMoving

public boolean keepMoving

flashBoxWidth

protected float flashBoxWidth

doBox

protected boolean doBox

flashBox

protected InteractionBox flashBox

flashBoxOld

protected InteractionBox flashBoxOld

flashGeom

protected CellGeom flashGeom

flashGeomOld

protected CellGeom flashGeomOld

flashCol

protected java.awt.Color flashCol

flashX

protected int flashX

flashY

protected int flashY

flashXOld

protected int flashXOld

flashYOld

protected int flashYOld

showalg

public boolean showalg

colorgrid

public boolean colorgrid

biggrid

public boolean biggrid

nogrid

public boolean nogrid

nogeoms

public boolean nogeoms

noflash

public boolean noflash

expandleaves

public int expandleaves

showdiffs

public boolean showdiffs

linethickness

public float linethickness

drawlabels

public boolean drawlabels

labelposright

public boolean labelposright

labeldrawback

public boolean labeldrawback

labelpopup

public boolean labelpopup

dimcolors

public boolean dimcolors

dimbrite

public boolean dimbrite

linkednav

public boolean linkednav

labeltransp

public boolean labeltransp

cacherange

public boolean cacherange

checktime

public boolean checktime

stoprendering

public boolean stoprendering

dumpstats

public boolean dumpstats

horiz

public boolean horiz

drawsplits

public boolean drawsplits

counter

public int counter

draworder

public int draworder
Order to draw elements in scene. BRUTEFORCE / 0: start from tree root, doesn't support highlighting 2: FROMFOCUSCELL / 2: start from focusCell, add attached objects parents/children to queue


BRUTEFORCE

public static final int BRUTEFORCE
See Also:
Constant Field Values

FROMFOCUSCELL

public static final int FROMFOCUSCELL
See Also:
Constant Field Values

guarvis

public boolean guarvis
Whether to guarantee visibility. Default true.


mouseDragging

protected boolean mouseDragging

transitionAnimating

private boolean transitionAnimating

doingFlash

protected boolean doingFlash

numAnimSteps

int numAnimSteps

inflateIncr

protected float inflateIncr

minCellDims

int[] minCellDims

key

int key

stats

protected java.io.PrintWriter stats

numCellsDrawnThisFrame

int numCellsDrawnThisFrame

leftRight

public int leftRight

upDown

public int upDown

LEFT

public final int LEFT

RIGHT

public final int RIGHT

UP

public final int UP

DOWN

public final int DOWN

xInterval

public int[] xInterval

yInterval

public int[] yInterval
Constructor Detail

AccordionDrawer

public AccordionDrawer(int w,
                       int h)
Method Detail

close

public void close()
clear all the data structures initiated in AD, called when tree(s) get deleted from AD

See Also:
TreeJuxtaposer.TreeJuxtaposer.deleteTree

finalize

protected void finalize()
                 throws java.lang.Throwable
Overrides:
finalize in class gl4java.awt.GLCanvas
java.lang.Throwable

setKey

public void setKey(int i)

getKey

public int getKey()

getGraphicsStuff

public java.lang.Object getGraphicsStuff()

doCleanup

public void doCleanup()
Overrides:
doCleanup in class gl4java.awt.GLCanvas

init

public void init()
Overrides:
init in class gl4java.awt.GLCanvas

display

public void display()
Specified by:
display in interface gl4java.drawable.GLDrawable
Overrides:
display in class gl4java.awt.GLCanvas

reshape

public void reshape(int w,
                    int h)
Reshapes the drawing area to new width w and height h in pixels

Overrides:
reshape in class gl4java.awt.GLCanvas
See Also:
GridCell

redraw

protected void redraw()
Redraws the entire canvas

See Also:
GridCell

requestRedraw

public void requestRedraw()
Redraw immediately, do not continue filling in details.


requestRedrawEventually

public void requestRedrawEventually()
Enqueue a redraw request, but don't stop what we're in the middle of doing.


setDoubleBuffer

public void setDoubleBuffer(boolean value)

getDoubleBuffer

public boolean getDoubleBuffer()

startNewFrame

void startNewFrame()
Starts a new frame and draws the contents of the AccordionDrawer (enclosed in the rootCell) in a new frame.

See Also:
GridCell

continueFrame

void continueFrame()

doDrawFrame

void doDrawFrame()
Draws the contents of the AccordionDrawer (enclosed in the rootCell) in a new frame. First, move grid lines during animated transitions. Then all objects that are in the ToDrawQ are drawn in decreasing order of size as time allows.

See Also:
GridCell

doShowAlg

private void doShowAlg(GridCell c)

clearLens

public void clearLens()

doLens

public void doLens()
render lens in a special mode readPixels form the front buffer in x and y direction to avoid flickering and overwrite only diffPos in x and y to render the lens do a twolinesmove with picked cells render the solution in a small viewport in the back buffer read pixels of this viewport switch back in the original viewport draw stored pixels TODO: x-distortion, check boundaries, flowmenu like zooming


doFrameMove

private void doFrameMove()
Helper function for doDrawFrame to move grid lines during animated transitions. First, all objects that are moved (i.e., GridCells resized) go through a gradual animated transition. Of course the rest of the cells are all shrunk or expanded by the same ratio to accomodate these transitions.

See Also:
GridCell

setDynamicFrameTime

public void setDynamicFrameTime(long milliseconds)

getFrameNum

public int getFrameNum()

getBackgroundColor

public java.awt.Color getBackgroundColor()

getLabelColor

public java.awt.Color getLabelColor()

getLabelBackColor

public java.awt.Color getLabelBackColor()

getLabelHiColor

public java.awt.Color getLabelHiColor()

getLabelBackHiColor

public java.awt.Color getLabelBackHiColor()

getRubberbandColor

public java.awt.Color getRubberbandColor()

setBackgroundColor

public void setBackgroundColor(java.awt.Color backgroundColor)

setLabelColor

public void setLabelColor(java.awt.Color labelColor)

setLabelBackColor

public void setLabelBackColor(java.awt.Color labelBackColor)

setLabelHiColor

public void setLabelHiColor(java.awt.Color labelHiColor)

setLabelBackHiColor

public void setLabelBackHiColor(java.awt.Color labelBackHiColor)

setRubberbandColor

public void setRubberbandColor(java.awt.Color rubberbandColor)

getMinCellSize

public int getMinCellSize(int xy)

setMinCellSize

public void setMinCellSize(int size,
                           int xy)

setNumAnimSteps

public void setNumAnimSteps(int numAnimSteps)

getNumAnimSteps

public int getNumAnimSteps()

setInflateIncr

public void setInflateIncr(float value)

getInflateIncr

public float getInflateIncr()

setFlash

public void setFlash(CellGeom cg,
                     java.awt.Color col,
                     int x,
                     int y,
                     boolean doBox)

setHighlightPlane

protected void setHighlightPlane(float w)

resetHighlightPlane

protected void resetHighlightPlane()

setObjectPlane

protected void setObjectPlane(float w)

resetObjectPlane

protected void resetObjectPlane()

setFocusCell

public void setFocusCell(GridCell fc)

getBigGrid

public boolean getBigGrid()

setBigGrid

public void setBigGrid(boolean on)

toggleBigGrid

public void toggleBigGrid()

getCacheRange

public boolean getCacheRange()

setCacheRange

public void setCacheRange(boolean on)

toggleCacheRange

public void toggleCacheRange()

getCheckTime

public boolean getCheckTime()

setCheckTime

public void setCheckTime(boolean on)

toggleCheckTime

public void toggleCheckTime()

getColorGrid

public boolean getColorGrid()

setColorGrid

public void setColorGrid(boolean on)

toggleColorGrid

public void toggleColorGrid()

getDimBrite

public boolean getDimBrite()

setDimBrite

public void setDimBrite(boolean on)

toggleDimBrite

public void toggleDimBrite()

getDimColors

public boolean getDimColors()

setDimColors

public void setDimColors(boolean on)

toggleDimColors

public void toggleDimColors()

getDrawLabels

public boolean getDrawLabels()

setDrawLabels

public void setDrawLabels(boolean on)

toggleDrawLabels

public void toggleDrawLabels()

getDrawOrder

public int getDrawOrder()

setDrawOrder

public void setDrawOrder(int order)

toggleDrawOrder

public void toggleDrawOrder()

getDumpStats

public boolean getDumpStats()

setDumpStats

public void setDumpStats(boolean on)

toggleDumpStats

public void toggleDumpStats()

getExpandLeaves

public int getExpandLeaves()

toggleExpandLeaves

public void toggleExpandLeaves()

setExpandLeaves

public void setExpandLeaves(int expand)

getGuarVis

public boolean getGuarVis()

setGuarVis

public void setGuarVis(boolean on)

toggleGuarVis

public void toggleGuarVis()

getLabelDrawBack

public boolean getLabelDrawBack()

setLabelDrawBack

public void setLabelDrawBack(boolean on)

toggleLabelDrawBack

public void toggleLabelDrawBack()

getLabelPopup

public boolean getLabelPopup()

setLabelPopup

public void setLabelPopup(boolean on)

toggleLabelPopup

public void toggleLabelPopup()

getLabelPosRight

public boolean getLabelPosRight()

setLabelPosRight

public void setLabelPosRight(boolean on)

toggleLabelPosRight

public void toggleLabelPosRight()

getLabelTransp

public boolean getLabelTransp()

toggleLabelTransp

public void toggleLabelTransp()

setLabelTransp

public void setLabelTransp(boolean on)

getLineThickness

public float getLineThickness()

setLineThickness

public void setLineThickness(float thickness)

increaseLineThickness

public void increaseLineThickness()

decreaseLineThickness

public void decreaseLineThickness()

getLinkedNav

public boolean getLinkedNav()

setLinkedNav

public void setLinkedNav(boolean on)

toggleLinkedNav

public void toggleLinkedNav()

getNoFlash

public boolean getNoFlash()

setNoFlash

public void setNoFlash(boolean on)

toggleNoFlash

public void toggleNoFlash()

getNoGeoms

public boolean getNoGeoms()

setNoGeoms

public void setNoGeoms(boolean on)

toggleNoGeoms

public void toggleNoGeoms()

getNoGrid

public boolean getNoGrid()

setNoGrid

public void setNoGrid(boolean on)

toggleNoGrid

public void toggleNoGrid()

getShowAlg

public boolean getShowAlg()

setShowAlg

public void setShowAlg(boolean on)

toggleShowAlg

public void toggleShowAlg()

reset

public void reset()

changedMarks

public void changedMarks()

clearQueue

public void clearQueue()

addCellToQueue

public void addCellToQueue(GridCell cell)

findEnclosingCell

public GridCell findEnclosingCell(int arow,
                                  int acol,
                                  int brow,
                                  int bcol)

buildGrids

protected void buildGrids()
Builds the GridCell (quadtree) hierarchy Creates the level 1 through level n grids from the bottom up. Assumes the bottom (level 0) grid has already been built, by some subclass that knows about the particular data that is being drawn.

Just like the bottom grid, instantiate GridCells as sparsely as possible: only create a cell if it would have at least one non-null kidCell. Many GridCells will be null, so we save a lot of memory by only instantiating as needed instead of just creating the entire dense grid as a 3D array. Moreover, many algorithms depend on the sparseness property: for example, the split position assignments in buildSplitCells.

See Also:
GridCell

buildSplitCells

private void buildSplitCells()
Builds the splitCells data structure. Each GridCell is bounded on four sides (min/max, X/Y) by movable lines.

The naive thing to do would be to simply store these positions in absolute coordinates in two arrays (one for X, one for Y). Although that would allow O(constant) lookup, it could require O(n) update time for typical navigation activity. When the user wants to expand one cell, the absolute position of many or all of the other cells might need to change.

Instead, we need to store them hierarchically with *relative* positions: each of these lines corresponds to the "split position" for a GridCell at some higher level in the quadtree hierarchy. These relative split positions are stored in the cell coordinate system, ranging from 0.0 on one side to 1.0 on the other. With this approach it will never take more than O(log n) time to update. We accept the penalty that lookup will also take O(log n) time. We already have a hierarchical structure lying around: the GridCell quadtree itself. We thus store four pointers, one for each line, each to a GridCell further up in the hierarchy whose split corresponds to the boundary of this particular cell.

The actual storage is still in two arrays, splits[][], but these arrays contain relative values and they are accessed through a splitIndex field in each cell (again, for each of the four lines). There are many cells that share the same split. For example, all the cells in the same row and same level share the same minimum and maximum Y values. All these cells should have the same splitIndex[Y] value. For each row/level or column/level combination, we find the first non-null cell, assign it the next index number, and use that number for all the other cells in that category.

The total number of splits that we need to store for each direction is exactly the size of the bottom level 0 grid cell array in that direction. All higher level cells share boundary lines with some level 0 cell. We also need two more splits in each direction: one each for special minimum and maximum values.

We need to handle cells on the periphery as a special degenerate case, with a split that's "stuck" to the edge. We make sure we have such empty cells all the way around the outside, so that there's a clean way to handle all selection and motion using the split of a cell whether or not we're at a boundary. We allocate an extra two split array element for this min and max case.

See Also:
GridCell

buildQuadTreeCellLines

private void buildQuadTreeCellLines()
Builds the minLine[] and maxLine[] arrays. A GridCell has four pointers, each to the canonical GridCell whose split corresponds to each of the four boundary lines.

See Also:
GridCell.minLine, GridCell.maxLine

buildSortedArrays

private void buildSortedArrays()
Builds sorted arrays to allow binary search on splitCells data Use the array elements (SortedCells) to look up the index in the splitCells array.

See Also:
SortedCell

expandLeaves

public void expandLeaves(int grow)

resetGridUniform

public void resetGridUniform()

resizeRectangle

public void resizeRectangle(int numSteps,
                            GridCell[] minCell,
                            GridCell[] maxCell,
                            float[] minBoundaryW,
                            float[] maxBoundaryW)
Creates smooth transitions for resizing an area determined by the splitPos's of minCell[] and maxCell[] to a rectanble determined by minBoundaryW[] and maxBoundaryW[]. Assumes minCell is top left corner and maxCell is bottom right corner.

See Also:
AccordionTreeDrawerFinal

twoLinesMoveInsideFixedStrip

public void twoLinesMoveInsideFixedStrip(int xy,
                                         GridCell aCell,
                                         float aValue,
                                         GridCell bCell,
                                         float bValue,
                                         GridCell aBoundary,
                                         GridCell bBoundary)
Moves the splitPos of GridCells a and b to absolute position aValue and bValue, respectively. aBoundary and bBoundary define a strip: scaling happens within the strip, Everything outside the strip remains as is. We expect aValue <= bValue

Parameters:
xy - X or Y
aValue - Place to move GridCell a's splitPos, in absolute window coordinates.
See Also:
GridCell

twoLinesMove

public void twoLinesMove(int xy,
                         GridCell a,
                         float aValue,
                         GridCell b,
                         float bValue)
Moves the splitPos of GridCells a and b to absolute position aValue and bValue, respectively. We expect aValue <= bValue

Parameters:
xy - X or Y
aValue - Place to move GridCell a's splitPos, in absolute window coordinates.
See Also:
GridCell

lineMove

public void lineMove(int xy,
                     GridCell a,
                     float value,
                     boolean maintainStuck)
Moves the splitPos of GridCell a to absolute position value in window coordinates.

See Also:
GridCell

resizeArea

public void resizeArea(int areaStartX,
                       int areaStartY,
                       int areaEndX,
                       int areaEndY,
                       boolean grow,
                       int numSteps)
Resizes the area delineated by areaStartX, areaStartY, areaEndX, areaEndY, by the relative increment inflateIncr. Grow area if grow is true, shrink otherwise.

See Also:
GridCell

resizeFromCellToCell

public void resizeFromCellToCell(GridCell a,
                                 GridCell b,
                                 boolean grow,
                                 int numSteps,
                                 int xy)
Resizes the area delineated by GridCells a and b by the relative increment inflateIncr. Grow area if grow is true, shrink otherwise. IMPORTANT NOTE: This method uses the minLine and maxLine of a and b which is different from resizeRectangle which requires four cells whose splitPos's define the borders of the rectangle. Hence the funny translation of cells from one to the other

See Also:
GridCell

getCell

GridCell getCell(int level,
                 int i,
                 int j,
                 int xy)

setSplit

public void setSplit(GridCell a,
                     float val,
                     int xy)

s2w

public float s2w(int s,
                 int xy)
Converts pixel coordinates into relative "fractional" coordinates in [0,1]


s2w

public float s2w(float s,
                 int xy)

w2s

public int w2s(float w,
               int xy)
Converts "fractional" coordinates in [0,1] into pixel coordinates


getWinMaxX

public int getWinMaxX()

getWinMaxY

public int getWinMaxY()

getWinMax

public int getWinMax(int xy)

pickCell

public GridCell pickCell(int x,
                         int y)

pickCellClosestTo

public GridCell pickCellClosestTo(int spot,
                                  int xy,
                                  boolean wantMax)
Pick closest cell in either horizontal *or* vertical direction.

Parameters:
spot - Target location in screen coordinates
xy - Orientation to use, either X or Y (enumerated types).

setCellHighlight

public void setCellHighlight(GridCell c,
                             boolean on)

setColorGL

public void setColorGL(java.awt.Color col)

drawStart

public boolean drawStart()

drawEnd

public void drawEnd()

pickAttached

public abstract java.util.ArrayList pickAttached(int x,
                                                 int y)

initCells

public abstract void initCells()

getColorsForGridCell

public abstract java.util.ArrayList getColorsForGridCell(GridCell c,
                                                         int objkey)

doFlash

public abstract void doFlash()

drawNextFancy

public abstract void drawNextFancy(CellGeom g)

drawPreContFrame

protected abstract void drawPreContFrame()

drawPreNewFrame

protected abstract void drawPreNewFrame()

drawPostFrame

protected abstract void drawPostFrame()

drawPostScene

protected abstract void drawPostScene()

drawBruteForce

protected abstract void drawBruteForce()

seedQueue

protected abstract void seedQueue()

subpixelDraw

public abstract void subpixelDraw(GridCell c)

getMinCellDims

public int getMinCellDims(int xy)
Returns:

setMinCellDims

public void setMinCellDims(int xy,
                           int is)
Parameters:
is -

getObjplane

public float getObjplane()
Returns:

getLabelplane

public float getLabelplane()
Returns:

isDoingFlash

public boolean isDoingFlash()
Returns:

getWinsize

public int getWinsize(int xy)
Returns:

setDrawSplits

public void setDrawSplits(boolean on)

toggleDrawSplits

public void toggleDrawSplits()

getDrawnLabels

public java.util.ArrayList getDrawnLabels()
Returns:

createBoxFromCells

protected InteractionBox createBoxFromCells(int[] dragStart,
                                            int[] dragEnd)
Make an InteractionBox from the GridCells nearest to the box of the mousedrag. Expects dragStart[X]/Y, dragEnd[X]/Y to be set.


createRectFromPick

protected InteractionBox createRectFromPick(int[] dragStart,
                                            int[] dragEnd,
                                            InteractionBox baseBox)
Make an InteractionBox from the GridCells nearest to the box of the mousedrag. Expects dragStart[X]/Y, dragEnd[X]/Y to be set.