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

  -- * GL_ARB_multitexture
  , glActiveTextureARB
  , glClientActiveTextureARB
  , glMultiTexCoord1dARB
  , glMultiTexCoord1dvARB
  , glMultiTexCoord1fARB
  , glMultiTexCoord1fvARB
  , glMultiTexCoord1iARB
  , glMultiTexCoord1ivARB
  , glMultiTexCoord1sARB
  , glMultiTexCoord1svARB
  , glMultiTexCoord2dARB
  , glMultiTexCoord2dvARB
  , glMultiTexCoord2fARB
  , glMultiTexCoord2fvARB
  , glMultiTexCoord2iARB
  , glMultiTexCoord2ivARB
  , glMultiTexCoord2sARB
  , glMultiTexCoord2svARB
  , glMultiTexCoord3dARB
  , glMultiTexCoord3dvARB
  , glMultiTexCoord3fARB
  , glMultiTexCoord3fvARB
  , glMultiTexCoord3iARB
  , glMultiTexCoord3ivARB
  , glMultiTexCoord3sARB
  , glMultiTexCoord3svARB
  , glMultiTexCoord4dARB
  , glMultiTexCoord4dvARB
  , glMultiTexCoord4fARB
  , glMultiTexCoord4fvARB
  , glMultiTexCoord4iARB
  , glMultiTexCoord4ivARB
  , glMultiTexCoord4sARB
  , glMultiTexCoord4svARB
  , pattern GL_ACTIVE_TEXTURE_ARB
  , pattern GL_CLIENT_ACTIVE_TEXTURE_ARB
  , pattern GL_MAX_TEXTURE_UNITS_ARB
  , pattern GL_TEXTURE0_ARB
  , pattern GL_TEXTURE10_ARB
  , pattern GL_TEXTURE11_ARB
  , pattern GL_TEXTURE12_ARB
  , pattern GL_TEXTURE13_ARB
  , pattern GL_TEXTURE14_ARB
  , pattern GL_TEXTURE15_ARB
  , pattern GL_TEXTURE16_ARB
  , pattern GL_TEXTURE17_ARB
  , pattern GL_TEXTURE18_ARB
  , pattern GL_TEXTURE19_ARB
  , pattern GL_TEXTURE1_ARB
  , pattern GL_TEXTURE20_ARB
  , pattern GL_TEXTURE21_ARB
  , pattern GL_TEXTURE22_ARB
  , pattern GL_TEXTURE23_ARB
  , pattern GL_TEXTURE24_ARB
  , pattern GL_TEXTURE25_ARB
  , pattern GL_TEXTURE26_ARB
  , pattern GL_TEXTURE27_ARB
  , pattern GL_TEXTURE28_ARB
  , pattern GL_TEXTURE29_ARB
  , pattern GL_TEXTURE2_ARB
  , pattern GL_TEXTURE30_ARB
  , pattern GL_TEXTURE31_ARB
  , pattern GL_TEXTURE3_ARB
  , pattern GL_TEXTURE4_ARB
  , pattern GL_TEXTURE5_ARB
  , pattern GL_TEXTURE6_ARB
  , pattern GL_TEXTURE7_ARB
  , pattern GL_TEXTURE8_ARB
  , pattern GL_TEXTURE9_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.Internal.Shared
import Graphics.GL.Types
import System.IO.Unsafe

-- | Checks that the <https://cvs.khronos.org/svn/repos/ogl/trunk/doc/registry/public/specs/ARB/multitexture.txt GL_ARB_multitexture> extension is available.

gl_ARB_multitexture :: Bool
gl_ARB_multitexture :: Bool
gl_ARB_multitexture = String -> Set String -> Bool
forall a. Ord a => a -> Set a -> Bool
member String
"GL_ARB_multitexture" Set String
extensions
{-# NOINLINE gl_ARB_multitexture #-}

-- | Usage: @'glActiveTextureARB' texture@
--
-- The parameter @texture@ is a @TextureUnit@.
--
-- This command is an alias for 'Graphics.GL.Internal.Shared.glActiveTexture'.


glActiveTextureARB :: MonadIO m => GLenum -> m ()
glActiveTextureARB :: forall (m :: * -> *). MonadIO m => GLenum -> m ()
glActiveTextureARB = FunPtr (GLenum -> IO ()) -> GLenum -> m ()
forall (m :: * -> *).
MonadIO m =>
FunPtr (GLenum -> IO ()) -> GLenum -> m ()
ffienumIOV FunPtr (GLenum -> IO ())
glActiveTextureARBFunPtr

glActiveTextureARBFunPtr :: FunPtr (GLenum -> IO ())
glActiveTextureARBFunPtr :: FunPtr (GLenum -> IO ())
glActiveTextureARBFunPtr = IO (FunPtr (GLenum -> IO ())) -> FunPtr (GLenum -> IO ())
forall a. IO a -> a
unsafePerformIO (String -> IO (FunPtr (GLenum -> IO ()))
forall a. String -> IO (FunPtr a)
getProcAddress String
"glActiveTextureARB")

{-# NOINLINE glActiveTextureARBFunPtr #-}

-- | Usage: @'glClientActiveTextureARB' texture@
--
-- The parameter @texture@ is a @TextureUnit@.
--
-- This command is an alias for 'Graphics.GL.Internal.Shared.glClientActiveTexture'.


glClientActiveTextureARB :: MonadIO m => GLenum -> m ()
glClientActiveTextureARB :: forall (m :: * -> *). MonadIO m => GLenum -> m ()
glClientActiveTextureARB = FunPtr (GLenum -> IO ()) -> GLenum -> m ()
forall (m :: * -> *).
MonadIO m =>
FunPtr (GLenum -> IO ()) -> GLenum -> m ()
ffienumIOV FunPtr (GLenum -> IO ())
glClientActiveTextureARBFunPtr

glClientActiveTextureARBFunPtr :: FunPtr (GLenum -> IO ())
glClientActiveTextureARBFunPtr :: FunPtr (GLenum -> IO ())
glClientActiveTextureARBFunPtr = IO (FunPtr (GLenum -> IO ())) -> FunPtr (GLenum -> IO ())
forall a. IO a -> a
unsafePerformIO (String -> IO (FunPtr (GLenum -> IO ()))
forall a. String -> IO (FunPtr a)
getProcAddress String
"glClientActiveTextureARB")

{-# NOINLINE glClientActiveTextureARBFunPtr #-}

-- | Usage: @'glMultiTexCoord1dARB' target s@
--
-- The parameter @target@ is a @TextureUnit@.
--
-- The parameter @s@ is a @CoordD@.
--
-- This command is an alias for 'Graphics.GL.Internal.Shared.glMultiTexCoord1d'.
--
-- The vector equivalent of this command is 'Graphics.GL.Internal.Shared.glMultiTexCoord1dv'.


glMultiTexCoord1dARB :: MonadIO m => GLenum -> GLdouble -> m ()
glMultiTexCoord1dARB :: forall (m :: * -> *). MonadIO m => GLenum -> GLdouble -> m ()
glMultiTexCoord1dARB = FunPtr (GLenum -> GLdouble -> IO ()) -> GLenum -> GLdouble -> m ()
forall (m :: * -> *).
MonadIO m =>
FunPtr (GLenum -> GLdouble -> IO ()) -> GLenum -> GLdouble -> m ()
ffienumdoubleIOV FunPtr (GLenum -> GLdouble -> IO ())
glMultiTexCoord1dARBFunPtr

glMultiTexCoord1dARBFunPtr :: FunPtr (GLenum -> GLdouble -> IO ())
glMultiTexCoord1dARBFunPtr :: FunPtr (GLenum -> GLdouble -> IO ())
glMultiTexCoord1dARBFunPtr = IO (FunPtr (GLenum -> GLdouble -> IO ()))
-> FunPtr (GLenum -> GLdouble -> IO ())
forall a. IO a -> a
unsafePerformIO (String -> IO (FunPtr (GLenum -> GLdouble -> IO ()))
forall a. String -> IO (FunPtr a)
getProcAddress String
"glMultiTexCoord1dARB")

{-# NOINLINE glMultiTexCoord1dARBFunPtr #-}

-- | Usage: @'glMultiTexCoord1dvARB' target v@
--
-- The parameter @target@ is a @TextureUnit@.
--
-- The parameter @v@ is a @CoordD@.
--
-- The length of @v@ should be @1@.
--
-- This command is an alias for 'Graphics.GL.Internal.Shared.glMultiTexCoord1dv'.


glMultiTexCoord1dvARB :: MonadIO m => GLenum -> Ptr GLdouble -> m ()
glMultiTexCoord1dvARB :: forall (m :: * -> *). MonadIO m => GLenum -> Ptr GLdouble -> m ()
glMultiTexCoord1dvARB = FunPtr (GLenum -> Ptr GLdouble -> IO ())
-> GLenum -> Ptr GLdouble -> m ()
forall (m :: * -> *).
MonadIO m =>
FunPtr (GLenum -> Ptr GLdouble -> IO ())
-> GLenum -> Ptr GLdouble -> m ()
ffienumPtrdoubleIOV FunPtr (GLenum -> Ptr GLdouble -> IO ())
glMultiTexCoord1dvARBFunPtr

glMultiTexCoord1dvARBFunPtr :: FunPtr (GLenum -> Ptr GLdouble -> IO ())
glMultiTexCoord1dvARBFunPtr :: FunPtr (GLenum -> Ptr GLdouble -> IO ())
glMultiTexCoord1dvARBFunPtr = IO (FunPtr (GLenum -> Ptr GLdouble -> IO ()))
-> FunPtr (GLenum -> Ptr GLdouble -> IO ())
forall a. IO a -> a
unsafePerformIO (String -> IO (FunPtr (GLenum -> Ptr GLdouble -> IO ()))
forall a. String -> IO (FunPtr a)
getProcAddress String
"glMultiTexCoord1dvARB")

{-# NOINLINE glMultiTexCoord1dvARBFunPtr #-}

-- | Usage: @'glMultiTexCoord1fARB' target s@
--
-- The parameter @target@ is a @TextureUnit@.
--
-- The parameter @s@ is a @CoordF@.
--
-- This command is an alias for 'Graphics.GL.Internal.Shared.glMultiTexCoord1f'.
--
-- The vector equivalent of this command is 'Graphics.GL.Internal.Shared.glMultiTexCoord1fv'.


glMultiTexCoord1fARB :: MonadIO m => GLenum -> GLfloat -> m ()
glMultiTexCoord1fARB :: forall (m :: * -> *). MonadIO m => GLenum -> GLfloat -> m ()
glMultiTexCoord1fARB = FunPtr (GLenum -> GLfloat -> IO ()) -> GLenum -> GLfloat -> m ()
forall (m :: * -> *).
MonadIO m =>
FunPtr (GLenum -> GLfloat -> IO ()) -> GLenum -> GLfloat -> m ()
ffienumfloatIOV FunPtr (GLenum -> GLfloat -> IO ())
glMultiTexCoord1fARBFunPtr

glMultiTexCoord1fARBFunPtr :: FunPtr (GLenum -> GLfloat -> IO ())
glMultiTexCoord1fARBFunPtr :: FunPtr (GLenum -> GLfloat -> IO ())
glMultiTexCoord1fARBFunPtr = IO (FunPtr (GLenum -> GLfloat -> IO ()))
-> FunPtr (GLenum -> GLfloat -> IO ())
forall a. IO a -> a
unsafePerformIO (String -> IO (FunPtr (GLenum -> GLfloat -> IO ()))
forall a. String -> IO (FunPtr a)
getProcAddress String
"glMultiTexCoord1fARB")

{-# NOINLINE glMultiTexCoord1fARBFunPtr #-}

-- | Usage: @'glMultiTexCoord1fvARB' target v@
--
-- The parameter @target@ is a @TextureUnit@.
--
-- The parameter @v@ is a @CoordF@.
--
-- The length of @v@ should be @1@.
--
-- This command is an alias for 'Graphics.GL.Internal.Shared.glMultiTexCoord1fv'.


glMultiTexCoord1fvARB :: MonadIO m => GLenum -> Ptr GLfloat -> m ()
glMultiTexCoord1fvARB :: forall (m :: * -> *). MonadIO m => GLenum -> Ptr GLfloat -> m ()
glMultiTexCoord1fvARB = FunPtr (GLenum -> Ptr GLfloat -> IO ())
-> GLenum -> Ptr GLfloat -> m ()
forall (m :: * -> *).
MonadIO m =>
FunPtr (GLenum -> Ptr GLfloat -> IO ())
-> GLenum -> Ptr GLfloat -> m ()
ffienumPtrfloatIOV FunPtr (GLenum -> Ptr GLfloat -> IO ())
glMultiTexCoord1fvARBFunPtr

glMultiTexCoord1fvARBFunPtr :: FunPtr (GLenum -> Ptr GLfloat -> IO ())
glMultiTexCoord1fvARBFunPtr :: FunPtr (GLenum -> Ptr GLfloat -> IO ())
glMultiTexCoord1fvARBFunPtr = IO (FunPtr (GLenum -> Ptr GLfloat -> IO ()))
-> FunPtr (GLenum -> Ptr GLfloat -> IO ())
forall a. IO a -> a
unsafePerformIO (String -> IO (FunPtr (GLenum -> Ptr GLfloat -> IO ()))
forall a. String -> IO (FunPtr a)
getProcAddress String
"glMultiTexCoord1fvARB")

{-# NOINLINE glMultiTexCoord1fvARBFunPtr #-}

-- | Usage: @'glMultiTexCoord1iARB' target s@
--
-- The parameter @target@ is a @TextureUnit@.
--
-- The parameter @s@ is a @CoordI@.
--
-- This command is an alias for 'Graphics.GL.Internal.Shared.glMultiTexCoord1i'.
--
-- The vector equivalent of this command is 'Graphics.GL.Internal.Shared.glMultiTexCoord1iv'.


glMultiTexCoord1iARB :: MonadIO m => GLenum -> GLint -> m ()
glMultiTexCoord1iARB :: forall (m :: * -> *). MonadIO m => GLenum -> GLint -> m ()
glMultiTexCoord1iARB = FunPtr (GLenum -> GLint -> IO ()) -> GLenum -> GLint -> m ()
forall (m :: * -> *).
MonadIO m =>
FunPtr (GLenum -> GLint -> IO ()) -> GLenum -> GLint -> m ()
ffienumintIOV FunPtr (GLenum -> GLint -> IO ())
glMultiTexCoord1iARBFunPtr

glMultiTexCoord1iARBFunPtr :: FunPtr (GLenum -> GLint -> IO ())
glMultiTexCoord1iARBFunPtr :: FunPtr (GLenum -> GLint -> IO ())
glMultiTexCoord1iARBFunPtr = IO (FunPtr (GLenum -> GLint -> IO ()))
-> FunPtr (GLenum -> GLint -> IO ())
forall a. IO a -> a
unsafePerformIO (String -> IO (FunPtr (GLenum -> GLint -> IO ()))
forall a. String -> IO (FunPtr a)
getProcAddress String
"glMultiTexCoord1iARB")

{-# NOINLINE glMultiTexCoord1iARBFunPtr #-}

-- | Usage: @'glMultiTexCoord1ivARB' target v@
--
-- The parameter @target@ is a @TextureUnit@.
--
-- The parameter @v@ is a @CoordI@.
--
-- The length of @v@ should be @1@.
--
-- This command is an alias for 'Graphics.GL.Internal.Shared.glMultiTexCoord1iv'.


glMultiTexCoord1ivARB :: MonadIO m => GLenum -> Ptr GLint -> m ()
glMultiTexCoord1ivARB :: forall (m :: * -> *). MonadIO m => GLenum -> Ptr GLint -> m ()
glMultiTexCoord1ivARB = FunPtr (GLenum -> Ptr GLint -> IO ())
-> GLenum -> Ptr GLint -> m ()
forall (m :: * -> *).
MonadIO m =>
FunPtr (GLenum -> Ptr GLint -> IO ())
-> GLenum -> Ptr GLint -> m ()
ffienumPtrintIOV FunPtr (GLenum -> Ptr GLint -> IO ())
glMultiTexCoord1ivARBFunPtr

glMultiTexCoord1ivARBFunPtr :: FunPtr (GLenum -> Ptr GLint -> IO ())
glMultiTexCoord1ivARBFunPtr :: FunPtr (GLenum -> Ptr GLint -> IO ())
glMultiTexCoord1ivARBFunPtr = IO (FunPtr (GLenum -> Ptr GLint -> IO ()))
-> FunPtr (GLenum -> Ptr GLint -> IO ())
forall a. IO a -> a
unsafePerformIO (String -> IO (FunPtr (GLenum -> Ptr GLint -> IO ()))
forall a. String -> IO (FunPtr a)
getProcAddress String
"glMultiTexCoord1ivARB")

{-# NOINLINE glMultiTexCoord1ivARBFunPtr #-}

-- | Usage: @'glMultiTexCoord1sARB' target s@
--
-- The parameter @target@ is a @TextureUnit@.
--
-- The parameter @s@ is a @CoordS@.
--
-- This command is an alias for 'Graphics.GL.Internal.Shared.glMultiTexCoord1s'.
--
-- The vector equivalent of this command is 'Graphics.GL.Internal.Shared.glMultiTexCoord1sv'.


glMultiTexCoord1sARB :: MonadIO m => GLenum -> GLshort -> m ()
glMultiTexCoord1sARB :: forall (m :: * -> *). MonadIO m => GLenum -> GLshort -> m ()
glMultiTexCoord1sARB = FunPtr (GLenum -> GLshort -> IO ()) -> GLenum -> GLshort -> m ()
forall (m :: * -> *).
MonadIO m =>
FunPtr (GLenum -> GLshort -> IO ()) -> GLenum -> GLshort -> m ()
ffienumshortIOV FunPtr (GLenum -> GLshort -> IO ())
glMultiTexCoord1sARBFunPtr

glMultiTexCoord1sARBFunPtr :: FunPtr (GLenum -> GLshort -> IO ())
glMultiTexCoord1sARBFunPtr :: FunPtr (GLenum -> GLshort -> IO ())
glMultiTexCoord1sARBFunPtr = IO (FunPtr (GLenum -> GLshort -> IO ()))
-> FunPtr (GLenum -> GLshort -> IO ())
forall a. IO a -> a
unsafePerformIO (String -> IO (FunPtr (GLenum -> GLshort -> IO ()))
forall a. String -> IO (FunPtr a)
getProcAddress String
"glMultiTexCoord1sARB")

{-# NOINLINE glMultiTexCoord1sARBFunPtr #-}

-- | Usage: @'glMultiTexCoord1svARB' target v@
--
-- The parameter @target@ is a @TextureUnit@.
--
-- The parameter @v@ is a @CoordS@.
--
-- The length of @v@ should be @1@.
--
-- This command is an alias for 'Graphics.GL.Internal.Shared.glMultiTexCoord1sv'.


glMultiTexCoord1svARB :: MonadIO m => GLenum -> Ptr GLshort -> m ()
glMultiTexCoord1svARB :: forall (m :: * -> *). MonadIO m => GLenum -> Ptr GLshort -> m ()
glMultiTexCoord1svARB = FunPtr (GLenum -> Ptr GLshort -> IO ())
-> GLenum -> Ptr GLshort -> m ()
forall (m :: * -> *).
MonadIO m =>
FunPtr (GLenum -> Ptr GLshort -> IO ())
-> GLenum -> Ptr GLshort -> m ()
ffienumPtrshortIOV FunPtr (GLenum -> Ptr GLshort -> IO ())
glMultiTexCoord1svARBFunPtr

glMultiTexCoord1svARBFunPtr :: FunPtr (GLenum -> Ptr GLshort -> IO ())
glMultiTexCoord1svARBFunPtr :: FunPtr (GLenum -> Ptr GLshort -> IO ())
glMultiTexCoord1svARBFunPtr = IO (FunPtr (GLenum -> Ptr GLshort -> IO ()))
-> FunPtr (GLenum -> Ptr GLshort -> IO ())
forall a. IO a -> a
unsafePerformIO (String -> IO (FunPtr (GLenum -> Ptr GLshort -> IO ()))
forall a. String -> IO (FunPtr a)
getProcAddress String
"glMultiTexCoord1svARB")

{-# NOINLINE glMultiTexCoord1svARBFunPtr #-}

-- | Usage: @'glMultiTexCoord2dARB' target s t@
--
-- The parameter @target@ is a @TextureUnit@.
--
-- The parameter @s@ is a @CoordD@.
--
-- The parameter @t@ is a @CoordD@.
--
-- This command is an alias for 'Graphics.GL.Internal.Shared.glMultiTexCoord2d'.
--
-- The vector equivalent of this command is 'Graphics.GL.Internal.Shared.glMultiTexCoord2dv'.


glMultiTexCoord2dARB :: MonadIO m => GLenum -> GLdouble -> GLdouble -> m ()
glMultiTexCoord2dARB :: forall (m :: * -> *).
MonadIO m =>
GLenum -> GLdouble -> GLdouble -> m ()
glMultiTexCoord2dARB = FunPtr (GLenum -> GLdouble -> GLdouble -> IO ())
-> GLenum -> GLdouble -> GLdouble -> m ()
forall (m :: * -> *).
MonadIO m =>
FunPtr (GLenum -> GLdouble -> GLdouble -> IO ())
-> GLenum -> GLdouble -> GLdouble -> m ()
ffienumdoubledoubleIOV FunPtr (GLenum -> GLdouble -> GLdouble -> IO ())
glMultiTexCoord2dARBFunPtr

glMultiTexCoord2dARBFunPtr :: FunPtr (GLenum -> GLdouble -> GLdouble -> IO ())
glMultiTexCoord2dARBFunPtr :: FunPtr (GLenum -> GLdouble -> GLdouble -> IO ())
glMultiTexCoord2dARBFunPtr = IO (FunPtr (GLenum -> GLdouble -> GLdouble -> IO ()))
-> FunPtr (GLenum -> GLdouble -> GLdouble -> IO ())
forall a. IO a -> a
unsafePerformIO (String -> IO (FunPtr (GLenum -> GLdouble -> GLdouble -> IO ()))
forall a. String -> IO (FunPtr a)
getProcAddress String
"glMultiTexCoord2dARB")

{-# NOINLINE glMultiTexCoord2dARBFunPtr #-}

-- | Usage: @'glMultiTexCoord2dvARB' target v@
--
-- The parameter @target@ is a @TextureUnit@.
--
-- The parameter @v@ is a @CoordD@.
--
-- The length of @v@ should be @2@.
--
-- This command is an alias for 'Graphics.GL.Internal.Shared.glMultiTexCoord2dv'.


glMultiTexCoord2dvARB :: MonadIO m => GLenum -> Ptr GLdouble -> m ()
glMultiTexCoord2dvARB :: forall (m :: * -> *). MonadIO m => GLenum -> Ptr GLdouble -> m ()
glMultiTexCoord2dvARB = FunPtr (GLenum -> Ptr GLdouble -> IO ())
-> GLenum -> Ptr GLdouble -> m ()
forall (m :: * -> *).
MonadIO m =>
FunPtr (GLenum -> Ptr GLdouble -> IO ())
-> GLenum -> Ptr GLdouble -> m ()
ffienumPtrdoubleIOV FunPtr (GLenum -> Ptr GLdouble -> IO ())
glMultiTexCoord2dvARBFunPtr

glMultiTexCoord2dvARBFunPtr :: FunPtr (GLenum -> Ptr GLdouble -> IO ())
glMultiTexCoord2dvARBFunPtr :: FunPtr (GLenum -> Ptr GLdouble -> IO ())
glMultiTexCoord2dvARBFunPtr = IO (FunPtr (GLenum -> Ptr GLdouble -> IO ()))
-> FunPtr (GLenum -> Ptr GLdouble -> IO ())
forall a. IO a -> a
unsafePerformIO (String -> IO (FunPtr (GLenum -> Ptr GLdouble -> IO ()))
forall a. String -> IO (FunPtr a)
getProcAddress String
"glMultiTexCoord2dvARB")

{-# NOINLINE glMultiTexCoord2dvARBFunPtr #-}

-- | Usage: @'glMultiTexCoord2fARB' target s t@
--
-- The parameter @target@ is a @TextureUnit@.
--
-- The parameter @s@ is a @CoordF@.
--
-- The parameter @t@ is a @CoordF@.
--
-- This command is an alias for 'Graphics.GL.Internal.Shared.glMultiTexCoord2f'.
--
-- The vector equivalent of this command is 'Graphics.GL.Internal.Shared.glMultiTexCoord2fv'.


glMultiTexCoord2fARB :: MonadIO m => GLenum -> GLfloat -> GLfloat -> m ()
glMultiTexCoord2fARB :: forall (m :: * -> *).
MonadIO m =>
GLenum -> GLfloat -> GLfloat -> m ()
glMultiTexCoord2fARB = FunPtr (GLenum -> GLfloat -> GLfloat -> IO ())
-> GLenum -> GLfloat -> GLfloat -> m ()
forall (m :: * -> *).
MonadIO m =>
FunPtr (GLenum -> GLfloat -> GLfloat -> IO ())
-> GLenum -> GLfloat -> GLfloat -> m ()
ffienumfloatfloatIOV FunPtr (GLenum -> GLfloat -> GLfloat -> IO ())
glMultiTexCoord2fARBFunPtr

glMultiTexCoord2fARBFunPtr :: FunPtr (GLenum -> GLfloat -> GLfloat -> IO ())
glMultiTexCoord2fARBFunPtr :: FunPtr (GLenum -> GLfloat -> GLfloat -> IO ())
glMultiTexCoord2fARBFunPtr = IO (FunPtr (GLenum -> GLfloat -> GLfloat -> IO ()))
-> FunPtr (GLenum -> GLfloat -> GLfloat -> IO ())
forall a. IO a -> a
unsafePerformIO (String -> IO (FunPtr (GLenum -> GLfloat -> GLfloat -> IO ()))
forall a. String -> IO (FunPtr a)
getProcAddress String
"glMultiTexCoord2fARB")

{-# NOINLINE glMultiTexCoord2fARBFunPtr #-}

-- | Usage: @'glMultiTexCoord2fvARB' target v@
--
-- The parameter @target@ is a @TextureUnit@.
--
-- The parameter @v@ is a @CoordF@.
--
-- The length of @v@ should be @2@.
--
-- This command is an alias for 'Graphics.GL.Internal.Shared.glMultiTexCoord2fv'.


glMultiTexCoord2fvARB :: MonadIO m => GLenum -> Ptr GLfloat -> m ()
glMultiTexCoord2fvARB :: forall (m :: * -> *). MonadIO m => GLenum -> Ptr GLfloat -> m ()
glMultiTexCoord2fvARB = FunPtr (GLenum -> Ptr GLfloat -> IO ())
-> GLenum -> Ptr GLfloat -> m ()
forall (m :: * -> *).
MonadIO m =>
FunPtr (GLenum -> Ptr GLfloat -> IO ())
-> GLenum -> Ptr GLfloat -> m ()
ffienumPtrfloatIOV FunPtr (GLenum -> Ptr GLfloat -> IO ())
glMultiTexCoord2fvARBFunPtr

glMultiTexCoord2fvARBFunPtr :: FunPtr (GLenum -> Ptr GLfloat -> IO ())
glMultiTexCoord2fvARBFunPtr :: FunPtr (GLenum -> Ptr GLfloat -> IO ())
glMultiTexCoord2fvARBFunPtr = IO (FunPtr (GLenum -> Ptr GLfloat -> IO ()))
-> FunPtr (GLenum -> Ptr GLfloat -> IO ())
forall a. IO a -> a
unsafePerformIO (String -> IO (FunPtr (GLenum -> Ptr GLfloat -> IO ()))
forall a. String -> IO (FunPtr a)
getProcAddress String
"glMultiTexCoord2fvARB")

{-# NOINLINE glMultiTexCoord2fvARBFunPtr #-}

-- | Usage: @'glMultiTexCoord2iARB' target s t@
--
-- The parameter @target@ is a @TextureUnit@.
--
-- The parameter @s@ is a @CoordI@.
--
-- The parameter @t@ is a @CoordI@.
--
-- This command is an alias for 'Graphics.GL.Internal.Shared.glMultiTexCoord2i'.
--
-- The vector equivalent of this command is 'Graphics.GL.Internal.Shared.glMultiTexCoord2iv'.


glMultiTexCoord2iARB :: MonadIO m => GLenum -> GLint -> GLint -> m ()
glMultiTexCoord2iARB :: forall (m :: * -> *). MonadIO m => GLenum -> GLint -> GLint -> m ()
glMultiTexCoord2iARB = FunPtr (GLenum -> GLint -> GLint -> IO ())
-> GLenum -> GLint -> GLint -> m ()
forall (m :: * -> *).
MonadIO m =>
FunPtr (GLenum -> GLint -> GLint -> IO ())
-> GLenum -> GLint -> GLint -> m ()
ffienumintintIOV FunPtr (GLenum -> GLint -> GLint -> IO ())
glMultiTexCoord2iARBFunPtr

glMultiTexCoord2iARBFunPtr :: FunPtr (GLenum -> GLint -> GLint -> IO ())
glMultiTexCoord2iARBFunPtr :: FunPtr (GLenum -> GLint -> GLint -> IO ())
glMultiTexCoord2iARBFunPtr = IO (FunPtr (GLenum -> GLint -> GLint -> IO ()))
-> FunPtr (GLenum -> GLint -> GLint -> IO ())
forall a. IO a -> a
unsafePerformIO (String -> IO (FunPtr (GLenum -> GLint -> GLint -> IO ()))
forall a. String -> IO (FunPtr a)
getProcAddress String
"glMultiTexCoord2iARB")

{-# NOINLINE glMultiTexCoord2iARBFunPtr #-}

-- | Usage: @'glMultiTexCoord2ivARB' target v@
--
-- The parameter @target@ is a @TextureUnit@.
--
-- The parameter @v@ is a @CoordI@.
--
-- The length of @v@ should be @2@.
--
-- This command is an alias for 'Graphics.GL.Internal.Shared.glMultiTexCoord2iv'.


glMultiTexCoord2ivARB :: MonadIO m => GLenum -> Ptr GLint -> m ()
glMultiTexCoord2ivARB :: forall (m :: * -> *). MonadIO m => GLenum -> Ptr GLint -> m ()
glMultiTexCoord2ivARB = FunPtr (GLenum -> Ptr GLint -> IO ())
-> GLenum -> Ptr GLint -> m ()
forall (m :: * -> *).
MonadIO m =>
FunPtr (GLenum -> Ptr GLint -> IO ())
-> GLenum -> Ptr GLint -> m ()
ffienumPtrintIOV FunPtr (GLenum -> Ptr GLint -> IO ())
glMultiTexCoord2ivARBFunPtr

glMultiTexCoord2ivARBFunPtr :: FunPtr (GLenum -> Ptr GLint -> IO ())
glMultiTexCoord2ivARBFunPtr :: FunPtr (GLenum -> Ptr GLint -> IO ())
glMultiTexCoord2ivARBFunPtr = IO (FunPtr (GLenum -> Ptr GLint -> IO ()))
-> FunPtr (GLenum -> Ptr GLint -> IO ())
forall a. IO a -> a
unsafePerformIO (String -> IO (FunPtr (GLenum -> Ptr GLint -> IO ()))
forall a. String -> IO (FunPtr a)
getProcAddress String
"glMultiTexCoord2ivARB")

{-# NOINLINE glMultiTexCoord2ivARBFunPtr #-}

-- | Usage: @'glMultiTexCoord2sARB' target s t@
--
-- The parameter @target@ is a @TextureUnit@.
--
-- The parameter @s@ is a @CoordS@.
--
-- The parameter @t@ is a @CoordS@.
--
-- This command is an alias for 'Graphics.GL.Internal.Shared.glMultiTexCoord2s'.
--
-- The vector equivalent of this command is 'Graphics.GL.Internal.Shared.glMultiTexCoord2sv'.


glMultiTexCoord2sARB :: MonadIO m => GLenum -> GLshort -> GLshort -> m ()
glMultiTexCoord2sARB :: forall (m :: * -> *).
MonadIO m =>
GLenum -> GLshort -> GLshort -> m ()
glMultiTexCoord2sARB = FunPtr (GLenum -> GLshort -> GLshort -> IO ())
-> GLenum -> GLshort -> GLshort -> m ()
forall (m :: * -> *).
MonadIO m =>
FunPtr (GLenum -> GLshort -> GLshort -> IO ())
-> GLenum -> GLshort -> GLshort -> m ()
ffienumshortshortIOV FunPtr (GLenum -> GLshort -> GLshort -> IO ())
glMultiTexCoord2sARBFunPtr

glMultiTexCoord2sARBFunPtr :: FunPtr (GLenum -> GLshort -> GLshort -> IO ())
glMultiTexCoord2sARBFunPtr :: FunPtr (GLenum -> GLshort -> GLshort -> IO ())
glMultiTexCoord2sARBFunPtr = IO (FunPtr (GLenum -> GLshort -> GLshort -> IO ()))
-> FunPtr (GLenum -> GLshort -> GLshort -> IO ())
forall a. IO a -> a
unsafePerformIO (String -> IO (FunPtr (GLenum -> GLshort -> GLshort -> IO ()))
forall a. String -> IO (FunPtr a)
getProcAddress String
"glMultiTexCoord2sARB")

{-# NOINLINE glMultiTexCoord2sARBFunPtr #-}

-- | Usage: @'glMultiTexCoord2svARB' target v@
--
-- The parameter @target@ is a @TextureUnit@.
--
-- The parameter @v@ is a @CoordS@.
--
-- The length of @v@ should be @2@.
--
-- This command is an alias for 'Graphics.GL.Internal.Shared.glMultiTexCoord2sv'.


glMultiTexCoord2svARB :: MonadIO m => GLenum -> Ptr GLshort -> m ()
glMultiTexCoord2svARB :: forall (m :: * -> *). MonadIO m => GLenum -> Ptr GLshort -> m ()
glMultiTexCoord2svARB = FunPtr (GLenum -> Ptr GLshort -> IO ())
-> GLenum -> Ptr GLshort -> m ()
forall (m :: * -> *).
MonadIO m =>
FunPtr (GLenum -> Ptr GLshort -> IO ())
-> GLenum -> Ptr GLshort -> m ()
ffienumPtrshortIOV FunPtr (GLenum -> Ptr GLshort -> IO ())
glMultiTexCoord2svARBFunPtr

glMultiTexCoord2svARBFunPtr :: FunPtr (GLenum -> Ptr GLshort -> IO ())
glMultiTexCoord2svARBFunPtr :: FunPtr (GLenum -> Ptr GLshort -> IO ())
glMultiTexCoord2svARBFunPtr = IO (FunPtr (GLenum -> Ptr GLshort -> IO ()))
-> FunPtr (GLenum -> Ptr GLshort -> IO ())
forall a. IO a -> a
unsafePerformIO (String -> IO (FunPtr (GLenum -> Ptr GLshort -> IO ()))
forall a. String -> IO (FunPtr a)
getProcAddress String
"glMultiTexCoord2svARB")

{-# NOINLINE glMultiTexCoord2svARBFunPtr #-}

-- | Usage: @'glMultiTexCoord3dARB' target s t r@
--
-- The parameter @target@ is a @TextureUnit@.
--
-- The parameter @s@ is a @CoordD@.
--
-- The parameter @t@ is a @CoordD@.
--
-- The parameter @r@ is a @CoordD@.
--
-- This command is an alias for 'Graphics.GL.Internal.Shared.glMultiTexCoord3d'.
--
-- The vector equivalent of this command is 'Graphics.GL.Internal.Shared.glMultiTexCoord3dv'.


glMultiTexCoord3dARB :: MonadIO m => GLenum -> GLdouble -> GLdouble -> GLdouble -> m ()
glMultiTexCoord3dARB :: forall (m :: * -> *).
MonadIO m =>
GLenum -> GLdouble -> GLdouble -> GLdouble -> m ()
glMultiTexCoord3dARB = FunPtr (GLenum -> GLdouble -> GLdouble -> GLdouble -> IO ())
-> GLenum -> GLdouble -> GLdouble -> GLdouble -> m ()
forall (m :: * -> *).
MonadIO m =>
FunPtr (GLenum -> GLdouble -> GLdouble -> GLdouble -> IO ())
-> GLenum -> GLdouble -> GLdouble -> GLdouble -> m ()
ffienumdoubledoubledoubleIOV FunPtr (GLenum -> GLdouble -> GLdouble -> GLdouble -> IO ())
glMultiTexCoord3dARBFunPtr

glMultiTexCoord3dARBFunPtr :: FunPtr (GLenum -> GLdouble -> GLdouble -> GLdouble -> IO ())
glMultiTexCoord3dARBFunPtr :: FunPtr (GLenum -> GLdouble -> GLdouble -> GLdouble -> IO ())
glMultiTexCoord3dARBFunPtr = IO (FunPtr (GLenum -> GLdouble -> GLdouble -> GLdouble -> IO ()))
-> FunPtr (GLenum -> GLdouble -> GLdouble -> GLdouble -> IO ())
forall a. IO a -> a
unsafePerformIO (String
-> IO
     (FunPtr (GLenum -> GLdouble -> GLdouble -> GLdouble -> IO ()))
forall a. String -> IO (FunPtr a)
getProcAddress String
"glMultiTexCoord3dARB")

{-# NOINLINE glMultiTexCoord3dARBFunPtr #-}

-- | Usage: @'glMultiTexCoord3dvARB' target v@
--
-- The parameter @target@ is a @TextureUnit@.
--
-- The parameter @v@ is a @CoordD@.
--
-- The length of @v@ should be @3@.
--
-- This command is an alias for 'Graphics.GL.Internal.Shared.glMultiTexCoord3dv'.


glMultiTexCoord3dvARB :: MonadIO m => GLenum -> Ptr GLdouble -> m ()
glMultiTexCoord3dvARB :: forall (m :: * -> *). MonadIO m => GLenum -> Ptr GLdouble -> m ()
glMultiTexCoord3dvARB = FunPtr (GLenum -> Ptr GLdouble -> IO ())
-> GLenum -> Ptr GLdouble -> m ()
forall (m :: * -> *).
MonadIO m =>
FunPtr (GLenum -> Ptr GLdouble -> IO ())
-> GLenum -> Ptr GLdouble -> m ()
ffienumPtrdoubleIOV FunPtr (GLenum -> Ptr GLdouble -> IO ())
glMultiTexCoord3dvARBFunPtr

glMultiTexCoord3dvARBFunPtr :: FunPtr (GLenum -> Ptr GLdouble -> IO ())
glMultiTexCoord3dvARBFunPtr :: FunPtr (GLenum -> Ptr GLdouble -> IO ())
glMultiTexCoord3dvARBFunPtr = IO (FunPtr (GLenum -> Ptr GLdouble -> IO ()))
-> FunPtr (GLenum -> Ptr GLdouble -> IO ())
forall a. IO a -> a
unsafePerformIO (String -> IO (FunPtr (GLenum -> Ptr GLdouble -> IO ()))
forall a. String -> IO (FunPtr a)
getProcAddress String
"glMultiTexCoord3dvARB")

{-# NOINLINE glMultiTexCoord3dvARBFunPtr #-}

-- | Usage: @'glMultiTexCoord3fARB' target s t r@
--
-- The parameter @target@ is a @TextureUnit@.
--
-- The parameter @s@ is a @CoordF@.
--
-- The parameter @t@ is a @CoordF@.
--
-- The parameter @r@ is a @CoordF@.
--
-- This command is an alias for 'Graphics.GL.Internal.Shared.glMultiTexCoord3f'.
--
-- The vector equivalent of this command is 'Graphics.GL.Internal.Shared.glMultiTexCoord3fv'.


glMultiTexCoord3fARB :: MonadIO m => GLenum -> GLfloat -> GLfloat -> GLfloat -> m ()
glMultiTexCoord3fARB :: forall (m :: * -> *).
MonadIO m =>
GLenum -> GLfloat -> GLfloat -> GLfloat -> m ()
glMultiTexCoord3fARB = FunPtr (GLenum -> GLfloat -> GLfloat -> GLfloat -> IO ())
-> GLenum -> GLfloat -> GLfloat -> GLfloat -> m ()
forall (m :: * -> *).
MonadIO m =>
FunPtr (GLenum -> GLfloat -> GLfloat -> GLfloat -> IO ())
-> GLenum -> GLfloat -> GLfloat -> GLfloat -> m ()
ffienumfloatfloatfloatIOV FunPtr (GLenum -> GLfloat -> GLfloat -> GLfloat -> IO ())
glMultiTexCoord3fARBFunPtr

glMultiTexCoord3fARBFunPtr :: FunPtr (GLenum -> GLfloat -> GLfloat -> GLfloat -> IO ())
glMultiTexCoord3fARBFunPtr :: FunPtr (GLenum -> GLfloat -> GLfloat -> GLfloat -> IO ())
glMultiTexCoord3fARBFunPtr = IO (FunPtr (GLenum -> GLfloat -> GLfloat -> GLfloat -> IO ()))
-> FunPtr (GLenum -> GLfloat -> GLfloat -> GLfloat -> IO ())
forall a. IO a -> a
unsafePerformIO (String
-> IO (FunPtr (GLenum -> GLfloat -> GLfloat -> GLfloat -> IO ()))
forall a. String -> IO (FunPtr a)
getProcAddress String
"glMultiTexCoord3fARB")

{-# NOINLINE glMultiTexCoord3fARBFunPtr #-}

-- | Usage: @'glMultiTexCoord3fvARB' target v@
--
-- The parameter @target@ is a @TextureUnit@.
--
-- The parameter @v@ is a @CoordF@.
--
-- The length of @v@ should be @3@.
--
-- This command is an alias for 'Graphics.GL.Internal.Shared.glMultiTexCoord3fv'.


glMultiTexCoord3fvARB :: MonadIO m => GLenum -> Ptr GLfloat -> m ()
glMultiTexCoord3fvARB :: forall (m :: * -> *). MonadIO m => GLenum -> Ptr GLfloat -> m ()
glMultiTexCoord3fvARB = FunPtr (GLenum -> Ptr GLfloat -> IO ())
-> GLenum -> Ptr GLfloat -> m ()
forall (m :: * -> *).
MonadIO m =>
FunPtr (GLenum -> Ptr GLfloat -> IO ())
-> GLenum -> Ptr GLfloat -> m ()
ffienumPtrfloatIOV FunPtr (GLenum -> Ptr GLfloat -> IO ())
glMultiTexCoord3fvARBFunPtr

glMultiTexCoord3fvARBFunPtr :: FunPtr (GLenum -> Ptr GLfloat -> IO ())
glMultiTexCoord3fvARBFunPtr :: FunPtr (GLenum -> Ptr GLfloat -> IO ())
glMultiTexCoord3fvARBFunPtr = IO (FunPtr (GLenum -> Ptr GLfloat -> IO ()))
-> FunPtr (GLenum -> Ptr GLfloat -> IO ())
forall a. IO a -> a
unsafePerformIO (String -> IO (FunPtr (GLenum -> Ptr GLfloat -> IO ()))
forall a. String -> IO (FunPtr a)
getProcAddress String
"glMultiTexCoord3fvARB")

{-# NOINLINE glMultiTexCoord3fvARBFunPtr #-}

-- | Usage: @'glMultiTexCoord3iARB' target s t r@
--
-- The parameter @target@ is a @TextureUnit@.
--
-- The parameter @s@ is a @CoordI@.
--
-- The parameter @t@ is a @CoordI@.
--
-- The parameter @r@ is a @CoordI@.
--
-- This command is an alias for 'Graphics.GL.Internal.Shared.glMultiTexCoord3i'.
--
-- The vector equivalent of this command is 'Graphics.GL.Internal.Shared.glMultiTexCoord3iv'.


glMultiTexCoord3iARB :: MonadIO m => GLenum -> GLint -> GLint -> GLint -> m ()
glMultiTexCoord3iARB :: forall (m :: * -> *).
MonadIO m =>
GLenum -> GLint -> GLint -> GLint -> m ()
glMultiTexCoord3iARB = FunPtr (GLenum -> GLint -> GLint -> GLint -> IO ())
-> GLenum -> GLint -> GLint -> GLint -> m ()
forall (m :: * -> *).
MonadIO m =>
FunPtr (GLenum -> GLint -> GLint -> GLint -> IO ())
-> GLenum -> GLint -> GLint -> GLint -> m ()
ffienumintintintIOV FunPtr (GLenum -> GLint -> GLint -> GLint -> IO ())
glMultiTexCoord3iARBFunPtr

glMultiTexCoord3iARBFunPtr :: FunPtr (GLenum -> GLint -> GLint -> GLint -> IO ())
glMultiTexCoord3iARBFunPtr :: FunPtr (GLenum -> GLint -> GLint -> GLint -> IO ())
glMultiTexCoord3iARBFunPtr = IO (FunPtr (GLenum -> GLint -> GLint -> GLint -> IO ()))
-> FunPtr (GLenum -> GLint -> GLint -> GLint -> IO ())
forall a. IO a -> a
unsafePerformIO (String -> IO (FunPtr (GLenum -> GLint -> GLint -> GLint -> IO ()))
forall a. String -> IO (FunPtr a)
getProcAddress String
"glMultiTexCoord3iARB")

{-# NOINLINE glMultiTexCoord3iARBFunPtr #-}

-- | Usage: @'glMultiTexCoord3ivARB' target v@
--
-- The parameter @target@ is a @TextureUnit@.
--
-- The parameter @v@ is a @CoordI@.
--
-- The length of @v@ should be @3@.
--
-- This command is an alias for 'Graphics.GL.Internal.Shared.glMultiTexCoord3iv'.


glMultiTexCoord3ivARB :: MonadIO m => GLenum -> Ptr GLint -> m ()
glMultiTexCoord3ivARB :: forall (m :: * -> *). MonadIO m => GLenum -> Ptr GLint -> m ()
glMultiTexCoord3ivARB = FunPtr (GLenum -> Ptr GLint -> IO ())
-> GLenum -> Ptr GLint -> m ()
forall (m :: * -> *).
MonadIO m =>
FunPtr (GLenum -> Ptr GLint -> IO ())
-> GLenum -> Ptr GLint -> m ()
ffienumPtrintIOV FunPtr (GLenum -> Ptr GLint -> IO ())
glMultiTexCoord3ivARBFunPtr

glMultiTexCoord3ivARBFunPtr :: FunPtr (GLenum -> Ptr GLint -> IO ())
glMultiTexCoord3ivARBFunPtr :: FunPtr (GLenum -> Ptr GLint -> IO ())
glMultiTexCoord3ivARBFunPtr = IO (FunPtr (GLenum -> Ptr GLint -> IO ()))
-> FunPtr (GLenum -> Ptr GLint -> IO ())
forall a. IO a -> a
unsafePerformIO (String -> IO (FunPtr (GLenum -> Ptr GLint -> IO ()))
forall a. String -> IO (FunPtr a)
getProcAddress String
"glMultiTexCoord3ivARB")

{-# NOINLINE glMultiTexCoord3ivARBFunPtr #-}

-- | Usage: @'glMultiTexCoord3sARB' target s t r@
--
-- The parameter @target@ is a @TextureUnit@.
--
-- The parameter @s@ is a @CoordS@.
--
-- The parameter @t@ is a @CoordS@.
--
-- The parameter @r@ is a @CoordS@.
--
-- This command is an alias for 'Graphics.GL.Internal.Shared.glMultiTexCoord3s'.
--
-- The vector equivalent of this command is 'Graphics.GL.Internal.Shared.glMultiTexCoord3sv'.


glMultiTexCoord3sARB :: MonadIO m => GLenum -> GLshort -> GLshort -> GLshort -> m ()
glMultiTexCoord3sARB :: forall (m :: * -> *).
MonadIO m =>
GLenum -> GLshort -> GLshort -> GLshort -> m ()
glMultiTexCoord3sARB = FunPtr (GLenum -> GLshort -> GLshort -> GLshort -> IO ())
-> GLenum -> GLshort -> GLshort -> GLshort -> m ()
forall (m :: * -> *).
MonadIO m =>
FunPtr (GLenum -> GLshort -> GLshort -> GLshort -> IO ())
-> GLenum -> GLshort -> GLshort -> GLshort -> m ()
ffienumshortshortshortIOV FunPtr (GLenum -> GLshort -> GLshort -> GLshort -> IO ())
glMultiTexCoord3sARBFunPtr

glMultiTexCoord3sARBFunPtr :: FunPtr (GLenum -> GLshort -> GLshort -> GLshort -> IO ())
glMultiTexCoord3sARBFunPtr :: FunPtr (GLenum -> GLshort -> GLshort -> GLshort -> IO ())
glMultiTexCoord3sARBFunPtr = IO (FunPtr (GLenum -> GLshort -> GLshort -> GLshort -> IO ()))
-> FunPtr (GLenum -> GLshort -> GLshort -> GLshort -> IO ())
forall a. IO a -> a
unsafePerformIO (String
-> IO (FunPtr (GLenum -> GLshort -> GLshort -> GLshort -> IO ()))
forall a. String -> IO (FunPtr a)
getProcAddress String
"glMultiTexCoord3sARB")

{-# NOINLINE glMultiTexCoord3sARBFunPtr #-}

-- | Usage: @'glMultiTexCoord3svARB' target v@
--
-- The parameter @target@ is a @TextureUnit@.
--
-- The parameter @v@ is a @CoordS@.
--
-- The length of @v@ should be @3@.
--
-- This command is an alias for 'Graphics.GL.Internal.Shared.glMultiTexCoord3sv'.


glMultiTexCoord3svARB :: MonadIO m => GLenum -> Ptr GLshort -> m ()
glMultiTexCoord3svARB :: forall (m :: * -> *). MonadIO m => GLenum -> Ptr GLshort -> m ()
glMultiTexCoord3svARB = FunPtr (GLenum -> Ptr GLshort -> IO ())
-> GLenum -> Ptr GLshort -> m ()
forall (m :: * -> *).
MonadIO m =>
FunPtr (GLenum -> Ptr GLshort -> IO ())
-> GLenum -> Ptr GLshort -> m ()
ffienumPtrshortIOV FunPtr (GLenum -> Ptr GLshort -> IO ())
glMultiTexCoord3svARBFunPtr

glMultiTexCoord3svARBFunPtr :: FunPtr (GLenum -> Ptr GLshort -> IO ())
glMultiTexCoord3svARBFunPtr :: FunPtr (GLenum -> Ptr GLshort -> IO ())
glMultiTexCoord3svARBFunPtr = IO (FunPtr (GLenum -> Ptr GLshort -> IO ()))
-> FunPtr (GLenum -> Ptr GLshort -> IO ())
forall a. IO a -> a
unsafePerformIO (String -> IO (FunPtr (GLenum -> Ptr GLshort -> IO ()))
forall a. String -> IO (FunPtr a)
getProcAddress String
"glMultiTexCoord3svARB")

{-# NOINLINE glMultiTexCoord3svARBFunPtr #-}

-- | Usage: @'glMultiTexCoord4dARB' target s t r q@
--
-- The parameter @target@ is a @TextureUnit@.
--
-- The parameter @s@ is a @CoordD@.
--
-- The parameter @t@ is a @CoordD@.
--
-- The parameter @r@ is a @CoordD@.
--
-- The parameter @q@ is a @CoordD@.
--
-- This command is an alias for 'Graphics.GL.Internal.Shared.glMultiTexCoord4d'.
--
-- The vector equivalent of this command is 'Graphics.GL.Internal.Shared.glMultiTexCoord4dv'.


glMultiTexCoord4dARB :: MonadIO m => GLenum -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> m ()
glMultiTexCoord4dARB :: forall (m :: * -> *).
MonadIO m =>
GLenum -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> m ()
glMultiTexCoord4dARB = FunPtr
  (GLenum -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ())
-> GLenum -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> m ()
forall (m :: * -> *).
MonadIO m =>
FunPtr
  (GLenum -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ())
-> GLenum -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> m ()
ffienumdoubledoubledoubledoubleIOV FunPtr
  (GLenum -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ())
glMultiTexCoord4dARBFunPtr

glMultiTexCoord4dARBFunPtr :: FunPtr (GLenum -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ())
glMultiTexCoord4dARBFunPtr :: FunPtr
  (GLenum -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ())
glMultiTexCoord4dARBFunPtr = IO
  (FunPtr
     (GLenum -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ()))
-> FunPtr
     (GLenum -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ())
forall a. IO a -> a
unsafePerformIO (String
-> IO
     (FunPtr
        (GLenum -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ()))
forall a. String -> IO (FunPtr a)
getProcAddress String
"glMultiTexCoord4dARB")

{-# NOINLINE glMultiTexCoord4dARBFunPtr #-}

-- | Usage: @'glMultiTexCoord4dvARB' target v@
--
-- The parameter @target@ is a @TextureUnit@.
--
-- The parameter @v@ is a @CoordD@.
--
-- The length of @v@ should be @4@.
--
-- This command is an alias for 'Graphics.GL.Internal.Shared.glMultiTexCoord4dv'.


glMultiTexCoord4dvARB :: MonadIO m => GLenum -> Ptr GLdouble -> m ()
glMultiTexCoord4dvARB :: forall (m :: * -> *). MonadIO m => GLenum -> Ptr GLdouble -> m ()
glMultiTexCoord4dvARB = FunPtr (GLenum -> Ptr GLdouble -> IO ())
-> GLenum -> Ptr GLdouble -> m ()
forall (m :: * -> *).
MonadIO m =>
FunPtr (GLenum -> Ptr GLdouble -> IO ())
-> GLenum -> Ptr GLdouble -> m ()
ffienumPtrdoubleIOV FunPtr (GLenum -> Ptr GLdouble -> IO ())
glMultiTexCoord4dvARBFunPtr

glMultiTexCoord4dvARBFunPtr :: FunPtr (GLenum -> Ptr GLdouble -> IO ())
glMultiTexCoord4dvARBFunPtr :: FunPtr (GLenum -> Ptr GLdouble -> IO ())
glMultiTexCoord4dvARBFunPtr = IO (FunPtr (GLenum -> Ptr GLdouble -> IO ()))
-> FunPtr (GLenum -> Ptr GLdouble -> IO ())
forall a. IO a -> a
unsafePerformIO (String -> IO (FunPtr (GLenum -> Ptr GLdouble -> IO ()))
forall a. String -> IO (FunPtr a)
getProcAddress String
"glMultiTexCoord4dvARB")

{-# NOINLINE glMultiTexCoord4dvARBFunPtr #-}

-- | Usage: @'glMultiTexCoord4fARB' target s t r q@
--
-- The parameter @target@ is a @TextureUnit@.
--
-- The parameter @s@ is a @CoordF@.
--
-- The parameter @t@ is a @CoordF@.
--
-- The parameter @r@ is a @CoordF@.
--
-- The parameter @q@ is a @CoordF@.
--
-- This command is an alias for 'Graphics.GL.Internal.Shared.glMultiTexCoord4f'.
--
-- The vector equivalent of this command is 'Graphics.GL.Internal.Shared.glMultiTexCoord4fv'.


glMultiTexCoord4fARB :: MonadIO m => GLenum -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> m ()
glMultiTexCoord4fARB :: forall (m :: * -> *).
MonadIO m =>
GLenum -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> m ()
glMultiTexCoord4fARB = FunPtr
  (GLenum -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
-> GLenum -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> m ()
forall (m :: * -> *).
MonadIO m =>
FunPtr
  (GLenum -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
-> GLenum -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> m ()
ffienumfloatfloatfloatfloatIOV FunPtr
  (GLenum -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
glMultiTexCoord4fARBFunPtr

glMultiTexCoord4fARBFunPtr :: FunPtr (GLenum -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
glMultiTexCoord4fARBFunPtr :: FunPtr
  (GLenum -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
glMultiTexCoord4fARBFunPtr = IO
  (FunPtr
     (GLenum -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ()))
-> FunPtr
     (GLenum -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
forall a. IO a -> a
unsafePerformIO (String
-> IO
     (FunPtr
        (GLenum -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ()))
forall a. String -> IO (FunPtr a)
getProcAddress String
"glMultiTexCoord4fARB")

{-# NOINLINE glMultiTexCoord4fARBFunPtr #-}

-- | Usage: @'glMultiTexCoord4fvARB' target v@
--
-- The parameter @target@ is a @TextureUnit@.
--
-- The parameter @v@ is a @CoordF@.
--
-- The length of @v@ should be @4@.
--
-- This command is an alias for 'Graphics.GL.Internal.Shared.glMultiTexCoord4fv'.


glMultiTexCoord4fvARB :: MonadIO m => GLenum -> Ptr GLfloat -> m ()
glMultiTexCoord4fvARB :: forall (m :: * -> *). MonadIO m => GLenum -> Ptr GLfloat -> m ()
glMultiTexCoord4fvARB = FunPtr (GLenum -> Ptr GLfloat -> IO ())
-> GLenum -> Ptr GLfloat -> m ()
forall (m :: * -> *).
MonadIO m =>
FunPtr (GLenum -> Ptr GLfloat -> IO ())
-> GLenum -> Ptr GLfloat -> m ()
ffienumPtrfloatIOV FunPtr (GLenum -> Ptr GLfloat -> IO ())
glMultiTexCoord4fvARBFunPtr

glMultiTexCoord4fvARBFunPtr :: FunPtr (GLenum -> Ptr GLfloat -> IO ())
glMultiTexCoord4fvARBFunPtr :: FunPtr (GLenum -> Ptr GLfloat -> IO ())
glMultiTexCoord4fvARBFunPtr = IO (FunPtr (GLenum -> Ptr GLfloat -> IO ()))
-> FunPtr (GLenum -> Ptr GLfloat -> IO ())
forall a. IO a -> a
unsafePerformIO (String -> IO (FunPtr (GLenum -> Ptr GLfloat -> IO ()))
forall a. String -> IO (FunPtr a)
getProcAddress String
"glMultiTexCoord4fvARB")

{-# NOINLINE glMultiTexCoord4fvARBFunPtr #-}

-- | Usage: @'glMultiTexCoord4iARB' target s t r q@
--
-- The parameter @target@ is a @TextureUnit@.
--
-- The parameter @s@ is a @CoordI@.
--
-- The parameter @t@ is a @CoordI@.
--
-- The parameter @r@ is a @CoordI@.
--
-- The parameter @q@ is a @CoordI@.
--
-- This command is an alias for 'Graphics.GL.Internal.Shared.glMultiTexCoord4i'.
--
-- The vector equivalent of this command is 'Graphics.GL.Internal.Shared.glMultiTexCoord4iv'.


glMultiTexCoord4iARB :: MonadIO m => GLenum -> GLint -> GLint -> GLint -> GLint -> m ()
glMultiTexCoord4iARB :: forall (m :: * -> *).
MonadIO m =>
GLenum -> GLint -> GLint -> GLint -> GLint -> m ()
glMultiTexCoord4iARB = FunPtr (GLenum -> GLint -> GLint -> GLint -> GLint -> IO ())
-> GLenum -> GLint -> GLint -> GLint -> GLint -> m ()
forall (m :: * -> *).
MonadIO m =>
FunPtr (GLenum -> GLint -> GLint -> GLint -> GLint -> IO ())
-> GLenum -> GLint -> GLint -> GLint -> GLint -> m ()
ffienumintintintintIOV FunPtr (GLenum -> GLint -> GLint -> GLint -> GLint -> IO ())
glMultiTexCoord4iARBFunPtr

glMultiTexCoord4iARBFunPtr :: FunPtr (GLenum -> GLint -> GLint -> GLint -> GLint -> IO ())
glMultiTexCoord4iARBFunPtr :: FunPtr (GLenum -> GLint -> GLint -> GLint -> GLint -> IO ())
glMultiTexCoord4iARBFunPtr = IO (FunPtr (GLenum -> GLint -> GLint -> GLint -> GLint -> IO ()))
-> FunPtr (GLenum -> GLint -> GLint -> GLint -> GLint -> IO ())
forall a. IO a -> a
unsafePerformIO (String
-> IO
     (FunPtr (GLenum -> GLint -> GLint -> GLint -> GLint -> IO ()))
forall a. String -> IO (FunPtr a)
getProcAddress String
"glMultiTexCoord4iARB")

{-# NOINLINE glMultiTexCoord4iARBFunPtr #-}

-- | Usage: @'glMultiTexCoord4ivARB' target v@
--
-- The parameter @target@ is a @TextureUnit@.
--
-- The parameter @v@ is a @CoordI@.
--
-- The length of @v@ should be @4@.
--
-- This command is an alias for 'Graphics.GL.Internal.Shared.glMultiTexCoord4iv'.


glMultiTexCoord4ivARB :: MonadIO m => GLenum -> Ptr GLint -> m ()
glMultiTexCoord4ivARB :: forall (m :: * -> *). MonadIO m => GLenum -> Ptr GLint -> m ()
glMultiTexCoord4ivARB = FunPtr (GLenum -> Ptr GLint -> IO ())
-> GLenum -> Ptr GLint -> m ()
forall (m :: * -> *).
MonadIO m =>
FunPtr (GLenum -> Ptr GLint -> IO ())
-> GLenum -> Ptr GLint -> m ()
ffienumPtrintIOV FunPtr (GLenum -> Ptr GLint -> IO ())
glMultiTexCoord4ivARBFunPtr

glMultiTexCoord4ivARBFunPtr :: FunPtr (GLenum -> Ptr GLint -> IO ())
glMultiTexCoord4ivARBFunPtr :: FunPtr (GLenum -> Ptr GLint -> IO ())
glMultiTexCoord4ivARBFunPtr = IO (FunPtr (GLenum -> Ptr GLint -> IO ()))
-> FunPtr (GLenum -> Ptr GLint -> IO ())
forall a. IO a -> a
unsafePerformIO (String -> IO (FunPtr (GLenum -> Ptr GLint -> IO ()))
forall a. String -> IO (FunPtr a)
getProcAddress String
"glMultiTexCoord4ivARB")

{-# NOINLINE glMultiTexCoord4ivARBFunPtr #-}

-- | Usage: @'glMultiTexCoord4sARB' target s t r q@
--
-- The parameter @target@ is a @TextureUnit@.
--
-- The parameter @s@ is a @CoordS@.
--
-- The parameter @t@ is a @CoordS@.
--
-- The parameter @r@ is a @CoordS@.
--
-- The parameter @q@ is a @CoordS@.
--
-- This command is an alias for 'Graphics.GL.Internal.Shared.glMultiTexCoord4s'.
--
-- The vector equivalent of this command is 'Graphics.GL.Internal.Shared.glMultiTexCoord4sv'.


glMultiTexCoord4sARB :: MonadIO m => GLenum -> GLshort -> GLshort -> GLshort -> GLshort -> m ()
glMultiTexCoord4sARB :: forall (m :: * -> *).
MonadIO m =>
GLenum -> GLshort -> GLshort -> GLshort -> GLshort -> m ()
glMultiTexCoord4sARB = FunPtr
  (GLenum -> GLshort -> GLshort -> GLshort -> GLshort -> IO ())
-> GLenum -> GLshort -> GLshort -> GLshort -> GLshort -> m ()
forall (m :: * -> *).
MonadIO m =>
FunPtr
  (GLenum -> GLshort -> GLshort -> GLshort -> GLshort -> IO ())
-> GLenum -> GLshort -> GLshort -> GLshort -> GLshort -> m ()
ffienumshortshortshortshortIOV FunPtr
  (GLenum -> GLshort -> GLshort -> GLshort -> GLshort -> IO ())
glMultiTexCoord4sARBFunPtr

glMultiTexCoord4sARBFunPtr :: FunPtr (GLenum -> GLshort -> GLshort -> GLshort -> GLshort -> IO ())
glMultiTexCoord4sARBFunPtr :: FunPtr
  (GLenum -> GLshort -> GLshort -> GLshort -> GLshort -> IO ())
glMultiTexCoord4sARBFunPtr = IO
  (FunPtr
     (GLenum -> GLshort -> GLshort -> GLshort -> GLshort -> IO ()))
-> FunPtr
     (GLenum -> GLshort -> GLshort -> GLshort -> GLshort -> IO ())
forall a. IO a -> a
unsafePerformIO (String
-> IO
     (FunPtr
        (GLenum -> GLshort -> GLshort -> GLshort -> GLshort -> IO ()))
forall a. String -> IO (FunPtr a)
getProcAddress String
"glMultiTexCoord4sARB")

{-# NOINLINE glMultiTexCoord4sARBFunPtr #-}

-- | Usage: @'glMultiTexCoord4svARB' target v@
--
-- The parameter @target@ is a @TextureUnit@.
--
-- The parameter @v@ is a @CoordS@.
--
-- The length of @v@ should be @4@.
--
-- This command is an alias for 'Graphics.GL.Internal.Shared.glMultiTexCoord4sv'.


glMultiTexCoord4svARB :: MonadIO m => GLenum -> Ptr GLshort -> m ()
glMultiTexCoord4svARB :: forall (m :: * -> *). MonadIO m => GLenum -> Ptr GLshort -> m ()
glMultiTexCoord4svARB = FunPtr (GLenum -> Ptr GLshort -> IO ())
-> GLenum -> Ptr GLshort -> m ()
forall (m :: * -> *).
MonadIO m =>
FunPtr (GLenum -> Ptr GLshort -> IO ())
-> GLenum -> Ptr GLshort -> m ()
ffienumPtrshortIOV FunPtr (GLenum -> Ptr GLshort -> IO ())
glMultiTexCoord4svARBFunPtr

glMultiTexCoord4svARBFunPtr :: FunPtr (GLenum -> Ptr GLshort -> IO ())
glMultiTexCoord4svARBFunPtr :: FunPtr (GLenum -> Ptr GLshort -> IO ())
glMultiTexCoord4svARBFunPtr = IO (FunPtr (GLenum -> Ptr GLshort -> IO ()))
-> FunPtr (GLenum -> Ptr GLshort -> IO ())
forall a. IO a -> a
unsafePerformIO (String -> IO (FunPtr (GLenum -> Ptr GLshort -> IO ()))
forall a. String -> IO (FunPtr a)
getProcAddress String
"glMultiTexCoord4svARB")

{-# NOINLINE glMultiTexCoord4svARBFunPtr #-}

pattern GL_ACTIVE_TEXTURE_ARB  :: (Eq a, Num a) => a

pattern $mGL_ACTIVE_TEXTURE_ARB :: forall {r} {a}.
(Eq a, Num a) =>
a -> ((# #) -> r) -> ((# #) -> r) -> r
$bGL_ACTIVE_TEXTURE_ARB :: forall a. (Eq a, Num a) => a
GL_ACTIVE_TEXTURE_ARB = 0x84E0

pattern GL_CLIENT_ACTIVE_TEXTURE_ARB  :: (Eq a, Num a) => a

pattern $mGL_CLIENT_ACTIVE_TEXTURE_ARB :: forall {r} {a}.
(Eq a, Num a) =>
a -> ((# #) -> r) -> ((# #) -> r) -> r
$bGL_CLIENT_ACTIVE_TEXTURE_ARB :: forall a. (Eq a, Num a) => a
GL_CLIENT_ACTIVE_TEXTURE_ARB = 0x84E1

pattern GL_MAX_TEXTURE_UNITS_ARB  :: (Eq a, Num a) => a

pattern $mGL_MAX_TEXTURE_UNITS_ARB :: forall {r} {a}.
(Eq a, Num a) =>
a -> ((# #) -> r) -> ((# #) -> r) -> r
$bGL_MAX_TEXTURE_UNITS_ARB :: forall a. (Eq a, Num a) => a
GL_MAX_TEXTURE_UNITS_ARB = 0x84E2

pattern GL_TEXTURE10_ARB  :: (Eq a, Num a) => a

pattern $mGL_TEXTURE10_ARB :: forall {r} {a}.
(Eq a, Num a) =>
a -> ((# #) -> r) -> ((# #) -> r) -> r
$bGL_TEXTURE10_ARB :: forall a. (Eq a, Num a) => a
GL_TEXTURE10_ARB = 0x84CA

pattern GL_TEXTURE11_ARB  :: (Eq a, Num a) => a

pattern $mGL_TEXTURE11_ARB :: forall {r} {a}.
(Eq a, Num a) =>
a -> ((# #) -> r) -> ((# #) -> r) -> r
$bGL_TEXTURE11_ARB :: forall a. (Eq a, Num a) => a
GL_TEXTURE11_ARB = 0x84CB

pattern GL_TEXTURE12_ARB  :: (Eq a, Num a) => a

pattern $mGL_TEXTURE12_ARB :: forall {r} {a}.
(Eq a, Num a) =>
a -> ((# #) -> r) -> ((# #) -> r) -> r
$bGL_TEXTURE12_ARB :: forall a. (Eq a, Num a) => a
GL_TEXTURE12_ARB = 0x84CC

pattern GL_TEXTURE13_ARB  :: (Eq a, Num a) => a

pattern $mGL_TEXTURE13_ARB :: forall {r} {a}.
(Eq a, Num a) =>
a -> ((# #) -> r) -> ((# #) -> r) -> r
$bGL_TEXTURE13_ARB :: forall a. (Eq a, Num a) => a
GL_TEXTURE13_ARB = 0x84CD

pattern GL_TEXTURE14_ARB  :: (Eq a, Num a) => a

pattern $mGL_TEXTURE14_ARB :: forall {r} {a}.
(Eq a, Num a) =>
a -> ((# #) -> r) -> ((# #) -> r) -> r
$bGL_TEXTURE14_ARB :: forall a. (Eq a, Num a) => a
GL_TEXTURE14_ARB = 0x84CE

pattern GL_TEXTURE15_ARB  :: (Eq a, Num a) => a

pattern $mGL_TEXTURE15_ARB :: forall {r} {a}.
(Eq a, Num a) =>
a -> ((# #) -> r) -> ((# #) -> r) -> r
$bGL_TEXTURE15_ARB :: forall a. (Eq a, Num a) => a
GL_TEXTURE15_ARB = 0x84CF

pattern GL_TEXTURE16_ARB  :: (Eq a, Num a) => a

pattern $mGL_TEXTURE16_ARB :: forall {r} {a}.
(Eq a, Num a) =>
a -> ((# #) -> r) -> ((# #) -> r) -> r
$bGL_TEXTURE16_ARB :: forall a. (Eq a, Num a) => a
GL_TEXTURE16_ARB = 0x84D0

pattern GL_TEXTURE17_ARB  :: (Eq a, Num a) => a

pattern $mGL_TEXTURE17_ARB :: forall {r} {a}.
(Eq a, Num a) =>
a -> ((# #) -> r) -> ((# #) -> r) -> r
$bGL_TEXTURE17_ARB :: forall a. (Eq a, Num a) => a
GL_TEXTURE17_ARB = 0x84D1

pattern GL_TEXTURE18_ARB  :: (Eq a, Num a) => a

pattern $mGL_TEXTURE18_ARB :: forall {r} {a}.
(Eq a, Num a) =>
a -> ((# #) -> r) -> ((# #) -> r) -> r
$bGL_TEXTURE18_ARB :: forall a. (Eq a, Num a) => a
GL_TEXTURE18_ARB = 0x84D2

pattern GL_TEXTURE19_ARB  :: (Eq a, Num a) => a

pattern $mGL_TEXTURE19_ARB :: forall {r} {a}.
(Eq a, Num a) =>
a -> ((# #) -> r) -> ((# #) -> r) -> r
$bGL_TEXTURE19_ARB :: forall a. (Eq a, Num a) => a
GL_TEXTURE19_ARB = 0x84D3

pattern GL_TEXTURE20_ARB  :: (Eq a, Num a) => a

pattern $mGL_TEXTURE20_ARB :: forall {r} {a}.
(Eq a, Num a) =>
a -> ((# #) -> r) -> ((# #) -> r) -> r
$bGL_TEXTURE20_ARB :: forall a. (Eq a, Num a) => a
GL_TEXTURE20_ARB = 0x84D4

pattern GL_TEXTURE21_ARB  :: (Eq a, Num a) => a

pattern $mGL_TEXTURE21_ARB :: forall {r} {a}.
(Eq a, Num a) =>
a -> ((# #) -> r) -> ((# #) -> r) -> r
$bGL_TEXTURE21_ARB :: forall a. (Eq a, Num a) => a
GL_TEXTURE21_ARB = 0x84D5

pattern GL_TEXTURE22_ARB  :: (Eq a, Num a) => a

pattern $mGL_TEXTURE22_ARB :: forall {r} {a}.
(Eq a, Num a) =>
a -> ((# #) -> r) -> ((# #) -> r) -> r
$bGL_TEXTURE22_ARB :: forall a. (Eq a, Num a) => a
GL_TEXTURE22_ARB = 0x84D6

pattern GL_TEXTURE23_ARB  :: (Eq a, Num a) => a

pattern $mGL_TEXTURE23_ARB :: forall {r} {a}.
(Eq a, Num a) =>
a -> ((# #) -> r) -> ((# #) -> r) -> r
$bGL_TEXTURE23_ARB :: forall a. (Eq a, Num a) => a
GL_TEXTURE23_ARB = 0x84D7

pattern GL_TEXTURE24_ARB  :: (Eq a, Num a) => a

pattern $mGL_TEXTURE24_ARB :: forall {r} {a}.
(Eq a, Num a) =>
a -> ((# #) -> r) -> ((# #) -> r) -> r
$bGL_TEXTURE24_ARB :: forall a. (Eq a, Num a) => a
GL_TEXTURE24_ARB = 0x84D8

pattern GL_TEXTURE25_ARB  :: (Eq a, Num a) => a

pattern $mGL_TEXTURE25_ARB :: forall {r} {a}.
(Eq a, Num a) =>
a -> ((# #) -> r) -> ((# #) -> r) -> r
$bGL_TEXTURE25_ARB :: forall a. (Eq a, Num a) => a
GL_TEXTURE25_ARB = 0x84D9

pattern GL_TEXTURE26_ARB  :: (Eq a, Num a) => a

pattern $mGL_TEXTURE26_ARB :: forall {r} {a}.
(Eq a, Num a) =>
a -> ((# #) -> r) -> ((# #) -> r) -> r
$bGL_TEXTURE26_ARB :: forall a. (Eq a, Num a) => a
GL_TEXTURE26_ARB = 0x84DA

pattern GL_TEXTURE27_ARB  :: (Eq a, Num a) => a

pattern $mGL_TEXTURE27_ARB :: forall {r} {a}.
(Eq a, Num a) =>
a -> ((# #) -> r) -> ((# #) -> r) -> r
$bGL_TEXTURE27_ARB :: forall a. (Eq a, Num a) => a
GL_TEXTURE27_ARB = 0x84DB

pattern GL_TEXTURE28_ARB  :: (Eq a, Num a) => a

pattern $mGL_TEXTURE28_ARB :: forall {r} {a}.
(Eq a, Num a) =>
a -> ((# #) -> r) -> ((# #) -> r) -> r
$bGL_TEXTURE28_ARB :: forall a. (Eq a, Num a) => a
GL_TEXTURE28_ARB = 0x84DC

pattern GL_TEXTURE29_ARB  :: (Eq a, Num a) => a

pattern $mGL_TEXTURE29_ARB :: forall {r} {a}.
(Eq a, Num a) =>
a -> ((# #) -> r) -> ((# #) -> r) -> r
$bGL_TEXTURE29_ARB :: forall a. (Eq a, Num a) => a
GL_TEXTURE29_ARB = 0x84DD

pattern GL_TEXTURE2_ARB  :: (Eq a, Num a) => a

pattern $mGL_TEXTURE2_ARB :: forall {r} {a}.
(Eq a, Num a) =>
a -> ((# #) -> r) -> ((# #) -> r) -> r
$bGL_TEXTURE2_ARB :: forall a. (Eq a, Num a) => a
GL_TEXTURE2_ARB = 0x84C2

pattern GL_TEXTURE30_ARB  :: (Eq a, Num a) => a

pattern $mGL_TEXTURE30_ARB :: forall {r} {a}.
(Eq a, Num a) =>
a -> ((# #) -> r) -> ((# #) -> r) -> r
$bGL_TEXTURE30_ARB :: forall a. (Eq a, Num a) => a
GL_TEXTURE30_ARB = 0x84DE

pattern GL_TEXTURE31_ARB  :: (Eq a, Num a) => a

pattern $mGL_TEXTURE31_ARB :: forall {r} {a}.
(Eq a, Num a) =>
a -> ((# #) -> r) -> ((# #) -> r) -> r
$bGL_TEXTURE31_ARB :: forall a. (Eq a, Num a) => a
GL_TEXTURE31_ARB = 0x84DF

pattern GL_TEXTURE3_ARB  :: (Eq a, Num a) => a

pattern $mGL_TEXTURE3_ARB :: forall {r} {a}.
(Eq a, Num a) =>
a -> ((# #) -> r) -> ((# #) -> r) -> r
$bGL_TEXTURE3_ARB :: forall a. (Eq a, Num a) => a
GL_TEXTURE3_ARB = 0x84C3

pattern GL_TEXTURE4_ARB  :: (Eq a, Num a) => a

pattern $mGL_TEXTURE4_ARB :: forall {r} {a}.
(Eq a, Num a) =>
a -> ((# #) -> r) -> ((# #) -> r) -> r
$bGL_TEXTURE4_ARB :: forall a. (Eq a, Num a) => a
GL_TEXTURE4_ARB = 0x84C4

pattern GL_TEXTURE5_ARB  :: (Eq a, Num a) => a

pattern $mGL_TEXTURE5_ARB :: forall {r} {a}.
(Eq a, Num a) =>
a -> ((# #) -> r) -> ((# #) -> r) -> r
$bGL_TEXTURE5_ARB :: forall a. (Eq a, Num a) => a
GL_TEXTURE5_ARB = 0x84C5

pattern GL_TEXTURE6_ARB  :: (Eq a, Num a) => a

pattern $mGL_TEXTURE6_ARB :: forall {r} {a}.
(Eq a, Num a) =>
a -> ((# #) -> r) -> ((# #) -> r) -> r
$bGL_TEXTURE6_ARB :: forall a. (Eq a, Num a) => a
GL_TEXTURE6_ARB = 0x84C6

pattern GL_TEXTURE7_ARB  :: (Eq a, Num a) => a

pattern $mGL_TEXTURE7_ARB :: forall {r} {a}.
(Eq a, Num a) =>
a -> ((# #) -> r) -> ((# #) -> r) -> r
$bGL_TEXTURE7_ARB :: forall a. (Eq a, Num a) => a
GL_TEXTURE7_ARB = 0x84C7

pattern GL_TEXTURE8_ARB  :: (Eq a, Num a) => a

pattern $mGL_TEXTURE8_ARB :: forall {r} {a}.
(Eq a, Num a) =>
a -> ((# #) -> r) -> ((# #) -> r) -> r
$bGL_TEXTURE8_ARB :: forall a. (Eq a, Num a) => a
GL_TEXTURE8_ARB = 0x84C8

pattern GL_TEXTURE9_ARB  :: (Eq a, Num a) => a

pattern $mGL_TEXTURE9_ARB :: forall {r} {a}.
(Eq a, Num a) =>
a -> ((# #) -> r) -> ((# #) -> r) -> r
$bGL_TEXTURE9_ARB :: forall a. (Eq a, Num a) => a
GL_TEXTURE9_ARB = 0x84C9