{-# LANGUAGE CPP, ScopedTypeVariables, PatternSynonyms #-}
module Graphics.GL.Ext.OES.GetProgramBinary (
gl_OES_get_program_binary
, glGetProgramBinaryOES
, glProgramBinaryOES
, pattern GL_NUM_PROGRAM_BINARY_FORMATS_OES
, pattern GL_PROGRAM_BINARY_FORMATS_OES
, pattern GL_PROGRAM_BINARY_LENGTH_OES
) 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_OES_get_program_binary :: Bool
gl_OES_get_program_binary :: Bool
gl_OES_get_program_binary = [Char] -> Set [Char] -> Bool
forall a. Ord a => a -> Set a -> Bool
member "GL_OES_get_program_binary" Set [Char]
extensions
{-# NOINLINE gl_OES_get_program_binary #-}
glGetProgramBinaryOES :: MonadIO m => GLuint -> GLsizei -> Ptr GLsizei -> Ptr GLenum -> Ptr () -> m ()
glGetProgramBinaryOES :: GLuint -> GLsizei -> Ptr GLsizei -> Ptr GLuint -> Ptr () -> m ()
glGetProgramBinaryOES = FunPtr
(GLuint -> GLsizei -> Ptr GLsizei -> Ptr GLuint -> Ptr () -> IO ())
-> GLuint -> GLsizei -> Ptr GLsizei -> Ptr GLuint -> Ptr () -> m ()
forall (m :: * -> *).
MonadIO m =>
FunPtr
(GLuint -> GLsizei -> Ptr GLsizei -> Ptr GLuint -> Ptr () -> IO ())
-> GLuint -> GLsizei -> Ptr GLsizei -> Ptr GLuint -> Ptr () -> m ()
ffiuintsizeiPtrsizeiPtrenumPtrVIOV FunPtr
(GLuint -> GLsizei -> Ptr GLsizei -> Ptr GLuint -> Ptr () -> IO ())
glGetProgramBinaryOESFunPtr
glGetProgramBinaryOESFunPtr :: FunPtr (GLuint -> GLsizei -> Ptr GLsizei -> Ptr GLenum -> Ptr () -> IO ())
glGetProgramBinaryOESFunPtr :: FunPtr
(GLuint -> GLsizei -> Ptr GLsizei -> Ptr GLuint -> Ptr () -> IO ())
glGetProgramBinaryOESFunPtr = IO
(FunPtr
(GLuint
-> GLsizei -> Ptr GLsizei -> Ptr GLuint -> Ptr () -> IO ()))
-> FunPtr
(GLuint -> GLsizei -> Ptr GLsizei -> Ptr GLuint -> Ptr () -> IO ())
forall a. IO a -> a
unsafePerformIO ([Char]
-> IO
(FunPtr
(GLuint
-> GLsizei -> Ptr GLsizei -> Ptr GLuint -> Ptr () -> IO ()))
forall a. [Char] -> IO (FunPtr a)
getProcAddress "glGetProgramBinaryOES")
{-# NOINLINE glGetProgramBinaryOESFunPtr #-}
glProgramBinaryOES :: MonadIO m => GLuint -> GLenum -> Ptr () -> GLint -> m ()
glProgramBinaryOES :: GLuint -> GLuint -> Ptr () -> GLsizei -> m ()
glProgramBinaryOES = FunPtr (GLuint -> GLuint -> Ptr () -> GLsizei -> IO ())
-> GLuint -> GLuint -> Ptr () -> GLsizei -> m ()
forall (m :: * -> *).
MonadIO m =>
FunPtr (GLuint -> GLuint -> Ptr () -> GLsizei -> IO ())
-> GLuint -> GLuint -> Ptr () -> GLsizei -> m ()
ffiuintenumPtrVintIOV FunPtr (GLuint -> GLuint -> Ptr () -> GLsizei -> IO ())
glProgramBinaryOESFunPtr
glProgramBinaryOESFunPtr :: FunPtr (GLuint -> GLenum -> Ptr () -> GLint -> IO ())
glProgramBinaryOESFunPtr :: FunPtr (GLuint -> GLuint -> Ptr () -> GLsizei -> IO ())
glProgramBinaryOESFunPtr = IO (FunPtr (GLuint -> GLuint -> Ptr () -> GLsizei -> IO ()))
-> FunPtr (GLuint -> GLuint -> Ptr () -> GLsizei -> IO ())
forall a. IO a -> a
unsafePerformIO ([Char]
-> IO (FunPtr (GLuint -> GLuint -> Ptr () -> GLsizei -> IO ()))
forall a. [Char] -> IO (FunPtr a)
getProcAddress "glProgramBinaryOES")
{-# NOINLINE glProgramBinaryOESFunPtr #-}
pattern $bGL_NUM_PROGRAM_BINARY_FORMATS_OES :: a
$mGL_NUM_PROGRAM_BINARY_FORMATS_OES :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
GL_NUM_PROGRAM_BINARY_FORMATS_OES = 0x87FE
pattern $bGL_PROGRAM_BINARY_FORMATS_OES :: a
$mGL_PROGRAM_BINARY_FORMATS_OES :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
GL_PROGRAM_BINARY_FORMATS_OES = 0x87FF
pattern $bGL_PROGRAM_BINARY_LENGTH_OES :: a
$mGL_PROGRAM_BINARY_LENGTH_OES :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
GL_PROGRAM_BINARY_LENGTH_OES = 0x8741