-- This file was automatically generated. {-# LANGUAGE ScopedTypeVariables, PatternSynonyms #-} module Graphics.GL.Raw.Extension.EXT.GpuShader4 ( -- * Extension Support gl_EXT_gpu_shader4 -- * GL_EXT_gpu_shader4 , glBindFragDataLocationEXT , glGetFragDataLocationEXT , glGetUniformuivEXT , glUniform1uiEXT , glUniform1uivEXT , glUniform2uiEXT , glUniform2uivEXT , glUniform3uiEXT , glUniform3uivEXT , glUniform4uiEXT , glUniform4uivEXT , pattern GL_INT_SAMPLER_1D_ARRAY_EXT , pattern GL_INT_SAMPLER_1D_EXT , pattern GL_INT_SAMPLER_2D_ARRAY_EXT , pattern GL_INT_SAMPLER_2D_EXT , pattern GL_INT_SAMPLER_2D_RECT_EXT , pattern GL_INT_SAMPLER_3D_EXT , pattern GL_INT_SAMPLER_BUFFER_EXT , pattern GL_INT_SAMPLER_CUBE_EXT , pattern GL_MAX_PROGRAM_TEXEL_OFFSET_EXT , pattern GL_MIN_PROGRAM_TEXEL_OFFSET_EXT , pattern GL_SAMPLER_1D_ARRAY_EXT , pattern GL_SAMPLER_1D_ARRAY_SHADOW_EXT , pattern GL_SAMPLER_2D_ARRAY_EXT , pattern GL_SAMPLER_2D_ARRAY_SHADOW_EXT , pattern GL_SAMPLER_BUFFER_EXT , pattern GL_SAMPLER_CUBE_SHADOW_EXT , pattern GL_UNSIGNED_INT_SAMPLER_1D_ARRAY_EXT , pattern GL_UNSIGNED_INT_SAMPLER_1D_EXT , pattern GL_UNSIGNED_INT_SAMPLER_2D_ARRAY_EXT , pattern GL_UNSIGNED_INT_SAMPLER_2D_EXT , pattern GL_UNSIGNED_INT_SAMPLER_2D_RECT_EXT , pattern GL_UNSIGNED_INT_SAMPLER_3D_EXT , pattern GL_UNSIGNED_INT_SAMPLER_BUFFER_EXT , pattern GL_UNSIGNED_INT_SAMPLER_CUBE_EXT , pattern GL_UNSIGNED_INT_VEC2_EXT , pattern GL_UNSIGNED_INT_VEC3_EXT , pattern GL_UNSIGNED_INT_VEC4_EXT , pattern GL_VERTEX_ATTRIB_ARRAY_INTEGER_EXT ) where import Control.Monad.IO.Class import Data.Set import Foreign.Ptr import Graphics.GL.Raw.Internal.FFI import Graphics.GL.Raw.Internal.Proc import Graphics.GL.Raw.Internal.Shared import Graphics.GL.Raw.Types import System.IO.Unsafe -- | Checks that the extension is available. gl_EXT_gpu_shader4 :: Bool gl_EXT_gpu_shader4 = member "GL_EXT_gpu_shader4" extensions {-# NOINLINE gl_EXT_gpu_shader4 #-} -- | Usage: @'glBindFragDataLocationEXT' program color name@ -- -- The length of @name@ should be @COMPSIZE(name)@. -- -- This command is an alias for 'Graphics.GL.Raw.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 #-} -- | Usage: @'glGetFragDataLocationEXT' program name@ -- -- The length of @name@ should be @COMPSIZE(name)@. -- -- This command is an alias for 'Graphics.GL.Raw.Internal.Shared.glGetFragDataLocation'. glGetFragDataLocationEXT :: MonadIO m => GLuint -> Ptr GLchar -> m GLint glGetFragDataLocationEXT = ffiuintPtrcharIOint glGetFragDataLocationEXTFunPtr glGetFragDataLocationEXTFunPtr :: FunPtr (GLuint -> Ptr GLchar -> IO GLint) glGetFragDataLocationEXTFunPtr = unsafePerformIO (getProcAddress "glGetFragDataLocationEXT") {-# NOINLINE glGetFragDataLocationEXTFunPtr #-} -- | Usage: @'glGetUniformuivEXT' program location params@ -- -- The length of @params@ should be @COMPSIZE(program,location)@. -- -- This command is an alias for 'Graphics.GL.Raw.Internal.Shared.glGetUniformuiv'. glGetUniformuivEXT :: MonadIO m => GLuint -> GLint -> Ptr GLuint -> m () glGetUniformuivEXT = ffiuintintPtruintIOV glGetUniformuivEXTFunPtr glGetUniformuivEXTFunPtr :: FunPtr (GLuint -> GLint -> Ptr GLuint -> IO ()) glGetUniformuivEXTFunPtr = unsafePerformIO (getProcAddress "glGetUniformuivEXT") {-# NOINLINE glGetUniformuivEXTFunPtr #-} -- | Usage: @'glUniform1uiEXT' location v0@ -- -- This command is an alias for 'Graphics.GL.Raw.Internal.Shared.glUniform1ui'. glUniform1uiEXT :: MonadIO m => GLint -> GLuint -> m () glUniform1uiEXT = ffiintuintIOV glUniform1uiEXTFunPtr glUniform1uiEXTFunPtr :: FunPtr (GLint -> GLuint -> IO ()) glUniform1uiEXTFunPtr = unsafePerformIO (getProcAddress "glUniform1uiEXT") {-# NOINLINE glUniform1uiEXTFunPtr #-} -- | Usage: @'glUniform1uivEXT' location count value@ -- -- The length of @value@ should be @count*1@. -- -- This command is an alias for 'Graphics.GL.Raw.Internal.Shared.glUniform1uiv'. glUniform1uivEXT :: MonadIO m => GLint -> GLsizei -> Ptr GLuint -> m () glUniform1uivEXT = ffiintsizeiPtruintIOV glUniform1uivEXTFunPtr glUniform1uivEXTFunPtr :: FunPtr (GLint -> GLsizei -> Ptr GLuint -> IO ()) glUniform1uivEXTFunPtr = unsafePerformIO (getProcAddress "glUniform1uivEXT") {-# NOINLINE glUniform1uivEXTFunPtr #-} -- | Usage: @'glUniform2uiEXT' location v0 v1@ -- -- This command is an alias for 'Graphics.GL.Raw.Internal.Shared.glUniform2ui'. glUniform2uiEXT :: MonadIO m => GLint -> GLuint -> GLuint -> m () glUniform2uiEXT = ffiintuintuintIOV glUniform2uiEXTFunPtr glUniform2uiEXTFunPtr :: FunPtr (GLint -> GLuint -> GLuint -> IO ()) glUniform2uiEXTFunPtr = unsafePerformIO (getProcAddress "glUniform2uiEXT") {-# NOINLINE glUniform2uiEXTFunPtr #-} -- | Usage: @'glUniform2uivEXT' location count value@ -- -- The length of @value@ should be @count*2@. -- -- This command is an alias for 'Graphics.GL.Raw.Internal.Shared.glUniform2uiv'. glUniform2uivEXT :: MonadIO m => GLint -> GLsizei -> Ptr GLuint -> m () glUniform2uivEXT = ffiintsizeiPtruintIOV glUniform2uivEXTFunPtr glUniform2uivEXTFunPtr :: FunPtr (GLint -> GLsizei -> Ptr GLuint -> IO ()) glUniform2uivEXTFunPtr = unsafePerformIO (getProcAddress "glUniform2uivEXT") {-# NOINLINE glUniform2uivEXTFunPtr #-} -- | Usage: @'glUniform3uiEXT' location v0 v1 v2@ -- -- This command is an alias for 'Graphics.GL.Raw.Internal.Shared.glUniform3ui'. glUniform3uiEXT :: MonadIO m => GLint -> GLuint -> GLuint -> GLuint -> m () glUniform3uiEXT = ffiintuintuintuintIOV glUniform3uiEXTFunPtr glUniform3uiEXTFunPtr :: FunPtr (GLint -> GLuint -> GLuint -> GLuint -> IO ()) glUniform3uiEXTFunPtr = unsafePerformIO (getProcAddress "glUniform3uiEXT") {-# NOINLINE glUniform3uiEXTFunPtr #-} -- | Usage: @'glUniform3uivEXT' location count value@ -- -- The length of @value@ should be @count*3@. -- -- This command is an alias for 'Graphics.GL.Raw.Internal.Shared.glUniform3uiv'. glUniform3uivEXT :: MonadIO m => GLint -> GLsizei -> Ptr GLuint -> m () glUniform3uivEXT = ffiintsizeiPtruintIOV glUniform3uivEXTFunPtr glUniform3uivEXTFunPtr :: FunPtr (GLint -> GLsizei -> Ptr GLuint -> IO ()) glUniform3uivEXTFunPtr = unsafePerformIO (getProcAddress "glUniform3uivEXT") {-# NOINLINE glUniform3uivEXTFunPtr #-} -- | Usage: @'glUniform4uiEXT' location v0 v1 v2 v3@ -- -- This command is an alias for 'Graphics.GL.Raw.Internal.Shared.glUniform4ui'. glUniform4uiEXT :: MonadIO m => GLint -> GLuint -> GLuint -> GLuint -> GLuint -> m () glUniform4uiEXT = ffiintuintuintuintuintIOV glUniform4uiEXTFunPtr glUniform4uiEXTFunPtr :: FunPtr (GLint -> GLuint -> GLuint -> GLuint -> GLuint -> IO ()) glUniform4uiEXTFunPtr = unsafePerformIO (getProcAddress "glUniform4uiEXT") {-# NOINLINE glUniform4uiEXTFunPtr #-} -- | Usage: @'glUniform4uivEXT' location count value@ -- -- The length of @value@ should be @count*4@. -- -- This command is an alias for 'Graphics.GL.Raw.Internal.Shared.glUniform4uiv'. glUniform4uivEXT :: MonadIO m => GLint -> GLsizei -> Ptr GLuint -> m () glUniform4uivEXT = ffiintsizeiPtruintIOV glUniform4uivEXTFunPtr glUniform4uivEXTFunPtr :: FunPtr (GLint -> GLsizei -> Ptr GLuint -> IO ()) glUniform4uivEXTFunPtr = unsafePerformIO (getProcAddress "glUniform4uivEXT") {-# NOINLINE glUniform4uivEXTFunPtr #-} pattern GL_INT_SAMPLER_1D_ARRAY_EXT = 0x8DCE pattern GL_INT_SAMPLER_1D_EXT = 0x8DC9 pattern GL_INT_SAMPLER_2D_ARRAY_EXT = 0x8DCF pattern GL_INT_SAMPLER_2D_EXT = 0x8DCA pattern GL_INT_SAMPLER_2D_RECT_EXT = 0x8DCD pattern GL_INT_SAMPLER_3D_EXT = 0x8DCB pattern GL_INT_SAMPLER_CUBE_EXT = 0x8DCC pattern GL_MAX_PROGRAM_TEXEL_OFFSET_EXT = 0x8905 pattern GL_MIN_PROGRAM_TEXEL_OFFSET_EXT = 0x8904 pattern GL_SAMPLER_1D_ARRAY_EXT = 0x8DC0 pattern GL_SAMPLER_1D_ARRAY_SHADOW_EXT = 0x8DC3 pattern GL_SAMPLER_2D_ARRAY_EXT = 0x8DC1 pattern GL_SAMPLER_2D_ARRAY_SHADOW_EXT = 0x8DC4 pattern GL_SAMPLER_CUBE_SHADOW_EXT = 0x8DC5 pattern GL_UNSIGNED_INT_SAMPLER_1D_ARRAY_EXT = 0x8DD6 pattern GL_UNSIGNED_INT_SAMPLER_1D_EXT = 0x8DD1 pattern GL_UNSIGNED_INT_SAMPLER_2D_ARRAY_EXT = 0x8DD7 pattern GL_UNSIGNED_INT_SAMPLER_2D_EXT = 0x8DD2 pattern GL_UNSIGNED_INT_SAMPLER_2D_RECT_EXT = 0x8DD5 pattern GL_UNSIGNED_INT_SAMPLER_3D_EXT = 0x8DD3 pattern GL_UNSIGNED_INT_SAMPLER_CUBE_EXT = 0x8DD4 pattern GL_UNSIGNED_INT_VEC2_EXT = 0x8DC6 pattern GL_UNSIGNED_INT_VEC3_EXT = 0x8DC7 pattern GL_UNSIGNED_INT_VEC4_EXT = 0x8DC8 pattern GL_VERTEX_ATTRIB_ARRAY_INTEGER_EXT = 0x88FD