-- This file was automatically generated.
{-# LANGUAGE ScopedTypeVariables, PatternSynonyms #-}
module Graphics.GL.Raw.Profile.Compatibility45 (
  -- * Graphics.GL.Raw.Profile.Compatibility45
    module Graphics.GL.Raw.Profile.Compatibility44
  , module Graphics.GL.Raw.Profile.Core45
  , glGetnColorTable
  , glGetnConvolutionFilter
  , glGetnHistogram
  , glGetnMapdv
  , glGetnMapfv
  , glGetnMapiv
  , glGetnMinmax
  , glGetnPixelMapfv
  , glGetnPixelMapuiv
  , glGetnPixelMapusv
  , glGetnPolygonStipple
  , glGetnSeparableFilter
) where

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

import Graphics.GL.Raw.Profile.Compatibility44
import Graphics.GL.Raw.Profile.Core45

glGetnColorTable :: MonadIO m => GLenum -> GLenum -> GLenum -> GLsizei -> Ptr () -> m ()
glGetnColorTable = ffienumenumenumsizeiPtrVIOV glGetnColorTableFunPtr

glGetnColorTableFunPtr :: FunPtr (GLenum -> GLenum -> GLenum -> GLsizei -> Ptr () -> IO ())
glGetnColorTableFunPtr = unsafePerformIO (getProcAddress "glGetnColorTable")

{-# NOINLINE glGetnColorTableFunPtr #-}

glGetnConvolutionFilter :: MonadIO m => GLenum -> GLenum -> GLenum -> GLsizei -> Ptr () -> m ()
glGetnConvolutionFilter = ffienumenumenumsizeiPtrVIOV glGetnConvolutionFilterFunPtr

glGetnConvolutionFilterFunPtr :: FunPtr (GLenum -> GLenum -> GLenum -> GLsizei -> Ptr () -> IO ())
glGetnConvolutionFilterFunPtr = unsafePerformIO (getProcAddress "glGetnConvolutionFilter")

{-# NOINLINE glGetnConvolutionFilterFunPtr #-}

glGetnHistogram :: MonadIO m => GLenum -> GLboolean -> GLenum -> GLenum -> GLsizei -> Ptr () -> m ()
glGetnHistogram = ffienumbooleanenumenumsizeiPtrVIOV glGetnHistogramFunPtr

glGetnHistogramFunPtr :: FunPtr (GLenum -> GLboolean -> GLenum -> GLenum -> GLsizei -> Ptr () -> IO ())
glGetnHistogramFunPtr = unsafePerformIO (getProcAddress "glGetnHistogram")

{-# NOINLINE glGetnHistogramFunPtr #-}

glGetnMapdv :: MonadIO m => GLenum -> GLenum -> GLsizei -> Ptr GLdouble -> m ()
glGetnMapdv = ffienumenumsizeiPtrdoubleIOV glGetnMapdvFunPtr

glGetnMapdvFunPtr :: FunPtr (GLenum -> GLenum -> GLsizei -> Ptr GLdouble -> IO ())
glGetnMapdvFunPtr = unsafePerformIO (getProcAddress "glGetnMapdv")

{-# NOINLINE glGetnMapdvFunPtr #-}

glGetnMapfv :: MonadIO m => GLenum -> GLenum -> GLsizei -> Ptr GLfloat -> m ()
glGetnMapfv = ffienumenumsizeiPtrfloatIOV glGetnMapfvFunPtr

glGetnMapfvFunPtr :: FunPtr (GLenum -> GLenum -> GLsizei -> Ptr GLfloat -> IO ())
glGetnMapfvFunPtr = unsafePerformIO (getProcAddress "glGetnMapfv")

{-# NOINLINE glGetnMapfvFunPtr #-}

glGetnMapiv :: MonadIO m => GLenum -> GLenum -> GLsizei -> Ptr GLint -> m ()
glGetnMapiv = ffienumenumsizeiPtrintIOV glGetnMapivFunPtr

glGetnMapivFunPtr :: FunPtr (GLenum -> GLenum -> GLsizei -> Ptr GLint -> IO ())
glGetnMapivFunPtr = unsafePerformIO (getProcAddress "glGetnMapiv")

{-# NOINLINE glGetnMapivFunPtr #-}

glGetnMinmax :: MonadIO m => GLenum -> GLboolean -> GLenum -> GLenum -> GLsizei -> Ptr () -> m ()
glGetnMinmax = ffienumbooleanenumenumsizeiPtrVIOV glGetnMinmaxFunPtr

glGetnMinmaxFunPtr :: FunPtr (GLenum -> GLboolean -> GLenum -> GLenum -> GLsizei -> Ptr () -> IO ())
glGetnMinmaxFunPtr = unsafePerformIO (getProcAddress "glGetnMinmax")

{-# NOINLINE glGetnMinmaxFunPtr #-}

glGetnPixelMapfv :: MonadIO m => GLenum -> GLsizei -> Ptr GLfloat -> m ()
glGetnPixelMapfv = ffienumsizeiPtrfloatIOV glGetnPixelMapfvFunPtr

glGetnPixelMapfvFunPtr :: FunPtr (GLenum -> GLsizei -> Ptr GLfloat -> IO ())
glGetnPixelMapfvFunPtr = unsafePerformIO (getProcAddress "glGetnPixelMapfv")

{-# NOINLINE glGetnPixelMapfvFunPtr #-}

glGetnPixelMapuiv :: MonadIO m => GLenum -> GLsizei -> Ptr GLuint -> m ()
glGetnPixelMapuiv = ffienumsizeiPtruintIOV glGetnPixelMapuivFunPtr

glGetnPixelMapuivFunPtr :: FunPtr (GLenum -> GLsizei -> Ptr GLuint -> IO ())
glGetnPixelMapuivFunPtr = unsafePerformIO (getProcAddress "glGetnPixelMapuiv")

{-# NOINLINE glGetnPixelMapuivFunPtr #-}

glGetnPixelMapusv :: MonadIO m => GLenum -> GLsizei -> Ptr GLushort -> m ()
glGetnPixelMapusv = ffienumsizeiPtrushortIOV glGetnPixelMapusvFunPtr

glGetnPixelMapusvFunPtr :: FunPtr (GLenum -> GLsizei -> Ptr GLushort -> IO ())
glGetnPixelMapusvFunPtr = unsafePerformIO (getProcAddress "glGetnPixelMapusv")

{-# NOINLINE glGetnPixelMapusvFunPtr #-}

glGetnPolygonStipple :: MonadIO m => GLsizei -> Ptr GLubyte -> m ()
glGetnPolygonStipple = ffisizeiPtrubyteIOV glGetnPolygonStippleFunPtr

glGetnPolygonStippleFunPtr :: FunPtr (GLsizei -> Ptr GLubyte -> IO ())
glGetnPolygonStippleFunPtr = unsafePerformIO (getProcAddress "glGetnPolygonStipple")

{-# NOINLINE glGetnPolygonStippleFunPtr #-}

glGetnSeparableFilter :: MonadIO m => GLenum -> GLenum -> GLenum -> GLsizei -> Ptr () -> GLsizei -> Ptr () -> Ptr () -> m ()
glGetnSeparableFilter = ffienumenumenumsizeiPtrVsizeiPtrVPtrVIOV glGetnSeparableFilterFunPtr

glGetnSeparableFilterFunPtr :: FunPtr (GLenum -> GLenum -> GLenum -> GLsizei -> Ptr () -> GLsizei -> Ptr () -> Ptr () -> IO ())
glGetnSeparableFilterFunPtr = unsafePerformIO (getProcAddress "glGetnSeparableFilter")

{-# NOINLINE glGetnSeparableFilterFunPtr #-}