{-# LANGUAGE CPP, ScopedTypeVariables, PatternSynonyms #-}
module Graphics.GL.Ext.NV.BindlessTexture (
gl_NV_bindless_texture
, glGetImageHandleNV
, glGetTextureHandleNV
, glGetTextureSamplerHandleNV
, glIsImageHandleResidentNV
, glIsTextureHandleResidentNV
, glMakeImageHandleNonResidentNV
, glMakeImageHandleResidentNV
, glMakeTextureHandleNonResidentNV
, glMakeTextureHandleResidentNV
, glProgramUniformHandleui64NV
, glProgramUniformHandleui64vNV
, glUniformHandleui64NV
, glUniformHandleui64vNV
) 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_NV_bindless_texture :: Bool
gl_NV_bindless_texture :: Bool
gl_NV_bindless_texture = [Char] -> Set [Char] -> Bool
forall a. Ord a => a -> Set a -> Bool
member "GL_NV_bindless_texture" Set [Char]
extensions
{-# NOINLINE gl_NV_bindless_texture #-}
glGetImageHandleNV :: MonadIO m => GLuint -> GLint -> GLboolean -> GLint -> GLenum -> m GLuint64
glGetImageHandleNV :: GLuint -> GLint -> GLboolean -> GLint -> GLuint -> m GLuint64
glGetImageHandleNV = FunPtr
(GLuint -> GLint -> GLboolean -> GLint -> GLuint -> IO GLuint64)
-> GLuint -> GLint -> GLboolean -> GLint -> GLuint -> m GLuint64
forall (m :: * -> *).
MonadIO m =>
FunPtr
(GLuint -> GLint -> GLboolean -> GLint -> GLuint -> IO GLuint64)
-> GLuint -> GLint -> GLboolean -> GLint -> GLuint -> m GLuint64
ffiuintintbooleanintenumIOuint64 FunPtr
(GLuint -> GLint -> GLboolean -> GLint -> GLuint -> IO GLuint64)
glGetImageHandleNVFunPtr
glGetImageHandleNVFunPtr :: FunPtr (GLuint -> GLint -> GLboolean -> GLint -> GLenum -> IO GLuint64)
glGetImageHandleNVFunPtr :: FunPtr
(GLuint -> GLint -> GLboolean -> GLint -> GLuint -> IO GLuint64)
glGetImageHandleNVFunPtr = IO
(FunPtr
(GLuint -> GLint -> GLboolean -> GLint -> GLuint -> IO GLuint64))
-> FunPtr
(GLuint -> GLint -> GLboolean -> GLint -> GLuint -> IO GLuint64)
forall a. IO a -> a
unsafePerformIO ([Char]
-> IO
(FunPtr
(GLuint -> GLint -> GLboolean -> GLint -> GLuint -> IO GLuint64))
forall a. [Char] -> IO (FunPtr a)
getProcAddress "glGetImageHandleNV")
{-# NOINLINE glGetImageHandleNVFunPtr #-}
glGetTextureHandleNV :: MonadIO m => GLuint -> m GLuint64
glGetTextureHandleNV :: GLuint -> m GLuint64
glGetTextureHandleNV = FunPtr (GLuint -> IO GLuint64) -> GLuint -> m GLuint64
forall (m :: * -> *).
MonadIO m =>
FunPtr (GLuint -> IO GLuint64) -> GLuint -> m GLuint64
ffiuintIOuint64 FunPtr (GLuint -> IO GLuint64)
glGetTextureHandleNVFunPtr
glGetTextureHandleNVFunPtr :: FunPtr (GLuint -> IO GLuint64)
glGetTextureHandleNVFunPtr :: FunPtr (GLuint -> IO GLuint64)
glGetTextureHandleNVFunPtr = IO (FunPtr (GLuint -> IO GLuint64))
-> FunPtr (GLuint -> IO GLuint64)
forall a. IO a -> a
unsafePerformIO ([Char] -> IO (FunPtr (GLuint -> IO GLuint64))
forall a. [Char] -> IO (FunPtr a)
getProcAddress "glGetTextureHandleNV")
{-# NOINLINE glGetTextureHandleNVFunPtr #-}
glGetTextureSamplerHandleNV :: MonadIO m => GLuint -> GLuint -> m GLuint64
glGetTextureSamplerHandleNV :: GLuint -> GLuint -> m GLuint64
glGetTextureSamplerHandleNV = FunPtr (GLuint -> GLuint -> IO GLuint64)
-> GLuint -> GLuint -> m GLuint64
forall (m :: * -> *).
MonadIO m =>
FunPtr (GLuint -> GLuint -> IO GLuint64)
-> GLuint -> GLuint -> m GLuint64
ffiuintuintIOuint64 FunPtr (GLuint -> GLuint -> IO GLuint64)
glGetTextureSamplerHandleNVFunPtr
glGetTextureSamplerHandleNVFunPtr :: FunPtr (GLuint -> GLuint -> IO GLuint64)
glGetTextureSamplerHandleNVFunPtr :: FunPtr (GLuint -> GLuint -> IO GLuint64)
glGetTextureSamplerHandleNVFunPtr = IO (FunPtr (GLuint -> GLuint -> IO GLuint64))
-> FunPtr (GLuint -> GLuint -> IO GLuint64)
forall a. IO a -> a
unsafePerformIO ([Char] -> IO (FunPtr (GLuint -> GLuint -> IO GLuint64))
forall a. [Char] -> IO (FunPtr a)
getProcAddress "glGetTextureSamplerHandleNV")
{-# NOINLINE glGetTextureSamplerHandleNVFunPtr #-}
glIsImageHandleResidentNV :: MonadIO m => GLuint64 -> m GLboolean
glIsImageHandleResidentNV :: GLuint64 -> m GLboolean
glIsImageHandleResidentNV = FunPtr (GLuint64 -> IO GLboolean) -> GLuint64 -> m GLboolean
forall (m :: * -> *).
MonadIO m =>
FunPtr (GLuint64 -> IO GLboolean) -> GLuint64 -> m GLboolean
ffiuint64IOboolean FunPtr (GLuint64 -> IO GLboolean)
glIsImageHandleResidentNVFunPtr
glIsImageHandleResidentNVFunPtr :: FunPtr (GLuint64 -> IO GLboolean)
glIsImageHandleResidentNVFunPtr :: FunPtr (GLuint64 -> IO GLboolean)
glIsImageHandleResidentNVFunPtr = IO (FunPtr (GLuint64 -> IO GLboolean))
-> FunPtr (GLuint64 -> IO GLboolean)
forall a. IO a -> a
unsafePerformIO ([Char] -> IO (FunPtr (GLuint64 -> IO GLboolean))
forall a. [Char] -> IO (FunPtr a)
getProcAddress "glIsImageHandleResidentNV")
{-# NOINLINE glIsImageHandleResidentNVFunPtr #-}
glIsTextureHandleResidentNV :: MonadIO m => GLuint64 -> m GLboolean
glIsTextureHandleResidentNV :: GLuint64 -> m GLboolean
glIsTextureHandleResidentNV = FunPtr (GLuint64 -> IO GLboolean) -> GLuint64 -> m GLboolean
forall (m :: * -> *).
MonadIO m =>
FunPtr (GLuint64 -> IO GLboolean) -> GLuint64 -> m GLboolean
ffiuint64IOboolean FunPtr (GLuint64 -> IO GLboolean)
glIsTextureHandleResidentNVFunPtr
glIsTextureHandleResidentNVFunPtr :: FunPtr (GLuint64 -> IO GLboolean)
glIsTextureHandleResidentNVFunPtr :: FunPtr (GLuint64 -> IO GLboolean)
glIsTextureHandleResidentNVFunPtr = IO (FunPtr (GLuint64 -> IO GLboolean))
-> FunPtr (GLuint64 -> IO GLboolean)
forall a. IO a -> a
unsafePerformIO ([Char] -> IO (FunPtr (GLuint64 -> IO GLboolean))
forall a. [Char] -> IO (FunPtr a)
getProcAddress "glIsTextureHandleResidentNV")
{-# NOINLINE glIsTextureHandleResidentNVFunPtr #-}
glMakeImageHandleNonResidentNV :: MonadIO m => GLuint64 -> m ()
glMakeImageHandleNonResidentNV :: GLuint64 -> m ()
glMakeImageHandleNonResidentNV = FunPtr (GLuint64 -> IO ()) -> GLuint64 -> m ()
forall (m :: * -> *).
MonadIO m =>
FunPtr (GLuint64 -> IO ()) -> GLuint64 -> m ()
ffiuint64IOV FunPtr (GLuint64 -> IO ())
glMakeImageHandleNonResidentNVFunPtr
glMakeImageHandleNonResidentNVFunPtr :: FunPtr (GLuint64 -> IO ())
glMakeImageHandleNonResidentNVFunPtr :: FunPtr (GLuint64 -> IO ())
glMakeImageHandleNonResidentNVFunPtr = IO (FunPtr (GLuint64 -> IO ())) -> FunPtr (GLuint64 -> IO ())
forall a. IO a -> a
unsafePerformIO ([Char] -> IO (FunPtr (GLuint64 -> IO ()))
forall a. [Char] -> IO (FunPtr a)
getProcAddress "glMakeImageHandleNonResidentNV")
{-# NOINLINE glMakeImageHandleNonResidentNVFunPtr #-}
glMakeImageHandleResidentNV :: MonadIO m => GLuint64 -> GLenum -> m ()
glMakeImageHandleResidentNV :: GLuint64 -> GLuint -> m ()
glMakeImageHandleResidentNV = FunPtr (GLuint64 -> GLuint -> IO ()) -> GLuint64 -> GLuint -> m ()
forall (m :: * -> *).
MonadIO m =>
FunPtr (GLuint64 -> GLuint -> IO ()) -> GLuint64 -> GLuint -> m ()
ffiuint64enumIOV FunPtr (GLuint64 -> GLuint -> IO ())
glMakeImageHandleResidentNVFunPtr
glMakeImageHandleResidentNVFunPtr :: FunPtr (GLuint64 -> GLenum -> IO ())
glMakeImageHandleResidentNVFunPtr :: FunPtr (GLuint64 -> GLuint -> IO ())
glMakeImageHandleResidentNVFunPtr = IO (FunPtr (GLuint64 -> GLuint -> IO ()))
-> FunPtr (GLuint64 -> GLuint -> IO ())
forall a. IO a -> a
unsafePerformIO ([Char] -> IO (FunPtr (GLuint64 -> GLuint -> IO ()))
forall a. [Char] -> IO (FunPtr a)
getProcAddress "glMakeImageHandleResidentNV")
{-# NOINLINE glMakeImageHandleResidentNVFunPtr #-}
glMakeTextureHandleNonResidentNV :: MonadIO m => GLuint64 -> m ()
glMakeTextureHandleNonResidentNV :: GLuint64 -> m ()
glMakeTextureHandleNonResidentNV = FunPtr (GLuint64 -> IO ()) -> GLuint64 -> m ()
forall (m :: * -> *).
MonadIO m =>
FunPtr (GLuint64 -> IO ()) -> GLuint64 -> m ()
ffiuint64IOV FunPtr (GLuint64 -> IO ())
glMakeTextureHandleNonResidentNVFunPtr
glMakeTextureHandleNonResidentNVFunPtr :: FunPtr (GLuint64 -> IO ())
glMakeTextureHandleNonResidentNVFunPtr :: FunPtr (GLuint64 -> IO ())
glMakeTextureHandleNonResidentNVFunPtr = IO (FunPtr (GLuint64 -> IO ())) -> FunPtr (GLuint64 -> IO ())
forall a. IO a -> a
unsafePerformIO ([Char] -> IO (FunPtr (GLuint64 -> IO ()))
forall a. [Char] -> IO (FunPtr a)
getProcAddress "glMakeTextureHandleNonResidentNV")
{-# NOINLINE glMakeTextureHandleNonResidentNVFunPtr #-}
glMakeTextureHandleResidentNV :: MonadIO m => GLuint64 -> m ()
glMakeTextureHandleResidentNV :: GLuint64 -> m ()
glMakeTextureHandleResidentNV = FunPtr (GLuint64 -> IO ()) -> GLuint64 -> m ()
forall (m :: * -> *).
MonadIO m =>
FunPtr (GLuint64 -> IO ()) -> GLuint64 -> m ()
ffiuint64IOV FunPtr (GLuint64 -> IO ())
glMakeTextureHandleResidentNVFunPtr
glMakeTextureHandleResidentNVFunPtr :: FunPtr (GLuint64 -> IO ())
glMakeTextureHandleResidentNVFunPtr :: FunPtr (GLuint64 -> IO ())
glMakeTextureHandleResidentNVFunPtr = IO (FunPtr (GLuint64 -> IO ())) -> FunPtr (GLuint64 -> IO ())
forall a. IO a -> a
unsafePerformIO ([Char] -> IO (FunPtr (GLuint64 -> IO ()))
forall a. [Char] -> IO (FunPtr a)
getProcAddress "glMakeTextureHandleResidentNV")
{-# NOINLINE glMakeTextureHandleResidentNVFunPtr #-}
glProgramUniformHandleui64NV :: MonadIO m => GLuint -> GLint -> GLuint64 -> m ()
glProgramUniformHandleui64NV :: GLuint -> GLint -> GLuint64 -> m ()
glProgramUniformHandleui64NV = FunPtr (GLuint -> GLint -> GLuint64 -> IO ())
-> GLuint -> GLint -> GLuint64 -> m ()
forall (m :: * -> *).
MonadIO m =>
FunPtr (GLuint -> GLint -> GLuint64 -> IO ())
-> GLuint -> GLint -> GLuint64 -> m ()
ffiuintintuint64IOV FunPtr (GLuint -> GLint -> GLuint64 -> IO ())
glProgramUniformHandleui64NVFunPtr
glProgramUniformHandleui64NVFunPtr :: FunPtr (GLuint -> GLint -> GLuint64 -> IO ())
glProgramUniformHandleui64NVFunPtr :: FunPtr (GLuint -> GLint -> GLuint64 -> IO ())
glProgramUniformHandleui64NVFunPtr = IO (FunPtr (GLuint -> GLint -> GLuint64 -> IO ()))
-> FunPtr (GLuint -> GLint -> GLuint64 -> IO ())
forall a. IO a -> a
unsafePerformIO ([Char] -> IO (FunPtr (GLuint -> GLint -> GLuint64 -> IO ()))
forall a. [Char] -> IO (FunPtr a)
getProcAddress "glProgramUniformHandleui64NV")
{-# NOINLINE glProgramUniformHandleui64NVFunPtr #-}
glProgramUniformHandleui64vNV :: MonadIO m => GLuint -> GLint -> GLsizei -> Ptr GLuint64 -> m ()
glProgramUniformHandleui64vNV :: GLuint -> GLint -> GLint -> Ptr GLuint64 -> m ()
glProgramUniformHandleui64vNV = FunPtr (GLuint -> GLint -> GLint -> Ptr GLuint64 -> IO ())
-> GLuint -> GLint -> GLint -> Ptr GLuint64 -> m ()
forall (m :: * -> *).
MonadIO m =>
FunPtr (GLuint -> GLint -> GLint -> Ptr GLuint64 -> IO ())
-> GLuint -> GLint -> GLint -> Ptr GLuint64 -> m ()
ffiuintintsizeiPtruint64IOV FunPtr (GLuint -> GLint -> GLint -> Ptr GLuint64 -> IO ())
glProgramUniformHandleui64vNVFunPtr
glProgramUniformHandleui64vNVFunPtr :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLuint64 -> IO ())
glProgramUniformHandleui64vNVFunPtr :: FunPtr (GLuint -> GLint -> GLint -> Ptr GLuint64 -> IO ())
glProgramUniformHandleui64vNVFunPtr = IO (FunPtr (GLuint -> GLint -> GLint -> Ptr GLuint64 -> IO ()))
-> FunPtr (GLuint -> GLint -> GLint -> Ptr GLuint64 -> IO ())
forall a. IO a -> a
unsafePerformIO ([Char]
-> IO (FunPtr (GLuint -> GLint -> GLint -> Ptr GLuint64 -> IO ()))
forall a. [Char] -> IO (FunPtr a)
getProcAddress "glProgramUniformHandleui64vNV")
{-# NOINLINE glProgramUniformHandleui64vNVFunPtr #-}
glUniformHandleui64NV :: MonadIO m => GLint -> GLuint64 -> m ()
glUniformHandleui64NV :: GLint -> GLuint64 -> m ()
glUniformHandleui64NV = FunPtr (GLint -> GLuint64 -> IO ()) -> GLint -> GLuint64 -> m ()
forall (m :: * -> *).
MonadIO m =>
FunPtr (GLint -> GLuint64 -> IO ()) -> GLint -> GLuint64 -> m ()
ffiintuint64IOV FunPtr (GLint -> GLuint64 -> IO ())
glUniformHandleui64NVFunPtr
glUniformHandleui64NVFunPtr :: FunPtr (GLint -> GLuint64 -> IO ())
glUniformHandleui64NVFunPtr :: FunPtr (GLint -> GLuint64 -> IO ())
glUniformHandleui64NVFunPtr = IO (FunPtr (GLint -> GLuint64 -> IO ()))
-> FunPtr (GLint -> GLuint64 -> IO ())
forall a. IO a -> a
unsafePerformIO ([Char] -> IO (FunPtr (GLint -> GLuint64 -> IO ()))
forall a. [Char] -> IO (FunPtr a)
getProcAddress "glUniformHandleui64NV")
{-# NOINLINE glUniformHandleui64NVFunPtr #-}
glUniformHandleui64vNV :: MonadIO m => GLint -> GLsizei -> Ptr GLuint64 -> m ()
glUniformHandleui64vNV :: GLint -> GLint -> Ptr GLuint64 -> m ()
glUniformHandleui64vNV = FunPtr (GLint -> GLint -> Ptr GLuint64 -> IO ())
-> GLint -> GLint -> Ptr GLuint64 -> m ()
forall (m :: * -> *).
MonadIO m =>
FunPtr (GLint -> GLint -> Ptr GLuint64 -> IO ())
-> GLint -> GLint -> Ptr GLuint64 -> m ()
ffiintsizeiPtruint64IOV FunPtr (GLint -> GLint -> Ptr GLuint64 -> IO ())
glUniformHandleui64vNVFunPtr
glUniformHandleui64vNVFunPtr :: FunPtr (GLint -> GLsizei -> Ptr GLuint64 -> IO ())
glUniformHandleui64vNVFunPtr :: FunPtr (GLint -> GLint -> Ptr GLuint64 -> IO ())
glUniformHandleui64vNVFunPtr = IO (FunPtr (GLint -> GLint -> Ptr GLuint64 -> IO ()))
-> FunPtr (GLint -> GLint -> Ptr GLuint64 -> IO ())
forall a. IO a -> a
unsafePerformIO ([Char] -> IO (FunPtr (GLint -> GLint -> Ptr GLuint64 -> IO ()))
forall a. [Char] -> IO (FunPtr a)
getProcAddress "glUniformHandleui64vNV")
{-# NOINLINE glUniformHandleui64vNVFunPtr #-}