{-# LANGUAGE CPP, ScopedTypeVariables, PatternSynonyms #-}
module Graphics.GL.Ext.APPLE.Sync (
gl_APPLE_sync
, glClientWaitSyncAPPLE
, glDeleteSyncAPPLE
, glFenceSyncAPPLE
, glGetInteger64vAPPLE
, glGetSyncivAPPLE
, glIsSyncAPPLE
, glWaitSyncAPPLE
, pattern GL_ALREADY_SIGNALED_APPLE
, pattern GL_CONDITION_SATISFIED_APPLE
, pattern GL_MAX_SERVER_WAIT_TIMEOUT_APPLE
, pattern GL_OBJECT_TYPE_APPLE
, pattern GL_SIGNALED_APPLE
, pattern GL_SYNC_CONDITION_APPLE
, pattern GL_SYNC_FENCE_APPLE
, pattern GL_SYNC_FLAGS_APPLE
, pattern GL_SYNC_FLUSH_COMMANDS_BIT_APPLE
, pattern GL_SYNC_GPU_COMMANDS_COMPLETE_APPLE
, pattern GL_SYNC_OBJECT_APPLE
, pattern GL_SYNC_STATUS_APPLE
, pattern GL_TIMEOUT_EXPIRED_APPLE
, pattern GL_TIMEOUT_IGNORED_APPLE
, pattern GL_UNSIGNALED_APPLE
, pattern GL_WAIT_FAILED_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_sync :: Bool
gl_APPLE_sync :: Bool
gl_APPLE_sync = String -> Set String -> Bool
forall a. Ord a => a -> Set a -> Bool
member String
"GL_APPLE_sync" Set String
extensions
{-# NOINLINE gl_APPLE_sync #-}
glClientWaitSyncAPPLE :: MonadIO m => GLsync -> GLbitfield -> GLuint64 -> m GLenum
glClientWaitSyncAPPLE :: forall (m :: * -> *).
MonadIO m =>
GLsync -> GLbitfield -> GLuint64 -> m GLbitfield
glClientWaitSyncAPPLE = FunPtr (GLsync -> GLbitfield -> GLuint64 -> IO GLbitfield)
-> GLsync -> GLbitfield -> GLuint64 -> m GLbitfield
forall (m :: * -> *).
MonadIO m =>
FunPtr (GLsync -> GLbitfield -> GLuint64 -> IO GLbitfield)
-> GLsync -> GLbitfield -> GLuint64 -> m GLbitfield
ffisyncbitfielduint64IOenum FunPtr (GLsync -> GLbitfield -> GLuint64 -> IO GLbitfield)
glClientWaitSyncAPPLEFunPtr
glClientWaitSyncAPPLEFunPtr :: FunPtr (GLsync -> GLbitfield -> GLuint64 -> IO GLenum)
glClientWaitSyncAPPLEFunPtr :: FunPtr (GLsync -> GLbitfield -> GLuint64 -> IO GLbitfield)
glClientWaitSyncAPPLEFunPtr = IO (FunPtr (GLsync -> GLbitfield -> GLuint64 -> IO GLbitfield))
-> FunPtr (GLsync -> GLbitfield -> GLuint64 -> IO GLbitfield)
forall a. IO a -> a
unsafePerformIO (String
-> IO (FunPtr (GLsync -> GLbitfield -> GLuint64 -> IO GLbitfield))
forall a. String -> IO (FunPtr a)
getProcAddress String
"glClientWaitSyncAPPLE")
{-# NOINLINE glClientWaitSyncAPPLEFunPtr #-}
glDeleteSyncAPPLE :: MonadIO m => GLsync -> m ()
glDeleteSyncAPPLE :: forall (m :: * -> *). MonadIO m => GLsync -> m ()
glDeleteSyncAPPLE = FunPtr (GLsync -> IO ()) -> GLsync -> m ()
forall (m :: * -> *).
MonadIO m =>
FunPtr (GLsync -> IO ()) -> GLsync -> m ()
ffisyncIOV FunPtr (GLsync -> IO ())
glDeleteSyncAPPLEFunPtr
glDeleteSyncAPPLEFunPtr :: FunPtr (GLsync -> IO ())
glDeleteSyncAPPLEFunPtr :: FunPtr (GLsync -> IO ())
glDeleteSyncAPPLEFunPtr = IO (FunPtr (GLsync -> IO ())) -> FunPtr (GLsync -> IO ())
forall a. IO a -> a
unsafePerformIO (String -> IO (FunPtr (GLsync -> IO ()))
forall a. String -> IO (FunPtr a)
getProcAddress String
"glDeleteSyncAPPLE")
{-# NOINLINE glDeleteSyncAPPLEFunPtr #-}
glFenceSyncAPPLE :: MonadIO m => GLenum -> GLbitfield -> m GLsync
glFenceSyncAPPLE :: forall (m :: * -> *).
MonadIO m =>
GLbitfield -> GLbitfield -> m GLsync
glFenceSyncAPPLE = FunPtr (GLbitfield -> GLbitfield -> IO GLsync)
-> GLbitfield -> GLbitfield -> m GLsync
forall (m :: * -> *).
MonadIO m =>
FunPtr (GLbitfield -> GLbitfield -> IO GLsync)
-> GLbitfield -> GLbitfield -> m GLsync
ffienumbitfieldIOsync FunPtr (GLbitfield -> GLbitfield -> IO GLsync)
glFenceSyncAPPLEFunPtr
glFenceSyncAPPLEFunPtr :: FunPtr (GLenum -> GLbitfield -> IO GLsync)
glFenceSyncAPPLEFunPtr :: FunPtr (GLbitfield -> GLbitfield -> IO GLsync)
glFenceSyncAPPLEFunPtr = IO (FunPtr (GLbitfield -> GLbitfield -> IO GLsync))
-> FunPtr (GLbitfield -> GLbitfield -> IO GLsync)
forall a. IO a -> a
unsafePerformIO (String -> IO (FunPtr (GLbitfield -> GLbitfield -> IO GLsync))
forall a. String -> IO (FunPtr a)
getProcAddress String
"glFenceSyncAPPLE")
{-# NOINLINE glFenceSyncAPPLEFunPtr #-}
glGetInteger64vAPPLE :: MonadIO m => GLenum -> Ptr GLint64 -> m ()
glGetInteger64vAPPLE :: forall (m :: * -> *).
MonadIO m =>
GLbitfield -> Ptr GLint64 -> m ()
glGetInteger64vAPPLE = FunPtr (GLbitfield -> Ptr GLint64 -> IO ())
-> GLbitfield -> Ptr GLint64 -> m ()
forall (m :: * -> *).
MonadIO m =>
FunPtr (GLbitfield -> Ptr GLint64 -> IO ())
-> GLbitfield -> Ptr GLint64 -> m ()
ffienumPtrint64IOV FunPtr (GLbitfield -> Ptr GLint64 -> IO ())
glGetInteger64vAPPLEFunPtr
glGetInteger64vAPPLEFunPtr :: FunPtr (GLenum -> Ptr GLint64 -> IO ())
glGetInteger64vAPPLEFunPtr :: FunPtr (GLbitfield -> Ptr GLint64 -> IO ())
glGetInteger64vAPPLEFunPtr = IO (FunPtr (GLbitfield -> Ptr GLint64 -> IO ()))
-> FunPtr (GLbitfield -> Ptr GLint64 -> IO ())
forall a. IO a -> a
unsafePerformIO (String -> IO (FunPtr (GLbitfield -> Ptr GLint64 -> IO ()))
forall a. String -> IO (FunPtr a)
getProcAddress String
"glGetInteger64vAPPLE")
{-# NOINLINE glGetInteger64vAPPLEFunPtr #-}
glGetSyncivAPPLE :: MonadIO m => GLsync -> GLenum -> GLsizei -> Ptr GLsizei -> Ptr GLint -> m ()
glGetSyncivAPPLE :: forall (m :: * -> *).
MonadIO m =>
GLsync
-> GLbitfield -> GLsizei -> Ptr GLsizei -> Ptr GLsizei -> m ()
glGetSyncivAPPLE = FunPtr
(GLsync
-> GLbitfield -> GLsizei -> Ptr GLsizei -> Ptr GLsizei -> IO ())
-> GLsync
-> GLbitfield
-> GLsizei
-> Ptr GLsizei
-> Ptr GLsizei
-> m ()
forall (m :: * -> *).
MonadIO m =>
FunPtr
(GLsync
-> GLbitfield -> GLsizei -> Ptr GLsizei -> Ptr GLsizei -> IO ())
-> GLsync
-> GLbitfield
-> GLsizei
-> Ptr GLsizei
-> Ptr GLsizei
-> m ()
ffisyncenumsizeiPtrsizeiPtrintIOV FunPtr
(GLsync
-> GLbitfield -> GLsizei -> Ptr GLsizei -> Ptr GLsizei -> IO ())
glGetSyncivAPPLEFunPtr
glGetSyncivAPPLEFunPtr :: FunPtr (GLsync -> GLenum -> GLsizei -> Ptr GLsizei -> Ptr GLint -> IO ())
glGetSyncivAPPLEFunPtr :: FunPtr
(GLsync
-> GLbitfield -> GLsizei -> Ptr GLsizei -> Ptr GLsizei -> IO ())
glGetSyncivAPPLEFunPtr = IO
(FunPtr
(GLsync
-> GLbitfield -> GLsizei -> Ptr GLsizei -> Ptr GLsizei -> IO ()))
-> FunPtr
(GLsync
-> GLbitfield -> GLsizei -> Ptr GLsizei -> Ptr GLsizei -> IO ())
forall a. IO a -> a
unsafePerformIO (String
-> IO
(FunPtr
(GLsync
-> GLbitfield -> GLsizei -> Ptr GLsizei -> Ptr GLsizei -> IO ()))
forall a. String -> IO (FunPtr a)
getProcAddress String
"glGetSyncivAPPLE")
{-# NOINLINE glGetSyncivAPPLEFunPtr #-}
glIsSyncAPPLE :: MonadIO m => GLsync -> m GLboolean
glIsSyncAPPLE :: forall (m :: * -> *). MonadIO m => GLsync -> m GLboolean
glIsSyncAPPLE = FunPtr (GLsync -> IO GLboolean) -> GLsync -> m GLboolean
forall (m :: * -> *).
MonadIO m =>
FunPtr (GLsync -> IO GLboolean) -> GLsync -> m GLboolean
ffisyncIOboolean FunPtr (GLsync -> IO GLboolean)
glIsSyncAPPLEFunPtr
glIsSyncAPPLEFunPtr :: FunPtr (GLsync -> IO GLboolean)
glIsSyncAPPLEFunPtr :: FunPtr (GLsync -> IO GLboolean)
glIsSyncAPPLEFunPtr = IO (FunPtr (GLsync -> IO GLboolean))
-> FunPtr (GLsync -> IO GLboolean)
forall a. IO a -> a
unsafePerformIO (String -> IO (FunPtr (GLsync -> IO GLboolean))
forall a. String -> IO (FunPtr a)
getProcAddress String
"glIsSyncAPPLE")
{-# NOINLINE glIsSyncAPPLEFunPtr #-}
glWaitSyncAPPLE :: MonadIO m => GLsync -> GLbitfield -> GLuint64 -> m ()
glWaitSyncAPPLE :: forall (m :: * -> *).
MonadIO m =>
GLsync -> GLbitfield -> GLuint64 -> m ()
glWaitSyncAPPLE = FunPtr (GLsync -> GLbitfield -> GLuint64 -> IO ())
-> GLsync -> GLbitfield -> GLuint64 -> m ()
forall (m :: * -> *).
MonadIO m =>
FunPtr (GLsync -> GLbitfield -> GLuint64 -> IO ())
-> GLsync -> GLbitfield -> GLuint64 -> m ()
ffisyncbitfielduint64IOV FunPtr (GLsync -> GLbitfield -> GLuint64 -> IO ())
glWaitSyncAPPLEFunPtr
glWaitSyncAPPLEFunPtr :: FunPtr (GLsync -> GLbitfield -> GLuint64 -> IO ())
glWaitSyncAPPLEFunPtr :: FunPtr (GLsync -> GLbitfield -> GLuint64 -> IO ())
glWaitSyncAPPLEFunPtr = IO (FunPtr (GLsync -> GLbitfield -> GLuint64 -> IO ()))
-> FunPtr (GLsync -> GLbitfield -> GLuint64 -> IO ())
forall a. IO a -> a
unsafePerformIO (String -> IO (FunPtr (GLsync -> GLbitfield -> GLuint64 -> IO ()))
forall a. String -> IO (FunPtr a)
getProcAddress String
"glWaitSyncAPPLE")
{-# NOINLINE glWaitSyncAPPLEFunPtr #-}
pattern GL_ALREADY_SIGNALED_APPLE :: (Eq a, Num a) => a
pattern $mGL_ALREADY_SIGNALED_APPLE :: forall {r} {a}.
(Eq a, Num a) =>
a -> ((# #) -> r) -> ((# #) -> r) -> r
$bGL_ALREADY_SIGNALED_APPLE :: forall a. (Eq a, Num a) => a
GL_ALREADY_SIGNALED_APPLE = 0x911A
pattern GL_CONDITION_SATISFIED_APPLE :: (Eq a, Num a) => a
pattern $mGL_CONDITION_SATISFIED_APPLE :: forall {r} {a}.
(Eq a, Num a) =>
a -> ((# #) -> r) -> ((# #) -> r) -> r
$bGL_CONDITION_SATISFIED_APPLE :: forall a. (Eq a, Num a) => a
GL_CONDITION_SATISFIED_APPLE = 0x911C
pattern GL_MAX_SERVER_WAIT_TIMEOUT_APPLE :: (Eq a, Num a) => a
pattern $mGL_MAX_SERVER_WAIT_TIMEOUT_APPLE :: forall {r} {a}.
(Eq a, Num a) =>
a -> ((# #) -> r) -> ((# #) -> r) -> r
$bGL_MAX_SERVER_WAIT_TIMEOUT_APPLE :: forall a. (Eq a, Num a) => a
GL_MAX_SERVER_WAIT_TIMEOUT_APPLE = 0x9111
pattern GL_OBJECT_TYPE_APPLE :: (Eq a, Num a) => a
pattern $mGL_OBJECT_TYPE_APPLE :: forall {r} {a}.
(Eq a, Num a) =>
a -> ((# #) -> r) -> ((# #) -> r) -> r
$bGL_OBJECT_TYPE_APPLE :: forall a. (Eq a, Num a) => a
GL_OBJECT_TYPE_APPLE = 0x9112
pattern GL_SIGNALED_APPLE :: (Eq a, Num a) => a
pattern $mGL_SIGNALED_APPLE :: forall {r} {a}.
(Eq a, Num a) =>
a -> ((# #) -> r) -> ((# #) -> r) -> r
$bGL_SIGNALED_APPLE :: forall a. (Eq a, Num a) => a
GL_SIGNALED_APPLE = 0x9119
pattern GL_SYNC_CONDITION_APPLE :: (Eq a, Num a) => a
pattern $mGL_SYNC_CONDITION_APPLE :: forall {r} {a}.
(Eq a, Num a) =>
a -> ((# #) -> r) -> ((# #) -> r) -> r
$bGL_SYNC_CONDITION_APPLE :: forall a. (Eq a, Num a) => a
GL_SYNC_CONDITION_APPLE = 0x9113
pattern GL_SYNC_FENCE_APPLE :: (Eq a, Num a) => a
pattern $mGL_SYNC_FENCE_APPLE :: forall {r} {a}.
(Eq a, Num a) =>
a -> ((# #) -> r) -> ((# #) -> r) -> r
$bGL_SYNC_FENCE_APPLE :: forall a. (Eq a, Num a) => a
GL_SYNC_FENCE_APPLE = 0x9116
pattern GL_SYNC_FLAGS_APPLE :: (Eq a, Num a) => a
pattern $mGL_SYNC_FLAGS_APPLE :: forall {r} {a}.
(Eq a, Num a) =>
a -> ((# #) -> r) -> ((# #) -> r) -> r
$bGL_SYNC_FLAGS_APPLE :: forall a. (Eq a, Num a) => a
GL_SYNC_FLAGS_APPLE = 0x9115
pattern GL_SYNC_FLUSH_COMMANDS_BIT_APPLE :: (Eq a, Num a) => a
pattern $mGL_SYNC_FLUSH_COMMANDS_BIT_APPLE :: forall {r} {a}.
(Eq a, Num a) =>
a -> ((# #) -> r) -> ((# #) -> r) -> r
$bGL_SYNC_FLUSH_COMMANDS_BIT_APPLE :: forall a. (Eq a, Num a) => a
GL_SYNC_FLUSH_COMMANDS_BIT_APPLE = 0x00000001
pattern GL_SYNC_GPU_COMMANDS_COMPLETE_APPLE :: (Eq a, Num a) => a
pattern $mGL_SYNC_GPU_COMMANDS_COMPLETE_APPLE :: forall {r} {a}.
(Eq a, Num a) =>
a -> ((# #) -> r) -> ((# #) -> r) -> r
$bGL_SYNC_GPU_COMMANDS_COMPLETE_APPLE :: forall a. (Eq a, Num a) => a
GL_SYNC_GPU_COMMANDS_COMPLETE_APPLE = 0x9117
pattern GL_SYNC_OBJECT_APPLE :: (Eq a, Num a) => a
pattern $mGL_SYNC_OBJECT_APPLE :: forall {r} {a}.
(Eq a, Num a) =>
a -> ((# #) -> r) -> ((# #) -> r) -> r
$bGL_SYNC_OBJECT_APPLE :: forall a. (Eq a, Num a) => a
GL_SYNC_OBJECT_APPLE = 0x8A53
pattern GL_SYNC_STATUS_APPLE :: (Eq a, Num a) => a
pattern $mGL_SYNC_STATUS_APPLE :: forall {r} {a}.
(Eq a, Num a) =>
a -> ((# #) -> r) -> ((# #) -> r) -> r
$bGL_SYNC_STATUS_APPLE :: forall a. (Eq a, Num a) => a
GL_SYNC_STATUS_APPLE = 0x9114
pattern GL_TIMEOUT_EXPIRED_APPLE :: (Eq a, Num a) => a
pattern $mGL_TIMEOUT_EXPIRED_APPLE :: forall {r} {a}.
(Eq a, Num a) =>
a -> ((# #) -> r) -> ((# #) -> r) -> r
$bGL_TIMEOUT_EXPIRED_APPLE :: forall a. (Eq a, Num a) => a
GL_TIMEOUT_EXPIRED_APPLE = 0x911B
pattern GL_TIMEOUT_IGNORED_APPLE :: (Eq a, Num a) => a
pattern $mGL_TIMEOUT_IGNORED_APPLE :: forall {r} {a}.
(Eq a, Num a) =>
a -> ((# #) -> r) -> ((# #) -> r) -> r
$bGL_TIMEOUT_IGNORED_APPLE :: forall a. (Eq a, Num a) => a
GL_TIMEOUT_IGNORED_APPLE = 0xFFFFFFFFFFFFFFFF
pattern GL_UNSIGNALED_APPLE :: (Eq a, Num a) => a
pattern $mGL_UNSIGNALED_APPLE :: forall {r} {a}.
(Eq a, Num a) =>
a -> ((# #) -> r) -> ((# #) -> r) -> r
$bGL_UNSIGNALED_APPLE :: forall a. (Eq a, Num a) => a
GL_UNSIGNALED_APPLE = 0x9118
pattern GL_WAIT_FAILED_APPLE :: (Eq a, Num a) => a
pattern $mGL_WAIT_FAILED_APPLE :: forall {r} {a}.
(Eq a, Num a) =>
a -> ((# #) -> r) -> ((# #) -> r) -> r
$bGL_WAIT_FAILED_APPLE :: forall a. (Eq a, Num a) => a
GL_WAIT_FAILED_APPLE = 0x911D