package OpenGL;

$Version = 0.4;

# file OpenGL.pm is generated by OpenGL.pm.gen 

require Exporter;
require DynaLoader;

@ISA = qw(Exporter DynaLoader);
@EXPORT = qw(
	glpOpenWindow
	glXSwapBuffers 
	XPending
	glpXNextEvent
	glpXQueryPointer

	glpReadTex

	glpClipPlane
	glpGetClipPlane
	glpLoadMatrixf glpLoadMatrixd glpMultMatrixf glpMultMatrixd

	gluOrtho2D
	gluPerspective
	gluLookAt

	glAccum
	glAlphaFunc
	glBegin
	glBitmap
	glBlendColorEXT
	glBlendEquationEXT
	glBlendFunc
	glCallList
	glCallLists
	glClear
	glClearAccum
	glClearColor
	glClearDepth
	glClearIndex
	glClearStencil
	glClipPlane
	glColor3b
	glColor3bv
	glColor3d
	glColor3dv
	glColor3f
	glColor3fv
	glColor3i
	glColor3iv
	glColor3s
	glColor3sv
	glColor3ub
	glColor3ubv
	glColor3ui
	glColor3uiv
	glColor3us
	glColor3usv
	glColor4b
	glColor4bv
	glColor4d
	glColor4dv
	glColor4f
	glColor4fv
	glColor4i
	glColor4iv
	glColor4s
	glColor4sv
	glColor4ub
	glColor4ubv
	glColor4ui
	glColor4uiv
	glColor4us
	glColor4usv
	glColorMask
	glColorMaterial
	glConvolutionFilter1DEXT
	glConvolutionFilter2DEXT
	glConvolutionParameterfEXT
	glConvolutionParameterfvEXT
	glConvolutionParameteriEXT
	glConvolutionParameterivEXT
	glCopyConvolutionFilter1DEXT
	glCopyConvolutionFilter2DEXT
	glCopyPixels
	glCullFace
	glDeleteLists
	glDepthFunc
	glDepthMask
	glDepthRange
	glDetailTexFuncSGIS
	glDisable
	glDrawBuffer
	glDrawPixels
	glEdgeFlag
	glEdgeFlagv
	glEnable
	glEnd
	glEndList
	glEvalCoord1d
	glEvalCoord1dv
	glEvalCoord1f
	glEvalCoord1fv
	glEvalCoord2d
	glEvalCoord2dv
	glEvalCoord2f
	glEvalCoord2fv
	glEvalMesh1
	glEvalMesh2
	glEvalPoint1
	glEvalPoint2
	glFeedbackBuffer
	glFinish
	glFlush
	glFogf
	glFogfv
	glFogi
	glFogiv
	glFrontFace
	glFrustum
	glGenLists
	glGetBooleanv
	glGetClipPlane
	glGetConvolutionFilterEXT
	glGetConvolutionParameterfvEXT
	glGetConvolutionParameterivEXT
	glGetDetailTexFuncSGIS
	glGetDoublev
	glGetError
	glGetFloatv
	glGetHistogramEXT
	glGetHistogramParameterfvEXT
	glGetHistogramParameterivEXT
	glGetIntegerv
	glGetLightfv
	glGetLightiv
	glGetMapdv
	glGetMapfv
	glGetMapiv
	glGetMaterialfv
	glGetMaterialiv
	glGetMinmaxEXT
	glGetMinmaxParameterfvEXT
	glGetMinmaxParameterivEXT
	glGetPixelMapfv
	glGetPixelMapuiv
	glGetPixelMapusv
	glGetPolygonStipple
	glGetSeparableFilterEXT
	glGetSharpenTexFuncSGIS
	glGetTexEnvfv
	glGetTexEnviv
	glGetTexGendv
	glGetTexGenfv
	glGetTexGeniv
	glGetTexImage
	glGetTexLevelParameterfv
	glGetTexLevelParameteriv
	glGetTexParameterfv
	glGetTexParameteriv
	glHint
	glHistogramEXT
	glIndexMask
	glIndexd
	glIndexdv
	glIndexf
	glIndexfv
	glIndexi
	glIndexiv
	glIndexs
	glIndexsv
	glInitNames
	glIsEnabled
	glIsList
	glLightModelf
	glLightModelfv
	glLightModeli
	glLightModeliv
	glLightf
	glLightfv
	glLighti
	glLightiv
	glLineStipple
	glLineWidth
	glListBase
	glLoadIdentity
	glLoadMatrixd
	glLoadMatrixf
	glLoadName
	glLogicOp
	glMap1d
	glMap1f
	glMap2d
	glMap2f
	glMapGrid1d
	glMapGrid1f
	glMapGrid2d
	glMapGrid2f
	glMaterialf
	glMaterialfv
	glMateriali
	glMaterialiv
	glMatrixMode
	glMinmaxEXT
	glMultMatrixd
	glMultMatrixf
	glNewList
	glNormal3b
	glNormal3bv
	glNormal3d
	glNormal3dv
	glNormal3f
	glNormal3fv
	glNormal3i
	glNormal3iv
	glNormal3s
	glNormal3sv
	glOrtho
	glPassThrough
	glPixelMapfv
	glPixelMapuiv
	glPixelMapusv
	glPixelStoref
	glPixelStorei
	glPixelTransferf
	glPixelTransferi
	glPixelZoom
	glPointSize
	glPolygonMode
	glPolygonOffsetEXT
	glPolygonStipple
	glPopAttrib
	glPopMatrix
	glPopName
	glPushAttrib
	glPushMatrix
	glPushName
	glRasterPos2d
	glRasterPos2dv
	glRasterPos2f
	glRasterPos2fv
	glRasterPos2i
	glRasterPos2iv
	glRasterPos2s
	glRasterPos2sv
	glRasterPos3d
	glRasterPos3dv
	glRasterPos3f
	glRasterPos3fv
	glRasterPos3i
	glRasterPos3iv
	glRasterPos3s
	glRasterPos3sv
	glRasterPos4d
	glRasterPos4dv
	glRasterPos4f
	glRasterPos4fv
	glRasterPos4i
	glRasterPos4iv
	glRasterPos4s
	glRasterPos4sv
	glReadBuffer
	glReadPixels
	glRectd
	glRectdv
	glRectf
	glRectfv
	glRecti
	glRectiv
	glRects
	glRectsv
	glRenderMode
	glResetHistogramEXT
	glResetMinmaxEXT
	glRotated
	glRotatef
	glSampleMaskSGIS
	glSamplePatternSGIS
	glScaled
	glScalef
	glScissor
	glSelectBuffer
	glSeparableFilter2DEXT
	glShadeModel
	glSharpenTexFuncSGIS
	glStencilFunc
	glStencilMask
	glStencilOp
	glTagSampleBufferSGIX
	glTexCoord1d
	glTexCoord1dv
	glTexCoord1f
	glTexCoord1fv
	glTexCoord1i
	glTexCoord1iv
	glTexCoord1s
	glTexCoord1sv
	glTexCoord2d
	glTexCoord2dv
	glTexCoord2f
	glTexCoord2fv
	glTexCoord2i
	glTexCoord2iv
	glTexCoord2s
	glTexCoord2sv
	glTexCoord3d
	glTexCoord3dv
	glTexCoord3f
	glTexCoord3fv
	glTexCoord3i
	glTexCoord3iv
	glTexCoord3s
	glTexCoord3sv
	glTexCoord4d
	glTexCoord4dv
	glTexCoord4f
	glTexCoord4fv
	glTexCoord4i
	glTexCoord4iv
	glTexCoord4s
	glTexCoord4sv
	glTexEnvf
	glTexEnvfv
	glTexEnvi
	glTexEnviv
	glTexGend
	glTexGendv
	glTexGenf
	glTexGenfv
	glTexGeni
	glTexGeniv
	glTexImage1D
	glTexImage2D
	glTexImage3DEXT
	glTexParameterf
	glTexParameterfv
	glTexParameteri
	glTexParameteriv
	glTexSubImage1DEXT
	glTexSubImage2DEXT
	glTexSubImage3DEXT
	glTranslated
	glTranslatef
	glVertex2d
	glVertex2dv
	glVertex2f
	glVertex2fv
	glVertex2i
	glVertex2iv
	glVertex2s
	glVertex2sv
	glVertex3d
	glVertex3dv
	glVertex3f
	glVertex3fv
	glVertex3i
	glVertex3iv
	glVertex3s
	glVertex3sv
	glVertex4d
	glVertex4dv
	glVertex4f
	glVertex4fv
	glVertex4i
	glVertex4iv
	glVertex4s
	glVertex4sv
	glViewport

	X_PROTOCOL
	X_PROTOCOL_REVISION
	NoEventMask
	KeyPressMask
	KeyReleaseMask
	ButtonPressMask
	ButtonReleaseMask
	EnterWindowMask
	LeaveWindowMask
	PointerMotionMask
	PointerMotionHintMask
	Button1MotionMask
	Button2MotionMask
	Button3MotionMask
	Button4MotionMask
	Button5MotionMask
	ButtonMotionMask
	KeymapStateMask
	ExposureMask
	VisibilityChangeMask
	StructureNotifyMask
	ResizeRedirectMask
	SubstructureNotifyMask
	SubstructureRedirectMask
	FocusChangeMask
	PropertyChangeMask
	ColormapChangeMask
	OwnerGrabButtonMask
	KeyPress
	KeyRelease
	ButtonPress
	ButtonRelease
	MotionNotify
	EnterNotify
	LeaveNotify
	FocusIn
	FocusOut
	KeymapNotify
	Expose
	GraphicsExpose
	NoExpose
	VisibilityNotify
	CreateNotify
	DestroyNotify
	UnmapNotify
	MapNotify
	MapRequest
	ReparentNotify
	ConfigureNotify
	ConfigureRequest
	GravityNotify
	ResizeRequest
	CirculateNotify
	CirculateRequest
	PropertyNotify
	SelectionClear
	SelectionRequest
	SelectionNotify
	ColormapNotify
	ClientMessage
	MappingNotify
	LASTEvent
	ShiftMask
	LockMask
	ControlMask
	Mod1Mask
	Mod2Mask
	Mod3Mask
	Mod4Mask
	Mod5Mask
	ShiftMapIndex
	LockMapIndex
	ControlMapIndex
	Mod1MapIndex
	Mod2MapIndex
	Mod3MapIndex
	Mod4MapIndex
	Mod5MapIndex
	Button1Mask
	Button2Mask
	Button3Mask
	Button4Mask
	Button5Mask
	AnyModifier
	Button1
	Button2
	Button3
	Button4
	Button5
	NotifyNormal
	NotifyGrab
	NotifyUngrab
	NotifyWhileGrabbed
	NotifyHint
	NotifyAncestor
	NotifyVirtual
	NotifyInferior
	NotifyNonlinear
	NotifyNonlinearVirtual
	NotifyPointer
	NotifyPointerRoot
	NotifyDetailNone
	VisibilityUnobscured
	VisibilityPartiallyObscured
	VisibilityFullyObscured
	PlaceOnTop
	PlaceOnBottom
	FamilyInternet
	FamilyDECnet
	FamilyChaos
	PropertyNewValue
	PropertyDelete
	ColormapUninstalled
	ColormapInstalled
	GrabModeSync
	GrabModeAsync
	GrabSuccess
	AlreadyGrabbed
	GrabInvalidTime
	GrabNotViewable
	GrabFrozen
	AsyncPointer
	SyncPointer
	ReplayPointer
	AsyncKeyboard
	SyncKeyboard
	ReplayKeyboard
	AsyncBoth
	SyncBoth
	StaticGray
	GrayScale
	StaticColor
	PseudoColor
	TrueColor
	DirectColor

	GL_CURRENT_BIT
	GL_POINT_BIT
	GL_LINE_BIT
	GL_POLYGON_BIT
	GL_POLYGON_STIPPLE_BIT
	GL_PIXEL_MODE_BIT
	GL_LIGHTING_BIT
	GL_FOG_BIT
	GL_DEPTH_BUFFER_BIT
	GL_ACCUM_BUFFER_BIT
	GL_STENCIL_BUFFER_BIT
	GL_VIEWPORT_BIT
	GL_TRANSFORM_BIT
	GL_ENABLE_BIT
	GL_COLOR_BUFFER_BIT
	GL_HINT_BIT
	GL_EVAL_BIT
	GL_LIST_BIT
	GL_TEXTURE_BIT
	GL_SCISSOR_BIT
	GL_ALL_ATTRIB_BITS
	GL_FALSE
	GL_TRUE
	GL_POINTS
	GL_LINES
	GL_LINE_LOOP
	GL_LINE_STRIP
	GL_TRIANGLES
	GL_TRIANGLE_STRIP
	GL_TRIANGLE_FAN
	GL_QUADS
	GL_QUAD_STRIP
	GL_POLYGON
	GL_ACCUM
	GL_LOAD
	GL_RETURN
	GL_MULT
	GL_ADD
	GL_NEVER
	GL_LESS
	GL_EQUAL
	GL_LEQUAL
	GL_GREATER
	GL_NOTEQUAL
	GL_GEQUAL
	GL_ALWAYS
	GL_ZERO
	GL_ONE
	GL_SRC_COLOR
	GL_ONE_MINUS_SRC_COLOR
	GL_SRC_ALPHA
	GL_ONE_MINUS_SRC_ALPHA
	GL_DST_ALPHA
	GL_ONE_MINUS_DST_ALPHA
	GL_DST_COLOR
	GL_ONE_MINUS_DST_COLOR
	GL_SRC_ALPHA_SATURATE
	GL_NONE
	GL_FRONT_LEFT
	GL_FRONT_RIGHT
	GL_BACK_LEFT
	GL_BACK_RIGHT
	GL_FRONT
	GL_BACK
	GL_LEFT
	GL_RIGHT
	GL_FRONT_AND_BACK
	GL_AUX0
	GL_AUX1
	GL_AUX2
	GL_AUX3
	GL_NO_ERROR
	GL_INVALID_ENUM
	GL_INVALID_VALUE
	GL_INVALID_OPERATION
	GL_STACK_OVERFLOW
	GL_STACK_UNDERFLOW
	GL_OUT_OF_MEMORY
	GL_2D
	GL_3D
	GL_3D_COLOR
	GL_3D_COLOR_TEXTURE
	GL_4D_COLOR_TEXTURE
	GL_PASS_THROUGH_TOKEN
	GL_POINT_TOKEN
	GL_LINE_TOKEN
	GL_POLYGON_TOKEN
	GL_BITMAP_TOKEN
	GL_DRAW_PIXEL_TOKEN
	GL_COPY_PIXEL_TOKEN
	GL_LINE_RESET_TOKEN
	GL_EXP
	GL_EXP2
	GL_CW
	GL_CCW
	GL_COEFF
	GL_ORDER
	GL_DOMAIN
	GL_PIXEL_MAP_I_TO_I
	GL_PIXEL_MAP_S_TO_S
	GL_PIXEL_MAP_I_TO_R
	GL_PIXEL_MAP_I_TO_G
	GL_PIXEL_MAP_I_TO_B
	GL_PIXEL_MAP_I_TO_A
	GL_PIXEL_MAP_R_TO_R
	GL_PIXEL_MAP_G_TO_G
	GL_PIXEL_MAP_B_TO_B
	GL_PIXEL_MAP_A_TO_A
	GL_CURRENT_COLOR
	GL_CURRENT_INDEX
	GL_CURRENT_NORMAL
	GL_CURRENT_TEXTURE_COORDS
	GL_CURRENT_RASTER_COLOR
	GL_CURRENT_RASTER_INDEX
	GL_CURRENT_RASTER_TEXTURE_COORDS
	GL_CURRENT_RASTER_POSITION
	GL_CURRENT_RASTER_POSITION_VALID
	GL_CURRENT_RASTER_DISTANCE
	GL_POINT_SMOOTH
	GL_POINT_SIZE
	GL_POINT_SIZE_RANGE
	GL_POINT_SIZE_GRANULARITY
	GL_LINE_SMOOTH
	GL_LINE_WIDTH
	GL_LINE_WIDTH_RANGE
	GL_LINE_WIDTH_GRANULARITY
	GL_LINE_STIPPLE
	GL_LINE_STIPPLE_PATTERN
	GL_LINE_STIPPLE_REPEAT
	GL_LIST_MODE
	GL_MAX_LIST_NESTING
	GL_LIST_BASE
	GL_LIST_INDEX
	GL_POLYGON_MODE
	GL_POLYGON_SMOOTH
	GL_POLYGON_STIPPLE
	GL_EDGE_FLAG
	GL_CULL_FACE
	GL_CULL_FACE_MODE
	GL_FRONT_FACE
	GL_LIGHTING
	GL_LIGHT_MODEL_LOCAL_VIEWER
	GL_LIGHT_MODEL_TWO_SIDE
	GL_LIGHT_MODEL_AMBIENT
	GL_SHADE_MODEL
	GL_COLOR_MATERIAL_FACE
	GL_COLOR_MATERIAL_PARAMETER
	GL_COLOR_MATERIAL
	GL_FOG
	GL_FOG_INDEX
	GL_FOG_DENSITY
	GL_FOG_START
	GL_FOG_END
	GL_FOG_MODE
	GL_FOG_COLOR
	GL_DEPTH_RANGE
	GL_DEPTH_TEST
	GL_DEPTH_WRITEMASK
	GL_DEPTH_CLEAR_VALUE
	GL_DEPTH_FUNC
	GL_ACCUM_CLEAR_VALUE
	GL_STENCIL_TEST
	GL_STENCIL_CLEAR_VALUE
	GL_STENCIL_FUNC
	GL_STENCIL_VALUE_MASK
	GL_STENCIL_FAIL
	GL_STENCIL_PASS_DEPTH_FAIL
	GL_STENCIL_PASS_DEPTH_PASS
	GL_STENCIL_REF
	GL_STENCIL_WRITEMASK
	GL_MATRIX_MODE
	GL_NORMALIZE
	GL_VIEWPORT
	GL_MODELVIEW_STACK_DEPTH
	GL_PROJECTION_STACK_DEPTH
	GL_TEXTURE_STACK_DEPTH
	GL_MODELVIEW_MATRIX
	GL_PROJECTION_MATRIX
	GL_TEXTURE_MATRIX
	GL_ATTRIB_STACK_DEPTH
	GL_ALPHA_TEST
	GL_ALPHA_TEST_FUNC
	GL_ALPHA_TEST_REF
	GL_DITHER
	GL_BLEND_DST
	GL_BLEND_SRC
	GL_BLEND
	GL_LOGIC_OP_MODE
	GL_LOGIC_OP
	GL_AUX_BUFFERS
	GL_DRAW_BUFFER
	GL_READ_BUFFER
	GL_SCISSOR_BOX
	GL_SCISSOR_TEST
	GL_INDEX_CLEAR_VALUE
	GL_INDEX_WRITEMASK
	GL_COLOR_CLEAR_VALUE
	GL_COLOR_WRITEMASK
	GL_INDEX_MODE
	GL_RGBA_MODE
	GL_DOUBLEBUFFER
	GL_STEREO
	GL_RENDER_MODE
	GL_PERSPECTIVE_CORRECTION_HINT
	GL_POINT_SMOOTH_HINT
	GL_LINE_SMOOTH_HINT
	GL_POLYGON_SMOOTH_HINT
	GL_FOG_HINT
	GL_TEXTURE_GEN_S
	GL_TEXTURE_GEN_T
	GL_TEXTURE_GEN_R
	GL_TEXTURE_GEN_Q
	GL_PIXEL_MAP_I_TO_I_SIZE
	GL_PIXEL_MAP_S_TO_S_SIZE
	GL_PIXEL_MAP_I_TO_R_SIZE
	GL_PIXEL_MAP_I_TO_G_SIZE
	GL_PIXEL_MAP_I_TO_B_SIZE
	GL_PIXEL_MAP_I_TO_A_SIZE
	GL_PIXEL_MAP_R_TO_R_SIZE
	GL_PIXEL_MAP_G_TO_G_SIZE
	GL_PIXEL_MAP_B_TO_B_SIZE
	GL_PIXEL_MAP_A_TO_A_SIZE
	GL_UNPACK_SWAP_BYTES
	GL_UNPACK_LSB_FIRST
	GL_UNPACK_ROW_LENGTH
	GL_UNPACK_SKIP_ROWS
	GL_UNPACK_SKIP_PIXELS
	GL_UNPACK_ALIGNMENT
	GL_PACK_SWAP_BYTES
	GL_PACK_LSB_FIRST
	GL_PACK_ROW_LENGTH
	GL_PACK_SKIP_ROWS
	GL_PACK_SKIP_PIXELS
	GL_PACK_ALIGNMENT
	GL_MAP_COLOR
	GL_MAP_STENCIL
	GL_INDEX_SHIFT
	GL_INDEX_OFFSET
	GL_RED_SCALE
	GL_RED_BIAS
	GL_ZOOM_X
	GL_ZOOM_Y
	GL_GREEN_SCALE
	GL_GREEN_BIAS
	GL_BLUE_SCALE
	GL_BLUE_BIAS
	GL_ALPHA_SCALE
	GL_ALPHA_BIAS
	GL_DEPTH_SCALE
	GL_DEPTH_BIAS
	GL_MAX_EVAL_ORDER
	GL_MAX_LIGHTS
	GL_MAX_CLIP_PLANES
	GL_MAX_TEXTURE_SIZE
	GL_MAX_PIXEL_MAP_TABLE
	GL_MAX_ATTRIB_STACK_DEPTH
	GL_MAX_MODELVIEW_STACK_DEPTH
	GL_MAX_NAME_STACK_DEPTH
	GL_MAX_PROJECTION_STACK_DEPTH
	GL_MAX_TEXTURE_STACK_DEPTH
	GL_MAX_VIEWPORT_DIMS
	GL_SUBPIXEL_BITS
	GL_INDEX_BITS
	GL_RED_BITS
	GL_GREEN_BITS
	GL_BLUE_BITS
	GL_ALPHA_BITS
	GL_DEPTH_BITS
	GL_STENCIL_BITS
	GL_ACCUM_RED_BITS
	GL_ACCUM_GREEN_BITS
	GL_ACCUM_BLUE_BITS
	GL_ACCUM_ALPHA_BITS
	GL_NAME_STACK_DEPTH
	GL_AUTO_NORMAL
	GL_MAP1_COLOR_4
	GL_MAP1_INDEX
	GL_MAP1_NORMAL
	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_MAP2_COLOR_4
	GL_MAP2_INDEX
	GL_MAP2_NORMAL
	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_MAP1_GRID_DOMAIN
	GL_MAP1_GRID_SEGMENTS
	GL_MAP2_GRID_DOMAIN
	GL_MAP2_GRID_SEGMENTS
	GL_TEXTURE_1D
	GL_TEXTURE_2D
	GL_TEXTURE_WIDTH
	GL_TEXTURE_HEIGHT
	GL_TEXTURE_COMPONENTS
	GL_TEXTURE_BORDER_COLOR
	GL_TEXTURE_BORDER
	GL_DONT_CARE
	GL_FASTEST
	GL_NICEST
	GL_AMBIENT
	GL_DIFFUSE
	GL_SPECULAR
	GL_POSITION
	GL_SPOT_DIRECTION
	GL_SPOT_EXPONENT
	GL_SPOT_CUTOFF
	GL_CONSTANT_ATTENUATION
	GL_LINEAR_ATTENUATION
	GL_QUADRATIC_ATTENUATION
	GL_COMPILE
	GL_COMPILE_AND_EXECUTE
	GL_BYTE
	GL_UNSIGNED_BYTE
	GL_SHORT
	GL_UNSIGNED_SHORT
	GL_INT
	GL_UNSIGNED_INT
	GL_FLOAT
	GL_2_BYTES
	GL_3_BYTES
	GL_4_BYTES
	GL_CLEAR
	GL_AND
	GL_AND_REVERSE
	GL_COPY
	GL_AND_INVERTED
	GL_NOOP
	GL_XOR
	GL_OR
	GL_NOR
	GL_EQUIV
	GL_INVERT
	GL_OR_REVERSE
	GL_COPY_INVERTED
	GL_OR_INVERTED
	GL_NAND
	GL_SET
	GL_EMISSION
	GL_SHININESS
	GL_AMBIENT_AND_DIFFUSE
	GL_COLOR_INDEXES
	GL_MODELVIEW
	GL_PROJECTION
	GL_TEXTURE
	GL_COLOR
	GL_DEPTH
	GL_STENCIL
	GL_COLOR_INDEX
	GL_STENCIL_INDEX
	GL_DEPTH_COMPONENT
	GL_RED
	GL_GREEN
	GL_BLUE
	GL_ALPHA
	GL_RGB
	GL_RGBA
	GL_LUMINANCE
	GL_LUMINANCE_ALPHA
	GL_BITMAP
	GL_POINT
	GL_LINE
	GL_FILL
	GL_RENDER
	GL_FEEDBACK
	GL_SELECT
	GL_FLAT
	GL_SMOOTH
	GL_KEEP
	GL_REPLACE
	GL_INCR
	GL_DECR
	GL_VENDOR
	GL_RENDERER
	GL_VERSION
	GL_EXTENSIONS
	GL_S
	GL_T
	GL_R
	GL_Q
	GL_MODULATE
	GL_DECAL
	GL_TEXTURE_ENV_MODE
	GL_TEXTURE_ENV_COLOR
	GL_TEXTURE_ENV
	GL_EYE_LINEAR
	GL_OBJECT_LINEAR
	GL_SPHERE_MAP
	GL_TEXTURE_GEN_MODE
	GL_OBJECT_PLANE
	GL_EYE_PLANE
	GL_NEAREST
	GL_LINEAR
	GL_NEAREST_MIPMAP_NEAREST
	GL_LINEAR_MIPMAP_NEAREST
	GL_NEAREST_MIPMAP_LINEAR
	GL_LINEAR_MIPMAP_LINEAR
	GL_TEXTURE_MAG_FILTER
	GL_TEXTURE_MIN_FILTER
	GL_TEXTURE_WRAP_S
	GL_TEXTURE_WRAP_T
	GL_CLAMP
	GL_REPEAT
	GL_CLIP_PLANE0
	GL_CLIP_PLANE1
	GL_CLIP_PLANE2
	GL_CLIP_PLANE3
	GL_CLIP_PLANE4
	GL_CLIP_PLANE5
	GL_LIGHT0
	GL_LIGHT1
	GL_LIGHT2
	GL_LIGHT3
	GL_LIGHT4
	GL_LIGHT5
	GL_LIGHT6
	GL_LIGHT7
	GL_EXT_abgr
	GL_EXT_blend_color
	GL_EXT_blend_logic_op
	GL_EXT_blend_minmax
	GL_EXT_blend_subtract
	GL_EXT_convolution
	GL_EXT_histogram
	GL_EXT_polygon_offset
	GL_EXT_subtexture
	GL_EXT_texture
	GL_EXT_texture3D
	GL_SGIS_detail_texture
	GL_SGIS_multisample
	GL_SGIS_sharpen_texture
	GL_ABGR_EXT
	GL_CONSTANT_COLOR_EXT
	GL_ONE_MINUS_CONSTANT_COLOR_EXT
	GL_CONSTANT_ALPHA_EXT
	GL_ONE_MINUS_CONSTANT_ALPHA_EXT
	GL_BLEND_COLOR_EXT
	GL_FUNC_ADD_EXT
	GL_MIN_EXT
	GL_MAX_EXT
	GL_BLEND_EQUATION_EXT
	GL_FUNC_SUBTRACT_EXT
	GL_FUNC_REVERSE_SUBTRACT_EXT
	GL_CONVOLUTION_1D_EXT
	GL_CONVOLUTION_2D_EXT
	GL_SEPARABLE_2D_EXT
	GL_CONVOLUTION_BORDER_MODE_EXT
	GL_CONVOLUTION_FILTER_SCALE_EXT
	GL_CONVOLUTION_FILTER_BIAS_EXT
	GL_REDUCE_EXT
	GL_CONVOLUTION_FORMAT_EXT
	GL_CONVOLUTION_WIDTH_EXT
	GL_CONVOLUTION_HEIGHT_EXT
	GL_MAX_CONVOLUTION_WIDTH_EXT
	GL_MAX_CONVOLUTION_HEIGHT_EXT
	GL_POST_CONVOLUTION_RED_SCALE_EXT
	GL_POST_CONVOLUTION_GREEN_SCALE_EXT
	GL_POST_CONVOLUTION_BLUE_SCALE_EXT
	GL_POST_CONVOLUTION_ALPHA_SCALE_EXT
	GL_POST_CONVOLUTION_RED_BIAS_EXT
	GL_POST_CONVOLUTION_GREEN_BIAS_EXT
	GL_POST_CONVOLUTION_BLUE_BIAS_EXT
	GL_POST_CONVOLUTION_ALPHA_BIAS_EXT
	GL_HISTOGRAM_EXT
	GL_PROXY_HISTOGRAM_EXT
	GL_HISTOGRAM_WIDTH_EXT
	GL_HISTOGRAM_FORMAT_EXT
	GL_HISTOGRAM_RED_SIZE_EXT
	GL_HISTOGRAM_GREEN_SIZE_EXT
	GL_HISTOGRAM_BLUE_SIZE_EXT
	GL_HISTOGRAM_ALPHA_SIZE_EXT
	GL_HISTOGRAM_LUMINANCE_SIZE_EXT
	GL_HISTOGRAM_SINK_EXT
	GL_MINMAX_EXT
	GL_MINMAX_FORMAT_EXT
	GL_MINMAX_SINK_EXT
	GL_TABLE_TOO_LARGE_EXT
	GL_POLYGON_OFFSET_EXT
	GL_POLYGON_OFFSET_FACTOR_EXT
	GL_POLYGON_OFFSET_BIAS_EXT
	GL_ALPHA4_EXT
	GL_ALPHA8_EXT
	GL_ALPHA12_EXT
	GL_ALPHA16_EXT
	GL_LUMINANCE4_EXT
	GL_LUMINANCE8_EXT
	GL_LUMINANCE12_EXT
	GL_LUMINANCE16_EXT
	GL_LUMINANCE4_ALPHA4_EXT
	GL_LUMINANCE6_ALPHA2_EXT
	GL_LUMINANCE8_ALPHA8_EXT
	GL_LUMINANCE12_ALPHA4_EXT
	GL_LUMINANCE12_ALPHA12_EXT
	GL_LUMINANCE16_ALPHA16_EXT
	GL_INTENSITY_EXT
	GL_INTENSITY4_EXT
	GL_INTENSITY8_EXT
	GL_INTENSITY12_EXT
	GL_INTENSITY16_EXT
	GL_RGB2_EXT
	GL_RGB4_EXT
	GL_RGB5_EXT
	GL_RGB8_EXT
	GL_RGB10_EXT
	GL_RGB12_EXT
	GL_RGB16_EXT
	GL_RGBA2_EXT
	GL_RGBA4_EXT
	GL_RGB5_A1_EXT
	GL_RGBA8_EXT
	GL_RGB10_A2_EXT
	GL_RGBA12_EXT
	GL_RGBA16_EXT
	GL_TEXTURE_RED_SIZE_EXT
	GL_TEXTURE_GREEN_SIZE_EXT
	GL_TEXTURE_BLUE_SIZE_EXT
	GL_TEXTURE_ALPHA_SIZE_EXT
	GL_TEXTURE_LUMINANCE_SIZE_EXT
	GL_TEXTURE_INTENSITY_SIZE_EXT
	GL_REPLACE_EXT
	GL_PROXY_TEXTURE_1D_EXT
	GL_PROXY_TEXTURE_2D_EXT
	GL_TEXTURE_TOO_LARGE_EXT
	GL_PACK_SKIP_IMAGES_EXT
	GL_PACK_IMAGE_HEIGHT_EXT
	GL_UNPACK_SKIP_IMAGES_EXT
	GL_UNPACK_IMAGE_HEIGHT_EXT
	GL_TEXTURE_3D_EXT
	GL_PROXY_TEXTURE_3D_EXT
	GL_TEXTURE_DEPTH_EXT
	GL_TEXTURE_WRAP_R_EXT
	GL_MAX_3D_TEXTURE_SIZE_EXT
	GL_DETAIL_TEXTURE_2D_SGIS
	GL_DETAIL_TEXTURE_2D_BINDING_SGIS
	GL_LINEAR_DETAIL_SGIS
	GL_LINEAR_DETAIL_ALPHA_SGIS
	GL_LINEAR_DETAIL_COLOR_SGIS
	GL_DETAIL_TEXTURE_LEVEL_SGIS
	GL_DETAIL_TEXTURE_MODE_SGIS
	GL_DETAIL_TEXTURE_FUNC_POINTS_SGIS
	GL_MULTISAMPLE_BIT_EXT
	GL_MULTISAMPLE_SGIS
	GL_SAMPLE_ALPHA_TO_MASK_SGIS
	GL_SAMPLE_ALPHA_TO_ONE_SGIS
	GL_SAMPLE_MASK_SGIS
	GL_1PASS_SGIS
	GL_2PASS_0_SGIS
	GL_2PASS_1_SGIS
	GL_4PASS_0_SGIS
	GL_4PASS_1_SGIS
	GL_4PASS_2_SGIS
	GL_4PASS_3_SGIS
	GL_SAMPLE_BUFFERS_SGIS
	GL_SAMPLES_SGIS
	GL_SAMPLE_MASK_VALUE_SGIS
	GL_SAMPLE_MASK_INVERT_SGIS
	GL_SAMPLE_PATTERN_SGIS
	GL_LINEAR_SHARPEN_SGIS
	GL_LINEAR_SHARPEN_ALPHA_SGIS
	GL_LINEAR_SHARPEN_COLOR_SGIS
	GL_SHARPEN_TEXTURE_FUNC_POINTS_SGIS

	GLX_USE_GL
	GLX_BUFFER_SIZE
	GLX_LEVEL
	GLX_RGBA
	GLX_DOUBLEBUFFER
	GLX_STEREO
	GLX_AUX_BUFFERS
	GLX_RED_SIZE
	GLX_GREEN_SIZE
	GLX_BLUE_SIZE
	GLX_ALPHA_SIZE
	GLX_DEPTH_SIZE
	GLX_STENCIL_SIZE
	GLX_ACCUM_RED_SIZE
	GLX_ACCUM_GREEN_SIZE
	GLX_ACCUM_BLUE_SIZE
	GLX_ACCUM_ALPHA_SIZE
	GLX_SAMPLES_SGIS
	GLX_SAMPLE_BUFFER_SGIS
	GLX_BAD_SCREEN
	GLX_BAD_ATTRIBUTE
	GLX_NO_EXTENSION
	GLX_BAD_VISUAL
	GLX_BAD_CONTEXT
	GLX_BAD_VALUE
	GLX_BAD_ENUM
	GLXBadContext
	GLXBadContextState
	GLXBadDrawable
	GLXBadPixmap
	GLXBadContextTag
	GLXBadCurrentWindow
	GLXBadRenderRequest
	GLXBadLargeRequest
	GLXUnsupportedPrivateRequest
	__GLX_NUMBER_ERRORS
	__GLX_NUMBER_EVENTS
	GLX_EXTENSION_NAME
	GLX_EXTENSION_ALIAS
	GLX_VENDOR
	GLX_VERSION
	GLX_EXTENSIONS
	GLX_SGI_swap_control
	GLX_SGI_video_sync
	GLX_SGIS_multisample
	GLX_SWAP_DEFAULT_SGI
	GLX_SWAP_MUXPIPE_SGI
	GLX_SWAP_GANG_SGI
	GLX_MUXPIPE0_SGI
	GLX_MUXPIPE1_SGI
	GLX_MUXPIPE2_SGI

	GLU_VERSION_1_1
	GLU_INVALID_ENUM
	GLU_INVALID_VALUE
	GLU_OUT_OF_MEMORY
	GLU_INCOMPATIBLE_GL_VERSION
	GLU_VERSION
	GLU_EXTENSIONS
	GLU_TRUE
	GLU_FALSE
	GLU_SMOOTH
	GLU_FLAT
	GLU_NONE
	GLU_POINT
	GLU_LINE
	GLU_FILL
	GLU_SILHOUETTE
	GLU_OUTSIDE
	GLU_INSIDE
	GLU_BEGIN
	GLU_VERTEX
	GLU_END
	GLU_ERROR
	GLU_EDGE_FLAG
	GLU_CW
	GLU_CCW
	GLU_INTERIOR
	GLU_EXTERIOR
	GLU_UNKNOWN
	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_AUTO_LOAD_MATRIX
	GLU_CULLING
	GLU_SAMPLING_TOLERANCE
	GLU_DISPLAY_MODE
	GLU_PARAMETRIC_TOLERANCE
	GLU_SAMPLING_METHOD
	GLU_U_STEP
	GLU_V_STEP
	GLU_PATH_LENGTH
	GLU_PARAMETRIC_ERROR
	GLU_DOMAIN_DISTANCE
	GLU_MAP1_TRIM_2
	GLU_MAP1_TRIM_3
	GLU_OUTLINE_POLYGON
	GLU_OUTLINE_PATCH
	GLU_NURBS_ERROR1
	GLU_NURBS_ERROR2
	GLU_NURBS_ERROR3
	GLU_NURBS_ERROR4
	GLU_NURBS_ERROR5
	GLU_NURBS_ERROR6
	GLU_NURBS_ERROR7
	GLU_NURBS_ERROR8
	GLU_NURBS_ERROR9
	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_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_ERROR30
	GLU_NURBS_ERROR31
	GLU_NURBS_ERROR32
	GLU_NURBS_ERROR33
	GLU_NURBS_ERROR34
	GLU_NURBS_ERROR35
	GLU_NURBS_ERROR36
	GLU_NURBS_ERROR37

);
bootstrap OpenGL;

# from X.h
sub X_PROTOCOL {11;}
sub X_PROTOCOL_REVISION {0;}
sub NoEventMask {0;}
sub KeyPressMask {(1<<0);}
sub KeyReleaseMask {(1<<1);}
sub ButtonPressMask {(1<<2);}
sub ButtonReleaseMask {(1<<3);}
sub EnterWindowMask {(1<<4);}
sub LeaveWindowMask {(1<<5);}
sub PointerMotionMask {(1<<6);}
sub PointerMotionHintMask {(1<<7);}
sub Button1MotionMask {(1<<8);}
sub Button2MotionMask {(1<<9);}
sub Button3MotionMask {(1<<10);}
sub Button4MotionMask {(1<<11);}
sub Button5MotionMask {(1<<12);}
sub ButtonMotionMask {(1<<13);}
sub KeymapStateMask {(1<<14);}
sub ExposureMask {(1<<15);}
sub VisibilityChangeMask {(1<<16);}
sub StructureNotifyMask {(1<<17);}
sub ResizeRedirectMask {(1<<18);}
sub SubstructureNotifyMask {(1<<19);}
sub SubstructureRedirectMask {(1<<20);}
sub FocusChangeMask {(1<<21);}
sub PropertyChangeMask {(1<<22);}
sub ColormapChangeMask {(1<<23);}
sub OwnerGrabButtonMask {(1<<24);}
sub KeyPress {2;}
sub KeyRelease {3;}
sub ButtonPress {4;}
sub ButtonRelease {5;}
sub MotionNotify {6;}
sub EnterNotify {7;}
sub LeaveNotify {8;}
sub FocusIn {9;}
sub FocusOut {10;}
sub KeymapNotify {11;}
sub Expose {12;}
sub GraphicsExpose {13;}
sub NoExpose {14;}
sub VisibilityNotify {15;}
sub CreateNotify {16;}
sub DestroyNotify {17;}
sub UnmapNotify {18;}
sub MapNotify {19;}
sub MapRequest {20;}
sub ReparentNotify {21;}
sub ConfigureNotify {22;}
sub ConfigureRequest {23;}
sub GravityNotify {24;}
sub ResizeRequest {25;}
sub CirculateNotify {26;}
sub CirculateRequest {27;}
sub PropertyNotify {28;}
sub SelectionClear {29;}
sub SelectionRequest {30;}
sub SelectionNotify {31;}
sub ColormapNotify {32;}
sub ClientMessage {33;}
sub MappingNotify {34;}
sub LASTEvent {35;}
sub ShiftMask {(1<<0);}
sub LockMask {(1<<1);}
sub ControlMask {(1<<2);}
sub Mod1Mask {(1<<3);}
sub Mod2Mask {(1<<4);}
sub Mod3Mask {(1<<5);}
sub Mod4Mask {(1<<6);}
sub Mod5Mask {(1<<7);}
sub ShiftMapIndex {0;}
sub LockMapIndex {1;}
sub ControlMapIndex {2;}
sub Mod1MapIndex {3;}
sub Mod2MapIndex {4;}
sub Mod3MapIndex {5;}
sub Mod4MapIndex {6;}
sub Mod5MapIndex {7;}
sub Button1Mask {(1<<8);}
sub Button2Mask {(1<<9);}
sub Button3Mask {(1<<10);}
sub Button4Mask {(1<<11);}
sub Button5Mask {(1<<12);}
sub AnyModifier {(1<<15);}
sub Button1 {1;}
sub Button2 {2;}
sub Button3 {3;}
sub Button4 {4;}
sub Button5 {5;}
sub NotifyNormal {0;}
sub NotifyGrab {1;}
sub NotifyUngrab {2;}
sub NotifyWhileGrabbed {3;}
sub NotifyHint {1;}
sub NotifyAncestor {0;}
sub NotifyVirtual {1;}
sub NotifyInferior {2;}
sub NotifyNonlinear {3;}
sub NotifyNonlinearVirtual {4;}
sub NotifyPointer {5;}
sub NotifyPointerRoot {6;}
sub NotifyDetailNone {7;}
sub VisibilityUnobscured {0;}
sub VisibilityPartiallyObscured {1;}
sub VisibilityFullyObscured {2;}
sub PlaceOnTop {0;}
sub PlaceOnBottom {1;}
sub FamilyInternet {0;}
sub FamilyDECnet {1;}
sub FamilyChaos {2;}
sub PropertyNewValue {0;}
sub PropertyDelete {1;}
sub ColormapUninstalled {0;}
sub ColormapInstalled {1;}
sub GrabModeSync {0;}
sub GrabModeAsync {1;}
sub GrabSuccess {0;}
sub AlreadyGrabbed {1;}
sub GrabInvalidTime {2;}
sub GrabNotViewable {3;}
sub GrabFrozen {4;}
sub AsyncPointer {0;}
sub SyncPointer {1;}
sub ReplayPointer {2;}
sub AsyncKeyboard {3;}
sub SyncKeyboard {4;}
sub ReplayKeyboard {5;}
sub AsyncBoth {6;}
sub SyncBoth {7;}
sub StaticGray {0;}
sub GrayScale {1;}
sub StaticColor {2;}
sub PseudoColor {3;}
sub TrueColor {4;}
sub DirectColor {5;}

sub GL_CURRENT_BIT {0x00000001;}
sub GL_POINT_BIT {0x00000002;}
sub GL_LINE_BIT {0x00000004;}
sub GL_POLYGON_BIT {0x00000008;}
sub GL_POLYGON_STIPPLE_BIT {0x00000010;}
sub GL_PIXEL_MODE_BIT {0x00000020;}
sub GL_LIGHTING_BIT {0x00000040;}
sub GL_FOG_BIT {0x00000080;}
sub GL_DEPTH_BUFFER_BIT {0x00000100;}
sub GL_ACCUM_BUFFER_BIT {0x00000200;}
sub GL_STENCIL_BUFFER_BIT {0x00000400;}
sub GL_VIEWPORT_BIT {0x00000800;}
sub GL_TRANSFORM_BIT {0x00001000;}
sub GL_ENABLE_BIT {0x00002000;}
sub GL_COLOR_BUFFER_BIT {0x00004000;}
sub GL_HINT_BIT {0x00008000;}
sub GL_EVAL_BIT {0x00010000;}
sub GL_LIST_BIT {0x00020000;}
sub GL_TEXTURE_BIT {0x00040000;}
sub GL_SCISSOR_BIT {0x00080000;}
sub GL_ALL_ATTRIB_BITS {0x000fffff;}
sub GL_FALSE {0;}
sub GL_TRUE {1;}
sub GL_POINTS {0x0000;}
sub GL_LINES {0x0001;}
sub GL_LINE_LOOP {0x0002;}
sub GL_LINE_STRIP {0x0003;}
sub GL_TRIANGLES {0x0004;}
sub GL_TRIANGLE_STRIP {0x0005;}
sub GL_TRIANGLE_FAN {0x0006;}
sub GL_QUADS {0x0007;}
sub GL_QUAD_STRIP {0x0008;}
sub GL_POLYGON {0x0009;}
sub GL_ACCUM {0x0100;}
sub GL_LOAD {0x0101;}
sub GL_RETURN {0x0102;}
sub GL_MULT {0x0103;}
sub GL_ADD {0x0104;}
sub GL_NEVER {0x0200;}
sub GL_LESS {0x0201;}
sub GL_EQUAL {0x0202;}
sub GL_LEQUAL {0x0203;}
sub GL_GREATER {0x0204;}
sub GL_NOTEQUAL {0x0205;}
sub GL_GEQUAL {0x0206;}
sub GL_ALWAYS {0x0207;}
sub GL_ZERO {0;}
sub GL_ONE {1;}
sub GL_SRC_COLOR {0x0300;}
sub GL_ONE_MINUS_SRC_COLOR {0x0301;}
sub GL_SRC_ALPHA {0x0302;}
sub GL_ONE_MINUS_SRC_ALPHA {0x0303;}
sub GL_DST_ALPHA {0x0304;}
sub GL_ONE_MINUS_DST_ALPHA {0x0305;}
sub GL_DST_COLOR {0x0306;}
sub GL_ONE_MINUS_DST_COLOR {0x0307;}
sub GL_SRC_ALPHA_SATURATE {0x0308;}
sub GL_NONE {0;}
sub GL_FRONT_LEFT {0x0400;}
sub GL_FRONT_RIGHT {0x0401;}
sub GL_BACK_LEFT {0x0402;}
sub GL_BACK_RIGHT {0x0403;}
sub GL_FRONT {0x0404;}
sub GL_BACK {0x0405;}
sub GL_LEFT {0x0406;}
sub GL_RIGHT {0x0407;}
sub GL_FRONT_AND_BACK {0x0408;}
sub GL_AUX0 {0x0409;}
sub GL_AUX1 {0x040A;}
sub GL_AUX2 {0x040B;}
sub GL_AUX3 {0x040C;}
sub GL_NO_ERROR {0;}
sub GL_INVALID_ENUM {0x0500;}
sub GL_INVALID_VALUE {0x0501;}
sub GL_INVALID_OPERATION {0x0502;}
sub GL_STACK_OVERFLOW {0x0503;}
sub GL_STACK_UNDERFLOW {0x0504;}
sub GL_OUT_OF_MEMORY {0x0505;}
sub GL_2D {0x0600;}
sub GL_3D {0x0601;}
sub GL_3D_COLOR {0x0602;}
sub GL_3D_COLOR_TEXTURE {0x0603;}
sub GL_4D_COLOR_TEXTURE {0x0604;}
sub GL_PASS_THROUGH_TOKEN {0x0700;}
sub GL_POINT_TOKEN {0x0701;}
sub GL_LINE_TOKEN {0x0702;}
sub GL_POLYGON_TOKEN {0x0703;}
sub GL_BITMAP_TOKEN {0x0704;}
sub GL_DRAW_PIXEL_TOKEN {0x0705;}
sub GL_COPY_PIXEL_TOKEN {0x0706;}
sub GL_LINE_RESET_TOKEN {0x0707;}
sub GL_EXP {0x0800;}
sub GL_EXP2 {0x0801;}
sub GL_CW {0x0900;}
sub GL_CCW {0x0901;}
sub GL_COEFF {0x0A00;}
sub GL_ORDER {0x0A01;}
sub GL_DOMAIN {0x0A02;}
sub GL_PIXEL_MAP_I_TO_I {0x0C70;}
sub GL_PIXEL_MAP_S_TO_S {0x0C71;}
sub GL_PIXEL_MAP_I_TO_R {0x0C72;}
sub GL_PIXEL_MAP_I_TO_G {0x0C73;}
sub GL_PIXEL_MAP_I_TO_B {0x0C74;}
sub GL_PIXEL_MAP_I_TO_A {0x0C75;}
sub GL_PIXEL_MAP_R_TO_R {0x0C76;}
sub GL_PIXEL_MAP_G_TO_G {0x0C77;}
sub GL_PIXEL_MAP_B_TO_B {0x0C78;}
sub GL_PIXEL_MAP_A_TO_A {0x0C79;}
sub GL_CURRENT_COLOR {0x0B00;}
sub GL_CURRENT_INDEX {0x0B01;}
sub GL_CURRENT_NORMAL {0x0B02;}
sub GL_CURRENT_TEXTURE_COORDS {0x0B03;}
sub GL_CURRENT_RASTER_COLOR {0x0B04;}
sub GL_CURRENT_RASTER_INDEX {0x0B05;}
sub GL_CURRENT_RASTER_TEXTURE_COORDS {0x0B06;}
sub GL_CURRENT_RASTER_POSITION {0x0B07;}
sub GL_CURRENT_RASTER_POSITION_VALID {0x0B08;}
sub GL_CURRENT_RASTER_DISTANCE {0x0B09;}
sub GL_POINT_SMOOTH {0x0B10;}
sub GL_POINT_SIZE {0x0B11;}
sub GL_POINT_SIZE_RANGE {0x0B12;}
sub GL_POINT_SIZE_GRANULARITY {0x0B13;}
sub GL_LINE_SMOOTH {0x0B20;}
sub GL_LINE_WIDTH {0x0B21;}
sub GL_LINE_WIDTH_RANGE {0x0B22;}
sub GL_LINE_WIDTH_GRANULARITY {0x0B23;}
sub GL_LINE_STIPPLE {0x0B24;}
sub GL_LINE_STIPPLE_PATTERN {0x0B25;}
sub GL_LINE_STIPPLE_REPEAT {0x0B26;}
sub GL_LIST_MODE {0x0B30;}
sub GL_MAX_LIST_NESTING {0x0B31;}
sub GL_LIST_BASE {0x0B32;}
sub GL_LIST_INDEX {0x0B33;}
sub GL_POLYGON_MODE {0x0B40;}
sub GL_POLYGON_SMOOTH {0x0B41;}
sub GL_POLYGON_STIPPLE {0x0B42;}
sub GL_EDGE_FLAG {0x0B43;}
sub GL_CULL_FACE {0x0B44;}
sub GL_CULL_FACE_MODE {0x0B45;}
sub GL_FRONT_FACE {0x0B46;}
sub GL_LIGHTING {0x0B50;}
sub GL_LIGHT_MODEL_LOCAL_VIEWER {0x0B51;}
sub GL_LIGHT_MODEL_TWO_SIDE {0x0B52;}
sub GL_LIGHT_MODEL_AMBIENT {0x0B53;}
sub GL_SHADE_MODEL {0x0B54;}
sub GL_COLOR_MATERIAL_FACE {0x0B55;}
sub GL_COLOR_MATERIAL_PARAMETER {0x0B56;}
sub GL_COLOR_MATERIAL {0x0B57;}
sub GL_FOG {0x0B60;}
sub GL_FOG_INDEX {0x0B61;}
sub GL_FOG_DENSITY {0x0B62;}
sub GL_FOG_START {0x0B63;}
sub GL_FOG_END {0x0B64;}
sub GL_FOG_MODE {0x0B65;}
sub GL_FOG_COLOR {0x0B66;}
sub GL_DEPTH_RANGE {0x0B70;}
sub GL_DEPTH_TEST {0x0B71;}
sub GL_DEPTH_WRITEMASK {0x0B72;}
sub GL_DEPTH_CLEAR_VALUE {0x0B73;}
sub GL_DEPTH_FUNC {0x0B74;}
sub GL_ACCUM_CLEAR_VALUE {0x0B80;}
sub GL_STENCIL_TEST {0x0B90;}
sub GL_STENCIL_CLEAR_VALUE {0x0B91;}
sub GL_STENCIL_FUNC {0x0B92;}
sub GL_STENCIL_VALUE_MASK {0x0B93;}
sub GL_STENCIL_FAIL {0x0B94;}
sub GL_STENCIL_PASS_DEPTH_FAIL {0x0B95;}
sub GL_STENCIL_PASS_DEPTH_PASS {0x0B96;}
sub GL_STENCIL_REF {0x0B97;}
sub GL_STENCIL_WRITEMASK {0x0B98;}
sub GL_MATRIX_MODE {0x0BA0;}
sub GL_NORMALIZE {0x0BA1;}
sub GL_VIEWPORT {0x0BA2;}
sub GL_MODELVIEW_STACK_DEPTH {0x0BA3;}
sub GL_PROJECTION_STACK_DEPTH {0x0BA4;}
sub GL_TEXTURE_STACK_DEPTH {0x0BA5;}
sub GL_MODELVIEW_MATRIX {0x0BA6;}
sub GL_PROJECTION_MATRIX {0x0BA7;}
sub GL_TEXTURE_MATRIX {0x0BA8;}
sub GL_ATTRIB_STACK_DEPTH {0x0BB0;}
sub GL_ALPHA_TEST {0x0BC0;}
sub GL_ALPHA_TEST_FUNC {0x0BC1;}
sub GL_ALPHA_TEST_REF {0x0BC2;}
sub GL_DITHER {0x0BD0;}
sub GL_BLEND_DST {0x0BE0;}
sub GL_BLEND_SRC {0x0BE1;}
sub GL_BLEND {0x0BE2;}
sub GL_LOGIC_OP_MODE {0x0BF0;}
sub GL_LOGIC_OP {0x0BF1;}
sub GL_AUX_BUFFERS {0x0C00;}
sub GL_DRAW_BUFFER {0x0C01;}
sub GL_READ_BUFFER {0x0C02;}
sub GL_SCISSOR_BOX {0x0C10;}
sub GL_SCISSOR_TEST {0x0C11;}
sub GL_INDEX_CLEAR_VALUE {0x0C20;}
sub GL_INDEX_WRITEMASK {0x0C21;}
sub GL_COLOR_CLEAR_VALUE {0x0C22;}
sub GL_COLOR_WRITEMASK {0x0C23;}
sub GL_INDEX_MODE {0x0C30;}
sub GL_RGBA_MODE {0x0C31;}
sub GL_DOUBLEBUFFER {0x0C32;}
sub GL_STEREO {0x0C33;}
sub GL_RENDER_MODE {0x0C40;}
sub GL_PERSPECTIVE_CORRECTION_HINT {0x0C50;}
sub GL_POINT_SMOOTH_HINT {0x0C51;}
sub GL_LINE_SMOOTH_HINT {0x0C52;}
sub GL_POLYGON_SMOOTH_HINT {0x0C53;}
sub GL_FOG_HINT {0x0C54;}
sub GL_TEXTURE_GEN_S {0x0C60;}
sub GL_TEXTURE_GEN_T {0x0C61;}
sub GL_TEXTURE_GEN_R {0x0C62;}
sub GL_TEXTURE_GEN_Q {0x0C63;}
sub GL_PIXEL_MAP_I_TO_I_SIZE {0x0CB0;}
sub GL_PIXEL_MAP_S_TO_S_SIZE {0x0CB1;}
sub GL_PIXEL_MAP_I_TO_R_SIZE {0x0CB2;}
sub GL_PIXEL_MAP_I_TO_G_SIZE {0x0CB3;}
sub GL_PIXEL_MAP_I_TO_B_SIZE {0x0CB4;}
sub GL_PIXEL_MAP_I_TO_A_SIZE {0x0CB5;}
sub GL_PIXEL_MAP_R_TO_R_SIZE {0x0CB6;}
sub GL_PIXEL_MAP_G_TO_G_SIZE {0x0CB7;}
sub GL_PIXEL_MAP_B_TO_B_SIZE {0x0CB8;}
sub GL_PIXEL_MAP_A_TO_A_SIZE {0x0CB9;}
sub GL_UNPACK_SWAP_BYTES {0x0CF0;}
sub GL_UNPACK_LSB_FIRST {0x0CF1;}
sub GL_UNPACK_ROW_LENGTH {0x0CF2;}
sub GL_UNPACK_SKIP_ROWS {0x0CF3;}
sub GL_UNPACK_SKIP_PIXELS {0x0CF4;}
sub GL_UNPACK_ALIGNMENT {0x0CF5;}
sub GL_PACK_SWAP_BYTES {0x0D00;}
sub GL_PACK_LSB_FIRST {0x0D01;}
sub GL_PACK_ROW_LENGTH {0x0D02;}
sub GL_PACK_SKIP_ROWS {0x0D03;}
sub GL_PACK_SKIP_PIXELS {0x0D04;}
sub GL_PACK_ALIGNMENT {0x0D05;}
sub GL_MAP_COLOR {0x0D10;}
sub GL_MAP_STENCIL {0x0D11;}
sub GL_INDEX_SHIFT {0x0D12;}
sub GL_INDEX_OFFSET {0x0D13;}
sub GL_RED_SCALE {0x0D14;}
sub GL_RED_BIAS {0x0D15;}
sub GL_ZOOM_X {0x0D16;}
sub GL_ZOOM_Y {0x0D17;}
sub GL_GREEN_SCALE {0x0D18;}
sub GL_GREEN_BIAS {0x0D19;}
sub GL_BLUE_SCALE {0x0D1A;}
sub GL_BLUE_BIAS {0x0D1B;}
sub GL_ALPHA_SCALE {0x0D1C;}
sub GL_ALPHA_BIAS {0x0D1D;}
sub GL_DEPTH_SCALE {0x0D1E;}
sub GL_DEPTH_BIAS {0x0D1F;}
sub GL_MAX_EVAL_ORDER {0x0D30;}
sub GL_MAX_LIGHTS {0x0D31;}
sub GL_MAX_CLIP_PLANES {0x0D32;}
sub GL_MAX_TEXTURE_SIZE {0x0D33;}
sub GL_MAX_PIXEL_MAP_TABLE {0x0D34;}
sub GL_MAX_ATTRIB_STACK_DEPTH {0x0D35;}
sub GL_MAX_MODELVIEW_STACK_DEPTH {0x0D36;}
sub GL_MAX_NAME_STACK_DEPTH {0x0D37;}
sub GL_MAX_PROJECTION_STACK_DEPTH {0x0D38;}
sub GL_MAX_TEXTURE_STACK_DEPTH {0x0D39;}
sub GL_MAX_VIEWPORT_DIMS {0x0D3A;}
sub GL_SUBPIXEL_BITS {0x0D50;}
sub GL_INDEX_BITS {0x0D51;}
sub GL_RED_BITS {0x0D52;}
sub GL_GREEN_BITS {0x0D53;}
sub GL_BLUE_BITS {0x0D54;}
sub GL_ALPHA_BITS {0x0D55;}
sub GL_DEPTH_BITS {0x0D56;}
sub GL_STENCIL_BITS {0x0D57;}
sub GL_ACCUM_RED_BITS {0x0D58;}
sub GL_ACCUM_GREEN_BITS {0x0D59;}
sub GL_ACCUM_BLUE_BITS {0x0D5A;}
sub GL_ACCUM_ALPHA_BITS {0x0D5B;}
sub GL_NAME_STACK_DEPTH {0x0D70;}
sub GL_AUTO_NORMAL {0x0D80;}
sub GL_MAP1_COLOR_4 {0x0D90;}
sub GL_MAP1_INDEX {0x0D91;}
sub GL_MAP1_NORMAL {0x0D92;}
sub GL_MAP1_TEXTURE_COORD_1 {0x0D93;}
sub GL_MAP1_TEXTURE_COORD_2 {0x0D94;}
sub GL_MAP1_TEXTURE_COORD_3 {0x0D95;}
sub GL_MAP1_TEXTURE_COORD_4 {0x0D96;}
sub GL_MAP1_VERTEX_3 {0x0D97;}
sub GL_MAP1_VERTEX_4 {0x0D98;}
sub GL_MAP2_COLOR_4 {0x0DB0;}
sub GL_MAP2_INDEX {0x0DB1;}
sub GL_MAP2_NORMAL {0x0DB2;}
sub GL_MAP2_TEXTURE_COORD_1 {0x0DB3;}
sub GL_MAP2_TEXTURE_COORD_2 {0x0DB4;}
sub GL_MAP2_TEXTURE_COORD_3 {0x0DB5;}
sub GL_MAP2_TEXTURE_COORD_4 {0x0DB6;}
sub GL_MAP2_VERTEX_3 {0x0DB7;}
sub GL_MAP2_VERTEX_4 {0x0DB8;}
sub GL_MAP1_GRID_DOMAIN {0x0DD0;}
sub GL_MAP1_GRID_SEGMENTS {0x0DD1;}
sub GL_MAP2_GRID_DOMAIN {0x0DD2;}
sub GL_MAP2_GRID_SEGMENTS {0x0DD3;}
sub GL_TEXTURE_1D {0x0DE0;}
sub GL_TEXTURE_2D {0x0DE1;}
sub GL_TEXTURE_WIDTH {0x1000;}
sub GL_TEXTURE_HEIGHT {0x1001;}
sub GL_TEXTURE_COMPONENTS {0x1003;}
sub GL_TEXTURE_BORDER_COLOR {0x1004;}
sub GL_TEXTURE_BORDER {0x1005;}
sub GL_DONT_CARE {0x1100;}
sub GL_FASTEST {0x1101;}
sub GL_NICEST {0x1102;}
sub GL_AMBIENT {0x1200;}
sub GL_DIFFUSE {0x1201;}
sub GL_SPECULAR {0x1202;}
sub GL_POSITION {0x1203;}
sub GL_SPOT_DIRECTION {0x1204;}
sub GL_SPOT_EXPONENT {0x1205;}
sub GL_SPOT_CUTOFF {0x1206;}
sub GL_CONSTANT_ATTENUATION {0x1207;}
sub GL_LINEAR_ATTENUATION {0x1208;}
sub GL_QUADRATIC_ATTENUATION {0x1209;}
sub GL_COMPILE {0x1300;}
sub GL_COMPILE_AND_EXECUTE {0x1301;}
sub GL_BYTE {0x1400;}
sub GL_UNSIGNED_BYTE {0x1401;}
sub GL_SHORT {0x1402;}
sub GL_UNSIGNED_SHORT {0x1403;}
sub GL_INT {0x1404;}
sub GL_UNSIGNED_INT {0x1405;}
sub GL_FLOAT {0x1406;}
sub GL_2_BYTES {0x1407;}
sub GL_3_BYTES {0x1408;}
sub GL_4_BYTES {0x1409;}
sub GL_CLEAR {0x1500;}
sub GL_AND {0x1501;}
sub GL_AND_REVERSE {0x1502;}
sub GL_COPY {0x1503;}
sub GL_AND_INVERTED {0x1504;}
sub GL_NOOP {0x1505;}
sub GL_XOR {0x1506;}
sub GL_OR {0x1507;}
sub GL_NOR {0x1508;}
sub GL_EQUIV {0x1509;}
sub GL_INVERT {0x150A;}
sub GL_OR_REVERSE {0x150B;}
sub GL_COPY_INVERTED {0x150C;}
sub GL_OR_INVERTED {0x150D;}
sub GL_NAND {0x150E;}
sub GL_SET {0x150F;}
sub GL_EMISSION {0x1600;}
sub GL_SHININESS {0x1601;}
sub GL_AMBIENT_AND_DIFFUSE {0x1602;}
sub GL_COLOR_INDEXES {0x1603;}
sub GL_MODELVIEW {0x1700;}
sub GL_PROJECTION {0x1701;}
sub GL_TEXTURE {0x1702;}
sub GL_COLOR {0x1800;}
sub GL_DEPTH {0x1801;}
sub GL_STENCIL {0x1802;}
sub GL_COLOR_INDEX {0x1900;}
sub GL_STENCIL_INDEX {0x1901;}
sub GL_DEPTH_COMPONENT {0x1902;}
sub GL_RED {0x1903;}
sub GL_GREEN {0x1904;}
sub GL_BLUE {0x1905;}
sub GL_ALPHA {0x1906;}
sub GL_RGB {0x1907;}
sub GL_RGBA {0x1908;}
sub GL_LUMINANCE {0x1909;}
sub GL_LUMINANCE_ALPHA {0x190A;}
sub GL_BITMAP {0x1A00;}
sub GL_POINT {0x1B00;}
sub GL_LINE {0x1B01;}
sub GL_FILL {0x1B02;}
sub GL_RENDER {0x1C00;}
sub GL_FEEDBACK {0x1C01;}
sub GL_SELECT {0x1C02;}
sub GL_FLAT {0x1D00;}
sub GL_SMOOTH {0x1D01;}
sub GL_KEEP {0x1E00;}
sub GL_REPLACE {0x1E01;}
sub GL_INCR {0x1E02;}
sub GL_DECR {0x1E03;}
sub GL_VENDOR {0x1F00;}
sub GL_RENDERER {0x1F01;}
sub GL_VERSION {0x1F02;}
sub GL_EXTENSIONS {0x1F03;}
sub GL_S {0x2000;}
sub GL_T {0x2001;}
sub GL_R {0x2002;}
sub GL_Q {0x2003;}
sub GL_MODULATE {0x2100;}
sub GL_DECAL {0x2101;}
sub GL_TEXTURE_ENV_MODE {0x2200;}
sub GL_TEXTURE_ENV_COLOR {0x2201;}
sub GL_TEXTURE_ENV {0x2300;}
sub GL_EYE_LINEAR {0x2400;}
sub GL_OBJECT_LINEAR {0x2401;}
sub GL_SPHERE_MAP {0x2402;}
sub GL_TEXTURE_GEN_MODE {0x2500;}
sub GL_OBJECT_PLANE {0x2501;}
sub GL_EYE_PLANE {0x2502;}
sub GL_NEAREST {0x2600;}
sub GL_LINEAR {0x2601;}
sub GL_NEAREST_MIPMAP_NEAREST {0x2700;}
sub GL_LINEAR_MIPMAP_NEAREST {0x2701;}
sub GL_NEAREST_MIPMAP_LINEAR {0x2702;}
sub GL_LINEAR_MIPMAP_LINEAR {0x2703;}
sub GL_TEXTURE_MAG_FILTER {0x2800;}
sub GL_TEXTURE_MIN_FILTER {0x2801;}
sub GL_TEXTURE_WRAP_S {0x2802;}
sub GL_TEXTURE_WRAP_T {0x2803;}
sub GL_CLAMP {0x2900;}
sub GL_REPEAT {0x2901;}
sub GL_CLIP_PLANE0 {0x3000;}
sub GL_CLIP_PLANE1 {0x3001;}
sub GL_CLIP_PLANE2 {0x3002;}
sub GL_CLIP_PLANE3 {0x3003;}
sub GL_CLIP_PLANE4 {0x3004;}
sub GL_CLIP_PLANE5 {0x3005;}
sub GL_LIGHT0 {0x4000;}
sub GL_LIGHT1 {0x4001;}
sub GL_LIGHT2 {0x4002;}
sub GL_LIGHT3 {0x4003;}
sub GL_LIGHT4 {0x4004;}
sub GL_LIGHT5 {0x4005;}
sub GL_LIGHT6 {0x4006;}
sub GL_LIGHT7 {0x4007;}
sub GL_EXT_abgr {1;}
sub GL_EXT_blend_color {1;}
sub GL_EXT_blend_logic_op {1;}
sub GL_EXT_blend_minmax {1;}
sub GL_EXT_blend_subtract {1;}
sub GL_EXT_convolution {1;}
sub GL_EXT_histogram {1;}
sub GL_EXT_polygon_offset {1;}
sub GL_EXT_subtexture {1;}
sub GL_EXT_texture {1;}
sub GL_EXT_texture3D {1;}
sub GL_SGIS_detail_texture {1;}
sub GL_SGIS_multisample {1;}
sub GL_SGIS_sharpen_texture {1;}
sub GL_ABGR_EXT {0x8000;}
sub GL_CONSTANT_COLOR_EXT {0x8001;}
sub GL_ONE_MINUS_CONSTANT_COLOR_EXT {0x8002;}
sub GL_CONSTANT_ALPHA_EXT {0x8003;}
sub GL_ONE_MINUS_CONSTANT_ALPHA_EXT {0x8004;}
sub GL_BLEND_COLOR_EXT {0x8005;}
sub GL_FUNC_ADD_EXT {0x8006;}
sub GL_MIN_EXT {0x8007;}
sub GL_MAX_EXT {0x8008;}
sub GL_BLEND_EQUATION_EXT {0x8009;}
sub GL_FUNC_SUBTRACT_EXT {0x800A;}
sub GL_FUNC_REVERSE_SUBTRACT_EXT {0x800B;}
sub GL_CONVOLUTION_1D_EXT {0x8010;}
sub GL_CONVOLUTION_2D_EXT {0x8011;}
sub GL_SEPARABLE_2D_EXT {0x8012;}
sub GL_CONVOLUTION_BORDER_MODE_EXT {0x8013;}
sub GL_CONVOLUTION_FILTER_SCALE_EXT {0x8014;}
sub GL_CONVOLUTION_FILTER_BIAS_EXT {0x8015;}
sub GL_REDUCE_EXT {0x8016;}
sub GL_CONVOLUTION_FORMAT_EXT {0x8017;}
sub GL_CONVOLUTION_WIDTH_EXT {0x8018;}
sub GL_CONVOLUTION_HEIGHT_EXT {0x8019;}
sub GL_MAX_CONVOLUTION_WIDTH_EXT {0x801A;}
sub GL_MAX_CONVOLUTION_HEIGHT_EXT {0x801B;}
sub GL_POST_CONVOLUTION_RED_SCALE_EXT {0x801C;}
sub GL_POST_CONVOLUTION_GREEN_SCALE_EXT {0x801D;}
sub GL_POST_CONVOLUTION_BLUE_SCALE_EXT {0x801E;}
sub GL_POST_CONVOLUTION_ALPHA_SCALE_EXT {0x801F;}
sub GL_POST_CONVOLUTION_RED_BIAS_EXT {0x8020;}
sub GL_POST_CONVOLUTION_GREEN_BIAS_EXT {0x8021;}
sub GL_POST_CONVOLUTION_BLUE_BIAS_EXT {0x8022;}
sub GL_POST_CONVOLUTION_ALPHA_BIAS_EXT {0x8023;}
sub GL_HISTOGRAM_EXT {0x8024;}
sub GL_PROXY_HISTOGRAM_EXT {0x8025;}
sub GL_HISTOGRAM_WIDTH_EXT {0x8026;}
sub GL_HISTOGRAM_FORMAT_EXT {0x8027;}
sub GL_HISTOGRAM_RED_SIZE_EXT {0x8028;}
sub GL_HISTOGRAM_GREEN_SIZE_EXT {0x8029;}
sub GL_HISTOGRAM_BLUE_SIZE_EXT {0x802A;}
sub GL_HISTOGRAM_ALPHA_SIZE_EXT {0x802B;}
sub GL_HISTOGRAM_LUMINANCE_SIZE_EXT {0x802C;}
sub GL_HISTOGRAM_SINK_EXT {0x802D;}
sub GL_MINMAX_EXT {0x802E;}
sub GL_MINMAX_FORMAT_EXT {0x802F;}
sub GL_MINMAX_SINK_EXT {0x8030;}
sub GL_TABLE_TOO_LARGE_EXT {0x8031;}
sub GL_POLYGON_OFFSET_EXT {0x8037;}
sub GL_POLYGON_OFFSET_FACTOR_EXT {0x8038;}
sub GL_POLYGON_OFFSET_BIAS_EXT {0x8039;}
sub GL_ALPHA4_EXT {0x803B;}
sub GL_ALPHA8_EXT {0x803C;}
sub GL_ALPHA12_EXT {0x803D;}
sub GL_ALPHA16_EXT {0x803E;}
sub GL_LUMINANCE4_EXT {0x803F;}
sub GL_LUMINANCE8_EXT {0x8040;}
sub GL_LUMINANCE12_EXT {0x8041;}
sub GL_LUMINANCE16_EXT {0x8042;}
sub GL_LUMINANCE4_ALPHA4_EXT {0x8043;}
sub GL_LUMINANCE6_ALPHA2_EXT {0x8044;}
sub GL_LUMINANCE8_ALPHA8_EXT {0x8045;}
sub GL_LUMINANCE12_ALPHA4_EXT {0x8046;}
sub GL_LUMINANCE12_ALPHA12_EXT {0x8047;}
sub GL_LUMINANCE16_ALPHA16_EXT {0x8048;}
sub GL_INTENSITY_EXT {0x8049;}
sub GL_INTENSITY4_EXT {0x804A;}
sub GL_INTENSITY8_EXT {0x804B;}
sub GL_INTENSITY12_EXT {0x804C;}
sub GL_INTENSITY16_EXT {0x804D;}
sub GL_RGB2_EXT {0x804E;}
sub GL_RGB4_EXT {0x804F;}
sub GL_RGB5_EXT {0x8050;}
sub GL_RGB8_EXT {0x8051;}
sub GL_RGB10_EXT {0x8052;}
sub GL_RGB12_EXT {0x8053;}
sub GL_RGB16_EXT {0x8054;}
sub GL_RGBA2_EXT {0x8055;}
sub GL_RGBA4_EXT {0x8056;}
sub GL_RGB5_A1_EXT {0x8057;}
sub GL_RGBA8_EXT {0x8058;}
sub GL_RGB10_A2_EXT {0x8059;}
sub GL_RGBA12_EXT {0x805A;}
sub GL_RGBA16_EXT {0x805B;}
sub GL_TEXTURE_RED_SIZE_EXT {0x805C;}
sub GL_TEXTURE_GREEN_SIZE_EXT {0x805D;}
sub GL_TEXTURE_BLUE_SIZE_EXT {0x805E;}
sub GL_TEXTURE_ALPHA_SIZE_EXT {0x805F;}
sub GL_TEXTURE_LUMINANCE_SIZE_EXT {0x8060;}
sub GL_TEXTURE_INTENSITY_SIZE_EXT {0x8061;}
sub GL_REPLACE_EXT {0x8062;}
sub GL_PROXY_TEXTURE_1D_EXT {0x8063;}
sub GL_PROXY_TEXTURE_2D_EXT {0x8064;}
sub GL_TEXTURE_TOO_LARGE_EXT {0x8065;}
sub GL_PACK_SKIP_IMAGES_EXT {0x806B;}
sub GL_PACK_IMAGE_HEIGHT_EXT {0x806C;}
sub GL_UNPACK_SKIP_IMAGES_EXT {0x806D;}
sub GL_UNPACK_IMAGE_HEIGHT_EXT {0x806E;}
sub GL_TEXTURE_3D_EXT {0x806F;}
sub GL_PROXY_TEXTURE_3D_EXT {0x8070;}
sub GL_TEXTURE_DEPTH_EXT {0x8071;}
sub GL_TEXTURE_WRAP_R_EXT {0x8072;}
sub GL_MAX_3D_TEXTURE_SIZE_EXT {0x8073;}
sub GL_DETAIL_TEXTURE_2D_SGIS {0x8095;}
sub GL_DETAIL_TEXTURE_2D_BINDING_SGIS {0x8096;}
sub GL_LINEAR_DETAIL_SGIS {0x8097;}
sub GL_LINEAR_DETAIL_ALPHA_SGIS {0x8098;}
sub GL_LINEAR_DETAIL_COLOR_SGIS {0x8099;}
sub GL_DETAIL_TEXTURE_LEVEL_SGIS {0x809A;}
sub GL_DETAIL_TEXTURE_MODE_SGIS {0x809B;}
sub GL_DETAIL_TEXTURE_FUNC_POINTS_SGIS {0x809C;}
sub GL_MULTISAMPLE_BIT_EXT {0x20000000;}
sub GL_MULTISAMPLE_SGIS {0x809D;}
sub GL_SAMPLE_ALPHA_TO_MASK_SGIS {0x809E;}
sub GL_SAMPLE_ALPHA_TO_ONE_SGIS {0x809F;}
sub GL_SAMPLE_MASK_SGIS {0x80A0;}
sub GL_1PASS_SGIS {0x80A1;}
sub GL_2PASS_0_SGIS {0x80A2;}
sub GL_2PASS_1_SGIS {0x80A3;}
sub GL_4PASS_0_SGIS {0x80A4;}
sub GL_4PASS_1_SGIS {0x80A5;}
sub GL_4PASS_2_SGIS {0x80A6;}
sub GL_4PASS_3_SGIS {0x80A7;}
sub GL_SAMPLE_BUFFERS_SGIS {0x80A8;}
sub GL_SAMPLES_SGIS {0x80A9;}
sub GL_SAMPLE_MASK_VALUE_SGIS {0x80AA;}
sub GL_SAMPLE_MASK_INVERT_SGIS {0x80AB;}
sub GL_SAMPLE_PATTERN_SGIS {0x80AC;}
sub GL_LINEAR_SHARPEN_SGIS {0x80AD;}
sub GL_LINEAR_SHARPEN_ALPHA_SGIS {0x80AE;}
sub GL_LINEAR_SHARPEN_COLOR_SGIS {0x80AF;}
sub GL_SHARPEN_TEXTURE_FUNC_POINTS_SGIS {0x80B0;}

sub GLX_USE_GL {1;}
sub GLX_BUFFER_SIZE {2;}
sub GLX_LEVEL {3;}
sub GLX_RGBA {4;}
sub GLX_DOUBLEBUFFER {5;}
sub GLX_STEREO {6;}
sub GLX_AUX_BUFFERS {7;}
sub GLX_RED_SIZE {8;}
sub GLX_GREEN_SIZE {9;}
sub GLX_BLUE_SIZE {10;}
sub GLX_ALPHA_SIZE {11;}
sub GLX_DEPTH_SIZE {12;}
sub GLX_STENCIL_SIZE {13;}
sub GLX_ACCUM_RED_SIZE {14;}
sub GLX_ACCUM_GREEN_SIZE {15;}
sub GLX_ACCUM_BLUE_SIZE {16;}
sub GLX_ACCUM_ALPHA_SIZE {17;}
sub GLX_SAMPLES_SGIS {100000;}
sub GLX_SAMPLE_BUFFER_SGIS {100001;}
sub GLX_BAD_SCREEN {1;}
sub GLX_BAD_ATTRIBUTE {2;}
sub GLX_NO_EXTENSION {3;}
sub GLX_BAD_VISUAL {4;}
sub GLX_BAD_CONTEXT {5;}
sub GLX_BAD_VALUE {6;}
sub GLX_BAD_ENUM {7;}
sub GLXBadContext {0;}
sub GLXBadContextState {1;}
sub GLXBadDrawable {2;}
sub GLXBadPixmap {3;}
sub GLXBadContextTag {4;}
sub GLXBadCurrentWindow {5;}
sub GLXBadRenderRequest {6;}
sub GLXBadLargeRequest {7;}
sub GLXUnsupportedPrivateRequest {8;}
sub __GLX_NUMBER_ERRORS {8;}
sub __GLX_NUMBER_EVENTS {1;}
sub GLX_EXTENSION_NAME {"GLX";}
sub GLX_EXTENSION_ALIAS {"SGI-GLX";}
sub GLX_VENDOR {1;}
sub GLX_VERSION {2;}
sub GLX_EXTENSIONS {3;}
sub GLX_SGI_swap_control {1;}
sub GLX_SGI_video_sync {1;}
sub GLX_SGIS_multisample {1;}
sub GLX_SWAP_DEFAULT_SGI {1;}
sub GLX_SWAP_MUXPIPE_SGI {2;}
sub GLX_SWAP_GANG_SGI {3;}
sub GLX_MUXPIPE0_SGI {0x1;}
sub GLX_MUXPIPE1_SGI {0x2;}
sub GLX_MUXPIPE2_SGI {0x4;}

sub GLU_VERSION_1_1 {1;}
sub GLU_INVALID_ENUM {100900;}
sub GLU_INVALID_VALUE {100901;}
sub GLU_OUT_OF_MEMORY {100902;}
sub GLU_INCOMPATIBLE_GL_VERSION {100903;}
sub GLU_VERSION {100800;}
sub GLU_EXTENSIONS {100801;}
sub GLU_TRUE {GL_TRUE;}
sub GLU_FALSE {GL_FALSE;}
sub GLU_SMOOTH {100000;}
sub GLU_FLAT {100001;}
sub GLU_NONE {100002;}
sub GLU_POINT {100010;}
sub GLU_LINE {100011;}
sub GLU_FILL {100012;}
sub GLU_SILHOUETTE {100013;}
sub GLU_OUTSIDE {100020;}
sub GLU_INSIDE {100021;}
sub GLU_BEGIN {100100;}
sub GLU_VERTEX {100101;}
sub GLU_END {100102;}
sub GLU_ERROR {100103;}
sub GLU_EDGE_FLAG {100104;}
sub GLU_CW {100120;}
sub GLU_CCW {100121;}
sub GLU_INTERIOR {100122;}
sub GLU_EXTERIOR {100123;}
sub GLU_UNKNOWN {100124;}
sub GLU_TESS_ERROR1 {100151;}
sub GLU_TESS_ERROR2 {100152;}
sub GLU_TESS_ERROR3 {100153;}
sub GLU_TESS_ERROR4 {100154;}
sub GLU_TESS_ERROR5 {100155;}
sub GLU_TESS_ERROR6 {100156;}
sub GLU_TESS_ERROR7 {100157;}
sub GLU_TESS_ERROR8 {100158;}
sub GLU_AUTO_LOAD_MATRIX {100200;}
sub GLU_CULLING {100201;}
sub GLU_SAMPLING_TOLERANCE {100203;}
sub GLU_DISPLAY_MODE {100204;}
sub GLU_PARAMETRIC_TOLERANCE {100202;}
sub GLU_SAMPLING_METHOD {100205;}
sub GLU_U_STEP {100206;}
sub GLU_V_STEP {100207;}
sub GLU_PATH_LENGTH {100215;}
sub GLU_PARAMETRIC_ERROR {100216;}
sub GLU_DOMAIN_DISTANCE {100217;}
sub GLU_MAP1_TRIM_2 {100210;}
sub GLU_MAP1_TRIM_3 {100211;}
sub GLU_OUTLINE_POLYGON {100240;}
sub GLU_OUTLINE_PATCH {100241;}
sub GLU_NURBS_ERROR1 {100251;}
sub GLU_NURBS_ERROR2 {100252;}
sub GLU_NURBS_ERROR3 {100253;}
sub GLU_NURBS_ERROR4 {100254;}
sub GLU_NURBS_ERROR5 {100255;}
sub GLU_NURBS_ERROR6 {100256;}
sub GLU_NURBS_ERROR7 {100257;}
sub GLU_NURBS_ERROR8 {100258;}
sub GLU_NURBS_ERROR9 {100259;}
sub GLU_NURBS_ERROR10 {100260;}
sub GLU_NURBS_ERROR11 {100261;}
sub GLU_NURBS_ERROR12 {100262;}
sub GLU_NURBS_ERROR13 {100263;}
sub GLU_NURBS_ERROR14 {100264;}
sub GLU_NURBS_ERROR15 {100265;}
sub GLU_NURBS_ERROR16 {100266;}
sub GLU_NURBS_ERROR17 {100267;}
sub GLU_NURBS_ERROR18 {100268;}
sub GLU_NURBS_ERROR19 {100269;}
sub GLU_NURBS_ERROR20 {100270;}
sub GLU_NURBS_ERROR21 {100271;}
sub GLU_NURBS_ERROR22 {100272;}
sub GLU_NURBS_ERROR23 {100273;}
sub GLU_NURBS_ERROR24 {100274;}
sub GLU_NURBS_ERROR25 {100275;}
sub GLU_NURBS_ERROR26 {100276;}
sub GLU_NURBS_ERROR27 {100277;}
sub GLU_NURBS_ERROR28 {100278;}
sub GLU_NURBS_ERROR29 {100279;}
sub GLU_NURBS_ERROR30 {100280;}
sub GLU_NURBS_ERROR31 {100281;}
sub GLU_NURBS_ERROR32 {100282;}
sub GLU_NURBS_ERROR33 {100283;}
sub GLU_NURBS_ERROR34 {100284;}
sub GLU_NURBS_ERROR35 {100285;}
sub GLU_NURBS_ERROR36 {100286;}
sub GLU_NURBS_ERROR37 {100287;}

%window_defaults=(
		'x'	=> 0,
		'y'	=> 0,
		'width'	=> 500,
		'height'=> 500,
		'parent'=> 0,
		'mask'	=> StructureNotifyMask,
		'attributes'=> [GLX_RGBA],
	);
sub glpOpenWindow {
	# default values
	my(%a) = @_;
	my(%p) = %window_defaults;
	foreach $k (keys(%a)){
		defined($p{$k}) || warn "Not a valid parameter to glpOpenWindow: `$k'\n";
		#print "parameter $k now ",$a{$k}," was ",$p{$k},"\n";  
		$p{$k} = $a{$k};
	}
	glpcOpenWindow($p{x},$p{y},$p{width},$p{height},
	               $p{parent},$p{'mask'},
	               @{$p{attributes}});
}


1;
__END__
