-- This file was automatically generated.
{-# LANGUAGE CPP, ScopedTypeVariables, PatternSynonyms #-}
module Graphics.GL.Ext.ARB.BindlessTexture (
  -- * Extension Support
    gl_ARB_bindless_texture

  -- * GL_ARB_bindless_texture
  , glGetImageHandleARB
  , glGetTextureHandleARB
  , glGetTextureSamplerHandleARB
  , glGetVertexAttribLui64vARB
  , glIsImageHandleResidentARB
  , glIsTextureHandleResidentARB
  , glMakeImageHandleNonResidentARB
  , glMakeImageHandleResidentARB
  , glMakeTextureHandleNonResidentARB
  , glMakeTextureHandleResidentARB
  , glProgramUniformHandleui64ARB
  , glProgramUniformHandleui64vARB
  , glUniformHandleui64ARB
  , glUniformHandleui64vARB
  , glVertexAttribL1ui64ARB
  , glVertexAttribL1ui64vARB
  , pattern GL_UNSIGNED_INT64_ARB
) 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.Internal.Shared
import Graphics.GL.Types
import System.IO.Unsafe

-- | Checks that the <https://cvs.khronos.org/svn/repos/ogl/trunk/doc/registry/public/specs/ARB/bindless_texture.txt GL_ARB_bindless_texture> extension is available.

gl_ARB_bindless_texture :: Bool
gl_ARB_bindless_texture :: Bool
gl_ARB_bindless_texture = [Char] -> Set [Char] -> Bool
forall a. Ord a => a -> Set a -> Bool
member "GL_ARB_bindless_texture" Set [Char]
extensions
{-# NOINLINE gl_ARB_bindless_texture #-}

-- | Usage: @'glGetImageHandleARB' texture level layered layer format@


glGetImageHandleARB :: MonadIO m => GLuint -> GLint -> GLboolean -> GLint -> GLenum -> m GLuint64
glGetImageHandleARB :: GLuint -> GLint -> GLboolean -> GLint -> GLuint -> m GLuint64
glGetImageHandleARB = 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)
glGetImageHandleARBFunPtr

glGetImageHandleARBFunPtr :: FunPtr (GLuint -> GLint -> GLboolean -> GLint -> GLenum -> IO GLuint64)
glGetImageHandleARBFunPtr :: FunPtr
  (GLuint -> GLint -> GLboolean -> GLint -> GLuint -> IO GLuint64)
glGetImageHandleARBFunPtr = 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 "glGetImageHandleARB")

{-# NOINLINE glGetImageHandleARBFunPtr #-}

-- | Usage: @'glGetTextureHandleARB' texture@


glGetTextureHandleARB :: MonadIO m => GLuint -> m GLuint64
glGetTextureHandleARB :: GLuint -> m GLuint64
glGetTextureHandleARB = FunPtr (GLuint -> IO GLuint64) -> GLuint -> m GLuint64
forall (m :: * -> *).
MonadIO m =>
FunPtr (GLuint -> IO GLuint64) -> GLuint -> m GLuint64
ffiuintIOuint64 FunPtr (GLuint -> IO GLuint64)
glGetTextureHandleARBFunPtr

glGetTextureHandleARBFunPtr :: FunPtr (GLuint -> IO GLuint64)
glGetTextureHandleARBFunPtr :: FunPtr (GLuint -> IO GLuint64)
glGetTextureHandleARBFunPtr = 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 "glGetTextureHandleARB")

{-# NOINLINE glGetTextureHandleARBFunPtr #-}

-- | Usage: @'glGetTextureSamplerHandleARB' texture sampler@


glGetTextureSamplerHandleARB :: MonadIO m => GLuint -> GLuint -> m GLuint64
glGetTextureSamplerHandleARB :: GLuint -> GLuint -> m GLuint64
glGetTextureSamplerHandleARB = 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)
glGetTextureSamplerHandleARBFunPtr

glGetTextureSamplerHandleARBFunPtr :: FunPtr (GLuint -> GLuint -> IO GLuint64)
glGetTextureSamplerHandleARBFunPtr :: FunPtr (GLuint -> GLuint -> IO GLuint64)
glGetTextureSamplerHandleARBFunPtr = 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 "glGetTextureSamplerHandleARB")

{-# NOINLINE glGetTextureSamplerHandleARBFunPtr #-}

-- | Usage: @'glGetVertexAttribLui64vARB' index pname params@


glGetVertexAttribLui64vARB :: MonadIO m => GLuint -> GLenum -> Ptr GLuint64EXT -> m ()
glGetVertexAttribLui64vARB :: GLuint -> GLuint -> Ptr GLuint64 -> m ()
glGetVertexAttribLui64vARB = FunPtr (GLuint -> GLuint -> Ptr GLuint64 -> IO ())
-> GLuint -> GLuint -> Ptr GLuint64 -> m ()
forall (m :: * -> *).
MonadIO m =>
FunPtr (GLuint -> GLuint -> Ptr GLuint64 -> IO ())
-> GLuint -> GLuint -> Ptr GLuint64 -> m ()
ffiuintenumPtruint64EXTIOV FunPtr (GLuint -> GLuint -> Ptr GLuint64 -> IO ())
glGetVertexAttribLui64vARBFunPtr

glGetVertexAttribLui64vARBFunPtr :: FunPtr (GLuint -> GLenum -> Ptr GLuint64EXT -> IO ())
glGetVertexAttribLui64vARBFunPtr :: FunPtr (GLuint -> GLuint -> Ptr GLuint64 -> IO ())
glGetVertexAttribLui64vARBFunPtr = IO (FunPtr (GLuint -> GLuint -> Ptr GLuint64 -> IO ()))
-> FunPtr (GLuint -> GLuint -> Ptr GLuint64 -> IO ())
forall a. IO a -> a
unsafePerformIO ([Char] -> IO (FunPtr (GLuint -> GLuint -> Ptr GLuint64 -> IO ()))
forall a. [Char] -> IO (FunPtr a)
getProcAddress "glGetVertexAttribLui64vARB")

{-# NOINLINE glGetVertexAttribLui64vARBFunPtr #-}

-- | Usage: @'glIsImageHandleResidentARB' handle@


glIsImageHandleResidentARB :: MonadIO m => GLuint64 -> m GLboolean
glIsImageHandleResidentARB :: GLuint64 -> m GLboolean
glIsImageHandleResidentARB = FunPtr (GLuint64 -> IO GLboolean) -> GLuint64 -> m GLboolean
forall (m :: * -> *).
MonadIO m =>
FunPtr (GLuint64 -> IO GLboolean) -> GLuint64 -> m GLboolean
ffiuint64IOboolean FunPtr (GLuint64 -> IO GLboolean)
glIsImageHandleResidentARBFunPtr

glIsImageHandleResidentARBFunPtr :: FunPtr (GLuint64 -> IO GLboolean)
glIsImageHandleResidentARBFunPtr :: FunPtr (GLuint64 -> IO GLboolean)
glIsImageHandleResidentARBFunPtr = 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 "glIsImageHandleResidentARB")

{-# NOINLINE glIsImageHandleResidentARBFunPtr #-}

-- | Usage: @'glIsTextureHandleResidentARB' handle@


glIsTextureHandleResidentARB :: MonadIO m => GLuint64 -> m GLboolean
glIsTextureHandleResidentARB :: GLuint64 -> m GLboolean
glIsTextureHandleResidentARB = FunPtr (GLuint64 -> IO GLboolean) -> GLuint64 -> m GLboolean
forall (m :: * -> *).
MonadIO m =>
FunPtr (GLuint64 -> IO GLboolean) -> GLuint64 -> m GLboolean
ffiuint64IOboolean FunPtr (GLuint64 -> IO GLboolean)
glIsTextureHandleResidentARBFunPtr

glIsTextureHandleResidentARBFunPtr :: FunPtr (GLuint64 -> IO GLboolean)
glIsTextureHandleResidentARBFunPtr :: FunPtr (GLuint64 -> IO GLboolean)
glIsTextureHandleResidentARBFunPtr = 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 "glIsTextureHandleResidentARB")

{-# NOINLINE glIsTextureHandleResidentARBFunPtr #-}

-- | Usage: @'glMakeImageHandleNonResidentARB' handle@


glMakeImageHandleNonResidentARB :: MonadIO m => GLuint64 -> m ()
glMakeImageHandleNonResidentARB :: GLuint64 -> m ()
glMakeImageHandleNonResidentARB = FunPtr (GLuint64 -> IO ()) -> GLuint64 -> m ()
forall (m :: * -> *).
MonadIO m =>
FunPtr (GLuint64 -> IO ()) -> GLuint64 -> m ()
ffiuint64IOV FunPtr (GLuint64 -> IO ())
glMakeImageHandleNonResidentARBFunPtr

glMakeImageHandleNonResidentARBFunPtr :: FunPtr (GLuint64 -> IO ())
glMakeImageHandleNonResidentARBFunPtr :: FunPtr (GLuint64 -> IO ())
glMakeImageHandleNonResidentARBFunPtr = 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 "glMakeImageHandleNonResidentARB")

{-# NOINLINE glMakeImageHandleNonResidentARBFunPtr #-}

-- | Usage: @'glMakeImageHandleResidentARB' handle access@


glMakeImageHandleResidentARB :: MonadIO m => GLuint64 -> GLenum -> m ()
glMakeImageHandleResidentARB :: GLuint64 -> GLuint -> m ()
glMakeImageHandleResidentARB = FunPtr (GLuint64 -> GLuint -> IO ()) -> GLuint64 -> GLuint -> m ()
forall (m :: * -> *).
MonadIO m =>
FunPtr (GLuint64 -> GLuint -> IO ()) -> GLuint64 -> GLuint -> m ()
ffiuint64enumIOV FunPtr (GLuint64 -> GLuint -> IO ())
glMakeImageHandleResidentARBFunPtr

glMakeImageHandleResidentARBFunPtr :: FunPtr (GLuint64 -> GLenum -> IO ())
glMakeImageHandleResidentARBFunPtr :: FunPtr (GLuint64 -> GLuint -> IO ())
glMakeImageHandleResidentARBFunPtr = 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 "glMakeImageHandleResidentARB")

{-# NOINLINE glMakeImageHandleResidentARBFunPtr #-}

-- | Usage: @'glMakeTextureHandleNonResidentARB' handle@


glMakeTextureHandleNonResidentARB :: MonadIO m => GLuint64 -> m ()
glMakeTextureHandleNonResidentARB :: GLuint64 -> m ()
glMakeTextureHandleNonResidentARB = FunPtr (GLuint64 -> IO ()) -> GLuint64 -> m ()
forall (m :: * -> *).
MonadIO m =>
FunPtr (GLuint64 -> IO ()) -> GLuint64 -> m ()
ffiuint64IOV FunPtr (GLuint64 -> IO ())
glMakeTextureHandleNonResidentARBFunPtr

glMakeTextureHandleNonResidentARBFunPtr :: FunPtr (GLuint64 -> IO ())
glMakeTextureHandleNonResidentARBFunPtr :: FunPtr (GLuint64 -> IO ())
glMakeTextureHandleNonResidentARBFunPtr = 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 "glMakeTextureHandleNonResidentARB")

{-# NOINLINE glMakeTextureHandleNonResidentARBFunPtr #-}

-- | Usage: @'glMakeTextureHandleResidentARB' handle@


glMakeTextureHandleResidentARB :: MonadIO m => GLuint64 -> m ()
glMakeTextureHandleResidentARB :: GLuint64 -> m ()
glMakeTextureHandleResidentARB = FunPtr (GLuint64 -> IO ()) -> GLuint64 -> m ()
forall (m :: * -> *).
MonadIO m =>
FunPtr (GLuint64 -> IO ()) -> GLuint64 -> m ()
ffiuint64IOV FunPtr (GLuint64 -> IO ())
glMakeTextureHandleResidentARBFunPtr

glMakeTextureHandleResidentARBFunPtr :: FunPtr (GLuint64 -> IO ())
glMakeTextureHandleResidentARBFunPtr :: FunPtr (GLuint64 -> IO ())
glMakeTextureHandleResidentARBFunPtr = 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 "glMakeTextureHandleResidentARB")

{-# NOINLINE glMakeTextureHandleResidentARBFunPtr #-}

-- | Usage: @'glProgramUniformHandleui64ARB' program location value@


glProgramUniformHandleui64ARB :: MonadIO m => GLuint -> GLint -> GLuint64 -> m ()
glProgramUniformHandleui64ARB :: GLuint -> GLint -> GLuint64 -> m ()
glProgramUniformHandleui64ARB = 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 ())
glProgramUniformHandleui64ARBFunPtr

glProgramUniformHandleui64ARBFunPtr :: FunPtr (GLuint -> GLint -> GLuint64 -> IO ())
glProgramUniformHandleui64ARBFunPtr :: FunPtr (GLuint -> GLint -> GLuint64 -> IO ())
glProgramUniformHandleui64ARBFunPtr = 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 "glProgramUniformHandleui64ARB")

{-# NOINLINE glProgramUniformHandleui64ARBFunPtr #-}

-- | Usage: @'glProgramUniformHandleui64vARB' program location count values@
--
-- The length of @values@ should be @count@.


glProgramUniformHandleui64vARB :: MonadIO m => GLuint -> GLint -> GLsizei -> Ptr GLuint64 -> m ()
glProgramUniformHandleui64vARB :: GLuint -> GLint -> GLint -> Ptr GLuint64 -> m ()
glProgramUniformHandleui64vARB = 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 ())
glProgramUniformHandleui64vARBFunPtr

glProgramUniformHandleui64vARBFunPtr :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLuint64 -> IO ())
glProgramUniformHandleui64vARBFunPtr :: FunPtr (GLuint -> GLint -> GLint -> Ptr GLuint64 -> IO ())
glProgramUniformHandleui64vARBFunPtr = 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 "glProgramUniformHandleui64vARB")

{-# NOINLINE glProgramUniformHandleui64vARBFunPtr #-}

-- | Usage: @'glUniformHandleui64ARB' location value@


glUniformHandleui64ARB :: MonadIO m => GLint -> GLuint64 -> m ()
glUniformHandleui64ARB :: GLint -> GLuint64 -> m ()
glUniformHandleui64ARB = FunPtr (GLint -> GLuint64 -> IO ()) -> GLint -> GLuint64 -> m ()
forall (m :: * -> *).
MonadIO m =>
FunPtr (GLint -> GLuint64 -> IO ()) -> GLint -> GLuint64 -> m ()
ffiintuint64IOV FunPtr (GLint -> GLuint64 -> IO ())
glUniformHandleui64ARBFunPtr

glUniformHandleui64ARBFunPtr :: FunPtr (GLint -> GLuint64 -> IO ())
glUniformHandleui64ARBFunPtr :: FunPtr (GLint -> GLuint64 -> IO ())
glUniformHandleui64ARBFunPtr = 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 "glUniformHandleui64ARB")

{-# NOINLINE glUniformHandleui64ARBFunPtr #-}

-- | Usage: @'glUniformHandleui64vARB' location count value@
--
-- The length of @value@ should be @count@.


glUniformHandleui64vARB :: MonadIO m => GLint -> GLsizei -> Ptr GLuint64 -> m ()
glUniformHandleui64vARB :: GLint -> GLint -> Ptr GLuint64 -> m ()
glUniformHandleui64vARB = 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 ())
glUniformHandleui64vARBFunPtr

glUniformHandleui64vARBFunPtr :: FunPtr (GLint -> GLsizei -> Ptr GLuint64 -> IO ())
glUniformHandleui64vARBFunPtr :: FunPtr (GLint -> GLint -> Ptr GLuint64 -> IO ())
glUniformHandleui64vARBFunPtr = 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 "glUniformHandleui64vARB")

{-# NOINLINE glUniformHandleui64vARBFunPtr #-}

-- | Usage: @'glVertexAttribL1ui64ARB' index x@


glVertexAttribL1ui64ARB :: MonadIO m => GLuint -> GLuint64EXT -> m ()
glVertexAttribL1ui64ARB :: GLuint -> GLuint64 -> m ()
glVertexAttribL1ui64ARB = FunPtr (GLuint -> GLuint64 -> IO ()) -> GLuint -> GLuint64 -> m ()
forall (m :: * -> *).
MonadIO m =>
FunPtr (GLuint -> GLuint64 -> IO ()) -> GLuint -> GLuint64 -> m ()
ffiuintuint64EXTIOV FunPtr (GLuint -> GLuint64 -> IO ())
glVertexAttribL1ui64ARBFunPtr

glVertexAttribL1ui64ARBFunPtr :: FunPtr (GLuint -> GLuint64EXT -> IO ())
glVertexAttribL1ui64ARBFunPtr :: FunPtr (GLuint -> GLuint64 -> IO ())
glVertexAttribL1ui64ARBFunPtr = IO (FunPtr (GLuint -> GLuint64 -> IO ()))
-> FunPtr (GLuint -> GLuint64 -> IO ())
forall a. IO a -> a
unsafePerformIO ([Char] -> IO (FunPtr (GLuint -> GLuint64 -> IO ()))
forall a. [Char] -> IO (FunPtr a)
getProcAddress "glVertexAttribL1ui64ARB")

{-# NOINLINE glVertexAttribL1ui64ARBFunPtr #-}

-- | Usage: @'glVertexAttribL1ui64vARB' index v@


glVertexAttribL1ui64vARB :: MonadIO m => GLuint -> Ptr GLuint64EXT -> m ()
glVertexAttribL1ui64vARB :: GLuint -> Ptr GLuint64 -> m ()
glVertexAttribL1ui64vARB = FunPtr (GLuint -> Ptr GLuint64 -> IO ())
-> GLuint -> Ptr GLuint64 -> m ()
forall (m :: * -> *).
MonadIO m =>
FunPtr (GLuint -> Ptr GLuint64 -> IO ())
-> GLuint -> Ptr GLuint64 -> m ()
ffiuintPtruint64EXTIOV FunPtr (GLuint -> Ptr GLuint64 -> IO ())
glVertexAttribL1ui64vARBFunPtr

glVertexAttribL1ui64vARBFunPtr :: FunPtr (GLuint -> Ptr GLuint64EXT -> IO ())
glVertexAttribL1ui64vARBFunPtr :: FunPtr (GLuint -> Ptr GLuint64 -> IO ())
glVertexAttribL1ui64vARBFunPtr = IO (FunPtr (GLuint -> Ptr GLuint64 -> IO ()))
-> FunPtr (GLuint -> Ptr GLuint64 -> IO ())
forall a. IO a -> a
unsafePerformIO ([Char] -> IO (FunPtr (GLuint -> Ptr GLuint64 -> IO ()))
forall a. [Char] -> IO (FunPtr a)
getProcAddress "glVertexAttribL1ui64vARB")

{-# NOINLINE glVertexAttribL1ui64vARBFunPtr #-}