-- This file was automatically generated.
{-# LANGUAGE ScopedTypeVariables, PatternSynonyms #-}
module Graphics.GL.Raw.Extension.NV.PathRendering (
  -- * Extension Support
    gl_NV_path_rendering

  -- * GL_NV_path_rendering
  , glCopyPathNV
  , glCoverFillPathInstancedNV
  , glCoverFillPathNV
  , glCoverStrokePathInstancedNV
  , glCoverStrokePathNV
  , glDeletePathsNV
  , glGenPathsNV
  , glGetPathColorGenfvNV
  , glGetPathColorGenivNV
  , glGetPathCommandsNV
  , glGetPathCoordsNV
  , glGetPathDashArrayNV
  , glGetPathLengthNV
  , glGetPathMetricRangeNV
  , glGetPathMetricsNV
  , glGetPathParameterfvNV
  , glGetPathParameterivNV
  , glGetPathSpacingNV
  , glGetPathTexGenfvNV
  , glGetPathTexGenivNV
  , glGetProgramResourcefvNV
  , glInterpolatePathsNV
  , glIsPathNV
  , glIsPointInFillPathNV
  , glIsPointInStrokePathNV
  , glMatrixLoad3x2fNV
  , glMatrixLoad3x3fNV
  , glMatrixLoadTranspose3x3fNV
  , glMatrixMult3x2fNV
  , glMatrixMult3x3fNV
  , glMatrixMultTranspose3x3fNV
  , glPathColorGenNV
  , glPathCommandsNV
  , glPathCoordsNV
  , glPathCoverDepthFuncNV
  , glPathDashArrayNV
  , glPathFogGenNV
  , glPathGlyphIndexArrayNV
  , glPathGlyphIndexRangeNV
  , glPathGlyphRangeNV
  , glPathGlyphsNV
  , glPathMemoryGlyphIndexArrayNV
  , glPathParameterfNV
  , glPathParameterfvNV
  , glPathParameteriNV
  , glPathParameterivNV
  , glPathStencilDepthOffsetNV
  , glPathStencilFuncNV
  , glPathStringNV
  , glPathSubCommandsNV
  , glPathSubCoordsNV
  , glPathTexGenNV
  , glPointAlongPathNV
  , glProgramPathFragmentInputGenNV
  , glStencilFillPathInstancedNV
  , glStencilFillPathNV
  , glStencilStrokePathInstancedNV
  , glStencilStrokePathNV
  , glStencilThenCoverFillPathInstancedNV
  , glStencilThenCoverFillPathNV
  , glStencilThenCoverStrokePathInstancedNV
  , glStencilThenCoverStrokePathNV
  , glTransformPathNV
  , glWeightPathsNV
  , pattern GL_2_BYTES_NV
  , pattern GL_3_BYTES_NV
  , pattern GL_4_BYTES_NV
  , pattern GL_ACCUM_ADJACENT_PAIRS_NV
  , pattern GL_ADJACENT_PAIRS_NV
  , pattern GL_AFFINE_2D_NV
  , pattern GL_AFFINE_3D_NV
  , pattern GL_ARC_TO_NV
  , pattern GL_BEVEL_NV
  , pattern GL_BOLD_BIT_NV
  , pattern GL_BOUNDING_BOX_NV
  , pattern GL_BOUNDING_BOX_OF_BOUNDING_BOXES_NV
  , pattern GL_CIRCULAR_CCW_ARC_TO_NV
  , pattern GL_CIRCULAR_CW_ARC_TO_NV
  , pattern GL_CIRCULAR_TANGENT_ARC_TO_NV
  , pattern GL_CLOSE_PATH_NV
  , pattern GL_CONIC_CURVE_TO_NV
  , pattern GL_CONSTANT_NV
  , pattern GL_CONVEX_HULL_NV
  , pattern GL_COUNT_DOWN_NV
  , pattern GL_COUNT_UP_NV
  , pattern GL_CUBIC_CURVE_TO_NV
  , pattern GL_DUP_FIRST_CUBIC_CURVE_TO_NV
  , pattern GL_DUP_LAST_CUBIC_CURVE_TO_NV
  , pattern GL_EYE_LINEAR_NV
  , pattern GL_FILE_NAME_NV
  , pattern GL_FIRST_TO_REST_NV
  , pattern GL_FONT_ASCENDER_BIT_NV
  , pattern GL_FONT_DESCENDER_BIT_NV
  , pattern GL_FONT_GLYPHS_AVAILABLE_NV
  , pattern GL_FONT_HAS_KERNING_BIT_NV
  , pattern GL_FONT_HEIGHT_BIT_NV
  , pattern GL_FONT_MAX_ADVANCE_HEIGHT_BIT_NV
  , pattern GL_FONT_MAX_ADVANCE_WIDTH_BIT_NV
  , pattern GL_FONT_NUM_GLYPH_INDICES_BIT_NV
  , pattern GL_FONT_TARGET_UNAVAILABLE_NV
  , pattern GL_FONT_UNAVAILABLE_NV
  , pattern GL_FONT_UNDERLINE_POSITION_BIT_NV
  , pattern GL_FONT_UNDERLINE_THICKNESS_BIT_NV
  , pattern GL_FONT_UNINTELLIGIBLE_NV
  , pattern GL_FONT_UNITS_PER_EM_BIT_NV
  , pattern GL_FONT_X_MAX_BOUNDS_BIT_NV
  , pattern GL_FONT_X_MIN_BOUNDS_BIT_NV
  , pattern GL_FONT_Y_MAX_BOUNDS_BIT_NV
  , pattern GL_FONT_Y_MIN_BOUNDS_BIT_NV
  , pattern GL_FRAGMENT_INPUT_NV
  , pattern GL_GLYPH_HAS_KERNING_BIT_NV
  , pattern GL_GLYPH_HEIGHT_BIT_NV
  , pattern GL_GLYPH_HORIZONTAL_BEARING_ADVANCE_BIT_NV
  , pattern GL_GLYPH_HORIZONTAL_BEARING_X_BIT_NV
  , pattern GL_GLYPH_HORIZONTAL_BEARING_Y_BIT_NV
  , pattern GL_GLYPH_VERTICAL_BEARING_ADVANCE_BIT_NV
  , pattern GL_GLYPH_VERTICAL_BEARING_X_BIT_NV
  , pattern GL_GLYPH_VERTICAL_BEARING_Y_BIT_NV
  , pattern GL_GLYPH_WIDTH_BIT_NV
  , pattern GL_HORIZONTAL_LINE_TO_NV
  , pattern GL_ITALIC_BIT_NV
  , pattern GL_LARGE_CCW_ARC_TO_NV
  , pattern GL_LARGE_CW_ARC_TO_NV
  , pattern GL_LINE_TO_NV
  , pattern GL_MITER_REVERT_NV
  , pattern GL_MITER_TRUNCATE_NV
  , pattern GL_MOVE_TO_CONTINUES_NV
  , pattern GL_MOVE_TO_NV
  , pattern GL_MOVE_TO_RESETS_NV
  , pattern GL_OBJECT_LINEAR_NV
  , pattern GL_PATH_CLIENT_LENGTH_NV
  , pattern GL_PATH_COMMAND_COUNT_NV
  , pattern GL_PATH_COMPUTED_LENGTH_NV
  , pattern GL_PATH_COORD_COUNT_NV
  , pattern GL_PATH_COVER_DEPTH_FUNC_NV
  , pattern GL_PATH_DASH_ARRAY_COUNT_NV
  , pattern GL_PATH_DASH_CAPS_NV
  , pattern GL_PATH_DASH_OFFSET_NV
  , pattern GL_PATH_DASH_OFFSET_RESET_NV
  , pattern GL_PATH_END_CAPS_NV
  , pattern GL_PATH_ERROR_POSITION_NV
  , pattern GL_PATH_FILL_BOUNDING_BOX_NV
  , pattern GL_PATH_FILL_COVER_MODE_NV
  , pattern GL_PATH_FILL_MASK_NV
  , pattern GL_PATH_FILL_MODE_NV
  , pattern GL_PATH_FOG_GEN_MODE_NV
  , pattern GL_PATH_FORMAT_PS_NV
  , pattern GL_PATH_FORMAT_SVG_NV
  , pattern GL_PATH_GEN_COEFF_NV
  , pattern GL_PATH_GEN_COLOR_FORMAT_NV
  , pattern GL_PATH_GEN_COMPONENTS_NV
  , pattern GL_PATH_GEN_MODE_NV
  , pattern GL_PATH_INITIAL_DASH_CAP_NV
  , pattern GL_PATH_INITIAL_END_CAP_NV
  , pattern GL_PATH_JOIN_STYLE_NV
  , pattern GL_PATH_MAX_MODELVIEW_STACK_DEPTH_NV
  , pattern GL_PATH_MAX_PROJECTION_STACK_DEPTH_NV
  , pattern GL_PATH_MITER_LIMIT_NV
  , pattern GL_PATH_MODELVIEW_MATRIX_NV
  , pattern GL_PATH_MODELVIEW_NV
  , pattern GL_PATH_MODELVIEW_STACK_DEPTH_NV
  , pattern GL_PATH_OBJECT_BOUNDING_BOX_NV
  , pattern GL_PATH_PROJECTION_MATRIX_NV
  , pattern GL_PATH_PROJECTION_NV
  , pattern GL_PATH_PROJECTION_STACK_DEPTH_NV
  , pattern GL_PATH_STENCIL_DEPTH_OFFSET_FACTOR_NV
  , pattern GL_PATH_STENCIL_DEPTH_OFFSET_UNITS_NV
  , pattern GL_PATH_STENCIL_FUNC_NV
  , pattern GL_PATH_STENCIL_REF_NV
  , pattern GL_PATH_STENCIL_VALUE_MASK_NV
  , pattern GL_PATH_STROKE_BOUNDING_BOX_NV
  , pattern GL_PATH_STROKE_COVER_MODE_NV
  , pattern GL_PATH_STROKE_MASK_NV
  , pattern GL_PATH_STROKE_WIDTH_NV
  , pattern GL_PATH_TERMINAL_DASH_CAP_NV
  , pattern GL_PATH_TERMINAL_END_CAP_NV
  , pattern GL_PATH_TRANSPOSE_MODELVIEW_MATRIX_NV
  , pattern GL_PATH_TRANSPOSE_PROJECTION_MATRIX_NV
  , pattern GL_PRIMARY_COLOR
  , pattern GL_PRIMARY_COLOR_NV
  , pattern GL_QUADRATIC_CURVE_TO_NV
  , pattern GL_RECT_NV
  , pattern GL_RELATIVE_ARC_TO_NV
  , pattern GL_RELATIVE_CONIC_CURVE_TO_NV
  , pattern GL_RELATIVE_CUBIC_CURVE_TO_NV
  , pattern GL_RELATIVE_HORIZONTAL_LINE_TO_NV
  , pattern GL_RELATIVE_LARGE_CCW_ARC_TO_NV
  , pattern GL_RELATIVE_LARGE_CW_ARC_TO_NV
  , pattern GL_RELATIVE_LINE_TO_NV
  , pattern GL_RELATIVE_MOVE_TO_NV
  , pattern GL_RELATIVE_QUADRATIC_CURVE_TO_NV
  , pattern GL_RELATIVE_RECT_NV
  , pattern GL_RELATIVE_ROUNDED_RECT2_NV
  , pattern GL_RELATIVE_ROUNDED_RECT4_NV
  , pattern GL_RELATIVE_ROUNDED_RECT8_NV
  , pattern GL_RELATIVE_ROUNDED_RECT_NV
  , pattern GL_RELATIVE_SMALL_CCW_ARC_TO_NV
  , pattern GL_RELATIVE_SMALL_CW_ARC_TO_NV
  , pattern GL_RELATIVE_SMOOTH_CUBIC_CURVE_TO_NV
  , pattern GL_RELATIVE_SMOOTH_QUADRATIC_CURVE_TO_NV
  , pattern GL_RELATIVE_VERTICAL_LINE_TO_NV
  , pattern GL_RESTART_PATH_NV
  , pattern GL_ROUNDED_RECT2_NV
  , pattern GL_ROUNDED_RECT4_NV
  , pattern GL_ROUNDED_RECT8_NV
  , pattern GL_ROUNDED_RECT_NV
  , pattern GL_ROUND_NV
  , pattern GL_SECONDARY_COLOR_NV
  , pattern GL_SKIP_MISSING_GLYPH_NV
  , pattern GL_SMALL_CCW_ARC_TO_NV
  , pattern GL_SMALL_CW_ARC_TO_NV
  , pattern GL_SMOOTH_CUBIC_CURVE_TO_NV
  , pattern GL_SMOOTH_QUADRATIC_CURVE_TO_NV
  , pattern GL_SQUARE_NV
  , pattern GL_STANDARD_FONT_FORMAT_NV
  , pattern GL_STANDARD_FONT_NAME_NV
  , pattern GL_SYSTEM_FONT_NAME_NV
  , pattern GL_TRANSLATE_2D_NV
  , pattern GL_TRANSLATE_3D_NV
  , pattern GL_TRANSLATE_X_NV
  , pattern GL_TRANSLATE_Y_NV
  , pattern GL_TRANSPOSE_AFFINE_2D_NV
  , pattern GL_TRANSPOSE_AFFINE_3D_NV
  , pattern GL_TRIANGULAR_NV
  , pattern GL_USE_MISSING_GLYPH_NV
  , pattern GL_UTF16_NV
  , pattern GL_UTF8_NV
  , pattern GL_VERTICAL_LINE_TO_NV
) 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_NV_path_rendering :: Bool
gl_NV_path_rendering = member "GL_NV_path_rendering" extensions

glCopyPathNV :: MonadIO m => GLuint -> GLuint -> m ()
glCopyPathNV = ffiuintuintIOV glCopyPathNVFunPtr

glCopyPathNVFunPtr :: FunPtr (GLuint -> GLuint -> IO ())
glCopyPathNVFunPtr = unsafePerformIO (getProcAddress "glCopyPathNV")

{-# NOINLINE glCopyPathNVFunPtr #-}

glCoverFillPathInstancedNV :: MonadIO m => GLsizei -> GLenum -> Ptr () -> GLuint -> GLenum -> GLenum -> Ptr GLfloat -> m ()
glCoverFillPathInstancedNV = ffisizeienumPtrVuintenumenumPtrfloatIOV glCoverFillPathInstancedNVFunPtr

glCoverFillPathInstancedNVFunPtr :: FunPtr (GLsizei -> GLenum -> Ptr () -> GLuint -> GLenum -> GLenum -> Ptr GLfloat -> IO ())
glCoverFillPathInstancedNVFunPtr = unsafePerformIO (getProcAddress "glCoverFillPathInstancedNV")

{-# NOINLINE glCoverFillPathInstancedNVFunPtr #-}

glCoverFillPathNV :: MonadIO m => GLuint -> GLenum -> m ()
glCoverFillPathNV = ffiuintenumIOV glCoverFillPathNVFunPtr

glCoverFillPathNVFunPtr :: FunPtr (GLuint -> GLenum -> IO ())
glCoverFillPathNVFunPtr = unsafePerformIO (getProcAddress "glCoverFillPathNV")

{-# NOINLINE glCoverFillPathNVFunPtr #-}

glCoverStrokePathInstancedNV :: MonadIO m => GLsizei -> GLenum -> Ptr () -> GLuint -> GLenum -> GLenum -> Ptr GLfloat -> m ()
glCoverStrokePathInstancedNV = ffisizeienumPtrVuintenumenumPtrfloatIOV glCoverStrokePathInstancedNVFunPtr

glCoverStrokePathInstancedNVFunPtr :: FunPtr (GLsizei -> GLenum -> Ptr () -> GLuint -> GLenum -> GLenum -> Ptr GLfloat -> IO ())
glCoverStrokePathInstancedNVFunPtr = unsafePerformIO (getProcAddress "glCoverStrokePathInstancedNV")

{-# NOINLINE glCoverStrokePathInstancedNVFunPtr #-}

glCoverStrokePathNV :: MonadIO m => GLuint -> GLenum -> m ()
glCoverStrokePathNV = ffiuintenumIOV glCoverStrokePathNVFunPtr

glCoverStrokePathNVFunPtr :: FunPtr (GLuint -> GLenum -> IO ())
glCoverStrokePathNVFunPtr = unsafePerformIO (getProcAddress "glCoverStrokePathNV")

{-# NOINLINE glCoverStrokePathNVFunPtr #-}

glDeletePathsNV :: MonadIO m => GLuint -> GLsizei -> m ()
glDeletePathsNV = ffiuintsizeiIOV glDeletePathsNVFunPtr

glDeletePathsNVFunPtr :: FunPtr (GLuint -> GLsizei -> IO ())
glDeletePathsNVFunPtr = unsafePerformIO (getProcAddress "glDeletePathsNV")

{-# NOINLINE glDeletePathsNVFunPtr #-}

glGenPathsNV :: MonadIO m => GLsizei -> m GLuint
glGenPathsNV = ffisizeiIOuint glGenPathsNVFunPtr

glGenPathsNVFunPtr :: FunPtr (GLsizei -> IO GLuint)
glGenPathsNVFunPtr = unsafePerformIO (getProcAddress "glGenPathsNV")

{-# NOINLINE glGenPathsNVFunPtr #-}

glGetPathColorGenfvNV :: MonadIO m => GLenum -> GLenum -> Ptr GLfloat -> m ()
glGetPathColorGenfvNV = ffienumenumPtrfloatIOV glGetPathColorGenfvNVFunPtr

glGetPathColorGenfvNVFunPtr :: FunPtr (GLenum -> GLenum -> Ptr GLfloat -> IO ())
glGetPathColorGenfvNVFunPtr = unsafePerformIO (getProcAddress "glGetPathColorGenfvNV")

{-# NOINLINE glGetPathColorGenfvNVFunPtr #-}

glGetPathColorGenivNV :: MonadIO m => GLenum -> GLenum -> Ptr GLint -> m ()
glGetPathColorGenivNV = ffienumenumPtrintIOV glGetPathColorGenivNVFunPtr

glGetPathColorGenivNVFunPtr :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
glGetPathColorGenivNVFunPtr = unsafePerformIO (getProcAddress "glGetPathColorGenivNV")

{-# NOINLINE glGetPathColorGenivNVFunPtr #-}

glGetPathCommandsNV :: MonadIO m => GLuint -> Ptr GLubyte -> m ()
glGetPathCommandsNV = ffiuintPtrubyteIOV glGetPathCommandsNVFunPtr

glGetPathCommandsNVFunPtr :: FunPtr (GLuint -> Ptr GLubyte -> IO ())
glGetPathCommandsNVFunPtr = unsafePerformIO (getProcAddress "glGetPathCommandsNV")

{-# NOINLINE glGetPathCommandsNVFunPtr #-}

glGetPathCoordsNV :: MonadIO m => GLuint -> Ptr GLfloat -> m ()
glGetPathCoordsNV = ffiuintPtrfloatIOV glGetPathCoordsNVFunPtr

glGetPathCoordsNVFunPtr :: FunPtr (GLuint -> Ptr GLfloat -> IO ())
glGetPathCoordsNVFunPtr = unsafePerformIO (getProcAddress "glGetPathCoordsNV")

{-# NOINLINE glGetPathCoordsNVFunPtr #-}

glGetPathDashArrayNV :: MonadIO m => GLuint -> Ptr GLfloat -> m ()
glGetPathDashArrayNV = ffiuintPtrfloatIOV glGetPathDashArrayNVFunPtr

glGetPathDashArrayNVFunPtr :: FunPtr (GLuint -> Ptr GLfloat -> IO ())
glGetPathDashArrayNVFunPtr = unsafePerformIO (getProcAddress "glGetPathDashArrayNV")

{-# NOINLINE glGetPathDashArrayNVFunPtr #-}

glGetPathLengthNV :: MonadIO m => GLuint -> GLsizei -> GLsizei -> m GLfloat
glGetPathLengthNV = ffiuintsizeisizeiIOfloat glGetPathLengthNVFunPtr

glGetPathLengthNVFunPtr :: FunPtr (GLuint -> GLsizei -> GLsizei -> IO GLfloat)
glGetPathLengthNVFunPtr = unsafePerformIO (getProcAddress "glGetPathLengthNV")

{-# NOINLINE glGetPathLengthNVFunPtr #-}

glGetPathMetricRangeNV :: MonadIO m => GLbitfield -> GLuint -> GLsizei -> GLsizei -> Ptr GLfloat -> m ()
glGetPathMetricRangeNV = ffibitfielduintsizeisizeiPtrfloatIOV glGetPathMetricRangeNVFunPtr

glGetPathMetricRangeNVFunPtr :: FunPtr (GLbitfield -> GLuint -> GLsizei -> GLsizei -> Ptr GLfloat -> IO ())
glGetPathMetricRangeNVFunPtr = unsafePerformIO (getProcAddress "glGetPathMetricRangeNV")

{-# NOINLINE glGetPathMetricRangeNVFunPtr #-}

glGetPathMetricsNV :: MonadIO m => GLbitfield -> GLsizei -> GLenum -> Ptr () -> GLuint -> GLsizei -> Ptr GLfloat -> m ()
glGetPathMetricsNV = ffibitfieldsizeienumPtrVuintsizeiPtrfloatIOV glGetPathMetricsNVFunPtr

glGetPathMetricsNVFunPtr :: FunPtr (GLbitfield -> GLsizei -> GLenum -> Ptr () -> GLuint -> GLsizei -> Ptr GLfloat -> IO ())
glGetPathMetricsNVFunPtr = unsafePerformIO (getProcAddress "glGetPathMetricsNV")

{-# NOINLINE glGetPathMetricsNVFunPtr #-}

glGetPathParameterfvNV :: MonadIO m => GLuint -> GLenum -> Ptr GLfloat -> m ()
glGetPathParameterfvNV = ffiuintenumPtrfloatIOV glGetPathParameterfvNVFunPtr

glGetPathParameterfvNVFunPtr :: FunPtr (GLuint -> GLenum -> Ptr GLfloat -> IO ())
glGetPathParameterfvNVFunPtr = unsafePerformIO (getProcAddress "glGetPathParameterfvNV")

{-# NOINLINE glGetPathParameterfvNVFunPtr #-}

glGetPathParameterivNV :: MonadIO m => GLuint -> GLenum -> Ptr GLint -> m ()
glGetPathParameterivNV = ffiuintenumPtrintIOV glGetPathParameterivNVFunPtr

glGetPathParameterivNVFunPtr :: FunPtr (GLuint -> GLenum -> Ptr GLint -> IO ())
glGetPathParameterivNVFunPtr = unsafePerformIO (getProcAddress "glGetPathParameterivNV")

{-# NOINLINE glGetPathParameterivNVFunPtr #-}

glGetPathSpacingNV :: MonadIO m => GLenum -> GLsizei -> GLenum -> Ptr () -> GLuint -> GLfloat -> GLfloat -> GLenum -> Ptr GLfloat -> m ()
glGetPathSpacingNV = ffienumsizeienumPtrVuintfloatfloatenumPtrfloatIOV glGetPathSpacingNVFunPtr

glGetPathSpacingNVFunPtr :: FunPtr (GLenum -> GLsizei -> GLenum -> Ptr () -> GLuint -> GLfloat -> GLfloat -> GLenum -> Ptr GLfloat -> IO ())
glGetPathSpacingNVFunPtr = unsafePerformIO (getProcAddress "glGetPathSpacingNV")

{-# NOINLINE glGetPathSpacingNVFunPtr #-}

glGetPathTexGenfvNV :: MonadIO m => GLenum -> GLenum -> Ptr GLfloat -> m ()
glGetPathTexGenfvNV = ffienumenumPtrfloatIOV glGetPathTexGenfvNVFunPtr

glGetPathTexGenfvNVFunPtr :: FunPtr (GLenum -> GLenum -> Ptr GLfloat -> IO ())
glGetPathTexGenfvNVFunPtr = unsafePerformIO (getProcAddress "glGetPathTexGenfvNV")

{-# NOINLINE glGetPathTexGenfvNVFunPtr #-}

glGetPathTexGenivNV :: MonadIO m => GLenum -> GLenum -> Ptr GLint -> m ()
glGetPathTexGenivNV = ffienumenumPtrintIOV glGetPathTexGenivNVFunPtr

glGetPathTexGenivNVFunPtr :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
glGetPathTexGenivNVFunPtr = unsafePerformIO (getProcAddress "glGetPathTexGenivNV")

{-# NOINLINE glGetPathTexGenivNVFunPtr #-}

glGetProgramResourcefvNV :: MonadIO m => GLuint -> GLenum -> GLuint -> GLsizei -> Ptr GLenum -> GLsizei -> Ptr GLsizei -> Ptr GLfloat -> m ()
glGetProgramResourcefvNV = ffiuintenumuintsizeiPtrenumsizeiPtrsizeiPtrfloatIOV glGetProgramResourcefvNVFunPtr

glGetProgramResourcefvNVFunPtr :: FunPtr (GLuint -> GLenum -> GLuint -> GLsizei -> Ptr GLenum -> GLsizei -> Ptr GLsizei -> Ptr GLfloat -> IO ())
glGetProgramResourcefvNVFunPtr = unsafePerformIO (getProcAddress "glGetProgramResourcefvNV")

{-# NOINLINE glGetProgramResourcefvNVFunPtr #-}

glInterpolatePathsNV :: MonadIO m => GLuint -> GLuint -> GLuint -> GLfloat -> m ()
glInterpolatePathsNV = ffiuintuintuintfloatIOV glInterpolatePathsNVFunPtr

glInterpolatePathsNVFunPtr :: FunPtr (GLuint -> GLuint -> GLuint -> GLfloat -> IO ())
glInterpolatePathsNVFunPtr = unsafePerformIO (getProcAddress "glInterpolatePathsNV")

{-# NOINLINE glInterpolatePathsNVFunPtr #-}

glIsPathNV :: MonadIO m => GLuint -> m GLboolean
glIsPathNV = ffiuintIOboolean glIsPathNVFunPtr

glIsPathNVFunPtr :: FunPtr (GLuint -> IO GLboolean)
glIsPathNVFunPtr = unsafePerformIO (getProcAddress "glIsPathNV")

{-# NOINLINE glIsPathNVFunPtr #-}

glIsPointInFillPathNV :: MonadIO m => GLuint -> GLuint -> GLfloat -> GLfloat -> m GLboolean
glIsPointInFillPathNV = ffiuintuintfloatfloatIOboolean glIsPointInFillPathNVFunPtr

glIsPointInFillPathNVFunPtr :: FunPtr (GLuint -> GLuint -> GLfloat -> GLfloat -> IO GLboolean)
glIsPointInFillPathNVFunPtr = unsafePerformIO (getProcAddress "glIsPointInFillPathNV")

{-# NOINLINE glIsPointInFillPathNVFunPtr #-}

glIsPointInStrokePathNV :: MonadIO m => GLuint -> GLfloat -> GLfloat -> m GLboolean
glIsPointInStrokePathNV = ffiuintfloatfloatIOboolean glIsPointInStrokePathNVFunPtr

glIsPointInStrokePathNVFunPtr :: FunPtr (GLuint -> GLfloat -> GLfloat -> IO GLboolean)
glIsPointInStrokePathNVFunPtr = unsafePerformIO (getProcAddress "glIsPointInStrokePathNV")

{-# NOINLINE glIsPointInStrokePathNVFunPtr #-}

glMatrixLoad3x2fNV :: MonadIO m => GLenum -> Ptr GLfloat -> m ()
glMatrixLoad3x2fNV = ffienumPtrfloatIOV glMatrixLoad3x2fNVFunPtr

glMatrixLoad3x2fNVFunPtr :: FunPtr (GLenum -> Ptr GLfloat -> IO ())
glMatrixLoad3x2fNVFunPtr = unsafePerformIO (getProcAddress "glMatrixLoad3x2fNV")

{-# NOINLINE glMatrixLoad3x2fNVFunPtr #-}

glMatrixLoad3x3fNV :: MonadIO m => GLenum -> Ptr GLfloat -> m ()
glMatrixLoad3x3fNV = ffienumPtrfloatIOV glMatrixLoad3x3fNVFunPtr

glMatrixLoad3x3fNVFunPtr :: FunPtr (GLenum -> Ptr GLfloat -> IO ())
glMatrixLoad3x3fNVFunPtr = unsafePerformIO (getProcAddress "glMatrixLoad3x3fNV")

{-# NOINLINE glMatrixLoad3x3fNVFunPtr #-}

glMatrixLoadTranspose3x3fNV :: MonadIO m => GLenum -> Ptr GLfloat -> m ()
glMatrixLoadTranspose3x3fNV = ffienumPtrfloatIOV glMatrixLoadTranspose3x3fNVFunPtr

glMatrixLoadTranspose3x3fNVFunPtr :: FunPtr (GLenum -> Ptr GLfloat -> IO ())
glMatrixLoadTranspose3x3fNVFunPtr = unsafePerformIO (getProcAddress "glMatrixLoadTranspose3x3fNV")

{-# NOINLINE glMatrixLoadTranspose3x3fNVFunPtr #-}

glMatrixMult3x2fNV :: MonadIO m => GLenum -> Ptr GLfloat -> m ()
glMatrixMult3x2fNV = ffienumPtrfloatIOV glMatrixMult3x2fNVFunPtr

glMatrixMult3x2fNVFunPtr :: FunPtr (GLenum -> Ptr GLfloat -> IO ())
glMatrixMult3x2fNVFunPtr = unsafePerformIO (getProcAddress "glMatrixMult3x2fNV")

{-# NOINLINE glMatrixMult3x2fNVFunPtr #-}

glMatrixMult3x3fNV :: MonadIO m => GLenum -> Ptr GLfloat -> m ()
glMatrixMult3x3fNV = ffienumPtrfloatIOV glMatrixMult3x3fNVFunPtr

glMatrixMult3x3fNVFunPtr :: FunPtr (GLenum -> Ptr GLfloat -> IO ())
glMatrixMult3x3fNVFunPtr = unsafePerformIO (getProcAddress "glMatrixMult3x3fNV")

{-# NOINLINE glMatrixMult3x3fNVFunPtr #-}

glMatrixMultTranspose3x3fNV :: MonadIO m => GLenum -> Ptr GLfloat -> m ()
glMatrixMultTranspose3x3fNV = ffienumPtrfloatIOV glMatrixMultTranspose3x3fNVFunPtr

glMatrixMultTranspose3x3fNVFunPtr :: FunPtr (GLenum -> Ptr GLfloat -> IO ())
glMatrixMultTranspose3x3fNVFunPtr = unsafePerformIO (getProcAddress "glMatrixMultTranspose3x3fNV")

{-# NOINLINE glMatrixMultTranspose3x3fNVFunPtr #-}

glPathColorGenNV :: MonadIO m => GLenum -> GLenum -> GLenum -> Ptr GLfloat -> m ()
glPathColorGenNV = ffienumenumenumPtrfloatIOV glPathColorGenNVFunPtr

glPathColorGenNVFunPtr :: FunPtr (GLenum -> GLenum -> GLenum -> Ptr GLfloat -> IO ())
glPathColorGenNVFunPtr = unsafePerformIO (getProcAddress "glPathColorGenNV")

{-# NOINLINE glPathColorGenNVFunPtr #-}

glPathCommandsNV :: MonadIO m => GLuint -> GLsizei -> Ptr GLubyte -> GLsizei -> GLenum -> Ptr () -> m ()
glPathCommandsNV = ffiuintsizeiPtrubytesizeienumPtrVIOV glPathCommandsNVFunPtr

glPathCommandsNVFunPtr :: FunPtr (GLuint -> GLsizei -> Ptr GLubyte -> GLsizei -> GLenum -> Ptr () -> IO ())
glPathCommandsNVFunPtr = unsafePerformIO (getProcAddress "glPathCommandsNV")

{-# NOINLINE glPathCommandsNVFunPtr #-}

glPathCoordsNV :: MonadIO m => GLuint -> GLsizei -> GLenum -> Ptr () -> m ()
glPathCoordsNV = ffiuintsizeienumPtrVIOV glPathCoordsNVFunPtr

glPathCoordsNVFunPtr :: FunPtr (GLuint -> GLsizei -> GLenum -> Ptr () -> IO ())
glPathCoordsNVFunPtr = unsafePerformIO (getProcAddress "glPathCoordsNV")

{-# NOINLINE glPathCoordsNVFunPtr #-}

glPathCoverDepthFuncNV :: MonadIO m => GLenum -> m ()
glPathCoverDepthFuncNV = ffienumIOV glPathCoverDepthFuncNVFunPtr

glPathCoverDepthFuncNVFunPtr :: FunPtr (GLenum -> IO ())
glPathCoverDepthFuncNVFunPtr = unsafePerformIO (getProcAddress "glPathCoverDepthFuncNV")

{-# NOINLINE glPathCoverDepthFuncNVFunPtr #-}

glPathDashArrayNV :: MonadIO m => GLuint -> GLsizei -> Ptr GLfloat -> m ()
glPathDashArrayNV = ffiuintsizeiPtrfloatIOV glPathDashArrayNVFunPtr

glPathDashArrayNVFunPtr :: FunPtr (GLuint -> GLsizei -> Ptr GLfloat -> IO ())
glPathDashArrayNVFunPtr = unsafePerformIO (getProcAddress "glPathDashArrayNV")

{-# NOINLINE glPathDashArrayNVFunPtr #-}

glPathFogGenNV :: MonadIO m => GLenum -> m ()
glPathFogGenNV = ffienumIOV glPathFogGenNVFunPtr

glPathFogGenNVFunPtr :: FunPtr (GLenum -> IO ())
glPathFogGenNVFunPtr = unsafePerformIO (getProcAddress "glPathFogGenNV")

{-# NOINLINE glPathFogGenNVFunPtr #-}

glPathGlyphIndexArrayNV :: MonadIO m => GLuint -> GLenum -> Ptr () -> GLbitfield -> GLuint -> GLsizei -> GLuint -> GLfloat -> m GLenum
glPathGlyphIndexArrayNV = ffiuintenumPtrVbitfielduintsizeiuintfloatIOenum glPathGlyphIndexArrayNVFunPtr

glPathGlyphIndexArrayNVFunPtr :: FunPtr (GLuint -> GLenum -> Ptr () -> GLbitfield -> GLuint -> GLsizei -> GLuint -> GLfloat -> IO GLenum)
glPathGlyphIndexArrayNVFunPtr = unsafePerformIO (getProcAddress "glPathGlyphIndexArrayNV")

{-# NOINLINE glPathGlyphIndexArrayNVFunPtr #-}

glPathGlyphIndexRangeNV :: MonadIO m => GLenum -> Ptr () -> GLbitfield -> GLuint -> GLfloat -> GLuint -> m GLenum
glPathGlyphIndexRangeNV = ffienumPtrVbitfielduintfloatuintIOenum glPathGlyphIndexRangeNVFunPtr

glPathGlyphIndexRangeNVFunPtr :: FunPtr (GLenum -> Ptr () -> GLbitfield -> GLuint -> GLfloat -> GLuint -> IO GLenum)
glPathGlyphIndexRangeNVFunPtr = unsafePerformIO (getProcAddress "glPathGlyphIndexRangeNV")

{-# NOINLINE glPathGlyphIndexRangeNVFunPtr #-}

glPathGlyphRangeNV :: MonadIO m => GLuint -> GLenum -> Ptr () -> GLbitfield -> GLuint -> GLsizei -> GLenum -> GLuint -> GLfloat -> m ()
glPathGlyphRangeNV = ffiuintenumPtrVbitfielduintsizeienumuintfloatIOV glPathGlyphRangeNVFunPtr

glPathGlyphRangeNVFunPtr :: FunPtr (GLuint -> GLenum -> Ptr () -> GLbitfield -> GLuint -> GLsizei -> GLenum -> GLuint -> GLfloat -> IO ())
glPathGlyphRangeNVFunPtr = unsafePerformIO (getProcAddress "glPathGlyphRangeNV")

{-# NOINLINE glPathGlyphRangeNVFunPtr #-}

glPathGlyphsNV :: MonadIO m => GLuint -> GLenum -> Ptr () -> GLbitfield -> GLsizei -> GLenum -> Ptr () -> GLenum -> GLuint -> GLfloat -> m ()
glPathGlyphsNV = ffiuintenumPtrVbitfieldsizeienumPtrVenumuintfloatIOV glPathGlyphsNVFunPtr

glPathGlyphsNVFunPtr :: FunPtr (GLuint -> GLenum -> Ptr () -> GLbitfield -> GLsizei -> GLenum -> Ptr () -> GLenum -> GLuint -> GLfloat -> IO ())
glPathGlyphsNVFunPtr = unsafePerformIO (getProcAddress "glPathGlyphsNV")

{-# NOINLINE glPathGlyphsNVFunPtr #-}

glPathMemoryGlyphIndexArrayNV :: MonadIO m => GLuint -> GLenum -> GLsizeiptr -> Ptr () -> GLsizei -> GLuint -> GLsizei -> GLuint -> GLfloat -> m GLenum
glPathMemoryGlyphIndexArrayNV = ffiuintenumsizeiptrPtrVsizeiuintsizeiuintfloatIOenum glPathMemoryGlyphIndexArrayNVFunPtr

glPathMemoryGlyphIndexArrayNVFunPtr :: FunPtr (GLuint -> GLenum -> GLsizeiptr -> Ptr () -> GLsizei -> GLuint -> GLsizei -> GLuint -> GLfloat -> IO GLenum)
glPathMemoryGlyphIndexArrayNVFunPtr = unsafePerformIO (getProcAddress "glPathMemoryGlyphIndexArrayNV")

{-# NOINLINE glPathMemoryGlyphIndexArrayNVFunPtr #-}

glPathParameterfNV :: MonadIO m => GLuint -> GLenum -> GLfloat -> m ()
glPathParameterfNV = ffiuintenumfloatIOV glPathParameterfNVFunPtr

glPathParameterfNVFunPtr :: FunPtr (GLuint -> GLenum -> GLfloat -> IO ())
glPathParameterfNVFunPtr = unsafePerformIO (getProcAddress "glPathParameterfNV")

{-# NOINLINE glPathParameterfNVFunPtr #-}

glPathParameterfvNV :: MonadIO m => GLuint -> GLenum -> Ptr GLfloat -> m ()
glPathParameterfvNV = ffiuintenumPtrfloatIOV glPathParameterfvNVFunPtr

glPathParameterfvNVFunPtr :: FunPtr (GLuint -> GLenum -> Ptr GLfloat -> IO ())
glPathParameterfvNVFunPtr = unsafePerformIO (getProcAddress "glPathParameterfvNV")

{-# NOINLINE glPathParameterfvNVFunPtr #-}

glPathParameteriNV :: MonadIO m => GLuint -> GLenum -> GLint -> m ()
glPathParameteriNV = ffiuintenumintIOV glPathParameteriNVFunPtr

glPathParameteriNVFunPtr :: FunPtr (GLuint -> GLenum -> GLint -> IO ())
glPathParameteriNVFunPtr = unsafePerformIO (getProcAddress "glPathParameteriNV")

{-# NOINLINE glPathParameteriNVFunPtr #-}

glPathParameterivNV :: MonadIO m => GLuint -> GLenum -> Ptr GLint -> m ()
glPathParameterivNV = ffiuintenumPtrintIOV glPathParameterivNVFunPtr

glPathParameterivNVFunPtr :: FunPtr (GLuint -> GLenum -> Ptr GLint -> IO ())
glPathParameterivNVFunPtr = unsafePerformIO (getProcAddress "glPathParameterivNV")

{-# NOINLINE glPathParameterivNVFunPtr #-}

glPathStencilDepthOffsetNV :: MonadIO m => GLfloat -> GLfloat -> m ()
glPathStencilDepthOffsetNV = ffifloatfloatIOV glPathStencilDepthOffsetNVFunPtr

glPathStencilDepthOffsetNVFunPtr :: FunPtr (GLfloat -> GLfloat -> IO ())
glPathStencilDepthOffsetNVFunPtr = unsafePerformIO (getProcAddress "glPathStencilDepthOffsetNV")

{-# NOINLINE glPathStencilDepthOffsetNVFunPtr #-}

glPathStencilFuncNV :: MonadIO m => GLenum -> GLint -> GLuint -> m ()
glPathStencilFuncNV = ffienumintuintIOV glPathStencilFuncNVFunPtr

glPathStencilFuncNVFunPtr :: FunPtr (GLenum -> GLint -> GLuint -> IO ())
glPathStencilFuncNVFunPtr = unsafePerformIO (getProcAddress "glPathStencilFuncNV")

{-# NOINLINE glPathStencilFuncNVFunPtr #-}

glPathStringNV :: MonadIO m => GLuint -> GLenum -> GLsizei -> Ptr () -> m ()
glPathStringNV = ffiuintenumsizeiPtrVIOV glPathStringNVFunPtr

glPathStringNVFunPtr :: FunPtr (GLuint -> GLenum -> GLsizei -> Ptr () -> IO ())
glPathStringNVFunPtr = unsafePerformIO (getProcAddress "glPathStringNV")

{-# NOINLINE glPathStringNVFunPtr #-}

glPathSubCommandsNV :: MonadIO m => GLuint -> GLsizei -> GLsizei -> GLsizei -> Ptr GLubyte -> GLsizei -> GLenum -> Ptr () -> m ()
glPathSubCommandsNV = ffiuintsizeisizeisizeiPtrubytesizeienumPtrVIOV glPathSubCommandsNVFunPtr

glPathSubCommandsNVFunPtr :: FunPtr (GLuint -> GLsizei -> GLsizei -> GLsizei -> Ptr GLubyte -> GLsizei -> GLenum -> Ptr () -> IO ())
glPathSubCommandsNVFunPtr = unsafePerformIO (getProcAddress "glPathSubCommandsNV")

{-# NOINLINE glPathSubCommandsNVFunPtr #-}

glPathSubCoordsNV :: MonadIO m => GLuint -> GLsizei -> GLsizei -> GLenum -> Ptr () -> m ()
glPathSubCoordsNV = ffiuintsizeisizeienumPtrVIOV glPathSubCoordsNVFunPtr

glPathSubCoordsNVFunPtr :: FunPtr (GLuint -> GLsizei -> GLsizei -> GLenum -> Ptr () -> IO ())
glPathSubCoordsNVFunPtr = unsafePerformIO (getProcAddress "glPathSubCoordsNV")

{-# NOINLINE glPathSubCoordsNVFunPtr #-}

glPathTexGenNV :: MonadIO m => GLenum -> GLenum -> GLint -> Ptr GLfloat -> m ()
glPathTexGenNV = ffienumenumintPtrfloatIOV glPathTexGenNVFunPtr

glPathTexGenNVFunPtr :: FunPtr (GLenum -> GLenum -> GLint -> Ptr GLfloat -> IO ())
glPathTexGenNVFunPtr = unsafePerformIO (getProcAddress "glPathTexGenNV")

{-# NOINLINE glPathTexGenNVFunPtr #-}

glPointAlongPathNV :: MonadIO m => GLuint -> GLsizei -> GLsizei -> GLfloat -> Ptr GLfloat -> Ptr GLfloat -> Ptr GLfloat -> Ptr GLfloat -> m GLboolean
glPointAlongPathNV = ffiuintsizeisizeifloatPtrfloatPtrfloatPtrfloatPtrfloatIOboolean glPointAlongPathNVFunPtr

glPointAlongPathNVFunPtr :: FunPtr (GLuint -> GLsizei -> GLsizei -> GLfloat -> Ptr GLfloat -> Ptr GLfloat -> Ptr GLfloat -> Ptr GLfloat -> IO GLboolean)
glPointAlongPathNVFunPtr = unsafePerformIO (getProcAddress "glPointAlongPathNV")

{-# NOINLINE glPointAlongPathNVFunPtr #-}

glProgramPathFragmentInputGenNV :: MonadIO m => GLuint -> GLint -> GLenum -> GLint -> Ptr GLfloat -> m ()
glProgramPathFragmentInputGenNV = ffiuintintenumintPtrfloatIOV glProgramPathFragmentInputGenNVFunPtr

glProgramPathFragmentInputGenNVFunPtr :: FunPtr (GLuint -> GLint -> GLenum -> GLint -> Ptr GLfloat -> IO ())
glProgramPathFragmentInputGenNVFunPtr = unsafePerformIO (getProcAddress "glProgramPathFragmentInputGenNV")

{-# NOINLINE glProgramPathFragmentInputGenNVFunPtr #-}

glStencilFillPathInstancedNV :: MonadIO m => GLsizei -> GLenum -> Ptr () -> GLuint -> GLenum -> GLuint -> GLenum -> Ptr GLfloat -> m ()
glStencilFillPathInstancedNV = ffisizeienumPtrVuintenumuintenumPtrfloatIOV glStencilFillPathInstancedNVFunPtr

glStencilFillPathInstancedNVFunPtr :: FunPtr (GLsizei -> GLenum -> Ptr () -> GLuint -> GLenum -> GLuint -> GLenum -> Ptr GLfloat -> IO ())
glStencilFillPathInstancedNVFunPtr = unsafePerformIO (getProcAddress "glStencilFillPathInstancedNV")

{-# NOINLINE glStencilFillPathInstancedNVFunPtr #-}

glStencilFillPathNV :: MonadIO m => GLuint -> GLenum -> GLuint -> m ()
glStencilFillPathNV = ffiuintenumuintIOV glStencilFillPathNVFunPtr

glStencilFillPathNVFunPtr :: FunPtr (GLuint -> GLenum -> GLuint -> IO ())
glStencilFillPathNVFunPtr = unsafePerformIO (getProcAddress "glStencilFillPathNV")

{-# NOINLINE glStencilFillPathNVFunPtr #-}

glStencilStrokePathInstancedNV :: MonadIO m => GLsizei -> GLenum -> Ptr () -> GLuint -> GLint -> GLuint -> GLenum -> Ptr GLfloat -> m ()
glStencilStrokePathInstancedNV = ffisizeienumPtrVuintintuintenumPtrfloatIOV glStencilStrokePathInstancedNVFunPtr

glStencilStrokePathInstancedNVFunPtr :: FunPtr (GLsizei -> GLenum -> Ptr () -> GLuint -> GLint -> GLuint -> GLenum -> Ptr GLfloat -> IO ())
glStencilStrokePathInstancedNVFunPtr = unsafePerformIO (getProcAddress "glStencilStrokePathInstancedNV")

{-# NOINLINE glStencilStrokePathInstancedNVFunPtr #-}

glStencilStrokePathNV :: MonadIO m => GLuint -> GLint -> GLuint -> m ()
glStencilStrokePathNV = ffiuintintuintIOV glStencilStrokePathNVFunPtr

glStencilStrokePathNVFunPtr :: FunPtr (GLuint -> GLint -> GLuint -> IO ())
glStencilStrokePathNVFunPtr = unsafePerformIO (getProcAddress "glStencilStrokePathNV")

{-# NOINLINE glStencilStrokePathNVFunPtr #-}

glStencilThenCoverFillPathInstancedNV :: MonadIO m => GLsizei -> GLenum -> Ptr () -> GLuint -> GLenum -> GLuint -> GLenum -> GLenum -> Ptr GLfloat -> m ()
glStencilThenCoverFillPathInstancedNV = ffisizeienumPtrVuintenumuintenumenumPtrfloatIOV glStencilThenCoverFillPathInstancedNVFunPtr

glStencilThenCoverFillPathInstancedNVFunPtr :: FunPtr (GLsizei -> GLenum -> Ptr () -> GLuint -> GLenum -> GLuint -> GLenum -> GLenum -> Ptr GLfloat -> IO ())
glStencilThenCoverFillPathInstancedNVFunPtr = unsafePerformIO (getProcAddress "glStencilThenCoverFillPathInstancedNV")

{-# NOINLINE glStencilThenCoverFillPathInstancedNVFunPtr #-}

glStencilThenCoverFillPathNV :: MonadIO m => GLuint -> GLenum -> GLuint -> GLenum -> m ()
glStencilThenCoverFillPathNV = ffiuintenumuintenumIOV glStencilThenCoverFillPathNVFunPtr

glStencilThenCoverFillPathNVFunPtr :: FunPtr (GLuint -> GLenum -> GLuint -> GLenum -> IO ())
glStencilThenCoverFillPathNVFunPtr = unsafePerformIO (getProcAddress "glStencilThenCoverFillPathNV")

{-# NOINLINE glStencilThenCoverFillPathNVFunPtr #-}

glStencilThenCoverStrokePathInstancedNV :: MonadIO m => GLsizei -> GLenum -> Ptr () -> GLuint -> GLint -> GLuint -> GLenum -> GLenum -> Ptr GLfloat -> m ()
glStencilThenCoverStrokePathInstancedNV = ffisizeienumPtrVuintintuintenumenumPtrfloatIOV glStencilThenCoverStrokePathInstancedNVFunPtr

glStencilThenCoverStrokePathInstancedNVFunPtr :: FunPtr (GLsizei -> GLenum -> Ptr () -> GLuint -> GLint -> GLuint -> GLenum -> GLenum -> Ptr GLfloat -> IO ())
glStencilThenCoverStrokePathInstancedNVFunPtr = unsafePerformIO (getProcAddress "glStencilThenCoverStrokePathInstancedNV")

{-# NOINLINE glStencilThenCoverStrokePathInstancedNVFunPtr #-}

glStencilThenCoverStrokePathNV :: MonadIO m => GLuint -> GLint -> GLuint -> GLenum -> m ()
glStencilThenCoverStrokePathNV = ffiuintintuintenumIOV glStencilThenCoverStrokePathNVFunPtr

glStencilThenCoverStrokePathNVFunPtr :: FunPtr (GLuint -> GLint -> GLuint -> GLenum -> IO ())
glStencilThenCoverStrokePathNVFunPtr = unsafePerformIO (getProcAddress "glStencilThenCoverStrokePathNV")

{-# NOINLINE glStencilThenCoverStrokePathNVFunPtr #-}

glTransformPathNV :: MonadIO m => GLuint -> GLuint -> GLenum -> Ptr GLfloat -> m ()
glTransformPathNV = ffiuintuintenumPtrfloatIOV glTransformPathNVFunPtr

glTransformPathNVFunPtr :: FunPtr (GLuint -> GLuint -> GLenum -> Ptr GLfloat -> IO ())
glTransformPathNVFunPtr = unsafePerformIO (getProcAddress "glTransformPathNV")

{-# NOINLINE glTransformPathNVFunPtr #-}

glWeightPathsNV :: MonadIO m => GLuint -> GLsizei -> Ptr GLuint -> Ptr GLfloat -> m ()
glWeightPathsNV = ffiuintsizeiPtruintPtrfloatIOV glWeightPathsNVFunPtr

glWeightPathsNVFunPtr :: FunPtr (GLuint -> GLsizei -> Ptr GLuint -> Ptr GLfloat -> IO ())
glWeightPathsNVFunPtr = unsafePerformIO (getProcAddress "glWeightPathsNV")

{-# NOINLINE glWeightPathsNVFunPtr #-}

pattern GL_2_BYTES_NV = 0x1407 :: GLenum

pattern GL_3_BYTES_NV = 0x1408 :: GLenum

pattern GL_4_BYTES_NV = 0x1409 :: GLenum

pattern GL_ACCUM_ADJACENT_PAIRS_NV = 0x90AD :: GLenum

pattern GL_ADJACENT_PAIRS_NV = 0x90AE :: GLenum

pattern GL_AFFINE_2D_NV = 0x9092 :: GLenum

pattern GL_AFFINE_3D_NV = 0x9094 :: GLenum

pattern GL_ARC_TO_NV = 0xFE :: GLenum

pattern GL_BEVEL_NV = 0x90A6 :: GLenum

pattern GL_BOLD_BIT_NV = 0x01 :: GLenum

pattern GL_BOUNDING_BOX_NV = 0x908D :: GLenum

pattern GL_BOUNDING_BOX_OF_BOUNDING_BOXES_NV = 0x909C :: GLenum

pattern GL_CIRCULAR_CCW_ARC_TO_NV = 0xF8 :: GLenum

pattern GL_CIRCULAR_CW_ARC_TO_NV = 0xFA :: GLenum

pattern GL_CIRCULAR_TANGENT_ARC_TO_NV = 0xFC :: GLenum

pattern GL_CLOSE_PATH_NV = 0x00 :: GLenum

pattern GL_CONIC_CURVE_TO_NV = 0x1A :: GLenum

pattern GL_CONSTANT_NV = 0x8576 :: GLenum

pattern GL_CONVEX_HULL_NV = 0x908B :: GLenum

pattern GL_COUNT_DOWN_NV = 0x9089 :: GLenum

pattern GL_COUNT_UP_NV = 0x9088 :: GLenum

pattern GL_CUBIC_CURVE_TO_NV = 0x0C :: GLenum

pattern GL_DUP_FIRST_CUBIC_CURVE_TO_NV = 0xF2 :: GLenum

pattern GL_DUP_LAST_CUBIC_CURVE_TO_NV = 0xF4 :: GLenum

pattern GL_EYE_LINEAR_NV = 0x2400 :: GLenum

pattern GL_FILE_NAME_NV = 0x9074 :: GLenum

pattern GL_FIRST_TO_REST_NV = 0x90AF :: GLenum

pattern GL_FONT_ASCENDER_BIT_NV = 0x00200000 :: GLenum

pattern GL_FONT_DESCENDER_BIT_NV = 0x00400000 :: GLenum

pattern GL_FONT_GLYPHS_AVAILABLE_NV = 0x9368 :: GLenum

pattern GL_FONT_HAS_KERNING_BIT_NV = 0x10000000 :: GLenum

pattern GL_FONT_HEIGHT_BIT_NV = 0x00800000 :: GLenum

pattern GL_FONT_MAX_ADVANCE_HEIGHT_BIT_NV = 0x02000000 :: GLenum

pattern GL_FONT_MAX_ADVANCE_WIDTH_BIT_NV = 0x01000000 :: GLenum

pattern GL_FONT_NUM_GLYPH_INDICES_BIT_NV = 0x20000000 :: GLenum

pattern GL_FONT_TARGET_UNAVAILABLE_NV = 0x9369 :: GLenum

pattern GL_FONT_UNAVAILABLE_NV = 0x936A :: GLenum

pattern GL_FONT_UNDERLINE_POSITION_BIT_NV = 0x04000000 :: GLenum

pattern GL_FONT_UNDERLINE_THICKNESS_BIT_NV = 0x08000000 :: GLenum

pattern GL_FONT_UNINTELLIGIBLE_NV = 0x936B :: GLenum

pattern GL_FONT_UNITS_PER_EM_BIT_NV = 0x00100000 :: GLenum

pattern GL_FONT_X_MAX_BOUNDS_BIT_NV = 0x00040000 :: GLenum

pattern GL_FONT_X_MIN_BOUNDS_BIT_NV = 0x00010000 :: GLenum

pattern GL_FONT_Y_MAX_BOUNDS_BIT_NV = 0x00080000 :: GLenum

pattern GL_FONT_Y_MIN_BOUNDS_BIT_NV = 0x00020000 :: GLenum

pattern GL_FRAGMENT_INPUT_NV = 0x936D :: GLenum

pattern GL_GLYPH_HAS_KERNING_BIT_NV = 0x100 :: GLenum

pattern GL_GLYPH_HEIGHT_BIT_NV = 0x02 :: GLenum

pattern GL_GLYPH_HORIZONTAL_BEARING_ADVANCE_BIT_NV = 0x10 :: GLenum

pattern GL_GLYPH_HORIZONTAL_BEARING_X_BIT_NV = 0x04 :: GLenum

pattern GL_GLYPH_HORIZONTAL_BEARING_Y_BIT_NV = 0x08 :: GLenum

pattern GL_GLYPH_VERTICAL_BEARING_ADVANCE_BIT_NV = 0x80 :: GLenum

pattern GL_GLYPH_VERTICAL_BEARING_X_BIT_NV = 0x20 :: GLenum

pattern GL_GLYPH_VERTICAL_BEARING_Y_BIT_NV = 0x40 :: GLenum

pattern GL_GLYPH_WIDTH_BIT_NV = 0x01 :: GLenum

pattern GL_HORIZONTAL_LINE_TO_NV = 0x06 :: GLenum

pattern GL_ITALIC_BIT_NV = 0x02 :: GLenum

pattern GL_LARGE_CCW_ARC_TO_NV = 0x16 :: GLenum

pattern GL_LARGE_CW_ARC_TO_NV = 0x18 :: GLenum

pattern GL_LINE_TO_NV = 0x04 :: GLenum

pattern GL_MITER_REVERT_NV = 0x90A7 :: GLenum

pattern GL_MITER_TRUNCATE_NV = 0x90A8 :: GLenum

pattern GL_MOVE_TO_CONTINUES_NV = 0x90B6 :: GLenum

pattern GL_MOVE_TO_NV = 0x02 :: GLenum

pattern GL_MOVE_TO_RESETS_NV = 0x90B5 :: GLenum

pattern GL_OBJECT_LINEAR_NV = 0x2401 :: GLenum

pattern GL_PATH_CLIENT_LENGTH_NV = 0x907F :: GLenum

pattern GL_PATH_COMMAND_COUNT_NV = 0x909D :: GLenum

pattern GL_PATH_COMPUTED_LENGTH_NV = 0x90A0 :: GLenum

pattern GL_PATH_COORD_COUNT_NV = 0x909E :: GLenum

pattern GL_PATH_COVER_DEPTH_FUNC_NV = 0x90BF :: GLenum

pattern GL_PATH_DASH_ARRAY_COUNT_NV = 0x909F :: GLenum

pattern GL_PATH_DASH_CAPS_NV = 0x907B :: GLenum

pattern GL_PATH_DASH_OFFSET_NV = 0x907E :: GLenum

pattern GL_PATH_DASH_OFFSET_RESET_NV = 0x90B4 :: GLenum

pattern GL_PATH_END_CAPS_NV = 0x9076 :: GLenum

pattern GL_PATH_ERROR_POSITION_NV = 0x90AB :: GLenum

pattern GL_PATH_FILL_BOUNDING_BOX_NV = 0x90A1 :: GLenum

pattern GL_PATH_FILL_COVER_MODE_NV = 0x9082 :: GLenum

pattern GL_PATH_FILL_MASK_NV = 0x9081 :: GLenum

pattern GL_PATH_FILL_MODE_NV = 0x9080 :: GLenum

pattern GL_PATH_FOG_GEN_MODE_NV = 0x90AC :: GLenum

pattern GL_PATH_FORMAT_PS_NV = 0x9071 :: GLenum

pattern GL_PATH_FORMAT_SVG_NV = 0x9070 :: GLenum

pattern GL_PATH_GEN_COEFF_NV = 0x90B1 :: GLenum

pattern GL_PATH_GEN_COLOR_FORMAT_NV = 0x90B2 :: GLenum

pattern GL_PATH_GEN_COMPONENTS_NV = 0x90B3 :: GLenum

pattern GL_PATH_GEN_MODE_NV = 0x90B0 :: GLenum

pattern GL_PATH_INITIAL_DASH_CAP_NV = 0x907C :: GLenum

pattern GL_PATH_INITIAL_END_CAP_NV = 0x9077 :: GLenum

pattern GL_PATH_JOIN_STYLE_NV = 0x9079 :: GLenum

pattern GL_PATH_MAX_MODELVIEW_STACK_DEPTH_NV = 0x0D36 :: GLenum

pattern GL_PATH_MAX_PROJECTION_STACK_DEPTH_NV = 0x0D38 :: GLenum

pattern GL_PATH_MITER_LIMIT_NV = 0x907A :: GLenum

pattern GL_PATH_MODELVIEW_MATRIX_NV = 0x0BA6 :: GLenum

pattern GL_PATH_MODELVIEW_NV = 0x1700 :: GLenum

pattern GL_PATH_MODELVIEW_STACK_DEPTH_NV = 0x0BA3 :: GLenum

pattern GL_PATH_OBJECT_BOUNDING_BOX_NV = 0x908A :: GLenum

pattern GL_PATH_PROJECTION_MATRIX_NV = 0x0BA7 :: GLenum

pattern GL_PATH_PROJECTION_NV = 0x1701 :: GLenum

pattern GL_PATH_PROJECTION_STACK_DEPTH_NV = 0x0BA4 :: GLenum

pattern GL_PATH_STENCIL_DEPTH_OFFSET_FACTOR_NV = 0x90BD :: GLenum

pattern GL_PATH_STENCIL_DEPTH_OFFSET_UNITS_NV = 0x90BE :: GLenum

pattern GL_PATH_STENCIL_FUNC_NV = 0x90B7 :: GLenum

pattern GL_PATH_STENCIL_REF_NV = 0x90B8 :: GLenum

pattern GL_PATH_STENCIL_VALUE_MASK_NV = 0x90B9 :: GLenum

pattern GL_PATH_STROKE_BOUNDING_BOX_NV = 0x90A2 :: GLenum

pattern GL_PATH_STROKE_COVER_MODE_NV = 0x9083 :: GLenum

pattern GL_PATH_STROKE_MASK_NV = 0x9084 :: GLenum

pattern GL_PATH_STROKE_WIDTH_NV = 0x9075 :: GLenum

pattern GL_PATH_TERMINAL_DASH_CAP_NV = 0x907D :: GLenum

pattern GL_PATH_TERMINAL_END_CAP_NV = 0x9078 :: GLenum

pattern GL_PATH_TRANSPOSE_MODELVIEW_MATRIX_NV = 0x84E3 :: GLenum

pattern GL_PATH_TRANSPOSE_PROJECTION_MATRIX_NV = 0x84E4 :: GLenum

pattern GL_QUADRATIC_CURVE_TO_NV = 0x0A :: GLenum

pattern GL_RECT_NV = 0xF6 :: GLenum

pattern GL_RELATIVE_ARC_TO_NV = 0xFF :: GLenum

pattern GL_RELATIVE_CONIC_CURVE_TO_NV = 0x1B :: GLenum

pattern GL_RELATIVE_CUBIC_CURVE_TO_NV = 0x0D :: GLenum

pattern GL_RELATIVE_HORIZONTAL_LINE_TO_NV = 0x07 :: GLenum

pattern GL_RELATIVE_LARGE_CCW_ARC_TO_NV = 0x17 :: GLenum

pattern GL_RELATIVE_LARGE_CW_ARC_TO_NV = 0x19 :: GLenum

pattern GL_RELATIVE_LINE_TO_NV = 0x05 :: GLenum

pattern GL_RELATIVE_MOVE_TO_NV = 0x03 :: GLenum

pattern GL_RELATIVE_QUADRATIC_CURVE_TO_NV = 0x0B :: GLenum

pattern GL_RELATIVE_RECT_NV = 0xF7 :: GLenum

pattern GL_RELATIVE_ROUNDED_RECT2_NV = 0xEB :: GLenum

pattern GL_RELATIVE_ROUNDED_RECT4_NV = 0xED :: GLenum

pattern GL_RELATIVE_ROUNDED_RECT8_NV = 0xEF :: GLenum

pattern GL_RELATIVE_ROUNDED_RECT_NV = 0xE9 :: GLenum

pattern GL_RELATIVE_SMALL_CCW_ARC_TO_NV = 0x13 :: GLenum

pattern GL_RELATIVE_SMALL_CW_ARC_TO_NV = 0x15 :: GLenum

pattern GL_RELATIVE_SMOOTH_CUBIC_CURVE_TO_NV = 0x11 :: GLenum

pattern GL_RELATIVE_SMOOTH_QUADRATIC_CURVE_TO_NV = 0x0F :: GLenum

pattern GL_RELATIVE_VERTICAL_LINE_TO_NV = 0x09 :: GLenum

pattern GL_RESTART_PATH_NV = 0xF0 :: GLenum

pattern GL_ROUNDED_RECT2_NV = 0xEA :: GLenum

pattern GL_ROUNDED_RECT4_NV = 0xEC :: GLenum

pattern GL_ROUNDED_RECT8_NV = 0xEE :: GLenum

pattern GL_ROUNDED_RECT_NV = 0xE8 :: GLenum

pattern GL_ROUND_NV = 0x90A4 :: GLenum

pattern GL_SKIP_MISSING_GLYPH_NV = 0x90A9 :: GLenum

pattern GL_SMALL_CCW_ARC_TO_NV = 0x12 :: GLenum

pattern GL_SMALL_CW_ARC_TO_NV = 0x14 :: GLenum

pattern GL_SMOOTH_CUBIC_CURVE_TO_NV = 0x10 :: GLenum

pattern GL_SMOOTH_QUADRATIC_CURVE_TO_NV = 0x0E :: GLenum

pattern GL_SQUARE_NV = 0x90A3 :: GLenum

pattern GL_STANDARD_FONT_FORMAT_NV = 0x936C :: GLenum

pattern GL_STANDARD_FONT_NAME_NV = 0x9072 :: GLenum

pattern GL_SYSTEM_FONT_NAME_NV = 0x9073 :: GLenum

pattern GL_TRANSLATE_2D_NV = 0x9090 :: GLenum

pattern GL_TRANSLATE_3D_NV = 0x9091 :: GLenum

pattern GL_TRANSLATE_X_NV = 0x908E :: GLenum

pattern GL_TRANSLATE_Y_NV = 0x908F :: GLenum

pattern GL_TRANSPOSE_AFFINE_2D_NV = 0x9096 :: GLenum

pattern GL_TRANSPOSE_AFFINE_3D_NV = 0x9098 :: GLenum

pattern GL_TRIANGULAR_NV = 0x90A5 :: GLenum

pattern GL_USE_MISSING_GLYPH_NV = 0x90AA :: GLenum

pattern GL_UTF16_NV = 0x909B :: GLenum

pattern GL_UTF8_NV = 0x909A :: GLenum

pattern GL_VERTICAL_LINE_TO_NV = 0x08 :: GLenum