gl-0.9: generated-src/Graphics/GL/Ext/EXT/VertexShader.hs
-- This file was automatically generated.
{-# LANGUAGE CPP, ScopedTypeVariables, PatternSynonyms #-}
module Graphics.GL.Ext.EXT.VertexShader (
-- * Extension Support
gl_EXT_vertex_shader
-- * GL_EXT_vertex_shader
, glBeginVertexShaderEXT
, glBindLightParameterEXT
, glBindMaterialParameterEXT
, glBindParameterEXT
, glBindTexGenParameterEXT
, glBindTextureUnitParameterEXT
, glBindVertexShaderEXT
, glDeleteVertexShaderEXT
, glDisableVariantClientStateEXT
, glEnableVariantClientStateEXT
, glEndVertexShaderEXT
, glExtractComponentEXT
, glGenSymbolsEXT
, glGenVertexShadersEXT
, glGetInvariantBooleanvEXT
, glGetInvariantFloatvEXT
, glGetInvariantIntegervEXT
, glGetLocalConstantBooleanvEXT
, glGetLocalConstantFloatvEXT
, glGetLocalConstantIntegervEXT
, glGetVariantBooleanvEXT
, glGetVariantFloatvEXT
, glGetVariantIntegervEXT
, glGetVariantPointervEXT
, glInsertComponentEXT
, glIsVariantEnabledEXT
, glSetInvariantEXT
, glSetLocalConstantEXT
, glShaderOp1EXT
, glShaderOp2EXT
, glShaderOp3EXT
, glSwizzleEXT
, glVariantPointerEXT
, glVariantbvEXT
, glVariantdvEXT
, glVariantfvEXT
, glVariantivEXT
, glVariantsvEXT
, glVariantubvEXT
, glVariantuivEXT
, glVariantusvEXT
, glWriteMaskEXT
, pattern GL_CURRENT_VERTEX_EXT
, pattern GL_FULL_RANGE_EXT
, pattern GL_INVARIANT_DATATYPE_EXT
, pattern GL_INVARIANT_EXT
, pattern GL_INVARIANT_VALUE_EXT
, pattern GL_LOCAL_CONSTANT_DATATYPE_EXT
, pattern GL_LOCAL_CONSTANT_EXT
, pattern GL_LOCAL_CONSTANT_VALUE_EXT
, pattern GL_LOCAL_EXT
, pattern GL_MATRIX_EXT
, pattern GL_MAX_OPTIMIZED_VERTEX_SHADER_INSTRUCTIONS_EXT
, pattern GL_MAX_OPTIMIZED_VERTEX_SHADER_INVARIANTS_EXT
, pattern GL_MAX_OPTIMIZED_VERTEX_SHADER_LOCALS_EXT
, pattern GL_MAX_OPTIMIZED_VERTEX_SHADER_LOCAL_CONSTANTS_EXT
, pattern GL_MAX_OPTIMIZED_VERTEX_SHADER_VARIANTS_EXT
, pattern GL_MAX_VERTEX_SHADER_INSTRUCTIONS_EXT
, pattern GL_MAX_VERTEX_SHADER_INVARIANTS_EXT
, pattern GL_MAX_VERTEX_SHADER_LOCALS_EXT
, pattern GL_MAX_VERTEX_SHADER_LOCAL_CONSTANTS_EXT
, pattern GL_MAX_VERTEX_SHADER_VARIANTS_EXT
, pattern GL_MVP_MATRIX_EXT
, pattern GL_NEGATIVE_ONE_EXT
, pattern GL_NEGATIVE_W_EXT
, pattern GL_NEGATIVE_X_EXT
, pattern GL_NEGATIVE_Y_EXT
, pattern GL_NEGATIVE_Z_EXT
, pattern GL_NORMALIZED_RANGE_EXT
, pattern GL_ONE_EXT
, pattern GL_OP_ADD_EXT
, pattern GL_OP_CLAMP_EXT
, pattern GL_OP_CROSS_PRODUCT_EXT
, pattern GL_OP_DOT3_EXT
, pattern GL_OP_DOT4_EXT
, pattern GL_OP_EXP_BASE_2_EXT
, pattern GL_OP_FLOOR_EXT
, pattern GL_OP_FRAC_EXT
, pattern GL_OP_INDEX_EXT
, pattern GL_OP_LOG_BASE_2_EXT
, pattern GL_OP_MADD_EXT
, pattern GL_OP_MAX_EXT
, pattern GL_OP_MIN_EXT
, pattern GL_OP_MOV_EXT
, pattern GL_OP_MULTIPLY_MATRIX_EXT
, pattern GL_OP_MUL_EXT
, pattern GL_OP_NEGATE_EXT
, pattern GL_OP_POWER_EXT
, pattern GL_OP_RECIP_EXT
, pattern GL_OP_RECIP_SQRT_EXT
, pattern GL_OP_ROUND_EXT
, pattern GL_OP_SET_GE_EXT
, pattern GL_OP_SET_LT_EXT
, pattern GL_OP_SUB_EXT
, pattern GL_OUTPUT_COLOR0_EXT
, pattern GL_OUTPUT_COLOR1_EXT
, pattern GL_OUTPUT_FOG_EXT
, pattern GL_OUTPUT_TEXTURE_COORD0_EXT
, pattern GL_OUTPUT_TEXTURE_COORD10_EXT
, pattern GL_OUTPUT_TEXTURE_COORD11_EXT
, pattern GL_OUTPUT_TEXTURE_COORD12_EXT
, pattern GL_OUTPUT_TEXTURE_COORD13_EXT
, pattern GL_OUTPUT_TEXTURE_COORD14_EXT
, pattern GL_OUTPUT_TEXTURE_COORD15_EXT
, pattern GL_OUTPUT_TEXTURE_COORD16_EXT
, pattern GL_OUTPUT_TEXTURE_COORD17_EXT
, pattern GL_OUTPUT_TEXTURE_COORD18_EXT
, pattern GL_OUTPUT_TEXTURE_COORD19_EXT
, pattern GL_OUTPUT_TEXTURE_COORD1_EXT
, pattern GL_OUTPUT_TEXTURE_COORD20_EXT
, pattern GL_OUTPUT_TEXTURE_COORD21_EXT
, pattern GL_OUTPUT_TEXTURE_COORD22_EXT
, pattern GL_OUTPUT_TEXTURE_COORD23_EXT
, pattern GL_OUTPUT_TEXTURE_COORD24_EXT
, pattern GL_OUTPUT_TEXTURE_COORD25_EXT
, pattern GL_OUTPUT_TEXTURE_COORD26_EXT
, pattern GL_OUTPUT_TEXTURE_COORD27_EXT
, pattern GL_OUTPUT_TEXTURE_COORD28_EXT
, pattern GL_OUTPUT_TEXTURE_COORD29_EXT
, pattern GL_OUTPUT_TEXTURE_COORD2_EXT
, pattern GL_OUTPUT_TEXTURE_COORD30_EXT
, pattern GL_OUTPUT_TEXTURE_COORD31_EXT
, pattern GL_OUTPUT_TEXTURE_COORD3_EXT
, pattern GL_OUTPUT_TEXTURE_COORD4_EXT
, pattern GL_OUTPUT_TEXTURE_COORD5_EXT
, pattern GL_OUTPUT_TEXTURE_COORD6_EXT
, pattern GL_OUTPUT_TEXTURE_COORD7_EXT
, pattern GL_OUTPUT_TEXTURE_COORD8_EXT
, pattern GL_OUTPUT_TEXTURE_COORD9_EXT
, pattern GL_OUTPUT_VERTEX_EXT
, pattern GL_SCALAR_EXT
, pattern GL_VARIANT_ARRAY_EXT
, pattern GL_VARIANT_ARRAY_POINTER_EXT
, pattern GL_VARIANT_ARRAY_STRIDE_EXT
, pattern GL_VARIANT_ARRAY_TYPE_EXT
, pattern GL_VARIANT_DATATYPE_EXT
, pattern GL_VARIANT_EXT
, pattern GL_VARIANT_VALUE_EXT
, pattern GL_VECTOR_EXT
, pattern GL_VERTEX_SHADER_BINDING_EXT
, pattern GL_VERTEX_SHADER_EXT
, pattern GL_VERTEX_SHADER_INSTRUCTIONS_EXT
, pattern GL_VERTEX_SHADER_INVARIANTS_EXT
, pattern GL_VERTEX_SHADER_LOCALS_EXT
, pattern GL_VERTEX_SHADER_LOCAL_CONSTANTS_EXT
, pattern GL_VERTEX_SHADER_OPTIMIZED_EXT
, pattern GL_VERTEX_SHADER_VARIANTS_EXT
, pattern GL_W_EXT
, pattern GL_X_EXT
, pattern GL_Y_EXT
, pattern GL_ZERO_EXT
, pattern GL_Z_EXT
) where
import Control.Monad.IO.Class
import Data.Set
import Foreign.Ptr
import Graphics.GL.Internal.FFI
import Graphics.GL.Internal.Proc
import Graphics.GL.Types
import System.IO.Unsafe
-- | Checks that the <https://cvs.khronos.org/svn/repos/ogl/trunk/doc/registry/public/specs/EXT/vertex_shader.txt GL_EXT_vertex_shader> extension is available.
gl_EXT_vertex_shader :: Bool
gl_EXT_vertex_shader = member "GL_EXT_vertex_shader" extensions
{-# NOINLINE gl_EXT_vertex_shader #-}
-- | Usage: @'glBeginVertexShaderEXT'@
glBeginVertexShaderEXT :: MonadIO m => m ()
glBeginVertexShaderEXT = ffiIOV glBeginVertexShaderEXTFunPtr
glBeginVertexShaderEXTFunPtr :: FunPtr (IO ())
glBeginVertexShaderEXTFunPtr = unsafePerformIO (getProcAddress "glBeginVertexShaderEXT")
{-# NOINLINE glBeginVertexShaderEXTFunPtr #-}
-- | Usage: @'glBindLightParameterEXT' light value@
--
-- The parameter @light@ is a @LightName@, one of: 'Graphics.GL.Ext.SGIX.FragmentLighting.GL_FRAGMENT_LIGHT0_SGIX', 'Graphics.GL.Ext.SGIX.FragmentLighting.GL_FRAGMENT_LIGHT1_SGIX', 'Graphics.GL.Ext.SGIX.FragmentLighting.GL_FRAGMENT_LIGHT2_SGIX', 'Graphics.GL.Ext.SGIX.FragmentLighting.GL_FRAGMENT_LIGHT3_SGIX', 'Graphics.GL.Ext.SGIX.FragmentLighting.GL_FRAGMENT_LIGHT4_SGIX', 'Graphics.GL.Ext.SGIX.FragmentLighting.GL_FRAGMENT_LIGHT5_SGIX', 'Graphics.GL.Ext.SGIX.FragmentLighting.GL_FRAGMENT_LIGHT6_SGIX', 'Graphics.GL.Ext.SGIX.FragmentLighting.GL_FRAGMENT_LIGHT7_SGIX', 'Graphics.GL.Internal.Shared.GL_LIGHT0', 'Graphics.GL.Internal.Shared.GL_LIGHT1', 'Graphics.GL.Internal.Shared.GL_LIGHT2', 'Graphics.GL.Internal.Shared.GL_LIGHT3', 'Graphics.GL.Internal.Shared.GL_LIGHT4', 'Graphics.GL.Internal.Shared.GL_LIGHT5', 'Graphics.GL.Internal.Shared.GL_LIGHT6', 'Graphics.GL.Internal.Shared.GL_LIGHT7'.
--
-- The parameter @value@ is a @LightParameter@, one of: 'Graphics.GL.Internal.Shared.GL_AMBIENT', 'Graphics.GL.Internal.Shared.GL_CONSTANT_ATTENUATION', 'Graphics.GL.Internal.Shared.GL_DIFFUSE', 'Graphics.GL.Internal.Shared.GL_LINEAR_ATTENUATION', 'Graphics.GL.Internal.Shared.GL_POSITION', 'Graphics.GL.Internal.Shared.GL_QUADRATIC_ATTENUATION', 'Graphics.GL.Internal.Shared.GL_SPECULAR', 'Graphics.GL.Internal.Shared.GL_SPOT_CUTOFF', 'Graphics.GL.Internal.Shared.GL_SPOT_DIRECTION', 'Graphics.GL.Internal.Shared.GL_SPOT_EXPONENT'.
glBindLightParameterEXT :: MonadIO m => GLenum -> GLenum -> m GLuint
glBindLightParameterEXT = ffienumenumIOuint glBindLightParameterEXTFunPtr
glBindLightParameterEXTFunPtr :: FunPtr (GLenum -> GLenum -> IO GLuint)
glBindLightParameterEXTFunPtr = unsafePerformIO (getProcAddress "glBindLightParameterEXT")
{-# NOINLINE glBindLightParameterEXTFunPtr #-}
-- | Usage: @'glBindMaterialParameterEXT' face value@
--
-- The parameter @face@ is a @MaterialFace@, one of: 'Graphics.GL.Internal.Shared.GL_BACK', 'Graphics.GL.Internal.Shared.GL_FRONT', 'Graphics.GL.Internal.Shared.GL_FRONT_AND_BACK'.
--
-- The parameter @value@ is a @MaterialParameter@, one of: 'Graphics.GL.Internal.Shared.GL_AMBIENT', 'Graphics.GL.Internal.Shared.GL_AMBIENT_AND_DIFFUSE', 'Graphics.GL.Internal.Shared.GL_COLOR_INDEXES', 'Graphics.GL.Internal.Shared.GL_DIFFUSE', 'Graphics.GL.Internal.Shared.GL_EMISSION', 'Graphics.GL.Internal.Shared.GL_SHININESS', 'Graphics.GL.Internal.Shared.GL_SPECULAR'.
glBindMaterialParameterEXT :: MonadIO m => GLenum -> GLenum -> m GLuint
glBindMaterialParameterEXT = ffienumenumIOuint glBindMaterialParameterEXTFunPtr
glBindMaterialParameterEXTFunPtr :: FunPtr (GLenum -> GLenum -> IO GLuint)
glBindMaterialParameterEXTFunPtr = unsafePerformIO (getProcAddress "glBindMaterialParameterEXT")
{-# NOINLINE glBindMaterialParameterEXTFunPtr #-}
-- | Usage: @'glBindParameterEXT' value@
--
-- The parameter @value@ is a @VertexShaderParameterEXT@.
glBindParameterEXT :: MonadIO m => GLenum -> m GLuint
glBindParameterEXT = ffienumIOuint glBindParameterEXTFunPtr
glBindParameterEXTFunPtr :: FunPtr (GLenum -> IO GLuint)
glBindParameterEXTFunPtr = unsafePerformIO (getProcAddress "glBindParameterEXT")
{-# NOINLINE glBindParameterEXTFunPtr #-}
-- | Usage: @'glBindTexGenParameterEXT' unit coord value@
--
-- The parameter @unit@ is a @TextureUnit@.
--
-- The parameter @coord@ is a @TextureCoordName@, one of: 'Graphics.GL.Internal.Shared.GL_S', 'Graphics.GL.Internal.Shared.GL_T', 'Graphics.GL.Internal.Shared.GL_R', 'Graphics.GL.Internal.Shared.GL_Q'.
--
-- The parameter @value@ is a @TextureGenParameter@, one of: 'Graphics.GL.Ext.SGIS.PointLineTexgen.GL_EYE_LINE_SGIS', 'Graphics.GL.Internal.Shared.GL_EYE_PLANE', 'Graphics.GL.Ext.SGIS.PointLineTexgen.GL_EYE_POINT_SGIS', 'Graphics.GL.Ext.SGIS.PointLineTexgen.GL_OBJECT_LINE_SGIS', 'Graphics.GL.Internal.Shared.GL_OBJECT_PLANE', 'Graphics.GL.Ext.SGIS.PointLineTexgen.GL_OBJECT_POINT_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_GEN_MODE'.
glBindTexGenParameterEXT :: MonadIO m => GLenum -> GLenum -> GLenum -> m GLuint
glBindTexGenParameterEXT = ffienumenumenumIOuint glBindTexGenParameterEXTFunPtr
glBindTexGenParameterEXTFunPtr :: FunPtr (GLenum -> GLenum -> GLenum -> IO GLuint)
glBindTexGenParameterEXTFunPtr = unsafePerformIO (getProcAddress "glBindTexGenParameterEXT")
{-# NOINLINE glBindTexGenParameterEXTFunPtr #-}
-- | Usage: @'glBindTextureUnitParameterEXT' unit value@
--
-- The parameter @unit@ is a @TextureUnit@.
--
-- The parameter @value@ is a @VertexShaderTextureUnitParameter@.
glBindTextureUnitParameterEXT :: MonadIO m => GLenum -> GLenum -> m GLuint
glBindTextureUnitParameterEXT = ffienumenumIOuint glBindTextureUnitParameterEXTFunPtr
glBindTextureUnitParameterEXTFunPtr :: FunPtr (GLenum -> GLenum -> IO GLuint)
glBindTextureUnitParameterEXTFunPtr = unsafePerformIO (getProcAddress "glBindTextureUnitParameterEXT")
{-# NOINLINE glBindTextureUnitParameterEXTFunPtr #-}
-- | Usage: @'glBindVertexShaderEXT' id@
glBindVertexShaderEXT :: MonadIO m => GLuint -> m ()
glBindVertexShaderEXT = ffiuintIOV glBindVertexShaderEXTFunPtr
glBindVertexShaderEXTFunPtr :: FunPtr (GLuint -> IO ())
glBindVertexShaderEXTFunPtr = unsafePerformIO (getProcAddress "glBindVertexShaderEXT")
{-# NOINLINE glBindVertexShaderEXTFunPtr #-}
-- | Usage: @'glDeleteVertexShaderEXT' id@
glDeleteVertexShaderEXT :: MonadIO m => GLuint -> m ()
glDeleteVertexShaderEXT = ffiuintIOV glDeleteVertexShaderEXTFunPtr
glDeleteVertexShaderEXTFunPtr :: FunPtr (GLuint -> IO ())
glDeleteVertexShaderEXTFunPtr = unsafePerformIO (getProcAddress "glDeleteVertexShaderEXT")
{-# NOINLINE glDeleteVertexShaderEXTFunPtr #-}
-- | Usage: @'glDisableVariantClientStateEXT' id@
glDisableVariantClientStateEXT :: MonadIO m => GLuint -> m ()
glDisableVariantClientStateEXT = ffiuintIOV glDisableVariantClientStateEXTFunPtr
glDisableVariantClientStateEXTFunPtr :: FunPtr (GLuint -> IO ())
glDisableVariantClientStateEXTFunPtr = unsafePerformIO (getProcAddress "glDisableVariantClientStateEXT")
{-# NOINLINE glDisableVariantClientStateEXTFunPtr #-}
-- | Usage: @'glEnableVariantClientStateEXT' id@
glEnableVariantClientStateEXT :: MonadIO m => GLuint -> m ()
glEnableVariantClientStateEXT = ffiuintIOV glEnableVariantClientStateEXTFunPtr
glEnableVariantClientStateEXTFunPtr :: FunPtr (GLuint -> IO ())
glEnableVariantClientStateEXTFunPtr = unsafePerformIO (getProcAddress "glEnableVariantClientStateEXT")
{-# NOINLINE glEnableVariantClientStateEXTFunPtr #-}
-- | Usage: @'glEndVertexShaderEXT'@
glEndVertexShaderEXT :: MonadIO m => m ()
glEndVertexShaderEXT = ffiIOV glEndVertexShaderEXTFunPtr
glEndVertexShaderEXTFunPtr :: FunPtr (IO ())
glEndVertexShaderEXTFunPtr = unsafePerformIO (getProcAddress "glEndVertexShaderEXT")
{-# NOINLINE glEndVertexShaderEXTFunPtr #-}
-- | Usage: @'glExtractComponentEXT' res src num@
glExtractComponentEXT :: MonadIO m => GLuint -> GLuint -> GLuint -> m ()
glExtractComponentEXT = ffiuintuintuintIOV glExtractComponentEXTFunPtr
glExtractComponentEXTFunPtr :: FunPtr (GLuint -> GLuint -> GLuint -> IO ())
glExtractComponentEXTFunPtr = unsafePerformIO (getProcAddress "glExtractComponentEXT")
{-# NOINLINE glExtractComponentEXTFunPtr #-}
-- | Usage: @'glGenSymbolsEXT' datatype storagetype range components@
--
-- The parameter @datatype@ is a @DataTypeEXT@.
--
-- The parameter @storagetype@ is a @VertexShaderStorageTypeEXT@.
--
-- The parameter @range@ is a @ParameterRangeEXT@.
glGenSymbolsEXT :: MonadIO m => GLenum -> GLenum -> GLenum -> GLuint -> m GLuint
glGenSymbolsEXT = ffienumenumenumuintIOuint glGenSymbolsEXTFunPtr
glGenSymbolsEXTFunPtr :: FunPtr (GLenum -> GLenum -> GLenum -> GLuint -> IO GLuint)
glGenSymbolsEXTFunPtr = unsafePerformIO (getProcAddress "glGenSymbolsEXT")
{-# NOINLINE glGenSymbolsEXTFunPtr #-}
-- | Usage: @'glGenVertexShadersEXT' range@
glGenVertexShadersEXT :: MonadIO m => GLuint -> m GLuint
glGenVertexShadersEXT = ffiuintIOuint glGenVertexShadersEXTFunPtr
glGenVertexShadersEXTFunPtr :: FunPtr (GLuint -> IO GLuint)
glGenVertexShadersEXTFunPtr = unsafePerformIO (getProcAddress "glGenVertexShadersEXT")
{-# NOINLINE glGenVertexShadersEXTFunPtr #-}
-- | Usage: @'glGetInvariantBooleanvEXT' id value data@
--
-- The parameter @value@ is a @GetVariantValueEXT@.
--
-- The parameter @data@ is a @Boolean@, one of: 'Graphics.GL.Internal.Shared.GL_FALSE', 'Graphics.GL.Internal.Shared.GL_TRUE'.
--
-- The length of @data@ should be @COMPSIZE(id)@.
glGetInvariantBooleanvEXT :: MonadIO m => GLuint -> GLenum -> Ptr GLboolean -> m ()
glGetInvariantBooleanvEXT = ffiuintenumPtrbooleanIOV glGetInvariantBooleanvEXTFunPtr
glGetInvariantBooleanvEXTFunPtr :: FunPtr (GLuint -> GLenum -> Ptr GLboolean -> IO ())
glGetInvariantBooleanvEXTFunPtr = unsafePerformIO (getProcAddress "glGetInvariantBooleanvEXT")
{-# NOINLINE glGetInvariantBooleanvEXTFunPtr #-}
-- | Usage: @'glGetInvariantFloatvEXT' id value data@
--
-- The parameter @value@ is a @GetVariantValueEXT@.
--
-- The length of @data@ should be @COMPSIZE(id)@.
glGetInvariantFloatvEXT :: MonadIO m => GLuint -> GLenum -> Ptr GLfloat -> m ()
glGetInvariantFloatvEXT = ffiuintenumPtrfloatIOV glGetInvariantFloatvEXTFunPtr
glGetInvariantFloatvEXTFunPtr :: FunPtr (GLuint -> GLenum -> Ptr GLfloat -> IO ())
glGetInvariantFloatvEXTFunPtr = unsafePerformIO (getProcAddress "glGetInvariantFloatvEXT")
{-# NOINLINE glGetInvariantFloatvEXTFunPtr #-}
-- | Usage: @'glGetInvariantIntegervEXT' id value data@
--
-- The parameter @value@ is a @GetVariantValueEXT@.
--
-- The length of @data@ should be @COMPSIZE(id)@.
glGetInvariantIntegervEXT :: MonadIO m => GLuint -> GLenum -> Ptr GLint -> m ()
glGetInvariantIntegervEXT = ffiuintenumPtrintIOV glGetInvariantIntegervEXTFunPtr
glGetInvariantIntegervEXTFunPtr :: FunPtr (GLuint -> GLenum -> Ptr GLint -> IO ())
glGetInvariantIntegervEXTFunPtr = unsafePerformIO (getProcAddress "glGetInvariantIntegervEXT")
{-# NOINLINE glGetInvariantIntegervEXTFunPtr #-}
-- | Usage: @'glGetLocalConstantBooleanvEXT' id value data@
--
-- The parameter @value@ is a @GetVariantValueEXT@.
--
-- The parameter @data@ is a @Boolean@, one of: 'Graphics.GL.Internal.Shared.GL_FALSE', 'Graphics.GL.Internal.Shared.GL_TRUE'.
--
-- The length of @data@ should be @COMPSIZE(id)@.
glGetLocalConstantBooleanvEXT :: MonadIO m => GLuint -> GLenum -> Ptr GLboolean -> m ()
glGetLocalConstantBooleanvEXT = ffiuintenumPtrbooleanIOV glGetLocalConstantBooleanvEXTFunPtr
glGetLocalConstantBooleanvEXTFunPtr :: FunPtr (GLuint -> GLenum -> Ptr GLboolean -> IO ())
glGetLocalConstantBooleanvEXTFunPtr = unsafePerformIO (getProcAddress "glGetLocalConstantBooleanvEXT")
{-# NOINLINE glGetLocalConstantBooleanvEXTFunPtr #-}
-- | Usage: @'glGetLocalConstantFloatvEXT' id value data@
--
-- The parameter @value@ is a @GetVariantValueEXT@.
--
-- The length of @data@ should be @COMPSIZE(id)@.
glGetLocalConstantFloatvEXT :: MonadIO m => GLuint -> GLenum -> Ptr GLfloat -> m ()
glGetLocalConstantFloatvEXT = ffiuintenumPtrfloatIOV glGetLocalConstantFloatvEXTFunPtr
glGetLocalConstantFloatvEXTFunPtr :: FunPtr (GLuint -> GLenum -> Ptr GLfloat -> IO ())
glGetLocalConstantFloatvEXTFunPtr = unsafePerformIO (getProcAddress "glGetLocalConstantFloatvEXT")
{-# NOINLINE glGetLocalConstantFloatvEXTFunPtr #-}
-- | Usage: @'glGetLocalConstantIntegervEXT' id value data@
--
-- The parameter @value@ is a @GetVariantValueEXT@.
--
-- The length of @data@ should be @COMPSIZE(id)@.
glGetLocalConstantIntegervEXT :: MonadIO m => GLuint -> GLenum -> Ptr GLint -> m ()
glGetLocalConstantIntegervEXT = ffiuintenumPtrintIOV glGetLocalConstantIntegervEXTFunPtr
glGetLocalConstantIntegervEXTFunPtr :: FunPtr (GLuint -> GLenum -> Ptr GLint -> IO ())
glGetLocalConstantIntegervEXTFunPtr = unsafePerformIO (getProcAddress "glGetLocalConstantIntegervEXT")
{-# NOINLINE glGetLocalConstantIntegervEXTFunPtr #-}
-- | Usage: @'glGetVariantBooleanvEXT' id value data@
--
-- The parameter @value@ is a @GetVariantValueEXT@.
--
-- The parameter @data@ is a @Boolean@, one of: 'Graphics.GL.Internal.Shared.GL_FALSE', 'Graphics.GL.Internal.Shared.GL_TRUE'.
--
-- The length of @data@ should be @COMPSIZE(id)@.
glGetVariantBooleanvEXT :: MonadIO m => GLuint -> GLenum -> Ptr GLboolean -> m ()
glGetVariantBooleanvEXT = ffiuintenumPtrbooleanIOV glGetVariantBooleanvEXTFunPtr
glGetVariantBooleanvEXTFunPtr :: FunPtr (GLuint -> GLenum -> Ptr GLboolean -> IO ())
glGetVariantBooleanvEXTFunPtr = unsafePerformIO (getProcAddress "glGetVariantBooleanvEXT")
{-# NOINLINE glGetVariantBooleanvEXTFunPtr #-}
-- | Usage: @'glGetVariantFloatvEXT' id value data@
--
-- The parameter @value@ is a @GetVariantValueEXT@.
--
-- The length of @data@ should be @COMPSIZE(id)@.
glGetVariantFloatvEXT :: MonadIO m => GLuint -> GLenum -> Ptr GLfloat -> m ()
glGetVariantFloatvEXT = ffiuintenumPtrfloatIOV glGetVariantFloatvEXTFunPtr
glGetVariantFloatvEXTFunPtr :: FunPtr (GLuint -> GLenum -> Ptr GLfloat -> IO ())
glGetVariantFloatvEXTFunPtr = unsafePerformIO (getProcAddress "glGetVariantFloatvEXT")
{-# NOINLINE glGetVariantFloatvEXTFunPtr #-}
-- | Usage: @'glGetVariantIntegervEXT' id value data@
--
-- The parameter @value@ is a @GetVariantValueEXT@.
--
-- The length of @data@ should be @COMPSIZE(id)@.
glGetVariantIntegervEXT :: MonadIO m => GLuint -> GLenum -> Ptr GLint -> m ()
glGetVariantIntegervEXT = ffiuintenumPtrintIOV glGetVariantIntegervEXTFunPtr
glGetVariantIntegervEXTFunPtr :: FunPtr (GLuint -> GLenum -> Ptr GLint -> IO ())
glGetVariantIntegervEXTFunPtr = unsafePerformIO (getProcAddress "glGetVariantIntegervEXT")
{-# NOINLINE glGetVariantIntegervEXTFunPtr #-}
-- | Usage: @'glGetVariantPointervEXT' id value data@
--
-- The parameter @value@ is a @GetVariantValueEXT@.
--
-- The length of @data@ should be @COMPSIZE(id)@.
glGetVariantPointervEXT :: MonadIO m => GLuint -> GLenum -> Ptr (Ptr ()) -> m ()
glGetVariantPointervEXT = ffiuintenumPtrPtrVIOV glGetVariantPointervEXTFunPtr
glGetVariantPointervEXTFunPtr :: FunPtr (GLuint -> GLenum -> Ptr (Ptr ()) -> IO ())
glGetVariantPointervEXTFunPtr = unsafePerformIO (getProcAddress "glGetVariantPointervEXT")
{-# NOINLINE glGetVariantPointervEXTFunPtr #-}
-- | Usage: @'glInsertComponentEXT' res src num@
glInsertComponentEXT :: MonadIO m => GLuint -> GLuint -> GLuint -> m ()
glInsertComponentEXT = ffiuintuintuintIOV glInsertComponentEXTFunPtr
glInsertComponentEXTFunPtr :: FunPtr (GLuint -> GLuint -> GLuint -> IO ())
glInsertComponentEXTFunPtr = unsafePerformIO (getProcAddress "glInsertComponentEXT")
{-# NOINLINE glInsertComponentEXTFunPtr #-}
-- | Usage: @'glIsVariantEnabledEXT' id cap@
--
-- The parameter @cap@ is a @VariantCapEXT@.
glIsVariantEnabledEXT :: MonadIO m => GLuint -> GLenum -> m GLboolean
glIsVariantEnabledEXT = ffiuintenumIOboolean glIsVariantEnabledEXTFunPtr
glIsVariantEnabledEXTFunPtr :: FunPtr (GLuint -> GLenum -> IO GLboolean)
glIsVariantEnabledEXTFunPtr = unsafePerformIO (getProcAddress "glIsVariantEnabledEXT")
{-# NOINLINE glIsVariantEnabledEXTFunPtr #-}
-- | Usage: @'glSetInvariantEXT' id type addr@
--
-- The parameter @type@ is a @ScalarType@.
--
-- The length of @addr@ should be @COMPSIZE(id,type)@.
glSetInvariantEXT :: MonadIO m => GLuint -> GLenum -> Ptr () -> m ()
glSetInvariantEXT = ffiuintenumPtrVIOV glSetInvariantEXTFunPtr
glSetInvariantEXTFunPtr :: FunPtr (GLuint -> GLenum -> Ptr () -> IO ())
glSetInvariantEXTFunPtr = unsafePerformIO (getProcAddress "glSetInvariantEXT")
{-# NOINLINE glSetInvariantEXTFunPtr #-}
-- | Usage: @'glSetLocalConstantEXT' id type addr@
--
-- The parameter @type@ is a @ScalarType@.
--
-- The length of @addr@ should be @COMPSIZE(id,type)@.
glSetLocalConstantEXT :: MonadIO m => GLuint -> GLenum -> Ptr () -> m ()
glSetLocalConstantEXT = ffiuintenumPtrVIOV glSetLocalConstantEXTFunPtr
glSetLocalConstantEXTFunPtr :: FunPtr (GLuint -> GLenum -> Ptr () -> IO ())
glSetLocalConstantEXTFunPtr = unsafePerformIO (getProcAddress "glSetLocalConstantEXT")
{-# NOINLINE glSetLocalConstantEXTFunPtr #-}
-- | Usage: @'glShaderOp1EXT' op res arg1@
--
-- The parameter @op@ is a @VertexShaderOpEXT@.
glShaderOp1EXT :: MonadIO m => GLenum -> GLuint -> GLuint -> m ()
glShaderOp1EXT = ffienumuintuintIOV glShaderOp1EXTFunPtr
glShaderOp1EXTFunPtr :: FunPtr (GLenum -> GLuint -> GLuint -> IO ())
glShaderOp1EXTFunPtr = unsafePerformIO (getProcAddress "glShaderOp1EXT")
{-# NOINLINE glShaderOp1EXTFunPtr #-}
-- | Usage: @'glShaderOp2EXT' op res arg1 arg2@
--
-- The parameter @op@ is a @VertexShaderOpEXT@.
glShaderOp2EXT :: MonadIO m => GLenum -> GLuint -> GLuint -> GLuint -> m ()
glShaderOp2EXT = ffienumuintuintuintIOV glShaderOp2EXTFunPtr
glShaderOp2EXTFunPtr :: FunPtr (GLenum -> GLuint -> GLuint -> GLuint -> IO ())
glShaderOp2EXTFunPtr = unsafePerformIO (getProcAddress "glShaderOp2EXT")
{-# NOINLINE glShaderOp2EXTFunPtr #-}
-- | Usage: @'glShaderOp3EXT' op res arg1 arg2 arg3@
--
-- The parameter @op@ is a @VertexShaderOpEXT@.
glShaderOp3EXT :: MonadIO m => GLenum -> GLuint -> GLuint -> GLuint -> GLuint -> m ()
glShaderOp3EXT = ffienumuintuintuintuintIOV glShaderOp3EXTFunPtr
glShaderOp3EXTFunPtr :: FunPtr (GLenum -> GLuint -> GLuint -> GLuint -> GLuint -> IO ())
glShaderOp3EXTFunPtr = unsafePerformIO (getProcAddress "glShaderOp3EXT")
{-# NOINLINE glShaderOp3EXTFunPtr #-}
-- | Usage: @'glSwizzleEXT' res in outX outY outZ outW@
--
-- The parameter @outX@ is a @VertexShaderCoordOutEXT@.
--
-- The parameter @outY@ is a @VertexShaderCoordOutEXT@.
--
-- The parameter @outZ@ is a @VertexShaderCoordOutEXT@.
--
-- The parameter @outW@ is a @VertexShaderCoordOutEXT@.
glSwizzleEXT :: MonadIO m => GLuint -> GLuint -> GLenum -> GLenum -> GLenum -> GLenum -> m ()
glSwizzleEXT = ffiuintuintenumenumenumenumIOV glSwizzleEXTFunPtr
glSwizzleEXTFunPtr :: FunPtr (GLuint -> GLuint -> GLenum -> GLenum -> GLenum -> GLenum -> IO ())
glSwizzleEXTFunPtr = unsafePerformIO (getProcAddress "glSwizzleEXT")
{-# NOINLINE glSwizzleEXTFunPtr #-}
-- | Usage: @'glVariantPointerEXT' id type stride addr@
--
-- The parameter @type@ is a @ScalarType@.
--
-- The length of @addr@ should be @COMPSIZE(id,type,stride)@.
glVariantPointerEXT :: MonadIO m => GLuint -> GLenum -> GLuint -> Ptr () -> m ()
glVariantPointerEXT = ffiuintenumuintPtrVIOV glVariantPointerEXTFunPtr
glVariantPointerEXTFunPtr :: FunPtr (GLuint -> GLenum -> GLuint -> Ptr () -> IO ())
glVariantPointerEXTFunPtr = unsafePerformIO (getProcAddress "glVariantPointerEXT")
{-# NOINLINE glVariantPointerEXTFunPtr #-}
-- | Usage: @'glVariantbvEXT' id addr@
--
-- The length of @addr@ should be @COMPSIZE(id)@.
glVariantbvEXT :: MonadIO m => GLuint -> Ptr GLbyte -> m ()
glVariantbvEXT = ffiuintPtrbyteIOV glVariantbvEXTFunPtr
glVariantbvEXTFunPtr :: FunPtr (GLuint -> Ptr GLbyte -> IO ())
glVariantbvEXTFunPtr = unsafePerformIO (getProcAddress "glVariantbvEXT")
{-# NOINLINE glVariantbvEXTFunPtr #-}
-- | Usage: @'glVariantdvEXT' id addr@
--
-- The length of @addr@ should be @COMPSIZE(id)@.
glVariantdvEXT :: MonadIO m => GLuint -> Ptr GLdouble -> m ()
glVariantdvEXT = ffiuintPtrdoubleIOV glVariantdvEXTFunPtr
glVariantdvEXTFunPtr :: FunPtr (GLuint -> Ptr GLdouble -> IO ())
glVariantdvEXTFunPtr = unsafePerformIO (getProcAddress "glVariantdvEXT")
{-# NOINLINE glVariantdvEXTFunPtr #-}
-- | Usage: @'glVariantfvEXT' id addr@
--
-- The length of @addr@ should be @COMPSIZE(id)@.
glVariantfvEXT :: MonadIO m => GLuint -> Ptr GLfloat -> m ()
glVariantfvEXT = ffiuintPtrfloatIOV glVariantfvEXTFunPtr
glVariantfvEXTFunPtr :: FunPtr (GLuint -> Ptr GLfloat -> IO ())
glVariantfvEXTFunPtr = unsafePerformIO (getProcAddress "glVariantfvEXT")
{-# NOINLINE glVariantfvEXTFunPtr #-}
-- | Usage: @'glVariantivEXT' id addr@
--
-- The length of @addr@ should be @COMPSIZE(id)@.
glVariantivEXT :: MonadIO m => GLuint -> Ptr GLint -> m ()
glVariantivEXT = ffiuintPtrintIOV glVariantivEXTFunPtr
glVariantivEXTFunPtr :: FunPtr (GLuint -> Ptr GLint -> IO ())
glVariantivEXTFunPtr = unsafePerformIO (getProcAddress "glVariantivEXT")
{-# NOINLINE glVariantivEXTFunPtr #-}
-- | Usage: @'glVariantsvEXT' id addr@
--
-- The length of @addr@ should be @COMPSIZE(id)@.
glVariantsvEXT :: MonadIO m => GLuint -> Ptr GLshort -> m ()
glVariantsvEXT = ffiuintPtrshortIOV glVariantsvEXTFunPtr
glVariantsvEXTFunPtr :: FunPtr (GLuint -> Ptr GLshort -> IO ())
glVariantsvEXTFunPtr = unsafePerformIO (getProcAddress "glVariantsvEXT")
{-# NOINLINE glVariantsvEXTFunPtr #-}
-- | Usage: @'glVariantubvEXT' id addr@
--
-- The length of @addr@ should be @COMPSIZE(id)@.
glVariantubvEXT :: MonadIO m => GLuint -> Ptr GLubyte -> m ()
glVariantubvEXT = ffiuintPtrubyteIOV glVariantubvEXTFunPtr
glVariantubvEXTFunPtr :: FunPtr (GLuint -> Ptr GLubyte -> IO ())
glVariantubvEXTFunPtr = unsafePerformIO (getProcAddress "glVariantubvEXT")
{-# NOINLINE glVariantubvEXTFunPtr #-}
-- | Usage: @'glVariantuivEXT' id addr@
--
-- The length of @addr@ should be @COMPSIZE(id)@.
glVariantuivEXT :: MonadIO m => GLuint -> Ptr GLuint -> m ()
glVariantuivEXT = ffiuintPtruintIOV glVariantuivEXTFunPtr
glVariantuivEXTFunPtr :: FunPtr (GLuint -> Ptr GLuint -> IO ())
glVariantuivEXTFunPtr = unsafePerformIO (getProcAddress "glVariantuivEXT")
{-# NOINLINE glVariantuivEXTFunPtr #-}
-- | Usage: @'glVariantusvEXT' id addr@
--
-- The length of @addr@ should be @COMPSIZE(id)@.
glVariantusvEXT :: MonadIO m => GLuint -> Ptr GLushort -> m ()
glVariantusvEXT = ffiuintPtrushortIOV glVariantusvEXTFunPtr
glVariantusvEXTFunPtr :: FunPtr (GLuint -> Ptr GLushort -> IO ())
glVariantusvEXTFunPtr = unsafePerformIO (getProcAddress "glVariantusvEXT")
{-# NOINLINE glVariantusvEXTFunPtr #-}
-- | Usage: @'glWriteMaskEXT' res in outX outY outZ outW@
--
-- The parameter @outX@ is a @VertexShaderWriteMaskEXT@.
--
-- The parameter @outY@ is a @VertexShaderWriteMaskEXT@.
--
-- The parameter @outZ@ is a @VertexShaderWriteMaskEXT@.
--
-- The parameter @outW@ is a @VertexShaderWriteMaskEXT@.
glWriteMaskEXT :: MonadIO m => GLuint -> GLuint -> GLenum -> GLenum -> GLenum -> GLenum -> m ()
glWriteMaskEXT = ffiuintuintenumenumenumenumIOV glWriteMaskEXTFunPtr
glWriteMaskEXTFunPtr :: FunPtr (GLuint -> GLuint -> GLenum -> GLenum -> GLenum -> GLenum -> IO ())
glWriteMaskEXTFunPtr = unsafePerformIO (getProcAddress "glWriteMaskEXT")
{-# NOINLINE glWriteMaskEXTFunPtr #-}
pattern GL_CURRENT_VERTEX_EXT = 0x87E2
pattern GL_FULL_RANGE_EXT = 0x87E1
pattern GL_INVARIANT_DATATYPE_EXT = 0x87EB
pattern GL_INVARIANT_EXT = 0x87C2
pattern GL_INVARIANT_VALUE_EXT = 0x87EA
pattern GL_LOCAL_CONSTANT_DATATYPE_EXT = 0x87ED
pattern GL_LOCAL_CONSTANT_EXT = 0x87C3
pattern GL_LOCAL_CONSTANT_VALUE_EXT = 0x87EC
pattern GL_LOCAL_EXT = 0x87C4
pattern GL_MATRIX_EXT = 0x87C0
pattern GL_MAX_OPTIMIZED_VERTEX_SHADER_INSTRUCTIONS_EXT = 0x87CA
pattern GL_MAX_OPTIMIZED_VERTEX_SHADER_INVARIANTS_EXT = 0x87CD
pattern GL_MAX_OPTIMIZED_VERTEX_SHADER_LOCALS_EXT = 0x87CE
pattern GL_MAX_OPTIMIZED_VERTEX_SHADER_LOCAL_CONSTANTS_EXT = 0x87CC
pattern GL_MAX_OPTIMIZED_VERTEX_SHADER_VARIANTS_EXT = 0x87CB
pattern GL_MAX_VERTEX_SHADER_INSTRUCTIONS_EXT = 0x87C5
pattern GL_MAX_VERTEX_SHADER_INVARIANTS_EXT = 0x87C7
pattern GL_MAX_VERTEX_SHADER_LOCALS_EXT = 0x87C9
pattern GL_MAX_VERTEX_SHADER_LOCAL_CONSTANTS_EXT = 0x87C8
pattern GL_MAX_VERTEX_SHADER_VARIANTS_EXT = 0x87C6
pattern GL_MVP_MATRIX_EXT = 0x87E3
pattern GL_NEGATIVE_ONE_EXT = 0x87DF
pattern GL_NEGATIVE_W_EXT = 0x87DC
pattern GL_NEGATIVE_X_EXT = 0x87D9
pattern GL_NEGATIVE_Y_EXT = 0x87DA
pattern GL_NEGATIVE_Z_EXT = 0x87DB
pattern GL_NORMALIZED_RANGE_EXT = 0x87E0
pattern GL_ONE_EXT = 0x87DE
pattern GL_OP_ADD_EXT = 0x8787
pattern GL_OP_CLAMP_EXT = 0x878E
pattern GL_OP_CROSS_PRODUCT_EXT = 0x8797
pattern GL_OP_DOT3_EXT = 0x8784
pattern GL_OP_DOT4_EXT = 0x8785
pattern GL_OP_EXP_BASE_2_EXT = 0x8791
pattern GL_OP_FLOOR_EXT = 0x878F
pattern GL_OP_FRAC_EXT = 0x8789
pattern GL_OP_INDEX_EXT = 0x8782
pattern GL_OP_LOG_BASE_2_EXT = 0x8792
pattern GL_OP_MADD_EXT = 0x8788
pattern GL_OP_MAX_EXT = 0x878A
pattern GL_OP_MIN_EXT = 0x878B
pattern GL_OP_MOV_EXT = 0x8799
pattern GL_OP_MULTIPLY_MATRIX_EXT = 0x8798
pattern GL_OP_MUL_EXT = 0x8786
pattern GL_OP_NEGATE_EXT = 0x8783
pattern GL_OP_POWER_EXT = 0x8793
pattern GL_OP_RECIP_EXT = 0x8794
pattern GL_OP_RECIP_SQRT_EXT = 0x8795
pattern GL_OP_ROUND_EXT = 0x8790
pattern GL_OP_SET_GE_EXT = 0x878C
pattern GL_OP_SET_LT_EXT = 0x878D
pattern GL_OP_SUB_EXT = 0x8796
pattern GL_OUTPUT_COLOR0_EXT = 0x879B
pattern GL_OUTPUT_COLOR1_EXT = 0x879C
pattern GL_OUTPUT_FOG_EXT = 0x87BD
pattern GL_OUTPUT_TEXTURE_COORD0_EXT = 0x879D
pattern GL_OUTPUT_TEXTURE_COORD10_EXT = 0x87A7
pattern GL_OUTPUT_TEXTURE_COORD11_EXT = 0x87A8
pattern GL_OUTPUT_TEXTURE_COORD12_EXT = 0x87A9
pattern GL_OUTPUT_TEXTURE_COORD13_EXT = 0x87AA
pattern GL_OUTPUT_TEXTURE_COORD14_EXT = 0x87AB
pattern GL_OUTPUT_TEXTURE_COORD15_EXT = 0x87AC
pattern GL_OUTPUT_TEXTURE_COORD16_EXT = 0x87AD
pattern GL_OUTPUT_TEXTURE_COORD17_EXT = 0x87AE
pattern GL_OUTPUT_TEXTURE_COORD18_EXT = 0x87AF
pattern GL_OUTPUT_TEXTURE_COORD19_EXT = 0x87B0
pattern GL_OUTPUT_TEXTURE_COORD1_EXT = 0x879E
pattern GL_OUTPUT_TEXTURE_COORD20_EXT = 0x87B1
pattern GL_OUTPUT_TEXTURE_COORD21_EXT = 0x87B2
pattern GL_OUTPUT_TEXTURE_COORD22_EXT = 0x87B3
pattern GL_OUTPUT_TEXTURE_COORD23_EXT = 0x87B4
pattern GL_OUTPUT_TEXTURE_COORD24_EXT = 0x87B5
pattern GL_OUTPUT_TEXTURE_COORD25_EXT = 0x87B6
pattern GL_OUTPUT_TEXTURE_COORD26_EXT = 0x87B7
pattern GL_OUTPUT_TEXTURE_COORD27_EXT = 0x87B8
pattern GL_OUTPUT_TEXTURE_COORD28_EXT = 0x87B9
pattern GL_OUTPUT_TEXTURE_COORD29_EXT = 0x87BA
pattern GL_OUTPUT_TEXTURE_COORD2_EXT = 0x879F
pattern GL_OUTPUT_TEXTURE_COORD30_EXT = 0x87BB
pattern GL_OUTPUT_TEXTURE_COORD31_EXT = 0x87BC
pattern GL_OUTPUT_TEXTURE_COORD3_EXT = 0x87A0
pattern GL_OUTPUT_TEXTURE_COORD4_EXT = 0x87A1
pattern GL_OUTPUT_TEXTURE_COORD5_EXT = 0x87A2
pattern GL_OUTPUT_TEXTURE_COORD6_EXT = 0x87A3
pattern GL_OUTPUT_TEXTURE_COORD7_EXT = 0x87A4
pattern GL_OUTPUT_TEXTURE_COORD8_EXT = 0x87A5
pattern GL_OUTPUT_TEXTURE_COORD9_EXT = 0x87A6
pattern GL_OUTPUT_VERTEX_EXT = 0x879A
pattern GL_SCALAR_EXT = 0x87BE
pattern GL_VARIANT_ARRAY_EXT = 0x87E8
pattern GL_VARIANT_ARRAY_POINTER_EXT = 0x87E9
pattern GL_VARIANT_ARRAY_STRIDE_EXT = 0x87E6
pattern GL_VARIANT_ARRAY_TYPE_EXT = 0x87E7
pattern GL_VARIANT_DATATYPE_EXT = 0x87E5
pattern GL_VARIANT_EXT = 0x87C1
pattern GL_VARIANT_VALUE_EXT = 0x87E4
pattern GL_VECTOR_EXT = 0x87BF
pattern GL_VERTEX_SHADER_BINDING_EXT = 0x8781
pattern GL_VERTEX_SHADER_EXT = 0x8780
pattern GL_VERTEX_SHADER_INSTRUCTIONS_EXT = 0x87CF
pattern GL_VERTEX_SHADER_INVARIANTS_EXT = 0x87D1
pattern GL_VERTEX_SHADER_LOCALS_EXT = 0x87D3
pattern GL_VERTEX_SHADER_LOCAL_CONSTANTS_EXT = 0x87D2
pattern GL_VERTEX_SHADER_OPTIMIZED_EXT = 0x87D4
pattern GL_VERTEX_SHADER_VARIANTS_EXT = 0x87D0
pattern GL_W_EXT = 0x87D8
pattern GL_X_EXT = 0x87D5
pattern GL_Y_EXT = 0x87D6
pattern GL_ZERO_EXT = 0x87DD
pattern GL_Z_EXT = 0x87D7