gl-0.9: generated-src/Graphics/GL/Ext/NV/Evaluators.hs
-- This file was automatically generated.
{-# LANGUAGE CPP, ScopedTypeVariables, PatternSynonyms #-}
module Graphics.GL.Ext.NV.Evaluators (
-- * Extension Support
gl_NV_evaluators
-- * GL_NV_evaluators
, glEvalMapsNV
, glGetMapAttribParameterfvNV
, glGetMapAttribParameterivNV
, glGetMapControlPointsNV
, glGetMapParameterfvNV
, glGetMapParameterivNV
, glMapControlPointsNV
, glMapParameterfvNV
, glMapParameterivNV
, pattern GL_EVAL_2D_NV
, pattern GL_EVAL_FRACTIONAL_TESSELLATION_NV
, pattern GL_EVAL_TRIANGULAR_2D_NV
, pattern GL_EVAL_VERTEX_ATTRIB0_NV
, pattern GL_EVAL_VERTEX_ATTRIB10_NV
, pattern GL_EVAL_VERTEX_ATTRIB11_NV
, pattern GL_EVAL_VERTEX_ATTRIB12_NV
, pattern GL_EVAL_VERTEX_ATTRIB13_NV
, pattern GL_EVAL_VERTEX_ATTRIB14_NV
, pattern GL_EVAL_VERTEX_ATTRIB15_NV
, pattern GL_EVAL_VERTEX_ATTRIB1_NV
, pattern GL_EVAL_VERTEX_ATTRIB2_NV
, pattern GL_EVAL_VERTEX_ATTRIB3_NV
, pattern GL_EVAL_VERTEX_ATTRIB4_NV
, pattern GL_EVAL_VERTEX_ATTRIB5_NV
, pattern GL_EVAL_VERTEX_ATTRIB6_NV
, pattern GL_EVAL_VERTEX_ATTRIB7_NV
, pattern GL_EVAL_VERTEX_ATTRIB8_NV
, pattern GL_EVAL_VERTEX_ATTRIB9_NV
, pattern GL_MAP_ATTRIB_U_ORDER_NV
, pattern GL_MAP_ATTRIB_V_ORDER_NV
, pattern GL_MAP_TESSELLATION_NV
, pattern GL_MAX_MAP_TESSELLATION_NV
, pattern GL_MAX_RATIONAL_EVAL_ORDER_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/evaluators.txt GL_NV_evaluators> extension is available.
gl_NV_evaluators :: Bool
gl_NV_evaluators = member "GL_NV_evaluators" extensions
{-# NOINLINE gl_NV_evaluators #-}
-- | Usage: @'glEvalMapsNV' target mode@
--
-- The parameter @target@ is a @EvalTargetNV@.
--
-- The parameter @mode@ is a @EvalMapsModeNV@.
glEvalMapsNV :: MonadIO m => GLenum -> GLenum -> m ()
glEvalMapsNV = ffienumenumIOV glEvalMapsNVFunPtr
glEvalMapsNVFunPtr :: FunPtr (GLenum -> GLenum -> IO ())
glEvalMapsNVFunPtr = unsafePerformIO (getProcAddress "glEvalMapsNV")
{-# NOINLINE glEvalMapsNVFunPtr #-}
-- | Usage: @'glGetMapAttribParameterfvNV' target index pname params@
--
-- The parameter @target@ is a @EvalTargetNV@.
--
-- The parameter @pname@ is a @MapAttribParameterNV@.
--
-- The length of @params@ should be @COMPSIZE(pname)@.
glGetMapAttribParameterfvNV :: MonadIO m => GLenum -> GLuint -> GLenum -> Ptr GLfloat -> m ()
glGetMapAttribParameterfvNV = ffienumuintenumPtrfloatIOV glGetMapAttribParameterfvNVFunPtr
glGetMapAttribParameterfvNVFunPtr :: FunPtr (GLenum -> GLuint -> GLenum -> Ptr GLfloat -> IO ())
glGetMapAttribParameterfvNVFunPtr = unsafePerformIO (getProcAddress "glGetMapAttribParameterfvNV")
{-# NOINLINE glGetMapAttribParameterfvNVFunPtr #-}
-- | Usage: @'glGetMapAttribParameterivNV' target index pname params@
--
-- The parameter @target@ is a @EvalTargetNV@.
--
-- The parameter @pname@ is a @MapAttribParameterNV@.
--
-- The length of @params@ should be @COMPSIZE(pname)@.
glGetMapAttribParameterivNV :: MonadIO m => GLenum -> GLuint -> GLenum -> Ptr GLint -> m ()
glGetMapAttribParameterivNV = ffienumuintenumPtrintIOV glGetMapAttribParameterivNVFunPtr
glGetMapAttribParameterivNVFunPtr :: FunPtr (GLenum -> GLuint -> GLenum -> Ptr GLint -> IO ())
glGetMapAttribParameterivNVFunPtr = unsafePerformIO (getProcAddress "glGetMapAttribParameterivNV")
{-# NOINLINE glGetMapAttribParameterivNVFunPtr #-}
-- | Usage: @'glGetMapControlPointsNV' target index type ustride vstride packed points@
--
-- The parameter @target@ is a @EvalTargetNV@.
--
-- The parameter @type@ is a @MapTypeNV@.
--
-- The parameter @packed@ is a @Boolean@, one of: 'Graphics.GL.Internal.Shared.GL_FALSE', 'Graphics.GL.Internal.Shared.GL_TRUE'.
--
-- The length of @points@ should be @COMPSIZE(target)@.
glGetMapControlPointsNV :: MonadIO m => GLenum -> GLuint -> GLenum -> GLsizei -> GLsizei -> GLboolean -> Ptr () -> m ()
glGetMapControlPointsNV = ffienumuintenumsizeisizeibooleanPtrVIOV glGetMapControlPointsNVFunPtr
glGetMapControlPointsNVFunPtr :: FunPtr (GLenum -> GLuint -> GLenum -> GLsizei -> GLsizei -> GLboolean -> Ptr () -> IO ())
glGetMapControlPointsNVFunPtr = unsafePerformIO (getProcAddress "glGetMapControlPointsNV")
{-# NOINLINE glGetMapControlPointsNVFunPtr #-}
-- | Usage: @'glGetMapParameterfvNV' target pname params@
--
-- The parameter @target@ is a @EvalTargetNV@.
--
-- The parameter @pname@ is a @MapParameterNV@.
--
-- The length of @params@ should be @COMPSIZE(target,pname)@.
glGetMapParameterfvNV :: MonadIO m => GLenum -> GLenum -> Ptr GLfloat -> m ()
glGetMapParameterfvNV = ffienumenumPtrfloatIOV glGetMapParameterfvNVFunPtr
glGetMapParameterfvNVFunPtr :: FunPtr (GLenum -> GLenum -> Ptr GLfloat -> IO ())
glGetMapParameterfvNVFunPtr = unsafePerformIO (getProcAddress "glGetMapParameterfvNV")
{-# NOINLINE glGetMapParameterfvNVFunPtr #-}
-- | Usage: @'glGetMapParameterivNV' target pname params@
--
-- The parameter @target@ is a @EvalTargetNV@.
--
-- The parameter @pname@ is a @MapParameterNV@.
--
-- The length of @params@ should be @COMPSIZE(target,pname)@.
glGetMapParameterivNV :: MonadIO m => GLenum -> GLenum -> Ptr GLint -> m ()
glGetMapParameterivNV = ffienumenumPtrintIOV glGetMapParameterivNVFunPtr
glGetMapParameterivNVFunPtr :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
glGetMapParameterivNVFunPtr = unsafePerformIO (getProcAddress "glGetMapParameterivNV")
{-# NOINLINE glGetMapParameterivNVFunPtr #-}
-- | Usage: @'glMapControlPointsNV' target index type ustride vstride uorder vorder packed points@
--
-- The parameter @target@ is a @EvalTargetNV@.
--
-- The parameter @type@ is a @MapTypeNV@.
--
-- The parameter @uorder@ is a @CheckedInt32@.
--
-- The parameter @vorder@ is a @CheckedInt32@.
--
-- The parameter @packed@ is a @Boolean@, one of: 'Graphics.GL.Internal.Shared.GL_FALSE', 'Graphics.GL.Internal.Shared.GL_TRUE'.
--
-- The length of @points@ should be @COMPSIZE(target,uorder,vorder)@.
glMapControlPointsNV :: MonadIO m => GLenum -> GLuint -> GLenum -> GLsizei -> GLsizei -> GLint -> GLint -> GLboolean -> Ptr () -> m ()
glMapControlPointsNV = ffienumuintenumsizeisizeiintintbooleanPtrVIOV glMapControlPointsNVFunPtr
glMapControlPointsNVFunPtr :: FunPtr (GLenum -> GLuint -> GLenum -> GLsizei -> GLsizei -> GLint -> GLint -> GLboolean -> Ptr () -> IO ())
glMapControlPointsNVFunPtr = unsafePerformIO (getProcAddress "glMapControlPointsNV")
{-# NOINLINE glMapControlPointsNVFunPtr #-}
-- | Usage: @'glMapParameterfvNV' target pname params@
--
-- The parameter @target@ is a @EvalTargetNV@.
--
-- The parameter @pname@ is a @MapParameterNV@.
--
-- The parameter @params@ is a @CheckedFloat32@.
--
-- The length of @params@ should be @COMPSIZE(target,pname)@.
glMapParameterfvNV :: MonadIO m => GLenum -> GLenum -> Ptr GLfloat -> m ()
glMapParameterfvNV = ffienumenumPtrfloatIOV glMapParameterfvNVFunPtr
glMapParameterfvNVFunPtr :: FunPtr (GLenum -> GLenum -> Ptr GLfloat -> IO ())
glMapParameterfvNVFunPtr = unsafePerformIO (getProcAddress "glMapParameterfvNV")
{-# NOINLINE glMapParameterfvNVFunPtr #-}
-- | Usage: @'glMapParameterivNV' target pname params@
--
-- The parameter @target@ is a @EvalTargetNV@.
--
-- The parameter @pname@ is a @MapParameterNV@.
--
-- The parameter @params@ is a @CheckedInt32@.
--
-- The length of @params@ should be @COMPSIZE(target,pname)@.
glMapParameterivNV :: MonadIO m => GLenum -> GLenum -> Ptr GLint -> m ()
glMapParameterivNV = ffienumenumPtrintIOV glMapParameterivNVFunPtr
glMapParameterivNVFunPtr :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
glMapParameterivNVFunPtr = unsafePerformIO (getProcAddress "glMapParameterivNV")
{-# NOINLINE glMapParameterivNVFunPtr #-}
pattern GL_EVAL_2D_NV = 0x86C0
pattern GL_EVAL_FRACTIONAL_TESSELLATION_NV = 0x86C5
pattern GL_EVAL_TRIANGULAR_2D_NV = 0x86C1
pattern GL_EVAL_VERTEX_ATTRIB0_NV = 0x86C6
pattern GL_EVAL_VERTEX_ATTRIB10_NV = 0x86D0
pattern GL_EVAL_VERTEX_ATTRIB11_NV = 0x86D1
pattern GL_EVAL_VERTEX_ATTRIB12_NV = 0x86D2
pattern GL_EVAL_VERTEX_ATTRIB13_NV = 0x86D3
pattern GL_EVAL_VERTEX_ATTRIB14_NV = 0x86D4
pattern GL_EVAL_VERTEX_ATTRIB15_NV = 0x86D5
pattern GL_EVAL_VERTEX_ATTRIB1_NV = 0x86C7
pattern GL_EVAL_VERTEX_ATTRIB2_NV = 0x86C8
pattern GL_EVAL_VERTEX_ATTRIB3_NV = 0x86C9
pattern GL_EVAL_VERTEX_ATTRIB4_NV = 0x86CA
pattern GL_EVAL_VERTEX_ATTRIB5_NV = 0x86CB
pattern GL_EVAL_VERTEX_ATTRIB6_NV = 0x86CC
pattern GL_EVAL_VERTEX_ATTRIB7_NV = 0x86CD
pattern GL_EVAL_VERTEX_ATTRIB8_NV = 0x86CE
pattern GL_EVAL_VERTEX_ATTRIB9_NV = 0x86CF
pattern GL_MAP_ATTRIB_U_ORDER_NV = 0x86C3
pattern GL_MAP_ATTRIB_V_ORDER_NV = 0x86C4
pattern GL_MAP_TESSELLATION_NV = 0x86C2
pattern GL_MAX_MAP_TESSELLATION_NV = 0x86D6
pattern GL_MAX_RATIONAL_EVAL_ORDER_NV = 0x86D7