    {-# OPTIONS_HADDOCK hide #-}
    --------------------------------------------------------------------------------
    -- |
    -- Module      :  Graphics.GL.Functions.F26
    -- Copyright   :  (c) Sven Panne 2019
    -- License     :  BSD3
    --
    -- Maintainer  :  Sven Panne <svenpanne@gmail.com>
    -- Stability   :  stable
    -- Portability :  portable
    --
    -- Raw functions from the
    -- <http://www.opengl.org/registry/ OpenGL registry>.
    --
    --------------------------------------------------------------------------------

    module Graphics.GL.Functions.F26 (
      glTexCoord4fVertex4fvSUN,
      glTexCoord4fv,
      glTexCoord4hNV,
      glTexCoord4hvNV,
      glTexCoord4i,
      glTexCoord4iv,
      glTexCoord4s,
      glTexCoord4sv,
      glTexCoord4xOES,
      glTexCoord4xvOES,
      glTexCoordFormatNV,
      glTexCoordP1ui,
      glTexCoordP1uiv,
      glTexCoordP2ui,
      glTexCoordP2uiv,
      glTexCoordP3ui,
      glTexCoordP3uiv,
      glTexCoordP4ui,
      glTexCoordP4uiv,
      glTexCoordPointer,
      glTexCoordPointerEXT,
      glTexCoordPointerListIBM,
      glTexCoordPointervINTEL,
      glTexEnvf,
      glTexEnvfv,
      glTexEnvi,
      glTexEnviv,
      glTexEnvx,
      glTexEnvxOES,
      glTexEnvxv,
      glTexEnvxvOES,
      glTexFilterFuncSGIS,
      glTexGend,
      glTexGendv,
      glTexGenf,
      glTexGenfOES,
      glTexGenfv,
      glTexGenfvOES,
      glTexGeni,
      glTexGeniOES,
      glTexGeniv,
      glTexGenivOES,
      glTexGenxOES,
      glTexGenxvOES,
      glTexImage1D,
      glTexImage2D,
      glTexImage2DMultisample,
      glTexImage2DMultisampleCoverageNV,
      glTexImage3D,
      glTexImage3DEXT,
      glTexImage3DMultisample,
      glTexImage3DMultisampleCoverageNV,
      glTexImage3DOES,
      glTexImage4DSGIS,
      glTexPageCommitmentARB,
      glTexPageCommitmentEXT,
      glTexParameterIiv,
      glTexParameterIivEXT,
      glTexParameterIivOES,
      glTexParameterIuiv,
      glTexParameterIuivEXT,
      glTexParameterIuivOES,
      glTexParameterf,
      glTexParameterfv,
      glTexParameteri,
      glTexParameteriv,
      glTexParameterx,
      glTexParameterxOES,
      glTexParameterxv,
      glTexParameterxvOES,
      glTexRenderbufferNV,
      glTexStorage1D,
      glTexStorage1DEXT,
      glTexStorage2D,
      glTexStorage2DEXT,
      glTexStorage2DMultisample,
      glTexStorage3D,
      glTexStorage3DEXT,
      glTexStorage3DMultisample,
      glTexStorage3DMultisampleOES,
      glTexStorageMem1DEXT,
      glTexStorageMem2DEXT,
      glTexStorageMem2DMultisampleEXT,
      glTexStorageMem3DEXT,
      glTexStorageMem3DMultisampleEXT,
      glTexStorageSparseAMD,
      glTexSubImage1D,
      glTexSubImage1DEXT,
      glTexSubImage2D,
      glTexSubImage2DEXT,
      glTexSubImage3D,
      glTexSubImage3DEXT,
      glTexSubImage3DOES,
      glTexSubImage4DSGIS,
      glTextureAttachMemoryNV,
      glTextureBarrier,
      glTextureBarrierNV,
      glTextureBuffer,
      glTextureBufferEXT,
      glTextureBufferRange
    ) where

    import Control.Monad.IO.Class ( MonadIO(..) )
    import Foreign.Ptr
    import Graphics.GL.Foreign
    import Graphics.GL.Types
    import System.IO.Unsafe ( unsafePerformIO )

    -- glTexCoord4fVertex4fvSUN ----------------------------------------------------

    glTexCoord4fVertex4fvSUN
      :: MonadIO m
      => Ptr GLfloat -- ^ @tc@ pointing to @4@ elements of type @GLfloat@.
      -> Ptr GLfloat -- ^ @v@ pointing to @4@ elements of type @GLfloat@.
      -> m ()
    glTexCoord4fVertex4fvSUN :: forall (m :: * -> *).
    MonadIO m =>
    Ptr GLfloat -> Ptr GLfloat -> m ()
    glTexCoord4fVertex4fvSUN Ptr GLfloat
    v1 Ptr GLfloat
    v2 = IO () -> m ()
    forall a. IO a -> m a
    forall (m :: * -> *) a. MonadIO m => IO a -> m a
    liftIO (IO () -> m ()) -> IO () -> m ()
    forall a b. (a -> b) -> a -> b
    $ FunPtr (Ptr GLfloat -> Ptr GLfloat -> IO ())
    -> Ptr GLfloat -> Ptr GLfloat -> IO ()
    dyn104 FunPtr (Ptr GLfloat -> Ptr GLfloat -> IO ())
    ptr_glTexCoord4fVertex4fvSUN Ptr GLfloat
    v1 Ptr GLfloat
    v2

    {-# NOINLINE ptr_glTexCoord4fVertex4fvSUN #-}
    ptr_glTexCoord4fVertex4fvSUN :: FunPtr (Ptr GLfloat -> Ptr GLfloat -> IO ())
    ptr_glTexCoord4fVertex4fvSUN :: FunPtr (Ptr GLfloat -> Ptr GLfloat -> IO ())
    ptr_glTexCoord4fVertex4fvSUN = IO (FunPtr (Ptr GLfloat -> Ptr GLfloat -> IO ()))
    -> FunPtr (Ptr GLfloat -> Ptr GLfloat -> IO ())
    forall a. IO a -> a
    unsafePerformIO (IO (FunPtr (Ptr GLfloat -> Ptr GLfloat -> IO ()))
     -> FunPtr (Ptr GLfloat -> Ptr GLfloat -> IO ()))
    -> IO (FunPtr (Ptr GLfloat -> Ptr GLfloat -> IO ()))
    -> FunPtr (Ptr GLfloat -> Ptr GLfloat -> IO ())
    forall a b. (a -> b) -> a -> b
    $ String -> IO (FunPtr (Ptr GLfloat -> Ptr GLfloat -> IO ()))
    forall a. String -> IO (FunPtr a)
    getCommand String
    "glTexCoord4fVertex4fvSUN"

    -- glTexCoord4fv ---------------------------------------------------------------

    -- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glTexCoord.xml OpenGL 2.x>.
    glTexCoord4fv
      :: MonadIO m
      => Ptr GLfloat -- ^ @v@ pointing to @4@ elements of type @CoordF@.
      -> m ()
    glTexCoord4fv :: forall (m :: * -> *). MonadIO m => Ptr GLfloat -> m ()
    glTexCoord4fv Ptr GLfloat
    v1 = IO () -> m ()
    forall a. IO a -> m a
    forall (m :: * -> *) a. MonadIO m => IO a -> m a
    liftIO (IO () -> m ()) -> IO () -> m ()
    forall a b. (a -> b) -> a -> b
    $ FunPtr (Ptr GLfloat -> IO ()) -> Ptr GLfloat -> IO ()
    dyn44 FunPtr (Ptr GLfloat -> IO ())
    ptr_glTexCoord4fv Ptr GLfloat
    v1

    {-# NOINLINE ptr_glTexCoord4fv #-}
    ptr_glTexCoord4fv :: FunPtr (Ptr GLfloat -> IO ())
    ptr_glTexCoord4fv :: FunPtr (Ptr GLfloat -> IO ())
    ptr_glTexCoord4fv = IO (FunPtr (Ptr GLfloat -> IO ())) -> FunPtr (Ptr GLfloat -> IO ())
    forall a. IO a -> a
    unsafePerformIO (IO (FunPtr (Ptr GLfloat -> IO ()))
     -> FunPtr (Ptr GLfloat -> IO ()))
    -> IO (FunPtr (Ptr GLfloat -> IO ()))
    -> FunPtr (Ptr GLfloat -> IO ())
    forall a b. (a -> b) -> a -> b
    $ String -> IO (FunPtr (Ptr GLfloat -> IO ()))
    forall a. String -> IO (FunPtr a)
    getCommand String
    "glTexCoord4fv"

    -- glTexCoord4hNV --------------------------------------------------------------

    -- | The vector equivalent of this command is 'glTexCoord4hvNV'.
    glTexCoord4hNV
      :: MonadIO m
      => GLhalfNV -- ^ @s@ of type @Half16NV@.
      -> GLhalfNV -- ^ @t@ of type @Half16NV@.
      -> GLhalfNV -- ^ @r@ of type @Half16NV@.
      -> GLhalfNV -- ^ @q@ of type @Half16NV@.
      -> m ()
    glTexCoord4hNV :: forall (m :: * -> *).
    MonadIO m =>
    GLhalfNV -> GLhalfNV -> GLhalfNV -> GLhalfNV -> m ()
    glTexCoord4hNV GLhalfNV
    v1 GLhalfNV
    v2 GLhalfNV
    v3 GLhalfNV
    v4 = IO () -> m ()
    forall a. IO a -> m a
    forall (m :: * -> *) a. MonadIO m => IO a -> m a
    liftIO (IO () -> m ()) -> IO () -> m ()
    forall a b. (a -> b) -> a -> b
    $ FunPtr (GLhalfNV -> GLhalfNV -> GLhalfNV -> GLhalfNV -> IO ())
    -> GLhalfNV -> GLhalfNV -> GLhalfNV -> GLhalfNV -> IO ()
    dyn119 FunPtr (GLhalfNV -> GLhalfNV -> GLhalfNV -> GLhalfNV -> IO ())
    ptr_glTexCoord4hNV GLhalfNV
    v1 GLhalfNV
    v2 GLhalfNV
    v3 GLhalfNV
    v4

    {-# NOINLINE ptr_glTexCoord4hNV #-}
    ptr_glTexCoord4hNV :: FunPtr (GLhalfNV -> GLhalfNV -> GLhalfNV -> GLhalfNV -> IO ())
    ptr_glTexCoord4hNV :: FunPtr (GLhalfNV -> GLhalfNV -> GLhalfNV -> GLhalfNV -> IO ())
    ptr_glTexCoord4hNV = IO (FunPtr (GLhalfNV -> GLhalfNV -> GLhalfNV -> GLhalfNV -> IO ()))
    -> FunPtr (GLhalfNV -> GLhalfNV -> GLhalfNV -> GLhalfNV -> IO ())
    forall a. IO a -> a
    unsafePerformIO (IO
       (FunPtr (GLhalfNV -> GLhalfNV -> GLhalfNV -> GLhalfNV -> IO ()))
     -> FunPtr (GLhalfNV -> GLhalfNV -> GLhalfNV -> GLhalfNV -> IO ()))
    -> IO
         (FunPtr (GLhalfNV -> GLhalfNV -> GLhalfNV -> GLhalfNV -> IO ()))
    -> FunPtr (GLhalfNV -> GLhalfNV -> GLhalfNV -> GLhalfNV -> IO ())
    forall a b. (a -> b) -> a -> b
    $ String
    -> IO
         (FunPtr (GLhalfNV -> GLhalfNV -> GLhalfNV -> GLhalfNV -> IO ()))
    forall a. String -> IO (FunPtr a)
    getCommand String
    "glTexCoord4hNV"

    -- glTexCoord4hvNV -------------------------------------------------------------

    glTexCoord4hvNV
      :: MonadIO m
      => Ptr GLhalfNV -- ^ @v@ pointing to @4@ elements of type @Half16NV@.
      -> m ()
    glTexCoord4hvNV :: forall (m :: * -> *). MonadIO m => Ptr GLhalfNV -> m ()
    glTexCoord4hvNV Ptr GLhalfNV
    v1 = IO () -> m ()
    forall a. IO a -> m a
    forall (m :: * -> *) a. MonadIO m => IO a -> m a
    liftIO (IO () -> m ()) -> IO () -> m ()
    forall a b. (a -> b) -> a -> b
    $ FunPtr (Ptr GLhalfNV -> IO ()) -> Ptr GLhalfNV -> IO ()
    dyn106 FunPtr (Ptr GLhalfNV -> IO ())
    ptr_glTexCoord4hvNV Ptr GLhalfNV
    v1

    {-# NOINLINE ptr_glTexCoord4hvNV #-}
    ptr_glTexCoord4hvNV :: FunPtr (Ptr GLhalfNV -> IO ())
    ptr_glTexCoord4hvNV :: FunPtr (Ptr GLhalfNV -> IO ())
    ptr_glTexCoord4hvNV = IO (FunPtr (Ptr GLhalfNV -> IO ()))
    -> FunPtr (Ptr GLhalfNV -> IO ())
    forall a. IO a -> a
    unsafePerformIO (IO (FunPtr (Ptr GLhalfNV -> IO ()))
     -> FunPtr (Ptr GLhalfNV -> IO ()))
    -> IO (FunPtr (Ptr GLhalfNV -> IO ()))
    -> FunPtr (Ptr GLhalfNV -> IO ())
    forall a b. (a -> b) -> a -> b
    $ String -> IO (FunPtr (Ptr GLhalfNV -> IO ()))
    forall a. String -> IO (FunPtr a)
    getCommand String
    "glTexCoord4hvNV"

    -- glTexCoord4i ----------------------------------------------------------------

    -- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glTexCoord.xml OpenGL 2.x>. The vector equivalent of this command is 'glTexCoord4iv'.
    glTexCoord4i
      :: MonadIO m
      => GLint -- ^ @s@ of type @CoordI@.
      -> GLint -- ^ @t@ of type @CoordI@.
      -> GLint -- ^ @r@ of type @CoordI@.
      -> GLint -- ^ @q@ of type @CoordI@.
      -> m ()
    glTexCoord4i :: forall (m :: * -> *).
    MonadIO m =>
    GLint -> GLint -> GLint -> GLint -> m ()
    glTexCoord4i GLint
    v1 GLint
    v2 GLint
    v3 GLint
    v4 = IO () -> m ()
    forall a. IO a -> m a
    forall (m :: * -> *) a. MonadIO m => IO a -> m a
    liftIO (IO () -> m ()) -> IO () -> m ()
    forall a b. (a -> b) -> a -> b
    $ FunPtr (GLint -> GLint -> GLint -> GLint -> IO ())
    -> GLint -> GLint -> GLint -> GLint -> IO ()
    dyn82 FunPtr (GLint -> GLint -> GLint -> GLint -> IO ())
    ptr_glTexCoord4i GLint
    v1 GLint
    v2 GLint
    v3 GLint
    v4

    {-# NOINLINE ptr_glTexCoord4i #-}
    ptr_glTexCoord4i :: FunPtr (GLint -> GLint -> GLint -> GLint -> IO ())
    ptr_glTexCoord4i :: FunPtr (GLint -> GLint -> GLint -> GLint -> IO ())
    ptr_glTexCoord4i = IO (FunPtr (GLint -> GLint -> GLint -> GLint -> IO ()))
    -> FunPtr (GLint -> GLint -> GLint -> GLint -> IO ())
    forall a. IO a -> a
    unsafePerformIO (IO (FunPtr (GLint -> GLint -> GLint -> GLint -> IO ()))
     -> FunPtr (GLint -> GLint -> GLint -> GLint -> IO ()))
    -> IO (FunPtr (GLint -> GLint -> GLint -> GLint -> IO ()))
    -> FunPtr (GLint -> GLint -> GLint -> GLint -> IO ())
    forall a b. (a -> b) -> a -> b
    $ String -> IO (FunPtr (GLint -> GLint -> GLint -> GLint -> IO ()))
    forall a. String -> IO (FunPtr a)
    getCommand String
    "glTexCoord4i"

    -- glTexCoord4iv ---------------------------------------------------------------

    -- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glTexCoord.xml OpenGL 2.x>.
    glTexCoord4iv
      :: MonadIO m
      => Ptr GLint -- ^ @v@ pointing to @4@ elements of type @CoordI@.
      -> m ()
    glTexCoord4iv :: forall (m :: * -> *). MonadIO m => Ptr GLint -> m ()
    glTexCoord4iv Ptr GLint
    v1 = IO () -> m ()
    forall a. IO a -> m a
    forall (m :: * -> *) a. MonadIO m => IO a -> m a
    liftIO (IO () -> m ()) -> IO () -> m ()
    forall a b. (a -> b) -> a -> b
    $ FunPtr (Ptr GLint -> IO ()) -> Ptr GLint -> IO ()
    dyn46 FunPtr (Ptr GLint -> IO ())
    ptr_glTexCoord4iv Ptr GLint
    v1

    {-# NOINLINE ptr_glTexCoord4iv #-}
    ptr_glTexCoord4iv :: FunPtr (Ptr GLint -> IO ())
    ptr_glTexCoord4iv :: FunPtr (Ptr GLint -> IO ())
    ptr_glTexCoord4iv = IO (FunPtr (Ptr GLint -> IO ())) -> FunPtr (Ptr GLint -> IO ())
    forall a. IO a -> a
    unsafePerformIO (IO (FunPtr (Ptr GLint -> IO ())) -> FunPtr (Ptr GLint -> IO ()))
    -> IO (FunPtr (Ptr GLint -> IO ())) -> FunPtr (Ptr GLint -> IO ())
    forall a b. (a -> b) -> a -> b
    $ String -> IO (FunPtr (Ptr GLint -> IO ()))
    forall a. String -> IO (FunPtr a)
    getCommand String
    "glTexCoord4iv"

    -- glTexCoord4s ----------------------------------------------------------------

    -- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glTexCoord.xml OpenGL 2.x>. The vector equivalent of this command is 'glTexCoord4sv'.
    glTexCoord4s
      :: MonadIO m
      => GLshort -- ^ @s@ of type @CoordS@.
      -> GLshort -- ^ @t@ of type @CoordS@.
      -> GLshort -- ^ @r@ of type @CoordS@.
      -> GLshort -- ^ @q@ of type @CoordS@.
      -> m ()
    glTexCoord4s :: forall (m :: * -> *).
    MonadIO m =>
    GLshort -> GLshort -> GLshort -> GLshort -> m ()
    glTexCoord4s GLshort
    v1 GLshort
    v2 GLshort
    v3 GLshort
    v4 = IO () -> m ()
    forall a. IO a -> m a
    forall (m :: * -> *) a. MonadIO m => IO a -> m a
    liftIO (IO () -> m ()) -> IO () -> m ()
    forall a b. (a -> b) -> a -> b
    $ FunPtr (GLshort -> GLshort -> GLshort -> GLshort -> IO ())
    -> GLshort -> GLshort -> GLshort -> GLshort -> IO ()
    dyn120 FunPtr (GLshort -> GLshort -> GLshort -> GLshort -> IO ())
    ptr_glTexCoord4s GLshort
    v1 GLshort
    v2 GLshort
    v3 GLshort
    v4

    {-# NOINLINE ptr_glTexCoord4s #-}
    ptr_glTexCoord4s :: FunPtr (GLshort -> GLshort -> GLshort -> GLshort -> IO ())
    ptr_glTexCoord4s :: FunPtr (GLshort -> GLshort -> GLshort -> GLshort -> IO ())
    ptr_glTexCoord4s = IO (FunPtr (GLshort -> GLshort -> GLshort -> GLshort -> IO ()))
    -> FunPtr (GLshort -> GLshort -> GLshort -> GLshort -> IO ())
    forall a. IO a -> a
    unsafePerformIO (IO (FunPtr (GLshort -> GLshort -> GLshort -> GLshort -> IO ()))
     -> FunPtr (GLshort -> GLshort -> GLshort -> GLshort -> IO ()))
    -> IO (FunPtr (GLshort -> GLshort -> GLshort -> GLshort -> IO ()))
    -> FunPtr (GLshort -> GLshort -> GLshort -> GLshort -> IO ())
    forall a b. (a -> b) -> a -> b
    $ String
    -> IO (FunPtr (GLshort -> GLshort -> GLshort -> GLshort -> IO ()))
    forall a. String -> IO (FunPtr a)
    getCommand String
    "glTexCoord4s"

    -- glTexCoord4sv ---------------------------------------------------------------

    -- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glTexCoord.xml OpenGL 2.x>.
    glTexCoord4sv
      :: MonadIO m
      => Ptr GLshort -- ^ @v@ pointing to @4@ elements of type @CoordS@.
      -> m ()
    glTexCoord4sv :: forall (m :: * -> *). MonadIO m => Ptr GLshort -> m ()
    glTexCoord4sv Ptr GLshort
    v1 = IO () -> m ()
    forall a. IO a -> m a
    forall (m :: * -> *) a. MonadIO m => IO a -> m a
    liftIO (IO () -> m ()) -> IO () -> m ()
    forall a b. (a -> b) -> a -> b
    $ FunPtr (Ptr GLshort -> IO ()) -> Ptr GLshort -> IO ()
    dyn48 FunPtr (Ptr GLshort -> IO ())
    ptr_glTexCoord4sv Ptr GLshort
    v1

    {-# NOINLINE ptr_glTexCoord4sv #-}
    ptr_glTexCoord4sv :: FunPtr (Ptr GLshort -> IO ())
    ptr_glTexCoord4sv :: FunPtr (Ptr GLshort -> IO ())
    ptr_glTexCoord4sv = IO (FunPtr (Ptr GLshort -> IO ())) -> FunPtr (Ptr GLshort -> IO ())
    forall a. IO a -> a
    unsafePerformIO (IO (FunPtr (Ptr GLshort -> IO ()))
     -> FunPtr (Ptr GLshort -> IO ()))
    -> IO (FunPtr (Ptr GLshort -> IO ()))
    -> FunPtr (Ptr GLshort -> IO ())
    forall a b. (a -> b) -> a -> b
    $ String -> IO (FunPtr (Ptr GLshort -> IO ()))
    forall a. String -> IO (FunPtr a)
    getCommand String
    "glTexCoord4sv"

    -- glTexCoord4xOES -------------------------------------------------------------

    glTexCoord4xOES
      :: MonadIO m
      => GLfixed -- ^ @s@.
      -> GLfixed -- ^ @t@.
      -> GLfixed -- ^ @r@.
      -> GLfixed -- ^ @q@.
      -> m ()
    glTexCoord4xOES :: forall (m :: * -> *).
    MonadIO m =>
    GLfixed -> GLfixed -> GLfixed -> GLfixed -> m ()
    glTexCoord4xOES GLfixed
    v1 GLfixed
    v2 GLfixed
    v3 GLfixed
    v4 = IO () -> m ()
    forall a. IO a -> m a
    forall (m :: * -> *) a. MonadIO m => IO a -> m a
    liftIO (IO () -> m ()) -> IO () -> m ()
    forall a b. (a -> b) -> a -> b
    $ FunPtr (GLfixed -> GLfixed -> GLfixed -> GLfixed -> IO ())
    -> GLfixed -> GLfixed -> GLfixed -> GLfixed -> IO ()
    dyn53 FunPtr (GLfixed -> GLfixed -> GLfixed -> GLfixed -> IO ())
    ptr_glTexCoord4xOES GLfixed
    v1 GLfixed
    v2 GLfixed
    v3 GLfixed
    v4

    {-# NOINLINE ptr_glTexCoord4xOES #-}
    ptr_glTexCoord4xOES :: FunPtr (GLfixed -> GLfixed -> GLfixed -> GLfixed -> IO ())
    ptr_glTexCoord4xOES :: FunPtr (GLfixed -> GLfixed -> GLfixed -> GLfixed -> IO ())
    ptr_glTexCoord4xOES = IO (FunPtr (GLfixed -> GLfixed -> GLfixed -> GLfixed -> IO ()))
    -> FunPtr (GLfixed -> GLfixed -> GLfixed -> GLfixed -> IO ())
    forall a. IO a -> a
    unsafePerformIO (IO (FunPtr (GLfixed -> GLfixed -> GLfixed -> GLfixed -> IO ()))
     -> FunPtr (GLfixed -> GLfixed -> GLfixed -> GLfixed -> IO ()))
    -> IO (FunPtr (GLfixed -> GLfixed -> GLfixed -> GLfixed -> IO ()))
    -> FunPtr (GLfixed -> GLfixed -> GLfixed -> GLfixed -> IO ())
    forall a b. (a -> b) -> a -> b
    $ String
    -> IO (FunPtr (GLfixed -> GLfixed -> GLfixed -> GLfixed -> IO ()))
    forall a. String -> IO (FunPtr a)
    getCommand String
    "glTexCoord4xOES"

    -- glTexCoord4xvOES ------------------------------------------------------------

    glTexCoord4xvOES
      :: MonadIO m
      => Ptr GLfixed -- ^ @coords@ pointing to @4@ elements of type @GLfixed@.
      -> m ()
    glTexCoord4xvOES :: forall (m :: * -> *). MonadIO m => Ptr GLfixed -> m ()
    glTexCoord4xvOES Ptr GLfixed
    v1 = IO () -> m ()
    forall a. IO a -> m a
    forall (m :: * -> *) a. MonadIO m => IO a -> m a
    liftIO (IO () -> m ()) -> IO () -> m ()
    forall a b. (a -> b) -> a -> b
    $ FunPtr (Ptr GLfixed -> IO ()) -> Ptr GLfixed -> IO ()
    dyn114 FunPtr (Ptr GLfixed -> IO ())
    ptr_glTexCoord4xvOES Ptr GLfixed
    v1

    {-# NOINLINE ptr_glTexCoord4xvOES #-}
    ptr_glTexCoord4xvOES :: FunPtr (Ptr GLfixed -> IO ())
    ptr_glTexCoord4xvOES :: FunPtr (Ptr GLfixed -> IO ())
    ptr_glTexCoord4xvOES = IO (FunPtr (Ptr GLfixed -> IO ())) -> FunPtr (Ptr GLfixed -> IO ())
    forall a. IO a -> a
    unsafePerformIO (IO (FunPtr (Ptr GLfixed -> IO ()))
     -> FunPtr (Ptr GLfixed -> IO ()))
    -> IO (FunPtr (Ptr GLfixed -> IO ()))
    -> FunPtr (Ptr GLfixed -> IO ())
    forall a b. (a -> b) -> a -> b
    $ String -> IO (FunPtr (Ptr GLfixed -> IO ()))
    forall a. String -> IO (FunPtr a)
    getCommand String
    "glTexCoord4xvOES"

    -- glTexCoordFormatNV ----------------------------------------------------------

    glTexCoordFormatNV
      :: MonadIO m
      => GLint -- ^ @size@.
      -> GLenum -- ^ @type@.
      -> GLsizei -- ^ @stride@.
      -> m ()
    glTexCoordFormatNV :: forall (m :: * -> *). MonadIO m => GLint -> GLenum -> GLint -> m ()
    glTexCoordFormatNV GLint
    v1 GLenum
    v2 GLint
    v3 = IO () -> m ()
    forall a. IO a -> m a
    forall (m :: * -> *) a. MonadIO m => IO a -> m a
    liftIO (IO () -> m ()) -> IO () -> m ()
    forall a b. (a -> b) -> a -> b
    $ FunPtr (GLint -> GLenum -> GLint -> IO ())
    -> GLint -> GLenum -> GLint -> IO ()
    dyn126 FunPtr (GLint -> GLenum -> GLint -> IO ())
    ptr_glTexCoordFormatNV GLint
    v1 GLenum
    v2 GLint
    v3

    {-# NOINLINE ptr_glTexCoordFormatNV #-}
    ptr_glTexCoordFormatNV :: FunPtr (GLint -> GLenum -> GLsizei -> IO ())
    ptr_glTexCoordFormatNV :: FunPtr (GLint -> GLenum -> GLint -> IO ())
    ptr_glTexCoordFormatNV = IO (FunPtr (GLint -> GLenum -> GLint -> IO ()))
    -> FunPtr (GLint -> GLenum -> GLint -> IO ())
    forall a. IO a -> a
    unsafePerformIO (IO (FunPtr (GLint -> GLenum -> GLint -> IO ()))
     -> FunPtr (GLint -> GLenum -> GLint -> IO ()))
    -> IO (FunPtr (GLint -> GLenum -> GLint -> IO ()))
    -> FunPtr (GLint -> GLenum -> GLint -> IO ())
    forall a b. (a -> b) -> a -> b
    $ String -> IO (FunPtr (GLint -> GLenum -> GLint -> IO ()))
    forall a. String -> IO (FunPtr a)
    getCommand String
    "glTexCoordFormatNV"

    -- glTexCoordP1ui --------------------------------------------------------------

    glTexCoordP1ui
      :: MonadIO m
      => GLenum -- ^ @type@ of type [TexCoordPointerType](Graphics-GL-Groups.html#TexCoordPointerType).
      -> GLuint -- ^ @coords@.
      -> m ()
    glTexCoordP1ui :: forall (m :: * -> *). MonadIO m => GLenum -> GLenum -> m ()
    glTexCoordP1ui GLenum
    v1 GLenum
    v2 = IO () -> m ()
    forall a. IO a -> m a
    forall (m :: * -> *) a. MonadIO m => IO a -> m a
    liftIO (IO () -> m ()) -> IO () -> m ()
    forall a b. (a -> b) -> a -> b
    $ FunPtr (GLenum -> GLenum -> IO ()) -> GLenum -> GLenum -> IO ()
    dyn19 FunPtr (GLenum -> GLenum -> IO ())
    ptr_glTexCoordP1ui GLenum
    v1 GLenum
    v2

    {-# NOINLINE ptr_glTexCoordP1ui #-}
    ptr_glTexCoordP1ui :: FunPtr (GLenum -> GLuint -> IO ())
    ptr_glTexCoordP1ui :: FunPtr (GLenum -> GLenum -> IO ())
    ptr_glTexCoordP1ui = IO (FunPtr (GLenum -> GLenum -> IO ()))
    -> FunPtr (GLenum -> GLenum -> IO ())
    forall a. IO a -> a
    unsafePerformIO (IO (FunPtr (GLenum -> GLenum -> IO ()))
     -> FunPtr (GLenum -> GLenum -> IO ()))
    -> IO (FunPtr (GLenum -> GLenum -> IO ()))
    -> FunPtr (GLenum -> GLenum -> IO ())
    forall a b. (a -> b) -> a -> b
    $ String -> IO (FunPtr (GLenum -> GLenum -> IO ()))
    forall a. String -> IO (FunPtr a)
    getCommand String
    "glTexCoordP1ui"

    -- glTexCoordP1uiv -------------------------------------------------------------

    glTexCoordP1uiv
      :: MonadIO m
      => GLenum -- ^ @type@ of type [TexCoordPointerType](Graphics-GL-Groups.html#TexCoordPointerType).
      -> Ptr GLuint -- ^ @coords@ pointing to @1@ element of type @GLuint@.
      -> m ()
    glTexCoordP1uiv :: forall (m :: * -> *). MonadIO m => GLenum -> Ptr GLenum -> m ()
    glTexCoordP1uiv GLenum
    v1 Ptr GLenum
    v2 = IO () -> m ()
    forall a. IO a -> m a
    forall (m :: * -> *) a. MonadIO m => IO a -> m a
    liftIO (IO () -> m ()) -> IO () -> m ()
    forall a b. (a -> b) -> a -> b
    $ FunPtr (GLenum -> Ptr GLenum -> IO ())
    -> GLenum -> Ptr GLenum -> IO ()
    dyn132 FunPtr (GLenum -> Ptr GLenum -> IO ())
    ptr_glTexCoordP1uiv GLenum
    v1 Ptr GLenum
    v2

    {-# NOINLINE ptr_glTexCoordP1uiv #-}
    ptr_glTexCoordP1uiv :: FunPtr (GLenum -> Ptr GLuint -> IO ())
    ptr_glTexCoordP1uiv :: FunPtr (GLenum -> Ptr GLenum -> IO ())
    ptr_glTexCoordP1uiv = IO (FunPtr (GLenum -> Ptr GLenum -> IO ()))
    -> FunPtr (GLenum -> Ptr GLenum -> IO ())
    forall a. IO a -> a
    unsafePerformIO (IO (FunPtr (GLenum -> Ptr GLenum -> IO ()))
     -> FunPtr (GLenum -> Ptr GLenum -> IO ()))
    -> IO (FunPtr (GLenum -> Ptr GLenum -> IO ()))
    -> FunPtr (GLenum -> Ptr GLenum -> IO ())
    forall a b. (a -> b) -> a -> b
    $ String -> IO (FunPtr (GLenum -> Ptr GLenum -> IO ()))
    forall a. String -> IO (FunPtr a)
    getCommand String
    "glTexCoordP1uiv"

    -- glTexCoordP2ui --------------------------------------------------------------

    glTexCoordP2ui
      :: MonadIO m
      => GLenum -- ^ @type@ of type [TexCoordPointerType](Graphics-GL-Groups.html#TexCoordPointerType).
      -> GLuint -- ^ @coords@.
      -> m ()
    glTexCoordP2ui :: forall (m :: * -> *). MonadIO m => GLenum -> GLenum -> m ()
    glTexCoordP2ui GLenum
    v1 GLenum
    v2 = IO () -> m ()
    forall a. IO a -> m a
    forall (m :: * -> *) a. MonadIO m => IO a -> m a
    liftIO (IO () -> m ()) -> IO () -> m ()
    forall a b. (a -> b) -> a -> b
    $ FunPtr (GLenum -> GLenum -> IO ()) -> GLenum -> GLenum -> IO ()
    dyn19 FunPtr (GLenum -> GLenum -> IO ())
    ptr_glTexCoordP2ui GLenum
    v1 GLenum
    v2

    {-# NOINLINE ptr_glTexCoordP2ui #-}
    ptr_glTexCoordP2ui :: FunPtr (GLenum -> GLuint -> IO ())
    ptr_glTexCoordP2ui :: FunPtr (GLenum -> GLenum -> IO ())
    ptr_glTexCoordP2ui = IO (FunPtr (GLenum -> GLenum -> IO ()))
    -> FunPtr (GLenum -> GLenum -> IO ())
    forall a. IO a -> a
    unsafePerformIO (IO (FunPtr (GLenum -> GLenum -> IO ()))
     -> FunPtr (GLenum -> GLenum -> IO ()))
    -> IO (FunPtr (GLenum -> GLenum -> IO ()))
    -> FunPtr (GLenum -> GLenum -> IO ())
    forall a b. (a -> b) -> a -> b
    $ String -> IO (FunPtr (GLenum -> GLenum -> IO ()))
    forall a. String -> IO (FunPtr a)
    getCommand String
    "glTexCoordP2ui"

    -- glTexCoordP2uiv -------------------------------------------------------------

    glTexCoordP2uiv
      :: MonadIO m
      => GLenum -- ^ @type@ of type [TexCoordPointerType](Graphics-GL-Groups.html#TexCoordPointerType).
      -> Ptr GLuint -- ^ @coords@ pointing to @1@ element of type @GLuint@.
      -> m ()
    glTexCoordP2uiv :: forall (m :: * -> *). MonadIO m => GLenum -> Ptr GLenum -> m ()
    glTexCoordP2uiv GLenum
    v1 Ptr GLenum
    v2 = IO () -> m ()
    forall a. IO a -> m a
    forall (m :: * -> *) a. MonadIO m => IO a -> m a
    liftIO (IO () -> m ()) -> IO () -> m ()
    forall a b. (a -> b) -> a -> b
    $ FunPtr (GLenum -> Ptr GLenum -> IO ())
    -> GLenum -> Ptr GLenum -> IO ()
    dyn132 FunPtr (GLenum -> Ptr GLenum -> IO ())
    ptr_glTexCoordP2uiv GLenum
    v1 Ptr GLenum
    v2

    {-# NOINLINE ptr_glTexCoordP2uiv #-}
    ptr_glTexCoordP2uiv :: FunPtr (GLenum -> Ptr GLuint -> IO ())
    ptr_glTexCoordP2uiv :: FunPtr (GLenum -> Ptr GLenum -> IO ())
    ptr_glTexCoordP2uiv = IO (FunPtr (GLenum -> Ptr GLenum -> IO ()))
    -> FunPtr (GLenum -> Ptr GLenum -> IO ())
    forall a. IO a -> a
    unsafePerformIO (IO (FunPtr (GLenum -> Ptr GLenum -> IO ()))
     -> FunPtr (GLenum -> Ptr GLenum -> IO ()))
    -> IO (FunPtr (GLenum -> Ptr GLenum -> IO ()))
    -> FunPtr (GLenum -> Ptr GLenum -> IO ())
    forall a b. (a -> b) -> a -> b
    $ String -> IO (FunPtr (GLenum -> Ptr GLenum -> IO ()))
    forall a. String -> IO (FunPtr a)
    getCommand String
    "glTexCoordP2uiv"

    -- glTexCoordP3ui --------------------------------------------------------------

    glTexCoordP3ui
      :: MonadIO m
      => GLenum -- ^ @type@ of type [TexCoordPointerType](Graphics-GL-Groups.html#TexCoordPointerType).
      -> GLuint -- ^ @coords@.
      -> m ()
    glTexCoordP3ui :: forall (m :: * -> *). MonadIO m => GLenum -> GLenum -> m ()
    glTexCoordP3ui GLenum
    v1 GLenum
    v2 = IO () -> m ()
    forall a. IO a -> m a
    forall (m :: * -> *) a. MonadIO m => IO a -> m a
    liftIO (IO () -> m ()) -> IO () -> m ()
    forall a b. (a -> b) -> a -> b
    $ FunPtr (GLenum -> GLenum -> IO ()) -> GLenum -> GLenum -> IO ()
    dyn19 FunPtr (GLenum -> GLenum -> IO ())
    ptr_glTexCoordP3ui GLenum
    v1 GLenum
    v2

    {-# NOINLINE ptr_glTexCoordP3ui #-}
    ptr_glTexCoordP3ui :: FunPtr (GLenum -> GLuint -> IO ())
    ptr_glTexCoordP3ui :: FunPtr (GLenum -> GLenum -> IO ())
    ptr_glTexCoordP3ui = IO (FunPtr (GLenum -> GLenum -> IO ()))
    -> FunPtr (GLenum -> GLenum -> IO ())
    forall a. IO a -> a
    unsafePerformIO (IO (FunPtr (GLenum -> GLenum -> IO ()))
     -> FunPtr (GLenum -> GLenum -> IO ()))
    -> IO (FunPtr (GLenum -> GLenum -> IO ()))
    -> FunPtr (GLenum -> GLenum -> IO ())
    forall a b. (a -> b) -> a -> b
    $ String -> IO (FunPtr (GLenum -> GLenum -> IO ()))
    forall a. String -> IO (FunPtr a)
    getCommand String
    "glTexCoordP3ui"

    -- glTexCoordP3uiv -------------------------------------------------------------

    glTexCoordP3uiv
      :: MonadIO m
      => GLenum -- ^ @type@ of type [TexCoordPointerType](Graphics-GL-Groups.html#TexCoordPointerType).
      -> Ptr GLuint -- ^ @coords@ pointing to @1@ element of type @GLuint@.
      -> m ()
    glTexCoordP3uiv :: forall (m :: * -> *). MonadIO m => GLenum -> Ptr GLenum -> m ()
    glTexCoordP3uiv GLenum
    v1 Ptr GLenum
    v2 = IO () -> m ()
    forall a. IO a -> m a
    forall (m :: * -> *) a. MonadIO m => IO a -> m a
    liftIO (IO () -> m ()) -> IO () -> m ()
    forall a b. (a -> b) -> a -> b
    $ FunPtr (GLenum -> Ptr GLenum -> IO ())
    -> GLenum -> Ptr GLenum -> IO ()
    dyn132 FunPtr (GLenum -> Ptr GLenum -> IO ())
    ptr_glTexCoordP3uiv GLenum
    v1 Ptr GLenum
    v2

    {-# NOINLINE ptr_glTexCoordP3uiv #-}
    ptr_glTexCoordP3uiv :: FunPtr (GLenum -> Ptr GLuint -> IO ())
    ptr_glTexCoordP3uiv :: FunPtr (GLenum -> Ptr GLenum -> IO ())
    ptr_glTexCoordP3uiv = IO (FunPtr (GLenum -> Ptr GLenum -> IO ()))
    -> FunPtr (GLenum -> Ptr GLenum -> IO ())
    forall a. IO a -> a
    unsafePerformIO (IO (FunPtr (GLenum -> Ptr GLenum -> IO ()))
     -> FunPtr (GLenum -> Ptr GLenum -> IO ()))
    -> IO (FunPtr (GLenum -> Ptr GLenum -> IO ()))
    -> FunPtr (GLenum -> Ptr GLenum -> IO ())
    forall a b. (a -> b) -> a -> b
    $ String -> IO (FunPtr (GLenum -> Ptr GLenum -> IO ()))
    forall a. String -> IO (FunPtr a)
    getCommand String
    "glTexCoordP3uiv"

    -- glTexCoordP4ui --------------------------------------------------------------

    glTexCoordP4ui
      :: MonadIO m
      => GLenum -- ^ @type@ of type [TexCoordPointerType](Graphics-GL-Groups.html#TexCoordPointerType).
      -> GLuint -- ^ @coords@.
      -> m ()
    glTexCoordP4ui :: forall (m :: * -> *). MonadIO m => GLenum -> GLenum -> m ()
    glTexCoordP4ui GLenum
    v1 GLenum
    v2 = IO () -> m ()
    forall a. IO a -> m a
    forall (m :: * -> *) a. MonadIO m => IO a -> m a
    liftIO (IO () -> m ()) -> IO () -> m ()
    forall a b. (a -> b) -> a -> b
    $ FunPtr (GLenum -> GLenum -> IO ()) -> GLenum -> GLenum -> IO ()
    dyn19 FunPtr (GLenum -> GLenum -> IO ())
    ptr_glTexCoordP4ui GLenum
    v1 GLenum
    v2

    {-# NOINLINE ptr_glTexCoordP4ui #-}
    ptr_glTexCoordP4ui :: FunPtr (GLenum -> GLuint -> IO ())
    ptr_glTexCoordP4ui :: FunPtr (GLenum -> GLenum -> IO ())
    ptr_glTexCoordP4ui = IO (FunPtr (GLenum -> GLenum -> IO ()))
    -> FunPtr (GLenum -> GLenum -> IO ())
    forall a. IO a -> a
    unsafePerformIO (IO (FunPtr (GLenum -> GLenum -> IO ()))
     -> FunPtr (GLenum -> GLenum -> IO ()))
    -> IO (FunPtr (GLenum -> GLenum -> IO ()))
    -> FunPtr (GLenum -> GLenum -> IO ())
    forall a b. (a -> b) -> a -> b
    $ String -> IO (FunPtr (GLenum -> GLenum -> IO ()))
    forall a. String -> IO (FunPtr a)
    getCommand String
    "glTexCoordP4ui"

    -- glTexCoordP4uiv -------------------------------------------------------------

    glTexCoordP4uiv
      :: MonadIO m
      => GLenum -- ^ @type@ of type [TexCoordPointerType](Graphics-GL-Groups.html#TexCoordPointerType).
      -> Ptr GLuint -- ^ @coords@ pointing to @1@ element of type @GLuint@.
      -> m ()
    glTexCoordP4uiv :: forall (m :: * -> *). MonadIO m => GLenum -> Ptr GLenum -> m ()
    glTexCoordP4uiv GLenum
    v1 Ptr GLenum
    v2 = IO () -> m ()
    forall a. IO a -> m a
    forall (m :: * -> *) a. MonadIO m => IO a -> m a
    liftIO (IO () -> m ()) -> IO () -> m ()
    forall a b. (a -> b) -> a -> b
    $ FunPtr (GLenum -> Ptr GLenum -> IO ())
    -> GLenum -> Ptr GLenum -> IO ()
    dyn132 FunPtr (GLenum -> Ptr GLenum -> IO ())
    ptr_glTexCoordP4uiv GLenum
    v1 Ptr GLenum
    v2

    {-# NOINLINE ptr_glTexCoordP4uiv #-}
    ptr_glTexCoordP4uiv :: FunPtr (GLenum -> Ptr GLuint -> IO ())
    ptr_glTexCoordP4uiv :: FunPtr (GLenum -> Ptr GLenum -> IO ())
    ptr_glTexCoordP4uiv = IO (FunPtr (GLenum -> Ptr GLenum -> IO ()))
    -> FunPtr (GLenum -> Ptr GLenum -> IO ())
    forall a. IO a -> a
    unsafePerformIO (IO (FunPtr (GLenum -> Ptr GLenum -> IO ()))
     -> FunPtr (GLenum -> Ptr GLenum -> IO ()))
    -> IO (FunPtr (GLenum -> Ptr GLenum -> IO ()))
    -> FunPtr (GLenum -> Ptr GLenum -> IO ())
    forall a b. (a -> b) -> a -> b
    $ String -> IO (FunPtr (GLenum -> Ptr GLenum -> IO ()))
    forall a. String -> IO (FunPtr a)
    getCommand String
    "glTexCoordP4uiv"

    -- glTexCoordPointer -----------------------------------------------------------

    -- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glTexCoordPointer.xml OpenGL 2.x>.
    glTexCoordPointer
      :: MonadIO m
      => GLint -- ^ @size@.
      -> GLenum -- ^ @type@ of type [TexCoordPointerType](Graphics-GL-Groups.html#TexCoordPointerType).
      -> GLsizei -- ^ @stride@.
      -> Ptr a -- ^ @pointer@ pointing to @COMPSIZE(size,type,stride)@ elements of type @a@.
      -> m ()
    glTexCoordPointer :: forall (m :: * -> *) a.
    MonadIO m =>
    GLint -> GLenum -> GLint -> Ptr a -> m ()
    glTexCoordPointer GLint
    v1 GLenum
    v2 GLint
    v3 Ptr a
    v4 = IO () -> m ()
    forall a. IO a -> m a
    forall (m :: * -> *) a. MonadIO m => IO a -> m a
    liftIO (IO () -> m ()) -> IO () -> m ()
    forall a b. (a -> b) -> a -> b
    $ FunPtr (GLint -> GLenum -> GLint -> Ptr a -> IO ())
    -> GLint -> GLenum -> GLint -> Ptr a -> IO ()
    forall a.
    FunPtr (GLint -> GLenum -> GLint -> Ptr a -> IO ())
    -> GLint -> GLenum -> GLint -> Ptr a -> IO ()
    dyn133 FunPtr (GLint -> GLenum -> GLint -> Ptr a -> IO ())
    forall a. FunPtr (GLint -> GLenum -> GLint -> Ptr a -> IO ())
    ptr_glTexCoordPointer GLint
    v1 GLenum
    v2 GLint
    v3 Ptr a
    v4

    {-# NOINLINE ptr_glTexCoordPointer #-}
    ptr_glTexCoordPointer :: FunPtr (GLint -> GLenum -> GLsizei -> Ptr a -> IO ())
    ptr_glTexCoordPointer :: forall a. FunPtr (GLint -> GLenum -> GLint -> Ptr a -> IO ())
    ptr_glTexCoordPointer = IO (FunPtr (GLint -> GLenum -> GLint -> Ptr a -> IO ()))
    -> FunPtr (GLint -> GLenum -> GLint -> Ptr a -> IO ())
    forall a. IO a -> a
    unsafePerformIO (IO (FunPtr (GLint -> GLenum -> GLint -> Ptr a -> IO ()))
     -> FunPtr (GLint -> GLenum -> GLint -> Ptr a -> IO ()))
    -> IO (FunPtr (GLint -> GLenum -> GLint -> Ptr a -> IO ()))
    -> FunPtr (GLint -> GLenum -> GLint -> Ptr a -> IO ())
    forall a b. (a -> b) -> a -> b
    $ String -> IO (FunPtr (GLint -> GLenum -> GLint -> Ptr a -> IO ()))
    forall a. String -> IO (FunPtr a)
    getCommand String
    "glTexCoordPointer"

    -- glTexCoordPointerEXT --------------------------------------------------------

    glTexCoordPointerEXT
      :: MonadIO m
      => GLint -- ^ @size@.
      -> GLenum -- ^ @type@ of type [TexCoordPointerType](Graphics-GL-Groups.html#TexCoordPointerType).
      -> GLsizei -- ^ @stride@.
      -> GLsizei -- ^ @count@.
      -> Ptr a -- ^ @pointer@ pointing to @COMPSIZE(size,type,stride,count)@ elements of type @a@.
      -> m ()
    glTexCoordPointerEXT :: forall (m :: * -> *) a.
    MonadIO m =>
    GLint -> GLenum -> GLint -> GLint -> Ptr a -> m ()
    glTexCoordPointerEXT GLint
    v1 GLenum
    v2 GLint
    v3 GLint
    v4 Ptr a
    v5 = IO () -> m ()
    forall a. IO a -> m a
    forall (m :: * -> *) a. MonadIO m => IO a -> m a
    liftIO (IO () -> m ()) -> IO () -> m ()
    forall a b. (a -> b) -> a -> b
    $ FunPtr (GLint -> GLenum -> GLint -> GLint -> Ptr a -> IO ())
    -> GLint -> GLenum -> GLint -> GLint -> Ptr a -> IO ()
    forall a.
    FunPtr (GLint -> GLenum -> GLint -> GLint -> Ptr a -> IO ())
    -> GLint -> GLenum -> GLint -> GLint -> Ptr a -> IO ()
    dyn134 FunPtr (GLint -> GLenum -> GLint -> GLint -> Ptr a -> IO ())
    forall a.
    FunPtr (GLint -> GLenum -> GLint -> GLint -> Ptr a -> IO ())
    ptr_glTexCoordPointerEXT GLint
    v1 GLenum
    v2 GLint
    v3 GLint
    v4 Ptr a
    v5

    {-# NOINLINE ptr_glTexCoordPointerEXT #-}
    ptr_glTexCoordPointerEXT :: FunPtr (GLint -> GLenum -> GLsizei -> GLsizei -> Ptr a -> IO ())
    ptr_glTexCoordPointerEXT :: forall a.
    FunPtr (GLint -> GLenum -> GLint -> GLint -> Ptr a -> IO ())
    ptr_glTexCoordPointerEXT = IO (FunPtr (GLint -> GLenum -> GLint -> GLint -> Ptr a -> IO ()))
    -> FunPtr (GLint -> GLenum -> GLint -> GLint -> Ptr a -> IO ())
    forall a. IO a -> a
    unsafePerformIO (IO (FunPtr (GLint -> GLenum -> GLint -> GLint -> Ptr a -> IO ()))
     -> FunPtr (GLint -> GLenum -> GLint -> GLint -> Ptr a -> IO ()))
    -> IO
         (FunPtr (GLint -> GLenum -> GLint -> GLint -> Ptr a -> IO ()))
    -> FunPtr (GLint -> GLenum -> GLint -> GLint -> Ptr a -> IO ())
    forall a b. (a -> b) -> a -> b
    $ String
    -> IO
         (FunPtr (GLint -> GLenum -> GLint -> GLint -> Ptr a -> IO ()))
    forall a. String -> IO (FunPtr a)
    getCommand String
    "glTexCoordPointerEXT"

    -- glTexCoordPointerListIBM ----------------------------------------------------

    glTexCoordPointerListIBM
      :: MonadIO m
      => GLint -- ^ @size@.
      -> GLenum -- ^ @type@ of type [TexCoordPointerType](Graphics-GL-Groups.html#TexCoordPointerType).
      -> GLint -- ^ @stride@.
      -> Ptr (Ptr a) -- ^ @pointer@ pointing to @COMPSIZE(size,type,stride)@ elements of type @Ptr a@.
      -> GLint -- ^ @ptrstride@.
      -> m ()
    glTexCoordPointerListIBM :: forall (m :: * -> *) a.
    MonadIO m =>
    GLint -> GLenum -> GLint -> Ptr (Ptr a) -> GLint -> m ()
    glTexCoordPointerListIBM GLint
    v1 GLenum
    v2 GLint
    v3 Ptr (Ptr a)
    v4 GLint
    v5 = IO () -> m ()
    forall a. IO a -> m a
    forall (m :: * -> *) a. MonadIO m => IO a -> m a
    liftIO (IO () -> m ()) -> IO () -> m ()
    forall a b. (a -> b) -> a -> b
    $ FunPtr (GLint -> GLenum -> GLint -> Ptr (Ptr a) -> GLint -> IO ())
    -> GLint -> GLenum -> GLint -> Ptr (Ptr a) -> GLint -> IO ()
    forall a.
    FunPtr (GLint -> GLenum -> GLint -> Ptr (Ptr a) -> GLint -> IO ())
    -> GLint -> GLenum -> GLint -> Ptr (Ptr a) -> GLint -> IO ()
    dyn135 FunPtr (GLint -> GLenum -> GLint -> Ptr (Ptr a) -> GLint -> IO ())
    forall a.
    FunPtr (GLint -> GLenum -> GLint -> Ptr (Ptr a) -> GLint -> IO ())
    ptr_glTexCoordPointerListIBM GLint
    v1 GLenum
    v2 GLint
    v3 Ptr (Ptr a)
    v4 GLint
    v5

    {-# NOINLINE ptr_glTexCoordPointerListIBM #-}
    ptr_glTexCoordPointerListIBM :: FunPtr (GLint -> GLenum -> GLint -> Ptr (Ptr a) -> GLint -> IO ())
    ptr_glTexCoordPointerListIBM :: forall a.
    FunPtr (GLint -> GLenum -> GLint -> Ptr (Ptr a) -> GLint -> IO ())
    ptr_glTexCoordPointerListIBM = IO
      (FunPtr
         (GLint -> GLenum -> GLint -> Ptr (Ptr a) -> GLint -> IO ()))
    -> FunPtr
         (GLint -> GLenum -> GLint -> Ptr (Ptr a) -> GLint -> IO ())
    forall a. IO a -> a
    unsafePerformIO (IO
       (FunPtr
          (GLint -> GLenum -> GLint -> Ptr (Ptr a) -> GLint -> IO ()))
     -> FunPtr
          (GLint -> GLenum -> GLint -> Ptr (Ptr a) -> GLint -> IO ()))
    -> IO
         (FunPtr
            (GLint -> GLenum -> GLint -> Ptr (Ptr a) -> GLint -> IO ()))
    -> FunPtr
         (GLint -> GLenum -> GLint -> Ptr (Ptr a) -> GLint -> IO ())
    forall a b. (a -> b) -> a -> b
    $ String
    -> IO
         (FunPtr
            (GLint -> GLenum -> GLint -> Ptr (Ptr a) -> GLint -> IO ()))
    forall a. String -> IO (FunPtr a)
    getCommand String
    "glTexCoordPointerListIBM"

    -- glTexCoordPointervINTEL -----------------------------------------------------

    glTexCoordPointervINTEL
      :: MonadIO m
      => GLint -- ^ @size@.
      -> GLenum -- ^ @type@ of type [VertexPointerType](Graphics-GL-Groups.html#VertexPointerType).
      -> Ptr (Ptr a) -- ^ @pointer@ pointing to @4@ elements of type @Ptr a@.
      -> m ()
    glTexCoordPointervINTEL :: forall (m :: * -> *) a.
    MonadIO m =>
    GLint -> GLenum -> Ptr (Ptr a) -> m ()
    glTexCoordPointervINTEL GLint
    v1 GLenum
    v2 Ptr (Ptr a)
    v3 = IO () -> m ()
    forall a. IO a -> m a
    forall (m :: * -> *) a. MonadIO m => IO a -> m a
    liftIO (IO () -> m ()) -> IO () -> m ()
    forall a b. (a -> b) -> a -> b
    $ FunPtr (GLint -> GLenum -> Ptr (Ptr a) -> IO ())
    -> GLint -> GLenum -> Ptr (Ptr a) -> IO ()
    forall a.
    FunPtr (GLint -> GLenum -> Ptr (Ptr a) -> IO ())
    -> GLint -> GLenum -> Ptr (Ptr a) -> IO ()
    dyn136 FunPtr (GLint -> GLenum -> Ptr (Ptr a) -> IO ())
    forall a. FunPtr (GLint -> GLenum -> Ptr (Ptr a) -> IO ())
    ptr_glTexCoordPointervINTEL GLint
    v1 GLenum
    v2 Ptr (Ptr a)
    v3

    {-# NOINLINE ptr_glTexCoordPointervINTEL #-}
    ptr_glTexCoordPointervINTEL :: FunPtr (GLint -> GLenum -> Ptr (Ptr a) -> IO ())
    ptr_glTexCoordPointervINTEL :: forall a. FunPtr (GLint -> GLenum -> Ptr (Ptr a) -> IO ())
    ptr_glTexCoordPointervINTEL = IO (FunPtr (GLint -> GLenum -> Ptr (Ptr a) -> IO ()))
    -> FunPtr (GLint -> GLenum -> Ptr (Ptr a) -> IO ())
    forall a. IO a -> a
    unsafePerformIO (IO (FunPtr (GLint -> GLenum -> Ptr (Ptr a) -> IO ()))
     -> FunPtr (GLint -> GLenum -> Ptr (Ptr a) -> IO ()))
    -> IO (FunPtr (GLint -> GLenum -> Ptr (Ptr a) -> IO ()))
    -> FunPtr (GLint -> GLenum -> Ptr (Ptr a) -> IO ())
    forall a b. (a -> b) -> a -> b
    $ String -> IO (FunPtr (GLint -> GLenum -> Ptr (Ptr a) -> IO ()))
    forall a. String -> IO (FunPtr a)
    getCommand String
    "glTexCoordPointervINTEL"

    -- glTexEnvf -------------------------------------------------------------------

    -- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glTexEnv.xml OpenGL 2.x>.
    glTexEnvf
      :: MonadIO m
      => GLenum -- ^ @target@ of type [TextureEnvTarget](Graphics-GL-Groups.html#TextureEnvTarget).
      -> GLenum -- ^ @pname@ of type [TextureEnvParameter](Graphics-GL-Groups.html#TextureEnvParameter).
      -> GLfloat -- ^ @param@ of type @CheckedFloat32@.
      -> m ()
    glTexEnvf :: forall (m :: * -> *).
    MonadIO m =>
    GLenum -> GLenum -> GLfloat -> m ()
    glTexEnvf GLenum
    v1 GLenum
    v2 GLfloat
    v3 = IO () -> m ()
    forall a. IO a -> m a
    forall (m :: * -> *) a. MonadIO m => IO a -> m a
    liftIO (IO () -> m ()) -> IO () -> m ()
    forall a b. (a -> b) -> a -> b
    $ FunPtr (GLenum -> GLenum -> GLfloat -> IO ())
    -> GLenum -> GLenum -> GLfloat -> IO ()
    dyn168 FunPtr (GLenum -> GLenum -> GLfloat -> IO ())
    ptr_glTexEnvf GLenum
    v1 GLenum
    v2 GLfloat
    v3

    {-# NOINLINE ptr_glTexEnvf #-}
    ptr_glTexEnvf :: FunPtr (GLenum -> GLenum -> GLfloat -> IO ())
    ptr_glTexEnvf :: FunPtr (GLenum -> GLenum -> GLfloat -> IO ())
    ptr_glTexEnvf = IO (FunPtr (GLenum -> GLenum -> GLfloat -> IO ()))
    -> FunPtr (GLenum -> GLenum -> GLfloat -> IO ())
    forall a. IO a -> a
    unsafePerformIO (IO (FunPtr (GLenum -> GLenum -> GLfloat -> IO ()))
     -> FunPtr (GLenum -> GLenum -> GLfloat -> IO ()))
    -> IO (FunPtr (GLenum -> GLenum -> GLfloat -> IO ()))
    -> FunPtr (GLenum -> GLenum -> GLfloat -> IO ())
    forall a b. (a -> b) -> a -> b
    $ String -> IO (FunPtr (GLenum -> GLenum -> GLfloat -> IO ()))
    forall a. String -> IO (FunPtr a)
    getCommand String
    "glTexEnvf"

    -- glTexEnvfv ------------------------------------------------------------------

    -- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glTexEnv.xml OpenGL 2.x>.
    glTexEnvfv
      :: MonadIO m
      => GLenum -- ^ @target@ of type [TextureEnvTarget](Graphics-GL-Groups.html#TextureEnvTarget).
      -> GLenum -- ^ @pname@ of type [TextureEnvParameter](Graphics-GL-Groups.html#TextureEnvParameter).
      -> Ptr GLfloat -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @CheckedFloat32@.
      -> m ()
    glTexEnvfv :: forall (m :: * -> *).
    MonadIO m =>
    GLenum -> GLenum -> Ptr GLfloat -> m ()
    glTexEnvfv GLenum
    v1 GLenum
    v2 Ptr GLfloat
    v3 = IO () -> m ()
    forall a. IO a -> m a
    forall (m :: * -> *) a. MonadIO m => IO a -> m a
    liftIO (IO () -> m ()) -> IO () -> m ()
    forall a b. (a -> b) -> a -> b
    $ FunPtr (GLenum -> GLenum -> Ptr GLfloat -> IO ())
    -> GLenum -> GLenum -> Ptr GLfloat -> IO ()
    dyn139 FunPtr (GLenum -> GLenum -> Ptr GLfloat -> IO ())
    ptr_glTexEnvfv GLenum
    v1 GLenum
    v2 Ptr GLfloat
    v3

    {-# NOINLINE ptr_glTexEnvfv #-}
    ptr_glTexEnvfv :: FunPtr (GLenum -> GLenum -> Ptr GLfloat -> IO ())
    ptr_glTexEnvfv :: FunPtr (GLenum -> GLenum -> Ptr GLfloat -> IO ())
    ptr_glTexEnvfv = IO (FunPtr (GLenum -> GLenum -> Ptr GLfloat -> IO ()))
    -> FunPtr (GLenum -> GLenum -> Ptr GLfloat -> IO ())
    forall a. IO a -> a
    unsafePerformIO (IO (FunPtr (GLenum -> GLenum -> Ptr GLfloat -> IO ()))
     -> FunPtr (GLenum -> GLenum -> Ptr GLfloat -> IO ()))
    -> IO (FunPtr (GLenum -> GLenum -> Ptr GLfloat -> IO ()))
    -> FunPtr (GLenum -> GLenum -> Ptr GLfloat -> IO ())
    forall a b. (a -> b) -> a -> b
    $ String -> IO (FunPtr (GLenum -> GLenum -> Ptr GLfloat -> IO ()))
    forall a. String -> IO (FunPtr a)
    getCommand String
    "glTexEnvfv"

    -- glTexEnvi -------------------------------------------------------------------

    -- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glTexEnv.xml OpenGL 2.x>.
    glTexEnvi
      :: MonadIO m
      => GLenum -- ^ @target@ of type [TextureEnvTarget](Graphics-GL-Groups.html#TextureEnvTarget).
      -> GLenum -- ^ @pname@ of type [TextureEnvParameter](Graphics-GL-Groups.html#TextureEnvParameter).
      -> GLint -- ^ @param@ of type @CheckedInt32@.
      -> m ()
    glTexEnvi :: forall (m :: * -> *).
    MonadIO m =>
    GLenum -> GLenum -> GLint -> m ()
    glTexEnvi GLenum
    v1 GLenum
    v2 GLint
    v3 = IO () -> m ()
    forall a. IO a -> m a
    forall (m :: * -> *) a. MonadIO m => IO a -> m a
    liftIO (IO () -> m ()) -> IO () -> m ()
    forall a b. (a -> b) -> a -> b
    $ FunPtr (GLenum -> GLenum -> GLint -> IO ())
    -> GLenum -> GLenum -> GLint -> IO ()
    dyn66 FunPtr (GLenum -> GLenum -> GLint -> IO ())
    ptr_glTexEnvi GLenum
    v1 GLenum
    v2 GLint
    v3

    {-# NOINLINE ptr_glTexEnvi #-}
    ptr_glTexEnvi :: FunPtr (GLenum -> GLenum -> GLint -> IO ())
    ptr_glTexEnvi :: FunPtr (GLenum -> GLenum -> GLint -> IO ())
    ptr_glTexEnvi = IO (FunPtr (GLenum -> GLenum -> GLint -> IO ()))
    -> FunPtr (GLenum -> GLenum -> GLint -> IO ())
    forall a. IO a -> a
    unsafePerformIO (IO (FunPtr (GLenum -> GLenum -> GLint -> IO ()))
     -> FunPtr (GLenum -> GLenum -> GLint -> IO ()))
    -> IO (FunPtr (GLenum -> GLenum -> GLint -> IO ()))
    -> FunPtr (GLenum -> GLenum -> GLint -> IO ())
    forall a b. (a -> b) -> a -> b
    $ String -> IO (FunPtr (GLenum -> GLenum -> GLint -> IO ()))
    forall a. String -> IO (FunPtr a)
    getCommand String
    "glTexEnvi"

    -- glTexEnviv ------------------------------------------------------------------

    -- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glTexEnv.xml OpenGL 2.x>.
    glTexEnviv
      :: MonadIO m
      => GLenum -- ^ @target@ of type [TextureEnvTarget](Graphics-GL-Groups.html#TextureEnvTarget).
      -> GLenum -- ^ @pname@ of type [TextureEnvParameter](Graphics-GL-Groups.html#TextureEnvParameter).
      -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @CheckedInt32@.
      -> m ()
    glTexEnviv :: forall (m :: * -> *).
    MonadIO m =>
    GLenum -> GLenum -> Ptr GLint -> m ()
    glTexEnviv GLenum
    v1 GLenum
    v2 Ptr GLint
    v3 = IO () -> m ()
    forall a. IO a -> m a
    forall (m :: * -> *) a. MonadIO m => IO a -> m a
    liftIO (IO () -> m ()) -> IO () -> m ()
    forall a b. (a -> b) -> a -> b
    $ FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
    -> GLenum -> GLenum -> Ptr GLint -> IO ()
    dyn140 FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
    ptr_glTexEnviv GLenum
    v1 GLenum
    v2 Ptr GLint
    v3

    {-# NOINLINE ptr_glTexEnviv #-}
    ptr_glTexEnviv :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
    ptr_glTexEnviv :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
    ptr_glTexEnviv = IO (FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ()))
    -> FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
    forall a. IO a -> a
    unsafePerformIO (IO (FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ()))
     -> FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ()))
    -> IO (FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ()))
    -> FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
    forall a b. (a -> b) -> a -> b
    $ String -> IO (FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ()))
    forall a. String -> IO (FunPtr a)
    getCommand String
    "glTexEnviv"

    -- glTexEnvx -------------------------------------------------------------------

    glTexEnvx
      :: MonadIO m
      => GLenum -- ^ @target@ of type [TextureEnvTarget](Graphics-GL-Groups.html#TextureEnvTarget).
      -> GLenum -- ^ @pname@ of type [TextureEnvParameter](Graphics-GL-Groups.html#TextureEnvParameter).
      -> GLfixed -- ^ @param@.
      -> m ()
    glTexEnvx :: forall (m :: * -> *).
    MonadIO m =>
    GLenum -> GLenum -> GLfixed -> m ()
    glTexEnvx GLenum
    v1 GLenum
    v2 GLfixed
    v3 = IO () -> m ()
    forall a. IO a -> m a
    forall (m :: * -> *) a. MonadIO m => IO a -> m a
    liftIO (IO () -> m ()) -> IO () -> m ()
    forall a b. (a -> b) -> a -> b
    $ FunPtr (GLenum -> GLenum -> GLfixed -> IO ())
    -> GLenum -> GLenum -> GLfixed -> IO ()
    dyn169 FunPtr (GLenum -> GLenum -> GLfixed -> IO ())
    ptr_glTexEnvx GLenum
    v1 GLenum
    v2 GLfixed
    v3

    {-# NOINLINE ptr_glTexEnvx #-}
    ptr_glTexEnvx :: FunPtr (GLenum -> GLenum -> GLfixed -> IO ())
    ptr_glTexEnvx :: FunPtr (GLenum -> GLenum -> GLfixed -> IO ())
    ptr_glTexEnvx = IO (FunPtr (GLenum -> GLenum -> GLfixed -> IO ()))
    -> FunPtr (GLenum -> GLenum -> GLfixed -> IO ())
    forall a. IO a -> a
    unsafePerformIO (IO (FunPtr (GLenum -> GLenum -> GLfixed -> IO ()))
     -> FunPtr (GLenum -> GLenum -> GLfixed -> IO ()))
    -> IO (FunPtr (GLenum -> GLenum -> GLfixed -> IO ()))
    -> FunPtr (GLenum -> GLenum -> GLfixed -> IO ())
    forall a b. (a -> b) -> a -> b
    $ String -> IO (FunPtr (GLenum -> GLenum -> GLfixed -> IO ()))
    forall a. String -> IO (FunPtr a)
    getCommand String
    "glTexEnvx"

    -- glTexEnvxOES ----------------------------------------------------------------

    glTexEnvxOES
      :: MonadIO m
      => GLenum -- ^ @target@ of type [TextureEnvTarget](Graphics-GL-Groups.html#TextureEnvTarget).
      -> GLenum -- ^ @pname@ of type [TextureEnvParameter](Graphics-GL-Groups.html#TextureEnvParameter).
      -> GLfixed -- ^ @param@.
      -> m ()
    glTexEnvxOES :: forall (m :: * -> *).
    MonadIO m =>
    GLenum -> GLenum -> GLfixed -> m ()
    glTexEnvxOES GLenum
    v1 GLenum
    v2 GLfixed
    v3 = IO () -> m ()
    forall a. IO a -> m a
    forall (m :: * -> *) a. MonadIO m => IO a -> m a
    liftIO (IO () -> m ()) -> IO () -> m ()
    forall a b. (a -> b) -> a -> b
    $ FunPtr (GLenum -> GLenum -> GLfixed -> IO ())
    -> GLenum -> GLenum -> GLfixed -> IO ()
    dyn169 FunPtr (GLenum -> GLenum -> GLfixed -> IO ())
    ptr_glTexEnvxOES GLenum
    v1 GLenum
    v2 GLfixed
    v3

    {-# NOINLINE ptr_glTexEnvxOES #-}
    ptr_glTexEnvxOES :: FunPtr (GLenum -> GLenum -> GLfixed -> IO ())
    ptr_glTexEnvxOES :: FunPtr (GLenum -> GLenum -> GLfixed -> IO ())
    ptr_glTexEnvxOES = IO (FunPtr (GLenum -> GLenum -> GLfixed -> IO ()))
    -> FunPtr (GLenum -> GLenum -> GLfixed -> IO ())
    forall a. IO a -> a
    unsafePerformIO (IO (FunPtr (GLenum -> GLenum -> GLfixed -> IO ()))
     -> FunPtr (GLenum -> GLenum -> GLfixed -> IO ()))
    -> IO (FunPtr (GLenum -> GLenum -> GLfixed -> IO ()))
    -> FunPtr (GLenum -> GLenum -> GLfixed -> IO ())
    forall a b. (a -> b) -> a -> b
    $ String -> IO (FunPtr (GLenum -> GLenum -> GLfixed -> IO ()))
    forall a. String -> IO (FunPtr a)
    getCommand String
    "glTexEnvxOES"

    -- glTexEnvxv ------------------------------------------------------------------

    glTexEnvxv
      :: MonadIO m
      => GLenum -- ^ @target@ of type [TextureEnvTarget](Graphics-GL-Groups.html#TextureEnvTarget).
      -> GLenum -- ^ @pname@ of type [TextureEnvParameter](Graphics-GL-Groups.html#TextureEnvParameter).
      -> Ptr GLfixed -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLfixed@.
      -> m ()
    glTexEnvxv :: forall (m :: * -> *).
    MonadIO m =>
    GLenum -> GLenum -> Ptr GLfixed -> m ()
    glTexEnvxv GLenum
    v1 GLenum
    v2 Ptr GLfixed
    v3 = IO () -> m ()
    forall a. IO a -> m a
    forall (m :: * -> *) a. MonadIO m => IO a -> m a
    liftIO (IO () -> m ()) -> IO () -> m ()
    forall a b. (a -> b) -> a -> b
    $ FunPtr (GLenum -> GLenum -> Ptr GLfixed -> IO ())
    -> GLenum -> GLenum -> Ptr GLfixed -> IO ()
    dyn170 FunPtr (GLenum -> GLenum -> Ptr GLfixed -> IO ())
    ptr_glTexEnvxv GLenum
    v1 GLenum
    v2 Ptr GLfixed
    v3

    {-# NOINLINE ptr_glTexEnvxv #-}
    ptr_glTexEnvxv :: FunPtr (GLenum -> GLenum -> Ptr GLfixed -> IO ())
    ptr_glTexEnvxv :: FunPtr (GLenum -> GLenum -> Ptr GLfixed -> IO ())
    ptr_glTexEnvxv = IO (FunPtr (GLenum -> GLenum -> Ptr GLfixed -> IO ()))
    -> FunPtr (GLenum -> GLenum -> Ptr GLfixed -> IO ())
    forall a. IO a -> a
    unsafePerformIO (IO (FunPtr (GLenum -> GLenum -> Ptr GLfixed -> IO ()))
     -> FunPtr (GLenum -> GLenum -> Ptr GLfixed -> IO ()))
    -> IO (FunPtr (GLenum -> GLenum -> Ptr GLfixed -> IO ()))
    -> FunPtr (GLenum -> GLenum -> Ptr GLfixed -> IO ())
    forall a b. (a -> b) -> a -> b
    $ String -> IO (FunPtr (GLenum -> GLenum -> Ptr GLfixed -> IO ()))
    forall a. String -> IO (FunPtr a)
    getCommand String
    "glTexEnvxv"

    -- glTexEnvxvOES ---------------------------------------------------------------

    glTexEnvxvOES
      :: MonadIO m
      => GLenum -- ^ @target@ of type [TextureEnvTarget](Graphics-GL-Groups.html#TextureEnvTarget).
      -> GLenum -- ^ @pname@ of type [TextureEnvParameter](Graphics-GL-Groups.html#TextureEnvParameter).
      -> Ptr GLfixed -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLfixed@.
      -> m ()
    glTexEnvxvOES :: forall (m :: * -> *).
    MonadIO m =>
    GLenum -> GLenum -> Ptr GLfixed -> m ()
    glTexEnvxvOES GLenum
    v1 GLenum
    v2 Ptr GLfixed
    v3 = IO () -> m ()
    forall a. IO a -> m a
    forall (m :: * -> *) a. MonadIO m => IO a -> m a
    liftIO (IO () -> m ()) -> IO () -> m ()
    forall a b. (a -> b) -> a -> b
    $ FunPtr (GLenum -> GLenum -> Ptr GLfixed -> IO ())
    -> GLenum -> GLenum -> Ptr GLfixed -> IO ()
    dyn170 FunPtr (GLenum -> GLenum -> Ptr GLfixed -> IO ())
    ptr_glTexEnvxvOES GLenum
    v1 GLenum
    v2 Ptr GLfixed
    v3

    {-# NOINLINE ptr_glTexEnvxvOES #-}
    ptr_glTexEnvxvOES :: FunPtr (GLenum -> GLenum -> Ptr GLfixed -> IO ())
    ptr_glTexEnvxvOES :: FunPtr (GLenum -> GLenum -> Ptr GLfixed -> IO ())
    ptr_glTexEnvxvOES = IO (FunPtr (GLenum -> GLenum -> Ptr GLfixed -> IO ()))
    -> FunPtr (GLenum -> GLenum -> Ptr GLfixed -> IO ())
    forall a. IO a -> a
    unsafePerformIO (IO (FunPtr (GLenum -> GLenum -> Ptr GLfixed -> IO ()))
     -> FunPtr (GLenum -> GLenum -> Ptr GLfixed -> IO ()))
    -> IO (FunPtr (GLenum -> GLenum -> Ptr GLfixed -> IO ()))
    -> FunPtr (GLenum -> GLenum -> Ptr GLfixed -> IO ())
    forall a b. (a -> b) -> a -> b
    $ String -> IO (FunPtr (GLenum -> GLenum -> Ptr GLfixed -> IO ()))
    forall a. String -> IO (FunPtr a)
    getCommand String
    "glTexEnvxvOES"

    -- glTexFilterFuncSGIS ---------------------------------------------------------

    glTexFilterFuncSGIS
      :: MonadIO m
      => GLenum -- ^ @target@ of type [TextureTarget](Graphics-GL-Groups.html#TextureTarget).
      -> GLenum -- ^ @filter@ of type [TextureFilterSGIS](Graphics-GL-Groups.html#TextureFilterSGIS).
      -> GLsizei -- ^ @n@.
      -> Ptr GLfloat -- ^ @weights@ pointing to @n@ elements of type @GLfloat@.
      -> m ()
    glTexFilterFuncSGIS :: forall (m :: * -> *).
    MonadIO m =>
    GLenum -> GLenum -> GLint -> Ptr GLfloat -> m ()
    glTexFilterFuncSGIS GLenum
    v1 GLenum
    v2 GLint
    v3 Ptr GLfloat
    v4 = IO () -> m ()
    forall a. IO a -> m a
    forall (m :: * -> *) a. MonadIO m => IO a -> m a
    liftIO (IO () -> m ()) -> IO () -> m ()
    forall a b. (a -> b) -> a -> b
    $ FunPtr (GLenum -> GLenum -> GLint -> Ptr GLfloat -> IO ())
    -> GLenum -> GLenum -> GLint -> Ptr GLfloat -> IO ()
    dyn472 FunPtr (GLenum -> GLenum -> GLint -> Ptr GLfloat -> IO ())
    ptr_glTexFilterFuncSGIS GLenum
    v1 GLenum
    v2 GLint
    v3 Ptr GLfloat
    v4

    {-# NOINLINE ptr_glTexFilterFuncSGIS #-}
    ptr_glTexFilterFuncSGIS :: FunPtr (GLenum -> GLenum -> GLsizei -> Ptr GLfloat -> IO ())
    ptr_glTexFilterFuncSGIS :: FunPtr (GLenum -> GLenum -> GLint -> Ptr GLfloat -> IO ())
    ptr_glTexFilterFuncSGIS = IO (FunPtr (GLenum -> GLenum -> GLint -> Ptr GLfloat -> IO ()))
    -> FunPtr (GLenum -> GLenum -> GLint -> Ptr GLfloat -> IO ())
    forall a. IO a -> a
    unsafePerformIO (IO (FunPtr (GLenum -> GLenum -> GLint -> Ptr GLfloat -> IO ()))
     -> FunPtr (GLenum -> GLenum -> GLint -> Ptr GLfloat -> IO ()))
    -> IO (FunPtr (GLenum -> GLenum -> GLint -> Ptr GLfloat -> IO ()))
    -> FunPtr (GLenum -> GLenum -> GLint -> Ptr GLfloat -> IO ())
    forall a b. (a -> b) -> a -> b
    $ String
    -> IO (FunPtr (GLenum -> GLenum -> GLint -> Ptr GLfloat -> IO ()))
    forall a. String -> IO (FunPtr a)
    getCommand String
    "glTexFilterFuncSGIS"

    -- glTexGend -------------------------------------------------------------------

    -- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glTexGen.xml OpenGL 2.x>.
    glTexGend
      :: MonadIO m
      => GLenum -- ^ @coord@ of type [TextureCoordName](Graphics-GL-Groups.html#TextureCoordName).
      -> GLenum -- ^ @pname@ of type [TextureGenParameter](Graphics-GL-Groups.html#TextureGenParameter).
      -> GLdouble -- ^ @param@.
      -> m ()
    glTexGend :: forall (m :: * -> *).
    MonadIO m =>
    GLenum -> GLenum -> GLdouble -> m ()
    glTexGend GLenum
    v1 GLenum
    v2 GLdouble
    v3 = IO () -> m ()
    forall a. IO a -> m a
    forall (m :: * -> *) a. MonadIO m => IO a -> m a
    liftIO (IO () -> m ()) -> IO () -> m ()
    forall a b. (a -> b) -> a -> b
    $ FunPtr (GLenum -> GLenum -> GLdouble -> IO ())
    -> GLenum -> GLenum -> GLdouble -> IO ()
    dyn772 FunPtr (GLenum -> GLenum -> GLdouble -> IO ())
    ptr_glTexGend GLenum
    v1 GLenum
    v2 GLdouble
    v3

    {-# NOINLINE ptr_glTexGend #-}
    ptr_glTexGend :: FunPtr (GLenum -> GLenum -> GLdouble -> IO ())
    ptr_glTexGend :: FunPtr (GLenum -> GLenum -> GLdouble -> IO ())
    ptr_glTexGend = IO (FunPtr (GLenum -> GLenum -> GLdouble -> IO ()))
    -> FunPtr (GLenum -> GLenum -> GLdouble -> IO ())
    forall a. IO a -> a
    unsafePerformIO (IO (FunPtr (GLenum -> GLenum -> GLdouble -> IO ()))
     -> FunPtr (GLenum -> GLenum -> GLdouble -> IO ()))
    -> IO (FunPtr (GLenum -> GLenum -> GLdouble -> IO ()))
    -> FunPtr (GLenum -> GLenum -> GLdouble -> IO ())
    forall a b. (a -> b) -> a -> b
    $ String -> IO (FunPtr (GLenum -> GLenum -> GLdouble -> IO ()))
    forall a. String -> IO (FunPtr a)
    getCommand String
    "glTexGend"

    -- glTexGendv ------------------------------------------------------------------

    -- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glTexGen.xml OpenGL 2.x>.
    glTexGendv
      :: MonadIO m
      => GLenum -- ^ @coord@ of type [TextureCoordName](Graphics-GL-Groups.html#TextureCoordName).
      -> GLenum -- ^ @pname@ of type [TextureGenParameter](Graphics-GL-Groups.html#TextureGenParameter).
      -> Ptr GLdouble -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLdouble@.
      -> m ()
    glTexGendv :: forall (m :: * -> *).
    MonadIO m =>
    GLenum -> GLenum -> Ptr GLdouble -> m ()
    glTexGendv GLenum
    v1 GLenum
    v2 Ptr GLdouble
    v3 = IO () -> m ()
    forall a. IO a -> m a
    forall (m :: * -> *) a. MonadIO m => IO a -> m a
    liftIO (IO () -> m ()) -> IO () -> m ()
    forall a b. (a -> b) -> a -> b
    $ FunPtr (GLenum -> GLenum -> Ptr GLdouble -> IO ())
    -> GLenum -> GLenum -> Ptr GLdouble -> IO ()
    dyn368 FunPtr (GLenum -> GLenum -> Ptr GLdouble -> IO ())
    ptr_glTexGendv GLenum
    v1 GLenum
    v2 Ptr GLdouble
    v3

    {-# NOINLINE ptr_glTexGendv #-}
    ptr_glTexGendv :: FunPtr (GLenum -> GLenum -> Ptr GLdouble -> IO ())
    ptr_glTexGendv :: FunPtr (GLenum -> GLenum -> Ptr GLdouble -> IO ())
    ptr_glTexGendv = IO (FunPtr (GLenum -> GLenum -> Ptr GLdouble -> IO ()))
    -> FunPtr (GLenum -> GLenum -> Ptr GLdouble -> IO ())
    forall a. IO a -> a
    unsafePerformIO (IO (FunPtr (GLenum -> GLenum -> Ptr GLdouble -> IO ()))
     -> FunPtr (GLenum -> GLenum -> Ptr GLdouble -> IO ()))
    -> IO (FunPtr (GLenum -> GLenum -> Ptr GLdouble -> IO ()))
    -> FunPtr (GLenum -> GLenum -> Ptr GLdouble -> IO ())
    forall a b. (a -> b) -> a -> b
    $ String -> IO (FunPtr (GLenum -> GLenum -> Ptr GLdouble -> IO ()))
    forall a. String -> IO (FunPtr a)
    getCommand String
    "glTexGendv"

    -- glTexGenf -------------------------------------------------------------------

    -- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glTexGen.xml OpenGL 2.x>.
    glTexGenf
      :: MonadIO m
      => GLenum -- ^ @coord@ of type [TextureCoordName](Graphics-GL-Groups.html#TextureCoordName).
      -> GLenum -- ^ @pname@ of type [TextureGenParameter](Graphics-GL-Groups.html#TextureGenParameter).
      -> GLfloat -- ^ @param@ of type @CheckedFloat32@.
      -> m ()
    glTexGenf :: forall (m :: * -> *).
    MonadIO m =>
    GLenum -> GLenum -> GLfloat -> m ()
    glTexGenf GLenum
    v1 GLenum
    v2 GLfloat
    v3 = IO () -> m ()
    forall a. IO a -> m a
    forall (m :: * -> *) a. MonadIO m => IO a -> m a
    liftIO (IO () -> m ()) -> IO () -> m ()
    forall a b. (a -> b) -> a -> b
    $ FunPtr (GLenum -> GLenum -> GLfloat -> IO ())
    -> GLenum -> GLenum -> GLfloat -> IO ()
    dyn168 FunPtr (GLenum -> GLenum -> GLfloat -> IO ())
    ptr_glTexGenf GLenum
    v1 GLenum
    v2 GLfloat
    v3

    {-# NOINLINE ptr_glTexGenf #-}
    ptr_glTexGenf :: FunPtr (GLenum -> GLenum -> GLfloat -> IO ())
    ptr_glTexGenf :: FunPtr (GLenum -> GLenum -> GLfloat -> IO ())
    ptr_glTexGenf = IO (FunPtr (GLenum -> GLenum -> GLfloat -> IO ()))
    -> FunPtr (GLenum -> GLenum -> GLfloat -> IO ())
    forall a. IO a -> a
    unsafePerformIO (IO (FunPtr (GLenum -> GLenum -> GLfloat -> IO ()))
     -> FunPtr (GLenum -> GLenum -> GLfloat -> IO ()))
    -> IO (FunPtr (GLenum -> GLenum -> GLfloat -> IO ()))
    -> FunPtr (GLenum -> GLenum -> GLfloat -> IO ())
    forall a b. (a -> b) -> a -> b
    $ String -> IO (FunPtr (GLenum -> GLenum -> GLfloat -> IO ()))
    forall a. String -> IO (FunPtr a)
    getCommand String
    "glTexGenf"

    -- glTexGenfOES ----------------------------------------------------------------

    glTexGenfOES
      :: MonadIO m
      => GLenum -- ^ @coord@ of type [TextureCoordName](Graphics-GL-Groups.html#TextureCoordName).
      -> GLenum -- ^ @pname@ of type [TextureGenParameter](Graphics-GL-Groups.html#TextureGenParameter).
      -> GLfloat -- ^ @param@.
      -> m ()
    glTexGenfOES :: forall (m :: * -> *).
    MonadIO m =>
    GLenum -> GLenum -> GLfloat -> m ()
    glTexGenfOES GLenum
    v1 GLenum
    v2 GLfloat
    v3 = IO () -> m ()
    forall a. IO a -> m a
    forall (m :: * -> *) a. MonadIO m => IO a -> m a
    liftIO (IO () -> m ()) -> IO () -> m ()
    forall a b. (a -> b) -> a -> b
    $ FunPtr (GLenum -> GLenum -> GLfloat -> IO ())
    -> GLenum -> GLenum -> GLfloat -> IO ()
    dyn168 FunPtr (GLenum -> GLenum -> GLfloat -> IO ())
    ptr_glTexGenfOES GLenum
    v1 GLenum
    v2 GLfloat
    v3

    {-# NOINLINE ptr_glTexGenfOES #-}
    ptr_glTexGenfOES :: FunPtr (GLenum -> GLenum -> GLfloat -> IO ())
    ptr_glTexGenfOES :: FunPtr (GLenum -> GLenum -> GLfloat -> IO ())
    ptr_glTexGenfOES = IO (FunPtr (GLenum -> GLenum -> GLfloat -> IO ()))
    -> FunPtr (GLenum -> GLenum -> GLfloat -> IO ())
    forall a. IO a -> a
    unsafePerformIO (IO (FunPtr (GLenum -> GLenum -> GLfloat -> IO ()))
     -> FunPtr (GLenum -> GLenum -> GLfloat -> IO ()))
    -> IO (FunPtr (GLenum -> GLenum -> GLfloat -> IO ()))
    -> FunPtr (GLenum -> GLenum -> GLfloat -> IO ())
    forall a b. (a -> b) -> a -> b
    $ String -> IO (FunPtr (GLenum -> GLenum -> GLfloat -> IO ()))
    forall a. String -> IO (FunPtr a)
    getCommand String
    "glTexGenfOES"

    -- glTexGenfv ------------------------------------------------------------------

    -- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glTexGen.xml OpenGL 2.x>.
    glTexGenfv
      :: MonadIO m
      => GLenum -- ^ @coord@ of type [TextureCoordName](Graphics-GL-Groups.html#TextureCoordName).
      -> GLenum -- ^ @pname@ of type [TextureGenParameter](Graphics-GL-Groups.html#TextureGenParameter).
      -> Ptr GLfloat -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @CheckedFloat32@.
      -> m ()
    glTexGenfv :: forall (m :: * -> *).
    MonadIO m =>
    GLenum -> GLenum -> Ptr GLfloat -> m ()
    glTexGenfv GLenum
    v1 GLenum
    v2 Ptr GLfloat
    v3 = IO () -> m ()
    forall a. IO a -> m a
    forall (m :: * -> *) a. MonadIO m => IO a -> m a
    liftIO (IO () -> m ()) -> IO () -> m ()
    forall a b. (a -> b) -> a -> b
    $ FunPtr (GLenum -> GLenum -> Ptr GLfloat -> IO ())
    -> GLenum -> GLenum -> Ptr GLfloat -> IO ()
    dyn139 FunPtr (GLenum -> GLenum -> Ptr GLfloat -> IO ())
    ptr_glTexGenfv GLenum
    v1 GLenum
    v2 Ptr GLfloat
    v3

    {-# NOINLINE ptr_glTexGenfv #-}
    ptr_glTexGenfv :: FunPtr (GLenum -> GLenum -> Ptr GLfloat -> IO ())
    ptr_glTexGenfv :: FunPtr (GLenum -> GLenum -> Ptr GLfloat -> IO ())
    ptr_glTexGenfv = IO (FunPtr (GLenum -> GLenum -> Ptr GLfloat -> IO ()))
    -> FunPtr (GLenum -> GLenum -> Ptr GLfloat -> IO ())
    forall a. IO a -> a
    unsafePerformIO (IO (FunPtr (GLenum -> GLenum -> Ptr GLfloat -> IO ()))
     -> FunPtr (GLenum -> GLenum -> Ptr GLfloat -> IO ()))
    -> IO (FunPtr (GLenum -> GLenum -> Ptr GLfloat -> IO ()))
    -> FunPtr (GLenum -> GLenum -> Ptr GLfloat -> IO ())
    forall a b. (a -> b) -> a -> b
    $ String -> IO (FunPtr (GLenum -> GLenum -> Ptr GLfloat -> IO ()))
    forall a. String -> IO (FunPtr a)
    getCommand String
    "glTexGenfv"

    -- glTexGenfvOES ---------------------------------------------------------------

    glTexGenfvOES
      :: MonadIO m
      => GLenum -- ^ @coord@ of type [TextureCoordName](Graphics-GL-Groups.html#TextureCoordName).
      -> GLenum -- ^ @pname@ of type [TextureGenParameter](Graphics-GL-Groups.html#TextureGenParameter).
      -> Ptr GLfloat -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLfloat@.
      -> m ()
    glTexGenfvOES :: forall (m :: * -> *).
    MonadIO m =>
    GLenum -> GLenum -> Ptr GLfloat -> m ()
    glTexGenfvOES GLenum
    v1 GLenum
    v2 Ptr GLfloat
    v3 = IO () -> m ()
    forall a. IO a -> m a
    forall (m :: * -> *) a. MonadIO m => IO a -> m a
    liftIO (IO () -> m ()) -> IO () -> m ()
    forall a b. (a -> b) -> a -> b
    $ FunPtr (GLenum -> GLenum -> Ptr GLfloat -> IO ())
    -> GLenum -> GLenum -> Ptr GLfloat -> IO ()
    dyn139 FunPtr (GLenum -> GLenum -> Ptr GLfloat -> IO ())
    ptr_glTexGenfvOES GLenum
    v1 GLenum
    v2 Ptr GLfloat
    v3

    {-# NOINLINE ptr_glTexGenfvOES #-}
    ptr_glTexGenfvOES :: FunPtr (GLenum -> GLenum -> Ptr GLfloat -> IO ())
    ptr_glTexGenfvOES :: FunPtr (GLenum -> GLenum -> Ptr GLfloat -> IO ())
    ptr_glTexGenfvOES = IO (FunPtr (GLenum -> GLenum -> Ptr GLfloat -> IO ()))
    -> FunPtr (GLenum -> GLenum -> Ptr GLfloat -> IO ())
    forall a. IO a -> a
    unsafePerformIO (IO (FunPtr (GLenum -> GLenum -> Ptr GLfloat -> IO ()))
     -> FunPtr (GLenum -> GLenum -> Ptr GLfloat -> IO ()))
    -> IO (FunPtr (GLenum -> GLenum -> Ptr GLfloat -> IO ()))
    -> FunPtr (GLenum -> GLenum -> Ptr GLfloat -> IO ())
    forall a b. (a -> b) -> a -> b
    $ String -> IO (FunPtr (GLenum -> GLenum -> Ptr GLfloat -> IO ()))
    forall a. String -> IO (FunPtr a)
    getCommand String
    "glTexGenfvOES"

    -- glTexGeni -------------------------------------------------------------------

    -- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glTexGen.xml OpenGL 2.x>.
    glTexGeni
      :: MonadIO m
      => GLenum -- ^ @coord@ of type [TextureCoordName](Graphics-GL-Groups.html#TextureCoordName).
      -> GLenum -- ^ @pname@ of type [TextureGenParameter](Graphics-GL-Groups.html#TextureGenParameter).
      -> GLint -- ^ @param@ of type @CheckedInt32@.
      -> m ()
    glTexGeni :: forall (m :: * -> *).
    MonadIO m =>
    GLenum -> GLenum -> GLint -> m ()
    glTexGeni GLenum
    v1 GLenum
    v2 GLint
    v3 = IO () -> m ()
    forall a. IO a -> m a
    forall (m :: * -> *) a. MonadIO m => IO a -> m a
    liftIO (IO () -> m ()) -> IO () -> m ()
    forall a b. (a -> b) -> a -> b
    $ FunPtr (GLenum -> GLenum -> GLint -> IO ())
    -> GLenum -> GLenum -> GLint -> IO ()
    dyn66 FunPtr (GLenum -> GLenum -> GLint -> IO ())
    ptr_glTexGeni GLenum
    v1 GLenum
    v2 GLint
    v3

    {-# NOINLINE ptr_glTexGeni #-}
    ptr_glTexGeni :: FunPtr (GLenum -> GLenum -> GLint -> IO ())
    ptr_glTexGeni :: FunPtr (GLenum -> GLenum -> GLint -> IO ())
    ptr_glTexGeni = IO (FunPtr (GLenum -> GLenum -> GLint -> IO ()))
    -> FunPtr (GLenum -> GLenum -> GLint -> IO ())
    forall a. IO a -> a
    unsafePerformIO (IO (FunPtr (GLenum -> GLenum -> GLint -> IO ()))
     -> FunPtr (GLenum -> GLenum -> GLint -> IO ()))
    -> IO (FunPtr (GLenum -> GLenum -> GLint -> IO ()))
    -> FunPtr (GLenum -> GLenum -> GLint -> IO ())
    forall a b. (a -> b) -> a -> b
    $ String -> IO (FunPtr (GLenum -> GLenum -> GLint -> IO ()))
    forall a. String -> IO (FunPtr a)
    getCommand String
    "glTexGeni"

    -- glTexGeniOES ----------------------------------------------------------------

    glTexGeniOES
      :: MonadIO m
      => GLenum -- ^ @coord@ of type [TextureCoordName](Graphics-GL-Groups.html#TextureCoordName).
      -> GLenum -- ^ @pname@ of type [TextureGenParameter](Graphics-GL-Groups.html#TextureGenParameter).
      -> GLint -- ^ @param@.
      -> m ()
    glTexGeniOES :: forall (m :: * -> *).
    MonadIO m =>
    GLenum -> GLenum -> GLint -> m ()
    glTexGeniOES GLenum
    v1 GLenum
    v2 GLint
    v3 = IO () -> m ()
    forall a. IO a -> m a
    forall (m :: * -> *) a. MonadIO m => IO a -> m a
    liftIO (IO () -> m ()) -> IO () -> m ()
    forall a b. (a -> b) -> a -> b
    $ FunPtr (GLenum -> GLenum -> GLint -> IO ())
    -> GLenum -> GLenum -> GLint -> IO ()
    dyn66 FunPtr (GLenum -> GLenum -> GLint -> IO ())
    ptr_glTexGeniOES GLenum
    v1 GLenum
    v2 GLint
    v3

    {-# NOINLINE ptr_glTexGeniOES #-}
    ptr_glTexGeniOES :: FunPtr (GLenum -> GLenum -> GLint -> IO ())
    ptr_glTexGeniOES :: FunPtr (GLenum -> GLenum -> GLint -> IO ())
    ptr_glTexGeniOES = IO (FunPtr (GLenum -> GLenum -> GLint -> IO ()))
    -> FunPtr (GLenum -> GLenum -> GLint -> IO ())
    forall a. IO a -> a
    unsafePerformIO (IO (FunPtr (GLenum -> GLenum -> GLint -> IO ()))
     -> FunPtr (GLenum -> GLenum -> GLint -> IO ()))
    -> IO (FunPtr (GLenum -> GLenum -> GLint -> IO ()))
    -> FunPtr (GLenum -> GLenum -> GLint -> IO ())
    forall a b. (a -> b) -> a -> b
    $ String -> IO (FunPtr (GLenum -> GLenum -> GLint -> IO ()))
    forall a. String -> IO (FunPtr a)
    getCommand String
    "glTexGeniOES"

    -- glTexGeniv ------------------------------------------------------------------

    -- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glTexGen.xml OpenGL 2.x>.
    glTexGeniv
      :: MonadIO m
      => GLenum -- ^ @coord@ of type [TextureCoordName](Graphics-GL-Groups.html#TextureCoordName).
      -> GLenum -- ^ @pname@ of type [TextureGenParameter](Graphics-GL-Groups.html#TextureGenParameter).
      -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @CheckedInt32@.
      -> m ()
    glTexGeniv :: forall (m :: * -> *).
    MonadIO m =>
    GLenum -> GLenum -> Ptr GLint -> m ()
    glTexGeniv GLenum
    v1 GLenum
    v2 Ptr GLint
    v3 = IO () -> m ()
    forall a. IO a -> m a
    forall (m :: * -> *) a. MonadIO m => IO a -> m a
    liftIO (IO () -> m ()) -> IO () -> m ()
    forall a b. (a -> b) -> a -> b
    $ FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
    -> GLenum -> GLenum -> Ptr GLint -> IO ()
    dyn140 FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
    ptr_glTexGeniv GLenum
    v1 GLenum
    v2 Ptr GLint
    v3

    {-# NOINLINE ptr_glTexGeniv #-}
    ptr_glTexGeniv :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
    ptr_glTexGeniv :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
    ptr_glTexGeniv = IO (FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ()))
    -> FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
    forall a. IO a -> a
    unsafePerformIO (IO (FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ()))
     -> FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ()))
    -> IO (FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ()))
    -> FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
    forall a b. (a -> b) -> a -> b
    $ String -> IO (FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ()))
    forall a. String -> IO (FunPtr a)
    getCommand String
    "glTexGeniv"

    -- glTexGenivOES ---------------------------------------------------------------

    glTexGenivOES
      :: MonadIO m
      => GLenum -- ^ @coord@ of type [TextureCoordName](Graphics-GL-Groups.html#TextureCoordName).
      -> GLenum -- ^ @pname@ of type [TextureGenParameter](Graphics-GL-Groups.html#TextureGenParameter).
      -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLint@.
      -> m ()
    glTexGenivOES :: forall (m :: * -> *).
    MonadIO m =>
    GLenum -> GLenum -> Ptr GLint -> m ()
    glTexGenivOES GLenum
    v1 GLenum
    v2 Ptr GLint
    v3 = IO () -> m ()
    forall a. IO a -> m a
    forall (m :: * -> *) a. MonadIO m => IO a -> m a
    liftIO (IO () -> m ()) -> IO () -> m ()
    forall a b. (a -> b) -> a -> b
    $ FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
    -> GLenum -> GLenum -> Ptr GLint -> IO ()
    dyn140 FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
    ptr_glTexGenivOES GLenum
    v1 GLenum
    v2 Ptr GLint
    v3

    {-# NOINLINE ptr_glTexGenivOES #-}
    ptr_glTexGenivOES :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
    ptr_glTexGenivOES :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
    ptr_glTexGenivOES = IO (FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ()))
    -> FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
    forall a. IO a -> a
    unsafePerformIO (IO (FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ()))
     -> FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ()))
    -> IO (FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ()))
    -> FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
    forall a b. (a -> b) -> a -> b
    $ String -> IO (FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ()))
    forall a. String -> IO (FunPtr a)
    getCommand String
    "glTexGenivOES"

    -- glTexGenxOES ----------------------------------------------------------------

    glTexGenxOES
      :: MonadIO m
      => GLenum -- ^ @coord@ of type [TextureCoordName](Graphics-GL-Groups.html#TextureCoordName).
      -> GLenum -- ^ @pname@ of type [TextureGenParameter](Graphics-GL-Groups.html#TextureGenParameter).
      -> GLfixed -- ^ @param@.
      -> m ()
    glTexGenxOES :: forall (m :: * -> *).
    MonadIO m =>
    GLenum -> GLenum -> GLfixed -> m ()
    glTexGenxOES GLenum
    v1 GLenum
    v2 GLfixed
    v3 = IO () -> m ()
    forall a. IO a -> m a
    forall (m :: * -> *) a. MonadIO m => IO a -> m a
    liftIO (IO () -> m ()) -> IO () -> m ()
    forall a b. (a -> b) -> a -> b
    $ FunPtr (GLenum -> GLenum -> GLfixed -> IO ())
    -> GLenum -> GLenum -> GLfixed -> IO ()
    dyn169 FunPtr (GLenum -> GLenum -> GLfixed -> IO ())
    ptr_glTexGenxOES GLenum
    v1 GLenum
    v2 GLfixed
    v3

    {-# NOINLINE ptr_glTexGenxOES #-}
    ptr_glTexGenxOES :: FunPtr (GLenum -> GLenum -> GLfixed -> IO ())
    ptr_glTexGenxOES :: FunPtr (GLenum -> GLenum -> GLfixed -> IO ())
    ptr_glTexGenxOES = IO (FunPtr (GLenum -> GLenum -> GLfixed -> IO ()))
    -> FunPtr (GLenum -> GLenum -> GLfixed -> IO ())
    forall a. IO a -> a
    unsafePerformIO (IO (FunPtr (GLenum -> GLenum -> GLfixed -> IO ()))
     -> FunPtr (GLenum -> GLenum -> GLfixed -> IO ()))
    -> IO (FunPtr (GLenum -> GLenum -> GLfixed -> IO ()))
    -> FunPtr (GLenum -> GLenum -> GLfixed -> IO ())
    forall a b. (a -> b) -> a -> b
    $ String -> IO (FunPtr (GLenum -> GLenum -> GLfixed -> IO ()))
    forall a. String -> IO (FunPtr a)
    getCommand String
    "glTexGenxOES"

    -- glTexGenxvOES ---------------------------------------------------------------

    glTexGenxvOES
      :: MonadIO m
      => GLenum -- ^ @coord@ of type [TextureCoordName](Graphics-GL-Groups.html#TextureCoordName).
      -> GLenum -- ^ @pname@ of type [TextureGenParameter](Graphics-GL-Groups.html#TextureGenParameter).
      -> Ptr GLfixed -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLfixed@.
      -> m ()
    glTexGenxvOES :: forall (m :: * -> *).
    MonadIO m =>
    GLenum -> GLenum -> Ptr GLfixed -> m ()
    glTexGenxvOES GLenum
    v1 GLenum
    v2 Ptr GLfixed
    v3 = IO () -> m ()
    forall a. IO a -> m a
    forall (m :: * -> *) a. MonadIO m => IO a -> m a
    liftIO (IO () -> m ()) -> IO () -> m ()
    forall a b. (a -> b) -> a -> b
    $ FunPtr (GLenum -> GLenum -> Ptr GLfixed -> IO ())
    -> GLenum -> GLenum -> Ptr GLfixed -> IO ()
    dyn170 FunPtr (GLenum -> GLenum -> Ptr GLfixed -> IO ())
    ptr_glTexGenxvOES GLenum
    v1 GLenum
    v2 Ptr GLfixed
    v3

    {-# NOINLINE ptr_glTexGenxvOES #-}
    ptr_glTexGenxvOES :: FunPtr (GLenum -> GLenum -> Ptr GLfixed -> IO ())
    ptr_glTexGenxvOES :: FunPtr (GLenum -> GLenum -> Ptr GLfixed -> IO ())
    ptr_glTexGenxvOES = IO (FunPtr (GLenum -> GLenum -> Ptr GLfixed -> IO ()))
    -> FunPtr (GLenum -> GLenum -> Ptr GLfixed -> IO ())
    forall a. IO a -> a
    unsafePerformIO (IO (FunPtr (GLenum -> GLenum -> Ptr GLfixed -> IO ()))
     -> FunPtr (GLenum -> GLenum -> Ptr GLfixed -> IO ()))
    -> IO (FunPtr (GLenum -> GLenum -> Ptr GLfixed -> IO ()))
    -> FunPtr (GLenum -> GLenum -> Ptr GLfixed -> IO ())
    forall a b. (a -> b) -> a -> b
    $ String -> IO (FunPtr (GLenum -> GLenum -> Ptr GLfixed -> IO ()))
    forall a. String -> IO (FunPtr a)
    getCommand String
    "glTexGenxvOES"

    -- glTexImage1D ----------------------------------------------------------------

    -- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glTexImage1D.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glTexImage1D.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glTexImage1D.xhtml OpenGL 4.x>.
    glTexImage1D
      :: MonadIO m
      => GLenum -- ^ @target@ of type [TextureTarget](Graphics-GL-Groups.html#TextureTarget).
      -> GLint -- ^ @level@ of type @CheckedInt32@.
      -> GLint -- ^ @internalformat@ of type [InternalFormat](Graphics-GL-Groups.html#InternalFormat).
      -> GLsizei -- ^ @width@.
      -> GLint -- ^ @border@ of type @CheckedInt32@.
      -> GLenum -- ^ @format@ of type [PixelFormat](Graphics-GL-Groups.html#PixelFormat).
      -> GLenum -- ^ @type@ of type [PixelType](Graphics-GL-Groups.html#PixelType).
      -> Ptr a -- ^ @pixels@ pointing to @COMPSIZE(format,type,width)@ elements of type @a@.
      -> m ()
    glTexImage1D :: forall (m :: * -> *) a.
    MonadIO m =>
    GLenum
    -> GLint
    -> GLint
    -> GLint
    -> GLint
    -> GLenum
    -> GLenum
    -> Ptr a
    -> m ()
    glTexImage1D GLenum
    v1 GLint
    v2 GLint
    v3 GLint
    v4 GLint
    v5 GLenum
    v6 GLenum
    v7 Ptr a
    v8 = IO () -> m ()
    forall a. IO a -> m a
    forall (m :: * -> *) a. MonadIO m => IO a -> m a
    liftIO (IO () -> m ()) -> IO () -> m ()
    forall a b. (a -> b) -> a -> b
    $ FunPtr
      (GLenum
       -> GLint
       -> GLint
       -> GLint
       -> GLint
       -> GLenum
       -> GLenum
       -> Ptr a
       -> IO ())
    -> GLenum
    -> GLint
    -> GLint
    -> GLint
    -> GLint
    -> GLenum
    -> GLenum
    -> Ptr a
    -> IO ()
    forall a.
    FunPtr
      (GLenum
       -> GLint
       -> GLint
       -> GLint
       -> GLint
       -> GLenum
       -> GLenum
       -> Ptr a
       -> IO ())
    -> GLenum
    -> GLint
    -> GLint
    -> GLint
    -> GLint
    -> GLenum
    -> GLenum
    -> Ptr a
    -> IO ()
    dyn773 FunPtr
      (GLenum
       -> GLint
       -> GLint
       -> GLint
       -> GLint
       -> GLenum
       -> GLenum
       -> Ptr a
       -> IO ())
    forall a.
    FunPtr
      (GLenum
       -> GLint
       -> GLint
       -> GLint
       -> GLint
       -> GLenum
       -> GLenum
       -> Ptr a
       -> IO ())
    ptr_glTexImage1D GLenum
    v1 GLint
    v2 GLint
    v3 GLint
    v4 GLint
    v5 GLenum
    v6 GLenum
    v7 Ptr a
    v8

    {-# NOINLINE ptr_glTexImage1D #-}
    ptr_glTexImage1D :: FunPtr (GLenum -> GLint -> GLint -> GLsizei -> GLint -> GLenum -> GLenum -> Ptr a -> IO ())
    ptr_glTexImage1D :: forall a.
    FunPtr
      (GLenum
       -> GLint
       -> GLint
       -> GLint
       -> GLint
       -> GLenum
       -> GLenum
       -> Ptr a
       -> IO ())
    ptr_glTexImage1D = IO
      (FunPtr
         (GLenum
          -> GLint
          -> GLint
          -> GLint
          -> GLint
          -> GLenum
          -> GLenum
          -> Ptr a
          -> IO ()))
    -> FunPtr
         (GLenum
          -> GLint
          -> GLint
          -> GLint
          -> GLint
          -> GLenum
          -> GLenum
          -> Ptr a
          -> IO ())
    forall a. IO a -> a
    unsafePerformIO (IO
       (FunPtr
          (GLenum
           -> GLint
           -> GLint
           -> GLint
           -> GLint
           -> GLenum
           -> GLenum
           -> Ptr a
           -> IO ()))
     -> FunPtr
          (GLenum
           -> GLint
           -> GLint
           -> GLint
           -> GLint
           -> GLenum
           -> GLenum
           -> Ptr a
           -> IO ()))
    -> IO
         (FunPtr
            (GLenum
             -> GLint
             -> GLint
             -> GLint
             -> GLint
             -> GLenum
             -> GLenum
             -> Ptr a
             -> IO ()))
    -> FunPtr
         (GLenum
          -> GLint
          -> GLint
          -> GLint
          -> GLint
          -> GLenum
          -> GLenum
          -> Ptr a
          -> IO ())
    forall a b. (a -> b) -> a -> b
    $ String
    -> IO
         (FunPtr
            (GLenum
             -> GLint
             -> GLint
             -> GLint
             -> GLint
             -> GLenum
             -> GLenum
             -> Ptr a
             -> IO ()))
    forall a. String -> IO (FunPtr a)
    getCommand String
    "glTexImage1D"

    -- glTexImage2D ----------------------------------------------------------------

    -- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glTexImage2D.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glTexImage2D.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glTexImage2D.xhtml OpenGL 4.x>.
    glTexImage2D
      :: MonadIO m
      => GLenum -- ^ @target@ of type [TextureTarget](Graphics-GL-Groups.html#TextureTarget).
      -> GLint -- ^ @level@ of type @CheckedInt32@.
      -> GLint -- ^ @internalformat@ of type [InternalFormat](Graphics-GL-Groups.html#InternalFormat).
      -> GLsizei -- ^ @width@.
      -> GLsizei -- ^ @height@.
      -> GLint -- ^ @border@ of type @CheckedInt32@.
      -> GLenum -- ^ @format@ of type [PixelFormat](Graphics-GL-Groups.html#PixelFormat).
      -> GLenum -- ^ @type@ of type [PixelType](Graphics-GL-Groups.html#PixelType).
      -> Ptr a -- ^ @pixels@ pointing to @COMPSIZE(format,type,width,height)@ elements of type @a@.
      -> m ()
    glTexImage2D :: forall (m :: * -> *) a.
    MonadIO m =>
    GLenum
    -> GLint
    -> GLint
    -> GLint
    -> GLint
    -> GLint
    -> GLenum
    -> GLenum
    -> Ptr a
    -> m ()
    glTexImage2D GLenum
    v1 GLint
    v2 GLint
    v3 GLint
    v4 GLint
    v5 GLint
    v6 GLenum
    v7 GLenum
    v8 Ptr a
    v9 = IO () -> m ()
    forall a. IO a -> m a
    forall (m :: * -> *) a. MonadIO m => IO a -> m a
    liftIO (IO () -> m ()) -> IO () -> m ()
    forall a b. (a -> b) -> a -> b
    $ FunPtr
      (GLenum
       -> GLint
       -> GLint
       -> GLint
       -> GLint
       -> GLint
       -> GLenum
       -> GLenum
       -> Ptr a
       -> IO ())
    -> GLenum
    -> GLint
    -> GLint
    -> GLint
    -> GLint
    -> GLint
    -> GLenum
    -> GLenum
    -> Ptr a
    -> IO ()
    forall a.
    FunPtr
      (GLenum
       -> GLint
       -> GLint
       -> GLint
       -> GLint
       -> GLint
       -> GLenum
       -> GLenum
       -> Ptr a
       -> IO ())
    -> GLenum
    -> GLint
    -> GLint
    -> GLint
    -> GLint
    -> GLint
    -> GLenum
    -> GLenum
    -> Ptr a
    -> IO ()
    dyn774 FunPtr
      (GLenum
       -> GLint
       -> GLint
       -> GLint
       -> GLint
       -> GLint
       -> GLenum
       -> GLenum
       -> Ptr a
       -> IO ())
    forall a.
    FunPtr
      (GLenum
       -> GLint
       -> GLint
       -> GLint
       -> GLint
       -> GLint
       -> GLenum
       -> GLenum
       -> Ptr a
       -> IO ())
    ptr_glTexImage2D GLenum
    v1 GLint
    v2 GLint
    v3 GLint
    v4 GLint
    v5 GLint
    v6 GLenum
    v7 GLenum
    v8 Ptr a
    v9

    {-# NOINLINE ptr_glTexImage2D #-}
    ptr_glTexImage2D :: FunPtr (GLenum -> GLint -> GLint -> GLsizei -> GLsizei -> GLint -> GLenum -> GLenum -> Ptr a -> IO ())
    ptr_glTexImage2D :: forall a.
    FunPtr
      (GLenum
       -> GLint
       -> GLint
       -> GLint
       -> GLint
       -> GLint
       -> GLenum
       -> GLenum
       -> Ptr a
       -> IO ())
    ptr_glTexImage2D = IO
      (FunPtr
         (GLenum
          -> GLint
          -> GLint
          -> GLint
          -> GLint
          -> GLint
          -> GLenum
          -> GLenum
          -> Ptr a
          -> IO ()))
    -> FunPtr
         (GLenum
          -> GLint
          -> GLint
          -> GLint
          -> GLint
          -> GLint
          -> GLenum
          -> GLenum
          -> Ptr a
          -> IO ())
    forall a. IO a -> a
    unsafePerformIO (IO
       (FunPtr
          (GLenum
           -> GLint
           -> GLint
           -> GLint
           -> GLint
           -> GLint
           -> GLenum
           -> GLenum
           -> Ptr a
           -> IO ()))
     -> FunPtr
          (GLenum
           -> GLint
           -> GLint
           -> GLint
           -> GLint
           -> GLint
           -> GLenum
           -> GLenum
           -> Ptr a
           -> IO ()))
    -> IO
         (FunPtr
            (GLenum
             -> GLint
             -> GLint
             -> GLint
             -> GLint
             -> GLint
             -> GLenum
             -> GLenum
             -> Ptr a
             -> IO ()))
    -> FunPtr
         (GLenum
          -> GLint
          -> GLint
          -> GLint
          -> GLint
          -> GLint
          -> GLenum
          -> GLenum
          -> Ptr a
          -> IO ())
    forall a b. (a -> b) -> a -> b
    $ String
    -> IO
         (FunPtr
            (GLenum
             -> GLint
             -> GLint
             -> GLint
             -> GLint
             -> GLint
             -> GLenum
             -> GLenum
             -> Ptr a
             -> IO ()))
    forall a. String -> IO (FunPtr a)
    getCommand String
    "glTexImage2D"

    -- glTexImage2DMultisample -----------------------------------------------------

    -- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glTexImage2DMultisample.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glTexImage2DMultisample.xhtml OpenGL 4.x>.
    glTexImage2DMultisample
      :: MonadIO m
      => GLenum -- ^ @target@ of type [TextureTarget](Graphics-GL-Groups.html#TextureTarget).
      -> GLsizei -- ^ @samples@.
      -> GLenum -- ^ @internalformat@ of type [InternalFormat](Graphics-GL-Groups.html#InternalFormat).
      -> GLsizei -- ^ @width@.
      -> GLsizei -- ^ @height@.
      -> GLboolean -- ^ @fixedsamplelocations@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
      -> m ()
    glTexImage2DMultisample :: forall (m :: * -> *).
    MonadIO m =>
    GLenum -> GLint -> GLenum -> GLint -> GLint -> GLboolean -> m ()
    glTexImage2DMultisample GLenum
    v1 GLint
    v2 GLenum
    v3 GLint
    v4 GLint
    v5 GLboolean
    v6 = IO () -> m ()
    forall a. IO a -> m a
    forall (m :: * -> *) a. MonadIO m => IO a -> m a
    liftIO (IO () -> m ()) -> IO () -> m ()
    forall a b. (a -> b) -> a -> b
    $ FunPtr
      (GLenum -> GLint -> GLenum -> GLint -> GLint -> GLboolean -> IO ())
    -> GLenum
    -> GLint
    -> GLenum
    -> GLint
    -> GLint
    -> GLboolean
    -> IO ()
    dyn775 FunPtr
      (GLenum -> GLint -> GLenum -> GLint -> GLint -> GLboolean -> IO ())
    ptr_glTexImage2DMultisample GLenum
    v1 GLint
    v2 GLenum
    v3 GLint
    v4 GLint
    v5 GLboolean
    v6

    {-# NOINLINE ptr_glTexImage2DMultisample #-}
    ptr_glTexImage2DMultisample :: FunPtr (GLenum -> GLsizei -> GLenum -> GLsizei -> GLsizei -> GLboolean -> IO ())
    ptr_glTexImage2DMultisample :: FunPtr
      (GLenum -> GLint -> GLenum -> GLint -> GLint -> GLboolean -> IO ())
    ptr_glTexImage2DMultisample = IO
      (FunPtr
         (GLenum
          -> GLint -> GLenum -> GLint -> GLint -> GLboolean -> IO ()))
    -> FunPtr
         (GLenum -> GLint -> GLenum -> GLint -> GLint -> GLboolean -> IO ())
    forall a. IO a -> a
    unsafePerformIO (IO
       (FunPtr
          (GLenum
           -> GLint -> GLenum -> GLint -> GLint -> GLboolean -> IO ()))
     -> FunPtr
          (GLenum
           -> GLint -> GLenum -> GLint -> GLint -> GLboolean -> IO ()))
    -> IO
         (FunPtr
            (GLenum
             -> GLint -> GLenum -> GLint -> GLint -> GLboolean -> IO ()))
    -> FunPtr
         (GLenum -> GLint -> GLenum -> GLint -> GLint -> GLboolean -> IO ())
    forall a b. (a -> b) -> a -> b
    $ String
    -> IO
         (FunPtr
            (GLenum
             -> GLint -> GLenum -> GLint -> GLint -> GLboolean -> IO ()))
    forall a. String -> IO (FunPtr a)
    getCommand String
    "glTexImage2DMultisample"

    -- glTexImage2DMultisampleCoverageNV -------------------------------------------

    glTexImage2DMultisampleCoverageNV
      :: MonadIO m
      => GLenum -- ^ @target@ of type [TextureTarget](Graphics-GL-Groups.html#TextureTarget).
      -> GLsizei -- ^ @coverageSamples@.
      -> GLsizei -- ^ @colorSamples@.
      -> GLint -- ^ @internalFormat@.
      -> GLsizei -- ^ @width@.
      -> GLsizei -- ^ @height@.
      -> GLboolean -- ^ @fixedSampleLocations@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
      -> m ()
    glTexImage2DMultisampleCoverageNV :: forall (m :: * -> *).
    MonadIO m =>
    GLenum
    -> GLint -> GLint -> GLint -> GLint -> GLint -> GLboolean -> m ()
    glTexImage2DMultisampleCoverageNV GLenum
    v1 GLint
    v2 GLint
    v3 GLint
    v4 GLint
    v5 GLint
    v6 GLboolean
    v7 = IO () -> m ()
    forall a. IO a -> m a
    forall (m :: * -> *) a. MonadIO m => IO a -> m a
    liftIO (IO () -> m ()) -> IO () -> m ()
    forall a b. (a -> b) -> a -> b
    $ FunPtr
      (GLenum
       -> GLint -> GLint -> GLint -> GLint -> GLint -> GLboolean -> IO ())
    -> GLenum
    -> GLint
    -> GLint
    -> GLint
    -> GLint
    -> GLint
    -> GLboolean
    -> IO ()
    dyn776 FunPtr
      (GLenum
       -> GLint -> GLint -> GLint -> GLint -> GLint -> GLboolean -> IO ())
    ptr_glTexImage2DMultisampleCoverageNV GLenum
    v1 GLint
    v2 GLint
    v3 GLint
    v4 GLint
    v5 GLint
    v6 GLboolean
    v7

    {-# NOINLINE ptr_glTexImage2DMultisampleCoverageNV #-}
    ptr_glTexImage2DMultisampleCoverageNV :: FunPtr (GLenum -> GLsizei -> GLsizei -> GLint -> GLsizei -> GLsizei -> GLboolean -> IO ())
    ptr_glTexImage2DMultisampleCoverageNV :: FunPtr
      (GLenum
       -> GLint -> GLint -> GLint -> GLint -> GLint -> GLboolean -> IO ())
    ptr_glTexImage2DMultisampleCoverageNV = IO
      (FunPtr
         (GLenum
          -> GLint
          -> GLint
          -> GLint
          -> GLint
          -> GLint
          -> GLboolean
          -> IO ()))
    -> FunPtr
         (GLenum
          -> GLint -> GLint -> GLint -> GLint -> GLint -> GLboolean -> IO ())
    forall a. IO a -> a
    unsafePerformIO (IO
       (FunPtr
          (GLenum
           -> GLint
           -> GLint
           -> GLint
           -> GLint
           -> GLint
           -> GLboolean
           -> IO ()))
     -> FunPtr
          (GLenum
           -> GLint
           -> GLint
           -> GLint
           -> GLint
           -> GLint
           -> GLboolean
           -> IO ()))
    -> IO
         (FunPtr
            (GLenum
             -> GLint
             -> GLint
             -> GLint
             -> GLint
             -> GLint
             -> GLboolean
             -> IO ()))
    -> FunPtr
         (GLenum
          -> GLint -> GLint -> GLint -> GLint -> GLint -> GLboolean -> IO ())
    forall a b. (a -> b) -> a -> b
    $ String
    -> IO
         (FunPtr
            (GLenum
             -> GLint
             -> GLint
             -> GLint
             -> GLint
             -> GLint
             -> GLboolean
             -> IO ()))
    forall a. String -> IO (FunPtr a)
    getCommand String
    "glTexImage2DMultisampleCoverageNV"

    -- glTexImage3D ----------------------------------------------------------------

    -- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glTexImage3D.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glTexImage3D.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glTexImage3D.xhtml OpenGL 4.x>.
    glTexImage3D
      :: MonadIO m
      => GLenum -- ^ @target@ of type [TextureTarget](Graphics-GL-Groups.html#TextureTarget).
      -> GLint -- ^ @level@ of type @CheckedInt32@.
      -> GLint -- ^ @internalformat@ of type [InternalFormat](Graphics-GL-Groups.html#InternalFormat).
      -> GLsizei -- ^ @width@.
      -> GLsizei -- ^ @height@.
      -> GLsizei -- ^ @depth@.
      -> GLint -- ^ @border@ of type @CheckedInt32@.
      -> GLenum -- ^ @format@ of type [PixelFormat](Graphics-GL-Groups.html#PixelFormat).
      -> GLenum -- ^ @type@ of type [PixelType](Graphics-GL-Groups.html#PixelType).
      -> Ptr a -- ^ @pixels@ pointing to @COMPSIZE(format,type,width,height,depth)@ elements of type @a@.
      -> m ()
    glTexImage3D :: forall (m :: * -> *) a.
    MonadIO m =>
    GLenum
    -> GLint
    -> GLint
    -> GLint
    -> GLint
    -> GLint
    -> GLint
    -> GLenum
    -> GLenum
    -> Ptr a
    -> m ()
    glTexImage3D GLenum
    v1 GLint
    v2 GLint
    v3 GLint
    v4 GLint
    v5 GLint
    v6 GLint
    v7 GLenum
    v8 GLenum
    v9 Ptr a
    v10 = IO () -> m ()
    forall a. IO a -> m a
    forall (m :: * -> *) a. MonadIO m => IO a -> m a
    liftIO (IO () -> m ()) -> IO () -> m ()
    forall a b. (a -> b) -> a -> b
    $ FunPtr
      (GLenum
       -> GLint
       -> GLint
       -> GLint
       -> GLint
       -> GLint
       -> GLint
       -> GLenum
       -> GLenum
       -> Ptr a
       -> IO ())
    -> GLenum
    -> GLint
    -> GLint
    -> GLint
    -> GLint
    -> GLint
    -> GLint
    -> GLenum
    -> GLenum
    -> Ptr a
    -> IO ()
    forall a.
    FunPtr
      (GLenum
       -> GLint
       -> GLint
       -> GLint
       -> GLint
       -> GLint
       -> GLint
       -> GLenum
       -> GLenum
       -> Ptr a
       -> IO ())
    -> GLenum
    -> GLint
    -> GLint
    -> GLint
    -> GLint
    -> GLint
    -> GLint
    -> GLenum
    -> GLenum
    -> Ptr a
    -> IO ()
    dyn777 FunPtr
      (GLenum
       -> GLint
       -> GLint
       -> GLint
       -> GLint
       -> GLint
       -> GLint
       -> GLenum
       -> GLenum
       -> Ptr a
       -> IO ())
    forall a.
    FunPtr
      (GLenum
       -> GLint
       -> GLint
       -> GLint
       -> GLint
       -> GLint
       -> GLint
       -> GLenum
       -> GLenum
       -> Ptr a
       -> IO ())
    ptr_glTexImage3D GLenum
    v1 GLint
    v2 GLint
    v3 GLint
    v4 GLint
    v5 GLint
    v6 GLint
    v7 GLenum
    v8 GLenum
    v9 Ptr a
    v10

    {-# NOINLINE ptr_glTexImage3D #-}
    ptr_glTexImage3D :: FunPtr (GLenum -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLint -> GLenum -> GLenum -> Ptr a -> IO ())
    ptr_glTexImage3D :: forall a.
    FunPtr
      (GLenum
       -> GLint
       -> GLint
       -> GLint
       -> GLint
       -> GLint
       -> GLint
       -> GLenum
       -> GLenum
       -> Ptr a
       -> IO ())
    ptr_glTexImage3D = IO
      (FunPtr
         (GLenum
          -> GLint
          -> GLint
          -> GLint
          -> GLint
          -> GLint
          -> GLint
          -> GLenum
          -> GLenum
          -> Ptr a
          -> IO ()))
    -> FunPtr
         (GLenum
          -> GLint
          -> GLint
          -> GLint
          -> GLint
          -> GLint
          -> GLint
          -> GLenum
          -> GLenum
          -> Ptr a
          -> IO ())
    forall a. IO a -> a
    unsafePerformIO (IO
       (FunPtr
          (GLenum
           -> GLint
           -> GLint
           -> GLint
           -> GLint
           -> GLint
           -> GLint
           -> GLenum
           -> GLenum
           -> Ptr a
           -> IO ()))
     -> FunPtr
          (GLenum
           -> GLint
           -> GLint
           -> GLint
           -> GLint
           -> GLint
           -> GLint
           -> GLenum
           -> GLenum
           -> Ptr a
           -> IO ()))
    -> IO
         (FunPtr
            (GLenum
             -> GLint
             -> GLint
             -> GLint
             -> GLint
             -> GLint
             -> GLint
             -> GLenum
             -> GLenum
             -> Ptr a
             -> IO ()))
    -> FunPtr
         (GLenum
          -> GLint
          -> GLint
          -> GLint
          -> GLint
          -> GLint
          -> GLint
          -> GLenum
          -> GLenum
          -> Ptr a
          -> IO ())
    forall a b. (a -> b) -> a -> b
    $ String
    -> IO
         (FunPtr
            (GLenum
             -> GLint
             -> GLint
             -> GLint
             -> GLint
             -> GLint
             -> GLint
             -> GLenum
             -> GLenum
             -> Ptr a
             -> IO ()))
    forall a. String -> IO (FunPtr a)
    getCommand String
    "glTexImage3D"

    -- glTexImage3DEXT -------------------------------------------------------------

    -- | This command is an alias for 'glTexImage3D'.
    glTexImage3DEXT
      :: MonadIO m
      => GLenum -- ^ @target@ of type [TextureTarget](Graphics-GL-Groups.html#TextureTarget).
      -> GLint -- ^ @level@ of type @CheckedInt32@.
      -> GLenum -- ^ @internalformat@ of type [InternalFormat](Graphics-GL-Groups.html#InternalFormat).
      -> GLsizei -- ^ @width@.
      -> GLsizei -- ^ @height@.
      -> GLsizei -- ^ @depth@.
      -> GLint -- ^ @border@ of type @CheckedInt32@.
      -> GLenum -- ^ @format@ of type [PixelFormat](Graphics-GL-Groups.html#PixelFormat).
      -> GLenum -- ^ @type@ of type [PixelType](Graphics-GL-Groups.html#PixelType).
      -> Ptr a -- ^ @pixels@ pointing to @COMPSIZE(format,type,width,height,depth)@ elements of type @a@.
      -> m ()
    glTexImage3DEXT :: forall (m :: * -> *) a.
    MonadIO m =>
    GLenum
    -> GLint
    -> GLenum
    -> GLint
    -> GLint
    -> GLint
    -> GLint
    -> GLenum
    -> GLenum
    -> Ptr a
    -> m ()
    glTexImage3DEXT GLenum
    v1 GLint
    v2 GLenum
    v3 GLint
    v4 GLint
    v5 GLint
    v6 GLint
    v7 GLenum
    v8 GLenum
    v9 Ptr a
    v10 = IO () -> m ()
    forall a. IO a -> m a
    forall (m :: * -> *) a. MonadIO m => IO a -> m a
    liftIO (IO () -> m ()) -> IO () -> m ()
    forall a b. (a -> b) -> a -> b
    $ FunPtr
      (GLenum
       -> GLint
       -> GLenum
       -> GLint
       -> GLint
       -> GLint
       -> GLint
       -> GLenum
       -> GLenum
       -> Ptr a
       -> IO ())
    -> GLenum
    -> GLint
    -> GLenum
    -> GLint
    -> GLint
    -> GLint
    -> GLint
    -> GLenum
    -> GLenum
    -> Ptr a
    -> IO ()
    forall a.
    FunPtr
      (GLenum
       -> GLint
       -> GLenum
       -> GLint
       -> GLint
       -> GLint
       -> GLint
       -> GLenum
       -> GLenum
       -> Ptr a
       -> IO ())
    -> GLenum
    -> GLint
    -> GLenum
    -> GLint
    -> GLint
    -> GLint
    -> GLint
    -> GLenum
    -> GLenum
    -> Ptr a
    -> IO ()
    dyn778 FunPtr
      (GLenum
       -> GLint
       -> GLenum
       -> GLint
       -> GLint
       -> GLint
       -> GLint
       -> GLenum
       -> GLenum
       -> Ptr a
       -> IO ())
    forall a.
    FunPtr
      (GLenum
       -> GLint
       -> GLenum
       -> GLint
       -> GLint
       -> GLint
       -> GLint
       -> GLenum
       -> GLenum
       -> Ptr a
       -> IO ())
    ptr_glTexImage3DEXT GLenum
    v1 GLint
    v2 GLenum
    v3 GLint
    v4 GLint
    v5 GLint
    v6 GLint
    v7 GLenum
    v8 GLenum
    v9 Ptr a
    v10

    {-# NOINLINE ptr_glTexImage3DEXT #-}
    ptr_glTexImage3DEXT :: FunPtr (GLenum -> GLint -> GLenum -> GLsizei -> GLsizei -> GLsizei -> GLint -> GLenum -> GLenum -> Ptr a -> IO ())
    ptr_glTexImage3DEXT :: forall a.
    FunPtr
      (GLenum
       -> GLint
       -> GLenum
       -> GLint
       -> GLint
       -> GLint
       -> GLint
       -> GLenum
       -> GLenum
       -> Ptr a
       -> IO ())
    ptr_glTexImage3DEXT = IO
      (FunPtr
         (GLenum
          -> GLint
          -> GLenum
          -> GLint
          -> GLint
          -> GLint
          -> GLint
          -> GLenum
          -> GLenum
          -> Ptr a
          -> IO ()))
    -> FunPtr
         (GLenum
          -> GLint
          -> GLenum
          -> GLint
          -> GLint
          -> GLint
          -> GLint
          -> GLenum
          -> GLenum
          -> Ptr a
          -> IO ())
    forall a. IO a -> a
    unsafePerformIO (IO
       (FunPtr
          (GLenum
           -> GLint
           -> GLenum
           -> GLint
           -> GLint
           -> GLint
           -> GLint
           -> GLenum
           -> GLenum
           -> Ptr a
           -> IO ()))
     -> FunPtr
          (GLenum
           -> GLint
           -> GLenum
           -> GLint
           -> GLint
           -> GLint
           -> GLint
           -> GLenum
           -> GLenum
           -> Ptr a
           -> IO ()))
    -> IO
         (FunPtr
            (GLenum
             -> GLint
             -> GLenum
             -> GLint
             -> GLint
             -> GLint
             -> GLint
             -> GLenum
             -> GLenum
             -> Ptr a
             -> IO ()))
    -> FunPtr
         (GLenum
          -> GLint
          -> GLenum
          -> GLint
          -> GLint
          -> GLint
          -> GLint
          -> GLenum
          -> GLenum
          -> Ptr a
          -> IO ())
    forall a b. (a -> b) -> a -> b
    $ String
    -> IO
         (FunPtr
            (GLenum
             -> GLint
             -> GLenum
             -> GLint
             -> GLint
             -> GLint
             -> GLint
             -> GLenum
             -> GLenum
             -> Ptr a
             -> IO ()))
    forall a. String -> IO (FunPtr a)
    getCommand String
    "glTexImage3DEXT"

    -- glTexImage3DMultisample -----------------------------------------------------

    -- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glTexImage3DMultisample.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glTexImage3DMultisample.xhtml OpenGL 4.x>.
    glTexImage3DMultisample
      :: MonadIO m
      => GLenum -- ^ @target@ of type [TextureTarget](Graphics-GL-Groups.html#TextureTarget).
      -> GLsizei -- ^ @samples@.
      -> GLenum -- ^ @internalformat@ of type [InternalFormat](Graphics-GL-Groups.html#InternalFormat).
      -> GLsizei -- ^ @width@.
      -> GLsizei -- ^ @height@.
      -> GLsizei -- ^ @depth@.
      -> GLboolean -- ^ @fixedsamplelocations@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
      -> m ()
    glTexImage3DMultisample :: forall (m :: * -> *).
    MonadIO m =>
    GLenum
    -> GLint -> GLenum -> GLint -> GLint -> GLint -> GLboolean -> m ()
    glTexImage3DMultisample GLenum
    v1 GLint
    v2 GLenum
    v3 GLint
    v4 GLint
    v5 GLint
    v6 GLboolean
    v7 = IO () -> m ()
    forall a. IO a -> m a
    forall (m :: * -> *) a. MonadIO m => IO a -> m a
    liftIO (IO () -> m ()) -> IO () -> m ()
    forall a b. (a -> b) -> a -> b
    $ FunPtr
      (GLenum
       -> GLint
       -> GLenum
       -> GLint
       -> GLint
       -> GLint
       -> GLboolean
       -> IO ())
    -> GLenum
    -> GLint
    -> GLenum
    -> GLint
    -> GLint
    -> GLint
    -> GLboolean
    -> IO ()
    dyn779 FunPtr
      (GLenum
       -> GLint
       -> GLenum
       -> GLint
       -> GLint
       -> GLint
       -> GLboolean
       -> IO ())
    ptr_glTexImage3DMultisample GLenum
    v1 GLint
    v2 GLenum
    v3 GLint
    v4 GLint
    v5 GLint
    v6 GLboolean
    v7

    {-# NOINLINE ptr_glTexImage3DMultisample #-}
    ptr_glTexImage3DMultisample :: FunPtr (GLenum -> GLsizei -> GLenum -> GLsizei -> GLsizei -> GLsizei -> GLboolean -> IO ())
    ptr_glTexImage3DMultisample :: FunPtr
      (GLenum
       -> GLint
       -> GLenum
       -> GLint
       -> GLint
       -> GLint
       -> GLboolean
       -> IO ())
    ptr_glTexImage3DMultisample = IO
      (FunPtr
         (GLenum
          -> GLint
          -> GLenum
          -> GLint
          -> GLint
          -> GLint
          -> GLboolean
          -> IO ()))
    -> FunPtr
         (GLenum
          -> GLint
          -> GLenum
          -> GLint
          -> GLint
          -> GLint
          -> GLboolean
          -> IO ())
    forall a. IO a -> a
    unsafePerformIO (IO
       (FunPtr
          (GLenum
           -> GLint
           -> GLenum
           -> GLint
           -> GLint
           -> GLint
           -> GLboolean
           -> IO ()))
     -> FunPtr
          (GLenum
           -> GLint
           -> GLenum
           -> GLint
           -> GLint
           -> GLint
           -> GLboolean
           -> IO ()))
    -> IO
         (FunPtr
            (GLenum
             -> GLint
             -> GLenum
             -> GLint
             -> GLint
             -> GLint
             -> GLboolean
             -> IO ()))
    -> FunPtr
         (GLenum
          -> GLint
          -> GLenum
          -> GLint
          -> GLint
          -> GLint
          -> GLboolean
          -> IO ())
    forall a b. (a -> b) -> a -> b
    $ String
    -> IO
         (FunPtr
            (GLenum
             -> GLint
             -> GLenum
             -> GLint
             -> GLint
             -> GLint
             -> GLboolean
             -> IO ()))
    forall a. String -> IO (FunPtr a)
    getCommand String
    "glTexImage3DMultisample"

    -- glTexImage3DMultisampleCoverageNV -------------------------------------------

    glTexImage3DMultisampleCoverageNV
      :: MonadIO m
      => GLenum -- ^ @target@ of type [TextureTarget](Graphics-GL-Groups.html#TextureTarget).
      -> GLsizei -- ^ @coverageSamples@.
      -> GLsizei -- ^ @colorSamples@.
      -> GLint -- ^ @internalFormat@.
      -> GLsizei -- ^ @width@.
      -> GLsizei -- ^ @height@.
      -> GLsizei -- ^ @depth@.
      -> GLboolean -- ^ @fixedSampleLocations@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
      -> m ()
    glTexImage3DMultisampleCoverageNV :: forall (m :: * -> *).
    MonadIO m =>
    GLenum
    -> GLint
    -> GLint
    -> GLint
    -> GLint
    -> GLint
    -> GLint
    -> GLboolean
    -> m ()
    glTexImage3DMultisampleCoverageNV GLenum
    v1 GLint
    v2 GLint
    v3 GLint
    v4 GLint
    v5 GLint
    v6 GLint
    v7 GLboolean
    v8 = IO () -> m ()
    forall a. IO a -> m a
    forall (m :: * -> *) a. MonadIO m => IO a -> m a
    liftIO (IO () -> m ()) -> IO () -> m ()
    forall a b. (a -> b) -> a -> b
    $ FunPtr
      (GLenum
       -> GLint
       -> GLint
       -> GLint
       -> GLint
       -> GLint
       -> GLint
       -> GLboolean
       -> IO ())
    -> GLenum
    -> GLint
    -> GLint
    -> GLint
    -> GLint
    -> GLint
    -> GLint
    -> GLboolean
    -> IO ()
    dyn780 FunPtr
      (GLenum
       -> GLint
       -> GLint
       -> GLint
       -> GLint
       -> GLint
       -> GLint
       -> GLboolean
       -> IO ())
    ptr_glTexImage3DMultisampleCoverageNV GLenum
    v1 GLint
    v2 GLint
    v3 GLint
    v4 GLint
    v5 GLint
    v6 GLint
    v7 GLboolean
    v8

    {-# NOINLINE ptr_glTexImage3DMultisampleCoverageNV #-}
    ptr_glTexImage3DMultisampleCoverageNV :: FunPtr (GLenum -> GLsizei -> GLsizei -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLboolean -> IO ())
    ptr_glTexImage3DMultisampleCoverageNV :: FunPtr
      (GLenum
       -> GLint
       -> GLint
       -> GLint
       -> GLint
       -> GLint
       -> GLint
       -> GLboolean
       -> IO ())
    ptr_glTexImage3DMultisampleCoverageNV = IO
      (FunPtr
         (GLenum
          -> GLint
          -> GLint
          -> GLint
          -> GLint
          -> GLint
          -> GLint
          -> GLboolean
          -> IO ()))
    -> FunPtr
         (GLenum
          -> GLint
          -> GLint
          -> GLint
          -> GLint
          -> GLint
          -> GLint
          -> GLboolean
          -> IO ())
    forall a. IO a -> a
    unsafePerformIO (IO
       (FunPtr
          (GLenum
           -> GLint
           -> GLint
           -> GLint
           -> GLint
           -> GLint
           -> GLint
           -> GLboolean
           -> IO ()))
     -> FunPtr
          (GLenum
           -> GLint
           -> GLint
           -> GLint
           -> GLint
           -> GLint
           -> GLint
           -> GLboolean
           -> IO ()))
    -> IO
         (FunPtr
            (GLenum
             -> GLint
             -> GLint
             -> GLint
             -> GLint
             -> GLint
             -> GLint
             -> GLboolean
             -> IO ()))
    -> FunPtr
         (GLenum
          -> GLint
          -> GLint
          -> GLint
          -> GLint
          -> GLint
          -> GLint
          -> GLboolean
          -> IO ())
    forall a b. (a -> b) -> a -> b
    $ String
    -> IO
         (FunPtr
            (GLenum
             -> GLint
             -> GLint
             -> GLint
             -> GLint
             -> GLint
             -> GLint
             -> GLboolean
             -> IO ()))
    forall a. String -> IO (FunPtr a)
    getCommand String
    "glTexImage3DMultisampleCoverageNV"

    -- glTexImage3DOES -------------------------------------------------------------

    glTexImage3DOES
      :: MonadIO m
      => GLenum -- ^ @target@ of type [TextureTarget](Graphics-GL-Groups.html#TextureTarget).
      -> GLint -- ^ @level@.
      -> GLenum -- ^ @internalformat@ of type [InternalFormat](Graphics-GL-Groups.html#InternalFormat).
      -> GLsizei -- ^ @width@.
      -> GLsizei -- ^ @height@.
      -> GLsizei -- ^ @depth@.
      -> GLint -- ^ @border@.
      -> GLenum -- ^ @format@ of type [PixelFormat](Graphics-GL-Groups.html#PixelFormat).
      -> GLenum -- ^ @type@ of type [PixelType](Graphics-GL-Groups.html#PixelType).
      -> Ptr a -- ^ @pixels@ pointing to @COMPSIZE(format,type,width,height,depth)@ elements of type @a@.
      -> m ()
    glTexImage3DOES :: forall (m :: * -> *) a.
    MonadIO m =>
    GLenum
    -> GLint
    -> GLenum
    -> GLint
    -> GLint
    -> GLint
    -> GLint
    -> GLenum
    -> GLenum
    -> Ptr a
    -> m ()
    glTexImage3DOES GLenum
    v1 GLint
    v2 GLenum
    v3 GLint
    v4 GLint
    v5 GLint
    v6 GLint
    v7 GLenum
    v8 GLenum
    v9 Ptr a
    v10 = IO () -> m ()
    forall a. IO a -> m a
    forall (m :: * -> *) a. MonadIO m => IO a -> m a
    liftIO (IO () -> m ()) -> IO () -> m ()
    forall a b. (a -> b) -> a -> b
    $ FunPtr
      (GLenum
       -> GLint
       -> GLenum
       -> GLint
       -> GLint
       -> GLint
       -> GLint
       -> GLenum
       -> GLenum
       -> Ptr a
       -> IO ())
    -> GLenum
    -> GLint
    -> GLenum
    -> GLint
    -> GLint
    -> GLint
    -> GLint
    -> GLenum
    -> GLenum
    -> Ptr a
    -> IO ()
    forall a.
    FunPtr
      (GLenum
       -> GLint
       -> GLenum
       -> GLint
       -> GLint
       -> GLint
       -> GLint
       -> GLenum
       -> GLenum
       -> Ptr a
       -> IO ())
    -> GLenum
    -> GLint
    -> GLenum
    -> GLint
    -> GLint
    -> GLint
    -> GLint
    -> GLenum
    -> GLenum
    -> Ptr a
    -> IO ()
    dyn778 FunPtr
      (GLenum
       -> GLint
       -> GLenum
       -> GLint
       -> GLint
       -> GLint
       -> GLint
       -> GLenum
       -> GLenum
       -> Ptr a
       -> IO ())
    forall a.
    FunPtr
      (GLenum
       -> GLint
       -> GLenum
       -> GLint
       -> GLint
       -> GLint
       -> GLint
       -> GLenum
       -> GLenum
       -> Ptr a
       -> IO ())
    ptr_glTexImage3DOES GLenum
    v1 GLint
    v2 GLenum
    v3 GLint
    v4 GLint
    v5 GLint
    v6 GLint
    v7 GLenum
    v8 GLenum
    v9 Ptr a
    v10

    {-# NOINLINE ptr_glTexImage3DOES #-}
    ptr_glTexImage3DOES :: FunPtr (GLenum -> GLint -> GLenum -> GLsizei -> GLsizei -> GLsizei -> GLint -> GLenum -> GLenum -> Ptr a -> IO ())
    ptr_glTexImage3DOES :: forall a.
    FunPtr
      (GLenum
       -> GLint
       -> GLenum
       -> GLint
       -> GLint
       -> GLint
       -> GLint
       -> GLenum
       -> GLenum
       -> Ptr a
       -> IO ())
    ptr_glTexImage3DOES = IO
      (FunPtr
         (GLenum
          -> GLint
          -> GLenum
          -> GLint
          -> GLint
          -> GLint
          -> GLint
          -> GLenum
          -> GLenum
          -> Ptr a
          -> IO ()))
    -> FunPtr
         (GLenum
          -> GLint
          -> GLenum
          -> GLint
          -> GLint
          -> GLint
          -> GLint
          -> GLenum
          -> GLenum
          -> Ptr a
          -> IO ())
    forall a. IO a -> a
    unsafePerformIO (IO
       (FunPtr
          (GLenum
           -> GLint
           -> GLenum
           -> GLint
           -> GLint
           -> GLint
           -> GLint
           -> GLenum
           -> GLenum
           -> Ptr a
           -> IO ()))
     -> FunPtr
          (GLenum
           -> GLint
           -> GLenum
           -> GLint
           -> GLint
           -> GLint
           -> GLint
           -> GLenum
           -> GLenum
           -> Ptr a
           -> IO ()))
    -> IO
         (FunPtr
            (GLenum
             -> GLint
             -> GLenum
             -> GLint
             -> GLint
             -> GLint
             -> GLint
             -> GLenum
             -> GLenum
             -> Ptr a
             -> IO ()))
    -> FunPtr
         (GLenum
          -> GLint
          -> GLenum
          -> GLint
          -> GLint
          -> GLint
          -> GLint
          -> GLenum
          -> GLenum
          -> Ptr a
          -> IO ())
    forall a b. (a -> b) -> a -> b
    $ String
    -> IO
         (FunPtr
            (GLenum
             -> GLint
             -> GLenum
             -> GLint
             -> GLint
             -> GLint
             -> GLint
             -> GLenum
             -> GLenum
             -> Ptr a
             -> IO ()))
    forall a. String -> IO (FunPtr a)
    getCommand String
    "glTexImage3DOES"

    -- glTexImage4DSGIS ------------------------------------------------------------

    glTexImage4DSGIS
      :: MonadIO m
      => GLenum -- ^ @target@ of type [TextureTarget](Graphics-GL-Groups.html#TextureTarget).
      -> GLint -- ^ @level@ of type @CheckedInt32@.
      -> GLenum -- ^ @internalformat@ of type [InternalFormat](Graphics-GL-Groups.html#InternalFormat).
      -> GLsizei -- ^ @width@.
      -> GLsizei -- ^ @height@.
      -> GLsizei -- ^ @depth@.
      -> GLsizei -- ^ @size4d@.
      -> GLint -- ^ @border@ of type @CheckedInt32@.
      -> GLenum -- ^ @format@ of type [PixelFormat](Graphics-GL-Groups.html#PixelFormat).
      -> GLenum -- ^ @type@ of type [PixelType](Graphics-GL-Groups.html#PixelType).
      -> Ptr a -- ^ @pixels@ pointing to @COMPSIZE(format,type,width,height,depth,size4d)@ elements of type @a@.
      -> m ()
    glTexImage4DSGIS :: forall (m :: * -> *) a.
    MonadIO m =>
    GLenum
    -> GLint
    -> GLenum
    -> GLint
    -> GLint
    -> GLint
    -> GLint
    -> GLint
    -> GLenum
    -> GLenum
    -> Ptr a
    -> m ()
    glTexImage4DSGIS GLenum
    v1 GLint
    v2 GLenum
    v3 GLint
    v4 GLint
    v5 GLint
    v6 GLint
    v7 GLint
    v8 GLenum
    v9 GLenum
    v10 Ptr a
    v11 = IO () -> m ()
    forall a. IO a -> m a
    forall (m :: * -> *) a. MonadIO m => IO a -> m a
    liftIO (IO () -> m ()) -> IO () -> m ()
    forall a b. (a -> b) -> a -> b
    $ FunPtr
      (GLenum
       -> GLint
       -> GLenum
       -> GLint
       -> GLint
       -> GLint
       -> GLint
       -> GLint
       -> GLenum
       -> GLenum
       -> Ptr a
       -> IO ())
    -> GLenum
    -> GLint
    -> GLenum
    -> GLint
    -> GLint
    -> GLint
    -> GLint
    -> GLint
    -> GLenum
    -> GLenum
    -> Ptr a
    -> IO ()
    forall a.
    FunPtr
      (GLenum
       -> GLint
       -> GLenum
       -> GLint
       -> GLint
       -> GLint
       -> GLint
       -> GLint
       -> GLenum
       -> GLenum
       -> Ptr a
       -> IO ())
    -> GLenum
    -> GLint
    -> GLenum
    -> GLint
    -> GLint
    -> GLint
    -> GLint
    -> GLint
    -> GLenum
    -> GLenum
    -> Ptr a
    -> IO ()
    dyn781 FunPtr
      (GLenum
       -> GLint
       -> GLenum
       -> GLint
       -> GLint
       -> GLint
       -> GLint
       -> GLint
       -> GLenum
       -> GLenum
       -> Ptr a
       -> IO ())
    forall a.
    FunPtr
      (GLenum
       -> GLint
       -> GLenum
       -> GLint
       -> GLint
       -> GLint
       -> GLint
       -> GLint
       -> GLenum
       -> GLenum
       -> Ptr a
       -> IO ())
    ptr_glTexImage4DSGIS GLenum
    v1 GLint
    v2 GLenum
    v3 GLint
    v4 GLint
    v5 GLint
    v6 GLint
    v7 GLint
    v8 GLenum
    v9 GLenum
    v10 Ptr a
    v11

    {-# NOINLINE ptr_glTexImage4DSGIS #-}
    ptr_glTexImage4DSGIS :: FunPtr (GLenum -> GLint -> GLenum -> GLsizei -> GLsizei -> GLsizei -> GLsizei -> GLint -> GLenum -> GLenum -> Ptr a -> IO ())
    ptr_glTexImage4DSGIS :: forall a.
    FunPtr
      (GLenum
       -> GLint
       -> GLenum
       -> GLint
       -> GLint
       -> GLint
       -> GLint
       -> GLint
       -> GLenum
       -> GLenum
       -> Ptr a
       -> IO ())
    ptr_glTexImage4DSGIS = IO
      (FunPtr
         (GLenum
          -> GLint
          -> GLenum
          -> GLint
          -> GLint
          -> GLint
          -> GLint
          -> GLint
          -> GLenum
          -> GLenum
          -> Ptr a
          -> IO ()))
    -> FunPtr
         (GLenum
          -> GLint
          -> GLenum
          -> GLint
          -> GLint
          -> GLint
          -> GLint
          -> GLint
          -> GLenum
          -> GLenum
          -> Ptr a
          -> IO ())
    forall a. IO a -> a
    unsafePerformIO (IO
       (FunPtr
          (GLenum
           -> GLint
           -> GLenum
           -> GLint
           -> GLint
           -> GLint
           -> GLint
           -> GLint
           -> GLenum
           -> GLenum
           -> Ptr a
           -> IO ()))
     -> FunPtr
          (GLenum
           -> GLint
           -> GLenum
           -> GLint
           -> GLint
           -> GLint
           -> GLint
           -> GLint
           -> GLenum
           -> GLenum
           -> Ptr a
           -> IO ()))
    -> IO
         (FunPtr
            (GLenum
             -> GLint
             -> GLenum
             -> GLint
             -> GLint
             -> GLint
             -> GLint
             -> GLint
             -> GLenum
             -> GLenum
             -> Ptr a
             -> IO ()))
    -> FunPtr
         (GLenum
          -> GLint
          -> GLenum
          -> GLint
          -> GLint
          -> GLint
          -> GLint
          -> GLint
          -> GLenum
          -> GLenum
          -> Ptr a
          -> IO ())
    forall a b. (a -> b) -> a -> b
    $ String
    -> IO
         (FunPtr
            (GLenum
             -> GLint
             -> GLenum
             -> GLint
             -> GLint
             -> GLint
             -> GLint
             -> GLint
             -> GLenum
             -> GLenum
             -> Ptr a
             -> IO ()))
    forall a. String -> IO (FunPtr a)
    getCommand String
    "glTexImage4DSGIS"

    -- glTexPageCommitmentARB ------------------------------------------------------

    glTexPageCommitmentARB
      :: MonadIO m
      => GLenum -- ^ @target@.
      -> GLint -- ^ @level@.
      -> GLint -- ^ @xoffset@.
      -> GLint -- ^ @yoffset@.
      -> GLint -- ^ @zoffset@.
      -> GLsizei -- ^ @width@.
      -> GLsizei -- ^ @height@.
      -> GLsizei -- ^ @depth@.
      -> GLboolean -- ^ @commit@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
      -> m ()
    glTexPageCommitmentARB :: forall (m :: * -> *).
    MonadIO m =>
    GLenum
    -> GLint
    -> GLint
    -> GLint
    -> GLint
    -> GLint
    -> GLint
    -> GLint
    -> GLboolean
    -> m ()
    glTexPageCommitmentARB GLenum
    v1 GLint
    v2 GLint
    v3 GLint
    v4 GLint
    v5 GLint
    v6 GLint
    v7 GLint
    v8 GLboolean
    v9 = IO () -> m ()
    forall a. IO a -> m a
    forall (m :: * -> *) a. MonadIO m => IO a -> m a
    liftIO (IO () -> m ()) -> IO () -> m ()
    forall a b. (a -> b) -> a -> b
    $ FunPtr
      (GLenum
       -> GLint
       -> GLint
       -> GLint
       -> GLint
       -> GLint
       -> GLint
       -> GLint
       -> GLboolean
       -> IO ())
    -> GLenum
    -> GLint
    -> GLint
    -> GLint
    -> GLint
    -> GLint
    -> GLint
    -> GLint
    -> GLboolean
    -> IO ()
    dyn782 FunPtr
      (GLenum
       -> GLint
       -> GLint
       -> GLint
       -> GLint
       -> GLint
       -> GLint
       -> GLint
       -> GLboolean
       -> IO ())
    ptr_glTexPageCommitmentARB GLenum
    v1 GLint
    v2 GLint
    v3 GLint
    v4 GLint
    v5 GLint
    v6 GLint
    v7 GLint
    v8 GLboolean
    v9

    {-# NOINLINE ptr_glTexPageCommitmentARB #-}
    ptr_glTexPageCommitmentARB :: FunPtr (GLenum -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLboolean -> IO ())
    ptr_glTexPageCommitmentARB :: FunPtr
      (GLenum
       -> GLint
       -> GLint
       -> GLint
       -> GLint
       -> GLint
       -> GLint
       -> GLint
       -> GLboolean
       -> IO ())
    ptr_glTexPageCommitmentARB = IO
      (FunPtr
         (GLenum
          -> GLint
          -> GLint
          -> GLint
          -> GLint
          -> GLint
          -> GLint
          -> GLint
          -> GLboolean
          -> IO ()))
    -> FunPtr
         (GLenum
          -> GLint
          -> GLint
          -> GLint
          -> GLint
          -> GLint
          -> GLint
          -> GLint
          -> GLboolean
          -> IO ())
    forall a. IO a -> a
    unsafePerformIO (IO
       (FunPtr
          (GLenum
           -> GLint
           -> GLint
           -> GLint
           -> GLint
           -> GLint
           -> GLint
           -> GLint
           -> GLboolean
           -> IO ()))
     -> FunPtr
          (GLenum
           -> GLint
           -> GLint
           -> GLint
           -> GLint
           -> GLint
           -> GLint
           -> GLint
           -> GLboolean
           -> IO ()))
    -> IO
         (FunPtr
            (GLenum
             -> GLint
             -> GLint
             -> GLint
             -> GLint
             -> GLint
             -> GLint
             -> GLint
             -> GLboolean
             -> IO ()))
    -> FunPtr
         (GLenum
          -> GLint
          -> GLint
          -> GLint
          -> GLint
          -> GLint
          -> GLint
          -> GLint
          -> GLboolean
          -> IO ())
    forall a b. (a -> b) -> a -> b
    $ String
    -> IO
         (FunPtr
            (GLenum
             -> GLint
             -> GLint
             -> GLint
             -> GLint
             -> GLint
             -> GLint
             -> GLint
             -> GLboolean
             -> IO ()))
    forall a. String -> IO (FunPtr a)
    getCommand String
    "glTexPageCommitmentARB"

    -- glTexPageCommitmentEXT ------------------------------------------------------

    -- | This command is an alias for 'glTexPageCommitmentARB'.
    glTexPageCommitmentEXT
      :: MonadIO m
      => GLenum -- ^ @target@.
      -> GLint -- ^ @level@.
      -> GLint -- ^ @xoffset@.
      -> GLint -- ^ @yoffset@.
      -> GLint -- ^ @zoffset@.
      -> GLsizei -- ^ @width@.
      -> GLsizei -- ^ @height@.
      -> GLsizei -- ^ @depth@.
      -> GLboolean -- ^ @commit@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
      -> m ()
    glTexPageCommitmentEXT :: forall (m :: * -> *).
    MonadIO m =>
    GLenum
    -> GLint
    -> GLint
    -> GLint
    -> GLint
    -> GLint
    -> GLint
    -> GLint
    -> GLboolean
    -> m ()
    glTexPageCommitmentEXT GLenum
    v1 GLint
    v2 GLint
    v3 GLint
    v4 GLint
    v5 GLint
    v6 GLint
    v7 GLint
    v8 GLboolean
    v9 = IO () -> m ()
    forall a. IO a -> m a
    forall (m :: * -> *) a. MonadIO m => IO a -> m a
    liftIO (IO () -> m ()) -> IO () -> m ()
    forall a b. (a -> b) -> a -> b
    $ FunPtr
      (GLenum
       -> GLint
       -> GLint
       -> GLint
       -> GLint
       -> GLint
       -> GLint
       -> GLint
       -> GLboolean
       -> IO ())
    -> GLenum
    -> GLint
    -> GLint
    -> GLint
    -> GLint
    -> GLint
    -> GLint
    -> GLint
    -> GLboolean
    -> IO ()
    dyn782 FunPtr
      (GLenum
       -> GLint
       -> GLint
       -> GLint
       -> GLint
       -> GLint
       -> GLint
       -> GLint
       -> GLboolean
       -> IO ())
    ptr_glTexPageCommitmentEXT GLenum
    v1 GLint
    v2 GLint
    v3 GLint
    v4 GLint
    v5 GLint
    v6 GLint
    v7 GLint
    v8 GLboolean
    v9

    {-# NOINLINE ptr_glTexPageCommitmentEXT #-}
    ptr_glTexPageCommitmentEXT :: FunPtr (GLenum -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLboolean -> IO ())
    ptr_glTexPageCommitmentEXT :: FunPtr
      (GLenum
       -> GLint
       -> GLint
       -> GLint
       -> GLint
       -> GLint
       -> GLint
       -> GLint
       -> GLboolean
       -> IO ())
    ptr_glTexPageCommitmentEXT = IO
      (FunPtr
         (GLenum
          -> GLint
          -> GLint
          -> GLint
          -> GLint
          -> GLint
          -> GLint
          -> GLint
          -> GLboolean
          -> IO ()))
    -> FunPtr
         (GLenum
          -> GLint
          -> GLint
          -> GLint
          -> GLint
          -> GLint
          -> GLint
          -> GLint
          -> GLboolean
          -> IO ())
    forall a. IO a -> a
    unsafePerformIO (IO
       (FunPtr
          (GLenum
           -> GLint
           -> GLint
           -> GLint
           -> GLint
           -> GLint
           -> GLint
           -> GLint
           -> GLboolean
           -> IO ()))
     -> FunPtr
          (GLenum
           -> GLint
           -> GLint
           -> GLint
           -> GLint
           -> GLint
           -> GLint
           -> GLint
           -> GLboolean
           -> IO ()))
    -> IO
         (FunPtr
            (GLenum
             -> GLint
             -> GLint
             -> GLint
             -> GLint
             -> GLint
             -> GLint
             -> GLint
             -> GLboolean
             -> IO ()))
    -> FunPtr
         (GLenum
          -> GLint
          -> GLint
          -> GLint
          -> GLint
          -> GLint
          -> GLint
          -> GLint
          -> GLboolean
          -> IO ())
    forall a b. (a -> b) -> a -> b
    $ String
    -> IO
         (FunPtr
            (GLenum
             -> GLint
             -> GLint
             -> GLint
             -> GLint
             -> GLint
             -> GLint
             -> GLint
             -> GLboolean
             -> IO ()))
    forall a. String -> IO (FunPtr a)
    getCommand String
    "glTexPageCommitmentEXT"

    -- glTexParameterIiv -----------------------------------------------------------

    -- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glTexParameter.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glTexParameter.xhtml OpenGL 4.x>.
    glTexParameterIiv
      :: MonadIO m
      => GLenum -- ^ @target@ of type [TextureTarget](Graphics-GL-Groups.html#TextureTarget).
      -> GLenum -- ^ @pname@ of type [TextureParameterName](Graphics-GL-Groups.html#TextureParameterName).
      -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLint@.
      -> m ()
    glTexParameterIiv :: forall (m :: * -> *).
    MonadIO m =>
    GLenum -> GLenum -> Ptr GLint -> m ()
    glTexParameterIiv GLenum
    v1 GLenum
    v2 Ptr GLint
    v3 = IO () -> m ()
    forall a. IO a -> m a
    forall (m :: * -> *) a. MonadIO m => IO a -> m a
    liftIO (IO () -> m ()) -> IO () -> m ()
    forall a b. (a -> b) -> a -> b
    $ FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
    -> GLenum -> GLenum -> Ptr GLint -> IO ()
    dyn140 FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
    ptr_glTexParameterIiv GLenum
    v1 GLenum
    v2 Ptr GLint
    v3

    {-# NOINLINE ptr_glTexParameterIiv #-}
    ptr_glTexParameterIiv :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
    ptr_glTexParameterIiv :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
    ptr_glTexParameterIiv = IO (FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ()))
    -> FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
    forall a. IO a -> a
    unsafePerformIO (IO (FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ()))
     -> FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ()))
    -> IO (FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ()))
    -> FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
    forall a b. (a -> b) -> a -> b
    $ String -> IO (FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ()))
    forall a. String -> IO (FunPtr a)
    getCommand String
    "glTexParameterIiv"

    -- glTexParameterIivEXT --------------------------------------------------------

    -- | This command is an alias for 'glTexParameterIiv'.
    glTexParameterIivEXT
      :: MonadIO m
      => GLenum -- ^ @target@ of type [TextureTarget](Graphics-GL-Groups.html#TextureTarget).
      -> GLenum -- ^ @pname@ of type [TextureParameterName](Graphics-GL-Groups.html#TextureParameterName).
      -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLint@.
      -> m ()
    glTexParameterIivEXT :: forall (m :: * -> *).
    MonadIO m =>
    GLenum -> GLenum -> Ptr GLint -> m ()
    glTexParameterIivEXT GLenum
    v1 GLenum
    v2 Ptr GLint
    v3 = IO () -> m ()
    forall a. IO a -> m a
    forall (m :: * -> *) a. MonadIO m => IO a -> m a
    liftIO (IO () -> m ()) -> IO () -> m ()
    forall a b. (a -> b) -> a -> b
    $ FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
    -> GLenum -> GLenum -> Ptr GLint -> IO ()
    dyn140 FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
    ptr_glTexParameterIivEXT GLenum
    v1 GLenum
    v2 Ptr GLint
    v3

    {-# NOINLINE ptr_glTexParameterIivEXT #-}
    ptr_glTexParameterIivEXT :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
    ptr_glTexParameterIivEXT :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
    ptr_glTexParameterIivEXT = IO (FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ()))
    -> FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
    forall a. IO a -> a
    unsafePerformIO (IO (FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ()))
     -> FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ()))
    -> IO (FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ()))
    -> FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
    forall a b. (a -> b) -> a -> b
    $ String -> IO (FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ()))
    forall a. String -> IO (FunPtr a)
    getCommand String
    "glTexParameterIivEXT"

    -- glTexParameterIivOES --------------------------------------------------------

    -- | This command is an alias for 'glTexParameterIiv'.
    glTexParameterIivOES
      :: MonadIO m
      => GLenum -- ^ @target@ of type [TextureTarget](Graphics-GL-Groups.html#TextureTarget).
      -> GLenum -- ^ @pname@ of type [TextureParameterName](Graphics-GL-Groups.html#TextureParameterName).
      -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLint@.
      -> m ()
    glTexParameterIivOES :: forall (m :: * -> *).
    MonadIO m =>
    GLenum -> GLenum -> Ptr GLint -> m ()
    glTexParameterIivOES GLenum
    v1 GLenum
    v2 Ptr GLint
    v3 = IO () -> m ()
    forall a. IO a -> m a
    forall (m :: * -> *) a. MonadIO m => IO a -> m a
    liftIO (IO () -> m ()) -> IO () -> m ()
    forall a b. (a -> b) -> a -> b
    $ FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
    -> GLenum -> GLenum -> Ptr GLint -> IO ()
    dyn140 FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
    ptr_glTexParameterIivOES GLenum
    v1 GLenum
    v2 Ptr GLint
    v3

    {-# NOINLINE ptr_glTexParameterIivOES #-}
    ptr_glTexParameterIivOES :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
    ptr_glTexParameterIivOES :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
    ptr_glTexParameterIivOES = IO (FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ()))
    -> FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
    forall a. IO a -> a
    unsafePerformIO (IO (FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ()))
     -> FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ()))
    -> IO (FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ()))
    -> FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
    forall a b. (a -> b) -> a -> b
    $ String -> IO (FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ()))
    forall a. String -> IO (FunPtr a)
    getCommand String
    "glTexParameterIivOES"

    -- glTexParameterIuiv ----------------------------------------------------------

    -- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glTexParameter.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glTexParameter.xhtml OpenGL 4.x>.
    glTexParameterIuiv
      :: MonadIO m
      => GLenum -- ^ @target@ of type [TextureTarget](Graphics-GL-Groups.html#TextureTarget).
      -> GLenum -- ^ @pname@ of type [TextureParameterName](Graphics-GL-Groups.html#TextureParameterName).
      -> Ptr GLuint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLuint@.
      -> m ()
    glTexParameterIuiv :: forall (m :: * -> *).
    MonadIO m =>
    GLenum -> GLenum -> Ptr GLenum -> m ()
    glTexParameterIuiv GLenum
    v1 GLenum
    v2 Ptr GLenum
    v3 = IO () -> m ()
    forall a. IO a -> m a
    forall (m :: * -> *) a. MonadIO m => IO a -> m a
    liftIO (IO () -> m ()) -> IO () -> m ()
    forall a b. (a -> b) -> a -> b
    $ FunPtr (GLenum -> GLenum -> Ptr GLenum -> IO ())
    -> GLenum -> GLenum -> Ptr GLenum -> IO ()
    dyn432 FunPtr (GLenum -> GLenum -> Ptr GLenum -> IO ())
    ptr_glTexParameterIuiv GLenum
    v1 GLenum
    v2 Ptr GLenum
    v3

    {-# NOINLINE ptr_glTexParameterIuiv #-}
    ptr_glTexParameterIuiv :: FunPtr (GLenum -> GLenum -> Ptr GLuint -> IO ())
    ptr_glTexParameterIuiv :: FunPtr (GLenum -> GLenum -> Ptr GLenum -> IO ())
    ptr_glTexParameterIuiv = IO (FunPtr (GLenum -> GLenum -> Ptr GLenum -> IO ()))
    -> FunPtr (GLenum -> GLenum -> Ptr GLenum -> IO ())
    forall a. IO a -> a
    unsafePerformIO (IO (FunPtr (GLenum -> GLenum -> Ptr GLenum -> IO ()))
     -> FunPtr (GLenum -> GLenum -> Ptr GLenum -> IO ()))
    -> IO (FunPtr (GLenum -> GLenum -> Ptr GLenum -> IO ()))
    -> FunPtr (GLenum -> GLenum -> Ptr GLenum -> IO ())
    forall a b. (a -> b) -> a -> b
    $ String -> IO (FunPtr (GLenum -> GLenum -> Ptr GLenum -> IO ()))
    forall a. String -> IO (FunPtr a)
    getCommand String
    "glTexParameterIuiv"

    -- glTexParameterIuivEXT -------------------------------------------------------

    -- | This command is an alias for 'glTexParameterIuiv'.
    glTexParameterIuivEXT
      :: MonadIO m
      => GLenum -- ^ @target@ of type [TextureTarget](Graphics-GL-Groups.html#TextureTarget).
      -> GLenum -- ^ @pname@ of type [TextureParameterName](Graphics-GL-Groups.html#TextureParameterName).
      -> Ptr GLuint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLuint@.
      -> m ()
    glTexParameterIuivEXT :: forall (m :: * -> *).
    MonadIO m =>
    GLenum -> GLenum -> Ptr GLenum -> m ()
    glTexParameterIuivEXT GLenum
    v1 GLenum
    v2 Ptr GLenum
    v3 = IO () -> m ()
    forall a. IO a -> m a
    forall (m :: * -> *) a. MonadIO m => IO a -> m a
    liftIO (IO () -> m ()) -> IO () -> m ()
    forall a b. (a -> b) -> a -> b
    $ FunPtr (GLenum -> GLenum -> Ptr GLenum -> IO ())
    -> GLenum -> GLenum -> Ptr GLenum -> IO ()
    dyn432 FunPtr (GLenum -> GLenum -> Ptr GLenum -> IO ())
    ptr_glTexParameterIuivEXT GLenum
    v1 GLenum
    v2 Ptr GLenum
    v3

    {-# NOINLINE ptr_glTexParameterIuivEXT #-}
    ptr_glTexParameterIuivEXT :: FunPtr (GLenum -> GLenum -> Ptr GLuint -> IO ())
    ptr_glTexParameterIuivEXT :: FunPtr (GLenum -> GLenum -> Ptr GLenum -> IO ())
    ptr_glTexParameterIuivEXT = IO (FunPtr (GLenum -> GLenum -> Ptr GLenum -> IO ()))
    -> FunPtr (GLenum -> GLenum -> Ptr GLenum -> IO ())
    forall a. IO a -> a
    unsafePerformIO (IO (FunPtr (GLenum -> GLenum -> Ptr GLenum -> IO ()))
     -> FunPtr (GLenum -> GLenum -> Ptr GLenum -> IO ()))
    -> IO (FunPtr (GLenum -> GLenum -> Ptr GLenum -> IO ()))
    -> FunPtr (GLenum -> GLenum -> Ptr GLenum -> IO ())
    forall a b. (a -> b) -> a -> b
    $ String -> IO (FunPtr (GLenum -> GLenum -> Ptr GLenum -> IO ()))
    forall a. String -> IO (FunPtr a)
    getCommand String
    "glTexParameterIuivEXT"

    -- glTexParameterIuivOES -------------------------------------------------------

    -- | This command is an alias for 'glTexParameterIuiv'.
    glTexParameterIuivOES
      :: MonadIO m
      => GLenum -- ^ @target@ of type [TextureTarget](Graphics-GL-Groups.html#TextureTarget).
      -> GLenum -- ^ @pname@ of type [TextureParameterName](Graphics-GL-Groups.html#TextureParameterName).
      -> Ptr GLuint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLuint@.
      -> m ()
    glTexParameterIuivOES :: forall (m :: * -> *).
    MonadIO m =>
    GLenum -> GLenum -> Ptr GLenum -> m ()
    glTexParameterIuivOES GLenum
    v1 GLenum
    v2 Ptr GLenum
    v3 = IO () -> m ()
    forall a. IO a -> m a
    forall (m :: * -> *) a. MonadIO m => IO a -> m a
    liftIO (IO () -> m ()) -> IO () -> m ()
    forall a b. (a -> b) -> a -> b
    $ FunPtr (GLenum -> GLenum -> Ptr GLenum -> IO ())
    -> GLenum -> GLenum -> Ptr GLenum -> IO ()
    dyn432 FunPtr (GLenum -> GLenum -> Ptr GLenum -> IO ())
    ptr_glTexParameterIuivOES GLenum
    v1 GLenum
    v2 Ptr GLenum
    v3

    {-# NOINLINE ptr_glTexParameterIuivOES #-}
    ptr_glTexParameterIuivOES :: FunPtr (GLenum -> GLenum -> Ptr GLuint -> IO ())
    ptr_glTexParameterIuivOES :: FunPtr (GLenum -> GLenum -> Ptr GLenum -> IO ())
    ptr_glTexParameterIuivOES = IO (FunPtr (GLenum -> GLenum -> Ptr GLenum -> IO ()))
    -> FunPtr (GLenum -> GLenum -> Ptr GLenum -> IO ())
    forall a. IO a -> a
    unsafePerformIO (IO (FunPtr (GLenum -> GLenum -> Ptr GLenum -> IO ()))
     -> FunPtr (GLenum -> GLenum -> Ptr GLenum -> IO ()))
    -> IO (FunPtr (GLenum -> GLenum -> Ptr GLenum -> IO ()))
    -> FunPtr (GLenum -> GLenum -> Ptr GLenum -> IO ())
    forall a b. (a -> b) -> a -> b
    $ String -> IO (FunPtr (GLenum -> GLenum -> Ptr GLenum -> IO ()))
    forall a. String -> IO (FunPtr a)
    getCommand String
    "glTexParameterIuivOES"

    -- glTexParameterf -------------------------------------------------------------

    -- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glTexParameter.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glTexParameter.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glTexParameter.xhtml OpenGL 4.x>.
    glTexParameterf
      :: MonadIO m
      => GLenum -- ^ @target@ of type [TextureTarget](Graphics-GL-Groups.html#TextureTarget).
      -> GLenum -- ^ @pname@ of type [TextureParameterName](Graphics-GL-Groups.html#TextureParameterName).
      -> GLfloat -- ^ @param@ of type @CheckedFloat32@.
      -> m ()
    glTexParameterf :: forall (m :: * -> *).
    MonadIO m =>
    GLenum -> GLenum -> GLfloat -> m ()
    glTexParameterf GLenum
    v1 GLenum
    v2 GLfloat
    v3 = IO () -> m ()
    forall a. IO a -> m a
    forall (m :: * -> *) a. MonadIO m => IO a -> m a
    liftIO (IO () -> m ()) -> IO () -> m ()
    forall a b. (a -> b) -> a -> b
    $ FunPtr (GLenum -> GLenum -> GLfloat -> IO ())
    -> GLenum -> GLenum -> GLfloat -> IO ()
    dyn168 FunPtr (GLenum -> GLenum -> GLfloat -> IO ())
    ptr_glTexParameterf GLenum
    v1 GLenum
    v2 GLfloat
    v3

    {-# NOINLINE ptr_glTexParameterf #-}
    ptr_glTexParameterf :: FunPtr (GLenum -> GLenum -> GLfloat -> IO ())
    ptr_glTexParameterf :: FunPtr (GLenum -> GLenum -> GLfloat -> IO ())
    ptr_glTexParameterf = IO (FunPtr (GLenum -> GLenum -> GLfloat -> IO ()))
    -> FunPtr (GLenum -> GLenum -> GLfloat -> IO ())
    forall a. IO a -> a
    unsafePerformIO (IO (FunPtr (GLenum -> GLenum -> GLfloat -> IO ()))
     -> FunPtr (GLenum -> GLenum -> GLfloat -> IO ()))
    -> IO (FunPtr (GLenum -> GLenum -> GLfloat -> IO ()))
    -> FunPtr (GLenum -> GLenum -> GLfloat -> IO ())
    forall a b. (a -> b) -> a -> b
    $ String -> IO (FunPtr (GLenum -> GLenum -> GLfloat -> IO ()))
    forall a. String -> IO (FunPtr a)
    getCommand String
    "glTexParameterf"

    -- glTexParameterfv ------------------------------------------------------------

    -- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glTexParameter.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glTexParameter.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glTexParameter.xhtml OpenGL 4.x>.
    glTexParameterfv
      :: MonadIO m
      => GLenum -- ^ @target@ of type [TextureTarget](Graphics-GL-Groups.html#TextureTarget).
      -> GLenum -- ^ @pname@ of type [TextureParameterName](Graphics-GL-Groups.html#TextureParameterName).
      -> Ptr GLfloat -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @CheckedFloat32@.
      -> m ()
    glTexParameterfv :: forall (m :: * -> *).
    MonadIO m =>
    GLenum -> GLenum -> Ptr GLfloat -> m ()
    glTexParameterfv GLenum
    v1 GLenum
    v2 Ptr GLfloat
    v3 = IO () -> m ()
    forall a. IO a -> m a
    forall (m :: * -> *) a. MonadIO m => IO a -> m a
    liftIO (IO () -> m ()) -> IO () -> m ()
    forall a b. (a -> b) -> a -> b
    $ FunPtr (GLenum -> GLenum -> Ptr GLfloat -> IO ())
    -> GLenum -> GLenum -> Ptr GLfloat -> IO ()
    dyn139 FunPtr (GLenum -> GLenum -> Ptr GLfloat -> IO ())
    ptr_glTexParameterfv GLenum
    v1 GLenum
    v2 Ptr GLfloat
    v3

    {-# NOINLINE ptr_glTexParameterfv #-}
    ptr_glTexParameterfv :: FunPtr (GLenum -> GLenum -> Ptr GLfloat -> IO ())
    ptr_glTexParameterfv :: FunPtr (GLenum -> GLenum -> Ptr GLfloat -> IO ())
    ptr_glTexParameterfv = IO (FunPtr (GLenum -> GLenum -> Ptr GLfloat -> IO ()))
    -> FunPtr (GLenum -> GLenum -> Ptr GLfloat -> IO ())
    forall a. IO a -> a
    unsafePerformIO (IO (FunPtr (GLenum -> GLenum -> Ptr GLfloat -> IO ()))
     -> FunPtr (GLenum -> GLenum -> Ptr GLfloat -> IO ()))
    -> IO (FunPtr (GLenum -> GLenum -> Ptr GLfloat -> IO ()))
    -> FunPtr (GLenum -> GLenum -> Ptr GLfloat -> IO ())
    forall a b. (a -> b) -> a -> b
    $ String -> IO (FunPtr (GLenum -> GLenum -> Ptr GLfloat -> IO ()))
    forall a. String -> IO (FunPtr a)
    getCommand String
    "glTexParameterfv"

    -- glTexParameteri -------------------------------------------------------------

    -- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glTexParameter.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glTexParameter.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glTexParameter.xhtml OpenGL 4.x>.
    glTexParameteri
      :: MonadIO m
      => GLenum -- ^ @target@ of type [TextureTarget](Graphics-GL-Groups.html#TextureTarget).
      -> GLenum -- ^ @pname@ of type [TextureParameterName](Graphics-GL-Groups.html#TextureParameterName).
      -> GLint -- ^ @param@ of type @CheckedInt32@.
      -> m ()
    glTexParameteri :: forall (m :: * -> *).
    MonadIO m =>
    GLenum -> GLenum -> GLint -> m ()
    glTexParameteri GLenum
    v1 GLenum
    v2 GLint
    v3 = IO () -> m ()
    forall a. IO a -> m a
    forall (m :: * -> *) a. MonadIO m => IO a -> m a
    liftIO (IO () -> m ()) -> IO () -> m ()
    forall a b. (a -> b) -> a -> b
    $ FunPtr (GLenum -> GLenum -> GLint -> IO ())
    -> GLenum -> GLenum -> GLint -> IO ()
    dyn66 FunPtr (GLenum -> GLenum -> GLint -> IO ())
    ptr_glTexParameteri GLenum
    v1 GLenum
    v2 GLint
    v3

    {-# NOINLINE ptr_glTexParameteri #-}
    ptr_glTexParameteri :: FunPtr (GLenum -> GLenum -> GLint -> IO ())
    ptr_glTexParameteri :: FunPtr (GLenum -> GLenum -> GLint -> IO ())
    ptr_glTexParameteri = IO (FunPtr (GLenum -> GLenum -> GLint -> IO ()))
    -> FunPtr (GLenum -> GLenum -> GLint -> IO ())
    forall a. IO a -> a
    unsafePerformIO (IO (FunPtr (GLenum -> GLenum -> GLint -> IO ()))
     -> FunPtr (GLenum -> GLenum -> GLint -> IO ()))
    -> IO (FunPtr (GLenum -> GLenum -> GLint -> IO ()))
    -> FunPtr (GLenum -> GLenum -> GLint -> IO ())
    forall a b. (a -> b) -> a -> b
    $ String -> IO (FunPtr (GLenum -> GLenum -> GLint -> IO ()))
    forall a. String -> IO (FunPtr a)
    getCommand String
    "glTexParameteri"

    -- glTexParameteriv ------------------------------------------------------------

    -- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glTexParameter.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glTexParameter.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glTexParameter.xhtml OpenGL 4.x>.
    glTexParameteriv
      :: MonadIO m
      => GLenum -- ^ @target@ of type [TextureTarget](Graphics-GL-Groups.html#TextureTarget).
      -> GLenum -- ^ @pname@ of type [TextureParameterName](Graphics-GL-Groups.html#TextureParameterName).
      -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @CheckedInt32@.
      -> m ()
    glTexParameteriv :: forall (m :: * -> *).
    MonadIO m =>
    GLenum -> GLenum -> Ptr GLint -> m ()
    glTexParameteriv GLenum
    v1 GLenum
    v2 Ptr GLint
    v3 = IO () -> m ()
    forall a. IO a -> m a
    forall (m :: * -> *) a. MonadIO m => IO a -> m a
    liftIO (IO () -> m ()) -> IO () -> m ()
    forall a b. (a -> b) -> a -> b
    $ FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
    -> GLenum -> GLenum -> Ptr GLint -> IO ()
    dyn140 FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
    ptr_glTexParameteriv GLenum
    v1 GLenum
    v2 Ptr GLint
    v3

    {-# NOINLINE ptr_glTexParameteriv #-}
    ptr_glTexParameteriv :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
    ptr_glTexParameteriv :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
    ptr_glTexParameteriv = IO (FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ()))
    -> FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
    forall a. IO a -> a
    unsafePerformIO (IO (FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ()))
     -> FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ()))
    -> IO (FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ()))
    -> FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
    forall a b. (a -> b) -> a -> b
    $ String -> IO (FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ()))
    forall a. String -> IO (FunPtr a)
    getCommand String
    "glTexParameteriv"

    -- glTexParameterx -------------------------------------------------------------

    glTexParameterx
      :: MonadIO m
      => GLenum -- ^ @target@ of type [TextureTarget](Graphics-GL-Groups.html#TextureTarget).
      -> GLenum -- ^ @pname@ of type [GetTextureParameter](Graphics-GL-Groups.html#GetTextureParameter).
      -> GLfixed -- ^ @param@.
      -> m ()
    glTexParameterx :: forall (m :: * -> *).
    MonadIO m =>
    GLenum -> GLenum -> GLfixed -> m ()
    glTexParameterx GLenum
    v1 GLenum
    v2 GLfixed
    v3 = IO () -> m ()
    forall a. IO a -> m a
    forall (m :: * -> *) a. MonadIO m => IO a -> m a
    liftIO (IO () -> m ()) -> IO () -> m ()
    forall a b. (a -> b) -> a -> b
    $ FunPtr (GLenum -> GLenum -> GLfixed -> IO ())
    -> GLenum -> GLenum -> GLfixed -> IO ()
    dyn169 FunPtr (GLenum -> GLenum -> GLfixed -> IO ())
    ptr_glTexParameterx GLenum
    v1 GLenum
    v2 GLfixed
    v3

    {-# NOINLINE ptr_glTexParameterx #-}
    ptr_glTexParameterx :: FunPtr (GLenum -> GLenum -> GLfixed -> IO ())
    ptr_glTexParameterx :: FunPtr (GLenum -> GLenum -> GLfixed -> IO ())
    ptr_glTexParameterx = IO (FunPtr (GLenum -> GLenum -> GLfixed -> IO ()))
    -> FunPtr (GLenum -> GLenum -> GLfixed -> IO ())
    forall a. IO a -> a
    unsafePerformIO (IO (FunPtr (GLenum -> GLenum -> GLfixed -> IO ()))
     -> FunPtr (GLenum -> GLenum -> GLfixed -> IO ()))
    -> IO (FunPtr (GLenum -> GLenum -> GLfixed -> IO ()))
    -> FunPtr (GLenum -> GLenum -> GLfixed -> IO ())
    forall a b. (a -> b) -> a -> b
    $ String -> IO (FunPtr (GLenum -> GLenum -> GLfixed -> IO ()))
    forall a. String -> IO (FunPtr a)
    getCommand String
    "glTexParameterx"

    -- glTexParameterxOES ----------------------------------------------------------

    glTexParameterxOES
      :: MonadIO m
      => GLenum -- ^ @target@ of type [TextureTarget](Graphics-GL-Groups.html#TextureTarget).
      -> GLenum -- ^ @pname@ of type [GetTextureParameter](Graphics-GL-Groups.html#GetTextureParameter).
      -> GLfixed -- ^ @param@.
      -> m ()
    glTexParameterxOES :: forall (m :: * -> *).
    MonadIO m =>
    GLenum -> GLenum -> GLfixed -> m ()
    glTexParameterxOES GLenum
    v1 GLenum
    v2 GLfixed
    v3 = IO () -> m ()
    forall a. IO a -> m a
    forall (m :: * -> *) a. MonadIO m => IO a -> m a
    liftIO (IO () -> m ()) -> IO () -> m ()
    forall a b. (a -> b) -> a -> b
    $ FunPtr (GLenum -> GLenum -> GLfixed -> IO ())
    -> GLenum -> GLenum -> GLfixed -> IO ()
    dyn169 FunPtr (GLenum -> GLenum -> GLfixed -> IO ())
    ptr_glTexParameterxOES GLenum
    v1 GLenum
    v2 GLfixed
    v3

    {-# NOINLINE ptr_glTexParameterxOES #-}
    ptr_glTexParameterxOES :: FunPtr (GLenum -> GLenum -> GLfixed -> IO ())
    ptr_glTexParameterxOES :: FunPtr (GLenum -> GLenum -> GLfixed -> IO ())
    ptr_glTexParameterxOES = IO (FunPtr (GLenum -> GLenum -> GLfixed -> IO ()))
    -> FunPtr (GLenum -> GLenum -> GLfixed -> IO ())
    forall a. IO a -> a
    unsafePerformIO (IO (FunPtr (GLenum -> GLenum -> GLfixed -> IO ()))
     -> FunPtr (GLenum -> GLenum -> GLfixed -> IO ()))
    -> IO (FunPtr (GLenum -> GLenum -> GLfixed -> IO ()))
    -> FunPtr (GLenum -> GLenum -> GLfixed -> IO ())
    forall a b. (a -> b) -> a -> b
    $ String -> IO (FunPtr (GLenum -> GLenum -> GLfixed -> IO ()))
    forall a. String -> IO (FunPtr a)
    getCommand String
    "glTexParameterxOES"

    -- glTexParameterxv ------------------------------------------------------------

    glTexParameterxv
      :: MonadIO m
      => GLenum -- ^ @target@ of type [TextureTarget](Graphics-GL-Groups.html#TextureTarget).
      -> GLenum -- ^ @pname@ of type [GetTextureParameter](Graphics-GL-Groups.html#GetTextureParameter).
      -> Ptr GLfixed -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLfixed@.
      -> m ()
    glTexParameterxv :: forall (m :: * -> *).
    MonadIO m =>
    GLenum -> GLenum -> Ptr GLfixed -> m ()
    glTexParameterxv GLenum
    v1 GLenum
    v2 Ptr GLfixed
    v3 = IO () -> m ()
    forall a. IO a -> m a
    forall (m :: * -> *) a. MonadIO m => IO a -> m a
    liftIO (IO () -> m ()) -> IO () -> m ()
    forall a b. (a -> b) -> a -> b
    $ FunPtr (GLenum -> GLenum -> Ptr GLfixed -> IO ())
    -> GLenum -> GLenum -> Ptr GLfixed -> IO ()
    dyn170 FunPtr (GLenum -> GLenum -> Ptr GLfixed -> IO ())
    ptr_glTexParameterxv GLenum
    v1 GLenum
    v2 Ptr GLfixed
    v3

    {-# NOINLINE ptr_glTexParameterxv #-}
    ptr_glTexParameterxv :: FunPtr (GLenum -> GLenum -> Ptr GLfixed -> IO ())
    ptr_glTexParameterxv :: FunPtr (GLenum -> GLenum -> Ptr GLfixed -> IO ())
    ptr_glTexParameterxv = IO (FunPtr (GLenum -> GLenum -> Ptr GLfixed -> IO ()))
    -> FunPtr (GLenum -> GLenum -> Ptr GLfixed -> IO ())
    forall a. IO a -> a
    unsafePerformIO (IO (FunPtr (GLenum -> GLenum -> Ptr GLfixed -> IO ()))
     -> FunPtr (GLenum -> GLenum -> Ptr GLfixed -> IO ()))
    -> IO (FunPtr (GLenum -> GLenum -> Ptr GLfixed -> IO ()))
    -> FunPtr (GLenum -> GLenum -> Ptr GLfixed -> IO ())
    forall a b. (a -> b) -> a -> b
    $ String -> IO (FunPtr (GLenum -> GLenum -> Ptr GLfixed -> IO ()))
    forall a. String -> IO (FunPtr a)
    getCommand String
    "glTexParameterxv"

    -- glTexParameterxvOES ---------------------------------------------------------

    glTexParameterxvOES
      :: MonadIO m
      => GLenum -- ^ @target@ of type [TextureTarget](Graphics-GL-Groups.html#TextureTarget).
      -> GLenum -- ^ @pname@ of type [GetTextureParameter](Graphics-GL-Groups.html#GetTextureParameter).
      -> Ptr GLfixed -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLfixed@.
      -> m ()
    glTexParameterxvOES :: forall (m :: * -> *).
    MonadIO m =>
    GLenum -> GLenum -> Ptr GLfixed -> m ()
    glTexParameterxvOES GLenum
    v1 GLenum
    v2 Ptr GLfixed
    v3 = IO () -> m ()
    forall a. IO a -> m a
    forall (m :: * -> *) a. MonadIO m => IO a -> m a
    liftIO (IO () -> m ()) -> IO () -> m ()
    forall a b. (a -> b) -> a -> b
    $ FunPtr (GLenum -> GLenum -> Ptr GLfixed -> IO ())
    -> GLenum -> GLenum -> Ptr GLfixed -> IO ()
    dyn170 FunPtr (GLenum -> GLenum -> Ptr GLfixed -> IO ())
    ptr_glTexParameterxvOES GLenum
    v1 GLenum
    v2 Ptr GLfixed
    v3

    {-# NOINLINE ptr_glTexParameterxvOES #-}
    ptr_glTexParameterxvOES :: FunPtr (GLenum -> GLenum -> Ptr GLfixed -> IO ())
    ptr_glTexParameterxvOES :: FunPtr (GLenum -> GLenum -> Ptr GLfixed -> IO ())
    ptr_glTexParameterxvOES = IO (FunPtr (GLenum -> GLenum -> Ptr GLfixed -> IO ()))
    -> FunPtr (GLenum -> GLenum -> Ptr GLfixed -> IO ())
    forall a. IO a -> a
    unsafePerformIO (IO (FunPtr (GLenum -> GLenum -> Ptr GLfixed -> IO ()))
     -> FunPtr (GLenum -> GLenum -> Ptr GLfixed -> IO ()))
    -> IO (FunPtr (GLenum -> GLenum -> Ptr GLfixed -> IO ()))
    -> FunPtr (GLenum -> GLenum -> Ptr GLfixed -> IO ())
    forall a b. (a -> b) -> a -> b
    $ String -> IO (FunPtr (GLenum -> GLenum -> Ptr GLfixed -> IO ()))
    forall a. String -> IO (FunPtr a)
    getCommand String
    "glTexParameterxvOES"

    -- glTexRenderbufferNV ---------------------------------------------------------

    glTexRenderbufferNV
      :: MonadIO m
      => GLenum -- ^ @target@ of type [TextureTarget](Graphics-GL-Groups.html#TextureTarget).
      -> GLuint -- ^ @renderbuffer@.
      -> m ()
    glTexRenderbufferNV :: forall (m :: * -> *). MonadIO m => GLenum -> GLenum -> m ()
    glTexRenderbufferNV GLenum
    v1 GLenum
    v2 = IO () -> m ()
    forall a. IO a -> m a
    forall (m :: * -> *) a. MonadIO m => IO a -> m a
    liftIO (IO () -> m ()) -> IO () -> m ()
    forall a b. (a -> b) -> a -> b
    $ FunPtr (GLenum -> GLenum -> IO ()) -> GLenum -> GLenum -> IO ()
    dyn19 FunPtr (GLenum -> GLenum -> IO ())
    ptr_glTexRenderbufferNV GLenum
    v1 GLenum
    v2

    {-# NOINLINE ptr_glTexRenderbufferNV #-}
    ptr_glTexRenderbufferNV :: FunPtr (GLenum -> GLuint -> IO ())
    ptr_glTexRenderbufferNV :: FunPtr (GLenum -> GLenum -> IO ())
    ptr_glTexRenderbufferNV = IO (FunPtr (GLenum -> GLenum -> IO ()))
    -> FunPtr (GLenum -> GLenum -> IO ())
    forall a. IO a -> a
    unsafePerformIO (IO (FunPtr (GLenum -> GLenum -> IO ()))
     -> FunPtr (GLenum -> GLenum -> IO ()))
    -> IO (FunPtr (GLenum -> GLenum -> IO ()))
    -> FunPtr (GLenum -> GLenum -> IO ())
    forall a b. (a -> b) -> a -> b
    $ String -> IO (FunPtr (GLenum -> GLenum -> IO ()))
    forall a. String -> IO (FunPtr a)
    getCommand String
    "glTexRenderbufferNV"

    -- glTexStorage1D --------------------------------------------------------------

    -- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glTexStorage1D.xhtml OpenGL 4.x>.
    glTexStorage1D
      :: MonadIO m
      => GLenum -- ^ @target@ of type [TextureTarget](Graphics-GL-Groups.html#TextureTarget).
      -> GLsizei -- ^ @levels@.
      -> GLenum -- ^ @internalformat@ of type [InternalFormat](Graphics-GL-Groups.html#InternalFormat).
      -> GLsizei -- ^ @width@.
      -> m ()
    glTexStorage1D :: forall (m :: * -> *).
    MonadIO m =>
    GLenum -> GLint -> GLenum -> GLint -> m ()
    glTexStorage1D GLenum
    v1 GLint
    v2 GLenum
    v3 GLint
    v4 = IO () -> m ()
    forall a. IO a -> m a
    forall (m :: * -> *) a. MonadIO m => IO a -> m a
    liftIO (IO () -> m ()) -> IO () -> m ()
    forall a b. (a -> b) -> a -> b
    $ FunPtr (GLenum -> GLint -> GLenum -> GLint -> IO ())
    -> GLenum -> GLint -> GLenum -> GLint -> IO ()
    dyn783 FunPtr (GLenum -> GLint -> GLenum -> GLint -> IO ())
    ptr_glTexStorage1D GLenum
    v1 GLint
    v2 GLenum
    v3 GLint
    v4

    {-# NOINLINE ptr_glTexStorage1D #-}
    ptr_glTexStorage1D :: FunPtr (GLenum -> GLsizei -> GLenum -> GLsizei -> IO ())
    ptr_glTexStorage1D :: FunPtr (GLenum -> GLint -> GLenum -> GLint -> IO ())
    ptr_glTexStorage1D = IO (FunPtr (GLenum -> GLint -> GLenum -> GLint -> IO ()))
    -> FunPtr (GLenum -> GLint -> GLenum -> GLint -> IO ())
    forall a. IO a -> a
    unsafePerformIO (IO (FunPtr (GLenum -> GLint -> GLenum -> GLint -> IO ()))
     -> FunPtr (GLenum -> GLint -> GLenum -> GLint -> IO ()))
    -> IO (FunPtr (GLenum -> GLint -> GLenum -> GLint -> IO ()))
    -> FunPtr (GLenum -> GLint -> GLenum -> GLint -> IO ())
    forall a b. (a -> b) -> a -> b
    $ String -> IO (FunPtr (GLenum -> GLint -> GLenum -> GLint -> IO ()))
    forall a. String -> IO (FunPtr a)
    getCommand String
    "glTexStorage1D"

    -- glTexStorage1DEXT -----------------------------------------------------------

    -- | This command is an alias for 'glTexStorage1D'.
    glTexStorage1DEXT
      :: MonadIO m
      => GLenum -- ^ @target@ of type [TextureTarget](Graphics-GL-Groups.html#TextureTarget).
      -> GLsizei -- ^ @levels@.
      -> GLenum -- ^ @internalformat@ of type [InternalFormat](Graphics-GL-Groups.html#InternalFormat).
      -> GLsizei -- ^ @width@.
      -> m ()
    glTexStorage1DEXT :: forall (m :: * -> *).
    MonadIO m =>
    GLenum -> GLint -> GLenum -> GLint -> m ()
    glTexStorage1DEXT GLenum
    v1 GLint
    v2 GLenum
    v3 GLint
    v4 = IO () -> m ()
    forall a. IO a -> m a
    forall (m :: * -> *) a. MonadIO m => IO a -> m a
    liftIO (IO () -> m ()) -> IO () -> m ()
    forall a b. (a -> b) -> a -> b
    $ FunPtr (GLenum -> GLint -> GLenum -> GLint -> IO ())
    -> GLenum -> GLint -> GLenum -> GLint -> IO ()
    dyn783 FunPtr (GLenum -> GLint -> GLenum -> GLint -> IO ())
    ptr_glTexStorage1DEXT GLenum
    v1 GLint
    v2 GLenum
    v3 GLint
    v4

    {-# NOINLINE ptr_glTexStorage1DEXT #-}
    ptr_glTexStorage1DEXT :: FunPtr (GLenum -> GLsizei -> GLenum -> GLsizei -> IO ())
    ptr_glTexStorage1DEXT :: FunPtr (GLenum -> GLint -> GLenum -> GLint -> IO ())
    ptr_glTexStorage1DEXT = IO (FunPtr (GLenum -> GLint -> GLenum -> GLint -> IO ()))
    -> FunPtr (GLenum -> GLint -> GLenum -> GLint -> IO ())
    forall a. IO a -> a
    unsafePerformIO (IO (FunPtr (GLenum -> GLint -> GLenum -> GLint -> IO ()))
     -> FunPtr (GLenum -> GLint -> GLenum -> GLint -> IO ()))
    -> IO (FunPtr (GLenum -> GLint -> GLenum -> GLint -> IO ()))
    -> FunPtr (GLenum -> GLint -> GLenum -> GLint -> IO ())
    forall a b. (a -> b) -> a -> b
    $ String -> IO (FunPtr (GLenum -> GLint -> GLenum -> GLint -> IO ()))
    forall a. String -> IO (FunPtr a)
    getCommand String
    "glTexStorage1DEXT"

    -- glTexStorage2D --------------------------------------------------------------

    -- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glTexStorage2D.xhtml OpenGL 4.x>.
    glTexStorage2D
      :: MonadIO m
      => GLenum -- ^ @target@ of type [TextureTarget](Graphics-GL-Groups.html#TextureTarget).
      -> GLsizei -- ^ @levels@.
      -> GLenum -- ^ @internalformat@ of type [InternalFormat](Graphics-GL-Groups.html#InternalFormat).
      -> GLsizei -- ^ @width@.
      -> GLsizei -- ^ @height@.
      -> m ()
    glTexStorage2D :: forall (m :: * -> *).
    MonadIO m =>
    GLenum -> GLint -> GLenum -> GLint -> GLint -> m ()
    glTexStorage2D GLenum
    v1 GLint
    v2 GLenum
    v3 GLint
    v4 GLint
    v5 = IO () -> m ()
    forall a. IO a -> m a
    forall (m :: * -> *) a. MonadIO m => IO a -> m a
    liftIO (IO () -> m ()) -> IO () -> m ()
    forall a b. (a -> b) -> a -> b
    $ FunPtr (GLenum -> GLint -> GLenum -> GLint -> GLint -> IO ())
    -> GLenum -> GLint -> GLenum -> GLint -> GLint -> IO ()
    dyn720 FunPtr (GLenum -> GLint -> GLenum -> GLint -> GLint -> IO ())
    ptr_glTexStorage2D GLenum
    v1 GLint
    v2 GLenum
    v3 GLint
    v4 GLint
    v5

    {-# NOINLINE ptr_glTexStorage2D #-}
    ptr_glTexStorage2D :: FunPtr (GLenum -> GLsizei -> GLenum -> GLsizei -> GLsizei -> IO ())
    ptr_glTexStorage2D :: FunPtr (GLenum -> GLint -> GLenum -> GLint -> GLint -> IO ())
    ptr_glTexStorage2D = IO (FunPtr (GLenum -> GLint -> GLenum -> GLint -> GLint -> IO ()))
    -> FunPtr (GLenum -> GLint -> GLenum -> GLint -> GLint -> IO ())
    forall a. IO a -> a
    unsafePerformIO (IO (FunPtr (GLenum -> GLint -> GLenum -> GLint -> GLint -> IO ()))
     -> FunPtr (GLenum -> GLint -> GLenum -> GLint -> GLint -> IO ()))
    -> IO
         (FunPtr (GLenum -> GLint -> GLenum -> GLint -> GLint -> IO ()))
    -> FunPtr (GLenum -> GLint -> GLenum -> GLint -> GLint -> IO ())
    forall a b. (a -> b) -> a -> b
    $ String
    -> IO
         (FunPtr (GLenum -> GLint -> GLenum -> GLint -> GLint -> IO ()))
    forall a. String -> IO (FunPtr a)
    getCommand String
    "glTexStorage2D"

    -- glTexStorage2DEXT -----------------------------------------------------------

    -- | This command is an alias for 'glTexStorage2D'.
    glTexStorage2DEXT
      :: MonadIO m
      => GLenum -- ^ @target@ of type [TextureTarget](Graphics-GL-Groups.html#TextureTarget).
      -> GLsizei -- ^ @levels@.
      -> GLenum -- ^ @internalformat@ of type [InternalFormat](Graphics-GL-Groups.html#InternalFormat).
      -> GLsizei -- ^ @width@.
      -> GLsizei -- ^ @height@.
      -> m ()
    glTexStorage2DEXT :: forall (m :: * -> *).
    MonadIO m =>
    GLenum -> GLint -> GLenum -> GLint -> GLint -> m ()
    glTexStorage2DEXT GLenum
    v1 GLint
    v2 GLenum
    v3 GLint
    v4 GLint
    v5 = IO () -> m ()
    forall a. IO a -> m a
    forall (m :: * -> *) a. MonadIO m => IO a -> m a
    liftIO (IO () -> m ()) -> IO () -> m ()
    forall a b. (a -> b) -> a -> b
    $ FunPtr (GLenum -> GLint -> GLenum -> GLint -> GLint -> IO ())
    -> GLenum -> GLint -> GLenum -> GLint -> GLint -> IO ()
    dyn720 FunPtr (GLenum -> GLint -> GLenum -> GLint -> GLint -> IO ())
    ptr_glTexStorage2DEXT GLenum
    v1 GLint
    v2 GLenum
    v3 GLint
    v4 GLint
    v5

    {-# NOINLINE ptr_glTexStorage2DEXT #-}
    ptr_glTexStorage2DEXT :: FunPtr (GLenum -> GLsizei -> GLenum -> GLsizei -> GLsizei -> IO ())
    ptr_glTexStorage2DEXT :: FunPtr (GLenum -> GLint -> GLenum -> GLint -> GLint -> IO ())
    ptr_glTexStorage2DEXT = IO (FunPtr (GLenum -> GLint -> GLenum -> GLint -> GLint -> IO ()))
    -> FunPtr (GLenum -> GLint -> GLenum -> GLint -> GLint -> IO ())
    forall a. IO a -> a
    unsafePerformIO (IO (FunPtr (GLenum -> GLint -> GLenum -> GLint -> GLint -> IO ()))
     -> FunPtr (GLenum -> GLint -> GLenum -> GLint -> GLint -> IO ()))
    -> IO
         (FunPtr (GLenum -> GLint -> GLenum -> GLint -> GLint -> IO ()))
    -> FunPtr (GLenum -> GLint -> GLenum -> GLint -> GLint -> IO ())
    forall a b. (a -> b) -> a -> b
    $ String
    -> IO
         (FunPtr (GLenum -> GLint -> GLenum -> GLint -> GLint -> IO ()))
    forall a. String -> IO (FunPtr a)
    getCommand String
    "glTexStorage2DEXT"

    -- glTexStorage2DMultisample ---------------------------------------------------

    -- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glTexStorage2DMultisample.xhtml OpenGL 4.x>.
    glTexStorage2DMultisample
      :: MonadIO m
      => GLenum -- ^ @target@ of type [TextureTarget](Graphics-GL-Groups.html#TextureTarget).
      -> GLsizei -- ^ @samples@.
      -> GLenum -- ^ @internalformat@ of type [InternalFormat](Graphics-GL-Groups.html#InternalFormat).
      -> GLsizei -- ^ @width@.
      -> GLsizei -- ^ @height@.
      -> GLboolean -- ^ @fixedsamplelocations@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
      -> m ()
    glTexStorage2DMultisample :: forall (m :: * -> *).
    MonadIO m =>
    GLenum -> GLint -> GLenum -> GLint -> GLint -> GLboolean -> m ()
    glTexStorage2DMultisample GLenum
    v1 GLint
    v2 GLenum
    v3 GLint
    v4 GLint
    v5 GLboolean
    v6 = IO () -> m ()
    forall a. IO a -> m a
    forall (m :: * -> *) a. MonadIO m => IO a -> m a
    liftIO (IO () -> m ()) -> IO () -> m ()
    forall a b. (a -> b) -> a -> b
    $ FunPtr
      (GLenum -> GLint -> GLenum -> GLint -> GLint -> GLboolean -> IO ())
    -> GLenum
    -> GLint
    -> GLenum
    -> GLint
    -> GLint
    -> GLboolean
    -> IO ()
    dyn775 FunPtr
      (GLenum -> GLint -> GLenum -> GLint -> GLint -> GLboolean -> IO ())
    ptr_glTexStorage2DMultisample GLenum
    v1 GLint
    v2 GLenum
    v3 GLint
    v4 GLint
    v5 GLboolean
    v6

    {-# NOINLINE ptr_glTexStorage2DMultisample #-}
    ptr_glTexStorage2DMultisample :: FunPtr (GLenum -> GLsizei -> GLenum -> GLsizei -> GLsizei -> GLboolean -> IO ())
    ptr_glTexStorage2DMultisample :: FunPtr
      (GLenum -> GLint -> GLenum -> GLint -> GLint -> GLboolean -> IO ())
    ptr_glTexStorage2DMultisample = IO
      (FunPtr
         (GLenum
          -> GLint -> GLenum -> GLint -> GLint -> GLboolean -> IO ()))
    -> FunPtr
         (GLenum -> GLint -> GLenum -> GLint -> GLint -> GLboolean -> IO ())
    forall a. IO a -> a
    unsafePerformIO (IO
       (FunPtr
          (GLenum
           -> GLint -> GLenum -> GLint -> GLint -> GLboolean -> IO ()))
     -> FunPtr
          (GLenum
           -> GLint -> GLenum -> GLint -> GLint -> GLboolean -> IO ()))
    -> IO
         (FunPtr
            (GLenum
             -> GLint -> GLenum -> GLint -> GLint -> GLboolean -> IO ()))
    -> FunPtr
         (GLenum -> GLint -> GLenum -> GLint -> GLint -> GLboolean -> IO ())
    forall a b. (a -> b) -> a -> b
    $ String
    -> IO
         (FunPtr
            (GLenum
             -> GLint -> GLenum -> GLint -> GLint -> GLboolean -> IO ()))
    forall a. String -> IO (FunPtr a)
    getCommand String
    "glTexStorage2DMultisample"

    -- glTexStorage3D --------------------------------------------------------------

    -- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glTexStorage3D.xhtml OpenGL 4.x>.
    glTexStorage3D
      :: MonadIO m
      => GLenum -- ^ @target@ of type [TextureTarget](Graphics-GL-Groups.html#TextureTarget).
      -> GLsizei -- ^ @levels@.
      -> GLenum -- ^ @internalformat@ of type [InternalFormat](Graphics-GL-Groups.html#InternalFormat).
      -> GLsizei -- ^ @width@.
      -> GLsizei -- ^ @height@.
      -> GLsizei -- ^ @depth@.
      -> m ()
    glTexStorage3D :: forall (m :: * -> *).
    MonadIO m =>
    GLenum -> GLint -> GLenum -> GLint -> GLint -> GLint -> m ()
    glTexStorage3D GLenum
    v1 GLint
    v2 GLenum
    v3 GLint
    v4 GLint
    v5 GLint
    v6 = IO () -> m ()
    forall a. IO a -> m a
    forall (m :: * -> *) a. MonadIO m => IO a -> m a
    liftIO (IO () -> m ()) -> IO () -> m ()
    forall a b. (a -> b) -> a -> b
    $ FunPtr
      (GLenum -> GLint -> GLenum -> GLint -> GLint -> GLint -> IO ())
    -> GLenum -> GLint -> GLenum -> GLint -> GLint -> GLint -> IO ()
    dyn784 FunPtr
      (GLenum -> GLint -> GLenum -> GLint -> GLint -> GLint -> IO ())
    ptr_glTexStorage3D GLenum
    v1 GLint
    v2 GLenum
    v3 GLint
    v4 GLint
    v5 GLint
    v6

    {-# NOINLINE ptr_glTexStorage3D #-}
    ptr_glTexStorage3D :: FunPtr (GLenum -> GLsizei -> GLenum -> GLsizei -> GLsizei -> GLsizei -> IO ())
    ptr_glTexStorage3D :: FunPtr
      (GLenum -> GLint -> GLenum -> GLint -> GLint -> GLint -> IO ())
    ptr_glTexStorage3D = IO
      (FunPtr
         (GLenum -> GLint -> GLenum -> GLint -> GLint -> GLint -> IO ()))
    -> FunPtr
         (GLenum -> GLint -> GLenum -> GLint -> GLint -> GLint -> IO ())
    forall a. IO a -> a
    unsafePerformIO (IO
       (FunPtr
          (GLenum -> GLint -> GLenum -> GLint -> GLint -> GLint -> IO ()))
     -> FunPtr
          (GLenum -> GLint -> GLenum -> GLint -> GLint -> GLint -> IO ()))
    -> IO
         (FunPtr
            (GLenum -> GLint -> GLenum -> GLint -> GLint -> GLint -> IO ()))
    -> FunPtr
         (GLenum -> GLint -> GLenum -> GLint -> GLint -> GLint -> IO ())
    forall a b. (a -> b) -> a -> b
    $ String
    -> IO
         (FunPtr
            (GLenum -> GLint -> GLenum -> GLint -> GLint -> GLint -> IO ()))
    forall a. String -> IO (FunPtr a)
    getCommand String
    "glTexStorage3D"

    -- glTexStorage3DEXT -----------------------------------------------------------

    -- | This command is an alias for 'glTexStorage3D'.
    glTexStorage3DEXT
      :: MonadIO m
      => GLenum -- ^ @target@ of type [TextureTarget](Graphics-GL-Groups.html#TextureTarget).
      -> GLsizei -- ^ @levels@.
      -> GLenum -- ^ @internalformat@ of type [InternalFormat](Graphics-GL-Groups.html#InternalFormat).
      -> GLsizei -- ^ @width@.
      -> GLsizei -- ^ @height@.
      -> GLsizei -- ^ @depth@.
      -> m ()
    glTexStorage3DEXT :: forall (m :: * -> *).
    MonadIO m =>
    GLenum -> GLint -> GLenum -> GLint -> GLint -> GLint -> m ()
    glTexStorage3DEXT GLenum
    v1 GLint
    v2 GLenum
    v3 GLint
    v4 GLint
    v5 GLint
    v6 = IO () -> m ()
    forall a. IO a -> m a
    forall (m :: * -> *) a. MonadIO m => IO a -> m a
    liftIO (IO () -> m ()) -> IO () -> m ()
    forall a b. (a -> b) -> a -> b
    $ FunPtr
      (GLenum -> GLint -> GLenum -> GLint -> GLint -> GLint -> IO ())
    -> GLenum -> GLint -> GLenum -> GLint -> GLint -> GLint -> IO ()
    dyn784 FunPtr
      (GLenum -> GLint -> GLenum -> GLint -> GLint -> GLint -> IO ())
    ptr_glTexStorage3DEXT GLenum
    v1 GLint
    v2 GLenum
    v3 GLint
    v4 GLint
    v5 GLint
    v6

    {-# NOINLINE ptr_glTexStorage3DEXT #-}
    ptr_glTexStorage3DEXT :: FunPtr (GLenum -> GLsizei -> GLenum -> GLsizei -> GLsizei -> GLsizei -> IO ())
    ptr_glTexStorage3DEXT :: FunPtr
      (GLenum -> GLint -> GLenum -> GLint -> GLint -> GLint -> IO ())
    ptr_glTexStorage3DEXT = IO
      (FunPtr
         (GLenum -> GLint -> GLenum -> GLint -> GLint -> GLint -> IO ()))
    -> FunPtr
         (GLenum -> GLint -> GLenum -> GLint -> GLint -> GLint -> IO ())
    forall a. IO a -> a
    unsafePerformIO (IO
       (FunPtr
          (GLenum -> GLint -> GLenum -> GLint -> GLint -> GLint -> IO ()))
     -> FunPtr
          (GLenum -> GLint -> GLenum -> GLint -> GLint -> GLint -> IO ()))
    -> IO
         (FunPtr
            (GLenum -> GLint -> GLenum -> GLint -> GLint -> GLint -> IO ()))
    -> FunPtr
         (GLenum -> GLint -> GLenum -> GLint -> GLint -> GLint -> IO ())
    forall a b. (a -> b) -> a -> b
    $ String
    -> IO
         (FunPtr
            (GLenum -> GLint -> GLenum -> GLint -> GLint -> GLint -> IO ()))
    forall a. String -> IO (FunPtr a)
    getCommand String
    "glTexStorage3DEXT"

    -- glTexStorage3DMultisample ---------------------------------------------------

    -- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glTexStorage3DMultisample.xhtml OpenGL 4.x>.
    glTexStorage3DMultisample
      :: MonadIO m
      => GLenum -- ^ @target@ of type [TextureTarget](Graphics-GL-Groups.html#TextureTarget).
      -> GLsizei -- ^ @samples@.
      -> GLenum -- ^ @internalformat@ of type [InternalFormat](Graphics-GL-Groups.html#InternalFormat).
      -> GLsizei -- ^ @width@.
      -> GLsizei -- ^ @height@.
      -> GLsizei -- ^ @depth@.
      -> GLboolean -- ^ @fixedsamplelocations@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
      -> m ()
    glTexStorage3DMultisample :: forall (m :: * -> *).
    MonadIO m =>
    GLenum
    -> GLint -> GLenum -> GLint -> GLint -> GLint -> GLboolean -> m ()
    glTexStorage3DMultisample GLenum
    v1 GLint
    v2 GLenum
    v3 GLint
    v4 GLint
    v5 GLint
    v6 GLboolean
    v7 = IO () -> m ()
    forall a. IO a -> m a
    forall (m :: * -> *) a. MonadIO m => IO a -> m a
    liftIO (IO () -> m ()) -> IO () -> m ()
    forall a b. (a -> b) -> a -> b
    $ FunPtr
      (GLenum
       -> GLint
       -> GLenum
       -> GLint
       -> GLint
       -> GLint
       -> GLboolean
       -> IO ())
    -> GLenum
    -> GLint
    -> GLenum
    -> GLint
    -> GLint
    -> GLint
    -> GLboolean
    -> IO ()
    dyn779 FunPtr
      (GLenum
       -> GLint
       -> GLenum
       -> GLint
       -> GLint
       -> GLint
       -> GLboolean
       -> IO ())
    ptr_glTexStorage3DMultisample GLenum
    v1 GLint
    v2 GLenum
    v3 GLint
    v4 GLint
    v5 GLint
    v6 GLboolean
    v7

    {-# NOINLINE ptr_glTexStorage3DMultisample #-}
    ptr_glTexStorage3DMultisample :: FunPtr (GLenum -> GLsizei -> GLenum -> GLsizei -> GLsizei -> GLsizei -> GLboolean -> IO ())
    ptr_glTexStorage3DMultisample :: FunPtr
      (GLenum
       -> GLint
       -> GLenum
       -> GLint
       -> GLint
       -> GLint
       -> GLboolean
       -> IO ())
    ptr_glTexStorage3DMultisample = IO
      (FunPtr
         (GLenum
          -> GLint
          -> GLenum
          -> GLint
          -> GLint
          -> GLint
          -> GLboolean
          -> IO ()))
    -> FunPtr
         (GLenum
          -> GLint
          -> GLenum
          -> GLint
          -> GLint
          -> GLint
          -> GLboolean
          -> IO ())
    forall a. IO a -> a
    unsafePerformIO (IO
       (FunPtr
          (GLenum
           -> GLint
           -> GLenum
           -> GLint
           -> GLint
           -> GLint
           -> GLboolean
           -> IO ()))
     -> FunPtr
          (GLenum
           -> GLint
           -> GLenum
           -> GLint
           -> GLint
           -> GLint
           -> GLboolean
           -> IO ()))
    -> IO
         (FunPtr
            (GLenum
             -> GLint
             -> GLenum
             -> GLint
             -> GLint
             -> GLint
             -> GLboolean
             -> IO ()))
    -> FunPtr
         (GLenum
          -> GLint
          -> GLenum
          -> GLint
          -> GLint
          -> GLint
          -> GLboolean
          -> IO ())
    forall a b. (a -> b) -> a -> b
    $ String
    -> IO
         (FunPtr
            (GLenum
             -> GLint
             -> GLenum
             -> GLint
             -> GLint
             -> GLint
             -> GLboolean
             -> IO ()))
    forall a. String -> IO (FunPtr a)
    getCommand String
    "glTexStorage3DMultisample"

    -- glTexStorage3DMultisampleOES ------------------------------------------------

    -- | This command is an alias for 'glTexStorage3DMultisample'.
    glTexStorage3DMultisampleOES
      :: MonadIO m
      => GLenum -- ^ @target@ of type [TextureTarget](Graphics-GL-Groups.html#TextureTarget).
      -> GLsizei -- ^ @samples@.
      -> GLenum -- ^ @internalformat@ of type [InternalFormat](Graphics-GL-Groups.html#InternalFormat).
      -> GLsizei -- ^ @width@.
      -> GLsizei -- ^ @height@.
      -> GLsizei -- ^ @depth@.
      -> GLboolean -- ^ @fixedsamplelocations@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
      -> m ()
    glTexStorage3DMultisampleOES :: forall (m :: * -> *).
    MonadIO m =>
    GLenum
    -> GLint -> GLenum -> GLint -> GLint -> GLint -> GLboolean -> m ()
    glTexStorage3DMultisampleOES GLenum
    v1 GLint
    v2 GLenum
    v3 GLint
    v4 GLint
    v5 GLint
    v6 GLboolean
    v7 = IO () -> m ()
    forall a. IO a -> m a
    forall (m :: * -> *) a. MonadIO m => IO a -> m a
    liftIO (IO () -> m ()) -> IO () -> m ()
    forall a b. (a -> b) -> a -> b
    $ FunPtr
      (GLenum
       -> GLint
       -> GLenum
       -> GLint
       -> GLint
       -> GLint
       -> GLboolean
       -> IO ())
    -> GLenum
    -> GLint
    -> GLenum
    -> GLint
    -> GLint
    -> GLint
    -> GLboolean
    -> IO ()
    dyn779 FunPtr
      (GLenum
       -> GLint
       -> GLenum
       -> GLint
       -> GLint
       -> GLint
       -> GLboolean
       -> IO ())
    ptr_glTexStorage3DMultisampleOES GLenum
    v1 GLint
    v2 GLenum
    v3 GLint
    v4 GLint
    v5 GLint
    v6 GLboolean
    v7

    {-# NOINLINE ptr_glTexStorage3DMultisampleOES #-}
    ptr_glTexStorage3DMultisampleOES :: FunPtr (GLenum -> GLsizei -> GLenum -> GLsizei -> GLsizei -> GLsizei -> GLboolean -> IO ())
    ptr_glTexStorage3DMultisampleOES :: FunPtr
      (GLenum
       -> GLint
       -> GLenum
       -> GLint
       -> GLint
       -> GLint
       -> GLboolean
       -> IO ())
    ptr_glTexStorage3DMultisampleOES = IO
      (FunPtr
         (GLenum
          -> GLint
          -> GLenum
          -> GLint
          -> GLint
          -> GLint
          -> GLboolean
          -> IO ()))
    -> FunPtr
         (GLenum
          -> GLint
          -> GLenum
          -> GLint
          -> GLint
          -> GLint
          -> GLboolean
          -> IO ())
    forall a. IO a -> a
    unsafePerformIO (IO
       (FunPtr
          (GLenum
           -> GLint
           -> GLenum
           -> GLint
           -> GLint
           -> GLint
           -> GLboolean
           -> IO ()))
     -> FunPtr
          (GLenum
           -> GLint
           -> GLenum
           -> GLint
           -> GLint
           -> GLint
           -> GLboolean
           -> IO ()))
    -> IO
         (FunPtr
            (GLenum
             -> GLint
             -> GLenum
             -> GLint
             -> GLint
             -> GLint
             -> GLboolean
             -> IO ()))
    -> FunPtr
         (GLenum
          -> GLint
          -> GLenum
          -> GLint
          -> GLint
          -> GLint
          -> GLboolean
          -> IO ())
    forall a b. (a -> b) -> a -> b
    $ String
    -> IO
         (FunPtr
            (GLenum
             -> GLint
             -> GLenum
             -> GLint
             -> GLint
             -> GLint
             -> GLboolean
             -> IO ()))
    forall a. String -> IO (FunPtr a)
    getCommand String
    "glTexStorage3DMultisampleOES"

    -- glTexStorageMem1DEXT --------------------------------------------------------

    glTexStorageMem1DEXT
      :: MonadIO m
      => GLenum -- ^ @target@ of type [TextureTarget](Graphics-GL-Groups.html#TextureTarget).
      -> GLsizei -- ^ @levels@.
      -> GLenum -- ^ @internalFormat@.
      -> GLsizei -- ^ @width@.
      -> GLuint -- ^ @memory@.
      -> GLuint64 -- ^ @offset@.
      -> m ()
    glTexStorageMem1DEXT :: forall (m :: * -> *).
    MonadIO m =>
    GLenum -> GLint -> GLenum -> GLint -> GLenum -> GLuint64 -> m ()
    glTexStorageMem1DEXT GLenum
    v1 GLint
    v2 GLenum
    v3 GLint
    v4 GLenum
    v5 GLuint64
    v6 = IO () -> m ()
    forall a. IO a -> m a
    forall (m :: * -> *) a. MonadIO m => IO a -> m a
    liftIO (IO () -> m ()) -> IO () -> m ()
    forall a b. (a -> b) -> a -> b
    $ FunPtr
      (GLenum -> GLint -> GLenum -> GLint -> GLenum -> GLuint64 -> IO ())
    -> GLenum
    -> GLint
    -> GLenum
    -> GLint
    -> GLenum
    -> GLuint64
    -> IO ()
    dyn785 FunPtr
      (GLenum -> GLint -> GLenum -> GLint -> GLenum -> GLuint64 -> IO ())
    ptr_glTexStorageMem1DEXT GLenum
    v1 GLint
    v2 GLenum
    v3 GLint
    v4 GLenum
    v5 GLuint64
    v6

    {-# NOINLINE ptr_glTexStorageMem1DEXT #-}
    ptr_glTexStorageMem1DEXT :: FunPtr (GLenum -> GLsizei -> GLenum -> GLsizei -> GLuint -> GLuint64 -> IO ())
    ptr_glTexStorageMem1DEXT :: FunPtr
      (GLenum -> GLint -> GLenum -> GLint -> GLenum -> GLuint64 -> IO ())
    ptr_glTexStorageMem1DEXT = IO
      (FunPtr
         (GLenum
          -> GLint -> GLenum -> GLint -> GLenum -> GLuint64 -> IO ()))
    -> FunPtr
         (GLenum -> GLint -> GLenum -> GLint -> GLenum -> GLuint64 -> IO ())
    forall a. IO a -> a
    unsafePerformIO (IO
       (FunPtr
          (GLenum
           -> GLint -> GLenum -> GLint -> GLenum -> GLuint64 -> IO ()))
     -> FunPtr
          (GLenum
           -> GLint -> GLenum -> GLint -> GLenum -> GLuint64 -> IO ()))
    -> IO
         (FunPtr
            (GLenum
             -> GLint -> GLenum -> GLint -> GLenum -> GLuint64 -> IO ()))
    -> FunPtr
         (GLenum -> GLint -> GLenum -> GLint -> GLenum -> GLuint64 -> IO ())
    forall a b. (a -> b) -> a -> b
    $ String
    -> IO
         (FunPtr
            (GLenum
             -> GLint -> GLenum -> GLint -> GLenum -> GLuint64 -> IO ()))
    forall a. String -> IO (FunPtr a)
    getCommand String
    "glTexStorageMem1DEXT"

    -- glTexStorageMem2DEXT --------------------------------------------------------

    glTexStorageMem2DEXT
      :: MonadIO m
      => GLenum -- ^ @target@ of type [TextureTarget](Graphics-GL-Groups.html#TextureTarget).
      -> GLsizei -- ^ @levels@.
      -> GLenum -- ^ @internalFormat@.
      -> GLsizei -- ^ @width@.
      -> GLsizei -- ^ @height@.
      -> GLuint -- ^ @memory@.
      -> GLuint64 -- ^ @offset@.
      -> m ()
    glTexStorageMem2DEXT :: forall (m :: * -> *).
    MonadIO m =>
    GLenum
    -> GLint -> GLenum -> GLint -> GLint -> GLenum -> GLuint64 -> m ()
    glTexStorageMem2DEXT GLenum
    v1 GLint
    v2 GLenum
    v3 GLint
    v4 GLint
    v5 GLenum
    v6 GLuint64
    v7 = IO () -> m ()
    forall a. IO a -> m a
    forall (m :: * -> *) a. MonadIO m => IO a -> m a
    liftIO (IO () -> m ()) -> IO () -> m ()
    forall a b. (a -> b) -> a -> b
    $ FunPtr
      (GLenum
       -> GLint
       -> GLenum
       -> GLint
       -> GLint
       -> GLenum
       -> GLuint64
       -> IO ())
    -> GLenum
    -> GLint
    -> GLenum
    -> GLint
    -> GLint
    -> GLenum
    -> GLuint64
    -> IO ()
    dyn786 FunPtr
      (GLenum
       -> GLint
       -> GLenum
       -> GLint
       -> GLint
       -> GLenum
       -> GLuint64
       -> IO ())
    ptr_glTexStorageMem2DEXT GLenum
    v1 GLint
    v2 GLenum
    v3 GLint
    v4 GLint
    v5 GLenum
    v6 GLuint64
    v7

    {-# NOINLINE ptr_glTexStorageMem2DEXT #-}
    ptr_glTexStorageMem2DEXT :: FunPtr (GLenum -> GLsizei -> GLenum -> GLsizei -> GLsizei -> GLuint -> GLuint64 -> IO ())
    ptr_glTexStorageMem2DEXT :: FunPtr
      (GLenum
       -> GLint
       -> GLenum
       -> GLint
       -> GLint
       -> GLenum
       -> GLuint64
       -> IO ())
    ptr_glTexStorageMem2DEXT = IO
      (FunPtr
         (GLenum
          -> GLint
          -> GLenum
          -> GLint
          -> GLint
          -> GLenum
          -> GLuint64
          -> IO ()))
    -> FunPtr
         (GLenum
          -> GLint
          -> GLenum
          -> GLint
          -> GLint
          -> GLenum
          -> GLuint64
          -> IO ())
    forall a. IO a -> a
    unsafePerformIO (IO
       (FunPtr
          (GLenum
           -> GLint
           -> GLenum
           -> GLint
           -> GLint
           -> GLenum
           -> GLuint64
           -> IO ()))
     -> FunPtr
          (GLenum
           -> GLint
           -> GLenum
           -> GLint
           -> GLint
           -> GLenum
           -> GLuint64
           -> IO ()))
    -> IO
         (FunPtr
            (GLenum
             -> GLint
             -> GLenum
             -> GLint
             -> GLint
             -> GLenum
             -> GLuint64
             -> IO ()))
    -> FunPtr
         (GLenum
          -> GLint
          -> GLenum
          -> GLint
          -> GLint
          -> GLenum
          -> GLuint64
          -> IO ())
    forall a b. (a -> b) -> a -> b
    $ String
    -> IO
         (FunPtr
            (GLenum
             -> GLint
             -> GLenum
             -> GLint
             -> GLint
             -> GLenum
             -> GLuint64
             -> IO ()))
    forall a. String -> IO (FunPtr a)
    getCommand String
    "glTexStorageMem2DEXT"

    -- glTexStorageMem2DMultisampleEXT ---------------------------------------------

    glTexStorageMem2DMultisampleEXT
      :: MonadIO m
      => GLenum -- ^ @target@ of type [TextureTarget](Graphics-GL-Groups.html#TextureTarget).
      -> GLsizei -- ^ @samples@.
      -> GLenum -- ^ @internalFormat@.
      -> GLsizei -- ^ @width@.
      -> GLsizei -- ^ @height@.
      -> GLboolean -- ^ @fixedSampleLocations@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
      -> GLuint -- ^ @memory@.
      -> GLuint64 -- ^ @offset@.
      -> m ()
    glTexStorageMem2DMultisampleEXT :: forall (m :: * -> *).
    MonadIO m =>
    GLenum
    -> GLint
    -> GLenum
    -> GLint
    -> GLint
    -> GLboolean
    -> GLenum
    -> GLuint64
    -> m ()
    glTexStorageMem2DMultisampleEXT GLenum
    v1 GLint
    v2 GLenum
    v3 GLint
    v4 GLint
    v5 GLboolean
    v6 GLenum
    v7 GLuint64
    v8 = IO () -> m ()
    forall a. IO a -> m a
    forall (m :: * -> *) a. MonadIO m => IO a -> m a
    liftIO (IO () -> m ()) -> IO () -> m ()
    forall a b. (a -> b) -> a -> b
    $ FunPtr
      (GLenum
       -> GLint
       -> GLenum
       -> GLint
       -> GLint
       -> GLboolean
       -> GLenum
       -> GLuint64
       -> IO ())
    -> GLenum
    -> GLint
    -> GLenum
    -> GLint
    -> GLint
    -> GLboolean
    -> GLenum
    -> GLuint64
    -> IO ()
    dyn787 FunPtr
      (GLenum
       -> GLint
       -> GLenum
       -> GLint
       -> GLint
       -> GLboolean
       -> GLenum
       -> GLuint64
       -> IO ())
    ptr_glTexStorageMem2DMultisampleEXT GLenum
    v1 GLint
    v2 GLenum
    v3 GLint
    v4 GLint
    v5 GLboolean
    v6 GLenum
    v7 GLuint64
    v8

    {-# NOINLINE ptr_glTexStorageMem2DMultisampleEXT #-}
    ptr_glTexStorageMem2DMultisampleEXT :: FunPtr (GLenum -> GLsizei -> GLenum -> GLsizei -> GLsizei -> GLboolean -> GLuint -> GLuint64 -> IO ())
    ptr_glTexStorageMem2DMultisampleEXT :: FunPtr
      (GLenum
       -> GLint
       -> GLenum
       -> GLint
       -> GLint
       -> GLboolean
       -> GLenum
       -> GLuint64
       -> IO ())
    ptr_glTexStorageMem2DMultisampleEXT = IO
      (FunPtr
         (GLenum
          -> GLint
          -> GLenum
          -> GLint
          -> GLint
          -> GLboolean
          -> GLenum
          -> GLuint64
          -> IO ()))
    -> FunPtr
         (GLenum
          -> GLint
          -> GLenum
          -> GLint
          -> GLint
          -> GLboolean
          -> GLenum
          -> GLuint64
          -> IO ())
    forall a. IO a -> a
    unsafePerformIO (IO
       (FunPtr
          (GLenum
           -> GLint
           -> GLenum
           -> GLint
           -> GLint
           -> GLboolean
           -> GLenum
           -> GLuint64
           -> IO ()))
     -> FunPtr
          (GLenum
           -> GLint
           -> GLenum
           -> GLint
           -> GLint
           -> GLboolean
           -> GLenum
           -> GLuint64
           -> IO ()))
    -> IO
         (FunPtr
            (GLenum
             -> GLint
             -> GLenum
             -> GLint
             -> GLint
             -> GLboolean
             -> GLenum
             -> GLuint64
             -> IO ()))
    -> FunPtr
         (GLenum
          -> GLint
          -> GLenum
          -> GLint
          -> GLint
          -> GLboolean
          -> GLenum
          -> GLuint64
          -> IO ())
    forall a b. (a -> b) -> a -> b
    $ String
    -> IO
         (FunPtr
            (GLenum
             -> GLint
             -> GLenum
             -> GLint
             -> GLint
             -> GLboolean
             -> GLenum
             -> GLuint64
             -> IO ()))
    forall a. String -> IO (FunPtr a)
    getCommand String
    "glTexStorageMem2DMultisampleEXT"

    -- glTexStorageMem3DEXT --------------------------------------------------------

    glTexStorageMem3DEXT
      :: MonadIO m
      => GLenum -- ^ @target@ of type [TextureTarget](Graphics-GL-Groups.html#TextureTarget).
      -> GLsizei -- ^ @levels@.
      -> GLenum -- ^ @internalFormat@.
      -> GLsizei -- ^ @width@.
      -> GLsizei -- ^ @height@.
      -> GLsizei -- ^ @depth@.
      -> GLuint -- ^ @memory@.
      -> GLuint64 -- ^ @offset@.
      -> m ()
    glTexStorageMem3DEXT :: forall (m :: * -> *).
    MonadIO m =>
    GLenum
    -> GLint
    -> GLenum
    -> GLint
    -> GLint
    -> GLint
    -> GLenum
    -> GLuint64
    -> m ()
    glTexStorageMem3DEXT GLenum
    v1 GLint
    v2 GLenum
    v3 GLint
    v4 GLint
    v5 GLint
    v6 GLenum
    v7 GLuint64
    v8 = IO () -> m ()
    forall a. IO a -> m a
    forall (m :: * -> *) a. MonadIO m => IO a -> m a
    liftIO (IO () -> m ()) -> IO () -> m ()
    forall a b. (a -> b) -> a -> b
    $ FunPtr
      (GLenum
       -> GLint
       -> GLenum
       -> GLint
       -> GLint
       -> GLint
       -> GLenum
       -> GLuint64
       -> IO ())
    -> GLenum
    -> GLint
    -> GLenum
    -> GLint
    -> GLint
    -> GLint
    -> GLenum
    -> GLuint64
    -> IO ()
    dyn788 FunPtr
      (GLenum
       -> GLint
       -> GLenum
       -> GLint
       -> GLint
       -> GLint
       -> GLenum
       -> GLuint64
       -> IO ())
    ptr_glTexStorageMem3DEXT GLenum
    v1 GLint
    v2 GLenum
    v3 GLint
    v4 GLint
    v5 GLint
    v6 GLenum
    v7 GLuint64
    v8

    {-# NOINLINE ptr_glTexStorageMem3DEXT #-}
    ptr_glTexStorageMem3DEXT :: FunPtr (GLenum -> GLsizei -> GLenum -> GLsizei -> GLsizei -> GLsizei -> GLuint -> GLuint64 -> IO ())
    ptr_glTexStorageMem3DEXT :: FunPtr
      (GLenum
       -> GLint
       -> GLenum
       -> GLint
       -> GLint
       -> GLint
       -> GLenum
       -> GLuint64
       -> IO ())
    ptr_glTexStorageMem3DEXT = IO
      (FunPtr
         (GLenum
          -> GLint
          -> GLenum
          -> GLint
          -> GLint
          -> GLint
          -> GLenum
          -> GLuint64
          -> IO ()))
    -> FunPtr
         (GLenum
          -> GLint
          -> GLenum
          -> GLint
          -> GLint
          -> GLint
          -> GLenum
          -> GLuint64
          -> IO ())
    forall a. IO a -> a
    unsafePerformIO (IO
       (FunPtr
          (GLenum
           -> GLint
           -> GLenum
           -> GLint
           -> GLint
           -> GLint
           -> GLenum
           -> GLuint64
           -> IO ()))
     -> FunPtr
          (GLenum
           -> GLint
           -> GLenum
           -> GLint
           -> GLint
           -> GLint
           -> GLenum
           -> GLuint64
           -> IO ()))
    -> IO
         (FunPtr
            (GLenum
             -> GLint
             -> GLenum
             -> GLint
             -> GLint
             -> GLint
             -> GLenum
             -> GLuint64
             -> IO ()))
    -> FunPtr
         (GLenum
          -> GLint
          -> GLenum
          -> GLint
          -> GLint
          -> GLint
          -> GLenum
          -> GLuint64
          -> IO ())
    forall a b. (a -> b) -> a -> b
    $ String
    -> IO
         (FunPtr
            (GLenum
             -> GLint
             -> GLenum
             -> GLint
             -> GLint
             -> GLint
             -> GLenum
             -> GLuint64
             -> IO ()))
    forall a. String -> IO (FunPtr a)
    getCommand String
    "glTexStorageMem3DEXT"

    -- glTexStorageMem3DMultisampleEXT ---------------------------------------------

    glTexStorageMem3DMultisampleEXT
      :: MonadIO m
      => GLenum -- ^ @target@ of type [TextureTarget](Graphics-GL-Groups.html#TextureTarget).
      -> GLsizei -- ^ @samples@.
      -> GLenum -- ^ @internalFormat@.
      -> GLsizei -- ^ @width@.
      -> GLsizei -- ^ @height@.
      -> GLsizei -- ^ @depth@.
      -> GLboolean -- ^ @fixedSampleLocations@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
      -> GLuint -- ^ @memory@.
      -> GLuint64 -- ^ @offset@.
      -> m ()
    glTexStorageMem3DMultisampleEXT :: forall (m :: * -> *).
    MonadIO m =>
    GLenum
    -> GLint
    -> GLenum
    -> GLint
    -> GLint
    -> GLint
    -> GLboolean
    -> GLenum
    -> GLuint64
    -> m ()
    glTexStorageMem3DMultisampleEXT GLenum
    v1 GLint
    v2 GLenum
    v3 GLint
    v4 GLint
    v5 GLint
    v6 GLboolean
    v7 GLenum
    v8 GLuint64
    v9 = IO () -> m ()
    forall a. IO a -> m a
    forall (m :: * -> *) a. MonadIO m => IO a -> m a
    liftIO (IO () -> m ()) -> IO () -> m ()
    forall a b. (a -> b) -> a -> b
    $ FunPtr
      (GLenum
       -> GLint
       -> GLenum
       -> GLint
       -> GLint
       -> GLint
       -> GLboolean
       -> GLenum
       -> GLuint64
       -> IO ())
    -> GLenum
    -> GLint
    -> GLenum
    -> GLint
    -> GLint
    -> GLint
    -> GLboolean
    -> GLenum
    -> GLuint64
    -> IO ()
    dyn789 FunPtr
      (GLenum
       -> GLint
       -> GLenum
       -> GLint
       -> GLint
       -> GLint
       -> GLboolean
       -> GLenum
       -> GLuint64
       -> IO ())
    ptr_glTexStorageMem3DMultisampleEXT GLenum
    v1 GLint
    v2 GLenum
    v3 GLint
    v4 GLint
    v5 GLint
    v6 GLboolean
    v7 GLenum
    v8 GLuint64
    v9

    {-# NOINLINE ptr_glTexStorageMem3DMultisampleEXT #-}
    ptr_glTexStorageMem3DMultisampleEXT :: FunPtr (GLenum -> GLsizei -> GLenum -> GLsizei -> GLsizei -> GLsizei -> GLboolean -> GLuint -> GLuint64 -> IO ())
    ptr_glTexStorageMem3DMultisampleEXT :: FunPtr
      (GLenum
       -> GLint
       -> GLenum
       -> GLint
       -> GLint
       -> GLint
       -> GLboolean
       -> GLenum
       -> GLuint64
       -> IO ())
    ptr_glTexStorageMem3DMultisampleEXT = IO
      (FunPtr
         (GLenum
          -> GLint
          -> GLenum
          -> GLint
          -> GLint
          -> GLint
          -> GLboolean
          -> GLenum
          -> GLuint64
          -> IO ()))
    -> FunPtr
         (GLenum
          -> GLint
          -> GLenum
          -> GLint
          -> GLint
          -> GLint
          -> GLboolean
          -> GLenum
          -> GLuint64
          -> IO ())
    forall a. IO a -> a
    unsafePerformIO (IO
       (FunPtr
          (GLenum
           -> GLint
           -> GLenum
           -> GLint
           -> GLint
           -> GLint
           -> GLboolean
           -> GLenum
           -> GLuint64
           -> IO ()))
     -> FunPtr
          (GLenum
           -> GLint
           -> GLenum
           -> GLint
           -> GLint
           -> GLint
           -> GLboolean
           -> GLenum
           -> GLuint64
           -> IO ()))
    -> IO
         (FunPtr
            (GLenum
             -> GLint
             -> GLenum
             -> GLint
             -> GLint
             -> GLint
             -> GLboolean
             -> GLenum
             -> GLuint64
             -> IO ()))
    -> FunPtr
         (GLenum
          -> GLint
          -> GLenum
          -> GLint
          -> GLint
          -> GLint
          -> GLboolean
          -> GLenum
          -> GLuint64
          -> IO ())
    forall a b. (a -> b) -> a -> b
    $ String
    -> IO
         (FunPtr
            (GLenum
             -> GLint
             -> GLenum
             -> GLint
             -> GLint
             -> GLint
             -> GLboolean
             -> GLenum
             -> GLuint64
             -> IO ()))
    forall a. String -> IO (FunPtr a)
    getCommand String
    "glTexStorageMem3DMultisampleEXT"

    -- glTexStorageSparseAMD -------------------------------------------------------

    glTexStorageSparseAMD
      :: MonadIO m
      => GLenum -- ^ @target@ of type [TextureTarget](Graphics-GL-Groups.html#TextureTarget).
      -> GLenum -- ^ @internalFormat@ of type [InternalFormat](Graphics-GL-Groups.html#InternalFormat).
      -> GLsizei -- ^ @width@.
      -> GLsizei -- ^ @height@.
      -> GLsizei -- ^ @depth@.
      -> GLsizei -- ^ @layers@.
      -> GLbitfield -- ^ @flags@ of type [TextureStorageMaskAMD](Graphics-GL-Groups.html#TextureStorageMaskAMD).
      -> m ()
    glTexStorageSparseAMD :: forall (m :: * -> *).
    MonadIO m =>
    GLenum
    -> GLenum -> GLint -> GLint -> GLint -> GLint -> GLenum -> m ()
    glTexStorageSparseAMD GLenum
    v1 GLenum
    v2 GLint
    v3 GLint
    v4 GLint
    v5 GLint
    v6 GLenum
    v7 = IO () -> m ()
    forall a. IO a -> m a
    forall (m :: * -> *) a. MonadIO m => IO a -> m a
    liftIO (IO () -> m ()) -> IO () -> m ()
    forall a b. (a -> b) -> a -> b
    $ FunPtr
      (GLenum
       -> GLenum -> GLint -> GLint -> GLint -> GLint -> GLenum -> IO ())
    -> GLenum
    -> GLenum
    -> GLint
    -> GLint
    -> GLint
    -> GLint
    -> GLenum
    -> IO ()
    dyn790 FunPtr
      (GLenum
       -> GLenum -> GLint -> GLint -> GLint -> GLint -> GLenum -> IO ())
    ptr_glTexStorageSparseAMD GLenum
    v1 GLenum
    v2 GLint
    v3 GLint
    v4 GLint
    v5 GLint
    v6 GLenum
    v7

    {-# NOINLINE ptr_glTexStorageSparseAMD #-}
    ptr_glTexStorageSparseAMD :: FunPtr (GLenum -> GLenum -> GLsizei -> GLsizei -> GLsizei -> GLsizei -> GLbitfield -> IO ())
    ptr_glTexStorageSparseAMD :: FunPtr
      (GLenum
       -> GLenum -> GLint -> GLint -> GLint -> GLint -> GLenum -> IO ())
    ptr_glTexStorageSparseAMD = IO
      (FunPtr
         (GLenum
          -> GLenum -> GLint -> GLint -> GLint -> GLint -> GLenum -> IO ()))
    -> FunPtr
         (GLenum
          -> GLenum -> GLint -> GLint -> GLint -> GLint -> GLenum -> IO ())
    forall a. IO a -> a
    unsafePerformIO (IO
       (FunPtr
          (GLenum
           -> GLenum -> GLint -> GLint -> GLint -> GLint -> GLenum -> IO ()))
     -> FunPtr
          (GLenum
           -> GLenum -> GLint -> GLint -> GLint -> GLint -> GLenum -> IO ()))
    -> IO
         (FunPtr
            (GLenum
             -> GLenum -> GLint -> GLint -> GLint -> GLint -> GLenum -> IO ()))
    -> FunPtr
         (GLenum
          -> GLenum -> GLint -> GLint -> GLint -> GLint -> GLenum -> IO ())
    forall a b. (a -> b) -> a -> b
    $ String
    -> IO
         (FunPtr
            (GLenum
             -> GLenum -> GLint -> GLint -> GLint -> GLint -> GLenum -> IO ()))
    forall a. String -> IO (FunPtr a)
    getCommand String
    "glTexStorageSparseAMD"

    -- glTexSubImage1D -------------------------------------------------------------

    -- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glTexSubImage1D.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glTexSubImage1D.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glTexSubImage1D.xhtml OpenGL 4.x>.
    glTexSubImage1D
      :: MonadIO m
      => GLenum -- ^ @target@ of type [TextureTarget](Graphics-GL-Groups.html#TextureTarget).
      -> GLint -- ^ @level@ of type @CheckedInt32@.
      -> GLint -- ^ @xoffset@ of type @CheckedInt32@.
      -> GLsizei -- ^ @width@.
      -> GLenum -- ^ @format@ of type [PixelFormat](Graphics-GL-Groups.html#PixelFormat).
      -> GLenum -- ^ @type@ of type [PixelType](Graphics-GL-Groups.html#PixelType).
      -> Ptr a -- ^ @pixels@ pointing to @COMPSIZE(format,type,width)@ elements of type @a@.
      -> m ()
    glTexSubImage1D :: forall (m :: * -> *) a.
    MonadIO m =>
    GLenum
    -> GLint -> GLint -> GLint -> GLenum -> GLenum -> Ptr a -> m ()
    glTexSubImage1D GLenum
    v1 GLint
    v2 GLint
    v3 GLint
    v4 GLenum
    v5 GLenum
    v6 Ptr a
    v7 = IO () -> m ()
    forall a. IO a -> m a
    forall (m :: * -> *) a. MonadIO m => IO a -> m a
    liftIO (IO () -> m ()) -> IO () -> m ()
    forall a b. (a -> b) -> a -> b
    $ FunPtr
      (GLenum
       -> GLint -> GLint -> GLint -> GLenum -> GLenum -> Ptr a -> IO ())
    -> GLenum
    -> GLint
    -> GLint
    -> GLint
    -> GLenum
    -> GLenum
    -> Ptr a
    -> IO ()
    forall a.
    FunPtr
      (GLenum
       -> GLint -> GLint -> GLint -> GLenum -> GLenum -> Ptr a -> IO ())
    -> GLenum
    -> GLint
    -> GLint
    -> GLint
    -> GLenum
    -> GLenum
    -> Ptr a
    -> IO ()
    dyn791 FunPtr
      (GLenum
       -> GLint -> GLint -> GLint -> GLenum -> GLenum -> Ptr a -> IO ())
    forall a.
    FunPtr
      (GLenum
       -> GLint -> GLint -> GLint -> GLenum -> GLenum -> Ptr a -> IO ())
    ptr_glTexSubImage1D GLenum
    v1 GLint
    v2 GLint
    v3 GLint
    v4 GLenum
    v5 GLenum
    v6 Ptr a
    v7

    {-# NOINLINE ptr_glTexSubImage1D #-}
    ptr_glTexSubImage1D :: FunPtr (GLenum -> GLint -> GLint -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO ())
    ptr_glTexSubImage1D :: forall a.
    FunPtr
      (GLenum
       -> GLint -> GLint -> GLint -> GLenum -> GLenum -> Ptr a -> IO ())
    ptr_glTexSubImage1D = IO
      (FunPtr
         (GLenum
          -> GLint -> GLint -> GLint -> GLenum -> GLenum -> Ptr a -> IO ()))
    -> FunPtr
         (GLenum
          -> GLint -> GLint -> GLint -> GLenum -> GLenum -> Ptr a -> IO ())
    forall a. IO a -> a
    unsafePerformIO (IO
       (FunPtr
          (GLenum
           -> GLint -> GLint -> GLint -> GLenum -> GLenum -> Ptr a -> IO ()))
     -> FunPtr
          (GLenum
           -> GLint -> GLint -> GLint -> GLenum -> GLenum -> Ptr a -> IO ()))
    -> IO
         (FunPtr
            (GLenum
             -> GLint -> GLint -> GLint -> GLenum -> GLenum -> Ptr a -> IO ()))
    -> FunPtr
         (GLenum
          -> GLint -> GLint -> GLint -> GLenum -> GLenum -> Ptr a -> IO ())
    forall a b. (a -> b) -> a -> b
    $ String
    -> IO
         (FunPtr
            (GLenum
             -> GLint -> GLint -> GLint -> GLenum -> GLenum -> Ptr a -> IO ()))
    forall a. String -> IO (FunPtr a)
    getCommand String
    "glTexSubImage1D"

    -- glTexSubImage1DEXT ----------------------------------------------------------

    -- | This command is an alias for 'glTexSubImage1D'.
    glTexSubImage1DEXT
      :: MonadIO m
      => GLenum -- ^ @target@ of type [TextureTarget](Graphics-GL-Groups.html#TextureTarget).
      -> GLint -- ^ @level@ of type @CheckedInt32@.
      -> GLint -- ^ @xoffset@ of type @CheckedInt32@.
      -> GLsizei -- ^ @width@.
      -> GLenum -- ^ @format@ of type [PixelFormat](Graphics-GL-Groups.html#PixelFormat).
      -> GLenum -- ^ @type@ of type [PixelType](Graphics-GL-Groups.html#PixelType).
      -> Ptr a -- ^ @pixels@ pointing to @COMPSIZE(format,type,width)@ elements of type @a@.
      -> m ()
    glTexSubImage1DEXT :: forall (m :: * -> *) a.
    MonadIO m =>
    GLenum
    -> GLint -> GLint -> GLint -> GLenum -> GLenum -> Ptr a -> m ()
    glTexSubImage1DEXT GLenum
    v1 GLint
    v2 GLint
    v3 GLint
    v4 GLenum
    v5 GLenum
    v6 Ptr a
    v7 = IO () -> m ()
    forall a. IO a -> m a
    forall (m :: * -> *) a. MonadIO m => IO a -> m a
    liftIO (IO () -> m ()) -> IO () -> m ()
    forall a b. (a -> b) -> a -> b
    $ FunPtr
      (GLenum
       -> GLint -> GLint -> GLint -> GLenum -> GLenum -> Ptr a -> IO ())
    -> GLenum
    -> GLint
    -> GLint
    -> GLint
    -> GLenum
    -> GLenum
    -> Ptr a
    -> IO ()
    forall a.
    FunPtr
      (GLenum
       -> GLint -> GLint -> GLint -> GLenum -> GLenum -> Ptr a -> IO ())
    -> GLenum
    -> GLint
    -> GLint
    -> GLint
    -> GLenum
    -> GLenum
    -> Ptr a
    -> IO ()
    dyn791 FunPtr
      (GLenum
       -> GLint -> GLint -> GLint -> GLenum -> GLenum -> Ptr a -> IO ())
    forall a.
    FunPtr
      (GLenum
       -> GLint -> GLint -> GLint -> GLenum -> GLenum -> Ptr a -> IO ())
    ptr_glTexSubImage1DEXT GLenum
    v1 GLint
    v2 GLint
    v3 GLint
    v4 GLenum
    v5 GLenum
    v6 Ptr a
    v7

    {-# NOINLINE ptr_glTexSubImage1DEXT #-}
    ptr_glTexSubImage1DEXT :: FunPtr (GLenum -> GLint -> GLint -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO ())
    ptr_glTexSubImage1DEXT :: forall a.
    FunPtr
      (GLenum
       -> GLint -> GLint -> GLint -> GLenum -> GLenum -> Ptr a -> IO ())
    ptr_glTexSubImage1DEXT = IO
      (FunPtr
         (GLenum
          -> GLint -> GLint -> GLint -> GLenum -> GLenum -> Ptr a -> IO ()))
    -> FunPtr
         (GLenum
          -> GLint -> GLint -> GLint -> GLenum -> GLenum -> Ptr a -> IO ())
    forall a. IO a -> a
    unsafePerformIO (IO
       (FunPtr
          (GLenum
           -> GLint -> GLint -> GLint -> GLenum -> GLenum -> Ptr a -> IO ()))
     -> FunPtr
          (GLenum
           -> GLint -> GLint -> GLint -> GLenum -> GLenum -> Ptr a -> IO ()))
    -> IO
         (FunPtr
            (GLenum
             -> GLint -> GLint -> GLint -> GLenum -> GLenum -> Ptr a -> IO ()))
    -> FunPtr
         (GLenum
          -> GLint -> GLint -> GLint -> GLenum -> GLenum -> Ptr a -> IO ())
    forall a b. (a -> b) -> a -> b
    $ String
    -> IO
         (FunPtr
            (GLenum
             -> GLint -> GLint -> GLint -> GLenum -> GLenum -> Ptr a -> IO ()))
    forall a. String -> IO (FunPtr a)
    getCommand String
    "glTexSubImage1DEXT"

    -- glTexSubImage2D -------------------------------------------------------------

    -- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glTexSubImage2D.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glTexSubImage2D.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glTexSubImage2D.xhtml OpenGL 4.x>.
    glTexSubImage2D
      :: MonadIO m
      => GLenum -- ^ @target@ of type [TextureTarget](Graphics-GL-Groups.html#TextureTarget).
      -> GLint -- ^ @level@ of type @CheckedInt32@.
      -> GLint -- ^ @xoffset@ of type @CheckedInt32@.
      -> GLint -- ^ @yoffset@ of type @CheckedInt32@.
      -> GLsizei -- ^ @width@.
      -> GLsizei -- ^ @height@.
      -> GLenum -- ^ @format@ of type [PixelFormat](Graphics-GL-Groups.html#PixelFormat).
      -> GLenum -- ^ @type@ of type [PixelType](Graphics-GL-Groups.html#PixelType).
      -> Ptr a -- ^ @pixels@ pointing to @COMPSIZE(format,type,width,height)@ elements of type @a@.
      -> m ()
    glTexSubImage2D :: forall (m :: * -> *) a.
    MonadIO m =>
    GLenum
    -> GLint
    -> GLint
    -> GLint
    -> GLint
    -> GLint
    -> GLenum
    -> GLenum
    -> Ptr a
    -> m ()
    glTexSubImage2D GLenum
    v1 GLint
    v2 GLint
    v3 GLint
    v4 GLint
    v5 GLint
    v6 GLenum
    v7 GLenum
    v8 Ptr a
    v9 = IO () -> m ()
    forall a. IO a -> m a
    forall (m :: * -> *) a. MonadIO m => IO a -> m a
    liftIO (IO () -> m ()) -> IO () -> m ()
    forall a b. (a -> b) -> a -> b
    $ FunPtr
      (GLenum
       -> GLint
       -> GLint
       -> GLint
       -> GLint
       -> GLint
       -> GLenum
       -> GLenum
       -> Ptr a
       -> IO ())
    -> GLenum
    -> GLint
    -> GLint
    -> GLint
    -> GLint
    -> GLint
    -> GLenum
    -> GLenum
    -> Ptr a
    -> IO ()
    forall a.
    FunPtr
      (GLenum
       -> GLint
       -> GLint
       -> GLint
       -> GLint
       -> GLint
       -> GLenum
       -> GLenum
       -> Ptr a
       -> IO ())
    -> GLenum
    -> GLint
    -> GLint
    -> GLint
    -> GLint
    -> GLint
    -> GLenum
    -> GLenum
    -> Ptr a
    -> IO ()
    dyn792 FunPtr
      (GLenum
       -> GLint
       -> GLint
       -> GLint
       -> GLint
       -> GLint
       -> GLenum
       -> GLenum
       -> Ptr a
       -> IO ())
    forall a.
    FunPtr
      (GLenum
       -> GLint
       -> GLint
       -> GLint
       -> GLint
       -> GLint
       -> GLenum
       -> GLenum
       -> Ptr a
       -> IO ())
    ptr_glTexSubImage2D GLenum
    v1 GLint
    v2 GLint
    v3 GLint
    v4 GLint
    v5 GLint
    v6 GLenum
    v7 GLenum
    v8 Ptr a
    v9

    {-# NOINLINE ptr_glTexSubImage2D #-}
    ptr_glTexSubImage2D :: FunPtr (GLenum -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO ())
    ptr_glTexSubImage2D :: forall a.
    FunPtr
      (GLenum
       -> GLint
       -> GLint
       -> GLint
       -> GLint
       -> GLint
       -> GLenum
       -> GLenum
       -> Ptr a
       -> IO ())
    ptr_glTexSubImage2D = IO
      (FunPtr
         (GLenum
          -> GLint
          -> GLint
          -> GLint
          -> GLint
          -> GLint
          -> GLenum
          -> GLenum
          -> Ptr a
          -> IO ()))
    -> FunPtr
         (GLenum
          -> GLint
          -> GLint
          -> GLint
          -> GLint
          -> GLint
          -> GLenum
          -> GLenum
          -> Ptr a
          -> IO ())
    forall a. IO a -> a
    unsafePerformIO (IO
       (FunPtr
          (GLenum
           -> GLint
           -> GLint
           -> GLint
           -> GLint
           -> GLint
           -> GLenum
           -> GLenum
           -> Ptr a
           -> IO ()))
     -> FunPtr
          (GLenum
           -> GLint
           -> GLint
           -> GLint
           -> GLint
           -> GLint
           -> GLenum
           -> GLenum
           -> Ptr a
           -> IO ()))
    -> IO
         (FunPtr
            (GLenum
             -> GLint
             -> GLint
             -> GLint
             -> GLint
             -> GLint
             -> GLenum
             -> GLenum
             -> Ptr a
             -> IO ()))
    -> FunPtr
         (GLenum
          -> GLint
          -> GLint
          -> GLint
          -> GLint
          -> GLint
          -> GLenum
          -> GLenum
          -> Ptr a
          -> IO ())
    forall a b. (a -> b) -> a -> b
    $ String
    -> IO
         (FunPtr
            (GLenum
             -> GLint
             -> GLint
             -> GLint
             -> GLint
             -> GLint
             -> GLenum
             -> GLenum
             -> Ptr a
             -> IO ()))
    forall a. String -> IO (FunPtr a)
    getCommand String
    "glTexSubImage2D"

    -- glTexSubImage2DEXT ----------------------------------------------------------

    -- | This command is an alias for 'glTexSubImage2D'.
    glTexSubImage2DEXT
      :: MonadIO m
      => GLenum -- ^ @target@ of type [TextureTarget](Graphics-GL-Groups.html#TextureTarget).
      -> GLint -- ^ @level@ of type @CheckedInt32@.
      -> GLint -- ^ @xoffset@ of type @CheckedInt32@.
      -> GLint -- ^ @yoffset@ of type @CheckedInt32@.
      -> GLsizei -- ^ @width@.
      -> GLsizei -- ^ @height@.
      -> GLenum -- ^ @format@ of type [PixelFormat](Graphics-GL-Groups.html#PixelFormat).
      -> GLenum -- ^ @type@ of type [PixelType](Graphics-GL-Groups.html#PixelType).
      -> Ptr a -- ^ @pixels@ pointing to @COMPSIZE(format,type,width,height)@ elements of type @a@.
      -> m ()
    glTexSubImage2DEXT :: forall (m :: * -> *) a.
    MonadIO m =>
    GLenum
    -> GLint
    -> GLint
    -> GLint
    -> GLint
    -> GLint
    -> GLenum
    -> GLenum
    -> Ptr a
    -> m ()
    glTexSubImage2DEXT GLenum
    v1 GLint
    v2 GLint
    v3 GLint
    v4 GLint
    v5 GLint
    v6 GLenum
    v7 GLenum
    v8 Ptr a
    v9 = IO () -> m ()
    forall a. IO a -> m a
    forall (m :: * -> *) a. MonadIO m => IO a -> m a
    liftIO (IO () -> m ()) -> IO () -> m ()
    forall a b. (a -> b) -> a -> b
    $ FunPtr
      (GLenum
       -> GLint
       -> GLint
       -> GLint
       -> GLint
       -> GLint
       -> GLenum
       -> GLenum
       -> Ptr a
       -> IO ())
    -> GLenum
    -> GLint
    -> GLint
    -> GLint
    -> GLint
    -> GLint
    -> GLenum
    -> GLenum
    -> Ptr a
    -> IO ()
    forall a.
    FunPtr
      (GLenum
       -> GLint
       -> GLint
       -> GLint
       -> GLint
       -> GLint
       -> GLenum
       -> GLenum
       -> Ptr a
       -> IO ())
    -> GLenum
    -> GLint
    -> GLint
    -> GLint
    -> GLint
    -> GLint
    -> GLenum
    -> GLenum
    -> Ptr a
    -> IO ()
    dyn792 FunPtr
      (GLenum
       -> GLint
       -> GLint
       -> GLint
       -> GLint
       -> GLint
       -> GLenum
       -> GLenum
       -> Ptr a
       -> IO ())
    forall a.
    FunPtr
      (GLenum
       -> GLint
       -> GLint
       -> GLint
       -> GLint
       -> GLint
       -> GLenum
       -> GLenum
       -> Ptr a
       -> IO ())
    ptr_glTexSubImage2DEXT GLenum
    v1 GLint
    v2 GLint
    v3 GLint
    v4 GLint
    v5 GLint
    v6 GLenum
    v7 GLenum
    v8 Ptr a
    v9

    {-# NOINLINE ptr_glTexSubImage2DEXT #-}
    ptr_glTexSubImage2DEXT :: FunPtr (GLenum -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO ())
    ptr_glTexSubImage2DEXT :: forall a.
    FunPtr
      (GLenum
       -> GLint
       -> GLint
       -> GLint
       -> GLint
       -> GLint
       -> GLenum
       -> GLenum
       -> Ptr a
       -> IO ())
    ptr_glTexSubImage2DEXT = IO
      (FunPtr
         (GLenum
          -> GLint
          -> GLint
          -> GLint
          -> GLint
          -> GLint
          -> GLenum
          -> GLenum
          -> Ptr a
          -> IO ()))
    -> FunPtr
         (GLenum
          -> GLint
          -> GLint
          -> GLint
          -> GLint
          -> GLint
          -> GLenum
          -> GLenum
          -> Ptr a
          -> IO ())
    forall a. IO a -> a
    unsafePerformIO (IO
       (FunPtr
          (GLenum
           -> GLint
           -> GLint
           -> GLint
           -> GLint
           -> GLint
           -> GLenum
           -> GLenum
           -> Ptr a
           -> IO ()))
     -> FunPtr
          (GLenum
           -> GLint
           -> GLint
           -> GLint
           -> GLint
           -> GLint
           -> GLenum
           -> GLenum
           -> Ptr a
           -> IO ()))
    -> IO
         (FunPtr
            (GLenum
             -> GLint
             -> GLint
             -> GLint
             -> GLint
             -> GLint
             -> GLenum
             -> GLenum
             -> Ptr a
             -> IO ()))
    -> FunPtr
         (GLenum
          -> GLint
          -> GLint
          -> GLint
          -> GLint
          -> GLint
          -> GLenum
          -> GLenum
          -> Ptr a
          -> IO ())
    forall a b. (a -> b) -> a -> b
    $ String
    -> IO
         (FunPtr
            (GLenum
             -> GLint
             -> GLint
             -> GLint
             -> GLint
             -> GLint
             -> GLenum
             -> GLenum
             -> Ptr a
             -> IO ()))
    forall a. String -> IO (FunPtr a)
    getCommand String
    "glTexSubImage2DEXT"

    -- glTexSubImage3D -------------------------------------------------------------

    -- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glTexSubImage3D.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glTexSubImage3D.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glTexSubImage3D.xhtml OpenGL 4.x>.
    glTexSubImage3D
      :: MonadIO m
      => GLenum -- ^ @target@ of type [TextureTarget](Graphics-GL-Groups.html#TextureTarget).
      -> GLint -- ^ @level@ of type @CheckedInt32@.
      -> GLint -- ^ @xoffset@ of type @CheckedInt32@.
      -> GLint -- ^ @yoffset@ of type @CheckedInt32@.
      -> GLint -- ^ @zoffset@ of type @CheckedInt32@.
      -> GLsizei -- ^ @width@.
      -> GLsizei -- ^ @height@.
      -> GLsizei -- ^ @depth@.
      -> GLenum -- ^ @format@ of type [PixelFormat](Graphics-GL-Groups.html#PixelFormat).
      -> GLenum -- ^ @type@ of type [PixelType](Graphics-GL-Groups.html#PixelType).
      -> Ptr a -- ^ @pixels@ pointing to @COMPSIZE(format,type,width,height,depth)@ elements of type @a@.
      -> m ()
    glTexSubImage3D :: forall (m :: * -> *) a.
    MonadIO m =>
    GLenum
    -> GLint
    -> GLint
    -> GLint
    -> GLint
    -> GLint
    -> GLint
    -> GLint
    -> GLenum
    -> GLenum
    -> Ptr a
    -> m ()
    glTexSubImage3D GLenum
    v1 GLint
    v2 GLint
    v3 GLint
    v4 GLint
    v5 GLint
    v6 GLint
    v7 GLint
    v8 GLenum
    v9 GLenum
    v10 Ptr a
    v11 = IO () -> m ()
    forall a. IO a -> m a
    forall (m :: * -> *) a. MonadIO m => IO a -> m a
    liftIO (IO () -> m ()) -> IO () -> m ()
    forall a b. (a -> b) -> a -> b
    $ FunPtr
      (GLenum
       -> GLint
       -> GLint
       -> GLint
       -> GLint
       -> GLint
       -> GLint
       -> GLint
       -> GLenum
       -> GLenum
       -> Ptr a
       -> IO ())
    -> GLenum
    -> GLint
    -> GLint
    -> GLint
    -> GLint
    -> GLint
    -> GLint
    -> GLint
    -> GLenum
    -> GLenum
    -> Ptr a
    -> IO ()
    forall a.
    FunPtr
      (GLenum
       -> GLint
       -> GLint
       -> GLint
       -> GLint
       -> GLint
       -> GLint
       -> GLint
       -> GLenum
       -> GLenum
       -> Ptr a
       -> IO ())
    -> GLenum
    -> GLint
    -> GLint
    -> GLint
    -> GLint
    -> GLint
    -> GLint
    -> GLint
    -> GLenum
    -> GLenum
    -> Ptr a
    -> IO ()
    dyn283 FunPtr
      (GLenum
       -> GLint
       -> GLint
       -> GLint
       -> GLint
       -> GLint
       -> GLint
       -> GLint
       -> GLenum
       -> GLenum
       -> Ptr a
       -> IO ())
    forall a.
    FunPtr
      (GLenum
       -> GLint
       -> GLint
       -> GLint
       -> GLint
       -> GLint
       -> GLint
       -> GLint
       -> GLenum
       -> GLenum
       -> Ptr a
       -> IO ())
    ptr_glTexSubImage3D GLenum
    v1 GLint
    v2 GLint
    v3 GLint
    v4 GLint
    v5 GLint
    v6 GLint
    v7 GLint
    v8 GLenum
    v9 GLenum
    v10 Ptr a
    v11

    {-# NOINLINE ptr_glTexSubImage3D #-}
    ptr_glTexSubImage3D :: FunPtr (GLenum -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO ())
    ptr_glTexSubImage3D :: forall a.
    FunPtr
      (GLenum
       -> GLint
       -> GLint
       -> GLint
       -> GLint
       -> GLint
       -> GLint
       -> GLint
       -> GLenum
       -> GLenum
       -> Ptr a
       -> IO ())
    ptr_glTexSubImage3D = IO
      (FunPtr
         (GLenum
          -> GLint
          -> GLint
          -> GLint
          -> GLint
          -> GLint
          -> GLint
          -> GLint
          -> GLenum
          -> GLenum
          -> Ptr a
          -> IO ()))
    -> FunPtr
         (GLenum
          -> GLint
          -> GLint
          -> GLint
          -> GLint
          -> GLint
          -> GLint
          -> GLint
          -> GLenum
          -> GLenum
          -> Ptr a
          -> IO ())
    forall a. IO a -> a
    unsafePerformIO (IO
       (FunPtr
          (GLenum
           -> GLint
           -> GLint
           -> GLint
           -> GLint
           -> GLint
           -> GLint
           -> GLint
           -> GLenum
           -> GLenum
           -> Ptr a
           -> IO ()))
     -> FunPtr
          (GLenum
           -> GLint
           -> GLint
           -> GLint
           -> GLint
           -> GLint
           -> GLint
           -> GLint
           -> GLenum
           -> GLenum
           -> Ptr a
           -> IO ()))
    -> IO
         (FunPtr
            (GLenum
             -> GLint
             -> GLint
             -> GLint
             -> GLint
             -> GLint
             -> GLint
             -> GLint
             -> GLenum
             -> GLenum
             -> Ptr a
             -> IO ()))
    -> FunPtr
         (GLenum
          -> GLint
          -> GLint
          -> GLint
          -> GLint
          -> GLint
          -> GLint
          -> GLint
          -> GLenum
          -> GLenum
          -> Ptr a
          -> IO ())
    forall a b. (a -> b) -> a -> b
    $ String
    -> IO
         (FunPtr
            (GLenum
             -> GLint
             -> GLint
             -> GLint
             -> GLint
             -> GLint
             -> GLint
             -> GLint
             -> GLenum
             -> GLenum
             -> Ptr a
             -> IO ()))
    forall a. String -> IO (FunPtr a)
    getCommand String
    "glTexSubImage3D"

    -- glTexSubImage3DEXT ----------------------------------------------------------

    -- | This command is an alias for 'glTexSubImage3D'.
    glTexSubImage3DEXT
      :: MonadIO m
      => GLenum -- ^ @target@ of type [TextureTarget](Graphics-GL-Groups.html#TextureTarget).
      -> GLint -- ^ @level@ of type @CheckedInt32@.
      -> GLint -- ^ @xoffset@ of type @CheckedInt32@.
      -> GLint -- ^ @yoffset@ of type @CheckedInt32@.
      -> GLint -- ^ @zoffset@ of type @CheckedInt32@.
      -> GLsizei -- ^ @width@.
      -> GLsizei -- ^ @height@.
      -> GLsizei -- ^ @depth@.
      -> GLenum -- ^ @format@ of type [PixelFormat](Graphics-GL-Groups.html#PixelFormat).
      -> GLenum -- ^ @type@ of type [PixelType](Graphics-GL-Groups.html#PixelType).
      -> Ptr a -- ^ @pixels@ pointing to @COMPSIZE(format,type,width,height,depth)@ elements of type @a@.
      -> m ()
    glTexSubImage3DEXT :: forall (m :: * -> *) a.
    MonadIO m =>
    GLenum
    -> GLint
    -> GLint
    -> GLint
    -> GLint
    -> GLint
    -> GLint
    -> GLint
    -> GLenum
    -> GLenum
    -> Ptr a
    -> m ()
    glTexSubImage3DEXT GLenum
    v1 GLint
    v2 GLint
    v3 GLint
    v4 GLint
    v5 GLint
    v6 GLint
    v7 GLint
    v8 GLenum
    v9 GLenum
    v10 Ptr a
    v11 = IO () -> m ()
    forall a. IO a -> m a
    forall (m :: * -> *) a. MonadIO m => IO a -> m a
    liftIO (IO () -> m ()) -> IO () -> m ()
    forall a b. (a -> b) -> a -> b
    $ FunPtr
      (GLenum
       -> GLint
       -> GLint
       -> GLint
       -> GLint
       -> GLint
       -> GLint
       -> GLint
       -> GLenum
       -> GLenum
       -> Ptr a
       -> IO ())
    -> GLenum
    -> GLint
    -> GLint
    -> GLint
    -> GLint
    -> GLint
    -> GLint
    -> GLint
    -> GLenum
    -> GLenum
    -> Ptr a
    -> IO ()
    forall a.
    FunPtr
      (GLenum
       -> GLint
       -> GLint
       -> GLint
       -> GLint
       -> GLint
       -> GLint
       -> GLint
       -> GLenum
       -> GLenum
       -> Ptr a
       -> IO ())
    -> GLenum
    -> GLint
    -> GLint
    -> GLint
    -> GLint
    -> GLint
    -> GLint
    -> GLint
    -> GLenum
    -> GLenum
    -> Ptr a
    -> IO ()
    dyn283 FunPtr
      (GLenum
       -> GLint
       -> GLint
       -> GLint
       -> GLint
       -> GLint
       -> GLint
       -> GLint
       -> GLenum
       -> GLenum
       -> Ptr a
       -> IO ())
    forall a.
    FunPtr
      (GLenum
       -> GLint
       -> GLint
       -> GLint
       -> GLint
       -> GLint
       -> GLint
       -> GLint
       -> GLenum
       -> GLenum
       -> Ptr a
       -> IO ())
    ptr_glTexSubImage3DEXT GLenum
    v1 GLint
    v2 GLint
    v3 GLint
    v4 GLint
    v5 GLint
    v6 GLint
    v7 GLint
    v8 GLenum
    v9 GLenum
    v10 Ptr a
    v11

    {-# NOINLINE ptr_glTexSubImage3DEXT #-}
    ptr_glTexSubImage3DEXT :: FunPtr (GLenum -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO ())
    ptr_glTexSubImage3DEXT :: forall a.
    FunPtr
      (GLenum
       -> GLint
       -> GLint
       -> GLint
       -> GLint
       -> GLint
       -> GLint
       -> GLint
       -> GLenum
       -> GLenum
       -> Ptr a
       -> IO ())
    ptr_glTexSubImage3DEXT = IO
      (FunPtr
         (GLenum
          -> GLint
          -> GLint
          -> GLint
          -> GLint
          -> GLint
          -> GLint
          -> GLint
          -> GLenum
          -> GLenum
          -> Ptr a
          -> IO ()))
    -> FunPtr
         (GLenum
          -> GLint
          -> GLint
          -> GLint
          -> GLint
          -> GLint
          -> GLint
          -> GLint
          -> GLenum
          -> GLenum
          -> Ptr a
          -> IO ())
    forall a. IO a -> a
    unsafePerformIO (IO
       (FunPtr
          (GLenum
           -> GLint
           -> GLint
           -> GLint
           -> GLint
           -> GLint
           -> GLint
           -> GLint
           -> GLenum
           -> GLenum
           -> Ptr a
           -> IO ()))
     -> FunPtr
          (GLenum
           -> GLint
           -> GLint
           -> GLint
           -> GLint
           -> GLint
           -> GLint
           -> GLint
           -> GLenum
           -> GLenum
           -> Ptr a
           -> IO ()))
    -> IO
         (FunPtr
            (GLenum
             -> GLint
             -> GLint
             -> GLint
             -> GLint
             -> GLint
             -> GLint
             -> GLint
             -> GLenum
             -> GLenum
             -> Ptr a
             -> IO ()))
    -> FunPtr
         (GLenum
          -> GLint
          -> GLint
          -> GLint
          -> GLint
          -> GLint
          -> GLint
          -> GLint
          -> GLenum
          -> GLenum
          -> Ptr a
          -> IO ())
    forall a b. (a -> b) -> a -> b
    $ String
    -> IO
         (FunPtr
            (GLenum
             -> GLint
             -> GLint
             -> GLint
             -> GLint
             -> GLint
             -> GLint
             -> GLint
             -> GLenum
             -> GLenum
             -> Ptr a
             -> IO ()))
    forall a. String -> IO (FunPtr a)
    getCommand String
    "glTexSubImage3DEXT"

    -- glTexSubImage3DOES ----------------------------------------------------------

    glTexSubImage3DOES
      :: MonadIO m
      => GLenum -- ^ @target@ of type [TextureTarget](Graphics-GL-Groups.html#TextureTarget).
      -> GLint -- ^ @level@.
      -> GLint -- ^ @xoffset@.
      -> GLint -- ^ @yoffset@.
      -> GLint -- ^ @zoffset@.
      -> GLsizei -- ^ @width@.
      -> GLsizei -- ^ @height@.
      -> GLsizei -- ^ @depth@.
      -> GLenum -- ^ @format@ of type [PixelFormat](Graphics-GL-Groups.html#PixelFormat).
      -> GLenum -- ^ @type@ of type [PixelType](Graphics-GL-Groups.html#PixelType).
      -> Ptr a -- ^ @pixels@ pointing to @COMPSIZE(format,type,width,height,depth)@ elements of type @a@.
      -> m ()
    glTexSubImage3DOES :: forall (m :: * -> *) a.
    MonadIO m =>
    GLenum
    -> GLint
    -> GLint
    -> GLint
    -> GLint
    -> GLint
    -> GLint
    -> GLint
    -> GLenum
    -> GLenum
    -> Ptr a
    -> m ()
    glTexSubImage3DOES GLenum
    v1 GLint
    v2 GLint
    v3 GLint
    v4 GLint
    v5 GLint
    v6 GLint
    v7 GLint
    v8 GLenum
    v9 GLenum
    v10 Ptr a
    v11 = IO () -> m ()
    forall a. IO a -> m a
    forall (m :: * -> *) a. MonadIO m => IO a -> m a
    liftIO (IO () -> m ()) -> IO () -> m ()
    forall a b. (a -> b) -> a -> b
    $ FunPtr
      (GLenum
       -> GLint
       -> GLint
       -> GLint
       -> GLint
       -> GLint
       -> GLint
       -> GLint
       -> GLenum
       -> GLenum
       -> Ptr a
       -> IO ())
    -> GLenum
    -> GLint
    -> GLint
    -> GLint
    -> GLint
    -> GLint
    -> GLint
    -> GLint
    -> GLenum
    -> GLenum
    -> Ptr a
    -> IO ()
    forall a.
    FunPtr
      (GLenum
       -> GLint
       -> GLint
       -> GLint
       -> GLint
       -> GLint
       -> GLint
       -> GLint
       -> GLenum
       -> GLenum
       -> Ptr a
       -> IO ())
    -> GLenum
    -> GLint
    -> GLint
    -> GLint
    -> GLint
    -> GLint
    -> GLint
    -> GLint
    -> GLenum
    -> GLenum
    -> Ptr a
    -> IO ()
    dyn283 FunPtr
      (GLenum
       -> GLint
       -> GLint
       -> GLint
       -> GLint
       -> GLint
       -> GLint
       -> GLint
       -> GLenum
       -> GLenum
       -> Ptr a
       -> IO ())
    forall a.
    FunPtr
      (GLenum
       -> GLint
       -> GLint
       -> GLint
       -> GLint
       -> GLint
       -> GLint
       -> GLint
       -> GLenum
       -> GLenum
       -> Ptr a
       -> IO ())
    ptr_glTexSubImage3DOES GLenum
    v1 GLint
    v2 GLint
    v3 GLint
    v4 GLint
    v5 GLint
    v6 GLint
    v7 GLint
    v8 GLenum
    v9 GLenum
    v10 Ptr a
    v11

    {-# NOINLINE ptr_glTexSubImage3DOES #-}
    ptr_glTexSubImage3DOES :: FunPtr (GLenum -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO ())
    ptr_glTexSubImage3DOES :: forall a.
    FunPtr
      (GLenum
       -> GLint
       -> GLint
       -> GLint
       -> GLint
       -> GLint
       -> GLint
       -> GLint
       -> GLenum
       -> GLenum
       -> Ptr a
       -> IO ())
    ptr_glTexSubImage3DOES = IO
      (FunPtr
         (GLenum
          -> GLint
          -> GLint
          -> GLint
          -> GLint
          -> GLint
          -> GLint
          -> GLint
          -> GLenum
          -> GLenum
          -> Ptr a
          -> IO ()))
    -> FunPtr
         (GLenum
          -> GLint
          -> GLint
          -> GLint
          -> GLint
          -> GLint
          -> GLint
          -> GLint
          -> GLenum
          -> GLenum
          -> Ptr a
          -> IO ())
    forall a. IO a -> a
    unsafePerformIO (IO
       (FunPtr
          (GLenum
           -> GLint
           -> GLint
           -> GLint
           -> GLint
           -> GLint
           -> GLint
           -> GLint
           -> GLenum
           -> GLenum
           -> Ptr a
           -> IO ()))
     -> FunPtr
          (GLenum
           -> GLint
           -> GLint
           -> GLint
           -> GLint
           -> GLint
           -> GLint
           -> GLint
           -> GLenum
           -> GLenum
           -> Ptr a
           -> IO ()))
    -> IO
         (FunPtr
            (GLenum
             -> GLint
             -> GLint
             -> GLint
             -> GLint
             -> GLint
             -> GLint
             -> GLint
             -> GLenum
             -> GLenum
             -> Ptr a
             -> IO ()))
    -> FunPtr
         (GLenum
          -> GLint
          -> GLint
          -> GLint
          -> GLint
          -> GLint
          -> GLint
          -> GLint
          -> GLenum
          -> GLenum
          -> Ptr a
          -> IO ())
    forall a b. (a -> b) -> a -> b
    $ String
    -> IO
         (FunPtr
            (GLenum
             -> GLint
             -> GLint
             -> GLint
             -> GLint
             -> GLint
             -> GLint
             -> GLint
             -> GLenum
             -> GLenum
             -> Ptr a
             -> IO ()))
    forall a. String -> IO (FunPtr a)
    getCommand String
    "glTexSubImage3DOES"

    -- glTexSubImage4DSGIS ---------------------------------------------------------

    glTexSubImage4DSGIS
      :: MonadIO m
      => GLenum -- ^ @target@ of type [TextureTarget](Graphics-GL-Groups.html#TextureTarget).
      -> GLint -- ^ @level@ of type @CheckedInt32@.
      -> GLint -- ^ @xoffset@ of type @CheckedInt32@.
      -> GLint -- ^ @yoffset@ of type @CheckedInt32@.
      -> GLint -- ^ @zoffset@ of type @CheckedInt32@.
      -> GLint -- ^ @woffset@ of type @CheckedInt32@.
      -> GLsizei -- ^ @width@.
      -> GLsizei -- ^ @height@.
      -> GLsizei -- ^ @depth@.
      -> GLsizei -- ^ @size4d@.
      -> GLenum -- ^ @format@ of type [PixelFormat](Graphics-GL-Groups.html#PixelFormat).
      -> GLenum -- ^ @type@ of type [PixelType](Graphics-GL-Groups.html#PixelType).
      -> Ptr a -- ^ @pixels@ pointing to @COMPSIZE(format,type,width,height,depth,size4d)@ elements of type @a@.
      -> m ()
    glTexSubImage4DSGIS :: forall (m :: * -> *) a.
    MonadIO m =>
    GLenum
    -> GLint
    -> GLint
    -> GLint
    -> GLint
    -> GLint
    -> GLint
    -> GLint
    -> GLint
    -> GLint
    -> GLenum
    -> GLenum
    -> Ptr a
    -> m ()
    glTexSubImage4DSGIS GLenum
    v1 GLint
    v2 GLint
    v3 GLint
    v4 GLint
    v5 GLint
    v6 GLint
    v7 GLint
    v8 GLint
    v9 GLint
    v10 GLenum
    v11 GLenum
    v12 Ptr a
    v13 = IO () -> m ()
    forall a. IO a -> m a
    forall (m :: * -> *) a. MonadIO m => IO a -> m a
    liftIO (IO () -> m ()) -> IO () -> m ()
    forall a b. (a -> b) -> a -> b
    $ FunPtr
      (GLenum
       -> GLint
       -> GLint
       -> GLint
       -> GLint
       -> GLint
       -> GLint
       -> GLint
       -> GLint
       -> GLint
       -> GLenum
       -> GLenum
       -> Ptr a
       -> IO ())
    -> GLenum
    -> GLint
    -> GLint
    -> GLint
    -> GLint
    -> GLint
    -> GLint
    -> GLint
    -> GLint
    -> GLint
    -> GLenum
    -> GLenum
    -> Ptr a
    -> IO ()
    forall a.
    FunPtr
      (GLenum
       -> GLint
       -> GLint
       -> GLint
       -> GLint
       -> GLint
       -> GLint
       -> GLint
       -> GLint
       -> GLint
       -> GLenum
       -> GLenum
       -> Ptr a
       -> IO ())
    -> GLenum
    -> GLint
    -> GLint
    -> GLint
    -> GLint
    -> GLint
    -> GLint
    -> GLint
    -> GLint
    -> GLint
    -> GLenum
    -> GLenum
    -> Ptr a
    -> IO ()
    dyn793 FunPtr
      (GLenum
       -> GLint
       -> GLint
       -> GLint
       -> GLint
       -> GLint
       -> GLint
       -> GLint
       -> GLint
       -> GLint
       -> GLenum
       -> GLenum
       -> Ptr a
       -> IO ())
    forall a.
    FunPtr
      (GLenum
       -> GLint
       -> GLint
       -> GLint
       -> GLint
       -> GLint
       -> GLint
       -> GLint
       -> GLint
       -> GLint
       -> GLenum
       -> GLenum
       -> Ptr a
       -> IO ())
    ptr_glTexSubImage4DSGIS GLenum
    v1 GLint
    v2 GLint
    v3 GLint
    v4 GLint
    v5 GLint
    v6 GLint
    v7 GLint
    v8 GLint
    v9 GLint
    v10 GLenum
    v11 GLenum
    v12 Ptr a
    v13

    {-# NOINLINE ptr_glTexSubImage4DSGIS #-}
    ptr_glTexSubImage4DSGIS :: FunPtr (GLenum -> GLint -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO ())
    ptr_glTexSubImage4DSGIS :: forall a.
    FunPtr
      (GLenum
       -> GLint
       -> GLint
       -> GLint
       -> GLint
       -> GLint
       -> GLint
       -> GLint
       -> GLint
       -> GLint
       -> GLenum
       -> GLenum
       -> Ptr a
       -> IO ())
    ptr_glTexSubImage4DSGIS = IO
      (FunPtr
         (GLenum
          -> GLint
          -> GLint
          -> GLint
          -> GLint
          -> GLint
          -> GLint
          -> GLint
          -> GLint
          -> GLint
          -> GLenum
          -> GLenum
          -> Ptr a
          -> IO ()))
    -> FunPtr
         (GLenum
          -> GLint
          -> GLint
          -> GLint
          -> GLint
          -> GLint
          -> GLint
          -> GLint
          -> GLint
          -> GLint
          -> GLenum
          -> GLenum
          -> Ptr a
          -> IO ())
    forall a. IO a -> a
    unsafePerformIO (IO
       (FunPtr
          (GLenum
           -> GLint
           -> GLint
           -> GLint
           -> GLint
           -> GLint
           -> GLint
           -> GLint
           -> GLint
           -> GLint
           -> GLenum
           -> GLenum
           -> Ptr a
           -> IO ()))
     -> FunPtr
          (GLenum
           -> GLint
           -> GLint
           -> GLint
           -> GLint
           -> GLint
           -> GLint
           -> GLint
           -> GLint
           -> GLint
           -> GLenum
           -> GLenum
           -> Ptr a
           -> IO ()))
    -> IO
         (FunPtr
            (GLenum
             -> GLint
             -> GLint
             -> GLint
             -> GLint
             -> GLint
             -> GLint
             -> GLint
             -> GLint
             -> GLint
             -> GLenum
             -> GLenum
             -> Ptr a
             -> IO ()))
    -> FunPtr
         (GLenum
          -> GLint
          -> GLint
          -> GLint
          -> GLint
          -> GLint
          -> GLint
          -> GLint
          -> GLint
          -> GLint
          -> GLenum
          -> GLenum
          -> Ptr a
          -> IO ())
    forall a b. (a -> b) -> a -> b
    $ String
    -> IO
         (FunPtr
            (GLenum
             -> GLint
             -> GLint
             -> GLint
             -> GLint
             -> GLint
             -> GLint
             -> GLint
             -> GLint
             -> GLint
             -> GLenum
             -> GLenum
             -> Ptr a
             -> IO ()))
    forall a. String -> IO (FunPtr a)
    getCommand String
    "glTexSubImage4DSGIS"

    -- glTextureAttachMemoryNV -----------------------------------------------------

    glTextureAttachMemoryNV
      :: MonadIO m
      => GLuint -- ^ @texture@.
      -> GLuint -- ^ @memory@.
      -> GLuint64 -- ^ @offset@.
      -> m ()
    glTextureAttachMemoryNV :: forall (m :: * -> *).
    MonadIO m =>
    GLenum -> GLenum -> GLuint64 -> m ()
    glTextureAttachMemoryNV GLenum
    v1 GLenum
    v2 GLuint64
    v3 = IO () -> m ()
    forall a. IO a -> m a
    forall (m :: * -> *) a. MonadIO m => IO a -> m a
    liftIO (IO () -> m ()) -> IO () -> m ()
    forall a b. (a -> b) -> a -> b
    $ FunPtr (GLenum -> GLenum -> GLuint64 -> IO ())
    -> GLenum -> GLenum -> GLuint64 -> IO ()
    dyn607 FunPtr (GLenum -> GLenum -> GLuint64 -> IO ())
    ptr_glTextureAttachMemoryNV GLenum
    v1 GLenum
    v2 GLuint64
    v3

    {-# NOINLINE ptr_glTextureAttachMemoryNV #-}
    ptr_glTextureAttachMemoryNV :: FunPtr (GLuint -> GLuint -> GLuint64 -> IO ())
    ptr_glTextureAttachMemoryNV :: FunPtr (GLenum -> GLenum -> GLuint64 -> IO ())
    ptr_glTextureAttachMemoryNV = IO (FunPtr (GLenum -> GLenum -> GLuint64 -> IO ()))
    -> FunPtr (GLenum -> GLenum -> GLuint64 -> IO ())
    forall a. IO a -> a
    unsafePerformIO (IO (FunPtr (GLenum -> GLenum -> GLuint64 -> IO ()))
     -> FunPtr (GLenum -> GLenum -> GLuint64 -> IO ()))
    -> IO (FunPtr (GLenum -> GLenum -> GLuint64 -> IO ()))
    -> FunPtr (GLenum -> GLenum -> GLuint64 -> IO ())
    forall a b. (a -> b) -> a -> b
    $ String -> IO (FunPtr (GLenum -> GLenum -> GLuint64 -> IO ()))
    forall a. String -> IO (FunPtr a)
    getCommand String
    "glTextureAttachMemoryNV"

    -- glTextureBarrier ------------------------------------------------------------

    -- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glTextureBarrier.xhtml OpenGL 4.x>.
    glTextureBarrier
      :: MonadIO m
      => m ()
    glTextureBarrier :: forall (m :: * -> *). MonadIO m => m ()
    glTextureBarrier = IO () -> m ()
    forall a. IO a -> m a
    forall (m :: * -> *) a. MonadIO m => IO a -> m a
    liftIO (IO () -> m ()) -> IO () -> m ()
    forall a b. (a -> b) -> a -> b
    $ FunPtr (IO ()) -> IO ()
    dyn11 FunPtr (IO ())
    ptr_glTextureBarrier

    {-# NOINLINE ptr_glTextureBarrier #-}
    ptr_glTextureBarrier :: FunPtr (IO ())
    ptr_glTextureBarrier :: FunPtr (IO ())
    ptr_glTextureBarrier = IO (FunPtr (IO ())) -> FunPtr (IO ())
    forall a. IO a -> a
    unsafePerformIO (IO (FunPtr (IO ())) -> FunPtr (IO ()))
    -> IO (FunPtr (IO ())) -> FunPtr (IO ())
    forall a b. (a -> b) -> a -> b
    $ String -> IO (FunPtr (IO ()))
    forall a. String -> IO (FunPtr a)
    getCommand String
    "glTextureBarrier"

    -- glTextureBarrierNV ----------------------------------------------------------

    glTextureBarrierNV
      :: MonadIO m
      => m ()
    glTextureBarrierNV :: forall (m :: * -> *). MonadIO m => m ()
    glTextureBarrierNV = IO () -> m ()
    forall a. IO a -> m a
    forall (m :: * -> *) a. MonadIO m => IO a -> m a
    liftIO (IO () -> m ()) -> IO () -> m ()
    forall a b. (a -> b) -> a -> b
    $ FunPtr (IO ()) -> IO ()
    dyn11 FunPtr (IO ())
    ptr_glTextureBarrierNV

    {-# NOINLINE ptr_glTextureBarrierNV #-}
    ptr_glTextureBarrierNV :: FunPtr (IO ())
    ptr_glTextureBarrierNV :: FunPtr (IO ())
    ptr_glTextureBarrierNV = IO (FunPtr (IO ())) -> FunPtr (IO ())
    forall a. IO a -> a
    unsafePerformIO (IO (FunPtr (IO ())) -> FunPtr (IO ()))
    -> IO (FunPtr (IO ())) -> FunPtr (IO ())
    forall a b. (a -> b) -> a -> b
    $ String -> IO (FunPtr (IO ()))
    forall a. String -> IO (FunPtr a)
    getCommand String
    "glTextureBarrierNV"

    -- glTextureBuffer -------------------------------------------------------------

    -- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glTexBuffer.xhtml OpenGL 4.x>.
    glTextureBuffer
      :: MonadIO m
      => GLuint -- ^ @texture@.
      -> GLenum -- ^ @internalformat@ of type [InternalFormat](Graphics-GL-Groups.html#InternalFormat).
      -> GLuint -- ^ @buffer@.
      -> m ()
    glTextureBuffer :: forall (m :: * -> *).
    MonadIO m =>
    GLenum -> GLenum -> GLenum -> m ()
    glTextureBuffer GLenum
    v1 GLenum
    v2 GLenum
    v3 = IO () -> m ()
    forall a. IO a -> m a
    forall (m :: * -> *) a. MonadIO m => IO a -> m a
    liftIO (IO () -> m ()) -> IO () -> m ()
    forall a b. (a -> b) -> a -> b
    $ FunPtr (GLenum -> GLenum -> GLenum -> IO ())
    -> GLenum -> GLenum -> GLenum -> IO ()
    dyn755 FunPtr (GLenum -> GLenum -> GLenum -> IO ())
    ptr_glTextureBuffer GLenum
    v1 GLenum
    v2 GLenum
    v3

    {-# NOINLINE ptr_glTextureBuffer #-}
    ptr_glTextureBuffer :: FunPtr (GLuint -> GLenum -> GLuint -> IO ())
    ptr_glTextureBuffer :: FunPtr (GLenum -> GLenum -> GLenum -> IO ())
    ptr_glTextureBuffer = IO (FunPtr (GLenum -> GLenum -> GLenum -> IO ()))
    -> FunPtr (GLenum -> GLenum -> GLenum -> IO ())
    forall a. IO a -> a
    unsafePerformIO (IO (FunPtr (GLenum -> GLenum -> GLenum -> IO ()))
     -> FunPtr (GLenum -> GLenum -> GLenum -> IO ()))
    -> IO (FunPtr (GLenum -> GLenum -> GLenum -> IO ()))
    -> FunPtr (GLenum -> GLenum -> GLenum -> IO ())
    forall a b. (a -> b) -> a -> b
    $ String -> IO (FunPtr (GLenum -> GLenum -> GLenum -> IO ()))
    forall a. String -> IO (FunPtr a)
    getCommand String
    "glTextureBuffer"

    -- glTextureBufferEXT ----------------------------------------------------------

    glTextureBufferEXT
      :: MonadIO m
      => GLuint -- ^ @texture@ of type @Texture@.
      -> GLenum -- ^ @target@ of type [TextureTarget](Graphics-GL-Groups.html#TextureTarget).
      -> GLenum -- ^ @internalformat@ of type [InternalFormat](Graphics-GL-Groups.html#InternalFormat).
      -> GLuint -- ^ @buffer@.
      -> m ()
    glTextureBufferEXT :: forall (m :: * -> *).
    MonadIO m =>
    GLenum -> GLenum -> GLenum -> GLenum -> m ()
    glTextureBufferEXT GLenum
    v1 GLenum
    v2 GLenum
    v3 GLenum
    v4 = IO () -> m ()
    forall a. IO a -> m a
    forall (m :: * -> *) a. MonadIO m => IO a -> m a
    liftIO (IO () -> m ()) -> IO () -> m ()
    forall a b. (a -> b) -> a -> b
    $ FunPtr (GLenum -> GLenum -> GLenum -> GLenum -> IO ())
    -> GLenum -> GLenum -> GLenum -> GLenum -> IO ()
    dyn613 FunPtr (GLenum -> GLenum -> GLenum -> GLenum -> IO ())
    ptr_glTextureBufferEXT GLenum
    v1 GLenum
    v2 GLenum
    v3 GLenum
    v4

    {-# NOINLINE ptr_glTextureBufferEXT #-}
    ptr_glTextureBufferEXT :: FunPtr (GLuint -> GLenum -> GLenum -> GLuint -> IO ())
    ptr_glTextureBufferEXT :: FunPtr (GLenum -> GLenum -> GLenum -> GLenum -> IO ())
    ptr_glTextureBufferEXT = IO (FunPtr (GLenum -> GLenum -> GLenum -> GLenum -> IO ()))
    -> FunPtr (GLenum -> GLenum -> GLenum -> GLenum -> IO ())
    forall a. IO a -> a
    unsafePerformIO (IO (FunPtr (GLenum -> GLenum -> GLenum -> GLenum -> IO ()))
     -> FunPtr (GLenum -> GLenum -> GLenum -> GLenum -> IO ()))
    -> IO (FunPtr (GLenum -> GLenum -> GLenum -> GLenum -> IO ()))
    -> FunPtr (GLenum -> GLenum -> GLenum -> GLenum -> IO ())
    forall a b. (a -> b) -> a -> b
    $ String
    -> IO (FunPtr (GLenum -> GLenum -> GLenum -> GLenum -> IO ()))
    forall a. String -> IO (FunPtr a)
    getCommand String
    "glTextureBufferEXT"

    -- glTextureBufferRange --------------------------------------------------------

    -- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glTexBufferRange.xhtml OpenGL 4.x>.
    glTextureBufferRange
      :: MonadIO m
      => GLuint -- ^ @texture@.
      -> GLenum -- ^ @internalformat@ of type [InternalFormat](Graphics-GL-Groups.html#InternalFormat).
      -> GLuint -- ^ @buffer@.
      -> GLintptr -- ^ @offset@.
      -> GLsizeiptr -- ^ @size@ of type @BufferSize@.
      -> m ()
    glTextureBufferRange :: forall (m :: * -> *).
    MonadIO m =>
    GLenum -> GLenum -> GLenum -> GLintptr -> GLintptr -> m ()
    glTextureBufferRange GLenum
    v1 GLenum
    v2 GLenum
    v3 GLintptr
    v4 GLintptr
    v5 = IO () -> m ()
    forall a. IO a -> m a
    forall (m :: * -> *) a. MonadIO m => IO a -> m a
    liftIO (IO () -> m ()) -> IO () -> m ()
    forall a b. (a -> b) -> a -> b
    $ FunPtr
      (GLenum -> GLenum -> GLenum -> GLintptr -> GLintptr -> IO ())
    -> GLenum -> GLenum -> GLenum -> GLintptr -> GLintptr -> IO ()
    dyn794 FunPtr
      (GLenum -> GLenum -> GLenum -> GLintptr -> GLintptr -> IO ())
    ptr_glTextureBufferRange GLenum
    v1 GLenum
    v2 GLenum
    v3 GLintptr
    v4 GLintptr
    v5

    {-# NOINLINE ptr_glTextureBufferRange #-}
    ptr_glTextureBufferRange :: FunPtr (GLuint -> GLenum -> GLuint -> GLintptr -> GLsizeiptr -> IO ())
    ptr_glTextureBufferRange :: FunPtr
      (GLenum -> GLenum -> GLenum -> GLintptr -> GLintptr -> IO ())
    ptr_glTextureBufferRange = IO
      (FunPtr
         (GLenum -> GLenum -> GLenum -> GLintptr -> GLintptr -> IO ()))
    -> FunPtr
         (GLenum -> GLenum -> GLenum -> GLintptr -> GLintptr -> IO ())
    forall a. IO a -> a
    unsafePerformIO (IO
       (FunPtr
          (GLenum -> GLenum -> GLenum -> GLintptr -> GLintptr -> IO ()))
     -> FunPtr
          (GLenum -> GLenum -> GLenum -> GLintptr -> GLintptr -> IO ()))
    -> IO
         (FunPtr
            (GLenum -> GLenum -> GLenum -> GLintptr -> GLintptr -> IO ()))
    -> FunPtr
         (GLenum -> GLenum -> GLenum -> GLintptr -> GLintptr -> IO ())
    forall a b. (a -> b) -> a -> b
    $ String
    -> IO
         (FunPtr
            (GLenum -> GLenum -> GLenum -> GLintptr -> GLintptr -> IO ()))
    forall a. String -> IO (FunPtr a)
    getCommand String
    "glTextureBufferRange"