-- This file was automatically generated.
{-# LANGUAGE CPP, ScopedTypeVariables, PatternSynonyms #-}
module Graphics.GL.Ext.EXT.ShaderImageLoadStore (
  -- * Extension Support
    gl_EXT_shader_image_load_store

  -- * GL_EXT_shader_image_load_store
  , glBindImageTextureEXT
  , glMemoryBarrierEXT
  , pattern GL_ALL_BARRIER_BITS_EXT
  , pattern GL_ATOMIC_COUNTER_BARRIER_BIT_EXT
  , pattern GL_BUFFER_UPDATE_BARRIER_BIT_EXT
  , pattern GL_COMMAND_BARRIER_BIT_EXT
  , pattern GL_ELEMENT_ARRAY_BARRIER_BIT_EXT
  , pattern GL_FRAMEBUFFER_BARRIER_BIT_EXT
  , pattern GL_IMAGE_1D_ARRAY_EXT
  , pattern GL_IMAGE_1D_EXT
  , pattern GL_IMAGE_2D_ARRAY_EXT
  , pattern GL_IMAGE_2D_EXT
  , pattern GL_IMAGE_2D_MULTISAMPLE_ARRAY_EXT
  , pattern GL_IMAGE_2D_MULTISAMPLE_EXT
  , pattern GL_IMAGE_2D_RECT_EXT
  , pattern GL_IMAGE_3D_EXT
  , pattern GL_IMAGE_BINDING_ACCESS_EXT
  , pattern GL_IMAGE_BINDING_FORMAT_EXT
  , pattern GL_IMAGE_BINDING_LAYERED_EXT
  , pattern GL_IMAGE_BINDING_LAYER_EXT
  , pattern GL_IMAGE_BINDING_LEVEL_EXT
  , pattern GL_IMAGE_BINDING_NAME_EXT
  , pattern GL_IMAGE_BUFFER_EXT
  , pattern GL_IMAGE_CUBE_EXT
  , pattern GL_IMAGE_CUBE_MAP_ARRAY_EXT
  , pattern GL_INT_IMAGE_1D_ARRAY_EXT
  , pattern GL_INT_IMAGE_1D_EXT
  , pattern GL_INT_IMAGE_2D_ARRAY_EXT
  , pattern GL_INT_IMAGE_2D_EXT
  , pattern GL_INT_IMAGE_2D_MULTISAMPLE_ARRAY_EXT
  , pattern GL_INT_IMAGE_2D_MULTISAMPLE_EXT
  , pattern GL_INT_IMAGE_2D_RECT_EXT
  , pattern GL_INT_IMAGE_3D_EXT
  , pattern GL_INT_IMAGE_BUFFER_EXT
  , pattern GL_INT_IMAGE_CUBE_EXT
  , pattern GL_INT_IMAGE_CUBE_MAP_ARRAY_EXT
  , pattern GL_MAX_COMBINED_IMAGE_UNITS_AND_FRAGMENT_OUTPUTS_EXT
  , pattern GL_MAX_IMAGE_SAMPLES_EXT
  , pattern GL_MAX_IMAGE_UNITS_EXT
  , pattern GL_PIXEL_BUFFER_BARRIER_BIT_EXT
  , pattern GL_SHADER_IMAGE_ACCESS_BARRIER_BIT_EXT
  , pattern GL_TEXTURE_FETCH_BARRIER_BIT_EXT
  , pattern GL_TEXTURE_UPDATE_BARRIER_BIT_EXT
  , pattern GL_TRANSFORM_FEEDBACK_BARRIER_BIT_EXT
  , pattern GL_UNIFORM_BARRIER_BIT_EXT
  , pattern GL_UNSIGNED_INT_IMAGE_1D_ARRAY_EXT
  , pattern GL_UNSIGNED_INT_IMAGE_1D_EXT
  , pattern GL_UNSIGNED_INT_IMAGE_2D_ARRAY_EXT
  , pattern GL_UNSIGNED_INT_IMAGE_2D_EXT
  , pattern GL_UNSIGNED_INT_IMAGE_2D_MULTISAMPLE_ARRAY_EXT
  , pattern GL_UNSIGNED_INT_IMAGE_2D_MULTISAMPLE_EXT
  , pattern GL_UNSIGNED_INT_IMAGE_2D_RECT_EXT
  , pattern GL_UNSIGNED_INT_IMAGE_3D_EXT
  , pattern GL_UNSIGNED_INT_IMAGE_BUFFER_EXT
  , pattern GL_UNSIGNED_INT_IMAGE_CUBE_EXT
  , pattern GL_UNSIGNED_INT_IMAGE_CUBE_MAP_ARRAY_EXT
  , pattern GL_VERTEX_ATTRIB_ARRAY_BARRIER_BIT_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.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/EXT/shader_image_load_store.txt GL_EXT_shader_image_load_store> extension is available.

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

-- | Usage: @'glBindImageTextureEXT' index texture level layered layer access format@
--
-- The parameter @layered@ is a @Boolean@, one of: 'Graphics.GL.Internal.Shared.GL_FALSE', 'Graphics.GL.Internal.Shared.GL_TRUE'.


glBindImageTextureEXT :: MonadIO m => GLuint -> GLuint -> GLint -> GLboolean -> GLint -> GLenum -> GLint -> m ()
glBindImageTextureEXT :: GLuint
-> GLuint -> GLint -> GLboolean -> GLint -> GLuint -> GLint -> m ()
glBindImageTextureEXT = FunPtr
  (GLuint
   -> GLuint
   -> GLint
   -> GLboolean
   -> GLint
   -> GLuint
   -> GLint
   -> IO ())
-> GLuint
-> GLuint
-> GLint
-> GLboolean
-> GLint
-> GLuint
-> GLint
-> m ()
forall (m :: * -> *).
MonadIO m =>
FunPtr
  (GLuint
   -> GLuint
   -> GLint
   -> GLboolean
   -> GLint
   -> GLuint
   -> GLint
   -> IO ())
-> GLuint
-> GLuint
-> GLint
-> GLboolean
-> GLint
-> GLuint
-> GLint
-> m ()
ffiuintuintintbooleanintenumintIOV FunPtr
  (GLuint
   -> GLuint
   -> GLint
   -> GLboolean
   -> GLint
   -> GLuint
   -> GLint
   -> IO ())
glBindImageTextureEXTFunPtr

glBindImageTextureEXTFunPtr :: FunPtr (GLuint -> GLuint -> GLint -> GLboolean -> GLint -> GLenum -> GLint -> IO ())
glBindImageTextureEXTFunPtr :: FunPtr
  (GLuint
   -> GLuint
   -> GLint
   -> GLboolean
   -> GLint
   -> GLuint
   -> GLint
   -> IO ())
glBindImageTextureEXTFunPtr = IO
  (FunPtr
     (GLuint
      -> GLuint
      -> GLint
      -> GLboolean
      -> GLint
      -> GLuint
      -> GLint
      -> IO ()))
-> FunPtr
     (GLuint
      -> GLuint
      -> GLint
      -> GLboolean
      -> GLint
      -> GLuint
      -> GLint
      -> IO ())
forall a. IO a -> a
unsafePerformIO ([Char]
-> IO
     (FunPtr
        (GLuint
         -> GLuint
         -> GLint
         -> GLboolean
         -> GLint
         -> GLuint
         -> GLint
         -> IO ()))
forall a. [Char] -> IO (FunPtr a)
getProcAddress "glBindImageTextureEXT")

{-# NOINLINE glBindImageTextureEXTFunPtr #-}

-- | Usage: @'glMemoryBarrierEXT' barriers@
--
-- This command is an alias for 'Graphics.GL.Internal.Shared.glMemoryBarrier'.


glMemoryBarrierEXT :: MonadIO m => GLbitfield -> m ()
glMemoryBarrierEXT :: GLuint -> m ()
glMemoryBarrierEXT = FunPtr (GLuint -> IO ()) -> GLuint -> m ()
forall (m :: * -> *).
MonadIO m =>
FunPtr (GLuint -> IO ()) -> GLuint -> m ()
ffibitfieldIOV FunPtr (GLuint -> IO ())
glMemoryBarrierEXTFunPtr

glMemoryBarrierEXTFunPtr :: FunPtr (GLbitfield -> IO ())
glMemoryBarrierEXTFunPtr :: FunPtr (GLuint -> IO ())
glMemoryBarrierEXTFunPtr = IO (FunPtr (GLuint -> IO ())) -> FunPtr (GLuint -> IO ())
forall a. IO a -> a
unsafePerformIO ([Char] -> IO (FunPtr (GLuint -> IO ()))
forall a. [Char] -> IO (FunPtr a)
getProcAddress "glMemoryBarrierEXT")

{-# NOINLINE glMemoryBarrierEXTFunPtr #-}

pattern $bGL_ALL_BARRIER_BITS_EXT :: a
$mGL_ALL_BARRIER_BITS_EXT :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
GL_ALL_BARRIER_BITS_EXT = 0xFFFFFFFF

pattern $bGL_ATOMIC_COUNTER_BARRIER_BIT_EXT :: a
$mGL_ATOMIC_COUNTER_BARRIER_BIT_EXT :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
GL_ATOMIC_COUNTER_BARRIER_BIT_EXT = 0x00001000

pattern $bGL_BUFFER_UPDATE_BARRIER_BIT_EXT :: a
$mGL_BUFFER_UPDATE_BARRIER_BIT_EXT :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
GL_BUFFER_UPDATE_BARRIER_BIT_EXT = 0x00000200

pattern $bGL_COMMAND_BARRIER_BIT_EXT :: a
$mGL_COMMAND_BARRIER_BIT_EXT :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
GL_COMMAND_BARRIER_BIT_EXT = 0x00000040

pattern $bGL_ELEMENT_ARRAY_BARRIER_BIT_EXT :: a
$mGL_ELEMENT_ARRAY_BARRIER_BIT_EXT :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
GL_ELEMENT_ARRAY_BARRIER_BIT_EXT = 0x00000002

pattern $bGL_FRAMEBUFFER_BARRIER_BIT_EXT :: a
$mGL_FRAMEBUFFER_BARRIER_BIT_EXT :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
GL_FRAMEBUFFER_BARRIER_BIT_EXT = 0x00000400

pattern $bGL_IMAGE_1D_ARRAY_EXT :: a
$mGL_IMAGE_1D_ARRAY_EXT :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
GL_IMAGE_1D_ARRAY_EXT = 0x9052

pattern $bGL_IMAGE_1D_EXT :: a
$mGL_IMAGE_1D_EXT :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
GL_IMAGE_1D_EXT = 0x904C

pattern $bGL_IMAGE_2D_ARRAY_EXT :: a
$mGL_IMAGE_2D_ARRAY_EXT :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
GL_IMAGE_2D_ARRAY_EXT = 0x9053

pattern $bGL_IMAGE_2D_EXT :: a
$mGL_IMAGE_2D_EXT :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
GL_IMAGE_2D_EXT = 0x904D

pattern $bGL_IMAGE_2D_MULTISAMPLE_ARRAY_EXT :: a
$mGL_IMAGE_2D_MULTISAMPLE_ARRAY_EXT :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
GL_IMAGE_2D_MULTISAMPLE_ARRAY_EXT = 0x9056

pattern $bGL_IMAGE_2D_MULTISAMPLE_EXT :: a
$mGL_IMAGE_2D_MULTISAMPLE_EXT :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
GL_IMAGE_2D_MULTISAMPLE_EXT = 0x9055

pattern $bGL_IMAGE_2D_RECT_EXT :: a
$mGL_IMAGE_2D_RECT_EXT :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
GL_IMAGE_2D_RECT_EXT = 0x904F

pattern $bGL_IMAGE_3D_EXT :: a
$mGL_IMAGE_3D_EXT :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
GL_IMAGE_3D_EXT = 0x904E

pattern $bGL_IMAGE_BINDING_ACCESS_EXT :: a
$mGL_IMAGE_BINDING_ACCESS_EXT :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
GL_IMAGE_BINDING_ACCESS_EXT = 0x8F3E

pattern $bGL_IMAGE_BINDING_FORMAT_EXT :: a
$mGL_IMAGE_BINDING_FORMAT_EXT :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
GL_IMAGE_BINDING_FORMAT_EXT = 0x906E

pattern $bGL_IMAGE_BINDING_LAYERED_EXT :: a
$mGL_IMAGE_BINDING_LAYERED_EXT :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
GL_IMAGE_BINDING_LAYERED_EXT = 0x8F3C

pattern $bGL_IMAGE_BINDING_LAYER_EXT :: a
$mGL_IMAGE_BINDING_LAYER_EXT :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
GL_IMAGE_BINDING_LAYER_EXT = 0x8F3D

pattern $bGL_IMAGE_BINDING_LEVEL_EXT :: a
$mGL_IMAGE_BINDING_LEVEL_EXT :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
GL_IMAGE_BINDING_LEVEL_EXT = 0x8F3B

pattern $bGL_IMAGE_BINDING_NAME_EXT :: a
$mGL_IMAGE_BINDING_NAME_EXT :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
GL_IMAGE_BINDING_NAME_EXT = 0x8F3A

pattern $bGL_IMAGE_CUBE_EXT :: a
$mGL_IMAGE_CUBE_EXT :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
GL_IMAGE_CUBE_EXT = 0x9050

pattern $bGL_INT_IMAGE_1D_ARRAY_EXT :: a
$mGL_INT_IMAGE_1D_ARRAY_EXT :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
GL_INT_IMAGE_1D_ARRAY_EXT = 0x905D

pattern $bGL_INT_IMAGE_1D_EXT :: a
$mGL_INT_IMAGE_1D_EXT :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
GL_INT_IMAGE_1D_EXT = 0x9057

pattern $bGL_INT_IMAGE_2D_ARRAY_EXT :: a
$mGL_INT_IMAGE_2D_ARRAY_EXT :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
GL_INT_IMAGE_2D_ARRAY_EXT = 0x905E

pattern $bGL_INT_IMAGE_2D_EXT :: a
$mGL_INT_IMAGE_2D_EXT :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
GL_INT_IMAGE_2D_EXT = 0x9058

pattern $bGL_INT_IMAGE_2D_MULTISAMPLE_ARRAY_EXT :: a
$mGL_INT_IMAGE_2D_MULTISAMPLE_ARRAY_EXT :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
GL_INT_IMAGE_2D_MULTISAMPLE_ARRAY_EXT = 0x9061

pattern $bGL_INT_IMAGE_2D_MULTISAMPLE_EXT :: a
$mGL_INT_IMAGE_2D_MULTISAMPLE_EXT :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
GL_INT_IMAGE_2D_MULTISAMPLE_EXT = 0x9060

pattern $bGL_INT_IMAGE_2D_RECT_EXT :: a
$mGL_INT_IMAGE_2D_RECT_EXT :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
GL_INT_IMAGE_2D_RECT_EXT = 0x905A

pattern $bGL_INT_IMAGE_3D_EXT :: a
$mGL_INT_IMAGE_3D_EXT :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
GL_INT_IMAGE_3D_EXT = 0x9059

pattern $bGL_INT_IMAGE_CUBE_EXT :: a
$mGL_INT_IMAGE_CUBE_EXT :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
GL_INT_IMAGE_CUBE_EXT = 0x905B

pattern $bGL_MAX_COMBINED_IMAGE_UNITS_AND_FRAGMENT_OUTPUTS_EXT :: a
$mGL_MAX_COMBINED_IMAGE_UNITS_AND_FRAGMENT_OUTPUTS_EXT :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
GL_MAX_COMBINED_IMAGE_UNITS_AND_FRAGMENT_OUTPUTS_EXT = 0x8F39

pattern $bGL_MAX_IMAGE_SAMPLES_EXT :: a
$mGL_MAX_IMAGE_SAMPLES_EXT :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
GL_MAX_IMAGE_SAMPLES_EXT = 0x906D

pattern $bGL_MAX_IMAGE_UNITS_EXT :: a
$mGL_MAX_IMAGE_UNITS_EXT :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
GL_MAX_IMAGE_UNITS_EXT = 0x8F38

pattern $bGL_PIXEL_BUFFER_BARRIER_BIT_EXT :: a
$mGL_PIXEL_BUFFER_BARRIER_BIT_EXT :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
GL_PIXEL_BUFFER_BARRIER_BIT_EXT = 0x00000080

pattern $bGL_SHADER_IMAGE_ACCESS_BARRIER_BIT_EXT :: a
$mGL_SHADER_IMAGE_ACCESS_BARRIER_BIT_EXT :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
GL_SHADER_IMAGE_ACCESS_BARRIER_BIT_EXT = 0x00000020

pattern $bGL_TEXTURE_FETCH_BARRIER_BIT_EXT :: a
$mGL_TEXTURE_FETCH_BARRIER_BIT_EXT :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
GL_TEXTURE_FETCH_BARRIER_BIT_EXT = 0x00000008

pattern $bGL_TEXTURE_UPDATE_BARRIER_BIT_EXT :: a
$mGL_TEXTURE_UPDATE_BARRIER_BIT_EXT :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
GL_TEXTURE_UPDATE_BARRIER_BIT_EXT = 0x00000100

pattern $bGL_TRANSFORM_FEEDBACK_BARRIER_BIT_EXT :: a
$mGL_TRANSFORM_FEEDBACK_BARRIER_BIT_EXT :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
GL_TRANSFORM_FEEDBACK_BARRIER_BIT_EXT = 0x00000800

pattern $bGL_UNIFORM_BARRIER_BIT_EXT :: a
$mGL_UNIFORM_BARRIER_BIT_EXT :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
GL_UNIFORM_BARRIER_BIT_EXT = 0x00000004

pattern $bGL_UNSIGNED_INT_IMAGE_1D_ARRAY_EXT :: a
$mGL_UNSIGNED_INT_IMAGE_1D_ARRAY_EXT :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
GL_UNSIGNED_INT_IMAGE_1D_ARRAY_EXT = 0x9068

pattern $bGL_UNSIGNED_INT_IMAGE_1D_EXT :: a
$mGL_UNSIGNED_INT_IMAGE_1D_EXT :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
GL_UNSIGNED_INT_IMAGE_1D_EXT = 0x9062

pattern $bGL_UNSIGNED_INT_IMAGE_2D_ARRAY_EXT :: a
$mGL_UNSIGNED_INT_IMAGE_2D_ARRAY_EXT :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
GL_UNSIGNED_INT_IMAGE_2D_ARRAY_EXT = 0x9069

pattern $bGL_UNSIGNED_INT_IMAGE_2D_EXT :: a
$mGL_UNSIGNED_INT_IMAGE_2D_EXT :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
GL_UNSIGNED_INT_IMAGE_2D_EXT = 0x9063

pattern $bGL_UNSIGNED_INT_IMAGE_2D_MULTISAMPLE_ARRAY_EXT :: a
$mGL_UNSIGNED_INT_IMAGE_2D_MULTISAMPLE_ARRAY_EXT :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
GL_UNSIGNED_INT_IMAGE_2D_MULTISAMPLE_ARRAY_EXT = 0x906C

pattern $bGL_UNSIGNED_INT_IMAGE_2D_MULTISAMPLE_EXT :: a
$mGL_UNSIGNED_INT_IMAGE_2D_MULTISAMPLE_EXT :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
GL_UNSIGNED_INT_IMAGE_2D_MULTISAMPLE_EXT = 0x906B

pattern $bGL_UNSIGNED_INT_IMAGE_2D_RECT_EXT :: a
$mGL_UNSIGNED_INT_IMAGE_2D_RECT_EXT :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
GL_UNSIGNED_INT_IMAGE_2D_RECT_EXT = 0x9065

pattern $bGL_UNSIGNED_INT_IMAGE_3D_EXT :: a
$mGL_UNSIGNED_INT_IMAGE_3D_EXT :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
GL_UNSIGNED_INT_IMAGE_3D_EXT = 0x9064

pattern $bGL_UNSIGNED_INT_IMAGE_CUBE_EXT :: a
$mGL_UNSIGNED_INT_IMAGE_CUBE_EXT :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
GL_UNSIGNED_INT_IMAGE_CUBE_EXT = 0x9066

pattern $bGL_VERTEX_ATTRIB_ARRAY_BARRIER_BIT_EXT :: a
$mGL_VERTEX_ATTRIB_ARRAY_BARRIER_BIT_EXT :: forall r a. (Eq a, Num a) => a -> (Void# -> r) -> (Void# -> r) -> r
GL_VERTEX_ATTRIB_ARRAY_BARRIER_BIT_EXT = 0x00000001