gl-0.9: generated-src/Graphics/GL/Ext/NV/FragmentProgram.hs
-- This file was automatically generated.
{-# LANGUAGE CPP, ScopedTypeVariables, PatternSynonyms #-}
module Graphics.GL.Ext.NV.FragmentProgram (
-- * Extension Support
gl_NV_fragment_program
-- * GL_NV_fragment_program
, glGetProgramNamedParameterdvNV
, glGetProgramNamedParameterfvNV
, glProgramNamedParameter4dNV
, glProgramNamedParameter4dvNV
, glProgramNamedParameter4fNV
, glProgramNamedParameter4fvNV
, pattern GL_FRAGMENT_PROGRAM_BINDING_NV
, pattern GL_FRAGMENT_PROGRAM_NV
, pattern GL_MAX_FRAGMENT_PROGRAM_LOCAL_PARAMETERS_NV
, pattern GL_MAX_TEXTURE_COORDS_NV
, pattern GL_MAX_TEXTURE_IMAGE_UNITS_NV
, pattern GL_PROGRAM_ERROR_STRING_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/fragment_program.txt GL_NV_fragment_program> extension is available.
gl_NV_fragment_program :: Bool
gl_NV_fragment_program = member "GL_NV_fragment_program" extensions
{-# NOINLINE gl_NV_fragment_program #-}
-- | Usage: @'glGetProgramNamedParameterdvNV' id len name params@
--
-- The length of @name@ should be @1@.
--
-- The length of @params@ should be @4@.
glGetProgramNamedParameterdvNV :: MonadIO m => GLuint -> GLsizei -> Ptr GLubyte -> Ptr GLdouble -> m ()
glGetProgramNamedParameterdvNV = ffiuintsizeiPtrubytePtrdoubleIOV glGetProgramNamedParameterdvNVFunPtr
glGetProgramNamedParameterdvNVFunPtr :: FunPtr (GLuint -> GLsizei -> Ptr GLubyte -> Ptr GLdouble -> IO ())
glGetProgramNamedParameterdvNVFunPtr = unsafePerformIO (getProcAddress "glGetProgramNamedParameterdvNV")
{-# NOINLINE glGetProgramNamedParameterdvNVFunPtr #-}
-- | Usage: @'glGetProgramNamedParameterfvNV' id len name params@
--
-- The length of @name@ should be @1@.
--
-- The length of @params@ should be @4@.
glGetProgramNamedParameterfvNV :: MonadIO m => GLuint -> GLsizei -> Ptr GLubyte -> Ptr GLfloat -> m ()
glGetProgramNamedParameterfvNV = ffiuintsizeiPtrubytePtrfloatIOV glGetProgramNamedParameterfvNVFunPtr
glGetProgramNamedParameterfvNVFunPtr :: FunPtr (GLuint -> GLsizei -> Ptr GLubyte -> Ptr GLfloat -> IO ())
glGetProgramNamedParameterfvNVFunPtr = unsafePerformIO (getProcAddress "glGetProgramNamedParameterfvNV")
{-# NOINLINE glGetProgramNamedParameterfvNVFunPtr #-}
-- | Usage: @'glProgramNamedParameter4dNV' id len name x y z w@
--
-- The length of @name@ should be @1@.
--
-- The vector equivalent of this command is 'Graphics.GL.Ext.NV.FragmentProgram.glProgramNamedParameter4dvNV'.
glProgramNamedParameter4dNV :: MonadIO m => GLuint -> GLsizei -> Ptr GLubyte -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> m ()
glProgramNamedParameter4dNV = ffiuintsizeiPtrubytedoubledoubledoubledoubleIOV glProgramNamedParameter4dNVFunPtr
glProgramNamedParameter4dNVFunPtr :: FunPtr (GLuint -> GLsizei -> Ptr GLubyte -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ())
glProgramNamedParameter4dNVFunPtr = unsafePerformIO (getProcAddress "glProgramNamedParameter4dNV")
{-# NOINLINE glProgramNamedParameter4dNVFunPtr #-}
-- | Usage: @'glProgramNamedParameter4dvNV' id len name v@
--
-- The length of @name@ should be @1@.
--
-- The length of @v@ should be @4@.
glProgramNamedParameter4dvNV :: MonadIO m => GLuint -> GLsizei -> Ptr GLubyte -> Ptr GLdouble -> m ()
glProgramNamedParameter4dvNV = ffiuintsizeiPtrubytePtrdoubleIOV glProgramNamedParameter4dvNVFunPtr
glProgramNamedParameter4dvNVFunPtr :: FunPtr (GLuint -> GLsizei -> Ptr GLubyte -> Ptr GLdouble -> IO ())
glProgramNamedParameter4dvNVFunPtr = unsafePerformIO (getProcAddress "glProgramNamedParameter4dvNV")
{-# NOINLINE glProgramNamedParameter4dvNVFunPtr #-}
-- | Usage: @'glProgramNamedParameter4fNV' id len name x y z w@
--
-- The length of @name@ should be @1@.
--
-- The vector equivalent of this command is 'Graphics.GL.Ext.NV.FragmentProgram.glProgramNamedParameter4fvNV'.
glProgramNamedParameter4fNV :: MonadIO m => GLuint -> GLsizei -> Ptr GLubyte -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> m ()
glProgramNamedParameter4fNV = ffiuintsizeiPtrubytefloatfloatfloatfloatIOV glProgramNamedParameter4fNVFunPtr
glProgramNamedParameter4fNVFunPtr :: FunPtr (GLuint -> GLsizei -> Ptr GLubyte -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
glProgramNamedParameter4fNVFunPtr = unsafePerformIO (getProcAddress "glProgramNamedParameter4fNV")
{-# NOINLINE glProgramNamedParameter4fNVFunPtr #-}
-- | Usage: @'glProgramNamedParameter4fvNV' id len name v@
--
-- The length of @name@ should be @1@.
--
-- The length of @v@ should be @4@.
glProgramNamedParameter4fvNV :: MonadIO m => GLuint -> GLsizei -> Ptr GLubyte -> Ptr GLfloat -> m ()
glProgramNamedParameter4fvNV = ffiuintsizeiPtrubytePtrfloatIOV glProgramNamedParameter4fvNVFunPtr
glProgramNamedParameter4fvNVFunPtr :: FunPtr (GLuint -> GLsizei -> Ptr GLubyte -> Ptr GLfloat -> IO ())
glProgramNamedParameter4fvNVFunPtr = unsafePerformIO (getProcAddress "glProgramNamedParameter4fvNV")
{-# NOINLINE glProgramNamedParameter4fvNVFunPtr #-}
pattern GL_FRAGMENT_PROGRAM_BINDING_NV = 0x8873
pattern GL_FRAGMENT_PROGRAM_NV = 0x8870
pattern GL_MAX_FRAGMENT_PROGRAM_LOCAL_PARAMETERS_NV = 0x8868
pattern GL_MAX_TEXTURE_COORDS_NV = 0x8871
pattern GL_MAX_TEXTURE_IMAGE_UNITS_NV = 0x8872
pattern GL_PROGRAM_ERROR_STRING_NV = 0x8874