{-# LANGUAGE CPP, ScopedTypeVariables, PatternSynonyms #-}
module Graphics.GL.Ext.ARB.TransposeMatrix (
gl_ARB_transpose_matrix
, glLoadTransposeMatrixdARB
, glLoadTransposeMatrixfARB
, glMultTransposeMatrixdARB
, glMultTransposeMatrixfARB
, pattern GL_TRANSPOSE_COLOR_MATRIX_ARB
, pattern GL_TRANSPOSE_MODELVIEW_MATRIX_ARB
, pattern GL_TRANSPOSE_PROJECTION_MATRIX_ARB
, pattern GL_TRANSPOSE_TEXTURE_MATRIX_ARB
) 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_ARB_transpose_matrix :: Bool
gl_ARB_transpose_matrix :: Bool
gl_ARB_transpose_matrix = String -> Set String -> Bool
forall a. Ord a => a -> Set a -> Bool
member String
"GL_ARB_transpose_matrix" Set String
extensions
{-# NOINLINE gl_ARB_transpose_matrix #-}
glLoadTransposeMatrixdARB :: MonadIO m => Ptr GLdouble -> m ()
glLoadTransposeMatrixdARB :: forall (m :: * -> *). MonadIO m => Ptr GLdouble -> m ()
glLoadTransposeMatrixdARB = FunPtr (Ptr GLdouble -> IO ()) -> Ptr GLdouble -> m ()
forall (m :: * -> *).
MonadIO m =>
FunPtr (Ptr GLdouble -> IO ()) -> Ptr GLdouble -> m ()
ffiPtrdoubleIOV FunPtr (Ptr GLdouble -> IO ())
glLoadTransposeMatrixdARBFunPtr
glLoadTransposeMatrixdARBFunPtr :: FunPtr (Ptr GLdouble -> IO ())
glLoadTransposeMatrixdARBFunPtr :: FunPtr (Ptr GLdouble -> IO ())
glLoadTransposeMatrixdARBFunPtr = IO (FunPtr (Ptr GLdouble -> IO ()))
-> FunPtr (Ptr GLdouble -> IO ())
forall a. IO a -> a
unsafePerformIO (String -> IO (FunPtr (Ptr GLdouble -> IO ()))
forall a. String -> IO (FunPtr a)
getProcAddress String
"glLoadTransposeMatrixdARB")
{-# NOINLINE glLoadTransposeMatrixdARBFunPtr #-}
glLoadTransposeMatrixfARB :: MonadIO m => Ptr GLfloat -> m ()
glLoadTransposeMatrixfARB :: forall (m :: * -> *). MonadIO m => Ptr GLfloat -> m ()
glLoadTransposeMatrixfARB = FunPtr (Ptr GLfloat -> IO ()) -> Ptr GLfloat -> m ()
forall (m :: * -> *).
MonadIO m =>
FunPtr (Ptr GLfloat -> IO ()) -> Ptr GLfloat -> m ()
ffiPtrfloatIOV FunPtr (Ptr GLfloat -> IO ())
glLoadTransposeMatrixfARBFunPtr
glLoadTransposeMatrixfARBFunPtr :: FunPtr (Ptr GLfloat -> IO ())
glLoadTransposeMatrixfARBFunPtr :: FunPtr (Ptr GLfloat -> IO ())
glLoadTransposeMatrixfARBFunPtr = IO (FunPtr (Ptr GLfloat -> IO ())) -> FunPtr (Ptr GLfloat -> IO ())
forall a. IO a -> a
unsafePerformIO (String -> IO (FunPtr (Ptr GLfloat -> IO ()))
forall a. String -> IO (FunPtr a)
getProcAddress String
"glLoadTransposeMatrixfARB")
{-# NOINLINE glLoadTransposeMatrixfARBFunPtr #-}
glMultTransposeMatrixdARB :: MonadIO m => Ptr GLdouble -> m ()
glMultTransposeMatrixdARB :: forall (m :: * -> *). MonadIO m => Ptr GLdouble -> m ()
glMultTransposeMatrixdARB = FunPtr (Ptr GLdouble -> IO ()) -> Ptr GLdouble -> m ()
forall (m :: * -> *).
MonadIO m =>
FunPtr (Ptr GLdouble -> IO ()) -> Ptr GLdouble -> m ()
ffiPtrdoubleIOV FunPtr (Ptr GLdouble -> IO ())
glMultTransposeMatrixdARBFunPtr
glMultTransposeMatrixdARBFunPtr :: FunPtr (Ptr GLdouble -> IO ())
glMultTransposeMatrixdARBFunPtr :: FunPtr (Ptr GLdouble -> IO ())
glMultTransposeMatrixdARBFunPtr = IO (FunPtr (Ptr GLdouble -> IO ()))
-> FunPtr (Ptr GLdouble -> IO ())
forall a. IO a -> a
unsafePerformIO (String -> IO (FunPtr (Ptr GLdouble -> IO ()))
forall a. String -> IO (FunPtr a)
getProcAddress String
"glMultTransposeMatrixdARB")
{-# NOINLINE glMultTransposeMatrixdARBFunPtr #-}
glMultTransposeMatrixfARB :: MonadIO m => Ptr GLfloat -> m ()
glMultTransposeMatrixfARB :: forall (m :: * -> *). MonadIO m => Ptr GLfloat -> m ()
glMultTransposeMatrixfARB = FunPtr (Ptr GLfloat -> IO ()) -> Ptr GLfloat -> m ()
forall (m :: * -> *).
MonadIO m =>
FunPtr (Ptr GLfloat -> IO ()) -> Ptr GLfloat -> m ()
ffiPtrfloatIOV FunPtr (Ptr GLfloat -> IO ())
glMultTransposeMatrixfARBFunPtr
glMultTransposeMatrixfARBFunPtr :: FunPtr (Ptr GLfloat -> IO ())
glMultTransposeMatrixfARBFunPtr :: FunPtr (Ptr GLfloat -> IO ())
glMultTransposeMatrixfARBFunPtr = IO (FunPtr (Ptr GLfloat -> IO ())) -> FunPtr (Ptr GLfloat -> IO ())
forall a. IO a -> a
unsafePerformIO (String -> IO (FunPtr (Ptr GLfloat -> IO ()))
forall a. String -> IO (FunPtr a)
getProcAddress String
"glMultTransposeMatrixfARB")
{-# NOINLINE glMultTransposeMatrixfARBFunPtr #-}
pattern GL_TRANSPOSE_COLOR_MATRIX_ARB :: (Eq a, Num a) => a
pattern $mGL_TRANSPOSE_COLOR_MATRIX_ARB :: forall {r} {a}.
(Eq a, Num a) =>
a -> ((# #) -> r) -> ((# #) -> r) -> r
$bGL_TRANSPOSE_COLOR_MATRIX_ARB :: forall a. (Eq a, Num a) => a
GL_TRANSPOSE_COLOR_MATRIX_ARB = 0x84E6
pattern GL_TRANSPOSE_MODELVIEW_MATRIX_ARB :: (Eq a, Num a) => a
pattern $mGL_TRANSPOSE_MODELVIEW_MATRIX_ARB :: forall {r} {a}.
(Eq a, Num a) =>
a -> ((# #) -> r) -> ((# #) -> r) -> r
$bGL_TRANSPOSE_MODELVIEW_MATRIX_ARB :: forall a. (Eq a, Num a) => a
GL_TRANSPOSE_MODELVIEW_MATRIX_ARB = 0x84E3
pattern GL_TRANSPOSE_PROJECTION_MATRIX_ARB :: (Eq a, Num a) => a
pattern $mGL_TRANSPOSE_PROJECTION_MATRIX_ARB :: forall {r} {a}.
(Eq a, Num a) =>
a -> ((# #) -> r) -> ((# #) -> r) -> r
$bGL_TRANSPOSE_PROJECTION_MATRIX_ARB :: forall a. (Eq a, Num a) => a
GL_TRANSPOSE_PROJECTION_MATRIX_ARB = 0x84E4
pattern GL_TRANSPOSE_TEXTURE_MATRIX_ARB :: (Eq a, Num a) => a
pattern $mGL_TRANSPOSE_TEXTURE_MATRIX_ARB :: forall {r} {a}.
(Eq a, Num a) =>
a -> ((# #) -> r) -> ((# #) -> r) -> r
$bGL_TRANSPOSE_TEXTURE_MATRIX_ARB :: forall a. (Eq a, Num a) => a
GL_TRANSPOSE_TEXTURE_MATRIX_ARB = 0x84E5