-- This file was automatically generated.
{-# LANGUAGE ScopedTypeVariables, PatternSynonyms #-}
module Graphics.GL.Raw.Extension.EXT.TextureInteger (
  -- * Extension Support
    gl_EXT_texture_integer

  -- * GL_EXT_texture_integer
  , glClearColorIiEXT
  , glClearColorIuiEXT
  , glGetTexParameterIivEXT
  , glGetTexParameterIuivEXT
  , glTexParameterIivEXT
  , glTexParameterIuivEXT
  , pattern GL_ALPHA16I_EXT
  , pattern GL_ALPHA16UI_EXT
  , pattern GL_ALPHA32I_EXT
  , pattern GL_ALPHA32UI_EXT
  , pattern GL_ALPHA8I_EXT
  , pattern GL_ALPHA8UI_EXT
  , pattern GL_ALPHA_INTEGER_EXT
  , pattern GL_BGRA_INTEGER_EXT
  , pattern GL_BGR_INTEGER_EXT
  , pattern GL_BLUE_INTEGER_EXT
  , pattern GL_GREEN_INTEGER_EXT
  , pattern GL_INTENSITY16I_EXT
  , pattern GL_INTENSITY16UI_EXT
  , pattern GL_INTENSITY32I_EXT
  , pattern GL_INTENSITY32UI_EXT
  , pattern GL_INTENSITY8I_EXT
  , pattern GL_INTENSITY8UI_EXT
  , pattern GL_LUMINANCE16I_EXT
  , pattern GL_LUMINANCE16UI_EXT
  , pattern GL_LUMINANCE32I_EXT
  , pattern GL_LUMINANCE32UI_EXT
  , pattern GL_LUMINANCE8I_EXT
  , pattern GL_LUMINANCE8UI_EXT
  , pattern GL_LUMINANCE_ALPHA16I_EXT
  , pattern GL_LUMINANCE_ALPHA16UI_EXT
  , pattern GL_LUMINANCE_ALPHA32I_EXT
  , pattern GL_LUMINANCE_ALPHA32UI_EXT
  , pattern GL_LUMINANCE_ALPHA8I_EXT
  , pattern GL_LUMINANCE_ALPHA8UI_EXT
  , pattern GL_LUMINANCE_ALPHA_INTEGER_EXT
  , pattern GL_LUMINANCE_INTEGER_EXT
  , pattern GL_RED_INTEGER_EXT
  , pattern GL_RGB16I_EXT
  , pattern GL_RGB16UI_EXT
  , pattern GL_RGB32I_EXT
  , pattern GL_RGB32UI_EXT
  , pattern GL_RGB8I_EXT
  , pattern GL_RGB8UI_EXT
  , pattern GL_RGBA16I_EXT
  , pattern GL_RGBA16UI_EXT
  , pattern GL_RGBA32I_EXT
  , pattern GL_RGBA32UI_EXT
  , pattern GL_RGBA8I_EXT
  , pattern GL_RGBA8UI_EXT
  , pattern GL_RGBA_INTEGER_EXT
  , pattern GL_RGBA_INTEGER_MODE_EXT
  , pattern GL_RGB_INTEGER_EXT
) where

import Control.Monad.IO.Class
import Data.Set
import Foreign.Ptr
import Graphics.GL.Raw.Internal.FFI
import Graphics.GL.Raw.Internal.Proc
import Graphics.GL.Raw.Internal.Shared
import Graphics.GL.Raw.Types
import System.IO.Unsafe

gl_EXT_texture_integer :: Bool
gl_EXT_texture_integer = member "GL_EXT_texture_integer" extensions

glClearColorIiEXT :: MonadIO m => GLint -> GLint -> GLint -> GLint -> m ()
glClearColorIiEXT = ffiintintintintIOV glClearColorIiEXTFunPtr

glClearColorIiEXTFunPtr :: FunPtr (GLint -> GLint -> GLint -> GLint -> IO ())
glClearColorIiEXTFunPtr = unsafePerformIO (getProcAddress "glClearColorIiEXT")

{-# NOINLINE glClearColorIiEXTFunPtr #-}

glClearColorIuiEXT :: MonadIO m => GLuint -> GLuint -> GLuint -> GLuint -> m ()
glClearColorIuiEXT = ffiuintuintuintuintIOV glClearColorIuiEXTFunPtr

glClearColorIuiEXTFunPtr :: FunPtr (GLuint -> GLuint -> GLuint -> GLuint -> IO ())
glClearColorIuiEXTFunPtr = unsafePerformIO (getProcAddress "glClearColorIuiEXT")

{-# NOINLINE glClearColorIuiEXTFunPtr #-}

pattern GL_ALPHA16I_EXT = 0x8D8A :: GLenum

pattern GL_ALPHA16UI_EXT = 0x8D78 :: GLenum

pattern GL_ALPHA32I_EXT = 0x8D84 :: GLenum

pattern GL_ALPHA32UI_EXT = 0x8D72 :: GLenum

pattern GL_ALPHA8I_EXT = 0x8D90 :: GLenum

pattern GL_ALPHA8UI_EXT = 0x8D7E :: GLenum

pattern GL_ALPHA_INTEGER_EXT = 0x8D97 :: GLenum

pattern GL_BGRA_INTEGER_EXT = 0x8D9B :: GLenum

pattern GL_BGR_INTEGER_EXT = 0x8D9A :: GLenum

pattern GL_BLUE_INTEGER_EXT = 0x8D96 :: GLenum

pattern GL_GREEN_INTEGER_EXT = 0x8D95 :: GLenum

pattern GL_INTENSITY16I_EXT = 0x8D8B :: GLenum

pattern GL_INTENSITY16UI_EXT = 0x8D79 :: GLenum

pattern GL_INTENSITY32I_EXT = 0x8D85 :: GLenum

pattern GL_INTENSITY32UI_EXT = 0x8D73 :: GLenum

pattern GL_INTENSITY8I_EXT = 0x8D91 :: GLenum

pattern GL_INTENSITY8UI_EXT = 0x8D7F :: GLenum

pattern GL_LUMINANCE16I_EXT = 0x8D8C :: GLenum

pattern GL_LUMINANCE16UI_EXT = 0x8D7A :: GLenum

pattern GL_LUMINANCE32I_EXT = 0x8D86 :: GLenum

pattern GL_LUMINANCE32UI_EXT = 0x8D74 :: GLenum

pattern GL_LUMINANCE8I_EXT = 0x8D92 :: GLenum

pattern GL_LUMINANCE8UI_EXT = 0x8D80 :: GLenum

pattern GL_LUMINANCE_ALPHA16I_EXT = 0x8D8D :: GLenum

pattern GL_LUMINANCE_ALPHA16UI_EXT = 0x8D7B :: GLenum

pattern GL_LUMINANCE_ALPHA32I_EXT = 0x8D87 :: GLenum

pattern GL_LUMINANCE_ALPHA32UI_EXT = 0x8D75 :: GLenum

pattern GL_LUMINANCE_ALPHA8I_EXT = 0x8D93 :: GLenum

pattern GL_LUMINANCE_ALPHA8UI_EXT = 0x8D81 :: GLenum

pattern GL_LUMINANCE_ALPHA_INTEGER_EXT = 0x8D9D :: GLenum

pattern GL_LUMINANCE_INTEGER_EXT = 0x8D9C :: GLenum

pattern GL_RED_INTEGER_EXT = 0x8D94 :: GLenum

pattern GL_RGB16I_EXT = 0x8D89 :: GLenum

pattern GL_RGB16UI_EXT = 0x8D77 :: GLenum

pattern GL_RGB32I_EXT = 0x8D83 :: GLenum

pattern GL_RGB32UI_EXT = 0x8D71 :: GLenum

pattern GL_RGB8I_EXT = 0x8D8F :: GLenum

pattern GL_RGB8UI_EXT = 0x8D7D :: GLenum

pattern GL_RGBA16I_EXT = 0x8D88 :: GLenum

pattern GL_RGBA16UI_EXT = 0x8D76 :: GLenum

pattern GL_RGBA32I_EXT = 0x8D82 :: GLenum

pattern GL_RGBA32UI_EXT = 0x8D70 :: GLenum

pattern GL_RGBA8I_EXT = 0x8D8E :: GLenum

pattern GL_RGBA8UI_EXT = 0x8D7C :: GLenum

pattern GL_RGBA_INTEGER_EXT = 0x8D99 :: GLenum

pattern GL_RGBA_INTEGER_MODE_EXT = 0x8D9E :: GLenum

pattern GL_RGB_INTEGER_EXT = 0x8D98 :: GLenum