-- This file was automatically generated.
{-# LANGUAGE CPP, ScopedTypeVariables, PatternSynonyms #-}
module Graphics.GL.Ext.ARB.VertexBlend (
  -- * Extension Support
    gl_ARB_vertex_blend

  -- * GL_ARB_vertex_blend
  , glVertexBlendARB
  , glWeightPointerARB
  , glWeightbvARB
  , glWeightdvARB
  , glWeightfvARB
  , glWeightivARB
  , glWeightsvARB
  , glWeightubvARB
  , glWeightuivARB
  , glWeightusvARB
  , pattern GL_ACTIVE_VERTEX_UNITS_ARB
  , pattern GL_CURRENT_WEIGHT_ARB
  , pattern GL_MAX_VERTEX_UNITS_ARB
  , pattern GL_MODELVIEW0_ARB
  , pattern GL_MODELVIEW10_ARB
  , pattern GL_MODELVIEW11_ARB
  , pattern GL_MODELVIEW12_ARB
  , pattern GL_MODELVIEW13_ARB
  , pattern GL_MODELVIEW14_ARB
  , pattern GL_MODELVIEW15_ARB
  , pattern GL_MODELVIEW16_ARB
  , pattern GL_MODELVIEW17_ARB
  , pattern GL_MODELVIEW18_ARB
  , pattern GL_MODELVIEW19_ARB
  , pattern GL_MODELVIEW1_ARB
  , pattern GL_MODELVIEW20_ARB
  , pattern GL_MODELVIEW21_ARB
  , pattern GL_MODELVIEW22_ARB
  , pattern GL_MODELVIEW23_ARB
  , pattern GL_MODELVIEW24_ARB
  , pattern GL_MODELVIEW25_ARB
  , pattern GL_MODELVIEW26_ARB
  , pattern GL_MODELVIEW27_ARB
  , pattern GL_MODELVIEW28_ARB
  , pattern GL_MODELVIEW29_ARB
  , pattern GL_MODELVIEW2_ARB
  , pattern GL_MODELVIEW30_ARB
  , pattern GL_MODELVIEW31_ARB
  , pattern GL_MODELVIEW3_ARB
  , pattern GL_MODELVIEW4_ARB
  , pattern GL_MODELVIEW5_ARB
  , pattern GL_MODELVIEW6_ARB
  , pattern GL_MODELVIEW7_ARB
  , pattern GL_MODELVIEW8_ARB
  , pattern GL_MODELVIEW9_ARB
  , pattern GL_VERTEX_BLEND_ARB
  , pattern GL_WEIGHT_ARRAY_ARB
  , pattern GL_WEIGHT_ARRAY_POINTER_ARB
  , pattern GL_WEIGHT_ARRAY_SIZE_ARB
  , pattern GL_WEIGHT_ARRAY_STRIDE_ARB
  , pattern GL_WEIGHT_ARRAY_TYPE_ARB
  , pattern GL_WEIGHT_SUM_UNITY_ARB
) 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/ARB/vertex_blend.txt GL_ARB_vertex_blend> extension is available.

gl_ARB_vertex_blend :: Bool
gl_ARB_vertex_blend :: Bool
gl_ARB_vertex_blend = [Char] -> Set [Char] -> Bool
forall a. Ord a => a -> Set a -> Bool
member "GL_ARB_vertex_blend" Set [Char]
extensions
{-# NOINLINE gl_ARB_vertex_blend #-}

-- | Usage: @'glVertexBlendARB' count@


glVertexBlendARB :: MonadIO m => GLint -> m ()
glVertexBlendARB :: GLint -> m ()
glVertexBlendARB = FunPtr (GLint -> IO ()) -> GLint -> m ()
forall (m :: * -> *).
MonadIO m =>
FunPtr (GLint -> IO ()) -> GLint -> m ()
ffiintIOV FunPtr (GLint -> IO ())
glVertexBlendARBFunPtr

glVertexBlendARBFunPtr :: FunPtr (GLint -> IO ())
glVertexBlendARBFunPtr :: FunPtr (GLint -> IO ())
glVertexBlendARBFunPtr = IO (FunPtr (GLint -> IO ())) -> FunPtr (GLint -> IO ())
forall a. IO a -> a
unsafePerformIO ([Char] -> IO (FunPtr (GLint -> IO ()))
forall a. [Char] -> IO (FunPtr a)
getProcAddress "glVertexBlendARB")

{-# NOINLINE glVertexBlendARBFunPtr #-}

-- | Usage: @'glWeightPointerARB' size type stride pointer@
--
-- The parameter @type@ is a @WeightPointerTypeARB@.
--
-- The length of @pointer@ should be @COMPSIZE(type,stride)@.


glWeightPointerARB :: MonadIO m => GLint -> GLenum -> GLsizei -> Ptr () -> m ()
glWeightPointerARB :: GLint -> GLenum -> GLint -> Ptr () -> m ()
glWeightPointerARB = FunPtr (GLint -> GLenum -> GLint -> Ptr () -> IO ())
-> GLint -> GLenum -> GLint -> Ptr () -> m ()
forall (m :: * -> *).
MonadIO m =>
FunPtr (GLint -> GLenum -> GLint -> Ptr () -> IO ())
-> GLint -> GLenum -> GLint -> Ptr () -> m ()
ffiintenumsizeiPtrVIOV FunPtr (GLint -> GLenum -> GLint -> Ptr () -> IO ())
glWeightPointerARBFunPtr

glWeightPointerARBFunPtr :: FunPtr (GLint -> GLenum -> GLsizei -> Ptr () -> IO ())
glWeightPointerARBFunPtr :: FunPtr (GLint -> GLenum -> GLint -> Ptr () -> IO ())
glWeightPointerARBFunPtr = IO (FunPtr (GLint -> GLenum -> GLint -> Ptr () -> IO ()))
-> FunPtr (GLint -> GLenum -> GLint -> Ptr () -> IO ())
forall a. IO a -> a
unsafePerformIO ([Char] -> IO (FunPtr (GLint -> GLenum -> GLint -> Ptr () -> IO ()))
forall a. [Char] -> IO (FunPtr a)
getProcAddress "glWeightPointerARB")

{-# NOINLINE glWeightPointerARBFunPtr #-}

-- | Usage: @'glWeightbvARB' size weights@
--
-- The length of @weights@ should be @size@.


glWeightbvARB :: MonadIO m => GLint -> Ptr GLbyte -> m ()
glWeightbvARB :: GLint -> Ptr GLbyte -> m ()
glWeightbvARB = FunPtr (GLint -> Ptr GLbyte -> IO ())
-> GLint -> Ptr GLbyte -> m ()
forall (m :: * -> *).
MonadIO m =>
FunPtr (GLint -> Ptr GLbyte -> IO ())
-> GLint -> Ptr GLbyte -> m ()
ffiintPtrbyteIOV FunPtr (GLint -> Ptr GLbyte -> IO ())
glWeightbvARBFunPtr

glWeightbvARBFunPtr :: FunPtr (GLint -> Ptr GLbyte -> IO ())
glWeightbvARBFunPtr :: FunPtr (GLint -> Ptr GLbyte -> IO ())
glWeightbvARBFunPtr = IO (FunPtr (GLint -> Ptr GLbyte -> IO ()))
-> FunPtr (GLint -> Ptr GLbyte -> IO ())
forall a. IO a -> a
unsafePerformIO ([Char] -> IO (FunPtr (GLint -> Ptr GLbyte -> IO ()))
forall a. [Char] -> IO (FunPtr a)
getProcAddress "glWeightbvARB")

{-# NOINLINE glWeightbvARBFunPtr #-}

-- | Usage: @'glWeightdvARB' size weights@
--
-- The length of @weights@ should be @size@.


glWeightdvARB :: MonadIO m => GLint -> Ptr GLdouble -> m ()
glWeightdvARB :: GLint -> Ptr GLdouble -> m ()
glWeightdvARB = FunPtr (GLint -> Ptr GLdouble -> IO ())
-> GLint -> Ptr GLdouble -> m ()
forall (m :: * -> *).
MonadIO m =>
FunPtr (GLint -> Ptr GLdouble -> IO ())
-> GLint -> Ptr GLdouble -> m ()
ffiintPtrdoubleIOV FunPtr (GLint -> Ptr GLdouble -> IO ())
glWeightdvARBFunPtr

glWeightdvARBFunPtr :: FunPtr (GLint -> Ptr GLdouble -> IO ())
glWeightdvARBFunPtr :: FunPtr (GLint -> Ptr GLdouble -> IO ())
glWeightdvARBFunPtr = IO (FunPtr (GLint -> Ptr GLdouble -> IO ()))
-> FunPtr (GLint -> Ptr GLdouble -> IO ())
forall a. IO a -> a
unsafePerformIO ([Char] -> IO (FunPtr (GLint -> Ptr GLdouble -> IO ()))
forall a. [Char] -> IO (FunPtr a)
getProcAddress "glWeightdvARB")

{-# NOINLINE glWeightdvARBFunPtr #-}

-- | Usage: @'glWeightfvARB' size weights@
--
-- The length of @weights@ should be @size@.


glWeightfvARB :: MonadIO m => GLint -> Ptr GLfloat -> m ()
glWeightfvARB :: GLint -> Ptr GLfloat -> m ()
glWeightfvARB = FunPtr (GLint -> Ptr GLfloat -> IO ())
-> GLint -> Ptr GLfloat -> m ()
forall (m :: * -> *).
MonadIO m =>
FunPtr (GLint -> Ptr GLfloat -> IO ())
-> GLint -> Ptr GLfloat -> m ()
ffiintPtrfloatIOV FunPtr (GLint -> Ptr GLfloat -> IO ())
glWeightfvARBFunPtr

glWeightfvARBFunPtr :: FunPtr (GLint -> Ptr GLfloat -> IO ())
glWeightfvARBFunPtr :: FunPtr (GLint -> Ptr GLfloat -> IO ())
glWeightfvARBFunPtr = IO (FunPtr (GLint -> Ptr GLfloat -> IO ()))
-> FunPtr (GLint -> Ptr GLfloat -> IO ())
forall a. IO a -> a
unsafePerformIO ([Char] -> IO (FunPtr (GLint -> Ptr GLfloat -> IO ()))
forall a. [Char] -> IO (FunPtr a)
getProcAddress "glWeightfvARB")

{-# NOINLINE glWeightfvARBFunPtr #-}

-- | Usage: @'glWeightivARB' size weights@
--
-- The length of @weights@ should be @size@.


glWeightivARB :: MonadIO m => GLint -> Ptr GLint -> m ()
glWeightivARB :: GLint -> Ptr GLint -> m ()
glWeightivARB = FunPtr (GLint -> Ptr GLint -> IO ()) -> GLint -> Ptr GLint -> m ()
forall (m :: * -> *).
MonadIO m =>
FunPtr (GLint -> Ptr GLint -> IO ()) -> GLint -> Ptr GLint -> m ()
ffiintPtrintIOV FunPtr (GLint -> Ptr GLint -> IO ())
glWeightivARBFunPtr

glWeightivARBFunPtr :: FunPtr (GLint -> Ptr GLint -> IO ())
glWeightivARBFunPtr :: FunPtr (GLint -> Ptr GLint -> IO ())
glWeightivARBFunPtr = IO (FunPtr (GLint -> Ptr GLint -> IO ()))
-> FunPtr (GLint -> Ptr GLint -> IO ())
forall a. IO a -> a
unsafePerformIO ([Char] -> IO (FunPtr (GLint -> Ptr GLint -> IO ()))
forall a. [Char] -> IO (FunPtr a)
getProcAddress "glWeightivARB")

{-# NOINLINE glWeightivARBFunPtr #-}

-- | Usage: @'glWeightsvARB' size weights@
--
-- The length of @weights@ should be @size@.


glWeightsvARB :: MonadIO m => GLint -> Ptr GLshort -> m ()
glWeightsvARB :: GLint -> Ptr GLshort -> m ()
glWeightsvARB = FunPtr (GLint -> Ptr GLshort -> IO ())
-> GLint -> Ptr GLshort -> m ()
forall (m :: * -> *).
MonadIO m =>
FunPtr (GLint -> Ptr GLshort -> IO ())
-> GLint -> Ptr GLshort -> m ()
ffiintPtrshortIOV FunPtr (GLint -> Ptr GLshort -> IO ())
glWeightsvARBFunPtr

glWeightsvARBFunPtr :: FunPtr (GLint -> Ptr GLshort -> IO ())
glWeightsvARBFunPtr :: FunPtr (GLint -> Ptr GLshort -> IO ())
glWeightsvARBFunPtr = IO (FunPtr (GLint -> Ptr GLshort -> IO ()))
-> FunPtr (GLint -> Ptr GLshort -> IO ())
forall a. IO a -> a
unsafePerformIO ([Char] -> IO (FunPtr (GLint -> Ptr GLshort -> IO ()))
forall a. [Char] -> IO (FunPtr a)
getProcAddress "glWeightsvARB")

{-# NOINLINE glWeightsvARBFunPtr #-}

-- | Usage: @'glWeightubvARB' size weights@
--
-- The length of @weights@ should be @size@.


glWeightubvARB :: MonadIO m => GLint -> Ptr GLubyte -> m ()
glWeightubvARB :: GLint -> Ptr GLubyte -> m ()
glWeightubvARB = FunPtr (GLint -> Ptr GLubyte -> IO ())
-> GLint -> Ptr GLubyte -> m ()
forall (m :: * -> *).
MonadIO m =>
FunPtr (GLint -> Ptr GLubyte -> IO ())
-> GLint -> Ptr GLubyte -> m ()
ffiintPtrubyteIOV FunPtr (GLint -> Ptr GLubyte -> IO ())
glWeightubvARBFunPtr

glWeightubvARBFunPtr :: FunPtr (GLint -> Ptr GLubyte -> IO ())
glWeightubvARBFunPtr :: FunPtr (GLint -> Ptr GLubyte -> IO ())
glWeightubvARBFunPtr = IO (FunPtr (GLint -> Ptr GLubyte -> IO ()))
-> FunPtr (GLint -> Ptr GLubyte -> IO ())
forall a. IO a -> a
unsafePerformIO ([Char] -> IO (FunPtr (GLint -> Ptr GLubyte -> IO ()))
forall a. [Char] -> IO (FunPtr a)
getProcAddress "glWeightubvARB")

{-# NOINLINE glWeightubvARBFunPtr #-}

-- | Usage: @'glWeightuivARB' size weights@
--
-- The length of @weights@ should be @size@.


glWeightuivARB :: MonadIO m => GLint -> Ptr GLuint -> m ()
glWeightuivARB :: GLint -> Ptr GLenum -> m ()
glWeightuivARB = FunPtr (GLint -> Ptr GLenum -> IO ())
-> GLint -> Ptr GLenum -> m ()
forall (m :: * -> *).
MonadIO m =>
FunPtr (GLint -> Ptr GLenum -> IO ())
-> GLint -> Ptr GLenum -> m ()
ffiintPtruintIOV FunPtr (GLint -> Ptr GLenum -> IO ())
glWeightuivARBFunPtr

glWeightuivARBFunPtr :: FunPtr (GLint -> Ptr GLuint -> IO ())
glWeightuivARBFunPtr :: FunPtr (GLint -> Ptr GLenum -> IO ())
glWeightuivARBFunPtr = IO (FunPtr (GLint -> Ptr GLenum -> IO ()))
-> FunPtr (GLint -> Ptr GLenum -> IO ())
forall a. IO a -> a
unsafePerformIO ([Char] -> IO (FunPtr (GLint -> Ptr GLenum -> IO ()))
forall a. [Char] -> IO (FunPtr a)
getProcAddress "glWeightuivARB")

{-# NOINLINE glWeightuivARBFunPtr #-}

-- | Usage: @'glWeightusvARB' size weights@
--
-- The length of @weights@ should be @size@.


glWeightusvARB :: MonadIO m => GLint -> Ptr GLushort -> m ()
glWeightusvARB :: GLint -> Ptr GLushort -> m ()
glWeightusvARB = FunPtr (GLint -> Ptr GLushort -> IO ())
-> GLint -> Ptr GLushort -> m ()
forall (m :: * -> *).
MonadIO m =>
FunPtr (GLint -> Ptr GLushort -> IO ())
-> GLint -> Ptr GLushort -> m ()
ffiintPtrushortIOV FunPtr (GLint -> Ptr GLushort -> IO ())
glWeightusvARBFunPtr

glWeightusvARBFunPtr :: FunPtr (GLint -> Ptr GLushort -> IO ())
glWeightusvARBFunPtr :: FunPtr (GLint -> Ptr GLushort -> IO ())
glWeightusvARBFunPtr = IO (FunPtr (GLint -> Ptr GLushort -> IO ()))
-> FunPtr (GLint -> Ptr GLushort -> IO ())
forall a. IO a -> a
unsafePerformIO ([Char] -> IO (FunPtr (GLint -> Ptr GLushort -> IO ()))
forall a. [Char] -> IO (FunPtr a)
getProcAddress "glWeightusvARB")

{-# NOINLINE glWeightusvARBFunPtr #-}

pattern $bGL_ACTIVE_VERTEX_UNITS_ARB :: a
$mGL_ACTIVE_VERTEX_UNITS_ARB :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
GL_ACTIVE_VERTEX_UNITS_ARB = 0x86A5

pattern $bGL_CURRENT_WEIGHT_ARB :: a
$mGL_CURRENT_WEIGHT_ARB :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
GL_CURRENT_WEIGHT_ARB = 0x86A8

pattern $bGL_MAX_VERTEX_UNITS_ARB :: a
$mGL_MAX_VERTEX_UNITS_ARB :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
GL_MAX_VERTEX_UNITS_ARB = 0x86A4

pattern $bGL_MODELVIEW0_ARB :: a
$mGL_MODELVIEW0_ARB :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
GL_MODELVIEW0_ARB = 0x1700

pattern $bGL_MODELVIEW10_ARB :: a
$mGL_MODELVIEW10_ARB :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
GL_MODELVIEW10_ARB = 0x872A

pattern $bGL_MODELVIEW11_ARB :: a
$mGL_MODELVIEW11_ARB :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
GL_MODELVIEW11_ARB = 0x872B

pattern $bGL_MODELVIEW12_ARB :: a
$mGL_MODELVIEW12_ARB :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
GL_MODELVIEW12_ARB = 0x872C

pattern $bGL_MODELVIEW13_ARB :: a
$mGL_MODELVIEW13_ARB :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
GL_MODELVIEW13_ARB = 0x872D

pattern $bGL_MODELVIEW14_ARB :: a
$mGL_MODELVIEW14_ARB :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
GL_MODELVIEW14_ARB = 0x872E

pattern $bGL_MODELVIEW15_ARB :: a
$mGL_MODELVIEW15_ARB :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
GL_MODELVIEW15_ARB = 0x872F

pattern $bGL_MODELVIEW16_ARB :: a
$mGL_MODELVIEW16_ARB :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
GL_MODELVIEW16_ARB = 0x8730

pattern $bGL_MODELVIEW17_ARB :: a
$mGL_MODELVIEW17_ARB :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
GL_MODELVIEW17_ARB = 0x8731

pattern $bGL_MODELVIEW18_ARB :: a
$mGL_MODELVIEW18_ARB :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
GL_MODELVIEW18_ARB = 0x8732

pattern $bGL_MODELVIEW19_ARB :: a
$mGL_MODELVIEW19_ARB :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
GL_MODELVIEW19_ARB = 0x8733

pattern $bGL_MODELVIEW1_ARB :: a
$mGL_MODELVIEW1_ARB :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
GL_MODELVIEW1_ARB = 0x850A

pattern $bGL_MODELVIEW20_ARB :: a
$mGL_MODELVIEW20_ARB :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
GL_MODELVIEW20_ARB = 0x8734

pattern $bGL_MODELVIEW21_ARB :: a
$mGL_MODELVIEW21_ARB :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
GL_MODELVIEW21_ARB = 0x8735

pattern $bGL_MODELVIEW22_ARB :: a
$mGL_MODELVIEW22_ARB :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
GL_MODELVIEW22_ARB = 0x8736

pattern $bGL_MODELVIEW23_ARB :: a
$mGL_MODELVIEW23_ARB :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
GL_MODELVIEW23_ARB = 0x8737

pattern $bGL_MODELVIEW24_ARB :: a
$mGL_MODELVIEW24_ARB :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
GL_MODELVIEW24_ARB = 0x8738

pattern $bGL_MODELVIEW25_ARB :: a
$mGL_MODELVIEW25_ARB :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
GL_MODELVIEW25_ARB = 0x8739

pattern $bGL_MODELVIEW26_ARB :: a
$mGL_MODELVIEW26_ARB :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
GL_MODELVIEW26_ARB = 0x873A

pattern $bGL_MODELVIEW27_ARB :: a
$mGL_MODELVIEW27_ARB :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
GL_MODELVIEW27_ARB = 0x873B

pattern $bGL_MODELVIEW28_ARB :: a
$mGL_MODELVIEW28_ARB :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
GL_MODELVIEW28_ARB = 0x873C

pattern $bGL_MODELVIEW29_ARB :: a
$mGL_MODELVIEW29_ARB :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
GL_MODELVIEW29_ARB = 0x873D

pattern $bGL_MODELVIEW2_ARB :: a
$mGL_MODELVIEW2_ARB :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
GL_MODELVIEW2_ARB = 0x8722

pattern $bGL_MODELVIEW30_ARB :: a
$mGL_MODELVIEW30_ARB :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
GL_MODELVIEW30_ARB = 0x873E

pattern $bGL_MODELVIEW31_ARB :: a
$mGL_MODELVIEW31_ARB :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
GL_MODELVIEW31_ARB = 0x873F

pattern $bGL_MODELVIEW3_ARB :: a
$mGL_MODELVIEW3_ARB :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
GL_MODELVIEW3_ARB = 0x8723

pattern $bGL_MODELVIEW4_ARB :: a
$mGL_MODELVIEW4_ARB :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
GL_MODELVIEW4_ARB = 0x8724

pattern $bGL_MODELVIEW5_ARB :: a
$mGL_MODELVIEW5_ARB :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
GL_MODELVIEW5_ARB = 0x8725

pattern $bGL_MODELVIEW6_ARB :: a
$mGL_MODELVIEW6_ARB :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
GL_MODELVIEW6_ARB = 0x8726

pattern $bGL_MODELVIEW7_ARB :: a
$mGL_MODELVIEW7_ARB :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
GL_MODELVIEW7_ARB = 0x8727

pattern $bGL_MODELVIEW8_ARB :: a
$mGL_MODELVIEW8_ARB :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
GL_MODELVIEW8_ARB = 0x8728

pattern $bGL_MODELVIEW9_ARB :: a
$mGL_MODELVIEW9_ARB :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
GL_MODELVIEW9_ARB = 0x8729

pattern $bGL_VERTEX_BLEND_ARB :: a
$mGL_VERTEX_BLEND_ARB :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
GL_VERTEX_BLEND_ARB = 0x86A7

pattern $bGL_WEIGHT_ARRAY_ARB :: a
$mGL_WEIGHT_ARRAY_ARB :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
GL_WEIGHT_ARRAY_ARB = 0x86AD

pattern $bGL_WEIGHT_ARRAY_POINTER_ARB :: a
$mGL_WEIGHT_ARRAY_POINTER_ARB :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
GL_WEIGHT_ARRAY_POINTER_ARB = 0x86AC

pattern $bGL_WEIGHT_ARRAY_SIZE_ARB :: a
$mGL_WEIGHT_ARRAY_SIZE_ARB :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
GL_WEIGHT_ARRAY_SIZE_ARB = 0x86AB

pattern $bGL_WEIGHT_ARRAY_STRIDE_ARB :: a
$mGL_WEIGHT_ARRAY_STRIDE_ARB :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
GL_WEIGHT_ARRAY_STRIDE_ARB = 0x86AA

pattern $bGL_WEIGHT_ARRAY_TYPE_ARB :: a
$mGL_WEIGHT_ARRAY_TYPE_ARB :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
GL_WEIGHT_ARRAY_TYPE_ARB = 0x86A9

pattern $bGL_WEIGHT_SUM_UNITY_ARB :: a
$mGL_WEIGHT_SUM_UNITY_ARB :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
GL_WEIGHT_SUM_UNITY_ARB = 0x86A6