{-# OPTIONS_HADDOCK hide #-}
--------------------------------------------------------------------------------
-- |
-- Module      :  Graphics.GL.Functions.F01
-- 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.F01 (
  glAccum,
  glAccumxOES,
  glAcquireKeyedMutexWin32EXT,
  glActiveProgramEXT,
  glActiveShaderProgram,
  glActiveShaderProgramEXT,
  glActiveStencilFaceEXT,
  glActiveTexture,
  glActiveTextureARB,
  glActiveVaryingNV,
  glAlphaFragmentOp1ATI,
  glAlphaFragmentOp2ATI,
  glAlphaFragmentOp3ATI,
  glAlphaFunc,
  glAlphaFuncQCOM,
  glAlphaFuncx,
  glAlphaFuncxOES,
  glAlphaToCoverageDitherControlNV,
  glApplyFramebufferAttachmentCMAAINTEL,
  glApplyTextureEXT,
  glAreProgramsResidentNV,
  glAreTexturesResident,
  glAreTexturesResidentEXT,
  glArrayElement,
  glArrayElementEXT,
  glArrayObjectATI,
  glAsyncCopyBufferSubDataNVX,
  glAsyncCopyImageSubDataNVX,
  glAsyncMarkerSGIX,
  glAttachObjectARB,
  glAttachShader,
  glBegin,
  glBeginConditionalRender,
  glBeginConditionalRenderNV,
  glBeginConditionalRenderNVX,
  glBeginFragmentShaderATI,
  glBeginOcclusionQueryNV,
  glBeginPerfMonitorAMD,
  glBeginPerfQueryINTEL,
  glBeginQuery,
  glBeginQueryARB,
  glBeginQueryEXT,
  glBeginQueryIndexed,
  glBeginTransformFeedback,
  glBeginTransformFeedbackEXT,
  glBeginTransformFeedbackNV,
  glBeginVertexShaderEXT,
  glBeginVideoCaptureNV,
  glBindAttribLocation,
  glBindAttribLocationARB,
  glBindBuffer,
  glBindBufferARB,
  glBindBufferBase,
  glBindBufferBaseEXT,
  glBindBufferBaseNV,
  glBindBufferOffsetEXT,
  glBindBufferOffsetNV,
  glBindBufferRange,
  glBindBufferRangeEXT,
  glBindBufferRangeNV,
  glBindBuffersBase,
  glBindBuffersRange,
  glBindFragDataLocation,
  glBindFragDataLocationEXT,
  glBindFragDataLocationIndexed,
  glBindFragDataLocationIndexedEXT,
  glBindFragmentShaderATI,
  glBindFramebuffer,
  glBindFramebufferEXT,
  glBindFramebufferOES,
  glBindImageTexture,
  glBindImageTextureEXT,
  glBindImageTextures,
  glBindLightParameterEXT,
  glBindMaterialParameterEXT,
  glBindMultiTextureEXT,
  glBindParameterEXT,
  glBindProgramARB,
  glBindProgramNV,
  glBindProgramPipeline,
  glBindProgramPipelineEXT,
  glBindRenderbuffer,
  glBindRenderbufferEXT,
  glBindRenderbufferOES,
  glBindSampler,
  glBindSamplers,
  glBindShadingRateImageNV,
  glBindTexGenParameterEXT,
  glBindTexture,
  glBindTextureEXT,
  glBindTextureUnit,
  glBindTextureUnitParameterEXT,
  glBindTextures,
  glBindTransformFeedback,
  glBindTransformFeedbackNV,
  glBindVertexArray,
  glBindVertexArrayAPPLE,
  glBindVertexArrayOES,
  glBindVertexBuffer,
  glBindVertexBuffers
) where

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

-- glAccum ---------------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glAccum.xml OpenGL 2.x>.
glAccum
  :: MonadIO m
  => GLenum -- ^ @op@ of type [AccumOp](Graphics-GL-Groups.html#AccumOp).
  -> GLfloat -- ^ @value@ of type @CoordF@.
  -> m ()
glAccum :: GLenum -> GLfloat -> m ()
glAccum v1 :: GLenum
v1 v2 :: GLfloat
v2 = IO () -> m ()
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ FunPtr (GLenum -> GLfloat -> IO ()) -> GLenum -> GLfloat -> IO ()
dyn0 FunPtr (GLenum -> GLfloat -> IO ())
ptr_glAccum GLenum
v1 GLfloat
v2

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

-- glAccumxOES -----------------------------------------------------------------

glAccumxOES
  :: MonadIO m
  => GLenum -- ^ @op@.
  -> GLfixed -- ^ @value@.
  -> m ()
glAccumxOES :: GLenum -> GLfixed -> m ()
glAccumxOES v1 :: GLenum
v1 v2 :: GLfixed
v2 = IO () -> m ()
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ FunPtr (GLenum -> GLfixed -> IO ()) -> GLenum -> GLfixed -> IO ()
dyn1 FunPtr (GLenum -> GLfixed -> IO ())
ptr_glAccumxOES GLenum
v1 GLfixed
v2

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

-- glAcquireKeyedMutexWin32EXT -------------------------------------------------

glAcquireKeyedMutexWin32EXT
  :: MonadIO m
  => GLuint -- ^ @memory@.
  -> GLuint64 -- ^ @key@.
  -> GLuint -- ^ @timeout@.
  -> m GLboolean -- ^ of type [Boolean](Graphics-GL-Groups.html#Boolean).
glAcquireKeyedMutexWin32EXT :: GLenum -> GLuint64 -> GLenum -> m GLboolean
glAcquireKeyedMutexWin32EXT v1 :: GLenum
v1 v2 :: GLuint64
v2 v3 :: GLenum
v3 = IO GLboolean -> m GLboolean
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO GLboolean -> m GLboolean) -> IO GLboolean -> m GLboolean
forall a b. (a -> b) -> a -> b
$ FunPtr (GLenum -> GLuint64 -> GLenum -> IO GLboolean)
-> GLenum -> GLuint64 -> GLenum -> IO GLboolean
dyn2 FunPtr (GLenum -> GLuint64 -> GLenum -> IO GLboolean)
ptr_glAcquireKeyedMutexWin32EXT GLenum
v1 GLuint64
v2 GLenum
v3

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

-- glActiveProgramEXT ----------------------------------------------------------

glActiveProgramEXT
  :: MonadIO m
  => GLuint -- ^ @program@.
  -> m ()
glActiveProgramEXT :: GLenum -> m ()
glActiveProgramEXT v1 :: GLenum
v1 = IO () -> m ()
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ FunPtr (GLenum -> IO ()) -> GLenum -> IO ()
dyn3 FunPtr (GLenum -> IO ())
ptr_glActiveProgramEXT GLenum
v1

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

-- glActiveShaderProgram -------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glActiveShaderProgram.xhtml OpenGL 4.x>.
glActiveShaderProgram
  :: MonadIO m
  => GLuint -- ^ @pipeline@.
  -> GLuint -- ^ @program@.
  -> m ()
glActiveShaderProgram :: GLenum -> GLenum -> m ()
glActiveShaderProgram v1 :: GLenum
v1 v2 :: GLenum
v2 = IO () -> m ()
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 ()
dyn4 FunPtr (GLenum -> GLenum -> IO ())
ptr_glActiveShaderProgram GLenum
v1 GLenum
v2

{-# NOINLINE ptr_glActiveShaderProgram #-}
ptr_glActiveShaderProgram :: FunPtr (GLuint -> GLuint -> IO ())
ptr_glActiveShaderProgram :: FunPtr (GLenum -> GLenum -> IO ())
ptr_glActiveShaderProgram = 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 "glActiveShaderProgram"

-- glActiveShaderProgramEXT ----------------------------------------------------

glActiveShaderProgramEXT
  :: MonadIO m
  => GLuint -- ^ @pipeline@.
  -> GLuint -- ^ @program@.
  -> m ()
glActiveShaderProgramEXT :: GLenum -> GLenum -> m ()
glActiveShaderProgramEXT v1 :: GLenum
v1 v2 :: GLenum
v2 = IO () -> m ()
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 ()
dyn4 FunPtr (GLenum -> GLenum -> IO ())
ptr_glActiveShaderProgramEXT GLenum
v1 GLenum
v2

{-# NOINLINE ptr_glActiveShaderProgramEXT #-}
ptr_glActiveShaderProgramEXT :: FunPtr (GLuint -> GLuint -> IO ())
ptr_glActiveShaderProgramEXT :: FunPtr (GLenum -> GLenum -> IO ())
ptr_glActiveShaderProgramEXT = 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 "glActiveShaderProgramEXT"

-- glActiveStencilFaceEXT ------------------------------------------------------

glActiveStencilFaceEXT
  :: MonadIO m
  => GLenum -- ^ @face@ of type [StencilFaceDirection](Graphics-GL-Groups.html#StencilFaceDirection).
  -> m ()
glActiveStencilFaceEXT :: GLenum -> m ()
glActiveStencilFaceEXT v1 :: GLenum
v1 = IO () -> m ()
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ FunPtr (GLenum -> IO ()) -> GLenum -> IO ()
dyn5 FunPtr (GLenum -> IO ())
ptr_glActiveStencilFaceEXT GLenum
v1

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

-- glActiveTexture -------------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glActiveTexture.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glActiveTexture.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glActiveTexture.xhtml OpenGL 4.x>.
glActiveTexture
  :: MonadIO m
  => GLenum -- ^ @texture@ of type [TextureUnit](Graphics-GL-Groups.html#TextureUnit).
  -> m ()
glActiveTexture :: GLenum -> m ()
glActiveTexture v1 :: GLenum
v1 = IO () -> m ()
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ FunPtr (GLenum -> IO ()) -> GLenum -> IO ()
dyn5 FunPtr (GLenum -> IO ())
ptr_glActiveTexture GLenum
v1

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

-- glActiveTextureARB ----------------------------------------------------------

-- | This command is an alias for 'glActiveTexture'.
glActiveTextureARB
  :: MonadIO m
  => GLenum -- ^ @texture@ of type [TextureUnit](Graphics-GL-Groups.html#TextureUnit).
  -> m ()
glActiveTextureARB :: GLenum -> m ()
glActiveTextureARB v1 :: GLenum
v1 = IO () -> m ()
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ FunPtr (GLenum -> IO ()) -> GLenum -> IO ()
dyn5 FunPtr (GLenum -> IO ())
ptr_glActiveTextureARB GLenum
v1

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

-- glActiveVaryingNV -----------------------------------------------------------

glActiveVaryingNV
  :: MonadIO m
  => GLuint -- ^ @program@.
  -> Ptr GLchar -- ^ @name@ pointing to @COMPSIZE(name)@ elements of type @GLchar@.
  -> m ()
glActiveVaryingNV :: GLenum -> Ptr GLchar -> m ()
glActiveVaryingNV v1 :: GLenum
v1 v2 :: Ptr GLchar
v2 = IO () -> m ()
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ FunPtr (GLenum -> Ptr GLchar -> IO ())
-> GLenum -> Ptr GLchar -> IO ()
dyn6 FunPtr (GLenum -> Ptr GLchar -> IO ())
ptr_glActiveVaryingNV GLenum
v1 Ptr GLchar
v2

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

-- glAlphaFragmentOp1ATI -------------------------------------------------------

glAlphaFragmentOp1ATI
  :: MonadIO m
  => GLenum -- ^ @op@ of type [FragmentOpATI](Graphics-GL-Groups.html#FragmentOpATI).
  -> GLuint -- ^ @dst@.
  -> GLuint -- ^ @dstMod@.
  -> GLuint -- ^ @arg1@.
  -> GLuint -- ^ @arg1Rep@.
  -> GLuint -- ^ @arg1Mod@.
  -> m ()
glAlphaFragmentOp1ATI :: GLenum -> GLenum -> GLenum -> GLenum -> GLenum -> GLenum -> m ()
glAlphaFragmentOp1ATI v1 :: GLenum
v1 v2 :: GLenum
v2 v3 :: GLenum
v3 v4 :: GLenum
v4 v5 :: GLenum
v5 v6 :: GLenum
v6 = IO () -> m ()
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 -> GLenum -> GLenum -> IO ())
-> GLenum
-> GLenum
-> GLenum
-> GLenum
-> GLenum
-> GLenum
-> IO ()
dyn7 FunPtr
  (GLenum -> GLenum -> GLenum -> GLenum -> GLenum -> GLenum -> IO ())
ptr_glAlphaFragmentOp1ATI GLenum
v1 GLenum
v2 GLenum
v3 GLenum
v4 GLenum
v5 GLenum
v6

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

-- glAlphaFragmentOp2ATI -------------------------------------------------------

glAlphaFragmentOp2ATI
  :: MonadIO m
  => GLenum -- ^ @op@ of type [FragmentOpATI](Graphics-GL-Groups.html#FragmentOpATI).
  -> GLuint -- ^ @dst@.
  -> GLuint -- ^ @dstMod@.
  -> GLuint -- ^ @arg1@.
  -> GLuint -- ^ @arg1Rep@.
  -> GLuint -- ^ @arg1Mod@.
  -> GLuint -- ^ @arg2@.
  -> GLuint -- ^ @arg2Rep@.
  -> GLuint -- ^ @arg2Mod@.
  -> m ()
glAlphaFragmentOp2ATI :: GLenum
-> GLenum
-> GLenum
-> GLenum
-> GLenum
-> GLenum
-> GLenum
-> GLenum
-> GLenum
-> m ()
glAlphaFragmentOp2ATI v1 :: GLenum
v1 v2 :: GLenum
v2 v3 :: GLenum
v3 v4 :: GLenum
v4 v5 :: GLenum
v5 v6 :: GLenum
v6 v7 :: GLenum
v7 v8 :: GLenum
v8 v9 :: GLenum
v9 = IO () -> m ()
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
   -> GLenum
   -> GLenum
   -> GLenum
   -> GLenum
   -> GLenum
   -> IO ())
-> GLenum
-> GLenum
-> GLenum
-> GLenum
-> GLenum
-> GLenum
-> GLenum
-> GLenum
-> GLenum
-> IO ()
dyn8 FunPtr
  (GLenum
   -> GLenum
   -> GLenum
   -> GLenum
   -> GLenum
   -> GLenum
   -> GLenum
   -> GLenum
   -> GLenum
   -> IO ())
ptr_glAlphaFragmentOp2ATI GLenum
v1 GLenum
v2 GLenum
v3 GLenum
v4 GLenum
v5 GLenum
v6 GLenum
v7 GLenum
v8 GLenum
v9

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

-- glAlphaFragmentOp3ATI -------------------------------------------------------

glAlphaFragmentOp3ATI
  :: MonadIO m
  => GLenum -- ^ @op@ of type [FragmentOpATI](Graphics-GL-Groups.html#FragmentOpATI).
  -> GLuint -- ^ @dst@.
  -> GLuint -- ^ @dstMod@.
  -> GLuint -- ^ @arg1@.
  -> GLuint -- ^ @arg1Rep@.
  -> GLuint -- ^ @arg1Mod@.
  -> GLuint -- ^ @arg2@.
  -> GLuint -- ^ @arg2Rep@.
  -> GLuint -- ^ @arg2Mod@.
  -> GLuint -- ^ @arg3@.
  -> GLuint -- ^ @arg3Rep@.
  -> GLuint -- ^ @arg3Mod@.
  -> m ()
glAlphaFragmentOp3ATI :: GLenum
-> GLenum
-> GLenum
-> GLenum
-> GLenum
-> GLenum
-> GLenum
-> GLenum
-> GLenum
-> GLenum
-> GLenum
-> GLenum
-> m ()
glAlphaFragmentOp3ATI v1 :: GLenum
v1 v2 :: GLenum
v2 v3 :: GLenum
v3 v4 :: GLenum
v4 v5 :: GLenum
v5 v6 :: GLenum
v6 v7 :: GLenum
v7 v8 :: GLenum
v8 v9 :: GLenum
v9 v10 :: GLenum
v10 v11 :: GLenum
v11 v12 :: GLenum
v12 = IO () -> m ()
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
   -> GLenum
   -> GLenum
   -> GLenum
   -> GLenum
   -> GLenum
   -> GLenum
   -> GLenum
   -> GLenum
   -> IO ())
-> GLenum
-> GLenum
-> GLenum
-> GLenum
-> GLenum
-> GLenum
-> GLenum
-> GLenum
-> GLenum
-> GLenum
-> GLenum
-> GLenum
-> IO ()
dyn9 FunPtr
  (GLenum
   -> GLenum
   -> GLenum
   -> GLenum
   -> GLenum
   -> GLenum
   -> GLenum
   -> GLenum
   -> GLenum
   -> GLenum
   -> GLenum
   -> GLenum
   -> IO ())
ptr_glAlphaFragmentOp3ATI GLenum
v1 GLenum
v2 GLenum
v3 GLenum
v4 GLenum
v5 GLenum
v6 GLenum
v7 GLenum
v8 GLenum
v9 GLenum
v10 GLenum
v11 GLenum
v12

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

-- glAlphaFunc -----------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glAlphaFunc.xml OpenGL 2.x>.
glAlphaFunc
  :: MonadIO m
  => GLenum -- ^ @func@ of type [AlphaFunction](Graphics-GL-Groups.html#AlphaFunction).
  -> GLfloat -- ^ @ref@.
  -> m ()
glAlphaFunc :: GLenum -> GLfloat -> m ()
glAlphaFunc v1 :: GLenum
v1 v2 :: GLfloat
v2 = IO () -> m ()
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ FunPtr (GLenum -> GLfloat -> IO ()) -> GLenum -> GLfloat -> IO ()
dyn0 FunPtr (GLenum -> GLfloat -> IO ())
ptr_glAlphaFunc GLenum
v1 GLfloat
v2

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

-- glAlphaFuncQCOM -------------------------------------------------------------

glAlphaFuncQCOM
  :: MonadIO m
  => GLenum -- ^ @func@.
  -> GLclampf -- ^ @ref@.
  -> m ()
glAlphaFuncQCOM :: GLenum -> GLfloat -> m ()
glAlphaFuncQCOM v1 :: GLenum
v1 v2 :: GLfloat
v2 = IO () -> m ()
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ FunPtr (GLenum -> GLfloat -> IO ()) -> GLenum -> GLfloat -> IO ()
dyn10 FunPtr (GLenum -> GLfloat -> IO ())
ptr_glAlphaFuncQCOM GLenum
v1 GLfloat
v2

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

-- glAlphaFuncx ----------------------------------------------------------------

glAlphaFuncx
  :: MonadIO m
  => GLenum -- ^ @func@ of type [AlphaFunction](Graphics-GL-Groups.html#AlphaFunction).
  -> GLfixed -- ^ @ref@.
  -> m ()
glAlphaFuncx :: GLenum -> GLfixed -> m ()
glAlphaFuncx v1 :: GLenum
v1 v2 :: GLfixed
v2 = IO () -> m ()
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ FunPtr (GLenum -> GLfixed -> IO ()) -> GLenum -> GLfixed -> IO ()
dyn1 FunPtr (GLenum -> GLfixed -> IO ())
ptr_glAlphaFuncx GLenum
v1 GLfixed
v2

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

-- glAlphaFuncxOES -------------------------------------------------------------

glAlphaFuncxOES
  :: MonadIO m
  => GLenum -- ^ @func@ of type [AlphaFunction](Graphics-GL-Groups.html#AlphaFunction).
  -> GLfixed -- ^ @ref@ of type @ClampedFixed@.
  -> m ()
glAlphaFuncxOES :: GLenum -> GLfixed -> m ()
glAlphaFuncxOES v1 :: GLenum
v1 v2 :: GLfixed
v2 = IO () -> m ()
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ FunPtr (GLenum -> GLfixed -> IO ()) -> GLenum -> GLfixed -> IO ()
dyn1 FunPtr (GLenum -> GLfixed -> IO ())
ptr_glAlphaFuncxOES GLenum
v1 GLfixed
v2

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

-- glAlphaToCoverageDitherControlNV --------------------------------------------

glAlphaToCoverageDitherControlNV
  :: MonadIO m
  => GLenum -- ^ @mode@.
  -> m ()
glAlphaToCoverageDitherControlNV :: GLenum -> m ()
glAlphaToCoverageDitherControlNV v1 :: GLenum
v1 = IO () -> m ()
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ FunPtr (GLenum -> IO ()) -> GLenum -> IO ()
dyn5 FunPtr (GLenum -> IO ())
ptr_glAlphaToCoverageDitherControlNV GLenum
v1

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

-- glApplyFramebufferAttachmentCMAAINTEL ---------------------------------------

glApplyFramebufferAttachmentCMAAINTEL
  :: MonadIO m
  => m ()
glApplyFramebufferAttachmentCMAAINTEL :: m ()
glApplyFramebufferAttachmentCMAAINTEL = IO () -> m ()
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_glApplyFramebufferAttachmentCMAAINTEL

{-# NOINLINE ptr_glApplyFramebufferAttachmentCMAAINTEL #-}
ptr_glApplyFramebufferAttachmentCMAAINTEL :: FunPtr (IO ())
ptr_glApplyFramebufferAttachmentCMAAINTEL :: FunPtr (IO ())
ptr_glApplyFramebufferAttachmentCMAAINTEL = 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 "glApplyFramebufferAttachmentCMAAINTEL"

-- glApplyTextureEXT -----------------------------------------------------------

glApplyTextureEXT
  :: MonadIO m
  => GLenum -- ^ @mode@ of type [LightTextureModeEXT](Graphics-GL-Groups.html#LightTextureModeEXT).
  -> m ()
glApplyTextureEXT :: GLenum -> m ()
glApplyTextureEXT v1 :: GLenum
v1 = IO () -> m ()
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ FunPtr (GLenum -> IO ()) -> GLenum -> IO ()
dyn5 FunPtr (GLenum -> IO ())
ptr_glApplyTextureEXT GLenum
v1

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

-- glAreProgramsResidentNV -----------------------------------------------------

glAreProgramsResidentNV
  :: MonadIO m
  => GLsizei -- ^ @n@.
  -> Ptr GLuint -- ^ @programs@ pointing to @n@ elements of type @GLuint@.
  -> Ptr GLboolean -- ^ @residences@ pointing to @n@ elements of type [Boolean](Graphics-GL-Groups.html#Boolean).
  -> m GLboolean -- ^ of type [Boolean](Graphics-GL-Groups.html#Boolean).
glAreProgramsResidentNV :: GLsizei -> Ptr GLenum -> Ptr GLboolean -> m GLboolean
glAreProgramsResidentNV v1 :: GLsizei
v1 v2 :: Ptr GLenum
v2 v3 :: Ptr GLboolean
v3 = IO GLboolean -> m GLboolean
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO GLboolean -> m GLboolean) -> IO GLboolean -> m GLboolean
forall a b. (a -> b) -> a -> b
$ FunPtr (GLsizei -> Ptr GLenum -> Ptr GLboolean -> IO GLboolean)
-> GLsizei -> Ptr GLenum -> Ptr GLboolean -> IO GLboolean
dyn12 FunPtr (GLsizei -> Ptr GLenum -> Ptr GLboolean -> IO GLboolean)
ptr_glAreProgramsResidentNV GLsizei
v1 Ptr GLenum
v2 Ptr GLboolean
v3

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

-- glAreTexturesResident -------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glAreTexturesResident.xml OpenGL 2.x>.
glAreTexturesResident
  :: MonadIO m
  => GLsizei -- ^ @n@.
  -> Ptr GLuint -- ^ @textures@ pointing to @n@ elements of type @Texture@.
  -> Ptr GLboolean -- ^ @residences@ pointing to @n@ elements of type [Boolean](Graphics-GL-Groups.html#Boolean).
  -> m GLboolean -- ^ of type [Boolean](Graphics-GL-Groups.html#Boolean).
glAreTexturesResident :: GLsizei -> Ptr GLenum -> Ptr GLboolean -> m GLboolean
glAreTexturesResident v1 :: GLsizei
v1 v2 :: Ptr GLenum
v2 v3 :: Ptr GLboolean
v3 = IO GLboolean -> m GLboolean
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO GLboolean -> m GLboolean) -> IO GLboolean -> m GLboolean
forall a b. (a -> b) -> a -> b
$ FunPtr (GLsizei -> Ptr GLenum -> Ptr GLboolean -> IO GLboolean)
-> GLsizei -> Ptr GLenum -> Ptr GLboolean -> IO GLboolean
dyn12 FunPtr (GLsizei -> Ptr GLenum -> Ptr GLboolean -> IO GLboolean)
ptr_glAreTexturesResident GLsizei
v1 Ptr GLenum
v2 Ptr GLboolean
v3

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

-- glAreTexturesResidentEXT ----------------------------------------------------

glAreTexturesResidentEXT
  :: MonadIO m
  => GLsizei -- ^ @n@.
  -> Ptr GLuint -- ^ @textures@ pointing to @n@ elements of type @Texture@.
  -> Ptr GLboolean -- ^ @residences@ pointing to @n@ elements of type [Boolean](Graphics-GL-Groups.html#Boolean).
  -> m GLboolean -- ^ of type [Boolean](Graphics-GL-Groups.html#Boolean).
glAreTexturesResidentEXT :: GLsizei -> Ptr GLenum -> Ptr GLboolean -> m GLboolean
glAreTexturesResidentEXT v1 :: GLsizei
v1 v2 :: Ptr GLenum
v2 v3 :: Ptr GLboolean
v3 = IO GLboolean -> m GLboolean
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO GLboolean -> m GLboolean) -> IO GLboolean -> m GLboolean
forall a b. (a -> b) -> a -> b
$ FunPtr (GLsizei -> Ptr GLenum -> Ptr GLboolean -> IO GLboolean)
-> GLsizei -> Ptr GLenum -> Ptr GLboolean -> IO GLboolean
dyn12 FunPtr (GLsizei -> Ptr GLenum -> Ptr GLboolean -> IO GLboolean)
ptr_glAreTexturesResidentEXT GLsizei
v1 Ptr GLenum
v2 Ptr GLboolean
v3

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

-- glArrayElement --------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glArrayElement.xml OpenGL 2.x>.
glArrayElement
  :: MonadIO m
  => GLint -- ^ @i@.
  -> m ()
glArrayElement :: GLsizei -> m ()
glArrayElement v1 :: GLsizei
v1 = IO () -> m ()
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ FunPtr (GLsizei -> IO ()) -> GLsizei -> IO ()
dyn13 FunPtr (GLsizei -> IO ())
ptr_glArrayElement GLsizei
v1

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

-- glArrayElementEXT -----------------------------------------------------------

-- | This command is an alias for 'glArrayElement'.
glArrayElementEXT
  :: MonadIO m
  => GLint -- ^ @i@.
  -> m ()
glArrayElementEXT :: GLsizei -> m ()
glArrayElementEXT v1 :: GLsizei
v1 = IO () -> m ()
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ FunPtr (GLsizei -> IO ()) -> GLsizei -> IO ()
dyn13 FunPtr (GLsizei -> IO ())
ptr_glArrayElementEXT GLsizei
v1

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

-- glArrayObjectATI ------------------------------------------------------------

glArrayObjectATI
  :: MonadIO m
  => GLenum -- ^ @array@ of type [EnableCap](Graphics-GL-Groups.html#EnableCap).
  -> GLint -- ^ @size@.
  -> GLenum -- ^ @type@ of type [ScalarType](Graphics-GL-Groups.html#ScalarType).
  -> GLsizei -- ^ @stride@.
  -> GLuint -- ^ @buffer@.
  -> GLuint -- ^ @offset@.
  -> m ()
glArrayObjectATI :: GLenum -> GLsizei -> GLenum -> GLsizei -> GLenum -> GLenum -> m ()
glArrayObjectATI v1 :: GLenum
v1 v2 :: GLsizei
v2 v3 :: GLenum
v3 v4 :: GLsizei
v4 v5 :: GLenum
v5 v6 :: GLenum
v6 = IO () -> m ()
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ FunPtr
  (GLenum
   -> GLsizei -> GLenum -> GLsizei -> GLenum -> GLenum -> IO ())
-> GLenum
-> GLsizei
-> GLenum
-> GLsizei
-> GLenum
-> GLenum
-> IO ()
dyn14 FunPtr
  (GLenum
   -> GLsizei -> GLenum -> GLsizei -> GLenum -> GLenum -> IO ())
ptr_glArrayObjectATI GLenum
v1 GLsizei
v2 GLenum
v3 GLsizei
v4 GLenum
v5 GLenum
v6

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

-- glAsyncCopyBufferSubDataNVX -------------------------------------------------

glAsyncCopyBufferSubDataNVX
  :: MonadIO m
  => GLsizei -- ^ @waitSemaphoreCount@.
  -> Ptr GLuint -- ^ @waitSemaphoreArray@ pointing to @waitSemaphoreCount@ elements of type @GLuint@.
  -> Ptr GLuint64 -- ^ @fenceValueArray@ pointing to @waitSemaphoreCount@ elements of type @GLuint64@.
  -> GLuint -- ^ @readGpu@.
  -> GLbitfield -- ^ @writeGpuMask@.
  -> GLuint -- ^ @readBuffer@.
  -> GLuint -- ^ @writeBuffer@.
  -> GLintptr -- ^ @readOffset@.
  -> GLintptr -- ^ @writeOffset@.
  -> GLsizeiptr -- ^ @size@.
  -> GLsizei -- ^ @signalSemaphoreCount@.
  -> Ptr GLuint -- ^ @signalSemaphoreArray@ pointing to @signalSemaphoreCount@ elements of type @GLuint@.
  -> Ptr GLuint64 -- ^ @signalValueArray@ pointing to @signalSemaphoreCount@ elements of type @GLuint64@.
  -> m GLuint
glAsyncCopyBufferSubDataNVX :: GLsizei
-> Ptr GLenum
-> Ptr GLuint64
-> GLenum
-> GLenum
-> GLenum
-> GLenum
-> GLintptr
-> GLintptr
-> GLintptr
-> GLsizei
-> Ptr GLenum
-> Ptr GLuint64
-> m GLenum
glAsyncCopyBufferSubDataNVX v1 :: GLsizei
v1 v2 :: Ptr GLenum
v2 v3 :: Ptr GLuint64
v3 v4 :: GLenum
v4 v5 :: GLenum
v5 v6 :: GLenum
v6 v7 :: GLenum
v7 v8 :: GLintptr
v8 v9 :: GLintptr
v9 v10 :: GLintptr
v10 v11 :: GLsizei
v11 v12 :: Ptr GLenum
v12 v13 :: Ptr GLuint64
v13 = IO GLenum -> m GLenum
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO GLenum -> m GLenum) -> IO GLenum -> m GLenum
forall a b. (a -> b) -> a -> b
$ FunPtr
  (GLsizei
   -> Ptr GLenum
   -> Ptr GLuint64
   -> GLenum
   -> GLenum
   -> GLenum
   -> GLenum
   -> GLintptr
   -> GLintptr
   -> GLintptr
   -> GLsizei
   -> Ptr GLenum
   -> Ptr GLuint64
   -> IO GLenum)
-> GLsizei
-> Ptr GLenum
-> Ptr GLuint64
-> GLenum
-> GLenum
-> GLenum
-> GLenum
-> GLintptr
-> GLintptr
-> GLintptr
-> GLsizei
-> Ptr GLenum
-> Ptr GLuint64
-> IO GLenum
dyn15 FunPtr
  (GLsizei
   -> Ptr GLenum
   -> Ptr GLuint64
   -> GLenum
   -> GLenum
   -> GLenum
   -> GLenum
   -> GLintptr
   -> GLintptr
   -> GLintptr
   -> GLsizei
   -> Ptr GLenum
   -> Ptr GLuint64
   -> IO GLenum)
ptr_glAsyncCopyBufferSubDataNVX GLsizei
v1 Ptr GLenum
v2 Ptr GLuint64
v3 GLenum
v4 GLenum
v5 GLenum
v6 GLenum
v7 GLintptr
v8 GLintptr
v9 GLintptr
v10 GLsizei
v11 Ptr GLenum
v12 Ptr GLuint64
v13

{-# NOINLINE ptr_glAsyncCopyBufferSubDataNVX #-}
ptr_glAsyncCopyBufferSubDataNVX :: FunPtr (GLsizei -> Ptr GLuint -> Ptr GLuint64 -> GLuint -> GLbitfield -> GLuint -> GLuint -> GLintptr -> GLintptr -> GLsizeiptr -> GLsizei -> Ptr GLuint -> Ptr GLuint64 -> IO GLuint)
ptr_glAsyncCopyBufferSubDataNVX :: FunPtr
  (GLsizei
   -> Ptr GLenum
   -> Ptr GLuint64
   -> GLenum
   -> GLenum
   -> GLenum
   -> GLenum
   -> GLintptr
   -> GLintptr
   -> GLintptr
   -> GLsizei
   -> Ptr GLenum
   -> Ptr GLuint64
   -> IO GLenum)
ptr_glAsyncCopyBufferSubDataNVX = IO
  (FunPtr
     (GLsizei
      -> Ptr GLenum
      -> Ptr GLuint64
      -> GLenum
      -> GLenum
      -> GLenum
      -> GLenum
      -> GLintptr
      -> GLintptr
      -> GLintptr
      -> GLsizei
      -> Ptr GLenum
      -> Ptr GLuint64
      -> IO GLenum))
-> FunPtr
     (GLsizei
      -> Ptr GLenum
      -> Ptr GLuint64
      -> GLenum
      -> GLenum
      -> GLenum
      -> GLenum
      -> GLintptr
      -> GLintptr
      -> GLintptr
      -> GLsizei
      -> Ptr GLenum
      -> Ptr GLuint64
      -> IO GLenum)
forall a. IO a -> a
unsafePerformIO (IO
   (FunPtr
      (GLsizei
       -> Ptr GLenum
       -> Ptr GLuint64
       -> GLenum
       -> GLenum
       -> GLenum
       -> GLenum
       -> GLintptr
       -> GLintptr
       -> GLintptr
       -> GLsizei
       -> Ptr GLenum
       -> Ptr GLuint64
       -> IO GLenum))
 -> FunPtr
      (GLsizei
       -> Ptr GLenum
       -> Ptr GLuint64
       -> GLenum
       -> GLenum
       -> GLenum
       -> GLenum
       -> GLintptr
       -> GLintptr
       -> GLintptr
       -> GLsizei
       -> Ptr GLenum
       -> Ptr GLuint64
       -> IO GLenum))
-> IO
     (FunPtr
        (GLsizei
         -> Ptr GLenum
         -> Ptr GLuint64
         -> GLenum
         -> GLenum
         -> GLenum
         -> GLenum
         -> GLintptr
         -> GLintptr
         -> GLintptr
         -> GLsizei
         -> Ptr GLenum
         -> Ptr GLuint64
         -> IO GLenum))
-> FunPtr
     (GLsizei
      -> Ptr GLenum
      -> Ptr GLuint64
      -> GLenum
      -> GLenum
      -> GLenum
      -> GLenum
      -> GLintptr
      -> GLintptr
      -> GLintptr
      -> GLsizei
      -> Ptr GLenum
      -> Ptr GLuint64
      -> IO GLenum)
forall a b. (a -> b) -> a -> b
$ String
-> IO
     (FunPtr
        (GLsizei
         -> Ptr GLenum
         -> Ptr GLuint64
         -> GLenum
         -> GLenum
         -> GLenum
         -> GLenum
         -> GLintptr
         -> GLintptr
         -> GLintptr
         -> GLsizei
         -> Ptr GLenum
         -> Ptr GLuint64
         -> IO GLenum))
forall a. String -> IO (FunPtr a)
getCommand "glAsyncCopyBufferSubDataNVX"

-- glAsyncCopyImageSubDataNVX --------------------------------------------------

glAsyncCopyImageSubDataNVX
  :: MonadIO m
  => GLsizei -- ^ @waitSemaphoreCount@.
  -> Ptr GLuint -- ^ @waitSemaphoreArray@ pointing to @waitSemaphoreCount@ elements of type @GLuint@.
  -> Ptr GLuint64 -- ^ @waitValueArray@ pointing to @waitSemaphoreCount@ elements of type @GLuint64@.
  -> GLuint -- ^ @srcGpu@.
  -> GLbitfield -- ^ @dstGpuMask@.
  -> GLuint -- ^ @srcName@.
  -> GLenum -- ^ @srcTarget@.
  -> GLint -- ^ @srcLevel@.
  -> GLint -- ^ @srcX@.
  -> GLint -- ^ @srcY@.
  -> GLint -- ^ @srcZ@.
  -> GLuint -- ^ @dstName@.
  -> GLenum -- ^ @dstTarget@.
  -> GLint -- ^ @dstLevel@.
  -> GLint -- ^ @dstX@.
  -> GLint -- ^ @dstY@.
  -> GLint -- ^ @dstZ@.
  -> GLsizei -- ^ @srcWidth@.
  -> GLsizei -- ^ @srcHeight@.
  -> GLsizei -- ^ @srcDepth@.
  -> GLsizei -- ^ @signalSemaphoreCount@.
  -> Ptr GLuint -- ^ @signalSemaphoreArray@ pointing to @signalSemaphoreCount@ elements of type @GLuint@.
  -> Ptr GLuint64 -- ^ @signalValueArray@ pointing to @signalSemaphoreCount@ elements of type @GLuint64@.
  -> m GLuint
glAsyncCopyImageSubDataNVX :: GLsizei
-> Ptr GLenum
-> Ptr GLuint64
-> GLenum
-> GLenum
-> GLenum
-> GLenum
-> GLsizei
-> GLsizei
-> GLsizei
-> GLsizei
-> GLenum
-> GLenum
-> GLsizei
-> GLsizei
-> GLsizei
-> GLsizei
-> GLsizei
-> GLsizei
-> GLsizei
-> GLsizei
-> Ptr GLenum
-> Ptr GLuint64
-> m GLenum
glAsyncCopyImageSubDataNVX v1 :: GLsizei
v1 v2 :: Ptr GLenum
v2 v3 :: Ptr GLuint64
v3 v4 :: GLenum
v4 v5 :: GLenum
v5 v6 :: GLenum
v6 v7 :: GLenum
v7 v8 :: GLsizei
v8 v9 :: GLsizei
v9 v10 :: GLsizei
v10 v11 :: GLsizei
v11 v12 :: GLenum
v12 v13 :: GLenum
v13 v14 :: GLsizei
v14 v15 :: GLsizei
v15 v16 :: GLsizei
v16 v17 :: GLsizei
v17 v18 :: GLsizei
v18 v19 :: GLsizei
v19 v20 :: GLsizei
v20 v21 :: GLsizei
v21 v22 :: Ptr GLenum
v22 v23 :: Ptr GLuint64
v23 = IO GLenum -> m GLenum
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO GLenum -> m GLenum) -> IO GLenum -> m GLenum
forall a b. (a -> b) -> a -> b
$ FunPtr
  (GLsizei
   -> Ptr GLenum
   -> Ptr GLuint64
   -> GLenum
   -> GLenum
   -> GLenum
   -> GLenum
   -> GLsizei
   -> GLsizei
   -> GLsizei
   -> GLsizei
   -> GLenum
   -> GLenum
   -> GLsizei
   -> GLsizei
   -> GLsizei
   -> GLsizei
   -> GLsizei
   -> GLsizei
   -> GLsizei
   -> GLsizei
   -> Ptr GLenum
   -> Ptr GLuint64
   -> IO GLenum)
-> GLsizei
-> Ptr GLenum
-> Ptr GLuint64
-> GLenum
-> GLenum
-> GLenum
-> GLenum
-> GLsizei
-> GLsizei
-> GLsizei
-> GLsizei
-> GLenum
-> GLenum
-> GLsizei
-> GLsizei
-> GLsizei
-> GLsizei
-> GLsizei
-> GLsizei
-> GLsizei
-> GLsizei
-> Ptr GLenum
-> Ptr GLuint64
-> IO GLenum
dyn16 FunPtr
  (GLsizei
   -> Ptr GLenum
   -> Ptr GLuint64
   -> GLenum
   -> GLenum
   -> GLenum
   -> GLenum
   -> GLsizei
   -> GLsizei
   -> GLsizei
   -> GLsizei
   -> GLenum
   -> GLenum
   -> GLsizei
   -> GLsizei
   -> GLsizei
   -> GLsizei
   -> GLsizei
   -> GLsizei
   -> GLsizei
   -> GLsizei
   -> Ptr GLenum
   -> Ptr GLuint64
   -> IO GLenum)
ptr_glAsyncCopyImageSubDataNVX GLsizei
v1 Ptr GLenum
v2 Ptr GLuint64
v3 GLenum
v4 GLenum
v5 GLenum
v6 GLenum
v7 GLsizei
v8 GLsizei
v9 GLsizei
v10 GLsizei
v11 GLenum
v12 GLenum
v13 GLsizei
v14 GLsizei
v15 GLsizei
v16 GLsizei
v17 GLsizei
v18 GLsizei
v19 GLsizei
v20 GLsizei
v21 Ptr GLenum
v22 Ptr GLuint64
v23

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

-- glAsyncMarkerSGIX -----------------------------------------------------------

glAsyncMarkerSGIX
  :: MonadIO m
  => GLuint -- ^ @marker@.
  -> m ()
glAsyncMarkerSGIX :: GLenum -> m ()
glAsyncMarkerSGIX v1 :: GLenum
v1 = IO () -> m ()
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ FunPtr (GLenum -> IO ()) -> GLenum -> IO ()
dyn3 FunPtr (GLenum -> IO ())
ptr_glAsyncMarkerSGIX GLenum
v1

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

-- glAttachObjectARB -----------------------------------------------------------

-- | This command is an alias for 'glAttachShader'.
glAttachObjectARB
  :: MonadIO m
  => GLhandleARB -- ^ @containerObj@ of type @handleARB@.
  -> GLhandleARB -- ^ @obj@ of type @handleARB@.
  -> m ()
glAttachObjectARB :: GLenum -> GLenum -> m ()
glAttachObjectARB v1 :: GLenum
v1 v2 :: GLenum
v2 = IO () -> m ()
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 ()
dyn17 FunPtr (GLenum -> GLenum -> IO ())
ptr_glAttachObjectARB GLenum
v1 GLenum
v2

{-# NOINLINE ptr_glAttachObjectARB #-}
ptr_glAttachObjectARB :: FunPtr (GLhandleARB -> GLhandleARB -> IO ())
ptr_glAttachObjectARB :: FunPtr (GLenum -> GLenum -> IO ())
ptr_glAttachObjectARB = 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 "glAttachObjectARB"

-- glAttachShader --------------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glAttachShader.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glAttachShader.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glAttachShader.xhtml OpenGL 4.x>.
glAttachShader
  :: MonadIO m
  => GLuint -- ^ @program@.
  -> GLuint -- ^ @shader@.
  -> m ()
glAttachShader :: GLenum -> GLenum -> m ()
glAttachShader v1 :: GLenum
v1 v2 :: GLenum
v2 = IO () -> m ()
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 ()
dyn4 FunPtr (GLenum -> GLenum -> IO ())
ptr_glAttachShader GLenum
v1 GLenum
v2

{-# NOINLINE ptr_glAttachShader #-}
ptr_glAttachShader :: FunPtr (GLuint -> GLuint -> IO ())
ptr_glAttachShader :: FunPtr (GLenum -> GLenum -> IO ())
ptr_glAttachShader = 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 "glAttachShader"

-- glBegin ---------------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glBegin.xml OpenGL 2.x>.
glBegin
  :: MonadIO m
  => GLenum -- ^ @mode@ of type [PrimitiveType](Graphics-GL-Groups.html#PrimitiveType).
  -> m ()
glBegin :: GLenum -> m ()
glBegin v1 :: GLenum
v1 = IO () -> m ()
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ FunPtr (GLenum -> IO ()) -> GLenum -> IO ()
dyn5 FunPtr (GLenum -> IO ())
ptr_glBegin GLenum
v1

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

-- glBeginConditionalRender ----------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glBeginConditionalRender.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glBeginConditionalRender.xhtml OpenGL 4.x>.
glBeginConditionalRender
  :: MonadIO m
  => GLuint -- ^ @id@.
  -> GLenum -- ^ @mode@ of type [ConditionalRenderMode](Graphics-GL-Groups.html#ConditionalRenderMode).
  -> m ()
glBeginConditionalRender :: GLenum -> GLenum -> m ()
glBeginConditionalRender v1 :: GLenum
v1 v2 :: GLenum
v2 = IO () -> m ()
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 ()
dyn18 FunPtr (GLenum -> GLenum -> IO ())
ptr_glBeginConditionalRender GLenum
v1 GLenum
v2

{-# NOINLINE ptr_glBeginConditionalRender #-}
ptr_glBeginConditionalRender :: FunPtr (GLuint -> GLenum -> IO ())
ptr_glBeginConditionalRender :: FunPtr (GLenum -> GLenum -> IO ())
ptr_glBeginConditionalRender = 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 "glBeginConditionalRender"

-- glBeginConditionalRenderNV --------------------------------------------------

-- | This command is an alias for 'glBeginConditionalRender'.
glBeginConditionalRenderNV
  :: MonadIO m
  => GLuint -- ^ @id@.
  -> GLenum -- ^ @mode@ of type [ConditionalRenderMode](Graphics-GL-Groups.html#ConditionalRenderMode).
  -> m ()
glBeginConditionalRenderNV :: GLenum -> GLenum -> m ()
glBeginConditionalRenderNV v1 :: GLenum
v1 v2 :: GLenum
v2 = IO () -> m ()
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 ()
dyn18 FunPtr (GLenum -> GLenum -> IO ())
ptr_glBeginConditionalRenderNV GLenum
v1 GLenum
v2

{-# NOINLINE ptr_glBeginConditionalRenderNV #-}
ptr_glBeginConditionalRenderNV :: FunPtr (GLuint -> GLenum -> IO ())
ptr_glBeginConditionalRenderNV :: FunPtr (GLenum -> GLenum -> IO ())
ptr_glBeginConditionalRenderNV = 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 "glBeginConditionalRenderNV"

-- glBeginConditionalRenderNVX -------------------------------------------------

glBeginConditionalRenderNVX
  :: MonadIO m
  => GLuint -- ^ @id@.
  -> m ()
glBeginConditionalRenderNVX :: GLenum -> m ()
glBeginConditionalRenderNVX v1 :: GLenum
v1 = IO () -> m ()
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ FunPtr (GLenum -> IO ()) -> GLenum -> IO ()
dyn3 FunPtr (GLenum -> IO ())
ptr_glBeginConditionalRenderNVX GLenum
v1

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

-- glBeginFragmentShaderATI ----------------------------------------------------

glBeginFragmentShaderATI
  :: MonadIO m
  => m ()
glBeginFragmentShaderATI :: m ()
glBeginFragmentShaderATI = IO () -> m ()
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_glBeginFragmentShaderATI

{-# NOINLINE ptr_glBeginFragmentShaderATI #-}
ptr_glBeginFragmentShaderATI :: FunPtr (IO ())
ptr_glBeginFragmentShaderATI :: FunPtr (IO ())
ptr_glBeginFragmentShaderATI = 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 "glBeginFragmentShaderATI"

-- glBeginOcclusionQueryNV -----------------------------------------------------

glBeginOcclusionQueryNV
  :: MonadIO m
  => GLuint -- ^ @id@.
  -> m ()
glBeginOcclusionQueryNV :: GLenum -> m ()
glBeginOcclusionQueryNV v1 :: GLenum
v1 = IO () -> m ()
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ FunPtr (GLenum -> IO ()) -> GLenum -> IO ()
dyn3 FunPtr (GLenum -> IO ())
ptr_glBeginOcclusionQueryNV GLenum
v1

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

-- glBeginPerfMonitorAMD -------------------------------------------------------

glBeginPerfMonitorAMD
  :: MonadIO m
  => GLuint -- ^ @monitor@.
  -> m ()
glBeginPerfMonitorAMD :: GLenum -> m ()
glBeginPerfMonitorAMD v1 :: GLenum
v1 = IO () -> m ()
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ FunPtr (GLenum -> IO ()) -> GLenum -> IO ()
dyn3 FunPtr (GLenum -> IO ())
ptr_glBeginPerfMonitorAMD GLenum
v1

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

-- glBeginPerfQueryINTEL -------------------------------------------------------

glBeginPerfQueryINTEL
  :: MonadIO m
  => GLuint -- ^ @queryHandle@.
  -> m ()
glBeginPerfQueryINTEL :: GLenum -> m ()
glBeginPerfQueryINTEL v1 :: GLenum
v1 = IO () -> m ()
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ FunPtr (GLenum -> IO ()) -> GLenum -> IO ()
dyn3 FunPtr (GLenum -> IO ())
ptr_glBeginPerfQueryINTEL GLenum
v1

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

-- glBeginQuery ----------------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glBeginQuery.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glBeginQuery.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glBeginQuery.xhtml OpenGL 4.x>.
glBeginQuery
  :: MonadIO m
  => GLenum -- ^ @target@ of type [QueryTarget](Graphics-GL-Groups.html#QueryTarget).
  -> GLuint -- ^ @id@.
  -> m ()
glBeginQuery :: GLenum -> GLenum -> m ()
glBeginQuery v1 :: GLenum
v1 v2 :: GLenum
v2 = IO () -> m ()
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_glBeginQuery GLenum
v1 GLenum
v2

{-# NOINLINE ptr_glBeginQuery #-}
ptr_glBeginQuery :: FunPtr (GLenum -> GLuint -> IO ())
ptr_glBeginQuery :: FunPtr (GLenum -> GLenum -> IO ())
ptr_glBeginQuery = 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 "glBeginQuery"

-- glBeginQueryARB -------------------------------------------------------------

-- | This command is an alias for 'glBeginQuery'.
glBeginQueryARB
  :: MonadIO m
  => GLenum -- ^ @target@.
  -> GLuint -- ^ @id@.
  -> m ()
glBeginQueryARB :: GLenum -> GLenum -> m ()
glBeginQueryARB v1 :: GLenum
v1 v2 :: GLenum
v2 = IO () -> m ()
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_glBeginQueryARB GLenum
v1 GLenum
v2

{-# NOINLINE ptr_glBeginQueryARB #-}
ptr_glBeginQueryARB :: FunPtr (GLenum -> GLuint -> IO ())
ptr_glBeginQueryARB :: FunPtr (GLenum -> GLenum -> IO ())
ptr_glBeginQueryARB = 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 "glBeginQueryARB"

-- glBeginQueryEXT -------------------------------------------------------------

glBeginQueryEXT
  :: MonadIO m
  => GLenum -- ^ @target@ of type [QueryTarget](Graphics-GL-Groups.html#QueryTarget).
  -> GLuint -- ^ @id@.
  -> m ()
glBeginQueryEXT :: GLenum -> GLenum -> m ()
glBeginQueryEXT v1 :: GLenum
v1 v2 :: GLenum
v2 = IO () -> m ()
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_glBeginQueryEXT GLenum
v1 GLenum
v2

{-# NOINLINE ptr_glBeginQueryEXT #-}
ptr_glBeginQueryEXT :: FunPtr (GLenum -> GLuint -> IO ())
ptr_glBeginQueryEXT :: FunPtr (GLenum -> GLenum -> IO ())
ptr_glBeginQueryEXT = 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 "glBeginQueryEXT"

-- glBeginQueryIndexed ---------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glBeginQueryIndexed.xhtml OpenGL 4.x>.
glBeginQueryIndexed
  :: MonadIO m
  => GLenum -- ^ @target@ of type [QueryTarget](Graphics-GL-Groups.html#QueryTarget).
  -> GLuint -- ^ @index@.
  -> GLuint -- ^ @id@.
  -> m ()
glBeginQueryIndexed :: GLenum -> GLenum -> GLenum -> m ()
glBeginQueryIndexed v1 :: GLenum
v1 v2 :: GLenum
v2 v3 :: GLenum
v3 = IO () -> m ()
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 ()
dyn20 FunPtr (GLenum -> GLenum -> GLenum -> IO ())
ptr_glBeginQueryIndexed GLenum
v1 GLenum
v2 GLenum
v3

{-# NOINLINE ptr_glBeginQueryIndexed #-}
ptr_glBeginQueryIndexed :: FunPtr (GLenum -> GLuint -> GLuint -> IO ())
ptr_glBeginQueryIndexed :: FunPtr (GLenum -> GLenum -> GLenum -> IO ())
ptr_glBeginQueryIndexed = 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 "glBeginQueryIndexed"

-- glBeginTransformFeedback ----------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glBeginTransformFeedback.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glBeginTransformFeedback.xhtml OpenGL 4.x>.
glBeginTransformFeedback
  :: MonadIO m
  => GLenum -- ^ @primitiveMode@ of type [PrimitiveType](Graphics-GL-Groups.html#PrimitiveType).
  -> m ()
glBeginTransformFeedback :: GLenum -> m ()
glBeginTransformFeedback v1 :: GLenum
v1 = IO () -> m ()
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ FunPtr (GLenum -> IO ()) -> GLenum -> IO ()
dyn5 FunPtr (GLenum -> IO ())
ptr_glBeginTransformFeedback GLenum
v1

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

-- glBeginTransformFeedbackEXT -------------------------------------------------

-- | This command is an alias for 'glBeginTransformFeedback'.
glBeginTransformFeedbackEXT
  :: MonadIO m
  => GLenum -- ^ @primitiveMode@ of type [PrimitiveType](Graphics-GL-Groups.html#PrimitiveType).
  -> m ()
glBeginTransformFeedbackEXT :: GLenum -> m ()
glBeginTransformFeedbackEXT v1 :: GLenum
v1 = IO () -> m ()
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ FunPtr (GLenum -> IO ()) -> GLenum -> IO ()
dyn5 FunPtr (GLenum -> IO ())
ptr_glBeginTransformFeedbackEXT GLenum
v1

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

-- glBeginTransformFeedbackNV --------------------------------------------------

-- | This command is an alias for 'glBeginTransformFeedback'.
glBeginTransformFeedbackNV
  :: MonadIO m
  => GLenum -- ^ @primitiveMode@ of type [PrimitiveType](Graphics-GL-Groups.html#PrimitiveType).
  -> m ()
glBeginTransformFeedbackNV :: GLenum -> m ()
glBeginTransformFeedbackNV v1 :: GLenum
v1 = IO () -> m ()
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ FunPtr (GLenum -> IO ()) -> GLenum -> IO ()
dyn5 FunPtr (GLenum -> IO ())
ptr_glBeginTransformFeedbackNV GLenum
v1

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

-- glBeginVertexShaderEXT ------------------------------------------------------

glBeginVertexShaderEXT
  :: MonadIO m
  => m ()
glBeginVertexShaderEXT :: m ()
glBeginVertexShaderEXT = IO () -> m ()
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_glBeginVertexShaderEXT

{-# NOINLINE ptr_glBeginVertexShaderEXT #-}
ptr_glBeginVertexShaderEXT :: FunPtr (IO ())
ptr_glBeginVertexShaderEXT :: FunPtr (IO ())
ptr_glBeginVertexShaderEXT = 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 "glBeginVertexShaderEXT"

-- glBeginVideoCaptureNV -------------------------------------------------------

glBeginVideoCaptureNV
  :: MonadIO m
  => GLuint -- ^ @video_capture_slot@.
  -> m ()
glBeginVideoCaptureNV :: GLenum -> m ()
glBeginVideoCaptureNV v1 :: GLenum
v1 = IO () -> m ()
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ FunPtr (GLenum -> IO ()) -> GLenum -> IO ()
dyn3 FunPtr (GLenum -> IO ())
ptr_glBeginVideoCaptureNV GLenum
v1

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

-- glBindAttribLocation --------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glBindAttribLocation.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glBindAttribLocation.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glBindAttribLocation.xhtml OpenGL 4.x>.
glBindAttribLocation
  :: MonadIO m
  => GLuint -- ^ @program@.
  -> GLuint -- ^ @index@.
  -> Ptr GLchar -- ^ @name@.
  -> m ()
glBindAttribLocation :: GLenum -> GLenum -> Ptr GLchar -> m ()
glBindAttribLocation v1 :: GLenum
v1 v2 :: GLenum
v2 v3 :: Ptr GLchar
v3 = IO () -> m ()
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 GLchar -> IO ())
-> GLenum -> GLenum -> Ptr GLchar -> IO ()
dyn21 FunPtr (GLenum -> GLenum -> Ptr GLchar -> IO ())
ptr_glBindAttribLocation GLenum
v1 GLenum
v2 Ptr GLchar
v3

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

-- glBindAttribLocationARB -----------------------------------------------------

-- | This command is an alias for 'glBindAttribLocation'.
glBindAttribLocationARB
  :: MonadIO m
  => GLhandleARB -- ^ @programObj@ of type @handleARB@.
  -> GLuint -- ^ @index@.
  -> Ptr GLcharARB -- ^ @name@.
  -> m ()
glBindAttribLocationARB :: GLenum -> GLenum -> Ptr GLchar -> m ()
glBindAttribLocationARB v1 :: GLenum
v1 v2 :: GLenum
v2 v3 :: Ptr GLchar
v3 = IO () -> m ()
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 GLchar -> IO ())
-> GLenum -> GLenum -> Ptr GLchar -> IO ()
dyn22 FunPtr (GLenum -> GLenum -> Ptr GLchar -> IO ())
ptr_glBindAttribLocationARB GLenum
v1 GLenum
v2 Ptr GLchar
v3

{-# NOINLINE ptr_glBindAttribLocationARB #-}
ptr_glBindAttribLocationARB :: FunPtr (GLhandleARB -> GLuint -> Ptr GLcharARB -> IO ())
ptr_glBindAttribLocationARB :: FunPtr (GLenum -> GLenum -> Ptr GLchar -> IO ())
ptr_glBindAttribLocationARB = IO (FunPtr (GLenum -> GLenum -> Ptr GLchar -> IO ()))
-> FunPtr (GLenum -> GLenum -> Ptr GLchar -> IO ())
forall a. IO a -> a
unsafePerformIO (IO (FunPtr (GLenum -> GLenum -> Ptr GLchar -> IO ()))
 -> FunPtr (GLenum -> GLenum -> Ptr GLchar -> IO ()))
-> IO (FunPtr (GLenum -> GLenum -> Ptr GLchar -> IO ()))
-> FunPtr (GLenum -> GLenum -> Ptr GLchar -> IO ())
forall a b. (a -> b) -> a -> b
$ String -> IO (FunPtr (GLenum -> GLenum -> Ptr GLchar -> IO ()))
forall a. String -> IO (FunPtr a)
getCommand "glBindAttribLocationARB"

-- glBindBuffer ----------------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glBindBuffer.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glBindBuffer.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glBindBuffer.xhtml OpenGL 4.x>.
glBindBuffer
  :: MonadIO m
  => GLenum -- ^ @target@ of type [BufferTargetARB](Graphics-GL-Groups.html#BufferTargetARB).
  -> GLuint -- ^ @buffer@.
  -> m ()
glBindBuffer :: GLenum -> GLenum -> m ()
glBindBuffer v1 :: GLenum
v1 v2 :: GLenum
v2 = IO () -> m ()
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_glBindBuffer GLenum
v1 GLenum
v2

{-# NOINLINE ptr_glBindBuffer #-}
ptr_glBindBuffer :: FunPtr (GLenum -> GLuint -> IO ())
ptr_glBindBuffer :: FunPtr (GLenum -> GLenum -> IO ())
ptr_glBindBuffer = 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 "glBindBuffer"

-- glBindBufferARB -------------------------------------------------------------

-- | This command is an alias for 'glBindBuffer'.
glBindBufferARB
  :: MonadIO m
  => GLenum -- ^ @target@ of type [BufferTargetARB](Graphics-GL-Groups.html#BufferTargetARB).
  -> GLuint -- ^ @buffer@.
  -> m ()
glBindBufferARB :: GLenum -> GLenum -> m ()
glBindBufferARB v1 :: GLenum
v1 v2 :: GLenum
v2 = IO () -> m ()
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_glBindBufferARB GLenum
v1 GLenum
v2

{-# NOINLINE ptr_glBindBufferARB #-}
ptr_glBindBufferARB :: FunPtr (GLenum -> GLuint -> IO ())
ptr_glBindBufferARB :: FunPtr (GLenum -> GLenum -> IO ())
ptr_glBindBufferARB = 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 "glBindBufferARB"

-- glBindBufferBase ------------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glBindBufferBase.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glBindBufferBase.xhtml OpenGL 4.x>.
glBindBufferBase
  :: MonadIO m
  => GLenum -- ^ @target@ of type [BufferTargetARB](Graphics-GL-Groups.html#BufferTargetARB).
  -> GLuint -- ^ @index@.
  -> GLuint -- ^ @buffer@.
  -> m ()
glBindBufferBase :: GLenum -> GLenum -> GLenum -> m ()
glBindBufferBase v1 :: GLenum
v1 v2 :: GLenum
v2 v3 :: GLenum
v3 = IO () -> m ()
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 ()
dyn20 FunPtr (GLenum -> GLenum -> GLenum -> IO ())
ptr_glBindBufferBase GLenum
v1 GLenum
v2 GLenum
v3

{-# NOINLINE ptr_glBindBufferBase #-}
ptr_glBindBufferBase :: FunPtr (GLenum -> GLuint -> GLuint -> IO ())
ptr_glBindBufferBase :: FunPtr (GLenum -> GLenum -> GLenum -> IO ())
ptr_glBindBufferBase = 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 "glBindBufferBase"

-- glBindBufferBaseEXT ---------------------------------------------------------

-- | This command is an alias for 'glBindBufferBase'.
glBindBufferBaseEXT
  :: MonadIO m
  => GLenum -- ^ @target@ of type [BufferTargetARB](Graphics-GL-Groups.html#BufferTargetARB).
  -> GLuint -- ^ @index@.
  -> GLuint -- ^ @buffer@.
  -> m ()
glBindBufferBaseEXT :: GLenum -> GLenum -> GLenum -> m ()
glBindBufferBaseEXT v1 :: GLenum
v1 v2 :: GLenum
v2 v3 :: GLenum
v3 = IO () -> m ()
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 ()
dyn20 FunPtr (GLenum -> GLenum -> GLenum -> IO ())
ptr_glBindBufferBaseEXT GLenum
v1 GLenum
v2 GLenum
v3

{-# NOINLINE ptr_glBindBufferBaseEXT #-}
ptr_glBindBufferBaseEXT :: FunPtr (GLenum -> GLuint -> GLuint -> IO ())
ptr_glBindBufferBaseEXT :: FunPtr (GLenum -> GLenum -> GLenum -> IO ())
ptr_glBindBufferBaseEXT = 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 "glBindBufferBaseEXT"

-- glBindBufferBaseNV ----------------------------------------------------------

-- | This command is an alias for 'glBindBufferBase'.
glBindBufferBaseNV
  :: MonadIO m
  => GLenum -- ^ @target@ of type [BufferTargetARB](Graphics-GL-Groups.html#BufferTargetARB).
  -> GLuint -- ^ @index@.
  -> GLuint -- ^ @buffer@.
  -> m ()
glBindBufferBaseNV :: GLenum -> GLenum -> GLenum -> m ()
glBindBufferBaseNV v1 :: GLenum
v1 v2 :: GLenum
v2 v3 :: GLenum
v3 = IO () -> m ()
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 ()
dyn20 FunPtr (GLenum -> GLenum -> GLenum -> IO ())
ptr_glBindBufferBaseNV GLenum
v1 GLenum
v2 GLenum
v3

{-# NOINLINE ptr_glBindBufferBaseNV #-}
ptr_glBindBufferBaseNV :: FunPtr (GLenum -> GLuint -> GLuint -> IO ())
ptr_glBindBufferBaseNV :: FunPtr (GLenum -> GLenum -> GLenum -> IO ())
ptr_glBindBufferBaseNV = 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 "glBindBufferBaseNV"

-- glBindBufferOffsetEXT -------------------------------------------------------

glBindBufferOffsetEXT
  :: MonadIO m
  => GLenum -- ^ @target@ of type [BufferTargetARB](Graphics-GL-Groups.html#BufferTargetARB).
  -> GLuint -- ^ @index@.
  -> GLuint -- ^ @buffer@.
  -> GLintptr -- ^ @offset@ of type @BufferOffset@.
  -> m ()
glBindBufferOffsetEXT :: GLenum -> GLenum -> GLenum -> GLintptr -> m ()
glBindBufferOffsetEXT v1 :: GLenum
v1 v2 :: GLenum
v2 v3 :: GLenum
v3 v4 :: GLintptr
v4 = IO () -> m ()
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 -> IO ())
-> GLenum -> GLenum -> GLenum -> GLintptr -> IO ()
dyn23 FunPtr (GLenum -> GLenum -> GLenum -> GLintptr -> IO ())
ptr_glBindBufferOffsetEXT GLenum
v1 GLenum
v2 GLenum
v3 GLintptr
v4

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

-- glBindBufferOffsetNV --------------------------------------------------------

-- | This command is an alias for 'glBindBufferOffsetEXT'.
glBindBufferOffsetNV
  :: MonadIO m
  => GLenum -- ^ @target@ of type [BufferTargetARB](Graphics-GL-Groups.html#BufferTargetARB).
  -> GLuint -- ^ @index@.
  -> GLuint -- ^ @buffer@.
  -> GLintptr -- ^ @offset@ of type @BufferOffset@.
  -> m ()
glBindBufferOffsetNV :: GLenum -> GLenum -> GLenum -> GLintptr -> m ()
glBindBufferOffsetNV v1 :: GLenum
v1 v2 :: GLenum
v2 v3 :: GLenum
v3 v4 :: GLintptr
v4 = IO () -> m ()
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 -> IO ())
-> GLenum -> GLenum -> GLenum -> GLintptr -> IO ()
dyn23 FunPtr (GLenum -> GLenum -> GLenum -> GLintptr -> IO ())
ptr_glBindBufferOffsetNV GLenum
v1 GLenum
v2 GLenum
v3 GLintptr
v4

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

-- glBindBufferRange -----------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glBindBufferRange.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glBindBufferRange.xhtml OpenGL 4.x>.
glBindBufferRange
  :: MonadIO m
  => GLenum -- ^ @target@ of type [BufferTargetARB](Graphics-GL-Groups.html#BufferTargetARB).
  -> GLuint -- ^ @index@.
  -> GLuint -- ^ @buffer@.
  -> GLintptr -- ^ @offset@ of type @BufferOffset@.
  -> GLsizeiptr -- ^ @size@ of type @BufferSize@.
  -> m ()
glBindBufferRange :: GLenum -> GLenum -> GLenum -> GLintptr -> GLintptr -> m ()
glBindBufferRange v1 :: GLenum
v1 v2 :: GLenum
v2 v3 :: GLenum
v3 v4 :: GLintptr
v4 v5 :: GLintptr
v5 = IO () -> m ()
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 ()
dyn24 FunPtr
  (GLenum -> GLenum -> GLenum -> GLintptr -> GLintptr -> IO ())
ptr_glBindBufferRange GLenum
v1 GLenum
v2 GLenum
v3 GLintptr
v4 GLintptr
v5

{-# NOINLINE ptr_glBindBufferRange #-}
ptr_glBindBufferRange :: FunPtr (GLenum -> GLuint -> GLuint -> GLintptr -> GLsizeiptr -> IO ())
ptr_glBindBufferRange :: FunPtr
  (GLenum -> GLenum -> GLenum -> GLintptr -> GLintptr -> IO ())
ptr_glBindBufferRange = 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 "glBindBufferRange"

-- glBindBufferRangeEXT --------------------------------------------------------

-- | This command is an alias for 'glBindBufferRange'.
glBindBufferRangeEXT
  :: MonadIO m
  => GLenum -- ^ @target@ of type [BufferTargetARB](Graphics-GL-Groups.html#BufferTargetARB).
  -> GLuint -- ^ @index@.
  -> GLuint -- ^ @buffer@.
  -> GLintptr -- ^ @offset@ of type @BufferOffset@.
  -> GLsizeiptr -- ^ @size@ of type @BufferSize@.
  -> m ()
glBindBufferRangeEXT :: GLenum -> GLenum -> GLenum -> GLintptr -> GLintptr -> m ()
glBindBufferRangeEXT v1 :: GLenum
v1 v2 :: GLenum
v2 v3 :: GLenum
v3 v4 :: GLintptr
v4 v5 :: GLintptr
v5 = IO () -> m ()
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 ()
dyn24 FunPtr
  (GLenum -> GLenum -> GLenum -> GLintptr -> GLintptr -> IO ())
ptr_glBindBufferRangeEXT GLenum
v1 GLenum
v2 GLenum
v3 GLintptr
v4 GLintptr
v5

{-# NOINLINE ptr_glBindBufferRangeEXT #-}
ptr_glBindBufferRangeEXT :: FunPtr (GLenum -> GLuint -> GLuint -> GLintptr -> GLsizeiptr -> IO ())
ptr_glBindBufferRangeEXT :: FunPtr
  (GLenum -> GLenum -> GLenum -> GLintptr -> GLintptr -> IO ())
ptr_glBindBufferRangeEXT = 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 "glBindBufferRangeEXT"

-- glBindBufferRangeNV ---------------------------------------------------------

-- | This command is an alias for 'glBindBufferRange'.
glBindBufferRangeNV
  :: MonadIO m
  => GLenum -- ^ @target@ of type [BufferTargetARB](Graphics-GL-Groups.html#BufferTargetARB).
  -> GLuint -- ^ @index@.
  -> GLuint -- ^ @buffer@.
  -> GLintptr -- ^ @offset@ of type @BufferOffset@.
  -> GLsizeiptr -- ^ @size@ of type @BufferSize@.
  -> m ()
glBindBufferRangeNV :: GLenum -> GLenum -> GLenum -> GLintptr -> GLintptr -> m ()
glBindBufferRangeNV v1 :: GLenum
v1 v2 :: GLenum
v2 v3 :: GLenum
v3 v4 :: GLintptr
v4 v5 :: GLintptr
v5 = IO () -> m ()
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 ()
dyn24 FunPtr
  (GLenum -> GLenum -> GLenum -> GLintptr -> GLintptr -> IO ())
ptr_glBindBufferRangeNV GLenum
v1 GLenum
v2 GLenum
v3 GLintptr
v4 GLintptr
v5

{-# NOINLINE ptr_glBindBufferRangeNV #-}
ptr_glBindBufferRangeNV :: FunPtr (GLenum -> GLuint -> GLuint -> GLintptr -> GLsizeiptr -> IO ())
ptr_glBindBufferRangeNV :: FunPtr
  (GLenum -> GLenum -> GLenum -> GLintptr -> GLintptr -> IO ())
ptr_glBindBufferRangeNV = 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 "glBindBufferRangeNV"

-- glBindBuffersBase -----------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glBindBuffersBase.xhtml OpenGL 4.x>.
glBindBuffersBase
  :: MonadIO m
  => GLenum -- ^ @target@ of type [BufferTargetARB](Graphics-GL-Groups.html#BufferTargetARB).
  -> GLuint -- ^ @first@.
  -> GLsizei -- ^ @count@.
  -> Ptr GLuint -- ^ @buffers@ pointing to @count@ elements of type @GLuint@.
  -> m ()
glBindBuffersBase :: GLenum -> GLenum -> GLsizei -> Ptr GLenum -> m ()
glBindBuffersBase v1 :: GLenum
v1 v2 :: GLenum
v2 v3 :: GLsizei
v3 v4 :: Ptr GLenum
v4 = IO () -> m ()
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ FunPtr (GLenum -> GLenum -> GLsizei -> Ptr GLenum -> IO ())
-> GLenum -> GLenum -> GLsizei -> Ptr GLenum -> IO ()
dyn25 FunPtr (GLenum -> GLenum -> GLsizei -> Ptr GLenum -> IO ())
ptr_glBindBuffersBase GLenum
v1 GLenum
v2 GLsizei
v3 Ptr GLenum
v4

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

-- glBindBuffersRange ----------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glBindBuffersRange.xhtml OpenGL 4.x>.
glBindBuffersRange
  :: MonadIO m
  => GLenum -- ^ @target@ of type [BufferTargetARB](Graphics-GL-Groups.html#BufferTargetARB).
  -> GLuint -- ^ @first@.
  -> GLsizei -- ^ @count@.
  -> Ptr GLuint -- ^ @buffers@ pointing to @count@ elements of type @GLuint@.
  -> Ptr GLintptr -- ^ @offsets@ pointing to @count@ elements of type @GLintptr@.
  -> Ptr GLsizeiptr -- ^ @sizes@ pointing to @count@ elements of type @GLsizeiptr@.
  -> m ()
glBindBuffersRange :: GLenum
-> GLenum
-> GLsizei
-> Ptr GLenum
-> Ptr GLintptr
-> Ptr GLintptr
-> m ()
glBindBuffersRange v1 :: GLenum
v1 v2 :: GLenum
v2 v3 :: GLsizei
v3 v4 :: Ptr GLenum
v4 v5 :: Ptr GLintptr
v5 v6 :: Ptr GLintptr
v6 = IO () -> m ()
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ FunPtr
  (GLenum
   -> GLenum
   -> GLsizei
   -> Ptr GLenum
   -> Ptr GLintptr
   -> Ptr GLintptr
   -> IO ())
-> GLenum
-> GLenum
-> GLsizei
-> Ptr GLenum
-> Ptr GLintptr
-> Ptr GLintptr
-> IO ()
dyn26 FunPtr
  (GLenum
   -> GLenum
   -> GLsizei
   -> Ptr GLenum
   -> Ptr GLintptr
   -> Ptr GLintptr
   -> IO ())
ptr_glBindBuffersRange GLenum
v1 GLenum
v2 GLsizei
v3 Ptr GLenum
v4 Ptr GLintptr
v5 Ptr GLintptr
v6

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

-- glBindFragDataLocation ------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glBindFragDataLocation.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glBindFragDataLocation.xhtml OpenGL 4.x>.
glBindFragDataLocation
  :: MonadIO m
  => GLuint -- ^ @program@.
  -> GLuint -- ^ @color@.
  -> Ptr GLchar -- ^ @name@ pointing to @COMPSIZE(name)@ elements of type @GLchar@.
  -> m ()
glBindFragDataLocation :: GLenum -> GLenum -> Ptr GLchar -> m ()
glBindFragDataLocation v1 :: GLenum
v1 v2 :: GLenum
v2 v3 :: Ptr GLchar
v3 = IO () -> m ()
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 GLchar -> IO ())
-> GLenum -> GLenum -> Ptr GLchar -> IO ()
dyn21 FunPtr (GLenum -> GLenum -> Ptr GLchar -> IO ())
ptr_glBindFragDataLocation GLenum
v1 GLenum
v2 Ptr GLchar
v3

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

-- glBindFragDataLocationEXT ---------------------------------------------------

-- | This command is an alias for 'glBindFragDataLocation'.
glBindFragDataLocationEXT
  :: MonadIO m
  => GLuint -- ^ @program@.
  -> GLuint -- ^ @color@.
  -> Ptr GLchar -- ^ @name@ pointing to @COMPSIZE(name)@ elements of type @GLchar@.
  -> m ()
glBindFragDataLocationEXT :: GLenum -> GLenum -> Ptr GLchar -> m ()
glBindFragDataLocationEXT v1 :: GLenum
v1 v2 :: GLenum
v2 v3 :: Ptr GLchar
v3 = IO () -> m ()
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 GLchar -> IO ())
-> GLenum -> GLenum -> Ptr GLchar -> IO ()
dyn21 FunPtr (GLenum -> GLenum -> Ptr GLchar -> IO ())
ptr_glBindFragDataLocationEXT GLenum
v1 GLenum
v2 Ptr GLchar
v3

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

-- glBindFragDataLocationIndexed -----------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glBindFragDataLocationIndexed.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glBindFragDataLocationIndexed.xhtml OpenGL 4.x>.
glBindFragDataLocationIndexed
  :: MonadIO m
  => GLuint -- ^ @program@.
  -> GLuint -- ^ @colorNumber@.
  -> GLuint -- ^ @index@.
  -> Ptr GLchar -- ^ @name@.
  -> m ()
glBindFragDataLocationIndexed :: GLenum -> GLenum -> GLenum -> Ptr GLchar -> m ()
glBindFragDataLocationIndexed v1 :: GLenum
v1 v2 :: GLenum
v2 v3 :: GLenum
v3 v4 :: Ptr GLchar
v4 = IO () -> m ()
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 -> Ptr GLchar -> IO ())
-> GLenum -> GLenum -> GLenum -> Ptr GLchar -> IO ()
dyn27 FunPtr (GLenum -> GLenum -> GLenum -> Ptr GLchar -> IO ())
ptr_glBindFragDataLocationIndexed GLenum
v1 GLenum
v2 GLenum
v3 Ptr GLchar
v4

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

-- glBindFragDataLocationIndexedEXT --------------------------------------------

-- | This command is an alias for 'glBindFragDataLocationIndexed'.
glBindFragDataLocationIndexedEXT
  :: MonadIO m
  => GLuint -- ^ @program@.
  -> GLuint -- ^ @colorNumber@.
  -> GLuint -- ^ @index@.
  -> Ptr GLchar -- ^ @name@.
  -> m ()
glBindFragDataLocationIndexedEXT :: GLenum -> GLenum -> GLenum -> Ptr GLchar -> m ()
glBindFragDataLocationIndexedEXT v1 :: GLenum
v1 v2 :: GLenum
v2 v3 :: GLenum
v3 v4 :: Ptr GLchar
v4 = IO () -> m ()
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 -> Ptr GLchar -> IO ())
-> GLenum -> GLenum -> GLenum -> Ptr GLchar -> IO ()
dyn27 FunPtr (GLenum -> GLenum -> GLenum -> Ptr GLchar -> IO ())
ptr_glBindFragDataLocationIndexedEXT GLenum
v1 GLenum
v2 GLenum
v3 Ptr GLchar
v4

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

-- glBindFragmentShaderATI -----------------------------------------------------

glBindFragmentShaderATI
  :: MonadIO m
  => GLuint -- ^ @id@.
  -> m ()
glBindFragmentShaderATI :: GLenum -> m ()
glBindFragmentShaderATI v1 :: GLenum
v1 = IO () -> m ()
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ FunPtr (GLenum -> IO ()) -> GLenum -> IO ()
dyn3 FunPtr (GLenum -> IO ())
ptr_glBindFragmentShaderATI GLenum
v1

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

-- glBindFramebuffer -----------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glBindFramebuffer.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glBindFramebuffer.xhtml OpenGL 4.x>.
glBindFramebuffer
  :: MonadIO m
  => GLenum -- ^ @target@ of type [FramebufferTarget](Graphics-GL-Groups.html#FramebufferTarget).
  -> GLuint -- ^ @framebuffer@.
  -> m ()
glBindFramebuffer :: GLenum -> GLenum -> m ()
glBindFramebuffer v1 :: GLenum
v1 v2 :: GLenum
v2 = IO () -> m ()
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_glBindFramebuffer GLenum
v1 GLenum
v2

{-# NOINLINE ptr_glBindFramebuffer #-}
ptr_glBindFramebuffer :: FunPtr (GLenum -> GLuint -> IO ())
ptr_glBindFramebuffer :: FunPtr (GLenum -> GLenum -> IO ())
ptr_glBindFramebuffer = 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 "glBindFramebuffer"

-- glBindFramebufferEXT --------------------------------------------------------

glBindFramebufferEXT
  :: MonadIO m
  => GLenum -- ^ @target@ of type [FramebufferTarget](Graphics-GL-Groups.html#FramebufferTarget).
  -> GLuint -- ^ @framebuffer@.
  -> m ()
glBindFramebufferEXT :: GLenum -> GLenum -> m ()
glBindFramebufferEXT v1 :: GLenum
v1 v2 :: GLenum
v2 = IO () -> m ()
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_glBindFramebufferEXT GLenum
v1 GLenum
v2

{-# NOINLINE ptr_glBindFramebufferEXT #-}
ptr_glBindFramebufferEXT :: FunPtr (GLenum -> GLuint -> IO ())
ptr_glBindFramebufferEXT :: FunPtr (GLenum -> GLenum -> IO ())
ptr_glBindFramebufferEXT = 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 "glBindFramebufferEXT"

-- glBindFramebufferOES --------------------------------------------------------

glBindFramebufferOES
  :: MonadIO m
  => GLenum -- ^ @target@ of type [FramebufferTarget](Graphics-GL-Groups.html#FramebufferTarget).
  -> GLuint -- ^ @framebuffer@.
  -> m ()
glBindFramebufferOES :: GLenum -> GLenum -> m ()
glBindFramebufferOES v1 :: GLenum
v1 v2 :: GLenum
v2 = IO () -> m ()
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_glBindFramebufferOES GLenum
v1 GLenum
v2

{-# NOINLINE ptr_glBindFramebufferOES #-}
ptr_glBindFramebufferOES :: FunPtr (GLenum -> GLuint -> IO ())
ptr_glBindFramebufferOES :: FunPtr (GLenum -> GLenum -> IO ())
ptr_glBindFramebufferOES = 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 "glBindFramebufferOES"

-- glBindImageTexture ----------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glBindImageTexture.xhtml OpenGL 4.x>.
glBindImageTexture
  :: MonadIO m
  => GLuint -- ^ @unit@.
  -> GLuint -- ^ @texture@.
  -> GLint -- ^ @level@.
  -> GLboolean -- ^ @layered@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
  -> GLint -- ^ @layer@.
  -> GLenum -- ^ @access@ of type [BufferAccessARB](Graphics-GL-Groups.html#BufferAccessARB).
  -> GLenum -- ^ @format@ of type [InternalFormat](Graphics-GL-Groups.html#InternalFormat).
  -> m ()
glBindImageTexture :: GLenum
-> GLenum
-> GLsizei
-> GLboolean
-> GLsizei
-> GLenum
-> GLenum
-> m ()
glBindImageTexture v1 :: GLenum
v1 v2 :: GLenum
v2 v3 :: GLsizei
v3 v4 :: GLboolean
v4 v5 :: GLsizei
v5 v6 :: GLenum
v6 v7 :: GLenum
v7 = IO () -> m ()
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ FunPtr
  (GLenum
   -> GLenum
   -> GLsizei
   -> GLboolean
   -> GLsizei
   -> GLenum
   -> GLenum
   -> IO ())
-> GLenum
-> GLenum
-> GLsizei
-> GLboolean
-> GLsizei
-> GLenum
-> GLenum
-> IO ()
dyn28 FunPtr
  (GLenum
   -> GLenum
   -> GLsizei
   -> GLboolean
   -> GLsizei
   -> GLenum
   -> GLenum
   -> IO ())
ptr_glBindImageTexture GLenum
v1 GLenum
v2 GLsizei
v3 GLboolean
v4 GLsizei
v5 GLenum
v6 GLenum
v7

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

-- glBindImageTextureEXT -------------------------------------------------------

glBindImageTextureEXT
  :: MonadIO m
  => GLuint -- ^ @index@.
  -> GLuint -- ^ @texture@.
  -> GLint -- ^ @level@.
  -> GLboolean -- ^ @layered@ of type [Boolean](Graphics-GL-Groups.html#Boolean).
  -> GLint -- ^ @layer@.
  -> GLenum -- ^ @access@ of type [BufferAccessARB](Graphics-GL-Groups.html#BufferAccessARB).
  -> GLint -- ^ @format@.
  -> m ()
glBindImageTextureEXT :: GLenum
-> GLenum
-> GLsizei
-> GLboolean
-> GLsizei
-> GLenum
-> GLsizei
-> m ()
glBindImageTextureEXT v1 :: GLenum
v1 v2 :: GLenum
v2 v3 :: GLsizei
v3 v4 :: GLboolean
v4 v5 :: GLsizei
v5 v6 :: GLenum
v6 v7 :: GLsizei
v7 = IO () -> m ()
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ FunPtr
  (GLenum
   -> GLenum
   -> GLsizei
   -> GLboolean
   -> GLsizei
   -> GLenum
   -> GLsizei
   -> IO ())
-> GLenum
-> GLenum
-> GLsizei
-> GLboolean
-> GLsizei
-> GLenum
-> GLsizei
-> IO ()
dyn29 FunPtr
  (GLenum
   -> GLenum
   -> GLsizei
   -> GLboolean
   -> GLsizei
   -> GLenum
   -> GLsizei
   -> IO ())
ptr_glBindImageTextureEXT GLenum
v1 GLenum
v2 GLsizei
v3 GLboolean
v4 GLsizei
v5 GLenum
v6 GLsizei
v7

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

-- glBindImageTextures ---------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glBindImageTextures.xhtml OpenGL 4.x>.
glBindImageTextures
  :: MonadIO m
  => GLuint -- ^ @first@.
  -> GLsizei -- ^ @count@.
  -> Ptr GLuint -- ^ @textures@ pointing to @count@ elements of type @GLuint@.
  -> m ()
glBindImageTextures :: GLenum -> GLsizei -> Ptr GLenum -> m ()
glBindImageTextures v1 :: GLenum
v1 v2 :: GLsizei
v2 v3 :: Ptr GLenum
v3 = IO () -> m ()
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ FunPtr (GLenum -> GLsizei -> Ptr GLenum -> IO ())
-> GLenum -> GLsizei -> Ptr GLenum -> IO ()
dyn30 FunPtr (GLenum -> GLsizei -> Ptr GLenum -> IO ())
ptr_glBindImageTextures GLenum
v1 GLsizei
v2 Ptr GLenum
v3

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

-- glBindLightParameterEXT -----------------------------------------------------

glBindLightParameterEXT
  :: MonadIO m
  => GLenum -- ^ @light@ of type [LightName](Graphics-GL-Groups.html#LightName).
  -> GLenum -- ^ @value@ of type [LightParameter](Graphics-GL-Groups.html#LightParameter).
  -> m GLuint
glBindLightParameterEXT :: GLenum -> GLenum -> m GLenum
glBindLightParameterEXT v1 :: GLenum
v1 v2 :: GLenum
v2 = IO GLenum -> m GLenum
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO GLenum -> m GLenum) -> IO GLenum -> m GLenum
forall a b. (a -> b) -> a -> b
$ FunPtr (GLenum -> GLenum -> IO GLenum)
-> GLenum -> GLenum -> IO GLenum
dyn31 FunPtr (GLenum -> GLenum -> IO GLenum)
ptr_glBindLightParameterEXT GLenum
v1 GLenum
v2

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

-- glBindMaterialParameterEXT --------------------------------------------------

glBindMaterialParameterEXT
  :: MonadIO m
  => GLenum -- ^ @face@ of type [MaterialFace](Graphics-GL-Groups.html#MaterialFace).
  -> GLenum -- ^ @value@ of type [MaterialParameter](Graphics-GL-Groups.html#MaterialParameter).
  -> m GLuint
glBindMaterialParameterEXT :: GLenum -> GLenum -> m GLenum
glBindMaterialParameterEXT v1 :: GLenum
v1 v2 :: GLenum
v2 = IO GLenum -> m GLenum
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO GLenum -> m GLenum) -> IO GLenum -> m GLenum
forall a b. (a -> b) -> a -> b
$ FunPtr (GLenum -> GLenum -> IO GLenum)
-> GLenum -> GLenum -> IO GLenum
dyn31 FunPtr (GLenum -> GLenum -> IO GLenum)
ptr_glBindMaterialParameterEXT GLenum
v1 GLenum
v2

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

-- glBindMultiTextureEXT -------------------------------------------------------

glBindMultiTextureEXT
  :: MonadIO m
  => GLenum -- ^ @texunit@ of type [TextureUnit](Graphics-GL-Groups.html#TextureUnit).
  -> GLenum -- ^ @target@ of type [TextureTarget](Graphics-GL-Groups.html#TextureTarget).
  -> GLuint -- ^ @texture@ of type @Texture@.
  -> m ()
glBindMultiTextureEXT :: GLenum -> GLenum -> GLenum -> m ()
glBindMultiTextureEXT v1 :: GLenum
v1 v2 :: GLenum
v2 v3 :: GLenum
v3 = IO () -> m ()
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 ()
dyn32 FunPtr (GLenum -> GLenum -> GLenum -> IO ())
ptr_glBindMultiTextureEXT GLenum
v1 GLenum
v2 GLenum
v3

{-# NOINLINE ptr_glBindMultiTextureEXT #-}
ptr_glBindMultiTextureEXT :: FunPtr (GLenum -> GLenum -> GLuint -> IO ())
ptr_glBindMultiTextureEXT :: FunPtr (GLenum -> GLenum -> GLenum -> IO ())
ptr_glBindMultiTextureEXT = 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 "glBindMultiTextureEXT"

-- glBindParameterEXT ----------------------------------------------------------

glBindParameterEXT
  :: MonadIO m
  => GLenum -- ^ @value@ of type [VertexShaderParameterEXT](Graphics-GL-Groups.html#VertexShaderParameterEXT).
  -> m GLuint
glBindParameterEXT :: GLenum -> m GLenum
glBindParameterEXT v1 :: GLenum
v1 = IO GLenum -> m GLenum
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO GLenum -> m GLenum) -> IO GLenum -> m GLenum
forall a b. (a -> b) -> a -> b
$ FunPtr (GLenum -> IO GLenum) -> GLenum -> IO GLenum
dyn33 FunPtr (GLenum -> IO GLenum)
ptr_glBindParameterEXT GLenum
v1

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

-- glBindProgramARB ------------------------------------------------------------

glBindProgramARB
  :: MonadIO m
  => GLenum -- ^ @target@ of type [ProgramTargetARB](Graphics-GL-Groups.html#ProgramTargetARB).
  -> GLuint -- ^ @program@.
  -> m ()
glBindProgramARB :: GLenum -> GLenum -> m ()
glBindProgramARB v1 :: GLenum
v1 v2 :: GLenum
v2 = IO () -> m ()
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_glBindProgramARB GLenum
v1 GLenum
v2

{-# NOINLINE ptr_glBindProgramARB #-}
ptr_glBindProgramARB :: FunPtr (GLenum -> GLuint -> IO ())
ptr_glBindProgramARB :: FunPtr (GLenum -> GLenum -> IO ())
ptr_glBindProgramARB = 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 "glBindProgramARB"

-- glBindProgramNV -------------------------------------------------------------

-- | This command is an alias for 'glBindProgramARB'.
glBindProgramNV
  :: MonadIO m
  => GLenum -- ^ @target@ of type [VertexAttribEnumNV](Graphics-GL-Groups.html#VertexAttribEnumNV).
  -> GLuint -- ^ @id@.
  -> m ()
glBindProgramNV :: GLenum -> GLenum -> m ()
glBindProgramNV v1 :: GLenum
v1 v2 :: GLenum
v2 = IO () -> m ()
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_glBindProgramNV GLenum
v1 GLenum
v2

{-# NOINLINE ptr_glBindProgramNV #-}
ptr_glBindProgramNV :: FunPtr (GLenum -> GLuint -> IO ())
ptr_glBindProgramNV :: FunPtr (GLenum -> GLenum -> IO ())
ptr_glBindProgramNV = 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 "glBindProgramNV"

-- glBindProgramPipeline -------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glBindProgramPipeline.xhtml OpenGL 4.x>.
glBindProgramPipeline
  :: MonadIO m
  => GLuint -- ^ @pipeline@.
  -> m ()
glBindProgramPipeline :: GLenum -> m ()
glBindProgramPipeline v1 :: GLenum
v1 = IO () -> m ()
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ FunPtr (GLenum -> IO ()) -> GLenum -> IO ()
dyn3 FunPtr (GLenum -> IO ())
ptr_glBindProgramPipeline GLenum
v1

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

-- glBindProgramPipelineEXT ----------------------------------------------------

glBindProgramPipelineEXT
  :: MonadIO m
  => GLuint -- ^ @pipeline@.
  -> m ()
glBindProgramPipelineEXT :: GLenum -> m ()
glBindProgramPipelineEXT v1 :: GLenum
v1 = IO () -> m ()
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ FunPtr (GLenum -> IO ()) -> GLenum -> IO ()
dyn3 FunPtr (GLenum -> IO ())
ptr_glBindProgramPipelineEXT GLenum
v1

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

-- glBindRenderbuffer ----------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glBindRenderbuffer.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glBindRenderbuffer.xhtml OpenGL 4.x>.
glBindRenderbuffer
  :: MonadIO m
  => GLenum -- ^ @target@ of type [RenderbufferTarget](Graphics-GL-Groups.html#RenderbufferTarget).
  -> GLuint -- ^ @renderbuffer@.
  -> m ()
glBindRenderbuffer :: GLenum -> GLenum -> m ()
glBindRenderbuffer v1 :: GLenum
v1 v2 :: GLenum
v2 = IO () -> m ()
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_glBindRenderbuffer GLenum
v1 GLenum
v2

{-# NOINLINE ptr_glBindRenderbuffer #-}
ptr_glBindRenderbuffer :: FunPtr (GLenum -> GLuint -> IO ())
ptr_glBindRenderbuffer :: FunPtr (GLenum -> GLenum -> IO ())
ptr_glBindRenderbuffer = 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 "glBindRenderbuffer"

-- glBindRenderbufferEXT -------------------------------------------------------

glBindRenderbufferEXT
  :: MonadIO m
  => GLenum -- ^ @target@ of type [RenderbufferTarget](Graphics-GL-Groups.html#RenderbufferTarget).
  -> GLuint -- ^ @renderbuffer@.
  -> m ()
glBindRenderbufferEXT :: GLenum -> GLenum -> m ()
glBindRenderbufferEXT v1 :: GLenum
v1 v2 :: GLenum
v2 = IO () -> m ()
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_glBindRenderbufferEXT GLenum
v1 GLenum
v2

{-# NOINLINE ptr_glBindRenderbufferEXT #-}
ptr_glBindRenderbufferEXT :: FunPtr (GLenum -> GLuint -> IO ())
ptr_glBindRenderbufferEXT :: FunPtr (GLenum -> GLenum -> IO ())
ptr_glBindRenderbufferEXT = 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 "glBindRenderbufferEXT"

-- glBindRenderbufferOES -------------------------------------------------------

glBindRenderbufferOES
  :: MonadIO m
  => GLenum -- ^ @target@ of type [RenderbufferTarget](Graphics-GL-Groups.html#RenderbufferTarget).
  -> GLuint -- ^ @renderbuffer@.
  -> m ()
glBindRenderbufferOES :: GLenum -> GLenum -> m ()
glBindRenderbufferOES v1 :: GLenum
v1 v2 :: GLenum
v2 = IO () -> m ()
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_glBindRenderbufferOES GLenum
v1 GLenum
v2

{-# NOINLINE ptr_glBindRenderbufferOES #-}
ptr_glBindRenderbufferOES :: FunPtr (GLenum -> GLuint -> IO ())
ptr_glBindRenderbufferOES :: FunPtr (GLenum -> GLenum -> IO ())
ptr_glBindRenderbufferOES = 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 "glBindRenderbufferOES"

-- glBindSampler ---------------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glBindSampler.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glBindSampler.xhtml OpenGL 4.x>.
glBindSampler
  :: MonadIO m
  => GLuint -- ^ @unit@.
  -> GLuint -- ^ @sampler@.
  -> m ()
glBindSampler :: GLenum -> GLenum -> m ()
glBindSampler v1 :: GLenum
v1 v2 :: GLenum
v2 = IO () -> m ()
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 ()
dyn4 FunPtr (GLenum -> GLenum -> IO ())
ptr_glBindSampler GLenum
v1 GLenum
v2

{-# NOINLINE ptr_glBindSampler #-}
ptr_glBindSampler :: FunPtr (GLuint -> GLuint -> IO ())
ptr_glBindSampler :: FunPtr (GLenum -> GLenum -> IO ())
ptr_glBindSampler = 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 "glBindSampler"

-- glBindSamplers --------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glBindSamplers.xhtml OpenGL 4.x>.
glBindSamplers
  :: MonadIO m
  => GLuint -- ^ @first@.
  -> GLsizei -- ^ @count@.
  -> Ptr GLuint -- ^ @samplers@ pointing to @count@ elements of type @GLuint@.
  -> m ()
glBindSamplers :: GLenum -> GLsizei -> Ptr GLenum -> m ()
glBindSamplers v1 :: GLenum
v1 v2 :: GLsizei
v2 v3 :: Ptr GLenum
v3 = IO () -> m ()
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ FunPtr (GLenum -> GLsizei -> Ptr GLenum -> IO ())
-> GLenum -> GLsizei -> Ptr GLenum -> IO ()
dyn30 FunPtr (GLenum -> GLsizei -> Ptr GLenum -> IO ())
ptr_glBindSamplers GLenum
v1 GLsizei
v2 Ptr GLenum
v3

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

-- glBindShadingRateImageNV ----------------------------------------------------

glBindShadingRateImageNV
  :: MonadIO m
  => GLuint -- ^ @texture@.
  -> m ()
glBindShadingRateImageNV :: GLenum -> m ()
glBindShadingRateImageNV v1 :: GLenum
v1 = IO () -> m ()
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ FunPtr (GLenum -> IO ()) -> GLenum -> IO ()
dyn3 FunPtr (GLenum -> IO ())
ptr_glBindShadingRateImageNV GLenum
v1

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

-- glBindTexGenParameterEXT ----------------------------------------------------

glBindTexGenParameterEXT
  :: MonadIO m
  => GLenum -- ^ @unit@ of type [TextureUnit](Graphics-GL-Groups.html#TextureUnit).
  -> GLenum -- ^ @coord@ of type [TextureCoordName](Graphics-GL-Groups.html#TextureCoordName).
  -> GLenum -- ^ @value@ of type [TextureGenParameter](Graphics-GL-Groups.html#TextureGenParameter).
  -> m GLuint
glBindTexGenParameterEXT :: GLenum -> GLenum -> GLenum -> m GLenum
glBindTexGenParameterEXT v1 :: GLenum
v1 v2 :: GLenum
v2 v3 :: GLenum
v3 = IO GLenum -> m GLenum
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO GLenum -> m GLenum) -> IO GLenum -> m GLenum
forall a b. (a -> b) -> a -> b
$ FunPtr (GLenum -> GLenum -> GLenum -> IO GLenum)
-> GLenum -> GLenum -> GLenum -> IO GLenum
dyn34 FunPtr (GLenum -> GLenum -> GLenum -> IO GLenum)
ptr_glBindTexGenParameterEXT GLenum
v1 GLenum
v2 GLenum
v3

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

-- glBindTexture ---------------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glBindTexture.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glBindTexture.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glBindTexture.xhtml OpenGL 4.x>.
glBindTexture
  :: MonadIO m
  => GLenum -- ^ @target@ of type [TextureTarget](Graphics-GL-Groups.html#TextureTarget).
  -> GLuint -- ^ @texture@ of type @Texture@.
  -> m ()
glBindTexture :: GLenum -> GLenum -> m ()
glBindTexture v1 :: GLenum
v1 v2 :: GLenum
v2 = IO () -> m ()
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_glBindTexture GLenum
v1 GLenum
v2

{-# NOINLINE ptr_glBindTexture #-}
ptr_glBindTexture :: FunPtr (GLenum -> GLuint -> IO ())
ptr_glBindTexture :: FunPtr (GLenum -> GLenum -> IO ())
ptr_glBindTexture = 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 "glBindTexture"

-- glBindTextureEXT ------------------------------------------------------------

-- | This command is an alias for 'glBindTexture'.
glBindTextureEXT
  :: MonadIO m
  => GLenum -- ^ @target@ of type [TextureTarget](Graphics-GL-Groups.html#TextureTarget).
  -> GLuint -- ^ @texture@ of type @Texture@.
  -> m ()
glBindTextureEXT :: GLenum -> GLenum -> m ()
glBindTextureEXT v1 :: GLenum
v1 v2 :: GLenum
v2 = IO () -> m ()
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_glBindTextureEXT GLenum
v1 GLenum
v2

{-# NOINLINE ptr_glBindTextureEXT #-}
ptr_glBindTextureEXT :: FunPtr (GLenum -> GLuint -> IO ())
ptr_glBindTextureEXT :: FunPtr (GLenum -> GLenum -> IO ())
ptr_glBindTextureEXT = 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 "glBindTextureEXT"

-- glBindTextureUnit -----------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glBindTextureUnit.xhtml OpenGL 4.x>.
glBindTextureUnit
  :: MonadIO m
  => GLuint -- ^ @unit@.
  -> GLuint -- ^ @texture@.
  -> m ()
glBindTextureUnit :: GLenum -> GLenum -> m ()
glBindTextureUnit v1 :: GLenum
v1 v2 :: GLenum
v2 = IO () -> m ()
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 ()
dyn4 FunPtr (GLenum -> GLenum -> IO ())
ptr_glBindTextureUnit GLenum
v1 GLenum
v2

{-# NOINLINE ptr_glBindTextureUnit #-}
ptr_glBindTextureUnit :: FunPtr (GLuint -> GLuint -> IO ())
ptr_glBindTextureUnit :: FunPtr (GLenum -> GLenum -> IO ())
ptr_glBindTextureUnit = 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 "glBindTextureUnit"

-- glBindTextureUnitParameterEXT -----------------------------------------------

glBindTextureUnitParameterEXT
  :: MonadIO m
  => GLenum -- ^ @unit@ of type [TextureUnit](Graphics-GL-Groups.html#TextureUnit).
  -> GLenum -- ^ @value@ of type [VertexShaderTextureUnitParameter](Graphics-GL-Groups.html#VertexShaderTextureUnitParameter).
  -> m GLuint
glBindTextureUnitParameterEXT :: GLenum -> GLenum -> m GLenum
glBindTextureUnitParameterEXT v1 :: GLenum
v1 v2 :: GLenum
v2 = IO GLenum -> m GLenum
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO GLenum -> m GLenum) -> IO GLenum -> m GLenum
forall a b. (a -> b) -> a -> b
$ FunPtr (GLenum -> GLenum -> IO GLenum)
-> GLenum -> GLenum -> IO GLenum
dyn31 FunPtr (GLenum -> GLenum -> IO GLenum)
ptr_glBindTextureUnitParameterEXT GLenum
v1 GLenum
v2

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

-- glBindTextures --------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glBindTextures.xhtml OpenGL 4.x>.
glBindTextures
  :: MonadIO m
  => GLuint -- ^ @first@.
  -> GLsizei -- ^ @count@.
  -> Ptr GLuint -- ^ @textures@ pointing to @count@ elements of type @GLuint@.
  -> m ()
glBindTextures :: GLenum -> GLsizei -> Ptr GLenum -> m ()
glBindTextures v1 :: GLenum
v1 v2 :: GLsizei
v2 v3 :: Ptr GLenum
v3 = IO () -> m ()
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ FunPtr (GLenum -> GLsizei -> Ptr GLenum -> IO ())
-> GLenum -> GLsizei -> Ptr GLenum -> IO ()
dyn30 FunPtr (GLenum -> GLsizei -> Ptr GLenum -> IO ())
ptr_glBindTextures GLenum
v1 GLsizei
v2 Ptr GLenum
v3

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

-- glBindTransformFeedback -----------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glBindTransformFeedback.xhtml OpenGL 4.x>.
glBindTransformFeedback
  :: MonadIO m
  => GLenum -- ^ @target@ of type [BindTransformFeedbackTarget](Graphics-GL-Groups.html#BindTransformFeedbackTarget).
  -> GLuint -- ^ @id@.
  -> m ()
glBindTransformFeedback :: GLenum -> GLenum -> m ()
glBindTransformFeedback v1 :: GLenum
v1 v2 :: GLenum
v2 = IO () -> m ()
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_glBindTransformFeedback GLenum
v1 GLenum
v2

{-# NOINLINE ptr_glBindTransformFeedback #-}
ptr_glBindTransformFeedback :: FunPtr (GLenum -> GLuint -> IO ())
ptr_glBindTransformFeedback :: FunPtr (GLenum -> GLenum -> IO ())
ptr_glBindTransformFeedback = 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 "glBindTransformFeedback"

-- glBindTransformFeedbackNV ---------------------------------------------------

glBindTransformFeedbackNV
  :: MonadIO m
  => GLenum -- ^ @target@ of type [BufferTargetARB](Graphics-GL-Groups.html#BufferTargetARB).
  -> GLuint -- ^ @id@.
  -> m ()
glBindTransformFeedbackNV :: GLenum -> GLenum -> m ()
glBindTransformFeedbackNV v1 :: GLenum
v1 v2 :: GLenum
v2 = IO () -> m ()
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_glBindTransformFeedbackNV GLenum
v1 GLenum
v2

{-# NOINLINE ptr_glBindTransformFeedbackNV #-}
ptr_glBindTransformFeedbackNV :: FunPtr (GLenum -> GLuint -> IO ())
ptr_glBindTransformFeedbackNV :: FunPtr (GLenum -> GLenum -> IO ())
ptr_glBindTransformFeedbackNV = 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 "glBindTransformFeedbackNV"

-- glBindVertexArray -----------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glBindVertexArray.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glBindVertexArray.xhtml OpenGL 4.x>.
glBindVertexArray
  :: MonadIO m
  => GLuint -- ^ @array@.
  -> m ()
glBindVertexArray :: GLenum -> m ()
glBindVertexArray v1 :: GLenum
v1 = IO () -> m ()
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ FunPtr (GLenum -> IO ()) -> GLenum -> IO ()
dyn3 FunPtr (GLenum -> IO ())
ptr_glBindVertexArray GLenum
v1

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

-- glBindVertexArrayAPPLE ------------------------------------------------------

glBindVertexArrayAPPLE
  :: MonadIO m
  => GLuint -- ^ @array@.
  -> m ()
glBindVertexArrayAPPLE :: GLenum -> m ()
glBindVertexArrayAPPLE v1 :: GLenum
v1 = IO () -> m ()
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ FunPtr (GLenum -> IO ()) -> GLenum -> IO ()
dyn3 FunPtr (GLenum -> IO ())
ptr_glBindVertexArrayAPPLE GLenum
v1

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

-- glBindVertexArrayOES --------------------------------------------------------

-- | This command is an alias for 'glBindVertexArray'.
glBindVertexArrayOES
  :: MonadIO m
  => GLuint -- ^ @array@.
  -> m ()
glBindVertexArrayOES :: GLenum -> m ()
glBindVertexArrayOES v1 :: GLenum
v1 = IO () -> m ()
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ FunPtr (GLenum -> IO ()) -> GLenum -> IO ()
dyn3 FunPtr (GLenum -> IO ())
ptr_glBindVertexArrayOES GLenum
v1

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

-- glBindVertexBuffer ----------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glBindVertexBuffer.xhtml OpenGL 4.x>.
glBindVertexBuffer
  :: MonadIO m
  => GLuint -- ^ @bindingindex@.
  -> GLuint -- ^ @buffer@.
  -> GLintptr -- ^ @offset@ of type @BufferOffset@.
  -> GLsizei -- ^ @stride@.
  -> m ()
glBindVertexBuffer :: GLenum -> GLenum -> GLintptr -> GLsizei -> m ()
glBindVertexBuffer v1 :: GLenum
v1 v2 :: GLenum
v2 v3 :: GLintptr
v3 v4 :: GLsizei
v4 = IO () -> m ()
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ FunPtr (GLenum -> GLenum -> GLintptr -> GLsizei -> IO ())
-> GLenum -> GLenum -> GLintptr -> GLsizei -> IO ()
dyn35 FunPtr (GLenum -> GLenum -> GLintptr -> GLsizei -> IO ())
ptr_glBindVertexBuffer GLenum
v1 GLenum
v2 GLintptr
v3 GLsizei
v4

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

-- glBindVertexBuffers ---------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glBindVertexBuffers.xhtml OpenGL 4.x>.
glBindVertexBuffers
  :: MonadIO m
  => GLuint -- ^ @first@.
  -> GLsizei -- ^ @count@.
  -> Ptr GLuint -- ^ @buffers@ pointing to @count@ elements of type @GLuint@.
  -> Ptr GLintptr -- ^ @offsets@ pointing to @count@ elements of type @GLintptr@.
  -> Ptr GLsizei -- ^ @strides@ pointing to @count@ elements of type @GLsizei@.
  -> m ()
glBindVertexBuffers :: GLenum
-> GLsizei -> Ptr GLenum -> Ptr GLintptr -> Ptr GLsizei -> m ()
glBindVertexBuffers v1 :: GLenum
v1 v2 :: GLsizei
v2 v3 :: Ptr GLenum
v3 v4 :: Ptr GLintptr
v4 v5 :: Ptr GLsizei
v5 = IO () -> m ()
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ FunPtr
  (GLenum
   -> GLsizei -> Ptr GLenum -> Ptr GLintptr -> Ptr GLsizei -> IO ())
-> GLenum
-> GLsizei
-> Ptr GLenum
-> Ptr GLintptr
-> Ptr GLsizei
-> IO ()
dyn36 FunPtr
  (GLenum
   -> GLsizei -> Ptr GLenum -> Ptr GLintptr -> Ptr GLsizei -> IO ())
ptr_glBindVertexBuffers GLenum
v1 GLsizei
v2 Ptr GLenum
v3 Ptr GLintptr
v4 Ptr GLsizei
v5

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