-- This file was automatically generated. {-# LANGUAGE ScopedTypeVariables, PatternSynonyms #-} module Graphics.GL.Raw.Extension.ATI.SeparateStencil ( -- * Extension Support gl_ATI_separate_stencil -- * GL_ATI_separate_stencil , glStencilFuncSeparateATI , glStencilOpSeparateATI , pattern GL_STENCIL_BACK_FAIL_ATI , pattern GL_STENCIL_BACK_FUNC_ATI , pattern GL_STENCIL_BACK_PASS_DEPTH_FAIL_ATI , pattern GL_STENCIL_BACK_PASS_DEPTH_PASS_ATI ) 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.Types import System.IO.Unsafe gl_ATI_separate_stencil :: Bool gl_ATI_separate_stencil = member "GL_ATI_separate_stencil" extensions glStencilFuncSeparateATI :: MonadIO m => GLenum -> GLenum -> GLint -> GLuint -> m () glStencilFuncSeparateATI = ffienumenumintuintIOV glStencilFuncSeparateATIFunPtr glStencilFuncSeparateATIFunPtr :: FunPtr (GLenum -> GLenum -> GLint -> GLuint -> IO ()) glStencilFuncSeparateATIFunPtr = unsafePerformIO (getProcAddress "glStencilFuncSeparateATI") {-# NOINLINE glStencilFuncSeparateATIFunPtr #-} glStencilOpSeparateATI :: MonadIO m => GLenum -> GLenum -> GLenum -> GLenum -> m () glStencilOpSeparateATI = ffienumenumenumenumIOV glStencilOpSeparateATIFunPtr glStencilOpSeparateATIFunPtr :: FunPtr (GLenum -> GLenum -> GLenum -> GLenum -> IO ()) glStencilOpSeparateATIFunPtr = unsafePerformIO (getProcAddress "glStencilOpSeparateATI") {-# NOINLINE glStencilOpSeparateATIFunPtr #-} pattern GL_STENCIL_BACK_FAIL_ATI = 0x8801 pattern GL_STENCIL_BACK_FUNC_ATI = 0x8800 pattern GL_STENCIL_BACK_PASS_DEPTH_FAIL_ATI = 0x8802 pattern GL_STENCIL_BACK_PASS_DEPTH_PASS_ATI = 0x8803