gl-0.7.3: dist/build/autogen/Graphics/GL/Ext/NV/ViewportArray.hs
-- This file was automatically generated.
{-# LANGUAGE CPP, ScopedTypeVariables, PatternSynonyms #-}
module Graphics.GL.Ext.NV.ViewportArray (
-- * Extension Support
gl_NV_viewport_array
-- * GL_NV_viewport_array
, glDepthRangeArrayfvNV
, glDepthRangeIndexedfNV
, glDisableiNV
, glEnableiNV
, glGetFloati_vNV
, glIsEnablediNV
, glScissorArrayvNV
, glScissorIndexedNV
, glScissorIndexedvNV
, glViewportArrayvNV
, glViewportIndexedfNV
, glViewportIndexedfvNV
, pattern GL_DEPTH_RANGE
, pattern GL_MAX_VIEWPORTS_NV
, pattern GL_SCISSOR_BOX
, pattern GL_SCISSOR_TEST
, pattern GL_VIEWPORT
, pattern GL_VIEWPORT_BOUNDS_RANGE_NV
, pattern GL_VIEWPORT_INDEX_PROVOKING_VERTEX_NV
, pattern GL_VIEWPORT_SUBPIXEL_BITS_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.Internal.Shared
import Graphics.GL.Types
import System.IO.Unsafe
-- | Checks that the GL_NV_viewport_array extension is available.
gl_NV_viewport_array :: Bool
gl_NV_viewport_array = member "GL_NV_viewport_array" extensions
{-# NOINLINE gl_NV_viewport_array #-}
-- | Usage: @'glDepthRangeArrayfvNV' first count v@
glDepthRangeArrayfvNV :: MonadIO m => GLuint -> GLsizei -> Ptr GLfloat -> m ()
glDepthRangeArrayfvNV = ffiuintsizeiPtrfloatIOV glDepthRangeArrayfvNVFunPtr
glDepthRangeArrayfvNVFunPtr :: FunPtr (GLuint -> GLsizei -> Ptr GLfloat -> IO ())
glDepthRangeArrayfvNVFunPtr = unsafePerformIO (getProcAddress "glDepthRangeArrayfvNV")
{-# NOINLINE glDepthRangeArrayfvNVFunPtr #-}
-- | Usage: @'glDepthRangeIndexedfNV' index n f@
glDepthRangeIndexedfNV :: MonadIO m => GLuint -> GLfloat -> GLfloat -> m ()
glDepthRangeIndexedfNV = ffiuintfloatfloatIOV glDepthRangeIndexedfNVFunPtr
glDepthRangeIndexedfNVFunPtr :: FunPtr (GLuint -> GLfloat -> GLfloat -> IO ())
glDepthRangeIndexedfNVFunPtr = unsafePerformIO (getProcAddress "glDepthRangeIndexedfNV")
{-# NOINLINE glDepthRangeIndexedfNVFunPtr #-}
-- | Usage: @'glDisableiNV' target index@
--
-- This command is an alias for 'Graphics.GL.Internal.Shared.glDisablei'.
glDisableiNV :: MonadIO m => GLenum -> GLuint -> m ()
glDisableiNV = ffienumuintIOV glDisableiNVFunPtr
glDisableiNVFunPtr :: FunPtr (GLenum -> GLuint -> IO ())
glDisableiNVFunPtr = unsafePerformIO (getProcAddress "glDisableiNV")
{-# NOINLINE glDisableiNVFunPtr #-}
-- | Usage: @'glEnableiNV' target index@
--
-- This command is an alias for 'Graphics.GL.Internal.Shared.glEnablei'.
glEnableiNV :: MonadIO m => GLenum -> GLuint -> m ()
glEnableiNV = ffienumuintIOV glEnableiNVFunPtr
glEnableiNVFunPtr :: FunPtr (GLenum -> GLuint -> IO ())
glEnableiNVFunPtr = unsafePerformIO (getProcAddress "glEnableiNV")
{-# NOINLINE glEnableiNVFunPtr #-}
-- | Usage: @'glGetFloati_vNV' target index data@
--
-- The parameter @target@ is a @TypeEnum@.
--
-- The length of @data@ should be @COMPSIZE(target)@.
--
-- This command is an alias for 'Graphics.GL.Internal.Shared.glGetFloati_v'.
glGetFloati_vNV :: MonadIO m => GLenum -> GLuint -> Ptr GLfloat -> m ()
glGetFloati_vNV = ffienumuintPtrfloatIOV glGetFloati_vNVFunPtr
glGetFloati_vNVFunPtr :: FunPtr (GLenum -> GLuint -> Ptr GLfloat -> IO ())
glGetFloati_vNVFunPtr = unsafePerformIO (getProcAddress "glGetFloati_vNV")
{-# NOINLINE glGetFloati_vNVFunPtr #-}
-- | Usage: @'glIsEnablediNV' target index@
--
-- This command is an alias for 'Graphics.GL.Internal.Shared.glIsEnabledi'.
glIsEnablediNV :: MonadIO m => GLenum -> GLuint -> m GLboolean
glIsEnablediNV = ffienumuintIOboolean glIsEnablediNVFunPtr
glIsEnablediNVFunPtr :: FunPtr (GLenum -> GLuint -> IO GLboolean)
glIsEnablediNVFunPtr = unsafePerformIO (getProcAddress "glIsEnablediNV")
{-# NOINLINE glIsEnablediNVFunPtr #-}
-- | Usage: @'glScissorArrayvNV' first count v@
--
-- The length of @v@ should be @COMPSIZE(count)@.
--
-- This command is an alias for 'Graphics.GL.Internal.Shared.glScissorArrayv'.
glScissorArrayvNV :: MonadIO m => GLuint -> GLsizei -> Ptr GLint -> m ()
glScissorArrayvNV = ffiuintsizeiPtrintIOV glScissorArrayvNVFunPtr
glScissorArrayvNVFunPtr :: FunPtr (GLuint -> GLsizei -> Ptr GLint -> IO ())
glScissorArrayvNVFunPtr = unsafePerformIO (getProcAddress "glScissorArrayvNV")
{-# NOINLINE glScissorArrayvNVFunPtr #-}
-- | Usage: @'glScissorIndexedNV' index left bottom width height@
--
-- This command is an alias for 'Graphics.GL.Internal.Shared.glScissorIndexed'.
glScissorIndexedNV :: MonadIO m => GLuint -> GLint -> GLint -> GLsizei -> GLsizei -> m ()
glScissorIndexedNV = ffiuintintintsizeisizeiIOV glScissorIndexedNVFunPtr
glScissorIndexedNVFunPtr :: FunPtr (GLuint -> GLint -> GLint -> GLsizei -> GLsizei -> IO ())
glScissorIndexedNVFunPtr = unsafePerformIO (getProcAddress "glScissorIndexedNV")
{-# NOINLINE glScissorIndexedNVFunPtr #-}
-- | Usage: @'glScissorIndexedvNV' index v@
--
-- The length of @v@ should be @4@.
--
-- This command is an alias for 'Graphics.GL.Internal.Shared.glScissorIndexedv'.
glScissorIndexedvNV :: MonadIO m => GLuint -> Ptr GLint -> m ()
glScissorIndexedvNV = ffiuintPtrintIOV glScissorIndexedvNVFunPtr
glScissorIndexedvNVFunPtr :: FunPtr (GLuint -> Ptr GLint -> IO ())
glScissorIndexedvNVFunPtr = unsafePerformIO (getProcAddress "glScissorIndexedvNV")
{-# NOINLINE glScissorIndexedvNVFunPtr #-}
-- | Usage: @'glViewportArrayvNV' first count v@
--
-- The length of @v@ should be @COMPSIZE(count)@.
--
-- This command is an alias for 'Graphics.GL.Internal.Shared.glViewportArrayv'.
glViewportArrayvNV :: MonadIO m => GLuint -> GLsizei -> Ptr GLfloat -> m ()
glViewportArrayvNV = ffiuintsizeiPtrfloatIOV glViewportArrayvNVFunPtr
glViewportArrayvNVFunPtr :: FunPtr (GLuint -> GLsizei -> Ptr GLfloat -> IO ())
glViewportArrayvNVFunPtr = unsafePerformIO (getProcAddress "glViewportArrayvNV")
{-# NOINLINE glViewportArrayvNVFunPtr #-}
-- | Usage: @'glViewportIndexedfNV' index x y w h@
--
-- This command is an alias for 'Graphics.GL.Internal.Shared.glViewportIndexedf'.
glViewportIndexedfNV :: MonadIO m => GLuint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> m ()
glViewportIndexedfNV = ffiuintfloatfloatfloatfloatIOV glViewportIndexedfNVFunPtr
glViewportIndexedfNVFunPtr :: FunPtr (GLuint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
glViewportIndexedfNVFunPtr = unsafePerformIO (getProcAddress "glViewportIndexedfNV")
{-# NOINLINE glViewportIndexedfNVFunPtr #-}
-- | Usage: @'glViewportIndexedfvNV' index v@
--
-- The length of @v@ should be @4@.
--
-- This command is an alias for 'Graphics.GL.Internal.Shared.glViewportIndexedfv'.
glViewportIndexedfvNV :: MonadIO m => GLuint -> Ptr GLfloat -> m ()
glViewportIndexedfvNV = ffiuintPtrfloatIOV glViewportIndexedfvNVFunPtr
glViewportIndexedfvNVFunPtr :: FunPtr (GLuint -> Ptr GLfloat -> IO ())
glViewportIndexedfvNVFunPtr = unsafePerformIO (getProcAddress "glViewportIndexedfvNV")
{-# NOINLINE glViewportIndexedfvNVFunPtr #-}
pattern GL_MAX_VIEWPORTS_NV = 0x825B
pattern GL_VIEWPORT_BOUNDS_RANGE_NV = 0x825D
pattern GL_VIEWPORT_INDEX_PROVOKING_VERTEX_NV = 0x825F
pattern GL_VIEWPORT_SUBPIXEL_BITS_NV = 0x825C