{-# LANGUAGE CPP, ScopedTypeVariables, PatternSynonyms #-}
module Graphics.GL.Ext.EXT.DrawElementsBaseVertex (
gl_EXT_draw_elements_base_vertex
, glDrawElementsBaseVertexEXT
, glDrawElementsInstancedBaseVertexEXT
, glDrawRangeElementsBaseVertexEXT
, glMultiDrawElementsBaseVertexEXT
) 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_EXT_draw_elements_base_vertex :: Bool
gl_EXT_draw_elements_base_vertex :: Bool
gl_EXT_draw_elements_base_vertex = [Char] -> Set [Char] -> Bool
forall a. Ord a => a -> Set a -> Bool
member "GL_EXT_draw_elements_base_vertex" Set [Char]
extensions
{-# NOINLINE gl_EXT_draw_elements_base_vertex #-}
glDrawElementsBaseVertexEXT :: MonadIO m => GLenum -> GLsizei -> GLenum -> Ptr () -> GLint -> m ()
glDrawElementsBaseVertexEXT :: GLenum -> GLsizei -> GLenum -> Ptr () -> GLsizei -> m ()
glDrawElementsBaseVertexEXT = FunPtr (GLenum -> GLsizei -> GLenum -> Ptr () -> GLsizei -> IO ())
-> GLenum -> GLsizei -> GLenum -> Ptr () -> GLsizei -> m ()
forall (m :: * -> *).
MonadIO m =>
FunPtr (GLenum -> GLsizei -> GLenum -> Ptr () -> GLsizei -> IO ())
-> GLenum -> GLsizei -> GLenum -> Ptr () -> GLsizei -> m ()
ffienumsizeienumPtrVintIOV FunPtr (GLenum -> GLsizei -> GLenum -> Ptr () -> GLsizei -> IO ())
glDrawElementsBaseVertexEXTFunPtr
glDrawElementsBaseVertexEXTFunPtr :: FunPtr (GLenum -> GLsizei -> GLenum -> Ptr () -> GLint -> IO ())
glDrawElementsBaseVertexEXTFunPtr :: FunPtr (GLenum -> GLsizei -> GLenum -> Ptr () -> GLsizei -> IO ())
glDrawElementsBaseVertexEXTFunPtr = IO
(FunPtr
(GLenum -> GLsizei -> GLenum -> Ptr () -> GLsizei -> IO ()))
-> FunPtr
(GLenum -> GLsizei -> GLenum -> Ptr () -> GLsizei -> IO ())
forall a. IO a -> a
unsafePerformIO ([Char]
-> IO
(FunPtr
(GLenum -> GLsizei -> GLenum -> Ptr () -> GLsizei -> IO ()))
forall a. [Char] -> IO (FunPtr a)
getProcAddress "glDrawElementsBaseVertexEXT")
{-# NOINLINE glDrawElementsBaseVertexEXTFunPtr #-}
glDrawElementsInstancedBaseVertexEXT :: MonadIO m => GLenum -> GLsizei -> GLenum -> Ptr () -> GLsizei -> GLint -> m ()
glDrawElementsInstancedBaseVertexEXT :: GLenum -> GLsizei -> GLenum -> Ptr () -> GLsizei -> GLsizei -> m ()
glDrawElementsInstancedBaseVertexEXT = FunPtr
(GLenum
-> GLsizei -> GLenum -> Ptr () -> GLsizei -> GLsizei -> IO ())
-> GLenum
-> GLsizei
-> GLenum
-> Ptr ()
-> GLsizei
-> GLsizei
-> m ()
forall (m :: * -> *).
MonadIO m =>
FunPtr
(GLenum
-> GLsizei -> GLenum -> Ptr () -> GLsizei -> GLsizei -> IO ())
-> GLenum
-> GLsizei
-> GLenum
-> Ptr ()
-> GLsizei
-> GLsizei
-> m ()
ffienumsizeienumPtrVsizeiintIOV FunPtr
(GLenum
-> GLsizei -> GLenum -> Ptr () -> GLsizei -> GLsizei -> IO ())
glDrawElementsInstancedBaseVertexEXTFunPtr
glDrawElementsInstancedBaseVertexEXTFunPtr :: FunPtr (GLenum -> GLsizei -> GLenum -> Ptr () -> GLsizei -> GLint -> IO ())
glDrawElementsInstancedBaseVertexEXTFunPtr :: FunPtr
(GLenum
-> GLsizei -> GLenum -> Ptr () -> GLsizei -> GLsizei -> IO ())
glDrawElementsInstancedBaseVertexEXTFunPtr = IO
(FunPtr
(GLenum
-> GLsizei -> GLenum -> Ptr () -> GLsizei -> GLsizei -> IO ()))
-> FunPtr
(GLenum
-> GLsizei -> GLenum -> Ptr () -> GLsizei -> GLsizei -> IO ())
forall a. IO a -> a
unsafePerformIO ([Char]
-> IO
(FunPtr
(GLenum
-> GLsizei -> GLenum -> Ptr () -> GLsizei -> GLsizei -> IO ()))
forall a. [Char] -> IO (FunPtr a)
getProcAddress "glDrawElementsInstancedBaseVertexEXT")
{-# NOINLINE glDrawElementsInstancedBaseVertexEXTFunPtr #-}
glDrawRangeElementsBaseVertexEXT :: MonadIO m => GLenum -> GLuint -> GLuint -> GLsizei -> GLenum -> Ptr () -> GLint -> m ()
glDrawRangeElementsBaseVertexEXT :: GLenum
-> GLenum
-> GLenum
-> GLsizei
-> GLenum
-> Ptr ()
-> GLsizei
-> m ()
glDrawRangeElementsBaseVertexEXT = FunPtr
(GLenum
-> GLenum
-> GLenum
-> GLsizei
-> GLenum
-> Ptr ()
-> GLsizei
-> IO ())
-> GLenum
-> GLenum
-> GLenum
-> GLsizei
-> GLenum
-> Ptr ()
-> GLsizei
-> m ()
forall (m :: * -> *).
MonadIO m =>
FunPtr
(GLenum
-> GLenum
-> GLenum
-> GLsizei
-> GLenum
-> Ptr ()
-> GLsizei
-> IO ())
-> GLenum
-> GLenum
-> GLenum
-> GLsizei
-> GLenum
-> Ptr ()
-> GLsizei
-> m ()
ffienumuintuintsizeienumPtrVintIOV FunPtr
(GLenum
-> GLenum
-> GLenum
-> GLsizei
-> GLenum
-> Ptr ()
-> GLsizei
-> IO ())
glDrawRangeElementsBaseVertexEXTFunPtr
glDrawRangeElementsBaseVertexEXTFunPtr :: FunPtr (GLenum -> GLuint -> GLuint -> GLsizei -> GLenum -> Ptr () -> GLint -> IO ())
glDrawRangeElementsBaseVertexEXTFunPtr :: FunPtr
(GLenum
-> GLenum
-> GLenum
-> GLsizei
-> GLenum
-> Ptr ()
-> GLsizei
-> IO ())
glDrawRangeElementsBaseVertexEXTFunPtr = IO
(FunPtr
(GLenum
-> GLenum
-> GLenum
-> GLsizei
-> GLenum
-> Ptr ()
-> GLsizei
-> IO ()))
-> FunPtr
(GLenum
-> GLenum
-> GLenum
-> GLsizei
-> GLenum
-> Ptr ()
-> GLsizei
-> IO ())
forall a. IO a -> a
unsafePerformIO ([Char]
-> IO
(FunPtr
(GLenum
-> GLenum
-> GLenum
-> GLsizei
-> GLenum
-> Ptr ()
-> GLsizei
-> IO ()))
forall a. [Char] -> IO (FunPtr a)
getProcAddress "glDrawRangeElementsBaseVertexEXT")
{-# NOINLINE glDrawRangeElementsBaseVertexEXTFunPtr #-}
glMultiDrawElementsBaseVertexEXT :: MonadIO m => GLenum -> Ptr GLsizei -> GLenum -> Ptr (Ptr ()) -> GLsizei -> Ptr GLint -> m ()
glMultiDrawElementsBaseVertexEXT :: GLenum
-> Ptr GLsizei
-> GLenum
-> Ptr (Ptr ())
-> GLsizei
-> Ptr GLsizei
-> m ()
glMultiDrawElementsBaseVertexEXT = FunPtr
(GLenum
-> Ptr GLsizei
-> GLenum
-> Ptr (Ptr ())
-> GLsizei
-> Ptr GLsizei
-> IO ())
-> GLenum
-> Ptr GLsizei
-> GLenum
-> Ptr (Ptr ())
-> GLsizei
-> Ptr GLsizei
-> m ()
forall (m :: * -> *).
MonadIO m =>
FunPtr
(GLenum
-> Ptr GLsizei
-> GLenum
-> Ptr (Ptr ())
-> GLsizei
-> Ptr GLsizei
-> IO ())
-> GLenum
-> Ptr GLsizei
-> GLenum
-> Ptr (Ptr ())
-> GLsizei
-> Ptr GLsizei
-> m ()
ffienumPtrsizeienumPtrPtrVsizeiPtrintIOV FunPtr
(GLenum
-> Ptr GLsizei
-> GLenum
-> Ptr (Ptr ())
-> GLsizei
-> Ptr GLsizei
-> IO ())
glMultiDrawElementsBaseVertexEXTFunPtr
glMultiDrawElementsBaseVertexEXTFunPtr :: FunPtr (GLenum -> Ptr GLsizei -> GLenum -> Ptr (Ptr ()) -> GLsizei -> Ptr GLint -> IO ())
glMultiDrawElementsBaseVertexEXTFunPtr :: FunPtr
(GLenum
-> Ptr GLsizei
-> GLenum
-> Ptr (Ptr ())
-> GLsizei
-> Ptr GLsizei
-> IO ())
glMultiDrawElementsBaseVertexEXTFunPtr = IO
(FunPtr
(GLenum
-> Ptr GLsizei
-> GLenum
-> Ptr (Ptr ())
-> GLsizei
-> Ptr GLsizei
-> IO ()))
-> FunPtr
(GLenum
-> Ptr GLsizei
-> GLenum
-> Ptr (Ptr ())
-> GLsizei
-> Ptr GLsizei
-> IO ())
forall a. IO a -> a
unsafePerformIO ([Char]
-> IO
(FunPtr
(GLenum
-> Ptr GLsizei
-> GLenum
-> Ptr (Ptr ())
-> GLsizei
-> Ptr GLsizei
-> IO ()))
forall a. [Char] -> IO (FunPtr a)
getProcAddress "glMultiDrawElementsBaseVertexEXT")
{-# NOINLINE glMultiDrawElementsBaseVertexEXTFunPtr #-}