gl-0.9: generated-src/Graphics/GL/Ext/NV/PresentVideo.hs
-- This file was automatically generated.
{-# LANGUAGE CPP, ScopedTypeVariables, PatternSynonyms #-}
module Graphics.GL.Ext.NV.PresentVideo (
-- * Extension Support
gl_NV_present_video
-- * GL_NV_present_video
, glGetVideoi64vNV
, glGetVideoivNV
, glGetVideoui64vNV
, glGetVideouivNV
, glPresentFrameDualFillNV
, glPresentFrameKeyedNV
, pattern GL_CURRENT_TIME_NV
, pattern GL_FIELDS_NV
, pattern GL_FRAME_NV
, pattern GL_NUM_FILL_STREAMS_NV
, pattern GL_PRESENT_DURATION_NV
, pattern GL_PRESENT_TIME_NV
) 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
-- | Checks that the <https://cvs.khronos.org/svn/repos/ogl/trunk/doc/registry/public/specs/NV/present_video.txt GL_NV_present_video> extension is available.
gl_NV_present_video :: Bool
gl_NV_present_video = member "GL_NV_present_video" extensions
{-# NOINLINE gl_NV_present_video #-}
-- | Usage: @'glGetVideoi64vNV' video_slot pname params@
--
-- The length of @params@ should be @COMPSIZE(pname)@.
glGetVideoi64vNV :: MonadIO m => GLuint -> GLenum -> Ptr GLint64EXT -> m ()
glGetVideoi64vNV = ffiuintenumPtrint64EXTIOV glGetVideoi64vNVFunPtr
glGetVideoi64vNVFunPtr :: FunPtr (GLuint -> GLenum -> Ptr GLint64EXT -> IO ())
glGetVideoi64vNVFunPtr = unsafePerformIO (getProcAddress "glGetVideoi64vNV")
{-# NOINLINE glGetVideoi64vNVFunPtr #-}
-- | Usage: @'glGetVideoivNV' video_slot pname params@
--
-- The length of @params@ should be @COMPSIZE(pname)@.
glGetVideoivNV :: MonadIO m => GLuint -> GLenum -> Ptr GLint -> m ()
glGetVideoivNV = ffiuintenumPtrintIOV glGetVideoivNVFunPtr
glGetVideoivNVFunPtr :: FunPtr (GLuint -> GLenum -> Ptr GLint -> IO ())
glGetVideoivNVFunPtr = unsafePerformIO (getProcAddress "glGetVideoivNV")
{-# NOINLINE glGetVideoivNVFunPtr #-}
-- | Usage: @'glGetVideoui64vNV' video_slot pname params@
--
-- The length of @params@ should be @COMPSIZE(pname)@.
glGetVideoui64vNV :: MonadIO m => GLuint -> GLenum -> Ptr GLuint64EXT -> m ()
glGetVideoui64vNV = ffiuintenumPtruint64EXTIOV glGetVideoui64vNVFunPtr
glGetVideoui64vNVFunPtr :: FunPtr (GLuint -> GLenum -> Ptr GLuint64EXT -> IO ())
glGetVideoui64vNVFunPtr = unsafePerformIO (getProcAddress "glGetVideoui64vNV")
{-# NOINLINE glGetVideoui64vNVFunPtr #-}
-- | Usage: @'glGetVideouivNV' video_slot pname params@
--
-- The length of @params@ should be @COMPSIZE(pname)@.
glGetVideouivNV :: MonadIO m => GLuint -> GLenum -> Ptr GLuint -> m ()
glGetVideouivNV = ffiuintenumPtruintIOV glGetVideouivNVFunPtr
glGetVideouivNVFunPtr :: FunPtr (GLuint -> GLenum -> Ptr GLuint -> IO ())
glGetVideouivNVFunPtr = unsafePerformIO (getProcAddress "glGetVideouivNV")
{-# NOINLINE glGetVideouivNVFunPtr #-}
-- | Usage: @'glPresentFrameDualFillNV' video_slot minPresentTime beginPresentTimeId presentDurationId type target0 fill0 target1 fill1 target2 fill2 target3 fill3@
glPresentFrameDualFillNV :: MonadIO m => GLuint -> GLuint64EXT -> GLuint -> GLuint -> GLenum -> GLenum -> GLuint -> GLenum -> GLuint -> GLenum -> GLuint -> GLenum -> GLuint -> m ()
glPresentFrameDualFillNV = ffiuintuint64EXTuintuintenumenumuintenumuintenumuintenumuintIOV glPresentFrameDualFillNVFunPtr
glPresentFrameDualFillNVFunPtr :: FunPtr (GLuint -> GLuint64EXT -> GLuint -> GLuint -> GLenum -> GLenum -> GLuint -> GLenum -> GLuint -> GLenum -> GLuint -> GLenum -> GLuint -> IO ())
glPresentFrameDualFillNVFunPtr = unsafePerformIO (getProcAddress "glPresentFrameDualFillNV")
{-# NOINLINE glPresentFrameDualFillNVFunPtr #-}
-- | Usage: @'glPresentFrameKeyedNV' video_slot minPresentTime beginPresentTimeId presentDurationId type target0 fill0 key0 target1 fill1 key1@
glPresentFrameKeyedNV :: MonadIO m => GLuint -> GLuint64EXT -> GLuint -> GLuint -> GLenum -> GLenum -> GLuint -> GLuint -> GLenum -> GLuint -> GLuint -> m ()
glPresentFrameKeyedNV = ffiuintuint64EXTuintuintenumenumuintuintenumuintuintIOV glPresentFrameKeyedNVFunPtr
glPresentFrameKeyedNVFunPtr :: FunPtr (GLuint -> GLuint64EXT -> GLuint -> GLuint -> GLenum -> GLenum -> GLuint -> GLuint -> GLenum -> GLuint -> GLuint -> IO ())
glPresentFrameKeyedNVFunPtr = unsafePerformIO (getProcAddress "glPresentFrameKeyedNV")
{-# NOINLINE glPresentFrameKeyedNVFunPtr #-}
pattern GL_CURRENT_TIME_NV = 0x8E28
pattern GL_FIELDS_NV = 0x8E27
pattern GL_FRAME_NV = 0x8E26
pattern GL_NUM_FILL_STREAMS_NV = 0x8E29
pattern GL_PRESENT_DURATION_NV = 0x8E2B
pattern GL_PRESENT_TIME_NV = 0x8E2A