gl-0.9: generated-src/Graphics/GL/Internal/Shared.hs
-- This file was automatically generated.
{-# LANGUAGE CPP, ScopedTypeVariables, PatternSynonyms #-}
module Graphics.GL.Internal.Shared where
import Control.Monad.IO.Class
import Foreign.Ptr
import Graphics.GL.Types
import Graphics.GL.Internal.FFI
import Graphics.GL.Internal.Proc
import System.IO.Unsafe
-- | Usage: @'glAccum' op value@
--
-- The parameter @op@ is a @AccumOp@, one of: 'Graphics.GL.Internal.Shared.GL_ACCUM', 'Graphics.GL.Internal.Shared.GL_LOAD', 'Graphics.GL.Internal.Shared.GL_RETURN', 'Graphics.GL.Internal.Shared.GL_MULT', 'Graphics.GL.Internal.Shared.GL_ADD'.
--
-- The parameter @value@ is a @CoordF@.
glAccum :: MonadIO m => GLenum -> GLfloat -> m ()
glAccum = ffienumfloatIOV glAccumFunPtr
glAccumFunPtr :: FunPtr (GLenum -> GLfloat -> IO ())
glAccumFunPtr = unsafePerformIO (getProcAddress "glAccum")
{-# NOINLINE glAccumFunPtr #-}
-- | Usage: @'glAlphaFunc' func ref@
--
-- The parameter @func@ is a @AlphaFunction@, one of: 'Graphics.GL.Internal.Shared.GL_ALWAYS', 'Graphics.GL.Internal.Shared.GL_EQUAL', 'Graphics.GL.Internal.Shared.GL_GEQUAL', 'Graphics.GL.Internal.Shared.GL_GREATER', 'Graphics.GL.Internal.Shared.GL_LEQUAL', 'Graphics.GL.Internal.Shared.GL_LESS', 'Graphics.GL.Internal.Shared.GL_NEVER', 'Graphics.GL.Internal.Shared.GL_NOTEQUAL'.
glAlphaFunc :: MonadIO m => GLenum -> GLfloat -> m ()
glAlphaFunc = ffienumfloatIOV glAlphaFuncFunPtr
glAlphaFuncFunPtr :: FunPtr (GLenum -> GLfloat -> IO ())
glAlphaFuncFunPtr = unsafePerformIO (getProcAddress "glAlphaFunc")
{-# NOINLINE glAlphaFuncFunPtr #-}
-- | Usage: @'glAreTexturesResident' n textures residences@
--
-- The parameter @textures@ is a @Texture@.
--
-- The parameter @residences@ is a @Boolean@, one of: 'Graphics.GL.Internal.Shared.GL_FALSE', 'Graphics.GL.Internal.Shared.GL_TRUE'.
--
-- The length of @textures@ should be @n@.
--
-- The length of @residences@ should be @n@.
glAreTexturesResident :: MonadIO m => GLsizei -> Ptr GLuint -> Ptr GLboolean -> m GLboolean
glAreTexturesResident = ffisizeiPtruintPtrbooleanIOboolean glAreTexturesResidentFunPtr
glAreTexturesResidentFunPtr :: FunPtr (GLsizei -> Ptr GLuint -> Ptr GLboolean -> IO GLboolean)
glAreTexturesResidentFunPtr = unsafePerformIO (getProcAddress "glAreTexturesResident")
{-# NOINLINE glAreTexturesResidentFunPtr #-}
-- | Usage: @'glArrayElement' i@
glArrayElement :: MonadIO m => GLint -> m ()
glArrayElement = ffiintIOV glArrayElementFunPtr
glArrayElementFunPtr :: FunPtr (GLint -> IO ())
glArrayElementFunPtr = unsafePerformIO (getProcAddress "glArrayElement")
{-# NOINLINE glArrayElementFunPtr #-}
-- | Usage: @'glBegin' mode@
--
-- The parameter @mode@ is a @PrimitiveType@, one of: 'Graphics.GL.Internal.Shared.GL_LINES', 'Graphics.GL.Internal.Shared.GL_LINES_ADJACENCY', 'Graphics.GL.Ext.ARB.GeometryShader4.GL_LINES_ADJACENCY_ARB', 'Graphics.GL.Internal.Shared.GL_LINES_ADJACENCY_EXT', 'Graphics.GL.Internal.Shared.GL_LINE_LOOP', 'Graphics.GL.Internal.Shared.GL_LINE_STRIP', 'Graphics.GL.Internal.Shared.GL_LINE_STRIP_ADJACENCY', 'Graphics.GL.Ext.ARB.GeometryShader4.GL_LINE_STRIP_ADJACENCY_ARB', 'Graphics.GL.Internal.Shared.GL_LINE_STRIP_ADJACENCY_EXT', 'Graphics.GL.Internal.Shared.GL_PATCHES', 'Graphics.GL.Ext.EXT.TessellationShader.GL_PATCHES_EXT', 'Graphics.GL.Internal.Shared.GL_POINTS', 'Graphics.GL.Internal.Shared.GL_POLYGON', 'Graphics.GL.Internal.Shared.GL_QUADS', 'Graphics.GL.Ext.EXT.TessellationShader.GL_QUADS_EXT', 'Graphics.GL.Internal.Shared.GL_QUAD_STRIP', 'Graphics.GL.Internal.Shared.GL_TRIANGLES', 'Graphics.GL.Internal.Shared.GL_TRIANGLES_ADJACENCY', 'Graphics.GL.Ext.ARB.GeometryShader4.GL_TRIANGLES_ADJACENCY_ARB', 'Graphics.GL.Internal.Shared.GL_TRIANGLES_ADJACENCY_EXT', 'Graphics.GL.Internal.Shared.GL_TRIANGLE_FAN', 'Graphics.GL.Internal.Shared.GL_TRIANGLE_STRIP', 'Graphics.GL.Internal.Shared.GL_TRIANGLE_STRIP_ADJACENCY', 'Graphics.GL.Ext.ARB.GeometryShader4.GL_TRIANGLE_STRIP_ADJACENCY_ARB', 'Graphics.GL.Internal.Shared.GL_TRIANGLE_STRIP_ADJACENCY_EXT'.
glBegin :: MonadIO m => GLenum -> m ()
glBegin = ffienumIOV glBeginFunPtr
glBeginFunPtr :: FunPtr (GLenum -> IO ())
glBeginFunPtr = unsafePerformIO (getProcAddress "glBegin")
{-# NOINLINE glBeginFunPtr #-}
-- | Usage: @'glBitmap' width height xorig yorig xmove ymove bitmap@
--
-- The parameter @xorig@ is a @CoordF@.
--
-- The parameter @yorig@ is a @CoordF@.
--
-- The parameter @xmove@ is a @CoordF@.
--
-- The parameter @ymove@ is a @CoordF@.
--
-- The length of @bitmap@ should be @COMPSIZE(width,height)@.
glBitmap :: MonadIO m => GLsizei -> GLsizei -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> Ptr GLubyte -> m ()
glBitmap = ffisizeisizeifloatfloatfloatfloatPtrubyteIOV glBitmapFunPtr
glBitmapFunPtr :: FunPtr (GLsizei -> GLsizei -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> Ptr GLubyte -> IO ())
glBitmapFunPtr = unsafePerformIO (getProcAddress "glBitmap")
{-# NOINLINE glBitmapFunPtr #-}
-- | Usage: @'glCallList' list@
--
-- The parameter @list@ is a @List@.
glCallList :: MonadIO m => GLuint -> m ()
glCallList = ffiuintIOV glCallListFunPtr
glCallListFunPtr :: FunPtr (GLuint -> IO ())
glCallListFunPtr = unsafePerformIO (getProcAddress "glCallList")
{-# NOINLINE glCallListFunPtr #-}
-- | Usage: @'glCallLists' n type lists@
--
-- The parameter @type@ is a @ListNameType@, one of: 'Graphics.GL.Internal.Shared.GL_2_BYTES', 'Graphics.GL.Internal.Shared.GL_3_BYTES', 'Graphics.GL.Internal.Shared.GL_4_BYTES', 'Graphics.GL.Internal.Shared.GL_BYTE', 'Graphics.GL.Internal.Shared.GL_FLOAT', 'Graphics.GL.Internal.Shared.GL_INT', 'Graphics.GL.Internal.Shared.GL_SHORT', 'Graphics.GL.Internal.Shared.GL_UNSIGNED_BYTE', 'Graphics.GL.Internal.Shared.GL_UNSIGNED_INT', 'Graphics.GL.Internal.Shared.GL_UNSIGNED_SHORT'.
--
-- The length of @lists@ should be @COMPSIZE(n,type)@.
glCallLists :: MonadIO m => GLsizei -> GLenum -> Ptr () -> m ()
glCallLists = ffisizeienumPtrVIOV glCallListsFunPtr
glCallListsFunPtr :: FunPtr (GLsizei -> GLenum -> Ptr () -> IO ())
glCallListsFunPtr = unsafePerformIO (getProcAddress "glCallLists")
{-# NOINLINE glCallListsFunPtr #-}
-- | Usage: @'glClearAccum' red green blue alpha@
glClearAccum :: MonadIO m => GLfloat -> GLfloat -> GLfloat -> GLfloat -> m ()
glClearAccum = ffifloatfloatfloatfloatIOV glClearAccumFunPtr
glClearAccumFunPtr :: FunPtr (GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
glClearAccumFunPtr = unsafePerformIO (getProcAddress "glClearAccum")
{-# NOINLINE glClearAccumFunPtr #-}
-- | Usage: @'glClearIndex' c@
--
-- The parameter @c@ is a @MaskedColorIndexValueF@.
glClearIndex :: MonadIO m => GLfloat -> m ()
glClearIndex = ffifloatIOV glClearIndexFunPtr
glClearIndexFunPtr :: FunPtr (GLfloat -> IO ())
glClearIndexFunPtr = unsafePerformIO (getProcAddress "glClearIndex")
{-# NOINLINE glClearIndexFunPtr #-}
-- | Usage: @'glClientActiveTexture' texture@
--
-- The parameter @texture@ is a @TextureUnit@.
glClientActiveTexture :: MonadIO m => GLenum -> m ()
glClientActiveTexture = ffienumIOV glClientActiveTextureFunPtr
glClientActiveTextureFunPtr :: FunPtr (GLenum -> IO ())
glClientActiveTextureFunPtr = unsafePerformIO (getProcAddress "glClientActiveTexture")
{-# NOINLINE glClientActiveTextureFunPtr #-}
-- | Usage: @'glClipPlane' plane equation@
--
-- The parameter @plane@ is a @ClipPlaneName@, one of: 'Graphics.GL.Internal.Shared.GL_CLIP_DISTANCE0', 'Graphics.GL.Internal.Shared.GL_CLIP_DISTANCE1', 'Graphics.GL.Internal.Shared.GL_CLIP_DISTANCE2', 'Graphics.GL.Internal.Shared.GL_CLIP_DISTANCE3', 'Graphics.GL.Internal.Shared.GL_CLIP_DISTANCE4', 'Graphics.GL.Internal.Shared.GL_CLIP_DISTANCE5', 'Graphics.GL.Internal.Shared.GL_CLIP_DISTANCE6', 'Graphics.GL.Internal.Shared.GL_CLIP_DISTANCE7', 'Graphics.GL.Internal.Shared.GL_CLIP_PLANE0', 'Graphics.GL.Internal.Shared.GL_CLIP_PLANE1', 'Graphics.GL.Internal.Shared.GL_CLIP_PLANE2', 'Graphics.GL.Internal.Shared.GL_CLIP_PLANE3', 'Graphics.GL.Internal.Shared.GL_CLIP_PLANE4', 'Graphics.GL.Internal.Shared.GL_CLIP_PLANE5'.
--
-- The length of @equation@ should be @4@.
glClipPlane :: MonadIO m => GLenum -> Ptr GLdouble -> m ()
glClipPlane = ffienumPtrdoubleIOV glClipPlaneFunPtr
glClipPlaneFunPtr :: FunPtr (GLenum -> Ptr GLdouble -> IO ())
glClipPlaneFunPtr = unsafePerformIO (getProcAddress "glClipPlane")
{-# NOINLINE glClipPlaneFunPtr #-}
-- | Usage: @'glColor3b' red green blue@
--
-- The parameter @red@ is a @ColorB@.
--
-- The parameter @green@ is a @ColorB@.
--
-- The parameter @blue@ is a @ColorB@.
--
-- The vector equivalent of this command is 'Graphics.GL.Internal.Shared.glColor3bv'.
glColor3b :: MonadIO m => GLbyte -> GLbyte -> GLbyte -> m ()
glColor3b = ffibytebytebyteIOV glColor3bFunPtr
glColor3bFunPtr :: FunPtr (GLbyte -> GLbyte -> GLbyte -> IO ())
glColor3bFunPtr = unsafePerformIO (getProcAddress "glColor3b")
{-# NOINLINE glColor3bFunPtr #-}
-- | Usage: @'glColor3bv' v@
--
-- The parameter @v@ is a @ColorB@.
--
-- The length of @v@ should be @3@.
glColor3bv :: MonadIO m => Ptr GLbyte -> m ()
glColor3bv = ffiPtrbyteIOV glColor3bvFunPtr
glColor3bvFunPtr :: FunPtr (Ptr GLbyte -> IO ())
glColor3bvFunPtr = unsafePerformIO (getProcAddress "glColor3bv")
{-# NOINLINE glColor3bvFunPtr #-}
-- | Usage: @'glColor3d' red green blue@
--
-- The parameter @red@ is a @ColorD@.
--
-- The parameter @green@ is a @ColorD@.
--
-- The parameter @blue@ is a @ColorD@.
--
-- The vector equivalent of this command is 'Graphics.GL.Internal.Shared.glColor3dv'.
glColor3d :: MonadIO m => GLdouble -> GLdouble -> GLdouble -> m ()
glColor3d = ffidoubledoubledoubleIOV glColor3dFunPtr
glColor3dFunPtr :: FunPtr (GLdouble -> GLdouble -> GLdouble -> IO ())
glColor3dFunPtr = unsafePerformIO (getProcAddress "glColor3d")
{-# NOINLINE glColor3dFunPtr #-}
-- | Usage: @'glColor3dv' v@
--
-- The parameter @v@ is a @ColorD@.
--
-- The length of @v@ should be @3@.
glColor3dv :: MonadIO m => Ptr GLdouble -> m ()
glColor3dv = ffiPtrdoubleIOV glColor3dvFunPtr
glColor3dvFunPtr :: FunPtr (Ptr GLdouble -> IO ())
glColor3dvFunPtr = unsafePerformIO (getProcAddress "glColor3dv")
{-# NOINLINE glColor3dvFunPtr #-}
-- | Usage: @'glColor3f' red green blue@
--
-- The parameter @red@ is a @ColorF@.
--
-- The parameter @green@ is a @ColorF@.
--
-- The parameter @blue@ is a @ColorF@.
--
-- The vector equivalent of this command is 'Graphics.GL.Internal.Shared.glColor3fv'.
glColor3f :: MonadIO m => GLfloat -> GLfloat -> GLfloat -> m ()
glColor3f = ffifloatfloatfloatIOV glColor3fFunPtr
glColor3fFunPtr :: FunPtr (GLfloat -> GLfloat -> GLfloat -> IO ())
glColor3fFunPtr = unsafePerformIO (getProcAddress "glColor3f")
{-# NOINLINE glColor3fFunPtr #-}
-- | Usage: @'glColor3fv' v@
--
-- The parameter @v@ is a @ColorF@.
--
-- The length of @v@ should be @3@.
glColor3fv :: MonadIO m => Ptr GLfloat -> m ()
glColor3fv = ffiPtrfloatIOV glColor3fvFunPtr
glColor3fvFunPtr :: FunPtr (Ptr GLfloat -> IO ())
glColor3fvFunPtr = unsafePerformIO (getProcAddress "glColor3fv")
{-# NOINLINE glColor3fvFunPtr #-}
-- | Usage: @'glColor3i' red green blue@
--
-- The parameter @red@ is a @ColorI@.
--
-- The parameter @green@ is a @ColorI@.
--
-- The parameter @blue@ is a @ColorI@.
--
-- The vector equivalent of this command is 'Graphics.GL.Internal.Shared.glColor3iv'.
glColor3i :: MonadIO m => GLint -> GLint -> GLint -> m ()
glColor3i = ffiintintintIOV glColor3iFunPtr
glColor3iFunPtr :: FunPtr (GLint -> GLint -> GLint -> IO ())
glColor3iFunPtr = unsafePerformIO (getProcAddress "glColor3i")
{-# NOINLINE glColor3iFunPtr #-}
-- | Usage: @'glColor3iv' v@
--
-- The parameter @v@ is a @ColorI@.
--
-- The length of @v@ should be @3@.
glColor3iv :: MonadIO m => Ptr GLint -> m ()
glColor3iv = ffiPtrintIOV glColor3ivFunPtr
glColor3ivFunPtr :: FunPtr (Ptr GLint -> IO ())
glColor3ivFunPtr = unsafePerformIO (getProcAddress "glColor3iv")
{-# NOINLINE glColor3ivFunPtr #-}
-- | Usage: @'glColor3s' red green blue@
--
-- The parameter @red@ is a @ColorS@.
--
-- The parameter @green@ is a @ColorS@.
--
-- The parameter @blue@ is a @ColorS@.
--
-- The vector equivalent of this command is 'Graphics.GL.Internal.Shared.glColor3sv'.
glColor3s :: MonadIO m => GLshort -> GLshort -> GLshort -> m ()
glColor3s = ffishortshortshortIOV glColor3sFunPtr
glColor3sFunPtr :: FunPtr (GLshort -> GLshort -> GLshort -> IO ())
glColor3sFunPtr = unsafePerformIO (getProcAddress "glColor3s")
{-# NOINLINE glColor3sFunPtr #-}
-- | Usage: @'glColor3sv' v@
--
-- The parameter @v@ is a @ColorS@.
--
-- The length of @v@ should be @3@.
glColor3sv :: MonadIO m => Ptr GLshort -> m ()
glColor3sv = ffiPtrshortIOV glColor3svFunPtr
glColor3svFunPtr :: FunPtr (Ptr GLshort -> IO ())
glColor3svFunPtr = unsafePerformIO (getProcAddress "glColor3sv")
{-# NOINLINE glColor3svFunPtr #-}
-- | Usage: @'glColor3ub' red green blue@
--
-- The parameter @red@ is a @ColorUB@.
--
-- The parameter @green@ is a @ColorUB@.
--
-- The parameter @blue@ is a @ColorUB@.
--
-- The vector equivalent of this command is 'Graphics.GL.Internal.Shared.glColor3ubv'.
glColor3ub :: MonadIO m => GLubyte -> GLubyte -> GLubyte -> m ()
glColor3ub = ffiubyteubyteubyteIOV glColor3ubFunPtr
glColor3ubFunPtr :: FunPtr (GLubyte -> GLubyte -> GLubyte -> IO ())
glColor3ubFunPtr = unsafePerformIO (getProcAddress "glColor3ub")
{-# NOINLINE glColor3ubFunPtr #-}
-- | Usage: @'glColor3ubv' v@
--
-- The parameter @v@ is a @ColorUB@.
--
-- The length of @v@ should be @3@.
glColor3ubv :: MonadIO m => Ptr GLubyte -> m ()
glColor3ubv = ffiPtrubyteIOV glColor3ubvFunPtr
glColor3ubvFunPtr :: FunPtr (Ptr GLubyte -> IO ())
glColor3ubvFunPtr = unsafePerformIO (getProcAddress "glColor3ubv")
{-# NOINLINE glColor3ubvFunPtr #-}
-- | Usage: @'glColor3ui' red green blue@
--
-- The parameter @red@ is a @ColorUI@.
--
-- The parameter @green@ is a @ColorUI@.
--
-- The parameter @blue@ is a @ColorUI@.
--
-- The vector equivalent of this command is 'Graphics.GL.Internal.Shared.glColor3uiv'.
glColor3ui :: MonadIO m => GLuint -> GLuint -> GLuint -> m ()
glColor3ui = ffiuintuintuintIOV glColor3uiFunPtr
glColor3uiFunPtr :: FunPtr (GLuint -> GLuint -> GLuint -> IO ())
glColor3uiFunPtr = unsafePerformIO (getProcAddress "glColor3ui")
{-# NOINLINE glColor3uiFunPtr #-}
-- | Usage: @'glColor3uiv' v@
--
-- The parameter @v@ is a @ColorUI@.
--
-- The length of @v@ should be @3@.
glColor3uiv :: MonadIO m => Ptr GLuint -> m ()
glColor3uiv = ffiPtruintIOV glColor3uivFunPtr
glColor3uivFunPtr :: FunPtr (Ptr GLuint -> IO ())
glColor3uivFunPtr = unsafePerformIO (getProcAddress "glColor3uiv")
{-# NOINLINE glColor3uivFunPtr #-}
-- | Usage: @'glColor3us' red green blue@
--
-- The parameter @red@ is a @ColorUS@.
--
-- The parameter @green@ is a @ColorUS@.
--
-- The parameter @blue@ is a @ColorUS@.
--
-- The vector equivalent of this command is 'Graphics.GL.Internal.Shared.glColor3usv'.
glColor3us :: MonadIO m => GLushort -> GLushort -> GLushort -> m ()
glColor3us = ffiushortushortushortIOV glColor3usFunPtr
glColor3usFunPtr :: FunPtr (GLushort -> GLushort -> GLushort -> IO ())
glColor3usFunPtr = unsafePerformIO (getProcAddress "glColor3us")
{-# NOINLINE glColor3usFunPtr #-}
-- | Usage: @'glColor3usv' v@
--
-- The parameter @v@ is a @ColorUS@.
--
-- The length of @v@ should be @3@.
glColor3usv :: MonadIO m => Ptr GLushort -> m ()
glColor3usv = ffiPtrushortIOV glColor3usvFunPtr
glColor3usvFunPtr :: FunPtr (Ptr GLushort -> IO ())
glColor3usvFunPtr = unsafePerformIO (getProcAddress "glColor3usv")
{-# NOINLINE glColor3usvFunPtr #-}
-- | Usage: @'glColor4b' red green blue alpha@
--
-- The parameter @red@ is a @ColorB@.
--
-- The parameter @green@ is a @ColorB@.
--
-- The parameter @blue@ is a @ColorB@.
--
-- The parameter @alpha@ is a @ColorB@.
--
-- The vector equivalent of this command is 'Graphics.GL.Internal.Shared.glColor4bv'.
glColor4b :: MonadIO m => GLbyte -> GLbyte -> GLbyte -> GLbyte -> m ()
glColor4b = ffibytebytebytebyteIOV glColor4bFunPtr
glColor4bFunPtr :: FunPtr (GLbyte -> GLbyte -> GLbyte -> GLbyte -> IO ())
glColor4bFunPtr = unsafePerformIO (getProcAddress "glColor4b")
{-# NOINLINE glColor4bFunPtr #-}
-- | Usage: @'glColor4bv' v@
--
-- The parameter @v@ is a @ColorB@.
--
-- The length of @v@ should be @4@.
glColor4bv :: MonadIO m => Ptr GLbyte -> m ()
glColor4bv = ffiPtrbyteIOV glColor4bvFunPtr
glColor4bvFunPtr :: FunPtr (Ptr GLbyte -> IO ())
glColor4bvFunPtr = unsafePerformIO (getProcAddress "glColor4bv")
{-# NOINLINE glColor4bvFunPtr #-}
-- | Usage: @'glColor4d' red green blue alpha@
--
-- The parameter @red@ is a @ColorD@.
--
-- The parameter @green@ is a @ColorD@.
--
-- The parameter @blue@ is a @ColorD@.
--
-- The parameter @alpha@ is a @ColorD@.
--
-- The vector equivalent of this command is 'Graphics.GL.Internal.Shared.glColor4dv'.
glColor4d :: MonadIO m => GLdouble -> GLdouble -> GLdouble -> GLdouble -> m ()
glColor4d = ffidoubledoubledoubledoubleIOV glColor4dFunPtr
glColor4dFunPtr :: FunPtr (GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ())
glColor4dFunPtr = unsafePerformIO (getProcAddress "glColor4d")
{-# NOINLINE glColor4dFunPtr #-}
-- | Usage: @'glColor4dv' v@
--
-- The parameter @v@ is a @ColorD@.
--
-- The length of @v@ should be @4@.
glColor4dv :: MonadIO m => Ptr GLdouble -> m ()
glColor4dv = ffiPtrdoubleIOV glColor4dvFunPtr
glColor4dvFunPtr :: FunPtr (Ptr GLdouble -> IO ())
glColor4dvFunPtr = unsafePerformIO (getProcAddress "glColor4dv")
{-# NOINLINE glColor4dvFunPtr #-}
-- | Usage: @'glColor4f' red green blue alpha@
--
-- The parameter @red@ is a @ColorF@.
--
-- The parameter @green@ is a @ColorF@.
--
-- The parameter @blue@ is a @ColorF@.
--
-- The parameter @alpha@ is a @ColorF@.
--
-- The vector equivalent of this command is 'Graphics.GL.Internal.Shared.glColor4fv'.
glColor4f :: MonadIO m => GLfloat -> GLfloat -> GLfloat -> GLfloat -> m ()
glColor4f = ffifloatfloatfloatfloatIOV glColor4fFunPtr
glColor4fFunPtr :: FunPtr (GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
glColor4fFunPtr = unsafePerformIO (getProcAddress "glColor4f")
{-# NOINLINE glColor4fFunPtr #-}
-- | Usage: @'glColor4fv' v@
--
-- The parameter @v@ is a @ColorF@.
--
-- The length of @v@ should be @4@.
glColor4fv :: MonadIO m => Ptr GLfloat -> m ()
glColor4fv = ffiPtrfloatIOV glColor4fvFunPtr
glColor4fvFunPtr :: FunPtr (Ptr GLfloat -> IO ())
glColor4fvFunPtr = unsafePerformIO (getProcAddress "glColor4fv")
{-# NOINLINE glColor4fvFunPtr #-}
-- | Usage: @'glColor4i' red green blue alpha@
--
-- The parameter @red@ is a @ColorI@.
--
-- The parameter @green@ is a @ColorI@.
--
-- The parameter @blue@ is a @ColorI@.
--
-- The parameter @alpha@ is a @ColorI@.
--
-- The vector equivalent of this command is 'Graphics.GL.Internal.Shared.glColor4iv'.
glColor4i :: MonadIO m => GLint -> GLint -> GLint -> GLint -> m ()
glColor4i = ffiintintintintIOV glColor4iFunPtr
glColor4iFunPtr :: FunPtr (GLint -> GLint -> GLint -> GLint -> IO ())
glColor4iFunPtr = unsafePerformIO (getProcAddress "glColor4i")
{-# NOINLINE glColor4iFunPtr #-}
-- | Usage: @'glColor4iv' v@
--
-- The parameter @v@ is a @ColorI@.
--
-- The length of @v@ should be @4@.
glColor4iv :: MonadIO m => Ptr GLint -> m ()
glColor4iv = ffiPtrintIOV glColor4ivFunPtr
glColor4ivFunPtr :: FunPtr (Ptr GLint -> IO ())
glColor4ivFunPtr = unsafePerformIO (getProcAddress "glColor4iv")
{-# NOINLINE glColor4ivFunPtr #-}
-- | Usage: @'glColor4s' red green blue alpha@
--
-- The parameter @red@ is a @ColorS@.
--
-- The parameter @green@ is a @ColorS@.
--
-- The parameter @blue@ is a @ColorS@.
--
-- The parameter @alpha@ is a @ColorS@.
--
-- The vector equivalent of this command is 'Graphics.GL.Internal.Shared.glColor4sv'.
glColor4s :: MonadIO m => GLshort -> GLshort -> GLshort -> GLshort -> m ()
glColor4s = ffishortshortshortshortIOV glColor4sFunPtr
glColor4sFunPtr :: FunPtr (GLshort -> GLshort -> GLshort -> GLshort -> IO ())
glColor4sFunPtr = unsafePerformIO (getProcAddress "glColor4s")
{-# NOINLINE glColor4sFunPtr #-}
-- | Usage: @'glColor4sv' v@
--
-- The parameter @v@ is a @ColorS@.
--
-- The length of @v@ should be @4@.
glColor4sv :: MonadIO m => Ptr GLshort -> m ()
glColor4sv = ffiPtrshortIOV glColor4svFunPtr
glColor4svFunPtr :: FunPtr (Ptr GLshort -> IO ())
glColor4svFunPtr = unsafePerformIO (getProcAddress "glColor4sv")
{-# NOINLINE glColor4svFunPtr #-}
-- | Usage: @'glColor4ub' red green blue alpha@
--
-- The parameter @red@ is a @ColorUB@.
--
-- The parameter @green@ is a @ColorUB@.
--
-- The parameter @blue@ is a @ColorUB@.
--
-- The parameter @alpha@ is a @ColorUB@.
--
-- The vector equivalent of this command is 'Graphics.GL.Internal.Shared.glColor4ubv'.
glColor4ub :: MonadIO m => GLubyte -> GLubyte -> GLubyte -> GLubyte -> m ()
glColor4ub = ffiubyteubyteubyteubyteIOV glColor4ubFunPtr
glColor4ubFunPtr :: FunPtr (GLubyte -> GLubyte -> GLubyte -> GLubyte -> IO ())
glColor4ubFunPtr = unsafePerformIO (getProcAddress "glColor4ub")
{-# NOINLINE glColor4ubFunPtr #-}
-- | Usage: @'glColor4ubv' v@
--
-- The parameter @v@ is a @ColorUB@.
--
-- The length of @v@ should be @4@.
glColor4ubv :: MonadIO m => Ptr GLubyte -> m ()
glColor4ubv = ffiPtrubyteIOV glColor4ubvFunPtr
glColor4ubvFunPtr :: FunPtr (Ptr GLubyte -> IO ())
glColor4ubvFunPtr = unsafePerformIO (getProcAddress "glColor4ubv")
{-# NOINLINE glColor4ubvFunPtr #-}
-- | Usage: @'glColor4ui' red green blue alpha@
--
-- The parameter @red@ is a @ColorUI@.
--
-- The parameter @green@ is a @ColorUI@.
--
-- The parameter @blue@ is a @ColorUI@.
--
-- The parameter @alpha@ is a @ColorUI@.
--
-- The vector equivalent of this command is 'Graphics.GL.Internal.Shared.glColor4uiv'.
glColor4ui :: MonadIO m => GLuint -> GLuint -> GLuint -> GLuint -> m ()
glColor4ui = ffiuintuintuintuintIOV glColor4uiFunPtr
glColor4uiFunPtr :: FunPtr (GLuint -> GLuint -> GLuint -> GLuint -> IO ())
glColor4uiFunPtr = unsafePerformIO (getProcAddress "glColor4ui")
{-# NOINLINE glColor4uiFunPtr #-}
-- | Usage: @'glColor4uiv' v@
--
-- The parameter @v@ is a @ColorUI@.
--
-- The length of @v@ should be @4@.
glColor4uiv :: MonadIO m => Ptr GLuint -> m ()
glColor4uiv = ffiPtruintIOV glColor4uivFunPtr
glColor4uivFunPtr :: FunPtr (Ptr GLuint -> IO ())
glColor4uivFunPtr = unsafePerformIO (getProcAddress "glColor4uiv")
{-# NOINLINE glColor4uivFunPtr #-}
-- | Usage: @'glColor4us' red green blue alpha@
--
-- The parameter @red@ is a @ColorUS@.
--
-- The parameter @green@ is a @ColorUS@.
--
-- The parameter @blue@ is a @ColorUS@.
--
-- The parameter @alpha@ is a @ColorUS@.
--
-- The vector equivalent of this command is 'Graphics.GL.Internal.Shared.glColor4usv'.
glColor4us :: MonadIO m => GLushort -> GLushort -> GLushort -> GLushort -> m ()
glColor4us = ffiushortushortushortushortIOV glColor4usFunPtr
glColor4usFunPtr :: FunPtr (GLushort -> GLushort -> GLushort -> GLushort -> IO ())
glColor4usFunPtr = unsafePerformIO (getProcAddress "glColor4us")
{-# NOINLINE glColor4usFunPtr #-}
-- | Usage: @'glColor4usv' v@
--
-- The parameter @v@ is a @ColorUS@.
--
-- The length of @v@ should be @4@.
glColor4usv :: MonadIO m => Ptr GLushort -> m ()
glColor4usv = ffiPtrushortIOV glColor4usvFunPtr
glColor4usvFunPtr :: FunPtr (Ptr GLushort -> IO ())
glColor4usvFunPtr = unsafePerformIO (getProcAddress "glColor4usv")
{-# NOINLINE glColor4usvFunPtr #-}
-- | Usage: @'glColorMaterial' face mode@
--
-- The parameter @face@ is a @MaterialFace@, one of: 'Graphics.GL.Internal.Shared.GL_BACK', 'Graphics.GL.Internal.Shared.GL_FRONT', 'Graphics.GL.Internal.Shared.GL_FRONT_AND_BACK'.
--
-- The parameter @mode@ is a @ColorMaterialParameter@, one of: 'Graphics.GL.Internal.Shared.GL_AMBIENT', 'Graphics.GL.Internal.Shared.GL_AMBIENT_AND_DIFFUSE', 'Graphics.GL.Internal.Shared.GL_DIFFUSE', 'Graphics.GL.Internal.Shared.GL_EMISSION', 'Graphics.GL.Internal.Shared.GL_SPECULAR'.
glColorMaterial :: MonadIO m => GLenum -> GLenum -> m ()
glColorMaterial = ffienumenumIOV glColorMaterialFunPtr
glColorMaterialFunPtr :: FunPtr (GLenum -> GLenum -> IO ())
glColorMaterialFunPtr = unsafePerformIO (getProcAddress "glColorMaterial")
{-# NOINLINE glColorMaterialFunPtr #-}
-- | Usage: @'glColorPointer' size type stride pointer@
--
-- The parameter @type@ is a @ColorPointerType@, one of: 'Graphics.GL.Internal.Shared.GL_BYTE', 'Graphics.GL.Internal.Shared.GL_DOUBLE', 'Graphics.GL.Internal.Shared.GL_FLOAT', 'Graphics.GL.Internal.Shared.GL_INT', 'Graphics.GL.Internal.Shared.GL_SHORT', 'Graphics.GL.Internal.Shared.GL_UNSIGNED_BYTE', 'Graphics.GL.Internal.Shared.GL_UNSIGNED_INT', 'Graphics.GL.Internal.Shared.GL_UNSIGNED_SHORT'.
--
-- The length of @pointer@ should be @COMPSIZE(size,type,stride)@.
glColorPointer :: MonadIO m => GLint -> GLenum -> GLsizei -> Ptr () -> m ()
glColorPointer = ffiintenumsizeiPtrVIOV glColorPointerFunPtr
glColorPointerFunPtr :: FunPtr (GLint -> GLenum -> GLsizei -> Ptr () -> IO ())
glColorPointerFunPtr = unsafePerformIO (getProcAddress "glColorPointer")
{-# NOINLINE glColorPointerFunPtr #-}
-- | Usage: @'glCopyPixels' x y width height type@
--
-- The parameter @x@ is a @WinCoord@.
--
-- The parameter @y@ is a @WinCoord@.
--
-- The parameter @type@ is a @PixelCopyType@, one of: 'Graphics.GL.Internal.Shared.GL_COLOR', 'Graphics.GL.Ext.EXT.DiscardFramebuffer.GL_COLOR_EXT', 'Graphics.GL.Internal.Shared.GL_DEPTH', 'Graphics.GL.Ext.EXT.DiscardFramebuffer.GL_DEPTH_EXT', 'Graphics.GL.Internal.Shared.GL_STENCIL', 'Graphics.GL.Ext.EXT.DiscardFramebuffer.GL_STENCIL_EXT'.
glCopyPixels :: MonadIO m => GLint -> GLint -> GLsizei -> GLsizei -> GLenum -> m ()
glCopyPixels = ffiintintsizeisizeienumIOV glCopyPixelsFunPtr
glCopyPixelsFunPtr :: FunPtr (GLint -> GLint -> GLsizei -> GLsizei -> GLenum -> IO ())
glCopyPixelsFunPtr = unsafePerformIO (getProcAddress "glCopyPixels")
{-# NOINLINE glCopyPixelsFunPtr #-}
-- | Usage: @'glDeleteLists' list range@
--
-- The parameter @list@ is a @List@.
glDeleteLists :: MonadIO m => GLuint -> GLsizei -> m ()
glDeleteLists = ffiuintsizeiIOV glDeleteListsFunPtr
glDeleteListsFunPtr :: FunPtr (GLuint -> GLsizei -> IO ())
glDeleteListsFunPtr = unsafePerformIO (getProcAddress "glDeleteLists")
{-# NOINLINE glDeleteListsFunPtr #-}
-- | Usage: @'glDisableClientState' array@
--
-- The parameter @array@ is a @EnableCap@, one of: 'Graphics.GL.Internal.Shared.GL_ALPHA_TEST', 'Graphics.GL.Ext.SGIX.AsyncPixel.GL_ASYNC_DRAW_PIXELS_SGIX', 'Graphics.GL.Ext.SGIX.AsyncHistogram.GL_ASYNC_HISTOGRAM_SGIX', 'Graphics.GL.Ext.SGIX.AsyncPixel.GL_ASYNC_READ_PIXELS_SGIX', 'Graphics.GL.Ext.SGIX.AsyncPixel.GL_ASYNC_TEX_IMAGE_SGIX', 'Graphics.GL.Internal.Shared.GL_AUTO_NORMAL', 'Graphics.GL.Internal.Shared.GL_BLEND', 'Graphics.GL.Ext.SGIX.CalligraphicFragment.GL_CALLIGRAPHIC_FRAGMENT_SGIX', 'Graphics.GL.Internal.Shared.GL_CLIP_PLANE0', 'Graphics.GL.Internal.Shared.GL_CLIP_PLANE1', 'Graphics.GL.Internal.Shared.GL_CLIP_PLANE2', 'Graphics.GL.Internal.Shared.GL_CLIP_PLANE3', 'Graphics.GL.Internal.Shared.GL_CLIP_PLANE4', 'Graphics.GL.Internal.Shared.GL_CLIP_PLANE5', 'Graphics.GL.Internal.Shared.GL_COLOR_ARRAY', 'Graphics.GL.Internal.Shared.GL_COLOR_LOGIC_OP', 'Graphics.GL.Internal.Shared.GL_COLOR_MATERIAL', 'Graphics.GL.Ext.SGI.ColorTable.GL_COLOR_TABLE_SGI', 'Graphics.GL.Ext.EXT.Convolution.GL_CONVOLUTION_1D_EXT', 'Graphics.GL.Ext.EXT.Convolution.GL_CONVOLUTION_2D_EXT', 'Graphics.GL.Internal.Shared.GL_CULL_FACE', 'Graphics.GL.Internal.Shared.GL_DEPTH_TEST', 'Graphics.GL.Internal.Shared.GL_DITHER', 'Graphics.GL.Internal.Shared.GL_EDGE_FLAG_ARRAY', 'Graphics.GL.Internal.Shared.GL_FOG', 'Graphics.GL.Ext.SGIX.FogOffset.GL_FOG_OFFSET_SGIX', 'Graphics.GL.Ext.SGIX.FragmentLighting.GL_FRAGMENT_COLOR_MATERIAL_SGIX', 'Graphics.GL.Ext.SGIX.FragmentLighting.GL_FRAGMENT_LIGHT0_SGIX', 'Graphics.GL.Ext.SGIX.FragmentLighting.GL_FRAGMENT_LIGHT1_SGIX', 'Graphics.GL.Ext.SGIX.FragmentLighting.GL_FRAGMENT_LIGHT2_SGIX', 'Graphics.GL.Ext.SGIX.FragmentLighting.GL_FRAGMENT_LIGHT3_SGIX', 'Graphics.GL.Ext.SGIX.FragmentLighting.GL_FRAGMENT_LIGHT4_SGIX', 'Graphics.GL.Ext.SGIX.FragmentLighting.GL_FRAGMENT_LIGHT5_SGIX', 'Graphics.GL.Ext.SGIX.FragmentLighting.GL_FRAGMENT_LIGHT6_SGIX', 'Graphics.GL.Ext.SGIX.FragmentLighting.GL_FRAGMENT_LIGHT7_SGIX', 'Graphics.GL.Ext.SGIX.FragmentLighting.GL_FRAGMENT_LIGHTING_SGIX', 'Graphics.GL.Ext.SGIX.Framezoom.GL_FRAMEZOOM_SGIX', 'Graphics.GL.Ext.EXT.Histogram.GL_HISTOGRAM_EXT', 'Graphics.GL.Internal.Shared.GL_INDEX_ARRAY', 'Graphics.GL.Internal.Shared.GL_INDEX_LOGIC_OP', 'Graphics.GL.Ext.SGIX.Interlace.GL_INTERLACE_SGIX', 'Graphics.GL.Ext.SGIX.IrInstrument1.GL_IR_INSTRUMENT1_SGIX', 'Graphics.GL.Internal.Shared.GL_LIGHT0', 'Graphics.GL.Internal.Shared.GL_LIGHT1', 'Graphics.GL.Internal.Shared.GL_LIGHT2', 'Graphics.GL.Internal.Shared.GL_LIGHT3', 'Graphics.GL.Internal.Shared.GL_LIGHT4', 'Graphics.GL.Internal.Shared.GL_LIGHT5', 'Graphics.GL.Internal.Shared.GL_LIGHT6', 'Graphics.GL.Internal.Shared.GL_LIGHT7', 'Graphics.GL.Internal.Shared.GL_LIGHTING', 'Graphics.GL.Internal.Shared.GL_LINE_SMOOTH', 'Graphics.GL.Internal.Shared.GL_LINE_STIPPLE', 'Graphics.GL.Internal.Shared.GL_MAP1_COLOR_4', 'Graphics.GL.Internal.Shared.GL_MAP1_INDEX', 'Graphics.GL.Internal.Shared.GL_MAP1_NORMAL', 'Graphics.GL.Internal.Shared.GL_MAP1_TEXTURE_COORD_1', 'Graphics.GL.Internal.Shared.GL_MAP1_TEXTURE_COORD_2', 'Graphics.GL.Internal.Shared.GL_MAP1_TEXTURE_COORD_3', 'Graphics.GL.Internal.Shared.GL_MAP1_TEXTURE_COORD_4', 'Graphics.GL.Internal.Shared.GL_MAP1_VERTEX_3', 'Graphics.GL.Internal.Shared.GL_MAP1_VERTEX_4', 'Graphics.GL.Internal.Shared.GL_MAP2_COLOR_4', 'Graphics.GL.Internal.Shared.GL_MAP2_INDEX', 'Graphics.GL.Internal.Shared.GL_MAP2_NORMAL', 'Graphics.GL.Internal.Shared.GL_MAP2_TEXTURE_COORD_1', 'Graphics.GL.Internal.Shared.GL_MAP2_TEXTURE_COORD_2', 'Graphics.GL.Internal.Shared.GL_MAP2_TEXTURE_COORD_3', 'Graphics.GL.Internal.Shared.GL_MAP2_TEXTURE_COORD_4', 'Graphics.GL.Internal.Shared.GL_MAP2_VERTEX_3', 'Graphics.GL.Internal.Shared.GL_MAP2_VERTEX_4', 'Graphics.GL.Ext.EXT.Histogram.GL_MINMAX_EXT', 'Graphics.GL.Ext.SGIS.Multisample.GL_MULTISAMPLE_SGIS', 'Graphics.GL.Internal.Shared.GL_NORMALIZE', 'Graphics.GL.Internal.Shared.GL_NORMAL_ARRAY', 'Graphics.GL.Ext.SGIS.PixelTexture.GL_PIXEL_TEXTURE_SGIS', 'Graphics.GL.Ext.SGIX.PixelTexture.GL_PIXEL_TEX_GEN_SGIX', 'Graphics.GL.Internal.Shared.GL_POINT_SMOOTH', 'Graphics.GL.Internal.Shared.GL_POLYGON_OFFSET_FILL', 'Graphics.GL.Internal.Shared.GL_POLYGON_OFFSET_LINE', 'Graphics.GL.Internal.Shared.GL_POLYGON_OFFSET_POINT', 'Graphics.GL.Internal.Shared.GL_POLYGON_SMOOTH', 'Graphics.GL.Internal.Shared.GL_POLYGON_STIPPLE', 'Graphics.GL.Ext.SGI.ColorTable.GL_POST_COLOR_MATRIX_COLOR_TABLE_SGI', 'Graphics.GL.Ext.SGI.ColorTable.GL_POST_CONVOLUTION_COLOR_TABLE_SGI', 'Graphics.GL.Ext.SGIX.ReferencePlane.GL_REFERENCE_PLANE_SGIX', 'Graphics.GL.Ext.EXT.RescaleNormal.GL_RESCALE_NORMAL_EXT', 'Graphics.GL.Ext.SGIS.Multisample.GL_SAMPLE_ALPHA_TO_MASK_SGIS', 'Graphics.GL.Ext.SGIS.Multisample.GL_SAMPLE_ALPHA_TO_ONE_SGIS', 'Graphics.GL.Ext.SGIS.Multisample.GL_SAMPLE_MASK_SGIS', 'Graphics.GL.Internal.Shared.GL_SCISSOR_TEST', 'Graphics.GL.Ext.EXT.Convolution.GL_SEPARABLE_2D_EXT', 'Graphics.GL.Ext.EXT.SharedTexturePalette.GL_SHARED_TEXTURE_PALETTE_EXT', 'Graphics.GL.Ext.SGIX.Sprite.GL_SPRITE_SGIX', 'Graphics.GL.Internal.Shared.GL_STENCIL_TEST', 'Graphics.GL.Internal.Shared.GL_TEXTURE_1D', 'Graphics.GL.Internal.Shared.GL_TEXTURE_2D', 'Graphics.GL.Ext.EXT.Texture3D.GL_TEXTURE_3D_EXT', 'Graphics.GL.Ext.SGIS.Texture4D.GL_TEXTURE_4D_SGIS', 'Graphics.GL.Ext.SGI.TextureColorTable.GL_TEXTURE_COLOR_TABLE_SGI', 'Graphics.GL.Internal.Shared.GL_TEXTURE_COORD_ARRAY', 'Graphics.GL.Internal.Shared.GL_TEXTURE_GEN_Q', 'Graphics.GL.Internal.Shared.GL_TEXTURE_GEN_R', 'Graphics.GL.Internal.Shared.GL_TEXTURE_GEN_S', 'Graphics.GL.Internal.Shared.GL_TEXTURE_GEN_T', 'Graphics.GL.Internal.Shared.GL_VERTEX_ARRAY'.
glDisableClientState :: MonadIO m => GLenum -> m ()
glDisableClientState = ffienumIOV glDisableClientStateFunPtr
glDisableClientStateFunPtr :: FunPtr (GLenum -> IO ())
glDisableClientStateFunPtr = unsafePerformIO (getProcAddress "glDisableClientState")
{-# NOINLINE glDisableClientStateFunPtr #-}
-- | Usage: @'glDrawPixels' width height format type pixels@
--
-- The parameter @format@ is a @PixelFormat@, one of: 'Graphics.GL.Ext.EXT.Abgr.GL_ABGR_EXT', 'Graphics.GL.Internal.Shared.GL_ALPHA', 'Graphics.GL.Internal.Shared.GL_BLUE', 'Graphics.GL.Ext.EXT.Cmyka.GL_CMYKA_EXT', 'Graphics.GL.Ext.EXT.Cmyka.GL_CMYK_EXT', 'Graphics.GL.Internal.Shared.GL_COLOR_INDEX', 'Graphics.GL.Internal.Shared.GL_DEPTH_COMPONENT', 'Graphics.GL.Internal.Shared.GL_GREEN', 'Graphics.GL.Internal.Shared.GL_LUMINANCE', 'Graphics.GL.Internal.Shared.GL_LUMINANCE_ALPHA', 'Graphics.GL.Internal.Shared.GL_RED', 'Graphics.GL.Ext.EXT.TextureRg.GL_RED_EXT', 'Graphics.GL.Internal.Shared.GL_RGB', 'Graphics.GL.Internal.Shared.GL_RGBA', 'Graphics.GL.Internal.Shared.GL_STENCIL_INDEX', 'Graphics.GL.Internal.Shared.GL_UNSIGNED_INT', 'Graphics.GL.Internal.Shared.GL_UNSIGNED_SHORT', 'Graphics.GL.Ext.SGIX.Ycrcb.GL_YCRCB_422_SGIX', 'Graphics.GL.Ext.SGIX.Ycrcb.GL_YCRCB_444_SGIX'.
--
-- The parameter @type@ is a @PixelType@, one of: 'Graphics.GL.Internal.Shared.GL_BITMAP', 'Graphics.GL.Internal.Shared.GL_BYTE', 'Graphics.GL.Internal.Shared.GL_FLOAT', 'Graphics.GL.Internal.Shared.GL_INT', 'Graphics.GL.Internal.Shared.GL_SHORT', 'Graphics.GL.Internal.Shared.GL_UNSIGNED_BYTE', 'Graphics.GL.Internal.Shared.GL_UNSIGNED_BYTE_3_3_2', 'Graphics.GL.Ext.EXT.PackedPixels.GL_UNSIGNED_BYTE_3_3_2_EXT', 'Graphics.GL.Internal.Shared.GL_UNSIGNED_INT', 'Graphics.GL.Internal.Shared.GL_UNSIGNED_INT_10_10_10_2', 'Graphics.GL.Ext.EXT.PackedPixels.GL_UNSIGNED_INT_10_10_10_2_EXT', 'Graphics.GL.Internal.Shared.GL_UNSIGNED_INT_8_8_8_8', 'Graphics.GL.Ext.EXT.PackedPixels.GL_UNSIGNED_INT_8_8_8_8_EXT', 'Graphics.GL.Internal.Shared.GL_UNSIGNED_SHORT', 'Graphics.GL.Internal.Shared.GL_UNSIGNED_SHORT_4_4_4_4', 'Graphics.GL.Ext.EXT.PackedPixels.GL_UNSIGNED_SHORT_4_4_4_4_EXT', 'Graphics.GL.Internal.Shared.GL_UNSIGNED_SHORT_5_5_5_1', 'Graphics.GL.Ext.EXT.PackedPixels.GL_UNSIGNED_SHORT_5_5_5_1_EXT'.
--
-- The length of @pixels@ should be @COMPSIZE(format,type,width,height)@.
glDrawPixels :: MonadIO m => GLsizei -> GLsizei -> GLenum -> GLenum -> Ptr () -> m ()
glDrawPixels = ffisizeisizeienumenumPtrVIOV glDrawPixelsFunPtr
glDrawPixelsFunPtr :: FunPtr (GLsizei -> GLsizei -> GLenum -> GLenum -> Ptr () -> IO ())
glDrawPixelsFunPtr = unsafePerformIO (getProcAddress "glDrawPixels")
{-# NOINLINE glDrawPixelsFunPtr #-}
-- | Usage: @'glEdgeFlag' flag@
--
-- The parameter @flag@ is a @Boolean@, one of: 'Graphics.GL.Internal.Shared.GL_FALSE', 'Graphics.GL.Internal.Shared.GL_TRUE'.
--
-- The vector equivalent of this command is 'Graphics.GL.Internal.Shared.glEdgeFlagv'.
glEdgeFlag :: MonadIO m => GLboolean -> m ()
glEdgeFlag = ffibooleanIOV glEdgeFlagFunPtr
glEdgeFlagFunPtr :: FunPtr (GLboolean -> IO ())
glEdgeFlagFunPtr = unsafePerformIO (getProcAddress "glEdgeFlag")
{-# NOINLINE glEdgeFlagFunPtr #-}
-- | Usage: @'glEdgeFlagPointer' stride pointer@
--
-- The length of @pointer@ should be @COMPSIZE(stride)@.
glEdgeFlagPointer :: MonadIO m => GLsizei -> Ptr () -> m ()
glEdgeFlagPointer = ffisizeiPtrVIOV glEdgeFlagPointerFunPtr
glEdgeFlagPointerFunPtr :: FunPtr (GLsizei -> Ptr () -> IO ())
glEdgeFlagPointerFunPtr = unsafePerformIO (getProcAddress "glEdgeFlagPointer")
{-# NOINLINE glEdgeFlagPointerFunPtr #-}
-- | Usage: @'glEdgeFlagv' flag@
--
-- The parameter @flag@ is a @Boolean@, one of: 'Graphics.GL.Internal.Shared.GL_FALSE', 'Graphics.GL.Internal.Shared.GL_TRUE'.
--
-- The length of @flag@ should be @1@.
glEdgeFlagv :: MonadIO m => Ptr GLboolean -> m ()
glEdgeFlagv = ffiPtrbooleanIOV glEdgeFlagvFunPtr
glEdgeFlagvFunPtr :: FunPtr (Ptr GLboolean -> IO ())
glEdgeFlagvFunPtr = unsafePerformIO (getProcAddress "glEdgeFlagv")
{-# NOINLINE glEdgeFlagvFunPtr #-}
-- | Usage: @'glEnableClientState' array@
--
-- The parameter @array@ is a @EnableCap@, one of: 'Graphics.GL.Internal.Shared.GL_ALPHA_TEST', 'Graphics.GL.Ext.SGIX.AsyncPixel.GL_ASYNC_DRAW_PIXELS_SGIX', 'Graphics.GL.Ext.SGIX.AsyncHistogram.GL_ASYNC_HISTOGRAM_SGIX', 'Graphics.GL.Ext.SGIX.AsyncPixel.GL_ASYNC_READ_PIXELS_SGIX', 'Graphics.GL.Ext.SGIX.AsyncPixel.GL_ASYNC_TEX_IMAGE_SGIX', 'Graphics.GL.Internal.Shared.GL_AUTO_NORMAL', 'Graphics.GL.Internal.Shared.GL_BLEND', 'Graphics.GL.Ext.SGIX.CalligraphicFragment.GL_CALLIGRAPHIC_FRAGMENT_SGIX', 'Graphics.GL.Internal.Shared.GL_CLIP_PLANE0', 'Graphics.GL.Internal.Shared.GL_CLIP_PLANE1', 'Graphics.GL.Internal.Shared.GL_CLIP_PLANE2', 'Graphics.GL.Internal.Shared.GL_CLIP_PLANE3', 'Graphics.GL.Internal.Shared.GL_CLIP_PLANE4', 'Graphics.GL.Internal.Shared.GL_CLIP_PLANE5', 'Graphics.GL.Internal.Shared.GL_COLOR_ARRAY', 'Graphics.GL.Internal.Shared.GL_COLOR_LOGIC_OP', 'Graphics.GL.Internal.Shared.GL_COLOR_MATERIAL', 'Graphics.GL.Ext.SGI.ColorTable.GL_COLOR_TABLE_SGI', 'Graphics.GL.Ext.EXT.Convolution.GL_CONVOLUTION_1D_EXT', 'Graphics.GL.Ext.EXT.Convolution.GL_CONVOLUTION_2D_EXT', 'Graphics.GL.Internal.Shared.GL_CULL_FACE', 'Graphics.GL.Internal.Shared.GL_DEPTH_TEST', 'Graphics.GL.Internal.Shared.GL_DITHER', 'Graphics.GL.Internal.Shared.GL_EDGE_FLAG_ARRAY', 'Graphics.GL.Internal.Shared.GL_FOG', 'Graphics.GL.Ext.SGIX.FogOffset.GL_FOG_OFFSET_SGIX', 'Graphics.GL.Ext.SGIX.FragmentLighting.GL_FRAGMENT_COLOR_MATERIAL_SGIX', 'Graphics.GL.Ext.SGIX.FragmentLighting.GL_FRAGMENT_LIGHT0_SGIX', 'Graphics.GL.Ext.SGIX.FragmentLighting.GL_FRAGMENT_LIGHT1_SGIX', 'Graphics.GL.Ext.SGIX.FragmentLighting.GL_FRAGMENT_LIGHT2_SGIX', 'Graphics.GL.Ext.SGIX.FragmentLighting.GL_FRAGMENT_LIGHT3_SGIX', 'Graphics.GL.Ext.SGIX.FragmentLighting.GL_FRAGMENT_LIGHT4_SGIX', 'Graphics.GL.Ext.SGIX.FragmentLighting.GL_FRAGMENT_LIGHT5_SGIX', 'Graphics.GL.Ext.SGIX.FragmentLighting.GL_FRAGMENT_LIGHT6_SGIX', 'Graphics.GL.Ext.SGIX.FragmentLighting.GL_FRAGMENT_LIGHT7_SGIX', 'Graphics.GL.Ext.SGIX.FragmentLighting.GL_FRAGMENT_LIGHTING_SGIX', 'Graphics.GL.Ext.SGIX.Framezoom.GL_FRAMEZOOM_SGIX', 'Graphics.GL.Ext.EXT.Histogram.GL_HISTOGRAM_EXT', 'Graphics.GL.Internal.Shared.GL_INDEX_ARRAY', 'Graphics.GL.Internal.Shared.GL_INDEX_LOGIC_OP', 'Graphics.GL.Ext.SGIX.Interlace.GL_INTERLACE_SGIX', 'Graphics.GL.Ext.SGIX.IrInstrument1.GL_IR_INSTRUMENT1_SGIX', 'Graphics.GL.Internal.Shared.GL_LIGHT0', 'Graphics.GL.Internal.Shared.GL_LIGHT1', 'Graphics.GL.Internal.Shared.GL_LIGHT2', 'Graphics.GL.Internal.Shared.GL_LIGHT3', 'Graphics.GL.Internal.Shared.GL_LIGHT4', 'Graphics.GL.Internal.Shared.GL_LIGHT5', 'Graphics.GL.Internal.Shared.GL_LIGHT6', 'Graphics.GL.Internal.Shared.GL_LIGHT7', 'Graphics.GL.Internal.Shared.GL_LIGHTING', 'Graphics.GL.Internal.Shared.GL_LINE_SMOOTH', 'Graphics.GL.Internal.Shared.GL_LINE_STIPPLE', 'Graphics.GL.Internal.Shared.GL_MAP1_COLOR_4', 'Graphics.GL.Internal.Shared.GL_MAP1_INDEX', 'Graphics.GL.Internal.Shared.GL_MAP1_NORMAL', 'Graphics.GL.Internal.Shared.GL_MAP1_TEXTURE_COORD_1', 'Graphics.GL.Internal.Shared.GL_MAP1_TEXTURE_COORD_2', 'Graphics.GL.Internal.Shared.GL_MAP1_TEXTURE_COORD_3', 'Graphics.GL.Internal.Shared.GL_MAP1_TEXTURE_COORD_4', 'Graphics.GL.Internal.Shared.GL_MAP1_VERTEX_3', 'Graphics.GL.Internal.Shared.GL_MAP1_VERTEX_4', 'Graphics.GL.Internal.Shared.GL_MAP2_COLOR_4', 'Graphics.GL.Internal.Shared.GL_MAP2_INDEX', 'Graphics.GL.Internal.Shared.GL_MAP2_NORMAL', 'Graphics.GL.Internal.Shared.GL_MAP2_TEXTURE_COORD_1', 'Graphics.GL.Internal.Shared.GL_MAP2_TEXTURE_COORD_2', 'Graphics.GL.Internal.Shared.GL_MAP2_TEXTURE_COORD_3', 'Graphics.GL.Internal.Shared.GL_MAP2_TEXTURE_COORD_4', 'Graphics.GL.Internal.Shared.GL_MAP2_VERTEX_3', 'Graphics.GL.Internal.Shared.GL_MAP2_VERTEX_4', 'Graphics.GL.Ext.EXT.Histogram.GL_MINMAX_EXT', 'Graphics.GL.Ext.SGIS.Multisample.GL_MULTISAMPLE_SGIS', 'Graphics.GL.Internal.Shared.GL_NORMALIZE', 'Graphics.GL.Internal.Shared.GL_NORMAL_ARRAY', 'Graphics.GL.Ext.SGIS.PixelTexture.GL_PIXEL_TEXTURE_SGIS', 'Graphics.GL.Ext.SGIX.PixelTexture.GL_PIXEL_TEX_GEN_SGIX', 'Graphics.GL.Internal.Shared.GL_POINT_SMOOTH', 'Graphics.GL.Internal.Shared.GL_POLYGON_OFFSET_FILL', 'Graphics.GL.Internal.Shared.GL_POLYGON_OFFSET_LINE', 'Graphics.GL.Internal.Shared.GL_POLYGON_OFFSET_POINT', 'Graphics.GL.Internal.Shared.GL_POLYGON_SMOOTH', 'Graphics.GL.Internal.Shared.GL_POLYGON_STIPPLE', 'Graphics.GL.Ext.SGI.ColorTable.GL_POST_COLOR_MATRIX_COLOR_TABLE_SGI', 'Graphics.GL.Ext.SGI.ColorTable.GL_POST_CONVOLUTION_COLOR_TABLE_SGI', 'Graphics.GL.Ext.SGIX.ReferencePlane.GL_REFERENCE_PLANE_SGIX', 'Graphics.GL.Ext.EXT.RescaleNormal.GL_RESCALE_NORMAL_EXT', 'Graphics.GL.Ext.SGIS.Multisample.GL_SAMPLE_ALPHA_TO_MASK_SGIS', 'Graphics.GL.Ext.SGIS.Multisample.GL_SAMPLE_ALPHA_TO_ONE_SGIS', 'Graphics.GL.Ext.SGIS.Multisample.GL_SAMPLE_MASK_SGIS', 'Graphics.GL.Internal.Shared.GL_SCISSOR_TEST', 'Graphics.GL.Ext.EXT.Convolution.GL_SEPARABLE_2D_EXT', 'Graphics.GL.Ext.EXT.SharedTexturePalette.GL_SHARED_TEXTURE_PALETTE_EXT', 'Graphics.GL.Ext.SGIX.Sprite.GL_SPRITE_SGIX', 'Graphics.GL.Internal.Shared.GL_STENCIL_TEST', 'Graphics.GL.Internal.Shared.GL_TEXTURE_1D', 'Graphics.GL.Internal.Shared.GL_TEXTURE_2D', 'Graphics.GL.Ext.EXT.Texture3D.GL_TEXTURE_3D_EXT', 'Graphics.GL.Ext.SGIS.Texture4D.GL_TEXTURE_4D_SGIS', 'Graphics.GL.Ext.SGI.TextureColorTable.GL_TEXTURE_COLOR_TABLE_SGI', 'Graphics.GL.Internal.Shared.GL_TEXTURE_COORD_ARRAY', 'Graphics.GL.Internal.Shared.GL_TEXTURE_GEN_Q', 'Graphics.GL.Internal.Shared.GL_TEXTURE_GEN_R', 'Graphics.GL.Internal.Shared.GL_TEXTURE_GEN_S', 'Graphics.GL.Internal.Shared.GL_TEXTURE_GEN_T', 'Graphics.GL.Internal.Shared.GL_VERTEX_ARRAY'.
glEnableClientState :: MonadIO m => GLenum -> m ()
glEnableClientState = ffienumIOV glEnableClientStateFunPtr
glEnableClientStateFunPtr :: FunPtr (GLenum -> IO ())
glEnableClientStateFunPtr = unsafePerformIO (getProcAddress "glEnableClientState")
{-# NOINLINE glEnableClientStateFunPtr #-}
-- | Usage: @'glEnd'@
glEnd :: MonadIO m => m ()
glEnd = ffiIOV glEndFunPtr
glEndFunPtr :: FunPtr (IO ())
glEndFunPtr = unsafePerformIO (getProcAddress "glEnd")
{-# NOINLINE glEndFunPtr #-}
-- | Usage: @'glEndList'@
glEndList :: MonadIO m => m ()
glEndList = ffiIOV glEndListFunPtr
glEndListFunPtr :: FunPtr (IO ())
glEndListFunPtr = unsafePerformIO (getProcAddress "glEndList")
{-# NOINLINE glEndListFunPtr #-}
-- | Usage: @'glEvalCoord1d' u@
--
-- The parameter @u@ is a @CoordD@.
--
-- The vector equivalent of this command is 'Graphics.GL.Internal.Shared.glEvalCoord1dv'.
glEvalCoord1d :: MonadIO m => GLdouble -> m ()
glEvalCoord1d = ffidoubleIOV glEvalCoord1dFunPtr
glEvalCoord1dFunPtr :: FunPtr (GLdouble -> IO ())
glEvalCoord1dFunPtr = unsafePerformIO (getProcAddress "glEvalCoord1d")
{-# NOINLINE glEvalCoord1dFunPtr #-}
-- | Usage: @'glEvalCoord1dv' u@
--
-- The parameter @u@ is a @CoordD@.
--
-- The length of @u@ should be @1@.
glEvalCoord1dv :: MonadIO m => Ptr GLdouble -> m ()
glEvalCoord1dv = ffiPtrdoubleIOV glEvalCoord1dvFunPtr
glEvalCoord1dvFunPtr :: FunPtr (Ptr GLdouble -> IO ())
glEvalCoord1dvFunPtr = unsafePerformIO (getProcAddress "glEvalCoord1dv")
{-# NOINLINE glEvalCoord1dvFunPtr #-}
-- | Usage: @'glEvalCoord1f' u@
--
-- The parameter @u@ is a @CoordF@.
--
-- The vector equivalent of this command is 'Graphics.GL.Internal.Shared.glEvalCoord1fv'.
glEvalCoord1f :: MonadIO m => GLfloat -> m ()
glEvalCoord1f = ffifloatIOV glEvalCoord1fFunPtr
glEvalCoord1fFunPtr :: FunPtr (GLfloat -> IO ())
glEvalCoord1fFunPtr = unsafePerformIO (getProcAddress "glEvalCoord1f")
{-# NOINLINE glEvalCoord1fFunPtr #-}
-- | Usage: @'glEvalCoord1fv' u@
--
-- The parameter @u@ is a @CoordF@.
--
-- The length of @u@ should be @1@.
glEvalCoord1fv :: MonadIO m => Ptr GLfloat -> m ()
glEvalCoord1fv = ffiPtrfloatIOV glEvalCoord1fvFunPtr
glEvalCoord1fvFunPtr :: FunPtr (Ptr GLfloat -> IO ())
glEvalCoord1fvFunPtr = unsafePerformIO (getProcAddress "glEvalCoord1fv")
{-# NOINLINE glEvalCoord1fvFunPtr #-}
-- | Usage: @'glEvalCoord2d' u v@
--
-- The parameter @u@ is a @CoordD@.
--
-- The parameter @v@ is a @CoordD@.
--
-- The vector equivalent of this command is 'Graphics.GL.Internal.Shared.glEvalCoord2dv'.
glEvalCoord2d :: MonadIO m => GLdouble -> GLdouble -> m ()
glEvalCoord2d = ffidoubledoubleIOV glEvalCoord2dFunPtr
glEvalCoord2dFunPtr :: FunPtr (GLdouble -> GLdouble -> IO ())
glEvalCoord2dFunPtr = unsafePerformIO (getProcAddress "glEvalCoord2d")
{-# NOINLINE glEvalCoord2dFunPtr #-}
-- | Usage: @'glEvalCoord2dv' u@
--
-- The parameter @u@ is a @CoordD@.
--
-- The length of @u@ should be @2@.
glEvalCoord2dv :: MonadIO m => Ptr GLdouble -> m ()
glEvalCoord2dv = ffiPtrdoubleIOV glEvalCoord2dvFunPtr
glEvalCoord2dvFunPtr :: FunPtr (Ptr GLdouble -> IO ())
glEvalCoord2dvFunPtr = unsafePerformIO (getProcAddress "glEvalCoord2dv")
{-# NOINLINE glEvalCoord2dvFunPtr #-}
-- | Usage: @'glEvalCoord2f' u v@
--
-- The parameter @u@ is a @CoordF@.
--
-- The parameter @v@ is a @CoordF@.
--
-- The vector equivalent of this command is 'Graphics.GL.Internal.Shared.glEvalCoord2fv'.
glEvalCoord2f :: MonadIO m => GLfloat -> GLfloat -> m ()
glEvalCoord2f = ffifloatfloatIOV glEvalCoord2fFunPtr
glEvalCoord2fFunPtr :: FunPtr (GLfloat -> GLfloat -> IO ())
glEvalCoord2fFunPtr = unsafePerformIO (getProcAddress "glEvalCoord2f")
{-# NOINLINE glEvalCoord2fFunPtr #-}
-- | Usage: @'glEvalCoord2fv' u@
--
-- The parameter @u@ is a @CoordF@.
--
-- The length of @u@ should be @2@.
glEvalCoord2fv :: MonadIO m => Ptr GLfloat -> m ()
glEvalCoord2fv = ffiPtrfloatIOV glEvalCoord2fvFunPtr
glEvalCoord2fvFunPtr :: FunPtr (Ptr GLfloat -> IO ())
glEvalCoord2fvFunPtr = unsafePerformIO (getProcAddress "glEvalCoord2fv")
{-# NOINLINE glEvalCoord2fvFunPtr #-}
-- | Usage: @'glEvalMesh1' mode i1 i2@
--
-- The parameter @mode@ is a @MeshMode1@, one of: 'Graphics.GL.Internal.Shared.GL_LINE', 'Graphics.GL.Internal.Shared.GL_POINT'.
--
-- The parameter @i1@ is a @CheckedInt32@.
--
-- The parameter @i2@ is a @CheckedInt32@.
glEvalMesh1 :: MonadIO m => GLenum -> GLint -> GLint -> m ()
glEvalMesh1 = ffienumintintIOV glEvalMesh1FunPtr
glEvalMesh1FunPtr :: FunPtr (GLenum -> GLint -> GLint -> IO ())
glEvalMesh1FunPtr = unsafePerformIO (getProcAddress "glEvalMesh1")
{-# NOINLINE glEvalMesh1FunPtr #-}
-- | Usage: @'glEvalMesh2' mode i1 i2 j1 j2@
--
-- The parameter @mode@ is a @MeshMode2@, one of: 'Graphics.GL.Internal.Shared.GL_FILL', 'Graphics.GL.Internal.Shared.GL_LINE', 'Graphics.GL.Internal.Shared.GL_POINT'.
--
-- The parameter @i1@ is a @CheckedInt32@.
--
-- The parameter @i2@ is a @CheckedInt32@.
--
-- The parameter @j1@ is a @CheckedInt32@.
--
-- The parameter @j2@ is a @CheckedInt32@.
glEvalMesh2 :: MonadIO m => GLenum -> GLint -> GLint -> GLint -> GLint -> m ()
glEvalMesh2 = ffienumintintintintIOV glEvalMesh2FunPtr
glEvalMesh2FunPtr :: FunPtr (GLenum -> GLint -> GLint -> GLint -> GLint -> IO ())
glEvalMesh2FunPtr = unsafePerformIO (getProcAddress "glEvalMesh2")
{-# NOINLINE glEvalMesh2FunPtr #-}
-- | Usage: @'glEvalPoint1' i@
glEvalPoint1 :: MonadIO m => GLint -> m ()
glEvalPoint1 = ffiintIOV glEvalPoint1FunPtr
glEvalPoint1FunPtr :: FunPtr (GLint -> IO ())
glEvalPoint1FunPtr = unsafePerformIO (getProcAddress "glEvalPoint1")
{-# NOINLINE glEvalPoint1FunPtr #-}
-- | Usage: @'glEvalPoint2' i j@
--
-- The parameter @i@ is a @CheckedInt32@.
--
-- The parameter @j@ is a @CheckedInt32@.
glEvalPoint2 :: MonadIO m => GLint -> GLint -> m ()
glEvalPoint2 = ffiintintIOV glEvalPoint2FunPtr
glEvalPoint2FunPtr :: FunPtr (GLint -> GLint -> IO ())
glEvalPoint2FunPtr = unsafePerformIO (getProcAddress "glEvalPoint2")
{-# NOINLINE glEvalPoint2FunPtr #-}
-- | Usage: @'glFeedbackBuffer' size type buffer@
--
-- The parameter @type@ is a @FeedbackType@, one of: 'Graphics.GL.Internal.Shared.GL_2D', 'Graphics.GL.Internal.Shared.GL_3D', 'Graphics.GL.Internal.Shared.GL_3D_COLOR', 'Graphics.GL.Internal.Shared.GL_3D_COLOR_TEXTURE', 'Graphics.GL.Internal.Shared.GL_4D_COLOR_TEXTURE'.
--
-- The parameter @buffer@ is a @FeedbackElement@.
--
-- The length of @buffer@ should be @size@.
glFeedbackBuffer :: MonadIO m => GLsizei -> GLenum -> Ptr GLfloat -> m ()
glFeedbackBuffer = ffisizeienumPtrfloatIOV glFeedbackBufferFunPtr
glFeedbackBufferFunPtr :: FunPtr (GLsizei -> GLenum -> Ptr GLfloat -> IO ())
glFeedbackBufferFunPtr = unsafePerformIO (getProcAddress "glFeedbackBuffer")
{-# NOINLINE glFeedbackBufferFunPtr #-}
-- | Usage: @'glFogCoordPointer' type stride pointer@
--
-- The parameter @type@ is a @FogPointerTypeEXT@, one of: 'Graphics.GL.Internal.Shared.GL_FLOAT', 'Graphics.GL.Internal.Shared.GL_DOUBLE'.
--
-- The length of @pointer@ should be @COMPSIZE(type,stride)@.
glFogCoordPointer :: MonadIO m => GLenum -> GLsizei -> Ptr () -> m ()
glFogCoordPointer = ffienumsizeiPtrVIOV glFogCoordPointerFunPtr
glFogCoordPointerFunPtr :: FunPtr (GLenum -> GLsizei -> Ptr () -> IO ())
glFogCoordPointerFunPtr = unsafePerformIO (getProcAddress "glFogCoordPointer")
{-# NOINLINE glFogCoordPointerFunPtr #-}
-- | Usage: @'glFogCoordd' coord@
--
-- The parameter @coord@ is a @CoordD@.
--
-- The vector equivalent of this command is 'Graphics.GL.Internal.Shared.glFogCoorddv'.
glFogCoordd :: MonadIO m => GLdouble -> m ()
glFogCoordd = ffidoubleIOV glFogCoorddFunPtr
glFogCoorddFunPtr :: FunPtr (GLdouble -> IO ())
glFogCoorddFunPtr = unsafePerformIO (getProcAddress "glFogCoordd")
{-# NOINLINE glFogCoorddFunPtr #-}
-- | Usage: @'glFogCoorddv' coord@
--
-- The parameter @coord@ is a @CoordD@.
--
-- The length of @coord@ should be @1@.
glFogCoorddv :: MonadIO m => Ptr GLdouble -> m ()
glFogCoorddv = ffiPtrdoubleIOV glFogCoorddvFunPtr
glFogCoorddvFunPtr :: FunPtr (Ptr GLdouble -> IO ())
glFogCoorddvFunPtr = unsafePerformIO (getProcAddress "glFogCoorddv")
{-# NOINLINE glFogCoorddvFunPtr #-}
-- | Usage: @'glFogCoordf' coord@
--
-- The parameter @coord@ is a @CoordF@.
--
-- The vector equivalent of this command is 'Graphics.GL.Internal.Shared.glFogCoordfv'.
glFogCoordf :: MonadIO m => GLfloat -> m ()
glFogCoordf = ffifloatIOV glFogCoordfFunPtr
glFogCoordfFunPtr :: FunPtr (GLfloat -> IO ())
glFogCoordfFunPtr = unsafePerformIO (getProcAddress "glFogCoordf")
{-# NOINLINE glFogCoordfFunPtr #-}
-- | Usage: @'glFogCoordfv' coord@
--
-- The parameter @coord@ is a @CoordF@.
--
-- The length of @coord@ should be @1@.
glFogCoordfv :: MonadIO m => Ptr GLfloat -> m ()
glFogCoordfv = ffiPtrfloatIOV glFogCoordfvFunPtr
glFogCoordfvFunPtr :: FunPtr (Ptr GLfloat -> IO ())
glFogCoordfvFunPtr = unsafePerformIO (getProcAddress "glFogCoordfv")
{-# NOINLINE glFogCoordfvFunPtr #-}
-- | Usage: @'glFogf' pname param@
--
-- The parameter @pname@ is a @FogParameter@, one of: 'Graphics.GL.Internal.Shared.GL_FOG_COLOR', 'Graphics.GL.Internal.Shared.GL_FOG_DENSITY', 'Graphics.GL.Internal.Shared.GL_FOG_END', 'Graphics.GL.Internal.Shared.GL_FOG_INDEX', 'Graphics.GL.Internal.Shared.GL_FOG_MODE', 'Graphics.GL.Ext.SGIX.FogOffset.GL_FOG_OFFSET_VALUE_SGIX', 'Graphics.GL.Internal.Shared.GL_FOG_START'.
--
-- The parameter @param@ is a @CheckedFloat32@.
glFogf :: MonadIO m => GLenum -> GLfloat -> m ()
glFogf = ffienumfloatIOV glFogfFunPtr
glFogfFunPtr :: FunPtr (GLenum -> GLfloat -> IO ())
glFogfFunPtr = unsafePerformIO (getProcAddress "glFogf")
{-# NOINLINE glFogfFunPtr #-}
-- | Usage: @'glFogfv' pname params@
--
-- The parameter @pname@ is a @FogParameter@, one of: 'Graphics.GL.Internal.Shared.GL_FOG_COLOR', 'Graphics.GL.Internal.Shared.GL_FOG_DENSITY', 'Graphics.GL.Internal.Shared.GL_FOG_END', 'Graphics.GL.Internal.Shared.GL_FOG_INDEX', 'Graphics.GL.Internal.Shared.GL_FOG_MODE', 'Graphics.GL.Ext.SGIX.FogOffset.GL_FOG_OFFSET_VALUE_SGIX', 'Graphics.GL.Internal.Shared.GL_FOG_START'.
--
-- The parameter @params@ is a @CheckedFloat32@.
--
-- The length of @params@ should be @COMPSIZE(pname)@.
glFogfv :: MonadIO m => GLenum -> Ptr GLfloat -> m ()
glFogfv = ffienumPtrfloatIOV glFogfvFunPtr
glFogfvFunPtr :: FunPtr (GLenum -> Ptr GLfloat -> IO ())
glFogfvFunPtr = unsafePerformIO (getProcAddress "glFogfv")
{-# NOINLINE glFogfvFunPtr #-}
-- | Usage: @'glFogi' pname param@
--
-- The parameter @pname@ is a @FogParameter@, one of: 'Graphics.GL.Internal.Shared.GL_FOG_COLOR', 'Graphics.GL.Internal.Shared.GL_FOG_DENSITY', 'Graphics.GL.Internal.Shared.GL_FOG_END', 'Graphics.GL.Internal.Shared.GL_FOG_INDEX', 'Graphics.GL.Internal.Shared.GL_FOG_MODE', 'Graphics.GL.Ext.SGIX.FogOffset.GL_FOG_OFFSET_VALUE_SGIX', 'Graphics.GL.Internal.Shared.GL_FOG_START'.
--
-- The parameter @param@ is a @CheckedInt32@.
glFogi :: MonadIO m => GLenum -> GLint -> m ()
glFogi = ffienumintIOV glFogiFunPtr
glFogiFunPtr :: FunPtr (GLenum -> GLint -> IO ())
glFogiFunPtr = unsafePerformIO (getProcAddress "glFogi")
{-# NOINLINE glFogiFunPtr #-}
-- | Usage: @'glFogiv' pname params@
--
-- The parameter @pname@ is a @FogParameter@, one of: 'Graphics.GL.Internal.Shared.GL_FOG_COLOR', 'Graphics.GL.Internal.Shared.GL_FOG_DENSITY', 'Graphics.GL.Internal.Shared.GL_FOG_END', 'Graphics.GL.Internal.Shared.GL_FOG_INDEX', 'Graphics.GL.Internal.Shared.GL_FOG_MODE', 'Graphics.GL.Ext.SGIX.FogOffset.GL_FOG_OFFSET_VALUE_SGIX', 'Graphics.GL.Internal.Shared.GL_FOG_START'.
--
-- The parameter @params@ is a @CheckedInt32@.
--
-- The length of @params@ should be @COMPSIZE(pname)@.
glFogiv :: MonadIO m => GLenum -> Ptr GLint -> m ()
glFogiv = ffienumPtrintIOV glFogivFunPtr
glFogivFunPtr :: FunPtr (GLenum -> Ptr GLint -> IO ())
glFogivFunPtr = unsafePerformIO (getProcAddress "glFogiv")
{-# NOINLINE glFogivFunPtr #-}
-- | Usage: @'glFrustum' left right bottom top zNear zFar@
glFrustum :: MonadIO m => GLdouble -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> m ()
glFrustum = ffidoubledoubledoubledoubledoubledoubleIOV glFrustumFunPtr
glFrustumFunPtr :: FunPtr (GLdouble -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ())
glFrustumFunPtr = unsafePerformIO (getProcAddress "glFrustum")
{-# NOINLINE glFrustumFunPtr #-}
-- | Usage: @'glGenLists' range@
glGenLists :: MonadIO m => GLsizei -> m GLuint
glGenLists = ffisizeiIOuint glGenListsFunPtr
glGenListsFunPtr :: FunPtr (GLsizei -> IO GLuint)
glGenListsFunPtr = unsafePerformIO (getProcAddress "glGenLists")
{-# NOINLINE glGenListsFunPtr #-}
-- | Usage: @'glGetClipPlane' plane equation@
--
-- The parameter @plane@ is a @ClipPlaneName@, one of: 'Graphics.GL.Internal.Shared.GL_CLIP_DISTANCE0', 'Graphics.GL.Internal.Shared.GL_CLIP_DISTANCE1', 'Graphics.GL.Internal.Shared.GL_CLIP_DISTANCE2', 'Graphics.GL.Internal.Shared.GL_CLIP_DISTANCE3', 'Graphics.GL.Internal.Shared.GL_CLIP_DISTANCE4', 'Graphics.GL.Internal.Shared.GL_CLIP_DISTANCE5', 'Graphics.GL.Internal.Shared.GL_CLIP_DISTANCE6', 'Graphics.GL.Internal.Shared.GL_CLIP_DISTANCE7', 'Graphics.GL.Internal.Shared.GL_CLIP_PLANE0', 'Graphics.GL.Internal.Shared.GL_CLIP_PLANE1', 'Graphics.GL.Internal.Shared.GL_CLIP_PLANE2', 'Graphics.GL.Internal.Shared.GL_CLIP_PLANE3', 'Graphics.GL.Internal.Shared.GL_CLIP_PLANE4', 'Graphics.GL.Internal.Shared.GL_CLIP_PLANE5'.
--
-- The length of @equation@ should be @4@.
glGetClipPlane :: MonadIO m => GLenum -> Ptr GLdouble -> m ()
glGetClipPlane = ffienumPtrdoubleIOV glGetClipPlaneFunPtr
glGetClipPlaneFunPtr :: FunPtr (GLenum -> Ptr GLdouble -> IO ())
glGetClipPlaneFunPtr = unsafePerformIO (getProcAddress "glGetClipPlane")
{-# NOINLINE glGetClipPlaneFunPtr #-}
-- | Usage: @'glGetLightfv' light pname params@
--
-- The parameter @light@ is a @LightName@, one of: 'Graphics.GL.Ext.SGIX.FragmentLighting.GL_FRAGMENT_LIGHT0_SGIX', 'Graphics.GL.Ext.SGIX.FragmentLighting.GL_FRAGMENT_LIGHT1_SGIX', 'Graphics.GL.Ext.SGIX.FragmentLighting.GL_FRAGMENT_LIGHT2_SGIX', 'Graphics.GL.Ext.SGIX.FragmentLighting.GL_FRAGMENT_LIGHT3_SGIX', 'Graphics.GL.Ext.SGIX.FragmentLighting.GL_FRAGMENT_LIGHT4_SGIX', 'Graphics.GL.Ext.SGIX.FragmentLighting.GL_FRAGMENT_LIGHT5_SGIX', 'Graphics.GL.Ext.SGIX.FragmentLighting.GL_FRAGMENT_LIGHT6_SGIX', 'Graphics.GL.Ext.SGIX.FragmentLighting.GL_FRAGMENT_LIGHT7_SGIX', 'Graphics.GL.Internal.Shared.GL_LIGHT0', 'Graphics.GL.Internal.Shared.GL_LIGHT1', 'Graphics.GL.Internal.Shared.GL_LIGHT2', 'Graphics.GL.Internal.Shared.GL_LIGHT3', 'Graphics.GL.Internal.Shared.GL_LIGHT4', 'Graphics.GL.Internal.Shared.GL_LIGHT5', 'Graphics.GL.Internal.Shared.GL_LIGHT6', 'Graphics.GL.Internal.Shared.GL_LIGHT7'.
--
-- The parameter @pname@ is a @LightParameter@, one of: 'Graphics.GL.Internal.Shared.GL_AMBIENT', 'Graphics.GL.Internal.Shared.GL_CONSTANT_ATTENUATION', 'Graphics.GL.Internal.Shared.GL_DIFFUSE', 'Graphics.GL.Internal.Shared.GL_LINEAR_ATTENUATION', 'Graphics.GL.Internal.Shared.GL_POSITION', 'Graphics.GL.Internal.Shared.GL_QUADRATIC_ATTENUATION', 'Graphics.GL.Internal.Shared.GL_SPECULAR', 'Graphics.GL.Internal.Shared.GL_SPOT_CUTOFF', 'Graphics.GL.Internal.Shared.GL_SPOT_DIRECTION', 'Graphics.GL.Internal.Shared.GL_SPOT_EXPONENT'.
--
-- The length of @params@ should be @COMPSIZE(pname)@.
glGetLightfv :: MonadIO m => GLenum -> GLenum -> Ptr GLfloat -> m ()
glGetLightfv = ffienumenumPtrfloatIOV glGetLightfvFunPtr
glGetLightfvFunPtr :: FunPtr (GLenum -> GLenum -> Ptr GLfloat -> IO ())
glGetLightfvFunPtr = unsafePerformIO (getProcAddress "glGetLightfv")
{-# NOINLINE glGetLightfvFunPtr #-}
-- | Usage: @'glGetLightiv' light pname params@
--
-- The parameter @light@ is a @LightName@, one of: 'Graphics.GL.Ext.SGIX.FragmentLighting.GL_FRAGMENT_LIGHT0_SGIX', 'Graphics.GL.Ext.SGIX.FragmentLighting.GL_FRAGMENT_LIGHT1_SGIX', 'Graphics.GL.Ext.SGIX.FragmentLighting.GL_FRAGMENT_LIGHT2_SGIX', 'Graphics.GL.Ext.SGIX.FragmentLighting.GL_FRAGMENT_LIGHT3_SGIX', 'Graphics.GL.Ext.SGIX.FragmentLighting.GL_FRAGMENT_LIGHT4_SGIX', 'Graphics.GL.Ext.SGIX.FragmentLighting.GL_FRAGMENT_LIGHT5_SGIX', 'Graphics.GL.Ext.SGIX.FragmentLighting.GL_FRAGMENT_LIGHT6_SGIX', 'Graphics.GL.Ext.SGIX.FragmentLighting.GL_FRAGMENT_LIGHT7_SGIX', 'Graphics.GL.Internal.Shared.GL_LIGHT0', 'Graphics.GL.Internal.Shared.GL_LIGHT1', 'Graphics.GL.Internal.Shared.GL_LIGHT2', 'Graphics.GL.Internal.Shared.GL_LIGHT3', 'Graphics.GL.Internal.Shared.GL_LIGHT4', 'Graphics.GL.Internal.Shared.GL_LIGHT5', 'Graphics.GL.Internal.Shared.GL_LIGHT6', 'Graphics.GL.Internal.Shared.GL_LIGHT7'.
--
-- The parameter @pname@ is a @LightParameter@, one of: 'Graphics.GL.Internal.Shared.GL_AMBIENT', 'Graphics.GL.Internal.Shared.GL_CONSTANT_ATTENUATION', 'Graphics.GL.Internal.Shared.GL_DIFFUSE', 'Graphics.GL.Internal.Shared.GL_LINEAR_ATTENUATION', 'Graphics.GL.Internal.Shared.GL_POSITION', 'Graphics.GL.Internal.Shared.GL_QUADRATIC_ATTENUATION', 'Graphics.GL.Internal.Shared.GL_SPECULAR', 'Graphics.GL.Internal.Shared.GL_SPOT_CUTOFF', 'Graphics.GL.Internal.Shared.GL_SPOT_DIRECTION', 'Graphics.GL.Internal.Shared.GL_SPOT_EXPONENT'.
--
-- The length of @params@ should be @COMPSIZE(pname)@.
glGetLightiv :: MonadIO m => GLenum -> GLenum -> Ptr GLint -> m ()
glGetLightiv = ffienumenumPtrintIOV glGetLightivFunPtr
glGetLightivFunPtr :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
glGetLightivFunPtr = unsafePerformIO (getProcAddress "glGetLightiv")
{-# NOINLINE glGetLightivFunPtr #-}
-- | Usage: @'glGetMapdv' target query v@
--
-- The parameter @target@ is a @MapTarget@, one of: 'Graphics.GL.Ext.SGIX.PolynomialFfd.GL_GEOMETRY_DEFORMATION_SGIX', 'Graphics.GL.Internal.Shared.GL_MAP1_COLOR_4', 'Graphics.GL.Internal.Shared.GL_MAP1_INDEX', 'Graphics.GL.Internal.Shared.GL_MAP1_NORMAL', 'Graphics.GL.Internal.Shared.GL_MAP1_TEXTURE_COORD_1', 'Graphics.GL.Internal.Shared.GL_MAP1_TEXTURE_COORD_2', 'Graphics.GL.Internal.Shared.GL_MAP1_TEXTURE_COORD_3', 'Graphics.GL.Internal.Shared.GL_MAP1_TEXTURE_COORD_4', 'Graphics.GL.Internal.Shared.GL_MAP1_VERTEX_3', 'Graphics.GL.Internal.Shared.GL_MAP1_VERTEX_4', 'Graphics.GL.Internal.Shared.GL_MAP2_COLOR_4', 'Graphics.GL.Internal.Shared.GL_MAP2_INDEX', 'Graphics.GL.Internal.Shared.GL_MAP2_NORMAL', 'Graphics.GL.Internal.Shared.GL_MAP2_TEXTURE_COORD_1', 'Graphics.GL.Internal.Shared.GL_MAP2_TEXTURE_COORD_2', 'Graphics.GL.Internal.Shared.GL_MAP2_TEXTURE_COORD_3', 'Graphics.GL.Internal.Shared.GL_MAP2_TEXTURE_COORD_4', 'Graphics.GL.Internal.Shared.GL_MAP2_VERTEX_3', 'Graphics.GL.Internal.Shared.GL_MAP2_VERTEX_4', 'Graphics.GL.Ext.SGIX.PolynomialFfd.GL_TEXTURE_DEFORMATION_SGIX'.
--
-- The parameter @query@ is a @GetMapQuery@, one of: 'Graphics.GL.Internal.Shared.GL_COEFF', 'Graphics.GL.Internal.Shared.GL_DOMAIN', 'Graphics.GL.Internal.Shared.GL_ORDER'.
--
-- The length of @v@ should be @COMPSIZE(target,query)@.
glGetMapdv :: MonadIO m => GLenum -> GLenum -> Ptr GLdouble -> m ()
glGetMapdv = ffienumenumPtrdoubleIOV glGetMapdvFunPtr
glGetMapdvFunPtr :: FunPtr (GLenum -> GLenum -> Ptr GLdouble -> IO ())
glGetMapdvFunPtr = unsafePerformIO (getProcAddress "glGetMapdv")
{-# NOINLINE glGetMapdvFunPtr #-}
-- | Usage: @'glGetMapfv' target query v@
--
-- The parameter @target@ is a @MapTarget@, one of: 'Graphics.GL.Ext.SGIX.PolynomialFfd.GL_GEOMETRY_DEFORMATION_SGIX', 'Graphics.GL.Internal.Shared.GL_MAP1_COLOR_4', 'Graphics.GL.Internal.Shared.GL_MAP1_INDEX', 'Graphics.GL.Internal.Shared.GL_MAP1_NORMAL', 'Graphics.GL.Internal.Shared.GL_MAP1_TEXTURE_COORD_1', 'Graphics.GL.Internal.Shared.GL_MAP1_TEXTURE_COORD_2', 'Graphics.GL.Internal.Shared.GL_MAP1_TEXTURE_COORD_3', 'Graphics.GL.Internal.Shared.GL_MAP1_TEXTURE_COORD_4', 'Graphics.GL.Internal.Shared.GL_MAP1_VERTEX_3', 'Graphics.GL.Internal.Shared.GL_MAP1_VERTEX_4', 'Graphics.GL.Internal.Shared.GL_MAP2_COLOR_4', 'Graphics.GL.Internal.Shared.GL_MAP2_INDEX', 'Graphics.GL.Internal.Shared.GL_MAP2_NORMAL', 'Graphics.GL.Internal.Shared.GL_MAP2_TEXTURE_COORD_1', 'Graphics.GL.Internal.Shared.GL_MAP2_TEXTURE_COORD_2', 'Graphics.GL.Internal.Shared.GL_MAP2_TEXTURE_COORD_3', 'Graphics.GL.Internal.Shared.GL_MAP2_TEXTURE_COORD_4', 'Graphics.GL.Internal.Shared.GL_MAP2_VERTEX_3', 'Graphics.GL.Internal.Shared.GL_MAP2_VERTEX_4', 'Graphics.GL.Ext.SGIX.PolynomialFfd.GL_TEXTURE_DEFORMATION_SGIX'.
--
-- The parameter @query@ is a @GetMapQuery@, one of: 'Graphics.GL.Internal.Shared.GL_COEFF', 'Graphics.GL.Internal.Shared.GL_DOMAIN', 'Graphics.GL.Internal.Shared.GL_ORDER'.
--
-- The length of @v@ should be @COMPSIZE(target,query)@.
glGetMapfv :: MonadIO m => GLenum -> GLenum -> Ptr GLfloat -> m ()
glGetMapfv = ffienumenumPtrfloatIOV glGetMapfvFunPtr
glGetMapfvFunPtr :: FunPtr (GLenum -> GLenum -> Ptr GLfloat -> IO ())
glGetMapfvFunPtr = unsafePerformIO (getProcAddress "glGetMapfv")
{-# NOINLINE glGetMapfvFunPtr #-}
-- | Usage: @'glGetMapiv' target query v@
--
-- The parameter @target@ is a @MapTarget@, one of: 'Graphics.GL.Ext.SGIX.PolynomialFfd.GL_GEOMETRY_DEFORMATION_SGIX', 'Graphics.GL.Internal.Shared.GL_MAP1_COLOR_4', 'Graphics.GL.Internal.Shared.GL_MAP1_INDEX', 'Graphics.GL.Internal.Shared.GL_MAP1_NORMAL', 'Graphics.GL.Internal.Shared.GL_MAP1_TEXTURE_COORD_1', 'Graphics.GL.Internal.Shared.GL_MAP1_TEXTURE_COORD_2', 'Graphics.GL.Internal.Shared.GL_MAP1_TEXTURE_COORD_3', 'Graphics.GL.Internal.Shared.GL_MAP1_TEXTURE_COORD_4', 'Graphics.GL.Internal.Shared.GL_MAP1_VERTEX_3', 'Graphics.GL.Internal.Shared.GL_MAP1_VERTEX_4', 'Graphics.GL.Internal.Shared.GL_MAP2_COLOR_4', 'Graphics.GL.Internal.Shared.GL_MAP2_INDEX', 'Graphics.GL.Internal.Shared.GL_MAP2_NORMAL', 'Graphics.GL.Internal.Shared.GL_MAP2_TEXTURE_COORD_1', 'Graphics.GL.Internal.Shared.GL_MAP2_TEXTURE_COORD_2', 'Graphics.GL.Internal.Shared.GL_MAP2_TEXTURE_COORD_3', 'Graphics.GL.Internal.Shared.GL_MAP2_TEXTURE_COORD_4', 'Graphics.GL.Internal.Shared.GL_MAP2_VERTEX_3', 'Graphics.GL.Internal.Shared.GL_MAP2_VERTEX_4', 'Graphics.GL.Ext.SGIX.PolynomialFfd.GL_TEXTURE_DEFORMATION_SGIX'.
--
-- The parameter @query@ is a @GetMapQuery@, one of: 'Graphics.GL.Internal.Shared.GL_COEFF', 'Graphics.GL.Internal.Shared.GL_DOMAIN', 'Graphics.GL.Internal.Shared.GL_ORDER'.
--
-- The length of @v@ should be @COMPSIZE(target,query)@.
glGetMapiv :: MonadIO m => GLenum -> GLenum -> Ptr GLint -> m ()
glGetMapiv = ffienumenumPtrintIOV glGetMapivFunPtr
glGetMapivFunPtr :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
glGetMapivFunPtr = unsafePerformIO (getProcAddress "glGetMapiv")
{-# NOINLINE glGetMapivFunPtr #-}
-- | Usage: @'glGetMaterialfv' face pname params@
--
-- The parameter @face@ is a @MaterialFace@, one of: 'Graphics.GL.Internal.Shared.GL_BACK', 'Graphics.GL.Internal.Shared.GL_FRONT', 'Graphics.GL.Internal.Shared.GL_FRONT_AND_BACK'.
--
-- The parameter @pname@ is a @MaterialParameter@, one of: 'Graphics.GL.Internal.Shared.GL_AMBIENT', 'Graphics.GL.Internal.Shared.GL_AMBIENT_AND_DIFFUSE', 'Graphics.GL.Internal.Shared.GL_COLOR_INDEXES', 'Graphics.GL.Internal.Shared.GL_DIFFUSE', 'Graphics.GL.Internal.Shared.GL_EMISSION', 'Graphics.GL.Internal.Shared.GL_SHININESS', 'Graphics.GL.Internal.Shared.GL_SPECULAR'.
--
-- The length of @params@ should be @COMPSIZE(pname)@.
glGetMaterialfv :: MonadIO m => GLenum -> GLenum -> Ptr GLfloat -> m ()
glGetMaterialfv = ffienumenumPtrfloatIOV glGetMaterialfvFunPtr
glGetMaterialfvFunPtr :: FunPtr (GLenum -> GLenum -> Ptr GLfloat -> IO ())
glGetMaterialfvFunPtr = unsafePerformIO (getProcAddress "glGetMaterialfv")
{-# NOINLINE glGetMaterialfvFunPtr #-}
-- | Usage: @'glGetMaterialiv' face pname params@
--
-- The parameter @face@ is a @MaterialFace@, one of: 'Graphics.GL.Internal.Shared.GL_BACK', 'Graphics.GL.Internal.Shared.GL_FRONT', 'Graphics.GL.Internal.Shared.GL_FRONT_AND_BACK'.
--
-- The parameter @pname@ is a @MaterialParameter@, one of: 'Graphics.GL.Internal.Shared.GL_AMBIENT', 'Graphics.GL.Internal.Shared.GL_AMBIENT_AND_DIFFUSE', 'Graphics.GL.Internal.Shared.GL_COLOR_INDEXES', 'Graphics.GL.Internal.Shared.GL_DIFFUSE', 'Graphics.GL.Internal.Shared.GL_EMISSION', 'Graphics.GL.Internal.Shared.GL_SHININESS', 'Graphics.GL.Internal.Shared.GL_SPECULAR'.
--
-- The length of @params@ should be @COMPSIZE(pname)@.
glGetMaterialiv :: MonadIO m => GLenum -> GLenum -> Ptr GLint -> m ()
glGetMaterialiv = ffienumenumPtrintIOV glGetMaterialivFunPtr
glGetMaterialivFunPtr :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
glGetMaterialivFunPtr = unsafePerformIO (getProcAddress "glGetMaterialiv")
{-# NOINLINE glGetMaterialivFunPtr #-}
-- | Usage: @'glGetPixelMapfv' map values@
--
-- The parameter @map@ is a @PixelMap@, one of: 'Graphics.GL.Internal.Shared.GL_PIXEL_MAP_A_TO_A', 'Graphics.GL.Internal.Shared.GL_PIXEL_MAP_B_TO_B', 'Graphics.GL.Internal.Shared.GL_PIXEL_MAP_G_TO_G', 'Graphics.GL.Internal.Shared.GL_PIXEL_MAP_I_TO_A', 'Graphics.GL.Internal.Shared.GL_PIXEL_MAP_I_TO_B', 'Graphics.GL.Internal.Shared.GL_PIXEL_MAP_I_TO_G', 'Graphics.GL.Internal.Shared.GL_PIXEL_MAP_I_TO_I', 'Graphics.GL.Internal.Shared.GL_PIXEL_MAP_I_TO_R', 'Graphics.GL.Internal.Shared.GL_PIXEL_MAP_R_TO_R', 'Graphics.GL.Internal.Shared.GL_PIXEL_MAP_S_TO_S'.
--
-- The length of @values@ should be @COMPSIZE(map)@.
glGetPixelMapfv :: MonadIO m => GLenum -> Ptr GLfloat -> m ()
glGetPixelMapfv = ffienumPtrfloatIOV glGetPixelMapfvFunPtr
glGetPixelMapfvFunPtr :: FunPtr (GLenum -> Ptr GLfloat -> IO ())
glGetPixelMapfvFunPtr = unsafePerformIO (getProcAddress "glGetPixelMapfv")
{-# NOINLINE glGetPixelMapfvFunPtr #-}
-- | Usage: @'glGetPixelMapuiv' map values@
--
-- The parameter @map@ is a @PixelMap@, one of: 'Graphics.GL.Internal.Shared.GL_PIXEL_MAP_A_TO_A', 'Graphics.GL.Internal.Shared.GL_PIXEL_MAP_B_TO_B', 'Graphics.GL.Internal.Shared.GL_PIXEL_MAP_G_TO_G', 'Graphics.GL.Internal.Shared.GL_PIXEL_MAP_I_TO_A', 'Graphics.GL.Internal.Shared.GL_PIXEL_MAP_I_TO_B', 'Graphics.GL.Internal.Shared.GL_PIXEL_MAP_I_TO_G', 'Graphics.GL.Internal.Shared.GL_PIXEL_MAP_I_TO_I', 'Graphics.GL.Internal.Shared.GL_PIXEL_MAP_I_TO_R', 'Graphics.GL.Internal.Shared.GL_PIXEL_MAP_R_TO_R', 'Graphics.GL.Internal.Shared.GL_PIXEL_MAP_S_TO_S'.
--
-- The length of @values@ should be @COMPSIZE(map)@.
glGetPixelMapuiv :: MonadIO m => GLenum -> Ptr GLuint -> m ()
glGetPixelMapuiv = ffienumPtruintIOV glGetPixelMapuivFunPtr
glGetPixelMapuivFunPtr :: FunPtr (GLenum -> Ptr GLuint -> IO ())
glGetPixelMapuivFunPtr = unsafePerformIO (getProcAddress "glGetPixelMapuiv")
{-# NOINLINE glGetPixelMapuivFunPtr #-}
-- | Usage: @'glGetPixelMapusv' map values@
--
-- The parameter @map@ is a @PixelMap@, one of: 'Graphics.GL.Internal.Shared.GL_PIXEL_MAP_A_TO_A', 'Graphics.GL.Internal.Shared.GL_PIXEL_MAP_B_TO_B', 'Graphics.GL.Internal.Shared.GL_PIXEL_MAP_G_TO_G', 'Graphics.GL.Internal.Shared.GL_PIXEL_MAP_I_TO_A', 'Graphics.GL.Internal.Shared.GL_PIXEL_MAP_I_TO_B', 'Graphics.GL.Internal.Shared.GL_PIXEL_MAP_I_TO_G', 'Graphics.GL.Internal.Shared.GL_PIXEL_MAP_I_TO_I', 'Graphics.GL.Internal.Shared.GL_PIXEL_MAP_I_TO_R', 'Graphics.GL.Internal.Shared.GL_PIXEL_MAP_R_TO_R', 'Graphics.GL.Internal.Shared.GL_PIXEL_MAP_S_TO_S'.
--
-- The length of @values@ should be @COMPSIZE(map)@.
glGetPixelMapusv :: MonadIO m => GLenum -> Ptr GLushort -> m ()
glGetPixelMapusv = ffienumPtrushortIOV glGetPixelMapusvFunPtr
glGetPixelMapusvFunPtr :: FunPtr (GLenum -> Ptr GLushort -> IO ())
glGetPixelMapusvFunPtr = unsafePerformIO (getProcAddress "glGetPixelMapusv")
{-# NOINLINE glGetPixelMapusvFunPtr #-}
-- | Usage: @'glGetPointerv' pname params@
--
-- The parameter @pname@ is a @GetPointervPName@, one of: 'Graphics.GL.Internal.Shared.GL_COLOR_ARRAY_POINTER', 'Graphics.GL.Ext.EXT.VertexArray.GL_COLOR_ARRAY_POINTER_EXT', 'Graphics.GL.Internal.Shared.GL_EDGE_FLAG_ARRAY_POINTER', 'Graphics.GL.Ext.EXT.VertexArray.GL_EDGE_FLAG_ARRAY_POINTER_EXT', 'Graphics.GL.Internal.Shared.GL_FEEDBACK_BUFFER_POINTER', 'Graphics.GL.Internal.Shared.GL_INDEX_ARRAY_POINTER', 'Graphics.GL.Ext.EXT.VertexArray.GL_INDEX_ARRAY_POINTER_EXT', 'Graphics.GL.Ext.SGIX.Instruments.GL_INSTRUMENT_BUFFER_POINTER_SGIX', 'Graphics.GL.Internal.Shared.GL_NORMAL_ARRAY_POINTER', 'Graphics.GL.Ext.EXT.VertexArray.GL_NORMAL_ARRAY_POINTER_EXT', 'Graphics.GL.Internal.Shared.GL_SELECTION_BUFFER_POINTER', 'Graphics.GL.Internal.Shared.GL_TEXTURE_COORD_ARRAY_POINTER', 'Graphics.GL.Ext.EXT.VertexArray.GL_TEXTURE_COORD_ARRAY_POINTER_EXT', 'Graphics.GL.Internal.Shared.GL_VERTEX_ARRAY_POINTER', 'Graphics.GL.Ext.EXT.VertexArray.GL_VERTEX_ARRAY_POINTER_EXT'.
--
-- The length of @params@ should be @1@.
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glGetPointerv.xhtml>
glGetPointerv :: MonadIO m => GLenum -> Ptr (Ptr ()) -> m ()
glGetPointerv = ffienumPtrPtrVIOV glGetPointervFunPtr
glGetPointervFunPtr :: FunPtr (GLenum -> Ptr (Ptr ()) -> IO ())
glGetPointervFunPtr = unsafePerformIO (getProcAddress "glGetPointerv")
{-# NOINLINE glGetPointervFunPtr #-}
-- | Usage: @'glGetPolygonStipple' mask@
--
-- The length of @mask@ should be @COMPSIZE()@.
glGetPolygonStipple :: MonadIO m => Ptr GLubyte -> m ()
glGetPolygonStipple = ffiPtrubyteIOV glGetPolygonStippleFunPtr
glGetPolygonStippleFunPtr :: FunPtr (Ptr GLubyte -> IO ())
glGetPolygonStippleFunPtr = unsafePerformIO (getProcAddress "glGetPolygonStipple")
{-# NOINLINE glGetPolygonStippleFunPtr #-}
-- | Usage: @'glGetTexEnvfv' target pname params@
--
-- The parameter @target@ is a @TextureEnvTarget@, one of: 'Graphics.GL.Internal.Shared.GL_TEXTURE_ENV'.
--
-- The parameter @pname@ is a @TextureEnvParameter@, one of: 'Graphics.GL.Internal.Shared.GL_TEXTURE_ENV_COLOR', 'Graphics.GL.Internal.Shared.GL_TEXTURE_ENV_MODE'.
--
-- The length of @params@ should be @COMPSIZE(pname)@.
glGetTexEnvfv :: MonadIO m => GLenum -> GLenum -> Ptr GLfloat -> m ()
glGetTexEnvfv = ffienumenumPtrfloatIOV glGetTexEnvfvFunPtr
glGetTexEnvfvFunPtr :: FunPtr (GLenum -> GLenum -> Ptr GLfloat -> IO ())
glGetTexEnvfvFunPtr = unsafePerformIO (getProcAddress "glGetTexEnvfv")
{-# NOINLINE glGetTexEnvfvFunPtr #-}
-- | Usage: @'glGetTexEnviv' target pname params@
--
-- The parameter @target@ is a @TextureEnvTarget@, one of: 'Graphics.GL.Internal.Shared.GL_TEXTURE_ENV'.
--
-- The parameter @pname@ is a @TextureEnvParameter@, one of: 'Graphics.GL.Internal.Shared.GL_TEXTURE_ENV_COLOR', 'Graphics.GL.Internal.Shared.GL_TEXTURE_ENV_MODE'.
--
-- The length of @params@ should be @COMPSIZE(pname)@.
glGetTexEnviv :: MonadIO m => GLenum -> GLenum -> Ptr GLint -> m ()
glGetTexEnviv = ffienumenumPtrintIOV glGetTexEnvivFunPtr
glGetTexEnvivFunPtr :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
glGetTexEnvivFunPtr = unsafePerformIO (getProcAddress "glGetTexEnviv")
{-# NOINLINE glGetTexEnvivFunPtr #-}
-- | Usage: @'glGetTexGendv' coord pname params@
--
-- The parameter @coord@ is a @TextureCoordName@, one of: 'Graphics.GL.Internal.Shared.GL_S', 'Graphics.GL.Internal.Shared.GL_T', 'Graphics.GL.Internal.Shared.GL_R', 'Graphics.GL.Internal.Shared.GL_Q'.
--
-- The parameter @pname@ is a @TextureGenParameter@, one of: 'Graphics.GL.Ext.SGIS.PointLineTexgen.GL_EYE_LINE_SGIS', 'Graphics.GL.Internal.Shared.GL_EYE_PLANE', 'Graphics.GL.Ext.SGIS.PointLineTexgen.GL_EYE_POINT_SGIS', 'Graphics.GL.Ext.SGIS.PointLineTexgen.GL_OBJECT_LINE_SGIS', 'Graphics.GL.Internal.Shared.GL_OBJECT_PLANE', 'Graphics.GL.Ext.SGIS.PointLineTexgen.GL_OBJECT_POINT_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_GEN_MODE'.
--
-- The length of @params@ should be @COMPSIZE(pname)@.
glGetTexGendv :: MonadIO m => GLenum -> GLenum -> Ptr GLdouble -> m ()
glGetTexGendv = ffienumenumPtrdoubleIOV glGetTexGendvFunPtr
glGetTexGendvFunPtr :: FunPtr (GLenum -> GLenum -> Ptr GLdouble -> IO ())
glGetTexGendvFunPtr = unsafePerformIO (getProcAddress "glGetTexGendv")
{-# NOINLINE glGetTexGendvFunPtr #-}
-- | Usage: @'glGetTexGenfv' coord pname params@
--
-- The parameter @coord@ is a @TextureCoordName@, one of: 'Graphics.GL.Internal.Shared.GL_S', 'Graphics.GL.Internal.Shared.GL_T', 'Graphics.GL.Internal.Shared.GL_R', 'Graphics.GL.Internal.Shared.GL_Q'.
--
-- The parameter @pname@ is a @TextureGenParameter@, one of: 'Graphics.GL.Ext.SGIS.PointLineTexgen.GL_EYE_LINE_SGIS', 'Graphics.GL.Internal.Shared.GL_EYE_PLANE', 'Graphics.GL.Ext.SGIS.PointLineTexgen.GL_EYE_POINT_SGIS', 'Graphics.GL.Ext.SGIS.PointLineTexgen.GL_OBJECT_LINE_SGIS', 'Graphics.GL.Internal.Shared.GL_OBJECT_PLANE', 'Graphics.GL.Ext.SGIS.PointLineTexgen.GL_OBJECT_POINT_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_GEN_MODE'.
--
-- The length of @params@ should be @COMPSIZE(pname)@.
glGetTexGenfv :: MonadIO m => GLenum -> GLenum -> Ptr GLfloat -> m ()
glGetTexGenfv = ffienumenumPtrfloatIOV glGetTexGenfvFunPtr
glGetTexGenfvFunPtr :: FunPtr (GLenum -> GLenum -> Ptr GLfloat -> IO ())
glGetTexGenfvFunPtr = unsafePerformIO (getProcAddress "glGetTexGenfv")
{-# NOINLINE glGetTexGenfvFunPtr #-}
-- | Usage: @'glGetTexGeniv' coord pname params@
--
-- The parameter @coord@ is a @TextureCoordName@, one of: 'Graphics.GL.Internal.Shared.GL_S', 'Graphics.GL.Internal.Shared.GL_T', 'Graphics.GL.Internal.Shared.GL_R', 'Graphics.GL.Internal.Shared.GL_Q'.
--
-- The parameter @pname@ is a @TextureGenParameter@, one of: 'Graphics.GL.Ext.SGIS.PointLineTexgen.GL_EYE_LINE_SGIS', 'Graphics.GL.Internal.Shared.GL_EYE_PLANE', 'Graphics.GL.Ext.SGIS.PointLineTexgen.GL_EYE_POINT_SGIS', 'Graphics.GL.Ext.SGIS.PointLineTexgen.GL_OBJECT_LINE_SGIS', 'Graphics.GL.Internal.Shared.GL_OBJECT_PLANE', 'Graphics.GL.Ext.SGIS.PointLineTexgen.GL_OBJECT_POINT_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_GEN_MODE'.
--
-- The length of @params@ should be @COMPSIZE(pname)@.
glGetTexGeniv :: MonadIO m => GLenum -> GLenum -> Ptr GLint -> m ()
glGetTexGeniv = ffienumenumPtrintIOV glGetTexGenivFunPtr
glGetTexGenivFunPtr :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
glGetTexGenivFunPtr = unsafePerformIO (getProcAddress "glGetTexGeniv")
{-# NOINLINE glGetTexGenivFunPtr #-}
-- | Usage: @'glIndexMask' mask@
--
-- The parameter @mask@ is a @MaskedColorIndexValueI@.
glIndexMask :: MonadIO m => GLuint -> m ()
glIndexMask = ffiuintIOV glIndexMaskFunPtr
glIndexMaskFunPtr :: FunPtr (GLuint -> IO ())
glIndexMaskFunPtr = unsafePerformIO (getProcAddress "glIndexMask")
{-# NOINLINE glIndexMaskFunPtr #-}
-- | Usage: @'glIndexPointer' type stride pointer@
--
-- The parameter @type@ is a @IndexPointerType@, one of: 'Graphics.GL.Internal.Shared.GL_DOUBLE', 'Graphics.GL.Internal.Shared.GL_FLOAT', 'Graphics.GL.Internal.Shared.GL_INT', 'Graphics.GL.Internal.Shared.GL_SHORT'.
--
-- The length of @pointer@ should be @COMPSIZE(type,stride)@.
glIndexPointer :: MonadIO m => GLenum -> GLsizei -> Ptr () -> m ()
glIndexPointer = ffienumsizeiPtrVIOV glIndexPointerFunPtr
glIndexPointerFunPtr :: FunPtr (GLenum -> GLsizei -> Ptr () -> IO ())
glIndexPointerFunPtr = unsafePerformIO (getProcAddress "glIndexPointer")
{-# NOINLINE glIndexPointerFunPtr #-}
-- | Usage: @'glIndexd' c@
--
-- The parameter @c@ is a @ColorIndexValueD@.
--
-- The vector equivalent of this command is 'Graphics.GL.Internal.Shared.glIndexdv'.
glIndexd :: MonadIO m => GLdouble -> m ()
glIndexd = ffidoubleIOV glIndexdFunPtr
glIndexdFunPtr :: FunPtr (GLdouble -> IO ())
glIndexdFunPtr = unsafePerformIO (getProcAddress "glIndexd")
{-# NOINLINE glIndexdFunPtr #-}
-- | Usage: @'glIndexdv' c@
--
-- The parameter @c@ is a @ColorIndexValueD@.
--
-- The length of @c@ should be @1@.
glIndexdv :: MonadIO m => Ptr GLdouble -> m ()
glIndexdv = ffiPtrdoubleIOV glIndexdvFunPtr
glIndexdvFunPtr :: FunPtr (Ptr GLdouble -> IO ())
glIndexdvFunPtr = unsafePerformIO (getProcAddress "glIndexdv")
{-# NOINLINE glIndexdvFunPtr #-}
-- | Usage: @'glIndexf' c@
--
-- The parameter @c@ is a @ColorIndexValueF@.
--
-- The vector equivalent of this command is 'Graphics.GL.Internal.Shared.glIndexfv'.
glIndexf :: MonadIO m => GLfloat -> m ()
glIndexf = ffifloatIOV glIndexfFunPtr
glIndexfFunPtr :: FunPtr (GLfloat -> IO ())
glIndexfFunPtr = unsafePerformIO (getProcAddress "glIndexf")
{-# NOINLINE glIndexfFunPtr #-}
-- | Usage: @'glIndexfv' c@
--
-- The parameter @c@ is a @ColorIndexValueF@.
--
-- The length of @c@ should be @1@.
glIndexfv :: MonadIO m => Ptr GLfloat -> m ()
glIndexfv = ffiPtrfloatIOV glIndexfvFunPtr
glIndexfvFunPtr :: FunPtr (Ptr GLfloat -> IO ())
glIndexfvFunPtr = unsafePerformIO (getProcAddress "glIndexfv")
{-# NOINLINE glIndexfvFunPtr #-}
-- | Usage: @'glIndexi' c@
--
-- The parameter @c@ is a @ColorIndexValueI@.
--
-- The vector equivalent of this command is 'Graphics.GL.Internal.Shared.glIndexiv'.
glIndexi :: MonadIO m => GLint -> m ()
glIndexi = ffiintIOV glIndexiFunPtr
glIndexiFunPtr :: FunPtr (GLint -> IO ())
glIndexiFunPtr = unsafePerformIO (getProcAddress "glIndexi")
{-# NOINLINE glIndexiFunPtr #-}
-- | Usage: @'glIndexiv' c@
--
-- The parameter @c@ is a @ColorIndexValueI@.
--
-- The length of @c@ should be @1@.
glIndexiv :: MonadIO m => Ptr GLint -> m ()
glIndexiv = ffiPtrintIOV glIndexivFunPtr
glIndexivFunPtr :: FunPtr (Ptr GLint -> IO ())
glIndexivFunPtr = unsafePerformIO (getProcAddress "glIndexiv")
{-# NOINLINE glIndexivFunPtr #-}
-- | Usage: @'glIndexs' c@
--
-- The parameter @c@ is a @ColorIndexValueS@.
--
-- The vector equivalent of this command is 'Graphics.GL.Internal.Shared.glIndexsv'.
glIndexs :: MonadIO m => GLshort -> m ()
glIndexs = ffishortIOV glIndexsFunPtr
glIndexsFunPtr :: FunPtr (GLshort -> IO ())
glIndexsFunPtr = unsafePerformIO (getProcAddress "glIndexs")
{-# NOINLINE glIndexsFunPtr #-}
-- | Usage: @'glIndexsv' c@
--
-- The parameter @c@ is a @ColorIndexValueS@.
--
-- The length of @c@ should be @1@.
glIndexsv :: MonadIO m => Ptr GLshort -> m ()
glIndexsv = ffiPtrshortIOV glIndexsvFunPtr
glIndexsvFunPtr :: FunPtr (Ptr GLshort -> IO ())
glIndexsvFunPtr = unsafePerformIO (getProcAddress "glIndexsv")
{-# NOINLINE glIndexsvFunPtr #-}
-- | Usage: @'glIndexub' c@
--
-- The parameter @c@ is a @ColorIndexValueUB@.
--
-- The vector equivalent of this command is 'Graphics.GL.Internal.Shared.glIndexubv'.
glIndexub :: MonadIO m => GLubyte -> m ()
glIndexub = ffiubyteIOV glIndexubFunPtr
glIndexubFunPtr :: FunPtr (GLubyte -> IO ())
glIndexubFunPtr = unsafePerformIO (getProcAddress "glIndexub")
{-# NOINLINE glIndexubFunPtr #-}
-- | Usage: @'glIndexubv' c@
--
-- The parameter @c@ is a @ColorIndexValueUB@.
--
-- The length of @c@ should be @1@.
glIndexubv :: MonadIO m => Ptr GLubyte -> m ()
glIndexubv = ffiPtrubyteIOV glIndexubvFunPtr
glIndexubvFunPtr :: FunPtr (Ptr GLubyte -> IO ())
glIndexubvFunPtr = unsafePerformIO (getProcAddress "glIndexubv")
{-# NOINLINE glIndexubvFunPtr #-}
-- | Usage: @'glInitNames'@
glInitNames :: MonadIO m => m ()
glInitNames = ffiIOV glInitNamesFunPtr
glInitNamesFunPtr :: FunPtr (IO ())
glInitNamesFunPtr = unsafePerformIO (getProcAddress "glInitNames")
{-# NOINLINE glInitNamesFunPtr #-}
-- | Usage: @'glInterleavedArrays' format stride pointer@
--
-- The parameter @format@ is a @InterleavedArrayFormat@, one of: 'Graphics.GL.Internal.Shared.GL_C3F_V3F', 'Graphics.GL.Internal.Shared.GL_C4F_N3F_V3F', 'Graphics.GL.Internal.Shared.GL_C4UB_V2F', 'Graphics.GL.Internal.Shared.GL_C4UB_V3F', 'Graphics.GL.Internal.Shared.GL_N3F_V3F', 'Graphics.GL.Internal.Shared.GL_T2F_C3F_V3F', 'Graphics.GL.Internal.Shared.GL_T2F_C4F_N3F_V3F', 'Graphics.GL.Internal.Shared.GL_T2F_C4UB_V3F', 'Graphics.GL.Internal.Shared.GL_T2F_N3F_V3F', 'Graphics.GL.Internal.Shared.GL_T2F_V3F', 'Graphics.GL.Internal.Shared.GL_T4F_C4F_N3F_V4F', 'Graphics.GL.Internal.Shared.GL_T4F_V4F', 'Graphics.GL.Internal.Shared.GL_V2F', 'Graphics.GL.Internal.Shared.GL_V3F'.
--
-- The length of @pointer@ should be @COMPSIZE(format,stride)@.
glInterleavedArrays :: MonadIO m => GLenum -> GLsizei -> Ptr () -> m ()
glInterleavedArrays = ffienumsizeiPtrVIOV glInterleavedArraysFunPtr
glInterleavedArraysFunPtr :: FunPtr (GLenum -> GLsizei -> Ptr () -> IO ())
glInterleavedArraysFunPtr = unsafePerformIO (getProcAddress "glInterleavedArrays")
{-# NOINLINE glInterleavedArraysFunPtr #-}
-- | Usage: @'glIsList' list@
--
-- The parameter @list@ is a @List@.
glIsList :: MonadIO m => GLuint -> m GLboolean
glIsList = ffiuintIOboolean glIsListFunPtr
glIsListFunPtr :: FunPtr (GLuint -> IO GLboolean)
glIsListFunPtr = unsafePerformIO (getProcAddress "glIsList")
{-# NOINLINE glIsListFunPtr #-}
-- | Usage: @'glLightModelf' pname param@
--
-- The parameter @pname@ is a @LightModelParameter@, one of: 'Graphics.GL.Internal.Shared.GL_LIGHT_MODEL_AMBIENT', 'Graphics.GL.Internal.Shared.GL_LIGHT_MODEL_COLOR_CONTROL', 'Graphics.GL.Ext.EXT.SeparateSpecularColor.GL_LIGHT_MODEL_COLOR_CONTROL_EXT', 'Graphics.GL.Internal.Shared.GL_LIGHT_MODEL_LOCAL_VIEWER', 'Graphics.GL.Internal.Shared.GL_LIGHT_MODEL_TWO_SIDE'.
glLightModelf :: MonadIO m => GLenum -> GLfloat -> m ()
glLightModelf = ffienumfloatIOV glLightModelfFunPtr
glLightModelfFunPtr :: FunPtr (GLenum -> GLfloat -> IO ())
glLightModelfFunPtr = unsafePerformIO (getProcAddress "glLightModelf")
{-# NOINLINE glLightModelfFunPtr #-}
-- | Usage: @'glLightModelfv' pname params@
--
-- The parameter @pname@ is a @LightModelParameter@, one of: 'Graphics.GL.Internal.Shared.GL_LIGHT_MODEL_AMBIENT', 'Graphics.GL.Internal.Shared.GL_LIGHT_MODEL_COLOR_CONTROL', 'Graphics.GL.Ext.EXT.SeparateSpecularColor.GL_LIGHT_MODEL_COLOR_CONTROL_EXT', 'Graphics.GL.Internal.Shared.GL_LIGHT_MODEL_LOCAL_VIEWER', 'Graphics.GL.Internal.Shared.GL_LIGHT_MODEL_TWO_SIDE'.
--
-- The length of @params@ should be @COMPSIZE(pname)@.
glLightModelfv :: MonadIO m => GLenum -> Ptr GLfloat -> m ()
glLightModelfv = ffienumPtrfloatIOV glLightModelfvFunPtr
glLightModelfvFunPtr :: FunPtr (GLenum -> Ptr GLfloat -> IO ())
glLightModelfvFunPtr = unsafePerformIO (getProcAddress "glLightModelfv")
{-# NOINLINE glLightModelfvFunPtr #-}
-- | Usage: @'glLightModeli' pname param@
--
-- The parameter @pname@ is a @LightModelParameter@, one of: 'Graphics.GL.Internal.Shared.GL_LIGHT_MODEL_AMBIENT', 'Graphics.GL.Internal.Shared.GL_LIGHT_MODEL_COLOR_CONTROL', 'Graphics.GL.Ext.EXT.SeparateSpecularColor.GL_LIGHT_MODEL_COLOR_CONTROL_EXT', 'Graphics.GL.Internal.Shared.GL_LIGHT_MODEL_LOCAL_VIEWER', 'Graphics.GL.Internal.Shared.GL_LIGHT_MODEL_TWO_SIDE'.
glLightModeli :: MonadIO m => GLenum -> GLint -> m ()
glLightModeli = ffienumintIOV glLightModeliFunPtr
glLightModeliFunPtr :: FunPtr (GLenum -> GLint -> IO ())
glLightModeliFunPtr = unsafePerformIO (getProcAddress "glLightModeli")
{-# NOINLINE glLightModeliFunPtr #-}
-- | Usage: @'glLightModeliv' pname params@
--
-- The parameter @pname@ is a @LightModelParameter@, one of: 'Graphics.GL.Internal.Shared.GL_LIGHT_MODEL_AMBIENT', 'Graphics.GL.Internal.Shared.GL_LIGHT_MODEL_COLOR_CONTROL', 'Graphics.GL.Ext.EXT.SeparateSpecularColor.GL_LIGHT_MODEL_COLOR_CONTROL_EXT', 'Graphics.GL.Internal.Shared.GL_LIGHT_MODEL_LOCAL_VIEWER', 'Graphics.GL.Internal.Shared.GL_LIGHT_MODEL_TWO_SIDE'.
--
-- The length of @params@ should be @COMPSIZE(pname)@.
glLightModeliv :: MonadIO m => GLenum -> Ptr GLint -> m ()
glLightModeliv = ffienumPtrintIOV glLightModelivFunPtr
glLightModelivFunPtr :: FunPtr (GLenum -> Ptr GLint -> IO ())
glLightModelivFunPtr = unsafePerformIO (getProcAddress "glLightModeliv")
{-# NOINLINE glLightModelivFunPtr #-}
-- | Usage: @'glLightf' light pname param@
--
-- The parameter @light@ is a @LightName@, one of: 'Graphics.GL.Ext.SGIX.FragmentLighting.GL_FRAGMENT_LIGHT0_SGIX', 'Graphics.GL.Ext.SGIX.FragmentLighting.GL_FRAGMENT_LIGHT1_SGIX', 'Graphics.GL.Ext.SGIX.FragmentLighting.GL_FRAGMENT_LIGHT2_SGIX', 'Graphics.GL.Ext.SGIX.FragmentLighting.GL_FRAGMENT_LIGHT3_SGIX', 'Graphics.GL.Ext.SGIX.FragmentLighting.GL_FRAGMENT_LIGHT4_SGIX', 'Graphics.GL.Ext.SGIX.FragmentLighting.GL_FRAGMENT_LIGHT5_SGIX', 'Graphics.GL.Ext.SGIX.FragmentLighting.GL_FRAGMENT_LIGHT6_SGIX', 'Graphics.GL.Ext.SGIX.FragmentLighting.GL_FRAGMENT_LIGHT7_SGIX', 'Graphics.GL.Internal.Shared.GL_LIGHT0', 'Graphics.GL.Internal.Shared.GL_LIGHT1', 'Graphics.GL.Internal.Shared.GL_LIGHT2', 'Graphics.GL.Internal.Shared.GL_LIGHT3', 'Graphics.GL.Internal.Shared.GL_LIGHT4', 'Graphics.GL.Internal.Shared.GL_LIGHT5', 'Graphics.GL.Internal.Shared.GL_LIGHT6', 'Graphics.GL.Internal.Shared.GL_LIGHT7'.
--
-- The parameter @pname@ is a @LightParameter@, one of: 'Graphics.GL.Internal.Shared.GL_AMBIENT', 'Graphics.GL.Internal.Shared.GL_CONSTANT_ATTENUATION', 'Graphics.GL.Internal.Shared.GL_DIFFUSE', 'Graphics.GL.Internal.Shared.GL_LINEAR_ATTENUATION', 'Graphics.GL.Internal.Shared.GL_POSITION', 'Graphics.GL.Internal.Shared.GL_QUADRATIC_ATTENUATION', 'Graphics.GL.Internal.Shared.GL_SPECULAR', 'Graphics.GL.Internal.Shared.GL_SPOT_CUTOFF', 'Graphics.GL.Internal.Shared.GL_SPOT_DIRECTION', 'Graphics.GL.Internal.Shared.GL_SPOT_EXPONENT'.
--
-- The parameter @param@ is a @CheckedFloat32@.
glLightf :: MonadIO m => GLenum -> GLenum -> GLfloat -> m ()
glLightf = ffienumenumfloatIOV glLightfFunPtr
glLightfFunPtr :: FunPtr (GLenum -> GLenum -> GLfloat -> IO ())
glLightfFunPtr = unsafePerformIO (getProcAddress "glLightf")
{-# NOINLINE glLightfFunPtr #-}
-- | Usage: @'glLightfv' light pname params@
--
-- The parameter @light@ is a @LightName@, one of: 'Graphics.GL.Ext.SGIX.FragmentLighting.GL_FRAGMENT_LIGHT0_SGIX', 'Graphics.GL.Ext.SGIX.FragmentLighting.GL_FRAGMENT_LIGHT1_SGIX', 'Graphics.GL.Ext.SGIX.FragmentLighting.GL_FRAGMENT_LIGHT2_SGIX', 'Graphics.GL.Ext.SGIX.FragmentLighting.GL_FRAGMENT_LIGHT3_SGIX', 'Graphics.GL.Ext.SGIX.FragmentLighting.GL_FRAGMENT_LIGHT4_SGIX', 'Graphics.GL.Ext.SGIX.FragmentLighting.GL_FRAGMENT_LIGHT5_SGIX', 'Graphics.GL.Ext.SGIX.FragmentLighting.GL_FRAGMENT_LIGHT6_SGIX', 'Graphics.GL.Ext.SGIX.FragmentLighting.GL_FRAGMENT_LIGHT7_SGIX', 'Graphics.GL.Internal.Shared.GL_LIGHT0', 'Graphics.GL.Internal.Shared.GL_LIGHT1', 'Graphics.GL.Internal.Shared.GL_LIGHT2', 'Graphics.GL.Internal.Shared.GL_LIGHT3', 'Graphics.GL.Internal.Shared.GL_LIGHT4', 'Graphics.GL.Internal.Shared.GL_LIGHT5', 'Graphics.GL.Internal.Shared.GL_LIGHT6', 'Graphics.GL.Internal.Shared.GL_LIGHT7'.
--
-- The parameter @pname@ is a @LightParameter@, one of: 'Graphics.GL.Internal.Shared.GL_AMBIENT', 'Graphics.GL.Internal.Shared.GL_CONSTANT_ATTENUATION', 'Graphics.GL.Internal.Shared.GL_DIFFUSE', 'Graphics.GL.Internal.Shared.GL_LINEAR_ATTENUATION', 'Graphics.GL.Internal.Shared.GL_POSITION', 'Graphics.GL.Internal.Shared.GL_QUADRATIC_ATTENUATION', 'Graphics.GL.Internal.Shared.GL_SPECULAR', 'Graphics.GL.Internal.Shared.GL_SPOT_CUTOFF', 'Graphics.GL.Internal.Shared.GL_SPOT_DIRECTION', 'Graphics.GL.Internal.Shared.GL_SPOT_EXPONENT'.
--
-- The parameter @params@ is a @CheckedFloat32@.
--
-- The length of @params@ should be @COMPSIZE(pname)@.
glLightfv :: MonadIO m => GLenum -> GLenum -> Ptr GLfloat -> m ()
glLightfv = ffienumenumPtrfloatIOV glLightfvFunPtr
glLightfvFunPtr :: FunPtr (GLenum -> GLenum -> Ptr GLfloat -> IO ())
glLightfvFunPtr = unsafePerformIO (getProcAddress "glLightfv")
{-# NOINLINE glLightfvFunPtr #-}
-- | Usage: @'glLighti' light pname param@
--
-- The parameter @light@ is a @LightName@, one of: 'Graphics.GL.Ext.SGIX.FragmentLighting.GL_FRAGMENT_LIGHT0_SGIX', 'Graphics.GL.Ext.SGIX.FragmentLighting.GL_FRAGMENT_LIGHT1_SGIX', 'Graphics.GL.Ext.SGIX.FragmentLighting.GL_FRAGMENT_LIGHT2_SGIX', 'Graphics.GL.Ext.SGIX.FragmentLighting.GL_FRAGMENT_LIGHT3_SGIX', 'Graphics.GL.Ext.SGIX.FragmentLighting.GL_FRAGMENT_LIGHT4_SGIX', 'Graphics.GL.Ext.SGIX.FragmentLighting.GL_FRAGMENT_LIGHT5_SGIX', 'Graphics.GL.Ext.SGIX.FragmentLighting.GL_FRAGMENT_LIGHT6_SGIX', 'Graphics.GL.Ext.SGIX.FragmentLighting.GL_FRAGMENT_LIGHT7_SGIX', 'Graphics.GL.Internal.Shared.GL_LIGHT0', 'Graphics.GL.Internal.Shared.GL_LIGHT1', 'Graphics.GL.Internal.Shared.GL_LIGHT2', 'Graphics.GL.Internal.Shared.GL_LIGHT3', 'Graphics.GL.Internal.Shared.GL_LIGHT4', 'Graphics.GL.Internal.Shared.GL_LIGHT5', 'Graphics.GL.Internal.Shared.GL_LIGHT6', 'Graphics.GL.Internal.Shared.GL_LIGHT7'.
--
-- The parameter @pname@ is a @LightParameter@, one of: 'Graphics.GL.Internal.Shared.GL_AMBIENT', 'Graphics.GL.Internal.Shared.GL_CONSTANT_ATTENUATION', 'Graphics.GL.Internal.Shared.GL_DIFFUSE', 'Graphics.GL.Internal.Shared.GL_LINEAR_ATTENUATION', 'Graphics.GL.Internal.Shared.GL_POSITION', 'Graphics.GL.Internal.Shared.GL_QUADRATIC_ATTENUATION', 'Graphics.GL.Internal.Shared.GL_SPECULAR', 'Graphics.GL.Internal.Shared.GL_SPOT_CUTOFF', 'Graphics.GL.Internal.Shared.GL_SPOT_DIRECTION', 'Graphics.GL.Internal.Shared.GL_SPOT_EXPONENT'.
--
-- The parameter @param@ is a @CheckedInt32@.
glLighti :: MonadIO m => GLenum -> GLenum -> GLint -> m ()
glLighti = ffienumenumintIOV glLightiFunPtr
glLightiFunPtr :: FunPtr (GLenum -> GLenum -> GLint -> IO ())
glLightiFunPtr = unsafePerformIO (getProcAddress "glLighti")
{-# NOINLINE glLightiFunPtr #-}
-- | Usage: @'glLightiv' light pname params@
--
-- The parameter @light@ is a @LightName@, one of: 'Graphics.GL.Ext.SGIX.FragmentLighting.GL_FRAGMENT_LIGHT0_SGIX', 'Graphics.GL.Ext.SGIX.FragmentLighting.GL_FRAGMENT_LIGHT1_SGIX', 'Graphics.GL.Ext.SGIX.FragmentLighting.GL_FRAGMENT_LIGHT2_SGIX', 'Graphics.GL.Ext.SGIX.FragmentLighting.GL_FRAGMENT_LIGHT3_SGIX', 'Graphics.GL.Ext.SGIX.FragmentLighting.GL_FRAGMENT_LIGHT4_SGIX', 'Graphics.GL.Ext.SGIX.FragmentLighting.GL_FRAGMENT_LIGHT5_SGIX', 'Graphics.GL.Ext.SGIX.FragmentLighting.GL_FRAGMENT_LIGHT6_SGIX', 'Graphics.GL.Ext.SGIX.FragmentLighting.GL_FRAGMENT_LIGHT7_SGIX', 'Graphics.GL.Internal.Shared.GL_LIGHT0', 'Graphics.GL.Internal.Shared.GL_LIGHT1', 'Graphics.GL.Internal.Shared.GL_LIGHT2', 'Graphics.GL.Internal.Shared.GL_LIGHT3', 'Graphics.GL.Internal.Shared.GL_LIGHT4', 'Graphics.GL.Internal.Shared.GL_LIGHT5', 'Graphics.GL.Internal.Shared.GL_LIGHT6', 'Graphics.GL.Internal.Shared.GL_LIGHT7'.
--
-- The parameter @pname@ is a @LightParameter@, one of: 'Graphics.GL.Internal.Shared.GL_AMBIENT', 'Graphics.GL.Internal.Shared.GL_CONSTANT_ATTENUATION', 'Graphics.GL.Internal.Shared.GL_DIFFUSE', 'Graphics.GL.Internal.Shared.GL_LINEAR_ATTENUATION', 'Graphics.GL.Internal.Shared.GL_POSITION', 'Graphics.GL.Internal.Shared.GL_QUADRATIC_ATTENUATION', 'Graphics.GL.Internal.Shared.GL_SPECULAR', 'Graphics.GL.Internal.Shared.GL_SPOT_CUTOFF', 'Graphics.GL.Internal.Shared.GL_SPOT_DIRECTION', 'Graphics.GL.Internal.Shared.GL_SPOT_EXPONENT'.
--
-- The parameter @params@ is a @CheckedInt32@.
--
-- The length of @params@ should be @COMPSIZE(pname)@.
glLightiv :: MonadIO m => GLenum -> GLenum -> Ptr GLint -> m ()
glLightiv = ffienumenumPtrintIOV glLightivFunPtr
glLightivFunPtr :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
glLightivFunPtr = unsafePerformIO (getProcAddress "glLightiv")
{-# NOINLINE glLightivFunPtr #-}
-- | Usage: @'glLineStipple' factor pattern@
--
-- The parameter @factor@ is a @CheckedInt32@.
--
-- The parameter @pattern@ is a @LineStipple@.
glLineStipple :: MonadIO m => GLint -> GLushort -> m ()
glLineStipple = ffiintushortIOV glLineStippleFunPtr
glLineStippleFunPtr :: FunPtr (GLint -> GLushort -> IO ())
glLineStippleFunPtr = unsafePerformIO (getProcAddress "glLineStipple")
{-# NOINLINE glLineStippleFunPtr #-}
-- | Usage: @'glListBase' base@
--
-- The parameter @base@ is a @List@.
glListBase :: MonadIO m => GLuint -> m ()
glListBase = ffiuintIOV glListBaseFunPtr
glListBaseFunPtr :: FunPtr (GLuint -> IO ())
glListBaseFunPtr = unsafePerformIO (getProcAddress "glListBase")
{-# NOINLINE glListBaseFunPtr #-}
-- | Usage: @'glLoadIdentity'@
glLoadIdentity :: MonadIO m => m ()
glLoadIdentity = ffiIOV glLoadIdentityFunPtr
glLoadIdentityFunPtr :: FunPtr (IO ())
glLoadIdentityFunPtr = unsafePerformIO (getProcAddress "glLoadIdentity")
{-# NOINLINE glLoadIdentityFunPtr #-}
-- | Usage: @'glLoadMatrixd' m@
--
-- The length of @m@ should be @16@.
glLoadMatrixd :: MonadIO m => Ptr GLdouble -> m ()
glLoadMatrixd = ffiPtrdoubleIOV glLoadMatrixdFunPtr
glLoadMatrixdFunPtr :: FunPtr (Ptr GLdouble -> IO ())
glLoadMatrixdFunPtr = unsafePerformIO (getProcAddress "glLoadMatrixd")
{-# NOINLINE glLoadMatrixdFunPtr #-}
-- | Usage: @'glLoadMatrixf' m@
--
-- The length of @m@ should be @16@.
glLoadMatrixf :: MonadIO m => Ptr GLfloat -> m ()
glLoadMatrixf = ffiPtrfloatIOV glLoadMatrixfFunPtr
glLoadMatrixfFunPtr :: FunPtr (Ptr GLfloat -> IO ())
glLoadMatrixfFunPtr = unsafePerformIO (getProcAddress "glLoadMatrixf")
{-# NOINLINE glLoadMatrixfFunPtr #-}
-- | Usage: @'glLoadName' name@
--
-- The parameter @name@ is a @SelectName@.
glLoadName :: MonadIO m => GLuint -> m ()
glLoadName = ffiuintIOV glLoadNameFunPtr
glLoadNameFunPtr :: FunPtr (GLuint -> IO ())
glLoadNameFunPtr = unsafePerformIO (getProcAddress "glLoadName")
{-# NOINLINE glLoadNameFunPtr #-}
-- | Usage: @'glLoadTransposeMatrixd' m@
--
-- The length of @m@ should be @16@.
glLoadTransposeMatrixd :: MonadIO m => Ptr GLdouble -> m ()
glLoadTransposeMatrixd = ffiPtrdoubleIOV glLoadTransposeMatrixdFunPtr
glLoadTransposeMatrixdFunPtr :: FunPtr (Ptr GLdouble -> IO ())
glLoadTransposeMatrixdFunPtr = unsafePerformIO (getProcAddress "glLoadTransposeMatrixd")
{-# NOINLINE glLoadTransposeMatrixdFunPtr #-}
-- | Usage: @'glLoadTransposeMatrixf' m@
--
-- The length of @m@ should be @16@.
glLoadTransposeMatrixf :: MonadIO m => Ptr GLfloat -> m ()
glLoadTransposeMatrixf = ffiPtrfloatIOV glLoadTransposeMatrixfFunPtr
glLoadTransposeMatrixfFunPtr :: FunPtr (Ptr GLfloat -> IO ())
glLoadTransposeMatrixfFunPtr = unsafePerformIO (getProcAddress "glLoadTransposeMatrixf")
{-# NOINLINE glLoadTransposeMatrixfFunPtr #-}
-- | Usage: @'glMap1d' target u1 u2 stride order points@
--
-- The parameter @target@ is a @MapTarget@, one of: 'Graphics.GL.Ext.SGIX.PolynomialFfd.GL_GEOMETRY_DEFORMATION_SGIX', 'Graphics.GL.Internal.Shared.GL_MAP1_COLOR_4', 'Graphics.GL.Internal.Shared.GL_MAP1_INDEX', 'Graphics.GL.Internal.Shared.GL_MAP1_NORMAL', 'Graphics.GL.Internal.Shared.GL_MAP1_TEXTURE_COORD_1', 'Graphics.GL.Internal.Shared.GL_MAP1_TEXTURE_COORD_2', 'Graphics.GL.Internal.Shared.GL_MAP1_TEXTURE_COORD_3', 'Graphics.GL.Internal.Shared.GL_MAP1_TEXTURE_COORD_4', 'Graphics.GL.Internal.Shared.GL_MAP1_VERTEX_3', 'Graphics.GL.Internal.Shared.GL_MAP1_VERTEX_4', 'Graphics.GL.Internal.Shared.GL_MAP2_COLOR_4', 'Graphics.GL.Internal.Shared.GL_MAP2_INDEX', 'Graphics.GL.Internal.Shared.GL_MAP2_NORMAL', 'Graphics.GL.Internal.Shared.GL_MAP2_TEXTURE_COORD_1', 'Graphics.GL.Internal.Shared.GL_MAP2_TEXTURE_COORD_2', 'Graphics.GL.Internal.Shared.GL_MAP2_TEXTURE_COORD_3', 'Graphics.GL.Internal.Shared.GL_MAP2_TEXTURE_COORD_4', 'Graphics.GL.Internal.Shared.GL_MAP2_VERTEX_3', 'Graphics.GL.Internal.Shared.GL_MAP2_VERTEX_4', 'Graphics.GL.Ext.SGIX.PolynomialFfd.GL_TEXTURE_DEFORMATION_SGIX'.
--
-- The parameter @u1@ is a @CoordD@.
--
-- The parameter @u2@ is a @CoordD@.
--
-- The parameter @order@ is a @CheckedInt32@.
--
-- The parameter @points@ is a @CoordD@.
--
-- The length of @points@ should be @COMPSIZE(target,stride,order)@.
glMap1d :: MonadIO m => GLenum -> GLdouble -> GLdouble -> GLint -> GLint -> Ptr GLdouble -> m ()
glMap1d = ffienumdoubledoubleintintPtrdoubleIOV glMap1dFunPtr
glMap1dFunPtr :: FunPtr (GLenum -> GLdouble -> GLdouble -> GLint -> GLint -> Ptr GLdouble -> IO ())
glMap1dFunPtr = unsafePerformIO (getProcAddress "glMap1d")
{-# NOINLINE glMap1dFunPtr #-}
-- | Usage: @'glMap1f' target u1 u2 stride order points@
--
-- The parameter @target@ is a @MapTarget@, one of: 'Graphics.GL.Ext.SGIX.PolynomialFfd.GL_GEOMETRY_DEFORMATION_SGIX', 'Graphics.GL.Internal.Shared.GL_MAP1_COLOR_4', 'Graphics.GL.Internal.Shared.GL_MAP1_INDEX', 'Graphics.GL.Internal.Shared.GL_MAP1_NORMAL', 'Graphics.GL.Internal.Shared.GL_MAP1_TEXTURE_COORD_1', 'Graphics.GL.Internal.Shared.GL_MAP1_TEXTURE_COORD_2', 'Graphics.GL.Internal.Shared.GL_MAP1_TEXTURE_COORD_3', 'Graphics.GL.Internal.Shared.GL_MAP1_TEXTURE_COORD_4', 'Graphics.GL.Internal.Shared.GL_MAP1_VERTEX_3', 'Graphics.GL.Internal.Shared.GL_MAP1_VERTEX_4', 'Graphics.GL.Internal.Shared.GL_MAP2_COLOR_4', 'Graphics.GL.Internal.Shared.GL_MAP2_INDEX', 'Graphics.GL.Internal.Shared.GL_MAP2_NORMAL', 'Graphics.GL.Internal.Shared.GL_MAP2_TEXTURE_COORD_1', 'Graphics.GL.Internal.Shared.GL_MAP2_TEXTURE_COORD_2', 'Graphics.GL.Internal.Shared.GL_MAP2_TEXTURE_COORD_3', 'Graphics.GL.Internal.Shared.GL_MAP2_TEXTURE_COORD_4', 'Graphics.GL.Internal.Shared.GL_MAP2_VERTEX_3', 'Graphics.GL.Internal.Shared.GL_MAP2_VERTEX_4', 'Graphics.GL.Ext.SGIX.PolynomialFfd.GL_TEXTURE_DEFORMATION_SGIX'.
--
-- The parameter @u1@ is a @CoordF@.
--
-- The parameter @u2@ is a @CoordF@.
--
-- The parameter @order@ is a @CheckedInt32@.
--
-- The parameter @points@ is a @CoordF@.
--
-- The length of @points@ should be @COMPSIZE(target,stride,order)@.
glMap1f :: MonadIO m => GLenum -> GLfloat -> GLfloat -> GLint -> GLint -> Ptr GLfloat -> m ()
glMap1f = ffienumfloatfloatintintPtrfloatIOV glMap1fFunPtr
glMap1fFunPtr :: FunPtr (GLenum -> GLfloat -> GLfloat -> GLint -> GLint -> Ptr GLfloat -> IO ())
glMap1fFunPtr = unsafePerformIO (getProcAddress "glMap1f")
{-# NOINLINE glMap1fFunPtr #-}
-- | Usage: @'glMap2d' target u1 u2 ustride uorder v1 v2 vstride vorder points@
--
-- The parameter @target@ is a @MapTarget@, one of: 'Graphics.GL.Ext.SGIX.PolynomialFfd.GL_GEOMETRY_DEFORMATION_SGIX', 'Graphics.GL.Internal.Shared.GL_MAP1_COLOR_4', 'Graphics.GL.Internal.Shared.GL_MAP1_INDEX', 'Graphics.GL.Internal.Shared.GL_MAP1_NORMAL', 'Graphics.GL.Internal.Shared.GL_MAP1_TEXTURE_COORD_1', 'Graphics.GL.Internal.Shared.GL_MAP1_TEXTURE_COORD_2', 'Graphics.GL.Internal.Shared.GL_MAP1_TEXTURE_COORD_3', 'Graphics.GL.Internal.Shared.GL_MAP1_TEXTURE_COORD_4', 'Graphics.GL.Internal.Shared.GL_MAP1_VERTEX_3', 'Graphics.GL.Internal.Shared.GL_MAP1_VERTEX_4', 'Graphics.GL.Internal.Shared.GL_MAP2_COLOR_4', 'Graphics.GL.Internal.Shared.GL_MAP2_INDEX', 'Graphics.GL.Internal.Shared.GL_MAP2_NORMAL', 'Graphics.GL.Internal.Shared.GL_MAP2_TEXTURE_COORD_1', 'Graphics.GL.Internal.Shared.GL_MAP2_TEXTURE_COORD_2', 'Graphics.GL.Internal.Shared.GL_MAP2_TEXTURE_COORD_3', 'Graphics.GL.Internal.Shared.GL_MAP2_TEXTURE_COORD_4', 'Graphics.GL.Internal.Shared.GL_MAP2_VERTEX_3', 'Graphics.GL.Internal.Shared.GL_MAP2_VERTEX_4', 'Graphics.GL.Ext.SGIX.PolynomialFfd.GL_TEXTURE_DEFORMATION_SGIX'.
--
-- The parameter @u1@ is a @CoordD@.
--
-- The parameter @u2@ is a @CoordD@.
--
-- The parameter @uorder@ is a @CheckedInt32@.
--
-- The parameter @v1@ is a @CoordD@.
--
-- The parameter @v2@ is a @CoordD@.
--
-- The parameter @vorder@ is a @CheckedInt32@.
--
-- The parameter @points@ is a @CoordD@.
--
-- The length of @points@ should be @COMPSIZE(target,ustride,uorder,vstride,vorder)@.
glMap2d :: MonadIO m => GLenum -> GLdouble -> GLdouble -> GLint -> GLint -> GLdouble -> GLdouble -> GLint -> GLint -> Ptr GLdouble -> m ()
glMap2d = ffienumdoubledoubleintintdoubledoubleintintPtrdoubleIOV glMap2dFunPtr
glMap2dFunPtr :: FunPtr (GLenum -> GLdouble -> GLdouble -> GLint -> GLint -> GLdouble -> GLdouble -> GLint -> GLint -> Ptr GLdouble -> IO ())
glMap2dFunPtr = unsafePerformIO (getProcAddress "glMap2d")
{-# NOINLINE glMap2dFunPtr #-}
-- | Usage: @'glMap2f' target u1 u2 ustride uorder v1 v2 vstride vorder points@
--
-- The parameter @target@ is a @MapTarget@, one of: 'Graphics.GL.Ext.SGIX.PolynomialFfd.GL_GEOMETRY_DEFORMATION_SGIX', 'Graphics.GL.Internal.Shared.GL_MAP1_COLOR_4', 'Graphics.GL.Internal.Shared.GL_MAP1_INDEX', 'Graphics.GL.Internal.Shared.GL_MAP1_NORMAL', 'Graphics.GL.Internal.Shared.GL_MAP1_TEXTURE_COORD_1', 'Graphics.GL.Internal.Shared.GL_MAP1_TEXTURE_COORD_2', 'Graphics.GL.Internal.Shared.GL_MAP1_TEXTURE_COORD_3', 'Graphics.GL.Internal.Shared.GL_MAP1_TEXTURE_COORD_4', 'Graphics.GL.Internal.Shared.GL_MAP1_VERTEX_3', 'Graphics.GL.Internal.Shared.GL_MAP1_VERTEX_4', 'Graphics.GL.Internal.Shared.GL_MAP2_COLOR_4', 'Graphics.GL.Internal.Shared.GL_MAP2_INDEX', 'Graphics.GL.Internal.Shared.GL_MAP2_NORMAL', 'Graphics.GL.Internal.Shared.GL_MAP2_TEXTURE_COORD_1', 'Graphics.GL.Internal.Shared.GL_MAP2_TEXTURE_COORD_2', 'Graphics.GL.Internal.Shared.GL_MAP2_TEXTURE_COORD_3', 'Graphics.GL.Internal.Shared.GL_MAP2_TEXTURE_COORD_4', 'Graphics.GL.Internal.Shared.GL_MAP2_VERTEX_3', 'Graphics.GL.Internal.Shared.GL_MAP2_VERTEX_4', 'Graphics.GL.Ext.SGIX.PolynomialFfd.GL_TEXTURE_DEFORMATION_SGIX'.
--
-- The parameter @u1@ is a @CoordF@.
--
-- The parameter @u2@ is a @CoordF@.
--
-- The parameter @uorder@ is a @CheckedInt32@.
--
-- The parameter @v1@ is a @CoordF@.
--
-- The parameter @v2@ is a @CoordF@.
--
-- The parameter @vorder@ is a @CheckedInt32@.
--
-- The parameter @points@ is a @CoordF@.
--
-- The length of @points@ should be @COMPSIZE(target,ustride,uorder,vstride,vorder)@.
glMap2f :: MonadIO m => GLenum -> GLfloat -> GLfloat -> GLint -> GLint -> GLfloat -> GLfloat -> GLint -> GLint -> Ptr GLfloat -> m ()
glMap2f = ffienumfloatfloatintintfloatfloatintintPtrfloatIOV glMap2fFunPtr
glMap2fFunPtr :: FunPtr (GLenum -> GLfloat -> GLfloat -> GLint -> GLint -> GLfloat -> GLfloat -> GLint -> GLint -> Ptr GLfloat -> IO ())
glMap2fFunPtr = unsafePerformIO (getProcAddress "glMap2f")
{-# NOINLINE glMap2fFunPtr #-}
-- | Usage: @'glMapGrid1d' un u1 u2@
--
-- The parameter @u1@ is a @CoordD@.
--
-- The parameter @u2@ is a @CoordD@.
glMapGrid1d :: MonadIO m => GLint -> GLdouble -> GLdouble -> m ()
glMapGrid1d = ffiintdoubledoubleIOV glMapGrid1dFunPtr
glMapGrid1dFunPtr :: FunPtr (GLint -> GLdouble -> GLdouble -> IO ())
glMapGrid1dFunPtr = unsafePerformIO (getProcAddress "glMapGrid1d")
{-# NOINLINE glMapGrid1dFunPtr #-}
-- | Usage: @'glMapGrid1f' un u1 u2@
--
-- The parameter @u1@ is a @CoordF@.
--
-- The parameter @u2@ is a @CoordF@.
glMapGrid1f :: MonadIO m => GLint -> GLfloat -> GLfloat -> m ()
glMapGrid1f = ffiintfloatfloatIOV glMapGrid1fFunPtr
glMapGrid1fFunPtr :: FunPtr (GLint -> GLfloat -> GLfloat -> IO ())
glMapGrid1fFunPtr = unsafePerformIO (getProcAddress "glMapGrid1f")
{-# NOINLINE glMapGrid1fFunPtr #-}
-- | Usage: @'glMapGrid2d' un u1 u2 vn v1 v2@
--
-- The parameter @u1@ is a @CoordD@.
--
-- The parameter @u2@ is a @CoordD@.
--
-- The parameter @v1@ is a @CoordD@.
--
-- The parameter @v2@ is a @CoordD@.
glMapGrid2d :: MonadIO m => GLint -> GLdouble -> GLdouble -> GLint -> GLdouble -> GLdouble -> m ()
glMapGrid2d = ffiintdoubledoubleintdoubledoubleIOV glMapGrid2dFunPtr
glMapGrid2dFunPtr :: FunPtr (GLint -> GLdouble -> GLdouble -> GLint -> GLdouble -> GLdouble -> IO ())
glMapGrid2dFunPtr = unsafePerformIO (getProcAddress "glMapGrid2d")
{-# NOINLINE glMapGrid2dFunPtr #-}
-- | Usage: @'glMapGrid2f' un u1 u2 vn v1 v2@
--
-- The parameter @u1@ is a @CoordF@.
--
-- The parameter @u2@ is a @CoordF@.
--
-- The parameter @v1@ is a @CoordF@.
--
-- The parameter @v2@ is a @CoordF@.
glMapGrid2f :: MonadIO m => GLint -> GLfloat -> GLfloat -> GLint -> GLfloat -> GLfloat -> m ()
glMapGrid2f = ffiintfloatfloatintfloatfloatIOV glMapGrid2fFunPtr
glMapGrid2fFunPtr :: FunPtr (GLint -> GLfloat -> GLfloat -> GLint -> GLfloat -> GLfloat -> IO ())
glMapGrid2fFunPtr = unsafePerformIO (getProcAddress "glMapGrid2f")
{-# NOINLINE glMapGrid2fFunPtr #-}
-- | Usage: @'glMaterialf' face pname param@
--
-- The parameter @face@ is a @MaterialFace@, one of: 'Graphics.GL.Internal.Shared.GL_BACK', 'Graphics.GL.Internal.Shared.GL_FRONT', 'Graphics.GL.Internal.Shared.GL_FRONT_AND_BACK'.
--
-- The parameter @pname@ is a @MaterialParameter@, one of: 'Graphics.GL.Internal.Shared.GL_AMBIENT', 'Graphics.GL.Internal.Shared.GL_AMBIENT_AND_DIFFUSE', 'Graphics.GL.Internal.Shared.GL_COLOR_INDEXES', 'Graphics.GL.Internal.Shared.GL_DIFFUSE', 'Graphics.GL.Internal.Shared.GL_EMISSION', 'Graphics.GL.Internal.Shared.GL_SHININESS', 'Graphics.GL.Internal.Shared.GL_SPECULAR'.
--
-- The parameter @param@ is a @CheckedFloat32@.
glMaterialf :: MonadIO m => GLenum -> GLenum -> GLfloat -> m ()
glMaterialf = ffienumenumfloatIOV glMaterialfFunPtr
glMaterialfFunPtr :: FunPtr (GLenum -> GLenum -> GLfloat -> IO ())
glMaterialfFunPtr = unsafePerformIO (getProcAddress "glMaterialf")
{-# NOINLINE glMaterialfFunPtr #-}
-- | Usage: @'glMaterialfv' face pname params@
--
-- The parameter @face@ is a @MaterialFace@, one of: 'Graphics.GL.Internal.Shared.GL_BACK', 'Graphics.GL.Internal.Shared.GL_FRONT', 'Graphics.GL.Internal.Shared.GL_FRONT_AND_BACK'.
--
-- The parameter @pname@ is a @MaterialParameter@, one of: 'Graphics.GL.Internal.Shared.GL_AMBIENT', 'Graphics.GL.Internal.Shared.GL_AMBIENT_AND_DIFFUSE', 'Graphics.GL.Internal.Shared.GL_COLOR_INDEXES', 'Graphics.GL.Internal.Shared.GL_DIFFUSE', 'Graphics.GL.Internal.Shared.GL_EMISSION', 'Graphics.GL.Internal.Shared.GL_SHININESS', 'Graphics.GL.Internal.Shared.GL_SPECULAR'.
--
-- The parameter @params@ is a @CheckedFloat32@.
--
-- The length of @params@ should be @COMPSIZE(pname)@.
glMaterialfv :: MonadIO m => GLenum -> GLenum -> Ptr GLfloat -> m ()
glMaterialfv = ffienumenumPtrfloatIOV glMaterialfvFunPtr
glMaterialfvFunPtr :: FunPtr (GLenum -> GLenum -> Ptr GLfloat -> IO ())
glMaterialfvFunPtr = unsafePerformIO (getProcAddress "glMaterialfv")
{-# NOINLINE glMaterialfvFunPtr #-}
-- | Usage: @'glMateriali' face pname param@
--
-- The parameter @face@ is a @MaterialFace@, one of: 'Graphics.GL.Internal.Shared.GL_BACK', 'Graphics.GL.Internal.Shared.GL_FRONT', 'Graphics.GL.Internal.Shared.GL_FRONT_AND_BACK'.
--
-- The parameter @pname@ is a @MaterialParameter@, one of: 'Graphics.GL.Internal.Shared.GL_AMBIENT', 'Graphics.GL.Internal.Shared.GL_AMBIENT_AND_DIFFUSE', 'Graphics.GL.Internal.Shared.GL_COLOR_INDEXES', 'Graphics.GL.Internal.Shared.GL_DIFFUSE', 'Graphics.GL.Internal.Shared.GL_EMISSION', 'Graphics.GL.Internal.Shared.GL_SHININESS', 'Graphics.GL.Internal.Shared.GL_SPECULAR'.
--
-- The parameter @param@ is a @CheckedInt32@.
glMateriali :: MonadIO m => GLenum -> GLenum -> GLint -> m ()
glMateriali = ffienumenumintIOV glMaterialiFunPtr
glMaterialiFunPtr :: FunPtr (GLenum -> GLenum -> GLint -> IO ())
glMaterialiFunPtr = unsafePerformIO (getProcAddress "glMateriali")
{-# NOINLINE glMaterialiFunPtr #-}
-- | Usage: @'glMaterialiv' face pname params@
--
-- The parameter @face@ is a @MaterialFace@, one of: 'Graphics.GL.Internal.Shared.GL_BACK', 'Graphics.GL.Internal.Shared.GL_FRONT', 'Graphics.GL.Internal.Shared.GL_FRONT_AND_BACK'.
--
-- The parameter @pname@ is a @MaterialParameter@, one of: 'Graphics.GL.Internal.Shared.GL_AMBIENT', 'Graphics.GL.Internal.Shared.GL_AMBIENT_AND_DIFFUSE', 'Graphics.GL.Internal.Shared.GL_COLOR_INDEXES', 'Graphics.GL.Internal.Shared.GL_DIFFUSE', 'Graphics.GL.Internal.Shared.GL_EMISSION', 'Graphics.GL.Internal.Shared.GL_SHININESS', 'Graphics.GL.Internal.Shared.GL_SPECULAR'.
--
-- The parameter @params@ is a @CheckedInt32@.
--
-- The length of @params@ should be @COMPSIZE(pname)@.
glMaterialiv :: MonadIO m => GLenum -> GLenum -> Ptr GLint -> m ()
glMaterialiv = ffienumenumPtrintIOV glMaterialivFunPtr
glMaterialivFunPtr :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
glMaterialivFunPtr = unsafePerformIO (getProcAddress "glMaterialiv")
{-# NOINLINE glMaterialivFunPtr #-}
-- | Usage: @'glMatrixMode' mode@
--
-- The parameter @mode@ is a @MatrixMode@, one of: 'Graphics.GL.Internal.Shared.GL_MODELVIEW', 'Graphics.GL.Ext.EXT.VertexWeighting.GL_MODELVIEW0_EXT', 'Graphics.GL.Internal.Shared.GL_PROJECTION', 'Graphics.GL.Internal.Shared.GL_TEXTURE'.
glMatrixMode :: MonadIO m => GLenum -> m ()
glMatrixMode = ffienumIOV glMatrixModeFunPtr
glMatrixModeFunPtr :: FunPtr (GLenum -> IO ())
glMatrixModeFunPtr = unsafePerformIO (getProcAddress "glMatrixMode")
{-# NOINLINE glMatrixModeFunPtr #-}
-- | Usage: @'glMultMatrixd' m@
--
-- The length of @m@ should be @16@.
glMultMatrixd :: MonadIO m => Ptr GLdouble -> m ()
glMultMatrixd = ffiPtrdoubleIOV glMultMatrixdFunPtr
glMultMatrixdFunPtr :: FunPtr (Ptr GLdouble -> IO ())
glMultMatrixdFunPtr = unsafePerformIO (getProcAddress "glMultMatrixd")
{-# NOINLINE glMultMatrixdFunPtr #-}
-- | Usage: @'glMultMatrixf' m@
--
-- The length of @m@ should be @16@.
glMultMatrixf :: MonadIO m => Ptr GLfloat -> m ()
glMultMatrixf = ffiPtrfloatIOV glMultMatrixfFunPtr
glMultMatrixfFunPtr :: FunPtr (Ptr GLfloat -> IO ())
glMultMatrixfFunPtr = unsafePerformIO (getProcAddress "glMultMatrixf")
{-# NOINLINE glMultMatrixfFunPtr #-}
-- | Usage: @'glMultTransposeMatrixd' m@
--
-- The length of @m@ should be @16@.
glMultTransposeMatrixd :: MonadIO m => Ptr GLdouble -> m ()
glMultTransposeMatrixd = ffiPtrdoubleIOV glMultTransposeMatrixdFunPtr
glMultTransposeMatrixdFunPtr :: FunPtr (Ptr GLdouble -> IO ())
glMultTransposeMatrixdFunPtr = unsafePerformIO (getProcAddress "glMultTransposeMatrixd")
{-# NOINLINE glMultTransposeMatrixdFunPtr #-}
-- | Usage: @'glMultTransposeMatrixf' m@
--
-- The length of @m@ should be @16@.
glMultTransposeMatrixf :: MonadIO m => Ptr GLfloat -> m ()
glMultTransposeMatrixf = ffiPtrfloatIOV glMultTransposeMatrixfFunPtr
glMultTransposeMatrixfFunPtr :: FunPtr (Ptr GLfloat -> IO ())
glMultTransposeMatrixfFunPtr = unsafePerformIO (getProcAddress "glMultTransposeMatrixf")
{-# NOINLINE glMultTransposeMatrixfFunPtr #-}
-- | Usage: @'glMultiTexCoord1d' target s@
--
-- The parameter @target@ is a @TextureUnit@.
--
-- The parameter @s@ is a @CoordD@.
--
-- The vector equivalent of this command is 'Graphics.GL.Internal.Shared.glMultiTexCoord1dv'.
glMultiTexCoord1d :: MonadIO m => GLenum -> GLdouble -> m ()
glMultiTexCoord1d = ffienumdoubleIOV glMultiTexCoord1dFunPtr
glMultiTexCoord1dFunPtr :: FunPtr (GLenum -> GLdouble -> IO ())
glMultiTexCoord1dFunPtr = unsafePerformIO (getProcAddress "glMultiTexCoord1d")
{-# NOINLINE glMultiTexCoord1dFunPtr #-}
-- | Usage: @'glMultiTexCoord1dv' target v@
--
-- The parameter @target@ is a @TextureUnit@.
--
-- The parameter @v@ is a @CoordD@.
--
-- The length of @v@ should be @1@.
glMultiTexCoord1dv :: MonadIO m => GLenum -> Ptr GLdouble -> m ()
glMultiTexCoord1dv = ffienumPtrdoubleIOV glMultiTexCoord1dvFunPtr
glMultiTexCoord1dvFunPtr :: FunPtr (GLenum -> Ptr GLdouble -> IO ())
glMultiTexCoord1dvFunPtr = unsafePerformIO (getProcAddress "glMultiTexCoord1dv")
{-# NOINLINE glMultiTexCoord1dvFunPtr #-}
-- | Usage: @'glMultiTexCoord1f' target s@
--
-- The parameter @target@ is a @TextureUnit@.
--
-- The parameter @s@ is a @CoordF@.
--
-- The vector equivalent of this command is 'Graphics.GL.Internal.Shared.glMultiTexCoord1fv'.
glMultiTexCoord1f :: MonadIO m => GLenum -> GLfloat -> m ()
glMultiTexCoord1f = ffienumfloatIOV glMultiTexCoord1fFunPtr
glMultiTexCoord1fFunPtr :: FunPtr (GLenum -> GLfloat -> IO ())
glMultiTexCoord1fFunPtr = unsafePerformIO (getProcAddress "glMultiTexCoord1f")
{-# NOINLINE glMultiTexCoord1fFunPtr #-}
-- | Usage: @'glMultiTexCoord1fv' target v@
--
-- The parameter @target@ is a @TextureUnit@.
--
-- The parameter @v@ is a @CoordF@.
--
-- The length of @v@ should be @1@.
glMultiTexCoord1fv :: MonadIO m => GLenum -> Ptr GLfloat -> m ()
glMultiTexCoord1fv = ffienumPtrfloatIOV glMultiTexCoord1fvFunPtr
glMultiTexCoord1fvFunPtr :: FunPtr (GLenum -> Ptr GLfloat -> IO ())
glMultiTexCoord1fvFunPtr = unsafePerformIO (getProcAddress "glMultiTexCoord1fv")
{-# NOINLINE glMultiTexCoord1fvFunPtr #-}
-- | Usage: @'glMultiTexCoord1i' target s@
--
-- The parameter @target@ is a @TextureUnit@.
--
-- The parameter @s@ is a @CoordI@.
--
-- The vector equivalent of this command is 'Graphics.GL.Internal.Shared.glMultiTexCoord1iv'.
glMultiTexCoord1i :: MonadIO m => GLenum -> GLint -> m ()
glMultiTexCoord1i = ffienumintIOV glMultiTexCoord1iFunPtr
glMultiTexCoord1iFunPtr :: FunPtr (GLenum -> GLint -> IO ())
glMultiTexCoord1iFunPtr = unsafePerformIO (getProcAddress "glMultiTexCoord1i")
{-# NOINLINE glMultiTexCoord1iFunPtr #-}
-- | Usage: @'glMultiTexCoord1iv' target v@
--
-- The parameter @target@ is a @TextureUnit@.
--
-- The parameter @v@ is a @CoordI@.
--
-- The length of @v@ should be @1@.
glMultiTexCoord1iv :: MonadIO m => GLenum -> Ptr GLint -> m ()
glMultiTexCoord1iv = ffienumPtrintIOV glMultiTexCoord1ivFunPtr
glMultiTexCoord1ivFunPtr :: FunPtr (GLenum -> Ptr GLint -> IO ())
glMultiTexCoord1ivFunPtr = unsafePerformIO (getProcAddress "glMultiTexCoord1iv")
{-# NOINLINE glMultiTexCoord1ivFunPtr #-}
-- | Usage: @'glMultiTexCoord1s' target s@
--
-- The parameter @target@ is a @TextureUnit@.
--
-- The parameter @s@ is a @CoordS@.
--
-- The vector equivalent of this command is 'Graphics.GL.Internal.Shared.glMultiTexCoord1sv'.
glMultiTexCoord1s :: MonadIO m => GLenum -> GLshort -> m ()
glMultiTexCoord1s = ffienumshortIOV glMultiTexCoord1sFunPtr
glMultiTexCoord1sFunPtr :: FunPtr (GLenum -> GLshort -> IO ())
glMultiTexCoord1sFunPtr = unsafePerformIO (getProcAddress "glMultiTexCoord1s")
{-# NOINLINE glMultiTexCoord1sFunPtr #-}
-- | Usage: @'glMultiTexCoord1sv' target v@
--
-- The parameter @target@ is a @TextureUnit@.
--
-- The parameter @v@ is a @CoordS@.
--
-- The length of @v@ should be @1@.
glMultiTexCoord1sv :: MonadIO m => GLenum -> Ptr GLshort -> m ()
glMultiTexCoord1sv = ffienumPtrshortIOV glMultiTexCoord1svFunPtr
glMultiTexCoord1svFunPtr :: FunPtr (GLenum -> Ptr GLshort -> IO ())
glMultiTexCoord1svFunPtr = unsafePerformIO (getProcAddress "glMultiTexCoord1sv")
{-# NOINLINE glMultiTexCoord1svFunPtr #-}
-- | Usage: @'glMultiTexCoord2d' target s t@
--
-- The parameter @target@ is a @TextureUnit@.
--
-- The parameter @s@ is a @CoordD@.
--
-- The parameter @t@ is a @CoordD@.
--
-- The vector equivalent of this command is 'Graphics.GL.Internal.Shared.glMultiTexCoord2dv'.
glMultiTexCoord2d :: MonadIO m => GLenum -> GLdouble -> GLdouble -> m ()
glMultiTexCoord2d = ffienumdoubledoubleIOV glMultiTexCoord2dFunPtr
glMultiTexCoord2dFunPtr :: FunPtr (GLenum -> GLdouble -> GLdouble -> IO ())
glMultiTexCoord2dFunPtr = unsafePerformIO (getProcAddress "glMultiTexCoord2d")
{-# NOINLINE glMultiTexCoord2dFunPtr #-}
-- | Usage: @'glMultiTexCoord2dv' target v@
--
-- The parameter @target@ is a @TextureUnit@.
--
-- The parameter @v@ is a @CoordD@.
--
-- The length of @v@ should be @2@.
glMultiTexCoord2dv :: MonadIO m => GLenum -> Ptr GLdouble -> m ()
glMultiTexCoord2dv = ffienumPtrdoubleIOV glMultiTexCoord2dvFunPtr
glMultiTexCoord2dvFunPtr :: FunPtr (GLenum -> Ptr GLdouble -> IO ())
glMultiTexCoord2dvFunPtr = unsafePerformIO (getProcAddress "glMultiTexCoord2dv")
{-# NOINLINE glMultiTexCoord2dvFunPtr #-}
-- | Usage: @'glMultiTexCoord2f' target s t@
--
-- The parameter @target@ is a @TextureUnit@.
--
-- The parameter @s@ is a @CoordF@.
--
-- The parameter @t@ is a @CoordF@.
--
-- The vector equivalent of this command is 'Graphics.GL.Internal.Shared.glMultiTexCoord2fv'.
glMultiTexCoord2f :: MonadIO m => GLenum -> GLfloat -> GLfloat -> m ()
glMultiTexCoord2f = ffienumfloatfloatIOV glMultiTexCoord2fFunPtr
glMultiTexCoord2fFunPtr :: FunPtr (GLenum -> GLfloat -> GLfloat -> IO ())
glMultiTexCoord2fFunPtr = unsafePerformIO (getProcAddress "glMultiTexCoord2f")
{-# NOINLINE glMultiTexCoord2fFunPtr #-}
-- | Usage: @'glMultiTexCoord2fv' target v@
--
-- The parameter @target@ is a @TextureUnit@.
--
-- The parameter @v@ is a @CoordF@.
--
-- The length of @v@ should be @2@.
glMultiTexCoord2fv :: MonadIO m => GLenum -> Ptr GLfloat -> m ()
glMultiTexCoord2fv = ffienumPtrfloatIOV glMultiTexCoord2fvFunPtr
glMultiTexCoord2fvFunPtr :: FunPtr (GLenum -> Ptr GLfloat -> IO ())
glMultiTexCoord2fvFunPtr = unsafePerformIO (getProcAddress "glMultiTexCoord2fv")
{-# NOINLINE glMultiTexCoord2fvFunPtr #-}
-- | Usage: @'glMultiTexCoord2i' target s t@
--
-- The parameter @target@ is a @TextureUnit@.
--
-- The parameter @s@ is a @CoordI@.
--
-- The parameter @t@ is a @CoordI@.
--
-- The vector equivalent of this command is 'Graphics.GL.Internal.Shared.glMultiTexCoord2iv'.
glMultiTexCoord2i :: MonadIO m => GLenum -> GLint -> GLint -> m ()
glMultiTexCoord2i = ffienumintintIOV glMultiTexCoord2iFunPtr
glMultiTexCoord2iFunPtr :: FunPtr (GLenum -> GLint -> GLint -> IO ())
glMultiTexCoord2iFunPtr = unsafePerformIO (getProcAddress "glMultiTexCoord2i")
{-# NOINLINE glMultiTexCoord2iFunPtr #-}
-- | Usage: @'glMultiTexCoord2iv' target v@
--
-- The parameter @target@ is a @TextureUnit@.
--
-- The parameter @v@ is a @CoordI@.
--
-- The length of @v@ should be @2@.
glMultiTexCoord2iv :: MonadIO m => GLenum -> Ptr GLint -> m ()
glMultiTexCoord2iv = ffienumPtrintIOV glMultiTexCoord2ivFunPtr
glMultiTexCoord2ivFunPtr :: FunPtr (GLenum -> Ptr GLint -> IO ())
glMultiTexCoord2ivFunPtr = unsafePerformIO (getProcAddress "glMultiTexCoord2iv")
{-# NOINLINE glMultiTexCoord2ivFunPtr #-}
-- | Usage: @'glMultiTexCoord2s' target s t@
--
-- The parameter @target@ is a @TextureUnit@.
--
-- The parameter @s@ is a @CoordS@.
--
-- The parameter @t@ is a @CoordS@.
--
-- The vector equivalent of this command is 'Graphics.GL.Internal.Shared.glMultiTexCoord2sv'.
glMultiTexCoord2s :: MonadIO m => GLenum -> GLshort -> GLshort -> m ()
glMultiTexCoord2s = ffienumshortshortIOV glMultiTexCoord2sFunPtr
glMultiTexCoord2sFunPtr :: FunPtr (GLenum -> GLshort -> GLshort -> IO ())
glMultiTexCoord2sFunPtr = unsafePerformIO (getProcAddress "glMultiTexCoord2s")
{-# NOINLINE glMultiTexCoord2sFunPtr #-}
-- | Usage: @'glMultiTexCoord2sv' target v@
--
-- The parameter @target@ is a @TextureUnit@.
--
-- The parameter @v@ is a @CoordS@.
--
-- The length of @v@ should be @2@.
glMultiTexCoord2sv :: MonadIO m => GLenum -> Ptr GLshort -> m ()
glMultiTexCoord2sv = ffienumPtrshortIOV glMultiTexCoord2svFunPtr
glMultiTexCoord2svFunPtr :: FunPtr (GLenum -> Ptr GLshort -> IO ())
glMultiTexCoord2svFunPtr = unsafePerformIO (getProcAddress "glMultiTexCoord2sv")
{-# NOINLINE glMultiTexCoord2svFunPtr #-}
-- | Usage: @'glMultiTexCoord3d' target s t r@
--
-- The parameter @target@ is a @TextureUnit@.
--
-- The parameter @s@ is a @CoordD@.
--
-- The parameter @t@ is a @CoordD@.
--
-- The parameter @r@ is a @CoordD@.
--
-- The vector equivalent of this command is 'Graphics.GL.Internal.Shared.glMultiTexCoord3dv'.
glMultiTexCoord3d :: MonadIO m => GLenum -> GLdouble -> GLdouble -> GLdouble -> m ()
glMultiTexCoord3d = ffienumdoubledoubledoubleIOV glMultiTexCoord3dFunPtr
glMultiTexCoord3dFunPtr :: FunPtr (GLenum -> GLdouble -> GLdouble -> GLdouble -> IO ())
glMultiTexCoord3dFunPtr = unsafePerformIO (getProcAddress "glMultiTexCoord3d")
{-# NOINLINE glMultiTexCoord3dFunPtr #-}
-- | Usage: @'glMultiTexCoord3dv' target v@
--
-- The parameter @target@ is a @TextureUnit@.
--
-- The parameter @v@ is a @CoordD@.
--
-- The length of @v@ should be @3@.
glMultiTexCoord3dv :: MonadIO m => GLenum -> Ptr GLdouble -> m ()
glMultiTexCoord3dv = ffienumPtrdoubleIOV glMultiTexCoord3dvFunPtr
glMultiTexCoord3dvFunPtr :: FunPtr (GLenum -> Ptr GLdouble -> IO ())
glMultiTexCoord3dvFunPtr = unsafePerformIO (getProcAddress "glMultiTexCoord3dv")
{-# NOINLINE glMultiTexCoord3dvFunPtr #-}
-- | Usage: @'glMultiTexCoord3f' target s t r@
--
-- The parameter @target@ is a @TextureUnit@.
--
-- The parameter @s@ is a @CoordF@.
--
-- The parameter @t@ is a @CoordF@.
--
-- The parameter @r@ is a @CoordF@.
--
-- The vector equivalent of this command is 'Graphics.GL.Internal.Shared.glMultiTexCoord3fv'.
glMultiTexCoord3f :: MonadIO m => GLenum -> GLfloat -> GLfloat -> GLfloat -> m ()
glMultiTexCoord3f = ffienumfloatfloatfloatIOV glMultiTexCoord3fFunPtr
glMultiTexCoord3fFunPtr :: FunPtr (GLenum -> GLfloat -> GLfloat -> GLfloat -> IO ())
glMultiTexCoord3fFunPtr = unsafePerformIO (getProcAddress "glMultiTexCoord3f")
{-# NOINLINE glMultiTexCoord3fFunPtr #-}
-- | Usage: @'glMultiTexCoord3fv' target v@
--
-- The parameter @target@ is a @TextureUnit@.
--
-- The parameter @v@ is a @CoordF@.
--
-- The length of @v@ should be @3@.
glMultiTexCoord3fv :: MonadIO m => GLenum -> Ptr GLfloat -> m ()
glMultiTexCoord3fv = ffienumPtrfloatIOV glMultiTexCoord3fvFunPtr
glMultiTexCoord3fvFunPtr :: FunPtr (GLenum -> Ptr GLfloat -> IO ())
glMultiTexCoord3fvFunPtr = unsafePerformIO (getProcAddress "glMultiTexCoord3fv")
{-# NOINLINE glMultiTexCoord3fvFunPtr #-}
-- | Usage: @'glMultiTexCoord3i' target s t r@
--
-- The parameter @target@ is a @TextureUnit@.
--
-- The parameter @s@ is a @CoordI@.
--
-- The parameter @t@ is a @CoordI@.
--
-- The parameter @r@ is a @CoordI@.
--
-- The vector equivalent of this command is 'Graphics.GL.Internal.Shared.glMultiTexCoord3iv'.
glMultiTexCoord3i :: MonadIO m => GLenum -> GLint -> GLint -> GLint -> m ()
glMultiTexCoord3i = ffienumintintintIOV glMultiTexCoord3iFunPtr
glMultiTexCoord3iFunPtr :: FunPtr (GLenum -> GLint -> GLint -> GLint -> IO ())
glMultiTexCoord3iFunPtr = unsafePerformIO (getProcAddress "glMultiTexCoord3i")
{-# NOINLINE glMultiTexCoord3iFunPtr #-}
-- | Usage: @'glMultiTexCoord3iv' target v@
--
-- The parameter @target@ is a @TextureUnit@.
--
-- The parameter @v@ is a @CoordI@.
--
-- The length of @v@ should be @3@.
glMultiTexCoord3iv :: MonadIO m => GLenum -> Ptr GLint -> m ()
glMultiTexCoord3iv = ffienumPtrintIOV glMultiTexCoord3ivFunPtr
glMultiTexCoord3ivFunPtr :: FunPtr (GLenum -> Ptr GLint -> IO ())
glMultiTexCoord3ivFunPtr = unsafePerformIO (getProcAddress "glMultiTexCoord3iv")
{-# NOINLINE glMultiTexCoord3ivFunPtr #-}
-- | Usage: @'glMultiTexCoord3s' target s t r@
--
-- The parameter @target@ is a @TextureUnit@.
--
-- The parameter @s@ is a @CoordS@.
--
-- The parameter @t@ is a @CoordS@.
--
-- The parameter @r@ is a @CoordS@.
--
-- The vector equivalent of this command is 'Graphics.GL.Internal.Shared.glMultiTexCoord3sv'.
glMultiTexCoord3s :: MonadIO m => GLenum -> GLshort -> GLshort -> GLshort -> m ()
glMultiTexCoord3s = ffienumshortshortshortIOV glMultiTexCoord3sFunPtr
glMultiTexCoord3sFunPtr :: FunPtr (GLenum -> GLshort -> GLshort -> GLshort -> IO ())
glMultiTexCoord3sFunPtr = unsafePerformIO (getProcAddress "glMultiTexCoord3s")
{-# NOINLINE glMultiTexCoord3sFunPtr #-}
-- | Usage: @'glMultiTexCoord3sv' target v@
--
-- The parameter @target@ is a @TextureUnit@.
--
-- The parameter @v@ is a @CoordS@.
--
-- The length of @v@ should be @3@.
glMultiTexCoord3sv :: MonadIO m => GLenum -> Ptr GLshort -> m ()
glMultiTexCoord3sv = ffienumPtrshortIOV glMultiTexCoord3svFunPtr
glMultiTexCoord3svFunPtr :: FunPtr (GLenum -> Ptr GLshort -> IO ())
glMultiTexCoord3svFunPtr = unsafePerformIO (getProcAddress "glMultiTexCoord3sv")
{-# NOINLINE glMultiTexCoord3svFunPtr #-}
-- | Usage: @'glMultiTexCoord4d' target s t r q@
--
-- The parameter @target@ is a @TextureUnit@.
--
-- The parameter @s@ is a @CoordD@.
--
-- The parameter @t@ is a @CoordD@.
--
-- The parameter @r@ is a @CoordD@.
--
-- The parameter @q@ is a @CoordD@.
--
-- The vector equivalent of this command is 'Graphics.GL.Internal.Shared.glMultiTexCoord4dv'.
glMultiTexCoord4d :: MonadIO m => GLenum -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> m ()
glMultiTexCoord4d = ffienumdoubledoubledoubledoubleIOV glMultiTexCoord4dFunPtr
glMultiTexCoord4dFunPtr :: FunPtr (GLenum -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ())
glMultiTexCoord4dFunPtr = unsafePerformIO (getProcAddress "glMultiTexCoord4d")
{-# NOINLINE glMultiTexCoord4dFunPtr #-}
-- | Usage: @'glMultiTexCoord4dv' target v@
--
-- The parameter @target@ is a @TextureUnit@.
--
-- The parameter @v@ is a @CoordD@.
--
-- The length of @v@ should be @4@.
glMultiTexCoord4dv :: MonadIO m => GLenum -> Ptr GLdouble -> m ()
glMultiTexCoord4dv = ffienumPtrdoubleIOV glMultiTexCoord4dvFunPtr
glMultiTexCoord4dvFunPtr :: FunPtr (GLenum -> Ptr GLdouble -> IO ())
glMultiTexCoord4dvFunPtr = unsafePerformIO (getProcAddress "glMultiTexCoord4dv")
{-# NOINLINE glMultiTexCoord4dvFunPtr #-}
-- | Usage: @'glMultiTexCoord4f' target s t r q@
--
-- The parameter @target@ is a @TextureUnit@.
--
-- The parameter @s@ is a @CoordF@.
--
-- The parameter @t@ is a @CoordF@.
--
-- The parameter @r@ is a @CoordF@.
--
-- The parameter @q@ is a @CoordF@.
--
-- The vector equivalent of this command is 'Graphics.GL.Internal.Shared.glMultiTexCoord4fv'.
glMultiTexCoord4f :: MonadIO m => GLenum -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> m ()
glMultiTexCoord4f = ffienumfloatfloatfloatfloatIOV glMultiTexCoord4fFunPtr
glMultiTexCoord4fFunPtr :: FunPtr (GLenum -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
glMultiTexCoord4fFunPtr = unsafePerformIO (getProcAddress "glMultiTexCoord4f")
{-# NOINLINE glMultiTexCoord4fFunPtr #-}
-- | Usage: @'glMultiTexCoord4fv' target v@
--
-- The parameter @target@ is a @TextureUnit@.
--
-- The parameter @v@ is a @CoordF@.
--
-- The length of @v@ should be @4@.
glMultiTexCoord4fv :: MonadIO m => GLenum -> Ptr GLfloat -> m ()
glMultiTexCoord4fv = ffienumPtrfloatIOV glMultiTexCoord4fvFunPtr
glMultiTexCoord4fvFunPtr :: FunPtr (GLenum -> Ptr GLfloat -> IO ())
glMultiTexCoord4fvFunPtr = unsafePerformIO (getProcAddress "glMultiTexCoord4fv")
{-# NOINLINE glMultiTexCoord4fvFunPtr #-}
-- | Usage: @'glMultiTexCoord4i' target s t r q@
--
-- The parameter @target@ is a @TextureUnit@.
--
-- The parameter @s@ is a @CoordI@.
--
-- The parameter @t@ is a @CoordI@.
--
-- The parameter @r@ is a @CoordI@.
--
-- The parameter @q@ is a @CoordI@.
--
-- The vector equivalent of this command is 'Graphics.GL.Internal.Shared.glMultiTexCoord4iv'.
glMultiTexCoord4i :: MonadIO m => GLenum -> GLint -> GLint -> GLint -> GLint -> m ()
glMultiTexCoord4i = ffienumintintintintIOV glMultiTexCoord4iFunPtr
glMultiTexCoord4iFunPtr :: FunPtr (GLenum -> GLint -> GLint -> GLint -> GLint -> IO ())
glMultiTexCoord4iFunPtr = unsafePerformIO (getProcAddress "glMultiTexCoord4i")
{-# NOINLINE glMultiTexCoord4iFunPtr #-}
-- | Usage: @'glMultiTexCoord4iv' target v@
--
-- The parameter @target@ is a @TextureUnit@.
--
-- The parameter @v@ is a @CoordI@.
--
-- The length of @v@ should be @4@.
glMultiTexCoord4iv :: MonadIO m => GLenum -> Ptr GLint -> m ()
glMultiTexCoord4iv = ffienumPtrintIOV glMultiTexCoord4ivFunPtr
glMultiTexCoord4ivFunPtr :: FunPtr (GLenum -> Ptr GLint -> IO ())
glMultiTexCoord4ivFunPtr = unsafePerformIO (getProcAddress "glMultiTexCoord4iv")
{-# NOINLINE glMultiTexCoord4ivFunPtr #-}
-- | Usage: @'glMultiTexCoord4s' target s t r q@
--
-- The parameter @target@ is a @TextureUnit@.
--
-- The parameter @s@ is a @CoordS@.
--
-- The parameter @t@ is a @CoordS@.
--
-- The parameter @r@ is a @CoordS@.
--
-- The parameter @q@ is a @CoordS@.
--
-- The vector equivalent of this command is 'Graphics.GL.Internal.Shared.glMultiTexCoord4sv'.
glMultiTexCoord4s :: MonadIO m => GLenum -> GLshort -> GLshort -> GLshort -> GLshort -> m ()
glMultiTexCoord4s = ffienumshortshortshortshortIOV glMultiTexCoord4sFunPtr
glMultiTexCoord4sFunPtr :: FunPtr (GLenum -> GLshort -> GLshort -> GLshort -> GLshort -> IO ())
glMultiTexCoord4sFunPtr = unsafePerformIO (getProcAddress "glMultiTexCoord4s")
{-# NOINLINE glMultiTexCoord4sFunPtr #-}
-- | Usage: @'glMultiTexCoord4sv' target v@
--
-- The parameter @target@ is a @TextureUnit@.
--
-- The parameter @v@ is a @CoordS@.
--
-- The length of @v@ should be @4@.
glMultiTexCoord4sv :: MonadIO m => GLenum -> Ptr GLshort -> m ()
glMultiTexCoord4sv = ffienumPtrshortIOV glMultiTexCoord4svFunPtr
glMultiTexCoord4svFunPtr :: FunPtr (GLenum -> Ptr GLshort -> IO ())
glMultiTexCoord4svFunPtr = unsafePerformIO (getProcAddress "glMultiTexCoord4sv")
{-# NOINLINE glMultiTexCoord4svFunPtr #-}
-- | Usage: @'glNewList' list mode@
--
-- The parameter @list@ is a @List@.
--
-- The parameter @mode@ is a @ListMode@, one of: 'Graphics.GL.Internal.Shared.GL_COMPILE', 'Graphics.GL.Internal.Shared.GL_COMPILE_AND_EXECUTE'.
glNewList :: MonadIO m => GLuint -> GLenum -> m ()
glNewList = ffiuintenumIOV glNewListFunPtr
glNewListFunPtr :: FunPtr (GLuint -> GLenum -> IO ())
glNewListFunPtr = unsafePerformIO (getProcAddress "glNewList")
{-# NOINLINE glNewListFunPtr #-}
-- | Usage: @'glNormal3b' nx ny nz@
--
-- The vector equivalent of this command is 'Graphics.GL.Internal.Shared.glNormal3bv'.
glNormal3b :: MonadIO m => GLbyte -> GLbyte -> GLbyte -> m ()
glNormal3b = ffibytebytebyteIOV glNormal3bFunPtr
glNormal3bFunPtr :: FunPtr (GLbyte -> GLbyte -> GLbyte -> IO ())
glNormal3bFunPtr = unsafePerformIO (getProcAddress "glNormal3b")
{-# NOINLINE glNormal3bFunPtr #-}
-- | Usage: @'glNormal3bv' v@
--
-- The length of @v@ should be @3@.
glNormal3bv :: MonadIO m => Ptr GLbyte -> m ()
glNormal3bv = ffiPtrbyteIOV glNormal3bvFunPtr
glNormal3bvFunPtr :: FunPtr (Ptr GLbyte -> IO ())
glNormal3bvFunPtr = unsafePerformIO (getProcAddress "glNormal3bv")
{-# NOINLINE glNormal3bvFunPtr #-}
-- | Usage: @'glNormal3d' nx ny nz@
--
-- The parameter @nx@ is a @CoordD@.
--
-- The parameter @ny@ is a @CoordD@.
--
-- The parameter @nz@ is a @CoordD@.
--
-- The vector equivalent of this command is 'Graphics.GL.Internal.Shared.glNormal3dv'.
glNormal3d :: MonadIO m => GLdouble -> GLdouble -> GLdouble -> m ()
glNormal3d = ffidoubledoubledoubleIOV glNormal3dFunPtr
glNormal3dFunPtr :: FunPtr (GLdouble -> GLdouble -> GLdouble -> IO ())
glNormal3dFunPtr = unsafePerformIO (getProcAddress "glNormal3d")
{-# NOINLINE glNormal3dFunPtr #-}
-- | Usage: @'glNormal3dv' v@
--
-- The parameter @v@ is a @CoordD@.
--
-- The length of @v@ should be @3@.
glNormal3dv :: MonadIO m => Ptr GLdouble -> m ()
glNormal3dv = ffiPtrdoubleIOV glNormal3dvFunPtr
glNormal3dvFunPtr :: FunPtr (Ptr GLdouble -> IO ())
glNormal3dvFunPtr = unsafePerformIO (getProcAddress "glNormal3dv")
{-# NOINLINE glNormal3dvFunPtr #-}
-- | Usage: @'glNormal3f' nx ny nz@
--
-- The parameter @nx@ is a @CoordF@.
--
-- The parameter @ny@ is a @CoordF@.
--
-- The parameter @nz@ is a @CoordF@.
--
-- The vector equivalent of this command is 'Graphics.GL.Internal.Shared.glNormal3fv'.
glNormal3f :: MonadIO m => GLfloat -> GLfloat -> GLfloat -> m ()
glNormal3f = ffifloatfloatfloatIOV glNormal3fFunPtr
glNormal3fFunPtr :: FunPtr (GLfloat -> GLfloat -> GLfloat -> IO ())
glNormal3fFunPtr = unsafePerformIO (getProcAddress "glNormal3f")
{-# NOINLINE glNormal3fFunPtr #-}
-- | Usage: @'glNormal3fv' v@
--
-- The parameter @v@ is a @CoordF@.
--
-- The length of @v@ should be @3@.
glNormal3fv :: MonadIO m => Ptr GLfloat -> m ()
glNormal3fv = ffiPtrfloatIOV glNormal3fvFunPtr
glNormal3fvFunPtr :: FunPtr (Ptr GLfloat -> IO ())
glNormal3fvFunPtr = unsafePerformIO (getProcAddress "glNormal3fv")
{-# NOINLINE glNormal3fvFunPtr #-}
-- | Usage: @'glNormal3i' nx ny nz@
--
-- The vector equivalent of this command is 'Graphics.GL.Internal.Shared.glNormal3iv'.
glNormal3i :: MonadIO m => GLint -> GLint -> GLint -> m ()
glNormal3i = ffiintintintIOV glNormal3iFunPtr
glNormal3iFunPtr :: FunPtr (GLint -> GLint -> GLint -> IO ())
glNormal3iFunPtr = unsafePerformIO (getProcAddress "glNormal3i")
{-# NOINLINE glNormal3iFunPtr #-}
-- | Usage: @'glNormal3iv' v@
--
-- The length of @v@ should be @3@.
glNormal3iv :: MonadIO m => Ptr GLint -> m ()
glNormal3iv = ffiPtrintIOV glNormal3ivFunPtr
glNormal3ivFunPtr :: FunPtr (Ptr GLint -> IO ())
glNormal3ivFunPtr = unsafePerformIO (getProcAddress "glNormal3iv")
{-# NOINLINE glNormal3ivFunPtr #-}
-- | Usage: @'glNormal3s' nx ny nz@
--
-- The vector equivalent of this command is 'Graphics.GL.Internal.Shared.glNormal3sv'.
glNormal3s :: MonadIO m => GLshort -> GLshort -> GLshort -> m ()
glNormal3s = ffishortshortshortIOV glNormal3sFunPtr
glNormal3sFunPtr :: FunPtr (GLshort -> GLshort -> GLshort -> IO ())
glNormal3sFunPtr = unsafePerformIO (getProcAddress "glNormal3s")
{-# NOINLINE glNormal3sFunPtr #-}
-- | Usage: @'glNormal3sv' v@
--
-- The length of @v@ should be @3@.
glNormal3sv :: MonadIO m => Ptr GLshort -> m ()
glNormal3sv = ffiPtrshortIOV glNormal3svFunPtr
glNormal3svFunPtr :: FunPtr (Ptr GLshort -> IO ())
glNormal3svFunPtr = unsafePerformIO (getProcAddress "glNormal3sv")
{-# NOINLINE glNormal3svFunPtr #-}
-- | Usage: @'glNormalPointer' type stride pointer@
--
-- The parameter @type@ is a @NormalPointerType@, one of: 'Graphics.GL.Internal.Shared.GL_BYTE', 'Graphics.GL.Internal.Shared.GL_DOUBLE', 'Graphics.GL.Internal.Shared.GL_FLOAT', 'Graphics.GL.Internal.Shared.GL_INT', 'Graphics.GL.Internal.Shared.GL_SHORT'.
--
-- The length of @pointer@ should be @COMPSIZE(type,stride)@.
glNormalPointer :: MonadIO m => GLenum -> GLsizei -> Ptr () -> m ()
glNormalPointer = ffienumsizeiPtrVIOV glNormalPointerFunPtr
glNormalPointerFunPtr :: FunPtr (GLenum -> GLsizei -> Ptr () -> IO ())
glNormalPointerFunPtr = unsafePerformIO (getProcAddress "glNormalPointer")
{-# NOINLINE glNormalPointerFunPtr #-}
-- | Usage: @'glOrtho' left right bottom top zNear zFar@
glOrtho :: MonadIO m => GLdouble -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> m ()
glOrtho = ffidoubledoubledoubledoubledoubledoubleIOV glOrthoFunPtr
glOrthoFunPtr :: FunPtr (GLdouble -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ())
glOrthoFunPtr = unsafePerformIO (getProcAddress "glOrtho")
{-# NOINLINE glOrthoFunPtr #-}
-- | Usage: @'glPassThrough' token@
--
-- The parameter @token@ is a @FeedbackElement@.
glPassThrough :: MonadIO m => GLfloat -> m ()
glPassThrough = ffifloatIOV glPassThroughFunPtr
glPassThroughFunPtr :: FunPtr (GLfloat -> IO ())
glPassThroughFunPtr = unsafePerformIO (getProcAddress "glPassThrough")
{-# NOINLINE glPassThroughFunPtr #-}
-- | Usage: @'glPixelMapfv' map mapsize values@
--
-- The parameter @map@ is a @PixelMap@, one of: 'Graphics.GL.Internal.Shared.GL_PIXEL_MAP_A_TO_A', 'Graphics.GL.Internal.Shared.GL_PIXEL_MAP_B_TO_B', 'Graphics.GL.Internal.Shared.GL_PIXEL_MAP_G_TO_G', 'Graphics.GL.Internal.Shared.GL_PIXEL_MAP_I_TO_A', 'Graphics.GL.Internal.Shared.GL_PIXEL_MAP_I_TO_B', 'Graphics.GL.Internal.Shared.GL_PIXEL_MAP_I_TO_G', 'Graphics.GL.Internal.Shared.GL_PIXEL_MAP_I_TO_I', 'Graphics.GL.Internal.Shared.GL_PIXEL_MAP_I_TO_R', 'Graphics.GL.Internal.Shared.GL_PIXEL_MAP_R_TO_R', 'Graphics.GL.Internal.Shared.GL_PIXEL_MAP_S_TO_S'.
--
-- The parameter @mapsize@ is a @CheckedInt32@.
--
-- The length of @values@ should be @mapsize@.
glPixelMapfv :: MonadIO m => GLenum -> GLsizei -> Ptr GLfloat -> m ()
glPixelMapfv = ffienumsizeiPtrfloatIOV glPixelMapfvFunPtr
glPixelMapfvFunPtr :: FunPtr (GLenum -> GLsizei -> Ptr GLfloat -> IO ())
glPixelMapfvFunPtr = unsafePerformIO (getProcAddress "glPixelMapfv")
{-# NOINLINE glPixelMapfvFunPtr #-}
-- | Usage: @'glPixelMapuiv' map mapsize values@
--
-- The parameter @map@ is a @PixelMap@, one of: 'Graphics.GL.Internal.Shared.GL_PIXEL_MAP_A_TO_A', 'Graphics.GL.Internal.Shared.GL_PIXEL_MAP_B_TO_B', 'Graphics.GL.Internal.Shared.GL_PIXEL_MAP_G_TO_G', 'Graphics.GL.Internal.Shared.GL_PIXEL_MAP_I_TO_A', 'Graphics.GL.Internal.Shared.GL_PIXEL_MAP_I_TO_B', 'Graphics.GL.Internal.Shared.GL_PIXEL_MAP_I_TO_G', 'Graphics.GL.Internal.Shared.GL_PIXEL_MAP_I_TO_I', 'Graphics.GL.Internal.Shared.GL_PIXEL_MAP_I_TO_R', 'Graphics.GL.Internal.Shared.GL_PIXEL_MAP_R_TO_R', 'Graphics.GL.Internal.Shared.GL_PIXEL_MAP_S_TO_S'.
--
-- The parameter @mapsize@ is a @CheckedInt32@.
--
-- The length of @values@ should be @mapsize@.
glPixelMapuiv :: MonadIO m => GLenum -> GLsizei -> Ptr GLuint -> m ()
glPixelMapuiv = ffienumsizeiPtruintIOV glPixelMapuivFunPtr
glPixelMapuivFunPtr :: FunPtr (GLenum -> GLsizei -> Ptr GLuint -> IO ())
glPixelMapuivFunPtr = unsafePerformIO (getProcAddress "glPixelMapuiv")
{-# NOINLINE glPixelMapuivFunPtr #-}
-- | Usage: @'glPixelMapusv' map mapsize values@
--
-- The parameter @map@ is a @PixelMap@, one of: 'Graphics.GL.Internal.Shared.GL_PIXEL_MAP_A_TO_A', 'Graphics.GL.Internal.Shared.GL_PIXEL_MAP_B_TO_B', 'Graphics.GL.Internal.Shared.GL_PIXEL_MAP_G_TO_G', 'Graphics.GL.Internal.Shared.GL_PIXEL_MAP_I_TO_A', 'Graphics.GL.Internal.Shared.GL_PIXEL_MAP_I_TO_B', 'Graphics.GL.Internal.Shared.GL_PIXEL_MAP_I_TO_G', 'Graphics.GL.Internal.Shared.GL_PIXEL_MAP_I_TO_I', 'Graphics.GL.Internal.Shared.GL_PIXEL_MAP_I_TO_R', 'Graphics.GL.Internal.Shared.GL_PIXEL_MAP_R_TO_R', 'Graphics.GL.Internal.Shared.GL_PIXEL_MAP_S_TO_S'.
--
-- The parameter @mapsize@ is a @CheckedInt32@.
--
-- The length of @values@ should be @mapsize@.
glPixelMapusv :: MonadIO m => GLenum -> GLsizei -> Ptr GLushort -> m ()
glPixelMapusv = ffienumsizeiPtrushortIOV glPixelMapusvFunPtr
glPixelMapusvFunPtr :: FunPtr (GLenum -> GLsizei -> Ptr GLushort -> IO ())
glPixelMapusvFunPtr = unsafePerformIO (getProcAddress "glPixelMapusv")
{-# NOINLINE glPixelMapusvFunPtr #-}
-- | Usage: @'glPixelTransferf' pname param@
--
-- The parameter @pname@ is a @PixelTransferParameter@, one of: 'Graphics.GL.Internal.Shared.GL_ALPHA_BIAS', 'Graphics.GL.Internal.Shared.GL_ALPHA_SCALE', 'Graphics.GL.Internal.Shared.GL_BLUE_BIAS', 'Graphics.GL.Internal.Shared.GL_BLUE_SCALE', 'Graphics.GL.Internal.Shared.GL_DEPTH_BIAS', 'Graphics.GL.Internal.Shared.GL_DEPTH_SCALE', 'Graphics.GL.Internal.Shared.GL_GREEN_BIAS', 'Graphics.GL.Internal.Shared.GL_GREEN_SCALE', 'Graphics.GL.Internal.Shared.GL_INDEX_OFFSET', 'Graphics.GL.Internal.Shared.GL_INDEX_SHIFT', 'Graphics.GL.Internal.Shared.GL_MAP_COLOR', 'Graphics.GL.Internal.Shared.GL_MAP_STENCIL', 'Graphics.GL.Ext.ARB.Imaging.GL_POST_COLOR_MATRIX_ALPHA_BIAS', 'Graphics.GL.Ext.SGI.ColorMatrix.GL_POST_COLOR_MATRIX_ALPHA_BIAS_SGI', 'Graphics.GL.Ext.ARB.Imaging.GL_POST_COLOR_MATRIX_ALPHA_SCALE', 'Graphics.GL.Ext.SGI.ColorMatrix.GL_POST_COLOR_MATRIX_ALPHA_SCALE_SGI', 'Graphics.GL.Ext.ARB.Imaging.GL_POST_COLOR_MATRIX_BLUE_BIAS', 'Graphics.GL.Ext.SGI.ColorMatrix.GL_POST_COLOR_MATRIX_BLUE_BIAS_SGI', 'Graphics.GL.Ext.ARB.Imaging.GL_POST_COLOR_MATRIX_BLUE_SCALE', 'Graphics.GL.Ext.SGI.ColorMatrix.GL_POST_COLOR_MATRIX_BLUE_SCALE_SGI', 'Graphics.GL.Ext.ARB.Imaging.GL_POST_COLOR_MATRIX_GREEN_BIAS', 'Graphics.GL.Ext.SGI.ColorMatrix.GL_POST_COLOR_MATRIX_GREEN_BIAS_SGI', 'Graphics.GL.Ext.ARB.Imaging.GL_POST_COLOR_MATRIX_GREEN_SCALE', 'Graphics.GL.Ext.SGI.ColorMatrix.GL_POST_COLOR_MATRIX_GREEN_SCALE_SGI', 'Graphics.GL.Ext.ARB.Imaging.GL_POST_COLOR_MATRIX_RED_BIAS', 'Graphics.GL.Ext.SGI.ColorMatrix.GL_POST_COLOR_MATRIX_RED_BIAS_SGI', 'Graphics.GL.Ext.ARB.Imaging.GL_POST_COLOR_MATRIX_RED_SCALE', 'Graphics.GL.Ext.SGI.ColorMatrix.GL_POST_COLOR_MATRIX_RED_SCALE_SGI', 'Graphics.GL.Ext.ARB.Imaging.GL_POST_CONVOLUTION_ALPHA_BIAS', 'Graphics.GL.Ext.EXT.Convolution.GL_POST_CONVOLUTION_ALPHA_BIAS_EXT', 'Graphics.GL.Ext.ARB.Imaging.GL_POST_CONVOLUTION_ALPHA_SCALE', 'Graphics.GL.Ext.EXT.Convolution.GL_POST_CONVOLUTION_ALPHA_SCALE_EXT', 'Graphics.GL.Ext.ARB.Imaging.GL_POST_CONVOLUTION_BLUE_BIAS', 'Graphics.GL.Ext.EXT.Convolution.GL_POST_CONVOLUTION_BLUE_BIAS_EXT', 'Graphics.GL.Ext.ARB.Imaging.GL_POST_CONVOLUTION_BLUE_SCALE', 'Graphics.GL.Ext.EXT.Convolution.GL_POST_CONVOLUTION_BLUE_SCALE_EXT', 'Graphics.GL.Ext.ARB.Imaging.GL_POST_CONVOLUTION_GREEN_BIAS', 'Graphics.GL.Ext.EXT.Convolution.GL_POST_CONVOLUTION_GREEN_BIAS_EXT', 'Graphics.GL.Ext.ARB.Imaging.GL_POST_CONVOLUTION_GREEN_SCALE', 'Graphics.GL.Ext.EXT.Convolution.GL_POST_CONVOLUTION_GREEN_SCALE_EXT', 'Graphics.GL.Ext.ARB.Imaging.GL_POST_CONVOLUTION_RED_BIAS', 'Graphics.GL.Ext.EXT.Convolution.GL_POST_CONVOLUTION_RED_BIAS_EXT', 'Graphics.GL.Ext.ARB.Imaging.GL_POST_CONVOLUTION_RED_SCALE', 'Graphics.GL.Ext.EXT.Convolution.GL_POST_CONVOLUTION_RED_SCALE_EXT', 'Graphics.GL.Internal.Shared.GL_RED_BIAS', 'Graphics.GL.Internal.Shared.GL_RED_SCALE'.
--
-- The parameter @param@ is a @CheckedFloat32@.
glPixelTransferf :: MonadIO m => GLenum -> GLfloat -> m ()
glPixelTransferf = ffienumfloatIOV glPixelTransferfFunPtr
glPixelTransferfFunPtr :: FunPtr (GLenum -> GLfloat -> IO ())
glPixelTransferfFunPtr = unsafePerformIO (getProcAddress "glPixelTransferf")
{-# NOINLINE glPixelTransferfFunPtr #-}
-- | Usage: @'glPixelTransferi' pname param@
--
-- The parameter @pname@ is a @PixelTransferParameter@, one of: 'Graphics.GL.Internal.Shared.GL_ALPHA_BIAS', 'Graphics.GL.Internal.Shared.GL_ALPHA_SCALE', 'Graphics.GL.Internal.Shared.GL_BLUE_BIAS', 'Graphics.GL.Internal.Shared.GL_BLUE_SCALE', 'Graphics.GL.Internal.Shared.GL_DEPTH_BIAS', 'Graphics.GL.Internal.Shared.GL_DEPTH_SCALE', 'Graphics.GL.Internal.Shared.GL_GREEN_BIAS', 'Graphics.GL.Internal.Shared.GL_GREEN_SCALE', 'Graphics.GL.Internal.Shared.GL_INDEX_OFFSET', 'Graphics.GL.Internal.Shared.GL_INDEX_SHIFT', 'Graphics.GL.Internal.Shared.GL_MAP_COLOR', 'Graphics.GL.Internal.Shared.GL_MAP_STENCIL', 'Graphics.GL.Ext.ARB.Imaging.GL_POST_COLOR_MATRIX_ALPHA_BIAS', 'Graphics.GL.Ext.SGI.ColorMatrix.GL_POST_COLOR_MATRIX_ALPHA_BIAS_SGI', 'Graphics.GL.Ext.ARB.Imaging.GL_POST_COLOR_MATRIX_ALPHA_SCALE', 'Graphics.GL.Ext.SGI.ColorMatrix.GL_POST_COLOR_MATRIX_ALPHA_SCALE_SGI', 'Graphics.GL.Ext.ARB.Imaging.GL_POST_COLOR_MATRIX_BLUE_BIAS', 'Graphics.GL.Ext.SGI.ColorMatrix.GL_POST_COLOR_MATRIX_BLUE_BIAS_SGI', 'Graphics.GL.Ext.ARB.Imaging.GL_POST_COLOR_MATRIX_BLUE_SCALE', 'Graphics.GL.Ext.SGI.ColorMatrix.GL_POST_COLOR_MATRIX_BLUE_SCALE_SGI', 'Graphics.GL.Ext.ARB.Imaging.GL_POST_COLOR_MATRIX_GREEN_BIAS', 'Graphics.GL.Ext.SGI.ColorMatrix.GL_POST_COLOR_MATRIX_GREEN_BIAS_SGI', 'Graphics.GL.Ext.ARB.Imaging.GL_POST_COLOR_MATRIX_GREEN_SCALE', 'Graphics.GL.Ext.SGI.ColorMatrix.GL_POST_COLOR_MATRIX_GREEN_SCALE_SGI', 'Graphics.GL.Ext.ARB.Imaging.GL_POST_COLOR_MATRIX_RED_BIAS', 'Graphics.GL.Ext.SGI.ColorMatrix.GL_POST_COLOR_MATRIX_RED_BIAS_SGI', 'Graphics.GL.Ext.ARB.Imaging.GL_POST_COLOR_MATRIX_RED_SCALE', 'Graphics.GL.Ext.SGI.ColorMatrix.GL_POST_COLOR_MATRIX_RED_SCALE_SGI', 'Graphics.GL.Ext.ARB.Imaging.GL_POST_CONVOLUTION_ALPHA_BIAS', 'Graphics.GL.Ext.EXT.Convolution.GL_POST_CONVOLUTION_ALPHA_BIAS_EXT', 'Graphics.GL.Ext.ARB.Imaging.GL_POST_CONVOLUTION_ALPHA_SCALE', 'Graphics.GL.Ext.EXT.Convolution.GL_POST_CONVOLUTION_ALPHA_SCALE_EXT', 'Graphics.GL.Ext.ARB.Imaging.GL_POST_CONVOLUTION_BLUE_BIAS', 'Graphics.GL.Ext.EXT.Convolution.GL_POST_CONVOLUTION_BLUE_BIAS_EXT', 'Graphics.GL.Ext.ARB.Imaging.GL_POST_CONVOLUTION_BLUE_SCALE', 'Graphics.GL.Ext.EXT.Convolution.GL_POST_CONVOLUTION_BLUE_SCALE_EXT', 'Graphics.GL.Ext.ARB.Imaging.GL_POST_CONVOLUTION_GREEN_BIAS', 'Graphics.GL.Ext.EXT.Convolution.GL_POST_CONVOLUTION_GREEN_BIAS_EXT', 'Graphics.GL.Ext.ARB.Imaging.GL_POST_CONVOLUTION_GREEN_SCALE', 'Graphics.GL.Ext.EXT.Convolution.GL_POST_CONVOLUTION_GREEN_SCALE_EXT', 'Graphics.GL.Ext.ARB.Imaging.GL_POST_CONVOLUTION_RED_BIAS', 'Graphics.GL.Ext.EXT.Convolution.GL_POST_CONVOLUTION_RED_BIAS_EXT', 'Graphics.GL.Ext.ARB.Imaging.GL_POST_CONVOLUTION_RED_SCALE', 'Graphics.GL.Ext.EXT.Convolution.GL_POST_CONVOLUTION_RED_SCALE_EXT', 'Graphics.GL.Internal.Shared.GL_RED_BIAS', 'Graphics.GL.Internal.Shared.GL_RED_SCALE'.
--
-- The parameter @param@ is a @CheckedInt32@.
glPixelTransferi :: MonadIO m => GLenum -> GLint -> m ()
glPixelTransferi = ffienumintIOV glPixelTransferiFunPtr
glPixelTransferiFunPtr :: FunPtr (GLenum -> GLint -> IO ())
glPixelTransferiFunPtr = unsafePerformIO (getProcAddress "glPixelTransferi")
{-# NOINLINE glPixelTransferiFunPtr #-}
-- | Usage: @'glPixelZoom' xfactor yfactor@
glPixelZoom :: MonadIO m => GLfloat -> GLfloat -> m ()
glPixelZoom = ffifloatfloatIOV glPixelZoomFunPtr
glPixelZoomFunPtr :: FunPtr (GLfloat -> GLfloat -> IO ())
glPixelZoomFunPtr = unsafePerformIO (getProcAddress "glPixelZoom")
{-# NOINLINE glPixelZoomFunPtr #-}
-- | Usage: @'glPolygonStipple' mask@
--
-- The length of @mask@ should be @COMPSIZE()@.
glPolygonStipple :: MonadIO m => Ptr GLubyte -> m ()
glPolygonStipple = ffiPtrubyteIOV glPolygonStippleFunPtr
glPolygonStippleFunPtr :: FunPtr (Ptr GLubyte -> IO ())
glPolygonStippleFunPtr = unsafePerformIO (getProcAddress "glPolygonStipple")
{-# NOINLINE glPolygonStippleFunPtr #-}
-- | Usage: @'glPopAttrib'@
glPopAttrib :: MonadIO m => m ()
glPopAttrib = ffiIOV glPopAttribFunPtr
glPopAttribFunPtr :: FunPtr (IO ())
glPopAttribFunPtr = unsafePerformIO (getProcAddress "glPopAttrib")
{-# NOINLINE glPopAttribFunPtr #-}
-- | Usage: @'glPopClientAttrib'@
glPopClientAttrib :: MonadIO m => m ()
glPopClientAttrib = ffiIOV glPopClientAttribFunPtr
glPopClientAttribFunPtr :: FunPtr (IO ())
glPopClientAttribFunPtr = unsafePerformIO (getProcAddress "glPopClientAttrib")
{-# NOINLINE glPopClientAttribFunPtr #-}
-- | Usage: @'glPopMatrix'@
glPopMatrix :: MonadIO m => m ()
glPopMatrix = ffiIOV glPopMatrixFunPtr
glPopMatrixFunPtr :: FunPtr (IO ())
glPopMatrixFunPtr = unsafePerformIO (getProcAddress "glPopMatrix")
{-# NOINLINE glPopMatrixFunPtr #-}
-- | Usage: @'glPopName'@
glPopName :: MonadIO m => m ()
glPopName = ffiIOV glPopNameFunPtr
glPopNameFunPtr :: FunPtr (IO ())
glPopNameFunPtr = unsafePerformIO (getProcAddress "glPopName")
{-# NOINLINE glPopNameFunPtr #-}
-- | Usage: @'glPrioritizeTextures' n textures priorities@
--
-- The parameter @textures@ is a @Texture@.
--
-- The length of @textures@ should be @n@.
--
-- The length of @priorities@ should be @n@.
glPrioritizeTextures :: MonadIO m => GLsizei -> Ptr GLuint -> Ptr GLfloat -> m ()
glPrioritizeTextures = ffisizeiPtruintPtrfloatIOV glPrioritizeTexturesFunPtr
glPrioritizeTexturesFunPtr :: FunPtr (GLsizei -> Ptr GLuint -> Ptr GLfloat -> IO ())
glPrioritizeTexturesFunPtr = unsafePerformIO (getProcAddress "glPrioritizeTextures")
{-# NOINLINE glPrioritizeTexturesFunPtr #-}
-- | Usage: @'glPushAttrib' mask@
--
-- The parameter @mask@ is a @AttribMask@, one of: 'Graphics.GL.Internal.Shared.GL_ACCUM_BUFFER_BIT', 'Graphics.GL.Internal.Shared.GL_ALL_ATTRIB_BITS', 'Graphics.GL.Internal.Shared.GL_COLOR_BUFFER_BIT', 'Graphics.GL.Internal.Shared.GL_CURRENT_BIT', 'Graphics.GL.Internal.Shared.GL_DEPTH_BUFFER_BIT', 'Graphics.GL.Internal.Shared.GL_ENABLE_BIT', 'Graphics.GL.Internal.Shared.GL_EVAL_BIT', 'Graphics.GL.Internal.Shared.GL_FOG_BIT', 'Graphics.GL.Internal.Shared.GL_HINT_BIT', 'Graphics.GL.Internal.Shared.GL_LIGHTING_BIT', 'Graphics.GL.Internal.Shared.GL_LINE_BIT', 'Graphics.GL.Internal.Shared.GL_LIST_BIT', 'Graphics.GL.Internal.Shared.GL_MULTISAMPLE_BIT', 'Graphics.GL.Ext.ThreeDFX.Multisample.GL_MULTISAMPLE_BIT_3DFX', 'Graphics.GL.Ext.ARB.Multisample.GL_MULTISAMPLE_BIT_ARB', 'Graphics.GL.Ext.EXT.Multisample.GL_MULTISAMPLE_BIT_EXT', 'Graphics.GL.Internal.Shared.GL_PIXEL_MODE_BIT', 'Graphics.GL.Internal.Shared.GL_POINT_BIT', 'Graphics.GL.Internal.Shared.GL_POLYGON_BIT', 'Graphics.GL.Internal.Shared.GL_POLYGON_STIPPLE_BIT', 'Graphics.GL.Internal.Shared.GL_SCISSOR_BIT', 'Graphics.GL.Internal.Shared.GL_STENCIL_BUFFER_BIT', 'Graphics.GL.Internal.Shared.GL_TEXTURE_BIT', 'Graphics.GL.Internal.Shared.GL_TRANSFORM_BIT', 'Graphics.GL.Internal.Shared.GL_VIEWPORT_BIT'.
glPushAttrib :: MonadIO m => GLbitfield -> m ()
glPushAttrib = ffibitfieldIOV glPushAttribFunPtr
glPushAttribFunPtr :: FunPtr (GLbitfield -> IO ())
glPushAttribFunPtr = unsafePerformIO (getProcAddress "glPushAttrib")
{-# NOINLINE glPushAttribFunPtr #-}
-- | Usage: @'glPushClientAttrib' mask@
--
-- The parameter @mask@ is a @ClientAttribMask@, one of: 'Graphics.GL.Internal.Shared.GL_CLIENT_ALL_ATTRIB_BITS', 'Graphics.GL.Internal.Shared.GL_CLIENT_PIXEL_STORE_BIT', 'Graphics.GL.Internal.Shared.GL_CLIENT_VERTEX_ARRAY_BIT'.
glPushClientAttrib :: MonadIO m => GLbitfield -> m ()
glPushClientAttrib = ffibitfieldIOV glPushClientAttribFunPtr
glPushClientAttribFunPtr :: FunPtr (GLbitfield -> IO ())
glPushClientAttribFunPtr = unsafePerformIO (getProcAddress "glPushClientAttrib")
{-# NOINLINE glPushClientAttribFunPtr #-}
-- | Usage: @'glPushMatrix'@
glPushMatrix :: MonadIO m => m ()
glPushMatrix = ffiIOV glPushMatrixFunPtr
glPushMatrixFunPtr :: FunPtr (IO ())
glPushMatrixFunPtr = unsafePerformIO (getProcAddress "glPushMatrix")
{-# NOINLINE glPushMatrixFunPtr #-}
-- | Usage: @'glPushName' name@
--
-- The parameter @name@ is a @SelectName@.
glPushName :: MonadIO m => GLuint -> m ()
glPushName = ffiuintIOV glPushNameFunPtr
glPushNameFunPtr :: FunPtr (GLuint -> IO ())
glPushNameFunPtr = unsafePerformIO (getProcAddress "glPushName")
{-# NOINLINE glPushNameFunPtr #-}
-- | Usage: @'glRasterPos2d' x y@
--
-- The parameter @x@ is a @CoordD@.
--
-- The parameter @y@ is a @CoordD@.
--
-- The vector equivalent of this command is 'Graphics.GL.Internal.Shared.glRasterPos2dv'.
glRasterPos2d :: MonadIO m => GLdouble -> GLdouble -> m ()
glRasterPos2d = ffidoubledoubleIOV glRasterPos2dFunPtr
glRasterPos2dFunPtr :: FunPtr (GLdouble -> GLdouble -> IO ())
glRasterPos2dFunPtr = unsafePerformIO (getProcAddress "glRasterPos2d")
{-# NOINLINE glRasterPos2dFunPtr #-}
-- | Usage: @'glRasterPos2dv' v@
--
-- The parameter @v@ is a @CoordD@.
--
-- The length of @v@ should be @2@.
glRasterPos2dv :: MonadIO m => Ptr GLdouble -> m ()
glRasterPos2dv = ffiPtrdoubleIOV glRasterPos2dvFunPtr
glRasterPos2dvFunPtr :: FunPtr (Ptr GLdouble -> IO ())
glRasterPos2dvFunPtr = unsafePerformIO (getProcAddress "glRasterPos2dv")
{-# NOINLINE glRasterPos2dvFunPtr #-}
-- | Usage: @'glRasterPos2f' x y@
--
-- The parameter @x@ is a @CoordF@.
--
-- The parameter @y@ is a @CoordF@.
--
-- The vector equivalent of this command is 'Graphics.GL.Internal.Shared.glRasterPos2fv'.
glRasterPos2f :: MonadIO m => GLfloat -> GLfloat -> m ()
glRasterPos2f = ffifloatfloatIOV glRasterPos2fFunPtr
glRasterPos2fFunPtr :: FunPtr (GLfloat -> GLfloat -> IO ())
glRasterPos2fFunPtr = unsafePerformIO (getProcAddress "glRasterPos2f")
{-# NOINLINE glRasterPos2fFunPtr #-}
-- | Usage: @'glRasterPos2fv' v@
--
-- The parameter @v@ is a @CoordF@.
--
-- The length of @v@ should be @2@.
glRasterPos2fv :: MonadIO m => Ptr GLfloat -> m ()
glRasterPos2fv = ffiPtrfloatIOV glRasterPos2fvFunPtr
glRasterPos2fvFunPtr :: FunPtr (Ptr GLfloat -> IO ())
glRasterPos2fvFunPtr = unsafePerformIO (getProcAddress "glRasterPos2fv")
{-# NOINLINE glRasterPos2fvFunPtr #-}
-- | Usage: @'glRasterPos2i' x y@
--
-- The parameter @x@ is a @CoordI@.
--
-- The parameter @y@ is a @CoordI@.
--
-- The vector equivalent of this command is 'Graphics.GL.Internal.Shared.glRasterPos2iv'.
glRasterPos2i :: MonadIO m => GLint -> GLint -> m ()
glRasterPos2i = ffiintintIOV glRasterPos2iFunPtr
glRasterPos2iFunPtr :: FunPtr (GLint -> GLint -> IO ())
glRasterPos2iFunPtr = unsafePerformIO (getProcAddress "glRasterPos2i")
{-# NOINLINE glRasterPos2iFunPtr #-}
-- | Usage: @'glRasterPos2iv' v@
--
-- The parameter @v@ is a @CoordI@.
--
-- The length of @v@ should be @2@.
glRasterPos2iv :: MonadIO m => Ptr GLint -> m ()
glRasterPos2iv = ffiPtrintIOV glRasterPos2ivFunPtr
glRasterPos2ivFunPtr :: FunPtr (Ptr GLint -> IO ())
glRasterPos2ivFunPtr = unsafePerformIO (getProcAddress "glRasterPos2iv")
{-# NOINLINE glRasterPos2ivFunPtr #-}
-- | Usage: @'glRasterPos2s' x y@
--
-- The parameter @x@ is a @CoordS@.
--
-- The parameter @y@ is a @CoordS@.
--
-- The vector equivalent of this command is 'Graphics.GL.Internal.Shared.glRasterPos2sv'.
glRasterPos2s :: MonadIO m => GLshort -> GLshort -> m ()
glRasterPos2s = ffishortshortIOV glRasterPos2sFunPtr
glRasterPos2sFunPtr :: FunPtr (GLshort -> GLshort -> IO ())
glRasterPos2sFunPtr = unsafePerformIO (getProcAddress "glRasterPos2s")
{-# NOINLINE glRasterPos2sFunPtr #-}
-- | Usage: @'glRasterPos2sv' v@
--
-- The parameter @v@ is a @CoordS@.
--
-- The length of @v@ should be @2@.
glRasterPos2sv :: MonadIO m => Ptr GLshort -> m ()
glRasterPos2sv = ffiPtrshortIOV glRasterPos2svFunPtr
glRasterPos2svFunPtr :: FunPtr (Ptr GLshort -> IO ())
glRasterPos2svFunPtr = unsafePerformIO (getProcAddress "glRasterPos2sv")
{-# NOINLINE glRasterPos2svFunPtr #-}
-- | Usage: @'glRasterPos3d' x y z@
--
-- The parameter @x@ is a @CoordD@.
--
-- The parameter @y@ is a @CoordD@.
--
-- The parameter @z@ is a @CoordD@.
--
-- The vector equivalent of this command is 'Graphics.GL.Internal.Shared.glRasterPos3dv'.
glRasterPos3d :: MonadIO m => GLdouble -> GLdouble -> GLdouble -> m ()
glRasterPos3d = ffidoubledoubledoubleIOV glRasterPos3dFunPtr
glRasterPos3dFunPtr :: FunPtr (GLdouble -> GLdouble -> GLdouble -> IO ())
glRasterPos3dFunPtr = unsafePerformIO (getProcAddress "glRasterPos3d")
{-# NOINLINE glRasterPos3dFunPtr #-}
-- | Usage: @'glRasterPos3dv' v@
--
-- The parameter @v@ is a @CoordD@.
--
-- The length of @v@ should be @3@.
glRasterPos3dv :: MonadIO m => Ptr GLdouble -> m ()
glRasterPos3dv = ffiPtrdoubleIOV glRasterPos3dvFunPtr
glRasterPos3dvFunPtr :: FunPtr (Ptr GLdouble -> IO ())
glRasterPos3dvFunPtr = unsafePerformIO (getProcAddress "glRasterPos3dv")
{-# NOINLINE glRasterPos3dvFunPtr #-}
-- | Usage: @'glRasterPos3f' x y z@
--
-- The parameter @x@ is a @CoordF@.
--
-- The parameter @y@ is a @CoordF@.
--
-- The parameter @z@ is a @CoordF@.
--
-- The vector equivalent of this command is 'Graphics.GL.Internal.Shared.glRasterPos3fv'.
glRasterPos3f :: MonadIO m => GLfloat -> GLfloat -> GLfloat -> m ()
glRasterPos3f = ffifloatfloatfloatIOV glRasterPos3fFunPtr
glRasterPos3fFunPtr :: FunPtr (GLfloat -> GLfloat -> GLfloat -> IO ())
glRasterPos3fFunPtr = unsafePerformIO (getProcAddress "glRasterPos3f")
{-# NOINLINE glRasterPos3fFunPtr #-}
-- | Usage: @'glRasterPos3fv' v@
--
-- The parameter @v@ is a @CoordF@.
--
-- The length of @v@ should be @3@.
glRasterPos3fv :: MonadIO m => Ptr GLfloat -> m ()
glRasterPos3fv = ffiPtrfloatIOV glRasterPos3fvFunPtr
glRasterPos3fvFunPtr :: FunPtr (Ptr GLfloat -> IO ())
glRasterPos3fvFunPtr = unsafePerformIO (getProcAddress "glRasterPos3fv")
{-# NOINLINE glRasterPos3fvFunPtr #-}
-- | Usage: @'glRasterPos3i' x y z@
--
-- The parameter @x@ is a @CoordI@.
--
-- The parameter @y@ is a @CoordI@.
--
-- The parameter @z@ is a @CoordI@.
--
-- The vector equivalent of this command is 'Graphics.GL.Internal.Shared.glRasterPos3iv'.
glRasterPos3i :: MonadIO m => GLint -> GLint -> GLint -> m ()
glRasterPos3i = ffiintintintIOV glRasterPos3iFunPtr
glRasterPos3iFunPtr :: FunPtr (GLint -> GLint -> GLint -> IO ())
glRasterPos3iFunPtr = unsafePerformIO (getProcAddress "glRasterPos3i")
{-# NOINLINE glRasterPos3iFunPtr #-}
-- | Usage: @'glRasterPos3iv' v@
--
-- The parameter @v@ is a @CoordI@.
--
-- The length of @v@ should be @3@.
glRasterPos3iv :: MonadIO m => Ptr GLint -> m ()
glRasterPos3iv = ffiPtrintIOV glRasterPos3ivFunPtr
glRasterPos3ivFunPtr :: FunPtr (Ptr GLint -> IO ())
glRasterPos3ivFunPtr = unsafePerformIO (getProcAddress "glRasterPos3iv")
{-# NOINLINE glRasterPos3ivFunPtr #-}
-- | Usage: @'glRasterPos3s' x y z@
--
-- The parameter @x@ is a @CoordS@.
--
-- The parameter @y@ is a @CoordS@.
--
-- The parameter @z@ is a @CoordS@.
--
-- The vector equivalent of this command is 'Graphics.GL.Internal.Shared.glRasterPos3sv'.
glRasterPos3s :: MonadIO m => GLshort -> GLshort -> GLshort -> m ()
glRasterPos3s = ffishortshortshortIOV glRasterPos3sFunPtr
glRasterPos3sFunPtr :: FunPtr (GLshort -> GLshort -> GLshort -> IO ())
glRasterPos3sFunPtr = unsafePerformIO (getProcAddress "glRasterPos3s")
{-# NOINLINE glRasterPos3sFunPtr #-}
-- | Usage: @'glRasterPos3sv' v@
--
-- The parameter @v@ is a @CoordS@.
--
-- The length of @v@ should be @3@.
glRasterPos3sv :: MonadIO m => Ptr GLshort -> m ()
glRasterPos3sv = ffiPtrshortIOV glRasterPos3svFunPtr
glRasterPos3svFunPtr :: FunPtr (Ptr GLshort -> IO ())
glRasterPos3svFunPtr = unsafePerformIO (getProcAddress "glRasterPos3sv")
{-# NOINLINE glRasterPos3svFunPtr #-}
-- | Usage: @'glRasterPos4d' x y z w@
--
-- The parameter @x@ is a @CoordD@.
--
-- The parameter @y@ is a @CoordD@.
--
-- The parameter @z@ is a @CoordD@.
--
-- The parameter @w@ is a @CoordD@.
--
-- The vector equivalent of this command is 'Graphics.GL.Internal.Shared.glRasterPos4dv'.
glRasterPos4d :: MonadIO m => GLdouble -> GLdouble -> GLdouble -> GLdouble -> m ()
glRasterPos4d = ffidoubledoubledoubledoubleIOV glRasterPos4dFunPtr
glRasterPos4dFunPtr :: FunPtr (GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ())
glRasterPos4dFunPtr = unsafePerformIO (getProcAddress "glRasterPos4d")
{-# NOINLINE glRasterPos4dFunPtr #-}
-- | Usage: @'glRasterPos4dv' v@
--
-- The parameter @v@ is a @CoordD@.
--
-- The length of @v@ should be @4@.
glRasterPos4dv :: MonadIO m => Ptr GLdouble -> m ()
glRasterPos4dv = ffiPtrdoubleIOV glRasterPos4dvFunPtr
glRasterPos4dvFunPtr :: FunPtr (Ptr GLdouble -> IO ())
glRasterPos4dvFunPtr = unsafePerformIO (getProcAddress "glRasterPos4dv")
{-# NOINLINE glRasterPos4dvFunPtr #-}
-- | Usage: @'glRasterPos4f' x y z w@
--
-- The parameter @x@ is a @CoordF@.
--
-- The parameter @y@ is a @CoordF@.
--
-- The parameter @z@ is a @CoordF@.
--
-- The parameter @w@ is a @CoordF@.
--
-- The vector equivalent of this command is 'Graphics.GL.Internal.Shared.glRasterPos4fv'.
glRasterPos4f :: MonadIO m => GLfloat -> GLfloat -> GLfloat -> GLfloat -> m ()
glRasterPos4f = ffifloatfloatfloatfloatIOV glRasterPos4fFunPtr
glRasterPos4fFunPtr :: FunPtr (GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
glRasterPos4fFunPtr = unsafePerformIO (getProcAddress "glRasterPos4f")
{-# NOINLINE glRasterPos4fFunPtr #-}
-- | Usage: @'glRasterPos4fv' v@
--
-- The parameter @v@ is a @CoordF@.
--
-- The length of @v@ should be @4@.
glRasterPos4fv :: MonadIO m => Ptr GLfloat -> m ()
glRasterPos4fv = ffiPtrfloatIOV glRasterPos4fvFunPtr
glRasterPos4fvFunPtr :: FunPtr (Ptr GLfloat -> IO ())
glRasterPos4fvFunPtr = unsafePerformIO (getProcAddress "glRasterPos4fv")
{-# NOINLINE glRasterPos4fvFunPtr #-}
-- | Usage: @'glRasterPos4i' x y z w@
--
-- The parameter @x@ is a @CoordI@.
--
-- The parameter @y@ is a @CoordI@.
--
-- The parameter @z@ is a @CoordI@.
--
-- The parameter @w@ is a @CoordI@.
--
-- The vector equivalent of this command is 'Graphics.GL.Internal.Shared.glRasterPos4iv'.
glRasterPos4i :: MonadIO m => GLint -> GLint -> GLint -> GLint -> m ()
glRasterPos4i = ffiintintintintIOV glRasterPos4iFunPtr
glRasterPos4iFunPtr :: FunPtr (GLint -> GLint -> GLint -> GLint -> IO ())
glRasterPos4iFunPtr = unsafePerformIO (getProcAddress "glRasterPos4i")
{-# NOINLINE glRasterPos4iFunPtr #-}
-- | Usage: @'glRasterPos4iv' v@
--
-- The parameter @v@ is a @CoordI@.
--
-- The length of @v@ should be @4@.
glRasterPos4iv :: MonadIO m => Ptr GLint -> m ()
glRasterPos4iv = ffiPtrintIOV glRasterPos4ivFunPtr
glRasterPos4ivFunPtr :: FunPtr (Ptr GLint -> IO ())
glRasterPos4ivFunPtr = unsafePerformIO (getProcAddress "glRasterPos4iv")
{-# NOINLINE glRasterPos4ivFunPtr #-}
-- | Usage: @'glRasterPos4s' x y z w@
--
-- The parameter @x@ is a @CoordS@.
--
-- The parameter @y@ is a @CoordS@.
--
-- The parameter @z@ is a @CoordS@.
--
-- The parameter @w@ is a @CoordS@.
--
-- The vector equivalent of this command is 'Graphics.GL.Internal.Shared.glRasterPos4sv'.
glRasterPos4s :: MonadIO m => GLshort -> GLshort -> GLshort -> GLshort -> m ()
glRasterPos4s = ffishortshortshortshortIOV glRasterPos4sFunPtr
glRasterPos4sFunPtr :: FunPtr (GLshort -> GLshort -> GLshort -> GLshort -> IO ())
glRasterPos4sFunPtr = unsafePerformIO (getProcAddress "glRasterPos4s")
{-# NOINLINE glRasterPos4sFunPtr #-}
-- | Usage: @'glRasterPos4sv' v@
--
-- The parameter @v@ is a @CoordS@.
--
-- The length of @v@ should be @4@.
glRasterPos4sv :: MonadIO m => Ptr GLshort -> m ()
glRasterPos4sv = ffiPtrshortIOV glRasterPos4svFunPtr
glRasterPos4svFunPtr :: FunPtr (Ptr GLshort -> IO ())
glRasterPos4svFunPtr = unsafePerformIO (getProcAddress "glRasterPos4sv")
{-# NOINLINE glRasterPos4svFunPtr #-}
-- | Usage: @'glRectd' x1 y1 x2 y2@
--
-- The parameter @x1@ is a @CoordD@.
--
-- The parameter @y1@ is a @CoordD@.
--
-- The parameter @x2@ is a @CoordD@.
--
-- The parameter @y2@ is a @CoordD@.
--
-- The vector equivalent of this command is 'Graphics.GL.Internal.Shared.glRectdv'.
glRectd :: MonadIO m => GLdouble -> GLdouble -> GLdouble -> GLdouble -> m ()
glRectd = ffidoubledoubledoubledoubleIOV glRectdFunPtr
glRectdFunPtr :: FunPtr (GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ())
glRectdFunPtr = unsafePerformIO (getProcAddress "glRectd")
{-# NOINLINE glRectdFunPtr #-}
-- | Usage: @'glRectdv' v1 v2@
--
-- The parameter @v1@ is a @CoordD@.
--
-- The parameter @v2@ is a @CoordD@.
--
-- The length of @v1@ should be @2@.
--
-- The length of @v2@ should be @2@.
glRectdv :: MonadIO m => Ptr GLdouble -> Ptr GLdouble -> m ()
glRectdv = ffiPtrdoublePtrdoubleIOV glRectdvFunPtr
glRectdvFunPtr :: FunPtr (Ptr GLdouble -> Ptr GLdouble -> IO ())
glRectdvFunPtr = unsafePerformIO (getProcAddress "glRectdv")
{-# NOINLINE glRectdvFunPtr #-}
-- | Usage: @'glRectf' x1 y1 x2 y2@
--
-- The parameter @x1@ is a @CoordF@.
--
-- The parameter @y1@ is a @CoordF@.
--
-- The parameter @x2@ is a @CoordF@.
--
-- The parameter @y2@ is a @CoordF@.
--
-- The vector equivalent of this command is 'Graphics.GL.Internal.Shared.glRectfv'.
glRectf :: MonadIO m => GLfloat -> GLfloat -> GLfloat -> GLfloat -> m ()
glRectf = ffifloatfloatfloatfloatIOV glRectfFunPtr
glRectfFunPtr :: FunPtr (GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
glRectfFunPtr = unsafePerformIO (getProcAddress "glRectf")
{-# NOINLINE glRectfFunPtr #-}
-- | Usage: @'glRectfv' v1 v2@
--
-- The parameter @v1@ is a @CoordF@.
--
-- The parameter @v2@ is a @CoordF@.
--
-- The length of @v1@ should be @2@.
--
-- The length of @v2@ should be @2@.
glRectfv :: MonadIO m => Ptr GLfloat -> Ptr GLfloat -> m ()
glRectfv = ffiPtrfloatPtrfloatIOV glRectfvFunPtr
glRectfvFunPtr :: FunPtr (Ptr GLfloat -> Ptr GLfloat -> IO ())
glRectfvFunPtr = unsafePerformIO (getProcAddress "glRectfv")
{-# NOINLINE glRectfvFunPtr #-}
-- | Usage: @'glRecti' x1 y1 x2 y2@
--
-- The parameter @x1@ is a @CoordI@.
--
-- The parameter @y1@ is a @CoordI@.
--
-- The parameter @x2@ is a @CoordI@.
--
-- The parameter @y2@ is a @CoordI@.
--
-- The vector equivalent of this command is 'Graphics.GL.Internal.Shared.glRectiv'.
glRecti :: MonadIO m => GLint -> GLint -> GLint -> GLint -> m ()
glRecti = ffiintintintintIOV glRectiFunPtr
glRectiFunPtr :: FunPtr (GLint -> GLint -> GLint -> GLint -> IO ())
glRectiFunPtr = unsafePerformIO (getProcAddress "glRecti")
{-# NOINLINE glRectiFunPtr #-}
-- | Usage: @'glRectiv' v1 v2@
--
-- The parameter @v1@ is a @CoordI@.
--
-- The parameter @v2@ is a @CoordI@.
--
-- The length of @v1@ should be @2@.
--
-- The length of @v2@ should be @2@.
glRectiv :: MonadIO m => Ptr GLint -> Ptr GLint -> m ()
glRectiv = ffiPtrintPtrintIOV glRectivFunPtr
glRectivFunPtr :: FunPtr (Ptr GLint -> Ptr GLint -> IO ())
glRectivFunPtr = unsafePerformIO (getProcAddress "glRectiv")
{-# NOINLINE glRectivFunPtr #-}
-- | Usage: @'glRects' x1 y1 x2 y2@
--
-- The parameter @x1@ is a @CoordS@.
--
-- The parameter @y1@ is a @CoordS@.
--
-- The parameter @x2@ is a @CoordS@.
--
-- The parameter @y2@ is a @CoordS@.
--
-- The vector equivalent of this command is 'Graphics.GL.Internal.Shared.glRectsv'.
glRects :: MonadIO m => GLshort -> GLshort -> GLshort -> GLshort -> m ()
glRects = ffishortshortshortshortIOV glRectsFunPtr
glRectsFunPtr :: FunPtr (GLshort -> GLshort -> GLshort -> GLshort -> IO ())
glRectsFunPtr = unsafePerformIO (getProcAddress "glRects")
{-# NOINLINE glRectsFunPtr #-}
-- | Usage: @'glRectsv' v1 v2@
--
-- The parameter @v1@ is a @CoordS@.
--
-- The parameter @v2@ is a @CoordS@.
--
-- The length of @v1@ should be @2@.
--
-- The length of @v2@ should be @2@.
glRectsv :: MonadIO m => Ptr GLshort -> Ptr GLshort -> m ()
glRectsv = ffiPtrshortPtrshortIOV glRectsvFunPtr
glRectsvFunPtr :: FunPtr (Ptr GLshort -> Ptr GLshort -> IO ())
glRectsvFunPtr = unsafePerformIO (getProcAddress "glRectsv")
{-# NOINLINE glRectsvFunPtr #-}
-- | Usage: @'glRenderMode' mode@
--
-- The parameter @mode@ is a @RenderingMode@, one of: 'Graphics.GL.Internal.Shared.GL_FEEDBACK', 'Graphics.GL.Internal.Shared.GL_RENDER', 'Graphics.GL.Internal.Shared.GL_SELECT'.
glRenderMode :: MonadIO m => GLenum -> m GLint
glRenderMode = ffienumIOint glRenderModeFunPtr
glRenderModeFunPtr :: FunPtr (GLenum -> IO GLint)
glRenderModeFunPtr = unsafePerformIO (getProcAddress "glRenderMode")
{-# NOINLINE glRenderModeFunPtr #-}
-- | Usage: @'glRotated' angle x y z@
glRotated :: MonadIO m => GLdouble -> GLdouble -> GLdouble -> GLdouble -> m ()
glRotated = ffidoubledoubledoubledoubleIOV glRotatedFunPtr
glRotatedFunPtr :: FunPtr (GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ())
glRotatedFunPtr = unsafePerformIO (getProcAddress "glRotated")
{-# NOINLINE glRotatedFunPtr #-}
-- | Usage: @'glRotatef' angle x y z@
glRotatef :: MonadIO m => GLfloat -> GLfloat -> GLfloat -> GLfloat -> m ()
glRotatef = ffifloatfloatfloatfloatIOV glRotatefFunPtr
glRotatefFunPtr :: FunPtr (GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
glRotatefFunPtr = unsafePerformIO (getProcAddress "glRotatef")
{-# NOINLINE glRotatefFunPtr #-}
-- | Usage: @'glScaled' x y z@
glScaled :: MonadIO m => GLdouble -> GLdouble -> GLdouble -> m ()
glScaled = ffidoubledoubledoubleIOV glScaledFunPtr
glScaledFunPtr :: FunPtr (GLdouble -> GLdouble -> GLdouble -> IO ())
glScaledFunPtr = unsafePerformIO (getProcAddress "glScaled")
{-# NOINLINE glScaledFunPtr #-}
-- | Usage: @'glScalef' x y z@
glScalef :: MonadIO m => GLfloat -> GLfloat -> GLfloat -> m ()
glScalef = ffifloatfloatfloatIOV glScalefFunPtr
glScalefFunPtr :: FunPtr (GLfloat -> GLfloat -> GLfloat -> IO ())
glScalefFunPtr = unsafePerformIO (getProcAddress "glScalef")
{-# NOINLINE glScalefFunPtr #-}
-- | Usage: @'glSecondaryColor3b' red green blue@
--
-- The parameter @red@ is a @ColorB@.
--
-- The parameter @green@ is a @ColorB@.
--
-- The parameter @blue@ is a @ColorB@.
--
-- The vector equivalent of this command is 'Graphics.GL.Internal.Shared.glSecondaryColor3bv'.
glSecondaryColor3b :: MonadIO m => GLbyte -> GLbyte -> GLbyte -> m ()
glSecondaryColor3b = ffibytebytebyteIOV glSecondaryColor3bFunPtr
glSecondaryColor3bFunPtr :: FunPtr (GLbyte -> GLbyte -> GLbyte -> IO ())
glSecondaryColor3bFunPtr = unsafePerformIO (getProcAddress "glSecondaryColor3b")
{-# NOINLINE glSecondaryColor3bFunPtr #-}
-- | Usage: @'glSecondaryColor3bv' v@
--
-- The parameter @v@ is a @ColorB@.
--
-- The length of @v@ should be @3@.
glSecondaryColor3bv :: MonadIO m => Ptr GLbyte -> m ()
glSecondaryColor3bv = ffiPtrbyteIOV glSecondaryColor3bvFunPtr
glSecondaryColor3bvFunPtr :: FunPtr (Ptr GLbyte -> IO ())
glSecondaryColor3bvFunPtr = unsafePerformIO (getProcAddress "glSecondaryColor3bv")
{-# NOINLINE glSecondaryColor3bvFunPtr #-}
-- | Usage: @'glSecondaryColor3d' red green blue@
--
-- The parameter @red@ is a @ColorD@.
--
-- The parameter @green@ is a @ColorD@.
--
-- The parameter @blue@ is a @ColorD@.
--
-- The vector equivalent of this command is 'Graphics.GL.Internal.Shared.glSecondaryColor3dv'.
glSecondaryColor3d :: MonadIO m => GLdouble -> GLdouble -> GLdouble -> m ()
glSecondaryColor3d = ffidoubledoubledoubleIOV glSecondaryColor3dFunPtr
glSecondaryColor3dFunPtr :: FunPtr (GLdouble -> GLdouble -> GLdouble -> IO ())
glSecondaryColor3dFunPtr = unsafePerformIO (getProcAddress "glSecondaryColor3d")
{-# NOINLINE glSecondaryColor3dFunPtr #-}
-- | Usage: @'glSecondaryColor3dv' v@
--
-- The parameter @v@ is a @ColorD@.
--
-- The length of @v@ should be @3@.
glSecondaryColor3dv :: MonadIO m => Ptr GLdouble -> m ()
glSecondaryColor3dv = ffiPtrdoubleIOV glSecondaryColor3dvFunPtr
glSecondaryColor3dvFunPtr :: FunPtr (Ptr GLdouble -> IO ())
glSecondaryColor3dvFunPtr = unsafePerformIO (getProcAddress "glSecondaryColor3dv")
{-# NOINLINE glSecondaryColor3dvFunPtr #-}
-- | Usage: @'glSecondaryColor3f' red green blue@
--
-- The parameter @red@ is a @ColorF@.
--
-- The parameter @green@ is a @ColorF@.
--
-- The parameter @blue@ is a @ColorF@.
--
-- The vector equivalent of this command is 'Graphics.GL.Internal.Shared.glSecondaryColor3fv'.
glSecondaryColor3f :: MonadIO m => GLfloat -> GLfloat -> GLfloat -> m ()
glSecondaryColor3f = ffifloatfloatfloatIOV glSecondaryColor3fFunPtr
glSecondaryColor3fFunPtr :: FunPtr (GLfloat -> GLfloat -> GLfloat -> IO ())
glSecondaryColor3fFunPtr = unsafePerformIO (getProcAddress "glSecondaryColor3f")
{-# NOINLINE glSecondaryColor3fFunPtr #-}
-- | Usage: @'glSecondaryColor3fv' v@
--
-- The parameter @v@ is a @ColorF@.
--
-- The length of @v@ should be @3@.
glSecondaryColor3fv :: MonadIO m => Ptr GLfloat -> m ()
glSecondaryColor3fv = ffiPtrfloatIOV glSecondaryColor3fvFunPtr
glSecondaryColor3fvFunPtr :: FunPtr (Ptr GLfloat -> IO ())
glSecondaryColor3fvFunPtr = unsafePerformIO (getProcAddress "glSecondaryColor3fv")
{-# NOINLINE glSecondaryColor3fvFunPtr #-}
-- | Usage: @'glSecondaryColor3i' red green blue@
--
-- The parameter @red@ is a @ColorI@.
--
-- The parameter @green@ is a @ColorI@.
--
-- The parameter @blue@ is a @ColorI@.
--
-- The vector equivalent of this command is 'Graphics.GL.Internal.Shared.glSecondaryColor3iv'.
glSecondaryColor3i :: MonadIO m => GLint -> GLint -> GLint -> m ()
glSecondaryColor3i = ffiintintintIOV glSecondaryColor3iFunPtr
glSecondaryColor3iFunPtr :: FunPtr (GLint -> GLint -> GLint -> IO ())
glSecondaryColor3iFunPtr = unsafePerformIO (getProcAddress "glSecondaryColor3i")
{-# NOINLINE glSecondaryColor3iFunPtr #-}
-- | Usage: @'glSecondaryColor3iv' v@
--
-- The parameter @v@ is a @ColorI@.
--
-- The length of @v@ should be @3@.
glSecondaryColor3iv :: MonadIO m => Ptr GLint -> m ()
glSecondaryColor3iv = ffiPtrintIOV glSecondaryColor3ivFunPtr
glSecondaryColor3ivFunPtr :: FunPtr (Ptr GLint -> IO ())
glSecondaryColor3ivFunPtr = unsafePerformIO (getProcAddress "glSecondaryColor3iv")
{-# NOINLINE glSecondaryColor3ivFunPtr #-}
-- | Usage: @'glSecondaryColor3s' red green blue@
--
-- The parameter @red@ is a @ColorS@.
--
-- The parameter @green@ is a @ColorS@.
--
-- The parameter @blue@ is a @ColorS@.
--
-- The vector equivalent of this command is 'Graphics.GL.Internal.Shared.glSecondaryColor3sv'.
glSecondaryColor3s :: MonadIO m => GLshort -> GLshort -> GLshort -> m ()
glSecondaryColor3s = ffishortshortshortIOV glSecondaryColor3sFunPtr
glSecondaryColor3sFunPtr :: FunPtr (GLshort -> GLshort -> GLshort -> IO ())
glSecondaryColor3sFunPtr = unsafePerformIO (getProcAddress "glSecondaryColor3s")
{-# NOINLINE glSecondaryColor3sFunPtr #-}
-- | Usage: @'glSecondaryColor3sv' v@
--
-- The parameter @v@ is a @ColorS@.
--
-- The length of @v@ should be @3@.
glSecondaryColor3sv :: MonadIO m => Ptr GLshort -> m ()
glSecondaryColor3sv = ffiPtrshortIOV glSecondaryColor3svFunPtr
glSecondaryColor3svFunPtr :: FunPtr (Ptr GLshort -> IO ())
glSecondaryColor3svFunPtr = unsafePerformIO (getProcAddress "glSecondaryColor3sv")
{-# NOINLINE glSecondaryColor3svFunPtr #-}
-- | Usage: @'glSecondaryColor3ub' red green blue@
--
-- The parameter @red@ is a @ColorUB@.
--
-- The parameter @green@ is a @ColorUB@.
--
-- The parameter @blue@ is a @ColorUB@.
--
-- The vector equivalent of this command is 'Graphics.GL.Internal.Shared.glSecondaryColor3ubv'.
glSecondaryColor3ub :: MonadIO m => GLubyte -> GLubyte -> GLubyte -> m ()
glSecondaryColor3ub = ffiubyteubyteubyteIOV glSecondaryColor3ubFunPtr
glSecondaryColor3ubFunPtr :: FunPtr (GLubyte -> GLubyte -> GLubyte -> IO ())
glSecondaryColor3ubFunPtr = unsafePerformIO (getProcAddress "glSecondaryColor3ub")
{-# NOINLINE glSecondaryColor3ubFunPtr #-}
-- | Usage: @'glSecondaryColor3ubv' v@
--
-- The parameter @v@ is a @ColorUB@.
--
-- The length of @v@ should be @3@.
glSecondaryColor3ubv :: MonadIO m => Ptr GLubyte -> m ()
glSecondaryColor3ubv = ffiPtrubyteIOV glSecondaryColor3ubvFunPtr
glSecondaryColor3ubvFunPtr :: FunPtr (Ptr GLubyte -> IO ())
glSecondaryColor3ubvFunPtr = unsafePerformIO (getProcAddress "glSecondaryColor3ubv")
{-# NOINLINE glSecondaryColor3ubvFunPtr #-}
-- | Usage: @'glSecondaryColor3ui' red green blue@
--
-- The parameter @red@ is a @ColorUI@.
--
-- The parameter @green@ is a @ColorUI@.
--
-- The parameter @blue@ is a @ColorUI@.
--
-- The vector equivalent of this command is 'Graphics.GL.Internal.Shared.glSecondaryColor3uiv'.
glSecondaryColor3ui :: MonadIO m => GLuint -> GLuint -> GLuint -> m ()
glSecondaryColor3ui = ffiuintuintuintIOV glSecondaryColor3uiFunPtr
glSecondaryColor3uiFunPtr :: FunPtr (GLuint -> GLuint -> GLuint -> IO ())
glSecondaryColor3uiFunPtr = unsafePerformIO (getProcAddress "glSecondaryColor3ui")
{-# NOINLINE glSecondaryColor3uiFunPtr #-}
-- | Usage: @'glSecondaryColor3uiv' v@
--
-- The parameter @v@ is a @ColorUI@.
--
-- The length of @v@ should be @3@.
glSecondaryColor3uiv :: MonadIO m => Ptr GLuint -> m ()
glSecondaryColor3uiv = ffiPtruintIOV glSecondaryColor3uivFunPtr
glSecondaryColor3uivFunPtr :: FunPtr (Ptr GLuint -> IO ())
glSecondaryColor3uivFunPtr = unsafePerformIO (getProcAddress "glSecondaryColor3uiv")
{-# NOINLINE glSecondaryColor3uivFunPtr #-}
-- | Usage: @'glSecondaryColor3us' red green blue@
--
-- The parameter @red@ is a @ColorUS@.
--
-- The parameter @green@ is a @ColorUS@.
--
-- The parameter @blue@ is a @ColorUS@.
--
-- The vector equivalent of this command is 'Graphics.GL.Internal.Shared.glSecondaryColor3usv'.
glSecondaryColor3us :: MonadIO m => GLushort -> GLushort -> GLushort -> m ()
glSecondaryColor3us = ffiushortushortushortIOV glSecondaryColor3usFunPtr
glSecondaryColor3usFunPtr :: FunPtr (GLushort -> GLushort -> GLushort -> IO ())
glSecondaryColor3usFunPtr = unsafePerformIO (getProcAddress "glSecondaryColor3us")
{-# NOINLINE glSecondaryColor3usFunPtr #-}
-- | Usage: @'glSecondaryColor3usv' v@
--
-- The parameter @v@ is a @ColorUS@.
--
-- The length of @v@ should be @3@.
glSecondaryColor3usv :: MonadIO m => Ptr GLushort -> m ()
glSecondaryColor3usv = ffiPtrushortIOV glSecondaryColor3usvFunPtr
glSecondaryColor3usvFunPtr :: FunPtr (Ptr GLushort -> IO ())
glSecondaryColor3usvFunPtr = unsafePerformIO (getProcAddress "glSecondaryColor3usv")
{-# NOINLINE glSecondaryColor3usvFunPtr #-}
-- | Usage: @'glSecondaryColorPointer' size type stride pointer@
--
-- The parameter @type@ is a @ColorPointerType@, one of: 'Graphics.GL.Internal.Shared.GL_BYTE', 'Graphics.GL.Internal.Shared.GL_DOUBLE', 'Graphics.GL.Internal.Shared.GL_FLOAT', 'Graphics.GL.Internal.Shared.GL_INT', 'Graphics.GL.Internal.Shared.GL_SHORT', 'Graphics.GL.Internal.Shared.GL_UNSIGNED_BYTE', 'Graphics.GL.Internal.Shared.GL_UNSIGNED_INT', 'Graphics.GL.Internal.Shared.GL_UNSIGNED_SHORT'.
--
-- The length of @pointer@ should be @COMPSIZE(size,type,stride)@.
glSecondaryColorPointer :: MonadIO m => GLint -> GLenum -> GLsizei -> Ptr () -> m ()
glSecondaryColorPointer = ffiintenumsizeiPtrVIOV glSecondaryColorPointerFunPtr
glSecondaryColorPointerFunPtr :: FunPtr (GLint -> GLenum -> GLsizei -> Ptr () -> IO ())
glSecondaryColorPointerFunPtr = unsafePerformIO (getProcAddress "glSecondaryColorPointer")
{-# NOINLINE glSecondaryColorPointerFunPtr #-}
-- | Usage: @'glSelectBuffer' size buffer@
--
-- The parameter @buffer@ is a @SelectName@.
--
-- The length of @buffer@ should be @size@.
glSelectBuffer :: MonadIO m => GLsizei -> Ptr GLuint -> m ()
glSelectBuffer = ffisizeiPtruintIOV glSelectBufferFunPtr
glSelectBufferFunPtr :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
glSelectBufferFunPtr = unsafePerformIO (getProcAddress "glSelectBuffer")
{-# NOINLINE glSelectBufferFunPtr #-}
-- | Usage: @'glShadeModel' mode@
--
-- The parameter @mode@ is a @ShadingModel@, one of: 'Graphics.GL.Internal.Shared.GL_FLAT', 'Graphics.GL.Internal.Shared.GL_SMOOTH'.
glShadeModel :: MonadIO m => GLenum -> m ()
glShadeModel = ffienumIOV glShadeModelFunPtr
glShadeModelFunPtr :: FunPtr (GLenum -> IO ())
glShadeModelFunPtr = unsafePerformIO (getProcAddress "glShadeModel")
{-# NOINLINE glShadeModelFunPtr #-}
-- | Usage: @'glTexCoord1d' s@
--
-- The parameter @s@ is a @CoordD@.
--
-- The vector equivalent of this command is 'Graphics.GL.Internal.Shared.glTexCoord1dv'.
glTexCoord1d :: MonadIO m => GLdouble -> m ()
glTexCoord1d = ffidoubleIOV glTexCoord1dFunPtr
glTexCoord1dFunPtr :: FunPtr (GLdouble -> IO ())
glTexCoord1dFunPtr = unsafePerformIO (getProcAddress "glTexCoord1d")
{-# NOINLINE glTexCoord1dFunPtr #-}
-- | Usage: @'glTexCoord1dv' v@
--
-- The parameter @v@ is a @CoordD@.
--
-- The length of @v@ should be @1@.
glTexCoord1dv :: MonadIO m => Ptr GLdouble -> m ()
glTexCoord1dv = ffiPtrdoubleIOV glTexCoord1dvFunPtr
glTexCoord1dvFunPtr :: FunPtr (Ptr GLdouble -> IO ())
glTexCoord1dvFunPtr = unsafePerformIO (getProcAddress "glTexCoord1dv")
{-# NOINLINE glTexCoord1dvFunPtr #-}
-- | Usage: @'glTexCoord1f' s@
--
-- The parameter @s@ is a @CoordF@.
--
-- The vector equivalent of this command is 'Graphics.GL.Internal.Shared.glTexCoord1fv'.
glTexCoord1f :: MonadIO m => GLfloat -> m ()
glTexCoord1f = ffifloatIOV glTexCoord1fFunPtr
glTexCoord1fFunPtr :: FunPtr (GLfloat -> IO ())
glTexCoord1fFunPtr = unsafePerformIO (getProcAddress "glTexCoord1f")
{-# NOINLINE glTexCoord1fFunPtr #-}
-- | Usage: @'glTexCoord1fv' v@
--
-- The parameter @v@ is a @CoordF@.
--
-- The length of @v@ should be @1@.
glTexCoord1fv :: MonadIO m => Ptr GLfloat -> m ()
glTexCoord1fv = ffiPtrfloatIOV glTexCoord1fvFunPtr
glTexCoord1fvFunPtr :: FunPtr (Ptr GLfloat -> IO ())
glTexCoord1fvFunPtr = unsafePerformIO (getProcAddress "glTexCoord1fv")
{-# NOINLINE glTexCoord1fvFunPtr #-}
-- | Usage: @'glTexCoord1i' s@
--
-- The parameter @s@ is a @CoordI@.
--
-- The vector equivalent of this command is 'Graphics.GL.Internal.Shared.glTexCoord1iv'.
glTexCoord1i :: MonadIO m => GLint -> m ()
glTexCoord1i = ffiintIOV glTexCoord1iFunPtr
glTexCoord1iFunPtr :: FunPtr (GLint -> IO ())
glTexCoord1iFunPtr = unsafePerformIO (getProcAddress "glTexCoord1i")
{-# NOINLINE glTexCoord1iFunPtr #-}
-- | Usage: @'glTexCoord1iv' v@
--
-- The parameter @v@ is a @CoordI@.
--
-- The length of @v@ should be @1@.
glTexCoord1iv :: MonadIO m => Ptr GLint -> m ()
glTexCoord1iv = ffiPtrintIOV glTexCoord1ivFunPtr
glTexCoord1ivFunPtr :: FunPtr (Ptr GLint -> IO ())
glTexCoord1ivFunPtr = unsafePerformIO (getProcAddress "glTexCoord1iv")
{-# NOINLINE glTexCoord1ivFunPtr #-}
-- | Usage: @'glTexCoord1s' s@
--
-- The parameter @s@ is a @CoordS@.
--
-- The vector equivalent of this command is 'Graphics.GL.Internal.Shared.glTexCoord1sv'.
glTexCoord1s :: MonadIO m => GLshort -> m ()
glTexCoord1s = ffishortIOV glTexCoord1sFunPtr
glTexCoord1sFunPtr :: FunPtr (GLshort -> IO ())
glTexCoord1sFunPtr = unsafePerformIO (getProcAddress "glTexCoord1s")
{-# NOINLINE glTexCoord1sFunPtr #-}
-- | Usage: @'glTexCoord1sv' v@
--
-- The parameter @v@ is a @CoordS@.
--
-- The length of @v@ should be @1@.
glTexCoord1sv :: MonadIO m => Ptr GLshort -> m ()
glTexCoord1sv = ffiPtrshortIOV glTexCoord1svFunPtr
glTexCoord1svFunPtr :: FunPtr (Ptr GLshort -> IO ())
glTexCoord1svFunPtr = unsafePerformIO (getProcAddress "glTexCoord1sv")
{-# NOINLINE glTexCoord1svFunPtr #-}
-- | Usage: @'glTexCoord2d' s t@
--
-- The parameter @s@ is a @CoordD@.
--
-- The parameter @t@ is a @CoordD@.
--
-- The vector equivalent of this command is 'Graphics.GL.Internal.Shared.glTexCoord2dv'.
glTexCoord2d :: MonadIO m => GLdouble -> GLdouble -> m ()
glTexCoord2d = ffidoubledoubleIOV glTexCoord2dFunPtr
glTexCoord2dFunPtr :: FunPtr (GLdouble -> GLdouble -> IO ())
glTexCoord2dFunPtr = unsafePerformIO (getProcAddress "glTexCoord2d")
{-# NOINLINE glTexCoord2dFunPtr #-}
-- | Usage: @'glTexCoord2dv' v@
--
-- The parameter @v@ is a @CoordD@.
--
-- The length of @v@ should be @2@.
glTexCoord2dv :: MonadIO m => Ptr GLdouble -> m ()
glTexCoord2dv = ffiPtrdoubleIOV glTexCoord2dvFunPtr
glTexCoord2dvFunPtr :: FunPtr (Ptr GLdouble -> IO ())
glTexCoord2dvFunPtr = unsafePerformIO (getProcAddress "glTexCoord2dv")
{-# NOINLINE glTexCoord2dvFunPtr #-}
-- | Usage: @'glTexCoord2f' s t@
--
-- The parameter @s@ is a @CoordF@.
--
-- The parameter @t@ is a @CoordF@.
--
-- The vector equivalent of this command is 'Graphics.GL.Internal.Shared.glTexCoord2fv'.
glTexCoord2f :: MonadIO m => GLfloat -> GLfloat -> m ()
glTexCoord2f = ffifloatfloatIOV glTexCoord2fFunPtr
glTexCoord2fFunPtr :: FunPtr (GLfloat -> GLfloat -> IO ())
glTexCoord2fFunPtr = unsafePerformIO (getProcAddress "glTexCoord2f")
{-# NOINLINE glTexCoord2fFunPtr #-}
-- | Usage: @'glTexCoord2fv' v@
--
-- The parameter @v@ is a @CoordF@.
--
-- The length of @v@ should be @2@.
glTexCoord2fv :: MonadIO m => Ptr GLfloat -> m ()
glTexCoord2fv = ffiPtrfloatIOV glTexCoord2fvFunPtr
glTexCoord2fvFunPtr :: FunPtr (Ptr GLfloat -> IO ())
glTexCoord2fvFunPtr = unsafePerformIO (getProcAddress "glTexCoord2fv")
{-# NOINLINE glTexCoord2fvFunPtr #-}
-- | Usage: @'glTexCoord2i' s t@
--
-- The parameter @s@ is a @CoordI@.
--
-- The parameter @t@ is a @CoordI@.
--
-- The vector equivalent of this command is 'Graphics.GL.Internal.Shared.glTexCoord2iv'.
glTexCoord2i :: MonadIO m => GLint -> GLint -> m ()
glTexCoord2i = ffiintintIOV glTexCoord2iFunPtr
glTexCoord2iFunPtr :: FunPtr (GLint -> GLint -> IO ())
glTexCoord2iFunPtr = unsafePerformIO (getProcAddress "glTexCoord2i")
{-# NOINLINE glTexCoord2iFunPtr #-}
-- | Usage: @'glTexCoord2iv' v@
--
-- The parameter @v@ is a @CoordI@.
--
-- The length of @v@ should be @2@.
glTexCoord2iv :: MonadIO m => Ptr GLint -> m ()
glTexCoord2iv = ffiPtrintIOV glTexCoord2ivFunPtr
glTexCoord2ivFunPtr :: FunPtr (Ptr GLint -> IO ())
glTexCoord2ivFunPtr = unsafePerformIO (getProcAddress "glTexCoord2iv")
{-# NOINLINE glTexCoord2ivFunPtr #-}
-- | Usage: @'glTexCoord2s' s t@
--
-- The parameter @s@ is a @CoordS@.
--
-- The parameter @t@ is a @CoordS@.
--
-- The vector equivalent of this command is 'Graphics.GL.Internal.Shared.glTexCoord2sv'.
glTexCoord2s :: MonadIO m => GLshort -> GLshort -> m ()
glTexCoord2s = ffishortshortIOV glTexCoord2sFunPtr
glTexCoord2sFunPtr :: FunPtr (GLshort -> GLshort -> IO ())
glTexCoord2sFunPtr = unsafePerformIO (getProcAddress "glTexCoord2s")
{-# NOINLINE glTexCoord2sFunPtr #-}
-- | Usage: @'glTexCoord2sv' v@
--
-- The parameter @v@ is a @CoordS@.
--
-- The length of @v@ should be @2@.
glTexCoord2sv :: MonadIO m => Ptr GLshort -> m ()
glTexCoord2sv = ffiPtrshortIOV glTexCoord2svFunPtr
glTexCoord2svFunPtr :: FunPtr (Ptr GLshort -> IO ())
glTexCoord2svFunPtr = unsafePerformIO (getProcAddress "glTexCoord2sv")
{-# NOINLINE glTexCoord2svFunPtr #-}
-- | Usage: @'glTexCoord3d' s t r@
--
-- The parameter @s@ is a @CoordD@.
--
-- The parameter @t@ is a @CoordD@.
--
-- The parameter @r@ is a @CoordD@.
--
-- The vector equivalent of this command is 'Graphics.GL.Internal.Shared.glTexCoord3dv'.
glTexCoord3d :: MonadIO m => GLdouble -> GLdouble -> GLdouble -> m ()
glTexCoord3d = ffidoubledoubledoubleIOV glTexCoord3dFunPtr
glTexCoord3dFunPtr :: FunPtr (GLdouble -> GLdouble -> GLdouble -> IO ())
glTexCoord3dFunPtr = unsafePerformIO (getProcAddress "glTexCoord3d")
{-# NOINLINE glTexCoord3dFunPtr #-}
-- | Usage: @'glTexCoord3dv' v@
--
-- The parameter @v@ is a @CoordD@.
--
-- The length of @v@ should be @3@.
glTexCoord3dv :: MonadIO m => Ptr GLdouble -> m ()
glTexCoord3dv = ffiPtrdoubleIOV glTexCoord3dvFunPtr
glTexCoord3dvFunPtr :: FunPtr (Ptr GLdouble -> IO ())
glTexCoord3dvFunPtr = unsafePerformIO (getProcAddress "glTexCoord3dv")
{-# NOINLINE glTexCoord3dvFunPtr #-}
-- | Usage: @'glTexCoord3f' s t r@
--
-- The parameter @s@ is a @CoordF@.
--
-- The parameter @t@ is a @CoordF@.
--
-- The parameter @r@ is a @CoordF@.
--
-- The vector equivalent of this command is 'Graphics.GL.Internal.Shared.glTexCoord3fv'.
glTexCoord3f :: MonadIO m => GLfloat -> GLfloat -> GLfloat -> m ()
glTexCoord3f = ffifloatfloatfloatIOV glTexCoord3fFunPtr
glTexCoord3fFunPtr :: FunPtr (GLfloat -> GLfloat -> GLfloat -> IO ())
glTexCoord3fFunPtr = unsafePerformIO (getProcAddress "glTexCoord3f")
{-# NOINLINE glTexCoord3fFunPtr #-}
-- | Usage: @'glTexCoord3fv' v@
--
-- The parameter @v@ is a @CoordF@.
--
-- The length of @v@ should be @3@.
glTexCoord3fv :: MonadIO m => Ptr GLfloat -> m ()
glTexCoord3fv = ffiPtrfloatIOV glTexCoord3fvFunPtr
glTexCoord3fvFunPtr :: FunPtr (Ptr GLfloat -> IO ())
glTexCoord3fvFunPtr = unsafePerformIO (getProcAddress "glTexCoord3fv")
{-# NOINLINE glTexCoord3fvFunPtr #-}
-- | Usage: @'glTexCoord3i' s t r@
--
-- The parameter @s@ is a @CoordI@.
--
-- The parameter @t@ is a @CoordI@.
--
-- The parameter @r@ is a @CoordI@.
--
-- The vector equivalent of this command is 'Graphics.GL.Internal.Shared.glTexCoord3iv'.
glTexCoord3i :: MonadIO m => GLint -> GLint -> GLint -> m ()
glTexCoord3i = ffiintintintIOV glTexCoord3iFunPtr
glTexCoord3iFunPtr :: FunPtr (GLint -> GLint -> GLint -> IO ())
glTexCoord3iFunPtr = unsafePerformIO (getProcAddress "glTexCoord3i")
{-# NOINLINE glTexCoord3iFunPtr #-}
-- | Usage: @'glTexCoord3iv' v@
--
-- The parameter @v@ is a @CoordI@.
--
-- The length of @v@ should be @3@.
glTexCoord3iv :: MonadIO m => Ptr GLint -> m ()
glTexCoord3iv = ffiPtrintIOV glTexCoord3ivFunPtr
glTexCoord3ivFunPtr :: FunPtr (Ptr GLint -> IO ())
glTexCoord3ivFunPtr = unsafePerformIO (getProcAddress "glTexCoord3iv")
{-# NOINLINE glTexCoord3ivFunPtr #-}
-- | Usage: @'glTexCoord3s' s t r@
--
-- The parameter @s@ is a @CoordS@.
--
-- The parameter @t@ is a @CoordS@.
--
-- The parameter @r@ is a @CoordS@.
--
-- The vector equivalent of this command is 'Graphics.GL.Internal.Shared.glTexCoord3sv'.
glTexCoord3s :: MonadIO m => GLshort -> GLshort -> GLshort -> m ()
glTexCoord3s = ffishortshortshortIOV glTexCoord3sFunPtr
glTexCoord3sFunPtr :: FunPtr (GLshort -> GLshort -> GLshort -> IO ())
glTexCoord3sFunPtr = unsafePerformIO (getProcAddress "glTexCoord3s")
{-# NOINLINE glTexCoord3sFunPtr #-}
-- | Usage: @'glTexCoord3sv' v@
--
-- The parameter @v@ is a @CoordS@.
--
-- The length of @v@ should be @3@.
glTexCoord3sv :: MonadIO m => Ptr GLshort -> m ()
glTexCoord3sv = ffiPtrshortIOV glTexCoord3svFunPtr
glTexCoord3svFunPtr :: FunPtr (Ptr GLshort -> IO ())
glTexCoord3svFunPtr = unsafePerformIO (getProcAddress "glTexCoord3sv")
{-# NOINLINE glTexCoord3svFunPtr #-}
-- | Usage: @'glTexCoord4d' s t r q@
--
-- The parameter @s@ is a @CoordD@.
--
-- The parameter @t@ is a @CoordD@.
--
-- The parameter @r@ is a @CoordD@.
--
-- The parameter @q@ is a @CoordD@.
--
-- The vector equivalent of this command is 'Graphics.GL.Internal.Shared.glTexCoord4dv'.
glTexCoord4d :: MonadIO m => GLdouble -> GLdouble -> GLdouble -> GLdouble -> m ()
glTexCoord4d = ffidoubledoubledoubledoubleIOV glTexCoord4dFunPtr
glTexCoord4dFunPtr :: FunPtr (GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ())
glTexCoord4dFunPtr = unsafePerformIO (getProcAddress "glTexCoord4d")
{-# NOINLINE glTexCoord4dFunPtr #-}
-- | Usage: @'glTexCoord4dv' v@
--
-- The parameter @v@ is a @CoordD@.
--
-- The length of @v@ should be @4@.
glTexCoord4dv :: MonadIO m => Ptr GLdouble -> m ()
glTexCoord4dv = ffiPtrdoubleIOV glTexCoord4dvFunPtr
glTexCoord4dvFunPtr :: FunPtr (Ptr GLdouble -> IO ())
glTexCoord4dvFunPtr = unsafePerformIO (getProcAddress "glTexCoord4dv")
{-# NOINLINE glTexCoord4dvFunPtr #-}
-- | Usage: @'glTexCoord4f' s t r q@
--
-- The parameter @s@ is a @CoordF@.
--
-- The parameter @t@ is a @CoordF@.
--
-- The parameter @r@ is a @CoordF@.
--
-- The parameter @q@ is a @CoordF@.
--
-- The vector equivalent of this command is 'Graphics.GL.Internal.Shared.glTexCoord4fv'.
glTexCoord4f :: MonadIO m => GLfloat -> GLfloat -> GLfloat -> GLfloat -> m ()
glTexCoord4f = ffifloatfloatfloatfloatIOV glTexCoord4fFunPtr
glTexCoord4fFunPtr :: FunPtr (GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
glTexCoord4fFunPtr = unsafePerformIO (getProcAddress "glTexCoord4f")
{-# NOINLINE glTexCoord4fFunPtr #-}
-- | Usage: @'glTexCoord4fv' v@
--
-- The parameter @v@ is a @CoordF@.
--
-- The length of @v@ should be @4@.
glTexCoord4fv :: MonadIO m => Ptr GLfloat -> m ()
glTexCoord4fv = ffiPtrfloatIOV glTexCoord4fvFunPtr
glTexCoord4fvFunPtr :: FunPtr (Ptr GLfloat -> IO ())
glTexCoord4fvFunPtr = unsafePerformIO (getProcAddress "glTexCoord4fv")
{-# NOINLINE glTexCoord4fvFunPtr #-}
-- | Usage: @'glTexCoord4i' s t r q@
--
-- The parameter @s@ is a @CoordI@.
--
-- The parameter @t@ is a @CoordI@.
--
-- The parameter @r@ is a @CoordI@.
--
-- The parameter @q@ is a @CoordI@.
--
-- The vector equivalent of this command is 'Graphics.GL.Internal.Shared.glTexCoord4iv'.
glTexCoord4i :: MonadIO m => GLint -> GLint -> GLint -> GLint -> m ()
glTexCoord4i = ffiintintintintIOV glTexCoord4iFunPtr
glTexCoord4iFunPtr :: FunPtr (GLint -> GLint -> GLint -> GLint -> IO ())
glTexCoord4iFunPtr = unsafePerformIO (getProcAddress "glTexCoord4i")
{-# NOINLINE glTexCoord4iFunPtr #-}
-- | Usage: @'glTexCoord4iv' v@
--
-- The parameter @v@ is a @CoordI@.
--
-- The length of @v@ should be @4@.
glTexCoord4iv :: MonadIO m => Ptr GLint -> m ()
glTexCoord4iv = ffiPtrintIOV glTexCoord4ivFunPtr
glTexCoord4ivFunPtr :: FunPtr (Ptr GLint -> IO ())
glTexCoord4ivFunPtr = unsafePerformIO (getProcAddress "glTexCoord4iv")
{-# NOINLINE glTexCoord4ivFunPtr #-}
-- | Usage: @'glTexCoord4s' s t r q@
--
-- The parameter @s@ is a @CoordS@.
--
-- The parameter @t@ is a @CoordS@.
--
-- The parameter @r@ is a @CoordS@.
--
-- The parameter @q@ is a @CoordS@.
--
-- The vector equivalent of this command is 'Graphics.GL.Internal.Shared.glTexCoord4sv'.
glTexCoord4s :: MonadIO m => GLshort -> GLshort -> GLshort -> GLshort -> m ()
glTexCoord4s = ffishortshortshortshortIOV glTexCoord4sFunPtr
glTexCoord4sFunPtr :: FunPtr (GLshort -> GLshort -> GLshort -> GLshort -> IO ())
glTexCoord4sFunPtr = unsafePerformIO (getProcAddress "glTexCoord4s")
{-# NOINLINE glTexCoord4sFunPtr #-}
-- | Usage: @'glTexCoord4sv' v@
--
-- The parameter @v@ is a @CoordS@.
--
-- The length of @v@ should be @4@.
glTexCoord4sv :: MonadIO m => Ptr GLshort -> m ()
glTexCoord4sv = ffiPtrshortIOV glTexCoord4svFunPtr
glTexCoord4svFunPtr :: FunPtr (Ptr GLshort -> IO ())
glTexCoord4svFunPtr = unsafePerformIO (getProcAddress "glTexCoord4sv")
{-# NOINLINE glTexCoord4svFunPtr #-}
-- | Usage: @'glTexCoordPointer' size type stride pointer@
--
-- The parameter @type@ is a @TexCoordPointerType@, one of: 'Graphics.GL.Internal.Shared.GL_DOUBLE', 'Graphics.GL.Internal.Shared.GL_FLOAT', 'Graphics.GL.Internal.Shared.GL_INT', 'Graphics.GL.Internal.Shared.GL_SHORT'.
--
-- The length of @pointer@ should be @COMPSIZE(size,type,stride)@.
glTexCoordPointer :: MonadIO m => GLint -> GLenum -> GLsizei -> Ptr () -> m ()
glTexCoordPointer = ffiintenumsizeiPtrVIOV glTexCoordPointerFunPtr
glTexCoordPointerFunPtr :: FunPtr (GLint -> GLenum -> GLsizei -> Ptr () -> IO ())
glTexCoordPointerFunPtr = unsafePerformIO (getProcAddress "glTexCoordPointer")
{-# NOINLINE glTexCoordPointerFunPtr #-}
-- | Usage: @'glTexEnvf' target pname param@
--
-- The parameter @target@ is a @TextureEnvTarget@, one of: 'Graphics.GL.Internal.Shared.GL_TEXTURE_ENV'.
--
-- The parameter @pname@ is a @TextureEnvParameter@, one of: 'Graphics.GL.Internal.Shared.GL_TEXTURE_ENV_COLOR', 'Graphics.GL.Internal.Shared.GL_TEXTURE_ENV_MODE'.
--
-- The parameter @param@ is a @CheckedFloat32@.
glTexEnvf :: MonadIO m => GLenum -> GLenum -> GLfloat -> m ()
glTexEnvf = ffienumenumfloatIOV glTexEnvfFunPtr
glTexEnvfFunPtr :: FunPtr (GLenum -> GLenum -> GLfloat -> IO ())
glTexEnvfFunPtr = unsafePerformIO (getProcAddress "glTexEnvf")
{-# NOINLINE glTexEnvfFunPtr #-}
-- | Usage: @'glTexEnvfv' target pname params@
--
-- The parameter @target@ is a @TextureEnvTarget@, one of: 'Graphics.GL.Internal.Shared.GL_TEXTURE_ENV'.
--
-- The parameter @pname@ is a @TextureEnvParameter@, one of: 'Graphics.GL.Internal.Shared.GL_TEXTURE_ENV_COLOR', 'Graphics.GL.Internal.Shared.GL_TEXTURE_ENV_MODE'.
--
-- The parameter @params@ is a @CheckedFloat32@.
--
-- The length of @params@ should be @COMPSIZE(pname)@.
glTexEnvfv :: MonadIO m => GLenum -> GLenum -> Ptr GLfloat -> m ()
glTexEnvfv = ffienumenumPtrfloatIOV glTexEnvfvFunPtr
glTexEnvfvFunPtr :: FunPtr (GLenum -> GLenum -> Ptr GLfloat -> IO ())
glTexEnvfvFunPtr = unsafePerformIO (getProcAddress "glTexEnvfv")
{-# NOINLINE glTexEnvfvFunPtr #-}
-- | Usage: @'glTexEnvi' target pname param@
--
-- The parameter @target@ is a @TextureEnvTarget@, one of: 'Graphics.GL.Internal.Shared.GL_TEXTURE_ENV'.
--
-- The parameter @pname@ is a @TextureEnvParameter@, one of: 'Graphics.GL.Internal.Shared.GL_TEXTURE_ENV_COLOR', 'Graphics.GL.Internal.Shared.GL_TEXTURE_ENV_MODE'.
--
-- The parameter @param@ is a @CheckedInt32@.
glTexEnvi :: MonadIO m => GLenum -> GLenum -> GLint -> m ()
glTexEnvi = ffienumenumintIOV glTexEnviFunPtr
glTexEnviFunPtr :: FunPtr (GLenum -> GLenum -> GLint -> IO ())
glTexEnviFunPtr = unsafePerformIO (getProcAddress "glTexEnvi")
{-# NOINLINE glTexEnviFunPtr #-}
-- | Usage: @'glTexEnviv' target pname params@
--
-- The parameter @target@ is a @TextureEnvTarget@, one of: 'Graphics.GL.Internal.Shared.GL_TEXTURE_ENV'.
--
-- The parameter @pname@ is a @TextureEnvParameter@, one of: 'Graphics.GL.Internal.Shared.GL_TEXTURE_ENV_COLOR', 'Graphics.GL.Internal.Shared.GL_TEXTURE_ENV_MODE'.
--
-- The parameter @params@ is a @CheckedInt32@.
--
-- The length of @params@ should be @COMPSIZE(pname)@.
glTexEnviv :: MonadIO m => GLenum -> GLenum -> Ptr GLint -> m ()
glTexEnviv = ffienumenumPtrintIOV glTexEnvivFunPtr
glTexEnvivFunPtr :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
glTexEnvivFunPtr = unsafePerformIO (getProcAddress "glTexEnviv")
{-# NOINLINE glTexEnvivFunPtr #-}
-- | Usage: @'glTexGend' coord pname param@
--
-- The parameter @coord@ is a @TextureCoordName@, one of: 'Graphics.GL.Internal.Shared.GL_S', 'Graphics.GL.Internal.Shared.GL_T', 'Graphics.GL.Internal.Shared.GL_R', 'Graphics.GL.Internal.Shared.GL_Q'.
--
-- The parameter @pname@ is a @TextureGenParameter@, one of: 'Graphics.GL.Ext.SGIS.PointLineTexgen.GL_EYE_LINE_SGIS', 'Graphics.GL.Internal.Shared.GL_EYE_PLANE', 'Graphics.GL.Ext.SGIS.PointLineTexgen.GL_EYE_POINT_SGIS', 'Graphics.GL.Ext.SGIS.PointLineTexgen.GL_OBJECT_LINE_SGIS', 'Graphics.GL.Internal.Shared.GL_OBJECT_PLANE', 'Graphics.GL.Ext.SGIS.PointLineTexgen.GL_OBJECT_POINT_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_GEN_MODE'.
glTexGend :: MonadIO m => GLenum -> GLenum -> GLdouble -> m ()
glTexGend = ffienumenumdoubleIOV glTexGendFunPtr
glTexGendFunPtr :: FunPtr (GLenum -> GLenum -> GLdouble -> IO ())
glTexGendFunPtr = unsafePerformIO (getProcAddress "glTexGend")
{-# NOINLINE glTexGendFunPtr #-}
-- | Usage: @'glTexGendv' coord pname params@
--
-- The parameter @coord@ is a @TextureCoordName@, one of: 'Graphics.GL.Internal.Shared.GL_S', 'Graphics.GL.Internal.Shared.GL_T', 'Graphics.GL.Internal.Shared.GL_R', 'Graphics.GL.Internal.Shared.GL_Q'.
--
-- The parameter @pname@ is a @TextureGenParameter@, one of: 'Graphics.GL.Ext.SGIS.PointLineTexgen.GL_EYE_LINE_SGIS', 'Graphics.GL.Internal.Shared.GL_EYE_PLANE', 'Graphics.GL.Ext.SGIS.PointLineTexgen.GL_EYE_POINT_SGIS', 'Graphics.GL.Ext.SGIS.PointLineTexgen.GL_OBJECT_LINE_SGIS', 'Graphics.GL.Internal.Shared.GL_OBJECT_PLANE', 'Graphics.GL.Ext.SGIS.PointLineTexgen.GL_OBJECT_POINT_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_GEN_MODE'.
--
-- The length of @params@ should be @COMPSIZE(pname)@.
glTexGendv :: MonadIO m => GLenum -> GLenum -> Ptr GLdouble -> m ()
glTexGendv = ffienumenumPtrdoubleIOV glTexGendvFunPtr
glTexGendvFunPtr :: FunPtr (GLenum -> GLenum -> Ptr GLdouble -> IO ())
glTexGendvFunPtr = unsafePerformIO (getProcAddress "glTexGendv")
{-# NOINLINE glTexGendvFunPtr #-}
-- | Usage: @'glTexGenf' coord pname param@
--
-- The parameter @coord@ is a @TextureCoordName@, one of: 'Graphics.GL.Internal.Shared.GL_S', 'Graphics.GL.Internal.Shared.GL_T', 'Graphics.GL.Internal.Shared.GL_R', 'Graphics.GL.Internal.Shared.GL_Q'.
--
-- The parameter @pname@ is a @TextureGenParameter@, one of: 'Graphics.GL.Ext.SGIS.PointLineTexgen.GL_EYE_LINE_SGIS', 'Graphics.GL.Internal.Shared.GL_EYE_PLANE', 'Graphics.GL.Ext.SGIS.PointLineTexgen.GL_EYE_POINT_SGIS', 'Graphics.GL.Ext.SGIS.PointLineTexgen.GL_OBJECT_LINE_SGIS', 'Graphics.GL.Internal.Shared.GL_OBJECT_PLANE', 'Graphics.GL.Ext.SGIS.PointLineTexgen.GL_OBJECT_POINT_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_GEN_MODE'.
--
-- The parameter @param@ is a @CheckedFloat32@.
glTexGenf :: MonadIO m => GLenum -> GLenum -> GLfloat -> m ()
glTexGenf = ffienumenumfloatIOV glTexGenfFunPtr
glTexGenfFunPtr :: FunPtr (GLenum -> GLenum -> GLfloat -> IO ())
glTexGenfFunPtr = unsafePerformIO (getProcAddress "glTexGenf")
{-# NOINLINE glTexGenfFunPtr #-}
-- | Usage: @'glTexGenfv' coord pname params@
--
-- The parameter @coord@ is a @TextureCoordName@, one of: 'Graphics.GL.Internal.Shared.GL_S', 'Graphics.GL.Internal.Shared.GL_T', 'Graphics.GL.Internal.Shared.GL_R', 'Graphics.GL.Internal.Shared.GL_Q'.
--
-- The parameter @pname@ is a @TextureGenParameter@, one of: 'Graphics.GL.Ext.SGIS.PointLineTexgen.GL_EYE_LINE_SGIS', 'Graphics.GL.Internal.Shared.GL_EYE_PLANE', 'Graphics.GL.Ext.SGIS.PointLineTexgen.GL_EYE_POINT_SGIS', 'Graphics.GL.Ext.SGIS.PointLineTexgen.GL_OBJECT_LINE_SGIS', 'Graphics.GL.Internal.Shared.GL_OBJECT_PLANE', 'Graphics.GL.Ext.SGIS.PointLineTexgen.GL_OBJECT_POINT_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_GEN_MODE'.
--
-- The parameter @params@ is a @CheckedFloat32@.
--
-- The length of @params@ should be @COMPSIZE(pname)@.
glTexGenfv :: MonadIO m => GLenum -> GLenum -> Ptr GLfloat -> m ()
glTexGenfv = ffienumenumPtrfloatIOV glTexGenfvFunPtr
glTexGenfvFunPtr :: FunPtr (GLenum -> GLenum -> Ptr GLfloat -> IO ())
glTexGenfvFunPtr = unsafePerformIO (getProcAddress "glTexGenfv")
{-# NOINLINE glTexGenfvFunPtr #-}
-- | Usage: @'glTexGeni' coord pname param@
--
-- The parameter @coord@ is a @TextureCoordName@, one of: 'Graphics.GL.Internal.Shared.GL_S', 'Graphics.GL.Internal.Shared.GL_T', 'Graphics.GL.Internal.Shared.GL_R', 'Graphics.GL.Internal.Shared.GL_Q'.
--
-- The parameter @pname@ is a @TextureGenParameter@, one of: 'Graphics.GL.Ext.SGIS.PointLineTexgen.GL_EYE_LINE_SGIS', 'Graphics.GL.Internal.Shared.GL_EYE_PLANE', 'Graphics.GL.Ext.SGIS.PointLineTexgen.GL_EYE_POINT_SGIS', 'Graphics.GL.Ext.SGIS.PointLineTexgen.GL_OBJECT_LINE_SGIS', 'Graphics.GL.Internal.Shared.GL_OBJECT_PLANE', 'Graphics.GL.Ext.SGIS.PointLineTexgen.GL_OBJECT_POINT_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_GEN_MODE'.
--
-- The parameter @param@ is a @CheckedInt32@.
glTexGeni :: MonadIO m => GLenum -> GLenum -> GLint -> m ()
glTexGeni = ffienumenumintIOV glTexGeniFunPtr
glTexGeniFunPtr :: FunPtr (GLenum -> GLenum -> GLint -> IO ())
glTexGeniFunPtr = unsafePerformIO (getProcAddress "glTexGeni")
{-# NOINLINE glTexGeniFunPtr #-}
-- | Usage: @'glTexGeniv' coord pname params@
--
-- The parameter @coord@ is a @TextureCoordName@, one of: 'Graphics.GL.Internal.Shared.GL_S', 'Graphics.GL.Internal.Shared.GL_T', 'Graphics.GL.Internal.Shared.GL_R', 'Graphics.GL.Internal.Shared.GL_Q'.
--
-- The parameter @pname@ is a @TextureGenParameter@, one of: 'Graphics.GL.Ext.SGIS.PointLineTexgen.GL_EYE_LINE_SGIS', 'Graphics.GL.Internal.Shared.GL_EYE_PLANE', 'Graphics.GL.Ext.SGIS.PointLineTexgen.GL_EYE_POINT_SGIS', 'Graphics.GL.Ext.SGIS.PointLineTexgen.GL_OBJECT_LINE_SGIS', 'Graphics.GL.Internal.Shared.GL_OBJECT_PLANE', 'Graphics.GL.Ext.SGIS.PointLineTexgen.GL_OBJECT_POINT_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_GEN_MODE'.
--
-- The parameter @params@ is a @CheckedInt32@.
--
-- The length of @params@ should be @COMPSIZE(pname)@.
glTexGeniv :: MonadIO m => GLenum -> GLenum -> Ptr GLint -> m ()
glTexGeniv = ffienumenumPtrintIOV glTexGenivFunPtr
glTexGenivFunPtr :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
glTexGenivFunPtr = unsafePerformIO (getProcAddress "glTexGeniv")
{-# NOINLINE glTexGenivFunPtr #-}
-- | Usage: @'glTranslated' x y z@
glTranslated :: MonadIO m => GLdouble -> GLdouble -> GLdouble -> m ()
glTranslated = ffidoubledoubledoubleIOV glTranslatedFunPtr
glTranslatedFunPtr :: FunPtr (GLdouble -> GLdouble -> GLdouble -> IO ())
glTranslatedFunPtr = unsafePerformIO (getProcAddress "glTranslated")
{-# NOINLINE glTranslatedFunPtr #-}
-- | Usage: @'glTranslatef' x y z@
glTranslatef :: MonadIO m => GLfloat -> GLfloat -> GLfloat -> m ()
glTranslatef = ffifloatfloatfloatIOV glTranslatefFunPtr
glTranslatefFunPtr :: FunPtr (GLfloat -> GLfloat -> GLfloat -> IO ())
glTranslatefFunPtr = unsafePerformIO (getProcAddress "glTranslatef")
{-# NOINLINE glTranslatefFunPtr #-}
-- | Usage: @'glVertex2d' x y@
--
-- The parameter @x@ is a @CoordD@.
--
-- The parameter @y@ is a @CoordD@.
--
-- The vector equivalent of this command is 'Graphics.GL.Internal.Shared.glVertex2dv'.
glVertex2d :: MonadIO m => GLdouble -> GLdouble -> m ()
glVertex2d = ffidoubledoubleIOV glVertex2dFunPtr
glVertex2dFunPtr :: FunPtr (GLdouble -> GLdouble -> IO ())
glVertex2dFunPtr = unsafePerformIO (getProcAddress "glVertex2d")
{-# NOINLINE glVertex2dFunPtr #-}
-- | Usage: @'glVertex2dv' v@
--
-- The parameter @v@ is a @CoordD@.
--
-- The length of @v@ should be @2@.
glVertex2dv :: MonadIO m => Ptr GLdouble -> m ()
glVertex2dv = ffiPtrdoubleIOV glVertex2dvFunPtr
glVertex2dvFunPtr :: FunPtr (Ptr GLdouble -> IO ())
glVertex2dvFunPtr = unsafePerformIO (getProcAddress "glVertex2dv")
{-# NOINLINE glVertex2dvFunPtr #-}
-- | Usage: @'glVertex2f' x y@
--
-- The parameter @x@ is a @CoordF@.
--
-- The parameter @y@ is a @CoordF@.
--
-- The vector equivalent of this command is 'Graphics.GL.Internal.Shared.glVertex2fv'.
glVertex2f :: MonadIO m => GLfloat -> GLfloat -> m ()
glVertex2f = ffifloatfloatIOV glVertex2fFunPtr
glVertex2fFunPtr :: FunPtr (GLfloat -> GLfloat -> IO ())
glVertex2fFunPtr = unsafePerformIO (getProcAddress "glVertex2f")
{-# NOINLINE glVertex2fFunPtr #-}
-- | Usage: @'glVertex2fv' v@
--
-- The parameter @v@ is a @CoordF@.
--
-- The length of @v@ should be @2@.
glVertex2fv :: MonadIO m => Ptr GLfloat -> m ()
glVertex2fv = ffiPtrfloatIOV glVertex2fvFunPtr
glVertex2fvFunPtr :: FunPtr (Ptr GLfloat -> IO ())
glVertex2fvFunPtr = unsafePerformIO (getProcAddress "glVertex2fv")
{-# NOINLINE glVertex2fvFunPtr #-}
-- | Usage: @'glVertex2i' x y@
--
-- The parameter @x@ is a @CoordI@.
--
-- The parameter @y@ is a @CoordI@.
--
-- The vector equivalent of this command is 'Graphics.GL.Internal.Shared.glVertex2iv'.
glVertex2i :: MonadIO m => GLint -> GLint -> m ()
glVertex2i = ffiintintIOV glVertex2iFunPtr
glVertex2iFunPtr :: FunPtr (GLint -> GLint -> IO ())
glVertex2iFunPtr = unsafePerformIO (getProcAddress "glVertex2i")
{-# NOINLINE glVertex2iFunPtr #-}
-- | Usage: @'glVertex2iv' v@
--
-- The parameter @v@ is a @CoordI@.
--
-- The length of @v@ should be @2@.
glVertex2iv :: MonadIO m => Ptr GLint -> m ()
glVertex2iv = ffiPtrintIOV glVertex2ivFunPtr
glVertex2ivFunPtr :: FunPtr (Ptr GLint -> IO ())
glVertex2ivFunPtr = unsafePerformIO (getProcAddress "glVertex2iv")
{-# NOINLINE glVertex2ivFunPtr #-}
-- | Usage: @'glVertex2s' x y@
--
-- The parameter @x@ is a @CoordS@.
--
-- The parameter @y@ is a @CoordS@.
--
-- The vector equivalent of this command is 'Graphics.GL.Internal.Shared.glVertex2sv'.
glVertex2s :: MonadIO m => GLshort -> GLshort -> m ()
glVertex2s = ffishortshortIOV glVertex2sFunPtr
glVertex2sFunPtr :: FunPtr (GLshort -> GLshort -> IO ())
glVertex2sFunPtr = unsafePerformIO (getProcAddress "glVertex2s")
{-# NOINLINE glVertex2sFunPtr #-}
-- | Usage: @'glVertex2sv' v@
--
-- The parameter @v@ is a @CoordS@.
--
-- The length of @v@ should be @2@.
glVertex2sv :: MonadIO m => Ptr GLshort -> m ()
glVertex2sv = ffiPtrshortIOV glVertex2svFunPtr
glVertex2svFunPtr :: FunPtr (Ptr GLshort -> IO ())
glVertex2svFunPtr = unsafePerformIO (getProcAddress "glVertex2sv")
{-# NOINLINE glVertex2svFunPtr #-}
-- | Usage: @'glVertex3d' x y z@
--
-- The parameter @x@ is a @CoordD@.
--
-- The parameter @y@ is a @CoordD@.
--
-- The parameter @z@ is a @CoordD@.
--
-- The vector equivalent of this command is 'Graphics.GL.Internal.Shared.glVertex3dv'.
glVertex3d :: MonadIO m => GLdouble -> GLdouble -> GLdouble -> m ()
glVertex3d = ffidoubledoubledoubleIOV glVertex3dFunPtr
glVertex3dFunPtr :: FunPtr (GLdouble -> GLdouble -> GLdouble -> IO ())
glVertex3dFunPtr = unsafePerformIO (getProcAddress "glVertex3d")
{-# NOINLINE glVertex3dFunPtr #-}
-- | Usage: @'glVertex3dv' v@
--
-- The parameter @v@ is a @CoordD@.
--
-- The length of @v@ should be @3@.
glVertex3dv :: MonadIO m => Ptr GLdouble -> m ()
glVertex3dv = ffiPtrdoubleIOV glVertex3dvFunPtr
glVertex3dvFunPtr :: FunPtr (Ptr GLdouble -> IO ())
glVertex3dvFunPtr = unsafePerformIO (getProcAddress "glVertex3dv")
{-# NOINLINE glVertex3dvFunPtr #-}
-- | Usage: @'glVertex3f' x y z@
--
-- The parameter @x@ is a @CoordF@.
--
-- The parameter @y@ is a @CoordF@.
--
-- The parameter @z@ is a @CoordF@.
--
-- The vector equivalent of this command is 'Graphics.GL.Internal.Shared.glVertex3fv'.
glVertex3f :: MonadIO m => GLfloat -> GLfloat -> GLfloat -> m ()
glVertex3f = ffifloatfloatfloatIOV glVertex3fFunPtr
glVertex3fFunPtr :: FunPtr (GLfloat -> GLfloat -> GLfloat -> IO ())
glVertex3fFunPtr = unsafePerformIO (getProcAddress "glVertex3f")
{-# NOINLINE glVertex3fFunPtr #-}
-- | Usage: @'glVertex3fv' v@
--
-- The parameter @v@ is a @CoordF@.
--
-- The length of @v@ should be @3@.
glVertex3fv :: MonadIO m => Ptr GLfloat -> m ()
glVertex3fv = ffiPtrfloatIOV glVertex3fvFunPtr
glVertex3fvFunPtr :: FunPtr (Ptr GLfloat -> IO ())
glVertex3fvFunPtr = unsafePerformIO (getProcAddress "glVertex3fv")
{-# NOINLINE glVertex3fvFunPtr #-}
-- | Usage: @'glVertex3i' x y z@
--
-- The parameter @x@ is a @CoordI@.
--
-- The parameter @y@ is a @CoordI@.
--
-- The parameter @z@ is a @CoordI@.
--
-- The vector equivalent of this command is 'Graphics.GL.Internal.Shared.glVertex3iv'.
glVertex3i :: MonadIO m => GLint -> GLint -> GLint -> m ()
glVertex3i = ffiintintintIOV glVertex3iFunPtr
glVertex3iFunPtr :: FunPtr (GLint -> GLint -> GLint -> IO ())
glVertex3iFunPtr = unsafePerformIO (getProcAddress "glVertex3i")
{-# NOINLINE glVertex3iFunPtr #-}
-- | Usage: @'glVertex3iv' v@
--
-- The parameter @v@ is a @CoordI@.
--
-- The length of @v@ should be @3@.
glVertex3iv :: MonadIO m => Ptr GLint -> m ()
glVertex3iv = ffiPtrintIOV glVertex3ivFunPtr
glVertex3ivFunPtr :: FunPtr (Ptr GLint -> IO ())
glVertex3ivFunPtr = unsafePerformIO (getProcAddress "glVertex3iv")
{-# NOINLINE glVertex3ivFunPtr #-}
-- | Usage: @'glVertex3s' x y z@
--
-- The parameter @x@ is a @CoordS@.
--
-- The parameter @y@ is a @CoordS@.
--
-- The parameter @z@ is a @CoordS@.
--
-- The vector equivalent of this command is 'Graphics.GL.Internal.Shared.glVertex3sv'.
glVertex3s :: MonadIO m => GLshort -> GLshort -> GLshort -> m ()
glVertex3s = ffishortshortshortIOV glVertex3sFunPtr
glVertex3sFunPtr :: FunPtr (GLshort -> GLshort -> GLshort -> IO ())
glVertex3sFunPtr = unsafePerformIO (getProcAddress "glVertex3s")
{-# NOINLINE glVertex3sFunPtr #-}
-- | Usage: @'glVertex3sv' v@
--
-- The parameter @v@ is a @CoordS@.
--
-- The length of @v@ should be @3@.
glVertex3sv :: MonadIO m => Ptr GLshort -> m ()
glVertex3sv = ffiPtrshortIOV glVertex3svFunPtr
glVertex3svFunPtr :: FunPtr (Ptr GLshort -> IO ())
glVertex3svFunPtr = unsafePerformIO (getProcAddress "glVertex3sv")
{-# NOINLINE glVertex3svFunPtr #-}
-- | Usage: @'glVertex4d' x y z w@
--
-- The parameter @x@ is a @CoordD@.
--
-- The parameter @y@ is a @CoordD@.
--
-- The parameter @z@ is a @CoordD@.
--
-- The parameter @w@ is a @CoordD@.
--
-- The vector equivalent of this command is 'Graphics.GL.Internal.Shared.glVertex4dv'.
glVertex4d :: MonadIO m => GLdouble -> GLdouble -> GLdouble -> GLdouble -> m ()
glVertex4d = ffidoubledoubledoubledoubleIOV glVertex4dFunPtr
glVertex4dFunPtr :: FunPtr (GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ())
glVertex4dFunPtr = unsafePerformIO (getProcAddress "glVertex4d")
{-# NOINLINE glVertex4dFunPtr #-}
-- | Usage: @'glVertex4dv' v@
--
-- The parameter @v@ is a @CoordD@.
--
-- The length of @v@ should be @4@.
glVertex4dv :: MonadIO m => Ptr GLdouble -> m ()
glVertex4dv = ffiPtrdoubleIOV glVertex4dvFunPtr
glVertex4dvFunPtr :: FunPtr (Ptr GLdouble -> IO ())
glVertex4dvFunPtr = unsafePerformIO (getProcAddress "glVertex4dv")
{-# NOINLINE glVertex4dvFunPtr #-}
-- | Usage: @'glVertex4f' x y z w@
--
-- The parameter @x@ is a @CoordF@.
--
-- The parameter @y@ is a @CoordF@.
--
-- The parameter @z@ is a @CoordF@.
--
-- The parameter @w@ is a @CoordF@.
--
-- The vector equivalent of this command is 'Graphics.GL.Internal.Shared.glVertex4fv'.
glVertex4f :: MonadIO m => GLfloat -> GLfloat -> GLfloat -> GLfloat -> m ()
glVertex4f = ffifloatfloatfloatfloatIOV glVertex4fFunPtr
glVertex4fFunPtr :: FunPtr (GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
glVertex4fFunPtr = unsafePerformIO (getProcAddress "glVertex4f")
{-# NOINLINE glVertex4fFunPtr #-}
-- | Usage: @'glVertex4fv' v@
--
-- The parameter @v@ is a @CoordF@.
--
-- The length of @v@ should be @4@.
glVertex4fv :: MonadIO m => Ptr GLfloat -> m ()
glVertex4fv = ffiPtrfloatIOV glVertex4fvFunPtr
glVertex4fvFunPtr :: FunPtr (Ptr GLfloat -> IO ())
glVertex4fvFunPtr = unsafePerformIO (getProcAddress "glVertex4fv")
{-# NOINLINE glVertex4fvFunPtr #-}
-- | Usage: @'glVertex4i' x y z w@
--
-- The parameter @x@ is a @CoordI@.
--
-- The parameter @y@ is a @CoordI@.
--
-- The parameter @z@ is a @CoordI@.
--
-- The parameter @w@ is a @CoordI@.
--
-- The vector equivalent of this command is 'Graphics.GL.Internal.Shared.glVertex4iv'.
glVertex4i :: MonadIO m => GLint -> GLint -> GLint -> GLint -> m ()
glVertex4i = ffiintintintintIOV glVertex4iFunPtr
glVertex4iFunPtr :: FunPtr (GLint -> GLint -> GLint -> GLint -> IO ())
glVertex4iFunPtr = unsafePerformIO (getProcAddress "glVertex4i")
{-# NOINLINE glVertex4iFunPtr #-}
-- | Usage: @'glVertex4iv' v@
--
-- The parameter @v@ is a @CoordI@.
--
-- The length of @v@ should be @4@.
glVertex4iv :: MonadIO m => Ptr GLint -> m ()
glVertex4iv = ffiPtrintIOV glVertex4ivFunPtr
glVertex4ivFunPtr :: FunPtr (Ptr GLint -> IO ())
glVertex4ivFunPtr = unsafePerformIO (getProcAddress "glVertex4iv")
{-# NOINLINE glVertex4ivFunPtr #-}
-- | Usage: @'glVertex4s' x y z w@
--
-- The parameter @x@ is a @CoordS@.
--
-- The parameter @y@ is a @CoordS@.
--
-- The parameter @z@ is a @CoordS@.
--
-- The parameter @w@ is a @CoordS@.
--
-- The vector equivalent of this command is 'Graphics.GL.Internal.Shared.glVertex4sv'.
glVertex4s :: MonadIO m => GLshort -> GLshort -> GLshort -> GLshort -> m ()
glVertex4s = ffishortshortshortshortIOV glVertex4sFunPtr
glVertex4sFunPtr :: FunPtr (GLshort -> GLshort -> GLshort -> GLshort -> IO ())
glVertex4sFunPtr = unsafePerformIO (getProcAddress "glVertex4s")
{-# NOINLINE glVertex4sFunPtr #-}
-- | Usage: @'glVertex4sv' v@
--
-- The parameter @v@ is a @CoordS@.
--
-- The length of @v@ should be @4@.
glVertex4sv :: MonadIO m => Ptr GLshort -> m ()
glVertex4sv = ffiPtrshortIOV glVertex4svFunPtr
glVertex4svFunPtr :: FunPtr (Ptr GLshort -> IO ())
glVertex4svFunPtr = unsafePerformIO (getProcAddress "glVertex4sv")
{-# NOINLINE glVertex4svFunPtr #-}
-- | Usage: @'glVertexPointer' size type stride pointer@
--
-- The parameter @type@ is a @VertexPointerType@, one of: 'Graphics.GL.Internal.Shared.GL_DOUBLE', 'Graphics.GL.Internal.Shared.GL_FLOAT', 'Graphics.GL.Internal.Shared.GL_INT', 'Graphics.GL.Internal.Shared.GL_SHORT'.
--
-- The length of @pointer@ should be @COMPSIZE(size,type,stride)@.
glVertexPointer :: MonadIO m => GLint -> GLenum -> GLsizei -> Ptr () -> m ()
glVertexPointer = ffiintenumsizeiPtrVIOV glVertexPointerFunPtr
glVertexPointerFunPtr :: FunPtr (GLint -> GLenum -> GLsizei -> Ptr () -> IO ())
glVertexPointerFunPtr = unsafePerformIO (getProcAddress "glVertexPointer")
{-# NOINLINE glVertexPointerFunPtr #-}
-- | Usage: @'glWindowPos2d' x y@
--
-- The parameter @x@ is a @CoordD@.
--
-- The parameter @y@ is a @CoordD@.
--
-- The vector equivalent of this command is 'Graphics.GL.Internal.Shared.glWindowPos2dv'.
glWindowPos2d :: MonadIO m => GLdouble -> GLdouble -> m ()
glWindowPos2d = ffidoubledoubleIOV glWindowPos2dFunPtr
glWindowPos2dFunPtr :: FunPtr (GLdouble -> GLdouble -> IO ())
glWindowPos2dFunPtr = unsafePerformIO (getProcAddress "glWindowPos2d")
{-# NOINLINE glWindowPos2dFunPtr #-}
-- | Usage: @'glWindowPos2dv' v@
--
-- The parameter @v@ is a @CoordD@.
--
-- The length of @v@ should be @2@.
glWindowPos2dv :: MonadIO m => Ptr GLdouble -> m ()
glWindowPos2dv = ffiPtrdoubleIOV glWindowPos2dvFunPtr
glWindowPos2dvFunPtr :: FunPtr (Ptr GLdouble -> IO ())
glWindowPos2dvFunPtr = unsafePerformIO (getProcAddress "glWindowPos2dv")
{-# NOINLINE glWindowPos2dvFunPtr #-}
-- | Usage: @'glWindowPos2f' x y@
--
-- The parameter @x@ is a @CoordF@.
--
-- The parameter @y@ is a @CoordF@.
--
-- The vector equivalent of this command is 'Graphics.GL.Internal.Shared.glWindowPos2fv'.
glWindowPos2f :: MonadIO m => GLfloat -> GLfloat -> m ()
glWindowPos2f = ffifloatfloatIOV glWindowPos2fFunPtr
glWindowPos2fFunPtr :: FunPtr (GLfloat -> GLfloat -> IO ())
glWindowPos2fFunPtr = unsafePerformIO (getProcAddress "glWindowPos2f")
{-# NOINLINE glWindowPos2fFunPtr #-}
-- | Usage: @'glWindowPos2fv' v@
--
-- The parameter @v@ is a @CoordF@.
--
-- The length of @v@ should be @2@.
glWindowPos2fv :: MonadIO m => Ptr GLfloat -> m ()
glWindowPos2fv = ffiPtrfloatIOV glWindowPos2fvFunPtr
glWindowPos2fvFunPtr :: FunPtr (Ptr GLfloat -> IO ())
glWindowPos2fvFunPtr = unsafePerformIO (getProcAddress "glWindowPos2fv")
{-# NOINLINE glWindowPos2fvFunPtr #-}
-- | Usage: @'glWindowPos2i' x y@
--
-- The parameter @x@ is a @CoordI@.
--
-- The parameter @y@ is a @CoordI@.
--
-- The vector equivalent of this command is 'Graphics.GL.Internal.Shared.glWindowPos2iv'.
glWindowPos2i :: MonadIO m => GLint -> GLint -> m ()
glWindowPos2i = ffiintintIOV glWindowPos2iFunPtr
glWindowPos2iFunPtr :: FunPtr (GLint -> GLint -> IO ())
glWindowPos2iFunPtr = unsafePerformIO (getProcAddress "glWindowPos2i")
{-# NOINLINE glWindowPos2iFunPtr #-}
-- | Usage: @'glWindowPos2iv' v@
--
-- The parameter @v@ is a @CoordI@.
--
-- The length of @v@ should be @2@.
glWindowPos2iv :: MonadIO m => Ptr GLint -> m ()
glWindowPos2iv = ffiPtrintIOV glWindowPos2ivFunPtr
glWindowPos2ivFunPtr :: FunPtr (Ptr GLint -> IO ())
glWindowPos2ivFunPtr = unsafePerformIO (getProcAddress "glWindowPos2iv")
{-# NOINLINE glWindowPos2ivFunPtr #-}
-- | Usage: @'glWindowPos2s' x y@
--
-- The parameter @x@ is a @CoordS@.
--
-- The parameter @y@ is a @CoordS@.
--
-- The vector equivalent of this command is 'Graphics.GL.Internal.Shared.glWindowPos2sv'.
glWindowPos2s :: MonadIO m => GLshort -> GLshort -> m ()
glWindowPos2s = ffishortshortIOV glWindowPos2sFunPtr
glWindowPos2sFunPtr :: FunPtr (GLshort -> GLshort -> IO ())
glWindowPos2sFunPtr = unsafePerformIO (getProcAddress "glWindowPos2s")
{-# NOINLINE glWindowPos2sFunPtr #-}
-- | Usage: @'glWindowPos2sv' v@
--
-- The parameter @v@ is a @CoordS@.
--
-- The length of @v@ should be @2@.
glWindowPos2sv :: MonadIO m => Ptr GLshort -> m ()
glWindowPos2sv = ffiPtrshortIOV glWindowPos2svFunPtr
glWindowPos2svFunPtr :: FunPtr (Ptr GLshort -> IO ())
glWindowPos2svFunPtr = unsafePerformIO (getProcAddress "glWindowPos2sv")
{-# NOINLINE glWindowPos2svFunPtr #-}
-- | Usage: @'glWindowPos3d' x y z@
--
-- The parameter @x@ is a @CoordD@.
--
-- The parameter @y@ is a @CoordD@.
--
-- The parameter @z@ is a @CoordD@.
--
-- The vector equivalent of this command is 'Graphics.GL.Internal.Shared.glWindowPos3dv'.
glWindowPos3d :: MonadIO m => GLdouble -> GLdouble -> GLdouble -> m ()
glWindowPos3d = ffidoubledoubledoubleIOV glWindowPos3dFunPtr
glWindowPos3dFunPtr :: FunPtr (GLdouble -> GLdouble -> GLdouble -> IO ())
glWindowPos3dFunPtr = unsafePerformIO (getProcAddress "glWindowPos3d")
{-# NOINLINE glWindowPos3dFunPtr #-}
-- | Usage: @'glWindowPos3dv' v@
--
-- The parameter @v@ is a @CoordD@.
--
-- The length of @v@ should be @3@.
glWindowPos3dv :: MonadIO m => Ptr GLdouble -> m ()
glWindowPos3dv = ffiPtrdoubleIOV glWindowPos3dvFunPtr
glWindowPos3dvFunPtr :: FunPtr (Ptr GLdouble -> IO ())
glWindowPos3dvFunPtr = unsafePerformIO (getProcAddress "glWindowPos3dv")
{-# NOINLINE glWindowPos3dvFunPtr #-}
-- | Usage: @'glWindowPos3f' x y z@
--
-- The parameter @x@ is a @CoordF@.
--
-- The parameter @y@ is a @CoordF@.
--
-- The parameter @z@ is a @CoordF@.
--
-- The vector equivalent of this command is 'Graphics.GL.Internal.Shared.glWindowPos3fv'.
glWindowPos3f :: MonadIO m => GLfloat -> GLfloat -> GLfloat -> m ()
glWindowPos3f = ffifloatfloatfloatIOV glWindowPos3fFunPtr
glWindowPos3fFunPtr :: FunPtr (GLfloat -> GLfloat -> GLfloat -> IO ())
glWindowPos3fFunPtr = unsafePerformIO (getProcAddress "glWindowPos3f")
{-# NOINLINE glWindowPos3fFunPtr #-}
-- | Usage: @'glWindowPos3fv' v@
--
-- The parameter @v@ is a @CoordF@.
--
-- The length of @v@ should be @3@.
glWindowPos3fv :: MonadIO m => Ptr GLfloat -> m ()
glWindowPos3fv = ffiPtrfloatIOV glWindowPos3fvFunPtr
glWindowPos3fvFunPtr :: FunPtr (Ptr GLfloat -> IO ())
glWindowPos3fvFunPtr = unsafePerformIO (getProcAddress "glWindowPos3fv")
{-# NOINLINE glWindowPos3fvFunPtr #-}
-- | Usage: @'glWindowPos3i' x y z@
--
-- The parameter @x@ is a @CoordI@.
--
-- The parameter @y@ is a @CoordI@.
--
-- The parameter @z@ is a @CoordI@.
--
-- The vector equivalent of this command is 'Graphics.GL.Internal.Shared.glWindowPos3iv'.
glWindowPos3i :: MonadIO m => GLint -> GLint -> GLint -> m ()
glWindowPos3i = ffiintintintIOV glWindowPos3iFunPtr
glWindowPos3iFunPtr :: FunPtr (GLint -> GLint -> GLint -> IO ())
glWindowPos3iFunPtr = unsafePerformIO (getProcAddress "glWindowPos3i")
{-# NOINLINE glWindowPos3iFunPtr #-}
-- | Usage: @'glWindowPos3iv' v@
--
-- The parameter @v@ is a @CoordI@.
--
-- The length of @v@ should be @3@.
glWindowPos3iv :: MonadIO m => Ptr GLint -> m ()
glWindowPos3iv = ffiPtrintIOV glWindowPos3ivFunPtr
glWindowPos3ivFunPtr :: FunPtr (Ptr GLint -> IO ())
glWindowPos3ivFunPtr = unsafePerformIO (getProcAddress "glWindowPos3iv")
{-# NOINLINE glWindowPos3ivFunPtr #-}
-- | Usage: @'glWindowPos3s' x y z@
--
-- The parameter @x@ is a @CoordS@.
--
-- The parameter @y@ is a @CoordS@.
--
-- The parameter @z@ is a @CoordS@.
--
-- The vector equivalent of this command is 'Graphics.GL.Internal.Shared.glWindowPos3sv'.
glWindowPos3s :: MonadIO m => GLshort -> GLshort -> GLshort -> m ()
glWindowPos3s = ffishortshortshortIOV glWindowPos3sFunPtr
glWindowPos3sFunPtr :: FunPtr (GLshort -> GLshort -> GLshort -> IO ())
glWindowPos3sFunPtr = unsafePerformIO (getProcAddress "glWindowPos3s")
{-# NOINLINE glWindowPos3sFunPtr #-}
-- | Usage: @'glWindowPos3sv' v@
--
-- The parameter @v@ is a @CoordS@.
--
-- The length of @v@ should be @3@.
glWindowPos3sv :: MonadIO m => Ptr GLshort -> m ()
glWindowPos3sv = ffiPtrshortIOV glWindowPos3svFunPtr
glWindowPos3svFunPtr :: FunPtr (Ptr GLshort -> IO ())
glWindowPos3svFunPtr = unsafePerformIO (getProcAddress "glWindowPos3sv")
{-# NOINLINE glWindowPos3svFunPtr #-}
pattern GL_2D = 0x0600
pattern GL_2_BYTES = 0x1407
pattern GL_3D = 0x0601
pattern GL_3D_COLOR = 0x0602
pattern GL_3D_COLOR_TEXTURE = 0x0603
pattern GL_3_BYTES = 0x1408
pattern GL_4D_COLOR_TEXTURE = 0x0604
pattern GL_4_BYTES = 0x1409
pattern GL_ACCUM = 0x0100
pattern GL_ACCUM_ALPHA_BITS = 0x0D5B
pattern GL_ACCUM_BLUE_BITS = 0x0D5A
pattern GL_ACCUM_BUFFER_BIT = 0x00000200
pattern GL_ACCUM_CLEAR_VALUE = 0x0B80
pattern GL_ACCUM_GREEN_BITS = 0x0D59
pattern GL_ACCUM_RED_BITS = 0x0D58
pattern GL_ADD = 0x0104
pattern GL_ADD_SIGNED = 0x8574
pattern GL_ALIASED_POINT_SIZE_RANGE = 0x846D
pattern GL_ALL_ATTRIB_BITS = 0xFFFFFFFF
pattern GL_ALPHA12 = 0x803D
pattern GL_ALPHA16 = 0x803E
pattern GL_ALPHA4 = 0x803B
pattern GL_ALPHA8 = 0x803C
pattern GL_ALPHA_BIAS = 0x0D1D
pattern GL_ALPHA_BITS = 0x0D55
pattern GL_ALPHA_INTEGER = 0x8D97
pattern GL_ALPHA_SCALE = 0x0D1C
pattern GL_ALPHA_TEST = 0x0BC0
pattern GL_ALPHA_TEST_FUNC = 0x0BC1
pattern GL_ALPHA_TEST_REF = 0x0BC2
pattern GL_AMBIENT = 0x1200
pattern GL_AMBIENT_AND_DIFFUSE = 0x1602
pattern GL_ATTRIB_STACK_DEPTH = 0x0BB0
pattern GL_AUTO_NORMAL = 0x0D80
pattern GL_AUX0 = 0x0409
pattern GL_AUX1 = 0x040A
pattern GL_AUX2 = 0x040B
pattern GL_AUX3 = 0x040C
pattern GL_AUX_BUFFERS = 0x0C00
pattern GL_BITMAP = 0x1A00
pattern GL_BITMAP_TOKEN = 0x0704
pattern GL_BLUE_BIAS = 0x0D1B
pattern GL_BLUE_BITS = 0x0D54
pattern GL_BLUE_SCALE = 0x0D1A
pattern GL_C3F_V3F = 0x2A24
pattern GL_C4F_N3F_V3F = 0x2A26
pattern GL_C4UB_V2F = 0x2A22
pattern GL_C4UB_V3F = 0x2A23
pattern GL_CLAMP = 0x2900
pattern GL_CLAMP_FRAGMENT_COLOR = 0x891B
pattern GL_CLAMP_VERTEX_COLOR = 0x891A
pattern GL_CLIENT_ACTIVE_TEXTURE = 0x84E1
pattern GL_CLIENT_ALL_ATTRIB_BITS = 0xFFFFFFFF
pattern GL_CLIENT_ATTRIB_STACK_DEPTH = 0x0BB1
pattern GL_CLIENT_PIXEL_STORE_BIT = 0x00000001
pattern GL_CLIENT_VERTEX_ARRAY_BIT = 0x00000002
pattern GL_CLIP_PLANE0 = 0x3000
pattern GL_CLIP_PLANE1 = 0x3001
pattern GL_CLIP_PLANE2 = 0x3002
pattern GL_CLIP_PLANE3 = 0x3003
pattern GL_CLIP_PLANE4 = 0x3004
pattern GL_CLIP_PLANE5 = 0x3005
pattern GL_COEFF = 0x0A00
pattern GL_COLOR_ARRAY = 0x8076
pattern GL_COLOR_ARRAY_BUFFER_BINDING = 0x8898
pattern GL_COLOR_ARRAY_POINTER = 0x8090
pattern GL_COLOR_ARRAY_SIZE = 0x8081
pattern GL_COLOR_ARRAY_STRIDE = 0x8083
pattern GL_COLOR_ARRAY_TYPE = 0x8082
pattern GL_COLOR_INDEX = 0x1900
pattern GL_COLOR_INDEXES = 0x1603
pattern GL_COLOR_MATERIAL = 0x0B57
pattern GL_COLOR_MATERIAL_FACE = 0x0B55
pattern GL_COLOR_MATERIAL_PARAMETER = 0x0B56
pattern GL_COLOR_SUM = 0x8458
pattern GL_COMBINE = 0x8570
pattern GL_COMBINE_ALPHA = 0x8572
pattern GL_COMBINE_RGB = 0x8571
pattern GL_COMPARE_R_TO_TEXTURE = 0x884E
pattern GL_COMPILE = 0x1300
pattern GL_COMPILE_AND_EXECUTE = 0x1301
pattern GL_COMPRESSED_ALPHA = 0x84E9
pattern GL_COMPRESSED_INTENSITY = 0x84EC
pattern GL_COMPRESSED_LUMINANCE = 0x84EA
pattern GL_COMPRESSED_LUMINANCE_ALPHA = 0x84EB
pattern GL_COMPRESSED_SLUMINANCE = 0x8C4A
pattern GL_COMPRESSED_SLUMINANCE_ALPHA = 0x8C4B
pattern GL_CONSTANT = 0x8576
pattern GL_CONSTANT_ATTENUATION = 0x1207
pattern GL_COORD_REPLACE = 0x8862
pattern GL_COPY_PIXEL_TOKEN = 0x0706
pattern GL_CURRENT_BIT = 0x00000001
pattern GL_CURRENT_COLOR = 0x0B00
pattern GL_CURRENT_FOG_COORD = 0x8453
pattern GL_CURRENT_FOG_COORDINATE = 0x8453
pattern GL_CURRENT_INDEX = 0x0B01
pattern GL_CURRENT_NORMAL = 0x0B02
pattern GL_CURRENT_RASTER_COLOR = 0x0B04
pattern GL_CURRENT_RASTER_DISTANCE = 0x0B09
pattern GL_CURRENT_RASTER_INDEX = 0x0B05
pattern GL_CURRENT_RASTER_POSITION = 0x0B07
pattern GL_CURRENT_RASTER_POSITION_VALID = 0x0B08
pattern GL_CURRENT_RASTER_SECONDARY_COLOR = 0x845F
pattern GL_CURRENT_RASTER_TEXTURE_COORDS = 0x0B06
pattern GL_CURRENT_SECONDARY_COLOR = 0x8459
pattern GL_CURRENT_TEXTURE_COORDS = 0x0B03
pattern GL_DECAL = 0x2101
pattern GL_DEPTH_BIAS = 0x0D1F
pattern GL_DEPTH_BITS = 0x0D56
pattern GL_DEPTH_SCALE = 0x0D1E
pattern GL_DEPTH_TEXTURE_MODE = 0x884B
pattern GL_DIFFUSE = 0x1201
pattern GL_DOMAIN = 0x0A02
pattern GL_DOT3_RGB = 0x86AE
pattern GL_DOT3_RGBA = 0x86AF
pattern GL_DRAW_PIXEL_TOKEN = 0x0705
pattern GL_EDGE_FLAG = 0x0B43
pattern GL_EDGE_FLAG_ARRAY = 0x8079
pattern GL_EDGE_FLAG_ARRAY_BUFFER_BINDING = 0x889B
pattern GL_EDGE_FLAG_ARRAY_POINTER = 0x8093
pattern GL_EDGE_FLAG_ARRAY_STRIDE = 0x808C
pattern GL_EMISSION = 0x1600
pattern GL_ENABLE_BIT = 0x00002000
pattern GL_EVAL_BIT = 0x00010000
pattern GL_EXP = 0x0800
pattern GL_EXP2 = 0x0801
pattern GL_EYE_LINEAR = 0x2400
pattern GL_EYE_PLANE = 0x2502
pattern GL_FEEDBACK = 0x1C01
pattern GL_FEEDBACK_BUFFER_POINTER = 0x0DF0
pattern GL_FEEDBACK_BUFFER_SIZE = 0x0DF1
pattern GL_FEEDBACK_BUFFER_TYPE = 0x0DF2
pattern GL_FLAT = 0x1D00
pattern GL_FOG = 0x0B60
pattern GL_FOG_BIT = 0x00000080
pattern GL_FOG_COLOR = 0x0B66
pattern GL_FOG_COORD = 0x8451
pattern GL_FOG_COORDINATE = 0x8451
pattern GL_FOG_COORDINATE_ARRAY = 0x8457
pattern GL_FOG_COORDINATE_ARRAY_BUFFER_BINDING = 0x889D
pattern GL_FOG_COORDINATE_ARRAY_POINTER = 0x8456
pattern GL_FOG_COORDINATE_ARRAY_STRIDE = 0x8455
pattern GL_FOG_COORDINATE_ARRAY_TYPE = 0x8454
pattern GL_FOG_COORDINATE_SOURCE = 0x8450
pattern GL_FOG_COORD_ARRAY = 0x8457
pattern GL_FOG_COORD_ARRAY_BUFFER_BINDING = 0x889D
pattern GL_FOG_COORD_ARRAY_POINTER = 0x8456
pattern GL_FOG_COORD_ARRAY_STRIDE = 0x8455
pattern GL_FOG_COORD_ARRAY_TYPE = 0x8454
pattern GL_FOG_COORD_SRC = 0x8450
pattern GL_FOG_DENSITY = 0x0B62
pattern GL_FOG_END = 0x0B64
pattern GL_FOG_HINT = 0x0C54
pattern GL_FOG_INDEX = 0x0B61
pattern GL_FOG_MODE = 0x0B65
pattern GL_FOG_START = 0x0B63
pattern GL_FRAGMENT_DEPTH = 0x8452
pattern GL_GENERATE_MIPMAP = 0x8191
pattern GL_GENERATE_MIPMAP_HINT = 0x8192
pattern GL_GREEN_BIAS = 0x0D19
pattern GL_GREEN_BITS = 0x0D53
pattern GL_GREEN_SCALE = 0x0D18
pattern GL_HINT_BIT = 0x00008000
pattern GL_INDEX_ARRAY = 0x8077
pattern GL_INDEX_ARRAY_BUFFER_BINDING = 0x8899
pattern GL_INDEX_ARRAY_POINTER = 0x8091
pattern GL_INDEX_ARRAY_STRIDE = 0x8086
pattern GL_INDEX_ARRAY_TYPE = 0x8085
pattern GL_INDEX_BITS = 0x0D51
pattern GL_INDEX_CLEAR_VALUE = 0x0C20
pattern GL_INDEX_LOGIC_OP = 0x0BF1
pattern GL_INDEX_MODE = 0x0C30
pattern GL_INDEX_OFFSET = 0x0D13
pattern GL_INDEX_SHIFT = 0x0D12
pattern GL_INDEX_WRITEMASK = 0x0C21
pattern GL_INTENSITY = 0x8049
pattern GL_INTENSITY12 = 0x804C
pattern GL_INTENSITY16 = 0x804D
pattern GL_INTENSITY4 = 0x804A
pattern GL_INTENSITY8 = 0x804B
pattern GL_INTERPOLATE = 0x8575
pattern GL_LIGHT0 = 0x4000
pattern GL_LIGHT1 = 0x4001
pattern GL_LIGHT2 = 0x4002
pattern GL_LIGHT3 = 0x4003
pattern GL_LIGHT4 = 0x4004
pattern GL_LIGHT5 = 0x4005
pattern GL_LIGHT6 = 0x4006
pattern GL_LIGHT7 = 0x4007
pattern GL_LIGHTING = 0x0B50
pattern GL_LIGHTING_BIT = 0x00000040
pattern GL_LIGHT_MODEL_AMBIENT = 0x0B53
pattern GL_LIGHT_MODEL_COLOR_CONTROL = 0x81F8
pattern GL_LIGHT_MODEL_LOCAL_VIEWER = 0x0B51
pattern GL_LIGHT_MODEL_TWO_SIDE = 0x0B52
pattern GL_LINEAR_ATTENUATION = 0x1208
pattern GL_LINE_BIT = 0x00000004
pattern GL_LINE_RESET_TOKEN = 0x0707
pattern GL_LINE_STIPPLE = 0x0B24
pattern GL_LINE_STIPPLE_PATTERN = 0x0B25
pattern GL_LINE_STIPPLE_REPEAT = 0x0B26
pattern GL_LINE_TOKEN = 0x0702
pattern GL_LIST_BASE = 0x0B32
pattern GL_LIST_BIT = 0x00020000
pattern GL_LIST_INDEX = 0x0B33
pattern GL_LIST_MODE = 0x0B30
pattern GL_LOAD = 0x0101
pattern GL_LOGIC_OP = 0x0BF1
pattern GL_LUMINANCE = 0x1909
pattern GL_LUMINANCE12 = 0x8041
pattern GL_LUMINANCE12_ALPHA12 = 0x8047
pattern GL_LUMINANCE12_ALPHA4 = 0x8046
pattern GL_LUMINANCE16 = 0x8042
pattern GL_LUMINANCE16_ALPHA16 = 0x8048
pattern GL_LUMINANCE4 = 0x803F
pattern GL_LUMINANCE4_ALPHA4 = 0x8043
pattern GL_LUMINANCE6_ALPHA2 = 0x8044
pattern GL_LUMINANCE8 = 0x8040
pattern GL_LUMINANCE8_ALPHA8 = 0x8045
pattern GL_LUMINANCE_ALPHA = 0x190A
pattern GL_MAP1_COLOR_4 = 0x0D90
pattern GL_MAP1_GRID_DOMAIN = 0x0DD0
pattern GL_MAP1_GRID_SEGMENTS = 0x0DD1
pattern GL_MAP1_INDEX = 0x0D91
pattern GL_MAP1_NORMAL = 0x0D92
pattern GL_MAP1_TEXTURE_COORD_1 = 0x0D93
pattern GL_MAP1_TEXTURE_COORD_2 = 0x0D94
pattern GL_MAP1_TEXTURE_COORD_3 = 0x0D95
pattern GL_MAP1_TEXTURE_COORD_4 = 0x0D96
pattern GL_MAP1_VERTEX_3 = 0x0D97
pattern GL_MAP1_VERTEX_4 = 0x0D98
pattern GL_MAP2_COLOR_4 = 0x0DB0
pattern GL_MAP2_GRID_DOMAIN = 0x0DD2
pattern GL_MAP2_GRID_SEGMENTS = 0x0DD3
pattern GL_MAP2_INDEX = 0x0DB1
pattern GL_MAP2_NORMAL = 0x0DB2
pattern GL_MAP2_TEXTURE_COORD_1 = 0x0DB3
pattern GL_MAP2_TEXTURE_COORD_2 = 0x0DB4
pattern GL_MAP2_TEXTURE_COORD_3 = 0x0DB5
pattern GL_MAP2_TEXTURE_COORD_4 = 0x0DB6
pattern GL_MAP2_VERTEX_3 = 0x0DB7
pattern GL_MAP2_VERTEX_4 = 0x0DB8
pattern GL_MAP_COLOR = 0x0D10
pattern GL_MAP_STENCIL = 0x0D11
pattern GL_MATRIX_MODE = 0x0BA0
pattern GL_MAX_ATTRIB_STACK_DEPTH = 0x0D35
pattern GL_MAX_CLIENT_ATTRIB_STACK_DEPTH = 0x0D3B
pattern GL_MAX_CLIP_PLANES = 0x0D32
pattern GL_MAX_EVAL_ORDER = 0x0D30
pattern GL_MAX_LIGHTS = 0x0D31
pattern GL_MAX_LIST_NESTING = 0x0B31
pattern GL_MAX_MODELVIEW_STACK_DEPTH = 0x0D36
pattern GL_MAX_NAME_STACK_DEPTH = 0x0D37
pattern GL_MAX_PIXEL_MAP_TABLE = 0x0D34
pattern GL_MAX_PROJECTION_STACK_DEPTH = 0x0D38
pattern GL_MAX_TEXTURE_COORDS = 0x8871
pattern GL_MAX_TEXTURE_STACK_DEPTH = 0x0D39
pattern GL_MAX_TEXTURE_UNITS = 0x84E2
pattern GL_MODELVIEW = 0x1700
pattern GL_MODELVIEW_MATRIX = 0x0BA6
pattern GL_MODELVIEW_STACK_DEPTH = 0x0BA3
pattern GL_MODULATE = 0x2100
pattern GL_MULT = 0x0103
pattern GL_MULTISAMPLE_BIT = 0x20000000
pattern GL_N3F_V3F = 0x2A25
pattern GL_NAME_STACK_DEPTH = 0x0D70
pattern GL_NORMALIZE = 0x0BA1
pattern GL_NORMAL_ARRAY = 0x8075
pattern GL_NORMAL_ARRAY_BUFFER_BINDING = 0x8897
pattern GL_NORMAL_ARRAY_POINTER = 0x808F
pattern GL_NORMAL_ARRAY_STRIDE = 0x807F
pattern GL_NORMAL_ARRAY_TYPE = 0x807E
pattern GL_NORMAL_MAP = 0x8511
pattern GL_OBJECT_LINEAR = 0x2401
pattern GL_OBJECT_PLANE = 0x2501
pattern GL_OPERAND0_ALPHA = 0x8598
pattern GL_OPERAND0_RGB = 0x8590
pattern GL_OPERAND1_ALPHA = 0x8599
pattern GL_OPERAND1_RGB = 0x8591
pattern GL_OPERAND2_ALPHA = 0x859A
pattern GL_OPERAND2_RGB = 0x8592
pattern GL_ORDER = 0x0A01
pattern GL_PASS_THROUGH_TOKEN = 0x0700
pattern GL_PERSPECTIVE_CORRECTION_HINT = 0x0C50
pattern GL_PIXEL_MAP_A_TO_A = 0x0C79
pattern GL_PIXEL_MAP_A_TO_A_SIZE = 0x0CB9
pattern GL_PIXEL_MAP_B_TO_B = 0x0C78
pattern GL_PIXEL_MAP_B_TO_B_SIZE = 0x0CB8
pattern GL_PIXEL_MAP_G_TO_G = 0x0C77
pattern GL_PIXEL_MAP_G_TO_G_SIZE = 0x0CB7
pattern GL_PIXEL_MAP_I_TO_A = 0x0C75
pattern GL_PIXEL_MAP_I_TO_A_SIZE = 0x0CB5
pattern GL_PIXEL_MAP_I_TO_B = 0x0C74
pattern GL_PIXEL_MAP_I_TO_B_SIZE = 0x0CB4
pattern GL_PIXEL_MAP_I_TO_G = 0x0C73
pattern GL_PIXEL_MAP_I_TO_G_SIZE = 0x0CB3
pattern GL_PIXEL_MAP_I_TO_I = 0x0C70
pattern GL_PIXEL_MAP_I_TO_I_SIZE = 0x0CB0
pattern GL_PIXEL_MAP_I_TO_R = 0x0C72
pattern GL_PIXEL_MAP_I_TO_R_SIZE = 0x0CB2
pattern GL_PIXEL_MAP_R_TO_R = 0x0C76
pattern GL_PIXEL_MAP_R_TO_R_SIZE = 0x0CB6
pattern GL_PIXEL_MAP_S_TO_S = 0x0C71
pattern GL_PIXEL_MAP_S_TO_S_SIZE = 0x0CB1
pattern GL_PIXEL_MODE_BIT = 0x00000020
pattern GL_POINT_BIT = 0x00000002
pattern GL_POINT_DISTANCE_ATTENUATION = 0x8129
pattern GL_POINT_SIZE_MAX = 0x8127
pattern GL_POINT_SIZE_MIN = 0x8126
pattern GL_POINT_SMOOTH = 0x0B10
pattern GL_POINT_SMOOTH_HINT = 0x0C51
pattern GL_POINT_SPRITE = 0x8861
pattern GL_POINT_TOKEN = 0x0701
pattern GL_POLYGON = 0x0009
pattern GL_POLYGON_BIT = 0x00000008
pattern GL_POLYGON_STIPPLE = 0x0B42
pattern GL_POLYGON_STIPPLE_BIT = 0x00000010
pattern GL_POLYGON_TOKEN = 0x0703
pattern GL_POSITION = 0x1203
pattern GL_PREVIOUS = 0x8578
pattern GL_PRIMARY_COLOR = 0x8577
pattern GL_PROJECTION = 0x1701
pattern GL_PROJECTION_MATRIX = 0x0BA7
pattern GL_PROJECTION_STACK_DEPTH = 0x0BA4
pattern GL_Q = 0x2003
pattern GL_QUADRATIC_ATTENUATION = 0x1209
pattern GL_QUADS = 0x0007
pattern GL_QUAD_STRIP = 0x0008
pattern GL_R = 0x2002
pattern GL_RED_BIAS = 0x0D15
pattern GL_RED_BITS = 0x0D52
pattern GL_RED_SCALE = 0x0D14
pattern GL_REFLECTION_MAP = 0x8512
pattern GL_RENDER = 0x1C00
pattern GL_RENDER_MODE = 0x0C40
pattern GL_RESCALE_NORMAL = 0x803A
pattern GL_RETURN = 0x0102
pattern GL_RGBA_MODE = 0x0C31
pattern GL_RGB_SCALE = 0x8573
pattern GL_S = 0x2000
pattern GL_SCISSOR_BIT = 0x00080000
pattern GL_SECONDARY_COLOR_ARRAY = 0x845E
pattern GL_SECONDARY_COLOR_ARRAY_BUFFER_BINDING = 0x889C
pattern GL_SECONDARY_COLOR_ARRAY_POINTER = 0x845D
pattern GL_SECONDARY_COLOR_ARRAY_SIZE = 0x845A
pattern GL_SECONDARY_COLOR_ARRAY_STRIDE = 0x845C
pattern GL_SECONDARY_COLOR_ARRAY_TYPE = 0x845B
pattern GL_SELECT = 0x1C02
pattern GL_SELECTION_BUFFER_POINTER = 0x0DF3
pattern GL_SELECTION_BUFFER_SIZE = 0x0DF4
pattern GL_SEPARATE_SPECULAR_COLOR = 0x81FA
pattern GL_SHADE_MODEL = 0x0B54
pattern GL_SHININESS = 0x1601
pattern GL_SINGLE_COLOR = 0x81F9
pattern GL_SLUMINANCE = 0x8C46
pattern GL_SLUMINANCE8 = 0x8C47
pattern GL_SLUMINANCE8_ALPHA8 = 0x8C45
pattern GL_SLUMINANCE_ALPHA = 0x8C44
pattern GL_SMOOTH = 0x1D01
pattern GL_SOURCE0_ALPHA = 0x8588
pattern GL_SOURCE0_RGB = 0x8580
pattern GL_SOURCE1_ALPHA = 0x8589
pattern GL_SOURCE1_RGB = 0x8581
pattern GL_SOURCE2_ALPHA = 0x858A
pattern GL_SOURCE2_RGB = 0x8582
pattern GL_SPECULAR = 0x1202
pattern GL_SPHERE_MAP = 0x2402
pattern GL_SPOT_CUTOFF = 0x1206
pattern GL_SPOT_DIRECTION = 0x1204
pattern GL_SPOT_EXPONENT = 0x1205
pattern GL_SRC0_ALPHA = 0x8588
pattern GL_SRC0_RGB = 0x8580
pattern GL_SRC1_RGB = 0x8581
pattern GL_SRC2_ALPHA = 0x858A
pattern GL_SRC2_RGB = 0x8582
pattern GL_STACK_OVERFLOW = 0x0503
pattern GL_STACK_UNDERFLOW = 0x0504
pattern GL_STENCIL_BITS = 0x0D57
pattern GL_SUBTRACT = 0x84E7
pattern GL_T = 0x2001
pattern GL_T2F_C3F_V3F = 0x2A2A
pattern GL_T2F_C4F_N3F_V3F = 0x2A2C
pattern GL_T2F_C4UB_V3F = 0x2A29
pattern GL_T2F_N3F_V3F = 0x2A2B
pattern GL_T2F_V3F = 0x2A27
pattern GL_T4F_C4F_N3F_V4F = 0x2A2D
pattern GL_T4F_V4F = 0x2A28
pattern GL_TEXTURE_BIT = 0x00040000
pattern GL_TEXTURE_BORDER = 0x1005
pattern GL_TEXTURE_COMPONENTS = 0x1003
pattern GL_TEXTURE_COORD_ARRAY = 0x8078
pattern GL_TEXTURE_COORD_ARRAY_BUFFER_BINDING = 0x889A
pattern GL_TEXTURE_COORD_ARRAY_POINTER = 0x8092
pattern GL_TEXTURE_COORD_ARRAY_SIZE = 0x8088
pattern GL_TEXTURE_COORD_ARRAY_STRIDE = 0x808A
pattern GL_TEXTURE_COORD_ARRAY_TYPE = 0x8089
pattern GL_TEXTURE_ENV = 0x2300
pattern GL_TEXTURE_ENV_COLOR = 0x2201
pattern GL_TEXTURE_ENV_MODE = 0x2200
pattern GL_TEXTURE_FILTER_CONTROL = 0x8500
pattern GL_TEXTURE_GEN_MODE = 0x2500
pattern GL_TEXTURE_GEN_Q = 0x0C63
pattern GL_TEXTURE_GEN_R = 0x0C62
pattern GL_TEXTURE_GEN_S = 0x0C60
pattern GL_TEXTURE_GEN_T = 0x0C61
pattern GL_TEXTURE_INTENSITY_SIZE = 0x8061
pattern GL_TEXTURE_INTENSITY_TYPE = 0x8C15
pattern GL_TEXTURE_LUMINANCE_SIZE = 0x8060
pattern GL_TEXTURE_LUMINANCE_TYPE = 0x8C14
pattern GL_TEXTURE_MATRIX = 0x0BA8
pattern GL_TEXTURE_PRIORITY = 0x8066
pattern GL_TEXTURE_RESIDENT = 0x8067
pattern GL_TEXTURE_STACK_DEPTH = 0x0BA5
pattern GL_TRANSFORM_BIT = 0x00001000
pattern GL_TRANSPOSE_COLOR_MATRIX = 0x84E6
pattern GL_TRANSPOSE_MODELVIEW_MATRIX = 0x84E3
pattern GL_TRANSPOSE_PROJECTION_MATRIX = 0x84E4
pattern GL_TRANSPOSE_TEXTURE_MATRIX = 0x84E5
pattern GL_V2F = 0x2A20
pattern GL_V3F = 0x2A21
pattern GL_VERTEX_ARRAY = 0x8074
pattern GL_VERTEX_ARRAY_BUFFER_BINDING = 0x8896
pattern GL_VERTEX_ARRAY_POINTER = 0x808E
pattern GL_VERTEX_ARRAY_SIZE = 0x807A
pattern GL_VERTEX_ARRAY_STRIDE = 0x807C
pattern GL_VERTEX_ARRAY_TYPE = 0x807B
pattern GL_VERTEX_PROGRAM_TWO_SIDE = 0x8643
pattern GL_VIEWPORT_BIT = 0x00000800
pattern GL_WEIGHT_ARRAY_BUFFER_BINDING = 0x889E
pattern GL_ZOOM_X = 0x0D16
pattern GL_ZOOM_Y = 0x0D17
-- | Usage: @'glColorP3ui' type color@
glColorP3ui :: MonadIO m => GLenum -> GLuint -> m ()
glColorP3ui = ffienumuintIOV glColorP3uiFunPtr
glColorP3uiFunPtr :: FunPtr (GLenum -> GLuint -> IO ())
glColorP3uiFunPtr = unsafePerformIO (getProcAddress "glColorP3ui")
{-# NOINLINE glColorP3uiFunPtr #-}
-- | Usage: @'glColorP3uiv' type color@
--
-- The length of @color@ should be @1@.
glColorP3uiv :: MonadIO m => GLenum -> Ptr GLuint -> m ()
glColorP3uiv = ffienumPtruintIOV glColorP3uivFunPtr
glColorP3uivFunPtr :: FunPtr (GLenum -> Ptr GLuint -> IO ())
glColorP3uivFunPtr = unsafePerformIO (getProcAddress "glColorP3uiv")
{-# NOINLINE glColorP3uivFunPtr #-}
-- | Usage: @'glColorP4ui' type color@
glColorP4ui :: MonadIO m => GLenum -> GLuint -> m ()
glColorP4ui = ffienumuintIOV glColorP4uiFunPtr
glColorP4uiFunPtr :: FunPtr (GLenum -> GLuint -> IO ())
glColorP4uiFunPtr = unsafePerformIO (getProcAddress "glColorP4ui")
{-# NOINLINE glColorP4uiFunPtr #-}
-- | Usage: @'glColorP4uiv' type color@
--
-- The length of @color@ should be @1@.
glColorP4uiv :: MonadIO m => GLenum -> Ptr GLuint -> m ()
glColorP4uiv = ffienumPtruintIOV glColorP4uivFunPtr
glColorP4uivFunPtr :: FunPtr (GLenum -> Ptr GLuint -> IO ())
glColorP4uivFunPtr = unsafePerformIO (getProcAddress "glColorP4uiv")
{-# NOINLINE glColorP4uivFunPtr #-}
-- | Usage: @'glMultiTexCoordP1ui' texture type coords@
glMultiTexCoordP1ui :: MonadIO m => GLenum -> GLenum -> GLuint -> m ()
glMultiTexCoordP1ui = ffienumenumuintIOV glMultiTexCoordP1uiFunPtr
glMultiTexCoordP1uiFunPtr :: FunPtr (GLenum -> GLenum -> GLuint -> IO ())
glMultiTexCoordP1uiFunPtr = unsafePerformIO (getProcAddress "glMultiTexCoordP1ui")
{-# NOINLINE glMultiTexCoordP1uiFunPtr #-}
-- | Usage: @'glMultiTexCoordP1uiv' texture type coords@
--
-- The length of @coords@ should be @1@.
glMultiTexCoordP1uiv :: MonadIO m => GLenum -> GLenum -> Ptr GLuint -> m ()
glMultiTexCoordP1uiv = ffienumenumPtruintIOV glMultiTexCoordP1uivFunPtr
glMultiTexCoordP1uivFunPtr :: FunPtr (GLenum -> GLenum -> Ptr GLuint -> IO ())
glMultiTexCoordP1uivFunPtr = unsafePerformIO (getProcAddress "glMultiTexCoordP1uiv")
{-# NOINLINE glMultiTexCoordP1uivFunPtr #-}
-- | Usage: @'glMultiTexCoordP2ui' texture type coords@
glMultiTexCoordP2ui :: MonadIO m => GLenum -> GLenum -> GLuint -> m ()
glMultiTexCoordP2ui = ffienumenumuintIOV glMultiTexCoordP2uiFunPtr
glMultiTexCoordP2uiFunPtr :: FunPtr (GLenum -> GLenum -> GLuint -> IO ())
glMultiTexCoordP2uiFunPtr = unsafePerformIO (getProcAddress "glMultiTexCoordP2ui")
{-# NOINLINE glMultiTexCoordP2uiFunPtr #-}
-- | Usage: @'glMultiTexCoordP2uiv' texture type coords@
--
-- The length of @coords@ should be @1@.
glMultiTexCoordP2uiv :: MonadIO m => GLenum -> GLenum -> Ptr GLuint -> m ()
glMultiTexCoordP2uiv = ffienumenumPtruintIOV glMultiTexCoordP2uivFunPtr
glMultiTexCoordP2uivFunPtr :: FunPtr (GLenum -> GLenum -> Ptr GLuint -> IO ())
glMultiTexCoordP2uivFunPtr = unsafePerformIO (getProcAddress "glMultiTexCoordP2uiv")
{-# NOINLINE glMultiTexCoordP2uivFunPtr #-}
-- | Usage: @'glMultiTexCoordP3ui' texture type coords@
glMultiTexCoordP3ui :: MonadIO m => GLenum -> GLenum -> GLuint -> m ()
glMultiTexCoordP3ui = ffienumenumuintIOV glMultiTexCoordP3uiFunPtr
glMultiTexCoordP3uiFunPtr :: FunPtr (GLenum -> GLenum -> GLuint -> IO ())
glMultiTexCoordP3uiFunPtr = unsafePerformIO (getProcAddress "glMultiTexCoordP3ui")
{-# NOINLINE glMultiTexCoordP3uiFunPtr #-}
-- | Usage: @'glMultiTexCoordP3uiv' texture type coords@
--
-- The length of @coords@ should be @1@.
glMultiTexCoordP3uiv :: MonadIO m => GLenum -> GLenum -> Ptr GLuint -> m ()
glMultiTexCoordP3uiv = ffienumenumPtruintIOV glMultiTexCoordP3uivFunPtr
glMultiTexCoordP3uivFunPtr :: FunPtr (GLenum -> GLenum -> Ptr GLuint -> IO ())
glMultiTexCoordP3uivFunPtr = unsafePerformIO (getProcAddress "glMultiTexCoordP3uiv")
{-# NOINLINE glMultiTexCoordP3uivFunPtr #-}
-- | Usage: @'glMultiTexCoordP4ui' texture type coords@
glMultiTexCoordP4ui :: MonadIO m => GLenum -> GLenum -> GLuint -> m ()
glMultiTexCoordP4ui = ffienumenumuintIOV glMultiTexCoordP4uiFunPtr
glMultiTexCoordP4uiFunPtr :: FunPtr (GLenum -> GLenum -> GLuint -> IO ())
glMultiTexCoordP4uiFunPtr = unsafePerformIO (getProcAddress "glMultiTexCoordP4ui")
{-# NOINLINE glMultiTexCoordP4uiFunPtr #-}
-- | Usage: @'glMultiTexCoordP4uiv' texture type coords@
--
-- The length of @coords@ should be @1@.
glMultiTexCoordP4uiv :: MonadIO m => GLenum -> GLenum -> Ptr GLuint -> m ()
glMultiTexCoordP4uiv = ffienumenumPtruintIOV glMultiTexCoordP4uivFunPtr
glMultiTexCoordP4uivFunPtr :: FunPtr (GLenum -> GLenum -> Ptr GLuint -> IO ())
glMultiTexCoordP4uivFunPtr = unsafePerformIO (getProcAddress "glMultiTexCoordP4uiv")
{-# NOINLINE glMultiTexCoordP4uivFunPtr #-}
-- | Usage: @'glNormalP3ui' type coords@
glNormalP3ui :: MonadIO m => GLenum -> GLuint -> m ()
glNormalP3ui = ffienumuintIOV glNormalP3uiFunPtr
glNormalP3uiFunPtr :: FunPtr (GLenum -> GLuint -> IO ())
glNormalP3uiFunPtr = unsafePerformIO (getProcAddress "glNormalP3ui")
{-# NOINLINE glNormalP3uiFunPtr #-}
-- | Usage: @'glNormalP3uiv' type coords@
--
-- The length of @coords@ should be @1@.
glNormalP3uiv :: MonadIO m => GLenum -> Ptr GLuint -> m ()
glNormalP3uiv = ffienumPtruintIOV glNormalP3uivFunPtr
glNormalP3uivFunPtr :: FunPtr (GLenum -> Ptr GLuint -> IO ())
glNormalP3uivFunPtr = unsafePerformIO (getProcAddress "glNormalP3uiv")
{-# NOINLINE glNormalP3uivFunPtr #-}
-- | Usage: @'glSecondaryColorP3ui' type color@
glSecondaryColorP3ui :: MonadIO m => GLenum -> GLuint -> m ()
glSecondaryColorP3ui = ffienumuintIOV glSecondaryColorP3uiFunPtr
glSecondaryColorP3uiFunPtr :: FunPtr (GLenum -> GLuint -> IO ())
glSecondaryColorP3uiFunPtr = unsafePerformIO (getProcAddress "glSecondaryColorP3ui")
{-# NOINLINE glSecondaryColorP3uiFunPtr #-}
-- | Usage: @'glSecondaryColorP3uiv' type color@
--
-- The length of @color@ should be @1@.
glSecondaryColorP3uiv :: MonadIO m => GLenum -> Ptr GLuint -> m ()
glSecondaryColorP3uiv = ffienumPtruintIOV glSecondaryColorP3uivFunPtr
glSecondaryColorP3uivFunPtr :: FunPtr (GLenum -> Ptr GLuint -> IO ())
glSecondaryColorP3uivFunPtr = unsafePerformIO (getProcAddress "glSecondaryColorP3uiv")
{-# NOINLINE glSecondaryColorP3uivFunPtr #-}
-- | Usage: @'glTexCoordP1ui' type coords@
glTexCoordP1ui :: MonadIO m => GLenum -> GLuint -> m ()
glTexCoordP1ui = ffienumuintIOV glTexCoordP1uiFunPtr
glTexCoordP1uiFunPtr :: FunPtr (GLenum -> GLuint -> IO ())
glTexCoordP1uiFunPtr = unsafePerformIO (getProcAddress "glTexCoordP1ui")
{-# NOINLINE glTexCoordP1uiFunPtr #-}
-- | Usage: @'glTexCoordP1uiv' type coords@
--
-- The length of @coords@ should be @1@.
glTexCoordP1uiv :: MonadIO m => GLenum -> Ptr GLuint -> m ()
glTexCoordP1uiv = ffienumPtruintIOV glTexCoordP1uivFunPtr
glTexCoordP1uivFunPtr :: FunPtr (GLenum -> Ptr GLuint -> IO ())
glTexCoordP1uivFunPtr = unsafePerformIO (getProcAddress "glTexCoordP1uiv")
{-# NOINLINE glTexCoordP1uivFunPtr #-}
-- | Usage: @'glTexCoordP2ui' type coords@
glTexCoordP2ui :: MonadIO m => GLenum -> GLuint -> m ()
glTexCoordP2ui = ffienumuintIOV glTexCoordP2uiFunPtr
glTexCoordP2uiFunPtr :: FunPtr (GLenum -> GLuint -> IO ())
glTexCoordP2uiFunPtr = unsafePerformIO (getProcAddress "glTexCoordP2ui")
{-# NOINLINE glTexCoordP2uiFunPtr #-}
-- | Usage: @'glTexCoordP2uiv' type coords@
--
-- The length of @coords@ should be @1@.
glTexCoordP2uiv :: MonadIO m => GLenum -> Ptr GLuint -> m ()
glTexCoordP2uiv = ffienumPtruintIOV glTexCoordP2uivFunPtr
glTexCoordP2uivFunPtr :: FunPtr (GLenum -> Ptr GLuint -> IO ())
glTexCoordP2uivFunPtr = unsafePerformIO (getProcAddress "glTexCoordP2uiv")
{-# NOINLINE glTexCoordP2uivFunPtr #-}
-- | Usage: @'glTexCoordP3ui' type coords@
glTexCoordP3ui :: MonadIO m => GLenum -> GLuint -> m ()
glTexCoordP3ui = ffienumuintIOV glTexCoordP3uiFunPtr
glTexCoordP3uiFunPtr :: FunPtr (GLenum -> GLuint -> IO ())
glTexCoordP3uiFunPtr = unsafePerformIO (getProcAddress "glTexCoordP3ui")
{-# NOINLINE glTexCoordP3uiFunPtr #-}
-- | Usage: @'glTexCoordP3uiv' type coords@
--
-- The length of @coords@ should be @1@.
glTexCoordP3uiv :: MonadIO m => GLenum -> Ptr GLuint -> m ()
glTexCoordP3uiv = ffienumPtruintIOV glTexCoordP3uivFunPtr
glTexCoordP3uivFunPtr :: FunPtr (GLenum -> Ptr GLuint -> IO ())
glTexCoordP3uivFunPtr = unsafePerformIO (getProcAddress "glTexCoordP3uiv")
{-# NOINLINE glTexCoordP3uivFunPtr #-}
-- | Usage: @'glTexCoordP4ui' type coords@
glTexCoordP4ui :: MonadIO m => GLenum -> GLuint -> m ()
glTexCoordP4ui = ffienumuintIOV glTexCoordP4uiFunPtr
glTexCoordP4uiFunPtr :: FunPtr (GLenum -> GLuint -> IO ())
glTexCoordP4uiFunPtr = unsafePerformIO (getProcAddress "glTexCoordP4ui")
{-# NOINLINE glTexCoordP4uiFunPtr #-}
-- | Usage: @'glTexCoordP4uiv' type coords@
--
-- The length of @coords@ should be @1@.
glTexCoordP4uiv :: MonadIO m => GLenum -> Ptr GLuint -> m ()
glTexCoordP4uiv = ffienumPtruintIOV glTexCoordP4uivFunPtr
glTexCoordP4uivFunPtr :: FunPtr (GLenum -> Ptr GLuint -> IO ())
glTexCoordP4uivFunPtr = unsafePerformIO (getProcAddress "glTexCoordP4uiv")
{-# NOINLINE glTexCoordP4uivFunPtr #-}
-- | Usage: @'glVertexP2ui' type value@
glVertexP2ui :: MonadIO m => GLenum -> GLuint -> m ()
glVertexP2ui = ffienumuintIOV glVertexP2uiFunPtr
glVertexP2uiFunPtr :: FunPtr (GLenum -> GLuint -> IO ())
glVertexP2uiFunPtr = unsafePerformIO (getProcAddress "glVertexP2ui")
{-# NOINLINE glVertexP2uiFunPtr #-}
-- | Usage: @'glVertexP2uiv' type value@
--
-- The length of @value@ should be @1@.
glVertexP2uiv :: MonadIO m => GLenum -> Ptr GLuint -> m ()
glVertexP2uiv = ffienumPtruintIOV glVertexP2uivFunPtr
glVertexP2uivFunPtr :: FunPtr (GLenum -> Ptr GLuint -> IO ())
glVertexP2uivFunPtr = unsafePerformIO (getProcAddress "glVertexP2uiv")
{-# NOINLINE glVertexP2uivFunPtr #-}
-- | Usage: @'glVertexP3ui' type value@
glVertexP3ui :: MonadIO m => GLenum -> GLuint -> m ()
glVertexP3ui = ffienumuintIOV glVertexP3uiFunPtr
glVertexP3uiFunPtr :: FunPtr (GLenum -> GLuint -> IO ())
glVertexP3uiFunPtr = unsafePerformIO (getProcAddress "glVertexP3ui")
{-# NOINLINE glVertexP3uiFunPtr #-}
-- | Usage: @'glVertexP3uiv' type value@
--
-- The length of @value@ should be @1@.
glVertexP3uiv :: MonadIO m => GLenum -> Ptr GLuint -> m ()
glVertexP3uiv = ffienumPtruintIOV glVertexP3uivFunPtr
glVertexP3uivFunPtr :: FunPtr (GLenum -> Ptr GLuint -> IO ())
glVertexP3uivFunPtr = unsafePerformIO (getProcAddress "glVertexP3uiv")
{-# NOINLINE glVertexP3uivFunPtr #-}
-- | Usage: @'glVertexP4ui' type value@
glVertexP4ui :: MonadIO m => GLenum -> GLuint -> m ()
glVertexP4ui = ffienumuintIOV glVertexP4uiFunPtr
glVertexP4uiFunPtr :: FunPtr (GLenum -> GLuint -> IO ())
glVertexP4uiFunPtr = unsafePerformIO (getProcAddress "glVertexP4ui")
{-# NOINLINE glVertexP4uiFunPtr #-}
-- | Usage: @'glVertexP4uiv' type value@
--
-- The length of @value@ should be @1@.
glVertexP4uiv :: MonadIO m => GLenum -> Ptr GLuint -> m ()
glVertexP4uiv = ffienumPtruintIOV glVertexP4uivFunPtr
glVertexP4uivFunPtr :: FunPtr (GLenum -> Ptr GLuint -> IO ())
glVertexP4uivFunPtr = unsafePerformIO (getProcAddress "glVertexP4uiv")
{-# NOINLINE glVertexP4uivFunPtr #-}
pattern GL_DISPLAY_LIST = 0x82E7
-- | Usage: @'glActiveTexture' texture@
--
-- The parameter @texture@ is a @TextureUnit@.
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glActiveTexture.xhtml>
glActiveTexture :: MonadIO m => GLenum -> m ()
glActiveTexture = ffienumIOV glActiveTextureFunPtr
glActiveTextureFunPtr :: FunPtr (GLenum -> IO ())
glActiveTextureFunPtr = unsafePerformIO (getProcAddress "glActiveTexture")
{-# NOINLINE glActiveTextureFunPtr #-}
-- | Usage: @'glAttachShader' program shader@
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glAttachShader.xhtml>
glAttachShader :: MonadIO m => GLuint -> GLuint -> m ()
glAttachShader = ffiuintuintIOV glAttachShaderFunPtr
glAttachShaderFunPtr :: FunPtr (GLuint -> GLuint -> IO ())
glAttachShaderFunPtr = unsafePerformIO (getProcAddress "glAttachShader")
{-# NOINLINE glAttachShaderFunPtr #-}
-- | Usage: @'glBeginConditionalRender' id mode@
--
-- The parameter @mode@ is a @TypeEnum@.
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glBeginConditionalRender.xhtml>
glBeginConditionalRender :: MonadIO m => GLuint -> GLenum -> m ()
glBeginConditionalRender = ffiuintenumIOV glBeginConditionalRenderFunPtr
glBeginConditionalRenderFunPtr :: FunPtr (GLuint -> GLenum -> IO ())
glBeginConditionalRenderFunPtr = unsafePerformIO (getProcAddress "glBeginConditionalRender")
{-# NOINLINE glBeginConditionalRenderFunPtr #-}
-- | Usage: @'glBeginQuery' target id@
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glBeginQuery.xhtml>
glBeginQuery :: MonadIO m => GLenum -> GLuint -> m ()
glBeginQuery = ffienumuintIOV glBeginQueryFunPtr
glBeginQueryFunPtr :: FunPtr (GLenum -> GLuint -> IO ())
glBeginQueryFunPtr = unsafePerformIO (getProcAddress "glBeginQuery")
{-# NOINLINE glBeginQueryFunPtr #-}
-- | Usage: @'glBeginTransformFeedback' primitiveMode@
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glBeginTransformFeedback.xhtml>
glBeginTransformFeedback :: MonadIO m => GLenum -> m ()
glBeginTransformFeedback = ffienumIOV glBeginTransformFeedbackFunPtr
glBeginTransformFeedbackFunPtr :: FunPtr (GLenum -> IO ())
glBeginTransformFeedbackFunPtr = unsafePerformIO (getProcAddress "glBeginTransformFeedback")
{-# NOINLINE glBeginTransformFeedbackFunPtr #-}
-- | Usage: @'glBindAttribLocation' program index name@
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glBindAttribLocation.xhtml>
glBindAttribLocation :: MonadIO m => GLuint -> GLuint -> Ptr GLchar -> m ()
glBindAttribLocation = ffiuintuintPtrcharIOV glBindAttribLocationFunPtr
glBindAttribLocationFunPtr :: FunPtr (GLuint -> GLuint -> Ptr GLchar -> IO ())
glBindAttribLocationFunPtr = unsafePerformIO (getProcAddress "glBindAttribLocation")
{-# NOINLINE glBindAttribLocationFunPtr #-}
-- | Usage: @'glBindBuffer' target buffer@
--
-- The parameter @target@ is a @BufferTargetARB@.
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glBindBuffer.xhtml>
glBindBuffer :: MonadIO m => GLenum -> GLuint -> m ()
glBindBuffer = ffienumuintIOV glBindBufferFunPtr
glBindBufferFunPtr :: FunPtr (GLenum -> GLuint -> IO ())
glBindBufferFunPtr = unsafePerformIO (getProcAddress "glBindBuffer")
{-# NOINLINE glBindBufferFunPtr #-}
-- | Usage: @'glBindBufferBase' target index buffer@
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glBindBufferBase.xhtml>
glBindBufferBase :: MonadIO m => GLenum -> GLuint -> GLuint -> m ()
glBindBufferBase = ffienumuintuintIOV glBindBufferBaseFunPtr
glBindBufferBaseFunPtr :: FunPtr (GLenum -> GLuint -> GLuint -> IO ())
glBindBufferBaseFunPtr = unsafePerformIO (getProcAddress "glBindBufferBase")
{-# NOINLINE glBindBufferBaseFunPtr #-}
-- | Usage: @'glBindBufferRange' target index buffer offset size@
--
-- The parameter @offset@ is a @BufferOffset@.
--
-- The parameter @size@ is a @BufferSize@.
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glBindBufferRange.xhtml>
glBindBufferRange :: MonadIO m => GLenum -> GLuint -> GLuint -> GLintptr -> GLsizeiptr -> m ()
glBindBufferRange = ffienumuintuintintptrsizeiptrIOV glBindBufferRangeFunPtr
glBindBufferRangeFunPtr :: FunPtr (GLenum -> GLuint -> GLuint -> GLintptr -> GLsizeiptr -> IO ())
glBindBufferRangeFunPtr = unsafePerformIO (getProcAddress "glBindBufferRange")
{-# NOINLINE glBindBufferRangeFunPtr #-}
-- | Usage: @'glBindFragDataLocation' program color name@
--
-- The length of @name@ should be @COMPSIZE(name)@.
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glBindFragDataLocation.xhtml>
glBindFragDataLocation :: MonadIO m => GLuint -> GLuint -> Ptr GLchar -> m ()
glBindFragDataLocation = ffiuintuintPtrcharIOV glBindFragDataLocationFunPtr
glBindFragDataLocationFunPtr :: FunPtr (GLuint -> GLuint -> Ptr GLchar -> IO ())
glBindFragDataLocationFunPtr = unsafePerformIO (getProcAddress "glBindFragDataLocation")
{-# NOINLINE glBindFragDataLocationFunPtr #-}
-- | Usage: @'glBindFramebuffer' target framebuffer@
--
-- The parameter @target@ is a @FramebufferTarget@.
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glBindFramebuffer.xhtml>
glBindFramebuffer :: MonadIO m => GLenum -> GLuint -> m ()
glBindFramebuffer = ffienumuintIOV glBindFramebufferFunPtr
glBindFramebufferFunPtr :: FunPtr (GLenum -> GLuint -> IO ())
glBindFramebufferFunPtr = unsafePerformIO (getProcAddress "glBindFramebuffer")
{-# NOINLINE glBindFramebufferFunPtr #-}
-- | Usage: @'glBindRenderbuffer' target renderbuffer@
--
-- The parameter @target@ is a @RenderbufferTarget@.
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glBindRenderbuffer.xhtml>
glBindRenderbuffer :: MonadIO m => GLenum -> GLuint -> m ()
glBindRenderbuffer = ffienumuintIOV glBindRenderbufferFunPtr
glBindRenderbufferFunPtr :: FunPtr (GLenum -> GLuint -> IO ())
glBindRenderbufferFunPtr = unsafePerformIO (getProcAddress "glBindRenderbuffer")
{-# NOINLINE glBindRenderbufferFunPtr #-}
-- | Usage: @'glBindTexture' target texture@
--
-- The parameter @target@ is a @TextureTarget@, one of: 'Graphics.GL.Ext.SGIS.DetailTexture.GL_DETAIL_TEXTURE_2D_SGIS', 'Graphics.GL.Internal.Shared.GL_PROXY_TEXTURE_1D', 'Graphics.GL.Ext.EXT.Texture.GL_PROXY_TEXTURE_1D_EXT', 'Graphics.GL.Internal.Shared.GL_PROXY_TEXTURE_2D', 'Graphics.GL.Ext.EXT.Texture.GL_PROXY_TEXTURE_2D_EXT', 'Graphics.GL.Internal.Shared.GL_PROXY_TEXTURE_3D', 'Graphics.GL.Ext.EXT.Texture3D.GL_PROXY_TEXTURE_3D_EXT', 'Graphics.GL.Ext.SGIS.Texture4D.GL_PROXY_TEXTURE_4D_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_1D', 'Graphics.GL.Internal.Shared.GL_TEXTURE_2D', 'Graphics.GL.Internal.Shared.GL_TEXTURE_3D', 'Graphics.GL.Ext.EXT.Texture3D.GL_TEXTURE_3D_EXT', 'Graphics.GL.Ext.OES.Texture3D.GL_TEXTURE_3D_OES', 'Graphics.GL.Ext.SGIS.Texture4D.GL_TEXTURE_4D_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_BASE_LEVEL', 'Graphics.GL.Ext.SGIS.TextureLod.GL_TEXTURE_BASE_LEVEL_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_MAX_LEVEL', 'Graphics.GL.Ext.SGIS.TextureLod.GL_TEXTURE_MAX_LEVEL_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_MAX_LOD', 'Graphics.GL.Ext.SGIS.TextureLod.GL_TEXTURE_MAX_LOD_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_MIN_LOD', 'Graphics.GL.Ext.SGIS.TextureLod.GL_TEXTURE_MIN_LOD_SGIS'.
--
-- The parameter @texture@ is a @Texture@.
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glBindTexture.xhtml>
glBindTexture :: MonadIO m => GLenum -> GLuint -> m ()
glBindTexture = ffienumuintIOV glBindTextureFunPtr
glBindTextureFunPtr :: FunPtr (GLenum -> GLuint -> IO ())
glBindTextureFunPtr = unsafePerformIO (getProcAddress "glBindTexture")
{-# NOINLINE glBindTextureFunPtr #-}
-- | Usage: @'glBindVertexArray' array@
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glBindVertexArray.xhtml>
glBindVertexArray :: MonadIO m => GLuint -> m ()
glBindVertexArray = ffiuintIOV glBindVertexArrayFunPtr
glBindVertexArrayFunPtr :: FunPtr (GLuint -> IO ())
glBindVertexArrayFunPtr = unsafePerformIO (getProcAddress "glBindVertexArray")
{-# NOINLINE glBindVertexArrayFunPtr #-}
-- | Usage: @'glBlendColor' red green blue alpha@
--
-- The parameter @red@ is a @ColorF@.
--
-- The parameter @green@ is a @ColorF@.
--
-- The parameter @blue@ is a @ColorF@.
--
-- The parameter @alpha@ is a @ColorF@.
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glBlendColor.xhtml>
glBlendColor :: MonadIO m => GLfloat -> GLfloat -> GLfloat -> GLfloat -> m ()
glBlendColor = ffifloatfloatfloatfloatIOV glBlendColorFunPtr
glBlendColorFunPtr :: FunPtr (GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
glBlendColorFunPtr = unsafePerformIO (getProcAddress "glBlendColor")
{-# NOINLINE glBlendColorFunPtr #-}
-- | Usage: @'glBlendEquation' mode@
--
-- The parameter @mode@ is a @BlendEquationMode@.
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glBlendEquation.xhtml>
glBlendEquation :: MonadIO m => GLenum -> m ()
glBlendEquation = ffienumIOV glBlendEquationFunPtr
glBlendEquationFunPtr :: FunPtr (GLenum -> IO ())
glBlendEquationFunPtr = unsafePerformIO (getProcAddress "glBlendEquation")
{-# NOINLINE glBlendEquationFunPtr #-}
-- | Usage: @'glBlendEquationSeparate' modeRGB modeAlpha@
--
-- The parameter @modeRGB@ is a @BlendEquationModeEXT@, one of: 'Graphics.GL.Ext.SGIX.BlendAlphaMinmax.GL_ALPHA_MAX_SGIX', 'Graphics.GL.Ext.SGIX.BlendAlphaMinmax.GL_ALPHA_MIN_SGIX', 'Graphics.GL.Ext.EXT.BlendMinmax.GL_FUNC_ADD_EXT', 'Graphics.GL.Ext.EXT.BlendSubtract.GL_FUNC_REVERSE_SUBTRACT_EXT', 'Graphics.GL.Ext.EXT.BlendSubtract.GL_FUNC_SUBTRACT_EXT', 'Graphics.GL.Internal.Shared.GL_LOGIC_OP', 'Graphics.GL.Ext.EXT.BlendMinmax.GL_MAX_EXT', 'Graphics.GL.Ext.EXT.BlendMinmax.GL_MIN_EXT'.
--
-- The parameter @modeAlpha@ is a @BlendEquationModeEXT@, one of: 'Graphics.GL.Ext.SGIX.BlendAlphaMinmax.GL_ALPHA_MAX_SGIX', 'Graphics.GL.Ext.SGIX.BlendAlphaMinmax.GL_ALPHA_MIN_SGIX', 'Graphics.GL.Ext.EXT.BlendMinmax.GL_FUNC_ADD_EXT', 'Graphics.GL.Ext.EXT.BlendSubtract.GL_FUNC_REVERSE_SUBTRACT_EXT', 'Graphics.GL.Ext.EXT.BlendSubtract.GL_FUNC_SUBTRACT_EXT', 'Graphics.GL.Internal.Shared.GL_LOGIC_OP', 'Graphics.GL.Ext.EXT.BlendMinmax.GL_MAX_EXT', 'Graphics.GL.Ext.EXT.BlendMinmax.GL_MIN_EXT'.
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glBlendEquationSeparate.xhtml>
glBlendEquationSeparate :: MonadIO m => GLenum -> GLenum -> m ()
glBlendEquationSeparate = ffienumenumIOV glBlendEquationSeparateFunPtr
glBlendEquationSeparateFunPtr :: FunPtr (GLenum -> GLenum -> IO ())
glBlendEquationSeparateFunPtr = unsafePerformIO (getProcAddress "glBlendEquationSeparate")
{-# NOINLINE glBlendEquationSeparateFunPtr #-}
-- | Usage: @'glBlendFunc' sfactor dfactor@
--
-- The parameter @sfactor@ is a @BlendingFactorSrc@, one of: 'Graphics.GL.Ext.EXT.BlendColor.GL_CONSTANT_ALPHA_EXT', 'Graphics.GL.Ext.EXT.BlendColor.GL_CONSTANT_COLOR_EXT', 'Graphics.GL.Internal.Shared.GL_DST_ALPHA', 'Graphics.GL.Internal.Shared.GL_DST_COLOR', 'Graphics.GL.Internal.Shared.GL_ONE', 'Graphics.GL.Ext.EXT.BlendColor.GL_ONE_MINUS_CONSTANT_ALPHA_EXT', 'Graphics.GL.Ext.EXT.BlendColor.GL_ONE_MINUS_CONSTANT_COLOR_EXT', 'Graphics.GL.Internal.Shared.GL_ONE_MINUS_DST_ALPHA', 'Graphics.GL.Internal.Shared.GL_ONE_MINUS_DST_COLOR', 'Graphics.GL.Internal.Shared.GL_ONE_MINUS_SRC_ALPHA', 'Graphics.GL.Internal.Shared.GL_SRC_ALPHA', 'Graphics.GL.Internal.Shared.GL_SRC_ALPHA_SATURATE', 'Graphics.GL.Internal.Shared.GL_ZERO'.
--
-- The parameter @dfactor@ is a @BlendingFactorDest@, one of: 'Graphics.GL.Ext.EXT.BlendColor.GL_CONSTANT_ALPHA_EXT', 'Graphics.GL.Ext.EXT.BlendColor.GL_CONSTANT_COLOR_EXT', 'Graphics.GL.Internal.Shared.GL_DST_ALPHA', 'Graphics.GL.Internal.Shared.GL_ONE', 'Graphics.GL.Ext.EXT.BlendColor.GL_ONE_MINUS_CONSTANT_ALPHA_EXT', 'Graphics.GL.Ext.EXT.BlendColor.GL_ONE_MINUS_CONSTANT_COLOR_EXT', 'Graphics.GL.Internal.Shared.GL_ONE_MINUS_DST_ALPHA', 'Graphics.GL.Internal.Shared.GL_ONE_MINUS_SRC_ALPHA', 'Graphics.GL.Internal.Shared.GL_ONE_MINUS_SRC_COLOR', 'Graphics.GL.Internal.Shared.GL_SRC_ALPHA', 'Graphics.GL.Internal.Shared.GL_SRC_COLOR', 'Graphics.GL.Internal.Shared.GL_ZERO'.
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glBlendFunc.xhtml>
glBlendFunc :: MonadIO m => GLenum -> GLenum -> m ()
glBlendFunc = ffienumenumIOV glBlendFuncFunPtr
glBlendFuncFunPtr :: FunPtr (GLenum -> GLenum -> IO ())
glBlendFuncFunPtr = unsafePerformIO (getProcAddress "glBlendFunc")
{-# NOINLINE glBlendFuncFunPtr #-}
-- | Usage: @'glBlendFuncSeparate' sfactorRGB dfactorRGB sfactorAlpha dfactorAlpha@
--
-- The parameter @sfactorRGB@ is a @BlendFuncSeparateParameterEXT@.
--
-- The parameter @dfactorRGB@ is a @BlendFuncSeparateParameterEXT@.
--
-- The parameter @sfactorAlpha@ is a @BlendFuncSeparateParameterEXT@.
--
-- The parameter @dfactorAlpha@ is a @BlendFuncSeparateParameterEXT@.
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glBlendFuncSeparate.xhtml>
glBlendFuncSeparate :: MonadIO m => GLenum -> GLenum -> GLenum -> GLenum -> m ()
glBlendFuncSeparate = ffienumenumenumenumIOV glBlendFuncSeparateFunPtr
glBlendFuncSeparateFunPtr :: FunPtr (GLenum -> GLenum -> GLenum -> GLenum -> IO ())
glBlendFuncSeparateFunPtr = unsafePerformIO (getProcAddress "glBlendFuncSeparate")
{-# NOINLINE glBlendFuncSeparateFunPtr #-}
-- | Usage: @'glBlitFramebuffer' srcX0 srcY0 srcX1 srcY1 dstX0 dstY0 dstX1 dstY1 mask filter@
--
-- The parameter @mask@ is a @ClearBufferMask@, one of: 'Graphics.GL.Internal.Shared.GL_ACCUM_BUFFER_BIT', 'Graphics.GL.Internal.Shared.GL_COLOR_BUFFER_BIT', 'Graphics.GL.Ext.NV.CoverageSample.GL_COVERAGE_BUFFER_BIT_NV', 'Graphics.GL.Internal.Shared.GL_DEPTH_BUFFER_BIT', 'Graphics.GL.Internal.Shared.GL_STENCIL_BUFFER_BIT'.
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glBlitFramebuffer.xhtml>
glBlitFramebuffer :: MonadIO m => GLint -> GLint -> GLint -> GLint -> GLint -> GLint -> GLint -> GLint -> GLbitfield -> GLenum -> m ()
glBlitFramebuffer = ffiintintintintintintintintbitfieldenumIOV glBlitFramebufferFunPtr
glBlitFramebufferFunPtr :: FunPtr (GLint -> GLint -> GLint -> GLint -> GLint -> GLint -> GLint -> GLint -> GLbitfield -> GLenum -> IO ())
glBlitFramebufferFunPtr = unsafePerformIO (getProcAddress "glBlitFramebuffer")
{-# NOINLINE glBlitFramebufferFunPtr #-}
-- | Usage: @'glBufferData' target size data usage@
--
-- The parameter @target@ is a @BufferTargetARB@.
--
-- The parameter @size@ is a @BufferSize@.
--
-- The parameter @usage@ is a @BufferUsageARB@.
--
-- The length of @data@ should be @size@.
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glBufferData.xhtml>
glBufferData :: MonadIO m => GLenum -> GLsizeiptr -> Ptr () -> GLenum -> m ()
glBufferData = ffienumsizeiptrPtrVenumIOV glBufferDataFunPtr
glBufferDataFunPtr :: FunPtr (GLenum -> GLsizeiptr -> Ptr () -> GLenum -> IO ())
glBufferDataFunPtr = unsafePerformIO (getProcAddress "glBufferData")
{-# NOINLINE glBufferDataFunPtr #-}
-- | Usage: @'glBufferSubData' target offset size data@
--
-- The parameter @target@ is a @BufferTargetARB@.
--
-- The parameter @offset@ is a @BufferOffset@.
--
-- The parameter @size@ is a @BufferSize@.
--
-- The length of @data@ should be @size@.
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glBufferSubData.xhtml>
glBufferSubData :: MonadIO m => GLenum -> GLintptr -> GLsizeiptr -> Ptr () -> m ()
glBufferSubData = ffienumintptrsizeiptrPtrVIOV glBufferSubDataFunPtr
glBufferSubDataFunPtr :: FunPtr (GLenum -> GLintptr -> GLsizeiptr -> Ptr () -> IO ())
glBufferSubDataFunPtr = unsafePerformIO (getProcAddress "glBufferSubData")
{-# NOINLINE glBufferSubDataFunPtr #-}
-- | Usage: @'glCheckFramebufferStatus' target@
--
-- The parameter @target@ is a @FramebufferTarget@.
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glCheckFramebufferStatus.xhtml>
glCheckFramebufferStatus :: MonadIO m => GLenum -> m GLenum
glCheckFramebufferStatus = ffienumIOenum glCheckFramebufferStatusFunPtr
glCheckFramebufferStatusFunPtr :: FunPtr (GLenum -> IO GLenum)
glCheckFramebufferStatusFunPtr = unsafePerformIO (getProcAddress "glCheckFramebufferStatus")
{-# NOINLINE glCheckFramebufferStatusFunPtr #-}
-- | Usage: @'glClampColor' target clamp@
--
-- The parameter @target@ is a @ClampColorTargetARB@.
--
-- The parameter @clamp@ is a @ClampColorModeARB@.
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glClampColor.xhtml>
glClampColor :: MonadIO m => GLenum -> GLenum -> m ()
glClampColor = ffienumenumIOV glClampColorFunPtr
glClampColorFunPtr :: FunPtr (GLenum -> GLenum -> IO ())
glClampColorFunPtr = unsafePerformIO (getProcAddress "glClampColor")
{-# NOINLINE glClampColorFunPtr #-}
-- | Usage: @'glClear' mask@
--
-- The parameter @mask@ is a @ClearBufferMask@, one of: 'Graphics.GL.Internal.Shared.GL_ACCUM_BUFFER_BIT', 'Graphics.GL.Internal.Shared.GL_COLOR_BUFFER_BIT', 'Graphics.GL.Ext.NV.CoverageSample.GL_COVERAGE_BUFFER_BIT_NV', 'Graphics.GL.Internal.Shared.GL_DEPTH_BUFFER_BIT', 'Graphics.GL.Internal.Shared.GL_STENCIL_BUFFER_BIT'.
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glClear.xhtml>
glClear :: MonadIO m => GLbitfield -> m ()
glClear = ffibitfieldIOV glClearFunPtr
glClearFunPtr :: FunPtr (GLbitfield -> IO ())
glClearFunPtr = unsafePerformIO (getProcAddress "glClear")
{-# NOINLINE glClearFunPtr #-}
-- | Usage: @'glClearBufferfi' buffer drawbuffer depth stencil@
--
-- The parameter @drawbuffer@ is a @DrawBufferName@.
glClearBufferfi :: MonadIO m => GLenum -> GLint -> GLfloat -> GLint -> m ()
glClearBufferfi = ffienumintfloatintIOV glClearBufferfiFunPtr
glClearBufferfiFunPtr :: FunPtr (GLenum -> GLint -> GLfloat -> GLint -> IO ())
glClearBufferfiFunPtr = unsafePerformIO (getProcAddress "glClearBufferfi")
{-# NOINLINE glClearBufferfiFunPtr #-}
-- | Usage: @'glClearBufferfv' buffer drawbuffer value@
--
-- The parameter @drawbuffer@ is a @DrawBufferName@.
--
-- The length of @value@ should be @COMPSIZE(buffer)@.
glClearBufferfv :: MonadIO m => GLenum -> GLint -> Ptr GLfloat -> m ()
glClearBufferfv = ffienumintPtrfloatIOV glClearBufferfvFunPtr
glClearBufferfvFunPtr :: FunPtr (GLenum -> GLint -> Ptr GLfloat -> IO ())
glClearBufferfvFunPtr = unsafePerformIO (getProcAddress "glClearBufferfv")
{-# NOINLINE glClearBufferfvFunPtr #-}
-- | Usage: @'glClearBufferiv' buffer drawbuffer value@
--
-- The parameter @drawbuffer@ is a @DrawBufferName@.
--
-- The length of @value@ should be @COMPSIZE(buffer)@.
glClearBufferiv :: MonadIO m => GLenum -> GLint -> Ptr GLint -> m ()
glClearBufferiv = ffienumintPtrintIOV glClearBufferivFunPtr
glClearBufferivFunPtr :: FunPtr (GLenum -> GLint -> Ptr GLint -> IO ())
glClearBufferivFunPtr = unsafePerformIO (getProcAddress "glClearBufferiv")
{-# NOINLINE glClearBufferivFunPtr #-}
-- | Usage: @'glClearBufferuiv' buffer drawbuffer value@
--
-- The parameter @drawbuffer@ is a @DrawBufferName@.
--
-- The length of @value@ should be @COMPSIZE(buffer)@.
glClearBufferuiv :: MonadIO m => GLenum -> GLint -> Ptr GLuint -> m ()
glClearBufferuiv = ffienumintPtruintIOV glClearBufferuivFunPtr
glClearBufferuivFunPtr :: FunPtr (GLenum -> GLint -> Ptr GLuint -> IO ())
glClearBufferuivFunPtr = unsafePerformIO (getProcAddress "glClearBufferuiv")
{-# NOINLINE glClearBufferuivFunPtr #-}
-- | Usage: @'glClearColor' red green blue alpha@
--
-- The parameter @red@ is a @ColorF@.
--
-- The parameter @green@ is a @ColorF@.
--
-- The parameter @blue@ is a @ColorF@.
--
-- The parameter @alpha@ is a @ColorF@.
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glClearColor.xhtml>
glClearColor :: MonadIO m => GLfloat -> GLfloat -> GLfloat -> GLfloat -> m ()
glClearColor = ffifloatfloatfloatfloatIOV glClearColorFunPtr
glClearColorFunPtr :: FunPtr (GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
glClearColorFunPtr = unsafePerformIO (getProcAddress "glClearColor")
{-# NOINLINE glClearColorFunPtr #-}
-- | Usage: @'glClearDepth' depth@
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glClearDepth.xhtml>
glClearDepth :: MonadIO m => GLdouble -> m ()
glClearDepth = ffidoubleIOV glClearDepthFunPtr
glClearDepthFunPtr :: FunPtr (GLdouble -> IO ())
glClearDepthFunPtr = unsafePerformIO (getProcAddress "glClearDepth")
{-# NOINLINE glClearDepthFunPtr #-}
-- | Usage: @'glClearStencil' s@
--
-- The parameter @s@ is a @StencilValue@.
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glClearStencil.xhtml>
glClearStencil :: MonadIO m => GLint -> m ()
glClearStencil = ffiintIOV glClearStencilFunPtr
glClearStencilFunPtr :: FunPtr (GLint -> IO ())
glClearStencilFunPtr = unsafePerformIO (getProcAddress "glClearStencil")
{-# NOINLINE glClearStencilFunPtr #-}
-- | Usage: @'glClientWaitSync' sync flags timeout@
--
-- The parameter @sync@ is a @sync@.
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glClientWaitSync.xhtml>
glClientWaitSync :: MonadIO m => GLsync -> GLbitfield -> GLuint64 -> m GLenum
glClientWaitSync = ffisyncbitfielduint64IOenum glClientWaitSyncFunPtr
glClientWaitSyncFunPtr :: FunPtr (GLsync -> GLbitfield -> GLuint64 -> IO GLenum)
glClientWaitSyncFunPtr = unsafePerformIO (getProcAddress "glClientWaitSync")
{-# NOINLINE glClientWaitSyncFunPtr #-}
-- | Usage: @'glColorMask' red green blue alpha@
--
-- The parameter @red@ is a @Boolean@, one of: 'Graphics.GL.Internal.Shared.GL_FALSE', 'Graphics.GL.Internal.Shared.GL_TRUE'.
--
-- The parameter @green@ is a @Boolean@, one of: 'Graphics.GL.Internal.Shared.GL_FALSE', 'Graphics.GL.Internal.Shared.GL_TRUE'.
--
-- The parameter @blue@ is a @Boolean@, one of: 'Graphics.GL.Internal.Shared.GL_FALSE', 'Graphics.GL.Internal.Shared.GL_TRUE'.
--
-- The parameter @alpha@ is a @Boolean@, one of: 'Graphics.GL.Internal.Shared.GL_FALSE', 'Graphics.GL.Internal.Shared.GL_TRUE'.
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glColorMask.xhtml>
glColorMask :: MonadIO m => GLboolean -> GLboolean -> GLboolean -> GLboolean -> m ()
glColorMask = ffibooleanbooleanbooleanbooleanIOV glColorMaskFunPtr
glColorMaskFunPtr :: FunPtr (GLboolean -> GLboolean -> GLboolean -> GLboolean -> IO ())
glColorMaskFunPtr = unsafePerformIO (getProcAddress "glColorMask")
{-# NOINLINE glColorMaskFunPtr #-}
-- | Usage: @'glColorMaski' index r g b a@
--
-- The parameter @r@ is a @Boolean@, one of: 'Graphics.GL.Internal.Shared.GL_FALSE', 'Graphics.GL.Internal.Shared.GL_TRUE'.
--
-- The parameter @g@ is a @Boolean@, one of: 'Graphics.GL.Internal.Shared.GL_FALSE', 'Graphics.GL.Internal.Shared.GL_TRUE'.
--
-- The parameter @b@ is a @Boolean@, one of: 'Graphics.GL.Internal.Shared.GL_FALSE', 'Graphics.GL.Internal.Shared.GL_TRUE'.
--
-- The parameter @a@ is a @Boolean@, one of: 'Graphics.GL.Internal.Shared.GL_FALSE', 'Graphics.GL.Internal.Shared.GL_TRUE'.
glColorMaski :: MonadIO m => GLuint -> GLboolean -> GLboolean -> GLboolean -> GLboolean -> m ()
glColorMaski = ffiuintbooleanbooleanbooleanbooleanIOV glColorMaskiFunPtr
glColorMaskiFunPtr :: FunPtr (GLuint -> GLboolean -> GLboolean -> GLboolean -> GLboolean -> IO ())
glColorMaskiFunPtr = unsafePerformIO (getProcAddress "glColorMaski")
{-# NOINLINE glColorMaskiFunPtr #-}
-- | Usage: @'glCompileShader' shader@
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glCompileShader.xhtml>
glCompileShader :: MonadIO m => GLuint -> m ()
glCompileShader = ffiuintIOV glCompileShaderFunPtr
glCompileShaderFunPtr :: FunPtr (GLuint -> IO ())
glCompileShaderFunPtr = unsafePerformIO (getProcAddress "glCompileShader")
{-# NOINLINE glCompileShaderFunPtr #-}
-- | Usage: @'glCompressedTexImage1D' target level internalformat width border imageSize data@
--
-- The parameter @target@ is a @TextureTarget@, one of: 'Graphics.GL.Ext.SGIS.DetailTexture.GL_DETAIL_TEXTURE_2D_SGIS', 'Graphics.GL.Internal.Shared.GL_PROXY_TEXTURE_1D', 'Graphics.GL.Ext.EXT.Texture.GL_PROXY_TEXTURE_1D_EXT', 'Graphics.GL.Internal.Shared.GL_PROXY_TEXTURE_2D', 'Graphics.GL.Ext.EXT.Texture.GL_PROXY_TEXTURE_2D_EXT', 'Graphics.GL.Internal.Shared.GL_PROXY_TEXTURE_3D', 'Graphics.GL.Ext.EXT.Texture3D.GL_PROXY_TEXTURE_3D_EXT', 'Graphics.GL.Ext.SGIS.Texture4D.GL_PROXY_TEXTURE_4D_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_1D', 'Graphics.GL.Internal.Shared.GL_TEXTURE_2D', 'Graphics.GL.Internal.Shared.GL_TEXTURE_3D', 'Graphics.GL.Ext.EXT.Texture3D.GL_TEXTURE_3D_EXT', 'Graphics.GL.Ext.OES.Texture3D.GL_TEXTURE_3D_OES', 'Graphics.GL.Ext.SGIS.Texture4D.GL_TEXTURE_4D_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_BASE_LEVEL', 'Graphics.GL.Ext.SGIS.TextureLod.GL_TEXTURE_BASE_LEVEL_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_MAX_LEVEL', 'Graphics.GL.Ext.SGIS.TextureLod.GL_TEXTURE_MAX_LEVEL_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_MAX_LOD', 'Graphics.GL.Ext.SGIS.TextureLod.GL_TEXTURE_MAX_LOD_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_MIN_LOD', 'Graphics.GL.Ext.SGIS.TextureLod.GL_TEXTURE_MIN_LOD_SGIS'.
--
-- The parameter @level@ is a @CheckedInt32@.
--
-- The parameter @internalformat@ is a @InternalFormat@, one of: 'Graphics.GL.Internal.Shared.GL_ALPHA12', 'Graphics.GL.Internal.Shared.GL_ALPHA16', @GL_ALPHA16_ICC_SGIX@, 'Graphics.GL.Internal.Shared.GL_ALPHA4', 'Graphics.GL.Internal.Shared.GL_ALPHA8', @GL_ALPHA_ICC_SGIX@, 'Graphics.GL.Ext.SGIX.DepthTexture.GL_DEPTH_COMPONENT16_SGIX', 'Graphics.GL.Ext.SGIX.DepthTexture.GL_DEPTH_COMPONENT24_SGIX', 'Graphics.GL.Ext.SGIX.DepthTexture.GL_DEPTH_COMPONENT32_SGIX', 'Graphics.GL.Ext.SGIS.TextureSelect.GL_DUAL_ALPHA12_SGIS', 'Graphics.GL.Ext.SGIS.TextureSelect.GL_DUAL_ALPHA16_SGIS', 'Graphics.GL.Ext.SGIS.TextureSelect.GL_DUAL_ALPHA4_SGIS', 'Graphics.GL.Ext.SGIS.TextureSelect.GL_DUAL_ALPHA8_SGIS', 'Graphics.GL.Ext.SGIS.TextureSelect.GL_DUAL_INTENSITY12_SGIS', 'Graphics.GL.Ext.SGIS.TextureSelect.GL_DUAL_INTENSITY16_SGIS', 'Graphics.GL.Ext.SGIS.TextureSelect.GL_DUAL_INTENSITY4_SGIS', 'Graphics.GL.Ext.SGIS.TextureSelect.GL_DUAL_INTENSITY8_SGIS', 'Graphics.GL.Ext.SGIS.TextureSelect.GL_DUAL_LUMINANCE12_SGIS', 'Graphics.GL.Ext.SGIS.TextureSelect.GL_DUAL_LUMINANCE16_SGIS', 'Graphics.GL.Ext.SGIS.TextureSelect.GL_DUAL_LUMINANCE4_SGIS', 'Graphics.GL.Ext.SGIS.TextureSelect.GL_DUAL_LUMINANCE8_SGIS', 'Graphics.GL.Ext.SGIS.TextureSelect.GL_DUAL_LUMINANCE_ALPHA4_SGIS', 'Graphics.GL.Ext.SGIS.TextureSelect.GL_DUAL_LUMINANCE_ALPHA8_SGIS', 'Graphics.GL.Internal.Shared.GL_INTENSITY', 'Graphics.GL.Internal.Shared.GL_INTENSITY12', 'Graphics.GL.Internal.Shared.GL_INTENSITY16', @GL_INTENSITY16_ICC_SGIX@, 'Graphics.GL.Internal.Shared.GL_INTENSITY4', 'Graphics.GL.Internal.Shared.GL_INTENSITY8', @GL_INTENSITY_ICC_SGIX@, 'Graphics.GL.Internal.Shared.GL_LUMINANCE12', 'Graphics.GL.Internal.Shared.GL_LUMINANCE12_ALPHA12', 'Graphics.GL.Internal.Shared.GL_LUMINANCE12_ALPHA4', 'Graphics.GL.Internal.Shared.GL_LUMINANCE16', 'Graphics.GL.Internal.Shared.GL_LUMINANCE16_ALPHA16', @GL_LUMINANCE16_ALPHA8_ICC_SGIX@, @GL_LUMINANCE16_ICC_SGIX@, 'Graphics.GL.Internal.Shared.GL_LUMINANCE4', 'Graphics.GL.Internal.Shared.GL_LUMINANCE4_ALPHA4', 'Graphics.GL.Internal.Shared.GL_LUMINANCE6_ALPHA2', 'Graphics.GL.Internal.Shared.GL_LUMINANCE8', 'Graphics.GL.Internal.Shared.GL_LUMINANCE8_ALPHA8', @GL_LUMINANCE_ALPHA_ICC_SGIX@, @GL_LUMINANCE_ICC_SGIX@, 'Graphics.GL.Ext.SGIS.TextureSelect.GL_QUAD_ALPHA4_SGIS', 'Graphics.GL.Ext.SGIS.TextureSelect.GL_QUAD_ALPHA8_SGIS', 'Graphics.GL.Ext.SGIS.TextureSelect.GL_QUAD_INTENSITY4_SGIS', 'Graphics.GL.Ext.SGIS.TextureSelect.GL_QUAD_INTENSITY8_SGIS', 'Graphics.GL.Ext.SGIS.TextureSelect.GL_QUAD_LUMINANCE4_SGIS', 'Graphics.GL.Ext.SGIS.TextureSelect.GL_QUAD_LUMINANCE8_SGIS', 'Graphics.GL.Internal.Shared.GL_R3_G3_B2', @GL_R5_G6_B5_A8_ICC_SGIX@, @GL_R5_G6_B5_ICC_SGIX@, 'Graphics.GL.Internal.Shared.GL_RGB10', 'Graphics.GL.Internal.Shared.GL_RGB10_A2', 'Graphics.GL.Internal.Shared.GL_RGB12', 'Graphics.GL.Internal.Shared.GL_RGB16', 'Graphics.GL.Ext.EXT.Texture.GL_RGB2_EXT', 'Graphics.GL.Internal.Shared.GL_RGB4', 'Graphics.GL.Internal.Shared.GL_RGB5', 'Graphics.GL.Internal.Shared.GL_RGB5_A1', 'Graphics.GL.Internal.Shared.GL_RGB8', 'Graphics.GL.Internal.Shared.GL_RGBA12', 'Graphics.GL.Internal.Shared.GL_RGBA16', 'Graphics.GL.Internal.Shared.GL_RGBA2', 'Graphics.GL.Internal.Shared.GL_RGBA4', 'Graphics.GL.Internal.Shared.GL_RGBA8', @GL_RGBA_ICC_SGIX@, @GL_RGB_ICC_SGIX@.
--
-- The parameter @border@ is a @CheckedInt32@.
--
-- The parameter @data@ is a @CompressedTextureARB@.
--
-- The length of @data@ should be @imageSize@.
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glCompressedTexImage1D.xhtml>
glCompressedTexImage1D :: MonadIO m => GLenum -> GLint -> GLenum -> GLsizei -> GLint -> GLsizei -> Ptr () -> m ()
glCompressedTexImage1D = ffienumintenumsizeiintsizeiPtrVIOV glCompressedTexImage1DFunPtr
glCompressedTexImage1DFunPtr :: FunPtr (GLenum -> GLint -> GLenum -> GLsizei -> GLint -> GLsizei -> Ptr () -> IO ())
glCompressedTexImage1DFunPtr = unsafePerformIO (getProcAddress "glCompressedTexImage1D")
{-# NOINLINE glCompressedTexImage1DFunPtr #-}
-- | Usage: @'glCompressedTexImage2D' target level internalformat width height border imageSize data@
--
-- The parameter @target@ is a @TextureTarget@, one of: 'Graphics.GL.Ext.SGIS.DetailTexture.GL_DETAIL_TEXTURE_2D_SGIS', 'Graphics.GL.Internal.Shared.GL_PROXY_TEXTURE_1D', 'Graphics.GL.Ext.EXT.Texture.GL_PROXY_TEXTURE_1D_EXT', 'Graphics.GL.Internal.Shared.GL_PROXY_TEXTURE_2D', 'Graphics.GL.Ext.EXT.Texture.GL_PROXY_TEXTURE_2D_EXT', 'Graphics.GL.Internal.Shared.GL_PROXY_TEXTURE_3D', 'Graphics.GL.Ext.EXT.Texture3D.GL_PROXY_TEXTURE_3D_EXT', 'Graphics.GL.Ext.SGIS.Texture4D.GL_PROXY_TEXTURE_4D_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_1D', 'Graphics.GL.Internal.Shared.GL_TEXTURE_2D', 'Graphics.GL.Internal.Shared.GL_TEXTURE_3D', 'Graphics.GL.Ext.EXT.Texture3D.GL_TEXTURE_3D_EXT', 'Graphics.GL.Ext.OES.Texture3D.GL_TEXTURE_3D_OES', 'Graphics.GL.Ext.SGIS.Texture4D.GL_TEXTURE_4D_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_BASE_LEVEL', 'Graphics.GL.Ext.SGIS.TextureLod.GL_TEXTURE_BASE_LEVEL_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_MAX_LEVEL', 'Graphics.GL.Ext.SGIS.TextureLod.GL_TEXTURE_MAX_LEVEL_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_MAX_LOD', 'Graphics.GL.Ext.SGIS.TextureLod.GL_TEXTURE_MAX_LOD_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_MIN_LOD', 'Graphics.GL.Ext.SGIS.TextureLod.GL_TEXTURE_MIN_LOD_SGIS'.
--
-- The parameter @level@ is a @CheckedInt32@.
--
-- The parameter @internalformat@ is a @InternalFormat@, one of: 'Graphics.GL.Internal.Shared.GL_ALPHA12', 'Graphics.GL.Internal.Shared.GL_ALPHA16', @GL_ALPHA16_ICC_SGIX@, 'Graphics.GL.Internal.Shared.GL_ALPHA4', 'Graphics.GL.Internal.Shared.GL_ALPHA8', @GL_ALPHA_ICC_SGIX@, 'Graphics.GL.Ext.SGIX.DepthTexture.GL_DEPTH_COMPONENT16_SGIX', 'Graphics.GL.Ext.SGIX.DepthTexture.GL_DEPTH_COMPONENT24_SGIX', 'Graphics.GL.Ext.SGIX.DepthTexture.GL_DEPTH_COMPONENT32_SGIX', 'Graphics.GL.Ext.SGIS.TextureSelect.GL_DUAL_ALPHA12_SGIS', 'Graphics.GL.Ext.SGIS.TextureSelect.GL_DUAL_ALPHA16_SGIS', 'Graphics.GL.Ext.SGIS.TextureSelect.GL_DUAL_ALPHA4_SGIS', 'Graphics.GL.Ext.SGIS.TextureSelect.GL_DUAL_ALPHA8_SGIS', 'Graphics.GL.Ext.SGIS.TextureSelect.GL_DUAL_INTENSITY12_SGIS', 'Graphics.GL.Ext.SGIS.TextureSelect.GL_DUAL_INTENSITY16_SGIS', 'Graphics.GL.Ext.SGIS.TextureSelect.GL_DUAL_INTENSITY4_SGIS', 'Graphics.GL.Ext.SGIS.TextureSelect.GL_DUAL_INTENSITY8_SGIS', 'Graphics.GL.Ext.SGIS.TextureSelect.GL_DUAL_LUMINANCE12_SGIS', 'Graphics.GL.Ext.SGIS.TextureSelect.GL_DUAL_LUMINANCE16_SGIS', 'Graphics.GL.Ext.SGIS.TextureSelect.GL_DUAL_LUMINANCE4_SGIS', 'Graphics.GL.Ext.SGIS.TextureSelect.GL_DUAL_LUMINANCE8_SGIS', 'Graphics.GL.Ext.SGIS.TextureSelect.GL_DUAL_LUMINANCE_ALPHA4_SGIS', 'Graphics.GL.Ext.SGIS.TextureSelect.GL_DUAL_LUMINANCE_ALPHA8_SGIS', 'Graphics.GL.Internal.Shared.GL_INTENSITY', 'Graphics.GL.Internal.Shared.GL_INTENSITY12', 'Graphics.GL.Internal.Shared.GL_INTENSITY16', @GL_INTENSITY16_ICC_SGIX@, 'Graphics.GL.Internal.Shared.GL_INTENSITY4', 'Graphics.GL.Internal.Shared.GL_INTENSITY8', @GL_INTENSITY_ICC_SGIX@, 'Graphics.GL.Internal.Shared.GL_LUMINANCE12', 'Graphics.GL.Internal.Shared.GL_LUMINANCE12_ALPHA12', 'Graphics.GL.Internal.Shared.GL_LUMINANCE12_ALPHA4', 'Graphics.GL.Internal.Shared.GL_LUMINANCE16', 'Graphics.GL.Internal.Shared.GL_LUMINANCE16_ALPHA16', @GL_LUMINANCE16_ALPHA8_ICC_SGIX@, @GL_LUMINANCE16_ICC_SGIX@, 'Graphics.GL.Internal.Shared.GL_LUMINANCE4', 'Graphics.GL.Internal.Shared.GL_LUMINANCE4_ALPHA4', 'Graphics.GL.Internal.Shared.GL_LUMINANCE6_ALPHA2', 'Graphics.GL.Internal.Shared.GL_LUMINANCE8', 'Graphics.GL.Internal.Shared.GL_LUMINANCE8_ALPHA8', @GL_LUMINANCE_ALPHA_ICC_SGIX@, @GL_LUMINANCE_ICC_SGIX@, 'Graphics.GL.Ext.SGIS.TextureSelect.GL_QUAD_ALPHA4_SGIS', 'Graphics.GL.Ext.SGIS.TextureSelect.GL_QUAD_ALPHA8_SGIS', 'Graphics.GL.Ext.SGIS.TextureSelect.GL_QUAD_INTENSITY4_SGIS', 'Graphics.GL.Ext.SGIS.TextureSelect.GL_QUAD_INTENSITY8_SGIS', 'Graphics.GL.Ext.SGIS.TextureSelect.GL_QUAD_LUMINANCE4_SGIS', 'Graphics.GL.Ext.SGIS.TextureSelect.GL_QUAD_LUMINANCE8_SGIS', 'Graphics.GL.Internal.Shared.GL_R3_G3_B2', @GL_R5_G6_B5_A8_ICC_SGIX@, @GL_R5_G6_B5_ICC_SGIX@, 'Graphics.GL.Internal.Shared.GL_RGB10', 'Graphics.GL.Internal.Shared.GL_RGB10_A2', 'Graphics.GL.Internal.Shared.GL_RGB12', 'Graphics.GL.Internal.Shared.GL_RGB16', 'Graphics.GL.Ext.EXT.Texture.GL_RGB2_EXT', 'Graphics.GL.Internal.Shared.GL_RGB4', 'Graphics.GL.Internal.Shared.GL_RGB5', 'Graphics.GL.Internal.Shared.GL_RGB5_A1', 'Graphics.GL.Internal.Shared.GL_RGB8', 'Graphics.GL.Internal.Shared.GL_RGBA12', 'Graphics.GL.Internal.Shared.GL_RGBA16', 'Graphics.GL.Internal.Shared.GL_RGBA2', 'Graphics.GL.Internal.Shared.GL_RGBA4', 'Graphics.GL.Internal.Shared.GL_RGBA8', @GL_RGBA_ICC_SGIX@, @GL_RGB_ICC_SGIX@.
--
-- The parameter @border@ is a @CheckedInt32@.
--
-- The parameter @data@ is a @CompressedTextureARB@.
--
-- The length of @data@ should be @imageSize@.
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glCompressedTexImage2D.xhtml>
glCompressedTexImage2D :: MonadIO m => GLenum -> GLint -> GLenum -> GLsizei -> GLsizei -> GLint -> GLsizei -> Ptr () -> m ()
glCompressedTexImage2D = ffienumintenumsizeisizeiintsizeiPtrVIOV glCompressedTexImage2DFunPtr
glCompressedTexImage2DFunPtr :: FunPtr (GLenum -> GLint -> GLenum -> GLsizei -> GLsizei -> GLint -> GLsizei -> Ptr () -> IO ())
glCompressedTexImage2DFunPtr = unsafePerformIO (getProcAddress "glCompressedTexImage2D")
{-# NOINLINE glCompressedTexImage2DFunPtr #-}
-- | Usage: @'glCompressedTexImage3D' target level internalformat width height depth border imageSize data@
--
-- The parameter @target@ is a @TextureTarget@, one of: 'Graphics.GL.Ext.SGIS.DetailTexture.GL_DETAIL_TEXTURE_2D_SGIS', 'Graphics.GL.Internal.Shared.GL_PROXY_TEXTURE_1D', 'Graphics.GL.Ext.EXT.Texture.GL_PROXY_TEXTURE_1D_EXT', 'Graphics.GL.Internal.Shared.GL_PROXY_TEXTURE_2D', 'Graphics.GL.Ext.EXT.Texture.GL_PROXY_TEXTURE_2D_EXT', 'Graphics.GL.Internal.Shared.GL_PROXY_TEXTURE_3D', 'Graphics.GL.Ext.EXT.Texture3D.GL_PROXY_TEXTURE_3D_EXT', 'Graphics.GL.Ext.SGIS.Texture4D.GL_PROXY_TEXTURE_4D_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_1D', 'Graphics.GL.Internal.Shared.GL_TEXTURE_2D', 'Graphics.GL.Internal.Shared.GL_TEXTURE_3D', 'Graphics.GL.Ext.EXT.Texture3D.GL_TEXTURE_3D_EXT', 'Graphics.GL.Ext.OES.Texture3D.GL_TEXTURE_3D_OES', 'Graphics.GL.Ext.SGIS.Texture4D.GL_TEXTURE_4D_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_BASE_LEVEL', 'Graphics.GL.Ext.SGIS.TextureLod.GL_TEXTURE_BASE_LEVEL_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_MAX_LEVEL', 'Graphics.GL.Ext.SGIS.TextureLod.GL_TEXTURE_MAX_LEVEL_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_MAX_LOD', 'Graphics.GL.Ext.SGIS.TextureLod.GL_TEXTURE_MAX_LOD_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_MIN_LOD', 'Graphics.GL.Ext.SGIS.TextureLod.GL_TEXTURE_MIN_LOD_SGIS'.
--
-- The parameter @level@ is a @CheckedInt32@.
--
-- The parameter @internalformat@ is a @InternalFormat@, one of: 'Graphics.GL.Internal.Shared.GL_ALPHA12', 'Graphics.GL.Internal.Shared.GL_ALPHA16', @GL_ALPHA16_ICC_SGIX@, 'Graphics.GL.Internal.Shared.GL_ALPHA4', 'Graphics.GL.Internal.Shared.GL_ALPHA8', @GL_ALPHA_ICC_SGIX@, 'Graphics.GL.Ext.SGIX.DepthTexture.GL_DEPTH_COMPONENT16_SGIX', 'Graphics.GL.Ext.SGIX.DepthTexture.GL_DEPTH_COMPONENT24_SGIX', 'Graphics.GL.Ext.SGIX.DepthTexture.GL_DEPTH_COMPONENT32_SGIX', 'Graphics.GL.Ext.SGIS.TextureSelect.GL_DUAL_ALPHA12_SGIS', 'Graphics.GL.Ext.SGIS.TextureSelect.GL_DUAL_ALPHA16_SGIS', 'Graphics.GL.Ext.SGIS.TextureSelect.GL_DUAL_ALPHA4_SGIS', 'Graphics.GL.Ext.SGIS.TextureSelect.GL_DUAL_ALPHA8_SGIS', 'Graphics.GL.Ext.SGIS.TextureSelect.GL_DUAL_INTENSITY12_SGIS', 'Graphics.GL.Ext.SGIS.TextureSelect.GL_DUAL_INTENSITY16_SGIS', 'Graphics.GL.Ext.SGIS.TextureSelect.GL_DUAL_INTENSITY4_SGIS', 'Graphics.GL.Ext.SGIS.TextureSelect.GL_DUAL_INTENSITY8_SGIS', 'Graphics.GL.Ext.SGIS.TextureSelect.GL_DUAL_LUMINANCE12_SGIS', 'Graphics.GL.Ext.SGIS.TextureSelect.GL_DUAL_LUMINANCE16_SGIS', 'Graphics.GL.Ext.SGIS.TextureSelect.GL_DUAL_LUMINANCE4_SGIS', 'Graphics.GL.Ext.SGIS.TextureSelect.GL_DUAL_LUMINANCE8_SGIS', 'Graphics.GL.Ext.SGIS.TextureSelect.GL_DUAL_LUMINANCE_ALPHA4_SGIS', 'Graphics.GL.Ext.SGIS.TextureSelect.GL_DUAL_LUMINANCE_ALPHA8_SGIS', 'Graphics.GL.Internal.Shared.GL_INTENSITY', 'Graphics.GL.Internal.Shared.GL_INTENSITY12', 'Graphics.GL.Internal.Shared.GL_INTENSITY16', @GL_INTENSITY16_ICC_SGIX@, 'Graphics.GL.Internal.Shared.GL_INTENSITY4', 'Graphics.GL.Internal.Shared.GL_INTENSITY8', @GL_INTENSITY_ICC_SGIX@, 'Graphics.GL.Internal.Shared.GL_LUMINANCE12', 'Graphics.GL.Internal.Shared.GL_LUMINANCE12_ALPHA12', 'Graphics.GL.Internal.Shared.GL_LUMINANCE12_ALPHA4', 'Graphics.GL.Internal.Shared.GL_LUMINANCE16', 'Graphics.GL.Internal.Shared.GL_LUMINANCE16_ALPHA16', @GL_LUMINANCE16_ALPHA8_ICC_SGIX@, @GL_LUMINANCE16_ICC_SGIX@, 'Graphics.GL.Internal.Shared.GL_LUMINANCE4', 'Graphics.GL.Internal.Shared.GL_LUMINANCE4_ALPHA4', 'Graphics.GL.Internal.Shared.GL_LUMINANCE6_ALPHA2', 'Graphics.GL.Internal.Shared.GL_LUMINANCE8', 'Graphics.GL.Internal.Shared.GL_LUMINANCE8_ALPHA8', @GL_LUMINANCE_ALPHA_ICC_SGIX@, @GL_LUMINANCE_ICC_SGIX@, 'Graphics.GL.Ext.SGIS.TextureSelect.GL_QUAD_ALPHA4_SGIS', 'Graphics.GL.Ext.SGIS.TextureSelect.GL_QUAD_ALPHA8_SGIS', 'Graphics.GL.Ext.SGIS.TextureSelect.GL_QUAD_INTENSITY4_SGIS', 'Graphics.GL.Ext.SGIS.TextureSelect.GL_QUAD_INTENSITY8_SGIS', 'Graphics.GL.Ext.SGIS.TextureSelect.GL_QUAD_LUMINANCE4_SGIS', 'Graphics.GL.Ext.SGIS.TextureSelect.GL_QUAD_LUMINANCE8_SGIS', 'Graphics.GL.Internal.Shared.GL_R3_G3_B2', @GL_R5_G6_B5_A8_ICC_SGIX@, @GL_R5_G6_B5_ICC_SGIX@, 'Graphics.GL.Internal.Shared.GL_RGB10', 'Graphics.GL.Internal.Shared.GL_RGB10_A2', 'Graphics.GL.Internal.Shared.GL_RGB12', 'Graphics.GL.Internal.Shared.GL_RGB16', 'Graphics.GL.Ext.EXT.Texture.GL_RGB2_EXT', 'Graphics.GL.Internal.Shared.GL_RGB4', 'Graphics.GL.Internal.Shared.GL_RGB5', 'Graphics.GL.Internal.Shared.GL_RGB5_A1', 'Graphics.GL.Internal.Shared.GL_RGB8', 'Graphics.GL.Internal.Shared.GL_RGBA12', 'Graphics.GL.Internal.Shared.GL_RGBA16', 'Graphics.GL.Internal.Shared.GL_RGBA2', 'Graphics.GL.Internal.Shared.GL_RGBA4', 'Graphics.GL.Internal.Shared.GL_RGBA8', @GL_RGBA_ICC_SGIX@, @GL_RGB_ICC_SGIX@.
--
-- The parameter @border@ is a @CheckedInt32@.
--
-- The parameter @data@ is a @CompressedTextureARB@.
--
-- The length of @data@ should be @imageSize@.
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glCompressedTexImage3D.xhtml>
glCompressedTexImage3D :: MonadIO m => GLenum -> GLint -> GLenum -> GLsizei -> GLsizei -> GLsizei -> GLint -> GLsizei -> Ptr () -> m ()
glCompressedTexImage3D = ffienumintenumsizeisizeisizeiintsizeiPtrVIOV glCompressedTexImage3DFunPtr
glCompressedTexImage3DFunPtr :: FunPtr (GLenum -> GLint -> GLenum -> GLsizei -> GLsizei -> GLsizei -> GLint -> GLsizei -> Ptr () -> IO ())
glCompressedTexImage3DFunPtr = unsafePerformIO (getProcAddress "glCompressedTexImage3D")
{-# NOINLINE glCompressedTexImage3DFunPtr #-}
-- | Usage: @'glCompressedTexSubImage1D' target level xoffset width format imageSize data@
--
-- The parameter @target@ is a @TextureTarget@, one of: 'Graphics.GL.Ext.SGIS.DetailTexture.GL_DETAIL_TEXTURE_2D_SGIS', 'Graphics.GL.Internal.Shared.GL_PROXY_TEXTURE_1D', 'Graphics.GL.Ext.EXT.Texture.GL_PROXY_TEXTURE_1D_EXT', 'Graphics.GL.Internal.Shared.GL_PROXY_TEXTURE_2D', 'Graphics.GL.Ext.EXT.Texture.GL_PROXY_TEXTURE_2D_EXT', 'Graphics.GL.Internal.Shared.GL_PROXY_TEXTURE_3D', 'Graphics.GL.Ext.EXT.Texture3D.GL_PROXY_TEXTURE_3D_EXT', 'Graphics.GL.Ext.SGIS.Texture4D.GL_PROXY_TEXTURE_4D_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_1D', 'Graphics.GL.Internal.Shared.GL_TEXTURE_2D', 'Graphics.GL.Internal.Shared.GL_TEXTURE_3D', 'Graphics.GL.Ext.EXT.Texture3D.GL_TEXTURE_3D_EXT', 'Graphics.GL.Ext.OES.Texture3D.GL_TEXTURE_3D_OES', 'Graphics.GL.Ext.SGIS.Texture4D.GL_TEXTURE_4D_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_BASE_LEVEL', 'Graphics.GL.Ext.SGIS.TextureLod.GL_TEXTURE_BASE_LEVEL_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_MAX_LEVEL', 'Graphics.GL.Ext.SGIS.TextureLod.GL_TEXTURE_MAX_LEVEL_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_MAX_LOD', 'Graphics.GL.Ext.SGIS.TextureLod.GL_TEXTURE_MAX_LOD_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_MIN_LOD', 'Graphics.GL.Ext.SGIS.TextureLod.GL_TEXTURE_MIN_LOD_SGIS'.
--
-- The parameter @level@ is a @CheckedInt32@.
--
-- The parameter @xoffset@ is a @CheckedInt32@.
--
-- The parameter @format@ is a @PixelFormat@, one of: 'Graphics.GL.Ext.EXT.Abgr.GL_ABGR_EXT', 'Graphics.GL.Internal.Shared.GL_ALPHA', 'Graphics.GL.Internal.Shared.GL_BLUE', 'Graphics.GL.Ext.EXT.Cmyka.GL_CMYKA_EXT', 'Graphics.GL.Ext.EXT.Cmyka.GL_CMYK_EXT', 'Graphics.GL.Internal.Shared.GL_COLOR_INDEX', 'Graphics.GL.Internal.Shared.GL_DEPTH_COMPONENT', 'Graphics.GL.Internal.Shared.GL_GREEN', 'Graphics.GL.Internal.Shared.GL_LUMINANCE', 'Graphics.GL.Internal.Shared.GL_LUMINANCE_ALPHA', 'Graphics.GL.Internal.Shared.GL_RED', 'Graphics.GL.Ext.EXT.TextureRg.GL_RED_EXT', 'Graphics.GL.Internal.Shared.GL_RGB', 'Graphics.GL.Internal.Shared.GL_RGBA', 'Graphics.GL.Internal.Shared.GL_STENCIL_INDEX', 'Graphics.GL.Internal.Shared.GL_UNSIGNED_INT', 'Graphics.GL.Internal.Shared.GL_UNSIGNED_SHORT', 'Graphics.GL.Ext.SGIX.Ycrcb.GL_YCRCB_422_SGIX', 'Graphics.GL.Ext.SGIX.Ycrcb.GL_YCRCB_444_SGIX'.
--
-- The parameter @data@ is a @CompressedTextureARB@.
--
-- The length of @data@ should be @imageSize@.
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glCompressedTexSubImage1D.xhtml>
glCompressedTexSubImage1D :: MonadIO m => GLenum -> GLint -> GLint -> GLsizei -> GLenum -> GLsizei -> Ptr () -> m ()
glCompressedTexSubImage1D = ffienumintintsizeienumsizeiPtrVIOV glCompressedTexSubImage1DFunPtr
glCompressedTexSubImage1DFunPtr :: FunPtr (GLenum -> GLint -> GLint -> GLsizei -> GLenum -> GLsizei -> Ptr () -> IO ())
glCompressedTexSubImage1DFunPtr = unsafePerformIO (getProcAddress "glCompressedTexSubImage1D")
{-# NOINLINE glCompressedTexSubImage1DFunPtr #-}
-- | Usage: @'glCompressedTexSubImage2D' target level xoffset yoffset width height format imageSize data@
--
-- The parameter @target@ is a @TextureTarget@, one of: 'Graphics.GL.Ext.SGIS.DetailTexture.GL_DETAIL_TEXTURE_2D_SGIS', 'Graphics.GL.Internal.Shared.GL_PROXY_TEXTURE_1D', 'Graphics.GL.Ext.EXT.Texture.GL_PROXY_TEXTURE_1D_EXT', 'Graphics.GL.Internal.Shared.GL_PROXY_TEXTURE_2D', 'Graphics.GL.Ext.EXT.Texture.GL_PROXY_TEXTURE_2D_EXT', 'Graphics.GL.Internal.Shared.GL_PROXY_TEXTURE_3D', 'Graphics.GL.Ext.EXT.Texture3D.GL_PROXY_TEXTURE_3D_EXT', 'Graphics.GL.Ext.SGIS.Texture4D.GL_PROXY_TEXTURE_4D_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_1D', 'Graphics.GL.Internal.Shared.GL_TEXTURE_2D', 'Graphics.GL.Internal.Shared.GL_TEXTURE_3D', 'Graphics.GL.Ext.EXT.Texture3D.GL_TEXTURE_3D_EXT', 'Graphics.GL.Ext.OES.Texture3D.GL_TEXTURE_3D_OES', 'Graphics.GL.Ext.SGIS.Texture4D.GL_TEXTURE_4D_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_BASE_LEVEL', 'Graphics.GL.Ext.SGIS.TextureLod.GL_TEXTURE_BASE_LEVEL_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_MAX_LEVEL', 'Graphics.GL.Ext.SGIS.TextureLod.GL_TEXTURE_MAX_LEVEL_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_MAX_LOD', 'Graphics.GL.Ext.SGIS.TextureLod.GL_TEXTURE_MAX_LOD_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_MIN_LOD', 'Graphics.GL.Ext.SGIS.TextureLod.GL_TEXTURE_MIN_LOD_SGIS'.
--
-- The parameter @level@ is a @CheckedInt32@.
--
-- The parameter @xoffset@ is a @CheckedInt32@.
--
-- The parameter @yoffset@ is a @CheckedInt32@.
--
-- The parameter @format@ is a @PixelFormat@, one of: 'Graphics.GL.Ext.EXT.Abgr.GL_ABGR_EXT', 'Graphics.GL.Internal.Shared.GL_ALPHA', 'Graphics.GL.Internal.Shared.GL_BLUE', 'Graphics.GL.Ext.EXT.Cmyka.GL_CMYKA_EXT', 'Graphics.GL.Ext.EXT.Cmyka.GL_CMYK_EXT', 'Graphics.GL.Internal.Shared.GL_COLOR_INDEX', 'Graphics.GL.Internal.Shared.GL_DEPTH_COMPONENT', 'Graphics.GL.Internal.Shared.GL_GREEN', 'Graphics.GL.Internal.Shared.GL_LUMINANCE', 'Graphics.GL.Internal.Shared.GL_LUMINANCE_ALPHA', 'Graphics.GL.Internal.Shared.GL_RED', 'Graphics.GL.Ext.EXT.TextureRg.GL_RED_EXT', 'Graphics.GL.Internal.Shared.GL_RGB', 'Graphics.GL.Internal.Shared.GL_RGBA', 'Graphics.GL.Internal.Shared.GL_STENCIL_INDEX', 'Graphics.GL.Internal.Shared.GL_UNSIGNED_INT', 'Graphics.GL.Internal.Shared.GL_UNSIGNED_SHORT', 'Graphics.GL.Ext.SGIX.Ycrcb.GL_YCRCB_422_SGIX', 'Graphics.GL.Ext.SGIX.Ycrcb.GL_YCRCB_444_SGIX'.
--
-- The parameter @data@ is a @CompressedTextureARB@.
--
-- The length of @data@ should be @imageSize@.
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glCompressedTexSubImage2D.xhtml>
glCompressedTexSubImage2D :: MonadIO m => GLenum -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLenum -> GLsizei -> Ptr () -> m ()
glCompressedTexSubImage2D = ffienumintintintsizeisizeienumsizeiPtrVIOV glCompressedTexSubImage2DFunPtr
glCompressedTexSubImage2DFunPtr :: FunPtr (GLenum -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLenum -> GLsizei -> Ptr () -> IO ())
glCompressedTexSubImage2DFunPtr = unsafePerformIO (getProcAddress "glCompressedTexSubImage2D")
{-# NOINLINE glCompressedTexSubImage2DFunPtr #-}
-- | Usage: @'glCompressedTexSubImage3D' target level xoffset yoffset zoffset width height depth format imageSize data@
--
-- The parameter @target@ is a @TextureTarget@, one of: 'Graphics.GL.Ext.SGIS.DetailTexture.GL_DETAIL_TEXTURE_2D_SGIS', 'Graphics.GL.Internal.Shared.GL_PROXY_TEXTURE_1D', 'Graphics.GL.Ext.EXT.Texture.GL_PROXY_TEXTURE_1D_EXT', 'Graphics.GL.Internal.Shared.GL_PROXY_TEXTURE_2D', 'Graphics.GL.Ext.EXT.Texture.GL_PROXY_TEXTURE_2D_EXT', 'Graphics.GL.Internal.Shared.GL_PROXY_TEXTURE_3D', 'Graphics.GL.Ext.EXT.Texture3D.GL_PROXY_TEXTURE_3D_EXT', 'Graphics.GL.Ext.SGIS.Texture4D.GL_PROXY_TEXTURE_4D_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_1D', 'Graphics.GL.Internal.Shared.GL_TEXTURE_2D', 'Graphics.GL.Internal.Shared.GL_TEXTURE_3D', 'Graphics.GL.Ext.EXT.Texture3D.GL_TEXTURE_3D_EXT', 'Graphics.GL.Ext.OES.Texture3D.GL_TEXTURE_3D_OES', 'Graphics.GL.Ext.SGIS.Texture4D.GL_TEXTURE_4D_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_BASE_LEVEL', 'Graphics.GL.Ext.SGIS.TextureLod.GL_TEXTURE_BASE_LEVEL_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_MAX_LEVEL', 'Graphics.GL.Ext.SGIS.TextureLod.GL_TEXTURE_MAX_LEVEL_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_MAX_LOD', 'Graphics.GL.Ext.SGIS.TextureLod.GL_TEXTURE_MAX_LOD_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_MIN_LOD', 'Graphics.GL.Ext.SGIS.TextureLod.GL_TEXTURE_MIN_LOD_SGIS'.
--
-- The parameter @level@ is a @CheckedInt32@.
--
-- The parameter @xoffset@ is a @CheckedInt32@.
--
-- The parameter @yoffset@ is a @CheckedInt32@.
--
-- The parameter @zoffset@ is a @CheckedInt32@.
--
-- The parameter @format@ is a @PixelFormat@, one of: 'Graphics.GL.Ext.EXT.Abgr.GL_ABGR_EXT', 'Graphics.GL.Internal.Shared.GL_ALPHA', 'Graphics.GL.Internal.Shared.GL_BLUE', 'Graphics.GL.Ext.EXT.Cmyka.GL_CMYKA_EXT', 'Graphics.GL.Ext.EXT.Cmyka.GL_CMYK_EXT', 'Graphics.GL.Internal.Shared.GL_COLOR_INDEX', 'Graphics.GL.Internal.Shared.GL_DEPTH_COMPONENT', 'Graphics.GL.Internal.Shared.GL_GREEN', 'Graphics.GL.Internal.Shared.GL_LUMINANCE', 'Graphics.GL.Internal.Shared.GL_LUMINANCE_ALPHA', 'Graphics.GL.Internal.Shared.GL_RED', 'Graphics.GL.Ext.EXT.TextureRg.GL_RED_EXT', 'Graphics.GL.Internal.Shared.GL_RGB', 'Graphics.GL.Internal.Shared.GL_RGBA', 'Graphics.GL.Internal.Shared.GL_STENCIL_INDEX', 'Graphics.GL.Internal.Shared.GL_UNSIGNED_INT', 'Graphics.GL.Internal.Shared.GL_UNSIGNED_SHORT', 'Graphics.GL.Ext.SGIX.Ycrcb.GL_YCRCB_422_SGIX', 'Graphics.GL.Ext.SGIX.Ycrcb.GL_YCRCB_444_SGIX'.
--
-- The parameter @data@ is a @CompressedTextureARB@.
--
-- The length of @data@ should be @imageSize@.
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glCompressedTexSubImage3D.xhtml>
glCompressedTexSubImage3D :: MonadIO m => GLenum -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLenum -> GLsizei -> Ptr () -> m ()
glCompressedTexSubImage3D = ffienumintintintintsizeisizeisizeienumsizeiPtrVIOV glCompressedTexSubImage3DFunPtr
glCompressedTexSubImage3DFunPtr :: FunPtr (GLenum -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLenum -> GLsizei -> Ptr () -> IO ())
glCompressedTexSubImage3DFunPtr = unsafePerformIO (getProcAddress "glCompressedTexSubImage3D")
{-# NOINLINE glCompressedTexSubImage3DFunPtr #-}
-- | Usage: @'glCopyBufferSubData' readTarget writeTarget readOffset writeOffset size@
--
-- The parameter @readOffset@ is a @BufferOffset@.
--
-- The parameter @writeOffset@ is a @BufferOffset@.
--
-- The parameter @size@ is a @BufferSize@.
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glCopyBufferSubData.xhtml>
glCopyBufferSubData :: MonadIO m => GLenum -> GLenum -> GLintptr -> GLintptr -> GLsizeiptr -> m ()
glCopyBufferSubData = ffienumenumintptrintptrsizeiptrIOV glCopyBufferSubDataFunPtr
glCopyBufferSubDataFunPtr :: FunPtr (GLenum -> GLenum -> GLintptr -> GLintptr -> GLsizeiptr -> IO ())
glCopyBufferSubDataFunPtr = unsafePerformIO (getProcAddress "glCopyBufferSubData")
{-# NOINLINE glCopyBufferSubDataFunPtr #-}
-- | Usage: @'glCopyTexImage1D' target level internalformat x y width border@
--
-- The parameter @target@ is a @TextureTarget@, one of: 'Graphics.GL.Ext.SGIS.DetailTexture.GL_DETAIL_TEXTURE_2D_SGIS', 'Graphics.GL.Internal.Shared.GL_PROXY_TEXTURE_1D', 'Graphics.GL.Ext.EXT.Texture.GL_PROXY_TEXTURE_1D_EXT', 'Graphics.GL.Internal.Shared.GL_PROXY_TEXTURE_2D', 'Graphics.GL.Ext.EXT.Texture.GL_PROXY_TEXTURE_2D_EXT', 'Graphics.GL.Internal.Shared.GL_PROXY_TEXTURE_3D', 'Graphics.GL.Ext.EXT.Texture3D.GL_PROXY_TEXTURE_3D_EXT', 'Graphics.GL.Ext.SGIS.Texture4D.GL_PROXY_TEXTURE_4D_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_1D', 'Graphics.GL.Internal.Shared.GL_TEXTURE_2D', 'Graphics.GL.Internal.Shared.GL_TEXTURE_3D', 'Graphics.GL.Ext.EXT.Texture3D.GL_TEXTURE_3D_EXT', 'Graphics.GL.Ext.OES.Texture3D.GL_TEXTURE_3D_OES', 'Graphics.GL.Ext.SGIS.Texture4D.GL_TEXTURE_4D_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_BASE_LEVEL', 'Graphics.GL.Ext.SGIS.TextureLod.GL_TEXTURE_BASE_LEVEL_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_MAX_LEVEL', 'Graphics.GL.Ext.SGIS.TextureLod.GL_TEXTURE_MAX_LEVEL_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_MAX_LOD', 'Graphics.GL.Ext.SGIS.TextureLod.GL_TEXTURE_MAX_LOD_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_MIN_LOD', 'Graphics.GL.Ext.SGIS.TextureLod.GL_TEXTURE_MIN_LOD_SGIS'.
--
-- The parameter @level@ is a @CheckedInt32@.
--
-- The parameter @internalformat@ is a @InternalFormat@, one of: 'Graphics.GL.Internal.Shared.GL_ALPHA12', 'Graphics.GL.Internal.Shared.GL_ALPHA16', @GL_ALPHA16_ICC_SGIX@, 'Graphics.GL.Internal.Shared.GL_ALPHA4', 'Graphics.GL.Internal.Shared.GL_ALPHA8', @GL_ALPHA_ICC_SGIX@, 'Graphics.GL.Ext.SGIX.DepthTexture.GL_DEPTH_COMPONENT16_SGIX', 'Graphics.GL.Ext.SGIX.DepthTexture.GL_DEPTH_COMPONENT24_SGIX', 'Graphics.GL.Ext.SGIX.DepthTexture.GL_DEPTH_COMPONENT32_SGIX', 'Graphics.GL.Ext.SGIS.TextureSelect.GL_DUAL_ALPHA12_SGIS', 'Graphics.GL.Ext.SGIS.TextureSelect.GL_DUAL_ALPHA16_SGIS', 'Graphics.GL.Ext.SGIS.TextureSelect.GL_DUAL_ALPHA4_SGIS', 'Graphics.GL.Ext.SGIS.TextureSelect.GL_DUAL_ALPHA8_SGIS', 'Graphics.GL.Ext.SGIS.TextureSelect.GL_DUAL_INTENSITY12_SGIS', 'Graphics.GL.Ext.SGIS.TextureSelect.GL_DUAL_INTENSITY16_SGIS', 'Graphics.GL.Ext.SGIS.TextureSelect.GL_DUAL_INTENSITY4_SGIS', 'Graphics.GL.Ext.SGIS.TextureSelect.GL_DUAL_INTENSITY8_SGIS', 'Graphics.GL.Ext.SGIS.TextureSelect.GL_DUAL_LUMINANCE12_SGIS', 'Graphics.GL.Ext.SGIS.TextureSelect.GL_DUAL_LUMINANCE16_SGIS', 'Graphics.GL.Ext.SGIS.TextureSelect.GL_DUAL_LUMINANCE4_SGIS', 'Graphics.GL.Ext.SGIS.TextureSelect.GL_DUAL_LUMINANCE8_SGIS', 'Graphics.GL.Ext.SGIS.TextureSelect.GL_DUAL_LUMINANCE_ALPHA4_SGIS', 'Graphics.GL.Ext.SGIS.TextureSelect.GL_DUAL_LUMINANCE_ALPHA8_SGIS', 'Graphics.GL.Internal.Shared.GL_INTENSITY', 'Graphics.GL.Internal.Shared.GL_INTENSITY12', 'Graphics.GL.Internal.Shared.GL_INTENSITY16', @GL_INTENSITY16_ICC_SGIX@, 'Graphics.GL.Internal.Shared.GL_INTENSITY4', 'Graphics.GL.Internal.Shared.GL_INTENSITY8', @GL_INTENSITY_ICC_SGIX@, 'Graphics.GL.Internal.Shared.GL_LUMINANCE12', 'Graphics.GL.Internal.Shared.GL_LUMINANCE12_ALPHA12', 'Graphics.GL.Internal.Shared.GL_LUMINANCE12_ALPHA4', 'Graphics.GL.Internal.Shared.GL_LUMINANCE16', 'Graphics.GL.Internal.Shared.GL_LUMINANCE16_ALPHA16', @GL_LUMINANCE16_ALPHA8_ICC_SGIX@, @GL_LUMINANCE16_ICC_SGIX@, 'Graphics.GL.Internal.Shared.GL_LUMINANCE4', 'Graphics.GL.Internal.Shared.GL_LUMINANCE4_ALPHA4', 'Graphics.GL.Internal.Shared.GL_LUMINANCE6_ALPHA2', 'Graphics.GL.Internal.Shared.GL_LUMINANCE8', 'Graphics.GL.Internal.Shared.GL_LUMINANCE8_ALPHA8', @GL_LUMINANCE_ALPHA_ICC_SGIX@, @GL_LUMINANCE_ICC_SGIX@, 'Graphics.GL.Ext.SGIS.TextureSelect.GL_QUAD_ALPHA4_SGIS', 'Graphics.GL.Ext.SGIS.TextureSelect.GL_QUAD_ALPHA8_SGIS', 'Graphics.GL.Ext.SGIS.TextureSelect.GL_QUAD_INTENSITY4_SGIS', 'Graphics.GL.Ext.SGIS.TextureSelect.GL_QUAD_INTENSITY8_SGIS', 'Graphics.GL.Ext.SGIS.TextureSelect.GL_QUAD_LUMINANCE4_SGIS', 'Graphics.GL.Ext.SGIS.TextureSelect.GL_QUAD_LUMINANCE8_SGIS', 'Graphics.GL.Internal.Shared.GL_R3_G3_B2', @GL_R5_G6_B5_A8_ICC_SGIX@, @GL_R5_G6_B5_ICC_SGIX@, 'Graphics.GL.Internal.Shared.GL_RGB10', 'Graphics.GL.Internal.Shared.GL_RGB10_A2', 'Graphics.GL.Internal.Shared.GL_RGB12', 'Graphics.GL.Internal.Shared.GL_RGB16', 'Graphics.GL.Ext.EXT.Texture.GL_RGB2_EXT', 'Graphics.GL.Internal.Shared.GL_RGB4', 'Graphics.GL.Internal.Shared.GL_RGB5', 'Graphics.GL.Internal.Shared.GL_RGB5_A1', 'Graphics.GL.Internal.Shared.GL_RGB8', 'Graphics.GL.Internal.Shared.GL_RGBA12', 'Graphics.GL.Internal.Shared.GL_RGBA16', 'Graphics.GL.Internal.Shared.GL_RGBA2', 'Graphics.GL.Internal.Shared.GL_RGBA4', 'Graphics.GL.Internal.Shared.GL_RGBA8', @GL_RGBA_ICC_SGIX@, @GL_RGB_ICC_SGIX@.
--
-- The parameter @x@ is a @WinCoord@.
--
-- The parameter @y@ is a @WinCoord@.
--
-- The parameter @border@ is a @CheckedInt32@.
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glCopyTexImage1D.xhtml>
glCopyTexImage1D :: MonadIO m => GLenum -> GLint -> GLenum -> GLint -> GLint -> GLsizei -> GLint -> m ()
glCopyTexImage1D = ffienumintenumintintsizeiintIOV glCopyTexImage1DFunPtr
glCopyTexImage1DFunPtr :: FunPtr (GLenum -> GLint -> GLenum -> GLint -> GLint -> GLsizei -> GLint -> IO ())
glCopyTexImage1DFunPtr = unsafePerformIO (getProcAddress "glCopyTexImage1D")
{-# NOINLINE glCopyTexImage1DFunPtr #-}
-- | Usage: @'glCopyTexImage2D' target level internalformat x y width height border@
--
-- The parameter @target@ is a @TextureTarget@, one of: 'Graphics.GL.Ext.SGIS.DetailTexture.GL_DETAIL_TEXTURE_2D_SGIS', 'Graphics.GL.Internal.Shared.GL_PROXY_TEXTURE_1D', 'Graphics.GL.Ext.EXT.Texture.GL_PROXY_TEXTURE_1D_EXT', 'Graphics.GL.Internal.Shared.GL_PROXY_TEXTURE_2D', 'Graphics.GL.Ext.EXT.Texture.GL_PROXY_TEXTURE_2D_EXT', 'Graphics.GL.Internal.Shared.GL_PROXY_TEXTURE_3D', 'Graphics.GL.Ext.EXT.Texture3D.GL_PROXY_TEXTURE_3D_EXT', 'Graphics.GL.Ext.SGIS.Texture4D.GL_PROXY_TEXTURE_4D_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_1D', 'Graphics.GL.Internal.Shared.GL_TEXTURE_2D', 'Graphics.GL.Internal.Shared.GL_TEXTURE_3D', 'Graphics.GL.Ext.EXT.Texture3D.GL_TEXTURE_3D_EXT', 'Graphics.GL.Ext.OES.Texture3D.GL_TEXTURE_3D_OES', 'Graphics.GL.Ext.SGIS.Texture4D.GL_TEXTURE_4D_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_BASE_LEVEL', 'Graphics.GL.Ext.SGIS.TextureLod.GL_TEXTURE_BASE_LEVEL_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_MAX_LEVEL', 'Graphics.GL.Ext.SGIS.TextureLod.GL_TEXTURE_MAX_LEVEL_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_MAX_LOD', 'Graphics.GL.Ext.SGIS.TextureLod.GL_TEXTURE_MAX_LOD_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_MIN_LOD', 'Graphics.GL.Ext.SGIS.TextureLod.GL_TEXTURE_MIN_LOD_SGIS'.
--
-- The parameter @level@ is a @CheckedInt32@.
--
-- The parameter @internalformat@ is a @InternalFormat@, one of: 'Graphics.GL.Internal.Shared.GL_ALPHA12', 'Graphics.GL.Internal.Shared.GL_ALPHA16', @GL_ALPHA16_ICC_SGIX@, 'Graphics.GL.Internal.Shared.GL_ALPHA4', 'Graphics.GL.Internal.Shared.GL_ALPHA8', @GL_ALPHA_ICC_SGIX@, 'Graphics.GL.Ext.SGIX.DepthTexture.GL_DEPTH_COMPONENT16_SGIX', 'Graphics.GL.Ext.SGIX.DepthTexture.GL_DEPTH_COMPONENT24_SGIX', 'Graphics.GL.Ext.SGIX.DepthTexture.GL_DEPTH_COMPONENT32_SGIX', 'Graphics.GL.Ext.SGIS.TextureSelect.GL_DUAL_ALPHA12_SGIS', 'Graphics.GL.Ext.SGIS.TextureSelect.GL_DUAL_ALPHA16_SGIS', 'Graphics.GL.Ext.SGIS.TextureSelect.GL_DUAL_ALPHA4_SGIS', 'Graphics.GL.Ext.SGIS.TextureSelect.GL_DUAL_ALPHA8_SGIS', 'Graphics.GL.Ext.SGIS.TextureSelect.GL_DUAL_INTENSITY12_SGIS', 'Graphics.GL.Ext.SGIS.TextureSelect.GL_DUAL_INTENSITY16_SGIS', 'Graphics.GL.Ext.SGIS.TextureSelect.GL_DUAL_INTENSITY4_SGIS', 'Graphics.GL.Ext.SGIS.TextureSelect.GL_DUAL_INTENSITY8_SGIS', 'Graphics.GL.Ext.SGIS.TextureSelect.GL_DUAL_LUMINANCE12_SGIS', 'Graphics.GL.Ext.SGIS.TextureSelect.GL_DUAL_LUMINANCE16_SGIS', 'Graphics.GL.Ext.SGIS.TextureSelect.GL_DUAL_LUMINANCE4_SGIS', 'Graphics.GL.Ext.SGIS.TextureSelect.GL_DUAL_LUMINANCE8_SGIS', 'Graphics.GL.Ext.SGIS.TextureSelect.GL_DUAL_LUMINANCE_ALPHA4_SGIS', 'Graphics.GL.Ext.SGIS.TextureSelect.GL_DUAL_LUMINANCE_ALPHA8_SGIS', 'Graphics.GL.Internal.Shared.GL_INTENSITY', 'Graphics.GL.Internal.Shared.GL_INTENSITY12', 'Graphics.GL.Internal.Shared.GL_INTENSITY16', @GL_INTENSITY16_ICC_SGIX@, 'Graphics.GL.Internal.Shared.GL_INTENSITY4', 'Graphics.GL.Internal.Shared.GL_INTENSITY8', @GL_INTENSITY_ICC_SGIX@, 'Graphics.GL.Internal.Shared.GL_LUMINANCE12', 'Graphics.GL.Internal.Shared.GL_LUMINANCE12_ALPHA12', 'Graphics.GL.Internal.Shared.GL_LUMINANCE12_ALPHA4', 'Graphics.GL.Internal.Shared.GL_LUMINANCE16', 'Graphics.GL.Internal.Shared.GL_LUMINANCE16_ALPHA16', @GL_LUMINANCE16_ALPHA8_ICC_SGIX@, @GL_LUMINANCE16_ICC_SGIX@, 'Graphics.GL.Internal.Shared.GL_LUMINANCE4', 'Graphics.GL.Internal.Shared.GL_LUMINANCE4_ALPHA4', 'Graphics.GL.Internal.Shared.GL_LUMINANCE6_ALPHA2', 'Graphics.GL.Internal.Shared.GL_LUMINANCE8', 'Graphics.GL.Internal.Shared.GL_LUMINANCE8_ALPHA8', @GL_LUMINANCE_ALPHA_ICC_SGIX@, @GL_LUMINANCE_ICC_SGIX@, 'Graphics.GL.Ext.SGIS.TextureSelect.GL_QUAD_ALPHA4_SGIS', 'Graphics.GL.Ext.SGIS.TextureSelect.GL_QUAD_ALPHA8_SGIS', 'Graphics.GL.Ext.SGIS.TextureSelect.GL_QUAD_INTENSITY4_SGIS', 'Graphics.GL.Ext.SGIS.TextureSelect.GL_QUAD_INTENSITY8_SGIS', 'Graphics.GL.Ext.SGIS.TextureSelect.GL_QUAD_LUMINANCE4_SGIS', 'Graphics.GL.Ext.SGIS.TextureSelect.GL_QUAD_LUMINANCE8_SGIS', 'Graphics.GL.Internal.Shared.GL_R3_G3_B2', @GL_R5_G6_B5_A8_ICC_SGIX@, @GL_R5_G6_B5_ICC_SGIX@, 'Graphics.GL.Internal.Shared.GL_RGB10', 'Graphics.GL.Internal.Shared.GL_RGB10_A2', 'Graphics.GL.Internal.Shared.GL_RGB12', 'Graphics.GL.Internal.Shared.GL_RGB16', 'Graphics.GL.Ext.EXT.Texture.GL_RGB2_EXT', 'Graphics.GL.Internal.Shared.GL_RGB4', 'Graphics.GL.Internal.Shared.GL_RGB5', 'Graphics.GL.Internal.Shared.GL_RGB5_A1', 'Graphics.GL.Internal.Shared.GL_RGB8', 'Graphics.GL.Internal.Shared.GL_RGBA12', 'Graphics.GL.Internal.Shared.GL_RGBA16', 'Graphics.GL.Internal.Shared.GL_RGBA2', 'Graphics.GL.Internal.Shared.GL_RGBA4', 'Graphics.GL.Internal.Shared.GL_RGBA8', @GL_RGBA_ICC_SGIX@, @GL_RGB_ICC_SGIX@.
--
-- The parameter @x@ is a @WinCoord@.
--
-- The parameter @y@ is a @WinCoord@.
--
-- The parameter @border@ is a @CheckedInt32@.
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glCopyTexImage2D.xhtml>
glCopyTexImage2D :: MonadIO m => GLenum -> GLint -> GLenum -> GLint -> GLint -> GLsizei -> GLsizei -> GLint -> m ()
glCopyTexImage2D = ffienumintenumintintsizeisizeiintIOV glCopyTexImage2DFunPtr
glCopyTexImage2DFunPtr :: FunPtr (GLenum -> GLint -> GLenum -> GLint -> GLint -> GLsizei -> GLsizei -> GLint -> IO ())
glCopyTexImage2DFunPtr = unsafePerformIO (getProcAddress "glCopyTexImage2D")
{-# NOINLINE glCopyTexImage2DFunPtr #-}
-- | Usage: @'glCopyTexSubImage1D' target level xoffset x y width@
--
-- The parameter @target@ is a @TextureTarget@, one of: 'Graphics.GL.Ext.SGIS.DetailTexture.GL_DETAIL_TEXTURE_2D_SGIS', 'Graphics.GL.Internal.Shared.GL_PROXY_TEXTURE_1D', 'Graphics.GL.Ext.EXT.Texture.GL_PROXY_TEXTURE_1D_EXT', 'Graphics.GL.Internal.Shared.GL_PROXY_TEXTURE_2D', 'Graphics.GL.Ext.EXT.Texture.GL_PROXY_TEXTURE_2D_EXT', 'Graphics.GL.Internal.Shared.GL_PROXY_TEXTURE_3D', 'Graphics.GL.Ext.EXT.Texture3D.GL_PROXY_TEXTURE_3D_EXT', 'Graphics.GL.Ext.SGIS.Texture4D.GL_PROXY_TEXTURE_4D_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_1D', 'Graphics.GL.Internal.Shared.GL_TEXTURE_2D', 'Graphics.GL.Internal.Shared.GL_TEXTURE_3D', 'Graphics.GL.Ext.EXT.Texture3D.GL_TEXTURE_3D_EXT', 'Graphics.GL.Ext.OES.Texture3D.GL_TEXTURE_3D_OES', 'Graphics.GL.Ext.SGIS.Texture4D.GL_TEXTURE_4D_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_BASE_LEVEL', 'Graphics.GL.Ext.SGIS.TextureLod.GL_TEXTURE_BASE_LEVEL_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_MAX_LEVEL', 'Graphics.GL.Ext.SGIS.TextureLod.GL_TEXTURE_MAX_LEVEL_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_MAX_LOD', 'Graphics.GL.Ext.SGIS.TextureLod.GL_TEXTURE_MAX_LOD_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_MIN_LOD', 'Graphics.GL.Ext.SGIS.TextureLod.GL_TEXTURE_MIN_LOD_SGIS'.
--
-- The parameter @level@ is a @CheckedInt32@.
--
-- The parameter @xoffset@ is a @CheckedInt32@.
--
-- The parameter @x@ is a @WinCoord@.
--
-- The parameter @y@ is a @WinCoord@.
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glCopyTexSubImage1D.xhtml>
glCopyTexSubImage1D :: MonadIO m => GLenum -> GLint -> GLint -> GLint -> GLint -> GLsizei -> m ()
glCopyTexSubImage1D = ffienumintintintintsizeiIOV glCopyTexSubImage1DFunPtr
glCopyTexSubImage1DFunPtr :: FunPtr (GLenum -> GLint -> GLint -> GLint -> GLint -> GLsizei -> IO ())
glCopyTexSubImage1DFunPtr = unsafePerformIO (getProcAddress "glCopyTexSubImage1D")
{-# NOINLINE glCopyTexSubImage1DFunPtr #-}
-- | Usage: @'glCopyTexSubImage2D' target level xoffset yoffset x y width height@
--
-- The parameter @target@ is a @TextureTarget@, one of: 'Graphics.GL.Ext.SGIS.DetailTexture.GL_DETAIL_TEXTURE_2D_SGIS', 'Graphics.GL.Internal.Shared.GL_PROXY_TEXTURE_1D', 'Graphics.GL.Ext.EXT.Texture.GL_PROXY_TEXTURE_1D_EXT', 'Graphics.GL.Internal.Shared.GL_PROXY_TEXTURE_2D', 'Graphics.GL.Ext.EXT.Texture.GL_PROXY_TEXTURE_2D_EXT', 'Graphics.GL.Internal.Shared.GL_PROXY_TEXTURE_3D', 'Graphics.GL.Ext.EXT.Texture3D.GL_PROXY_TEXTURE_3D_EXT', 'Graphics.GL.Ext.SGIS.Texture4D.GL_PROXY_TEXTURE_4D_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_1D', 'Graphics.GL.Internal.Shared.GL_TEXTURE_2D', 'Graphics.GL.Internal.Shared.GL_TEXTURE_3D', 'Graphics.GL.Ext.EXT.Texture3D.GL_TEXTURE_3D_EXT', 'Graphics.GL.Ext.OES.Texture3D.GL_TEXTURE_3D_OES', 'Graphics.GL.Ext.SGIS.Texture4D.GL_TEXTURE_4D_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_BASE_LEVEL', 'Graphics.GL.Ext.SGIS.TextureLod.GL_TEXTURE_BASE_LEVEL_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_MAX_LEVEL', 'Graphics.GL.Ext.SGIS.TextureLod.GL_TEXTURE_MAX_LEVEL_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_MAX_LOD', 'Graphics.GL.Ext.SGIS.TextureLod.GL_TEXTURE_MAX_LOD_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_MIN_LOD', 'Graphics.GL.Ext.SGIS.TextureLod.GL_TEXTURE_MIN_LOD_SGIS'.
--
-- The parameter @level@ is a @CheckedInt32@.
--
-- The parameter @xoffset@ is a @CheckedInt32@.
--
-- The parameter @yoffset@ is a @CheckedInt32@.
--
-- The parameter @x@ is a @WinCoord@.
--
-- The parameter @y@ is a @WinCoord@.
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glCopyTexSubImage2D.xhtml>
glCopyTexSubImage2D :: MonadIO m => GLenum -> GLint -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> m ()
glCopyTexSubImage2D = ffienumintintintintintsizeisizeiIOV glCopyTexSubImage2DFunPtr
glCopyTexSubImage2DFunPtr :: FunPtr (GLenum -> GLint -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> IO ())
glCopyTexSubImage2DFunPtr = unsafePerformIO (getProcAddress "glCopyTexSubImage2D")
{-# NOINLINE glCopyTexSubImage2DFunPtr #-}
-- | Usage: @'glCopyTexSubImage3D' target level xoffset yoffset zoffset x y width height@
--
-- The parameter @target@ is a @TextureTarget@, one of: 'Graphics.GL.Ext.SGIS.DetailTexture.GL_DETAIL_TEXTURE_2D_SGIS', 'Graphics.GL.Internal.Shared.GL_PROXY_TEXTURE_1D', 'Graphics.GL.Ext.EXT.Texture.GL_PROXY_TEXTURE_1D_EXT', 'Graphics.GL.Internal.Shared.GL_PROXY_TEXTURE_2D', 'Graphics.GL.Ext.EXT.Texture.GL_PROXY_TEXTURE_2D_EXT', 'Graphics.GL.Internal.Shared.GL_PROXY_TEXTURE_3D', 'Graphics.GL.Ext.EXT.Texture3D.GL_PROXY_TEXTURE_3D_EXT', 'Graphics.GL.Ext.SGIS.Texture4D.GL_PROXY_TEXTURE_4D_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_1D', 'Graphics.GL.Internal.Shared.GL_TEXTURE_2D', 'Graphics.GL.Internal.Shared.GL_TEXTURE_3D', 'Graphics.GL.Ext.EXT.Texture3D.GL_TEXTURE_3D_EXT', 'Graphics.GL.Ext.OES.Texture3D.GL_TEXTURE_3D_OES', 'Graphics.GL.Ext.SGIS.Texture4D.GL_TEXTURE_4D_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_BASE_LEVEL', 'Graphics.GL.Ext.SGIS.TextureLod.GL_TEXTURE_BASE_LEVEL_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_MAX_LEVEL', 'Graphics.GL.Ext.SGIS.TextureLod.GL_TEXTURE_MAX_LEVEL_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_MAX_LOD', 'Graphics.GL.Ext.SGIS.TextureLod.GL_TEXTURE_MAX_LOD_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_MIN_LOD', 'Graphics.GL.Ext.SGIS.TextureLod.GL_TEXTURE_MIN_LOD_SGIS'.
--
-- The parameter @level@ is a @CheckedInt32@.
--
-- The parameter @xoffset@ is a @CheckedInt32@.
--
-- The parameter @yoffset@ is a @CheckedInt32@.
--
-- The parameter @zoffset@ is a @CheckedInt32@.
--
-- The parameter @x@ is a @WinCoord@.
--
-- The parameter @y@ is a @WinCoord@.
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glCopyTexSubImage3D.xhtml>
glCopyTexSubImage3D :: MonadIO m => GLenum -> GLint -> GLint -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> m ()
glCopyTexSubImage3D = ffienumintintintintintintsizeisizeiIOV glCopyTexSubImage3DFunPtr
glCopyTexSubImage3DFunPtr :: FunPtr (GLenum -> GLint -> GLint -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> IO ())
glCopyTexSubImage3DFunPtr = unsafePerformIO (getProcAddress "glCopyTexSubImage3D")
{-# NOINLINE glCopyTexSubImage3DFunPtr #-}
-- | Usage: @'glCreateProgram'@
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glCreateProgram.xhtml>
glCreateProgram :: MonadIO m => m GLuint
glCreateProgram = ffiIOuint glCreateProgramFunPtr
glCreateProgramFunPtr :: FunPtr (IO GLuint)
glCreateProgramFunPtr = unsafePerformIO (getProcAddress "glCreateProgram")
{-# NOINLINE glCreateProgramFunPtr #-}
-- | Usage: @'glCreateShader' type@
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glCreateShader.xhtml>
glCreateShader :: MonadIO m => GLenum -> m GLuint
glCreateShader = ffienumIOuint glCreateShaderFunPtr
glCreateShaderFunPtr :: FunPtr (GLenum -> IO GLuint)
glCreateShaderFunPtr = unsafePerformIO (getProcAddress "glCreateShader")
{-# NOINLINE glCreateShaderFunPtr #-}
-- | Usage: @'glCullFace' mode@
--
-- The parameter @mode@ is a @CullFaceMode@, one of: 'Graphics.GL.Internal.Shared.GL_BACK', 'Graphics.GL.Internal.Shared.GL_FRONT', 'Graphics.GL.Internal.Shared.GL_FRONT_AND_BACK'.
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glCullFace.xhtml>
glCullFace :: MonadIO m => GLenum -> m ()
glCullFace = ffienumIOV glCullFaceFunPtr
glCullFaceFunPtr :: FunPtr (GLenum -> IO ())
glCullFaceFunPtr = unsafePerformIO (getProcAddress "glCullFace")
{-# NOINLINE glCullFaceFunPtr #-}
-- | Usage: @'glDeleteBuffers' n buffers@
--
-- The length of @buffers@ should be @n@.
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glDeleteBuffers.xhtml>
glDeleteBuffers :: MonadIO m => GLsizei -> Ptr GLuint -> m ()
glDeleteBuffers = ffisizeiPtruintIOV glDeleteBuffersFunPtr
glDeleteBuffersFunPtr :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
glDeleteBuffersFunPtr = unsafePerformIO (getProcAddress "glDeleteBuffers")
{-# NOINLINE glDeleteBuffersFunPtr #-}
-- | Usage: @'glDeleteFramebuffers' n framebuffers@
--
-- The length of @framebuffers@ should be @n@.
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glDeleteFramebuffers.xhtml>
glDeleteFramebuffers :: MonadIO m => GLsizei -> Ptr GLuint -> m ()
glDeleteFramebuffers = ffisizeiPtruintIOV glDeleteFramebuffersFunPtr
glDeleteFramebuffersFunPtr :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
glDeleteFramebuffersFunPtr = unsafePerformIO (getProcAddress "glDeleteFramebuffers")
{-# NOINLINE glDeleteFramebuffersFunPtr #-}
-- | Usage: @'glDeleteProgram' program@
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glDeleteProgram.xhtml>
glDeleteProgram :: MonadIO m => GLuint -> m ()
glDeleteProgram = ffiuintIOV glDeleteProgramFunPtr
glDeleteProgramFunPtr :: FunPtr (GLuint -> IO ())
glDeleteProgramFunPtr = unsafePerformIO (getProcAddress "glDeleteProgram")
{-# NOINLINE glDeleteProgramFunPtr #-}
-- | Usage: @'glDeleteQueries' n ids@
--
-- The length of @ids@ should be @n@.
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glDeleteQueries.xhtml>
glDeleteQueries :: MonadIO m => GLsizei -> Ptr GLuint -> m ()
glDeleteQueries = ffisizeiPtruintIOV glDeleteQueriesFunPtr
glDeleteQueriesFunPtr :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
glDeleteQueriesFunPtr = unsafePerformIO (getProcAddress "glDeleteQueries")
{-# NOINLINE glDeleteQueriesFunPtr #-}
-- | Usage: @'glDeleteRenderbuffers' n renderbuffers@
--
-- The length of @renderbuffers@ should be @n@.
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glDeleteRenderbuffers.xhtml>
glDeleteRenderbuffers :: MonadIO m => GLsizei -> Ptr GLuint -> m ()
glDeleteRenderbuffers = ffisizeiPtruintIOV glDeleteRenderbuffersFunPtr
glDeleteRenderbuffersFunPtr :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
glDeleteRenderbuffersFunPtr = unsafePerformIO (getProcAddress "glDeleteRenderbuffers")
{-# NOINLINE glDeleteRenderbuffersFunPtr #-}
-- | Usage: @'glDeleteShader' shader@
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glDeleteShader.xhtml>
glDeleteShader :: MonadIO m => GLuint -> m ()
glDeleteShader = ffiuintIOV glDeleteShaderFunPtr
glDeleteShaderFunPtr :: FunPtr (GLuint -> IO ())
glDeleteShaderFunPtr = unsafePerformIO (getProcAddress "glDeleteShader")
{-# NOINLINE glDeleteShaderFunPtr #-}
-- | Usage: @'glDeleteSync' sync@
--
-- The parameter @sync@ is a @sync@.
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glDeleteSync.xhtml>
glDeleteSync :: MonadIO m => GLsync -> m ()
glDeleteSync = ffisyncIOV glDeleteSyncFunPtr
glDeleteSyncFunPtr :: FunPtr (GLsync -> IO ())
glDeleteSyncFunPtr = unsafePerformIO (getProcAddress "glDeleteSync")
{-# NOINLINE glDeleteSyncFunPtr #-}
-- | Usage: @'glDeleteTextures' n textures@
--
-- The parameter @textures@ is a @Texture@.
--
-- The length of @textures@ should be @n@.
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glDeleteTextures.xhtml>
glDeleteTextures :: MonadIO m => GLsizei -> Ptr GLuint -> m ()
glDeleteTextures = ffisizeiPtruintIOV glDeleteTexturesFunPtr
glDeleteTexturesFunPtr :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
glDeleteTexturesFunPtr = unsafePerformIO (getProcAddress "glDeleteTextures")
{-# NOINLINE glDeleteTexturesFunPtr #-}
-- | Usage: @'glDeleteVertexArrays' n arrays@
--
-- The length of @arrays@ should be @n@.
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glDeleteVertexArrays.xhtml>
glDeleteVertexArrays :: MonadIO m => GLsizei -> Ptr GLuint -> m ()
glDeleteVertexArrays = ffisizeiPtruintIOV glDeleteVertexArraysFunPtr
glDeleteVertexArraysFunPtr :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
glDeleteVertexArraysFunPtr = unsafePerformIO (getProcAddress "glDeleteVertexArrays")
{-# NOINLINE glDeleteVertexArraysFunPtr #-}
-- | Usage: @'glDepthFunc' func@
--
-- The parameter @func@ is a @DepthFunction@, one of: 'Graphics.GL.Internal.Shared.GL_ALWAYS', 'Graphics.GL.Internal.Shared.GL_EQUAL', 'Graphics.GL.Internal.Shared.GL_GEQUAL', 'Graphics.GL.Internal.Shared.GL_GREATER', 'Graphics.GL.Internal.Shared.GL_LEQUAL', 'Graphics.GL.Internal.Shared.GL_LESS', 'Graphics.GL.Internal.Shared.GL_NEVER', 'Graphics.GL.Internal.Shared.GL_NOTEQUAL'.
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glDepthFunc.xhtml>
glDepthFunc :: MonadIO m => GLenum -> m ()
glDepthFunc = ffienumIOV glDepthFuncFunPtr
glDepthFuncFunPtr :: FunPtr (GLenum -> IO ())
glDepthFuncFunPtr = unsafePerformIO (getProcAddress "glDepthFunc")
{-# NOINLINE glDepthFuncFunPtr #-}
-- | Usage: @'glDepthMask' flag@
--
-- The parameter @flag@ is a @Boolean@, one of: 'Graphics.GL.Internal.Shared.GL_FALSE', 'Graphics.GL.Internal.Shared.GL_TRUE'.
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glDepthMask.xhtml>
glDepthMask :: MonadIO m => GLboolean -> m ()
glDepthMask = ffibooleanIOV glDepthMaskFunPtr
glDepthMaskFunPtr :: FunPtr (GLboolean -> IO ())
glDepthMaskFunPtr = unsafePerformIO (getProcAddress "glDepthMask")
{-# NOINLINE glDepthMaskFunPtr #-}
-- | Usage: @'glDepthRange' near far@
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glDepthRange.xhtml>
glDepthRange :: MonadIO m => GLdouble -> GLdouble -> m ()
glDepthRange = ffidoubledoubleIOV glDepthRangeFunPtr
glDepthRangeFunPtr :: FunPtr (GLdouble -> GLdouble -> IO ())
glDepthRangeFunPtr = unsafePerformIO (getProcAddress "glDepthRange")
{-# NOINLINE glDepthRangeFunPtr #-}
-- | Usage: @'glDetachShader' program shader@
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glDetachShader.xhtml>
glDetachShader :: MonadIO m => GLuint -> GLuint -> m ()
glDetachShader = ffiuintuintIOV glDetachShaderFunPtr
glDetachShaderFunPtr :: FunPtr (GLuint -> GLuint -> IO ())
glDetachShaderFunPtr = unsafePerformIO (getProcAddress "glDetachShader")
{-# NOINLINE glDetachShaderFunPtr #-}
-- | Usage: @'glDisable' cap@
--
-- The parameter @cap@ is a @EnableCap@, one of: 'Graphics.GL.Internal.Shared.GL_ALPHA_TEST', 'Graphics.GL.Ext.SGIX.AsyncPixel.GL_ASYNC_DRAW_PIXELS_SGIX', 'Graphics.GL.Ext.SGIX.AsyncHistogram.GL_ASYNC_HISTOGRAM_SGIX', 'Graphics.GL.Ext.SGIX.AsyncPixel.GL_ASYNC_READ_PIXELS_SGIX', 'Graphics.GL.Ext.SGIX.AsyncPixel.GL_ASYNC_TEX_IMAGE_SGIX', 'Graphics.GL.Internal.Shared.GL_AUTO_NORMAL', 'Graphics.GL.Internal.Shared.GL_BLEND', 'Graphics.GL.Ext.SGIX.CalligraphicFragment.GL_CALLIGRAPHIC_FRAGMENT_SGIX', 'Graphics.GL.Internal.Shared.GL_CLIP_PLANE0', 'Graphics.GL.Internal.Shared.GL_CLIP_PLANE1', 'Graphics.GL.Internal.Shared.GL_CLIP_PLANE2', 'Graphics.GL.Internal.Shared.GL_CLIP_PLANE3', 'Graphics.GL.Internal.Shared.GL_CLIP_PLANE4', 'Graphics.GL.Internal.Shared.GL_CLIP_PLANE5', 'Graphics.GL.Internal.Shared.GL_COLOR_ARRAY', 'Graphics.GL.Internal.Shared.GL_COLOR_LOGIC_OP', 'Graphics.GL.Internal.Shared.GL_COLOR_MATERIAL', 'Graphics.GL.Ext.SGI.ColorTable.GL_COLOR_TABLE_SGI', 'Graphics.GL.Ext.EXT.Convolution.GL_CONVOLUTION_1D_EXT', 'Graphics.GL.Ext.EXT.Convolution.GL_CONVOLUTION_2D_EXT', 'Graphics.GL.Internal.Shared.GL_CULL_FACE', 'Graphics.GL.Internal.Shared.GL_DEPTH_TEST', 'Graphics.GL.Internal.Shared.GL_DITHER', 'Graphics.GL.Internal.Shared.GL_EDGE_FLAG_ARRAY', 'Graphics.GL.Internal.Shared.GL_FOG', 'Graphics.GL.Ext.SGIX.FogOffset.GL_FOG_OFFSET_SGIX', 'Graphics.GL.Ext.SGIX.FragmentLighting.GL_FRAGMENT_COLOR_MATERIAL_SGIX', 'Graphics.GL.Ext.SGIX.FragmentLighting.GL_FRAGMENT_LIGHT0_SGIX', 'Graphics.GL.Ext.SGIX.FragmentLighting.GL_FRAGMENT_LIGHT1_SGIX', 'Graphics.GL.Ext.SGIX.FragmentLighting.GL_FRAGMENT_LIGHT2_SGIX', 'Graphics.GL.Ext.SGIX.FragmentLighting.GL_FRAGMENT_LIGHT3_SGIX', 'Graphics.GL.Ext.SGIX.FragmentLighting.GL_FRAGMENT_LIGHT4_SGIX', 'Graphics.GL.Ext.SGIX.FragmentLighting.GL_FRAGMENT_LIGHT5_SGIX', 'Graphics.GL.Ext.SGIX.FragmentLighting.GL_FRAGMENT_LIGHT6_SGIX', 'Graphics.GL.Ext.SGIX.FragmentLighting.GL_FRAGMENT_LIGHT7_SGIX', 'Graphics.GL.Ext.SGIX.FragmentLighting.GL_FRAGMENT_LIGHTING_SGIX', 'Graphics.GL.Ext.SGIX.Framezoom.GL_FRAMEZOOM_SGIX', 'Graphics.GL.Ext.EXT.Histogram.GL_HISTOGRAM_EXT', 'Graphics.GL.Internal.Shared.GL_INDEX_ARRAY', 'Graphics.GL.Internal.Shared.GL_INDEX_LOGIC_OP', 'Graphics.GL.Ext.SGIX.Interlace.GL_INTERLACE_SGIX', 'Graphics.GL.Ext.SGIX.IrInstrument1.GL_IR_INSTRUMENT1_SGIX', 'Graphics.GL.Internal.Shared.GL_LIGHT0', 'Graphics.GL.Internal.Shared.GL_LIGHT1', 'Graphics.GL.Internal.Shared.GL_LIGHT2', 'Graphics.GL.Internal.Shared.GL_LIGHT3', 'Graphics.GL.Internal.Shared.GL_LIGHT4', 'Graphics.GL.Internal.Shared.GL_LIGHT5', 'Graphics.GL.Internal.Shared.GL_LIGHT6', 'Graphics.GL.Internal.Shared.GL_LIGHT7', 'Graphics.GL.Internal.Shared.GL_LIGHTING', 'Graphics.GL.Internal.Shared.GL_LINE_SMOOTH', 'Graphics.GL.Internal.Shared.GL_LINE_STIPPLE', 'Graphics.GL.Internal.Shared.GL_MAP1_COLOR_4', 'Graphics.GL.Internal.Shared.GL_MAP1_INDEX', 'Graphics.GL.Internal.Shared.GL_MAP1_NORMAL', 'Graphics.GL.Internal.Shared.GL_MAP1_TEXTURE_COORD_1', 'Graphics.GL.Internal.Shared.GL_MAP1_TEXTURE_COORD_2', 'Graphics.GL.Internal.Shared.GL_MAP1_TEXTURE_COORD_3', 'Graphics.GL.Internal.Shared.GL_MAP1_TEXTURE_COORD_4', 'Graphics.GL.Internal.Shared.GL_MAP1_VERTEX_3', 'Graphics.GL.Internal.Shared.GL_MAP1_VERTEX_4', 'Graphics.GL.Internal.Shared.GL_MAP2_COLOR_4', 'Graphics.GL.Internal.Shared.GL_MAP2_INDEX', 'Graphics.GL.Internal.Shared.GL_MAP2_NORMAL', 'Graphics.GL.Internal.Shared.GL_MAP2_TEXTURE_COORD_1', 'Graphics.GL.Internal.Shared.GL_MAP2_TEXTURE_COORD_2', 'Graphics.GL.Internal.Shared.GL_MAP2_TEXTURE_COORD_3', 'Graphics.GL.Internal.Shared.GL_MAP2_TEXTURE_COORD_4', 'Graphics.GL.Internal.Shared.GL_MAP2_VERTEX_3', 'Graphics.GL.Internal.Shared.GL_MAP2_VERTEX_4', 'Graphics.GL.Ext.EXT.Histogram.GL_MINMAX_EXT', 'Graphics.GL.Ext.SGIS.Multisample.GL_MULTISAMPLE_SGIS', 'Graphics.GL.Internal.Shared.GL_NORMALIZE', 'Graphics.GL.Internal.Shared.GL_NORMAL_ARRAY', 'Graphics.GL.Ext.SGIS.PixelTexture.GL_PIXEL_TEXTURE_SGIS', 'Graphics.GL.Ext.SGIX.PixelTexture.GL_PIXEL_TEX_GEN_SGIX', 'Graphics.GL.Internal.Shared.GL_POINT_SMOOTH', 'Graphics.GL.Internal.Shared.GL_POLYGON_OFFSET_FILL', 'Graphics.GL.Internal.Shared.GL_POLYGON_OFFSET_LINE', 'Graphics.GL.Internal.Shared.GL_POLYGON_OFFSET_POINT', 'Graphics.GL.Internal.Shared.GL_POLYGON_SMOOTH', 'Graphics.GL.Internal.Shared.GL_POLYGON_STIPPLE', 'Graphics.GL.Ext.SGI.ColorTable.GL_POST_COLOR_MATRIX_COLOR_TABLE_SGI', 'Graphics.GL.Ext.SGI.ColorTable.GL_POST_CONVOLUTION_COLOR_TABLE_SGI', 'Graphics.GL.Ext.SGIX.ReferencePlane.GL_REFERENCE_PLANE_SGIX', 'Graphics.GL.Ext.EXT.RescaleNormal.GL_RESCALE_NORMAL_EXT', 'Graphics.GL.Ext.SGIS.Multisample.GL_SAMPLE_ALPHA_TO_MASK_SGIS', 'Graphics.GL.Ext.SGIS.Multisample.GL_SAMPLE_ALPHA_TO_ONE_SGIS', 'Graphics.GL.Ext.SGIS.Multisample.GL_SAMPLE_MASK_SGIS', 'Graphics.GL.Internal.Shared.GL_SCISSOR_TEST', 'Graphics.GL.Ext.EXT.Convolution.GL_SEPARABLE_2D_EXT', 'Graphics.GL.Ext.EXT.SharedTexturePalette.GL_SHARED_TEXTURE_PALETTE_EXT', 'Graphics.GL.Ext.SGIX.Sprite.GL_SPRITE_SGIX', 'Graphics.GL.Internal.Shared.GL_STENCIL_TEST', 'Graphics.GL.Internal.Shared.GL_TEXTURE_1D', 'Graphics.GL.Internal.Shared.GL_TEXTURE_2D', 'Graphics.GL.Ext.EXT.Texture3D.GL_TEXTURE_3D_EXT', 'Graphics.GL.Ext.SGIS.Texture4D.GL_TEXTURE_4D_SGIS', 'Graphics.GL.Ext.SGI.TextureColorTable.GL_TEXTURE_COLOR_TABLE_SGI', 'Graphics.GL.Internal.Shared.GL_TEXTURE_COORD_ARRAY', 'Graphics.GL.Internal.Shared.GL_TEXTURE_GEN_Q', 'Graphics.GL.Internal.Shared.GL_TEXTURE_GEN_R', 'Graphics.GL.Internal.Shared.GL_TEXTURE_GEN_S', 'Graphics.GL.Internal.Shared.GL_TEXTURE_GEN_T', 'Graphics.GL.Internal.Shared.GL_VERTEX_ARRAY'.
glDisable :: MonadIO m => GLenum -> m ()
glDisable = ffienumIOV glDisableFunPtr
glDisableFunPtr :: FunPtr (GLenum -> IO ())
glDisableFunPtr = unsafePerformIO (getProcAddress "glDisable")
{-# NOINLINE glDisableFunPtr #-}
-- | Usage: @'glDisableVertexAttribArray' index@
glDisableVertexAttribArray :: MonadIO m => GLuint -> m ()
glDisableVertexAttribArray = ffiuintIOV glDisableVertexAttribArrayFunPtr
glDisableVertexAttribArrayFunPtr :: FunPtr (GLuint -> IO ())
glDisableVertexAttribArrayFunPtr = unsafePerformIO (getProcAddress "glDisableVertexAttribArray")
{-# NOINLINE glDisableVertexAttribArrayFunPtr #-}
-- | Usage: @'glDisablei' target index@
glDisablei :: MonadIO m => GLenum -> GLuint -> m ()
glDisablei = ffienumuintIOV glDisableiFunPtr
glDisableiFunPtr :: FunPtr (GLenum -> GLuint -> IO ())
glDisableiFunPtr = unsafePerformIO (getProcAddress "glDisablei")
{-# NOINLINE glDisableiFunPtr #-}
-- | Usage: @'glDrawArrays' mode first count@
--
-- The parameter @mode@ is a @PrimitiveType@, one of: 'Graphics.GL.Internal.Shared.GL_LINES', 'Graphics.GL.Internal.Shared.GL_LINES_ADJACENCY', 'Graphics.GL.Ext.ARB.GeometryShader4.GL_LINES_ADJACENCY_ARB', 'Graphics.GL.Internal.Shared.GL_LINES_ADJACENCY_EXT', 'Graphics.GL.Internal.Shared.GL_LINE_LOOP', 'Graphics.GL.Internal.Shared.GL_LINE_STRIP', 'Graphics.GL.Internal.Shared.GL_LINE_STRIP_ADJACENCY', 'Graphics.GL.Ext.ARB.GeometryShader4.GL_LINE_STRIP_ADJACENCY_ARB', 'Graphics.GL.Internal.Shared.GL_LINE_STRIP_ADJACENCY_EXT', 'Graphics.GL.Internal.Shared.GL_PATCHES', 'Graphics.GL.Ext.EXT.TessellationShader.GL_PATCHES_EXT', 'Graphics.GL.Internal.Shared.GL_POINTS', 'Graphics.GL.Internal.Shared.GL_POLYGON', 'Graphics.GL.Internal.Shared.GL_QUADS', 'Graphics.GL.Ext.EXT.TessellationShader.GL_QUADS_EXT', 'Graphics.GL.Internal.Shared.GL_QUAD_STRIP', 'Graphics.GL.Internal.Shared.GL_TRIANGLES', 'Graphics.GL.Internal.Shared.GL_TRIANGLES_ADJACENCY', 'Graphics.GL.Ext.ARB.GeometryShader4.GL_TRIANGLES_ADJACENCY_ARB', 'Graphics.GL.Internal.Shared.GL_TRIANGLES_ADJACENCY_EXT', 'Graphics.GL.Internal.Shared.GL_TRIANGLE_FAN', 'Graphics.GL.Internal.Shared.GL_TRIANGLE_STRIP', 'Graphics.GL.Internal.Shared.GL_TRIANGLE_STRIP_ADJACENCY', 'Graphics.GL.Ext.ARB.GeometryShader4.GL_TRIANGLE_STRIP_ADJACENCY_ARB', 'Graphics.GL.Internal.Shared.GL_TRIANGLE_STRIP_ADJACENCY_EXT'.
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glDrawArrays.xhtml>
glDrawArrays :: MonadIO m => GLenum -> GLint -> GLsizei -> m ()
glDrawArrays = ffienumintsizeiIOV glDrawArraysFunPtr
glDrawArraysFunPtr :: FunPtr (GLenum -> GLint -> GLsizei -> IO ())
glDrawArraysFunPtr = unsafePerformIO (getProcAddress "glDrawArrays")
{-# NOINLINE glDrawArraysFunPtr #-}
-- | Usage: @'glDrawArraysInstanced' mode first count instancecount@
--
-- The parameter @mode@ is a @PrimitiveType@, one of: 'Graphics.GL.Internal.Shared.GL_LINES', 'Graphics.GL.Internal.Shared.GL_LINES_ADJACENCY', 'Graphics.GL.Ext.ARB.GeometryShader4.GL_LINES_ADJACENCY_ARB', 'Graphics.GL.Internal.Shared.GL_LINES_ADJACENCY_EXT', 'Graphics.GL.Internal.Shared.GL_LINE_LOOP', 'Graphics.GL.Internal.Shared.GL_LINE_STRIP', 'Graphics.GL.Internal.Shared.GL_LINE_STRIP_ADJACENCY', 'Graphics.GL.Ext.ARB.GeometryShader4.GL_LINE_STRIP_ADJACENCY_ARB', 'Graphics.GL.Internal.Shared.GL_LINE_STRIP_ADJACENCY_EXT', 'Graphics.GL.Internal.Shared.GL_PATCHES', 'Graphics.GL.Ext.EXT.TessellationShader.GL_PATCHES_EXT', 'Graphics.GL.Internal.Shared.GL_POINTS', 'Graphics.GL.Internal.Shared.GL_POLYGON', 'Graphics.GL.Internal.Shared.GL_QUADS', 'Graphics.GL.Ext.EXT.TessellationShader.GL_QUADS_EXT', 'Graphics.GL.Internal.Shared.GL_QUAD_STRIP', 'Graphics.GL.Internal.Shared.GL_TRIANGLES', 'Graphics.GL.Internal.Shared.GL_TRIANGLES_ADJACENCY', 'Graphics.GL.Ext.ARB.GeometryShader4.GL_TRIANGLES_ADJACENCY_ARB', 'Graphics.GL.Internal.Shared.GL_TRIANGLES_ADJACENCY_EXT', 'Graphics.GL.Internal.Shared.GL_TRIANGLE_FAN', 'Graphics.GL.Internal.Shared.GL_TRIANGLE_STRIP', 'Graphics.GL.Internal.Shared.GL_TRIANGLE_STRIP_ADJACENCY', 'Graphics.GL.Ext.ARB.GeometryShader4.GL_TRIANGLE_STRIP_ADJACENCY_ARB', 'Graphics.GL.Internal.Shared.GL_TRIANGLE_STRIP_ADJACENCY_EXT'.
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glDrawArraysInstanced.xhtml>
glDrawArraysInstanced :: MonadIO m => GLenum -> GLint -> GLsizei -> GLsizei -> m ()
glDrawArraysInstanced = ffienumintsizeisizeiIOV glDrawArraysInstancedFunPtr
glDrawArraysInstancedFunPtr :: FunPtr (GLenum -> GLint -> GLsizei -> GLsizei -> IO ())
glDrawArraysInstancedFunPtr = unsafePerformIO (getProcAddress "glDrawArraysInstanced")
{-# NOINLINE glDrawArraysInstancedFunPtr #-}
-- | Usage: @'glDrawBuffer' buf@
--
-- The parameter @buf@ is a @DrawBufferMode@, one of: 'Graphics.GL.Internal.Shared.GL_AUX0', 'Graphics.GL.Internal.Shared.GL_AUX1', 'Graphics.GL.Internal.Shared.GL_AUX2', 'Graphics.GL.Internal.Shared.GL_AUX3', 'Graphics.GL.Internal.Shared.GL_BACK', 'Graphics.GL.Internal.Shared.GL_BACK_LEFT', 'Graphics.GL.Internal.Shared.GL_BACK_RIGHT', 'Graphics.GL.Internal.Shared.GL_FRONT', 'Graphics.GL.Internal.Shared.GL_FRONT_AND_BACK', 'Graphics.GL.Internal.Shared.GL_FRONT_LEFT', 'Graphics.GL.Internal.Shared.GL_FRONT_RIGHT', 'Graphics.GL.Internal.Shared.GL_LEFT', 'Graphics.GL.Internal.Shared.GL_NONE', 'Graphics.GL.Ext.OES.FramebufferObject.GL_NONE_OES', 'Graphics.GL.Internal.Shared.GL_RIGHT'.
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glDrawBuffer.xhtml>
glDrawBuffer :: MonadIO m => GLenum -> m ()
glDrawBuffer = ffienumIOV glDrawBufferFunPtr
glDrawBufferFunPtr :: FunPtr (GLenum -> IO ())
glDrawBufferFunPtr = unsafePerformIO (getProcAddress "glDrawBuffer")
{-# NOINLINE glDrawBufferFunPtr #-}
-- | Usage: @'glDrawBuffers' n bufs@
--
-- The parameter @bufs@ is a @DrawBufferModeATI@.
--
-- The length of @bufs@ should be @n@.
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glDrawBuffers.xhtml>
glDrawBuffers :: MonadIO m => GLsizei -> Ptr GLenum -> m ()
glDrawBuffers = ffisizeiPtrenumIOV glDrawBuffersFunPtr
glDrawBuffersFunPtr :: FunPtr (GLsizei -> Ptr GLenum -> IO ())
glDrawBuffersFunPtr = unsafePerformIO (getProcAddress "glDrawBuffers")
{-# NOINLINE glDrawBuffersFunPtr #-}
-- | Usage: @'glDrawElements' mode count type indices@
--
-- The parameter @mode@ is a @PrimitiveType@, one of: 'Graphics.GL.Internal.Shared.GL_LINES', 'Graphics.GL.Internal.Shared.GL_LINES_ADJACENCY', 'Graphics.GL.Ext.ARB.GeometryShader4.GL_LINES_ADJACENCY_ARB', 'Graphics.GL.Internal.Shared.GL_LINES_ADJACENCY_EXT', 'Graphics.GL.Internal.Shared.GL_LINE_LOOP', 'Graphics.GL.Internal.Shared.GL_LINE_STRIP', 'Graphics.GL.Internal.Shared.GL_LINE_STRIP_ADJACENCY', 'Graphics.GL.Ext.ARB.GeometryShader4.GL_LINE_STRIP_ADJACENCY_ARB', 'Graphics.GL.Internal.Shared.GL_LINE_STRIP_ADJACENCY_EXT', 'Graphics.GL.Internal.Shared.GL_PATCHES', 'Graphics.GL.Ext.EXT.TessellationShader.GL_PATCHES_EXT', 'Graphics.GL.Internal.Shared.GL_POINTS', 'Graphics.GL.Internal.Shared.GL_POLYGON', 'Graphics.GL.Internal.Shared.GL_QUADS', 'Graphics.GL.Ext.EXT.TessellationShader.GL_QUADS_EXT', 'Graphics.GL.Internal.Shared.GL_QUAD_STRIP', 'Graphics.GL.Internal.Shared.GL_TRIANGLES', 'Graphics.GL.Internal.Shared.GL_TRIANGLES_ADJACENCY', 'Graphics.GL.Ext.ARB.GeometryShader4.GL_TRIANGLES_ADJACENCY_ARB', 'Graphics.GL.Internal.Shared.GL_TRIANGLES_ADJACENCY_EXT', 'Graphics.GL.Internal.Shared.GL_TRIANGLE_FAN', 'Graphics.GL.Internal.Shared.GL_TRIANGLE_STRIP', 'Graphics.GL.Internal.Shared.GL_TRIANGLE_STRIP_ADJACENCY', 'Graphics.GL.Ext.ARB.GeometryShader4.GL_TRIANGLE_STRIP_ADJACENCY_ARB', 'Graphics.GL.Internal.Shared.GL_TRIANGLE_STRIP_ADJACENCY_EXT'.
--
-- The parameter @type@ is a @DrawElementsType@.
--
-- The length of @indices@ should be @COMPSIZE(count,type)@.
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glDrawElements.xhtml>
glDrawElements :: MonadIO m => GLenum -> GLsizei -> GLenum -> Ptr () -> m ()
glDrawElements = ffienumsizeienumPtrVIOV glDrawElementsFunPtr
glDrawElementsFunPtr :: FunPtr (GLenum -> GLsizei -> GLenum -> Ptr () -> IO ())
glDrawElementsFunPtr = unsafePerformIO (getProcAddress "glDrawElements")
{-# NOINLINE glDrawElementsFunPtr #-}
-- | Usage: @'glDrawElementsBaseVertex' mode count type indices basevertex@
--
-- The parameter @mode@ is a @PrimitiveType@, one of: 'Graphics.GL.Internal.Shared.GL_LINES', 'Graphics.GL.Internal.Shared.GL_LINES_ADJACENCY', 'Graphics.GL.Ext.ARB.GeometryShader4.GL_LINES_ADJACENCY_ARB', 'Graphics.GL.Internal.Shared.GL_LINES_ADJACENCY_EXT', 'Graphics.GL.Internal.Shared.GL_LINE_LOOP', 'Graphics.GL.Internal.Shared.GL_LINE_STRIP', 'Graphics.GL.Internal.Shared.GL_LINE_STRIP_ADJACENCY', 'Graphics.GL.Ext.ARB.GeometryShader4.GL_LINE_STRIP_ADJACENCY_ARB', 'Graphics.GL.Internal.Shared.GL_LINE_STRIP_ADJACENCY_EXT', 'Graphics.GL.Internal.Shared.GL_PATCHES', 'Graphics.GL.Ext.EXT.TessellationShader.GL_PATCHES_EXT', 'Graphics.GL.Internal.Shared.GL_POINTS', 'Graphics.GL.Internal.Shared.GL_POLYGON', 'Graphics.GL.Internal.Shared.GL_QUADS', 'Graphics.GL.Ext.EXT.TessellationShader.GL_QUADS_EXT', 'Graphics.GL.Internal.Shared.GL_QUAD_STRIP', 'Graphics.GL.Internal.Shared.GL_TRIANGLES', 'Graphics.GL.Internal.Shared.GL_TRIANGLES_ADJACENCY', 'Graphics.GL.Ext.ARB.GeometryShader4.GL_TRIANGLES_ADJACENCY_ARB', 'Graphics.GL.Internal.Shared.GL_TRIANGLES_ADJACENCY_EXT', 'Graphics.GL.Internal.Shared.GL_TRIANGLE_FAN', 'Graphics.GL.Internal.Shared.GL_TRIANGLE_STRIP', 'Graphics.GL.Internal.Shared.GL_TRIANGLE_STRIP_ADJACENCY', 'Graphics.GL.Ext.ARB.GeometryShader4.GL_TRIANGLE_STRIP_ADJACENCY_ARB', 'Graphics.GL.Internal.Shared.GL_TRIANGLE_STRIP_ADJACENCY_EXT'.
--
-- The parameter @type@ is a @DrawElementsType@.
--
-- The length of @indices@ should be @COMPSIZE(count,type)@.
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glDrawElementsBaseVertex.xhtml>
glDrawElementsBaseVertex :: MonadIO m => GLenum -> GLsizei -> GLenum -> Ptr () -> GLint -> m ()
glDrawElementsBaseVertex = ffienumsizeienumPtrVintIOV glDrawElementsBaseVertexFunPtr
glDrawElementsBaseVertexFunPtr :: FunPtr (GLenum -> GLsizei -> GLenum -> Ptr () -> GLint -> IO ())
glDrawElementsBaseVertexFunPtr = unsafePerformIO (getProcAddress "glDrawElementsBaseVertex")
{-# NOINLINE glDrawElementsBaseVertexFunPtr #-}
-- | Usage: @'glDrawElementsInstanced' mode count type indices instancecount@
--
-- The parameter @mode@ is a @PrimitiveType@, one of: 'Graphics.GL.Internal.Shared.GL_LINES', 'Graphics.GL.Internal.Shared.GL_LINES_ADJACENCY', 'Graphics.GL.Ext.ARB.GeometryShader4.GL_LINES_ADJACENCY_ARB', 'Graphics.GL.Internal.Shared.GL_LINES_ADJACENCY_EXT', 'Graphics.GL.Internal.Shared.GL_LINE_LOOP', 'Graphics.GL.Internal.Shared.GL_LINE_STRIP', 'Graphics.GL.Internal.Shared.GL_LINE_STRIP_ADJACENCY', 'Graphics.GL.Ext.ARB.GeometryShader4.GL_LINE_STRIP_ADJACENCY_ARB', 'Graphics.GL.Internal.Shared.GL_LINE_STRIP_ADJACENCY_EXT', 'Graphics.GL.Internal.Shared.GL_PATCHES', 'Graphics.GL.Ext.EXT.TessellationShader.GL_PATCHES_EXT', 'Graphics.GL.Internal.Shared.GL_POINTS', 'Graphics.GL.Internal.Shared.GL_POLYGON', 'Graphics.GL.Internal.Shared.GL_QUADS', 'Graphics.GL.Ext.EXT.TessellationShader.GL_QUADS_EXT', 'Graphics.GL.Internal.Shared.GL_QUAD_STRIP', 'Graphics.GL.Internal.Shared.GL_TRIANGLES', 'Graphics.GL.Internal.Shared.GL_TRIANGLES_ADJACENCY', 'Graphics.GL.Ext.ARB.GeometryShader4.GL_TRIANGLES_ADJACENCY_ARB', 'Graphics.GL.Internal.Shared.GL_TRIANGLES_ADJACENCY_EXT', 'Graphics.GL.Internal.Shared.GL_TRIANGLE_FAN', 'Graphics.GL.Internal.Shared.GL_TRIANGLE_STRIP', 'Graphics.GL.Internal.Shared.GL_TRIANGLE_STRIP_ADJACENCY', 'Graphics.GL.Ext.ARB.GeometryShader4.GL_TRIANGLE_STRIP_ADJACENCY_ARB', 'Graphics.GL.Internal.Shared.GL_TRIANGLE_STRIP_ADJACENCY_EXT'.
--
-- The parameter @type@ is a @DrawElementsType@.
--
-- The length of @indices@ should be @COMPSIZE(count,type)@.
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glDrawElementsInstanced.xhtml>
glDrawElementsInstanced :: MonadIO m => GLenum -> GLsizei -> GLenum -> Ptr () -> GLsizei -> m ()
glDrawElementsInstanced = ffienumsizeienumPtrVsizeiIOV glDrawElementsInstancedFunPtr
glDrawElementsInstancedFunPtr :: FunPtr (GLenum -> GLsizei -> GLenum -> Ptr () -> GLsizei -> IO ())
glDrawElementsInstancedFunPtr = unsafePerformIO (getProcAddress "glDrawElementsInstanced")
{-# NOINLINE glDrawElementsInstancedFunPtr #-}
-- | Usage: @'glDrawElementsInstancedBaseVertex' mode count type indices instancecount basevertex@
--
-- The parameter @mode@ is a @PrimitiveType@, one of: 'Graphics.GL.Internal.Shared.GL_LINES', 'Graphics.GL.Internal.Shared.GL_LINES_ADJACENCY', 'Graphics.GL.Ext.ARB.GeometryShader4.GL_LINES_ADJACENCY_ARB', 'Graphics.GL.Internal.Shared.GL_LINES_ADJACENCY_EXT', 'Graphics.GL.Internal.Shared.GL_LINE_LOOP', 'Graphics.GL.Internal.Shared.GL_LINE_STRIP', 'Graphics.GL.Internal.Shared.GL_LINE_STRIP_ADJACENCY', 'Graphics.GL.Ext.ARB.GeometryShader4.GL_LINE_STRIP_ADJACENCY_ARB', 'Graphics.GL.Internal.Shared.GL_LINE_STRIP_ADJACENCY_EXT', 'Graphics.GL.Internal.Shared.GL_PATCHES', 'Graphics.GL.Ext.EXT.TessellationShader.GL_PATCHES_EXT', 'Graphics.GL.Internal.Shared.GL_POINTS', 'Graphics.GL.Internal.Shared.GL_POLYGON', 'Graphics.GL.Internal.Shared.GL_QUADS', 'Graphics.GL.Ext.EXT.TessellationShader.GL_QUADS_EXT', 'Graphics.GL.Internal.Shared.GL_QUAD_STRIP', 'Graphics.GL.Internal.Shared.GL_TRIANGLES', 'Graphics.GL.Internal.Shared.GL_TRIANGLES_ADJACENCY', 'Graphics.GL.Ext.ARB.GeometryShader4.GL_TRIANGLES_ADJACENCY_ARB', 'Graphics.GL.Internal.Shared.GL_TRIANGLES_ADJACENCY_EXT', 'Graphics.GL.Internal.Shared.GL_TRIANGLE_FAN', 'Graphics.GL.Internal.Shared.GL_TRIANGLE_STRIP', 'Graphics.GL.Internal.Shared.GL_TRIANGLE_STRIP_ADJACENCY', 'Graphics.GL.Ext.ARB.GeometryShader4.GL_TRIANGLE_STRIP_ADJACENCY_ARB', 'Graphics.GL.Internal.Shared.GL_TRIANGLE_STRIP_ADJACENCY_EXT'.
--
-- The parameter @type@ is a @DrawElementsType@.
--
-- The length of @indices@ should be @COMPSIZE(count,type)@.
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glDrawElementsInstancedBaseVertex.xhtml>
glDrawElementsInstancedBaseVertex :: MonadIO m => GLenum -> GLsizei -> GLenum -> Ptr () -> GLsizei -> GLint -> m ()
glDrawElementsInstancedBaseVertex = ffienumsizeienumPtrVsizeiintIOV glDrawElementsInstancedBaseVertexFunPtr
glDrawElementsInstancedBaseVertexFunPtr :: FunPtr (GLenum -> GLsizei -> GLenum -> Ptr () -> GLsizei -> GLint -> IO ())
glDrawElementsInstancedBaseVertexFunPtr = unsafePerformIO (getProcAddress "glDrawElementsInstancedBaseVertex")
{-# NOINLINE glDrawElementsInstancedBaseVertexFunPtr #-}
-- | Usage: @'glDrawRangeElements' mode start end count type indices@
--
-- The parameter @mode@ is a @PrimitiveType@, one of: 'Graphics.GL.Internal.Shared.GL_LINES', 'Graphics.GL.Internal.Shared.GL_LINES_ADJACENCY', 'Graphics.GL.Ext.ARB.GeometryShader4.GL_LINES_ADJACENCY_ARB', 'Graphics.GL.Internal.Shared.GL_LINES_ADJACENCY_EXT', 'Graphics.GL.Internal.Shared.GL_LINE_LOOP', 'Graphics.GL.Internal.Shared.GL_LINE_STRIP', 'Graphics.GL.Internal.Shared.GL_LINE_STRIP_ADJACENCY', 'Graphics.GL.Ext.ARB.GeometryShader4.GL_LINE_STRIP_ADJACENCY_ARB', 'Graphics.GL.Internal.Shared.GL_LINE_STRIP_ADJACENCY_EXT', 'Graphics.GL.Internal.Shared.GL_PATCHES', 'Graphics.GL.Ext.EXT.TessellationShader.GL_PATCHES_EXT', 'Graphics.GL.Internal.Shared.GL_POINTS', 'Graphics.GL.Internal.Shared.GL_POLYGON', 'Graphics.GL.Internal.Shared.GL_QUADS', 'Graphics.GL.Ext.EXT.TessellationShader.GL_QUADS_EXT', 'Graphics.GL.Internal.Shared.GL_QUAD_STRIP', 'Graphics.GL.Internal.Shared.GL_TRIANGLES', 'Graphics.GL.Internal.Shared.GL_TRIANGLES_ADJACENCY', 'Graphics.GL.Ext.ARB.GeometryShader4.GL_TRIANGLES_ADJACENCY_ARB', 'Graphics.GL.Internal.Shared.GL_TRIANGLES_ADJACENCY_EXT', 'Graphics.GL.Internal.Shared.GL_TRIANGLE_FAN', 'Graphics.GL.Internal.Shared.GL_TRIANGLE_STRIP', 'Graphics.GL.Internal.Shared.GL_TRIANGLE_STRIP_ADJACENCY', 'Graphics.GL.Ext.ARB.GeometryShader4.GL_TRIANGLE_STRIP_ADJACENCY_ARB', 'Graphics.GL.Internal.Shared.GL_TRIANGLE_STRIP_ADJACENCY_EXT'.
--
-- The parameter @type@ is a @DrawElementsType@.
--
-- The length of @indices@ should be @COMPSIZE(count,type)@.
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glDrawRangeElements.xhtml>
glDrawRangeElements :: MonadIO m => GLenum -> GLuint -> GLuint -> GLsizei -> GLenum -> Ptr () -> m ()
glDrawRangeElements = ffienumuintuintsizeienumPtrVIOV glDrawRangeElementsFunPtr
glDrawRangeElementsFunPtr :: FunPtr (GLenum -> GLuint -> GLuint -> GLsizei -> GLenum -> Ptr () -> IO ())
glDrawRangeElementsFunPtr = unsafePerformIO (getProcAddress "glDrawRangeElements")
{-# NOINLINE glDrawRangeElementsFunPtr #-}
-- | Usage: @'glDrawRangeElementsBaseVertex' mode start end count type indices basevertex@
--
-- The parameter @mode@ is a @PrimitiveType@, one of: 'Graphics.GL.Internal.Shared.GL_LINES', 'Graphics.GL.Internal.Shared.GL_LINES_ADJACENCY', 'Graphics.GL.Ext.ARB.GeometryShader4.GL_LINES_ADJACENCY_ARB', 'Graphics.GL.Internal.Shared.GL_LINES_ADJACENCY_EXT', 'Graphics.GL.Internal.Shared.GL_LINE_LOOP', 'Graphics.GL.Internal.Shared.GL_LINE_STRIP', 'Graphics.GL.Internal.Shared.GL_LINE_STRIP_ADJACENCY', 'Graphics.GL.Ext.ARB.GeometryShader4.GL_LINE_STRIP_ADJACENCY_ARB', 'Graphics.GL.Internal.Shared.GL_LINE_STRIP_ADJACENCY_EXT', 'Graphics.GL.Internal.Shared.GL_PATCHES', 'Graphics.GL.Ext.EXT.TessellationShader.GL_PATCHES_EXT', 'Graphics.GL.Internal.Shared.GL_POINTS', 'Graphics.GL.Internal.Shared.GL_POLYGON', 'Graphics.GL.Internal.Shared.GL_QUADS', 'Graphics.GL.Ext.EXT.TessellationShader.GL_QUADS_EXT', 'Graphics.GL.Internal.Shared.GL_QUAD_STRIP', 'Graphics.GL.Internal.Shared.GL_TRIANGLES', 'Graphics.GL.Internal.Shared.GL_TRIANGLES_ADJACENCY', 'Graphics.GL.Ext.ARB.GeometryShader4.GL_TRIANGLES_ADJACENCY_ARB', 'Graphics.GL.Internal.Shared.GL_TRIANGLES_ADJACENCY_EXT', 'Graphics.GL.Internal.Shared.GL_TRIANGLE_FAN', 'Graphics.GL.Internal.Shared.GL_TRIANGLE_STRIP', 'Graphics.GL.Internal.Shared.GL_TRIANGLE_STRIP_ADJACENCY', 'Graphics.GL.Ext.ARB.GeometryShader4.GL_TRIANGLE_STRIP_ADJACENCY_ARB', 'Graphics.GL.Internal.Shared.GL_TRIANGLE_STRIP_ADJACENCY_EXT'.
--
-- The parameter @type@ is a @DrawElementsType@.
--
-- The length of @indices@ should be @COMPSIZE(count,type)@.
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glDrawRangeElementsBaseVertex.xhtml>
glDrawRangeElementsBaseVertex :: MonadIO m => GLenum -> GLuint -> GLuint -> GLsizei -> GLenum -> Ptr () -> GLint -> m ()
glDrawRangeElementsBaseVertex = ffienumuintuintsizeienumPtrVintIOV glDrawRangeElementsBaseVertexFunPtr
glDrawRangeElementsBaseVertexFunPtr :: FunPtr (GLenum -> GLuint -> GLuint -> GLsizei -> GLenum -> Ptr () -> GLint -> IO ())
glDrawRangeElementsBaseVertexFunPtr = unsafePerformIO (getProcAddress "glDrawRangeElementsBaseVertex")
{-# NOINLINE glDrawRangeElementsBaseVertexFunPtr #-}
-- | Usage: @'glEnable' cap@
--
-- The parameter @cap@ is a @EnableCap@, one of: 'Graphics.GL.Internal.Shared.GL_ALPHA_TEST', 'Graphics.GL.Ext.SGIX.AsyncPixel.GL_ASYNC_DRAW_PIXELS_SGIX', 'Graphics.GL.Ext.SGIX.AsyncHistogram.GL_ASYNC_HISTOGRAM_SGIX', 'Graphics.GL.Ext.SGIX.AsyncPixel.GL_ASYNC_READ_PIXELS_SGIX', 'Graphics.GL.Ext.SGIX.AsyncPixel.GL_ASYNC_TEX_IMAGE_SGIX', 'Graphics.GL.Internal.Shared.GL_AUTO_NORMAL', 'Graphics.GL.Internal.Shared.GL_BLEND', 'Graphics.GL.Ext.SGIX.CalligraphicFragment.GL_CALLIGRAPHIC_FRAGMENT_SGIX', 'Graphics.GL.Internal.Shared.GL_CLIP_PLANE0', 'Graphics.GL.Internal.Shared.GL_CLIP_PLANE1', 'Graphics.GL.Internal.Shared.GL_CLIP_PLANE2', 'Graphics.GL.Internal.Shared.GL_CLIP_PLANE3', 'Graphics.GL.Internal.Shared.GL_CLIP_PLANE4', 'Graphics.GL.Internal.Shared.GL_CLIP_PLANE5', 'Graphics.GL.Internal.Shared.GL_COLOR_ARRAY', 'Graphics.GL.Internal.Shared.GL_COLOR_LOGIC_OP', 'Graphics.GL.Internal.Shared.GL_COLOR_MATERIAL', 'Graphics.GL.Ext.SGI.ColorTable.GL_COLOR_TABLE_SGI', 'Graphics.GL.Ext.EXT.Convolution.GL_CONVOLUTION_1D_EXT', 'Graphics.GL.Ext.EXT.Convolution.GL_CONVOLUTION_2D_EXT', 'Graphics.GL.Internal.Shared.GL_CULL_FACE', 'Graphics.GL.Internal.Shared.GL_DEPTH_TEST', 'Graphics.GL.Internal.Shared.GL_DITHER', 'Graphics.GL.Internal.Shared.GL_EDGE_FLAG_ARRAY', 'Graphics.GL.Internal.Shared.GL_FOG', 'Graphics.GL.Ext.SGIX.FogOffset.GL_FOG_OFFSET_SGIX', 'Graphics.GL.Ext.SGIX.FragmentLighting.GL_FRAGMENT_COLOR_MATERIAL_SGIX', 'Graphics.GL.Ext.SGIX.FragmentLighting.GL_FRAGMENT_LIGHT0_SGIX', 'Graphics.GL.Ext.SGIX.FragmentLighting.GL_FRAGMENT_LIGHT1_SGIX', 'Graphics.GL.Ext.SGIX.FragmentLighting.GL_FRAGMENT_LIGHT2_SGIX', 'Graphics.GL.Ext.SGIX.FragmentLighting.GL_FRAGMENT_LIGHT3_SGIX', 'Graphics.GL.Ext.SGIX.FragmentLighting.GL_FRAGMENT_LIGHT4_SGIX', 'Graphics.GL.Ext.SGIX.FragmentLighting.GL_FRAGMENT_LIGHT5_SGIX', 'Graphics.GL.Ext.SGIX.FragmentLighting.GL_FRAGMENT_LIGHT6_SGIX', 'Graphics.GL.Ext.SGIX.FragmentLighting.GL_FRAGMENT_LIGHT7_SGIX', 'Graphics.GL.Ext.SGIX.FragmentLighting.GL_FRAGMENT_LIGHTING_SGIX', 'Graphics.GL.Ext.SGIX.Framezoom.GL_FRAMEZOOM_SGIX', 'Graphics.GL.Ext.EXT.Histogram.GL_HISTOGRAM_EXT', 'Graphics.GL.Internal.Shared.GL_INDEX_ARRAY', 'Graphics.GL.Internal.Shared.GL_INDEX_LOGIC_OP', 'Graphics.GL.Ext.SGIX.Interlace.GL_INTERLACE_SGIX', 'Graphics.GL.Ext.SGIX.IrInstrument1.GL_IR_INSTRUMENT1_SGIX', 'Graphics.GL.Internal.Shared.GL_LIGHT0', 'Graphics.GL.Internal.Shared.GL_LIGHT1', 'Graphics.GL.Internal.Shared.GL_LIGHT2', 'Graphics.GL.Internal.Shared.GL_LIGHT3', 'Graphics.GL.Internal.Shared.GL_LIGHT4', 'Graphics.GL.Internal.Shared.GL_LIGHT5', 'Graphics.GL.Internal.Shared.GL_LIGHT6', 'Graphics.GL.Internal.Shared.GL_LIGHT7', 'Graphics.GL.Internal.Shared.GL_LIGHTING', 'Graphics.GL.Internal.Shared.GL_LINE_SMOOTH', 'Graphics.GL.Internal.Shared.GL_LINE_STIPPLE', 'Graphics.GL.Internal.Shared.GL_MAP1_COLOR_4', 'Graphics.GL.Internal.Shared.GL_MAP1_INDEX', 'Graphics.GL.Internal.Shared.GL_MAP1_NORMAL', 'Graphics.GL.Internal.Shared.GL_MAP1_TEXTURE_COORD_1', 'Graphics.GL.Internal.Shared.GL_MAP1_TEXTURE_COORD_2', 'Graphics.GL.Internal.Shared.GL_MAP1_TEXTURE_COORD_3', 'Graphics.GL.Internal.Shared.GL_MAP1_TEXTURE_COORD_4', 'Graphics.GL.Internal.Shared.GL_MAP1_VERTEX_3', 'Graphics.GL.Internal.Shared.GL_MAP1_VERTEX_4', 'Graphics.GL.Internal.Shared.GL_MAP2_COLOR_4', 'Graphics.GL.Internal.Shared.GL_MAP2_INDEX', 'Graphics.GL.Internal.Shared.GL_MAP2_NORMAL', 'Graphics.GL.Internal.Shared.GL_MAP2_TEXTURE_COORD_1', 'Graphics.GL.Internal.Shared.GL_MAP2_TEXTURE_COORD_2', 'Graphics.GL.Internal.Shared.GL_MAP2_TEXTURE_COORD_3', 'Graphics.GL.Internal.Shared.GL_MAP2_TEXTURE_COORD_4', 'Graphics.GL.Internal.Shared.GL_MAP2_VERTEX_3', 'Graphics.GL.Internal.Shared.GL_MAP2_VERTEX_4', 'Graphics.GL.Ext.EXT.Histogram.GL_MINMAX_EXT', 'Graphics.GL.Ext.SGIS.Multisample.GL_MULTISAMPLE_SGIS', 'Graphics.GL.Internal.Shared.GL_NORMALIZE', 'Graphics.GL.Internal.Shared.GL_NORMAL_ARRAY', 'Graphics.GL.Ext.SGIS.PixelTexture.GL_PIXEL_TEXTURE_SGIS', 'Graphics.GL.Ext.SGIX.PixelTexture.GL_PIXEL_TEX_GEN_SGIX', 'Graphics.GL.Internal.Shared.GL_POINT_SMOOTH', 'Graphics.GL.Internal.Shared.GL_POLYGON_OFFSET_FILL', 'Graphics.GL.Internal.Shared.GL_POLYGON_OFFSET_LINE', 'Graphics.GL.Internal.Shared.GL_POLYGON_OFFSET_POINT', 'Graphics.GL.Internal.Shared.GL_POLYGON_SMOOTH', 'Graphics.GL.Internal.Shared.GL_POLYGON_STIPPLE', 'Graphics.GL.Ext.SGI.ColorTable.GL_POST_COLOR_MATRIX_COLOR_TABLE_SGI', 'Graphics.GL.Ext.SGI.ColorTable.GL_POST_CONVOLUTION_COLOR_TABLE_SGI', 'Graphics.GL.Ext.SGIX.ReferencePlane.GL_REFERENCE_PLANE_SGIX', 'Graphics.GL.Ext.EXT.RescaleNormal.GL_RESCALE_NORMAL_EXT', 'Graphics.GL.Ext.SGIS.Multisample.GL_SAMPLE_ALPHA_TO_MASK_SGIS', 'Graphics.GL.Ext.SGIS.Multisample.GL_SAMPLE_ALPHA_TO_ONE_SGIS', 'Graphics.GL.Ext.SGIS.Multisample.GL_SAMPLE_MASK_SGIS', 'Graphics.GL.Internal.Shared.GL_SCISSOR_TEST', 'Graphics.GL.Ext.EXT.Convolution.GL_SEPARABLE_2D_EXT', 'Graphics.GL.Ext.EXT.SharedTexturePalette.GL_SHARED_TEXTURE_PALETTE_EXT', 'Graphics.GL.Ext.SGIX.Sprite.GL_SPRITE_SGIX', 'Graphics.GL.Internal.Shared.GL_STENCIL_TEST', 'Graphics.GL.Internal.Shared.GL_TEXTURE_1D', 'Graphics.GL.Internal.Shared.GL_TEXTURE_2D', 'Graphics.GL.Ext.EXT.Texture3D.GL_TEXTURE_3D_EXT', 'Graphics.GL.Ext.SGIS.Texture4D.GL_TEXTURE_4D_SGIS', 'Graphics.GL.Ext.SGI.TextureColorTable.GL_TEXTURE_COLOR_TABLE_SGI', 'Graphics.GL.Internal.Shared.GL_TEXTURE_COORD_ARRAY', 'Graphics.GL.Internal.Shared.GL_TEXTURE_GEN_Q', 'Graphics.GL.Internal.Shared.GL_TEXTURE_GEN_R', 'Graphics.GL.Internal.Shared.GL_TEXTURE_GEN_S', 'Graphics.GL.Internal.Shared.GL_TEXTURE_GEN_T', 'Graphics.GL.Internal.Shared.GL_VERTEX_ARRAY'.
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glEnable.xhtml>
glEnable :: MonadIO m => GLenum -> m ()
glEnable = ffienumIOV glEnableFunPtr
glEnableFunPtr :: FunPtr (GLenum -> IO ())
glEnableFunPtr = unsafePerformIO (getProcAddress "glEnable")
{-# NOINLINE glEnableFunPtr #-}
-- | Usage: @'glEnableVertexAttribArray' index@
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glEnableVertexAttribArray.xhtml>
glEnableVertexAttribArray :: MonadIO m => GLuint -> m ()
glEnableVertexAttribArray = ffiuintIOV glEnableVertexAttribArrayFunPtr
glEnableVertexAttribArrayFunPtr :: FunPtr (GLuint -> IO ())
glEnableVertexAttribArrayFunPtr = unsafePerformIO (getProcAddress "glEnableVertexAttribArray")
{-# NOINLINE glEnableVertexAttribArrayFunPtr #-}
-- | Usage: @'glEnablei' target index@
glEnablei :: MonadIO m => GLenum -> GLuint -> m ()
glEnablei = ffienumuintIOV glEnableiFunPtr
glEnableiFunPtr :: FunPtr (GLenum -> GLuint -> IO ())
glEnableiFunPtr = unsafePerformIO (getProcAddress "glEnablei")
{-# NOINLINE glEnableiFunPtr #-}
-- | Usage: @'glEndConditionalRender'@
glEndConditionalRender :: MonadIO m => m ()
glEndConditionalRender = ffiIOV glEndConditionalRenderFunPtr
glEndConditionalRenderFunPtr :: FunPtr (IO ())
glEndConditionalRenderFunPtr = unsafePerformIO (getProcAddress "glEndConditionalRender")
{-# NOINLINE glEndConditionalRenderFunPtr #-}
-- | Usage: @'glEndQuery' target@
glEndQuery :: MonadIO m => GLenum -> m ()
glEndQuery = ffienumIOV glEndQueryFunPtr
glEndQueryFunPtr :: FunPtr (GLenum -> IO ())
glEndQueryFunPtr = unsafePerformIO (getProcAddress "glEndQuery")
{-# NOINLINE glEndQueryFunPtr #-}
-- | Usage: @'glEndTransformFeedback'@
glEndTransformFeedback :: MonadIO m => m ()
glEndTransformFeedback = ffiIOV glEndTransformFeedbackFunPtr
glEndTransformFeedbackFunPtr :: FunPtr (IO ())
glEndTransformFeedbackFunPtr = unsafePerformIO (getProcAddress "glEndTransformFeedback")
{-# NOINLINE glEndTransformFeedbackFunPtr #-}
-- | Usage: @'glFenceSync' condition flags@
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glFenceSync.xhtml>
glFenceSync :: MonadIO m => GLenum -> GLbitfield -> m GLsync
glFenceSync = ffienumbitfieldIOsync glFenceSyncFunPtr
glFenceSyncFunPtr :: FunPtr (GLenum -> GLbitfield -> IO GLsync)
glFenceSyncFunPtr = unsafePerformIO (getProcAddress "glFenceSync")
{-# NOINLINE glFenceSyncFunPtr #-}
-- | Usage: @'glFinish'@
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glFinish.xhtml>
glFinish :: MonadIO m => m ()
glFinish = ffiIOV glFinishFunPtr
glFinishFunPtr :: FunPtr (IO ())
glFinishFunPtr = unsafePerformIO (getProcAddress "glFinish")
{-# NOINLINE glFinishFunPtr #-}
-- | Usage: @'glFlush'@
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glFlush.xhtml>
glFlush :: MonadIO m => m ()
glFlush = ffiIOV glFlushFunPtr
glFlushFunPtr :: FunPtr (IO ())
glFlushFunPtr = unsafePerformIO (getProcAddress "glFlush")
{-# NOINLINE glFlushFunPtr #-}
-- | Usage: @'glFlushMappedBufferRange' target offset length@
--
-- The parameter @target@ is a @BufferTargetARB@.
--
-- The parameter @offset@ is a @BufferOffset@.
--
-- The parameter @length@ is a @BufferSize@.
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glFlushMappedBufferRange.xhtml>
glFlushMappedBufferRange :: MonadIO m => GLenum -> GLintptr -> GLsizeiptr -> m ()
glFlushMappedBufferRange = ffienumintptrsizeiptrIOV glFlushMappedBufferRangeFunPtr
glFlushMappedBufferRangeFunPtr :: FunPtr (GLenum -> GLintptr -> GLsizeiptr -> IO ())
glFlushMappedBufferRangeFunPtr = unsafePerformIO (getProcAddress "glFlushMappedBufferRange")
{-# NOINLINE glFlushMappedBufferRangeFunPtr #-}
-- | Usage: @'glFramebufferRenderbuffer' target attachment renderbuffertarget renderbuffer@
--
-- The parameter @target@ is a @FramebufferTarget@.
--
-- The parameter @attachment@ is a @FramebufferAttachment@.
--
-- The parameter @renderbuffertarget@ is a @RenderbufferTarget@.
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glFramebufferRenderbuffer.xhtml>
glFramebufferRenderbuffer :: MonadIO m => GLenum -> GLenum -> GLenum -> GLuint -> m ()
glFramebufferRenderbuffer = ffienumenumenumuintIOV glFramebufferRenderbufferFunPtr
glFramebufferRenderbufferFunPtr :: FunPtr (GLenum -> GLenum -> GLenum -> GLuint -> IO ())
glFramebufferRenderbufferFunPtr = unsafePerformIO (getProcAddress "glFramebufferRenderbuffer")
{-# NOINLINE glFramebufferRenderbufferFunPtr #-}
-- | Usage: @'glFramebufferTexture' target attachment texture level@
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glFramebufferTexture.xhtml>
glFramebufferTexture :: MonadIO m => GLenum -> GLenum -> GLuint -> GLint -> m ()
glFramebufferTexture = ffienumenumuintintIOV glFramebufferTextureFunPtr
glFramebufferTextureFunPtr :: FunPtr (GLenum -> GLenum -> GLuint -> GLint -> IO ())
glFramebufferTextureFunPtr = unsafePerformIO (getProcAddress "glFramebufferTexture")
{-# NOINLINE glFramebufferTextureFunPtr #-}
-- | Usage: @'glFramebufferTexture1D' target attachment textarget texture level@
--
-- The parameter @target@ is a @FramebufferTarget@.
--
-- The parameter @attachment@ is a @FramebufferAttachment@.
glFramebufferTexture1D :: MonadIO m => GLenum -> GLenum -> GLenum -> GLuint -> GLint -> m ()
glFramebufferTexture1D = ffienumenumenumuintintIOV glFramebufferTexture1DFunPtr
glFramebufferTexture1DFunPtr :: FunPtr (GLenum -> GLenum -> GLenum -> GLuint -> GLint -> IO ())
glFramebufferTexture1DFunPtr = unsafePerformIO (getProcAddress "glFramebufferTexture1D")
{-# NOINLINE glFramebufferTexture1DFunPtr #-}
-- | Usage: @'glFramebufferTexture2D' target attachment textarget texture level@
--
-- The parameter @target@ is a @FramebufferTarget@.
--
-- The parameter @attachment@ is a @FramebufferAttachment@.
glFramebufferTexture2D :: MonadIO m => GLenum -> GLenum -> GLenum -> GLuint -> GLint -> m ()
glFramebufferTexture2D = ffienumenumenumuintintIOV glFramebufferTexture2DFunPtr
glFramebufferTexture2DFunPtr :: FunPtr (GLenum -> GLenum -> GLenum -> GLuint -> GLint -> IO ())
glFramebufferTexture2DFunPtr = unsafePerformIO (getProcAddress "glFramebufferTexture2D")
{-# NOINLINE glFramebufferTexture2DFunPtr #-}
-- | Usage: @'glFramebufferTexture3D' target attachment textarget texture level zoffset@
--
-- The parameter @target@ is a @FramebufferTarget@.
--
-- The parameter @attachment@ is a @FramebufferAttachment@.
glFramebufferTexture3D :: MonadIO m => GLenum -> GLenum -> GLenum -> GLuint -> GLint -> GLint -> m ()
glFramebufferTexture3D = ffienumenumenumuintintintIOV glFramebufferTexture3DFunPtr
glFramebufferTexture3DFunPtr :: FunPtr (GLenum -> GLenum -> GLenum -> GLuint -> GLint -> GLint -> IO ())
glFramebufferTexture3DFunPtr = unsafePerformIO (getProcAddress "glFramebufferTexture3D")
{-# NOINLINE glFramebufferTexture3DFunPtr #-}
-- | Usage: @'glFramebufferTextureLayer' target attachment texture level layer@
--
-- The parameter @target@ is a @FramebufferTarget@.
--
-- The parameter @attachment@ is a @FramebufferAttachment@.
--
-- The parameter @texture@ is a @Texture@.
--
-- The parameter @level@ is a @CheckedInt32@.
--
-- The parameter @layer@ is a @CheckedInt32@.
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glFramebufferTextureLayer.xhtml>
glFramebufferTextureLayer :: MonadIO m => GLenum -> GLenum -> GLuint -> GLint -> GLint -> m ()
glFramebufferTextureLayer = ffienumenumuintintintIOV glFramebufferTextureLayerFunPtr
glFramebufferTextureLayerFunPtr :: FunPtr (GLenum -> GLenum -> GLuint -> GLint -> GLint -> IO ())
glFramebufferTextureLayerFunPtr = unsafePerformIO (getProcAddress "glFramebufferTextureLayer")
{-# NOINLINE glFramebufferTextureLayerFunPtr #-}
-- | Usage: @'glFrontFace' mode@
--
-- The parameter @mode@ is a @FrontFaceDirection@, one of: 'Graphics.GL.Internal.Shared.GL_CCW', 'Graphics.GL.Internal.Shared.GL_CW'.
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glFrontFace.xhtml>
glFrontFace :: MonadIO m => GLenum -> m ()
glFrontFace = ffienumIOV glFrontFaceFunPtr
glFrontFaceFunPtr :: FunPtr (GLenum -> IO ())
glFrontFaceFunPtr = unsafePerformIO (getProcAddress "glFrontFace")
{-# NOINLINE glFrontFaceFunPtr #-}
-- | Usage: @'glGenBuffers' n buffers@
--
-- The length of @buffers@ should be @n@.
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glGenBuffers.xhtml>
glGenBuffers :: MonadIO m => GLsizei -> Ptr GLuint -> m ()
glGenBuffers = ffisizeiPtruintIOV glGenBuffersFunPtr
glGenBuffersFunPtr :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
glGenBuffersFunPtr = unsafePerformIO (getProcAddress "glGenBuffers")
{-# NOINLINE glGenBuffersFunPtr #-}
-- | Usage: @'glGenFramebuffers' n framebuffers@
--
-- The length of @framebuffers@ should be @n@.
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glGenFramebuffers.xhtml>
glGenFramebuffers :: MonadIO m => GLsizei -> Ptr GLuint -> m ()
glGenFramebuffers = ffisizeiPtruintIOV glGenFramebuffersFunPtr
glGenFramebuffersFunPtr :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
glGenFramebuffersFunPtr = unsafePerformIO (getProcAddress "glGenFramebuffers")
{-# NOINLINE glGenFramebuffersFunPtr #-}
-- | Usage: @'glGenQueries' n ids@
--
-- The length of @ids@ should be @n@.
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glGenQueries.xhtml>
glGenQueries :: MonadIO m => GLsizei -> Ptr GLuint -> m ()
glGenQueries = ffisizeiPtruintIOV glGenQueriesFunPtr
glGenQueriesFunPtr :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
glGenQueriesFunPtr = unsafePerformIO (getProcAddress "glGenQueries")
{-# NOINLINE glGenQueriesFunPtr #-}
-- | Usage: @'glGenRenderbuffers' n renderbuffers@
--
-- The length of @renderbuffers@ should be @n@.
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glGenRenderbuffers.xhtml>
glGenRenderbuffers :: MonadIO m => GLsizei -> Ptr GLuint -> m ()
glGenRenderbuffers = ffisizeiPtruintIOV glGenRenderbuffersFunPtr
glGenRenderbuffersFunPtr :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
glGenRenderbuffersFunPtr = unsafePerformIO (getProcAddress "glGenRenderbuffers")
{-# NOINLINE glGenRenderbuffersFunPtr #-}
-- | Usage: @'glGenTextures' n textures@
--
-- The parameter @textures@ is a @Texture@.
--
-- The length of @textures@ should be @n@.
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glGenTextures.xhtml>
glGenTextures :: MonadIO m => GLsizei -> Ptr GLuint -> m ()
glGenTextures = ffisizeiPtruintIOV glGenTexturesFunPtr
glGenTexturesFunPtr :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
glGenTexturesFunPtr = unsafePerformIO (getProcAddress "glGenTextures")
{-# NOINLINE glGenTexturesFunPtr #-}
-- | Usage: @'glGenVertexArrays' n arrays@
--
-- The length of @arrays@ should be @n@.
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glGenVertexArrays.xhtml>
glGenVertexArrays :: MonadIO m => GLsizei -> Ptr GLuint -> m ()
glGenVertexArrays = ffisizeiPtruintIOV glGenVertexArraysFunPtr
glGenVertexArraysFunPtr :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
glGenVertexArraysFunPtr = unsafePerformIO (getProcAddress "glGenVertexArrays")
{-# NOINLINE glGenVertexArraysFunPtr #-}
-- | Usage: @'glGenerateMipmap' target@
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glGenerateMipmap.xhtml>
glGenerateMipmap :: MonadIO m => GLenum -> m ()
glGenerateMipmap = ffienumIOV glGenerateMipmapFunPtr
glGenerateMipmapFunPtr :: FunPtr (GLenum -> IO ())
glGenerateMipmapFunPtr = unsafePerformIO (getProcAddress "glGenerateMipmap")
{-# NOINLINE glGenerateMipmapFunPtr #-}
-- | Usage: @'glGetActiveAttrib' program index bufSize length size type name@
--
-- The length of @length@ should be @1@.
--
-- The length of @size@ should be @1@.
--
-- The length of @type@ should be @1@.
--
-- The length of @name@ should be @bufSize@.
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glGetActiveAttrib.xhtml>
glGetActiveAttrib :: MonadIO m => GLuint -> GLuint -> GLsizei -> Ptr GLsizei -> Ptr GLint -> Ptr GLenum -> Ptr GLchar -> m ()
glGetActiveAttrib = ffiuintuintsizeiPtrsizeiPtrintPtrenumPtrcharIOV glGetActiveAttribFunPtr
glGetActiveAttribFunPtr :: FunPtr (GLuint -> GLuint -> GLsizei -> Ptr GLsizei -> Ptr GLint -> Ptr GLenum -> Ptr GLchar -> IO ())
glGetActiveAttribFunPtr = unsafePerformIO (getProcAddress "glGetActiveAttrib")
{-# NOINLINE glGetActiveAttribFunPtr #-}
-- | Usage: @'glGetActiveUniform' program index bufSize length size type name@
--
-- The length of @length@ should be @1@.
--
-- The length of @size@ should be @1@.
--
-- The length of @type@ should be @1@.
--
-- The length of @name@ should be @bufSize@.
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glGetActiveUniform.xhtml>
glGetActiveUniform :: MonadIO m => GLuint -> GLuint -> GLsizei -> Ptr GLsizei -> Ptr GLint -> Ptr GLenum -> Ptr GLchar -> m ()
glGetActiveUniform = ffiuintuintsizeiPtrsizeiPtrintPtrenumPtrcharIOV glGetActiveUniformFunPtr
glGetActiveUniformFunPtr :: FunPtr (GLuint -> GLuint -> GLsizei -> Ptr GLsizei -> Ptr GLint -> Ptr GLenum -> Ptr GLchar -> IO ())
glGetActiveUniformFunPtr = unsafePerformIO (getProcAddress "glGetActiveUniform")
{-# NOINLINE glGetActiveUniformFunPtr #-}
-- | Usage: @'glGetActiveUniformBlockName' program uniformBlockIndex bufSize length uniformBlockName@
--
-- The length of @length@ should be @1@.
--
-- The length of @uniformBlockName@ should be @bufSize@.
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glGetActiveUniformBlockName.xhtml>
glGetActiveUniformBlockName :: MonadIO m => GLuint -> GLuint -> GLsizei -> Ptr GLsizei -> Ptr GLchar -> m ()
glGetActiveUniformBlockName = ffiuintuintsizeiPtrsizeiPtrcharIOV glGetActiveUniformBlockNameFunPtr
glGetActiveUniformBlockNameFunPtr :: FunPtr (GLuint -> GLuint -> GLsizei -> Ptr GLsizei -> Ptr GLchar -> IO ())
glGetActiveUniformBlockNameFunPtr = unsafePerformIO (getProcAddress "glGetActiveUniformBlockName")
{-# NOINLINE glGetActiveUniformBlockNameFunPtr #-}
-- | Usage: @'glGetActiveUniformBlockiv' program uniformBlockIndex pname params@
--
-- The length of @params@ should be @COMPSIZE(program,uniformBlockIndex,pname)@.
glGetActiveUniformBlockiv :: MonadIO m => GLuint -> GLuint -> GLenum -> Ptr GLint -> m ()
glGetActiveUniformBlockiv = ffiuintuintenumPtrintIOV glGetActiveUniformBlockivFunPtr
glGetActiveUniformBlockivFunPtr :: FunPtr (GLuint -> GLuint -> GLenum -> Ptr GLint -> IO ())
glGetActiveUniformBlockivFunPtr = unsafePerformIO (getProcAddress "glGetActiveUniformBlockiv")
{-# NOINLINE glGetActiveUniformBlockivFunPtr #-}
-- | Usage: @'glGetActiveUniformName' program uniformIndex bufSize length uniformName@
--
-- The length of @length@ should be @1@.
--
-- The length of @uniformName@ should be @bufSize@.
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glGetActiveUniformName.xhtml>
glGetActiveUniformName :: MonadIO m => GLuint -> GLuint -> GLsizei -> Ptr GLsizei -> Ptr GLchar -> m ()
glGetActiveUniformName = ffiuintuintsizeiPtrsizeiPtrcharIOV glGetActiveUniformNameFunPtr
glGetActiveUniformNameFunPtr :: FunPtr (GLuint -> GLuint -> GLsizei -> Ptr GLsizei -> Ptr GLchar -> IO ())
glGetActiveUniformNameFunPtr = unsafePerformIO (getProcAddress "glGetActiveUniformName")
{-# NOINLINE glGetActiveUniformNameFunPtr #-}
-- | Usage: @'glGetActiveUniformsiv' program uniformCount uniformIndices pname params@
--
-- The length of @uniformIndices@ should be @uniformCount@.
--
-- The length of @params@ should be @COMPSIZE(uniformCount,pname)@.
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glGetActiveUniformsiv.xhtml>
glGetActiveUniformsiv :: MonadIO m => GLuint -> GLsizei -> Ptr GLuint -> GLenum -> Ptr GLint -> m ()
glGetActiveUniformsiv = ffiuintsizeiPtruintenumPtrintIOV glGetActiveUniformsivFunPtr
glGetActiveUniformsivFunPtr :: FunPtr (GLuint -> GLsizei -> Ptr GLuint -> GLenum -> Ptr GLint -> IO ())
glGetActiveUniformsivFunPtr = unsafePerformIO (getProcAddress "glGetActiveUniformsiv")
{-# NOINLINE glGetActiveUniformsivFunPtr #-}
-- | Usage: @'glGetAttachedShaders' program maxCount count shaders@
--
-- The length of @count@ should be @1@.
--
-- The length of @shaders@ should be @maxCount@.
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glGetAttachedShaders.xhtml>
glGetAttachedShaders :: MonadIO m => GLuint -> GLsizei -> Ptr GLsizei -> Ptr GLuint -> m ()
glGetAttachedShaders = ffiuintsizeiPtrsizeiPtruintIOV glGetAttachedShadersFunPtr
glGetAttachedShadersFunPtr :: FunPtr (GLuint -> GLsizei -> Ptr GLsizei -> Ptr GLuint -> IO ())
glGetAttachedShadersFunPtr = unsafePerformIO (getProcAddress "glGetAttachedShaders")
{-# NOINLINE glGetAttachedShadersFunPtr #-}
-- | Usage: @'glGetAttribLocation' program name@
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glGetAttribLocation.xhtml>
glGetAttribLocation :: MonadIO m => GLuint -> Ptr GLchar -> m GLint
glGetAttribLocation = ffiuintPtrcharIOint glGetAttribLocationFunPtr
glGetAttribLocationFunPtr :: FunPtr (GLuint -> Ptr GLchar -> IO GLint)
glGetAttribLocationFunPtr = unsafePerformIO (getProcAddress "glGetAttribLocation")
{-# NOINLINE glGetAttribLocationFunPtr #-}
-- | Usage: @'glGetBooleani_v' target index data@
--
-- The parameter @data@ is a @Boolean@, one of: 'Graphics.GL.Internal.Shared.GL_FALSE', 'Graphics.GL.Internal.Shared.GL_TRUE'.
--
-- The length of @data@ should be @COMPSIZE(target)@.
glGetBooleani_v :: MonadIO m => GLenum -> GLuint -> Ptr GLboolean -> m ()
glGetBooleani_v = ffienumuintPtrbooleanIOV glGetBooleani_vFunPtr
glGetBooleani_vFunPtr :: FunPtr (GLenum -> GLuint -> Ptr GLboolean -> IO ())
glGetBooleani_vFunPtr = unsafePerformIO (getProcAddress "glGetBooleani_v")
{-# NOINLINE glGetBooleani_vFunPtr #-}
-- | Usage: @'glGetBooleanv' pname data@
--
-- The parameter @pname@ is a @GetPName@, one of: 'Graphics.GL.Internal.Shared.GL_ACCUM_ALPHA_BITS', 'Graphics.GL.Internal.Shared.GL_ACCUM_BLUE_BITS', 'Graphics.GL.Internal.Shared.GL_ACCUM_CLEAR_VALUE', 'Graphics.GL.Internal.Shared.GL_ACCUM_GREEN_BITS', 'Graphics.GL.Internal.Shared.GL_ACCUM_RED_BITS', 'Graphics.GL.Internal.Shared.GL_ALIASED_LINE_WIDTH_RANGE', 'Graphics.GL.Internal.Shared.GL_ALIASED_POINT_SIZE_RANGE', 'Graphics.GL.Internal.Shared.GL_ALPHA_BIAS', 'Graphics.GL.Internal.Shared.GL_ALPHA_BITS', 'Graphics.GL.Internal.Shared.GL_ALPHA_SCALE', 'Graphics.GL.Internal.Shared.GL_ALPHA_TEST', 'Graphics.GL.Internal.Shared.GL_ALPHA_TEST_FUNC', 'Graphics.GL.Ext.QCOM.AlphaTest.GL_ALPHA_TEST_FUNC_QCOM', 'Graphics.GL.Ext.QCOM.AlphaTest.GL_ALPHA_TEST_QCOM', 'Graphics.GL.Internal.Shared.GL_ALPHA_TEST_REF', 'Graphics.GL.Ext.QCOM.AlphaTest.GL_ALPHA_TEST_REF_QCOM', 'Graphics.GL.Ext.SGIX.AsyncPixel.GL_ASYNC_DRAW_PIXELS_SGIX', 'Graphics.GL.Ext.SGIX.AsyncHistogram.GL_ASYNC_HISTOGRAM_SGIX', 'Graphics.GL.Ext.SGIX.Async.GL_ASYNC_MARKER_SGIX', 'Graphics.GL.Ext.SGIX.AsyncPixel.GL_ASYNC_READ_PIXELS_SGIX', 'Graphics.GL.Ext.SGIX.AsyncPixel.GL_ASYNC_TEX_IMAGE_SGIX', 'Graphics.GL.Internal.Shared.GL_ATTRIB_STACK_DEPTH', 'Graphics.GL.Internal.Shared.GL_AUTO_NORMAL', 'Graphics.GL.Internal.Shared.GL_AUX_BUFFERS', 'Graphics.GL.Internal.Shared.GL_BLEND', 'Graphics.GL.Ext.EXT.BlendColor.GL_BLEND_COLOR_EXT', 'Graphics.GL.Internal.Shared.GL_BLEND_DST', 'Graphics.GL.Ext.EXT.BlendMinmax.GL_BLEND_EQUATION_EXT', 'Graphics.GL.Internal.Shared.GL_BLEND_SRC', 'Graphics.GL.Internal.Shared.GL_BLUE_BIAS', 'Graphics.GL.Internal.Shared.GL_BLUE_BITS', 'Graphics.GL.Internal.Shared.GL_BLUE_SCALE', 'Graphics.GL.Ext.SGIX.CalligraphicFragment.GL_CALLIGRAPHIC_FRAGMENT_SGIX', 'Graphics.GL.Internal.Shared.GL_CLIENT_ATTRIB_STACK_DEPTH', 'Graphics.GL.Internal.Shared.GL_CLIP_PLANE0', 'Graphics.GL.Internal.Shared.GL_CLIP_PLANE1', 'Graphics.GL.Internal.Shared.GL_CLIP_PLANE2', 'Graphics.GL.Internal.Shared.GL_CLIP_PLANE3', 'Graphics.GL.Internal.Shared.GL_CLIP_PLANE4', 'Graphics.GL.Internal.Shared.GL_CLIP_PLANE5', 'Graphics.GL.Internal.Shared.GL_COLOR_ARRAY', 'Graphics.GL.Ext.EXT.VertexArray.GL_COLOR_ARRAY_COUNT_EXT', 'Graphics.GL.Internal.Shared.GL_COLOR_ARRAY_SIZE', 'Graphics.GL.Internal.Shared.GL_COLOR_ARRAY_STRIDE', 'Graphics.GL.Internal.Shared.GL_COLOR_ARRAY_TYPE', 'Graphics.GL.Internal.Shared.GL_COLOR_CLEAR_VALUE', 'Graphics.GL.Internal.Shared.GL_COLOR_LOGIC_OP', 'Graphics.GL.Internal.Shared.GL_COLOR_MATERIAL', 'Graphics.GL.Internal.Shared.GL_COLOR_MATERIAL_FACE', 'Graphics.GL.Internal.Shared.GL_COLOR_MATERIAL_PARAMETER', 'Graphics.GL.Ext.SGI.ColorMatrix.GL_COLOR_MATRIX_SGI', 'Graphics.GL.Ext.SGI.ColorMatrix.GL_COLOR_MATRIX_STACK_DEPTH_SGI', 'Graphics.GL.Ext.SGI.ColorTable.GL_COLOR_TABLE_SGI', 'Graphics.GL.Internal.Shared.GL_COLOR_WRITEMASK', 'Graphics.GL.Ext.EXT.Convolution.GL_CONVOLUTION_1D_EXT', 'Graphics.GL.Ext.EXT.Convolution.GL_CONVOLUTION_2D_EXT', 'Graphics.GL.Ext.SGIX.ConvolutionAccuracy.GL_CONVOLUTION_HINT_SGIX', 'Graphics.GL.Internal.Shared.GL_CULL_FACE', 'Graphics.GL.Internal.Shared.GL_CULL_FACE_MODE', 'Graphics.GL.Internal.Shared.GL_CURRENT_COLOR', 'Graphics.GL.Internal.Shared.GL_CURRENT_INDEX', 'Graphics.GL.Internal.Shared.GL_CURRENT_NORMAL', 'Graphics.GL.Internal.Shared.GL_CURRENT_RASTER_COLOR', 'Graphics.GL.Internal.Shared.GL_CURRENT_RASTER_DISTANCE', 'Graphics.GL.Internal.Shared.GL_CURRENT_RASTER_INDEX', 'Graphics.GL.Internal.Shared.GL_CURRENT_RASTER_POSITION', 'Graphics.GL.Internal.Shared.GL_CURRENT_RASTER_POSITION_VALID', 'Graphics.GL.Internal.Shared.GL_CURRENT_RASTER_TEXTURE_COORDS', 'Graphics.GL.Internal.Shared.GL_CURRENT_TEXTURE_COORDS', 'Graphics.GL.Ext.SGIX.PolynomialFfd.GL_DEFORMATIONS_MASK_SGIX', 'Graphics.GL.Internal.Shared.GL_DEPTH_BIAS', 'Graphics.GL.Internal.Shared.GL_DEPTH_BITS', 'Graphics.GL.Internal.Shared.GL_DEPTH_CLEAR_VALUE', 'Graphics.GL.Internal.Shared.GL_DEPTH_FUNC', 'Graphics.GL.Internal.Shared.GL_DEPTH_RANGE', 'Graphics.GL.Internal.Shared.GL_DEPTH_SCALE', 'Graphics.GL.Internal.Shared.GL_DEPTH_TEST', 'Graphics.GL.Internal.Shared.GL_DEPTH_WRITEMASK', 'Graphics.GL.Ext.SGIS.DetailTexture.GL_DETAIL_TEXTURE_2D_BINDING_SGIS', 'Graphics.GL.Ext.SGIS.PointParameters.GL_DISTANCE_ATTENUATION_SGIS', 'Graphics.GL.Internal.Shared.GL_DITHER', 'Graphics.GL.Internal.Shared.GL_DOUBLEBUFFER', 'Graphics.GL.Internal.Shared.GL_DRAW_BUFFER', 'Graphics.GL.Ext.EXT.MultiviewDrawBuffers.GL_DRAW_BUFFER_EXT', 'Graphics.GL.Internal.Shared.GL_EDGE_FLAG', 'Graphics.GL.Internal.Shared.GL_EDGE_FLAG_ARRAY', 'Graphics.GL.Ext.EXT.VertexArray.GL_EDGE_FLAG_ARRAY_COUNT_EXT', 'Graphics.GL.Internal.Shared.GL_EDGE_FLAG_ARRAY_STRIDE', 'Graphics.GL.Internal.Shared.GL_FEEDBACK_BUFFER_SIZE', 'Graphics.GL.Internal.Shared.GL_FEEDBACK_BUFFER_TYPE', 'Graphics.GL.Internal.Shared.GL_FOG', 'Graphics.GL.Internal.Shared.GL_FOG_COLOR', 'Graphics.GL.Internal.Shared.GL_FOG_DENSITY', 'Graphics.GL.Internal.Shared.GL_FOG_END', 'Graphics.GL.Ext.SGIS.FogFunction.GL_FOG_FUNC_POINTS_SGIS', 'Graphics.GL.Internal.Shared.GL_FOG_HINT', 'Graphics.GL.Internal.Shared.GL_FOG_INDEX', 'Graphics.GL.Internal.Shared.GL_FOG_MODE', 'Graphics.GL.Ext.SGIX.FogOffset.GL_FOG_OFFSET_SGIX', 'Graphics.GL.Ext.SGIX.FogOffset.GL_FOG_OFFSET_VALUE_SGIX', 'Graphics.GL.Internal.Shared.GL_FOG_START', 'Graphics.GL.Ext.SGIX.FragmentLighting.GL_FRAGMENT_COLOR_MATERIAL_FACE_SGIX', 'Graphics.GL.Ext.SGIX.FragmentLighting.GL_FRAGMENT_COLOR_MATERIAL_PARAMETER_SGIX', 'Graphics.GL.Ext.SGIX.FragmentLighting.GL_FRAGMENT_COLOR_MATERIAL_SGIX', 'Graphics.GL.Ext.SGIX.FragmentLighting.GL_FRAGMENT_LIGHT0_SGIX', 'Graphics.GL.Ext.SGIX.FragmentLighting.GL_FRAGMENT_LIGHTING_SGIX', 'Graphics.GL.Ext.SGIX.FragmentLighting.GL_FRAGMENT_LIGHT_MODEL_AMBIENT_SGIX', 'Graphics.GL.Ext.SGIX.FragmentLighting.GL_FRAGMENT_LIGHT_MODEL_LOCAL_VIEWER_SGIX', 'Graphics.GL.Ext.SGIX.FragmentLighting.GL_FRAGMENT_LIGHT_MODEL_NORMAL_INTERPOLATION_SGIX', 'Graphics.GL.Ext.SGIX.FragmentLighting.GL_FRAGMENT_LIGHT_MODEL_TWO_SIDE_SGIX', 'Graphics.GL.Ext.SGIX.Framezoom.GL_FRAMEZOOM_FACTOR_SGIX', 'Graphics.GL.Ext.SGIX.Framezoom.GL_FRAMEZOOM_SGIX', 'Graphics.GL.Internal.Shared.GL_FRONT_FACE', 'Graphics.GL.Ext.SGIS.GenerateMipmap.GL_GENERATE_MIPMAP_HINT_SGIS', 'Graphics.GL.Internal.Shared.GL_GREEN_BIAS', 'Graphics.GL.Internal.Shared.GL_GREEN_BITS', 'Graphics.GL.Internal.Shared.GL_GREEN_SCALE', 'Graphics.GL.Ext.EXT.Histogram.GL_HISTOGRAM_EXT', 'Graphics.GL.Internal.Shared.GL_INDEX_ARRAY', 'Graphics.GL.Ext.EXT.VertexArray.GL_INDEX_ARRAY_COUNT_EXT', 'Graphics.GL.Internal.Shared.GL_INDEX_ARRAY_STRIDE', 'Graphics.GL.Internal.Shared.GL_INDEX_ARRAY_TYPE', 'Graphics.GL.Internal.Shared.GL_INDEX_BITS', 'Graphics.GL.Internal.Shared.GL_INDEX_CLEAR_VALUE', 'Graphics.GL.Internal.Shared.GL_INDEX_LOGIC_OP', 'Graphics.GL.Internal.Shared.GL_INDEX_MODE', 'Graphics.GL.Internal.Shared.GL_INDEX_OFFSET', 'Graphics.GL.Internal.Shared.GL_INDEX_SHIFT', 'Graphics.GL.Internal.Shared.GL_INDEX_WRITEMASK', 'Graphics.GL.Ext.SGIX.Instruments.GL_INSTRUMENT_MEASUREMENTS_SGIX', 'Graphics.GL.Ext.SGIX.Interlace.GL_INTERLACE_SGIX', 'Graphics.GL.Ext.SGIX.IrInstrument1.GL_IR_INSTRUMENT1_SGIX', 'Graphics.GL.Internal.Shared.GL_LIGHT0', 'Graphics.GL.Internal.Shared.GL_LIGHT1', 'Graphics.GL.Internal.Shared.GL_LIGHT2', 'Graphics.GL.Internal.Shared.GL_LIGHT3', 'Graphics.GL.Internal.Shared.GL_LIGHT4', 'Graphics.GL.Internal.Shared.GL_LIGHT5', 'Graphics.GL.Internal.Shared.GL_LIGHT6', 'Graphics.GL.Internal.Shared.GL_LIGHT7', 'Graphics.GL.Internal.Shared.GL_LIGHTING', 'Graphics.GL.Ext.SGIX.FragmentLighting.GL_LIGHT_ENV_MODE_SGIX', 'Graphics.GL.Internal.Shared.GL_LIGHT_MODEL_AMBIENT', 'Graphics.GL.Internal.Shared.GL_LIGHT_MODEL_COLOR_CONTROL', 'Graphics.GL.Internal.Shared.GL_LIGHT_MODEL_LOCAL_VIEWER', 'Graphics.GL.Internal.Shared.GL_LIGHT_MODEL_TWO_SIDE', 'Graphics.GL.Internal.Shared.GL_LINE_SMOOTH', 'Graphics.GL.Internal.Shared.GL_LINE_SMOOTH_HINT', 'Graphics.GL.Internal.Shared.GL_LINE_STIPPLE', 'Graphics.GL.Internal.Shared.GL_LINE_STIPPLE_PATTERN', 'Graphics.GL.Internal.Shared.GL_LINE_STIPPLE_REPEAT', 'Graphics.GL.Internal.Shared.GL_LINE_WIDTH', 'Graphics.GL.Internal.Shared.GL_LINE_WIDTH_GRANULARITY', 'Graphics.GL.Internal.Shared.GL_LINE_WIDTH_RANGE', 'Graphics.GL.Internal.Shared.GL_LIST_BASE', 'Graphics.GL.Internal.Shared.GL_LIST_INDEX', 'Graphics.GL.Internal.Shared.GL_LIST_MODE', 'Graphics.GL.Internal.Shared.GL_LOGIC_OP', 'Graphics.GL.Internal.Shared.GL_LOGIC_OP_MODE', 'Graphics.GL.Internal.Shared.GL_MAP1_COLOR_4', 'Graphics.GL.Internal.Shared.GL_MAP1_GRID_DOMAIN', 'Graphics.GL.Internal.Shared.GL_MAP1_GRID_SEGMENTS', 'Graphics.GL.Internal.Shared.GL_MAP1_INDEX', 'Graphics.GL.Internal.Shared.GL_MAP1_NORMAL', 'Graphics.GL.Internal.Shared.GL_MAP1_TEXTURE_COORD_1', 'Graphics.GL.Internal.Shared.GL_MAP1_TEXTURE_COORD_2', 'Graphics.GL.Internal.Shared.GL_MAP1_TEXTURE_COORD_3', 'Graphics.GL.Internal.Shared.GL_MAP1_TEXTURE_COORD_4', 'Graphics.GL.Internal.Shared.GL_MAP1_VERTEX_3', 'Graphics.GL.Internal.Shared.GL_MAP1_VERTEX_4', 'Graphics.GL.Internal.Shared.GL_MAP2_COLOR_4', 'Graphics.GL.Internal.Shared.GL_MAP2_GRID_DOMAIN', 'Graphics.GL.Internal.Shared.GL_MAP2_GRID_SEGMENTS', 'Graphics.GL.Internal.Shared.GL_MAP2_INDEX', 'Graphics.GL.Internal.Shared.GL_MAP2_NORMAL', 'Graphics.GL.Internal.Shared.GL_MAP2_TEXTURE_COORD_1', 'Graphics.GL.Internal.Shared.GL_MAP2_TEXTURE_COORD_2', 'Graphics.GL.Internal.Shared.GL_MAP2_TEXTURE_COORD_3', 'Graphics.GL.Internal.Shared.GL_MAP2_TEXTURE_COORD_4', 'Graphics.GL.Internal.Shared.GL_MAP2_VERTEX_3', 'Graphics.GL.Internal.Shared.GL_MAP2_VERTEX_4', 'Graphics.GL.Internal.Shared.GL_MAP_COLOR', 'Graphics.GL.Internal.Shared.GL_MAP_STENCIL', 'Graphics.GL.Internal.Shared.GL_MATRIX_MODE', 'Graphics.GL.Ext.EXT.Texture3D.GL_MAX_3D_TEXTURE_SIZE_EXT', 'Graphics.GL.Ext.SGIS.Texture4D.GL_MAX_4D_TEXTURE_SIZE_SGIS', 'Graphics.GL.Ext.SGIX.FragmentLighting.GL_MAX_ACTIVE_LIGHTS_SGIX', 'Graphics.GL.Ext.SGIX.AsyncPixel.GL_MAX_ASYNC_DRAW_PIXELS_SGIX', 'Graphics.GL.Ext.SGIX.AsyncHistogram.GL_MAX_ASYNC_HISTOGRAM_SGIX', 'Graphics.GL.Ext.SGIX.AsyncPixel.GL_MAX_ASYNC_READ_PIXELS_SGIX', 'Graphics.GL.Ext.SGIX.AsyncPixel.GL_MAX_ASYNC_TEX_IMAGE_SGIX', 'Graphics.GL.Internal.Shared.GL_MAX_ATTRIB_STACK_DEPTH', 'Graphics.GL.Internal.Shared.GL_MAX_CLIENT_ATTRIB_STACK_DEPTH', 'Graphics.GL.Ext.SGIX.Clipmap.GL_MAX_CLIPMAP_DEPTH_SGIX', 'Graphics.GL.Ext.SGIX.Clipmap.GL_MAX_CLIPMAP_VIRTUAL_DEPTH_SGIX', 'Graphics.GL.Internal.Shared.GL_MAX_CLIP_DISTANCES', 'Graphics.GL.Internal.Shared.GL_MAX_CLIP_PLANES', 'Graphics.GL.Ext.SGI.ColorMatrix.GL_MAX_COLOR_MATRIX_STACK_DEPTH_SGI', 'Graphics.GL.Internal.Shared.GL_MAX_EVAL_ORDER', 'Graphics.GL.Ext.SGIS.FogFunction.GL_MAX_FOG_FUNC_POINTS_SGIS', 'Graphics.GL.Ext.SGIX.FragmentLighting.GL_MAX_FRAGMENT_LIGHTS_SGIX', 'Graphics.GL.Ext.SGIX.Framezoom.GL_MAX_FRAMEZOOM_FACTOR_SGIX', 'Graphics.GL.Internal.Shared.GL_MAX_LIGHTS', 'Graphics.GL.Internal.Shared.GL_MAX_LIST_NESTING', 'Graphics.GL.Internal.Shared.GL_MAX_MODELVIEW_STACK_DEPTH', 'Graphics.GL.Internal.Shared.GL_MAX_NAME_STACK_DEPTH', 'Graphics.GL.Internal.Shared.GL_MAX_PIXEL_MAP_TABLE', 'Graphics.GL.Internal.Shared.GL_MAX_PROJECTION_STACK_DEPTH', 'Graphics.GL.Internal.Shared.GL_MAX_TEXTURE_SIZE', 'Graphics.GL.Internal.Shared.GL_MAX_TEXTURE_STACK_DEPTH', 'Graphics.GL.Internal.Shared.GL_MAX_VIEWPORT_DIMS', 'Graphics.GL.Ext.EXT.Histogram.GL_MINMAX_EXT', 'Graphics.GL.Ext.EXT.VertexWeighting.GL_MODELVIEW0_MATRIX_EXT', 'Graphics.GL.Ext.EXT.VertexWeighting.GL_MODELVIEW0_STACK_DEPTH_EXT', 'Graphics.GL.Internal.Shared.GL_MODELVIEW_MATRIX', 'Graphics.GL.Internal.Shared.GL_MODELVIEW_STACK_DEPTH', 'Graphics.GL.Ext.SGIS.Multisample.GL_MULTISAMPLE_SGIS', 'Graphics.GL.Internal.Shared.GL_NAME_STACK_DEPTH', 'Graphics.GL.Internal.Shared.GL_NORMALIZE', 'Graphics.GL.Internal.Shared.GL_NORMAL_ARRAY', 'Graphics.GL.Ext.EXT.VertexArray.GL_NORMAL_ARRAY_COUNT_EXT', 'Graphics.GL.Internal.Shared.GL_NORMAL_ARRAY_STRIDE', 'Graphics.GL.Internal.Shared.GL_NORMAL_ARRAY_TYPE', 'Graphics.GL.Internal.Shared.GL_PACK_ALIGNMENT', 'Graphics.GL.Ext.EXT.Cmyka.GL_PACK_CMYK_HINT_EXT', 'Graphics.GL.Ext.SGIS.Texture4D.GL_PACK_IMAGE_DEPTH_SGIS', 'Graphics.GL.Ext.EXT.Texture3D.GL_PACK_IMAGE_HEIGHT_EXT', 'Graphics.GL.Internal.Shared.GL_PACK_LSB_FIRST', 'Graphics.GL.Ext.SGIX.Resample.GL_PACK_RESAMPLE_SGIX', 'Graphics.GL.Internal.Shared.GL_PACK_ROW_LENGTH', 'Graphics.GL.Ext.EXT.Texture3D.GL_PACK_SKIP_IMAGES_EXT', 'Graphics.GL.Internal.Shared.GL_PACK_SKIP_PIXELS', 'Graphics.GL.Internal.Shared.GL_PACK_SKIP_ROWS', 'Graphics.GL.Ext.SGIS.Texture4D.GL_PACK_SKIP_VOLUMES_SGIS', 'Graphics.GL.Ext.SGIX.Subsample.GL_PACK_SUBSAMPLE_RATE_SGIX', 'Graphics.GL.Internal.Shared.GL_PACK_SWAP_BYTES', 'Graphics.GL.Internal.Shared.GL_PERSPECTIVE_CORRECTION_HINT', 'Graphics.GL.Internal.Shared.GL_PIXEL_MAP_A_TO_A_SIZE', 'Graphics.GL.Internal.Shared.GL_PIXEL_MAP_B_TO_B_SIZE', 'Graphics.GL.Internal.Shared.GL_PIXEL_MAP_G_TO_G_SIZE', 'Graphics.GL.Internal.Shared.GL_PIXEL_MAP_I_TO_A_SIZE', 'Graphics.GL.Internal.Shared.GL_PIXEL_MAP_I_TO_B_SIZE', 'Graphics.GL.Internal.Shared.GL_PIXEL_MAP_I_TO_G_SIZE', 'Graphics.GL.Internal.Shared.GL_PIXEL_MAP_I_TO_I_SIZE', 'Graphics.GL.Internal.Shared.GL_PIXEL_MAP_I_TO_R_SIZE', 'Graphics.GL.Internal.Shared.GL_PIXEL_MAP_R_TO_R_SIZE', 'Graphics.GL.Internal.Shared.GL_PIXEL_MAP_S_TO_S_SIZE', 'Graphics.GL.Ext.SGIS.PixelTexture.GL_PIXEL_TEXTURE_SGIS', 'Graphics.GL.Ext.SGIX.PixelTexture.GL_PIXEL_TEX_GEN_MODE_SGIX', 'Graphics.GL.Ext.SGIX.PixelTexture.GL_PIXEL_TEX_GEN_SGIX', 'Graphics.GL.Ext.SGIX.PixelTiles.GL_PIXEL_TILE_BEST_ALIGNMENT_SGIX', 'Graphics.GL.Ext.SGIX.PixelTiles.GL_PIXEL_TILE_CACHE_INCREMENT_SGIX', 'Graphics.GL.Ext.SGIX.PixelTiles.GL_PIXEL_TILE_CACHE_SIZE_SGIX', 'Graphics.GL.Ext.SGIX.PixelTiles.GL_PIXEL_TILE_GRID_DEPTH_SGIX', 'Graphics.GL.Ext.SGIX.PixelTiles.GL_PIXEL_TILE_GRID_HEIGHT_SGIX', 'Graphics.GL.Ext.SGIX.PixelTiles.GL_PIXEL_TILE_GRID_WIDTH_SGIX', 'Graphics.GL.Ext.SGIX.PixelTiles.GL_PIXEL_TILE_HEIGHT_SGIX', 'Graphics.GL.Ext.SGIX.PixelTiles.GL_PIXEL_TILE_WIDTH_SGIX', 'Graphics.GL.Ext.SGIS.PointParameters.GL_POINT_FADE_THRESHOLD_SIZE_SGIS', 'Graphics.GL.Internal.Shared.GL_POINT_SIZE', 'Graphics.GL.Internal.Shared.GL_POINT_SIZE_GRANULARITY', 'Graphics.GL.Ext.SGIS.PointParameters.GL_POINT_SIZE_MAX_SGIS', 'Graphics.GL.Ext.SGIS.PointParameters.GL_POINT_SIZE_MIN_SGIS', 'Graphics.GL.Internal.Shared.GL_POINT_SIZE_RANGE', 'Graphics.GL.Internal.Shared.GL_POINT_SMOOTH', 'Graphics.GL.Internal.Shared.GL_POINT_SMOOTH_HINT', 'Graphics.GL.Internal.Shared.GL_POLYGON_MODE', 'Graphics.GL.Ext.EXT.PolygonOffset.GL_POLYGON_OFFSET_BIAS_EXT', 'Graphics.GL.Internal.Shared.GL_POLYGON_OFFSET_FACTOR', 'Graphics.GL.Internal.Shared.GL_POLYGON_OFFSET_FILL', 'Graphics.GL.Internal.Shared.GL_POLYGON_OFFSET_LINE', 'Graphics.GL.Internal.Shared.GL_POLYGON_OFFSET_POINT', 'Graphics.GL.Internal.Shared.GL_POLYGON_OFFSET_UNITS', 'Graphics.GL.Internal.Shared.GL_POLYGON_SMOOTH', 'Graphics.GL.Internal.Shared.GL_POLYGON_SMOOTH_HINT', 'Graphics.GL.Internal.Shared.GL_POLYGON_STIPPLE', 'Graphics.GL.Ext.SGI.ColorMatrix.GL_POST_COLOR_MATRIX_ALPHA_BIAS_SGI', 'Graphics.GL.Ext.SGI.ColorMatrix.GL_POST_COLOR_MATRIX_ALPHA_SCALE_SGI', 'Graphics.GL.Ext.SGI.ColorMatrix.GL_POST_COLOR_MATRIX_BLUE_BIAS_SGI', 'Graphics.GL.Ext.SGI.ColorMatrix.GL_POST_COLOR_MATRIX_BLUE_SCALE_SGI', 'Graphics.GL.Ext.SGI.ColorTable.GL_POST_COLOR_MATRIX_COLOR_TABLE_SGI', 'Graphics.GL.Ext.SGI.ColorMatrix.GL_POST_COLOR_MATRIX_GREEN_BIAS_SGI', 'Graphics.GL.Ext.SGI.ColorMatrix.GL_POST_COLOR_MATRIX_GREEN_SCALE_SGI', 'Graphics.GL.Ext.SGI.ColorMatrix.GL_POST_COLOR_MATRIX_RED_BIAS_SGI', 'Graphics.GL.Ext.SGI.ColorMatrix.GL_POST_COLOR_MATRIX_RED_SCALE_SGI', 'Graphics.GL.Ext.EXT.Convolution.GL_POST_CONVOLUTION_ALPHA_BIAS_EXT', 'Graphics.GL.Ext.EXT.Convolution.GL_POST_CONVOLUTION_ALPHA_SCALE_EXT', 'Graphics.GL.Ext.EXT.Convolution.GL_POST_CONVOLUTION_BLUE_BIAS_EXT', 'Graphics.GL.Ext.EXT.Convolution.GL_POST_CONVOLUTION_BLUE_SCALE_EXT', 'Graphics.GL.Ext.SGI.ColorTable.GL_POST_CONVOLUTION_COLOR_TABLE_SGI', 'Graphics.GL.Ext.EXT.Convolution.GL_POST_CONVOLUTION_GREEN_BIAS_EXT', 'Graphics.GL.Ext.EXT.Convolution.GL_POST_CONVOLUTION_GREEN_SCALE_EXT', 'Graphics.GL.Ext.EXT.Convolution.GL_POST_CONVOLUTION_RED_BIAS_EXT', 'Graphics.GL.Ext.EXT.Convolution.GL_POST_CONVOLUTION_RED_SCALE_EXT', 'Graphics.GL.Ext.SGIX.TextureScaleBias.GL_POST_TEXTURE_FILTER_BIAS_RANGE_SGIX', 'Graphics.GL.Ext.SGIX.TextureScaleBias.GL_POST_TEXTURE_FILTER_SCALE_RANGE_SGIX', 'Graphics.GL.Internal.Shared.GL_PROJECTION_MATRIX', 'Graphics.GL.Internal.Shared.GL_PROJECTION_STACK_DEPTH', 'Graphics.GL.Internal.Shared.GL_READ_BUFFER', 'Graphics.GL.Ext.EXT.MultiviewDrawBuffers.GL_READ_BUFFER_EXT', 'Graphics.GL.Ext.NV.ReadBuffer.GL_READ_BUFFER_NV', 'Graphics.GL.Internal.Shared.GL_RED_BIAS', 'Graphics.GL.Internal.Shared.GL_RED_BITS', 'Graphics.GL.Internal.Shared.GL_RED_SCALE', 'Graphics.GL.Ext.SGIX.ReferencePlane.GL_REFERENCE_PLANE_EQUATION_SGIX', 'Graphics.GL.Ext.SGIX.ReferencePlane.GL_REFERENCE_PLANE_SGIX', 'Graphics.GL.Internal.Shared.GL_RENDER_MODE', 'Graphics.GL.Ext.EXT.RescaleNormal.GL_RESCALE_NORMAL_EXT', 'Graphics.GL.Internal.Shared.GL_RGBA_MODE', 'Graphics.GL.Ext.SGIS.Multisample.GL_SAMPLES_SGIS', 'Graphics.GL.Ext.SGIS.Multisample.GL_SAMPLE_ALPHA_TO_MASK_SGIS', 'Graphics.GL.Ext.SGIS.Multisample.GL_SAMPLE_ALPHA_TO_ONE_SGIS', 'Graphics.GL.Ext.SGIS.Multisample.GL_SAMPLE_BUFFERS_SGIS', 'Graphics.GL.Ext.SGIS.Multisample.GL_SAMPLE_MASK_INVERT_SGIS', 'Graphics.GL.Ext.SGIS.Multisample.GL_SAMPLE_MASK_SGIS', 'Graphics.GL.Ext.SGIS.Multisample.GL_SAMPLE_MASK_VALUE_SGIS', 'Graphics.GL.Ext.SGIS.Multisample.GL_SAMPLE_PATTERN_SGIS', 'Graphics.GL.Internal.Shared.GL_SCISSOR_BOX', 'Graphics.GL.Internal.Shared.GL_SCISSOR_TEST', 'Graphics.GL.Internal.Shared.GL_SELECTION_BUFFER_SIZE', 'Graphics.GL.Ext.EXT.Convolution.GL_SEPARABLE_2D_EXT', 'Graphics.GL.Internal.Shared.GL_SHADE_MODEL', 'Graphics.GL.Ext.EXT.SharedTexturePalette.GL_SHARED_TEXTURE_PALETTE_EXT', 'Graphics.GL.Internal.Shared.GL_SMOOTH_LINE_WIDTH_GRANULARITY', 'Graphics.GL.Internal.Shared.GL_SMOOTH_LINE_WIDTH_RANGE', 'Graphics.GL.Internal.Shared.GL_SMOOTH_POINT_SIZE_GRANULARITY', 'Graphics.GL.Internal.Shared.GL_SMOOTH_POINT_SIZE_RANGE', 'Graphics.GL.Ext.SGIX.Sprite.GL_SPRITE_AXIS_SGIX', 'Graphics.GL.Ext.SGIX.Sprite.GL_SPRITE_MODE_SGIX', 'Graphics.GL.Ext.SGIX.Sprite.GL_SPRITE_SGIX', 'Graphics.GL.Ext.SGIX.Sprite.GL_SPRITE_TRANSLATION_SGIX', 'Graphics.GL.Internal.Shared.GL_STENCIL_BITS', 'Graphics.GL.Internal.Shared.GL_STENCIL_CLEAR_VALUE', 'Graphics.GL.Internal.Shared.GL_STENCIL_FAIL', 'Graphics.GL.Internal.Shared.GL_STENCIL_FUNC', 'Graphics.GL.Internal.Shared.GL_STENCIL_PASS_DEPTH_FAIL', 'Graphics.GL.Internal.Shared.GL_STENCIL_PASS_DEPTH_PASS', 'Graphics.GL.Internal.Shared.GL_STENCIL_REF', 'Graphics.GL.Internal.Shared.GL_STENCIL_TEST', 'Graphics.GL.Internal.Shared.GL_STENCIL_VALUE_MASK', 'Graphics.GL.Internal.Shared.GL_STENCIL_WRITEMASK', 'Graphics.GL.Internal.Shared.GL_STEREO', 'Graphics.GL.Internal.Shared.GL_SUBPIXEL_BITS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_1D', 'Graphics.GL.Internal.Shared.GL_TEXTURE_2D', 'Graphics.GL.Ext.EXT.TextureObject.GL_TEXTURE_3D_BINDING_EXT', 'Graphics.GL.Ext.EXT.Texture3D.GL_TEXTURE_3D_EXT', 'Graphics.GL.Ext.SGIS.Texture4D.GL_TEXTURE_4D_BINDING_SGIS', 'Graphics.GL.Ext.SGIS.Texture4D.GL_TEXTURE_4D_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_BINDING_1D', 'Graphics.GL.Internal.Shared.GL_TEXTURE_BINDING_2D', 'Graphics.GL.Internal.Shared.GL_TEXTURE_BINDING_3D', 'Graphics.GL.Ext.SGI.TextureColorTable.GL_TEXTURE_COLOR_TABLE_SGI', 'Graphics.GL.Internal.Shared.GL_TEXTURE_COORD_ARRAY', 'Graphics.GL.Ext.EXT.VertexArray.GL_TEXTURE_COORD_ARRAY_COUNT_EXT', 'Graphics.GL.Internal.Shared.GL_TEXTURE_COORD_ARRAY_SIZE', 'Graphics.GL.Internal.Shared.GL_TEXTURE_COORD_ARRAY_STRIDE', 'Graphics.GL.Internal.Shared.GL_TEXTURE_COORD_ARRAY_TYPE', 'Graphics.GL.Internal.Shared.GL_TEXTURE_GEN_Q', 'Graphics.GL.Internal.Shared.GL_TEXTURE_GEN_R', 'Graphics.GL.Internal.Shared.GL_TEXTURE_GEN_S', 'Graphics.GL.Internal.Shared.GL_TEXTURE_GEN_T', 'Graphics.GL.Internal.Shared.GL_TEXTURE_MATRIX', 'Graphics.GL.Internal.Shared.GL_TEXTURE_STACK_DEPTH', 'Graphics.GL.Internal.Shared.GL_UNPACK_ALIGNMENT', 'Graphics.GL.Ext.EXT.Cmyka.GL_UNPACK_CMYK_HINT_EXT', 'Graphics.GL.Ext.SGIS.Texture4D.GL_UNPACK_IMAGE_DEPTH_SGIS', 'Graphics.GL.Ext.EXT.Texture3D.GL_UNPACK_IMAGE_HEIGHT_EXT', 'Graphics.GL.Internal.Shared.GL_UNPACK_LSB_FIRST', 'Graphics.GL.Ext.SGIX.Resample.GL_UNPACK_RESAMPLE_SGIX', 'Graphics.GL.Internal.Shared.GL_UNPACK_ROW_LENGTH', 'Graphics.GL.Ext.EXT.Texture3D.GL_UNPACK_SKIP_IMAGES_EXT', 'Graphics.GL.Internal.Shared.GL_UNPACK_SKIP_PIXELS', 'Graphics.GL.Internal.Shared.GL_UNPACK_SKIP_ROWS', 'Graphics.GL.Ext.SGIS.Texture4D.GL_UNPACK_SKIP_VOLUMES_SGIS', 'Graphics.GL.Ext.SGIX.Subsample.GL_UNPACK_SUBSAMPLE_RATE_SGIX', 'Graphics.GL.Internal.Shared.GL_UNPACK_SWAP_BYTES', 'Graphics.GL.Internal.Shared.GL_VERTEX_ARRAY', 'Graphics.GL.Ext.EXT.VertexArray.GL_VERTEX_ARRAY_COUNT_EXT', 'Graphics.GL.Internal.Shared.GL_VERTEX_ARRAY_SIZE', 'Graphics.GL.Internal.Shared.GL_VERTEX_ARRAY_STRIDE', 'Graphics.GL.Internal.Shared.GL_VERTEX_ARRAY_TYPE', 'Graphics.GL.Ext.SGIX.VertexPreclip.GL_VERTEX_PRECLIP_HINT_SGIX', 'Graphics.GL.Ext.SGIX.VertexPreclip.GL_VERTEX_PRECLIP_SGIX', 'Graphics.GL.Internal.Shared.GL_VIEWPORT', 'Graphics.GL.Internal.Shared.GL_ZOOM_X', 'Graphics.GL.Internal.Shared.GL_ZOOM_Y'.
--
-- The parameter @data@ is a @Boolean@, one of: 'Graphics.GL.Internal.Shared.GL_FALSE', 'Graphics.GL.Internal.Shared.GL_TRUE'.
--
-- The length of @data@ should be @COMPSIZE(pname)@.
glGetBooleanv :: MonadIO m => GLenum -> Ptr GLboolean -> m ()
glGetBooleanv = ffienumPtrbooleanIOV glGetBooleanvFunPtr
glGetBooleanvFunPtr :: FunPtr (GLenum -> Ptr GLboolean -> IO ())
glGetBooleanvFunPtr = unsafePerformIO (getProcAddress "glGetBooleanv")
{-# NOINLINE glGetBooleanvFunPtr #-}
-- | Usage: @'glGetBufferParameteri64v' target pname params@
--
-- The parameter @target@ is a @BufferTargetARB@.
--
-- The parameter @pname@ is a @BufferPNameARB@.
--
-- The length of @params@ should be @COMPSIZE(pname)@.
glGetBufferParameteri64v :: MonadIO m => GLenum -> GLenum -> Ptr GLint64 -> m ()
glGetBufferParameteri64v = ffienumenumPtrint64IOV glGetBufferParameteri64vFunPtr
glGetBufferParameteri64vFunPtr :: FunPtr (GLenum -> GLenum -> Ptr GLint64 -> IO ())
glGetBufferParameteri64vFunPtr = unsafePerformIO (getProcAddress "glGetBufferParameteri64v")
{-# NOINLINE glGetBufferParameteri64vFunPtr #-}
-- | Usage: @'glGetBufferParameteriv' target pname params@
--
-- The parameter @target@ is a @BufferTargetARB@.
--
-- The parameter @pname@ is a @BufferPNameARB@.
--
-- The length of @params@ should be @COMPSIZE(pname)@.
glGetBufferParameteriv :: MonadIO m => GLenum -> GLenum -> Ptr GLint -> m ()
glGetBufferParameteriv = ffienumenumPtrintIOV glGetBufferParameterivFunPtr
glGetBufferParameterivFunPtr :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
glGetBufferParameterivFunPtr = unsafePerformIO (getProcAddress "glGetBufferParameteriv")
{-# NOINLINE glGetBufferParameterivFunPtr #-}
-- | Usage: @'glGetBufferPointerv' target pname params@
--
-- The parameter @target@ is a @BufferTargetARB@.
--
-- The parameter @pname@ is a @BufferPointerNameARB@.
--
-- The length of @params@ should be @1@.
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glGetBufferPointerv.xhtml>
glGetBufferPointerv :: MonadIO m => GLenum -> GLenum -> Ptr (Ptr ()) -> m ()
glGetBufferPointerv = ffienumenumPtrPtrVIOV glGetBufferPointervFunPtr
glGetBufferPointervFunPtr :: FunPtr (GLenum -> GLenum -> Ptr (Ptr ()) -> IO ())
glGetBufferPointervFunPtr = unsafePerformIO (getProcAddress "glGetBufferPointerv")
{-# NOINLINE glGetBufferPointervFunPtr #-}
-- | Usage: @'glGetBufferSubData' target offset size data@
--
-- The parameter @target@ is a @BufferTargetARB@.
--
-- The parameter @offset@ is a @BufferOffset@.
--
-- The parameter @size@ is a @BufferSize@.
--
-- The length of @data@ should be @size@.
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glGetBufferSubData.xhtml>
glGetBufferSubData :: MonadIO m => GLenum -> GLintptr -> GLsizeiptr -> Ptr () -> m ()
glGetBufferSubData = ffienumintptrsizeiptrPtrVIOV glGetBufferSubDataFunPtr
glGetBufferSubDataFunPtr :: FunPtr (GLenum -> GLintptr -> GLsizeiptr -> Ptr () -> IO ())
glGetBufferSubDataFunPtr = unsafePerformIO (getProcAddress "glGetBufferSubData")
{-# NOINLINE glGetBufferSubDataFunPtr #-}
-- | Usage: @'glGetCompressedTexImage' target level img@
--
-- The parameter @target@ is a @TextureTarget@, one of: 'Graphics.GL.Ext.SGIS.DetailTexture.GL_DETAIL_TEXTURE_2D_SGIS', 'Graphics.GL.Internal.Shared.GL_PROXY_TEXTURE_1D', 'Graphics.GL.Ext.EXT.Texture.GL_PROXY_TEXTURE_1D_EXT', 'Graphics.GL.Internal.Shared.GL_PROXY_TEXTURE_2D', 'Graphics.GL.Ext.EXT.Texture.GL_PROXY_TEXTURE_2D_EXT', 'Graphics.GL.Internal.Shared.GL_PROXY_TEXTURE_3D', 'Graphics.GL.Ext.EXT.Texture3D.GL_PROXY_TEXTURE_3D_EXT', 'Graphics.GL.Ext.SGIS.Texture4D.GL_PROXY_TEXTURE_4D_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_1D', 'Graphics.GL.Internal.Shared.GL_TEXTURE_2D', 'Graphics.GL.Internal.Shared.GL_TEXTURE_3D', 'Graphics.GL.Ext.EXT.Texture3D.GL_TEXTURE_3D_EXT', 'Graphics.GL.Ext.OES.Texture3D.GL_TEXTURE_3D_OES', 'Graphics.GL.Ext.SGIS.Texture4D.GL_TEXTURE_4D_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_BASE_LEVEL', 'Graphics.GL.Ext.SGIS.TextureLod.GL_TEXTURE_BASE_LEVEL_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_MAX_LEVEL', 'Graphics.GL.Ext.SGIS.TextureLod.GL_TEXTURE_MAX_LEVEL_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_MAX_LOD', 'Graphics.GL.Ext.SGIS.TextureLod.GL_TEXTURE_MAX_LOD_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_MIN_LOD', 'Graphics.GL.Ext.SGIS.TextureLod.GL_TEXTURE_MIN_LOD_SGIS'.
--
-- The parameter @level@ is a @CheckedInt32@.
--
-- The parameter @img@ is a @CompressedTextureARB@.
--
-- The length of @img@ should be @COMPSIZE(target,level)@.
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glGetCompressedTexImage.xhtml>
glGetCompressedTexImage :: MonadIO m => GLenum -> GLint -> Ptr () -> m ()
glGetCompressedTexImage = ffienumintPtrVIOV glGetCompressedTexImageFunPtr
glGetCompressedTexImageFunPtr :: FunPtr (GLenum -> GLint -> Ptr () -> IO ())
glGetCompressedTexImageFunPtr = unsafePerformIO (getProcAddress "glGetCompressedTexImage")
{-# NOINLINE glGetCompressedTexImageFunPtr #-}
-- | Usage: @'glGetDoublev' pname data@
--
-- The parameter @pname@ is a @GetPName@, one of: 'Graphics.GL.Internal.Shared.GL_ACCUM_ALPHA_BITS', 'Graphics.GL.Internal.Shared.GL_ACCUM_BLUE_BITS', 'Graphics.GL.Internal.Shared.GL_ACCUM_CLEAR_VALUE', 'Graphics.GL.Internal.Shared.GL_ACCUM_GREEN_BITS', 'Graphics.GL.Internal.Shared.GL_ACCUM_RED_BITS', 'Graphics.GL.Internal.Shared.GL_ALIASED_LINE_WIDTH_RANGE', 'Graphics.GL.Internal.Shared.GL_ALIASED_POINT_SIZE_RANGE', 'Graphics.GL.Internal.Shared.GL_ALPHA_BIAS', 'Graphics.GL.Internal.Shared.GL_ALPHA_BITS', 'Graphics.GL.Internal.Shared.GL_ALPHA_SCALE', 'Graphics.GL.Internal.Shared.GL_ALPHA_TEST', 'Graphics.GL.Internal.Shared.GL_ALPHA_TEST_FUNC', 'Graphics.GL.Ext.QCOM.AlphaTest.GL_ALPHA_TEST_FUNC_QCOM', 'Graphics.GL.Ext.QCOM.AlphaTest.GL_ALPHA_TEST_QCOM', 'Graphics.GL.Internal.Shared.GL_ALPHA_TEST_REF', 'Graphics.GL.Ext.QCOM.AlphaTest.GL_ALPHA_TEST_REF_QCOM', 'Graphics.GL.Ext.SGIX.AsyncPixel.GL_ASYNC_DRAW_PIXELS_SGIX', 'Graphics.GL.Ext.SGIX.AsyncHistogram.GL_ASYNC_HISTOGRAM_SGIX', 'Graphics.GL.Ext.SGIX.Async.GL_ASYNC_MARKER_SGIX', 'Graphics.GL.Ext.SGIX.AsyncPixel.GL_ASYNC_READ_PIXELS_SGIX', 'Graphics.GL.Ext.SGIX.AsyncPixel.GL_ASYNC_TEX_IMAGE_SGIX', 'Graphics.GL.Internal.Shared.GL_ATTRIB_STACK_DEPTH', 'Graphics.GL.Internal.Shared.GL_AUTO_NORMAL', 'Graphics.GL.Internal.Shared.GL_AUX_BUFFERS', 'Graphics.GL.Internal.Shared.GL_BLEND', 'Graphics.GL.Ext.EXT.BlendColor.GL_BLEND_COLOR_EXT', 'Graphics.GL.Internal.Shared.GL_BLEND_DST', 'Graphics.GL.Ext.EXT.BlendMinmax.GL_BLEND_EQUATION_EXT', 'Graphics.GL.Internal.Shared.GL_BLEND_SRC', 'Graphics.GL.Internal.Shared.GL_BLUE_BIAS', 'Graphics.GL.Internal.Shared.GL_BLUE_BITS', 'Graphics.GL.Internal.Shared.GL_BLUE_SCALE', 'Graphics.GL.Ext.SGIX.CalligraphicFragment.GL_CALLIGRAPHIC_FRAGMENT_SGIX', 'Graphics.GL.Internal.Shared.GL_CLIENT_ATTRIB_STACK_DEPTH', 'Graphics.GL.Internal.Shared.GL_CLIP_PLANE0', 'Graphics.GL.Internal.Shared.GL_CLIP_PLANE1', 'Graphics.GL.Internal.Shared.GL_CLIP_PLANE2', 'Graphics.GL.Internal.Shared.GL_CLIP_PLANE3', 'Graphics.GL.Internal.Shared.GL_CLIP_PLANE4', 'Graphics.GL.Internal.Shared.GL_CLIP_PLANE5', 'Graphics.GL.Internal.Shared.GL_COLOR_ARRAY', 'Graphics.GL.Ext.EXT.VertexArray.GL_COLOR_ARRAY_COUNT_EXT', 'Graphics.GL.Internal.Shared.GL_COLOR_ARRAY_SIZE', 'Graphics.GL.Internal.Shared.GL_COLOR_ARRAY_STRIDE', 'Graphics.GL.Internal.Shared.GL_COLOR_ARRAY_TYPE', 'Graphics.GL.Internal.Shared.GL_COLOR_CLEAR_VALUE', 'Graphics.GL.Internal.Shared.GL_COLOR_LOGIC_OP', 'Graphics.GL.Internal.Shared.GL_COLOR_MATERIAL', 'Graphics.GL.Internal.Shared.GL_COLOR_MATERIAL_FACE', 'Graphics.GL.Internal.Shared.GL_COLOR_MATERIAL_PARAMETER', 'Graphics.GL.Ext.SGI.ColorMatrix.GL_COLOR_MATRIX_SGI', 'Graphics.GL.Ext.SGI.ColorMatrix.GL_COLOR_MATRIX_STACK_DEPTH_SGI', 'Graphics.GL.Ext.SGI.ColorTable.GL_COLOR_TABLE_SGI', 'Graphics.GL.Internal.Shared.GL_COLOR_WRITEMASK', 'Graphics.GL.Ext.EXT.Convolution.GL_CONVOLUTION_1D_EXT', 'Graphics.GL.Ext.EXT.Convolution.GL_CONVOLUTION_2D_EXT', 'Graphics.GL.Ext.SGIX.ConvolutionAccuracy.GL_CONVOLUTION_HINT_SGIX', 'Graphics.GL.Internal.Shared.GL_CULL_FACE', 'Graphics.GL.Internal.Shared.GL_CULL_FACE_MODE', 'Graphics.GL.Internal.Shared.GL_CURRENT_COLOR', 'Graphics.GL.Internal.Shared.GL_CURRENT_INDEX', 'Graphics.GL.Internal.Shared.GL_CURRENT_NORMAL', 'Graphics.GL.Internal.Shared.GL_CURRENT_RASTER_COLOR', 'Graphics.GL.Internal.Shared.GL_CURRENT_RASTER_DISTANCE', 'Graphics.GL.Internal.Shared.GL_CURRENT_RASTER_INDEX', 'Graphics.GL.Internal.Shared.GL_CURRENT_RASTER_POSITION', 'Graphics.GL.Internal.Shared.GL_CURRENT_RASTER_POSITION_VALID', 'Graphics.GL.Internal.Shared.GL_CURRENT_RASTER_TEXTURE_COORDS', 'Graphics.GL.Internal.Shared.GL_CURRENT_TEXTURE_COORDS', 'Graphics.GL.Ext.SGIX.PolynomialFfd.GL_DEFORMATIONS_MASK_SGIX', 'Graphics.GL.Internal.Shared.GL_DEPTH_BIAS', 'Graphics.GL.Internal.Shared.GL_DEPTH_BITS', 'Graphics.GL.Internal.Shared.GL_DEPTH_CLEAR_VALUE', 'Graphics.GL.Internal.Shared.GL_DEPTH_FUNC', 'Graphics.GL.Internal.Shared.GL_DEPTH_RANGE', 'Graphics.GL.Internal.Shared.GL_DEPTH_SCALE', 'Graphics.GL.Internal.Shared.GL_DEPTH_TEST', 'Graphics.GL.Internal.Shared.GL_DEPTH_WRITEMASK', 'Graphics.GL.Ext.SGIS.DetailTexture.GL_DETAIL_TEXTURE_2D_BINDING_SGIS', 'Graphics.GL.Ext.SGIS.PointParameters.GL_DISTANCE_ATTENUATION_SGIS', 'Graphics.GL.Internal.Shared.GL_DITHER', 'Graphics.GL.Internal.Shared.GL_DOUBLEBUFFER', 'Graphics.GL.Internal.Shared.GL_DRAW_BUFFER', 'Graphics.GL.Ext.EXT.MultiviewDrawBuffers.GL_DRAW_BUFFER_EXT', 'Graphics.GL.Internal.Shared.GL_EDGE_FLAG', 'Graphics.GL.Internal.Shared.GL_EDGE_FLAG_ARRAY', 'Graphics.GL.Ext.EXT.VertexArray.GL_EDGE_FLAG_ARRAY_COUNT_EXT', 'Graphics.GL.Internal.Shared.GL_EDGE_FLAG_ARRAY_STRIDE', 'Graphics.GL.Internal.Shared.GL_FEEDBACK_BUFFER_SIZE', 'Graphics.GL.Internal.Shared.GL_FEEDBACK_BUFFER_TYPE', 'Graphics.GL.Internal.Shared.GL_FOG', 'Graphics.GL.Internal.Shared.GL_FOG_COLOR', 'Graphics.GL.Internal.Shared.GL_FOG_DENSITY', 'Graphics.GL.Internal.Shared.GL_FOG_END', 'Graphics.GL.Ext.SGIS.FogFunction.GL_FOG_FUNC_POINTS_SGIS', 'Graphics.GL.Internal.Shared.GL_FOG_HINT', 'Graphics.GL.Internal.Shared.GL_FOG_INDEX', 'Graphics.GL.Internal.Shared.GL_FOG_MODE', 'Graphics.GL.Ext.SGIX.FogOffset.GL_FOG_OFFSET_SGIX', 'Graphics.GL.Ext.SGIX.FogOffset.GL_FOG_OFFSET_VALUE_SGIX', 'Graphics.GL.Internal.Shared.GL_FOG_START', 'Graphics.GL.Ext.SGIX.FragmentLighting.GL_FRAGMENT_COLOR_MATERIAL_FACE_SGIX', 'Graphics.GL.Ext.SGIX.FragmentLighting.GL_FRAGMENT_COLOR_MATERIAL_PARAMETER_SGIX', 'Graphics.GL.Ext.SGIX.FragmentLighting.GL_FRAGMENT_COLOR_MATERIAL_SGIX', 'Graphics.GL.Ext.SGIX.FragmentLighting.GL_FRAGMENT_LIGHT0_SGIX', 'Graphics.GL.Ext.SGIX.FragmentLighting.GL_FRAGMENT_LIGHTING_SGIX', 'Graphics.GL.Ext.SGIX.FragmentLighting.GL_FRAGMENT_LIGHT_MODEL_AMBIENT_SGIX', 'Graphics.GL.Ext.SGIX.FragmentLighting.GL_FRAGMENT_LIGHT_MODEL_LOCAL_VIEWER_SGIX', 'Graphics.GL.Ext.SGIX.FragmentLighting.GL_FRAGMENT_LIGHT_MODEL_NORMAL_INTERPOLATION_SGIX', 'Graphics.GL.Ext.SGIX.FragmentLighting.GL_FRAGMENT_LIGHT_MODEL_TWO_SIDE_SGIX', 'Graphics.GL.Ext.SGIX.Framezoom.GL_FRAMEZOOM_FACTOR_SGIX', 'Graphics.GL.Ext.SGIX.Framezoom.GL_FRAMEZOOM_SGIX', 'Graphics.GL.Internal.Shared.GL_FRONT_FACE', 'Graphics.GL.Ext.SGIS.GenerateMipmap.GL_GENERATE_MIPMAP_HINT_SGIS', 'Graphics.GL.Internal.Shared.GL_GREEN_BIAS', 'Graphics.GL.Internal.Shared.GL_GREEN_BITS', 'Graphics.GL.Internal.Shared.GL_GREEN_SCALE', 'Graphics.GL.Ext.EXT.Histogram.GL_HISTOGRAM_EXT', 'Graphics.GL.Internal.Shared.GL_INDEX_ARRAY', 'Graphics.GL.Ext.EXT.VertexArray.GL_INDEX_ARRAY_COUNT_EXT', 'Graphics.GL.Internal.Shared.GL_INDEX_ARRAY_STRIDE', 'Graphics.GL.Internal.Shared.GL_INDEX_ARRAY_TYPE', 'Graphics.GL.Internal.Shared.GL_INDEX_BITS', 'Graphics.GL.Internal.Shared.GL_INDEX_CLEAR_VALUE', 'Graphics.GL.Internal.Shared.GL_INDEX_LOGIC_OP', 'Graphics.GL.Internal.Shared.GL_INDEX_MODE', 'Graphics.GL.Internal.Shared.GL_INDEX_OFFSET', 'Graphics.GL.Internal.Shared.GL_INDEX_SHIFT', 'Graphics.GL.Internal.Shared.GL_INDEX_WRITEMASK', 'Graphics.GL.Ext.SGIX.Instruments.GL_INSTRUMENT_MEASUREMENTS_SGIX', 'Graphics.GL.Ext.SGIX.Interlace.GL_INTERLACE_SGIX', 'Graphics.GL.Ext.SGIX.IrInstrument1.GL_IR_INSTRUMENT1_SGIX', 'Graphics.GL.Internal.Shared.GL_LIGHT0', 'Graphics.GL.Internal.Shared.GL_LIGHT1', 'Graphics.GL.Internal.Shared.GL_LIGHT2', 'Graphics.GL.Internal.Shared.GL_LIGHT3', 'Graphics.GL.Internal.Shared.GL_LIGHT4', 'Graphics.GL.Internal.Shared.GL_LIGHT5', 'Graphics.GL.Internal.Shared.GL_LIGHT6', 'Graphics.GL.Internal.Shared.GL_LIGHT7', 'Graphics.GL.Internal.Shared.GL_LIGHTING', 'Graphics.GL.Ext.SGIX.FragmentLighting.GL_LIGHT_ENV_MODE_SGIX', 'Graphics.GL.Internal.Shared.GL_LIGHT_MODEL_AMBIENT', 'Graphics.GL.Internal.Shared.GL_LIGHT_MODEL_COLOR_CONTROL', 'Graphics.GL.Internal.Shared.GL_LIGHT_MODEL_LOCAL_VIEWER', 'Graphics.GL.Internal.Shared.GL_LIGHT_MODEL_TWO_SIDE', 'Graphics.GL.Internal.Shared.GL_LINE_SMOOTH', 'Graphics.GL.Internal.Shared.GL_LINE_SMOOTH_HINT', 'Graphics.GL.Internal.Shared.GL_LINE_STIPPLE', 'Graphics.GL.Internal.Shared.GL_LINE_STIPPLE_PATTERN', 'Graphics.GL.Internal.Shared.GL_LINE_STIPPLE_REPEAT', 'Graphics.GL.Internal.Shared.GL_LINE_WIDTH', 'Graphics.GL.Internal.Shared.GL_LINE_WIDTH_GRANULARITY', 'Graphics.GL.Internal.Shared.GL_LINE_WIDTH_RANGE', 'Graphics.GL.Internal.Shared.GL_LIST_BASE', 'Graphics.GL.Internal.Shared.GL_LIST_INDEX', 'Graphics.GL.Internal.Shared.GL_LIST_MODE', 'Graphics.GL.Internal.Shared.GL_LOGIC_OP', 'Graphics.GL.Internal.Shared.GL_LOGIC_OP_MODE', 'Graphics.GL.Internal.Shared.GL_MAP1_COLOR_4', 'Graphics.GL.Internal.Shared.GL_MAP1_GRID_DOMAIN', 'Graphics.GL.Internal.Shared.GL_MAP1_GRID_SEGMENTS', 'Graphics.GL.Internal.Shared.GL_MAP1_INDEX', 'Graphics.GL.Internal.Shared.GL_MAP1_NORMAL', 'Graphics.GL.Internal.Shared.GL_MAP1_TEXTURE_COORD_1', 'Graphics.GL.Internal.Shared.GL_MAP1_TEXTURE_COORD_2', 'Graphics.GL.Internal.Shared.GL_MAP1_TEXTURE_COORD_3', 'Graphics.GL.Internal.Shared.GL_MAP1_TEXTURE_COORD_4', 'Graphics.GL.Internal.Shared.GL_MAP1_VERTEX_3', 'Graphics.GL.Internal.Shared.GL_MAP1_VERTEX_4', 'Graphics.GL.Internal.Shared.GL_MAP2_COLOR_4', 'Graphics.GL.Internal.Shared.GL_MAP2_GRID_DOMAIN', 'Graphics.GL.Internal.Shared.GL_MAP2_GRID_SEGMENTS', 'Graphics.GL.Internal.Shared.GL_MAP2_INDEX', 'Graphics.GL.Internal.Shared.GL_MAP2_NORMAL', 'Graphics.GL.Internal.Shared.GL_MAP2_TEXTURE_COORD_1', 'Graphics.GL.Internal.Shared.GL_MAP2_TEXTURE_COORD_2', 'Graphics.GL.Internal.Shared.GL_MAP2_TEXTURE_COORD_3', 'Graphics.GL.Internal.Shared.GL_MAP2_TEXTURE_COORD_4', 'Graphics.GL.Internal.Shared.GL_MAP2_VERTEX_3', 'Graphics.GL.Internal.Shared.GL_MAP2_VERTEX_4', 'Graphics.GL.Internal.Shared.GL_MAP_COLOR', 'Graphics.GL.Internal.Shared.GL_MAP_STENCIL', 'Graphics.GL.Internal.Shared.GL_MATRIX_MODE', 'Graphics.GL.Ext.EXT.Texture3D.GL_MAX_3D_TEXTURE_SIZE_EXT', 'Graphics.GL.Ext.SGIS.Texture4D.GL_MAX_4D_TEXTURE_SIZE_SGIS', 'Graphics.GL.Ext.SGIX.FragmentLighting.GL_MAX_ACTIVE_LIGHTS_SGIX', 'Graphics.GL.Ext.SGIX.AsyncPixel.GL_MAX_ASYNC_DRAW_PIXELS_SGIX', 'Graphics.GL.Ext.SGIX.AsyncHistogram.GL_MAX_ASYNC_HISTOGRAM_SGIX', 'Graphics.GL.Ext.SGIX.AsyncPixel.GL_MAX_ASYNC_READ_PIXELS_SGIX', 'Graphics.GL.Ext.SGIX.AsyncPixel.GL_MAX_ASYNC_TEX_IMAGE_SGIX', 'Graphics.GL.Internal.Shared.GL_MAX_ATTRIB_STACK_DEPTH', 'Graphics.GL.Internal.Shared.GL_MAX_CLIENT_ATTRIB_STACK_DEPTH', 'Graphics.GL.Ext.SGIX.Clipmap.GL_MAX_CLIPMAP_DEPTH_SGIX', 'Graphics.GL.Ext.SGIX.Clipmap.GL_MAX_CLIPMAP_VIRTUAL_DEPTH_SGIX', 'Graphics.GL.Internal.Shared.GL_MAX_CLIP_DISTANCES', 'Graphics.GL.Internal.Shared.GL_MAX_CLIP_PLANES', 'Graphics.GL.Ext.SGI.ColorMatrix.GL_MAX_COLOR_MATRIX_STACK_DEPTH_SGI', 'Graphics.GL.Internal.Shared.GL_MAX_EVAL_ORDER', 'Graphics.GL.Ext.SGIS.FogFunction.GL_MAX_FOG_FUNC_POINTS_SGIS', 'Graphics.GL.Ext.SGIX.FragmentLighting.GL_MAX_FRAGMENT_LIGHTS_SGIX', 'Graphics.GL.Ext.SGIX.Framezoom.GL_MAX_FRAMEZOOM_FACTOR_SGIX', 'Graphics.GL.Internal.Shared.GL_MAX_LIGHTS', 'Graphics.GL.Internal.Shared.GL_MAX_LIST_NESTING', 'Graphics.GL.Internal.Shared.GL_MAX_MODELVIEW_STACK_DEPTH', 'Graphics.GL.Internal.Shared.GL_MAX_NAME_STACK_DEPTH', 'Graphics.GL.Internal.Shared.GL_MAX_PIXEL_MAP_TABLE', 'Graphics.GL.Internal.Shared.GL_MAX_PROJECTION_STACK_DEPTH', 'Graphics.GL.Internal.Shared.GL_MAX_TEXTURE_SIZE', 'Graphics.GL.Internal.Shared.GL_MAX_TEXTURE_STACK_DEPTH', 'Graphics.GL.Internal.Shared.GL_MAX_VIEWPORT_DIMS', 'Graphics.GL.Ext.EXT.Histogram.GL_MINMAX_EXT', 'Graphics.GL.Ext.EXT.VertexWeighting.GL_MODELVIEW0_MATRIX_EXT', 'Graphics.GL.Ext.EXT.VertexWeighting.GL_MODELVIEW0_STACK_DEPTH_EXT', 'Graphics.GL.Internal.Shared.GL_MODELVIEW_MATRIX', 'Graphics.GL.Internal.Shared.GL_MODELVIEW_STACK_DEPTH', 'Graphics.GL.Ext.SGIS.Multisample.GL_MULTISAMPLE_SGIS', 'Graphics.GL.Internal.Shared.GL_NAME_STACK_DEPTH', 'Graphics.GL.Internal.Shared.GL_NORMALIZE', 'Graphics.GL.Internal.Shared.GL_NORMAL_ARRAY', 'Graphics.GL.Ext.EXT.VertexArray.GL_NORMAL_ARRAY_COUNT_EXT', 'Graphics.GL.Internal.Shared.GL_NORMAL_ARRAY_STRIDE', 'Graphics.GL.Internal.Shared.GL_NORMAL_ARRAY_TYPE', 'Graphics.GL.Internal.Shared.GL_PACK_ALIGNMENT', 'Graphics.GL.Ext.EXT.Cmyka.GL_PACK_CMYK_HINT_EXT', 'Graphics.GL.Ext.SGIS.Texture4D.GL_PACK_IMAGE_DEPTH_SGIS', 'Graphics.GL.Ext.EXT.Texture3D.GL_PACK_IMAGE_HEIGHT_EXT', 'Graphics.GL.Internal.Shared.GL_PACK_LSB_FIRST', 'Graphics.GL.Ext.SGIX.Resample.GL_PACK_RESAMPLE_SGIX', 'Graphics.GL.Internal.Shared.GL_PACK_ROW_LENGTH', 'Graphics.GL.Ext.EXT.Texture3D.GL_PACK_SKIP_IMAGES_EXT', 'Graphics.GL.Internal.Shared.GL_PACK_SKIP_PIXELS', 'Graphics.GL.Internal.Shared.GL_PACK_SKIP_ROWS', 'Graphics.GL.Ext.SGIS.Texture4D.GL_PACK_SKIP_VOLUMES_SGIS', 'Graphics.GL.Ext.SGIX.Subsample.GL_PACK_SUBSAMPLE_RATE_SGIX', 'Graphics.GL.Internal.Shared.GL_PACK_SWAP_BYTES', 'Graphics.GL.Internal.Shared.GL_PERSPECTIVE_CORRECTION_HINT', 'Graphics.GL.Internal.Shared.GL_PIXEL_MAP_A_TO_A_SIZE', 'Graphics.GL.Internal.Shared.GL_PIXEL_MAP_B_TO_B_SIZE', 'Graphics.GL.Internal.Shared.GL_PIXEL_MAP_G_TO_G_SIZE', 'Graphics.GL.Internal.Shared.GL_PIXEL_MAP_I_TO_A_SIZE', 'Graphics.GL.Internal.Shared.GL_PIXEL_MAP_I_TO_B_SIZE', 'Graphics.GL.Internal.Shared.GL_PIXEL_MAP_I_TO_G_SIZE', 'Graphics.GL.Internal.Shared.GL_PIXEL_MAP_I_TO_I_SIZE', 'Graphics.GL.Internal.Shared.GL_PIXEL_MAP_I_TO_R_SIZE', 'Graphics.GL.Internal.Shared.GL_PIXEL_MAP_R_TO_R_SIZE', 'Graphics.GL.Internal.Shared.GL_PIXEL_MAP_S_TO_S_SIZE', 'Graphics.GL.Ext.SGIS.PixelTexture.GL_PIXEL_TEXTURE_SGIS', 'Graphics.GL.Ext.SGIX.PixelTexture.GL_PIXEL_TEX_GEN_MODE_SGIX', 'Graphics.GL.Ext.SGIX.PixelTexture.GL_PIXEL_TEX_GEN_SGIX', 'Graphics.GL.Ext.SGIX.PixelTiles.GL_PIXEL_TILE_BEST_ALIGNMENT_SGIX', 'Graphics.GL.Ext.SGIX.PixelTiles.GL_PIXEL_TILE_CACHE_INCREMENT_SGIX', 'Graphics.GL.Ext.SGIX.PixelTiles.GL_PIXEL_TILE_CACHE_SIZE_SGIX', 'Graphics.GL.Ext.SGIX.PixelTiles.GL_PIXEL_TILE_GRID_DEPTH_SGIX', 'Graphics.GL.Ext.SGIX.PixelTiles.GL_PIXEL_TILE_GRID_HEIGHT_SGIX', 'Graphics.GL.Ext.SGIX.PixelTiles.GL_PIXEL_TILE_GRID_WIDTH_SGIX', 'Graphics.GL.Ext.SGIX.PixelTiles.GL_PIXEL_TILE_HEIGHT_SGIX', 'Graphics.GL.Ext.SGIX.PixelTiles.GL_PIXEL_TILE_WIDTH_SGIX', 'Graphics.GL.Ext.SGIS.PointParameters.GL_POINT_FADE_THRESHOLD_SIZE_SGIS', 'Graphics.GL.Internal.Shared.GL_POINT_SIZE', 'Graphics.GL.Internal.Shared.GL_POINT_SIZE_GRANULARITY', 'Graphics.GL.Ext.SGIS.PointParameters.GL_POINT_SIZE_MAX_SGIS', 'Graphics.GL.Ext.SGIS.PointParameters.GL_POINT_SIZE_MIN_SGIS', 'Graphics.GL.Internal.Shared.GL_POINT_SIZE_RANGE', 'Graphics.GL.Internal.Shared.GL_POINT_SMOOTH', 'Graphics.GL.Internal.Shared.GL_POINT_SMOOTH_HINT', 'Graphics.GL.Internal.Shared.GL_POLYGON_MODE', 'Graphics.GL.Ext.EXT.PolygonOffset.GL_POLYGON_OFFSET_BIAS_EXT', 'Graphics.GL.Internal.Shared.GL_POLYGON_OFFSET_FACTOR', 'Graphics.GL.Internal.Shared.GL_POLYGON_OFFSET_FILL', 'Graphics.GL.Internal.Shared.GL_POLYGON_OFFSET_LINE', 'Graphics.GL.Internal.Shared.GL_POLYGON_OFFSET_POINT', 'Graphics.GL.Internal.Shared.GL_POLYGON_OFFSET_UNITS', 'Graphics.GL.Internal.Shared.GL_POLYGON_SMOOTH', 'Graphics.GL.Internal.Shared.GL_POLYGON_SMOOTH_HINT', 'Graphics.GL.Internal.Shared.GL_POLYGON_STIPPLE', 'Graphics.GL.Ext.SGI.ColorMatrix.GL_POST_COLOR_MATRIX_ALPHA_BIAS_SGI', 'Graphics.GL.Ext.SGI.ColorMatrix.GL_POST_COLOR_MATRIX_ALPHA_SCALE_SGI', 'Graphics.GL.Ext.SGI.ColorMatrix.GL_POST_COLOR_MATRIX_BLUE_BIAS_SGI', 'Graphics.GL.Ext.SGI.ColorMatrix.GL_POST_COLOR_MATRIX_BLUE_SCALE_SGI', 'Graphics.GL.Ext.SGI.ColorTable.GL_POST_COLOR_MATRIX_COLOR_TABLE_SGI', 'Graphics.GL.Ext.SGI.ColorMatrix.GL_POST_COLOR_MATRIX_GREEN_BIAS_SGI', 'Graphics.GL.Ext.SGI.ColorMatrix.GL_POST_COLOR_MATRIX_GREEN_SCALE_SGI', 'Graphics.GL.Ext.SGI.ColorMatrix.GL_POST_COLOR_MATRIX_RED_BIAS_SGI', 'Graphics.GL.Ext.SGI.ColorMatrix.GL_POST_COLOR_MATRIX_RED_SCALE_SGI', 'Graphics.GL.Ext.EXT.Convolution.GL_POST_CONVOLUTION_ALPHA_BIAS_EXT', 'Graphics.GL.Ext.EXT.Convolution.GL_POST_CONVOLUTION_ALPHA_SCALE_EXT', 'Graphics.GL.Ext.EXT.Convolution.GL_POST_CONVOLUTION_BLUE_BIAS_EXT', 'Graphics.GL.Ext.EXT.Convolution.GL_POST_CONVOLUTION_BLUE_SCALE_EXT', 'Graphics.GL.Ext.SGI.ColorTable.GL_POST_CONVOLUTION_COLOR_TABLE_SGI', 'Graphics.GL.Ext.EXT.Convolution.GL_POST_CONVOLUTION_GREEN_BIAS_EXT', 'Graphics.GL.Ext.EXT.Convolution.GL_POST_CONVOLUTION_GREEN_SCALE_EXT', 'Graphics.GL.Ext.EXT.Convolution.GL_POST_CONVOLUTION_RED_BIAS_EXT', 'Graphics.GL.Ext.EXT.Convolution.GL_POST_CONVOLUTION_RED_SCALE_EXT', 'Graphics.GL.Ext.SGIX.TextureScaleBias.GL_POST_TEXTURE_FILTER_BIAS_RANGE_SGIX', 'Graphics.GL.Ext.SGIX.TextureScaleBias.GL_POST_TEXTURE_FILTER_SCALE_RANGE_SGIX', 'Graphics.GL.Internal.Shared.GL_PROJECTION_MATRIX', 'Graphics.GL.Internal.Shared.GL_PROJECTION_STACK_DEPTH', 'Graphics.GL.Internal.Shared.GL_READ_BUFFER', 'Graphics.GL.Ext.EXT.MultiviewDrawBuffers.GL_READ_BUFFER_EXT', 'Graphics.GL.Ext.NV.ReadBuffer.GL_READ_BUFFER_NV', 'Graphics.GL.Internal.Shared.GL_RED_BIAS', 'Graphics.GL.Internal.Shared.GL_RED_BITS', 'Graphics.GL.Internal.Shared.GL_RED_SCALE', 'Graphics.GL.Ext.SGIX.ReferencePlane.GL_REFERENCE_PLANE_EQUATION_SGIX', 'Graphics.GL.Ext.SGIX.ReferencePlane.GL_REFERENCE_PLANE_SGIX', 'Graphics.GL.Internal.Shared.GL_RENDER_MODE', 'Graphics.GL.Ext.EXT.RescaleNormal.GL_RESCALE_NORMAL_EXT', 'Graphics.GL.Internal.Shared.GL_RGBA_MODE', 'Graphics.GL.Ext.SGIS.Multisample.GL_SAMPLES_SGIS', 'Graphics.GL.Ext.SGIS.Multisample.GL_SAMPLE_ALPHA_TO_MASK_SGIS', 'Graphics.GL.Ext.SGIS.Multisample.GL_SAMPLE_ALPHA_TO_ONE_SGIS', 'Graphics.GL.Ext.SGIS.Multisample.GL_SAMPLE_BUFFERS_SGIS', 'Graphics.GL.Ext.SGIS.Multisample.GL_SAMPLE_MASK_INVERT_SGIS', 'Graphics.GL.Ext.SGIS.Multisample.GL_SAMPLE_MASK_SGIS', 'Graphics.GL.Ext.SGIS.Multisample.GL_SAMPLE_MASK_VALUE_SGIS', 'Graphics.GL.Ext.SGIS.Multisample.GL_SAMPLE_PATTERN_SGIS', 'Graphics.GL.Internal.Shared.GL_SCISSOR_BOX', 'Graphics.GL.Internal.Shared.GL_SCISSOR_TEST', 'Graphics.GL.Internal.Shared.GL_SELECTION_BUFFER_SIZE', 'Graphics.GL.Ext.EXT.Convolution.GL_SEPARABLE_2D_EXT', 'Graphics.GL.Internal.Shared.GL_SHADE_MODEL', 'Graphics.GL.Ext.EXT.SharedTexturePalette.GL_SHARED_TEXTURE_PALETTE_EXT', 'Graphics.GL.Internal.Shared.GL_SMOOTH_LINE_WIDTH_GRANULARITY', 'Graphics.GL.Internal.Shared.GL_SMOOTH_LINE_WIDTH_RANGE', 'Graphics.GL.Internal.Shared.GL_SMOOTH_POINT_SIZE_GRANULARITY', 'Graphics.GL.Internal.Shared.GL_SMOOTH_POINT_SIZE_RANGE', 'Graphics.GL.Ext.SGIX.Sprite.GL_SPRITE_AXIS_SGIX', 'Graphics.GL.Ext.SGIX.Sprite.GL_SPRITE_MODE_SGIX', 'Graphics.GL.Ext.SGIX.Sprite.GL_SPRITE_SGIX', 'Graphics.GL.Ext.SGIX.Sprite.GL_SPRITE_TRANSLATION_SGIX', 'Graphics.GL.Internal.Shared.GL_STENCIL_BITS', 'Graphics.GL.Internal.Shared.GL_STENCIL_CLEAR_VALUE', 'Graphics.GL.Internal.Shared.GL_STENCIL_FAIL', 'Graphics.GL.Internal.Shared.GL_STENCIL_FUNC', 'Graphics.GL.Internal.Shared.GL_STENCIL_PASS_DEPTH_FAIL', 'Graphics.GL.Internal.Shared.GL_STENCIL_PASS_DEPTH_PASS', 'Graphics.GL.Internal.Shared.GL_STENCIL_REF', 'Graphics.GL.Internal.Shared.GL_STENCIL_TEST', 'Graphics.GL.Internal.Shared.GL_STENCIL_VALUE_MASK', 'Graphics.GL.Internal.Shared.GL_STENCIL_WRITEMASK', 'Graphics.GL.Internal.Shared.GL_STEREO', 'Graphics.GL.Internal.Shared.GL_SUBPIXEL_BITS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_1D', 'Graphics.GL.Internal.Shared.GL_TEXTURE_2D', 'Graphics.GL.Ext.EXT.TextureObject.GL_TEXTURE_3D_BINDING_EXT', 'Graphics.GL.Ext.EXT.Texture3D.GL_TEXTURE_3D_EXT', 'Graphics.GL.Ext.SGIS.Texture4D.GL_TEXTURE_4D_BINDING_SGIS', 'Graphics.GL.Ext.SGIS.Texture4D.GL_TEXTURE_4D_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_BINDING_1D', 'Graphics.GL.Internal.Shared.GL_TEXTURE_BINDING_2D', 'Graphics.GL.Internal.Shared.GL_TEXTURE_BINDING_3D', 'Graphics.GL.Ext.SGI.TextureColorTable.GL_TEXTURE_COLOR_TABLE_SGI', 'Graphics.GL.Internal.Shared.GL_TEXTURE_COORD_ARRAY', 'Graphics.GL.Ext.EXT.VertexArray.GL_TEXTURE_COORD_ARRAY_COUNT_EXT', 'Graphics.GL.Internal.Shared.GL_TEXTURE_COORD_ARRAY_SIZE', 'Graphics.GL.Internal.Shared.GL_TEXTURE_COORD_ARRAY_STRIDE', 'Graphics.GL.Internal.Shared.GL_TEXTURE_COORD_ARRAY_TYPE', 'Graphics.GL.Internal.Shared.GL_TEXTURE_GEN_Q', 'Graphics.GL.Internal.Shared.GL_TEXTURE_GEN_R', 'Graphics.GL.Internal.Shared.GL_TEXTURE_GEN_S', 'Graphics.GL.Internal.Shared.GL_TEXTURE_GEN_T', 'Graphics.GL.Internal.Shared.GL_TEXTURE_MATRIX', 'Graphics.GL.Internal.Shared.GL_TEXTURE_STACK_DEPTH', 'Graphics.GL.Internal.Shared.GL_UNPACK_ALIGNMENT', 'Graphics.GL.Ext.EXT.Cmyka.GL_UNPACK_CMYK_HINT_EXT', 'Graphics.GL.Ext.SGIS.Texture4D.GL_UNPACK_IMAGE_DEPTH_SGIS', 'Graphics.GL.Ext.EXT.Texture3D.GL_UNPACK_IMAGE_HEIGHT_EXT', 'Graphics.GL.Internal.Shared.GL_UNPACK_LSB_FIRST', 'Graphics.GL.Ext.SGIX.Resample.GL_UNPACK_RESAMPLE_SGIX', 'Graphics.GL.Internal.Shared.GL_UNPACK_ROW_LENGTH', 'Graphics.GL.Ext.EXT.Texture3D.GL_UNPACK_SKIP_IMAGES_EXT', 'Graphics.GL.Internal.Shared.GL_UNPACK_SKIP_PIXELS', 'Graphics.GL.Internal.Shared.GL_UNPACK_SKIP_ROWS', 'Graphics.GL.Ext.SGIS.Texture4D.GL_UNPACK_SKIP_VOLUMES_SGIS', 'Graphics.GL.Ext.SGIX.Subsample.GL_UNPACK_SUBSAMPLE_RATE_SGIX', 'Graphics.GL.Internal.Shared.GL_UNPACK_SWAP_BYTES', 'Graphics.GL.Internal.Shared.GL_VERTEX_ARRAY', 'Graphics.GL.Ext.EXT.VertexArray.GL_VERTEX_ARRAY_COUNT_EXT', 'Graphics.GL.Internal.Shared.GL_VERTEX_ARRAY_SIZE', 'Graphics.GL.Internal.Shared.GL_VERTEX_ARRAY_STRIDE', 'Graphics.GL.Internal.Shared.GL_VERTEX_ARRAY_TYPE', 'Graphics.GL.Ext.SGIX.VertexPreclip.GL_VERTEX_PRECLIP_HINT_SGIX', 'Graphics.GL.Ext.SGIX.VertexPreclip.GL_VERTEX_PRECLIP_SGIX', 'Graphics.GL.Internal.Shared.GL_VIEWPORT', 'Graphics.GL.Internal.Shared.GL_ZOOM_X', 'Graphics.GL.Internal.Shared.GL_ZOOM_Y'.
--
-- The length of @data@ should be @COMPSIZE(pname)@.
glGetDoublev :: MonadIO m => GLenum -> Ptr GLdouble -> m ()
glGetDoublev = ffienumPtrdoubleIOV glGetDoublevFunPtr
glGetDoublevFunPtr :: FunPtr (GLenum -> Ptr GLdouble -> IO ())
glGetDoublevFunPtr = unsafePerformIO (getProcAddress "glGetDoublev")
{-# NOINLINE glGetDoublevFunPtr #-}
-- | Usage: @'glGetError'@
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glGetError.xhtml>
glGetError :: MonadIO m => m GLenum
glGetError = ffiIOenum glGetErrorFunPtr
glGetErrorFunPtr :: FunPtr (IO GLenum)
glGetErrorFunPtr = unsafePerformIO (getProcAddress "glGetError")
{-# NOINLINE glGetErrorFunPtr #-}
-- | Usage: @'glGetFloatv' pname data@
--
-- The parameter @pname@ is a @GetPName@, one of: 'Graphics.GL.Internal.Shared.GL_ACCUM_ALPHA_BITS', 'Graphics.GL.Internal.Shared.GL_ACCUM_BLUE_BITS', 'Graphics.GL.Internal.Shared.GL_ACCUM_CLEAR_VALUE', 'Graphics.GL.Internal.Shared.GL_ACCUM_GREEN_BITS', 'Graphics.GL.Internal.Shared.GL_ACCUM_RED_BITS', 'Graphics.GL.Internal.Shared.GL_ALIASED_LINE_WIDTH_RANGE', 'Graphics.GL.Internal.Shared.GL_ALIASED_POINT_SIZE_RANGE', 'Graphics.GL.Internal.Shared.GL_ALPHA_BIAS', 'Graphics.GL.Internal.Shared.GL_ALPHA_BITS', 'Graphics.GL.Internal.Shared.GL_ALPHA_SCALE', 'Graphics.GL.Internal.Shared.GL_ALPHA_TEST', 'Graphics.GL.Internal.Shared.GL_ALPHA_TEST_FUNC', 'Graphics.GL.Ext.QCOM.AlphaTest.GL_ALPHA_TEST_FUNC_QCOM', 'Graphics.GL.Ext.QCOM.AlphaTest.GL_ALPHA_TEST_QCOM', 'Graphics.GL.Internal.Shared.GL_ALPHA_TEST_REF', 'Graphics.GL.Ext.QCOM.AlphaTest.GL_ALPHA_TEST_REF_QCOM', 'Graphics.GL.Ext.SGIX.AsyncPixel.GL_ASYNC_DRAW_PIXELS_SGIX', 'Graphics.GL.Ext.SGIX.AsyncHistogram.GL_ASYNC_HISTOGRAM_SGIX', 'Graphics.GL.Ext.SGIX.Async.GL_ASYNC_MARKER_SGIX', 'Graphics.GL.Ext.SGIX.AsyncPixel.GL_ASYNC_READ_PIXELS_SGIX', 'Graphics.GL.Ext.SGIX.AsyncPixel.GL_ASYNC_TEX_IMAGE_SGIX', 'Graphics.GL.Internal.Shared.GL_ATTRIB_STACK_DEPTH', 'Graphics.GL.Internal.Shared.GL_AUTO_NORMAL', 'Graphics.GL.Internal.Shared.GL_AUX_BUFFERS', 'Graphics.GL.Internal.Shared.GL_BLEND', 'Graphics.GL.Ext.EXT.BlendColor.GL_BLEND_COLOR_EXT', 'Graphics.GL.Internal.Shared.GL_BLEND_DST', 'Graphics.GL.Ext.EXT.BlendMinmax.GL_BLEND_EQUATION_EXT', 'Graphics.GL.Internal.Shared.GL_BLEND_SRC', 'Graphics.GL.Internal.Shared.GL_BLUE_BIAS', 'Graphics.GL.Internal.Shared.GL_BLUE_BITS', 'Graphics.GL.Internal.Shared.GL_BLUE_SCALE', 'Graphics.GL.Ext.SGIX.CalligraphicFragment.GL_CALLIGRAPHIC_FRAGMENT_SGIX', 'Graphics.GL.Internal.Shared.GL_CLIENT_ATTRIB_STACK_DEPTH', 'Graphics.GL.Internal.Shared.GL_CLIP_PLANE0', 'Graphics.GL.Internal.Shared.GL_CLIP_PLANE1', 'Graphics.GL.Internal.Shared.GL_CLIP_PLANE2', 'Graphics.GL.Internal.Shared.GL_CLIP_PLANE3', 'Graphics.GL.Internal.Shared.GL_CLIP_PLANE4', 'Graphics.GL.Internal.Shared.GL_CLIP_PLANE5', 'Graphics.GL.Internal.Shared.GL_COLOR_ARRAY', 'Graphics.GL.Ext.EXT.VertexArray.GL_COLOR_ARRAY_COUNT_EXT', 'Graphics.GL.Internal.Shared.GL_COLOR_ARRAY_SIZE', 'Graphics.GL.Internal.Shared.GL_COLOR_ARRAY_STRIDE', 'Graphics.GL.Internal.Shared.GL_COLOR_ARRAY_TYPE', 'Graphics.GL.Internal.Shared.GL_COLOR_CLEAR_VALUE', 'Graphics.GL.Internal.Shared.GL_COLOR_LOGIC_OP', 'Graphics.GL.Internal.Shared.GL_COLOR_MATERIAL', 'Graphics.GL.Internal.Shared.GL_COLOR_MATERIAL_FACE', 'Graphics.GL.Internal.Shared.GL_COLOR_MATERIAL_PARAMETER', 'Graphics.GL.Ext.SGI.ColorMatrix.GL_COLOR_MATRIX_SGI', 'Graphics.GL.Ext.SGI.ColorMatrix.GL_COLOR_MATRIX_STACK_DEPTH_SGI', 'Graphics.GL.Ext.SGI.ColorTable.GL_COLOR_TABLE_SGI', 'Graphics.GL.Internal.Shared.GL_COLOR_WRITEMASK', 'Graphics.GL.Ext.EXT.Convolution.GL_CONVOLUTION_1D_EXT', 'Graphics.GL.Ext.EXT.Convolution.GL_CONVOLUTION_2D_EXT', 'Graphics.GL.Ext.SGIX.ConvolutionAccuracy.GL_CONVOLUTION_HINT_SGIX', 'Graphics.GL.Internal.Shared.GL_CULL_FACE', 'Graphics.GL.Internal.Shared.GL_CULL_FACE_MODE', 'Graphics.GL.Internal.Shared.GL_CURRENT_COLOR', 'Graphics.GL.Internal.Shared.GL_CURRENT_INDEX', 'Graphics.GL.Internal.Shared.GL_CURRENT_NORMAL', 'Graphics.GL.Internal.Shared.GL_CURRENT_RASTER_COLOR', 'Graphics.GL.Internal.Shared.GL_CURRENT_RASTER_DISTANCE', 'Graphics.GL.Internal.Shared.GL_CURRENT_RASTER_INDEX', 'Graphics.GL.Internal.Shared.GL_CURRENT_RASTER_POSITION', 'Graphics.GL.Internal.Shared.GL_CURRENT_RASTER_POSITION_VALID', 'Graphics.GL.Internal.Shared.GL_CURRENT_RASTER_TEXTURE_COORDS', 'Graphics.GL.Internal.Shared.GL_CURRENT_TEXTURE_COORDS', 'Graphics.GL.Ext.SGIX.PolynomialFfd.GL_DEFORMATIONS_MASK_SGIX', 'Graphics.GL.Internal.Shared.GL_DEPTH_BIAS', 'Graphics.GL.Internal.Shared.GL_DEPTH_BITS', 'Graphics.GL.Internal.Shared.GL_DEPTH_CLEAR_VALUE', 'Graphics.GL.Internal.Shared.GL_DEPTH_FUNC', 'Graphics.GL.Internal.Shared.GL_DEPTH_RANGE', 'Graphics.GL.Internal.Shared.GL_DEPTH_SCALE', 'Graphics.GL.Internal.Shared.GL_DEPTH_TEST', 'Graphics.GL.Internal.Shared.GL_DEPTH_WRITEMASK', 'Graphics.GL.Ext.SGIS.DetailTexture.GL_DETAIL_TEXTURE_2D_BINDING_SGIS', 'Graphics.GL.Ext.SGIS.PointParameters.GL_DISTANCE_ATTENUATION_SGIS', 'Graphics.GL.Internal.Shared.GL_DITHER', 'Graphics.GL.Internal.Shared.GL_DOUBLEBUFFER', 'Graphics.GL.Internal.Shared.GL_DRAW_BUFFER', 'Graphics.GL.Ext.EXT.MultiviewDrawBuffers.GL_DRAW_BUFFER_EXT', 'Graphics.GL.Internal.Shared.GL_EDGE_FLAG', 'Graphics.GL.Internal.Shared.GL_EDGE_FLAG_ARRAY', 'Graphics.GL.Ext.EXT.VertexArray.GL_EDGE_FLAG_ARRAY_COUNT_EXT', 'Graphics.GL.Internal.Shared.GL_EDGE_FLAG_ARRAY_STRIDE', 'Graphics.GL.Internal.Shared.GL_FEEDBACK_BUFFER_SIZE', 'Graphics.GL.Internal.Shared.GL_FEEDBACK_BUFFER_TYPE', 'Graphics.GL.Internal.Shared.GL_FOG', 'Graphics.GL.Internal.Shared.GL_FOG_COLOR', 'Graphics.GL.Internal.Shared.GL_FOG_DENSITY', 'Graphics.GL.Internal.Shared.GL_FOG_END', 'Graphics.GL.Ext.SGIS.FogFunction.GL_FOG_FUNC_POINTS_SGIS', 'Graphics.GL.Internal.Shared.GL_FOG_HINT', 'Graphics.GL.Internal.Shared.GL_FOG_INDEX', 'Graphics.GL.Internal.Shared.GL_FOG_MODE', 'Graphics.GL.Ext.SGIX.FogOffset.GL_FOG_OFFSET_SGIX', 'Graphics.GL.Ext.SGIX.FogOffset.GL_FOG_OFFSET_VALUE_SGIX', 'Graphics.GL.Internal.Shared.GL_FOG_START', 'Graphics.GL.Ext.SGIX.FragmentLighting.GL_FRAGMENT_COLOR_MATERIAL_FACE_SGIX', 'Graphics.GL.Ext.SGIX.FragmentLighting.GL_FRAGMENT_COLOR_MATERIAL_PARAMETER_SGIX', 'Graphics.GL.Ext.SGIX.FragmentLighting.GL_FRAGMENT_COLOR_MATERIAL_SGIX', 'Graphics.GL.Ext.SGIX.FragmentLighting.GL_FRAGMENT_LIGHT0_SGIX', 'Graphics.GL.Ext.SGIX.FragmentLighting.GL_FRAGMENT_LIGHTING_SGIX', 'Graphics.GL.Ext.SGIX.FragmentLighting.GL_FRAGMENT_LIGHT_MODEL_AMBIENT_SGIX', 'Graphics.GL.Ext.SGIX.FragmentLighting.GL_FRAGMENT_LIGHT_MODEL_LOCAL_VIEWER_SGIX', 'Graphics.GL.Ext.SGIX.FragmentLighting.GL_FRAGMENT_LIGHT_MODEL_NORMAL_INTERPOLATION_SGIX', 'Graphics.GL.Ext.SGIX.FragmentLighting.GL_FRAGMENT_LIGHT_MODEL_TWO_SIDE_SGIX', 'Graphics.GL.Ext.SGIX.Framezoom.GL_FRAMEZOOM_FACTOR_SGIX', 'Graphics.GL.Ext.SGIX.Framezoom.GL_FRAMEZOOM_SGIX', 'Graphics.GL.Internal.Shared.GL_FRONT_FACE', 'Graphics.GL.Ext.SGIS.GenerateMipmap.GL_GENERATE_MIPMAP_HINT_SGIS', 'Graphics.GL.Internal.Shared.GL_GREEN_BIAS', 'Graphics.GL.Internal.Shared.GL_GREEN_BITS', 'Graphics.GL.Internal.Shared.GL_GREEN_SCALE', 'Graphics.GL.Ext.EXT.Histogram.GL_HISTOGRAM_EXT', 'Graphics.GL.Internal.Shared.GL_INDEX_ARRAY', 'Graphics.GL.Ext.EXT.VertexArray.GL_INDEX_ARRAY_COUNT_EXT', 'Graphics.GL.Internal.Shared.GL_INDEX_ARRAY_STRIDE', 'Graphics.GL.Internal.Shared.GL_INDEX_ARRAY_TYPE', 'Graphics.GL.Internal.Shared.GL_INDEX_BITS', 'Graphics.GL.Internal.Shared.GL_INDEX_CLEAR_VALUE', 'Graphics.GL.Internal.Shared.GL_INDEX_LOGIC_OP', 'Graphics.GL.Internal.Shared.GL_INDEX_MODE', 'Graphics.GL.Internal.Shared.GL_INDEX_OFFSET', 'Graphics.GL.Internal.Shared.GL_INDEX_SHIFT', 'Graphics.GL.Internal.Shared.GL_INDEX_WRITEMASK', 'Graphics.GL.Ext.SGIX.Instruments.GL_INSTRUMENT_MEASUREMENTS_SGIX', 'Graphics.GL.Ext.SGIX.Interlace.GL_INTERLACE_SGIX', 'Graphics.GL.Ext.SGIX.IrInstrument1.GL_IR_INSTRUMENT1_SGIX', 'Graphics.GL.Internal.Shared.GL_LIGHT0', 'Graphics.GL.Internal.Shared.GL_LIGHT1', 'Graphics.GL.Internal.Shared.GL_LIGHT2', 'Graphics.GL.Internal.Shared.GL_LIGHT3', 'Graphics.GL.Internal.Shared.GL_LIGHT4', 'Graphics.GL.Internal.Shared.GL_LIGHT5', 'Graphics.GL.Internal.Shared.GL_LIGHT6', 'Graphics.GL.Internal.Shared.GL_LIGHT7', 'Graphics.GL.Internal.Shared.GL_LIGHTING', 'Graphics.GL.Ext.SGIX.FragmentLighting.GL_LIGHT_ENV_MODE_SGIX', 'Graphics.GL.Internal.Shared.GL_LIGHT_MODEL_AMBIENT', 'Graphics.GL.Internal.Shared.GL_LIGHT_MODEL_COLOR_CONTROL', 'Graphics.GL.Internal.Shared.GL_LIGHT_MODEL_LOCAL_VIEWER', 'Graphics.GL.Internal.Shared.GL_LIGHT_MODEL_TWO_SIDE', 'Graphics.GL.Internal.Shared.GL_LINE_SMOOTH', 'Graphics.GL.Internal.Shared.GL_LINE_SMOOTH_HINT', 'Graphics.GL.Internal.Shared.GL_LINE_STIPPLE', 'Graphics.GL.Internal.Shared.GL_LINE_STIPPLE_PATTERN', 'Graphics.GL.Internal.Shared.GL_LINE_STIPPLE_REPEAT', 'Graphics.GL.Internal.Shared.GL_LINE_WIDTH', 'Graphics.GL.Internal.Shared.GL_LINE_WIDTH_GRANULARITY', 'Graphics.GL.Internal.Shared.GL_LINE_WIDTH_RANGE', 'Graphics.GL.Internal.Shared.GL_LIST_BASE', 'Graphics.GL.Internal.Shared.GL_LIST_INDEX', 'Graphics.GL.Internal.Shared.GL_LIST_MODE', 'Graphics.GL.Internal.Shared.GL_LOGIC_OP', 'Graphics.GL.Internal.Shared.GL_LOGIC_OP_MODE', 'Graphics.GL.Internal.Shared.GL_MAP1_COLOR_4', 'Graphics.GL.Internal.Shared.GL_MAP1_GRID_DOMAIN', 'Graphics.GL.Internal.Shared.GL_MAP1_GRID_SEGMENTS', 'Graphics.GL.Internal.Shared.GL_MAP1_INDEX', 'Graphics.GL.Internal.Shared.GL_MAP1_NORMAL', 'Graphics.GL.Internal.Shared.GL_MAP1_TEXTURE_COORD_1', 'Graphics.GL.Internal.Shared.GL_MAP1_TEXTURE_COORD_2', 'Graphics.GL.Internal.Shared.GL_MAP1_TEXTURE_COORD_3', 'Graphics.GL.Internal.Shared.GL_MAP1_TEXTURE_COORD_4', 'Graphics.GL.Internal.Shared.GL_MAP1_VERTEX_3', 'Graphics.GL.Internal.Shared.GL_MAP1_VERTEX_4', 'Graphics.GL.Internal.Shared.GL_MAP2_COLOR_4', 'Graphics.GL.Internal.Shared.GL_MAP2_GRID_DOMAIN', 'Graphics.GL.Internal.Shared.GL_MAP2_GRID_SEGMENTS', 'Graphics.GL.Internal.Shared.GL_MAP2_INDEX', 'Graphics.GL.Internal.Shared.GL_MAP2_NORMAL', 'Graphics.GL.Internal.Shared.GL_MAP2_TEXTURE_COORD_1', 'Graphics.GL.Internal.Shared.GL_MAP2_TEXTURE_COORD_2', 'Graphics.GL.Internal.Shared.GL_MAP2_TEXTURE_COORD_3', 'Graphics.GL.Internal.Shared.GL_MAP2_TEXTURE_COORD_4', 'Graphics.GL.Internal.Shared.GL_MAP2_VERTEX_3', 'Graphics.GL.Internal.Shared.GL_MAP2_VERTEX_4', 'Graphics.GL.Internal.Shared.GL_MAP_COLOR', 'Graphics.GL.Internal.Shared.GL_MAP_STENCIL', 'Graphics.GL.Internal.Shared.GL_MATRIX_MODE', 'Graphics.GL.Ext.EXT.Texture3D.GL_MAX_3D_TEXTURE_SIZE_EXT', 'Graphics.GL.Ext.SGIS.Texture4D.GL_MAX_4D_TEXTURE_SIZE_SGIS', 'Graphics.GL.Ext.SGIX.FragmentLighting.GL_MAX_ACTIVE_LIGHTS_SGIX', 'Graphics.GL.Ext.SGIX.AsyncPixel.GL_MAX_ASYNC_DRAW_PIXELS_SGIX', 'Graphics.GL.Ext.SGIX.AsyncHistogram.GL_MAX_ASYNC_HISTOGRAM_SGIX', 'Graphics.GL.Ext.SGIX.AsyncPixel.GL_MAX_ASYNC_READ_PIXELS_SGIX', 'Graphics.GL.Ext.SGIX.AsyncPixel.GL_MAX_ASYNC_TEX_IMAGE_SGIX', 'Graphics.GL.Internal.Shared.GL_MAX_ATTRIB_STACK_DEPTH', 'Graphics.GL.Internal.Shared.GL_MAX_CLIENT_ATTRIB_STACK_DEPTH', 'Graphics.GL.Ext.SGIX.Clipmap.GL_MAX_CLIPMAP_DEPTH_SGIX', 'Graphics.GL.Ext.SGIX.Clipmap.GL_MAX_CLIPMAP_VIRTUAL_DEPTH_SGIX', 'Graphics.GL.Internal.Shared.GL_MAX_CLIP_DISTANCES', 'Graphics.GL.Internal.Shared.GL_MAX_CLIP_PLANES', 'Graphics.GL.Ext.SGI.ColorMatrix.GL_MAX_COLOR_MATRIX_STACK_DEPTH_SGI', 'Graphics.GL.Internal.Shared.GL_MAX_EVAL_ORDER', 'Graphics.GL.Ext.SGIS.FogFunction.GL_MAX_FOG_FUNC_POINTS_SGIS', 'Graphics.GL.Ext.SGIX.FragmentLighting.GL_MAX_FRAGMENT_LIGHTS_SGIX', 'Graphics.GL.Ext.SGIX.Framezoom.GL_MAX_FRAMEZOOM_FACTOR_SGIX', 'Graphics.GL.Internal.Shared.GL_MAX_LIGHTS', 'Graphics.GL.Internal.Shared.GL_MAX_LIST_NESTING', 'Graphics.GL.Internal.Shared.GL_MAX_MODELVIEW_STACK_DEPTH', 'Graphics.GL.Internal.Shared.GL_MAX_NAME_STACK_DEPTH', 'Graphics.GL.Internal.Shared.GL_MAX_PIXEL_MAP_TABLE', 'Graphics.GL.Internal.Shared.GL_MAX_PROJECTION_STACK_DEPTH', 'Graphics.GL.Internal.Shared.GL_MAX_TEXTURE_SIZE', 'Graphics.GL.Internal.Shared.GL_MAX_TEXTURE_STACK_DEPTH', 'Graphics.GL.Internal.Shared.GL_MAX_VIEWPORT_DIMS', 'Graphics.GL.Ext.EXT.Histogram.GL_MINMAX_EXT', 'Graphics.GL.Ext.EXT.VertexWeighting.GL_MODELVIEW0_MATRIX_EXT', 'Graphics.GL.Ext.EXT.VertexWeighting.GL_MODELVIEW0_STACK_DEPTH_EXT', 'Graphics.GL.Internal.Shared.GL_MODELVIEW_MATRIX', 'Graphics.GL.Internal.Shared.GL_MODELVIEW_STACK_DEPTH', 'Graphics.GL.Ext.SGIS.Multisample.GL_MULTISAMPLE_SGIS', 'Graphics.GL.Internal.Shared.GL_NAME_STACK_DEPTH', 'Graphics.GL.Internal.Shared.GL_NORMALIZE', 'Graphics.GL.Internal.Shared.GL_NORMAL_ARRAY', 'Graphics.GL.Ext.EXT.VertexArray.GL_NORMAL_ARRAY_COUNT_EXT', 'Graphics.GL.Internal.Shared.GL_NORMAL_ARRAY_STRIDE', 'Graphics.GL.Internal.Shared.GL_NORMAL_ARRAY_TYPE', 'Graphics.GL.Internal.Shared.GL_PACK_ALIGNMENT', 'Graphics.GL.Ext.EXT.Cmyka.GL_PACK_CMYK_HINT_EXT', 'Graphics.GL.Ext.SGIS.Texture4D.GL_PACK_IMAGE_DEPTH_SGIS', 'Graphics.GL.Ext.EXT.Texture3D.GL_PACK_IMAGE_HEIGHT_EXT', 'Graphics.GL.Internal.Shared.GL_PACK_LSB_FIRST', 'Graphics.GL.Ext.SGIX.Resample.GL_PACK_RESAMPLE_SGIX', 'Graphics.GL.Internal.Shared.GL_PACK_ROW_LENGTH', 'Graphics.GL.Ext.EXT.Texture3D.GL_PACK_SKIP_IMAGES_EXT', 'Graphics.GL.Internal.Shared.GL_PACK_SKIP_PIXELS', 'Graphics.GL.Internal.Shared.GL_PACK_SKIP_ROWS', 'Graphics.GL.Ext.SGIS.Texture4D.GL_PACK_SKIP_VOLUMES_SGIS', 'Graphics.GL.Ext.SGIX.Subsample.GL_PACK_SUBSAMPLE_RATE_SGIX', 'Graphics.GL.Internal.Shared.GL_PACK_SWAP_BYTES', 'Graphics.GL.Internal.Shared.GL_PERSPECTIVE_CORRECTION_HINT', 'Graphics.GL.Internal.Shared.GL_PIXEL_MAP_A_TO_A_SIZE', 'Graphics.GL.Internal.Shared.GL_PIXEL_MAP_B_TO_B_SIZE', 'Graphics.GL.Internal.Shared.GL_PIXEL_MAP_G_TO_G_SIZE', 'Graphics.GL.Internal.Shared.GL_PIXEL_MAP_I_TO_A_SIZE', 'Graphics.GL.Internal.Shared.GL_PIXEL_MAP_I_TO_B_SIZE', 'Graphics.GL.Internal.Shared.GL_PIXEL_MAP_I_TO_G_SIZE', 'Graphics.GL.Internal.Shared.GL_PIXEL_MAP_I_TO_I_SIZE', 'Graphics.GL.Internal.Shared.GL_PIXEL_MAP_I_TO_R_SIZE', 'Graphics.GL.Internal.Shared.GL_PIXEL_MAP_R_TO_R_SIZE', 'Graphics.GL.Internal.Shared.GL_PIXEL_MAP_S_TO_S_SIZE', 'Graphics.GL.Ext.SGIS.PixelTexture.GL_PIXEL_TEXTURE_SGIS', 'Graphics.GL.Ext.SGIX.PixelTexture.GL_PIXEL_TEX_GEN_MODE_SGIX', 'Graphics.GL.Ext.SGIX.PixelTexture.GL_PIXEL_TEX_GEN_SGIX', 'Graphics.GL.Ext.SGIX.PixelTiles.GL_PIXEL_TILE_BEST_ALIGNMENT_SGIX', 'Graphics.GL.Ext.SGIX.PixelTiles.GL_PIXEL_TILE_CACHE_INCREMENT_SGIX', 'Graphics.GL.Ext.SGIX.PixelTiles.GL_PIXEL_TILE_CACHE_SIZE_SGIX', 'Graphics.GL.Ext.SGIX.PixelTiles.GL_PIXEL_TILE_GRID_DEPTH_SGIX', 'Graphics.GL.Ext.SGIX.PixelTiles.GL_PIXEL_TILE_GRID_HEIGHT_SGIX', 'Graphics.GL.Ext.SGIX.PixelTiles.GL_PIXEL_TILE_GRID_WIDTH_SGIX', 'Graphics.GL.Ext.SGIX.PixelTiles.GL_PIXEL_TILE_HEIGHT_SGIX', 'Graphics.GL.Ext.SGIX.PixelTiles.GL_PIXEL_TILE_WIDTH_SGIX', 'Graphics.GL.Ext.SGIS.PointParameters.GL_POINT_FADE_THRESHOLD_SIZE_SGIS', 'Graphics.GL.Internal.Shared.GL_POINT_SIZE', 'Graphics.GL.Internal.Shared.GL_POINT_SIZE_GRANULARITY', 'Graphics.GL.Ext.SGIS.PointParameters.GL_POINT_SIZE_MAX_SGIS', 'Graphics.GL.Ext.SGIS.PointParameters.GL_POINT_SIZE_MIN_SGIS', 'Graphics.GL.Internal.Shared.GL_POINT_SIZE_RANGE', 'Graphics.GL.Internal.Shared.GL_POINT_SMOOTH', 'Graphics.GL.Internal.Shared.GL_POINT_SMOOTH_HINT', 'Graphics.GL.Internal.Shared.GL_POLYGON_MODE', 'Graphics.GL.Ext.EXT.PolygonOffset.GL_POLYGON_OFFSET_BIAS_EXT', 'Graphics.GL.Internal.Shared.GL_POLYGON_OFFSET_FACTOR', 'Graphics.GL.Internal.Shared.GL_POLYGON_OFFSET_FILL', 'Graphics.GL.Internal.Shared.GL_POLYGON_OFFSET_LINE', 'Graphics.GL.Internal.Shared.GL_POLYGON_OFFSET_POINT', 'Graphics.GL.Internal.Shared.GL_POLYGON_OFFSET_UNITS', 'Graphics.GL.Internal.Shared.GL_POLYGON_SMOOTH', 'Graphics.GL.Internal.Shared.GL_POLYGON_SMOOTH_HINT', 'Graphics.GL.Internal.Shared.GL_POLYGON_STIPPLE', 'Graphics.GL.Ext.SGI.ColorMatrix.GL_POST_COLOR_MATRIX_ALPHA_BIAS_SGI', 'Graphics.GL.Ext.SGI.ColorMatrix.GL_POST_COLOR_MATRIX_ALPHA_SCALE_SGI', 'Graphics.GL.Ext.SGI.ColorMatrix.GL_POST_COLOR_MATRIX_BLUE_BIAS_SGI', 'Graphics.GL.Ext.SGI.ColorMatrix.GL_POST_COLOR_MATRIX_BLUE_SCALE_SGI', 'Graphics.GL.Ext.SGI.ColorTable.GL_POST_COLOR_MATRIX_COLOR_TABLE_SGI', 'Graphics.GL.Ext.SGI.ColorMatrix.GL_POST_COLOR_MATRIX_GREEN_BIAS_SGI', 'Graphics.GL.Ext.SGI.ColorMatrix.GL_POST_COLOR_MATRIX_GREEN_SCALE_SGI', 'Graphics.GL.Ext.SGI.ColorMatrix.GL_POST_COLOR_MATRIX_RED_BIAS_SGI', 'Graphics.GL.Ext.SGI.ColorMatrix.GL_POST_COLOR_MATRIX_RED_SCALE_SGI', 'Graphics.GL.Ext.EXT.Convolution.GL_POST_CONVOLUTION_ALPHA_BIAS_EXT', 'Graphics.GL.Ext.EXT.Convolution.GL_POST_CONVOLUTION_ALPHA_SCALE_EXT', 'Graphics.GL.Ext.EXT.Convolution.GL_POST_CONVOLUTION_BLUE_BIAS_EXT', 'Graphics.GL.Ext.EXT.Convolution.GL_POST_CONVOLUTION_BLUE_SCALE_EXT', 'Graphics.GL.Ext.SGI.ColorTable.GL_POST_CONVOLUTION_COLOR_TABLE_SGI', 'Graphics.GL.Ext.EXT.Convolution.GL_POST_CONVOLUTION_GREEN_BIAS_EXT', 'Graphics.GL.Ext.EXT.Convolution.GL_POST_CONVOLUTION_GREEN_SCALE_EXT', 'Graphics.GL.Ext.EXT.Convolution.GL_POST_CONVOLUTION_RED_BIAS_EXT', 'Graphics.GL.Ext.EXT.Convolution.GL_POST_CONVOLUTION_RED_SCALE_EXT', 'Graphics.GL.Ext.SGIX.TextureScaleBias.GL_POST_TEXTURE_FILTER_BIAS_RANGE_SGIX', 'Graphics.GL.Ext.SGIX.TextureScaleBias.GL_POST_TEXTURE_FILTER_SCALE_RANGE_SGIX', 'Graphics.GL.Internal.Shared.GL_PROJECTION_MATRIX', 'Graphics.GL.Internal.Shared.GL_PROJECTION_STACK_DEPTH', 'Graphics.GL.Internal.Shared.GL_READ_BUFFER', 'Graphics.GL.Ext.EXT.MultiviewDrawBuffers.GL_READ_BUFFER_EXT', 'Graphics.GL.Ext.NV.ReadBuffer.GL_READ_BUFFER_NV', 'Graphics.GL.Internal.Shared.GL_RED_BIAS', 'Graphics.GL.Internal.Shared.GL_RED_BITS', 'Graphics.GL.Internal.Shared.GL_RED_SCALE', 'Graphics.GL.Ext.SGIX.ReferencePlane.GL_REFERENCE_PLANE_EQUATION_SGIX', 'Graphics.GL.Ext.SGIX.ReferencePlane.GL_REFERENCE_PLANE_SGIX', 'Graphics.GL.Internal.Shared.GL_RENDER_MODE', 'Graphics.GL.Ext.EXT.RescaleNormal.GL_RESCALE_NORMAL_EXT', 'Graphics.GL.Internal.Shared.GL_RGBA_MODE', 'Graphics.GL.Ext.SGIS.Multisample.GL_SAMPLES_SGIS', 'Graphics.GL.Ext.SGIS.Multisample.GL_SAMPLE_ALPHA_TO_MASK_SGIS', 'Graphics.GL.Ext.SGIS.Multisample.GL_SAMPLE_ALPHA_TO_ONE_SGIS', 'Graphics.GL.Ext.SGIS.Multisample.GL_SAMPLE_BUFFERS_SGIS', 'Graphics.GL.Ext.SGIS.Multisample.GL_SAMPLE_MASK_INVERT_SGIS', 'Graphics.GL.Ext.SGIS.Multisample.GL_SAMPLE_MASK_SGIS', 'Graphics.GL.Ext.SGIS.Multisample.GL_SAMPLE_MASK_VALUE_SGIS', 'Graphics.GL.Ext.SGIS.Multisample.GL_SAMPLE_PATTERN_SGIS', 'Graphics.GL.Internal.Shared.GL_SCISSOR_BOX', 'Graphics.GL.Internal.Shared.GL_SCISSOR_TEST', 'Graphics.GL.Internal.Shared.GL_SELECTION_BUFFER_SIZE', 'Graphics.GL.Ext.EXT.Convolution.GL_SEPARABLE_2D_EXT', 'Graphics.GL.Internal.Shared.GL_SHADE_MODEL', 'Graphics.GL.Ext.EXT.SharedTexturePalette.GL_SHARED_TEXTURE_PALETTE_EXT', 'Graphics.GL.Internal.Shared.GL_SMOOTH_LINE_WIDTH_GRANULARITY', 'Graphics.GL.Internal.Shared.GL_SMOOTH_LINE_WIDTH_RANGE', 'Graphics.GL.Internal.Shared.GL_SMOOTH_POINT_SIZE_GRANULARITY', 'Graphics.GL.Internal.Shared.GL_SMOOTH_POINT_SIZE_RANGE', 'Graphics.GL.Ext.SGIX.Sprite.GL_SPRITE_AXIS_SGIX', 'Graphics.GL.Ext.SGIX.Sprite.GL_SPRITE_MODE_SGIX', 'Graphics.GL.Ext.SGIX.Sprite.GL_SPRITE_SGIX', 'Graphics.GL.Ext.SGIX.Sprite.GL_SPRITE_TRANSLATION_SGIX', 'Graphics.GL.Internal.Shared.GL_STENCIL_BITS', 'Graphics.GL.Internal.Shared.GL_STENCIL_CLEAR_VALUE', 'Graphics.GL.Internal.Shared.GL_STENCIL_FAIL', 'Graphics.GL.Internal.Shared.GL_STENCIL_FUNC', 'Graphics.GL.Internal.Shared.GL_STENCIL_PASS_DEPTH_FAIL', 'Graphics.GL.Internal.Shared.GL_STENCIL_PASS_DEPTH_PASS', 'Graphics.GL.Internal.Shared.GL_STENCIL_REF', 'Graphics.GL.Internal.Shared.GL_STENCIL_TEST', 'Graphics.GL.Internal.Shared.GL_STENCIL_VALUE_MASK', 'Graphics.GL.Internal.Shared.GL_STENCIL_WRITEMASK', 'Graphics.GL.Internal.Shared.GL_STEREO', 'Graphics.GL.Internal.Shared.GL_SUBPIXEL_BITS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_1D', 'Graphics.GL.Internal.Shared.GL_TEXTURE_2D', 'Graphics.GL.Ext.EXT.TextureObject.GL_TEXTURE_3D_BINDING_EXT', 'Graphics.GL.Ext.EXT.Texture3D.GL_TEXTURE_3D_EXT', 'Graphics.GL.Ext.SGIS.Texture4D.GL_TEXTURE_4D_BINDING_SGIS', 'Graphics.GL.Ext.SGIS.Texture4D.GL_TEXTURE_4D_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_BINDING_1D', 'Graphics.GL.Internal.Shared.GL_TEXTURE_BINDING_2D', 'Graphics.GL.Internal.Shared.GL_TEXTURE_BINDING_3D', 'Graphics.GL.Ext.SGI.TextureColorTable.GL_TEXTURE_COLOR_TABLE_SGI', 'Graphics.GL.Internal.Shared.GL_TEXTURE_COORD_ARRAY', 'Graphics.GL.Ext.EXT.VertexArray.GL_TEXTURE_COORD_ARRAY_COUNT_EXT', 'Graphics.GL.Internal.Shared.GL_TEXTURE_COORD_ARRAY_SIZE', 'Graphics.GL.Internal.Shared.GL_TEXTURE_COORD_ARRAY_STRIDE', 'Graphics.GL.Internal.Shared.GL_TEXTURE_COORD_ARRAY_TYPE', 'Graphics.GL.Internal.Shared.GL_TEXTURE_GEN_Q', 'Graphics.GL.Internal.Shared.GL_TEXTURE_GEN_R', 'Graphics.GL.Internal.Shared.GL_TEXTURE_GEN_S', 'Graphics.GL.Internal.Shared.GL_TEXTURE_GEN_T', 'Graphics.GL.Internal.Shared.GL_TEXTURE_MATRIX', 'Graphics.GL.Internal.Shared.GL_TEXTURE_STACK_DEPTH', 'Graphics.GL.Internal.Shared.GL_UNPACK_ALIGNMENT', 'Graphics.GL.Ext.EXT.Cmyka.GL_UNPACK_CMYK_HINT_EXT', 'Graphics.GL.Ext.SGIS.Texture4D.GL_UNPACK_IMAGE_DEPTH_SGIS', 'Graphics.GL.Ext.EXT.Texture3D.GL_UNPACK_IMAGE_HEIGHT_EXT', 'Graphics.GL.Internal.Shared.GL_UNPACK_LSB_FIRST', 'Graphics.GL.Ext.SGIX.Resample.GL_UNPACK_RESAMPLE_SGIX', 'Graphics.GL.Internal.Shared.GL_UNPACK_ROW_LENGTH', 'Graphics.GL.Ext.EXT.Texture3D.GL_UNPACK_SKIP_IMAGES_EXT', 'Graphics.GL.Internal.Shared.GL_UNPACK_SKIP_PIXELS', 'Graphics.GL.Internal.Shared.GL_UNPACK_SKIP_ROWS', 'Graphics.GL.Ext.SGIS.Texture4D.GL_UNPACK_SKIP_VOLUMES_SGIS', 'Graphics.GL.Ext.SGIX.Subsample.GL_UNPACK_SUBSAMPLE_RATE_SGIX', 'Graphics.GL.Internal.Shared.GL_UNPACK_SWAP_BYTES', 'Graphics.GL.Internal.Shared.GL_VERTEX_ARRAY', 'Graphics.GL.Ext.EXT.VertexArray.GL_VERTEX_ARRAY_COUNT_EXT', 'Graphics.GL.Internal.Shared.GL_VERTEX_ARRAY_SIZE', 'Graphics.GL.Internal.Shared.GL_VERTEX_ARRAY_STRIDE', 'Graphics.GL.Internal.Shared.GL_VERTEX_ARRAY_TYPE', 'Graphics.GL.Ext.SGIX.VertexPreclip.GL_VERTEX_PRECLIP_HINT_SGIX', 'Graphics.GL.Ext.SGIX.VertexPreclip.GL_VERTEX_PRECLIP_SGIX', 'Graphics.GL.Internal.Shared.GL_VIEWPORT', 'Graphics.GL.Internal.Shared.GL_ZOOM_X', 'Graphics.GL.Internal.Shared.GL_ZOOM_Y'.
--
-- The length of @data@ should be @COMPSIZE(pname)@.
glGetFloatv :: MonadIO m => GLenum -> Ptr GLfloat -> m ()
glGetFloatv = ffienumPtrfloatIOV glGetFloatvFunPtr
glGetFloatvFunPtr :: FunPtr (GLenum -> Ptr GLfloat -> IO ())
glGetFloatvFunPtr = unsafePerformIO (getProcAddress "glGetFloatv")
{-# NOINLINE glGetFloatvFunPtr #-}
-- | Usage: @'glGetFragDataLocation' program name@
--
-- The length of @name@ should be @COMPSIZE(name)@.
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glGetFragDataLocation.xhtml>
glGetFragDataLocation :: MonadIO m => GLuint -> Ptr GLchar -> m GLint
glGetFragDataLocation = ffiuintPtrcharIOint glGetFragDataLocationFunPtr
glGetFragDataLocationFunPtr :: FunPtr (GLuint -> Ptr GLchar -> IO GLint)
glGetFragDataLocationFunPtr = unsafePerformIO (getProcAddress "glGetFragDataLocation")
{-# NOINLINE glGetFragDataLocationFunPtr #-}
-- | Usage: @'glGetFramebufferAttachmentParameteriv' target attachment pname params@
--
-- The parameter @target@ is a @FramebufferTarget@.
--
-- The parameter @attachment@ is a @FramebufferAttachment@.
--
-- The length of @params@ should be @COMPSIZE(pname)@.
glGetFramebufferAttachmentParameteriv :: MonadIO m => GLenum -> GLenum -> GLenum -> Ptr GLint -> m ()
glGetFramebufferAttachmentParameteriv = ffienumenumenumPtrintIOV glGetFramebufferAttachmentParameterivFunPtr
glGetFramebufferAttachmentParameterivFunPtr :: FunPtr (GLenum -> GLenum -> GLenum -> Ptr GLint -> IO ())
glGetFramebufferAttachmentParameterivFunPtr = unsafePerformIO (getProcAddress "glGetFramebufferAttachmentParameteriv")
{-# NOINLINE glGetFramebufferAttachmentParameterivFunPtr #-}
-- | Usage: @'glGetInteger64i_v' target index data@
--
-- The length of @data@ should be @COMPSIZE(target)@.
glGetInteger64i_v :: MonadIO m => GLenum -> GLuint -> Ptr GLint64 -> m ()
glGetInteger64i_v = ffienumuintPtrint64IOV glGetInteger64i_vFunPtr
glGetInteger64i_vFunPtr :: FunPtr (GLenum -> GLuint -> Ptr GLint64 -> IO ())
glGetInteger64i_vFunPtr = unsafePerformIO (getProcAddress "glGetInteger64i_v")
{-# NOINLINE glGetInteger64i_vFunPtr #-}
-- | Usage: @'glGetInteger64v' pname data@
--
-- The length of @data@ should be @COMPSIZE(pname)@.
glGetInteger64v :: MonadIO m => GLenum -> Ptr GLint64 -> m ()
glGetInteger64v = ffienumPtrint64IOV glGetInteger64vFunPtr
glGetInteger64vFunPtr :: FunPtr (GLenum -> Ptr GLint64 -> IO ())
glGetInteger64vFunPtr = unsafePerformIO (getProcAddress "glGetInteger64v")
{-# NOINLINE glGetInteger64vFunPtr #-}
-- | Usage: @'glGetIntegeri_v' target index data@
--
-- The length of @data@ should be @COMPSIZE(target)@.
glGetIntegeri_v :: MonadIO m => GLenum -> GLuint -> Ptr GLint -> m ()
glGetIntegeri_v = ffienumuintPtrintIOV glGetIntegeri_vFunPtr
glGetIntegeri_vFunPtr :: FunPtr (GLenum -> GLuint -> Ptr GLint -> IO ())
glGetIntegeri_vFunPtr = unsafePerformIO (getProcAddress "glGetIntegeri_v")
{-# NOINLINE glGetIntegeri_vFunPtr #-}
-- | Usage: @'glGetIntegerv' pname data@
--
-- The parameter @pname@ is a @GetPName@, one of: 'Graphics.GL.Internal.Shared.GL_ACCUM_ALPHA_BITS', 'Graphics.GL.Internal.Shared.GL_ACCUM_BLUE_BITS', 'Graphics.GL.Internal.Shared.GL_ACCUM_CLEAR_VALUE', 'Graphics.GL.Internal.Shared.GL_ACCUM_GREEN_BITS', 'Graphics.GL.Internal.Shared.GL_ACCUM_RED_BITS', 'Graphics.GL.Internal.Shared.GL_ALIASED_LINE_WIDTH_RANGE', 'Graphics.GL.Internal.Shared.GL_ALIASED_POINT_SIZE_RANGE', 'Graphics.GL.Internal.Shared.GL_ALPHA_BIAS', 'Graphics.GL.Internal.Shared.GL_ALPHA_BITS', 'Graphics.GL.Internal.Shared.GL_ALPHA_SCALE', 'Graphics.GL.Internal.Shared.GL_ALPHA_TEST', 'Graphics.GL.Internal.Shared.GL_ALPHA_TEST_FUNC', 'Graphics.GL.Ext.QCOM.AlphaTest.GL_ALPHA_TEST_FUNC_QCOM', 'Graphics.GL.Ext.QCOM.AlphaTest.GL_ALPHA_TEST_QCOM', 'Graphics.GL.Internal.Shared.GL_ALPHA_TEST_REF', 'Graphics.GL.Ext.QCOM.AlphaTest.GL_ALPHA_TEST_REF_QCOM', 'Graphics.GL.Ext.SGIX.AsyncPixel.GL_ASYNC_DRAW_PIXELS_SGIX', 'Graphics.GL.Ext.SGIX.AsyncHistogram.GL_ASYNC_HISTOGRAM_SGIX', 'Graphics.GL.Ext.SGIX.Async.GL_ASYNC_MARKER_SGIX', 'Graphics.GL.Ext.SGIX.AsyncPixel.GL_ASYNC_READ_PIXELS_SGIX', 'Graphics.GL.Ext.SGIX.AsyncPixel.GL_ASYNC_TEX_IMAGE_SGIX', 'Graphics.GL.Internal.Shared.GL_ATTRIB_STACK_DEPTH', 'Graphics.GL.Internal.Shared.GL_AUTO_NORMAL', 'Graphics.GL.Internal.Shared.GL_AUX_BUFFERS', 'Graphics.GL.Internal.Shared.GL_BLEND', 'Graphics.GL.Ext.EXT.BlendColor.GL_BLEND_COLOR_EXT', 'Graphics.GL.Internal.Shared.GL_BLEND_DST', 'Graphics.GL.Ext.EXT.BlendMinmax.GL_BLEND_EQUATION_EXT', 'Graphics.GL.Internal.Shared.GL_BLEND_SRC', 'Graphics.GL.Internal.Shared.GL_BLUE_BIAS', 'Graphics.GL.Internal.Shared.GL_BLUE_BITS', 'Graphics.GL.Internal.Shared.GL_BLUE_SCALE', 'Graphics.GL.Ext.SGIX.CalligraphicFragment.GL_CALLIGRAPHIC_FRAGMENT_SGIX', 'Graphics.GL.Internal.Shared.GL_CLIENT_ATTRIB_STACK_DEPTH', 'Graphics.GL.Internal.Shared.GL_CLIP_PLANE0', 'Graphics.GL.Internal.Shared.GL_CLIP_PLANE1', 'Graphics.GL.Internal.Shared.GL_CLIP_PLANE2', 'Graphics.GL.Internal.Shared.GL_CLIP_PLANE3', 'Graphics.GL.Internal.Shared.GL_CLIP_PLANE4', 'Graphics.GL.Internal.Shared.GL_CLIP_PLANE5', 'Graphics.GL.Internal.Shared.GL_COLOR_ARRAY', 'Graphics.GL.Ext.EXT.VertexArray.GL_COLOR_ARRAY_COUNT_EXT', 'Graphics.GL.Internal.Shared.GL_COLOR_ARRAY_SIZE', 'Graphics.GL.Internal.Shared.GL_COLOR_ARRAY_STRIDE', 'Graphics.GL.Internal.Shared.GL_COLOR_ARRAY_TYPE', 'Graphics.GL.Internal.Shared.GL_COLOR_CLEAR_VALUE', 'Graphics.GL.Internal.Shared.GL_COLOR_LOGIC_OP', 'Graphics.GL.Internal.Shared.GL_COLOR_MATERIAL', 'Graphics.GL.Internal.Shared.GL_COLOR_MATERIAL_FACE', 'Graphics.GL.Internal.Shared.GL_COLOR_MATERIAL_PARAMETER', 'Graphics.GL.Ext.SGI.ColorMatrix.GL_COLOR_MATRIX_SGI', 'Graphics.GL.Ext.SGI.ColorMatrix.GL_COLOR_MATRIX_STACK_DEPTH_SGI', 'Graphics.GL.Ext.SGI.ColorTable.GL_COLOR_TABLE_SGI', 'Graphics.GL.Internal.Shared.GL_COLOR_WRITEMASK', 'Graphics.GL.Ext.EXT.Convolution.GL_CONVOLUTION_1D_EXT', 'Graphics.GL.Ext.EXT.Convolution.GL_CONVOLUTION_2D_EXT', 'Graphics.GL.Ext.SGIX.ConvolutionAccuracy.GL_CONVOLUTION_HINT_SGIX', 'Graphics.GL.Internal.Shared.GL_CULL_FACE', 'Graphics.GL.Internal.Shared.GL_CULL_FACE_MODE', 'Graphics.GL.Internal.Shared.GL_CURRENT_COLOR', 'Graphics.GL.Internal.Shared.GL_CURRENT_INDEX', 'Graphics.GL.Internal.Shared.GL_CURRENT_NORMAL', 'Graphics.GL.Internal.Shared.GL_CURRENT_RASTER_COLOR', 'Graphics.GL.Internal.Shared.GL_CURRENT_RASTER_DISTANCE', 'Graphics.GL.Internal.Shared.GL_CURRENT_RASTER_INDEX', 'Graphics.GL.Internal.Shared.GL_CURRENT_RASTER_POSITION', 'Graphics.GL.Internal.Shared.GL_CURRENT_RASTER_POSITION_VALID', 'Graphics.GL.Internal.Shared.GL_CURRENT_RASTER_TEXTURE_COORDS', 'Graphics.GL.Internal.Shared.GL_CURRENT_TEXTURE_COORDS', 'Graphics.GL.Ext.SGIX.PolynomialFfd.GL_DEFORMATIONS_MASK_SGIX', 'Graphics.GL.Internal.Shared.GL_DEPTH_BIAS', 'Graphics.GL.Internal.Shared.GL_DEPTH_BITS', 'Graphics.GL.Internal.Shared.GL_DEPTH_CLEAR_VALUE', 'Graphics.GL.Internal.Shared.GL_DEPTH_FUNC', 'Graphics.GL.Internal.Shared.GL_DEPTH_RANGE', 'Graphics.GL.Internal.Shared.GL_DEPTH_SCALE', 'Graphics.GL.Internal.Shared.GL_DEPTH_TEST', 'Graphics.GL.Internal.Shared.GL_DEPTH_WRITEMASK', 'Graphics.GL.Ext.SGIS.DetailTexture.GL_DETAIL_TEXTURE_2D_BINDING_SGIS', 'Graphics.GL.Ext.SGIS.PointParameters.GL_DISTANCE_ATTENUATION_SGIS', 'Graphics.GL.Internal.Shared.GL_DITHER', 'Graphics.GL.Internal.Shared.GL_DOUBLEBUFFER', 'Graphics.GL.Internal.Shared.GL_DRAW_BUFFER', 'Graphics.GL.Ext.EXT.MultiviewDrawBuffers.GL_DRAW_BUFFER_EXT', 'Graphics.GL.Internal.Shared.GL_EDGE_FLAG', 'Graphics.GL.Internal.Shared.GL_EDGE_FLAG_ARRAY', 'Graphics.GL.Ext.EXT.VertexArray.GL_EDGE_FLAG_ARRAY_COUNT_EXT', 'Graphics.GL.Internal.Shared.GL_EDGE_FLAG_ARRAY_STRIDE', 'Graphics.GL.Internal.Shared.GL_FEEDBACK_BUFFER_SIZE', 'Graphics.GL.Internal.Shared.GL_FEEDBACK_BUFFER_TYPE', 'Graphics.GL.Internal.Shared.GL_FOG', 'Graphics.GL.Internal.Shared.GL_FOG_COLOR', 'Graphics.GL.Internal.Shared.GL_FOG_DENSITY', 'Graphics.GL.Internal.Shared.GL_FOG_END', 'Graphics.GL.Ext.SGIS.FogFunction.GL_FOG_FUNC_POINTS_SGIS', 'Graphics.GL.Internal.Shared.GL_FOG_HINT', 'Graphics.GL.Internal.Shared.GL_FOG_INDEX', 'Graphics.GL.Internal.Shared.GL_FOG_MODE', 'Graphics.GL.Ext.SGIX.FogOffset.GL_FOG_OFFSET_SGIX', 'Graphics.GL.Ext.SGIX.FogOffset.GL_FOG_OFFSET_VALUE_SGIX', 'Graphics.GL.Internal.Shared.GL_FOG_START', 'Graphics.GL.Ext.SGIX.FragmentLighting.GL_FRAGMENT_COLOR_MATERIAL_FACE_SGIX', 'Graphics.GL.Ext.SGIX.FragmentLighting.GL_FRAGMENT_COLOR_MATERIAL_PARAMETER_SGIX', 'Graphics.GL.Ext.SGIX.FragmentLighting.GL_FRAGMENT_COLOR_MATERIAL_SGIX', 'Graphics.GL.Ext.SGIX.FragmentLighting.GL_FRAGMENT_LIGHT0_SGIX', 'Graphics.GL.Ext.SGIX.FragmentLighting.GL_FRAGMENT_LIGHTING_SGIX', 'Graphics.GL.Ext.SGIX.FragmentLighting.GL_FRAGMENT_LIGHT_MODEL_AMBIENT_SGIX', 'Graphics.GL.Ext.SGIX.FragmentLighting.GL_FRAGMENT_LIGHT_MODEL_LOCAL_VIEWER_SGIX', 'Graphics.GL.Ext.SGIX.FragmentLighting.GL_FRAGMENT_LIGHT_MODEL_NORMAL_INTERPOLATION_SGIX', 'Graphics.GL.Ext.SGIX.FragmentLighting.GL_FRAGMENT_LIGHT_MODEL_TWO_SIDE_SGIX', 'Graphics.GL.Ext.SGIX.Framezoom.GL_FRAMEZOOM_FACTOR_SGIX', 'Graphics.GL.Ext.SGIX.Framezoom.GL_FRAMEZOOM_SGIX', 'Graphics.GL.Internal.Shared.GL_FRONT_FACE', 'Graphics.GL.Ext.SGIS.GenerateMipmap.GL_GENERATE_MIPMAP_HINT_SGIS', 'Graphics.GL.Internal.Shared.GL_GREEN_BIAS', 'Graphics.GL.Internal.Shared.GL_GREEN_BITS', 'Graphics.GL.Internal.Shared.GL_GREEN_SCALE', 'Graphics.GL.Ext.EXT.Histogram.GL_HISTOGRAM_EXT', 'Graphics.GL.Internal.Shared.GL_INDEX_ARRAY', 'Graphics.GL.Ext.EXT.VertexArray.GL_INDEX_ARRAY_COUNT_EXT', 'Graphics.GL.Internal.Shared.GL_INDEX_ARRAY_STRIDE', 'Graphics.GL.Internal.Shared.GL_INDEX_ARRAY_TYPE', 'Graphics.GL.Internal.Shared.GL_INDEX_BITS', 'Graphics.GL.Internal.Shared.GL_INDEX_CLEAR_VALUE', 'Graphics.GL.Internal.Shared.GL_INDEX_LOGIC_OP', 'Graphics.GL.Internal.Shared.GL_INDEX_MODE', 'Graphics.GL.Internal.Shared.GL_INDEX_OFFSET', 'Graphics.GL.Internal.Shared.GL_INDEX_SHIFT', 'Graphics.GL.Internal.Shared.GL_INDEX_WRITEMASK', 'Graphics.GL.Ext.SGIX.Instruments.GL_INSTRUMENT_MEASUREMENTS_SGIX', 'Graphics.GL.Ext.SGIX.Interlace.GL_INTERLACE_SGIX', 'Graphics.GL.Ext.SGIX.IrInstrument1.GL_IR_INSTRUMENT1_SGIX', 'Graphics.GL.Internal.Shared.GL_LIGHT0', 'Graphics.GL.Internal.Shared.GL_LIGHT1', 'Graphics.GL.Internal.Shared.GL_LIGHT2', 'Graphics.GL.Internal.Shared.GL_LIGHT3', 'Graphics.GL.Internal.Shared.GL_LIGHT4', 'Graphics.GL.Internal.Shared.GL_LIGHT5', 'Graphics.GL.Internal.Shared.GL_LIGHT6', 'Graphics.GL.Internal.Shared.GL_LIGHT7', 'Graphics.GL.Internal.Shared.GL_LIGHTING', 'Graphics.GL.Ext.SGIX.FragmentLighting.GL_LIGHT_ENV_MODE_SGIX', 'Graphics.GL.Internal.Shared.GL_LIGHT_MODEL_AMBIENT', 'Graphics.GL.Internal.Shared.GL_LIGHT_MODEL_COLOR_CONTROL', 'Graphics.GL.Internal.Shared.GL_LIGHT_MODEL_LOCAL_VIEWER', 'Graphics.GL.Internal.Shared.GL_LIGHT_MODEL_TWO_SIDE', 'Graphics.GL.Internal.Shared.GL_LINE_SMOOTH', 'Graphics.GL.Internal.Shared.GL_LINE_SMOOTH_HINT', 'Graphics.GL.Internal.Shared.GL_LINE_STIPPLE', 'Graphics.GL.Internal.Shared.GL_LINE_STIPPLE_PATTERN', 'Graphics.GL.Internal.Shared.GL_LINE_STIPPLE_REPEAT', 'Graphics.GL.Internal.Shared.GL_LINE_WIDTH', 'Graphics.GL.Internal.Shared.GL_LINE_WIDTH_GRANULARITY', 'Graphics.GL.Internal.Shared.GL_LINE_WIDTH_RANGE', 'Graphics.GL.Internal.Shared.GL_LIST_BASE', 'Graphics.GL.Internal.Shared.GL_LIST_INDEX', 'Graphics.GL.Internal.Shared.GL_LIST_MODE', 'Graphics.GL.Internal.Shared.GL_LOGIC_OP', 'Graphics.GL.Internal.Shared.GL_LOGIC_OP_MODE', 'Graphics.GL.Internal.Shared.GL_MAP1_COLOR_4', 'Graphics.GL.Internal.Shared.GL_MAP1_GRID_DOMAIN', 'Graphics.GL.Internal.Shared.GL_MAP1_GRID_SEGMENTS', 'Graphics.GL.Internal.Shared.GL_MAP1_INDEX', 'Graphics.GL.Internal.Shared.GL_MAP1_NORMAL', 'Graphics.GL.Internal.Shared.GL_MAP1_TEXTURE_COORD_1', 'Graphics.GL.Internal.Shared.GL_MAP1_TEXTURE_COORD_2', 'Graphics.GL.Internal.Shared.GL_MAP1_TEXTURE_COORD_3', 'Graphics.GL.Internal.Shared.GL_MAP1_TEXTURE_COORD_4', 'Graphics.GL.Internal.Shared.GL_MAP1_VERTEX_3', 'Graphics.GL.Internal.Shared.GL_MAP1_VERTEX_4', 'Graphics.GL.Internal.Shared.GL_MAP2_COLOR_4', 'Graphics.GL.Internal.Shared.GL_MAP2_GRID_DOMAIN', 'Graphics.GL.Internal.Shared.GL_MAP2_GRID_SEGMENTS', 'Graphics.GL.Internal.Shared.GL_MAP2_INDEX', 'Graphics.GL.Internal.Shared.GL_MAP2_NORMAL', 'Graphics.GL.Internal.Shared.GL_MAP2_TEXTURE_COORD_1', 'Graphics.GL.Internal.Shared.GL_MAP2_TEXTURE_COORD_2', 'Graphics.GL.Internal.Shared.GL_MAP2_TEXTURE_COORD_3', 'Graphics.GL.Internal.Shared.GL_MAP2_TEXTURE_COORD_4', 'Graphics.GL.Internal.Shared.GL_MAP2_VERTEX_3', 'Graphics.GL.Internal.Shared.GL_MAP2_VERTEX_4', 'Graphics.GL.Internal.Shared.GL_MAP_COLOR', 'Graphics.GL.Internal.Shared.GL_MAP_STENCIL', 'Graphics.GL.Internal.Shared.GL_MATRIX_MODE', 'Graphics.GL.Ext.EXT.Texture3D.GL_MAX_3D_TEXTURE_SIZE_EXT', 'Graphics.GL.Ext.SGIS.Texture4D.GL_MAX_4D_TEXTURE_SIZE_SGIS', 'Graphics.GL.Ext.SGIX.FragmentLighting.GL_MAX_ACTIVE_LIGHTS_SGIX', 'Graphics.GL.Ext.SGIX.AsyncPixel.GL_MAX_ASYNC_DRAW_PIXELS_SGIX', 'Graphics.GL.Ext.SGIX.AsyncHistogram.GL_MAX_ASYNC_HISTOGRAM_SGIX', 'Graphics.GL.Ext.SGIX.AsyncPixel.GL_MAX_ASYNC_READ_PIXELS_SGIX', 'Graphics.GL.Ext.SGIX.AsyncPixel.GL_MAX_ASYNC_TEX_IMAGE_SGIX', 'Graphics.GL.Internal.Shared.GL_MAX_ATTRIB_STACK_DEPTH', 'Graphics.GL.Internal.Shared.GL_MAX_CLIENT_ATTRIB_STACK_DEPTH', 'Graphics.GL.Ext.SGIX.Clipmap.GL_MAX_CLIPMAP_DEPTH_SGIX', 'Graphics.GL.Ext.SGIX.Clipmap.GL_MAX_CLIPMAP_VIRTUAL_DEPTH_SGIX', 'Graphics.GL.Internal.Shared.GL_MAX_CLIP_DISTANCES', 'Graphics.GL.Internal.Shared.GL_MAX_CLIP_PLANES', 'Graphics.GL.Ext.SGI.ColorMatrix.GL_MAX_COLOR_MATRIX_STACK_DEPTH_SGI', 'Graphics.GL.Internal.Shared.GL_MAX_EVAL_ORDER', 'Graphics.GL.Ext.SGIS.FogFunction.GL_MAX_FOG_FUNC_POINTS_SGIS', 'Graphics.GL.Ext.SGIX.FragmentLighting.GL_MAX_FRAGMENT_LIGHTS_SGIX', 'Graphics.GL.Ext.SGIX.Framezoom.GL_MAX_FRAMEZOOM_FACTOR_SGIX', 'Graphics.GL.Internal.Shared.GL_MAX_LIGHTS', 'Graphics.GL.Internal.Shared.GL_MAX_LIST_NESTING', 'Graphics.GL.Internal.Shared.GL_MAX_MODELVIEW_STACK_DEPTH', 'Graphics.GL.Internal.Shared.GL_MAX_NAME_STACK_DEPTH', 'Graphics.GL.Internal.Shared.GL_MAX_PIXEL_MAP_TABLE', 'Graphics.GL.Internal.Shared.GL_MAX_PROJECTION_STACK_DEPTH', 'Graphics.GL.Internal.Shared.GL_MAX_TEXTURE_SIZE', 'Graphics.GL.Internal.Shared.GL_MAX_TEXTURE_STACK_DEPTH', 'Graphics.GL.Internal.Shared.GL_MAX_VIEWPORT_DIMS', 'Graphics.GL.Ext.EXT.Histogram.GL_MINMAX_EXT', 'Graphics.GL.Ext.EXT.VertexWeighting.GL_MODELVIEW0_MATRIX_EXT', 'Graphics.GL.Ext.EXT.VertexWeighting.GL_MODELVIEW0_STACK_DEPTH_EXT', 'Graphics.GL.Internal.Shared.GL_MODELVIEW_MATRIX', 'Graphics.GL.Internal.Shared.GL_MODELVIEW_STACK_DEPTH', 'Graphics.GL.Ext.SGIS.Multisample.GL_MULTISAMPLE_SGIS', 'Graphics.GL.Internal.Shared.GL_NAME_STACK_DEPTH', 'Graphics.GL.Internal.Shared.GL_NORMALIZE', 'Graphics.GL.Internal.Shared.GL_NORMAL_ARRAY', 'Graphics.GL.Ext.EXT.VertexArray.GL_NORMAL_ARRAY_COUNT_EXT', 'Graphics.GL.Internal.Shared.GL_NORMAL_ARRAY_STRIDE', 'Graphics.GL.Internal.Shared.GL_NORMAL_ARRAY_TYPE', 'Graphics.GL.Internal.Shared.GL_PACK_ALIGNMENT', 'Graphics.GL.Ext.EXT.Cmyka.GL_PACK_CMYK_HINT_EXT', 'Graphics.GL.Ext.SGIS.Texture4D.GL_PACK_IMAGE_DEPTH_SGIS', 'Graphics.GL.Ext.EXT.Texture3D.GL_PACK_IMAGE_HEIGHT_EXT', 'Graphics.GL.Internal.Shared.GL_PACK_LSB_FIRST', 'Graphics.GL.Ext.SGIX.Resample.GL_PACK_RESAMPLE_SGIX', 'Graphics.GL.Internal.Shared.GL_PACK_ROW_LENGTH', 'Graphics.GL.Ext.EXT.Texture3D.GL_PACK_SKIP_IMAGES_EXT', 'Graphics.GL.Internal.Shared.GL_PACK_SKIP_PIXELS', 'Graphics.GL.Internal.Shared.GL_PACK_SKIP_ROWS', 'Graphics.GL.Ext.SGIS.Texture4D.GL_PACK_SKIP_VOLUMES_SGIS', 'Graphics.GL.Ext.SGIX.Subsample.GL_PACK_SUBSAMPLE_RATE_SGIX', 'Graphics.GL.Internal.Shared.GL_PACK_SWAP_BYTES', 'Graphics.GL.Internal.Shared.GL_PERSPECTIVE_CORRECTION_HINT', 'Graphics.GL.Internal.Shared.GL_PIXEL_MAP_A_TO_A_SIZE', 'Graphics.GL.Internal.Shared.GL_PIXEL_MAP_B_TO_B_SIZE', 'Graphics.GL.Internal.Shared.GL_PIXEL_MAP_G_TO_G_SIZE', 'Graphics.GL.Internal.Shared.GL_PIXEL_MAP_I_TO_A_SIZE', 'Graphics.GL.Internal.Shared.GL_PIXEL_MAP_I_TO_B_SIZE', 'Graphics.GL.Internal.Shared.GL_PIXEL_MAP_I_TO_G_SIZE', 'Graphics.GL.Internal.Shared.GL_PIXEL_MAP_I_TO_I_SIZE', 'Graphics.GL.Internal.Shared.GL_PIXEL_MAP_I_TO_R_SIZE', 'Graphics.GL.Internal.Shared.GL_PIXEL_MAP_R_TO_R_SIZE', 'Graphics.GL.Internal.Shared.GL_PIXEL_MAP_S_TO_S_SIZE', 'Graphics.GL.Ext.SGIS.PixelTexture.GL_PIXEL_TEXTURE_SGIS', 'Graphics.GL.Ext.SGIX.PixelTexture.GL_PIXEL_TEX_GEN_MODE_SGIX', 'Graphics.GL.Ext.SGIX.PixelTexture.GL_PIXEL_TEX_GEN_SGIX', 'Graphics.GL.Ext.SGIX.PixelTiles.GL_PIXEL_TILE_BEST_ALIGNMENT_SGIX', 'Graphics.GL.Ext.SGIX.PixelTiles.GL_PIXEL_TILE_CACHE_INCREMENT_SGIX', 'Graphics.GL.Ext.SGIX.PixelTiles.GL_PIXEL_TILE_CACHE_SIZE_SGIX', 'Graphics.GL.Ext.SGIX.PixelTiles.GL_PIXEL_TILE_GRID_DEPTH_SGIX', 'Graphics.GL.Ext.SGIX.PixelTiles.GL_PIXEL_TILE_GRID_HEIGHT_SGIX', 'Graphics.GL.Ext.SGIX.PixelTiles.GL_PIXEL_TILE_GRID_WIDTH_SGIX', 'Graphics.GL.Ext.SGIX.PixelTiles.GL_PIXEL_TILE_HEIGHT_SGIX', 'Graphics.GL.Ext.SGIX.PixelTiles.GL_PIXEL_TILE_WIDTH_SGIX', 'Graphics.GL.Ext.SGIS.PointParameters.GL_POINT_FADE_THRESHOLD_SIZE_SGIS', 'Graphics.GL.Internal.Shared.GL_POINT_SIZE', 'Graphics.GL.Internal.Shared.GL_POINT_SIZE_GRANULARITY', 'Graphics.GL.Ext.SGIS.PointParameters.GL_POINT_SIZE_MAX_SGIS', 'Graphics.GL.Ext.SGIS.PointParameters.GL_POINT_SIZE_MIN_SGIS', 'Graphics.GL.Internal.Shared.GL_POINT_SIZE_RANGE', 'Graphics.GL.Internal.Shared.GL_POINT_SMOOTH', 'Graphics.GL.Internal.Shared.GL_POINT_SMOOTH_HINT', 'Graphics.GL.Internal.Shared.GL_POLYGON_MODE', 'Graphics.GL.Ext.EXT.PolygonOffset.GL_POLYGON_OFFSET_BIAS_EXT', 'Graphics.GL.Internal.Shared.GL_POLYGON_OFFSET_FACTOR', 'Graphics.GL.Internal.Shared.GL_POLYGON_OFFSET_FILL', 'Graphics.GL.Internal.Shared.GL_POLYGON_OFFSET_LINE', 'Graphics.GL.Internal.Shared.GL_POLYGON_OFFSET_POINT', 'Graphics.GL.Internal.Shared.GL_POLYGON_OFFSET_UNITS', 'Graphics.GL.Internal.Shared.GL_POLYGON_SMOOTH', 'Graphics.GL.Internal.Shared.GL_POLYGON_SMOOTH_HINT', 'Graphics.GL.Internal.Shared.GL_POLYGON_STIPPLE', 'Graphics.GL.Ext.SGI.ColorMatrix.GL_POST_COLOR_MATRIX_ALPHA_BIAS_SGI', 'Graphics.GL.Ext.SGI.ColorMatrix.GL_POST_COLOR_MATRIX_ALPHA_SCALE_SGI', 'Graphics.GL.Ext.SGI.ColorMatrix.GL_POST_COLOR_MATRIX_BLUE_BIAS_SGI', 'Graphics.GL.Ext.SGI.ColorMatrix.GL_POST_COLOR_MATRIX_BLUE_SCALE_SGI', 'Graphics.GL.Ext.SGI.ColorTable.GL_POST_COLOR_MATRIX_COLOR_TABLE_SGI', 'Graphics.GL.Ext.SGI.ColorMatrix.GL_POST_COLOR_MATRIX_GREEN_BIAS_SGI', 'Graphics.GL.Ext.SGI.ColorMatrix.GL_POST_COLOR_MATRIX_GREEN_SCALE_SGI', 'Graphics.GL.Ext.SGI.ColorMatrix.GL_POST_COLOR_MATRIX_RED_BIAS_SGI', 'Graphics.GL.Ext.SGI.ColorMatrix.GL_POST_COLOR_MATRIX_RED_SCALE_SGI', 'Graphics.GL.Ext.EXT.Convolution.GL_POST_CONVOLUTION_ALPHA_BIAS_EXT', 'Graphics.GL.Ext.EXT.Convolution.GL_POST_CONVOLUTION_ALPHA_SCALE_EXT', 'Graphics.GL.Ext.EXT.Convolution.GL_POST_CONVOLUTION_BLUE_BIAS_EXT', 'Graphics.GL.Ext.EXT.Convolution.GL_POST_CONVOLUTION_BLUE_SCALE_EXT', 'Graphics.GL.Ext.SGI.ColorTable.GL_POST_CONVOLUTION_COLOR_TABLE_SGI', 'Graphics.GL.Ext.EXT.Convolution.GL_POST_CONVOLUTION_GREEN_BIAS_EXT', 'Graphics.GL.Ext.EXT.Convolution.GL_POST_CONVOLUTION_GREEN_SCALE_EXT', 'Graphics.GL.Ext.EXT.Convolution.GL_POST_CONVOLUTION_RED_BIAS_EXT', 'Graphics.GL.Ext.EXT.Convolution.GL_POST_CONVOLUTION_RED_SCALE_EXT', 'Graphics.GL.Ext.SGIX.TextureScaleBias.GL_POST_TEXTURE_FILTER_BIAS_RANGE_SGIX', 'Graphics.GL.Ext.SGIX.TextureScaleBias.GL_POST_TEXTURE_FILTER_SCALE_RANGE_SGIX', 'Graphics.GL.Internal.Shared.GL_PROJECTION_MATRIX', 'Graphics.GL.Internal.Shared.GL_PROJECTION_STACK_DEPTH', 'Graphics.GL.Internal.Shared.GL_READ_BUFFER', 'Graphics.GL.Ext.EXT.MultiviewDrawBuffers.GL_READ_BUFFER_EXT', 'Graphics.GL.Ext.NV.ReadBuffer.GL_READ_BUFFER_NV', 'Graphics.GL.Internal.Shared.GL_RED_BIAS', 'Graphics.GL.Internal.Shared.GL_RED_BITS', 'Graphics.GL.Internal.Shared.GL_RED_SCALE', 'Graphics.GL.Ext.SGIX.ReferencePlane.GL_REFERENCE_PLANE_EQUATION_SGIX', 'Graphics.GL.Ext.SGIX.ReferencePlane.GL_REFERENCE_PLANE_SGIX', 'Graphics.GL.Internal.Shared.GL_RENDER_MODE', 'Graphics.GL.Ext.EXT.RescaleNormal.GL_RESCALE_NORMAL_EXT', 'Graphics.GL.Internal.Shared.GL_RGBA_MODE', 'Graphics.GL.Ext.SGIS.Multisample.GL_SAMPLES_SGIS', 'Graphics.GL.Ext.SGIS.Multisample.GL_SAMPLE_ALPHA_TO_MASK_SGIS', 'Graphics.GL.Ext.SGIS.Multisample.GL_SAMPLE_ALPHA_TO_ONE_SGIS', 'Graphics.GL.Ext.SGIS.Multisample.GL_SAMPLE_BUFFERS_SGIS', 'Graphics.GL.Ext.SGIS.Multisample.GL_SAMPLE_MASK_INVERT_SGIS', 'Graphics.GL.Ext.SGIS.Multisample.GL_SAMPLE_MASK_SGIS', 'Graphics.GL.Ext.SGIS.Multisample.GL_SAMPLE_MASK_VALUE_SGIS', 'Graphics.GL.Ext.SGIS.Multisample.GL_SAMPLE_PATTERN_SGIS', 'Graphics.GL.Internal.Shared.GL_SCISSOR_BOX', 'Graphics.GL.Internal.Shared.GL_SCISSOR_TEST', 'Graphics.GL.Internal.Shared.GL_SELECTION_BUFFER_SIZE', 'Graphics.GL.Ext.EXT.Convolution.GL_SEPARABLE_2D_EXT', 'Graphics.GL.Internal.Shared.GL_SHADE_MODEL', 'Graphics.GL.Ext.EXT.SharedTexturePalette.GL_SHARED_TEXTURE_PALETTE_EXT', 'Graphics.GL.Internal.Shared.GL_SMOOTH_LINE_WIDTH_GRANULARITY', 'Graphics.GL.Internal.Shared.GL_SMOOTH_LINE_WIDTH_RANGE', 'Graphics.GL.Internal.Shared.GL_SMOOTH_POINT_SIZE_GRANULARITY', 'Graphics.GL.Internal.Shared.GL_SMOOTH_POINT_SIZE_RANGE', 'Graphics.GL.Ext.SGIX.Sprite.GL_SPRITE_AXIS_SGIX', 'Graphics.GL.Ext.SGIX.Sprite.GL_SPRITE_MODE_SGIX', 'Graphics.GL.Ext.SGIX.Sprite.GL_SPRITE_SGIX', 'Graphics.GL.Ext.SGIX.Sprite.GL_SPRITE_TRANSLATION_SGIX', 'Graphics.GL.Internal.Shared.GL_STENCIL_BITS', 'Graphics.GL.Internal.Shared.GL_STENCIL_CLEAR_VALUE', 'Graphics.GL.Internal.Shared.GL_STENCIL_FAIL', 'Graphics.GL.Internal.Shared.GL_STENCIL_FUNC', 'Graphics.GL.Internal.Shared.GL_STENCIL_PASS_DEPTH_FAIL', 'Graphics.GL.Internal.Shared.GL_STENCIL_PASS_DEPTH_PASS', 'Graphics.GL.Internal.Shared.GL_STENCIL_REF', 'Graphics.GL.Internal.Shared.GL_STENCIL_TEST', 'Graphics.GL.Internal.Shared.GL_STENCIL_VALUE_MASK', 'Graphics.GL.Internal.Shared.GL_STENCIL_WRITEMASK', 'Graphics.GL.Internal.Shared.GL_STEREO', 'Graphics.GL.Internal.Shared.GL_SUBPIXEL_BITS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_1D', 'Graphics.GL.Internal.Shared.GL_TEXTURE_2D', 'Graphics.GL.Ext.EXT.TextureObject.GL_TEXTURE_3D_BINDING_EXT', 'Graphics.GL.Ext.EXT.Texture3D.GL_TEXTURE_3D_EXT', 'Graphics.GL.Ext.SGIS.Texture4D.GL_TEXTURE_4D_BINDING_SGIS', 'Graphics.GL.Ext.SGIS.Texture4D.GL_TEXTURE_4D_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_BINDING_1D', 'Graphics.GL.Internal.Shared.GL_TEXTURE_BINDING_2D', 'Graphics.GL.Internal.Shared.GL_TEXTURE_BINDING_3D', 'Graphics.GL.Ext.SGI.TextureColorTable.GL_TEXTURE_COLOR_TABLE_SGI', 'Graphics.GL.Internal.Shared.GL_TEXTURE_COORD_ARRAY', 'Graphics.GL.Ext.EXT.VertexArray.GL_TEXTURE_COORD_ARRAY_COUNT_EXT', 'Graphics.GL.Internal.Shared.GL_TEXTURE_COORD_ARRAY_SIZE', 'Graphics.GL.Internal.Shared.GL_TEXTURE_COORD_ARRAY_STRIDE', 'Graphics.GL.Internal.Shared.GL_TEXTURE_COORD_ARRAY_TYPE', 'Graphics.GL.Internal.Shared.GL_TEXTURE_GEN_Q', 'Graphics.GL.Internal.Shared.GL_TEXTURE_GEN_R', 'Graphics.GL.Internal.Shared.GL_TEXTURE_GEN_S', 'Graphics.GL.Internal.Shared.GL_TEXTURE_GEN_T', 'Graphics.GL.Internal.Shared.GL_TEXTURE_MATRIX', 'Graphics.GL.Internal.Shared.GL_TEXTURE_STACK_DEPTH', 'Graphics.GL.Internal.Shared.GL_UNPACK_ALIGNMENT', 'Graphics.GL.Ext.EXT.Cmyka.GL_UNPACK_CMYK_HINT_EXT', 'Graphics.GL.Ext.SGIS.Texture4D.GL_UNPACK_IMAGE_DEPTH_SGIS', 'Graphics.GL.Ext.EXT.Texture3D.GL_UNPACK_IMAGE_HEIGHT_EXT', 'Graphics.GL.Internal.Shared.GL_UNPACK_LSB_FIRST', 'Graphics.GL.Ext.SGIX.Resample.GL_UNPACK_RESAMPLE_SGIX', 'Graphics.GL.Internal.Shared.GL_UNPACK_ROW_LENGTH', 'Graphics.GL.Ext.EXT.Texture3D.GL_UNPACK_SKIP_IMAGES_EXT', 'Graphics.GL.Internal.Shared.GL_UNPACK_SKIP_PIXELS', 'Graphics.GL.Internal.Shared.GL_UNPACK_SKIP_ROWS', 'Graphics.GL.Ext.SGIS.Texture4D.GL_UNPACK_SKIP_VOLUMES_SGIS', 'Graphics.GL.Ext.SGIX.Subsample.GL_UNPACK_SUBSAMPLE_RATE_SGIX', 'Graphics.GL.Internal.Shared.GL_UNPACK_SWAP_BYTES', 'Graphics.GL.Internal.Shared.GL_VERTEX_ARRAY', 'Graphics.GL.Ext.EXT.VertexArray.GL_VERTEX_ARRAY_COUNT_EXT', 'Graphics.GL.Internal.Shared.GL_VERTEX_ARRAY_SIZE', 'Graphics.GL.Internal.Shared.GL_VERTEX_ARRAY_STRIDE', 'Graphics.GL.Internal.Shared.GL_VERTEX_ARRAY_TYPE', 'Graphics.GL.Ext.SGIX.VertexPreclip.GL_VERTEX_PRECLIP_HINT_SGIX', 'Graphics.GL.Ext.SGIX.VertexPreclip.GL_VERTEX_PRECLIP_SGIX', 'Graphics.GL.Internal.Shared.GL_VIEWPORT', 'Graphics.GL.Internal.Shared.GL_ZOOM_X', 'Graphics.GL.Internal.Shared.GL_ZOOM_Y'.
--
-- The length of @data@ should be @COMPSIZE(pname)@.
glGetIntegerv :: MonadIO m => GLenum -> Ptr GLint -> m ()
glGetIntegerv = ffienumPtrintIOV glGetIntegervFunPtr
glGetIntegervFunPtr :: FunPtr (GLenum -> Ptr GLint -> IO ())
glGetIntegervFunPtr = unsafePerformIO (getProcAddress "glGetIntegerv")
{-# NOINLINE glGetIntegervFunPtr #-}
-- | Usage: @'glGetMultisamplefv' pname index val@
--
-- The length of @val@ should be @COMPSIZE(pname)@.
glGetMultisamplefv :: MonadIO m => GLenum -> GLuint -> Ptr GLfloat -> m ()
glGetMultisamplefv = ffienumuintPtrfloatIOV glGetMultisamplefvFunPtr
glGetMultisamplefvFunPtr :: FunPtr (GLenum -> GLuint -> Ptr GLfloat -> IO ())
glGetMultisamplefvFunPtr = unsafePerformIO (getProcAddress "glGetMultisamplefv")
{-# NOINLINE glGetMultisamplefvFunPtr #-}
-- | Usage: @'glGetProgramInfoLog' program bufSize length infoLog@
--
-- The length of @length@ should be @1@.
--
-- The length of @infoLog@ should be @bufSize@.
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glGetProgramInfoLog.xhtml>
glGetProgramInfoLog :: MonadIO m => GLuint -> GLsizei -> Ptr GLsizei -> Ptr GLchar -> m ()
glGetProgramInfoLog = ffiuintsizeiPtrsizeiPtrcharIOV glGetProgramInfoLogFunPtr
glGetProgramInfoLogFunPtr :: FunPtr (GLuint -> GLsizei -> Ptr GLsizei -> Ptr GLchar -> IO ())
glGetProgramInfoLogFunPtr = unsafePerformIO (getProcAddress "glGetProgramInfoLog")
{-# NOINLINE glGetProgramInfoLogFunPtr #-}
-- | Usage: @'glGetProgramiv' program pname params@
--
-- The length of @params@ should be @COMPSIZE(pname)@.
glGetProgramiv :: MonadIO m => GLuint -> GLenum -> Ptr GLint -> m ()
glGetProgramiv = ffiuintenumPtrintIOV glGetProgramivFunPtr
glGetProgramivFunPtr :: FunPtr (GLuint -> GLenum -> Ptr GLint -> IO ())
glGetProgramivFunPtr = unsafePerformIO (getProcAddress "glGetProgramiv")
{-# NOINLINE glGetProgramivFunPtr #-}
-- | Usage: @'glGetQueryObjectiv' id pname params@
--
-- The length of @params@ should be @COMPSIZE(pname)@.
glGetQueryObjectiv :: MonadIO m => GLuint -> GLenum -> Ptr GLint -> m ()
glGetQueryObjectiv = ffiuintenumPtrintIOV glGetQueryObjectivFunPtr
glGetQueryObjectivFunPtr :: FunPtr (GLuint -> GLenum -> Ptr GLint -> IO ())
glGetQueryObjectivFunPtr = unsafePerformIO (getProcAddress "glGetQueryObjectiv")
{-# NOINLINE glGetQueryObjectivFunPtr #-}
-- | Usage: @'glGetQueryObjectuiv' id pname params@
--
-- The length of @params@ should be @COMPSIZE(pname)@.
glGetQueryObjectuiv :: MonadIO m => GLuint -> GLenum -> Ptr GLuint -> m ()
glGetQueryObjectuiv = ffiuintenumPtruintIOV glGetQueryObjectuivFunPtr
glGetQueryObjectuivFunPtr :: FunPtr (GLuint -> GLenum -> Ptr GLuint -> IO ())
glGetQueryObjectuivFunPtr = unsafePerformIO (getProcAddress "glGetQueryObjectuiv")
{-# NOINLINE glGetQueryObjectuivFunPtr #-}
-- | Usage: @'glGetQueryiv' target pname params@
--
-- The length of @params@ should be @COMPSIZE(pname)@.
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glGetQueryiv.xhtml>
glGetQueryiv :: MonadIO m => GLenum -> GLenum -> Ptr GLint -> m ()
glGetQueryiv = ffienumenumPtrintIOV glGetQueryivFunPtr
glGetQueryivFunPtr :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
glGetQueryivFunPtr = unsafePerformIO (getProcAddress "glGetQueryiv")
{-# NOINLINE glGetQueryivFunPtr #-}
-- | Usage: @'glGetRenderbufferParameteriv' target pname params@
--
-- The parameter @target@ is a @RenderbufferTarget@.
--
-- The length of @params@ should be @COMPSIZE(pname)@.
glGetRenderbufferParameteriv :: MonadIO m => GLenum -> GLenum -> Ptr GLint -> m ()
glGetRenderbufferParameteriv = ffienumenumPtrintIOV glGetRenderbufferParameterivFunPtr
glGetRenderbufferParameterivFunPtr :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
glGetRenderbufferParameterivFunPtr = unsafePerformIO (getProcAddress "glGetRenderbufferParameteriv")
{-# NOINLINE glGetRenderbufferParameterivFunPtr #-}
-- | Usage: @'glGetShaderInfoLog' shader bufSize length infoLog@
--
-- The length of @length@ should be @1@.
--
-- The length of @infoLog@ should be @bufSize@.
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glGetShaderInfoLog.xhtml>
glGetShaderInfoLog :: MonadIO m => GLuint -> GLsizei -> Ptr GLsizei -> Ptr GLchar -> m ()
glGetShaderInfoLog = ffiuintsizeiPtrsizeiPtrcharIOV glGetShaderInfoLogFunPtr
glGetShaderInfoLogFunPtr :: FunPtr (GLuint -> GLsizei -> Ptr GLsizei -> Ptr GLchar -> IO ())
glGetShaderInfoLogFunPtr = unsafePerformIO (getProcAddress "glGetShaderInfoLog")
{-# NOINLINE glGetShaderInfoLogFunPtr #-}
-- | Usage: @'glGetShaderSource' shader bufSize length source@
--
-- The length of @length@ should be @1@.
--
-- The length of @source@ should be @bufSize@.
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glGetShaderSource.xhtml>
glGetShaderSource :: MonadIO m => GLuint -> GLsizei -> Ptr GLsizei -> Ptr GLchar -> m ()
glGetShaderSource = ffiuintsizeiPtrsizeiPtrcharIOV glGetShaderSourceFunPtr
glGetShaderSourceFunPtr :: FunPtr (GLuint -> GLsizei -> Ptr GLsizei -> Ptr GLchar -> IO ())
glGetShaderSourceFunPtr = unsafePerformIO (getProcAddress "glGetShaderSource")
{-# NOINLINE glGetShaderSourceFunPtr #-}
-- | Usage: @'glGetShaderiv' shader pname params@
--
-- The length of @params@ should be @COMPSIZE(pname)@.
glGetShaderiv :: MonadIO m => GLuint -> GLenum -> Ptr GLint -> m ()
glGetShaderiv = ffiuintenumPtrintIOV glGetShaderivFunPtr
glGetShaderivFunPtr :: FunPtr (GLuint -> GLenum -> Ptr GLint -> IO ())
glGetShaderivFunPtr = unsafePerformIO (getProcAddress "glGetShaderiv")
{-# NOINLINE glGetShaderivFunPtr #-}
-- | Usage: @'glGetString' name@
--
-- The parameter @name@ is a @StringName@, one of: 'Graphics.GL.Internal.Shared.GL_EXTENSIONS', 'Graphics.GL.Internal.Shared.GL_RENDERER', 'Graphics.GL.Internal.Shared.GL_VENDOR', 'Graphics.GL.Internal.Shared.GL_VERSION'.
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glGetString.xhtml>
glGetString :: MonadIO m => GLenum -> m (Ptr GLubyte)
glGetString = ffienumIOPtrubyte glGetStringFunPtr
glGetStringFunPtr :: FunPtr (GLenum -> IO (Ptr GLubyte))
glGetStringFunPtr = unsafePerformIO (getProcAddress "glGetString")
{-# NOINLINE glGetStringFunPtr #-}
-- | Usage: @'glGetStringi' name index@
glGetStringi :: MonadIO m => GLenum -> GLuint -> m (Ptr GLubyte)
glGetStringi = ffienumuintIOPtrubyte glGetStringiFunPtr
glGetStringiFunPtr :: FunPtr (GLenum -> GLuint -> IO (Ptr GLubyte))
glGetStringiFunPtr = unsafePerformIO (getProcAddress "glGetStringi")
{-# NOINLINE glGetStringiFunPtr #-}
-- | Usage: @'glGetSynciv' sync pname bufSize length values@
--
-- The parameter @sync@ is a @sync@.
--
-- The length of @length@ should be @1@.
--
-- The length of @values@ should be @bufSize@.
glGetSynciv :: MonadIO m => GLsync -> GLenum -> GLsizei -> Ptr GLsizei -> Ptr GLint -> m ()
glGetSynciv = ffisyncenumsizeiPtrsizeiPtrintIOV glGetSyncivFunPtr
glGetSyncivFunPtr :: FunPtr (GLsync -> GLenum -> GLsizei -> Ptr GLsizei -> Ptr GLint -> IO ())
glGetSyncivFunPtr = unsafePerformIO (getProcAddress "glGetSynciv")
{-# NOINLINE glGetSyncivFunPtr #-}
-- | Usage: @'glGetTexImage' target level format type pixels@
--
-- The parameter @target@ is a @TextureTarget@, one of: 'Graphics.GL.Ext.SGIS.DetailTexture.GL_DETAIL_TEXTURE_2D_SGIS', 'Graphics.GL.Internal.Shared.GL_PROXY_TEXTURE_1D', 'Graphics.GL.Ext.EXT.Texture.GL_PROXY_TEXTURE_1D_EXT', 'Graphics.GL.Internal.Shared.GL_PROXY_TEXTURE_2D', 'Graphics.GL.Ext.EXT.Texture.GL_PROXY_TEXTURE_2D_EXT', 'Graphics.GL.Internal.Shared.GL_PROXY_TEXTURE_3D', 'Graphics.GL.Ext.EXT.Texture3D.GL_PROXY_TEXTURE_3D_EXT', 'Graphics.GL.Ext.SGIS.Texture4D.GL_PROXY_TEXTURE_4D_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_1D', 'Graphics.GL.Internal.Shared.GL_TEXTURE_2D', 'Graphics.GL.Internal.Shared.GL_TEXTURE_3D', 'Graphics.GL.Ext.EXT.Texture3D.GL_TEXTURE_3D_EXT', 'Graphics.GL.Ext.OES.Texture3D.GL_TEXTURE_3D_OES', 'Graphics.GL.Ext.SGIS.Texture4D.GL_TEXTURE_4D_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_BASE_LEVEL', 'Graphics.GL.Ext.SGIS.TextureLod.GL_TEXTURE_BASE_LEVEL_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_MAX_LEVEL', 'Graphics.GL.Ext.SGIS.TextureLod.GL_TEXTURE_MAX_LEVEL_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_MAX_LOD', 'Graphics.GL.Ext.SGIS.TextureLod.GL_TEXTURE_MAX_LOD_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_MIN_LOD', 'Graphics.GL.Ext.SGIS.TextureLod.GL_TEXTURE_MIN_LOD_SGIS'.
--
-- The parameter @level@ is a @CheckedInt32@.
--
-- The parameter @format@ is a @PixelFormat@, one of: 'Graphics.GL.Ext.EXT.Abgr.GL_ABGR_EXT', 'Graphics.GL.Internal.Shared.GL_ALPHA', 'Graphics.GL.Internal.Shared.GL_BLUE', 'Graphics.GL.Ext.EXT.Cmyka.GL_CMYKA_EXT', 'Graphics.GL.Ext.EXT.Cmyka.GL_CMYK_EXT', 'Graphics.GL.Internal.Shared.GL_COLOR_INDEX', 'Graphics.GL.Internal.Shared.GL_DEPTH_COMPONENT', 'Graphics.GL.Internal.Shared.GL_GREEN', 'Graphics.GL.Internal.Shared.GL_LUMINANCE', 'Graphics.GL.Internal.Shared.GL_LUMINANCE_ALPHA', 'Graphics.GL.Internal.Shared.GL_RED', 'Graphics.GL.Ext.EXT.TextureRg.GL_RED_EXT', 'Graphics.GL.Internal.Shared.GL_RGB', 'Graphics.GL.Internal.Shared.GL_RGBA', 'Graphics.GL.Internal.Shared.GL_STENCIL_INDEX', 'Graphics.GL.Internal.Shared.GL_UNSIGNED_INT', 'Graphics.GL.Internal.Shared.GL_UNSIGNED_SHORT', 'Graphics.GL.Ext.SGIX.Ycrcb.GL_YCRCB_422_SGIX', 'Graphics.GL.Ext.SGIX.Ycrcb.GL_YCRCB_444_SGIX'.
--
-- The parameter @type@ is a @PixelType@, one of: 'Graphics.GL.Internal.Shared.GL_BITMAP', 'Graphics.GL.Internal.Shared.GL_BYTE', 'Graphics.GL.Internal.Shared.GL_FLOAT', 'Graphics.GL.Internal.Shared.GL_INT', 'Graphics.GL.Internal.Shared.GL_SHORT', 'Graphics.GL.Internal.Shared.GL_UNSIGNED_BYTE', 'Graphics.GL.Internal.Shared.GL_UNSIGNED_BYTE_3_3_2', 'Graphics.GL.Ext.EXT.PackedPixels.GL_UNSIGNED_BYTE_3_3_2_EXT', 'Graphics.GL.Internal.Shared.GL_UNSIGNED_INT', 'Graphics.GL.Internal.Shared.GL_UNSIGNED_INT_10_10_10_2', 'Graphics.GL.Ext.EXT.PackedPixels.GL_UNSIGNED_INT_10_10_10_2_EXT', 'Graphics.GL.Internal.Shared.GL_UNSIGNED_INT_8_8_8_8', 'Graphics.GL.Ext.EXT.PackedPixels.GL_UNSIGNED_INT_8_8_8_8_EXT', 'Graphics.GL.Internal.Shared.GL_UNSIGNED_SHORT', 'Graphics.GL.Internal.Shared.GL_UNSIGNED_SHORT_4_4_4_4', 'Graphics.GL.Ext.EXT.PackedPixels.GL_UNSIGNED_SHORT_4_4_4_4_EXT', 'Graphics.GL.Internal.Shared.GL_UNSIGNED_SHORT_5_5_5_1', 'Graphics.GL.Ext.EXT.PackedPixels.GL_UNSIGNED_SHORT_5_5_5_1_EXT'.
--
-- The length of @pixels@ should be @COMPSIZE(target,level,format,type)@.
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glGetTexImage.xhtml>
glGetTexImage :: MonadIO m => GLenum -> GLint -> GLenum -> GLenum -> Ptr () -> m ()
glGetTexImage = ffienumintenumenumPtrVIOV glGetTexImageFunPtr
glGetTexImageFunPtr :: FunPtr (GLenum -> GLint -> GLenum -> GLenum -> Ptr () -> IO ())
glGetTexImageFunPtr = unsafePerformIO (getProcAddress "glGetTexImage")
{-# NOINLINE glGetTexImageFunPtr #-}
-- | Usage: @'glGetTexLevelParameterfv' target level pname params@
--
-- The parameter @target@ is a @TextureTarget@, one of: 'Graphics.GL.Ext.SGIS.DetailTexture.GL_DETAIL_TEXTURE_2D_SGIS', 'Graphics.GL.Internal.Shared.GL_PROXY_TEXTURE_1D', 'Graphics.GL.Ext.EXT.Texture.GL_PROXY_TEXTURE_1D_EXT', 'Graphics.GL.Internal.Shared.GL_PROXY_TEXTURE_2D', 'Graphics.GL.Ext.EXT.Texture.GL_PROXY_TEXTURE_2D_EXT', 'Graphics.GL.Internal.Shared.GL_PROXY_TEXTURE_3D', 'Graphics.GL.Ext.EXT.Texture3D.GL_PROXY_TEXTURE_3D_EXT', 'Graphics.GL.Ext.SGIS.Texture4D.GL_PROXY_TEXTURE_4D_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_1D', 'Graphics.GL.Internal.Shared.GL_TEXTURE_2D', 'Graphics.GL.Internal.Shared.GL_TEXTURE_3D', 'Graphics.GL.Ext.EXT.Texture3D.GL_TEXTURE_3D_EXT', 'Graphics.GL.Ext.OES.Texture3D.GL_TEXTURE_3D_OES', 'Graphics.GL.Ext.SGIS.Texture4D.GL_TEXTURE_4D_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_BASE_LEVEL', 'Graphics.GL.Ext.SGIS.TextureLod.GL_TEXTURE_BASE_LEVEL_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_MAX_LEVEL', 'Graphics.GL.Ext.SGIS.TextureLod.GL_TEXTURE_MAX_LEVEL_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_MAX_LOD', 'Graphics.GL.Ext.SGIS.TextureLod.GL_TEXTURE_MAX_LOD_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_MIN_LOD', 'Graphics.GL.Ext.SGIS.TextureLod.GL_TEXTURE_MIN_LOD_SGIS'.
--
-- The parameter @level@ is a @CheckedInt32@.
--
-- The parameter @pname@ is a @GetTextureParameter@, one of: 'Graphics.GL.Ext.SGIS.DetailTexture.GL_DETAIL_TEXTURE_FUNC_POINTS_SGIS', 'Graphics.GL.Ext.SGIS.DetailTexture.GL_DETAIL_TEXTURE_LEVEL_SGIS', 'Graphics.GL.Ext.SGIS.DetailTexture.GL_DETAIL_TEXTURE_MODE_SGIS', 'Graphics.GL.Ext.SGIS.TextureSelect.GL_DUAL_TEXTURE_SELECT_SGIS', 'Graphics.GL.Ext.SGIS.GenerateMipmap.GL_GENERATE_MIPMAP_SGIS', 'Graphics.GL.Ext.SGIX.TextureScaleBias.GL_POST_TEXTURE_FILTER_BIAS_SGIX', 'Graphics.GL.Ext.SGIX.TextureScaleBias.GL_POST_TEXTURE_FILTER_SCALE_SGIX', 'Graphics.GL.Ext.SGIS.TextureSelect.GL_QUAD_TEXTURE_SELECT_SGIS', 'Graphics.GL.Ext.SGIX.ShadowAmbient.GL_SHADOW_AMBIENT_SGIX', 'Graphics.GL.Ext.SGIS.SharpenTexture.GL_SHARPEN_TEXTURE_FUNC_POINTS_SGIS', 'Graphics.GL.Ext.SGIS.Texture4D.GL_TEXTURE_4DSIZE_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_ALPHA_SIZE', 'Graphics.GL.Ext.SGIS.TextureLod.GL_TEXTURE_BASE_LEVEL_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_BLUE_SIZE', 'Graphics.GL.Internal.Shared.GL_TEXTURE_BORDER', 'Graphics.GL.Internal.Shared.GL_TEXTURE_BORDER_COLOR', 'Graphics.GL.Ext.NV.TextureBorderClamp.GL_TEXTURE_BORDER_COLOR_NV', 'Graphics.GL.Ext.SGIX.Clipmap.GL_TEXTURE_CLIPMAP_CENTER_SGIX', 'Graphics.GL.Ext.SGIX.Clipmap.GL_TEXTURE_CLIPMAP_DEPTH_SGIX', 'Graphics.GL.Ext.SGIX.Clipmap.GL_TEXTURE_CLIPMAP_FRAME_SGIX', 'Graphics.GL.Ext.SGIX.Clipmap.GL_TEXTURE_CLIPMAP_LOD_OFFSET_SGIX', 'Graphics.GL.Ext.SGIX.Clipmap.GL_TEXTURE_CLIPMAP_OFFSET_SGIX', 'Graphics.GL.Ext.SGIX.Clipmap.GL_TEXTURE_CLIPMAP_VIRTUAL_DEPTH_SGIX', 'Graphics.GL.Ext.SGIX.Shadow.GL_TEXTURE_COMPARE_OPERATOR_SGIX', 'Graphics.GL.Ext.SGIX.Shadow.GL_TEXTURE_COMPARE_SGIX', 'Graphics.GL.Internal.Shared.GL_TEXTURE_COMPONENTS', 'Graphics.GL.Ext.EXT.Texture3D.GL_TEXTURE_DEPTH_EXT', 'Graphics.GL.Ext.SGIS.TextureFilter4.GL_TEXTURE_FILTER4_SIZE_SGIS', 'Graphics.GL.Ext.SGIX.Shadow.GL_TEXTURE_GEQUAL_R_SGIX', 'Graphics.GL.Internal.Shared.GL_TEXTURE_GREEN_SIZE', 'Graphics.GL.Internal.Shared.GL_TEXTURE_HEIGHT', 'Graphics.GL.Internal.Shared.GL_TEXTURE_INTENSITY_SIZE', 'Graphics.GL.Internal.Shared.GL_TEXTURE_INTERNAL_FORMAT', 'Graphics.GL.Ext.SGIX.Shadow.GL_TEXTURE_LEQUAL_R_SGIX', 'Graphics.GL.Ext.SGIX.TextureLodBias.GL_TEXTURE_LOD_BIAS_R_SGIX', 'Graphics.GL.Ext.SGIX.TextureLodBias.GL_TEXTURE_LOD_BIAS_S_SGIX', 'Graphics.GL.Ext.SGIX.TextureLodBias.GL_TEXTURE_LOD_BIAS_T_SGIX', 'Graphics.GL.Internal.Shared.GL_TEXTURE_LUMINANCE_SIZE', 'Graphics.GL.Internal.Shared.GL_TEXTURE_MAG_FILTER', 'Graphics.GL.Ext.SGIX.TextureCoordinateClamp.GL_TEXTURE_MAX_CLAMP_R_SGIX', 'Graphics.GL.Ext.SGIX.TextureCoordinateClamp.GL_TEXTURE_MAX_CLAMP_S_SGIX', 'Graphics.GL.Ext.SGIX.TextureCoordinateClamp.GL_TEXTURE_MAX_CLAMP_T_SGIX', 'Graphics.GL.Ext.SGIS.TextureLod.GL_TEXTURE_MAX_LEVEL_SGIS', 'Graphics.GL.Ext.SGIS.TextureLod.GL_TEXTURE_MAX_LOD_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_MIN_FILTER', 'Graphics.GL.Ext.SGIS.TextureLod.GL_TEXTURE_MIN_LOD_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_PRIORITY', 'Graphics.GL.Internal.Shared.GL_TEXTURE_RED_SIZE', 'Graphics.GL.Internal.Shared.GL_TEXTURE_RESIDENT', 'Graphics.GL.Internal.Shared.GL_TEXTURE_WIDTH', 'Graphics.GL.Ext.SGIS.Texture4D.GL_TEXTURE_WRAP_Q_SGIS', 'Graphics.GL.Ext.EXT.Texture3D.GL_TEXTURE_WRAP_R_EXT', 'Graphics.GL.Internal.Shared.GL_TEXTURE_WRAP_S', 'Graphics.GL.Internal.Shared.GL_TEXTURE_WRAP_T'.
--
-- The length of @params@ should be @COMPSIZE(pname)@.
glGetTexLevelParameterfv :: MonadIO m => GLenum -> GLint -> GLenum -> Ptr GLfloat -> m ()
glGetTexLevelParameterfv = ffienumintenumPtrfloatIOV glGetTexLevelParameterfvFunPtr
glGetTexLevelParameterfvFunPtr :: FunPtr (GLenum -> GLint -> GLenum -> Ptr GLfloat -> IO ())
glGetTexLevelParameterfvFunPtr = unsafePerformIO (getProcAddress "glGetTexLevelParameterfv")
{-# NOINLINE glGetTexLevelParameterfvFunPtr #-}
-- | Usage: @'glGetTexLevelParameteriv' target level pname params@
--
-- The parameter @target@ is a @TextureTarget@, one of: 'Graphics.GL.Ext.SGIS.DetailTexture.GL_DETAIL_TEXTURE_2D_SGIS', 'Graphics.GL.Internal.Shared.GL_PROXY_TEXTURE_1D', 'Graphics.GL.Ext.EXT.Texture.GL_PROXY_TEXTURE_1D_EXT', 'Graphics.GL.Internal.Shared.GL_PROXY_TEXTURE_2D', 'Graphics.GL.Ext.EXT.Texture.GL_PROXY_TEXTURE_2D_EXT', 'Graphics.GL.Internal.Shared.GL_PROXY_TEXTURE_3D', 'Graphics.GL.Ext.EXT.Texture3D.GL_PROXY_TEXTURE_3D_EXT', 'Graphics.GL.Ext.SGIS.Texture4D.GL_PROXY_TEXTURE_4D_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_1D', 'Graphics.GL.Internal.Shared.GL_TEXTURE_2D', 'Graphics.GL.Internal.Shared.GL_TEXTURE_3D', 'Graphics.GL.Ext.EXT.Texture3D.GL_TEXTURE_3D_EXT', 'Graphics.GL.Ext.OES.Texture3D.GL_TEXTURE_3D_OES', 'Graphics.GL.Ext.SGIS.Texture4D.GL_TEXTURE_4D_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_BASE_LEVEL', 'Graphics.GL.Ext.SGIS.TextureLod.GL_TEXTURE_BASE_LEVEL_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_MAX_LEVEL', 'Graphics.GL.Ext.SGIS.TextureLod.GL_TEXTURE_MAX_LEVEL_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_MAX_LOD', 'Graphics.GL.Ext.SGIS.TextureLod.GL_TEXTURE_MAX_LOD_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_MIN_LOD', 'Graphics.GL.Ext.SGIS.TextureLod.GL_TEXTURE_MIN_LOD_SGIS'.
--
-- The parameter @level@ is a @CheckedInt32@.
--
-- The parameter @pname@ is a @GetTextureParameter@, one of: 'Graphics.GL.Ext.SGIS.DetailTexture.GL_DETAIL_TEXTURE_FUNC_POINTS_SGIS', 'Graphics.GL.Ext.SGIS.DetailTexture.GL_DETAIL_TEXTURE_LEVEL_SGIS', 'Graphics.GL.Ext.SGIS.DetailTexture.GL_DETAIL_TEXTURE_MODE_SGIS', 'Graphics.GL.Ext.SGIS.TextureSelect.GL_DUAL_TEXTURE_SELECT_SGIS', 'Graphics.GL.Ext.SGIS.GenerateMipmap.GL_GENERATE_MIPMAP_SGIS', 'Graphics.GL.Ext.SGIX.TextureScaleBias.GL_POST_TEXTURE_FILTER_BIAS_SGIX', 'Graphics.GL.Ext.SGIX.TextureScaleBias.GL_POST_TEXTURE_FILTER_SCALE_SGIX', 'Graphics.GL.Ext.SGIS.TextureSelect.GL_QUAD_TEXTURE_SELECT_SGIS', 'Graphics.GL.Ext.SGIX.ShadowAmbient.GL_SHADOW_AMBIENT_SGIX', 'Graphics.GL.Ext.SGIS.SharpenTexture.GL_SHARPEN_TEXTURE_FUNC_POINTS_SGIS', 'Graphics.GL.Ext.SGIS.Texture4D.GL_TEXTURE_4DSIZE_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_ALPHA_SIZE', 'Graphics.GL.Ext.SGIS.TextureLod.GL_TEXTURE_BASE_LEVEL_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_BLUE_SIZE', 'Graphics.GL.Internal.Shared.GL_TEXTURE_BORDER', 'Graphics.GL.Internal.Shared.GL_TEXTURE_BORDER_COLOR', 'Graphics.GL.Ext.NV.TextureBorderClamp.GL_TEXTURE_BORDER_COLOR_NV', 'Graphics.GL.Ext.SGIX.Clipmap.GL_TEXTURE_CLIPMAP_CENTER_SGIX', 'Graphics.GL.Ext.SGIX.Clipmap.GL_TEXTURE_CLIPMAP_DEPTH_SGIX', 'Graphics.GL.Ext.SGIX.Clipmap.GL_TEXTURE_CLIPMAP_FRAME_SGIX', 'Graphics.GL.Ext.SGIX.Clipmap.GL_TEXTURE_CLIPMAP_LOD_OFFSET_SGIX', 'Graphics.GL.Ext.SGIX.Clipmap.GL_TEXTURE_CLIPMAP_OFFSET_SGIX', 'Graphics.GL.Ext.SGIX.Clipmap.GL_TEXTURE_CLIPMAP_VIRTUAL_DEPTH_SGIX', 'Graphics.GL.Ext.SGIX.Shadow.GL_TEXTURE_COMPARE_OPERATOR_SGIX', 'Graphics.GL.Ext.SGIX.Shadow.GL_TEXTURE_COMPARE_SGIX', 'Graphics.GL.Internal.Shared.GL_TEXTURE_COMPONENTS', 'Graphics.GL.Ext.EXT.Texture3D.GL_TEXTURE_DEPTH_EXT', 'Graphics.GL.Ext.SGIS.TextureFilter4.GL_TEXTURE_FILTER4_SIZE_SGIS', 'Graphics.GL.Ext.SGIX.Shadow.GL_TEXTURE_GEQUAL_R_SGIX', 'Graphics.GL.Internal.Shared.GL_TEXTURE_GREEN_SIZE', 'Graphics.GL.Internal.Shared.GL_TEXTURE_HEIGHT', 'Graphics.GL.Internal.Shared.GL_TEXTURE_INTENSITY_SIZE', 'Graphics.GL.Internal.Shared.GL_TEXTURE_INTERNAL_FORMAT', 'Graphics.GL.Ext.SGIX.Shadow.GL_TEXTURE_LEQUAL_R_SGIX', 'Graphics.GL.Ext.SGIX.TextureLodBias.GL_TEXTURE_LOD_BIAS_R_SGIX', 'Graphics.GL.Ext.SGIX.TextureLodBias.GL_TEXTURE_LOD_BIAS_S_SGIX', 'Graphics.GL.Ext.SGIX.TextureLodBias.GL_TEXTURE_LOD_BIAS_T_SGIX', 'Graphics.GL.Internal.Shared.GL_TEXTURE_LUMINANCE_SIZE', 'Graphics.GL.Internal.Shared.GL_TEXTURE_MAG_FILTER', 'Graphics.GL.Ext.SGIX.TextureCoordinateClamp.GL_TEXTURE_MAX_CLAMP_R_SGIX', 'Graphics.GL.Ext.SGIX.TextureCoordinateClamp.GL_TEXTURE_MAX_CLAMP_S_SGIX', 'Graphics.GL.Ext.SGIX.TextureCoordinateClamp.GL_TEXTURE_MAX_CLAMP_T_SGIX', 'Graphics.GL.Ext.SGIS.TextureLod.GL_TEXTURE_MAX_LEVEL_SGIS', 'Graphics.GL.Ext.SGIS.TextureLod.GL_TEXTURE_MAX_LOD_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_MIN_FILTER', 'Graphics.GL.Ext.SGIS.TextureLod.GL_TEXTURE_MIN_LOD_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_PRIORITY', 'Graphics.GL.Internal.Shared.GL_TEXTURE_RED_SIZE', 'Graphics.GL.Internal.Shared.GL_TEXTURE_RESIDENT', 'Graphics.GL.Internal.Shared.GL_TEXTURE_WIDTH', 'Graphics.GL.Ext.SGIS.Texture4D.GL_TEXTURE_WRAP_Q_SGIS', 'Graphics.GL.Ext.EXT.Texture3D.GL_TEXTURE_WRAP_R_EXT', 'Graphics.GL.Internal.Shared.GL_TEXTURE_WRAP_S', 'Graphics.GL.Internal.Shared.GL_TEXTURE_WRAP_T'.
--
-- The length of @params@ should be @COMPSIZE(pname)@.
glGetTexLevelParameteriv :: MonadIO m => GLenum -> GLint -> GLenum -> Ptr GLint -> m ()
glGetTexLevelParameteriv = ffienumintenumPtrintIOV glGetTexLevelParameterivFunPtr
glGetTexLevelParameterivFunPtr :: FunPtr (GLenum -> GLint -> GLenum -> Ptr GLint -> IO ())
glGetTexLevelParameterivFunPtr = unsafePerformIO (getProcAddress "glGetTexLevelParameteriv")
{-# NOINLINE glGetTexLevelParameterivFunPtr #-}
-- | Usage: @'glGetTexParameterIiv' target pname params@
--
-- The parameter @target@ is a @TextureTarget@, one of: 'Graphics.GL.Ext.SGIS.DetailTexture.GL_DETAIL_TEXTURE_2D_SGIS', 'Graphics.GL.Internal.Shared.GL_PROXY_TEXTURE_1D', 'Graphics.GL.Ext.EXT.Texture.GL_PROXY_TEXTURE_1D_EXT', 'Graphics.GL.Internal.Shared.GL_PROXY_TEXTURE_2D', 'Graphics.GL.Ext.EXT.Texture.GL_PROXY_TEXTURE_2D_EXT', 'Graphics.GL.Internal.Shared.GL_PROXY_TEXTURE_3D', 'Graphics.GL.Ext.EXT.Texture3D.GL_PROXY_TEXTURE_3D_EXT', 'Graphics.GL.Ext.SGIS.Texture4D.GL_PROXY_TEXTURE_4D_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_1D', 'Graphics.GL.Internal.Shared.GL_TEXTURE_2D', 'Graphics.GL.Internal.Shared.GL_TEXTURE_3D', 'Graphics.GL.Ext.EXT.Texture3D.GL_TEXTURE_3D_EXT', 'Graphics.GL.Ext.OES.Texture3D.GL_TEXTURE_3D_OES', 'Graphics.GL.Ext.SGIS.Texture4D.GL_TEXTURE_4D_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_BASE_LEVEL', 'Graphics.GL.Ext.SGIS.TextureLod.GL_TEXTURE_BASE_LEVEL_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_MAX_LEVEL', 'Graphics.GL.Ext.SGIS.TextureLod.GL_TEXTURE_MAX_LEVEL_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_MAX_LOD', 'Graphics.GL.Ext.SGIS.TextureLod.GL_TEXTURE_MAX_LOD_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_MIN_LOD', 'Graphics.GL.Ext.SGIS.TextureLod.GL_TEXTURE_MIN_LOD_SGIS'.
--
-- The parameter @pname@ is a @GetTextureParameter@, one of: 'Graphics.GL.Ext.SGIS.DetailTexture.GL_DETAIL_TEXTURE_FUNC_POINTS_SGIS', 'Graphics.GL.Ext.SGIS.DetailTexture.GL_DETAIL_TEXTURE_LEVEL_SGIS', 'Graphics.GL.Ext.SGIS.DetailTexture.GL_DETAIL_TEXTURE_MODE_SGIS', 'Graphics.GL.Ext.SGIS.TextureSelect.GL_DUAL_TEXTURE_SELECT_SGIS', 'Graphics.GL.Ext.SGIS.GenerateMipmap.GL_GENERATE_MIPMAP_SGIS', 'Graphics.GL.Ext.SGIX.TextureScaleBias.GL_POST_TEXTURE_FILTER_BIAS_SGIX', 'Graphics.GL.Ext.SGIX.TextureScaleBias.GL_POST_TEXTURE_FILTER_SCALE_SGIX', 'Graphics.GL.Ext.SGIS.TextureSelect.GL_QUAD_TEXTURE_SELECT_SGIS', 'Graphics.GL.Ext.SGIX.ShadowAmbient.GL_SHADOW_AMBIENT_SGIX', 'Graphics.GL.Ext.SGIS.SharpenTexture.GL_SHARPEN_TEXTURE_FUNC_POINTS_SGIS', 'Graphics.GL.Ext.SGIS.Texture4D.GL_TEXTURE_4DSIZE_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_ALPHA_SIZE', 'Graphics.GL.Ext.SGIS.TextureLod.GL_TEXTURE_BASE_LEVEL_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_BLUE_SIZE', 'Graphics.GL.Internal.Shared.GL_TEXTURE_BORDER', 'Graphics.GL.Internal.Shared.GL_TEXTURE_BORDER_COLOR', 'Graphics.GL.Ext.NV.TextureBorderClamp.GL_TEXTURE_BORDER_COLOR_NV', 'Graphics.GL.Ext.SGIX.Clipmap.GL_TEXTURE_CLIPMAP_CENTER_SGIX', 'Graphics.GL.Ext.SGIX.Clipmap.GL_TEXTURE_CLIPMAP_DEPTH_SGIX', 'Graphics.GL.Ext.SGIX.Clipmap.GL_TEXTURE_CLIPMAP_FRAME_SGIX', 'Graphics.GL.Ext.SGIX.Clipmap.GL_TEXTURE_CLIPMAP_LOD_OFFSET_SGIX', 'Graphics.GL.Ext.SGIX.Clipmap.GL_TEXTURE_CLIPMAP_OFFSET_SGIX', 'Graphics.GL.Ext.SGIX.Clipmap.GL_TEXTURE_CLIPMAP_VIRTUAL_DEPTH_SGIX', 'Graphics.GL.Ext.SGIX.Shadow.GL_TEXTURE_COMPARE_OPERATOR_SGIX', 'Graphics.GL.Ext.SGIX.Shadow.GL_TEXTURE_COMPARE_SGIX', 'Graphics.GL.Internal.Shared.GL_TEXTURE_COMPONENTS', 'Graphics.GL.Ext.EXT.Texture3D.GL_TEXTURE_DEPTH_EXT', 'Graphics.GL.Ext.SGIS.TextureFilter4.GL_TEXTURE_FILTER4_SIZE_SGIS', 'Graphics.GL.Ext.SGIX.Shadow.GL_TEXTURE_GEQUAL_R_SGIX', 'Graphics.GL.Internal.Shared.GL_TEXTURE_GREEN_SIZE', 'Graphics.GL.Internal.Shared.GL_TEXTURE_HEIGHT', 'Graphics.GL.Internal.Shared.GL_TEXTURE_INTENSITY_SIZE', 'Graphics.GL.Internal.Shared.GL_TEXTURE_INTERNAL_FORMAT', 'Graphics.GL.Ext.SGIX.Shadow.GL_TEXTURE_LEQUAL_R_SGIX', 'Graphics.GL.Ext.SGIX.TextureLodBias.GL_TEXTURE_LOD_BIAS_R_SGIX', 'Graphics.GL.Ext.SGIX.TextureLodBias.GL_TEXTURE_LOD_BIAS_S_SGIX', 'Graphics.GL.Ext.SGIX.TextureLodBias.GL_TEXTURE_LOD_BIAS_T_SGIX', 'Graphics.GL.Internal.Shared.GL_TEXTURE_LUMINANCE_SIZE', 'Graphics.GL.Internal.Shared.GL_TEXTURE_MAG_FILTER', 'Graphics.GL.Ext.SGIX.TextureCoordinateClamp.GL_TEXTURE_MAX_CLAMP_R_SGIX', 'Graphics.GL.Ext.SGIX.TextureCoordinateClamp.GL_TEXTURE_MAX_CLAMP_S_SGIX', 'Graphics.GL.Ext.SGIX.TextureCoordinateClamp.GL_TEXTURE_MAX_CLAMP_T_SGIX', 'Graphics.GL.Ext.SGIS.TextureLod.GL_TEXTURE_MAX_LEVEL_SGIS', 'Graphics.GL.Ext.SGIS.TextureLod.GL_TEXTURE_MAX_LOD_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_MIN_FILTER', 'Graphics.GL.Ext.SGIS.TextureLod.GL_TEXTURE_MIN_LOD_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_PRIORITY', 'Graphics.GL.Internal.Shared.GL_TEXTURE_RED_SIZE', 'Graphics.GL.Internal.Shared.GL_TEXTURE_RESIDENT', 'Graphics.GL.Internal.Shared.GL_TEXTURE_WIDTH', 'Graphics.GL.Ext.SGIS.Texture4D.GL_TEXTURE_WRAP_Q_SGIS', 'Graphics.GL.Ext.EXT.Texture3D.GL_TEXTURE_WRAP_R_EXT', 'Graphics.GL.Internal.Shared.GL_TEXTURE_WRAP_S', 'Graphics.GL.Internal.Shared.GL_TEXTURE_WRAP_T'.
--
-- The length of @params@ should be @COMPSIZE(pname)@.
glGetTexParameterIiv :: MonadIO m => GLenum -> GLenum -> Ptr GLint -> m ()
glGetTexParameterIiv = ffienumenumPtrintIOV glGetTexParameterIivFunPtr
glGetTexParameterIivFunPtr :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
glGetTexParameterIivFunPtr = unsafePerformIO (getProcAddress "glGetTexParameterIiv")
{-# NOINLINE glGetTexParameterIivFunPtr #-}
-- | Usage: @'glGetTexParameterIuiv' target pname params@
--
-- The parameter @target@ is a @TextureTarget@, one of: 'Graphics.GL.Ext.SGIS.DetailTexture.GL_DETAIL_TEXTURE_2D_SGIS', 'Graphics.GL.Internal.Shared.GL_PROXY_TEXTURE_1D', 'Graphics.GL.Ext.EXT.Texture.GL_PROXY_TEXTURE_1D_EXT', 'Graphics.GL.Internal.Shared.GL_PROXY_TEXTURE_2D', 'Graphics.GL.Ext.EXT.Texture.GL_PROXY_TEXTURE_2D_EXT', 'Graphics.GL.Internal.Shared.GL_PROXY_TEXTURE_3D', 'Graphics.GL.Ext.EXT.Texture3D.GL_PROXY_TEXTURE_3D_EXT', 'Graphics.GL.Ext.SGIS.Texture4D.GL_PROXY_TEXTURE_4D_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_1D', 'Graphics.GL.Internal.Shared.GL_TEXTURE_2D', 'Graphics.GL.Internal.Shared.GL_TEXTURE_3D', 'Graphics.GL.Ext.EXT.Texture3D.GL_TEXTURE_3D_EXT', 'Graphics.GL.Ext.OES.Texture3D.GL_TEXTURE_3D_OES', 'Graphics.GL.Ext.SGIS.Texture4D.GL_TEXTURE_4D_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_BASE_LEVEL', 'Graphics.GL.Ext.SGIS.TextureLod.GL_TEXTURE_BASE_LEVEL_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_MAX_LEVEL', 'Graphics.GL.Ext.SGIS.TextureLod.GL_TEXTURE_MAX_LEVEL_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_MAX_LOD', 'Graphics.GL.Ext.SGIS.TextureLod.GL_TEXTURE_MAX_LOD_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_MIN_LOD', 'Graphics.GL.Ext.SGIS.TextureLod.GL_TEXTURE_MIN_LOD_SGIS'.
--
-- The parameter @pname@ is a @GetTextureParameter@, one of: 'Graphics.GL.Ext.SGIS.DetailTexture.GL_DETAIL_TEXTURE_FUNC_POINTS_SGIS', 'Graphics.GL.Ext.SGIS.DetailTexture.GL_DETAIL_TEXTURE_LEVEL_SGIS', 'Graphics.GL.Ext.SGIS.DetailTexture.GL_DETAIL_TEXTURE_MODE_SGIS', 'Graphics.GL.Ext.SGIS.TextureSelect.GL_DUAL_TEXTURE_SELECT_SGIS', 'Graphics.GL.Ext.SGIS.GenerateMipmap.GL_GENERATE_MIPMAP_SGIS', 'Graphics.GL.Ext.SGIX.TextureScaleBias.GL_POST_TEXTURE_FILTER_BIAS_SGIX', 'Graphics.GL.Ext.SGIX.TextureScaleBias.GL_POST_TEXTURE_FILTER_SCALE_SGIX', 'Graphics.GL.Ext.SGIS.TextureSelect.GL_QUAD_TEXTURE_SELECT_SGIS', 'Graphics.GL.Ext.SGIX.ShadowAmbient.GL_SHADOW_AMBIENT_SGIX', 'Graphics.GL.Ext.SGIS.SharpenTexture.GL_SHARPEN_TEXTURE_FUNC_POINTS_SGIS', 'Graphics.GL.Ext.SGIS.Texture4D.GL_TEXTURE_4DSIZE_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_ALPHA_SIZE', 'Graphics.GL.Ext.SGIS.TextureLod.GL_TEXTURE_BASE_LEVEL_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_BLUE_SIZE', 'Graphics.GL.Internal.Shared.GL_TEXTURE_BORDER', 'Graphics.GL.Internal.Shared.GL_TEXTURE_BORDER_COLOR', 'Graphics.GL.Ext.NV.TextureBorderClamp.GL_TEXTURE_BORDER_COLOR_NV', 'Graphics.GL.Ext.SGIX.Clipmap.GL_TEXTURE_CLIPMAP_CENTER_SGIX', 'Graphics.GL.Ext.SGIX.Clipmap.GL_TEXTURE_CLIPMAP_DEPTH_SGIX', 'Graphics.GL.Ext.SGIX.Clipmap.GL_TEXTURE_CLIPMAP_FRAME_SGIX', 'Graphics.GL.Ext.SGIX.Clipmap.GL_TEXTURE_CLIPMAP_LOD_OFFSET_SGIX', 'Graphics.GL.Ext.SGIX.Clipmap.GL_TEXTURE_CLIPMAP_OFFSET_SGIX', 'Graphics.GL.Ext.SGIX.Clipmap.GL_TEXTURE_CLIPMAP_VIRTUAL_DEPTH_SGIX', 'Graphics.GL.Ext.SGIX.Shadow.GL_TEXTURE_COMPARE_OPERATOR_SGIX', 'Graphics.GL.Ext.SGIX.Shadow.GL_TEXTURE_COMPARE_SGIX', 'Graphics.GL.Internal.Shared.GL_TEXTURE_COMPONENTS', 'Graphics.GL.Ext.EXT.Texture3D.GL_TEXTURE_DEPTH_EXT', 'Graphics.GL.Ext.SGIS.TextureFilter4.GL_TEXTURE_FILTER4_SIZE_SGIS', 'Graphics.GL.Ext.SGIX.Shadow.GL_TEXTURE_GEQUAL_R_SGIX', 'Graphics.GL.Internal.Shared.GL_TEXTURE_GREEN_SIZE', 'Graphics.GL.Internal.Shared.GL_TEXTURE_HEIGHT', 'Graphics.GL.Internal.Shared.GL_TEXTURE_INTENSITY_SIZE', 'Graphics.GL.Internal.Shared.GL_TEXTURE_INTERNAL_FORMAT', 'Graphics.GL.Ext.SGIX.Shadow.GL_TEXTURE_LEQUAL_R_SGIX', 'Graphics.GL.Ext.SGIX.TextureLodBias.GL_TEXTURE_LOD_BIAS_R_SGIX', 'Graphics.GL.Ext.SGIX.TextureLodBias.GL_TEXTURE_LOD_BIAS_S_SGIX', 'Graphics.GL.Ext.SGIX.TextureLodBias.GL_TEXTURE_LOD_BIAS_T_SGIX', 'Graphics.GL.Internal.Shared.GL_TEXTURE_LUMINANCE_SIZE', 'Graphics.GL.Internal.Shared.GL_TEXTURE_MAG_FILTER', 'Graphics.GL.Ext.SGIX.TextureCoordinateClamp.GL_TEXTURE_MAX_CLAMP_R_SGIX', 'Graphics.GL.Ext.SGIX.TextureCoordinateClamp.GL_TEXTURE_MAX_CLAMP_S_SGIX', 'Graphics.GL.Ext.SGIX.TextureCoordinateClamp.GL_TEXTURE_MAX_CLAMP_T_SGIX', 'Graphics.GL.Ext.SGIS.TextureLod.GL_TEXTURE_MAX_LEVEL_SGIS', 'Graphics.GL.Ext.SGIS.TextureLod.GL_TEXTURE_MAX_LOD_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_MIN_FILTER', 'Graphics.GL.Ext.SGIS.TextureLod.GL_TEXTURE_MIN_LOD_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_PRIORITY', 'Graphics.GL.Internal.Shared.GL_TEXTURE_RED_SIZE', 'Graphics.GL.Internal.Shared.GL_TEXTURE_RESIDENT', 'Graphics.GL.Internal.Shared.GL_TEXTURE_WIDTH', 'Graphics.GL.Ext.SGIS.Texture4D.GL_TEXTURE_WRAP_Q_SGIS', 'Graphics.GL.Ext.EXT.Texture3D.GL_TEXTURE_WRAP_R_EXT', 'Graphics.GL.Internal.Shared.GL_TEXTURE_WRAP_S', 'Graphics.GL.Internal.Shared.GL_TEXTURE_WRAP_T'.
--
-- The length of @params@ should be @COMPSIZE(pname)@.
glGetTexParameterIuiv :: MonadIO m => GLenum -> GLenum -> Ptr GLuint -> m ()
glGetTexParameterIuiv = ffienumenumPtruintIOV glGetTexParameterIuivFunPtr
glGetTexParameterIuivFunPtr :: FunPtr (GLenum -> GLenum -> Ptr GLuint -> IO ())
glGetTexParameterIuivFunPtr = unsafePerformIO (getProcAddress "glGetTexParameterIuiv")
{-# NOINLINE glGetTexParameterIuivFunPtr #-}
-- | Usage: @'glGetTexParameterfv' target pname params@
--
-- The parameter @target@ is a @TextureTarget@, one of: 'Graphics.GL.Ext.SGIS.DetailTexture.GL_DETAIL_TEXTURE_2D_SGIS', 'Graphics.GL.Internal.Shared.GL_PROXY_TEXTURE_1D', 'Graphics.GL.Ext.EXT.Texture.GL_PROXY_TEXTURE_1D_EXT', 'Graphics.GL.Internal.Shared.GL_PROXY_TEXTURE_2D', 'Graphics.GL.Ext.EXT.Texture.GL_PROXY_TEXTURE_2D_EXT', 'Graphics.GL.Internal.Shared.GL_PROXY_TEXTURE_3D', 'Graphics.GL.Ext.EXT.Texture3D.GL_PROXY_TEXTURE_3D_EXT', 'Graphics.GL.Ext.SGIS.Texture4D.GL_PROXY_TEXTURE_4D_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_1D', 'Graphics.GL.Internal.Shared.GL_TEXTURE_2D', 'Graphics.GL.Internal.Shared.GL_TEXTURE_3D', 'Graphics.GL.Ext.EXT.Texture3D.GL_TEXTURE_3D_EXT', 'Graphics.GL.Ext.OES.Texture3D.GL_TEXTURE_3D_OES', 'Graphics.GL.Ext.SGIS.Texture4D.GL_TEXTURE_4D_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_BASE_LEVEL', 'Graphics.GL.Ext.SGIS.TextureLod.GL_TEXTURE_BASE_LEVEL_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_MAX_LEVEL', 'Graphics.GL.Ext.SGIS.TextureLod.GL_TEXTURE_MAX_LEVEL_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_MAX_LOD', 'Graphics.GL.Ext.SGIS.TextureLod.GL_TEXTURE_MAX_LOD_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_MIN_LOD', 'Graphics.GL.Ext.SGIS.TextureLod.GL_TEXTURE_MIN_LOD_SGIS'.
--
-- The parameter @pname@ is a @GetTextureParameter@, one of: 'Graphics.GL.Ext.SGIS.DetailTexture.GL_DETAIL_TEXTURE_FUNC_POINTS_SGIS', 'Graphics.GL.Ext.SGIS.DetailTexture.GL_DETAIL_TEXTURE_LEVEL_SGIS', 'Graphics.GL.Ext.SGIS.DetailTexture.GL_DETAIL_TEXTURE_MODE_SGIS', 'Graphics.GL.Ext.SGIS.TextureSelect.GL_DUAL_TEXTURE_SELECT_SGIS', 'Graphics.GL.Ext.SGIS.GenerateMipmap.GL_GENERATE_MIPMAP_SGIS', 'Graphics.GL.Ext.SGIX.TextureScaleBias.GL_POST_TEXTURE_FILTER_BIAS_SGIX', 'Graphics.GL.Ext.SGIX.TextureScaleBias.GL_POST_TEXTURE_FILTER_SCALE_SGIX', 'Graphics.GL.Ext.SGIS.TextureSelect.GL_QUAD_TEXTURE_SELECT_SGIS', 'Graphics.GL.Ext.SGIX.ShadowAmbient.GL_SHADOW_AMBIENT_SGIX', 'Graphics.GL.Ext.SGIS.SharpenTexture.GL_SHARPEN_TEXTURE_FUNC_POINTS_SGIS', 'Graphics.GL.Ext.SGIS.Texture4D.GL_TEXTURE_4DSIZE_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_ALPHA_SIZE', 'Graphics.GL.Ext.SGIS.TextureLod.GL_TEXTURE_BASE_LEVEL_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_BLUE_SIZE', 'Graphics.GL.Internal.Shared.GL_TEXTURE_BORDER', 'Graphics.GL.Internal.Shared.GL_TEXTURE_BORDER_COLOR', 'Graphics.GL.Ext.NV.TextureBorderClamp.GL_TEXTURE_BORDER_COLOR_NV', 'Graphics.GL.Ext.SGIX.Clipmap.GL_TEXTURE_CLIPMAP_CENTER_SGIX', 'Graphics.GL.Ext.SGIX.Clipmap.GL_TEXTURE_CLIPMAP_DEPTH_SGIX', 'Graphics.GL.Ext.SGIX.Clipmap.GL_TEXTURE_CLIPMAP_FRAME_SGIX', 'Graphics.GL.Ext.SGIX.Clipmap.GL_TEXTURE_CLIPMAP_LOD_OFFSET_SGIX', 'Graphics.GL.Ext.SGIX.Clipmap.GL_TEXTURE_CLIPMAP_OFFSET_SGIX', 'Graphics.GL.Ext.SGIX.Clipmap.GL_TEXTURE_CLIPMAP_VIRTUAL_DEPTH_SGIX', 'Graphics.GL.Ext.SGIX.Shadow.GL_TEXTURE_COMPARE_OPERATOR_SGIX', 'Graphics.GL.Ext.SGIX.Shadow.GL_TEXTURE_COMPARE_SGIX', 'Graphics.GL.Internal.Shared.GL_TEXTURE_COMPONENTS', 'Graphics.GL.Ext.EXT.Texture3D.GL_TEXTURE_DEPTH_EXT', 'Graphics.GL.Ext.SGIS.TextureFilter4.GL_TEXTURE_FILTER4_SIZE_SGIS', 'Graphics.GL.Ext.SGIX.Shadow.GL_TEXTURE_GEQUAL_R_SGIX', 'Graphics.GL.Internal.Shared.GL_TEXTURE_GREEN_SIZE', 'Graphics.GL.Internal.Shared.GL_TEXTURE_HEIGHT', 'Graphics.GL.Internal.Shared.GL_TEXTURE_INTENSITY_SIZE', 'Graphics.GL.Internal.Shared.GL_TEXTURE_INTERNAL_FORMAT', 'Graphics.GL.Ext.SGIX.Shadow.GL_TEXTURE_LEQUAL_R_SGIX', 'Graphics.GL.Ext.SGIX.TextureLodBias.GL_TEXTURE_LOD_BIAS_R_SGIX', 'Graphics.GL.Ext.SGIX.TextureLodBias.GL_TEXTURE_LOD_BIAS_S_SGIX', 'Graphics.GL.Ext.SGIX.TextureLodBias.GL_TEXTURE_LOD_BIAS_T_SGIX', 'Graphics.GL.Internal.Shared.GL_TEXTURE_LUMINANCE_SIZE', 'Graphics.GL.Internal.Shared.GL_TEXTURE_MAG_FILTER', 'Graphics.GL.Ext.SGIX.TextureCoordinateClamp.GL_TEXTURE_MAX_CLAMP_R_SGIX', 'Graphics.GL.Ext.SGIX.TextureCoordinateClamp.GL_TEXTURE_MAX_CLAMP_S_SGIX', 'Graphics.GL.Ext.SGIX.TextureCoordinateClamp.GL_TEXTURE_MAX_CLAMP_T_SGIX', 'Graphics.GL.Ext.SGIS.TextureLod.GL_TEXTURE_MAX_LEVEL_SGIS', 'Graphics.GL.Ext.SGIS.TextureLod.GL_TEXTURE_MAX_LOD_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_MIN_FILTER', 'Graphics.GL.Ext.SGIS.TextureLod.GL_TEXTURE_MIN_LOD_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_PRIORITY', 'Graphics.GL.Internal.Shared.GL_TEXTURE_RED_SIZE', 'Graphics.GL.Internal.Shared.GL_TEXTURE_RESIDENT', 'Graphics.GL.Internal.Shared.GL_TEXTURE_WIDTH', 'Graphics.GL.Ext.SGIS.Texture4D.GL_TEXTURE_WRAP_Q_SGIS', 'Graphics.GL.Ext.EXT.Texture3D.GL_TEXTURE_WRAP_R_EXT', 'Graphics.GL.Internal.Shared.GL_TEXTURE_WRAP_S', 'Graphics.GL.Internal.Shared.GL_TEXTURE_WRAP_T'.
--
-- The length of @params@ should be @COMPSIZE(pname)@.
glGetTexParameterfv :: MonadIO m => GLenum -> GLenum -> Ptr GLfloat -> m ()
glGetTexParameterfv = ffienumenumPtrfloatIOV glGetTexParameterfvFunPtr
glGetTexParameterfvFunPtr :: FunPtr (GLenum -> GLenum -> Ptr GLfloat -> IO ())
glGetTexParameterfvFunPtr = unsafePerformIO (getProcAddress "glGetTexParameterfv")
{-# NOINLINE glGetTexParameterfvFunPtr #-}
-- | Usage: @'glGetTexParameteriv' target pname params@
--
-- The parameter @target@ is a @TextureTarget@, one of: 'Graphics.GL.Ext.SGIS.DetailTexture.GL_DETAIL_TEXTURE_2D_SGIS', 'Graphics.GL.Internal.Shared.GL_PROXY_TEXTURE_1D', 'Graphics.GL.Ext.EXT.Texture.GL_PROXY_TEXTURE_1D_EXT', 'Graphics.GL.Internal.Shared.GL_PROXY_TEXTURE_2D', 'Graphics.GL.Ext.EXT.Texture.GL_PROXY_TEXTURE_2D_EXT', 'Graphics.GL.Internal.Shared.GL_PROXY_TEXTURE_3D', 'Graphics.GL.Ext.EXT.Texture3D.GL_PROXY_TEXTURE_3D_EXT', 'Graphics.GL.Ext.SGIS.Texture4D.GL_PROXY_TEXTURE_4D_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_1D', 'Graphics.GL.Internal.Shared.GL_TEXTURE_2D', 'Graphics.GL.Internal.Shared.GL_TEXTURE_3D', 'Graphics.GL.Ext.EXT.Texture3D.GL_TEXTURE_3D_EXT', 'Graphics.GL.Ext.OES.Texture3D.GL_TEXTURE_3D_OES', 'Graphics.GL.Ext.SGIS.Texture4D.GL_TEXTURE_4D_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_BASE_LEVEL', 'Graphics.GL.Ext.SGIS.TextureLod.GL_TEXTURE_BASE_LEVEL_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_MAX_LEVEL', 'Graphics.GL.Ext.SGIS.TextureLod.GL_TEXTURE_MAX_LEVEL_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_MAX_LOD', 'Graphics.GL.Ext.SGIS.TextureLod.GL_TEXTURE_MAX_LOD_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_MIN_LOD', 'Graphics.GL.Ext.SGIS.TextureLod.GL_TEXTURE_MIN_LOD_SGIS'.
--
-- The parameter @pname@ is a @GetTextureParameter@, one of: 'Graphics.GL.Ext.SGIS.DetailTexture.GL_DETAIL_TEXTURE_FUNC_POINTS_SGIS', 'Graphics.GL.Ext.SGIS.DetailTexture.GL_DETAIL_TEXTURE_LEVEL_SGIS', 'Graphics.GL.Ext.SGIS.DetailTexture.GL_DETAIL_TEXTURE_MODE_SGIS', 'Graphics.GL.Ext.SGIS.TextureSelect.GL_DUAL_TEXTURE_SELECT_SGIS', 'Graphics.GL.Ext.SGIS.GenerateMipmap.GL_GENERATE_MIPMAP_SGIS', 'Graphics.GL.Ext.SGIX.TextureScaleBias.GL_POST_TEXTURE_FILTER_BIAS_SGIX', 'Graphics.GL.Ext.SGIX.TextureScaleBias.GL_POST_TEXTURE_FILTER_SCALE_SGIX', 'Graphics.GL.Ext.SGIS.TextureSelect.GL_QUAD_TEXTURE_SELECT_SGIS', 'Graphics.GL.Ext.SGIX.ShadowAmbient.GL_SHADOW_AMBIENT_SGIX', 'Graphics.GL.Ext.SGIS.SharpenTexture.GL_SHARPEN_TEXTURE_FUNC_POINTS_SGIS', 'Graphics.GL.Ext.SGIS.Texture4D.GL_TEXTURE_4DSIZE_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_ALPHA_SIZE', 'Graphics.GL.Ext.SGIS.TextureLod.GL_TEXTURE_BASE_LEVEL_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_BLUE_SIZE', 'Graphics.GL.Internal.Shared.GL_TEXTURE_BORDER', 'Graphics.GL.Internal.Shared.GL_TEXTURE_BORDER_COLOR', 'Graphics.GL.Ext.NV.TextureBorderClamp.GL_TEXTURE_BORDER_COLOR_NV', 'Graphics.GL.Ext.SGIX.Clipmap.GL_TEXTURE_CLIPMAP_CENTER_SGIX', 'Graphics.GL.Ext.SGIX.Clipmap.GL_TEXTURE_CLIPMAP_DEPTH_SGIX', 'Graphics.GL.Ext.SGIX.Clipmap.GL_TEXTURE_CLIPMAP_FRAME_SGIX', 'Graphics.GL.Ext.SGIX.Clipmap.GL_TEXTURE_CLIPMAP_LOD_OFFSET_SGIX', 'Graphics.GL.Ext.SGIX.Clipmap.GL_TEXTURE_CLIPMAP_OFFSET_SGIX', 'Graphics.GL.Ext.SGIX.Clipmap.GL_TEXTURE_CLIPMAP_VIRTUAL_DEPTH_SGIX', 'Graphics.GL.Ext.SGIX.Shadow.GL_TEXTURE_COMPARE_OPERATOR_SGIX', 'Graphics.GL.Ext.SGIX.Shadow.GL_TEXTURE_COMPARE_SGIX', 'Graphics.GL.Internal.Shared.GL_TEXTURE_COMPONENTS', 'Graphics.GL.Ext.EXT.Texture3D.GL_TEXTURE_DEPTH_EXT', 'Graphics.GL.Ext.SGIS.TextureFilter4.GL_TEXTURE_FILTER4_SIZE_SGIS', 'Graphics.GL.Ext.SGIX.Shadow.GL_TEXTURE_GEQUAL_R_SGIX', 'Graphics.GL.Internal.Shared.GL_TEXTURE_GREEN_SIZE', 'Graphics.GL.Internal.Shared.GL_TEXTURE_HEIGHT', 'Graphics.GL.Internal.Shared.GL_TEXTURE_INTENSITY_SIZE', 'Graphics.GL.Internal.Shared.GL_TEXTURE_INTERNAL_FORMAT', 'Graphics.GL.Ext.SGIX.Shadow.GL_TEXTURE_LEQUAL_R_SGIX', 'Graphics.GL.Ext.SGIX.TextureLodBias.GL_TEXTURE_LOD_BIAS_R_SGIX', 'Graphics.GL.Ext.SGIX.TextureLodBias.GL_TEXTURE_LOD_BIAS_S_SGIX', 'Graphics.GL.Ext.SGIX.TextureLodBias.GL_TEXTURE_LOD_BIAS_T_SGIX', 'Graphics.GL.Internal.Shared.GL_TEXTURE_LUMINANCE_SIZE', 'Graphics.GL.Internal.Shared.GL_TEXTURE_MAG_FILTER', 'Graphics.GL.Ext.SGIX.TextureCoordinateClamp.GL_TEXTURE_MAX_CLAMP_R_SGIX', 'Graphics.GL.Ext.SGIX.TextureCoordinateClamp.GL_TEXTURE_MAX_CLAMP_S_SGIX', 'Graphics.GL.Ext.SGIX.TextureCoordinateClamp.GL_TEXTURE_MAX_CLAMP_T_SGIX', 'Graphics.GL.Ext.SGIS.TextureLod.GL_TEXTURE_MAX_LEVEL_SGIS', 'Graphics.GL.Ext.SGIS.TextureLod.GL_TEXTURE_MAX_LOD_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_MIN_FILTER', 'Graphics.GL.Ext.SGIS.TextureLod.GL_TEXTURE_MIN_LOD_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_PRIORITY', 'Graphics.GL.Internal.Shared.GL_TEXTURE_RED_SIZE', 'Graphics.GL.Internal.Shared.GL_TEXTURE_RESIDENT', 'Graphics.GL.Internal.Shared.GL_TEXTURE_WIDTH', 'Graphics.GL.Ext.SGIS.Texture4D.GL_TEXTURE_WRAP_Q_SGIS', 'Graphics.GL.Ext.EXT.Texture3D.GL_TEXTURE_WRAP_R_EXT', 'Graphics.GL.Internal.Shared.GL_TEXTURE_WRAP_S', 'Graphics.GL.Internal.Shared.GL_TEXTURE_WRAP_T'.
--
-- The length of @params@ should be @COMPSIZE(pname)@.
glGetTexParameteriv :: MonadIO m => GLenum -> GLenum -> Ptr GLint -> m ()
glGetTexParameteriv = ffienumenumPtrintIOV glGetTexParameterivFunPtr
glGetTexParameterivFunPtr :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
glGetTexParameterivFunPtr = unsafePerformIO (getProcAddress "glGetTexParameteriv")
{-# NOINLINE glGetTexParameterivFunPtr #-}
-- | Usage: @'glGetTransformFeedbackVarying' program index bufSize length size type name@
--
-- The length of @length@ should be @1@.
--
-- The length of @size@ should be @1@.
--
-- The length of @type@ should be @1@.
--
-- The length of @name@ should be @bufSize@.
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glGetTransformFeedbackVarying.xhtml>
glGetTransformFeedbackVarying :: MonadIO m => GLuint -> GLuint -> GLsizei -> Ptr GLsizei -> Ptr GLsizei -> Ptr GLenum -> Ptr GLchar -> m ()
glGetTransformFeedbackVarying = ffiuintuintsizeiPtrsizeiPtrsizeiPtrenumPtrcharIOV glGetTransformFeedbackVaryingFunPtr
glGetTransformFeedbackVaryingFunPtr :: FunPtr (GLuint -> GLuint -> GLsizei -> Ptr GLsizei -> Ptr GLsizei -> Ptr GLenum -> Ptr GLchar -> IO ())
glGetTransformFeedbackVaryingFunPtr = unsafePerformIO (getProcAddress "glGetTransformFeedbackVarying")
{-# NOINLINE glGetTransformFeedbackVaryingFunPtr #-}
-- | Usage: @'glGetUniformBlockIndex' program uniformBlockName@
--
-- The length of @uniformBlockName@ should be @COMPSIZE()@.
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glGetUniformBlockIndex.xhtml>
glGetUniformBlockIndex :: MonadIO m => GLuint -> Ptr GLchar -> m GLuint
glGetUniformBlockIndex = ffiuintPtrcharIOuint glGetUniformBlockIndexFunPtr
glGetUniformBlockIndexFunPtr :: FunPtr (GLuint -> Ptr GLchar -> IO GLuint)
glGetUniformBlockIndexFunPtr = unsafePerformIO (getProcAddress "glGetUniformBlockIndex")
{-# NOINLINE glGetUniformBlockIndexFunPtr #-}
-- | Usage: @'glGetUniformIndices' program uniformCount uniformNames uniformIndices@
--
-- The length of @uniformNames@ should be @COMPSIZE(uniformCount)@.
--
-- The length of @uniformIndices@ should be @COMPSIZE(uniformCount)@.
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glGetUniformIndices.xhtml>
glGetUniformIndices :: MonadIO m => GLuint -> GLsizei -> Ptr (Ptr GLchar) -> Ptr GLuint -> m ()
glGetUniformIndices = ffiuintsizeiPtrPtrcharPtruintIOV glGetUniformIndicesFunPtr
glGetUniformIndicesFunPtr :: FunPtr (GLuint -> GLsizei -> Ptr (Ptr GLchar) -> Ptr GLuint -> IO ())
glGetUniformIndicesFunPtr = unsafePerformIO (getProcAddress "glGetUniformIndices")
{-# NOINLINE glGetUniformIndicesFunPtr #-}
-- | Usage: @'glGetUniformLocation' program name@
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glGetUniformLocation.xhtml>
glGetUniformLocation :: MonadIO m => GLuint -> Ptr GLchar -> m GLint
glGetUniformLocation = ffiuintPtrcharIOint glGetUniformLocationFunPtr
glGetUniformLocationFunPtr :: FunPtr (GLuint -> Ptr GLchar -> IO GLint)
glGetUniformLocationFunPtr = unsafePerformIO (getProcAddress "glGetUniformLocation")
{-# NOINLINE glGetUniformLocationFunPtr #-}
-- | Usage: @'glGetUniformfv' program location params@
--
-- The length of @params@ should be @COMPSIZE(program,location)@.
glGetUniformfv :: MonadIO m => GLuint -> GLint -> Ptr GLfloat -> m ()
glGetUniformfv = ffiuintintPtrfloatIOV glGetUniformfvFunPtr
glGetUniformfvFunPtr :: FunPtr (GLuint -> GLint -> Ptr GLfloat -> IO ())
glGetUniformfvFunPtr = unsafePerformIO (getProcAddress "glGetUniformfv")
{-# NOINLINE glGetUniformfvFunPtr #-}
-- | Usage: @'glGetUniformiv' program location params@
--
-- The length of @params@ should be @COMPSIZE(program,location)@.
glGetUniformiv :: MonadIO m => GLuint -> GLint -> Ptr GLint -> m ()
glGetUniformiv = ffiuintintPtrintIOV glGetUniformivFunPtr
glGetUniformivFunPtr :: FunPtr (GLuint -> GLint -> Ptr GLint -> IO ())
glGetUniformivFunPtr = unsafePerformIO (getProcAddress "glGetUniformiv")
{-# NOINLINE glGetUniformivFunPtr #-}
-- | Usage: @'glGetUniformuiv' program location params@
--
-- The length of @params@ should be @COMPSIZE(program,location)@.
glGetUniformuiv :: MonadIO m => GLuint -> GLint -> Ptr GLuint -> m ()
glGetUniformuiv = ffiuintintPtruintIOV glGetUniformuivFunPtr
glGetUniformuivFunPtr :: FunPtr (GLuint -> GLint -> Ptr GLuint -> IO ())
glGetUniformuivFunPtr = unsafePerformIO (getProcAddress "glGetUniformuiv")
{-# NOINLINE glGetUniformuivFunPtr #-}
-- | Usage: @'glGetVertexAttribIiv' index pname params@
--
-- The parameter @pname@ is a @VertexAttribEnum@.
--
-- The length of @params@ should be @1@.
glGetVertexAttribIiv :: MonadIO m => GLuint -> GLenum -> Ptr GLint -> m ()
glGetVertexAttribIiv = ffiuintenumPtrintIOV glGetVertexAttribIivFunPtr
glGetVertexAttribIivFunPtr :: FunPtr (GLuint -> GLenum -> Ptr GLint -> IO ())
glGetVertexAttribIivFunPtr = unsafePerformIO (getProcAddress "glGetVertexAttribIiv")
{-# NOINLINE glGetVertexAttribIivFunPtr #-}
-- | Usage: @'glGetVertexAttribIuiv' index pname params@
--
-- The parameter @pname@ is a @VertexAttribEnum@.
--
-- The length of @params@ should be @1@.
glGetVertexAttribIuiv :: MonadIO m => GLuint -> GLenum -> Ptr GLuint -> m ()
glGetVertexAttribIuiv = ffiuintenumPtruintIOV glGetVertexAttribIuivFunPtr
glGetVertexAttribIuivFunPtr :: FunPtr (GLuint -> GLenum -> Ptr GLuint -> IO ())
glGetVertexAttribIuivFunPtr = unsafePerformIO (getProcAddress "glGetVertexAttribIuiv")
{-# NOINLINE glGetVertexAttribIuivFunPtr #-}
-- | Usage: @'glGetVertexAttribPointerv' index pname pointer@
--
-- The parameter @pname@ is a @VertexAttribPointerPropertyARB@.
--
-- The length of @pointer@ should be @1@.
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glGetVertexAttribPointerv.xhtml>
glGetVertexAttribPointerv :: MonadIO m => GLuint -> GLenum -> Ptr (Ptr ()) -> m ()
glGetVertexAttribPointerv = ffiuintenumPtrPtrVIOV glGetVertexAttribPointervFunPtr
glGetVertexAttribPointervFunPtr :: FunPtr (GLuint -> GLenum -> Ptr (Ptr ()) -> IO ())
glGetVertexAttribPointervFunPtr = unsafePerformIO (getProcAddress "glGetVertexAttribPointerv")
{-# NOINLINE glGetVertexAttribPointervFunPtr #-}
-- | Usage: @'glGetVertexAttribdv' index pname params@
--
-- The parameter @pname@ is a @VertexAttribPropertyARB@.
--
-- The length of @params@ should be @4@.
glGetVertexAttribdv :: MonadIO m => GLuint -> GLenum -> Ptr GLdouble -> m ()
glGetVertexAttribdv = ffiuintenumPtrdoubleIOV glGetVertexAttribdvFunPtr
glGetVertexAttribdvFunPtr :: FunPtr (GLuint -> GLenum -> Ptr GLdouble -> IO ())
glGetVertexAttribdvFunPtr = unsafePerformIO (getProcAddress "glGetVertexAttribdv")
{-# NOINLINE glGetVertexAttribdvFunPtr #-}
-- | Usage: @'glGetVertexAttribfv' index pname params@
--
-- The parameter @pname@ is a @VertexAttribPropertyARB@.
--
-- The length of @params@ should be @4@.
glGetVertexAttribfv :: MonadIO m => GLuint -> GLenum -> Ptr GLfloat -> m ()
glGetVertexAttribfv = ffiuintenumPtrfloatIOV glGetVertexAttribfvFunPtr
glGetVertexAttribfvFunPtr :: FunPtr (GLuint -> GLenum -> Ptr GLfloat -> IO ())
glGetVertexAttribfvFunPtr = unsafePerformIO (getProcAddress "glGetVertexAttribfv")
{-# NOINLINE glGetVertexAttribfvFunPtr #-}
-- | Usage: @'glGetVertexAttribiv' index pname params@
--
-- The parameter @pname@ is a @VertexAttribPropertyARB@.
--
-- The length of @params@ should be @4@.
glGetVertexAttribiv :: MonadIO m => GLuint -> GLenum -> Ptr GLint -> m ()
glGetVertexAttribiv = ffiuintenumPtrintIOV glGetVertexAttribivFunPtr
glGetVertexAttribivFunPtr :: FunPtr (GLuint -> GLenum -> Ptr GLint -> IO ())
glGetVertexAttribivFunPtr = unsafePerformIO (getProcAddress "glGetVertexAttribiv")
{-# NOINLINE glGetVertexAttribivFunPtr #-}
-- | Usage: @'glHint' target mode@
--
-- The parameter @target@ is a @HintTarget@, one of: 'Graphics.GL.Ext.PGI.MiscHints.GL_ALLOW_DRAW_FRG_HINT_PGI', 'Graphics.GL.Ext.PGI.MiscHints.GL_ALLOW_DRAW_MEM_HINT_PGI', 'Graphics.GL.Ext.PGI.MiscHints.GL_ALLOW_DRAW_OBJ_HINT_PGI', 'Graphics.GL.Ext.PGI.MiscHints.GL_ALLOW_DRAW_WIN_HINT_PGI', 'Graphics.GL.Ext.PGI.MiscHints.GL_ALWAYS_FAST_HINT_PGI', 'Graphics.GL.Ext.PGI.MiscHints.GL_ALWAYS_SOFT_HINT_PGI', 'Graphics.GL.Ext.PGI.MiscHints.GL_BACK_NORMALS_HINT_PGI', 'Graphics.GL.Ext.QCOM.BinningControl.GL_BINNING_CONTROL_HINT_QCOM', 'Graphics.GL.Ext.PGI.MiscHints.GL_CLIP_FAR_HINT_PGI', 'Graphics.GL.Ext.PGI.MiscHints.GL_CLIP_NEAR_HINT_PGI', 'Graphics.GL.Ext.EXT.ClipVolumeHint.GL_CLIP_VOLUME_CLIPPING_HINT_EXT', 'Graphics.GL.Ext.PGI.MiscHints.GL_CONSERVE_MEMORY_HINT_PGI', 'Graphics.GL.Ext.SGIX.ConvolutionAccuracy.GL_CONVOLUTION_HINT_SGIX', 'Graphics.GL.Internal.Shared.GL_FOG_HINT', 'Graphics.GL.Internal.Shared.GL_FRAGMENT_SHADER_DERIVATIVE_HINT', 'Graphics.GL.Ext.ARB.FragmentShader.GL_FRAGMENT_SHADER_DERIVATIVE_HINT_ARB', 'Graphics.GL.Ext.OES.StandardDerivatives.GL_FRAGMENT_SHADER_DERIVATIVE_HINT_OES', 'Graphics.GL.Ext.PGI.MiscHints.GL_FULL_STIPPLE_HINT_PGI', 'Graphics.GL.Internal.Shared.GL_GENERATE_MIPMAP_HINT', 'Graphics.GL.Ext.SGIS.GenerateMipmap.GL_GENERATE_MIPMAP_HINT_SGIS', @GL_LINE_QUALITY_HINT_SGIX@, 'Graphics.GL.Internal.Shared.GL_LINE_SMOOTH_HINT', 'Graphics.GL.Ext.PGI.VertexHints.GL_MATERIAL_SIDE_HINT_PGI', 'Graphics.GL.Ext.PGI.VertexHints.GL_MAX_VERTEX_HINT_PGI', 'Graphics.GL.Ext.NV.MultisampleFilterHint.GL_MULTISAMPLE_FILTER_HINT_NV', 'Graphics.GL.Ext.PGI.MiscHints.GL_NATIVE_GRAPHICS_BEGIN_HINT_PGI', 'Graphics.GL.Ext.PGI.MiscHints.GL_NATIVE_GRAPHICS_END_HINT_PGI', 'Graphics.GL.Ext.EXT.Cmyka.GL_PACK_CMYK_HINT_EXT', 'Graphics.GL.Internal.Shared.GL_PERSPECTIVE_CORRECTION_HINT', 'Graphics.GL.Ext.WIN.PhongShading.GL_PHONG_HINT_WIN', 'Graphics.GL.Internal.Shared.GL_POINT_SMOOTH_HINT', 'Graphics.GL.Internal.Shared.GL_POLYGON_SMOOTH_HINT', 'Graphics.GL.Ext.PGI.MiscHints.GL_PREFER_DOUBLEBUFFER_HINT_PGI', 'Graphics.GL.Internal.Shared.GL_PROGRAM_BINARY_RETRIEVABLE_HINT', 'Graphics.GL.Ext.PGI.MiscHints.GL_RECLAIM_MEMORY_HINT_PGI', 'Graphics.GL.Ext.SGIX.ScalebiasHint.GL_SCALEBIAS_HINT_SGIX', 'Graphics.GL.Ext.PGI.MiscHints.GL_STRICT_DEPTHFUNC_HINT_PGI', 'Graphics.GL.Ext.PGI.MiscHints.GL_STRICT_LIGHTING_HINT_PGI', 'Graphics.GL.Ext.PGI.MiscHints.GL_STRICT_SCISSOR_HINT_PGI', 'Graphics.GL.Internal.Shared.GL_TEXTURE_COMPRESSION_HINT', 'Graphics.GL.Ext.ARB.TextureCompression.GL_TEXTURE_COMPRESSION_HINT_ARB', 'Graphics.GL.Ext.SGIX.TextureMultiBuffer.GL_TEXTURE_MULTI_BUFFER_HINT_SGIX', 'Graphics.GL.Ext.APPLE.TextureRange.GL_TEXTURE_STORAGE_HINT_APPLE', 'Graphics.GL.Ext.APPLE.TransformHint.GL_TRANSFORM_HINT_APPLE', 'Graphics.GL.Ext.EXT.Cmyka.GL_UNPACK_CMYK_HINT_EXT', 'Graphics.GL.Ext.APPLE.VertexArrayRange.GL_VERTEX_ARRAY_STORAGE_HINT_APPLE', 'Graphics.GL.Ext.PGI.VertexHints.GL_VERTEX_CONSISTENT_HINT_PGI', 'Graphics.GL.Ext.PGI.VertexHints.GL_VERTEX_DATA_HINT_PGI', 'Graphics.GL.Ext.SGIX.VertexPreclip.GL_VERTEX_PRECLIP_HINT_SGIX', 'Graphics.GL.Ext.SGIX.VertexPreclip.GL_VERTEX_PRECLIP_SGIX', 'Graphics.GL.Ext.PGI.MiscHints.GL_WIDE_LINE_HINT_PGI'.
--
-- The parameter @mode@ is a @HintMode@, one of: 'Graphics.GL.Internal.Shared.GL_DONT_CARE', 'Graphics.GL.Internal.Shared.GL_FASTEST', 'Graphics.GL.Internal.Shared.GL_NICEST'.
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glHint.xhtml>
glHint :: MonadIO m => GLenum -> GLenum -> m ()
glHint = ffienumenumIOV glHintFunPtr
glHintFunPtr :: FunPtr (GLenum -> GLenum -> IO ())
glHintFunPtr = unsafePerformIO (getProcAddress "glHint")
{-# NOINLINE glHintFunPtr #-}
-- | Usage: @'glIsBuffer' buffer@
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glIsBuffer.xhtml>
glIsBuffer :: MonadIO m => GLuint -> m GLboolean
glIsBuffer = ffiuintIOboolean glIsBufferFunPtr
glIsBufferFunPtr :: FunPtr (GLuint -> IO GLboolean)
glIsBufferFunPtr = unsafePerformIO (getProcAddress "glIsBuffer")
{-# NOINLINE glIsBufferFunPtr #-}
-- | Usage: @'glIsEnabled' cap@
--
-- The parameter @cap@ is a @EnableCap@, one of: 'Graphics.GL.Internal.Shared.GL_ALPHA_TEST', 'Graphics.GL.Ext.SGIX.AsyncPixel.GL_ASYNC_DRAW_PIXELS_SGIX', 'Graphics.GL.Ext.SGIX.AsyncHistogram.GL_ASYNC_HISTOGRAM_SGIX', 'Graphics.GL.Ext.SGIX.AsyncPixel.GL_ASYNC_READ_PIXELS_SGIX', 'Graphics.GL.Ext.SGIX.AsyncPixel.GL_ASYNC_TEX_IMAGE_SGIX', 'Graphics.GL.Internal.Shared.GL_AUTO_NORMAL', 'Graphics.GL.Internal.Shared.GL_BLEND', 'Graphics.GL.Ext.SGIX.CalligraphicFragment.GL_CALLIGRAPHIC_FRAGMENT_SGIX', 'Graphics.GL.Internal.Shared.GL_CLIP_PLANE0', 'Graphics.GL.Internal.Shared.GL_CLIP_PLANE1', 'Graphics.GL.Internal.Shared.GL_CLIP_PLANE2', 'Graphics.GL.Internal.Shared.GL_CLIP_PLANE3', 'Graphics.GL.Internal.Shared.GL_CLIP_PLANE4', 'Graphics.GL.Internal.Shared.GL_CLIP_PLANE5', 'Graphics.GL.Internal.Shared.GL_COLOR_ARRAY', 'Graphics.GL.Internal.Shared.GL_COLOR_LOGIC_OP', 'Graphics.GL.Internal.Shared.GL_COLOR_MATERIAL', 'Graphics.GL.Ext.SGI.ColorTable.GL_COLOR_TABLE_SGI', 'Graphics.GL.Ext.EXT.Convolution.GL_CONVOLUTION_1D_EXT', 'Graphics.GL.Ext.EXT.Convolution.GL_CONVOLUTION_2D_EXT', 'Graphics.GL.Internal.Shared.GL_CULL_FACE', 'Graphics.GL.Internal.Shared.GL_DEPTH_TEST', 'Graphics.GL.Internal.Shared.GL_DITHER', 'Graphics.GL.Internal.Shared.GL_EDGE_FLAG_ARRAY', 'Graphics.GL.Internal.Shared.GL_FOG', 'Graphics.GL.Ext.SGIX.FogOffset.GL_FOG_OFFSET_SGIX', 'Graphics.GL.Ext.SGIX.FragmentLighting.GL_FRAGMENT_COLOR_MATERIAL_SGIX', 'Graphics.GL.Ext.SGIX.FragmentLighting.GL_FRAGMENT_LIGHT0_SGIX', 'Graphics.GL.Ext.SGIX.FragmentLighting.GL_FRAGMENT_LIGHT1_SGIX', 'Graphics.GL.Ext.SGIX.FragmentLighting.GL_FRAGMENT_LIGHT2_SGIX', 'Graphics.GL.Ext.SGIX.FragmentLighting.GL_FRAGMENT_LIGHT3_SGIX', 'Graphics.GL.Ext.SGIX.FragmentLighting.GL_FRAGMENT_LIGHT4_SGIX', 'Graphics.GL.Ext.SGIX.FragmentLighting.GL_FRAGMENT_LIGHT5_SGIX', 'Graphics.GL.Ext.SGIX.FragmentLighting.GL_FRAGMENT_LIGHT6_SGIX', 'Graphics.GL.Ext.SGIX.FragmentLighting.GL_FRAGMENT_LIGHT7_SGIX', 'Graphics.GL.Ext.SGIX.FragmentLighting.GL_FRAGMENT_LIGHTING_SGIX', 'Graphics.GL.Ext.SGIX.Framezoom.GL_FRAMEZOOM_SGIX', 'Graphics.GL.Ext.EXT.Histogram.GL_HISTOGRAM_EXT', 'Graphics.GL.Internal.Shared.GL_INDEX_ARRAY', 'Graphics.GL.Internal.Shared.GL_INDEX_LOGIC_OP', 'Graphics.GL.Ext.SGIX.Interlace.GL_INTERLACE_SGIX', 'Graphics.GL.Ext.SGIX.IrInstrument1.GL_IR_INSTRUMENT1_SGIX', 'Graphics.GL.Internal.Shared.GL_LIGHT0', 'Graphics.GL.Internal.Shared.GL_LIGHT1', 'Graphics.GL.Internal.Shared.GL_LIGHT2', 'Graphics.GL.Internal.Shared.GL_LIGHT3', 'Graphics.GL.Internal.Shared.GL_LIGHT4', 'Graphics.GL.Internal.Shared.GL_LIGHT5', 'Graphics.GL.Internal.Shared.GL_LIGHT6', 'Graphics.GL.Internal.Shared.GL_LIGHT7', 'Graphics.GL.Internal.Shared.GL_LIGHTING', 'Graphics.GL.Internal.Shared.GL_LINE_SMOOTH', 'Graphics.GL.Internal.Shared.GL_LINE_STIPPLE', 'Graphics.GL.Internal.Shared.GL_MAP1_COLOR_4', 'Graphics.GL.Internal.Shared.GL_MAP1_INDEX', 'Graphics.GL.Internal.Shared.GL_MAP1_NORMAL', 'Graphics.GL.Internal.Shared.GL_MAP1_TEXTURE_COORD_1', 'Graphics.GL.Internal.Shared.GL_MAP1_TEXTURE_COORD_2', 'Graphics.GL.Internal.Shared.GL_MAP1_TEXTURE_COORD_3', 'Graphics.GL.Internal.Shared.GL_MAP1_TEXTURE_COORD_4', 'Graphics.GL.Internal.Shared.GL_MAP1_VERTEX_3', 'Graphics.GL.Internal.Shared.GL_MAP1_VERTEX_4', 'Graphics.GL.Internal.Shared.GL_MAP2_COLOR_4', 'Graphics.GL.Internal.Shared.GL_MAP2_INDEX', 'Graphics.GL.Internal.Shared.GL_MAP2_NORMAL', 'Graphics.GL.Internal.Shared.GL_MAP2_TEXTURE_COORD_1', 'Graphics.GL.Internal.Shared.GL_MAP2_TEXTURE_COORD_2', 'Graphics.GL.Internal.Shared.GL_MAP2_TEXTURE_COORD_3', 'Graphics.GL.Internal.Shared.GL_MAP2_TEXTURE_COORD_4', 'Graphics.GL.Internal.Shared.GL_MAP2_VERTEX_3', 'Graphics.GL.Internal.Shared.GL_MAP2_VERTEX_4', 'Graphics.GL.Ext.EXT.Histogram.GL_MINMAX_EXT', 'Graphics.GL.Ext.SGIS.Multisample.GL_MULTISAMPLE_SGIS', 'Graphics.GL.Internal.Shared.GL_NORMALIZE', 'Graphics.GL.Internal.Shared.GL_NORMAL_ARRAY', 'Graphics.GL.Ext.SGIS.PixelTexture.GL_PIXEL_TEXTURE_SGIS', 'Graphics.GL.Ext.SGIX.PixelTexture.GL_PIXEL_TEX_GEN_SGIX', 'Graphics.GL.Internal.Shared.GL_POINT_SMOOTH', 'Graphics.GL.Internal.Shared.GL_POLYGON_OFFSET_FILL', 'Graphics.GL.Internal.Shared.GL_POLYGON_OFFSET_LINE', 'Graphics.GL.Internal.Shared.GL_POLYGON_OFFSET_POINT', 'Graphics.GL.Internal.Shared.GL_POLYGON_SMOOTH', 'Graphics.GL.Internal.Shared.GL_POLYGON_STIPPLE', 'Graphics.GL.Ext.SGI.ColorTable.GL_POST_COLOR_MATRIX_COLOR_TABLE_SGI', 'Graphics.GL.Ext.SGI.ColorTable.GL_POST_CONVOLUTION_COLOR_TABLE_SGI', 'Graphics.GL.Ext.SGIX.ReferencePlane.GL_REFERENCE_PLANE_SGIX', 'Graphics.GL.Ext.EXT.RescaleNormal.GL_RESCALE_NORMAL_EXT', 'Graphics.GL.Ext.SGIS.Multisample.GL_SAMPLE_ALPHA_TO_MASK_SGIS', 'Graphics.GL.Ext.SGIS.Multisample.GL_SAMPLE_ALPHA_TO_ONE_SGIS', 'Graphics.GL.Ext.SGIS.Multisample.GL_SAMPLE_MASK_SGIS', 'Graphics.GL.Internal.Shared.GL_SCISSOR_TEST', 'Graphics.GL.Ext.EXT.Convolution.GL_SEPARABLE_2D_EXT', 'Graphics.GL.Ext.EXT.SharedTexturePalette.GL_SHARED_TEXTURE_PALETTE_EXT', 'Graphics.GL.Ext.SGIX.Sprite.GL_SPRITE_SGIX', 'Graphics.GL.Internal.Shared.GL_STENCIL_TEST', 'Graphics.GL.Internal.Shared.GL_TEXTURE_1D', 'Graphics.GL.Internal.Shared.GL_TEXTURE_2D', 'Graphics.GL.Ext.EXT.Texture3D.GL_TEXTURE_3D_EXT', 'Graphics.GL.Ext.SGIS.Texture4D.GL_TEXTURE_4D_SGIS', 'Graphics.GL.Ext.SGI.TextureColorTable.GL_TEXTURE_COLOR_TABLE_SGI', 'Graphics.GL.Internal.Shared.GL_TEXTURE_COORD_ARRAY', 'Graphics.GL.Internal.Shared.GL_TEXTURE_GEN_Q', 'Graphics.GL.Internal.Shared.GL_TEXTURE_GEN_R', 'Graphics.GL.Internal.Shared.GL_TEXTURE_GEN_S', 'Graphics.GL.Internal.Shared.GL_TEXTURE_GEN_T', 'Graphics.GL.Internal.Shared.GL_VERTEX_ARRAY'.
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glIsEnabled.xhtml>
glIsEnabled :: MonadIO m => GLenum -> m GLboolean
glIsEnabled = ffienumIOboolean glIsEnabledFunPtr
glIsEnabledFunPtr :: FunPtr (GLenum -> IO GLboolean)
glIsEnabledFunPtr = unsafePerformIO (getProcAddress "glIsEnabled")
{-# NOINLINE glIsEnabledFunPtr #-}
-- | Usage: @'glIsEnabledi' target index@
glIsEnabledi :: MonadIO m => GLenum -> GLuint -> m GLboolean
glIsEnabledi = ffienumuintIOboolean glIsEnablediFunPtr
glIsEnablediFunPtr :: FunPtr (GLenum -> GLuint -> IO GLboolean)
glIsEnablediFunPtr = unsafePerformIO (getProcAddress "glIsEnabledi")
{-# NOINLINE glIsEnablediFunPtr #-}
-- | Usage: @'glIsFramebuffer' framebuffer@
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glIsFramebuffer.xhtml>
glIsFramebuffer :: MonadIO m => GLuint -> m GLboolean
glIsFramebuffer = ffiuintIOboolean glIsFramebufferFunPtr
glIsFramebufferFunPtr :: FunPtr (GLuint -> IO GLboolean)
glIsFramebufferFunPtr = unsafePerformIO (getProcAddress "glIsFramebuffer")
{-# NOINLINE glIsFramebufferFunPtr #-}
-- | Usage: @'glIsProgram' program@
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glIsProgram.xhtml>
glIsProgram :: MonadIO m => GLuint -> m GLboolean
glIsProgram = ffiuintIOboolean glIsProgramFunPtr
glIsProgramFunPtr :: FunPtr (GLuint -> IO GLboolean)
glIsProgramFunPtr = unsafePerformIO (getProcAddress "glIsProgram")
{-# NOINLINE glIsProgramFunPtr #-}
-- | Usage: @'glIsQuery' id@
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glIsQuery.xhtml>
glIsQuery :: MonadIO m => GLuint -> m GLboolean
glIsQuery = ffiuintIOboolean glIsQueryFunPtr
glIsQueryFunPtr :: FunPtr (GLuint -> IO GLboolean)
glIsQueryFunPtr = unsafePerformIO (getProcAddress "glIsQuery")
{-# NOINLINE glIsQueryFunPtr #-}
-- | Usage: @'glIsRenderbuffer' renderbuffer@
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glIsRenderbuffer.xhtml>
glIsRenderbuffer :: MonadIO m => GLuint -> m GLboolean
glIsRenderbuffer = ffiuintIOboolean glIsRenderbufferFunPtr
glIsRenderbufferFunPtr :: FunPtr (GLuint -> IO GLboolean)
glIsRenderbufferFunPtr = unsafePerformIO (getProcAddress "glIsRenderbuffer")
{-# NOINLINE glIsRenderbufferFunPtr #-}
-- | Usage: @'glIsShader' shader@
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glIsShader.xhtml>
glIsShader :: MonadIO m => GLuint -> m GLboolean
glIsShader = ffiuintIOboolean glIsShaderFunPtr
glIsShaderFunPtr :: FunPtr (GLuint -> IO GLboolean)
glIsShaderFunPtr = unsafePerformIO (getProcAddress "glIsShader")
{-# NOINLINE glIsShaderFunPtr #-}
-- | Usage: @'glIsSync' sync@
--
-- The parameter @sync@ is a @sync@.
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glIsSync.xhtml>
glIsSync :: MonadIO m => GLsync -> m GLboolean
glIsSync = ffisyncIOboolean glIsSyncFunPtr
glIsSyncFunPtr :: FunPtr (GLsync -> IO GLboolean)
glIsSyncFunPtr = unsafePerformIO (getProcAddress "glIsSync")
{-# NOINLINE glIsSyncFunPtr #-}
-- | Usage: @'glIsTexture' texture@
--
-- The parameter @texture@ is a @Texture@.
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glIsTexture.xhtml>
glIsTexture :: MonadIO m => GLuint -> m GLboolean
glIsTexture = ffiuintIOboolean glIsTextureFunPtr
glIsTextureFunPtr :: FunPtr (GLuint -> IO GLboolean)
glIsTextureFunPtr = unsafePerformIO (getProcAddress "glIsTexture")
{-# NOINLINE glIsTextureFunPtr #-}
-- | Usage: @'glIsVertexArray' array@
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glIsVertexArray.xhtml>
glIsVertexArray :: MonadIO m => GLuint -> m GLboolean
glIsVertexArray = ffiuintIOboolean glIsVertexArrayFunPtr
glIsVertexArrayFunPtr :: FunPtr (GLuint -> IO GLboolean)
glIsVertexArrayFunPtr = unsafePerformIO (getProcAddress "glIsVertexArray")
{-# NOINLINE glIsVertexArrayFunPtr #-}
-- | Usage: @'glLineWidth' width@
--
-- The parameter @width@ is a @CheckedFloat32@.
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glLineWidth.xhtml>
glLineWidth :: MonadIO m => GLfloat -> m ()
glLineWidth = ffifloatIOV glLineWidthFunPtr
glLineWidthFunPtr :: FunPtr (GLfloat -> IO ())
glLineWidthFunPtr = unsafePerformIO (getProcAddress "glLineWidth")
{-# NOINLINE glLineWidthFunPtr #-}
-- | Usage: @'glLinkProgram' program@
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glLinkProgram.xhtml>
glLinkProgram :: MonadIO m => GLuint -> m ()
glLinkProgram = ffiuintIOV glLinkProgramFunPtr
glLinkProgramFunPtr :: FunPtr (GLuint -> IO ())
glLinkProgramFunPtr = unsafePerformIO (getProcAddress "glLinkProgram")
{-# NOINLINE glLinkProgramFunPtr #-}
-- | Usage: @'glLogicOp' opcode@
--
-- The parameter @opcode@ is a @LogicOp@, one of: 'Graphics.GL.Internal.Shared.GL_AND', 'Graphics.GL.Internal.Shared.GL_AND_INVERTED', 'Graphics.GL.Internal.Shared.GL_AND_REVERSE', 'Graphics.GL.Internal.Shared.GL_CLEAR', 'Graphics.GL.Internal.Shared.GL_COPY', 'Graphics.GL.Internal.Shared.GL_COPY_INVERTED', 'Graphics.GL.Internal.Shared.GL_EQUIV', 'Graphics.GL.Internal.Shared.GL_INVERT', 'Graphics.GL.Internal.Shared.GL_NAND', 'Graphics.GL.Internal.Shared.GL_NOOP', 'Graphics.GL.Internal.Shared.GL_NOR', 'Graphics.GL.Internal.Shared.GL_OR', 'Graphics.GL.Internal.Shared.GL_OR_INVERTED', 'Graphics.GL.Internal.Shared.GL_OR_REVERSE', 'Graphics.GL.Internal.Shared.GL_SET', 'Graphics.GL.Internal.Shared.GL_XOR'.
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glLogicOp.xhtml>
glLogicOp :: MonadIO m => GLenum -> m ()
glLogicOp = ffienumIOV glLogicOpFunPtr
glLogicOpFunPtr :: FunPtr (GLenum -> IO ())
glLogicOpFunPtr = unsafePerformIO (getProcAddress "glLogicOp")
{-# NOINLINE glLogicOpFunPtr #-}
-- | Usage: @'glMapBuffer' target access@
--
-- The parameter @target@ is a @BufferTargetARB@.
--
-- The parameter @access@ is a @BufferAccessARB@.
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glMapBuffer.xhtml>
glMapBuffer :: MonadIO m => GLenum -> GLenum -> m (Ptr ())
glMapBuffer = ffienumenumIOPtrV glMapBufferFunPtr
glMapBufferFunPtr :: FunPtr (GLenum -> GLenum -> IO (Ptr ()))
glMapBufferFunPtr = unsafePerformIO (getProcAddress "glMapBuffer")
{-# NOINLINE glMapBufferFunPtr #-}
-- | Usage: @'glMapBufferRange' target offset length access@
--
-- The parameter @target@ is a @BufferTargetARB@.
--
-- The parameter @offset@ is a @BufferOffset@.
--
-- The parameter @length@ is a @BufferSize@.
--
-- The parameter @access@ is a @BufferAccessMask@.
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glMapBufferRange.xhtml>
glMapBufferRange :: MonadIO m => GLenum -> GLintptr -> GLsizeiptr -> GLbitfield -> m (Ptr ())
glMapBufferRange = ffienumintptrsizeiptrbitfieldIOPtrV glMapBufferRangeFunPtr
glMapBufferRangeFunPtr :: FunPtr (GLenum -> GLintptr -> GLsizeiptr -> GLbitfield -> IO (Ptr ()))
glMapBufferRangeFunPtr = unsafePerformIO (getProcAddress "glMapBufferRange")
{-# NOINLINE glMapBufferRangeFunPtr #-}
-- | Usage: @'glMultiDrawArrays' mode first count drawcount@
--
-- The parameter @mode@ is a @PrimitiveType@, one of: 'Graphics.GL.Internal.Shared.GL_LINES', 'Graphics.GL.Internal.Shared.GL_LINES_ADJACENCY', 'Graphics.GL.Ext.ARB.GeometryShader4.GL_LINES_ADJACENCY_ARB', 'Graphics.GL.Internal.Shared.GL_LINES_ADJACENCY_EXT', 'Graphics.GL.Internal.Shared.GL_LINE_LOOP', 'Graphics.GL.Internal.Shared.GL_LINE_STRIP', 'Graphics.GL.Internal.Shared.GL_LINE_STRIP_ADJACENCY', 'Graphics.GL.Ext.ARB.GeometryShader4.GL_LINE_STRIP_ADJACENCY_ARB', 'Graphics.GL.Internal.Shared.GL_LINE_STRIP_ADJACENCY_EXT', 'Graphics.GL.Internal.Shared.GL_PATCHES', 'Graphics.GL.Ext.EXT.TessellationShader.GL_PATCHES_EXT', 'Graphics.GL.Internal.Shared.GL_POINTS', 'Graphics.GL.Internal.Shared.GL_POLYGON', 'Graphics.GL.Internal.Shared.GL_QUADS', 'Graphics.GL.Ext.EXT.TessellationShader.GL_QUADS_EXT', 'Graphics.GL.Internal.Shared.GL_QUAD_STRIP', 'Graphics.GL.Internal.Shared.GL_TRIANGLES', 'Graphics.GL.Internal.Shared.GL_TRIANGLES_ADJACENCY', 'Graphics.GL.Ext.ARB.GeometryShader4.GL_TRIANGLES_ADJACENCY_ARB', 'Graphics.GL.Internal.Shared.GL_TRIANGLES_ADJACENCY_EXT', 'Graphics.GL.Internal.Shared.GL_TRIANGLE_FAN', 'Graphics.GL.Internal.Shared.GL_TRIANGLE_STRIP', 'Graphics.GL.Internal.Shared.GL_TRIANGLE_STRIP_ADJACENCY', 'Graphics.GL.Ext.ARB.GeometryShader4.GL_TRIANGLE_STRIP_ADJACENCY_ARB', 'Graphics.GL.Internal.Shared.GL_TRIANGLE_STRIP_ADJACENCY_EXT'.
--
-- The length of @first@ should be @COMPSIZE(count)@.
--
-- The length of @count@ should be @COMPSIZE(drawcount)@.
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glMultiDrawArrays.xhtml>
glMultiDrawArrays :: MonadIO m => GLenum -> Ptr GLint -> Ptr GLsizei -> GLsizei -> m ()
glMultiDrawArrays = ffienumPtrintPtrsizeisizeiIOV glMultiDrawArraysFunPtr
glMultiDrawArraysFunPtr :: FunPtr (GLenum -> Ptr GLint -> Ptr GLsizei -> GLsizei -> IO ())
glMultiDrawArraysFunPtr = unsafePerformIO (getProcAddress "glMultiDrawArrays")
{-# NOINLINE glMultiDrawArraysFunPtr #-}
-- | Usage: @'glMultiDrawElements' mode count type indices drawcount@
--
-- The parameter @mode@ is a @PrimitiveType@, one of: 'Graphics.GL.Internal.Shared.GL_LINES', 'Graphics.GL.Internal.Shared.GL_LINES_ADJACENCY', 'Graphics.GL.Ext.ARB.GeometryShader4.GL_LINES_ADJACENCY_ARB', 'Graphics.GL.Internal.Shared.GL_LINES_ADJACENCY_EXT', 'Graphics.GL.Internal.Shared.GL_LINE_LOOP', 'Graphics.GL.Internal.Shared.GL_LINE_STRIP', 'Graphics.GL.Internal.Shared.GL_LINE_STRIP_ADJACENCY', 'Graphics.GL.Ext.ARB.GeometryShader4.GL_LINE_STRIP_ADJACENCY_ARB', 'Graphics.GL.Internal.Shared.GL_LINE_STRIP_ADJACENCY_EXT', 'Graphics.GL.Internal.Shared.GL_PATCHES', 'Graphics.GL.Ext.EXT.TessellationShader.GL_PATCHES_EXT', 'Graphics.GL.Internal.Shared.GL_POINTS', 'Graphics.GL.Internal.Shared.GL_POLYGON', 'Graphics.GL.Internal.Shared.GL_QUADS', 'Graphics.GL.Ext.EXT.TessellationShader.GL_QUADS_EXT', 'Graphics.GL.Internal.Shared.GL_QUAD_STRIP', 'Graphics.GL.Internal.Shared.GL_TRIANGLES', 'Graphics.GL.Internal.Shared.GL_TRIANGLES_ADJACENCY', 'Graphics.GL.Ext.ARB.GeometryShader4.GL_TRIANGLES_ADJACENCY_ARB', 'Graphics.GL.Internal.Shared.GL_TRIANGLES_ADJACENCY_EXT', 'Graphics.GL.Internal.Shared.GL_TRIANGLE_FAN', 'Graphics.GL.Internal.Shared.GL_TRIANGLE_STRIP', 'Graphics.GL.Internal.Shared.GL_TRIANGLE_STRIP_ADJACENCY', 'Graphics.GL.Ext.ARB.GeometryShader4.GL_TRIANGLE_STRIP_ADJACENCY_ARB', 'Graphics.GL.Internal.Shared.GL_TRIANGLE_STRIP_ADJACENCY_EXT'.
--
-- The parameter @type@ is a @DrawElementsType@.
--
-- The length of @count@ should be @COMPSIZE(drawcount)@.
--
-- The length of @indices@ should be @COMPSIZE(drawcount)@.
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glMultiDrawElements.xhtml>
glMultiDrawElements :: MonadIO m => GLenum -> Ptr GLsizei -> GLenum -> Ptr (Ptr ()) -> GLsizei -> m ()
glMultiDrawElements = ffienumPtrsizeienumPtrPtrVsizeiIOV glMultiDrawElementsFunPtr
glMultiDrawElementsFunPtr :: FunPtr (GLenum -> Ptr GLsizei -> GLenum -> Ptr (Ptr ()) -> GLsizei -> IO ())
glMultiDrawElementsFunPtr = unsafePerformIO (getProcAddress "glMultiDrawElements")
{-# NOINLINE glMultiDrawElementsFunPtr #-}
-- | Usage: @'glMultiDrawElementsBaseVertex' mode count type indices drawcount basevertex@
--
-- The parameter @type@ is a @DrawElementsType@.
--
-- The length of @count@ should be @COMPSIZE(drawcount)@.
--
-- The length of @indices@ should be @COMPSIZE(drawcount)@.
--
-- The length of @basevertex@ should be @COMPSIZE(drawcount)@.
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glMultiDrawElementsBaseVertex.xhtml>
glMultiDrawElementsBaseVertex :: MonadIO m => GLenum -> Ptr GLsizei -> GLenum -> Ptr (Ptr ()) -> GLsizei -> Ptr GLint -> m ()
glMultiDrawElementsBaseVertex = ffienumPtrsizeienumPtrPtrVsizeiPtrintIOV glMultiDrawElementsBaseVertexFunPtr
glMultiDrawElementsBaseVertexFunPtr :: FunPtr (GLenum -> Ptr GLsizei -> GLenum -> Ptr (Ptr ()) -> GLsizei -> Ptr GLint -> IO ())
glMultiDrawElementsBaseVertexFunPtr = unsafePerformIO (getProcAddress "glMultiDrawElementsBaseVertex")
{-# NOINLINE glMultiDrawElementsBaseVertexFunPtr #-}
-- | Usage: @'glPixelStoref' pname param@
--
-- The parameter @pname@ is a @PixelStoreParameter@, one of: 'Graphics.GL.Internal.Shared.GL_PACK_ALIGNMENT', 'Graphics.GL.Ext.SGIS.Texture4D.GL_PACK_IMAGE_DEPTH_SGIS', 'Graphics.GL.Internal.Shared.GL_PACK_IMAGE_HEIGHT', 'Graphics.GL.Ext.EXT.Texture3D.GL_PACK_IMAGE_HEIGHT_EXT', 'Graphics.GL.Internal.Shared.GL_PACK_LSB_FIRST', 'Graphics.GL.Ext.OML.Resample.GL_PACK_RESAMPLE_OML', 'Graphics.GL.Ext.SGIX.Resample.GL_PACK_RESAMPLE_SGIX', 'Graphics.GL.Internal.Shared.GL_PACK_ROW_LENGTH', 'Graphics.GL.Internal.Shared.GL_PACK_SKIP_IMAGES', 'Graphics.GL.Ext.EXT.Texture3D.GL_PACK_SKIP_IMAGES_EXT', 'Graphics.GL.Internal.Shared.GL_PACK_SKIP_PIXELS', 'Graphics.GL.Internal.Shared.GL_PACK_SKIP_ROWS', 'Graphics.GL.Ext.SGIS.Texture4D.GL_PACK_SKIP_VOLUMES_SGIS', 'Graphics.GL.Ext.SGIX.Subsample.GL_PACK_SUBSAMPLE_RATE_SGIX', 'Graphics.GL.Internal.Shared.GL_PACK_SWAP_BYTES', 'Graphics.GL.Ext.SGIX.PixelTiles.GL_PIXEL_TILE_CACHE_SIZE_SGIX', 'Graphics.GL.Ext.SGIX.PixelTiles.GL_PIXEL_TILE_GRID_DEPTH_SGIX', 'Graphics.GL.Ext.SGIX.PixelTiles.GL_PIXEL_TILE_GRID_HEIGHT_SGIX', 'Graphics.GL.Ext.SGIX.PixelTiles.GL_PIXEL_TILE_GRID_WIDTH_SGIX', 'Graphics.GL.Ext.SGIX.PixelTiles.GL_PIXEL_TILE_HEIGHT_SGIX', 'Graphics.GL.Ext.SGIX.PixelTiles.GL_PIXEL_TILE_WIDTH_SGIX', 'Graphics.GL.Internal.Shared.GL_UNPACK_ALIGNMENT', 'Graphics.GL.Ext.SGIS.Texture4D.GL_UNPACK_IMAGE_DEPTH_SGIS', 'Graphics.GL.Internal.Shared.GL_UNPACK_IMAGE_HEIGHT', 'Graphics.GL.Ext.EXT.Texture3D.GL_UNPACK_IMAGE_HEIGHT_EXT', 'Graphics.GL.Internal.Shared.GL_UNPACK_LSB_FIRST', 'Graphics.GL.Ext.OML.Resample.GL_UNPACK_RESAMPLE_OML', 'Graphics.GL.Ext.SGIX.Resample.GL_UNPACK_RESAMPLE_SGIX', 'Graphics.GL.Internal.Shared.GL_UNPACK_ROW_LENGTH', 'Graphics.GL.Ext.EXT.UnpackSubimage.GL_UNPACK_ROW_LENGTH_EXT', 'Graphics.GL.Internal.Shared.GL_UNPACK_SKIP_IMAGES', 'Graphics.GL.Ext.EXT.Texture3D.GL_UNPACK_SKIP_IMAGES_EXT', 'Graphics.GL.Internal.Shared.GL_UNPACK_SKIP_PIXELS', 'Graphics.GL.Ext.EXT.UnpackSubimage.GL_UNPACK_SKIP_PIXELS_EXT', 'Graphics.GL.Internal.Shared.GL_UNPACK_SKIP_ROWS', 'Graphics.GL.Ext.EXT.UnpackSubimage.GL_UNPACK_SKIP_ROWS_EXT', 'Graphics.GL.Ext.SGIS.Texture4D.GL_UNPACK_SKIP_VOLUMES_SGIS', 'Graphics.GL.Ext.SGIX.Subsample.GL_UNPACK_SUBSAMPLE_RATE_SGIX', 'Graphics.GL.Internal.Shared.GL_UNPACK_SWAP_BYTES'.
--
-- The parameter @param@ is a @CheckedFloat32@.
glPixelStoref :: MonadIO m => GLenum -> GLfloat -> m ()
glPixelStoref = ffienumfloatIOV glPixelStorefFunPtr
glPixelStorefFunPtr :: FunPtr (GLenum -> GLfloat -> IO ())
glPixelStorefFunPtr = unsafePerformIO (getProcAddress "glPixelStoref")
{-# NOINLINE glPixelStorefFunPtr #-}
-- | Usage: @'glPixelStorei' pname param@
--
-- The parameter @pname@ is a @PixelStoreParameter@, one of: 'Graphics.GL.Internal.Shared.GL_PACK_ALIGNMENT', 'Graphics.GL.Ext.SGIS.Texture4D.GL_PACK_IMAGE_DEPTH_SGIS', 'Graphics.GL.Internal.Shared.GL_PACK_IMAGE_HEIGHT', 'Graphics.GL.Ext.EXT.Texture3D.GL_PACK_IMAGE_HEIGHT_EXT', 'Graphics.GL.Internal.Shared.GL_PACK_LSB_FIRST', 'Graphics.GL.Ext.OML.Resample.GL_PACK_RESAMPLE_OML', 'Graphics.GL.Ext.SGIX.Resample.GL_PACK_RESAMPLE_SGIX', 'Graphics.GL.Internal.Shared.GL_PACK_ROW_LENGTH', 'Graphics.GL.Internal.Shared.GL_PACK_SKIP_IMAGES', 'Graphics.GL.Ext.EXT.Texture3D.GL_PACK_SKIP_IMAGES_EXT', 'Graphics.GL.Internal.Shared.GL_PACK_SKIP_PIXELS', 'Graphics.GL.Internal.Shared.GL_PACK_SKIP_ROWS', 'Graphics.GL.Ext.SGIS.Texture4D.GL_PACK_SKIP_VOLUMES_SGIS', 'Graphics.GL.Ext.SGIX.Subsample.GL_PACK_SUBSAMPLE_RATE_SGIX', 'Graphics.GL.Internal.Shared.GL_PACK_SWAP_BYTES', 'Graphics.GL.Ext.SGIX.PixelTiles.GL_PIXEL_TILE_CACHE_SIZE_SGIX', 'Graphics.GL.Ext.SGIX.PixelTiles.GL_PIXEL_TILE_GRID_DEPTH_SGIX', 'Graphics.GL.Ext.SGIX.PixelTiles.GL_PIXEL_TILE_GRID_HEIGHT_SGIX', 'Graphics.GL.Ext.SGIX.PixelTiles.GL_PIXEL_TILE_GRID_WIDTH_SGIX', 'Graphics.GL.Ext.SGIX.PixelTiles.GL_PIXEL_TILE_HEIGHT_SGIX', 'Graphics.GL.Ext.SGIX.PixelTiles.GL_PIXEL_TILE_WIDTH_SGIX', 'Graphics.GL.Internal.Shared.GL_UNPACK_ALIGNMENT', 'Graphics.GL.Ext.SGIS.Texture4D.GL_UNPACK_IMAGE_DEPTH_SGIS', 'Graphics.GL.Internal.Shared.GL_UNPACK_IMAGE_HEIGHT', 'Graphics.GL.Ext.EXT.Texture3D.GL_UNPACK_IMAGE_HEIGHT_EXT', 'Graphics.GL.Internal.Shared.GL_UNPACK_LSB_FIRST', 'Graphics.GL.Ext.OML.Resample.GL_UNPACK_RESAMPLE_OML', 'Graphics.GL.Ext.SGIX.Resample.GL_UNPACK_RESAMPLE_SGIX', 'Graphics.GL.Internal.Shared.GL_UNPACK_ROW_LENGTH', 'Graphics.GL.Ext.EXT.UnpackSubimage.GL_UNPACK_ROW_LENGTH_EXT', 'Graphics.GL.Internal.Shared.GL_UNPACK_SKIP_IMAGES', 'Graphics.GL.Ext.EXT.Texture3D.GL_UNPACK_SKIP_IMAGES_EXT', 'Graphics.GL.Internal.Shared.GL_UNPACK_SKIP_PIXELS', 'Graphics.GL.Ext.EXT.UnpackSubimage.GL_UNPACK_SKIP_PIXELS_EXT', 'Graphics.GL.Internal.Shared.GL_UNPACK_SKIP_ROWS', 'Graphics.GL.Ext.EXT.UnpackSubimage.GL_UNPACK_SKIP_ROWS_EXT', 'Graphics.GL.Ext.SGIS.Texture4D.GL_UNPACK_SKIP_VOLUMES_SGIS', 'Graphics.GL.Ext.SGIX.Subsample.GL_UNPACK_SUBSAMPLE_RATE_SGIX', 'Graphics.GL.Internal.Shared.GL_UNPACK_SWAP_BYTES'.
--
-- The parameter @param@ is a @CheckedInt32@.
glPixelStorei :: MonadIO m => GLenum -> GLint -> m ()
glPixelStorei = ffienumintIOV glPixelStoreiFunPtr
glPixelStoreiFunPtr :: FunPtr (GLenum -> GLint -> IO ())
glPixelStoreiFunPtr = unsafePerformIO (getProcAddress "glPixelStorei")
{-# NOINLINE glPixelStoreiFunPtr #-}
-- | Usage: @'glPointParameterf' pname param@
--
-- The parameter @pname@ is a @PointParameterNameARB@.
--
-- The parameter @param@ is a @CheckedFloat32@.
glPointParameterf :: MonadIO m => GLenum -> GLfloat -> m ()
glPointParameterf = ffienumfloatIOV glPointParameterfFunPtr
glPointParameterfFunPtr :: FunPtr (GLenum -> GLfloat -> IO ())
glPointParameterfFunPtr = unsafePerformIO (getProcAddress "glPointParameterf")
{-# NOINLINE glPointParameterfFunPtr #-}
-- | Usage: @'glPointParameterfv' pname params@
--
-- The parameter @pname@ is a @PointParameterNameARB@.
--
-- The parameter @params@ is a @CheckedFloat32@.
--
-- The length of @params@ should be @COMPSIZE(pname)@.
glPointParameterfv :: MonadIO m => GLenum -> Ptr GLfloat -> m ()
glPointParameterfv = ffienumPtrfloatIOV glPointParameterfvFunPtr
glPointParameterfvFunPtr :: FunPtr (GLenum -> Ptr GLfloat -> IO ())
glPointParameterfvFunPtr = unsafePerformIO (getProcAddress "glPointParameterfv")
{-# NOINLINE glPointParameterfvFunPtr #-}
-- | Usage: @'glPointParameteri' pname param@
--
-- The parameter @pname@ is a @PointParameterNameARB@.
glPointParameteri :: MonadIO m => GLenum -> GLint -> m ()
glPointParameteri = ffienumintIOV glPointParameteriFunPtr
glPointParameteriFunPtr :: FunPtr (GLenum -> GLint -> IO ())
glPointParameteriFunPtr = unsafePerformIO (getProcAddress "glPointParameteri")
{-# NOINLINE glPointParameteriFunPtr #-}
-- | Usage: @'glPointParameteriv' pname params@
--
-- The parameter @pname@ is a @PointParameterNameARB@.
--
-- The length of @params@ should be @COMPSIZE(pname)@.
glPointParameteriv :: MonadIO m => GLenum -> Ptr GLint -> m ()
glPointParameteriv = ffienumPtrintIOV glPointParameterivFunPtr
glPointParameterivFunPtr :: FunPtr (GLenum -> Ptr GLint -> IO ())
glPointParameterivFunPtr = unsafePerformIO (getProcAddress "glPointParameteriv")
{-# NOINLINE glPointParameterivFunPtr #-}
-- | Usage: @'glPointSize' size@
--
-- The parameter @size@ is a @CheckedFloat32@.
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glPointSize.xhtml>
glPointSize :: MonadIO m => GLfloat -> m ()
glPointSize = ffifloatIOV glPointSizeFunPtr
glPointSizeFunPtr :: FunPtr (GLfloat -> IO ())
glPointSizeFunPtr = unsafePerformIO (getProcAddress "glPointSize")
{-# NOINLINE glPointSizeFunPtr #-}
-- | Usage: @'glPolygonMode' face mode@
--
-- The parameter @face@ is a @MaterialFace@, one of: 'Graphics.GL.Internal.Shared.GL_BACK', 'Graphics.GL.Internal.Shared.GL_FRONT', 'Graphics.GL.Internal.Shared.GL_FRONT_AND_BACK'.
--
-- The parameter @mode@ is a @PolygonMode@, one of: 'Graphics.GL.Internal.Shared.GL_FILL', 'Graphics.GL.Internal.Shared.GL_LINE', 'Graphics.GL.Internal.Shared.GL_POINT'.
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glPolygonMode.xhtml>
glPolygonMode :: MonadIO m => GLenum -> GLenum -> m ()
glPolygonMode = ffienumenumIOV glPolygonModeFunPtr
glPolygonModeFunPtr :: FunPtr (GLenum -> GLenum -> IO ())
glPolygonModeFunPtr = unsafePerformIO (getProcAddress "glPolygonMode")
{-# NOINLINE glPolygonModeFunPtr #-}
-- | Usage: @'glPolygonOffset' factor units@
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glPolygonOffset.xhtml>
glPolygonOffset :: MonadIO m => GLfloat -> GLfloat -> m ()
glPolygonOffset = ffifloatfloatIOV glPolygonOffsetFunPtr
glPolygonOffsetFunPtr :: FunPtr (GLfloat -> GLfloat -> IO ())
glPolygonOffsetFunPtr = unsafePerformIO (getProcAddress "glPolygonOffset")
{-# NOINLINE glPolygonOffsetFunPtr #-}
-- | Usage: @'glPrimitiveRestartIndex' index@
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glPrimitiveRestartIndex.xhtml>
glPrimitiveRestartIndex :: MonadIO m => GLuint -> m ()
glPrimitiveRestartIndex = ffiuintIOV glPrimitiveRestartIndexFunPtr
glPrimitiveRestartIndexFunPtr :: FunPtr (GLuint -> IO ())
glPrimitiveRestartIndexFunPtr = unsafePerformIO (getProcAddress "glPrimitiveRestartIndex")
{-# NOINLINE glPrimitiveRestartIndexFunPtr #-}
-- | Usage: @'glProvokingVertex' mode@
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glProvokingVertex.xhtml>
glProvokingVertex :: MonadIO m => GLenum -> m ()
glProvokingVertex = ffienumIOV glProvokingVertexFunPtr
glProvokingVertexFunPtr :: FunPtr (GLenum -> IO ())
glProvokingVertexFunPtr = unsafePerformIO (getProcAddress "glProvokingVertex")
{-# NOINLINE glProvokingVertexFunPtr #-}
-- | Usage: @'glReadBuffer' src@
--
-- The parameter @src@ is a @ReadBufferMode@, one of: 'Graphics.GL.Internal.Shared.GL_AUX0', 'Graphics.GL.Internal.Shared.GL_AUX1', 'Graphics.GL.Internal.Shared.GL_AUX2', 'Graphics.GL.Internal.Shared.GL_AUX3', 'Graphics.GL.Internal.Shared.GL_BACK', 'Graphics.GL.Internal.Shared.GL_BACK_LEFT', 'Graphics.GL.Internal.Shared.GL_BACK_RIGHT', 'Graphics.GL.Internal.Shared.GL_FRONT', 'Graphics.GL.Internal.Shared.GL_FRONT_LEFT', 'Graphics.GL.Internal.Shared.GL_FRONT_RIGHT', 'Graphics.GL.Internal.Shared.GL_LEFT', 'Graphics.GL.Internal.Shared.GL_RIGHT'.
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glReadBuffer.xhtml>
glReadBuffer :: MonadIO m => GLenum -> m ()
glReadBuffer = ffienumIOV glReadBufferFunPtr
glReadBufferFunPtr :: FunPtr (GLenum -> IO ())
glReadBufferFunPtr = unsafePerformIO (getProcAddress "glReadBuffer")
{-# NOINLINE glReadBufferFunPtr #-}
-- | Usage: @'glReadPixels' x y width height format type pixels@
--
-- The parameter @x@ is a @WinCoord@.
--
-- The parameter @y@ is a @WinCoord@.
--
-- The parameter @format@ is a @PixelFormat@, one of: 'Graphics.GL.Ext.EXT.Abgr.GL_ABGR_EXT', 'Graphics.GL.Internal.Shared.GL_ALPHA', 'Graphics.GL.Internal.Shared.GL_BLUE', 'Graphics.GL.Ext.EXT.Cmyka.GL_CMYKA_EXT', 'Graphics.GL.Ext.EXT.Cmyka.GL_CMYK_EXT', 'Graphics.GL.Internal.Shared.GL_COLOR_INDEX', 'Graphics.GL.Internal.Shared.GL_DEPTH_COMPONENT', 'Graphics.GL.Internal.Shared.GL_GREEN', 'Graphics.GL.Internal.Shared.GL_LUMINANCE', 'Graphics.GL.Internal.Shared.GL_LUMINANCE_ALPHA', 'Graphics.GL.Internal.Shared.GL_RED', 'Graphics.GL.Ext.EXT.TextureRg.GL_RED_EXT', 'Graphics.GL.Internal.Shared.GL_RGB', 'Graphics.GL.Internal.Shared.GL_RGBA', 'Graphics.GL.Internal.Shared.GL_STENCIL_INDEX', 'Graphics.GL.Internal.Shared.GL_UNSIGNED_INT', 'Graphics.GL.Internal.Shared.GL_UNSIGNED_SHORT', 'Graphics.GL.Ext.SGIX.Ycrcb.GL_YCRCB_422_SGIX', 'Graphics.GL.Ext.SGIX.Ycrcb.GL_YCRCB_444_SGIX'.
--
-- The parameter @type@ is a @PixelType@, one of: 'Graphics.GL.Internal.Shared.GL_BITMAP', 'Graphics.GL.Internal.Shared.GL_BYTE', 'Graphics.GL.Internal.Shared.GL_FLOAT', 'Graphics.GL.Internal.Shared.GL_INT', 'Graphics.GL.Internal.Shared.GL_SHORT', 'Graphics.GL.Internal.Shared.GL_UNSIGNED_BYTE', 'Graphics.GL.Internal.Shared.GL_UNSIGNED_BYTE_3_3_2', 'Graphics.GL.Ext.EXT.PackedPixels.GL_UNSIGNED_BYTE_3_3_2_EXT', 'Graphics.GL.Internal.Shared.GL_UNSIGNED_INT', 'Graphics.GL.Internal.Shared.GL_UNSIGNED_INT_10_10_10_2', 'Graphics.GL.Ext.EXT.PackedPixels.GL_UNSIGNED_INT_10_10_10_2_EXT', 'Graphics.GL.Internal.Shared.GL_UNSIGNED_INT_8_8_8_8', 'Graphics.GL.Ext.EXT.PackedPixels.GL_UNSIGNED_INT_8_8_8_8_EXT', 'Graphics.GL.Internal.Shared.GL_UNSIGNED_SHORT', 'Graphics.GL.Internal.Shared.GL_UNSIGNED_SHORT_4_4_4_4', 'Graphics.GL.Ext.EXT.PackedPixels.GL_UNSIGNED_SHORT_4_4_4_4_EXT', 'Graphics.GL.Internal.Shared.GL_UNSIGNED_SHORT_5_5_5_1', 'Graphics.GL.Ext.EXT.PackedPixels.GL_UNSIGNED_SHORT_5_5_5_1_EXT'.
--
-- The length of @pixels@ should be @COMPSIZE(format,type,width,height)@.
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glReadPixels.xhtml>
glReadPixels :: MonadIO m => GLint -> GLint -> GLsizei -> GLsizei -> GLenum -> GLenum -> Ptr () -> m ()
glReadPixels = ffiintintsizeisizeienumenumPtrVIOV glReadPixelsFunPtr
glReadPixelsFunPtr :: FunPtr (GLint -> GLint -> GLsizei -> GLsizei -> GLenum -> GLenum -> Ptr () -> IO ())
glReadPixelsFunPtr = unsafePerformIO (getProcAddress "glReadPixels")
{-# NOINLINE glReadPixelsFunPtr #-}
-- | Usage: @'glRenderbufferStorage' target internalformat width height@
--
-- The parameter @target@ is a @RenderbufferTarget@.
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glRenderbufferStorage.xhtml>
glRenderbufferStorage :: MonadIO m => GLenum -> GLenum -> GLsizei -> GLsizei -> m ()
glRenderbufferStorage = ffienumenumsizeisizeiIOV glRenderbufferStorageFunPtr
glRenderbufferStorageFunPtr :: FunPtr (GLenum -> GLenum -> GLsizei -> GLsizei -> IO ())
glRenderbufferStorageFunPtr = unsafePerformIO (getProcAddress "glRenderbufferStorage")
{-# NOINLINE glRenderbufferStorageFunPtr #-}
-- | Usage: @'glRenderbufferStorageMultisample' target samples internalformat width height@
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glRenderbufferStorageMultisample.xhtml>
glRenderbufferStorageMultisample :: MonadIO m => GLenum -> GLsizei -> GLenum -> GLsizei -> GLsizei -> m ()
glRenderbufferStorageMultisample = ffienumsizeienumsizeisizeiIOV glRenderbufferStorageMultisampleFunPtr
glRenderbufferStorageMultisampleFunPtr :: FunPtr (GLenum -> GLsizei -> GLenum -> GLsizei -> GLsizei -> IO ())
glRenderbufferStorageMultisampleFunPtr = unsafePerformIO (getProcAddress "glRenderbufferStorageMultisample")
{-# NOINLINE glRenderbufferStorageMultisampleFunPtr #-}
-- | Usage: @'glSampleCoverage' value invert@
--
-- The parameter @invert@ is a @Boolean@, one of: 'Graphics.GL.Internal.Shared.GL_FALSE', 'Graphics.GL.Internal.Shared.GL_TRUE'.
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glSampleCoverage.xhtml>
glSampleCoverage :: MonadIO m => GLfloat -> GLboolean -> m ()
glSampleCoverage = ffifloatbooleanIOV glSampleCoverageFunPtr
glSampleCoverageFunPtr :: FunPtr (GLfloat -> GLboolean -> IO ())
glSampleCoverageFunPtr = unsafePerformIO (getProcAddress "glSampleCoverage")
{-# NOINLINE glSampleCoverageFunPtr #-}
-- | Usage: @'glSampleMaski' maskNumber mask@
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glSampleMaski.xhtml>
glSampleMaski :: MonadIO m => GLuint -> GLbitfield -> m ()
glSampleMaski = ffiuintbitfieldIOV glSampleMaskiFunPtr
glSampleMaskiFunPtr :: FunPtr (GLuint -> GLbitfield -> IO ())
glSampleMaskiFunPtr = unsafePerformIO (getProcAddress "glSampleMaski")
{-# NOINLINE glSampleMaskiFunPtr #-}
-- | Usage: @'glScissor' x y width height@
--
-- The parameter @x@ is a @WinCoord@.
--
-- The parameter @y@ is a @WinCoord@.
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glScissor.xhtml>
glScissor :: MonadIO m => GLint -> GLint -> GLsizei -> GLsizei -> m ()
glScissor = ffiintintsizeisizeiIOV glScissorFunPtr
glScissorFunPtr :: FunPtr (GLint -> GLint -> GLsizei -> GLsizei -> IO ())
glScissorFunPtr = unsafePerformIO (getProcAddress "glScissor")
{-# NOINLINE glScissorFunPtr #-}
-- | Usage: @'glShaderSource' shader count string length@
--
-- The length of @string@ should be @count@.
--
-- The length of @length@ should be @count@.
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glShaderSource.xhtml>
glShaderSource :: MonadIO m => GLuint -> GLsizei -> Ptr (Ptr GLchar) -> Ptr GLint -> m ()
glShaderSource = ffiuintsizeiPtrPtrcharPtrintIOV glShaderSourceFunPtr
glShaderSourceFunPtr :: FunPtr (GLuint -> GLsizei -> Ptr (Ptr GLchar) -> Ptr GLint -> IO ())
glShaderSourceFunPtr = unsafePerformIO (getProcAddress "glShaderSource")
{-# NOINLINE glShaderSourceFunPtr #-}
-- | Usage: @'glStencilFunc' func ref mask@
--
-- The parameter @func@ is a @StencilFunction@, one of: 'Graphics.GL.Internal.Shared.GL_ALWAYS', 'Graphics.GL.Internal.Shared.GL_EQUAL', 'Graphics.GL.Internal.Shared.GL_GEQUAL', 'Graphics.GL.Internal.Shared.GL_GREATER', 'Graphics.GL.Internal.Shared.GL_LEQUAL', 'Graphics.GL.Internal.Shared.GL_LESS', 'Graphics.GL.Internal.Shared.GL_NEVER', 'Graphics.GL.Internal.Shared.GL_NOTEQUAL'.
--
-- The parameter @ref@ is a @StencilValue@.
--
-- The parameter @mask@ is a @MaskedStencilValue@.
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glStencilFunc.xhtml>
glStencilFunc :: MonadIO m => GLenum -> GLint -> GLuint -> m ()
glStencilFunc = ffienumintuintIOV glStencilFuncFunPtr
glStencilFuncFunPtr :: FunPtr (GLenum -> GLint -> GLuint -> IO ())
glStencilFuncFunPtr = unsafePerformIO (getProcAddress "glStencilFunc")
{-# NOINLINE glStencilFuncFunPtr #-}
-- | Usage: @'glStencilFuncSeparate' face func ref mask@
--
-- The parameter @face@ is a @StencilFaceDirection@.
--
-- The parameter @func@ is a @StencilFunction@, one of: 'Graphics.GL.Internal.Shared.GL_ALWAYS', 'Graphics.GL.Internal.Shared.GL_EQUAL', 'Graphics.GL.Internal.Shared.GL_GEQUAL', 'Graphics.GL.Internal.Shared.GL_GREATER', 'Graphics.GL.Internal.Shared.GL_LEQUAL', 'Graphics.GL.Internal.Shared.GL_LESS', 'Graphics.GL.Internal.Shared.GL_NEVER', 'Graphics.GL.Internal.Shared.GL_NOTEQUAL'.
--
-- The parameter @ref@ is a @StencilValue@.
--
-- The parameter @mask@ is a @MaskedStencilValue@.
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glStencilFuncSeparate.xhtml>
glStencilFuncSeparate :: MonadIO m => GLenum -> GLenum -> GLint -> GLuint -> m ()
glStencilFuncSeparate = ffienumenumintuintIOV glStencilFuncSeparateFunPtr
glStencilFuncSeparateFunPtr :: FunPtr (GLenum -> GLenum -> GLint -> GLuint -> IO ())
glStencilFuncSeparateFunPtr = unsafePerformIO (getProcAddress "glStencilFuncSeparate")
{-# NOINLINE glStencilFuncSeparateFunPtr #-}
-- | Usage: @'glStencilMask' mask@
--
-- The parameter @mask@ is a @MaskedStencilValue@.
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glStencilMask.xhtml>
glStencilMask :: MonadIO m => GLuint -> m ()
glStencilMask = ffiuintIOV glStencilMaskFunPtr
glStencilMaskFunPtr :: FunPtr (GLuint -> IO ())
glStencilMaskFunPtr = unsafePerformIO (getProcAddress "glStencilMask")
{-# NOINLINE glStencilMaskFunPtr #-}
-- | Usage: @'glStencilMaskSeparate' face mask@
--
-- The parameter @face@ is a @StencilFaceDirection@.
--
-- The parameter @mask@ is a @MaskedStencilValue@.
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glStencilMaskSeparate.xhtml>
glStencilMaskSeparate :: MonadIO m => GLenum -> GLuint -> m ()
glStencilMaskSeparate = ffienumuintIOV glStencilMaskSeparateFunPtr
glStencilMaskSeparateFunPtr :: FunPtr (GLenum -> GLuint -> IO ())
glStencilMaskSeparateFunPtr = unsafePerformIO (getProcAddress "glStencilMaskSeparate")
{-# NOINLINE glStencilMaskSeparateFunPtr #-}
-- | Usage: @'glStencilOp' fail zfail zpass@
--
-- The parameter @fail@ is a @StencilOp@, one of: 'Graphics.GL.Internal.Shared.GL_DECR', 'Graphics.GL.Internal.Shared.GL_INCR', 'Graphics.GL.Internal.Shared.GL_INVERT', 'Graphics.GL.Internal.Shared.GL_KEEP', 'Graphics.GL.Internal.Shared.GL_REPLACE', 'Graphics.GL.Internal.Shared.GL_ZERO'.
--
-- The parameter @zfail@ is a @StencilOp@, one of: 'Graphics.GL.Internal.Shared.GL_DECR', 'Graphics.GL.Internal.Shared.GL_INCR', 'Graphics.GL.Internal.Shared.GL_INVERT', 'Graphics.GL.Internal.Shared.GL_KEEP', 'Graphics.GL.Internal.Shared.GL_REPLACE', 'Graphics.GL.Internal.Shared.GL_ZERO'.
--
-- The parameter @zpass@ is a @StencilOp@, one of: 'Graphics.GL.Internal.Shared.GL_DECR', 'Graphics.GL.Internal.Shared.GL_INCR', 'Graphics.GL.Internal.Shared.GL_INVERT', 'Graphics.GL.Internal.Shared.GL_KEEP', 'Graphics.GL.Internal.Shared.GL_REPLACE', 'Graphics.GL.Internal.Shared.GL_ZERO'.
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glStencilOp.xhtml>
glStencilOp :: MonadIO m => GLenum -> GLenum -> GLenum -> m ()
glStencilOp = ffienumenumenumIOV glStencilOpFunPtr
glStencilOpFunPtr :: FunPtr (GLenum -> GLenum -> GLenum -> IO ())
glStencilOpFunPtr = unsafePerformIO (getProcAddress "glStencilOp")
{-# NOINLINE glStencilOpFunPtr #-}
-- | Usage: @'glStencilOpSeparate' face sfail dpfail dppass@
--
-- The parameter @face@ is a @StencilFaceDirection@.
--
-- The parameter @sfail@ is a @StencilOp@, one of: 'Graphics.GL.Internal.Shared.GL_DECR', 'Graphics.GL.Internal.Shared.GL_INCR', 'Graphics.GL.Internal.Shared.GL_INVERT', 'Graphics.GL.Internal.Shared.GL_KEEP', 'Graphics.GL.Internal.Shared.GL_REPLACE', 'Graphics.GL.Internal.Shared.GL_ZERO'.
--
-- The parameter @dpfail@ is a @StencilOp@, one of: 'Graphics.GL.Internal.Shared.GL_DECR', 'Graphics.GL.Internal.Shared.GL_INCR', 'Graphics.GL.Internal.Shared.GL_INVERT', 'Graphics.GL.Internal.Shared.GL_KEEP', 'Graphics.GL.Internal.Shared.GL_REPLACE', 'Graphics.GL.Internal.Shared.GL_ZERO'.
--
-- The parameter @dppass@ is a @StencilOp@, one of: 'Graphics.GL.Internal.Shared.GL_DECR', 'Graphics.GL.Internal.Shared.GL_INCR', 'Graphics.GL.Internal.Shared.GL_INVERT', 'Graphics.GL.Internal.Shared.GL_KEEP', 'Graphics.GL.Internal.Shared.GL_REPLACE', 'Graphics.GL.Internal.Shared.GL_ZERO'.
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glStencilOpSeparate.xhtml>
glStencilOpSeparate :: MonadIO m => GLenum -> GLenum -> GLenum -> GLenum -> m ()
glStencilOpSeparate = ffienumenumenumenumIOV glStencilOpSeparateFunPtr
glStencilOpSeparateFunPtr :: FunPtr (GLenum -> GLenum -> GLenum -> GLenum -> IO ())
glStencilOpSeparateFunPtr = unsafePerformIO (getProcAddress "glStencilOpSeparate")
{-# NOINLINE glStencilOpSeparateFunPtr #-}
-- | Usage: @'glTexBuffer' target internalformat buffer@
--
-- The parameter @target@ is a @TextureTarget@, one of: 'Graphics.GL.Ext.SGIS.DetailTexture.GL_DETAIL_TEXTURE_2D_SGIS', 'Graphics.GL.Internal.Shared.GL_PROXY_TEXTURE_1D', 'Graphics.GL.Ext.EXT.Texture.GL_PROXY_TEXTURE_1D_EXT', 'Graphics.GL.Internal.Shared.GL_PROXY_TEXTURE_2D', 'Graphics.GL.Ext.EXT.Texture.GL_PROXY_TEXTURE_2D_EXT', 'Graphics.GL.Internal.Shared.GL_PROXY_TEXTURE_3D', 'Graphics.GL.Ext.EXT.Texture3D.GL_PROXY_TEXTURE_3D_EXT', 'Graphics.GL.Ext.SGIS.Texture4D.GL_PROXY_TEXTURE_4D_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_1D', 'Graphics.GL.Internal.Shared.GL_TEXTURE_2D', 'Graphics.GL.Internal.Shared.GL_TEXTURE_3D', 'Graphics.GL.Ext.EXT.Texture3D.GL_TEXTURE_3D_EXT', 'Graphics.GL.Ext.OES.Texture3D.GL_TEXTURE_3D_OES', 'Graphics.GL.Ext.SGIS.Texture4D.GL_TEXTURE_4D_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_BASE_LEVEL', 'Graphics.GL.Ext.SGIS.TextureLod.GL_TEXTURE_BASE_LEVEL_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_MAX_LEVEL', 'Graphics.GL.Ext.SGIS.TextureLod.GL_TEXTURE_MAX_LEVEL_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_MAX_LOD', 'Graphics.GL.Ext.SGIS.TextureLod.GL_TEXTURE_MAX_LOD_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_MIN_LOD', 'Graphics.GL.Ext.SGIS.TextureLod.GL_TEXTURE_MIN_LOD_SGIS'.
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glTexBuffer.xhtml>
glTexBuffer :: MonadIO m => GLenum -> GLenum -> GLuint -> m ()
glTexBuffer = ffienumenumuintIOV glTexBufferFunPtr
glTexBufferFunPtr :: FunPtr (GLenum -> GLenum -> GLuint -> IO ())
glTexBufferFunPtr = unsafePerformIO (getProcAddress "glTexBuffer")
{-# NOINLINE glTexBufferFunPtr #-}
-- | Usage: @'glTexImage1D' target level internalformat width border format type pixels@
--
-- The parameter @target@ is a @TextureTarget@, one of: 'Graphics.GL.Ext.SGIS.DetailTexture.GL_DETAIL_TEXTURE_2D_SGIS', 'Graphics.GL.Internal.Shared.GL_PROXY_TEXTURE_1D', 'Graphics.GL.Ext.EXT.Texture.GL_PROXY_TEXTURE_1D_EXT', 'Graphics.GL.Internal.Shared.GL_PROXY_TEXTURE_2D', 'Graphics.GL.Ext.EXT.Texture.GL_PROXY_TEXTURE_2D_EXT', 'Graphics.GL.Internal.Shared.GL_PROXY_TEXTURE_3D', 'Graphics.GL.Ext.EXT.Texture3D.GL_PROXY_TEXTURE_3D_EXT', 'Graphics.GL.Ext.SGIS.Texture4D.GL_PROXY_TEXTURE_4D_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_1D', 'Graphics.GL.Internal.Shared.GL_TEXTURE_2D', 'Graphics.GL.Internal.Shared.GL_TEXTURE_3D', 'Graphics.GL.Ext.EXT.Texture3D.GL_TEXTURE_3D_EXT', 'Graphics.GL.Ext.OES.Texture3D.GL_TEXTURE_3D_OES', 'Graphics.GL.Ext.SGIS.Texture4D.GL_TEXTURE_4D_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_BASE_LEVEL', 'Graphics.GL.Ext.SGIS.TextureLod.GL_TEXTURE_BASE_LEVEL_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_MAX_LEVEL', 'Graphics.GL.Ext.SGIS.TextureLod.GL_TEXTURE_MAX_LEVEL_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_MAX_LOD', 'Graphics.GL.Ext.SGIS.TextureLod.GL_TEXTURE_MAX_LOD_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_MIN_LOD', 'Graphics.GL.Ext.SGIS.TextureLod.GL_TEXTURE_MIN_LOD_SGIS'.
--
-- The parameter @level@ is a @CheckedInt32@.
--
-- The parameter @internalformat@ is a @TextureComponentCount@.
--
-- The parameter @border@ is a @CheckedInt32@.
--
-- The parameter @format@ is a @PixelFormat@, one of: 'Graphics.GL.Ext.EXT.Abgr.GL_ABGR_EXT', 'Graphics.GL.Internal.Shared.GL_ALPHA', 'Graphics.GL.Internal.Shared.GL_BLUE', 'Graphics.GL.Ext.EXT.Cmyka.GL_CMYKA_EXT', 'Graphics.GL.Ext.EXT.Cmyka.GL_CMYK_EXT', 'Graphics.GL.Internal.Shared.GL_COLOR_INDEX', 'Graphics.GL.Internal.Shared.GL_DEPTH_COMPONENT', 'Graphics.GL.Internal.Shared.GL_GREEN', 'Graphics.GL.Internal.Shared.GL_LUMINANCE', 'Graphics.GL.Internal.Shared.GL_LUMINANCE_ALPHA', 'Graphics.GL.Internal.Shared.GL_RED', 'Graphics.GL.Ext.EXT.TextureRg.GL_RED_EXT', 'Graphics.GL.Internal.Shared.GL_RGB', 'Graphics.GL.Internal.Shared.GL_RGBA', 'Graphics.GL.Internal.Shared.GL_STENCIL_INDEX', 'Graphics.GL.Internal.Shared.GL_UNSIGNED_INT', 'Graphics.GL.Internal.Shared.GL_UNSIGNED_SHORT', 'Graphics.GL.Ext.SGIX.Ycrcb.GL_YCRCB_422_SGIX', 'Graphics.GL.Ext.SGIX.Ycrcb.GL_YCRCB_444_SGIX'.
--
-- The parameter @type@ is a @PixelType@, one of: 'Graphics.GL.Internal.Shared.GL_BITMAP', 'Graphics.GL.Internal.Shared.GL_BYTE', 'Graphics.GL.Internal.Shared.GL_FLOAT', 'Graphics.GL.Internal.Shared.GL_INT', 'Graphics.GL.Internal.Shared.GL_SHORT', 'Graphics.GL.Internal.Shared.GL_UNSIGNED_BYTE', 'Graphics.GL.Internal.Shared.GL_UNSIGNED_BYTE_3_3_2', 'Graphics.GL.Ext.EXT.PackedPixels.GL_UNSIGNED_BYTE_3_3_2_EXT', 'Graphics.GL.Internal.Shared.GL_UNSIGNED_INT', 'Graphics.GL.Internal.Shared.GL_UNSIGNED_INT_10_10_10_2', 'Graphics.GL.Ext.EXT.PackedPixels.GL_UNSIGNED_INT_10_10_10_2_EXT', 'Graphics.GL.Internal.Shared.GL_UNSIGNED_INT_8_8_8_8', 'Graphics.GL.Ext.EXT.PackedPixels.GL_UNSIGNED_INT_8_8_8_8_EXT', 'Graphics.GL.Internal.Shared.GL_UNSIGNED_SHORT', 'Graphics.GL.Internal.Shared.GL_UNSIGNED_SHORT_4_4_4_4', 'Graphics.GL.Ext.EXT.PackedPixels.GL_UNSIGNED_SHORT_4_4_4_4_EXT', 'Graphics.GL.Internal.Shared.GL_UNSIGNED_SHORT_5_5_5_1', 'Graphics.GL.Ext.EXT.PackedPixels.GL_UNSIGNED_SHORT_5_5_5_1_EXT'.
--
-- The length of @pixels@ should be @COMPSIZE(format,type,width)@.
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glTexImage1D.xhtml>
glTexImage1D :: MonadIO m => GLenum -> GLint -> GLint -> GLsizei -> GLint -> GLenum -> GLenum -> Ptr () -> m ()
glTexImage1D = ffienumintintsizeiintenumenumPtrVIOV glTexImage1DFunPtr
glTexImage1DFunPtr :: FunPtr (GLenum -> GLint -> GLint -> GLsizei -> GLint -> GLenum -> GLenum -> Ptr () -> IO ())
glTexImage1DFunPtr = unsafePerformIO (getProcAddress "glTexImage1D")
{-# NOINLINE glTexImage1DFunPtr #-}
-- | Usage: @'glTexImage2D' target level internalformat width height border format type pixels@
--
-- The parameter @target@ is a @TextureTarget@, one of: 'Graphics.GL.Ext.SGIS.DetailTexture.GL_DETAIL_TEXTURE_2D_SGIS', 'Graphics.GL.Internal.Shared.GL_PROXY_TEXTURE_1D', 'Graphics.GL.Ext.EXT.Texture.GL_PROXY_TEXTURE_1D_EXT', 'Graphics.GL.Internal.Shared.GL_PROXY_TEXTURE_2D', 'Graphics.GL.Ext.EXT.Texture.GL_PROXY_TEXTURE_2D_EXT', 'Graphics.GL.Internal.Shared.GL_PROXY_TEXTURE_3D', 'Graphics.GL.Ext.EXT.Texture3D.GL_PROXY_TEXTURE_3D_EXT', 'Graphics.GL.Ext.SGIS.Texture4D.GL_PROXY_TEXTURE_4D_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_1D', 'Graphics.GL.Internal.Shared.GL_TEXTURE_2D', 'Graphics.GL.Internal.Shared.GL_TEXTURE_3D', 'Graphics.GL.Ext.EXT.Texture3D.GL_TEXTURE_3D_EXT', 'Graphics.GL.Ext.OES.Texture3D.GL_TEXTURE_3D_OES', 'Graphics.GL.Ext.SGIS.Texture4D.GL_TEXTURE_4D_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_BASE_LEVEL', 'Graphics.GL.Ext.SGIS.TextureLod.GL_TEXTURE_BASE_LEVEL_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_MAX_LEVEL', 'Graphics.GL.Ext.SGIS.TextureLod.GL_TEXTURE_MAX_LEVEL_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_MAX_LOD', 'Graphics.GL.Ext.SGIS.TextureLod.GL_TEXTURE_MAX_LOD_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_MIN_LOD', 'Graphics.GL.Ext.SGIS.TextureLod.GL_TEXTURE_MIN_LOD_SGIS'.
--
-- The parameter @level@ is a @CheckedInt32@.
--
-- The parameter @internalformat@ is a @TextureComponentCount@.
--
-- The parameter @border@ is a @CheckedInt32@.
--
-- The parameter @format@ is a @PixelFormat@, one of: 'Graphics.GL.Ext.EXT.Abgr.GL_ABGR_EXT', 'Graphics.GL.Internal.Shared.GL_ALPHA', 'Graphics.GL.Internal.Shared.GL_BLUE', 'Graphics.GL.Ext.EXT.Cmyka.GL_CMYKA_EXT', 'Graphics.GL.Ext.EXT.Cmyka.GL_CMYK_EXT', 'Graphics.GL.Internal.Shared.GL_COLOR_INDEX', 'Graphics.GL.Internal.Shared.GL_DEPTH_COMPONENT', 'Graphics.GL.Internal.Shared.GL_GREEN', 'Graphics.GL.Internal.Shared.GL_LUMINANCE', 'Graphics.GL.Internal.Shared.GL_LUMINANCE_ALPHA', 'Graphics.GL.Internal.Shared.GL_RED', 'Graphics.GL.Ext.EXT.TextureRg.GL_RED_EXT', 'Graphics.GL.Internal.Shared.GL_RGB', 'Graphics.GL.Internal.Shared.GL_RGBA', 'Graphics.GL.Internal.Shared.GL_STENCIL_INDEX', 'Graphics.GL.Internal.Shared.GL_UNSIGNED_INT', 'Graphics.GL.Internal.Shared.GL_UNSIGNED_SHORT', 'Graphics.GL.Ext.SGIX.Ycrcb.GL_YCRCB_422_SGIX', 'Graphics.GL.Ext.SGIX.Ycrcb.GL_YCRCB_444_SGIX'.
--
-- The parameter @type@ is a @PixelType@, one of: 'Graphics.GL.Internal.Shared.GL_BITMAP', 'Graphics.GL.Internal.Shared.GL_BYTE', 'Graphics.GL.Internal.Shared.GL_FLOAT', 'Graphics.GL.Internal.Shared.GL_INT', 'Graphics.GL.Internal.Shared.GL_SHORT', 'Graphics.GL.Internal.Shared.GL_UNSIGNED_BYTE', 'Graphics.GL.Internal.Shared.GL_UNSIGNED_BYTE_3_3_2', 'Graphics.GL.Ext.EXT.PackedPixels.GL_UNSIGNED_BYTE_3_3_2_EXT', 'Graphics.GL.Internal.Shared.GL_UNSIGNED_INT', 'Graphics.GL.Internal.Shared.GL_UNSIGNED_INT_10_10_10_2', 'Graphics.GL.Ext.EXT.PackedPixels.GL_UNSIGNED_INT_10_10_10_2_EXT', 'Graphics.GL.Internal.Shared.GL_UNSIGNED_INT_8_8_8_8', 'Graphics.GL.Ext.EXT.PackedPixels.GL_UNSIGNED_INT_8_8_8_8_EXT', 'Graphics.GL.Internal.Shared.GL_UNSIGNED_SHORT', 'Graphics.GL.Internal.Shared.GL_UNSIGNED_SHORT_4_4_4_4', 'Graphics.GL.Ext.EXT.PackedPixels.GL_UNSIGNED_SHORT_4_4_4_4_EXT', 'Graphics.GL.Internal.Shared.GL_UNSIGNED_SHORT_5_5_5_1', 'Graphics.GL.Ext.EXT.PackedPixels.GL_UNSIGNED_SHORT_5_5_5_1_EXT'.
--
-- The length of @pixels@ should be @COMPSIZE(format,type,width,height)@.
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glTexImage2D.xhtml>
glTexImage2D :: MonadIO m => GLenum -> GLint -> GLint -> GLsizei -> GLsizei -> GLint -> GLenum -> GLenum -> Ptr () -> m ()
glTexImage2D = ffienumintintsizeisizeiintenumenumPtrVIOV glTexImage2DFunPtr
glTexImage2DFunPtr :: FunPtr (GLenum -> GLint -> GLint -> GLsizei -> GLsizei -> GLint -> GLenum -> GLenum -> Ptr () -> IO ())
glTexImage2DFunPtr = unsafePerformIO (getProcAddress "glTexImage2D")
{-# NOINLINE glTexImage2DFunPtr #-}
-- | Usage: @'glTexImage2DMultisample' target samples internalformat width height fixedsamplelocations@
--
-- The parameter @fixedsamplelocations@ is a @Boolean@, one of: 'Graphics.GL.Internal.Shared.GL_FALSE', 'Graphics.GL.Internal.Shared.GL_TRUE'.
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glTexImage2DMultisample.xhtml>
glTexImage2DMultisample :: MonadIO m => GLenum -> GLsizei -> GLenum -> GLsizei -> GLsizei -> GLboolean -> m ()
glTexImage2DMultisample = ffienumsizeienumsizeisizeibooleanIOV glTexImage2DMultisampleFunPtr
glTexImage2DMultisampleFunPtr :: FunPtr (GLenum -> GLsizei -> GLenum -> GLsizei -> GLsizei -> GLboolean -> IO ())
glTexImage2DMultisampleFunPtr = unsafePerformIO (getProcAddress "glTexImage2DMultisample")
{-# NOINLINE glTexImage2DMultisampleFunPtr #-}
-- | Usage: @'glTexImage3D' target level internalformat width height depth border format type pixels@
--
-- The parameter @target@ is a @TextureTarget@, one of: 'Graphics.GL.Ext.SGIS.DetailTexture.GL_DETAIL_TEXTURE_2D_SGIS', 'Graphics.GL.Internal.Shared.GL_PROXY_TEXTURE_1D', 'Graphics.GL.Ext.EXT.Texture.GL_PROXY_TEXTURE_1D_EXT', 'Graphics.GL.Internal.Shared.GL_PROXY_TEXTURE_2D', 'Graphics.GL.Ext.EXT.Texture.GL_PROXY_TEXTURE_2D_EXT', 'Graphics.GL.Internal.Shared.GL_PROXY_TEXTURE_3D', 'Graphics.GL.Ext.EXT.Texture3D.GL_PROXY_TEXTURE_3D_EXT', 'Graphics.GL.Ext.SGIS.Texture4D.GL_PROXY_TEXTURE_4D_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_1D', 'Graphics.GL.Internal.Shared.GL_TEXTURE_2D', 'Graphics.GL.Internal.Shared.GL_TEXTURE_3D', 'Graphics.GL.Ext.EXT.Texture3D.GL_TEXTURE_3D_EXT', 'Graphics.GL.Ext.OES.Texture3D.GL_TEXTURE_3D_OES', 'Graphics.GL.Ext.SGIS.Texture4D.GL_TEXTURE_4D_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_BASE_LEVEL', 'Graphics.GL.Ext.SGIS.TextureLod.GL_TEXTURE_BASE_LEVEL_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_MAX_LEVEL', 'Graphics.GL.Ext.SGIS.TextureLod.GL_TEXTURE_MAX_LEVEL_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_MAX_LOD', 'Graphics.GL.Ext.SGIS.TextureLod.GL_TEXTURE_MAX_LOD_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_MIN_LOD', 'Graphics.GL.Ext.SGIS.TextureLod.GL_TEXTURE_MIN_LOD_SGIS'.
--
-- The parameter @level@ is a @CheckedInt32@.
--
-- The parameter @internalformat@ is a @TextureComponentCount@.
--
-- The parameter @border@ is a @CheckedInt32@.
--
-- The parameter @format@ is a @PixelFormat@, one of: 'Graphics.GL.Ext.EXT.Abgr.GL_ABGR_EXT', 'Graphics.GL.Internal.Shared.GL_ALPHA', 'Graphics.GL.Internal.Shared.GL_BLUE', 'Graphics.GL.Ext.EXT.Cmyka.GL_CMYKA_EXT', 'Graphics.GL.Ext.EXT.Cmyka.GL_CMYK_EXT', 'Graphics.GL.Internal.Shared.GL_COLOR_INDEX', 'Graphics.GL.Internal.Shared.GL_DEPTH_COMPONENT', 'Graphics.GL.Internal.Shared.GL_GREEN', 'Graphics.GL.Internal.Shared.GL_LUMINANCE', 'Graphics.GL.Internal.Shared.GL_LUMINANCE_ALPHA', 'Graphics.GL.Internal.Shared.GL_RED', 'Graphics.GL.Ext.EXT.TextureRg.GL_RED_EXT', 'Graphics.GL.Internal.Shared.GL_RGB', 'Graphics.GL.Internal.Shared.GL_RGBA', 'Graphics.GL.Internal.Shared.GL_STENCIL_INDEX', 'Graphics.GL.Internal.Shared.GL_UNSIGNED_INT', 'Graphics.GL.Internal.Shared.GL_UNSIGNED_SHORT', 'Graphics.GL.Ext.SGIX.Ycrcb.GL_YCRCB_422_SGIX', 'Graphics.GL.Ext.SGIX.Ycrcb.GL_YCRCB_444_SGIX'.
--
-- The parameter @type@ is a @PixelType@, one of: 'Graphics.GL.Internal.Shared.GL_BITMAP', 'Graphics.GL.Internal.Shared.GL_BYTE', 'Graphics.GL.Internal.Shared.GL_FLOAT', 'Graphics.GL.Internal.Shared.GL_INT', 'Graphics.GL.Internal.Shared.GL_SHORT', 'Graphics.GL.Internal.Shared.GL_UNSIGNED_BYTE', 'Graphics.GL.Internal.Shared.GL_UNSIGNED_BYTE_3_3_2', 'Graphics.GL.Ext.EXT.PackedPixels.GL_UNSIGNED_BYTE_3_3_2_EXT', 'Graphics.GL.Internal.Shared.GL_UNSIGNED_INT', 'Graphics.GL.Internal.Shared.GL_UNSIGNED_INT_10_10_10_2', 'Graphics.GL.Ext.EXT.PackedPixels.GL_UNSIGNED_INT_10_10_10_2_EXT', 'Graphics.GL.Internal.Shared.GL_UNSIGNED_INT_8_8_8_8', 'Graphics.GL.Ext.EXT.PackedPixels.GL_UNSIGNED_INT_8_8_8_8_EXT', 'Graphics.GL.Internal.Shared.GL_UNSIGNED_SHORT', 'Graphics.GL.Internal.Shared.GL_UNSIGNED_SHORT_4_4_4_4', 'Graphics.GL.Ext.EXT.PackedPixels.GL_UNSIGNED_SHORT_4_4_4_4_EXT', 'Graphics.GL.Internal.Shared.GL_UNSIGNED_SHORT_5_5_5_1', 'Graphics.GL.Ext.EXT.PackedPixels.GL_UNSIGNED_SHORT_5_5_5_1_EXT'.
--
-- The length of @pixels@ should be @COMPSIZE(format,type,width,height,depth)@.
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glTexImage3D.xhtml>
glTexImage3D :: MonadIO m => GLenum -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLint -> GLenum -> GLenum -> Ptr () -> m ()
glTexImage3D = ffienumintintsizeisizeisizeiintenumenumPtrVIOV glTexImage3DFunPtr
glTexImage3DFunPtr :: FunPtr (GLenum -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLint -> GLenum -> GLenum -> Ptr () -> IO ())
glTexImage3DFunPtr = unsafePerformIO (getProcAddress "glTexImage3D")
{-# NOINLINE glTexImage3DFunPtr #-}
-- | Usage: @'glTexImage3DMultisample' target samples internalformat width height depth fixedsamplelocations@
--
-- The parameter @fixedsamplelocations@ is a @Boolean@, one of: 'Graphics.GL.Internal.Shared.GL_FALSE', 'Graphics.GL.Internal.Shared.GL_TRUE'.
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glTexImage3DMultisample.xhtml>
glTexImage3DMultisample :: MonadIO m => GLenum -> GLsizei -> GLenum -> GLsizei -> GLsizei -> GLsizei -> GLboolean -> m ()
glTexImage3DMultisample = ffienumsizeienumsizeisizeisizeibooleanIOV glTexImage3DMultisampleFunPtr
glTexImage3DMultisampleFunPtr :: FunPtr (GLenum -> GLsizei -> GLenum -> GLsizei -> GLsizei -> GLsizei -> GLboolean -> IO ())
glTexImage3DMultisampleFunPtr = unsafePerformIO (getProcAddress "glTexImage3DMultisample")
{-# NOINLINE glTexImage3DMultisampleFunPtr #-}
-- | Usage: @'glTexParameterIiv' target pname params@
--
-- The parameter @target@ is a @TextureTarget@, one of: 'Graphics.GL.Ext.SGIS.DetailTexture.GL_DETAIL_TEXTURE_2D_SGIS', 'Graphics.GL.Internal.Shared.GL_PROXY_TEXTURE_1D', 'Graphics.GL.Ext.EXT.Texture.GL_PROXY_TEXTURE_1D_EXT', 'Graphics.GL.Internal.Shared.GL_PROXY_TEXTURE_2D', 'Graphics.GL.Ext.EXT.Texture.GL_PROXY_TEXTURE_2D_EXT', 'Graphics.GL.Internal.Shared.GL_PROXY_TEXTURE_3D', 'Graphics.GL.Ext.EXT.Texture3D.GL_PROXY_TEXTURE_3D_EXT', 'Graphics.GL.Ext.SGIS.Texture4D.GL_PROXY_TEXTURE_4D_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_1D', 'Graphics.GL.Internal.Shared.GL_TEXTURE_2D', 'Graphics.GL.Internal.Shared.GL_TEXTURE_3D', 'Graphics.GL.Ext.EXT.Texture3D.GL_TEXTURE_3D_EXT', 'Graphics.GL.Ext.OES.Texture3D.GL_TEXTURE_3D_OES', 'Graphics.GL.Ext.SGIS.Texture4D.GL_TEXTURE_4D_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_BASE_LEVEL', 'Graphics.GL.Ext.SGIS.TextureLod.GL_TEXTURE_BASE_LEVEL_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_MAX_LEVEL', 'Graphics.GL.Ext.SGIS.TextureLod.GL_TEXTURE_MAX_LEVEL_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_MAX_LOD', 'Graphics.GL.Ext.SGIS.TextureLod.GL_TEXTURE_MAX_LOD_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_MIN_LOD', 'Graphics.GL.Ext.SGIS.TextureLod.GL_TEXTURE_MIN_LOD_SGIS'.
--
-- The parameter @pname@ is a @TextureParameterName@, one of: 'Graphics.GL.Ext.SGIS.DetailTexture.GL_DETAIL_TEXTURE_LEVEL_SGIS', 'Graphics.GL.Ext.SGIS.DetailTexture.GL_DETAIL_TEXTURE_MODE_SGIS', 'Graphics.GL.Ext.SGIS.TextureSelect.GL_DUAL_TEXTURE_SELECT_SGIS', 'Graphics.GL.Internal.Shared.GL_GENERATE_MIPMAP', 'Graphics.GL.Ext.SGIS.GenerateMipmap.GL_GENERATE_MIPMAP_SGIS', 'Graphics.GL.Ext.SGIX.TextureScaleBias.GL_POST_TEXTURE_FILTER_BIAS_SGIX', 'Graphics.GL.Ext.SGIX.TextureScaleBias.GL_POST_TEXTURE_FILTER_SCALE_SGIX', 'Graphics.GL.Ext.SGIS.TextureSelect.GL_QUAD_TEXTURE_SELECT_SGIS', 'Graphics.GL.Ext.SGIX.ShadowAmbient.GL_SHADOW_AMBIENT_SGIX', 'Graphics.GL.Internal.Shared.GL_TEXTURE_BORDER_COLOR', 'Graphics.GL.Ext.SGIX.Clipmap.GL_TEXTURE_CLIPMAP_CENTER_SGIX', 'Graphics.GL.Ext.SGIX.Clipmap.GL_TEXTURE_CLIPMAP_DEPTH_SGIX', 'Graphics.GL.Ext.SGIX.Clipmap.GL_TEXTURE_CLIPMAP_FRAME_SGIX', 'Graphics.GL.Ext.SGIX.Clipmap.GL_TEXTURE_CLIPMAP_LOD_OFFSET_SGIX', 'Graphics.GL.Ext.SGIX.Clipmap.GL_TEXTURE_CLIPMAP_OFFSET_SGIX', 'Graphics.GL.Ext.SGIX.Clipmap.GL_TEXTURE_CLIPMAP_VIRTUAL_DEPTH_SGIX', 'Graphics.GL.Ext.SGIX.Shadow.GL_TEXTURE_COMPARE_SGIX', 'Graphics.GL.Ext.SGIX.TextureLodBias.GL_TEXTURE_LOD_BIAS_R_SGIX', 'Graphics.GL.Ext.SGIX.TextureLodBias.GL_TEXTURE_LOD_BIAS_S_SGIX', 'Graphics.GL.Ext.SGIX.TextureLodBias.GL_TEXTURE_LOD_BIAS_T_SGIX', 'Graphics.GL.Internal.Shared.GL_TEXTURE_MAG_FILTER', 'Graphics.GL.Ext.SGIX.TextureCoordinateClamp.GL_TEXTURE_MAX_CLAMP_R_SGIX', 'Graphics.GL.Ext.SGIX.TextureCoordinateClamp.GL_TEXTURE_MAX_CLAMP_S_SGIX', 'Graphics.GL.Ext.SGIX.TextureCoordinateClamp.GL_TEXTURE_MAX_CLAMP_T_SGIX', 'Graphics.GL.Internal.Shared.GL_TEXTURE_MIN_FILTER', 'Graphics.GL.Internal.Shared.GL_TEXTURE_PRIORITY', 'Graphics.GL.Ext.EXT.TextureObject.GL_TEXTURE_PRIORITY_EXT', 'Graphics.GL.Ext.SGIS.Texture4D.GL_TEXTURE_WRAP_Q_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_WRAP_R', 'Graphics.GL.Ext.EXT.Texture3D.GL_TEXTURE_WRAP_R_EXT', 'Graphics.GL.Ext.OES.Texture3D.GL_TEXTURE_WRAP_R_OES', 'Graphics.GL.Internal.Shared.GL_TEXTURE_WRAP_S', 'Graphics.GL.Internal.Shared.GL_TEXTURE_WRAP_T'.
--
-- The length of @params@ should be @COMPSIZE(pname)@.
glTexParameterIiv :: MonadIO m => GLenum -> GLenum -> Ptr GLint -> m ()
glTexParameterIiv = ffienumenumPtrintIOV glTexParameterIivFunPtr
glTexParameterIivFunPtr :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
glTexParameterIivFunPtr = unsafePerformIO (getProcAddress "glTexParameterIiv")
{-# NOINLINE glTexParameterIivFunPtr #-}
-- | Usage: @'glTexParameterIuiv' target pname params@
--
-- The parameter @target@ is a @TextureTarget@, one of: 'Graphics.GL.Ext.SGIS.DetailTexture.GL_DETAIL_TEXTURE_2D_SGIS', 'Graphics.GL.Internal.Shared.GL_PROXY_TEXTURE_1D', 'Graphics.GL.Ext.EXT.Texture.GL_PROXY_TEXTURE_1D_EXT', 'Graphics.GL.Internal.Shared.GL_PROXY_TEXTURE_2D', 'Graphics.GL.Ext.EXT.Texture.GL_PROXY_TEXTURE_2D_EXT', 'Graphics.GL.Internal.Shared.GL_PROXY_TEXTURE_3D', 'Graphics.GL.Ext.EXT.Texture3D.GL_PROXY_TEXTURE_3D_EXT', 'Graphics.GL.Ext.SGIS.Texture4D.GL_PROXY_TEXTURE_4D_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_1D', 'Graphics.GL.Internal.Shared.GL_TEXTURE_2D', 'Graphics.GL.Internal.Shared.GL_TEXTURE_3D', 'Graphics.GL.Ext.EXT.Texture3D.GL_TEXTURE_3D_EXT', 'Graphics.GL.Ext.OES.Texture3D.GL_TEXTURE_3D_OES', 'Graphics.GL.Ext.SGIS.Texture4D.GL_TEXTURE_4D_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_BASE_LEVEL', 'Graphics.GL.Ext.SGIS.TextureLod.GL_TEXTURE_BASE_LEVEL_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_MAX_LEVEL', 'Graphics.GL.Ext.SGIS.TextureLod.GL_TEXTURE_MAX_LEVEL_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_MAX_LOD', 'Graphics.GL.Ext.SGIS.TextureLod.GL_TEXTURE_MAX_LOD_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_MIN_LOD', 'Graphics.GL.Ext.SGIS.TextureLod.GL_TEXTURE_MIN_LOD_SGIS'.
--
-- The parameter @pname@ is a @TextureParameterName@, one of: 'Graphics.GL.Ext.SGIS.DetailTexture.GL_DETAIL_TEXTURE_LEVEL_SGIS', 'Graphics.GL.Ext.SGIS.DetailTexture.GL_DETAIL_TEXTURE_MODE_SGIS', 'Graphics.GL.Ext.SGIS.TextureSelect.GL_DUAL_TEXTURE_SELECT_SGIS', 'Graphics.GL.Internal.Shared.GL_GENERATE_MIPMAP', 'Graphics.GL.Ext.SGIS.GenerateMipmap.GL_GENERATE_MIPMAP_SGIS', 'Graphics.GL.Ext.SGIX.TextureScaleBias.GL_POST_TEXTURE_FILTER_BIAS_SGIX', 'Graphics.GL.Ext.SGIX.TextureScaleBias.GL_POST_TEXTURE_FILTER_SCALE_SGIX', 'Graphics.GL.Ext.SGIS.TextureSelect.GL_QUAD_TEXTURE_SELECT_SGIS', 'Graphics.GL.Ext.SGIX.ShadowAmbient.GL_SHADOW_AMBIENT_SGIX', 'Graphics.GL.Internal.Shared.GL_TEXTURE_BORDER_COLOR', 'Graphics.GL.Ext.SGIX.Clipmap.GL_TEXTURE_CLIPMAP_CENTER_SGIX', 'Graphics.GL.Ext.SGIX.Clipmap.GL_TEXTURE_CLIPMAP_DEPTH_SGIX', 'Graphics.GL.Ext.SGIX.Clipmap.GL_TEXTURE_CLIPMAP_FRAME_SGIX', 'Graphics.GL.Ext.SGIX.Clipmap.GL_TEXTURE_CLIPMAP_LOD_OFFSET_SGIX', 'Graphics.GL.Ext.SGIX.Clipmap.GL_TEXTURE_CLIPMAP_OFFSET_SGIX', 'Graphics.GL.Ext.SGIX.Clipmap.GL_TEXTURE_CLIPMAP_VIRTUAL_DEPTH_SGIX', 'Graphics.GL.Ext.SGIX.Shadow.GL_TEXTURE_COMPARE_SGIX', 'Graphics.GL.Ext.SGIX.TextureLodBias.GL_TEXTURE_LOD_BIAS_R_SGIX', 'Graphics.GL.Ext.SGIX.TextureLodBias.GL_TEXTURE_LOD_BIAS_S_SGIX', 'Graphics.GL.Ext.SGIX.TextureLodBias.GL_TEXTURE_LOD_BIAS_T_SGIX', 'Graphics.GL.Internal.Shared.GL_TEXTURE_MAG_FILTER', 'Graphics.GL.Ext.SGIX.TextureCoordinateClamp.GL_TEXTURE_MAX_CLAMP_R_SGIX', 'Graphics.GL.Ext.SGIX.TextureCoordinateClamp.GL_TEXTURE_MAX_CLAMP_S_SGIX', 'Graphics.GL.Ext.SGIX.TextureCoordinateClamp.GL_TEXTURE_MAX_CLAMP_T_SGIX', 'Graphics.GL.Internal.Shared.GL_TEXTURE_MIN_FILTER', 'Graphics.GL.Internal.Shared.GL_TEXTURE_PRIORITY', 'Graphics.GL.Ext.EXT.TextureObject.GL_TEXTURE_PRIORITY_EXT', 'Graphics.GL.Ext.SGIS.Texture4D.GL_TEXTURE_WRAP_Q_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_WRAP_R', 'Graphics.GL.Ext.EXT.Texture3D.GL_TEXTURE_WRAP_R_EXT', 'Graphics.GL.Ext.OES.Texture3D.GL_TEXTURE_WRAP_R_OES', 'Graphics.GL.Internal.Shared.GL_TEXTURE_WRAP_S', 'Graphics.GL.Internal.Shared.GL_TEXTURE_WRAP_T'.
--
-- The length of @params@ should be @COMPSIZE(pname)@.
glTexParameterIuiv :: MonadIO m => GLenum -> GLenum -> Ptr GLuint -> m ()
glTexParameterIuiv = ffienumenumPtruintIOV glTexParameterIuivFunPtr
glTexParameterIuivFunPtr :: FunPtr (GLenum -> GLenum -> Ptr GLuint -> IO ())
glTexParameterIuivFunPtr = unsafePerformIO (getProcAddress "glTexParameterIuiv")
{-# NOINLINE glTexParameterIuivFunPtr #-}
-- | Usage: @'glTexParameterf' target pname param@
--
-- The parameter @target@ is a @TextureTarget@, one of: 'Graphics.GL.Ext.SGIS.DetailTexture.GL_DETAIL_TEXTURE_2D_SGIS', 'Graphics.GL.Internal.Shared.GL_PROXY_TEXTURE_1D', 'Graphics.GL.Ext.EXT.Texture.GL_PROXY_TEXTURE_1D_EXT', 'Graphics.GL.Internal.Shared.GL_PROXY_TEXTURE_2D', 'Graphics.GL.Ext.EXT.Texture.GL_PROXY_TEXTURE_2D_EXT', 'Graphics.GL.Internal.Shared.GL_PROXY_TEXTURE_3D', 'Graphics.GL.Ext.EXT.Texture3D.GL_PROXY_TEXTURE_3D_EXT', 'Graphics.GL.Ext.SGIS.Texture4D.GL_PROXY_TEXTURE_4D_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_1D', 'Graphics.GL.Internal.Shared.GL_TEXTURE_2D', 'Graphics.GL.Internal.Shared.GL_TEXTURE_3D', 'Graphics.GL.Ext.EXT.Texture3D.GL_TEXTURE_3D_EXT', 'Graphics.GL.Ext.OES.Texture3D.GL_TEXTURE_3D_OES', 'Graphics.GL.Ext.SGIS.Texture4D.GL_TEXTURE_4D_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_BASE_LEVEL', 'Graphics.GL.Ext.SGIS.TextureLod.GL_TEXTURE_BASE_LEVEL_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_MAX_LEVEL', 'Graphics.GL.Ext.SGIS.TextureLod.GL_TEXTURE_MAX_LEVEL_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_MAX_LOD', 'Graphics.GL.Ext.SGIS.TextureLod.GL_TEXTURE_MAX_LOD_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_MIN_LOD', 'Graphics.GL.Ext.SGIS.TextureLod.GL_TEXTURE_MIN_LOD_SGIS'.
--
-- The parameter @pname@ is a @TextureParameterName@, one of: 'Graphics.GL.Ext.SGIS.DetailTexture.GL_DETAIL_TEXTURE_LEVEL_SGIS', 'Graphics.GL.Ext.SGIS.DetailTexture.GL_DETAIL_TEXTURE_MODE_SGIS', 'Graphics.GL.Ext.SGIS.TextureSelect.GL_DUAL_TEXTURE_SELECT_SGIS', 'Graphics.GL.Internal.Shared.GL_GENERATE_MIPMAP', 'Graphics.GL.Ext.SGIS.GenerateMipmap.GL_GENERATE_MIPMAP_SGIS', 'Graphics.GL.Ext.SGIX.TextureScaleBias.GL_POST_TEXTURE_FILTER_BIAS_SGIX', 'Graphics.GL.Ext.SGIX.TextureScaleBias.GL_POST_TEXTURE_FILTER_SCALE_SGIX', 'Graphics.GL.Ext.SGIS.TextureSelect.GL_QUAD_TEXTURE_SELECT_SGIS', 'Graphics.GL.Ext.SGIX.ShadowAmbient.GL_SHADOW_AMBIENT_SGIX', 'Graphics.GL.Internal.Shared.GL_TEXTURE_BORDER_COLOR', 'Graphics.GL.Ext.SGIX.Clipmap.GL_TEXTURE_CLIPMAP_CENTER_SGIX', 'Graphics.GL.Ext.SGIX.Clipmap.GL_TEXTURE_CLIPMAP_DEPTH_SGIX', 'Graphics.GL.Ext.SGIX.Clipmap.GL_TEXTURE_CLIPMAP_FRAME_SGIX', 'Graphics.GL.Ext.SGIX.Clipmap.GL_TEXTURE_CLIPMAP_LOD_OFFSET_SGIX', 'Graphics.GL.Ext.SGIX.Clipmap.GL_TEXTURE_CLIPMAP_OFFSET_SGIX', 'Graphics.GL.Ext.SGIX.Clipmap.GL_TEXTURE_CLIPMAP_VIRTUAL_DEPTH_SGIX', 'Graphics.GL.Ext.SGIX.Shadow.GL_TEXTURE_COMPARE_SGIX', 'Graphics.GL.Ext.SGIX.TextureLodBias.GL_TEXTURE_LOD_BIAS_R_SGIX', 'Graphics.GL.Ext.SGIX.TextureLodBias.GL_TEXTURE_LOD_BIAS_S_SGIX', 'Graphics.GL.Ext.SGIX.TextureLodBias.GL_TEXTURE_LOD_BIAS_T_SGIX', 'Graphics.GL.Internal.Shared.GL_TEXTURE_MAG_FILTER', 'Graphics.GL.Ext.SGIX.TextureCoordinateClamp.GL_TEXTURE_MAX_CLAMP_R_SGIX', 'Graphics.GL.Ext.SGIX.TextureCoordinateClamp.GL_TEXTURE_MAX_CLAMP_S_SGIX', 'Graphics.GL.Ext.SGIX.TextureCoordinateClamp.GL_TEXTURE_MAX_CLAMP_T_SGIX', 'Graphics.GL.Internal.Shared.GL_TEXTURE_MIN_FILTER', 'Graphics.GL.Internal.Shared.GL_TEXTURE_PRIORITY', 'Graphics.GL.Ext.EXT.TextureObject.GL_TEXTURE_PRIORITY_EXT', 'Graphics.GL.Ext.SGIS.Texture4D.GL_TEXTURE_WRAP_Q_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_WRAP_R', 'Graphics.GL.Ext.EXT.Texture3D.GL_TEXTURE_WRAP_R_EXT', 'Graphics.GL.Ext.OES.Texture3D.GL_TEXTURE_WRAP_R_OES', 'Graphics.GL.Internal.Shared.GL_TEXTURE_WRAP_S', 'Graphics.GL.Internal.Shared.GL_TEXTURE_WRAP_T'.
--
-- The parameter @param@ is a @CheckedFloat32@.
glTexParameterf :: MonadIO m => GLenum -> GLenum -> GLfloat -> m ()
glTexParameterf = ffienumenumfloatIOV glTexParameterfFunPtr
glTexParameterfFunPtr :: FunPtr (GLenum -> GLenum -> GLfloat -> IO ())
glTexParameterfFunPtr = unsafePerformIO (getProcAddress "glTexParameterf")
{-# NOINLINE glTexParameterfFunPtr #-}
-- | Usage: @'glTexParameterfv' target pname params@
--
-- The parameter @target@ is a @TextureTarget@, one of: 'Graphics.GL.Ext.SGIS.DetailTexture.GL_DETAIL_TEXTURE_2D_SGIS', 'Graphics.GL.Internal.Shared.GL_PROXY_TEXTURE_1D', 'Graphics.GL.Ext.EXT.Texture.GL_PROXY_TEXTURE_1D_EXT', 'Graphics.GL.Internal.Shared.GL_PROXY_TEXTURE_2D', 'Graphics.GL.Ext.EXT.Texture.GL_PROXY_TEXTURE_2D_EXT', 'Graphics.GL.Internal.Shared.GL_PROXY_TEXTURE_3D', 'Graphics.GL.Ext.EXT.Texture3D.GL_PROXY_TEXTURE_3D_EXT', 'Graphics.GL.Ext.SGIS.Texture4D.GL_PROXY_TEXTURE_4D_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_1D', 'Graphics.GL.Internal.Shared.GL_TEXTURE_2D', 'Graphics.GL.Internal.Shared.GL_TEXTURE_3D', 'Graphics.GL.Ext.EXT.Texture3D.GL_TEXTURE_3D_EXT', 'Graphics.GL.Ext.OES.Texture3D.GL_TEXTURE_3D_OES', 'Graphics.GL.Ext.SGIS.Texture4D.GL_TEXTURE_4D_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_BASE_LEVEL', 'Graphics.GL.Ext.SGIS.TextureLod.GL_TEXTURE_BASE_LEVEL_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_MAX_LEVEL', 'Graphics.GL.Ext.SGIS.TextureLod.GL_TEXTURE_MAX_LEVEL_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_MAX_LOD', 'Graphics.GL.Ext.SGIS.TextureLod.GL_TEXTURE_MAX_LOD_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_MIN_LOD', 'Graphics.GL.Ext.SGIS.TextureLod.GL_TEXTURE_MIN_LOD_SGIS'.
--
-- The parameter @pname@ is a @TextureParameterName@, one of: 'Graphics.GL.Ext.SGIS.DetailTexture.GL_DETAIL_TEXTURE_LEVEL_SGIS', 'Graphics.GL.Ext.SGIS.DetailTexture.GL_DETAIL_TEXTURE_MODE_SGIS', 'Graphics.GL.Ext.SGIS.TextureSelect.GL_DUAL_TEXTURE_SELECT_SGIS', 'Graphics.GL.Internal.Shared.GL_GENERATE_MIPMAP', 'Graphics.GL.Ext.SGIS.GenerateMipmap.GL_GENERATE_MIPMAP_SGIS', 'Graphics.GL.Ext.SGIX.TextureScaleBias.GL_POST_TEXTURE_FILTER_BIAS_SGIX', 'Graphics.GL.Ext.SGIX.TextureScaleBias.GL_POST_TEXTURE_FILTER_SCALE_SGIX', 'Graphics.GL.Ext.SGIS.TextureSelect.GL_QUAD_TEXTURE_SELECT_SGIS', 'Graphics.GL.Ext.SGIX.ShadowAmbient.GL_SHADOW_AMBIENT_SGIX', 'Graphics.GL.Internal.Shared.GL_TEXTURE_BORDER_COLOR', 'Graphics.GL.Ext.SGIX.Clipmap.GL_TEXTURE_CLIPMAP_CENTER_SGIX', 'Graphics.GL.Ext.SGIX.Clipmap.GL_TEXTURE_CLIPMAP_DEPTH_SGIX', 'Graphics.GL.Ext.SGIX.Clipmap.GL_TEXTURE_CLIPMAP_FRAME_SGIX', 'Graphics.GL.Ext.SGIX.Clipmap.GL_TEXTURE_CLIPMAP_LOD_OFFSET_SGIX', 'Graphics.GL.Ext.SGIX.Clipmap.GL_TEXTURE_CLIPMAP_OFFSET_SGIX', 'Graphics.GL.Ext.SGIX.Clipmap.GL_TEXTURE_CLIPMAP_VIRTUAL_DEPTH_SGIX', 'Graphics.GL.Ext.SGIX.Shadow.GL_TEXTURE_COMPARE_SGIX', 'Graphics.GL.Ext.SGIX.TextureLodBias.GL_TEXTURE_LOD_BIAS_R_SGIX', 'Graphics.GL.Ext.SGIX.TextureLodBias.GL_TEXTURE_LOD_BIAS_S_SGIX', 'Graphics.GL.Ext.SGIX.TextureLodBias.GL_TEXTURE_LOD_BIAS_T_SGIX', 'Graphics.GL.Internal.Shared.GL_TEXTURE_MAG_FILTER', 'Graphics.GL.Ext.SGIX.TextureCoordinateClamp.GL_TEXTURE_MAX_CLAMP_R_SGIX', 'Graphics.GL.Ext.SGIX.TextureCoordinateClamp.GL_TEXTURE_MAX_CLAMP_S_SGIX', 'Graphics.GL.Ext.SGIX.TextureCoordinateClamp.GL_TEXTURE_MAX_CLAMP_T_SGIX', 'Graphics.GL.Internal.Shared.GL_TEXTURE_MIN_FILTER', 'Graphics.GL.Internal.Shared.GL_TEXTURE_PRIORITY', 'Graphics.GL.Ext.EXT.TextureObject.GL_TEXTURE_PRIORITY_EXT', 'Graphics.GL.Ext.SGIS.Texture4D.GL_TEXTURE_WRAP_Q_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_WRAP_R', 'Graphics.GL.Ext.EXT.Texture3D.GL_TEXTURE_WRAP_R_EXT', 'Graphics.GL.Ext.OES.Texture3D.GL_TEXTURE_WRAP_R_OES', 'Graphics.GL.Internal.Shared.GL_TEXTURE_WRAP_S', 'Graphics.GL.Internal.Shared.GL_TEXTURE_WRAP_T'.
--
-- The parameter @params@ is a @CheckedFloat32@.
--
-- The length of @params@ should be @COMPSIZE(pname)@.
glTexParameterfv :: MonadIO m => GLenum -> GLenum -> Ptr GLfloat -> m ()
glTexParameterfv = ffienumenumPtrfloatIOV glTexParameterfvFunPtr
glTexParameterfvFunPtr :: FunPtr (GLenum -> GLenum -> Ptr GLfloat -> IO ())
glTexParameterfvFunPtr = unsafePerformIO (getProcAddress "glTexParameterfv")
{-# NOINLINE glTexParameterfvFunPtr #-}
-- | Usage: @'glTexParameteri' target pname param@
--
-- The parameter @target@ is a @TextureTarget@, one of: 'Graphics.GL.Ext.SGIS.DetailTexture.GL_DETAIL_TEXTURE_2D_SGIS', 'Graphics.GL.Internal.Shared.GL_PROXY_TEXTURE_1D', 'Graphics.GL.Ext.EXT.Texture.GL_PROXY_TEXTURE_1D_EXT', 'Graphics.GL.Internal.Shared.GL_PROXY_TEXTURE_2D', 'Graphics.GL.Ext.EXT.Texture.GL_PROXY_TEXTURE_2D_EXT', 'Graphics.GL.Internal.Shared.GL_PROXY_TEXTURE_3D', 'Graphics.GL.Ext.EXT.Texture3D.GL_PROXY_TEXTURE_3D_EXT', 'Graphics.GL.Ext.SGIS.Texture4D.GL_PROXY_TEXTURE_4D_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_1D', 'Graphics.GL.Internal.Shared.GL_TEXTURE_2D', 'Graphics.GL.Internal.Shared.GL_TEXTURE_3D', 'Graphics.GL.Ext.EXT.Texture3D.GL_TEXTURE_3D_EXT', 'Graphics.GL.Ext.OES.Texture3D.GL_TEXTURE_3D_OES', 'Graphics.GL.Ext.SGIS.Texture4D.GL_TEXTURE_4D_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_BASE_LEVEL', 'Graphics.GL.Ext.SGIS.TextureLod.GL_TEXTURE_BASE_LEVEL_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_MAX_LEVEL', 'Graphics.GL.Ext.SGIS.TextureLod.GL_TEXTURE_MAX_LEVEL_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_MAX_LOD', 'Graphics.GL.Ext.SGIS.TextureLod.GL_TEXTURE_MAX_LOD_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_MIN_LOD', 'Graphics.GL.Ext.SGIS.TextureLod.GL_TEXTURE_MIN_LOD_SGIS'.
--
-- The parameter @pname@ is a @TextureParameterName@, one of: 'Graphics.GL.Ext.SGIS.DetailTexture.GL_DETAIL_TEXTURE_LEVEL_SGIS', 'Graphics.GL.Ext.SGIS.DetailTexture.GL_DETAIL_TEXTURE_MODE_SGIS', 'Graphics.GL.Ext.SGIS.TextureSelect.GL_DUAL_TEXTURE_SELECT_SGIS', 'Graphics.GL.Internal.Shared.GL_GENERATE_MIPMAP', 'Graphics.GL.Ext.SGIS.GenerateMipmap.GL_GENERATE_MIPMAP_SGIS', 'Graphics.GL.Ext.SGIX.TextureScaleBias.GL_POST_TEXTURE_FILTER_BIAS_SGIX', 'Graphics.GL.Ext.SGIX.TextureScaleBias.GL_POST_TEXTURE_FILTER_SCALE_SGIX', 'Graphics.GL.Ext.SGIS.TextureSelect.GL_QUAD_TEXTURE_SELECT_SGIS', 'Graphics.GL.Ext.SGIX.ShadowAmbient.GL_SHADOW_AMBIENT_SGIX', 'Graphics.GL.Internal.Shared.GL_TEXTURE_BORDER_COLOR', 'Graphics.GL.Ext.SGIX.Clipmap.GL_TEXTURE_CLIPMAP_CENTER_SGIX', 'Graphics.GL.Ext.SGIX.Clipmap.GL_TEXTURE_CLIPMAP_DEPTH_SGIX', 'Graphics.GL.Ext.SGIX.Clipmap.GL_TEXTURE_CLIPMAP_FRAME_SGIX', 'Graphics.GL.Ext.SGIX.Clipmap.GL_TEXTURE_CLIPMAP_LOD_OFFSET_SGIX', 'Graphics.GL.Ext.SGIX.Clipmap.GL_TEXTURE_CLIPMAP_OFFSET_SGIX', 'Graphics.GL.Ext.SGIX.Clipmap.GL_TEXTURE_CLIPMAP_VIRTUAL_DEPTH_SGIX', 'Graphics.GL.Ext.SGIX.Shadow.GL_TEXTURE_COMPARE_SGIX', 'Graphics.GL.Ext.SGIX.TextureLodBias.GL_TEXTURE_LOD_BIAS_R_SGIX', 'Graphics.GL.Ext.SGIX.TextureLodBias.GL_TEXTURE_LOD_BIAS_S_SGIX', 'Graphics.GL.Ext.SGIX.TextureLodBias.GL_TEXTURE_LOD_BIAS_T_SGIX', 'Graphics.GL.Internal.Shared.GL_TEXTURE_MAG_FILTER', 'Graphics.GL.Ext.SGIX.TextureCoordinateClamp.GL_TEXTURE_MAX_CLAMP_R_SGIX', 'Graphics.GL.Ext.SGIX.TextureCoordinateClamp.GL_TEXTURE_MAX_CLAMP_S_SGIX', 'Graphics.GL.Ext.SGIX.TextureCoordinateClamp.GL_TEXTURE_MAX_CLAMP_T_SGIX', 'Graphics.GL.Internal.Shared.GL_TEXTURE_MIN_FILTER', 'Graphics.GL.Internal.Shared.GL_TEXTURE_PRIORITY', 'Graphics.GL.Ext.EXT.TextureObject.GL_TEXTURE_PRIORITY_EXT', 'Graphics.GL.Ext.SGIS.Texture4D.GL_TEXTURE_WRAP_Q_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_WRAP_R', 'Graphics.GL.Ext.EXT.Texture3D.GL_TEXTURE_WRAP_R_EXT', 'Graphics.GL.Ext.OES.Texture3D.GL_TEXTURE_WRAP_R_OES', 'Graphics.GL.Internal.Shared.GL_TEXTURE_WRAP_S', 'Graphics.GL.Internal.Shared.GL_TEXTURE_WRAP_T'.
--
-- The parameter @param@ is a @CheckedInt32@.
glTexParameteri :: MonadIO m => GLenum -> GLenum -> GLint -> m ()
glTexParameteri = ffienumenumintIOV glTexParameteriFunPtr
glTexParameteriFunPtr :: FunPtr (GLenum -> GLenum -> GLint -> IO ())
glTexParameteriFunPtr = unsafePerformIO (getProcAddress "glTexParameteri")
{-# NOINLINE glTexParameteriFunPtr #-}
-- | Usage: @'glTexParameteriv' target pname params@
--
-- The parameter @target@ is a @TextureTarget@, one of: 'Graphics.GL.Ext.SGIS.DetailTexture.GL_DETAIL_TEXTURE_2D_SGIS', 'Graphics.GL.Internal.Shared.GL_PROXY_TEXTURE_1D', 'Graphics.GL.Ext.EXT.Texture.GL_PROXY_TEXTURE_1D_EXT', 'Graphics.GL.Internal.Shared.GL_PROXY_TEXTURE_2D', 'Graphics.GL.Ext.EXT.Texture.GL_PROXY_TEXTURE_2D_EXT', 'Graphics.GL.Internal.Shared.GL_PROXY_TEXTURE_3D', 'Graphics.GL.Ext.EXT.Texture3D.GL_PROXY_TEXTURE_3D_EXT', 'Graphics.GL.Ext.SGIS.Texture4D.GL_PROXY_TEXTURE_4D_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_1D', 'Graphics.GL.Internal.Shared.GL_TEXTURE_2D', 'Graphics.GL.Internal.Shared.GL_TEXTURE_3D', 'Graphics.GL.Ext.EXT.Texture3D.GL_TEXTURE_3D_EXT', 'Graphics.GL.Ext.OES.Texture3D.GL_TEXTURE_3D_OES', 'Graphics.GL.Ext.SGIS.Texture4D.GL_TEXTURE_4D_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_BASE_LEVEL', 'Graphics.GL.Ext.SGIS.TextureLod.GL_TEXTURE_BASE_LEVEL_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_MAX_LEVEL', 'Graphics.GL.Ext.SGIS.TextureLod.GL_TEXTURE_MAX_LEVEL_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_MAX_LOD', 'Graphics.GL.Ext.SGIS.TextureLod.GL_TEXTURE_MAX_LOD_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_MIN_LOD', 'Graphics.GL.Ext.SGIS.TextureLod.GL_TEXTURE_MIN_LOD_SGIS'.
--
-- The parameter @pname@ is a @TextureParameterName@, one of: 'Graphics.GL.Ext.SGIS.DetailTexture.GL_DETAIL_TEXTURE_LEVEL_SGIS', 'Graphics.GL.Ext.SGIS.DetailTexture.GL_DETAIL_TEXTURE_MODE_SGIS', 'Graphics.GL.Ext.SGIS.TextureSelect.GL_DUAL_TEXTURE_SELECT_SGIS', 'Graphics.GL.Internal.Shared.GL_GENERATE_MIPMAP', 'Graphics.GL.Ext.SGIS.GenerateMipmap.GL_GENERATE_MIPMAP_SGIS', 'Graphics.GL.Ext.SGIX.TextureScaleBias.GL_POST_TEXTURE_FILTER_BIAS_SGIX', 'Graphics.GL.Ext.SGIX.TextureScaleBias.GL_POST_TEXTURE_FILTER_SCALE_SGIX', 'Graphics.GL.Ext.SGIS.TextureSelect.GL_QUAD_TEXTURE_SELECT_SGIS', 'Graphics.GL.Ext.SGIX.ShadowAmbient.GL_SHADOW_AMBIENT_SGIX', 'Graphics.GL.Internal.Shared.GL_TEXTURE_BORDER_COLOR', 'Graphics.GL.Ext.SGIX.Clipmap.GL_TEXTURE_CLIPMAP_CENTER_SGIX', 'Graphics.GL.Ext.SGIX.Clipmap.GL_TEXTURE_CLIPMAP_DEPTH_SGIX', 'Graphics.GL.Ext.SGIX.Clipmap.GL_TEXTURE_CLIPMAP_FRAME_SGIX', 'Graphics.GL.Ext.SGIX.Clipmap.GL_TEXTURE_CLIPMAP_LOD_OFFSET_SGIX', 'Graphics.GL.Ext.SGIX.Clipmap.GL_TEXTURE_CLIPMAP_OFFSET_SGIX', 'Graphics.GL.Ext.SGIX.Clipmap.GL_TEXTURE_CLIPMAP_VIRTUAL_DEPTH_SGIX', 'Graphics.GL.Ext.SGIX.Shadow.GL_TEXTURE_COMPARE_SGIX', 'Graphics.GL.Ext.SGIX.TextureLodBias.GL_TEXTURE_LOD_BIAS_R_SGIX', 'Graphics.GL.Ext.SGIX.TextureLodBias.GL_TEXTURE_LOD_BIAS_S_SGIX', 'Graphics.GL.Ext.SGIX.TextureLodBias.GL_TEXTURE_LOD_BIAS_T_SGIX', 'Graphics.GL.Internal.Shared.GL_TEXTURE_MAG_FILTER', 'Graphics.GL.Ext.SGIX.TextureCoordinateClamp.GL_TEXTURE_MAX_CLAMP_R_SGIX', 'Graphics.GL.Ext.SGIX.TextureCoordinateClamp.GL_TEXTURE_MAX_CLAMP_S_SGIX', 'Graphics.GL.Ext.SGIX.TextureCoordinateClamp.GL_TEXTURE_MAX_CLAMP_T_SGIX', 'Graphics.GL.Internal.Shared.GL_TEXTURE_MIN_FILTER', 'Graphics.GL.Internal.Shared.GL_TEXTURE_PRIORITY', 'Graphics.GL.Ext.EXT.TextureObject.GL_TEXTURE_PRIORITY_EXT', 'Graphics.GL.Ext.SGIS.Texture4D.GL_TEXTURE_WRAP_Q_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_WRAP_R', 'Graphics.GL.Ext.EXT.Texture3D.GL_TEXTURE_WRAP_R_EXT', 'Graphics.GL.Ext.OES.Texture3D.GL_TEXTURE_WRAP_R_OES', 'Graphics.GL.Internal.Shared.GL_TEXTURE_WRAP_S', 'Graphics.GL.Internal.Shared.GL_TEXTURE_WRAP_T'.
--
-- The parameter @params@ is a @CheckedInt32@.
--
-- The length of @params@ should be @COMPSIZE(pname)@.
glTexParameteriv :: MonadIO m => GLenum -> GLenum -> Ptr GLint -> m ()
glTexParameteriv = ffienumenumPtrintIOV glTexParameterivFunPtr
glTexParameterivFunPtr :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
glTexParameterivFunPtr = unsafePerformIO (getProcAddress "glTexParameteriv")
{-# NOINLINE glTexParameterivFunPtr #-}
-- | Usage: @'glTexSubImage1D' target level xoffset width format type pixels@
--
-- The parameter @target@ is a @TextureTarget@, one of: 'Graphics.GL.Ext.SGIS.DetailTexture.GL_DETAIL_TEXTURE_2D_SGIS', 'Graphics.GL.Internal.Shared.GL_PROXY_TEXTURE_1D', 'Graphics.GL.Ext.EXT.Texture.GL_PROXY_TEXTURE_1D_EXT', 'Graphics.GL.Internal.Shared.GL_PROXY_TEXTURE_2D', 'Graphics.GL.Ext.EXT.Texture.GL_PROXY_TEXTURE_2D_EXT', 'Graphics.GL.Internal.Shared.GL_PROXY_TEXTURE_3D', 'Graphics.GL.Ext.EXT.Texture3D.GL_PROXY_TEXTURE_3D_EXT', 'Graphics.GL.Ext.SGIS.Texture4D.GL_PROXY_TEXTURE_4D_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_1D', 'Graphics.GL.Internal.Shared.GL_TEXTURE_2D', 'Graphics.GL.Internal.Shared.GL_TEXTURE_3D', 'Graphics.GL.Ext.EXT.Texture3D.GL_TEXTURE_3D_EXT', 'Graphics.GL.Ext.OES.Texture3D.GL_TEXTURE_3D_OES', 'Graphics.GL.Ext.SGIS.Texture4D.GL_TEXTURE_4D_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_BASE_LEVEL', 'Graphics.GL.Ext.SGIS.TextureLod.GL_TEXTURE_BASE_LEVEL_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_MAX_LEVEL', 'Graphics.GL.Ext.SGIS.TextureLod.GL_TEXTURE_MAX_LEVEL_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_MAX_LOD', 'Graphics.GL.Ext.SGIS.TextureLod.GL_TEXTURE_MAX_LOD_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_MIN_LOD', 'Graphics.GL.Ext.SGIS.TextureLod.GL_TEXTURE_MIN_LOD_SGIS'.
--
-- The parameter @level@ is a @CheckedInt32@.
--
-- The parameter @xoffset@ is a @CheckedInt32@.
--
-- The parameter @format@ is a @PixelFormat@, one of: 'Graphics.GL.Ext.EXT.Abgr.GL_ABGR_EXT', 'Graphics.GL.Internal.Shared.GL_ALPHA', 'Graphics.GL.Internal.Shared.GL_BLUE', 'Graphics.GL.Ext.EXT.Cmyka.GL_CMYKA_EXT', 'Graphics.GL.Ext.EXT.Cmyka.GL_CMYK_EXT', 'Graphics.GL.Internal.Shared.GL_COLOR_INDEX', 'Graphics.GL.Internal.Shared.GL_DEPTH_COMPONENT', 'Graphics.GL.Internal.Shared.GL_GREEN', 'Graphics.GL.Internal.Shared.GL_LUMINANCE', 'Graphics.GL.Internal.Shared.GL_LUMINANCE_ALPHA', 'Graphics.GL.Internal.Shared.GL_RED', 'Graphics.GL.Ext.EXT.TextureRg.GL_RED_EXT', 'Graphics.GL.Internal.Shared.GL_RGB', 'Graphics.GL.Internal.Shared.GL_RGBA', 'Graphics.GL.Internal.Shared.GL_STENCIL_INDEX', 'Graphics.GL.Internal.Shared.GL_UNSIGNED_INT', 'Graphics.GL.Internal.Shared.GL_UNSIGNED_SHORT', 'Graphics.GL.Ext.SGIX.Ycrcb.GL_YCRCB_422_SGIX', 'Graphics.GL.Ext.SGIX.Ycrcb.GL_YCRCB_444_SGIX'.
--
-- The parameter @type@ is a @PixelType@, one of: 'Graphics.GL.Internal.Shared.GL_BITMAP', 'Graphics.GL.Internal.Shared.GL_BYTE', 'Graphics.GL.Internal.Shared.GL_FLOAT', 'Graphics.GL.Internal.Shared.GL_INT', 'Graphics.GL.Internal.Shared.GL_SHORT', 'Graphics.GL.Internal.Shared.GL_UNSIGNED_BYTE', 'Graphics.GL.Internal.Shared.GL_UNSIGNED_BYTE_3_3_2', 'Graphics.GL.Ext.EXT.PackedPixels.GL_UNSIGNED_BYTE_3_3_2_EXT', 'Graphics.GL.Internal.Shared.GL_UNSIGNED_INT', 'Graphics.GL.Internal.Shared.GL_UNSIGNED_INT_10_10_10_2', 'Graphics.GL.Ext.EXT.PackedPixels.GL_UNSIGNED_INT_10_10_10_2_EXT', 'Graphics.GL.Internal.Shared.GL_UNSIGNED_INT_8_8_8_8', 'Graphics.GL.Ext.EXT.PackedPixels.GL_UNSIGNED_INT_8_8_8_8_EXT', 'Graphics.GL.Internal.Shared.GL_UNSIGNED_SHORT', 'Graphics.GL.Internal.Shared.GL_UNSIGNED_SHORT_4_4_4_4', 'Graphics.GL.Ext.EXT.PackedPixels.GL_UNSIGNED_SHORT_4_4_4_4_EXT', 'Graphics.GL.Internal.Shared.GL_UNSIGNED_SHORT_5_5_5_1', 'Graphics.GL.Ext.EXT.PackedPixels.GL_UNSIGNED_SHORT_5_5_5_1_EXT'.
--
-- The length of @pixels@ should be @COMPSIZE(format,type,width)@.
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glTexSubImage1D.xhtml>
glTexSubImage1D :: MonadIO m => GLenum -> GLint -> GLint -> GLsizei -> GLenum -> GLenum -> Ptr () -> m ()
glTexSubImage1D = ffienumintintsizeienumenumPtrVIOV glTexSubImage1DFunPtr
glTexSubImage1DFunPtr :: FunPtr (GLenum -> GLint -> GLint -> GLsizei -> GLenum -> GLenum -> Ptr () -> IO ())
glTexSubImage1DFunPtr = unsafePerformIO (getProcAddress "glTexSubImage1D")
{-# NOINLINE glTexSubImage1DFunPtr #-}
-- | Usage: @'glTexSubImage2D' target level xoffset yoffset width height format type pixels@
--
-- The parameter @target@ is a @TextureTarget@, one of: 'Graphics.GL.Ext.SGIS.DetailTexture.GL_DETAIL_TEXTURE_2D_SGIS', 'Graphics.GL.Internal.Shared.GL_PROXY_TEXTURE_1D', 'Graphics.GL.Ext.EXT.Texture.GL_PROXY_TEXTURE_1D_EXT', 'Graphics.GL.Internal.Shared.GL_PROXY_TEXTURE_2D', 'Graphics.GL.Ext.EXT.Texture.GL_PROXY_TEXTURE_2D_EXT', 'Graphics.GL.Internal.Shared.GL_PROXY_TEXTURE_3D', 'Graphics.GL.Ext.EXT.Texture3D.GL_PROXY_TEXTURE_3D_EXT', 'Graphics.GL.Ext.SGIS.Texture4D.GL_PROXY_TEXTURE_4D_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_1D', 'Graphics.GL.Internal.Shared.GL_TEXTURE_2D', 'Graphics.GL.Internal.Shared.GL_TEXTURE_3D', 'Graphics.GL.Ext.EXT.Texture3D.GL_TEXTURE_3D_EXT', 'Graphics.GL.Ext.OES.Texture3D.GL_TEXTURE_3D_OES', 'Graphics.GL.Ext.SGIS.Texture4D.GL_TEXTURE_4D_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_BASE_LEVEL', 'Graphics.GL.Ext.SGIS.TextureLod.GL_TEXTURE_BASE_LEVEL_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_MAX_LEVEL', 'Graphics.GL.Ext.SGIS.TextureLod.GL_TEXTURE_MAX_LEVEL_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_MAX_LOD', 'Graphics.GL.Ext.SGIS.TextureLod.GL_TEXTURE_MAX_LOD_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_MIN_LOD', 'Graphics.GL.Ext.SGIS.TextureLod.GL_TEXTURE_MIN_LOD_SGIS'.
--
-- The parameter @level@ is a @CheckedInt32@.
--
-- The parameter @xoffset@ is a @CheckedInt32@.
--
-- The parameter @yoffset@ is a @CheckedInt32@.
--
-- The parameter @format@ is a @PixelFormat@, one of: 'Graphics.GL.Ext.EXT.Abgr.GL_ABGR_EXT', 'Graphics.GL.Internal.Shared.GL_ALPHA', 'Graphics.GL.Internal.Shared.GL_BLUE', 'Graphics.GL.Ext.EXT.Cmyka.GL_CMYKA_EXT', 'Graphics.GL.Ext.EXT.Cmyka.GL_CMYK_EXT', 'Graphics.GL.Internal.Shared.GL_COLOR_INDEX', 'Graphics.GL.Internal.Shared.GL_DEPTH_COMPONENT', 'Graphics.GL.Internal.Shared.GL_GREEN', 'Graphics.GL.Internal.Shared.GL_LUMINANCE', 'Graphics.GL.Internal.Shared.GL_LUMINANCE_ALPHA', 'Graphics.GL.Internal.Shared.GL_RED', 'Graphics.GL.Ext.EXT.TextureRg.GL_RED_EXT', 'Graphics.GL.Internal.Shared.GL_RGB', 'Graphics.GL.Internal.Shared.GL_RGBA', 'Graphics.GL.Internal.Shared.GL_STENCIL_INDEX', 'Graphics.GL.Internal.Shared.GL_UNSIGNED_INT', 'Graphics.GL.Internal.Shared.GL_UNSIGNED_SHORT', 'Graphics.GL.Ext.SGIX.Ycrcb.GL_YCRCB_422_SGIX', 'Graphics.GL.Ext.SGIX.Ycrcb.GL_YCRCB_444_SGIX'.
--
-- The parameter @type@ is a @PixelType@, one of: 'Graphics.GL.Internal.Shared.GL_BITMAP', 'Graphics.GL.Internal.Shared.GL_BYTE', 'Graphics.GL.Internal.Shared.GL_FLOAT', 'Graphics.GL.Internal.Shared.GL_INT', 'Graphics.GL.Internal.Shared.GL_SHORT', 'Graphics.GL.Internal.Shared.GL_UNSIGNED_BYTE', 'Graphics.GL.Internal.Shared.GL_UNSIGNED_BYTE_3_3_2', 'Graphics.GL.Ext.EXT.PackedPixels.GL_UNSIGNED_BYTE_3_3_2_EXT', 'Graphics.GL.Internal.Shared.GL_UNSIGNED_INT', 'Graphics.GL.Internal.Shared.GL_UNSIGNED_INT_10_10_10_2', 'Graphics.GL.Ext.EXT.PackedPixels.GL_UNSIGNED_INT_10_10_10_2_EXT', 'Graphics.GL.Internal.Shared.GL_UNSIGNED_INT_8_8_8_8', 'Graphics.GL.Ext.EXT.PackedPixels.GL_UNSIGNED_INT_8_8_8_8_EXT', 'Graphics.GL.Internal.Shared.GL_UNSIGNED_SHORT', 'Graphics.GL.Internal.Shared.GL_UNSIGNED_SHORT_4_4_4_4', 'Graphics.GL.Ext.EXT.PackedPixels.GL_UNSIGNED_SHORT_4_4_4_4_EXT', 'Graphics.GL.Internal.Shared.GL_UNSIGNED_SHORT_5_5_5_1', 'Graphics.GL.Ext.EXT.PackedPixels.GL_UNSIGNED_SHORT_5_5_5_1_EXT'.
--
-- The length of @pixels@ should be @COMPSIZE(format,type,width,height)@.
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glTexSubImage2D.xhtml>
glTexSubImage2D :: MonadIO m => GLenum -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLenum -> GLenum -> Ptr () -> m ()
glTexSubImage2D = ffienumintintintsizeisizeienumenumPtrVIOV glTexSubImage2DFunPtr
glTexSubImage2DFunPtr :: FunPtr (GLenum -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLenum -> GLenum -> Ptr () -> IO ())
glTexSubImage2DFunPtr = unsafePerformIO (getProcAddress "glTexSubImage2D")
{-# NOINLINE glTexSubImage2DFunPtr #-}
-- | Usage: @'glTexSubImage3D' target level xoffset yoffset zoffset width height depth format type pixels@
--
-- The parameter @target@ is a @TextureTarget@, one of: 'Graphics.GL.Ext.SGIS.DetailTexture.GL_DETAIL_TEXTURE_2D_SGIS', 'Graphics.GL.Internal.Shared.GL_PROXY_TEXTURE_1D', 'Graphics.GL.Ext.EXT.Texture.GL_PROXY_TEXTURE_1D_EXT', 'Graphics.GL.Internal.Shared.GL_PROXY_TEXTURE_2D', 'Graphics.GL.Ext.EXT.Texture.GL_PROXY_TEXTURE_2D_EXT', 'Graphics.GL.Internal.Shared.GL_PROXY_TEXTURE_3D', 'Graphics.GL.Ext.EXT.Texture3D.GL_PROXY_TEXTURE_3D_EXT', 'Graphics.GL.Ext.SGIS.Texture4D.GL_PROXY_TEXTURE_4D_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_1D', 'Graphics.GL.Internal.Shared.GL_TEXTURE_2D', 'Graphics.GL.Internal.Shared.GL_TEXTURE_3D', 'Graphics.GL.Ext.EXT.Texture3D.GL_TEXTURE_3D_EXT', 'Graphics.GL.Ext.OES.Texture3D.GL_TEXTURE_3D_OES', 'Graphics.GL.Ext.SGIS.Texture4D.GL_TEXTURE_4D_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_BASE_LEVEL', 'Graphics.GL.Ext.SGIS.TextureLod.GL_TEXTURE_BASE_LEVEL_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_MAX_LEVEL', 'Graphics.GL.Ext.SGIS.TextureLod.GL_TEXTURE_MAX_LEVEL_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_MAX_LOD', 'Graphics.GL.Ext.SGIS.TextureLod.GL_TEXTURE_MAX_LOD_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_MIN_LOD', 'Graphics.GL.Ext.SGIS.TextureLod.GL_TEXTURE_MIN_LOD_SGIS'.
--
-- The parameter @level@ is a @CheckedInt32@.
--
-- The parameter @xoffset@ is a @CheckedInt32@.
--
-- The parameter @yoffset@ is a @CheckedInt32@.
--
-- The parameter @zoffset@ is a @CheckedInt32@.
--
-- The parameter @format@ is a @PixelFormat@, one of: 'Graphics.GL.Ext.EXT.Abgr.GL_ABGR_EXT', 'Graphics.GL.Internal.Shared.GL_ALPHA', 'Graphics.GL.Internal.Shared.GL_BLUE', 'Graphics.GL.Ext.EXT.Cmyka.GL_CMYKA_EXT', 'Graphics.GL.Ext.EXT.Cmyka.GL_CMYK_EXT', 'Graphics.GL.Internal.Shared.GL_COLOR_INDEX', 'Graphics.GL.Internal.Shared.GL_DEPTH_COMPONENT', 'Graphics.GL.Internal.Shared.GL_GREEN', 'Graphics.GL.Internal.Shared.GL_LUMINANCE', 'Graphics.GL.Internal.Shared.GL_LUMINANCE_ALPHA', 'Graphics.GL.Internal.Shared.GL_RED', 'Graphics.GL.Ext.EXT.TextureRg.GL_RED_EXT', 'Graphics.GL.Internal.Shared.GL_RGB', 'Graphics.GL.Internal.Shared.GL_RGBA', 'Graphics.GL.Internal.Shared.GL_STENCIL_INDEX', 'Graphics.GL.Internal.Shared.GL_UNSIGNED_INT', 'Graphics.GL.Internal.Shared.GL_UNSIGNED_SHORT', 'Graphics.GL.Ext.SGIX.Ycrcb.GL_YCRCB_422_SGIX', 'Graphics.GL.Ext.SGIX.Ycrcb.GL_YCRCB_444_SGIX'.
--
-- The parameter @type@ is a @PixelType@, one of: 'Graphics.GL.Internal.Shared.GL_BITMAP', 'Graphics.GL.Internal.Shared.GL_BYTE', 'Graphics.GL.Internal.Shared.GL_FLOAT', 'Graphics.GL.Internal.Shared.GL_INT', 'Graphics.GL.Internal.Shared.GL_SHORT', 'Graphics.GL.Internal.Shared.GL_UNSIGNED_BYTE', 'Graphics.GL.Internal.Shared.GL_UNSIGNED_BYTE_3_3_2', 'Graphics.GL.Ext.EXT.PackedPixels.GL_UNSIGNED_BYTE_3_3_2_EXT', 'Graphics.GL.Internal.Shared.GL_UNSIGNED_INT', 'Graphics.GL.Internal.Shared.GL_UNSIGNED_INT_10_10_10_2', 'Graphics.GL.Ext.EXT.PackedPixels.GL_UNSIGNED_INT_10_10_10_2_EXT', 'Graphics.GL.Internal.Shared.GL_UNSIGNED_INT_8_8_8_8', 'Graphics.GL.Ext.EXT.PackedPixels.GL_UNSIGNED_INT_8_8_8_8_EXT', 'Graphics.GL.Internal.Shared.GL_UNSIGNED_SHORT', 'Graphics.GL.Internal.Shared.GL_UNSIGNED_SHORT_4_4_4_4', 'Graphics.GL.Ext.EXT.PackedPixels.GL_UNSIGNED_SHORT_4_4_4_4_EXT', 'Graphics.GL.Internal.Shared.GL_UNSIGNED_SHORT_5_5_5_1', 'Graphics.GL.Ext.EXT.PackedPixels.GL_UNSIGNED_SHORT_5_5_5_1_EXT'.
--
-- The length of @pixels@ should be @COMPSIZE(format,type,width,height,depth)@.
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glTexSubImage3D.xhtml>
glTexSubImage3D :: MonadIO m => GLenum -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLenum -> GLenum -> Ptr () -> m ()
glTexSubImage3D = ffienumintintintintsizeisizeisizeienumenumPtrVIOV glTexSubImage3DFunPtr
glTexSubImage3DFunPtr :: FunPtr (GLenum -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLenum -> GLenum -> Ptr () -> IO ())
glTexSubImage3DFunPtr = unsafePerformIO (getProcAddress "glTexSubImage3D")
{-# NOINLINE glTexSubImage3DFunPtr #-}
-- | Usage: @'glTransformFeedbackVaryings' program count varyings bufferMode@
--
-- The length of @varyings@ should be @count@.
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glTransformFeedbackVaryings.xhtml>
glTransformFeedbackVaryings :: MonadIO m => GLuint -> GLsizei -> Ptr (Ptr GLchar) -> GLenum -> m ()
glTransformFeedbackVaryings = ffiuintsizeiPtrPtrcharenumIOV glTransformFeedbackVaryingsFunPtr
glTransformFeedbackVaryingsFunPtr :: FunPtr (GLuint -> GLsizei -> Ptr (Ptr GLchar) -> GLenum -> IO ())
glTransformFeedbackVaryingsFunPtr = unsafePerformIO (getProcAddress "glTransformFeedbackVaryings")
{-# NOINLINE glTransformFeedbackVaryingsFunPtr #-}
-- | Usage: @'glUniform1f' location v0@
glUniform1f :: MonadIO m => GLint -> GLfloat -> m ()
glUniform1f = ffiintfloatIOV glUniform1fFunPtr
glUniform1fFunPtr :: FunPtr (GLint -> GLfloat -> IO ())
glUniform1fFunPtr = unsafePerformIO (getProcAddress "glUniform1f")
{-# NOINLINE glUniform1fFunPtr #-}
-- | Usage: @'glUniform1fv' location count value@
--
-- The length of @value@ should be @count*1@.
glUniform1fv :: MonadIO m => GLint -> GLsizei -> Ptr GLfloat -> m ()
glUniform1fv = ffiintsizeiPtrfloatIOV glUniform1fvFunPtr
glUniform1fvFunPtr :: FunPtr (GLint -> GLsizei -> Ptr GLfloat -> IO ())
glUniform1fvFunPtr = unsafePerformIO (getProcAddress "glUniform1fv")
{-# NOINLINE glUniform1fvFunPtr #-}
-- | Usage: @'glUniform1i' location v0@
glUniform1i :: MonadIO m => GLint -> GLint -> m ()
glUniform1i = ffiintintIOV glUniform1iFunPtr
glUniform1iFunPtr :: FunPtr (GLint -> GLint -> IO ())
glUniform1iFunPtr = unsafePerformIO (getProcAddress "glUniform1i")
{-# NOINLINE glUniform1iFunPtr #-}
-- | Usage: @'glUniform1iv' location count value@
--
-- The length of @value@ should be @count*1@.
glUniform1iv :: MonadIO m => GLint -> GLsizei -> Ptr GLint -> m ()
glUniform1iv = ffiintsizeiPtrintIOV glUniform1ivFunPtr
glUniform1ivFunPtr :: FunPtr (GLint -> GLsizei -> Ptr GLint -> IO ())
glUniform1ivFunPtr = unsafePerformIO (getProcAddress "glUniform1iv")
{-# NOINLINE glUniform1ivFunPtr #-}
-- | Usage: @'glUniform1ui' location v0@
glUniform1ui :: MonadIO m => GLint -> GLuint -> m ()
glUniform1ui = ffiintuintIOV glUniform1uiFunPtr
glUniform1uiFunPtr :: FunPtr (GLint -> GLuint -> IO ())
glUniform1uiFunPtr = unsafePerformIO (getProcAddress "glUniform1ui")
{-# NOINLINE glUniform1uiFunPtr #-}
-- | Usage: @'glUniform1uiv' location count value@
--
-- The length of @value@ should be @count*1@.
glUniform1uiv :: MonadIO m => GLint -> GLsizei -> Ptr GLuint -> m ()
glUniform1uiv = ffiintsizeiPtruintIOV glUniform1uivFunPtr
glUniform1uivFunPtr :: FunPtr (GLint -> GLsizei -> Ptr GLuint -> IO ())
glUniform1uivFunPtr = unsafePerformIO (getProcAddress "glUniform1uiv")
{-# NOINLINE glUniform1uivFunPtr #-}
-- | Usage: @'glUniform2f' location v0 v1@
glUniform2f :: MonadIO m => GLint -> GLfloat -> GLfloat -> m ()
glUniform2f = ffiintfloatfloatIOV glUniform2fFunPtr
glUniform2fFunPtr :: FunPtr (GLint -> GLfloat -> GLfloat -> IO ())
glUniform2fFunPtr = unsafePerformIO (getProcAddress "glUniform2f")
{-# NOINLINE glUniform2fFunPtr #-}
-- | Usage: @'glUniform2fv' location count value@
--
-- The length of @value@ should be @count*2@.
glUniform2fv :: MonadIO m => GLint -> GLsizei -> Ptr GLfloat -> m ()
glUniform2fv = ffiintsizeiPtrfloatIOV glUniform2fvFunPtr
glUniform2fvFunPtr :: FunPtr (GLint -> GLsizei -> Ptr GLfloat -> IO ())
glUniform2fvFunPtr = unsafePerformIO (getProcAddress "glUniform2fv")
{-# NOINLINE glUniform2fvFunPtr #-}
-- | Usage: @'glUniform2i' location v0 v1@
glUniform2i :: MonadIO m => GLint -> GLint -> GLint -> m ()
glUniform2i = ffiintintintIOV glUniform2iFunPtr
glUniform2iFunPtr :: FunPtr (GLint -> GLint -> GLint -> IO ())
glUniform2iFunPtr = unsafePerformIO (getProcAddress "glUniform2i")
{-# NOINLINE glUniform2iFunPtr #-}
-- | Usage: @'glUniform2iv' location count value@
--
-- The length of @value@ should be @count*2@.
glUniform2iv :: MonadIO m => GLint -> GLsizei -> Ptr GLint -> m ()
glUniform2iv = ffiintsizeiPtrintIOV glUniform2ivFunPtr
glUniform2ivFunPtr :: FunPtr (GLint -> GLsizei -> Ptr GLint -> IO ())
glUniform2ivFunPtr = unsafePerformIO (getProcAddress "glUniform2iv")
{-# NOINLINE glUniform2ivFunPtr #-}
-- | Usage: @'glUniform2ui' location v0 v1@
glUniform2ui :: MonadIO m => GLint -> GLuint -> GLuint -> m ()
glUniform2ui = ffiintuintuintIOV glUniform2uiFunPtr
glUniform2uiFunPtr :: FunPtr (GLint -> GLuint -> GLuint -> IO ())
glUniform2uiFunPtr = unsafePerformIO (getProcAddress "glUniform2ui")
{-# NOINLINE glUniform2uiFunPtr #-}
-- | Usage: @'glUniform2uiv' location count value@
--
-- The length of @value@ should be @count*2@.
glUniform2uiv :: MonadIO m => GLint -> GLsizei -> Ptr GLuint -> m ()
glUniform2uiv = ffiintsizeiPtruintIOV glUniform2uivFunPtr
glUniform2uivFunPtr :: FunPtr (GLint -> GLsizei -> Ptr GLuint -> IO ())
glUniform2uivFunPtr = unsafePerformIO (getProcAddress "glUniform2uiv")
{-# NOINLINE glUniform2uivFunPtr #-}
-- | Usage: @'glUniform3f' location v0 v1 v2@
glUniform3f :: MonadIO m => GLint -> GLfloat -> GLfloat -> GLfloat -> m ()
glUniform3f = ffiintfloatfloatfloatIOV glUniform3fFunPtr
glUniform3fFunPtr :: FunPtr (GLint -> GLfloat -> GLfloat -> GLfloat -> IO ())
glUniform3fFunPtr = unsafePerformIO (getProcAddress "glUniform3f")
{-# NOINLINE glUniform3fFunPtr #-}
-- | Usage: @'glUniform3fv' location count value@
--
-- The length of @value@ should be @count*3@.
glUniform3fv :: MonadIO m => GLint -> GLsizei -> Ptr GLfloat -> m ()
glUniform3fv = ffiintsizeiPtrfloatIOV glUniform3fvFunPtr
glUniform3fvFunPtr :: FunPtr (GLint -> GLsizei -> Ptr GLfloat -> IO ())
glUniform3fvFunPtr = unsafePerformIO (getProcAddress "glUniform3fv")
{-# NOINLINE glUniform3fvFunPtr #-}
-- | Usage: @'glUniform3i' location v0 v1 v2@
glUniform3i :: MonadIO m => GLint -> GLint -> GLint -> GLint -> m ()
glUniform3i = ffiintintintintIOV glUniform3iFunPtr
glUniform3iFunPtr :: FunPtr (GLint -> GLint -> GLint -> GLint -> IO ())
glUniform3iFunPtr = unsafePerformIO (getProcAddress "glUniform3i")
{-# NOINLINE glUniform3iFunPtr #-}
-- | Usage: @'glUniform3iv' location count value@
--
-- The length of @value@ should be @count*3@.
glUniform3iv :: MonadIO m => GLint -> GLsizei -> Ptr GLint -> m ()
glUniform3iv = ffiintsizeiPtrintIOV glUniform3ivFunPtr
glUniform3ivFunPtr :: FunPtr (GLint -> GLsizei -> Ptr GLint -> IO ())
glUniform3ivFunPtr = unsafePerformIO (getProcAddress "glUniform3iv")
{-# NOINLINE glUniform3ivFunPtr #-}
-- | Usage: @'glUniform3ui' location v0 v1 v2@
glUniform3ui :: MonadIO m => GLint -> GLuint -> GLuint -> GLuint -> m ()
glUniform3ui = ffiintuintuintuintIOV glUniform3uiFunPtr
glUniform3uiFunPtr :: FunPtr (GLint -> GLuint -> GLuint -> GLuint -> IO ())
glUniform3uiFunPtr = unsafePerformIO (getProcAddress "glUniform3ui")
{-# NOINLINE glUniform3uiFunPtr #-}
-- | Usage: @'glUniform3uiv' location count value@
--
-- The length of @value@ should be @count*3@.
glUniform3uiv :: MonadIO m => GLint -> GLsizei -> Ptr GLuint -> m ()
glUniform3uiv = ffiintsizeiPtruintIOV glUniform3uivFunPtr
glUniform3uivFunPtr :: FunPtr (GLint -> GLsizei -> Ptr GLuint -> IO ())
glUniform3uivFunPtr = unsafePerformIO (getProcAddress "glUniform3uiv")
{-# NOINLINE glUniform3uivFunPtr #-}
-- | Usage: @'glUniform4f' location v0 v1 v2 v3@
glUniform4f :: MonadIO m => GLint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> m ()
glUniform4f = ffiintfloatfloatfloatfloatIOV glUniform4fFunPtr
glUniform4fFunPtr :: FunPtr (GLint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
glUniform4fFunPtr = unsafePerformIO (getProcAddress "glUniform4f")
{-# NOINLINE glUniform4fFunPtr #-}
-- | Usage: @'glUniform4fv' location count value@
--
-- The length of @value@ should be @count*4@.
glUniform4fv :: MonadIO m => GLint -> GLsizei -> Ptr GLfloat -> m ()
glUniform4fv = ffiintsizeiPtrfloatIOV glUniform4fvFunPtr
glUniform4fvFunPtr :: FunPtr (GLint -> GLsizei -> Ptr GLfloat -> IO ())
glUniform4fvFunPtr = unsafePerformIO (getProcAddress "glUniform4fv")
{-# NOINLINE glUniform4fvFunPtr #-}
-- | Usage: @'glUniform4i' location v0 v1 v2 v3@
glUniform4i :: MonadIO m => GLint -> GLint -> GLint -> GLint -> GLint -> m ()
glUniform4i = ffiintintintintintIOV glUniform4iFunPtr
glUniform4iFunPtr :: FunPtr (GLint -> GLint -> GLint -> GLint -> GLint -> IO ())
glUniform4iFunPtr = unsafePerformIO (getProcAddress "glUniform4i")
{-# NOINLINE glUniform4iFunPtr #-}
-- | Usage: @'glUniform4iv' location count value@
--
-- The length of @value@ should be @count*4@.
glUniform4iv :: MonadIO m => GLint -> GLsizei -> Ptr GLint -> m ()
glUniform4iv = ffiintsizeiPtrintIOV glUniform4ivFunPtr
glUniform4ivFunPtr :: FunPtr (GLint -> GLsizei -> Ptr GLint -> IO ())
glUniform4ivFunPtr = unsafePerformIO (getProcAddress "glUniform4iv")
{-# NOINLINE glUniform4ivFunPtr #-}
-- | Usage: @'glUniform4ui' location v0 v1 v2 v3@
glUniform4ui :: MonadIO m => GLint -> GLuint -> GLuint -> GLuint -> GLuint -> m ()
glUniform4ui = ffiintuintuintuintuintIOV glUniform4uiFunPtr
glUniform4uiFunPtr :: FunPtr (GLint -> GLuint -> GLuint -> GLuint -> GLuint -> IO ())
glUniform4uiFunPtr = unsafePerformIO (getProcAddress "glUniform4ui")
{-# NOINLINE glUniform4uiFunPtr #-}
-- | Usage: @'glUniform4uiv' location count value@
--
-- The length of @value@ should be @count*4@.
glUniform4uiv :: MonadIO m => GLint -> GLsizei -> Ptr GLuint -> m ()
glUniform4uiv = ffiintsizeiPtruintIOV glUniform4uivFunPtr
glUniform4uivFunPtr :: FunPtr (GLint -> GLsizei -> Ptr GLuint -> IO ())
glUniform4uivFunPtr = unsafePerformIO (getProcAddress "glUniform4uiv")
{-# NOINLINE glUniform4uivFunPtr #-}
-- | Usage: @'glUniformBlockBinding' program uniformBlockIndex uniformBlockBinding@
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glUniformBlockBinding.xhtml>
glUniformBlockBinding :: MonadIO m => GLuint -> GLuint -> GLuint -> m ()
glUniformBlockBinding = ffiuintuintuintIOV glUniformBlockBindingFunPtr
glUniformBlockBindingFunPtr :: FunPtr (GLuint -> GLuint -> GLuint -> IO ())
glUniformBlockBindingFunPtr = unsafePerformIO (getProcAddress "glUniformBlockBinding")
{-# NOINLINE glUniformBlockBindingFunPtr #-}
-- | Usage: @'glUniformMatrix2fv' location count transpose value@
--
-- The parameter @transpose@ is a @Boolean@, one of: 'Graphics.GL.Internal.Shared.GL_FALSE', 'Graphics.GL.Internal.Shared.GL_TRUE'.
--
-- The length of @value@ should be @count*4@.
glUniformMatrix2fv :: MonadIO m => GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> m ()
glUniformMatrix2fv = ffiintsizeibooleanPtrfloatIOV glUniformMatrix2fvFunPtr
glUniformMatrix2fvFunPtr :: FunPtr (GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ())
glUniformMatrix2fvFunPtr = unsafePerformIO (getProcAddress "glUniformMatrix2fv")
{-# NOINLINE glUniformMatrix2fvFunPtr #-}
-- | Usage: @'glUniformMatrix2x3fv' location count transpose value@
--
-- The parameter @transpose@ is a @Boolean@, one of: 'Graphics.GL.Internal.Shared.GL_FALSE', 'Graphics.GL.Internal.Shared.GL_TRUE'.
--
-- The length of @value@ should be @count*6@.
glUniformMatrix2x3fv :: MonadIO m => GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> m ()
glUniformMatrix2x3fv = ffiintsizeibooleanPtrfloatIOV glUniformMatrix2x3fvFunPtr
glUniformMatrix2x3fvFunPtr :: FunPtr (GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ())
glUniformMatrix2x3fvFunPtr = unsafePerformIO (getProcAddress "glUniformMatrix2x3fv")
{-# NOINLINE glUniformMatrix2x3fvFunPtr #-}
-- | Usage: @'glUniformMatrix2x4fv' location count transpose value@
--
-- The parameter @transpose@ is a @Boolean@, one of: 'Graphics.GL.Internal.Shared.GL_FALSE', 'Graphics.GL.Internal.Shared.GL_TRUE'.
--
-- The length of @value@ should be @count*8@.
glUniformMatrix2x4fv :: MonadIO m => GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> m ()
glUniformMatrix2x4fv = ffiintsizeibooleanPtrfloatIOV glUniformMatrix2x4fvFunPtr
glUniformMatrix2x4fvFunPtr :: FunPtr (GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ())
glUniformMatrix2x4fvFunPtr = unsafePerformIO (getProcAddress "glUniformMatrix2x4fv")
{-# NOINLINE glUniformMatrix2x4fvFunPtr #-}
-- | Usage: @'glUniformMatrix3fv' location count transpose value@
--
-- The parameter @transpose@ is a @Boolean@, one of: 'Graphics.GL.Internal.Shared.GL_FALSE', 'Graphics.GL.Internal.Shared.GL_TRUE'.
--
-- The length of @value@ should be @count*9@.
glUniformMatrix3fv :: MonadIO m => GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> m ()
glUniformMatrix3fv = ffiintsizeibooleanPtrfloatIOV glUniformMatrix3fvFunPtr
glUniformMatrix3fvFunPtr :: FunPtr (GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ())
glUniformMatrix3fvFunPtr = unsafePerformIO (getProcAddress "glUniformMatrix3fv")
{-# NOINLINE glUniformMatrix3fvFunPtr #-}
-- | Usage: @'glUniformMatrix3x2fv' location count transpose value@
--
-- The parameter @transpose@ is a @Boolean@, one of: 'Graphics.GL.Internal.Shared.GL_FALSE', 'Graphics.GL.Internal.Shared.GL_TRUE'.
--
-- The length of @value@ should be @count*6@.
glUniformMatrix3x2fv :: MonadIO m => GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> m ()
glUniformMatrix3x2fv = ffiintsizeibooleanPtrfloatIOV glUniformMatrix3x2fvFunPtr
glUniformMatrix3x2fvFunPtr :: FunPtr (GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ())
glUniformMatrix3x2fvFunPtr = unsafePerformIO (getProcAddress "glUniformMatrix3x2fv")
{-# NOINLINE glUniformMatrix3x2fvFunPtr #-}
-- | Usage: @'glUniformMatrix3x4fv' location count transpose value@
--
-- The parameter @transpose@ is a @Boolean@, one of: 'Graphics.GL.Internal.Shared.GL_FALSE', 'Graphics.GL.Internal.Shared.GL_TRUE'.
--
-- The length of @value@ should be @count*12@.
glUniformMatrix3x4fv :: MonadIO m => GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> m ()
glUniformMatrix3x4fv = ffiintsizeibooleanPtrfloatIOV glUniformMatrix3x4fvFunPtr
glUniformMatrix3x4fvFunPtr :: FunPtr (GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ())
glUniformMatrix3x4fvFunPtr = unsafePerformIO (getProcAddress "glUniformMatrix3x4fv")
{-# NOINLINE glUniformMatrix3x4fvFunPtr #-}
-- | Usage: @'glUniformMatrix4fv' location count transpose value@
--
-- The parameter @transpose@ is a @Boolean@, one of: 'Graphics.GL.Internal.Shared.GL_FALSE', 'Graphics.GL.Internal.Shared.GL_TRUE'.
--
-- The length of @value@ should be @count*16@.
glUniformMatrix4fv :: MonadIO m => GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> m ()
glUniformMatrix4fv = ffiintsizeibooleanPtrfloatIOV glUniformMatrix4fvFunPtr
glUniformMatrix4fvFunPtr :: FunPtr (GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ())
glUniformMatrix4fvFunPtr = unsafePerformIO (getProcAddress "glUniformMatrix4fv")
{-# NOINLINE glUniformMatrix4fvFunPtr #-}
-- | Usage: @'glUniformMatrix4x2fv' location count transpose value@
--
-- The parameter @transpose@ is a @Boolean@, one of: 'Graphics.GL.Internal.Shared.GL_FALSE', 'Graphics.GL.Internal.Shared.GL_TRUE'.
--
-- The length of @value@ should be @count*8@.
glUniformMatrix4x2fv :: MonadIO m => GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> m ()
glUniformMatrix4x2fv = ffiintsizeibooleanPtrfloatIOV glUniformMatrix4x2fvFunPtr
glUniformMatrix4x2fvFunPtr :: FunPtr (GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ())
glUniformMatrix4x2fvFunPtr = unsafePerformIO (getProcAddress "glUniformMatrix4x2fv")
{-# NOINLINE glUniformMatrix4x2fvFunPtr #-}
-- | Usage: @'glUniformMatrix4x3fv' location count transpose value@
--
-- The parameter @transpose@ is a @Boolean@, one of: 'Graphics.GL.Internal.Shared.GL_FALSE', 'Graphics.GL.Internal.Shared.GL_TRUE'.
--
-- The length of @value@ should be @count*12@.
glUniformMatrix4x3fv :: MonadIO m => GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> m ()
glUniformMatrix4x3fv = ffiintsizeibooleanPtrfloatIOV glUniformMatrix4x3fvFunPtr
glUniformMatrix4x3fvFunPtr :: FunPtr (GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ())
glUniformMatrix4x3fvFunPtr = unsafePerformIO (getProcAddress "glUniformMatrix4x3fv")
{-# NOINLINE glUniformMatrix4x3fvFunPtr #-}
-- | Usage: @'glUnmapBuffer' target@
--
-- The parameter @target@ is a @BufferTargetARB@.
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glUnmapBuffer.xhtml>
glUnmapBuffer :: MonadIO m => GLenum -> m GLboolean
glUnmapBuffer = ffienumIOboolean glUnmapBufferFunPtr
glUnmapBufferFunPtr :: FunPtr (GLenum -> IO GLboolean)
glUnmapBufferFunPtr = unsafePerformIO (getProcAddress "glUnmapBuffer")
{-# NOINLINE glUnmapBufferFunPtr #-}
-- | Usage: @'glUseProgram' program@
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glUseProgram.xhtml>
glUseProgram :: MonadIO m => GLuint -> m ()
glUseProgram = ffiuintIOV glUseProgramFunPtr
glUseProgramFunPtr :: FunPtr (GLuint -> IO ())
glUseProgramFunPtr = unsafePerformIO (getProcAddress "glUseProgram")
{-# NOINLINE glUseProgramFunPtr #-}
-- | Usage: @'glValidateProgram' program@
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glValidateProgram.xhtml>
glValidateProgram :: MonadIO m => GLuint -> m ()
glValidateProgram = ffiuintIOV glValidateProgramFunPtr
glValidateProgramFunPtr :: FunPtr (GLuint -> IO ())
glValidateProgramFunPtr = unsafePerformIO (getProcAddress "glValidateProgram")
{-# NOINLINE glValidateProgramFunPtr #-}
-- | Usage: @'glVertexAttrib1d' index x@
--
-- The vector equivalent of this command is 'Graphics.GL.Internal.Shared.glVertexAttrib1dv'.
glVertexAttrib1d :: MonadIO m => GLuint -> GLdouble -> m ()
glVertexAttrib1d = ffiuintdoubleIOV glVertexAttrib1dFunPtr
glVertexAttrib1dFunPtr :: FunPtr (GLuint -> GLdouble -> IO ())
glVertexAttrib1dFunPtr = unsafePerformIO (getProcAddress "glVertexAttrib1d")
{-# NOINLINE glVertexAttrib1dFunPtr #-}
-- | Usage: @'glVertexAttrib1dv' index v@
--
-- The length of @v@ should be @1@.
glVertexAttrib1dv :: MonadIO m => GLuint -> Ptr GLdouble -> m ()
glVertexAttrib1dv = ffiuintPtrdoubleIOV glVertexAttrib1dvFunPtr
glVertexAttrib1dvFunPtr :: FunPtr (GLuint -> Ptr GLdouble -> IO ())
glVertexAttrib1dvFunPtr = unsafePerformIO (getProcAddress "glVertexAttrib1dv")
{-# NOINLINE glVertexAttrib1dvFunPtr #-}
-- | Usage: @'glVertexAttrib1f' index x@
--
-- The vector equivalent of this command is 'Graphics.GL.Internal.Shared.glVertexAttrib1fv'.
glVertexAttrib1f :: MonadIO m => GLuint -> GLfloat -> m ()
glVertexAttrib1f = ffiuintfloatIOV glVertexAttrib1fFunPtr
glVertexAttrib1fFunPtr :: FunPtr (GLuint -> GLfloat -> IO ())
glVertexAttrib1fFunPtr = unsafePerformIO (getProcAddress "glVertexAttrib1f")
{-# NOINLINE glVertexAttrib1fFunPtr #-}
-- | Usage: @'glVertexAttrib1fv' index v@
--
-- The length of @v@ should be @1@.
glVertexAttrib1fv :: MonadIO m => GLuint -> Ptr GLfloat -> m ()
glVertexAttrib1fv = ffiuintPtrfloatIOV glVertexAttrib1fvFunPtr
glVertexAttrib1fvFunPtr :: FunPtr (GLuint -> Ptr GLfloat -> IO ())
glVertexAttrib1fvFunPtr = unsafePerformIO (getProcAddress "glVertexAttrib1fv")
{-# NOINLINE glVertexAttrib1fvFunPtr #-}
-- | Usage: @'glVertexAttrib1s' index x@
--
-- The vector equivalent of this command is 'Graphics.GL.Internal.Shared.glVertexAttrib1sv'.
glVertexAttrib1s :: MonadIO m => GLuint -> GLshort -> m ()
glVertexAttrib1s = ffiuintshortIOV glVertexAttrib1sFunPtr
glVertexAttrib1sFunPtr :: FunPtr (GLuint -> GLshort -> IO ())
glVertexAttrib1sFunPtr = unsafePerformIO (getProcAddress "glVertexAttrib1s")
{-# NOINLINE glVertexAttrib1sFunPtr #-}
-- | Usage: @'glVertexAttrib1sv' index v@
--
-- The length of @v@ should be @1@.
glVertexAttrib1sv :: MonadIO m => GLuint -> Ptr GLshort -> m ()
glVertexAttrib1sv = ffiuintPtrshortIOV glVertexAttrib1svFunPtr
glVertexAttrib1svFunPtr :: FunPtr (GLuint -> Ptr GLshort -> IO ())
glVertexAttrib1svFunPtr = unsafePerformIO (getProcAddress "glVertexAttrib1sv")
{-# NOINLINE glVertexAttrib1svFunPtr #-}
-- | Usage: @'glVertexAttrib2d' index x y@
--
-- The vector equivalent of this command is 'Graphics.GL.Internal.Shared.glVertexAttrib2dv'.
glVertexAttrib2d :: MonadIO m => GLuint -> GLdouble -> GLdouble -> m ()
glVertexAttrib2d = ffiuintdoubledoubleIOV glVertexAttrib2dFunPtr
glVertexAttrib2dFunPtr :: FunPtr (GLuint -> GLdouble -> GLdouble -> IO ())
glVertexAttrib2dFunPtr = unsafePerformIO (getProcAddress "glVertexAttrib2d")
{-# NOINLINE glVertexAttrib2dFunPtr #-}
-- | Usage: @'glVertexAttrib2dv' index v@
--
-- The length of @v@ should be @2@.
glVertexAttrib2dv :: MonadIO m => GLuint -> Ptr GLdouble -> m ()
glVertexAttrib2dv = ffiuintPtrdoubleIOV glVertexAttrib2dvFunPtr
glVertexAttrib2dvFunPtr :: FunPtr (GLuint -> Ptr GLdouble -> IO ())
glVertexAttrib2dvFunPtr = unsafePerformIO (getProcAddress "glVertexAttrib2dv")
{-# NOINLINE glVertexAttrib2dvFunPtr #-}
-- | Usage: @'glVertexAttrib2f' index x y@
--
-- The vector equivalent of this command is 'Graphics.GL.Internal.Shared.glVertexAttrib2fv'.
glVertexAttrib2f :: MonadIO m => GLuint -> GLfloat -> GLfloat -> m ()
glVertexAttrib2f = ffiuintfloatfloatIOV glVertexAttrib2fFunPtr
glVertexAttrib2fFunPtr :: FunPtr (GLuint -> GLfloat -> GLfloat -> IO ())
glVertexAttrib2fFunPtr = unsafePerformIO (getProcAddress "glVertexAttrib2f")
{-# NOINLINE glVertexAttrib2fFunPtr #-}
-- | Usage: @'glVertexAttrib2fv' index v@
--
-- The length of @v@ should be @2@.
glVertexAttrib2fv :: MonadIO m => GLuint -> Ptr GLfloat -> m ()
glVertexAttrib2fv = ffiuintPtrfloatIOV glVertexAttrib2fvFunPtr
glVertexAttrib2fvFunPtr :: FunPtr (GLuint -> Ptr GLfloat -> IO ())
glVertexAttrib2fvFunPtr = unsafePerformIO (getProcAddress "glVertexAttrib2fv")
{-# NOINLINE glVertexAttrib2fvFunPtr #-}
-- | Usage: @'glVertexAttrib2s' index x y@
--
-- The vector equivalent of this command is 'Graphics.GL.Internal.Shared.glVertexAttrib2sv'.
glVertexAttrib2s :: MonadIO m => GLuint -> GLshort -> GLshort -> m ()
glVertexAttrib2s = ffiuintshortshortIOV glVertexAttrib2sFunPtr
glVertexAttrib2sFunPtr :: FunPtr (GLuint -> GLshort -> GLshort -> IO ())
glVertexAttrib2sFunPtr = unsafePerformIO (getProcAddress "glVertexAttrib2s")
{-# NOINLINE glVertexAttrib2sFunPtr #-}
-- | Usage: @'glVertexAttrib2sv' index v@
--
-- The length of @v@ should be @2@.
glVertexAttrib2sv :: MonadIO m => GLuint -> Ptr GLshort -> m ()
glVertexAttrib2sv = ffiuintPtrshortIOV glVertexAttrib2svFunPtr
glVertexAttrib2svFunPtr :: FunPtr (GLuint -> Ptr GLshort -> IO ())
glVertexAttrib2svFunPtr = unsafePerformIO (getProcAddress "glVertexAttrib2sv")
{-# NOINLINE glVertexAttrib2svFunPtr #-}
-- | Usage: @'glVertexAttrib3d' index x y z@
--
-- The vector equivalent of this command is 'Graphics.GL.Internal.Shared.glVertexAttrib3dv'.
glVertexAttrib3d :: MonadIO m => GLuint -> GLdouble -> GLdouble -> GLdouble -> m ()
glVertexAttrib3d = ffiuintdoubledoubledoubleIOV glVertexAttrib3dFunPtr
glVertexAttrib3dFunPtr :: FunPtr (GLuint -> GLdouble -> GLdouble -> GLdouble -> IO ())
glVertexAttrib3dFunPtr = unsafePerformIO (getProcAddress "glVertexAttrib3d")
{-# NOINLINE glVertexAttrib3dFunPtr #-}
-- | Usage: @'glVertexAttrib3dv' index v@
--
-- The length of @v@ should be @3@.
glVertexAttrib3dv :: MonadIO m => GLuint -> Ptr GLdouble -> m ()
glVertexAttrib3dv = ffiuintPtrdoubleIOV glVertexAttrib3dvFunPtr
glVertexAttrib3dvFunPtr :: FunPtr (GLuint -> Ptr GLdouble -> IO ())
glVertexAttrib3dvFunPtr = unsafePerformIO (getProcAddress "glVertexAttrib3dv")
{-# NOINLINE glVertexAttrib3dvFunPtr #-}
-- | Usage: @'glVertexAttrib3f' index x y z@
--
-- The vector equivalent of this command is 'Graphics.GL.Internal.Shared.glVertexAttrib3fv'.
glVertexAttrib3f :: MonadIO m => GLuint -> GLfloat -> GLfloat -> GLfloat -> m ()
glVertexAttrib3f = ffiuintfloatfloatfloatIOV glVertexAttrib3fFunPtr
glVertexAttrib3fFunPtr :: FunPtr (GLuint -> GLfloat -> GLfloat -> GLfloat -> IO ())
glVertexAttrib3fFunPtr = unsafePerformIO (getProcAddress "glVertexAttrib3f")
{-# NOINLINE glVertexAttrib3fFunPtr #-}
-- | Usage: @'glVertexAttrib3fv' index v@
--
-- The length of @v@ should be @3@.
glVertexAttrib3fv :: MonadIO m => GLuint -> Ptr GLfloat -> m ()
glVertexAttrib3fv = ffiuintPtrfloatIOV glVertexAttrib3fvFunPtr
glVertexAttrib3fvFunPtr :: FunPtr (GLuint -> Ptr GLfloat -> IO ())
glVertexAttrib3fvFunPtr = unsafePerformIO (getProcAddress "glVertexAttrib3fv")
{-# NOINLINE glVertexAttrib3fvFunPtr #-}
-- | Usage: @'glVertexAttrib3s' index x y z@
--
-- The vector equivalent of this command is 'Graphics.GL.Internal.Shared.glVertexAttrib3sv'.
glVertexAttrib3s :: MonadIO m => GLuint -> GLshort -> GLshort -> GLshort -> m ()
glVertexAttrib3s = ffiuintshortshortshortIOV glVertexAttrib3sFunPtr
glVertexAttrib3sFunPtr :: FunPtr (GLuint -> GLshort -> GLshort -> GLshort -> IO ())
glVertexAttrib3sFunPtr = unsafePerformIO (getProcAddress "glVertexAttrib3s")
{-# NOINLINE glVertexAttrib3sFunPtr #-}
-- | Usage: @'glVertexAttrib3sv' index v@
--
-- The length of @v@ should be @3@.
glVertexAttrib3sv :: MonadIO m => GLuint -> Ptr GLshort -> m ()
glVertexAttrib3sv = ffiuintPtrshortIOV glVertexAttrib3svFunPtr
glVertexAttrib3svFunPtr :: FunPtr (GLuint -> Ptr GLshort -> IO ())
glVertexAttrib3svFunPtr = unsafePerformIO (getProcAddress "glVertexAttrib3sv")
{-# NOINLINE glVertexAttrib3svFunPtr #-}
-- | Usage: @'glVertexAttrib4Nbv' index v@
--
-- The length of @v@ should be @4@.
glVertexAttrib4Nbv :: MonadIO m => GLuint -> Ptr GLbyte -> m ()
glVertexAttrib4Nbv = ffiuintPtrbyteIOV glVertexAttrib4NbvFunPtr
glVertexAttrib4NbvFunPtr :: FunPtr (GLuint -> Ptr GLbyte -> IO ())
glVertexAttrib4NbvFunPtr = unsafePerformIO (getProcAddress "glVertexAttrib4Nbv")
{-# NOINLINE glVertexAttrib4NbvFunPtr #-}
-- | Usage: @'glVertexAttrib4Niv' index v@
--
-- The length of @v@ should be @4@.
glVertexAttrib4Niv :: MonadIO m => GLuint -> Ptr GLint -> m ()
glVertexAttrib4Niv = ffiuintPtrintIOV glVertexAttrib4NivFunPtr
glVertexAttrib4NivFunPtr :: FunPtr (GLuint -> Ptr GLint -> IO ())
glVertexAttrib4NivFunPtr = unsafePerformIO (getProcAddress "glVertexAttrib4Niv")
{-# NOINLINE glVertexAttrib4NivFunPtr #-}
-- | Usage: @'glVertexAttrib4Nsv' index v@
--
-- The length of @v@ should be @4@.
glVertexAttrib4Nsv :: MonadIO m => GLuint -> Ptr GLshort -> m ()
glVertexAttrib4Nsv = ffiuintPtrshortIOV glVertexAttrib4NsvFunPtr
glVertexAttrib4NsvFunPtr :: FunPtr (GLuint -> Ptr GLshort -> IO ())
glVertexAttrib4NsvFunPtr = unsafePerformIO (getProcAddress "glVertexAttrib4Nsv")
{-# NOINLINE glVertexAttrib4NsvFunPtr #-}
-- | Usage: @'glVertexAttrib4Nub' index x y z w@
glVertexAttrib4Nub :: MonadIO m => GLuint -> GLubyte -> GLubyte -> GLubyte -> GLubyte -> m ()
glVertexAttrib4Nub = ffiuintubyteubyteubyteubyteIOV glVertexAttrib4NubFunPtr
glVertexAttrib4NubFunPtr :: FunPtr (GLuint -> GLubyte -> GLubyte -> GLubyte -> GLubyte -> IO ())
glVertexAttrib4NubFunPtr = unsafePerformIO (getProcAddress "glVertexAttrib4Nub")
{-# NOINLINE glVertexAttrib4NubFunPtr #-}
-- | Usage: @'glVertexAttrib4Nubv' index v@
--
-- The length of @v@ should be @4@.
glVertexAttrib4Nubv :: MonadIO m => GLuint -> Ptr GLubyte -> m ()
glVertexAttrib4Nubv = ffiuintPtrubyteIOV glVertexAttrib4NubvFunPtr
glVertexAttrib4NubvFunPtr :: FunPtr (GLuint -> Ptr GLubyte -> IO ())
glVertexAttrib4NubvFunPtr = unsafePerformIO (getProcAddress "glVertexAttrib4Nubv")
{-# NOINLINE glVertexAttrib4NubvFunPtr #-}
-- | Usage: @'glVertexAttrib4Nuiv' index v@
--
-- The length of @v@ should be @4@.
glVertexAttrib4Nuiv :: MonadIO m => GLuint -> Ptr GLuint -> m ()
glVertexAttrib4Nuiv = ffiuintPtruintIOV glVertexAttrib4NuivFunPtr
glVertexAttrib4NuivFunPtr :: FunPtr (GLuint -> Ptr GLuint -> IO ())
glVertexAttrib4NuivFunPtr = unsafePerformIO (getProcAddress "glVertexAttrib4Nuiv")
{-# NOINLINE glVertexAttrib4NuivFunPtr #-}
-- | Usage: @'glVertexAttrib4Nusv' index v@
--
-- The length of @v@ should be @4@.
glVertexAttrib4Nusv :: MonadIO m => GLuint -> Ptr GLushort -> m ()
glVertexAttrib4Nusv = ffiuintPtrushortIOV glVertexAttrib4NusvFunPtr
glVertexAttrib4NusvFunPtr :: FunPtr (GLuint -> Ptr GLushort -> IO ())
glVertexAttrib4NusvFunPtr = unsafePerformIO (getProcAddress "glVertexAttrib4Nusv")
{-# NOINLINE glVertexAttrib4NusvFunPtr #-}
-- | Usage: @'glVertexAttrib4bv' index v@
--
-- The length of @v@ should be @4@.
glVertexAttrib4bv :: MonadIO m => GLuint -> Ptr GLbyte -> m ()
glVertexAttrib4bv = ffiuintPtrbyteIOV glVertexAttrib4bvFunPtr
glVertexAttrib4bvFunPtr :: FunPtr (GLuint -> Ptr GLbyte -> IO ())
glVertexAttrib4bvFunPtr = unsafePerformIO (getProcAddress "glVertexAttrib4bv")
{-# NOINLINE glVertexAttrib4bvFunPtr #-}
-- | Usage: @'glVertexAttrib4d' index x y z w@
--
-- The vector equivalent of this command is 'Graphics.GL.Internal.Shared.glVertexAttrib4dv'.
glVertexAttrib4d :: MonadIO m => GLuint -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> m ()
glVertexAttrib4d = ffiuintdoubledoubledoubledoubleIOV glVertexAttrib4dFunPtr
glVertexAttrib4dFunPtr :: FunPtr (GLuint -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ())
glVertexAttrib4dFunPtr = unsafePerformIO (getProcAddress "glVertexAttrib4d")
{-# NOINLINE glVertexAttrib4dFunPtr #-}
-- | Usage: @'glVertexAttrib4dv' index v@
--
-- The length of @v@ should be @4@.
glVertexAttrib4dv :: MonadIO m => GLuint -> Ptr GLdouble -> m ()
glVertexAttrib4dv = ffiuintPtrdoubleIOV glVertexAttrib4dvFunPtr
glVertexAttrib4dvFunPtr :: FunPtr (GLuint -> Ptr GLdouble -> IO ())
glVertexAttrib4dvFunPtr = unsafePerformIO (getProcAddress "glVertexAttrib4dv")
{-# NOINLINE glVertexAttrib4dvFunPtr #-}
-- | Usage: @'glVertexAttrib4f' index x y z w@
--
-- The vector equivalent of this command is 'Graphics.GL.Internal.Shared.glVertexAttrib4fv'.
glVertexAttrib4f :: MonadIO m => GLuint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> m ()
glVertexAttrib4f = ffiuintfloatfloatfloatfloatIOV glVertexAttrib4fFunPtr
glVertexAttrib4fFunPtr :: FunPtr (GLuint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
glVertexAttrib4fFunPtr = unsafePerformIO (getProcAddress "glVertexAttrib4f")
{-# NOINLINE glVertexAttrib4fFunPtr #-}
-- | Usage: @'glVertexAttrib4fv' index v@
--
-- The length of @v@ should be @4@.
glVertexAttrib4fv :: MonadIO m => GLuint -> Ptr GLfloat -> m ()
glVertexAttrib4fv = ffiuintPtrfloatIOV glVertexAttrib4fvFunPtr
glVertexAttrib4fvFunPtr :: FunPtr (GLuint -> Ptr GLfloat -> IO ())
glVertexAttrib4fvFunPtr = unsafePerformIO (getProcAddress "glVertexAttrib4fv")
{-# NOINLINE glVertexAttrib4fvFunPtr #-}
-- | Usage: @'glVertexAttrib4iv' index v@
--
-- The length of @v@ should be @4@.
glVertexAttrib4iv :: MonadIO m => GLuint -> Ptr GLint -> m ()
glVertexAttrib4iv = ffiuintPtrintIOV glVertexAttrib4ivFunPtr
glVertexAttrib4ivFunPtr :: FunPtr (GLuint -> Ptr GLint -> IO ())
glVertexAttrib4ivFunPtr = unsafePerformIO (getProcAddress "glVertexAttrib4iv")
{-# NOINLINE glVertexAttrib4ivFunPtr #-}
-- | Usage: @'glVertexAttrib4s' index x y z w@
--
-- The vector equivalent of this command is 'Graphics.GL.Internal.Shared.glVertexAttrib4sv'.
glVertexAttrib4s :: MonadIO m => GLuint -> GLshort -> GLshort -> GLshort -> GLshort -> m ()
glVertexAttrib4s = ffiuintshortshortshortshortIOV glVertexAttrib4sFunPtr
glVertexAttrib4sFunPtr :: FunPtr (GLuint -> GLshort -> GLshort -> GLshort -> GLshort -> IO ())
glVertexAttrib4sFunPtr = unsafePerformIO (getProcAddress "glVertexAttrib4s")
{-# NOINLINE glVertexAttrib4sFunPtr #-}
-- | Usage: @'glVertexAttrib4sv' index v@
--
-- The length of @v@ should be @4@.
glVertexAttrib4sv :: MonadIO m => GLuint -> Ptr GLshort -> m ()
glVertexAttrib4sv = ffiuintPtrshortIOV glVertexAttrib4svFunPtr
glVertexAttrib4svFunPtr :: FunPtr (GLuint -> Ptr GLshort -> IO ())
glVertexAttrib4svFunPtr = unsafePerformIO (getProcAddress "glVertexAttrib4sv")
{-# NOINLINE glVertexAttrib4svFunPtr #-}
-- | Usage: @'glVertexAttrib4ubv' index v@
--
-- The length of @v@ should be @4@.
glVertexAttrib4ubv :: MonadIO m => GLuint -> Ptr GLubyte -> m ()
glVertexAttrib4ubv = ffiuintPtrubyteIOV glVertexAttrib4ubvFunPtr
glVertexAttrib4ubvFunPtr :: FunPtr (GLuint -> Ptr GLubyte -> IO ())
glVertexAttrib4ubvFunPtr = unsafePerformIO (getProcAddress "glVertexAttrib4ubv")
{-# NOINLINE glVertexAttrib4ubvFunPtr #-}
-- | Usage: @'glVertexAttrib4uiv' index v@
--
-- The length of @v@ should be @4@.
glVertexAttrib4uiv :: MonadIO m => GLuint -> Ptr GLuint -> m ()
glVertexAttrib4uiv = ffiuintPtruintIOV glVertexAttrib4uivFunPtr
glVertexAttrib4uivFunPtr :: FunPtr (GLuint -> Ptr GLuint -> IO ())
glVertexAttrib4uivFunPtr = unsafePerformIO (getProcAddress "glVertexAttrib4uiv")
{-# NOINLINE glVertexAttrib4uivFunPtr #-}
-- | Usage: @'glVertexAttrib4usv' index v@
--
-- The length of @v@ should be @4@.
glVertexAttrib4usv :: MonadIO m => GLuint -> Ptr GLushort -> m ()
glVertexAttrib4usv = ffiuintPtrushortIOV glVertexAttrib4usvFunPtr
glVertexAttrib4usvFunPtr :: FunPtr (GLuint -> Ptr GLushort -> IO ())
glVertexAttrib4usvFunPtr = unsafePerformIO (getProcAddress "glVertexAttrib4usv")
{-# NOINLINE glVertexAttrib4usvFunPtr #-}
-- | Usage: @'glVertexAttribI1i' index x@
--
-- The vector equivalent of this command is 'Graphics.GL.Internal.Shared.glVertexAttribI1iv'.
glVertexAttribI1i :: MonadIO m => GLuint -> GLint -> m ()
glVertexAttribI1i = ffiuintintIOV glVertexAttribI1iFunPtr
glVertexAttribI1iFunPtr :: FunPtr (GLuint -> GLint -> IO ())
glVertexAttribI1iFunPtr = unsafePerformIO (getProcAddress "glVertexAttribI1i")
{-# NOINLINE glVertexAttribI1iFunPtr #-}
-- | Usage: @'glVertexAttribI1iv' index v@
--
-- The length of @v@ should be @1@.
glVertexAttribI1iv :: MonadIO m => GLuint -> Ptr GLint -> m ()
glVertexAttribI1iv = ffiuintPtrintIOV glVertexAttribI1ivFunPtr
glVertexAttribI1ivFunPtr :: FunPtr (GLuint -> Ptr GLint -> IO ())
glVertexAttribI1ivFunPtr = unsafePerformIO (getProcAddress "glVertexAttribI1iv")
{-# NOINLINE glVertexAttribI1ivFunPtr #-}
-- | Usage: @'glVertexAttribI1ui' index x@
--
-- The vector equivalent of this command is 'Graphics.GL.Internal.Shared.glVertexAttribI1uiv'.
glVertexAttribI1ui :: MonadIO m => GLuint -> GLuint -> m ()
glVertexAttribI1ui = ffiuintuintIOV glVertexAttribI1uiFunPtr
glVertexAttribI1uiFunPtr :: FunPtr (GLuint -> GLuint -> IO ())
glVertexAttribI1uiFunPtr = unsafePerformIO (getProcAddress "glVertexAttribI1ui")
{-# NOINLINE glVertexAttribI1uiFunPtr #-}
-- | Usage: @'glVertexAttribI1uiv' index v@
--
-- The length of @v@ should be @1@.
glVertexAttribI1uiv :: MonadIO m => GLuint -> Ptr GLuint -> m ()
glVertexAttribI1uiv = ffiuintPtruintIOV glVertexAttribI1uivFunPtr
glVertexAttribI1uivFunPtr :: FunPtr (GLuint -> Ptr GLuint -> IO ())
glVertexAttribI1uivFunPtr = unsafePerformIO (getProcAddress "glVertexAttribI1uiv")
{-# NOINLINE glVertexAttribI1uivFunPtr #-}
-- | Usage: @'glVertexAttribI2i' index x y@
--
-- The vector equivalent of this command is 'Graphics.GL.Internal.Shared.glVertexAttribI2iv'.
glVertexAttribI2i :: MonadIO m => GLuint -> GLint -> GLint -> m ()
glVertexAttribI2i = ffiuintintintIOV glVertexAttribI2iFunPtr
glVertexAttribI2iFunPtr :: FunPtr (GLuint -> GLint -> GLint -> IO ())
glVertexAttribI2iFunPtr = unsafePerformIO (getProcAddress "glVertexAttribI2i")
{-# NOINLINE glVertexAttribI2iFunPtr #-}
-- | Usage: @'glVertexAttribI2iv' index v@
--
-- The length of @v@ should be @2@.
glVertexAttribI2iv :: MonadIO m => GLuint -> Ptr GLint -> m ()
glVertexAttribI2iv = ffiuintPtrintIOV glVertexAttribI2ivFunPtr
glVertexAttribI2ivFunPtr :: FunPtr (GLuint -> Ptr GLint -> IO ())
glVertexAttribI2ivFunPtr = unsafePerformIO (getProcAddress "glVertexAttribI2iv")
{-# NOINLINE glVertexAttribI2ivFunPtr #-}
-- | Usage: @'glVertexAttribI2ui' index x y@
--
-- The vector equivalent of this command is 'Graphics.GL.Internal.Shared.glVertexAttribI2uiv'.
glVertexAttribI2ui :: MonadIO m => GLuint -> GLuint -> GLuint -> m ()
glVertexAttribI2ui = ffiuintuintuintIOV glVertexAttribI2uiFunPtr
glVertexAttribI2uiFunPtr :: FunPtr (GLuint -> GLuint -> GLuint -> IO ())
glVertexAttribI2uiFunPtr = unsafePerformIO (getProcAddress "glVertexAttribI2ui")
{-# NOINLINE glVertexAttribI2uiFunPtr #-}
-- | Usage: @'glVertexAttribI2uiv' index v@
--
-- The length of @v@ should be @2@.
glVertexAttribI2uiv :: MonadIO m => GLuint -> Ptr GLuint -> m ()
glVertexAttribI2uiv = ffiuintPtruintIOV glVertexAttribI2uivFunPtr
glVertexAttribI2uivFunPtr :: FunPtr (GLuint -> Ptr GLuint -> IO ())
glVertexAttribI2uivFunPtr = unsafePerformIO (getProcAddress "glVertexAttribI2uiv")
{-# NOINLINE glVertexAttribI2uivFunPtr #-}
-- | Usage: @'glVertexAttribI3i' index x y z@
--
-- The vector equivalent of this command is 'Graphics.GL.Internal.Shared.glVertexAttribI3iv'.
glVertexAttribI3i :: MonadIO m => GLuint -> GLint -> GLint -> GLint -> m ()
glVertexAttribI3i = ffiuintintintintIOV glVertexAttribI3iFunPtr
glVertexAttribI3iFunPtr :: FunPtr (GLuint -> GLint -> GLint -> GLint -> IO ())
glVertexAttribI3iFunPtr = unsafePerformIO (getProcAddress "glVertexAttribI3i")
{-# NOINLINE glVertexAttribI3iFunPtr #-}
-- | Usage: @'glVertexAttribI3iv' index v@
--
-- The length of @v@ should be @3@.
glVertexAttribI3iv :: MonadIO m => GLuint -> Ptr GLint -> m ()
glVertexAttribI3iv = ffiuintPtrintIOV glVertexAttribI3ivFunPtr
glVertexAttribI3ivFunPtr :: FunPtr (GLuint -> Ptr GLint -> IO ())
glVertexAttribI3ivFunPtr = unsafePerformIO (getProcAddress "glVertexAttribI3iv")
{-# NOINLINE glVertexAttribI3ivFunPtr #-}
-- | Usage: @'glVertexAttribI3ui' index x y z@
--
-- The vector equivalent of this command is 'Graphics.GL.Internal.Shared.glVertexAttribI3uiv'.
glVertexAttribI3ui :: MonadIO m => GLuint -> GLuint -> GLuint -> GLuint -> m ()
glVertexAttribI3ui = ffiuintuintuintuintIOV glVertexAttribI3uiFunPtr
glVertexAttribI3uiFunPtr :: FunPtr (GLuint -> GLuint -> GLuint -> GLuint -> IO ())
glVertexAttribI3uiFunPtr = unsafePerformIO (getProcAddress "glVertexAttribI3ui")
{-# NOINLINE glVertexAttribI3uiFunPtr #-}
-- | Usage: @'glVertexAttribI3uiv' index v@
--
-- The length of @v@ should be @3@.
glVertexAttribI3uiv :: MonadIO m => GLuint -> Ptr GLuint -> m ()
glVertexAttribI3uiv = ffiuintPtruintIOV glVertexAttribI3uivFunPtr
glVertexAttribI3uivFunPtr :: FunPtr (GLuint -> Ptr GLuint -> IO ())
glVertexAttribI3uivFunPtr = unsafePerformIO (getProcAddress "glVertexAttribI3uiv")
{-# NOINLINE glVertexAttribI3uivFunPtr #-}
-- | Usage: @'glVertexAttribI4bv' index v@
--
-- The length of @v@ should be @4@.
glVertexAttribI4bv :: MonadIO m => GLuint -> Ptr GLbyte -> m ()
glVertexAttribI4bv = ffiuintPtrbyteIOV glVertexAttribI4bvFunPtr
glVertexAttribI4bvFunPtr :: FunPtr (GLuint -> Ptr GLbyte -> IO ())
glVertexAttribI4bvFunPtr = unsafePerformIO (getProcAddress "glVertexAttribI4bv")
{-# NOINLINE glVertexAttribI4bvFunPtr #-}
-- | Usage: @'glVertexAttribI4i' index x y z w@
--
-- The vector equivalent of this command is 'Graphics.GL.Internal.Shared.glVertexAttribI4iv'.
glVertexAttribI4i :: MonadIO m => GLuint -> GLint -> GLint -> GLint -> GLint -> m ()
glVertexAttribI4i = ffiuintintintintintIOV glVertexAttribI4iFunPtr
glVertexAttribI4iFunPtr :: FunPtr (GLuint -> GLint -> GLint -> GLint -> GLint -> IO ())
glVertexAttribI4iFunPtr = unsafePerformIO (getProcAddress "glVertexAttribI4i")
{-# NOINLINE glVertexAttribI4iFunPtr #-}
-- | Usage: @'glVertexAttribI4iv' index v@
--
-- The length of @v@ should be @4@.
glVertexAttribI4iv :: MonadIO m => GLuint -> Ptr GLint -> m ()
glVertexAttribI4iv = ffiuintPtrintIOV glVertexAttribI4ivFunPtr
glVertexAttribI4ivFunPtr :: FunPtr (GLuint -> Ptr GLint -> IO ())
glVertexAttribI4ivFunPtr = unsafePerformIO (getProcAddress "glVertexAttribI4iv")
{-# NOINLINE glVertexAttribI4ivFunPtr #-}
-- | Usage: @'glVertexAttribI4sv' index v@
--
-- The length of @v@ should be @4@.
glVertexAttribI4sv :: MonadIO m => GLuint -> Ptr GLshort -> m ()
glVertexAttribI4sv = ffiuintPtrshortIOV glVertexAttribI4svFunPtr
glVertexAttribI4svFunPtr :: FunPtr (GLuint -> Ptr GLshort -> IO ())
glVertexAttribI4svFunPtr = unsafePerformIO (getProcAddress "glVertexAttribI4sv")
{-# NOINLINE glVertexAttribI4svFunPtr #-}
-- | Usage: @'glVertexAttribI4ubv' index v@
--
-- The length of @v@ should be @4@.
glVertexAttribI4ubv :: MonadIO m => GLuint -> Ptr GLubyte -> m ()
glVertexAttribI4ubv = ffiuintPtrubyteIOV glVertexAttribI4ubvFunPtr
glVertexAttribI4ubvFunPtr :: FunPtr (GLuint -> Ptr GLubyte -> IO ())
glVertexAttribI4ubvFunPtr = unsafePerformIO (getProcAddress "glVertexAttribI4ubv")
{-# NOINLINE glVertexAttribI4ubvFunPtr #-}
-- | Usage: @'glVertexAttribI4ui' index x y z w@
--
-- The vector equivalent of this command is 'Graphics.GL.Internal.Shared.glVertexAttribI4uiv'.
glVertexAttribI4ui :: MonadIO m => GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> m ()
glVertexAttribI4ui = ffiuintuintuintuintuintIOV glVertexAttribI4uiFunPtr
glVertexAttribI4uiFunPtr :: FunPtr (GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> IO ())
glVertexAttribI4uiFunPtr = unsafePerformIO (getProcAddress "glVertexAttribI4ui")
{-# NOINLINE glVertexAttribI4uiFunPtr #-}
-- | Usage: @'glVertexAttribI4uiv' index v@
--
-- The length of @v@ should be @4@.
glVertexAttribI4uiv :: MonadIO m => GLuint -> Ptr GLuint -> m ()
glVertexAttribI4uiv = ffiuintPtruintIOV glVertexAttribI4uivFunPtr
glVertexAttribI4uivFunPtr :: FunPtr (GLuint -> Ptr GLuint -> IO ())
glVertexAttribI4uivFunPtr = unsafePerformIO (getProcAddress "glVertexAttribI4uiv")
{-# NOINLINE glVertexAttribI4uivFunPtr #-}
-- | Usage: @'glVertexAttribI4usv' index v@
--
-- The length of @v@ should be @4@.
glVertexAttribI4usv :: MonadIO m => GLuint -> Ptr GLushort -> m ()
glVertexAttribI4usv = ffiuintPtrushortIOV glVertexAttribI4usvFunPtr
glVertexAttribI4usvFunPtr :: FunPtr (GLuint -> Ptr GLushort -> IO ())
glVertexAttribI4usvFunPtr = unsafePerformIO (getProcAddress "glVertexAttribI4usv")
{-# NOINLINE glVertexAttribI4usvFunPtr #-}
-- | Usage: @'glVertexAttribIPointer' index size type stride pointer@
--
-- The parameter @type@ is a @VertexAttribEnum@.
--
-- The length of @pointer@ should be @COMPSIZE(size,type,stride)@.
glVertexAttribIPointer :: MonadIO m => GLuint -> GLint -> GLenum -> GLsizei -> Ptr () -> m ()
glVertexAttribIPointer = ffiuintintenumsizeiPtrVIOV glVertexAttribIPointerFunPtr
glVertexAttribIPointerFunPtr :: FunPtr (GLuint -> GLint -> GLenum -> GLsizei -> Ptr () -> IO ())
glVertexAttribIPointerFunPtr = unsafePerformIO (getProcAddress "glVertexAttribIPointer")
{-# NOINLINE glVertexAttribIPointerFunPtr #-}
-- | Usage: @'glVertexAttribPointer' index size type normalized stride pointer@
--
-- The parameter @type@ is a @VertexAttribPointerType@.
--
-- The parameter @normalized@ is a @Boolean@, one of: 'Graphics.GL.Internal.Shared.GL_FALSE', 'Graphics.GL.Internal.Shared.GL_TRUE'.
--
-- The length of @pointer@ should be @COMPSIZE(size,type,stride)@.
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glVertexAttribPointer.xhtml>
glVertexAttribPointer :: MonadIO m => GLuint -> GLint -> GLenum -> GLboolean -> GLsizei -> Ptr () -> m ()
glVertexAttribPointer = ffiuintintenumbooleansizeiPtrVIOV glVertexAttribPointerFunPtr
glVertexAttribPointerFunPtr :: FunPtr (GLuint -> GLint -> GLenum -> GLboolean -> GLsizei -> Ptr () -> IO ())
glVertexAttribPointerFunPtr = unsafePerformIO (getProcAddress "glVertexAttribPointer")
{-# NOINLINE glVertexAttribPointerFunPtr #-}
-- | Usage: @'glViewport' x y width height@
--
-- The parameter @x@ is a @WinCoord@.
--
-- The parameter @y@ is a @WinCoord@.
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glViewport.xhtml>
glViewport :: MonadIO m => GLint -> GLint -> GLsizei -> GLsizei -> m ()
glViewport = ffiintintsizeisizeiIOV glViewportFunPtr
glViewportFunPtr :: FunPtr (GLint -> GLint -> GLsizei -> GLsizei -> IO ())
glViewportFunPtr = unsafePerformIO (getProcAddress "glViewport")
{-# NOINLINE glViewportFunPtr #-}
-- | Usage: @'glWaitSync' sync flags timeout@
--
-- The parameter @sync@ is a @sync@.
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glWaitSync.xhtml>
glWaitSync :: MonadIO m => GLsync -> GLbitfield -> GLuint64 -> m ()
glWaitSync = ffisyncbitfielduint64IOV glWaitSyncFunPtr
glWaitSyncFunPtr :: FunPtr (GLsync -> GLbitfield -> GLuint64 -> IO ())
glWaitSyncFunPtr = unsafePerformIO (getProcAddress "glWaitSync")
{-# NOINLINE glWaitSyncFunPtr #-}
pattern GL_ACTIVE_ATTRIBUTES = 0x8B89
pattern GL_ACTIVE_ATTRIBUTE_MAX_LENGTH = 0x8B8A
pattern GL_ACTIVE_TEXTURE = 0x84E0
pattern GL_ACTIVE_UNIFORMS = 0x8B86
pattern GL_ACTIVE_UNIFORM_BLOCKS = 0x8A36
pattern GL_ACTIVE_UNIFORM_BLOCK_MAX_NAME_LENGTH = 0x8A35
pattern GL_ACTIVE_UNIFORM_MAX_LENGTH = 0x8B87
pattern GL_ALIASED_LINE_WIDTH_RANGE = 0x846E
pattern GL_ALPHA = 0x1906
pattern GL_ALREADY_SIGNALED = 0x911A
pattern GL_ALWAYS = 0x0207
pattern GL_AND = 0x1501
pattern GL_AND_INVERTED = 0x1504
pattern GL_AND_REVERSE = 0x1502
pattern GL_ARRAY_BUFFER = 0x8892
pattern GL_ARRAY_BUFFER_BINDING = 0x8894
pattern GL_ATTACHED_SHADERS = 0x8B85
pattern GL_BACK = 0x0405
pattern GL_BACK_LEFT = 0x0402
pattern GL_BACK_RIGHT = 0x0403
pattern GL_BGR = 0x80E0
pattern GL_BGRA = 0x80E1
pattern GL_BGRA_INTEGER = 0x8D9B
pattern GL_BGR_INTEGER = 0x8D9A
pattern GL_BLEND = 0x0BE2
pattern GL_BLEND_COLOR = 0x8005
pattern GL_BLEND_DST = 0x0BE0
pattern GL_BLEND_DST_ALPHA = 0x80CA
pattern GL_BLEND_DST_RGB = 0x80C8
pattern GL_BLEND_EQUATION_ALPHA = 0x883D
pattern GL_BLEND_EQUATION_RGB = 0x8009
pattern GL_BLEND_SRC = 0x0BE1
pattern GL_BLEND_SRC_ALPHA = 0x80CB
pattern GL_BLEND_SRC_RGB = 0x80C9
pattern GL_BLUE = 0x1905
pattern GL_BLUE_INTEGER = 0x8D96
pattern GL_BOOL = 0x8B56
pattern GL_BOOL_VEC2 = 0x8B57
pattern GL_BOOL_VEC3 = 0x8B58
pattern GL_BOOL_VEC4 = 0x8B59
pattern GL_BUFFER_ACCESS = 0x88BB
pattern GL_BUFFER_ACCESS_FLAGS = 0x911F
pattern GL_BUFFER_MAPPED = 0x88BC
pattern GL_BUFFER_MAP_LENGTH = 0x9120
pattern GL_BUFFER_MAP_OFFSET = 0x9121
pattern GL_BUFFER_MAP_POINTER = 0x88BD
pattern GL_BUFFER_SIZE = 0x8764
pattern GL_BUFFER_USAGE = 0x8765
pattern GL_BYTE = 0x1400
pattern GL_CCW = 0x0901
pattern GL_CLAMP_READ_COLOR = 0x891C
pattern GL_CLAMP_TO_BORDER = 0x812D
pattern GL_CLAMP_TO_EDGE = 0x812F
pattern GL_CLEAR = 0x1500
pattern GL_CLIP_DISTANCE0 = 0x3000
pattern GL_CLIP_DISTANCE1 = 0x3001
pattern GL_CLIP_DISTANCE2 = 0x3002
pattern GL_CLIP_DISTANCE3 = 0x3003
pattern GL_CLIP_DISTANCE4 = 0x3004
pattern GL_CLIP_DISTANCE5 = 0x3005
pattern GL_CLIP_DISTANCE6 = 0x3006
pattern GL_CLIP_DISTANCE7 = 0x3007
pattern GL_COLOR = 0x1800
pattern GL_COLOR_ATTACHMENT0 = 0x8CE0
pattern GL_COLOR_ATTACHMENT1 = 0x8CE1
pattern GL_COLOR_ATTACHMENT10 = 0x8CEA
pattern GL_COLOR_ATTACHMENT11 = 0x8CEB
pattern GL_COLOR_ATTACHMENT12 = 0x8CEC
pattern GL_COLOR_ATTACHMENT13 = 0x8CED
pattern GL_COLOR_ATTACHMENT14 = 0x8CEE
pattern GL_COLOR_ATTACHMENT15 = 0x8CEF
pattern GL_COLOR_ATTACHMENT16 = 0x8CF0
pattern GL_COLOR_ATTACHMENT17 = 0x8CF1
pattern GL_COLOR_ATTACHMENT18 = 0x8CF2
pattern GL_COLOR_ATTACHMENT19 = 0x8CF3
pattern GL_COLOR_ATTACHMENT2 = 0x8CE2
pattern GL_COLOR_ATTACHMENT20 = 0x8CF4
pattern GL_COLOR_ATTACHMENT21 = 0x8CF5
pattern GL_COLOR_ATTACHMENT22 = 0x8CF6
pattern GL_COLOR_ATTACHMENT23 = 0x8CF7
pattern GL_COLOR_ATTACHMENT24 = 0x8CF8
pattern GL_COLOR_ATTACHMENT25 = 0x8CF9
pattern GL_COLOR_ATTACHMENT26 = 0x8CFA
pattern GL_COLOR_ATTACHMENT27 = 0x8CFB
pattern GL_COLOR_ATTACHMENT28 = 0x8CFC
pattern GL_COLOR_ATTACHMENT29 = 0x8CFD
pattern GL_COLOR_ATTACHMENT3 = 0x8CE3
pattern GL_COLOR_ATTACHMENT30 = 0x8CFE
pattern GL_COLOR_ATTACHMENT31 = 0x8CFF
pattern GL_COLOR_ATTACHMENT4 = 0x8CE4
pattern GL_COLOR_ATTACHMENT5 = 0x8CE5
pattern GL_COLOR_ATTACHMENT6 = 0x8CE6
pattern GL_COLOR_ATTACHMENT7 = 0x8CE7
pattern GL_COLOR_ATTACHMENT8 = 0x8CE8
pattern GL_COLOR_ATTACHMENT9 = 0x8CE9
pattern GL_COLOR_BUFFER_BIT = 0x00004000
pattern GL_COLOR_CLEAR_VALUE = 0x0C22
pattern GL_COLOR_LOGIC_OP = 0x0BF2
pattern GL_COLOR_WRITEMASK = 0x0C23
pattern GL_COMPARE_REF_TO_TEXTURE = 0x884E
pattern GL_COMPILE_STATUS = 0x8B81
pattern GL_COMPRESSED_RED = 0x8225
pattern GL_COMPRESSED_RED_RGTC1 = 0x8DBB
pattern GL_COMPRESSED_RG = 0x8226
pattern GL_COMPRESSED_RGB = 0x84ED
pattern GL_COMPRESSED_RGBA = 0x84EE
pattern GL_COMPRESSED_RG_RGTC2 = 0x8DBD
pattern GL_COMPRESSED_SIGNED_RED_RGTC1 = 0x8DBC
pattern GL_COMPRESSED_SIGNED_RG_RGTC2 = 0x8DBE
pattern GL_COMPRESSED_SRGB = 0x8C48
pattern GL_COMPRESSED_SRGB_ALPHA = 0x8C49
pattern GL_COMPRESSED_TEXTURE_FORMATS = 0x86A3
pattern GL_CONDITION_SATISFIED = 0x911C
pattern GL_CONSTANT_ALPHA = 0x8003
pattern GL_CONSTANT_COLOR = 0x8001
pattern GL_CONTEXT_FLAGS = 0x821E
pattern GL_CONTEXT_FLAG_FORWARD_COMPATIBLE_BIT = 0x00000001
pattern GL_COPY = 0x1503
pattern GL_COPY_INVERTED = 0x150C
pattern GL_COPY_READ_BUFFER = 0x8F36
pattern GL_COPY_WRITE_BUFFER = 0x8F37
pattern GL_CULL_FACE = 0x0B44
pattern GL_CULL_FACE_MODE = 0x0B45
pattern GL_CURRENT_PROGRAM = 0x8B8D
pattern GL_CURRENT_QUERY = 0x8865
pattern GL_CURRENT_VERTEX_ATTRIB = 0x8626
pattern GL_CW = 0x0900
pattern GL_DECR = 0x1E03
pattern GL_DECR_WRAP = 0x8508
pattern GL_DELETE_STATUS = 0x8B80
pattern GL_DEPTH = 0x1801
pattern GL_DEPTH24_STENCIL8 = 0x88F0
pattern GL_DEPTH32F_STENCIL8 = 0x8CAD
pattern GL_DEPTH_ATTACHMENT = 0x8D00
pattern GL_DEPTH_BUFFER_BIT = 0x00000100
pattern GL_DEPTH_CLAMP = 0x864F
pattern GL_DEPTH_CLEAR_VALUE = 0x0B73
pattern GL_DEPTH_COMPONENT = 0x1902
pattern GL_DEPTH_COMPONENT16 = 0x81A5
pattern GL_DEPTH_COMPONENT24 = 0x81A6
pattern GL_DEPTH_COMPONENT32 = 0x81A7
pattern GL_DEPTH_COMPONENT32F = 0x8CAC
pattern GL_DEPTH_FUNC = 0x0B74
pattern GL_DEPTH_RANGE = 0x0B70
pattern GL_DEPTH_STENCIL = 0x84F9
pattern GL_DEPTH_STENCIL_ATTACHMENT = 0x821A
pattern GL_DEPTH_TEST = 0x0B71
pattern GL_DEPTH_WRITEMASK = 0x0B72
pattern GL_DITHER = 0x0BD0
pattern GL_DONT_CARE = 0x1100
pattern GL_DOUBLE = 0x140A
pattern GL_DOUBLEBUFFER = 0x0C32
pattern GL_DRAW_BUFFER = 0x0C01
pattern GL_DRAW_BUFFER0 = 0x8825
pattern GL_DRAW_BUFFER1 = 0x8826
pattern GL_DRAW_BUFFER10 = 0x882F
pattern GL_DRAW_BUFFER11 = 0x8830
pattern GL_DRAW_BUFFER12 = 0x8831
pattern GL_DRAW_BUFFER13 = 0x8832
pattern GL_DRAW_BUFFER14 = 0x8833
pattern GL_DRAW_BUFFER15 = 0x8834
pattern GL_DRAW_BUFFER2 = 0x8827
pattern GL_DRAW_BUFFER3 = 0x8828
pattern GL_DRAW_BUFFER4 = 0x8829
pattern GL_DRAW_BUFFER5 = 0x882A
pattern GL_DRAW_BUFFER6 = 0x882B
pattern GL_DRAW_BUFFER7 = 0x882C
pattern GL_DRAW_BUFFER8 = 0x882D
pattern GL_DRAW_BUFFER9 = 0x882E
pattern GL_DRAW_FRAMEBUFFER = 0x8CA9
pattern GL_DRAW_FRAMEBUFFER_BINDING = 0x8CA6
pattern GL_DST_ALPHA = 0x0304
pattern GL_DST_COLOR = 0x0306
pattern GL_DYNAMIC_COPY = 0x88EA
pattern GL_DYNAMIC_DRAW = 0x88E8
pattern GL_DYNAMIC_READ = 0x88E9
pattern GL_ELEMENT_ARRAY_BUFFER = 0x8893
pattern GL_ELEMENT_ARRAY_BUFFER_BINDING = 0x8895
pattern GL_EQUAL = 0x0202
pattern GL_EQUIV = 0x1509
pattern GL_EXTENSIONS = 0x1F03
pattern GL_FALSE = 0
pattern GL_FASTEST = 0x1101
pattern GL_FILL = 0x1B02
pattern GL_FIRST_VERTEX_CONVENTION = 0x8E4D
pattern GL_FIXED_ONLY = 0x891D
pattern GL_FLOAT = 0x1406
pattern GL_FLOAT_32_UNSIGNED_INT_24_8_REV = 0x8DAD
pattern GL_FLOAT_MAT2 = 0x8B5A
pattern GL_FLOAT_MAT2x3 = 0x8B65
pattern GL_FLOAT_MAT2x4 = 0x8B66
pattern GL_FLOAT_MAT3 = 0x8B5B
pattern GL_FLOAT_MAT3x2 = 0x8B67
pattern GL_FLOAT_MAT3x4 = 0x8B68
pattern GL_FLOAT_MAT4 = 0x8B5C
pattern GL_FLOAT_MAT4x2 = 0x8B69
pattern GL_FLOAT_MAT4x3 = 0x8B6A
pattern GL_FLOAT_VEC2 = 0x8B50
pattern GL_FLOAT_VEC3 = 0x8B51
pattern GL_FLOAT_VEC4 = 0x8B52
pattern GL_FRAGMENT_SHADER = 0x8B30
pattern GL_FRAGMENT_SHADER_DERIVATIVE_HINT = 0x8B8B
pattern GL_FRAMEBUFFER = 0x8D40
pattern GL_FRAMEBUFFER_ATTACHMENT_ALPHA_SIZE = 0x8215
pattern GL_FRAMEBUFFER_ATTACHMENT_BLUE_SIZE = 0x8214
pattern GL_FRAMEBUFFER_ATTACHMENT_COLOR_ENCODING = 0x8210
pattern GL_FRAMEBUFFER_ATTACHMENT_COMPONENT_TYPE = 0x8211
pattern GL_FRAMEBUFFER_ATTACHMENT_DEPTH_SIZE = 0x8216
pattern GL_FRAMEBUFFER_ATTACHMENT_GREEN_SIZE = 0x8213
pattern GL_FRAMEBUFFER_ATTACHMENT_LAYERED = 0x8DA7
pattern GL_FRAMEBUFFER_ATTACHMENT_OBJECT_NAME = 0x8CD1
pattern GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE = 0x8CD0
pattern GL_FRAMEBUFFER_ATTACHMENT_RED_SIZE = 0x8212
pattern GL_FRAMEBUFFER_ATTACHMENT_STENCIL_SIZE = 0x8217
pattern GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE = 0x8CD3
pattern GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LAYER = 0x8CD4
pattern GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL = 0x8CD2
pattern GL_FRAMEBUFFER_BINDING = 0x8CA6
pattern GL_FRAMEBUFFER_COMPLETE = 0x8CD5
pattern GL_FRAMEBUFFER_DEFAULT = 0x8218
pattern GL_FRAMEBUFFER_INCOMPLETE_ATTACHMENT = 0x8CD6
pattern GL_FRAMEBUFFER_INCOMPLETE_DRAW_BUFFER = 0x8CDB
pattern GL_FRAMEBUFFER_INCOMPLETE_LAYER_TARGETS = 0x8DA8
pattern GL_FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT = 0x8CD7
pattern GL_FRAMEBUFFER_INCOMPLETE_MULTISAMPLE = 0x8D56
pattern GL_FRAMEBUFFER_INCOMPLETE_READ_BUFFER = 0x8CDC
pattern GL_FRAMEBUFFER_SRGB = 0x8DB9
pattern GL_FRAMEBUFFER_UNDEFINED = 0x8219
pattern GL_FRAMEBUFFER_UNSUPPORTED = 0x8CDD
pattern GL_FRONT = 0x0404
pattern GL_FRONT_AND_BACK = 0x0408
pattern GL_FRONT_FACE = 0x0B46
pattern GL_FRONT_LEFT = 0x0400
pattern GL_FRONT_RIGHT = 0x0401
pattern GL_FUNC_ADD = 0x8006
pattern GL_FUNC_REVERSE_SUBTRACT = 0x800B
pattern GL_FUNC_SUBTRACT = 0x800A
pattern GL_GEOMETRY_INPUT_TYPE = 0x8917
pattern GL_GEOMETRY_OUTPUT_TYPE = 0x8918
pattern GL_GEOMETRY_SHADER = 0x8DD9
pattern GL_GEOMETRY_VERTICES_OUT = 0x8916
pattern GL_GEQUAL = 0x0206
pattern GL_GREATER = 0x0204
pattern GL_GREEN = 0x1904
pattern GL_GREEN_INTEGER = 0x8D95
pattern GL_HALF_FLOAT = 0x140B
pattern GL_INCR = 0x1E02
pattern GL_INCR_WRAP = 0x8507
pattern GL_INDEX = 0x8222
pattern GL_INFO_LOG_LENGTH = 0x8B84
pattern GL_INT = 0x1404
pattern GL_INTERLEAVED_ATTRIBS = 0x8C8C
pattern GL_INT_SAMPLER_1D = 0x8DC9
pattern GL_INT_SAMPLER_1D_ARRAY = 0x8DCE
pattern GL_INT_SAMPLER_2D = 0x8DCA
pattern GL_INT_SAMPLER_2D_ARRAY = 0x8DCF
pattern GL_INT_SAMPLER_2D_MULTISAMPLE = 0x9109
pattern GL_INT_SAMPLER_2D_MULTISAMPLE_ARRAY = 0x910C
pattern GL_INT_SAMPLER_2D_RECT = 0x8DCD
pattern GL_INT_SAMPLER_3D = 0x8DCB
pattern GL_INT_SAMPLER_BUFFER = 0x8DD0
pattern GL_INT_SAMPLER_CUBE = 0x8DCC
pattern GL_INT_VEC2 = 0x8B53
pattern GL_INT_VEC3 = 0x8B54
pattern GL_INT_VEC4 = 0x8B55
pattern GL_INVALID_ENUM = 0x0500
pattern GL_INVALID_FRAMEBUFFER_OPERATION = 0x0506
pattern GL_INVALID_INDEX = 0xFFFFFFFF
pattern GL_INVALID_OPERATION = 0x0502
pattern GL_INVALID_VALUE = 0x0501
pattern GL_INVERT = 0x150A
pattern GL_KEEP = 0x1E00
pattern GL_LAST_VERTEX_CONVENTION = 0x8E4E
pattern GL_LEFT = 0x0406
pattern GL_LEQUAL = 0x0203
pattern GL_LESS = 0x0201
pattern GL_LINE = 0x1B01
pattern GL_LINEAR = 0x2601
pattern GL_LINEAR_MIPMAP_LINEAR = 0x2703
pattern GL_LINEAR_MIPMAP_NEAREST = 0x2701
pattern GL_LINES = 0x0001
pattern GL_LINES_ADJACENCY = 0x000A
pattern GL_LINE_LOOP = 0x0002
pattern GL_LINE_SMOOTH = 0x0B20
pattern GL_LINE_SMOOTH_HINT = 0x0C52
pattern GL_LINE_STRIP = 0x0003
pattern GL_LINE_STRIP_ADJACENCY = 0x000B
pattern GL_LINE_WIDTH = 0x0B21
pattern GL_LINE_WIDTH_GRANULARITY = 0x0B23
pattern GL_LINE_WIDTH_RANGE = 0x0B22
pattern GL_LINK_STATUS = 0x8B82
pattern GL_LOGIC_OP_MODE = 0x0BF0
pattern GL_LOWER_LEFT = 0x8CA1
pattern GL_MAJOR_VERSION = 0x821B
pattern GL_MAP_FLUSH_EXPLICIT_BIT = 0x0010
pattern GL_MAP_INVALIDATE_BUFFER_BIT = 0x0008
pattern GL_MAP_INVALIDATE_RANGE_BIT = 0x0004
pattern GL_MAP_READ_BIT = 0x0001
pattern GL_MAP_UNSYNCHRONIZED_BIT = 0x0020
pattern GL_MAP_WRITE_BIT = 0x0002
pattern GL_MAX = 0x8008
pattern GL_MAX_3D_TEXTURE_SIZE = 0x8073
pattern GL_MAX_ARRAY_TEXTURE_LAYERS = 0x88FF
pattern GL_MAX_CLIP_DISTANCES = 0x0D32
pattern GL_MAX_COLOR_ATTACHMENTS = 0x8CDF
pattern GL_MAX_COLOR_TEXTURE_SAMPLES = 0x910E
pattern GL_MAX_COMBINED_FRAGMENT_UNIFORM_COMPONENTS = 0x8A33
pattern GL_MAX_COMBINED_GEOMETRY_UNIFORM_COMPONENTS = 0x8A32
pattern GL_MAX_COMBINED_TEXTURE_IMAGE_UNITS = 0x8B4D
pattern GL_MAX_COMBINED_UNIFORM_BLOCKS = 0x8A2E
pattern GL_MAX_COMBINED_VERTEX_UNIFORM_COMPONENTS = 0x8A31
pattern GL_MAX_CUBE_MAP_TEXTURE_SIZE = 0x851C
pattern GL_MAX_DEPTH_TEXTURE_SAMPLES = 0x910F
pattern GL_MAX_DRAW_BUFFERS = 0x8824
pattern GL_MAX_ELEMENTS_INDICES = 0x80E9
pattern GL_MAX_ELEMENTS_VERTICES = 0x80E8
pattern GL_MAX_FRAGMENT_INPUT_COMPONENTS = 0x9125
pattern GL_MAX_FRAGMENT_UNIFORM_BLOCKS = 0x8A2D
pattern GL_MAX_FRAGMENT_UNIFORM_COMPONENTS = 0x8B49
pattern GL_MAX_GEOMETRY_INPUT_COMPONENTS = 0x9123
pattern GL_MAX_GEOMETRY_OUTPUT_COMPONENTS = 0x9124
pattern GL_MAX_GEOMETRY_OUTPUT_VERTICES = 0x8DE0
pattern GL_MAX_GEOMETRY_TEXTURE_IMAGE_UNITS = 0x8C29
pattern GL_MAX_GEOMETRY_TOTAL_OUTPUT_COMPONENTS = 0x8DE1
pattern GL_MAX_GEOMETRY_UNIFORM_BLOCKS = 0x8A2C
pattern GL_MAX_GEOMETRY_UNIFORM_COMPONENTS = 0x8DDF
pattern GL_MAX_INTEGER_SAMPLES = 0x9110
pattern GL_MAX_PROGRAM_TEXEL_OFFSET = 0x8905
pattern GL_MAX_RECTANGLE_TEXTURE_SIZE = 0x84F8
pattern GL_MAX_RENDERBUFFER_SIZE = 0x84E8
pattern GL_MAX_SAMPLES = 0x8D57
pattern GL_MAX_SAMPLE_MASK_WORDS = 0x8E59
pattern GL_MAX_SERVER_WAIT_TIMEOUT = 0x9111
pattern GL_MAX_TEXTURE_BUFFER_SIZE = 0x8C2B
pattern GL_MAX_TEXTURE_IMAGE_UNITS = 0x8872
pattern GL_MAX_TEXTURE_LOD_BIAS = 0x84FD
pattern GL_MAX_TEXTURE_SIZE = 0x0D33
pattern GL_MAX_TRANSFORM_FEEDBACK_INTERLEAVED_COMPONENTS = 0x8C8A
pattern GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_ATTRIBS = 0x8C8B
pattern GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_COMPONENTS = 0x8C80
pattern GL_MAX_UNIFORM_BLOCK_SIZE = 0x8A30
pattern GL_MAX_UNIFORM_BUFFER_BINDINGS = 0x8A2F
pattern GL_MAX_VARYING_COMPONENTS = 0x8B4B
pattern GL_MAX_VARYING_FLOATS = 0x8B4B
pattern GL_MAX_VERTEX_ATTRIBS = 0x8869
pattern GL_MAX_VERTEX_OUTPUT_COMPONENTS = 0x9122
pattern GL_MAX_VERTEX_TEXTURE_IMAGE_UNITS = 0x8B4C
pattern GL_MAX_VERTEX_UNIFORM_BLOCKS = 0x8A2B
pattern GL_MAX_VERTEX_UNIFORM_COMPONENTS = 0x8B4A
pattern GL_MAX_VIEWPORT_DIMS = 0x0D3A
pattern GL_MIN = 0x8007
pattern GL_MINOR_VERSION = 0x821C
pattern GL_MIN_PROGRAM_TEXEL_OFFSET = 0x8904
pattern GL_MIRRORED_REPEAT = 0x8370
pattern GL_MULTISAMPLE = 0x809D
pattern GL_NAND = 0x150E
pattern GL_NEAREST = 0x2600
pattern GL_NEAREST_MIPMAP_LINEAR = 0x2702
pattern GL_NEAREST_MIPMAP_NEAREST = 0x2700
pattern GL_NEVER = 0x0200
pattern GL_NICEST = 0x1102
pattern GL_NONE = 0
pattern GL_NOOP = 0x1505
pattern GL_NOR = 0x1508
pattern GL_NOTEQUAL = 0x0205
pattern GL_NO_ERROR = 0
pattern GL_NUM_COMPRESSED_TEXTURE_FORMATS = 0x86A2
pattern GL_NUM_EXTENSIONS = 0x821D
pattern GL_OBJECT_TYPE = 0x9112
pattern GL_ONE = 1
pattern GL_ONE_MINUS_CONSTANT_ALPHA = 0x8004
pattern GL_ONE_MINUS_CONSTANT_COLOR = 0x8002
pattern GL_ONE_MINUS_DST_ALPHA = 0x0305
pattern GL_ONE_MINUS_DST_COLOR = 0x0307
pattern GL_ONE_MINUS_SRC_ALPHA = 0x0303
pattern GL_ONE_MINUS_SRC_COLOR = 0x0301
pattern GL_OR = 0x1507
pattern GL_OR_INVERTED = 0x150D
pattern GL_OR_REVERSE = 0x150B
pattern GL_OUT_OF_MEMORY = 0x0505
pattern GL_PACK_ALIGNMENT = 0x0D05
pattern GL_PACK_IMAGE_HEIGHT = 0x806C
pattern GL_PACK_LSB_FIRST = 0x0D01
pattern GL_PACK_ROW_LENGTH = 0x0D02
pattern GL_PACK_SKIP_IMAGES = 0x806B
pattern GL_PACK_SKIP_PIXELS = 0x0D04
pattern GL_PACK_SKIP_ROWS = 0x0D03
pattern GL_PACK_SWAP_BYTES = 0x0D00
pattern GL_PIXEL_PACK_BUFFER = 0x88EB
pattern GL_PIXEL_PACK_BUFFER_BINDING = 0x88ED
pattern GL_PIXEL_UNPACK_BUFFER = 0x88EC
pattern GL_PIXEL_UNPACK_BUFFER_BINDING = 0x88EF
pattern GL_POINT = 0x1B00
pattern GL_POINTS = 0x0000
pattern GL_POINT_FADE_THRESHOLD_SIZE = 0x8128
pattern GL_POINT_SIZE = 0x0B11
pattern GL_POINT_SIZE_GRANULARITY = 0x0B13
pattern GL_POINT_SIZE_RANGE = 0x0B12
pattern GL_POINT_SPRITE_COORD_ORIGIN = 0x8CA0
pattern GL_POLYGON_MODE = 0x0B40
pattern GL_POLYGON_OFFSET_FACTOR = 0x8038
pattern GL_POLYGON_OFFSET_FILL = 0x8037
pattern GL_POLYGON_OFFSET_LINE = 0x2A02
pattern GL_POLYGON_OFFSET_POINT = 0x2A01
pattern GL_POLYGON_OFFSET_UNITS = 0x2A00
pattern GL_POLYGON_SMOOTH = 0x0B41
pattern GL_POLYGON_SMOOTH_HINT = 0x0C53
pattern GL_PRIMITIVES_GENERATED = 0x8C87
pattern GL_PRIMITIVE_RESTART = 0x8F9D
pattern GL_PRIMITIVE_RESTART_INDEX = 0x8F9E
pattern GL_PROVOKING_VERTEX = 0x8E4F
pattern GL_PROXY_TEXTURE_1D = 0x8063
pattern GL_PROXY_TEXTURE_1D_ARRAY = 0x8C19
pattern GL_PROXY_TEXTURE_2D = 0x8064
pattern GL_PROXY_TEXTURE_2D_ARRAY = 0x8C1B
pattern GL_PROXY_TEXTURE_2D_MULTISAMPLE = 0x9101
pattern GL_PROXY_TEXTURE_2D_MULTISAMPLE_ARRAY = 0x9103
pattern GL_PROXY_TEXTURE_3D = 0x8070
pattern GL_PROXY_TEXTURE_CUBE_MAP = 0x851B
pattern GL_PROXY_TEXTURE_RECTANGLE = 0x84F7
pattern GL_QUADS_FOLLOW_PROVOKING_VERTEX_CONVENTION = 0x8E4C
pattern GL_QUERY_BY_REGION_NO_WAIT = 0x8E16
pattern GL_QUERY_BY_REGION_WAIT = 0x8E15
pattern GL_QUERY_COUNTER_BITS = 0x8864
pattern GL_QUERY_NO_WAIT = 0x8E14
pattern GL_QUERY_RESULT = 0x8866
pattern GL_QUERY_RESULT_AVAILABLE = 0x8867
pattern GL_QUERY_WAIT = 0x8E13
pattern GL_R11F_G11F_B10F = 0x8C3A
pattern GL_R16 = 0x822A
pattern GL_R16F = 0x822D
pattern GL_R16I = 0x8233
pattern GL_R16UI = 0x8234
pattern GL_R16_SNORM = 0x8F98
pattern GL_R32F = 0x822E
pattern GL_R32I = 0x8235
pattern GL_R32UI = 0x8236
pattern GL_R3_G3_B2 = 0x2A10
pattern GL_R8 = 0x8229
pattern GL_R8I = 0x8231
pattern GL_R8UI = 0x8232
pattern GL_R8_SNORM = 0x8F94
pattern GL_RASTERIZER_DISCARD = 0x8C89
pattern GL_READ_BUFFER = 0x0C02
pattern GL_READ_FRAMEBUFFER = 0x8CA8
pattern GL_READ_FRAMEBUFFER_BINDING = 0x8CAA
pattern GL_READ_ONLY = 0x88B8
pattern GL_READ_WRITE = 0x88BA
pattern GL_RED = 0x1903
pattern GL_RED_INTEGER = 0x8D94
pattern GL_RENDERBUFFER = 0x8D41
pattern GL_RENDERBUFFER_ALPHA_SIZE = 0x8D53
pattern GL_RENDERBUFFER_BINDING = 0x8CA7
pattern GL_RENDERBUFFER_BLUE_SIZE = 0x8D52
pattern GL_RENDERBUFFER_DEPTH_SIZE = 0x8D54
pattern GL_RENDERBUFFER_GREEN_SIZE = 0x8D51
pattern GL_RENDERBUFFER_HEIGHT = 0x8D43
pattern GL_RENDERBUFFER_INTERNAL_FORMAT = 0x8D44
pattern GL_RENDERBUFFER_RED_SIZE = 0x8D50
pattern GL_RENDERBUFFER_SAMPLES = 0x8CAB
pattern GL_RENDERBUFFER_STENCIL_SIZE = 0x8D55
pattern GL_RENDERBUFFER_WIDTH = 0x8D42
pattern GL_RENDERER = 0x1F01
pattern GL_REPEAT = 0x2901
pattern GL_REPLACE = 0x1E01
pattern GL_RG = 0x8227
pattern GL_RG16 = 0x822C
pattern GL_RG16F = 0x822F
pattern GL_RG16I = 0x8239
pattern GL_RG16UI = 0x823A
pattern GL_RG16_SNORM = 0x8F99
pattern GL_RG32F = 0x8230
pattern GL_RG32I = 0x823B
pattern GL_RG32UI = 0x823C
pattern GL_RG8 = 0x822B
pattern GL_RG8I = 0x8237
pattern GL_RG8UI = 0x8238
pattern GL_RG8_SNORM = 0x8F95
pattern GL_RGB = 0x1907
pattern GL_RGB10 = 0x8052
pattern GL_RGB10_A2 = 0x8059
pattern GL_RGB12 = 0x8053
pattern GL_RGB16 = 0x8054
pattern GL_RGB16F = 0x881B
pattern GL_RGB16I = 0x8D89
pattern GL_RGB16UI = 0x8D77
pattern GL_RGB16_SNORM = 0x8F9A
pattern GL_RGB32F = 0x8815
pattern GL_RGB32I = 0x8D83
pattern GL_RGB32UI = 0x8D71
pattern GL_RGB4 = 0x804F
pattern GL_RGB5 = 0x8050
pattern GL_RGB5_A1 = 0x8057
pattern GL_RGB8 = 0x8051
pattern GL_RGB8I = 0x8D8F
pattern GL_RGB8UI = 0x8D7D
pattern GL_RGB8_SNORM = 0x8F96
pattern GL_RGB9_E5 = 0x8C3D
pattern GL_RGBA = 0x1908
pattern GL_RGBA12 = 0x805A
pattern GL_RGBA16 = 0x805B
pattern GL_RGBA16F = 0x881A
pattern GL_RGBA16I = 0x8D88
pattern GL_RGBA16UI = 0x8D76
pattern GL_RGBA16_SNORM = 0x8F9B
pattern GL_RGBA2 = 0x8055
pattern GL_RGBA32F = 0x8814
pattern GL_RGBA32I = 0x8D82
pattern GL_RGBA32UI = 0x8D70
pattern GL_RGBA4 = 0x8056
pattern GL_RGBA8 = 0x8058
pattern GL_RGBA8I = 0x8D8E
pattern GL_RGBA8UI = 0x8D7C
pattern GL_RGBA8_SNORM = 0x8F97
pattern GL_RGBA_INTEGER = 0x8D99
pattern GL_RGB_INTEGER = 0x8D98
pattern GL_RG_INTEGER = 0x8228
pattern GL_RIGHT = 0x0407
pattern GL_SAMPLER_1D = 0x8B5D
pattern GL_SAMPLER_1D_ARRAY = 0x8DC0
pattern GL_SAMPLER_1D_ARRAY_SHADOW = 0x8DC3
pattern GL_SAMPLER_1D_SHADOW = 0x8B61
pattern GL_SAMPLER_2D = 0x8B5E
pattern GL_SAMPLER_2D_ARRAY = 0x8DC1
pattern GL_SAMPLER_2D_ARRAY_SHADOW = 0x8DC4
pattern GL_SAMPLER_2D_MULTISAMPLE = 0x9108
pattern GL_SAMPLER_2D_MULTISAMPLE_ARRAY = 0x910B
pattern GL_SAMPLER_2D_RECT = 0x8B63
pattern GL_SAMPLER_2D_RECT_SHADOW = 0x8B64
pattern GL_SAMPLER_2D_SHADOW = 0x8B62
pattern GL_SAMPLER_3D = 0x8B5F
pattern GL_SAMPLER_BUFFER = 0x8DC2
pattern GL_SAMPLER_CUBE = 0x8B60
pattern GL_SAMPLER_CUBE_SHADOW = 0x8DC5
pattern GL_SAMPLES = 0x80A9
pattern GL_SAMPLES_PASSED = 0x8914
pattern GL_SAMPLE_ALPHA_TO_COVERAGE = 0x809E
pattern GL_SAMPLE_ALPHA_TO_ONE = 0x809F
pattern GL_SAMPLE_BUFFERS = 0x80A8
pattern GL_SAMPLE_COVERAGE = 0x80A0
pattern GL_SAMPLE_COVERAGE_INVERT = 0x80AB
pattern GL_SAMPLE_COVERAGE_VALUE = 0x80AA
pattern GL_SAMPLE_MASK = 0x8E51
pattern GL_SAMPLE_MASK_VALUE = 0x8E52
pattern GL_SAMPLE_POSITION = 0x8E50
pattern GL_SCISSOR_BOX = 0x0C10
pattern GL_SCISSOR_TEST = 0x0C11
pattern GL_SEPARATE_ATTRIBS = 0x8C8D
pattern GL_SET = 0x150F
pattern GL_SHADER_SOURCE_LENGTH = 0x8B88
pattern GL_SHADER_TYPE = 0x8B4F
pattern GL_SHADING_LANGUAGE_VERSION = 0x8B8C
pattern GL_SHORT = 0x1402
pattern GL_SIGNALED = 0x9119
pattern GL_SIGNED_NORMALIZED = 0x8F9C
pattern GL_SMOOTH_LINE_WIDTH_GRANULARITY = 0x0B23
pattern GL_SMOOTH_LINE_WIDTH_RANGE = 0x0B22
pattern GL_SMOOTH_POINT_SIZE_GRANULARITY = 0x0B13
pattern GL_SMOOTH_POINT_SIZE_RANGE = 0x0B12
pattern GL_SRC1_ALPHA = 0x8589
pattern GL_SRC_ALPHA = 0x0302
pattern GL_SRC_ALPHA_SATURATE = 0x0308
pattern GL_SRC_COLOR = 0x0300
pattern GL_SRGB = 0x8C40
pattern GL_SRGB8 = 0x8C41
pattern GL_SRGB8_ALPHA8 = 0x8C43
pattern GL_SRGB_ALPHA = 0x8C42
pattern GL_STATIC_COPY = 0x88E6
pattern GL_STATIC_DRAW = 0x88E4
pattern GL_STATIC_READ = 0x88E5
pattern GL_STENCIL = 0x1802
pattern GL_STENCIL_ATTACHMENT = 0x8D20
pattern GL_STENCIL_BACK_FAIL = 0x8801
pattern GL_STENCIL_BACK_FUNC = 0x8800
pattern GL_STENCIL_BACK_PASS_DEPTH_FAIL = 0x8802
pattern GL_STENCIL_BACK_PASS_DEPTH_PASS = 0x8803
pattern GL_STENCIL_BACK_REF = 0x8CA3
pattern GL_STENCIL_BACK_VALUE_MASK = 0x8CA4
pattern GL_STENCIL_BACK_WRITEMASK = 0x8CA5
pattern GL_STENCIL_BUFFER_BIT = 0x00000400
pattern GL_STENCIL_CLEAR_VALUE = 0x0B91
pattern GL_STENCIL_FAIL = 0x0B94
pattern GL_STENCIL_FUNC = 0x0B92
pattern GL_STENCIL_INDEX = 0x1901
pattern GL_STENCIL_INDEX1 = 0x8D46
pattern GL_STENCIL_INDEX16 = 0x8D49
pattern GL_STENCIL_INDEX4 = 0x8D47
pattern GL_STENCIL_INDEX8 = 0x8D48
pattern GL_STENCIL_PASS_DEPTH_FAIL = 0x0B95
pattern GL_STENCIL_PASS_DEPTH_PASS = 0x0B96
pattern GL_STENCIL_REF = 0x0B97
pattern GL_STENCIL_TEST = 0x0B90
pattern GL_STENCIL_VALUE_MASK = 0x0B93
pattern GL_STENCIL_WRITEMASK = 0x0B98
pattern GL_STEREO = 0x0C33
pattern GL_STREAM_COPY = 0x88E2
pattern GL_STREAM_DRAW = 0x88E0
pattern GL_STREAM_READ = 0x88E1
pattern GL_SUBPIXEL_BITS = 0x0D50
pattern GL_SYNC_CONDITION = 0x9113
pattern GL_SYNC_FENCE = 0x9116
pattern GL_SYNC_FLAGS = 0x9115
pattern GL_SYNC_FLUSH_COMMANDS_BIT = 0x00000001
pattern GL_SYNC_GPU_COMMANDS_COMPLETE = 0x9117
pattern GL_SYNC_STATUS = 0x9114
pattern GL_TEXTURE = 0x1702
pattern GL_TEXTURE0 = 0x84C0
pattern GL_TEXTURE1 = 0x84C1
pattern GL_TEXTURE10 = 0x84CA
pattern GL_TEXTURE11 = 0x84CB
pattern GL_TEXTURE12 = 0x84CC
pattern GL_TEXTURE13 = 0x84CD
pattern GL_TEXTURE14 = 0x84CE
pattern GL_TEXTURE15 = 0x84CF
pattern GL_TEXTURE16 = 0x84D0
pattern GL_TEXTURE17 = 0x84D1
pattern GL_TEXTURE18 = 0x84D2
pattern GL_TEXTURE19 = 0x84D3
pattern GL_TEXTURE2 = 0x84C2
pattern GL_TEXTURE20 = 0x84D4
pattern GL_TEXTURE21 = 0x84D5
pattern GL_TEXTURE22 = 0x84D6
pattern GL_TEXTURE23 = 0x84D7
pattern GL_TEXTURE24 = 0x84D8
pattern GL_TEXTURE25 = 0x84D9
pattern GL_TEXTURE26 = 0x84DA
pattern GL_TEXTURE27 = 0x84DB
pattern GL_TEXTURE28 = 0x84DC
pattern GL_TEXTURE29 = 0x84DD
pattern GL_TEXTURE3 = 0x84C3
pattern GL_TEXTURE30 = 0x84DE
pattern GL_TEXTURE31 = 0x84DF
pattern GL_TEXTURE4 = 0x84C4
pattern GL_TEXTURE5 = 0x84C5
pattern GL_TEXTURE6 = 0x84C6
pattern GL_TEXTURE7 = 0x84C7
pattern GL_TEXTURE8 = 0x84C8
pattern GL_TEXTURE9 = 0x84C9
pattern GL_TEXTURE_1D = 0x0DE0
pattern GL_TEXTURE_1D_ARRAY = 0x8C18
pattern GL_TEXTURE_2D = 0x0DE1
pattern GL_TEXTURE_2D_ARRAY = 0x8C1A
pattern GL_TEXTURE_2D_MULTISAMPLE = 0x9100
pattern GL_TEXTURE_2D_MULTISAMPLE_ARRAY = 0x9102
pattern GL_TEXTURE_3D = 0x806F
pattern GL_TEXTURE_ALPHA_SIZE = 0x805F
pattern GL_TEXTURE_ALPHA_TYPE = 0x8C13
pattern GL_TEXTURE_BASE_LEVEL = 0x813C
pattern GL_TEXTURE_BINDING_1D = 0x8068
pattern GL_TEXTURE_BINDING_1D_ARRAY = 0x8C1C
pattern GL_TEXTURE_BINDING_2D = 0x8069
pattern GL_TEXTURE_BINDING_2D_ARRAY = 0x8C1D
pattern GL_TEXTURE_BINDING_2D_MULTISAMPLE = 0x9104
pattern GL_TEXTURE_BINDING_2D_MULTISAMPLE_ARRAY = 0x9105
pattern GL_TEXTURE_BINDING_3D = 0x806A
pattern GL_TEXTURE_BINDING_BUFFER = 0x8C2C
pattern GL_TEXTURE_BINDING_CUBE_MAP = 0x8514
pattern GL_TEXTURE_BINDING_RECTANGLE = 0x84F6
pattern GL_TEXTURE_BLUE_SIZE = 0x805E
pattern GL_TEXTURE_BLUE_TYPE = 0x8C12
pattern GL_TEXTURE_BORDER_COLOR = 0x1004
pattern GL_TEXTURE_BUFFER = 0x8C2A
pattern GL_TEXTURE_BUFFER_DATA_STORE_BINDING = 0x8C2D
pattern GL_TEXTURE_COMPARE_FUNC = 0x884D
pattern GL_TEXTURE_COMPARE_MODE = 0x884C
pattern GL_TEXTURE_COMPRESSED = 0x86A1
pattern GL_TEXTURE_COMPRESSED_IMAGE_SIZE = 0x86A0
pattern GL_TEXTURE_COMPRESSION_HINT = 0x84EF
pattern GL_TEXTURE_CUBE_MAP = 0x8513
pattern GL_TEXTURE_CUBE_MAP_NEGATIVE_X = 0x8516
pattern GL_TEXTURE_CUBE_MAP_NEGATIVE_Y = 0x8518
pattern GL_TEXTURE_CUBE_MAP_NEGATIVE_Z = 0x851A
pattern GL_TEXTURE_CUBE_MAP_POSITIVE_X = 0x8515
pattern GL_TEXTURE_CUBE_MAP_POSITIVE_Y = 0x8517
pattern GL_TEXTURE_CUBE_MAP_POSITIVE_Z = 0x8519
pattern GL_TEXTURE_CUBE_MAP_SEAMLESS = 0x884F
pattern GL_TEXTURE_DEPTH = 0x8071
pattern GL_TEXTURE_DEPTH_SIZE = 0x884A
pattern GL_TEXTURE_DEPTH_TYPE = 0x8C16
pattern GL_TEXTURE_FIXED_SAMPLE_LOCATIONS = 0x9107
pattern GL_TEXTURE_GREEN_SIZE = 0x805D
pattern GL_TEXTURE_GREEN_TYPE = 0x8C11
pattern GL_TEXTURE_HEIGHT = 0x1001
pattern GL_TEXTURE_INTERNAL_FORMAT = 0x1003
pattern GL_TEXTURE_LOD_BIAS = 0x8501
pattern GL_TEXTURE_MAG_FILTER = 0x2800
pattern GL_TEXTURE_MAX_LEVEL = 0x813D
pattern GL_TEXTURE_MAX_LOD = 0x813B
pattern GL_TEXTURE_MIN_FILTER = 0x2801
pattern GL_TEXTURE_MIN_LOD = 0x813A
pattern GL_TEXTURE_RECTANGLE = 0x84F5
pattern GL_TEXTURE_RED_SIZE = 0x805C
pattern GL_TEXTURE_RED_TYPE = 0x8C10
pattern GL_TEXTURE_SAMPLES = 0x9106
pattern GL_TEXTURE_SHARED_SIZE = 0x8C3F
pattern GL_TEXTURE_STENCIL_SIZE = 0x88F1
pattern GL_TEXTURE_WIDTH = 0x1000
pattern GL_TEXTURE_WRAP_R = 0x8072
pattern GL_TEXTURE_WRAP_S = 0x2802
pattern GL_TEXTURE_WRAP_T = 0x2803
pattern GL_TIMEOUT_EXPIRED = 0x911B
pattern GL_TIMEOUT_IGNORED = 0xFFFFFFFFFFFFFFFF
pattern GL_TRANSFORM_FEEDBACK_BUFFER = 0x8C8E
pattern GL_TRANSFORM_FEEDBACK_BUFFER_BINDING = 0x8C8F
pattern GL_TRANSFORM_FEEDBACK_BUFFER_MODE = 0x8C7F
pattern GL_TRANSFORM_FEEDBACK_BUFFER_SIZE = 0x8C85
pattern GL_TRANSFORM_FEEDBACK_BUFFER_START = 0x8C84
pattern GL_TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN = 0x8C88
pattern GL_TRANSFORM_FEEDBACK_VARYINGS = 0x8C83
pattern GL_TRANSFORM_FEEDBACK_VARYING_MAX_LENGTH = 0x8C76
pattern GL_TRIANGLES = 0x0004
pattern GL_TRIANGLES_ADJACENCY = 0x000C
pattern GL_TRIANGLE_FAN = 0x0006
pattern GL_TRIANGLE_STRIP = 0x0005
pattern GL_TRIANGLE_STRIP_ADJACENCY = 0x000D
pattern GL_TRUE = 1
pattern GL_UNIFORM_ARRAY_STRIDE = 0x8A3C
pattern GL_UNIFORM_BLOCK_ACTIVE_UNIFORMS = 0x8A42
pattern GL_UNIFORM_BLOCK_ACTIVE_UNIFORM_INDICES = 0x8A43
pattern GL_UNIFORM_BLOCK_BINDING = 0x8A3F
pattern GL_UNIFORM_BLOCK_DATA_SIZE = 0x8A40
pattern GL_UNIFORM_BLOCK_INDEX = 0x8A3A
pattern GL_UNIFORM_BLOCK_NAME_LENGTH = 0x8A41
pattern GL_UNIFORM_BLOCK_REFERENCED_BY_FRAGMENT_SHADER = 0x8A46
pattern GL_UNIFORM_BLOCK_REFERENCED_BY_GEOMETRY_SHADER = 0x8A45
pattern GL_UNIFORM_BLOCK_REFERENCED_BY_VERTEX_SHADER = 0x8A44
pattern GL_UNIFORM_BUFFER = 0x8A11
pattern GL_UNIFORM_BUFFER_BINDING = 0x8A28
pattern GL_UNIFORM_BUFFER_OFFSET_ALIGNMENT = 0x8A34
pattern GL_UNIFORM_BUFFER_SIZE = 0x8A2A
pattern GL_UNIFORM_BUFFER_START = 0x8A29
pattern GL_UNIFORM_IS_ROW_MAJOR = 0x8A3E
pattern GL_UNIFORM_MATRIX_STRIDE = 0x8A3D
pattern GL_UNIFORM_NAME_LENGTH = 0x8A39
pattern GL_UNIFORM_OFFSET = 0x8A3B
pattern GL_UNIFORM_SIZE = 0x8A38
pattern GL_UNIFORM_TYPE = 0x8A37
pattern GL_UNPACK_ALIGNMENT = 0x0CF5
pattern GL_UNPACK_IMAGE_HEIGHT = 0x806E
pattern GL_UNPACK_LSB_FIRST = 0x0CF1
pattern GL_UNPACK_ROW_LENGTH = 0x0CF2
pattern GL_UNPACK_SKIP_IMAGES = 0x806D
pattern GL_UNPACK_SKIP_PIXELS = 0x0CF4
pattern GL_UNPACK_SKIP_ROWS = 0x0CF3
pattern GL_UNPACK_SWAP_BYTES = 0x0CF0
pattern GL_UNSIGNALED = 0x9118
pattern GL_UNSIGNED_BYTE = 0x1401
pattern GL_UNSIGNED_BYTE_2_3_3_REV = 0x8362
pattern GL_UNSIGNED_BYTE_3_3_2 = 0x8032
pattern GL_UNSIGNED_INT = 0x1405
pattern GL_UNSIGNED_INT_10F_11F_11F_REV = 0x8C3B
pattern GL_UNSIGNED_INT_10_10_10_2 = 0x8036
pattern GL_UNSIGNED_INT_24_8 = 0x84FA
pattern GL_UNSIGNED_INT_2_10_10_10_REV = 0x8368
pattern GL_UNSIGNED_INT_5_9_9_9_REV = 0x8C3E
pattern GL_UNSIGNED_INT_8_8_8_8 = 0x8035
pattern GL_UNSIGNED_INT_8_8_8_8_REV = 0x8367
pattern GL_UNSIGNED_INT_SAMPLER_1D = 0x8DD1
pattern GL_UNSIGNED_INT_SAMPLER_1D_ARRAY = 0x8DD6
pattern GL_UNSIGNED_INT_SAMPLER_2D = 0x8DD2
pattern GL_UNSIGNED_INT_SAMPLER_2D_ARRAY = 0x8DD7
pattern GL_UNSIGNED_INT_SAMPLER_2D_MULTISAMPLE = 0x910A
pattern GL_UNSIGNED_INT_SAMPLER_2D_MULTISAMPLE_ARRAY = 0x910D
pattern GL_UNSIGNED_INT_SAMPLER_2D_RECT = 0x8DD5
pattern GL_UNSIGNED_INT_SAMPLER_3D = 0x8DD3
pattern GL_UNSIGNED_INT_SAMPLER_BUFFER = 0x8DD8
pattern GL_UNSIGNED_INT_SAMPLER_CUBE = 0x8DD4
pattern GL_UNSIGNED_INT_VEC2 = 0x8DC6
pattern GL_UNSIGNED_INT_VEC3 = 0x8DC7
pattern GL_UNSIGNED_INT_VEC4 = 0x8DC8
pattern GL_UNSIGNED_NORMALIZED = 0x8C17
pattern GL_UNSIGNED_SHORT = 0x1403
pattern GL_UNSIGNED_SHORT_1_5_5_5_REV = 0x8366
pattern GL_UNSIGNED_SHORT_4_4_4_4 = 0x8033
pattern GL_UNSIGNED_SHORT_4_4_4_4_REV = 0x8365
pattern GL_UNSIGNED_SHORT_5_5_5_1 = 0x8034
pattern GL_UNSIGNED_SHORT_5_6_5 = 0x8363
pattern GL_UNSIGNED_SHORT_5_6_5_REV = 0x8364
pattern GL_UPPER_LEFT = 0x8CA2
pattern GL_VALIDATE_STATUS = 0x8B83
pattern GL_VENDOR = 0x1F00
pattern GL_VERSION = 0x1F02
pattern GL_VERTEX_ARRAY_BINDING = 0x85B5
pattern GL_VERTEX_ATTRIB_ARRAY_BUFFER_BINDING = 0x889F
pattern GL_VERTEX_ATTRIB_ARRAY_ENABLED = 0x8622
pattern GL_VERTEX_ATTRIB_ARRAY_INTEGER = 0x88FD
pattern GL_VERTEX_ATTRIB_ARRAY_NORMALIZED = 0x886A
pattern GL_VERTEX_ATTRIB_ARRAY_POINTER = 0x8645
pattern GL_VERTEX_ATTRIB_ARRAY_SIZE = 0x8623
pattern GL_VERTEX_ATTRIB_ARRAY_STRIDE = 0x8624
pattern GL_VERTEX_ATTRIB_ARRAY_TYPE = 0x8625
pattern GL_VERTEX_PROGRAM_POINT_SIZE = 0x8642
pattern GL_VERTEX_SHADER = 0x8B31
pattern GL_VIEWPORT = 0x0BA2
pattern GL_WAIT_FAILED = 0x911D
pattern GL_WRITE_ONLY = 0x88B9
pattern GL_XOR = 0x1506
pattern GL_ZERO = 0
-- | Usage: @'glBindFragDataLocationIndexed' program colorNumber index name@
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glBindFragDataLocationIndexed.xhtml>
glBindFragDataLocationIndexed :: MonadIO m => GLuint -> GLuint -> GLuint -> Ptr GLchar -> m ()
glBindFragDataLocationIndexed = ffiuintuintuintPtrcharIOV glBindFragDataLocationIndexedFunPtr
glBindFragDataLocationIndexedFunPtr :: FunPtr (GLuint -> GLuint -> GLuint -> Ptr GLchar -> IO ())
glBindFragDataLocationIndexedFunPtr = unsafePerformIO (getProcAddress "glBindFragDataLocationIndexed")
{-# NOINLINE glBindFragDataLocationIndexedFunPtr #-}
-- | Usage: @'glBindSampler' unit sampler@
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glBindSampler.xhtml>
glBindSampler :: MonadIO m => GLuint -> GLuint -> m ()
glBindSampler = ffiuintuintIOV glBindSamplerFunPtr
glBindSamplerFunPtr :: FunPtr (GLuint -> GLuint -> IO ())
glBindSamplerFunPtr = unsafePerformIO (getProcAddress "glBindSampler")
{-# NOINLINE glBindSamplerFunPtr #-}
-- | Usage: @'glDeleteSamplers' count samplers@
--
-- The length of @samplers@ should be @count@.
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glDeleteSamplers.xhtml>
glDeleteSamplers :: MonadIO m => GLsizei -> Ptr GLuint -> m ()
glDeleteSamplers = ffisizeiPtruintIOV glDeleteSamplersFunPtr
glDeleteSamplersFunPtr :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
glDeleteSamplersFunPtr = unsafePerformIO (getProcAddress "glDeleteSamplers")
{-# NOINLINE glDeleteSamplersFunPtr #-}
-- | Usage: @'glGenSamplers' count samplers@
--
-- The length of @samplers@ should be @count@.
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glGenSamplers.xhtml>
glGenSamplers :: MonadIO m => GLsizei -> Ptr GLuint -> m ()
glGenSamplers = ffisizeiPtruintIOV glGenSamplersFunPtr
glGenSamplersFunPtr :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
glGenSamplersFunPtr = unsafePerformIO (getProcAddress "glGenSamplers")
{-# NOINLINE glGenSamplersFunPtr #-}
-- | Usage: @'glGetFragDataIndex' program name@
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glGetFragDataIndex.xhtml>
glGetFragDataIndex :: MonadIO m => GLuint -> Ptr GLchar -> m GLint
glGetFragDataIndex = ffiuintPtrcharIOint glGetFragDataIndexFunPtr
glGetFragDataIndexFunPtr :: FunPtr (GLuint -> Ptr GLchar -> IO GLint)
glGetFragDataIndexFunPtr = unsafePerformIO (getProcAddress "glGetFragDataIndex")
{-# NOINLINE glGetFragDataIndexFunPtr #-}
-- | Usage: @'glGetQueryObjecti64v' id pname params@
--
-- The length of @params@ should be @COMPSIZE(pname)@.
glGetQueryObjecti64v :: MonadIO m => GLuint -> GLenum -> Ptr GLint64 -> m ()
glGetQueryObjecti64v = ffiuintenumPtrint64IOV glGetQueryObjecti64vFunPtr
glGetQueryObjecti64vFunPtr :: FunPtr (GLuint -> GLenum -> Ptr GLint64 -> IO ())
glGetQueryObjecti64vFunPtr = unsafePerformIO (getProcAddress "glGetQueryObjecti64v")
{-# NOINLINE glGetQueryObjecti64vFunPtr #-}
-- | Usage: @'glGetQueryObjectui64v' id pname params@
--
-- The length of @params@ should be @COMPSIZE(pname)@.
glGetQueryObjectui64v :: MonadIO m => GLuint -> GLenum -> Ptr GLuint64 -> m ()
glGetQueryObjectui64v = ffiuintenumPtruint64IOV glGetQueryObjectui64vFunPtr
glGetQueryObjectui64vFunPtr :: FunPtr (GLuint -> GLenum -> Ptr GLuint64 -> IO ())
glGetQueryObjectui64vFunPtr = unsafePerformIO (getProcAddress "glGetQueryObjectui64v")
{-# NOINLINE glGetQueryObjectui64vFunPtr #-}
-- | Usage: @'glGetSamplerParameterIiv' sampler pname params@
--
-- The length of @params@ should be @COMPSIZE(pname)@.
glGetSamplerParameterIiv :: MonadIO m => GLuint -> GLenum -> Ptr GLint -> m ()
glGetSamplerParameterIiv = ffiuintenumPtrintIOV glGetSamplerParameterIivFunPtr
glGetSamplerParameterIivFunPtr :: FunPtr (GLuint -> GLenum -> Ptr GLint -> IO ())
glGetSamplerParameterIivFunPtr = unsafePerformIO (getProcAddress "glGetSamplerParameterIiv")
{-# NOINLINE glGetSamplerParameterIivFunPtr #-}
-- | Usage: @'glGetSamplerParameterIuiv' sampler pname params@
--
-- The length of @params@ should be @COMPSIZE(pname)@.
glGetSamplerParameterIuiv :: MonadIO m => GLuint -> GLenum -> Ptr GLuint -> m ()
glGetSamplerParameterIuiv = ffiuintenumPtruintIOV glGetSamplerParameterIuivFunPtr
glGetSamplerParameterIuivFunPtr :: FunPtr (GLuint -> GLenum -> Ptr GLuint -> IO ())
glGetSamplerParameterIuivFunPtr = unsafePerformIO (getProcAddress "glGetSamplerParameterIuiv")
{-# NOINLINE glGetSamplerParameterIuivFunPtr #-}
-- | Usage: @'glGetSamplerParameterfv' sampler pname params@
--
-- The length of @params@ should be @COMPSIZE(pname)@.
glGetSamplerParameterfv :: MonadIO m => GLuint -> GLenum -> Ptr GLfloat -> m ()
glGetSamplerParameterfv = ffiuintenumPtrfloatIOV glGetSamplerParameterfvFunPtr
glGetSamplerParameterfvFunPtr :: FunPtr (GLuint -> GLenum -> Ptr GLfloat -> IO ())
glGetSamplerParameterfvFunPtr = unsafePerformIO (getProcAddress "glGetSamplerParameterfv")
{-# NOINLINE glGetSamplerParameterfvFunPtr #-}
-- | Usage: @'glGetSamplerParameteriv' sampler pname params@
--
-- The length of @params@ should be @COMPSIZE(pname)@.
glGetSamplerParameteriv :: MonadIO m => GLuint -> GLenum -> Ptr GLint -> m ()
glGetSamplerParameteriv = ffiuintenumPtrintIOV glGetSamplerParameterivFunPtr
glGetSamplerParameterivFunPtr :: FunPtr (GLuint -> GLenum -> Ptr GLint -> IO ())
glGetSamplerParameterivFunPtr = unsafePerformIO (getProcAddress "glGetSamplerParameteriv")
{-# NOINLINE glGetSamplerParameterivFunPtr #-}
-- | Usage: @'glIsSampler' sampler@
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glIsSampler.xhtml>
glIsSampler :: MonadIO m => GLuint -> m GLboolean
glIsSampler = ffiuintIOboolean glIsSamplerFunPtr
glIsSamplerFunPtr :: FunPtr (GLuint -> IO GLboolean)
glIsSamplerFunPtr = unsafePerformIO (getProcAddress "glIsSampler")
{-# NOINLINE glIsSamplerFunPtr #-}
-- | Usage: @'glQueryCounter' id target@
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glQueryCounter.xhtml>
glQueryCounter :: MonadIO m => GLuint -> GLenum -> m ()
glQueryCounter = ffiuintenumIOV glQueryCounterFunPtr
glQueryCounterFunPtr :: FunPtr (GLuint -> GLenum -> IO ())
glQueryCounterFunPtr = unsafePerformIO (getProcAddress "glQueryCounter")
{-# NOINLINE glQueryCounterFunPtr #-}
-- | Usage: @'glSamplerParameterIiv' sampler pname param@
--
-- The length of @param@ should be @COMPSIZE(pname)@.
glSamplerParameterIiv :: MonadIO m => GLuint -> GLenum -> Ptr GLint -> m ()
glSamplerParameterIiv = ffiuintenumPtrintIOV glSamplerParameterIivFunPtr
glSamplerParameterIivFunPtr :: FunPtr (GLuint -> GLenum -> Ptr GLint -> IO ())
glSamplerParameterIivFunPtr = unsafePerformIO (getProcAddress "glSamplerParameterIiv")
{-# NOINLINE glSamplerParameterIivFunPtr #-}
-- | Usage: @'glSamplerParameterIuiv' sampler pname param@
--
-- The length of @param@ should be @COMPSIZE(pname)@.
glSamplerParameterIuiv :: MonadIO m => GLuint -> GLenum -> Ptr GLuint -> m ()
glSamplerParameterIuiv = ffiuintenumPtruintIOV glSamplerParameterIuivFunPtr
glSamplerParameterIuivFunPtr :: FunPtr (GLuint -> GLenum -> Ptr GLuint -> IO ())
glSamplerParameterIuivFunPtr = unsafePerformIO (getProcAddress "glSamplerParameterIuiv")
{-# NOINLINE glSamplerParameterIuivFunPtr #-}
-- | Usage: @'glSamplerParameterf' sampler pname param@
glSamplerParameterf :: MonadIO m => GLuint -> GLenum -> GLfloat -> m ()
glSamplerParameterf = ffiuintenumfloatIOV glSamplerParameterfFunPtr
glSamplerParameterfFunPtr :: FunPtr (GLuint -> GLenum -> GLfloat -> IO ())
glSamplerParameterfFunPtr = unsafePerformIO (getProcAddress "glSamplerParameterf")
{-# NOINLINE glSamplerParameterfFunPtr #-}
-- | Usage: @'glSamplerParameterfv' sampler pname param@
--
-- The length of @param@ should be @COMPSIZE(pname)@.
glSamplerParameterfv :: MonadIO m => GLuint -> GLenum -> Ptr GLfloat -> m ()
glSamplerParameterfv = ffiuintenumPtrfloatIOV glSamplerParameterfvFunPtr
glSamplerParameterfvFunPtr :: FunPtr (GLuint -> GLenum -> Ptr GLfloat -> IO ())
glSamplerParameterfvFunPtr = unsafePerformIO (getProcAddress "glSamplerParameterfv")
{-# NOINLINE glSamplerParameterfvFunPtr #-}
-- | Usage: @'glSamplerParameteri' sampler pname param@
glSamplerParameteri :: MonadIO m => GLuint -> GLenum -> GLint -> m ()
glSamplerParameteri = ffiuintenumintIOV glSamplerParameteriFunPtr
glSamplerParameteriFunPtr :: FunPtr (GLuint -> GLenum -> GLint -> IO ())
glSamplerParameteriFunPtr = unsafePerformIO (getProcAddress "glSamplerParameteri")
{-# NOINLINE glSamplerParameteriFunPtr #-}
-- | Usage: @'glSamplerParameteriv' sampler pname param@
--
-- The length of @param@ should be @COMPSIZE(pname)@.
glSamplerParameteriv :: MonadIO m => GLuint -> GLenum -> Ptr GLint -> m ()
glSamplerParameteriv = ffiuintenumPtrintIOV glSamplerParameterivFunPtr
glSamplerParameterivFunPtr :: FunPtr (GLuint -> GLenum -> Ptr GLint -> IO ())
glSamplerParameterivFunPtr = unsafePerformIO (getProcAddress "glSamplerParameteriv")
{-# NOINLINE glSamplerParameterivFunPtr #-}
-- | Usage: @'glVertexAttribDivisor' index divisor@
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glVertexAttribDivisor.xhtml>
glVertexAttribDivisor :: MonadIO m => GLuint -> GLuint -> m ()
glVertexAttribDivisor = ffiuintuintIOV glVertexAttribDivisorFunPtr
glVertexAttribDivisorFunPtr :: FunPtr (GLuint -> GLuint -> IO ())
glVertexAttribDivisorFunPtr = unsafePerformIO (getProcAddress "glVertexAttribDivisor")
{-# NOINLINE glVertexAttribDivisorFunPtr #-}
-- | Usage: @'glVertexAttribP1ui' index type normalized value@
--
-- The parameter @normalized@ is a @Boolean@, one of: 'Graphics.GL.Internal.Shared.GL_FALSE', 'Graphics.GL.Internal.Shared.GL_TRUE'.
glVertexAttribP1ui :: MonadIO m => GLuint -> GLenum -> GLboolean -> GLuint -> m ()
glVertexAttribP1ui = ffiuintenumbooleanuintIOV glVertexAttribP1uiFunPtr
glVertexAttribP1uiFunPtr :: FunPtr (GLuint -> GLenum -> GLboolean -> GLuint -> IO ())
glVertexAttribP1uiFunPtr = unsafePerformIO (getProcAddress "glVertexAttribP1ui")
{-# NOINLINE glVertexAttribP1uiFunPtr #-}
-- | Usage: @'glVertexAttribP1uiv' index type normalized value@
--
-- The parameter @normalized@ is a @Boolean@, one of: 'Graphics.GL.Internal.Shared.GL_FALSE', 'Graphics.GL.Internal.Shared.GL_TRUE'.
--
-- The length of @value@ should be @1@.
glVertexAttribP1uiv :: MonadIO m => GLuint -> GLenum -> GLboolean -> Ptr GLuint -> m ()
glVertexAttribP1uiv = ffiuintenumbooleanPtruintIOV glVertexAttribP1uivFunPtr
glVertexAttribP1uivFunPtr :: FunPtr (GLuint -> GLenum -> GLboolean -> Ptr GLuint -> IO ())
glVertexAttribP1uivFunPtr = unsafePerformIO (getProcAddress "glVertexAttribP1uiv")
{-# NOINLINE glVertexAttribP1uivFunPtr #-}
-- | Usage: @'glVertexAttribP2ui' index type normalized value@
--
-- The parameter @normalized@ is a @Boolean@, one of: 'Graphics.GL.Internal.Shared.GL_FALSE', 'Graphics.GL.Internal.Shared.GL_TRUE'.
glVertexAttribP2ui :: MonadIO m => GLuint -> GLenum -> GLboolean -> GLuint -> m ()
glVertexAttribP2ui = ffiuintenumbooleanuintIOV glVertexAttribP2uiFunPtr
glVertexAttribP2uiFunPtr :: FunPtr (GLuint -> GLenum -> GLboolean -> GLuint -> IO ())
glVertexAttribP2uiFunPtr = unsafePerformIO (getProcAddress "glVertexAttribP2ui")
{-# NOINLINE glVertexAttribP2uiFunPtr #-}
-- | Usage: @'glVertexAttribP2uiv' index type normalized value@
--
-- The parameter @normalized@ is a @Boolean@, one of: 'Graphics.GL.Internal.Shared.GL_FALSE', 'Graphics.GL.Internal.Shared.GL_TRUE'.
--
-- The length of @value@ should be @1@.
glVertexAttribP2uiv :: MonadIO m => GLuint -> GLenum -> GLboolean -> Ptr GLuint -> m ()
glVertexAttribP2uiv = ffiuintenumbooleanPtruintIOV glVertexAttribP2uivFunPtr
glVertexAttribP2uivFunPtr :: FunPtr (GLuint -> GLenum -> GLboolean -> Ptr GLuint -> IO ())
glVertexAttribP2uivFunPtr = unsafePerformIO (getProcAddress "glVertexAttribP2uiv")
{-# NOINLINE glVertexAttribP2uivFunPtr #-}
-- | Usage: @'glVertexAttribP3ui' index type normalized value@
--
-- The parameter @normalized@ is a @Boolean@, one of: 'Graphics.GL.Internal.Shared.GL_FALSE', 'Graphics.GL.Internal.Shared.GL_TRUE'.
glVertexAttribP3ui :: MonadIO m => GLuint -> GLenum -> GLboolean -> GLuint -> m ()
glVertexAttribP3ui = ffiuintenumbooleanuintIOV glVertexAttribP3uiFunPtr
glVertexAttribP3uiFunPtr :: FunPtr (GLuint -> GLenum -> GLboolean -> GLuint -> IO ())
glVertexAttribP3uiFunPtr = unsafePerformIO (getProcAddress "glVertexAttribP3ui")
{-# NOINLINE glVertexAttribP3uiFunPtr #-}
-- | Usage: @'glVertexAttribP3uiv' index type normalized value@
--
-- The parameter @normalized@ is a @Boolean@, one of: 'Graphics.GL.Internal.Shared.GL_FALSE', 'Graphics.GL.Internal.Shared.GL_TRUE'.
--
-- The length of @value@ should be @1@.
glVertexAttribP3uiv :: MonadIO m => GLuint -> GLenum -> GLboolean -> Ptr GLuint -> m ()
glVertexAttribP3uiv = ffiuintenumbooleanPtruintIOV glVertexAttribP3uivFunPtr
glVertexAttribP3uivFunPtr :: FunPtr (GLuint -> GLenum -> GLboolean -> Ptr GLuint -> IO ())
glVertexAttribP3uivFunPtr = unsafePerformIO (getProcAddress "glVertexAttribP3uiv")
{-# NOINLINE glVertexAttribP3uivFunPtr #-}
-- | Usage: @'glVertexAttribP4ui' index type normalized value@
--
-- The parameter @normalized@ is a @Boolean@, one of: 'Graphics.GL.Internal.Shared.GL_FALSE', 'Graphics.GL.Internal.Shared.GL_TRUE'.
glVertexAttribP4ui :: MonadIO m => GLuint -> GLenum -> GLboolean -> GLuint -> m ()
glVertexAttribP4ui = ffiuintenumbooleanuintIOV glVertexAttribP4uiFunPtr
glVertexAttribP4uiFunPtr :: FunPtr (GLuint -> GLenum -> GLboolean -> GLuint -> IO ())
glVertexAttribP4uiFunPtr = unsafePerformIO (getProcAddress "glVertexAttribP4ui")
{-# NOINLINE glVertexAttribP4uiFunPtr #-}
-- | Usage: @'glVertexAttribP4uiv' index type normalized value@
--
-- The parameter @normalized@ is a @Boolean@, one of: 'Graphics.GL.Internal.Shared.GL_FALSE', 'Graphics.GL.Internal.Shared.GL_TRUE'.
--
-- The length of @value@ should be @1@.
glVertexAttribP4uiv :: MonadIO m => GLuint -> GLenum -> GLboolean -> Ptr GLuint -> m ()
glVertexAttribP4uiv = ffiuintenumbooleanPtruintIOV glVertexAttribP4uivFunPtr
glVertexAttribP4uivFunPtr :: FunPtr (GLuint -> GLenum -> GLboolean -> Ptr GLuint -> IO ())
glVertexAttribP4uivFunPtr = unsafePerformIO (getProcAddress "glVertexAttribP4uiv")
{-# NOINLINE glVertexAttribP4uivFunPtr #-}
pattern GL_ANY_SAMPLES_PASSED = 0x8C2F
pattern GL_INT_2_10_10_10_REV = 0x8D9F
pattern GL_MAX_DUAL_SOURCE_DRAW_BUFFERS = 0x88FC
pattern GL_ONE_MINUS_SRC1_ALPHA = 0x88FB
pattern GL_ONE_MINUS_SRC1_COLOR = 0x88FA
pattern GL_RGB10_A2UI = 0x906F
pattern GL_SAMPLER_BINDING = 0x8919
pattern GL_SRC1_COLOR = 0x88F9
pattern GL_TEXTURE_SWIZZLE_A = 0x8E45
pattern GL_TEXTURE_SWIZZLE_B = 0x8E44
pattern GL_TEXTURE_SWIZZLE_G = 0x8E43
pattern GL_TEXTURE_SWIZZLE_R = 0x8E42
pattern GL_TEXTURE_SWIZZLE_RGBA = 0x8E46
pattern GL_TIMESTAMP = 0x8E28
pattern GL_TIME_ELAPSED = 0x88BF
pattern GL_VERTEX_ATTRIB_ARRAY_DIVISOR = 0x88FE
-- | Usage: @'glBeginQueryIndexed' target index id@
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glBeginQueryIndexed.xhtml>
glBeginQueryIndexed :: MonadIO m => GLenum -> GLuint -> GLuint -> m ()
glBeginQueryIndexed = ffienumuintuintIOV glBeginQueryIndexedFunPtr
glBeginQueryIndexedFunPtr :: FunPtr (GLenum -> GLuint -> GLuint -> IO ())
glBeginQueryIndexedFunPtr = unsafePerformIO (getProcAddress "glBeginQueryIndexed")
{-# NOINLINE glBeginQueryIndexedFunPtr #-}
-- | Usage: @'glBindTransformFeedback' target id@
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glBindTransformFeedback.xhtml>
glBindTransformFeedback :: MonadIO m => GLenum -> GLuint -> m ()
glBindTransformFeedback = ffienumuintIOV glBindTransformFeedbackFunPtr
glBindTransformFeedbackFunPtr :: FunPtr (GLenum -> GLuint -> IO ())
glBindTransformFeedbackFunPtr = unsafePerformIO (getProcAddress "glBindTransformFeedback")
{-# NOINLINE glBindTransformFeedbackFunPtr #-}
-- | Usage: @'glBlendEquationSeparatei' buf modeRGB modeAlpha@
glBlendEquationSeparatei :: MonadIO m => GLuint -> GLenum -> GLenum -> m ()
glBlendEquationSeparatei = ffiuintenumenumIOV glBlendEquationSeparateiFunPtr
glBlendEquationSeparateiFunPtr :: FunPtr (GLuint -> GLenum -> GLenum -> IO ())
glBlendEquationSeparateiFunPtr = unsafePerformIO (getProcAddress "glBlendEquationSeparatei")
{-# NOINLINE glBlendEquationSeparateiFunPtr #-}
-- | Usage: @'glBlendEquationi' buf mode@
glBlendEquationi :: MonadIO m => GLuint -> GLenum -> m ()
glBlendEquationi = ffiuintenumIOV glBlendEquationiFunPtr
glBlendEquationiFunPtr :: FunPtr (GLuint -> GLenum -> IO ())
glBlendEquationiFunPtr = unsafePerformIO (getProcAddress "glBlendEquationi")
{-# NOINLINE glBlendEquationiFunPtr #-}
-- | Usage: @'glBlendFuncSeparatei' buf srcRGB dstRGB srcAlpha dstAlpha@
glBlendFuncSeparatei :: MonadIO m => GLuint -> GLenum -> GLenum -> GLenum -> GLenum -> m ()
glBlendFuncSeparatei = ffiuintenumenumenumenumIOV glBlendFuncSeparateiFunPtr
glBlendFuncSeparateiFunPtr :: FunPtr (GLuint -> GLenum -> GLenum -> GLenum -> GLenum -> IO ())
glBlendFuncSeparateiFunPtr = unsafePerformIO (getProcAddress "glBlendFuncSeparatei")
{-# NOINLINE glBlendFuncSeparateiFunPtr #-}
-- | Usage: @'glBlendFunci' buf src dst@
glBlendFunci :: MonadIO m => GLuint -> GLenum -> GLenum -> m ()
glBlendFunci = ffiuintenumenumIOV glBlendFunciFunPtr
glBlendFunciFunPtr :: FunPtr (GLuint -> GLenum -> GLenum -> IO ())
glBlendFunciFunPtr = unsafePerformIO (getProcAddress "glBlendFunci")
{-# NOINLINE glBlendFunciFunPtr #-}
-- | Usage: @'glDeleteTransformFeedbacks' n ids@
--
-- The length of @ids@ should be @n@.
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glDeleteTransformFeedbacks.xhtml>
glDeleteTransformFeedbacks :: MonadIO m => GLsizei -> Ptr GLuint -> m ()
glDeleteTransformFeedbacks = ffisizeiPtruintIOV glDeleteTransformFeedbacksFunPtr
glDeleteTransformFeedbacksFunPtr :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
glDeleteTransformFeedbacksFunPtr = unsafePerformIO (getProcAddress "glDeleteTransformFeedbacks")
{-# NOINLINE glDeleteTransformFeedbacksFunPtr #-}
-- | Usage: @'glDrawArraysIndirect' mode indirect@
--
-- The parameter @mode@ is a @PrimitiveType@, one of: 'Graphics.GL.Internal.Shared.GL_LINES', 'Graphics.GL.Internal.Shared.GL_LINES_ADJACENCY', 'Graphics.GL.Ext.ARB.GeometryShader4.GL_LINES_ADJACENCY_ARB', 'Graphics.GL.Internal.Shared.GL_LINES_ADJACENCY_EXT', 'Graphics.GL.Internal.Shared.GL_LINE_LOOP', 'Graphics.GL.Internal.Shared.GL_LINE_STRIP', 'Graphics.GL.Internal.Shared.GL_LINE_STRIP_ADJACENCY', 'Graphics.GL.Ext.ARB.GeometryShader4.GL_LINE_STRIP_ADJACENCY_ARB', 'Graphics.GL.Internal.Shared.GL_LINE_STRIP_ADJACENCY_EXT', 'Graphics.GL.Internal.Shared.GL_PATCHES', 'Graphics.GL.Ext.EXT.TessellationShader.GL_PATCHES_EXT', 'Graphics.GL.Internal.Shared.GL_POINTS', 'Graphics.GL.Internal.Shared.GL_POLYGON', 'Graphics.GL.Internal.Shared.GL_QUADS', 'Graphics.GL.Ext.EXT.TessellationShader.GL_QUADS_EXT', 'Graphics.GL.Internal.Shared.GL_QUAD_STRIP', 'Graphics.GL.Internal.Shared.GL_TRIANGLES', 'Graphics.GL.Internal.Shared.GL_TRIANGLES_ADJACENCY', 'Graphics.GL.Ext.ARB.GeometryShader4.GL_TRIANGLES_ADJACENCY_ARB', 'Graphics.GL.Internal.Shared.GL_TRIANGLES_ADJACENCY_EXT', 'Graphics.GL.Internal.Shared.GL_TRIANGLE_FAN', 'Graphics.GL.Internal.Shared.GL_TRIANGLE_STRIP', 'Graphics.GL.Internal.Shared.GL_TRIANGLE_STRIP_ADJACENCY', 'Graphics.GL.Ext.ARB.GeometryShader4.GL_TRIANGLE_STRIP_ADJACENCY_ARB', 'Graphics.GL.Internal.Shared.GL_TRIANGLE_STRIP_ADJACENCY_EXT'.
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glDrawArraysIndirect.xhtml>
glDrawArraysIndirect :: MonadIO m => GLenum -> Ptr () -> m ()
glDrawArraysIndirect = ffienumPtrVIOV glDrawArraysIndirectFunPtr
glDrawArraysIndirectFunPtr :: FunPtr (GLenum -> Ptr () -> IO ())
glDrawArraysIndirectFunPtr = unsafePerformIO (getProcAddress "glDrawArraysIndirect")
{-# NOINLINE glDrawArraysIndirectFunPtr #-}
-- | Usage: @'glDrawElementsIndirect' mode type indirect@
--
-- The parameter @mode@ is a @PrimitiveType@, one of: 'Graphics.GL.Internal.Shared.GL_LINES', 'Graphics.GL.Internal.Shared.GL_LINES_ADJACENCY', 'Graphics.GL.Ext.ARB.GeometryShader4.GL_LINES_ADJACENCY_ARB', 'Graphics.GL.Internal.Shared.GL_LINES_ADJACENCY_EXT', 'Graphics.GL.Internal.Shared.GL_LINE_LOOP', 'Graphics.GL.Internal.Shared.GL_LINE_STRIP', 'Graphics.GL.Internal.Shared.GL_LINE_STRIP_ADJACENCY', 'Graphics.GL.Ext.ARB.GeometryShader4.GL_LINE_STRIP_ADJACENCY_ARB', 'Graphics.GL.Internal.Shared.GL_LINE_STRIP_ADJACENCY_EXT', 'Graphics.GL.Internal.Shared.GL_PATCHES', 'Graphics.GL.Ext.EXT.TessellationShader.GL_PATCHES_EXT', 'Graphics.GL.Internal.Shared.GL_POINTS', 'Graphics.GL.Internal.Shared.GL_POLYGON', 'Graphics.GL.Internal.Shared.GL_QUADS', 'Graphics.GL.Ext.EXT.TessellationShader.GL_QUADS_EXT', 'Graphics.GL.Internal.Shared.GL_QUAD_STRIP', 'Graphics.GL.Internal.Shared.GL_TRIANGLES', 'Graphics.GL.Internal.Shared.GL_TRIANGLES_ADJACENCY', 'Graphics.GL.Ext.ARB.GeometryShader4.GL_TRIANGLES_ADJACENCY_ARB', 'Graphics.GL.Internal.Shared.GL_TRIANGLES_ADJACENCY_EXT', 'Graphics.GL.Internal.Shared.GL_TRIANGLE_FAN', 'Graphics.GL.Internal.Shared.GL_TRIANGLE_STRIP', 'Graphics.GL.Internal.Shared.GL_TRIANGLE_STRIP_ADJACENCY', 'Graphics.GL.Ext.ARB.GeometryShader4.GL_TRIANGLE_STRIP_ADJACENCY_ARB', 'Graphics.GL.Internal.Shared.GL_TRIANGLE_STRIP_ADJACENCY_EXT'.
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glDrawElementsIndirect.xhtml>
glDrawElementsIndirect :: MonadIO m => GLenum -> GLenum -> Ptr () -> m ()
glDrawElementsIndirect = ffienumenumPtrVIOV glDrawElementsIndirectFunPtr
glDrawElementsIndirectFunPtr :: FunPtr (GLenum -> GLenum -> Ptr () -> IO ())
glDrawElementsIndirectFunPtr = unsafePerformIO (getProcAddress "glDrawElementsIndirect")
{-# NOINLINE glDrawElementsIndirectFunPtr #-}
-- | Usage: @'glDrawTransformFeedback' mode id@
--
-- The parameter @mode@ is a @PrimitiveType@, one of: 'Graphics.GL.Internal.Shared.GL_LINES', 'Graphics.GL.Internal.Shared.GL_LINES_ADJACENCY', 'Graphics.GL.Ext.ARB.GeometryShader4.GL_LINES_ADJACENCY_ARB', 'Graphics.GL.Internal.Shared.GL_LINES_ADJACENCY_EXT', 'Graphics.GL.Internal.Shared.GL_LINE_LOOP', 'Graphics.GL.Internal.Shared.GL_LINE_STRIP', 'Graphics.GL.Internal.Shared.GL_LINE_STRIP_ADJACENCY', 'Graphics.GL.Ext.ARB.GeometryShader4.GL_LINE_STRIP_ADJACENCY_ARB', 'Graphics.GL.Internal.Shared.GL_LINE_STRIP_ADJACENCY_EXT', 'Graphics.GL.Internal.Shared.GL_PATCHES', 'Graphics.GL.Ext.EXT.TessellationShader.GL_PATCHES_EXT', 'Graphics.GL.Internal.Shared.GL_POINTS', 'Graphics.GL.Internal.Shared.GL_POLYGON', 'Graphics.GL.Internal.Shared.GL_QUADS', 'Graphics.GL.Ext.EXT.TessellationShader.GL_QUADS_EXT', 'Graphics.GL.Internal.Shared.GL_QUAD_STRIP', 'Graphics.GL.Internal.Shared.GL_TRIANGLES', 'Graphics.GL.Internal.Shared.GL_TRIANGLES_ADJACENCY', 'Graphics.GL.Ext.ARB.GeometryShader4.GL_TRIANGLES_ADJACENCY_ARB', 'Graphics.GL.Internal.Shared.GL_TRIANGLES_ADJACENCY_EXT', 'Graphics.GL.Internal.Shared.GL_TRIANGLE_FAN', 'Graphics.GL.Internal.Shared.GL_TRIANGLE_STRIP', 'Graphics.GL.Internal.Shared.GL_TRIANGLE_STRIP_ADJACENCY', 'Graphics.GL.Ext.ARB.GeometryShader4.GL_TRIANGLE_STRIP_ADJACENCY_ARB', 'Graphics.GL.Internal.Shared.GL_TRIANGLE_STRIP_ADJACENCY_EXT'.
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glDrawTransformFeedback.xhtml>
glDrawTransformFeedback :: MonadIO m => GLenum -> GLuint -> m ()
glDrawTransformFeedback = ffienumuintIOV glDrawTransformFeedbackFunPtr
glDrawTransformFeedbackFunPtr :: FunPtr (GLenum -> GLuint -> IO ())
glDrawTransformFeedbackFunPtr = unsafePerformIO (getProcAddress "glDrawTransformFeedback")
{-# NOINLINE glDrawTransformFeedbackFunPtr #-}
-- | Usage: @'glDrawTransformFeedbackStream' mode id stream@
--
-- The parameter @mode@ is a @PrimitiveType@, one of: 'Graphics.GL.Internal.Shared.GL_LINES', 'Graphics.GL.Internal.Shared.GL_LINES_ADJACENCY', 'Graphics.GL.Ext.ARB.GeometryShader4.GL_LINES_ADJACENCY_ARB', 'Graphics.GL.Internal.Shared.GL_LINES_ADJACENCY_EXT', 'Graphics.GL.Internal.Shared.GL_LINE_LOOP', 'Graphics.GL.Internal.Shared.GL_LINE_STRIP', 'Graphics.GL.Internal.Shared.GL_LINE_STRIP_ADJACENCY', 'Graphics.GL.Ext.ARB.GeometryShader4.GL_LINE_STRIP_ADJACENCY_ARB', 'Graphics.GL.Internal.Shared.GL_LINE_STRIP_ADJACENCY_EXT', 'Graphics.GL.Internal.Shared.GL_PATCHES', 'Graphics.GL.Ext.EXT.TessellationShader.GL_PATCHES_EXT', 'Graphics.GL.Internal.Shared.GL_POINTS', 'Graphics.GL.Internal.Shared.GL_POLYGON', 'Graphics.GL.Internal.Shared.GL_QUADS', 'Graphics.GL.Ext.EXT.TessellationShader.GL_QUADS_EXT', 'Graphics.GL.Internal.Shared.GL_QUAD_STRIP', 'Graphics.GL.Internal.Shared.GL_TRIANGLES', 'Graphics.GL.Internal.Shared.GL_TRIANGLES_ADJACENCY', 'Graphics.GL.Ext.ARB.GeometryShader4.GL_TRIANGLES_ADJACENCY_ARB', 'Graphics.GL.Internal.Shared.GL_TRIANGLES_ADJACENCY_EXT', 'Graphics.GL.Internal.Shared.GL_TRIANGLE_FAN', 'Graphics.GL.Internal.Shared.GL_TRIANGLE_STRIP', 'Graphics.GL.Internal.Shared.GL_TRIANGLE_STRIP_ADJACENCY', 'Graphics.GL.Ext.ARB.GeometryShader4.GL_TRIANGLE_STRIP_ADJACENCY_ARB', 'Graphics.GL.Internal.Shared.GL_TRIANGLE_STRIP_ADJACENCY_EXT'.
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glDrawTransformFeedbackStream.xhtml>
glDrawTransformFeedbackStream :: MonadIO m => GLenum -> GLuint -> GLuint -> m ()
glDrawTransformFeedbackStream = ffienumuintuintIOV glDrawTransformFeedbackStreamFunPtr
glDrawTransformFeedbackStreamFunPtr :: FunPtr (GLenum -> GLuint -> GLuint -> IO ())
glDrawTransformFeedbackStreamFunPtr = unsafePerformIO (getProcAddress "glDrawTransformFeedbackStream")
{-# NOINLINE glDrawTransformFeedbackStreamFunPtr #-}
-- | Usage: @'glEndQueryIndexed' target index@
glEndQueryIndexed :: MonadIO m => GLenum -> GLuint -> m ()
glEndQueryIndexed = ffienumuintIOV glEndQueryIndexedFunPtr
glEndQueryIndexedFunPtr :: FunPtr (GLenum -> GLuint -> IO ())
glEndQueryIndexedFunPtr = unsafePerformIO (getProcAddress "glEndQueryIndexed")
{-# NOINLINE glEndQueryIndexedFunPtr #-}
-- | Usage: @'glGenTransformFeedbacks' n ids@
--
-- The length of @ids@ should be @n@.
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glGenTransformFeedbacks.xhtml>
glGenTransformFeedbacks :: MonadIO m => GLsizei -> Ptr GLuint -> m ()
glGenTransformFeedbacks = ffisizeiPtruintIOV glGenTransformFeedbacksFunPtr
glGenTransformFeedbacksFunPtr :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
glGenTransformFeedbacksFunPtr = unsafePerformIO (getProcAddress "glGenTransformFeedbacks")
{-# NOINLINE glGenTransformFeedbacksFunPtr #-}
-- | Usage: @'glGetActiveSubroutineName' program shadertype index bufsize length name@
--
-- The length of @length@ should be @1@.
--
-- The length of @name@ should be @bufsize@.
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glGetActiveSubroutineName.xhtml>
glGetActiveSubroutineName :: MonadIO m => GLuint -> GLenum -> GLuint -> GLsizei -> Ptr GLsizei -> Ptr GLchar -> m ()
glGetActiveSubroutineName = ffiuintenumuintsizeiPtrsizeiPtrcharIOV glGetActiveSubroutineNameFunPtr
glGetActiveSubroutineNameFunPtr :: FunPtr (GLuint -> GLenum -> GLuint -> GLsizei -> Ptr GLsizei -> Ptr GLchar -> IO ())
glGetActiveSubroutineNameFunPtr = unsafePerformIO (getProcAddress "glGetActiveSubroutineName")
{-# NOINLINE glGetActiveSubroutineNameFunPtr #-}
-- | Usage: @'glGetActiveSubroutineUniformName' program shadertype index bufsize length name@
--
-- The length of @length@ should be @1@.
--
-- The length of @name@ should be @bufsize@.
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glGetActiveSubroutineUniformName.xhtml>
glGetActiveSubroutineUniformName :: MonadIO m => GLuint -> GLenum -> GLuint -> GLsizei -> Ptr GLsizei -> Ptr GLchar -> m ()
glGetActiveSubroutineUniformName = ffiuintenumuintsizeiPtrsizeiPtrcharIOV glGetActiveSubroutineUniformNameFunPtr
glGetActiveSubroutineUniformNameFunPtr :: FunPtr (GLuint -> GLenum -> GLuint -> GLsizei -> Ptr GLsizei -> Ptr GLchar -> IO ())
glGetActiveSubroutineUniformNameFunPtr = unsafePerformIO (getProcAddress "glGetActiveSubroutineUniformName")
{-# NOINLINE glGetActiveSubroutineUniformNameFunPtr #-}
-- | Usage: @'glGetActiveSubroutineUniformiv' program shadertype index pname values@
--
-- The length of @values@ should be @COMPSIZE(pname)@.
glGetActiveSubroutineUniformiv :: MonadIO m => GLuint -> GLenum -> GLuint -> GLenum -> Ptr GLint -> m ()
glGetActiveSubroutineUniformiv = ffiuintenumuintenumPtrintIOV glGetActiveSubroutineUniformivFunPtr
glGetActiveSubroutineUniformivFunPtr :: FunPtr (GLuint -> GLenum -> GLuint -> GLenum -> Ptr GLint -> IO ())
glGetActiveSubroutineUniformivFunPtr = unsafePerformIO (getProcAddress "glGetActiveSubroutineUniformiv")
{-# NOINLINE glGetActiveSubroutineUniformivFunPtr #-}
-- | Usage: @'glGetProgramStageiv' program shadertype pname values@
--
-- The length of @values@ should be @1@.
glGetProgramStageiv :: MonadIO m => GLuint -> GLenum -> GLenum -> Ptr GLint -> m ()
glGetProgramStageiv = ffiuintenumenumPtrintIOV glGetProgramStageivFunPtr
glGetProgramStageivFunPtr :: FunPtr (GLuint -> GLenum -> GLenum -> Ptr GLint -> IO ())
glGetProgramStageivFunPtr = unsafePerformIO (getProcAddress "glGetProgramStageiv")
{-# NOINLINE glGetProgramStageivFunPtr #-}
-- | Usage: @'glGetQueryIndexediv' target index pname params@
--
-- The length of @params@ should be @COMPSIZE(pname)@.
glGetQueryIndexediv :: MonadIO m => GLenum -> GLuint -> GLenum -> Ptr GLint -> m ()
glGetQueryIndexediv = ffienumuintenumPtrintIOV glGetQueryIndexedivFunPtr
glGetQueryIndexedivFunPtr :: FunPtr (GLenum -> GLuint -> GLenum -> Ptr GLint -> IO ())
glGetQueryIndexedivFunPtr = unsafePerformIO (getProcAddress "glGetQueryIndexediv")
{-# NOINLINE glGetQueryIndexedivFunPtr #-}
-- | Usage: @'glGetSubroutineIndex' program shadertype name@
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glGetSubroutineIndex.xhtml>
glGetSubroutineIndex :: MonadIO m => GLuint -> GLenum -> Ptr GLchar -> m GLuint
glGetSubroutineIndex = ffiuintenumPtrcharIOuint glGetSubroutineIndexFunPtr
glGetSubroutineIndexFunPtr :: FunPtr (GLuint -> GLenum -> Ptr GLchar -> IO GLuint)
glGetSubroutineIndexFunPtr = unsafePerformIO (getProcAddress "glGetSubroutineIndex")
{-# NOINLINE glGetSubroutineIndexFunPtr #-}
-- | Usage: @'glGetSubroutineUniformLocation' program shadertype name@
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glGetSubroutineUniformLocation.xhtml>
glGetSubroutineUniformLocation :: MonadIO m => GLuint -> GLenum -> Ptr GLchar -> m GLint
glGetSubroutineUniformLocation = ffiuintenumPtrcharIOint glGetSubroutineUniformLocationFunPtr
glGetSubroutineUniformLocationFunPtr :: FunPtr (GLuint -> GLenum -> Ptr GLchar -> IO GLint)
glGetSubroutineUniformLocationFunPtr = unsafePerformIO (getProcAddress "glGetSubroutineUniformLocation")
{-# NOINLINE glGetSubroutineUniformLocationFunPtr #-}
-- | Usage: @'glGetUniformSubroutineuiv' shadertype location params@
--
-- The length of @params@ should be @1@.
glGetUniformSubroutineuiv :: MonadIO m => GLenum -> GLint -> Ptr GLuint -> m ()
glGetUniformSubroutineuiv = ffienumintPtruintIOV glGetUniformSubroutineuivFunPtr
glGetUniformSubroutineuivFunPtr :: FunPtr (GLenum -> GLint -> Ptr GLuint -> IO ())
glGetUniformSubroutineuivFunPtr = unsafePerformIO (getProcAddress "glGetUniformSubroutineuiv")
{-# NOINLINE glGetUniformSubroutineuivFunPtr #-}
-- | Usage: @'glGetUniformdv' program location params@
--
-- The length of @params@ should be @COMPSIZE(program,location)@.
glGetUniformdv :: MonadIO m => GLuint -> GLint -> Ptr GLdouble -> m ()
glGetUniformdv = ffiuintintPtrdoubleIOV glGetUniformdvFunPtr
glGetUniformdvFunPtr :: FunPtr (GLuint -> GLint -> Ptr GLdouble -> IO ())
glGetUniformdvFunPtr = unsafePerformIO (getProcAddress "glGetUniformdv")
{-# NOINLINE glGetUniformdvFunPtr #-}
-- | Usage: @'glIsTransformFeedback' id@
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glIsTransformFeedback.xhtml>
glIsTransformFeedback :: MonadIO m => GLuint -> m GLboolean
glIsTransformFeedback = ffiuintIOboolean glIsTransformFeedbackFunPtr
glIsTransformFeedbackFunPtr :: FunPtr (GLuint -> IO GLboolean)
glIsTransformFeedbackFunPtr = unsafePerformIO (getProcAddress "glIsTransformFeedback")
{-# NOINLINE glIsTransformFeedbackFunPtr #-}
-- | Usage: @'glMinSampleShading' value@
--
-- The parameter @value@ is a @ColorF@.
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glMinSampleShading.xhtml>
glMinSampleShading :: MonadIO m => GLfloat -> m ()
glMinSampleShading = ffifloatIOV glMinSampleShadingFunPtr
glMinSampleShadingFunPtr :: FunPtr (GLfloat -> IO ())
glMinSampleShadingFunPtr = unsafePerformIO (getProcAddress "glMinSampleShading")
{-# NOINLINE glMinSampleShadingFunPtr #-}
-- | Usage: @'glPatchParameterfv' pname values@
--
-- The length of @values@ should be @COMPSIZE(pname)@.
glPatchParameterfv :: MonadIO m => GLenum -> Ptr GLfloat -> m ()
glPatchParameterfv = ffienumPtrfloatIOV glPatchParameterfvFunPtr
glPatchParameterfvFunPtr :: FunPtr (GLenum -> Ptr GLfloat -> IO ())
glPatchParameterfvFunPtr = unsafePerformIO (getProcAddress "glPatchParameterfv")
{-# NOINLINE glPatchParameterfvFunPtr #-}
-- | Usage: @'glPatchParameteri' pname value@
glPatchParameteri :: MonadIO m => GLenum -> GLint -> m ()
glPatchParameteri = ffienumintIOV glPatchParameteriFunPtr
glPatchParameteriFunPtr :: FunPtr (GLenum -> GLint -> IO ())
glPatchParameteriFunPtr = unsafePerformIO (getProcAddress "glPatchParameteri")
{-# NOINLINE glPatchParameteriFunPtr #-}
-- | Usage: @'glPauseTransformFeedback'@
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glPauseTransformFeedback.xhtml>
glPauseTransformFeedback :: MonadIO m => m ()
glPauseTransformFeedback = ffiIOV glPauseTransformFeedbackFunPtr
glPauseTransformFeedbackFunPtr :: FunPtr (IO ())
glPauseTransformFeedbackFunPtr = unsafePerformIO (getProcAddress "glPauseTransformFeedback")
{-# NOINLINE glPauseTransformFeedbackFunPtr #-}
-- | Usage: @'glResumeTransformFeedback'@
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glResumeTransformFeedback.xhtml>
glResumeTransformFeedback :: MonadIO m => m ()
glResumeTransformFeedback = ffiIOV glResumeTransformFeedbackFunPtr
glResumeTransformFeedbackFunPtr :: FunPtr (IO ())
glResumeTransformFeedbackFunPtr = unsafePerformIO (getProcAddress "glResumeTransformFeedback")
{-# NOINLINE glResumeTransformFeedbackFunPtr #-}
-- | Usage: @'glUniform1d' location x@
glUniform1d :: MonadIO m => GLint -> GLdouble -> m ()
glUniform1d = ffiintdoubleIOV glUniform1dFunPtr
glUniform1dFunPtr :: FunPtr (GLint -> GLdouble -> IO ())
glUniform1dFunPtr = unsafePerformIO (getProcAddress "glUniform1d")
{-# NOINLINE glUniform1dFunPtr #-}
-- | Usage: @'glUniform1dv' location count value@
--
-- The length of @value@ should be @count*1@.
glUniform1dv :: MonadIO m => GLint -> GLsizei -> Ptr GLdouble -> m ()
glUniform1dv = ffiintsizeiPtrdoubleIOV glUniform1dvFunPtr
glUniform1dvFunPtr :: FunPtr (GLint -> GLsizei -> Ptr GLdouble -> IO ())
glUniform1dvFunPtr = unsafePerformIO (getProcAddress "glUniform1dv")
{-# NOINLINE glUniform1dvFunPtr #-}
-- | Usage: @'glUniform2d' location x y@
glUniform2d :: MonadIO m => GLint -> GLdouble -> GLdouble -> m ()
glUniform2d = ffiintdoubledoubleIOV glUniform2dFunPtr
glUniform2dFunPtr :: FunPtr (GLint -> GLdouble -> GLdouble -> IO ())
glUniform2dFunPtr = unsafePerformIO (getProcAddress "glUniform2d")
{-# NOINLINE glUniform2dFunPtr #-}
-- | Usage: @'glUniform2dv' location count value@
--
-- The length of @value@ should be @count*2@.
glUniform2dv :: MonadIO m => GLint -> GLsizei -> Ptr GLdouble -> m ()
glUniform2dv = ffiintsizeiPtrdoubleIOV glUniform2dvFunPtr
glUniform2dvFunPtr :: FunPtr (GLint -> GLsizei -> Ptr GLdouble -> IO ())
glUniform2dvFunPtr = unsafePerformIO (getProcAddress "glUniform2dv")
{-# NOINLINE glUniform2dvFunPtr #-}
-- | Usage: @'glUniform3d' location x y z@
glUniform3d :: MonadIO m => GLint -> GLdouble -> GLdouble -> GLdouble -> m ()
glUniform3d = ffiintdoubledoubledoubleIOV glUniform3dFunPtr
glUniform3dFunPtr :: FunPtr (GLint -> GLdouble -> GLdouble -> GLdouble -> IO ())
glUniform3dFunPtr = unsafePerformIO (getProcAddress "glUniform3d")
{-# NOINLINE glUniform3dFunPtr #-}
-- | Usage: @'glUniform3dv' location count value@
--
-- The length of @value@ should be @count*3@.
glUniform3dv :: MonadIO m => GLint -> GLsizei -> Ptr GLdouble -> m ()
glUniform3dv = ffiintsizeiPtrdoubleIOV glUniform3dvFunPtr
glUniform3dvFunPtr :: FunPtr (GLint -> GLsizei -> Ptr GLdouble -> IO ())
glUniform3dvFunPtr = unsafePerformIO (getProcAddress "glUniform3dv")
{-# NOINLINE glUniform3dvFunPtr #-}
-- | Usage: @'glUniform4d' location x y z w@
glUniform4d :: MonadIO m => GLint -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> m ()
glUniform4d = ffiintdoubledoubledoubledoubleIOV glUniform4dFunPtr
glUniform4dFunPtr :: FunPtr (GLint -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ())
glUniform4dFunPtr = unsafePerformIO (getProcAddress "glUniform4d")
{-# NOINLINE glUniform4dFunPtr #-}
-- | Usage: @'glUniform4dv' location count value@
--
-- The length of @value@ should be @count*4@.
glUniform4dv :: MonadIO m => GLint -> GLsizei -> Ptr GLdouble -> m ()
glUniform4dv = ffiintsizeiPtrdoubleIOV glUniform4dvFunPtr
glUniform4dvFunPtr :: FunPtr (GLint -> GLsizei -> Ptr GLdouble -> IO ())
glUniform4dvFunPtr = unsafePerformIO (getProcAddress "glUniform4dv")
{-# NOINLINE glUniform4dvFunPtr #-}
-- | Usage: @'glUniformMatrix2dv' location count transpose value@
--
-- The parameter @transpose@ is a @Boolean@, one of: 'Graphics.GL.Internal.Shared.GL_FALSE', 'Graphics.GL.Internal.Shared.GL_TRUE'.
--
-- The length of @value@ should be @count*4@.
glUniformMatrix2dv :: MonadIO m => GLint -> GLsizei -> GLboolean -> Ptr GLdouble -> m ()
glUniformMatrix2dv = ffiintsizeibooleanPtrdoubleIOV glUniformMatrix2dvFunPtr
glUniformMatrix2dvFunPtr :: FunPtr (GLint -> GLsizei -> GLboolean -> Ptr GLdouble -> IO ())
glUniformMatrix2dvFunPtr = unsafePerformIO (getProcAddress "glUniformMatrix2dv")
{-# NOINLINE glUniformMatrix2dvFunPtr #-}
-- | Usage: @'glUniformMatrix2x3dv' location count transpose value@
--
-- The parameter @transpose@ is a @Boolean@, one of: 'Graphics.GL.Internal.Shared.GL_FALSE', 'Graphics.GL.Internal.Shared.GL_TRUE'.
--
-- The length of @value@ should be @count*6@.
glUniformMatrix2x3dv :: MonadIO m => GLint -> GLsizei -> GLboolean -> Ptr GLdouble -> m ()
glUniformMatrix2x3dv = ffiintsizeibooleanPtrdoubleIOV glUniformMatrix2x3dvFunPtr
glUniformMatrix2x3dvFunPtr :: FunPtr (GLint -> GLsizei -> GLboolean -> Ptr GLdouble -> IO ())
glUniformMatrix2x3dvFunPtr = unsafePerformIO (getProcAddress "glUniformMatrix2x3dv")
{-# NOINLINE glUniformMatrix2x3dvFunPtr #-}
-- | Usage: @'glUniformMatrix2x4dv' location count transpose value@
--
-- The parameter @transpose@ is a @Boolean@, one of: 'Graphics.GL.Internal.Shared.GL_FALSE', 'Graphics.GL.Internal.Shared.GL_TRUE'.
--
-- The length of @value@ should be @count*8@.
glUniformMatrix2x4dv :: MonadIO m => GLint -> GLsizei -> GLboolean -> Ptr GLdouble -> m ()
glUniformMatrix2x4dv = ffiintsizeibooleanPtrdoubleIOV glUniformMatrix2x4dvFunPtr
glUniformMatrix2x4dvFunPtr :: FunPtr (GLint -> GLsizei -> GLboolean -> Ptr GLdouble -> IO ())
glUniformMatrix2x4dvFunPtr = unsafePerformIO (getProcAddress "glUniformMatrix2x4dv")
{-# NOINLINE glUniformMatrix2x4dvFunPtr #-}
-- | Usage: @'glUniformMatrix3dv' location count transpose value@
--
-- The parameter @transpose@ is a @Boolean@, one of: 'Graphics.GL.Internal.Shared.GL_FALSE', 'Graphics.GL.Internal.Shared.GL_TRUE'.
--
-- The length of @value@ should be @count*9@.
glUniformMatrix3dv :: MonadIO m => GLint -> GLsizei -> GLboolean -> Ptr GLdouble -> m ()
glUniformMatrix3dv = ffiintsizeibooleanPtrdoubleIOV glUniformMatrix3dvFunPtr
glUniformMatrix3dvFunPtr :: FunPtr (GLint -> GLsizei -> GLboolean -> Ptr GLdouble -> IO ())
glUniformMatrix3dvFunPtr = unsafePerformIO (getProcAddress "glUniformMatrix3dv")
{-# NOINLINE glUniformMatrix3dvFunPtr #-}
-- | Usage: @'glUniformMatrix3x2dv' location count transpose value@
--
-- The parameter @transpose@ is a @Boolean@, one of: 'Graphics.GL.Internal.Shared.GL_FALSE', 'Graphics.GL.Internal.Shared.GL_TRUE'.
--
-- The length of @value@ should be @count*6@.
glUniformMatrix3x2dv :: MonadIO m => GLint -> GLsizei -> GLboolean -> Ptr GLdouble -> m ()
glUniformMatrix3x2dv = ffiintsizeibooleanPtrdoubleIOV glUniformMatrix3x2dvFunPtr
glUniformMatrix3x2dvFunPtr :: FunPtr (GLint -> GLsizei -> GLboolean -> Ptr GLdouble -> IO ())
glUniformMatrix3x2dvFunPtr = unsafePerformIO (getProcAddress "glUniformMatrix3x2dv")
{-# NOINLINE glUniformMatrix3x2dvFunPtr #-}
-- | Usage: @'glUniformMatrix3x4dv' location count transpose value@
--
-- The parameter @transpose@ is a @Boolean@, one of: 'Graphics.GL.Internal.Shared.GL_FALSE', 'Graphics.GL.Internal.Shared.GL_TRUE'.
--
-- The length of @value@ should be @count*12@.
glUniformMatrix3x4dv :: MonadIO m => GLint -> GLsizei -> GLboolean -> Ptr GLdouble -> m ()
glUniformMatrix3x4dv = ffiintsizeibooleanPtrdoubleIOV glUniformMatrix3x4dvFunPtr
glUniformMatrix3x4dvFunPtr :: FunPtr (GLint -> GLsizei -> GLboolean -> Ptr GLdouble -> IO ())
glUniformMatrix3x4dvFunPtr = unsafePerformIO (getProcAddress "glUniformMatrix3x4dv")
{-# NOINLINE glUniformMatrix3x4dvFunPtr #-}
-- | Usage: @'glUniformMatrix4dv' location count transpose value@
--
-- The parameter @transpose@ is a @Boolean@, one of: 'Graphics.GL.Internal.Shared.GL_FALSE', 'Graphics.GL.Internal.Shared.GL_TRUE'.
--
-- The length of @value@ should be @count*16@.
glUniformMatrix4dv :: MonadIO m => GLint -> GLsizei -> GLboolean -> Ptr GLdouble -> m ()
glUniformMatrix4dv = ffiintsizeibooleanPtrdoubleIOV glUniformMatrix4dvFunPtr
glUniformMatrix4dvFunPtr :: FunPtr (GLint -> GLsizei -> GLboolean -> Ptr GLdouble -> IO ())
glUniformMatrix4dvFunPtr = unsafePerformIO (getProcAddress "glUniformMatrix4dv")
{-# NOINLINE glUniformMatrix4dvFunPtr #-}
-- | Usage: @'glUniformMatrix4x2dv' location count transpose value@
--
-- The parameter @transpose@ is a @Boolean@, one of: 'Graphics.GL.Internal.Shared.GL_FALSE', 'Graphics.GL.Internal.Shared.GL_TRUE'.
--
-- The length of @value@ should be @count*8@.
glUniformMatrix4x2dv :: MonadIO m => GLint -> GLsizei -> GLboolean -> Ptr GLdouble -> m ()
glUniformMatrix4x2dv = ffiintsizeibooleanPtrdoubleIOV glUniformMatrix4x2dvFunPtr
glUniformMatrix4x2dvFunPtr :: FunPtr (GLint -> GLsizei -> GLboolean -> Ptr GLdouble -> IO ())
glUniformMatrix4x2dvFunPtr = unsafePerformIO (getProcAddress "glUniformMatrix4x2dv")
{-# NOINLINE glUniformMatrix4x2dvFunPtr #-}
-- | Usage: @'glUniformMatrix4x3dv' location count transpose value@
--
-- The parameter @transpose@ is a @Boolean@, one of: 'Graphics.GL.Internal.Shared.GL_FALSE', 'Graphics.GL.Internal.Shared.GL_TRUE'.
--
-- The length of @value@ should be @count*12@.
glUniformMatrix4x3dv :: MonadIO m => GLint -> GLsizei -> GLboolean -> Ptr GLdouble -> m ()
glUniformMatrix4x3dv = ffiintsizeibooleanPtrdoubleIOV glUniformMatrix4x3dvFunPtr
glUniformMatrix4x3dvFunPtr :: FunPtr (GLint -> GLsizei -> GLboolean -> Ptr GLdouble -> IO ())
glUniformMatrix4x3dvFunPtr = unsafePerformIO (getProcAddress "glUniformMatrix4x3dv")
{-# NOINLINE glUniformMatrix4x3dvFunPtr #-}
-- | Usage: @'glUniformSubroutinesuiv' shadertype count indices@
--
-- The length of @indices@ should be @count@.
glUniformSubroutinesuiv :: MonadIO m => GLenum -> GLsizei -> Ptr GLuint -> m ()
glUniformSubroutinesuiv = ffienumsizeiPtruintIOV glUniformSubroutinesuivFunPtr
glUniformSubroutinesuivFunPtr :: FunPtr (GLenum -> GLsizei -> Ptr GLuint -> IO ())
glUniformSubroutinesuivFunPtr = unsafePerformIO (getProcAddress "glUniformSubroutinesuiv")
{-# NOINLINE glUniformSubroutinesuivFunPtr #-}
pattern GL_ACTIVE_SUBROUTINES = 0x8DE5
pattern GL_ACTIVE_SUBROUTINE_MAX_LENGTH = 0x8E48
pattern GL_ACTIVE_SUBROUTINE_UNIFORMS = 0x8DE6
pattern GL_ACTIVE_SUBROUTINE_UNIFORM_LOCATIONS = 0x8E47
pattern GL_ACTIVE_SUBROUTINE_UNIFORM_MAX_LENGTH = 0x8E49
pattern GL_COMPATIBLE_SUBROUTINES = 0x8E4B
pattern GL_DOUBLE_MAT2 = 0x8F46
pattern GL_DOUBLE_MAT2x3 = 0x8F49
pattern GL_DOUBLE_MAT2x4 = 0x8F4A
pattern GL_DOUBLE_MAT3 = 0x8F47
pattern GL_DOUBLE_MAT3x2 = 0x8F4B
pattern GL_DOUBLE_MAT3x4 = 0x8F4C
pattern GL_DOUBLE_MAT4 = 0x8F48
pattern GL_DOUBLE_MAT4x2 = 0x8F4D
pattern GL_DOUBLE_MAT4x3 = 0x8F4E
pattern GL_DOUBLE_VEC2 = 0x8FFC
pattern GL_DOUBLE_VEC3 = 0x8FFD
pattern GL_DOUBLE_VEC4 = 0x8FFE
pattern GL_DRAW_INDIRECT_BUFFER = 0x8F3F
pattern GL_DRAW_INDIRECT_BUFFER_BINDING = 0x8F43
pattern GL_FRACTIONAL_EVEN = 0x8E7C
pattern GL_FRACTIONAL_ODD = 0x8E7B
pattern GL_FRAGMENT_INTERPOLATION_OFFSET_BITS = 0x8E5D
pattern GL_GEOMETRY_SHADER_INVOCATIONS = 0x887F
pattern GL_INT_SAMPLER_CUBE_MAP_ARRAY = 0x900E
pattern GL_ISOLINES = 0x8E7A
pattern GL_MAX_COMBINED_TESS_CONTROL_UNIFORM_COMPONENTS = 0x8E1E
pattern GL_MAX_COMBINED_TESS_EVALUATION_UNIFORM_COMPONENTS = 0x8E1F
pattern GL_MAX_FRAGMENT_INTERPOLATION_OFFSET = 0x8E5C
pattern GL_MAX_GEOMETRY_SHADER_INVOCATIONS = 0x8E5A
pattern GL_MAX_PATCH_VERTICES = 0x8E7D
pattern GL_MAX_PROGRAM_TEXTURE_GATHER_OFFSET = 0x8E5F
pattern GL_MAX_SUBROUTINES = 0x8DE7
pattern GL_MAX_SUBROUTINE_UNIFORM_LOCATIONS = 0x8DE8
pattern GL_MAX_TESS_CONTROL_INPUT_COMPONENTS = 0x886C
pattern GL_MAX_TESS_CONTROL_OUTPUT_COMPONENTS = 0x8E83
pattern GL_MAX_TESS_CONTROL_TEXTURE_IMAGE_UNITS = 0x8E81
pattern GL_MAX_TESS_CONTROL_TOTAL_OUTPUT_COMPONENTS = 0x8E85
pattern GL_MAX_TESS_CONTROL_UNIFORM_BLOCKS = 0x8E89
pattern GL_MAX_TESS_CONTROL_UNIFORM_COMPONENTS = 0x8E7F
pattern GL_MAX_TESS_EVALUATION_INPUT_COMPONENTS = 0x886D
pattern GL_MAX_TESS_EVALUATION_OUTPUT_COMPONENTS = 0x8E86
pattern GL_MAX_TESS_EVALUATION_TEXTURE_IMAGE_UNITS = 0x8E82
pattern GL_MAX_TESS_EVALUATION_UNIFORM_BLOCKS = 0x8E8A
pattern GL_MAX_TESS_EVALUATION_UNIFORM_COMPONENTS = 0x8E80
pattern GL_MAX_TESS_GEN_LEVEL = 0x8E7E
pattern GL_MAX_TESS_PATCH_COMPONENTS = 0x8E84
pattern GL_MAX_TRANSFORM_FEEDBACK_BUFFERS = 0x8E70
pattern GL_MAX_VERTEX_STREAMS = 0x8E71
pattern GL_MIN_FRAGMENT_INTERPOLATION_OFFSET = 0x8E5B
pattern GL_MIN_PROGRAM_TEXTURE_GATHER_OFFSET = 0x8E5E
pattern GL_MIN_SAMPLE_SHADING_VALUE = 0x8C37
pattern GL_NUM_COMPATIBLE_SUBROUTINES = 0x8E4A
pattern GL_PATCHES = 0x000E
pattern GL_PATCH_DEFAULT_INNER_LEVEL = 0x8E73
pattern GL_PATCH_DEFAULT_OUTER_LEVEL = 0x8E74
pattern GL_PATCH_VERTICES = 0x8E72
pattern GL_SAMPLER_CUBE_MAP_ARRAY = 0x900C
pattern GL_SAMPLER_CUBE_MAP_ARRAY_SHADOW = 0x900D
pattern GL_SAMPLE_SHADING = 0x8C36
pattern GL_TESS_CONTROL_OUTPUT_VERTICES = 0x8E75
pattern GL_TESS_CONTROL_SHADER = 0x8E88
pattern GL_TESS_EVALUATION_SHADER = 0x8E87
pattern GL_TESS_GEN_MODE = 0x8E76
pattern GL_TESS_GEN_POINT_MODE = 0x8E79
pattern GL_TESS_GEN_SPACING = 0x8E77
pattern GL_TESS_GEN_VERTEX_ORDER = 0x8E78
pattern GL_TEXTURE_BINDING_CUBE_MAP_ARRAY = 0x900A
pattern GL_TEXTURE_CUBE_MAP_ARRAY = 0x9009
pattern GL_TRANSFORM_FEEDBACK = 0x8E22
pattern GL_TRANSFORM_FEEDBACK_BINDING = 0x8E25
pattern GL_TRANSFORM_FEEDBACK_BUFFER_ACTIVE = 0x8E24
pattern GL_TRANSFORM_FEEDBACK_BUFFER_PAUSED = 0x8E23
pattern GL_UNIFORM_BLOCK_REFERENCED_BY_TESS_CONTROL_SHADER = 0x84F0
pattern GL_UNIFORM_BLOCK_REFERENCED_BY_TESS_EVALUATION_SHADER = 0x84F1
pattern GL_UNSIGNED_INT_SAMPLER_CUBE_MAP_ARRAY = 0x900F
-- | Usage: @'glActiveShaderProgram' pipeline program@
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glActiveShaderProgram.xhtml>
glActiveShaderProgram :: MonadIO m => GLuint -> GLuint -> m ()
glActiveShaderProgram = ffiuintuintIOV glActiveShaderProgramFunPtr
glActiveShaderProgramFunPtr :: FunPtr (GLuint -> GLuint -> IO ())
glActiveShaderProgramFunPtr = unsafePerformIO (getProcAddress "glActiveShaderProgram")
{-# NOINLINE glActiveShaderProgramFunPtr #-}
-- | Usage: @'glBindProgramPipeline' pipeline@
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glBindProgramPipeline.xhtml>
glBindProgramPipeline :: MonadIO m => GLuint -> m ()
glBindProgramPipeline = ffiuintIOV glBindProgramPipelineFunPtr
glBindProgramPipelineFunPtr :: FunPtr (GLuint -> IO ())
glBindProgramPipelineFunPtr = unsafePerformIO (getProcAddress "glBindProgramPipeline")
{-# NOINLINE glBindProgramPipelineFunPtr #-}
-- | Usage: @'glClearDepthf' d@
glClearDepthf :: MonadIO m => GLfloat -> m ()
glClearDepthf = ffifloatIOV glClearDepthfFunPtr
glClearDepthfFunPtr :: FunPtr (GLfloat -> IO ())
glClearDepthfFunPtr = unsafePerformIO (getProcAddress "glClearDepthf")
{-# NOINLINE glClearDepthfFunPtr #-}
-- | Usage: @'glCreateShaderProgramv' type count strings@
--
-- The length of @strings@ should be @count@.
glCreateShaderProgramv :: MonadIO m => GLenum -> GLsizei -> Ptr (Ptr GLchar) -> m GLuint
glCreateShaderProgramv = ffienumsizeiPtrPtrcharIOuint glCreateShaderProgramvFunPtr
glCreateShaderProgramvFunPtr :: FunPtr (GLenum -> GLsizei -> Ptr (Ptr GLchar) -> IO GLuint)
glCreateShaderProgramvFunPtr = unsafePerformIO (getProcAddress "glCreateShaderProgramv")
{-# NOINLINE glCreateShaderProgramvFunPtr #-}
-- | Usage: @'glDeleteProgramPipelines' n pipelines@
--
-- The length of @pipelines@ should be @n@.
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glDeleteProgramPipelines.xhtml>
glDeleteProgramPipelines :: MonadIO m => GLsizei -> Ptr GLuint -> m ()
glDeleteProgramPipelines = ffisizeiPtruintIOV glDeleteProgramPipelinesFunPtr
glDeleteProgramPipelinesFunPtr :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
glDeleteProgramPipelinesFunPtr = unsafePerformIO (getProcAddress "glDeleteProgramPipelines")
{-# NOINLINE glDeleteProgramPipelinesFunPtr #-}
-- | Usage: @'glDepthRangeArrayv' first count v@
--
-- The length of @v@ should be @COMPSIZE(count)@.
glDepthRangeArrayv :: MonadIO m => GLuint -> GLsizei -> Ptr GLdouble -> m ()
glDepthRangeArrayv = ffiuintsizeiPtrdoubleIOV glDepthRangeArrayvFunPtr
glDepthRangeArrayvFunPtr :: FunPtr (GLuint -> GLsizei -> Ptr GLdouble -> IO ())
glDepthRangeArrayvFunPtr = unsafePerformIO (getProcAddress "glDepthRangeArrayv")
{-# NOINLINE glDepthRangeArrayvFunPtr #-}
-- | Usage: @'glDepthRangeIndexed' index n f@
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glDepthRangeIndexed.xhtml>
glDepthRangeIndexed :: MonadIO m => GLuint -> GLdouble -> GLdouble -> m ()
glDepthRangeIndexed = ffiuintdoubledoubleIOV glDepthRangeIndexedFunPtr
glDepthRangeIndexedFunPtr :: FunPtr (GLuint -> GLdouble -> GLdouble -> IO ())
glDepthRangeIndexedFunPtr = unsafePerformIO (getProcAddress "glDepthRangeIndexed")
{-# NOINLINE glDepthRangeIndexedFunPtr #-}
-- | Usage: @'glDepthRangef' n f@
glDepthRangef :: MonadIO m => GLfloat -> GLfloat -> m ()
glDepthRangef = ffifloatfloatIOV glDepthRangefFunPtr
glDepthRangefFunPtr :: FunPtr (GLfloat -> GLfloat -> IO ())
glDepthRangefFunPtr = unsafePerformIO (getProcAddress "glDepthRangef")
{-# NOINLINE glDepthRangefFunPtr #-}
-- | Usage: @'glGenProgramPipelines' n pipelines@
--
-- The length of @pipelines@ should be @n@.
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glGenProgramPipelines.xhtml>
glGenProgramPipelines :: MonadIO m => GLsizei -> Ptr GLuint -> m ()
glGenProgramPipelines = ffisizeiPtruintIOV glGenProgramPipelinesFunPtr
glGenProgramPipelinesFunPtr :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
glGenProgramPipelinesFunPtr = unsafePerformIO (getProcAddress "glGenProgramPipelines")
{-# NOINLINE glGenProgramPipelinesFunPtr #-}
-- | Usage: @'glGetDoublei_v' target index data@
--
-- The length of @data@ should be @COMPSIZE(target)@.
glGetDoublei_v :: MonadIO m => GLenum -> GLuint -> Ptr GLdouble -> m ()
glGetDoublei_v = ffienumuintPtrdoubleIOV glGetDoublei_vFunPtr
glGetDoublei_vFunPtr :: FunPtr (GLenum -> GLuint -> Ptr GLdouble -> IO ())
glGetDoublei_vFunPtr = unsafePerformIO (getProcAddress "glGetDoublei_v")
{-# NOINLINE glGetDoublei_vFunPtr #-}
-- | Usage: @'glGetFloati_v' target index data@
--
-- The parameter @target@ is a @TypeEnum@.
--
-- The length of @data@ should be @COMPSIZE(target)@.
glGetFloati_v :: MonadIO m => GLenum -> GLuint -> Ptr GLfloat -> m ()
glGetFloati_v = ffienumuintPtrfloatIOV glGetFloati_vFunPtr
glGetFloati_vFunPtr :: FunPtr (GLenum -> GLuint -> Ptr GLfloat -> IO ())
glGetFloati_vFunPtr = unsafePerformIO (getProcAddress "glGetFloati_v")
{-# NOINLINE glGetFloati_vFunPtr #-}
-- | Usage: @'glGetProgramBinary' program bufSize length binaryFormat binary@
--
-- The length of @length@ should be @1@.
--
-- The length of @binaryFormat@ should be @1@.
--
-- The length of @binary@ should be @bufSize@.
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glGetProgramBinary.xhtml>
glGetProgramBinary :: MonadIO m => GLuint -> GLsizei -> Ptr GLsizei -> Ptr GLenum -> Ptr () -> m ()
glGetProgramBinary = ffiuintsizeiPtrsizeiPtrenumPtrVIOV glGetProgramBinaryFunPtr
glGetProgramBinaryFunPtr :: FunPtr (GLuint -> GLsizei -> Ptr GLsizei -> Ptr GLenum -> Ptr () -> IO ())
glGetProgramBinaryFunPtr = unsafePerformIO (getProcAddress "glGetProgramBinary")
{-# NOINLINE glGetProgramBinaryFunPtr #-}
-- | Usage: @'glGetProgramPipelineInfoLog' pipeline bufSize length infoLog@
--
-- The length of @length@ should be @1@.
--
-- The length of @infoLog@ should be @bufSize@.
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glGetProgramPipelineInfoLog.xhtml>
glGetProgramPipelineInfoLog :: MonadIO m => GLuint -> GLsizei -> Ptr GLsizei -> Ptr GLchar -> m ()
glGetProgramPipelineInfoLog = ffiuintsizeiPtrsizeiPtrcharIOV glGetProgramPipelineInfoLogFunPtr
glGetProgramPipelineInfoLogFunPtr :: FunPtr (GLuint -> GLsizei -> Ptr GLsizei -> Ptr GLchar -> IO ())
glGetProgramPipelineInfoLogFunPtr = unsafePerformIO (getProcAddress "glGetProgramPipelineInfoLog")
{-# NOINLINE glGetProgramPipelineInfoLogFunPtr #-}
-- | Usage: @'glGetProgramPipelineiv' pipeline pname params@
--
-- The length of @params@ should be @COMPSIZE(pname)@.
glGetProgramPipelineiv :: MonadIO m => GLuint -> GLenum -> Ptr GLint -> m ()
glGetProgramPipelineiv = ffiuintenumPtrintIOV glGetProgramPipelineivFunPtr
glGetProgramPipelineivFunPtr :: FunPtr (GLuint -> GLenum -> Ptr GLint -> IO ())
glGetProgramPipelineivFunPtr = unsafePerformIO (getProcAddress "glGetProgramPipelineiv")
{-# NOINLINE glGetProgramPipelineivFunPtr #-}
-- | Usage: @'glGetShaderPrecisionFormat' shadertype precisiontype range precision@
--
-- The length of @range@ should be @2@.
--
-- The length of @precision@ should be @2@.
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glGetShaderPrecisionFormat.xhtml>
glGetShaderPrecisionFormat :: MonadIO m => GLenum -> GLenum -> Ptr GLint -> Ptr GLint -> m ()
glGetShaderPrecisionFormat = ffienumenumPtrintPtrintIOV glGetShaderPrecisionFormatFunPtr
glGetShaderPrecisionFormatFunPtr :: FunPtr (GLenum -> GLenum -> Ptr GLint -> Ptr GLint -> IO ())
glGetShaderPrecisionFormatFunPtr = unsafePerformIO (getProcAddress "glGetShaderPrecisionFormat")
{-# NOINLINE glGetShaderPrecisionFormatFunPtr #-}
-- | Usage: @'glGetVertexAttribLdv' index pname params@
--
-- The length of @params@ should be @COMPSIZE(pname)@.
glGetVertexAttribLdv :: MonadIO m => GLuint -> GLenum -> Ptr GLdouble -> m ()
glGetVertexAttribLdv = ffiuintenumPtrdoubleIOV glGetVertexAttribLdvFunPtr
glGetVertexAttribLdvFunPtr :: FunPtr (GLuint -> GLenum -> Ptr GLdouble -> IO ())
glGetVertexAttribLdvFunPtr = unsafePerformIO (getProcAddress "glGetVertexAttribLdv")
{-# NOINLINE glGetVertexAttribLdvFunPtr #-}
-- | Usage: @'glIsProgramPipeline' pipeline@
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glIsProgramPipeline.xhtml>
glIsProgramPipeline :: MonadIO m => GLuint -> m GLboolean
glIsProgramPipeline = ffiuintIOboolean glIsProgramPipelineFunPtr
glIsProgramPipelineFunPtr :: FunPtr (GLuint -> IO GLboolean)
glIsProgramPipelineFunPtr = unsafePerformIO (getProcAddress "glIsProgramPipeline")
{-# NOINLINE glIsProgramPipelineFunPtr #-}
-- | Usage: @'glProgramBinary' program binaryFormat binary length@
--
-- The length of @binary@ should be @length@.
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glProgramBinary.xhtml>
glProgramBinary :: MonadIO m => GLuint -> GLenum -> Ptr () -> GLsizei -> m ()
glProgramBinary = ffiuintenumPtrVsizeiIOV glProgramBinaryFunPtr
glProgramBinaryFunPtr :: FunPtr (GLuint -> GLenum -> Ptr () -> GLsizei -> IO ())
glProgramBinaryFunPtr = unsafePerformIO (getProcAddress "glProgramBinary")
{-# NOINLINE glProgramBinaryFunPtr #-}
-- | Usage: @'glProgramParameteri' program pname value@
--
-- The parameter @pname@ is a @ProgramParameterPName@.
glProgramParameteri :: MonadIO m => GLuint -> GLenum -> GLint -> m ()
glProgramParameteri = ffiuintenumintIOV glProgramParameteriFunPtr
glProgramParameteriFunPtr :: FunPtr (GLuint -> GLenum -> GLint -> IO ())
glProgramParameteriFunPtr = unsafePerformIO (getProcAddress "glProgramParameteri")
{-# NOINLINE glProgramParameteriFunPtr #-}
-- | Usage: @'glProgramUniform1d' program location v0@
glProgramUniform1d :: MonadIO m => GLuint -> GLint -> GLdouble -> m ()
glProgramUniform1d = ffiuintintdoubleIOV glProgramUniform1dFunPtr
glProgramUniform1dFunPtr :: FunPtr (GLuint -> GLint -> GLdouble -> IO ())
glProgramUniform1dFunPtr = unsafePerformIO (getProcAddress "glProgramUniform1d")
{-# NOINLINE glProgramUniform1dFunPtr #-}
-- | Usage: @'glProgramUniform1dv' program location count value@
--
-- The length of @value@ should be @count@.
glProgramUniform1dv :: MonadIO m => GLuint -> GLint -> GLsizei -> Ptr GLdouble -> m ()
glProgramUniform1dv = ffiuintintsizeiPtrdoubleIOV glProgramUniform1dvFunPtr
glProgramUniform1dvFunPtr :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLdouble -> IO ())
glProgramUniform1dvFunPtr = unsafePerformIO (getProcAddress "glProgramUniform1dv")
{-# NOINLINE glProgramUniform1dvFunPtr #-}
-- | Usage: @'glProgramUniform1f' program location v0@
glProgramUniform1f :: MonadIO m => GLuint -> GLint -> GLfloat -> m ()
glProgramUniform1f = ffiuintintfloatIOV glProgramUniform1fFunPtr
glProgramUniform1fFunPtr :: FunPtr (GLuint -> GLint -> GLfloat -> IO ())
glProgramUniform1fFunPtr = unsafePerformIO (getProcAddress "glProgramUniform1f")
{-# NOINLINE glProgramUniform1fFunPtr #-}
-- | Usage: @'glProgramUniform1fv' program location count value@
--
-- The length of @value@ should be @count@.
glProgramUniform1fv :: MonadIO m => GLuint -> GLint -> GLsizei -> Ptr GLfloat -> m ()
glProgramUniform1fv = ffiuintintsizeiPtrfloatIOV glProgramUniform1fvFunPtr
glProgramUniform1fvFunPtr :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLfloat -> IO ())
glProgramUniform1fvFunPtr = unsafePerformIO (getProcAddress "glProgramUniform1fv")
{-# NOINLINE glProgramUniform1fvFunPtr #-}
-- | Usage: @'glProgramUniform1i' program location v0@
glProgramUniform1i :: MonadIO m => GLuint -> GLint -> GLint -> m ()
glProgramUniform1i = ffiuintintintIOV glProgramUniform1iFunPtr
glProgramUniform1iFunPtr :: FunPtr (GLuint -> GLint -> GLint -> IO ())
glProgramUniform1iFunPtr = unsafePerformIO (getProcAddress "glProgramUniform1i")
{-# NOINLINE glProgramUniform1iFunPtr #-}
-- | Usage: @'glProgramUniform1iv' program location count value@
--
-- The length of @value@ should be @count@.
glProgramUniform1iv :: MonadIO m => GLuint -> GLint -> GLsizei -> Ptr GLint -> m ()
glProgramUniform1iv = ffiuintintsizeiPtrintIOV glProgramUniform1ivFunPtr
glProgramUniform1ivFunPtr :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLint -> IO ())
glProgramUniform1ivFunPtr = unsafePerformIO (getProcAddress "glProgramUniform1iv")
{-# NOINLINE glProgramUniform1ivFunPtr #-}
-- | Usage: @'glProgramUniform1ui' program location v0@
glProgramUniform1ui :: MonadIO m => GLuint -> GLint -> GLuint -> m ()
glProgramUniform1ui = ffiuintintuintIOV glProgramUniform1uiFunPtr
glProgramUniform1uiFunPtr :: FunPtr (GLuint -> GLint -> GLuint -> IO ())
glProgramUniform1uiFunPtr = unsafePerformIO (getProcAddress "glProgramUniform1ui")
{-# NOINLINE glProgramUniform1uiFunPtr #-}
-- | Usage: @'glProgramUniform1uiv' program location count value@
--
-- The length of @value@ should be @count@.
glProgramUniform1uiv :: MonadIO m => GLuint -> GLint -> GLsizei -> Ptr GLuint -> m ()
glProgramUniform1uiv = ffiuintintsizeiPtruintIOV glProgramUniform1uivFunPtr
glProgramUniform1uivFunPtr :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLuint -> IO ())
glProgramUniform1uivFunPtr = unsafePerformIO (getProcAddress "glProgramUniform1uiv")
{-# NOINLINE glProgramUniform1uivFunPtr #-}
-- | Usage: @'glProgramUniform2d' program location v0 v1@
glProgramUniform2d :: MonadIO m => GLuint -> GLint -> GLdouble -> GLdouble -> m ()
glProgramUniform2d = ffiuintintdoubledoubleIOV glProgramUniform2dFunPtr
glProgramUniform2dFunPtr :: FunPtr (GLuint -> GLint -> GLdouble -> GLdouble -> IO ())
glProgramUniform2dFunPtr = unsafePerformIO (getProcAddress "glProgramUniform2d")
{-# NOINLINE glProgramUniform2dFunPtr #-}
-- | Usage: @'glProgramUniform2dv' program location count value@
--
-- The length of @value@ should be @count*2@.
glProgramUniform2dv :: MonadIO m => GLuint -> GLint -> GLsizei -> Ptr GLdouble -> m ()
glProgramUniform2dv = ffiuintintsizeiPtrdoubleIOV glProgramUniform2dvFunPtr
glProgramUniform2dvFunPtr :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLdouble -> IO ())
glProgramUniform2dvFunPtr = unsafePerformIO (getProcAddress "glProgramUniform2dv")
{-# NOINLINE glProgramUniform2dvFunPtr #-}
-- | Usage: @'glProgramUniform2f' program location v0 v1@
glProgramUniform2f :: MonadIO m => GLuint -> GLint -> GLfloat -> GLfloat -> m ()
glProgramUniform2f = ffiuintintfloatfloatIOV glProgramUniform2fFunPtr
glProgramUniform2fFunPtr :: FunPtr (GLuint -> GLint -> GLfloat -> GLfloat -> IO ())
glProgramUniform2fFunPtr = unsafePerformIO (getProcAddress "glProgramUniform2f")
{-# NOINLINE glProgramUniform2fFunPtr #-}
-- | Usage: @'glProgramUniform2fv' program location count value@
--
-- The length of @value@ should be @count*2@.
glProgramUniform2fv :: MonadIO m => GLuint -> GLint -> GLsizei -> Ptr GLfloat -> m ()
glProgramUniform2fv = ffiuintintsizeiPtrfloatIOV glProgramUniform2fvFunPtr
glProgramUniform2fvFunPtr :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLfloat -> IO ())
glProgramUniform2fvFunPtr = unsafePerformIO (getProcAddress "glProgramUniform2fv")
{-# NOINLINE glProgramUniform2fvFunPtr #-}
-- | Usage: @'glProgramUniform2i' program location v0 v1@
glProgramUniform2i :: MonadIO m => GLuint -> GLint -> GLint -> GLint -> m ()
glProgramUniform2i = ffiuintintintintIOV glProgramUniform2iFunPtr
glProgramUniform2iFunPtr :: FunPtr (GLuint -> GLint -> GLint -> GLint -> IO ())
glProgramUniform2iFunPtr = unsafePerformIO (getProcAddress "glProgramUniform2i")
{-# NOINLINE glProgramUniform2iFunPtr #-}
-- | Usage: @'glProgramUniform2iv' program location count value@
--
-- The length of @value@ should be @count*2@.
glProgramUniform2iv :: MonadIO m => GLuint -> GLint -> GLsizei -> Ptr GLint -> m ()
glProgramUniform2iv = ffiuintintsizeiPtrintIOV glProgramUniform2ivFunPtr
glProgramUniform2ivFunPtr :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLint -> IO ())
glProgramUniform2ivFunPtr = unsafePerformIO (getProcAddress "glProgramUniform2iv")
{-# NOINLINE glProgramUniform2ivFunPtr #-}
-- | Usage: @'glProgramUniform2ui' program location v0 v1@
glProgramUniform2ui :: MonadIO m => GLuint -> GLint -> GLuint -> GLuint -> m ()
glProgramUniform2ui = ffiuintintuintuintIOV glProgramUniform2uiFunPtr
glProgramUniform2uiFunPtr :: FunPtr (GLuint -> GLint -> GLuint -> GLuint -> IO ())
glProgramUniform2uiFunPtr = unsafePerformIO (getProcAddress "glProgramUniform2ui")
{-# NOINLINE glProgramUniform2uiFunPtr #-}
-- | Usage: @'glProgramUniform2uiv' program location count value@
--
-- The length of @value@ should be @count*2@.
glProgramUniform2uiv :: MonadIO m => GLuint -> GLint -> GLsizei -> Ptr GLuint -> m ()
glProgramUniform2uiv = ffiuintintsizeiPtruintIOV glProgramUniform2uivFunPtr
glProgramUniform2uivFunPtr :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLuint -> IO ())
glProgramUniform2uivFunPtr = unsafePerformIO (getProcAddress "glProgramUniform2uiv")
{-# NOINLINE glProgramUniform2uivFunPtr #-}
-- | Usage: @'glProgramUniform3d' program location v0 v1 v2@
glProgramUniform3d :: MonadIO m => GLuint -> GLint -> GLdouble -> GLdouble -> GLdouble -> m ()
glProgramUniform3d = ffiuintintdoubledoubledoubleIOV glProgramUniform3dFunPtr
glProgramUniform3dFunPtr :: FunPtr (GLuint -> GLint -> GLdouble -> GLdouble -> GLdouble -> IO ())
glProgramUniform3dFunPtr = unsafePerformIO (getProcAddress "glProgramUniform3d")
{-# NOINLINE glProgramUniform3dFunPtr #-}
-- | Usage: @'glProgramUniform3dv' program location count value@
--
-- The length of @value@ should be @count*3@.
glProgramUniform3dv :: MonadIO m => GLuint -> GLint -> GLsizei -> Ptr GLdouble -> m ()
glProgramUniform3dv = ffiuintintsizeiPtrdoubleIOV glProgramUniform3dvFunPtr
glProgramUniform3dvFunPtr :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLdouble -> IO ())
glProgramUniform3dvFunPtr = unsafePerformIO (getProcAddress "glProgramUniform3dv")
{-# NOINLINE glProgramUniform3dvFunPtr #-}
-- | Usage: @'glProgramUniform3f' program location v0 v1 v2@
glProgramUniform3f :: MonadIO m => GLuint -> GLint -> GLfloat -> GLfloat -> GLfloat -> m ()
glProgramUniform3f = ffiuintintfloatfloatfloatIOV glProgramUniform3fFunPtr
glProgramUniform3fFunPtr :: FunPtr (GLuint -> GLint -> GLfloat -> GLfloat -> GLfloat -> IO ())
glProgramUniform3fFunPtr = unsafePerformIO (getProcAddress "glProgramUniform3f")
{-# NOINLINE glProgramUniform3fFunPtr #-}
-- | Usage: @'glProgramUniform3fv' program location count value@
--
-- The length of @value@ should be @count*3@.
glProgramUniform3fv :: MonadIO m => GLuint -> GLint -> GLsizei -> Ptr GLfloat -> m ()
glProgramUniform3fv = ffiuintintsizeiPtrfloatIOV glProgramUniform3fvFunPtr
glProgramUniform3fvFunPtr :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLfloat -> IO ())
glProgramUniform3fvFunPtr = unsafePerformIO (getProcAddress "glProgramUniform3fv")
{-# NOINLINE glProgramUniform3fvFunPtr #-}
-- | Usage: @'glProgramUniform3i' program location v0 v1 v2@
glProgramUniform3i :: MonadIO m => GLuint -> GLint -> GLint -> GLint -> GLint -> m ()
glProgramUniform3i = ffiuintintintintintIOV glProgramUniform3iFunPtr
glProgramUniform3iFunPtr :: FunPtr (GLuint -> GLint -> GLint -> GLint -> GLint -> IO ())
glProgramUniform3iFunPtr = unsafePerformIO (getProcAddress "glProgramUniform3i")
{-# NOINLINE glProgramUniform3iFunPtr #-}
-- | Usage: @'glProgramUniform3iv' program location count value@
--
-- The length of @value@ should be @count*3@.
glProgramUniform3iv :: MonadIO m => GLuint -> GLint -> GLsizei -> Ptr GLint -> m ()
glProgramUniform3iv = ffiuintintsizeiPtrintIOV glProgramUniform3ivFunPtr
glProgramUniform3ivFunPtr :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLint -> IO ())
glProgramUniform3ivFunPtr = unsafePerformIO (getProcAddress "glProgramUniform3iv")
{-# NOINLINE glProgramUniform3ivFunPtr #-}
-- | Usage: @'glProgramUniform3ui' program location v0 v1 v2@
glProgramUniform3ui :: MonadIO m => GLuint -> GLint -> GLuint -> GLuint -> GLuint -> m ()
glProgramUniform3ui = ffiuintintuintuintuintIOV glProgramUniform3uiFunPtr
glProgramUniform3uiFunPtr :: FunPtr (GLuint -> GLint -> GLuint -> GLuint -> GLuint -> IO ())
glProgramUniform3uiFunPtr = unsafePerformIO (getProcAddress "glProgramUniform3ui")
{-# NOINLINE glProgramUniform3uiFunPtr #-}
-- | Usage: @'glProgramUniform3uiv' program location count value@
--
-- The length of @value@ should be @count*3@.
glProgramUniform3uiv :: MonadIO m => GLuint -> GLint -> GLsizei -> Ptr GLuint -> m ()
glProgramUniform3uiv = ffiuintintsizeiPtruintIOV glProgramUniform3uivFunPtr
glProgramUniform3uivFunPtr :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLuint -> IO ())
glProgramUniform3uivFunPtr = unsafePerformIO (getProcAddress "glProgramUniform3uiv")
{-# NOINLINE glProgramUniform3uivFunPtr #-}
-- | Usage: @'glProgramUniform4d' program location v0 v1 v2 v3@
glProgramUniform4d :: MonadIO m => GLuint -> GLint -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> m ()
glProgramUniform4d = ffiuintintdoubledoubledoubledoubleIOV glProgramUniform4dFunPtr
glProgramUniform4dFunPtr :: FunPtr (GLuint -> GLint -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ())
glProgramUniform4dFunPtr = unsafePerformIO (getProcAddress "glProgramUniform4d")
{-# NOINLINE glProgramUniform4dFunPtr #-}
-- | Usage: @'glProgramUniform4dv' program location count value@
--
-- The length of @value@ should be @count*4@.
glProgramUniform4dv :: MonadIO m => GLuint -> GLint -> GLsizei -> Ptr GLdouble -> m ()
glProgramUniform4dv = ffiuintintsizeiPtrdoubleIOV glProgramUniform4dvFunPtr
glProgramUniform4dvFunPtr :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLdouble -> IO ())
glProgramUniform4dvFunPtr = unsafePerformIO (getProcAddress "glProgramUniform4dv")
{-# NOINLINE glProgramUniform4dvFunPtr #-}
-- | Usage: @'glProgramUniform4f' program location v0 v1 v2 v3@
glProgramUniform4f :: MonadIO m => GLuint -> GLint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> m ()
glProgramUniform4f = ffiuintintfloatfloatfloatfloatIOV glProgramUniform4fFunPtr
glProgramUniform4fFunPtr :: FunPtr (GLuint -> GLint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
glProgramUniform4fFunPtr = unsafePerformIO (getProcAddress "glProgramUniform4f")
{-# NOINLINE glProgramUniform4fFunPtr #-}
-- | Usage: @'glProgramUniform4fv' program location count value@
--
-- The length of @value@ should be @count*4@.
glProgramUniform4fv :: MonadIO m => GLuint -> GLint -> GLsizei -> Ptr GLfloat -> m ()
glProgramUniform4fv = ffiuintintsizeiPtrfloatIOV glProgramUniform4fvFunPtr
glProgramUniform4fvFunPtr :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLfloat -> IO ())
glProgramUniform4fvFunPtr = unsafePerformIO (getProcAddress "glProgramUniform4fv")
{-# NOINLINE glProgramUniform4fvFunPtr #-}
-- | Usage: @'glProgramUniform4i' program location v0 v1 v2 v3@
glProgramUniform4i :: MonadIO m => GLuint -> GLint -> GLint -> GLint -> GLint -> GLint -> m ()
glProgramUniform4i = ffiuintintintintintintIOV glProgramUniform4iFunPtr
glProgramUniform4iFunPtr :: FunPtr (GLuint -> GLint -> GLint -> GLint -> GLint -> GLint -> IO ())
glProgramUniform4iFunPtr = unsafePerformIO (getProcAddress "glProgramUniform4i")
{-# NOINLINE glProgramUniform4iFunPtr #-}
-- | Usage: @'glProgramUniform4iv' program location count value@
--
-- The length of @value@ should be @count*4@.
glProgramUniform4iv :: MonadIO m => GLuint -> GLint -> GLsizei -> Ptr GLint -> m ()
glProgramUniform4iv = ffiuintintsizeiPtrintIOV glProgramUniform4ivFunPtr
glProgramUniform4ivFunPtr :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLint -> IO ())
glProgramUniform4ivFunPtr = unsafePerformIO (getProcAddress "glProgramUniform4iv")
{-# NOINLINE glProgramUniform4ivFunPtr #-}
-- | Usage: @'glProgramUniform4ui' program location v0 v1 v2 v3@
glProgramUniform4ui :: MonadIO m => GLuint -> GLint -> GLuint -> GLuint -> GLuint -> GLuint -> m ()
glProgramUniform4ui = ffiuintintuintuintuintuintIOV glProgramUniform4uiFunPtr
glProgramUniform4uiFunPtr :: FunPtr (GLuint -> GLint -> GLuint -> GLuint -> GLuint -> GLuint -> IO ())
glProgramUniform4uiFunPtr = unsafePerformIO (getProcAddress "glProgramUniform4ui")
{-# NOINLINE glProgramUniform4uiFunPtr #-}
-- | Usage: @'glProgramUniform4uiv' program location count value@
--
-- The length of @value@ should be @count*4@.
glProgramUniform4uiv :: MonadIO m => GLuint -> GLint -> GLsizei -> Ptr GLuint -> m ()
glProgramUniform4uiv = ffiuintintsizeiPtruintIOV glProgramUniform4uivFunPtr
glProgramUniform4uivFunPtr :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLuint -> IO ())
glProgramUniform4uivFunPtr = unsafePerformIO (getProcAddress "glProgramUniform4uiv")
{-# NOINLINE glProgramUniform4uivFunPtr #-}
-- | Usage: @'glProgramUniformMatrix2dv' program location count transpose value@
--
-- The parameter @transpose@ is a @Boolean@, one of: 'Graphics.GL.Internal.Shared.GL_FALSE', 'Graphics.GL.Internal.Shared.GL_TRUE'.
--
-- The length of @value@ should be @count*4@.
glProgramUniformMatrix2dv :: MonadIO m => GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLdouble -> m ()
glProgramUniformMatrix2dv = ffiuintintsizeibooleanPtrdoubleIOV glProgramUniformMatrix2dvFunPtr
glProgramUniformMatrix2dvFunPtr :: FunPtr (GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLdouble -> IO ())
glProgramUniformMatrix2dvFunPtr = unsafePerformIO (getProcAddress "glProgramUniformMatrix2dv")
{-# NOINLINE glProgramUniformMatrix2dvFunPtr #-}
-- | Usage: @'glProgramUniformMatrix2fv' program location count transpose value@
--
-- The parameter @transpose@ is a @Boolean@, one of: 'Graphics.GL.Internal.Shared.GL_FALSE', 'Graphics.GL.Internal.Shared.GL_TRUE'.
--
-- The length of @value@ should be @count*4@.
glProgramUniformMatrix2fv :: MonadIO m => GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> m ()
glProgramUniformMatrix2fv = ffiuintintsizeibooleanPtrfloatIOV glProgramUniformMatrix2fvFunPtr
glProgramUniformMatrix2fvFunPtr :: FunPtr (GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ())
glProgramUniformMatrix2fvFunPtr = unsafePerformIO (getProcAddress "glProgramUniformMatrix2fv")
{-# NOINLINE glProgramUniformMatrix2fvFunPtr #-}
-- | Usage: @'glProgramUniformMatrix2x3dv' program location count transpose value@
--
-- The parameter @transpose@ is a @Boolean@, one of: 'Graphics.GL.Internal.Shared.GL_FALSE', 'Graphics.GL.Internal.Shared.GL_TRUE'.
--
-- The length of @value@ should be @count*6@.
glProgramUniformMatrix2x3dv :: MonadIO m => GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLdouble -> m ()
glProgramUniformMatrix2x3dv = ffiuintintsizeibooleanPtrdoubleIOV glProgramUniformMatrix2x3dvFunPtr
glProgramUniformMatrix2x3dvFunPtr :: FunPtr (GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLdouble -> IO ())
glProgramUniformMatrix2x3dvFunPtr = unsafePerformIO (getProcAddress "glProgramUniformMatrix2x3dv")
{-# NOINLINE glProgramUniformMatrix2x3dvFunPtr #-}
-- | Usage: @'glProgramUniformMatrix2x3fv' program location count transpose value@
--
-- The parameter @transpose@ is a @Boolean@, one of: 'Graphics.GL.Internal.Shared.GL_FALSE', 'Graphics.GL.Internal.Shared.GL_TRUE'.
--
-- The length of @value@ should be @count*6@.
glProgramUniformMatrix2x3fv :: MonadIO m => GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> m ()
glProgramUniformMatrix2x3fv = ffiuintintsizeibooleanPtrfloatIOV glProgramUniformMatrix2x3fvFunPtr
glProgramUniformMatrix2x3fvFunPtr :: FunPtr (GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ())
glProgramUniformMatrix2x3fvFunPtr = unsafePerformIO (getProcAddress "glProgramUniformMatrix2x3fv")
{-# NOINLINE glProgramUniformMatrix2x3fvFunPtr #-}
-- | Usage: @'glProgramUniformMatrix2x4dv' program location count transpose value@
--
-- The parameter @transpose@ is a @Boolean@, one of: 'Graphics.GL.Internal.Shared.GL_FALSE', 'Graphics.GL.Internal.Shared.GL_TRUE'.
--
-- The length of @value@ should be @count*8@.
glProgramUniformMatrix2x4dv :: MonadIO m => GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLdouble -> m ()
glProgramUniformMatrix2x4dv = ffiuintintsizeibooleanPtrdoubleIOV glProgramUniformMatrix2x4dvFunPtr
glProgramUniformMatrix2x4dvFunPtr :: FunPtr (GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLdouble -> IO ())
glProgramUniformMatrix2x4dvFunPtr = unsafePerformIO (getProcAddress "glProgramUniformMatrix2x4dv")
{-# NOINLINE glProgramUniformMatrix2x4dvFunPtr #-}
-- | Usage: @'glProgramUniformMatrix2x4fv' program location count transpose value@
--
-- The parameter @transpose@ is a @Boolean@, one of: 'Graphics.GL.Internal.Shared.GL_FALSE', 'Graphics.GL.Internal.Shared.GL_TRUE'.
--
-- The length of @value@ should be @count*8@.
glProgramUniformMatrix2x4fv :: MonadIO m => GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> m ()
glProgramUniformMatrix2x4fv = ffiuintintsizeibooleanPtrfloatIOV glProgramUniformMatrix2x4fvFunPtr
glProgramUniformMatrix2x4fvFunPtr :: FunPtr (GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ())
glProgramUniformMatrix2x4fvFunPtr = unsafePerformIO (getProcAddress "glProgramUniformMatrix2x4fv")
{-# NOINLINE glProgramUniformMatrix2x4fvFunPtr #-}
-- | Usage: @'glProgramUniformMatrix3dv' program location count transpose value@
--
-- The parameter @transpose@ is a @Boolean@, one of: 'Graphics.GL.Internal.Shared.GL_FALSE', 'Graphics.GL.Internal.Shared.GL_TRUE'.
--
-- The length of @value@ should be @count*9@.
glProgramUniformMatrix3dv :: MonadIO m => GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLdouble -> m ()
glProgramUniformMatrix3dv = ffiuintintsizeibooleanPtrdoubleIOV glProgramUniformMatrix3dvFunPtr
glProgramUniformMatrix3dvFunPtr :: FunPtr (GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLdouble -> IO ())
glProgramUniformMatrix3dvFunPtr = unsafePerformIO (getProcAddress "glProgramUniformMatrix3dv")
{-# NOINLINE glProgramUniformMatrix3dvFunPtr #-}
-- | Usage: @'glProgramUniformMatrix3fv' program location count transpose value@
--
-- The parameter @transpose@ is a @Boolean@, one of: 'Graphics.GL.Internal.Shared.GL_FALSE', 'Graphics.GL.Internal.Shared.GL_TRUE'.
--
-- The length of @value@ should be @count*9@.
glProgramUniformMatrix3fv :: MonadIO m => GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> m ()
glProgramUniformMatrix3fv = ffiuintintsizeibooleanPtrfloatIOV glProgramUniformMatrix3fvFunPtr
glProgramUniformMatrix3fvFunPtr :: FunPtr (GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ())
glProgramUniformMatrix3fvFunPtr = unsafePerformIO (getProcAddress "glProgramUniformMatrix3fv")
{-# NOINLINE glProgramUniformMatrix3fvFunPtr #-}
-- | Usage: @'glProgramUniformMatrix3x2dv' program location count transpose value@
--
-- The parameter @transpose@ is a @Boolean@, one of: 'Graphics.GL.Internal.Shared.GL_FALSE', 'Graphics.GL.Internal.Shared.GL_TRUE'.
--
-- The length of @value@ should be @count*6@.
glProgramUniformMatrix3x2dv :: MonadIO m => GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLdouble -> m ()
glProgramUniformMatrix3x2dv = ffiuintintsizeibooleanPtrdoubleIOV glProgramUniformMatrix3x2dvFunPtr
glProgramUniformMatrix3x2dvFunPtr :: FunPtr (GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLdouble -> IO ())
glProgramUniformMatrix3x2dvFunPtr = unsafePerformIO (getProcAddress "glProgramUniformMatrix3x2dv")
{-# NOINLINE glProgramUniformMatrix3x2dvFunPtr #-}
-- | Usage: @'glProgramUniformMatrix3x2fv' program location count transpose value@
--
-- The parameter @transpose@ is a @Boolean@, one of: 'Graphics.GL.Internal.Shared.GL_FALSE', 'Graphics.GL.Internal.Shared.GL_TRUE'.
--
-- The length of @value@ should be @count*6@.
glProgramUniformMatrix3x2fv :: MonadIO m => GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> m ()
glProgramUniformMatrix3x2fv = ffiuintintsizeibooleanPtrfloatIOV glProgramUniformMatrix3x2fvFunPtr
glProgramUniformMatrix3x2fvFunPtr :: FunPtr (GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ())
glProgramUniformMatrix3x2fvFunPtr = unsafePerformIO (getProcAddress "glProgramUniformMatrix3x2fv")
{-# NOINLINE glProgramUniformMatrix3x2fvFunPtr #-}
-- | Usage: @'glProgramUniformMatrix3x4dv' program location count transpose value@
--
-- The parameter @transpose@ is a @Boolean@, one of: 'Graphics.GL.Internal.Shared.GL_FALSE', 'Graphics.GL.Internal.Shared.GL_TRUE'.
--
-- The length of @value@ should be @count*12@.
glProgramUniformMatrix3x4dv :: MonadIO m => GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLdouble -> m ()
glProgramUniformMatrix3x4dv = ffiuintintsizeibooleanPtrdoubleIOV glProgramUniformMatrix3x4dvFunPtr
glProgramUniformMatrix3x4dvFunPtr :: FunPtr (GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLdouble -> IO ())
glProgramUniformMatrix3x4dvFunPtr = unsafePerformIO (getProcAddress "glProgramUniformMatrix3x4dv")
{-# NOINLINE glProgramUniformMatrix3x4dvFunPtr #-}
-- | Usage: @'glProgramUniformMatrix3x4fv' program location count transpose value@
--
-- The parameter @transpose@ is a @Boolean@, one of: 'Graphics.GL.Internal.Shared.GL_FALSE', 'Graphics.GL.Internal.Shared.GL_TRUE'.
--
-- The length of @value@ should be @count*12@.
glProgramUniformMatrix3x4fv :: MonadIO m => GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> m ()
glProgramUniformMatrix3x4fv = ffiuintintsizeibooleanPtrfloatIOV glProgramUniformMatrix3x4fvFunPtr
glProgramUniformMatrix3x4fvFunPtr :: FunPtr (GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ())
glProgramUniformMatrix3x4fvFunPtr = unsafePerformIO (getProcAddress "glProgramUniformMatrix3x4fv")
{-# NOINLINE glProgramUniformMatrix3x4fvFunPtr #-}
-- | Usage: @'glProgramUniformMatrix4dv' program location count transpose value@
--
-- The parameter @transpose@ is a @Boolean@, one of: 'Graphics.GL.Internal.Shared.GL_FALSE', 'Graphics.GL.Internal.Shared.GL_TRUE'.
--
-- The length of @value@ should be @count*16@.
glProgramUniformMatrix4dv :: MonadIO m => GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLdouble -> m ()
glProgramUniformMatrix4dv = ffiuintintsizeibooleanPtrdoubleIOV glProgramUniformMatrix4dvFunPtr
glProgramUniformMatrix4dvFunPtr :: FunPtr (GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLdouble -> IO ())
glProgramUniformMatrix4dvFunPtr = unsafePerformIO (getProcAddress "glProgramUniformMatrix4dv")
{-# NOINLINE glProgramUniformMatrix4dvFunPtr #-}
-- | Usage: @'glProgramUniformMatrix4fv' program location count transpose value@
--
-- The parameter @transpose@ is a @Boolean@, one of: 'Graphics.GL.Internal.Shared.GL_FALSE', 'Graphics.GL.Internal.Shared.GL_TRUE'.
--
-- The length of @value@ should be @count*16@.
glProgramUniformMatrix4fv :: MonadIO m => GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> m ()
glProgramUniformMatrix4fv = ffiuintintsizeibooleanPtrfloatIOV glProgramUniformMatrix4fvFunPtr
glProgramUniformMatrix4fvFunPtr :: FunPtr (GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ())
glProgramUniformMatrix4fvFunPtr = unsafePerformIO (getProcAddress "glProgramUniformMatrix4fv")
{-# NOINLINE glProgramUniformMatrix4fvFunPtr #-}
-- | Usage: @'glProgramUniformMatrix4x2dv' program location count transpose value@
--
-- The parameter @transpose@ is a @Boolean@, one of: 'Graphics.GL.Internal.Shared.GL_FALSE', 'Graphics.GL.Internal.Shared.GL_TRUE'.
--
-- The length of @value@ should be @count*8@.
glProgramUniformMatrix4x2dv :: MonadIO m => GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLdouble -> m ()
glProgramUniformMatrix4x2dv = ffiuintintsizeibooleanPtrdoubleIOV glProgramUniformMatrix4x2dvFunPtr
glProgramUniformMatrix4x2dvFunPtr :: FunPtr (GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLdouble -> IO ())
glProgramUniformMatrix4x2dvFunPtr = unsafePerformIO (getProcAddress "glProgramUniformMatrix4x2dv")
{-# NOINLINE glProgramUniformMatrix4x2dvFunPtr #-}
-- | Usage: @'glProgramUniformMatrix4x2fv' program location count transpose value@
--
-- The parameter @transpose@ is a @Boolean@, one of: 'Graphics.GL.Internal.Shared.GL_FALSE', 'Graphics.GL.Internal.Shared.GL_TRUE'.
--
-- The length of @value@ should be @count*8@.
glProgramUniformMatrix4x2fv :: MonadIO m => GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> m ()
glProgramUniformMatrix4x2fv = ffiuintintsizeibooleanPtrfloatIOV glProgramUniformMatrix4x2fvFunPtr
glProgramUniformMatrix4x2fvFunPtr :: FunPtr (GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ())
glProgramUniformMatrix4x2fvFunPtr = unsafePerformIO (getProcAddress "glProgramUniformMatrix4x2fv")
{-# NOINLINE glProgramUniformMatrix4x2fvFunPtr #-}
-- | Usage: @'glProgramUniformMatrix4x3dv' program location count transpose value@
--
-- The parameter @transpose@ is a @Boolean@, one of: 'Graphics.GL.Internal.Shared.GL_FALSE', 'Graphics.GL.Internal.Shared.GL_TRUE'.
--
-- The length of @value@ should be @count*12@.
glProgramUniformMatrix4x3dv :: MonadIO m => GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLdouble -> m ()
glProgramUniformMatrix4x3dv = ffiuintintsizeibooleanPtrdoubleIOV glProgramUniformMatrix4x3dvFunPtr
glProgramUniformMatrix4x3dvFunPtr :: FunPtr (GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLdouble -> IO ())
glProgramUniformMatrix4x3dvFunPtr = unsafePerformIO (getProcAddress "glProgramUniformMatrix4x3dv")
{-# NOINLINE glProgramUniformMatrix4x3dvFunPtr #-}
-- | Usage: @'glProgramUniformMatrix4x3fv' program location count transpose value@
--
-- The parameter @transpose@ is a @Boolean@, one of: 'Graphics.GL.Internal.Shared.GL_FALSE', 'Graphics.GL.Internal.Shared.GL_TRUE'.
--
-- The length of @value@ should be @count*12@.
glProgramUniformMatrix4x3fv :: MonadIO m => GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> m ()
glProgramUniformMatrix4x3fv = ffiuintintsizeibooleanPtrfloatIOV glProgramUniformMatrix4x3fvFunPtr
glProgramUniformMatrix4x3fvFunPtr :: FunPtr (GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ())
glProgramUniformMatrix4x3fvFunPtr = unsafePerformIO (getProcAddress "glProgramUniformMatrix4x3fv")
{-# NOINLINE glProgramUniformMatrix4x3fvFunPtr #-}
-- | Usage: @'glReleaseShaderCompiler'@
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glReleaseShaderCompiler.xhtml>
glReleaseShaderCompiler :: MonadIO m => m ()
glReleaseShaderCompiler = ffiIOV glReleaseShaderCompilerFunPtr
glReleaseShaderCompilerFunPtr :: FunPtr (IO ())
glReleaseShaderCompilerFunPtr = unsafePerformIO (getProcAddress "glReleaseShaderCompiler")
{-# NOINLINE glReleaseShaderCompilerFunPtr #-}
-- | Usage: @'glScissorArrayv' first count v@
--
-- The length of @v@ should be @COMPSIZE(count)@.
glScissorArrayv :: MonadIO m => GLuint -> GLsizei -> Ptr GLint -> m ()
glScissorArrayv = ffiuintsizeiPtrintIOV glScissorArrayvFunPtr
glScissorArrayvFunPtr :: FunPtr (GLuint -> GLsizei -> Ptr GLint -> IO ())
glScissorArrayvFunPtr = unsafePerformIO (getProcAddress "glScissorArrayv")
{-# NOINLINE glScissorArrayvFunPtr #-}
-- | Usage: @'glScissorIndexed' index left bottom width height@
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glScissorIndexed.xhtml>
glScissorIndexed :: MonadIO m => GLuint -> GLint -> GLint -> GLsizei -> GLsizei -> m ()
glScissorIndexed = ffiuintintintsizeisizeiIOV glScissorIndexedFunPtr
glScissorIndexedFunPtr :: FunPtr (GLuint -> GLint -> GLint -> GLsizei -> GLsizei -> IO ())
glScissorIndexedFunPtr = unsafePerformIO (getProcAddress "glScissorIndexed")
{-# NOINLINE glScissorIndexedFunPtr #-}
-- | Usage: @'glScissorIndexedv' index v@
--
-- The length of @v@ should be @4@.
glScissorIndexedv :: MonadIO m => GLuint -> Ptr GLint -> m ()
glScissorIndexedv = ffiuintPtrintIOV glScissorIndexedvFunPtr
glScissorIndexedvFunPtr :: FunPtr (GLuint -> Ptr GLint -> IO ())
glScissorIndexedvFunPtr = unsafePerformIO (getProcAddress "glScissorIndexedv")
{-# NOINLINE glScissorIndexedvFunPtr #-}
-- | Usage: @'glShaderBinary' count shaders binaryformat binary length@
--
-- The length of @shaders@ should be @count@.
--
-- The length of @binary@ should be @length@.
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glShaderBinary.xhtml>
glShaderBinary :: MonadIO m => GLsizei -> Ptr GLuint -> GLenum -> Ptr () -> GLsizei -> m ()
glShaderBinary = ffisizeiPtruintenumPtrVsizeiIOV glShaderBinaryFunPtr
glShaderBinaryFunPtr :: FunPtr (GLsizei -> Ptr GLuint -> GLenum -> Ptr () -> GLsizei -> IO ())
glShaderBinaryFunPtr = unsafePerformIO (getProcAddress "glShaderBinary")
{-# NOINLINE glShaderBinaryFunPtr #-}
-- | Usage: @'glUseProgramStages' pipeline stages program@
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glUseProgramStages.xhtml>
glUseProgramStages :: MonadIO m => GLuint -> GLbitfield -> GLuint -> m ()
glUseProgramStages = ffiuintbitfielduintIOV glUseProgramStagesFunPtr
glUseProgramStagesFunPtr :: FunPtr (GLuint -> GLbitfield -> GLuint -> IO ())
glUseProgramStagesFunPtr = unsafePerformIO (getProcAddress "glUseProgramStages")
{-# NOINLINE glUseProgramStagesFunPtr #-}
-- | Usage: @'glValidateProgramPipeline' pipeline@
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glValidateProgramPipeline.xhtml>
glValidateProgramPipeline :: MonadIO m => GLuint -> m ()
glValidateProgramPipeline = ffiuintIOV glValidateProgramPipelineFunPtr
glValidateProgramPipelineFunPtr :: FunPtr (GLuint -> IO ())
glValidateProgramPipelineFunPtr = unsafePerformIO (getProcAddress "glValidateProgramPipeline")
{-# NOINLINE glValidateProgramPipelineFunPtr #-}
-- | Usage: @'glVertexAttribL1d' index x@
glVertexAttribL1d :: MonadIO m => GLuint -> GLdouble -> m ()
glVertexAttribL1d = ffiuintdoubleIOV glVertexAttribL1dFunPtr
glVertexAttribL1dFunPtr :: FunPtr (GLuint -> GLdouble -> IO ())
glVertexAttribL1dFunPtr = unsafePerformIO (getProcAddress "glVertexAttribL1d")
{-# NOINLINE glVertexAttribL1dFunPtr #-}
-- | Usage: @'glVertexAttribL1dv' index v@
--
-- The length of @v@ should be @1@.
glVertexAttribL1dv :: MonadIO m => GLuint -> Ptr GLdouble -> m ()
glVertexAttribL1dv = ffiuintPtrdoubleIOV glVertexAttribL1dvFunPtr
glVertexAttribL1dvFunPtr :: FunPtr (GLuint -> Ptr GLdouble -> IO ())
glVertexAttribL1dvFunPtr = unsafePerformIO (getProcAddress "glVertexAttribL1dv")
{-# NOINLINE glVertexAttribL1dvFunPtr #-}
-- | Usage: @'glVertexAttribL2d' index x y@
glVertexAttribL2d :: MonadIO m => GLuint -> GLdouble -> GLdouble -> m ()
glVertexAttribL2d = ffiuintdoubledoubleIOV glVertexAttribL2dFunPtr
glVertexAttribL2dFunPtr :: FunPtr (GLuint -> GLdouble -> GLdouble -> IO ())
glVertexAttribL2dFunPtr = unsafePerformIO (getProcAddress "glVertexAttribL2d")
{-# NOINLINE glVertexAttribL2dFunPtr #-}
-- | Usage: @'glVertexAttribL2dv' index v@
--
-- The length of @v@ should be @2@.
glVertexAttribL2dv :: MonadIO m => GLuint -> Ptr GLdouble -> m ()
glVertexAttribL2dv = ffiuintPtrdoubleIOV glVertexAttribL2dvFunPtr
glVertexAttribL2dvFunPtr :: FunPtr (GLuint -> Ptr GLdouble -> IO ())
glVertexAttribL2dvFunPtr = unsafePerformIO (getProcAddress "glVertexAttribL2dv")
{-# NOINLINE glVertexAttribL2dvFunPtr #-}
-- | Usage: @'glVertexAttribL3d' index x y z@
glVertexAttribL3d :: MonadIO m => GLuint -> GLdouble -> GLdouble -> GLdouble -> m ()
glVertexAttribL3d = ffiuintdoubledoubledoubleIOV glVertexAttribL3dFunPtr
glVertexAttribL3dFunPtr :: FunPtr (GLuint -> GLdouble -> GLdouble -> GLdouble -> IO ())
glVertexAttribL3dFunPtr = unsafePerformIO (getProcAddress "glVertexAttribL3d")
{-# NOINLINE glVertexAttribL3dFunPtr #-}
-- | Usage: @'glVertexAttribL3dv' index v@
--
-- The length of @v@ should be @3@.
glVertexAttribL3dv :: MonadIO m => GLuint -> Ptr GLdouble -> m ()
glVertexAttribL3dv = ffiuintPtrdoubleIOV glVertexAttribL3dvFunPtr
glVertexAttribL3dvFunPtr :: FunPtr (GLuint -> Ptr GLdouble -> IO ())
glVertexAttribL3dvFunPtr = unsafePerformIO (getProcAddress "glVertexAttribL3dv")
{-# NOINLINE glVertexAttribL3dvFunPtr #-}
-- | Usage: @'glVertexAttribL4d' index x y z w@
glVertexAttribL4d :: MonadIO m => GLuint -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> m ()
glVertexAttribL4d = ffiuintdoubledoubledoubledoubleIOV glVertexAttribL4dFunPtr
glVertexAttribL4dFunPtr :: FunPtr (GLuint -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ())
glVertexAttribL4dFunPtr = unsafePerformIO (getProcAddress "glVertexAttribL4d")
{-# NOINLINE glVertexAttribL4dFunPtr #-}
-- | Usage: @'glVertexAttribL4dv' index v@
--
-- The length of @v@ should be @4@.
glVertexAttribL4dv :: MonadIO m => GLuint -> Ptr GLdouble -> m ()
glVertexAttribL4dv = ffiuintPtrdoubleIOV glVertexAttribL4dvFunPtr
glVertexAttribL4dvFunPtr :: FunPtr (GLuint -> Ptr GLdouble -> IO ())
glVertexAttribL4dvFunPtr = unsafePerformIO (getProcAddress "glVertexAttribL4dv")
{-# NOINLINE glVertexAttribL4dvFunPtr #-}
-- | Usage: @'glVertexAttribLPointer' index size type stride pointer@
--
-- The length of @pointer@ should be @size@.
glVertexAttribLPointer :: MonadIO m => GLuint -> GLint -> GLenum -> GLsizei -> Ptr () -> m ()
glVertexAttribLPointer = ffiuintintenumsizeiPtrVIOV glVertexAttribLPointerFunPtr
glVertexAttribLPointerFunPtr :: FunPtr (GLuint -> GLint -> GLenum -> GLsizei -> Ptr () -> IO ())
glVertexAttribLPointerFunPtr = unsafePerformIO (getProcAddress "glVertexAttribLPointer")
{-# NOINLINE glVertexAttribLPointerFunPtr #-}
-- | Usage: @'glViewportArrayv' first count v@
--
-- The length of @v@ should be @COMPSIZE(count)@.
glViewportArrayv :: MonadIO m => GLuint -> GLsizei -> Ptr GLfloat -> m ()
glViewportArrayv = ffiuintsizeiPtrfloatIOV glViewportArrayvFunPtr
glViewportArrayvFunPtr :: FunPtr (GLuint -> GLsizei -> Ptr GLfloat -> IO ())
glViewportArrayvFunPtr = unsafePerformIO (getProcAddress "glViewportArrayv")
{-# NOINLINE glViewportArrayvFunPtr #-}
-- | Usage: @'glViewportIndexedf' index x y w h@
glViewportIndexedf :: MonadIO m => GLuint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> m ()
glViewportIndexedf = ffiuintfloatfloatfloatfloatIOV glViewportIndexedfFunPtr
glViewportIndexedfFunPtr :: FunPtr (GLuint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
glViewportIndexedfFunPtr = unsafePerformIO (getProcAddress "glViewportIndexedf")
{-# NOINLINE glViewportIndexedfFunPtr #-}
-- | Usage: @'glViewportIndexedfv' index v@
--
-- The length of @v@ should be @4@.
glViewportIndexedfv :: MonadIO m => GLuint -> Ptr GLfloat -> m ()
glViewportIndexedfv = ffiuintPtrfloatIOV glViewportIndexedfvFunPtr
glViewportIndexedfvFunPtr :: FunPtr (GLuint -> Ptr GLfloat -> IO ())
glViewportIndexedfvFunPtr = unsafePerformIO (getProcAddress "glViewportIndexedfv")
{-# NOINLINE glViewportIndexedfvFunPtr #-}
pattern GL_ACTIVE_PROGRAM = 0x8259
pattern GL_ALL_SHADER_BITS = 0xFFFFFFFF
pattern GL_FIXED = 0x140C
pattern GL_FRAGMENT_SHADER_BIT = 0x00000002
pattern GL_GEOMETRY_SHADER_BIT = 0x00000004
pattern GL_HIGH_FLOAT = 0x8DF2
pattern GL_HIGH_INT = 0x8DF5
pattern GL_IMPLEMENTATION_COLOR_READ_FORMAT = 0x8B9B
pattern GL_IMPLEMENTATION_COLOR_READ_TYPE = 0x8B9A
pattern GL_LAYER_PROVOKING_VERTEX = 0x825E
pattern GL_LOW_FLOAT = 0x8DF0
pattern GL_LOW_INT = 0x8DF3
pattern GL_MAX_FRAGMENT_UNIFORM_VECTORS = 0x8DFD
pattern GL_MAX_VARYING_VECTORS = 0x8DFC
pattern GL_MAX_VERTEX_UNIFORM_VECTORS = 0x8DFB
pattern GL_MAX_VIEWPORTS = 0x825B
pattern GL_MEDIUM_FLOAT = 0x8DF1
pattern GL_MEDIUM_INT = 0x8DF4
pattern GL_NUM_PROGRAM_BINARY_FORMATS = 0x87FE
pattern GL_NUM_SHADER_BINARY_FORMATS = 0x8DF9
pattern GL_PROGRAM_BINARY_FORMATS = 0x87FF
pattern GL_PROGRAM_BINARY_LENGTH = 0x8741
pattern GL_PROGRAM_BINARY_RETRIEVABLE_HINT = 0x8257
pattern GL_PROGRAM_PIPELINE_BINDING = 0x825A
pattern GL_PROGRAM_SEPARABLE = 0x8258
pattern GL_RGB565 = 0x8D62
pattern GL_SHADER_BINARY_FORMATS = 0x8DF8
pattern GL_SHADER_COMPILER = 0x8DFA
pattern GL_TESS_CONTROL_SHADER_BIT = 0x00000008
pattern GL_TESS_EVALUATION_SHADER_BIT = 0x00000010
pattern GL_UNDEFINED_VERTEX = 0x8260
pattern GL_VERTEX_SHADER_BIT = 0x00000001
pattern GL_VIEWPORT_BOUNDS_RANGE = 0x825D
pattern GL_VIEWPORT_INDEX_PROVOKING_VERTEX = 0x825F
pattern GL_VIEWPORT_SUBPIXEL_BITS = 0x825C
-- | Usage: @'glBindImageTexture' unit texture level layered layer access format@
--
-- The parameter @layered@ is a @Boolean@, one of: 'Graphics.GL.Internal.Shared.GL_FALSE', 'Graphics.GL.Internal.Shared.GL_TRUE'.
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glBindImageTexture.xhtml>
glBindImageTexture :: MonadIO m => GLuint -> GLuint -> GLint -> GLboolean -> GLint -> GLenum -> GLenum -> m ()
glBindImageTexture = ffiuintuintintbooleanintenumenumIOV glBindImageTextureFunPtr
glBindImageTextureFunPtr :: FunPtr (GLuint -> GLuint -> GLint -> GLboolean -> GLint -> GLenum -> GLenum -> IO ())
glBindImageTextureFunPtr = unsafePerformIO (getProcAddress "glBindImageTexture")
{-# NOINLINE glBindImageTextureFunPtr #-}
-- | Usage: @'glDrawArraysInstancedBaseInstance' mode first count instancecount baseinstance@
--
-- The parameter @mode@ is a @PrimitiveType@, one of: 'Graphics.GL.Internal.Shared.GL_LINES', 'Graphics.GL.Internal.Shared.GL_LINES_ADJACENCY', 'Graphics.GL.Ext.ARB.GeometryShader4.GL_LINES_ADJACENCY_ARB', 'Graphics.GL.Internal.Shared.GL_LINES_ADJACENCY_EXT', 'Graphics.GL.Internal.Shared.GL_LINE_LOOP', 'Graphics.GL.Internal.Shared.GL_LINE_STRIP', 'Graphics.GL.Internal.Shared.GL_LINE_STRIP_ADJACENCY', 'Graphics.GL.Ext.ARB.GeometryShader4.GL_LINE_STRIP_ADJACENCY_ARB', 'Graphics.GL.Internal.Shared.GL_LINE_STRIP_ADJACENCY_EXT', 'Graphics.GL.Internal.Shared.GL_PATCHES', 'Graphics.GL.Ext.EXT.TessellationShader.GL_PATCHES_EXT', 'Graphics.GL.Internal.Shared.GL_POINTS', 'Graphics.GL.Internal.Shared.GL_POLYGON', 'Graphics.GL.Internal.Shared.GL_QUADS', 'Graphics.GL.Ext.EXT.TessellationShader.GL_QUADS_EXT', 'Graphics.GL.Internal.Shared.GL_QUAD_STRIP', 'Graphics.GL.Internal.Shared.GL_TRIANGLES', 'Graphics.GL.Internal.Shared.GL_TRIANGLES_ADJACENCY', 'Graphics.GL.Ext.ARB.GeometryShader4.GL_TRIANGLES_ADJACENCY_ARB', 'Graphics.GL.Internal.Shared.GL_TRIANGLES_ADJACENCY_EXT', 'Graphics.GL.Internal.Shared.GL_TRIANGLE_FAN', 'Graphics.GL.Internal.Shared.GL_TRIANGLE_STRIP', 'Graphics.GL.Internal.Shared.GL_TRIANGLE_STRIP_ADJACENCY', 'Graphics.GL.Ext.ARB.GeometryShader4.GL_TRIANGLE_STRIP_ADJACENCY_ARB', 'Graphics.GL.Internal.Shared.GL_TRIANGLE_STRIP_ADJACENCY_EXT'.
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glDrawArraysInstancedBaseInstance.xhtml>
glDrawArraysInstancedBaseInstance :: MonadIO m => GLenum -> GLint -> GLsizei -> GLsizei -> GLuint -> m ()
glDrawArraysInstancedBaseInstance = ffienumintsizeisizeiuintIOV glDrawArraysInstancedBaseInstanceFunPtr
glDrawArraysInstancedBaseInstanceFunPtr :: FunPtr (GLenum -> GLint -> GLsizei -> GLsizei -> GLuint -> IO ())
glDrawArraysInstancedBaseInstanceFunPtr = unsafePerformIO (getProcAddress "glDrawArraysInstancedBaseInstance")
{-# NOINLINE glDrawArraysInstancedBaseInstanceFunPtr #-}
-- | Usage: @'glDrawElementsInstancedBaseInstance' mode count type indices instancecount baseinstance@
--
-- The parameter @mode@ is a @PrimitiveType@, one of: 'Graphics.GL.Internal.Shared.GL_LINES', 'Graphics.GL.Internal.Shared.GL_LINES_ADJACENCY', 'Graphics.GL.Ext.ARB.GeometryShader4.GL_LINES_ADJACENCY_ARB', 'Graphics.GL.Internal.Shared.GL_LINES_ADJACENCY_EXT', 'Graphics.GL.Internal.Shared.GL_LINE_LOOP', 'Graphics.GL.Internal.Shared.GL_LINE_STRIP', 'Graphics.GL.Internal.Shared.GL_LINE_STRIP_ADJACENCY', 'Graphics.GL.Ext.ARB.GeometryShader4.GL_LINE_STRIP_ADJACENCY_ARB', 'Graphics.GL.Internal.Shared.GL_LINE_STRIP_ADJACENCY_EXT', 'Graphics.GL.Internal.Shared.GL_PATCHES', 'Graphics.GL.Ext.EXT.TessellationShader.GL_PATCHES_EXT', 'Graphics.GL.Internal.Shared.GL_POINTS', 'Graphics.GL.Internal.Shared.GL_POLYGON', 'Graphics.GL.Internal.Shared.GL_QUADS', 'Graphics.GL.Ext.EXT.TessellationShader.GL_QUADS_EXT', 'Graphics.GL.Internal.Shared.GL_QUAD_STRIP', 'Graphics.GL.Internal.Shared.GL_TRIANGLES', 'Graphics.GL.Internal.Shared.GL_TRIANGLES_ADJACENCY', 'Graphics.GL.Ext.ARB.GeometryShader4.GL_TRIANGLES_ADJACENCY_ARB', 'Graphics.GL.Internal.Shared.GL_TRIANGLES_ADJACENCY_EXT', 'Graphics.GL.Internal.Shared.GL_TRIANGLE_FAN', 'Graphics.GL.Internal.Shared.GL_TRIANGLE_STRIP', 'Graphics.GL.Internal.Shared.GL_TRIANGLE_STRIP_ADJACENCY', 'Graphics.GL.Ext.ARB.GeometryShader4.GL_TRIANGLE_STRIP_ADJACENCY_ARB', 'Graphics.GL.Internal.Shared.GL_TRIANGLE_STRIP_ADJACENCY_EXT'.
--
-- The length of @indices@ should be @count@.
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glDrawElementsInstancedBaseInstance.xhtml>
glDrawElementsInstancedBaseInstance :: MonadIO m => GLenum -> GLsizei -> GLenum -> Ptr () -> GLsizei -> GLuint -> m ()
glDrawElementsInstancedBaseInstance = ffienumsizeienumPtrVsizeiuintIOV glDrawElementsInstancedBaseInstanceFunPtr
glDrawElementsInstancedBaseInstanceFunPtr :: FunPtr (GLenum -> GLsizei -> GLenum -> Ptr () -> GLsizei -> GLuint -> IO ())
glDrawElementsInstancedBaseInstanceFunPtr = unsafePerformIO (getProcAddress "glDrawElementsInstancedBaseInstance")
{-# NOINLINE glDrawElementsInstancedBaseInstanceFunPtr #-}
-- | Usage: @'glDrawElementsInstancedBaseVertexBaseInstance' mode count type indices instancecount basevertex baseinstance@
--
-- The parameter @mode@ is a @PrimitiveType@, one of: 'Graphics.GL.Internal.Shared.GL_LINES', 'Graphics.GL.Internal.Shared.GL_LINES_ADJACENCY', 'Graphics.GL.Ext.ARB.GeometryShader4.GL_LINES_ADJACENCY_ARB', 'Graphics.GL.Internal.Shared.GL_LINES_ADJACENCY_EXT', 'Graphics.GL.Internal.Shared.GL_LINE_LOOP', 'Graphics.GL.Internal.Shared.GL_LINE_STRIP', 'Graphics.GL.Internal.Shared.GL_LINE_STRIP_ADJACENCY', 'Graphics.GL.Ext.ARB.GeometryShader4.GL_LINE_STRIP_ADJACENCY_ARB', 'Graphics.GL.Internal.Shared.GL_LINE_STRIP_ADJACENCY_EXT', 'Graphics.GL.Internal.Shared.GL_PATCHES', 'Graphics.GL.Ext.EXT.TessellationShader.GL_PATCHES_EXT', 'Graphics.GL.Internal.Shared.GL_POINTS', 'Graphics.GL.Internal.Shared.GL_POLYGON', 'Graphics.GL.Internal.Shared.GL_QUADS', 'Graphics.GL.Ext.EXT.TessellationShader.GL_QUADS_EXT', 'Graphics.GL.Internal.Shared.GL_QUAD_STRIP', 'Graphics.GL.Internal.Shared.GL_TRIANGLES', 'Graphics.GL.Internal.Shared.GL_TRIANGLES_ADJACENCY', 'Graphics.GL.Ext.ARB.GeometryShader4.GL_TRIANGLES_ADJACENCY_ARB', 'Graphics.GL.Internal.Shared.GL_TRIANGLES_ADJACENCY_EXT', 'Graphics.GL.Internal.Shared.GL_TRIANGLE_FAN', 'Graphics.GL.Internal.Shared.GL_TRIANGLE_STRIP', 'Graphics.GL.Internal.Shared.GL_TRIANGLE_STRIP_ADJACENCY', 'Graphics.GL.Ext.ARB.GeometryShader4.GL_TRIANGLE_STRIP_ADJACENCY_ARB', 'Graphics.GL.Internal.Shared.GL_TRIANGLE_STRIP_ADJACENCY_EXT'.
--
-- The length of @indices@ should be @count@.
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glDrawElementsInstancedBaseVertexBaseInstance.xhtml>
glDrawElementsInstancedBaseVertexBaseInstance :: MonadIO m => GLenum -> GLsizei -> GLenum -> Ptr () -> GLsizei -> GLint -> GLuint -> m ()
glDrawElementsInstancedBaseVertexBaseInstance = ffienumsizeienumPtrVsizeiintuintIOV glDrawElementsInstancedBaseVertexBaseInstanceFunPtr
glDrawElementsInstancedBaseVertexBaseInstanceFunPtr :: FunPtr (GLenum -> GLsizei -> GLenum -> Ptr () -> GLsizei -> GLint -> GLuint -> IO ())
glDrawElementsInstancedBaseVertexBaseInstanceFunPtr = unsafePerformIO (getProcAddress "glDrawElementsInstancedBaseVertexBaseInstance")
{-# NOINLINE glDrawElementsInstancedBaseVertexBaseInstanceFunPtr #-}
-- | Usage: @'glDrawTransformFeedbackInstanced' mode id instancecount@
--
-- The parameter @mode@ is a @PrimitiveType@, one of: 'Graphics.GL.Internal.Shared.GL_LINES', 'Graphics.GL.Internal.Shared.GL_LINES_ADJACENCY', 'Graphics.GL.Ext.ARB.GeometryShader4.GL_LINES_ADJACENCY_ARB', 'Graphics.GL.Internal.Shared.GL_LINES_ADJACENCY_EXT', 'Graphics.GL.Internal.Shared.GL_LINE_LOOP', 'Graphics.GL.Internal.Shared.GL_LINE_STRIP', 'Graphics.GL.Internal.Shared.GL_LINE_STRIP_ADJACENCY', 'Graphics.GL.Ext.ARB.GeometryShader4.GL_LINE_STRIP_ADJACENCY_ARB', 'Graphics.GL.Internal.Shared.GL_LINE_STRIP_ADJACENCY_EXT', 'Graphics.GL.Internal.Shared.GL_PATCHES', 'Graphics.GL.Ext.EXT.TessellationShader.GL_PATCHES_EXT', 'Graphics.GL.Internal.Shared.GL_POINTS', 'Graphics.GL.Internal.Shared.GL_POLYGON', 'Graphics.GL.Internal.Shared.GL_QUADS', 'Graphics.GL.Ext.EXT.TessellationShader.GL_QUADS_EXT', 'Graphics.GL.Internal.Shared.GL_QUAD_STRIP', 'Graphics.GL.Internal.Shared.GL_TRIANGLES', 'Graphics.GL.Internal.Shared.GL_TRIANGLES_ADJACENCY', 'Graphics.GL.Ext.ARB.GeometryShader4.GL_TRIANGLES_ADJACENCY_ARB', 'Graphics.GL.Internal.Shared.GL_TRIANGLES_ADJACENCY_EXT', 'Graphics.GL.Internal.Shared.GL_TRIANGLE_FAN', 'Graphics.GL.Internal.Shared.GL_TRIANGLE_STRIP', 'Graphics.GL.Internal.Shared.GL_TRIANGLE_STRIP_ADJACENCY', 'Graphics.GL.Ext.ARB.GeometryShader4.GL_TRIANGLE_STRIP_ADJACENCY_ARB', 'Graphics.GL.Internal.Shared.GL_TRIANGLE_STRIP_ADJACENCY_EXT'.
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glDrawTransformFeedbackInstanced.xhtml>
glDrawTransformFeedbackInstanced :: MonadIO m => GLenum -> GLuint -> GLsizei -> m ()
glDrawTransformFeedbackInstanced = ffienumuintsizeiIOV glDrawTransformFeedbackInstancedFunPtr
glDrawTransformFeedbackInstancedFunPtr :: FunPtr (GLenum -> GLuint -> GLsizei -> IO ())
glDrawTransformFeedbackInstancedFunPtr = unsafePerformIO (getProcAddress "glDrawTransformFeedbackInstanced")
{-# NOINLINE glDrawTransformFeedbackInstancedFunPtr #-}
-- | Usage: @'glDrawTransformFeedbackStreamInstanced' mode id stream instancecount@
--
-- The parameter @mode@ is a @PrimitiveType@, one of: 'Graphics.GL.Internal.Shared.GL_LINES', 'Graphics.GL.Internal.Shared.GL_LINES_ADJACENCY', 'Graphics.GL.Ext.ARB.GeometryShader4.GL_LINES_ADJACENCY_ARB', 'Graphics.GL.Internal.Shared.GL_LINES_ADJACENCY_EXT', 'Graphics.GL.Internal.Shared.GL_LINE_LOOP', 'Graphics.GL.Internal.Shared.GL_LINE_STRIP', 'Graphics.GL.Internal.Shared.GL_LINE_STRIP_ADJACENCY', 'Graphics.GL.Ext.ARB.GeometryShader4.GL_LINE_STRIP_ADJACENCY_ARB', 'Graphics.GL.Internal.Shared.GL_LINE_STRIP_ADJACENCY_EXT', 'Graphics.GL.Internal.Shared.GL_PATCHES', 'Graphics.GL.Ext.EXT.TessellationShader.GL_PATCHES_EXT', 'Graphics.GL.Internal.Shared.GL_POINTS', 'Graphics.GL.Internal.Shared.GL_POLYGON', 'Graphics.GL.Internal.Shared.GL_QUADS', 'Graphics.GL.Ext.EXT.TessellationShader.GL_QUADS_EXT', 'Graphics.GL.Internal.Shared.GL_QUAD_STRIP', 'Graphics.GL.Internal.Shared.GL_TRIANGLES', 'Graphics.GL.Internal.Shared.GL_TRIANGLES_ADJACENCY', 'Graphics.GL.Ext.ARB.GeometryShader4.GL_TRIANGLES_ADJACENCY_ARB', 'Graphics.GL.Internal.Shared.GL_TRIANGLES_ADJACENCY_EXT', 'Graphics.GL.Internal.Shared.GL_TRIANGLE_FAN', 'Graphics.GL.Internal.Shared.GL_TRIANGLE_STRIP', 'Graphics.GL.Internal.Shared.GL_TRIANGLE_STRIP_ADJACENCY', 'Graphics.GL.Ext.ARB.GeometryShader4.GL_TRIANGLE_STRIP_ADJACENCY_ARB', 'Graphics.GL.Internal.Shared.GL_TRIANGLE_STRIP_ADJACENCY_EXT'.
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glDrawTransformFeedbackStreamInstanced.xhtml>
glDrawTransformFeedbackStreamInstanced :: MonadIO m => GLenum -> GLuint -> GLuint -> GLsizei -> m ()
glDrawTransformFeedbackStreamInstanced = ffienumuintuintsizeiIOV glDrawTransformFeedbackStreamInstancedFunPtr
glDrawTransformFeedbackStreamInstancedFunPtr :: FunPtr (GLenum -> GLuint -> GLuint -> GLsizei -> IO ())
glDrawTransformFeedbackStreamInstancedFunPtr = unsafePerformIO (getProcAddress "glDrawTransformFeedbackStreamInstanced")
{-# NOINLINE glDrawTransformFeedbackStreamInstancedFunPtr #-}
-- | Usage: @'glGetActiveAtomicCounterBufferiv' program bufferIndex pname params@
--
-- The length of @params@ should be @COMPSIZE(pname)@.
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glGetActiveAtomicCounterBufferiv.xhtml>
glGetActiveAtomicCounterBufferiv :: MonadIO m => GLuint -> GLuint -> GLenum -> Ptr GLint -> m ()
glGetActiveAtomicCounterBufferiv = ffiuintuintenumPtrintIOV glGetActiveAtomicCounterBufferivFunPtr
glGetActiveAtomicCounterBufferivFunPtr :: FunPtr (GLuint -> GLuint -> GLenum -> Ptr GLint -> IO ())
glGetActiveAtomicCounterBufferivFunPtr = unsafePerformIO (getProcAddress "glGetActiveAtomicCounterBufferiv")
{-# NOINLINE glGetActiveAtomicCounterBufferivFunPtr #-}
-- | Usage: @'glGetInternalformativ' target internalformat pname bufSize params@
--
-- The length of @params@ should be @bufSize@.
glGetInternalformativ :: MonadIO m => GLenum -> GLenum -> GLenum -> GLsizei -> Ptr GLint -> m ()
glGetInternalformativ = ffienumenumenumsizeiPtrintIOV glGetInternalformativFunPtr
glGetInternalformativFunPtr :: FunPtr (GLenum -> GLenum -> GLenum -> GLsizei -> Ptr GLint -> IO ())
glGetInternalformativFunPtr = unsafePerformIO (getProcAddress "glGetInternalformativ")
{-# NOINLINE glGetInternalformativFunPtr #-}
-- | Usage: @'glMemoryBarrier' barriers@
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glMemoryBarrier.xhtml>
glMemoryBarrier :: MonadIO m => GLbitfield -> m ()
glMemoryBarrier = ffibitfieldIOV glMemoryBarrierFunPtr
glMemoryBarrierFunPtr :: FunPtr (GLbitfield -> IO ())
glMemoryBarrierFunPtr = unsafePerformIO (getProcAddress "glMemoryBarrier")
{-# NOINLINE glMemoryBarrierFunPtr #-}
-- | Usage: @'glTexStorage1D' target levels internalformat width@
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glTexStorage1D.xhtml>
glTexStorage1D :: MonadIO m => GLenum -> GLsizei -> GLenum -> GLsizei -> m ()
glTexStorage1D = ffienumsizeienumsizeiIOV glTexStorage1DFunPtr
glTexStorage1DFunPtr :: FunPtr (GLenum -> GLsizei -> GLenum -> GLsizei -> IO ())
glTexStorage1DFunPtr = unsafePerformIO (getProcAddress "glTexStorage1D")
{-# NOINLINE glTexStorage1DFunPtr #-}
-- | Usage: @'glTexStorage2D' target levels internalformat width height@
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glTexStorage2D.xhtml>
glTexStorage2D :: MonadIO m => GLenum -> GLsizei -> GLenum -> GLsizei -> GLsizei -> m ()
glTexStorage2D = ffienumsizeienumsizeisizeiIOV glTexStorage2DFunPtr
glTexStorage2DFunPtr :: FunPtr (GLenum -> GLsizei -> GLenum -> GLsizei -> GLsizei -> IO ())
glTexStorage2DFunPtr = unsafePerformIO (getProcAddress "glTexStorage2D")
{-# NOINLINE glTexStorage2DFunPtr #-}
-- | Usage: @'glTexStorage3D' target levels internalformat width height depth@
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glTexStorage3D.xhtml>
glTexStorage3D :: MonadIO m => GLenum -> GLsizei -> GLenum -> GLsizei -> GLsizei -> GLsizei -> m ()
glTexStorage3D = ffienumsizeienumsizeisizeisizeiIOV glTexStorage3DFunPtr
glTexStorage3DFunPtr :: FunPtr (GLenum -> GLsizei -> GLenum -> GLsizei -> GLsizei -> GLsizei -> IO ())
glTexStorage3DFunPtr = unsafePerformIO (getProcAddress "glTexStorage3D")
{-# NOINLINE glTexStorage3DFunPtr #-}
pattern GL_ACTIVE_ATOMIC_COUNTER_BUFFERS = 0x92D9
pattern GL_ALL_BARRIER_BITS = 0xFFFFFFFF
pattern GL_ATOMIC_COUNTER_BARRIER_BIT = 0x00001000
pattern GL_ATOMIC_COUNTER_BUFFER = 0x92C0
pattern GL_ATOMIC_COUNTER_BUFFER_ACTIVE_ATOMIC_COUNTERS = 0x92C5
pattern GL_ATOMIC_COUNTER_BUFFER_ACTIVE_ATOMIC_COUNTER_INDICES = 0x92C6
pattern GL_ATOMIC_COUNTER_BUFFER_BINDING = 0x92C1
pattern GL_ATOMIC_COUNTER_BUFFER_DATA_SIZE = 0x92C4
pattern GL_ATOMIC_COUNTER_BUFFER_REFERENCED_BY_FRAGMENT_SHADER = 0x92CB
pattern GL_ATOMIC_COUNTER_BUFFER_REFERENCED_BY_GEOMETRY_SHADER = 0x92CA
pattern GL_ATOMIC_COUNTER_BUFFER_REFERENCED_BY_TESS_CONTROL_SHADER = 0x92C8
pattern GL_ATOMIC_COUNTER_BUFFER_REFERENCED_BY_TESS_EVALUATION_SHADER = 0x92C9
pattern GL_ATOMIC_COUNTER_BUFFER_REFERENCED_BY_VERTEX_SHADER = 0x92C7
pattern GL_ATOMIC_COUNTER_BUFFER_SIZE = 0x92C3
pattern GL_ATOMIC_COUNTER_BUFFER_START = 0x92C2
pattern GL_BUFFER_UPDATE_BARRIER_BIT = 0x00000200
pattern GL_COMMAND_BARRIER_BIT = 0x00000040
pattern GL_COPY_READ_BUFFER_BINDING = 0x8F36
pattern GL_COPY_WRITE_BUFFER_BINDING = 0x8F37
pattern GL_ELEMENT_ARRAY_BARRIER_BIT = 0x00000002
pattern GL_FRAMEBUFFER_BARRIER_BIT = 0x00000400
pattern GL_IMAGE_1D = 0x904C
pattern GL_IMAGE_1D_ARRAY = 0x9052
pattern GL_IMAGE_2D = 0x904D
pattern GL_IMAGE_2D_ARRAY = 0x9053
pattern GL_IMAGE_2D_MULTISAMPLE = 0x9055
pattern GL_IMAGE_2D_MULTISAMPLE_ARRAY = 0x9056
pattern GL_IMAGE_2D_RECT = 0x904F
pattern GL_IMAGE_3D = 0x904E
pattern GL_IMAGE_BINDING_ACCESS = 0x8F3E
pattern GL_IMAGE_BINDING_FORMAT = 0x906E
pattern GL_IMAGE_BINDING_LAYER = 0x8F3D
pattern GL_IMAGE_BINDING_LAYERED = 0x8F3C
pattern GL_IMAGE_BINDING_LEVEL = 0x8F3B
pattern GL_IMAGE_BINDING_NAME = 0x8F3A
pattern GL_IMAGE_BUFFER = 0x9051
pattern GL_IMAGE_CUBE = 0x9050
pattern GL_IMAGE_CUBE_MAP_ARRAY = 0x9054
pattern GL_IMAGE_FORMAT_COMPATIBILITY_BY_CLASS = 0x90C9
pattern GL_IMAGE_FORMAT_COMPATIBILITY_BY_SIZE = 0x90C8
pattern GL_IMAGE_FORMAT_COMPATIBILITY_TYPE = 0x90C7
pattern GL_INT_IMAGE_1D = 0x9057
pattern GL_INT_IMAGE_1D_ARRAY = 0x905D
pattern GL_INT_IMAGE_2D = 0x9058
pattern GL_INT_IMAGE_2D_ARRAY = 0x905E
pattern GL_INT_IMAGE_2D_MULTISAMPLE = 0x9060
pattern GL_INT_IMAGE_2D_MULTISAMPLE_ARRAY = 0x9061
pattern GL_INT_IMAGE_2D_RECT = 0x905A
pattern GL_INT_IMAGE_3D = 0x9059
pattern GL_INT_IMAGE_BUFFER = 0x905C
pattern GL_INT_IMAGE_CUBE = 0x905B
pattern GL_INT_IMAGE_CUBE_MAP_ARRAY = 0x905F
pattern GL_MAX_ATOMIC_COUNTER_BUFFER_BINDINGS = 0x92DC
pattern GL_MAX_ATOMIC_COUNTER_BUFFER_SIZE = 0x92D8
pattern GL_MAX_COMBINED_ATOMIC_COUNTERS = 0x92D7
pattern GL_MAX_COMBINED_ATOMIC_COUNTER_BUFFERS = 0x92D1
pattern GL_MAX_COMBINED_IMAGE_UNIFORMS = 0x90CF
pattern GL_MAX_COMBINED_IMAGE_UNITS_AND_FRAGMENT_OUTPUTS = 0x8F39
pattern GL_MAX_FRAGMENT_ATOMIC_COUNTERS = 0x92D6
pattern GL_MAX_FRAGMENT_ATOMIC_COUNTER_BUFFERS = 0x92D0
pattern GL_MAX_FRAGMENT_IMAGE_UNIFORMS = 0x90CE
pattern GL_MAX_GEOMETRY_ATOMIC_COUNTERS = 0x92D5
pattern GL_MAX_GEOMETRY_ATOMIC_COUNTER_BUFFERS = 0x92CF
pattern GL_MAX_GEOMETRY_IMAGE_UNIFORMS = 0x90CD
pattern GL_MAX_IMAGE_SAMPLES = 0x906D
pattern GL_MAX_IMAGE_UNITS = 0x8F38
pattern GL_MAX_TESS_CONTROL_ATOMIC_COUNTERS = 0x92D3
pattern GL_MAX_TESS_CONTROL_ATOMIC_COUNTER_BUFFERS = 0x92CD
pattern GL_MAX_TESS_CONTROL_IMAGE_UNIFORMS = 0x90CB
pattern GL_MAX_TESS_EVALUATION_ATOMIC_COUNTERS = 0x92D4
pattern GL_MAX_TESS_EVALUATION_ATOMIC_COUNTER_BUFFERS = 0x92CE
pattern GL_MAX_TESS_EVALUATION_IMAGE_UNIFORMS = 0x90CC
pattern GL_MAX_VERTEX_ATOMIC_COUNTERS = 0x92D2
pattern GL_MAX_VERTEX_ATOMIC_COUNTER_BUFFERS = 0x92CC
pattern GL_MAX_VERTEX_IMAGE_UNIFORMS = 0x90CA
pattern GL_MIN_MAP_BUFFER_ALIGNMENT = 0x90BC
pattern GL_NUM_SAMPLE_COUNTS = 0x9380
pattern GL_PACK_COMPRESSED_BLOCK_DEPTH = 0x912D
pattern GL_PACK_COMPRESSED_BLOCK_HEIGHT = 0x912C
pattern GL_PACK_COMPRESSED_BLOCK_SIZE = 0x912E
pattern GL_PACK_COMPRESSED_BLOCK_WIDTH = 0x912B
pattern GL_PIXEL_BUFFER_BARRIER_BIT = 0x00000080
pattern GL_SHADER_IMAGE_ACCESS_BARRIER_BIT = 0x00000020
pattern GL_TEXTURE_FETCH_BARRIER_BIT = 0x00000008
pattern GL_TEXTURE_IMMUTABLE_FORMAT = 0x912F
pattern GL_TEXTURE_UPDATE_BARRIER_BIT = 0x00000100
pattern GL_TRANSFORM_FEEDBACK_ACTIVE = 0x8E24
pattern GL_TRANSFORM_FEEDBACK_BARRIER_BIT = 0x00000800
pattern GL_TRANSFORM_FEEDBACK_PAUSED = 0x8E23
pattern GL_UNIFORM_ATOMIC_COUNTER_BUFFER_INDEX = 0x92DA
pattern GL_UNIFORM_BARRIER_BIT = 0x00000004
pattern GL_UNPACK_COMPRESSED_BLOCK_DEPTH = 0x9129
pattern GL_UNPACK_COMPRESSED_BLOCK_HEIGHT = 0x9128
pattern GL_UNPACK_COMPRESSED_BLOCK_SIZE = 0x912A
pattern GL_UNPACK_COMPRESSED_BLOCK_WIDTH = 0x9127
pattern GL_UNSIGNED_INT_ATOMIC_COUNTER = 0x92DB
pattern GL_UNSIGNED_INT_IMAGE_1D = 0x9062
pattern GL_UNSIGNED_INT_IMAGE_1D_ARRAY = 0x9068
pattern GL_UNSIGNED_INT_IMAGE_2D = 0x9063
pattern GL_UNSIGNED_INT_IMAGE_2D_ARRAY = 0x9069
pattern GL_UNSIGNED_INT_IMAGE_2D_MULTISAMPLE = 0x906B
pattern GL_UNSIGNED_INT_IMAGE_2D_MULTISAMPLE_ARRAY = 0x906C
pattern GL_UNSIGNED_INT_IMAGE_2D_RECT = 0x9065
pattern GL_UNSIGNED_INT_IMAGE_3D = 0x9064
pattern GL_UNSIGNED_INT_IMAGE_BUFFER = 0x9067
pattern GL_UNSIGNED_INT_IMAGE_CUBE = 0x9066
pattern GL_UNSIGNED_INT_IMAGE_CUBE_MAP_ARRAY = 0x906A
pattern GL_VERTEX_ATTRIB_ARRAY_BARRIER_BIT = 0x00000001
-- | Usage: @'glBindVertexBuffer' bindingindex buffer offset stride@
--
-- The parameter @offset@ is a @BufferOffset@.
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glBindVertexBuffer.xhtml>
glBindVertexBuffer :: MonadIO m => GLuint -> GLuint -> GLintptr -> GLsizei -> m ()
glBindVertexBuffer = ffiuintuintintptrsizeiIOV glBindVertexBufferFunPtr
glBindVertexBufferFunPtr :: FunPtr (GLuint -> GLuint -> GLintptr -> GLsizei -> IO ())
glBindVertexBufferFunPtr = unsafePerformIO (getProcAddress "glBindVertexBuffer")
{-# NOINLINE glBindVertexBufferFunPtr #-}
-- | Usage: @'glClearBufferData' target internalformat format type data@
--
-- The length of @data@ should be @COMPSIZE(format,type)@.
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glClearBufferData.xhtml>
glClearBufferData :: MonadIO m => GLenum -> GLenum -> GLenum -> GLenum -> Ptr () -> m ()
glClearBufferData = ffienumenumenumenumPtrVIOV glClearBufferDataFunPtr
glClearBufferDataFunPtr :: FunPtr (GLenum -> GLenum -> GLenum -> GLenum -> Ptr () -> IO ())
glClearBufferDataFunPtr = unsafePerformIO (getProcAddress "glClearBufferData")
{-# NOINLINE glClearBufferDataFunPtr #-}
-- | Usage: @'glClearBufferSubData' target internalformat offset size format type data@
--
-- The parameter @offset@ is a @BufferOffset@.
--
-- The parameter @size@ is a @BufferSize@.
--
-- The length of @data@ should be @COMPSIZE(format,type)@.
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glClearBufferSubData.xhtml>
glClearBufferSubData :: MonadIO m => GLenum -> GLenum -> GLintptr -> GLsizeiptr -> GLenum -> GLenum -> Ptr () -> m ()
glClearBufferSubData = ffienumenumintptrsizeiptrenumenumPtrVIOV glClearBufferSubDataFunPtr
glClearBufferSubDataFunPtr :: FunPtr (GLenum -> GLenum -> GLintptr -> GLsizeiptr -> GLenum -> GLenum -> Ptr () -> IO ())
glClearBufferSubDataFunPtr = unsafePerformIO (getProcAddress "glClearBufferSubData")
{-# NOINLINE glClearBufferSubDataFunPtr #-}
-- | Usage: @'glCopyImageSubData' srcName srcTarget srcLevel srcX srcY srcZ dstName dstTarget dstLevel dstX dstY dstZ srcWidth srcHeight srcDepth@
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glCopyImageSubData.xhtml>
glCopyImageSubData :: MonadIO m => GLuint -> GLenum -> GLint -> GLint -> GLint -> GLint -> GLuint -> GLenum -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> m ()
glCopyImageSubData = ffiuintenumintintintintuintenumintintintintsizeisizeisizeiIOV glCopyImageSubDataFunPtr
glCopyImageSubDataFunPtr :: FunPtr (GLuint -> GLenum -> GLint -> GLint -> GLint -> GLint -> GLuint -> GLenum -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> IO ())
glCopyImageSubDataFunPtr = unsafePerformIO (getProcAddress "glCopyImageSubData")
{-# NOINLINE glCopyImageSubDataFunPtr #-}
-- | Usage: @'glDebugMessageCallback' callback userParam@
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glDebugMessageCallback.xhtml>
glDebugMessageCallback :: MonadIO m => GLDEBUGPROC -> Ptr () -> m ()
glDebugMessageCallback = ffiDEBUGPROCPtrVIOV glDebugMessageCallbackFunPtr
glDebugMessageCallbackFunPtr :: FunPtr (GLDEBUGPROC -> Ptr () -> IO ())
glDebugMessageCallbackFunPtr = unsafePerformIO (getProcAddress "glDebugMessageCallback")
{-# NOINLINE glDebugMessageCallbackFunPtr #-}
-- | Usage: @'glDebugMessageControl' source type severity count ids enabled@
--
-- The parameter @enabled@ is a @Boolean@, one of: 'Graphics.GL.Internal.Shared.GL_FALSE', 'Graphics.GL.Internal.Shared.GL_TRUE'.
--
-- The length of @ids@ should be @count@.
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glDebugMessageControl.xhtml>
glDebugMessageControl :: MonadIO m => GLenum -> GLenum -> GLenum -> GLsizei -> Ptr GLuint -> GLboolean -> m ()
glDebugMessageControl = ffienumenumenumsizeiPtruintbooleanIOV glDebugMessageControlFunPtr
glDebugMessageControlFunPtr :: FunPtr (GLenum -> GLenum -> GLenum -> GLsizei -> Ptr GLuint -> GLboolean -> IO ())
glDebugMessageControlFunPtr = unsafePerformIO (getProcAddress "glDebugMessageControl")
{-# NOINLINE glDebugMessageControlFunPtr #-}
-- | Usage: @'glDebugMessageInsert' source type id severity length buf@
--
-- The length of @buf@ should be @COMPSIZE(buf,length)@.
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glDebugMessageInsert.xhtml>
glDebugMessageInsert :: MonadIO m => GLenum -> GLenum -> GLuint -> GLenum -> GLsizei -> Ptr GLchar -> m ()
glDebugMessageInsert = ffienumenumuintenumsizeiPtrcharIOV glDebugMessageInsertFunPtr
glDebugMessageInsertFunPtr :: FunPtr (GLenum -> GLenum -> GLuint -> GLenum -> GLsizei -> Ptr GLchar -> IO ())
glDebugMessageInsertFunPtr = unsafePerformIO (getProcAddress "glDebugMessageInsert")
{-# NOINLINE glDebugMessageInsertFunPtr #-}
-- | Usage: @'glDispatchCompute' num_groups_x num_groups_y num_groups_z@
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glDispatchCompute.xhtml>
glDispatchCompute :: MonadIO m => GLuint -> GLuint -> GLuint -> m ()
glDispatchCompute = ffiuintuintuintIOV glDispatchComputeFunPtr
glDispatchComputeFunPtr :: FunPtr (GLuint -> GLuint -> GLuint -> IO ())
glDispatchComputeFunPtr = unsafePerformIO (getProcAddress "glDispatchCompute")
{-# NOINLINE glDispatchComputeFunPtr #-}
-- | Usage: @'glDispatchComputeIndirect' indirect@
--
-- The parameter @indirect@ is a @BufferOffset@.
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glDispatchComputeIndirect.xhtml>
glDispatchComputeIndirect :: MonadIO m => GLintptr -> m ()
glDispatchComputeIndirect = ffiintptrIOV glDispatchComputeIndirectFunPtr
glDispatchComputeIndirectFunPtr :: FunPtr (GLintptr -> IO ())
glDispatchComputeIndirectFunPtr = unsafePerformIO (getProcAddress "glDispatchComputeIndirect")
{-# NOINLINE glDispatchComputeIndirectFunPtr #-}
-- | Usage: @'glFramebufferParameteri' target pname param@
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glFramebufferParameteri.xhtml>
glFramebufferParameteri :: MonadIO m => GLenum -> GLenum -> GLint -> m ()
glFramebufferParameteri = ffienumenumintIOV glFramebufferParameteriFunPtr
glFramebufferParameteriFunPtr :: FunPtr (GLenum -> GLenum -> GLint -> IO ())
glFramebufferParameteriFunPtr = unsafePerformIO (getProcAddress "glFramebufferParameteri")
{-# NOINLINE glFramebufferParameteriFunPtr #-}
-- | Usage: @'glGetDebugMessageLog' count bufSize sources types ids severities lengths messageLog@
--
-- The length of @sources@ should be @count@.
--
-- The length of @types@ should be @count@.
--
-- The length of @ids@ should be @count@.
--
-- The length of @severities@ should be @count@.
--
-- The length of @lengths@ should be @count@.
--
-- The length of @messageLog@ should be @bufSize@.
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glGetDebugMessageLog.xhtml>
glGetDebugMessageLog :: MonadIO m => GLuint -> GLsizei -> Ptr GLenum -> Ptr GLenum -> Ptr GLuint -> Ptr GLenum -> Ptr GLsizei -> Ptr GLchar -> m GLuint
glGetDebugMessageLog = ffiuintsizeiPtrenumPtrenumPtruintPtrenumPtrsizeiPtrcharIOuint glGetDebugMessageLogFunPtr
glGetDebugMessageLogFunPtr :: FunPtr (GLuint -> GLsizei -> Ptr GLenum -> Ptr GLenum -> Ptr GLuint -> Ptr GLenum -> Ptr GLsizei -> Ptr GLchar -> IO GLuint)
glGetDebugMessageLogFunPtr = unsafePerformIO (getProcAddress "glGetDebugMessageLog")
{-# NOINLINE glGetDebugMessageLogFunPtr #-}
-- | Usage: @'glGetFramebufferParameteriv' target pname params@
--
-- The length of @params@ should be @COMPSIZE(pname)@.
glGetFramebufferParameteriv :: MonadIO m => GLenum -> GLenum -> Ptr GLint -> m ()
glGetFramebufferParameteriv = ffienumenumPtrintIOV glGetFramebufferParameterivFunPtr
glGetFramebufferParameterivFunPtr :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
glGetFramebufferParameterivFunPtr = unsafePerformIO (getProcAddress "glGetFramebufferParameteriv")
{-# NOINLINE glGetFramebufferParameterivFunPtr #-}
-- | Usage: @'glGetInternalformati64v' target internalformat pname bufSize params@
--
-- The length of @params@ should be @bufSize@.
glGetInternalformati64v :: MonadIO m => GLenum -> GLenum -> GLenum -> GLsizei -> Ptr GLint64 -> m ()
glGetInternalformati64v = ffienumenumenumsizeiPtrint64IOV glGetInternalformati64vFunPtr
glGetInternalformati64vFunPtr :: FunPtr (GLenum -> GLenum -> GLenum -> GLsizei -> Ptr GLint64 -> IO ())
glGetInternalformati64vFunPtr = unsafePerformIO (getProcAddress "glGetInternalformati64v")
{-# NOINLINE glGetInternalformati64vFunPtr #-}
-- | Usage: @'glGetObjectLabel' identifier name bufSize length label@
--
-- The length of @length@ should be @1@.
--
-- The length of @label@ should be @bufSize@.
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glGetObjectLabel.xhtml>
glGetObjectLabel :: MonadIO m => GLenum -> GLuint -> GLsizei -> Ptr GLsizei -> Ptr GLchar -> m ()
glGetObjectLabel = ffienumuintsizeiPtrsizeiPtrcharIOV glGetObjectLabelFunPtr
glGetObjectLabelFunPtr :: FunPtr (GLenum -> GLuint -> GLsizei -> Ptr GLsizei -> Ptr GLchar -> IO ())
glGetObjectLabelFunPtr = unsafePerformIO (getProcAddress "glGetObjectLabel")
{-# NOINLINE glGetObjectLabelFunPtr #-}
-- | Usage: @'glGetObjectPtrLabel' ptr bufSize length label@
--
-- The length of @length@ should be @1@.
--
-- The length of @label@ should be @bufSize@.
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glGetObjectPtrLabel.xhtml>
glGetObjectPtrLabel :: MonadIO m => Ptr () -> GLsizei -> Ptr GLsizei -> Ptr GLchar -> m ()
glGetObjectPtrLabel = ffiPtrVsizeiPtrsizeiPtrcharIOV glGetObjectPtrLabelFunPtr
glGetObjectPtrLabelFunPtr :: FunPtr (Ptr () -> GLsizei -> Ptr GLsizei -> Ptr GLchar -> IO ())
glGetObjectPtrLabelFunPtr = unsafePerformIO (getProcAddress "glGetObjectPtrLabel")
{-# NOINLINE glGetObjectPtrLabelFunPtr #-}
-- | Usage: @'glGetProgramInterfaceiv' program programInterface pname params@
--
-- The length of @params@ should be @COMPSIZE(pname)@.
glGetProgramInterfaceiv :: MonadIO m => GLuint -> GLenum -> GLenum -> Ptr GLint -> m ()
glGetProgramInterfaceiv = ffiuintenumenumPtrintIOV glGetProgramInterfaceivFunPtr
glGetProgramInterfaceivFunPtr :: FunPtr (GLuint -> GLenum -> GLenum -> Ptr GLint -> IO ())
glGetProgramInterfaceivFunPtr = unsafePerformIO (getProcAddress "glGetProgramInterfaceiv")
{-# NOINLINE glGetProgramInterfaceivFunPtr #-}
-- | Usage: @'glGetProgramResourceIndex' program programInterface name@
--
-- The length of @name@ should be @COMPSIZE(name)@.
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glGetProgramResourceIndex.xhtml>
glGetProgramResourceIndex :: MonadIO m => GLuint -> GLenum -> Ptr GLchar -> m GLuint
glGetProgramResourceIndex = ffiuintenumPtrcharIOuint glGetProgramResourceIndexFunPtr
glGetProgramResourceIndexFunPtr :: FunPtr (GLuint -> GLenum -> Ptr GLchar -> IO GLuint)
glGetProgramResourceIndexFunPtr = unsafePerformIO (getProcAddress "glGetProgramResourceIndex")
{-# NOINLINE glGetProgramResourceIndexFunPtr #-}
-- | Usage: @'glGetProgramResourceLocation' program programInterface name@
--
-- The length of @name@ should be @COMPSIZE(name)@.
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glGetProgramResourceLocation.xhtml>
glGetProgramResourceLocation :: MonadIO m => GLuint -> GLenum -> Ptr GLchar -> m GLint
glGetProgramResourceLocation = ffiuintenumPtrcharIOint glGetProgramResourceLocationFunPtr
glGetProgramResourceLocationFunPtr :: FunPtr (GLuint -> GLenum -> Ptr GLchar -> IO GLint)
glGetProgramResourceLocationFunPtr = unsafePerformIO (getProcAddress "glGetProgramResourceLocation")
{-# NOINLINE glGetProgramResourceLocationFunPtr #-}
-- | Usage: @'glGetProgramResourceLocationIndex' program programInterface name@
--
-- The length of @name@ should be @COMPSIZE(name)@.
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glGetProgramResourceLocationIndex.xhtml>
glGetProgramResourceLocationIndex :: MonadIO m => GLuint -> GLenum -> Ptr GLchar -> m GLint
glGetProgramResourceLocationIndex = ffiuintenumPtrcharIOint glGetProgramResourceLocationIndexFunPtr
glGetProgramResourceLocationIndexFunPtr :: FunPtr (GLuint -> GLenum -> Ptr GLchar -> IO GLint)
glGetProgramResourceLocationIndexFunPtr = unsafePerformIO (getProcAddress "glGetProgramResourceLocationIndex")
{-# NOINLINE glGetProgramResourceLocationIndexFunPtr #-}
-- | Usage: @'glGetProgramResourceName' program programInterface index bufSize length name@
--
-- The length of @length@ should be @1@.
--
-- The length of @name@ should be @bufSize@.
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glGetProgramResourceName.xhtml>
glGetProgramResourceName :: MonadIO m => GLuint -> GLenum -> GLuint -> GLsizei -> Ptr GLsizei -> Ptr GLchar -> m ()
glGetProgramResourceName = ffiuintenumuintsizeiPtrsizeiPtrcharIOV glGetProgramResourceNameFunPtr
glGetProgramResourceNameFunPtr :: FunPtr (GLuint -> GLenum -> GLuint -> GLsizei -> Ptr GLsizei -> Ptr GLchar -> IO ())
glGetProgramResourceNameFunPtr = unsafePerformIO (getProcAddress "glGetProgramResourceName")
{-# NOINLINE glGetProgramResourceNameFunPtr #-}
-- | Usage: @'glGetProgramResourceiv' program programInterface index propCount props bufSize length params@
--
-- The length of @props@ should be @propCount@.
--
-- The length of @length@ should be @1@.
--
-- The length of @params@ should be @bufSize@.
glGetProgramResourceiv :: MonadIO m => GLuint -> GLenum -> GLuint -> GLsizei -> Ptr GLenum -> GLsizei -> Ptr GLsizei -> Ptr GLint -> m ()
glGetProgramResourceiv = ffiuintenumuintsizeiPtrenumsizeiPtrsizeiPtrintIOV glGetProgramResourceivFunPtr
glGetProgramResourceivFunPtr :: FunPtr (GLuint -> GLenum -> GLuint -> GLsizei -> Ptr GLenum -> GLsizei -> Ptr GLsizei -> Ptr GLint -> IO ())
glGetProgramResourceivFunPtr = unsafePerformIO (getProcAddress "glGetProgramResourceiv")
{-# NOINLINE glGetProgramResourceivFunPtr #-}
-- | Usage: @'glInvalidateBufferData' buffer@
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glInvalidateBufferData.xhtml>
glInvalidateBufferData :: MonadIO m => GLuint -> m ()
glInvalidateBufferData = ffiuintIOV glInvalidateBufferDataFunPtr
glInvalidateBufferDataFunPtr :: FunPtr (GLuint -> IO ())
glInvalidateBufferDataFunPtr = unsafePerformIO (getProcAddress "glInvalidateBufferData")
{-# NOINLINE glInvalidateBufferDataFunPtr #-}
-- | Usage: @'glInvalidateBufferSubData' buffer offset length@
--
-- The parameter @offset@ is a @BufferOffset@.
--
-- The parameter @length@ is a @BufferSize@.
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glInvalidateBufferSubData.xhtml>
glInvalidateBufferSubData :: MonadIO m => GLuint -> GLintptr -> GLsizeiptr -> m ()
glInvalidateBufferSubData = ffiuintintptrsizeiptrIOV glInvalidateBufferSubDataFunPtr
glInvalidateBufferSubDataFunPtr :: FunPtr (GLuint -> GLintptr -> GLsizeiptr -> IO ())
glInvalidateBufferSubDataFunPtr = unsafePerformIO (getProcAddress "glInvalidateBufferSubData")
{-# NOINLINE glInvalidateBufferSubDataFunPtr #-}
-- | Usage: @'glInvalidateFramebuffer' target numAttachments attachments@
--
-- The length of @attachments@ should be @numAttachments@.
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glInvalidateFramebuffer.xhtml>
glInvalidateFramebuffer :: MonadIO m => GLenum -> GLsizei -> Ptr GLenum -> m ()
glInvalidateFramebuffer = ffienumsizeiPtrenumIOV glInvalidateFramebufferFunPtr
glInvalidateFramebufferFunPtr :: FunPtr (GLenum -> GLsizei -> Ptr GLenum -> IO ())
glInvalidateFramebufferFunPtr = unsafePerformIO (getProcAddress "glInvalidateFramebuffer")
{-# NOINLINE glInvalidateFramebufferFunPtr #-}
-- | Usage: @'glInvalidateSubFramebuffer' target numAttachments attachments x y width height@
--
-- The length of @attachments@ should be @numAttachments@.
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glInvalidateSubFramebuffer.xhtml>
glInvalidateSubFramebuffer :: MonadIO m => GLenum -> GLsizei -> Ptr GLenum -> GLint -> GLint -> GLsizei -> GLsizei -> m ()
glInvalidateSubFramebuffer = ffienumsizeiPtrenumintintsizeisizeiIOV glInvalidateSubFramebufferFunPtr
glInvalidateSubFramebufferFunPtr :: FunPtr (GLenum -> GLsizei -> Ptr GLenum -> GLint -> GLint -> GLsizei -> GLsizei -> IO ())
glInvalidateSubFramebufferFunPtr = unsafePerformIO (getProcAddress "glInvalidateSubFramebuffer")
{-# NOINLINE glInvalidateSubFramebufferFunPtr #-}
-- | Usage: @'glInvalidateTexImage' texture level@
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glInvalidateTexImage.xhtml>
glInvalidateTexImage :: MonadIO m => GLuint -> GLint -> m ()
glInvalidateTexImage = ffiuintintIOV glInvalidateTexImageFunPtr
glInvalidateTexImageFunPtr :: FunPtr (GLuint -> GLint -> IO ())
glInvalidateTexImageFunPtr = unsafePerformIO (getProcAddress "glInvalidateTexImage")
{-# NOINLINE glInvalidateTexImageFunPtr #-}
-- | Usage: @'glInvalidateTexSubImage' texture level xoffset yoffset zoffset width height depth@
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glInvalidateTexSubImage.xhtml>
glInvalidateTexSubImage :: MonadIO m => GLuint -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> m ()
glInvalidateTexSubImage = ffiuintintintintintsizeisizeisizeiIOV glInvalidateTexSubImageFunPtr
glInvalidateTexSubImageFunPtr :: FunPtr (GLuint -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> IO ())
glInvalidateTexSubImageFunPtr = unsafePerformIO (getProcAddress "glInvalidateTexSubImage")
{-# NOINLINE glInvalidateTexSubImageFunPtr #-}
-- | Usage: @'glMultiDrawArraysIndirect' mode indirect drawcount stride@
--
-- The length of @indirect@ should be @COMPSIZE(drawcount,stride)@.
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glMultiDrawArraysIndirect.xhtml>
glMultiDrawArraysIndirect :: MonadIO m => GLenum -> Ptr () -> GLsizei -> GLsizei -> m ()
glMultiDrawArraysIndirect = ffienumPtrVsizeisizeiIOV glMultiDrawArraysIndirectFunPtr
glMultiDrawArraysIndirectFunPtr :: FunPtr (GLenum -> Ptr () -> GLsizei -> GLsizei -> IO ())
glMultiDrawArraysIndirectFunPtr = unsafePerformIO (getProcAddress "glMultiDrawArraysIndirect")
{-# NOINLINE glMultiDrawArraysIndirectFunPtr #-}
-- | Usage: @'glMultiDrawElementsIndirect' mode type indirect drawcount stride@
--
-- The length of @indirect@ should be @COMPSIZE(drawcount,stride)@.
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glMultiDrawElementsIndirect.xhtml>
glMultiDrawElementsIndirect :: MonadIO m => GLenum -> GLenum -> Ptr () -> GLsizei -> GLsizei -> m ()
glMultiDrawElementsIndirect = ffienumenumPtrVsizeisizeiIOV glMultiDrawElementsIndirectFunPtr
glMultiDrawElementsIndirectFunPtr :: FunPtr (GLenum -> GLenum -> Ptr () -> GLsizei -> GLsizei -> IO ())
glMultiDrawElementsIndirectFunPtr = unsafePerformIO (getProcAddress "glMultiDrawElementsIndirect")
{-# NOINLINE glMultiDrawElementsIndirectFunPtr #-}
-- | Usage: @'glObjectLabel' identifier name length label@
--
-- The length of @label@ should be @COMPSIZE(label,length)@.
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glObjectLabel.xhtml>
glObjectLabel :: MonadIO m => GLenum -> GLuint -> GLsizei -> Ptr GLchar -> m ()
glObjectLabel = ffienumuintsizeiPtrcharIOV glObjectLabelFunPtr
glObjectLabelFunPtr :: FunPtr (GLenum -> GLuint -> GLsizei -> Ptr GLchar -> IO ())
glObjectLabelFunPtr = unsafePerformIO (getProcAddress "glObjectLabel")
{-# NOINLINE glObjectLabelFunPtr #-}
-- | Usage: @'glObjectPtrLabel' ptr length label@
--
-- The length of @label@ should be @COMPSIZE(label,length)@.
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glObjectPtrLabel.xhtml>
glObjectPtrLabel :: MonadIO m => Ptr () -> GLsizei -> Ptr GLchar -> m ()
glObjectPtrLabel = ffiPtrVsizeiPtrcharIOV glObjectPtrLabelFunPtr
glObjectPtrLabelFunPtr :: FunPtr (Ptr () -> GLsizei -> Ptr GLchar -> IO ())
glObjectPtrLabelFunPtr = unsafePerformIO (getProcAddress "glObjectPtrLabel")
{-# NOINLINE glObjectPtrLabelFunPtr #-}
-- | Usage: @'glPopDebugGroup'@
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glPopDebugGroup.xhtml>
glPopDebugGroup :: MonadIO m => m ()
glPopDebugGroup = ffiIOV glPopDebugGroupFunPtr
glPopDebugGroupFunPtr :: FunPtr (IO ())
glPopDebugGroupFunPtr = unsafePerformIO (getProcAddress "glPopDebugGroup")
{-# NOINLINE glPopDebugGroupFunPtr #-}
-- | Usage: @'glPushDebugGroup' source id length message@
--
-- The length of @message@ should be @COMPSIZE(message,length)@.
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glPushDebugGroup.xhtml>
glPushDebugGroup :: MonadIO m => GLenum -> GLuint -> GLsizei -> Ptr GLchar -> m ()
glPushDebugGroup = ffienumuintsizeiPtrcharIOV glPushDebugGroupFunPtr
glPushDebugGroupFunPtr :: FunPtr (GLenum -> GLuint -> GLsizei -> Ptr GLchar -> IO ())
glPushDebugGroupFunPtr = unsafePerformIO (getProcAddress "glPushDebugGroup")
{-# NOINLINE glPushDebugGroupFunPtr #-}
-- | Usage: @'glShaderStorageBlockBinding' program storageBlockIndex storageBlockBinding@
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glShaderStorageBlockBinding.xhtml>
glShaderStorageBlockBinding :: MonadIO m => GLuint -> GLuint -> GLuint -> m ()
glShaderStorageBlockBinding = ffiuintuintuintIOV glShaderStorageBlockBindingFunPtr
glShaderStorageBlockBindingFunPtr :: FunPtr (GLuint -> GLuint -> GLuint -> IO ())
glShaderStorageBlockBindingFunPtr = unsafePerformIO (getProcAddress "glShaderStorageBlockBinding")
{-# NOINLINE glShaderStorageBlockBindingFunPtr #-}
-- | Usage: @'glTexBufferRange' target internalformat buffer offset size@
--
-- The parameter @offset@ is a @BufferOffset@.
--
-- The parameter @size@ is a @BufferSize@.
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glTexBufferRange.xhtml>
glTexBufferRange :: MonadIO m => GLenum -> GLenum -> GLuint -> GLintptr -> GLsizeiptr -> m ()
glTexBufferRange = ffienumenumuintintptrsizeiptrIOV glTexBufferRangeFunPtr
glTexBufferRangeFunPtr :: FunPtr (GLenum -> GLenum -> GLuint -> GLintptr -> GLsizeiptr -> IO ())
glTexBufferRangeFunPtr = unsafePerformIO (getProcAddress "glTexBufferRange")
{-# NOINLINE glTexBufferRangeFunPtr #-}
-- | Usage: @'glTexStorage2DMultisample' target samples internalformat width height fixedsamplelocations@
--
-- The parameter @fixedsamplelocations@ is a @Boolean@, one of: 'Graphics.GL.Internal.Shared.GL_FALSE', 'Graphics.GL.Internal.Shared.GL_TRUE'.
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glTexStorage2DMultisample.xhtml>
glTexStorage2DMultisample :: MonadIO m => GLenum -> GLsizei -> GLenum -> GLsizei -> GLsizei -> GLboolean -> m ()
glTexStorage2DMultisample = ffienumsizeienumsizeisizeibooleanIOV glTexStorage2DMultisampleFunPtr
glTexStorage2DMultisampleFunPtr :: FunPtr (GLenum -> GLsizei -> GLenum -> GLsizei -> GLsizei -> GLboolean -> IO ())
glTexStorage2DMultisampleFunPtr = unsafePerformIO (getProcAddress "glTexStorage2DMultisample")
{-# NOINLINE glTexStorage2DMultisampleFunPtr #-}
-- | Usage: @'glTexStorage3DMultisample' target samples internalformat width height depth fixedsamplelocations@
--
-- The parameter @fixedsamplelocations@ is a @Boolean@, one of: 'Graphics.GL.Internal.Shared.GL_FALSE', 'Graphics.GL.Internal.Shared.GL_TRUE'.
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glTexStorage3DMultisample.xhtml>
glTexStorage3DMultisample :: MonadIO m => GLenum -> GLsizei -> GLenum -> GLsizei -> GLsizei -> GLsizei -> GLboolean -> m ()
glTexStorage3DMultisample = ffienumsizeienumsizeisizeisizeibooleanIOV glTexStorage3DMultisampleFunPtr
glTexStorage3DMultisampleFunPtr :: FunPtr (GLenum -> GLsizei -> GLenum -> GLsizei -> GLsizei -> GLsizei -> GLboolean -> IO ())
glTexStorage3DMultisampleFunPtr = unsafePerformIO (getProcAddress "glTexStorage3DMultisample")
{-# NOINLINE glTexStorage3DMultisampleFunPtr #-}
-- | Usage: @'glTextureView' texture target origtexture internalformat minlevel numlevels minlayer numlayers@
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glTextureView.xhtml>
glTextureView :: MonadIO m => GLuint -> GLenum -> GLuint -> GLenum -> GLuint -> GLuint -> GLuint -> GLuint -> m ()
glTextureView = ffiuintenumuintenumuintuintuintuintIOV glTextureViewFunPtr
glTextureViewFunPtr :: FunPtr (GLuint -> GLenum -> GLuint -> GLenum -> GLuint -> GLuint -> GLuint -> GLuint -> IO ())
glTextureViewFunPtr = unsafePerformIO (getProcAddress "glTextureView")
{-# NOINLINE glTextureViewFunPtr #-}
-- | Usage: @'glVertexAttribBinding' attribindex bindingindex@
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glVertexAttribBinding.xhtml>
glVertexAttribBinding :: MonadIO m => GLuint -> GLuint -> m ()
glVertexAttribBinding = ffiuintuintIOV glVertexAttribBindingFunPtr
glVertexAttribBindingFunPtr :: FunPtr (GLuint -> GLuint -> IO ())
glVertexAttribBindingFunPtr = unsafePerformIO (getProcAddress "glVertexAttribBinding")
{-# NOINLINE glVertexAttribBindingFunPtr #-}
-- | Usage: @'glVertexAttribFormat' attribindex size type normalized relativeoffset@
--
-- The parameter @normalized@ is a @Boolean@, one of: 'Graphics.GL.Internal.Shared.GL_FALSE', 'Graphics.GL.Internal.Shared.GL_TRUE'.
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glVertexAttribFormat.xhtml>
glVertexAttribFormat :: MonadIO m => GLuint -> GLint -> GLenum -> GLboolean -> GLuint -> m ()
glVertexAttribFormat = ffiuintintenumbooleanuintIOV glVertexAttribFormatFunPtr
glVertexAttribFormatFunPtr :: FunPtr (GLuint -> GLint -> GLenum -> GLboolean -> GLuint -> IO ())
glVertexAttribFormatFunPtr = unsafePerformIO (getProcAddress "glVertexAttribFormat")
{-# NOINLINE glVertexAttribFormatFunPtr #-}
-- | Usage: @'glVertexAttribIFormat' attribindex size type relativeoffset@
glVertexAttribIFormat :: MonadIO m => GLuint -> GLint -> GLenum -> GLuint -> m ()
glVertexAttribIFormat = ffiuintintenumuintIOV glVertexAttribIFormatFunPtr
glVertexAttribIFormatFunPtr :: FunPtr (GLuint -> GLint -> GLenum -> GLuint -> IO ())
glVertexAttribIFormatFunPtr = unsafePerformIO (getProcAddress "glVertexAttribIFormat")
{-# NOINLINE glVertexAttribIFormatFunPtr #-}
-- | Usage: @'glVertexAttribLFormat' attribindex size type relativeoffset@
glVertexAttribLFormat :: MonadIO m => GLuint -> GLint -> GLenum -> GLuint -> m ()
glVertexAttribLFormat = ffiuintintenumuintIOV glVertexAttribLFormatFunPtr
glVertexAttribLFormatFunPtr :: FunPtr (GLuint -> GLint -> GLenum -> GLuint -> IO ())
glVertexAttribLFormatFunPtr = unsafePerformIO (getProcAddress "glVertexAttribLFormat")
{-# NOINLINE glVertexAttribLFormatFunPtr #-}
-- | Usage: @'glVertexBindingDivisor' bindingindex divisor@
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glVertexBindingDivisor.xhtml>
glVertexBindingDivisor :: MonadIO m => GLuint -> GLuint -> m ()
glVertexBindingDivisor = ffiuintuintIOV glVertexBindingDivisorFunPtr
glVertexBindingDivisorFunPtr :: FunPtr (GLuint -> GLuint -> IO ())
glVertexBindingDivisorFunPtr = unsafePerformIO (getProcAddress "glVertexBindingDivisor")
{-# NOINLINE glVertexBindingDivisorFunPtr #-}
pattern GL_ACTIVE_RESOURCES = 0x92F5
pattern GL_ACTIVE_VARIABLES = 0x9305
pattern GL_ANY_SAMPLES_PASSED_CONSERVATIVE = 0x8D6A
pattern GL_ARRAY_SIZE = 0x92FB
pattern GL_ARRAY_STRIDE = 0x92FE
pattern GL_ATOMIC_COUNTER_BUFFER_INDEX = 0x9301
pattern GL_ATOMIC_COUNTER_BUFFER_REFERENCED_BY_COMPUTE_SHADER = 0x90ED
pattern GL_AUTO_GENERATE_MIPMAP = 0x8295
pattern GL_BLOCK_INDEX = 0x92FD
pattern GL_BUFFER = 0x82E0
pattern GL_BUFFER_BINDING = 0x9302
pattern GL_BUFFER_DATA_SIZE = 0x9303
pattern GL_BUFFER_VARIABLE = 0x92E5
pattern GL_CAVEAT_SUPPORT = 0x82B8
pattern GL_CLEAR_BUFFER = 0x82B4
pattern GL_COLOR_COMPONENTS = 0x8283
pattern GL_COLOR_ENCODING = 0x8296
pattern GL_COLOR_RENDERABLE = 0x8286
pattern GL_COMPRESSED_R11_EAC = 0x9270
pattern GL_COMPRESSED_RG11_EAC = 0x9272
pattern GL_COMPRESSED_RGB8_ETC2 = 0x9274
pattern GL_COMPRESSED_RGB8_PUNCHTHROUGH_ALPHA1_ETC2 = 0x9276
pattern GL_COMPRESSED_RGBA8_ETC2_EAC = 0x9278
pattern GL_COMPRESSED_SIGNED_R11_EAC = 0x9271
pattern GL_COMPRESSED_SIGNED_RG11_EAC = 0x9273
pattern GL_COMPRESSED_SRGB8_ALPHA8_ETC2_EAC = 0x9279
pattern GL_COMPRESSED_SRGB8_ETC2 = 0x9275
pattern GL_COMPRESSED_SRGB8_PUNCHTHROUGH_ALPHA1_ETC2 = 0x9277
pattern GL_COMPUTE_SHADER = 0x91B9
pattern GL_COMPUTE_SHADER_BIT = 0x00000020
pattern GL_COMPUTE_SUBROUTINE = 0x92ED
pattern GL_COMPUTE_SUBROUTINE_UNIFORM = 0x92F3
pattern GL_COMPUTE_TEXTURE = 0x82A0
pattern GL_COMPUTE_WORK_GROUP_SIZE = 0x8267
pattern GL_CONTEXT_FLAG_DEBUG_BIT = 0x00000002
pattern GL_DEBUG_CALLBACK_FUNCTION = 0x8244
pattern GL_DEBUG_CALLBACK_USER_PARAM = 0x8245
pattern GL_DEBUG_GROUP_STACK_DEPTH = 0x826D
pattern GL_DEBUG_LOGGED_MESSAGES = 0x9145
pattern GL_DEBUG_NEXT_LOGGED_MESSAGE_LENGTH = 0x8243
pattern GL_DEBUG_OUTPUT = 0x92E0
pattern GL_DEBUG_OUTPUT_SYNCHRONOUS = 0x8242
pattern GL_DEBUG_SEVERITY_HIGH = 0x9146
pattern GL_DEBUG_SEVERITY_LOW = 0x9148
pattern GL_DEBUG_SEVERITY_MEDIUM = 0x9147
pattern GL_DEBUG_SEVERITY_NOTIFICATION = 0x826B
pattern GL_DEBUG_SOURCE_API = 0x8246
pattern GL_DEBUG_SOURCE_APPLICATION = 0x824A
pattern GL_DEBUG_SOURCE_OTHER = 0x824B
pattern GL_DEBUG_SOURCE_SHADER_COMPILER = 0x8248
pattern GL_DEBUG_SOURCE_THIRD_PARTY = 0x8249
pattern GL_DEBUG_SOURCE_WINDOW_SYSTEM = 0x8247
pattern GL_DEBUG_TYPE_DEPRECATED_BEHAVIOR = 0x824D
pattern GL_DEBUG_TYPE_ERROR = 0x824C
pattern GL_DEBUG_TYPE_MARKER = 0x8268
pattern GL_DEBUG_TYPE_OTHER = 0x8251
pattern GL_DEBUG_TYPE_PERFORMANCE = 0x8250
pattern GL_DEBUG_TYPE_POP_GROUP = 0x826A
pattern GL_DEBUG_TYPE_PORTABILITY = 0x824F
pattern GL_DEBUG_TYPE_PUSH_GROUP = 0x8269
pattern GL_DEBUG_TYPE_UNDEFINED_BEHAVIOR = 0x824E
pattern GL_DEPTH_COMPONENTS = 0x8284
pattern GL_DEPTH_RENDERABLE = 0x8287
pattern GL_DEPTH_STENCIL_TEXTURE_MODE = 0x90EA
pattern GL_DISPATCH_INDIRECT_BUFFER = 0x90EE
pattern GL_DISPATCH_INDIRECT_BUFFER_BINDING = 0x90EF
pattern GL_FILTER = 0x829A
pattern GL_FRAGMENT_SUBROUTINE = 0x92EC
pattern GL_FRAGMENT_SUBROUTINE_UNIFORM = 0x92F2
pattern GL_FRAGMENT_TEXTURE = 0x829F
pattern GL_FRAMEBUFFER_BLEND = 0x828B
pattern GL_FRAMEBUFFER_DEFAULT_FIXED_SAMPLE_LOCATIONS = 0x9314
pattern GL_FRAMEBUFFER_DEFAULT_HEIGHT = 0x9311
pattern GL_FRAMEBUFFER_DEFAULT_LAYERS = 0x9312
pattern GL_FRAMEBUFFER_DEFAULT_SAMPLES = 0x9313
pattern GL_FRAMEBUFFER_DEFAULT_WIDTH = 0x9310
pattern GL_FRAMEBUFFER_RENDERABLE = 0x8289
pattern GL_FRAMEBUFFER_RENDERABLE_LAYERED = 0x828A
pattern GL_FULL_SUPPORT = 0x82B7
pattern GL_GEOMETRY_SUBROUTINE = 0x92EB
pattern GL_GEOMETRY_SUBROUTINE_UNIFORM = 0x92F1
pattern GL_GEOMETRY_TEXTURE = 0x829E
pattern GL_GET_TEXTURE_IMAGE_FORMAT = 0x8291
pattern GL_GET_TEXTURE_IMAGE_TYPE = 0x8292
pattern GL_IMAGE_CLASS_10_10_10_2 = 0x82C3
pattern GL_IMAGE_CLASS_11_11_10 = 0x82C2
pattern GL_IMAGE_CLASS_1_X_16 = 0x82BE
pattern GL_IMAGE_CLASS_1_X_32 = 0x82BB
pattern GL_IMAGE_CLASS_1_X_8 = 0x82C1
pattern GL_IMAGE_CLASS_2_X_16 = 0x82BD
pattern GL_IMAGE_CLASS_2_X_32 = 0x82BA
pattern GL_IMAGE_CLASS_2_X_8 = 0x82C0
pattern GL_IMAGE_CLASS_4_X_16 = 0x82BC
pattern GL_IMAGE_CLASS_4_X_32 = 0x82B9
pattern GL_IMAGE_CLASS_4_X_8 = 0x82BF
pattern GL_IMAGE_COMPATIBILITY_CLASS = 0x82A8
pattern GL_IMAGE_PIXEL_FORMAT = 0x82A9
pattern GL_IMAGE_PIXEL_TYPE = 0x82AA
pattern GL_IMAGE_TEXEL_SIZE = 0x82A7
pattern GL_INTERNALFORMAT_ALPHA_SIZE = 0x8274
pattern GL_INTERNALFORMAT_ALPHA_TYPE = 0x827B
pattern GL_INTERNALFORMAT_BLUE_SIZE = 0x8273
pattern GL_INTERNALFORMAT_BLUE_TYPE = 0x827A
pattern GL_INTERNALFORMAT_DEPTH_SIZE = 0x8275
pattern GL_INTERNALFORMAT_DEPTH_TYPE = 0x827C
pattern GL_INTERNALFORMAT_GREEN_SIZE = 0x8272
pattern GL_INTERNALFORMAT_GREEN_TYPE = 0x8279
pattern GL_INTERNALFORMAT_PREFERRED = 0x8270
pattern GL_INTERNALFORMAT_RED_SIZE = 0x8271
pattern GL_INTERNALFORMAT_RED_TYPE = 0x8278
pattern GL_INTERNALFORMAT_SHARED_SIZE = 0x8277
pattern GL_INTERNALFORMAT_STENCIL_SIZE = 0x8276
pattern GL_INTERNALFORMAT_STENCIL_TYPE = 0x827D
pattern GL_INTERNALFORMAT_SUPPORTED = 0x826F
pattern GL_IS_PER_PATCH = 0x92E7
pattern GL_IS_ROW_MAJOR = 0x9300
pattern GL_LOCATION = 0x930E
pattern GL_LOCATION_INDEX = 0x930F
pattern GL_MANUAL_GENERATE_MIPMAP = 0x8294
pattern GL_MATRIX_STRIDE = 0x92FF
pattern GL_MAX_COMBINED_COMPUTE_UNIFORM_COMPONENTS = 0x8266
pattern GL_MAX_COMBINED_DIMENSIONS = 0x8282
pattern GL_MAX_COMBINED_SHADER_OUTPUT_RESOURCES = 0x8F39
pattern GL_MAX_COMBINED_SHADER_STORAGE_BLOCKS = 0x90DC
pattern GL_MAX_COMPUTE_ATOMIC_COUNTERS = 0x8265
pattern GL_MAX_COMPUTE_ATOMIC_COUNTER_BUFFERS = 0x8264
pattern GL_MAX_COMPUTE_IMAGE_UNIFORMS = 0x91BD
pattern GL_MAX_COMPUTE_SHADER_STORAGE_BLOCKS = 0x90DB
pattern GL_MAX_COMPUTE_SHARED_MEMORY_SIZE = 0x8262
pattern GL_MAX_COMPUTE_TEXTURE_IMAGE_UNITS = 0x91BC
pattern GL_MAX_COMPUTE_UNIFORM_BLOCKS = 0x91BB
pattern GL_MAX_COMPUTE_UNIFORM_COMPONENTS = 0x8263
pattern GL_MAX_COMPUTE_WORK_GROUP_COUNT = 0x91BE
pattern GL_MAX_COMPUTE_WORK_GROUP_INVOCATIONS = 0x90EB
pattern GL_MAX_COMPUTE_WORK_GROUP_SIZE = 0x91BF
pattern GL_MAX_DEBUG_GROUP_STACK_DEPTH = 0x826C
pattern GL_MAX_DEBUG_LOGGED_MESSAGES = 0x9144
pattern GL_MAX_DEBUG_MESSAGE_LENGTH = 0x9143
pattern GL_MAX_DEPTH = 0x8280
pattern GL_MAX_ELEMENT_INDEX = 0x8D6B
pattern GL_MAX_FRAGMENT_SHADER_STORAGE_BLOCKS = 0x90DA
pattern GL_MAX_FRAMEBUFFER_HEIGHT = 0x9316
pattern GL_MAX_FRAMEBUFFER_LAYERS = 0x9317
pattern GL_MAX_FRAMEBUFFER_SAMPLES = 0x9318
pattern GL_MAX_FRAMEBUFFER_WIDTH = 0x9315
pattern GL_MAX_GEOMETRY_SHADER_STORAGE_BLOCKS = 0x90D7
pattern GL_MAX_HEIGHT = 0x827F
pattern GL_MAX_LABEL_LENGTH = 0x82E8
pattern GL_MAX_LAYERS = 0x8281
pattern GL_MAX_NAME_LENGTH = 0x92F6
pattern GL_MAX_NUM_ACTIVE_VARIABLES = 0x92F7
pattern GL_MAX_NUM_COMPATIBLE_SUBROUTINES = 0x92F8
pattern GL_MAX_SHADER_STORAGE_BLOCK_SIZE = 0x90DE
pattern GL_MAX_SHADER_STORAGE_BUFFER_BINDINGS = 0x90DD
pattern GL_MAX_TESS_CONTROL_SHADER_STORAGE_BLOCKS = 0x90D8
pattern GL_MAX_TESS_EVALUATION_SHADER_STORAGE_BLOCKS = 0x90D9
pattern GL_MAX_UNIFORM_LOCATIONS = 0x826E
pattern GL_MAX_VERTEX_ATTRIB_BINDINGS = 0x82DA
pattern GL_MAX_VERTEX_ATTRIB_RELATIVE_OFFSET = 0x82D9
pattern GL_MAX_VERTEX_SHADER_STORAGE_BLOCKS = 0x90D6
pattern GL_MAX_WIDTH = 0x827E
pattern GL_MIPMAP = 0x8293
pattern GL_NAME_LENGTH = 0x92F9
pattern GL_NUM_ACTIVE_VARIABLES = 0x9304
pattern GL_OFFSET = 0x92FC
pattern GL_PRIMITIVE_RESTART_FIXED_INDEX = 0x8D69
pattern GL_PROGRAM = 0x82E2
pattern GL_PROGRAM_INPUT = 0x92E3
pattern GL_PROGRAM_OUTPUT = 0x92E4
pattern GL_PROGRAM_PIPELINE = 0x82E4
pattern GL_QUERY = 0x82E3
pattern GL_READ_PIXELS = 0x828C
pattern GL_READ_PIXELS_FORMAT = 0x828D
pattern GL_READ_PIXELS_TYPE = 0x828E
pattern GL_REFERENCED_BY_COMPUTE_SHADER = 0x930B
pattern GL_REFERENCED_BY_FRAGMENT_SHADER = 0x930A
pattern GL_REFERENCED_BY_GEOMETRY_SHADER = 0x9309
pattern GL_REFERENCED_BY_TESS_CONTROL_SHADER = 0x9307
pattern GL_REFERENCED_BY_TESS_EVALUATION_SHADER = 0x9308
pattern GL_REFERENCED_BY_VERTEX_SHADER = 0x9306
pattern GL_SAMPLER = 0x82E6
pattern GL_SHADER = 0x82E1
pattern GL_SHADER_IMAGE_ATOMIC = 0x82A6
pattern GL_SHADER_IMAGE_LOAD = 0x82A4
pattern GL_SHADER_IMAGE_STORE = 0x82A5
pattern GL_SHADER_STORAGE_BARRIER_BIT = 0x00002000
pattern GL_SHADER_STORAGE_BLOCK = 0x92E6
pattern GL_SHADER_STORAGE_BUFFER = 0x90D2
pattern GL_SHADER_STORAGE_BUFFER_BINDING = 0x90D3
pattern GL_SHADER_STORAGE_BUFFER_OFFSET_ALIGNMENT = 0x90DF
pattern GL_SHADER_STORAGE_BUFFER_SIZE = 0x90D5
pattern GL_SHADER_STORAGE_BUFFER_START = 0x90D4
pattern GL_SIMULTANEOUS_TEXTURE_AND_DEPTH_TEST = 0x82AC
pattern GL_SIMULTANEOUS_TEXTURE_AND_DEPTH_WRITE = 0x82AE
pattern GL_SIMULTANEOUS_TEXTURE_AND_STENCIL_TEST = 0x82AD
pattern GL_SIMULTANEOUS_TEXTURE_AND_STENCIL_WRITE = 0x82AF
pattern GL_SRGB_READ = 0x8297
pattern GL_SRGB_WRITE = 0x8298
pattern GL_STENCIL_COMPONENTS = 0x8285
pattern GL_STENCIL_RENDERABLE = 0x8288
pattern GL_TESS_CONTROL_SUBROUTINE = 0x92E9
pattern GL_TESS_CONTROL_SUBROUTINE_UNIFORM = 0x92EF
pattern GL_TESS_CONTROL_TEXTURE = 0x829C
pattern GL_TESS_EVALUATION_SUBROUTINE = 0x92EA
pattern GL_TESS_EVALUATION_SUBROUTINE_UNIFORM = 0x92F0
pattern GL_TESS_EVALUATION_TEXTURE = 0x829D
pattern GL_TEXTURE_BUFFER_OFFSET = 0x919D
pattern GL_TEXTURE_BUFFER_OFFSET_ALIGNMENT = 0x919F
pattern GL_TEXTURE_BUFFER_SIZE = 0x919E
pattern GL_TEXTURE_COMPRESSED_BLOCK_HEIGHT = 0x82B2
pattern GL_TEXTURE_COMPRESSED_BLOCK_SIZE = 0x82B3
pattern GL_TEXTURE_COMPRESSED_BLOCK_WIDTH = 0x82B1
pattern GL_TEXTURE_GATHER = 0x82A2
pattern GL_TEXTURE_GATHER_SHADOW = 0x82A3
pattern GL_TEXTURE_IMAGE_FORMAT = 0x828F
pattern GL_TEXTURE_IMAGE_TYPE = 0x8290
pattern GL_TEXTURE_IMMUTABLE_LEVELS = 0x82DF
pattern GL_TEXTURE_SHADOW = 0x82A1
pattern GL_TEXTURE_VIEW = 0x82B5
pattern GL_TEXTURE_VIEW_MIN_LAYER = 0x82DD
pattern GL_TEXTURE_VIEW_MIN_LEVEL = 0x82DB
pattern GL_TEXTURE_VIEW_NUM_LAYERS = 0x82DE
pattern GL_TEXTURE_VIEW_NUM_LEVELS = 0x82DC
pattern GL_TOP_LEVEL_ARRAY_SIZE = 0x930C
pattern GL_TOP_LEVEL_ARRAY_STRIDE = 0x930D
pattern GL_TRANSFORM_FEEDBACK_VARYING = 0x92F4
pattern GL_TYPE = 0x92FA
pattern GL_UNIFORM = 0x92E1
pattern GL_UNIFORM_BLOCK = 0x92E2
pattern GL_UNIFORM_BLOCK_REFERENCED_BY_COMPUTE_SHADER = 0x90EC
pattern GL_VERTEX_ATTRIB_BINDING = 0x82D4
pattern GL_VERTEX_ATTRIB_RELATIVE_OFFSET = 0x82D5
pattern GL_VERTEX_BINDING_BUFFER = 0x8F4F
pattern GL_VERTEX_BINDING_DIVISOR = 0x82D6
pattern GL_VERTEX_BINDING_OFFSET = 0x82D7
pattern GL_VERTEX_BINDING_STRIDE = 0x82D8
pattern GL_VERTEX_SUBROUTINE = 0x92E8
pattern GL_VERTEX_SUBROUTINE_UNIFORM = 0x92EE
pattern GL_VERTEX_TEXTURE = 0x829B
pattern GL_VIEW_CLASS_128_BITS = 0x82C4
pattern GL_VIEW_CLASS_16_BITS = 0x82CA
pattern GL_VIEW_CLASS_24_BITS = 0x82C9
pattern GL_VIEW_CLASS_32_BITS = 0x82C8
pattern GL_VIEW_CLASS_48_BITS = 0x82C7
pattern GL_VIEW_CLASS_64_BITS = 0x82C6
pattern GL_VIEW_CLASS_8_BITS = 0x82CB
pattern GL_VIEW_CLASS_96_BITS = 0x82C5
pattern GL_VIEW_CLASS_BPTC_FLOAT = 0x82D3
pattern GL_VIEW_CLASS_BPTC_UNORM = 0x82D2
pattern GL_VIEW_CLASS_RGTC1_RED = 0x82D0
pattern GL_VIEW_CLASS_RGTC2_RG = 0x82D1
pattern GL_VIEW_CLASS_S3TC_DXT1_RGB = 0x82CC
pattern GL_VIEW_CLASS_S3TC_DXT1_RGBA = 0x82CD
pattern GL_VIEW_CLASS_S3TC_DXT3_RGBA = 0x82CE
pattern GL_VIEW_CLASS_S3TC_DXT5_RGBA = 0x82CF
pattern GL_VIEW_COMPATIBILITY_CLASS = 0x82B6
-- | Usage: @'glBindBuffersBase' target first count buffers@
--
-- The length of @buffers@ should be @count@.
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glBindBuffersBase.xhtml>
glBindBuffersBase :: MonadIO m => GLenum -> GLuint -> GLsizei -> Ptr GLuint -> m ()
glBindBuffersBase = ffienumuintsizeiPtruintIOV glBindBuffersBaseFunPtr
glBindBuffersBaseFunPtr :: FunPtr (GLenum -> GLuint -> GLsizei -> Ptr GLuint -> IO ())
glBindBuffersBaseFunPtr = unsafePerformIO (getProcAddress "glBindBuffersBase")
{-# NOINLINE glBindBuffersBaseFunPtr #-}
-- | Usage: @'glBindBuffersRange' target first count buffers offsets sizes@
--
-- The length of @buffers@ should be @count@.
--
-- The length of @offsets@ should be @count@.
--
-- The length of @sizes@ should be @count@.
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glBindBuffersRange.xhtml>
glBindBuffersRange :: MonadIO m => GLenum -> GLuint -> GLsizei -> Ptr GLuint -> Ptr GLintptr -> Ptr GLsizeiptr -> m ()
glBindBuffersRange = ffienumuintsizeiPtruintPtrintptrPtrsizeiptrIOV glBindBuffersRangeFunPtr
glBindBuffersRangeFunPtr :: FunPtr (GLenum -> GLuint -> GLsizei -> Ptr GLuint -> Ptr GLintptr -> Ptr GLsizeiptr -> IO ())
glBindBuffersRangeFunPtr = unsafePerformIO (getProcAddress "glBindBuffersRange")
{-# NOINLINE glBindBuffersRangeFunPtr #-}
-- | Usage: @'glBindImageTextures' first count textures@
--
-- The length of @textures@ should be @count@.
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glBindImageTextures.xhtml>
glBindImageTextures :: MonadIO m => GLuint -> GLsizei -> Ptr GLuint -> m ()
glBindImageTextures = ffiuintsizeiPtruintIOV glBindImageTexturesFunPtr
glBindImageTexturesFunPtr :: FunPtr (GLuint -> GLsizei -> Ptr GLuint -> IO ())
glBindImageTexturesFunPtr = unsafePerformIO (getProcAddress "glBindImageTextures")
{-# NOINLINE glBindImageTexturesFunPtr #-}
-- | Usage: @'glBindSamplers' first count samplers@
--
-- The length of @samplers@ should be @count@.
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glBindSamplers.xhtml>
glBindSamplers :: MonadIO m => GLuint -> GLsizei -> Ptr GLuint -> m ()
glBindSamplers = ffiuintsizeiPtruintIOV glBindSamplersFunPtr
glBindSamplersFunPtr :: FunPtr (GLuint -> GLsizei -> Ptr GLuint -> IO ())
glBindSamplersFunPtr = unsafePerformIO (getProcAddress "glBindSamplers")
{-# NOINLINE glBindSamplersFunPtr #-}
-- | Usage: @'glBindTextures' first count textures@
--
-- The length of @textures@ should be @count@.
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glBindTextures.xhtml>
glBindTextures :: MonadIO m => GLuint -> GLsizei -> Ptr GLuint -> m ()
glBindTextures = ffiuintsizeiPtruintIOV glBindTexturesFunPtr
glBindTexturesFunPtr :: FunPtr (GLuint -> GLsizei -> Ptr GLuint -> IO ())
glBindTexturesFunPtr = unsafePerformIO (getProcAddress "glBindTextures")
{-# NOINLINE glBindTexturesFunPtr #-}
-- | Usage: @'glBindVertexBuffers' first count buffers offsets strides@
--
-- The length of @buffers@ should be @count@.
--
-- The length of @offsets@ should be @count@.
--
-- The length of @strides@ should be @count@.
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glBindVertexBuffers.xhtml>
glBindVertexBuffers :: MonadIO m => GLuint -> GLsizei -> Ptr GLuint -> Ptr GLintptr -> Ptr GLsizei -> m ()
glBindVertexBuffers = ffiuintsizeiPtruintPtrintptrPtrsizeiIOV glBindVertexBuffersFunPtr
glBindVertexBuffersFunPtr :: FunPtr (GLuint -> GLsizei -> Ptr GLuint -> Ptr GLintptr -> Ptr GLsizei -> IO ())
glBindVertexBuffersFunPtr = unsafePerformIO (getProcAddress "glBindVertexBuffers")
{-# NOINLINE glBindVertexBuffersFunPtr #-}
-- | Usage: @'glBufferStorage' target size data flags@
--
-- The length of @data@ should be @size@.
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glBufferStorage.xhtml>
glBufferStorage :: MonadIO m => GLenum -> GLsizeiptr -> Ptr () -> GLbitfield -> m ()
glBufferStorage = ffienumsizeiptrPtrVbitfieldIOV glBufferStorageFunPtr
glBufferStorageFunPtr :: FunPtr (GLenum -> GLsizeiptr -> Ptr () -> GLbitfield -> IO ())
glBufferStorageFunPtr = unsafePerformIO (getProcAddress "glBufferStorage")
{-# NOINLINE glBufferStorageFunPtr #-}
-- | Usage: @'glClearTexImage' texture level format type data@
--
-- The length of @data@ should be @COMPSIZE(format,type)@.
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glClearTexImage.xhtml>
glClearTexImage :: MonadIO m => GLuint -> GLint -> GLenum -> GLenum -> Ptr () -> m ()
glClearTexImage = ffiuintintenumenumPtrVIOV glClearTexImageFunPtr
glClearTexImageFunPtr :: FunPtr (GLuint -> GLint -> GLenum -> GLenum -> Ptr () -> IO ())
glClearTexImageFunPtr = unsafePerformIO (getProcAddress "glClearTexImage")
{-# NOINLINE glClearTexImageFunPtr #-}
-- | Usage: @'glClearTexSubImage' texture level xoffset yoffset zoffset width height depth format type data@
--
-- The length of @data@ should be @COMPSIZE(format,type)@.
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glClearTexSubImage.xhtml>
glClearTexSubImage :: MonadIO m => GLuint -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLenum -> GLenum -> Ptr () -> m ()
glClearTexSubImage = ffiuintintintintintsizeisizeisizeienumenumPtrVIOV glClearTexSubImageFunPtr
glClearTexSubImageFunPtr :: FunPtr (GLuint -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLenum -> GLenum -> Ptr () -> IO ())
glClearTexSubImageFunPtr = unsafePerformIO (getProcAddress "glClearTexSubImage")
{-# NOINLINE glClearTexSubImageFunPtr #-}
pattern GL_BUFFER_IMMUTABLE_STORAGE = 0x821F
pattern GL_BUFFER_STORAGE_FLAGS = 0x8220
pattern GL_CLEAR_TEXTURE = 0x9365
pattern GL_CLIENT_MAPPED_BUFFER_BARRIER_BIT = 0x00004000
pattern GL_CLIENT_STORAGE_BIT = 0x0200
pattern GL_DYNAMIC_STORAGE_BIT = 0x0100
pattern GL_LOCATION_COMPONENT = 0x934A
pattern GL_MAP_COHERENT_BIT = 0x0080
pattern GL_MAP_PERSISTENT_BIT = 0x0040
pattern GL_MAX_VERTEX_ATTRIB_STRIDE = 0x82E5
pattern GL_MIRROR_CLAMP_TO_EDGE = 0x8743
pattern GL_PRIMITIVE_RESTART_FOR_PATCHES_SUPPORTED = 0x8221
pattern GL_QUERY_BUFFER = 0x9192
pattern GL_QUERY_BUFFER_BARRIER_BIT = 0x00008000
pattern GL_QUERY_BUFFER_BINDING = 0x9193
pattern GL_QUERY_RESULT_NO_WAIT = 0x9194
pattern GL_TEXTURE_BUFFER_BINDING = 0x8C2A
pattern GL_TRANSFORM_FEEDBACK_BUFFER_INDEX = 0x934B
pattern GL_TRANSFORM_FEEDBACK_BUFFER_STRIDE = 0x934C
-- | Usage: @'glBindTextureUnit' unit texture@
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glBindTextureUnit.xhtml>
glBindTextureUnit :: MonadIO m => GLuint -> GLuint -> m ()
glBindTextureUnit = ffiuintuintIOV glBindTextureUnitFunPtr
glBindTextureUnitFunPtr :: FunPtr (GLuint -> GLuint -> IO ())
glBindTextureUnitFunPtr = unsafePerformIO (getProcAddress "glBindTextureUnit")
{-# NOINLINE glBindTextureUnitFunPtr #-}
-- | Usage: @'glBlitNamedFramebuffer' readFramebuffer drawFramebuffer srcX0 srcY0 srcX1 srcY1 dstX0 dstY0 dstX1 dstY1 mask filter@
glBlitNamedFramebuffer :: MonadIO m => GLuint -> GLuint -> GLint -> GLint -> GLint -> GLint -> GLint -> GLint -> GLint -> GLint -> GLbitfield -> GLenum -> m ()
glBlitNamedFramebuffer = ffiuintuintintintintintintintintintbitfieldenumIOV glBlitNamedFramebufferFunPtr
glBlitNamedFramebufferFunPtr :: FunPtr (GLuint -> GLuint -> GLint -> GLint -> GLint -> GLint -> GLint -> GLint -> GLint -> GLint -> GLbitfield -> GLenum -> IO ())
glBlitNamedFramebufferFunPtr = unsafePerformIO (getProcAddress "glBlitNamedFramebuffer")
{-# NOINLINE glBlitNamedFramebufferFunPtr #-}
-- | Usage: @'glCheckNamedFramebufferStatus' framebuffer target@
glCheckNamedFramebufferStatus :: MonadIO m => GLuint -> GLenum -> m GLenum
glCheckNamedFramebufferStatus = ffiuintenumIOenum glCheckNamedFramebufferStatusFunPtr
glCheckNamedFramebufferStatusFunPtr :: FunPtr (GLuint -> GLenum -> IO GLenum)
glCheckNamedFramebufferStatusFunPtr = unsafePerformIO (getProcAddress "glCheckNamedFramebufferStatus")
{-# NOINLINE glCheckNamedFramebufferStatusFunPtr #-}
-- | Usage: @'glClearNamedBufferData' buffer internalformat format type data@
glClearNamedBufferData :: MonadIO m => GLuint -> GLenum -> GLenum -> GLenum -> Ptr () -> m ()
glClearNamedBufferData = ffiuintenumenumenumPtrVIOV glClearNamedBufferDataFunPtr
glClearNamedBufferDataFunPtr :: FunPtr (GLuint -> GLenum -> GLenum -> GLenum -> Ptr () -> IO ())
glClearNamedBufferDataFunPtr = unsafePerformIO (getProcAddress "glClearNamedBufferData")
{-# NOINLINE glClearNamedBufferDataFunPtr #-}
-- | Usage: @'glClearNamedBufferSubData' buffer internalformat offset size format type data@
--
-- The parameter @size@ is a @BufferSize@.
glClearNamedBufferSubData :: MonadIO m => GLuint -> GLenum -> GLintptr -> GLsizeiptr -> GLenum -> GLenum -> Ptr () -> m ()
glClearNamedBufferSubData = ffiuintenumintptrsizeiptrenumenumPtrVIOV glClearNamedBufferSubDataFunPtr
glClearNamedBufferSubDataFunPtr :: FunPtr (GLuint -> GLenum -> GLintptr -> GLsizeiptr -> GLenum -> GLenum -> Ptr () -> IO ())
glClearNamedBufferSubDataFunPtr = unsafePerformIO (getProcAddress "glClearNamedBufferSubData")
{-# NOINLINE glClearNamedBufferSubDataFunPtr #-}
-- | Usage: @'glClearNamedFramebufferfi' framebuffer buffer drawbuffer depth stencil@
glClearNamedFramebufferfi :: MonadIO m => GLuint -> GLenum -> GLint -> GLfloat -> GLint -> m ()
glClearNamedFramebufferfi = ffiuintenumintfloatintIOV glClearNamedFramebufferfiFunPtr
glClearNamedFramebufferfiFunPtr :: FunPtr (GLuint -> GLenum -> GLint -> GLfloat -> GLint -> IO ())
glClearNamedFramebufferfiFunPtr = unsafePerformIO (getProcAddress "glClearNamedFramebufferfi")
{-# NOINLINE glClearNamedFramebufferfiFunPtr #-}
-- | Usage: @'glClearNamedFramebufferfv' framebuffer buffer drawbuffer value@
glClearNamedFramebufferfv :: MonadIO m => GLuint -> GLenum -> GLint -> Ptr GLfloat -> m ()
glClearNamedFramebufferfv = ffiuintenumintPtrfloatIOV glClearNamedFramebufferfvFunPtr
glClearNamedFramebufferfvFunPtr :: FunPtr (GLuint -> GLenum -> GLint -> Ptr GLfloat -> IO ())
glClearNamedFramebufferfvFunPtr = unsafePerformIO (getProcAddress "glClearNamedFramebufferfv")
{-# NOINLINE glClearNamedFramebufferfvFunPtr #-}
-- | Usage: @'glClearNamedFramebufferiv' framebuffer buffer drawbuffer value@
glClearNamedFramebufferiv :: MonadIO m => GLuint -> GLenum -> GLint -> Ptr GLint -> m ()
glClearNamedFramebufferiv = ffiuintenumintPtrintIOV glClearNamedFramebufferivFunPtr
glClearNamedFramebufferivFunPtr :: FunPtr (GLuint -> GLenum -> GLint -> Ptr GLint -> IO ())
glClearNamedFramebufferivFunPtr = unsafePerformIO (getProcAddress "glClearNamedFramebufferiv")
{-# NOINLINE glClearNamedFramebufferivFunPtr #-}
-- | Usage: @'glClearNamedFramebufferuiv' framebuffer buffer drawbuffer value@
glClearNamedFramebufferuiv :: MonadIO m => GLuint -> GLenum -> GLint -> Ptr GLuint -> m ()
glClearNamedFramebufferuiv = ffiuintenumintPtruintIOV glClearNamedFramebufferuivFunPtr
glClearNamedFramebufferuivFunPtr :: FunPtr (GLuint -> GLenum -> GLint -> Ptr GLuint -> IO ())
glClearNamedFramebufferuivFunPtr = unsafePerformIO (getProcAddress "glClearNamedFramebufferuiv")
{-# NOINLINE glClearNamedFramebufferuivFunPtr #-}
-- | Usage: @'glClipControl' origin depth@
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glClipControl.xhtml>
glClipControl :: MonadIO m => GLenum -> GLenum -> m ()
glClipControl = ffienumenumIOV glClipControlFunPtr
glClipControlFunPtr :: FunPtr (GLenum -> GLenum -> IO ())
glClipControlFunPtr = unsafePerformIO (getProcAddress "glClipControl")
{-# NOINLINE glClipControlFunPtr #-}
-- | Usage: @'glCompressedTextureSubImage1D' texture level xoffset width format imageSize data@
glCompressedTextureSubImage1D :: MonadIO m => GLuint -> GLint -> GLint -> GLsizei -> GLenum -> GLsizei -> Ptr () -> m ()
glCompressedTextureSubImage1D = ffiuintintintsizeienumsizeiPtrVIOV glCompressedTextureSubImage1DFunPtr
glCompressedTextureSubImage1DFunPtr :: FunPtr (GLuint -> GLint -> GLint -> GLsizei -> GLenum -> GLsizei -> Ptr () -> IO ())
glCompressedTextureSubImage1DFunPtr = unsafePerformIO (getProcAddress "glCompressedTextureSubImage1D")
{-# NOINLINE glCompressedTextureSubImage1DFunPtr #-}
-- | Usage: @'glCompressedTextureSubImage2D' texture level xoffset yoffset width height format imageSize data@
glCompressedTextureSubImage2D :: MonadIO m => GLuint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLenum -> GLsizei -> Ptr () -> m ()
glCompressedTextureSubImage2D = ffiuintintintintsizeisizeienumsizeiPtrVIOV glCompressedTextureSubImage2DFunPtr
glCompressedTextureSubImage2DFunPtr :: FunPtr (GLuint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLenum -> GLsizei -> Ptr () -> IO ())
glCompressedTextureSubImage2DFunPtr = unsafePerformIO (getProcAddress "glCompressedTextureSubImage2D")
{-# NOINLINE glCompressedTextureSubImage2DFunPtr #-}
-- | Usage: @'glCompressedTextureSubImage3D' texture level xoffset yoffset zoffset width height depth format imageSize data@
glCompressedTextureSubImage3D :: MonadIO m => GLuint -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLenum -> GLsizei -> Ptr () -> m ()
glCompressedTextureSubImage3D = ffiuintintintintintsizeisizeisizeienumsizeiPtrVIOV glCompressedTextureSubImage3DFunPtr
glCompressedTextureSubImage3DFunPtr :: FunPtr (GLuint -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLenum -> GLsizei -> Ptr () -> IO ())
glCompressedTextureSubImage3DFunPtr = unsafePerformIO (getProcAddress "glCompressedTextureSubImage3D")
{-# NOINLINE glCompressedTextureSubImage3DFunPtr #-}
-- | Usage: @'glCopyNamedBufferSubData' readBuffer writeBuffer readOffset writeOffset size@
--
-- The parameter @size@ is a @BufferSize@.
glCopyNamedBufferSubData :: MonadIO m => GLuint -> GLuint -> GLintptr -> GLintptr -> GLsizeiptr -> m ()
glCopyNamedBufferSubData = ffiuintuintintptrintptrsizeiptrIOV glCopyNamedBufferSubDataFunPtr
glCopyNamedBufferSubDataFunPtr :: FunPtr (GLuint -> GLuint -> GLintptr -> GLintptr -> GLsizeiptr -> IO ())
glCopyNamedBufferSubDataFunPtr = unsafePerformIO (getProcAddress "glCopyNamedBufferSubData")
{-# NOINLINE glCopyNamedBufferSubDataFunPtr #-}
-- | Usage: @'glCopyTextureSubImage1D' texture level xoffset x y width@
glCopyTextureSubImage1D :: MonadIO m => GLuint -> GLint -> GLint -> GLint -> GLint -> GLsizei -> m ()
glCopyTextureSubImage1D = ffiuintintintintintsizeiIOV glCopyTextureSubImage1DFunPtr
glCopyTextureSubImage1DFunPtr :: FunPtr (GLuint -> GLint -> GLint -> GLint -> GLint -> GLsizei -> IO ())
glCopyTextureSubImage1DFunPtr = unsafePerformIO (getProcAddress "glCopyTextureSubImage1D")
{-# NOINLINE glCopyTextureSubImage1DFunPtr #-}
-- | Usage: @'glCopyTextureSubImage2D' texture level xoffset yoffset x y width height@
glCopyTextureSubImage2D :: MonadIO m => GLuint -> GLint -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> m ()
glCopyTextureSubImage2D = ffiuintintintintintintsizeisizeiIOV glCopyTextureSubImage2DFunPtr
glCopyTextureSubImage2DFunPtr :: FunPtr (GLuint -> GLint -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> IO ())
glCopyTextureSubImage2DFunPtr = unsafePerformIO (getProcAddress "glCopyTextureSubImage2D")
{-# NOINLINE glCopyTextureSubImage2DFunPtr #-}
-- | Usage: @'glCopyTextureSubImage3D' texture level xoffset yoffset zoffset x y width height@
glCopyTextureSubImage3D :: MonadIO m => GLuint -> GLint -> GLint -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> m ()
glCopyTextureSubImage3D = ffiuintintintintintintintsizeisizeiIOV glCopyTextureSubImage3DFunPtr
glCopyTextureSubImage3DFunPtr :: FunPtr (GLuint -> GLint -> GLint -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> IO ())
glCopyTextureSubImage3DFunPtr = unsafePerformIO (getProcAddress "glCopyTextureSubImage3D")
{-# NOINLINE glCopyTextureSubImage3DFunPtr #-}
-- | Usage: @'glCreateBuffers' n buffers@
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glCreateBuffers.xhtml>
glCreateBuffers :: MonadIO m => GLsizei -> Ptr GLuint -> m ()
glCreateBuffers = ffisizeiPtruintIOV glCreateBuffersFunPtr
glCreateBuffersFunPtr :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
glCreateBuffersFunPtr = unsafePerformIO (getProcAddress "glCreateBuffers")
{-# NOINLINE glCreateBuffersFunPtr #-}
-- | Usage: @'glCreateFramebuffers' n framebuffers@
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glCreateFramebuffers.xhtml>
glCreateFramebuffers :: MonadIO m => GLsizei -> Ptr GLuint -> m ()
glCreateFramebuffers = ffisizeiPtruintIOV glCreateFramebuffersFunPtr
glCreateFramebuffersFunPtr :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
glCreateFramebuffersFunPtr = unsafePerformIO (getProcAddress "glCreateFramebuffers")
{-# NOINLINE glCreateFramebuffersFunPtr #-}
-- | Usage: @'glCreateProgramPipelines' n pipelines@
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glCreateProgramPipelines.xhtml>
glCreateProgramPipelines :: MonadIO m => GLsizei -> Ptr GLuint -> m ()
glCreateProgramPipelines = ffisizeiPtruintIOV glCreateProgramPipelinesFunPtr
glCreateProgramPipelinesFunPtr :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
glCreateProgramPipelinesFunPtr = unsafePerformIO (getProcAddress "glCreateProgramPipelines")
{-# NOINLINE glCreateProgramPipelinesFunPtr #-}
-- | Usage: @'glCreateQueries' target n ids@
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glCreateQueries.xhtml>
glCreateQueries :: MonadIO m => GLenum -> GLsizei -> Ptr GLuint -> m ()
glCreateQueries = ffienumsizeiPtruintIOV glCreateQueriesFunPtr
glCreateQueriesFunPtr :: FunPtr (GLenum -> GLsizei -> Ptr GLuint -> IO ())
glCreateQueriesFunPtr = unsafePerformIO (getProcAddress "glCreateQueries")
{-# NOINLINE glCreateQueriesFunPtr #-}
-- | Usage: @'glCreateRenderbuffers' n renderbuffers@
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glCreateRenderbuffers.xhtml>
glCreateRenderbuffers :: MonadIO m => GLsizei -> Ptr GLuint -> m ()
glCreateRenderbuffers = ffisizeiPtruintIOV glCreateRenderbuffersFunPtr
glCreateRenderbuffersFunPtr :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
glCreateRenderbuffersFunPtr = unsafePerformIO (getProcAddress "glCreateRenderbuffers")
{-# NOINLINE glCreateRenderbuffersFunPtr #-}
-- | Usage: @'glCreateSamplers' n samplers@
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glCreateSamplers.xhtml>
glCreateSamplers :: MonadIO m => GLsizei -> Ptr GLuint -> m ()
glCreateSamplers = ffisizeiPtruintIOV glCreateSamplersFunPtr
glCreateSamplersFunPtr :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
glCreateSamplersFunPtr = unsafePerformIO (getProcAddress "glCreateSamplers")
{-# NOINLINE glCreateSamplersFunPtr #-}
-- | Usage: @'glCreateTextures' target n textures@
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glCreateTextures.xhtml>
glCreateTextures :: MonadIO m => GLenum -> GLsizei -> Ptr GLuint -> m ()
glCreateTextures = ffienumsizeiPtruintIOV glCreateTexturesFunPtr
glCreateTexturesFunPtr :: FunPtr (GLenum -> GLsizei -> Ptr GLuint -> IO ())
glCreateTexturesFunPtr = unsafePerformIO (getProcAddress "glCreateTextures")
{-# NOINLINE glCreateTexturesFunPtr #-}
-- | Usage: @'glCreateTransformFeedbacks' n ids@
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glCreateTransformFeedbacks.xhtml>
glCreateTransformFeedbacks :: MonadIO m => GLsizei -> Ptr GLuint -> m ()
glCreateTransformFeedbacks = ffisizeiPtruintIOV glCreateTransformFeedbacksFunPtr
glCreateTransformFeedbacksFunPtr :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
glCreateTransformFeedbacksFunPtr = unsafePerformIO (getProcAddress "glCreateTransformFeedbacks")
{-# NOINLINE glCreateTransformFeedbacksFunPtr #-}
-- | Usage: @'glCreateVertexArrays' n arrays@
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glCreateVertexArrays.xhtml>
glCreateVertexArrays :: MonadIO m => GLsizei -> Ptr GLuint -> m ()
glCreateVertexArrays = ffisizeiPtruintIOV glCreateVertexArraysFunPtr
glCreateVertexArraysFunPtr :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
glCreateVertexArraysFunPtr = unsafePerformIO (getProcAddress "glCreateVertexArrays")
{-# NOINLINE glCreateVertexArraysFunPtr #-}
-- | Usage: @'glDisableVertexArrayAttrib' vaobj index@
glDisableVertexArrayAttrib :: MonadIO m => GLuint -> GLuint -> m ()
glDisableVertexArrayAttrib = ffiuintuintIOV glDisableVertexArrayAttribFunPtr
glDisableVertexArrayAttribFunPtr :: FunPtr (GLuint -> GLuint -> IO ())
glDisableVertexArrayAttribFunPtr = unsafePerformIO (getProcAddress "glDisableVertexArrayAttrib")
{-# NOINLINE glDisableVertexArrayAttribFunPtr #-}
-- | Usage: @'glEnableVertexArrayAttrib' vaobj index@
glEnableVertexArrayAttrib :: MonadIO m => GLuint -> GLuint -> m ()
glEnableVertexArrayAttrib = ffiuintuintIOV glEnableVertexArrayAttribFunPtr
glEnableVertexArrayAttribFunPtr :: FunPtr (GLuint -> GLuint -> IO ())
glEnableVertexArrayAttribFunPtr = unsafePerformIO (getProcAddress "glEnableVertexArrayAttrib")
{-# NOINLINE glEnableVertexArrayAttribFunPtr #-}
-- | Usage: @'glFlushMappedNamedBufferRange' buffer offset length@
--
-- The parameter @length@ is a @BufferSize@.
glFlushMappedNamedBufferRange :: MonadIO m => GLuint -> GLintptr -> GLsizeiptr -> m ()
glFlushMappedNamedBufferRange = ffiuintintptrsizeiptrIOV glFlushMappedNamedBufferRangeFunPtr
glFlushMappedNamedBufferRangeFunPtr :: FunPtr (GLuint -> GLintptr -> GLsizeiptr -> IO ())
glFlushMappedNamedBufferRangeFunPtr = unsafePerformIO (getProcAddress "glFlushMappedNamedBufferRange")
{-# NOINLINE glFlushMappedNamedBufferRangeFunPtr #-}
-- | Usage: @'glGenerateTextureMipmap' texture@
glGenerateTextureMipmap :: MonadIO m => GLuint -> m ()
glGenerateTextureMipmap = ffiuintIOV glGenerateTextureMipmapFunPtr
glGenerateTextureMipmapFunPtr :: FunPtr (GLuint -> IO ())
glGenerateTextureMipmapFunPtr = unsafePerformIO (getProcAddress "glGenerateTextureMipmap")
{-# NOINLINE glGenerateTextureMipmapFunPtr #-}
-- | Usage: @'glGetCompressedTextureImage' texture level bufSize pixels@
glGetCompressedTextureImage :: MonadIO m => GLuint -> GLint -> GLsizei -> Ptr () -> m ()
glGetCompressedTextureImage = ffiuintintsizeiPtrVIOV glGetCompressedTextureImageFunPtr
glGetCompressedTextureImageFunPtr :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr () -> IO ())
glGetCompressedTextureImageFunPtr = unsafePerformIO (getProcAddress "glGetCompressedTextureImage")
{-# NOINLINE glGetCompressedTextureImageFunPtr #-}
-- | Usage: @'glGetCompressedTextureSubImage' texture level xoffset yoffset zoffset width height depth bufSize pixels@
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glGetCompressedTextureSubImage.xhtml>
glGetCompressedTextureSubImage :: MonadIO m => GLuint -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLsizei -> Ptr () -> m ()
glGetCompressedTextureSubImage = ffiuintintintintintsizeisizeisizeisizeiPtrVIOV glGetCompressedTextureSubImageFunPtr
glGetCompressedTextureSubImageFunPtr :: FunPtr (GLuint -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLsizei -> Ptr () -> IO ())
glGetCompressedTextureSubImageFunPtr = unsafePerformIO (getProcAddress "glGetCompressedTextureSubImage")
{-# NOINLINE glGetCompressedTextureSubImageFunPtr #-}
-- | Usage: @'glGetGraphicsResetStatus'@
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glGetGraphicsResetStatus.xhtml>
glGetGraphicsResetStatus :: MonadIO m => m GLenum
glGetGraphicsResetStatus = ffiIOenum glGetGraphicsResetStatusFunPtr
glGetGraphicsResetStatusFunPtr :: FunPtr (IO GLenum)
glGetGraphicsResetStatusFunPtr = unsafePerformIO (getProcAddress "glGetGraphicsResetStatus")
{-# NOINLINE glGetGraphicsResetStatusFunPtr #-}
-- | Usage: @'glGetNamedBufferParameteri64v' buffer pname params@
glGetNamedBufferParameteri64v :: MonadIO m => GLuint -> GLenum -> Ptr GLint64 -> m ()
glGetNamedBufferParameteri64v = ffiuintenumPtrint64IOV glGetNamedBufferParameteri64vFunPtr
glGetNamedBufferParameteri64vFunPtr :: FunPtr (GLuint -> GLenum -> Ptr GLint64 -> IO ())
glGetNamedBufferParameteri64vFunPtr = unsafePerformIO (getProcAddress "glGetNamedBufferParameteri64v")
{-# NOINLINE glGetNamedBufferParameteri64vFunPtr #-}
-- | Usage: @'glGetNamedBufferParameteriv' buffer pname params@
glGetNamedBufferParameteriv :: MonadIO m => GLuint -> GLenum -> Ptr GLint -> m ()
glGetNamedBufferParameteriv = ffiuintenumPtrintIOV glGetNamedBufferParameterivFunPtr
glGetNamedBufferParameterivFunPtr :: FunPtr (GLuint -> GLenum -> Ptr GLint -> IO ())
glGetNamedBufferParameterivFunPtr = unsafePerformIO (getProcAddress "glGetNamedBufferParameteriv")
{-# NOINLINE glGetNamedBufferParameterivFunPtr #-}
-- | Usage: @'glGetNamedBufferPointerv' buffer pname params@
glGetNamedBufferPointerv :: MonadIO m => GLuint -> GLenum -> Ptr (Ptr ()) -> m ()
glGetNamedBufferPointerv = ffiuintenumPtrPtrVIOV glGetNamedBufferPointervFunPtr
glGetNamedBufferPointervFunPtr :: FunPtr (GLuint -> GLenum -> Ptr (Ptr ()) -> IO ())
glGetNamedBufferPointervFunPtr = unsafePerformIO (getProcAddress "glGetNamedBufferPointerv")
{-# NOINLINE glGetNamedBufferPointervFunPtr #-}
-- | Usage: @'glGetNamedBufferSubData' buffer offset size data@
--
-- The parameter @size@ is a @BufferSize@.
glGetNamedBufferSubData :: MonadIO m => GLuint -> GLintptr -> GLsizeiptr -> Ptr () -> m ()
glGetNamedBufferSubData = ffiuintintptrsizeiptrPtrVIOV glGetNamedBufferSubDataFunPtr
glGetNamedBufferSubDataFunPtr :: FunPtr (GLuint -> GLintptr -> GLsizeiptr -> Ptr () -> IO ())
glGetNamedBufferSubDataFunPtr = unsafePerformIO (getProcAddress "glGetNamedBufferSubData")
{-# NOINLINE glGetNamedBufferSubDataFunPtr #-}
-- | Usage: @'glGetNamedFramebufferAttachmentParameteriv' framebuffer attachment pname params@
glGetNamedFramebufferAttachmentParameteriv :: MonadIO m => GLuint -> GLenum -> GLenum -> Ptr GLint -> m ()
glGetNamedFramebufferAttachmentParameteriv = ffiuintenumenumPtrintIOV glGetNamedFramebufferAttachmentParameterivFunPtr
glGetNamedFramebufferAttachmentParameterivFunPtr :: FunPtr (GLuint -> GLenum -> GLenum -> Ptr GLint -> IO ())
glGetNamedFramebufferAttachmentParameterivFunPtr = unsafePerformIO (getProcAddress "glGetNamedFramebufferAttachmentParameteriv")
{-# NOINLINE glGetNamedFramebufferAttachmentParameterivFunPtr #-}
-- | Usage: @'glGetNamedFramebufferParameteriv' framebuffer pname param@
glGetNamedFramebufferParameteriv :: MonadIO m => GLuint -> GLenum -> Ptr GLint -> m ()
glGetNamedFramebufferParameteriv = ffiuintenumPtrintIOV glGetNamedFramebufferParameterivFunPtr
glGetNamedFramebufferParameterivFunPtr :: FunPtr (GLuint -> GLenum -> Ptr GLint -> IO ())
glGetNamedFramebufferParameterivFunPtr = unsafePerformIO (getProcAddress "glGetNamedFramebufferParameteriv")
{-# NOINLINE glGetNamedFramebufferParameterivFunPtr #-}
-- | Usage: @'glGetNamedRenderbufferParameteriv' renderbuffer pname params@
glGetNamedRenderbufferParameteriv :: MonadIO m => GLuint -> GLenum -> Ptr GLint -> m ()
glGetNamedRenderbufferParameteriv = ffiuintenumPtrintIOV glGetNamedRenderbufferParameterivFunPtr
glGetNamedRenderbufferParameterivFunPtr :: FunPtr (GLuint -> GLenum -> Ptr GLint -> IO ())
glGetNamedRenderbufferParameterivFunPtr = unsafePerformIO (getProcAddress "glGetNamedRenderbufferParameteriv")
{-# NOINLINE glGetNamedRenderbufferParameterivFunPtr #-}
-- | Usage: @'glGetQueryBufferObjecti64v' id buffer pname offset@
glGetQueryBufferObjecti64v :: MonadIO m => GLuint -> GLuint -> GLenum -> GLintptr -> m ()
glGetQueryBufferObjecti64v = ffiuintuintenumintptrIOV glGetQueryBufferObjecti64vFunPtr
glGetQueryBufferObjecti64vFunPtr :: FunPtr (GLuint -> GLuint -> GLenum -> GLintptr -> IO ())
glGetQueryBufferObjecti64vFunPtr = unsafePerformIO (getProcAddress "glGetQueryBufferObjecti64v")
{-# NOINLINE glGetQueryBufferObjecti64vFunPtr #-}
-- | Usage: @'glGetQueryBufferObjectiv' id buffer pname offset@
glGetQueryBufferObjectiv :: MonadIO m => GLuint -> GLuint -> GLenum -> GLintptr -> m ()
glGetQueryBufferObjectiv = ffiuintuintenumintptrIOV glGetQueryBufferObjectivFunPtr
glGetQueryBufferObjectivFunPtr :: FunPtr (GLuint -> GLuint -> GLenum -> GLintptr -> IO ())
glGetQueryBufferObjectivFunPtr = unsafePerformIO (getProcAddress "glGetQueryBufferObjectiv")
{-# NOINLINE glGetQueryBufferObjectivFunPtr #-}
-- | Usage: @'glGetQueryBufferObjectui64v' id buffer pname offset@
glGetQueryBufferObjectui64v :: MonadIO m => GLuint -> GLuint -> GLenum -> GLintptr -> m ()
glGetQueryBufferObjectui64v = ffiuintuintenumintptrIOV glGetQueryBufferObjectui64vFunPtr
glGetQueryBufferObjectui64vFunPtr :: FunPtr (GLuint -> GLuint -> GLenum -> GLintptr -> IO ())
glGetQueryBufferObjectui64vFunPtr = unsafePerformIO (getProcAddress "glGetQueryBufferObjectui64v")
{-# NOINLINE glGetQueryBufferObjectui64vFunPtr #-}
-- | Usage: @'glGetQueryBufferObjectuiv' id buffer pname offset@
glGetQueryBufferObjectuiv :: MonadIO m => GLuint -> GLuint -> GLenum -> GLintptr -> m ()
glGetQueryBufferObjectuiv = ffiuintuintenumintptrIOV glGetQueryBufferObjectuivFunPtr
glGetQueryBufferObjectuivFunPtr :: FunPtr (GLuint -> GLuint -> GLenum -> GLintptr -> IO ())
glGetQueryBufferObjectuivFunPtr = unsafePerformIO (getProcAddress "glGetQueryBufferObjectuiv")
{-# NOINLINE glGetQueryBufferObjectuivFunPtr #-}
-- | Usage: @'glGetTextureImage' texture level format type bufSize pixels@
glGetTextureImage :: MonadIO m => GLuint -> GLint -> GLenum -> GLenum -> GLsizei -> Ptr () -> m ()
glGetTextureImage = ffiuintintenumenumsizeiPtrVIOV glGetTextureImageFunPtr
glGetTextureImageFunPtr :: FunPtr (GLuint -> GLint -> GLenum -> GLenum -> GLsizei -> Ptr () -> IO ())
glGetTextureImageFunPtr = unsafePerformIO (getProcAddress "glGetTextureImage")
{-# NOINLINE glGetTextureImageFunPtr #-}
-- | Usage: @'glGetTextureLevelParameterfv' texture level pname params@
glGetTextureLevelParameterfv :: MonadIO m => GLuint -> GLint -> GLenum -> Ptr GLfloat -> m ()
glGetTextureLevelParameterfv = ffiuintintenumPtrfloatIOV glGetTextureLevelParameterfvFunPtr
glGetTextureLevelParameterfvFunPtr :: FunPtr (GLuint -> GLint -> GLenum -> Ptr GLfloat -> IO ())
glGetTextureLevelParameterfvFunPtr = unsafePerformIO (getProcAddress "glGetTextureLevelParameterfv")
{-# NOINLINE glGetTextureLevelParameterfvFunPtr #-}
-- | Usage: @'glGetTextureLevelParameteriv' texture level pname params@
glGetTextureLevelParameteriv :: MonadIO m => GLuint -> GLint -> GLenum -> Ptr GLint -> m ()
glGetTextureLevelParameteriv = ffiuintintenumPtrintIOV glGetTextureLevelParameterivFunPtr
glGetTextureLevelParameterivFunPtr :: FunPtr (GLuint -> GLint -> GLenum -> Ptr GLint -> IO ())
glGetTextureLevelParameterivFunPtr = unsafePerformIO (getProcAddress "glGetTextureLevelParameteriv")
{-# NOINLINE glGetTextureLevelParameterivFunPtr #-}
-- | Usage: @'glGetTextureParameterIiv' texture pname params@
glGetTextureParameterIiv :: MonadIO m => GLuint -> GLenum -> Ptr GLint -> m ()
glGetTextureParameterIiv = ffiuintenumPtrintIOV glGetTextureParameterIivFunPtr
glGetTextureParameterIivFunPtr :: FunPtr (GLuint -> GLenum -> Ptr GLint -> IO ())
glGetTextureParameterIivFunPtr = unsafePerformIO (getProcAddress "glGetTextureParameterIiv")
{-# NOINLINE glGetTextureParameterIivFunPtr #-}
-- | Usage: @'glGetTextureParameterIuiv' texture pname params@
glGetTextureParameterIuiv :: MonadIO m => GLuint -> GLenum -> Ptr GLuint -> m ()
glGetTextureParameterIuiv = ffiuintenumPtruintIOV glGetTextureParameterIuivFunPtr
glGetTextureParameterIuivFunPtr :: FunPtr (GLuint -> GLenum -> Ptr GLuint -> IO ())
glGetTextureParameterIuivFunPtr = unsafePerformIO (getProcAddress "glGetTextureParameterIuiv")
{-# NOINLINE glGetTextureParameterIuivFunPtr #-}
-- | Usage: @'glGetTextureParameterfv' texture pname params@
glGetTextureParameterfv :: MonadIO m => GLuint -> GLenum -> Ptr GLfloat -> m ()
glGetTextureParameterfv = ffiuintenumPtrfloatIOV glGetTextureParameterfvFunPtr
glGetTextureParameterfvFunPtr :: FunPtr (GLuint -> GLenum -> Ptr GLfloat -> IO ())
glGetTextureParameterfvFunPtr = unsafePerformIO (getProcAddress "glGetTextureParameterfv")
{-# NOINLINE glGetTextureParameterfvFunPtr #-}
-- | Usage: @'glGetTextureParameteriv' texture pname params@
glGetTextureParameteriv :: MonadIO m => GLuint -> GLenum -> Ptr GLint -> m ()
glGetTextureParameteriv = ffiuintenumPtrintIOV glGetTextureParameterivFunPtr
glGetTextureParameterivFunPtr :: FunPtr (GLuint -> GLenum -> Ptr GLint -> IO ())
glGetTextureParameterivFunPtr = unsafePerformIO (getProcAddress "glGetTextureParameteriv")
{-# NOINLINE glGetTextureParameterivFunPtr #-}
-- | Usage: @'glGetTextureSubImage' texture level xoffset yoffset zoffset width height depth format type bufSize pixels@
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glGetTextureSubImage.xhtml>
glGetTextureSubImage :: MonadIO m => GLuint -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLenum -> GLenum -> GLsizei -> Ptr () -> m ()
glGetTextureSubImage = ffiuintintintintintsizeisizeisizeienumenumsizeiPtrVIOV glGetTextureSubImageFunPtr
glGetTextureSubImageFunPtr :: FunPtr (GLuint -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLenum -> GLenum -> GLsizei -> Ptr () -> IO ())
glGetTextureSubImageFunPtr = unsafePerformIO (getProcAddress "glGetTextureSubImage")
{-# NOINLINE glGetTextureSubImageFunPtr #-}
-- | Usage: @'glGetTransformFeedbacki64_v' xfb pname index param@
glGetTransformFeedbacki64_v :: MonadIO m => GLuint -> GLenum -> GLuint -> Ptr GLint64 -> m ()
glGetTransformFeedbacki64_v = ffiuintenumuintPtrint64IOV glGetTransformFeedbacki64_vFunPtr
glGetTransformFeedbacki64_vFunPtr :: FunPtr (GLuint -> GLenum -> GLuint -> Ptr GLint64 -> IO ())
glGetTransformFeedbacki64_vFunPtr = unsafePerformIO (getProcAddress "glGetTransformFeedbacki64_v")
{-# NOINLINE glGetTransformFeedbacki64_vFunPtr #-}
-- | Usage: @'glGetTransformFeedbacki_v' xfb pname index param@
glGetTransformFeedbacki_v :: MonadIO m => GLuint -> GLenum -> GLuint -> Ptr GLint -> m ()
glGetTransformFeedbacki_v = ffiuintenumuintPtrintIOV glGetTransformFeedbacki_vFunPtr
glGetTransformFeedbacki_vFunPtr :: FunPtr (GLuint -> GLenum -> GLuint -> Ptr GLint -> IO ())
glGetTransformFeedbacki_vFunPtr = unsafePerformIO (getProcAddress "glGetTransformFeedbacki_v")
{-# NOINLINE glGetTransformFeedbacki_vFunPtr #-}
-- | Usage: @'glGetTransformFeedbackiv' xfb pname param@
glGetTransformFeedbackiv :: MonadIO m => GLuint -> GLenum -> Ptr GLint -> m ()
glGetTransformFeedbackiv = ffiuintenumPtrintIOV glGetTransformFeedbackivFunPtr
glGetTransformFeedbackivFunPtr :: FunPtr (GLuint -> GLenum -> Ptr GLint -> IO ())
glGetTransformFeedbackivFunPtr = unsafePerformIO (getProcAddress "glGetTransformFeedbackiv")
{-# NOINLINE glGetTransformFeedbackivFunPtr #-}
-- | Usage: @'glGetVertexArrayIndexed64iv' vaobj index pname param@
glGetVertexArrayIndexed64iv :: MonadIO m => GLuint -> GLuint -> GLenum -> Ptr GLint64 -> m ()
glGetVertexArrayIndexed64iv = ffiuintuintenumPtrint64IOV glGetVertexArrayIndexed64ivFunPtr
glGetVertexArrayIndexed64ivFunPtr :: FunPtr (GLuint -> GLuint -> GLenum -> Ptr GLint64 -> IO ())
glGetVertexArrayIndexed64ivFunPtr = unsafePerformIO (getProcAddress "glGetVertexArrayIndexed64iv")
{-# NOINLINE glGetVertexArrayIndexed64ivFunPtr #-}
-- | Usage: @'glGetVertexArrayIndexediv' vaobj index pname param@
glGetVertexArrayIndexediv :: MonadIO m => GLuint -> GLuint -> GLenum -> Ptr GLint -> m ()
glGetVertexArrayIndexediv = ffiuintuintenumPtrintIOV glGetVertexArrayIndexedivFunPtr
glGetVertexArrayIndexedivFunPtr :: FunPtr (GLuint -> GLuint -> GLenum -> Ptr GLint -> IO ())
glGetVertexArrayIndexedivFunPtr = unsafePerformIO (getProcAddress "glGetVertexArrayIndexediv")
{-# NOINLINE glGetVertexArrayIndexedivFunPtr #-}
-- | Usage: @'glGetVertexArrayiv' vaobj pname param@
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glGetVertexArrayiv.xhtml>
glGetVertexArrayiv :: MonadIO m => GLuint -> GLenum -> Ptr GLint -> m ()
glGetVertexArrayiv = ffiuintenumPtrintIOV glGetVertexArrayivFunPtr
glGetVertexArrayivFunPtr :: FunPtr (GLuint -> GLenum -> Ptr GLint -> IO ())
glGetVertexArrayivFunPtr = unsafePerformIO (getProcAddress "glGetVertexArrayiv")
{-# NOINLINE glGetVertexArrayivFunPtr #-}
-- | Usage: @'glGetnUniformfv' program location bufSize params@
glGetnUniformfv :: MonadIO m => GLuint -> GLint -> GLsizei -> Ptr GLfloat -> m ()
glGetnUniformfv = ffiuintintsizeiPtrfloatIOV glGetnUniformfvFunPtr
glGetnUniformfvFunPtr :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLfloat -> IO ())
glGetnUniformfvFunPtr = unsafePerformIO (getProcAddress "glGetnUniformfv")
{-# NOINLINE glGetnUniformfvFunPtr #-}
-- | Usage: @'glGetnUniformiv' program location bufSize params@
glGetnUniformiv :: MonadIO m => GLuint -> GLint -> GLsizei -> Ptr GLint -> m ()
glGetnUniformiv = ffiuintintsizeiPtrintIOV glGetnUniformivFunPtr
glGetnUniformivFunPtr :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLint -> IO ())
glGetnUniformivFunPtr = unsafePerformIO (getProcAddress "glGetnUniformiv")
{-# NOINLINE glGetnUniformivFunPtr #-}
-- | Usage: @'glGetnUniformuiv' program location bufSize params@
glGetnUniformuiv :: MonadIO m => GLuint -> GLint -> GLsizei -> Ptr GLuint -> m ()
glGetnUniformuiv = ffiuintintsizeiPtruintIOV glGetnUniformuivFunPtr
glGetnUniformuivFunPtr :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLuint -> IO ())
glGetnUniformuivFunPtr = unsafePerformIO (getProcAddress "glGetnUniformuiv")
{-# NOINLINE glGetnUniformuivFunPtr #-}
-- | Usage: @'glInvalidateNamedFramebufferData' framebuffer numAttachments attachments@
glInvalidateNamedFramebufferData :: MonadIO m => GLuint -> GLsizei -> Ptr GLenum -> m ()
glInvalidateNamedFramebufferData = ffiuintsizeiPtrenumIOV glInvalidateNamedFramebufferDataFunPtr
glInvalidateNamedFramebufferDataFunPtr :: FunPtr (GLuint -> GLsizei -> Ptr GLenum -> IO ())
glInvalidateNamedFramebufferDataFunPtr = unsafePerformIO (getProcAddress "glInvalidateNamedFramebufferData")
{-# NOINLINE glInvalidateNamedFramebufferDataFunPtr #-}
-- | Usage: @'glInvalidateNamedFramebufferSubData' framebuffer numAttachments attachments x y width height@
glInvalidateNamedFramebufferSubData :: MonadIO m => GLuint -> GLsizei -> Ptr GLenum -> GLint -> GLint -> GLsizei -> GLsizei -> m ()
glInvalidateNamedFramebufferSubData = ffiuintsizeiPtrenumintintsizeisizeiIOV glInvalidateNamedFramebufferSubDataFunPtr
glInvalidateNamedFramebufferSubDataFunPtr :: FunPtr (GLuint -> GLsizei -> Ptr GLenum -> GLint -> GLint -> GLsizei -> GLsizei -> IO ())
glInvalidateNamedFramebufferSubDataFunPtr = unsafePerformIO (getProcAddress "glInvalidateNamedFramebufferSubData")
{-# NOINLINE glInvalidateNamedFramebufferSubDataFunPtr #-}
-- | Usage: @'glMapNamedBuffer' buffer access@
glMapNamedBuffer :: MonadIO m => GLuint -> GLenum -> m (Ptr ())
glMapNamedBuffer = ffiuintenumIOPtrV glMapNamedBufferFunPtr
glMapNamedBufferFunPtr :: FunPtr (GLuint -> GLenum -> IO (Ptr ()))
glMapNamedBufferFunPtr = unsafePerformIO (getProcAddress "glMapNamedBuffer")
{-# NOINLINE glMapNamedBufferFunPtr #-}
-- | Usage: @'glMapNamedBufferRange' buffer offset length access@
--
-- The parameter @length@ is a @BufferSize@.
glMapNamedBufferRange :: MonadIO m => GLuint -> GLintptr -> GLsizeiptr -> GLbitfield -> m (Ptr ())
glMapNamedBufferRange = ffiuintintptrsizeiptrbitfieldIOPtrV glMapNamedBufferRangeFunPtr
glMapNamedBufferRangeFunPtr :: FunPtr (GLuint -> GLintptr -> GLsizeiptr -> GLbitfield -> IO (Ptr ()))
glMapNamedBufferRangeFunPtr = unsafePerformIO (getProcAddress "glMapNamedBufferRange")
{-# NOINLINE glMapNamedBufferRangeFunPtr #-}
-- | Usage: @'glMemoryBarrierByRegion' barriers@
glMemoryBarrierByRegion :: MonadIO m => GLbitfield -> m ()
glMemoryBarrierByRegion = ffibitfieldIOV glMemoryBarrierByRegionFunPtr
glMemoryBarrierByRegionFunPtr :: FunPtr (GLbitfield -> IO ())
glMemoryBarrierByRegionFunPtr = unsafePerformIO (getProcAddress "glMemoryBarrierByRegion")
{-# NOINLINE glMemoryBarrierByRegionFunPtr #-}
-- | Usage: @'glNamedBufferData' buffer size data usage@
--
-- The parameter @size@ is a @BufferSize@.
glNamedBufferData :: MonadIO m => GLuint -> GLsizeiptr -> Ptr () -> GLenum -> m ()
glNamedBufferData = ffiuintsizeiptrPtrVenumIOV glNamedBufferDataFunPtr
glNamedBufferDataFunPtr :: FunPtr (GLuint -> GLsizeiptr -> Ptr () -> GLenum -> IO ())
glNamedBufferDataFunPtr = unsafePerformIO (getProcAddress "glNamedBufferData")
{-# NOINLINE glNamedBufferDataFunPtr #-}
-- | Usage: @'glNamedBufferStorage' buffer size data flags@
--
-- The parameter @size@ is a @BufferSize@.
--
-- The length of @data@ should be @size@.
glNamedBufferStorage :: MonadIO m => GLuint -> GLsizeiptr -> Ptr () -> GLbitfield -> m ()
glNamedBufferStorage = ffiuintsizeiptrPtrVbitfieldIOV glNamedBufferStorageFunPtr
glNamedBufferStorageFunPtr :: FunPtr (GLuint -> GLsizeiptr -> Ptr () -> GLbitfield -> IO ())
glNamedBufferStorageFunPtr = unsafePerformIO (getProcAddress "glNamedBufferStorage")
{-# NOINLINE glNamedBufferStorageFunPtr #-}
-- | Usage: @'glNamedBufferSubData' buffer offset size data@
--
-- The parameter @size@ is a @BufferSize@.
--
-- The length of @data@ should be @COMPSIZE(size)@.
glNamedBufferSubData :: MonadIO m => GLuint -> GLintptr -> GLsizeiptr -> Ptr () -> m ()
glNamedBufferSubData = ffiuintintptrsizeiptrPtrVIOV glNamedBufferSubDataFunPtr
glNamedBufferSubDataFunPtr :: FunPtr (GLuint -> GLintptr -> GLsizeiptr -> Ptr () -> IO ())
glNamedBufferSubDataFunPtr = unsafePerformIO (getProcAddress "glNamedBufferSubData")
{-# NOINLINE glNamedBufferSubDataFunPtr #-}
-- | Usage: @'glNamedFramebufferDrawBuffer' framebuffer buf@
glNamedFramebufferDrawBuffer :: MonadIO m => GLuint -> GLenum -> m ()
glNamedFramebufferDrawBuffer = ffiuintenumIOV glNamedFramebufferDrawBufferFunPtr
glNamedFramebufferDrawBufferFunPtr :: FunPtr (GLuint -> GLenum -> IO ())
glNamedFramebufferDrawBufferFunPtr = unsafePerformIO (getProcAddress "glNamedFramebufferDrawBuffer")
{-# NOINLINE glNamedFramebufferDrawBufferFunPtr #-}
-- | Usage: @'glNamedFramebufferDrawBuffers' framebuffer n bufs@
glNamedFramebufferDrawBuffers :: MonadIO m => GLuint -> GLsizei -> Ptr GLenum -> m ()
glNamedFramebufferDrawBuffers = ffiuintsizeiPtrenumIOV glNamedFramebufferDrawBuffersFunPtr
glNamedFramebufferDrawBuffersFunPtr :: FunPtr (GLuint -> GLsizei -> Ptr GLenum -> IO ())
glNamedFramebufferDrawBuffersFunPtr = unsafePerformIO (getProcAddress "glNamedFramebufferDrawBuffers")
{-# NOINLINE glNamedFramebufferDrawBuffersFunPtr #-}
-- | Usage: @'glNamedFramebufferParameteri' framebuffer pname param@
glNamedFramebufferParameteri :: MonadIO m => GLuint -> GLenum -> GLint -> m ()
glNamedFramebufferParameteri = ffiuintenumintIOV glNamedFramebufferParameteriFunPtr
glNamedFramebufferParameteriFunPtr :: FunPtr (GLuint -> GLenum -> GLint -> IO ())
glNamedFramebufferParameteriFunPtr = unsafePerformIO (getProcAddress "glNamedFramebufferParameteri")
{-# NOINLINE glNamedFramebufferParameteriFunPtr #-}
-- | Usage: @'glNamedFramebufferReadBuffer' framebuffer src@
glNamedFramebufferReadBuffer :: MonadIO m => GLuint -> GLenum -> m ()
glNamedFramebufferReadBuffer = ffiuintenumIOV glNamedFramebufferReadBufferFunPtr
glNamedFramebufferReadBufferFunPtr :: FunPtr (GLuint -> GLenum -> IO ())
glNamedFramebufferReadBufferFunPtr = unsafePerformIO (getProcAddress "glNamedFramebufferReadBuffer")
{-# NOINLINE glNamedFramebufferReadBufferFunPtr #-}
-- | Usage: @'glNamedFramebufferRenderbuffer' framebuffer attachment renderbuffertarget renderbuffer@
glNamedFramebufferRenderbuffer :: MonadIO m => GLuint -> GLenum -> GLenum -> GLuint -> m ()
glNamedFramebufferRenderbuffer = ffiuintenumenumuintIOV glNamedFramebufferRenderbufferFunPtr
glNamedFramebufferRenderbufferFunPtr :: FunPtr (GLuint -> GLenum -> GLenum -> GLuint -> IO ())
glNamedFramebufferRenderbufferFunPtr = unsafePerformIO (getProcAddress "glNamedFramebufferRenderbuffer")
{-# NOINLINE glNamedFramebufferRenderbufferFunPtr #-}
-- | Usage: @'glNamedFramebufferTexture' framebuffer attachment texture level@
glNamedFramebufferTexture :: MonadIO m => GLuint -> GLenum -> GLuint -> GLint -> m ()
glNamedFramebufferTexture = ffiuintenumuintintIOV glNamedFramebufferTextureFunPtr
glNamedFramebufferTextureFunPtr :: FunPtr (GLuint -> GLenum -> GLuint -> GLint -> IO ())
glNamedFramebufferTextureFunPtr = unsafePerformIO (getProcAddress "glNamedFramebufferTexture")
{-# NOINLINE glNamedFramebufferTextureFunPtr #-}
-- | Usage: @'glNamedFramebufferTextureLayer' framebuffer attachment texture level layer@
glNamedFramebufferTextureLayer :: MonadIO m => GLuint -> GLenum -> GLuint -> GLint -> GLint -> m ()
glNamedFramebufferTextureLayer = ffiuintenumuintintintIOV glNamedFramebufferTextureLayerFunPtr
glNamedFramebufferTextureLayerFunPtr :: FunPtr (GLuint -> GLenum -> GLuint -> GLint -> GLint -> IO ())
glNamedFramebufferTextureLayerFunPtr = unsafePerformIO (getProcAddress "glNamedFramebufferTextureLayer")
{-# NOINLINE glNamedFramebufferTextureLayerFunPtr #-}
-- | Usage: @'glNamedRenderbufferStorage' renderbuffer internalformat width height@
glNamedRenderbufferStorage :: MonadIO m => GLuint -> GLenum -> GLsizei -> GLsizei -> m ()
glNamedRenderbufferStorage = ffiuintenumsizeisizeiIOV glNamedRenderbufferStorageFunPtr
glNamedRenderbufferStorageFunPtr :: FunPtr (GLuint -> GLenum -> GLsizei -> GLsizei -> IO ())
glNamedRenderbufferStorageFunPtr = unsafePerformIO (getProcAddress "glNamedRenderbufferStorage")
{-# NOINLINE glNamedRenderbufferStorageFunPtr #-}
-- | Usage: @'glNamedRenderbufferStorageMultisample' renderbuffer samples internalformat width height@
glNamedRenderbufferStorageMultisample :: MonadIO m => GLuint -> GLsizei -> GLenum -> GLsizei -> GLsizei -> m ()
glNamedRenderbufferStorageMultisample = ffiuintsizeienumsizeisizeiIOV glNamedRenderbufferStorageMultisampleFunPtr
glNamedRenderbufferStorageMultisampleFunPtr :: FunPtr (GLuint -> GLsizei -> GLenum -> GLsizei -> GLsizei -> IO ())
glNamedRenderbufferStorageMultisampleFunPtr = unsafePerformIO (getProcAddress "glNamedRenderbufferStorageMultisample")
{-# NOINLINE glNamedRenderbufferStorageMultisampleFunPtr #-}
-- | Usage: @'glReadnPixels' x y width height format type bufSize data@
glReadnPixels :: MonadIO m => GLint -> GLint -> GLsizei -> GLsizei -> GLenum -> GLenum -> GLsizei -> Ptr () -> m ()
glReadnPixels = ffiintintsizeisizeienumenumsizeiPtrVIOV glReadnPixelsFunPtr
glReadnPixelsFunPtr :: FunPtr (GLint -> GLint -> GLsizei -> GLsizei -> GLenum -> GLenum -> GLsizei -> Ptr () -> IO ())
glReadnPixelsFunPtr = unsafePerformIO (getProcAddress "glReadnPixels")
{-# NOINLINE glReadnPixelsFunPtr #-}
-- | Usage: @'glTextureBarrier'@
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glTextureBarrier.xhtml>
glTextureBarrier :: MonadIO m => m ()
glTextureBarrier = ffiIOV glTextureBarrierFunPtr
glTextureBarrierFunPtr :: FunPtr (IO ())
glTextureBarrierFunPtr = unsafePerformIO (getProcAddress "glTextureBarrier")
{-# NOINLINE glTextureBarrierFunPtr #-}
-- | Usage: @'glTextureBuffer' texture internalformat buffer@
glTextureBuffer :: MonadIO m => GLuint -> GLenum -> GLuint -> m ()
glTextureBuffer = ffiuintenumuintIOV glTextureBufferFunPtr
glTextureBufferFunPtr :: FunPtr (GLuint -> GLenum -> GLuint -> IO ())
glTextureBufferFunPtr = unsafePerformIO (getProcAddress "glTextureBuffer")
{-# NOINLINE glTextureBufferFunPtr #-}
-- | Usage: @'glTextureBufferRange' texture internalformat buffer offset size@
--
-- The parameter @size@ is a @BufferSize@.
glTextureBufferRange :: MonadIO m => GLuint -> GLenum -> GLuint -> GLintptr -> GLsizeiptr -> m ()
glTextureBufferRange = ffiuintenumuintintptrsizeiptrIOV glTextureBufferRangeFunPtr
glTextureBufferRangeFunPtr :: FunPtr (GLuint -> GLenum -> GLuint -> GLintptr -> GLsizeiptr -> IO ())
glTextureBufferRangeFunPtr = unsafePerformIO (getProcAddress "glTextureBufferRange")
{-# NOINLINE glTextureBufferRangeFunPtr #-}
-- | Usage: @'glTextureParameterIiv' texture pname params@
glTextureParameterIiv :: MonadIO m => GLuint -> GLenum -> Ptr GLint -> m ()
glTextureParameterIiv = ffiuintenumPtrintIOV glTextureParameterIivFunPtr
glTextureParameterIivFunPtr :: FunPtr (GLuint -> GLenum -> Ptr GLint -> IO ())
glTextureParameterIivFunPtr = unsafePerformIO (getProcAddress "glTextureParameterIiv")
{-# NOINLINE glTextureParameterIivFunPtr #-}
-- | Usage: @'glTextureParameterIuiv' texture pname params@
glTextureParameterIuiv :: MonadIO m => GLuint -> GLenum -> Ptr GLuint -> m ()
glTextureParameterIuiv = ffiuintenumPtruintIOV glTextureParameterIuivFunPtr
glTextureParameterIuivFunPtr :: FunPtr (GLuint -> GLenum -> Ptr GLuint -> IO ())
glTextureParameterIuivFunPtr = unsafePerformIO (getProcAddress "glTextureParameterIuiv")
{-# NOINLINE glTextureParameterIuivFunPtr #-}
-- | Usage: @'glTextureParameterf' texture pname param@
glTextureParameterf :: MonadIO m => GLuint -> GLenum -> GLfloat -> m ()
glTextureParameterf = ffiuintenumfloatIOV glTextureParameterfFunPtr
glTextureParameterfFunPtr :: FunPtr (GLuint -> GLenum -> GLfloat -> IO ())
glTextureParameterfFunPtr = unsafePerformIO (getProcAddress "glTextureParameterf")
{-# NOINLINE glTextureParameterfFunPtr #-}
-- | Usage: @'glTextureParameterfv' texture pname param@
glTextureParameterfv :: MonadIO m => GLuint -> GLenum -> Ptr GLfloat -> m ()
glTextureParameterfv = ffiuintenumPtrfloatIOV glTextureParameterfvFunPtr
glTextureParameterfvFunPtr :: FunPtr (GLuint -> GLenum -> Ptr GLfloat -> IO ())
glTextureParameterfvFunPtr = unsafePerformIO (getProcAddress "glTextureParameterfv")
{-# NOINLINE glTextureParameterfvFunPtr #-}
-- | Usage: @'glTextureParameteri' texture pname param@
glTextureParameteri :: MonadIO m => GLuint -> GLenum -> GLint -> m ()
glTextureParameteri = ffiuintenumintIOV glTextureParameteriFunPtr
glTextureParameteriFunPtr :: FunPtr (GLuint -> GLenum -> GLint -> IO ())
glTextureParameteriFunPtr = unsafePerformIO (getProcAddress "glTextureParameteri")
{-# NOINLINE glTextureParameteriFunPtr #-}
-- | Usage: @'glTextureParameteriv' texture pname param@
glTextureParameteriv :: MonadIO m => GLuint -> GLenum -> Ptr GLint -> m ()
glTextureParameteriv = ffiuintenumPtrintIOV glTextureParameterivFunPtr
glTextureParameterivFunPtr :: FunPtr (GLuint -> GLenum -> Ptr GLint -> IO ())
glTextureParameterivFunPtr = unsafePerformIO (getProcAddress "glTextureParameteriv")
{-# NOINLINE glTextureParameterivFunPtr #-}
-- | Usage: @'glTextureStorage1D' texture levels internalformat width@
glTextureStorage1D :: MonadIO m => GLuint -> GLsizei -> GLenum -> GLsizei -> m ()
glTextureStorage1D = ffiuintsizeienumsizeiIOV glTextureStorage1DFunPtr
glTextureStorage1DFunPtr :: FunPtr (GLuint -> GLsizei -> GLenum -> GLsizei -> IO ())
glTextureStorage1DFunPtr = unsafePerformIO (getProcAddress "glTextureStorage1D")
{-# NOINLINE glTextureStorage1DFunPtr #-}
-- | Usage: @'glTextureStorage2D' texture levels internalformat width height@
glTextureStorage2D :: MonadIO m => GLuint -> GLsizei -> GLenum -> GLsizei -> GLsizei -> m ()
glTextureStorage2D = ffiuintsizeienumsizeisizeiIOV glTextureStorage2DFunPtr
glTextureStorage2DFunPtr :: FunPtr (GLuint -> GLsizei -> GLenum -> GLsizei -> GLsizei -> IO ())
glTextureStorage2DFunPtr = unsafePerformIO (getProcAddress "glTextureStorage2D")
{-# NOINLINE glTextureStorage2DFunPtr #-}
-- | Usage: @'glTextureStorage2DMultisample' texture samples internalformat width height fixedsamplelocations@
glTextureStorage2DMultisample :: MonadIO m => GLuint -> GLsizei -> GLenum -> GLsizei -> GLsizei -> GLboolean -> m ()
glTextureStorage2DMultisample = ffiuintsizeienumsizeisizeibooleanIOV glTextureStorage2DMultisampleFunPtr
glTextureStorage2DMultisampleFunPtr :: FunPtr (GLuint -> GLsizei -> GLenum -> GLsizei -> GLsizei -> GLboolean -> IO ())
glTextureStorage2DMultisampleFunPtr = unsafePerformIO (getProcAddress "glTextureStorage2DMultisample")
{-# NOINLINE glTextureStorage2DMultisampleFunPtr #-}
-- | Usage: @'glTextureStorage3D' texture levels internalformat width height depth@
glTextureStorage3D :: MonadIO m => GLuint -> GLsizei -> GLenum -> GLsizei -> GLsizei -> GLsizei -> m ()
glTextureStorage3D = ffiuintsizeienumsizeisizeisizeiIOV glTextureStorage3DFunPtr
glTextureStorage3DFunPtr :: FunPtr (GLuint -> GLsizei -> GLenum -> GLsizei -> GLsizei -> GLsizei -> IO ())
glTextureStorage3DFunPtr = unsafePerformIO (getProcAddress "glTextureStorage3D")
{-# NOINLINE glTextureStorage3DFunPtr #-}
-- | Usage: @'glTextureStorage3DMultisample' texture samples internalformat width height depth fixedsamplelocations@
glTextureStorage3DMultisample :: MonadIO m => GLuint -> GLsizei -> GLenum -> GLsizei -> GLsizei -> GLsizei -> GLboolean -> m ()
glTextureStorage3DMultisample = ffiuintsizeienumsizeisizeisizeibooleanIOV glTextureStorage3DMultisampleFunPtr
glTextureStorage3DMultisampleFunPtr :: FunPtr (GLuint -> GLsizei -> GLenum -> GLsizei -> GLsizei -> GLsizei -> GLboolean -> IO ())
glTextureStorage3DMultisampleFunPtr = unsafePerformIO (getProcAddress "glTextureStorage3DMultisample")
{-# NOINLINE glTextureStorage3DMultisampleFunPtr #-}
-- | Usage: @'glTextureSubImage1D' texture level xoffset width format type pixels@
glTextureSubImage1D :: MonadIO m => GLuint -> GLint -> GLint -> GLsizei -> GLenum -> GLenum -> Ptr () -> m ()
glTextureSubImage1D = ffiuintintintsizeienumenumPtrVIOV glTextureSubImage1DFunPtr
glTextureSubImage1DFunPtr :: FunPtr (GLuint -> GLint -> GLint -> GLsizei -> GLenum -> GLenum -> Ptr () -> IO ())
glTextureSubImage1DFunPtr = unsafePerformIO (getProcAddress "glTextureSubImage1D")
{-# NOINLINE glTextureSubImage1DFunPtr #-}
-- | Usage: @'glTextureSubImage2D' texture level xoffset yoffset width height format type pixels@
glTextureSubImage2D :: MonadIO m => GLuint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLenum -> GLenum -> Ptr () -> m ()
glTextureSubImage2D = ffiuintintintintsizeisizeienumenumPtrVIOV glTextureSubImage2DFunPtr
glTextureSubImage2DFunPtr :: FunPtr (GLuint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLenum -> GLenum -> Ptr () -> IO ())
glTextureSubImage2DFunPtr = unsafePerformIO (getProcAddress "glTextureSubImage2D")
{-# NOINLINE glTextureSubImage2DFunPtr #-}
-- | Usage: @'glTextureSubImage3D' texture level xoffset yoffset zoffset width height depth format type pixels@
glTextureSubImage3D :: MonadIO m => GLuint -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLenum -> GLenum -> Ptr () -> m ()
glTextureSubImage3D = ffiuintintintintintsizeisizeisizeienumenumPtrVIOV glTextureSubImage3DFunPtr
glTextureSubImage3DFunPtr :: FunPtr (GLuint -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLenum -> GLenum -> Ptr () -> IO ())
glTextureSubImage3DFunPtr = unsafePerformIO (getProcAddress "glTextureSubImage3D")
{-# NOINLINE glTextureSubImage3DFunPtr #-}
-- | Usage: @'glTransformFeedbackBufferBase' xfb index buffer@
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glTransformFeedbackBufferBase.xhtml>
glTransformFeedbackBufferBase :: MonadIO m => GLuint -> GLuint -> GLuint -> m ()
glTransformFeedbackBufferBase = ffiuintuintuintIOV glTransformFeedbackBufferBaseFunPtr
glTransformFeedbackBufferBaseFunPtr :: FunPtr (GLuint -> GLuint -> GLuint -> IO ())
glTransformFeedbackBufferBaseFunPtr = unsafePerformIO (getProcAddress "glTransformFeedbackBufferBase")
{-# NOINLINE glTransformFeedbackBufferBaseFunPtr #-}
-- | Usage: @'glTransformFeedbackBufferRange' xfb index buffer offset size@
--
-- The parameter @size@ is a @BufferSize@.
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glTransformFeedbackBufferRange.xhtml>
glTransformFeedbackBufferRange :: MonadIO m => GLuint -> GLuint -> GLuint -> GLintptr -> GLsizeiptr -> m ()
glTransformFeedbackBufferRange = ffiuintuintuintintptrsizeiptrIOV glTransformFeedbackBufferRangeFunPtr
glTransformFeedbackBufferRangeFunPtr :: FunPtr (GLuint -> GLuint -> GLuint -> GLintptr -> GLsizeiptr -> IO ())
glTransformFeedbackBufferRangeFunPtr = unsafePerformIO (getProcAddress "glTransformFeedbackBufferRange")
{-# NOINLINE glTransformFeedbackBufferRangeFunPtr #-}
-- | Usage: @'glUnmapNamedBuffer' buffer@
glUnmapNamedBuffer :: MonadIO m => GLuint -> m GLboolean
glUnmapNamedBuffer = ffiuintIOboolean glUnmapNamedBufferFunPtr
glUnmapNamedBufferFunPtr :: FunPtr (GLuint -> IO GLboolean)
glUnmapNamedBufferFunPtr = unsafePerformIO (getProcAddress "glUnmapNamedBuffer")
{-# NOINLINE glUnmapNamedBufferFunPtr #-}
-- | Usage: @'glVertexArrayAttribBinding' vaobj attribindex bindingindex@
glVertexArrayAttribBinding :: MonadIO m => GLuint -> GLuint -> GLuint -> m ()
glVertexArrayAttribBinding = ffiuintuintuintIOV glVertexArrayAttribBindingFunPtr
glVertexArrayAttribBindingFunPtr :: FunPtr (GLuint -> GLuint -> GLuint -> IO ())
glVertexArrayAttribBindingFunPtr = unsafePerformIO (getProcAddress "glVertexArrayAttribBinding")
{-# NOINLINE glVertexArrayAttribBindingFunPtr #-}
-- | Usage: @'glVertexArrayAttribFormat' vaobj attribindex size type normalized relativeoffset@
glVertexArrayAttribFormat :: MonadIO m => GLuint -> GLuint -> GLint -> GLenum -> GLboolean -> GLuint -> m ()
glVertexArrayAttribFormat = ffiuintuintintenumbooleanuintIOV glVertexArrayAttribFormatFunPtr
glVertexArrayAttribFormatFunPtr :: FunPtr (GLuint -> GLuint -> GLint -> GLenum -> GLboolean -> GLuint -> IO ())
glVertexArrayAttribFormatFunPtr = unsafePerformIO (getProcAddress "glVertexArrayAttribFormat")
{-# NOINLINE glVertexArrayAttribFormatFunPtr #-}
-- | Usage: @'glVertexArrayAttribIFormat' vaobj attribindex size type relativeoffset@
glVertexArrayAttribIFormat :: MonadIO m => GLuint -> GLuint -> GLint -> GLenum -> GLuint -> m ()
glVertexArrayAttribIFormat = ffiuintuintintenumuintIOV glVertexArrayAttribIFormatFunPtr
glVertexArrayAttribIFormatFunPtr :: FunPtr (GLuint -> GLuint -> GLint -> GLenum -> GLuint -> IO ())
glVertexArrayAttribIFormatFunPtr = unsafePerformIO (getProcAddress "glVertexArrayAttribIFormat")
{-# NOINLINE glVertexArrayAttribIFormatFunPtr #-}
-- | Usage: @'glVertexArrayAttribLFormat' vaobj attribindex size type relativeoffset@
glVertexArrayAttribLFormat :: MonadIO m => GLuint -> GLuint -> GLint -> GLenum -> GLuint -> m ()
glVertexArrayAttribLFormat = ffiuintuintintenumuintIOV glVertexArrayAttribLFormatFunPtr
glVertexArrayAttribLFormatFunPtr :: FunPtr (GLuint -> GLuint -> GLint -> GLenum -> GLuint -> IO ())
glVertexArrayAttribLFormatFunPtr = unsafePerformIO (getProcAddress "glVertexArrayAttribLFormat")
{-# NOINLINE glVertexArrayAttribLFormatFunPtr #-}
-- | Usage: @'glVertexArrayBindingDivisor' vaobj bindingindex divisor@
glVertexArrayBindingDivisor :: MonadIO m => GLuint -> GLuint -> GLuint -> m ()
glVertexArrayBindingDivisor = ffiuintuintuintIOV glVertexArrayBindingDivisorFunPtr
glVertexArrayBindingDivisorFunPtr :: FunPtr (GLuint -> GLuint -> GLuint -> IO ())
glVertexArrayBindingDivisorFunPtr = unsafePerformIO (getProcAddress "glVertexArrayBindingDivisor")
{-# NOINLINE glVertexArrayBindingDivisorFunPtr #-}
-- | Usage: @'glVertexArrayElementBuffer' vaobj buffer@
--
-- Manual page: <https://www.opengl.org/sdk/docs/man/html/glVertexArrayElementBuffer.xhtml>
glVertexArrayElementBuffer :: MonadIO m => GLuint -> GLuint -> m ()
glVertexArrayElementBuffer = ffiuintuintIOV glVertexArrayElementBufferFunPtr
glVertexArrayElementBufferFunPtr :: FunPtr (GLuint -> GLuint -> IO ())
glVertexArrayElementBufferFunPtr = unsafePerformIO (getProcAddress "glVertexArrayElementBuffer")
{-# NOINLINE glVertexArrayElementBufferFunPtr #-}
-- | Usage: @'glVertexArrayVertexBuffer' vaobj bindingindex buffer offset stride@
glVertexArrayVertexBuffer :: MonadIO m => GLuint -> GLuint -> GLuint -> GLintptr -> GLsizei -> m ()
glVertexArrayVertexBuffer = ffiuintuintuintintptrsizeiIOV glVertexArrayVertexBufferFunPtr
glVertexArrayVertexBufferFunPtr :: FunPtr (GLuint -> GLuint -> GLuint -> GLintptr -> GLsizei -> IO ())
glVertexArrayVertexBufferFunPtr = unsafePerformIO (getProcAddress "glVertexArrayVertexBuffer")
{-# NOINLINE glVertexArrayVertexBufferFunPtr #-}
-- | Usage: @'glVertexArrayVertexBuffers' vaobj first count buffers offsets strides@
glVertexArrayVertexBuffers :: MonadIO m => GLuint -> GLuint -> GLsizei -> Ptr GLuint -> Ptr GLintptr -> Ptr GLsizei -> m ()
glVertexArrayVertexBuffers = ffiuintuintsizeiPtruintPtrintptrPtrsizeiIOV glVertexArrayVertexBuffersFunPtr
glVertexArrayVertexBuffersFunPtr :: FunPtr (GLuint -> GLuint -> GLsizei -> Ptr GLuint -> Ptr GLintptr -> Ptr GLsizei -> IO ())
glVertexArrayVertexBuffersFunPtr = unsafePerformIO (getProcAddress "glVertexArrayVertexBuffers")
{-# NOINLINE glVertexArrayVertexBuffersFunPtr #-}
pattern GL_CLIP_DEPTH_MODE = 0x935D
pattern GL_CLIP_ORIGIN = 0x935C
pattern GL_CONTEXT_FLAG_ROBUST_ACCESS_BIT = 0x00000004
pattern GL_CONTEXT_LOST = 0x0507
pattern GL_CONTEXT_RELEASE_BEHAVIOR = 0x82FB
pattern GL_CONTEXT_RELEASE_BEHAVIOR_FLUSH = 0x82FC
pattern GL_GUILTY_CONTEXT_RESET = 0x8253
pattern GL_INNOCENT_CONTEXT_RESET = 0x8254
pattern GL_LOSE_CONTEXT_ON_RESET = 0x8252
pattern GL_MAX_COMBINED_CLIP_AND_CULL_DISTANCES = 0x82FA
pattern GL_MAX_CULL_DISTANCES = 0x82F9
pattern GL_NEGATIVE_ONE_TO_ONE = 0x935E
pattern GL_NO_RESET_NOTIFICATION = 0x8261
pattern GL_QUERY_BY_REGION_NO_WAIT_INVERTED = 0x8E1A
pattern GL_QUERY_BY_REGION_WAIT_INVERTED = 0x8E19
pattern GL_QUERY_NO_WAIT_INVERTED = 0x8E18
pattern GL_QUERY_TARGET = 0x82EA
pattern GL_QUERY_WAIT_INVERTED = 0x8E17
pattern GL_RESET_NOTIFICATION_STRATEGY = 0x8256
pattern GL_TEXTURE_TARGET = 0x1006
pattern GL_UNKNOWN_CONTEXT_RESET = 0x8255
pattern GL_ZERO_TO_ONE = 0x935F
pattern GL_BLEND_EQUATION = 0x8009
pattern GL_FRAMEBUFFER_INCOMPLETE_DIMENSIONS = 0x8CD9
pattern GL_SUBSAMPLE_DISTANCE_AMD = 0x883F
pattern GL_FLOAT16_NV = 0x8FF8
pattern GL_FLOAT16_VEC2_NV = 0x8FF9
pattern GL_FLOAT16_VEC3_NV = 0x8FFA
pattern GL_FLOAT16_VEC4_NV = 0x8FFB
-- | Usage: @'glGetUniformi64vNV' program location params@
--
-- The length of @params@ should be @COMPSIZE(program,location)@.
glGetUniformi64vNV :: MonadIO m => GLuint -> GLint -> Ptr GLint64EXT -> m ()
glGetUniformi64vNV = ffiuintintPtrint64EXTIOV glGetUniformi64vNVFunPtr
glGetUniformi64vNVFunPtr :: FunPtr (GLuint -> GLint -> Ptr GLint64EXT -> IO ())
glGetUniformi64vNVFunPtr = unsafePerformIO (getProcAddress "glGetUniformi64vNV")
{-# NOINLINE glGetUniformi64vNVFunPtr #-}
-- | Usage: @'glGetUniformui64vNV' program location params@
--
-- The length of @params@ should be @COMPSIZE(program,location)@.
glGetUniformui64vNV :: MonadIO m => GLuint -> GLint -> Ptr GLuint64EXT -> m ()
glGetUniformui64vNV = ffiuintintPtruint64EXTIOV glGetUniformui64vNVFunPtr
glGetUniformui64vNVFunPtr :: FunPtr (GLuint -> GLint -> Ptr GLuint64EXT -> IO ())
glGetUniformui64vNVFunPtr = unsafePerformIO (getProcAddress "glGetUniformui64vNV")
{-# NOINLINE glGetUniformui64vNVFunPtr #-}
-- | Usage: @'glProgramUniform1i64NV' program location x@
glProgramUniform1i64NV :: MonadIO m => GLuint -> GLint -> GLint64EXT -> m ()
glProgramUniform1i64NV = ffiuintintint64EXTIOV glProgramUniform1i64NVFunPtr
glProgramUniform1i64NVFunPtr :: FunPtr (GLuint -> GLint -> GLint64EXT -> IO ())
glProgramUniform1i64NVFunPtr = unsafePerformIO (getProcAddress "glProgramUniform1i64NV")
{-# NOINLINE glProgramUniform1i64NVFunPtr #-}
-- | Usage: @'glProgramUniform1i64vNV' program location count value@
--
-- The length of @value@ should be @count@.
glProgramUniform1i64vNV :: MonadIO m => GLuint -> GLint -> GLsizei -> Ptr GLint64EXT -> m ()
glProgramUniform1i64vNV = ffiuintintsizeiPtrint64EXTIOV glProgramUniform1i64vNVFunPtr
glProgramUniform1i64vNVFunPtr :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLint64EXT -> IO ())
glProgramUniform1i64vNVFunPtr = unsafePerformIO (getProcAddress "glProgramUniform1i64vNV")
{-# NOINLINE glProgramUniform1i64vNVFunPtr #-}
-- | Usage: @'glProgramUniform1ui64NV' program location x@
glProgramUniform1ui64NV :: MonadIO m => GLuint -> GLint -> GLuint64EXT -> m ()
glProgramUniform1ui64NV = ffiuintintuint64EXTIOV glProgramUniform1ui64NVFunPtr
glProgramUniform1ui64NVFunPtr :: FunPtr (GLuint -> GLint -> GLuint64EXT -> IO ())
glProgramUniform1ui64NVFunPtr = unsafePerformIO (getProcAddress "glProgramUniform1ui64NV")
{-# NOINLINE glProgramUniform1ui64NVFunPtr #-}
-- | Usage: @'glProgramUniform1ui64vNV' program location count value@
--
-- The length of @value@ should be @count@.
glProgramUniform1ui64vNV :: MonadIO m => GLuint -> GLint -> GLsizei -> Ptr GLuint64EXT -> m ()
glProgramUniform1ui64vNV = ffiuintintsizeiPtruint64EXTIOV glProgramUniform1ui64vNVFunPtr
glProgramUniform1ui64vNVFunPtr :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLuint64EXT -> IO ())
glProgramUniform1ui64vNVFunPtr = unsafePerformIO (getProcAddress "glProgramUniform1ui64vNV")
{-# NOINLINE glProgramUniform1ui64vNVFunPtr #-}
-- | Usage: @'glProgramUniform2i64NV' program location x y@
glProgramUniform2i64NV :: MonadIO m => GLuint -> GLint -> GLint64EXT -> GLint64EXT -> m ()
glProgramUniform2i64NV = ffiuintintint64EXTint64EXTIOV glProgramUniform2i64NVFunPtr
glProgramUniform2i64NVFunPtr :: FunPtr (GLuint -> GLint -> GLint64EXT -> GLint64EXT -> IO ())
glProgramUniform2i64NVFunPtr = unsafePerformIO (getProcAddress "glProgramUniform2i64NV")
{-# NOINLINE glProgramUniform2i64NVFunPtr #-}
-- | Usage: @'glProgramUniform2i64vNV' program location count value@
--
-- The length of @value@ should be @count*2@.
glProgramUniform2i64vNV :: MonadIO m => GLuint -> GLint -> GLsizei -> Ptr GLint64EXT -> m ()
glProgramUniform2i64vNV = ffiuintintsizeiPtrint64EXTIOV glProgramUniform2i64vNVFunPtr
glProgramUniform2i64vNVFunPtr :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLint64EXT -> IO ())
glProgramUniform2i64vNVFunPtr = unsafePerformIO (getProcAddress "glProgramUniform2i64vNV")
{-# NOINLINE glProgramUniform2i64vNVFunPtr #-}
-- | Usage: @'glProgramUniform2ui64NV' program location x y@
glProgramUniform2ui64NV :: MonadIO m => GLuint -> GLint -> GLuint64EXT -> GLuint64EXT -> m ()
glProgramUniform2ui64NV = ffiuintintuint64EXTuint64EXTIOV glProgramUniform2ui64NVFunPtr
glProgramUniform2ui64NVFunPtr :: FunPtr (GLuint -> GLint -> GLuint64EXT -> GLuint64EXT -> IO ())
glProgramUniform2ui64NVFunPtr = unsafePerformIO (getProcAddress "glProgramUniform2ui64NV")
{-# NOINLINE glProgramUniform2ui64NVFunPtr #-}
-- | Usage: @'glProgramUniform2ui64vNV' program location count value@
--
-- The length of @value@ should be @count*2@.
glProgramUniform2ui64vNV :: MonadIO m => GLuint -> GLint -> GLsizei -> Ptr GLuint64EXT -> m ()
glProgramUniform2ui64vNV = ffiuintintsizeiPtruint64EXTIOV glProgramUniform2ui64vNVFunPtr
glProgramUniform2ui64vNVFunPtr :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLuint64EXT -> IO ())
glProgramUniform2ui64vNVFunPtr = unsafePerformIO (getProcAddress "glProgramUniform2ui64vNV")
{-# NOINLINE glProgramUniform2ui64vNVFunPtr #-}
-- | Usage: @'glProgramUniform3i64NV' program location x y z@
glProgramUniform3i64NV :: MonadIO m => GLuint -> GLint -> GLint64EXT -> GLint64EXT -> GLint64EXT -> m ()
glProgramUniform3i64NV = ffiuintintint64EXTint64EXTint64EXTIOV glProgramUniform3i64NVFunPtr
glProgramUniform3i64NVFunPtr :: FunPtr (GLuint -> GLint -> GLint64EXT -> GLint64EXT -> GLint64EXT -> IO ())
glProgramUniform3i64NVFunPtr = unsafePerformIO (getProcAddress "glProgramUniform3i64NV")
{-# NOINLINE glProgramUniform3i64NVFunPtr #-}
-- | Usage: @'glProgramUniform3i64vNV' program location count value@
--
-- The length of @value@ should be @count*3@.
glProgramUniform3i64vNV :: MonadIO m => GLuint -> GLint -> GLsizei -> Ptr GLint64EXT -> m ()
glProgramUniform3i64vNV = ffiuintintsizeiPtrint64EXTIOV glProgramUniform3i64vNVFunPtr
glProgramUniform3i64vNVFunPtr :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLint64EXT -> IO ())
glProgramUniform3i64vNVFunPtr = unsafePerformIO (getProcAddress "glProgramUniform3i64vNV")
{-# NOINLINE glProgramUniform3i64vNVFunPtr #-}
-- | Usage: @'glProgramUniform3ui64NV' program location x y z@
glProgramUniform3ui64NV :: MonadIO m => GLuint -> GLint -> GLuint64EXT -> GLuint64EXT -> GLuint64EXT -> m ()
glProgramUniform3ui64NV = ffiuintintuint64EXTuint64EXTuint64EXTIOV glProgramUniform3ui64NVFunPtr
glProgramUniform3ui64NVFunPtr :: FunPtr (GLuint -> GLint -> GLuint64EXT -> GLuint64EXT -> GLuint64EXT -> IO ())
glProgramUniform3ui64NVFunPtr = unsafePerformIO (getProcAddress "glProgramUniform3ui64NV")
{-# NOINLINE glProgramUniform3ui64NVFunPtr #-}
-- | Usage: @'glProgramUniform3ui64vNV' program location count value@
--
-- The length of @value@ should be @count*3@.
glProgramUniform3ui64vNV :: MonadIO m => GLuint -> GLint -> GLsizei -> Ptr GLuint64EXT -> m ()
glProgramUniform3ui64vNV = ffiuintintsizeiPtruint64EXTIOV glProgramUniform3ui64vNVFunPtr
glProgramUniform3ui64vNVFunPtr :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLuint64EXT -> IO ())
glProgramUniform3ui64vNVFunPtr = unsafePerformIO (getProcAddress "glProgramUniform3ui64vNV")
{-# NOINLINE glProgramUniform3ui64vNVFunPtr #-}
-- | Usage: @'glProgramUniform4i64NV' program location x y z w@
glProgramUniform4i64NV :: MonadIO m => GLuint -> GLint -> GLint64EXT -> GLint64EXT -> GLint64EXT -> GLint64EXT -> m ()
glProgramUniform4i64NV = ffiuintintint64EXTint64EXTint64EXTint64EXTIOV glProgramUniform4i64NVFunPtr
glProgramUniform4i64NVFunPtr :: FunPtr (GLuint -> GLint -> GLint64EXT -> GLint64EXT -> GLint64EXT -> GLint64EXT -> IO ())
glProgramUniform4i64NVFunPtr = unsafePerformIO (getProcAddress "glProgramUniform4i64NV")
{-# NOINLINE glProgramUniform4i64NVFunPtr #-}
-- | Usage: @'glProgramUniform4i64vNV' program location count value@
--
-- The length of @value@ should be @count*4@.
glProgramUniform4i64vNV :: MonadIO m => GLuint -> GLint -> GLsizei -> Ptr GLint64EXT -> m ()
glProgramUniform4i64vNV = ffiuintintsizeiPtrint64EXTIOV glProgramUniform4i64vNVFunPtr
glProgramUniform4i64vNVFunPtr :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLint64EXT -> IO ())
glProgramUniform4i64vNVFunPtr = unsafePerformIO (getProcAddress "glProgramUniform4i64vNV")
{-# NOINLINE glProgramUniform4i64vNVFunPtr #-}
-- | Usage: @'glProgramUniform4ui64NV' program location x y z w@
glProgramUniform4ui64NV :: MonadIO m => GLuint -> GLint -> GLuint64EXT -> GLuint64EXT -> GLuint64EXT -> GLuint64EXT -> m ()
glProgramUniform4ui64NV = ffiuintintuint64EXTuint64EXTuint64EXTuint64EXTIOV glProgramUniform4ui64NVFunPtr
glProgramUniform4ui64NVFunPtr :: FunPtr (GLuint -> GLint -> GLuint64EXT -> GLuint64EXT -> GLuint64EXT -> GLuint64EXT -> IO ())
glProgramUniform4ui64NVFunPtr = unsafePerformIO (getProcAddress "glProgramUniform4ui64NV")
{-# NOINLINE glProgramUniform4ui64NVFunPtr #-}
-- | Usage: @'glProgramUniform4ui64vNV' program location count value@
--
-- The length of @value@ should be @count*4@.
glProgramUniform4ui64vNV :: MonadIO m => GLuint -> GLint -> GLsizei -> Ptr GLuint64EXT -> m ()
glProgramUniform4ui64vNV = ffiuintintsizeiPtruint64EXTIOV glProgramUniform4ui64vNVFunPtr
glProgramUniform4ui64vNVFunPtr :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLuint64EXT -> IO ())
glProgramUniform4ui64vNVFunPtr = unsafePerformIO (getProcAddress "glProgramUniform4ui64vNV")
{-# NOINLINE glProgramUniform4ui64vNVFunPtr #-}
-- | Usage: @'glUniform1i64NV' location x@
glUniform1i64NV :: MonadIO m => GLint -> GLint64EXT -> m ()
glUniform1i64NV = ffiintint64EXTIOV glUniform1i64NVFunPtr
glUniform1i64NVFunPtr :: FunPtr (GLint -> GLint64EXT -> IO ())
glUniform1i64NVFunPtr = unsafePerformIO (getProcAddress "glUniform1i64NV")
{-# NOINLINE glUniform1i64NVFunPtr #-}
-- | Usage: @'glUniform1i64vNV' location count value@
--
-- The length of @value@ should be @count*1@.
glUniform1i64vNV :: MonadIO m => GLint -> GLsizei -> Ptr GLint64EXT -> m ()
glUniform1i64vNV = ffiintsizeiPtrint64EXTIOV glUniform1i64vNVFunPtr
glUniform1i64vNVFunPtr :: FunPtr (GLint -> GLsizei -> Ptr GLint64EXT -> IO ())
glUniform1i64vNVFunPtr = unsafePerformIO (getProcAddress "glUniform1i64vNV")
{-# NOINLINE glUniform1i64vNVFunPtr #-}
-- | Usage: @'glUniform1ui64NV' location x@
glUniform1ui64NV :: MonadIO m => GLint -> GLuint64EXT -> m ()
glUniform1ui64NV = ffiintuint64EXTIOV glUniform1ui64NVFunPtr
glUniform1ui64NVFunPtr :: FunPtr (GLint -> GLuint64EXT -> IO ())
glUniform1ui64NVFunPtr = unsafePerformIO (getProcAddress "glUniform1ui64NV")
{-# NOINLINE glUniform1ui64NVFunPtr #-}
-- | Usage: @'glUniform1ui64vNV' location count value@
--
-- The length of @value@ should be @count*1@.
glUniform1ui64vNV :: MonadIO m => GLint -> GLsizei -> Ptr GLuint64EXT -> m ()
glUniform1ui64vNV = ffiintsizeiPtruint64EXTIOV glUniform1ui64vNVFunPtr
glUniform1ui64vNVFunPtr :: FunPtr (GLint -> GLsizei -> Ptr GLuint64EXT -> IO ())
glUniform1ui64vNVFunPtr = unsafePerformIO (getProcAddress "glUniform1ui64vNV")
{-# NOINLINE glUniform1ui64vNVFunPtr #-}
-- | Usage: @'glUniform2i64NV' location x y@
glUniform2i64NV :: MonadIO m => GLint -> GLint64EXT -> GLint64EXT -> m ()
glUniform2i64NV = ffiintint64EXTint64EXTIOV glUniform2i64NVFunPtr
glUniform2i64NVFunPtr :: FunPtr (GLint -> GLint64EXT -> GLint64EXT -> IO ())
glUniform2i64NVFunPtr = unsafePerformIO (getProcAddress "glUniform2i64NV")
{-# NOINLINE glUniform2i64NVFunPtr #-}
-- | Usage: @'glUniform2i64vNV' location count value@
--
-- The length of @value@ should be @count*2@.
glUniform2i64vNV :: MonadIO m => GLint -> GLsizei -> Ptr GLint64EXT -> m ()
glUniform2i64vNV = ffiintsizeiPtrint64EXTIOV glUniform2i64vNVFunPtr
glUniform2i64vNVFunPtr :: FunPtr (GLint -> GLsizei -> Ptr GLint64EXT -> IO ())
glUniform2i64vNVFunPtr = unsafePerformIO (getProcAddress "glUniform2i64vNV")
{-# NOINLINE glUniform2i64vNVFunPtr #-}
-- | Usage: @'glUniform2ui64NV' location x y@
glUniform2ui64NV :: MonadIO m => GLint -> GLuint64EXT -> GLuint64EXT -> m ()
glUniform2ui64NV = ffiintuint64EXTuint64EXTIOV glUniform2ui64NVFunPtr
glUniform2ui64NVFunPtr :: FunPtr (GLint -> GLuint64EXT -> GLuint64EXT -> IO ())
glUniform2ui64NVFunPtr = unsafePerformIO (getProcAddress "glUniform2ui64NV")
{-# NOINLINE glUniform2ui64NVFunPtr #-}
-- | Usage: @'glUniform2ui64vNV' location count value@
--
-- The length of @value@ should be @count*2@.
glUniform2ui64vNV :: MonadIO m => GLint -> GLsizei -> Ptr GLuint64EXT -> m ()
glUniform2ui64vNV = ffiintsizeiPtruint64EXTIOV glUniform2ui64vNVFunPtr
glUniform2ui64vNVFunPtr :: FunPtr (GLint -> GLsizei -> Ptr GLuint64EXT -> IO ())
glUniform2ui64vNVFunPtr = unsafePerformIO (getProcAddress "glUniform2ui64vNV")
{-# NOINLINE glUniform2ui64vNVFunPtr #-}
-- | Usage: @'glUniform3i64NV' location x y z@
glUniform3i64NV :: MonadIO m => GLint -> GLint64EXT -> GLint64EXT -> GLint64EXT -> m ()
glUniform3i64NV = ffiintint64EXTint64EXTint64EXTIOV glUniform3i64NVFunPtr
glUniform3i64NVFunPtr :: FunPtr (GLint -> GLint64EXT -> GLint64EXT -> GLint64EXT -> IO ())
glUniform3i64NVFunPtr = unsafePerformIO (getProcAddress "glUniform3i64NV")
{-# NOINLINE glUniform3i64NVFunPtr #-}
-- | Usage: @'glUniform3i64vNV' location count value@
--
-- The length of @value@ should be @count*3@.
glUniform3i64vNV :: MonadIO m => GLint -> GLsizei -> Ptr GLint64EXT -> m ()
glUniform3i64vNV = ffiintsizeiPtrint64EXTIOV glUniform3i64vNVFunPtr
glUniform3i64vNVFunPtr :: FunPtr (GLint -> GLsizei -> Ptr GLint64EXT -> IO ())
glUniform3i64vNVFunPtr = unsafePerformIO (getProcAddress "glUniform3i64vNV")
{-# NOINLINE glUniform3i64vNVFunPtr #-}
-- | Usage: @'glUniform3ui64NV' location x y z@
glUniform3ui64NV :: MonadIO m => GLint -> GLuint64EXT -> GLuint64EXT -> GLuint64EXT -> m ()
glUniform3ui64NV = ffiintuint64EXTuint64EXTuint64EXTIOV glUniform3ui64NVFunPtr
glUniform3ui64NVFunPtr :: FunPtr (GLint -> GLuint64EXT -> GLuint64EXT -> GLuint64EXT -> IO ())
glUniform3ui64NVFunPtr = unsafePerformIO (getProcAddress "glUniform3ui64NV")
{-# NOINLINE glUniform3ui64NVFunPtr #-}
-- | Usage: @'glUniform3ui64vNV' location count value@
--
-- The length of @value@ should be @count*3@.
glUniform3ui64vNV :: MonadIO m => GLint -> GLsizei -> Ptr GLuint64EXT -> m ()
glUniform3ui64vNV = ffiintsizeiPtruint64EXTIOV glUniform3ui64vNVFunPtr
glUniform3ui64vNVFunPtr :: FunPtr (GLint -> GLsizei -> Ptr GLuint64EXT -> IO ())
glUniform3ui64vNVFunPtr = unsafePerformIO (getProcAddress "glUniform3ui64vNV")
{-# NOINLINE glUniform3ui64vNVFunPtr #-}
-- | Usage: @'glUniform4i64NV' location x y z w@
glUniform4i64NV :: MonadIO m => GLint -> GLint64EXT -> GLint64EXT -> GLint64EXT -> GLint64EXT -> m ()
glUniform4i64NV = ffiintint64EXTint64EXTint64EXTint64EXTIOV glUniform4i64NVFunPtr
glUniform4i64NVFunPtr :: FunPtr (GLint -> GLint64EXT -> GLint64EXT -> GLint64EXT -> GLint64EXT -> IO ())
glUniform4i64NVFunPtr = unsafePerformIO (getProcAddress "glUniform4i64NV")
{-# NOINLINE glUniform4i64NVFunPtr #-}
-- | Usage: @'glUniform4i64vNV' location count value@
--
-- The length of @value@ should be @count*4@.
glUniform4i64vNV :: MonadIO m => GLint -> GLsizei -> Ptr GLint64EXT -> m ()
glUniform4i64vNV = ffiintsizeiPtrint64EXTIOV glUniform4i64vNVFunPtr
glUniform4i64vNVFunPtr :: FunPtr (GLint -> GLsizei -> Ptr GLint64EXT -> IO ())
glUniform4i64vNVFunPtr = unsafePerformIO (getProcAddress "glUniform4i64vNV")
{-# NOINLINE glUniform4i64vNVFunPtr #-}
-- | Usage: @'glUniform4ui64NV' location x y z w@
glUniform4ui64NV :: MonadIO m => GLint -> GLuint64EXT -> GLuint64EXT -> GLuint64EXT -> GLuint64EXT -> m ()
glUniform4ui64NV = ffiintuint64EXTuint64EXTuint64EXTuint64EXTIOV glUniform4ui64NVFunPtr
glUniform4ui64NVFunPtr :: FunPtr (GLint -> GLuint64EXT -> GLuint64EXT -> GLuint64EXT -> GLuint64EXT -> IO ())
glUniform4ui64NVFunPtr = unsafePerformIO (getProcAddress "glUniform4ui64NV")
{-# NOINLINE glUniform4ui64NVFunPtr #-}
-- | Usage: @'glUniform4ui64vNV' location count value@
--
-- The length of @value@ should be @count*4@.
glUniform4ui64vNV :: MonadIO m => GLint -> GLsizei -> Ptr GLuint64EXT -> m ()
glUniform4ui64vNV = ffiintsizeiPtruint64EXTIOV glUniform4ui64vNVFunPtr
glUniform4ui64vNVFunPtr :: FunPtr (GLint -> GLsizei -> Ptr GLuint64EXT -> IO ())
glUniform4ui64vNVFunPtr = unsafePerformIO (getProcAddress "glUniform4ui64vNV")
{-# NOINLINE glUniform4ui64vNVFunPtr #-}
pattern GL_INT16_NV = 0x8FE4
pattern GL_INT16_VEC2_NV = 0x8FE5
pattern GL_INT16_VEC3_NV = 0x8FE6
pattern GL_INT16_VEC4_NV = 0x8FE7
pattern GL_INT64_NV = 0x140E
pattern GL_INT64_VEC2_NV = 0x8FE9
pattern GL_INT64_VEC3_NV = 0x8FEA
pattern GL_INT64_VEC4_NV = 0x8FEB
pattern GL_INT8_NV = 0x8FE0
pattern GL_INT8_VEC2_NV = 0x8FE1
pattern GL_INT8_VEC3_NV = 0x8FE2
pattern GL_INT8_VEC4_NV = 0x8FE3
pattern GL_UNSIGNED_INT16_NV = 0x8FF0
pattern GL_UNSIGNED_INT16_VEC2_NV = 0x8FF1
pattern GL_UNSIGNED_INT16_VEC3_NV = 0x8FF2
pattern GL_UNSIGNED_INT16_VEC4_NV = 0x8FF3
pattern GL_UNSIGNED_INT64_NV = 0x140F
pattern GL_UNSIGNED_INT64_VEC2_NV = 0x8FF5
pattern GL_UNSIGNED_INT64_VEC3_NV = 0x8FF6
pattern GL_UNSIGNED_INT64_VEC4_NV = 0x8FF7
pattern GL_UNSIGNED_INT8_NV = 0x8FEC
pattern GL_UNSIGNED_INT8_VEC2_NV = 0x8FED
pattern GL_UNSIGNED_INT8_VEC3_NV = 0x8FEE
pattern GL_UNSIGNED_INT8_VEC4_NV = 0x8FEF
pattern GL_DEPTH24_STENCIL8_OES = 0x88F0
pattern GL_DEPTH_COMPONENT32_OES = 0x81A7
pattern GL_DEPTH_STENCIL_OES = 0x84F9
pattern GL_UNSIGNED_INT_24_8_OES = 0x84FA
pattern GL_UNSIGNED_SHORT_8_8_APPLE = 0x85BA
pattern GL_UNSIGNED_SHORT_8_8_REV_APPLE = 0x85BB
pattern GL_BGRA8_EXT = 0x93A1
pattern GL_BGRA_EXT = 0x80E1
pattern GL_STORAGE_CACHED_APPLE = 0x85BE
pattern GL_STORAGE_SHARED_APPLE = 0x85BF
pattern GL_UNSIGNED_INT64_ARB = 0x140F
-- | Usage: @'glBindProgramARB' target program@
--
-- The parameter @target@ is a @ProgramTargetARB@.
glBindProgramARB :: MonadIO m => GLenum -> GLuint -> m ()
glBindProgramARB = ffienumuintIOV glBindProgramARBFunPtr
glBindProgramARBFunPtr :: FunPtr (GLenum -> GLuint -> IO ())
glBindProgramARBFunPtr = unsafePerformIO (getProcAddress "glBindProgramARB")
{-# NOINLINE glBindProgramARBFunPtr #-}
-- | Usage: @'glDeleteProgramsARB' n programs@
--
-- The length of @programs@ should be @n@.
glDeleteProgramsARB :: MonadIO m => GLsizei -> Ptr GLuint -> m ()
glDeleteProgramsARB = ffisizeiPtruintIOV glDeleteProgramsARBFunPtr
glDeleteProgramsARBFunPtr :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
glDeleteProgramsARBFunPtr = unsafePerformIO (getProcAddress "glDeleteProgramsARB")
{-# NOINLINE glDeleteProgramsARBFunPtr #-}
-- | Usage: @'glGenProgramsARB' n programs@
--
-- The length of @programs@ should be @n@.
glGenProgramsARB :: MonadIO m => GLsizei -> Ptr GLuint -> m ()
glGenProgramsARB = ffisizeiPtruintIOV glGenProgramsARBFunPtr
glGenProgramsARBFunPtr :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
glGenProgramsARBFunPtr = unsafePerformIO (getProcAddress "glGenProgramsARB")
{-# NOINLINE glGenProgramsARBFunPtr #-}
-- | Usage: @'glGetProgramEnvParameterdvARB' target index params@
--
-- The parameter @target@ is a @ProgramTargetARB@.
--
-- The length of @params@ should be @4@.
glGetProgramEnvParameterdvARB :: MonadIO m => GLenum -> GLuint -> Ptr GLdouble -> m ()
glGetProgramEnvParameterdvARB = ffienumuintPtrdoubleIOV glGetProgramEnvParameterdvARBFunPtr
glGetProgramEnvParameterdvARBFunPtr :: FunPtr (GLenum -> GLuint -> Ptr GLdouble -> IO ())
glGetProgramEnvParameterdvARBFunPtr = unsafePerformIO (getProcAddress "glGetProgramEnvParameterdvARB")
{-# NOINLINE glGetProgramEnvParameterdvARBFunPtr #-}
-- | Usage: @'glGetProgramEnvParameterfvARB' target index params@
--
-- The parameter @target@ is a @ProgramTargetARB@.
--
-- The length of @params@ should be @4@.
glGetProgramEnvParameterfvARB :: MonadIO m => GLenum -> GLuint -> Ptr GLfloat -> m ()
glGetProgramEnvParameterfvARB = ffienumuintPtrfloatIOV glGetProgramEnvParameterfvARBFunPtr
glGetProgramEnvParameterfvARBFunPtr :: FunPtr (GLenum -> GLuint -> Ptr GLfloat -> IO ())
glGetProgramEnvParameterfvARBFunPtr = unsafePerformIO (getProcAddress "glGetProgramEnvParameterfvARB")
{-# NOINLINE glGetProgramEnvParameterfvARBFunPtr #-}
-- | Usage: @'glGetProgramLocalParameterdvARB' target index params@
--
-- The parameter @target@ is a @ProgramTargetARB@.
--
-- The length of @params@ should be @4@.
glGetProgramLocalParameterdvARB :: MonadIO m => GLenum -> GLuint -> Ptr GLdouble -> m ()
glGetProgramLocalParameterdvARB = ffienumuintPtrdoubleIOV glGetProgramLocalParameterdvARBFunPtr
glGetProgramLocalParameterdvARBFunPtr :: FunPtr (GLenum -> GLuint -> Ptr GLdouble -> IO ())
glGetProgramLocalParameterdvARBFunPtr = unsafePerformIO (getProcAddress "glGetProgramLocalParameterdvARB")
{-# NOINLINE glGetProgramLocalParameterdvARBFunPtr #-}
-- | Usage: @'glGetProgramLocalParameterfvARB' target index params@
--
-- The parameter @target@ is a @ProgramTargetARB@.
--
-- The length of @params@ should be @4@.
glGetProgramLocalParameterfvARB :: MonadIO m => GLenum -> GLuint -> Ptr GLfloat -> m ()
glGetProgramLocalParameterfvARB = ffienumuintPtrfloatIOV glGetProgramLocalParameterfvARBFunPtr
glGetProgramLocalParameterfvARBFunPtr :: FunPtr (GLenum -> GLuint -> Ptr GLfloat -> IO ())
glGetProgramLocalParameterfvARBFunPtr = unsafePerformIO (getProcAddress "glGetProgramLocalParameterfvARB")
{-# NOINLINE glGetProgramLocalParameterfvARBFunPtr #-}
-- | Usage: @'glGetProgramStringARB' target pname string@
--
-- The parameter @target@ is a @ProgramTargetARB@.
--
-- The parameter @pname@ is a @ProgramStringPropertyARB@.
--
-- The length of @string@ should be @COMPSIZE(target,pname)@.
glGetProgramStringARB :: MonadIO m => GLenum -> GLenum -> Ptr () -> m ()
glGetProgramStringARB = ffienumenumPtrVIOV glGetProgramStringARBFunPtr
glGetProgramStringARBFunPtr :: FunPtr (GLenum -> GLenum -> Ptr () -> IO ())
glGetProgramStringARBFunPtr = unsafePerformIO (getProcAddress "glGetProgramStringARB")
{-# NOINLINE glGetProgramStringARBFunPtr #-}
-- | Usage: @'glGetProgramivARB' target pname params@
--
-- The parameter @target@ is a @ProgramTargetARB@.
--
-- The parameter @pname@ is a @ProgramPropertyARB@.
--
-- The length of @params@ should be @1@.
glGetProgramivARB :: MonadIO m => GLenum -> GLenum -> Ptr GLint -> m ()
glGetProgramivARB = ffienumenumPtrintIOV glGetProgramivARBFunPtr
glGetProgramivARBFunPtr :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
glGetProgramivARBFunPtr = unsafePerformIO (getProcAddress "glGetProgramivARB")
{-# NOINLINE glGetProgramivARBFunPtr #-}
-- | Usage: @'glIsProgramARB' program@
glIsProgramARB :: MonadIO m => GLuint -> m GLboolean
glIsProgramARB = ffiuintIOboolean glIsProgramARBFunPtr
glIsProgramARBFunPtr :: FunPtr (GLuint -> IO GLboolean)
glIsProgramARBFunPtr = unsafePerformIO (getProcAddress "glIsProgramARB")
{-# NOINLINE glIsProgramARBFunPtr #-}
-- | Usage: @'glProgramEnvParameter4dARB' target index x y z w@
--
-- The parameter @target@ is a @ProgramTargetARB@.
--
-- The vector equivalent of this command is 'Graphics.GL.Internal.Shared.glProgramEnvParameter4dvARB'.
glProgramEnvParameter4dARB :: MonadIO m => GLenum -> GLuint -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> m ()
glProgramEnvParameter4dARB = ffienumuintdoubledoubledoubledoubleIOV glProgramEnvParameter4dARBFunPtr
glProgramEnvParameter4dARBFunPtr :: FunPtr (GLenum -> GLuint -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ())
glProgramEnvParameter4dARBFunPtr = unsafePerformIO (getProcAddress "glProgramEnvParameter4dARB")
{-# NOINLINE glProgramEnvParameter4dARBFunPtr #-}
-- | Usage: @'glProgramEnvParameter4dvARB' target index params@
--
-- The parameter @target@ is a @ProgramTargetARB@.
--
-- The length of @params@ should be @4@.
glProgramEnvParameter4dvARB :: MonadIO m => GLenum -> GLuint -> Ptr GLdouble -> m ()
glProgramEnvParameter4dvARB = ffienumuintPtrdoubleIOV glProgramEnvParameter4dvARBFunPtr
glProgramEnvParameter4dvARBFunPtr :: FunPtr (GLenum -> GLuint -> Ptr GLdouble -> IO ())
glProgramEnvParameter4dvARBFunPtr = unsafePerformIO (getProcAddress "glProgramEnvParameter4dvARB")
{-# NOINLINE glProgramEnvParameter4dvARBFunPtr #-}
-- | Usage: @'glProgramEnvParameter4fARB' target index x y z w@
--
-- The parameter @target@ is a @ProgramTargetARB@.
--
-- The vector equivalent of this command is 'Graphics.GL.Internal.Shared.glProgramEnvParameter4fvARB'.
glProgramEnvParameter4fARB :: MonadIO m => GLenum -> GLuint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> m ()
glProgramEnvParameter4fARB = ffienumuintfloatfloatfloatfloatIOV glProgramEnvParameter4fARBFunPtr
glProgramEnvParameter4fARBFunPtr :: FunPtr (GLenum -> GLuint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
glProgramEnvParameter4fARBFunPtr = unsafePerformIO (getProcAddress "glProgramEnvParameter4fARB")
{-# NOINLINE glProgramEnvParameter4fARBFunPtr #-}
-- | Usage: @'glProgramEnvParameter4fvARB' target index params@
--
-- The parameter @target@ is a @ProgramTargetARB@.
--
-- The length of @params@ should be @4@.
glProgramEnvParameter4fvARB :: MonadIO m => GLenum -> GLuint -> Ptr GLfloat -> m ()
glProgramEnvParameter4fvARB = ffienumuintPtrfloatIOV glProgramEnvParameter4fvARBFunPtr
glProgramEnvParameter4fvARBFunPtr :: FunPtr (GLenum -> GLuint -> Ptr GLfloat -> IO ())
glProgramEnvParameter4fvARBFunPtr = unsafePerformIO (getProcAddress "glProgramEnvParameter4fvARB")
{-# NOINLINE glProgramEnvParameter4fvARBFunPtr #-}
-- | Usage: @'glProgramLocalParameter4dARB' target index x y z w@
--
-- The parameter @target@ is a @ProgramTargetARB@.
--
-- The vector equivalent of this command is 'Graphics.GL.Internal.Shared.glProgramLocalParameter4dvARB'.
glProgramLocalParameter4dARB :: MonadIO m => GLenum -> GLuint -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> m ()
glProgramLocalParameter4dARB = ffienumuintdoubledoubledoubledoubleIOV glProgramLocalParameter4dARBFunPtr
glProgramLocalParameter4dARBFunPtr :: FunPtr (GLenum -> GLuint -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ())
glProgramLocalParameter4dARBFunPtr = unsafePerformIO (getProcAddress "glProgramLocalParameter4dARB")
{-# NOINLINE glProgramLocalParameter4dARBFunPtr #-}
-- | Usage: @'glProgramLocalParameter4dvARB' target index params@
--
-- The parameter @target@ is a @ProgramTargetARB@.
--
-- The length of @params@ should be @4@.
glProgramLocalParameter4dvARB :: MonadIO m => GLenum -> GLuint -> Ptr GLdouble -> m ()
glProgramLocalParameter4dvARB = ffienumuintPtrdoubleIOV glProgramLocalParameter4dvARBFunPtr
glProgramLocalParameter4dvARBFunPtr :: FunPtr (GLenum -> GLuint -> Ptr GLdouble -> IO ())
glProgramLocalParameter4dvARBFunPtr = unsafePerformIO (getProcAddress "glProgramLocalParameter4dvARB")
{-# NOINLINE glProgramLocalParameter4dvARBFunPtr #-}
-- | Usage: @'glProgramLocalParameter4fARB' target index x y z w@
--
-- The parameter @target@ is a @ProgramTargetARB@.
--
-- The vector equivalent of this command is 'Graphics.GL.Internal.Shared.glProgramLocalParameter4fvARB'.
glProgramLocalParameter4fARB :: MonadIO m => GLenum -> GLuint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> m ()
glProgramLocalParameter4fARB = ffienumuintfloatfloatfloatfloatIOV glProgramLocalParameter4fARBFunPtr
glProgramLocalParameter4fARBFunPtr :: FunPtr (GLenum -> GLuint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
glProgramLocalParameter4fARBFunPtr = unsafePerformIO (getProcAddress "glProgramLocalParameter4fARB")
{-# NOINLINE glProgramLocalParameter4fARBFunPtr #-}
-- | Usage: @'glProgramLocalParameter4fvARB' target index params@
--
-- The parameter @target@ is a @ProgramTargetARB@.
--
-- The length of @params@ should be @4@.
glProgramLocalParameter4fvARB :: MonadIO m => GLenum -> GLuint -> Ptr GLfloat -> m ()
glProgramLocalParameter4fvARB = ffienumuintPtrfloatIOV glProgramLocalParameter4fvARBFunPtr
glProgramLocalParameter4fvARBFunPtr :: FunPtr (GLenum -> GLuint -> Ptr GLfloat -> IO ())
glProgramLocalParameter4fvARBFunPtr = unsafePerformIO (getProcAddress "glProgramLocalParameter4fvARB")
{-# NOINLINE glProgramLocalParameter4fvARBFunPtr #-}
-- | Usage: @'glProgramStringARB' target format len string@
--
-- The parameter @target@ is a @ProgramTargetARB@.
--
-- The parameter @format@ is a @ProgramFormatARB@.
--
-- The length of @string@ should be @len@.
glProgramStringARB :: MonadIO m => GLenum -> GLenum -> GLsizei -> Ptr () -> m ()
glProgramStringARB = ffienumenumsizeiPtrVIOV glProgramStringARBFunPtr
glProgramStringARBFunPtr :: FunPtr (GLenum -> GLenum -> GLsizei -> Ptr () -> IO ())
glProgramStringARBFunPtr = unsafePerformIO (getProcAddress "glProgramStringARB")
{-# NOINLINE glProgramStringARBFunPtr #-}
pattern GL_CURRENT_MATRIX_ARB = 0x8641
pattern GL_CURRENT_MATRIX_STACK_DEPTH_ARB = 0x8640
pattern GL_MATRIX0_ARB = 0x88C0
pattern GL_MATRIX10_ARB = 0x88CA
pattern GL_MATRIX11_ARB = 0x88CB
pattern GL_MATRIX12_ARB = 0x88CC
pattern GL_MATRIX13_ARB = 0x88CD
pattern GL_MATRIX14_ARB = 0x88CE
pattern GL_MATRIX15_ARB = 0x88CF
pattern GL_MATRIX16_ARB = 0x88D0
pattern GL_MATRIX17_ARB = 0x88D1
pattern GL_MATRIX18_ARB = 0x88D2
pattern GL_MATRIX19_ARB = 0x88D3
pattern GL_MATRIX1_ARB = 0x88C1
pattern GL_MATRIX20_ARB = 0x88D4
pattern GL_MATRIX21_ARB = 0x88D5
pattern GL_MATRIX22_ARB = 0x88D6
pattern GL_MATRIX23_ARB = 0x88D7
pattern GL_MATRIX24_ARB = 0x88D8
pattern GL_MATRIX25_ARB = 0x88D9
pattern GL_MATRIX26_ARB = 0x88DA
pattern GL_MATRIX27_ARB = 0x88DB
pattern GL_MATRIX28_ARB = 0x88DC
pattern GL_MATRIX29_ARB = 0x88DD
pattern GL_MATRIX2_ARB = 0x88C2
pattern GL_MATRIX30_ARB = 0x88DE
pattern GL_MATRIX31_ARB = 0x88DF
pattern GL_MATRIX3_ARB = 0x88C3
pattern GL_MATRIX4_ARB = 0x88C4
pattern GL_MATRIX5_ARB = 0x88C5
pattern GL_MATRIX6_ARB = 0x88C6
pattern GL_MATRIX7_ARB = 0x88C7
pattern GL_MATRIX8_ARB = 0x88C8
pattern GL_MATRIX9_ARB = 0x88C9
pattern GL_MAX_PROGRAM_ATTRIBS_ARB = 0x88AD
pattern GL_MAX_PROGRAM_ENV_PARAMETERS_ARB = 0x88B5
pattern GL_MAX_PROGRAM_INSTRUCTIONS_ARB = 0x88A1
pattern GL_MAX_PROGRAM_LOCAL_PARAMETERS_ARB = 0x88B4
pattern GL_MAX_PROGRAM_MATRICES_ARB = 0x862F
pattern GL_MAX_PROGRAM_MATRIX_STACK_DEPTH_ARB = 0x862E
pattern GL_MAX_PROGRAM_NATIVE_ATTRIBS_ARB = 0x88AF
pattern GL_MAX_PROGRAM_NATIVE_INSTRUCTIONS_ARB = 0x88A3
pattern GL_MAX_PROGRAM_NATIVE_PARAMETERS_ARB = 0x88AB
pattern GL_MAX_PROGRAM_NATIVE_TEMPORARIES_ARB = 0x88A7
pattern GL_MAX_PROGRAM_PARAMETERS_ARB = 0x88A9
pattern GL_MAX_PROGRAM_TEMPORARIES_ARB = 0x88A5
pattern GL_MAX_TEXTURE_COORDS_ARB = 0x8871
pattern GL_MAX_TEXTURE_IMAGE_UNITS_ARB = 0x8872
pattern GL_PROGRAM_ATTRIBS_ARB = 0x88AC
pattern GL_PROGRAM_BINDING_ARB = 0x8677
pattern GL_PROGRAM_ERROR_POSITION_ARB = 0x864B
pattern GL_PROGRAM_ERROR_STRING_ARB = 0x8874
pattern GL_PROGRAM_FORMAT_ARB = 0x8876
pattern GL_PROGRAM_FORMAT_ASCII_ARB = 0x8875
pattern GL_PROGRAM_INSTRUCTIONS_ARB = 0x88A0
pattern GL_PROGRAM_LENGTH_ARB = 0x8627
pattern GL_PROGRAM_NATIVE_ATTRIBS_ARB = 0x88AE
pattern GL_PROGRAM_NATIVE_INSTRUCTIONS_ARB = 0x88A2
pattern GL_PROGRAM_NATIVE_PARAMETERS_ARB = 0x88AA
pattern GL_PROGRAM_NATIVE_TEMPORARIES_ARB = 0x88A6
pattern GL_PROGRAM_PARAMETERS_ARB = 0x88A8
pattern GL_PROGRAM_STRING_ARB = 0x8628
pattern GL_PROGRAM_TEMPORARIES_ARB = 0x88A4
pattern GL_PROGRAM_UNDER_NATIVE_LIMITS_ARB = 0x88B6
pattern GL_TRANSPOSE_CURRENT_MATRIX_ARB = 0x88B7
pattern GL_SAMPLES_ARB = 0x80A9
pattern GL_TEXTURE0_ARB = 0x84C0
pattern GL_TEXTURE1_ARB = 0x84C1
pattern GL_FLOAT_MAT2_ARB = 0x8B5A
pattern GL_FLOAT_MAT3_ARB = 0x8B5B
pattern GL_FLOAT_MAT4_ARB = 0x8B5C
pattern GL_FLOAT_VEC2_ARB = 0x8B50
pattern GL_FLOAT_VEC3_ARB = 0x8B51
pattern GL_FLOAT_VEC4_ARB = 0x8B52
-- | Usage: @'glDisableVertexAttribArrayARB' index@
--
-- This command is an alias for 'Graphics.GL.Internal.Shared.glDisableVertexAttribArray'.
glDisableVertexAttribArrayARB :: MonadIO m => GLuint -> m ()
glDisableVertexAttribArrayARB = ffiuintIOV glDisableVertexAttribArrayARBFunPtr
glDisableVertexAttribArrayARBFunPtr :: FunPtr (GLuint -> IO ())
glDisableVertexAttribArrayARBFunPtr = unsafePerformIO (getProcAddress "glDisableVertexAttribArrayARB")
{-# NOINLINE glDisableVertexAttribArrayARBFunPtr #-}
-- | Usage: @'glEnableVertexAttribArrayARB' index@
--
-- This command is an alias for 'Graphics.GL.Internal.Shared.glEnableVertexAttribArray'.
glEnableVertexAttribArrayARB :: MonadIO m => GLuint -> m ()
glEnableVertexAttribArrayARB = ffiuintIOV glEnableVertexAttribArrayARBFunPtr
glEnableVertexAttribArrayARBFunPtr :: FunPtr (GLuint -> IO ())
glEnableVertexAttribArrayARBFunPtr = unsafePerformIO (getProcAddress "glEnableVertexAttribArrayARB")
{-# NOINLINE glEnableVertexAttribArrayARBFunPtr #-}
-- | Usage: @'glGetVertexAttribPointervARB' index pname pointer@
--
-- The parameter @pname@ is a @VertexAttribPointerPropertyARB@.
--
-- The length of @pointer@ should be @1@.
--
-- This command is an alias for 'Graphics.GL.Internal.Shared.glGetVertexAttribPointerv'.
glGetVertexAttribPointervARB :: MonadIO m => GLuint -> GLenum -> Ptr (Ptr ()) -> m ()
glGetVertexAttribPointervARB = ffiuintenumPtrPtrVIOV glGetVertexAttribPointervARBFunPtr
glGetVertexAttribPointervARBFunPtr :: FunPtr (GLuint -> GLenum -> Ptr (Ptr ()) -> IO ())
glGetVertexAttribPointervARBFunPtr = unsafePerformIO (getProcAddress "glGetVertexAttribPointervARB")
{-# NOINLINE glGetVertexAttribPointervARBFunPtr #-}
-- | Usage: @'glGetVertexAttribdvARB' index pname params@
--
-- The parameter @pname@ is a @VertexAttribPropertyARB@.
--
-- The length of @params@ should be @4@.
--
-- This command is an alias for 'Graphics.GL.Internal.Shared.glGetVertexAttribdv'.
glGetVertexAttribdvARB :: MonadIO m => GLuint -> GLenum -> Ptr GLdouble -> m ()
glGetVertexAttribdvARB = ffiuintenumPtrdoubleIOV glGetVertexAttribdvARBFunPtr
glGetVertexAttribdvARBFunPtr :: FunPtr (GLuint -> GLenum -> Ptr GLdouble -> IO ())
glGetVertexAttribdvARBFunPtr = unsafePerformIO (getProcAddress "glGetVertexAttribdvARB")
{-# NOINLINE glGetVertexAttribdvARBFunPtr #-}
-- | Usage: @'glGetVertexAttribfvARB' index pname params@
--
-- The parameter @pname@ is a @VertexAttribPropertyARB@.
--
-- The length of @params@ should be @4@.
--
-- This command is an alias for 'Graphics.GL.Internal.Shared.glGetVertexAttribfv'.
glGetVertexAttribfvARB :: MonadIO m => GLuint -> GLenum -> Ptr GLfloat -> m ()
glGetVertexAttribfvARB = ffiuintenumPtrfloatIOV glGetVertexAttribfvARBFunPtr
glGetVertexAttribfvARBFunPtr :: FunPtr (GLuint -> GLenum -> Ptr GLfloat -> IO ())
glGetVertexAttribfvARBFunPtr = unsafePerformIO (getProcAddress "glGetVertexAttribfvARB")
{-# NOINLINE glGetVertexAttribfvARBFunPtr #-}
-- | Usage: @'glGetVertexAttribivARB' index pname params@
--
-- The parameter @pname@ is a @VertexAttribPropertyARB@.
--
-- The length of @params@ should be @4@.
--
-- This command is an alias for 'Graphics.GL.Internal.Shared.glGetVertexAttribiv'.
glGetVertexAttribivARB :: MonadIO m => GLuint -> GLenum -> Ptr GLint -> m ()
glGetVertexAttribivARB = ffiuintenumPtrintIOV glGetVertexAttribivARBFunPtr
glGetVertexAttribivARBFunPtr :: FunPtr (GLuint -> GLenum -> Ptr GLint -> IO ())
glGetVertexAttribivARBFunPtr = unsafePerformIO (getProcAddress "glGetVertexAttribivARB")
{-# NOINLINE glGetVertexAttribivARBFunPtr #-}
-- | Usage: @'glVertexAttrib1dARB' index x@
--
-- This command is an alias for 'Graphics.GL.Internal.Shared.glVertexAttrib1d'.
--
-- The vector equivalent of this command is 'Graphics.GL.Internal.Shared.glVertexAttrib1dvARB'.
glVertexAttrib1dARB :: MonadIO m => GLuint -> GLdouble -> m ()
glVertexAttrib1dARB = ffiuintdoubleIOV glVertexAttrib1dARBFunPtr
glVertexAttrib1dARBFunPtr :: FunPtr (GLuint -> GLdouble -> IO ())
glVertexAttrib1dARBFunPtr = unsafePerformIO (getProcAddress "glVertexAttrib1dARB")
{-# NOINLINE glVertexAttrib1dARBFunPtr #-}
-- | Usage: @'glVertexAttrib1dvARB' index v@
--
-- The length of @v@ should be @1@.
--
-- This command is an alias for 'Graphics.GL.Internal.Shared.glVertexAttrib1dv'.
glVertexAttrib1dvARB :: MonadIO m => GLuint -> Ptr GLdouble -> m ()
glVertexAttrib1dvARB = ffiuintPtrdoubleIOV glVertexAttrib1dvARBFunPtr
glVertexAttrib1dvARBFunPtr :: FunPtr (GLuint -> Ptr GLdouble -> IO ())
glVertexAttrib1dvARBFunPtr = unsafePerformIO (getProcAddress "glVertexAttrib1dvARB")
{-# NOINLINE glVertexAttrib1dvARBFunPtr #-}
-- | Usage: @'glVertexAttrib1fARB' index x@
--
-- This command is an alias for 'Graphics.GL.Internal.Shared.glVertexAttrib1f'.
--
-- The vector equivalent of this command is 'Graphics.GL.Internal.Shared.glVertexAttrib1fvARB'.
glVertexAttrib1fARB :: MonadIO m => GLuint -> GLfloat -> m ()
glVertexAttrib1fARB = ffiuintfloatIOV glVertexAttrib1fARBFunPtr
glVertexAttrib1fARBFunPtr :: FunPtr (GLuint -> GLfloat -> IO ())
glVertexAttrib1fARBFunPtr = unsafePerformIO (getProcAddress "glVertexAttrib1fARB")
{-# NOINLINE glVertexAttrib1fARBFunPtr #-}
-- | Usage: @'glVertexAttrib1fvARB' index v@
--
-- The length of @v@ should be @1@.
--
-- This command is an alias for 'Graphics.GL.Internal.Shared.glVertexAttrib1fv'.
glVertexAttrib1fvARB :: MonadIO m => GLuint -> Ptr GLfloat -> m ()
glVertexAttrib1fvARB = ffiuintPtrfloatIOV glVertexAttrib1fvARBFunPtr
glVertexAttrib1fvARBFunPtr :: FunPtr (GLuint -> Ptr GLfloat -> IO ())
glVertexAttrib1fvARBFunPtr = unsafePerformIO (getProcAddress "glVertexAttrib1fvARB")
{-# NOINLINE glVertexAttrib1fvARBFunPtr #-}
-- | Usage: @'glVertexAttrib1sARB' index x@
--
-- This command is an alias for 'Graphics.GL.Internal.Shared.glVertexAttrib1s'.
--
-- The vector equivalent of this command is 'Graphics.GL.Internal.Shared.glVertexAttrib1svARB'.
glVertexAttrib1sARB :: MonadIO m => GLuint -> GLshort -> m ()
glVertexAttrib1sARB = ffiuintshortIOV glVertexAttrib1sARBFunPtr
glVertexAttrib1sARBFunPtr :: FunPtr (GLuint -> GLshort -> IO ())
glVertexAttrib1sARBFunPtr = unsafePerformIO (getProcAddress "glVertexAttrib1sARB")
{-# NOINLINE glVertexAttrib1sARBFunPtr #-}
-- | Usage: @'glVertexAttrib1svARB' index v@
--
-- The length of @v@ should be @1@.
--
-- This command is an alias for 'Graphics.GL.Internal.Shared.glVertexAttrib1sv'.
glVertexAttrib1svARB :: MonadIO m => GLuint -> Ptr GLshort -> m ()
glVertexAttrib1svARB = ffiuintPtrshortIOV glVertexAttrib1svARBFunPtr
glVertexAttrib1svARBFunPtr :: FunPtr (GLuint -> Ptr GLshort -> IO ())
glVertexAttrib1svARBFunPtr = unsafePerformIO (getProcAddress "glVertexAttrib1svARB")
{-# NOINLINE glVertexAttrib1svARBFunPtr #-}
-- | Usage: @'glVertexAttrib2dARB' index x y@
--
-- This command is an alias for 'Graphics.GL.Internal.Shared.glVertexAttrib2d'.
--
-- The vector equivalent of this command is 'Graphics.GL.Internal.Shared.glVertexAttrib2dvARB'.
glVertexAttrib2dARB :: MonadIO m => GLuint -> GLdouble -> GLdouble -> m ()
glVertexAttrib2dARB = ffiuintdoubledoubleIOV glVertexAttrib2dARBFunPtr
glVertexAttrib2dARBFunPtr :: FunPtr (GLuint -> GLdouble -> GLdouble -> IO ())
glVertexAttrib2dARBFunPtr = unsafePerformIO (getProcAddress "glVertexAttrib2dARB")
{-# NOINLINE glVertexAttrib2dARBFunPtr #-}
-- | Usage: @'glVertexAttrib2dvARB' index v@
--
-- The length of @v@ should be @2@.
--
-- This command is an alias for 'Graphics.GL.Internal.Shared.glVertexAttrib2dv'.
glVertexAttrib2dvARB :: MonadIO m => GLuint -> Ptr GLdouble -> m ()
glVertexAttrib2dvARB = ffiuintPtrdoubleIOV glVertexAttrib2dvARBFunPtr
glVertexAttrib2dvARBFunPtr :: FunPtr (GLuint -> Ptr GLdouble -> IO ())
glVertexAttrib2dvARBFunPtr = unsafePerformIO (getProcAddress "glVertexAttrib2dvARB")
{-# NOINLINE glVertexAttrib2dvARBFunPtr #-}
-- | Usage: @'glVertexAttrib2fARB' index x y@
--
-- This command is an alias for 'Graphics.GL.Internal.Shared.glVertexAttrib2f'.
--
-- The vector equivalent of this command is 'Graphics.GL.Internal.Shared.glVertexAttrib2fvARB'.
glVertexAttrib2fARB :: MonadIO m => GLuint -> GLfloat -> GLfloat -> m ()
glVertexAttrib2fARB = ffiuintfloatfloatIOV glVertexAttrib2fARBFunPtr
glVertexAttrib2fARBFunPtr :: FunPtr (GLuint -> GLfloat -> GLfloat -> IO ())
glVertexAttrib2fARBFunPtr = unsafePerformIO (getProcAddress "glVertexAttrib2fARB")
{-# NOINLINE glVertexAttrib2fARBFunPtr #-}
-- | Usage: @'glVertexAttrib2fvARB' index v@
--
-- The length of @v@ should be @2@.
--
-- This command is an alias for 'Graphics.GL.Internal.Shared.glVertexAttrib2fv'.
glVertexAttrib2fvARB :: MonadIO m => GLuint -> Ptr GLfloat -> m ()
glVertexAttrib2fvARB = ffiuintPtrfloatIOV glVertexAttrib2fvARBFunPtr
glVertexAttrib2fvARBFunPtr :: FunPtr (GLuint -> Ptr GLfloat -> IO ())
glVertexAttrib2fvARBFunPtr = unsafePerformIO (getProcAddress "glVertexAttrib2fvARB")
{-# NOINLINE glVertexAttrib2fvARBFunPtr #-}
-- | Usage: @'glVertexAttrib2sARB' index x y@
--
-- This command is an alias for 'Graphics.GL.Internal.Shared.glVertexAttrib2s'.
--
-- The vector equivalent of this command is 'Graphics.GL.Internal.Shared.glVertexAttrib2svARB'.
glVertexAttrib2sARB :: MonadIO m => GLuint -> GLshort -> GLshort -> m ()
glVertexAttrib2sARB = ffiuintshortshortIOV glVertexAttrib2sARBFunPtr
glVertexAttrib2sARBFunPtr :: FunPtr (GLuint -> GLshort -> GLshort -> IO ())
glVertexAttrib2sARBFunPtr = unsafePerformIO (getProcAddress "glVertexAttrib2sARB")
{-# NOINLINE glVertexAttrib2sARBFunPtr #-}
-- | Usage: @'glVertexAttrib2svARB' index v@
--
-- The length of @v@ should be @2@.
--
-- This command is an alias for 'Graphics.GL.Internal.Shared.glVertexAttrib2sv'.
glVertexAttrib2svARB :: MonadIO m => GLuint -> Ptr GLshort -> m ()
glVertexAttrib2svARB = ffiuintPtrshortIOV glVertexAttrib2svARBFunPtr
glVertexAttrib2svARBFunPtr :: FunPtr (GLuint -> Ptr GLshort -> IO ())
glVertexAttrib2svARBFunPtr = unsafePerformIO (getProcAddress "glVertexAttrib2svARB")
{-# NOINLINE glVertexAttrib2svARBFunPtr #-}
-- | Usage: @'glVertexAttrib3dARB' index x y z@
--
-- This command is an alias for 'Graphics.GL.Internal.Shared.glVertexAttrib3d'.
--
-- The vector equivalent of this command is 'Graphics.GL.Internal.Shared.glVertexAttrib3dvARB'.
glVertexAttrib3dARB :: MonadIO m => GLuint -> GLdouble -> GLdouble -> GLdouble -> m ()
glVertexAttrib3dARB = ffiuintdoubledoubledoubleIOV glVertexAttrib3dARBFunPtr
glVertexAttrib3dARBFunPtr :: FunPtr (GLuint -> GLdouble -> GLdouble -> GLdouble -> IO ())
glVertexAttrib3dARBFunPtr = unsafePerformIO (getProcAddress "glVertexAttrib3dARB")
{-# NOINLINE glVertexAttrib3dARBFunPtr #-}
-- | Usage: @'glVertexAttrib3dvARB' index v@
--
-- The length of @v@ should be @3@.
--
-- This command is an alias for 'Graphics.GL.Internal.Shared.glVertexAttrib3dv'.
glVertexAttrib3dvARB :: MonadIO m => GLuint -> Ptr GLdouble -> m ()
glVertexAttrib3dvARB = ffiuintPtrdoubleIOV glVertexAttrib3dvARBFunPtr
glVertexAttrib3dvARBFunPtr :: FunPtr (GLuint -> Ptr GLdouble -> IO ())
glVertexAttrib3dvARBFunPtr = unsafePerformIO (getProcAddress "glVertexAttrib3dvARB")
{-# NOINLINE glVertexAttrib3dvARBFunPtr #-}
-- | Usage: @'glVertexAttrib3fARB' index x y z@
--
-- This command is an alias for 'Graphics.GL.Internal.Shared.glVertexAttrib3f'.
--
-- The vector equivalent of this command is 'Graphics.GL.Internal.Shared.glVertexAttrib3fvARB'.
glVertexAttrib3fARB :: MonadIO m => GLuint -> GLfloat -> GLfloat -> GLfloat -> m ()
glVertexAttrib3fARB = ffiuintfloatfloatfloatIOV glVertexAttrib3fARBFunPtr
glVertexAttrib3fARBFunPtr :: FunPtr (GLuint -> GLfloat -> GLfloat -> GLfloat -> IO ())
glVertexAttrib3fARBFunPtr = unsafePerformIO (getProcAddress "glVertexAttrib3fARB")
{-# NOINLINE glVertexAttrib3fARBFunPtr #-}
-- | Usage: @'glVertexAttrib3fvARB' index v@
--
-- The length of @v@ should be @3@.
--
-- This command is an alias for 'Graphics.GL.Internal.Shared.glVertexAttrib3fv'.
glVertexAttrib3fvARB :: MonadIO m => GLuint -> Ptr GLfloat -> m ()
glVertexAttrib3fvARB = ffiuintPtrfloatIOV glVertexAttrib3fvARBFunPtr
glVertexAttrib3fvARBFunPtr :: FunPtr (GLuint -> Ptr GLfloat -> IO ())
glVertexAttrib3fvARBFunPtr = unsafePerformIO (getProcAddress "glVertexAttrib3fvARB")
{-# NOINLINE glVertexAttrib3fvARBFunPtr #-}
-- | Usage: @'glVertexAttrib3sARB' index x y z@
--
-- This command is an alias for 'Graphics.GL.Internal.Shared.glVertexAttrib3s'.
--
-- The vector equivalent of this command is 'Graphics.GL.Internal.Shared.glVertexAttrib3svARB'.
glVertexAttrib3sARB :: MonadIO m => GLuint -> GLshort -> GLshort -> GLshort -> m ()
glVertexAttrib3sARB = ffiuintshortshortshortIOV glVertexAttrib3sARBFunPtr
glVertexAttrib3sARBFunPtr :: FunPtr (GLuint -> GLshort -> GLshort -> GLshort -> IO ())
glVertexAttrib3sARBFunPtr = unsafePerformIO (getProcAddress "glVertexAttrib3sARB")
{-# NOINLINE glVertexAttrib3sARBFunPtr #-}
-- | Usage: @'glVertexAttrib3svARB' index v@
--
-- The length of @v@ should be @3@.
--
-- This command is an alias for 'Graphics.GL.Internal.Shared.glVertexAttrib3sv'.
glVertexAttrib3svARB :: MonadIO m => GLuint -> Ptr GLshort -> m ()
glVertexAttrib3svARB = ffiuintPtrshortIOV glVertexAttrib3svARBFunPtr
glVertexAttrib3svARBFunPtr :: FunPtr (GLuint -> Ptr GLshort -> IO ())
glVertexAttrib3svARBFunPtr = unsafePerformIO (getProcAddress "glVertexAttrib3svARB")
{-# NOINLINE glVertexAttrib3svARBFunPtr #-}
-- | Usage: @'glVertexAttrib4NbvARB' index v@
--
-- The length of @v@ should be @4@.
--
-- This command is an alias for 'Graphics.GL.Internal.Shared.glVertexAttrib4Nbv'.
glVertexAttrib4NbvARB :: MonadIO m => GLuint -> Ptr GLbyte -> m ()
glVertexAttrib4NbvARB = ffiuintPtrbyteIOV glVertexAttrib4NbvARBFunPtr
glVertexAttrib4NbvARBFunPtr :: FunPtr (GLuint -> Ptr GLbyte -> IO ())
glVertexAttrib4NbvARBFunPtr = unsafePerformIO (getProcAddress "glVertexAttrib4NbvARB")
{-# NOINLINE glVertexAttrib4NbvARBFunPtr #-}
-- | Usage: @'glVertexAttrib4NivARB' index v@
--
-- The length of @v@ should be @4@.
--
-- This command is an alias for 'Graphics.GL.Internal.Shared.glVertexAttrib4Niv'.
glVertexAttrib4NivARB :: MonadIO m => GLuint -> Ptr GLint -> m ()
glVertexAttrib4NivARB = ffiuintPtrintIOV glVertexAttrib4NivARBFunPtr
glVertexAttrib4NivARBFunPtr :: FunPtr (GLuint -> Ptr GLint -> IO ())
glVertexAttrib4NivARBFunPtr = unsafePerformIO (getProcAddress "glVertexAttrib4NivARB")
{-# NOINLINE glVertexAttrib4NivARBFunPtr #-}
-- | Usage: @'glVertexAttrib4NsvARB' index v@
--
-- The length of @v@ should be @4@.
--
-- This command is an alias for 'Graphics.GL.Internal.Shared.glVertexAttrib4Nsv'.
glVertexAttrib4NsvARB :: MonadIO m => GLuint -> Ptr GLshort -> m ()
glVertexAttrib4NsvARB = ffiuintPtrshortIOV glVertexAttrib4NsvARBFunPtr
glVertexAttrib4NsvARBFunPtr :: FunPtr (GLuint -> Ptr GLshort -> IO ())
glVertexAttrib4NsvARBFunPtr = unsafePerformIO (getProcAddress "glVertexAttrib4NsvARB")
{-# NOINLINE glVertexAttrib4NsvARBFunPtr #-}
-- | Usage: @'glVertexAttrib4NubARB' index x y z w@
--
-- This command is an alias for 'Graphics.GL.Internal.Shared.glVertexAttrib4Nub'.
glVertexAttrib4NubARB :: MonadIO m => GLuint -> GLubyte -> GLubyte -> GLubyte -> GLubyte -> m ()
glVertexAttrib4NubARB = ffiuintubyteubyteubyteubyteIOV glVertexAttrib4NubARBFunPtr
glVertexAttrib4NubARBFunPtr :: FunPtr (GLuint -> GLubyte -> GLubyte -> GLubyte -> GLubyte -> IO ())
glVertexAttrib4NubARBFunPtr = unsafePerformIO (getProcAddress "glVertexAttrib4NubARB")
{-# NOINLINE glVertexAttrib4NubARBFunPtr #-}
-- | Usage: @'glVertexAttrib4NubvARB' index v@
--
-- The length of @v@ should be @4@.
--
-- This command is an alias for 'Graphics.GL.Internal.Shared.glVertexAttrib4Nubv'.
glVertexAttrib4NubvARB :: MonadIO m => GLuint -> Ptr GLubyte -> m ()
glVertexAttrib4NubvARB = ffiuintPtrubyteIOV glVertexAttrib4NubvARBFunPtr
glVertexAttrib4NubvARBFunPtr :: FunPtr (GLuint -> Ptr GLubyte -> IO ())
glVertexAttrib4NubvARBFunPtr = unsafePerformIO (getProcAddress "glVertexAttrib4NubvARB")
{-# NOINLINE glVertexAttrib4NubvARBFunPtr #-}
-- | Usage: @'glVertexAttrib4NuivARB' index v@
--
-- The length of @v@ should be @4@.
--
-- This command is an alias for 'Graphics.GL.Internal.Shared.glVertexAttrib4Nuiv'.
glVertexAttrib4NuivARB :: MonadIO m => GLuint -> Ptr GLuint -> m ()
glVertexAttrib4NuivARB = ffiuintPtruintIOV glVertexAttrib4NuivARBFunPtr
glVertexAttrib4NuivARBFunPtr :: FunPtr (GLuint -> Ptr GLuint -> IO ())
glVertexAttrib4NuivARBFunPtr = unsafePerformIO (getProcAddress "glVertexAttrib4NuivARB")
{-# NOINLINE glVertexAttrib4NuivARBFunPtr #-}
-- | Usage: @'glVertexAttrib4NusvARB' index v@
--
-- The length of @v@ should be @4@.
--
-- This command is an alias for 'Graphics.GL.Internal.Shared.glVertexAttrib4Nusv'.
glVertexAttrib4NusvARB :: MonadIO m => GLuint -> Ptr GLushort -> m ()
glVertexAttrib4NusvARB = ffiuintPtrushortIOV glVertexAttrib4NusvARBFunPtr
glVertexAttrib4NusvARBFunPtr :: FunPtr (GLuint -> Ptr GLushort -> IO ())
glVertexAttrib4NusvARBFunPtr = unsafePerformIO (getProcAddress "glVertexAttrib4NusvARB")
{-# NOINLINE glVertexAttrib4NusvARBFunPtr #-}
-- | Usage: @'glVertexAttrib4bvARB' index v@
--
-- The length of @v@ should be @4@.
--
-- This command is an alias for 'Graphics.GL.Internal.Shared.glVertexAttrib4bv'.
glVertexAttrib4bvARB :: MonadIO m => GLuint -> Ptr GLbyte -> m ()
glVertexAttrib4bvARB = ffiuintPtrbyteIOV glVertexAttrib4bvARBFunPtr
glVertexAttrib4bvARBFunPtr :: FunPtr (GLuint -> Ptr GLbyte -> IO ())
glVertexAttrib4bvARBFunPtr = unsafePerformIO (getProcAddress "glVertexAttrib4bvARB")
{-# NOINLINE glVertexAttrib4bvARBFunPtr #-}
-- | Usage: @'glVertexAttrib4dARB' index x y z w@
--
-- This command is an alias for 'Graphics.GL.Internal.Shared.glVertexAttrib4d'.
--
-- The vector equivalent of this command is 'Graphics.GL.Internal.Shared.glVertexAttrib4dvARB'.
glVertexAttrib4dARB :: MonadIO m => GLuint -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> m ()
glVertexAttrib4dARB = ffiuintdoubledoubledoubledoubleIOV glVertexAttrib4dARBFunPtr
glVertexAttrib4dARBFunPtr :: FunPtr (GLuint -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ())
glVertexAttrib4dARBFunPtr = unsafePerformIO (getProcAddress "glVertexAttrib4dARB")
{-# NOINLINE glVertexAttrib4dARBFunPtr #-}
-- | Usage: @'glVertexAttrib4dvARB' index v@
--
-- The length of @v@ should be @4@.
--
-- This command is an alias for 'Graphics.GL.Internal.Shared.glVertexAttrib4dv'.
glVertexAttrib4dvARB :: MonadIO m => GLuint -> Ptr GLdouble -> m ()
glVertexAttrib4dvARB = ffiuintPtrdoubleIOV glVertexAttrib4dvARBFunPtr
glVertexAttrib4dvARBFunPtr :: FunPtr (GLuint -> Ptr GLdouble -> IO ())
glVertexAttrib4dvARBFunPtr = unsafePerformIO (getProcAddress "glVertexAttrib4dvARB")
{-# NOINLINE glVertexAttrib4dvARBFunPtr #-}
-- | Usage: @'glVertexAttrib4fARB' index x y z w@
--
-- This command is an alias for 'Graphics.GL.Internal.Shared.glVertexAttrib4f'.
--
-- The vector equivalent of this command is 'Graphics.GL.Internal.Shared.glVertexAttrib4fvARB'.
glVertexAttrib4fARB :: MonadIO m => GLuint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> m ()
glVertexAttrib4fARB = ffiuintfloatfloatfloatfloatIOV glVertexAttrib4fARBFunPtr
glVertexAttrib4fARBFunPtr :: FunPtr (GLuint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
glVertexAttrib4fARBFunPtr = unsafePerformIO (getProcAddress "glVertexAttrib4fARB")
{-# NOINLINE glVertexAttrib4fARBFunPtr #-}
-- | Usage: @'glVertexAttrib4fvARB' index v@
--
-- The length of @v@ should be @4@.
--
-- This command is an alias for 'Graphics.GL.Internal.Shared.glVertexAttrib4fv'.
glVertexAttrib4fvARB :: MonadIO m => GLuint -> Ptr GLfloat -> m ()
glVertexAttrib4fvARB = ffiuintPtrfloatIOV glVertexAttrib4fvARBFunPtr
glVertexAttrib4fvARBFunPtr :: FunPtr (GLuint -> Ptr GLfloat -> IO ())
glVertexAttrib4fvARBFunPtr = unsafePerformIO (getProcAddress "glVertexAttrib4fvARB")
{-# NOINLINE glVertexAttrib4fvARBFunPtr #-}
-- | Usage: @'glVertexAttrib4ivARB' index v@
--
-- The length of @v@ should be @4@.
--
-- This command is an alias for 'Graphics.GL.Internal.Shared.glVertexAttrib4iv'.
glVertexAttrib4ivARB :: MonadIO m => GLuint -> Ptr GLint -> m ()
glVertexAttrib4ivARB = ffiuintPtrintIOV glVertexAttrib4ivARBFunPtr
glVertexAttrib4ivARBFunPtr :: FunPtr (GLuint -> Ptr GLint -> IO ())
glVertexAttrib4ivARBFunPtr = unsafePerformIO (getProcAddress "glVertexAttrib4ivARB")
{-# NOINLINE glVertexAttrib4ivARBFunPtr #-}
-- | Usage: @'glVertexAttrib4sARB' index x y z w@
--
-- This command is an alias for 'Graphics.GL.Internal.Shared.glVertexAttrib4s'.
--
-- The vector equivalent of this command is 'Graphics.GL.Internal.Shared.glVertexAttrib4svARB'.
glVertexAttrib4sARB :: MonadIO m => GLuint -> GLshort -> GLshort -> GLshort -> GLshort -> m ()
glVertexAttrib4sARB = ffiuintshortshortshortshortIOV glVertexAttrib4sARBFunPtr
glVertexAttrib4sARBFunPtr :: FunPtr (GLuint -> GLshort -> GLshort -> GLshort -> GLshort -> IO ())
glVertexAttrib4sARBFunPtr = unsafePerformIO (getProcAddress "glVertexAttrib4sARB")
{-# NOINLINE glVertexAttrib4sARBFunPtr #-}
-- | Usage: @'glVertexAttrib4svARB' index v@
--
-- The length of @v@ should be @4@.
--
-- This command is an alias for 'Graphics.GL.Internal.Shared.glVertexAttrib4sv'.
glVertexAttrib4svARB :: MonadIO m => GLuint -> Ptr GLshort -> m ()
glVertexAttrib4svARB = ffiuintPtrshortIOV glVertexAttrib4svARBFunPtr
glVertexAttrib4svARBFunPtr :: FunPtr (GLuint -> Ptr GLshort -> IO ())
glVertexAttrib4svARBFunPtr = unsafePerformIO (getProcAddress "glVertexAttrib4svARB")
{-# NOINLINE glVertexAttrib4svARBFunPtr #-}
-- | Usage: @'glVertexAttrib4ubvARB' index v@
--
-- The length of @v@ should be @4@.
--
-- This command is an alias for 'Graphics.GL.Internal.Shared.glVertexAttrib4ubv'.
glVertexAttrib4ubvARB :: MonadIO m => GLuint -> Ptr GLubyte -> m ()
glVertexAttrib4ubvARB = ffiuintPtrubyteIOV glVertexAttrib4ubvARBFunPtr
glVertexAttrib4ubvARBFunPtr :: FunPtr (GLuint -> Ptr GLubyte -> IO ())
glVertexAttrib4ubvARBFunPtr = unsafePerformIO (getProcAddress "glVertexAttrib4ubvARB")
{-# NOINLINE glVertexAttrib4ubvARBFunPtr #-}
-- | Usage: @'glVertexAttrib4uivARB' index v@
--
-- The length of @v@ should be @4@.
--
-- This command is an alias for 'Graphics.GL.Internal.Shared.glVertexAttrib4uiv'.
glVertexAttrib4uivARB :: MonadIO m => GLuint -> Ptr GLuint -> m ()
glVertexAttrib4uivARB = ffiuintPtruintIOV glVertexAttrib4uivARBFunPtr
glVertexAttrib4uivARBFunPtr :: FunPtr (GLuint -> Ptr GLuint -> IO ())
glVertexAttrib4uivARBFunPtr = unsafePerformIO (getProcAddress "glVertexAttrib4uivARB")
{-# NOINLINE glVertexAttrib4uivARBFunPtr #-}
-- | Usage: @'glVertexAttrib4usvARB' index v@
--
-- The length of @v@ should be @4@.
--
-- This command is an alias for 'Graphics.GL.Internal.Shared.glVertexAttrib4usv'.
glVertexAttrib4usvARB :: MonadIO m => GLuint -> Ptr GLushort -> m ()
glVertexAttrib4usvARB = ffiuintPtrushortIOV glVertexAttrib4usvARBFunPtr
glVertexAttrib4usvARBFunPtr :: FunPtr (GLuint -> Ptr GLushort -> IO ())
glVertexAttrib4usvARBFunPtr = unsafePerformIO (getProcAddress "glVertexAttrib4usvARB")
{-# NOINLINE glVertexAttrib4usvARBFunPtr #-}
-- | Usage: @'glVertexAttribPointerARB' index size type normalized stride pointer@
--
-- The parameter @type@ is a @VertexAttribPointerType@.
--
-- The parameter @normalized@ is a @Boolean@, one of: 'Graphics.GL.Internal.Shared.GL_FALSE', 'Graphics.GL.Internal.Shared.GL_TRUE'.
--
-- The length of @pointer@ should be @COMPSIZE(size,type,stride)@.
--
-- This command is an alias for 'Graphics.GL.Internal.Shared.glVertexAttribPointer'.
glVertexAttribPointerARB :: MonadIO m => GLuint -> GLint -> GLenum -> GLboolean -> GLsizei -> Ptr () -> m ()
glVertexAttribPointerARB = ffiuintintenumbooleansizeiPtrVIOV glVertexAttribPointerARBFunPtr
glVertexAttribPointerARBFunPtr :: FunPtr (GLuint -> GLint -> GLenum -> GLboolean -> GLsizei -> Ptr () -> IO ())
glVertexAttribPointerARBFunPtr = unsafePerformIO (getProcAddress "glVertexAttribPointerARB")
{-# NOINLINE glVertexAttribPointerARBFunPtr #-}
pattern GL_CURRENT_VERTEX_ATTRIB_ARB = 0x8626
pattern GL_MAX_VERTEX_ATTRIBS_ARB = 0x8869
pattern GL_VERTEX_ATTRIB_ARRAY_ENABLED_ARB = 0x8622
pattern GL_VERTEX_ATTRIB_ARRAY_NORMALIZED_ARB = 0x886A
pattern GL_VERTEX_ATTRIB_ARRAY_POINTER_ARB = 0x8645
pattern GL_VERTEX_ATTRIB_ARRAY_SIZE_ARB = 0x8623
pattern GL_VERTEX_ATTRIB_ARRAY_STRIDE_ARB = 0x8624
pattern GL_VERTEX_ATTRIB_ARRAY_TYPE_ARB = 0x8625
pattern GL_VERTEX_PROGRAM_POINT_SIZE_ARB = 0x8642
pattern GL_VERTEX_PROGRAM_TWO_SIDE_ARB = 0x8643
pattern GL_MAX_VERTEX_TEXTURE_IMAGE_UNITS_ARB = 0x8B4C
-- | Usage: @'glBindFragDataLocationEXT' program color name@
--
-- The length of @name@ should be @COMPSIZE(name)@.
--
-- This command is an alias for 'Graphics.GL.Internal.Shared.glBindFragDataLocation'.
glBindFragDataLocationEXT :: MonadIO m => GLuint -> GLuint -> Ptr GLchar -> m ()
glBindFragDataLocationEXT = ffiuintuintPtrcharIOV glBindFragDataLocationEXTFunPtr
glBindFragDataLocationEXTFunPtr :: FunPtr (GLuint -> GLuint -> Ptr GLchar -> IO ())
glBindFragDataLocationEXTFunPtr = unsafePerformIO (getProcAddress "glBindFragDataLocationEXT")
{-# NOINLINE glBindFragDataLocationEXTFunPtr #-}
pattern GL_R16F_EXT = 0x822D
pattern GL_RG16F_EXT = 0x822F
pattern GL_RGB16F_EXT = 0x881B
pattern GL_RGBA16F_EXT = 0x881A
-- | Usage: @'glDisableIndexedEXT' target index@
--
-- This command is an alias for 'Graphics.GL.Internal.Shared.glDisablei'.
glDisableIndexedEXT :: MonadIO m => GLenum -> GLuint -> m ()
glDisableIndexedEXT = ffienumuintIOV glDisableIndexedEXTFunPtr
glDisableIndexedEXTFunPtr :: FunPtr (GLenum -> GLuint -> IO ())
glDisableIndexedEXTFunPtr = unsafePerformIO (getProcAddress "glDisableIndexedEXT")
{-# NOINLINE glDisableIndexedEXTFunPtr #-}
-- | Usage: @'glEnableIndexedEXT' target index@
--
-- This command is an alias for 'Graphics.GL.Internal.Shared.glEnablei'.
glEnableIndexedEXT :: MonadIO m => GLenum -> GLuint -> m ()
glEnableIndexedEXT = ffienumuintIOV glEnableIndexedEXTFunPtr
glEnableIndexedEXTFunPtr :: FunPtr (GLenum -> GLuint -> IO ())
glEnableIndexedEXTFunPtr = unsafePerformIO (getProcAddress "glEnableIndexedEXT")
{-# NOINLINE glEnableIndexedEXTFunPtr #-}
-- | Usage: @'glGetBooleanIndexedvEXT' target index data@
--
-- The parameter @data@ is a @Boolean@, one of: 'Graphics.GL.Internal.Shared.GL_FALSE', 'Graphics.GL.Internal.Shared.GL_TRUE'.
--
-- The length of @data@ should be @COMPSIZE(target)@.
--
-- This command is an alias for 'Graphics.GL.Internal.Shared.glGetBooleani_v'.
glGetBooleanIndexedvEXT :: MonadIO m => GLenum -> GLuint -> Ptr GLboolean -> m ()
glGetBooleanIndexedvEXT = ffienumuintPtrbooleanIOV glGetBooleanIndexedvEXTFunPtr
glGetBooleanIndexedvEXTFunPtr :: FunPtr (GLenum -> GLuint -> Ptr GLboolean -> IO ())
glGetBooleanIndexedvEXTFunPtr = unsafePerformIO (getProcAddress "glGetBooleanIndexedvEXT")
{-# NOINLINE glGetBooleanIndexedvEXTFunPtr #-}
-- | Usage: @'glGetIntegerIndexedvEXT' target index data@
--
-- The length of @data@ should be @COMPSIZE(target)@.
--
-- This command is an alias for 'Graphics.GL.Internal.Shared.glGetIntegeri_v'.
glGetIntegerIndexedvEXT :: MonadIO m => GLenum -> GLuint -> Ptr GLint -> m ()
glGetIntegerIndexedvEXT = ffienumuintPtrintIOV glGetIntegerIndexedvEXTFunPtr
glGetIntegerIndexedvEXTFunPtr :: FunPtr (GLenum -> GLuint -> Ptr GLint -> IO ())
glGetIntegerIndexedvEXTFunPtr = unsafePerformIO (getProcAddress "glGetIntegerIndexedvEXT")
{-# NOINLINE glGetIntegerIndexedvEXTFunPtr #-}
-- | Usage: @'glIsEnabledIndexedEXT' target index@
--
-- This command is an alias for 'Graphics.GL.Internal.Shared.glIsEnabledi'.
glIsEnabledIndexedEXT :: MonadIO m => GLenum -> GLuint -> m GLboolean
glIsEnabledIndexedEXT = ffienumuintIOboolean glIsEnabledIndexedEXTFunPtr
glIsEnabledIndexedEXTFunPtr :: FunPtr (GLenum -> GLuint -> IO GLboolean)
glIsEnabledIndexedEXTFunPtr = unsafePerformIO (getProcAddress "glIsEnabledIndexedEXT")
{-# NOINLINE glIsEnabledIndexedEXTFunPtr #-}
-- | Usage: @'glProgramUniform1fEXT' program location v0@
--
-- This command is an alias for 'Graphics.GL.Internal.Shared.glProgramUniform1f'.
glProgramUniform1fEXT :: MonadIO m => GLuint -> GLint -> GLfloat -> m ()
glProgramUniform1fEXT = ffiuintintfloatIOV glProgramUniform1fEXTFunPtr
glProgramUniform1fEXTFunPtr :: FunPtr (GLuint -> GLint -> GLfloat -> IO ())
glProgramUniform1fEXTFunPtr = unsafePerformIO (getProcAddress "glProgramUniform1fEXT")
{-# NOINLINE glProgramUniform1fEXTFunPtr #-}
-- | Usage: @'glProgramUniform1fvEXT' program location count value@
--
-- The length of @value@ should be @count@.
--
-- This command is an alias for 'Graphics.GL.Internal.Shared.glProgramUniform1fv'.
glProgramUniform1fvEXT :: MonadIO m => GLuint -> GLint -> GLsizei -> Ptr GLfloat -> m ()
glProgramUniform1fvEXT = ffiuintintsizeiPtrfloatIOV glProgramUniform1fvEXTFunPtr
glProgramUniform1fvEXTFunPtr :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLfloat -> IO ())
glProgramUniform1fvEXTFunPtr = unsafePerformIO (getProcAddress "glProgramUniform1fvEXT")
{-# NOINLINE glProgramUniform1fvEXTFunPtr #-}
-- | Usage: @'glProgramUniform1iEXT' program location v0@
--
-- This command is an alias for 'Graphics.GL.Internal.Shared.glProgramUniform1i'.
glProgramUniform1iEXT :: MonadIO m => GLuint -> GLint -> GLint -> m ()
glProgramUniform1iEXT = ffiuintintintIOV glProgramUniform1iEXTFunPtr
glProgramUniform1iEXTFunPtr :: FunPtr (GLuint -> GLint -> GLint -> IO ())
glProgramUniform1iEXTFunPtr = unsafePerformIO (getProcAddress "glProgramUniform1iEXT")
{-# NOINLINE glProgramUniform1iEXTFunPtr #-}
-- | Usage: @'glProgramUniform1ivEXT' program location count value@
--
-- The length of @value@ should be @count@.
--
-- This command is an alias for 'Graphics.GL.Internal.Shared.glProgramUniform1iv'.
glProgramUniform1ivEXT :: MonadIO m => GLuint -> GLint -> GLsizei -> Ptr GLint -> m ()
glProgramUniform1ivEXT = ffiuintintsizeiPtrintIOV glProgramUniform1ivEXTFunPtr
glProgramUniform1ivEXTFunPtr :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLint -> IO ())
glProgramUniform1ivEXTFunPtr = unsafePerformIO (getProcAddress "glProgramUniform1ivEXT")
{-# NOINLINE glProgramUniform1ivEXTFunPtr #-}
-- | Usage: @'glProgramUniform1uiEXT' program location v0@
--
-- This command is an alias for 'Graphics.GL.Internal.Shared.glProgramUniform1ui'.
glProgramUniform1uiEXT :: MonadIO m => GLuint -> GLint -> GLuint -> m ()
glProgramUniform1uiEXT = ffiuintintuintIOV glProgramUniform1uiEXTFunPtr
glProgramUniform1uiEXTFunPtr :: FunPtr (GLuint -> GLint -> GLuint -> IO ())
glProgramUniform1uiEXTFunPtr = unsafePerformIO (getProcAddress "glProgramUniform1uiEXT")
{-# NOINLINE glProgramUniform1uiEXTFunPtr #-}
-- | Usage: @'glProgramUniform1uivEXT' program location count value@
--
-- The length of @value@ should be @count@.
--
-- This command is an alias for 'Graphics.GL.Internal.Shared.glProgramUniform1uiv'.
glProgramUniform1uivEXT :: MonadIO m => GLuint -> GLint -> GLsizei -> Ptr GLuint -> m ()
glProgramUniform1uivEXT = ffiuintintsizeiPtruintIOV glProgramUniform1uivEXTFunPtr
glProgramUniform1uivEXTFunPtr :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLuint -> IO ())
glProgramUniform1uivEXTFunPtr = unsafePerformIO (getProcAddress "glProgramUniform1uivEXT")
{-# NOINLINE glProgramUniform1uivEXTFunPtr #-}
-- | Usage: @'glProgramUniform2fEXT' program location v0 v1@
--
-- This command is an alias for 'Graphics.GL.Internal.Shared.glProgramUniform2f'.
glProgramUniform2fEXT :: MonadIO m => GLuint -> GLint -> GLfloat -> GLfloat -> m ()
glProgramUniform2fEXT = ffiuintintfloatfloatIOV glProgramUniform2fEXTFunPtr
glProgramUniform2fEXTFunPtr :: FunPtr (GLuint -> GLint -> GLfloat -> GLfloat -> IO ())
glProgramUniform2fEXTFunPtr = unsafePerformIO (getProcAddress "glProgramUniform2fEXT")
{-# NOINLINE glProgramUniform2fEXTFunPtr #-}
-- | Usage: @'glProgramUniform2fvEXT' program location count value@
--
-- The length of @value@ should be @count*2@.
--
-- This command is an alias for 'Graphics.GL.Internal.Shared.glProgramUniform2fv'.
glProgramUniform2fvEXT :: MonadIO m => GLuint -> GLint -> GLsizei -> Ptr GLfloat -> m ()
glProgramUniform2fvEXT = ffiuintintsizeiPtrfloatIOV glProgramUniform2fvEXTFunPtr
glProgramUniform2fvEXTFunPtr :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLfloat -> IO ())
glProgramUniform2fvEXTFunPtr = unsafePerformIO (getProcAddress "glProgramUniform2fvEXT")
{-# NOINLINE glProgramUniform2fvEXTFunPtr #-}
-- | Usage: @'glProgramUniform2iEXT' program location v0 v1@
--
-- This command is an alias for 'Graphics.GL.Internal.Shared.glProgramUniform2i'.
glProgramUniform2iEXT :: MonadIO m => GLuint -> GLint -> GLint -> GLint -> m ()
glProgramUniform2iEXT = ffiuintintintintIOV glProgramUniform2iEXTFunPtr
glProgramUniform2iEXTFunPtr :: FunPtr (GLuint -> GLint -> GLint -> GLint -> IO ())
glProgramUniform2iEXTFunPtr = unsafePerformIO (getProcAddress "glProgramUniform2iEXT")
{-# NOINLINE glProgramUniform2iEXTFunPtr #-}
-- | Usage: @'glProgramUniform2ivEXT' program location count value@
--
-- The length of @value@ should be @count*2@.
--
-- This command is an alias for 'Graphics.GL.Internal.Shared.glProgramUniform2iv'.
glProgramUniform2ivEXT :: MonadIO m => GLuint -> GLint -> GLsizei -> Ptr GLint -> m ()
glProgramUniform2ivEXT = ffiuintintsizeiPtrintIOV glProgramUniform2ivEXTFunPtr
glProgramUniform2ivEXTFunPtr :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLint -> IO ())
glProgramUniform2ivEXTFunPtr = unsafePerformIO (getProcAddress "glProgramUniform2ivEXT")
{-# NOINLINE glProgramUniform2ivEXTFunPtr #-}
-- | Usage: @'glProgramUniform2uiEXT' program location v0 v1@
--
-- This command is an alias for 'Graphics.GL.Internal.Shared.glProgramUniform2ui'.
glProgramUniform2uiEXT :: MonadIO m => GLuint -> GLint -> GLuint -> GLuint -> m ()
glProgramUniform2uiEXT = ffiuintintuintuintIOV glProgramUniform2uiEXTFunPtr
glProgramUniform2uiEXTFunPtr :: FunPtr (GLuint -> GLint -> GLuint -> GLuint -> IO ())
glProgramUniform2uiEXTFunPtr = unsafePerformIO (getProcAddress "glProgramUniform2uiEXT")
{-# NOINLINE glProgramUniform2uiEXTFunPtr #-}
-- | Usage: @'glProgramUniform2uivEXT' program location count value@
--
-- The length of @value@ should be @count*2@.
--
-- This command is an alias for 'Graphics.GL.Internal.Shared.glProgramUniform2uiv'.
glProgramUniform2uivEXT :: MonadIO m => GLuint -> GLint -> GLsizei -> Ptr GLuint -> m ()
glProgramUniform2uivEXT = ffiuintintsizeiPtruintIOV glProgramUniform2uivEXTFunPtr
glProgramUniform2uivEXTFunPtr :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLuint -> IO ())
glProgramUniform2uivEXTFunPtr = unsafePerformIO (getProcAddress "glProgramUniform2uivEXT")
{-# NOINLINE glProgramUniform2uivEXTFunPtr #-}
-- | Usage: @'glProgramUniform3fEXT' program location v0 v1 v2@
--
-- This command is an alias for 'Graphics.GL.Internal.Shared.glProgramUniform3f'.
glProgramUniform3fEXT :: MonadIO m => GLuint -> GLint -> GLfloat -> GLfloat -> GLfloat -> m ()
glProgramUniform3fEXT = ffiuintintfloatfloatfloatIOV glProgramUniform3fEXTFunPtr
glProgramUniform3fEXTFunPtr :: FunPtr (GLuint -> GLint -> GLfloat -> GLfloat -> GLfloat -> IO ())
glProgramUniform3fEXTFunPtr = unsafePerformIO (getProcAddress "glProgramUniform3fEXT")
{-# NOINLINE glProgramUniform3fEXTFunPtr #-}
-- | Usage: @'glProgramUniform3fvEXT' program location count value@
--
-- The length of @value@ should be @count*3@.
--
-- This command is an alias for 'Graphics.GL.Internal.Shared.glProgramUniform3fv'.
glProgramUniform3fvEXT :: MonadIO m => GLuint -> GLint -> GLsizei -> Ptr GLfloat -> m ()
glProgramUniform3fvEXT = ffiuintintsizeiPtrfloatIOV glProgramUniform3fvEXTFunPtr
glProgramUniform3fvEXTFunPtr :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLfloat -> IO ())
glProgramUniform3fvEXTFunPtr = unsafePerformIO (getProcAddress "glProgramUniform3fvEXT")
{-# NOINLINE glProgramUniform3fvEXTFunPtr #-}
-- | Usage: @'glProgramUniform3iEXT' program location v0 v1 v2@
--
-- This command is an alias for 'Graphics.GL.Internal.Shared.glProgramUniform3i'.
glProgramUniform3iEXT :: MonadIO m => GLuint -> GLint -> GLint -> GLint -> GLint -> m ()
glProgramUniform3iEXT = ffiuintintintintintIOV glProgramUniform3iEXTFunPtr
glProgramUniform3iEXTFunPtr :: FunPtr (GLuint -> GLint -> GLint -> GLint -> GLint -> IO ())
glProgramUniform3iEXTFunPtr = unsafePerformIO (getProcAddress "glProgramUniform3iEXT")
{-# NOINLINE glProgramUniform3iEXTFunPtr #-}
-- | Usage: @'glProgramUniform3ivEXT' program location count value@
--
-- The length of @value@ should be @count*3@.
--
-- This command is an alias for 'Graphics.GL.Internal.Shared.glProgramUniform3iv'.
glProgramUniform3ivEXT :: MonadIO m => GLuint -> GLint -> GLsizei -> Ptr GLint -> m ()
glProgramUniform3ivEXT = ffiuintintsizeiPtrintIOV glProgramUniform3ivEXTFunPtr
glProgramUniform3ivEXTFunPtr :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLint -> IO ())
glProgramUniform3ivEXTFunPtr = unsafePerformIO (getProcAddress "glProgramUniform3ivEXT")
{-# NOINLINE glProgramUniform3ivEXTFunPtr #-}
-- | Usage: @'glProgramUniform3uiEXT' program location v0 v1 v2@
--
-- This command is an alias for 'Graphics.GL.Internal.Shared.glProgramUniform3ui'.
glProgramUniform3uiEXT :: MonadIO m => GLuint -> GLint -> GLuint -> GLuint -> GLuint -> m ()
glProgramUniform3uiEXT = ffiuintintuintuintuintIOV glProgramUniform3uiEXTFunPtr
glProgramUniform3uiEXTFunPtr :: FunPtr (GLuint -> GLint -> GLuint -> GLuint -> GLuint -> IO ())
glProgramUniform3uiEXTFunPtr = unsafePerformIO (getProcAddress "glProgramUniform3uiEXT")
{-# NOINLINE glProgramUniform3uiEXTFunPtr #-}
-- | Usage: @'glProgramUniform3uivEXT' program location count value@
--
-- The length of @value@ should be @count*3@.
--
-- This command is an alias for 'Graphics.GL.Internal.Shared.glProgramUniform3uiv'.
glProgramUniform3uivEXT :: MonadIO m => GLuint -> GLint -> GLsizei -> Ptr GLuint -> m ()
glProgramUniform3uivEXT = ffiuintintsizeiPtruintIOV glProgramUniform3uivEXTFunPtr
glProgramUniform3uivEXTFunPtr :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLuint -> IO ())
glProgramUniform3uivEXTFunPtr = unsafePerformIO (getProcAddress "glProgramUniform3uivEXT")
{-# NOINLINE glProgramUniform3uivEXTFunPtr #-}
-- | Usage: @'glProgramUniform4fEXT' program location v0 v1 v2 v3@
--
-- This command is an alias for 'Graphics.GL.Internal.Shared.glProgramUniform4f'.
glProgramUniform4fEXT :: MonadIO m => GLuint -> GLint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> m ()
glProgramUniform4fEXT = ffiuintintfloatfloatfloatfloatIOV glProgramUniform4fEXTFunPtr
glProgramUniform4fEXTFunPtr :: FunPtr (GLuint -> GLint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
glProgramUniform4fEXTFunPtr = unsafePerformIO (getProcAddress "glProgramUniform4fEXT")
{-# NOINLINE glProgramUniform4fEXTFunPtr #-}
-- | Usage: @'glProgramUniform4fvEXT' program location count value@
--
-- The length of @value@ should be @count*4@.
--
-- This command is an alias for 'Graphics.GL.Internal.Shared.glProgramUniform4fv'.
glProgramUniform4fvEXT :: MonadIO m => GLuint -> GLint -> GLsizei -> Ptr GLfloat -> m ()
glProgramUniform4fvEXT = ffiuintintsizeiPtrfloatIOV glProgramUniform4fvEXTFunPtr
glProgramUniform4fvEXTFunPtr :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLfloat -> IO ())
glProgramUniform4fvEXTFunPtr = unsafePerformIO (getProcAddress "glProgramUniform4fvEXT")
{-# NOINLINE glProgramUniform4fvEXTFunPtr #-}
-- | Usage: @'glProgramUniform4iEXT' program location v0 v1 v2 v3@
--
-- This command is an alias for 'Graphics.GL.Internal.Shared.glProgramUniform4i'.
glProgramUniform4iEXT :: MonadIO m => GLuint -> GLint -> GLint -> GLint -> GLint -> GLint -> m ()
glProgramUniform4iEXT = ffiuintintintintintintIOV glProgramUniform4iEXTFunPtr
glProgramUniform4iEXTFunPtr :: FunPtr (GLuint -> GLint -> GLint -> GLint -> GLint -> GLint -> IO ())
glProgramUniform4iEXTFunPtr = unsafePerformIO (getProcAddress "glProgramUniform4iEXT")
{-# NOINLINE glProgramUniform4iEXTFunPtr #-}
-- | Usage: @'glProgramUniform4ivEXT' program location count value@
--
-- The length of @value@ should be @count*4@.
--
-- This command is an alias for 'Graphics.GL.Internal.Shared.glProgramUniform4iv'.
glProgramUniform4ivEXT :: MonadIO m => GLuint -> GLint -> GLsizei -> Ptr GLint -> m ()
glProgramUniform4ivEXT = ffiuintintsizeiPtrintIOV glProgramUniform4ivEXTFunPtr
glProgramUniform4ivEXTFunPtr :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLint -> IO ())
glProgramUniform4ivEXTFunPtr = unsafePerformIO (getProcAddress "glProgramUniform4ivEXT")
{-# NOINLINE glProgramUniform4ivEXTFunPtr #-}
-- | Usage: @'glProgramUniform4uiEXT' program location v0 v1 v2 v3@
--
-- This command is an alias for 'Graphics.GL.Internal.Shared.glProgramUniform4ui'.
glProgramUniform4uiEXT :: MonadIO m => GLuint -> GLint -> GLuint -> GLuint -> GLuint -> GLuint -> m ()
glProgramUniform4uiEXT = ffiuintintuintuintuintuintIOV glProgramUniform4uiEXTFunPtr
glProgramUniform4uiEXTFunPtr :: FunPtr (GLuint -> GLint -> GLuint -> GLuint -> GLuint -> GLuint -> IO ())
glProgramUniform4uiEXTFunPtr = unsafePerformIO (getProcAddress "glProgramUniform4uiEXT")
{-# NOINLINE glProgramUniform4uiEXTFunPtr #-}
-- | Usage: @'glProgramUniform4uivEXT' program location count value@
--
-- The length of @value@ should be @count*4@.
--
-- This command is an alias for 'Graphics.GL.Internal.Shared.glProgramUniform4uiv'.
glProgramUniform4uivEXT :: MonadIO m => GLuint -> GLint -> GLsizei -> Ptr GLuint -> m ()
glProgramUniform4uivEXT = ffiuintintsizeiPtruintIOV glProgramUniform4uivEXTFunPtr
glProgramUniform4uivEXTFunPtr :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLuint -> IO ())
glProgramUniform4uivEXTFunPtr = unsafePerformIO (getProcAddress "glProgramUniform4uivEXT")
{-# NOINLINE glProgramUniform4uivEXTFunPtr #-}
-- | Usage: @'glProgramUniformMatrix2fvEXT' program location count transpose value@
--
-- The parameter @transpose@ is a @Boolean@, one of: 'Graphics.GL.Internal.Shared.GL_FALSE', 'Graphics.GL.Internal.Shared.GL_TRUE'.
--
-- The length of @value@ should be @count*4@.
--
-- This command is an alias for 'Graphics.GL.Internal.Shared.glProgramUniformMatrix2fv'.
glProgramUniformMatrix2fvEXT :: MonadIO m => GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> m ()
glProgramUniformMatrix2fvEXT = ffiuintintsizeibooleanPtrfloatIOV glProgramUniformMatrix2fvEXTFunPtr
glProgramUniformMatrix2fvEXTFunPtr :: FunPtr (GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ())
glProgramUniformMatrix2fvEXTFunPtr = unsafePerformIO (getProcAddress "glProgramUniformMatrix2fvEXT")
{-# NOINLINE glProgramUniformMatrix2fvEXTFunPtr #-}
-- | Usage: @'glProgramUniformMatrix2x3fvEXT' program location count transpose value@
--
-- The parameter @transpose@ is a @Boolean@, one of: 'Graphics.GL.Internal.Shared.GL_FALSE', 'Graphics.GL.Internal.Shared.GL_TRUE'.
--
-- The length of @value@ should be @count*6@.
--
-- This command is an alias for 'Graphics.GL.Internal.Shared.glProgramUniformMatrix2x3fv'.
glProgramUniformMatrix2x3fvEXT :: MonadIO m => GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> m ()
glProgramUniformMatrix2x3fvEXT = ffiuintintsizeibooleanPtrfloatIOV glProgramUniformMatrix2x3fvEXTFunPtr
glProgramUniformMatrix2x3fvEXTFunPtr :: FunPtr (GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ())
glProgramUniformMatrix2x3fvEXTFunPtr = unsafePerformIO (getProcAddress "glProgramUniformMatrix2x3fvEXT")
{-# NOINLINE glProgramUniformMatrix2x3fvEXTFunPtr #-}
-- | Usage: @'glProgramUniformMatrix2x4fvEXT' program location count transpose value@
--
-- The parameter @transpose@ is a @Boolean@, one of: 'Graphics.GL.Internal.Shared.GL_FALSE', 'Graphics.GL.Internal.Shared.GL_TRUE'.
--
-- The length of @value@ should be @count*8@.
--
-- This command is an alias for 'Graphics.GL.Internal.Shared.glProgramUniformMatrix2x4fv'.
glProgramUniformMatrix2x4fvEXT :: MonadIO m => GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> m ()
glProgramUniformMatrix2x4fvEXT = ffiuintintsizeibooleanPtrfloatIOV glProgramUniformMatrix2x4fvEXTFunPtr
glProgramUniformMatrix2x4fvEXTFunPtr :: FunPtr (GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ())
glProgramUniformMatrix2x4fvEXTFunPtr = unsafePerformIO (getProcAddress "glProgramUniformMatrix2x4fvEXT")
{-# NOINLINE glProgramUniformMatrix2x4fvEXTFunPtr #-}
-- | Usage: @'glProgramUniformMatrix3fvEXT' program location count transpose value@
--
-- The parameter @transpose@ is a @Boolean@, one of: 'Graphics.GL.Internal.Shared.GL_FALSE', 'Graphics.GL.Internal.Shared.GL_TRUE'.
--
-- The length of @value@ should be @count*9@.
--
-- This command is an alias for 'Graphics.GL.Internal.Shared.glProgramUniformMatrix3fv'.
glProgramUniformMatrix3fvEXT :: MonadIO m => GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> m ()
glProgramUniformMatrix3fvEXT = ffiuintintsizeibooleanPtrfloatIOV glProgramUniformMatrix3fvEXTFunPtr
glProgramUniformMatrix3fvEXTFunPtr :: FunPtr (GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ())
glProgramUniformMatrix3fvEXTFunPtr = unsafePerformIO (getProcAddress "glProgramUniformMatrix3fvEXT")
{-# NOINLINE glProgramUniformMatrix3fvEXTFunPtr #-}
-- | Usage: @'glProgramUniformMatrix3x2fvEXT' program location count transpose value@
--
-- The parameter @transpose@ is a @Boolean@, one of: 'Graphics.GL.Internal.Shared.GL_FALSE', 'Graphics.GL.Internal.Shared.GL_TRUE'.
--
-- The length of @value@ should be @count*6@.
--
-- This command is an alias for 'Graphics.GL.Internal.Shared.glProgramUniformMatrix3x2fv'.
glProgramUniformMatrix3x2fvEXT :: MonadIO m => GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> m ()
glProgramUniformMatrix3x2fvEXT = ffiuintintsizeibooleanPtrfloatIOV glProgramUniformMatrix3x2fvEXTFunPtr
glProgramUniformMatrix3x2fvEXTFunPtr :: FunPtr (GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ())
glProgramUniformMatrix3x2fvEXTFunPtr = unsafePerformIO (getProcAddress "glProgramUniformMatrix3x2fvEXT")
{-# NOINLINE glProgramUniformMatrix3x2fvEXTFunPtr #-}
-- | Usage: @'glProgramUniformMatrix3x4fvEXT' program location count transpose value@
--
-- The parameter @transpose@ is a @Boolean@, one of: 'Graphics.GL.Internal.Shared.GL_FALSE', 'Graphics.GL.Internal.Shared.GL_TRUE'.
--
-- The length of @value@ should be @count*12@.
--
-- This command is an alias for 'Graphics.GL.Internal.Shared.glProgramUniformMatrix3x4fv'.
glProgramUniformMatrix3x4fvEXT :: MonadIO m => GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> m ()
glProgramUniformMatrix3x4fvEXT = ffiuintintsizeibooleanPtrfloatIOV glProgramUniformMatrix3x4fvEXTFunPtr
glProgramUniformMatrix3x4fvEXTFunPtr :: FunPtr (GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ())
glProgramUniformMatrix3x4fvEXTFunPtr = unsafePerformIO (getProcAddress "glProgramUniformMatrix3x4fvEXT")
{-# NOINLINE glProgramUniformMatrix3x4fvEXTFunPtr #-}
-- | Usage: @'glProgramUniformMatrix4fvEXT' program location count transpose value@
--
-- The parameter @transpose@ is a @Boolean@, one of: 'Graphics.GL.Internal.Shared.GL_FALSE', 'Graphics.GL.Internal.Shared.GL_TRUE'.
--
-- The length of @value@ should be @count*16@.
--
-- This command is an alias for 'Graphics.GL.Internal.Shared.glProgramUniformMatrix4fv'.
glProgramUniformMatrix4fvEXT :: MonadIO m => GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> m ()
glProgramUniformMatrix4fvEXT = ffiuintintsizeibooleanPtrfloatIOV glProgramUniformMatrix4fvEXTFunPtr
glProgramUniformMatrix4fvEXTFunPtr :: FunPtr (GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ())
glProgramUniformMatrix4fvEXTFunPtr = unsafePerformIO (getProcAddress "glProgramUniformMatrix4fvEXT")
{-# NOINLINE glProgramUniformMatrix4fvEXTFunPtr #-}
-- | Usage: @'glProgramUniformMatrix4x2fvEXT' program location count transpose value@
--
-- The parameter @transpose@ is a @Boolean@, one of: 'Graphics.GL.Internal.Shared.GL_FALSE', 'Graphics.GL.Internal.Shared.GL_TRUE'.
--
-- The length of @value@ should be @count*8@.
--
-- This command is an alias for 'Graphics.GL.Internal.Shared.glProgramUniformMatrix4x2fv'.
glProgramUniformMatrix4x2fvEXT :: MonadIO m => GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> m ()
glProgramUniformMatrix4x2fvEXT = ffiuintintsizeibooleanPtrfloatIOV glProgramUniformMatrix4x2fvEXTFunPtr
glProgramUniformMatrix4x2fvEXTFunPtr :: FunPtr (GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ())
glProgramUniformMatrix4x2fvEXTFunPtr = unsafePerformIO (getProcAddress "glProgramUniformMatrix4x2fvEXT")
{-# NOINLINE glProgramUniformMatrix4x2fvEXTFunPtr #-}
-- | Usage: @'glProgramUniformMatrix4x3fvEXT' program location count transpose value@
--
-- The parameter @transpose@ is a @Boolean@, one of: 'Graphics.GL.Internal.Shared.GL_FALSE', 'Graphics.GL.Internal.Shared.GL_TRUE'.
--
-- The length of @value@ should be @count*12@.
--
-- This command is an alias for 'Graphics.GL.Internal.Shared.glProgramUniformMatrix4x3fv'.
glProgramUniformMatrix4x3fvEXT :: MonadIO m => GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> m ()
glProgramUniformMatrix4x3fvEXT = ffiuintintsizeibooleanPtrfloatIOV glProgramUniformMatrix4x3fvEXTFunPtr
glProgramUniformMatrix4x3fvEXTFunPtr :: FunPtr (GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ())
glProgramUniformMatrix4x3fvEXTFunPtr = unsafePerformIO (getProcAddress "glProgramUniformMatrix4x3fvEXT")
{-# NOINLINE glProgramUniformMatrix4x3fvEXTFunPtr #-}
-- | Usage: @'glTextureStorage1DEXT' texture target levels internalformat width@
glTextureStorage1DEXT :: MonadIO m => GLuint -> GLenum -> GLsizei -> GLenum -> GLsizei -> m ()
glTextureStorage1DEXT = ffiuintenumsizeienumsizeiIOV glTextureStorage1DEXTFunPtr
glTextureStorage1DEXTFunPtr :: FunPtr (GLuint -> GLenum -> GLsizei -> GLenum -> GLsizei -> IO ())
glTextureStorage1DEXTFunPtr = unsafePerformIO (getProcAddress "glTextureStorage1DEXT")
{-# NOINLINE glTextureStorage1DEXTFunPtr #-}
-- | Usage: @'glTextureStorage2DEXT' texture target levels internalformat width height@
glTextureStorage2DEXT :: MonadIO m => GLuint -> GLenum -> GLsizei -> GLenum -> GLsizei -> GLsizei -> m ()
glTextureStorage2DEXT = ffiuintenumsizeienumsizeisizeiIOV glTextureStorage2DEXTFunPtr
glTextureStorage2DEXTFunPtr :: FunPtr (GLuint -> GLenum -> GLsizei -> GLenum -> GLsizei -> GLsizei -> IO ())
glTextureStorage2DEXTFunPtr = unsafePerformIO (getProcAddress "glTextureStorage2DEXT")
{-# NOINLINE glTextureStorage2DEXTFunPtr #-}
-- | Usage: @'glTextureStorage3DEXT' texture target levels internalformat width height depth@
glTextureStorage3DEXT :: MonadIO m => GLuint -> GLenum -> GLsizei -> GLenum -> GLsizei -> GLsizei -> GLsizei -> m ()
glTextureStorage3DEXT = ffiuintenumsizeienumsizeisizeisizeiIOV glTextureStorage3DEXTFunPtr
glTextureStorage3DEXTFunPtr :: FunPtr (GLuint -> GLenum -> GLsizei -> GLenum -> GLsizei -> GLsizei -> GLsizei -> IO ())
glTextureStorage3DEXTFunPtr = unsafePerformIO (getProcAddress "glTextureStorage3DEXT")
{-# NOINLINE glTextureStorage3DEXTFunPtr #-}
-- | Usage: @'glBeginQueryEXT' target id@
glBeginQueryEXT :: MonadIO m => GLenum -> GLuint -> m ()
glBeginQueryEXT = ffienumuintIOV glBeginQueryEXTFunPtr
glBeginQueryEXTFunPtr :: FunPtr (GLenum -> GLuint -> IO ())
glBeginQueryEXTFunPtr = unsafePerformIO (getProcAddress "glBeginQueryEXT")
{-# NOINLINE glBeginQueryEXTFunPtr #-}
-- | Usage: @'glDeleteQueriesEXT' n ids@
--
-- The length of @ids@ should be @n@.
glDeleteQueriesEXT :: MonadIO m => GLsizei -> Ptr GLuint -> m ()
glDeleteQueriesEXT = ffisizeiPtruintIOV glDeleteQueriesEXTFunPtr
glDeleteQueriesEXTFunPtr :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
glDeleteQueriesEXTFunPtr = unsafePerformIO (getProcAddress "glDeleteQueriesEXT")
{-# NOINLINE glDeleteQueriesEXTFunPtr #-}
-- | Usage: @'glEndQueryEXT' target@
glEndQueryEXT :: MonadIO m => GLenum -> m ()
glEndQueryEXT = ffienumIOV glEndQueryEXTFunPtr
glEndQueryEXTFunPtr :: FunPtr (GLenum -> IO ())
glEndQueryEXTFunPtr = unsafePerformIO (getProcAddress "glEndQueryEXT")
{-# NOINLINE glEndQueryEXTFunPtr #-}
-- | Usage: @'glGenQueriesEXT' n ids@
--
-- The length of @ids@ should be @n@.
glGenQueriesEXT :: MonadIO m => GLsizei -> Ptr GLuint -> m ()
glGenQueriesEXT = ffisizeiPtruintIOV glGenQueriesEXTFunPtr
glGenQueriesEXTFunPtr :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
glGenQueriesEXTFunPtr = unsafePerformIO (getProcAddress "glGenQueriesEXT")
{-# NOINLINE glGenQueriesEXTFunPtr #-}
-- | Usage: @'glGetQueryObjecti64vEXT' id pname params@
--
-- The length of @params@ should be @COMPSIZE(pname)@.
--
-- This command is an alias for 'Graphics.GL.Internal.Shared.glGetQueryObjecti64v'.
glGetQueryObjecti64vEXT :: MonadIO m => GLuint -> GLenum -> Ptr GLint64 -> m ()
glGetQueryObjecti64vEXT = ffiuintenumPtrint64IOV glGetQueryObjecti64vEXTFunPtr
glGetQueryObjecti64vEXTFunPtr :: FunPtr (GLuint -> GLenum -> Ptr GLint64 -> IO ())
glGetQueryObjecti64vEXTFunPtr = unsafePerformIO (getProcAddress "glGetQueryObjecti64vEXT")
{-# NOINLINE glGetQueryObjecti64vEXTFunPtr #-}
-- | Usage: @'glGetQueryObjectui64vEXT' id pname params@
--
-- The length of @params@ should be @COMPSIZE(pname)@.
--
-- This command is an alias for 'Graphics.GL.Internal.Shared.glGetQueryObjectui64v'.
glGetQueryObjectui64vEXT :: MonadIO m => GLuint -> GLenum -> Ptr GLuint64 -> m ()
glGetQueryObjectui64vEXT = ffiuintenumPtruint64IOV glGetQueryObjectui64vEXTFunPtr
glGetQueryObjectui64vEXTFunPtr :: FunPtr (GLuint -> GLenum -> Ptr GLuint64 -> IO ())
glGetQueryObjectui64vEXTFunPtr = unsafePerformIO (getProcAddress "glGetQueryObjectui64vEXT")
{-# NOINLINE glGetQueryObjectui64vEXTFunPtr #-}
-- | Usage: @'glGetQueryObjectuivEXT' id pname params@
glGetQueryObjectuivEXT :: MonadIO m => GLuint -> GLenum -> Ptr GLuint -> m ()
glGetQueryObjectuivEXT = ffiuintenumPtruintIOV glGetQueryObjectuivEXTFunPtr
glGetQueryObjectuivEXTFunPtr :: FunPtr (GLuint -> GLenum -> Ptr GLuint -> IO ())
glGetQueryObjectuivEXTFunPtr = unsafePerformIO (getProcAddress "glGetQueryObjectuivEXT")
{-# NOINLINE glGetQueryObjectuivEXTFunPtr #-}
-- | Usage: @'glGetQueryivEXT' target pname params@
glGetQueryivEXT :: MonadIO m => GLenum -> GLenum -> Ptr GLint -> m ()
glGetQueryivEXT = ffienumenumPtrintIOV glGetQueryivEXTFunPtr
glGetQueryivEXTFunPtr :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
glGetQueryivEXTFunPtr = unsafePerformIO (getProcAddress "glGetQueryivEXT")
{-# NOINLINE glGetQueryivEXTFunPtr #-}
-- | Usage: @'glIsQueryEXT' id@
glIsQueryEXT :: MonadIO m => GLuint -> m GLboolean
glIsQueryEXT = ffiuintIOboolean glIsQueryEXTFunPtr
glIsQueryEXTFunPtr :: FunPtr (GLuint -> IO GLboolean)
glIsQueryEXTFunPtr = unsafePerformIO (getProcAddress "glIsQueryEXT")
{-# NOINLINE glIsQueryEXTFunPtr #-}
pattern GL_CURRENT_QUERY_EXT = 0x8865
pattern GL_QUERY_RESULT_AVAILABLE_EXT = 0x8867
pattern GL_QUERY_RESULT_EXT = 0x8866
pattern GL_TIME_ELAPSED_EXT = 0x88BF
pattern GL_COLOR_ATTACHMENT0_EXT = 0x8CE0
pattern GL_COLOR_ATTACHMENT10_EXT = 0x8CEA
pattern GL_COLOR_ATTACHMENT11_EXT = 0x8CEB
pattern GL_COLOR_ATTACHMENT12_EXT = 0x8CEC
pattern GL_COLOR_ATTACHMENT13_EXT = 0x8CED
pattern GL_COLOR_ATTACHMENT14_EXT = 0x8CEE
pattern GL_COLOR_ATTACHMENT15_EXT = 0x8CEF
pattern GL_COLOR_ATTACHMENT1_EXT = 0x8CE1
pattern GL_COLOR_ATTACHMENT2_EXT = 0x8CE2
pattern GL_COLOR_ATTACHMENT3_EXT = 0x8CE3
pattern GL_COLOR_ATTACHMENT4_EXT = 0x8CE4
pattern GL_COLOR_ATTACHMENT5_EXT = 0x8CE5
pattern GL_COLOR_ATTACHMENT6_EXT = 0x8CE6
pattern GL_COLOR_ATTACHMENT7_EXT = 0x8CE7
pattern GL_COLOR_ATTACHMENT8_EXT = 0x8CE8
pattern GL_COLOR_ATTACHMENT9_EXT = 0x8CE9
pattern GL_MAX_COLOR_ATTACHMENTS_EXT = 0x8CDF
-- | Usage: @'glDrawArraysInstancedEXT' mode start count primcount@
--
-- The parameter @mode@ is a @PrimitiveType@, one of: 'Graphics.GL.Internal.Shared.GL_LINES', 'Graphics.GL.Internal.Shared.GL_LINES_ADJACENCY', 'Graphics.GL.Ext.ARB.GeometryShader4.GL_LINES_ADJACENCY_ARB', 'Graphics.GL.Internal.Shared.GL_LINES_ADJACENCY_EXT', 'Graphics.GL.Internal.Shared.GL_LINE_LOOP', 'Graphics.GL.Internal.Shared.GL_LINE_STRIP', 'Graphics.GL.Internal.Shared.GL_LINE_STRIP_ADJACENCY', 'Graphics.GL.Ext.ARB.GeometryShader4.GL_LINE_STRIP_ADJACENCY_ARB', 'Graphics.GL.Internal.Shared.GL_LINE_STRIP_ADJACENCY_EXT', 'Graphics.GL.Internal.Shared.GL_PATCHES', 'Graphics.GL.Ext.EXT.TessellationShader.GL_PATCHES_EXT', 'Graphics.GL.Internal.Shared.GL_POINTS', 'Graphics.GL.Internal.Shared.GL_POLYGON', 'Graphics.GL.Internal.Shared.GL_QUADS', 'Graphics.GL.Ext.EXT.TessellationShader.GL_QUADS_EXT', 'Graphics.GL.Internal.Shared.GL_QUAD_STRIP', 'Graphics.GL.Internal.Shared.GL_TRIANGLES', 'Graphics.GL.Internal.Shared.GL_TRIANGLES_ADJACENCY', 'Graphics.GL.Ext.ARB.GeometryShader4.GL_TRIANGLES_ADJACENCY_ARB', 'Graphics.GL.Internal.Shared.GL_TRIANGLES_ADJACENCY_EXT', 'Graphics.GL.Internal.Shared.GL_TRIANGLE_FAN', 'Graphics.GL.Internal.Shared.GL_TRIANGLE_STRIP', 'Graphics.GL.Internal.Shared.GL_TRIANGLE_STRIP_ADJACENCY', 'Graphics.GL.Ext.ARB.GeometryShader4.GL_TRIANGLE_STRIP_ADJACENCY_ARB', 'Graphics.GL.Internal.Shared.GL_TRIANGLE_STRIP_ADJACENCY_EXT'.
--
-- This command is an alias for 'Graphics.GL.Internal.Shared.glDrawArraysInstanced'.
glDrawArraysInstancedEXT :: MonadIO m => GLenum -> GLint -> GLsizei -> GLsizei -> m ()
glDrawArraysInstancedEXT = ffienumintsizeisizeiIOV glDrawArraysInstancedEXTFunPtr
glDrawArraysInstancedEXTFunPtr :: FunPtr (GLenum -> GLint -> GLsizei -> GLsizei -> IO ())
glDrawArraysInstancedEXTFunPtr = unsafePerformIO (getProcAddress "glDrawArraysInstancedEXT")
{-# NOINLINE glDrawArraysInstancedEXTFunPtr #-}
-- | Usage: @'glDrawElementsInstancedEXT' mode count type indices primcount@
--
-- The parameter @mode@ is a @PrimitiveType@, one of: 'Graphics.GL.Internal.Shared.GL_LINES', 'Graphics.GL.Internal.Shared.GL_LINES_ADJACENCY', 'Graphics.GL.Ext.ARB.GeometryShader4.GL_LINES_ADJACENCY_ARB', 'Graphics.GL.Internal.Shared.GL_LINES_ADJACENCY_EXT', 'Graphics.GL.Internal.Shared.GL_LINE_LOOP', 'Graphics.GL.Internal.Shared.GL_LINE_STRIP', 'Graphics.GL.Internal.Shared.GL_LINE_STRIP_ADJACENCY', 'Graphics.GL.Ext.ARB.GeometryShader4.GL_LINE_STRIP_ADJACENCY_ARB', 'Graphics.GL.Internal.Shared.GL_LINE_STRIP_ADJACENCY_EXT', 'Graphics.GL.Internal.Shared.GL_PATCHES', 'Graphics.GL.Ext.EXT.TessellationShader.GL_PATCHES_EXT', 'Graphics.GL.Internal.Shared.GL_POINTS', 'Graphics.GL.Internal.Shared.GL_POLYGON', 'Graphics.GL.Internal.Shared.GL_QUADS', 'Graphics.GL.Ext.EXT.TessellationShader.GL_QUADS_EXT', 'Graphics.GL.Internal.Shared.GL_QUAD_STRIP', 'Graphics.GL.Internal.Shared.GL_TRIANGLES', 'Graphics.GL.Internal.Shared.GL_TRIANGLES_ADJACENCY', 'Graphics.GL.Ext.ARB.GeometryShader4.GL_TRIANGLES_ADJACENCY_ARB', 'Graphics.GL.Internal.Shared.GL_TRIANGLES_ADJACENCY_EXT', 'Graphics.GL.Internal.Shared.GL_TRIANGLE_FAN', 'Graphics.GL.Internal.Shared.GL_TRIANGLE_STRIP', 'Graphics.GL.Internal.Shared.GL_TRIANGLE_STRIP_ADJACENCY', 'Graphics.GL.Ext.ARB.GeometryShader4.GL_TRIANGLE_STRIP_ADJACENCY_ARB', 'Graphics.GL.Internal.Shared.GL_TRIANGLE_STRIP_ADJACENCY_EXT'.
--
-- The parameter @type@ is a @DrawElementsType@.
--
-- The length of @indices@ should be @COMPSIZE(count,type)@.
--
-- This command is an alias for 'Graphics.GL.Internal.Shared.glDrawElementsInstanced'.
glDrawElementsInstancedEXT :: MonadIO m => GLenum -> GLsizei -> GLenum -> Ptr () -> GLsizei -> m ()
glDrawElementsInstancedEXT = ffienumsizeienumPtrVsizeiIOV glDrawElementsInstancedEXTFunPtr
glDrawElementsInstancedEXTFunPtr :: FunPtr (GLenum -> GLsizei -> GLenum -> Ptr () -> GLsizei -> IO ())
glDrawElementsInstancedEXTFunPtr = unsafePerformIO (getProcAddress "glDrawElementsInstancedEXT")
{-# NOINLINE glDrawElementsInstancedEXTFunPtr #-}
pattern GL_FRAGMENT_DEPTH_EXT = 0x8452
-- | Usage: @'glRenderbufferStorageMultisampleEXT' target samples internalformat width height@
--
-- This command is an alias for 'Graphics.GL.Internal.Shared.glRenderbufferStorageMultisample'.
glRenderbufferStorageMultisampleEXT :: MonadIO m => GLenum -> GLsizei -> GLenum -> GLsizei -> GLsizei -> m ()
glRenderbufferStorageMultisampleEXT = ffienumsizeienumsizeisizeiIOV glRenderbufferStorageMultisampleEXTFunPtr
glRenderbufferStorageMultisampleEXTFunPtr :: FunPtr (GLenum -> GLsizei -> GLenum -> GLsizei -> GLsizei -> IO ())
glRenderbufferStorageMultisampleEXTFunPtr = unsafePerformIO (getProcAddress "glRenderbufferStorageMultisampleEXT")
{-# NOINLINE glRenderbufferStorageMultisampleEXTFunPtr #-}
pattern GL_FRAMEBUFFER_INCOMPLETE_MULTISAMPLE_EXT = 0x8D56
pattern GL_MAX_SAMPLES_EXT = 0x8D57
pattern GL_RENDERBUFFER_SAMPLES_EXT = 0x8CAB
pattern GL_FRAMEBUFFER_SRGB_EXT = 0x8DB9
-- | Usage: @'glFramebufferTextureEXT' target attachment texture level@
--
-- The parameter @target@ is a @FramebufferTarget@.
--
-- The parameter @attachment@ is a @FramebufferAttachment@.
--
-- The parameter @texture@ is a @Texture@.
--
-- The parameter @level@ is a @CheckedInt32@.
--
-- This command is an alias for 'Graphics.GL.Internal.Shared.glFramebufferTexture'.
glFramebufferTextureEXT :: MonadIO m => GLenum -> GLenum -> GLuint -> GLint -> m ()
glFramebufferTextureEXT = ffienumenumuintintIOV glFramebufferTextureEXTFunPtr
glFramebufferTextureEXTFunPtr :: FunPtr (GLenum -> GLenum -> GLuint -> GLint -> IO ())
glFramebufferTextureEXTFunPtr = unsafePerformIO (getProcAddress "glFramebufferTextureEXT")
{-# NOINLINE glFramebufferTextureEXTFunPtr #-}
pattern GL_FIRST_VERTEX_CONVENTION_EXT = 0x8E4D
pattern GL_FRAMEBUFFER_ATTACHMENT_LAYERED_EXT = 0x8DA7
pattern GL_FRAMEBUFFER_INCOMPLETE_LAYER_TARGETS_EXT = 0x8DA8
pattern GL_GEOMETRY_SHADER_EXT = 0x8DD9
pattern GL_LAST_VERTEX_CONVENTION_EXT = 0x8E4E
pattern GL_LINES_ADJACENCY_EXT = 0x000A
pattern GL_LINE_STRIP_ADJACENCY_EXT = 0x000B
pattern GL_MAX_GEOMETRY_OUTPUT_VERTICES_EXT = 0x8DE0
pattern GL_MAX_GEOMETRY_TEXTURE_IMAGE_UNITS_EXT = 0x8C29
pattern GL_MAX_GEOMETRY_TOTAL_OUTPUT_COMPONENTS_EXT = 0x8DE1
pattern GL_MAX_GEOMETRY_UNIFORM_COMPONENTS_EXT = 0x8DDF
pattern GL_PRIMITIVES_GENERATED_EXT = 0x8C87
pattern GL_TRIANGLES_ADJACENCY_EXT = 0x000C
pattern GL_TRIANGLE_STRIP_ADJACENCY_EXT = 0x000D
-- | Usage: @'glProgramParameteriEXT' program pname value@
--
-- The parameter @pname@ is a @ProgramParameterPName@.
--
-- This command is an alias for 'Graphics.GL.Internal.Shared.glProgramParameteri'.
glProgramParameteriEXT :: MonadIO m => GLuint -> GLenum -> GLint -> m ()
glProgramParameteriEXT = ffiuintenumintIOV glProgramParameteriEXTFunPtr
glProgramParameteriEXTFunPtr :: FunPtr (GLuint -> GLenum -> GLint -> IO ())
glProgramParameteriEXTFunPtr = unsafePerformIO (getProcAddress "glProgramParameteriEXT")
{-# NOINLINE glProgramParameteriEXTFunPtr #-}
pattern GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LAYER_EXT = 0x8CD4
pattern GL_FRAMEBUFFER_INCOMPLETE_LAYER_COUNT_EXT = 0x8DA9
pattern GL_GEOMETRY_INPUT_TYPE_EXT = 0x8DDB
pattern GL_GEOMETRY_OUTPUT_TYPE_EXT = 0x8DDC
pattern GL_GEOMETRY_VERTICES_OUT_EXT = 0x8DDA
pattern GL_PROGRAM_POINT_SIZE_EXT = 0x8642
pattern GL_INT_SAMPLER_BUFFER_EXT = 0x8DD0
pattern GL_SAMPLER_BUFFER_EXT = 0x8DC2
pattern GL_UNSIGNED_INT_SAMPLER_BUFFER_EXT = 0x8DD8
pattern GL_MULTISAMPLE_EXT = 0x809D
pattern GL_SAMPLE_ALPHA_TO_ONE_EXT = 0x809F
-- | Usage: @'glRasterSamplesEXT' samples fixedsamplelocations@
glRasterSamplesEXT :: MonadIO m => GLuint -> GLboolean -> m ()
glRasterSamplesEXT = ffiuintbooleanIOV glRasterSamplesEXTFunPtr
glRasterSamplesEXTFunPtr :: FunPtr (GLuint -> GLboolean -> IO ())
glRasterSamplesEXTFunPtr = unsafePerformIO (getProcAddress "glRasterSamplesEXT")
{-# NOINLINE glRasterSamplesEXTFunPtr #-}
pattern GL_EFFECTIVE_RASTER_SAMPLES_EXT = 0x932C
pattern GL_MAX_RASTER_SAMPLES_EXT = 0x9329
pattern GL_MULTISAMPLE_RASTERIZATION_ALLOWED_EXT = 0x932B
pattern GL_RASTER_FIXED_SAMPLE_LOCATIONS_EXT = 0x932A
pattern GL_RASTER_MULTISAMPLE_EXT = 0x9327
pattern GL_RASTER_SAMPLES_EXT = 0x9328
pattern GL_R16_SNORM_EXT = 0x8F98
pattern GL_RG16_SNORM_EXT = 0x8F99
pattern GL_RGBA16_SNORM_EXT = 0x8F9B
pattern GL_SRGB8_ALPHA8_EXT = 0x8C43
pattern GL_SRGB_ALPHA_EXT = 0x8C42
pattern GL_SRGB_EXT = 0x8C40
pattern GL_IMAGE_BUFFER_EXT = 0x9051
pattern GL_IMAGE_CUBE_MAP_ARRAY_EXT = 0x9054
pattern GL_INT_IMAGE_BUFFER_EXT = 0x905C
pattern GL_INT_IMAGE_CUBE_MAP_ARRAY_EXT = 0x905F
pattern GL_UNSIGNED_INT_IMAGE_BUFFER_EXT = 0x9067
pattern GL_UNSIGNED_INT_IMAGE_CUBE_MAP_ARRAY_EXT = 0x906A
pattern GL_TEXTURE_CUBE_MAP_ARRAY_OES = 0x9009
pattern GL_ALPHA8_EXT = 0x803C
pattern GL_LUMINANCE8_ALPHA8_EXT = 0x8045
pattern GL_LUMINANCE8_EXT = 0x8040
pattern GL_RGB10_A2_EXT = 0x8059
pattern GL_RGB10_EXT = 0x8052
pattern GL_RGB16_EXT = 0x8054
pattern GL_RGBA16_EXT = 0x805B
-- | Usage: @'glFramebufferTextureLayerEXT' target attachment texture level layer@
--
-- The parameter @target@ is a @FramebufferTarget@.
--
-- The parameter @attachment@ is a @FramebufferAttachment@.
--
-- The parameter @texture@ is a @Texture@.
--
-- The parameter @level@ is a @CheckedInt32@.
--
-- The parameter @layer@ is a @CheckedInt32@.
--
-- This command is an alias for 'Graphics.GL.Internal.Shared.glFramebufferTextureLayer'.
glFramebufferTextureLayerEXT :: MonadIO m => GLenum -> GLenum -> GLuint -> GLint -> GLint -> m ()
glFramebufferTextureLayerEXT = ffienumenumuintintintIOV glFramebufferTextureLayerEXTFunPtr
glFramebufferTextureLayerEXTFunPtr :: FunPtr (GLenum -> GLenum -> GLuint -> GLint -> GLint -> IO ())
glFramebufferTextureLayerEXTFunPtr = unsafePerformIO (getProcAddress "glFramebufferTextureLayerEXT")
{-# NOINLINE glFramebufferTextureLayerEXTFunPtr #-}
-- | Usage: @'glGetTexParameterIivEXT' target pname params@
--
-- The parameter @target@ is a @TextureTarget@, one of: 'Graphics.GL.Ext.SGIS.DetailTexture.GL_DETAIL_TEXTURE_2D_SGIS', 'Graphics.GL.Internal.Shared.GL_PROXY_TEXTURE_1D', 'Graphics.GL.Ext.EXT.Texture.GL_PROXY_TEXTURE_1D_EXT', 'Graphics.GL.Internal.Shared.GL_PROXY_TEXTURE_2D', 'Graphics.GL.Ext.EXT.Texture.GL_PROXY_TEXTURE_2D_EXT', 'Graphics.GL.Internal.Shared.GL_PROXY_TEXTURE_3D', 'Graphics.GL.Ext.EXT.Texture3D.GL_PROXY_TEXTURE_3D_EXT', 'Graphics.GL.Ext.SGIS.Texture4D.GL_PROXY_TEXTURE_4D_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_1D', 'Graphics.GL.Internal.Shared.GL_TEXTURE_2D', 'Graphics.GL.Internal.Shared.GL_TEXTURE_3D', 'Graphics.GL.Ext.EXT.Texture3D.GL_TEXTURE_3D_EXT', 'Graphics.GL.Ext.OES.Texture3D.GL_TEXTURE_3D_OES', 'Graphics.GL.Ext.SGIS.Texture4D.GL_TEXTURE_4D_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_BASE_LEVEL', 'Graphics.GL.Ext.SGIS.TextureLod.GL_TEXTURE_BASE_LEVEL_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_MAX_LEVEL', 'Graphics.GL.Ext.SGIS.TextureLod.GL_TEXTURE_MAX_LEVEL_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_MAX_LOD', 'Graphics.GL.Ext.SGIS.TextureLod.GL_TEXTURE_MAX_LOD_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_MIN_LOD', 'Graphics.GL.Ext.SGIS.TextureLod.GL_TEXTURE_MIN_LOD_SGIS'.
--
-- The parameter @pname@ is a @GetTextureParameter@, one of: 'Graphics.GL.Ext.SGIS.DetailTexture.GL_DETAIL_TEXTURE_FUNC_POINTS_SGIS', 'Graphics.GL.Ext.SGIS.DetailTexture.GL_DETAIL_TEXTURE_LEVEL_SGIS', 'Graphics.GL.Ext.SGIS.DetailTexture.GL_DETAIL_TEXTURE_MODE_SGIS', 'Graphics.GL.Ext.SGIS.TextureSelect.GL_DUAL_TEXTURE_SELECT_SGIS', 'Graphics.GL.Ext.SGIS.GenerateMipmap.GL_GENERATE_MIPMAP_SGIS', 'Graphics.GL.Ext.SGIX.TextureScaleBias.GL_POST_TEXTURE_FILTER_BIAS_SGIX', 'Graphics.GL.Ext.SGIX.TextureScaleBias.GL_POST_TEXTURE_FILTER_SCALE_SGIX', 'Graphics.GL.Ext.SGIS.TextureSelect.GL_QUAD_TEXTURE_SELECT_SGIS', 'Graphics.GL.Ext.SGIX.ShadowAmbient.GL_SHADOW_AMBIENT_SGIX', 'Graphics.GL.Ext.SGIS.SharpenTexture.GL_SHARPEN_TEXTURE_FUNC_POINTS_SGIS', 'Graphics.GL.Ext.SGIS.Texture4D.GL_TEXTURE_4DSIZE_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_ALPHA_SIZE', 'Graphics.GL.Ext.SGIS.TextureLod.GL_TEXTURE_BASE_LEVEL_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_BLUE_SIZE', 'Graphics.GL.Internal.Shared.GL_TEXTURE_BORDER', 'Graphics.GL.Internal.Shared.GL_TEXTURE_BORDER_COLOR', 'Graphics.GL.Ext.NV.TextureBorderClamp.GL_TEXTURE_BORDER_COLOR_NV', 'Graphics.GL.Ext.SGIX.Clipmap.GL_TEXTURE_CLIPMAP_CENTER_SGIX', 'Graphics.GL.Ext.SGIX.Clipmap.GL_TEXTURE_CLIPMAP_DEPTH_SGIX', 'Graphics.GL.Ext.SGIX.Clipmap.GL_TEXTURE_CLIPMAP_FRAME_SGIX', 'Graphics.GL.Ext.SGIX.Clipmap.GL_TEXTURE_CLIPMAP_LOD_OFFSET_SGIX', 'Graphics.GL.Ext.SGIX.Clipmap.GL_TEXTURE_CLIPMAP_OFFSET_SGIX', 'Graphics.GL.Ext.SGIX.Clipmap.GL_TEXTURE_CLIPMAP_VIRTUAL_DEPTH_SGIX', 'Graphics.GL.Ext.SGIX.Shadow.GL_TEXTURE_COMPARE_OPERATOR_SGIX', 'Graphics.GL.Ext.SGIX.Shadow.GL_TEXTURE_COMPARE_SGIX', 'Graphics.GL.Internal.Shared.GL_TEXTURE_COMPONENTS', 'Graphics.GL.Ext.EXT.Texture3D.GL_TEXTURE_DEPTH_EXT', 'Graphics.GL.Ext.SGIS.TextureFilter4.GL_TEXTURE_FILTER4_SIZE_SGIS', 'Graphics.GL.Ext.SGIX.Shadow.GL_TEXTURE_GEQUAL_R_SGIX', 'Graphics.GL.Internal.Shared.GL_TEXTURE_GREEN_SIZE', 'Graphics.GL.Internal.Shared.GL_TEXTURE_HEIGHT', 'Graphics.GL.Internal.Shared.GL_TEXTURE_INTENSITY_SIZE', 'Graphics.GL.Internal.Shared.GL_TEXTURE_INTERNAL_FORMAT', 'Graphics.GL.Ext.SGIX.Shadow.GL_TEXTURE_LEQUAL_R_SGIX', 'Graphics.GL.Ext.SGIX.TextureLodBias.GL_TEXTURE_LOD_BIAS_R_SGIX', 'Graphics.GL.Ext.SGIX.TextureLodBias.GL_TEXTURE_LOD_BIAS_S_SGIX', 'Graphics.GL.Ext.SGIX.TextureLodBias.GL_TEXTURE_LOD_BIAS_T_SGIX', 'Graphics.GL.Internal.Shared.GL_TEXTURE_LUMINANCE_SIZE', 'Graphics.GL.Internal.Shared.GL_TEXTURE_MAG_FILTER', 'Graphics.GL.Ext.SGIX.TextureCoordinateClamp.GL_TEXTURE_MAX_CLAMP_R_SGIX', 'Graphics.GL.Ext.SGIX.TextureCoordinateClamp.GL_TEXTURE_MAX_CLAMP_S_SGIX', 'Graphics.GL.Ext.SGIX.TextureCoordinateClamp.GL_TEXTURE_MAX_CLAMP_T_SGIX', 'Graphics.GL.Ext.SGIS.TextureLod.GL_TEXTURE_MAX_LEVEL_SGIS', 'Graphics.GL.Ext.SGIS.TextureLod.GL_TEXTURE_MAX_LOD_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_MIN_FILTER', 'Graphics.GL.Ext.SGIS.TextureLod.GL_TEXTURE_MIN_LOD_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_PRIORITY', 'Graphics.GL.Internal.Shared.GL_TEXTURE_RED_SIZE', 'Graphics.GL.Internal.Shared.GL_TEXTURE_RESIDENT', 'Graphics.GL.Internal.Shared.GL_TEXTURE_WIDTH', 'Graphics.GL.Ext.SGIS.Texture4D.GL_TEXTURE_WRAP_Q_SGIS', 'Graphics.GL.Ext.EXT.Texture3D.GL_TEXTURE_WRAP_R_EXT', 'Graphics.GL.Internal.Shared.GL_TEXTURE_WRAP_S', 'Graphics.GL.Internal.Shared.GL_TEXTURE_WRAP_T'.
--
-- The length of @params@ should be @COMPSIZE(pname)@.
--
-- This command is an alias for 'Graphics.GL.Internal.Shared.glGetTexParameterIiv'.
glGetTexParameterIivEXT :: MonadIO m => GLenum -> GLenum -> Ptr GLint -> m ()
glGetTexParameterIivEXT = ffienumenumPtrintIOV glGetTexParameterIivEXTFunPtr
glGetTexParameterIivEXTFunPtr :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
glGetTexParameterIivEXTFunPtr = unsafePerformIO (getProcAddress "glGetTexParameterIivEXT")
{-# NOINLINE glGetTexParameterIivEXTFunPtr #-}
-- | Usage: @'glGetTexParameterIuivEXT' target pname params@
--
-- The parameter @target@ is a @TextureTarget@, one of: 'Graphics.GL.Ext.SGIS.DetailTexture.GL_DETAIL_TEXTURE_2D_SGIS', 'Graphics.GL.Internal.Shared.GL_PROXY_TEXTURE_1D', 'Graphics.GL.Ext.EXT.Texture.GL_PROXY_TEXTURE_1D_EXT', 'Graphics.GL.Internal.Shared.GL_PROXY_TEXTURE_2D', 'Graphics.GL.Ext.EXT.Texture.GL_PROXY_TEXTURE_2D_EXT', 'Graphics.GL.Internal.Shared.GL_PROXY_TEXTURE_3D', 'Graphics.GL.Ext.EXT.Texture3D.GL_PROXY_TEXTURE_3D_EXT', 'Graphics.GL.Ext.SGIS.Texture4D.GL_PROXY_TEXTURE_4D_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_1D', 'Graphics.GL.Internal.Shared.GL_TEXTURE_2D', 'Graphics.GL.Internal.Shared.GL_TEXTURE_3D', 'Graphics.GL.Ext.EXT.Texture3D.GL_TEXTURE_3D_EXT', 'Graphics.GL.Ext.OES.Texture3D.GL_TEXTURE_3D_OES', 'Graphics.GL.Ext.SGIS.Texture4D.GL_TEXTURE_4D_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_BASE_LEVEL', 'Graphics.GL.Ext.SGIS.TextureLod.GL_TEXTURE_BASE_LEVEL_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_MAX_LEVEL', 'Graphics.GL.Ext.SGIS.TextureLod.GL_TEXTURE_MAX_LEVEL_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_MAX_LOD', 'Graphics.GL.Ext.SGIS.TextureLod.GL_TEXTURE_MAX_LOD_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_MIN_LOD', 'Graphics.GL.Ext.SGIS.TextureLod.GL_TEXTURE_MIN_LOD_SGIS'.
--
-- The parameter @pname@ is a @GetTextureParameter@, one of: 'Graphics.GL.Ext.SGIS.DetailTexture.GL_DETAIL_TEXTURE_FUNC_POINTS_SGIS', 'Graphics.GL.Ext.SGIS.DetailTexture.GL_DETAIL_TEXTURE_LEVEL_SGIS', 'Graphics.GL.Ext.SGIS.DetailTexture.GL_DETAIL_TEXTURE_MODE_SGIS', 'Graphics.GL.Ext.SGIS.TextureSelect.GL_DUAL_TEXTURE_SELECT_SGIS', 'Graphics.GL.Ext.SGIS.GenerateMipmap.GL_GENERATE_MIPMAP_SGIS', 'Graphics.GL.Ext.SGIX.TextureScaleBias.GL_POST_TEXTURE_FILTER_BIAS_SGIX', 'Graphics.GL.Ext.SGIX.TextureScaleBias.GL_POST_TEXTURE_FILTER_SCALE_SGIX', 'Graphics.GL.Ext.SGIS.TextureSelect.GL_QUAD_TEXTURE_SELECT_SGIS', 'Graphics.GL.Ext.SGIX.ShadowAmbient.GL_SHADOW_AMBIENT_SGIX', 'Graphics.GL.Ext.SGIS.SharpenTexture.GL_SHARPEN_TEXTURE_FUNC_POINTS_SGIS', 'Graphics.GL.Ext.SGIS.Texture4D.GL_TEXTURE_4DSIZE_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_ALPHA_SIZE', 'Graphics.GL.Ext.SGIS.TextureLod.GL_TEXTURE_BASE_LEVEL_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_BLUE_SIZE', 'Graphics.GL.Internal.Shared.GL_TEXTURE_BORDER', 'Graphics.GL.Internal.Shared.GL_TEXTURE_BORDER_COLOR', 'Graphics.GL.Ext.NV.TextureBorderClamp.GL_TEXTURE_BORDER_COLOR_NV', 'Graphics.GL.Ext.SGIX.Clipmap.GL_TEXTURE_CLIPMAP_CENTER_SGIX', 'Graphics.GL.Ext.SGIX.Clipmap.GL_TEXTURE_CLIPMAP_DEPTH_SGIX', 'Graphics.GL.Ext.SGIX.Clipmap.GL_TEXTURE_CLIPMAP_FRAME_SGIX', 'Graphics.GL.Ext.SGIX.Clipmap.GL_TEXTURE_CLIPMAP_LOD_OFFSET_SGIX', 'Graphics.GL.Ext.SGIX.Clipmap.GL_TEXTURE_CLIPMAP_OFFSET_SGIX', 'Graphics.GL.Ext.SGIX.Clipmap.GL_TEXTURE_CLIPMAP_VIRTUAL_DEPTH_SGIX', 'Graphics.GL.Ext.SGIX.Shadow.GL_TEXTURE_COMPARE_OPERATOR_SGIX', 'Graphics.GL.Ext.SGIX.Shadow.GL_TEXTURE_COMPARE_SGIX', 'Graphics.GL.Internal.Shared.GL_TEXTURE_COMPONENTS', 'Graphics.GL.Ext.EXT.Texture3D.GL_TEXTURE_DEPTH_EXT', 'Graphics.GL.Ext.SGIS.TextureFilter4.GL_TEXTURE_FILTER4_SIZE_SGIS', 'Graphics.GL.Ext.SGIX.Shadow.GL_TEXTURE_GEQUAL_R_SGIX', 'Graphics.GL.Internal.Shared.GL_TEXTURE_GREEN_SIZE', 'Graphics.GL.Internal.Shared.GL_TEXTURE_HEIGHT', 'Graphics.GL.Internal.Shared.GL_TEXTURE_INTENSITY_SIZE', 'Graphics.GL.Internal.Shared.GL_TEXTURE_INTERNAL_FORMAT', 'Graphics.GL.Ext.SGIX.Shadow.GL_TEXTURE_LEQUAL_R_SGIX', 'Graphics.GL.Ext.SGIX.TextureLodBias.GL_TEXTURE_LOD_BIAS_R_SGIX', 'Graphics.GL.Ext.SGIX.TextureLodBias.GL_TEXTURE_LOD_BIAS_S_SGIX', 'Graphics.GL.Ext.SGIX.TextureLodBias.GL_TEXTURE_LOD_BIAS_T_SGIX', 'Graphics.GL.Internal.Shared.GL_TEXTURE_LUMINANCE_SIZE', 'Graphics.GL.Internal.Shared.GL_TEXTURE_MAG_FILTER', 'Graphics.GL.Ext.SGIX.TextureCoordinateClamp.GL_TEXTURE_MAX_CLAMP_R_SGIX', 'Graphics.GL.Ext.SGIX.TextureCoordinateClamp.GL_TEXTURE_MAX_CLAMP_S_SGIX', 'Graphics.GL.Ext.SGIX.TextureCoordinateClamp.GL_TEXTURE_MAX_CLAMP_T_SGIX', 'Graphics.GL.Ext.SGIS.TextureLod.GL_TEXTURE_MAX_LEVEL_SGIS', 'Graphics.GL.Ext.SGIS.TextureLod.GL_TEXTURE_MAX_LOD_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_MIN_FILTER', 'Graphics.GL.Ext.SGIS.TextureLod.GL_TEXTURE_MIN_LOD_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_PRIORITY', 'Graphics.GL.Internal.Shared.GL_TEXTURE_RED_SIZE', 'Graphics.GL.Internal.Shared.GL_TEXTURE_RESIDENT', 'Graphics.GL.Internal.Shared.GL_TEXTURE_WIDTH', 'Graphics.GL.Ext.SGIS.Texture4D.GL_TEXTURE_WRAP_Q_SGIS', 'Graphics.GL.Ext.EXT.Texture3D.GL_TEXTURE_WRAP_R_EXT', 'Graphics.GL.Internal.Shared.GL_TEXTURE_WRAP_S', 'Graphics.GL.Internal.Shared.GL_TEXTURE_WRAP_T'.
--
-- The length of @params@ should be @COMPSIZE(pname)@.
--
-- This command is an alias for 'Graphics.GL.Internal.Shared.glGetTexParameterIuiv'.
glGetTexParameterIuivEXT :: MonadIO m => GLenum -> GLenum -> Ptr GLuint -> m ()
glGetTexParameterIuivEXT = ffienumenumPtruintIOV glGetTexParameterIuivEXTFunPtr
glGetTexParameterIuivEXTFunPtr :: FunPtr (GLenum -> GLenum -> Ptr GLuint -> IO ())
glGetTexParameterIuivEXTFunPtr = unsafePerformIO (getProcAddress "glGetTexParameterIuivEXT")
{-# NOINLINE glGetTexParameterIuivEXTFunPtr #-}
-- | Usage: @'glTexParameterIivEXT' target pname params@
--
-- The parameter @target@ is a @TextureTarget@, one of: 'Graphics.GL.Ext.SGIS.DetailTexture.GL_DETAIL_TEXTURE_2D_SGIS', 'Graphics.GL.Internal.Shared.GL_PROXY_TEXTURE_1D', 'Graphics.GL.Ext.EXT.Texture.GL_PROXY_TEXTURE_1D_EXT', 'Graphics.GL.Internal.Shared.GL_PROXY_TEXTURE_2D', 'Graphics.GL.Ext.EXT.Texture.GL_PROXY_TEXTURE_2D_EXT', 'Graphics.GL.Internal.Shared.GL_PROXY_TEXTURE_3D', 'Graphics.GL.Ext.EXT.Texture3D.GL_PROXY_TEXTURE_3D_EXT', 'Graphics.GL.Ext.SGIS.Texture4D.GL_PROXY_TEXTURE_4D_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_1D', 'Graphics.GL.Internal.Shared.GL_TEXTURE_2D', 'Graphics.GL.Internal.Shared.GL_TEXTURE_3D', 'Graphics.GL.Ext.EXT.Texture3D.GL_TEXTURE_3D_EXT', 'Graphics.GL.Ext.OES.Texture3D.GL_TEXTURE_3D_OES', 'Graphics.GL.Ext.SGIS.Texture4D.GL_TEXTURE_4D_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_BASE_LEVEL', 'Graphics.GL.Ext.SGIS.TextureLod.GL_TEXTURE_BASE_LEVEL_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_MAX_LEVEL', 'Graphics.GL.Ext.SGIS.TextureLod.GL_TEXTURE_MAX_LEVEL_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_MAX_LOD', 'Graphics.GL.Ext.SGIS.TextureLod.GL_TEXTURE_MAX_LOD_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_MIN_LOD', 'Graphics.GL.Ext.SGIS.TextureLod.GL_TEXTURE_MIN_LOD_SGIS'.
--
-- The parameter @pname@ is a @TextureParameterName@, one of: 'Graphics.GL.Ext.SGIS.DetailTexture.GL_DETAIL_TEXTURE_LEVEL_SGIS', 'Graphics.GL.Ext.SGIS.DetailTexture.GL_DETAIL_TEXTURE_MODE_SGIS', 'Graphics.GL.Ext.SGIS.TextureSelect.GL_DUAL_TEXTURE_SELECT_SGIS', 'Graphics.GL.Internal.Shared.GL_GENERATE_MIPMAP', 'Graphics.GL.Ext.SGIS.GenerateMipmap.GL_GENERATE_MIPMAP_SGIS', 'Graphics.GL.Ext.SGIX.TextureScaleBias.GL_POST_TEXTURE_FILTER_BIAS_SGIX', 'Graphics.GL.Ext.SGIX.TextureScaleBias.GL_POST_TEXTURE_FILTER_SCALE_SGIX', 'Graphics.GL.Ext.SGIS.TextureSelect.GL_QUAD_TEXTURE_SELECT_SGIS', 'Graphics.GL.Ext.SGIX.ShadowAmbient.GL_SHADOW_AMBIENT_SGIX', 'Graphics.GL.Internal.Shared.GL_TEXTURE_BORDER_COLOR', 'Graphics.GL.Ext.SGIX.Clipmap.GL_TEXTURE_CLIPMAP_CENTER_SGIX', 'Graphics.GL.Ext.SGIX.Clipmap.GL_TEXTURE_CLIPMAP_DEPTH_SGIX', 'Graphics.GL.Ext.SGIX.Clipmap.GL_TEXTURE_CLIPMAP_FRAME_SGIX', 'Graphics.GL.Ext.SGIX.Clipmap.GL_TEXTURE_CLIPMAP_LOD_OFFSET_SGIX', 'Graphics.GL.Ext.SGIX.Clipmap.GL_TEXTURE_CLIPMAP_OFFSET_SGIX', 'Graphics.GL.Ext.SGIX.Clipmap.GL_TEXTURE_CLIPMAP_VIRTUAL_DEPTH_SGIX', 'Graphics.GL.Ext.SGIX.Shadow.GL_TEXTURE_COMPARE_SGIX', 'Graphics.GL.Ext.SGIX.TextureLodBias.GL_TEXTURE_LOD_BIAS_R_SGIX', 'Graphics.GL.Ext.SGIX.TextureLodBias.GL_TEXTURE_LOD_BIAS_S_SGIX', 'Graphics.GL.Ext.SGIX.TextureLodBias.GL_TEXTURE_LOD_BIAS_T_SGIX', 'Graphics.GL.Internal.Shared.GL_TEXTURE_MAG_FILTER', 'Graphics.GL.Ext.SGIX.TextureCoordinateClamp.GL_TEXTURE_MAX_CLAMP_R_SGIX', 'Graphics.GL.Ext.SGIX.TextureCoordinateClamp.GL_TEXTURE_MAX_CLAMP_S_SGIX', 'Graphics.GL.Ext.SGIX.TextureCoordinateClamp.GL_TEXTURE_MAX_CLAMP_T_SGIX', 'Graphics.GL.Internal.Shared.GL_TEXTURE_MIN_FILTER', 'Graphics.GL.Internal.Shared.GL_TEXTURE_PRIORITY', 'Graphics.GL.Ext.EXT.TextureObject.GL_TEXTURE_PRIORITY_EXT', 'Graphics.GL.Ext.SGIS.Texture4D.GL_TEXTURE_WRAP_Q_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_WRAP_R', 'Graphics.GL.Ext.EXT.Texture3D.GL_TEXTURE_WRAP_R_EXT', 'Graphics.GL.Ext.OES.Texture3D.GL_TEXTURE_WRAP_R_OES', 'Graphics.GL.Internal.Shared.GL_TEXTURE_WRAP_S', 'Graphics.GL.Internal.Shared.GL_TEXTURE_WRAP_T'.
--
-- The length of @params@ should be @COMPSIZE(pname)@.
--
-- This command is an alias for 'Graphics.GL.Internal.Shared.glTexParameterIiv'.
glTexParameterIivEXT :: MonadIO m => GLenum -> GLenum -> Ptr GLint -> m ()
glTexParameterIivEXT = ffienumenumPtrintIOV glTexParameterIivEXTFunPtr
glTexParameterIivEXTFunPtr :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
glTexParameterIivEXTFunPtr = unsafePerformIO (getProcAddress "glTexParameterIivEXT")
{-# NOINLINE glTexParameterIivEXTFunPtr #-}
-- | Usage: @'glTexParameterIuivEXT' target pname params@
--
-- The parameter @target@ is a @TextureTarget@, one of: 'Graphics.GL.Ext.SGIS.DetailTexture.GL_DETAIL_TEXTURE_2D_SGIS', 'Graphics.GL.Internal.Shared.GL_PROXY_TEXTURE_1D', 'Graphics.GL.Ext.EXT.Texture.GL_PROXY_TEXTURE_1D_EXT', 'Graphics.GL.Internal.Shared.GL_PROXY_TEXTURE_2D', 'Graphics.GL.Ext.EXT.Texture.GL_PROXY_TEXTURE_2D_EXT', 'Graphics.GL.Internal.Shared.GL_PROXY_TEXTURE_3D', 'Graphics.GL.Ext.EXT.Texture3D.GL_PROXY_TEXTURE_3D_EXT', 'Graphics.GL.Ext.SGIS.Texture4D.GL_PROXY_TEXTURE_4D_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_1D', 'Graphics.GL.Internal.Shared.GL_TEXTURE_2D', 'Graphics.GL.Internal.Shared.GL_TEXTURE_3D', 'Graphics.GL.Ext.EXT.Texture3D.GL_TEXTURE_3D_EXT', 'Graphics.GL.Ext.OES.Texture3D.GL_TEXTURE_3D_OES', 'Graphics.GL.Ext.SGIS.Texture4D.GL_TEXTURE_4D_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_BASE_LEVEL', 'Graphics.GL.Ext.SGIS.TextureLod.GL_TEXTURE_BASE_LEVEL_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_MAX_LEVEL', 'Graphics.GL.Ext.SGIS.TextureLod.GL_TEXTURE_MAX_LEVEL_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_MAX_LOD', 'Graphics.GL.Ext.SGIS.TextureLod.GL_TEXTURE_MAX_LOD_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_MIN_LOD', 'Graphics.GL.Ext.SGIS.TextureLod.GL_TEXTURE_MIN_LOD_SGIS'.
--
-- The parameter @pname@ is a @TextureParameterName@, one of: 'Graphics.GL.Ext.SGIS.DetailTexture.GL_DETAIL_TEXTURE_LEVEL_SGIS', 'Graphics.GL.Ext.SGIS.DetailTexture.GL_DETAIL_TEXTURE_MODE_SGIS', 'Graphics.GL.Ext.SGIS.TextureSelect.GL_DUAL_TEXTURE_SELECT_SGIS', 'Graphics.GL.Internal.Shared.GL_GENERATE_MIPMAP', 'Graphics.GL.Ext.SGIS.GenerateMipmap.GL_GENERATE_MIPMAP_SGIS', 'Graphics.GL.Ext.SGIX.TextureScaleBias.GL_POST_TEXTURE_FILTER_BIAS_SGIX', 'Graphics.GL.Ext.SGIX.TextureScaleBias.GL_POST_TEXTURE_FILTER_SCALE_SGIX', 'Graphics.GL.Ext.SGIS.TextureSelect.GL_QUAD_TEXTURE_SELECT_SGIS', 'Graphics.GL.Ext.SGIX.ShadowAmbient.GL_SHADOW_AMBIENT_SGIX', 'Graphics.GL.Internal.Shared.GL_TEXTURE_BORDER_COLOR', 'Graphics.GL.Ext.SGIX.Clipmap.GL_TEXTURE_CLIPMAP_CENTER_SGIX', 'Graphics.GL.Ext.SGIX.Clipmap.GL_TEXTURE_CLIPMAP_DEPTH_SGIX', 'Graphics.GL.Ext.SGIX.Clipmap.GL_TEXTURE_CLIPMAP_FRAME_SGIX', 'Graphics.GL.Ext.SGIX.Clipmap.GL_TEXTURE_CLIPMAP_LOD_OFFSET_SGIX', 'Graphics.GL.Ext.SGIX.Clipmap.GL_TEXTURE_CLIPMAP_OFFSET_SGIX', 'Graphics.GL.Ext.SGIX.Clipmap.GL_TEXTURE_CLIPMAP_VIRTUAL_DEPTH_SGIX', 'Graphics.GL.Ext.SGIX.Shadow.GL_TEXTURE_COMPARE_SGIX', 'Graphics.GL.Ext.SGIX.TextureLodBias.GL_TEXTURE_LOD_BIAS_R_SGIX', 'Graphics.GL.Ext.SGIX.TextureLodBias.GL_TEXTURE_LOD_BIAS_S_SGIX', 'Graphics.GL.Ext.SGIX.TextureLodBias.GL_TEXTURE_LOD_BIAS_T_SGIX', 'Graphics.GL.Internal.Shared.GL_TEXTURE_MAG_FILTER', 'Graphics.GL.Ext.SGIX.TextureCoordinateClamp.GL_TEXTURE_MAX_CLAMP_R_SGIX', 'Graphics.GL.Ext.SGIX.TextureCoordinateClamp.GL_TEXTURE_MAX_CLAMP_S_SGIX', 'Graphics.GL.Ext.SGIX.TextureCoordinateClamp.GL_TEXTURE_MAX_CLAMP_T_SGIX', 'Graphics.GL.Internal.Shared.GL_TEXTURE_MIN_FILTER', 'Graphics.GL.Internal.Shared.GL_TEXTURE_PRIORITY', 'Graphics.GL.Ext.EXT.TextureObject.GL_TEXTURE_PRIORITY_EXT', 'Graphics.GL.Ext.SGIS.Texture4D.GL_TEXTURE_WRAP_Q_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_WRAP_R', 'Graphics.GL.Ext.EXT.Texture3D.GL_TEXTURE_WRAP_R_EXT', 'Graphics.GL.Ext.OES.Texture3D.GL_TEXTURE_WRAP_R_OES', 'Graphics.GL.Internal.Shared.GL_TEXTURE_WRAP_S', 'Graphics.GL.Internal.Shared.GL_TEXTURE_WRAP_T'.
--
-- The length of @params@ should be @COMPSIZE(pname)@.
--
-- This command is an alias for 'Graphics.GL.Internal.Shared.glTexParameterIuiv'.
glTexParameterIuivEXT :: MonadIO m => GLenum -> GLenum -> Ptr GLuint -> m ()
glTexParameterIuivEXT = ffienumenumPtruintIOV glTexParameterIuivEXTFunPtr
glTexParameterIuivEXTFunPtr :: FunPtr (GLenum -> GLenum -> Ptr GLuint -> IO ())
glTexParameterIuivEXTFunPtr = unsafePerformIO (getProcAddress "glTexParameterIuivEXT")
{-# NOINLINE glTexParameterIuivEXTFunPtr #-}
-- | Usage: @'glTexBufferEXT' target internalformat buffer@
--
-- The parameter @target@ is a @TextureTarget@, one of: 'Graphics.GL.Ext.SGIS.DetailTexture.GL_DETAIL_TEXTURE_2D_SGIS', 'Graphics.GL.Internal.Shared.GL_PROXY_TEXTURE_1D', 'Graphics.GL.Ext.EXT.Texture.GL_PROXY_TEXTURE_1D_EXT', 'Graphics.GL.Internal.Shared.GL_PROXY_TEXTURE_2D', 'Graphics.GL.Ext.EXT.Texture.GL_PROXY_TEXTURE_2D_EXT', 'Graphics.GL.Internal.Shared.GL_PROXY_TEXTURE_3D', 'Graphics.GL.Ext.EXT.Texture3D.GL_PROXY_TEXTURE_3D_EXT', 'Graphics.GL.Ext.SGIS.Texture4D.GL_PROXY_TEXTURE_4D_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_1D', 'Graphics.GL.Internal.Shared.GL_TEXTURE_2D', 'Graphics.GL.Internal.Shared.GL_TEXTURE_3D', 'Graphics.GL.Ext.EXT.Texture3D.GL_TEXTURE_3D_EXT', 'Graphics.GL.Ext.OES.Texture3D.GL_TEXTURE_3D_OES', 'Graphics.GL.Ext.SGIS.Texture4D.GL_TEXTURE_4D_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_BASE_LEVEL', 'Graphics.GL.Ext.SGIS.TextureLod.GL_TEXTURE_BASE_LEVEL_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_MAX_LEVEL', 'Graphics.GL.Ext.SGIS.TextureLod.GL_TEXTURE_MAX_LEVEL_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_MAX_LOD', 'Graphics.GL.Ext.SGIS.TextureLod.GL_TEXTURE_MAX_LOD_SGIS', 'Graphics.GL.Internal.Shared.GL_TEXTURE_MIN_LOD', 'Graphics.GL.Ext.SGIS.TextureLod.GL_TEXTURE_MIN_LOD_SGIS'.
--
-- This command is an alias for 'Graphics.GL.Internal.Shared.glTexBuffer'.
glTexBufferEXT :: MonadIO m => GLenum -> GLenum -> GLuint -> m ()
glTexBufferEXT = ffienumenumuintIOV glTexBufferEXTFunPtr
glTexBufferEXTFunPtr :: FunPtr (GLenum -> GLenum -> GLuint -> IO ())
glTexBufferEXTFunPtr = unsafePerformIO (getProcAddress "glTexBufferEXT")
{-# NOINLINE glTexBufferEXTFunPtr #-}
pattern GL_MAX_TEXTURE_BUFFER_SIZE_EXT = 0x8C2B
pattern GL_TEXTURE_BINDING_BUFFER_EXT = 0x8C2C
pattern GL_TEXTURE_BUFFER_DATA_STORE_BINDING_EXT = 0x8C2D
pattern GL_TEXTURE_BUFFER_EXT = 0x8C2A
pattern GL_COMPRESSED_RGBA_S3TC_DXT1_EXT = 0x83F1
pattern GL_COMPRESSED_RGB_S3TC_DXT1_EXT = 0x83F0
pattern GL_R8_EXT = 0x8229
pattern GL_RG8_EXT = 0x822B
pattern GL_REQUIRED_TEXTURE_IMAGE_UNITS_OES = 0x8D68
pattern GL_TEXTURE_BINDING_EXTERNAL_OES = 0x8D67
pattern GL_TEXTURE_EXTERNAL_OES = 0x8D65
pattern GL_CONTEXT_ROBUST_ACCESS = 0x90F3
pattern GL_COMPRESSED_RGBA_ASTC_10x10_KHR = 0x93BB
pattern GL_COMPRESSED_RGBA_ASTC_10x5_KHR = 0x93B8
pattern GL_COMPRESSED_RGBA_ASTC_10x6_KHR = 0x93B9
pattern GL_COMPRESSED_RGBA_ASTC_10x8_KHR = 0x93BA
pattern GL_COMPRESSED_RGBA_ASTC_12x10_KHR = 0x93BC
pattern GL_COMPRESSED_RGBA_ASTC_12x12_KHR = 0x93BD
pattern GL_COMPRESSED_RGBA_ASTC_4x4_KHR = 0x93B0
pattern GL_COMPRESSED_RGBA_ASTC_5x4_KHR = 0x93B1
pattern GL_COMPRESSED_RGBA_ASTC_5x5_KHR = 0x93B2
pattern GL_COMPRESSED_RGBA_ASTC_6x5_KHR = 0x93B3
pattern GL_COMPRESSED_RGBA_ASTC_6x6_KHR = 0x93B4
pattern GL_COMPRESSED_RGBA_ASTC_8x5_KHR = 0x93B5
pattern GL_COMPRESSED_RGBA_ASTC_8x6_KHR = 0x93B6
pattern GL_COMPRESSED_RGBA_ASTC_8x8_KHR = 0x93B7
pattern GL_COMPRESSED_SRGB8_ALPHA8_ASTC_10x10_KHR = 0x93DB
pattern GL_COMPRESSED_SRGB8_ALPHA8_ASTC_10x5_KHR = 0x93D8
pattern GL_COMPRESSED_SRGB8_ALPHA8_ASTC_10x6_KHR = 0x93D9
pattern GL_COMPRESSED_SRGB8_ALPHA8_ASTC_10x8_KHR = 0x93DA
pattern GL_COMPRESSED_SRGB8_ALPHA8_ASTC_12x10_KHR = 0x93DC
pattern GL_COMPRESSED_SRGB8_ALPHA8_ASTC_12x12_KHR = 0x93DD
pattern GL_COMPRESSED_SRGB8_ALPHA8_ASTC_4x4_KHR = 0x93D0
pattern GL_COMPRESSED_SRGB8_ALPHA8_ASTC_5x4_KHR = 0x93D1
pattern GL_COMPRESSED_SRGB8_ALPHA8_ASTC_5x5_KHR = 0x93D2
pattern GL_COMPRESSED_SRGB8_ALPHA8_ASTC_6x5_KHR = 0x93D3
pattern GL_COMPRESSED_SRGB8_ALPHA8_ASTC_6x6_KHR = 0x93D4
pattern GL_COMPRESSED_SRGB8_ALPHA8_ASTC_8x5_KHR = 0x93D5
pattern GL_COMPRESSED_SRGB8_ALPHA8_ASTC_8x6_KHR = 0x93D6
pattern GL_COMPRESSED_SRGB8_ALPHA8_ASTC_8x8_KHR = 0x93D7
pattern GL_COLOR_ATTACHMENT0_NV = 0x8CE0
pattern GL_COLOR_ATTACHMENT10_NV = 0x8CEA
pattern GL_COLOR_ATTACHMENT11_NV = 0x8CEB
pattern GL_COLOR_ATTACHMENT12_NV = 0x8CEC
pattern GL_COLOR_ATTACHMENT13_NV = 0x8CED
pattern GL_COLOR_ATTACHMENT14_NV = 0x8CEE
pattern GL_COLOR_ATTACHMENT15_NV = 0x8CEF
pattern GL_COLOR_ATTACHMENT1_NV = 0x8CE1
pattern GL_COLOR_ATTACHMENT2_NV = 0x8CE2
pattern GL_COLOR_ATTACHMENT3_NV = 0x8CE3
pattern GL_COLOR_ATTACHMENT4_NV = 0x8CE4
pattern GL_COLOR_ATTACHMENT5_NV = 0x8CE5
pattern GL_COLOR_ATTACHMENT6_NV = 0x8CE6
pattern GL_COLOR_ATTACHMENT7_NV = 0x8CE7
pattern GL_COLOR_ATTACHMENT8_NV = 0x8CE8
pattern GL_COLOR_ATTACHMENT9_NV = 0x8CE9
pattern GL_MAX_PROGRAM_CALL_DEPTH_NV = 0x88F5
pattern GL_MAX_PROGRAM_EXEC_INSTRUCTIONS_NV = 0x88F4
pattern GL_COLOR_SAMPLES_NV = 0x8E20
pattern GL_PRIMARY_COLOR_NV = 0x852C
pattern GL_SECONDARY_COLOR_NV = 0x852D
pattern GL_DEPTH_COMPONENT24_OES = 0x81A6
-- | Usage: @'glDisableiOES' target index@
--
-- This command is an alias for 'Graphics.GL.Internal.Shared.glDisablei'.
glDisableiOES :: MonadIO m => GLenum -> GLuint -> m ()
glDisableiOES = ffienumuintIOV glDisableiOESFunPtr
glDisableiOESFunPtr :: FunPtr (GLenum -> GLuint -> IO ())
glDisableiOESFunPtr = unsafePerformIO (getProcAddress "glDisableiOES")
{-# NOINLINE glDisableiOESFunPtr #-}
-- | Usage: @'glEnableiOES' target index@
--
-- This command is an alias for 'Graphics.GL.Internal.Shared.glEnablei'.
glEnableiOES :: MonadIO m => GLenum -> GLuint -> m ()
glEnableiOES = ffienumuintIOV glEnableiOESFunPtr
glEnableiOESFunPtr :: FunPtr (GLenum -> GLuint -> IO ())
glEnableiOESFunPtr = unsafePerformIO (getProcAddress "glEnableiOES")
{-# NOINLINE glEnableiOESFunPtr #-}
-- | Usage: @'glIsEnablediOES' target index@
--
-- This command is an alias for 'Graphics.GL.Internal.Shared.glIsEnabledi'.
glIsEnablediOES :: MonadIO m => GLenum -> GLuint -> m GLboolean
glIsEnablediOES = ffienumuintIOboolean glIsEnablediOESFunPtr
glIsEnablediOESFunPtr :: FunPtr (GLenum -> GLuint -> IO GLboolean)
glIsEnablediOESFunPtr = unsafePerformIO (getProcAddress "glIsEnablediOES")
{-# NOINLINE glIsEnablediOESFunPtr #-}
-- | Usage: @'glGetTexGenxvOES' coord pname params@
--
-- The length of @params@ should be @COMPSIZE(pname)@.
glGetTexGenxvOES :: MonadIO m => GLenum -> GLenum -> Ptr GLfixed -> m ()
glGetTexGenxvOES = ffienumenumPtrfixedIOV glGetTexGenxvOESFunPtr
glGetTexGenxvOESFunPtr :: FunPtr (GLenum -> GLenum -> Ptr GLfixed -> IO ())
glGetTexGenxvOESFunPtr = unsafePerformIO (getProcAddress "glGetTexGenxvOES")
{-# NOINLINE glGetTexGenxvOESFunPtr #-}
-- | Usage: @'glTexGenxOES' coord pname param@
glTexGenxOES :: MonadIO m => GLenum -> GLenum -> GLfixed -> m ()
glTexGenxOES = ffienumenumfixedIOV glTexGenxOESFunPtr
glTexGenxOESFunPtr :: FunPtr (GLenum -> GLenum -> GLfixed -> IO ())
glTexGenxOESFunPtr = unsafePerformIO (getProcAddress "glTexGenxOES")
{-# NOINLINE glTexGenxOESFunPtr #-}
-- | Usage: @'glTexGenxvOES' coord pname params@
--
-- The length of @params@ should be @COMPSIZE(pname)@.
glTexGenxvOES :: MonadIO m => GLenum -> GLenum -> Ptr GLfixed -> m ()
glTexGenxvOES = ffienumenumPtrfixedIOV glTexGenxvOESFunPtr
glTexGenxvOESFunPtr :: FunPtr (GLenum -> GLenum -> Ptr GLfixed -> IO ())
glTexGenxvOESFunPtr = unsafePerformIO (getProcAddress "glTexGenxvOES")
{-# NOINLINE glTexGenxvOESFunPtr #-}
pattern GL_DEPTH_COMPONENT16_OES = 0x81A5
pattern GL_RGB565_OES = 0x8D62
pattern GL_RGB5_A1_OES = 0x8057
pattern GL_RGBA4_OES = 0x8056
pattern GL_RGB8_OES = 0x8051
pattern GL_RGBA8_OES = 0x8058
pattern GL_STENCIL_INDEX8_OES = 0x8D48
pattern GL_HALF_FLOAT_OES = 0x8D61