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

  -- * GL_EXT_blend_minmax
  , glBlendEquationEXT
  , pattern GL_BLEND_EQUATION_EXT
  , pattern GL_FUNC_ADD_EXT
  , pattern GL_MAX_EXT
  , pattern GL_MIN_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.Types
import System.IO.Unsafe

gl_EXT_blend_minmax :: Bool
gl_EXT_blend_minmax = member "GL_EXT_blend_minmax" extensions

glBlendEquationEXT :: MonadIO m => GLenum -> m ()
glBlendEquationEXT = ffienumIOV glBlendEquationEXTFunPtr

glBlendEquationEXTFunPtr :: FunPtr (GLenum -> IO ())
glBlendEquationEXTFunPtr = unsafePerformIO (getProcAddress "glBlendEquationEXT")

{-# NOINLINE glBlendEquationEXTFunPtr #-}

pattern GL_BLEND_EQUATION_EXT = 0x8009 :: GLenum

pattern GL_FUNC_ADD_EXT = 0x8006 :: GLenum

pattern GL_MAX_EXT = 0x8008 :: GLenum

pattern GL_MIN_EXT = 0x8007 :: GLenum