module Graphics.GL.Ext.EXT.MultiviewDrawBuffers (
gl_EXT_multiview_draw_buffers
, glDrawBuffersIndexedEXT
, glGetIntegeri_vEXT
, glReadBufferIndexedEXT
, pattern GL_COLOR_ATTACHMENT_EXT
, pattern GL_DRAW_BUFFER_EXT
, pattern GL_MAX_MULTIVIEW_BUFFERS_EXT
, pattern GL_MULTIVIEW_EXT
, pattern GL_READ_BUFFER_EXT
) 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_multiview_draw_buffers :: Bool
gl_EXT_multiview_draw_buffers = member "GL_EXT_multiview_draw_buffers" extensions
glDrawBuffersIndexedEXT :: MonadIO m => GLint -> Ptr GLenum -> Ptr GLint -> m ()
glDrawBuffersIndexedEXT = ffiintPtrenumPtrintIOV glDrawBuffersIndexedEXTFunPtr
glDrawBuffersIndexedEXTFunPtr :: FunPtr (GLint -> Ptr GLenum -> Ptr GLint -> IO ())
glDrawBuffersIndexedEXTFunPtr = unsafePerformIO (getProcAddress "glDrawBuffersIndexedEXT")
glGetIntegeri_vEXT :: MonadIO m => GLenum -> GLuint -> Ptr GLint -> m ()
glGetIntegeri_vEXT = ffienumuintPtrintIOV glGetIntegeri_vEXTFunPtr
glGetIntegeri_vEXTFunPtr :: FunPtr (GLenum -> GLuint -> Ptr GLint -> IO ())
glGetIntegeri_vEXTFunPtr = unsafePerformIO (getProcAddress "glGetIntegeri_vEXT")
glReadBufferIndexedEXT :: MonadIO m => GLenum -> GLint -> m ()
glReadBufferIndexedEXT = ffienumintIOV glReadBufferIndexedEXTFunPtr
glReadBufferIndexedEXTFunPtr :: FunPtr (GLenum -> GLint -> IO ())
glReadBufferIndexedEXTFunPtr = unsafePerformIO (getProcAddress "glReadBufferIndexedEXT")
pattern GL_COLOR_ATTACHMENT_EXT = 0x90F0
pattern GL_DRAW_BUFFER_EXT = 0x0C01
pattern GL_MAX_MULTIVIEW_BUFFERS_EXT = 0x90F2
pattern GL_MULTIVIEW_EXT = 0x90F1
pattern GL_READ_BUFFER_EXT = 0x0C02