module Graphics.GL.Ext.OES.Mapbuffer (
gl_OES_mapbuffer
, glGetBufferPointervOES
, glMapBufferOES
, glUnmapBufferOES
, pattern GL_BUFFER_ACCESS_OES
, pattern GL_BUFFER_MAPPED_OES
, pattern GL_BUFFER_MAP_POINTER_OES
, pattern GL_WRITE_ONLY_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_mapbuffer :: Bool
gl_OES_mapbuffer = member "GL_OES_mapbuffer" extensions
glGetBufferPointervOES :: MonadIO m => GLenum -> GLenum -> Ptr (Ptr ()) -> m ()
glGetBufferPointervOES = ffienumenumPtrPtrVIOV glGetBufferPointervOESFunPtr
glGetBufferPointervOESFunPtr :: FunPtr (GLenum -> GLenum -> Ptr (Ptr ()) -> IO ())
glGetBufferPointervOESFunPtr = unsafePerformIO (getProcAddress "glGetBufferPointervOES")
glMapBufferOES :: MonadIO m => GLenum -> GLenum -> m (Ptr ())
glMapBufferOES = ffienumenumIOPtrV glMapBufferOESFunPtr
glMapBufferOESFunPtr :: FunPtr (GLenum -> GLenum -> IO (Ptr ()))
glMapBufferOESFunPtr = unsafePerformIO (getProcAddress "glMapBufferOES")
glUnmapBufferOES :: MonadIO m => GLenum -> m GLboolean
glUnmapBufferOES = ffienumIOboolean glUnmapBufferOESFunPtr
glUnmapBufferOESFunPtr :: FunPtr (GLenum -> IO GLboolean)
glUnmapBufferOESFunPtr = unsafePerformIO (getProcAddress "glUnmapBufferOES")
pattern GL_BUFFER_ACCESS_OES = 0x88BB
pattern GL_BUFFER_MAPPED_OES = 0x88BC
pattern GL_BUFFER_MAP_POINTER_OES = 0x88BD
pattern GL_WRITE_ONLY_OES = 0x88B9