gl-0.9: generated-src/Graphics/GL/Ext/NV/VertexProgram.hs
-- This file was automatically generated.
{-# LANGUAGE CPP, ScopedTypeVariables, PatternSynonyms #-}
module Graphics.GL.Ext.NV.VertexProgram (
-- * Extension Support
gl_NV_vertex_program
-- * GL_NV_vertex_program
, glAreProgramsResidentNV
, glBindProgramNV
, glDeleteProgramsNV
, glExecuteProgramNV
, glGenProgramsNV
, glGetProgramParameterdvNV
, glGetProgramParameterfvNV
, glGetProgramStringNV
, glGetProgramivNV
, glGetTrackMatrixivNV
, glGetVertexAttribPointervNV
, glGetVertexAttribdvNV
, glGetVertexAttribfvNV
, glGetVertexAttribivNV
, glIsProgramNV
, glLoadProgramNV
, glProgramParameter4dNV
, glProgramParameter4dvNV
, glProgramParameter4fNV
, glProgramParameter4fvNV
, glProgramParameters4dvNV
, glProgramParameters4fvNV
, glRequestResidentProgramsNV
, glTrackMatrixNV
, glVertexAttrib1dNV
, glVertexAttrib1dvNV
, glVertexAttrib1fNV
, glVertexAttrib1fvNV
, glVertexAttrib1sNV
, glVertexAttrib1svNV
, glVertexAttrib2dNV
, glVertexAttrib2dvNV
, glVertexAttrib2fNV
, glVertexAttrib2fvNV
, glVertexAttrib2sNV
, glVertexAttrib2svNV
, glVertexAttrib3dNV
, glVertexAttrib3dvNV
, glVertexAttrib3fNV
, glVertexAttrib3fvNV
, glVertexAttrib3sNV
, glVertexAttrib3svNV
, glVertexAttrib4dNV
, glVertexAttrib4dvNV
, glVertexAttrib4fNV
, glVertexAttrib4fvNV
, glVertexAttrib4sNV
, glVertexAttrib4svNV
, glVertexAttrib4ubNV
, glVertexAttrib4ubvNV
, glVertexAttribPointerNV
, glVertexAttribs1dvNV
, glVertexAttribs1fvNV
, glVertexAttribs1svNV
, glVertexAttribs2dvNV
, glVertexAttribs2fvNV
, glVertexAttribs2svNV
, glVertexAttribs3dvNV
, glVertexAttribs3fvNV
, glVertexAttribs3svNV
, glVertexAttribs4dvNV
, glVertexAttribs4fvNV
, glVertexAttribs4svNV
, glVertexAttribs4ubvNV
, pattern GL_ATTRIB_ARRAY_POINTER_NV
, pattern GL_ATTRIB_ARRAY_SIZE_NV
, pattern GL_ATTRIB_ARRAY_STRIDE_NV
, pattern GL_ATTRIB_ARRAY_TYPE_NV
, pattern GL_CURRENT_ATTRIB_NV
, pattern GL_CURRENT_MATRIX_NV
, pattern GL_CURRENT_MATRIX_STACK_DEPTH_NV
, pattern GL_IDENTITY_NV
, pattern GL_INVERSE_NV
, pattern GL_INVERSE_TRANSPOSE_NV
, pattern GL_MAP1_VERTEX_ATTRIB0_4_NV
, pattern GL_MAP1_VERTEX_ATTRIB10_4_NV
, pattern GL_MAP1_VERTEX_ATTRIB11_4_NV
, pattern GL_MAP1_VERTEX_ATTRIB12_4_NV
, pattern GL_MAP1_VERTEX_ATTRIB13_4_NV
, pattern GL_MAP1_VERTEX_ATTRIB14_4_NV
, pattern GL_MAP1_VERTEX_ATTRIB15_4_NV
, pattern GL_MAP1_VERTEX_ATTRIB1_4_NV
, pattern GL_MAP1_VERTEX_ATTRIB2_4_NV
, pattern GL_MAP1_VERTEX_ATTRIB3_4_NV
, pattern GL_MAP1_VERTEX_ATTRIB4_4_NV
, pattern GL_MAP1_VERTEX_ATTRIB5_4_NV
, pattern GL_MAP1_VERTEX_ATTRIB6_4_NV
, pattern GL_MAP1_VERTEX_ATTRIB7_4_NV
, pattern GL_MAP1_VERTEX_ATTRIB8_4_NV
, pattern GL_MAP1_VERTEX_ATTRIB9_4_NV
, pattern GL_MAP2_VERTEX_ATTRIB0_4_NV
, pattern GL_MAP2_VERTEX_ATTRIB10_4_NV
, pattern GL_MAP2_VERTEX_ATTRIB11_4_NV
, pattern GL_MAP2_VERTEX_ATTRIB12_4_NV
, pattern GL_MAP2_VERTEX_ATTRIB13_4_NV
, pattern GL_MAP2_VERTEX_ATTRIB14_4_NV
, pattern GL_MAP2_VERTEX_ATTRIB15_4_NV
, pattern GL_MAP2_VERTEX_ATTRIB1_4_NV
, pattern GL_MAP2_VERTEX_ATTRIB2_4_NV
, pattern GL_MAP2_VERTEX_ATTRIB3_4_NV
, pattern GL_MAP2_VERTEX_ATTRIB4_4_NV
, pattern GL_MAP2_VERTEX_ATTRIB5_4_NV
, pattern GL_MAP2_VERTEX_ATTRIB6_4_NV
, pattern GL_MAP2_VERTEX_ATTRIB7_4_NV
, pattern GL_MAP2_VERTEX_ATTRIB8_4_NV
, pattern GL_MAP2_VERTEX_ATTRIB9_4_NV
, pattern GL_MATRIX0_NV
, pattern GL_MATRIX1_NV
, pattern GL_MATRIX2_NV
, pattern GL_MATRIX3_NV
, pattern GL_MATRIX4_NV
, pattern GL_MATRIX5_NV
, pattern GL_MATRIX6_NV
, pattern GL_MATRIX7_NV
, pattern GL_MAX_TRACK_MATRICES_NV
, pattern GL_MAX_TRACK_MATRIX_STACK_DEPTH_NV
, pattern GL_MODELVIEW_PROJECTION_NV
, pattern GL_PROGRAM_ERROR_POSITION_NV
, pattern GL_PROGRAM_LENGTH_NV
, pattern GL_PROGRAM_PARAMETER_NV
, pattern GL_PROGRAM_RESIDENT_NV
, pattern GL_PROGRAM_STRING_NV
, pattern GL_PROGRAM_TARGET_NV
, pattern GL_TRACK_MATRIX_NV
, pattern GL_TRACK_MATRIX_TRANSFORM_NV
, pattern GL_TRANSPOSE_NV
, pattern GL_VERTEX_ATTRIB_ARRAY0_NV
, pattern GL_VERTEX_ATTRIB_ARRAY10_NV
, pattern GL_VERTEX_ATTRIB_ARRAY11_NV
, pattern GL_VERTEX_ATTRIB_ARRAY12_NV
, pattern GL_VERTEX_ATTRIB_ARRAY13_NV
, pattern GL_VERTEX_ATTRIB_ARRAY14_NV
, pattern GL_VERTEX_ATTRIB_ARRAY15_NV
, pattern GL_VERTEX_ATTRIB_ARRAY1_NV
, pattern GL_VERTEX_ATTRIB_ARRAY2_NV
, pattern GL_VERTEX_ATTRIB_ARRAY3_NV
, pattern GL_VERTEX_ATTRIB_ARRAY4_NV
, pattern GL_VERTEX_ATTRIB_ARRAY5_NV
, pattern GL_VERTEX_ATTRIB_ARRAY6_NV
, pattern GL_VERTEX_ATTRIB_ARRAY7_NV
, pattern GL_VERTEX_ATTRIB_ARRAY8_NV
, pattern GL_VERTEX_ATTRIB_ARRAY9_NV
, pattern GL_VERTEX_PROGRAM_BINDING_NV
, pattern GL_VERTEX_PROGRAM_NV
, pattern GL_VERTEX_PROGRAM_POINT_SIZE_NV
, pattern GL_VERTEX_PROGRAM_TWO_SIDE_NV
, pattern GL_VERTEX_STATE_PROGRAM_NV
) where
import Control.Monad.IO.Class
import Data.Set
import Foreign.Ptr
import Graphics.GL.Internal.FFI
import Graphics.GL.Internal.Proc
import Graphics.GL.Types
import System.IO.Unsafe
-- | Checks that the <https://cvs.khronos.org/svn/repos/ogl/trunk/doc/registry/public/specs/NV/vertex_program.txt GL_NV_vertex_program> extension is available.
gl_NV_vertex_program :: Bool
gl_NV_vertex_program = member "GL_NV_vertex_program" extensions
{-# NOINLINE gl_NV_vertex_program #-}
-- | Usage: @'glAreProgramsResidentNV' n programs residences@
--
-- The parameter @residences@ is a @Boolean@, one of: 'Graphics.GL.Internal.Shared.GL_FALSE', 'Graphics.GL.Internal.Shared.GL_TRUE'.
--
-- The length of @programs@ should be @n@.
--
-- The length of @residences@ should be @n@.
glAreProgramsResidentNV :: MonadIO m => GLsizei -> Ptr GLuint -> Ptr GLboolean -> m GLboolean
glAreProgramsResidentNV = ffisizeiPtruintPtrbooleanIOboolean glAreProgramsResidentNVFunPtr
glAreProgramsResidentNVFunPtr :: FunPtr (GLsizei -> Ptr GLuint -> Ptr GLboolean -> IO GLboolean)
glAreProgramsResidentNVFunPtr = unsafePerformIO (getProcAddress "glAreProgramsResidentNV")
{-# NOINLINE glAreProgramsResidentNVFunPtr #-}
-- | Usage: @'glBindProgramNV' target id@
--
-- The parameter @target@ is a @VertexAttribEnumNV@.
--
-- This command is an alias for 'Graphics.GL.Internal.Shared.glBindProgramARB'.
glBindProgramNV :: MonadIO m => GLenum -> GLuint -> m ()
glBindProgramNV = ffienumuintIOV glBindProgramNVFunPtr
glBindProgramNVFunPtr :: FunPtr (GLenum -> GLuint -> IO ())
glBindProgramNVFunPtr = unsafePerformIO (getProcAddress "glBindProgramNV")
{-# NOINLINE glBindProgramNVFunPtr #-}
-- | Usage: @'glDeleteProgramsNV' n programs@
--
-- The length of @programs@ should be @n@.
--
-- This command is an alias for 'Graphics.GL.Internal.Shared.glDeleteProgramsARB'.
glDeleteProgramsNV :: MonadIO m => GLsizei -> Ptr GLuint -> m ()
glDeleteProgramsNV = ffisizeiPtruintIOV glDeleteProgramsNVFunPtr
glDeleteProgramsNVFunPtr :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
glDeleteProgramsNVFunPtr = unsafePerformIO (getProcAddress "glDeleteProgramsNV")
{-# NOINLINE glDeleteProgramsNVFunPtr #-}
-- | Usage: @'glExecuteProgramNV' target id params@
--
-- The parameter @target@ is a @VertexAttribEnumNV@.
--
-- The length of @params@ should be @4@.
glExecuteProgramNV :: MonadIO m => GLenum -> GLuint -> Ptr GLfloat -> m ()
glExecuteProgramNV = ffienumuintPtrfloatIOV glExecuteProgramNVFunPtr
glExecuteProgramNVFunPtr :: FunPtr (GLenum -> GLuint -> Ptr GLfloat -> IO ())
glExecuteProgramNVFunPtr = unsafePerformIO (getProcAddress "glExecuteProgramNV")
{-# NOINLINE glExecuteProgramNVFunPtr #-}
-- | Usage: @'glGenProgramsNV' n programs@
--
-- The length of @programs@ should be @n@.
--
-- This command is an alias for 'Graphics.GL.Internal.Shared.glGenProgramsARB'.
glGenProgramsNV :: MonadIO m => GLsizei -> Ptr GLuint -> m ()
glGenProgramsNV = ffisizeiPtruintIOV glGenProgramsNVFunPtr
glGenProgramsNVFunPtr :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
glGenProgramsNVFunPtr = unsafePerformIO (getProcAddress "glGenProgramsNV")
{-# NOINLINE glGenProgramsNVFunPtr #-}
-- | Usage: @'glGetProgramParameterdvNV' target index pname params@
--
-- The parameter @target@ is a @VertexAttribEnumNV@.
--
-- The parameter @pname@ is a @VertexAttribEnumNV@.
--
-- The length of @params@ should be @4@.
glGetProgramParameterdvNV :: MonadIO m => GLenum -> GLuint -> GLenum -> Ptr GLdouble -> m ()
glGetProgramParameterdvNV = ffienumuintenumPtrdoubleIOV glGetProgramParameterdvNVFunPtr
glGetProgramParameterdvNVFunPtr :: FunPtr (GLenum -> GLuint -> GLenum -> Ptr GLdouble -> IO ())
glGetProgramParameterdvNVFunPtr = unsafePerformIO (getProcAddress "glGetProgramParameterdvNV")
{-# NOINLINE glGetProgramParameterdvNVFunPtr #-}
-- | Usage: @'glGetProgramParameterfvNV' target index pname params@
--
-- The parameter @target@ is a @VertexAttribEnumNV@.
--
-- The parameter @pname@ is a @VertexAttribEnumNV@.
--
-- The length of @params@ should be @4@.
glGetProgramParameterfvNV :: MonadIO m => GLenum -> GLuint -> GLenum -> Ptr GLfloat -> m ()
glGetProgramParameterfvNV = ffienumuintenumPtrfloatIOV glGetProgramParameterfvNVFunPtr
glGetProgramParameterfvNVFunPtr :: FunPtr (GLenum -> GLuint -> GLenum -> Ptr GLfloat -> IO ())
glGetProgramParameterfvNVFunPtr = unsafePerformIO (getProcAddress "glGetProgramParameterfvNV")
{-# NOINLINE glGetProgramParameterfvNVFunPtr #-}
-- | Usage: @'glGetProgramStringNV' id pname program@
--
-- The parameter @pname@ is a @VertexAttribEnumNV@.
--
-- The parameter @program@ is a @ProgramCharacterNV@.
--
-- The length of @program@ should be @COMPSIZE(id,pname)@.
glGetProgramStringNV :: MonadIO m => GLuint -> GLenum -> Ptr GLubyte -> m ()
glGetProgramStringNV = ffiuintenumPtrubyteIOV glGetProgramStringNVFunPtr
glGetProgramStringNVFunPtr :: FunPtr (GLuint -> GLenum -> Ptr GLubyte -> IO ())
glGetProgramStringNVFunPtr = unsafePerformIO (getProcAddress "glGetProgramStringNV")
{-# NOINLINE glGetProgramStringNVFunPtr #-}
-- | Usage: @'glGetProgramivNV' id pname params@
--
-- The parameter @pname@ is a @VertexAttribEnumNV@.
--
-- The length of @params@ should be @4@.
glGetProgramivNV :: MonadIO m => GLuint -> GLenum -> Ptr GLint -> m ()
glGetProgramivNV = ffiuintenumPtrintIOV glGetProgramivNVFunPtr
glGetProgramivNVFunPtr :: FunPtr (GLuint -> GLenum -> Ptr GLint -> IO ())
glGetProgramivNVFunPtr = unsafePerformIO (getProcAddress "glGetProgramivNV")
{-# NOINLINE glGetProgramivNVFunPtr #-}
-- | Usage: @'glGetTrackMatrixivNV' target address pname params@
--
-- The parameter @target@ is a @VertexAttribEnumNV@.
--
-- The parameter @pname@ is a @VertexAttribEnumNV@.
--
-- The length of @params@ should be @1@.
glGetTrackMatrixivNV :: MonadIO m => GLenum -> GLuint -> GLenum -> Ptr GLint -> m ()
glGetTrackMatrixivNV = ffienumuintenumPtrintIOV glGetTrackMatrixivNVFunPtr
glGetTrackMatrixivNVFunPtr :: FunPtr (GLenum -> GLuint -> GLenum -> Ptr GLint -> IO ())
glGetTrackMatrixivNVFunPtr = unsafePerformIO (getProcAddress "glGetTrackMatrixivNV")
{-# NOINLINE glGetTrackMatrixivNVFunPtr #-}
-- | Usage: @'glGetVertexAttribPointervNV' index pname pointer@
--
-- The parameter @pname@ is a @VertexAttribEnumNV@.
--
-- The length of @pointer@ should be @1@.
--
-- This command is an alias for 'Graphics.GL.Internal.Shared.glGetVertexAttribPointerv'.
glGetVertexAttribPointervNV :: MonadIO m => GLuint -> GLenum -> Ptr (Ptr ()) -> m ()
glGetVertexAttribPointervNV = ffiuintenumPtrPtrVIOV glGetVertexAttribPointervNVFunPtr
glGetVertexAttribPointervNVFunPtr :: FunPtr (GLuint -> GLenum -> Ptr (Ptr ()) -> IO ())
glGetVertexAttribPointervNVFunPtr = unsafePerformIO (getProcAddress "glGetVertexAttribPointervNV")
{-# NOINLINE glGetVertexAttribPointervNVFunPtr #-}
-- | Usage: @'glGetVertexAttribdvNV' index pname params@
--
-- The parameter @pname@ is a @VertexAttribEnumNV@.
--
-- The length of @params@ should be @1@.
--
-- This command is an alias for 'Graphics.GL.Internal.Shared.glGetVertexAttribdv'.
glGetVertexAttribdvNV :: MonadIO m => GLuint -> GLenum -> Ptr GLdouble -> m ()
glGetVertexAttribdvNV = ffiuintenumPtrdoubleIOV glGetVertexAttribdvNVFunPtr
glGetVertexAttribdvNVFunPtr :: FunPtr (GLuint -> GLenum -> Ptr GLdouble -> IO ())
glGetVertexAttribdvNVFunPtr = unsafePerformIO (getProcAddress "glGetVertexAttribdvNV")
{-# NOINLINE glGetVertexAttribdvNVFunPtr #-}
-- | Usage: @'glGetVertexAttribfvNV' index pname params@
--
-- The parameter @pname@ is a @VertexAttribEnumNV@.
--
-- The length of @params@ should be @1@.
--
-- This command is an alias for 'Graphics.GL.Internal.Shared.glGetVertexAttribfv'.
glGetVertexAttribfvNV :: MonadIO m => GLuint -> GLenum -> Ptr GLfloat -> m ()
glGetVertexAttribfvNV = ffiuintenumPtrfloatIOV glGetVertexAttribfvNVFunPtr
glGetVertexAttribfvNVFunPtr :: FunPtr (GLuint -> GLenum -> Ptr GLfloat -> IO ())
glGetVertexAttribfvNVFunPtr = unsafePerformIO (getProcAddress "glGetVertexAttribfvNV")
{-# NOINLINE glGetVertexAttribfvNVFunPtr #-}
-- | Usage: @'glGetVertexAttribivNV' index pname params@
--
-- The parameter @pname@ is a @VertexAttribEnumNV@.
--
-- The length of @params@ should be @1@.
--
-- This command is an alias for 'Graphics.GL.Internal.Shared.glGetVertexAttribiv'.
glGetVertexAttribivNV :: MonadIO m => GLuint -> GLenum -> Ptr GLint -> m ()
glGetVertexAttribivNV = ffiuintenumPtrintIOV glGetVertexAttribivNVFunPtr
glGetVertexAttribivNVFunPtr :: FunPtr (GLuint -> GLenum -> Ptr GLint -> IO ())
glGetVertexAttribivNVFunPtr = unsafePerformIO (getProcAddress "glGetVertexAttribivNV")
{-# NOINLINE glGetVertexAttribivNVFunPtr #-}
-- | Usage: @'glIsProgramNV' id@
--
-- This command is an alias for 'Graphics.GL.Internal.Shared.glIsProgramARB'.
glIsProgramNV :: MonadIO m => GLuint -> m GLboolean
glIsProgramNV = ffiuintIOboolean glIsProgramNVFunPtr
glIsProgramNVFunPtr :: FunPtr (GLuint -> IO GLboolean)
glIsProgramNVFunPtr = unsafePerformIO (getProcAddress "glIsProgramNV")
{-# NOINLINE glIsProgramNVFunPtr #-}
-- | Usage: @'glLoadProgramNV' target id len program@
--
-- The parameter @target@ is a @VertexAttribEnumNV@.
--
-- The length of @program@ should be @len@.
glLoadProgramNV :: MonadIO m => GLenum -> GLuint -> GLsizei -> Ptr GLubyte -> m ()
glLoadProgramNV = ffienumuintsizeiPtrubyteIOV glLoadProgramNVFunPtr
glLoadProgramNVFunPtr :: FunPtr (GLenum -> GLuint -> GLsizei -> Ptr GLubyte -> IO ())
glLoadProgramNVFunPtr = unsafePerformIO (getProcAddress "glLoadProgramNV")
{-# NOINLINE glLoadProgramNVFunPtr #-}
-- | Usage: @'glProgramParameter4dNV' target index x y z w@
--
-- The parameter @target@ is a @VertexAttribEnumNV@.
--
-- The vector equivalent of this command is 'Graphics.GL.Ext.NV.VertexProgram.glProgramParameter4dvNV'.
glProgramParameter4dNV :: MonadIO m => GLenum -> GLuint -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> m ()
glProgramParameter4dNV = ffienumuintdoubledoubledoubledoubleIOV glProgramParameter4dNVFunPtr
glProgramParameter4dNVFunPtr :: FunPtr (GLenum -> GLuint -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ())
glProgramParameter4dNVFunPtr = unsafePerformIO (getProcAddress "glProgramParameter4dNV")
{-# NOINLINE glProgramParameter4dNVFunPtr #-}
-- | Usage: @'glProgramParameter4dvNV' target index v@
--
-- The parameter @target@ is a @VertexAttribEnumNV@.
--
-- The length of @v@ should be @4@.
glProgramParameter4dvNV :: MonadIO m => GLenum -> GLuint -> Ptr GLdouble -> m ()
glProgramParameter4dvNV = ffienumuintPtrdoubleIOV glProgramParameter4dvNVFunPtr
glProgramParameter4dvNVFunPtr :: FunPtr (GLenum -> GLuint -> Ptr GLdouble -> IO ())
glProgramParameter4dvNVFunPtr = unsafePerformIO (getProcAddress "glProgramParameter4dvNV")
{-# NOINLINE glProgramParameter4dvNVFunPtr #-}
-- | Usage: @'glProgramParameter4fNV' target index x y z w@
--
-- The parameter @target@ is a @VertexAttribEnumNV@.
--
-- The vector equivalent of this command is 'Graphics.GL.Ext.NV.VertexProgram.glProgramParameter4fvNV'.
glProgramParameter4fNV :: MonadIO m => GLenum -> GLuint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> m ()
glProgramParameter4fNV = ffienumuintfloatfloatfloatfloatIOV glProgramParameter4fNVFunPtr
glProgramParameter4fNVFunPtr :: FunPtr (GLenum -> GLuint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
glProgramParameter4fNVFunPtr = unsafePerformIO (getProcAddress "glProgramParameter4fNV")
{-# NOINLINE glProgramParameter4fNVFunPtr #-}
-- | Usage: @'glProgramParameter4fvNV' target index v@
--
-- The parameter @target@ is a @VertexAttribEnumNV@.
--
-- The length of @v@ should be @4@.
glProgramParameter4fvNV :: MonadIO m => GLenum -> GLuint -> Ptr GLfloat -> m ()
glProgramParameter4fvNV = ffienumuintPtrfloatIOV glProgramParameter4fvNVFunPtr
glProgramParameter4fvNVFunPtr :: FunPtr (GLenum -> GLuint -> Ptr GLfloat -> IO ())
glProgramParameter4fvNVFunPtr = unsafePerformIO (getProcAddress "glProgramParameter4fvNV")
{-# NOINLINE glProgramParameter4fvNVFunPtr #-}
-- | Usage: @'glProgramParameters4dvNV' target index count v@
--
-- The parameter @target@ is a @VertexAttribEnumNV@.
--
-- The length of @v@ should be @count*4@.
glProgramParameters4dvNV :: MonadIO m => GLenum -> GLuint -> GLsizei -> Ptr GLdouble -> m ()
glProgramParameters4dvNV = ffienumuintsizeiPtrdoubleIOV glProgramParameters4dvNVFunPtr
glProgramParameters4dvNVFunPtr :: FunPtr (GLenum -> GLuint -> GLsizei -> Ptr GLdouble -> IO ())
glProgramParameters4dvNVFunPtr = unsafePerformIO (getProcAddress "glProgramParameters4dvNV")
{-# NOINLINE glProgramParameters4dvNVFunPtr #-}
-- | Usage: @'glProgramParameters4fvNV' target index count v@
--
-- The parameter @target@ is a @VertexAttribEnumNV@.
--
-- The length of @v@ should be @count*4@.
glProgramParameters4fvNV :: MonadIO m => GLenum -> GLuint -> GLsizei -> Ptr GLfloat -> m ()
glProgramParameters4fvNV = ffienumuintsizeiPtrfloatIOV glProgramParameters4fvNVFunPtr
glProgramParameters4fvNVFunPtr :: FunPtr (GLenum -> GLuint -> GLsizei -> Ptr GLfloat -> IO ())
glProgramParameters4fvNVFunPtr = unsafePerformIO (getProcAddress "glProgramParameters4fvNV")
{-# NOINLINE glProgramParameters4fvNVFunPtr #-}
-- | Usage: @'glRequestResidentProgramsNV' n programs@
--
-- The length of @programs@ should be @n@.
glRequestResidentProgramsNV :: MonadIO m => GLsizei -> Ptr GLuint -> m ()
glRequestResidentProgramsNV = ffisizeiPtruintIOV glRequestResidentProgramsNVFunPtr
glRequestResidentProgramsNVFunPtr :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
glRequestResidentProgramsNVFunPtr = unsafePerformIO (getProcAddress "glRequestResidentProgramsNV")
{-# NOINLINE glRequestResidentProgramsNVFunPtr #-}
-- | Usage: @'glTrackMatrixNV' target address matrix transform@
--
-- The parameter @target@ is a @VertexAttribEnumNV@.
--
-- The parameter @matrix@ is a @VertexAttribEnumNV@.
--
-- The parameter @transform@ is a @VertexAttribEnumNV@.
glTrackMatrixNV :: MonadIO m => GLenum -> GLuint -> GLenum -> GLenum -> m ()
glTrackMatrixNV = ffienumuintenumenumIOV glTrackMatrixNVFunPtr
glTrackMatrixNVFunPtr :: FunPtr (GLenum -> GLuint -> GLenum -> GLenum -> IO ())
glTrackMatrixNVFunPtr = unsafePerformIO (getProcAddress "glTrackMatrixNV")
{-# NOINLINE glTrackMatrixNVFunPtr #-}
-- | Usage: @'glVertexAttrib1dNV' index x@
--
-- This command is an alias for 'Graphics.GL.Internal.Shared.glVertexAttrib1d'.
--
-- The vector equivalent of this command is 'Graphics.GL.Ext.NV.VertexProgram.glVertexAttrib1dvNV'.
glVertexAttrib1dNV :: MonadIO m => GLuint -> GLdouble -> m ()
glVertexAttrib1dNV = ffiuintdoubleIOV glVertexAttrib1dNVFunPtr
glVertexAttrib1dNVFunPtr :: FunPtr (GLuint -> GLdouble -> IO ())
glVertexAttrib1dNVFunPtr = unsafePerformIO (getProcAddress "glVertexAttrib1dNV")
{-# NOINLINE glVertexAttrib1dNVFunPtr #-}
-- | Usage: @'glVertexAttrib1dvNV' index v@
--
-- The length of @v@ should be @1@.
--
-- This command is an alias for 'Graphics.GL.Internal.Shared.glVertexAttrib1dv'.
glVertexAttrib1dvNV :: MonadIO m => GLuint -> Ptr GLdouble -> m ()
glVertexAttrib1dvNV = ffiuintPtrdoubleIOV glVertexAttrib1dvNVFunPtr
glVertexAttrib1dvNVFunPtr :: FunPtr (GLuint -> Ptr GLdouble -> IO ())
glVertexAttrib1dvNVFunPtr = unsafePerformIO (getProcAddress "glVertexAttrib1dvNV")
{-# NOINLINE glVertexAttrib1dvNVFunPtr #-}
-- | Usage: @'glVertexAttrib1fNV' index x@
--
-- This command is an alias for 'Graphics.GL.Internal.Shared.glVertexAttrib1f'.
--
-- The vector equivalent of this command is 'Graphics.GL.Ext.NV.VertexProgram.glVertexAttrib1fvNV'.
glVertexAttrib1fNV :: MonadIO m => GLuint -> GLfloat -> m ()
glVertexAttrib1fNV = ffiuintfloatIOV glVertexAttrib1fNVFunPtr
glVertexAttrib1fNVFunPtr :: FunPtr (GLuint -> GLfloat -> IO ())
glVertexAttrib1fNVFunPtr = unsafePerformIO (getProcAddress "glVertexAttrib1fNV")
{-# NOINLINE glVertexAttrib1fNVFunPtr #-}
-- | Usage: @'glVertexAttrib1fvNV' index v@
--
-- The length of @v@ should be @1@.
--
-- This command is an alias for 'Graphics.GL.Internal.Shared.glVertexAttrib1fv'.
glVertexAttrib1fvNV :: MonadIO m => GLuint -> Ptr GLfloat -> m ()
glVertexAttrib1fvNV = ffiuintPtrfloatIOV glVertexAttrib1fvNVFunPtr
glVertexAttrib1fvNVFunPtr :: FunPtr (GLuint -> Ptr GLfloat -> IO ())
glVertexAttrib1fvNVFunPtr = unsafePerformIO (getProcAddress "glVertexAttrib1fvNV")
{-# NOINLINE glVertexAttrib1fvNVFunPtr #-}
-- | Usage: @'glVertexAttrib1sNV' index x@
--
-- This command is an alias for 'Graphics.GL.Internal.Shared.glVertexAttrib1s'.
--
-- The vector equivalent of this command is 'Graphics.GL.Ext.NV.VertexProgram.glVertexAttrib1svNV'.
glVertexAttrib1sNV :: MonadIO m => GLuint -> GLshort -> m ()
glVertexAttrib1sNV = ffiuintshortIOV glVertexAttrib1sNVFunPtr
glVertexAttrib1sNVFunPtr :: FunPtr (GLuint -> GLshort -> IO ())
glVertexAttrib1sNVFunPtr = unsafePerformIO (getProcAddress "glVertexAttrib1sNV")
{-# NOINLINE glVertexAttrib1sNVFunPtr #-}
-- | Usage: @'glVertexAttrib1svNV' index v@
--
-- The length of @v@ should be @1@.
--
-- This command is an alias for 'Graphics.GL.Internal.Shared.glVertexAttrib1sv'.
glVertexAttrib1svNV :: MonadIO m => GLuint -> Ptr GLshort -> m ()
glVertexAttrib1svNV = ffiuintPtrshortIOV glVertexAttrib1svNVFunPtr
glVertexAttrib1svNVFunPtr :: FunPtr (GLuint -> Ptr GLshort -> IO ())
glVertexAttrib1svNVFunPtr = unsafePerformIO (getProcAddress "glVertexAttrib1svNV")
{-# NOINLINE glVertexAttrib1svNVFunPtr #-}
-- | Usage: @'glVertexAttrib2dNV' index x y@
--
-- This command is an alias for 'Graphics.GL.Internal.Shared.glVertexAttrib2d'.
--
-- The vector equivalent of this command is 'Graphics.GL.Ext.NV.VertexProgram.glVertexAttrib2dvNV'.
glVertexAttrib2dNV :: MonadIO m => GLuint -> GLdouble -> GLdouble -> m ()
glVertexAttrib2dNV = ffiuintdoubledoubleIOV glVertexAttrib2dNVFunPtr
glVertexAttrib2dNVFunPtr :: FunPtr (GLuint -> GLdouble -> GLdouble -> IO ())
glVertexAttrib2dNVFunPtr = unsafePerformIO (getProcAddress "glVertexAttrib2dNV")
{-# NOINLINE glVertexAttrib2dNVFunPtr #-}
-- | Usage: @'glVertexAttrib2dvNV' index v@
--
-- The length of @v@ should be @2@.
--
-- This command is an alias for 'Graphics.GL.Internal.Shared.glVertexAttrib2dv'.
glVertexAttrib2dvNV :: MonadIO m => GLuint -> Ptr GLdouble -> m ()
glVertexAttrib2dvNV = ffiuintPtrdoubleIOV glVertexAttrib2dvNVFunPtr
glVertexAttrib2dvNVFunPtr :: FunPtr (GLuint -> Ptr GLdouble -> IO ())
glVertexAttrib2dvNVFunPtr = unsafePerformIO (getProcAddress "glVertexAttrib2dvNV")
{-# NOINLINE glVertexAttrib2dvNVFunPtr #-}
-- | Usage: @'glVertexAttrib2fNV' index x y@
--
-- This command is an alias for 'Graphics.GL.Internal.Shared.glVertexAttrib2f'.
--
-- The vector equivalent of this command is 'Graphics.GL.Ext.NV.VertexProgram.glVertexAttrib2fvNV'.
glVertexAttrib2fNV :: MonadIO m => GLuint -> GLfloat -> GLfloat -> m ()
glVertexAttrib2fNV = ffiuintfloatfloatIOV glVertexAttrib2fNVFunPtr
glVertexAttrib2fNVFunPtr :: FunPtr (GLuint -> GLfloat -> GLfloat -> IO ())
glVertexAttrib2fNVFunPtr = unsafePerformIO (getProcAddress "glVertexAttrib2fNV")
{-# NOINLINE glVertexAttrib2fNVFunPtr #-}
-- | Usage: @'glVertexAttrib2fvNV' index v@
--
-- The length of @v@ should be @2@.
--
-- This command is an alias for 'Graphics.GL.Internal.Shared.glVertexAttrib2fv'.
glVertexAttrib2fvNV :: MonadIO m => GLuint -> Ptr GLfloat -> m ()
glVertexAttrib2fvNV = ffiuintPtrfloatIOV glVertexAttrib2fvNVFunPtr
glVertexAttrib2fvNVFunPtr :: FunPtr (GLuint -> Ptr GLfloat -> IO ())
glVertexAttrib2fvNVFunPtr = unsafePerformIO (getProcAddress "glVertexAttrib2fvNV")
{-# NOINLINE glVertexAttrib2fvNVFunPtr #-}
-- | Usage: @'glVertexAttrib2sNV' index x y@
--
-- This command is an alias for 'Graphics.GL.Internal.Shared.glVertexAttrib2s'.
--
-- The vector equivalent of this command is 'Graphics.GL.Ext.NV.VertexProgram.glVertexAttrib2svNV'.
glVertexAttrib2sNV :: MonadIO m => GLuint -> GLshort -> GLshort -> m ()
glVertexAttrib2sNV = ffiuintshortshortIOV glVertexAttrib2sNVFunPtr
glVertexAttrib2sNVFunPtr :: FunPtr (GLuint -> GLshort -> GLshort -> IO ())
glVertexAttrib2sNVFunPtr = unsafePerformIO (getProcAddress "glVertexAttrib2sNV")
{-# NOINLINE glVertexAttrib2sNVFunPtr #-}
-- | Usage: @'glVertexAttrib2svNV' index v@
--
-- The length of @v@ should be @2@.
--
-- This command is an alias for 'Graphics.GL.Internal.Shared.glVertexAttrib2sv'.
glVertexAttrib2svNV :: MonadIO m => GLuint -> Ptr GLshort -> m ()
glVertexAttrib2svNV = ffiuintPtrshortIOV glVertexAttrib2svNVFunPtr
glVertexAttrib2svNVFunPtr :: FunPtr (GLuint -> Ptr GLshort -> IO ())
glVertexAttrib2svNVFunPtr = unsafePerformIO (getProcAddress "glVertexAttrib2svNV")
{-# NOINLINE glVertexAttrib2svNVFunPtr #-}
-- | Usage: @'glVertexAttrib3dNV' index x y z@
--
-- This command is an alias for 'Graphics.GL.Internal.Shared.glVertexAttrib3d'.
--
-- The vector equivalent of this command is 'Graphics.GL.Ext.NV.VertexProgram.glVertexAttrib3dvNV'.
glVertexAttrib3dNV :: MonadIO m => GLuint -> GLdouble -> GLdouble -> GLdouble -> m ()
glVertexAttrib3dNV = ffiuintdoubledoubledoubleIOV glVertexAttrib3dNVFunPtr
glVertexAttrib3dNVFunPtr :: FunPtr (GLuint -> GLdouble -> GLdouble -> GLdouble -> IO ())
glVertexAttrib3dNVFunPtr = unsafePerformIO (getProcAddress "glVertexAttrib3dNV")
{-# NOINLINE glVertexAttrib3dNVFunPtr #-}
-- | Usage: @'glVertexAttrib3dvNV' index v@
--
-- The length of @v@ should be @3@.
--
-- This command is an alias for 'Graphics.GL.Internal.Shared.glVertexAttrib3dv'.
glVertexAttrib3dvNV :: MonadIO m => GLuint -> Ptr GLdouble -> m ()
glVertexAttrib3dvNV = ffiuintPtrdoubleIOV glVertexAttrib3dvNVFunPtr
glVertexAttrib3dvNVFunPtr :: FunPtr (GLuint -> Ptr GLdouble -> IO ())
glVertexAttrib3dvNVFunPtr = unsafePerformIO (getProcAddress "glVertexAttrib3dvNV")
{-# NOINLINE glVertexAttrib3dvNVFunPtr #-}
-- | Usage: @'glVertexAttrib3fNV' index x y z@
--
-- This command is an alias for 'Graphics.GL.Internal.Shared.glVertexAttrib3f'.
--
-- The vector equivalent of this command is 'Graphics.GL.Ext.NV.VertexProgram.glVertexAttrib3fvNV'.
glVertexAttrib3fNV :: MonadIO m => GLuint -> GLfloat -> GLfloat -> GLfloat -> m ()
glVertexAttrib3fNV = ffiuintfloatfloatfloatIOV glVertexAttrib3fNVFunPtr
glVertexAttrib3fNVFunPtr :: FunPtr (GLuint -> GLfloat -> GLfloat -> GLfloat -> IO ())
glVertexAttrib3fNVFunPtr = unsafePerformIO (getProcAddress "glVertexAttrib3fNV")
{-# NOINLINE glVertexAttrib3fNVFunPtr #-}
-- | Usage: @'glVertexAttrib3fvNV' index v@
--
-- The length of @v@ should be @3@.
--
-- This command is an alias for 'Graphics.GL.Internal.Shared.glVertexAttrib3fv'.
glVertexAttrib3fvNV :: MonadIO m => GLuint -> Ptr GLfloat -> m ()
glVertexAttrib3fvNV = ffiuintPtrfloatIOV glVertexAttrib3fvNVFunPtr
glVertexAttrib3fvNVFunPtr :: FunPtr (GLuint -> Ptr GLfloat -> IO ())
glVertexAttrib3fvNVFunPtr = unsafePerformIO (getProcAddress "glVertexAttrib3fvNV")
{-# NOINLINE glVertexAttrib3fvNVFunPtr #-}
-- | Usage: @'glVertexAttrib3sNV' index x y z@
--
-- This command is an alias for 'Graphics.GL.Internal.Shared.glVertexAttrib3s'.
--
-- The vector equivalent of this command is 'Graphics.GL.Ext.NV.VertexProgram.glVertexAttrib3svNV'.
glVertexAttrib3sNV :: MonadIO m => GLuint -> GLshort -> GLshort -> GLshort -> m ()
glVertexAttrib3sNV = ffiuintshortshortshortIOV glVertexAttrib3sNVFunPtr
glVertexAttrib3sNVFunPtr :: FunPtr (GLuint -> GLshort -> GLshort -> GLshort -> IO ())
glVertexAttrib3sNVFunPtr = unsafePerformIO (getProcAddress "glVertexAttrib3sNV")
{-# NOINLINE glVertexAttrib3sNVFunPtr #-}
-- | Usage: @'glVertexAttrib3svNV' index v@
--
-- The length of @v@ should be @3@.
--
-- This command is an alias for 'Graphics.GL.Internal.Shared.glVertexAttrib3sv'.
glVertexAttrib3svNV :: MonadIO m => GLuint -> Ptr GLshort -> m ()
glVertexAttrib3svNV = ffiuintPtrshortIOV glVertexAttrib3svNVFunPtr
glVertexAttrib3svNVFunPtr :: FunPtr (GLuint -> Ptr GLshort -> IO ())
glVertexAttrib3svNVFunPtr = unsafePerformIO (getProcAddress "glVertexAttrib3svNV")
{-# NOINLINE glVertexAttrib3svNVFunPtr #-}
-- | Usage: @'glVertexAttrib4dNV' 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.Ext.NV.VertexProgram.glVertexAttrib4dvNV'.
glVertexAttrib4dNV :: MonadIO m => GLuint -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> m ()
glVertexAttrib4dNV = ffiuintdoubledoubledoubledoubleIOV glVertexAttrib4dNVFunPtr
glVertexAttrib4dNVFunPtr :: FunPtr (GLuint -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ())
glVertexAttrib4dNVFunPtr = unsafePerformIO (getProcAddress "glVertexAttrib4dNV")
{-# NOINLINE glVertexAttrib4dNVFunPtr #-}
-- | Usage: @'glVertexAttrib4dvNV' index v@
--
-- The length of @v@ should be @4@.
--
-- This command is an alias for 'Graphics.GL.Internal.Shared.glVertexAttrib4dv'.
glVertexAttrib4dvNV :: MonadIO m => GLuint -> Ptr GLdouble -> m ()
glVertexAttrib4dvNV = ffiuintPtrdoubleIOV glVertexAttrib4dvNVFunPtr
glVertexAttrib4dvNVFunPtr :: FunPtr (GLuint -> Ptr GLdouble -> IO ())
glVertexAttrib4dvNVFunPtr = unsafePerformIO (getProcAddress "glVertexAttrib4dvNV")
{-# NOINLINE glVertexAttrib4dvNVFunPtr #-}
-- | Usage: @'glVertexAttrib4fNV' 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.Ext.NV.VertexProgram.glVertexAttrib4fvNV'.
glVertexAttrib4fNV :: MonadIO m => GLuint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> m ()
glVertexAttrib4fNV = ffiuintfloatfloatfloatfloatIOV glVertexAttrib4fNVFunPtr
glVertexAttrib4fNVFunPtr :: FunPtr (GLuint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
glVertexAttrib4fNVFunPtr = unsafePerformIO (getProcAddress "glVertexAttrib4fNV")
{-# NOINLINE glVertexAttrib4fNVFunPtr #-}
-- | Usage: @'glVertexAttrib4fvNV' index v@
--
-- The length of @v@ should be @4@.
--
-- This command is an alias for 'Graphics.GL.Internal.Shared.glVertexAttrib4fv'.
glVertexAttrib4fvNV :: MonadIO m => GLuint -> Ptr GLfloat -> m ()
glVertexAttrib4fvNV = ffiuintPtrfloatIOV glVertexAttrib4fvNVFunPtr
glVertexAttrib4fvNVFunPtr :: FunPtr (GLuint -> Ptr GLfloat -> IO ())
glVertexAttrib4fvNVFunPtr = unsafePerformIO (getProcAddress "glVertexAttrib4fvNV")
{-# NOINLINE glVertexAttrib4fvNVFunPtr #-}
-- | Usage: @'glVertexAttrib4sNV' 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.Ext.NV.VertexProgram.glVertexAttrib4svNV'.
glVertexAttrib4sNV :: MonadIO m => GLuint -> GLshort -> GLshort -> GLshort -> GLshort -> m ()
glVertexAttrib4sNV = ffiuintshortshortshortshortIOV glVertexAttrib4sNVFunPtr
glVertexAttrib4sNVFunPtr :: FunPtr (GLuint -> GLshort -> GLshort -> GLshort -> GLshort -> IO ())
glVertexAttrib4sNVFunPtr = unsafePerformIO (getProcAddress "glVertexAttrib4sNV")
{-# NOINLINE glVertexAttrib4sNVFunPtr #-}
-- | Usage: @'glVertexAttrib4svNV' index v@
--
-- The length of @v@ should be @4@.
--
-- This command is an alias for 'Graphics.GL.Internal.Shared.glVertexAttrib4sv'.
glVertexAttrib4svNV :: MonadIO m => GLuint -> Ptr GLshort -> m ()
glVertexAttrib4svNV = ffiuintPtrshortIOV glVertexAttrib4svNVFunPtr
glVertexAttrib4svNVFunPtr :: FunPtr (GLuint -> Ptr GLshort -> IO ())
glVertexAttrib4svNVFunPtr = unsafePerformIO (getProcAddress "glVertexAttrib4svNV")
{-# NOINLINE glVertexAttrib4svNVFunPtr #-}
-- | Usage: @'glVertexAttrib4ubNV' index x y z w@
--
-- The parameter @x@ is a @ColorUB@.
--
-- The parameter @y@ is a @ColorUB@.
--
-- The parameter @z@ is a @ColorUB@.
--
-- The parameter @w@ is a @ColorUB@.
--
-- This command is an alias for 'Graphics.GL.Internal.Shared.glVertexAttrib4Nub'.
--
-- The vector equivalent of this command is 'Graphics.GL.Ext.NV.VertexProgram.glVertexAttrib4ubvNV'.
glVertexAttrib4ubNV :: MonadIO m => GLuint -> GLubyte -> GLubyte -> GLubyte -> GLubyte -> m ()
glVertexAttrib4ubNV = ffiuintubyteubyteubyteubyteIOV glVertexAttrib4ubNVFunPtr
glVertexAttrib4ubNVFunPtr :: FunPtr (GLuint -> GLubyte -> GLubyte -> GLubyte -> GLubyte -> IO ())
glVertexAttrib4ubNVFunPtr = unsafePerformIO (getProcAddress "glVertexAttrib4ubNV")
{-# NOINLINE glVertexAttrib4ubNVFunPtr #-}
-- | Usage: @'glVertexAttrib4ubvNV' index v@
--
-- The parameter @v@ is a @ColorUB@.
--
-- The length of @v@ should be @4@.
--
-- This command is an alias for 'Graphics.GL.Internal.Shared.glVertexAttrib4Nubv'.
glVertexAttrib4ubvNV :: MonadIO m => GLuint -> Ptr GLubyte -> m ()
glVertexAttrib4ubvNV = ffiuintPtrubyteIOV glVertexAttrib4ubvNVFunPtr
glVertexAttrib4ubvNVFunPtr :: FunPtr (GLuint -> Ptr GLubyte -> IO ())
glVertexAttrib4ubvNVFunPtr = unsafePerformIO (getProcAddress "glVertexAttrib4ubvNV")
{-# NOINLINE glVertexAttrib4ubvNVFunPtr #-}
-- | Usage: @'glVertexAttribPointerNV' index fsize type stride pointer@
--
-- The parameter @type@ is a @VertexAttribEnumNV@.
--
-- The length of @pointer@ should be @COMPSIZE(fsize,type,stride)@.
glVertexAttribPointerNV :: MonadIO m => GLuint -> GLint -> GLenum -> GLsizei -> Ptr () -> m ()
glVertexAttribPointerNV = ffiuintintenumsizeiPtrVIOV glVertexAttribPointerNVFunPtr
glVertexAttribPointerNVFunPtr :: FunPtr (GLuint -> GLint -> GLenum -> GLsizei -> Ptr () -> IO ())
glVertexAttribPointerNVFunPtr = unsafePerformIO (getProcAddress "glVertexAttribPointerNV")
{-# NOINLINE glVertexAttribPointerNVFunPtr #-}
-- | Usage: @'glVertexAttribs1dvNV' index count v@
--
-- The length of @v@ should be @count@.
glVertexAttribs1dvNV :: MonadIO m => GLuint -> GLsizei -> Ptr GLdouble -> m ()
glVertexAttribs1dvNV = ffiuintsizeiPtrdoubleIOV glVertexAttribs1dvNVFunPtr
glVertexAttribs1dvNVFunPtr :: FunPtr (GLuint -> GLsizei -> Ptr GLdouble -> IO ())
glVertexAttribs1dvNVFunPtr = unsafePerformIO (getProcAddress "glVertexAttribs1dvNV")
{-# NOINLINE glVertexAttribs1dvNVFunPtr #-}
-- | Usage: @'glVertexAttribs1fvNV' index count v@
--
-- The length of @v@ should be @count@.
glVertexAttribs1fvNV :: MonadIO m => GLuint -> GLsizei -> Ptr GLfloat -> m ()
glVertexAttribs1fvNV = ffiuintsizeiPtrfloatIOV glVertexAttribs1fvNVFunPtr
glVertexAttribs1fvNVFunPtr :: FunPtr (GLuint -> GLsizei -> Ptr GLfloat -> IO ())
glVertexAttribs1fvNVFunPtr = unsafePerformIO (getProcAddress "glVertexAttribs1fvNV")
{-# NOINLINE glVertexAttribs1fvNVFunPtr #-}
-- | Usage: @'glVertexAttribs1svNV' index count v@
--
-- The length of @v@ should be @count@.
glVertexAttribs1svNV :: MonadIO m => GLuint -> GLsizei -> Ptr GLshort -> m ()
glVertexAttribs1svNV = ffiuintsizeiPtrshortIOV glVertexAttribs1svNVFunPtr
glVertexAttribs1svNVFunPtr :: FunPtr (GLuint -> GLsizei -> Ptr GLshort -> IO ())
glVertexAttribs1svNVFunPtr = unsafePerformIO (getProcAddress "glVertexAttribs1svNV")
{-# NOINLINE glVertexAttribs1svNVFunPtr #-}
-- | Usage: @'glVertexAttribs2dvNV' index count v@
--
-- The length of @v@ should be @count*2@.
glVertexAttribs2dvNV :: MonadIO m => GLuint -> GLsizei -> Ptr GLdouble -> m ()
glVertexAttribs2dvNV = ffiuintsizeiPtrdoubleIOV glVertexAttribs2dvNVFunPtr
glVertexAttribs2dvNVFunPtr :: FunPtr (GLuint -> GLsizei -> Ptr GLdouble -> IO ())
glVertexAttribs2dvNVFunPtr = unsafePerformIO (getProcAddress "glVertexAttribs2dvNV")
{-# NOINLINE glVertexAttribs2dvNVFunPtr #-}
-- | Usage: @'glVertexAttribs2fvNV' index count v@
--
-- The length of @v@ should be @count*2@.
glVertexAttribs2fvNV :: MonadIO m => GLuint -> GLsizei -> Ptr GLfloat -> m ()
glVertexAttribs2fvNV = ffiuintsizeiPtrfloatIOV glVertexAttribs2fvNVFunPtr
glVertexAttribs2fvNVFunPtr :: FunPtr (GLuint -> GLsizei -> Ptr GLfloat -> IO ())
glVertexAttribs2fvNVFunPtr = unsafePerformIO (getProcAddress "glVertexAttribs2fvNV")
{-# NOINLINE glVertexAttribs2fvNVFunPtr #-}
-- | Usage: @'glVertexAttribs2svNV' index count v@
--
-- The length of @v@ should be @count*2@.
glVertexAttribs2svNV :: MonadIO m => GLuint -> GLsizei -> Ptr GLshort -> m ()
glVertexAttribs2svNV = ffiuintsizeiPtrshortIOV glVertexAttribs2svNVFunPtr
glVertexAttribs2svNVFunPtr :: FunPtr (GLuint -> GLsizei -> Ptr GLshort -> IO ())
glVertexAttribs2svNVFunPtr = unsafePerformIO (getProcAddress "glVertexAttribs2svNV")
{-# NOINLINE glVertexAttribs2svNVFunPtr #-}
-- | Usage: @'glVertexAttribs3dvNV' index count v@
--
-- The length of @v@ should be @count*3@.
glVertexAttribs3dvNV :: MonadIO m => GLuint -> GLsizei -> Ptr GLdouble -> m ()
glVertexAttribs3dvNV = ffiuintsizeiPtrdoubleIOV glVertexAttribs3dvNVFunPtr
glVertexAttribs3dvNVFunPtr :: FunPtr (GLuint -> GLsizei -> Ptr GLdouble -> IO ())
glVertexAttribs3dvNVFunPtr = unsafePerformIO (getProcAddress "glVertexAttribs3dvNV")
{-# NOINLINE glVertexAttribs3dvNVFunPtr #-}
-- | Usage: @'glVertexAttribs3fvNV' index count v@
--
-- The length of @v@ should be @count*3@.
glVertexAttribs3fvNV :: MonadIO m => GLuint -> GLsizei -> Ptr GLfloat -> m ()
glVertexAttribs3fvNV = ffiuintsizeiPtrfloatIOV glVertexAttribs3fvNVFunPtr
glVertexAttribs3fvNVFunPtr :: FunPtr (GLuint -> GLsizei -> Ptr GLfloat -> IO ())
glVertexAttribs3fvNVFunPtr = unsafePerformIO (getProcAddress "glVertexAttribs3fvNV")
{-# NOINLINE glVertexAttribs3fvNVFunPtr #-}
-- | Usage: @'glVertexAttribs3svNV' index count v@
--
-- The length of @v@ should be @count*3@.
glVertexAttribs3svNV :: MonadIO m => GLuint -> GLsizei -> Ptr GLshort -> m ()
glVertexAttribs3svNV = ffiuintsizeiPtrshortIOV glVertexAttribs3svNVFunPtr
glVertexAttribs3svNVFunPtr :: FunPtr (GLuint -> GLsizei -> Ptr GLshort -> IO ())
glVertexAttribs3svNVFunPtr = unsafePerformIO (getProcAddress "glVertexAttribs3svNV")
{-# NOINLINE glVertexAttribs3svNVFunPtr #-}
-- | Usage: @'glVertexAttribs4dvNV' index count v@
--
-- The length of @v@ should be @count*4@.
glVertexAttribs4dvNV :: MonadIO m => GLuint -> GLsizei -> Ptr GLdouble -> m ()
glVertexAttribs4dvNV = ffiuintsizeiPtrdoubleIOV glVertexAttribs4dvNVFunPtr
glVertexAttribs4dvNVFunPtr :: FunPtr (GLuint -> GLsizei -> Ptr GLdouble -> IO ())
glVertexAttribs4dvNVFunPtr = unsafePerformIO (getProcAddress "glVertexAttribs4dvNV")
{-# NOINLINE glVertexAttribs4dvNVFunPtr #-}
-- | Usage: @'glVertexAttribs4fvNV' index count v@
--
-- The length of @v@ should be @count*4@.
glVertexAttribs4fvNV :: MonadIO m => GLuint -> GLsizei -> Ptr GLfloat -> m ()
glVertexAttribs4fvNV = ffiuintsizeiPtrfloatIOV glVertexAttribs4fvNVFunPtr
glVertexAttribs4fvNVFunPtr :: FunPtr (GLuint -> GLsizei -> Ptr GLfloat -> IO ())
glVertexAttribs4fvNVFunPtr = unsafePerformIO (getProcAddress "glVertexAttribs4fvNV")
{-# NOINLINE glVertexAttribs4fvNVFunPtr #-}
-- | Usage: @'glVertexAttribs4svNV' index count v@
--
-- The length of @v@ should be @count*4@.
glVertexAttribs4svNV :: MonadIO m => GLuint -> GLsizei -> Ptr GLshort -> m ()
glVertexAttribs4svNV = ffiuintsizeiPtrshortIOV glVertexAttribs4svNVFunPtr
glVertexAttribs4svNVFunPtr :: FunPtr (GLuint -> GLsizei -> Ptr GLshort -> IO ())
glVertexAttribs4svNVFunPtr = unsafePerformIO (getProcAddress "glVertexAttribs4svNV")
{-# NOINLINE glVertexAttribs4svNVFunPtr #-}
-- | Usage: @'glVertexAttribs4ubvNV' index count v@
--
-- The parameter @v@ is a @ColorUB@.
--
-- The length of @v@ should be @count*4@.
glVertexAttribs4ubvNV :: MonadIO m => GLuint -> GLsizei -> Ptr GLubyte -> m ()
glVertexAttribs4ubvNV = ffiuintsizeiPtrubyteIOV glVertexAttribs4ubvNVFunPtr
glVertexAttribs4ubvNVFunPtr :: FunPtr (GLuint -> GLsizei -> Ptr GLubyte -> IO ())
glVertexAttribs4ubvNVFunPtr = unsafePerformIO (getProcAddress "glVertexAttribs4ubvNV")
{-# NOINLINE glVertexAttribs4ubvNVFunPtr #-}
pattern GL_ATTRIB_ARRAY_POINTER_NV = 0x8645
pattern GL_ATTRIB_ARRAY_SIZE_NV = 0x8623
pattern GL_ATTRIB_ARRAY_STRIDE_NV = 0x8624
pattern GL_ATTRIB_ARRAY_TYPE_NV = 0x8625
pattern GL_CURRENT_ATTRIB_NV = 0x8626
pattern GL_CURRENT_MATRIX_NV = 0x8641
pattern GL_CURRENT_MATRIX_STACK_DEPTH_NV = 0x8640
pattern GL_IDENTITY_NV = 0x862A
pattern GL_INVERSE_NV = 0x862B
pattern GL_INVERSE_TRANSPOSE_NV = 0x862D
pattern GL_MAP1_VERTEX_ATTRIB0_4_NV = 0x8660
pattern GL_MAP1_VERTEX_ATTRIB10_4_NV = 0x866A
pattern GL_MAP1_VERTEX_ATTRIB11_4_NV = 0x866B
pattern GL_MAP1_VERTEX_ATTRIB12_4_NV = 0x866C
pattern GL_MAP1_VERTEX_ATTRIB13_4_NV = 0x866D
pattern GL_MAP1_VERTEX_ATTRIB14_4_NV = 0x866E
pattern GL_MAP1_VERTEX_ATTRIB15_4_NV = 0x866F
pattern GL_MAP1_VERTEX_ATTRIB1_4_NV = 0x8661
pattern GL_MAP1_VERTEX_ATTRIB2_4_NV = 0x8662
pattern GL_MAP1_VERTEX_ATTRIB3_4_NV = 0x8663
pattern GL_MAP1_VERTEX_ATTRIB4_4_NV = 0x8664
pattern GL_MAP1_VERTEX_ATTRIB5_4_NV = 0x8665
pattern GL_MAP1_VERTEX_ATTRIB6_4_NV = 0x8666
pattern GL_MAP1_VERTEX_ATTRIB7_4_NV = 0x8667
pattern GL_MAP1_VERTEX_ATTRIB8_4_NV = 0x8668
pattern GL_MAP1_VERTEX_ATTRIB9_4_NV = 0x8669
pattern GL_MAP2_VERTEX_ATTRIB0_4_NV = 0x8670
pattern GL_MAP2_VERTEX_ATTRIB10_4_NV = 0x867A
pattern GL_MAP2_VERTEX_ATTRIB11_4_NV = 0x867B
pattern GL_MAP2_VERTEX_ATTRIB12_4_NV = 0x867C
pattern GL_MAP2_VERTEX_ATTRIB13_4_NV = 0x867D
pattern GL_MAP2_VERTEX_ATTRIB14_4_NV = 0x867E
pattern GL_MAP2_VERTEX_ATTRIB15_4_NV = 0x867F
pattern GL_MAP2_VERTEX_ATTRIB1_4_NV = 0x8671
pattern GL_MAP2_VERTEX_ATTRIB2_4_NV = 0x8672
pattern GL_MAP2_VERTEX_ATTRIB3_4_NV = 0x8673
pattern GL_MAP2_VERTEX_ATTRIB4_4_NV = 0x8674
pattern GL_MAP2_VERTEX_ATTRIB5_4_NV = 0x8675
pattern GL_MAP2_VERTEX_ATTRIB6_4_NV = 0x8676
pattern GL_MAP2_VERTEX_ATTRIB7_4_NV = 0x8677
pattern GL_MAP2_VERTEX_ATTRIB8_4_NV = 0x8678
pattern GL_MAP2_VERTEX_ATTRIB9_4_NV = 0x8679
pattern GL_MATRIX0_NV = 0x8630
pattern GL_MATRIX1_NV = 0x8631
pattern GL_MATRIX2_NV = 0x8632
pattern GL_MATRIX3_NV = 0x8633
pattern GL_MATRIX4_NV = 0x8634
pattern GL_MATRIX5_NV = 0x8635
pattern GL_MATRIX6_NV = 0x8636
pattern GL_MATRIX7_NV = 0x8637
pattern GL_MAX_TRACK_MATRICES_NV = 0x862F
pattern GL_MAX_TRACK_MATRIX_STACK_DEPTH_NV = 0x862E
pattern GL_MODELVIEW_PROJECTION_NV = 0x8629
pattern GL_PROGRAM_ERROR_POSITION_NV = 0x864B
pattern GL_PROGRAM_LENGTH_NV = 0x8627
pattern GL_PROGRAM_PARAMETER_NV = 0x8644
pattern GL_PROGRAM_RESIDENT_NV = 0x8647
pattern GL_PROGRAM_STRING_NV = 0x8628
pattern GL_PROGRAM_TARGET_NV = 0x8646
pattern GL_TRACK_MATRIX_NV = 0x8648
pattern GL_TRACK_MATRIX_TRANSFORM_NV = 0x8649
pattern GL_TRANSPOSE_NV = 0x862C
pattern GL_VERTEX_ATTRIB_ARRAY0_NV = 0x8650
pattern GL_VERTEX_ATTRIB_ARRAY10_NV = 0x865A
pattern GL_VERTEX_ATTRIB_ARRAY11_NV = 0x865B
pattern GL_VERTEX_ATTRIB_ARRAY12_NV = 0x865C
pattern GL_VERTEX_ATTRIB_ARRAY13_NV = 0x865D
pattern GL_VERTEX_ATTRIB_ARRAY14_NV = 0x865E
pattern GL_VERTEX_ATTRIB_ARRAY15_NV = 0x865F
pattern GL_VERTEX_ATTRIB_ARRAY1_NV = 0x8651
pattern GL_VERTEX_ATTRIB_ARRAY2_NV = 0x8652
pattern GL_VERTEX_ATTRIB_ARRAY3_NV = 0x8653
pattern GL_VERTEX_ATTRIB_ARRAY4_NV = 0x8654
pattern GL_VERTEX_ATTRIB_ARRAY5_NV = 0x8655
pattern GL_VERTEX_ATTRIB_ARRAY6_NV = 0x8656
pattern GL_VERTEX_ATTRIB_ARRAY7_NV = 0x8657
pattern GL_VERTEX_ATTRIB_ARRAY8_NV = 0x8658
pattern GL_VERTEX_ATTRIB_ARRAY9_NV = 0x8659
pattern GL_VERTEX_PROGRAM_BINDING_NV = 0x864A
pattern GL_VERTEX_PROGRAM_NV = 0x8620
pattern GL_VERTEX_PROGRAM_POINT_SIZE_NV = 0x8642
pattern GL_VERTEX_PROGRAM_TWO_SIDE_NV = 0x8643
pattern GL_VERTEX_STATE_PROGRAM_NV = 0x8621