module Graphics.GL.Ext.APPLE.Fence (
gl_APPLE_fence
, glDeleteFencesAPPLE
, glFinishFenceAPPLE
, glFinishObjectAPPLE
, glGenFencesAPPLE
, glIsFenceAPPLE
, glSetFenceAPPLE
, glTestFenceAPPLE
, glTestObjectAPPLE
, pattern GL_DRAW_PIXELS_APPLE
, pattern GL_FENCE_APPLE
) 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
gl_APPLE_fence :: Bool
gl_APPLE_fence = member "GL_APPLE_fence" extensions
glDeleteFencesAPPLE :: MonadIO m => GLsizei -> Ptr GLuint -> m ()
glDeleteFencesAPPLE = ffisizeiPtruintIOV glDeleteFencesAPPLEFunPtr
glDeleteFencesAPPLEFunPtr :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
glDeleteFencesAPPLEFunPtr = unsafePerformIO (getProcAddress "glDeleteFencesAPPLE")
glFinishFenceAPPLE :: MonadIO m => GLuint -> m ()
glFinishFenceAPPLE = ffiuintIOV glFinishFenceAPPLEFunPtr
glFinishFenceAPPLEFunPtr :: FunPtr (GLuint -> IO ())
glFinishFenceAPPLEFunPtr = unsafePerformIO (getProcAddress "glFinishFenceAPPLE")
glFinishObjectAPPLE :: MonadIO m => GLenum -> GLint -> m ()
glFinishObjectAPPLE = ffienumintIOV glFinishObjectAPPLEFunPtr
glFinishObjectAPPLEFunPtr :: FunPtr (GLenum -> GLint -> IO ())
glFinishObjectAPPLEFunPtr = unsafePerformIO (getProcAddress "glFinishObjectAPPLE")
glGenFencesAPPLE :: MonadIO m => GLsizei -> Ptr GLuint -> m ()
glGenFencesAPPLE = ffisizeiPtruintIOV glGenFencesAPPLEFunPtr
glGenFencesAPPLEFunPtr :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
glGenFencesAPPLEFunPtr = unsafePerformIO (getProcAddress "glGenFencesAPPLE")
glIsFenceAPPLE :: MonadIO m => GLuint -> m GLboolean
glIsFenceAPPLE = ffiuintIOboolean glIsFenceAPPLEFunPtr
glIsFenceAPPLEFunPtr :: FunPtr (GLuint -> IO GLboolean)
glIsFenceAPPLEFunPtr = unsafePerformIO (getProcAddress "glIsFenceAPPLE")
glSetFenceAPPLE :: MonadIO m => GLuint -> m ()
glSetFenceAPPLE = ffiuintIOV glSetFenceAPPLEFunPtr
glSetFenceAPPLEFunPtr :: FunPtr (GLuint -> IO ())
glSetFenceAPPLEFunPtr = unsafePerformIO (getProcAddress "glSetFenceAPPLE")
glTestFenceAPPLE :: MonadIO m => GLuint -> m GLboolean
glTestFenceAPPLE = ffiuintIOboolean glTestFenceAPPLEFunPtr
glTestFenceAPPLEFunPtr :: FunPtr (GLuint -> IO GLboolean)
glTestFenceAPPLEFunPtr = unsafePerformIO (getProcAddress "glTestFenceAPPLE")
glTestObjectAPPLE :: MonadIO m => GLenum -> GLuint -> m GLboolean
glTestObjectAPPLE = ffienumuintIOboolean glTestObjectAPPLEFunPtr
glTestObjectAPPLEFunPtr :: FunPtr (GLenum -> GLuint -> IO GLboolean)
glTestObjectAPPLEFunPtr = unsafePerformIO (getProcAddress "glTestObjectAPPLE")
pattern GL_DRAW_PIXELS_APPLE = 0x8A0A
pattern GL_FENCE_APPLE = 0x8A0B