{-# LANGUAGE CPP #-}
--------------------------------------------------------------------------------
-- |
-- Module      :  Graphics.Rendering.OpenGL.Raw.Functions
-- Copyright   :  (c) Sven Panne 2015
-- License     :  BSD3
--
-- Maintainer  :  Sven Panne <svenpanne@gmail.com>
-- Stability   :  stable
-- Portability :  portable
--
-- All raw functions from the
-- <http://www.opengl.org/registry/ OpenGL registry>.
--
--------------------------------------------------------------------------------

module Graphics.Rendering.OpenGL.Raw.Functions (
  glAccum,
  glAccumxOES,
  glActiveProgramEXT,
  glActiveShaderProgram,
  glActiveShaderProgramEXT,
  glActiveStencilFaceEXT,
  glActiveTexture,
  glActiveTextureARB,
  glActiveVaryingNV,
  glAlphaFragmentOp1ATI,
  glAlphaFragmentOp2ATI,
  glAlphaFragmentOp3ATI,
  glAlphaFunc,
  glAlphaFuncQCOM,
  glAlphaFuncx,
  glAlphaFuncxOES,
  glApplyTextureEXT,
  glAreProgramsResidentNV,
  glAreTexturesResident,
  glAreTexturesResidentEXT,
  glArrayElement,
  glArrayElementEXT,
  glArrayObjectATI,
  glAsyncMarkerSGIX,
  glAttachObjectARB,
  glAttachShader,
  glBegin,
  glBeginConditionalRender,
  glBeginConditionalRenderNV,
  glBeginConditionalRenderNVX,
  glBeginFragmentShaderATI,
  glBeginOcclusionQueryNV,
  glBeginPerfMonitorAMD,
  glBeginPerfQueryINTEL,
  glBeginQuery,
  glBeginQueryARB,
  glBeginQueryEXT,
  glBeginQueryIndexed,
  glBeginTransformFeedback,
  glBeginTransformFeedbackEXT,
  glBeginTransformFeedbackNV,
  glBeginVertexShaderEXT,
  glBeginVideoCaptureNV,
  glBindAttribLocation,
  glBindAttribLocationARB,
  glBindBuffer,
  glBindBufferARB,
  glBindBufferBase,
  glBindBufferBaseEXT,
  glBindBufferBaseNV,
  glBindBufferOffsetEXT,
  glBindBufferOffsetNV,
  glBindBufferRange,
  glBindBufferRangeEXT,
  glBindBufferRangeNV,
  glBindBuffersBase,
  glBindBuffersRange,
  glBindFragDataLocation,
  glBindFragDataLocationEXT,
  glBindFragDataLocationIndexed,
  glBindFragmentShaderATI,
  glBindFramebuffer,
  glBindFramebufferEXT,
  glBindFramebufferOES,
  glBindImageTexture,
  glBindImageTextureEXT,
  glBindImageTextures,
  glBindLightParameterEXT,
  glBindMaterialParameterEXT,
  glBindMultiTextureEXT,
  glBindParameterEXT,
  glBindProgramARB,
  glBindProgramNV,
  glBindProgramPipeline,
  glBindProgramPipelineEXT,
  glBindRenderbuffer,
  glBindRenderbufferEXT,
  glBindRenderbufferOES,
  glBindSampler,
  glBindSamplers,
  glBindTexGenParameterEXT,
  glBindTexture,
  glBindTextureEXT,
  glBindTextureUnit,
  glBindTextureUnitParameterEXT,
  glBindTextures,
  glBindTransformFeedback,
  glBindTransformFeedbackNV,
  glBindVertexArray,
  glBindVertexArrayAPPLE,
  glBindVertexArrayOES,
  glBindVertexBuffer,
  glBindVertexBuffers,
  glBindVertexShaderEXT,
  glBindVideoCaptureStreamBufferNV,
  glBindVideoCaptureStreamTextureNV,
  glBinormal3bEXT,
  glBinormal3bvEXT,
  glBinormal3dEXT,
  glBinormal3dvEXT,
  glBinormal3fEXT,
  glBinormal3fvEXT,
  glBinormal3iEXT,
  glBinormal3ivEXT,
  glBinormal3sEXT,
  glBinormal3svEXT,
  glBinormalPointerEXT,
  glBitmap,
  glBitmapxOES,
  glBlendBarrierKHR,
  glBlendBarrierNV,
  glBlendColor,
  glBlendColorEXT,
  glBlendColorxOES,
  glBlendEquation,
  glBlendEquationEXT,
  glBlendEquationIndexedAMD,
  glBlendEquationOES,
  glBlendEquationSeparate,
  glBlendEquationSeparateEXT,
  glBlendEquationSeparateIndexedAMD,
  glBlendEquationSeparateOES,
  glBlendEquationSeparatei,
  glBlendEquationSeparateiARB,
  glBlendEquationSeparateiEXT,
  glBlendEquationSeparateiOES,
  glBlendEquationi,
  glBlendEquationiARB,
  glBlendEquationiEXT,
  glBlendEquationiOES,
  glBlendFunc,
  glBlendFuncIndexedAMD,
  glBlendFuncSeparate,
  glBlendFuncSeparateEXT,
  glBlendFuncSeparateINGR,
  glBlendFuncSeparateIndexedAMD,
  glBlendFuncSeparateOES,
  glBlendFuncSeparatei,
  glBlendFuncSeparateiARB,
  glBlendFuncSeparateiEXT,
  glBlendFuncSeparateiOES,
  glBlendFunci,
  glBlendFunciARB,
  glBlendFunciEXT,
  glBlendFunciOES,
  glBlendParameteriNV,
  glBlitFramebuffer,
  glBlitFramebufferANGLE,
  glBlitFramebufferEXT,
  glBlitFramebufferNV,
  glBlitNamedFramebuffer,
  glBufferAddressRangeNV,
  glBufferData,
  glBufferDataARB,
  glBufferPageCommitmentARB,
  glBufferParameteriAPPLE,
  glBufferStorage,
  glBufferSubData,
  glBufferSubDataARB,
  glCallList,
  glCallLists,
  glCheckFramebufferStatus,
  glCheckFramebufferStatusEXT,
  glCheckFramebufferStatusOES,
  glCheckNamedFramebufferStatus,
  glCheckNamedFramebufferStatusEXT,
  glClampColor,
  glClampColorARB,
  glClear,
  glClearAccum,
  glClearAccumxOES,
  glClearBufferData,
  glClearBufferSubData,
  glClearBufferfi,
  glClearBufferfv,
  glClearBufferiv,
  glClearBufferuiv,
  glClearColor,
  glClearColorIiEXT,
  glClearColorIuiEXT,
  glClearColorx,
  glClearColorxOES,
  glClearDepth,
  glClearDepthdNV,
  glClearDepthf,
  glClearDepthfOES,
  glClearDepthx,
  glClearDepthxOES,
  glClearIndex,
  glClearNamedBufferData,
  glClearNamedBufferDataEXT,
  glClearNamedBufferSubData,
  glClearNamedBufferSubDataEXT,
  glClearNamedFramebufferfi,
  glClearNamedFramebufferfv,
  glClearNamedFramebufferiv,
  glClearNamedFramebufferuiv,
  glClearStencil,
  glClearTexImage,
  glClearTexSubImage,
  glClientActiveTexture,
  glClientActiveTextureARB,
  glClientActiveVertexStreamATI,
  glClientAttribDefaultEXT,
  glClientWaitSync,
  glClientWaitSyncAPPLE,
  glClipControl,
  glClipPlane,
  glClipPlanef,
  glClipPlanefIMG,
  glClipPlanefOES,
  glClipPlanex,
  glClipPlanexIMG,
  glClipPlanexOES,
  glColor3b,
  glColor3bv,
  glColor3d,
  glColor3dv,
  glColor3f,
  glColor3fVertex3fSUN,
  glColor3fVertex3fvSUN,
  glColor3fv,
  glColor3hNV,
  glColor3hvNV,
  glColor3i,
  glColor3iv,
  glColor3s,
  glColor3sv,
  glColor3ub,
  glColor3ubv,
  glColor3ui,
  glColor3uiv,
  glColor3us,
  glColor3usv,
  glColor3xOES,
  glColor3xvOES,
  glColor4b,
  glColor4bv,
  glColor4d,
  glColor4dv,
  glColor4f,
  glColor4fNormal3fVertex3fSUN,
  glColor4fNormal3fVertex3fvSUN,
  glColor4fv,
  glColor4hNV,
  glColor4hvNV,
  glColor4i,
  glColor4iv,
  glColor4s,
  glColor4sv,
  glColor4ub,
  glColor4ubVertex2fSUN,
  glColor4ubVertex2fvSUN,
  glColor4ubVertex3fSUN,
  glColor4ubVertex3fvSUN,
  glColor4ubv,
  glColor4ui,
  glColor4uiv,
  glColor4us,
  glColor4usv,
  glColor4x,
  glColor4xOES,
  glColor4xvOES,
  glColorFormatNV,
  glColorFragmentOp1ATI,
  glColorFragmentOp2ATI,
  glColorFragmentOp3ATI,
  glColorMask,
  glColorMaskIndexedEXT,
  glColorMaski,
  glColorMaskiEXT,
  glColorMaskiOES,
  glColorMaterial,
  glColorP3ui,
  glColorP3uiv,
  glColorP4ui,
  glColorP4uiv,
  glColorPointer,
  glColorPointerEXT,
  glColorPointerListIBM,
  glColorPointervINTEL,
  glColorSubTable,
  glColorSubTableEXT,
  glColorTable,
  glColorTableEXT,
  glColorTableParameterfv,
  glColorTableParameterfvSGI,
  glColorTableParameteriv,
  glColorTableParameterivSGI,
  glColorTableSGI,
  glCombinerInputNV,
  glCombinerOutputNV,
  glCombinerParameterfNV,
  glCombinerParameterfvNV,
  glCombinerParameteriNV,
  glCombinerParameterivNV,
  glCombinerStageParameterfvNV,
  glCompileShader,
  glCompileShaderARB,
  glCompileShaderIncludeARB,
  glCompressedMultiTexImage1DEXT,
  glCompressedMultiTexImage2DEXT,
  glCompressedMultiTexImage3DEXT,
  glCompressedMultiTexSubImage1DEXT,
  glCompressedMultiTexSubImage2DEXT,
  glCompressedMultiTexSubImage3DEXT,
  glCompressedTexImage1D,
  glCompressedTexImage1DARB,
  glCompressedTexImage2D,
  glCompressedTexImage2DARB,
  glCompressedTexImage3D,
  glCompressedTexImage3DARB,
  glCompressedTexImage3DOES,
  glCompressedTexSubImage1D,
  glCompressedTexSubImage1DARB,
  glCompressedTexSubImage2D,
  glCompressedTexSubImage2DARB,
  glCompressedTexSubImage3D,
  glCompressedTexSubImage3DARB,
  glCompressedTexSubImage3DOES,
  glCompressedTextureImage1DEXT,
  glCompressedTextureImage2DEXT,
  glCompressedTextureImage3DEXT,
  glCompressedTextureSubImage1D,
  glCompressedTextureSubImage1DEXT,
  glCompressedTextureSubImage2D,
  glCompressedTextureSubImage2DEXT,
  glCompressedTextureSubImage3D,
  glCompressedTextureSubImage3DEXT,
  glConvolutionFilter1D,
  glConvolutionFilter1DEXT,
  glConvolutionFilter2D,
  glConvolutionFilter2DEXT,
  glConvolutionParameterf,
  glConvolutionParameterfEXT,
  glConvolutionParameterfv,
  glConvolutionParameterfvEXT,
  glConvolutionParameteri,
  glConvolutionParameteriEXT,
  glConvolutionParameteriv,
  glConvolutionParameterivEXT,
  glConvolutionParameterxOES,
  glConvolutionParameterxvOES,
  glCopyBufferSubData,
  glCopyBufferSubDataNV,
  glCopyColorSubTable,
  glCopyColorSubTableEXT,
  glCopyColorTable,
  glCopyColorTableSGI,
  glCopyConvolutionFilter1D,
  glCopyConvolutionFilter1DEXT,
  glCopyConvolutionFilter2D,
  glCopyConvolutionFilter2DEXT,
  glCopyImageSubData,
  glCopyImageSubDataEXT,
  glCopyImageSubDataNV,
  glCopyImageSubDataOES,
  glCopyMultiTexImage1DEXT,
  glCopyMultiTexImage2DEXT,
  glCopyMultiTexSubImage1DEXT,
  glCopyMultiTexSubImage2DEXT,
  glCopyMultiTexSubImage3DEXT,
  glCopyNamedBufferSubData,
  glCopyPathNV,
  glCopyPixels,
  glCopyTexImage1D,
  glCopyTexImage1DEXT,
  glCopyTexImage2D,
  glCopyTexImage2DEXT,
  glCopyTexSubImage1D,
  glCopyTexSubImage1DEXT,
  glCopyTexSubImage2D,
  glCopyTexSubImage2DEXT,
  glCopyTexSubImage3D,
  glCopyTexSubImage3DEXT,
  glCopyTexSubImage3DOES,
  glCopyTextureImage1DEXT,
  glCopyTextureImage2DEXT,
  glCopyTextureLevelsAPPLE,
  glCopyTextureSubImage1D,
  glCopyTextureSubImage1DEXT,
  glCopyTextureSubImage2D,
  glCopyTextureSubImage2DEXT,
  glCopyTextureSubImage3D,
  glCopyTextureSubImage3DEXT,
  glCoverFillPathInstancedNV,
  glCoverFillPathNV,
  glCoverStrokePathInstancedNV,
  glCoverStrokePathNV,
  glCoverageMaskNV,
  glCoverageModulationNV,
  glCoverageModulationTableNV,
  glCoverageOperationNV,
  glCreateBuffers,
  glCreateFramebuffers,
  glCreatePerfQueryINTEL,
  glCreateProgram,
  glCreateProgramObjectARB,
  glCreateProgramPipelines,
  glCreateQueries,
  glCreateRenderbuffers,
  glCreateSamplers,
  glCreateShader,
  glCreateShaderObjectARB,
  glCreateShaderProgramEXT,
  glCreateShaderProgramv,
  glCreateShaderProgramvEXT,
  glCreateSyncFromCLeventARB,
  glCreateTextures,
  glCreateTransformFeedbacks,
  glCreateVertexArrays,
  glCullFace,
  glCullParameterdvEXT,
  glCullParameterfvEXT,
  glCurrentPaletteMatrixARB,
  glCurrentPaletteMatrixOES,
  glDebugMessageCallback,
  glDebugMessageCallbackAMD,
  glDebugMessageCallbackARB,
  glDebugMessageCallbackKHR,
  glDebugMessageControl,
  glDebugMessageControlARB,
  glDebugMessageControlKHR,
  glDebugMessageEnableAMD,
  glDebugMessageInsert,
  glDebugMessageInsertAMD,
  glDebugMessageInsertARB,
  glDebugMessageInsertKHR,
  glDeformSGIX,
  glDeformationMap3dSGIX,
  glDeformationMap3fSGIX,
  glDeleteAsyncMarkersSGIX,
  glDeleteBuffers,
  glDeleteBuffersARB,
  glDeleteFencesAPPLE,
  glDeleteFencesNV,
  glDeleteFragmentShaderATI,
  glDeleteFramebuffers,
  glDeleteFramebuffersEXT,
  glDeleteFramebuffersOES,
  glDeleteLists,
  glDeleteNamedStringARB,
  glDeleteNamesAMD,
  glDeleteObjectARB,
  glDeleteOcclusionQueriesNV,
  glDeletePathsNV,
  glDeletePerfMonitorsAMD,
  glDeletePerfQueryINTEL,
  glDeleteProgram,
  glDeleteProgramPipelines,
  glDeleteProgramPipelinesEXT,
  glDeleteProgramsARB,
  glDeleteProgramsNV,
  glDeleteQueries,
  glDeleteQueriesARB,
  glDeleteQueriesEXT,
  glDeleteRenderbuffers,
  glDeleteRenderbuffersEXT,
  glDeleteRenderbuffersOES,
  glDeleteSamplers,
  glDeleteShader,
  glDeleteSync,
  glDeleteSyncAPPLE,
  glDeleteTextures,
  glDeleteTexturesEXT,
  glDeleteTransformFeedbacks,
  glDeleteTransformFeedbacksNV,
  glDeleteVertexArrays,
  glDeleteVertexArraysAPPLE,
  glDeleteVertexArraysOES,
  glDeleteVertexShaderEXT,
  glDepthBoundsEXT,
  glDepthBoundsdNV,
  glDepthFunc,
  glDepthMask,
  glDepthRange,
  glDepthRangeArrayfvNV,
  glDepthRangeArrayv,
  glDepthRangeIndexed,
  glDepthRangeIndexedfNV,
  glDepthRangedNV,
  glDepthRangef,
  glDepthRangefOES,
  glDepthRangex,
  glDepthRangexOES,
  glDetachObjectARB,
  glDetachShader,
  glDetailTexFuncSGIS,
  glDisable,
  glDisableClientState,
  glDisableClientStateIndexedEXT,
  glDisableClientStateiEXT,
  glDisableDriverControlQCOM,
  glDisableIndexedEXT,
  glDisableVariantClientStateEXT,
  glDisableVertexArrayAttrib,
  glDisableVertexArrayAttribEXT,
  glDisableVertexArrayEXT,
  glDisableVertexAttribAPPLE,
  glDisableVertexAttribArray,
  glDisableVertexAttribArrayARB,
  glDisablei,
  glDisableiEXT,
  glDisableiNV,
  glDisableiOES,
  glDiscardFramebufferEXT,
  glDispatchCompute,
  glDispatchComputeGroupSizeARB,
  glDispatchComputeIndirect,
  glDrawArrays,
  glDrawArraysEXT,
  glDrawArraysIndirect,
  glDrawArraysInstanced,
  glDrawArraysInstancedANGLE,
  glDrawArraysInstancedARB,
  glDrawArraysInstancedBaseInstance,
  glDrawArraysInstancedBaseInstanceEXT,
  glDrawArraysInstancedEXT,
  glDrawArraysInstancedNV,
  glDrawBuffer,
  glDrawBuffers,
  glDrawBuffersARB,
  glDrawBuffersATI,
  glDrawBuffersEXT,
  glDrawBuffersIndexedEXT,
  glDrawBuffersNV,
  glDrawElementArrayAPPLE,
  glDrawElementArrayATI,
  glDrawElements,
  glDrawElementsBaseVertex,
  glDrawElementsBaseVertexEXT,
  glDrawElementsBaseVertexOES,
  glDrawElementsIndirect,
  glDrawElementsInstanced,
  glDrawElementsInstancedANGLE,
  glDrawElementsInstancedARB,
  glDrawElementsInstancedBaseInstance,
  glDrawElementsInstancedBaseInstanceEXT,
  glDrawElementsInstancedBaseVertex,
  glDrawElementsInstancedBaseVertexBaseInstance,
  glDrawElementsInstancedBaseVertexBaseInstanceEXT,
  glDrawElementsInstancedBaseVertexEXT,
  glDrawElementsInstancedBaseVertexOES,
  glDrawElementsInstancedEXT,
  glDrawElementsInstancedNV,
  glDrawMeshArraysSUN,
  glDrawPixels,
  glDrawRangeElementArrayAPPLE,
  glDrawRangeElementArrayATI,
  glDrawRangeElements,
  glDrawRangeElementsBaseVertex,
  glDrawRangeElementsBaseVertexEXT,
  glDrawRangeElementsBaseVertexOES,
  glDrawRangeElementsEXT,
  glDrawTexfOES,
  glDrawTexfvOES,
  glDrawTexiOES,
  glDrawTexivOES,
  glDrawTexsOES,
  glDrawTexsvOES,
  glDrawTextureNV,
  glDrawTexxOES,
  glDrawTexxvOES,
  glDrawTransformFeedback,
  glDrawTransformFeedbackInstanced,
  glDrawTransformFeedbackNV,
  glDrawTransformFeedbackStream,
  glDrawTransformFeedbackStreamInstanced,
  glEGLImageTargetRenderbufferStorageOES,
  glEGLImageTargetTexture2DOES,
  glEdgeFlag,
  glEdgeFlagFormatNV,
  glEdgeFlagPointer,
  glEdgeFlagPointerEXT,
  glEdgeFlagPointerListIBM,
  glEdgeFlagv,
  glElementPointerAPPLE,
  glElementPointerATI,
  glEnable,
  glEnableClientState,
  glEnableClientStateIndexedEXT,
  glEnableClientStateiEXT,
  glEnableDriverControlQCOM,
  glEnableIndexedEXT,
  glEnableVariantClientStateEXT,
  glEnableVertexArrayAttrib,
  glEnableVertexArrayAttribEXT,
  glEnableVertexArrayEXT,
  glEnableVertexAttribAPPLE,
  glEnableVertexAttribArray,
  glEnableVertexAttribArrayARB,
  glEnablei,
  glEnableiEXT,
  glEnableiNV,
  glEnableiOES,
  glEnd,
  glEndConditionalRender,
  glEndConditionalRenderNV,
  glEndConditionalRenderNVX,
  glEndFragmentShaderATI,
  glEndList,
  glEndOcclusionQueryNV,
  glEndPerfMonitorAMD,
  glEndPerfQueryINTEL,
  glEndQuery,
  glEndQueryARB,
  glEndQueryEXT,
  glEndQueryIndexed,
  glEndTilingQCOM,
  glEndTransformFeedback,
  glEndTransformFeedbackEXT,
  glEndTransformFeedbackNV,
  glEndVertexShaderEXT,
  glEndVideoCaptureNV,
  glEvalCoord1d,
  glEvalCoord1dv,
  glEvalCoord1f,
  glEvalCoord1fv,
  glEvalCoord1xOES,
  glEvalCoord1xvOES,
  glEvalCoord2d,
  glEvalCoord2dv,
  glEvalCoord2f,
  glEvalCoord2fv,
  glEvalCoord2xOES,
  glEvalCoord2xvOES,
  glEvalMapsNV,
  glEvalMesh1,
  glEvalMesh2,
  glEvalPoint1,
  glEvalPoint2,
  glExecuteProgramNV,
  glExtGetBufferPointervQCOM,
  glExtGetBuffersQCOM,
  glExtGetFramebuffersQCOM,
  glExtGetProgramBinarySourceQCOM,
  glExtGetProgramsQCOM,
  glExtGetRenderbuffersQCOM,
  glExtGetShadersQCOM,
  glExtGetTexLevelParameterivQCOM,
  glExtGetTexSubImageQCOM,
  glExtGetTexturesQCOM,
  glExtIsProgramBinaryQCOM,
  glExtTexObjectStateOverrideiQCOM,
  glExtractComponentEXT,
  glFeedbackBuffer,
  glFeedbackBufferxOES,
  glFenceSync,
  glFenceSyncAPPLE,
  glFinalCombinerInputNV,
  glFinish,
  glFinishAsyncSGIX,
  glFinishFenceAPPLE,
  glFinishFenceNV,
  glFinishObjectAPPLE,
  glFinishTextureSUNX,
  glFlush,
  glFlushMappedBufferRange,
  glFlushMappedBufferRangeAPPLE,
  glFlushMappedBufferRangeEXT,
  glFlushMappedNamedBufferRange,
  glFlushMappedNamedBufferRangeEXT,
  glFlushPixelDataRangeNV,
  glFlushRasterSGIX,
  glFlushStaticDataIBM,
  glFlushVertexArrayRangeAPPLE,
  glFlushVertexArrayRangeNV,
  glFogCoordFormatNV,
  glFogCoordPointer,
  glFogCoordPointerEXT,
  glFogCoordPointerListIBM,
  glFogCoordd,
  glFogCoorddEXT,
  glFogCoorddv,
  glFogCoorddvEXT,
  glFogCoordf,
  glFogCoordfEXT,
  glFogCoordfv,
  glFogCoordfvEXT,
  glFogCoordhNV,
  glFogCoordhvNV,
  glFogFuncSGIS,
  glFogf,
  glFogfv,
  glFogi,
  glFogiv,
  glFogx,
  glFogxOES,
  glFogxv,
  glFogxvOES,
  glFragmentColorMaterialSGIX,
  glFragmentCoverageColorNV,
  glFragmentLightModelfSGIX,
  glFragmentLightModelfvSGIX,
  glFragmentLightModeliSGIX,
  glFragmentLightModelivSGIX,
  glFragmentLightfSGIX,
  glFragmentLightfvSGIX,
  glFragmentLightiSGIX,
  glFragmentLightivSGIX,
  glFragmentMaterialfSGIX,
  glFragmentMaterialfvSGIX,
  glFragmentMaterialiSGIX,
  glFragmentMaterialivSGIX,
  glFrameTerminatorGREMEDY,
  glFrameZoomSGIX,
  glFramebufferDrawBufferEXT,
  glFramebufferDrawBuffersEXT,
  glFramebufferParameteri,
  glFramebufferReadBufferEXT,
  glFramebufferRenderbuffer,
  glFramebufferRenderbufferEXT,
  glFramebufferRenderbufferOES,
  glFramebufferSampleLocationsfvNV,
  glFramebufferTexture,
  glFramebufferTexture1D,
  glFramebufferTexture1DEXT,
  glFramebufferTexture2D,
  glFramebufferTexture2DEXT,
  glFramebufferTexture2DMultisampleEXT,
  glFramebufferTexture2DMultisampleIMG,
  glFramebufferTexture2DOES,
  glFramebufferTexture3D,
  glFramebufferTexture3DEXT,
  glFramebufferTexture3DOES,
  glFramebufferTextureARB,
  glFramebufferTextureEXT,
  glFramebufferTextureFaceARB,
  glFramebufferTextureFaceEXT,
  glFramebufferTextureLayer,
  glFramebufferTextureLayerARB,
  glFramebufferTextureLayerEXT,
  glFramebufferTextureOES,
  glFreeObjectBufferATI,
  glFrontFace,
  glFrustum,
  glFrustumf,
  glFrustumfOES,
  glFrustumx,
  glFrustumxOES,
  glGenAsyncMarkersSGIX,
  glGenBuffers,
  glGenBuffersARB,
  glGenFencesAPPLE,
  glGenFencesNV,
  glGenFragmentShadersATI,
  glGenFramebuffers,
  glGenFramebuffersEXT,
  glGenFramebuffersOES,
  glGenLists,
  glGenNamesAMD,
  glGenOcclusionQueriesNV,
  glGenPathsNV,
  glGenPerfMonitorsAMD,
  glGenProgramPipelines,
  glGenProgramPipelinesEXT,
  glGenProgramsARB,
  glGenProgramsNV,
  glGenQueries,
  glGenQueriesARB,
  glGenQueriesEXT,
  glGenRenderbuffers,
  glGenRenderbuffersEXT,
  glGenRenderbuffersOES,
  glGenSamplers,
  glGenSymbolsEXT,
  glGenTextures,
  glGenTexturesEXT,
  glGenTransformFeedbacks,
  glGenTransformFeedbacksNV,
  glGenVertexArrays,
  glGenVertexArraysAPPLE,
  glGenVertexArraysOES,
  glGenVertexShadersEXT,
  glGenerateMipmap,
  glGenerateMipmapEXT,
  glGenerateMipmapOES,
  glGenerateMultiTexMipmapEXT,
  glGenerateTextureMipmap,
  glGenerateTextureMipmapEXT,
  glGetActiveAtomicCounterBufferiv,
  glGetActiveAttrib,
  glGetActiveAttribARB,
  glGetActiveSubroutineName,
  glGetActiveSubroutineUniformName,
  glGetActiveSubroutineUniformiv,
  glGetActiveUniform,
  glGetActiveUniformARB,
  glGetActiveUniformBlockName,
  glGetActiveUniformBlockiv,
  glGetActiveUniformName,
  glGetActiveUniformsiv,
  glGetActiveVaryingNV,
  glGetArrayObjectfvATI,
  glGetArrayObjectivATI,
  glGetAttachedObjectsARB,
  glGetAttachedShaders,
  glGetAttribLocation,
  glGetAttribLocationARB,
  glGetBooleanIndexedvEXT,
  glGetBooleani_v,
  glGetBooleanv,
  glGetBufferParameteri64v,
  glGetBufferParameteriv,
  glGetBufferParameterivARB,
  glGetBufferParameterui64vNV,
  glGetBufferPointerv,
  glGetBufferPointervARB,
  glGetBufferPointervOES,
  glGetBufferSubData,
  glGetBufferSubDataARB,
  glGetClipPlane,
  glGetClipPlanef,
  glGetClipPlanefOES,
  glGetClipPlanex,
  glGetClipPlanexOES,
  glGetColorTable,
  glGetColorTableEXT,
  glGetColorTableParameterfv,
  glGetColorTableParameterfvEXT,
  glGetColorTableParameterfvSGI,
  glGetColorTableParameteriv,
  glGetColorTableParameterivEXT,
  glGetColorTableParameterivSGI,
  glGetColorTableSGI,
  glGetCombinerInputParameterfvNV,
  glGetCombinerInputParameterivNV,
  glGetCombinerOutputParameterfvNV,
  glGetCombinerOutputParameterivNV,
  glGetCombinerStageParameterfvNV,
  glGetCompressedMultiTexImageEXT,
  glGetCompressedTexImage,
  glGetCompressedTexImageARB,
  glGetCompressedTextureImage,
  glGetCompressedTextureImageEXT,
  glGetCompressedTextureSubImage,
  glGetConvolutionFilter,
  glGetConvolutionFilterEXT,
  glGetConvolutionParameterfv,
  glGetConvolutionParameterfvEXT,
  glGetConvolutionParameteriv,
  glGetConvolutionParameterivEXT,
  glGetConvolutionParameterxvOES,
  glGetCoverageModulationTableNV,
  glGetDebugMessageLog,
  glGetDebugMessageLogAMD,
  glGetDebugMessageLogARB,
  glGetDebugMessageLogKHR,
  glGetDetailTexFuncSGIS,
  glGetDoubleIndexedvEXT,
  glGetDoublei_v,
  glGetDoublei_vEXT,
  glGetDoublev,
  glGetDriverControlStringQCOM,
  glGetDriverControlsQCOM,
  glGetError,
  glGetFenceivNV,
  glGetFinalCombinerInputParameterfvNV,
  glGetFinalCombinerInputParameterivNV,
  glGetFirstPerfQueryIdINTEL,
  glGetFixedv,
  glGetFixedvOES,
  glGetFloatIndexedvEXT,
  glGetFloati_v,
  glGetFloati_vEXT,
  glGetFloati_vNV,
  glGetFloatv,
  glGetFogFuncSGIS,
  glGetFragDataIndex,
  glGetFragDataLocation,
  glGetFragDataLocationEXT,
  glGetFragmentLightfvSGIX,
  glGetFragmentLightivSGIX,
  glGetFragmentMaterialfvSGIX,
  glGetFragmentMaterialivSGIX,
  glGetFramebufferAttachmentParameteriv,
  glGetFramebufferAttachmentParameterivEXT,
  glGetFramebufferAttachmentParameterivOES,
  glGetFramebufferParameteriv,
  glGetFramebufferParameterivEXT,
  glGetGraphicsResetStatus,
  glGetGraphicsResetStatusARB,
  glGetGraphicsResetStatusEXT,
  glGetGraphicsResetStatusKHR,
  glGetHandleARB,
  glGetHistogram,
  glGetHistogramEXT,
  glGetHistogramParameterfv,
  glGetHistogramParameterfvEXT,
  glGetHistogramParameteriv,
  glGetHistogramParameterivEXT,
  glGetHistogramParameterxvOES,
  glGetImageHandleARB,
  glGetImageHandleNV,
  glGetImageTransformParameterfvHP,
  glGetImageTransformParameterivHP,
  glGetInfoLogARB,
  glGetInstrumentsSGIX,
  glGetInteger64i_v,
  glGetInteger64v,
  glGetInteger64vAPPLE,
  glGetIntegerIndexedvEXT,
  glGetIntegeri_v,
  glGetIntegeri_vEXT,
  glGetIntegerui64i_vNV,
  glGetIntegerui64vNV,
  glGetIntegerv,
  glGetInternalformatSampleivNV,
  glGetInternalformati64v,
  glGetInternalformativ,
  glGetInvariantBooleanvEXT,
  glGetInvariantFloatvEXT,
  glGetInvariantIntegervEXT,
  glGetLightfv,
  glGetLightiv,
  glGetLightxOES,
  glGetLightxv,
  glGetLightxvOES,
  glGetListParameterfvSGIX,
  glGetListParameterivSGIX,
  glGetLocalConstantBooleanvEXT,
  glGetLocalConstantFloatvEXT,
  glGetLocalConstantIntegervEXT,
  glGetMapAttribParameterfvNV,
  glGetMapAttribParameterivNV,
  glGetMapControlPointsNV,
  glGetMapParameterfvNV,
  glGetMapParameterivNV,
  glGetMapdv,
  glGetMapfv,
  glGetMapiv,
  glGetMapxvOES,
  glGetMaterialfv,
  glGetMaterialiv,
  glGetMaterialxOES,
  glGetMaterialxv,
  glGetMaterialxvOES,
  glGetMinmax,
  glGetMinmaxEXT,
  glGetMinmaxParameterfv,
  glGetMinmaxParameterfvEXT,
  glGetMinmaxParameteriv,
  glGetMinmaxParameterivEXT,
  glGetMultiTexEnvfvEXT,
  glGetMultiTexEnvivEXT,
  glGetMultiTexGendvEXT,
  glGetMultiTexGenfvEXT,
  glGetMultiTexGenivEXT,
  glGetMultiTexImageEXT,
  glGetMultiTexLevelParameterfvEXT,
  glGetMultiTexLevelParameterivEXT,
  glGetMultiTexParameterIivEXT,
  glGetMultiTexParameterIuivEXT,
  glGetMultiTexParameterfvEXT,
  glGetMultiTexParameterivEXT,
  glGetMultisamplefv,
  glGetMultisamplefvNV,
  glGetNamedBufferParameteri64v,
  glGetNamedBufferParameteriv,
  glGetNamedBufferParameterivEXT,
  glGetNamedBufferParameterui64vNV,
  glGetNamedBufferPointerv,
  glGetNamedBufferPointervEXT,
  glGetNamedBufferSubData,
  glGetNamedBufferSubDataEXT,
  glGetNamedFramebufferAttachmentParameteriv,
  glGetNamedFramebufferAttachmentParameterivEXT,
  glGetNamedFramebufferParameteriv,
  glGetNamedFramebufferParameterivEXT,
  glGetNamedProgramLocalParameterIivEXT,
  glGetNamedProgramLocalParameterIuivEXT,
  glGetNamedProgramLocalParameterdvEXT,
  glGetNamedProgramLocalParameterfvEXT,
  glGetNamedProgramStringEXT,
  glGetNamedProgramivEXT,
  glGetNamedRenderbufferParameteriv,
  glGetNamedRenderbufferParameterivEXT,
  glGetNamedStringARB,
  glGetNamedStringivARB,
  glGetNextPerfQueryIdINTEL,
  glGetObjectBufferfvATI,
  glGetObjectBufferivATI,
  glGetObjectLabel,
  glGetObjectLabelEXT,
  glGetObjectLabelKHR,
  glGetObjectParameterfvARB,
  glGetObjectParameterivAPPLE,
  glGetObjectParameterivARB,
  glGetObjectPtrLabel,
  glGetObjectPtrLabelKHR,
  glGetOcclusionQueryivNV,
  glGetOcclusionQueryuivNV,
  glGetPathColorGenfvNV,
  glGetPathColorGenivNV,
  glGetPathCommandsNV,
  glGetPathCoordsNV,
  glGetPathDashArrayNV,
  glGetPathLengthNV,
  glGetPathMetricRangeNV,
  glGetPathMetricsNV,
  glGetPathParameterfvNV,
  glGetPathParameterivNV,
  glGetPathSpacingNV,
  glGetPathTexGenfvNV,
  glGetPathTexGenivNV,
  glGetPerfCounterInfoINTEL,
  glGetPerfMonitorCounterDataAMD,
  glGetPerfMonitorCounterInfoAMD,
  glGetPerfMonitorCounterStringAMD,
  glGetPerfMonitorCountersAMD,
  glGetPerfMonitorGroupStringAMD,
  glGetPerfMonitorGroupsAMD,
  glGetPerfQueryDataINTEL,
  glGetPerfQueryIdByNameINTEL,
  glGetPerfQueryInfoINTEL,
  glGetPixelMapfv,
  glGetPixelMapuiv,
  glGetPixelMapusv,
  glGetPixelMapxv,
  glGetPixelTexGenParameterfvSGIS,
  glGetPixelTexGenParameterivSGIS,
  glGetPixelTransformParameterfvEXT,
  glGetPixelTransformParameterivEXT,
  glGetPointerIndexedvEXT,
  glGetPointeri_vEXT,
  glGetPointerv,
  glGetPointervEXT,
  glGetPointervKHR,
  glGetPolygonStipple,
  glGetProgramBinary,
  glGetProgramBinaryOES,
  glGetProgramEnvParameterIivNV,
  glGetProgramEnvParameterIuivNV,
  glGetProgramEnvParameterdvARB,
  glGetProgramEnvParameterfvARB,
  glGetProgramInfoLog,
  glGetProgramInterfaceiv,
  glGetProgramLocalParameterIivNV,
  glGetProgramLocalParameterIuivNV,
  glGetProgramLocalParameterdvARB,
  glGetProgramLocalParameterfvARB,
  glGetProgramNamedParameterdvNV,
  glGetProgramNamedParameterfvNV,
  glGetProgramParameterdvNV,
  glGetProgramParameterfvNV,
  glGetProgramPipelineInfoLog,
  glGetProgramPipelineInfoLogEXT,
  glGetProgramPipelineiv,
  glGetProgramPipelineivEXT,
  glGetProgramResourceIndex,
  glGetProgramResourceLocation,
  glGetProgramResourceLocationIndex,
  glGetProgramResourceName,
  glGetProgramResourcefvNV,
  glGetProgramResourceiv,
  glGetProgramStageiv,
  glGetProgramStringARB,
  glGetProgramStringNV,
  glGetProgramSubroutineParameteruivNV,
  glGetProgramiv,
  glGetProgramivARB,
  glGetProgramivNV,
  glGetQueryBufferObjecti64v,
  glGetQueryBufferObjectiv,
  glGetQueryBufferObjectui64v,
  glGetQueryBufferObjectuiv,
  glGetQueryIndexediv,
  glGetQueryObjecti64v,
  glGetQueryObjecti64vEXT,
  glGetQueryObjectiv,
  glGetQueryObjectivARB,
  glGetQueryObjectivEXT,
  glGetQueryObjectui64v,
  glGetQueryObjectui64vEXT,
  glGetQueryObjectuiv,
  glGetQueryObjectuivARB,
  glGetQueryObjectuivEXT,
  glGetQueryiv,
  glGetQueryivARB,
  glGetQueryivEXT,
  glGetRenderbufferParameteriv,
  glGetRenderbufferParameterivEXT,
  glGetRenderbufferParameterivOES,
  glGetSamplerParameterIiv,
  glGetSamplerParameterIivEXT,
  glGetSamplerParameterIivOES,
  glGetSamplerParameterIuiv,
  glGetSamplerParameterIuivEXT,
  glGetSamplerParameterIuivOES,
  glGetSamplerParameterfv,
  glGetSamplerParameteriv,
  glGetSeparableFilter,
  glGetSeparableFilterEXT,
  glGetShaderInfoLog,
  glGetShaderPrecisionFormat,
  glGetShaderSource,
  glGetShaderSourceARB,
  glGetShaderiv,
  glGetSharpenTexFuncSGIS,
  glGetString,
  glGetStringi,
  glGetSubroutineIndex,
  glGetSubroutineUniformLocation,
  glGetSynciv,
  glGetSyncivAPPLE,
  glGetTexBumpParameterfvATI,
  glGetTexBumpParameterivATI,
  glGetTexEnvfv,
  glGetTexEnviv,
  glGetTexEnvxv,
  glGetTexEnvxvOES,
  glGetTexFilterFuncSGIS,
  glGetTexGendv,
  glGetTexGenfv,
  glGetTexGenfvOES,
  glGetTexGeniv,
  glGetTexGenivOES,
  glGetTexGenxvOES,
  glGetTexImage,
  glGetTexLevelParameterfv,
  glGetTexLevelParameteriv,
  glGetTexLevelParameterxvOES,
  glGetTexParameterIiv,
  glGetTexParameterIivEXT,
  glGetTexParameterIivOES,
  glGetTexParameterIuiv,
  glGetTexParameterIuivEXT,
  glGetTexParameterIuivOES,
  glGetTexParameterPointervAPPLE,
  glGetTexParameterfv,
  glGetTexParameteriv,
  glGetTexParameterxv,
  glGetTexParameterxvOES,
  glGetTextureHandleARB,
  glGetTextureHandleNV,
  glGetTextureImage,
  glGetTextureImageEXT,
  glGetTextureLevelParameterfv,
  glGetTextureLevelParameterfvEXT,
  glGetTextureLevelParameteriv,
  glGetTextureLevelParameterivEXT,
  glGetTextureParameterIiv,
  glGetTextureParameterIivEXT,
  glGetTextureParameterIuiv,
  glGetTextureParameterIuivEXT,
  glGetTextureParameterfv,
  glGetTextureParameterfvEXT,
  glGetTextureParameteriv,
  glGetTextureParameterivEXT,
  glGetTextureSamplerHandleARB,
  glGetTextureSamplerHandleNV,
  glGetTextureSubImage,
  glGetTrackMatrixivNV,
  glGetTransformFeedbackVarying,
  glGetTransformFeedbackVaryingEXT,
  glGetTransformFeedbackVaryingNV,
  glGetTransformFeedbacki64_v,
  glGetTransformFeedbacki_v,
  glGetTransformFeedbackiv,
  glGetTranslatedShaderSourceANGLE,
  glGetUniformBlockIndex,
  glGetUniformBufferSizeEXT,
  glGetUniformIndices,
  glGetUniformLocation,
  glGetUniformLocationARB,
  glGetUniformOffsetEXT,
  glGetUniformSubroutineuiv,
  glGetUniformdv,
  glGetUniformfv,
  glGetUniformfvARB,
  glGetUniformi64vNV,
  glGetUniformiv,
  glGetUniformivARB,
  glGetUniformui64vNV,
  glGetUniformuiv,
  glGetUniformuivEXT,
  glGetVariantArrayObjectfvATI,
  glGetVariantArrayObjectivATI,
  glGetVariantBooleanvEXT,
  glGetVariantFloatvEXT,
  glGetVariantIntegervEXT,
  glGetVariantPointervEXT,
  glGetVaryingLocationNV,
  glGetVertexArrayIndexed64iv,
  glGetVertexArrayIndexediv,
  glGetVertexArrayIntegeri_vEXT,
  glGetVertexArrayIntegervEXT,
  glGetVertexArrayPointeri_vEXT,
  glGetVertexArrayPointervEXT,
  glGetVertexArrayiv,
  glGetVertexAttribArrayObjectfvATI,
  glGetVertexAttribArrayObjectivATI,
  glGetVertexAttribIiv,
  glGetVertexAttribIivEXT,
  glGetVertexAttribIuiv,
  glGetVertexAttribIuivEXT,
  glGetVertexAttribLdv,
  glGetVertexAttribLdvEXT,
  glGetVertexAttribLi64vNV,
  glGetVertexAttribLui64vARB,
  glGetVertexAttribLui64vNV,
  glGetVertexAttribPointerv,
  glGetVertexAttribPointervARB,
  glGetVertexAttribPointervNV,
  glGetVertexAttribdv,
  glGetVertexAttribdvARB,
  glGetVertexAttribdvNV,
  glGetVertexAttribfv,
  glGetVertexAttribfvARB,
  glGetVertexAttribfvNV,
  glGetVertexAttribiv,
  glGetVertexAttribivARB,
  glGetVertexAttribivNV,
  glGetVideoCaptureStreamdvNV,
  glGetVideoCaptureStreamfvNV,
  glGetVideoCaptureStreamivNV,
  glGetVideoCaptureivNV,
  glGetVideoi64vNV,
  glGetVideoivNV,
  glGetVideoui64vNV,
  glGetVideouivNV,
  glGetnColorTable,
  glGetnColorTableARB,
  glGetnCompressedTexImage,
  glGetnCompressedTexImageARB,
  glGetnConvolutionFilter,
  glGetnConvolutionFilterARB,
  glGetnHistogram,
  glGetnHistogramARB,
  glGetnMapdv,
  glGetnMapdvARB,
  glGetnMapfv,
  glGetnMapfvARB,
  glGetnMapiv,
  glGetnMapivARB,
  glGetnMinmax,
  glGetnMinmaxARB,
  glGetnPixelMapfv,
  glGetnPixelMapfvARB,
  glGetnPixelMapuiv,
  glGetnPixelMapuivARB,
  glGetnPixelMapusv,
  glGetnPixelMapusvARB,
  glGetnPolygonStipple,
  glGetnPolygonStippleARB,
  glGetnSeparableFilter,
  glGetnSeparableFilterARB,
  glGetnTexImage,
  glGetnTexImageARB,
  glGetnUniformdv,
  glGetnUniformdvARB,
  glGetnUniformfv,
  glGetnUniformfvARB,
  glGetnUniformfvEXT,
  glGetnUniformfvKHR,
  glGetnUniformiv,
  glGetnUniformivARB,
  glGetnUniformivEXT,
  glGetnUniformivKHR,
  glGetnUniformuiv,
  glGetnUniformuivARB,
  glGetnUniformuivKHR,
  glGlobalAlphaFactorbSUN,
  glGlobalAlphaFactordSUN,
  glGlobalAlphaFactorfSUN,
  glGlobalAlphaFactoriSUN,
  glGlobalAlphaFactorsSUN,
  glGlobalAlphaFactorubSUN,
  glGlobalAlphaFactoruiSUN,
  glGlobalAlphaFactorusSUN,
  glHint,
  glHintPGI,
  glHistogram,
  glHistogramEXT,
  glIglooInterfaceSGIX,
  glImageTransformParameterfHP,
  glImageTransformParameterfvHP,
  glImageTransformParameteriHP,
  glImageTransformParameterivHP,
  glImportSyncEXT,
  glIndexFormatNV,
  glIndexFuncEXT,
  glIndexMask,
  glIndexMaterialEXT,
  glIndexPointer,
  glIndexPointerEXT,
  glIndexPointerListIBM,
  glIndexd,
  glIndexdv,
  glIndexf,
  glIndexfv,
  glIndexi,
  glIndexiv,
  glIndexs,
  glIndexsv,
  glIndexub,
  glIndexubv,
  glIndexxOES,
  glIndexxvOES,
  glInitNames,
  glInsertComponentEXT,
  glInsertEventMarkerEXT,
  glInstrumentsBufferSGIX,
  glInterleavedArrays,
  glInterpolatePathsNV,
  glInvalidateBufferData,
  glInvalidateBufferSubData,
  glInvalidateFramebuffer,
  glInvalidateNamedFramebufferData,
  glInvalidateNamedFramebufferSubData,
  glInvalidateSubFramebuffer,
  glInvalidateTexImage,
  glInvalidateTexSubImage,
  glIsAsyncMarkerSGIX,
  glIsBuffer,
  glIsBufferARB,
  glIsBufferResidentNV,
  glIsEnabled,
  glIsEnabledIndexedEXT,
  glIsEnabledi,
  glIsEnablediEXT,
  glIsEnablediNV,
  glIsEnablediOES,
  glIsFenceAPPLE,
  glIsFenceNV,
  glIsFramebuffer,
  glIsFramebufferEXT,
  glIsFramebufferOES,
  glIsImageHandleResidentARB,
  glIsImageHandleResidentNV,
  glIsList,
  glIsNameAMD,
  glIsNamedBufferResidentNV,
  glIsNamedStringARB,
  glIsObjectBufferATI,
  glIsOcclusionQueryNV,
  glIsPathNV,
  glIsPointInFillPathNV,
  glIsPointInStrokePathNV,
  glIsProgram,
  glIsProgramARB,
  glIsProgramNV,
  glIsProgramPipeline,
  glIsProgramPipelineEXT,
  glIsQuery,
  glIsQueryARB,
  glIsQueryEXT,
  glIsRenderbuffer,
  glIsRenderbufferEXT,
  glIsRenderbufferOES,
  glIsSampler,
  glIsShader,
  glIsSync,
  glIsSyncAPPLE,
  glIsTexture,
  glIsTextureEXT,
  glIsTextureHandleResidentARB,
  glIsTextureHandleResidentNV,
  glIsTransformFeedback,
  glIsTransformFeedbackNV,
  glIsVariantEnabledEXT,
  glIsVertexArray,
  glIsVertexArrayAPPLE,
  glIsVertexArrayOES,
  glIsVertexAttribEnabledAPPLE,
  glLabelObjectEXT,
  glLightEnviSGIX,
  glLightModelf,
  glLightModelfv,
  glLightModeli,
  glLightModeliv,
  glLightModelx,
  glLightModelxOES,
  glLightModelxv,
  glLightModelxvOES,
  glLightf,
  glLightfv,
  glLighti,
  glLightiv,
  glLightx,
  glLightxOES,
  glLightxv,
  glLightxvOES,
  glLineStipple,
  glLineWidth,
  glLineWidthx,
  glLineWidthxOES,
  glLinkProgram,
  glLinkProgramARB,
  glListBase,
  glListParameterfSGIX,
  glListParameterfvSGIX,
  glListParameteriSGIX,
  glListParameterivSGIX,
  glLoadIdentity,
  glLoadIdentityDeformationMapSGIX,
  glLoadMatrixd,
  glLoadMatrixf,
  glLoadMatrixx,
  glLoadMatrixxOES,
  glLoadName,
  glLoadPaletteFromModelViewMatrixOES,
  glLoadProgramNV,
  glLoadTransposeMatrixd,
  glLoadTransposeMatrixdARB,
  glLoadTransposeMatrixf,
  glLoadTransposeMatrixfARB,
  glLoadTransposeMatrixxOES,
  glLockArraysEXT,
  glLogicOp,
  glMakeBufferNonResidentNV,
  glMakeBufferResidentNV,
  glMakeImageHandleNonResidentARB,
  glMakeImageHandleNonResidentNV,
  glMakeImageHandleResidentARB,
  glMakeImageHandleResidentNV,
  glMakeNamedBufferNonResidentNV,
  glMakeNamedBufferResidentNV,
  glMakeTextureHandleNonResidentARB,
  glMakeTextureHandleNonResidentNV,
  glMakeTextureHandleResidentARB,
  glMakeTextureHandleResidentNV,
  glMap1d,
  glMap1f,
  glMap1xOES,
  glMap2d,
  glMap2f,
  glMap2xOES,
  glMapBuffer,
  glMapBufferARB,
  glMapBufferOES,
  glMapBufferRange,
  glMapBufferRangeEXT,
  glMapControlPointsNV,
  glMapGrid1d,
  glMapGrid1f,
  glMapGrid1xOES,
  glMapGrid2d,
  glMapGrid2f,
  glMapGrid2xOES,
  glMapNamedBuffer,
  glMapNamedBufferEXT,
  glMapNamedBufferRange,
  glMapNamedBufferRangeEXT,
  glMapObjectBufferATI,
  glMapParameterfvNV,
  glMapParameterivNV,
  glMapTexture2DINTEL,
  glMapVertexAttrib1dAPPLE,
  glMapVertexAttrib1fAPPLE,
  glMapVertexAttrib2dAPPLE,
  glMapVertexAttrib2fAPPLE,
  glMaterialf,
  glMaterialfv,
  glMateriali,
  glMaterialiv,
  glMaterialx,
  glMaterialxOES,
  glMaterialxv,
  glMaterialxvOES,
  glMatrixFrustumEXT,
  glMatrixIndexPointerARB,
  glMatrixIndexPointerOES,
  glMatrixIndexubvARB,
  glMatrixIndexuivARB,
  glMatrixIndexusvARB,
  glMatrixLoad3x2fNV,
  glMatrixLoad3x3fNV,
  glMatrixLoadIdentityEXT,
  glMatrixLoadTranspose3x3fNV,
  glMatrixLoadTransposedEXT,
  glMatrixLoadTransposefEXT,
  glMatrixLoaddEXT,
  glMatrixLoadfEXT,
  glMatrixMode,
  glMatrixMult3x2fNV,
  glMatrixMult3x3fNV,
  glMatrixMultTranspose3x3fNV,
  glMatrixMultTransposedEXT,
  glMatrixMultTransposefEXT,
  glMatrixMultdEXT,
  glMatrixMultfEXT,
  glMatrixOrthoEXT,
  glMatrixPopEXT,
  glMatrixPushEXT,
  glMatrixRotatedEXT,
  glMatrixRotatefEXT,
  glMatrixScaledEXT,
  glMatrixScalefEXT,
  glMatrixTranslatedEXT,
  glMatrixTranslatefEXT,
  glMemoryBarrier,
  glMemoryBarrierByRegion,
  glMemoryBarrierEXT,
  glMinSampleShading,
  glMinSampleShadingARB,
  glMinSampleShadingOES,
  glMinmax,
  glMinmaxEXT,
  glMultMatrixd,
  glMultMatrixf,
  glMultMatrixx,
  glMultMatrixxOES,
  glMultTransposeMatrixd,
  glMultTransposeMatrixdARB,
  glMultTransposeMatrixf,
  glMultTransposeMatrixfARB,
  glMultTransposeMatrixxOES,
  glMultiDrawArrays,
  glMultiDrawArraysEXT,
  glMultiDrawArraysIndirect,
  glMultiDrawArraysIndirectAMD,
  glMultiDrawArraysIndirectBindlessCountNV,
  glMultiDrawArraysIndirectBindlessNV,
  glMultiDrawArraysIndirectCountARB,
  glMultiDrawArraysIndirectEXT,
  glMultiDrawElementArrayAPPLE,
  glMultiDrawElements,
  glMultiDrawElementsBaseVertex,
  glMultiDrawElementsBaseVertexEXT,
  glMultiDrawElementsBaseVertexOES,
  glMultiDrawElementsEXT,
  glMultiDrawElementsIndirect,
  glMultiDrawElementsIndirectAMD,
  glMultiDrawElementsIndirectBindlessCountNV,
  glMultiDrawElementsIndirectBindlessNV,
  glMultiDrawElementsIndirectCountARB,
  glMultiDrawElementsIndirectEXT,
  glMultiDrawRangeElementArrayAPPLE,
  glMultiModeDrawArraysIBM,
  glMultiModeDrawElementsIBM,
  glMultiTexBufferEXT,
  glMultiTexCoord1bOES,
  glMultiTexCoord1bvOES,
  glMultiTexCoord1d,
  glMultiTexCoord1dARB,
  glMultiTexCoord1dv,
  glMultiTexCoord1dvARB,
  glMultiTexCoord1f,
  glMultiTexCoord1fARB,
  glMultiTexCoord1fv,
  glMultiTexCoord1fvARB,
  glMultiTexCoord1hNV,
  glMultiTexCoord1hvNV,
  glMultiTexCoord1i,
  glMultiTexCoord1iARB,
  glMultiTexCoord1iv,
  glMultiTexCoord1ivARB,
  glMultiTexCoord1s,
  glMultiTexCoord1sARB,
  glMultiTexCoord1sv,
  glMultiTexCoord1svARB,
  glMultiTexCoord1xOES,
  glMultiTexCoord1xvOES,
  glMultiTexCoord2bOES,
  glMultiTexCoord2bvOES,
  glMultiTexCoord2d,
  glMultiTexCoord2dARB,
  glMultiTexCoord2dv,
  glMultiTexCoord2dvARB,
  glMultiTexCoord2f,
  glMultiTexCoord2fARB,
  glMultiTexCoord2fv,
  glMultiTexCoord2fvARB,
  glMultiTexCoord2hNV,
  glMultiTexCoord2hvNV,
  glMultiTexCoord2i,
  glMultiTexCoord2iARB,
  glMultiTexCoord2iv,
  glMultiTexCoord2ivARB,
  glMultiTexCoord2s,
  glMultiTexCoord2sARB,
  glMultiTexCoord2sv,
  glMultiTexCoord2svARB,
  glMultiTexCoord2xOES,
  glMultiTexCoord2xvOES,
  glMultiTexCoord3bOES,
  glMultiTexCoord3bvOES,
  glMultiTexCoord3d,
  glMultiTexCoord3dARB,
  glMultiTexCoord3dv,
  glMultiTexCoord3dvARB,
  glMultiTexCoord3f,
  glMultiTexCoord3fARB,
  glMultiTexCoord3fv,
  glMultiTexCoord3fvARB,
  glMultiTexCoord3hNV,
  glMultiTexCoord3hvNV,
  glMultiTexCoord3i,
  glMultiTexCoord3iARB,
  glMultiTexCoord3iv,
  glMultiTexCoord3ivARB,
  glMultiTexCoord3s,
  glMultiTexCoord3sARB,
  glMultiTexCoord3sv,
  glMultiTexCoord3svARB,
  glMultiTexCoord3xOES,
  glMultiTexCoord3xvOES,
  glMultiTexCoord4bOES,
  glMultiTexCoord4bvOES,
  glMultiTexCoord4d,
  glMultiTexCoord4dARB,
  glMultiTexCoord4dv,
  glMultiTexCoord4dvARB,
  glMultiTexCoord4f,
  glMultiTexCoord4fARB,
  glMultiTexCoord4fv,
  glMultiTexCoord4fvARB,
  glMultiTexCoord4hNV,
  glMultiTexCoord4hvNV,
  glMultiTexCoord4i,
  glMultiTexCoord4iARB,
  glMultiTexCoord4iv,
  glMultiTexCoord4ivARB,
  glMultiTexCoord4s,
  glMultiTexCoord4sARB,
  glMultiTexCoord4sv,
  glMultiTexCoord4svARB,
  glMultiTexCoord4x,
  glMultiTexCoord4xOES,
  glMultiTexCoord4xvOES,
  glMultiTexCoordP1ui,
  glMultiTexCoordP1uiv,
  glMultiTexCoordP2ui,
  glMultiTexCoordP2uiv,
  glMultiTexCoordP3ui,
  glMultiTexCoordP3uiv,
  glMultiTexCoordP4ui,
  glMultiTexCoordP4uiv,
  glMultiTexCoordPointerEXT,
  glMultiTexEnvfEXT,
  glMultiTexEnvfvEXT,
  glMultiTexEnviEXT,
  glMultiTexEnvivEXT,
  glMultiTexGendEXT,
  glMultiTexGendvEXT,
  glMultiTexGenfEXT,
  glMultiTexGenfvEXT,
  glMultiTexGeniEXT,
  glMultiTexGenivEXT,
  glMultiTexImage1DEXT,
  glMultiTexImage2DEXT,
  glMultiTexImage3DEXT,
  glMultiTexParameterIivEXT,
  glMultiTexParameterIuivEXT,
  glMultiTexParameterfEXT,
  glMultiTexParameterfvEXT,
  glMultiTexParameteriEXT,
  glMultiTexParameterivEXT,
  glMultiTexRenderbufferEXT,
  glMultiTexSubImage1DEXT,
  glMultiTexSubImage2DEXT,
  glMultiTexSubImage3DEXT,
  glNamedBufferData,
  glNamedBufferDataEXT,
  glNamedBufferPageCommitmentARB,
  glNamedBufferPageCommitmentEXT,
  glNamedBufferStorage,
  glNamedBufferStorageEXT,
  glNamedBufferSubData,
  glNamedBufferSubDataEXT,
  glNamedCopyBufferSubDataEXT,
  glNamedFramebufferDrawBuffer,
  glNamedFramebufferDrawBuffers,
  glNamedFramebufferParameteri,
  glNamedFramebufferParameteriEXT,
  glNamedFramebufferReadBuffer,
  glNamedFramebufferRenderbuffer,
  glNamedFramebufferRenderbufferEXT,
  glNamedFramebufferSampleLocationsfvNV,
  glNamedFramebufferTexture,
  glNamedFramebufferTexture1DEXT,
  glNamedFramebufferTexture2DEXT,
  glNamedFramebufferTexture3DEXT,
  glNamedFramebufferTextureEXT,
  glNamedFramebufferTextureFaceEXT,
  glNamedFramebufferTextureLayer,
  glNamedFramebufferTextureLayerEXT,
  glNamedProgramLocalParameter4dEXT,
  glNamedProgramLocalParameter4dvEXT,
  glNamedProgramLocalParameter4fEXT,
  glNamedProgramLocalParameter4fvEXT,
  glNamedProgramLocalParameterI4iEXT,
  glNamedProgramLocalParameterI4ivEXT,
  glNamedProgramLocalParameterI4uiEXT,
  glNamedProgramLocalParameterI4uivEXT,
  glNamedProgramLocalParameters4fvEXT,
  glNamedProgramLocalParametersI4ivEXT,
  glNamedProgramLocalParametersI4uivEXT,
  glNamedProgramStringEXT,
  glNamedRenderbufferStorage,
  glNamedRenderbufferStorageEXT,
  glNamedRenderbufferStorageMultisample,
  glNamedRenderbufferStorageMultisampleCoverageEXT,
  glNamedRenderbufferStorageMultisampleEXT,
  glNamedStringARB,
  glNewList,
  glNewObjectBufferATI,
  glNormal3b,
  glNormal3bv,
  glNormal3d,
  glNormal3dv,
  glNormal3f,
  glNormal3fVertex3fSUN,
  glNormal3fVertex3fvSUN,
  glNormal3fv,
  glNormal3hNV,
  glNormal3hvNV,
  glNormal3i,
  glNormal3iv,
  glNormal3s,
  glNormal3sv,
  glNormal3x,
  glNormal3xOES,
  glNormal3xvOES,
  glNormalFormatNV,
  glNormalP3ui,
  glNormalP3uiv,
  glNormalPointer,
  glNormalPointerEXT,
  glNormalPointerListIBM,
  glNormalPointervINTEL,
  glNormalStream3bATI,
  glNormalStream3bvATI,
  glNormalStream3dATI,
  glNormalStream3dvATI,
  glNormalStream3fATI,
  glNormalStream3fvATI,
  glNormalStream3iATI,
  glNormalStream3ivATI,
  glNormalStream3sATI,
  glNormalStream3svATI,
  glObjectLabel,
  glObjectLabelKHR,
  glObjectPtrLabel,
  glObjectPtrLabelKHR,
  glObjectPurgeableAPPLE,
  glObjectUnpurgeableAPPLE,
  glOrtho,
  glOrthof,
  glOrthofOES,
  glOrthox,
  glOrthoxOES,
  glPNTrianglesfATI,
  glPNTrianglesiATI,
  glPassTexCoordATI,
  glPassThrough,
  glPassThroughxOES,
  glPatchParameterfv,
  glPatchParameteri,
  glPatchParameteriEXT,
  glPatchParameteriOES,
  glPathColorGenNV,
  glPathCommandsNV,
  glPathCoordsNV,
  glPathCoverDepthFuncNV,
  glPathDashArrayNV,
  glPathFogGenNV,
  glPathGlyphIndexArrayNV,
  glPathGlyphIndexRangeNV,
  glPathGlyphRangeNV,
  glPathGlyphsNV,
  glPathMemoryGlyphIndexArrayNV,
  glPathParameterfNV,
  glPathParameterfvNV,
  glPathParameteriNV,
  glPathParameterivNV,
  glPathStencilDepthOffsetNV,
  glPathStencilFuncNV,
  glPathStringNV,
  glPathSubCommandsNV,
  glPathSubCoordsNV,
  glPathTexGenNV,
  glPauseTransformFeedback,
  glPauseTransformFeedbackNV,
  glPixelDataRangeNV,
  glPixelMapfv,
  glPixelMapuiv,
  glPixelMapusv,
  glPixelMapx,
  glPixelStoref,
  glPixelStorei,
  glPixelStorex,
  glPixelTexGenParameterfSGIS,
  glPixelTexGenParameterfvSGIS,
  glPixelTexGenParameteriSGIS,
  glPixelTexGenParameterivSGIS,
  glPixelTexGenSGIX,
  glPixelTransferf,
  glPixelTransferi,
  glPixelTransferxOES,
  glPixelTransformParameterfEXT,
  glPixelTransformParameterfvEXT,
  glPixelTransformParameteriEXT,
  glPixelTransformParameterivEXT,
  glPixelZoom,
  glPixelZoomxOES,
  glPointAlongPathNV,
  glPointParameterf,
  glPointParameterfARB,
  glPointParameterfEXT,
  glPointParameterfSGIS,
  glPointParameterfv,
  glPointParameterfvARB,
  glPointParameterfvEXT,
  glPointParameterfvSGIS,
  glPointParameteri,
  glPointParameteriNV,
  glPointParameteriv,
  glPointParameterivNV,
  glPointParameterx,
  glPointParameterxOES,
  glPointParameterxv,
  glPointParameterxvOES,
  glPointSize,
  glPointSizePointerOES,
  glPointSizex,
  glPointSizexOES,
  glPollAsyncSGIX,
  glPollInstrumentsSGIX,
  glPolygonMode,
  glPolygonOffset,
  glPolygonOffsetClampEXT,
  glPolygonOffsetEXT,
  glPolygonOffsetx,
  glPolygonOffsetxOES,
  glPolygonStipple,
  glPopAttrib,
  glPopClientAttrib,
  glPopDebugGroup,
  glPopDebugGroupKHR,
  glPopGroupMarkerEXT,
  glPopMatrix,
  glPopName,
  glPresentFrameDualFillNV,
  glPresentFrameKeyedNV,
  glPrimitiveBoundingBoxEXT,
  glPrimitiveBoundingBoxOES,
  glPrimitiveRestartIndex,
  glPrimitiveRestartIndexNV,
  glPrimitiveRestartNV,
  glPrioritizeTextures,
  glPrioritizeTexturesEXT,
  glPrioritizeTexturesxOES,
  glProgramBinary,
  glProgramBinaryOES,
  glProgramBufferParametersIivNV,
  glProgramBufferParametersIuivNV,
  glProgramBufferParametersfvNV,
  glProgramEnvParameter4dARB,
  glProgramEnvParameter4dvARB,
  glProgramEnvParameter4fARB,
  glProgramEnvParameter4fvARB,
  glProgramEnvParameterI4iNV,
  glProgramEnvParameterI4ivNV,
  glProgramEnvParameterI4uiNV,
  glProgramEnvParameterI4uivNV,
  glProgramEnvParameters4fvEXT,
  glProgramEnvParametersI4ivNV,
  glProgramEnvParametersI4uivNV,
  glProgramLocalParameter4dARB,
  glProgramLocalParameter4dvARB,
  glProgramLocalParameter4fARB,
  glProgramLocalParameter4fvARB,
  glProgramLocalParameterI4iNV,
  glProgramLocalParameterI4ivNV,
  glProgramLocalParameterI4uiNV,
  glProgramLocalParameterI4uivNV,
  glProgramLocalParameters4fvEXT,
  glProgramLocalParametersI4ivNV,
  glProgramLocalParametersI4uivNV,
  glProgramNamedParameter4dNV,
  glProgramNamedParameter4dvNV,
  glProgramNamedParameter4fNV,
  glProgramNamedParameter4fvNV,
  glProgramParameter4dNV,
  glProgramParameter4dvNV,
  glProgramParameter4fNV,
  glProgramParameter4fvNV,
  glProgramParameteri,
  glProgramParameteriARB,
  glProgramParameteriEXT,
  glProgramParameters4dvNV,
  glProgramParameters4fvNV,
  glProgramPathFragmentInputGenNV,
  glProgramStringARB,
  glProgramSubroutineParametersuivNV,
  glProgramUniform1d,
  glProgramUniform1dEXT,
  glProgramUniform1dv,
  glProgramUniform1dvEXT,
  glProgramUniform1f,
  glProgramUniform1fEXT,
  glProgramUniform1fv,
  glProgramUniform1fvEXT,
  glProgramUniform1i,
  glProgramUniform1i64NV,
  glProgramUniform1i64vNV,
  glProgramUniform1iEXT,
  glProgramUniform1iv,
  glProgramUniform1ivEXT,
  glProgramUniform1ui,
  glProgramUniform1ui64NV,
  glProgramUniform1ui64vNV,
  glProgramUniform1uiEXT,
  glProgramUniform1uiv,
  glProgramUniform1uivEXT,
  glProgramUniform2d,
  glProgramUniform2dEXT,
  glProgramUniform2dv,
  glProgramUniform2dvEXT,
  glProgramUniform2f,
  glProgramUniform2fEXT,
  glProgramUniform2fv,
  glProgramUniform2fvEXT,
  glProgramUniform2i,
  glProgramUniform2i64NV,
  glProgramUniform2i64vNV,
  glProgramUniform2iEXT,
  glProgramUniform2iv,
  glProgramUniform2ivEXT,
  glProgramUniform2ui,
  glProgramUniform2ui64NV,
  glProgramUniform2ui64vNV,
  glProgramUniform2uiEXT,
  glProgramUniform2uiv,
  glProgramUniform2uivEXT,
  glProgramUniform3d,
  glProgramUniform3dEXT,
  glProgramUniform3dv,
  glProgramUniform3dvEXT,
  glProgramUniform3f,
  glProgramUniform3fEXT,
  glProgramUniform3fv,
  glProgramUniform3fvEXT,
  glProgramUniform3i,
  glProgramUniform3i64NV,
  glProgramUniform3i64vNV,
  glProgramUniform3iEXT,
  glProgramUniform3iv,
  glProgramUniform3ivEXT,
  glProgramUniform3ui,
  glProgramUniform3ui64NV,
  glProgramUniform3ui64vNV,
  glProgramUniform3uiEXT,
  glProgramUniform3uiv,
  glProgramUniform3uivEXT,
  glProgramUniform4d,
  glProgramUniform4dEXT,
  glProgramUniform4dv,
  glProgramUniform4dvEXT,
  glProgramUniform4f,
  glProgramUniform4fEXT,
  glProgramUniform4fv,
  glProgramUniform4fvEXT,
  glProgramUniform4i,
  glProgramUniform4i64NV,
  glProgramUniform4i64vNV,
  glProgramUniform4iEXT,
  glProgramUniform4iv,
  glProgramUniform4ivEXT,
  glProgramUniform4ui,
  glProgramUniform4ui64NV,
  glProgramUniform4ui64vNV,
  glProgramUniform4uiEXT,
  glProgramUniform4uiv,
  glProgramUniform4uivEXT,
  glProgramUniformHandleui64ARB,
  glProgramUniformHandleui64NV,
  glProgramUniformHandleui64vARB,
  glProgramUniformHandleui64vNV,
  glProgramUniformMatrix2dv,
  glProgramUniformMatrix2dvEXT,
  glProgramUniformMatrix2fv,
  glProgramUniformMatrix2fvEXT,
  glProgramUniformMatrix2x3dv,
  glProgramUniformMatrix2x3dvEXT,
  glProgramUniformMatrix2x3fv,
  glProgramUniformMatrix2x3fvEXT,
  glProgramUniformMatrix2x4dv,
  glProgramUniformMatrix2x4dvEXT,
  glProgramUniformMatrix2x4fv,
  glProgramUniformMatrix2x4fvEXT,
  glProgramUniformMatrix3dv,
  glProgramUniformMatrix3dvEXT,
  glProgramUniformMatrix3fv,
  glProgramUniformMatrix3fvEXT,
  glProgramUniformMatrix3x2dv,
  glProgramUniformMatrix3x2dvEXT,
  glProgramUniformMatrix3x2fv,
  glProgramUniformMatrix3x2fvEXT,
  glProgramUniformMatrix3x4dv,
  glProgramUniformMatrix3x4dvEXT,
  glProgramUniformMatrix3x4fv,
  glProgramUniformMatrix3x4fvEXT,
  glProgramUniformMatrix4dv,
  glProgramUniformMatrix4dvEXT,
  glProgramUniformMatrix4fv,
  glProgramUniformMatrix4fvEXT,
  glProgramUniformMatrix4x2dv,
  glProgramUniformMatrix4x2dvEXT,
  glProgramUniformMatrix4x2fv,
  glProgramUniformMatrix4x2fvEXT,
  glProgramUniformMatrix4x3dv,
  glProgramUniformMatrix4x3dvEXT,
  glProgramUniformMatrix4x3fv,
  glProgramUniformMatrix4x3fvEXT,
  glProgramUniformui64NV,
  glProgramUniformui64vNV,
  glProgramVertexLimitNV,
  glProvokingVertex,
  glProvokingVertexEXT,
  glPushAttrib,
  glPushClientAttrib,
  glPushClientAttribDefaultEXT,
  glPushDebugGroup,
  glPushDebugGroupKHR,
  glPushGroupMarkerEXT,
  glPushMatrix,
  glPushName,
  glQueryCounter,
  glQueryCounterEXT,
  glQueryMatrixxOES,
  glQueryObjectParameteruiAMD,
  glRasterPos2d,
  glRasterPos2dv,
  glRasterPos2f,
  glRasterPos2fv,
  glRasterPos2i,
  glRasterPos2iv,
  glRasterPos2s,
  glRasterPos2sv,
  glRasterPos2xOES,
  glRasterPos2xvOES,
  glRasterPos3d,
  glRasterPos3dv,
  glRasterPos3f,
  glRasterPos3fv,
  glRasterPos3i,
  glRasterPos3iv,
  glRasterPos3s,
  glRasterPos3sv,
  glRasterPos3xOES,
  glRasterPos3xvOES,
  glRasterPos4d,
  glRasterPos4dv,
  glRasterPos4f,
  glRasterPos4fv,
  glRasterPos4i,
  glRasterPos4iv,
  glRasterPos4s,
  glRasterPos4sv,
  glRasterPos4xOES,
  glRasterPos4xvOES,
  glRasterSamplesEXT,
  glReadBuffer,
  glReadBufferIndexedEXT,
  glReadBufferNV,
  glReadInstrumentsSGIX,
  glReadPixels,
  glReadnPixels,
  glReadnPixelsARB,
  glReadnPixelsEXT,
  glReadnPixelsKHR,
  glRectd,
  glRectdv,
  glRectf,
  glRectfv,
  glRecti,
  glRectiv,
  glRects,
  glRectsv,
  glRectxOES,
  glRectxvOES,
  glReferencePlaneSGIX,
  glReleaseShaderCompiler,
  glRenderMode,
  glRenderbufferStorage,
  glRenderbufferStorageEXT,
  glRenderbufferStorageMultisample,
  glRenderbufferStorageMultisampleANGLE,
  glRenderbufferStorageMultisampleAPPLE,
  glRenderbufferStorageMultisampleCoverageNV,
  glRenderbufferStorageMultisampleEXT,
  glRenderbufferStorageMultisampleIMG,
  glRenderbufferStorageMultisampleNV,
  glRenderbufferStorageOES,
  glReplacementCodePointerSUN,
  glReplacementCodeubSUN,
  glReplacementCodeubvSUN,
  glReplacementCodeuiColor3fVertex3fSUN,
  glReplacementCodeuiColor3fVertex3fvSUN,
  glReplacementCodeuiColor4fNormal3fVertex3fSUN,
  glReplacementCodeuiColor4fNormal3fVertex3fvSUN,
  glReplacementCodeuiColor4ubVertex3fSUN,
  glReplacementCodeuiColor4ubVertex3fvSUN,
  glReplacementCodeuiNormal3fVertex3fSUN,
  glReplacementCodeuiNormal3fVertex3fvSUN,
  glReplacementCodeuiSUN,
  glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fSUN,
  glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fvSUN,
  glReplacementCodeuiTexCoord2fNormal3fVertex3fSUN,
  glReplacementCodeuiTexCoord2fNormal3fVertex3fvSUN,
  glReplacementCodeuiTexCoord2fVertex3fSUN,
  glReplacementCodeuiTexCoord2fVertex3fvSUN,
  glReplacementCodeuiVertex3fSUN,
  glReplacementCodeuiVertex3fvSUN,
  glReplacementCodeuivSUN,
  glReplacementCodeusSUN,
  glReplacementCodeusvSUN,
  glRequestResidentProgramsNV,
  glResetHistogram,
  glResetHistogramEXT,
  glResetMinmax,
  glResetMinmaxEXT,
  glResizeBuffersMESA,
  glResolveDepthValuesNV,
  glResolveMultisampleFramebufferAPPLE,
  glResumeTransformFeedback,
  glResumeTransformFeedbackNV,
  glRotated,
  glRotatef,
  glRotatex,
  glRotatexOES,
  glSampleCoverage,
  glSampleCoverageARB,
  glSampleCoverageOES,
  glSampleCoveragex,
  glSampleCoveragexOES,
  glSampleMapATI,
  glSampleMaskEXT,
  glSampleMaskIndexedNV,
  glSampleMaskSGIS,
  glSampleMaski,
  glSamplePatternEXT,
  glSamplePatternSGIS,
  glSamplerParameterIiv,
  glSamplerParameterIivEXT,
  glSamplerParameterIivOES,
  glSamplerParameterIuiv,
  glSamplerParameterIuivEXT,
  glSamplerParameterIuivOES,
  glSamplerParameterf,
  glSamplerParameterfv,
  glSamplerParameteri,
  glSamplerParameteriv,
  glScaled,
  glScalef,
  glScalex,
  glScalexOES,
  glScissor,
  glScissorArrayv,
  glScissorArrayvNV,
  glScissorIndexed,
  glScissorIndexedNV,
  glScissorIndexedv,
  glScissorIndexedvNV,
  glSecondaryColor3b,
  glSecondaryColor3bEXT,
  glSecondaryColor3bv,
  glSecondaryColor3bvEXT,
  glSecondaryColor3d,
  glSecondaryColor3dEXT,
  glSecondaryColor3dv,
  glSecondaryColor3dvEXT,
  glSecondaryColor3f,
  glSecondaryColor3fEXT,
  glSecondaryColor3fv,
  glSecondaryColor3fvEXT,
  glSecondaryColor3hNV,
  glSecondaryColor3hvNV,
  glSecondaryColor3i,
  glSecondaryColor3iEXT,
  glSecondaryColor3iv,
  glSecondaryColor3ivEXT,
  glSecondaryColor3s,
  glSecondaryColor3sEXT,
  glSecondaryColor3sv,
  glSecondaryColor3svEXT,
  glSecondaryColor3ub,
  glSecondaryColor3ubEXT,
  glSecondaryColor3ubv,
  glSecondaryColor3ubvEXT,
  glSecondaryColor3ui,
  glSecondaryColor3uiEXT,
  glSecondaryColor3uiv,
  glSecondaryColor3uivEXT,
  glSecondaryColor3us,
  glSecondaryColor3usEXT,
  glSecondaryColor3usv,
  glSecondaryColor3usvEXT,
  glSecondaryColorFormatNV,
  glSecondaryColorP3ui,
  glSecondaryColorP3uiv,
  glSecondaryColorPointer,
  glSecondaryColorPointerEXT,
  glSecondaryColorPointerListIBM,
  glSelectBuffer,
  glSelectPerfMonitorCountersAMD,
  glSeparableFilter2D,
  glSeparableFilter2DEXT,
  glSetFenceAPPLE,
  glSetFenceNV,
  glSetFragmentShaderConstantATI,
  glSetInvariantEXT,
  glSetLocalConstantEXT,
  glSetMultisamplefvAMD,
  glShadeModel,
  glShaderBinary,
  glShaderOp1EXT,
  glShaderOp2EXT,
  glShaderOp3EXT,
  glShaderSource,
  glShaderSourceARB,
  glShaderStorageBlockBinding,
  glSharpenTexFuncSGIS,
  glSpriteParameterfSGIX,
  glSpriteParameterfvSGIX,
  glSpriteParameteriSGIX,
  glSpriteParameterivSGIX,
  glStartInstrumentsSGIX,
  glStartTilingQCOM,
  glStencilClearTagEXT,
  glStencilFillPathInstancedNV,
  glStencilFillPathNV,
  glStencilFunc,
  glStencilFuncSeparate,
  glStencilFuncSeparateATI,
  glStencilMask,
  glStencilMaskSeparate,
  glStencilOp,
  glStencilOpSeparate,
  glStencilOpSeparateATI,
  glStencilOpValueAMD,
  glStencilStrokePathInstancedNV,
  glStencilStrokePathNV,
  glStencilThenCoverFillPathInstancedNV,
  glStencilThenCoverFillPathNV,
  glStencilThenCoverStrokePathInstancedNV,
  glStencilThenCoverStrokePathNV,
  glStopInstrumentsSGIX,
  glStringMarkerGREMEDY,
  glSubpixelPrecisionBiasNV,
  glSwizzleEXT,
  glSyncTextureINTEL,
  glTagSampleBufferSGIX,
  glTangent3bEXT,
  glTangent3bvEXT,
  glTangent3dEXT,
  glTangent3dvEXT,
  glTangent3fEXT,
  glTangent3fvEXT,
  glTangent3iEXT,
  glTangent3ivEXT,
  glTangent3sEXT,
  glTangent3svEXT,
  glTangentPointerEXT,
  glTbufferMask3DFX,
  glTessellationFactorAMD,
  glTessellationModeAMD,
  glTestFenceAPPLE,
  glTestFenceNV,
  glTestObjectAPPLE,
  glTexBuffer,
  glTexBufferARB,
  glTexBufferEXT,
  glTexBufferOES,
  glTexBufferRange,
  glTexBufferRangeEXT,
  glTexBufferRangeOES,
  glTexBumpParameterfvATI,
  glTexBumpParameterivATI,
  glTexCoord1bOES,
  glTexCoord1bvOES,
  glTexCoord1d,
  glTexCoord1dv,
  glTexCoord1f,
  glTexCoord1fv,
  glTexCoord1hNV,
  glTexCoord1hvNV,
  glTexCoord1i,
  glTexCoord1iv,
  glTexCoord1s,
  glTexCoord1sv,
  glTexCoord1xOES,
  glTexCoord1xvOES,
  glTexCoord2bOES,
  glTexCoord2bvOES,
  glTexCoord2d,
  glTexCoord2dv,
  glTexCoord2f,
  glTexCoord2fColor3fVertex3fSUN,
  glTexCoord2fColor3fVertex3fvSUN,
  glTexCoord2fColor4fNormal3fVertex3fSUN,
  glTexCoord2fColor4fNormal3fVertex3fvSUN,
  glTexCoord2fColor4ubVertex3fSUN,
  glTexCoord2fColor4ubVertex3fvSUN,
  glTexCoord2fNormal3fVertex3fSUN,
  glTexCoord2fNormal3fVertex3fvSUN,
  glTexCoord2fVertex3fSUN,
  glTexCoord2fVertex3fvSUN,
  glTexCoord2fv,
  glTexCoord2hNV,
  glTexCoord2hvNV,
  glTexCoord2i,
  glTexCoord2iv,
  glTexCoord2s,
  glTexCoord2sv,
  glTexCoord2xOES,
  glTexCoord2xvOES,
  glTexCoord3bOES,
  glTexCoord3bvOES,
  glTexCoord3d,
  glTexCoord3dv,
  glTexCoord3f,
  glTexCoord3fv,
  glTexCoord3hNV,
  glTexCoord3hvNV,
  glTexCoord3i,
  glTexCoord3iv,
  glTexCoord3s,
  glTexCoord3sv,
  glTexCoord3xOES,
  glTexCoord3xvOES,
  glTexCoord4bOES,
  glTexCoord4bvOES,
  glTexCoord4d,
  glTexCoord4dv,
  glTexCoord4f,
  glTexCoord4fColor4fNormal3fVertex4fSUN,
  glTexCoord4fColor4fNormal3fVertex4fvSUN,
  glTexCoord4fVertex4fSUN,
  glTexCoord4fVertex4fvSUN,
  glTexCoord4fv,
  glTexCoord4hNV,
  glTexCoord4hvNV,
  glTexCoord4i,
  glTexCoord4iv,
  glTexCoord4s,
  glTexCoord4sv,
  glTexCoord4xOES,
  glTexCoord4xvOES,
  glTexCoordFormatNV,
  glTexCoordP1ui,
  glTexCoordP1uiv,
  glTexCoordP2ui,
  glTexCoordP2uiv,
  glTexCoordP3ui,
  glTexCoordP3uiv,
  glTexCoordP4ui,
  glTexCoordP4uiv,
  glTexCoordPointer,
  glTexCoordPointerEXT,
  glTexCoordPointerListIBM,
  glTexCoordPointervINTEL,
  glTexEnvf,
  glTexEnvfv,
  glTexEnvi,
  glTexEnviv,
  glTexEnvx,
  glTexEnvxOES,
  glTexEnvxv,
  glTexEnvxvOES,
  glTexFilterFuncSGIS,
  glTexGend,
  glTexGendv,
  glTexGenf,
  glTexGenfOES,
  glTexGenfv,
  glTexGenfvOES,
  glTexGeni,
  glTexGeniOES,
  glTexGeniv,
  glTexGenivOES,
  glTexGenxOES,
  glTexGenxvOES,
  glTexImage1D,
  glTexImage2D,
  glTexImage2DMultisample,
  glTexImage2DMultisampleCoverageNV,
  glTexImage3D,
  glTexImage3DEXT,
  glTexImage3DMultisample,
  glTexImage3DMultisampleCoverageNV,
  glTexImage3DOES,
  glTexImage4DSGIS,
  glTexPageCommitmentARB,
  glTexParameterIiv,
  glTexParameterIivEXT,
  glTexParameterIivOES,
  glTexParameterIuiv,
  glTexParameterIuivEXT,
  glTexParameterIuivOES,
  glTexParameterf,
  glTexParameterfv,
  glTexParameteri,
  glTexParameteriv,
  glTexParameterx,
  glTexParameterxOES,
  glTexParameterxv,
  glTexParameterxvOES,
  glTexRenderbufferNV,
  glTexStorage1D,
  glTexStorage1DEXT,
  glTexStorage2D,
  glTexStorage2DEXT,
  glTexStorage2DMultisample,
  glTexStorage3D,
  glTexStorage3DEXT,
  glTexStorage3DMultisample,
  glTexStorage3DMultisampleOES,
  glTexStorageSparseAMD,
  glTexSubImage1D,
  glTexSubImage1DEXT,
  glTexSubImage2D,
  glTexSubImage2DEXT,
  glTexSubImage3D,
  glTexSubImage3DEXT,
  glTexSubImage3DOES,
  glTexSubImage4DSGIS,
  glTextureBarrier,
  glTextureBarrierNV,
  glTextureBuffer,
  glTextureBufferEXT,
  glTextureBufferRange,
  glTextureBufferRangeEXT,
  glTextureColorMaskSGIS,
  glTextureImage1DEXT,
  glTextureImage2DEXT,
  glTextureImage2DMultisampleCoverageNV,
  glTextureImage2DMultisampleNV,
  glTextureImage3DEXT,
  glTextureImage3DMultisampleCoverageNV,
  glTextureImage3DMultisampleNV,
  glTextureLightEXT,
  glTextureMaterialEXT,
  glTextureNormalEXT,
  glTexturePageCommitmentEXT,
  glTextureParameterIiv,
  glTextureParameterIivEXT,
  glTextureParameterIuiv,
  glTextureParameterIuivEXT,
  glTextureParameterf,
  glTextureParameterfEXT,
  glTextureParameterfv,
  glTextureParameterfvEXT,
  glTextureParameteri,
  glTextureParameteriEXT,
  glTextureParameteriv,
  glTextureParameterivEXT,
  glTextureRangeAPPLE,
  glTextureRenderbufferEXT,
  glTextureStorage1D,
  glTextureStorage1DEXT,
  glTextureStorage2D,
  glTextureStorage2DEXT,
  glTextureStorage2DMultisample,
  glTextureStorage2DMultisampleEXT,
  glTextureStorage3D,
  glTextureStorage3DEXT,
  glTextureStorage3DMultisample,
  glTextureStorage3DMultisampleEXT,
  glTextureStorageSparseAMD,
  glTextureSubImage1D,
  glTextureSubImage1DEXT,
  glTextureSubImage2D,
  glTextureSubImage2DEXT,
  glTextureSubImage3D,
  glTextureSubImage3DEXT,
  glTextureView,
  glTextureViewEXT,
  glTextureViewOES,
  glTrackMatrixNV,
  glTransformFeedbackAttribsNV,
  glTransformFeedbackBufferBase,
  glTransformFeedbackBufferRange,
  glTransformFeedbackStreamAttribsNV,
  glTransformFeedbackVaryings,
  glTransformFeedbackVaryingsEXT,
  glTransformFeedbackVaryingsNV,
  glTransformPathNV,
  glTranslated,
  glTranslatef,
  glTranslatex,
  glTranslatexOES,
  glUniform1d,
  glUniform1dv,
  glUniform1f,
  glUniform1fARB,
  glUniform1fv,
  glUniform1fvARB,
  glUniform1i,
  glUniform1i64NV,
  glUniform1i64vNV,
  glUniform1iARB,
  glUniform1iv,
  glUniform1ivARB,
  glUniform1ui,
  glUniform1ui64NV,
  glUniform1ui64vNV,
  glUniform1uiEXT,
  glUniform1uiv,
  glUniform1uivEXT,
  glUniform2d,
  glUniform2dv,
  glUniform2f,
  glUniform2fARB,
  glUniform2fv,
  glUniform2fvARB,
  glUniform2i,
  glUniform2i64NV,
  glUniform2i64vNV,
  glUniform2iARB,
  glUniform2iv,
  glUniform2ivARB,
  glUniform2ui,
  glUniform2ui64NV,
  glUniform2ui64vNV,
  glUniform2uiEXT,
  glUniform2uiv,
  glUniform2uivEXT,
  glUniform3d,
  glUniform3dv,
  glUniform3f,
  glUniform3fARB,
  glUniform3fv,
  glUniform3fvARB,
  glUniform3i,
  glUniform3i64NV,
  glUniform3i64vNV,
  glUniform3iARB,
  glUniform3iv,
  glUniform3ivARB,
  glUniform3ui,
  glUniform3ui64NV,
  glUniform3ui64vNV,
  glUniform3uiEXT,
  glUniform3uiv,
  glUniform3uivEXT,
  glUniform4d,
  glUniform4dv,
  glUniform4f,
  glUniform4fARB,
  glUniform4fv,
  glUniform4fvARB,
  glUniform4i,
  glUniform4i64NV,
  glUniform4i64vNV,
  glUniform4iARB,
  glUniform4iv,
  glUniform4ivARB,
  glUniform4ui,
  glUniform4ui64NV,
  glUniform4ui64vNV,
  glUniform4uiEXT,
  glUniform4uiv,
  glUniform4uivEXT,
  glUniformBlockBinding,
  glUniformBufferEXT,
  glUniformHandleui64ARB,
  glUniformHandleui64NV,
  glUniformHandleui64vARB,
  glUniformHandleui64vNV,
  glUniformMatrix2dv,
  glUniformMatrix2fv,
  glUniformMatrix2fvARB,
  glUniformMatrix2x3dv,
  glUniformMatrix2x3fv,
  glUniformMatrix2x3fvNV,
  glUniformMatrix2x4dv,
  glUniformMatrix2x4fv,
  glUniformMatrix2x4fvNV,
  glUniformMatrix3dv,
  glUniformMatrix3fv,
  glUniformMatrix3fvARB,
  glUniformMatrix3x2dv,
  glUniformMatrix3x2fv,
  glUniformMatrix3x2fvNV,
  glUniformMatrix3x4dv,
  glUniformMatrix3x4fv,
  glUniformMatrix3x4fvNV,
  glUniformMatrix4dv,
  glUniformMatrix4fv,
  glUniformMatrix4fvARB,
  glUniformMatrix4x2dv,
  glUniformMatrix4x2fv,
  glUniformMatrix4x2fvNV,
  glUniformMatrix4x3dv,
  glUniformMatrix4x3fv,
  glUniformMatrix4x3fvNV,
  glUniformSubroutinesuiv,
  glUniformui64NV,
  glUniformui64vNV,
  glUnlockArraysEXT,
  glUnmapBuffer,
  glUnmapBufferARB,
  glUnmapBufferOES,
  glUnmapNamedBuffer,
  glUnmapNamedBufferEXT,
  glUnmapObjectBufferATI,
  glUnmapTexture2DINTEL,
  glUpdateObjectBufferATI,
  glUseProgram,
  glUseProgramObjectARB,
  glUseProgramStages,
  glUseProgramStagesEXT,
  glUseShaderProgramEXT,
  glVDPAUFiniNV,
  glVDPAUGetSurfaceivNV,
  glVDPAUInitNV,
  glVDPAUIsSurfaceNV,
  glVDPAUMapSurfacesNV,
  glVDPAURegisterOutputSurfaceNV,
  glVDPAURegisterVideoSurfaceNV,
  glVDPAUSurfaceAccessNV,
  glVDPAUUnmapSurfacesNV,
  glVDPAUUnregisterSurfaceNV,
  glValidateProgram,
  glValidateProgramARB,
  glValidateProgramPipeline,
  glValidateProgramPipelineEXT,
  glVariantArrayObjectATI,
  glVariantPointerEXT,
  glVariantbvEXT,
  glVariantdvEXT,
  glVariantfvEXT,
  glVariantivEXT,
  glVariantsvEXT,
  glVariantubvEXT,
  glVariantuivEXT,
  glVariantusvEXT,
  glVertex2bOES,
  glVertex2bvOES,
  glVertex2d,
  glVertex2dv,
  glVertex2f,
  glVertex2fv,
  glVertex2hNV,
  glVertex2hvNV,
  glVertex2i,
  glVertex2iv,
  glVertex2s,
  glVertex2sv,
  glVertex2xOES,
  glVertex2xvOES,
  glVertex3bOES,
  glVertex3bvOES,
  glVertex3d,
  glVertex3dv,
  glVertex3f,
  glVertex3fv,
  glVertex3hNV,
  glVertex3hvNV,
  glVertex3i,
  glVertex3iv,
  glVertex3s,
  glVertex3sv,
  glVertex3xOES,
  glVertex3xvOES,
  glVertex4bOES,
  glVertex4bvOES,
  glVertex4d,
  glVertex4dv,
  glVertex4f,
  glVertex4fv,
  glVertex4hNV,
  glVertex4hvNV,
  glVertex4i,
  glVertex4iv,
  glVertex4s,
  glVertex4sv,
  glVertex4xOES,
  glVertex4xvOES,
  glVertexArrayAttribBinding,
  glVertexArrayAttribFormat,
  glVertexArrayAttribIFormat,
  glVertexArrayAttribLFormat,
  glVertexArrayBindVertexBufferEXT,
  glVertexArrayBindingDivisor,
  glVertexArrayColorOffsetEXT,
  glVertexArrayEdgeFlagOffsetEXT,
  glVertexArrayElementBuffer,
  glVertexArrayFogCoordOffsetEXT,
  glVertexArrayIndexOffsetEXT,
  glVertexArrayMultiTexCoordOffsetEXT,
  glVertexArrayNormalOffsetEXT,
  glVertexArrayParameteriAPPLE,
  glVertexArrayRangeAPPLE,
  glVertexArrayRangeNV,
  glVertexArraySecondaryColorOffsetEXT,
  glVertexArrayTexCoordOffsetEXT,
  glVertexArrayVertexAttribBindingEXT,
  glVertexArrayVertexAttribDivisorEXT,
  glVertexArrayVertexAttribFormatEXT,
  glVertexArrayVertexAttribIFormatEXT,
  glVertexArrayVertexAttribIOffsetEXT,
  glVertexArrayVertexAttribLFormatEXT,
  glVertexArrayVertexAttribLOffsetEXT,
  glVertexArrayVertexAttribOffsetEXT,
  glVertexArrayVertexBindingDivisorEXT,
  glVertexArrayVertexBuffer,
  glVertexArrayVertexBuffers,
  glVertexArrayVertexOffsetEXT,
  glVertexAttrib1d,
  glVertexAttrib1dARB,
  glVertexAttrib1dNV,
  glVertexAttrib1dv,
  glVertexAttrib1dvARB,
  glVertexAttrib1dvNV,
  glVertexAttrib1f,
  glVertexAttrib1fARB,
  glVertexAttrib1fNV,
  glVertexAttrib1fv,
  glVertexAttrib1fvARB,
  glVertexAttrib1fvNV,
  glVertexAttrib1hNV,
  glVertexAttrib1hvNV,
  glVertexAttrib1s,
  glVertexAttrib1sARB,
  glVertexAttrib1sNV,
  glVertexAttrib1sv,
  glVertexAttrib1svARB,
  glVertexAttrib1svNV,
  glVertexAttrib2d,
  glVertexAttrib2dARB,
  glVertexAttrib2dNV,
  glVertexAttrib2dv,
  glVertexAttrib2dvARB,
  glVertexAttrib2dvNV,
  glVertexAttrib2f,
  glVertexAttrib2fARB,
  glVertexAttrib2fNV,
  glVertexAttrib2fv,
  glVertexAttrib2fvARB,
  glVertexAttrib2fvNV,
  glVertexAttrib2hNV,
  glVertexAttrib2hvNV,
  glVertexAttrib2s,
  glVertexAttrib2sARB,
  glVertexAttrib2sNV,
  glVertexAttrib2sv,
  glVertexAttrib2svARB,
  glVertexAttrib2svNV,
  glVertexAttrib3d,
  glVertexAttrib3dARB,
  glVertexAttrib3dNV,
  glVertexAttrib3dv,
  glVertexAttrib3dvARB,
  glVertexAttrib3dvNV,
  glVertexAttrib3f,
  glVertexAttrib3fARB,
  glVertexAttrib3fNV,
  glVertexAttrib3fv,
  glVertexAttrib3fvARB,
  glVertexAttrib3fvNV,
  glVertexAttrib3hNV,
  glVertexAttrib3hvNV,
  glVertexAttrib3s,
  glVertexAttrib3sARB,
  glVertexAttrib3sNV,
  glVertexAttrib3sv,
  glVertexAttrib3svARB,
  glVertexAttrib3svNV,
  glVertexAttrib4Nbv,
  glVertexAttrib4NbvARB,
  glVertexAttrib4Niv,
  glVertexAttrib4NivARB,
  glVertexAttrib4Nsv,
  glVertexAttrib4NsvARB,
  glVertexAttrib4Nub,
  glVertexAttrib4NubARB,
  glVertexAttrib4Nubv,
  glVertexAttrib4NubvARB,
  glVertexAttrib4Nuiv,
  glVertexAttrib4NuivARB,
  glVertexAttrib4Nusv,
  glVertexAttrib4NusvARB,
  glVertexAttrib4bv,
  glVertexAttrib4bvARB,
  glVertexAttrib4d,
  glVertexAttrib4dARB,
  glVertexAttrib4dNV,
  glVertexAttrib4dv,
  glVertexAttrib4dvARB,
  glVertexAttrib4dvNV,
  glVertexAttrib4f,
  glVertexAttrib4fARB,
  glVertexAttrib4fNV,
  glVertexAttrib4fv,
  glVertexAttrib4fvARB,
  glVertexAttrib4fvNV,
  glVertexAttrib4hNV,
  glVertexAttrib4hvNV,
  glVertexAttrib4iv,
  glVertexAttrib4ivARB,
  glVertexAttrib4s,
  glVertexAttrib4sARB,
  glVertexAttrib4sNV,
  glVertexAttrib4sv,
  glVertexAttrib4svARB,
  glVertexAttrib4svNV,
  glVertexAttrib4ubNV,
  glVertexAttrib4ubv,
  glVertexAttrib4ubvARB,
  glVertexAttrib4ubvNV,
  glVertexAttrib4uiv,
  glVertexAttrib4uivARB,
  glVertexAttrib4usv,
  glVertexAttrib4usvARB,
  glVertexAttribArrayObjectATI,
  glVertexAttribBinding,
  glVertexAttribDivisor,
  glVertexAttribDivisorANGLE,
  glVertexAttribDivisorARB,
  glVertexAttribDivisorEXT,
  glVertexAttribDivisorNV,
  glVertexAttribFormat,
  glVertexAttribFormatNV,
  glVertexAttribI1i,
  glVertexAttribI1iEXT,
  glVertexAttribI1iv,
  glVertexAttribI1ivEXT,
  glVertexAttribI1ui,
  glVertexAttribI1uiEXT,
  glVertexAttribI1uiv,
  glVertexAttribI1uivEXT,
  glVertexAttribI2i,
  glVertexAttribI2iEXT,
  glVertexAttribI2iv,
  glVertexAttribI2ivEXT,
  glVertexAttribI2ui,
  glVertexAttribI2uiEXT,
  glVertexAttribI2uiv,
  glVertexAttribI2uivEXT,
  glVertexAttribI3i,
  glVertexAttribI3iEXT,
  glVertexAttribI3iv,
  glVertexAttribI3ivEXT,
  glVertexAttribI3ui,
  glVertexAttribI3uiEXT,
  glVertexAttribI3uiv,
  glVertexAttribI3uivEXT,
  glVertexAttribI4bv,
  glVertexAttribI4bvEXT,
  glVertexAttribI4i,
  glVertexAttribI4iEXT,
  glVertexAttribI4iv,
  glVertexAttribI4ivEXT,
  glVertexAttribI4sv,
  glVertexAttribI4svEXT,
  glVertexAttribI4ubv,
  glVertexAttribI4ubvEXT,
  glVertexAttribI4ui,
  glVertexAttribI4uiEXT,
  glVertexAttribI4uiv,
  glVertexAttribI4uivEXT,
  glVertexAttribI4usv,
  glVertexAttribI4usvEXT,
  glVertexAttribIFormat,
  glVertexAttribIFormatNV,
  glVertexAttribIPointer,
  glVertexAttribIPointerEXT,
  glVertexAttribL1d,
  glVertexAttribL1dEXT,
  glVertexAttribL1dv,
  glVertexAttribL1dvEXT,
  glVertexAttribL1i64NV,
  glVertexAttribL1i64vNV,
  glVertexAttribL1ui64ARB,
  glVertexAttribL1ui64NV,
  glVertexAttribL1ui64vARB,
  glVertexAttribL1ui64vNV,
  glVertexAttribL2d,
  glVertexAttribL2dEXT,
  glVertexAttribL2dv,
  glVertexAttribL2dvEXT,
  glVertexAttribL2i64NV,
  glVertexAttribL2i64vNV,
  glVertexAttribL2ui64NV,
  glVertexAttribL2ui64vNV,
  glVertexAttribL3d,
  glVertexAttribL3dEXT,
  glVertexAttribL3dv,
  glVertexAttribL3dvEXT,
  glVertexAttribL3i64NV,
  glVertexAttribL3i64vNV,
  glVertexAttribL3ui64NV,
  glVertexAttribL3ui64vNV,
  glVertexAttribL4d,
  glVertexAttribL4dEXT,
  glVertexAttribL4dv,
  glVertexAttribL4dvEXT,
  glVertexAttribL4i64NV,
  glVertexAttribL4i64vNV,
  glVertexAttribL4ui64NV,
  glVertexAttribL4ui64vNV,
  glVertexAttribLFormat,
  glVertexAttribLFormatNV,
  glVertexAttribLPointer,
  glVertexAttribLPointerEXT,
  glVertexAttribP1ui,
  glVertexAttribP1uiv,
  glVertexAttribP2ui,
  glVertexAttribP2uiv,
  glVertexAttribP3ui,
  glVertexAttribP3uiv,
  glVertexAttribP4ui,
  glVertexAttribP4uiv,
  glVertexAttribParameteriAMD,
  glVertexAttribPointer,
  glVertexAttribPointerARB,
  glVertexAttribPointerNV,
  glVertexAttribs1dvNV,
  glVertexAttribs1fvNV,
  glVertexAttribs1hvNV,
  glVertexAttribs1svNV,
  glVertexAttribs2dvNV,
  glVertexAttribs2fvNV,
  glVertexAttribs2hvNV,
  glVertexAttribs2svNV,
  glVertexAttribs3dvNV,
  glVertexAttribs3fvNV,
  glVertexAttribs3hvNV,
  glVertexAttribs3svNV,
  glVertexAttribs4dvNV,
  glVertexAttribs4fvNV,
  glVertexAttribs4hvNV,
  glVertexAttribs4svNV,
  glVertexAttribs4ubvNV,
  glVertexBindingDivisor,
  glVertexBlendARB,
  glVertexBlendEnvfATI,
  glVertexBlendEnviATI,
  glVertexFormatNV,
  glVertexP2ui,
  glVertexP2uiv,
  glVertexP3ui,
  glVertexP3uiv,
  glVertexP4ui,
  glVertexP4uiv,
  glVertexPointer,
  glVertexPointerEXT,
  glVertexPointerListIBM,
  glVertexPointervINTEL,
  glVertexStream1dATI,
  glVertexStream1dvATI,
  glVertexStream1fATI,
  glVertexStream1fvATI,
  glVertexStream1iATI,
  glVertexStream1ivATI,
  glVertexStream1sATI,
  glVertexStream1svATI,
  glVertexStream2dATI,
  glVertexStream2dvATI,
  glVertexStream2fATI,
  glVertexStream2fvATI,
  glVertexStream2iATI,
  glVertexStream2ivATI,
  glVertexStream2sATI,
  glVertexStream2svATI,
  glVertexStream3dATI,
  glVertexStream3dvATI,
  glVertexStream3fATI,
  glVertexStream3fvATI,
  glVertexStream3iATI,
  glVertexStream3ivATI,
  glVertexStream3sATI,
  glVertexStream3svATI,
  glVertexStream4dATI,
  glVertexStream4dvATI,
  glVertexStream4fATI,
  glVertexStream4fvATI,
  glVertexStream4iATI,
  glVertexStream4ivATI,
  glVertexStream4sATI,
  glVertexStream4svATI,
  glVertexWeightPointerEXT,
  glVertexWeightfEXT,
  glVertexWeightfvEXT,
  glVertexWeighthNV,
  glVertexWeighthvNV,
  glVideoCaptureNV,
  glVideoCaptureStreamParameterdvNV,
  glVideoCaptureStreamParameterfvNV,
  glVideoCaptureStreamParameterivNV,
  glViewport,
  glViewportArrayv,
  glViewportArrayvNV,
  glViewportIndexedf,
  glViewportIndexedfNV,
  glViewportIndexedfv,
  glViewportIndexedfvNV,
  glWaitSync,
  glWaitSyncAPPLE,
  glWeightPathsNV,
  glWeightPointerARB,
  glWeightPointerOES,
  glWeightbvARB,
  glWeightdvARB,
  glWeightfvARB,
  glWeightivARB,
  glWeightsvARB,
  glWeightubvARB,
  glWeightuivARB,
  glWeightusvARB,
  glWindowPos2d,
  glWindowPos2dARB,
  glWindowPos2dMESA,
  glWindowPos2dv,
  glWindowPos2dvARB,
  glWindowPos2dvMESA,
  glWindowPos2f,
  glWindowPos2fARB,
  glWindowPos2fMESA,
  glWindowPos2fv,
  glWindowPos2fvARB,
  glWindowPos2fvMESA,
  glWindowPos2i,
  glWindowPos2iARB,
  glWindowPos2iMESA,
  glWindowPos2iv,
  glWindowPos2ivARB,
  glWindowPos2ivMESA,
  glWindowPos2s,
  glWindowPos2sARB,
  glWindowPos2sMESA,
  glWindowPos2sv,
  glWindowPos2svARB,
  glWindowPos2svMESA,
  glWindowPos3d,
  glWindowPos3dARB,
  glWindowPos3dMESA,
  glWindowPos3dv,
  glWindowPos3dvARB,
  glWindowPos3dvMESA,
  glWindowPos3f,
  glWindowPos3fARB,
  glWindowPos3fMESA,
  glWindowPos3fv,
  glWindowPos3fvARB,
  glWindowPos3fvMESA,
  glWindowPos3i,
  glWindowPos3iARB,
  glWindowPos3iMESA,
  glWindowPos3iv,
  glWindowPos3ivARB,
  glWindowPos3ivMESA,
  glWindowPos3s,
  glWindowPos3sARB,
  glWindowPos3sMESA,
  glWindowPos3sv,
  glWindowPos3svARB,
  glWindowPos3svMESA,
  glWindowPos4dMESA,
  glWindowPos4dvMESA,
  glWindowPos4fMESA,
  glWindowPos4fvMESA,
  glWindowPos4iMESA,
  glWindowPos4ivMESA,
  glWindowPos4sMESA,
  glWindowPos4svMESA,
  glWriteMaskEXT
) where

-- Make the foreign imports happy.
import Data.Int
import Data.Word
import Foreign.C.Types

import Foreign.Marshal.Error ( throwIf )
import Foreign.Ptr ( Ptr, FunPtr, nullFunPtr )
import System.IO.Unsafe ( unsafePerformIO )

import Graphics.Rendering.OpenGL.Raw.GetProcAddress ( getProcAddress )
import Graphics.Rendering.OpenGL.Raw.Types

getCommand :: String -> IO (FunPtr a)
getCommand cmd =
  throwIfNullFunPtr ("unknown OpenGL command " ++ cmd) $ getProcAddress cmd

throwIfNullFunPtr :: String -> IO (FunPtr a) -> IO (FunPtr a)
throwIfNullFunPtr = throwIf (== nullFunPtr) . const

-- glAccum ---------------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glAccum.xml OpenGL 2.x>
glAccum
  :: GLenum -- ^ @op@ of type @AccumOp@.
  -> GLfloat -- ^ @value@ of type @CoordF@.
  -> IO ()
glAccum = dyn_glAccum ptr_glAccum

foreign import CALLCONV "dynamic" dyn_glAccum
  :: FunPtr (GLenum -> GLfloat -> IO ())
  ->         GLenum -> GLfloat -> IO ()

{-# NOINLINE ptr_glAccum #-}
ptr_glAccum :: FunPtr (GLenum -> GLfloat -> IO ())
ptr_glAccum = unsafePerformIO $ getCommand "glAccum"

-- glAccumxOES -----------------------------------------------------------------

glAccumxOES
  :: GLenum -- ^ @op@.
  -> GLfixed -- ^ @value@.
  -> IO ()
glAccumxOES = dyn_glAccumxOES ptr_glAccumxOES

foreign import CALLCONV "dynamic" dyn_glAccumxOES
  :: FunPtr (GLenum -> GLfixed -> IO ())
  ->         GLenum -> GLfixed -> IO ()

{-# NOINLINE ptr_glAccumxOES #-}
ptr_glAccumxOES :: FunPtr (GLenum -> GLfixed -> IO ())
ptr_glAccumxOES = unsafePerformIO $ getCommand "glAccumxOES"

-- glActiveProgramEXT ----------------------------------------------------------

glActiveProgramEXT
  :: GLuint -- ^ @program@.
  -> IO ()
glActiveProgramEXT = dyn_glActiveProgramEXT ptr_glActiveProgramEXT

foreign import CALLCONV "dynamic" dyn_glActiveProgramEXT
  :: FunPtr (GLuint -> IO ())
  ->         GLuint -> IO ()

{-# NOINLINE ptr_glActiveProgramEXT #-}
ptr_glActiveProgramEXT :: FunPtr (GLuint -> IO ())
ptr_glActiveProgramEXT = unsafePerformIO $ getCommand "glActiveProgramEXT"

-- glActiveShaderProgram -------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glActiveShaderProgram.xhtml OpenGL 4.x>
glActiveShaderProgram
  :: GLuint -- ^ @pipeline@.
  -> GLuint -- ^ @program@.
  -> IO ()
glActiveShaderProgram = dyn_glActiveShaderProgram ptr_glActiveShaderProgram

foreign import CALLCONV "dynamic" dyn_glActiveShaderProgram
  :: FunPtr (GLuint -> GLuint -> IO ())
  ->         GLuint -> GLuint -> IO ()

{-# NOINLINE ptr_glActiveShaderProgram #-}
ptr_glActiveShaderProgram :: FunPtr (GLuint -> GLuint -> IO ())
ptr_glActiveShaderProgram = unsafePerformIO $ getCommand "glActiveShaderProgram"

-- glActiveShaderProgramEXT ----------------------------------------------------

glActiveShaderProgramEXT
  :: GLuint -- ^ @pipeline@.
  -> GLuint -- ^ @program@.
  -> IO ()
glActiveShaderProgramEXT = dyn_glActiveShaderProgramEXT ptr_glActiveShaderProgramEXT

foreign import CALLCONV "dynamic" dyn_glActiveShaderProgramEXT
  :: FunPtr (GLuint -> GLuint -> IO ())
  ->         GLuint -> GLuint -> IO ()

{-# NOINLINE ptr_glActiveShaderProgramEXT #-}
ptr_glActiveShaderProgramEXT :: FunPtr (GLuint -> GLuint -> IO ())
ptr_glActiveShaderProgramEXT = unsafePerformIO $ getCommand "glActiveShaderProgramEXT"

-- glActiveStencilFaceEXT ------------------------------------------------------

glActiveStencilFaceEXT
  :: GLenum -- ^ @face@ of type @StencilFaceDirection@.
  -> IO ()
glActiveStencilFaceEXT = dyn_glActiveStencilFaceEXT ptr_glActiveStencilFaceEXT

foreign import CALLCONV "dynamic" dyn_glActiveStencilFaceEXT
  :: FunPtr (GLenum -> IO ())
  ->         GLenum -> IO ()

{-# NOINLINE ptr_glActiveStencilFaceEXT #-}
ptr_glActiveStencilFaceEXT :: FunPtr (GLenum -> IO ())
ptr_glActiveStencilFaceEXT = unsafePerformIO $ getCommand "glActiveStencilFaceEXT"

-- glActiveTexture -------------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glActiveTexture.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glActiveTexture.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glActiveTexture.xhtml OpenGL 4.x>
glActiveTexture
  :: GLenum -- ^ @texture@ of type @TextureUnit@.
  -> IO ()
glActiveTexture = dyn_glActiveTexture ptr_glActiveTexture

foreign import CALLCONV "dynamic" dyn_glActiveTexture
  :: FunPtr (GLenum -> IO ())
  ->         GLenum -> IO ()

{-# NOINLINE ptr_glActiveTexture #-}
ptr_glActiveTexture :: FunPtr (GLenum -> IO ())
ptr_glActiveTexture = unsafePerformIO $ getCommand "glActiveTexture"

-- glActiveTextureARB ----------------------------------------------------------

glActiveTextureARB
  :: GLenum -- ^ @texture@ of type @TextureUnit@.
  -> IO ()
glActiveTextureARB = dyn_glActiveTextureARB ptr_glActiveTextureARB

foreign import CALLCONV "dynamic" dyn_glActiveTextureARB
  :: FunPtr (GLenum -> IO ())
  ->         GLenum -> IO ()

{-# NOINLINE ptr_glActiveTextureARB #-}
ptr_glActiveTextureARB :: FunPtr (GLenum -> IO ())
ptr_glActiveTextureARB = unsafePerformIO $ getCommand "glActiveTextureARB"

-- glActiveVaryingNV -----------------------------------------------------------

glActiveVaryingNV
  :: GLuint -- ^ @program@.
  -> Ptr GLchar -- ^ @name@ pointing to @COMPSIZE(name)@ elements of type @GLchar@.
  -> IO ()
glActiveVaryingNV = dyn_glActiveVaryingNV ptr_glActiveVaryingNV

foreign import CALLCONV "dynamic" dyn_glActiveVaryingNV
  :: FunPtr (GLuint -> Ptr GLchar -> IO ())
  ->         GLuint -> Ptr GLchar -> IO ()

{-# NOINLINE ptr_glActiveVaryingNV #-}
ptr_glActiveVaryingNV :: FunPtr (GLuint -> Ptr GLchar -> IO ())
ptr_glActiveVaryingNV = unsafePerformIO $ getCommand "glActiveVaryingNV"

-- glAlphaFragmentOp1ATI -------------------------------------------------------

glAlphaFragmentOp1ATI
  :: GLenum -- ^ @op@ of type @FragmentOpATI@.
  -> GLuint -- ^ @dst@.
  -> GLuint -- ^ @dstMod@.
  -> GLuint -- ^ @arg1@.
  -> GLuint -- ^ @arg1Rep@.
  -> GLuint -- ^ @arg1Mod@.
  -> IO ()
glAlphaFragmentOp1ATI = dyn_glAlphaFragmentOp1ATI ptr_glAlphaFragmentOp1ATI

foreign import CALLCONV "dynamic" dyn_glAlphaFragmentOp1ATI
  :: FunPtr (GLenum -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> IO ())
  ->         GLenum -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> IO ()

{-# NOINLINE ptr_glAlphaFragmentOp1ATI #-}
ptr_glAlphaFragmentOp1ATI :: FunPtr (GLenum -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> IO ())
ptr_glAlphaFragmentOp1ATI = unsafePerformIO $ getCommand "glAlphaFragmentOp1ATI"

-- glAlphaFragmentOp2ATI -------------------------------------------------------

glAlphaFragmentOp2ATI
  :: GLenum -- ^ @op@ of type @FragmentOpATI@.
  -> GLuint -- ^ @dst@.
  -> GLuint -- ^ @dstMod@.
  -> GLuint -- ^ @arg1@.
  -> GLuint -- ^ @arg1Rep@.
  -> GLuint -- ^ @arg1Mod@.
  -> GLuint -- ^ @arg2@.
  -> GLuint -- ^ @arg2Rep@.
  -> GLuint -- ^ @arg2Mod@.
  -> IO ()
glAlphaFragmentOp2ATI = dyn_glAlphaFragmentOp2ATI ptr_glAlphaFragmentOp2ATI

foreign import CALLCONV "dynamic" dyn_glAlphaFragmentOp2ATI
  :: FunPtr (GLenum -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> IO ())
  ->         GLenum -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> IO ()

{-# NOINLINE ptr_glAlphaFragmentOp2ATI #-}
ptr_glAlphaFragmentOp2ATI :: FunPtr (GLenum -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> IO ())
ptr_glAlphaFragmentOp2ATI = unsafePerformIO $ getCommand "glAlphaFragmentOp2ATI"

-- glAlphaFragmentOp3ATI -------------------------------------------------------

glAlphaFragmentOp3ATI
  :: GLenum -- ^ @op@ of type @FragmentOpATI@.
  -> GLuint -- ^ @dst@.
  -> GLuint -- ^ @dstMod@.
  -> GLuint -- ^ @arg1@.
  -> GLuint -- ^ @arg1Rep@.
  -> GLuint -- ^ @arg1Mod@.
  -> GLuint -- ^ @arg2@.
  -> GLuint -- ^ @arg2Rep@.
  -> GLuint -- ^ @arg2Mod@.
  -> GLuint -- ^ @arg3@.
  -> GLuint -- ^ @arg3Rep@.
  -> GLuint -- ^ @arg3Mod@.
  -> IO ()
glAlphaFragmentOp3ATI = dyn_glAlphaFragmentOp3ATI ptr_glAlphaFragmentOp3ATI

foreign import CALLCONV "dynamic" dyn_glAlphaFragmentOp3ATI
  :: FunPtr (GLenum -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> IO ())
  ->         GLenum -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> IO ()

{-# NOINLINE ptr_glAlphaFragmentOp3ATI #-}
ptr_glAlphaFragmentOp3ATI :: FunPtr (GLenum -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> IO ())
ptr_glAlphaFragmentOp3ATI = unsafePerformIO $ getCommand "glAlphaFragmentOp3ATI"

-- glAlphaFunc -----------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glAlphaFunc.xml OpenGL 2.x>
glAlphaFunc
  :: GLenum -- ^ @func@ of type @AlphaFunction@.
  -> GLfloat -- ^ @ref@.
  -> IO ()
glAlphaFunc = dyn_glAlphaFunc ptr_glAlphaFunc

foreign import CALLCONV "dynamic" dyn_glAlphaFunc
  :: FunPtr (GLenum -> GLfloat -> IO ())
  ->         GLenum -> GLfloat -> IO ()

{-# NOINLINE ptr_glAlphaFunc #-}
ptr_glAlphaFunc :: FunPtr (GLenum -> GLfloat -> IO ())
ptr_glAlphaFunc = unsafePerformIO $ getCommand "glAlphaFunc"

-- glAlphaFuncQCOM -------------------------------------------------------------

glAlphaFuncQCOM
  :: GLenum -- ^ @func@.
  -> GLclampf -- ^ @ref@.
  -> IO ()
glAlphaFuncQCOM = dyn_glAlphaFuncQCOM ptr_glAlphaFuncQCOM

foreign import CALLCONV "dynamic" dyn_glAlphaFuncQCOM
  :: FunPtr (GLenum -> GLclampf -> IO ())
  ->         GLenum -> GLclampf -> IO ()

{-# NOINLINE ptr_glAlphaFuncQCOM #-}
ptr_glAlphaFuncQCOM :: FunPtr (GLenum -> GLclampf -> IO ())
ptr_glAlphaFuncQCOM = unsafePerformIO $ getCommand "glAlphaFuncQCOM"

-- glAlphaFuncx ----------------------------------------------------------------

glAlphaFuncx
  :: GLenum -- ^ @func@.
  -> GLfixed -- ^ @ref@.
  -> IO ()
glAlphaFuncx = dyn_glAlphaFuncx ptr_glAlphaFuncx

foreign import CALLCONV "dynamic" dyn_glAlphaFuncx
  :: FunPtr (GLenum -> GLfixed -> IO ())
  ->         GLenum -> GLfixed -> IO ()

{-# NOINLINE ptr_glAlphaFuncx #-}
ptr_glAlphaFuncx :: FunPtr (GLenum -> GLfixed -> IO ())
ptr_glAlphaFuncx = unsafePerformIO $ getCommand "glAlphaFuncx"

-- glAlphaFuncxOES -------------------------------------------------------------

glAlphaFuncxOES
  :: GLenum -- ^ @func@.
  -> GLfixed -- ^ @ref@ of type @ClampedFixed@.
  -> IO ()
glAlphaFuncxOES = dyn_glAlphaFuncxOES ptr_glAlphaFuncxOES

foreign import CALLCONV "dynamic" dyn_glAlphaFuncxOES
  :: FunPtr (GLenum -> GLfixed -> IO ())
  ->         GLenum -> GLfixed -> IO ()

{-# NOINLINE ptr_glAlphaFuncxOES #-}
ptr_glAlphaFuncxOES :: FunPtr (GLenum -> GLfixed -> IO ())
ptr_glAlphaFuncxOES = unsafePerformIO $ getCommand "glAlphaFuncxOES"

-- glApplyTextureEXT -----------------------------------------------------------

glApplyTextureEXT
  :: GLenum -- ^ @mode@ of type @LightTextureModeEXT@.
  -> IO ()
glApplyTextureEXT = dyn_glApplyTextureEXT ptr_glApplyTextureEXT

foreign import CALLCONV "dynamic" dyn_glApplyTextureEXT
  :: FunPtr (GLenum -> IO ())
  ->         GLenum -> IO ()

{-# NOINLINE ptr_glApplyTextureEXT #-}
ptr_glApplyTextureEXT :: FunPtr (GLenum -> IO ())
ptr_glApplyTextureEXT = unsafePerformIO $ getCommand "glApplyTextureEXT"

-- glAreProgramsResidentNV -----------------------------------------------------

glAreProgramsResidentNV
  :: GLsizei -- ^ @n@.
  -> Ptr GLuint -- ^ @programs@ pointing to @n@ elements of type @GLuint@.
  -> Ptr GLboolean -- ^ @residences@ pointing to @n@ elements of type @Boolean@.
  -> IO GLboolean -- ^ of type @Boolean@.
glAreProgramsResidentNV = dyn_glAreProgramsResidentNV ptr_glAreProgramsResidentNV

foreign import CALLCONV "dynamic" dyn_glAreProgramsResidentNV
  :: FunPtr (GLsizei -> Ptr GLuint -> Ptr GLboolean -> IO GLboolean)
  ->         GLsizei -> Ptr GLuint -> Ptr GLboolean -> IO GLboolean

{-# NOINLINE ptr_glAreProgramsResidentNV #-}
ptr_glAreProgramsResidentNV :: FunPtr (GLsizei -> Ptr GLuint -> Ptr GLboolean -> IO GLboolean)
ptr_glAreProgramsResidentNV = unsafePerformIO $ getCommand "glAreProgramsResidentNV"

-- glAreTexturesResident -------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glAreTexturesResident.xml OpenGL 2.x>
glAreTexturesResident
  :: GLsizei -- ^ @n@.
  -> Ptr GLuint -- ^ @textures@ pointing to @n@ elements of type @Texture@.
  -> Ptr GLboolean -- ^ @residences@ pointing to @n@ elements of type @Boolean@.
  -> IO GLboolean -- ^ of type @Boolean@.
glAreTexturesResident = dyn_glAreTexturesResident ptr_glAreTexturesResident

foreign import CALLCONV "dynamic" dyn_glAreTexturesResident
  :: FunPtr (GLsizei -> Ptr GLuint -> Ptr GLboolean -> IO GLboolean)
  ->         GLsizei -> Ptr GLuint -> Ptr GLboolean -> IO GLboolean

{-# NOINLINE ptr_glAreTexturesResident #-}
ptr_glAreTexturesResident :: FunPtr (GLsizei -> Ptr GLuint -> Ptr GLboolean -> IO GLboolean)
ptr_glAreTexturesResident = unsafePerformIO $ getCommand "glAreTexturesResident"

-- glAreTexturesResidentEXT ----------------------------------------------------

glAreTexturesResidentEXT
  :: GLsizei -- ^ @n@.
  -> Ptr GLuint -- ^ @textures@ pointing to @n@ elements of type @Texture@.
  -> Ptr GLboolean -- ^ @residences@ pointing to @n@ elements of type @Boolean@.
  -> IO GLboolean -- ^ of type @Boolean@.
glAreTexturesResidentEXT = dyn_glAreTexturesResidentEXT ptr_glAreTexturesResidentEXT

foreign import CALLCONV "dynamic" dyn_glAreTexturesResidentEXT
  :: FunPtr (GLsizei -> Ptr GLuint -> Ptr GLboolean -> IO GLboolean)
  ->         GLsizei -> Ptr GLuint -> Ptr GLboolean -> IO GLboolean

{-# NOINLINE ptr_glAreTexturesResidentEXT #-}
ptr_glAreTexturesResidentEXT :: FunPtr (GLsizei -> Ptr GLuint -> Ptr GLboolean -> IO GLboolean)
ptr_glAreTexturesResidentEXT = unsafePerformIO $ getCommand "glAreTexturesResidentEXT"

-- glArrayElement --------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glArrayElement.xml OpenGL 2.x>
glArrayElement
  :: GLint -- ^ @i@.
  -> IO ()
glArrayElement = dyn_glArrayElement ptr_glArrayElement

foreign import CALLCONV "dynamic" dyn_glArrayElement
  :: FunPtr (GLint -> IO ())
  ->         GLint -> IO ()

{-# NOINLINE ptr_glArrayElement #-}
ptr_glArrayElement :: FunPtr (GLint -> IO ())
ptr_glArrayElement = unsafePerformIO $ getCommand "glArrayElement"

-- glArrayElementEXT -----------------------------------------------------------

glArrayElementEXT
  :: GLint -- ^ @i@.
  -> IO ()
glArrayElementEXT = dyn_glArrayElementEXT ptr_glArrayElementEXT

foreign import CALLCONV "dynamic" dyn_glArrayElementEXT
  :: FunPtr (GLint -> IO ())
  ->         GLint -> IO ()

{-# NOINLINE ptr_glArrayElementEXT #-}
ptr_glArrayElementEXT :: FunPtr (GLint -> IO ())
ptr_glArrayElementEXT = unsafePerformIO $ getCommand "glArrayElementEXT"

-- glArrayObjectATI ------------------------------------------------------------

glArrayObjectATI
  :: GLenum -- ^ @array@ of type @EnableCap@.
  -> GLint -- ^ @size@.
  -> GLenum -- ^ @type@ of type @ScalarType@.
  -> GLsizei -- ^ @stride@.
  -> GLuint -- ^ @buffer@.
  -> GLuint -- ^ @offset@.
  -> IO ()
glArrayObjectATI = dyn_glArrayObjectATI ptr_glArrayObjectATI

foreign import CALLCONV "dynamic" dyn_glArrayObjectATI
  :: FunPtr (GLenum -> GLint -> GLenum -> GLsizei -> GLuint -> GLuint -> IO ())
  ->         GLenum -> GLint -> GLenum -> GLsizei -> GLuint -> GLuint -> IO ()

{-# NOINLINE ptr_glArrayObjectATI #-}
ptr_glArrayObjectATI :: FunPtr (GLenum -> GLint -> GLenum -> GLsizei -> GLuint -> GLuint -> IO ())
ptr_glArrayObjectATI = unsafePerformIO $ getCommand "glArrayObjectATI"

-- glAsyncMarkerSGIX -----------------------------------------------------------

glAsyncMarkerSGIX
  :: GLuint -- ^ @marker@.
  -> IO ()
glAsyncMarkerSGIX = dyn_glAsyncMarkerSGIX ptr_glAsyncMarkerSGIX

foreign import CALLCONV "dynamic" dyn_glAsyncMarkerSGIX
  :: FunPtr (GLuint -> IO ())
  ->         GLuint -> IO ()

{-# NOINLINE ptr_glAsyncMarkerSGIX #-}
ptr_glAsyncMarkerSGIX :: FunPtr (GLuint -> IO ())
ptr_glAsyncMarkerSGIX = unsafePerformIO $ getCommand "glAsyncMarkerSGIX"

-- glAttachObjectARB -----------------------------------------------------------

glAttachObjectARB
  :: GLhandleARB -- ^ @containerObj@ of type @handleARB@.
  -> GLhandleARB -- ^ @obj@ of type @handleARB@.
  -> IO ()
glAttachObjectARB = dyn_glAttachObjectARB ptr_glAttachObjectARB

foreign import CALLCONV "dynamic" dyn_glAttachObjectARB
  :: FunPtr (GLhandleARB -> GLhandleARB -> IO ())
  ->         GLhandleARB -> GLhandleARB -> IO ()

{-# NOINLINE ptr_glAttachObjectARB #-}
ptr_glAttachObjectARB :: FunPtr (GLhandleARB -> GLhandleARB -> IO ())
ptr_glAttachObjectARB = unsafePerformIO $ getCommand "glAttachObjectARB"

-- glAttachShader --------------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glAttachShader.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glAttachShader.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glAttachShader.xhtml OpenGL 4.x>
glAttachShader
  :: GLuint -- ^ @program@.
  -> GLuint -- ^ @shader@.
  -> IO ()
glAttachShader = dyn_glAttachShader ptr_glAttachShader

foreign import CALLCONV "dynamic" dyn_glAttachShader
  :: FunPtr (GLuint -> GLuint -> IO ())
  ->         GLuint -> GLuint -> IO ()

{-# NOINLINE ptr_glAttachShader #-}
ptr_glAttachShader :: FunPtr (GLuint -> GLuint -> IO ())
ptr_glAttachShader = unsafePerformIO $ getCommand "glAttachShader"

-- glBegin ---------------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glBegin.xml OpenGL 2.x>
glBegin
  :: GLenum -- ^ @mode@ of type @PrimitiveType@.
  -> IO ()
glBegin = dyn_glBegin ptr_glBegin

foreign import CALLCONV "dynamic" dyn_glBegin
  :: FunPtr (GLenum -> IO ())
  ->         GLenum -> IO ()

{-# NOINLINE ptr_glBegin #-}
ptr_glBegin :: FunPtr (GLenum -> IO ())
ptr_glBegin = unsafePerformIO $ getCommand "glBegin"

-- glBeginConditionalRender ----------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glBeginConditionalRender.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glBeginConditionalRender.xhtml OpenGL 4.x>
glBeginConditionalRender
  :: GLuint -- ^ @id@.
  -> GLenum -- ^ @mode@ of type @TypeEnum@.
  -> IO ()
glBeginConditionalRender = dyn_glBeginConditionalRender ptr_glBeginConditionalRender

foreign import CALLCONV "dynamic" dyn_glBeginConditionalRender
  :: FunPtr (GLuint -> GLenum -> IO ())
  ->         GLuint -> GLenum -> IO ()

{-# NOINLINE ptr_glBeginConditionalRender #-}
ptr_glBeginConditionalRender :: FunPtr (GLuint -> GLenum -> IO ())
ptr_glBeginConditionalRender = unsafePerformIO $ getCommand "glBeginConditionalRender"

-- glBeginConditionalRenderNV --------------------------------------------------

glBeginConditionalRenderNV
  :: GLuint -- ^ @id@.
  -> GLenum -- ^ @mode@ of type @TypeEnum@.
  -> IO ()
glBeginConditionalRenderNV = dyn_glBeginConditionalRenderNV ptr_glBeginConditionalRenderNV

foreign import CALLCONV "dynamic" dyn_glBeginConditionalRenderNV
  :: FunPtr (GLuint -> GLenum -> IO ())
  ->         GLuint -> GLenum -> IO ()

{-# NOINLINE ptr_glBeginConditionalRenderNV #-}
ptr_glBeginConditionalRenderNV :: FunPtr (GLuint -> GLenum -> IO ())
ptr_glBeginConditionalRenderNV = unsafePerformIO $ getCommand "glBeginConditionalRenderNV"

-- glBeginConditionalRenderNVX -------------------------------------------------

glBeginConditionalRenderNVX
  :: GLuint -- ^ @id@.
  -> IO ()
glBeginConditionalRenderNVX = dyn_glBeginConditionalRenderNVX ptr_glBeginConditionalRenderNVX

foreign import CALLCONV "dynamic" dyn_glBeginConditionalRenderNVX
  :: FunPtr (GLuint -> IO ())
  ->         GLuint -> IO ()

{-# NOINLINE ptr_glBeginConditionalRenderNVX #-}
ptr_glBeginConditionalRenderNVX :: FunPtr (GLuint -> IO ())
ptr_glBeginConditionalRenderNVX = unsafePerformIO $ getCommand "glBeginConditionalRenderNVX"

-- glBeginFragmentShaderATI ----------------------------------------------------

glBeginFragmentShaderATI
  :: IO ()
glBeginFragmentShaderATI = dyn_glBeginFragmentShaderATI ptr_glBeginFragmentShaderATI

foreign import CALLCONV "dynamic" dyn_glBeginFragmentShaderATI
  :: FunPtr (IO ())
  ->         IO ()

{-# NOINLINE ptr_glBeginFragmentShaderATI #-}
ptr_glBeginFragmentShaderATI :: FunPtr (IO ())
ptr_glBeginFragmentShaderATI = unsafePerformIO $ getCommand "glBeginFragmentShaderATI"

-- glBeginOcclusionQueryNV -----------------------------------------------------

glBeginOcclusionQueryNV
  :: GLuint -- ^ @id@.
  -> IO ()
glBeginOcclusionQueryNV = dyn_glBeginOcclusionQueryNV ptr_glBeginOcclusionQueryNV

foreign import CALLCONV "dynamic" dyn_glBeginOcclusionQueryNV
  :: FunPtr (GLuint -> IO ())
  ->         GLuint -> IO ()

{-# NOINLINE ptr_glBeginOcclusionQueryNV #-}
ptr_glBeginOcclusionQueryNV :: FunPtr (GLuint -> IO ())
ptr_glBeginOcclusionQueryNV = unsafePerformIO $ getCommand "glBeginOcclusionQueryNV"

-- glBeginPerfMonitorAMD -------------------------------------------------------

glBeginPerfMonitorAMD
  :: GLuint -- ^ @monitor@.
  -> IO ()
glBeginPerfMonitorAMD = dyn_glBeginPerfMonitorAMD ptr_glBeginPerfMonitorAMD

foreign import CALLCONV "dynamic" dyn_glBeginPerfMonitorAMD
  :: FunPtr (GLuint -> IO ())
  ->         GLuint -> IO ()

{-# NOINLINE ptr_glBeginPerfMonitorAMD #-}
ptr_glBeginPerfMonitorAMD :: FunPtr (GLuint -> IO ())
ptr_glBeginPerfMonitorAMD = unsafePerformIO $ getCommand "glBeginPerfMonitorAMD"

-- glBeginPerfQueryINTEL -------------------------------------------------------

glBeginPerfQueryINTEL
  :: GLuint -- ^ @queryHandle@.
  -> IO ()
glBeginPerfQueryINTEL = dyn_glBeginPerfQueryINTEL ptr_glBeginPerfQueryINTEL

foreign import CALLCONV "dynamic" dyn_glBeginPerfQueryINTEL
  :: FunPtr (GLuint -> IO ())
  ->         GLuint -> IO ()

{-# NOINLINE ptr_glBeginPerfQueryINTEL #-}
ptr_glBeginPerfQueryINTEL :: FunPtr (GLuint -> IO ())
ptr_glBeginPerfQueryINTEL = unsafePerformIO $ getCommand "glBeginPerfQueryINTEL"

-- glBeginQuery ----------------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glBeginQuery.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glBeginQuery.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glBeginQuery.xhtml OpenGL 4.x>
glBeginQuery
  :: GLenum -- ^ @target@.
  -> GLuint -- ^ @id@.
  -> IO ()
glBeginQuery = dyn_glBeginQuery ptr_glBeginQuery

foreign import CALLCONV "dynamic" dyn_glBeginQuery
  :: FunPtr (GLenum -> GLuint -> IO ())
  ->         GLenum -> GLuint -> IO ()

{-# NOINLINE ptr_glBeginQuery #-}
ptr_glBeginQuery :: FunPtr (GLenum -> GLuint -> IO ())
ptr_glBeginQuery = unsafePerformIO $ getCommand "glBeginQuery"

-- glBeginQueryARB -------------------------------------------------------------

glBeginQueryARB
  :: GLenum -- ^ @target@.
  -> GLuint -- ^ @id@.
  -> IO ()
glBeginQueryARB = dyn_glBeginQueryARB ptr_glBeginQueryARB

foreign import CALLCONV "dynamic" dyn_glBeginQueryARB
  :: FunPtr (GLenum -> GLuint -> IO ())
  ->         GLenum -> GLuint -> IO ()

{-# NOINLINE ptr_glBeginQueryARB #-}
ptr_glBeginQueryARB :: FunPtr (GLenum -> GLuint -> IO ())
ptr_glBeginQueryARB = unsafePerformIO $ getCommand "glBeginQueryARB"

-- glBeginQueryEXT -------------------------------------------------------------

glBeginQueryEXT
  :: GLenum -- ^ @target@.
  -> GLuint -- ^ @id@.
  -> IO ()
glBeginQueryEXT = dyn_glBeginQueryEXT ptr_glBeginQueryEXT

foreign import CALLCONV "dynamic" dyn_glBeginQueryEXT
  :: FunPtr (GLenum -> GLuint -> IO ())
  ->         GLenum -> GLuint -> IO ()

{-# NOINLINE ptr_glBeginQueryEXT #-}
ptr_glBeginQueryEXT :: FunPtr (GLenum -> GLuint -> IO ())
ptr_glBeginQueryEXT = unsafePerformIO $ getCommand "glBeginQueryEXT"

-- glBeginQueryIndexed ---------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glBeginQueryIndexed.xhtml OpenGL 4.x>
glBeginQueryIndexed
  :: GLenum -- ^ @target@.
  -> GLuint -- ^ @index@.
  -> GLuint -- ^ @id@.
  -> IO ()
glBeginQueryIndexed = dyn_glBeginQueryIndexed ptr_glBeginQueryIndexed

foreign import CALLCONV "dynamic" dyn_glBeginQueryIndexed
  :: FunPtr (GLenum -> GLuint -> GLuint -> IO ())
  ->         GLenum -> GLuint -> GLuint -> IO ()

{-# NOINLINE ptr_glBeginQueryIndexed #-}
ptr_glBeginQueryIndexed :: FunPtr (GLenum -> GLuint -> GLuint -> IO ())
ptr_glBeginQueryIndexed = unsafePerformIO $ getCommand "glBeginQueryIndexed"

-- glBeginTransformFeedback ----------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glBeginTransformFeedback.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glBeginTransformFeedback.xhtml OpenGL 4.x>
glBeginTransformFeedback
  :: GLenum -- ^ @primitiveMode@.
  -> IO ()
glBeginTransformFeedback = dyn_glBeginTransformFeedback ptr_glBeginTransformFeedback

foreign import CALLCONV "dynamic" dyn_glBeginTransformFeedback
  :: FunPtr (GLenum -> IO ())
  ->         GLenum -> IO ()

{-# NOINLINE ptr_glBeginTransformFeedback #-}
ptr_glBeginTransformFeedback :: FunPtr (GLenum -> IO ())
ptr_glBeginTransformFeedback = unsafePerformIO $ getCommand "glBeginTransformFeedback"

-- glBeginTransformFeedbackEXT -------------------------------------------------

glBeginTransformFeedbackEXT
  :: GLenum -- ^ @primitiveMode@.
  -> IO ()
glBeginTransformFeedbackEXT = dyn_glBeginTransformFeedbackEXT ptr_glBeginTransformFeedbackEXT

foreign import CALLCONV "dynamic" dyn_glBeginTransformFeedbackEXT
  :: FunPtr (GLenum -> IO ())
  ->         GLenum -> IO ()

{-# NOINLINE ptr_glBeginTransformFeedbackEXT #-}
ptr_glBeginTransformFeedbackEXT :: FunPtr (GLenum -> IO ())
ptr_glBeginTransformFeedbackEXT = unsafePerformIO $ getCommand "glBeginTransformFeedbackEXT"

-- glBeginTransformFeedbackNV --------------------------------------------------

glBeginTransformFeedbackNV
  :: GLenum -- ^ @primitiveMode@.
  -> IO ()
glBeginTransformFeedbackNV = dyn_glBeginTransformFeedbackNV ptr_glBeginTransformFeedbackNV

foreign import CALLCONV "dynamic" dyn_glBeginTransformFeedbackNV
  :: FunPtr (GLenum -> IO ())
  ->         GLenum -> IO ()

{-# NOINLINE ptr_glBeginTransformFeedbackNV #-}
ptr_glBeginTransformFeedbackNV :: FunPtr (GLenum -> IO ())
ptr_glBeginTransformFeedbackNV = unsafePerformIO $ getCommand "glBeginTransformFeedbackNV"

-- glBeginVertexShaderEXT ------------------------------------------------------

glBeginVertexShaderEXT
  :: IO ()
glBeginVertexShaderEXT = dyn_glBeginVertexShaderEXT ptr_glBeginVertexShaderEXT

foreign import CALLCONV "dynamic" dyn_glBeginVertexShaderEXT
  :: FunPtr (IO ())
  ->         IO ()

{-# NOINLINE ptr_glBeginVertexShaderEXT #-}
ptr_glBeginVertexShaderEXT :: FunPtr (IO ())
ptr_glBeginVertexShaderEXT = unsafePerformIO $ getCommand "glBeginVertexShaderEXT"

-- glBeginVideoCaptureNV -------------------------------------------------------

glBeginVideoCaptureNV
  :: GLuint -- ^ @video_capture_slot@.
  -> IO ()
glBeginVideoCaptureNV = dyn_glBeginVideoCaptureNV ptr_glBeginVideoCaptureNV

foreign import CALLCONV "dynamic" dyn_glBeginVideoCaptureNV
  :: FunPtr (GLuint -> IO ())
  ->         GLuint -> IO ()

{-# NOINLINE ptr_glBeginVideoCaptureNV #-}
ptr_glBeginVideoCaptureNV :: FunPtr (GLuint -> IO ())
ptr_glBeginVideoCaptureNV = unsafePerformIO $ getCommand "glBeginVideoCaptureNV"

-- glBindAttribLocation --------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glBindAttribLocation.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glBindAttribLocation.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glBindAttribLocation.xhtml OpenGL 4.x>
glBindAttribLocation
  :: GLuint -- ^ @program@.
  -> GLuint -- ^ @index@.
  -> Ptr GLchar -- ^ @name@.
  -> IO ()
glBindAttribLocation = dyn_glBindAttribLocation ptr_glBindAttribLocation

foreign import CALLCONV "dynamic" dyn_glBindAttribLocation
  :: FunPtr (GLuint -> GLuint -> Ptr GLchar -> IO ())
  ->         GLuint -> GLuint -> Ptr GLchar -> IO ()

{-# NOINLINE ptr_glBindAttribLocation #-}
ptr_glBindAttribLocation :: FunPtr (GLuint -> GLuint -> Ptr GLchar -> IO ())
ptr_glBindAttribLocation = unsafePerformIO $ getCommand "glBindAttribLocation"

-- glBindAttribLocationARB -----------------------------------------------------

glBindAttribLocationARB
  :: GLhandleARB -- ^ @programObj@ of type @handleARB@.
  -> GLuint -- ^ @index@.
  -> Ptr GLcharARB -- ^ @name@.
  -> IO ()
glBindAttribLocationARB = dyn_glBindAttribLocationARB ptr_glBindAttribLocationARB

foreign import CALLCONV "dynamic" dyn_glBindAttribLocationARB
  :: FunPtr (GLhandleARB -> GLuint -> Ptr GLcharARB -> IO ())
  ->         GLhandleARB -> GLuint -> Ptr GLcharARB -> IO ()

{-# NOINLINE ptr_glBindAttribLocationARB #-}
ptr_glBindAttribLocationARB :: FunPtr (GLhandleARB -> GLuint -> Ptr GLcharARB -> IO ())
ptr_glBindAttribLocationARB = unsafePerformIO $ getCommand "glBindAttribLocationARB"

-- glBindBuffer ----------------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glBindBuffer.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glBindBuffer.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glBindBuffer.xhtml OpenGL 4.x>
glBindBuffer
  :: GLenum -- ^ @target@ of type @BufferTargetARB@.
  -> GLuint -- ^ @buffer@.
  -> IO ()
glBindBuffer = dyn_glBindBuffer ptr_glBindBuffer

foreign import CALLCONV "dynamic" dyn_glBindBuffer
  :: FunPtr (GLenum -> GLuint -> IO ())
  ->         GLenum -> GLuint -> IO ()

{-# NOINLINE ptr_glBindBuffer #-}
ptr_glBindBuffer :: FunPtr (GLenum -> GLuint -> IO ())
ptr_glBindBuffer = unsafePerformIO $ getCommand "glBindBuffer"

-- glBindBufferARB -------------------------------------------------------------

glBindBufferARB
  :: GLenum -- ^ @target@ of type @BufferTargetARB@.
  -> GLuint -- ^ @buffer@.
  -> IO ()
glBindBufferARB = dyn_glBindBufferARB ptr_glBindBufferARB

foreign import CALLCONV "dynamic" dyn_glBindBufferARB
  :: FunPtr (GLenum -> GLuint -> IO ())
  ->         GLenum -> GLuint -> IO ()

{-# NOINLINE ptr_glBindBufferARB #-}
ptr_glBindBufferARB :: FunPtr (GLenum -> GLuint -> IO ())
ptr_glBindBufferARB = unsafePerformIO $ getCommand "glBindBufferARB"

-- glBindBufferBase ------------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glBindBufferBase.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glBindBufferBase.xhtml OpenGL 4.x>
glBindBufferBase
  :: GLenum -- ^ @target@.
  -> GLuint -- ^ @index@.
  -> GLuint -- ^ @buffer@.
  -> IO ()
glBindBufferBase = dyn_glBindBufferBase ptr_glBindBufferBase

foreign import CALLCONV "dynamic" dyn_glBindBufferBase
  :: FunPtr (GLenum -> GLuint -> GLuint -> IO ())
  ->         GLenum -> GLuint -> GLuint -> IO ()

{-# NOINLINE ptr_glBindBufferBase #-}
ptr_glBindBufferBase :: FunPtr (GLenum -> GLuint -> GLuint -> IO ())
ptr_glBindBufferBase = unsafePerformIO $ getCommand "glBindBufferBase"

-- glBindBufferBaseEXT ---------------------------------------------------------

glBindBufferBaseEXT
  :: GLenum -- ^ @target@.
  -> GLuint -- ^ @index@.
  -> GLuint -- ^ @buffer@.
  -> IO ()
glBindBufferBaseEXT = dyn_glBindBufferBaseEXT ptr_glBindBufferBaseEXT

foreign import CALLCONV "dynamic" dyn_glBindBufferBaseEXT
  :: FunPtr (GLenum -> GLuint -> GLuint -> IO ())
  ->         GLenum -> GLuint -> GLuint -> IO ()

{-# NOINLINE ptr_glBindBufferBaseEXT #-}
ptr_glBindBufferBaseEXT :: FunPtr (GLenum -> GLuint -> GLuint -> IO ())
ptr_glBindBufferBaseEXT = unsafePerformIO $ getCommand "glBindBufferBaseEXT"

-- glBindBufferBaseNV ----------------------------------------------------------

glBindBufferBaseNV
  :: GLenum -- ^ @target@.
  -> GLuint -- ^ @index@.
  -> GLuint -- ^ @buffer@.
  -> IO ()
glBindBufferBaseNV = dyn_glBindBufferBaseNV ptr_glBindBufferBaseNV

foreign import CALLCONV "dynamic" dyn_glBindBufferBaseNV
  :: FunPtr (GLenum -> GLuint -> GLuint -> IO ())
  ->         GLenum -> GLuint -> GLuint -> IO ()

{-# NOINLINE ptr_glBindBufferBaseNV #-}
ptr_glBindBufferBaseNV :: FunPtr (GLenum -> GLuint -> GLuint -> IO ())
ptr_glBindBufferBaseNV = unsafePerformIO $ getCommand "glBindBufferBaseNV"

-- glBindBufferOffsetEXT -------------------------------------------------------

glBindBufferOffsetEXT
  :: GLenum -- ^ @target@.
  -> GLuint -- ^ @index@.
  -> GLuint -- ^ @buffer@.
  -> GLintptr -- ^ @offset@ of type @BufferOffset@.
  -> IO ()
glBindBufferOffsetEXT = dyn_glBindBufferOffsetEXT ptr_glBindBufferOffsetEXT

foreign import CALLCONV "dynamic" dyn_glBindBufferOffsetEXT
  :: FunPtr (GLenum -> GLuint -> GLuint -> GLintptr -> IO ())
  ->         GLenum -> GLuint -> GLuint -> GLintptr -> IO ()

{-# NOINLINE ptr_glBindBufferOffsetEXT #-}
ptr_glBindBufferOffsetEXT :: FunPtr (GLenum -> GLuint -> GLuint -> GLintptr -> IO ())
ptr_glBindBufferOffsetEXT = unsafePerformIO $ getCommand "glBindBufferOffsetEXT"

-- glBindBufferOffsetNV --------------------------------------------------------

glBindBufferOffsetNV
  :: GLenum -- ^ @target@.
  -> GLuint -- ^ @index@.
  -> GLuint -- ^ @buffer@.
  -> GLintptr -- ^ @offset@ of type @BufferOffset@.
  -> IO ()
glBindBufferOffsetNV = dyn_glBindBufferOffsetNV ptr_glBindBufferOffsetNV

foreign import CALLCONV "dynamic" dyn_glBindBufferOffsetNV
  :: FunPtr (GLenum -> GLuint -> GLuint -> GLintptr -> IO ())
  ->         GLenum -> GLuint -> GLuint -> GLintptr -> IO ()

{-# NOINLINE ptr_glBindBufferOffsetNV #-}
ptr_glBindBufferOffsetNV :: FunPtr (GLenum -> GLuint -> GLuint -> GLintptr -> IO ())
ptr_glBindBufferOffsetNV = unsafePerformIO $ getCommand "glBindBufferOffsetNV"

-- glBindBufferRange -----------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glBindBufferRange.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glBindBufferRange.xhtml OpenGL 4.x>
glBindBufferRange
  :: GLenum -- ^ @target@.
  -> GLuint -- ^ @index@.
  -> GLuint -- ^ @buffer@.
  -> GLintptr -- ^ @offset@ of type @BufferOffset@.
  -> GLsizeiptr -- ^ @size@ of type @BufferSize@.
  -> IO ()
glBindBufferRange = dyn_glBindBufferRange ptr_glBindBufferRange

foreign import CALLCONV "dynamic" dyn_glBindBufferRange
  :: FunPtr (GLenum -> GLuint -> GLuint -> GLintptr -> GLsizeiptr -> IO ())
  ->         GLenum -> GLuint -> GLuint -> GLintptr -> GLsizeiptr -> IO ()

{-# NOINLINE ptr_glBindBufferRange #-}
ptr_glBindBufferRange :: FunPtr (GLenum -> GLuint -> GLuint -> GLintptr -> GLsizeiptr -> IO ())
ptr_glBindBufferRange = unsafePerformIO $ getCommand "glBindBufferRange"

-- glBindBufferRangeEXT --------------------------------------------------------

glBindBufferRangeEXT
  :: GLenum -- ^ @target@.
  -> GLuint -- ^ @index@.
  -> GLuint -- ^ @buffer@.
  -> GLintptr -- ^ @offset@ of type @BufferOffset@.
  -> GLsizeiptr -- ^ @size@ of type @BufferSize@.
  -> IO ()
glBindBufferRangeEXT = dyn_glBindBufferRangeEXT ptr_glBindBufferRangeEXT

foreign import CALLCONV "dynamic" dyn_glBindBufferRangeEXT
  :: FunPtr (GLenum -> GLuint -> GLuint -> GLintptr -> GLsizeiptr -> IO ())
  ->         GLenum -> GLuint -> GLuint -> GLintptr -> GLsizeiptr -> IO ()

{-# NOINLINE ptr_glBindBufferRangeEXT #-}
ptr_glBindBufferRangeEXT :: FunPtr (GLenum -> GLuint -> GLuint -> GLintptr -> GLsizeiptr -> IO ())
ptr_glBindBufferRangeEXT = unsafePerformIO $ getCommand "glBindBufferRangeEXT"

-- glBindBufferRangeNV ---------------------------------------------------------

glBindBufferRangeNV
  :: GLenum -- ^ @target@.
  -> GLuint -- ^ @index@.
  -> GLuint -- ^ @buffer@.
  -> GLintptr -- ^ @offset@ of type @BufferOffset@.
  -> GLsizeiptr -- ^ @size@ of type @BufferSize@.
  -> IO ()
glBindBufferRangeNV = dyn_glBindBufferRangeNV ptr_glBindBufferRangeNV

foreign import CALLCONV "dynamic" dyn_glBindBufferRangeNV
  :: FunPtr (GLenum -> GLuint -> GLuint -> GLintptr -> GLsizeiptr -> IO ())
  ->         GLenum -> GLuint -> GLuint -> GLintptr -> GLsizeiptr -> IO ()

{-# NOINLINE ptr_glBindBufferRangeNV #-}
ptr_glBindBufferRangeNV :: FunPtr (GLenum -> GLuint -> GLuint -> GLintptr -> GLsizeiptr -> IO ())
ptr_glBindBufferRangeNV = unsafePerformIO $ getCommand "glBindBufferRangeNV"

-- glBindBuffersBase -----------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glBindBuffersBase.xhtml OpenGL 4.x>
glBindBuffersBase
  :: GLenum -- ^ @target@.
  -> GLuint -- ^ @first@.
  -> GLsizei -- ^ @count@.
  -> Ptr GLuint -- ^ @buffers@ pointing to @count@ elements of type @GLuint@.
  -> IO ()
glBindBuffersBase = dyn_glBindBuffersBase ptr_glBindBuffersBase

foreign import CALLCONV "dynamic" dyn_glBindBuffersBase
  :: FunPtr (GLenum -> GLuint -> GLsizei -> Ptr GLuint -> IO ())
  ->         GLenum -> GLuint -> GLsizei -> Ptr GLuint -> IO ()

{-# NOINLINE ptr_glBindBuffersBase #-}
ptr_glBindBuffersBase :: FunPtr (GLenum -> GLuint -> GLsizei -> Ptr GLuint -> IO ())
ptr_glBindBuffersBase = unsafePerformIO $ getCommand "glBindBuffersBase"

-- glBindBuffersRange ----------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glBindBuffersRange.xhtml OpenGL 4.x>
glBindBuffersRange
  :: GLenum -- ^ @target@.
  -> GLuint -- ^ @first@.
  -> GLsizei -- ^ @count@.
  -> Ptr GLuint -- ^ @buffers@ pointing to @count@ elements of type @GLuint@.
  -> Ptr GLintptr -- ^ @offsets@ pointing to @count@ elements of type @GLintptr@.
  -> Ptr GLsizeiptr -- ^ @sizes@ pointing to @count@ elements of type @GLsizeiptr@.
  -> IO ()
glBindBuffersRange = dyn_glBindBuffersRange ptr_glBindBuffersRange

foreign import CALLCONV "dynamic" dyn_glBindBuffersRange
  :: FunPtr (GLenum -> GLuint -> GLsizei -> Ptr GLuint -> Ptr GLintptr -> Ptr GLsizeiptr -> IO ())
  ->         GLenum -> GLuint -> GLsizei -> Ptr GLuint -> Ptr GLintptr -> Ptr GLsizeiptr -> IO ()

{-# NOINLINE ptr_glBindBuffersRange #-}
ptr_glBindBuffersRange :: FunPtr (GLenum -> GLuint -> GLsizei -> Ptr GLuint -> Ptr GLintptr -> Ptr GLsizeiptr -> IO ())
ptr_glBindBuffersRange = unsafePerformIO $ getCommand "glBindBuffersRange"

-- glBindFragDataLocation ------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glBindFragDataLocation.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glBindFragDataLocation.xhtml OpenGL 4.x>
glBindFragDataLocation
  :: GLuint -- ^ @program@.
  -> GLuint -- ^ @color@.
  -> Ptr GLchar -- ^ @name@ pointing to @COMPSIZE(name)@ elements of type @GLchar@.
  -> IO ()
glBindFragDataLocation = dyn_glBindFragDataLocation ptr_glBindFragDataLocation

foreign import CALLCONV "dynamic" dyn_glBindFragDataLocation
  :: FunPtr (GLuint -> GLuint -> Ptr GLchar -> IO ())
  ->         GLuint -> GLuint -> Ptr GLchar -> IO ()

{-# NOINLINE ptr_glBindFragDataLocation #-}
ptr_glBindFragDataLocation :: FunPtr (GLuint -> GLuint -> Ptr GLchar -> IO ())
ptr_glBindFragDataLocation = unsafePerformIO $ getCommand "glBindFragDataLocation"

-- glBindFragDataLocationEXT ---------------------------------------------------

glBindFragDataLocationEXT
  :: GLuint -- ^ @program@.
  -> GLuint -- ^ @color@.
  -> Ptr GLchar -- ^ @name@ pointing to @COMPSIZE(name)@ elements of type @GLchar@.
  -> IO ()
glBindFragDataLocationEXT = dyn_glBindFragDataLocationEXT ptr_glBindFragDataLocationEXT

foreign import CALLCONV "dynamic" dyn_glBindFragDataLocationEXT
  :: FunPtr (GLuint -> GLuint -> Ptr GLchar -> IO ())
  ->         GLuint -> GLuint -> Ptr GLchar -> IO ()

{-# NOINLINE ptr_glBindFragDataLocationEXT #-}
ptr_glBindFragDataLocationEXT :: FunPtr (GLuint -> GLuint -> Ptr GLchar -> IO ())
ptr_glBindFragDataLocationEXT = unsafePerformIO $ getCommand "glBindFragDataLocationEXT"

-- glBindFragDataLocationIndexed -----------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glBindFragDataLocationIndexed.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glBindFragDataLocationIndexed.xhtml OpenGL 4.x>
glBindFragDataLocationIndexed
  :: GLuint -- ^ @program@.
  -> GLuint -- ^ @colorNumber@.
  -> GLuint -- ^ @index@.
  -> Ptr GLchar -- ^ @name@.
  -> IO ()
glBindFragDataLocationIndexed = dyn_glBindFragDataLocationIndexed ptr_glBindFragDataLocationIndexed

foreign import CALLCONV "dynamic" dyn_glBindFragDataLocationIndexed
  :: FunPtr (GLuint -> GLuint -> GLuint -> Ptr GLchar -> IO ())
  ->         GLuint -> GLuint -> GLuint -> Ptr GLchar -> IO ()

{-# NOINLINE ptr_glBindFragDataLocationIndexed #-}
ptr_glBindFragDataLocationIndexed :: FunPtr (GLuint -> GLuint -> GLuint -> Ptr GLchar -> IO ())
ptr_glBindFragDataLocationIndexed = unsafePerformIO $ getCommand "glBindFragDataLocationIndexed"

-- glBindFragmentShaderATI -----------------------------------------------------

glBindFragmentShaderATI
  :: GLuint -- ^ @id@.
  -> IO ()
glBindFragmentShaderATI = dyn_glBindFragmentShaderATI ptr_glBindFragmentShaderATI

foreign import CALLCONV "dynamic" dyn_glBindFragmentShaderATI
  :: FunPtr (GLuint -> IO ())
  ->         GLuint -> IO ()

{-# NOINLINE ptr_glBindFragmentShaderATI #-}
ptr_glBindFragmentShaderATI :: FunPtr (GLuint -> IO ())
ptr_glBindFragmentShaderATI = unsafePerformIO $ getCommand "glBindFragmentShaderATI"

-- glBindFramebuffer -----------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glBindFramebuffer.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glBindFramebuffer.xhtml OpenGL 4.x>
glBindFramebuffer
  :: GLenum -- ^ @target@ of type @FramebufferTarget@.
  -> GLuint -- ^ @framebuffer@.
  -> IO ()
glBindFramebuffer = dyn_glBindFramebuffer ptr_glBindFramebuffer

foreign import CALLCONV "dynamic" dyn_glBindFramebuffer
  :: FunPtr (GLenum -> GLuint -> IO ())
  ->         GLenum -> GLuint -> IO ()

{-# NOINLINE ptr_glBindFramebuffer #-}
ptr_glBindFramebuffer :: FunPtr (GLenum -> GLuint -> IO ())
ptr_glBindFramebuffer = unsafePerformIO $ getCommand "glBindFramebuffer"

-- glBindFramebufferEXT --------------------------------------------------------

glBindFramebufferEXT
  :: GLenum -- ^ @target@ of type @FramebufferTarget@.
  -> GLuint -- ^ @framebuffer@.
  -> IO ()
glBindFramebufferEXT = dyn_glBindFramebufferEXT ptr_glBindFramebufferEXT

foreign import CALLCONV "dynamic" dyn_glBindFramebufferEXT
  :: FunPtr (GLenum -> GLuint -> IO ())
  ->         GLenum -> GLuint -> IO ()

{-# NOINLINE ptr_glBindFramebufferEXT #-}
ptr_glBindFramebufferEXT :: FunPtr (GLenum -> GLuint -> IO ())
ptr_glBindFramebufferEXT = unsafePerformIO $ getCommand "glBindFramebufferEXT"

-- glBindFramebufferOES --------------------------------------------------------

glBindFramebufferOES
  :: GLenum -- ^ @target@.
  -> GLuint -- ^ @framebuffer@.
  -> IO ()
glBindFramebufferOES = dyn_glBindFramebufferOES ptr_glBindFramebufferOES

foreign import CALLCONV "dynamic" dyn_glBindFramebufferOES
  :: FunPtr (GLenum -> GLuint -> IO ())
  ->         GLenum -> GLuint -> IO ()

{-# NOINLINE ptr_glBindFramebufferOES #-}
ptr_glBindFramebufferOES :: FunPtr (GLenum -> GLuint -> IO ())
ptr_glBindFramebufferOES = unsafePerformIO $ getCommand "glBindFramebufferOES"

-- glBindImageTexture ----------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glBindImageTexture.xhtml OpenGL 4.x>
glBindImageTexture
  :: GLuint -- ^ @unit@.
  -> GLuint -- ^ @texture@.
  -> GLint -- ^ @level@.
  -> GLboolean -- ^ @layered@ of type @Boolean@.
  -> GLint -- ^ @layer@.
  -> GLenum -- ^ @access@.
  -> GLenum -- ^ @format@.
  -> IO ()
glBindImageTexture = dyn_glBindImageTexture ptr_glBindImageTexture

foreign import CALLCONV "dynamic" dyn_glBindImageTexture
  :: FunPtr (GLuint -> GLuint -> GLint -> GLboolean -> GLint -> GLenum -> GLenum -> IO ())
  ->         GLuint -> GLuint -> GLint -> GLboolean -> GLint -> GLenum -> GLenum -> IO ()

{-# NOINLINE ptr_glBindImageTexture #-}
ptr_glBindImageTexture :: FunPtr (GLuint -> GLuint -> GLint -> GLboolean -> GLint -> GLenum -> GLenum -> IO ())
ptr_glBindImageTexture = unsafePerformIO $ getCommand "glBindImageTexture"

-- glBindImageTextureEXT -------------------------------------------------------

glBindImageTextureEXT
  :: GLuint -- ^ @index@.
  -> GLuint -- ^ @texture@.
  -> GLint -- ^ @level@.
  -> GLboolean -- ^ @layered@ of type @Boolean@.
  -> GLint -- ^ @layer@.
  -> GLenum -- ^ @access@.
  -> GLint -- ^ @format@.
  -> IO ()
glBindImageTextureEXT = dyn_glBindImageTextureEXT ptr_glBindImageTextureEXT

foreign import CALLCONV "dynamic" dyn_glBindImageTextureEXT
  :: FunPtr (GLuint -> GLuint -> GLint -> GLboolean -> GLint -> GLenum -> GLint -> IO ())
  ->         GLuint -> GLuint -> GLint -> GLboolean -> GLint -> GLenum -> GLint -> IO ()

{-# NOINLINE ptr_glBindImageTextureEXT #-}
ptr_glBindImageTextureEXT :: FunPtr (GLuint -> GLuint -> GLint -> GLboolean -> GLint -> GLenum -> GLint -> IO ())
ptr_glBindImageTextureEXT = unsafePerformIO $ getCommand "glBindImageTextureEXT"

-- glBindImageTextures ---------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glBindImageTextures.xhtml OpenGL 4.x>
glBindImageTextures
  :: GLuint -- ^ @first@.
  -> GLsizei -- ^ @count@.
  -> Ptr GLuint -- ^ @textures@ pointing to @count@ elements of type @GLuint@.
  -> IO ()
glBindImageTextures = dyn_glBindImageTextures ptr_glBindImageTextures

foreign import CALLCONV "dynamic" dyn_glBindImageTextures
  :: FunPtr (GLuint -> GLsizei -> Ptr GLuint -> IO ())
  ->         GLuint -> GLsizei -> Ptr GLuint -> IO ()

{-# NOINLINE ptr_glBindImageTextures #-}
ptr_glBindImageTextures :: FunPtr (GLuint -> GLsizei -> Ptr GLuint -> IO ())
ptr_glBindImageTextures = unsafePerformIO $ getCommand "glBindImageTextures"

-- glBindLightParameterEXT -----------------------------------------------------

glBindLightParameterEXT
  :: GLenum -- ^ @light@ of type @LightName@.
  -> GLenum -- ^ @value@ of type @LightParameter@.
  -> IO GLuint
glBindLightParameterEXT = dyn_glBindLightParameterEXT ptr_glBindLightParameterEXT

foreign import CALLCONV "dynamic" dyn_glBindLightParameterEXT
  :: FunPtr (GLenum -> GLenum -> IO GLuint)
  ->         GLenum -> GLenum -> IO GLuint

{-# NOINLINE ptr_glBindLightParameterEXT #-}
ptr_glBindLightParameterEXT :: FunPtr (GLenum -> GLenum -> IO GLuint)
ptr_glBindLightParameterEXT = unsafePerformIO $ getCommand "glBindLightParameterEXT"

-- glBindMaterialParameterEXT --------------------------------------------------

glBindMaterialParameterEXT
  :: GLenum -- ^ @face@ of type @MaterialFace@.
  -> GLenum -- ^ @value@ of type @MaterialParameter@.
  -> IO GLuint
glBindMaterialParameterEXT = dyn_glBindMaterialParameterEXT ptr_glBindMaterialParameterEXT

foreign import CALLCONV "dynamic" dyn_glBindMaterialParameterEXT
  :: FunPtr (GLenum -> GLenum -> IO GLuint)
  ->         GLenum -> GLenum -> IO GLuint

{-# NOINLINE ptr_glBindMaterialParameterEXT #-}
ptr_glBindMaterialParameterEXT :: FunPtr (GLenum -> GLenum -> IO GLuint)
ptr_glBindMaterialParameterEXT = unsafePerformIO $ getCommand "glBindMaterialParameterEXT"

-- glBindMultiTextureEXT -------------------------------------------------------

glBindMultiTextureEXT
  :: GLenum -- ^ @texunit@ of type @TextureUnit@.
  -> GLenum -- ^ @target@ of type @TextureTarget@.
  -> GLuint -- ^ @texture@ of type @Texture@.
  -> IO ()
glBindMultiTextureEXT = dyn_glBindMultiTextureEXT ptr_glBindMultiTextureEXT

foreign import CALLCONV "dynamic" dyn_glBindMultiTextureEXT
  :: FunPtr (GLenum -> GLenum -> GLuint -> IO ())
  ->         GLenum -> GLenum -> GLuint -> IO ()

{-# NOINLINE ptr_glBindMultiTextureEXT #-}
ptr_glBindMultiTextureEXT :: FunPtr (GLenum -> GLenum -> GLuint -> IO ())
ptr_glBindMultiTextureEXT = unsafePerformIO $ getCommand "glBindMultiTextureEXT"

-- glBindParameterEXT ----------------------------------------------------------

glBindParameterEXT
  :: GLenum -- ^ @value@ of type @VertexShaderParameterEXT@.
  -> IO GLuint
glBindParameterEXT = dyn_glBindParameterEXT ptr_glBindParameterEXT

foreign import CALLCONV "dynamic" dyn_glBindParameterEXT
  :: FunPtr (GLenum -> IO GLuint)
  ->         GLenum -> IO GLuint

{-# NOINLINE ptr_glBindParameterEXT #-}
ptr_glBindParameterEXT :: FunPtr (GLenum -> IO GLuint)
ptr_glBindParameterEXT = unsafePerformIO $ getCommand "glBindParameterEXT"

-- glBindProgramARB ------------------------------------------------------------

glBindProgramARB
  :: GLenum -- ^ @target@ of type @ProgramTargetARB@.
  -> GLuint -- ^ @program@.
  -> IO ()
glBindProgramARB = dyn_glBindProgramARB ptr_glBindProgramARB

foreign import CALLCONV "dynamic" dyn_glBindProgramARB
  :: FunPtr (GLenum -> GLuint -> IO ())
  ->         GLenum -> GLuint -> IO ()

{-# NOINLINE ptr_glBindProgramARB #-}
ptr_glBindProgramARB :: FunPtr (GLenum -> GLuint -> IO ())
ptr_glBindProgramARB = unsafePerformIO $ getCommand "glBindProgramARB"

-- glBindProgramNV -------------------------------------------------------------

glBindProgramNV
  :: GLenum -- ^ @target@ of type @VertexAttribEnumNV@.
  -> GLuint -- ^ @id@.
  -> IO ()
glBindProgramNV = dyn_glBindProgramNV ptr_glBindProgramNV

foreign import CALLCONV "dynamic" dyn_glBindProgramNV
  :: FunPtr (GLenum -> GLuint -> IO ())
  ->         GLenum -> GLuint -> IO ()

{-# NOINLINE ptr_glBindProgramNV #-}
ptr_glBindProgramNV :: FunPtr (GLenum -> GLuint -> IO ())
ptr_glBindProgramNV = unsafePerformIO $ getCommand "glBindProgramNV"

-- glBindProgramPipeline -------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glBindProgramPipeline.xhtml OpenGL 4.x>
glBindProgramPipeline
  :: GLuint -- ^ @pipeline@.
  -> IO ()
glBindProgramPipeline = dyn_glBindProgramPipeline ptr_glBindProgramPipeline

foreign import CALLCONV "dynamic" dyn_glBindProgramPipeline
  :: FunPtr (GLuint -> IO ())
  ->         GLuint -> IO ()

{-# NOINLINE ptr_glBindProgramPipeline #-}
ptr_glBindProgramPipeline :: FunPtr (GLuint -> IO ())
ptr_glBindProgramPipeline = unsafePerformIO $ getCommand "glBindProgramPipeline"

-- glBindProgramPipelineEXT ----------------------------------------------------

glBindProgramPipelineEXT
  :: GLuint -- ^ @pipeline@.
  -> IO ()
glBindProgramPipelineEXT = dyn_glBindProgramPipelineEXT ptr_glBindProgramPipelineEXT

foreign import CALLCONV "dynamic" dyn_glBindProgramPipelineEXT
  :: FunPtr (GLuint -> IO ())
  ->         GLuint -> IO ()

{-# NOINLINE ptr_glBindProgramPipelineEXT #-}
ptr_glBindProgramPipelineEXT :: FunPtr (GLuint -> IO ())
ptr_glBindProgramPipelineEXT = unsafePerformIO $ getCommand "glBindProgramPipelineEXT"

-- glBindRenderbuffer ----------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glBindRenderbuffer.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glBindRenderbuffer.xhtml OpenGL 4.x>
glBindRenderbuffer
  :: GLenum -- ^ @target@ of type @RenderbufferTarget@.
  -> GLuint -- ^ @renderbuffer@.
  -> IO ()
glBindRenderbuffer = dyn_glBindRenderbuffer ptr_glBindRenderbuffer

foreign import CALLCONV "dynamic" dyn_glBindRenderbuffer
  :: FunPtr (GLenum -> GLuint -> IO ())
  ->         GLenum -> GLuint -> IO ()

{-# NOINLINE ptr_glBindRenderbuffer #-}
ptr_glBindRenderbuffer :: FunPtr (GLenum -> GLuint -> IO ())
ptr_glBindRenderbuffer = unsafePerformIO $ getCommand "glBindRenderbuffer"

-- glBindRenderbufferEXT -------------------------------------------------------

glBindRenderbufferEXT
  :: GLenum -- ^ @target@ of type @RenderbufferTarget@.
  -> GLuint -- ^ @renderbuffer@.
  -> IO ()
glBindRenderbufferEXT = dyn_glBindRenderbufferEXT ptr_glBindRenderbufferEXT

foreign import CALLCONV "dynamic" dyn_glBindRenderbufferEXT
  :: FunPtr (GLenum -> GLuint -> IO ())
  ->         GLenum -> GLuint -> IO ()

{-# NOINLINE ptr_glBindRenderbufferEXT #-}
ptr_glBindRenderbufferEXT :: FunPtr (GLenum -> GLuint -> IO ())
ptr_glBindRenderbufferEXT = unsafePerformIO $ getCommand "glBindRenderbufferEXT"

-- glBindRenderbufferOES -------------------------------------------------------

glBindRenderbufferOES
  :: GLenum -- ^ @target@.
  -> GLuint -- ^ @renderbuffer@.
  -> IO ()
glBindRenderbufferOES = dyn_glBindRenderbufferOES ptr_glBindRenderbufferOES

foreign import CALLCONV "dynamic" dyn_glBindRenderbufferOES
  :: FunPtr (GLenum -> GLuint -> IO ())
  ->         GLenum -> GLuint -> IO ()

{-# NOINLINE ptr_glBindRenderbufferOES #-}
ptr_glBindRenderbufferOES :: FunPtr (GLenum -> GLuint -> IO ())
ptr_glBindRenderbufferOES = unsafePerformIO $ getCommand "glBindRenderbufferOES"

-- glBindSampler ---------------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glBindSampler.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glBindSampler.xhtml OpenGL 4.x>
glBindSampler
  :: GLuint -- ^ @unit@.
  -> GLuint -- ^ @sampler@.
  -> IO ()
glBindSampler = dyn_glBindSampler ptr_glBindSampler

foreign import CALLCONV "dynamic" dyn_glBindSampler
  :: FunPtr (GLuint -> GLuint -> IO ())
  ->         GLuint -> GLuint -> IO ()

{-# NOINLINE ptr_glBindSampler #-}
ptr_glBindSampler :: FunPtr (GLuint -> GLuint -> IO ())
ptr_glBindSampler = unsafePerformIO $ getCommand "glBindSampler"

-- glBindSamplers --------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glBindSamplers.xhtml OpenGL 4.x>
glBindSamplers
  :: GLuint -- ^ @first@.
  -> GLsizei -- ^ @count@.
  -> Ptr GLuint -- ^ @samplers@ pointing to @count@ elements of type @GLuint@.
  -> IO ()
glBindSamplers = dyn_glBindSamplers ptr_glBindSamplers

foreign import CALLCONV "dynamic" dyn_glBindSamplers
  :: FunPtr (GLuint -> GLsizei -> Ptr GLuint -> IO ())
  ->         GLuint -> GLsizei -> Ptr GLuint -> IO ()

{-# NOINLINE ptr_glBindSamplers #-}
ptr_glBindSamplers :: FunPtr (GLuint -> GLsizei -> Ptr GLuint -> IO ())
ptr_glBindSamplers = unsafePerformIO $ getCommand "glBindSamplers"

-- glBindTexGenParameterEXT ----------------------------------------------------

glBindTexGenParameterEXT
  :: GLenum -- ^ @unit@ of type @TextureUnit@.
  -> GLenum -- ^ @coord@ of type @TextureCoordName@.
  -> GLenum -- ^ @value@ of type @TextureGenParameter@.
  -> IO GLuint
glBindTexGenParameterEXT = dyn_glBindTexGenParameterEXT ptr_glBindTexGenParameterEXT

foreign import CALLCONV "dynamic" dyn_glBindTexGenParameterEXT
  :: FunPtr (GLenum -> GLenum -> GLenum -> IO GLuint)
  ->         GLenum -> GLenum -> GLenum -> IO GLuint

{-# NOINLINE ptr_glBindTexGenParameterEXT #-}
ptr_glBindTexGenParameterEXT :: FunPtr (GLenum -> GLenum -> GLenum -> IO GLuint)
ptr_glBindTexGenParameterEXT = unsafePerformIO $ getCommand "glBindTexGenParameterEXT"

-- glBindTexture ---------------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glBindTexture.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glBindTexture.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glBindTexture.xhtml OpenGL 4.x>
glBindTexture
  :: GLenum -- ^ @target@ of type @TextureTarget@.
  -> GLuint -- ^ @texture@ of type @Texture@.
  -> IO ()
glBindTexture = dyn_glBindTexture ptr_glBindTexture

foreign import CALLCONV "dynamic" dyn_glBindTexture
  :: FunPtr (GLenum -> GLuint -> IO ())
  ->         GLenum -> GLuint -> IO ()

{-# NOINLINE ptr_glBindTexture #-}
ptr_glBindTexture :: FunPtr (GLenum -> GLuint -> IO ())
ptr_glBindTexture = unsafePerformIO $ getCommand "glBindTexture"

-- glBindTextureEXT ------------------------------------------------------------

glBindTextureEXT
  :: GLenum -- ^ @target@ of type @TextureTarget@.
  -> GLuint -- ^ @texture@ of type @Texture@.
  -> IO ()
glBindTextureEXT = dyn_glBindTextureEXT ptr_glBindTextureEXT

foreign import CALLCONV "dynamic" dyn_glBindTextureEXT
  :: FunPtr (GLenum -> GLuint -> IO ())
  ->         GLenum -> GLuint -> IO ()

{-# NOINLINE ptr_glBindTextureEXT #-}
ptr_glBindTextureEXT :: FunPtr (GLenum -> GLuint -> IO ())
ptr_glBindTextureEXT = unsafePerformIO $ getCommand "glBindTextureEXT"

-- glBindTextureUnit -----------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glBindTextureUnit.xhtml OpenGL 4.x>
glBindTextureUnit
  :: GLuint -- ^ @unit@.
  -> GLuint -- ^ @texture@.
  -> IO ()
glBindTextureUnit = dyn_glBindTextureUnit ptr_glBindTextureUnit

foreign import CALLCONV "dynamic" dyn_glBindTextureUnit
  :: FunPtr (GLuint -> GLuint -> IO ())
  ->         GLuint -> GLuint -> IO ()

{-# NOINLINE ptr_glBindTextureUnit #-}
ptr_glBindTextureUnit :: FunPtr (GLuint -> GLuint -> IO ())
ptr_glBindTextureUnit = unsafePerformIO $ getCommand "glBindTextureUnit"

-- glBindTextureUnitParameterEXT -----------------------------------------------

glBindTextureUnitParameterEXT
  :: GLenum -- ^ @unit@ of type @TextureUnit@.
  -> GLenum -- ^ @value@ of type @VertexShaderTextureUnitParameter@.
  -> IO GLuint
glBindTextureUnitParameterEXT = dyn_glBindTextureUnitParameterEXT ptr_glBindTextureUnitParameterEXT

foreign import CALLCONV "dynamic" dyn_glBindTextureUnitParameterEXT
  :: FunPtr (GLenum -> GLenum -> IO GLuint)
  ->         GLenum -> GLenum -> IO GLuint

{-# NOINLINE ptr_glBindTextureUnitParameterEXT #-}
ptr_glBindTextureUnitParameterEXT :: FunPtr (GLenum -> GLenum -> IO GLuint)
ptr_glBindTextureUnitParameterEXT = unsafePerformIO $ getCommand "glBindTextureUnitParameterEXT"

-- glBindTextures --------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glBindTextures.xhtml OpenGL 4.x>
glBindTextures
  :: GLuint -- ^ @first@.
  -> GLsizei -- ^ @count@.
  -> Ptr GLuint -- ^ @textures@ pointing to @count@ elements of type @GLuint@.
  -> IO ()
glBindTextures = dyn_glBindTextures ptr_glBindTextures

foreign import CALLCONV "dynamic" dyn_glBindTextures
  :: FunPtr (GLuint -> GLsizei -> Ptr GLuint -> IO ())
  ->         GLuint -> GLsizei -> Ptr GLuint -> IO ()

{-# NOINLINE ptr_glBindTextures #-}
ptr_glBindTextures :: FunPtr (GLuint -> GLsizei -> Ptr GLuint -> IO ())
ptr_glBindTextures = unsafePerformIO $ getCommand "glBindTextures"

-- glBindTransformFeedback -----------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glBindTransformFeedback.xhtml OpenGL 4.x>
glBindTransformFeedback
  :: GLenum -- ^ @target@.
  -> GLuint -- ^ @id@.
  -> IO ()
glBindTransformFeedback = dyn_glBindTransformFeedback ptr_glBindTransformFeedback

foreign import CALLCONV "dynamic" dyn_glBindTransformFeedback
  :: FunPtr (GLenum -> GLuint -> IO ())
  ->         GLenum -> GLuint -> IO ()

{-# NOINLINE ptr_glBindTransformFeedback #-}
ptr_glBindTransformFeedback :: FunPtr (GLenum -> GLuint -> IO ())
ptr_glBindTransformFeedback = unsafePerformIO $ getCommand "glBindTransformFeedback"

-- glBindTransformFeedbackNV ---------------------------------------------------

glBindTransformFeedbackNV
  :: GLenum -- ^ @target@ of type @BufferTargetARB@.
  -> GLuint -- ^ @id@.
  -> IO ()
glBindTransformFeedbackNV = dyn_glBindTransformFeedbackNV ptr_glBindTransformFeedbackNV

foreign import CALLCONV "dynamic" dyn_glBindTransformFeedbackNV
  :: FunPtr (GLenum -> GLuint -> IO ())
  ->         GLenum -> GLuint -> IO ()

{-# NOINLINE ptr_glBindTransformFeedbackNV #-}
ptr_glBindTransformFeedbackNV :: FunPtr (GLenum -> GLuint -> IO ())
ptr_glBindTransformFeedbackNV = unsafePerformIO $ getCommand "glBindTransformFeedbackNV"

-- glBindVertexArray -----------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glBindVertexArray.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glBindVertexArray.xhtml OpenGL 4.x>
glBindVertexArray
  :: GLuint -- ^ @array@.
  -> IO ()
glBindVertexArray = dyn_glBindVertexArray ptr_glBindVertexArray

foreign import CALLCONV "dynamic" dyn_glBindVertexArray
  :: FunPtr (GLuint -> IO ())
  ->         GLuint -> IO ()

{-# NOINLINE ptr_glBindVertexArray #-}
ptr_glBindVertexArray :: FunPtr (GLuint -> IO ())
ptr_glBindVertexArray = unsafePerformIO $ getCommand "glBindVertexArray"

-- glBindVertexArrayAPPLE ------------------------------------------------------

glBindVertexArrayAPPLE
  :: GLuint -- ^ @array@.
  -> IO ()
glBindVertexArrayAPPLE = dyn_glBindVertexArrayAPPLE ptr_glBindVertexArrayAPPLE

foreign import CALLCONV "dynamic" dyn_glBindVertexArrayAPPLE
  :: FunPtr (GLuint -> IO ())
  ->         GLuint -> IO ()

{-# NOINLINE ptr_glBindVertexArrayAPPLE #-}
ptr_glBindVertexArrayAPPLE :: FunPtr (GLuint -> IO ())
ptr_glBindVertexArrayAPPLE = unsafePerformIO $ getCommand "glBindVertexArrayAPPLE"

-- glBindVertexArrayOES --------------------------------------------------------

glBindVertexArrayOES
  :: GLuint -- ^ @array@.
  -> IO ()
glBindVertexArrayOES = dyn_glBindVertexArrayOES ptr_glBindVertexArrayOES

foreign import CALLCONV "dynamic" dyn_glBindVertexArrayOES
  :: FunPtr (GLuint -> IO ())
  ->         GLuint -> IO ()

{-# NOINLINE ptr_glBindVertexArrayOES #-}
ptr_glBindVertexArrayOES :: FunPtr (GLuint -> IO ())
ptr_glBindVertexArrayOES = unsafePerformIO $ getCommand "glBindVertexArrayOES"

-- glBindVertexBuffer ----------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glBindVertexBuffer.xhtml OpenGL 4.x>
glBindVertexBuffer
  :: GLuint -- ^ @bindingindex@.
  -> GLuint -- ^ @buffer@.
  -> GLintptr -- ^ @offset@ of type @BufferOffset@.
  -> GLsizei -- ^ @stride@.
  -> IO ()
glBindVertexBuffer = dyn_glBindVertexBuffer ptr_glBindVertexBuffer

foreign import CALLCONV "dynamic" dyn_glBindVertexBuffer
  :: FunPtr (GLuint -> GLuint -> GLintptr -> GLsizei -> IO ())
  ->         GLuint -> GLuint -> GLintptr -> GLsizei -> IO ()

{-# NOINLINE ptr_glBindVertexBuffer #-}
ptr_glBindVertexBuffer :: FunPtr (GLuint -> GLuint -> GLintptr -> GLsizei -> IO ())
ptr_glBindVertexBuffer = unsafePerformIO $ getCommand "glBindVertexBuffer"

-- glBindVertexBuffers ---------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glBindVertexBuffers.xhtml OpenGL 4.x>
glBindVertexBuffers
  :: GLuint -- ^ @first@.
  -> GLsizei -- ^ @count@.
  -> Ptr GLuint -- ^ @buffers@ pointing to @count@ elements of type @GLuint@.
  -> Ptr GLintptr -- ^ @offsets@ pointing to @count@ elements of type @GLintptr@.
  -> Ptr GLsizei -- ^ @strides@ pointing to @count@ elements of type @GLsizei@.
  -> IO ()
glBindVertexBuffers = dyn_glBindVertexBuffers ptr_glBindVertexBuffers

foreign import CALLCONV "dynamic" dyn_glBindVertexBuffers
  :: FunPtr (GLuint -> GLsizei -> Ptr GLuint -> Ptr GLintptr -> Ptr GLsizei -> IO ())
  ->         GLuint -> GLsizei -> Ptr GLuint -> Ptr GLintptr -> Ptr GLsizei -> IO ()

{-# NOINLINE ptr_glBindVertexBuffers #-}
ptr_glBindVertexBuffers :: FunPtr (GLuint -> GLsizei -> Ptr GLuint -> Ptr GLintptr -> Ptr GLsizei -> IO ())
ptr_glBindVertexBuffers = unsafePerformIO $ getCommand "glBindVertexBuffers"

-- glBindVertexShaderEXT -------------------------------------------------------

glBindVertexShaderEXT
  :: GLuint -- ^ @id@.
  -> IO ()
glBindVertexShaderEXT = dyn_glBindVertexShaderEXT ptr_glBindVertexShaderEXT

foreign import CALLCONV "dynamic" dyn_glBindVertexShaderEXT
  :: FunPtr (GLuint -> IO ())
  ->         GLuint -> IO ()

{-# NOINLINE ptr_glBindVertexShaderEXT #-}
ptr_glBindVertexShaderEXT :: FunPtr (GLuint -> IO ())
ptr_glBindVertexShaderEXT = unsafePerformIO $ getCommand "glBindVertexShaderEXT"

-- glBindVideoCaptureStreamBufferNV --------------------------------------------

glBindVideoCaptureStreamBufferNV
  :: GLuint -- ^ @video_capture_slot@.
  -> GLuint -- ^ @stream@.
  -> GLenum -- ^ @frame_region@.
  -> GLintptrARB -- ^ @offset@ of type @BufferOffsetARB@.
  -> IO ()
glBindVideoCaptureStreamBufferNV = dyn_glBindVideoCaptureStreamBufferNV ptr_glBindVideoCaptureStreamBufferNV

foreign import CALLCONV "dynamic" dyn_glBindVideoCaptureStreamBufferNV
  :: FunPtr (GLuint -> GLuint -> GLenum -> GLintptrARB -> IO ())
  ->         GLuint -> GLuint -> GLenum -> GLintptrARB -> IO ()

{-# NOINLINE ptr_glBindVideoCaptureStreamBufferNV #-}
ptr_glBindVideoCaptureStreamBufferNV :: FunPtr (GLuint -> GLuint -> GLenum -> GLintptrARB -> IO ())
ptr_glBindVideoCaptureStreamBufferNV = unsafePerformIO $ getCommand "glBindVideoCaptureStreamBufferNV"

-- glBindVideoCaptureStreamTextureNV -------------------------------------------

glBindVideoCaptureStreamTextureNV
  :: GLuint -- ^ @video_capture_slot@.
  -> GLuint -- ^ @stream@.
  -> GLenum -- ^ @frame_region@.
  -> GLenum -- ^ @target@.
  -> GLuint -- ^ @texture@.
  -> IO ()
glBindVideoCaptureStreamTextureNV = dyn_glBindVideoCaptureStreamTextureNV ptr_glBindVideoCaptureStreamTextureNV

foreign import CALLCONV "dynamic" dyn_glBindVideoCaptureStreamTextureNV
  :: FunPtr (GLuint -> GLuint -> GLenum -> GLenum -> GLuint -> IO ())
  ->         GLuint -> GLuint -> GLenum -> GLenum -> GLuint -> IO ()

{-# NOINLINE ptr_glBindVideoCaptureStreamTextureNV #-}
ptr_glBindVideoCaptureStreamTextureNV :: FunPtr (GLuint -> GLuint -> GLenum -> GLenum -> GLuint -> IO ())
ptr_glBindVideoCaptureStreamTextureNV = unsafePerformIO $ getCommand "glBindVideoCaptureStreamTextureNV"

-- glBinormal3bEXT -------------------------------------------------------------

glBinormal3bEXT
  :: GLbyte -- ^ @bx@.
  -> GLbyte -- ^ @by@.
  -> GLbyte -- ^ @bz@.
  -> IO ()
glBinormal3bEXT = dyn_glBinormal3bEXT ptr_glBinormal3bEXT

foreign import CALLCONV "dynamic" dyn_glBinormal3bEXT
  :: FunPtr (GLbyte -> GLbyte -> GLbyte -> IO ())
  ->         GLbyte -> GLbyte -> GLbyte -> IO ()

{-# NOINLINE ptr_glBinormal3bEXT #-}
ptr_glBinormal3bEXT :: FunPtr (GLbyte -> GLbyte -> GLbyte -> IO ())
ptr_glBinormal3bEXT = unsafePerformIO $ getCommand "glBinormal3bEXT"

-- glBinormal3bvEXT ------------------------------------------------------------

glBinormal3bvEXT
  :: Ptr GLbyte -- ^ @v@ pointing to @3@ elements of type @GLbyte@.
  -> IO ()
glBinormal3bvEXT = dyn_glBinormal3bvEXT ptr_glBinormal3bvEXT

foreign import CALLCONV "dynamic" dyn_glBinormal3bvEXT
  :: FunPtr (Ptr GLbyte -> IO ())
  ->         Ptr GLbyte -> IO ()

{-# NOINLINE ptr_glBinormal3bvEXT #-}
ptr_glBinormal3bvEXT :: FunPtr (Ptr GLbyte -> IO ())
ptr_glBinormal3bvEXT = unsafePerformIO $ getCommand "glBinormal3bvEXT"

-- glBinormal3dEXT -------------------------------------------------------------

glBinormal3dEXT
  :: GLdouble -- ^ @bx@ of type @CoordD@.
  -> GLdouble -- ^ @by@ of type @CoordD@.
  -> GLdouble -- ^ @bz@ of type @CoordD@.
  -> IO ()
glBinormal3dEXT = dyn_glBinormal3dEXT ptr_glBinormal3dEXT

foreign import CALLCONV "dynamic" dyn_glBinormal3dEXT
  :: FunPtr (GLdouble -> GLdouble -> GLdouble -> IO ())
  ->         GLdouble -> GLdouble -> GLdouble -> IO ()

{-# NOINLINE ptr_glBinormal3dEXT #-}
ptr_glBinormal3dEXT :: FunPtr (GLdouble -> GLdouble -> GLdouble -> IO ())
ptr_glBinormal3dEXT = unsafePerformIO $ getCommand "glBinormal3dEXT"

-- glBinormal3dvEXT ------------------------------------------------------------

glBinormal3dvEXT
  :: Ptr GLdouble -- ^ @v@ pointing to @3@ elements of type @CoordD@.
  -> IO ()
glBinormal3dvEXT = dyn_glBinormal3dvEXT ptr_glBinormal3dvEXT

foreign import CALLCONV "dynamic" dyn_glBinormal3dvEXT
  :: FunPtr (Ptr GLdouble -> IO ())
  ->         Ptr GLdouble -> IO ()

{-# NOINLINE ptr_glBinormal3dvEXT #-}
ptr_glBinormal3dvEXT :: FunPtr (Ptr GLdouble -> IO ())
ptr_glBinormal3dvEXT = unsafePerformIO $ getCommand "glBinormal3dvEXT"

-- glBinormal3fEXT -------------------------------------------------------------

glBinormal3fEXT
  :: GLfloat -- ^ @bx@ of type @CoordF@.
  -> GLfloat -- ^ @by@ of type @CoordF@.
  -> GLfloat -- ^ @bz@ of type @CoordF@.
  -> IO ()
glBinormal3fEXT = dyn_glBinormal3fEXT ptr_glBinormal3fEXT

foreign import CALLCONV "dynamic" dyn_glBinormal3fEXT
  :: FunPtr (GLfloat -> GLfloat -> GLfloat -> IO ())
  ->         GLfloat -> GLfloat -> GLfloat -> IO ()

{-# NOINLINE ptr_glBinormal3fEXT #-}
ptr_glBinormal3fEXT :: FunPtr (GLfloat -> GLfloat -> GLfloat -> IO ())
ptr_glBinormal3fEXT = unsafePerformIO $ getCommand "glBinormal3fEXT"

-- glBinormal3fvEXT ------------------------------------------------------------

glBinormal3fvEXT
  :: Ptr GLfloat -- ^ @v@ pointing to @3@ elements of type @CoordF@.
  -> IO ()
glBinormal3fvEXT = dyn_glBinormal3fvEXT ptr_glBinormal3fvEXT

foreign import CALLCONV "dynamic" dyn_glBinormal3fvEXT
  :: FunPtr (Ptr GLfloat -> IO ())
  ->         Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glBinormal3fvEXT #-}
ptr_glBinormal3fvEXT :: FunPtr (Ptr GLfloat -> IO ())
ptr_glBinormal3fvEXT = unsafePerformIO $ getCommand "glBinormal3fvEXT"

-- glBinormal3iEXT -------------------------------------------------------------

glBinormal3iEXT
  :: GLint -- ^ @bx@.
  -> GLint -- ^ @by@.
  -> GLint -- ^ @bz@.
  -> IO ()
glBinormal3iEXT = dyn_glBinormal3iEXT ptr_glBinormal3iEXT

foreign import CALLCONV "dynamic" dyn_glBinormal3iEXT
  :: FunPtr (GLint -> GLint -> GLint -> IO ())
  ->         GLint -> GLint -> GLint -> IO ()

{-# NOINLINE ptr_glBinormal3iEXT #-}
ptr_glBinormal3iEXT :: FunPtr (GLint -> GLint -> GLint -> IO ())
ptr_glBinormal3iEXT = unsafePerformIO $ getCommand "glBinormal3iEXT"

-- glBinormal3ivEXT ------------------------------------------------------------

glBinormal3ivEXT
  :: Ptr GLint -- ^ @v@ pointing to @3@ elements of type @GLint@.
  -> IO ()
glBinormal3ivEXT = dyn_glBinormal3ivEXT ptr_glBinormal3ivEXT

foreign import CALLCONV "dynamic" dyn_glBinormal3ivEXT
  :: FunPtr (Ptr GLint -> IO ())
  ->         Ptr GLint -> IO ()

{-# NOINLINE ptr_glBinormal3ivEXT #-}
ptr_glBinormal3ivEXT :: FunPtr (Ptr GLint -> IO ())
ptr_glBinormal3ivEXT = unsafePerformIO $ getCommand "glBinormal3ivEXT"

-- glBinormal3sEXT -------------------------------------------------------------

glBinormal3sEXT
  :: GLshort -- ^ @bx@.
  -> GLshort -- ^ @by@.
  -> GLshort -- ^ @bz@.
  -> IO ()
glBinormal3sEXT = dyn_glBinormal3sEXT ptr_glBinormal3sEXT

foreign import CALLCONV "dynamic" dyn_glBinormal3sEXT
  :: FunPtr (GLshort -> GLshort -> GLshort -> IO ())
  ->         GLshort -> GLshort -> GLshort -> IO ()

{-# NOINLINE ptr_glBinormal3sEXT #-}
ptr_glBinormal3sEXT :: FunPtr (GLshort -> GLshort -> GLshort -> IO ())
ptr_glBinormal3sEXT = unsafePerformIO $ getCommand "glBinormal3sEXT"

-- glBinormal3svEXT ------------------------------------------------------------

glBinormal3svEXT
  :: Ptr GLshort -- ^ @v@ pointing to @3@ elements of type @GLshort@.
  -> IO ()
glBinormal3svEXT = dyn_glBinormal3svEXT ptr_glBinormal3svEXT

foreign import CALLCONV "dynamic" dyn_glBinormal3svEXT
  :: FunPtr (Ptr GLshort -> IO ())
  ->         Ptr GLshort -> IO ()

{-# NOINLINE ptr_glBinormal3svEXT #-}
ptr_glBinormal3svEXT :: FunPtr (Ptr GLshort -> IO ())
ptr_glBinormal3svEXT = unsafePerformIO $ getCommand "glBinormal3svEXT"

-- glBinormalPointerEXT --------------------------------------------------------

glBinormalPointerEXT
  :: GLenum -- ^ @type@ of type @BinormalPointerTypeEXT@.
  -> GLsizei -- ^ @stride@.
  -> Ptr a -- ^ @pointer@ pointing to @COMPSIZE(type,stride)@ elements of type @a@.
  -> IO ()
glBinormalPointerEXT = dyn_glBinormalPointerEXT ptr_glBinormalPointerEXT

foreign import CALLCONV "dynamic" dyn_glBinormalPointerEXT
  :: FunPtr (GLenum -> GLsizei -> Ptr a -> IO ())
  ->         GLenum -> GLsizei -> Ptr a -> IO ()

{-# NOINLINE ptr_glBinormalPointerEXT #-}
ptr_glBinormalPointerEXT :: FunPtr (GLenum -> GLsizei -> Ptr a -> IO ())
ptr_glBinormalPointerEXT = unsafePerformIO $ getCommand "glBinormalPointerEXT"

-- glBitmap --------------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glBitmap.xml OpenGL 2.x>
glBitmap
  :: GLsizei -- ^ @width@.
  -> GLsizei -- ^ @height@.
  -> GLfloat -- ^ @xorig@ of type @CoordF@.
  -> GLfloat -- ^ @yorig@ of type @CoordF@.
  -> GLfloat -- ^ @xmove@ of type @CoordF@.
  -> GLfloat -- ^ @ymove@ of type @CoordF@.
  -> Ptr GLubyte -- ^ @bitmap@ pointing to @COMPSIZE(width,height)@ elements of type @GLubyte@.
  -> IO ()
glBitmap = dyn_glBitmap ptr_glBitmap

foreign import CALLCONV "dynamic" dyn_glBitmap
  :: FunPtr (GLsizei -> GLsizei -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> Ptr GLubyte -> IO ())
  ->         GLsizei -> GLsizei -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> Ptr GLubyte -> IO ()

{-# NOINLINE ptr_glBitmap #-}
ptr_glBitmap :: FunPtr (GLsizei -> GLsizei -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> Ptr GLubyte -> IO ())
ptr_glBitmap = unsafePerformIO $ getCommand "glBitmap"

-- glBitmapxOES ----------------------------------------------------------------

glBitmapxOES
  :: GLsizei -- ^ @width@.
  -> GLsizei -- ^ @height@.
  -> GLfixed -- ^ @xorig@.
  -> GLfixed -- ^ @yorig@.
  -> GLfixed -- ^ @xmove@.
  -> GLfixed -- ^ @ymove@.
  -> Ptr GLubyte -- ^ @bitmap@ pointing to @COMPSIZE(width,height)@ elements of type @GLubyte@.
  -> IO ()
glBitmapxOES = dyn_glBitmapxOES ptr_glBitmapxOES

foreign import CALLCONV "dynamic" dyn_glBitmapxOES
  :: FunPtr (GLsizei -> GLsizei -> GLfixed -> GLfixed -> GLfixed -> GLfixed -> Ptr GLubyte -> IO ())
  ->         GLsizei -> GLsizei -> GLfixed -> GLfixed -> GLfixed -> GLfixed -> Ptr GLubyte -> IO ()

{-# NOINLINE ptr_glBitmapxOES #-}
ptr_glBitmapxOES :: FunPtr (GLsizei -> GLsizei -> GLfixed -> GLfixed -> GLfixed -> GLfixed -> Ptr GLubyte -> IO ())
ptr_glBitmapxOES = unsafePerformIO $ getCommand "glBitmapxOES"

-- glBlendBarrierKHR -----------------------------------------------------------

glBlendBarrierKHR
  :: IO ()
glBlendBarrierKHR = dyn_glBlendBarrierKHR ptr_glBlendBarrierKHR

foreign import CALLCONV "dynamic" dyn_glBlendBarrierKHR
  :: FunPtr (IO ())
  ->         IO ()

{-# NOINLINE ptr_glBlendBarrierKHR #-}
ptr_glBlendBarrierKHR :: FunPtr (IO ())
ptr_glBlendBarrierKHR = unsafePerformIO $ getCommand "glBlendBarrierKHR"

-- glBlendBarrierNV ------------------------------------------------------------

glBlendBarrierNV
  :: IO ()
glBlendBarrierNV = dyn_glBlendBarrierNV ptr_glBlendBarrierNV

foreign import CALLCONV "dynamic" dyn_glBlendBarrierNV
  :: FunPtr (IO ())
  ->         IO ()

{-# NOINLINE ptr_glBlendBarrierNV #-}
ptr_glBlendBarrierNV :: FunPtr (IO ())
ptr_glBlendBarrierNV = unsafePerformIO $ getCommand "glBlendBarrierNV"

-- glBlendColor ----------------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glBlendColor.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glBlendColor.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glBlendColor.xhtml OpenGL 4.x>
glBlendColor
  :: GLfloat -- ^ @red@ of type @ColorF@.
  -> GLfloat -- ^ @green@ of type @ColorF@.
  -> GLfloat -- ^ @blue@ of type @ColorF@.
  -> GLfloat -- ^ @alpha@ of type @ColorF@.
  -> IO ()
glBlendColor = dyn_glBlendColor ptr_glBlendColor

foreign import CALLCONV "dynamic" dyn_glBlendColor
  :: FunPtr (GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
  ->         GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ()

{-# NOINLINE ptr_glBlendColor #-}
ptr_glBlendColor :: FunPtr (GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
ptr_glBlendColor = unsafePerformIO $ getCommand "glBlendColor"

-- glBlendColorEXT -------------------------------------------------------------

glBlendColorEXT
  :: GLfloat -- ^ @red@ of type @ColorF@.
  -> GLfloat -- ^ @green@ of type @ColorF@.
  -> GLfloat -- ^ @blue@ of type @ColorF@.
  -> GLfloat -- ^ @alpha@ of type @ColorF@.
  -> IO ()
glBlendColorEXT = dyn_glBlendColorEXT ptr_glBlendColorEXT

foreign import CALLCONV "dynamic" dyn_glBlendColorEXT
  :: FunPtr (GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
  ->         GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ()

{-# NOINLINE ptr_glBlendColorEXT #-}
ptr_glBlendColorEXT :: FunPtr (GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
ptr_glBlendColorEXT = unsafePerformIO $ getCommand "glBlendColorEXT"

-- glBlendColorxOES ------------------------------------------------------------

glBlendColorxOES
  :: GLfixed -- ^ @red@ of type @ClampedFixed@.
  -> GLfixed -- ^ @green@ of type @ClampedFixed@.
  -> GLfixed -- ^ @blue@ of type @ClampedFixed@.
  -> GLfixed -- ^ @alpha@ of type @ClampedFixed@.
  -> IO ()
glBlendColorxOES = dyn_glBlendColorxOES ptr_glBlendColorxOES

foreign import CALLCONV "dynamic" dyn_glBlendColorxOES
  :: FunPtr (GLfixed -> GLfixed -> GLfixed -> GLfixed -> IO ())
  ->         GLfixed -> GLfixed -> GLfixed -> GLfixed -> IO ()

{-# NOINLINE ptr_glBlendColorxOES #-}
ptr_glBlendColorxOES :: FunPtr (GLfixed -> GLfixed -> GLfixed -> GLfixed -> IO ())
ptr_glBlendColorxOES = unsafePerformIO $ getCommand "glBlendColorxOES"

-- glBlendEquation -------------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glBlendEquation.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glBlendEquation.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glBlendEquation.xhtml OpenGL 4.x>
glBlendEquation
  :: GLenum -- ^ @mode@ of type @BlendEquationMode@.
  -> IO ()
glBlendEquation = dyn_glBlendEquation ptr_glBlendEquation

foreign import CALLCONV "dynamic" dyn_glBlendEquation
  :: FunPtr (GLenum -> IO ())
  ->         GLenum -> IO ()

{-# NOINLINE ptr_glBlendEquation #-}
ptr_glBlendEquation :: FunPtr (GLenum -> IO ())
ptr_glBlendEquation = unsafePerformIO $ getCommand "glBlendEquation"

-- glBlendEquationEXT ----------------------------------------------------------

glBlendEquationEXT
  :: GLenum -- ^ @mode@ of type @BlendEquationModeEXT@.
  -> IO ()
glBlendEquationEXT = dyn_glBlendEquationEXT ptr_glBlendEquationEXT

foreign import CALLCONV "dynamic" dyn_glBlendEquationEXT
  :: FunPtr (GLenum -> IO ())
  ->         GLenum -> IO ()

{-# NOINLINE ptr_glBlendEquationEXT #-}
ptr_glBlendEquationEXT :: FunPtr (GLenum -> IO ())
ptr_glBlendEquationEXT = unsafePerformIO $ getCommand "glBlendEquationEXT"

-- glBlendEquationIndexedAMD ---------------------------------------------------

glBlendEquationIndexedAMD
  :: GLuint -- ^ @buf@.
  -> GLenum -- ^ @mode@.
  -> IO ()
glBlendEquationIndexedAMD = dyn_glBlendEquationIndexedAMD ptr_glBlendEquationIndexedAMD

foreign import CALLCONV "dynamic" dyn_glBlendEquationIndexedAMD
  :: FunPtr (GLuint -> GLenum -> IO ())
  ->         GLuint -> GLenum -> IO ()

{-# NOINLINE ptr_glBlendEquationIndexedAMD #-}
ptr_glBlendEquationIndexedAMD :: FunPtr (GLuint -> GLenum -> IO ())
ptr_glBlendEquationIndexedAMD = unsafePerformIO $ getCommand "glBlendEquationIndexedAMD"

-- glBlendEquationOES ----------------------------------------------------------

glBlendEquationOES
  :: GLenum -- ^ @mode@.
  -> IO ()
glBlendEquationOES = dyn_glBlendEquationOES ptr_glBlendEquationOES

foreign import CALLCONV "dynamic" dyn_glBlendEquationOES
  :: FunPtr (GLenum -> IO ())
  ->         GLenum -> IO ()

{-# NOINLINE ptr_glBlendEquationOES #-}
ptr_glBlendEquationOES :: FunPtr (GLenum -> IO ())
ptr_glBlendEquationOES = unsafePerformIO $ getCommand "glBlendEquationOES"

-- glBlendEquationSeparate -----------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glBlendEquationSeparate.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glBlendEquationSeparate.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glBlendEquationSeparate.xhtml OpenGL 4.x>
glBlendEquationSeparate
  :: GLenum -- ^ @modeRGB@ of type @BlendEquationModeEXT@.
  -> GLenum -- ^ @modeAlpha@ of type @BlendEquationModeEXT@.
  -> IO ()
glBlendEquationSeparate = dyn_glBlendEquationSeparate ptr_glBlendEquationSeparate

foreign import CALLCONV "dynamic" dyn_glBlendEquationSeparate
  :: FunPtr (GLenum -> GLenum -> IO ())
  ->         GLenum -> GLenum -> IO ()

{-# NOINLINE ptr_glBlendEquationSeparate #-}
ptr_glBlendEquationSeparate :: FunPtr (GLenum -> GLenum -> IO ())
ptr_glBlendEquationSeparate = unsafePerformIO $ getCommand "glBlendEquationSeparate"

-- glBlendEquationSeparateEXT --------------------------------------------------

glBlendEquationSeparateEXT
  :: GLenum -- ^ @modeRGB@ of type @BlendEquationModeEXT@.
  -> GLenum -- ^ @modeAlpha@ of type @BlendEquationModeEXT@.
  -> IO ()
glBlendEquationSeparateEXT = dyn_glBlendEquationSeparateEXT ptr_glBlendEquationSeparateEXT

foreign import CALLCONV "dynamic" dyn_glBlendEquationSeparateEXT
  :: FunPtr (GLenum -> GLenum -> IO ())
  ->         GLenum -> GLenum -> IO ()

{-# NOINLINE ptr_glBlendEquationSeparateEXT #-}
ptr_glBlendEquationSeparateEXT :: FunPtr (GLenum -> GLenum -> IO ())
ptr_glBlendEquationSeparateEXT = unsafePerformIO $ getCommand "glBlendEquationSeparateEXT"

-- glBlendEquationSeparateIndexedAMD -------------------------------------------

glBlendEquationSeparateIndexedAMD
  :: GLuint -- ^ @buf@.
  -> GLenum -- ^ @modeRGB@.
  -> GLenum -- ^ @modeAlpha@.
  -> IO ()
glBlendEquationSeparateIndexedAMD = dyn_glBlendEquationSeparateIndexedAMD ptr_glBlendEquationSeparateIndexedAMD

foreign import CALLCONV "dynamic" dyn_glBlendEquationSeparateIndexedAMD
  :: FunPtr (GLuint -> GLenum -> GLenum -> IO ())
  ->         GLuint -> GLenum -> GLenum -> IO ()

{-# NOINLINE ptr_glBlendEquationSeparateIndexedAMD #-}
ptr_glBlendEquationSeparateIndexedAMD :: FunPtr (GLuint -> GLenum -> GLenum -> IO ())
ptr_glBlendEquationSeparateIndexedAMD = unsafePerformIO $ getCommand "glBlendEquationSeparateIndexedAMD"

-- glBlendEquationSeparateOES --------------------------------------------------

glBlendEquationSeparateOES
  :: GLenum -- ^ @modeRGB@.
  -> GLenum -- ^ @modeAlpha@.
  -> IO ()
glBlendEquationSeparateOES = dyn_glBlendEquationSeparateOES ptr_glBlendEquationSeparateOES

foreign import CALLCONV "dynamic" dyn_glBlendEquationSeparateOES
  :: FunPtr (GLenum -> GLenum -> IO ())
  ->         GLenum -> GLenum -> IO ()

{-# NOINLINE ptr_glBlendEquationSeparateOES #-}
ptr_glBlendEquationSeparateOES :: FunPtr (GLenum -> GLenum -> IO ())
ptr_glBlendEquationSeparateOES = unsafePerformIO $ getCommand "glBlendEquationSeparateOES"

-- glBlendEquationSeparatei ----------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glBlendEquationSeparate.xhtml OpenGL 4.x>
glBlendEquationSeparatei
  :: GLuint -- ^ @buf@.
  -> GLenum -- ^ @modeRGB@.
  -> GLenum -- ^ @modeAlpha@.
  -> IO ()
glBlendEquationSeparatei = dyn_glBlendEquationSeparatei ptr_glBlendEquationSeparatei

foreign import CALLCONV "dynamic" dyn_glBlendEquationSeparatei
  :: FunPtr (GLuint -> GLenum -> GLenum -> IO ())
  ->         GLuint -> GLenum -> GLenum -> IO ()

{-# NOINLINE ptr_glBlendEquationSeparatei #-}
ptr_glBlendEquationSeparatei :: FunPtr (GLuint -> GLenum -> GLenum -> IO ())
ptr_glBlendEquationSeparatei = unsafePerformIO $ getCommand "glBlendEquationSeparatei"

-- glBlendEquationSeparateiARB -------------------------------------------------

glBlendEquationSeparateiARB
  :: GLuint -- ^ @buf@.
  -> GLenum -- ^ @modeRGB@.
  -> GLenum -- ^ @modeAlpha@.
  -> IO ()
glBlendEquationSeparateiARB = dyn_glBlendEquationSeparateiARB ptr_glBlendEquationSeparateiARB

foreign import CALLCONV "dynamic" dyn_glBlendEquationSeparateiARB
  :: FunPtr (GLuint -> GLenum -> GLenum -> IO ())
  ->         GLuint -> GLenum -> GLenum -> IO ()

{-# NOINLINE ptr_glBlendEquationSeparateiARB #-}
ptr_glBlendEquationSeparateiARB :: FunPtr (GLuint -> GLenum -> GLenum -> IO ())
ptr_glBlendEquationSeparateiARB = unsafePerformIO $ getCommand "glBlendEquationSeparateiARB"

-- glBlendEquationSeparateiEXT -------------------------------------------------

glBlendEquationSeparateiEXT
  :: GLuint -- ^ @buf@.
  -> GLenum -- ^ @modeRGB@.
  -> GLenum -- ^ @modeAlpha@.
  -> IO ()
glBlendEquationSeparateiEXT = dyn_glBlendEquationSeparateiEXT ptr_glBlendEquationSeparateiEXT

foreign import CALLCONV "dynamic" dyn_glBlendEquationSeparateiEXT
  :: FunPtr (GLuint -> GLenum -> GLenum -> IO ())
  ->         GLuint -> GLenum -> GLenum -> IO ()

{-# NOINLINE ptr_glBlendEquationSeparateiEXT #-}
ptr_glBlendEquationSeparateiEXT :: FunPtr (GLuint -> GLenum -> GLenum -> IO ())
ptr_glBlendEquationSeparateiEXT = unsafePerformIO $ getCommand "glBlendEquationSeparateiEXT"

-- glBlendEquationSeparateiOES -------------------------------------------------

glBlendEquationSeparateiOES
  :: GLuint -- ^ @buf@.
  -> GLenum -- ^ @modeRGB@.
  -> GLenum -- ^ @modeAlpha@.
  -> IO ()
glBlendEquationSeparateiOES = dyn_glBlendEquationSeparateiOES ptr_glBlendEquationSeparateiOES

foreign import CALLCONV "dynamic" dyn_glBlendEquationSeparateiOES
  :: FunPtr (GLuint -> GLenum -> GLenum -> IO ())
  ->         GLuint -> GLenum -> GLenum -> IO ()

{-# NOINLINE ptr_glBlendEquationSeparateiOES #-}
ptr_glBlendEquationSeparateiOES :: FunPtr (GLuint -> GLenum -> GLenum -> IO ())
ptr_glBlendEquationSeparateiOES = unsafePerformIO $ getCommand "glBlendEquationSeparateiOES"

-- glBlendEquationi ------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glBlendEquation.xhtml OpenGL 4.x>
glBlendEquationi
  :: GLuint -- ^ @buf@.
  -> GLenum -- ^ @mode@.
  -> IO ()
glBlendEquationi = dyn_glBlendEquationi ptr_glBlendEquationi

foreign import CALLCONV "dynamic" dyn_glBlendEquationi
  :: FunPtr (GLuint -> GLenum -> IO ())
  ->         GLuint -> GLenum -> IO ()

{-# NOINLINE ptr_glBlendEquationi #-}
ptr_glBlendEquationi :: FunPtr (GLuint -> GLenum -> IO ())
ptr_glBlendEquationi = unsafePerformIO $ getCommand "glBlendEquationi"

-- glBlendEquationiARB ---------------------------------------------------------

glBlendEquationiARB
  :: GLuint -- ^ @buf@.
  -> GLenum -- ^ @mode@.
  -> IO ()
glBlendEquationiARB = dyn_glBlendEquationiARB ptr_glBlendEquationiARB

foreign import CALLCONV "dynamic" dyn_glBlendEquationiARB
  :: FunPtr (GLuint -> GLenum -> IO ())
  ->         GLuint -> GLenum -> IO ()

{-# NOINLINE ptr_glBlendEquationiARB #-}
ptr_glBlendEquationiARB :: FunPtr (GLuint -> GLenum -> IO ())
ptr_glBlendEquationiARB = unsafePerformIO $ getCommand "glBlendEquationiARB"

-- glBlendEquationiEXT ---------------------------------------------------------

glBlendEquationiEXT
  :: GLuint -- ^ @buf@.
  -> GLenum -- ^ @mode@.
  -> IO ()
glBlendEquationiEXT = dyn_glBlendEquationiEXT ptr_glBlendEquationiEXT

foreign import CALLCONV "dynamic" dyn_glBlendEquationiEXT
  :: FunPtr (GLuint -> GLenum -> IO ())
  ->         GLuint -> GLenum -> IO ()

{-# NOINLINE ptr_glBlendEquationiEXT #-}
ptr_glBlendEquationiEXT :: FunPtr (GLuint -> GLenum -> IO ())
ptr_glBlendEquationiEXT = unsafePerformIO $ getCommand "glBlendEquationiEXT"

-- glBlendEquationiOES ---------------------------------------------------------

glBlendEquationiOES
  :: GLuint -- ^ @buf@.
  -> GLenum -- ^ @mode@.
  -> IO ()
glBlendEquationiOES = dyn_glBlendEquationiOES ptr_glBlendEquationiOES

foreign import CALLCONV "dynamic" dyn_glBlendEquationiOES
  :: FunPtr (GLuint -> GLenum -> IO ())
  ->         GLuint -> GLenum -> IO ()

{-# NOINLINE ptr_glBlendEquationiOES #-}
ptr_glBlendEquationiOES :: FunPtr (GLuint -> GLenum -> IO ())
ptr_glBlendEquationiOES = unsafePerformIO $ getCommand "glBlendEquationiOES"

-- glBlendFunc -----------------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glBlendFunc.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glBlendFunc.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glBlendFunc.xhtml OpenGL 4.x>
glBlendFunc
  :: GLenum -- ^ @sfactor@ of type @BlendingFactorSrc@.
  -> GLenum -- ^ @dfactor@ of type @BlendingFactorDest@.
  -> IO ()
glBlendFunc = dyn_glBlendFunc ptr_glBlendFunc

foreign import CALLCONV "dynamic" dyn_glBlendFunc
  :: FunPtr (GLenum -> GLenum -> IO ())
  ->         GLenum -> GLenum -> IO ()

{-# NOINLINE ptr_glBlendFunc #-}
ptr_glBlendFunc :: FunPtr (GLenum -> GLenum -> IO ())
ptr_glBlendFunc = unsafePerformIO $ getCommand "glBlendFunc"

-- glBlendFuncIndexedAMD -------------------------------------------------------

glBlendFuncIndexedAMD
  :: GLuint -- ^ @buf@.
  -> GLenum -- ^ @src@.
  -> GLenum -- ^ @dst@.
  -> IO ()
glBlendFuncIndexedAMD = dyn_glBlendFuncIndexedAMD ptr_glBlendFuncIndexedAMD

foreign import CALLCONV "dynamic" dyn_glBlendFuncIndexedAMD
  :: FunPtr (GLuint -> GLenum -> GLenum -> IO ())
  ->         GLuint -> GLenum -> GLenum -> IO ()

{-# NOINLINE ptr_glBlendFuncIndexedAMD #-}
ptr_glBlendFuncIndexedAMD :: FunPtr (GLuint -> GLenum -> GLenum -> IO ())
ptr_glBlendFuncIndexedAMD = unsafePerformIO $ getCommand "glBlendFuncIndexedAMD"

-- glBlendFuncSeparate ---------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glBlendFuncSeparate.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glBlendFuncSeparate.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glBlendFuncSeparate.xhtml OpenGL 4.x>
glBlendFuncSeparate
  :: GLenum -- ^ @sfactorRGB@ of type @BlendFuncSeparateParameterEXT@.
  -> GLenum -- ^ @dfactorRGB@ of type @BlendFuncSeparateParameterEXT@.
  -> GLenum -- ^ @sfactorAlpha@ of type @BlendFuncSeparateParameterEXT@.
  -> GLenum -- ^ @dfactorAlpha@ of type @BlendFuncSeparateParameterEXT@.
  -> IO ()
glBlendFuncSeparate = dyn_glBlendFuncSeparate ptr_glBlendFuncSeparate

foreign import CALLCONV "dynamic" dyn_glBlendFuncSeparate
  :: FunPtr (GLenum -> GLenum -> GLenum -> GLenum -> IO ())
  ->         GLenum -> GLenum -> GLenum -> GLenum -> IO ()

{-# NOINLINE ptr_glBlendFuncSeparate #-}
ptr_glBlendFuncSeparate :: FunPtr (GLenum -> GLenum -> GLenum -> GLenum -> IO ())
ptr_glBlendFuncSeparate = unsafePerformIO $ getCommand "glBlendFuncSeparate"

-- glBlendFuncSeparateEXT ------------------------------------------------------

glBlendFuncSeparateEXT
  :: GLenum -- ^ @sfactorRGB@ of type @BlendFuncSeparateParameterEXT@.
  -> GLenum -- ^ @dfactorRGB@ of type @BlendFuncSeparateParameterEXT@.
  -> GLenum -- ^ @sfactorAlpha@ of type @BlendFuncSeparateParameterEXT@.
  -> GLenum -- ^ @dfactorAlpha@ of type @BlendFuncSeparateParameterEXT@.
  -> IO ()
glBlendFuncSeparateEXT = dyn_glBlendFuncSeparateEXT ptr_glBlendFuncSeparateEXT

foreign import CALLCONV "dynamic" dyn_glBlendFuncSeparateEXT
  :: FunPtr (GLenum -> GLenum -> GLenum -> GLenum -> IO ())
  ->         GLenum -> GLenum -> GLenum -> GLenum -> IO ()

{-# NOINLINE ptr_glBlendFuncSeparateEXT #-}
ptr_glBlendFuncSeparateEXT :: FunPtr (GLenum -> GLenum -> GLenum -> GLenum -> IO ())
ptr_glBlendFuncSeparateEXT = unsafePerformIO $ getCommand "glBlendFuncSeparateEXT"

-- glBlendFuncSeparateINGR -----------------------------------------------------

glBlendFuncSeparateINGR
  :: GLenum -- ^ @sfactorRGB@ of type @BlendFuncSeparateParameterEXT@.
  -> GLenum -- ^ @dfactorRGB@ of type @BlendFuncSeparateParameterEXT@.
  -> GLenum -- ^ @sfactorAlpha@ of type @BlendFuncSeparateParameterEXT@.
  -> GLenum -- ^ @dfactorAlpha@ of type @BlendFuncSeparateParameterEXT@.
  -> IO ()
glBlendFuncSeparateINGR = dyn_glBlendFuncSeparateINGR ptr_glBlendFuncSeparateINGR

foreign import CALLCONV "dynamic" dyn_glBlendFuncSeparateINGR
  :: FunPtr (GLenum -> GLenum -> GLenum -> GLenum -> IO ())
  ->         GLenum -> GLenum -> GLenum -> GLenum -> IO ()

{-# NOINLINE ptr_glBlendFuncSeparateINGR #-}
ptr_glBlendFuncSeparateINGR :: FunPtr (GLenum -> GLenum -> GLenum -> GLenum -> IO ())
ptr_glBlendFuncSeparateINGR = unsafePerformIO $ getCommand "glBlendFuncSeparateINGR"

-- glBlendFuncSeparateIndexedAMD -----------------------------------------------

glBlendFuncSeparateIndexedAMD
  :: GLuint -- ^ @buf@.
  -> GLenum -- ^ @srcRGB@.
  -> GLenum -- ^ @dstRGB@.
  -> GLenum -- ^ @srcAlpha@.
  -> GLenum -- ^ @dstAlpha@.
  -> IO ()
glBlendFuncSeparateIndexedAMD = dyn_glBlendFuncSeparateIndexedAMD ptr_glBlendFuncSeparateIndexedAMD

foreign import CALLCONV "dynamic" dyn_glBlendFuncSeparateIndexedAMD
  :: FunPtr (GLuint -> GLenum -> GLenum -> GLenum -> GLenum -> IO ())
  ->         GLuint -> GLenum -> GLenum -> GLenum -> GLenum -> IO ()

{-# NOINLINE ptr_glBlendFuncSeparateIndexedAMD #-}
ptr_glBlendFuncSeparateIndexedAMD :: FunPtr (GLuint -> GLenum -> GLenum -> GLenum -> GLenum -> IO ())
ptr_glBlendFuncSeparateIndexedAMD = unsafePerformIO $ getCommand "glBlendFuncSeparateIndexedAMD"

-- glBlendFuncSeparateOES ------------------------------------------------------

glBlendFuncSeparateOES
  :: GLenum -- ^ @srcRGB@.
  -> GLenum -- ^ @dstRGB@.
  -> GLenum -- ^ @srcAlpha@.
  -> GLenum -- ^ @dstAlpha@.
  -> IO ()
glBlendFuncSeparateOES = dyn_glBlendFuncSeparateOES ptr_glBlendFuncSeparateOES

foreign import CALLCONV "dynamic" dyn_glBlendFuncSeparateOES
  :: FunPtr (GLenum -> GLenum -> GLenum -> GLenum -> IO ())
  ->         GLenum -> GLenum -> GLenum -> GLenum -> IO ()

{-# NOINLINE ptr_glBlendFuncSeparateOES #-}
ptr_glBlendFuncSeparateOES :: FunPtr (GLenum -> GLenum -> GLenum -> GLenum -> IO ())
ptr_glBlendFuncSeparateOES = unsafePerformIO $ getCommand "glBlendFuncSeparateOES"

-- glBlendFuncSeparatei --------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glBlendFuncSeparate.xhtml OpenGL 4.x>
glBlendFuncSeparatei
  :: GLuint -- ^ @buf@.
  -> GLenum -- ^ @srcRGB@.
  -> GLenum -- ^ @dstRGB@.
  -> GLenum -- ^ @srcAlpha@.
  -> GLenum -- ^ @dstAlpha@.
  -> IO ()
glBlendFuncSeparatei = dyn_glBlendFuncSeparatei ptr_glBlendFuncSeparatei

foreign import CALLCONV "dynamic" dyn_glBlendFuncSeparatei
  :: FunPtr (GLuint -> GLenum -> GLenum -> GLenum -> GLenum -> IO ())
  ->         GLuint -> GLenum -> GLenum -> GLenum -> GLenum -> IO ()

{-# NOINLINE ptr_glBlendFuncSeparatei #-}
ptr_glBlendFuncSeparatei :: FunPtr (GLuint -> GLenum -> GLenum -> GLenum -> GLenum -> IO ())
ptr_glBlendFuncSeparatei = unsafePerformIO $ getCommand "glBlendFuncSeparatei"

-- glBlendFuncSeparateiARB -----------------------------------------------------

glBlendFuncSeparateiARB
  :: GLuint -- ^ @buf@.
  -> GLenum -- ^ @srcRGB@.
  -> GLenum -- ^ @dstRGB@.
  -> GLenum -- ^ @srcAlpha@.
  -> GLenum -- ^ @dstAlpha@.
  -> IO ()
glBlendFuncSeparateiARB = dyn_glBlendFuncSeparateiARB ptr_glBlendFuncSeparateiARB

foreign import CALLCONV "dynamic" dyn_glBlendFuncSeparateiARB
  :: FunPtr (GLuint -> GLenum -> GLenum -> GLenum -> GLenum -> IO ())
  ->         GLuint -> GLenum -> GLenum -> GLenum -> GLenum -> IO ()

{-# NOINLINE ptr_glBlendFuncSeparateiARB #-}
ptr_glBlendFuncSeparateiARB :: FunPtr (GLuint -> GLenum -> GLenum -> GLenum -> GLenum -> IO ())
ptr_glBlendFuncSeparateiARB = unsafePerformIO $ getCommand "glBlendFuncSeparateiARB"

-- glBlendFuncSeparateiEXT -----------------------------------------------------

glBlendFuncSeparateiEXT
  :: GLuint -- ^ @buf@.
  -> GLenum -- ^ @srcRGB@.
  -> GLenum -- ^ @dstRGB@.
  -> GLenum -- ^ @srcAlpha@.
  -> GLenum -- ^ @dstAlpha@.
  -> IO ()
glBlendFuncSeparateiEXT = dyn_glBlendFuncSeparateiEXT ptr_glBlendFuncSeparateiEXT

foreign import CALLCONV "dynamic" dyn_glBlendFuncSeparateiEXT
  :: FunPtr (GLuint -> GLenum -> GLenum -> GLenum -> GLenum -> IO ())
  ->         GLuint -> GLenum -> GLenum -> GLenum -> GLenum -> IO ()

{-# NOINLINE ptr_glBlendFuncSeparateiEXT #-}
ptr_glBlendFuncSeparateiEXT :: FunPtr (GLuint -> GLenum -> GLenum -> GLenum -> GLenum -> IO ())
ptr_glBlendFuncSeparateiEXT = unsafePerformIO $ getCommand "glBlendFuncSeparateiEXT"

-- glBlendFuncSeparateiOES -----------------------------------------------------

glBlendFuncSeparateiOES
  :: GLuint -- ^ @buf@.
  -> GLenum -- ^ @srcRGB@.
  -> GLenum -- ^ @dstRGB@.
  -> GLenum -- ^ @srcAlpha@.
  -> GLenum -- ^ @dstAlpha@.
  -> IO ()
glBlendFuncSeparateiOES = dyn_glBlendFuncSeparateiOES ptr_glBlendFuncSeparateiOES

foreign import CALLCONV "dynamic" dyn_glBlendFuncSeparateiOES
  :: FunPtr (GLuint -> GLenum -> GLenum -> GLenum -> GLenum -> IO ())
  ->         GLuint -> GLenum -> GLenum -> GLenum -> GLenum -> IO ()

{-# NOINLINE ptr_glBlendFuncSeparateiOES #-}
ptr_glBlendFuncSeparateiOES :: FunPtr (GLuint -> GLenum -> GLenum -> GLenum -> GLenum -> IO ())
ptr_glBlendFuncSeparateiOES = unsafePerformIO $ getCommand "glBlendFuncSeparateiOES"

-- glBlendFunci ----------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glBlendFunc.xhtml OpenGL 4.x>
glBlendFunci
  :: GLuint -- ^ @buf@.
  -> GLenum -- ^ @src@.
  -> GLenum -- ^ @dst@.
  -> IO ()
glBlendFunci = dyn_glBlendFunci ptr_glBlendFunci

foreign import CALLCONV "dynamic" dyn_glBlendFunci
  :: FunPtr (GLuint -> GLenum -> GLenum -> IO ())
  ->         GLuint -> GLenum -> GLenum -> IO ()

{-# NOINLINE ptr_glBlendFunci #-}
ptr_glBlendFunci :: FunPtr (GLuint -> GLenum -> GLenum -> IO ())
ptr_glBlendFunci = unsafePerformIO $ getCommand "glBlendFunci"

-- glBlendFunciARB -------------------------------------------------------------

glBlendFunciARB
  :: GLuint -- ^ @buf@.
  -> GLenum -- ^ @src@.
  -> GLenum -- ^ @dst@.
  -> IO ()
glBlendFunciARB = dyn_glBlendFunciARB ptr_glBlendFunciARB

foreign import CALLCONV "dynamic" dyn_glBlendFunciARB
  :: FunPtr (GLuint -> GLenum -> GLenum -> IO ())
  ->         GLuint -> GLenum -> GLenum -> IO ()

{-# NOINLINE ptr_glBlendFunciARB #-}
ptr_glBlendFunciARB :: FunPtr (GLuint -> GLenum -> GLenum -> IO ())
ptr_glBlendFunciARB = unsafePerformIO $ getCommand "glBlendFunciARB"

-- glBlendFunciEXT -------------------------------------------------------------

glBlendFunciEXT
  :: GLuint -- ^ @buf@.
  -> GLenum -- ^ @src@.
  -> GLenum -- ^ @dst@.
  -> IO ()
glBlendFunciEXT = dyn_glBlendFunciEXT ptr_glBlendFunciEXT

foreign import CALLCONV "dynamic" dyn_glBlendFunciEXT
  :: FunPtr (GLuint -> GLenum -> GLenum -> IO ())
  ->         GLuint -> GLenum -> GLenum -> IO ()

{-# NOINLINE ptr_glBlendFunciEXT #-}
ptr_glBlendFunciEXT :: FunPtr (GLuint -> GLenum -> GLenum -> IO ())
ptr_glBlendFunciEXT = unsafePerformIO $ getCommand "glBlendFunciEXT"

-- glBlendFunciOES -------------------------------------------------------------

glBlendFunciOES
  :: GLuint -- ^ @buf@.
  -> GLenum -- ^ @src@.
  -> GLenum -- ^ @dst@.
  -> IO ()
glBlendFunciOES = dyn_glBlendFunciOES ptr_glBlendFunciOES

foreign import CALLCONV "dynamic" dyn_glBlendFunciOES
  :: FunPtr (GLuint -> GLenum -> GLenum -> IO ())
  ->         GLuint -> GLenum -> GLenum -> IO ()

{-# NOINLINE ptr_glBlendFunciOES #-}
ptr_glBlendFunciOES :: FunPtr (GLuint -> GLenum -> GLenum -> IO ())
ptr_glBlendFunciOES = unsafePerformIO $ getCommand "glBlendFunciOES"

-- glBlendParameteriNV ---------------------------------------------------------

glBlendParameteriNV
  :: GLenum -- ^ @pname@.
  -> GLint -- ^ @value@.
  -> IO ()
glBlendParameteriNV = dyn_glBlendParameteriNV ptr_glBlendParameteriNV

foreign import CALLCONV "dynamic" dyn_glBlendParameteriNV
  :: FunPtr (GLenum -> GLint -> IO ())
  ->         GLenum -> GLint -> IO ()

{-# NOINLINE ptr_glBlendParameteriNV #-}
ptr_glBlendParameteriNV :: FunPtr (GLenum -> GLint -> IO ())
ptr_glBlendParameteriNV = unsafePerformIO $ getCommand "glBlendParameteriNV"

-- glBlitFramebuffer -----------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glBlitFramebuffer.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glBlitFramebuffer.xhtml OpenGL 4.x>
glBlitFramebuffer
  :: GLint -- ^ @srcX0@.
  -> GLint -- ^ @srcY0@.
  -> GLint -- ^ @srcX1@.
  -> GLint -- ^ @srcY1@.
  -> GLint -- ^ @dstX0@.
  -> GLint -- ^ @dstY0@.
  -> GLint -- ^ @dstX1@.
  -> GLint -- ^ @dstY1@.
  -> GLbitfield -- ^ @mask@ of type @ClearBufferMask@.
  -> GLenum -- ^ @filter@.
  -> IO ()
glBlitFramebuffer = dyn_glBlitFramebuffer ptr_glBlitFramebuffer

foreign import CALLCONV "dynamic" dyn_glBlitFramebuffer
  :: FunPtr (GLint -> GLint -> GLint -> GLint -> GLint -> GLint -> GLint -> GLint -> GLbitfield -> GLenum -> IO ())
  ->         GLint -> GLint -> GLint -> GLint -> GLint -> GLint -> GLint -> GLint -> GLbitfield -> GLenum -> IO ()

{-# NOINLINE ptr_glBlitFramebuffer #-}
ptr_glBlitFramebuffer :: FunPtr (GLint -> GLint -> GLint -> GLint -> GLint -> GLint -> GLint -> GLint -> GLbitfield -> GLenum -> IO ())
ptr_glBlitFramebuffer = unsafePerformIO $ getCommand "glBlitFramebuffer"

-- glBlitFramebufferANGLE ------------------------------------------------------

glBlitFramebufferANGLE
  :: GLint -- ^ @srcX0@.
  -> GLint -- ^ @srcY0@.
  -> GLint -- ^ @srcX1@.
  -> GLint -- ^ @srcY1@.
  -> GLint -- ^ @dstX0@.
  -> GLint -- ^ @dstY0@.
  -> GLint -- ^ @dstX1@.
  -> GLint -- ^ @dstY1@.
  -> GLbitfield -- ^ @mask@.
  -> GLenum -- ^ @filter@.
  -> IO ()
glBlitFramebufferANGLE = dyn_glBlitFramebufferANGLE ptr_glBlitFramebufferANGLE

foreign import CALLCONV "dynamic" dyn_glBlitFramebufferANGLE
  :: FunPtr (GLint -> GLint -> GLint -> GLint -> GLint -> GLint -> GLint -> GLint -> GLbitfield -> GLenum -> IO ())
  ->         GLint -> GLint -> GLint -> GLint -> GLint -> GLint -> GLint -> GLint -> GLbitfield -> GLenum -> IO ()

{-# NOINLINE ptr_glBlitFramebufferANGLE #-}
ptr_glBlitFramebufferANGLE :: FunPtr (GLint -> GLint -> GLint -> GLint -> GLint -> GLint -> GLint -> GLint -> GLbitfield -> GLenum -> IO ())
ptr_glBlitFramebufferANGLE = unsafePerformIO $ getCommand "glBlitFramebufferANGLE"

-- glBlitFramebufferEXT --------------------------------------------------------

glBlitFramebufferEXT
  :: GLint -- ^ @srcX0@.
  -> GLint -- ^ @srcY0@.
  -> GLint -- ^ @srcX1@.
  -> GLint -- ^ @srcY1@.
  -> GLint -- ^ @dstX0@.
  -> GLint -- ^ @dstY0@.
  -> GLint -- ^ @dstX1@.
  -> GLint -- ^ @dstY1@.
  -> GLbitfield -- ^ @mask@ of type @ClearBufferMask@.
  -> GLenum -- ^ @filter@.
  -> IO ()
glBlitFramebufferEXT = dyn_glBlitFramebufferEXT ptr_glBlitFramebufferEXT

foreign import CALLCONV "dynamic" dyn_glBlitFramebufferEXT
  :: FunPtr (GLint -> GLint -> GLint -> GLint -> GLint -> GLint -> GLint -> GLint -> GLbitfield -> GLenum -> IO ())
  ->         GLint -> GLint -> GLint -> GLint -> GLint -> GLint -> GLint -> GLint -> GLbitfield -> GLenum -> IO ()

{-# NOINLINE ptr_glBlitFramebufferEXT #-}
ptr_glBlitFramebufferEXT :: FunPtr (GLint -> GLint -> GLint -> GLint -> GLint -> GLint -> GLint -> GLint -> GLbitfield -> GLenum -> IO ())
ptr_glBlitFramebufferEXT = unsafePerformIO $ getCommand "glBlitFramebufferEXT"

-- glBlitFramebufferNV ---------------------------------------------------------

glBlitFramebufferNV
  :: GLint -- ^ @srcX0@.
  -> GLint -- ^ @srcY0@.
  -> GLint -- ^ @srcX1@.
  -> GLint -- ^ @srcY1@.
  -> GLint -- ^ @dstX0@.
  -> GLint -- ^ @dstY0@.
  -> GLint -- ^ @dstX1@.
  -> GLint -- ^ @dstY1@.
  -> GLbitfield -- ^ @mask@.
  -> GLenum -- ^ @filter@.
  -> IO ()
glBlitFramebufferNV = dyn_glBlitFramebufferNV ptr_glBlitFramebufferNV

foreign import CALLCONV "dynamic" dyn_glBlitFramebufferNV
  :: FunPtr (GLint -> GLint -> GLint -> GLint -> GLint -> GLint -> GLint -> GLint -> GLbitfield -> GLenum -> IO ())
  ->         GLint -> GLint -> GLint -> GLint -> GLint -> GLint -> GLint -> GLint -> GLbitfield -> GLenum -> IO ()

{-# NOINLINE ptr_glBlitFramebufferNV #-}
ptr_glBlitFramebufferNV :: FunPtr (GLint -> GLint -> GLint -> GLint -> GLint -> GLint -> GLint -> GLint -> GLbitfield -> GLenum -> IO ())
ptr_glBlitFramebufferNV = unsafePerformIO $ getCommand "glBlitFramebufferNV"

-- glBlitNamedFramebuffer ------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glBlitFramebuffer.xhtml OpenGL 4.x>
glBlitNamedFramebuffer
  :: GLuint -- ^ @readFramebuffer@.
  -> GLuint -- ^ @drawFramebuffer@.
  -> GLint -- ^ @srcX0@.
  -> GLint -- ^ @srcY0@.
  -> GLint -- ^ @srcX1@.
  -> GLint -- ^ @srcY1@.
  -> GLint -- ^ @dstX0@.
  -> GLint -- ^ @dstY0@.
  -> GLint -- ^ @dstX1@.
  -> GLint -- ^ @dstY1@.
  -> GLbitfield -- ^ @mask@.
  -> GLenum -- ^ @filter@.
  -> IO ()
glBlitNamedFramebuffer = dyn_glBlitNamedFramebuffer ptr_glBlitNamedFramebuffer

foreign import CALLCONV "dynamic" dyn_glBlitNamedFramebuffer
  :: FunPtr (GLuint -> GLuint -> GLint -> GLint -> GLint -> GLint -> GLint -> GLint -> GLint -> GLint -> GLbitfield -> GLenum -> IO ())
  ->         GLuint -> GLuint -> GLint -> GLint -> GLint -> GLint -> GLint -> GLint -> GLint -> GLint -> GLbitfield -> GLenum -> IO ()

{-# NOINLINE ptr_glBlitNamedFramebuffer #-}
ptr_glBlitNamedFramebuffer :: FunPtr (GLuint -> GLuint -> GLint -> GLint -> GLint -> GLint -> GLint -> GLint -> GLint -> GLint -> GLbitfield -> GLenum -> IO ())
ptr_glBlitNamedFramebuffer = unsafePerformIO $ getCommand "glBlitNamedFramebuffer"

-- glBufferAddressRangeNV ------------------------------------------------------

glBufferAddressRangeNV
  :: GLenum -- ^ @pname@.
  -> GLuint -- ^ @index@.
  -> GLuint64EXT -- ^ @address@.
  -> GLsizeiptr -- ^ @length@ of type @BufferSize@.
  -> IO ()
glBufferAddressRangeNV = dyn_glBufferAddressRangeNV ptr_glBufferAddressRangeNV

foreign import CALLCONV "dynamic" dyn_glBufferAddressRangeNV
  :: FunPtr (GLenum -> GLuint -> GLuint64EXT -> GLsizeiptr -> IO ())
  ->         GLenum -> GLuint -> GLuint64EXT -> GLsizeiptr -> IO ()

{-# NOINLINE ptr_glBufferAddressRangeNV #-}
ptr_glBufferAddressRangeNV :: FunPtr (GLenum -> GLuint -> GLuint64EXT -> GLsizeiptr -> IO ())
ptr_glBufferAddressRangeNV = unsafePerformIO $ getCommand "glBufferAddressRangeNV"

-- glBufferData ----------------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glBufferData.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glBufferData.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glBufferData.xhtml OpenGL 4.x>
glBufferData
  :: GLenum -- ^ @target@ of type @BufferTargetARB@.
  -> GLsizeiptr -- ^ @size@ of type @BufferSize@.
  -> Ptr a -- ^ @data@ pointing to @size@ elements of type @a@.
  -> GLenum -- ^ @usage@ of type @BufferUsageARB@.
  -> IO ()
glBufferData = dyn_glBufferData ptr_glBufferData

foreign import CALLCONV "dynamic" dyn_glBufferData
  :: FunPtr (GLenum -> GLsizeiptr -> Ptr a -> GLenum -> IO ())
  ->         GLenum -> GLsizeiptr -> Ptr a -> GLenum -> IO ()

{-# NOINLINE ptr_glBufferData #-}
ptr_glBufferData :: FunPtr (GLenum -> GLsizeiptr -> Ptr a -> GLenum -> IO ())
ptr_glBufferData = unsafePerformIO $ getCommand "glBufferData"

-- glBufferDataARB -------------------------------------------------------------

glBufferDataARB
  :: GLenum -- ^ @target@ of type @BufferTargetARB@.
  -> GLsizeiptrARB -- ^ @size@ of type @BufferSizeARB@.
  -> Ptr a -- ^ @data@ pointing to @size@ elements of type @a@.
  -> GLenum -- ^ @usage@ of type @BufferUsageARB@.
  -> IO ()
glBufferDataARB = dyn_glBufferDataARB ptr_glBufferDataARB

foreign import CALLCONV "dynamic" dyn_glBufferDataARB
  :: FunPtr (GLenum -> GLsizeiptrARB -> Ptr a -> GLenum -> IO ())
  ->         GLenum -> GLsizeiptrARB -> Ptr a -> GLenum -> IO ()

{-# NOINLINE ptr_glBufferDataARB #-}
ptr_glBufferDataARB :: FunPtr (GLenum -> GLsizeiptrARB -> Ptr a -> GLenum -> IO ())
ptr_glBufferDataARB = unsafePerformIO $ getCommand "glBufferDataARB"

-- glBufferPageCommitmentARB ---------------------------------------------------

glBufferPageCommitmentARB
  :: GLenum -- ^ @target@.
  -> GLintptr -- ^ @offset@.
  -> GLsizeiptr -- ^ @size@.
  -> GLboolean -- ^ @commit@.
  -> IO ()
glBufferPageCommitmentARB = dyn_glBufferPageCommitmentARB ptr_glBufferPageCommitmentARB

foreign import CALLCONV "dynamic" dyn_glBufferPageCommitmentARB
  :: FunPtr (GLenum -> GLintptr -> GLsizeiptr -> GLboolean -> IO ())
  ->         GLenum -> GLintptr -> GLsizeiptr -> GLboolean -> IO ()

{-# NOINLINE ptr_glBufferPageCommitmentARB #-}
ptr_glBufferPageCommitmentARB :: FunPtr (GLenum -> GLintptr -> GLsizeiptr -> GLboolean -> IO ())
ptr_glBufferPageCommitmentARB = unsafePerformIO $ getCommand "glBufferPageCommitmentARB"

-- glBufferParameteriAPPLE -----------------------------------------------------

glBufferParameteriAPPLE
  :: GLenum -- ^ @target@.
  -> GLenum -- ^ @pname@.
  -> GLint -- ^ @param@.
  -> IO ()
glBufferParameteriAPPLE = dyn_glBufferParameteriAPPLE ptr_glBufferParameteriAPPLE

foreign import CALLCONV "dynamic" dyn_glBufferParameteriAPPLE
  :: FunPtr (GLenum -> GLenum -> GLint -> IO ())
  ->         GLenum -> GLenum -> GLint -> IO ()

{-# NOINLINE ptr_glBufferParameteriAPPLE #-}
ptr_glBufferParameteriAPPLE :: FunPtr (GLenum -> GLenum -> GLint -> IO ())
ptr_glBufferParameteriAPPLE = unsafePerformIO $ getCommand "glBufferParameteriAPPLE"

-- glBufferStorage -------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glBufferStorage.xhtml OpenGL 4.x>
glBufferStorage
  :: GLenum -- ^ @target@.
  -> GLsizeiptr -- ^ @size@.
  -> Ptr a -- ^ @data@ pointing to @size@ elements of type @a@.
  -> GLbitfield -- ^ @flags@.
  -> IO ()
glBufferStorage = dyn_glBufferStorage ptr_glBufferStorage

foreign import CALLCONV "dynamic" dyn_glBufferStorage
  :: FunPtr (GLenum -> GLsizeiptr -> Ptr a -> GLbitfield -> IO ())
  ->         GLenum -> GLsizeiptr -> Ptr a -> GLbitfield -> IO ()

{-# NOINLINE ptr_glBufferStorage #-}
ptr_glBufferStorage :: FunPtr (GLenum -> GLsizeiptr -> Ptr a -> GLbitfield -> IO ())
ptr_glBufferStorage = unsafePerformIO $ getCommand "glBufferStorage"

-- glBufferSubData -------------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glBufferSubData.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glBufferSubData.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glBufferSubData.xhtml OpenGL 4.x>
glBufferSubData
  :: GLenum -- ^ @target@ of type @BufferTargetARB@.
  -> GLintptr -- ^ @offset@ of type @BufferOffset@.
  -> GLsizeiptr -- ^ @size@ of type @BufferSize@.
  -> Ptr a -- ^ @data@ pointing to @size@ elements of type @a@.
  -> IO ()
glBufferSubData = dyn_glBufferSubData ptr_glBufferSubData

foreign import CALLCONV "dynamic" dyn_glBufferSubData
  :: FunPtr (GLenum -> GLintptr -> GLsizeiptr -> Ptr a -> IO ())
  ->         GLenum -> GLintptr -> GLsizeiptr -> Ptr a -> IO ()

{-# NOINLINE ptr_glBufferSubData #-}
ptr_glBufferSubData :: FunPtr (GLenum -> GLintptr -> GLsizeiptr -> Ptr a -> IO ())
ptr_glBufferSubData = unsafePerformIO $ getCommand "glBufferSubData"

-- glBufferSubDataARB ----------------------------------------------------------

glBufferSubDataARB
  :: GLenum -- ^ @target@ of type @BufferTargetARB@.
  -> GLintptrARB -- ^ @offset@ of type @BufferOffsetARB@.
  -> GLsizeiptrARB -- ^ @size@ of type @BufferSizeARB@.
  -> Ptr a -- ^ @data@ pointing to @size@ elements of type @a@.
  -> IO ()
glBufferSubDataARB = dyn_glBufferSubDataARB ptr_glBufferSubDataARB

foreign import CALLCONV "dynamic" dyn_glBufferSubDataARB
  :: FunPtr (GLenum -> GLintptrARB -> GLsizeiptrARB -> Ptr a -> IO ())
  ->         GLenum -> GLintptrARB -> GLsizeiptrARB -> Ptr a -> IO ()

{-# NOINLINE ptr_glBufferSubDataARB #-}
ptr_glBufferSubDataARB :: FunPtr (GLenum -> GLintptrARB -> GLsizeiptrARB -> Ptr a -> IO ())
ptr_glBufferSubDataARB = unsafePerformIO $ getCommand "glBufferSubDataARB"

-- glCallList ------------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glCallList.xml OpenGL 2.x>
glCallList
  :: GLuint -- ^ @list@ of type @List@.
  -> IO ()
glCallList = dyn_glCallList ptr_glCallList

foreign import CALLCONV "dynamic" dyn_glCallList
  :: FunPtr (GLuint -> IO ())
  ->         GLuint -> IO ()

{-# NOINLINE ptr_glCallList #-}
ptr_glCallList :: FunPtr (GLuint -> IO ())
ptr_glCallList = unsafePerformIO $ getCommand "glCallList"

-- glCallLists -----------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glCallLists.xml OpenGL 2.x>
glCallLists
  :: GLsizei -- ^ @n@.
  -> GLenum -- ^ @type@ of type @ListNameType@.
  -> Ptr a -- ^ @lists@ pointing to @COMPSIZE(n,type)@ elements of type @a@.
  -> IO ()
glCallLists = dyn_glCallLists ptr_glCallLists

foreign import CALLCONV "dynamic" dyn_glCallLists
  :: FunPtr (GLsizei -> GLenum -> Ptr a -> IO ())
  ->         GLsizei -> GLenum -> Ptr a -> IO ()

{-# NOINLINE ptr_glCallLists #-}
ptr_glCallLists :: FunPtr (GLsizei -> GLenum -> Ptr a -> IO ())
ptr_glCallLists = unsafePerformIO $ getCommand "glCallLists"

-- glCheckFramebufferStatus ----------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glCheckFramebufferStatus.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glCheckFramebufferStatus.xhtml OpenGL 4.x>
glCheckFramebufferStatus
  :: GLenum -- ^ @target@ of type @FramebufferTarget@.
  -> IO GLenum
glCheckFramebufferStatus = dyn_glCheckFramebufferStatus ptr_glCheckFramebufferStatus

foreign import CALLCONV "dynamic" dyn_glCheckFramebufferStatus
  :: FunPtr (GLenum -> IO GLenum)
  ->         GLenum -> IO GLenum

{-# NOINLINE ptr_glCheckFramebufferStatus #-}
ptr_glCheckFramebufferStatus :: FunPtr (GLenum -> IO GLenum)
ptr_glCheckFramebufferStatus = unsafePerformIO $ getCommand "glCheckFramebufferStatus"

-- glCheckFramebufferStatusEXT -------------------------------------------------

glCheckFramebufferStatusEXT
  :: GLenum -- ^ @target@ of type @FramebufferTarget@.
  -> IO GLenum
glCheckFramebufferStatusEXT = dyn_glCheckFramebufferStatusEXT ptr_glCheckFramebufferStatusEXT

foreign import CALLCONV "dynamic" dyn_glCheckFramebufferStatusEXT
  :: FunPtr (GLenum -> IO GLenum)
  ->         GLenum -> IO GLenum

{-# NOINLINE ptr_glCheckFramebufferStatusEXT #-}
ptr_glCheckFramebufferStatusEXT :: FunPtr (GLenum -> IO GLenum)
ptr_glCheckFramebufferStatusEXT = unsafePerformIO $ getCommand "glCheckFramebufferStatusEXT"

-- glCheckFramebufferStatusOES -------------------------------------------------

glCheckFramebufferStatusOES
  :: GLenum -- ^ @target@.
  -> IO GLenum
glCheckFramebufferStatusOES = dyn_glCheckFramebufferStatusOES ptr_glCheckFramebufferStatusOES

foreign import CALLCONV "dynamic" dyn_glCheckFramebufferStatusOES
  :: FunPtr (GLenum -> IO GLenum)
  ->         GLenum -> IO GLenum

{-# NOINLINE ptr_glCheckFramebufferStatusOES #-}
ptr_glCheckFramebufferStatusOES :: FunPtr (GLenum -> IO GLenum)
ptr_glCheckFramebufferStatusOES = unsafePerformIO $ getCommand "glCheckFramebufferStatusOES"

-- glCheckNamedFramebufferStatus -----------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glCheckFramebufferStatus.xhtml OpenGL 4.x>
glCheckNamedFramebufferStatus
  :: GLuint -- ^ @framebuffer@.
  -> GLenum -- ^ @target@.
  -> IO GLenum
glCheckNamedFramebufferStatus = dyn_glCheckNamedFramebufferStatus ptr_glCheckNamedFramebufferStatus

foreign import CALLCONV "dynamic" dyn_glCheckNamedFramebufferStatus
  :: FunPtr (GLuint -> GLenum -> IO GLenum)
  ->         GLuint -> GLenum -> IO GLenum

{-# NOINLINE ptr_glCheckNamedFramebufferStatus #-}
ptr_glCheckNamedFramebufferStatus :: FunPtr (GLuint -> GLenum -> IO GLenum)
ptr_glCheckNamedFramebufferStatus = unsafePerformIO $ getCommand "glCheckNamedFramebufferStatus"

-- glCheckNamedFramebufferStatusEXT --------------------------------------------

glCheckNamedFramebufferStatusEXT
  :: GLuint -- ^ @framebuffer@ of type @Framebuffer@.
  -> GLenum -- ^ @target@ of type @FramebufferTarget@.
  -> IO GLenum -- ^ of type @FramebufferStatus@.
glCheckNamedFramebufferStatusEXT = dyn_glCheckNamedFramebufferStatusEXT ptr_glCheckNamedFramebufferStatusEXT

foreign import CALLCONV "dynamic" dyn_glCheckNamedFramebufferStatusEXT
  :: FunPtr (GLuint -> GLenum -> IO GLenum)
  ->         GLuint -> GLenum -> IO GLenum

{-# NOINLINE ptr_glCheckNamedFramebufferStatusEXT #-}
ptr_glCheckNamedFramebufferStatusEXT :: FunPtr (GLuint -> GLenum -> IO GLenum)
ptr_glCheckNamedFramebufferStatusEXT = unsafePerformIO $ getCommand "glCheckNamedFramebufferStatusEXT"

-- glClampColor ----------------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glClampColor.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glClampColor.xhtml OpenGL 4.x>
glClampColor
  :: GLenum -- ^ @target@ of type @ClampColorTargetARB@.
  -> GLenum -- ^ @clamp@ of type @ClampColorModeARB@.
  -> IO ()
glClampColor = dyn_glClampColor ptr_glClampColor

foreign import CALLCONV "dynamic" dyn_glClampColor
  :: FunPtr (GLenum -> GLenum -> IO ())
  ->         GLenum -> GLenum -> IO ()

{-# NOINLINE ptr_glClampColor #-}
ptr_glClampColor :: FunPtr (GLenum -> GLenum -> IO ())
ptr_glClampColor = unsafePerformIO $ getCommand "glClampColor"

-- glClampColorARB -------------------------------------------------------------

glClampColorARB
  :: GLenum -- ^ @target@ of type @ClampColorTargetARB@.
  -> GLenum -- ^ @clamp@ of type @ClampColorModeARB@.
  -> IO ()
glClampColorARB = dyn_glClampColorARB ptr_glClampColorARB

foreign import CALLCONV "dynamic" dyn_glClampColorARB
  :: FunPtr (GLenum -> GLenum -> IO ())
  ->         GLenum -> GLenum -> IO ()

{-# NOINLINE ptr_glClampColorARB #-}
ptr_glClampColorARB :: FunPtr (GLenum -> GLenum -> IO ())
ptr_glClampColorARB = unsafePerformIO $ getCommand "glClampColorARB"

-- glClear ---------------------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glClear.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glClear.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glClear.xhtml OpenGL 4.x>
glClear
  :: GLbitfield -- ^ @mask@ of type @ClearBufferMask@.
  -> IO ()
glClear = dyn_glClear ptr_glClear

foreign import CALLCONV "dynamic" dyn_glClear
  :: FunPtr (GLbitfield -> IO ())
  ->         GLbitfield -> IO ()

{-# NOINLINE ptr_glClear #-}
ptr_glClear :: FunPtr (GLbitfield -> IO ())
ptr_glClear = unsafePerformIO $ getCommand "glClear"

-- glClearAccum ----------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glClearAccum.xml OpenGL 2.x>
glClearAccum
  :: GLfloat -- ^ @red@.
  -> GLfloat -- ^ @green@.
  -> GLfloat -- ^ @blue@.
  -> GLfloat -- ^ @alpha@.
  -> IO ()
glClearAccum = dyn_glClearAccum ptr_glClearAccum

foreign import CALLCONV "dynamic" dyn_glClearAccum
  :: FunPtr (GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
  ->         GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ()

{-# NOINLINE ptr_glClearAccum #-}
ptr_glClearAccum :: FunPtr (GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
ptr_glClearAccum = unsafePerformIO $ getCommand "glClearAccum"

-- glClearAccumxOES ------------------------------------------------------------

glClearAccumxOES
  :: GLfixed -- ^ @red@ of type @ClampedFixed@.
  -> GLfixed -- ^ @green@ of type @ClampedFixed@.
  -> GLfixed -- ^ @blue@ of type @ClampedFixed@.
  -> GLfixed -- ^ @alpha@ of type @ClampedFixed@.
  -> IO ()
glClearAccumxOES = dyn_glClearAccumxOES ptr_glClearAccumxOES

foreign import CALLCONV "dynamic" dyn_glClearAccumxOES
  :: FunPtr (GLfixed -> GLfixed -> GLfixed -> GLfixed -> IO ())
  ->         GLfixed -> GLfixed -> GLfixed -> GLfixed -> IO ()

{-# NOINLINE ptr_glClearAccumxOES #-}
ptr_glClearAccumxOES :: FunPtr (GLfixed -> GLfixed -> GLfixed -> GLfixed -> IO ())
ptr_glClearAccumxOES = unsafePerformIO $ getCommand "glClearAccumxOES"

-- glClearBufferData -----------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glClearBufferData.xhtml OpenGL 4.x>
glClearBufferData
  :: GLenum -- ^ @target@.
  -> GLenum -- ^ @internalformat@.
  -> GLenum -- ^ @format@.
  -> GLenum -- ^ @type@.
  -> Ptr a -- ^ @data@ pointing to @COMPSIZE(format,type)@ elements of type @a@.
  -> IO ()
glClearBufferData = dyn_glClearBufferData ptr_glClearBufferData

foreign import CALLCONV "dynamic" dyn_glClearBufferData
  :: FunPtr (GLenum -> GLenum -> GLenum -> GLenum -> Ptr a -> IO ())
  ->         GLenum -> GLenum -> GLenum -> GLenum -> Ptr a -> IO ()

{-# NOINLINE ptr_glClearBufferData #-}
ptr_glClearBufferData :: FunPtr (GLenum -> GLenum -> GLenum -> GLenum -> Ptr a -> IO ())
ptr_glClearBufferData = unsafePerformIO $ getCommand "glClearBufferData"

-- glClearBufferSubData --------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glClearBufferSubData.xhtml OpenGL 4.x>
glClearBufferSubData
  :: GLenum -- ^ @target@.
  -> GLenum -- ^ @internalformat@.
  -> GLintptr -- ^ @offset@ of type @BufferOffset@.
  -> GLsizeiptr -- ^ @size@ of type @BufferSize@.
  -> GLenum -- ^ @format@.
  -> GLenum -- ^ @type@.
  -> Ptr a -- ^ @data@ pointing to @COMPSIZE(format,type)@ elements of type @a@.
  -> IO ()
glClearBufferSubData = dyn_glClearBufferSubData ptr_glClearBufferSubData

foreign import CALLCONV "dynamic" dyn_glClearBufferSubData
  :: FunPtr (GLenum -> GLenum -> GLintptr -> GLsizeiptr -> GLenum -> GLenum -> Ptr a -> IO ())
  ->         GLenum -> GLenum -> GLintptr -> GLsizeiptr -> GLenum -> GLenum -> Ptr a -> IO ()

{-# NOINLINE ptr_glClearBufferSubData #-}
ptr_glClearBufferSubData :: FunPtr (GLenum -> GLenum -> GLintptr -> GLsizeiptr -> GLenum -> GLenum -> Ptr a -> IO ())
ptr_glClearBufferSubData = unsafePerformIO $ getCommand "glClearBufferSubData"

-- glClearBufferfi -------------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glClearBuffer.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glClearBuffer.xhtml OpenGL 4.x>
glClearBufferfi
  :: GLenum -- ^ @buffer@.
  -> GLint -- ^ @drawbuffer@ of type @DrawBufferName@.
  -> GLfloat -- ^ @depth@.
  -> GLint -- ^ @stencil@.
  -> IO ()
glClearBufferfi = dyn_glClearBufferfi ptr_glClearBufferfi

foreign import CALLCONV "dynamic" dyn_glClearBufferfi
  :: FunPtr (GLenum -> GLint -> GLfloat -> GLint -> IO ())
  ->         GLenum -> GLint -> GLfloat -> GLint -> IO ()

{-# NOINLINE ptr_glClearBufferfi #-}
ptr_glClearBufferfi :: FunPtr (GLenum -> GLint -> GLfloat -> GLint -> IO ())
ptr_glClearBufferfi = unsafePerformIO $ getCommand "glClearBufferfi"

-- glClearBufferfv -------------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glClearBuffer.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glClearBuffer.xhtml OpenGL 4.x>
glClearBufferfv
  :: GLenum -- ^ @buffer@.
  -> GLint -- ^ @drawbuffer@ of type @DrawBufferName@.
  -> Ptr GLfloat -- ^ @value@ pointing to @COMPSIZE(buffer)@ elements of type @GLfloat@.
  -> IO ()
glClearBufferfv = dyn_glClearBufferfv ptr_glClearBufferfv

foreign import CALLCONV "dynamic" dyn_glClearBufferfv
  :: FunPtr (GLenum -> GLint -> Ptr GLfloat -> IO ())
  ->         GLenum -> GLint -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glClearBufferfv #-}
ptr_glClearBufferfv :: FunPtr (GLenum -> GLint -> Ptr GLfloat -> IO ())
ptr_glClearBufferfv = unsafePerformIO $ getCommand "glClearBufferfv"

-- glClearBufferiv -------------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glClearBuffer.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glClearBuffer.xhtml OpenGL 4.x>
glClearBufferiv
  :: GLenum -- ^ @buffer@.
  -> GLint -- ^ @drawbuffer@ of type @DrawBufferName@.
  -> Ptr GLint -- ^ @value@ pointing to @COMPSIZE(buffer)@ elements of type @GLint@.
  -> IO ()
glClearBufferiv = dyn_glClearBufferiv ptr_glClearBufferiv

foreign import CALLCONV "dynamic" dyn_glClearBufferiv
  :: FunPtr (GLenum -> GLint -> Ptr GLint -> IO ())
  ->         GLenum -> GLint -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glClearBufferiv #-}
ptr_glClearBufferiv :: FunPtr (GLenum -> GLint -> Ptr GLint -> IO ())
ptr_glClearBufferiv = unsafePerformIO $ getCommand "glClearBufferiv"

-- glClearBufferuiv ------------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glClearBuffer.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glClearBuffer.xhtml OpenGL 4.x>
glClearBufferuiv
  :: GLenum -- ^ @buffer@.
  -> GLint -- ^ @drawbuffer@ of type @DrawBufferName@.
  -> Ptr GLuint -- ^ @value@ pointing to @COMPSIZE(buffer)@ elements of type @GLuint@.
  -> IO ()
glClearBufferuiv = dyn_glClearBufferuiv ptr_glClearBufferuiv

foreign import CALLCONV "dynamic" dyn_glClearBufferuiv
  :: FunPtr (GLenum -> GLint -> Ptr GLuint -> IO ())
  ->         GLenum -> GLint -> Ptr GLuint -> IO ()

{-# NOINLINE ptr_glClearBufferuiv #-}
ptr_glClearBufferuiv :: FunPtr (GLenum -> GLint -> Ptr GLuint -> IO ())
ptr_glClearBufferuiv = unsafePerformIO $ getCommand "glClearBufferuiv"

-- glClearColor ----------------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glClearColor.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glClearColor.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glClearColor.xhtml OpenGL 4.x>
glClearColor
  :: GLfloat -- ^ @red@ of type @ColorF@.
  -> GLfloat -- ^ @green@ of type @ColorF@.
  -> GLfloat -- ^ @blue@ of type @ColorF@.
  -> GLfloat -- ^ @alpha@ of type @ColorF@.
  -> IO ()
glClearColor = dyn_glClearColor ptr_glClearColor

foreign import CALLCONV "dynamic" dyn_glClearColor
  :: FunPtr (GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
  ->         GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ()

{-# NOINLINE ptr_glClearColor #-}
ptr_glClearColor :: FunPtr (GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
ptr_glClearColor = unsafePerformIO $ getCommand "glClearColor"

-- glClearColorIiEXT -----------------------------------------------------------

glClearColorIiEXT
  :: GLint -- ^ @red@.
  -> GLint -- ^ @green@.
  -> GLint -- ^ @blue@.
  -> GLint -- ^ @alpha@.
  -> IO ()
glClearColorIiEXT = dyn_glClearColorIiEXT ptr_glClearColorIiEXT

foreign import CALLCONV "dynamic" dyn_glClearColorIiEXT
  :: FunPtr (GLint -> GLint -> GLint -> GLint -> IO ())
  ->         GLint -> GLint -> GLint -> GLint -> IO ()

{-# NOINLINE ptr_glClearColorIiEXT #-}
ptr_glClearColorIiEXT :: FunPtr (GLint -> GLint -> GLint -> GLint -> IO ())
ptr_glClearColorIiEXT = unsafePerformIO $ getCommand "glClearColorIiEXT"

-- glClearColorIuiEXT ----------------------------------------------------------

glClearColorIuiEXT
  :: GLuint -- ^ @red@.
  -> GLuint -- ^ @green@.
  -> GLuint -- ^ @blue@.
  -> GLuint -- ^ @alpha@.
  -> IO ()
glClearColorIuiEXT = dyn_glClearColorIuiEXT ptr_glClearColorIuiEXT

foreign import CALLCONV "dynamic" dyn_glClearColorIuiEXT
  :: FunPtr (GLuint -> GLuint -> GLuint -> GLuint -> IO ())
  ->         GLuint -> GLuint -> GLuint -> GLuint -> IO ()

{-# NOINLINE ptr_glClearColorIuiEXT #-}
ptr_glClearColorIuiEXT :: FunPtr (GLuint -> GLuint -> GLuint -> GLuint -> IO ())
ptr_glClearColorIuiEXT = unsafePerformIO $ getCommand "glClearColorIuiEXT"

-- glClearColorx ---------------------------------------------------------------

glClearColorx
  :: GLfixed -- ^ @red@.
  -> GLfixed -- ^ @green@.
  -> GLfixed -- ^ @blue@.
  -> GLfixed -- ^ @alpha@.
  -> IO ()
glClearColorx = dyn_glClearColorx ptr_glClearColorx

foreign import CALLCONV "dynamic" dyn_glClearColorx
  :: FunPtr (GLfixed -> GLfixed -> GLfixed -> GLfixed -> IO ())
  ->         GLfixed -> GLfixed -> GLfixed -> GLfixed -> IO ()

{-# NOINLINE ptr_glClearColorx #-}
ptr_glClearColorx :: FunPtr (GLfixed -> GLfixed -> GLfixed -> GLfixed -> IO ())
ptr_glClearColorx = unsafePerformIO $ getCommand "glClearColorx"

-- glClearColorxOES ------------------------------------------------------------

glClearColorxOES
  :: GLfixed -- ^ @red@ of type @ClampedFixed@.
  -> GLfixed -- ^ @green@ of type @ClampedFixed@.
  -> GLfixed -- ^ @blue@ of type @ClampedFixed@.
  -> GLfixed -- ^ @alpha@ of type @ClampedFixed@.
  -> IO ()
glClearColorxOES = dyn_glClearColorxOES ptr_glClearColorxOES

foreign import CALLCONV "dynamic" dyn_glClearColorxOES
  :: FunPtr (GLfixed -> GLfixed -> GLfixed -> GLfixed -> IO ())
  ->         GLfixed -> GLfixed -> GLfixed -> GLfixed -> IO ()

{-# NOINLINE ptr_glClearColorxOES #-}
ptr_glClearColorxOES :: FunPtr (GLfixed -> GLfixed -> GLfixed -> GLfixed -> IO ())
ptr_glClearColorxOES = unsafePerformIO $ getCommand "glClearColorxOES"

-- glClearDepth ----------------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glClearDepth.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glClearDepth.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glClearDepth.xhtml OpenGL 4.x>
glClearDepth
  :: GLdouble -- ^ @depth@.
  -> IO ()
glClearDepth = dyn_glClearDepth ptr_glClearDepth

foreign import CALLCONV "dynamic" dyn_glClearDepth
  :: FunPtr (GLdouble -> IO ())
  ->         GLdouble -> IO ()

{-# NOINLINE ptr_glClearDepth #-}
ptr_glClearDepth :: FunPtr (GLdouble -> IO ())
ptr_glClearDepth = unsafePerformIO $ getCommand "glClearDepth"

-- glClearDepthdNV -------------------------------------------------------------

glClearDepthdNV
  :: GLdouble -- ^ @depth@.
  -> IO ()
glClearDepthdNV = dyn_glClearDepthdNV ptr_glClearDepthdNV

foreign import CALLCONV "dynamic" dyn_glClearDepthdNV
  :: FunPtr (GLdouble -> IO ())
  ->         GLdouble -> IO ()

{-# NOINLINE ptr_glClearDepthdNV #-}
ptr_glClearDepthdNV :: FunPtr (GLdouble -> IO ())
ptr_glClearDepthdNV = unsafePerformIO $ getCommand "glClearDepthdNV"

-- glClearDepthf ---------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glClearDepth.xhtml OpenGL 4.x>
glClearDepthf
  :: GLfloat -- ^ @d@.
  -> IO ()
glClearDepthf = dyn_glClearDepthf ptr_glClearDepthf

foreign import CALLCONV "dynamic" dyn_glClearDepthf
  :: FunPtr (GLfloat -> IO ())
  ->         GLfloat -> IO ()

{-# NOINLINE ptr_glClearDepthf #-}
ptr_glClearDepthf :: FunPtr (GLfloat -> IO ())
ptr_glClearDepthf = unsafePerformIO $ getCommand "glClearDepthf"

-- glClearDepthfOES ------------------------------------------------------------

glClearDepthfOES
  :: GLclampf -- ^ @depth@ of type @ClampedFloat32@.
  -> IO ()
glClearDepthfOES = dyn_glClearDepthfOES ptr_glClearDepthfOES

foreign import CALLCONV "dynamic" dyn_glClearDepthfOES
  :: FunPtr (GLclampf -> IO ())
  ->         GLclampf -> IO ()

{-# NOINLINE ptr_glClearDepthfOES #-}
ptr_glClearDepthfOES :: FunPtr (GLclampf -> IO ())
ptr_glClearDepthfOES = unsafePerformIO $ getCommand "glClearDepthfOES"

-- glClearDepthx ---------------------------------------------------------------

glClearDepthx
  :: GLfixed -- ^ @depth@.
  -> IO ()
glClearDepthx = dyn_glClearDepthx ptr_glClearDepthx

foreign import CALLCONV "dynamic" dyn_glClearDepthx
  :: FunPtr (GLfixed -> IO ())
  ->         GLfixed -> IO ()

{-# NOINLINE ptr_glClearDepthx #-}
ptr_glClearDepthx :: FunPtr (GLfixed -> IO ())
ptr_glClearDepthx = unsafePerformIO $ getCommand "glClearDepthx"

-- glClearDepthxOES ------------------------------------------------------------

glClearDepthxOES
  :: GLfixed -- ^ @depth@ of type @ClampedFixed@.
  -> IO ()
glClearDepthxOES = dyn_glClearDepthxOES ptr_glClearDepthxOES

foreign import CALLCONV "dynamic" dyn_glClearDepthxOES
  :: FunPtr (GLfixed -> IO ())
  ->         GLfixed -> IO ()

{-# NOINLINE ptr_glClearDepthxOES #-}
ptr_glClearDepthxOES :: FunPtr (GLfixed -> IO ())
ptr_glClearDepthxOES = unsafePerformIO $ getCommand "glClearDepthxOES"

-- glClearIndex ----------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glClearIndex.xml OpenGL 2.x>
glClearIndex
  :: GLfloat -- ^ @c@ of type @MaskedColorIndexValueF@.
  -> IO ()
glClearIndex = dyn_glClearIndex ptr_glClearIndex

foreign import CALLCONV "dynamic" dyn_glClearIndex
  :: FunPtr (GLfloat -> IO ())
  ->         GLfloat -> IO ()

{-# NOINLINE ptr_glClearIndex #-}
ptr_glClearIndex :: FunPtr (GLfloat -> IO ())
ptr_glClearIndex = unsafePerformIO $ getCommand "glClearIndex"

-- glClearNamedBufferData ------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glClearBufferData.xhtml OpenGL 4.x>
glClearNamedBufferData
  :: GLuint -- ^ @buffer@.
  -> GLenum -- ^ @internalformat@.
  -> GLenum -- ^ @format@.
  -> GLenum -- ^ @type@.
  -> Ptr a -- ^ @data@.
  -> IO ()
glClearNamedBufferData = dyn_glClearNamedBufferData ptr_glClearNamedBufferData

foreign import CALLCONV "dynamic" dyn_glClearNamedBufferData
  :: FunPtr (GLuint -> GLenum -> GLenum -> GLenum -> Ptr a -> IO ())
  ->         GLuint -> GLenum -> GLenum -> GLenum -> Ptr a -> IO ()

{-# NOINLINE ptr_glClearNamedBufferData #-}
ptr_glClearNamedBufferData :: FunPtr (GLuint -> GLenum -> GLenum -> GLenum -> Ptr a -> IO ())
ptr_glClearNamedBufferData = unsafePerformIO $ getCommand "glClearNamedBufferData"

-- glClearNamedBufferDataEXT ---------------------------------------------------

glClearNamedBufferDataEXT
  :: GLuint -- ^ @buffer@.
  -> GLenum -- ^ @internalformat@.
  -> GLenum -- ^ @format@ of type @PixelFormat@.
  -> GLenum -- ^ @type@ of type @PixelType@.
  -> Ptr a -- ^ @data@ pointing to @COMPSIZE(format,type)@ elements of type @a@.
  -> IO ()
glClearNamedBufferDataEXT = dyn_glClearNamedBufferDataEXT ptr_glClearNamedBufferDataEXT

foreign import CALLCONV "dynamic" dyn_glClearNamedBufferDataEXT
  :: FunPtr (GLuint -> GLenum -> GLenum -> GLenum -> Ptr a -> IO ())
  ->         GLuint -> GLenum -> GLenum -> GLenum -> Ptr a -> IO ()

{-# NOINLINE ptr_glClearNamedBufferDataEXT #-}
ptr_glClearNamedBufferDataEXT :: FunPtr (GLuint -> GLenum -> GLenum -> GLenum -> Ptr a -> IO ())
ptr_glClearNamedBufferDataEXT = unsafePerformIO $ getCommand "glClearNamedBufferDataEXT"

-- glClearNamedBufferSubData ---------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glClearBufferSubData.xhtml OpenGL 4.x>
glClearNamedBufferSubData
  :: GLuint -- ^ @buffer@.
  -> GLenum -- ^ @internalformat@.
  -> GLintptr -- ^ @offset@.
  -> GLsizeiptr -- ^ @size@ of type @BufferSize@.
  -> GLenum -- ^ @format@.
  -> GLenum -- ^ @type@.
  -> Ptr a -- ^ @data@.
  -> IO ()
glClearNamedBufferSubData = dyn_glClearNamedBufferSubData ptr_glClearNamedBufferSubData

foreign import CALLCONV "dynamic" dyn_glClearNamedBufferSubData
  :: FunPtr (GLuint -> GLenum -> GLintptr -> GLsizeiptr -> GLenum -> GLenum -> Ptr a -> IO ())
  ->         GLuint -> GLenum -> GLintptr -> GLsizeiptr -> GLenum -> GLenum -> Ptr a -> IO ()

{-# NOINLINE ptr_glClearNamedBufferSubData #-}
ptr_glClearNamedBufferSubData :: FunPtr (GLuint -> GLenum -> GLintptr -> GLsizeiptr -> GLenum -> GLenum -> Ptr a -> IO ())
ptr_glClearNamedBufferSubData = unsafePerformIO $ getCommand "glClearNamedBufferSubData"

-- glClearNamedBufferSubDataEXT ------------------------------------------------

glClearNamedBufferSubDataEXT
  :: GLuint -- ^ @buffer@.
  -> GLenum -- ^ @internalformat@.
  -> GLsizeiptr -- ^ @offset@ of type @BufferSize@.
  -> GLsizeiptr -- ^ @size@ of type @BufferSize@.
  -> GLenum -- ^ @format@ of type @PixelFormat@.
  -> GLenum -- ^ @type@ of type @PixelType@.
  -> Ptr a -- ^ @data@ pointing to @COMPSIZE(format,type)@ elements of type @a@.
  -> IO ()
glClearNamedBufferSubDataEXT = dyn_glClearNamedBufferSubDataEXT ptr_glClearNamedBufferSubDataEXT

foreign import CALLCONV "dynamic" dyn_glClearNamedBufferSubDataEXT
  :: FunPtr (GLuint -> GLenum -> GLsizeiptr -> GLsizeiptr -> GLenum -> GLenum -> Ptr a -> IO ())
  ->         GLuint -> GLenum -> GLsizeiptr -> GLsizeiptr -> GLenum -> GLenum -> Ptr a -> IO ()

{-# NOINLINE ptr_glClearNamedBufferSubDataEXT #-}
ptr_glClearNamedBufferSubDataEXT :: FunPtr (GLuint -> GLenum -> GLsizeiptr -> GLsizeiptr -> GLenum -> GLenum -> Ptr a -> IO ())
ptr_glClearNamedBufferSubDataEXT = unsafePerformIO $ getCommand "glClearNamedBufferSubDataEXT"

-- glClearNamedFramebufferfi ---------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glClearBuffer.xhtml OpenGL 4.x>
glClearNamedFramebufferfi
  :: GLuint -- ^ @framebuffer@.
  -> GLenum -- ^ @buffer@.
  -> GLfloat -- ^ @depth@.
  -> GLint -- ^ @stencil@.
  -> IO ()
glClearNamedFramebufferfi = dyn_glClearNamedFramebufferfi ptr_glClearNamedFramebufferfi

foreign import CALLCONV "dynamic" dyn_glClearNamedFramebufferfi
  :: FunPtr (GLuint -> GLenum -> GLfloat -> GLint -> IO ())
  ->         GLuint -> GLenum -> GLfloat -> GLint -> IO ()

{-# NOINLINE ptr_glClearNamedFramebufferfi #-}
ptr_glClearNamedFramebufferfi :: FunPtr (GLuint -> GLenum -> GLfloat -> GLint -> IO ())
ptr_glClearNamedFramebufferfi = unsafePerformIO $ getCommand "glClearNamedFramebufferfi"

-- glClearNamedFramebufferfv ---------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glClearBuffer.xhtml OpenGL 4.x>
glClearNamedFramebufferfv
  :: GLuint -- ^ @framebuffer@.
  -> GLenum -- ^ @buffer@.
  -> GLint -- ^ @drawbuffer@.
  -> Ptr GLfloat -- ^ @value@.
  -> IO ()
glClearNamedFramebufferfv = dyn_glClearNamedFramebufferfv ptr_glClearNamedFramebufferfv

foreign import CALLCONV "dynamic" dyn_glClearNamedFramebufferfv
  :: FunPtr (GLuint -> GLenum -> GLint -> Ptr GLfloat -> IO ())
  ->         GLuint -> GLenum -> GLint -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glClearNamedFramebufferfv #-}
ptr_glClearNamedFramebufferfv :: FunPtr (GLuint -> GLenum -> GLint -> Ptr GLfloat -> IO ())
ptr_glClearNamedFramebufferfv = unsafePerformIO $ getCommand "glClearNamedFramebufferfv"

-- glClearNamedFramebufferiv ---------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glClearBuffer.xhtml OpenGL 4.x>
glClearNamedFramebufferiv
  :: GLuint -- ^ @framebuffer@.
  -> GLenum -- ^ @buffer@.
  -> GLint -- ^ @drawbuffer@.
  -> Ptr GLint -- ^ @value@.
  -> IO ()
glClearNamedFramebufferiv = dyn_glClearNamedFramebufferiv ptr_glClearNamedFramebufferiv

foreign import CALLCONV "dynamic" dyn_glClearNamedFramebufferiv
  :: FunPtr (GLuint -> GLenum -> GLint -> Ptr GLint -> IO ())
  ->         GLuint -> GLenum -> GLint -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glClearNamedFramebufferiv #-}
ptr_glClearNamedFramebufferiv :: FunPtr (GLuint -> GLenum -> GLint -> Ptr GLint -> IO ())
ptr_glClearNamedFramebufferiv = unsafePerformIO $ getCommand "glClearNamedFramebufferiv"

-- glClearNamedFramebufferuiv --------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glClearBuffer.xhtml OpenGL 4.x>
glClearNamedFramebufferuiv
  :: GLuint -- ^ @framebuffer@.
  -> GLenum -- ^ @buffer@.
  -> GLint -- ^ @drawbuffer@.
  -> Ptr GLuint -- ^ @value@.
  -> IO ()
glClearNamedFramebufferuiv = dyn_glClearNamedFramebufferuiv ptr_glClearNamedFramebufferuiv

foreign import CALLCONV "dynamic" dyn_glClearNamedFramebufferuiv
  :: FunPtr (GLuint -> GLenum -> GLint -> Ptr GLuint -> IO ())
  ->         GLuint -> GLenum -> GLint -> Ptr GLuint -> IO ()

{-# NOINLINE ptr_glClearNamedFramebufferuiv #-}
ptr_glClearNamedFramebufferuiv :: FunPtr (GLuint -> GLenum -> GLint -> Ptr GLuint -> IO ())
ptr_glClearNamedFramebufferuiv = unsafePerformIO $ getCommand "glClearNamedFramebufferuiv"

-- glClearStencil --------------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glClearStencil.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glClearStencil.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glClearStencil.xhtml OpenGL 4.x>
glClearStencil
  :: GLint -- ^ @s@ of type @StencilValue@.
  -> IO ()
glClearStencil = dyn_glClearStencil ptr_glClearStencil

foreign import CALLCONV "dynamic" dyn_glClearStencil
  :: FunPtr (GLint -> IO ())
  ->         GLint -> IO ()

{-# NOINLINE ptr_glClearStencil #-}
ptr_glClearStencil :: FunPtr (GLint -> IO ())
ptr_glClearStencil = unsafePerformIO $ getCommand "glClearStencil"

-- glClearTexImage -------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glClearTexImage.xhtml OpenGL 4.x>
glClearTexImage
  :: GLuint -- ^ @texture@.
  -> GLint -- ^ @level@.
  -> GLenum -- ^ @format@.
  -> GLenum -- ^ @type@.
  -> Ptr a -- ^ @data@ pointing to @COMPSIZE(format,type)@ elements of type @a@.
  -> IO ()
glClearTexImage = dyn_glClearTexImage ptr_glClearTexImage

foreign import CALLCONV "dynamic" dyn_glClearTexImage
  :: FunPtr (GLuint -> GLint -> GLenum -> GLenum -> Ptr a -> IO ())
  ->         GLuint -> GLint -> GLenum -> GLenum -> Ptr a -> IO ()

{-# NOINLINE ptr_glClearTexImage #-}
ptr_glClearTexImage :: FunPtr (GLuint -> GLint -> GLenum -> GLenum -> Ptr a -> IO ())
ptr_glClearTexImage = unsafePerformIO $ getCommand "glClearTexImage"

-- glClearTexSubImage ----------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glClearTexSubImage.xhtml OpenGL 4.x>
glClearTexSubImage
  :: GLuint -- ^ @texture@.
  -> GLint -- ^ @level@.
  -> GLint -- ^ @xoffset@.
  -> GLint -- ^ @yoffset@.
  -> GLint -- ^ @zoffset@.
  -> GLsizei -- ^ @width@.
  -> GLsizei -- ^ @height@.
  -> GLsizei -- ^ @depth@.
  -> GLenum -- ^ @format@.
  -> GLenum -- ^ @type@.
  -> Ptr a -- ^ @data@ pointing to @COMPSIZE(format,type)@ elements of type @a@.
  -> IO ()
glClearTexSubImage = dyn_glClearTexSubImage ptr_glClearTexSubImage

foreign import CALLCONV "dynamic" dyn_glClearTexSubImage
  :: FunPtr (GLuint -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO ())
  ->         GLuint -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO ()

{-# NOINLINE ptr_glClearTexSubImage #-}
ptr_glClearTexSubImage :: FunPtr (GLuint -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO ())
ptr_glClearTexSubImage = unsafePerformIO $ getCommand "glClearTexSubImage"

-- glClientActiveTexture -------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glClientActiveTexture.xml OpenGL 2.x>
glClientActiveTexture
  :: GLenum -- ^ @texture@ of type @TextureUnit@.
  -> IO ()
glClientActiveTexture = dyn_glClientActiveTexture ptr_glClientActiveTexture

foreign import CALLCONV "dynamic" dyn_glClientActiveTexture
  :: FunPtr (GLenum -> IO ())
  ->         GLenum -> IO ()

{-# NOINLINE ptr_glClientActiveTexture #-}
ptr_glClientActiveTexture :: FunPtr (GLenum -> IO ())
ptr_glClientActiveTexture = unsafePerformIO $ getCommand "glClientActiveTexture"

-- glClientActiveTextureARB ----------------------------------------------------

glClientActiveTextureARB
  :: GLenum -- ^ @texture@ of type @TextureUnit@.
  -> IO ()
glClientActiveTextureARB = dyn_glClientActiveTextureARB ptr_glClientActiveTextureARB

foreign import CALLCONV "dynamic" dyn_glClientActiveTextureARB
  :: FunPtr (GLenum -> IO ())
  ->         GLenum -> IO ()

{-# NOINLINE ptr_glClientActiveTextureARB #-}
ptr_glClientActiveTextureARB :: FunPtr (GLenum -> IO ())
ptr_glClientActiveTextureARB = unsafePerformIO $ getCommand "glClientActiveTextureARB"

-- glClientActiveVertexStreamATI -----------------------------------------------

glClientActiveVertexStreamATI
  :: GLenum -- ^ @stream@ of type @VertexStreamATI@.
  -> IO ()
glClientActiveVertexStreamATI = dyn_glClientActiveVertexStreamATI ptr_glClientActiveVertexStreamATI

foreign import CALLCONV "dynamic" dyn_glClientActiveVertexStreamATI
  :: FunPtr (GLenum -> IO ())
  ->         GLenum -> IO ()

{-# NOINLINE ptr_glClientActiveVertexStreamATI #-}
ptr_glClientActiveVertexStreamATI :: FunPtr (GLenum -> IO ())
ptr_glClientActiveVertexStreamATI = unsafePerformIO $ getCommand "glClientActiveVertexStreamATI"

-- glClientAttribDefaultEXT ----------------------------------------------------

glClientAttribDefaultEXT
  :: GLbitfield -- ^ @mask@ of type @ClientAttribMask@.
  -> IO ()
glClientAttribDefaultEXT = dyn_glClientAttribDefaultEXT ptr_glClientAttribDefaultEXT

foreign import CALLCONV "dynamic" dyn_glClientAttribDefaultEXT
  :: FunPtr (GLbitfield -> IO ())
  ->         GLbitfield -> IO ()

{-# NOINLINE ptr_glClientAttribDefaultEXT #-}
ptr_glClientAttribDefaultEXT :: FunPtr (GLbitfield -> IO ())
ptr_glClientAttribDefaultEXT = unsafePerformIO $ getCommand "glClientAttribDefaultEXT"

-- glClientWaitSync ------------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glClientWaitSync.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glClientWaitSync.xhtml OpenGL 4.x>
glClientWaitSync
  :: GLsync -- ^ @sync@ of type @sync@.
  -> GLbitfield -- ^ @flags@.
  -> GLuint64 -- ^ @timeout@.
  -> IO GLenum
glClientWaitSync = dyn_glClientWaitSync ptr_glClientWaitSync

foreign import CALLCONV "dynamic" dyn_glClientWaitSync
  :: FunPtr (GLsync -> GLbitfield -> GLuint64 -> IO GLenum)
  ->         GLsync -> GLbitfield -> GLuint64 -> IO GLenum

{-# NOINLINE ptr_glClientWaitSync #-}
ptr_glClientWaitSync :: FunPtr (GLsync -> GLbitfield -> GLuint64 -> IO GLenum)
ptr_glClientWaitSync = unsafePerformIO $ getCommand "glClientWaitSync"

-- glClientWaitSyncAPPLE -------------------------------------------------------

glClientWaitSyncAPPLE
  :: GLsync -- ^ @sync@.
  -> GLbitfield -- ^ @flags@.
  -> GLuint64 -- ^ @timeout@.
  -> IO GLenum
glClientWaitSyncAPPLE = dyn_glClientWaitSyncAPPLE ptr_glClientWaitSyncAPPLE

foreign import CALLCONV "dynamic" dyn_glClientWaitSyncAPPLE
  :: FunPtr (GLsync -> GLbitfield -> GLuint64 -> IO GLenum)
  ->         GLsync -> GLbitfield -> GLuint64 -> IO GLenum

{-# NOINLINE ptr_glClientWaitSyncAPPLE #-}
ptr_glClientWaitSyncAPPLE :: FunPtr (GLsync -> GLbitfield -> GLuint64 -> IO GLenum)
ptr_glClientWaitSyncAPPLE = unsafePerformIO $ getCommand "glClientWaitSyncAPPLE"

-- glClipControl ---------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glClipControl.xhtml OpenGL 4.x>
glClipControl
  :: GLenum -- ^ @origin@.
  -> GLenum -- ^ @depth@.
  -> IO ()
glClipControl = dyn_glClipControl ptr_glClipControl

foreign import CALLCONV "dynamic" dyn_glClipControl
  :: FunPtr (GLenum -> GLenum -> IO ())
  ->         GLenum -> GLenum -> IO ()

{-# NOINLINE ptr_glClipControl #-}
ptr_glClipControl :: FunPtr (GLenum -> GLenum -> IO ())
ptr_glClipControl = unsafePerformIO $ getCommand "glClipControl"

-- glClipPlane -----------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glClipPlane.xml OpenGL 2.x>
glClipPlane
  :: GLenum -- ^ @plane@ of type @ClipPlaneName@.
  -> Ptr GLdouble -- ^ @equation@ pointing to @4@ elements of type @GLdouble@.
  -> IO ()
glClipPlane = dyn_glClipPlane ptr_glClipPlane

foreign import CALLCONV "dynamic" dyn_glClipPlane
  :: FunPtr (GLenum -> Ptr GLdouble -> IO ())
  ->         GLenum -> Ptr GLdouble -> IO ()

{-# NOINLINE ptr_glClipPlane #-}
ptr_glClipPlane :: FunPtr (GLenum -> Ptr GLdouble -> IO ())
ptr_glClipPlane = unsafePerformIO $ getCommand "glClipPlane"

-- glClipPlanef ----------------------------------------------------------------

glClipPlanef
  :: GLenum -- ^ @p@.
  -> Ptr GLfloat -- ^ @eqn@ pointing to @4@ elements of type @GLfloat@.
  -> IO ()
glClipPlanef = dyn_glClipPlanef ptr_glClipPlanef

foreign import CALLCONV "dynamic" dyn_glClipPlanef
  :: FunPtr (GLenum -> Ptr GLfloat -> IO ())
  ->         GLenum -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glClipPlanef #-}
ptr_glClipPlanef :: FunPtr (GLenum -> Ptr GLfloat -> IO ())
ptr_glClipPlanef = unsafePerformIO $ getCommand "glClipPlanef"

-- glClipPlanefIMG -------------------------------------------------------------

glClipPlanefIMG
  :: GLenum -- ^ @p@.
  -> Ptr GLfloat -- ^ @eqn@ pointing to @4@ elements of type @GLfloat@.
  -> IO ()
glClipPlanefIMG = dyn_glClipPlanefIMG ptr_glClipPlanefIMG

foreign import CALLCONV "dynamic" dyn_glClipPlanefIMG
  :: FunPtr (GLenum -> Ptr GLfloat -> IO ())
  ->         GLenum -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glClipPlanefIMG #-}
ptr_glClipPlanefIMG :: FunPtr (GLenum -> Ptr GLfloat -> IO ())
ptr_glClipPlanefIMG = unsafePerformIO $ getCommand "glClipPlanefIMG"

-- glClipPlanefOES -------------------------------------------------------------

glClipPlanefOES
  :: GLenum -- ^ @plane@.
  -> Ptr GLfloat -- ^ @equation@ pointing to @4@ elements of type @GLfloat@.
  -> IO ()
glClipPlanefOES = dyn_glClipPlanefOES ptr_glClipPlanefOES

foreign import CALLCONV "dynamic" dyn_glClipPlanefOES
  :: FunPtr (GLenum -> Ptr GLfloat -> IO ())
  ->         GLenum -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glClipPlanefOES #-}
ptr_glClipPlanefOES :: FunPtr (GLenum -> Ptr GLfloat -> IO ())
ptr_glClipPlanefOES = unsafePerformIO $ getCommand "glClipPlanefOES"

-- glClipPlanex ----------------------------------------------------------------

glClipPlanex
  :: GLenum -- ^ @plane@.
  -> Ptr GLfixed -- ^ @equation@ pointing to @4@ elements of type @GLfixed@.
  -> IO ()
glClipPlanex = dyn_glClipPlanex ptr_glClipPlanex

foreign import CALLCONV "dynamic" dyn_glClipPlanex
  :: FunPtr (GLenum -> Ptr GLfixed -> IO ())
  ->         GLenum -> Ptr GLfixed -> IO ()

{-# NOINLINE ptr_glClipPlanex #-}
ptr_glClipPlanex :: FunPtr (GLenum -> Ptr GLfixed -> IO ())
ptr_glClipPlanex = unsafePerformIO $ getCommand "glClipPlanex"

-- glClipPlanexIMG -------------------------------------------------------------

glClipPlanexIMG
  :: GLenum -- ^ @p@.
  -> Ptr GLfixed -- ^ @eqn@ pointing to @4@ elements of type @GLfixed@.
  -> IO ()
glClipPlanexIMG = dyn_glClipPlanexIMG ptr_glClipPlanexIMG

foreign import CALLCONV "dynamic" dyn_glClipPlanexIMG
  :: FunPtr (GLenum -> Ptr GLfixed -> IO ())
  ->         GLenum -> Ptr GLfixed -> IO ()

{-# NOINLINE ptr_glClipPlanexIMG #-}
ptr_glClipPlanexIMG :: FunPtr (GLenum -> Ptr GLfixed -> IO ())
ptr_glClipPlanexIMG = unsafePerformIO $ getCommand "glClipPlanexIMG"

-- glClipPlanexOES -------------------------------------------------------------

glClipPlanexOES
  :: GLenum -- ^ @plane@.
  -> Ptr GLfixed -- ^ @equation@ pointing to @4@ elements of type @GLfixed@.
  -> IO ()
glClipPlanexOES = dyn_glClipPlanexOES ptr_glClipPlanexOES

foreign import CALLCONV "dynamic" dyn_glClipPlanexOES
  :: FunPtr (GLenum -> Ptr GLfixed -> IO ())
  ->         GLenum -> Ptr GLfixed -> IO ()

{-# NOINLINE ptr_glClipPlanexOES #-}
ptr_glClipPlanexOES :: FunPtr (GLenum -> Ptr GLfixed -> IO ())
ptr_glClipPlanexOES = unsafePerformIO $ getCommand "glClipPlanexOES"

-- glColor3b -------------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glColor.xml OpenGL 2.x>
glColor3b
  :: GLbyte -- ^ @red@ of type @ColorB@.
  -> GLbyte -- ^ @green@ of type @ColorB@.
  -> GLbyte -- ^ @blue@ of type @ColorB@.
  -> IO ()
glColor3b = dyn_glColor3b ptr_glColor3b

foreign import CALLCONV "dynamic" dyn_glColor3b
  :: FunPtr (GLbyte -> GLbyte -> GLbyte -> IO ())
  ->         GLbyte -> GLbyte -> GLbyte -> IO ()

{-# NOINLINE ptr_glColor3b #-}
ptr_glColor3b :: FunPtr (GLbyte -> GLbyte -> GLbyte -> IO ())
ptr_glColor3b = unsafePerformIO $ getCommand "glColor3b"

-- glColor3bv ------------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glColor.xml OpenGL 2.x>
glColor3bv
  :: Ptr GLbyte -- ^ @v@ pointing to @3@ elements of type @ColorB@.
  -> IO ()
glColor3bv = dyn_glColor3bv ptr_glColor3bv

foreign import CALLCONV "dynamic" dyn_glColor3bv
  :: FunPtr (Ptr GLbyte -> IO ())
  ->         Ptr GLbyte -> IO ()

{-# NOINLINE ptr_glColor3bv #-}
ptr_glColor3bv :: FunPtr (Ptr GLbyte -> IO ())
ptr_glColor3bv = unsafePerformIO $ getCommand "glColor3bv"

-- glColor3d -------------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glColor.xml OpenGL 2.x>
glColor3d
  :: GLdouble -- ^ @red@ of type @ColorD@.
  -> GLdouble -- ^ @green@ of type @ColorD@.
  -> GLdouble -- ^ @blue@ of type @ColorD@.
  -> IO ()
glColor3d = dyn_glColor3d ptr_glColor3d

foreign import CALLCONV "dynamic" dyn_glColor3d
  :: FunPtr (GLdouble -> GLdouble -> GLdouble -> IO ())
  ->         GLdouble -> GLdouble -> GLdouble -> IO ()

{-# NOINLINE ptr_glColor3d #-}
ptr_glColor3d :: FunPtr (GLdouble -> GLdouble -> GLdouble -> IO ())
ptr_glColor3d = unsafePerformIO $ getCommand "glColor3d"

-- glColor3dv ------------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glColor.xml OpenGL 2.x>
glColor3dv
  :: Ptr GLdouble -- ^ @v@ pointing to @3@ elements of type @ColorD@.
  -> IO ()
glColor3dv = dyn_glColor3dv ptr_glColor3dv

foreign import CALLCONV "dynamic" dyn_glColor3dv
  :: FunPtr (Ptr GLdouble -> IO ())
  ->         Ptr GLdouble -> IO ()

{-# NOINLINE ptr_glColor3dv #-}
ptr_glColor3dv :: FunPtr (Ptr GLdouble -> IO ())
ptr_glColor3dv = unsafePerformIO $ getCommand "glColor3dv"

-- glColor3f -------------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glColor.xml OpenGL 2.x>
glColor3f
  :: GLfloat -- ^ @red@ of type @ColorF@.
  -> GLfloat -- ^ @green@ of type @ColorF@.
  -> GLfloat -- ^ @blue@ of type @ColorF@.
  -> IO ()
glColor3f = dyn_glColor3f ptr_glColor3f

foreign import CALLCONV "dynamic" dyn_glColor3f
  :: FunPtr (GLfloat -> GLfloat -> GLfloat -> IO ())
  ->         GLfloat -> GLfloat -> GLfloat -> IO ()

{-# NOINLINE ptr_glColor3f #-}
ptr_glColor3f :: FunPtr (GLfloat -> GLfloat -> GLfloat -> IO ())
ptr_glColor3f = unsafePerformIO $ getCommand "glColor3f"

-- glColor3fVertex3fSUN --------------------------------------------------------

glColor3fVertex3fSUN
  :: GLfloat -- ^ @r@.
  -> GLfloat -- ^ @g@.
  -> GLfloat -- ^ @b@.
  -> GLfloat -- ^ @x@.
  -> GLfloat -- ^ @y@.
  -> GLfloat -- ^ @z@.
  -> IO ()
glColor3fVertex3fSUN = dyn_glColor3fVertex3fSUN ptr_glColor3fVertex3fSUN

foreign import CALLCONV "dynamic" dyn_glColor3fVertex3fSUN
  :: FunPtr (GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
  ->         GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ()

{-# NOINLINE ptr_glColor3fVertex3fSUN #-}
ptr_glColor3fVertex3fSUN :: FunPtr (GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
ptr_glColor3fVertex3fSUN = unsafePerformIO $ getCommand "glColor3fVertex3fSUN"

-- glColor3fVertex3fvSUN -------------------------------------------------------

glColor3fVertex3fvSUN
  :: Ptr GLfloat -- ^ @c@ pointing to @3@ elements of type @GLfloat@.
  -> Ptr GLfloat -- ^ @v@ pointing to @3@ elements of type @GLfloat@.
  -> IO ()
glColor3fVertex3fvSUN = dyn_glColor3fVertex3fvSUN ptr_glColor3fVertex3fvSUN

foreign import CALLCONV "dynamic" dyn_glColor3fVertex3fvSUN
  :: FunPtr (Ptr GLfloat -> Ptr GLfloat -> IO ())
  ->         Ptr GLfloat -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glColor3fVertex3fvSUN #-}
ptr_glColor3fVertex3fvSUN :: FunPtr (Ptr GLfloat -> Ptr GLfloat -> IO ())
ptr_glColor3fVertex3fvSUN = unsafePerformIO $ getCommand "glColor3fVertex3fvSUN"

-- glColor3fv ------------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glColor.xml OpenGL 2.x>
glColor3fv
  :: Ptr GLfloat -- ^ @v@ pointing to @3@ elements of type @ColorF@.
  -> IO ()
glColor3fv = dyn_glColor3fv ptr_glColor3fv

foreign import CALLCONV "dynamic" dyn_glColor3fv
  :: FunPtr (Ptr GLfloat -> IO ())
  ->         Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glColor3fv #-}
ptr_glColor3fv :: FunPtr (Ptr GLfloat -> IO ())
ptr_glColor3fv = unsafePerformIO $ getCommand "glColor3fv"

-- glColor3hNV -----------------------------------------------------------------

glColor3hNV
  :: GLhalfNV -- ^ @red@ of type @Half16NV@.
  -> GLhalfNV -- ^ @green@ of type @Half16NV@.
  -> GLhalfNV -- ^ @blue@ of type @Half16NV@.
  -> IO ()
glColor3hNV = dyn_glColor3hNV ptr_glColor3hNV

foreign import CALLCONV "dynamic" dyn_glColor3hNV
  :: FunPtr (GLhalfNV -> GLhalfNV -> GLhalfNV -> IO ())
  ->         GLhalfNV -> GLhalfNV -> GLhalfNV -> IO ()

{-# NOINLINE ptr_glColor3hNV #-}
ptr_glColor3hNV :: FunPtr (GLhalfNV -> GLhalfNV -> GLhalfNV -> IO ())
ptr_glColor3hNV = unsafePerformIO $ getCommand "glColor3hNV"

-- glColor3hvNV ----------------------------------------------------------------

glColor3hvNV
  :: Ptr GLhalfNV -- ^ @v@ pointing to @3@ elements of type @Half16NV@.
  -> IO ()
glColor3hvNV = dyn_glColor3hvNV ptr_glColor3hvNV

foreign import CALLCONV "dynamic" dyn_glColor3hvNV
  :: FunPtr (Ptr GLhalfNV -> IO ())
  ->         Ptr GLhalfNV -> IO ()

{-# NOINLINE ptr_glColor3hvNV #-}
ptr_glColor3hvNV :: FunPtr (Ptr GLhalfNV -> IO ())
ptr_glColor3hvNV = unsafePerformIO $ getCommand "glColor3hvNV"

-- glColor3i -------------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glColor.xml OpenGL 2.x>
glColor3i
  :: GLint -- ^ @red@ of type @ColorI@.
  -> GLint -- ^ @green@ of type @ColorI@.
  -> GLint -- ^ @blue@ of type @ColorI@.
  -> IO ()
glColor3i = dyn_glColor3i ptr_glColor3i

foreign import CALLCONV "dynamic" dyn_glColor3i
  :: FunPtr (GLint -> GLint -> GLint -> IO ())
  ->         GLint -> GLint -> GLint -> IO ()

{-# NOINLINE ptr_glColor3i #-}
ptr_glColor3i :: FunPtr (GLint -> GLint -> GLint -> IO ())
ptr_glColor3i = unsafePerformIO $ getCommand "glColor3i"

-- glColor3iv ------------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glColor.xml OpenGL 2.x>
glColor3iv
  :: Ptr GLint -- ^ @v@ pointing to @3@ elements of type @ColorI@.
  -> IO ()
glColor3iv = dyn_glColor3iv ptr_glColor3iv

foreign import CALLCONV "dynamic" dyn_glColor3iv
  :: FunPtr (Ptr GLint -> IO ())
  ->         Ptr GLint -> IO ()

{-# NOINLINE ptr_glColor3iv #-}
ptr_glColor3iv :: FunPtr (Ptr GLint -> IO ())
ptr_glColor3iv = unsafePerformIO $ getCommand "glColor3iv"

-- glColor3s -------------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glColor.xml OpenGL 2.x>
glColor3s
  :: GLshort -- ^ @red@ of type @ColorS@.
  -> GLshort -- ^ @green@ of type @ColorS@.
  -> GLshort -- ^ @blue@ of type @ColorS@.
  -> IO ()
glColor3s = dyn_glColor3s ptr_glColor3s

foreign import CALLCONV "dynamic" dyn_glColor3s
  :: FunPtr (GLshort -> GLshort -> GLshort -> IO ())
  ->         GLshort -> GLshort -> GLshort -> IO ()

{-# NOINLINE ptr_glColor3s #-}
ptr_glColor3s :: FunPtr (GLshort -> GLshort -> GLshort -> IO ())
ptr_glColor3s = unsafePerformIO $ getCommand "glColor3s"

-- glColor3sv ------------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glColor.xml OpenGL 2.x>
glColor3sv
  :: Ptr GLshort -- ^ @v@ pointing to @3@ elements of type @ColorS@.
  -> IO ()
glColor3sv = dyn_glColor3sv ptr_glColor3sv

foreign import CALLCONV "dynamic" dyn_glColor3sv
  :: FunPtr (Ptr GLshort -> IO ())
  ->         Ptr GLshort -> IO ()

{-# NOINLINE ptr_glColor3sv #-}
ptr_glColor3sv :: FunPtr (Ptr GLshort -> IO ())
ptr_glColor3sv = unsafePerformIO $ getCommand "glColor3sv"

-- glColor3ub ------------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glColor.xml OpenGL 2.x>
glColor3ub
  :: GLubyte -- ^ @red@ of type @ColorUB@.
  -> GLubyte -- ^ @green@ of type @ColorUB@.
  -> GLubyte -- ^ @blue@ of type @ColorUB@.
  -> IO ()
glColor3ub = dyn_glColor3ub ptr_glColor3ub

foreign import CALLCONV "dynamic" dyn_glColor3ub
  :: FunPtr (GLubyte -> GLubyte -> GLubyte -> IO ())
  ->         GLubyte -> GLubyte -> GLubyte -> IO ()

{-# NOINLINE ptr_glColor3ub #-}
ptr_glColor3ub :: FunPtr (GLubyte -> GLubyte -> GLubyte -> IO ())
ptr_glColor3ub = unsafePerformIO $ getCommand "glColor3ub"

-- glColor3ubv -----------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glColor.xml OpenGL 2.x>
glColor3ubv
  :: Ptr GLubyte -- ^ @v@ pointing to @3@ elements of type @ColorUB@.
  -> IO ()
glColor3ubv = dyn_glColor3ubv ptr_glColor3ubv

foreign import CALLCONV "dynamic" dyn_glColor3ubv
  :: FunPtr (Ptr GLubyte -> IO ())
  ->         Ptr GLubyte -> IO ()

{-# NOINLINE ptr_glColor3ubv #-}
ptr_glColor3ubv :: FunPtr (Ptr GLubyte -> IO ())
ptr_glColor3ubv = unsafePerformIO $ getCommand "glColor3ubv"

-- glColor3ui ------------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glColor.xml OpenGL 2.x>
glColor3ui
  :: GLuint -- ^ @red@ of type @ColorUI@.
  -> GLuint -- ^ @green@ of type @ColorUI@.
  -> GLuint -- ^ @blue@ of type @ColorUI@.
  -> IO ()
glColor3ui = dyn_glColor3ui ptr_glColor3ui

foreign import CALLCONV "dynamic" dyn_glColor3ui
  :: FunPtr (GLuint -> GLuint -> GLuint -> IO ())
  ->         GLuint -> GLuint -> GLuint -> IO ()

{-# NOINLINE ptr_glColor3ui #-}
ptr_glColor3ui :: FunPtr (GLuint -> GLuint -> GLuint -> IO ())
ptr_glColor3ui = unsafePerformIO $ getCommand "glColor3ui"

-- glColor3uiv -----------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glColor.xml OpenGL 2.x>
glColor3uiv
  :: Ptr GLuint -- ^ @v@ pointing to @3@ elements of type @ColorUI@.
  -> IO ()
glColor3uiv = dyn_glColor3uiv ptr_glColor3uiv

foreign import CALLCONV "dynamic" dyn_glColor3uiv
  :: FunPtr (Ptr GLuint -> IO ())
  ->         Ptr GLuint -> IO ()

{-# NOINLINE ptr_glColor3uiv #-}
ptr_glColor3uiv :: FunPtr (Ptr GLuint -> IO ())
ptr_glColor3uiv = unsafePerformIO $ getCommand "glColor3uiv"

-- glColor3us ------------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glColor.xml OpenGL 2.x>
glColor3us
  :: GLushort -- ^ @red@ of type @ColorUS@.
  -> GLushort -- ^ @green@ of type @ColorUS@.
  -> GLushort -- ^ @blue@ of type @ColorUS@.
  -> IO ()
glColor3us = dyn_glColor3us ptr_glColor3us

foreign import CALLCONV "dynamic" dyn_glColor3us
  :: FunPtr (GLushort -> GLushort -> GLushort -> IO ())
  ->         GLushort -> GLushort -> GLushort -> IO ()

{-# NOINLINE ptr_glColor3us #-}
ptr_glColor3us :: FunPtr (GLushort -> GLushort -> GLushort -> IO ())
ptr_glColor3us = unsafePerformIO $ getCommand "glColor3us"

-- glColor3usv -----------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glColor.xml OpenGL 2.x>
glColor3usv
  :: Ptr GLushort -- ^ @v@ pointing to @3@ elements of type @ColorUS@.
  -> IO ()
glColor3usv = dyn_glColor3usv ptr_glColor3usv

foreign import CALLCONV "dynamic" dyn_glColor3usv
  :: FunPtr (Ptr GLushort -> IO ())
  ->         Ptr GLushort -> IO ()

{-# NOINLINE ptr_glColor3usv #-}
ptr_glColor3usv :: FunPtr (Ptr GLushort -> IO ())
ptr_glColor3usv = unsafePerformIO $ getCommand "glColor3usv"

-- glColor3xOES ----------------------------------------------------------------

glColor3xOES
  :: GLfixed -- ^ @red@.
  -> GLfixed -- ^ @green@.
  -> GLfixed -- ^ @blue@.
  -> IO ()
glColor3xOES = dyn_glColor3xOES ptr_glColor3xOES

foreign import CALLCONV "dynamic" dyn_glColor3xOES
  :: FunPtr (GLfixed -> GLfixed -> GLfixed -> IO ())
  ->         GLfixed -> GLfixed -> GLfixed -> IO ()

{-# NOINLINE ptr_glColor3xOES #-}
ptr_glColor3xOES :: FunPtr (GLfixed -> GLfixed -> GLfixed -> IO ())
ptr_glColor3xOES = unsafePerformIO $ getCommand "glColor3xOES"

-- glColor3xvOES ---------------------------------------------------------------

glColor3xvOES
  :: Ptr GLfixed -- ^ @components@ pointing to @3@ elements of type @GLfixed@.
  -> IO ()
glColor3xvOES = dyn_glColor3xvOES ptr_glColor3xvOES

foreign import CALLCONV "dynamic" dyn_glColor3xvOES
  :: FunPtr (Ptr GLfixed -> IO ())
  ->         Ptr GLfixed -> IO ()

{-# NOINLINE ptr_glColor3xvOES #-}
ptr_glColor3xvOES :: FunPtr (Ptr GLfixed -> IO ())
ptr_glColor3xvOES = unsafePerformIO $ getCommand "glColor3xvOES"

-- glColor4b -------------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glColor.xml OpenGL 2.x>
glColor4b
  :: GLbyte -- ^ @red@ of type @ColorB@.
  -> GLbyte -- ^ @green@ of type @ColorB@.
  -> GLbyte -- ^ @blue@ of type @ColorB@.
  -> GLbyte -- ^ @alpha@ of type @ColorB@.
  -> IO ()
glColor4b = dyn_glColor4b ptr_glColor4b

foreign import CALLCONV "dynamic" dyn_glColor4b
  :: FunPtr (GLbyte -> GLbyte -> GLbyte -> GLbyte -> IO ())
  ->         GLbyte -> GLbyte -> GLbyte -> GLbyte -> IO ()

{-# NOINLINE ptr_glColor4b #-}
ptr_glColor4b :: FunPtr (GLbyte -> GLbyte -> GLbyte -> GLbyte -> IO ())
ptr_glColor4b = unsafePerformIO $ getCommand "glColor4b"

-- glColor4bv ------------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glColor.xml OpenGL 2.x>
glColor4bv
  :: Ptr GLbyte -- ^ @v@ pointing to @4@ elements of type @ColorB@.
  -> IO ()
glColor4bv = dyn_glColor4bv ptr_glColor4bv

foreign import CALLCONV "dynamic" dyn_glColor4bv
  :: FunPtr (Ptr GLbyte -> IO ())
  ->         Ptr GLbyte -> IO ()

{-# NOINLINE ptr_glColor4bv #-}
ptr_glColor4bv :: FunPtr (Ptr GLbyte -> IO ())
ptr_glColor4bv = unsafePerformIO $ getCommand "glColor4bv"

-- glColor4d -------------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glColor.xml OpenGL 2.x>
glColor4d
  :: GLdouble -- ^ @red@ of type @ColorD@.
  -> GLdouble -- ^ @green@ of type @ColorD@.
  -> GLdouble -- ^ @blue@ of type @ColorD@.
  -> GLdouble -- ^ @alpha@ of type @ColorD@.
  -> IO ()
glColor4d = dyn_glColor4d ptr_glColor4d

foreign import CALLCONV "dynamic" dyn_glColor4d
  :: FunPtr (GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ())
  ->         GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ()

{-# NOINLINE ptr_glColor4d #-}
ptr_glColor4d :: FunPtr (GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ())
ptr_glColor4d = unsafePerformIO $ getCommand "glColor4d"

-- glColor4dv ------------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glColor.xml OpenGL 2.x>
glColor4dv
  :: Ptr GLdouble -- ^ @v@ pointing to @4@ elements of type @ColorD@.
  -> IO ()
glColor4dv = dyn_glColor4dv ptr_glColor4dv

foreign import CALLCONV "dynamic" dyn_glColor4dv
  :: FunPtr (Ptr GLdouble -> IO ())
  ->         Ptr GLdouble -> IO ()

{-# NOINLINE ptr_glColor4dv #-}
ptr_glColor4dv :: FunPtr (Ptr GLdouble -> IO ())
ptr_glColor4dv = unsafePerformIO $ getCommand "glColor4dv"

-- glColor4f -------------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glColor.xml OpenGL 2.x>
glColor4f
  :: GLfloat -- ^ @red@ of type @ColorF@.
  -> GLfloat -- ^ @green@ of type @ColorF@.
  -> GLfloat -- ^ @blue@ of type @ColorF@.
  -> GLfloat -- ^ @alpha@ of type @ColorF@.
  -> IO ()
glColor4f = dyn_glColor4f ptr_glColor4f

foreign import CALLCONV "dynamic" dyn_glColor4f
  :: FunPtr (GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
  ->         GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ()

{-# NOINLINE ptr_glColor4f #-}
ptr_glColor4f :: FunPtr (GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
ptr_glColor4f = unsafePerformIO $ getCommand "glColor4f"

-- glColor4fNormal3fVertex3fSUN ------------------------------------------------

glColor4fNormal3fVertex3fSUN
  :: GLfloat -- ^ @r@.
  -> GLfloat -- ^ @g@.
  -> GLfloat -- ^ @b@.
  -> GLfloat -- ^ @a@.
  -> GLfloat -- ^ @nx@.
  -> GLfloat -- ^ @ny@.
  -> GLfloat -- ^ @nz@.
  -> GLfloat -- ^ @x@.
  -> GLfloat -- ^ @y@.
  -> GLfloat -- ^ @z@.
  -> IO ()
glColor4fNormal3fVertex3fSUN = dyn_glColor4fNormal3fVertex3fSUN ptr_glColor4fNormal3fVertex3fSUN

foreign import CALLCONV "dynamic" dyn_glColor4fNormal3fVertex3fSUN
  :: FunPtr (GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
  ->         GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ()

{-# NOINLINE ptr_glColor4fNormal3fVertex3fSUN #-}
ptr_glColor4fNormal3fVertex3fSUN :: FunPtr (GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
ptr_glColor4fNormal3fVertex3fSUN = unsafePerformIO $ getCommand "glColor4fNormal3fVertex3fSUN"

-- glColor4fNormal3fVertex3fvSUN -----------------------------------------------

glColor4fNormal3fVertex3fvSUN
  :: Ptr GLfloat -- ^ @c@ pointing to @4@ elements of type @GLfloat@.
  -> Ptr GLfloat -- ^ @n@ pointing to @3@ elements of type @GLfloat@.
  -> Ptr GLfloat -- ^ @v@ pointing to @3@ elements of type @GLfloat@.
  -> IO ()
glColor4fNormal3fVertex3fvSUN = dyn_glColor4fNormal3fVertex3fvSUN ptr_glColor4fNormal3fVertex3fvSUN

foreign import CALLCONV "dynamic" dyn_glColor4fNormal3fVertex3fvSUN
  :: FunPtr (Ptr GLfloat -> Ptr GLfloat -> Ptr GLfloat -> IO ())
  ->         Ptr GLfloat -> Ptr GLfloat -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glColor4fNormal3fVertex3fvSUN #-}
ptr_glColor4fNormal3fVertex3fvSUN :: FunPtr (Ptr GLfloat -> Ptr GLfloat -> Ptr GLfloat -> IO ())
ptr_glColor4fNormal3fVertex3fvSUN = unsafePerformIO $ getCommand "glColor4fNormal3fVertex3fvSUN"

-- glColor4fv ------------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glColor.xml OpenGL 2.x>
glColor4fv
  :: Ptr GLfloat -- ^ @v@ pointing to @4@ elements of type @ColorF@.
  -> IO ()
glColor4fv = dyn_glColor4fv ptr_glColor4fv

foreign import CALLCONV "dynamic" dyn_glColor4fv
  :: FunPtr (Ptr GLfloat -> IO ())
  ->         Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glColor4fv #-}
ptr_glColor4fv :: FunPtr (Ptr GLfloat -> IO ())
ptr_glColor4fv = unsafePerformIO $ getCommand "glColor4fv"

-- glColor4hNV -----------------------------------------------------------------

glColor4hNV
  :: GLhalfNV -- ^ @red@ of type @Half16NV@.
  -> GLhalfNV -- ^ @green@ of type @Half16NV@.
  -> GLhalfNV -- ^ @blue@ of type @Half16NV@.
  -> GLhalfNV -- ^ @alpha@ of type @Half16NV@.
  -> IO ()
glColor4hNV = dyn_glColor4hNV ptr_glColor4hNV

foreign import CALLCONV "dynamic" dyn_glColor4hNV
  :: FunPtr (GLhalfNV -> GLhalfNV -> GLhalfNV -> GLhalfNV -> IO ())
  ->         GLhalfNV -> GLhalfNV -> GLhalfNV -> GLhalfNV -> IO ()

{-# NOINLINE ptr_glColor4hNV #-}
ptr_glColor4hNV :: FunPtr (GLhalfNV -> GLhalfNV -> GLhalfNV -> GLhalfNV -> IO ())
ptr_glColor4hNV = unsafePerformIO $ getCommand "glColor4hNV"

-- glColor4hvNV ----------------------------------------------------------------

glColor4hvNV
  :: Ptr GLhalfNV -- ^ @v@ pointing to @4@ elements of type @Half16NV@.
  -> IO ()
glColor4hvNV = dyn_glColor4hvNV ptr_glColor4hvNV

foreign import CALLCONV "dynamic" dyn_glColor4hvNV
  :: FunPtr (Ptr GLhalfNV -> IO ())
  ->         Ptr GLhalfNV -> IO ()

{-# NOINLINE ptr_glColor4hvNV #-}
ptr_glColor4hvNV :: FunPtr (Ptr GLhalfNV -> IO ())
ptr_glColor4hvNV = unsafePerformIO $ getCommand "glColor4hvNV"

-- glColor4i -------------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glColor.xml OpenGL 2.x>
glColor4i
  :: GLint -- ^ @red@ of type @ColorI@.
  -> GLint -- ^ @green@ of type @ColorI@.
  -> GLint -- ^ @blue@ of type @ColorI@.
  -> GLint -- ^ @alpha@ of type @ColorI@.
  -> IO ()
glColor4i = dyn_glColor4i ptr_glColor4i

foreign import CALLCONV "dynamic" dyn_glColor4i
  :: FunPtr (GLint -> GLint -> GLint -> GLint -> IO ())
  ->         GLint -> GLint -> GLint -> GLint -> IO ()

{-# NOINLINE ptr_glColor4i #-}
ptr_glColor4i :: FunPtr (GLint -> GLint -> GLint -> GLint -> IO ())
ptr_glColor4i = unsafePerformIO $ getCommand "glColor4i"

-- glColor4iv ------------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glColor.xml OpenGL 2.x>
glColor4iv
  :: Ptr GLint -- ^ @v@ pointing to @4@ elements of type @ColorI@.
  -> IO ()
glColor4iv = dyn_glColor4iv ptr_glColor4iv

foreign import CALLCONV "dynamic" dyn_glColor4iv
  :: FunPtr (Ptr GLint -> IO ())
  ->         Ptr GLint -> IO ()

{-# NOINLINE ptr_glColor4iv #-}
ptr_glColor4iv :: FunPtr (Ptr GLint -> IO ())
ptr_glColor4iv = unsafePerformIO $ getCommand "glColor4iv"

-- glColor4s -------------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glColor.xml OpenGL 2.x>
glColor4s
  :: GLshort -- ^ @red@ of type @ColorS@.
  -> GLshort -- ^ @green@ of type @ColorS@.
  -> GLshort -- ^ @blue@ of type @ColorS@.
  -> GLshort -- ^ @alpha@ of type @ColorS@.
  -> IO ()
glColor4s = dyn_glColor4s ptr_glColor4s

foreign import CALLCONV "dynamic" dyn_glColor4s
  :: FunPtr (GLshort -> GLshort -> GLshort -> GLshort -> IO ())
  ->         GLshort -> GLshort -> GLshort -> GLshort -> IO ()

{-# NOINLINE ptr_glColor4s #-}
ptr_glColor4s :: FunPtr (GLshort -> GLshort -> GLshort -> GLshort -> IO ())
ptr_glColor4s = unsafePerformIO $ getCommand "glColor4s"

-- glColor4sv ------------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glColor.xml OpenGL 2.x>
glColor4sv
  :: Ptr GLshort -- ^ @v@ pointing to @4@ elements of type @ColorS@.
  -> IO ()
glColor4sv = dyn_glColor4sv ptr_glColor4sv

foreign import CALLCONV "dynamic" dyn_glColor4sv
  :: FunPtr (Ptr GLshort -> IO ())
  ->         Ptr GLshort -> IO ()

{-# NOINLINE ptr_glColor4sv #-}
ptr_glColor4sv :: FunPtr (Ptr GLshort -> IO ())
ptr_glColor4sv = unsafePerformIO $ getCommand "glColor4sv"

-- glColor4ub ------------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glColor.xml OpenGL 2.x>
glColor4ub
  :: GLubyte -- ^ @red@ of type @ColorUB@.
  -> GLubyte -- ^ @green@ of type @ColorUB@.
  -> GLubyte -- ^ @blue@ of type @ColorUB@.
  -> GLubyte -- ^ @alpha@ of type @ColorUB@.
  -> IO ()
glColor4ub = dyn_glColor4ub ptr_glColor4ub

foreign import CALLCONV "dynamic" dyn_glColor4ub
  :: FunPtr (GLubyte -> GLubyte -> GLubyte -> GLubyte -> IO ())
  ->         GLubyte -> GLubyte -> GLubyte -> GLubyte -> IO ()

{-# NOINLINE ptr_glColor4ub #-}
ptr_glColor4ub :: FunPtr (GLubyte -> GLubyte -> GLubyte -> GLubyte -> IO ())
ptr_glColor4ub = unsafePerformIO $ getCommand "glColor4ub"

-- glColor4ubVertex2fSUN -------------------------------------------------------

glColor4ubVertex2fSUN
  :: GLubyte -- ^ @r@.
  -> GLubyte -- ^ @g@.
  -> GLubyte -- ^ @b@.
  -> GLubyte -- ^ @a@.
  -> GLfloat -- ^ @x@.
  -> GLfloat -- ^ @y@.
  -> IO ()
glColor4ubVertex2fSUN = dyn_glColor4ubVertex2fSUN ptr_glColor4ubVertex2fSUN

foreign import CALLCONV "dynamic" dyn_glColor4ubVertex2fSUN
  :: FunPtr (GLubyte -> GLubyte -> GLubyte -> GLubyte -> GLfloat -> GLfloat -> IO ())
  ->         GLubyte -> GLubyte -> GLubyte -> GLubyte -> GLfloat -> GLfloat -> IO ()

{-# NOINLINE ptr_glColor4ubVertex2fSUN #-}
ptr_glColor4ubVertex2fSUN :: FunPtr (GLubyte -> GLubyte -> GLubyte -> GLubyte -> GLfloat -> GLfloat -> IO ())
ptr_glColor4ubVertex2fSUN = unsafePerformIO $ getCommand "glColor4ubVertex2fSUN"

-- glColor4ubVertex2fvSUN ------------------------------------------------------

glColor4ubVertex2fvSUN
  :: Ptr GLubyte -- ^ @c@ pointing to @4@ elements of type @GLubyte@.
  -> Ptr GLfloat -- ^ @v@ pointing to @2@ elements of type @GLfloat@.
  -> IO ()
glColor4ubVertex2fvSUN = dyn_glColor4ubVertex2fvSUN ptr_glColor4ubVertex2fvSUN

foreign import CALLCONV "dynamic" dyn_glColor4ubVertex2fvSUN
  :: FunPtr (Ptr GLubyte -> Ptr GLfloat -> IO ())
  ->         Ptr GLubyte -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glColor4ubVertex2fvSUN #-}
ptr_glColor4ubVertex2fvSUN :: FunPtr (Ptr GLubyte -> Ptr GLfloat -> IO ())
ptr_glColor4ubVertex2fvSUN = unsafePerformIO $ getCommand "glColor4ubVertex2fvSUN"

-- glColor4ubVertex3fSUN -------------------------------------------------------

glColor4ubVertex3fSUN
  :: GLubyte -- ^ @r@.
  -> GLubyte -- ^ @g@.
  -> GLubyte -- ^ @b@.
  -> GLubyte -- ^ @a@.
  -> GLfloat -- ^ @x@.
  -> GLfloat -- ^ @y@.
  -> GLfloat -- ^ @z@.
  -> IO ()
glColor4ubVertex3fSUN = dyn_glColor4ubVertex3fSUN ptr_glColor4ubVertex3fSUN

foreign import CALLCONV "dynamic" dyn_glColor4ubVertex3fSUN
  :: FunPtr (GLubyte -> GLubyte -> GLubyte -> GLubyte -> GLfloat -> GLfloat -> GLfloat -> IO ())
  ->         GLubyte -> GLubyte -> GLubyte -> GLubyte -> GLfloat -> GLfloat -> GLfloat -> IO ()

{-# NOINLINE ptr_glColor4ubVertex3fSUN #-}
ptr_glColor4ubVertex3fSUN :: FunPtr (GLubyte -> GLubyte -> GLubyte -> GLubyte -> GLfloat -> GLfloat -> GLfloat -> IO ())
ptr_glColor4ubVertex3fSUN = unsafePerformIO $ getCommand "glColor4ubVertex3fSUN"

-- glColor4ubVertex3fvSUN ------------------------------------------------------

glColor4ubVertex3fvSUN
  :: Ptr GLubyte -- ^ @c@ pointing to @4@ elements of type @GLubyte@.
  -> Ptr GLfloat -- ^ @v@ pointing to @3@ elements of type @GLfloat@.
  -> IO ()
glColor4ubVertex3fvSUN = dyn_glColor4ubVertex3fvSUN ptr_glColor4ubVertex3fvSUN

foreign import CALLCONV "dynamic" dyn_glColor4ubVertex3fvSUN
  :: FunPtr (Ptr GLubyte -> Ptr GLfloat -> IO ())
  ->         Ptr GLubyte -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glColor4ubVertex3fvSUN #-}
ptr_glColor4ubVertex3fvSUN :: FunPtr (Ptr GLubyte -> Ptr GLfloat -> IO ())
ptr_glColor4ubVertex3fvSUN = unsafePerformIO $ getCommand "glColor4ubVertex3fvSUN"

-- glColor4ubv -----------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glColor.xml OpenGL 2.x>
glColor4ubv
  :: Ptr GLubyte -- ^ @v@ pointing to @4@ elements of type @ColorUB@.
  -> IO ()
glColor4ubv = dyn_glColor4ubv ptr_glColor4ubv

foreign import CALLCONV "dynamic" dyn_glColor4ubv
  :: FunPtr (Ptr GLubyte -> IO ())
  ->         Ptr GLubyte -> IO ()

{-# NOINLINE ptr_glColor4ubv #-}
ptr_glColor4ubv :: FunPtr (Ptr GLubyte -> IO ())
ptr_glColor4ubv = unsafePerformIO $ getCommand "glColor4ubv"

-- glColor4ui ------------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glColor.xml OpenGL 2.x>
glColor4ui
  :: GLuint -- ^ @red@ of type @ColorUI@.
  -> GLuint -- ^ @green@ of type @ColorUI@.
  -> GLuint -- ^ @blue@ of type @ColorUI@.
  -> GLuint -- ^ @alpha@ of type @ColorUI@.
  -> IO ()
glColor4ui = dyn_glColor4ui ptr_glColor4ui

foreign import CALLCONV "dynamic" dyn_glColor4ui
  :: FunPtr (GLuint -> GLuint -> GLuint -> GLuint -> IO ())
  ->         GLuint -> GLuint -> GLuint -> GLuint -> IO ()

{-# NOINLINE ptr_glColor4ui #-}
ptr_glColor4ui :: FunPtr (GLuint -> GLuint -> GLuint -> GLuint -> IO ())
ptr_glColor4ui = unsafePerformIO $ getCommand "glColor4ui"

-- glColor4uiv -----------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glColor.xml OpenGL 2.x>
glColor4uiv
  :: Ptr GLuint -- ^ @v@ pointing to @4@ elements of type @ColorUI@.
  -> IO ()
glColor4uiv = dyn_glColor4uiv ptr_glColor4uiv

foreign import CALLCONV "dynamic" dyn_glColor4uiv
  :: FunPtr (Ptr GLuint -> IO ())
  ->         Ptr GLuint -> IO ()

{-# NOINLINE ptr_glColor4uiv #-}
ptr_glColor4uiv :: FunPtr (Ptr GLuint -> IO ())
ptr_glColor4uiv = unsafePerformIO $ getCommand "glColor4uiv"

-- glColor4us ------------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glColor.xml OpenGL 2.x>
glColor4us
  :: GLushort -- ^ @red@ of type @ColorUS@.
  -> GLushort -- ^ @green@ of type @ColorUS@.
  -> GLushort -- ^ @blue@ of type @ColorUS@.
  -> GLushort -- ^ @alpha@ of type @ColorUS@.
  -> IO ()
glColor4us = dyn_glColor4us ptr_glColor4us

foreign import CALLCONV "dynamic" dyn_glColor4us
  :: FunPtr (GLushort -> GLushort -> GLushort -> GLushort -> IO ())
  ->         GLushort -> GLushort -> GLushort -> GLushort -> IO ()

{-# NOINLINE ptr_glColor4us #-}
ptr_glColor4us :: FunPtr (GLushort -> GLushort -> GLushort -> GLushort -> IO ())
ptr_glColor4us = unsafePerformIO $ getCommand "glColor4us"

-- glColor4usv -----------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glColor.xml OpenGL 2.x>
glColor4usv
  :: Ptr GLushort -- ^ @v@ pointing to @4@ elements of type @ColorUS@.
  -> IO ()
glColor4usv = dyn_glColor4usv ptr_glColor4usv

foreign import CALLCONV "dynamic" dyn_glColor4usv
  :: FunPtr (Ptr GLushort -> IO ())
  ->         Ptr GLushort -> IO ()

{-# NOINLINE ptr_glColor4usv #-}
ptr_glColor4usv :: FunPtr (Ptr GLushort -> IO ())
ptr_glColor4usv = unsafePerformIO $ getCommand "glColor4usv"

-- glColor4x -------------------------------------------------------------------

glColor4x
  :: GLfixed -- ^ @red@.
  -> GLfixed -- ^ @green@.
  -> GLfixed -- ^ @blue@.
  -> GLfixed -- ^ @alpha@.
  -> IO ()
glColor4x = dyn_glColor4x ptr_glColor4x

foreign import CALLCONV "dynamic" dyn_glColor4x
  :: FunPtr (GLfixed -> GLfixed -> GLfixed -> GLfixed -> IO ())
  ->         GLfixed -> GLfixed -> GLfixed -> GLfixed -> IO ()

{-# NOINLINE ptr_glColor4x #-}
ptr_glColor4x :: FunPtr (GLfixed -> GLfixed -> GLfixed -> GLfixed -> IO ())
ptr_glColor4x = unsafePerformIO $ getCommand "glColor4x"

-- glColor4xOES ----------------------------------------------------------------

glColor4xOES
  :: GLfixed -- ^ @red@.
  -> GLfixed -- ^ @green@.
  -> GLfixed -- ^ @blue@.
  -> GLfixed -- ^ @alpha@.
  -> IO ()
glColor4xOES = dyn_glColor4xOES ptr_glColor4xOES

foreign import CALLCONV "dynamic" dyn_glColor4xOES
  :: FunPtr (GLfixed -> GLfixed -> GLfixed -> GLfixed -> IO ())
  ->         GLfixed -> GLfixed -> GLfixed -> GLfixed -> IO ()

{-# NOINLINE ptr_glColor4xOES #-}
ptr_glColor4xOES :: FunPtr (GLfixed -> GLfixed -> GLfixed -> GLfixed -> IO ())
ptr_glColor4xOES = unsafePerformIO $ getCommand "glColor4xOES"

-- glColor4xvOES ---------------------------------------------------------------

glColor4xvOES
  :: Ptr GLfixed -- ^ @components@ pointing to @4@ elements of type @GLfixed@.
  -> IO ()
glColor4xvOES = dyn_glColor4xvOES ptr_glColor4xvOES

foreign import CALLCONV "dynamic" dyn_glColor4xvOES
  :: FunPtr (Ptr GLfixed -> IO ())
  ->         Ptr GLfixed -> IO ()

{-# NOINLINE ptr_glColor4xvOES #-}
ptr_glColor4xvOES :: FunPtr (Ptr GLfixed -> IO ())
ptr_glColor4xvOES = unsafePerformIO $ getCommand "glColor4xvOES"

-- glColorFormatNV -------------------------------------------------------------

glColorFormatNV
  :: GLint -- ^ @size@.
  -> GLenum -- ^ @type@.
  -> GLsizei -- ^ @stride@.
  -> IO ()
glColorFormatNV = dyn_glColorFormatNV ptr_glColorFormatNV

foreign import CALLCONV "dynamic" dyn_glColorFormatNV
  :: FunPtr (GLint -> GLenum -> GLsizei -> IO ())
  ->         GLint -> GLenum -> GLsizei -> IO ()

{-# NOINLINE ptr_glColorFormatNV #-}
ptr_glColorFormatNV :: FunPtr (GLint -> GLenum -> GLsizei -> IO ())
ptr_glColorFormatNV = unsafePerformIO $ getCommand "glColorFormatNV"

-- glColorFragmentOp1ATI -------------------------------------------------------

glColorFragmentOp1ATI
  :: GLenum -- ^ @op@ of type @FragmentOpATI@.
  -> GLuint -- ^ @dst@.
  -> GLuint -- ^ @dstMask@.
  -> GLuint -- ^ @dstMod@.
  -> GLuint -- ^ @arg1@.
  -> GLuint -- ^ @arg1Rep@.
  -> GLuint -- ^ @arg1Mod@.
  -> IO ()
glColorFragmentOp1ATI = dyn_glColorFragmentOp1ATI ptr_glColorFragmentOp1ATI

foreign import CALLCONV "dynamic" dyn_glColorFragmentOp1ATI
  :: FunPtr (GLenum -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> IO ())
  ->         GLenum -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> IO ()

{-# NOINLINE ptr_glColorFragmentOp1ATI #-}
ptr_glColorFragmentOp1ATI :: FunPtr (GLenum -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> IO ())
ptr_glColorFragmentOp1ATI = unsafePerformIO $ getCommand "glColorFragmentOp1ATI"

-- glColorFragmentOp2ATI -------------------------------------------------------

glColorFragmentOp2ATI
  :: GLenum -- ^ @op@ of type @FragmentOpATI@.
  -> GLuint -- ^ @dst@.
  -> GLuint -- ^ @dstMask@.
  -> GLuint -- ^ @dstMod@.
  -> GLuint -- ^ @arg1@.
  -> GLuint -- ^ @arg1Rep@.
  -> GLuint -- ^ @arg1Mod@.
  -> GLuint -- ^ @arg2@.
  -> GLuint -- ^ @arg2Rep@.
  -> GLuint -- ^ @arg2Mod@.
  -> IO ()
glColorFragmentOp2ATI = dyn_glColorFragmentOp2ATI ptr_glColorFragmentOp2ATI

foreign import CALLCONV "dynamic" dyn_glColorFragmentOp2ATI
  :: FunPtr (GLenum -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> IO ())
  ->         GLenum -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> IO ()

{-# NOINLINE ptr_glColorFragmentOp2ATI #-}
ptr_glColorFragmentOp2ATI :: FunPtr (GLenum -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> IO ())
ptr_glColorFragmentOp2ATI = unsafePerformIO $ getCommand "glColorFragmentOp2ATI"

-- glColorFragmentOp3ATI -------------------------------------------------------

glColorFragmentOp3ATI
  :: GLenum -- ^ @op@ of type @FragmentOpATI@.
  -> GLuint -- ^ @dst@.
  -> GLuint -- ^ @dstMask@.
  -> GLuint -- ^ @dstMod@.
  -> GLuint -- ^ @arg1@.
  -> GLuint -- ^ @arg1Rep@.
  -> GLuint -- ^ @arg1Mod@.
  -> GLuint -- ^ @arg2@.
  -> GLuint -- ^ @arg2Rep@.
  -> GLuint -- ^ @arg2Mod@.
  -> GLuint -- ^ @arg3@.
  -> GLuint -- ^ @arg3Rep@.
  -> GLuint -- ^ @arg3Mod@.
  -> IO ()
glColorFragmentOp3ATI = dyn_glColorFragmentOp3ATI ptr_glColorFragmentOp3ATI

foreign import CALLCONV "dynamic" dyn_glColorFragmentOp3ATI
  :: FunPtr (GLenum -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> IO ())
  ->         GLenum -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> IO ()

{-# NOINLINE ptr_glColorFragmentOp3ATI #-}
ptr_glColorFragmentOp3ATI :: FunPtr (GLenum -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> IO ())
ptr_glColorFragmentOp3ATI = unsafePerformIO $ getCommand "glColorFragmentOp3ATI"

-- glColorMask -----------------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glColorMask.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glColorMask.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glColorMask.xhtml OpenGL 4.x>
glColorMask
  :: GLboolean -- ^ @red@ of type @Boolean@.
  -> GLboolean -- ^ @green@ of type @Boolean@.
  -> GLboolean -- ^ @blue@ of type @Boolean@.
  -> GLboolean -- ^ @alpha@ of type @Boolean@.
  -> IO ()
glColorMask = dyn_glColorMask ptr_glColorMask

foreign import CALLCONV "dynamic" dyn_glColorMask
  :: FunPtr (GLboolean -> GLboolean -> GLboolean -> GLboolean -> IO ())
  ->         GLboolean -> GLboolean -> GLboolean -> GLboolean -> IO ()

{-# NOINLINE ptr_glColorMask #-}
ptr_glColorMask :: FunPtr (GLboolean -> GLboolean -> GLboolean -> GLboolean -> IO ())
ptr_glColorMask = unsafePerformIO $ getCommand "glColorMask"

-- glColorMaskIndexedEXT -------------------------------------------------------

glColorMaskIndexedEXT
  :: GLuint -- ^ @index@.
  -> GLboolean -- ^ @r@ of type @Boolean@.
  -> GLboolean -- ^ @g@ of type @Boolean@.
  -> GLboolean -- ^ @b@ of type @Boolean@.
  -> GLboolean -- ^ @a@ of type @Boolean@.
  -> IO ()
glColorMaskIndexedEXT = dyn_glColorMaskIndexedEXT ptr_glColorMaskIndexedEXT

foreign import CALLCONV "dynamic" dyn_glColorMaskIndexedEXT
  :: FunPtr (GLuint -> GLboolean -> GLboolean -> GLboolean -> GLboolean -> IO ())
  ->         GLuint -> GLboolean -> GLboolean -> GLboolean -> GLboolean -> IO ()

{-# NOINLINE ptr_glColorMaskIndexedEXT #-}
ptr_glColorMaskIndexedEXT :: FunPtr (GLuint -> GLboolean -> GLboolean -> GLboolean -> GLboolean -> IO ())
ptr_glColorMaskIndexedEXT = unsafePerformIO $ getCommand "glColorMaskIndexedEXT"

-- glColorMaski ----------------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glColorMask.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glColorMask.xhtml OpenGL 4.x>
glColorMaski
  :: GLuint -- ^ @index@.
  -> GLboolean -- ^ @r@ of type @Boolean@.
  -> GLboolean -- ^ @g@ of type @Boolean@.
  -> GLboolean -- ^ @b@ of type @Boolean@.
  -> GLboolean -- ^ @a@ of type @Boolean@.
  -> IO ()
glColorMaski = dyn_glColorMaski ptr_glColorMaski

foreign import CALLCONV "dynamic" dyn_glColorMaski
  :: FunPtr (GLuint -> GLboolean -> GLboolean -> GLboolean -> GLboolean -> IO ())
  ->         GLuint -> GLboolean -> GLboolean -> GLboolean -> GLboolean -> IO ()

{-# NOINLINE ptr_glColorMaski #-}
ptr_glColorMaski :: FunPtr (GLuint -> GLboolean -> GLboolean -> GLboolean -> GLboolean -> IO ())
ptr_glColorMaski = unsafePerformIO $ getCommand "glColorMaski"

-- glColorMaskiEXT -------------------------------------------------------------

glColorMaskiEXT
  :: GLuint -- ^ @index@.
  -> GLboolean -- ^ @r@ of type @Boolean@.
  -> GLboolean -- ^ @g@ of type @Boolean@.
  -> GLboolean -- ^ @b@ of type @Boolean@.
  -> GLboolean -- ^ @a@ of type @Boolean@.
  -> IO ()
glColorMaskiEXT = dyn_glColorMaskiEXT ptr_glColorMaskiEXT

foreign import CALLCONV "dynamic" dyn_glColorMaskiEXT
  :: FunPtr (GLuint -> GLboolean -> GLboolean -> GLboolean -> GLboolean -> IO ())
  ->         GLuint -> GLboolean -> GLboolean -> GLboolean -> GLboolean -> IO ()

{-# NOINLINE ptr_glColorMaskiEXT #-}
ptr_glColorMaskiEXT :: FunPtr (GLuint -> GLboolean -> GLboolean -> GLboolean -> GLboolean -> IO ())
ptr_glColorMaskiEXT = unsafePerformIO $ getCommand "glColorMaskiEXT"

-- glColorMaskiOES -------------------------------------------------------------

glColorMaskiOES
  :: GLuint -- ^ @index@.
  -> GLboolean -- ^ @r@ of type @Boolean@.
  -> GLboolean -- ^ @g@ of type @Boolean@.
  -> GLboolean -- ^ @b@ of type @Boolean@.
  -> GLboolean -- ^ @a@ of type @Boolean@.
  -> IO ()
glColorMaskiOES = dyn_glColorMaskiOES ptr_glColorMaskiOES

foreign import CALLCONV "dynamic" dyn_glColorMaskiOES
  :: FunPtr (GLuint -> GLboolean -> GLboolean -> GLboolean -> GLboolean -> IO ())
  ->         GLuint -> GLboolean -> GLboolean -> GLboolean -> GLboolean -> IO ()

{-# NOINLINE ptr_glColorMaskiOES #-}
ptr_glColorMaskiOES :: FunPtr (GLuint -> GLboolean -> GLboolean -> GLboolean -> GLboolean -> IO ())
ptr_glColorMaskiOES = unsafePerformIO $ getCommand "glColorMaskiOES"

-- glColorMaterial -------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glColorMaterial.xml OpenGL 2.x>
glColorMaterial
  :: GLenum -- ^ @face@ of type @MaterialFace@.
  -> GLenum -- ^ @mode@ of type @ColorMaterialParameter@.
  -> IO ()
glColorMaterial = dyn_glColorMaterial ptr_glColorMaterial

foreign import CALLCONV "dynamic" dyn_glColorMaterial
  :: FunPtr (GLenum -> GLenum -> IO ())
  ->         GLenum -> GLenum -> IO ()

{-# NOINLINE ptr_glColorMaterial #-}
ptr_glColorMaterial :: FunPtr (GLenum -> GLenum -> IO ())
ptr_glColorMaterial = unsafePerformIO $ getCommand "glColorMaterial"

-- glColorP3ui -----------------------------------------------------------------

glColorP3ui
  :: GLenum -- ^ @type@.
  -> GLuint -- ^ @color@.
  -> IO ()
glColorP3ui = dyn_glColorP3ui ptr_glColorP3ui

foreign import CALLCONV "dynamic" dyn_glColorP3ui
  :: FunPtr (GLenum -> GLuint -> IO ())
  ->         GLenum -> GLuint -> IO ()

{-# NOINLINE ptr_glColorP3ui #-}
ptr_glColorP3ui :: FunPtr (GLenum -> GLuint -> IO ())
ptr_glColorP3ui = unsafePerformIO $ getCommand "glColorP3ui"

-- glColorP3uiv ----------------------------------------------------------------

glColorP3uiv
  :: GLenum -- ^ @type@.
  -> Ptr GLuint -- ^ @color@ pointing to @1@ elements of type @GLuint@.
  -> IO ()
glColorP3uiv = dyn_glColorP3uiv ptr_glColorP3uiv

foreign import CALLCONV "dynamic" dyn_glColorP3uiv
  :: FunPtr (GLenum -> Ptr GLuint -> IO ())
  ->         GLenum -> Ptr GLuint -> IO ()

{-# NOINLINE ptr_glColorP3uiv #-}
ptr_glColorP3uiv :: FunPtr (GLenum -> Ptr GLuint -> IO ())
ptr_glColorP3uiv = unsafePerformIO $ getCommand "glColorP3uiv"

-- glColorP4ui -----------------------------------------------------------------

glColorP4ui
  :: GLenum -- ^ @type@.
  -> GLuint -- ^ @color@.
  -> IO ()
glColorP4ui = dyn_glColorP4ui ptr_glColorP4ui

foreign import CALLCONV "dynamic" dyn_glColorP4ui
  :: FunPtr (GLenum -> GLuint -> IO ())
  ->         GLenum -> GLuint -> IO ()

{-# NOINLINE ptr_glColorP4ui #-}
ptr_glColorP4ui :: FunPtr (GLenum -> GLuint -> IO ())
ptr_glColorP4ui = unsafePerformIO $ getCommand "glColorP4ui"

-- glColorP4uiv ----------------------------------------------------------------

glColorP4uiv
  :: GLenum -- ^ @type@.
  -> Ptr GLuint -- ^ @color@ pointing to @1@ elements of type @GLuint@.
  -> IO ()
glColorP4uiv = dyn_glColorP4uiv ptr_glColorP4uiv

foreign import CALLCONV "dynamic" dyn_glColorP4uiv
  :: FunPtr (GLenum -> Ptr GLuint -> IO ())
  ->         GLenum -> Ptr GLuint -> IO ()

{-# NOINLINE ptr_glColorP4uiv #-}
ptr_glColorP4uiv :: FunPtr (GLenum -> Ptr GLuint -> IO ())
ptr_glColorP4uiv = unsafePerformIO $ getCommand "glColorP4uiv"

-- glColorPointer --------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glColorPointer.xml OpenGL 2.x>
glColorPointer
  :: GLint -- ^ @size@.
  -> GLenum -- ^ @type@ of type @ColorPointerType@.
  -> GLsizei -- ^ @stride@.
  -> Ptr a -- ^ @pointer@ pointing to @COMPSIZE(size,type,stride)@ elements of type @a@.
  -> IO ()
glColorPointer = dyn_glColorPointer ptr_glColorPointer

foreign import CALLCONV "dynamic" dyn_glColorPointer
  :: FunPtr (GLint -> GLenum -> GLsizei -> Ptr a -> IO ())
  ->         GLint -> GLenum -> GLsizei -> Ptr a -> IO ()

{-# NOINLINE ptr_glColorPointer #-}
ptr_glColorPointer :: FunPtr (GLint -> GLenum -> GLsizei -> Ptr a -> IO ())
ptr_glColorPointer = unsafePerformIO $ getCommand "glColorPointer"

-- glColorPointerEXT -----------------------------------------------------------

glColorPointerEXT
  :: GLint -- ^ @size@.
  -> GLenum -- ^ @type@ of type @ColorPointerType@.
  -> GLsizei -- ^ @stride@.
  -> GLsizei -- ^ @count@.
  -> Ptr a -- ^ @pointer@ pointing to @COMPSIZE(size,type,stride,count)@ elements of type @a@.
  -> IO ()
glColorPointerEXT = dyn_glColorPointerEXT ptr_glColorPointerEXT

foreign import CALLCONV "dynamic" dyn_glColorPointerEXT
  :: FunPtr (GLint -> GLenum -> GLsizei -> GLsizei -> Ptr a -> IO ())
  ->         GLint -> GLenum -> GLsizei -> GLsizei -> Ptr a -> IO ()

{-# NOINLINE ptr_glColorPointerEXT #-}
ptr_glColorPointerEXT :: FunPtr (GLint -> GLenum -> GLsizei -> GLsizei -> Ptr a -> IO ())
ptr_glColorPointerEXT = unsafePerformIO $ getCommand "glColorPointerEXT"

-- glColorPointerListIBM -------------------------------------------------------

glColorPointerListIBM
  :: GLint -- ^ @size@.
  -> GLenum -- ^ @type@ of type @ColorPointerType@.
  -> GLint -- ^ @stride@.
  -> Ptr (Ptr a) -- ^ @pointer@ pointing to @COMPSIZE(size,type,stride)@ elements of type @Ptr a@.
  -> GLint -- ^ @ptrstride@.
  -> IO ()
glColorPointerListIBM = dyn_glColorPointerListIBM ptr_glColorPointerListIBM

foreign import CALLCONV "dynamic" dyn_glColorPointerListIBM
  :: FunPtr (GLint -> GLenum -> GLint -> Ptr (Ptr a) -> GLint -> IO ())
  ->         GLint -> GLenum -> GLint -> Ptr (Ptr a) -> GLint -> IO ()

{-# NOINLINE ptr_glColorPointerListIBM #-}
ptr_glColorPointerListIBM :: FunPtr (GLint -> GLenum -> GLint -> Ptr (Ptr a) -> GLint -> IO ())
ptr_glColorPointerListIBM = unsafePerformIO $ getCommand "glColorPointerListIBM"

-- glColorPointervINTEL --------------------------------------------------------

glColorPointervINTEL
  :: GLint -- ^ @size@.
  -> GLenum -- ^ @type@ of type @VertexPointerType@.
  -> Ptr (Ptr a) -- ^ @pointer@ pointing to @4@ elements of type @Ptr a@.
  -> IO ()
glColorPointervINTEL = dyn_glColorPointervINTEL ptr_glColorPointervINTEL

foreign import CALLCONV "dynamic" dyn_glColorPointervINTEL
  :: FunPtr (GLint -> GLenum -> Ptr (Ptr a) -> IO ())
  ->         GLint -> GLenum -> Ptr (Ptr a) -> IO ()

{-# NOINLINE ptr_glColorPointervINTEL #-}
ptr_glColorPointervINTEL :: FunPtr (GLint -> GLenum -> Ptr (Ptr a) -> IO ())
ptr_glColorPointervINTEL = unsafePerformIO $ getCommand "glColorPointervINTEL"

-- glColorSubTable -------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glColorSubTable.xml OpenGL 2.x>
glColorSubTable
  :: GLenum -- ^ @target@ of type @ColorTableTarget@.
  -> GLsizei -- ^ @start@.
  -> GLsizei -- ^ @count@.
  -> GLenum -- ^ @format@ of type @PixelFormat@.
  -> GLenum -- ^ @type@ of type @PixelType@.
  -> Ptr a -- ^ @data@ pointing to @COMPSIZE(format,type,count)@ elements of type @a@.
  -> IO ()
glColorSubTable = dyn_glColorSubTable ptr_glColorSubTable

foreign import CALLCONV "dynamic" dyn_glColorSubTable
  :: FunPtr (GLenum -> GLsizei -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO ())
  ->         GLenum -> GLsizei -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO ()

{-# NOINLINE ptr_glColorSubTable #-}
ptr_glColorSubTable :: FunPtr (GLenum -> GLsizei -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO ())
ptr_glColorSubTable = unsafePerformIO $ getCommand "glColorSubTable"

-- glColorSubTableEXT ----------------------------------------------------------

glColorSubTableEXT
  :: GLenum -- ^ @target@ of type @ColorTableTarget@.
  -> GLsizei -- ^ @start@.
  -> GLsizei -- ^ @count@.
  -> GLenum -- ^ @format@ of type @PixelFormat@.
  -> GLenum -- ^ @type@ of type @PixelType@.
  -> Ptr a -- ^ @data@ pointing to @COMPSIZE(format,type,count)@ elements of type @a@.
  -> IO ()
glColorSubTableEXT = dyn_glColorSubTableEXT ptr_glColorSubTableEXT

foreign import CALLCONV "dynamic" dyn_glColorSubTableEXT
  :: FunPtr (GLenum -> GLsizei -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO ())
  ->         GLenum -> GLsizei -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO ()

{-# NOINLINE ptr_glColorSubTableEXT #-}
ptr_glColorSubTableEXT :: FunPtr (GLenum -> GLsizei -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO ())
ptr_glColorSubTableEXT = unsafePerformIO $ getCommand "glColorSubTableEXT"

-- glColorTable ----------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glColorTable.xml OpenGL 2.x>
glColorTable
  :: GLenum -- ^ @target@ of type @ColorTableTarget@.
  -> GLenum -- ^ @internalformat@ of type @PixelInternalFormat@.
  -> GLsizei -- ^ @width@.
  -> GLenum -- ^ @format@ of type @PixelFormat@.
  -> GLenum -- ^ @type@ of type @PixelType@.
  -> Ptr a -- ^ @table@ pointing to @COMPSIZE(format,type,width)@ elements of type @a@.
  -> IO ()
glColorTable = dyn_glColorTable ptr_glColorTable

foreign import CALLCONV "dynamic" dyn_glColorTable
  :: FunPtr (GLenum -> GLenum -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO ())
  ->         GLenum -> GLenum -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO ()

{-# NOINLINE ptr_glColorTable #-}
ptr_glColorTable :: FunPtr (GLenum -> GLenum -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO ())
ptr_glColorTable = unsafePerformIO $ getCommand "glColorTable"

-- glColorTableEXT -------------------------------------------------------------

glColorTableEXT
  :: GLenum -- ^ @target@ of type @ColorTableTarget@.
  -> GLenum -- ^ @internalFormat@ of type @PixelInternalFormat@.
  -> GLsizei -- ^ @width@.
  -> GLenum -- ^ @format@ of type @PixelFormat@.
  -> GLenum -- ^ @type@ of type @PixelType@.
  -> Ptr a -- ^ @table@ pointing to @COMPSIZE(format,type,width)@ elements of type @a@.
  -> IO ()
glColorTableEXT = dyn_glColorTableEXT ptr_glColorTableEXT

foreign import CALLCONV "dynamic" dyn_glColorTableEXT
  :: FunPtr (GLenum -> GLenum -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO ())
  ->         GLenum -> GLenum -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO ()

{-# NOINLINE ptr_glColorTableEXT #-}
ptr_glColorTableEXT :: FunPtr (GLenum -> GLenum -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO ())
ptr_glColorTableEXT = unsafePerformIO $ getCommand "glColorTableEXT"

-- glColorTableParameterfv -----------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glColorTableParameter.xml OpenGL 2.x>
glColorTableParameterfv
  :: GLenum -- ^ @target@ of type @ColorTableTarget@.
  -> GLenum -- ^ @pname@ of type @ColorTableParameterPName@.
  -> Ptr GLfloat -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @CheckedFloat32@.
  -> IO ()
glColorTableParameterfv = dyn_glColorTableParameterfv ptr_glColorTableParameterfv

foreign import CALLCONV "dynamic" dyn_glColorTableParameterfv
  :: FunPtr (GLenum -> GLenum -> Ptr GLfloat -> IO ())
  ->         GLenum -> GLenum -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glColorTableParameterfv #-}
ptr_glColorTableParameterfv :: FunPtr (GLenum -> GLenum -> Ptr GLfloat -> IO ())
ptr_glColorTableParameterfv = unsafePerformIO $ getCommand "glColorTableParameterfv"

-- glColorTableParameterfvSGI --------------------------------------------------

glColorTableParameterfvSGI
  :: GLenum -- ^ @target@ of type @ColorTableTargetSGI@.
  -> GLenum -- ^ @pname@ of type @ColorTableParameterPNameSGI@.
  -> Ptr GLfloat -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @CheckedFloat32@.
  -> IO ()
glColorTableParameterfvSGI = dyn_glColorTableParameterfvSGI ptr_glColorTableParameterfvSGI

foreign import CALLCONV "dynamic" dyn_glColorTableParameterfvSGI
  :: FunPtr (GLenum -> GLenum -> Ptr GLfloat -> IO ())
  ->         GLenum -> GLenum -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glColorTableParameterfvSGI #-}
ptr_glColorTableParameterfvSGI :: FunPtr (GLenum -> GLenum -> Ptr GLfloat -> IO ())
ptr_glColorTableParameterfvSGI = unsafePerformIO $ getCommand "glColorTableParameterfvSGI"

-- glColorTableParameteriv -----------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glColorTableParameter.xml OpenGL 2.x>
glColorTableParameteriv
  :: GLenum -- ^ @target@ of type @ColorTableTarget@.
  -> GLenum -- ^ @pname@ of type @ColorTableParameterPName@.
  -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @CheckedInt32@.
  -> IO ()
glColorTableParameteriv = dyn_glColorTableParameteriv ptr_glColorTableParameteriv

foreign import CALLCONV "dynamic" dyn_glColorTableParameteriv
  :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
  ->         GLenum -> GLenum -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glColorTableParameteriv #-}
ptr_glColorTableParameteriv :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
ptr_glColorTableParameteriv = unsafePerformIO $ getCommand "glColorTableParameteriv"

-- glColorTableParameterivSGI --------------------------------------------------

glColorTableParameterivSGI
  :: GLenum -- ^ @target@ of type @ColorTableTargetSGI@.
  -> GLenum -- ^ @pname@ of type @ColorTableParameterPNameSGI@.
  -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @CheckedInt32@.
  -> IO ()
glColorTableParameterivSGI = dyn_glColorTableParameterivSGI ptr_glColorTableParameterivSGI

foreign import CALLCONV "dynamic" dyn_glColorTableParameterivSGI
  :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
  ->         GLenum -> GLenum -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glColorTableParameterivSGI #-}
ptr_glColorTableParameterivSGI :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
ptr_glColorTableParameterivSGI = unsafePerformIO $ getCommand "glColorTableParameterivSGI"

-- glColorTableSGI -------------------------------------------------------------

glColorTableSGI
  :: GLenum -- ^ @target@ of type @ColorTableTargetSGI@.
  -> GLenum -- ^ @internalformat@ of type @PixelInternalFormat@.
  -> GLsizei -- ^ @width@.
  -> GLenum -- ^ @format@ of type @PixelFormat@.
  -> GLenum -- ^ @type@ of type @PixelType@.
  -> Ptr a -- ^ @table@ pointing to @COMPSIZE(format,type,width)@ elements of type @a@.
  -> IO ()
glColorTableSGI = dyn_glColorTableSGI ptr_glColorTableSGI

foreign import CALLCONV "dynamic" dyn_glColorTableSGI
  :: FunPtr (GLenum -> GLenum -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO ())
  ->         GLenum -> GLenum -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO ()

{-# NOINLINE ptr_glColorTableSGI #-}
ptr_glColorTableSGI :: FunPtr (GLenum -> GLenum -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO ())
ptr_glColorTableSGI = unsafePerformIO $ getCommand "glColorTableSGI"

-- glCombinerInputNV -----------------------------------------------------------

glCombinerInputNV
  :: GLenum -- ^ @stage@ of type @CombinerStageNV@.
  -> GLenum -- ^ @portion@ of type @CombinerPortionNV@.
  -> GLenum -- ^ @variable@ of type @CombinerVariableNV@.
  -> GLenum -- ^ @input@ of type @CombinerRegisterNV@.
  -> GLenum -- ^ @mapping@ of type @CombinerMappingNV@.
  -> GLenum -- ^ @componentUsage@ of type @CombinerComponentUsageNV@.
  -> IO ()
glCombinerInputNV = dyn_glCombinerInputNV ptr_glCombinerInputNV

foreign import CALLCONV "dynamic" dyn_glCombinerInputNV
  :: FunPtr (GLenum -> GLenum -> GLenum -> GLenum -> GLenum -> GLenum -> IO ())
  ->         GLenum -> GLenum -> GLenum -> GLenum -> GLenum -> GLenum -> IO ()

{-# NOINLINE ptr_glCombinerInputNV #-}
ptr_glCombinerInputNV :: FunPtr (GLenum -> GLenum -> GLenum -> GLenum -> GLenum -> GLenum -> IO ())
ptr_glCombinerInputNV = unsafePerformIO $ getCommand "glCombinerInputNV"

-- glCombinerOutputNV ----------------------------------------------------------

glCombinerOutputNV
  :: GLenum -- ^ @stage@ of type @CombinerStageNV@.
  -> GLenum -- ^ @portion@ of type @CombinerPortionNV@.
  -> GLenum -- ^ @abOutput@ of type @CombinerRegisterNV@.
  -> GLenum -- ^ @cdOutput@ of type @CombinerRegisterNV@.
  -> GLenum -- ^ @sumOutput@ of type @CombinerRegisterNV@.
  -> GLenum -- ^ @scale@ of type @CombinerScaleNV@.
  -> GLenum -- ^ @bias@ of type @CombinerBiasNV@.
  -> GLboolean -- ^ @abDotProduct@ of type @Boolean@.
  -> GLboolean -- ^ @cdDotProduct@ of type @Boolean@.
  -> GLboolean -- ^ @muxSum@ of type @Boolean@.
  -> IO ()
glCombinerOutputNV = dyn_glCombinerOutputNV ptr_glCombinerOutputNV

foreign import CALLCONV "dynamic" dyn_glCombinerOutputNV
  :: FunPtr (GLenum -> GLenum -> GLenum -> GLenum -> GLenum -> GLenum -> GLenum -> GLboolean -> GLboolean -> GLboolean -> IO ())
  ->         GLenum -> GLenum -> GLenum -> GLenum -> GLenum -> GLenum -> GLenum -> GLboolean -> GLboolean -> GLboolean -> IO ()

{-# NOINLINE ptr_glCombinerOutputNV #-}
ptr_glCombinerOutputNV :: FunPtr (GLenum -> GLenum -> GLenum -> GLenum -> GLenum -> GLenum -> GLenum -> GLboolean -> GLboolean -> GLboolean -> IO ())
ptr_glCombinerOutputNV = unsafePerformIO $ getCommand "glCombinerOutputNV"

-- glCombinerParameterfNV ------------------------------------------------------

glCombinerParameterfNV
  :: GLenum -- ^ @pname@ of type @CombinerParameterNV@.
  -> GLfloat -- ^ @param@.
  -> IO ()
glCombinerParameterfNV = dyn_glCombinerParameterfNV ptr_glCombinerParameterfNV

foreign import CALLCONV "dynamic" dyn_glCombinerParameterfNV
  :: FunPtr (GLenum -> GLfloat -> IO ())
  ->         GLenum -> GLfloat -> IO ()

{-# NOINLINE ptr_glCombinerParameterfNV #-}
ptr_glCombinerParameterfNV :: FunPtr (GLenum -> GLfloat -> IO ())
ptr_glCombinerParameterfNV = unsafePerformIO $ getCommand "glCombinerParameterfNV"

-- glCombinerParameterfvNV -----------------------------------------------------

glCombinerParameterfvNV
  :: GLenum -- ^ @pname@ of type @CombinerParameterNV@.
  -> Ptr GLfloat -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @CheckedFloat32@.
  -> IO ()
glCombinerParameterfvNV = dyn_glCombinerParameterfvNV ptr_glCombinerParameterfvNV

foreign import CALLCONV "dynamic" dyn_glCombinerParameterfvNV
  :: FunPtr (GLenum -> Ptr GLfloat -> IO ())
  ->         GLenum -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glCombinerParameterfvNV #-}
ptr_glCombinerParameterfvNV :: FunPtr (GLenum -> Ptr GLfloat -> IO ())
ptr_glCombinerParameterfvNV = unsafePerformIO $ getCommand "glCombinerParameterfvNV"

-- glCombinerParameteriNV ------------------------------------------------------

glCombinerParameteriNV
  :: GLenum -- ^ @pname@ of type @CombinerParameterNV@.
  -> GLint -- ^ @param@.
  -> IO ()
glCombinerParameteriNV = dyn_glCombinerParameteriNV ptr_glCombinerParameteriNV

foreign import CALLCONV "dynamic" dyn_glCombinerParameteriNV
  :: FunPtr (GLenum -> GLint -> IO ())
  ->         GLenum -> GLint -> IO ()

{-# NOINLINE ptr_glCombinerParameteriNV #-}
ptr_glCombinerParameteriNV :: FunPtr (GLenum -> GLint -> IO ())
ptr_glCombinerParameteriNV = unsafePerformIO $ getCommand "glCombinerParameteriNV"

-- glCombinerParameterivNV -----------------------------------------------------

glCombinerParameterivNV
  :: GLenum -- ^ @pname@ of type @CombinerParameterNV@.
  -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @CheckedInt32@.
  -> IO ()
glCombinerParameterivNV = dyn_glCombinerParameterivNV ptr_glCombinerParameterivNV

foreign import CALLCONV "dynamic" dyn_glCombinerParameterivNV
  :: FunPtr (GLenum -> Ptr GLint -> IO ())
  ->         GLenum -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glCombinerParameterivNV #-}
ptr_glCombinerParameterivNV :: FunPtr (GLenum -> Ptr GLint -> IO ())
ptr_glCombinerParameterivNV = unsafePerformIO $ getCommand "glCombinerParameterivNV"

-- glCombinerStageParameterfvNV ------------------------------------------------

glCombinerStageParameterfvNV
  :: GLenum -- ^ @stage@ of type @CombinerStageNV@.
  -> GLenum -- ^ @pname@ of type @CombinerParameterNV@.
  -> Ptr GLfloat -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @CheckedFloat32@.
  -> IO ()
glCombinerStageParameterfvNV = dyn_glCombinerStageParameterfvNV ptr_glCombinerStageParameterfvNV

foreign import CALLCONV "dynamic" dyn_glCombinerStageParameterfvNV
  :: FunPtr (GLenum -> GLenum -> Ptr GLfloat -> IO ())
  ->         GLenum -> GLenum -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glCombinerStageParameterfvNV #-}
ptr_glCombinerStageParameterfvNV :: FunPtr (GLenum -> GLenum -> Ptr GLfloat -> IO ())
ptr_glCombinerStageParameterfvNV = unsafePerformIO $ getCommand "glCombinerStageParameterfvNV"

-- glCompileShader -------------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glCompileShader.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glCompileShader.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glCompileShader.xhtml OpenGL 4.x>
glCompileShader
  :: GLuint -- ^ @shader@.
  -> IO ()
glCompileShader = dyn_glCompileShader ptr_glCompileShader

foreign import CALLCONV "dynamic" dyn_glCompileShader
  :: FunPtr (GLuint -> IO ())
  ->         GLuint -> IO ()

{-# NOINLINE ptr_glCompileShader #-}
ptr_glCompileShader :: FunPtr (GLuint -> IO ())
ptr_glCompileShader = unsafePerformIO $ getCommand "glCompileShader"

-- glCompileShaderARB ----------------------------------------------------------

glCompileShaderARB
  :: GLhandleARB -- ^ @shaderObj@ of type @handleARB@.
  -> IO ()
glCompileShaderARB = dyn_glCompileShaderARB ptr_glCompileShaderARB

foreign import CALLCONV "dynamic" dyn_glCompileShaderARB
  :: FunPtr (GLhandleARB -> IO ())
  ->         GLhandleARB -> IO ()

{-# NOINLINE ptr_glCompileShaderARB #-}
ptr_glCompileShaderARB :: FunPtr (GLhandleARB -> IO ())
ptr_glCompileShaderARB = unsafePerformIO $ getCommand "glCompileShaderARB"

-- glCompileShaderIncludeARB ---------------------------------------------------

glCompileShaderIncludeARB
  :: GLuint -- ^ @shader@.
  -> GLsizei -- ^ @count@.
  -> Ptr (Ptr GLchar) -- ^ @path@ pointing to @count@ elements of type @Ptr GLchar@.
  -> Ptr GLint -- ^ @length@ pointing to @count@ elements of type @GLint@.
  -> IO ()
glCompileShaderIncludeARB = dyn_glCompileShaderIncludeARB ptr_glCompileShaderIncludeARB

foreign import CALLCONV "dynamic" dyn_glCompileShaderIncludeARB
  :: FunPtr (GLuint -> GLsizei -> Ptr (Ptr GLchar) -> Ptr GLint -> IO ())
  ->         GLuint -> GLsizei -> Ptr (Ptr GLchar) -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glCompileShaderIncludeARB #-}
ptr_glCompileShaderIncludeARB :: FunPtr (GLuint -> GLsizei -> Ptr (Ptr GLchar) -> Ptr GLint -> IO ())
ptr_glCompileShaderIncludeARB = unsafePerformIO $ getCommand "glCompileShaderIncludeARB"

-- glCompressedMultiTexImage1DEXT ----------------------------------------------

glCompressedMultiTexImage1DEXT
  :: GLenum -- ^ @texunit@ of type @TextureUnit@.
  -> GLenum -- ^ @target@ of type @TextureTarget@.
  -> GLint -- ^ @level@ of type @CheckedInt32@.
  -> GLenum -- ^ @internalformat@ of type @TextureInternalFormat@.
  -> GLsizei -- ^ @width@.
  -> GLint -- ^ @border@ of type @CheckedInt32@.
  -> GLsizei -- ^ @imageSize@.
  -> Ptr a -- ^ @bits@ pointing to @imageSize@ elements of type @a@.
  -> IO ()
glCompressedMultiTexImage1DEXT = dyn_glCompressedMultiTexImage1DEXT ptr_glCompressedMultiTexImage1DEXT

foreign import CALLCONV "dynamic" dyn_glCompressedMultiTexImage1DEXT
  :: FunPtr (GLenum -> GLenum -> GLint -> GLenum -> GLsizei -> GLint -> GLsizei -> Ptr a -> IO ())
  ->         GLenum -> GLenum -> GLint -> GLenum -> GLsizei -> GLint -> GLsizei -> Ptr a -> IO ()

{-# NOINLINE ptr_glCompressedMultiTexImage1DEXT #-}
ptr_glCompressedMultiTexImage1DEXT :: FunPtr (GLenum -> GLenum -> GLint -> GLenum -> GLsizei -> GLint -> GLsizei -> Ptr a -> IO ())
ptr_glCompressedMultiTexImage1DEXT = unsafePerformIO $ getCommand "glCompressedMultiTexImage1DEXT"

-- glCompressedMultiTexImage2DEXT ----------------------------------------------

glCompressedMultiTexImage2DEXT
  :: GLenum -- ^ @texunit@ of type @TextureUnit@.
  -> GLenum -- ^ @target@ of type @TextureTarget@.
  -> GLint -- ^ @level@ of type @CheckedInt32@.
  -> GLenum -- ^ @internalformat@ of type @TextureInternalFormat@.
  -> GLsizei -- ^ @width@.
  -> GLsizei -- ^ @height@.
  -> GLint -- ^ @border@ of type @CheckedInt32@.
  -> GLsizei -- ^ @imageSize@.
  -> Ptr a -- ^ @bits@ pointing to @imageSize@ elements of type @a@.
  -> IO ()
glCompressedMultiTexImage2DEXT = dyn_glCompressedMultiTexImage2DEXT ptr_glCompressedMultiTexImage2DEXT

foreign import CALLCONV "dynamic" dyn_glCompressedMultiTexImage2DEXT
  :: FunPtr (GLenum -> GLenum -> GLint -> GLenum -> GLsizei -> GLsizei -> GLint -> GLsizei -> Ptr a -> IO ())
  ->         GLenum -> GLenum -> GLint -> GLenum -> GLsizei -> GLsizei -> GLint -> GLsizei -> Ptr a -> IO ()

{-# NOINLINE ptr_glCompressedMultiTexImage2DEXT #-}
ptr_glCompressedMultiTexImage2DEXT :: FunPtr (GLenum -> GLenum -> GLint -> GLenum -> GLsizei -> GLsizei -> GLint -> GLsizei -> Ptr a -> IO ())
ptr_glCompressedMultiTexImage2DEXT = unsafePerformIO $ getCommand "glCompressedMultiTexImage2DEXT"

-- glCompressedMultiTexImage3DEXT ----------------------------------------------

glCompressedMultiTexImage3DEXT
  :: GLenum -- ^ @texunit@ of type @TextureUnit@.
  -> GLenum -- ^ @target@ of type @TextureTarget@.
  -> GLint -- ^ @level@ of type @CheckedInt32@.
  -> GLenum -- ^ @internalformat@ of type @TextureInternalFormat@.
  -> GLsizei -- ^ @width@.
  -> GLsizei -- ^ @height@.
  -> GLsizei -- ^ @depth@.
  -> GLint -- ^ @border@ of type @CheckedInt32@.
  -> GLsizei -- ^ @imageSize@.
  -> Ptr a -- ^ @bits@ pointing to @imageSize@ elements of type @a@.
  -> IO ()
glCompressedMultiTexImage3DEXT = dyn_glCompressedMultiTexImage3DEXT ptr_glCompressedMultiTexImage3DEXT

foreign import CALLCONV "dynamic" dyn_glCompressedMultiTexImage3DEXT
  :: FunPtr (GLenum -> GLenum -> GLint -> GLenum -> GLsizei -> GLsizei -> GLsizei -> GLint -> GLsizei -> Ptr a -> IO ())
  ->         GLenum -> GLenum -> GLint -> GLenum -> GLsizei -> GLsizei -> GLsizei -> GLint -> GLsizei -> Ptr a -> IO ()

{-# NOINLINE ptr_glCompressedMultiTexImage3DEXT #-}
ptr_glCompressedMultiTexImage3DEXT :: FunPtr (GLenum -> GLenum -> GLint -> GLenum -> GLsizei -> GLsizei -> GLsizei -> GLint -> GLsizei -> Ptr a -> IO ())
ptr_glCompressedMultiTexImage3DEXT = unsafePerformIO $ getCommand "glCompressedMultiTexImage3DEXT"

-- glCompressedMultiTexSubImage1DEXT -------------------------------------------

glCompressedMultiTexSubImage1DEXT
  :: GLenum -- ^ @texunit@ of type @TextureUnit@.
  -> GLenum -- ^ @target@ of type @TextureTarget@.
  -> GLint -- ^ @level@ of type @CheckedInt32@.
  -> GLint -- ^ @xoffset@ of type @CheckedInt32@.
  -> GLsizei -- ^ @width@.
  -> GLenum -- ^ @format@ of type @PixelFormat@.
  -> GLsizei -- ^ @imageSize@.
  -> Ptr a -- ^ @bits@ pointing to @imageSize@ elements of type @a@.
  -> IO ()
glCompressedMultiTexSubImage1DEXT = dyn_glCompressedMultiTexSubImage1DEXT ptr_glCompressedMultiTexSubImage1DEXT

foreign import CALLCONV "dynamic" dyn_glCompressedMultiTexSubImage1DEXT
  :: FunPtr (GLenum -> GLenum -> GLint -> GLint -> GLsizei -> GLenum -> GLsizei -> Ptr a -> IO ())
  ->         GLenum -> GLenum -> GLint -> GLint -> GLsizei -> GLenum -> GLsizei -> Ptr a -> IO ()

{-# NOINLINE ptr_glCompressedMultiTexSubImage1DEXT #-}
ptr_glCompressedMultiTexSubImage1DEXT :: FunPtr (GLenum -> GLenum -> GLint -> GLint -> GLsizei -> GLenum -> GLsizei -> Ptr a -> IO ())
ptr_glCompressedMultiTexSubImage1DEXT = unsafePerformIO $ getCommand "glCompressedMultiTexSubImage1DEXT"

-- glCompressedMultiTexSubImage2DEXT -------------------------------------------

glCompressedMultiTexSubImage2DEXT
  :: GLenum -- ^ @texunit@ of type @TextureUnit@.
  -> GLenum -- ^ @target@ of type @TextureTarget@.
  -> GLint -- ^ @level@ of type @CheckedInt32@.
  -> GLint -- ^ @xoffset@ of type @CheckedInt32@.
  -> GLint -- ^ @yoffset@ of type @CheckedInt32@.
  -> GLsizei -- ^ @width@.
  -> GLsizei -- ^ @height@.
  -> GLenum -- ^ @format@ of type @PixelFormat@.
  -> GLsizei -- ^ @imageSize@.
  -> Ptr a -- ^ @bits@ pointing to @imageSize@ elements of type @a@.
  -> IO ()
glCompressedMultiTexSubImage2DEXT = dyn_glCompressedMultiTexSubImage2DEXT ptr_glCompressedMultiTexSubImage2DEXT

foreign import CALLCONV "dynamic" dyn_glCompressedMultiTexSubImage2DEXT
  :: FunPtr (GLenum -> GLenum -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLenum -> GLsizei -> Ptr a -> IO ())
  ->         GLenum -> GLenum -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLenum -> GLsizei -> Ptr a -> IO ()

{-# NOINLINE ptr_glCompressedMultiTexSubImage2DEXT #-}
ptr_glCompressedMultiTexSubImage2DEXT :: FunPtr (GLenum -> GLenum -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLenum -> GLsizei -> Ptr a -> IO ())
ptr_glCompressedMultiTexSubImage2DEXT = unsafePerformIO $ getCommand "glCompressedMultiTexSubImage2DEXT"

-- glCompressedMultiTexSubImage3DEXT -------------------------------------------

glCompressedMultiTexSubImage3DEXT
  :: GLenum -- ^ @texunit@ of type @TextureUnit@.
  -> GLenum -- ^ @target@ of type @TextureTarget@.
  -> GLint -- ^ @level@ of type @CheckedInt32@.
  -> GLint -- ^ @xoffset@ of type @CheckedInt32@.
  -> GLint -- ^ @yoffset@ of type @CheckedInt32@.
  -> GLint -- ^ @zoffset@ of type @CheckedInt32@.
  -> GLsizei -- ^ @width@.
  -> GLsizei -- ^ @height@.
  -> GLsizei -- ^ @depth@.
  -> GLenum -- ^ @format@ of type @PixelFormat@.
  -> GLsizei -- ^ @imageSize@.
  -> Ptr a -- ^ @bits@ pointing to @imageSize@ elements of type @a@.
  -> IO ()
glCompressedMultiTexSubImage3DEXT = dyn_glCompressedMultiTexSubImage3DEXT ptr_glCompressedMultiTexSubImage3DEXT

foreign import CALLCONV "dynamic" dyn_glCompressedMultiTexSubImage3DEXT
  :: FunPtr (GLenum -> GLenum -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLenum -> GLsizei -> Ptr a -> IO ())
  ->         GLenum -> GLenum -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLenum -> GLsizei -> Ptr a -> IO ()

{-# NOINLINE ptr_glCompressedMultiTexSubImage3DEXT #-}
ptr_glCompressedMultiTexSubImage3DEXT :: FunPtr (GLenum -> GLenum -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLenum -> GLsizei -> Ptr a -> IO ())
ptr_glCompressedMultiTexSubImage3DEXT = unsafePerformIO $ getCommand "glCompressedMultiTexSubImage3DEXT"

-- glCompressedTexImage1D ------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glCompressedTexImage1D.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glCompressedTexImage1D.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glCompressedTexImage1D.xhtml OpenGL 4.x>
glCompressedTexImage1D
  :: GLenum -- ^ @target@ of type @TextureTarget@.
  -> GLint -- ^ @level@ of type @CheckedInt32@.
  -> GLenum -- ^ @internalformat@ of type @PixelInternalFormat@.
  -> GLsizei -- ^ @width@.
  -> GLint -- ^ @border@ of type @CheckedInt32@.
  -> GLsizei -- ^ @imageSize@.
  -> Ptr a -- ^ @data@ pointing to @imageSize@ elements of type @CompressedTextureARB@.
  -> IO ()
glCompressedTexImage1D = dyn_glCompressedTexImage1D ptr_glCompressedTexImage1D

foreign import CALLCONV "dynamic" dyn_glCompressedTexImage1D
  :: FunPtr (GLenum -> GLint -> GLenum -> GLsizei -> GLint -> GLsizei -> Ptr a -> IO ())
  ->         GLenum -> GLint -> GLenum -> GLsizei -> GLint -> GLsizei -> Ptr a -> IO ()

{-# NOINLINE ptr_glCompressedTexImage1D #-}
ptr_glCompressedTexImage1D :: FunPtr (GLenum -> GLint -> GLenum -> GLsizei -> GLint -> GLsizei -> Ptr a -> IO ())
ptr_glCompressedTexImage1D = unsafePerformIO $ getCommand "glCompressedTexImage1D"

-- glCompressedTexImage1DARB ---------------------------------------------------

glCompressedTexImage1DARB
  :: GLenum -- ^ @target@ of type @TextureTarget@.
  -> GLint -- ^ @level@ of type @CheckedInt32@.
  -> GLenum -- ^ @internalformat@ of type @PixelInternalFormat@.
  -> GLsizei -- ^ @width@.
  -> GLint -- ^ @border@ of type @CheckedInt32@.
  -> GLsizei -- ^ @imageSize@.
  -> Ptr a -- ^ @data@ pointing to @imageSize@ elements of type @CompressedTextureARB@.
  -> IO ()
glCompressedTexImage1DARB = dyn_glCompressedTexImage1DARB ptr_glCompressedTexImage1DARB

foreign import CALLCONV "dynamic" dyn_glCompressedTexImage1DARB
  :: FunPtr (GLenum -> GLint -> GLenum -> GLsizei -> GLint -> GLsizei -> Ptr a -> IO ())
  ->         GLenum -> GLint -> GLenum -> GLsizei -> GLint -> GLsizei -> Ptr a -> IO ()

{-# NOINLINE ptr_glCompressedTexImage1DARB #-}
ptr_glCompressedTexImage1DARB :: FunPtr (GLenum -> GLint -> GLenum -> GLsizei -> GLint -> GLsizei -> Ptr a -> IO ())
ptr_glCompressedTexImage1DARB = unsafePerformIO $ getCommand "glCompressedTexImage1DARB"

-- glCompressedTexImage2D ------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glCompressedTexImage2D.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glCompressedTexImage2D.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glCompressedTexImage2D.xhtml OpenGL 4.x>
glCompressedTexImage2D
  :: GLenum -- ^ @target@ of type @TextureTarget@.
  -> GLint -- ^ @level@ of type @CheckedInt32@.
  -> GLenum -- ^ @internalformat@ of type @PixelInternalFormat@.
  -> GLsizei -- ^ @width@.
  -> GLsizei -- ^ @height@.
  -> GLint -- ^ @border@ of type @CheckedInt32@.
  -> GLsizei -- ^ @imageSize@.
  -> Ptr a -- ^ @data@ pointing to @imageSize@ elements of type @CompressedTextureARB@.
  -> IO ()
glCompressedTexImage2D = dyn_glCompressedTexImage2D ptr_glCompressedTexImage2D

foreign import CALLCONV "dynamic" dyn_glCompressedTexImage2D
  :: FunPtr (GLenum -> GLint -> GLenum -> GLsizei -> GLsizei -> GLint -> GLsizei -> Ptr a -> IO ())
  ->         GLenum -> GLint -> GLenum -> GLsizei -> GLsizei -> GLint -> GLsizei -> Ptr a -> IO ()

{-# NOINLINE ptr_glCompressedTexImage2D #-}
ptr_glCompressedTexImage2D :: FunPtr (GLenum -> GLint -> GLenum -> GLsizei -> GLsizei -> GLint -> GLsizei -> Ptr a -> IO ())
ptr_glCompressedTexImage2D = unsafePerformIO $ getCommand "glCompressedTexImage2D"

-- glCompressedTexImage2DARB ---------------------------------------------------

glCompressedTexImage2DARB
  :: GLenum -- ^ @target@ of type @TextureTarget@.
  -> GLint -- ^ @level@ of type @CheckedInt32@.
  -> GLenum -- ^ @internalformat@ of type @PixelInternalFormat@.
  -> GLsizei -- ^ @width@.
  -> GLsizei -- ^ @height@.
  -> GLint -- ^ @border@ of type @CheckedInt32@.
  -> GLsizei -- ^ @imageSize@.
  -> Ptr a -- ^ @data@ pointing to @imageSize@ elements of type @CompressedTextureARB@.
  -> IO ()
glCompressedTexImage2DARB = dyn_glCompressedTexImage2DARB ptr_glCompressedTexImage2DARB

foreign import CALLCONV "dynamic" dyn_glCompressedTexImage2DARB
  :: FunPtr (GLenum -> GLint -> GLenum -> GLsizei -> GLsizei -> GLint -> GLsizei -> Ptr a -> IO ())
  ->         GLenum -> GLint -> GLenum -> GLsizei -> GLsizei -> GLint -> GLsizei -> Ptr a -> IO ()

{-# NOINLINE ptr_glCompressedTexImage2DARB #-}
ptr_glCompressedTexImage2DARB :: FunPtr (GLenum -> GLint -> GLenum -> GLsizei -> GLsizei -> GLint -> GLsizei -> Ptr a -> IO ())
ptr_glCompressedTexImage2DARB = unsafePerformIO $ getCommand "glCompressedTexImage2DARB"

-- glCompressedTexImage3D ------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glCompressedTexImage3D.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glCompressedTexImage3D.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glCompressedTexImage3D.xhtml OpenGL 4.x>
glCompressedTexImage3D
  :: GLenum -- ^ @target@ of type @TextureTarget@.
  -> GLint -- ^ @level@ of type @CheckedInt32@.
  -> GLenum -- ^ @internalformat@ of type @PixelInternalFormat@.
  -> GLsizei -- ^ @width@.
  -> GLsizei -- ^ @height@.
  -> GLsizei -- ^ @depth@.
  -> GLint -- ^ @border@ of type @CheckedInt32@.
  -> GLsizei -- ^ @imageSize@.
  -> Ptr a -- ^ @data@ pointing to @imageSize@ elements of type @CompressedTextureARB@.
  -> IO ()
glCompressedTexImage3D = dyn_glCompressedTexImage3D ptr_glCompressedTexImage3D

foreign import CALLCONV "dynamic" dyn_glCompressedTexImage3D
  :: FunPtr (GLenum -> GLint -> GLenum -> GLsizei -> GLsizei -> GLsizei -> GLint -> GLsizei -> Ptr a -> IO ())
  ->         GLenum -> GLint -> GLenum -> GLsizei -> GLsizei -> GLsizei -> GLint -> GLsizei -> Ptr a -> IO ()

{-# NOINLINE ptr_glCompressedTexImage3D #-}
ptr_glCompressedTexImage3D :: FunPtr (GLenum -> GLint -> GLenum -> GLsizei -> GLsizei -> GLsizei -> GLint -> GLsizei -> Ptr a -> IO ())
ptr_glCompressedTexImage3D = unsafePerformIO $ getCommand "glCompressedTexImage3D"

-- glCompressedTexImage3DARB ---------------------------------------------------

glCompressedTexImage3DARB
  :: GLenum -- ^ @target@ of type @TextureTarget@.
  -> GLint -- ^ @level@ of type @CheckedInt32@.
  -> GLenum -- ^ @internalformat@ of type @PixelInternalFormat@.
  -> GLsizei -- ^ @width@.
  -> GLsizei -- ^ @height@.
  -> GLsizei -- ^ @depth@.
  -> GLint -- ^ @border@ of type @CheckedInt32@.
  -> GLsizei -- ^ @imageSize@.
  -> Ptr a -- ^ @data@ pointing to @imageSize@ elements of type @CompressedTextureARB@.
  -> IO ()
glCompressedTexImage3DARB = dyn_glCompressedTexImage3DARB ptr_glCompressedTexImage3DARB

foreign import CALLCONV "dynamic" dyn_glCompressedTexImage3DARB
  :: FunPtr (GLenum -> GLint -> GLenum -> GLsizei -> GLsizei -> GLsizei -> GLint -> GLsizei -> Ptr a -> IO ())
  ->         GLenum -> GLint -> GLenum -> GLsizei -> GLsizei -> GLsizei -> GLint -> GLsizei -> Ptr a -> IO ()

{-# NOINLINE ptr_glCompressedTexImage3DARB #-}
ptr_glCompressedTexImage3DARB :: FunPtr (GLenum -> GLint -> GLenum -> GLsizei -> GLsizei -> GLsizei -> GLint -> GLsizei -> Ptr a -> IO ())
ptr_glCompressedTexImage3DARB = unsafePerformIO $ getCommand "glCompressedTexImage3DARB"

-- glCompressedTexImage3DOES ---------------------------------------------------

glCompressedTexImage3DOES
  :: GLenum -- ^ @target@.
  -> GLint -- ^ @level@.
  -> GLenum -- ^ @internalformat@.
  -> GLsizei -- ^ @width@.
  -> GLsizei -- ^ @height@.
  -> GLsizei -- ^ @depth@.
  -> GLint -- ^ @border@.
  -> GLsizei -- ^ @imageSize@.
  -> Ptr a -- ^ @data@ pointing to @imageSize@ elements of type @a@.
  -> IO ()
glCompressedTexImage3DOES = dyn_glCompressedTexImage3DOES ptr_glCompressedTexImage3DOES

foreign import CALLCONV "dynamic" dyn_glCompressedTexImage3DOES
  :: FunPtr (GLenum -> GLint -> GLenum -> GLsizei -> GLsizei -> GLsizei -> GLint -> GLsizei -> Ptr a -> IO ())
  ->         GLenum -> GLint -> GLenum -> GLsizei -> GLsizei -> GLsizei -> GLint -> GLsizei -> Ptr a -> IO ()

{-# NOINLINE ptr_glCompressedTexImage3DOES #-}
ptr_glCompressedTexImage3DOES :: FunPtr (GLenum -> GLint -> GLenum -> GLsizei -> GLsizei -> GLsizei -> GLint -> GLsizei -> Ptr a -> IO ())
ptr_glCompressedTexImage3DOES = unsafePerformIO $ getCommand "glCompressedTexImage3DOES"

-- glCompressedTexSubImage1D ---------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glCompressedTexSubImage1D.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glCompressedTexSubImage1D.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glCompressedTexSubImage1D.xhtml OpenGL 4.x>
glCompressedTexSubImage1D
  :: GLenum -- ^ @target@ of type @TextureTarget@.
  -> GLint -- ^ @level@ of type @CheckedInt32@.
  -> GLint -- ^ @xoffset@ of type @CheckedInt32@.
  -> GLsizei -- ^ @width@.
  -> GLenum -- ^ @format@ of type @PixelFormat@.
  -> GLsizei -- ^ @imageSize@.
  -> Ptr a -- ^ @data@ pointing to @imageSize@ elements of type @CompressedTextureARB@.
  -> IO ()
glCompressedTexSubImage1D = dyn_glCompressedTexSubImage1D ptr_glCompressedTexSubImage1D

foreign import CALLCONV "dynamic" dyn_glCompressedTexSubImage1D
  :: FunPtr (GLenum -> GLint -> GLint -> GLsizei -> GLenum -> GLsizei -> Ptr a -> IO ())
  ->         GLenum -> GLint -> GLint -> GLsizei -> GLenum -> GLsizei -> Ptr a -> IO ()

{-# NOINLINE ptr_glCompressedTexSubImage1D #-}
ptr_glCompressedTexSubImage1D :: FunPtr (GLenum -> GLint -> GLint -> GLsizei -> GLenum -> GLsizei -> Ptr a -> IO ())
ptr_glCompressedTexSubImage1D = unsafePerformIO $ getCommand "glCompressedTexSubImage1D"

-- glCompressedTexSubImage1DARB ------------------------------------------------

glCompressedTexSubImage1DARB
  :: GLenum -- ^ @target@ of type @TextureTarget@.
  -> GLint -- ^ @level@ of type @CheckedInt32@.
  -> GLint -- ^ @xoffset@ of type @CheckedInt32@.
  -> GLsizei -- ^ @width@.
  -> GLenum -- ^ @format@ of type @PixelFormat@.
  -> GLsizei -- ^ @imageSize@.
  -> Ptr a -- ^ @data@ pointing to @imageSize@ elements of type @CompressedTextureARB@.
  -> IO ()
glCompressedTexSubImage1DARB = dyn_glCompressedTexSubImage1DARB ptr_glCompressedTexSubImage1DARB

foreign import CALLCONV "dynamic" dyn_glCompressedTexSubImage1DARB
  :: FunPtr (GLenum -> GLint -> GLint -> GLsizei -> GLenum -> GLsizei -> Ptr a -> IO ())
  ->         GLenum -> GLint -> GLint -> GLsizei -> GLenum -> GLsizei -> Ptr a -> IO ()

{-# NOINLINE ptr_glCompressedTexSubImage1DARB #-}
ptr_glCompressedTexSubImage1DARB :: FunPtr (GLenum -> GLint -> GLint -> GLsizei -> GLenum -> GLsizei -> Ptr a -> IO ())
ptr_glCompressedTexSubImage1DARB = unsafePerformIO $ getCommand "glCompressedTexSubImage1DARB"

-- glCompressedTexSubImage2D ---------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glCompressedTexSubImage2D.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glCompressedTexSubImage2D.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glCompressedTexSubImage2D.xhtml OpenGL 4.x>
glCompressedTexSubImage2D
  :: GLenum -- ^ @target@ of type @TextureTarget@.
  -> GLint -- ^ @level@ of type @CheckedInt32@.
  -> GLint -- ^ @xoffset@ of type @CheckedInt32@.
  -> GLint -- ^ @yoffset@ of type @CheckedInt32@.
  -> GLsizei -- ^ @width@.
  -> GLsizei -- ^ @height@.
  -> GLenum -- ^ @format@ of type @PixelFormat@.
  -> GLsizei -- ^ @imageSize@.
  -> Ptr a -- ^ @data@ pointing to @imageSize@ elements of type @CompressedTextureARB@.
  -> IO ()
glCompressedTexSubImage2D = dyn_glCompressedTexSubImage2D ptr_glCompressedTexSubImage2D

foreign import CALLCONV "dynamic" dyn_glCompressedTexSubImage2D
  :: FunPtr (GLenum -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLenum -> GLsizei -> Ptr a -> IO ())
  ->         GLenum -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLenum -> GLsizei -> Ptr a -> IO ()

{-# NOINLINE ptr_glCompressedTexSubImage2D #-}
ptr_glCompressedTexSubImage2D :: FunPtr (GLenum -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLenum -> GLsizei -> Ptr a -> IO ())
ptr_glCompressedTexSubImage2D = unsafePerformIO $ getCommand "glCompressedTexSubImage2D"

-- glCompressedTexSubImage2DARB ------------------------------------------------

glCompressedTexSubImage2DARB
  :: GLenum -- ^ @target@ of type @TextureTarget@.
  -> GLint -- ^ @level@ of type @CheckedInt32@.
  -> GLint -- ^ @xoffset@ of type @CheckedInt32@.
  -> GLint -- ^ @yoffset@ of type @CheckedInt32@.
  -> GLsizei -- ^ @width@.
  -> GLsizei -- ^ @height@.
  -> GLenum -- ^ @format@ of type @PixelFormat@.
  -> GLsizei -- ^ @imageSize@.
  -> Ptr a -- ^ @data@ pointing to @imageSize@ elements of type @CompressedTextureARB@.
  -> IO ()
glCompressedTexSubImage2DARB = dyn_glCompressedTexSubImage2DARB ptr_glCompressedTexSubImage2DARB

foreign import CALLCONV "dynamic" dyn_glCompressedTexSubImage2DARB
  :: FunPtr (GLenum -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLenum -> GLsizei -> Ptr a -> IO ())
  ->         GLenum -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLenum -> GLsizei -> Ptr a -> IO ()

{-# NOINLINE ptr_glCompressedTexSubImage2DARB #-}
ptr_glCompressedTexSubImage2DARB :: FunPtr (GLenum -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLenum -> GLsizei -> Ptr a -> IO ())
ptr_glCompressedTexSubImage2DARB = unsafePerformIO $ getCommand "glCompressedTexSubImage2DARB"

-- glCompressedTexSubImage3D ---------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glCompressedTexSubImage3D.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glCompressedTexSubImage3D.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glCompressedTexSubImage3D.xhtml OpenGL 4.x>
glCompressedTexSubImage3D
  :: GLenum -- ^ @target@ of type @TextureTarget@.
  -> GLint -- ^ @level@ of type @CheckedInt32@.
  -> GLint -- ^ @xoffset@ of type @CheckedInt32@.
  -> GLint -- ^ @yoffset@ of type @CheckedInt32@.
  -> GLint -- ^ @zoffset@ of type @CheckedInt32@.
  -> GLsizei -- ^ @width@.
  -> GLsizei -- ^ @height@.
  -> GLsizei -- ^ @depth@.
  -> GLenum -- ^ @format@ of type @PixelFormat@.
  -> GLsizei -- ^ @imageSize@.
  -> Ptr a -- ^ @data@ pointing to @imageSize@ elements of type @CompressedTextureARB@.
  -> IO ()
glCompressedTexSubImage3D = dyn_glCompressedTexSubImage3D ptr_glCompressedTexSubImage3D

foreign import CALLCONV "dynamic" dyn_glCompressedTexSubImage3D
  :: FunPtr (GLenum -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLenum -> GLsizei -> Ptr a -> IO ())
  ->         GLenum -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLenum -> GLsizei -> Ptr a -> IO ()

{-# NOINLINE ptr_glCompressedTexSubImage3D #-}
ptr_glCompressedTexSubImage3D :: FunPtr (GLenum -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLenum -> GLsizei -> Ptr a -> IO ())
ptr_glCompressedTexSubImage3D = unsafePerformIO $ getCommand "glCompressedTexSubImage3D"

-- glCompressedTexSubImage3DARB ------------------------------------------------

glCompressedTexSubImage3DARB
  :: GLenum -- ^ @target@ of type @TextureTarget@.
  -> GLint -- ^ @level@ of type @CheckedInt32@.
  -> GLint -- ^ @xoffset@ of type @CheckedInt32@.
  -> GLint -- ^ @yoffset@ of type @CheckedInt32@.
  -> GLint -- ^ @zoffset@ of type @CheckedInt32@.
  -> GLsizei -- ^ @width@.
  -> GLsizei -- ^ @height@.
  -> GLsizei -- ^ @depth@.
  -> GLenum -- ^ @format@ of type @PixelFormat@.
  -> GLsizei -- ^ @imageSize@.
  -> Ptr a -- ^ @data@ pointing to @imageSize@ elements of type @CompressedTextureARB@.
  -> IO ()
glCompressedTexSubImage3DARB = dyn_glCompressedTexSubImage3DARB ptr_glCompressedTexSubImage3DARB

foreign import CALLCONV "dynamic" dyn_glCompressedTexSubImage3DARB
  :: FunPtr (GLenum -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLenum -> GLsizei -> Ptr a -> IO ())
  ->         GLenum -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLenum -> GLsizei -> Ptr a -> IO ()

{-# NOINLINE ptr_glCompressedTexSubImage3DARB #-}
ptr_glCompressedTexSubImage3DARB :: FunPtr (GLenum -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLenum -> GLsizei -> Ptr a -> IO ())
ptr_glCompressedTexSubImage3DARB = unsafePerformIO $ getCommand "glCompressedTexSubImage3DARB"

-- glCompressedTexSubImage3DOES ------------------------------------------------

glCompressedTexSubImage3DOES
  :: GLenum -- ^ @target@.
  -> GLint -- ^ @level@.
  -> GLint -- ^ @xoffset@.
  -> GLint -- ^ @yoffset@.
  -> GLint -- ^ @zoffset@.
  -> GLsizei -- ^ @width@.
  -> GLsizei -- ^ @height@.
  -> GLsizei -- ^ @depth@.
  -> GLenum -- ^ @format@.
  -> GLsizei -- ^ @imageSize@.
  -> Ptr a -- ^ @data@ pointing to @imageSize@ elements of type @a@.
  -> IO ()
glCompressedTexSubImage3DOES = dyn_glCompressedTexSubImage3DOES ptr_glCompressedTexSubImage3DOES

foreign import CALLCONV "dynamic" dyn_glCompressedTexSubImage3DOES
  :: FunPtr (GLenum -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLenum -> GLsizei -> Ptr a -> IO ())
  ->         GLenum -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLenum -> GLsizei -> Ptr a -> IO ()

{-# NOINLINE ptr_glCompressedTexSubImage3DOES #-}
ptr_glCompressedTexSubImage3DOES :: FunPtr (GLenum -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLenum -> GLsizei -> Ptr a -> IO ())
ptr_glCompressedTexSubImage3DOES = unsafePerformIO $ getCommand "glCompressedTexSubImage3DOES"

-- glCompressedTextureImage1DEXT -----------------------------------------------

glCompressedTextureImage1DEXT
  :: GLuint -- ^ @texture@ of type @Texture@.
  -> GLenum -- ^ @target@ of type @TextureTarget@.
  -> GLint -- ^ @level@ of type @CheckedInt32@.
  -> GLenum -- ^ @internalformat@ of type @TextureInternalFormat@.
  -> GLsizei -- ^ @width@.
  -> GLint -- ^ @border@ of type @CheckedInt32@.
  -> GLsizei -- ^ @imageSize@.
  -> Ptr a -- ^ @bits@ pointing to @imageSize@ elements of type @a@.
  -> IO ()
glCompressedTextureImage1DEXT = dyn_glCompressedTextureImage1DEXT ptr_glCompressedTextureImage1DEXT

foreign import CALLCONV "dynamic" dyn_glCompressedTextureImage1DEXT
  :: FunPtr (GLuint -> GLenum -> GLint -> GLenum -> GLsizei -> GLint -> GLsizei -> Ptr a -> IO ())
  ->         GLuint -> GLenum -> GLint -> GLenum -> GLsizei -> GLint -> GLsizei -> Ptr a -> IO ()

{-# NOINLINE ptr_glCompressedTextureImage1DEXT #-}
ptr_glCompressedTextureImage1DEXT :: FunPtr (GLuint -> GLenum -> GLint -> GLenum -> GLsizei -> GLint -> GLsizei -> Ptr a -> IO ())
ptr_glCompressedTextureImage1DEXT = unsafePerformIO $ getCommand "glCompressedTextureImage1DEXT"

-- glCompressedTextureImage2DEXT -----------------------------------------------

glCompressedTextureImage2DEXT
  :: GLuint -- ^ @texture@ of type @Texture@.
  -> GLenum -- ^ @target@ of type @TextureTarget@.
  -> GLint -- ^ @level@ of type @CheckedInt32@.
  -> GLenum -- ^ @internalformat@ of type @TextureInternalFormat@.
  -> GLsizei -- ^ @width@.
  -> GLsizei -- ^ @height@.
  -> GLint -- ^ @border@ of type @CheckedInt32@.
  -> GLsizei -- ^ @imageSize@.
  -> Ptr a -- ^ @bits@ pointing to @imageSize@ elements of type @a@.
  -> IO ()
glCompressedTextureImage2DEXT = dyn_glCompressedTextureImage2DEXT ptr_glCompressedTextureImage2DEXT

foreign import CALLCONV "dynamic" dyn_glCompressedTextureImage2DEXT
  :: FunPtr (GLuint -> GLenum -> GLint -> GLenum -> GLsizei -> GLsizei -> GLint -> GLsizei -> Ptr a -> IO ())
  ->         GLuint -> GLenum -> GLint -> GLenum -> GLsizei -> GLsizei -> GLint -> GLsizei -> Ptr a -> IO ()

{-# NOINLINE ptr_glCompressedTextureImage2DEXT #-}
ptr_glCompressedTextureImage2DEXT :: FunPtr (GLuint -> GLenum -> GLint -> GLenum -> GLsizei -> GLsizei -> GLint -> GLsizei -> Ptr a -> IO ())
ptr_glCompressedTextureImage2DEXT = unsafePerformIO $ getCommand "glCompressedTextureImage2DEXT"

-- glCompressedTextureImage3DEXT -----------------------------------------------

glCompressedTextureImage3DEXT
  :: GLuint -- ^ @texture@ of type @Texture@.
  -> GLenum -- ^ @target@ of type @TextureTarget@.
  -> GLint -- ^ @level@ of type @CheckedInt32@.
  -> GLenum -- ^ @internalformat@ of type @TextureInternalFormat@.
  -> GLsizei -- ^ @width@.
  -> GLsizei -- ^ @height@.
  -> GLsizei -- ^ @depth@.
  -> GLint -- ^ @border@ of type @CheckedInt32@.
  -> GLsizei -- ^ @imageSize@.
  -> Ptr a -- ^ @bits@ pointing to @imageSize@ elements of type @a@.
  -> IO ()
glCompressedTextureImage3DEXT = dyn_glCompressedTextureImage3DEXT ptr_glCompressedTextureImage3DEXT

foreign import CALLCONV "dynamic" dyn_glCompressedTextureImage3DEXT
  :: FunPtr (GLuint -> GLenum -> GLint -> GLenum -> GLsizei -> GLsizei -> GLsizei -> GLint -> GLsizei -> Ptr a -> IO ())
  ->         GLuint -> GLenum -> GLint -> GLenum -> GLsizei -> GLsizei -> GLsizei -> GLint -> GLsizei -> Ptr a -> IO ()

{-# NOINLINE ptr_glCompressedTextureImage3DEXT #-}
ptr_glCompressedTextureImage3DEXT :: FunPtr (GLuint -> GLenum -> GLint -> GLenum -> GLsizei -> GLsizei -> GLsizei -> GLint -> GLsizei -> Ptr a -> IO ())
ptr_glCompressedTextureImage3DEXT = unsafePerformIO $ getCommand "glCompressedTextureImage3DEXT"

-- glCompressedTextureSubImage1D -----------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glCompressedTexSubImage1D.xhtml OpenGL 4.x>
glCompressedTextureSubImage1D
  :: GLuint -- ^ @texture@.
  -> GLint -- ^ @level@.
  -> GLint -- ^ @xoffset@.
  -> GLsizei -- ^ @width@.
  -> GLenum -- ^ @format@.
  -> GLsizei -- ^ @imageSize@.
  -> Ptr a -- ^ @data@.
  -> IO ()
glCompressedTextureSubImage1D = dyn_glCompressedTextureSubImage1D ptr_glCompressedTextureSubImage1D

foreign import CALLCONV "dynamic" dyn_glCompressedTextureSubImage1D
  :: FunPtr (GLuint -> GLint -> GLint -> GLsizei -> GLenum -> GLsizei -> Ptr a -> IO ())
  ->         GLuint -> GLint -> GLint -> GLsizei -> GLenum -> GLsizei -> Ptr a -> IO ()

{-# NOINLINE ptr_glCompressedTextureSubImage1D #-}
ptr_glCompressedTextureSubImage1D :: FunPtr (GLuint -> GLint -> GLint -> GLsizei -> GLenum -> GLsizei -> Ptr a -> IO ())
ptr_glCompressedTextureSubImage1D = unsafePerformIO $ getCommand "glCompressedTextureSubImage1D"

-- glCompressedTextureSubImage1DEXT --------------------------------------------

glCompressedTextureSubImage1DEXT
  :: GLuint -- ^ @texture@ of type @Texture@.
  -> GLenum -- ^ @target@ of type @TextureTarget@.
  -> GLint -- ^ @level@ of type @CheckedInt32@.
  -> GLint -- ^ @xoffset@ of type @CheckedInt32@.
  -> GLsizei -- ^ @width@.
  -> GLenum -- ^ @format@ of type @PixelFormat@.
  -> GLsizei -- ^ @imageSize@.
  -> Ptr a -- ^ @bits@ pointing to @imageSize@ elements of type @a@.
  -> IO ()
glCompressedTextureSubImage1DEXT = dyn_glCompressedTextureSubImage1DEXT ptr_glCompressedTextureSubImage1DEXT

foreign import CALLCONV "dynamic" dyn_glCompressedTextureSubImage1DEXT
  :: FunPtr (GLuint -> GLenum -> GLint -> GLint -> GLsizei -> GLenum -> GLsizei -> Ptr a -> IO ())
  ->         GLuint -> GLenum -> GLint -> GLint -> GLsizei -> GLenum -> GLsizei -> Ptr a -> IO ()

{-# NOINLINE ptr_glCompressedTextureSubImage1DEXT #-}
ptr_glCompressedTextureSubImage1DEXT :: FunPtr (GLuint -> GLenum -> GLint -> GLint -> GLsizei -> GLenum -> GLsizei -> Ptr a -> IO ())
ptr_glCompressedTextureSubImage1DEXT = unsafePerformIO $ getCommand "glCompressedTextureSubImage1DEXT"

-- glCompressedTextureSubImage2D -----------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glCompressedTexSubImage2D.xhtml OpenGL 4.x>
glCompressedTextureSubImage2D
  :: GLuint -- ^ @texture@.
  -> GLint -- ^ @level@.
  -> GLint -- ^ @xoffset@.
  -> GLint -- ^ @yoffset@.
  -> GLsizei -- ^ @width@.
  -> GLsizei -- ^ @height@.
  -> GLenum -- ^ @format@.
  -> GLsizei -- ^ @imageSize@.
  -> Ptr a -- ^ @data@.
  -> IO ()
glCompressedTextureSubImage2D = dyn_glCompressedTextureSubImage2D ptr_glCompressedTextureSubImage2D

foreign import CALLCONV "dynamic" dyn_glCompressedTextureSubImage2D
  :: FunPtr (GLuint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLenum -> GLsizei -> Ptr a -> IO ())
  ->         GLuint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLenum -> GLsizei -> Ptr a -> IO ()

{-# NOINLINE ptr_glCompressedTextureSubImage2D #-}
ptr_glCompressedTextureSubImage2D :: FunPtr (GLuint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLenum -> GLsizei -> Ptr a -> IO ())
ptr_glCompressedTextureSubImage2D = unsafePerformIO $ getCommand "glCompressedTextureSubImage2D"

-- glCompressedTextureSubImage2DEXT --------------------------------------------

glCompressedTextureSubImage2DEXT
  :: GLuint -- ^ @texture@ of type @Texture@.
  -> GLenum -- ^ @target@ of type @TextureTarget@.
  -> GLint -- ^ @level@ of type @CheckedInt32@.
  -> GLint -- ^ @xoffset@ of type @CheckedInt32@.
  -> GLint -- ^ @yoffset@ of type @CheckedInt32@.
  -> GLsizei -- ^ @width@.
  -> GLsizei -- ^ @height@.
  -> GLenum -- ^ @format@ of type @PixelFormat@.
  -> GLsizei -- ^ @imageSize@.
  -> Ptr a -- ^ @bits@ pointing to @imageSize@ elements of type @a@.
  -> IO ()
glCompressedTextureSubImage2DEXT = dyn_glCompressedTextureSubImage2DEXT ptr_glCompressedTextureSubImage2DEXT

foreign import CALLCONV "dynamic" dyn_glCompressedTextureSubImage2DEXT
  :: FunPtr (GLuint -> GLenum -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLenum -> GLsizei -> Ptr a -> IO ())
  ->         GLuint -> GLenum -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLenum -> GLsizei -> Ptr a -> IO ()

{-# NOINLINE ptr_glCompressedTextureSubImage2DEXT #-}
ptr_glCompressedTextureSubImage2DEXT :: FunPtr (GLuint -> GLenum -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLenum -> GLsizei -> Ptr a -> IO ())
ptr_glCompressedTextureSubImage2DEXT = unsafePerformIO $ getCommand "glCompressedTextureSubImage2DEXT"

-- glCompressedTextureSubImage3D -----------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glCompressedTexSubImage3D.xhtml OpenGL 4.x>
glCompressedTextureSubImage3D
  :: GLuint -- ^ @texture@.
  -> GLint -- ^ @level@.
  -> GLint -- ^ @xoffset@.
  -> GLint -- ^ @yoffset@.
  -> GLint -- ^ @zoffset@.
  -> GLsizei -- ^ @width@.
  -> GLsizei -- ^ @height@.
  -> GLsizei -- ^ @depth@.
  -> GLenum -- ^ @format@.
  -> GLsizei -- ^ @imageSize@.
  -> Ptr a -- ^ @data@.
  -> IO ()
glCompressedTextureSubImage3D = dyn_glCompressedTextureSubImage3D ptr_glCompressedTextureSubImage3D

foreign import CALLCONV "dynamic" dyn_glCompressedTextureSubImage3D
  :: FunPtr (GLuint -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLenum -> GLsizei -> Ptr a -> IO ())
  ->         GLuint -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLenum -> GLsizei -> Ptr a -> IO ()

{-# NOINLINE ptr_glCompressedTextureSubImage3D #-}
ptr_glCompressedTextureSubImage3D :: FunPtr (GLuint -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLenum -> GLsizei -> Ptr a -> IO ())
ptr_glCompressedTextureSubImage3D = unsafePerformIO $ getCommand "glCompressedTextureSubImage3D"

-- glCompressedTextureSubImage3DEXT --------------------------------------------

glCompressedTextureSubImage3DEXT
  :: GLuint -- ^ @texture@ of type @Texture@.
  -> GLenum -- ^ @target@ of type @TextureTarget@.
  -> GLint -- ^ @level@ of type @CheckedInt32@.
  -> GLint -- ^ @xoffset@ of type @CheckedInt32@.
  -> GLint -- ^ @yoffset@ of type @CheckedInt32@.
  -> GLint -- ^ @zoffset@ of type @CheckedInt32@.
  -> GLsizei -- ^ @width@.
  -> GLsizei -- ^ @height@.
  -> GLsizei -- ^ @depth@.
  -> GLenum -- ^ @format@ of type @PixelFormat@.
  -> GLsizei -- ^ @imageSize@.
  -> Ptr a -- ^ @bits@ pointing to @imageSize@ elements of type @a@.
  -> IO ()
glCompressedTextureSubImage3DEXT = dyn_glCompressedTextureSubImage3DEXT ptr_glCompressedTextureSubImage3DEXT

foreign import CALLCONV "dynamic" dyn_glCompressedTextureSubImage3DEXT
  :: FunPtr (GLuint -> GLenum -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLenum -> GLsizei -> Ptr a -> IO ())
  ->         GLuint -> GLenum -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLenum -> GLsizei -> Ptr a -> IO ()

{-# NOINLINE ptr_glCompressedTextureSubImage3DEXT #-}
ptr_glCompressedTextureSubImage3DEXT :: FunPtr (GLuint -> GLenum -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLenum -> GLsizei -> Ptr a -> IO ())
ptr_glCompressedTextureSubImage3DEXT = unsafePerformIO $ getCommand "glCompressedTextureSubImage3DEXT"

-- glConvolutionFilter1D -------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glConvolutionFilter1D.xml OpenGL 2.x>
glConvolutionFilter1D
  :: GLenum -- ^ @target@ of type @ConvolutionTarget@.
  -> GLenum -- ^ @internalformat@ of type @PixelInternalFormat@.
  -> GLsizei -- ^ @width@.
  -> GLenum -- ^ @format@ of type @PixelFormat@.
  -> GLenum -- ^ @type@ of type @PixelType@.
  -> Ptr a -- ^ @image@ pointing to @COMPSIZE(format,type,width)@ elements of type @a@.
  -> IO ()
glConvolutionFilter1D = dyn_glConvolutionFilter1D ptr_glConvolutionFilter1D

foreign import CALLCONV "dynamic" dyn_glConvolutionFilter1D
  :: FunPtr (GLenum -> GLenum -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO ())
  ->         GLenum -> GLenum -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO ()

{-# NOINLINE ptr_glConvolutionFilter1D #-}
ptr_glConvolutionFilter1D :: FunPtr (GLenum -> GLenum -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO ())
ptr_glConvolutionFilter1D = unsafePerformIO $ getCommand "glConvolutionFilter1D"

-- glConvolutionFilter1DEXT ----------------------------------------------------

glConvolutionFilter1DEXT
  :: GLenum -- ^ @target@ of type @ConvolutionTargetEXT@.
  -> GLenum -- ^ @internalformat@ of type @PixelInternalFormat@.
  -> GLsizei -- ^ @width@.
  -> GLenum -- ^ @format@ of type @PixelFormat@.
  -> GLenum -- ^ @type@ of type @PixelType@.
  -> Ptr a -- ^ @image@ pointing to @COMPSIZE(format,type,width)@ elements of type @a@.
  -> IO ()
glConvolutionFilter1DEXT = dyn_glConvolutionFilter1DEXT ptr_glConvolutionFilter1DEXT

foreign import CALLCONV "dynamic" dyn_glConvolutionFilter1DEXT
  :: FunPtr (GLenum -> GLenum -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO ())
  ->         GLenum -> GLenum -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO ()

{-# NOINLINE ptr_glConvolutionFilter1DEXT #-}
ptr_glConvolutionFilter1DEXT :: FunPtr (GLenum -> GLenum -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO ())
ptr_glConvolutionFilter1DEXT = unsafePerformIO $ getCommand "glConvolutionFilter1DEXT"

-- glConvolutionFilter2D -------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glConvolutionFilter2D.xml OpenGL 2.x>
glConvolutionFilter2D
  :: GLenum -- ^ @target@ of type @ConvolutionTarget@.
  -> GLenum -- ^ @internalformat@ of type @PixelInternalFormat@.
  -> GLsizei -- ^ @width@.
  -> GLsizei -- ^ @height@.
  -> GLenum -- ^ @format@ of type @PixelFormat@.
  -> GLenum -- ^ @type@ of type @PixelType@.
  -> Ptr a -- ^ @image@ pointing to @COMPSIZE(format,type,width,height)@ elements of type @a@.
  -> IO ()
glConvolutionFilter2D = dyn_glConvolutionFilter2D ptr_glConvolutionFilter2D

foreign import CALLCONV "dynamic" dyn_glConvolutionFilter2D
  :: FunPtr (GLenum -> GLenum -> GLsizei -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO ())
  ->         GLenum -> GLenum -> GLsizei -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO ()

{-# NOINLINE ptr_glConvolutionFilter2D #-}
ptr_glConvolutionFilter2D :: FunPtr (GLenum -> GLenum -> GLsizei -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO ())
ptr_glConvolutionFilter2D = unsafePerformIO $ getCommand "glConvolutionFilter2D"

-- glConvolutionFilter2DEXT ----------------------------------------------------

glConvolutionFilter2DEXT
  :: GLenum -- ^ @target@ of type @ConvolutionTargetEXT@.
  -> GLenum -- ^ @internalformat@ of type @PixelInternalFormat@.
  -> GLsizei -- ^ @width@.
  -> GLsizei -- ^ @height@.
  -> GLenum -- ^ @format@ of type @PixelFormat@.
  -> GLenum -- ^ @type@ of type @PixelType@.
  -> Ptr a -- ^ @image@ pointing to @COMPSIZE(format,type,width,height)@ elements of type @a@.
  -> IO ()
glConvolutionFilter2DEXT = dyn_glConvolutionFilter2DEXT ptr_glConvolutionFilter2DEXT

foreign import CALLCONV "dynamic" dyn_glConvolutionFilter2DEXT
  :: FunPtr (GLenum -> GLenum -> GLsizei -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO ())
  ->         GLenum -> GLenum -> GLsizei -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO ()

{-# NOINLINE ptr_glConvolutionFilter2DEXT #-}
ptr_glConvolutionFilter2DEXT :: FunPtr (GLenum -> GLenum -> GLsizei -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO ())
ptr_glConvolutionFilter2DEXT = unsafePerformIO $ getCommand "glConvolutionFilter2DEXT"

-- glConvolutionParameterf -----------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glConvolutionParameter.xml OpenGL 2.x>
glConvolutionParameterf
  :: GLenum -- ^ @target@ of type @ConvolutionTarget@.
  -> GLenum -- ^ @pname@ of type @ConvolutionParameter@.
  -> GLfloat -- ^ @params@ of type @CheckedFloat32@.
  -> IO ()
glConvolutionParameterf = dyn_glConvolutionParameterf ptr_glConvolutionParameterf

foreign import CALLCONV "dynamic" dyn_glConvolutionParameterf
  :: FunPtr (GLenum -> GLenum -> GLfloat -> IO ())
  ->         GLenum -> GLenum -> GLfloat -> IO ()

{-# NOINLINE ptr_glConvolutionParameterf #-}
ptr_glConvolutionParameterf :: FunPtr (GLenum -> GLenum -> GLfloat -> IO ())
ptr_glConvolutionParameterf = unsafePerformIO $ getCommand "glConvolutionParameterf"

-- glConvolutionParameterfEXT --------------------------------------------------

glConvolutionParameterfEXT
  :: GLenum -- ^ @target@ of type @ConvolutionTargetEXT@.
  -> GLenum -- ^ @pname@ of type @ConvolutionParameterEXT@.
  -> GLfloat -- ^ @params@ of type @CheckedFloat32@.
  -> IO ()
glConvolutionParameterfEXT = dyn_glConvolutionParameterfEXT ptr_glConvolutionParameterfEXT

foreign import CALLCONV "dynamic" dyn_glConvolutionParameterfEXT
  :: FunPtr (GLenum -> GLenum -> GLfloat -> IO ())
  ->         GLenum -> GLenum -> GLfloat -> IO ()

{-# NOINLINE ptr_glConvolutionParameterfEXT #-}
ptr_glConvolutionParameterfEXT :: FunPtr (GLenum -> GLenum -> GLfloat -> IO ())
ptr_glConvolutionParameterfEXT = unsafePerformIO $ getCommand "glConvolutionParameterfEXT"

-- glConvolutionParameterfv ----------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glConvolutionParameter.xml OpenGL 2.x>
glConvolutionParameterfv
  :: GLenum -- ^ @target@ of type @ConvolutionTarget@.
  -> GLenum -- ^ @pname@ of type @ConvolutionParameter@.
  -> Ptr GLfloat -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @CheckedFloat32@.
  -> IO ()
glConvolutionParameterfv = dyn_glConvolutionParameterfv ptr_glConvolutionParameterfv

foreign import CALLCONV "dynamic" dyn_glConvolutionParameterfv
  :: FunPtr (GLenum -> GLenum -> Ptr GLfloat -> IO ())
  ->         GLenum -> GLenum -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glConvolutionParameterfv #-}
ptr_glConvolutionParameterfv :: FunPtr (GLenum -> GLenum -> Ptr GLfloat -> IO ())
ptr_glConvolutionParameterfv = unsafePerformIO $ getCommand "glConvolutionParameterfv"

-- glConvolutionParameterfvEXT -------------------------------------------------

glConvolutionParameterfvEXT
  :: GLenum -- ^ @target@ of type @ConvolutionTargetEXT@.
  -> GLenum -- ^ @pname@ of type @ConvolutionParameterEXT@.
  -> Ptr GLfloat -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @CheckedFloat32@.
  -> IO ()
glConvolutionParameterfvEXT = dyn_glConvolutionParameterfvEXT ptr_glConvolutionParameterfvEXT

foreign import CALLCONV "dynamic" dyn_glConvolutionParameterfvEXT
  :: FunPtr (GLenum -> GLenum -> Ptr GLfloat -> IO ())
  ->         GLenum -> GLenum -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glConvolutionParameterfvEXT #-}
ptr_glConvolutionParameterfvEXT :: FunPtr (GLenum -> GLenum -> Ptr GLfloat -> IO ())
ptr_glConvolutionParameterfvEXT = unsafePerformIO $ getCommand "glConvolutionParameterfvEXT"

-- glConvolutionParameteri -----------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glConvolutionParameter.xml OpenGL 2.x>
glConvolutionParameteri
  :: GLenum -- ^ @target@ of type @ConvolutionTarget@.
  -> GLenum -- ^ @pname@ of type @ConvolutionParameter@.
  -> GLint -- ^ @params@ of type @CheckedInt32@.
  -> IO ()
glConvolutionParameteri = dyn_glConvolutionParameteri ptr_glConvolutionParameteri

foreign import CALLCONV "dynamic" dyn_glConvolutionParameteri
  :: FunPtr (GLenum -> GLenum -> GLint -> IO ())
  ->         GLenum -> GLenum -> GLint -> IO ()

{-# NOINLINE ptr_glConvolutionParameteri #-}
ptr_glConvolutionParameteri :: FunPtr (GLenum -> GLenum -> GLint -> IO ())
ptr_glConvolutionParameteri = unsafePerformIO $ getCommand "glConvolutionParameteri"

-- glConvolutionParameteriEXT --------------------------------------------------

glConvolutionParameteriEXT
  :: GLenum -- ^ @target@ of type @ConvolutionTargetEXT@.
  -> GLenum -- ^ @pname@ of type @ConvolutionParameterEXT@.
  -> GLint -- ^ @params@ of type @CheckedInt32@.
  -> IO ()
glConvolutionParameteriEXT = dyn_glConvolutionParameteriEXT ptr_glConvolutionParameteriEXT

foreign import CALLCONV "dynamic" dyn_glConvolutionParameteriEXT
  :: FunPtr (GLenum -> GLenum -> GLint -> IO ())
  ->         GLenum -> GLenum -> GLint -> IO ()

{-# NOINLINE ptr_glConvolutionParameteriEXT #-}
ptr_glConvolutionParameteriEXT :: FunPtr (GLenum -> GLenum -> GLint -> IO ())
ptr_glConvolutionParameteriEXT = unsafePerformIO $ getCommand "glConvolutionParameteriEXT"

-- glConvolutionParameteriv ----------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glConvolutionParameter.xml OpenGL 2.x>
glConvolutionParameteriv
  :: GLenum -- ^ @target@ of type @ConvolutionTarget@.
  -> GLenum -- ^ @pname@ of type @ConvolutionParameter@.
  -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @CheckedInt32@.
  -> IO ()
glConvolutionParameteriv = dyn_glConvolutionParameteriv ptr_glConvolutionParameteriv

foreign import CALLCONV "dynamic" dyn_glConvolutionParameteriv
  :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
  ->         GLenum -> GLenum -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glConvolutionParameteriv #-}
ptr_glConvolutionParameteriv :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
ptr_glConvolutionParameteriv = unsafePerformIO $ getCommand "glConvolutionParameteriv"

-- glConvolutionParameterivEXT -------------------------------------------------

glConvolutionParameterivEXT
  :: GLenum -- ^ @target@ of type @ConvolutionTargetEXT@.
  -> GLenum -- ^ @pname@ of type @ConvolutionParameterEXT@.
  -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @CheckedInt32@.
  -> IO ()
glConvolutionParameterivEXT = dyn_glConvolutionParameterivEXT ptr_glConvolutionParameterivEXT

foreign import CALLCONV "dynamic" dyn_glConvolutionParameterivEXT
  :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
  ->         GLenum -> GLenum -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glConvolutionParameterivEXT #-}
ptr_glConvolutionParameterivEXT :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
ptr_glConvolutionParameterivEXT = unsafePerformIO $ getCommand "glConvolutionParameterivEXT"

-- glConvolutionParameterxOES --------------------------------------------------

glConvolutionParameterxOES
  :: GLenum -- ^ @target@.
  -> GLenum -- ^ @pname@.
  -> GLfixed -- ^ @param@.
  -> IO ()
glConvolutionParameterxOES = dyn_glConvolutionParameterxOES ptr_glConvolutionParameterxOES

foreign import CALLCONV "dynamic" dyn_glConvolutionParameterxOES
  :: FunPtr (GLenum -> GLenum -> GLfixed -> IO ())
  ->         GLenum -> GLenum -> GLfixed -> IO ()

{-# NOINLINE ptr_glConvolutionParameterxOES #-}
ptr_glConvolutionParameterxOES :: FunPtr (GLenum -> GLenum -> GLfixed -> IO ())
ptr_glConvolutionParameterxOES = unsafePerformIO $ getCommand "glConvolutionParameterxOES"

-- glConvolutionParameterxvOES -------------------------------------------------

glConvolutionParameterxvOES
  :: GLenum -- ^ @target@.
  -> GLenum -- ^ @pname@.
  -> Ptr GLfixed -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLfixed@.
  -> IO ()
glConvolutionParameterxvOES = dyn_glConvolutionParameterxvOES ptr_glConvolutionParameterxvOES

foreign import CALLCONV "dynamic" dyn_glConvolutionParameterxvOES
  :: FunPtr (GLenum -> GLenum -> Ptr GLfixed -> IO ())
  ->         GLenum -> GLenum -> Ptr GLfixed -> IO ()

{-# NOINLINE ptr_glConvolutionParameterxvOES #-}
ptr_glConvolutionParameterxvOES :: FunPtr (GLenum -> GLenum -> Ptr GLfixed -> IO ())
ptr_glConvolutionParameterxvOES = unsafePerformIO $ getCommand "glConvolutionParameterxvOES"

-- glCopyBufferSubData ---------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glCopyBufferSubData.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glCopyBufferSubData.xhtml OpenGL 4.x>
glCopyBufferSubData
  :: GLenum -- ^ @readTarget@.
  -> GLenum -- ^ @writeTarget@.
  -> GLintptr -- ^ @readOffset@ of type @BufferOffset@.
  -> GLintptr -- ^ @writeOffset@ of type @BufferOffset@.
  -> GLsizeiptr -- ^ @size@ of type @BufferSize@.
  -> IO ()
glCopyBufferSubData = dyn_glCopyBufferSubData ptr_glCopyBufferSubData

foreign import CALLCONV "dynamic" dyn_glCopyBufferSubData
  :: FunPtr (GLenum -> GLenum -> GLintptr -> GLintptr -> GLsizeiptr -> IO ())
  ->         GLenum -> GLenum -> GLintptr -> GLintptr -> GLsizeiptr -> IO ()

{-# NOINLINE ptr_glCopyBufferSubData #-}
ptr_glCopyBufferSubData :: FunPtr (GLenum -> GLenum -> GLintptr -> GLintptr -> GLsizeiptr -> IO ())
ptr_glCopyBufferSubData = unsafePerformIO $ getCommand "glCopyBufferSubData"

-- glCopyBufferSubDataNV -------------------------------------------------------

glCopyBufferSubDataNV
  :: GLenum -- ^ @readTarget@.
  -> GLenum -- ^ @writeTarget@.
  -> GLintptr -- ^ @readOffset@ of type @BufferOffset@.
  -> GLintptr -- ^ @writeOffset@ of type @BufferOffset@.
  -> GLsizeiptr -- ^ @size@ of type @BufferSize@.
  -> IO ()
glCopyBufferSubDataNV = dyn_glCopyBufferSubDataNV ptr_glCopyBufferSubDataNV

foreign import CALLCONV "dynamic" dyn_glCopyBufferSubDataNV
  :: FunPtr (GLenum -> GLenum -> GLintptr -> GLintptr -> GLsizeiptr -> IO ())
  ->         GLenum -> GLenum -> GLintptr -> GLintptr -> GLsizeiptr -> IO ()

{-# NOINLINE ptr_glCopyBufferSubDataNV #-}
ptr_glCopyBufferSubDataNV :: FunPtr (GLenum -> GLenum -> GLintptr -> GLintptr -> GLsizeiptr -> IO ())
ptr_glCopyBufferSubDataNV = unsafePerformIO $ getCommand "glCopyBufferSubDataNV"

-- glCopyColorSubTable ---------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glCopyColorSubTable.xml OpenGL 2.x>
glCopyColorSubTable
  :: GLenum -- ^ @target@ of type @ColorTableTarget@.
  -> GLsizei -- ^ @start@.
  -> GLint -- ^ @x@ of type @WinCoord@.
  -> GLint -- ^ @y@ of type @WinCoord@.
  -> GLsizei -- ^ @width@.
  -> IO ()
glCopyColorSubTable = dyn_glCopyColorSubTable ptr_glCopyColorSubTable

foreign import CALLCONV "dynamic" dyn_glCopyColorSubTable
  :: FunPtr (GLenum -> GLsizei -> GLint -> GLint -> GLsizei -> IO ())
  ->         GLenum -> GLsizei -> GLint -> GLint -> GLsizei -> IO ()

{-# NOINLINE ptr_glCopyColorSubTable #-}
ptr_glCopyColorSubTable :: FunPtr (GLenum -> GLsizei -> GLint -> GLint -> GLsizei -> IO ())
ptr_glCopyColorSubTable = unsafePerformIO $ getCommand "glCopyColorSubTable"

-- glCopyColorSubTableEXT ------------------------------------------------------

glCopyColorSubTableEXT
  :: GLenum -- ^ @target@ of type @ColorTableTarget@.
  -> GLsizei -- ^ @start@.
  -> GLint -- ^ @x@ of type @WinCoord@.
  -> GLint -- ^ @y@ of type @WinCoord@.
  -> GLsizei -- ^ @width@.
  -> IO ()
glCopyColorSubTableEXT = dyn_glCopyColorSubTableEXT ptr_glCopyColorSubTableEXT

foreign import CALLCONV "dynamic" dyn_glCopyColorSubTableEXT
  :: FunPtr (GLenum -> GLsizei -> GLint -> GLint -> GLsizei -> IO ())
  ->         GLenum -> GLsizei -> GLint -> GLint -> GLsizei -> IO ()

{-# NOINLINE ptr_glCopyColorSubTableEXT #-}
ptr_glCopyColorSubTableEXT :: FunPtr (GLenum -> GLsizei -> GLint -> GLint -> GLsizei -> IO ())
ptr_glCopyColorSubTableEXT = unsafePerformIO $ getCommand "glCopyColorSubTableEXT"

-- glCopyColorTable ------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glCopyColorTable.xml OpenGL 2.x>
glCopyColorTable
  :: GLenum -- ^ @target@ of type @ColorTableTarget@.
  -> GLenum -- ^ @internalformat@ of type @PixelInternalFormat@.
  -> GLint -- ^ @x@ of type @WinCoord@.
  -> GLint -- ^ @y@ of type @WinCoord@.
  -> GLsizei -- ^ @width@.
  -> IO ()
glCopyColorTable = dyn_glCopyColorTable ptr_glCopyColorTable

foreign import CALLCONV "dynamic" dyn_glCopyColorTable
  :: FunPtr (GLenum -> GLenum -> GLint -> GLint -> GLsizei -> IO ())
  ->         GLenum -> GLenum -> GLint -> GLint -> GLsizei -> IO ()

{-# NOINLINE ptr_glCopyColorTable #-}
ptr_glCopyColorTable :: FunPtr (GLenum -> GLenum -> GLint -> GLint -> GLsizei -> IO ())
ptr_glCopyColorTable = unsafePerformIO $ getCommand "glCopyColorTable"

-- glCopyColorTableSGI ---------------------------------------------------------

glCopyColorTableSGI
  :: GLenum -- ^ @target@ of type @ColorTableTargetSGI@.
  -> GLenum -- ^ @internalformat@ of type @PixelInternalFormat@.
  -> GLint -- ^ @x@ of type @WinCoord@.
  -> GLint -- ^ @y@ of type @WinCoord@.
  -> GLsizei -- ^ @width@.
  -> IO ()
glCopyColorTableSGI = dyn_glCopyColorTableSGI ptr_glCopyColorTableSGI

foreign import CALLCONV "dynamic" dyn_glCopyColorTableSGI
  :: FunPtr (GLenum -> GLenum -> GLint -> GLint -> GLsizei -> IO ())
  ->         GLenum -> GLenum -> GLint -> GLint -> GLsizei -> IO ()

{-# NOINLINE ptr_glCopyColorTableSGI #-}
ptr_glCopyColorTableSGI :: FunPtr (GLenum -> GLenum -> GLint -> GLint -> GLsizei -> IO ())
ptr_glCopyColorTableSGI = unsafePerformIO $ getCommand "glCopyColorTableSGI"

-- glCopyConvolutionFilter1D ---------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glCopyConvolutionFilter1D.xml OpenGL 2.x>
glCopyConvolutionFilter1D
  :: GLenum -- ^ @target@ of type @ConvolutionTarget@.
  -> GLenum -- ^ @internalformat@ of type @PixelInternalFormat@.
  -> GLint -- ^ @x@ of type @WinCoord@.
  -> GLint -- ^ @y@ of type @WinCoord@.
  -> GLsizei -- ^ @width@.
  -> IO ()
glCopyConvolutionFilter1D = dyn_glCopyConvolutionFilter1D ptr_glCopyConvolutionFilter1D

foreign import CALLCONV "dynamic" dyn_glCopyConvolutionFilter1D
  :: FunPtr (GLenum -> GLenum -> GLint -> GLint -> GLsizei -> IO ())
  ->         GLenum -> GLenum -> GLint -> GLint -> GLsizei -> IO ()

{-# NOINLINE ptr_glCopyConvolutionFilter1D #-}
ptr_glCopyConvolutionFilter1D :: FunPtr (GLenum -> GLenum -> GLint -> GLint -> GLsizei -> IO ())
ptr_glCopyConvolutionFilter1D = unsafePerformIO $ getCommand "glCopyConvolutionFilter1D"

-- glCopyConvolutionFilter1DEXT ------------------------------------------------

glCopyConvolutionFilter1DEXT
  :: GLenum -- ^ @target@ of type @ConvolutionTargetEXT@.
  -> GLenum -- ^ @internalformat@ of type @PixelInternalFormat@.
  -> GLint -- ^ @x@ of type @WinCoord@.
  -> GLint -- ^ @y@ of type @WinCoord@.
  -> GLsizei -- ^ @width@.
  -> IO ()
glCopyConvolutionFilter1DEXT = dyn_glCopyConvolutionFilter1DEXT ptr_glCopyConvolutionFilter1DEXT

foreign import CALLCONV "dynamic" dyn_glCopyConvolutionFilter1DEXT
  :: FunPtr (GLenum -> GLenum -> GLint -> GLint -> GLsizei -> IO ())
  ->         GLenum -> GLenum -> GLint -> GLint -> GLsizei -> IO ()

{-# NOINLINE ptr_glCopyConvolutionFilter1DEXT #-}
ptr_glCopyConvolutionFilter1DEXT :: FunPtr (GLenum -> GLenum -> GLint -> GLint -> GLsizei -> IO ())
ptr_glCopyConvolutionFilter1DEXT = unsafePerformIO $ getCommand "glCopyConvolutionFilter1DEXT"

-- glCopyConvolutionFilter2D ---------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glCopyConvolutionFilter2D.xml OpenGL 2.x>
glCopyConvolutionFilter2D
  :: GLenum -- ^ @target@ of type @ConvolutionTarget@.
  -> GLenum -- ^ @internalformat@ of type @PixelInternalFormat@.
  -> GLint -- ^ @x@ of type @WinCoord@.
  -> GLint -- ^ @y@ of type @WinCoord@.
  -> GLsizei -- ^ @width@.
  -> GLsizei -- ^ @height@.
  -> IO ()
glCopyConvolutionFilter2D = dyn_glCopyConvolutionFilter2D ptr_glCopyConvolutionFilter2D

foreign import CALLCONV "dynamic" dyn_glCopyConvolutionFilter2D
  :: FunPtr (GLenum -> GLenum -> GLint -> GLint -> GLsizei -> GLsizei -> IO ())
  ->         GLenum -> GLenum -> GLint -> GLint -> GLsizei -> GLsizei -> IO ()

{-# NOINLINE ptr_glCopyConvolutionFilter2D #-}
ptr_glCopyConvolutionFilter2D :: FunPtr (GLenum -> GLenum -> GLint -> GLint -> GLsizei -> GLsizei -> IO ())
ptr_glCopyConvolutionFilter2D = unsafePerformIO $ getCommand "glCopyConvolutionFilter2D"

-- glCopyConvolutionFilter2DEXT ------------------------------------------------

glCopyConvolutionFilter2DEXT
  :: GLenum -- ^ @target@ of type @ConvolutionTargetEXT@.
  -> GLenum -- ^ @internalformat@ of type @PixelInternalFormat@.
  -> GLint -- ^ @x@ of type @WinCoord@.
  -> GLint -- ^ @y@ of type @WinCoord@.
  -> GLsizei -- ^ @width@.
  -> GLsizei -- ^ @height@.
  -> IO ()
glCopyConvolutionFilter2DEXT = dyn_glCopyConvolutionFilter2DEXT ptr_glCopyConvolutionFilter2DEXT

foreign import CALLCONV "dynamic" dyn_glCopyConvolutionFilter2DEXT
  :: FunPtr (GLenum -> GLenum -> GLint -> GLint -> GLsizei -> GLsizei -> IO ())
  ->         GLenum -> GLenum -> GLint -> GLint -> GLsizei -> GLsizei -> IO ()

{-# NOINLINE ptr_glCopyConvolutionFilter2DEXT #-}
ptr_glCopyConvolutionFilter2DEXT :: FunPtr (GLenum -> GLenum -> GLint -> GLint -> GLsizei -> GLsizei -> IO ())
ptr_glCopyConvolutionFilter2DEXT = unsafePerformIO $ getCommand "glCopyConvolutionFilter2DEXT"

-- glCopyImageSubData ----------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glCopyImageSubData.xhtml OpenGL 4.x>
glCopyImageSubData
  :: GLuint -- ^ @srcName@.
  -> GLenum -- ^ @srcTarget@.
  -> GLint -- ^ @srcLevel@.
  -> GLint -- ^ @srcX@.
  -> GLint -- ^ @srcY@.
  -> GLint -- ^ @srcZ@.
  -> GLuint -- ^ @dstName@.
  -> GLenum -- ^ @dstTarget@.
  -> GLint -- ^ @dstLevel@.
  -> GLint -- ^ @dstX@.
  -> GLint -- ^ @dstY@.
  -> GLint -- ^ @dstZ@.
  -> GLsizei -- ^ @srcWidth@.
  -> GLsizei -- ^ @srcHeight@.
  -> GLsizei -- ^ @srcDepth@.
  -> IO ()
glCopyImageSubData = dyn_glCopyImageSubData ptr_glCopyImageSubData

foreign import CALLCONV "dynamic" dyn_glCopyImageSubData
  :: FunPtr (GLuint -> GLenum -> GLint -> GLint -> GLint -> GLint -> GLuint -> GLenum -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> IO ())
  ->         GLuint -> GLenum -> GLint -> GLint -> GLint -> GLint -> GLuint -> GLenum -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> IO ()

{-# NOINLINE ptr_glCopyImageSubData #-}
ptr_glCopyImageSubData :: FunPtr (GLuint -> GLenum -> GLint -> GLint -> GLint -> GLint -> GLuint -> GLenum -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> IO ())
ptr_glCopyImageSubData = unsafePerformIO $ getCommand "glCopyImageSubData"

-- glCopyImageSubDataEXT -------------------------------------------------------

glCopyImageSubDataEXT
  :: GLuint -- ^ @srcName@.
  -> GLenum -- ^ @srcTarget@.
  -> GLint -- ^ @srcLevel@.
  -> GLint -- ^ @srcX@.
  -> GLint -- ^ @srcY@.
  -> GLint -- ^ @srcZ@.
  -> GLuint -- ^ @dstName@.
  -> GLenum -- ^ @dstTarget@.
  -> GLint -- ^ @dstLevel@.
  -> GLint -- ^ @dstX@.
  -> GLint -- ^ @dstY@.
  -> GLint -- ^ @dstZ@.
  -> GLsizei -- ^ @srcWidth@.
  -> GLsizei -- ^ @srcHeight@.
  -> GLsizei -- ^ @srcDepth@.
  -> IO ()
glCopyImageSubDataEXT = dyn_glCopyImageSubDataEXT ptr_glCopyImageSubDataEXT

foreign import CALLCONV "dynamic" dyn_glCopyImageSubDataEXT
  :: FunPtr (GLuint -> GLenum -> GLint -> GLint -> GLint -> GLint -> GLuint -> GLenum -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> IO ())
  ->         GLuint -> GLenum -> GLint -> GLint -> GLint -> GLint -> GLuint -> GLenum -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> IO ()

{-# NOINLINE ptr_glCopyImageSubDataEXT #-}
ptr_glCopyImageSubDataEXT :: FunPtr (GLuint -> GLenum -> GLint -> GLint -> GLint -> GLint -> GLuint -> GLenum -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> IO ())
ptr_glCopyImageSubDataEXT = unsafePerformIO $ getCommand "glCopyImageSubDataEXT"

-- glCopyImageSubDataNV --------------------------------------------------------

glCopyImageSubDataNV
  :: GLuint -- ^ @srcName@.
  -> GLenum -- ^ @srcTarget@.
  -> GLint -- ^ @srcLevel@.
  -> GLint -- ^ @srcX@.
  -> GLint -- ^ @srcY@.
  -> GLint -- ^ @srcZ@.
  -> GLuint -- ^ @dstName@.
  -> GLenum -- ^ @dstTarget@.
  -> GLint -- ^ @dstLevel@.
  -> GLint -- ^ @dstX@.
  -> GLint -- ^ @dstY@.
  -> GLint -- ^ @dstZ@.
  -> GLsizei -- ^ @width@.
  -> GLsizei -- ^ @height@.
  -> GLsizei -- ^ @depth@.
  -> IO ()
glCopyImageSubDataNV = dyn_glCopyImageSubDataNV ptr_glCopyImageSubDataNV

foreign import CALLCONV "dynamic" dyn_glCopyImageSubDataNV
  :: FunPtr (GLuint -> GLenum -> GLint -> GLint -> GLint -> GLint -> GLuint -> GLenum -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> IO ())
  ->         GLuint -> GLenum -> GLint -> GLint -> GLint -> GLint -> GLuint -> GLenum -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> IO ()

{-# NOINLINE ptr_glCopyImageSubDataNV #-}
ptr_glCopyImageSubDataNV :: FunPtr (GLuint -> GLenum -> GLint -> GLint -> GLint -> GLint -> GLuint -> GLenum -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> IO ())
ptr_glCopyImageSubDataNV = unsafePerformIO $ getCommand "glCopyImageSubDataNV"

-- glCopyImageSubDataOES -------------------------------------------------------

glCopyImageSubDataOES
  :: GLuint -- ^ @srcName@.
  -> GLenum -- ^ @srcTarget@.
  -> GLint -- ^ @srcLevel@.
  -> GLint -- ^ @srcX@.
  -> GLint -- ^ @srcY@.
  -> GLint -- ^ @srcZ@.
  -> GLuint -- ^ @dstName@.
  -> GLenum -- ^ @dstTarget@.
  -> GLint -- ^ @dstLevel@.
  -> GLint -- ^ @dstX@.
  -> GLint -- ^ @dstY@.
  -> GLint -- ^ @dstZ@.
  -> GLsizei -- ^ @srcWidth@.
  -> GLsizei -- ^ @srcHeight@.
  -> GLsizei -- ^ @srcDepth@.
  -> IO ()
glCopyImageSubDataOES = dyn_glCopyImageSubDataOES ptr_glCopyImageSubDataOES

foreign import CALLCONV "dynamic" dyn_glCopyImageSubDataOES
  :: FunPtr (GLuint -> GLenum -> GLint -> GLint -> GLint -> GLint -> GLuint -> GLenum -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> IO ())
  ->         GLuint -> GLenum -> GLint -> GLint -> GLint -> GLint -> GLuint -> GLenum -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> IO ()

{-# NOINLINE ptr_glCopyImageSubDataOES #-}
ptr_glCopyImageSubDataOES :: FunPtr (GLuint -> GLenum -> GLint -> GLint -> GLint -> GLint -> GLuint -> GLenum -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> IO ())
ptr_glCopyImageSubDataOES = unsafePerformIO $ getCommand "glCopyImageSubDataOES"

-- glCopyMultiTexImage1DEXT ----------------------------------------------------

glCopyMultiTexImage1DEXT
  :: GLenum -- ^ @texunit@ of type @TextureUnit@.
  -> GLenum -- ^ @target@ of type @TextureTarget@.
  -> GLint -- ^ @level@ of type @CheckedInt32@.
  -> GLenum -- ^ @internalformat@ of type @TextureInternalFormat@.
  -> GLint -- ^ @x@ of type @WinCoord@.
  -> GLint -- ^ @y@ of type @WinCoord@.
  -> GLsizei -- ^ @width@.
  -> GLint -- ^ @border@ of type @CheckedInt32@.
  -> IO ()
glCopyMultiTexImage1DEXT = dyn_glCopyMultiTexImage1DEXT ptr_glCopyMultiTexImage1DEXT

foreign import CALLCONV "dynamic" dyn_glCopyMultiTexImage1DEXT
  :: FunPtr (GLenum -> GLenum -> GLint -> GLenum -> GLint -> GLint -> GLsizei -> GLint -> IO ())
  ->         GLenum -> GLenum -> GLint -> GLenum -> GLint -> GLint -> GLsizei -> GLint -> IO ()

{-# NOINLINE ptr_glCopyMultiTexImage1DEXT #-}
ptr_glCopyMultiTexImage1DEXT :: FunPtr (GLenum -> GLenum -> GLint -> GLenum -> GLint -> GLint -> GLsizei -> GLint -> IO ())
ptr_glCopyMultiTexImage1DEXT = unsafePerformIO $ getCommand "glCopyMultiTexImage1DEXT"

-- glCopyMultiTexImage2DEXT ----------------------------------------------------

glCopyMultiTexImage2DEXT
  :: GLenum -- ^ @texunit@ of type @TextureUnit@.
  -> GLenum -- ^ @target@ of type @TextureTarget@.
  -> GLint -- ^ @level@ of type @CheckedInt32@.
  -> GLenum -- ^ @internalformat@ of type @TextureInternalFormat@.
  -> GLint -- ^ @x@ of type @WinCoord@.
  -> GLint -- ^ @y@ of type @WinCoord@.
  -> GLsizei -- ^ @width@.
  -> GLsizei -- ^ @height@.
  -> GLint -- ^ @border@ of type @CheckedInt32@.
  -> IO ()
glCopyMultiTexImage2DEXT = dyn_glCopyMultiTexImage2DEXT ptr_glCopyMultiTexImage2DEXT

foreign import CALLCONV "dynamic" dyn_glCopyMultiTexImage2DEXT
  :: FunPtr (GLenum -> GLenum -> GLint -> GLenum -> GLint -> GLint -> GLsizei -> GLsizei -> GLint -> IO ())
  ->         GLenum -> GLenum -> GLint -> GLenum -> GLint -> GLint -> GLsizei -> GLsizei -> GLint -> IO ()

{-# NOINLINE ptr_glCopyMultiTexImage2DEXT #-}
ptr_glCopyMultiTexImage2DEXT :: FunPtr (GLenum -> GLenum -> GLint -> GLenum -> GLint -> GLint -> GLsizei -> GLsizei -> GLint -> IO ())
ptr_glCopyMultiTexImage2DEXT = unsafePerformIO $ getCommand "glCopyMultiTexImage2DEXT"

-- glCopyMultiTexSubImage1DEXT -------------------------------------------------

glCopyMultiTexSubImage1DEXT
  :: GLenum -- ^ @texunit@ of type @TextureUnit@.
  -> GLenum -- ^ @target@ of type @TextureTarget@.
  -> GLint -- ^ @level@ of type @CheckedInt32@.
  -> GLint -- ^ @xoffset@ of type @CheckedInt32@.
  -> GLint -- ^ @x@ of type @WinCoord@.
  -> GLint -- ^ @y@ of type @WinCoord@.
  -> GLsizei -- ^ @width@.
  -> IO ()
glCopyMultiTexSubImage1DEXT = dyn_glCopyMultiTexSubImage1DEXT ptr_glCopyMultiTexSubImage1DEXT

foreign import CALLCONV "dynamic" dyn_glCopyMultiTexSubImage1DEXT
  :: FunPtr (GLenum -> GLenum -> GLint -> GLint -> GLint -> GLint -> GLsizei -> IO ())
  ->         GLenum -> GLenum -> GLint -> GLint -> GLint -> GLint -> GLsizei -> IO ()

{-# NOINLINE ptr_glCopyMultiTexSubImage1DEXT #-}
ptr_glCopyMultiTexSubImage1DEXT :: FunPtr (GLenum -> GLenum -> GLint -> GLint -> GLint -> GLint -> GLsizei -> IO ())
ptr_glCopyMultiTexSubImage1DEXT = unsafePerformIO $ getCommand "glCopyMultiTexSubImage1DEXT"

-- glCopyMultiTexSubImage2DEXT -------------------------------------------------

glCopyMultiTexSubImage2DEXT
  :: GLenum -- ^ @texunit@ of type @TextureUnit@.
  -> GLenum -- ^ @target@ of type @TextureTarget@.
  -> GLint -- ^ @level@ of type @CheckedInt32@.
  -> GLint -- ^ @xoffset@ of type @CheckedInt32@.
  -> GLint -- ^ @yoffset@ of type @CheckedInt32@.
  -> GLint -- ^ @x@ of type @WinCoord@.
  -> GLint -- ^ @y@ of type @WinCoord@.
  -> GLsizei -- ^ @width@.
  -> GLsizei -- ^ @height@.
  -> IO ()
glCopyMultiTexSubImage2DEXT = dyn_glCopyMultiTexSubImage2DEXT ptr_glCopyMultiTexSubImage2DEXT

foreign import CALLCONV "dynamic" dyn_glCopyMultiTexSubImage2DEXT
  :: FunPtr (GLenum -> GLenum -> GLint -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> IO ())
  ->         GLenum -> GLenum -> GLint -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> IO ()

{-# NOINLINE ptr_glCopyMultiTexSubImage2DEXT #-}
ptr_glCopyMultiTexSubImage2DEXT :: FunPtr (GLenum -> GLenum -> GLint -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> IO ())
ptr_glCopyMultiTexSubImage2DEXT = unsafePerformIO $ getCommand "glCopyMultiTexSubImage2DEXT"

-- glCopyMultiTexSubImage3DEXT -------------------------------------------------

glCopyMultiTexSubImage3DEXT
  :: GLenum -- ^ @texunit@ of type @TextureUnit@.
  -> GLenum -- ^ @target@ of type @TextureTarget@.
  -> GLint -- ^ @level@ of type @CheckedInt32@.
  -> GLint -- ^ @xoffset@ of type @CheckedInt32@.
  -> GLint -- ^ @yoffset@ of type @CheckedInt32@.
  -> GLint -- ^ @zoffset@ of type @CheckedInt32@.
  -> GLint -- ^ @x@ of type @WinCoord@.
  -> GLint -- ^ @y@ of type @WinCoord@.
  -> GLsizei -- ^ @width@.
  -> GLsizei -- ^ @height@.
  -> IO ()
glCopyMultiTexSubImage3DEXT = dyn_glCopyMultiTexSubImage3DEXT ptr_glCopyMultiTexSubImage3DEXT

foreign import CALLCONV "dynamic" dyn_glCopyMultiTexSubImage3DEXT
  :: FunPtr (GLenum -> GLenum -> GLint -> GLint -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> IO ())
  ->         GLenum -> GLenum -> GLint -> GLint -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> IO ()

{-# NOINLINE ptr_glCopyMultiTexSubImage3DEXT #-}
ptr_glCopyMultiTexSubImage3DEXT :: FunPtr (GLenum -> GLenum -> GLint -> GLint -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> IO ())
ptr_glCopyMultiTexSubImage3DEXT = unsafePerformIO $ getCommand "glCopyMultiTexSubImage3DEXT"

-- glCopyNamedBufferSubData ----------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glCopyBufferSubData.xhtml OpenGL 4.x>
glCopyNamedBufferSubData
  :: GLuint -- ^ @readBuffer@.
  -> GLuint -- ^ @writeBuffer@.
  -> GLintptr -- ^ @readOffset@.
  -> GLintptr -- ^ @writeOffset@.
  -> GLsizeiptr -- ^ @size@ of type @BufferSize@.
  -> IO ()
glCopyNamedBufferSubData = dyn_glCopyNamedBufferSubData ptr_glCopyNamedBufferSubData

foreign import CALLCONV "dynamic" dyn_glCopyNamedBufferSubData
  :: FunPtr (GLuint -> GLuint -> GLintptr -> GLintptr -> GLsizeiptr -> IO ())
  ->         GLuint -> GLuint -> GLintptr -> GLintptr -> GLsizeiptr -> IO ()

{-# NOINLINE ptr_glCopyNamedBufferSubData #-}
ptr_glCopyNamedBufferSubData :: FunPtr (GLuint -> GLuint -> GLintptr -> GLintptr -> GLsizeiptr -> IO ())
ptr_glCopyNamedBufferSubData = unsafePerformIO $ getCommand "glCopyNamedBufferSubData"

-- glCopyPathNV ----------------------------------------------------------------

glCopyPathNV
  :: GLuint -- ^ @resultPath@ of type @Path@.
  -> GLuint -- ^ @srcPath@ of type @Path@.
  -> IO ()
glCopyPathNV = dyn_glCopyPathNV ptr_glCopyPathNV

foreign import CALLCONV "dynamic" dyn_glCopyPathNV
  :: FunPtr (GLuint -> GLuint -> IO ())
  ->         GLuint -> GLuint -> IO ()

{-# NOINLINE ptr_glCopyPathNV #-}
ptr_glCopyPathNV :: FunPtr (GLuint -> GLuint -> IO ())
ptr_glCopyPathNV = unsafePerformIO $ getCommand "glCopyPathNV"

-- glCopyPixels ----------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glCopyPixels.xml OpenGL 2.x>
glCopyPixels
  :: GLint -- ^ @x@ of type @WinCoord@.
  -> GLint -- ^ @y@ of type @WinCoord@.
  -> GLsizei -- ^ @width@.
  -> GLsizei -- ^ @height@.
  -> GLenum -- ^ @type@ of type @PixelCopyType@.
  -> IO ()
glCopyPixels = dyn_glCopyPixels ptr_glCopyPixels

foreign import CALLCONV "dynamic" dyn_glCopyPixels
  :: FunPtr (GLint -> GLint -> GLsizei -> GLsizei -> GLenum -> IO ())
  ->         GLint -> GLint -> GLsizei -> GLsizei -> GLenum -> IO ()

{-# NOINLINE ptr_glCopyPixels #-}
ptr_glCopyPixels :: FunPtr (GLint -> GLint -> GLsizei -> GLsizei -> GLenum -> IO ())
ptr_glCopyPixels = unsafePerformIO $ getCommand "glCopyPixels"

-- glCopyTexImage1D ------------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glCopyTexImage1D.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glCopyTexImage1D.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glCopyTexImage1D.xhtml OpenGL 4.x>
glCopyTexImage1D
  :: GLenum -- ^ @target@ of type @TextureTarget@.
  -> GLint -- ^ @level@ of type @CheckedInt32@.
  -> GLenum -- ^ @internalformat@ of type @PixelInternalFormat@.
  -> GLint -- ^ @x@ of type @WinCoord@.
  -> GLint -- ^ @y@ of type @WinCoord@.
  -> GLsizei -- ^ @width@.
  -> GLint -- ^ @border@ of type @CheckedInt32@.
  -> IO ()
glCopyTexImage1D = dyn_glCopyTexImage1D ptr_glCopyTexImage1D

foreign import CALLCONV "dynamic" dyn_glCopyTexImage1D
  :: FunPtr (GLenum -> GLint -> GLenum -> GLint -> GLint -> GLsizei -> GLint -> IO ())
  ->         GLenum -> GLint -> GLenum -> GLint -> GLint -> GLsizei -> GLint -> IO ()

{-# NOINLINE ptr_glCopyTexImage1D #-}
ptr_glCopyTexImage1D :: FunPtr (GLenum -> GLint -> GLenum -> GLint -> GLint -> GLsizei -> GLint -> IO ())
ptr_glCopyTexImage1D = unsafePerformIO $ getCommand "glCopyTexImage1D"

-- glCopyTexImage1DEXT ---------------------------------------------------------

glCopyTexImage1DEXT
  :: GLenum -- ^ @target@ of type @TextureTarget@.
  -> GLint -- ^ @level@ of type @CheckedInt32@.
  -> GLenum -- ^ @internalformat@ of type @PixelInternalFormat@.
  -> GLint -- ^ @x@ of type @WinCoord@.
  -> GLint -- ^ @y@ of type @WinCoord@.
  -> GLsizei -- ^ @width@.
  -> GLint -- ^ @border@ of type @CheckedInt32@.
  -> IO ()
glCopyTexImage1DEXT = dyn_glCopyTexImage1DEXT ptr_glCopyTexImage1DEXT

foreign import CALLCONV "dynamic" dyn_glCopyTexImage1DEXT
  :: FunPtr (GLenum -> GLint -> GLenum -> GLint -> GLint -> GLsizei -> GLint -> IO ())
  ->         GLenum -> GLint -> GLenum -> GLint -> GLint -> GLsizei -> GLint -> IO ()

{-# NOINLINE ptr_glCopyTexImage1DEXT #-}
ptr_glCopyTexImage1DEXT :: FunPtr (GLenum -> GLint -> GLenum -> GLint -> GLint -> GLsizei -> GLint -> IO ())
ptr_glCopyTexImage1DEXT = unsafePerformIO $ getCommand "glCopyTexImage1DEXT"

-- glCopyTexImage2D ------------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glCopyTexImage2D.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glCopyTexImage2D.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glCopyTexImage2D.xhtml OpenGL 4.x>
glCopyTexImage2D
  :: GLenum -- ^ @target@ of type @TextureTarget@.
  -> GLint -- ^ @level@ of type @CheckedInt32@.
  -> GLenum -- ^ @internalformat@ of type @PixelInternalFormat@.
  -> GLint -- ^ @x@ of type @WinCoord@.
  -> GLint -- ^ @y@ of type @WinCoord@.
  -> GLsizei -- ^ @width@.
  -> GLsizei -- ^ @height@.
  -> GLint -- ^ @border@ of type @CheckedInt32@.
  -> IO ()
glCopyTexImage2D = dyn_glCopyTexImage2D ptr_glCopyTexImage2D

foreign import CALLCONV "dynamic" dyn_glCopyTexImage2D
  :: FunPtr (GLenum -> GLint -> GLenum -> GLint -> GLint -> GLsizei -> GLsizei -> GLint -> IO ())
  ->         GLenum -> GLint -> GLenum -> GLint -> GLint -> GLsizei -> GLsizei -> GLint -> IO ()

{-# NOINLINE ptr_glCopyTexImage2D #-}
ptr_glCopyTexImage2D :: FunPtr (GLenum -> GLint -> GLenum -> GLint -> GLint -> GLsizei -> GLsizei -> GLint -> IO ())
ptr_glCopyTexImage2D = unsafePerformIO $ getCommand "glCopyTexImage2D"

-- glCopyTexImage2DEXT ---------------------------------------------------------

glCopyTexImage2DEXT
  :: GLenum -- ^ @target@ of type @TextureTarget@.
  -> GLint -- ^ @level@ of type @CheckedInt32@.
  -> GLenum -- ^ @internalformat@ of type @PixelInternalFormat@.
  -> GLint -- ^ @x@ of type @WinCoord@.
  -> GLint -- ^ @y@ of type @WinCoord@.
  -> GLsizei -- ^ @width@.
  -> GLsizei -- ^ @height@.
  -> GLint -- ^ @border@ of type @CheckedInt32@.
  -> IO ()
glCopyTexImage2DEXT = dyn_glCopyTexImage2DEXT ptr_glCopyTexImage2DEXT

foreign import CALLCONV "dynamic" dyn_glCopyTexImage2DEXT
  :: FunPtr (GLenum -> GLint -> GLenum -> GLint -> GLint -> GLsizei -> GLsizei -> GLint -> IO ())
  ->         GLenum -> GLint -> GLenum -> GLint -> GLint -> GLsizei -> GLsizei -> GLint -> IO ()

{-# NOINLINE ptr_glCopyTexImage2DEXT #-}
ptr_glCopyTexImage2DEXT :: FunPtr (GLenum -> GLint -> GLenum -> GLint -> GLint -> GLsizei -> GLsizei -> GLint -> IO ())
ptr_glCopyTexImage2DEXT = unsafePerformIO $ getCommand "glCopyTexImage2DEXT"

-- glCopyTexSubImage1D ---------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glCopyTexSubImage1D.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glCopyTexSubImage1D.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glCopyTexSubImage1D.xhtml OpenGL 4.x>
glCopyTexSubImage1D
  :: GLenum -- ^ @target@ of type @TextureTarget@.
  -> GLint -- ^ @level@ of type @CheckedInt32@.
  -> GLint -- ^ @xoffset@ of type @CheckedInt32@.
  -> GLint -- ^ @x@ of type @WinCoord@.
  -> GLint -- ^ @y@ of type @WinCoord@.
  -> GLsizei -- ^ @width@.
  -> IO ()
glCopyTexSubImage1D = dyn_glCopyTexSubImage1D ptr_glCopyTexSubImage1D

foreign import CALLCONV "dynamic" dyn_glCopyTexSubImage1D
  :: FunPtr (GLenum -> GLint -> GLint -> GLint -> GLint -> GLsizei -> IO ())
  ->         GLenum -> GLint -> GLint -> GLint -> GLint -> GLsizei -> IO ()

{-# NOINLINE ptr_glCopyTexSubImage1D #-}
ptr_glCopyTexSubImage1D :: FunPtr (GLenum -> GLint -> GLint -> GLint -> GLint -> GLsizei -> IO ())
ptr_glCopyTexSubImage1D = unsafePerformIO $ getCommand "glCopyTexSubImage1D"

-- glCopyTexSubImage1DEXT ------------------------------------------------------

glCopyTexSubImage1DEXT
  :: GLenum -- ^ @target@ of type @TextureTarget@.
  -> GLint -- ^ @level@ of type @CheckedInt32@.
  -> GLint -- ^ @xoffset@ of type @CheckedInt32@.
  -> GLint -- ^ @x@ of type @WinCoord@.
  -> GLint -- ^ @y@ of type @WinCoord@.
  -> GLsizei -- ^ @width@.
  -> IO ()
glCopyTexSubImage1DEXT = dyn_glCopyTexSubImage1DEXT ptr_glCopyTexSubImage1DEXT

foreign import CALLCONV "dynamic" dyn_glCopyTexSubImage1DEXT
  :: FunPtr (GLenum -> GLint -> GLint -> GLint -> GLint -> GLsizei -> IO ())
  ->         GLenum -> GLint -> GLint -> GLint -> GLint -> GLsizei -> IO ()

{-# NOINLINE ptr_glCopyTexSubImage1DEXT #-}
ptr_glCopyTexSubImage1DEXT :: FunPtr (GLenum -> GLint -> GLint -> GLint -> GLint -> GLsizei -> IO ())
ptr_glCopyTexSubImage1DEXT = unsafePerformIO $ getCommand "glCopyTexSubImage1DEXT"

-- glCopyTexSubImage2D ---------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glCopyTexSubImage2D.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glCopyTexSubImage2D.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glCopyTexSubImage2D.xhtml OpenGL 4.x>
glCopyTexSubImage2D
  :: GLenum -- ^ @target@ of type @TextureTarget@.
  -> GLint -- ^ @level@ of type @CheckedInt32@.
  -> GLint -- ^ @xoffset@ of type @CheckedInt32@.
  -> GLint -- ^ @yoffset@ of type @CheckedInt32@.
  -> GLint -- ^ @x@ of type @WinCoord@.
  -> GLint -- ^ @y@ of type @WinCoord@.
  -> GLsizei -- ^ @width@.
  -> GLsizei -- ^ @height@.
  -> IO ()
glCopyTexSubImage2D = dyn_glCopyTexSubImage2D ptr_glCopyTexSubImage2D

foreign import CALLCONV "dynamic" dyn_glCopyTexSubImage2D
  :: FunPtr (GLenum -> GLint -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> IO ())
  ->         GLenum -> GLint -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> IO ()

{-# NOINLINE ptr_glCopyTexSubImage2D #-}
ptr_glCopyTexSubImage2D :: FunPtr (GLenum -> GLint -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> IO ())
ptr_glCopyTexSubImage2D = unsafePerformIO $ getCommand "glCopyTexSubImage2D"

-- glCopyTexSubImage2DEXT ------------------------------------------------------

glCopyTexSubImage2DEXT
  :: GLenum -- ^ @target@ of type @TextureTarget@.
  -> GLint -- ^ @level@ of type @CheckedInt32@.
  -> GLint -- ^ @xoffset@ of type @CheckedInt32@.
  -> GLint -- ^ @yoffset@ of type @CheckedInt32@.
  -> GLint -- ^ @x@ of type @WinCoord@.
  -> GLint -- ^ @y@ of type @WinCoord@.
  -> GLsizei -- ^ @width@.
  -> GLsizei -- ^ @height@.
  -> IO ()
glCopyTexSubImage2DEXT = dyn_glCopyTexSubImage2DEXT ptr_glCopyTexSubImage2DEXT

foreign import CALLCONV "dynamic" dyn_glCopyTexSubImage2DEXT
  :: FunPtr (GLenum -> GLint -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> IO ())
  ->         GLenum -> GLint -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> IO ()

{-# NOINLINE ptr_glCopyTexSubImage2DEXT #-}
ptr_glCopyTexSubImage2DEXT :: FunPtr (GLenum -> GLint -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> IO ())
ptr_glCopyTexSubImage2DEXT = unsafePerformIO $ getCommand "glCopyTexSubImage2DEXT"

-- glCopyTexSubImage3D ---------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glCopyTexSubImage3D.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glCopyTexSubImage3D.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glCopyTexSubImage3D.xhtml OpenGL 4.x>
glCopyTexSubImage3D
  :: GLenum -- ^ @target@ of type @TextureTarget@.
  -> GLint -- ^ @level@ of type @CheckedInt32@.
  -> GLint -- ^ @xoffset@ of type @CheckedInt32@.
  -> GLint -- ^ @yoffset@ of type @CheckedInt32@.
  -> GLint -- ^ @zoffset@ of type @CheckedInt32@.
  -> GLint -- ^ @x@ of type @WinCoord@.
  -> GLint -- ^ @y@ of type @WinCoord@.
  -> GLsizei -- ^ @width@.
  -> GLsizei -- ^ @height@.
  -> IO ()
glCopyTexSubImage3D = dyn_glCopyTexSubImage3D ptr_glCopyTexSubImage3D

foreign import CALLCONV "dynamic" dyn_glCopyTexSubImage3D
  :: FunPtr (GLenum -> GLint -> GLint -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> IO ())
  ->         GLenum -> GLint -> GLint -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> IO ()

{-# NOINLINE ptr_glCopyTexSubImage3D #-}
ptr_glCopyTexSubImage3D :: FunPtr (GLenum -> GLint -> GLint -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> IO ())
ptr_glCopyTexSubImage3D = unsafePerformIO $ getCommand "glCopyTexSubImage3D"

-- glCopyTexSubImage3DEXT ------------------------------------------------------

glCopyTexSubImage3DEXT
  :: GLenum -- ^ @target@ of type @TextureTarget@.
  -> GLint -- ^ @level@ of type @CheckedInt32@.
  -> GLint -- ^ @xoffset@ of type @CheckedInt32@.
  -> GLint -- ^ @yoffset@ of type @CheckedInt32@.
  -> GLint -- ^ @zoffset@ of type @CheckedInt32@.
  -> GLint -- ^ @x@ of type @WinCoord@.
  -> GLint -- ^ @y@ of type @WinCoord@.
  -> GLsizei -- ^ @width@.
  -> GLsizei -- ^ @height@.
  -> IO ()
glCopyTexSubImage3DEXT = dyn_glCopyTexSubImage3DEXT ptr_glCopyTexSubImage3DEXT

foreign import CALLCONV "dynamic" dyn_glCopyTexSubImage3DEXT
  :: FunPtr (GLenum -> GLint -> GLint -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> IO ())
  ->         GLenum -> GLint -> GLint -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> IO ()

{-# NOINLINE ptr_glCopyTexSubImage3DEXT #-}
ptr_glCopyTexSubImage3DEXT :: FunPtr (GLenum -> GLint -> GLint -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> IO ())
ptr_glCopyTexSubImage3DEXT = unsafePerformIO $ getCommand "glCopyTexSubImage3DEXT"

-- glCopyTexSubImage3DOES ------------------------------------------------------

glCopyTexSubImage3DOES
  :: GLenum -- ^ @target@.
  -> GLint -- ^ @level@.
  -> GLint -- ^ @xoffset@.
  -> GLint -- ^ @yoffset@.
  -> GLint -- ^ @zoffset@.
  -> GLint -- ^ @x@.
  -> GLint -- ^ @y@.
  -> GLsizei -- ^ @width@.
  -> GLsizei -- ^ @height@.
  -> IO ()
glCopyTexSubImage3DOES = dyn_glCopyTexSubImage3DOES ptr_glCopyTexSubImage3DOES

foreign import CALLCONV "dynamic" dyn_glCopyTexSubImage3DOES
  :: FunPtr (GLenum -> GLint -> GLint -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> IO ())
  ->         GLenum -> GLint -> GLint -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> IO ()

{-# NOINLINE ptr_glCopyTexSubImage3DOES #-}
ptr_glCopyTexSubImage3DOES :: FunPtr (GLenum -> GLint -> GLint -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> IO ())
ptr_glCopyTexSubImage3DOES = unsafePerformIO $ getCommand "glCopyTexSubImage3DOES"

-- glCopyTextureImage1DEXT -----------------------------------------------------

glCopyTextureImage1DEXT
  :: GLuint -- ^ @texture@ of type @Texture@.
  -> GLenum -- ^ @target@ of type @TextureTarget@.
  -> GLint -- ^ @level@ of type @CheckedInt32@.
  -> GLenum -- ^ @internalformat@ of type @TextureInternalFormat@.
  -> GLint -- ^ @x@ of type @WinCoord@.
  -> GLint -- ^ @y@ of type @WinCoord@.
  -> GLsizei -- ^ @width@.
  -> GLint -- ^ @border@ of type @CheckedInt32@.
  -> IO ()
glCopyTextureImage1DEXT = dyn_glCopyTextureImage1DEXT ptr_glCopyTextureImage1DEXT

foreign import CALLCONV "dynamic" dyn_glCopyTextureImage1DEXT
  :: FunPtr (GLuint -> GLenum -> GLint -> GLenum -> GLint -> GLint -> GLsizei -> GLint -> IO ())
  ->         GLuint -> GLenum -> GLint -> GLenum -> GLint -> GLint -> GLsizei -> GLint -> IO ()

{-# NOINLINE ptr_glCopyTextureImage1DEXT #-}
ptr_glCopyTextureImage1DEXT :: FunPtr (GLuint -> GLenum -> GLint -> GLenum -> GLint -> GLint -> GLsizei -> GLint -> IO ())
ptr_glCopyTextureImage1DEXT = unsafePerformIO $ getCommand "glCopyTextureImage1DEXT"

-- glCopyTextureImage2DEXT -----------------------------------------------------

glCopyTextureImage2DEXT
  :: GLuint -- ^ @texture@ of type @Texture@.
  -> GLenum -- ^ @target@ of type @TextureTarget@.
  -> GLint -- ^ @level@ of type @CheckedInt32@.
  -> GLenum -- ^ @internalformat@ of type @TextureInternalFormat@.
  -> GLint -- ^ @x@ of type @WinCoord@.
  -> GLint -- ^ @y@ of type @WinCoord@.
  -> GLsizei -- ^ @width@.
  -> GLsizei -- ^ @height@.
  -> GLint -- ^ @border@ of type @CheckedInt32@.
  -> IO ()
glCopyTextureImage2DEXT = dyn_glCopyTextureImage2DEXT ptr_glCopyTextureImage2DEXT

foreign import CALLCONV "dynamic" dyn_glCopyTextureImage2DEXT
  :: FunPtr (GLuint -> GLenum -> GLint -> GLenum -> GLint -> GLint -> GLsizei -> GLsizei -> GLint -> IO ())
  ->         GLuint -> GLenum -> GLint -> GLenum -> GLint -> GLint -> GLsizei -> GLsizei -> GLint -> IO ()

{-# NOINLINE ptr_glCopyTextureImage2DEXT #-}
ptr_glCopyTextureImage2DEXT :: FunPtr (GLuint -> GLenum -> GLint -> GLenum -> GLint -> GLint -> GLsizei -> GLsizei -> GLint -> IO ())
ptr_glCopyTextureImage2DEXT = unsafePerformIO $ getCommand "glCopyTextureImage2DEXT"

-- glCopyTextureLevelsAPPLE ----------------------------------------------------

glCopyTextureLevelsAPPLE
  :: GLuint -- ^ @destinationTexture@.
  -> GLuint -- ^ @sourceTexture@.
  -> GLint -- ^ @sourceBaseLevel@.
  -> GLsizei -- ^ @sourceLevelCount@.
  -> IO ()
glCopyTextureLevelsAPPLE = dyn_glCopyTextureLevelsAPPLE ptr_glCopyTextureLevelsAPPLE

foreign import CALLCONV "dynamic" dyn_glCopyTextureLevelsAPPLE
  :: FunPtr (GLuint -> GLuint -> GLint -> GLsizei -> IO ())
  ->         GLuint -> GLuint -> GLint -> GLsizei -> IO ()

{-# NOINLINE ptr_glCopyTextureLevelsAPPLE #-}
ptr_glCopyTextureLevelsAPPLE :: FunPtr (GLuint -> GLuint -> GLint -> GLsizei -> IO ())
ptr_glCopyTextureLevelsAPPLE = unsafePerformIO $ getCommand "glCopyTextureLevelsAPPLE"

-- glCopyTextureSubImage1D -----------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glCopyTexSubImage1D.xhtml OpenGL 4.x>
glCopyTextureSubImage1D
  :: GLuint -- ^ @texture@.
  -> GLint -- ^ @level@.
  -> GLint -- ^ @xoffset@.
  -> GLint -- ^ @x@.
  -> GLint -- ^ @y@.
  -> GLsizei -- ^ @width@.
  -> IO ()
glCopyTextureSubImage1D = dyn_glCopyTextureSubImage1D ptr_glCopyTextureSubImage1D

foreign import CALLCONV "dynamic" dyn_glCopyTextureSubImage1D
  :: FunPtr (GLuint -> GLint -> GLint -> GLint -> GLint -> GLsizei -> IO ())
  ->         GLuint -> GLint -> GLint -> GLint -> GLint -> GLsizei -> IO ()

{-# NOINLINE ptr_glCopyTextureSubImage1D #-}
ptr_glCopyTextureSubImage1D :: FunPtr (GLuint -> GLint -> GLint -> GLint -> GLint -> GLsizei -> IO ())
ptr_glCopyTextureSubImage1D = unsafePerformIO $ getCommand "glCopyTextureSubImage1D"

-- glCopyTextureSubImage1DEXT --------------------------------------------------

glCopyTextureSubImage1DEXT
  :: GLuint -- ^ @texture@ of type @Texture@.
  -> GLenum -- ^ @target@ of type @TextureTarget@.
  -> GLint -- ^ @level@ of type @CheckedInt32@.
  -> GLint -- ^ @xoffset@ of type @CheckedInt32@.
  -> GLint -- ^ @x@ of type @WinCoord@.
  -> GLint -- ^ @y@ of type @WinCoord@.
  -> GLsizei -- ^ @width@.
  -> IO ()
glCopyTextureSubImage1DEXT = dyn_glCopyTextureSubImage1DEXT ptr_glCopyTextureSubImage1DEXT

foreign import CALLCONV "dynamic" dyn_glCopyTextureSubImage1DEXT
  :: FunPtr (GLuint -> GLenum -> GLint -> GLint -> GLint -> GLint -> GLsizei -> IO ())
  ->         GLuint -> GLenum -> GLint -> GLint -> GLint -> GLint -> GLsizei -> IO ()

{-# NOINLINE ptr_glCopyTextureSubImage1DEXT #-}
ptr_glCopyTextureSubImage1DEXT :: FunPtr (GLuint -> GLenum -> GLint -> GLint -> GLint -> GLint -> GLsizei -> IO ())
ptr_glCopyTextureSubImage1DEXT = unsafePerformIO $ getCommand "glCopyTextureSubImage1DEXT"

-- glCopyTextureSubImage2D -----------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glCopyTexSubImage2D.xhtml OpenGL 4.x>
glCopyTextureSubImage2D
  :: GLuint -- ^ @texture@.
  -> GLint -- ^ @level@.
  -> GLint -- ^ @xoffset@.
  -> GLint -- ^ @yoffset@.
  -> GLint -- ^ @x@.
  -> GLint -- ^ @y@.
  -> GLsizei -- ^ @width@.
  -> GLsizei -- ^ @height@.
  -> IO ()
glCopyTextureSubImage2D = dyn_glCopyTextureSubImage2D ptr_glCopyTextureSubImage2D

foreign import CALLCONV "dynamic" dyn_glCopyTextureSubImage2D
  :: FunPtr (GLuint -> GLint -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> IO ())
  ->         GLuint -> GLint -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> IO ()

{-# NOINLINE ptr_glCopyTextureSubImage2D #-}
ptr_glCopyTextureSubImage2D :: FunPtr (GLuint -> GLint -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> IO ())
ptr_glCopyTextureSubImage2D = unsafePerformIO $ getCommand "glCopyTextureSubImage2D"

-- glCopyTextureSubImage2DEXT --------------------------------------------------

glCopyTextureSubImage2DEXT
  :: GLuint -- ^ @texture@ of type @Texture@.
  -> GLenum -- ^ @target@ of type @TextureTarget@.
  -> GLint -- ^ @level@ of type @CheckedInt32@.
  -> GLint -- ^ @xoffset@ of type @CheckedInt32@.
  -> GLint -- ^ @yoffset@ of type @CheckedInt32@.
  -> GLint -- ^ @x@ of type @WinCoord@.
  -> GLint -- ^ @y@ of type @WinCoord@.
  -> GLsizei -- ^ @width@.
  -> GLsizei -- ^ @height@.
  -> IO ()
glCopyTextureSubImage2DEXT = dyn_glCopyTextureSubImage2DEXT ptr_glCopyTextureSubImage2DEXT

foreign import CALLCONV "dynamic" dyn_glCopyTextureSubImage2DEXT
  :: FunPtr (GLuint -> GLenum -> GLint -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> IO ())
  ->         GLuint -> GLenum -> GLint -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> IO ()

{-# NOINLINE ptr_glCopyTextureSubImage2DEXT #-}
ptr_glCopyTextureSubImage2DEXT :: FunPtr (GLuint -> GLenum -> GLint -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> IO ())
ptr_glCopyTextureSubImage2DEXT = unsafePerformIO $ getCommand "glCopyTextureSubImage2DEXT"

-- glCopyTextureSubImage3D -----------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glCopyTexSubImage3D.xhtml OpenGL 4.x>
glCopyTextureSubImage3D
  :: GLuint -- ^ @texture@.
  -> GLint -- ^ @level@.
  -> GLint -- ^ @xoffset@.
  -> GLint -- ^ @yoffset@.
  -> GLint -- ^ @zoffset@.
  -> GLint -- ^ @x@.
  -> GLint -- ^ @y@.
  -> GLsizei -- ^ @width@.
  -> GLsizei -- ^ @height@.
  -> IO ()
glCopyTextureSubImage3D = dyn_glCopyTextureSubImage3D ptr_glCopyTextureSubImage3D

foreign import CALLCONV "dynamic" dyn_glCopyTextureSubImage3D
  :: FunPtr (GLuint -> GLint -> GLint -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> IO ())
  ->         GLuint -> GLint -> GLint -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> IO ()

{-# NOINLINE ptr_glCopyTextureSubImage3D #-}
ptr_glCopyTextureSubImage3D :: FunPtr (GLuint -> GLint -> GLint -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> IO ())
ptr_glCopyTextureSubImage3D = unsafePerformIO $ getCommand "glCopyTextureSubImage3D"

-- glCopyTextureSubImage3DEXT --------------------------------------------------

glCopyTextureSubImage3DEXT
  :: GLuint -- ^ @texture@ of type @Texture@.
  -> GLenum -- ^ @target@ of type @TextureTarget@.
  -> GLint -- ^ @level@ of type @CheckedInt32@.
  -> GLint -- ^ @xoffset@ of type @CheckedInt32@.
  -> GLint -- ^ @yoffset@ of type @CheckedInt32@.
  -> GLint -- ^ @zoffset@ of type @CheckedInt32@.
  -> GLint -- ^ @x@ of type @WinCoord@.
  -> GLint -- ^ @y@ of type @WinCoord@.
  -> GLsizei -- ^ @width@.
  -> GLsizei -- ^ @height@.
  -> IO ()
glCopyTextureSubImage3DEXT = dyn_glCopyTextureSubImage3DEXT ptr_glCopyTextureSubImage3DEXT

foreign import CALLCONV "dynamic" dyn_glCopyTextureSubImage3DEXT
  :: FunPtr (GLuint -> GLenum -> GLint -> GLint -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> IO ())
  ->         GLuint -> GLenum -> GLint -> GLint -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> IO ()

{-# NOINLINE ptr_glCopyTextureSubImage3DEXT #-}
ptr_glCopyTextureSubImage3DEXT :: FunPtr (GLuint -> GLenum -> GLint -> GLint -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> IO ())
ptr_glCopyTextureSubImage3DEXT = unsafePerformIO $ getCommand "glCopyTextureSubImage3DEXT"

-- glCoverFillPathInstancedNV --------------------------------------------------

glCoverFillPathInstancedNV
  :: GLsizei -- ^ @numPaths@.
  -> GLenum -- ^ @pathNameType@ of type @PathElementType@.
  -> Ptr a -- ^ @paths@ pointing to @COMPSIZE(numPaths,pathNameType,paths)@ elements of type @PathElement@.
  -> GLuint -- ^ @pathBase@ of type @Path@.
  -> GLenum -- ^ @coverMode@ of type @PathCoverMode@.
  -> GLenum -- ^ @transformType@ of type @PathTransformType@.
  -> Ptr GLfloat -- ^ @transformValues@ pointing to @COMPSIZE(numPaths,transformType)@ elements of type @GLfloat@.
  -> IO ()
glCoverFillPathInstancedNV = dyn_glCoverFillPathInstancedNV ptr_glCoverFillPathInstancedNV

foreign import CALLCONV "dynamic" dyn_glCoverFillPathInstancedNV
  :: FunPtr (GLsizei -> GLenum -> Ptr a -> GLuint -> GLenum -> GLenum -> Ptr GLfloat -> IO ())
  ->         GLsizei -> GLenum -> Ptr a -> GLuint -> GLenum -> GLenum -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glCoverFillPathInstancedNV #-}
ptr_glCoverFillPathInstancedNV :: FunPtr (GLsizei -> GLenum -> Ptr a -> GLuint -> GLenum -> GLenum -> Ptr GLfloat -> IO ())
ptr_glCoverFillPathInstancedNV = unsafePerformIO $ getCommand "glCoverFillPathInstancedNV"

-- glCoverFillPathNV -----------------------------------------------------------

glCoverFillPathNV
  :: GLuint -- ^ @path@ of type @Path@.
  -> GLenum -- ^ @coverMode@ of type @PathCoverMode@.
  -> IO ()
glCoverFillPathNV = dyn_glCoverFillPathNV ptr_glCoverFillPathNV

foreign import CALLCONV "dynamic" dyn_glCoverFillPathNV
  :: FunPtr (GLuint -> GLenum -> IO ())
  ->         GLuint -> GLenum -> IO ()

{-# NOINLINE ptr_glCoverFillPathNV #-}
ptr_glCoverFillPathNV :: FunPtr (GLuint -> GLenum -> IO ())
ptr_glCoverFillPathNV = unsafePerformIO $ getCommand "glCoverFillPathNV"

-- glCoverStrokePathInstancedNV ------------------------------------------------

glCoverStrokePathInstancedNV
  :: GLsizei -- ^ @numPaths@.
  -> GLenum -- ^ @pathNameType@ of type @PathElementType@.
  -> Ptr a -- ^ @paths@ pointing to @COMPSIZE(numPaths,pathNameType,paths)@ elements of type @PathElement@.
  -> GLuint -- ^ @pathBase@ of type @Path@.
  -> GLenum -- ^ @coverMode@ of type @PathCoverMode@.
  -> GLenum -- ^ @transformType@ of type @PathTransformType@.
  -> Ptr GLfloat -- ^ @transformValues@ pointing to @COMPSIZE(numPaths,transformType)@ elements of type @GLfloat@.
  -> IO ()
glCoverStrokePathInstancedNV = dyn_glCoverStrokePathInstancedNV ptr_glCoverStrokePathInstancedNV

foreign import CALLCONV "dynamic" dyn_glCoverStrokePathInstancedNV
  :: FunPtr (GLsizei -> GLenum -> Ptr a -> GLuint -> GLenum -> GLenum -> Ptr GLfloat -> IO ())
  ->         GLsizei -> GLenum -> Ptr a -> GLuint -> GLenum -> GLenum -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glCoverStrokePathInstancedNV #-}
ptr_glCoverStrokePathInstancedNV :: FunPtr (GLsizei -> GLenum -> Ptr a -> GLuint -> GLenum -> GLenum -> Ptr GLfloat -> IO ())
ptr_glCoverStrokePathInstancedNV = unsafePerformIO $ getCommand "glCoverStrokePathInstancedNV"

-- glCoverStrokePathNV ---------------------------------------------------------

glCoverStrokePathNV
  :: GLuint -- ^ @path@ of type @Path@.
  -> GLenum -- ^ @coverMode@ of type @PathCoverMode@.
  -> IO ()
glCoverStrokePathNV = dyn_glCoverStrokePathNV ptr_glCoverStrokePathNV

foreign import CALLCONV "dynamic" dyn_glCoverStrokePathNV
  :: FunPtr (GLuint -> GLenum -> IO ())
  ->         GLuint -> GLenum -> IO ()

{-# NOINLINE ptr_glCoverStrokePathNV #-}
ptr_glCoverStrokePathNV :: FunPtr (GLuint -> GLenum -> IO ())
ptr_glCoverStrokePathNV = unsafePerformIO $ getCommand "glCoverStrokePathNV"

-- glCoverageMaskNV ------------------------------------------------------------

glCoverageMaskNV
  :: GLboolean -- ^ @mask@.
  -> IO ()
glCoverageMaskNV = dyn_glCoverageMaskNV ptr_glCoverageMaskNV

foreign import CALLCONV "dynamic" dyn_glCoverageMaskNV
  :: FunPtr (GLboolean -> IO ())
  ->         GLboolean -> IO ()

{-# NOINLINE ptr_glCoverageMaskNV #-}
ptr_glCoverageMaskNV :: FunPtr (GLboolean -> IO ())
ptr_glCoverageMaskNV = unsafePerformIO $ getCommand "glCoverageMaskNV"

-- glCoverageModulationNV ------------------------------------------------------

glCoverageModulationNV
  :: GLenum -- ^ @components@.
  -> IO ()
glCoverageModulationNV = dyn_glCoverageModulationNV ptr_glCoverageModulationNV

foreign import CALLCONV "dynamic" dyn_glCoverageModulationNV
  :: FunPtr (GLenum -> IO ())
  ->         GLenum -> IO ()

{-# NOINLINE ptr_glCoverageModulationNV #-}
ptr_glCoverageModulationNV :: FunPtr (GLenum -> IO ())
ptr_glCoverageModulationNV = unsafePerformIO $ getCommand "glCoverageModulationNV"

-- glCoverageModulationTableNV -------------------------------------------------

glCoverageModulationTableNV
  :: GLsizei -- ^ @n@.
  -> Ptr GLfloat -- ^ @v@.
  -> IO ()
glCoverageModulationTableNV = dyn_glCoverageModulationTableNV ptr_glCoverageModulationTableNV

foreign import CALLCONV "dynamic" dyn_glCoverageModulationTableNV
  :: FunPtr (GLsizei -> Ptr GLfloat -> IO ())
  ->         GLsizei -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glCoverageModulationTableNV #-}
ptr_glCoverageModulationTableNV :: FunPtr (GLsizei -> Ptr GLfloat -> IO ())
ptr_glCoverageModulationTableNV = unsafePerformIO $ getCommand "glCoverageModulationTableNV"

-- glCoverageOperationNV -------------------------------------------------------

glCoverageOperationNV
  :: GLenum -- ^ @operation@.
  -> IO ()
glCoverageOperationNV = dyn_glCoverageOperationNV ptr_glCoverageOperationNV

foreign import CALLCONV "dynamic" dyn_glCoverageOperationNV
  :: FunPtr (GLenum -> IO ())
  ->         GLenum -> IO ()

{-# NOINLINE ptr_glCoverageOperationNV #-}
ptr_glCoverageOperationNV :: FunPtr (GLenum -> IO ())
ptr_glCoverageOperationNV = unsafePerformIO $ getCommand "glCoverageOperationNV"

-- glCreateBuffers -------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glCreateBuffers.xhtml OpenGL 4.x>
glCreateBuffers
  :: GLsizei -- ^ @n@.
  -> Ptr GLuint -- ^ @buffers@.
  -> IO ()
glCreateBuffers = dyn_glCreateBuffers ptr_glCreateBuffers

foreign import CALLCONV "dynamic" dyn_glCreateBuffers
  :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
  ->         GLsizei -> Ptr GLuint -> IO ()

{-# NOINLINE ptr_glCreateBuffers #-}
ptr_glCreateBuffers :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
ptr_glCreateBuffers = unsafePerformIO $ getCommand "glCreateBuffers"

-- glCreateFramebuffers --------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glCreateFramebuffers.xhtml OpenGL 4.x>
glCreateFramebuffers
  :: GLsizei -- ^ @n@.
  -> Ptr GLuint -- ^ @framebuffers@.
  -> IO ()
glCreateFramebuffers = dyn_glCreateFramebuffers ptr_glCreateFramebuffers

foreign import CALLCONV "dynamic" dyn_glCreateFramebuffers
  :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
  ->         GLsizei -> Ptr GLuint -> IO ()

{-# NOINLINE ptr_glCreateFramebuffers #-}
ptr_glCreateFramebuffers :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
ptr_glCreateFramebuffers = unsafePerformIO $ getCommand "glCreateFramebuffers"

-- glCreatePerfQueryINTEL ------------------------------------------------------

glCreatePerfQueryINTEL
  :: GLuint -- ^ @queryId@.
  -> Ptr GLuint -- ^ @queryHandle@.
  -> IO ()
glCreatePerfQueryINTEL = dyn_glCreatePerfQueryINTEL ptr_glCreatePerfQueryINTEL

foreign import CALLCONV "dynamic" dyn_glCreatePerfQueryINTEL
  :: FunPtr (GLuint -> Ptr GLuint -> IO ())
  ->         GLuint -> Ptr GLuint -> IO ()

{-# NOINLINE ptr_glCreatePerfQueryINTEL #-}
ptr_glCreatePerfQueryINTEL :: FunPtr (GLuint -> Ptr GLuint -> IO ())
ptr_glCreatePerfQueryINTEL = unsafePerformIO $ getCommand "glCreatePerfQueryINTEL"

-- glCreateProgram -------------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glCreateProgram.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glCreateProgram.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glCreateProgram.xhtml OpenGL 4.x>
glCreateProgram
  :: IO GLuint
glCreateProgram = dyn_glCreateProgram ptr_glCreateProgram

foreign import CALLCONV "dynamic" dyn_glCreateProgram
  :: FunPtr (IO GLuint)
  ->         IO GLuint

{-# NOINLINE ptr_glCreateProgram #-}
ptr_glCreateProgram :: FunPtr (IO GLuint)
ptr_glCreateProgram = unsafePerformIO $ getCommand "glCreateProgram"

-- glCreateProgramObjectARB ----------------------------------------------------

glCreateProgramObjectARB
  :: IO GLhandleARB -- ^ of type @handleARB@.
glCreateProgramObjectARB = dyn_glCreateProgramObjectARB ptr_glCreateProgramObjectARB

foreign import CALLCONV "dynamic" dyn_glCreateProgramObjectARB
  :: FunPtr (IO GLhandleARB)
  ->         IO GLhandleARB

{-# NOINLINE ptr_glCreateProgramObjectARB #-}
ptr_glCreateProgramObjectARB :: FunPtr (IO GLhandleARB)
ptr_glCreateProgramObjectARB = unsafePerformIO $ getCommand "glCreateProgramObjectARB"

-- glCreateProgramPipelines ----------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glCreateProgramPipelines.xhtml OpenGL 4.x>
glCreateProgramPipelines
  :: GLsizei -- ^ @n@.
  -> Ptr GLuint -- ^ @pipelines@.
  -> IO ()
glCreateProgramPipelines = dyn_glCreateProgramPipelines ptr_glCreateProgramPipelines

foreign import CALLCONV "dynamic" dyn_glCreateProgramPipelines
  :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
  ->         GLsizei -> Ptr GLuint -> IO ()

{-# NOINLINE ptr_glCreateProgramPipelines #-}
ptr_glCreateProgramPipelines :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
ptr_glCreateProgramPipelines = unsafePerformIO $ getCommand "glCreateProgramPipelines"

-- glCreateQueries -------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glCreateQueries.xhtml OpenGL 4.x>
glCreateQueries
  :: GLenum -- ^ @target@.
  -> GLsizei -- ^ @n@.
  -> Ptr GLuint -- ^ @ids@.
  -> IO ()
glCreateQueries = dyn_glCreateQueries ptr_glCreateQueries

foreign import CALLCONV "dynamic" dyn_glCreateQueries
  :: FunPtr (GLenum -> GLsizei -> Ptr GLuint -> IO ())
  ->         GLenum -> GLsizei -> Ptr GLuint -> IO ()

{-# NOINLINE ptr_glCreateQueries #-}
ptr_glCreateQueries :: FunPtr (GLenum -> GLsizei -> Ptr GLuint -> IO ())
ptr_glCreateQueries = unsafePerformIO $ getCommand "glCreateQueries"

-- glCreateRenderbuffers -------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glCreateRenderbuffers.xhtml OpenGL 4.x>
glCreateRenderbuffers
  :: GLsizei -- ^ @n@.
  -> Ptr GLuint -- ^ @renderbuffers@.
  -> IO ()
glCreateRenderbuffers = dyn_glCreateRenderbuffers ptr_glCreateRenderbuffers

foreign import CALLCONV "dynamic" dyn_glCreateRenderbuffers
  :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
  ->         GLsizei -> Ptr GLuint -> IO ()

{-# NOINLINE ptr_glCreateRenderbuffers #-}
ptr_glCreateRenderbuffers :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
ptr_glCreateRenderbuffers = unsafePerformIO $ getCommand "glCreateRenderbuffers"

-- glCreateSamplers ------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glCreateSamplers.xhtml OpenGL 4.x>
glCreateSamplers
  :: GLsizei -- ^ @n@.
  -> Ptr GLuint -- ^ @samplers@.
  -> IO ()
glCreateSamplers = dyn_glCreateSamplers ptr_glCreateSamplers

foreign import CALLCONV "dynamic" dyn_glCreateSamplers
  :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
  ->         GLsizei -> Ptr GLuint -> IO ()

{-# NOINLINE ptr_glCreateSamplers #-}
ptr_glCreateSamplers :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
ptr_glCreateSamplers = unsafePerformIO $ getCommand "glCreateSamplers"

-- glCreateShader --------------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glCreateShader.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glCreateShader.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glCreateShader.xhtml OpenGL 4.x>
glCreateShader
  :: GLenum -- ^ @type@.
  -> IO GLuint
glCreateShader = dyn_glCreateShader ptr_glCreateShader

foreign import CALLCONV "dynamic" dyn_glCreateShader
  :: FunPtr (GLenum -> IO GLuint)
  ->         GLenum -> IO GLuint

{-# NOINLINE ptr_glCreateShader #-}
ptr_glCreateShader :: FunPtr (GLenum -> IO GLuint)
ptr_glCreateShader = unsafePerformIO $ getCommand "glCreateShader"

-- glCreateShaderObjectARB -----------------------------------------------------

glCreateShaderObjectARB
  :: GLenum -- ^ @shaderType@.
  -> IO GLhandleARB -- ^ of type @handleARB@.
glCreateShaderObjectARB = dyn_glCreateShaderObjectARB ptr_glCreateShaderObjectARB

foreign import CALLCONV "dynamic" dyn_glCreateShaderObjectARB
  :: FunPtr (GLenum -> IO GLhandleARB)
  ->         GLenum -> IO GLhandleARB

{-# NOINLINE ptr_glCreateShaderObjectARB #-}
ptr_glCreateShaderObjectARB :: FunPtr (GLenum -> IO GLhandleARB)
ptr_glCreateShaderObjectARB = unsafePerformIO $ getCommand "glCreateShaderObjectARB"

-- glCreateShaderProgramEXT ----------------------------------------------------

glCreateShaderProgramEXT
  :: GLenum -- ^ @type@.
  -> Ptr GLchar -- ^ @string@.
  -> IO GLuint
glCreateShaderProgramEXT = dyn_glCreateShaderProgramEXT ptr_glCreateShaderProgramEXT

foreign import CALLCONV "dynamic" dyn_glCreateShaderProgramEXT
  :: FunPtr (GLenum -> Ptr GLchar -> IO GLuint)
  ->         GLenum -> Ptr GLchar -> IO GLuint

{-# NOINLINE ptr_glCreateShaderProgramEXT #-}
ptr_glCreateShaderProgramEXT :: FunPtr (GLenum -> Ptr GLchar -> IO GLuint)
ptr_glCreateShaderProgramEXT = unsafePerformIO $ getCommand "glCreateShaderProgramEXT"

-- glCreateShaderProgramv ------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glCreateShaderProgram.xhtml OpenGL 4.x>
glCreateShaderProgramv
  :: GLenum -- ^ @type@.
  -> GLsizei -- ^ @count@.
  -> Ptr (Ptr GLchar) -- ^ @strings@ pointing to @count@ elements of type @Ptr GLchar@.
  -> IO GLuint
glCreateShaderProgramv = dyn_glCreateShaderProgramv ptr_glCreateShaderProgramv

foreign import CALLCONV "dynamic" dyn_glCreateShaderProgramv
  :: FunPtr (GLenum -> GLsizei -> Ptr (Ptr GLchar) -> IO GLuint)
  ->         GLenum -> GLsizei -> Ptr (Ptr GLchar) -> IO GLuint

{-# NOINLINE ptr_glCreateShaderProgramv #-}
ptr_glCreateShaderProgramv :: FunPtr (GLenum -> GLsizei -> Ptr (Ptr GLchar) -> IO GLuint)
ptr_glCreateShaderProgramv = unsafePerformIO $ getCommand "glCreateShaderProgramv"

-- glCreateShaderProgramvEXT ---------------------------------------------------

glCreateShaderProgramvEXT
  :: GLenum -- ^ @type@.
  -> GLsizei -- ^ @count@.
  -> Ptr (Ptr GLchar) -- ^ @strings@ pointing to @count@ elements of type @Ptr GLchar@.
  -> IO GLuint
glCreateShaderProgramvEXT = dyn_glCreateShaderProgramvEXT ptr_glCreateShaderProgramvEXT

foreign import CALLCONV "dynamic" dyn_glCreateShaderProgramvEXT
  :: FunPtr (GLenum -> GLsizei -> Ptr (Ptr GLchar) -> IO GLuint)
  ->         GLenum -> GLsizei -> Ptr (Ptr GLchar) -> IO GLuint

{-# NOINLINE ptr_glCreateShaderProgramvEXT #-}
ptr_glCreateShaderProgramvEXT :: FunPtr (GLenum -> GLsizei -> Ptr (Ptr GLchar) -> IO GLuint)
ptr_glCreateShaderProgramvEXT = unsafePerformIO $ getCommand "glCreateShaderProgramvEXT"

-- glCreateSyncFromCLeventARB --------------------------------------------------

glCreateSyncFromCLeventARB
  :: Ptr a -- ^ @context@ pointing to elements of type @cl_context@.
  -> Ptr b -- ^ @event@ pointing to elements of type @cl_event@.
  -> GLbitfield -- ^ @flags@.
  -> IO GLsync -- ^ of type @sync@.
glCreateSyncFromCLeventARB = dyn_glCreateSyncFromCLeventARB ptr_glCreateSyncFromCLeventARB

foreign import CALLCONV "dynamic" dyn_glCreateSyncFromCLeventARB
  :: FunPtr (Ptr a -> Ptr b -> GLbitfield -> IO GLsync)
  ->         Ptr a -> Ptr b -> GLbitfield -> IO GLsync

{-# NOINLINE ptr_glCreateSyncFromCLeventARB #-}
ptr_glCreateSyncFromCLeventARB :: FunPtr (Ptr a -> Ptr b -> GLbitfield -> IO GLsync)
ptr_glCreateSyncFromCLeventARB = unsafePerformIO $ getCommand "glCreateSyncFromCLeventARB"

-- glCreateTextures ------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glCreateTextures.xhtml OpenGL 4.x>
glCreateTextures
  :: GLenum -- ^ @target@.
  -> GLsizei -- ^ @n@.
  -> Ptr GLuint -- ^ @textures@.
  -> IO ()
glCreateTextures = dyn_glCreateTextures ptr_glCreateTextures

foreign import CALLCONV "dynamic" dyn_glCreateTextures
  :: FunPtr (GLenum -> GLsizei -> Ptr GLuint -> IO ())
  ->         GLenum -> GLsizei -> Ptr GLuint -> IO ()

{-# NOINLINE ptr_glCreateTextures #-}
ptr_glCreateTextures :: FunPtr (GLenum -> GLsizei -> Ptr GLuint -> IO ())
ptr_glCreateTextures = unsafePerformIO $ getCommand "glCreateTextures"

-- glCreateTransformFeedbacks --------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glCreateTransformFeedbacks.xhtml OpenGL 4.x>
glCreateTransformFeedbacks
  :: GLsizei -- ^ @n@.
  -> Ptr GLuint -- ^ @ids@.
  -> IO ()
glCreateTransformFeedbacks = dyn_glCreateTransformFeedbacks ptr_glCreateTransformFeedbacks

foreign import CALLCONV "dynamic" dyn_glCreateTransformFeedbacks
  :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
  ->         GLsizei -> Ptr GLuint -> IO ()

{-# NOINLINE ptr_glCreateTransformFeedbacks #-}
ptr_glCreateTransformFeedbacks :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
ptr_glCreateTransformFeedbacks = unsafePerformIO $ getCommand "glCreateTransformFeedbacks"

-- glCreateVertexArrays --------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glCreateVertexArrays.xhtml OpenGL 4.x>
glCreateVertexArrays
  :: GLsizei -- ^ @n@.
  -> Ptr GLuint -- ^ @arrays@.
  -> IO ()
glCreateVertexArrays = dyn_glCreateVertexArrays ptr_glCreateVertexArrays

foreign import CALLCONV "dynamic" dyn_glCreateVertexArrays
  :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
  ->         GLsizei -> Ptr GLuint -> IO ()

{-# NOINLINE ptr_glCreateVertexArrays #-}
ptr_glCreateVertexArrays :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
ptr_glCreateVertexArrays = unsafePerformIO $ getCommand "glCreateVertexArrays"

-- glCullFace ------------------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glCullFace.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glCullFace.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glCullFace.xhtml OpenGL 4.x>
glCullFace
  :: GLenum -- ^ @mode@ of type @CullFaceMode@.
  -> IO ()
glCullFace = dyn_glCullFace ptr_glCullFace

foreign import CALLCONV "dynamic" dyn_glCullFace
  :: FunPtr (GLenum -> IO ())
  ->         GLenum -> IO ()

{-# NOINLINE ptr_glCullFace #-}
ptr_glCullFace :: FunPtr (GLenum -> IO ())
ptr_glCullFace = unsafePerformIO $ getCommand "glCullFace"

-- glCullParameterdvEXT --------------------------------------------------------

glCullParameterdvEXT
  :: GLenum -- ^ @pname@ of type @CullParameterEXT@.
  -> Ptr GLdouble -- ^ @params@ pointing to @4@ elements of type @GLdouble@.
  -> IO ()
glCullParameterdvEXT = dyn_glCullParameterdvEXT ptr_glCullParameterdvEXT

foreign import CALLCONV "dynamic" dyn_glCullParameterdvEXT
  :: FunPtr (GLenum -> Ptr GLdouble -> IO ())
  ->         GLenum -> Ptr GLdouble -> IO ()

{-# NOINLINE ptr_glCullParameterdvEXT #-}
ptr_glCullParameterdvEXT :: FunPtr (GLenum -> Ptr GLdouble -> IO ())
ptr_glCullParameterdvEXT = unsafePerformIO $ getCommand "glCullParameterdvEXT"

-- glCullParameterfvEXT --------------------------------------------------------

glCullParameterfvEXT
  :: GLenum -- ^ @pname@ of type @CullParameterEXT@.
  -> Ptr GLfloat -- ^ @params@ pointing to @4@ elements of type @GLfloat@.
  -> IO ()
glCullParameterfvEXT = dyn_glCullParameterfvEXT ptr_glCullParameterfvEXT

foreign import CALLCONV "dynamic" dyn_glCullParameterfvEXT
  :: FunPtr (GLenum -> Ptr GLfloat -> IO ())
  ->         GLenum -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glCullParameterfvEXT #-}
ptr_glCullParameterfvEXT :: FunPtr (GLenum -> Ptr GLfloat -> IO ())
ptr_glCullParameterfvEXT = unsafePerformIO $ getCommand "glCullParameterfvEXT"

-- glCurrentPaletteMatrixARB ---------------------------------------------------

glCurrentPaletteMatrixARB
  :: GLint -- ^ @index@.
  -> IO ()
glCurrentPaletteMatrixARB = dyn_glCurrentPaletteMatrixARB ptr_glCurrentPaletteMatrixARB

foreign import CALLCONV "dynamic" dyn_glCurrentPaletteMatrixARB
  :: FunPtr (GLint -> IO ())
  ->         GLint -> IO ()

{-# NOINLINE ptr_glCurrentPaletteMatrixARB #-}
ptr_glCurrentPaletteMatrixARB :: FunPtr (GLint -> IO ())
ptr_glCurrentPaletteMatrixARB = unsafePerformIO $ getCommand "glCurrentPaletteMatrixARB"

-- glCurrentPaletteMatrixOES ---------------------------------------------------

glCurrentPaletteMatrixOES
  :: GLuint -- ^ @matrixpaletteindex@.
  -> IO ()
glCurrentPaletteMatrixOES = dyn_glCurrentPaletteMatrixOES ptr_glCurrentPaletteMatrixOES

foreign import CALLCONV "dynamic" dyn_glCurrentPaletteMatrixOES
  :: FunPtr (GLuint -> IO ())
  ->         GLuint -> IO ()

{-# NOINLINE ptr_glCurrentPaletteMatrixOES #-}
ptr_glCurrentPaletteMatrixOES :: FunPtr (GLuint -> IO ())
ptr_glCurrentPaletteMatrixOES = unsafePerformIO $ getCommand "glCurrentPaletteMatrixOES"

-- glDebugMessageCallback ------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glDebugMessageCallback.xhtml OpenGL 4.x>
glDebugMessageCallback
  :: GLDEBUGPROC -- ^ @callback@.
  -> Ptr a -- ^ @userParam@.
  -> IO ()
glDebugMessageCallback = dyn_glDebugMessageCallback ptr_glDebugMessageCallback

foreign import CALLCONV "dynamic" dyn_glDebugMessageCallback
  :: FunPtr (GLDEBUGPROC -> Ptr a -> IO ())
  ->         GLDEBUGPROC -> Ptr a -> IO ()

{-# NOINLINE ptr_glDebugMessageCallback #-}
ptr_glDebugMessageCallback :: FunPtr (GLDEBUGPROC -> Ptr a -> IO ())
ptr_glDebugMessageCallback = unsafePerformIO $ getCommand "glDebugMessageCallback"

-- glDebugMessageCallbackAMD ---------------------------------------------------

glDebugMessageCallbackAMD
  :: GLDEBUGPROCAMD -- ^ @callback@.
  -> Ptr a -- ^ @userParam@.
  -> IO ()
glDebugMessageCallbackAMD = dyn_glDebugMessageCallbackAMD ptr_glDebugMessageCallbackAMD

foreign import CALLCONV "dynamic" dyn_glDebugMessageCallbackAMD
  :: FunPtr (GLDEBUGPROCAMD -> Ptr a -> IO ())
  ->         GLDEBUGPROCAMD -> Ptr a -> IO ()

{-# NOINLINE ptr_glDebugMessageCallbackAMD #-}
ptr_glDebugMessageCallbackAMD :: FunPtr (GLDEBUGPROCAMD -> Ptr a -> IO ())
ptr_glDebugMessageCallbackAMD = unsafePerformIO $ getCommand "glDebugMessageCallbackAMD"

-- glDebugMessageCallbackARB ---------------------------------------------------

glDebugMessageCallbackARB
  :: GLDEBUGPROCARB -- ^ @callback@.
  -> Ptr a -- ^ @userParam@ pointing to @COMPSIZE(callback)@ elements of type @a@.
  -> IO ()
glDebugMessageCallbackARB = dyn_glDebugMessageCallbackARB ptr_glDebugMessageCallbackARB

foreign import CALLCONV "dynamic" dyn_glDebugMessageCallbackARB
  :: FunPtr (GLDEBUGPROCARB -> Ptr a -> IO ())
  ->         GLDEBUGPROCARB -> Ptr a -> IO ()

{-# NOINLINE ptr_glDebugMessageCallbackARB #-}
ptr_glDebugMessageCallbackARB :: FunPtr (GLDEBUGPROCARB -> Ptr a -> IO ())
ptr_glDebugMessageCallbackARB = unsafePerformIO $ getCommand "glDebugMessageCallbackARB"

-- glDebugMessageCallbackKHR ---------------------------------------------------

glDebugMessageCallbackKHR
  :: GLDEBUGPROCKHR -- ^ @callback@.
  -> Ptr a -- ^ @userParam@.
  -> IO ()
glDebugMessageCallbackKHR = dyn_glDebugMessageCallbackKHR ptr_glDebugMessageCallbackKHR

foreign import CALLCONV "dynamic" dyn_glDebugMessageCallbackKHR
  :: FunPtr (GLDEBUGPROCKHR -> Ptr a -> IO ())
  ->         GLDEBUGPROCKHR -> Ptr a -> IO ()

{-# NOINLINE ptr_glDebugMessageCallbackKHR #-}
ptr_glDebugMessageCallbackKHR :: FunPtr (GLDEBUGPROCKHR -> Ptr a -> IO ())
ptr_glDebugMessageCallbackKHR = unsafePerformIO $ getCommand "glDebugMessageCallbackKHR"

-- glDebugMessageControl -------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glDebugMessageControl.xhtml OpenGL 4.x>
glDebugMessageControl
  :: GLenum -- ^ @source@.
  -> GLenum -- ^ @type@.
  -> GLenum -- ^ @severity@.
  -> GLsizei -- ^ @count@.
  -> Ptr GLuint -- ^ @ids@ pointing to @count@ elements of type @GLuint@.
  -> GLboolean -- ^ @enabled@ of type @Boolean@.
  -> IO ()
glDebugMessageControl = dyn_glDebugMessageControl ptr_glDebugMessageControl

foreign import CALLCONV "dynamic" dyn_glDebugMessageControl
  :: FunPtr (GLenum -> GLenum -> GLenum -> GLsizei -> Ptr GLuint -> GLboolean -> IO ())
  ->         GLenum -> GLenum -> GLenum -> GLsizei -> Ptr GLuint -> GLboolean -> IO ()

{-# NOINLINE ptr_glDebugMessageControl #-}
ptr_glDebugMessageControl :: FunPtr (GLenum -> GLenum -> GLenum -> GLsizei -> Ptr GLuint -> GLboolean -> IO ())
ptr_glDebugMessageControl = unsafePerformIO $ getCommand "glDebugMessageControl"

-- glDebugMessageControlARB ----------------------------------------------------

glDebugMessageControlARB
  :: GLenum -- ^ @source@.
  -> GLenum -- ^ @type@.
  -> GLenum -- ^ @severity@.
  -> GLsizei -- ^ @count@.
  -> Ptr GLuint -- ^ @ids@ pointing to @count@ elements of type @GLuint@.
  -> GLboolean -- ^ @enabled@ of type @Boolean@.
  -> IO ()
glDebugMessageControlARB = dyn_glDebugMessageControlARB ptr_glDebugMessageControlARB

foreign import CALLCONV "dynamic" dyn_glDebugMessageControlARB
  :: FunPtr (GLenum -> GLenum -> GLenum -> GLsizei -> Ptr GLuint -> GLboolean -> IO ())
  ->         GLenum -> GLenum -> GLenum -> GLsizei -> Ptr GLuint -> GLboolean -> IO ()

{-# NOINLINE ptr_glDebugMessageControlARB #-}
ptr_glDebugMessageControlARB :: FunPtr (GLenum -> GLenum -> GLenum -> GLsizei -> Ptr GLuint -> GLboolean -> IO ())
ptr_glDebugMessageControlARB = unsafePerformIO $ getCommand "glDebugMessageControlARB"

-- glDebugMessageControlKHR ----------------------------------------------------

glDebugMessageControlKHR
  :: GLenum -- ^ @source@.
  -> GLenum -- ^ @type@.
  -> GLenum -- ^ @severity@.
  -> GLsizei -- ^ @count@.
  -> Ptr GLuint -- ^ @ids@.
  -> GLboolean -- ^ @enabled@.
  -> IO ()
glDebugMessageControlKHR = dyn_glDebugMessageControlKHR ptr_glDebugMessageControlKHR

foreign import CALLCONV "dynamic" dyn_glDebugMessageControlKHR
  :: FunPtr (GLenum -> GLenum -> GLenum -> GLsizei -> Ptr GLuint -> GLboolean -> IO ())
  ->         GLenum -> GLenum -> GLenum -> GLsizei -> Ptr GLuint -> GLboolean -> IO ()

{-# NOINLINE ptr_glDebugMessageControlKHR #-}
ptr_glDebugMessageControlKHR :: FunPtr (GLenum -> GLenum -> GLenum -> GLsizei -> Ptr GLuint -> GLboolean -> IO ())
ptr_glDebugMessageControlKHR = unsafePerformIO $ getCommand "glDebugMessageControlKHR"

-- glDebugMessageEnableAMD -----------------------------------------------------

glDebugMessageEnableAMD
  :: GLenum -- ^ @category@.
  -> GLenum -- ^ @severity@.
  -> GLsizei -- ^ @count@.
  -> Ptr GLuint -- ^ @ids@ pointing to @count@ elements of type @GLuint@.
  -> GLboolean -- ^ @enabled@ of type @Boolean@.
  -> IO ()
glDebugMessageEnableAMD = dyn_glDebugMessageEnableAMD ptr_glDebugMessageEnableAMD

foreign import CALLCONV "dynamic" dyn_glDebugMessageEnableAMD
  :: FunPtr (GLenum -> GLenum -> GLsizei -> Ptr GLuint -> GLboolean -> IO ())
  ->         GLenum -> GLenum -> GLsizei -> Ptr GLuint -> GLboolean -> IO ()

{-# NOINLINE ptr_glDebugMessageEnableAMD #-}
ptr_glDebugMessageEnableAMD :: FunPtr (GLenum -> GLenum -> GLsizei -> Ptr GLuint -> GLboolean -> IO ())
ptr_glDebugMessageEnableAMD = unsafePerformIO $ getCommand "glDebugMessageEnableAMD"

-- glDebugMessageInsert --------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glDebugMessageInsert.xhtml OpenGL 4.x>
glDebugMessageInsert
  :: GLenum -- ^ @source@.
  -> GLenum -- ^ @type@.
  -> GLuint -- ^ @id@.
  -> GLenum -- ^ @severity@.
  -> GLsizei -- ^ @length@.
  -> Ptr GLchar -- ^ @buf@ pointing to @COMPSIZE(buf,length)@ elements of type @GLchar@.
  -> IO ()
glDebugMessageInsert = dyn_glDebugMessageInsert ptr_glDebugMessageInsert

foreign import CALLCONV "dynamic" dyn_glDebugMessageInsert
  :: FunPtr (GLenum -> GLenum -> GLuint -> GLenum -> GLsizei -> Ptr GLchar -> IO ())
  ->         GLenum -> GLenum -> GLuint -> GLenum -> GLsizei -> Ptr GLchar -> IO ()

{-# NOINLINE ptr_glDebugMessageInsert #-}
ptr_glDebugMessageInsert :: FunPtr (GLenum -> GLenum -> GLuint -> GLenum -> GLsizei -> Ptr GLchar -> IO ())
ptr_glDebugMessageInsert = unsafePerformIO $ getCommand "glDebugMessageInsert"

-- glDebugMessageInsertAMD -----------------------------------------------------

glDebugMessageInsertAMD
  :: GLenum -- ^ @category@.
  -> GLenum -- ^ @severity@.
  -> GLuint -- ^ @id@.
  -> GLsizei -- ^ @length@.
  -> Ptr GLchar -- ^ @buf@ pointing to @length@ elements of type @GLchar@.
  -> IO ()
glDebugMessageInsertAMD = dyn_glDebugMessageInsertAMD ptr_glDebugMessageInsertAMD

foreign import CALLCONV "dynamic" dyn_glDebugMessageInsertAMD
  :: FunPtr (GLenum -> GLenum -> GLuint -> GLsizei -> Ptr GLchar -> IO ())
  ->         GLenum -> GLenum -> GLuint -> GLsizei -> Ptr GLchar -> IO ()

{-# NOINLINE ptr_glDebugMessageInsertAMD #-}
ptr_glDebugMessageInsertAMD :: FunPtr (GLenum -> GLenum -> GLuint -> GLsizei -> Ptr GLchar -> IO ())
ptr_glDebugMessageInsertAMD = unsafePerformIO $ getCommand "glDebugMessageInsertAMD"

-- glDebugMessageInsertARB -----------------------------------------------------

glDebugMessageInsertARB
  :: GLenum -- ^ @source@.
  -> GLenum -- ^ @type@.
  -> GLuint -- ^ @id@.
  -> GLenum -- ^ @severity@.
  -> GLsizei -- ^ @length@.
  -> Ptr GLchar -- ^ @buf@ pointing to @length@ elements of type @GLchar@.
  -> IO ()
glDebugMessageInsertARB = dyn_glDebugMessageInsertARB ptr_glDebugMessageInsertARB

foreign import CALLCONV "dynamic" dyn_glDebugMessageInsertARB
  :: FunPtr (GLenum -> GLenum -> GLuint -> GLenum -> GLsizei -> Ptr GLchar -> IO ())
  ->         GLenum -> GLenum -> GLuint -> GLenum -> GLsizei -> Ptr GLchar -> IO ()

{-# NOINLINE ptr_glDebugMessageInsertARB #-}
ptr_glDebugMessageInsertARB :: FunPtr (GLenum -> GLenum -> GLuint -> GLenum -> GLsizei -> Ptr GLchar -> IO ())
ptr_glDebugMessageInsertARB = unsafePerformIO $ getCommand "glDebugMessageInsertARB"

-- glDebugMessageInsertKHR -----------------------------------------------------

glDebugMessageInsertKHR
  :: GLenum -- ^ @source@.
  -> GLenum -- ^ @type@.
  -> GLuint -- ^ @id@.
  -> GLenum -- ^ @severity@.
  -> GLsizei -- ^ @length@.
  -> Ptr GLchar -- ^ @buf@.
  -> IO ()
glDebugMessageInsertKHR = dyn_glDebugMessageInsertKHR ptr_glDebugMessageInsertKHR

foreign import CALLCONV "dynamic" dyn_glDebugMessageInsertKHR
  :: FunPtr (GLenum -> GLenum -> GLuint -> GLenum -> GLsizei -> Ptr GLchar -> IO ())
  ->         GLenum -> GLenum -> GLuint -> GLenum -> GLsizei -> Ptr GLchar -> IO ()

{-# NOINLINE ptr_glDebugMessageInsertKHR #-}
ptr_glDebugMessageInsertKHR :: FunPtr (GLenum -> GLenum -> GLuint -> GLenum -> GLsizei -> Ptr GLchar -> IO ())
ptr_glDebugMessageInsertKHR = unsafePerformIO $ getCommand "glDebugMessageInsertKHR"

-- glDeformSGIX ----------------------------------------------------------------

glDeformSGIX
  :: GLbitfield -- ^ @mask@ of type @FfdMaskSGIX@.
  -> IO ()
glDeformSGIX = dyn_glDeformSGIX ptr_glDeformSGIX

foreign import CALLCONV "dynamic" dyn_glDeformSGIX
  :: FunPtr (GLbitfield -> IO ())
  ->         GLbitfield -> IO ()

{-# NOINLINE ptr_glDeformSGIX #-}
ptr_glDeformSGIX :: FunPtr (GLbitfield -> IO ())
ptr_glDeformSGIX = unsafePerformIO $ getCommand "glDeformSGIX"

-- glDeformationMap3dSGIX ------------------------------------------------------

glDeformationMap3dSGIX
  :: GLenum -- ^ @target@ of type @FfdTargetSGIX@.
  -> GLdouble -- ^ @u1@ of type @CoordD@.
  -> GLdouble -- ^ @u2@ of type @CoordD@.
  -> GLint -- ^ @ustride@.
  -> GLint -- ^ @uorder@ of type @CheckedInt32@.
  -> GLdouble -- ^ @v1@ of type @CoordD@.
  -> GLdouble -- ^ @v2@ of type @CoordD@.
  -> GLint -- ^ @vstride@.
  -> GLint -- ^ @vorder@ of type @CheckedInt32@.
  -> GLdouble -- ^ @w1@ of type @CoordD@.
  -> GLdouble -- ^ @w2@ of type @CoordD@.
  -> GLint -- ^ @wstride@.
  -> GLint -- ^ @worder@ of type @CheckedInt32@.
  -> Ptr GLdouble -- ^ @points@ pointing to @COMPSIZE(target,ustride,uorder,vstride,vorder,wstride,worder)@ elements of type @CoordD@.
  -> IO ()
glDeformationMap3dSGIX = dyn_glDeformationMap3dSGIX ptr_glDeformationMap3dSGIX

foreign import CALLCONV "dynamic" dyn_glDeformationMap3dSGIX
  :: FunPtr (GLenum -> GLdouble -> GLdouble -> GLint -> GLint -> GLdouble -> GLdouble -> GLint -> GLint -> GLdouble -> GLdouble -> GLint -> GLint -> Ptr GLdouble -> IO ())
  ->         GLenum -> GLdouble -> GLdouble -> GLint -> GLint -> GLdouble -> GLdouble -> GLint -> GLint -> GLdouble -> GLdouble -> GLint -> GLint -> Ptr GLdouble -> IO ()

{-# NOINLINE ptr_glDeformationMap3dSGIX #-}
ptr_glDeformationMap3dSGIX :: FunPtr (GLenum -> GLdouble -> GLdouble -> GLint -> GLint -> GLdouble -> GLdouble -> GLint -> GLint -> GLdouble -> GLdouble -> GLint -> GLint -> Ptr GLdouble -> IO ())
ptr_glDeformationMap3dSGIX = unsafePerformIO $ getCommand "glDeformationMap3dSGIX"

-- glDeformationMap3fSGIX ------------------------------------------------------

glDeformationMap3fSGIX
  :: GLenum -- ^ @target@ of type @FfdTargetSGIX@.
  -> GLfloat -- ^ @u1@ of type @CoordF@.
  -> GLfloat -- ^ @u2@ of type @CoordF@.
  -> GLint -- ^ @ustride@.
  -> GLint -- ^ @uorder@ of type @CheckedInt32@.
  -> GLfloat -- ^ @v1@ of type @CoordF@.
  -> GLfloat -- ^ @v2@ of type @CoordF@.
  -> GLint -- ^ @vstride@.
  -> GLint -- ^ @vorder@ of type @CheckedInt32@.
  -> GLfloat -- ^ @w1@ of type @CoordF@.
  -> GLfloat -- ^ @w2@ of type @CoordF@.
  -> GLint -- ^ @wstride@.
  -> GLint -- ^ @worder@ of type @CheckedInt32@.
  -> Ptr GLfloat -- ^ @points@ pointing to @COMPSIZE(target,ustride,uorder,vstride,vorder,wstride,worder)@ elements of type @CoordF@.
  -> IO ()
glDeformationMap3fSGIX = dyn_glDeformationMap3fSGIX ptr_glDeformationMap3fSGIX

foreign import CALLCONV "dynamic" dyn_glDeformationMap3fSGIX
  :: FunPtr (GLenum -> GLfloat -> GLfloat -> GLint -> GLint -> GLfloat -> GLfloat -> GLint -> GLint -> GLfloat -> GLfloat -> GLint -> GLint -> Ptr GLfloat -> IO ())
  ->         GLenum -> GLfloat -> GLfloat -> GLint -> GLint -> GLfloat -> GLfloat -> GLint -> GLint -> GLfloat -> GLfloat -> GLint -> GLint -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glDeformationMap3fSGIX #-}
ptr_glDeformationMap3fSGIX :: FunPtr (GLenum -> GLfloat -> GLfloat -> GLint -> GLint -> GLfloat -> GLfloat -> GLint -> GLint -> GLfloat -> GLfloat -> GLint -> GLint -> Ptr GLfloat -> IO ())
ptr_glDeformationMap3fSGIX = unsafePerformIO $ getCommand "glDeformationMap3fSGIX"

-- glDeleteAsyncMarkersSGIX ----------------------------------------------------

glDeleteAsyncMarkersSGIX
  :: GLuint -- ^ @marker@.
  -> GLsizei -- ^ @range@.
  -> IO ()
glDeleteAsyncMarkersSGIX = dyn_glDeleteAsyncMarkersSGIX ptr_glDeleteAsyncMarkersSGIX

foreign import CALLCONV "dynamic" dyn_glDeleteAsyncMarkersSGIX
  :: FunPtr (GLuint -> GLsizei -> IO ())
  ->         GLuint -> GLsizei -> IO ()

{-# NOINLINE ptr_glDeleteAsyncMarkersSGIX #-}
ptr_glDeleteAsyncMarkersSGIX :: FunPtr (GLuint -> GLsizei -> IO ())
ptr_glDeleteAsyncMarkersSGIX = unsafePerformIO $ getCommand "glDeleteAsyncMarkersSGIX"

-- glDeleteBuffers -------------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glDeleteBuffers.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glDeleteBuffers.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glDeleteBuffers.xhtml OpenGL 4.x>
glDeleteBuffers
  :: GLsizei -- ^ @n@.
  -> Ptr GLuint -- ^ @buffers@ pointing to @n@ elements of type @GLuint@.
  -> IO ()
glDeleteBuffers = dyn_glDeleteBuffers ptr_glDeleteBuffers

foreign import CALLCONV "dynamic" dyn_glDeleteBuffers
  :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
  ->         GLsizei -> Ptr GLuint -> IO ()

{-# NOINLINE ptr_glDeleteBuffers #-}
ptr_glDeleteBuffers :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
ptr_glDeleteBuffers = unsafePerformIO $ getCommand "glDeleteBuffers"

-- glDeleteBuffersARB ----------------------------------------------------------

glDeleteBuffersARB
  :: GLsizei -- ^ @n@.
  -> Ptr GLuint -- ^ @buffers@ pointing to @n@ elements of type @GLuint@.
  -> IO ()
glDeleteBuffersARB = dyn_glDeleteBuffersARB ptr_glDeleteBuffersARB

foreign import CALLCONV "dynamic" dyn_glDeleteBuffersARB
  :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
  ->         GLsizei -> Ptr GLuint -> IO ()

{-# NOINLINE ptr_glDeleteBuffersARB #-}
ptr_glDeleteBuffersARB :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
ptr_glDeleteBuffersARB = unsafePerformIO $ getCommand "glDeleteBuffersARB"

-- glDeleteFencesAPPLE ---------------------------------------------------------

glDeleteFencesAPPLE
  :: GLsizei -- ^ @n@.
  -> Ptr GLuint -- ^ @fences@ pointing to @n@ elements of type @FenceNV@.
  -> IO ()
glDeleteFencesAPPLE = dyn_glDeleteFencesAPPLE ptr_glDeleteFencesAPPLE

foreign import CALLCONV "dynamic" dyn_glDeleteFencesAPPLE
  :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
  ->         GLsizei -> Ptr GLuint -> IO ()

{-# NOINLINE ptr_glDeleteFencesAPPLE #-}
ptr_glDeleteFencesAPPLE :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
ptr_glDeleteFencesAPPLE = unsafePerformIO $ getCommand "glDeleteFencesAPPLE"

-- glDeleteFencesNV ------------------------------------------------------------

glDeleteFencesNV
  :: GLsizei -- ^ @n@.
  -> Ptr GLuint -- ^ @fences@ pointing to @n@ elements of type @FenceNV@.
  -> IO ()
glDeleteFencesNV = dyn_glDeleteFencesNV ptr_glDeleteFencesNV

foreign import CALLCONV "dynamic" dyn_glDeleteFencesNV
  :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
  ->         GLsizei -> Ptr GLuint -> IO ()

{-# NOINLINE ptr_glDeleteFencesNV #-}
ptr_glDeleteFencesNV :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
ptr_glDeleteFencesNV = unsafePerformIO $ getCommand "glDeleteFencesNV"

-- glDeleteFragmentShaderATI ---------------------------------------------------

glDeleteFragmentShaderATI
  :: GLuint -- ^ @id@.
  -> IO ()
glDeleteFragmentShaderATI = dyn_glDeleteFragmentShaderATI ptr_glDeleteFragmentShaderATI

foreign import CALLCONV "dynamic" dyn_glDeleteFragmentShaderATI
  :: FunPtr (GLuint -> IO ())
  ->         GLuint -> IO ()

{-# NOINLINE ptr_glDeleteFragmentShaderATI #-}
ptr_glDeleteFragmentShaderATI :: FunPtr (GLuint -> IO ())
ptr_glDeleteFragmentShaderATI = unsafePerformIO $ getCommand "glDeleteFragmentShaderATI"

-- glDeleteFramebuffers --------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glDeleteFramebuffers.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glDeleteFramebuffers.xhtml OpenGL 4.x>
glDeleteFramebuffers
  :: GLsizei -- ^ @n@.
  -> Ptr GLuint -- ^ @framebuffers@ pointing to @n@ elements of type @GLuint@.
  -> IO ()
glDeleteFramebuffers = dyn_glDeleteFramebuffers ptr_glDeleteFramebuffers

foreign import CALLCONV "dynamic" dyn_glDeleteFramebuffers
  :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
  ->         GLsizei -> Ptr GLuint -> IO ()

{-# NOINLINE ptr_glDeleteFramebuffers #-}
ptr_glDeleteFramebuffers :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
ptr_glDeleteFramebuffers = unsafePerformIO $ getCommand "glDeleteFramebuffers"

-- glDeleteFramebuffersEXT -----------------------------------------------------

glDeleteFramebuffersEXT
  :: GLsizei -- ^ @n@.
  -> Ptr GLuint -- ^ @framebuffers@ pointing to @n@ elements of type @GLuint@.
  -> IO ()
glDeleteFramebuffersEXT = dyn_glDeleteFramebuffersEXT ptr_glDeleteFramebuffersEXT

foreign import CALLCONV "dynamic" dyn_glDeleteFramebuffersEXT
  :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
  ->         GLsizei -> Ptr GLuint -> IO ()

{-# NOINLINE ptr_glDeleteFramebuffersEXT #-}
ptr_glDeleteFramebuffersEXT :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
ptr_glDeleteFramebuffersEXT = unsafePerformIO $ getCommand "glDeleteFramebuffersEXT"

-- glDeleteFramebuffersOES -----------------------------------------------------

glDeleteFramebuffersOES
  :: GLsizei -- ^ @n@.
  -> Ptr GLuint -- ^ @framebuffers@ pointing to @n@ elements of type @GLuint@.
  -> IO ()
glDeleteFramebuffersOES = dyn_glDeleteFramebuffersOES ptr_glDeleteFramebuffersOES

foreign import CALLCONV "dynamic" dyn_glDeleteFramebuffersOES
  :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
  ->         GLsizei -> Ptr GLuint -> IO ()

{-# NOINLINE ptr_glDeleteFramebuffersOES #-}
ptr_glDeleteFramebuffersOES :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
ptr_glDeleteFramebuffersOES = unsafePerformIO $ getCommand "glDeleteFramebuffersOES"

-- glDeleteLists ---------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glDeleteLists.xml OpenGL 2.x>
glDeleteLists
  :: GLuint -- ^ @list@ of type @List@.
  -> GLsizei -- ^ @range@.
  -> IO ()
glDeleteLists = dyn_glDeleteLists ptr_glDeleteLists

foreign import CALLCONV "dynamic" dyn_glDeleteLists
  :: FunPtr (GLuint -> GLsizei -> IO ())
  ->         GLuint -> GLsizei -> IO ()

{-# NOINLINE ptr_glDeleteLists #-}
ptr_glDeleteLists :: FunPtr (GLuint -> GLsizei -> IO ())
ptr_glDeleteLists = unsafePerformIO $ getCommand "glDeleteLists"

-- glDeleteNamedStringARB ------------------------------------------------------

glDeleteNamedStringARB
  :: GLint -- ^ @namelen@.
  -> Ptr GLchar -- ^ @name@ pointing to @namelen@ elements of type @GLchar@.
  -> IO ()
glDeleteNamedStringARB = dyn_glDeleteNamedStringARB ptr_glDeleteNamedStringARB

foreign import CALLCONV "dynamic" dyn_glDeleteNamedStringARB
  :: FunPtr (GLint -> Ptr GLchar -> IO ())
  ->         GLint -> Ptr GLchar -> IO ()

{-# NOINLINE ptr_glDeleteNamedStringARB #-}
ptr_glDeleteNamedStringARB :: FunPtr (GLint -> Ptr GLchar -> IO ())
ptr_glDeleteNamedStringARB = unsafePerformIO $ getCommand "glDeleteNamedStringARB"

-- glDeleteNamesAMD ------------------------------------------------------------

glDeleteNamesAMD
  :: GLenum -- ^ @identifier@.
  -> GLuint -- ^ @num@.
  -> Ptr GLuint -- ^ @names@ pointing to @num@ elements of type @GLuint@.
  -> IO ()
glDeleteNamesAMD = dyn_glDeleteNamesAMD ptr_glDeleteNamesAMD

foreign import CALLCONV "dynamic" dyn_glDeleteNamesAMD
  :: FunPtr (GLenum -> GLuint -> Ptr GLuint -> IO ())
  ->         GLenum -> GLuint -> Ptr GLuint -> IO ()

{-# NOINLINE ptr_glDeleteNamesAMD #-}
ptr_glDeleteNamesAMD :: FunPtr (GLenum -> GLuint -> Ptr GLuint -> IO ())
ptr_glDeleteNamesAMD = unsafePerformIO $ getCommand "glDeleteNamesAMD"

-- glDeleteObjectARB -----------------------------------------------------------

glDeleteObjectARB
  :: GLhandleARB -- ^ @obj@ of type @handleARB@.
  -> IO ()
glDeleteObjectARB = dyn_glDeleteObjectARB ptr_glDeleteObjectARB

foreign import CALLCONV "dynamic" dyn_glDeleteObjectARB
  :: FunPtr (GLhandleARB -> IO ())
  ->         GLhandleARB -> IO ()

{-# NOINLINE ptr_glDeleteObjectARB #-}
ptr_glDeleteObjectARB :: FunPtr (GLhandleARB -> IO ())
ptr_glDeleteObjectARB = unsafePerformIO $ getCommand "glDeleteObjectARB"

-- glDeleteOcclusionQueriesNV --------------------------------------------------

glDeleteOcclusionQueriesNV
  :: GLsizei -- ^ @n@.
  -> Ptr GLuint -- ^ @ids@ pointing to @n@ elements of type @GLuint@.
  -> IO ()
glDeleteOcclusionQueriesNV = dyn_glDeleteOcclusionQueriesNV ptr_glDeleteOcclusionQueriesNV

foreign import CALLCONV "dynamic" dyn_glDeleteOcclusionQueriesNV
  :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
  ->         GLsizei -> Ptr GLuint -> IO ()

{-# NOINLINE ptr_glDeleteOcclusionQueriesNV #-}
ptr_glDeleteOcclusionQueriesNV :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
ptr_glDeleteOcclusionQueriesNV = unsafePerformIO $ getCommand "glDeleteOcclusionQueriesNV"

-- glDeletePathsNV -------------------------------------------------------------

glDeletePathsNV
  :: GLuint -- ^ @path@ of type @Path@.
  -> GLsizei -- ^ @range@.
  -> IO ()
glDeletePathsNV = dyn_glDeletePathsNV ptr_glDeletePathsNV

foreign import CALLCONV "dynamic" dyn_glDeletePathsNV
  :: FunPtr (GLuint -> GLsizei -> IO ())
  ->         GLuint -> GLsizei -> IO ()

{-# NOINLINE ptr_glDeletePathsNV #-}
ptr_glDeletePathsNV :: FunPtr (GLuint -> GLsizei -> IO ())
ptr_glDeletePathsNV = unsafePerformIO $ getCommand "glDeletePathsNV"

-- glDeletePerfMonitorsAMD -----------------------------------------------------

glDeletePerfMonitorsAMD
  :: GLsizei -- ^ @n@.
  -> Ptr GLuint -- ^ @monitors@ pointing to @n@ elements of type @GLuint@.
  -> IO ()
glDeletePerfMonitorsAMD = dyn_glDeletePerfMonitorsAMD ptr_glDeletePerfMonitorsAMD

foreign import CALLCONV "dynamic" dyn_glDeletePerfMonitorsAMD
  :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
  ->         GLsizei -> Ptr GLuint -> IO ()

{-# NOINLINE ptr_glDeletePerfMonitorsAMD #-}
ptr_glDeletePerfMonitorsAMD :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
ptr_glDeletePerfMonitorsAMD = unsafePerformIO $ getCommand "glDeletePerfMonitorsAMD"

-- glDeletePerfQueryINTEL ------------------------------------------------------

glDeletePerfQueryINTEL
  :: GLuint -- ^ @queryHandle@.
  -> IO ()
glDeletePerfQueryINTEL = dyn_glDeletePerfQueryINTEL ptr_glDeletePerfQueryINTEL

foreign import CALLCONV "dynamic" dyn_glDeletePerfQueryINTEL
  :: FunPtr (GLuint -> IO ())
  ->         GLuint -> IO ()

{-# NOINLINE ptr_glDeletePerfQueryINTEL #-}
ptr_glDeletePerfQueryINTEL :: FunPtr (GLuint -> IO ())
ptr_glDeletePerfQueryINTEL = unsafePerformIO $ getCommand "glDeletePerfQueryINTEL"

-- glDeleteProgram -------------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glDeleteProgram.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glDeleteProgram.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glDeleteProgram.xhtml OpenGL 4.x>
glDeleteProgram
  :: GLuint -- ^ @program@.
  -> IO ()
glDeleteProgram = dyn_glDeleteProgram ptr_glDeleteProgram

foreign import CALLCONV "dynamic" dyn_glDeleteProgram
  :: FunPtr (GLuint -> IO ())
  ->         GLuint -> IO ()

{-# NOINLINE ptr_glDeleteProgram #-}
ptr_glDeleteProgram :: FunPtr (GLuint -> IO ())
ptr_glDeleteProgram = unsafePerformIO $ getCommand "glDeleteProgram"

-- glDeleteProgramPipelines ----------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glDeleteProgramPipelines.xhtml OpenGL 4.x>
glDeleteProgramPipelines
  :: GLsizei -- ^ @n@.
  -> Ptr GLuint -- ^ @pipelines@ pointing to @n@ elements of type @GLuint@.
  -> IO ()
glDeleteProgramPipelines = dyn_glDeleteProgramPipelines ptr_glDeleteProgramPipelines

foreign import CALLCONV "dynamic" dyn_glDeleteProgramPipelines
  :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
  ->         GLsizei -> Ptr GLuint -> IO ()

{-# NOINLINE ptr_glDeleteProgramPipelines #-}
ptr_glDeleteProgramPipelines :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
ptr_glDeleteProgramPipelines = unsafePerformIO $ getCommand "glDeleteProgramPipelines"

-- glDeleteProgramPipelinesEXT -------------------------------------------------

glDeleteProgramPipelinesEXT
  :: GLsizei -- ^ @n@.
  -> Ptr GLuint -- ^ @pipelines@ pointing to @n@ elements of type @GLuint@.
  -> IO ()
glDeleteProgramPipelinesEXT = dyn_glDeleteProgramPipelinesEXT ptr_glDeleteProgramPipelinesEXT

foreign import CALLCONV "dynamic" dyn_glDeleteProgramPipelinesEXT
  :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
  ->         GLsizei -> Ptr GLuint -> IO ()

{-# NOINLINE ptr_glDeleteProgramPipelinesEXT #-}
ptr_glDeleteProgramPipelinesEXT :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
ptr_glDeleteProgramPipelinesEXT = unsafePerformIO $ getCommand "glDeleteProgramPipelinesEXT"

-- glDeleteProgramsARB ---------------------------------------------------------

glDeleteProgramsARB
  :: GLsizei -- ^ @n@.
  -> Ptr GLuint -- ^ @programs@ pointing to @n@ elements of type @GLuint@.
  -> IO ()
glDeleteProgramsARB = dyn_glDeleteProgramsARB ptr_glDeleteProgramsARB

foreign import CALLCONV "dynamic" dyn_glDeleteProgramsARB
  :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
  ->         GLsizei -> Ptr GLuint -> IO ()

{-# NOINLINE ptr_glDeleteProgramsARB #-}
ptr_glDeleteProgramsARB :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
ptr_glDeleteProgramsARB = unsafePerformIO $ getCommand "glDeleteProgramsARB"

-- glDeleteProgramsNV ----------------------------------------------------------

glDeleteProgramsNV
  :: GLsizei -- ^ @n@.
  -> Ptr GLuint -- ^ @programs@ pointing to @n@ elements of type @GLuint@.
  -> IO ()
glDeleteProgramsNV = dyn_glDeleteProgramsNV ptr_glDeleteProgramsNV

foreign import CALLCONV "dynamic" dyn_glDeleteProgramsNV
  :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
  ->         GLsizei -> Ptr GLuint -> IO ()

{-# NOINLINE ptr_glDeleteProgramsNV #-}
ptr_glDeleteProgramsNV :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
ptr_glDeleteProgramsNV = unsafePerformIO $ getCommand "glDeleteProgramsNV"

-- glDeleteQueries -------------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glDeleteQueries.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glDeleteQueries.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glDeleteQueries.xhtml OpenGL 4.x>
glDeleteQueries
  :: GLsizei -- ^ @n@.
  -> Ptr GLuint -- ^ @ids@ pointing to @n@ elements of type @GLuint@.
  -> IO ()
glDeleteQueries = dyn_glDeleteQueries ptr_glDeleteQueries

foreign import CALLCONV "dynamic" dyn_glDeleteQueries
  :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
  ->         GLsizei -> Ptr GLuint -> IO ()

{-# NOINLINE ptr_glDeleteQueries #-}
ptr_glDeleteQueries :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
ptr_glDeleteQueries = unsafePerformIO $ getCommand "glDeleteQueries"

-- glDeleteQueriesARB ----------------------------------------------------------

glDeleteQueriesARB
  :: GLsizei -- ^ @n@.
  -> Ptr GLuint -- ^ @ids@ pointing to @n@ elements of type @GLuint@.
  -> IO ()
glDeleteQueriesARB = dyn_glDeleteQueriesARB ptr_glDeleteQueriesARB

foreign import CALLCONV "dynamic" dyn_glDeleteQueriesARB
  :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
  ->         GLsizei -> Ptr GLuint -> IO ()

{-# NOINLINE ptr_glDeleteQueriesARB #-}
ptr_glDeleteQueriesARB :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
ptr_glDeleteQueriesARB = unsafePerformIO $ getCommand "glDeleteQueriesARB"

-- glDeleteQueriesEXT ----------------------------------------------------------

glDeleteQueriesEXT
  :: GLsizei -- ^ @n@.
  -> Ptr GLuint -- ^ @ids@ pointing to @n@ elements of type @GLuint@.
  -> IO ()
glDeleteQueriesEXT = dyn_glDeleteQueriesEXT ptr_glDeleteQueriesEXT

foreign import CALLCONV "dynamic" dyn_glDeleteQueriesEXT
  :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
  ->         GLsizei -> Ptr GLuint -> IO ()

{-# NOINLINE ptr_glDeleteQueriesEXT #-}
ptr_glDeleteQueriesEXT :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
ptr_glDeleteQueriesEXT = unsafePerformIO $ getCommand "glDeleteQueriesEXT"

-- glDeleteRenderbuffers -------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glDeleteRenderbuffers.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glDeleteRenderbuffers.xhtml OpenGL 4.x>
glDeleteRenderbuffers
  :: GLsizei -- ^ @n@.
  -> Ptr GLuint -- ^ @renderbuffers@ pointing to @n@ elements of type @GLuint@.
  -> IO ()
glDeleteRenderbuffers = dyn_glDeleteRenderbuffers ptr_glDeleteRenderbuffers

foreign import CALLCONV "dynamic" dyn_glDeleteRenderbuffers
  :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
  ->         GLsizei -> Ptr GLuint -> IO ()

{-# NOINLINE ptr_glDeleteRenderbuffers #-}
ptr_glDeleteRenderbuffers :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
ptr_glDeleteRenderbuffers = unsafePerformIO $ getCommand "glDeleteRenderbuffers"

-- glDeleteRenderbuffersEXT ----------------------------------------------------

glDeleteRenderbuffersEXT
  :: GLsizei -- ^ @n@.
  -> Ptr GLuint -- ^ @renderbuffers@ pointing to @n@ elements of type @GLuint@.
  -> IO ()
glDeleteRenderbuffersEXT = dyn_glDeleteRenderbuffersEXT ptr_glDeleteRenderbuffersEXT

foreign import CALLCONV "dynamic" dyn_glDeleteRenderbuffersEXT
  :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
  ->         GLsizei -> Ptr GLuint -> IO ()

{-# NOINLINE ptr_glDeleteRenderbuffersEXT #-}
ptr_glDeleteRenderbuffersEXT :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
ptr_glDeleteRenderbuffersEXT = unsafePerformIO $ getCommand "glDeleteRenderbuffersEXT"

-- glDeleteRenderbuffersOES ----------------------------------------------------

glDeleteRenderbuffersOES
  :: GLsizei -- ^ @n@.
  -> Ptr GLuint -- ^ @renderbuffers@ pointing to @n@ elements of type @GLuint@.
  -> IO ()
glDeleteRenderbuffersOES = dyn_glDeleteRenderbuffersOES ptr_glDeleteRenderbuffersOES

foreign import CALLCONV "dynamic" dyn_glDeleteRenderbuffersOES
  :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
  ->         GLsizei -> Ptr GLuint -> IO ()

{-# NOINLINE ptr_glDeleteRenderbuffersOES #-}
ptr_glDeleteRenderbuffersOES :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
ptr_glDeleteRenderbuffersOES = unsafePerformIO $ getCommand "glDeleteRenderbuffersOES"

-- glDeleteSamplers ------------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glDeleteSamplers.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glDeleteSamplers.xhtml OpenGL 4.x>
glDeleteSamplers
  :: GLsizei -- ^ @count@.
  -> Ptr GLuint -- ^ @samplers@ pointing to @count@ elements of type @GLuint@.
  -> IO ()
glDeleteSamplers = dyn_glDeleteSamplers ptr_glDeleteSamplers

foreign import CALLCONV "dynamic" dyn_glDeleteSamplers
  :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
  ->         GLsizei -> Ptr GLuint -> IO ()

{-# NOINLINE ptr_glDeleteSamplers #-}
ptr_glDeleteSamplers :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
ptr_glDeleteSamplers = unsafePerformIO $ getCommand "glDeleteSamplers"

-- glDeleteShader --------------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glDeleteShader.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glDeleteShader.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glDeleteShader.xhtml OpenGL 4.x>
glDeleteShader
  :: GLuint -- ^ @shader@.
  -> IO ()
glDeleteShader = dyn_glDeleteShader ptr_glDeleteShader

foreign import CALLCONV "dynamic" dyn_glDeleteShader
  :: FunPtr (GLuint -> IO ())
  ->         GLuint -> IO ()

{-# NOINLINE ptr_glDeleteShader #-}
ptr_glDeleteShader :: FunPtr (GLuint -> IO ())
ptr_glDeleteShader = unsafePerformIO $ getCommand "glDeleteShader"

-- glDeleteSync ----------------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glDeleteSync.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glDeleteSync.xhtml OpenGL 4.x>
glDeleteSync
  :: GLsync -- ^ @sync@ of type @sync@.
  -> IO ()
glDeleteSync = dyn_glDeleteSync ptr_glDeleteSync

foreign import CALLCONV "dynamic" dyn_glDeleteSync
  :: FunPtr (GLsync -> IO ())
  ->         GLsync -> IO ()

{-# NOINLINE ptr_glDeleteSync #-}
ptr_glDeleteSync :: FunPtr (GLsync -> IO ())
ptr_glDeleteSync = unsafePerformIO $ getCommand "glDeleteSync"

-- glDeleteSyncAPPLE -----------------------------------------------------------

glDeleteSyncAPPLE
  :: GLsync -- ^ @sync@.
  -> IO ()
glDeleteSyncAPPLE = dyn_glDeleteSyncAPPLE ptr_glDeleteSyncAPPLE

foreign import CALLCONV "dynamic" dyn_glDeleteSyncAPPLE
  :: FunPtr (GLsync -> IO ())
  ->         GLsync -> IO ()

{-# NOINLINE ptr_glDeleteSyncAPPLE #-}
ptr_glDeleteSyncAPPLE :: FunPtr (GLsync -> IO ())
ptr_glDeleteSyncAPPLE = unsafePerformIO $ getCommand "glDeleteSyncAPPLE"

-- glDeleteTextures ------------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glDeleteTextures.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glDeleteTextures.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glDeleteTextures.xhtml OpenGL 4.x>
glDeleteTextures
  :: GLsizei -- ^ @n@.
  -> Ptr GLuint -- ^ @textures@ pointing to @n@ elements of type @Texture@.
  -> IO ()
glDeleteTextures = dyn_glDeleteTextures ptr_glDeleteTextures

foreign import CALLCONV "dynamic" dyn_glDeleteTextures
  :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
  ->         GLsizei -> Ptr GLuint -> IO ()

{-# NOINLINE ptr_glDeleteTextures #-}
ptr_glDeleteTextures :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
ptr_glDeleteTextures = unsafePerformIO $ getCommand "glDeleteTextures"

-- glDeleteTexturesEXT ---------------------------------------------------------

glDeleteTexturesEXT
  :: GLsizei -- ^ @n@.
  -> Ptr GLuint -- ^ @textures@ pointing to @n@ elements of type @Texture@.
  -> IO ()
glDeleteTexturesEXT = dyn_glDeleteTexturesEXT ptr_glDeleteTexturesEXT

foreign import CALLCONV "dynamic" dyn_glDeleteTexturesEXT
  :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
  ->         GLsizei -> Ptr GLuint -> IO ()

{-# NOINLINE ptr_glDeleteTexturesEXT #-}
ptr_glDeleteTexturesEXT :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
ptr_glDeleteTexturesEXT = unsafePerformIO $ getCommand "glDeleteTexturesEXT"

-- glDeleteTransformFeedbacks --------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glDeleteTransformFeedbacks.xhtml OpenGL 4.x>
glDeleteTransformFeedbacks
  :: GLsizei -- ^ @n@.
  -> Ptr GLuint -- ^ @ids@ pointing to @n@ elements of type @GLuint@.
  -> IO ()
glDeleteTransformFeedbacks = dyn_glDeleteTransformFeedbacks ptr_glDeleteTransformFeedbacks

foreign import CALLCONV "dynamic" dyn_glDeleteTransformFeedbacks
  :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
  ->         GLsizei -> Ptr GLuint -> IO ()

{-# NOINLINE ptr_glDeleteTransformFeedbacks #-}
ptr_glDeleteTransformFeedbacks :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
ptr_glDeleteTransformFeedbacks = unsafePerformIO $ getCommand "glDeleteTransformFeedbacks"

-- glDeleteTransformFeedbacksNV ------------------------------------------------

glDeleteTransformFeedbacksNV
  :: GLsizei -- ^ @n@.
  -> Ptr GLuint -- ^ @ids@ pointing to @n@ elements of type @GLuint@.
  -> IO ()
glDeleteTransformFeedbacksNV = dyn_glDeleteTransformFeedbacksNV ptr_glDeleteTransformFeedbacksNV

foreign import CALLCONV "dynamic" dyn_glDeleteTransformFeedbacksNV
  :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
  ->         GLsizei -> Ptr GLuint -> IO ()

{-# NOINLINE ptr_glDeleteTransformFeedbacksNV #-}
ptr_glDeleteTransformFeedbacksNV :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
ptr_glDeleteTransformFeedbacksNV = unsafePerformIO $ getCommand "glDeleteTransformFeedbacksNV"

-- glDeleteVertexArrays --------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glDeleteVertexArrays.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glDeleteVertexArrays.xhtml OpenGL 4.x>
glDeleteVertexArrays
  :: GLsizei -- ^ @n@.
  -> Ptr GLuint -- ^ @arrays@ pointing to @n@ elements of type @GLuint@.
  -> IO ()
glDeleteVertexArrays = dyn_glDeleteVertexArrays ptr_glDeleteVertexArrays

foreign import CALLCONV "dynamic" dyn_glDeleteVertexArrays
  :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
  ->         GLsizei -> Ptr GLuint -> IO ()

{-# NOINLINE ptr_glDeleteVertexArrays #-}
ptr_glDeleteVertexArrays :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
ptr_glDeleteVertexArrays = unsafePerformIO $ getCommand "glDeleteVertexArrays"

-- glDeleteVertexArraysAPPLE ---------------------------------------------------

glDeleteVertexArraysAPPLE
  :: GLsizei -- ^ @n@.
  -> Ptr GLuint -- ^ @arrays@ pointing to @n@ elements of type @GLuint@.
  -> IO ()
glDeleteVertexArraysAPPLE = dyn_glDeleteVertexArraysAPPLE ptr_glDeleteVertexArraysAPPLE

foreign import CALLCONV "dynamic" dyn_glDeleteVertexArraysAPPLE
  :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
  ->         GLsizei -> Ptr GLuint -> IO ()

{-# NOINLINE ptr_glDeleteVertexArraysAPPLE #-}
ptr_glDeleteVertexArraysAPPLE :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
ptr_glDeleteVertexArraysAPPLE = unsafePerformIO $ getCommand "glDeleteVertexArraysAPPLE"

-- glDeleteVertexArraysOES -----------------------------------------------------

glDeleteVertexArraysOES
  :: GLsizei -- ^ @n@.
  -> Ptr GLuint -- ^ @arrays@ pointing to @n@ elements of type @GLuint@.
  -> IO ()
glDeleteVertexArraysOES = dyn_glDeleteVertexArraysOES ptr_glDeleteVertexArraysOES

foreign import CALLCONV "dynamic" dyn_glDeleteVertexArraysOES
  :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
  ->         GLsizei -> Ptr GLuint -> IO ()

{-# NOINLINE ptr_glDeleteVertexArraysOES #-}
ptr_glDeleteVertexArraysOES :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
ptr_glDeleteVertexArraysOES = unsafePerformIO $ getCommand "glDeleteVertexArraysOES"

-- glDeleteVertexShaderEXT -----------------------------------------------------

glDeleteVertexShaderEXT
  :: GLuint -- ^ @id@.
  -> IO ()
glDeleteVertexShaderEXT = dyn_glDeleteVertexShaderEXT ptr_glDeleteVertexShaderEXT

foreign import CALLCONV "dynamic" dyn_glDeleteVertexShaderEXT
  :: FunPtr (GLuint -> IO ())
  ->         GLuint -> IO ()

{-# NOINLINE ptr_glDeleteVertexShaderEXT #-}
ptr_glDeleteVertexShaderEXT :: FunPtr (GLuint -> IO ())
ptr_glDeleteVertexShaderEXT = unsafePerformIO $ getCommand "glDeleteVertexShaderEXT"

-- glDepthBoundsEXT ------------------------------------------------------------

glDepthBoundsEXT
  :: GLclampd -- ^ @zmin@ of type @ClampedFloat64@.
  -> GLclampd -- ^ @zmax@ of type @ClampedFloat64@.
  -> IO ()
glDepthBoundsEXT = dyn_glDepthBoundsEXT ptr_glDepthBoundsEXT

foreign import CALLCONV "dynamic" dyn_glDepthBoundsEXT
  :: FunPtr (GLclampd -> GLclampd -> IO ())
  ->         GLclampd -> GLclampd -> IO ()

{-# NOINLINE ptr_glDepthBoundsEXT #-}
ptr_glDepthBoundsEXT :: FunPtr (GLclampd -> GLclampd -> IO ())
ptr_glDepthBoundsEXT = unsafePerformIO $ getCommand "glDepthBoundsEXT"

-- glDepthBoundsdNV ------------------------------------------------------------

glDepthBoundsdNV
  :: GLdouble -- ^ @zmin@.
  -> GLdouble -- ^ @zmax@.
  -> IO ()
glDepthBoundsdNV = dyn_glDepthBoundsdNV ptr_glDepthBoundsdNV

foreign import CALLCONV "dynamic" dyn_glDepthBoundsdNV
  :: FunPtr (GLdouble -> GLdouble -> IO ())
  ->         GLdouble -> GLdouble -> IO ()

{-# NOINLINE ptr_glDepthBoundsdNV #-}
ptr_glDepthBoundsdNV :: FunPtr (GLdouble -> GLdouble -> IO ())
ptr_glDepthBoundsdNV = unsafePerformIO $ getCommand "glDepthBoundsdNV"

-- glDepthFunc -----------------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glDepthFunc.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glDepthFunc.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glDepthFunc.xhtml OpenGL 4.x>
glDepthFunc
  :: GLenum -- ^ @func@ of type @DepthFunction@.
  -> IO ()
glDepthFunc = dyn_glDepthFunc ptr_glDepthFunc

foreign import CALLCONV "dynamic" dyn_glDepthFunc
  :: FunPtr (GLenum -> IO ())
  ->         GLenum -> IO ()

{-# NOINLINE ptr_glDepthFunc #-}
ptr_glDepthFunc :: FunPtr (GLenum -> IO ())
ptr_glDepthFunc = unsafePerformIO $ getCommand "glDepthFunc"

-- glDepthMask -----------------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glDepthMask.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glDepthMask.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glDepthMask.xhtml OpenGL 4.x>
glDepthMask
  :: GLboolean -- ^ @flag@ of type @Boolean@.
  -> IO ()
glDepthMask = dyn_glDepthMask ptr_glDepthMask

foreign import CALLCONV "dynamic" dyn_glDepthMask
  :: FunPtr (GLboolean -> IO ())
  ->         GLboolean -> IO ()

{-# NOINLINE ptr_glDepthMask #-}
ptr_glDepthMask :: FunPtr (GLboolean -> IO ())
ptr_glDepthMask = unsafePerformIO $ getCommand "glDepthMask"

-- glDepthRange ----------------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glDepthRange.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glDepthRange.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glDepthRange.xhtml OpenGL 4.x>
glDepthRange
  :: GLdouble -- ^ @near@.
  -> GLdouble -- ^ @far@.
  -> IO ()
glDepthRange = dyn_glDepthRange ptr_glDepthRange

foreign import CALLCONV "dynamic" dyn_glDepthRange
  :: FunPtr (GLdouble -> GLdouble -> IO ())
  ->         GLdouble -> GLdouble -> IO ()

{-# NOINLINE ptr_glDepthRange #-}
ptr_glDepthRange :: FunPtr (GLdouble -> GLdouble -> IO ())
ptr_glDepthRange = unsafePerformIO $ getCommand "glDepthRange"

-- glDepthRangeArrayfvNV -------------------------------------------------------

glDepthRangeArrayfvNV
  :: GLuint -- ^ @first@.
  -> GLsizei -- ^ @count@.
  -> Ptr GLfloat -- ^ @v@.
  -> IO ()
glDepthRangeArrayfvNV = dyn_glDepthRangeArrayfvNV ptr_glDepthRangeArrayfvNV

foreign import CALLCONV "dynamic" dyn_glDepthRangeArrayfvNV
  :: FunPtr (GLuint -> GLsizei -> Ptr GLfloat -> IO ())
  ->         GLuint -> GLsizei -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glDepthRangeArrayfvNV #-}
ptr_glDepthRangeArrayfvNV :: FunPtr (GLuint -> GLsizei -> Ptr GLfloat -> IO ())
ptr_glDepthRangeArrayfvNV = unsafePerformIO $ getCommand "glDepthRangeArrayfvNV"

-- glDepthRangeArrayv ----------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glDepthRangeArray.xhtml OpenGL 4.x>
glDepthRangeArrayv
  :: GLuint -- ^ @first@.
  -> GLsizei -- ^ @count@.
  -> Ptr GLdouble -- ^ @v@ pointing to @COMPSIZE(count)@ elements of type @GLdouble@.
  -> IO ()
glDepthRangeArrayv = dyn_glDepthRangeArrayv ptr_glDepthRangeArrayv

foreign import CALLCONV "dynamic" dyn_glDepthRangeArrayv
  :: FunPtr (GLuint -> GLsizei -> Ptr GLdouble -> IO ())
  ->         GLuint -> GLsizei -> Ptr GLdouble -> IO ()

{-# NOINLINE ptr_glDepthRangeArrayv #-}
ptr_glDepthRangeArrayv :: FunPtr (GLuint -> GLsizei -> Ptr GLdouble -> IO ())
ptr_glDepthRangeArrayv = unsafePerformIO $ getCommand "glDepthRangeArrayv"

-- glDepthRangeIndexed ---------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glDepthRangeIndexed.xhtml OpenGL 4.x>
glDepthRangeIndexed
  :: GLuint -- ^ @index@.
  -> GLdouble -- ^ @n@.
  -> GLdouble -- ^ @f@.
  -> IO ()
glDepthRangeIndexed = dyn_glDepthRangeIndexed ptr_glDepthRangeIndexed

foreign import CALLCONV "dynamic" dyn_glDepthRangeIndexed
  :: FunPtr (GLuint -> GLdouble -> GLdouble -> IO ())
  ->         GLuint -> GLdouble -> GLdouble -> IO ()

{-# NOINLINE ptr_glDepthRangeIndexed #-}
ptr_glDepthRangeIndexed :: FunPtr (GLuint -> GLdouble -> GLdouble -> IO ())
ptr_glDepthRangeIndexed = unsafePerformIO $ getCommand "glDepthRangeIndexed"

-- glDepthRangeIndexedfNV ------------------------------------------------------

glDepthRangeIndexedfNV
  :: GLuint -- ^ @index@.
  -> GLfloat -- ^ @n@.
  -> GLfloat -- ^ @f@.
  -> IO ()
glDepthRangeIndexedfNV = dyn_glDepthRangeIndexedfNV ptr_glDepthRangeIndexedfNV

foreign import CALLCONV "dynamic" dyn_glDepthRangeIndexedfNV
  :: FunPtr (GLuint -> GLfloat -> GLfloat -> IO ())
  ->         GLuint -> GLfloat -> GLfloat -> IO ()

{-# NOINLINE ptr_glDepthRangeIndexedfNV #-}
ptr_glDepthRangeIndexedfNV :: FunPtr (GLuint -> GLfloat -> GLfloat -> IO ())
ptr_glDepthRangeIndexedfNV = unsafePerformIO $ getCommand "glDepthRangeIndexedfNV"

-- glDepthRangedNV -------------------------------------------------------------

glDepthRangedNV
  :: GLdouble -- ^ @zNear@.
  -> GLdouble -- ^ @zFar@.
  -> IO ()
glDepthRangedNV = dyn_glDepthRangedNV ptr_glDepthRangedNV

foreign import CALLCONV "dynamic" dyn_glDepthRangedNV
  :: FunPtr (GLdouble -> GLdouble -> IO ())
  ->         GLdouble -> GLdouble -> IO ()

{-# NOINLINE ptr_glDepthRangedNV #-}
ptr_glDepthRangedNV :: FunPtr (GLdouble -> GLdouble -> IO ())
ptr_glDepthRangedNV = unsafePerformIO $ getCommand "glDepthRangedNV"

-- glDepthRangef ---------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glDepthRange.xhtml OpenGL 4.x>
glDepthRangef
  :: GLfloat -- ^ @n@.
  -> GLfloat -- ^ @f@.
  -> IO ()
glDepthRangef = dyn_glDepthRangef ptr_glDepthRangef

foreign import CALLCONV "dynamic" dyn_glDepthRangef
  :: FunPtr (GLfloat -> GLfloat -> IO ())
  ->         GLfloat -> GLfloat -> IO ()

{-# NOINLINE ptr_glDepthRangef #-}
ptr_glDepthRangef :: FunPtr (GLfloat -> GLfloat -> IO ())
ptr_glDepthRangef = unsafePerformIO $ getCommand "glDepthRangef"

-- glDepthRangefOES ------------------------------------------------------------

glDepthRangefOES
  :: GLclampf -- ^ @n@ of type @ClampedFloat32@.
  -> GLclampf -- ^ @f@ of type @ClampedFloat32@.
  -> IO ()
glDepthRangefOES = dyn_glDepthRangefOES ptr_glDepthRangefOES

foreign import CALLCONV "dynamic" dyn_glDepthRangefOES
  :: FunPtr (GLclampf -> GLclampf -> IO ())
  ->         GLclampf -> GLclampf -> IO ()

{-# NOINLINE ptr_glDepthRangefOES #-}
ptr_glDepthRangefOES :: FunPtr (GLclampf -> GLclampf -> IO ())
ptr_glDepthRangefOES = unsafePerformIO $ getCommand "glDepthRangefOES"

-- glDepthRangex ---------------------------------------------------------------

glDepthRangex
  :: GLfixed -- ^ @n@.
  -> GLfixed -- ^ @f@.
  -> IO ()
glDepthRangex = dyn_glDepthRangex ptr_glDepthRangex

foreign import CALLCONV "dynamic" dyn_glDepthRangex
  :: FunPtr (GLfixed -> GLfixed -> IO ())
  ->         GLfixed -> GLfixed -> IO ()

{-# NOINLINE ptr_glDepthRangex #-}
ptr_glDepthRangex :: FunPtr (GLfixed -> GLfixed -> IO ())
ptr_glDepthRangex = unsafePerformIO $ getCommand "glDepthRangex"

-- glDepthRangexOES ------------------------------------------------------------

glDepthRangexOES
  :: GLfixed -- ^ @n@ of type @ClampedFixed@.
  -> GLfixed -- ^ @f@ of type @ClampedFixed@.
  -> IO ()
glDepthRangexOES = dyn_glDepthRangexOES ptr_glDepthRangexOES

foreign import CALLCONV "dynamic" dyn_glDepthRangexOES
  :: FunPtr (GLfixed -> GLfixed -> IO ())
  ->         GLfixed -> GLfixed -> IO ()

{-# NOINLINE ptr_glDepthRangexOES #-}
ptr_glDepthRangexOES :: FunPtr (GLfixed -> GLfixed -> IO ())
ptr_glDepthRangexOES = unsafePerformIO $ getCommand "glDepthRangexOES"

-- glDetachObjectARB -----------------------------------------------------------

glDetachObjectARB
  :: GLhandleARB -- ^ @containerObj@ of type @handleARB@.
  -> GLhandleARB -- ^ @attachedObj@ of type @handleARB@.
  -> IO ()
glDetachObjectARB = dyn_glDetachObjectARB ptr_glDetachObjectARB

foreign import CALLCONV "dynamic" dyn_glDetachObjectARB
  :: FunPtr (GLhandleARB -> GLhandleARB -> IO ())
  ->         GLhandleARB -> GLhandleARB -> IO ()

{-# NOINLINE ptr_glDetachObjectARB #-}
ptr_glDetachObjectARB :: FunPtr (GLhandleARB -> GLhandleARB -> IO ())
ptr_glDetachObjectARB = unsafePerformIO $ getCommand "glDetachObjectARB"

-- glDetachShader --------------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glDetachShader.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glDetachShader.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glDetachShader.xhtml OpenGL 4.x>
glDetachShader
  :: GLuint -- ^ @program@.
  -> GLuint -- ^ @shader@.
  -> IO ()
glDetachShader = dyn_glDetachShader ptr_glDetachShader

foreign import CALLCONV "dynamic" dyn_glDetachShader
  :: FunPtr (GLuint -> GLuint -> IO ())
  ->         GLuint -> GLuint -> IO ()

{-# NOINLINE ptr_glDetachShader #-}
ptr_glDetachShader :: FunPtr (GLuint -> GLuint -> IO ())
ptr_glDetachShader = unsafePerformIO $ getCommand "glDetachShader"

-- glDetailTexFuncSGIS ---------------------------------------------------------

glDetailTexFuncSGIS
  :: GLenum -- ^ @target@ of type @TextureTarget@.
  -> GLsizei -- ^ @n@.
  -> Ptr GLfloat -- ^ @points@ pointing to @n*2@ elements of type @GLfloat@.
  -> IO ()
glDetailTexFuncSGIS = dyn_glDetailTexFuncSGIS ptr_glDetailTexFuncSGIS

foreign import CALLCONV "dynamic" dyn_glDetailTexFuncSGIS
  :: FunPtr (GLenum -> GLsizei -> Ptr GLfloat -> IO ())
  ->         GLenum -> GLsizei -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glDetailTexFuncSGIS #-}
ptr_glDetailTexFuncSGIS :: FunPtr (GLenum -> GLsizei -> Ptr GLfloat -> IO ())
ptr_glDetailTexFuncSGIS = unsafePerformIO $ getCommand "glDetailTexFuncSGIS"

-- glDisable -------------------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glEnable.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glEnable.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glEnable.xhtml OpenGL 4.x>
glDisable
  :: GLenum -- ^ @cap@ of type @EnableCap@.
  -> IO ()
glDisable = dyn_glDisable ptr_glDisable

foreign import CALLCONV "dynamic" dyn_glDisable
  :: FunPtr (GLenum -> IO ())
  ->         GLenum -> IO ()

{-# NOINLINE ptr_glDisable #-}
ptr_glDisable :: FunPtr (GLenum -> IO ())
ptr_glDisable = unsafePerformIO $ getCommand "glDisable"

-- glDisableClientState --------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glEnableClientState.xml OpenGL 2.x>
glDisableClientState
  :: GLenum -- ^ @array@ of type @EnableCap@.
  -> IO ()
glDisableClientState = dyn_glDisableClientState ptr_glDisableClientState

foreign import CALLCONV "dynamic" dyn_glDisableClientState
  :: FunPtr (GLenum -> IO ())
  ->         GLenum -> IO ()

{-# NOINLINE ptr_glDisableClientState #-}
ptr_glDisableClientState :: FunPtr (GLenum -> IO ())
ptr_glDisableClientState = unsafePerformIO $ getCommand "glDisableClientState"

-- glDisableClientStateIndexedEXT ----------------------------------------------

glDisableClientStateIndexedEXT
  :: GLenum -- ^ @array@ of type @EnableCap@.
  -> GLuint -- ^ @index@.
  -> IO ()
glDisableClientStateIndexedEXT = dyn_glDisableClientStateIndexedEXT ptr_glDisableClientStateIndexedEXT

foreign import CALLCONV "dynamic" dyn_glDisableClientStateIndexedEXT
  :: FunPtr (GLenum -> GLuint -> IO ())
  ->         GLenum -> GLuint -> IO ()

{-# NOINLINE ptr_glDisableClientStateIndexedEXT #-}
ptr_glDisableClientStateIndexedEXT :: FunPtr (GLenum -> GLuint -> IO ())
ptr_glDisableClientStateIndexedEXT = unsafePerformIO $ getCommand "glDisableClientStateIndexedEXT"

-- glDisableClientStateiEXT ----------------------------------------------------

glDisableClientStateiEXT
  :: GLenum -- ^ @array@ of type @EnableCap@.
  -> GLuint -- ^ @index@.
  -> IO ()
glDisableClientStateiEXT = dyn_glDisableClientStateiEXT ptr_glDisableClientStateiEXT

foreign import CALLCONV "dynamic" dyn_glDisableClientStateiEXT
  :: FunPtr (GLenum -> GLuint -> IO ())
  ->         GLenum -> GLuint -> IO ()

{-# NOINLINE ptr_glDisableClientStateiEXT #-}
ptr_glDisableClientStateiEXT :: FunPtr (GLenum -> GLuint -> IO ())
ptr_glDisableClientStateiEXT = unsafePerformIO $ getCommand "glDisableClientStateiEXT"

-- glDisableDriverControlQCOM --------------------------------------------------

glDisableDriverControlQCOM
  :: GLuint -- ^ @driverControl@.
  -> IO ()
glDisableDriverControlQCOM = dyn_glDisableDriverControlQCOM ptr_glDisableDriverControlQCOM

foreign import CALLCONV "dynamic" dyn_glDisableDriverControlQCOM
  :: FunPtr (GLuint -> IO ())
  ->         GLuint -> IO ()

{-# NOINLINE ptr_glDisableDriverControlQCOM #-}
ptr_glDisableDriverControlQCOM :: FunPtr (GLuint -> IO ())
ptr_glDisableDriverControlQCOM = unsafePerformIO $ getCommand "glDisableDriverControlQCOM"

-- glDisableIndexedEXT ---------------------------------------------------------

glDisableIndexedEXT
  :: GLenum -- ^ @target@.
  -> GLuint -- ^ @index@.
  -> IO ()
glDisableIndexedEXT = dyn_glDisableIndexedEXT ptr_glDisableIndexedEXT

foreign import CALLCONV "dynamic" dyn_glDisableIndexedEXT
  :: FunPtr (GLenum -> GLuint -> IO ())
  ->         GLenum -> GLuint -> IO ()

{-# NOINLINE ptr_glDisableIndexedEXT #-}
ptr_glDisableIndexedEXT :: FunPtr (GLenum -> GLuint -> IO ())
ptr_glDisableIndexedEXT = unsafePerformIO $ getCommand "glDisableIndexedEXT"

-- glDisableVariantClientStateEXT ----------------------------------------------

glDisableVariantClientStateEXT
  :: GLuint -- ^ @id@.
  -> IO ()
glDisableVariantClientStateEXT = dyn_glDisableVariantClientStateEXT ptr_glDisableVariantClientStateEXT

foreign import CALLCONV "dynamic" dyn_glDisableVariantClientStateEXT
  :: FunPtr (GLuint -> IO ())
  ->         GLuint -> IO ()

{-# NOINLINE ptr_glDisableVariantClientStateEXT #-}
ptr_glDisableVariantClientStateEXT :: FunPtr (GLuint -> IO ())
ptr_glDisableVariantClientStateEXT = unsafePerformIO $ getCommand "glDisableVariantClientStateEXT"

-- glDisableVertexArrayAttrib --------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glEnableVertexAttribArray.xhtml OpenGL 4.x>
glDisableVertexArrayAttrib
  :: GLuint -- ^ @vaobj@.
  -> GLuint -- ^ @index@.
  -> IO ()
glDisableVertexArrayAttrib = dyn_glDisableVertexArrayAttrib ptr_glDisableVertexArrayAttrib

foreign import CALLCONV "dynamic" dyn_glDisableVertexArrayAttrib
  :: FunPtr (GLuint -> GLuint -> IO ())
  ->         GLuint -> GLuint -> IO ()

{-# NOINLINE ptr_glDisableVertexArrayAttrib #-}
ptr_glDisableVertexArrayAttrib :: FunPtr (GLuint -> GLuint -> IO ())
ptr_glDisableVertexArrayAttrib = unsafePerformIO $ getCommand "glDisableVertexArrayAttrib"

-- glDisableVertexArrayAttribEXT -----------------------------------------------

glDisableVertexArrayAttribEXT
  :: GLuint -- ^ @vaobj@.
  -> GLuint -- ^ @index@.
  -> IO ()
glDisableVertexArrayAttribEXT = dyn_glDisableVertexArrayAttribEXT ptr_glDisableVertexArrayAttribEXT

foreign import CALLCONV "dynamic" dyn_glDisableVertexArrayAttribEXT
  :: FunPtr (GLuint -> GLuint -> IO ())
  ->         GLuint -> GLuint -> IO ()

{-# NOINLINE ptr_glDisableVertexArrayAttribEXT #-}
ptr_glDisableVertexArrayAttribEXT :: FunPtr (GLuint -> GLuint -> IO ())
ptr_glDisableVertexArrayAttribEXT = unsafePerformIO $ getCommand "glDisableVertexArrayAttribEXT"

-- glDisableVertexArrayEXT -----------------------------------------------------

glDisableVertexArrayEXT
  :: GLuint -- ^ @vaobj@.
  -> GLenum -- ^ @array@ of type @EnableCap@.
  -> IO ()
glDisableVertexArrayEXT = dyn_glDisableVertexArrayEXT ptr_glDisableVertexArrayEXT

foreign import CALLCONV "dynamic" dyn_glDisableVertexArrayEXT
  :: FunPtr (GLuint -> GLenum -> IO ())
  ->         GLuint -> GLenum -> IO ()

{-# NOINLINE ptr_glDisableVertexArrayEXT #-}
ptr_glDisableVertexArrayEXT :: FunPtr (GLuint -> GLenum -> IO ())
ptr_glDisableVertexArrayEXT = unsafePerformIO $ getCommand "glDisableVertexArrayEXT"

-- glDisableVertexAttribAPPLE --------------------------------------------------

glDisableVertexAttribAPPLE
  :: GLuint -- ^ @index@.
  -> GLenum -- ^ @pname@.
  -> IO ()
glDisableVertexAttribAPPLE = dyn_glDisableVertexAttribAPPLE ptr_glDisableVertexAttribAPPLE

foreign import CALLCONV "dynamic" dyn_glDisableVertexAttribAPPLE
  :: FunPtr (GLuint -> GLenum -> IO ())
  ->         GLuint -> GLenum -> IO ()

{-# NOINLINE ptr_glDisableVertexAttribAPPLE #-}
ptr_glDisableVertexAttribAPPLE :: FunPtr (GLuint -> GLenum -> IO ())
ptr_glDisableVertexAttribAPPLE = unsafePerformIO $ getCommand "glDisableVertexAttribAPPLE"

-- glDisableVertexAttribArray --------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glEnableVertexAttribArray.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glEnableVertexAttribArray.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glEnableVertexAttribArray.xhtml OpenGL 4.x>
glDisableVertexAttribArray
  :: GLuint -- ^ @index@.
  -> IO ()
glDisableVertexAttribArray = dyn_glDisableVertexAttribArray ptr_glDisableVertexAttribArray

foreign import CALLCONV "dynamic" dyn_glDisableVertexAttribArray
  :: FunPtr (GLuint -> IO ())
  ->         GLuint -> IO ()

{-# NOINLINE ptr_glDisableVertexAttribArray #-}
ptr_glDisableVertexAttribArray :: FunPtr (GLuint -> IO ())
ptr_glDisableVertexAttribArray = unsafePerformIO $ getCommand "glDisableVertexAttribArray"

-- glDisableVertexAttribArrayARB -----------------------------------------------

glDisableVertexAttribArrayARB
  :: GLuint -- ^ @index@.
  -> IO ()
glDisableVertexAttribArrayARB = dyn_glDisableVertexAttribArrayARB ptr_glDisableVertexAttribArrayARB

foreign import CALLCONV "dynamic" dyn_glDisableVertexAttribArrayARB
  :: FunPtr (GLuint -> IO ())
  ->         GLuint -> IO ()

{-# NOINLINE ptr_glDisableVertexAttribArrayARB #-}
ptr_glDisableVertexAttribArrayARB :: FunPtr (GLuint -> IO ())
ptr_glDisableVertexAttribArrayARB = unsafePerformIO $ getCommand "glDisableVertexAttribArrayARB"

-- glDisablei ------------------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glEnable.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glEnable.xhtml OpenGL 4.x>
glDisablei
  :: GLenum -- ^ @target@.
  -> GLuint -- ^ @index@.
  -> IO ()
glDisablei = dyn_glDisablei ptr_glDisablei

foreign import CALLCONV "dynamic" dyn_glDisablei
  :: FunPtr (GLenum -> GLuint -> IO ())
  ->         GLenum -> GLuint -> IO ()

{-# NOINLINE ptr_glDisablei #-}
ptr_glDisablei :: FunPtr (GLenum -> GLuint -> IO ())
ptr_glDisablei = unsafePerformIO $ getCommand "glDisablei"

-- glDisableiEXT ---------------------------------------------------------------

glDisableiEXT
  :: GLenum -- ^ @target@.
  -> GLuint -- ^ @index@.
  -> IO ()
glDisableiEXT = dyn_glDisableiEXT ptr_glDisableiEXT

foreign import CALLCONV "dynamic" dyn_glDisableiEXT
  :: FunPtr (GLenum -> GLuint -> IO ())
  ->         GLenum -> GLuint -> IO ()

{-# NOINLINE ptr_glDisableiEXT #-}
ptr_glDisableiEXT :: FunPtr (GLenum -> GLuint -> IO ())
ptr_glDisableiEXT = unsafePerformIO $ getCommand "glDisableiEXT"

-- glDisableiNV ----------------------------------------------------------------

glDisableiNV
  :: GLenum -- ^ @target@.
  -> GLuint -- ^ @index@.
  -> IO ()
glDisableiNV = dyn_glDisableiNV ptr_glDisableiNV

foreign import CALLCONV "dynamic" dyn_glDisableiNV
  :: FunPtr (GLenum -> GLuint -> IO ())
  ->         GLenum -> GLuint -> IO ()

{-# NOINLINE ptr_glDisableiNV #-}
ptr_glDisableiNV :: FunPtr (GLenum -> GLuint -> IO ())
ptr_glDisableiNV = unsafePerformIO $ getCommand "glDisableiNV"

-- glDisableiOES ---------------------------------------------------------------

glDisableiOES
  :: GLenum -- ^ @target@.
  -> GLuint -- ^ @index@.
  -> IO ()
glDisableiOES = dyn_glDisableiOES ptr_glDisableiOES

foreign import CALLCONV "dynamic" dyn_glDisableiOES
  :: FunPtr (GLenum -> GLuint -> IO ())
  ->         GLenum -> GLuint -> IO ()

{-# NOINLINE ptr_glDisableiOES #-}
ptr_glDisableiOES :: FunPtr (GLenum -> GLuint -> IO ())
ptr_glDisableiOES = unsafePerformIO $ getCommand "glDisableiOES"

-- glDiscardFramebufferEXT -----------------------------------------------------

glDiscardFramebufferEXT
  :: GLenum -- ^ @target@.
  -> GLsizei -- ^ @numAttachments@.
  -> Ptr GLenum -- ^ @attachments@ pointing to @numAttachments@ elements of type @GLenum@.
  -> IO ()
glDiscardFramebufferEXT = dyn_glDiscardFramebufferEXT ptr_glDiscardFramebufferEXT

foreign import CALLCONV "dynamic" dyn_glDiscardFramebufferEXT
  :: FunPtr (GLenum -> GLsizei -> Ptr GLenum -> IO ())
  ->         GLenum -> GLsizei -> Ptr GLenum -> IO ()

{-# NOINLINE ptr_glDiscardFramebufferEXT #-}
ptr_glDiscardFramebufferEXT :: FunPtr (GLenum -> GLsizei -> Ptr GLenum -> IO ())
ptr_glDiscardFramebufferEXT = unsafePerformIO $ getCommand "glDiscardFramebufferEXT"

-- glDispatchCompute -----------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glDispatchCompute.xhtml OpenGL 4.x>
glDispatchCompute
  :: GLuint -- ^ @num_groups_x@.
  -> GLuint -- ^ @num_groups_y@.
  -> GLuint -- ^ @num_groups_z@.
  -> IO ()
glDispatchCompute = dyn_glDispatchCompute ptr_glDispatchCompute

foreign import CALLCONV "dynamic" dyn_glDispatchCompute
  :: FunPtr (GLuint -> GLuint -> GLuint -> IO ())
  ->         GLuint -> GLuint -> GLuint -> IO ()

{-# NOINLINE ptr_glDispatchCompute #-}
ptr_glDispatchCompute :: FunPtr (GLuint -> GLuint -> GLuint -> IO ())
ptr_glDispatchCompute = unsafePerformIO $ getCommand "glDispatchCompute"

-- glDispatchComputeGroupSizeARB -----------------------------------------------

glDispatchComputeGroupSizeARB
  :: GLuint -- ^ @num_groups_x@.
  -> GLuint -- ^ @num_groups_y@.
  -> GLuint -- ^ @num_groups_z@.
  -> GLuint -- ^ @group_size_x@.
  -> GLuint -- ^ @group_size_y@.
  -> GLuint -- ^ @group_size_z@.
  -> IO ()
glDispatchComputeGroupSizeARB = dyn_glDispatchComputeGroupSizeARB ptr_glDispatchComputeGroupSizeARB

foreign import CALLCONV "dynamic" dyn_glDispatchComputeGroupSizeARB
  :: FunPtr (GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> IO ())
  ->         GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> IO ()

{-# NOINLINE ptr_glDispatchComputeGroupSizeARB #-}
ptr_glDispatchComputeGroupSizeARB :: FunPtr (GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> IO ())
ptr_glDispatchComputeGroupSizeARB = unsafePerformIO $ getCommand "glDispatchComputeGroupSizeARB"

-- glDispatchComputeIndirect ---------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glDispatchComputeIndirect.xhtml OpenGL 4.x>
glDispatchComputeIndirect
  :: GLintptr -- ^ @indirect@ of type @BufferOffset@.
  -> IO ()
glDispatchComputeIndirect = dyn_glDispatchComputeIndirect ptr_glDispatchComputeIndirect

foreign import CALLCONV "dynamic" dyn_glDispatchComputeIndirect
  :: FunPtr (GLintptr -> IO ())
  ->         GLintptr -> IO ()

{-# NOINLINE ptr_glDispatchComputeIndirect #-}
ptr_glDispatchComputeIndirect :: FunPtr (GLintptr -> IO ())
ptr_glDispatchComputeIndirect = unsafePerformIO $ getCommand "glDispatchComputeIndirect"

-- glDrawArrays ----------------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glDrawArrays.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glDrawArrays.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glDrawArrays.xhtml OpenGL 4.x>
glDrawArrays
  :: GLenum -- ^ @mode@ of type @PrimitiveType@.
  -> GLint -- ^ @first@.
  -> GLsizei -- ^ @count@.
  -> IO ()
glDrawArrays = dyn_glDrawArrays ptr_glDrawArrays

foreign import CALLCONV "dynamic" dyn_glDrawArrays
  :: FunPtr (GLenum -> GLint -> GLsizei -> IO ())
  ->         GLenum -> GLint -> GLsizei -> IO ()

{-# NOINLINE ptr_glDrawArrays #-}
ptr_glDrawArrays :: FunPtr (GLenum -> GLint -> GLsizei -> IO ())
ptr_glDrawArrays = unsafePerformIO $ getCommand "glDrawArrays"

-- glDrawArraysEXT -------------------------------------------------------------

glDrawArraysEXT
  :: GLenum -- ^ @mode@ of type @PrimitiveType@.
  -> GLint -- ^ @first@.
  -> GLsizei -- ^ @count@.
  -> IO ()
glDrawArraysEXT = dyn_glDrawArraysEXT ptr_glDrawArraysEXT

foreign import CALLCONV "dynamic" dyn_glDrawArraysEXT
  :: FunPtr (GLenum -> GLint -> GLsizei -> IO ())
  ->         GLenum -> GLint -> GLsizei -> IO ()

{-# NOINLINE ptr_glDrawArraysEXT #-}
ptr_glDrawArraysEXT :: FunPtr (GLenum -> GLint -> GLsizei -> IO ())
ptr_glDrawArraysEXT = unsafePerformIO $ getCommand "glDrawArraysEXT"

-- glDrawArraysIndirect --------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glDrawArraysIndirect.xhtml OpenGL 4.x>
glDrawArraysIndirect
  :: GLenum -- ^ @mode@ of type @PrimitiveType@.
  -> Ptr a -- ^ @indirect@.
  -> IO ()
glDrawArraysIndirect = dyn_glDrawArraysIndirect ptr_glDrawArraysIndirect

foreign import CALLCONV "dynamic" dyn_glDrawArraysIndirect
  :: FunPtr (GLenum -> Ptr a -> IO ())
  ->         GLenum -> Ptr a -> IO ()

{-# NOINLINE ptr_glDrawArraysIndirect #-}
ptr_glDrawArraysIndirect :: FunPtr (GLenum -> Ptr a -> IO ())
ptr_glDrawArraysIndirect = unsafePerformIO $ getCommand "glDrawArraysIndirect"

-- glDrawArraysInstanced -------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glDrawArraysInstanced.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glDrawArraysInstanced.xhtml OpenGL 4.x>
glDrawArraysInstanced
  :: GLenum -- ^ @mode@ of type @PrimitiveType@.
  -> GLint -- ^ @first@.
  -> GLsizei -- ^ @count@.
  -> GLsizei -- ^ @instancecount@.
  -> IO ()
glDrawArraysInstanced = dyn_glDrawArraysInstanced ptr_glDrawArraysInstanced

foreign import CALLCONV "dynamic" dyn_glDrawArraysInstanced
  :: FunPtr (GLenum -> GLint -> GLsizei -> GLsizei -> IO ())
  ->         GLenum -> GLint -> GLsizei -> GLsizei -> IO ()

{-# NOINLINE ptr_glDrawArraysInstanced #-}
ptr_glDrawArraysInstanced :: FunPtr (GLenum -> GLint -> GLsizei -> GLsizei -> IO ())
ptr_glDrawArraysInstanced = unsafePerformIO $ getCommand "glDrawArraysInstanced"

-- glDrawArraysInstancedANGLE --------------------------------------------------

glDrawArraysInstancedANGLE
  :: GLenum -- ^ @mode@ of type @PrimitiveType@.
  -> GLint -- ^ @first@.
  -> GLsizei -- ^ @count@.
  -> GLsizei -- ^ @primcount@.
  -> IO ()
glDrawArraysInstancedANGLE = dyn_glDrawArraysInstancedANGLE ptr_glDrawArraysInstancedANGLE

foreign import CALLCONV "dynamic" dyn_glDrawArraysInstancedANGLE
  :: FunPtr (GLenum -> GLint -> GLsizei -> GLsizei -> IO ())
  ->         GLenum -> GLint -> GLsizei -> GLsizei -> IO ()

{-# NOINLINE ptr_glDrawArraysInstancedANGLE #-}
ptr_glDrawArraysInstancedANGLE :: FunPtr (GLenum -> GLint -> GLsizei -> GLsizei -> IO ())
ptr_glDrawArraysInstancedANGLE = unsafePerformIO $ getCommand "glDrawArraysInstancedANGLE"

-- glDrawArraysInstancedARB ----------------------------------------------------

glDrawArraysInstancedARB
  :: GLenum -- ^ @mode@ of type @PrimitiveType@.
  -> GLint -- ^ @first@.
  -> GLsizei -- ^ @count@.
  -> GLsizei -- ^ @primcount@.
  -> IO ()
glDrawArraysInstancedARB = dyn_glDrawArraysInstancedARB ptr_glDrawArraysInstancedARB

foreign import CALLCONV "dynamic" dyn_glDrawArraysInstancedARB
  :: FunPtr (GLenum -> GLint -> GLsizei -> GLsizei -> IO ())
  ->         GLenum -> GLint -> GLsizei -> GLsizei -> IO ()

{-# NOINLINE ptr_glDrawArraysInstancedARB #-}
ptr_glDrawArraysInstancedARB :: FunPtr (GLenum -> GLint -> GLsizei -> GLsizei -> IO ())
ptr_glDrawArraysInstancedARB = unsafePerformIO $ getCommand "glDrawArraysInstancedARB"

-- glDrawArraysInstancedBaseInstance -------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glDrawArraysInstancedBaseInstance.xhtml OpenGL 4.x>
glDrawArraysInstancedBaseInstance
  :: GLenum -- ^ @mode@ of type @PrimitiveType@.
  -> GLint -- ^ @first@.
  -> GLsizei -- ^ @count@.
  -> GLsizei -- ^ @instancecount@.
  -> GLuint -- ^ @baseinstance@.
  -> IO ()
glDrawArraysInstancedBaseInstance = dyn_glDrawArraysInstancedBaseInstance ptr_glDrawArraysInstancedBaseInstance

foreign import CALLCONV "dynamic" dyn_glDrawArraysInstancedBaseInstance
  :: FunPtr (GLenum -> GLint -> GLsizei -> GLsizei -> GLuint -> IO ())
  ->         GLenum -> GLint -> GLsizei -> GLsizei -> GLuint -> IO ()

{-# NOINLINE ptr_glDrawArraysInstancedBaseInstance #-}
ptr_glDrawArraysInstancedBaseInstance :: FunPtr (GLenum -> GLint -> GLsizei -> GLsizei -> GLuint -> IO ())
ptr_glDrawArraysInstancedBaseInstance = unsafePerformIO $ getCommand "glDrawArraysInstancedBaseInstance"

-- glDrawArraysInstancedBaseInstanceEXT ----------------------------------------

glDrawArraysInstancedBaseInstanceEXT
  :: GLenum -- ^ @mode@ of type @PrimitiveType@.
  -> GLint -- ^ @first@.
  -> GLsizei -- ^ @count@.
  -> GLsizei -- ^ @instancecount@.
  -> GLuint -- ^ @baseinstance@.
  -> IO ()
glDrawArraysInstancedBaseInstanceEXT = dyn_glDrawArraysInstancedBaseInstanceEXT ptr_glDrawArraysInstancedBaseInstanceEXT

foreign import CALLCONV "dynamic" dyn_glDrawArraysInstancedBaseInstanceEXT
  :: FunPtr (GLenum -> GLint -> GLsizei -> GLsizei -> GLuint -> IO ())
  ->         GLenum -> GLint -> GLsizei -> GLsizei -> GLuint -> IO ()

{-# NOINLINE ptr_glDrawArraysInstancedBaseInstanceEXT #-}
ptr_glDrawArraysInstancedBaseInstanceEXT :: FunPtr (GLenum -> GLint -> GLsizei -> GLsizei -> GLuint -> IO ())
ptr_glDrawArraysInstancedBaseInstanceEXT = unsafePerformIO $ getCommand "glDrawArraysInstancedBaseInstanceEXT"

-- glDrawArraysInstancedEXT ----------------------------------------------------

glDrawArraysInstancedEXT
  :: GLenum -- ^ @mode@ of type @PrimitiveType@.
  -> GLint -- ^ @start@.
  -> GLsizei -- ^ @count@.
  -> GLsizei -- ^ @primcount@.
  -> IO ()
glDrawArraysInstancedEXT = dyn_glDrawArraysInstancedEXT ptr_glDrawArraysInstancedEXT

foreign import CALLCONV "dynamic" dyn_glDrawArraysInstancedEXT
  :: FunPtr (GLenum -> GLint -> GLsizei -> GLsizei -> IO ())
  ->         GLenum -> GLint -> GLsizei -> GLsizei -> IO ()

{-# NOINLINE ptr_glDrawArraysInstancedEXT #-}
ptr_glDrawArraysInstancedEXT :: FunPtr (GLenum -> GLint -> GLsizei -> GLsizei -> IO ())
ptr_glDrawArraysInstancedEXT = unsafePerformIO $ getCommand "glDrawArraysInstancedEXT"

-- glDrawArraysInstancedNV -----------------------------------------------------

glDrawArraysInstancedNV
  :: GLenum -- ^ @mode@ of type @PrimitiveType@.
  -> GLint -- ^ @first@.
  -> GLsizei -- ^ @count@.
  -> GLsizei -- ^ @primcount@.
  -> IO ()
glDrawArraysInstancedNV = dyn_glDrawArraysInstancedNV ptr_glDrawArraysInstancedNV

foreign import CALLCONV "dynamic" dyn_glDrawArraysInstancedNV
  :: FunPtr (GLenum -> GLint -> GLsizei -> GLsizei -> IO ())
  ->         GLenum -> GLint -> GLsizei -> GLsizei -> IO ()

{-# NOINLINE ptr_glDrawArraysInstancedNV #-}
ptr_glDrawArraysInstancedNV :: FunPtr (GLenum -> GLint -> GLsizei -> GLsizei -> IO ())
ptr_glDrawArraysInstancedNV = unsafePerformIO $ getCommand "glDrawArraysInstancedNV"

-- glDrawBuffer ----------------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glDrawBuffer.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glDrawBuffer.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glDrawBuffer.xhtml OpenGL 4.x>
glDrawBuffer
  :: GLenum -- ^ @buf@ of type @DrawBufferMode@.
  -> IO ()
glDrawBuffer = dyn_glDrawBuffer ptr_glDrawBuffer

foreign import CALLCONV "dynamic" dyn_glDrawBuffer
  :: FunPtr (GLenum -> IO ())
  ->         GLenum -> IO ()

{-# NOINLINE ptr_glDrawBuffer #-}
ptr_glDrawBuffer :: FunPtr (GLenum -> IO ())
ptr_glDrawBuffer = unsafePerformIO $ getCommand "glDrawBuffer"

-- glDrawBuffers ---------------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glDrawBuffers.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glDrawBuffers.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glDrawBuffers.xhtml OpenGL 4.x>
glDrawBuffers
  :: GLsizei -- ^ @n@.
  -> Ptr GLenum -- ^ @bufs@ pointing to @n@ elements of type @DrawBufferModeATI@.
  -> IO ()
glDrawBuffers = dyn_glDrawBuffers ptr_glDrawBuffers

foreign import CALLCONV "dynamic" dyn_glDrawBuffers
  :: FunPtr (GLsizei -> Ptr GLenum -> IO ())
  ->         GLsizei -> Ptr GLenum -> IO ()

{-# NOINLINE ptr_glDrawBuffers #-}
ptr_glDrawBuffers :: FunPtr (GLsizei -> Ptr GLenum -> IO ())
ptr_glDrawBuffers = unsafePerformIO $ getCommand "glDrawBuffers"

-- glDrawBuffersARB ------------------------------------------------------------

glDrawBuffersARB
  :: GLsizei -- ^ @n@.
  -> Ptr GLenum -- ^ @bufs@ pointing to @n@ elements of type @DrawBufferModeATI@.
  -> IO ()
glDrawBuffersARB = dyn_glDrawBuffersARB ptr_glDrawBuffersARB

foreign import CALLCONV "dynamic" dyn_glDrawBuffersARB
  :: FunPtr (GLsizei -> Ptr GLenum -> IO ())
  ->         GLsizei -> Ptr GLenum -> IO ()

{-# NOINLINE ptr_glDrawBuffersARB #-}
ptr_glDrawBuffersARB :: FunPtr (GLsizei -> Ptr GLenum -> IO ())
ptr_glDrawBuffersARB = unsafePerformIO $ getCommand "glDrawBuffersARB"

-- glDrawBuffersATI ------------------------------------------------------------

glDrawBuffersATI
  :: GLsizei -- ^ @n@.
  -> Ptr GLenum -- ^ @bufs@ pointing to @n@ elements of type @DrawBufferModeATI@.
  -> IO ()
glDrawBuffersATI = dyn_glDrawBuffersATI ptr_glDrawBuffersATI

foreign import CALLCONV "dynamic" dyn_glDrawBuffersATI
  :: FunPtr (GLsizei -> Ptr GLenum -> IO ())
  ->         GLsizei -> Ptr GLenum -> IO ()

{-# NOINLINE ptr_glDrawBuffersATI #-}
ptr_glDrawBuffersATI :: FunPtr (GLsizei -> Ptr GLenum -> IO ())
ptr_glDrawBuffersATI = unsafePerformIO $ getCommand "glDrawBuffersATI"

-- glDrawBuffersEXT ------------------------------------------------------------

glDrawBuffersEXT
  :: GLsizei -- ^ @n@.
  -> Ptr GLenum -- ^ @bufs@.
  -> IO ()
glDrawBuffersEXT = dyn_glDrawBuffersEXT ptr_glDrawBuffersEXT

foreign import CALLCONV "dynamic" dyn_glDrawBuffersEXT
  :: FunPtr (GLsizei -> Ptr GLenum -> IO ())
  ->         GLsizei -> Ptr GLenum -> IO ()

{-# NOINLINE ptr_glDrawBuffersEXT #-}
ptr_glDrawBuffersEXT :: FunPtr (GLsizei -> Ptr GLenum -> IO ())
ptr_glDrawBuffersEXT = unsafePerformIO $ getCommand "glDrawBuffersEXT"

-- glDrawBuffersIndexedEXT -----------------------------------------------------

glDrawBuffersIndexedEXT
  :: GLint -- ^ @n@.
  -> Ptr GLenum -- ^ @location@ pointing to @n@ elements of type @GLenum@.
  -> Ptr GLint -- ^ @indices@ pointing to @n@ elements of type @GLint@.
  -> IO ()
glDrawBuffersIndexedEXT = dyn_glDrawBuffersIndexedEXT ptr_glDrawBuffersIndexedEXT

foreign import CALLCONV "dynamic" dyn_glDrawBuffersIndexedEXT
  :: FunPtr (GLint -> Ptr GLenum -> Ptr GLint -> IO ())
  ->         GLint -> Ptr GLenum -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glDrawBuffersIndexedEXT #-}
ptr_glDrawBuffersIndexedEXT :: FunPtr (GLint -> Ptr GLenum -> Ptr GLint -> IO ())
ptr_glDrawBuffersIndexedEXT = unsafePerformIO $ getCommand "glDrawBuffersIndexedEXT"

-- glDrawBuffersNV -------------------------------------------------------------

glDrawBuffersNV
  :: GLsizei -- ^ @n@.
  -> Ptr GLenum -- ^ @bufs@ pointing to @n@ elements of type @GLenum@.
  -> IO ()
glDrawBuffersNV = dyn_glDrawBuffersNV ptr_glDrawBuffersNV

foreign import CALLCONV "dynamic" dyn_glDrawBuffersNV
  :: FunPtr (GLsizei -> Ptr GLenum -> IO ())
  ->         GLsizei -> Ptr GLenum -> IO ()

{-# NOINLINE ptr_glDrawBuffersNV #-}
ptr_glDrawBuffersNV :: FunPtr (GLsizei -> Ptr GLenum -> IO ())
ptr_glDrawBuffersNV = unsafePerformIO $ getCommand "glDrawBuffersNV"

-- glDrawElementArrayAPPLE -----------------------------------------------------

glDrawElementArrayAPPLE
  :: GLenum -- ^ @mode@ of type @PrimitiveType@.
  -> GLint -- ^ @first@.
  -> GLsizei -- ^ @count@.
  -> IO ()
glDrawElementArrayAPPLE = dyn_glDrawElementArrayAPPLE ptr_glDrawElementArrayAPPLE

foreign import CALLCONV "dynamic" dyn_glDrawElementArrayAPPLE
  :: FunPtr (GLenum -> GLint -> GLsizei -> IO ())
  ->         GLenum -> GLint -> GLsizei -> IO ()

{-# NOINLINE ptr_glDrawElementArrayAPPLE #-}
ptr_glDrawElementArrayAPPLE :: FunPtr (GLenum -> GLint -> GLsizei -> IO ())
ptr_glDrawElementArrayAPPLE = unsafePerformIO $ getCommand "glDrawElementArrayAPPLE"

-- glDrawElementArrayATI -------------------------------------------------------

glDrawElementArrayATI
  :: GLenum -- ^ @mode@ of type @PrimitiveType@.
  -> GLsizei -- ^ @count@.
  -> IO ()
glDrawElementArrayATI = dyn_glDrawElementArrayATI ptr_glDrawElementArrayATI

foreign import CALLCONV "dynamic" dyn_glDrawElementArrayATI
  :: FunPtr (GLenum -> GLsizei -> IO ())
  ->         GLenum -> GLsizei -> IO ()

{-# NOINLINE ptr_glDrawElementArrayATI #-}
ptr_glDrawElementArrayATI :: FunPtr (GLenum -> GLsizei -> IO ())
ptr_glDrawElementArrayATI = unsafePerformIO $ getCommand "glDrawElementArrayATI"

-- glDrawElements --------------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glDrawElements.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glDrawElements.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glDrawElements.xhtml OpenGL 4.x>
glDrawElements
  :: GLenum -- ^ @mode@ of type @PrimitiveType@.
  -> GLsizei -- ^ @count@.
  -> GLenum -- ^ @type@ of type @DrawElementsType@.
  -> Ptr a -- ^ @indices@ pointing to @COMPSIZE(count,type)@ elements of type @a@.
  -> IO ()
glDrawElements = dyn_glDrawElements ptr_glDrawElements

foreign import CALLCONV "dynamic" dyn_glDrawElements
  :: FunPtr (GLenum -> GLsizei -> GLenum -> Ptr a -> IO ())
  ->         GLenum -> GLsizei -> GLenum -> Ptr a -> IO ()

{-# NOINLINE ptr_glDrawElements #-}
ptr_glDrawElements :: FunPtr (GLenum -> GLsizei -> GLenum -> Ptr a -> IO ())
ptr_glDrawElements = unsafePerformIO $ getCommand "glDrawElements"

-- glDrawElementsBaseVertex ----------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glDrawElementsBaseVertex.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glDrawElementsBaseVertex.xhtml OpenGL 4.x>
glDrawElementsBaseVertex
  :: GLenum -- ^ @mode@ of type @PrimitiveType@.
  -> GLsizei -- ^ @count@.
  -> GLenum -- ^ @type@ of type @DrawElementsType@.
  -> Ptr a -- ^ @indices@ pointing to @COMPSIZE(count,type)@ elements of type @a@.
  -> GLint -- ^ @basevertex@.
  -> IO ()
glDrawElementsBaseVertex = dyn_glDrawElementsBaseVertex ptr_glDrawElementsBaseVertex

foreign import CALLCONV "dynamic" dyn_glDrawElementsBaseVertex
  :: FunPtr (GLenum -> GLsizei -> GLenum -> Ptr a -> GLint -> IO ())
  ->         GLenum -> GLsizei -> GLenum -> Ptr a -> GLint -> IO ()

{-# NOINLINE ptr_glDrawElementsBaseVertex #-}
ptr_glDrawElementsBaseVertex :: FunPtr (GLenum -> GLsizei -> GLenum -> Ptr a -> GLint -> IO ())
ptr_glDrawElementsBaseVertex = unsafePerformIO $ getCommand "glDrawElementsBaseVertex"

-- glDrawElementsBaseVertexEXT -------------------------------------------------

glDrawElementsBaseVertexEXT
  :: GLenum -- ^ @mode@ of type @PrimitiveType@.
  -> GLsizei -- ^ @count@.
  -> GLenum -- ^ @type@ of type @DrawElementsType@.
  -> Ptr a -- ^ @indices@ pointing to @COMPSIZE(count,type)@ elements of type @a@.
  -> GLint -- ^ @basevertex@.
  -> IO ()
glDrawElementsBaseVertexEXT = dyn_glDrawElementsBaseVertexEXT ptr_glDrawElementsBaseVertexEXT

foreign import CALLCONV "dynamic" dyn_glDrawElementsBaseVertexEXT
  :: FunPtr (GLenum -> GLsizei -> GLenum -> Ptr a -> GLint -> IO ())
  ->         GLenum -> GLsizei -> GLenum -> Ptr a -> GLint -> IO ()

{-# NOINLINE ptr_glDrawElementsBaseVertexEXT #-}
ptr_glDrawElementsBaseVertexEXT :: FunPtr (GLenum -> GLsizei -> GLenum -> Ptr a -> GLint -> IO ())
ptr_glDrawElementsBaseVertexEXT = unsafePerformIO $ getCommand "glDrawElementsBaseVertexEXT"

-- glDrawElementsBaseVertexOES -------------------------------------------------

glDrawElementsBaseVertexOES
  :: GLenum -- ^ @mode@ of type @PrimitiveType@.
  -> GLsizei -- ^ @count@.
  -> GLenum -- ^ @type@ of type @DrawElementsType@.
  -> Ptr a -- ^ @indices@ pointing to @COMPSIZE(count,type)@ elements of type @a@.
  -> GLint -- ^ @basevertex@.
  -> IO ()
glDrawElementsBaseVertexOES = dyn_glDrawElementsBaseVertexOES ptr_glDrawElementsBaseVertexOES

foreign import CALLCONV "dynamic" dyn_glDrawElementsBaseVertexOES
  :: FunPtr (GLenum -> GLsizei -> GLenum -> Ptr a -> GLint -> IO ())
  ->         GLenum -> GLsizei -> GLenum -> Ptr a -> GLint -> IO ()

{-# NOINLINE ptr_glDrawElementsBaseVertexOES #-}
ptr_glDrawElementsBaseVertexOES :: FunPtr (GLenum -> GLsizei -> GLenum -> Ptr a -> GLint -> IO ())
ptr_glDrawElementsBaseVertexOES = unsafePerformIO $ getCommand "glDrawElementsBaseVertexOES"

-- glDrawElementsIndirect ------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glDrawElementsIndirect.xhtml OpenGL 4.x>
glDrawElementsIndirect
  :: GLenum -- ^ @mode@ of type @PrimitiveType@.
  -> GLenum -- ^ @type@.
  -> Ptr a -- ^ @indirect@.
  -> IO ()
glDrawElementsIndirect = dyn_glDrawElementsIndirect ptr_glDrawElementsIndirect

foreign import CALLCONV "dynamic" dyn_glDrawElementsIndirect
  :: FunPtr (GLenum -> GLenum -> Ptr a -> IO ())
  ->         GLenum -> GLenum -> Ptr a -> IO ()

{-# NOINLINE ptr_glDrawElementsIndirect #-}
ptr_glDrawElementsIndirect :: FunPtr (GLenum -> GLenum -> Ptr a -> IO ())
ptr_glDrawElementsIndirect = unsafePerformIO $ getCommand "glDrawElementsIndirect"

-- glDrawElementsInstanced -----------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glDrawElementsInstanced.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glDrawElementsInstanced.xhtml OpenGL 4.x>
glDrawElementsInstanced
  :: GLenum -- ^ @mode@ of type @PrimitiveType@.
  -> GLsizei -- ^ @count@.
  -> GLenum -- ^ @type@ of type @DrawElementsType@.
  -> Ptr a -- ^ @indices@ pointing to @COMPSIZE(count,type)@ elements of type @a@.
  -> GLsizei -- ^ @instancecount@.
  -> IO ()
glDrawElementsInstanced = dyn_glDrawElementsInstanced ptr_glDrawElementsInstanced

foreign import CALLCONV "dynamic" dyn_glDrawElementsInstanced
  :: FunPtr (GLenum -> GLsizei -> GLenum -> Ptr a -> GLsizei -> IO ())
  ->         GLenum -> GLsizei -> GLenum -> Ptr a -> GLsizei -> IO ()

{-# NOINLINE ptr_glDrawElementsInstanced #-}
ptr_glDrawElementsInstanced :: FunPtr (GLenum -> GLsizei -> GLenum -> Ptr a -> GLsizei -> IO ())
ptr_glDrawElementsInstanced = unsafePerformIO $ getCommand "glDrawElementsInstanced"

-- glDrawElementsInstancedANGLE ------------------------------------------------

glDrawElementsInstancedANGLE
  :: GLenum -- ^ @mode@ of type @PrimitiveType@.
  -> GLsizei -- ^ @count@.
  -> GLenum -- ^ @type@.
  -> Ptr a -- ^ @indices@ pointing to @COMPSIZE(count,type)@ elements of type @a@.
  -> GLsizei -- ^ @primcount@.
  -> IO ()
glDrawElementsInstancedANGLE = dyn_glDrawElementsInstancedANGLE ptr_glDrawElementsInstancedANGLE

foreign import CALLCONV "dynamic" dyn_glDrawElementsInstancedANGLE
  :: FunPtr (GLenum -> GLsizei -> GLenum -> Ptr a -> GLsizei -> IO ())
  ->         GLenum -> GLsizei -> GLenum -> Ptr a -> GLsizei -> IO ()

{-# NOINLINE ptr_glDrawElementsInstancedANGLE #-}
ptr_glDrawElementsInstancedANGLE :: FunPtr (GLenum -> GLsizei -> GLenum -> Ptr a -> GLsizei -> IO ())
ptr_glDrawElementsInstancedANGLE = unsafePerformIO $ getCommand "glDrawElementsInstancedANGLE"

-- glDrawElementsInstancedARB --------------------------------------------------

glDrawElementsInstancedARB
  :: GLenum -- ^ @mode@ of type @PrimitiveType@.
  -> GLsizei -- ^ @count@.
  -> GLenum -- ^ @type@ of type @DrawElementsType@.
  -> Ptr a -- ^ @indices@ pointing to @COMPSIZE(count,type)@ elements of type @a@.
  -> GLsizei -- ^ @primcount@.
  -> IO ()
glDrawElementsInstancedARB = dyn_glDrawElementsInstancedARB ptr_glDrawElementsInstancedARB

foreign import CALLCONV "dynamic" dyn_glDrawElementsInstancedARB
  :: FunPtr (GLenum -> GLsizei -> GLenum -> Ptr a -> GLsizei -> IO ())
  ->         GLenum -> GLsizei -> GLenum -> Ptr a -> GLsizei -> IO ()

{-# NOINLINE ptr_glDrawElementsInstancedARB #-}
ptr_glDrawElementsInstancedARB :: FunPtr (GLenum -> GLsizei -> GLenum -> Ptr a -> GLsizei -> IO ())
ptr_glDrawElementsInstancedARB = unsafePerformIO $ getCommand "glDrawElementsInstancedARB"

-- glDrawElementsInstancedBaseInstance -----------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glDrawElementsInstancedBaseInstance.xhtml OpenGL 4.x>
glDrawElementsInstancedBaseInstance
  :: GLenum -- ^ @mode@ of type @PrimitiveType@.
  -> GLsizei -- ^ @count@.
  -> GLenum -- ^ @type@.
  -> Ptr a -- ^ @indices@ pointing to @count@ elements of type @a@.
  -> GLsizei -- ^ @instancecount@.
  -> GLuint -- ^ @baseinstance@.
  -> IO ()
glDrawElementsInstancedBaseInstance = dyn_glDrawElementsInstancedBaseInstance ptr_glDrawElementsInstancedBaseInstance

foreign import CALLCONV "dynamic" dyn_glDrawElementsInstancedBaseInstance
  :: FunPtr (GLenum -> GLsizei -> GLenum -> Ptr a -> GLsizei -> GLuint -> IO ())
  ->         GLenum -> GLsizei -> GLenum -> Ptr a -> GLsizei -> GLuint -> IO ()

{-# NOINLINE ptr_glDrawElementsInstancedBaseInstance #-}
ptr_glDrawElementsInstancedBaseInstance :: FunPtr (GLenum -> GLsizei -> GLenum -> Ptr a -> GLsizei -> GLuint -> IO ())
ptr_glDrawElementsInstancedBaseInstance = unsafePerformIO $ getCommand "glDrawElementsInstancedBaseInstance"

-- glDrawElementsInstancedBaseInstanceEXT --------------------------------------

glDrawElementsInstancedBaseInstanceEXT
  :: GLenum -- ^ @mode@ of type @PrimitiveType@.
  -> GLsizei -- ^ @count@.
  -> GLenum -- ^ @type@.
  -> Ptr a -- ^ @indices@ pointing to @count@ elements of type @a@.
  -> GLsizei -- ^ @instancecount@.
  -> GLuint -- ^ @baseinstance@.
  -> IO ()
glDrawElementsInstancedBaseInstanceEXT = dyn_glDrawElementsInstancedBaseInstanceEXT ptr_glDrawElementsInstancedBaseInstanceEXT

foreign import CALLCONV "dynamic" dyn_glDrawElementsInstancedBaseInstanceEXT
  :: FunPtr (GLenum -> GLsizei -> GLenum -> Ptr a -> GLsizei -> GLuint -> IO ())
  ->         GLenum -> GLsizei -> GLenum -> Ptr a -> GLsizei -> GLuint -> IO ()

{-# NOINLINE ptr_glDrawElementsInstancedBaseInstanceEXT #-}
ptr_glDrawElementsInstancedBaseInstanceEXT :: FunPtr (GLenum -> GLsizei -> GLenum -> Ptr a -> GLsizei -> GLuint -> IO ())
ptr_glDrawElementsInstancedBaseInstanceEXT = unsafePerformIO $ getCommand "glDrawElementsInstancedBaseInstanceEXT"

-- glDrawElementsInstancedBaseVertex -------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glDrawElementsInstancedBaseVertex.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glDrawElementsInstancedBaseVertex.xhtml OpenGL 4.x>
glDrawElementsInstancedBaseVertex
  :: GLenum -- ^ @mode@ of type @PrimitiveType@.
  -> GLsizei -- ^ @count@.
  -> GLenum -- ^ @type@ of type @DrawElementsType@.
  -> Ptr a -- ^ @indices@ pointing to @COMPSIZE(count,type)@ elements of type @a@.
  -> GLsizei -- ^ @instancecount@.
  -> GLint -- ^ @basevertex@.
  -> IO ()
glDrawElementsInstancedBaseVertex = dyn_glDrawElementsInstancedBaseVertex ptr_glDrawElementsInstancedBaseVertex

foreign import CALLCONV "dynamic" dyn_glDrawElementsInstancedBaseVertex
  :: FunPtr (GLenum -> GLsizei -> GLenum -> Ptr a -> GLsizei -> GLint -> IO ())
  ->         GLenum -> GLsizei -> GLenum -> Ptr a -> GLsizei -> GLint -> IO ()

{-# NOINLINE ptr_glDrawElementsInstancedBaseVertex #-}
ptr_glDrawElementsInstancedBaseVertex :: FunPtr (GLenum -> GLsizei -> GLenum -> Ptr a -> GLsizei -> GLint -> IO ())
ptr_glDrawElementsInstancedBaseVertex = unsafePerformIO $ getCommand "glDrawElementsInstancedBaseVertex"

-- glDrawElementsInstancedBaseVertexBaseInstance -------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glDrawElementsInstancedBaseVertexBaseInstance.xhtml OpenGL 4.x>
glDrawElementsInstancedBaseVertexBaseInstance
  :: GLenum -- ^ @mode@ of type @PrimitiveType@.
  -> GLsizei -- ^ @count@.
  -> GLenum -- ^ @type@.
  -> Ptr a -- ^ @indices@ pointing to @count@ elements of type @a@.
  -> GLsizei -- ^ @instancecount@.
  -> GLint -- ^ @basevertex@.
  -> GLuint -- ^ @baseinstance@.
  -> IO ()
glDrawElementsInstancedBaseVertexBaseInstance = dyn_glDrawElementsInstancedBaseVertexBaseInstance ptr_glDrawElementsInstancedBaseVertexBaseInstance

foreign import CALLCONV "dynamic" dyn_glDrawElementsInstancedBaseVertexBaseInstance
  :: FunPtr (GLenum -> GLsizei -> GLenum -> Ptr a -> GLsizei -> GLint -> GLuint -> IO ())
  ->         GLenum -> GLsizei -> GLenum -> Ptr a -> GLsizei -> GLint -> GLuint -> IO ()

{-# NOINLINE ptr_glDrawElementsInstancedBaseVertexBaseInstance #-}
ptr_glDrawElementsInstancedBaseVertexBaseInstance :: FunPtr (GLenum -> GLsizei -> GLenum -> Ptr a -> GLsizei -> GLint -> GLuint -> IO ())
ptr_glDrawElementsInstancedBaseVertexBaseInstance = unsafePerformIO $ getCommand "glDrawElementsInstancedBaseVertexBaseInstance"

-- glDrawElementsInstancedBaseVertexBaseInstanceEXT ----------------------------

glDrawElementsInstancedBaseVertexBaseInstanceEXT
  :: GLenum -- ^ @mode@ of type @PrimitiveType@.
  -> GLsizei -- ^ @count@.
  -> GLenum -- ^ @type@.
  -> Ptr a -- ^ @indices@ pointing to @count@ elements of type @a@.
  -> GLsizei -- ^ @instancecount@.
  -> GLint -- ^ @basevertex@.
  -> GLuint -- ^ @baseinstance@.
  -> IO ()
glDrawElementsInstancedBaseVertexBaseInstanceEXT = dyn_glDrawElementsInstancedBaseVertexBaseInstanceEXT ptr_glDrawElementsInstancedBaseVertexBaseInstanceEXT

foreign import CALLCONV "dynamic" dyn_glDrawElementsInstancedBaseVertexBaseInstanceEXT
  :: FunPtr (GLenum -> GLsizei -> GLenum -> Ptr a -> GLsizei -> GLint -> GLuint -> IO ())
  ->         GLenum -> GLsizei -> GLenum -> Ptr a -> GLsizei -> GLint -> GLuint -> IO ()

{-# NOINLINE ptr_glDrawElementsInstancedBaseVertexBaseInstanceEXT #-}
ptr_glDrawElementsInstancedBaseVertexBaseInstanceEXT :: FunPtr (GLenum -> GLsizei -> GLenum -> Ptr a -> GLsizei -> GLint -> GLuint -> IO ())
ptr_glDrawElementsInstancedBaseVertexBaseInstanceEXT = unsafePerformIO $ getCommand "glDrawElementsInstancedBaseVertexBaseInstanceEXT"

-- glDrawElementsInstancedBaseVertexEXT ----------------------------------------

glDrawElementsInstancedBaseVertexEXT
  :: GLenum -- ^ @mode@ of type @PrimitiveType@.
  -> GLsizei -- ^ @count@.
  -> GLenum -- ^ @type@ of type @DrawElementsType@.
  -> Ptr a -- ^ @indices@ pointing to @COMPSIZE(count,type)@ elements of type @a@.
  -> GLsizei -- ^ @instancecount@.
  -> GLint -- ^ @basevertex@.
  -> IO ()
glDrawElementsInstancedBaseVertexEXT = dyn_glDrawElementsInstancedBaseVertexEXT ptr_glDrawElementsInstancedBaseVertexEXT

foreign import CALLCONV "dynamic" dyn_glDrawElementsInstancedBaseVertexEXT
  :: FunPtr (GLenum -> GLsizei -> GLenum -> Ptr a -> GLsizei -> GLint -> IO ())
  ->         GLenum -> GLsizei -> GLenum -> Ptr a -> GLsizei -> GLint -> IO ()

{-# NOINLINE ptr_glDrawElementsInstancedBaseVertexEXT #-}
ptr_glDrawElementsInstancedBaseVertexEXT :: FunPtr (GLenum -> GLsizei -> GLenum -> Ptr a -> GLsizei -> GLint -> IO ())
ptr_glDrawElementsInstancedBaseVertexEXT = unsafePerformIO $ getCommand "glDrawElementsInstancedBaseVertexEXT"

-- glDrawElementsInstancedBaseVertexOES ----------------------------------------

glDrawElementsInstancedBaseVertexOES
  :: GLenum -- ^ @mode@ of type @PrimitiveType@.
  -> GLsizei -- ^ @count@.
  -> GLenum -- ^ @type@ of type @DrawElementsType@.
  -> Ptr a -- ^ @indices@ pointing to @COMPSIZE(count,type)@ elements of type @a@.
  -> GLsizei -- ^ @instancecount@.
  -> GLint -- ^ @basevertex@.
  -> IO ()
glDrawElementsInstancedBaseVertexOES = dyn_glDrawElementsInstancedBaseVertexOES ptr_glDrawElementsInstancedBaseVertexOES

foreign import CALLCONV "dynamic" dyn_glDrawElementsInstancedBaseVertexOES
  :: FunPtr (GLenum -> GLsizei -> GLenum -> Ptr a -> GLsizei -> GLint -> IO ())
  ->         GLenum -> GLsizei -> GLenum -> Ptr a -> GLsizei -> GLint -> IO ()

{-# NOINLINE ptr_glDrawElementsInstancedBaseVertexOES #-}
ptr_glDrawElementsInstancedBaseVertexOES :: FunPtr (GLenum -> GLsizei -> GLenum -> Ptr a -> GLsizei -> GLint -> IO ())
ptr_glDrawElementsInstancedBaseVertexOES = unsafePerformIO $ getCommand "glDrawElementsInstancedBaseVertexOES"

-- glDrawElementsInstancedEXT --------------------------------------------------

glDrawElementsInstancedEXT
  :: GLenum -- ^ @mode@ of type @PrimitiveType@.
  -> GLsizei -- ^ @count@.
  -> GLenum -- ^ @type@ of type @DrawElementsType@.
  -> Ptr a -- ^ @indices@ pointing to @COMPSIZE(count,type)@ elements of type @a@.
  -> GLsizei -- ^ @primcount@.
  -> IO ()
glDrawElementsInstancedEXT = dyn_glDrawElementsInstancedEXT ptr_glDrawElementsInstancedEXT

foreign import CALLCONV "dynamic" dyn_glDrawElementsInstancedEXT
  :: FunPtr (GLenum -> GLsizei -> GLenum -> Ptr a -> GLsizei -> IO ())
  ->         GLenum -> GLsizei -> GLenum -> Ptr a -> GLsizei -> IO ()

{-# NOINLINE ptr_glDrawElementsInstancedEXT #-}
ptr_glDrawElementsInstancedEXT :: FunPtr (GLenum -> GLsizei -> GLenum -> Ptr a -> GLsizei -> IO ())
ptr_glDrawElementsInstancedEXT = unsafePerformIO $ getCommand "glDrawElementsInstancedEXT"

-- glDrawElementsInstancedNV ---------------------------------------------------

glDrawElementsInstancedNV
  :: GLenum -- ^ @mode@ of type @PrimitiveType@.
  -> GLsizei -- ^ @count@.
  -> GLenum -- ^ @type@.
  -> Ptr a -- ^ @indices@ pointing to @COMPSIZE(count,type)@ elements of type @a@.
  -> GLsizei -- ^ @primcount@.
  -> IO ()
glDrawElementsInstancedNV = dyn_glDrawElementsInstancedNV ptr_glDrawElementsInstancedNV

foreign import CALLCONV "dynamic" dyn_glDrawElementsInstancedNV
  :: FunPtr (GLenum -> GLsizei -> GLenum -> Ptr a -> GLsizei -> IO ())
  ->         GLenum -> GLsizei -> GLenum -> Ptr a -> GLsizei -> IO ()

{-# NOINLINE ptr_glDrawElementsInstancedNV #-}
ptr_glDrawElementsInstancedNV :: FunPtr (GLenum -> GLsizei -> GLenum -> Ptr a -> GLsizei -> IO ())
ptr_glDrawElementsInstancedNV = unsafePerformIO $ getCommand "glDrawElementsInstancedNV"

-- glDrawMeshArraysSUN ---------------------------------------------------------

glDrawMeshArraysSUN
  :: GLenum -- ^ @mode@ of type @PrimitiveType@.
  -> GLint -- ^ @first@.
  -> GLsizei -- ^ @count@.
  -> GLsizei -- ^ @width@.
  -> IO ()
glDrawMeshArraysSUN = dyn_glDrawMeshArraysSUN ptr_glDrawMeshArraysSUN

foreign import CALLCONV "dynamic" dyn_glDrawMeshArraysSUN
  :: FunPtr (GLenum -> GLint -> GLsizei -> GLsizei -> IO ())
  ->         GLenum -> GLint -> GLsizei -> GLsizei -> IO ()

{-# NOINLINE ptr_glDrawMeshArraysSUN #-}
ptr_glDrawMeshArraysSUN :: FunPtr (GLenum -> GLint -> GLsizei -> GLsizei -> IO ())
ptr_glDrawMeshArraysSUN = unsafePerformIO $ getCommand "glDrawMeshArraysSUN"

-- glDrawPixels ----------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glDrawPixels.xml OpenGL 2.x>
glDrawPixels
  :: GLsizei -- ^ @width@.
  -> GLsizei -- ^ @height@.
  -> GLenum -- ^ @format@ of type @PixelFormat@.
  -> GLenum -- ^ @type@ of type @PixelType@.
  -> Ptr a -- ^ @pixels@ pointing to @COMPSIZE(format,type,width,height)@ elements of type @a@.
  -> IO ()
glDrawPixels = dyn_glDrawPixels ptr_glDrawPixels

foreign import CALLCONV "dynamic" dyn_glDrawPixels
  :: FunPtr (GLsizei -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO ())
  ->         GLsizei -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO ()

{-# NOINLINE ptr_glDrawPixels #-}
ptr_glDrawPixels :: FunPtr (GLsizei -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO ())
ptr_glDrawPixels = unsafePerformIO $ getCommand "glDrawPixels"

-- glDrawRangeElementArrayAPPLE ------------------------------------------------

glDrawRangeElementArrayAPPLE
  :: GLenum -- ^ @mode@ of type @PrimitiveType@.
  -> GLuint -- ^ @start@.
  -> GLuint -- ^ @end@.
  -> GLint -- ^ @first@.
  -> GLsizei -- ^ @count@.
  -> IO ()
glDrawRangeElementArrayAPPLE = dyn_glDrawRangeElementArrayAPPLE ptr_glDrawRangeElementArrayAPPLE

foreign import CALLCONV "dynamic" dyn_glDrawRangeElementArrayAPPLE
  :: FunPtr (GLenum -> GLuint -> GLuint -> GLint -> GLsizei -> IO ())
  ->         GLenum -> GLuint -> GLuint -> GLint -> GLsizei -> IO ()

{-# NOINLINE ptr_glDrawRangeElementArrayAPPLE #-}
ptr_glDrawRangeElementArrayAPPLE :: FunPtr (GLenum -> GLuint -> GLuint -> GLint -> GLsizei -> IO ())
ptr_glDrawRangeElementArrayAPPLE = unsafePerformIO $ getCommand "glDrawRangeElementArrayAPPLE"

-- glDrawRangeElementArrayATI --------------------------------------------------

glDrawRangeElementArrayATI
  :: GLenum -- ^ @mode@ of type @PrimitiveType@.
  -> GLuint -- ^ @start@.
  -> GLuint -- ^ @end@.
  -> GLsizei -- ^ @count@.
  -> IO ()
glDrawRangeElementArrayATI = dyn_glDrawRangeElementArrayATI ptr_glDrawRangeElementArrayATI

foreign import CALLCONV "dynamic" dyn_glDrawRangeElementArrayATI
  :: FunPtr (GLenum -> GLuint -> GLuint -> GLsizei -> IO ())
  ->         GLenum -> GLuint -> GLuint -> GLsizei -> IO ()

{-# NOINLINE ptr_glDrawRangeElementArrayATI #-}
ptr_glDrawRangeElementArrayATI :: FunPtr (GLenum -> GLuint -> GLuint -> GLsizei -> IO ())
ptr_glDrawRangeElementArrayATI = unsafePerformIO $ getCommand "glDrawRangeElementArrayATI"

-- glDrawRangeElements ---------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glDrawRangeElements.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glDrawRangeElements.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glDrawRangeElements.xhtml OpenGL 4.x>
glDrawRangeElements
  :: GLenum -- ^ @mode@ of type @PrimitiveType@.
  -> GLuint -- ^ @start@.
  -> GLuint -- ^ @end@.
  -> GLsizei -- ^ @count@.
  -> GLenum -- ^ @type@ of type @DrawElementsType@.
  -> Ptr a -- ^ @indices@ pointing to @COMPSIZE(count,type)@ elements of type @a@.
  -> IO ()
glDrawRangeElements = dyn_glDrawRangeElements ptr_glDrawRangeElements

foreign import CALLCONV "dynamic" dyn_glDrawRangeElements
  :: FunPtr (GLenum -> GLuint -> GLuint -> GLsizei -> GLenum -> Ptr a -> IO ())
  ->         GLenum -> GLuint -> GLuint -> GLsizei -> GLenum -> Ptr a -> IO ()

{-# NOINLINE ptr_glDrawRangeElements #-}
ptr_glDrawRangeElements :: FunPtr (GLenum -> GLuint -> GLuint -> GLsizei -> GLenum -> Ptr a -> IO ())
ptr_glDrawRangeElements = unsafePerformIO $ getCommand "glDrawRangeElements"

-- glDrawRangeElementsBaseVertex -----------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glDrawRangeElementsBaseVertex.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glDrawRangeElementsBaseVertex.xhtml OpenGL 4.x>
glDrawRangeElementsBaseVertex
  :: GLenum -- ^ @mode@ of type @PrimitiveType@.
  -> GLuint -- ^ @start@.
  -> GLuint -- ^ @end@.
  -> GLsizei -- ^ @count@.
  -> GLenum -- ^ @type@ of type @DrawElementsType@.
  -> Ptr a -- ^ @indices@ pointing to @COMPSIZE(count,type)@ elements of type @a@.
  -> GLint -- ^ @basevertex@.
  -> IO ()
glDrawRangeElementsBaseVertex = dyn_glDrawRangeElementsBaseVertex ptr_glDrawRangeElementsBaseVertex

foreign import CALLCONV "dynamic" dyn_glDrawRangeElementsBaseVertex
  :: FunPtr (GLenum -> GLuint -> GLuint -> GLsizei -> GLenum -> Ptr a -> GLint -> IO ())
  ->         GLenum -> GLuint -> GLuint -> GLsizei -> GLenum -> Ptr a -> GLint -> IO ()

{-# NOINLINE ptr_glDrawRangeElementsBaseVertex #-}
ptr_glDrawRangeElementsBaseVertex :: FunPtr (GLenum -> GLuint -> GLuint -> GLsizei -> GLenum -> Ptr a -> GLint -> IO ())
ptr_glDrawRangeElementsBaseVertex = unsafePerformIO $ getCommand "glDrawRangeElementsBaseVertex"

-- glDrawRangeElementsBaseVertexEXT --------------------------------------------

glDrawRangeElementsBaseVertexEXT
  :: GLenum -- ^ @mode@ of type @PrimitiveType@.
  -> GLuint -- ^ @start@.
  -> GLuint -- ^ @end@.
  -> GLsizei -- ^ @count@.
  -> GLenum -- ^ @type@ of type @DrawElementsType@.
  -> Ptr a -- ^ @indices@ pointing to @COMPSIZE(count,type)@ elements of type @a@.
  -> GLint -- ^ @basevertex@.
  -> IO ()
glDrawRangeElementsBaseVertexEXT = dyn_glDrawRangeElementsBaseVertexEXT ptr_glDrawRangeElementsBaseVertexEXT

foreign import CALLCONV "dynamic" dyn_glDrawRangeElementsBaseVertexEXT
  :: FunPtr (GLenum -> GLuint -> GLuint -> GLsizei -> GLenum -> Ptr a -> GLint -> IO ())
  ->         GLenum -> GLuint -> GLuint -> GLsizei -> GLenum -> Ptr a -> GLint -> IO ()

{-# NOINLINE ptr_glDrawRangeElementsBaseVertexEXT #-}
ptr_glDrawRangeElementsBaseVertexEXT :: FunPtr (GLenum -> GLuint -> GLuint -> GLsizei -> GLenum -> Ptr a -> GLint -> IO ())
ptr_glDrawRangeElementsBaseVertexEXT = unsafePerformIO $ getCommand "glDrawRangeElementsBaseVertexEXT"

-- glDrawRangeElementsBaseVertexOES --------------------------------------------

glDrawRangeElementsBaseVertexOES
  :: GLenum -- ^ @mode@ of type @PrimitiveType@.
  -> GLuint -- ^ @start@.
  -> GLuint -- ^ @end@.
  -> GLsizei -- ^ @count@.
  -> GLenum -- ^ @type@ of type @DrawElementsType@.
  -> Ptr a -- ^ @indices@ pointing to @COMPSIZE(count,type)@ elements of type @a@.
  -> GLint -- ^ @basevertex@.
  -> IO ()
glDrawRangeElementsBaseVertexOES = dyn_glDrawRangeElementsBaseVertexOES ptr_glDrawRangeElementsBaseVertexOES

foreign import CALLCONV "dynamic" dyn_glDrawRangeElementsBaseVertexOES
  :: FunPtr (GLenum -> GLuint -> GLuint -> GLsizei -> GLenum -> Ptr a -> GLint -> IO ())
  ->         GLenum -> GLuint -> GLuint -> GLsizei -> GLenum -> Ptr a -> GLint -> IO ()

{-# NOINLINE ptr_glDrawRangeElementsBaseVertexOES #-}
ptr_glDrawRangeElementsBaseVertexOES :: FunPtr (GLenum -> GLuint -> GLuint -> GLsizei -> GLenum -> Ptr a -> GLint -> IO ())
ptr_glDrawRangeElementsBaseVertexOES = unsafePerformIO $ getCommand "glDrawRangeElementsBaseVertexOES"

-- glDrawRangeElementsEXT ------------------------------------------------------

glDrawRangeElementsEXT
  :: GLenum -- ^ @mode@ of type @PrimitiveType@.
  -> GLuint -- ^ @start@.
  -> GLuint -- ^ @end@.
  -> GLsizei -- ^ @count@.
  -> GLenum -- ^ @type@ of type @DrawElementsType@.
  -> Ptr a -- ^ @indices@ pointing to @COMPSIZE(count,type)@ elements of type @a@.
  -> IO ()
glDrawRangeElementsEXT = dyn_glDrawRangeElementsEXT ptr_glDrawRangeElementsEXT

foreign import CALLCONV "dynamic" dyn_glDrawRangeElementsEXT
  :: FunPtr (GLenum -> GLuint -> GLuint -> GLsizei -> GLenum -> Ptr a -> IO ())
  ->         GLenum -> GLuint -> GLuint -> GLsizei -> GLenum -> Ptr a -> IO ()

{-# NOINLINE ptr_glDrawRangeElementsEXT #-}
ptr_glDrawRangeElementsEXT :: FunPtr (GLenum -> GLuint -> GLuint -> GLsizei -> GLenum -> Ptr a -> IO ())
ptr_glDrawRangeElementsEXT = unsafePerformIO $ getCommand "glDrawRangeElementsEXT"

-- glDrawTexfOES ---------------------------------------------------------------

glDrawTexfOES
  :: GLfloat -- ^ @x@.
  -> GLfloat -- ^ @y@.
  -> GLfloat -- ^ @z@.
  -> GLfloat -- ^ @width@.
  -> GLfloat -- ^ @height@.
  -> IO ()
glDrawTexfOES = dyn_glDrawTexfOES ptr_glDrawTexfOES

foreign import CALLCONV "dynamic" dyn_glDrawTexfOES
  :: FunPtr (GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
  ->         GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ()

{-# NOINLINE ptr_glDrawTexfOES #-}
ptr_glDrawTexfOES :: FunPtr (GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
ptr_glDrawTexfOES = unsafePerformIO $ getCommand "glDrawTexfOES"

-- glDrawTexfvOES --------------------------------------------------------------

glDrawTexfvOES
  :: Ptr GLfloat -- ^ @coords@.
  -> IO ()
glDrawTexfvOES = dyn_glDrawTexfvOES ptr_glDrawTexfvOES

foreign import CALLCONV "dynamic" dyn_glDrawTexfvOES
  :: FunPtr (Ptr GLfloat -> IO ())
  ->         Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glDrawTexfvOES #-}
ptr_glDrawTexfvOES :: FunPtr (Ptr GLfloat -> IO ())
ptr_glDrawTexfvOES = unsafePerformIO $ getCommand "glDrawTexfvOES"

-- glDrawTexiOES ---------------------------------------------------------------

glDrawTexiOES
  :: GLint -- ^ @x@.
  -> GLint -- ^ @y@.
  -> GLint -- ^ @z@.
  -> GLint -- ^ @width@.
  -> GLint -- ^ @height@.
  -> IO ()
glDrawTexiOES = dyn_glDrawTexiOES ptr_glDrawTexiOES

foreign import CALLCONV "dynamic" dyn_glDrawTexiOES
  :: FunPtr (GLint -> GLint -> GLint -> GLint -> GLint -> IO ())
  ->         GLint -> GLint -> GLint -> GLint -> GLint -> IO ()

{-# NOINLINE ptr_glDrawTexiOES #-}
ptr_glDrawTexiOES :: FunPtr (GLint -> GLint -> GLint -> GLint -> GLint -> IO ())
ptr_glDrawTexiOES = unsafePerformIO $ getCommand "glDrawTexiOES"

-- glDrawTexivOES --------------------------------------------------------------

glDrawTexivOES
  :: Ptr GLint -- ^ @coords@.
  -> IO ()
glDrawTexivOES = dyn_glDrawTexivOES ptr_glDrawTexivOES

foreign import CALLCONV "dynamic" dyn_glDrawTexivOES
  :: FunPtr (Ptr GLint -> IO ())
  ->         Ptr GLint -> IO ()

{-# NOINLINE ptr_glDrawTexivOES #-}
ptr_glDrawTexivOES :: FunPtr (Ptr GLint -> IO ())
ptr_glDrawTexivOES = unsafePerformIO $ getCommand "glDrawTexivOES"

-- glDrawTexsOES ---------------------------------------------------------------

glDrawTexsOES
  :: GLshort -- ^ @x@.
  -> GLshort -- ^ @y@.
  -> GLshort -- ^ @z@.
  -> GLshort -- ^ @width@.
  -> GLshort -- ^ @height@.
  -> IO ()
glDrawTexsOES = dyn_glDrawTexsOES ptr_glDrawTexsOES

foreign import CALLCONV "dynamic" dyn_glDrawTexsOES
  :: FunPtr (GLshort -> GLshort -> GLshort -> GLshort -> GLshort -> IO ())
  ->         GLshort -> GLshort -> GLshort -> GLshort -> GLshort -> IO ()

{-# NOINLINE ptr_glDrawTexsOES #-}
ptr_glDrawTexsOES :: FunPtr (GLshort -> GLshort -> GLshort -> GLshort -> GLshort -> IO ())
ptr_glDrawTexsOES = unsafePerformIO $ getCommand "glDrawTexsOES"

-- glDrawTexsvOES --------------------------------------------------------------

glDrawTexsvOES
  :: Ptr GLshort -- ^ @coords@.
  -> IO ()
glDrawTexsvOES = dyn_glDrawTexsvOES ptr_glDrawTexsvOES

foreign import CALLCONV "dynamic" dyn_glDrawTexsvOES
  :: FunPtr (Ptr GLshort -> IO ())
  ->         Ptr GLshort -> IO ()

{-# NOINLINE ptr_glDrawTexsvOES #-}
ptr_glDrawTexsvOES :: FunPtr (Ptr GLshort -> IO ())
ptr_glDrawTexsvOES = unsafePerformIO $ getCommand "glDrawTexsvOES"

-- glDrawTextureNV -------------------------------------------------------------

glDrawTextureNV
  :: GLuint -- ^ @texture@.
  -> GLuint -- ^ @sampler@.
  -> GLfloat -- ^ @x0@.
  -> GLfloat -- ^ @y0@.
  -> GLfloat -- ^ @x1@.
  -> GLfloat -- ^ @y1@.
  -> GLfloat -- ^ @z@.
  -> GLfloat -- ^ @s0@.
  -> GLfloat -- ^ @t0@.
  -> GLfloat -- ^ @s1@.
  -> GLfloat -- ^ @t1@.
  -> IO ()
glDrawTextureNV = dyn_glDrawTextureNV ptr_glDrawTextureNV

foreign import CALLCONV "dynamic" dyn_glDrawTextureNV
  :: FunPtr (GLuint -> GLuint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
  ->         GLuint -> GLuint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ()

{-# NOINLINE ptr_glDrawTextureNV #-}
ptr_glDrawTextureNV :: FunPtr (GLuint -> GLuint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
ptr_glDrawTextureNV = unsafePerformIO $ getCommand "glDrawTextureNV"

-- glDrawTexxOES ---------------------------------------------------------------

glDrawTexxOES
  :: GLfixed -- ^ @x@.
  -> GLfixed -- ^ @y@.
  -> GLfixed -- ^ @z@.
  -> GLfixed -- ^ @width@.
  -> GLfixed -- ^ @height@.
  -> IO ()
glDrawTexxOES = dyn_glDrawTexxOES ptr_glDrawTexxOES

foreign import CALLCONV "dynamic" dyn_glDrawTexxOES
  :: FunPtr (GLfixed -> GLfixed -> GLfixed -> GLfixed -> GLfixed -> IO ())
  ->         GLfixed -> GLfixed -> GLfixed -> GLfixed -> GLfixed -> IO ()

{-# NOINLINE ptr_glDrawTexxOES #-}
ptr_glDrawTexxOES :: FunPtr (GLfixed -> GLfixed -> GLfixed -> GLfixed -> GLfixed -> IO ())
ptr_glDrawTexxOES = unsafePerformIO $ getCommand "glDrawTexxOES"

-- glDrawTexxvOES --------------------------------------------------------------

glDrawTexxvOES
  :: Ptr GLfixed -- ^ @coords@.
  -> IO ()
glDrawTexxvOES = dyn_glDrawTexxvOES ptr_glDrawTexxvOES

foreign import CALLCONV "dynamic" dyn_glDrawTexxvOES
  :: FunPtr (Ptr GLfixed -> IO ())
  ->         Ptr GLfixed -> IO ()

{-# NOINLINE ptr_glDrawTexxvOES #-}
ptr_glDrawTexxvOES :: FunPtr (Ptr GLfixed -> IO ())
ptr_glDrawTexxvOES = unsafePerformIO $ getCommand "glDrawTexxvOES"

-- glDrawTransformFeedback -----------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glDrawTransformFeedback.xhtml OpenGL 4.x>
glDrawTransformFeedback
  :: GLenum -- ^ @mode@ of type @PrimitiveType@.
  -> GLuint -- ^ @id@.
  -> IO ()
glDrawTransformFeedback = dyn_glDrawTransformFeedback ptr_glDrawTransformFeedback

foreign import CALLCONV "dynamic" dyn_glDrawTransformFeedback
  :: FunPtr (GLenum -> GLuint -> IO ())
  ->         GLenum -> GLuint -> IO ()

{-# NOINLINE ptr_glDrawTransformFeedback #-}
ptr_glDrawTransformFeedback :: FunPtr (GLenum -> GLuint -> IO ())
ptr_glDrawTransformFeedback = unsafePerformIO $ getCommand "glDrawTransformFeedback"

-- glDrawTransformFeedbackInstanced --------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glDrawTransformFeedbackInstanced.xhtml OpenGL 4.x>
glDrawTransformFeedbackInstanced
  :: GLenum -- ^ @mode@ of type @PrimitiveType@.
  -> GLuint -- ^ @id@.
  -> GLsizei -- ^ @instancecount@.
  -> IO ()
glDrawTransformFeedbackInstanced = dyn_glDrawTransformFeedbackInstanced ptr_glDrawTransformFeedbackInstanced

foreign import CALLCONV "dynamic" dyn_glDrawTransformFeedbackInstanced
  :: FunPtr (GLenum -> GLuint -> GLsizei -> IO ())
  ->         GLenum -> GLuint -> GLsizei -> IO ()

{-# NOINLINE ptr_glDrawTransformFeedbackInstanced #-}
ptr_glDrawTransformFeedbackInstanced :: FunPtr (GLenum -> GLuint -> GLsizei -> IO ())
ptr_glDrawTransformFeedbackInstanced = unsafePerformIO $ getCommand "glDrawTransformFeedbackInstanced"

-- glDrawTransformFeedbackNV ---------------------------------------------------

glDrawTransformFeedbackNV
  :: GLenum -- ^ @mode@ of type @PrimitiveType@.
  -> GLuint -- ^ @id@.
  -> IO ()
glDrawTransformFeedbackNV = dyn_glDrawTransformFeedbackNV ptr_glDrawTransformFeedbackNV

foreign import CALLCONV "dynamic" dyn_glDrawTransformFeedbackNV
  :: FunPtr (GLenum -> GLuint -> IO ())
  ->         GLenum -> GLuint -> IO ()

{-# NOINLINE ptr_glDrawTransformFeedbackNV #-}
ptr_glDrawTransformFeedbackNV :: FunPtr (GLenum -> GLuint -> IO ())
ptr_glDrawTransformFeedbackNV = unsafePerformIO $ getCommand "glDrawTransformFeedbackNV"

-- glDrawTransformFeedbackStream -----------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glDrawTransformFeedbackStream.xhtml OpenGL 4.x>
glDrawTransformFeedbackStream
  :: GLenum -- ^ @mode@ of type @PrimitiveType@.
  -> GLuint -- ^ @id@.
  -> GLuint -- ^ @stream@.
  -> IO ()
glDrawTransformFeedbackStream = dyn_glDrawTransformFeedbackStream ptr_glDrawTransformFeedbackStream

foreign import CALLCONV "dynamic" dyn_glDrawTransformFeedbackStream
  :: FunPtr (GLenum -> GLuint -> GLuint -> IO ())
  ->         GLenum -> GLuint -> GLuint -> IO ()

{-# NOINLINE ptr_glDrawTransformFeedbackStream #-}
ptr_glDrawTransformFeedbackStream :: FunPtr (GLenum -> GLuint -> GLuint -> IO ())
ptr_glDrawTransformFeedbackStream = unsafePerformIO $ getCommand "glDrawTransformFeedbackStream"

-- glDrawTransformFeedbackStreamInstanced --------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glDrawTransformFeedbackStreamInstanced.xhtml OpenGL 4.x>
glDrawTransformFeedbackStreamInstanced
  :: GLenum -- ^ @mode@ of type @PrimitiveType@.
  -> GLuint -- ^ @id@.
  -> GLuint -- ^ @stream@.
  -> GLsizei -- ^ @instancecount@.
  -> IO ()
glDrawTransformFeedbackStreamInstanced = dyn_glDrawTransformFeedbackStreamInstanced ptr_glDrawTransformFeedbackStreamInstanced

foreign import CALLCONV "dynamic" dyn_glDrawTransformFeedbackStreamInstanced
  :: FunPtr (GLenum -> GLuint -> GLuint -> GLsizei -> IO ())
  ->         GLenum -> GLuint -> GLuint -> GLsizei -> IO ()

{-# NOINLINE ptr_glDrawTransformFeedbackStreamInstanced #-}
ptr_glDrawTransformFeedbackStreamInstanced :: FunPtr (GLenum -> GLuint -> GLuint -> GLsizei -> IO ())
ptr_glDrawTransformFeedbackStreamInstanced = unsafePerformIO $ getCommand "glDrawTransformFeedbackStreamInstanced"

-- glEGLImageTargetRenderbufferStorageOES --------------------------------------

glEGLImageTargetRenderbufferStorageOES
  :: GLenum -- ^ @target@.
  -> GLeglImageOES -- ^ @image@.
  -> IO ()
glEGLImageTargetRenderbufferStorageOES = dyn_glEGLImageTargetRenderbufferStorageOES ptr_glEGLImageTargetRenderbufferStorageOES

foreign import CALLCONV "dynamic" dyn_glEGLImageTargetRenderbufferStorageOES
  :: FunPtr (GLenum -> GLeglImageOES -> IO ())
  ->         GLenum -> GLeglImageOES -> IO ()

{-# NOINLINE ptr_glEGLImageTargetRenderbufferStorageOES #-}
ptr_glEGLImageTargetRenderbufferStorageOES :: FunPtr (GLenum -> GLeglImageOES -> IO ())
ptr_glEGLImageTargetRenderbufferStorageOES = unsafePerformIO $ getCommand "glEGLImageTargetRenderbufferStorageOES"

-- glEGLImageTargetTexture2DOES ------------------------------------------------

glEGLImageTargetTexture2DOES
  :: GLenum -- ^ @target@.
  -> GLeglImageOES -- ^ @image@.
  -> IO ()
glEGLImageTargetTexture2DOES = dyn_glEGLImageTargetTexture2DOES ptr_glEGLImageTargetTexture2DOES

foreign import CALLCONV "dynamic" dyn_glEGLImageTargetTexture2DOES
  :: FunPtr (GLenum -> GLeglImageOES -> IO ())
  ->         GLenum -> GLeglImageOES -> IO ()

{-# NOINLINE ptr_glEGLImageTargetTexture2DOES #-}
ptr_glEGLImageTargetTexture2DOES :: FunPtr (GLenum -> GLeglImageOES -> IO ())
ptr_glEGLImageTargetTexture2DOES = unsafePerformIO $ getCommand "glEGLImageTargetTexture2DOES"

-- glEdgeFlag ------------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glEdgeFlag.xml OpenGL 2.x>
glEdgeFlag
  :: GLboolean -- ^ @flag@ of type @Boolean@.
  -> IO ()
glEdgeFlag = dyn_glEdgeFlag ptr_glEdgeFlag

foreign import CALLCONV "dynamic" dyn_glEdgeFlag
  :: FunPtr (GLboolean -> IO ())
  ->         GLboolean -> IO ()

{-# NOINLINE ptr_glEdgeFlag #-}
ptr_glEdgeFlag :: FunPtr (GLboolean -> IO ())
ptr_glEdgeFlag = unsafePerformIO $ getCommand "glEdgeFlag"

-- glEdgeFlagFormatNV ----------------------------------------------------------

glEdgeFlagFormatNV
  :: GLsizei -- ^ @stride@.
  -> IO ()
glEdgeFlagFormatNV = dyn_glEdgeFlagFormatNV ptr_glEdgeFlagFormatNV

foreign import CALLCONV "dynamic" dyn_glEdgeFlagFormatNV
  :: FunPtr (GLsizei -> IO ())
  ->         GLsizei -> IO ()

{-# NOINLINE ptr_glEdgeFlagFormatNV #-}
ptr_glEdgeFlagFormatNV :: FunPtr (GLsizei -> IO ())
ptr_glEdgeFlagFormatNV = unsafePerformIO $ getCommand "glEdgeFlagFormatNV"

-- glEdgeFlagPointer -----------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glEdgeFlagPointer.xml OpenGL 2.x>
glEdgeFlagPointer
  :: GLsizei -- ^ @stride@.
  -> Ptr a -- ^ @pointer@ pointing to @COMPSIZE(stride)@ elements of type @a@.
  -> IO ()
glEdgeFlagPointer = dyn_glEdgeFlagPointer ptr_glEdgeFlagPointer

foreign import CALLCONV "dynamic" dyn_glEdgeFlagPointer
  :: FunPtr (GLsizei -> Ptr a -> IO ())
  ->         GLsizei -> Ptr a -> IO ()

{-# NOINLINE ptr_glEdgeFlagPointer #-}
ptr_glEdgeFlagPointer :: FunPtr (GLsizei -> Ptr a -> IO ())
ptr_glEdgeFlagPointer = unsafePerformIO $ getCommand "glEdgeFlagPointer"

-- glEdgeFlagPointerEXT --------------------------------------------------------

glEdgeFlagPointerEXT
  :: GLsizei -- ^ @stride@.
  -> GLsizei -- ^ @count@.
  -> Ptr GLboolean -- ^ @pointer@ pointing to @COMPSIZE(stride,count)@ elements of type @Boolean@.
  -> IO ()
glEdgeFlagPointerEXT = dyn_glEdgeFlagPointerEXT ptr_glEdgeFlagPointerEXT

foreign import CALLCONV "dynamic" dyn_glEdgeFlagPointerEXT
  :: FunPtr (GLsizei -> GLsizei -> Ptr GLboolean -> IO ())
  ->         GLsizei -> GLsizei -> Ptr GLboolean -> IO ()

{-# NOINLINE ptr_glEdgeFlagPointerEXT #-}
ptr_glEdgeFlagPointerEXT :: FunPtr (GLsizei -> GLsizei -> Ptr GLboolean -> IO ())
ptr_glEdgeFlagPointerEXT = unsafePerformIO $ getCommand "glEdgeFlagPointerEXT"

-- glEdgeFlagPointerListIBM ----------------------------------------------------

glEdgeFlagPointerListIBM
  :: GLint -- ^ @stride@.
  -> Ptr (Ptr GLboolean) -- ^ @pointer@ pointing to @COMPSIZE(stride)@ elements of type @Ptr BooleanPointer@.
  -> GLint -- ^ @ptrstride@.
  -> IO ()
glEdgeFlagPointerListIBM = dyn_glEdgeFlagPointerListIBM ptr_glEdgeFlagPointerListIBM

foreign import CALLCONV "dynamic" dyn_glEdgeFlagPointerListIBM
  :: FunPtr (GLint -> Ptr (Ptr GLboolean) -> GLint -> IO ())
  ->         GLint -> Ptr (Ptr GLboolean) -> GLint -> IO ()

{-# NOINLINE ptr_glEdgeFlagPointerListIBM #-}
ptr_glEdgeFlagPointerListIBM :: FunPtr (GLint -> Ptr (Ptr GLboolean) -> GLint -> IO ())
ptr_glEdgeFlagPointerListIBM = unsafePerformIO $ getCommand "glEdgeFlagPointerListIBM"

-- glEdgeFlagv -----------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glEdgeFlag.xml OpenGL 2.x>
glEdgeFlagv
  :: Ptr GLboolean -- ^ @flag@ pointing to @1@ elements of type @Boolean@.
  -> IO ()
glEdgeFlagv = dyn_glEdgeFlagv ptr_glEdgeFlagv

foreign import CALLCONV "dynamic" dyn_glEdgeFlagv
  :: FunPtr (Ptr GLboolean -> IO ())
  ->         Ptr GLboolean -> IO ()

{-# NOINLINE ptr_glEdgeFlagv #-}
ptr_glEdgeFlagv :: FunPtr (Ptr GLboolean -> IO ())
ptr_glEdgeFlagv = unsafePerformIO $ getCommand "glEdgeFlagv"

-- glElementPointerAPPLE -------------------------------------------------------

glElementPointerAPPLE
  :: GLenum -- ^ @type@ of type @ElementPointerTypeATI@.
  -> Ptr a -- ^ @pointer@ pointing to @COMPSIZE(type)@ elements of type @a@.
  -> IO ()
glElementPointerAPPLE = dyn_glElementPointerAPPLE ptr_glElementPointerAPPLE

foreign import CALLCONV "dynamic" dyn_glElementPointerAPPLE
  :: FunPtr (GLenum -> Ptr a -> IO ())
  ->         GLenum -> Ptr a -> IO ()

{-# NOINLINE ptr_glElementPointerAPPLE #-}
ptr_glElementPointerAPPLE :: FunPtr (GLenum -> Ptr a -> IO ())
ptr_glElementPointerAPPLE = unsafePerformIO $ getCommand "glElementPointerAPPLE"

-- glElementPointerATI ---------------------------------------------------------

glElementPointerATI
  :: GLenum -- ^ @type@ of type @ElementPointerTypeATI@.
  -> Ptr a -- ^ @pointer@ pointing to @COMPSIZE(type)@ elements of type @a@.
  -> IO ()
glElementPointerATI = dyn_glElementPointerATI ptr_glElementPointerATI

foreign import CALLCONV "dynamic" dyn_glElementPointerATI
  :: FunPtr (GLenum -> Ptr a -> IO ())
  ->         GLenum -> Ptr a -> IO ()

{-# NOINLINE ptr_glElementPointerATI #-}
ptr_glElementPointerATI :: FunPtr (GLenum -> Ptr a -> IO ())
ptr_glElementPointerATI = unsafePerformIO $ getCommand "glElementPointerATI"

-- glEnable --------------------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glEnable.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glEnable.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glEnable.xhtml OpenGL 4.x>
glEnable
  :: GLenum -- ^ @cap@ of type @EnableCap@.
  -> IO ()
glEnable = dyn_glEnable ptr_glEnable

foreign import CALLCONV "dynamic" dyn_glEnable
  :: FunPtr (GLenum -> IO ())
  ->         GLenum -> IO ()

{-# NOINLINE ptr_glEnable #-}
ptr_glEnable :: FunPtr (GLenum -> IO ())
ptr_glEnable = unsafePerformIO $ getCommand "glEnable"

-- glEnableClientState ---------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glEnableClientState.xml OpenGL 2.x>
glEnableClientState
  :: GLenum -- ^ @array@ of type @EnableCap@.
  -> IO ()
glEnableClientState = dyn_glEnableClientState ptr_glEnableClientState

foreign import CALLCONV "dynamic" dyn_glEnableClientState
  :: FunPtr (GLenum -> IO ())
  ->         GLenum -> IO ()

{-# NOINLINE ptr_glEnableClientState #-}
ptr_glEnableClientState :: FunPtr (GLenum -> IO ())
ptr_glEnableClientState = unsafePerformIO $ getCommand "glEnableClientState"

-- glEnableClientStateIndexedEXT -----------------------------------------------

glEnableClientStateIndexedEXT
  :: GLenum -- ^ @array@ of type @EnableCap@.
  -> GLuint -- ^ @index@.
  -> IO ()
glEnableClientStateIndexedEXT = dyn_glEnableClientStateIndexedEXT ptr_glEnableClientStateIndexedEXT

foreign import CALLCONV "dynamic" dyn_glEnableClientStateIndexedEXT
  :: FunPtr (GLenum -> GLuint -> IO ())
  ->         GLenum -> GLuint -> IO ()

{-# NOINLINE ptr_glEnableClientStateIndexedEXT #-}
ptr_glEnableClientStateIndexedEXT :: FunPtr (GLenum -> GLuint -> IO ())
ptr_glEnableClientStateIndexedEXT = unsafePerformIO $ getCommand "glEnableClientStateIndexedEXT"

-- glEnableClientStateiEXT -----------------------------------------------------

glEnableClientStateiEXT
  :: GLenum -- ^ @array@ of type @EnableCap@.
  -> GLuint -- ^ @index@.
  -> IO ()
glEnableClientStateiEXT = dyn_glEnableClientStateiEXT ptr_glEnableClientStateiEXT

foreign import CALLCONV "dynamic" dyn_glEnableClientStateiEXT
  :: FunPtr (GLenum -> GLuint -> IO ())
  ->         GLenum -> GLuint -> IO ()

{-# NOINLINE ptr_glEnableClientStateiEXT #-}
ptr_glEnableClientStateiEXT :: FunPtr (GLenum -> GLuint -> IO ())
ptr_glEnableClientStateiEXT = unsafePerformIO $ getCommand "glEnableClientStateiEXT"

-- glEnableDriverControlQCOM ---------------------------------------------------

glEnableDriverControlQCOM
  :: GLuint -- ^ @driverControl@.
  -> IO ()
glEnableDriverControlQCOM = dyn_glEnableDriverControlQCOM ptr_glEnableDriverControlQCOM

foreign import CALLCONV "dynamic" dyn_glEnableDriverControlQCOM
  :: FunPtr (GLuint -> IO ())
  ->         GLuint -> IO ()

{-# NOINLINE ptr_glEnableDriverControlQCOM #-}
ptr_glEnableDriverControlQCOM :: FunPtr (GLuint -> IO ())
ptr_glEnableDriverControlQCOM = unsafePerformIO $ getCommand "glEnableDriverControlQCOM"

-- glEnableIndexedEXT ----------------------------------------------------------

glEnableIndexedEXT
  :: GLenum -- ^ @target@.
  -> GLuint -- ^ @index@.
  -> IO ()
glEnableIndexedEXT = dyn_glEnableIndexedEXT ptr_glEnableIndexedEXT

foreign import CALLCONV "dynamic" dyn_glEnableIndexedEXT
  :: FunPtr (GLenum -> GLuint -> IO ())
  ->         GLenum -> GLuint -> IO ()

{-# NOINLINE ptr_glEnableIndexedEXT #-}
ptr_glEnableIndexedEXT :: FunPtr (GLenum -> GLuint -> IO ())
ptr_glEnableIndexedEXT = unsafePerformIO $ getCommand "glEnableIndexedEXT"

-- glEnableVariantClientStateEXT -----------------------------------------------

glEnableVariantClientStateEXT
  :: GLuint -- ^ @id@.
  -> IO ()
glEnableVariantClientStateEXT = dyn_glEnableVariantClientStateEXT ptr_glEnableVariantClientStateEXT

foreign import CALLCONV "dynamic" dyn_glEnableVariantClientStateEXT
  :: FunPtr (GLuint -> IO ())
  ->         GLuint -> IO ()

{-# NOINLINE ptr_glEnableVariantClientStateEXT #-}
ptr_glEnableVariantClientStateEXT :: FunPtr (GLuint -> IO ())
ptr_glEnableVariantClientStateEXT = unsafePerformIO $ getCommand "glEnableVariantClientStateEXT"

-- glEnableVertexArrayAttrib ---------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glEnableVertexAttribArray.xhtml OpenGL 4.x>
glEnableVertexArrayAttrib
  :: GLuint -- ^ @vaobj@.
  -> GLuint -- ^ @index@.
  -> IO ()
glEnableVertexArrayAttrib = dyn_glEnableVertexArrayAttrib ptr_glEnableVertexArrayAttrib

foreign import CALLCONV "dynamic" dyn_glEnableVertexArrayAttrib
  :: FunPtr (GLuint -> GLuint -> IO ())
  ->         GLuint -> GLuint -> IO ()

{-# NOINLINE ptr_glEnableVertexArrayAttrib #-}
ptr_glEnableVertexArrayAttrib :: FunPtr (GLuint -> GLuint -> IO ())
ptr_glEnableVertexArrayAttrib = unsafePerformIO $ getCommand "glEnableVertexArrayAttrib"

-- glEnableVertexArrayAttribEXT ------------------------------------------------

glEnableVertexArrayAttribEXT
  :: GLuint -- ^ @vaobj@.
  -> GLuint -- ^ @index@.
  -> IO ()
glEnableVertexArrayAttribEXT = dyn_glEnableVertexArrayAttribEXT ptr_glEnableVertexArrayAttribEXT

foreign import CALLCONV "dynamic" dyn_glEnableVertexArrayAttribEXT
  :: FunPtr (GLuint -> GLuint -> IO ())
  ->         GLuint -> GLuint -> IO ()

{-# NOINLINE ptr_glEnableVertexArrayAttribEXT #-}
ptr_glEnableVertexArrayAttribEXT :: FunPtr (GLuint -> GLuint -> IO ())
ptr_glEnableVertexArrayAttribEXT = unsafePerformIO $ getCommand "glEnableVertexArrayAttribEXT"

-- glEnableVertexArrayEXT ------------------------------------------------------

glEnableVertexArrayEXT
  :: GLuint -- ^ @vaobj@.
  -> GLenum -- ^ @array@ of type @EnableCap@.
  -> IO ()
glEnableVertexArrayEXT = dyn_glEnableVertexArrayEXT ptr_glEnableVertexArrayEXT

foreign import CALLCONV "dynamic" dyn_glEnableVertexArrayEXT
  :: FunPtr (GLuint -> GLenum -> IO ())
  ->         GLuint -> GLenum -> IO ()

{-# NOINLINE ptr_glEnableVertexArrayEXT #-}
ptr_glEnableVertexArrayEXT :: FunPtr (GLuint -> GLenum -> IO ())
ptr_glEnableVertexArrayEXT = unsafePerformIO $ getCommand "glEnableVertexArrayEXT"

-- glEnableVertexAttribAPPLE ---------------------------------------------------

glEnableVertexAttribAPPLE
  :: GLuint -- ^ @index@.
  -> GLenum -- ^ @pname@.
  -> IO ()
glEnableVertexAttribAPPLE = dyn_glEnableVertexAttribAPPLE ptr_glEnableVertexAttribAPPLE

foreign import CALLCONV "dynamic" dyn_glEnableVertexAttribAPPLE
  :: FunPtr (GLuint -> GLenum -> IO ())
  ->         GLuint -> GLenum -> IO ()

{-# NOINLINE ptr_glEnableVertexAttribAPPLE #-}
ptr_glEnableVertexAttribAPPLE :: FunPtr (GLuint -> GLenum -> IO ())
ptr_glEnableVertexAttribAPPLE = unsafePerformIO $ getCommand "glEnableVertexAttribAPPLE"

-- glEnableVertexAttribArray ---------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glEnableVertexAttribArray.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glEnableVertexAttribArray.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glEnableVertexAttribArray.xhtml OpenGL 4.x>
glEnableVertexAttribArray
  :: GLuint -- ^ @index@.
  -> IO ()
glEnableVertexAttribArray = dyn_glEnableVertexAttribArray ptr_glEnableVertexAttribArray

foreign import CALLCONV "dynamic" dyn_glEnableVertexAttribArray
  :: FunPtr (GLuint -> IO ())
  ->         GLuint -> IO ()

{-# NOINLINE ptr_glEnableVertexAttribArray #-}
ptr_glEnableVertexAttribArray :: FunPtr (GLuint -> IO ())
ptr_glEnableVertexAttribArray = unsafePerformIO $ getCommand "glEnableVertexAttribArray"

-- glEnableVertexAttribArrayARB ------------------------------------------------

glEnableVertexAttribArrayARB
  :: GLuint -- ^ @index@.
  -> IO ()
glEnableVertexAttribArrayARB = dyn_glEnableVertexAttribArrayARB ptr_glEnableVertexAttribArrayARB

foreign import CALLCONV "dynamic" dyn_glEnableVertexAttribArrayARB
  :: FunPtr (GLuint -> IO ())
  ->         GLuint -> IO ()

{-# NOINLINE ptr_glEnableVertexAttribArrayARB #-}
ptr_glEnableVertexAttribArrayARB :: FunPtr (GLuint -> IO ())
ptr_glEnableVertexAttribArrayARB = unsafePerformIO $ getCommand "glEnableVertexAttribArrayARB"

-- glEnablei -------------------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glEnable.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glEnable.xhtml OpenGL 4.x>
glEnablei
  :: GLenum -- ^ @target@.
  -> GLuint -- ^ @index@.
  -> IO ()
glEnablei = dyn_glEnablei ptr_glEnablei

foreign import CALLCONV "dynamic" dyn_glEnablei
  :: FunPtr (GLenum -> GLuint -> IO ())
  ->         GLenum -> GLuint -> IO ()

{-# NOINLINE ptr_glEnablei #-}
ptr_glEnablei :: FunPtr (GLenum -> GLuint -> IO ())
ptr_glEnablei = unsafePerformIO $ getCommand "glEnablei"

-- glEnableiEXT ----------------------------------------------------------------

glEnableiEXT
  :: GLenum -- ^ @target@.
  -> GLuint -- ^ @index@.
  -> IO ()
glEnableiEXT = dyn_glEnableiEXT ptr_glEnableiEXT

foreign import CALLCONV "dynamic" dyn_glEnableiEXT
  :: FunPtr (GLenum -> GLuint -> IO ())
  ->         GLenum -> GLuint -> IO ()

{-# NOINLINE ptr_glEnableiEXT #-}
ptr_glEnableiEXT :: FunPtr (GLenum -> GLuint -> IO ())
ptr_glEnableiEXT = unsafePerformIO $ getCommand "glEnableiEXT"

-- glEnableiNV -----------------------------------------------------------------

glEnableiNV
  :: GLenum -- ^ @target@.
  -> GLuint -- ^ @index@.
  -> IO ()
glEnableiNV = dyn_glEnableiNV ptr_glEnableiNV

foreign import CALLCONV "dynamic" dyn_glEnableiNV
  :: FunPtr (GLenum -> GLuint -> IO ())
  ->         GLenum -> GLuint -> IO ()

{-# NOINLINE ptr_glEnableiNV #-}
ptr_glEnableiNV :: FunPtr (GLenum -> GLuint -> IO ())
ptr_glEnableiNV = unsafePerformIO $ getCommand "glEnableiNV"

-- glEnableiOES ----------------------------------------------------------------

glEnableiOES
  :: GLenum -- ^ @target@.
  -> GLuint -- ^ @index@.
  -> IO ()
glEnableiOES = dyn_glEnableiOES ptr_glEnableiOES

foreign import CALLCONV "dynamic" dyn_glEnableiOES
  :: FunPtr (GLenum -> GLuint -> IO ())
  ->         GLenum -> GLuint -> IO ()

{-# NOINLINE ptr_glEnableiOES #-}
ptr_glEnableiOES :: FunPtr (GLenum -> GLuint -> IO ())
ptr_glEnableiOES = unsafePerformIO $ getCommand "glEnableiOES"

-- glEnd -----------------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glBegin.xml OpenGL 2.x>
glEnd
  :: IO ()
glEnd = dyn_glEnd ptr_glEnd

foreign import CALLCONV "dynamic" dyn_glEnd
  :: FunPtr (IO ())
  ->         IO ()

{-# NOINLINE ptr_glEnd #-}
ptr_glEnd :: FunPtr (IO ())
ptr_glEnd = unsafePerformIO $ getCommand "glEnd"

-- glEndConditionalRender ------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glBeginConditionalRender.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glBeginConditionalRender.xhtml OpenGL 4.x>
glEndConditionalRender
  :: IO ()
glEndConditionalRender = dyn_glEndConditionalRender ptr_glEndConditionalRender

foreign import CALLCONV "dynamic" dyn_glEndConditionalRender
  :: FunPtr (IO ())
  ->         IO ()

{-# NOINLINE ptr_glEndConditionalRender #-}
ptr_glEndConditionalRender :: FunPtr (IO ())
ptr_glEndConditionalRender = unsafePerformIO $ getCommand "glEndConditionalRender"

-- glEndConditionalRenderNV ----------------------------------------------------

glEndConditionalRenderNV
  :: IO ()
glEndConditionalRenderNV = dyn_glEndConditionalRenderNV ptr_glEndConditionalRenderNV

foreign import CALLCONV "dynamic" dyn_glEndConditionalRenderNV
  :: FunPtr (IO ())
  ->         IO ()

{-# NOINLINE ptr_glEndConditionalRenderNV #-}
ptr_glEndConditionalRenderNV :: FunPtr (IO ())
ptr_glEndConditionalRenderNV = unsafePerformIO $ getCommand "glEndConditionalRenderNV"

-- glEndConditionalRenderNVX ---------------------------------------------------

glEndConditionalRenderNVX
  :: IO ()
glEndConditionalRenderNVX = dyn_glEndConditionalRenderNVX ptr_glEndConditionalRenderNVX

foreign import CALLCONV "dynamic" dyn_glEndConditionalRenderNVX
  :: FunPtr (IO ())
  ->         IO ()

{-# NOINLINE ptr_glEndConditionalRenderNVX #-}
ptr_glEndConditionalRenderNVX :: FunPtr (IO ())
ptr_glEndConditionalRenderNVX = unsafePerformIO $ getCommand "glEndConditionalRenderNVX"

-- glEndFragmentShaderATI ------------------------------------------------------

glEndFragmentShaderATI
  :: IO ()
glEndFragmentShaderATI = dyn_glEndFragmentShaderATI ptr_glEndFragmentShaderATI

foreign import CALLCONV "dynamic" dyn_glEndFragmentShaderATI
  :: FunPtr (IO ())
  ->         IO ()

{-# NOINLINE ptr_glEndFragmentShaderATI #-}
ptr_glEndFragmentShaderATI :: FunPtr (IO ())
ptr_glEndFragmentShaderATI = unsafePerformIO $ getCommand "glEndFragmentShaderATI"

-- glEndList -------------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glNewList.xml OpenGL 2.x>
glEndList
  :: IO ()
glEndList = dyn_glEndList ptr_glEndList

foreign import CALLCONV "dynamic" dyn_glEndList
  :: FunPtr (IO ())
  ->         IO ()

{-# NOINLINE ptr_glEndList #-}
ptr_glEndList :: FunPtr (IO ())
ptr_glEndList = unsafePerformIO $ getCommand "glEndList"

-- glEndOcclusionQueryNV -------------------------------------------------------

glEndOcclusionQueryNV
  :: IO ()
glEndOcclusionQueryNV = dyn_glEndOcclusionQueryNV ptr_glEndOcclusionQueryNV

foreign import CALLCONV "dynamic" dyn_glEndOcclusionQueryNV
  :: FunPtr (IO ())
  ->         IO ()

{-# NOINLINE ptr_glEndOcclusionQueryNV #-}
ptr_glEndOcclusionQueryNV :: FunPtr (IO ())
ptr_glEndOcclusionQueryNV = unsafePerformIO $ getCommand "glEndOcclusionQueryNV"

-- glEndPerfMonitorAMD ---------------------------------------------------------

glEndPerfMonitorAMD
  :: GLuint -- ^ @monitor@.
  -> IO ()
glEndPerfMonitorAMD = dyn_glEndPerfMonitorAMD ptr_glEndPerfMonitorAMD

foreign import CALLCONV "dynamic" dyn_glEndPerfMonitorAMD
  :: FunPtr (GLuint -> IO ())
  ->         GLuint -> IO ()

{-# NOINLINE ptr_glEndPerfMonitorAMD #-}
ptr_glEndPerfMonitorAMD :: FunPtr (GLuint -> IO ())
ptr_glEndPerfMonitorAMD = unsafePerformIO $ getCommand "glEndPerfMonitorAMD"

-- glEndPerfQueryINTEL ---------------------------------------------------------

glEndPerfQueryINTEL
  :: GLuint -- ^ @queryHandle@.
  -> IO ()
glEndPerfQueryINTEL = dyn_glEndPerfQueryINTEL ptr_glEndPerfQueryINTEL

foreign import CALLCONV "dynamic" dyn_glEndPerfQueryINTEL
  :: FunPtr (GLuint -> IO ())
  ->         GLuint -> IO ()

{-# NOINLINE ptr_glEndPerfQueryINTEL #-}
ptr_glEndPerfQueryINTEL :: FunPtr (GLuint -> IO ())
ptr_glEndPerfQueryINTEL = unsafePerformIO $ getCommand "glEndPerfQueryINTEL"

-- glEndQuery ------------------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glBeginQuery.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glBeginQuery.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glBeginQuery.xhtml OpenGL 4.x>
glEndQuery
  :: GLenum -- ^ @target@.
  -> IO ()
glEndQuery = dyn_glEndQuery ptr_glEndQuery

foreign import CALLCONV "dynamic" dyn_glEndQuery
  :: FunPtr (GLenum -> IO ())
  ->         GLenum -> IO ()

{-# NOINLINE ptr_glEndQuery #-}
ptr_glEndQuery :: FunPtr (GLenum -> IO ())
ptr_glEndQuery = unsafePerformIO $ getCommand "glEndQuery"

-- glEndQueryARB ---------------------------------------------------------------

glEndQueryARB
  :: GLenum -- ^ @target@.
  -> IO ()
glEndQueryARB = dyn_glEndQueryARB ptr_glEndQueryARB

foreign import CALLCONV "dynamic" dyn_glEndQueryARB
  :: FunPtr (GLenum -> IO ())
  ->         GLenum -> IO ()

{-# NOINLINE ptr_glEndQueryARB #-}
ptr_glEndQueryARB :: FunPtr (GLenum -> IO ())
ptr_glEndQueryARB = unsafePerformIO $ getCommand "glEndQueryARB"

-- glEndQueryEXT ---------------------------------------------------------------

glEndQueryEXT
  :: GLenum -- ^ @target@.
  -> IO ()
glEndQueryEXT = dyn_glEndQueryEXT ptr_glEndQueryEXT

foreign import CALLCONV "dynamic" dyn_glEndQueryEXT
  :: FunPtr (GLenum -> IO ())
  ->         GLenum -> IO ()

{-# NOINLINE ptr_glEndQueryEXT #-}
ptr_glEndQueryEXT :: FunPtr (GLenum -> IO ())
ptr_glEndQueryEXT = unsafePerformIO $ getCommand "glEndQueryEXT"

-- glEndQueryIndexed -----------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glBeginQueryIndexed.xhtml OpenGL 4.x>
glEndQueryIndexed
  :: GLenum -- ^ @target@.
  -> GLuint -- ^ @index@.
  -> IO ()
glEndQueryIndexed = dyn_glEndQueryIndexed ptr_glEndQueryIndexed

foreign import CALLCONV "dynamic" dyn_glEndQueryIndexed
  :: FunPtr (GLenum -> GLuint -> IO ())
  ->         GLenum -> GLuint -> IO ()

{-# NOINLINE ptr_glEndQueryIndexed #-}
ptr_glEndQueryIndexed :: FunPtr (GLenum -> GLuint -> IO ())
ptr_glEndQueryIndexed = unsafePerformIO $ getCommand "glEndQueryIndexed"

-- glEndTilingQCOM -------------------------------------------------------------

glEndTilingQCOM
  :: GLbitfield -- ^ @preserveMask@.
  -> IO ()
glEndTilingQCOM = dyn_glEndTilingQCOM ptr_glEndTilingQCOM

foreign import CALLCONV "dynamic" dyn_glEndTilingQCOM
  :: FunPtr (GLbitfield -> IO ())
  ->         GLbitfield -> IO ()

{-# NOINLINE ptr_glEndTilingQCOM #-}
ptr_glEndTilingQCOM :: FunPtr (GLbitfield -> IO ())
ptr_glEndTilingQCOM = unsafePerformIO $ getCommand "glEndTilingQCOM"

-- glEndTransformFeedback ------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glBeginTransformFeedback.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glBeginTransformFeedback.xhtml OpenGL 4.x>
glEndTransformFeedback
  :: IO ()
glEndTransformFeedback = dyn_glEndTransformFeedback ptr_glEndTransformFeedback

foreign import CALLCONV "dynamic" dyn_glEndTransformFeedback
  :: FunPtr (IO ())
  ->         IO ()

{-# NOINLINE ptr_glEndTransformFeedback #-}
ptr_glEndTransformFeedback :: FunPtr (IO ())
ptr_glEndTransformFeedback = unsafePerformIO $ getCommand "glEndTransformFeedback"

-- glEndTransformFeedbackEXT ---------------------------------------------------

glEndTransformFeedbackEXT
  :: IO ()
glEndTransformFeedbackEXT = dyn_glEndTransformFeedbackEXT ptr_glEndTransformFeedbackEXT

foreign import CALLCONV "dynamic" dyn_glEndTransformFeedbackEXT
  :: FunPtr (IO ())
  ->         IO ()

{-# NOINLINE ptr_glEndTransformFeedbackEXT #-}
ptr_glEndTransformFeedbackEXT :: FunPtr (IO ())
ptr_glEndTransformFeedbackEXT = unsafePerformIO $ getCommand "glEndTransformFeedbackEXT"

-- glEndTransformFeedbackNV ----------------------------------------------------

glEndTransformFeedbackNV
  :: IO ()
glEndTransformFeedbackNV = dyn_glEndTransformFeedbackNV ptr_glEndTransformFeedbackNV

foreign import CALLCONV "dynamic" dyn_glEndTransformFeedbackNV
  :: FunPtr (IO ())
  ->         IO ()

{-# NOINLINE ptr_glEndTransformFeedbackNV #-}
ptr_glEndTransformFeedbackNV :: FunPtr (IO ())
ptr_glEndTransformFeedbackNV = unsafePerformIO $ getCommand "glEndTransformFeedbackNV"

-- glEndVertexShaderEXT --------------------------------------------------------

glEndVertexShaderEXT
  :: IO ()
glEndVertexShaderEXT = dyn_glEndVertexShaderEXT ptr_glEndVertexShaderEXT

foreign import CALLCONV "dynamic" dyn_glEndVertexShaderEXT
  :: FunPtr (IO ())
  ->         IO ()

{-# NOINLINE ptr_glEndVertexShaderEXT #-}
ptr_glEndVertexShaderEXT :: FunPtr (IO ())
ptr_glEndVertexShaderEXT = unsafePerformIO $ getCommand "glEndVertexShaderEXT"

-- glEndVideoCaptureNV ---------------------------------------------------------

glEndVideoCaptureNV
  :: GLuint -- ^ @video_capture_slot@.
  -> IO ()
glEndVideoCaptureNV = dyn_glEndVideoCaptureNV ptr_glEndVideoCaptureNV

foreign import CALLCONV "dynamic" dyn_glEndVideoCaptureNV
  :: FunPtr (GLuint -> IO ())
  ->         GLuint -> IO ()

{-# NOINLINE ptr_glEndVideoCaptureNV #-}
ptr_glEndVideoCaptureNV :: FunPtr (GLuint -> IO ())
ptr_glEndVideoCaptureNV = unsafePerformIO $ getCommand "glEndVideoCaptureNV"

-- glEvalCoord1d ---------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glEvalCoord.xml OpenGL 2.x>
glEvalCoord1d
  :: GLdouble -- ^ @u@ of type @CoordD@.
  -> IO ()
glEvalCoord1d = dyn_glEvalCoord1d ptr_glEvalCoord1d

foreign import CALLCONV "dynamic" dyn_glEvalCoord1d
  :: FunPtr (GLdouble -> IO ())
  ->         GLdouble -> IO ()

{-# NOINLINE ptr_glEvalCoord1d #-}
ptr_glEvalCoord1d :: FunPtr (GLdouble -> IO ())
ptr_glEvalCoord1d = unsafePerformIO $ getCommand "glEvalCoord1d"

-- glEvalCoord1dv --------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glEvalCoord.xml OpenGL 2.x>
glEvalCoord1dv
  :: Ptr GLdouble -- ^ @u@ pointing to @1@ elements of type @CoordD@.
  -> IO ()
glEvalCoord1dv = dyn_glEvalCoord1dv ptr_glEvalCoord1dv

foreign import CALLCONV "dynamic" dyn_glEvalCoord1dv
  :: FunPtr (Ptr GLdouble -> IO ())
  ->         Ptr GLdouble -> IO ()

{-# NOINLINE ptr_glEvalCoord1dv #-}
ptr_glEvalCoord1dv :: FunPtr (Ptr GLdouble -> IO ())
ptr_glEvalCoord1dv = unsafePerformIO $ getCommand "glEvalCoord1dv"

-- glEvalCoord1f ---------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glEvalCoord.xml OpenGL 2.x>
glEvalCoord1f
  :: GLfloat -- ^ @u@ of type @CoordF@.
  -> IO ()
glEvalCoord1f = dyn_glEvalCoord1f ptr_glEvalCoord1f

foreign import CALLCONV "dynamic" dyn_glEvalCoord1f
  :: FunPtr (GLfloat -> IO ())
  ->         GLfloat -> IO ()

{-# NOINLINE ptr_glEvalCoord1f #-}
ptr_glEvalCoord1f :: FunPtr (GLfloat -> IO ())
ptr_glEvalCoord1f = unsafePerformIO $ getCommand "glEvalCoord1f"

-- glEvalCoord1fv --------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glEvalCoord.xml OpenGL 2.x>
glEvalCoord1fv
  :: Ptr GLfloat -- ^ @u@ pointing to @1@ elements of type @CoordF@.
  -> IO ()
glEvalCoord1fv = dyn_glEvalCoord1fv ptr_glEvalCoord1fv

foreign import CALLCONV "dynamic" dyn_glEvalCoord1fv
  :: FunPtr (Ptr GLfloat -> IO ())
  ->         Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glEvalCoord1fv #-}
ptr_glEvalCoord1fv :: FunPtr (Ptr GLfloat -> IO ())
ptr_glEvalCoord1fv = unsafePerformIO $ getCommand "glEvalCoord1fv"

-- glEvalCoord1xOES ------------------------------------------------------------

glEvalCoord1xOES
  :: GLfixed -- ^ @u@.
  -> IO ()
glEvalCoord1xOES = dyn_glEvalCoord1xOES ptr_glEvalCoord1xOES

foreign import CALLCONV "dynamic" dyn_glEvalCoord1xOES
  :: FunPtr (GLfixed -> IO ())
  ->         GLfixed -> IO ()

{-# NOINLINE ptr_glEvalCoord1xOES #-}
ptr_glEvalCoord1xOES :: FunPtr (GLfixed -> IO ())
ptr_glEvalCoord1xOES = unsafePerformIO $ getCommand "glEvalCoord1xOES"

-- glEvalCoord1xvOES -----------------------------------------------------------

glEvalCoord1xvOES
  :: Ptr GLfixed -- ^ @coords@ pointing to @1@ elements of type @GLfixed@.
  -> IO ()
glEvalCoord1xvOES = dyn_glEvalCoord1xvOES ptr_glEvalCoord1xvOES

foreign import CALLCONV "dynamic" dyn_glEvalCoord1xvOES
  :: FunPtr (Ptr GLfixed -> IO ())
  ->         Ptr GLfixed -> IO ()

{-# NOINLINE ptr_glEvalCoord1xvOES #-}
ptr_glEvalCoord1xvOES :: FunPtr (Ptr GLfixed -> IO ())
ptr_glEvalCoord1xvOES = unsafePerformIO $ getCommand "glEvalCoord1xvOES"

-- glEvalCoord2d ---------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glEvalCoord.xml OpenGL 2.x>
glEvalCoord2d
  :: GLdouble -- ^ @u@ of type @CoordD@.
  -> GLdouble -- ^ @v@ of type @CoordD@.
  -> IO ()
glEvalCoord2d = dyn_glEvalCoord2d ptr_glEvalCoord2d

foreign import CALLCONV "dynamic" dyn_glEvalCoord2d
  :: FunPtr (GLdouble -> GLdouble -> IO ())
  ->         GLdouble -> GLdouble -> IO ()

{-# NOINLINE ptr_glEvalCoord2d #-}
ptr_glEvalCoord2d :: FunPtr (GLdouble -> GLdouble -> IO ())
ptr_glEvalCoord2d = unsafePerformIO $ getCommand "glEvalCoord2d"

-- glEvalCoord2dv --------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glEvalCoord.xml OpenGL 2.x>
glEvalCoord2dv
  :: Ptr GLdouble -- ^ @u@ pointing to @2@ elements of type @CoordD@.
  -> IO ()
glEvalCoord2dv = dyn_glEvalCoord2dv ptr_glEvalCoord2dv

foreign import CALLCONV "dynamic" dyn_glEvalCoord2dv
  :: FunPtr (Ptr GLdouble -> IO ())
  ->         Ptr GLdouble -> IO ()

{-# NOINLINE ptr_glEvalCoord2dv #-}
ptr_glEvalCoord2dv :: FunPtr (Ptr GLdouble -> IO ())
ptr_glEvalCoord2dv = unsafePerformIO $ getCommand "glEvalCoord2dv"

-- glEvalCoord2f ---------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glEvalCoord.xml OpenGL 2.x>
glEvalCoord2f
  :: GLfloat -- ^ @u@ of type @CoordF@.
  -> GLfloat -- ^ @v@ of type @CoordF@.
  -> IO ()
glEvalCoord2f = dyn_glEvalCoord2f ptr_glEvalCoord2f

foreign import CALLCONV "dynamic" dyn_glEvalCoord2f
  :: FunPtr (GLfloat -> GLfloat -> IO ())
  ->         GLfloat -> GLfloat -> IO ()

{-# NOINLINE ptr_glEvalCoord2f #-}
ptr_glEvalCoord2f :: FunPtr (GLfloat -> GLfloat -> IO ())
ptr_glEvalCoord2f = unsafePerformIO $ getCommand "glEvalCoord2f"

-- glEvalCoord2fv --------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glEvalCoord.xml OpenGL 2.x>
glEvalCoord2fv
  :: Ptr GLfloat -- ^ @u@ pointing to @2@ elements of type @CoordF@.
  -> IO ()
glEvalCoord2fv = dyn_glEvalCoord2fv ptr_glEvalCoord2fv

foreign import CALLCONV "dynamic" dyn_glEvalCoord2fv
  :: FunPtr (Ptr GLfloat -> IO ())
  ->         Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glEvalCoord2fv #-}
ptr_glEvalCoord2fv :: FunPtr (Ptr GLfloat -> IO ())
ptr_glEvalCoord2fv = unsafePerformIO $ getCommand "glEvalCoord2fv"

-- glEvalCoord2xOES ------------------------------------------------------------

glEvalCoord2xOES
  :: GLfixed -- ^ @u@.
  -> GLfixed -- ^ @v@.
  -> IO ()
glEvalCoord2xOES = dyn_glEvalCoord2xOES ptr_glEvalCoord2xOES

foreign import CALLCONV "dynamic" dyn_glEvalCoord2xOES
  :: FunPtr (GLfixed -> GLfixed -> IO ())
  ->         GLfixed -> GLfixed -> IO ()

{-# NOINLINE ptr_glEvalCoord2xOES #-}
ptr_glEvalCoord2xOES :: FunPtr (GLfixed -> GLfixed -> IO ())
ptr_glEvalCoord2xOES = unsafePerformIO $ getCommand "glEvalCoord2xOES"

-- glEvalCoord2xvOES -----------------------------------------------------------

glEvalCoord2xvOES
  :: Ptr GLfixed -- ^ @coords@ pointing to @2@ elements of type @GLfixed@.
  -> IO ()
glEvalCoord2xvOES = dyn_glEvalCoord2xvOES ptr_glEvalCoord2xvOES

foreign import CALLCONV "dynamic" dyn_glEvalCoord2xvOES
  :: FunPtr (Ptr GLfixed -> IO ())
  ->         Ptr GLfixed -> IO ()

{-# NOINLINE ptr_glEvalCoord2xvOES #-}
ptr_glEvalCoord2xvOES :: FunPtr (Ptr GLfixed -> IO ())
ptr_glEvalCoord2xvOES = unsafePerformIO $ getCommand "glEvalCoord2xvOES"

-- glEvalMapsNV ----------------------------------------------------------------

glEvalMapsNV
  :: GLenum -- ^ @target@ of type @EvalTargetNV@.
  -> GLenum -- ^ @mode@ of type @EvalMapsModeNV@.
  -> IO ()
glEvalMapsNV = dyn_glEvalMapsNV ptr_glEvalMapsNV

foreign import CALLCONV "dynamic" dyn_glEvalMapsNV
  :: FunPtr (GLenum -> GLenum -> IO ())
  ->         GLenum -> GLenum -> IO ()

{-# NOINLINE ptr_glEvalMapsNV #-}
ptr_glEvalMapsNV :: FunPtr (GLenum -> GLenum -> IO ())
ptr_glEvalMapsNV = unsafePerformIO $ getCommand "glEvalMapsNV"

-- glEvalMesh1 -----------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glEvalMesh.xml OpenGL 2.x>
glEvalMesh1
  :: GLenum -- ^ @mode@ of type @MeshMode1@.
  -> GLint -- ^ @i1@ of type @CheckedInt32@.
  -> GLint -- ^ @i2@ of type @CheckedInt32@.
  -> IO ()
glEvalMesh1 = dyn_glEvalMesh1 ptr_glEvalMesh1

foreign import CALLCONV "dynamic" dyn_glEvalMesh1
  :: FunPtr (GLenum -> GLint -> GLint -> IO ())
  ->         GLenum -> GLint -> GLint -> IO ()

{-# NOINLINE ptr_glEvalMesh1 #-}
ptr_glEvalMesh1 :: FunPtr (GLenum -> GLint -> GLint -> IO ())
ptr_glEvalMesh1 = unsafePerformIO $ getCommand "glEvalMesh1"

-- glEvalMesh2 -----------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glEvalMesh.xml OpenGL 2.x>
glEvalMesh2
  :: GLenum -- ^ @mode@ of type @MeshMode2@.
  -> GLint -- ^ @i1@ of type @CheckedInt32@.
  -> GLint -- ^ @i2@ of type @CheckedInt32@.
  -> GLint -- ^ @j1@ of type @CheckedInt32@.
  -> GLint -- ^ @j2@ of type @CheckedInt32@.
  -> IO ()
glEvalMesh2 = dyn_glEvalMesh2 ptr_glEvalMesh2

foreign import CALLCONV "dynamic" dyn_glEvalMesh2
  :: FunPtr (GLenum -> GLint -> GLint -> GLint -> GLint -> IO ())
  ->         GLenum -> GLint -> GLint -> GLint -> GLint -> IO ()

{-# NOINLINE ptr_glEvalMesh2 #-}
ptr_glEvalMesh2 :: FunPtr (GLenum -> GLint -> GLint -> GLint -> GLint -> IO ())
ptr_glEvalMesh2 = unsafePerformIO $ getCommand "glEvalMesh2"

-- glEvalPoint1 ----------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glEvalPoint.xml OpenGL 2.x>
glEvalPoint1
  :: GLint -- ^ @i@.
  -> IO ()
glEvalPoint1 = dyn_glEvalPoint1 ptr_glEvalPoint1

foreign import CALLCONV "dynamic" dyn_glEvalPoint1
  :: FunPtr (GLint -> IO ())
  ->         GLint -> IO ()

{-# NOINLINE ptr_glEvalPoint1 #-}
ptr_glEvalPoint1 :: FunPtr (GLint -> IO ())
ptr_glEvalPoint1 = unsafePerformIO $ getCommand "glEvalPoint1"

-- glEvalPoint2 ----------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glEvalPoint.xml OpenGL 2.x>
glEvalPoint2
  :: GLint -- ^ @i@ of type @CheckedInt32@.
  -> GLint -- ^ @j@ of type @CheckedInt32@.
  -> IO ()
glEvalPoint2 = dyn_glEvalPoint2 ptr_glEvalPoint2

foreign import CALLCONV "dynamic" dyn_glEvalPoint2
  :: FunPtr (GLint -> GLint -> IO ())
  ->         GLint -> GLint -> IO ()

{-# NOINLINE ptr_glEvalPoint2 #-}
ptr_glEvalPoint2 :: FunPtr (GLint -> GLint -> IO ())
ptr_glEvalPoint2 = unsafePerformIO $ getCommand "glEvalPoint2"

-- glExecuteProgramNV ----------------------------------------------------------

glExecuteProgramNV
  :: GLenum -- ^ @target@ of type @VertexAttribEnumNV@.
  -> GLuint -- ^ @id@.
  -> Ptr GLfloat -- ^ @params@ pointing to @4@ elements of type @GLfloat@.
  -> IO ()
glExecuteProgramNV = dyn_glExecuteProgramNV ptr_glExecuteProgramNV

foreign import CALLCONV "dynamic" dyn_glExecuteProgramNV
  :: FunPtr (GLenum -> GLuint -> Ptr GLfloat -> IO ())
  ->         GLenum -> GLuint -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glExecuteProgramNV #-}
ptr_glExecuteProgramNV :: FunPtr (GLenum -> GLuint -> Ptr GLfloat -> IO ())
ptr_glExecuteProgramNV = unsafePerformIO $ getCommand "glExecuteProgramNV"

-- glExtGetBufferPointervQCOM --------------------------------------------------

glExtGetBufferPointervQCOM
  :: GLenum -- ^ @target@.
  -> Ptr (Ptr a) -- ^ @params@.
  -> IO ()
glExtGetBufferPointervQCOM = dyn_glExtGetBufferPointervQCOM ptr_glExtGetBufferPointervQCOM

foreign import CALLCONV "dynamic" dyn_glExtGetBufferPointervQCOM
  :: FunPtr (GLenum -> Ptr (Ptr a) -> IO ())
  ->         GLenum -> Ptr (Ptr a) -> IO ()

{-# NOINLINE ptr_glExtGetBufferPointervQCOM #-}
ptr_glExtGetBufferPointervQCOM :: FunPtr (GLenum -> Ptr (Ptr a) -> IO ())
ptr_glExtGetBufferPointervQCOM = unsafePerformIO $ getCommand "glExtGetBufferPointervQCOM"

-- glExtGetBuffersQCOM ---------------------------------------------------------

glExtGetBuffersQCOM
  :: Ptr GLuint -- ^ @buffers@ pointing to @maxBuffers@ elements of type @GLuint@.
  -> GLint -- ^ @maxBuffers@.
  -> Ptr GLint -- ^ @numBuffers@ pointing to @1@ elements of type @GLint@.
  -> IO ()
glExtGetBuffersQCOM = dyn_glExtGetBuffersQCOM ptr_glExtGetBuffersQCOM

foreign import CALLCONV "dynamic" dyn_glExtGetBuffersQCOM
  :: FunPtr (Ptr GLuint -> GLint -> Ptr GLint -> IO ())
  ->         Ptr GLuint -> GLint -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glExtGetBuffersQCOM #-}
ptr_glExtGetBuffersQCOM :: FunPtr (Ptr GLuint -> GLint -> Ptr GLint -> IO ())
ptr_glExtGetBuffersQCOM = unsafePerformIO $ getCommand "glExtGetBuffersQCOM"

-- glExtGetFramebuffersQCOM ----------------------------------------------------

glExtGetFramebuffersQCOM
  :: Ptr GLuint -- ^ @framebuffers@ pointing to @maxFramebuffers@ elements of type @GLuint@.
  -> GLint -- ^ @maxFramebuffers@.
  -> Ptr GLint -- ^ @numFramebuffers@ pointing to @1@ elements of type @GLint@.
  -> IO ()
glExtGetFramebuffersQCOM = dyn_glExtGetFramebuffersQCOM ptr_glExtGetFramebuffersQCOM

foreign import CALLCONV "dynamic" dyn_glExtGetFramebuffersQCOM
  :: FunPtr (Ptr GLuint -> GLint -> Ptr GLint -> IO ())
  ->         Ptr GLuint -> GLint -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glExtGetFramebuffersQCOM #-}
ptr_glExtGetFramebuffersQCOM :: FunPtr (Ptr GLuint -> GLint -> Ptr GLint -> IO ())
ptr_glExtGetFramebuffersQCOM = unsafePerformIO $ getCommand "glExtGetFramebuffersQCOM"

-- glExtGetProgramBinarySourceQCOM ---------------------------------------------

glExtGetProgramBinarySourceQCOM
  :: GLuint -- ^ @program@.
  -> GLenum -- ^ @shadertype@.
  -> Ptr GLchar -- ^ @source@.
  -> Ptr GLint -- ^ @length@.
  -> IO ()
glExtGetProgramBinarySourceQCOM = dyn_glExtGetProgramBinarySourceQCOM ptr_glExtGetProgramBinarySourceQCOM

foreign import CALLCONV "dynamic" dyn_glExtGetProgramBinarySourceQCOM
  :: FunPtr (GLuint -> GLenum -> Ptr GLchar -> Ptr GLint -> IO ())
  ->         GLuint -> GLenum -> Ptr GLchar -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glExtGetProgramBinarySourceQCOM #-}
ptr_glExtGetProgramBinarySourceQCOM :: FunPtr (GLuint -> GLenum -> Ptr GLchar -> Ptr GLint -> IO ())
ptr_glExtGetProgramBinarySourceQCOM = unsafePerformIO $ getCommand "glExtGetProgramBinarySourceQCOM"

-- glExtGetProgramsQCOM --------------------------------------------------------

glExtGetProgramsQCOM
  :: Ptr GLuint -- ^ @programs@ pointing to @maxPrograms@ elements of type @GLuint@.
  -> GLint -- ^ @maxPrograms@.
  -> Ptr GLint -- ^ @numPrograms@ pointing to @1@ elements of type @GLint@.
  -> IO ()
glExtGetProgramsQCOM = dyn_glExtGetProgramsQCOM ptr_glExtGetProgramsQCOM

foreign import CALLCONV "dynamic" dyn_glExtGetProgramsQCOM
  :: FunPtr (Ptr GLuint -> GLint -> Ptr GLint -> IO ())
  ->         Ptr GLuint -> GLint -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glExtGetProgramsQCOM #-}
ptr_glExtGetProgramsQCOM :: FunPtr (Ptr GLuint -> GLint -> Ptr GLint -> IO ())
ptr_glExtGetProgramsQCOM = unsafePerformIO $ getCommand "glExtGetProgramsQCOM"

-- glExtGetRenderbuffersQCOM ---------------------------------------------------

glExtGetRenderbuffersQCOM
  :: Ptr GLuint -- ^ @renderbuffers@ pointing to @maxRenderbuffers@ elements of type @GLuint@.
  -> GLint -- ^ @maxRenderbuffers@.
  -> Ptr GLint -- ^ @numRenderbuffers@ pointing to @1@ elements of type @GLint@.
  -> IO ()
glExtGetRenderbuffersQCOM = dyn_glExtGetRenderbuffersQCOM ptr_glExtGetRenderbuffersQCOM

foreign import CALLCONV "dynamic" dyn_glExtGetRenderbuffersQCOM
  :: FunPtr (Ptr GLuint -> GLint -> Ptr GLint -> IO ())
  ->         Ptr GLuint -> GLint -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glExtGetRenderbuffersQCOM #-}
ptr_glExtGetRenderbuffersQCOM :: FunPtr (Ptr GLuint -> GLint -> Ptr GLint -> IO ())
ptr_glExtGetRenderbuffersQCOM = unsafePerformIO $ getCommand "glExtGetRenderbuffersQCOM"

-- glExtGetShadersQCOM ---------------------------------------------------------

glExtGetShadersQCOM
  :: Ptr GLuint -- ^ @shaders@ pointing to @maxShaders@ elements of type @GLuint@.
  -> GLint -- ^ @maxShaders@.
  -> Ptr GLint -- ^ @numShaders@ pointing to @1@ elements of type @GLint@.
  -> IO ()
glExtGetShadersQCOM = dyn_glExtGetShadersQCOM ptr_glExtGetShadersQCOM

foreign import CALLCONV "dynamic" dyn_glExtGetShadersQCOM
  :: FunPtr (Ptr GLuint -> GLint -> Ptr GLint -> IO ())
  ->         Ptr GLuint -> GLint -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glExtGetShadersQCOM #-}
ptr_glExtGetShadersQCOM :: FunPtr (Ptr GLuint -> GLint -> Ptr GLint -> IO ())
ptr_glExtGetShadersQCOM = unsafePerformIO $ getCommand "glExtGetShadersQCOM"

-- glExtGetTexLevelParameterivQCOM ---------------------------------------------

glExtGetTexLevelParameterivQCOM
  :: GLuint -- ^ @texture@.
  -> GLenum -- ^ @face@.
  -> GLint -- ^ @level@.
  -> GLenum -- ^ @pname@.
  -> Ptr GLint -- ^ @params@.
  -> IO ()
glExtGetTexLevelParameterivQCOM = dyn_glExtGetTexLevelParameterivQCOM ptr_glExtGetTexLevelParameterivQCOM

foreign import CALLCONV "dynamic" dyn_glExtGetTexLevelParameterivQCOM
  :: FunPtr (GLuint -> GLenum -> GLint -> GLenum -> Ptr GLint -> IO ())
  ->         GLuint -> GLenum -> GLint -> GLenum -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glExtGetTexLevelParameterivQCOM #-}
ptr_glExtGetTexLevelParameterivQCOM :: FunPtr (GLuint -> GLenum -> GLint -> GLenum -> Ptr GLint -> IO ())
ptr_glExtGetTexLevelParameterivQCOM = unsafePerformIO $ getCommand "glExtGetTexLevelParameterivQCOM"

-- glExtGetTexSubImageQCOM -----------------------------------------------------

glExtGetTexSubImageQCOM
  :: GLenum -- ^ @target@.
  -> GLint -- ^ @level@.
  -> GLint -- ^ @xoffset@.
  -> GLint -- ^ @yoffset@.
  -> GLint -- ^ @zoffset@.
  -> GLsizei -- ^ @width@.
  -> GLsizei -- ^ @height@.
  -> GLsizei -- ^ @depth@.
  -> GLenum -- ^ @format@.
  -> GLenum -- ^ @type@.
  -> Ptr a -- ^ @texels@.
  -> IO ()
glExtGetTexSubImageQCOM = dyn_glExtGetTexSubImageQCOM ptr_glExtGetTexSubImageQCOM

foreign import CALLCONV "dynamic" dyn_glExtGetTexSubImageQCOM
  :: FunPtr (GLenum -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO ())
  ->         GLenum -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO ()

{-# NOINLINE ptr_glExtGetTexSubImageQCOM #-}
ptr_glExtGetTexSubImageQCOM :: FunPtr (GLenum -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO ())
ptr_glExtGetTexSubImageQCOM = unsafePerformIO $ getCommand "glExtGetTexSubImageQCOM"

-- glExtGetTexturesQCOM --------------------------------------------------------

glExtGetTexturesQCOM
  :: Ptr GLuint -- ^ @textures@.
  -> GLint -- ^ @maxTextures@.
  -> Ptr GLint -- ^ @numTextures@.
  -> IO ()
glExtGetTexturesQCOM = dyn_glExtGetTexturesQCOM ptr_glExtGetTexturesQCOM

foreign import CALLCONV "dynamic" dyn_glExtGetTexturesQCOM
  :: FunPtr (Ptr GLuint -> GLint -> Ptr GLint -> IO ())
  ->         Ptr GLuint -> GLint -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glExtGetTexturesQCOM #-}
ptr_glExtGetTexturesQCOM :: FunPtr (Ptr GLuint -> GLint -> Ptr GLint -> IO ())
ptr_glExtGetTexturesQCOM = unsafePerformIO $ getCommand "glExtGetTexturesQCOM"

-- glExtIsProgramBinaryQCOM ----------------------------------------------------

glExtIsProgramBinaryQCOM
  :: GLuint -- ^ @program@.
  -> IO GLboolean
glExtIsProgramBinaryQCOM = dyn_glExtIsProgramBinaryQCOM ptr_glExtIsProgramBinaryQCOM

foreign import CALLCONV "dynamic" dyn_glExtIsProgramBinaryQCOM
  :: FunPtr (GLuint -> IO GLboolean)
  ->         GLuint -> IO GLboolean

{-# NOINLINE ptr_glExtIsProgramBinaryQCOM #-}
ptr_glExtIsProgramBinaryQCOM :: FunPtr (GLuint -> IO GLboolean)
ptr_glExtIsProgramBinaryQCOM = unsafePerformIO $ getCommand "glExtIsProgramBinaryQCOM"

-- glExtTexObjectStateOverrideiQCOM --------------------------------------------

glExtTexObjectStateOverrideiQCOM
  :: GLenum -- ^ @target@.
  -> GLenum -- ^ @pname@.
  -> GLint -- ^ @param@.
  -> IO ()
glExtTexObjectStateOverrideiQCOM = dyn_glExtTexObjectStateOverrideiQCOM ptr_glExtTexObjectStateOverrideiQCOM

foreign import CALLCONV "dynamic" dyn_glExtTexObjectStateOverrideiQCOM
  :: FunPtr (GLenum -> GLenum -> GLint -> IO ())
  ->         GLenum -> GLenum -> GLint -> IO ()

{-# NOINLINE ptr_glExtTexObjectStateOverrideiQCOM #-}
ptr_glExtTexObjectStateOverrideiQCOM :: FunPtr (GLenum -> GLenum -> GLint -> IO ())
ptr_glExtTexObjectStateOverrideiQCOM = unsafePerformIO $ getCommand "glExtTexObjectStateOverrideiQCOM"

-- glExtractComponentEXT -------------------------------------------------------

glExtractComponentEXT
  :: GLuint -- ^ @res@.
  -> GLuint -- ^ @src@.
  -> GLuint -- ^ @num@.
  -> IO ()
glExtractComponentEXT = dyn_glExtractComponentEXT ptr_glExtractComponentEXT

foreign import CALLCONV "dynamic" dyn_glExtractComponentEXT
  :: FunPtr (GLuint -> GLuint -> GLuint -> IO ())
  ->         GLuint -> GLuint -> GLuint -> IO ()

{-# NOINLINE ptr_glExtractComponentEXT #-}
ptr_glExtractComponentEXT :: FunPtr (GLuint -> GLuint -> GLuint -> IO ())
ptr_glExtractComponentEXT = unsafePerformIO $ getCommand "glExtractComponentEXT"

-- glFeedbackBuffer ------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glFeedbackBuffer.xml OpenGL 2.x>
glFeedbackBuffer
  :: GLsizei -- ^ @size@.
  -> GLenum -- ^ @type@ of type @FeedbackType@.
  -> Ptr GLfloat -- ^ @buffer@ pointing to @size@ elements of type @FeedbackElement@.
  -> IO ()
glFeedbackBuffer = dyn_glFeedbackBuffer ptr_glFeedbackBuffer

foreign import CALLCONV "dynamic" dyn_glFeedbackBuffer
  :: FunPtr (GLsizei -> GLenum -> Ptr GLfloat -> IO ())
  ->         GLsizei -> GLenum -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glFeedbackBuffer #-}
ptr_glFeedbackBuffer :: FunPtr (GLsizei -> GLenum -> Ptr GLfloat -> IO ())
ptr_glFeedbackBuffer = unsafePerformIO $ getCommand "glFeedbackBuffer"

-- glFeedbackBufferxOES --------------------------------------------------------

glFeedbackBufferxOES
  :: GLsizei -- ^ @n@.
  -> GLenum -- ^ @type@.
  -> Ptr GLfixed -- ^ @buffer@ pointing to @n@ elements of type @GLfixed@.
  -> IO ()
glFeedbackBufferxOES = dyn_glFeedbackBufferxOES ptr_glFeedbackBufferxOES

foreign import CALLCONV "dynamic" dyn_glFeedbackBufferxOES
  :: FunPtr (GLsizei -> GLenum -> Ptr GLfixed -> IO ())
  ->         GLsizei -> GLenum -> Ptr GLfixed -> IO ()

{-# NOINLINE ptr_glFeedbackBufferxOES #-}
ptr_glFeedbackBufferxOES :: FunPtr (GLsizei -> GLenum -> Ptr GLfixed -> IO ())
ptr_glFeedbackBufferxOES = unsafePerformIO $ getCommand "glFeedbackBufferxOES"

-- glFenceSync -----------------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glFenceSync.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glFenceSync.xhtml OpenGL 4.x>
glFenceSync
  :: GLenum -- ^ @condition@.
  -> GLbitfield -- ^ @flags@.
  -> IO GLsync -- ^ of type @sync@.
glFenceSync = dyn_glFenceSync ptr_glFenceSync

foreign import CALLCONV "dynamic" dyn_glFenceSync
  :: FunPtr (GLenum -> GLbitfield -> IO GLsync)
  ->         GLenum -> GLbitfield -> IO GLsync

{-# NOINLINE ptr_glFenceSync #-}
ptr_glFenceSync :: FunPtr (GLenum -> GLbitfield -> IO GLsync)
ptr_glFenceSync = unsafePerformIO $ getCommand "glFenceSync"

-- glFenceSyncAPPLE ------------------------------------------------------------

glFenceSyncAPPLE
  :: GLenum -- ^ @condition@.
  -> GLbitfield -- ^ @flags@.
  -> IO GLsync
glFenceSyncAPPLE = dyn_glFenceSyncAPPLE ptr_glFenceSyncAPPLE

foreign import CALLCONV "dynamic" dyn_glFenceSyncAPPLE
  :: FunPtr (GLenum -> GLbitfield -> IO GLsync)
  ->         GLenum -> GLbitfield -> IO GLsync

{-# NOINLINE ptr_glFenceSyncAPPLE #-}
ptr_glFenceSyncAPPLE :: FunPtr (GLenum -> GLbitfield -> IO GLsync)
ptr_glFenceSyncAPPLE = unsafePerformIO $ getCommand "glFenceSyncAPPLE"

-- glFinalCombinerInputNV ------------------------------------------------------

glFinalCombinerInputNV
  :: GLenum -- ^ @variable@ of type @CombinerVariableNV@.
  -> GLenum -- ^ @input@ of type @CombinerRegisterNV@.
  -> GLenum -- ^ @mapping@ of type @CombinerMappingNV@.
  -> GLenum -- ^ @componentUsage@ of type @CombinerComponentUsageNV@.
  -> IO ()
glFinalCombinerInputNV = dyn_glFinalCombinerInputNV ptr_glFinalCombinerInputNV

foreign import CALLCONV "dynamic" dyn_glFinalCombinerInputNV
  :: FunPtr (GLenum -> GLenum -> GLenum -> GLenum -> IO ())
  ->         GLenum -> GLenum -> GLenum -> GLenum -> IO ()

{-# NOINLINE ptr_glFinalCombinerInputNV #-}
ptr_glFinalCombinerInputNV :: FunPtr (GLenum -> GLenum -> GLenum -> GLenum -> IO ())
ptr_glFinalCombinerInputNV = unsafePerformIO $ getCommand "glFinalCombinerInputNV"

-- glFinish --------------------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glFinish.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glFinish.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glFinish.xhtml OpenGL 4.x>
glFinish
  :: IO ()
glFinish = dyn_glFinish ptr_glFinish

foreign import CALLCONV "dynamic" dyn_glFinish
  :: FunPtr (IO ())
  ->         IO ()

{-# NOINLINE ptr_glFinish #-}
ptr_glFinish :: FunPtr (IO ())
ptr_glFinish = unsafePerformIO $ getCommand "glFinish"

-- glFinishAsyncSGIX -----------------------------------------------------------

glFinishAsyncSGIX
  :: Ptr GLuint -- ^ @markerp@ pointing to @1@ elements of type @GLuint@.
  -> IO GLint
glFinishAsyncSGIX = dyn_glFinishAsyncSGIX ptr_glFinishAsyncSGIX

foreign import CALLCONV "dynamic" dyn_glFinishAsyncSGIX
  :: FunPtr (Ptr GLuint -> IO GLint)
  ->         Ptr GLuint -> IO GLint

{-# NOINLINE ptr_glFinishAsyncSGIX #-}
ptr_glFinishAsyncSGIX :: FunPtr (Ptr GLuint -> IO GLint)
ptr_glFinishAsyncSGIX = unsafePerformIO $ getCommand "glFinishAsyncSGIX"

-- glFinishFenceAPPLE ----------------------------------------------------------

glFinishFenceAPPLE
  :: GLuint -- ^ @fence@ of type @FenceNV@.
  -> IO ()
glFinishFenceAPPLE = dyn_glFinishFenceAPPLE ptr_glFinishFenceAPPLE

foreign import CALLCONV "dynamic" dyn_glFinishFenceAPPLE
  :: FunPtr (GLuint -> IO ())
  ->         GLuint -> IO ()

{-# NOINLINE ptr_glFinishFenceAPPLE #-}
ptr_glFinishFenceAPPLE :: FunPtr (GLuint -> IO ())
ptr_glFinishFenceAPPLE = unsafePerformIO $ getCommand "glFinishFenceAPPLE"

-- glFinishFenceNV -------------------------------------------------------------

glFinishFenceNV
  :: GLuint -- ^ @fence@ of type @FenceNV@.
  -> IO ()
glFinishFenceNV = dyn_glFinishFenceNV ptr_glFinishFenceNV

foreign import CALLCONV "dynamic" dyn_glFinishFenceNV
  :: FunPtr (GLuint -> IO ())
  ->         GLuint -> IO ()

{-# NOINLINE ptr_glFinishFenceNV #-}
ptr_glFinishFenceNV :: FunPtr (GLuint -> IO ())
ptr_glFinishFenceNV = unsafePerformIO $ getCommand "glFinishFenceNV"

-- glFinishObjectAPPLE ---------------------------------------------------------

glFinishObjectAPPLE
  :: GLenum -- ^ @object@ of type @ObjectTypeAPPLE@.
  -> GLint -- ^ @name@.
  -> IO ()
glFinishObjectAPPLE = dyn_glFinishObjectAPPLE ptr_glFinishObjectAPPLE

foreign import CALLCONV "dynamic" dyn_glFinishObjectAPPLE
  :: FunPtr (GLenum -> GLint -> IO ())
  ->         GLenum -> GLint -> IO ()

{-# NOINLINE ptr_glFinishObjectAPPLE #-}
ptr_glFinishObjectAPPLE :: FunPtr (GLenum -> GLint -> IO ())
ptr_glFinishObjectAPPLE = unsafePerformIO $ getCommand "glFinishObjectAPPLE"

-- glFinishTextureSUNX ---------------------------------------------------------

glFinishTextureSUNX
  :: IO ()
glFinishTextureSUNX = dyn_glFinishTextureSUNX ptr_glFinishTextureSUNX

foreign import CALLCONV "dynamic" dyn_glFinishTextureSUNX
  :: FunPtr (IO ())
  ->         IO ()

{-# NOINLINE ptr_glFinishTextureSUNX #-}
ptr_glFinishTextureSUNX :: FunPtr (IO ())
ptr_glFinishTextureSUNX = unsafePerformIO $ getCommand "glFinishTextureSUNX"

-- glFlush ---------------------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glFlush.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glFlush.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glFlush.xhtml OpenGL 4.x>
glFlush
  :: IO ()
glFlush = dyn_glFlush ptr_glFlush

foreign import CALLCONV "dynamic" dyn_glFlush
  :: FunPtr (IO ())
  ->         IO ()

{-# NOINLINE ptr_glFlush #-}
ptr_glFlush :: FunPtr (IO ())
ptr_glFlush = unsafePerformIO $ getCommand "glFlush"

-- glFlushMappedBufferRange ----------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glFlushMappedBufferRange.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glFlushMappedBufferRange.xhtml OpenGL 4.x>
glFlushMappedBufferRange
  :: GLenum -- ^ @target@ of type @BufferTargetARB@.
  -> GLintptr -- ^ @offset@ of type @BufferOffset@.
  -> GLsizeiptr -- ^ @length@ of type @BufferSize@.
  -> IO ()
glFlushMappedBufferRange = dyn_glFlushMappedBufferRange ptr_glFlushMappedBufferRange

foreign import CALLCONV "dynamic" dyn_glFlushMappedBufferRange
  :: FunPtr (GLenum -> GLintptr -> GLsizeiptr -> IO ())
  ->         GLenum -> GLintptr -> GLsizeiptr -> IO ()

{-# NOINLINE ptr_glFlushMappedBufferRange #-}
ptr_glFlushMappedBufferRange :: FunPtr (GLenum -> GLintptr -> GLsizeiptr -> IO ())
ptr_glFlushMappedBufferRange = unsafePerformIO $ getCommand "glFlushMappedBufferRange"

-- glFlushMappedBufferRangeAPPLE -----------------------------------------------

glFlushMappedBufferRangeAPPLE
  :: GLenum -- ^ @target@.
  -> GLintptr -- ^ @offset@ of type @BufferOffset@.
  -> GLsizeiptr -- ^ @size@ of type @BufferSize@.
  -> IO ()
glFlushMappedBufferRangeAPPLE = dyn_glFlushMappedBufferRangeAPPLE ptr_glFlushMappedBufferRangeAPPLE

foreign import CALLCONV "dynamic" dyn_glFlushMappedBufferRangeAPPLE
  :: FunPtr (GLenum -> GLintptr -> GLsizeiptr -> IO ())
  ->         GLenum -> GLintptr -> GLsizeiptr -> IO ()

{-# NOINLINE ptr_glFlushMappedBufferRangeAPPLE #-}
ptr_glFlushMappedBufferRangeAPPLE :: FunPtr (GLenum -> GLintptr -> GLsizeiptr -> IO ())
ptr_glFlushMappedBufferRangeAPPLE = unsafePerformIO $ getCommand "glFlushMappedBufferRangeAPPLE"

-- glFlushMappedBufferRangeEXT -------------------------------------------------

glFlushMappedBufferRangeEXT
  :: GLenum -- ^ @target@.
  -> GLintptr -- ^ @offset@.
  -> GLsizeiptr -- ^ @length@.
  -> IO ()
glFlushMappedBufferRangeEXT = dyn_glFlushMappedBufferRangeEXT ptr_glFlushMappedBufferRangeEXT

foreign import CALLCONV "dynamic" dyn_glFlushMappedBufferRangeEXT
  :: FunPtr (GLenum -> GLintptr -> GLsizeiptr -> IO ())
  ->         GLenum -> GLintptr -> GLsizeiptr -> IO ()

{-# NOINLINE ptr_glFlushMappedBufferRangeEXT #-}
ptr_glFlushMappedBufferRangeEXT :: FunPtr (GLenum -> GLintptr -> GLsizeiptr -> IO ())
ptr_glFlushMappedBufferRangeEXT = unsafePerformIO $ getCommand "glFlushMappedBufferRangeEXT"

-- glFlushMappedNamedBufferRange -----------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glFlushMappedBufferRange.xhtml OpenGL 4.x>
glFlushMappedNamedBufferRange
  :: GLuint -- ^ @buffer@.
  -> GLintptr -- ^ @offset@.
  -> GLsizeiptr -- ^ @length@ of type @BufferSize@.
  -> IO ()
glFlushMappedNamedBufferRange = dyn_glFlushMappedNamedBufferRange ptr_glFlushMappedNamedBufferRange

foreign import CALLCONV "dynamic" dyn_glFlushMappedNamedBufferRange
  :: FunPtr (GLuint -> GLintptr -> GLsizeiptr -> IO ())
  ->         GLuint -> GLintptr -> GLsizeiptr -> IO ()

{-# NOINLINE ptr_glFlushMappedNamedBufferRange #-}
ptr_glFlushMappedNamedBufferRange :: FunPtr (GLuint -> GLintptr -> GLsizeiptr -> IO ())
ptr_glFlushMappedNamedBufferRange = unsafePerformIO $ getCommand "glFlushMappedNamedBufferRange"

-- glFlushMappedNamedBufferRangeEXT --------------------------------------------

glFlushMappedNamedBufferRangeEXT
  :: GLuint -- ^ @buffer@.
  -> GLintptr -- ^ @offset@.
  -> GLsizeiptr -- ^ @length@.
  -> IO ()
glFlushMappedNamedBufferRangeEXT = dyn_glFlushMappedNamedBufferRangeEXT ptr_glFlushMappedNamedBufferRangeEXT

foreign import CALLCONV "dynamic" dyn_glFlushMappedNamedBufferRangeEXT
  :: FunPtr (GLuint -> GLintptr -> GLsizeiptr -> IO ())
  ->         GLuint -> GLintptr -> GLsizeiptr -> IO ()

{-# NOINLINE ptr_glFlushMappedNamedBufferRangeEXT #-}
ptr_glFlushMappedNamedBufferRangeEXT :: FunPtr (GLuint -> GLintptr -> GLsizeiptr -> IO ())
ptr_glFlushMappedNamedBufferRangeEXT = unsafePerformIO $ getCommand "glFlushMappedNamedBufferRangeEXT"

-- glFlushPixelDataRangeNV -----------------------------------------------------

glFlushPixelDataRangeNV
  :: GLenum -- ^ @target@ of type @PixelDataRangeTargetNV@.
  -> IO ()
glFlushPixelDataRangeNV = dyn_glFlushPixelDataRangeNV ptr_glFlushPixelDataRangeNV

foreign import CALLCONV "dynamic" dyn_glFlushPixelDataRangeNV
  :: FunPtr (GLenum -> IO ())
  ->         GLenum -> IO ()

{-# NOINLINE ptr_glFlushPixelDataRangeNV #-}
ptr_glFlushPixelDataRangeNV :: FunPtr (GLenum -> IO ())
ptr_glFlushPixelDataRangeNV = unsafePerformIO $ getCommand "glFlushPixelDataRangeNV"

-- glFlushRasterSGIX -----------------------------------------------------------

glFlushRasterSGIX
  :: IO ()
glFlushRasterSGIX = dyn_glFlushRasterSGIX ptr_glFlushRasterSGIX

foreign import CALLCONV "dynamic" dyn_glFlushRasterSGIX
  :: FunPtr (IO ())
  ->         IO ()

{-# NOINLINE ptr_glFlushRasterSGIX #-}
ptr_glFlushRasterSGIX :: FunPtr (IO ())
ptr_glFlushRasterSGIX = unsafePerformIO $ getCommand "glFlushRasterSGIX"

-- glFlushStaticDataIBM --------------------------------------------------------

glFlushStaticDataIBM
  :: GLenum -- ^ @target@.
  -> IO ()
glFlushStaticDataIBM = dyn_glFlushStaticDataIBM ptr_glFlushStaticDataIBM

foreign import CALLCONV "dynamic" dyn_glFlushStaticDataIBM
  :: FunPtr (GLenum -> IO ())
  ->         GLenum -> IO ()

{-# NOINLINE ptr_glFlushStaticDataIBM #-}
ptr_glFlushStaticDataIBM :: FunPtr (GLenum -> IO ())
ptr_glFlushStaticDataIBM = unsafePerformIO $ getCommand "glFlushStaticDataIBM"

-- glFlushVertexArrayRangeAPPLE ------------------------------------------------

glFlushVertexArrayRangeAPPLE
  :: GLsizei -- ^ @length@.
  -> Ptr a -- ^ @pointer@ pointing to @length@ elements of type @a@.
  -> IO ()
glFlushVertexArrayRangeAPPLE = dyn_glFlushVertexArrayRangeAPPLE ptr_glFlushVertexArrayRangeAPPLE

foreign import CALLCONV "dynamic" dyn_glFlushVertexArrayRangeAPPLE
  :: FunPtr (GLsizei -> Ptr a -> IO ())
  ->         GLsizei -> Ptr a -> IO ()

{-# NOINLINE ptr_glFlushVertexArrayRangeAPPLE #-}
ptr_glFlushVertexArrayRangeAPPLE :: FunPtr (GLsizei -> Ptr a -> IO ())
ptr_glFlushVertexArrayRangeAPPLE = unsafePerformIO $ getCommand "glFlushVertexArrayRangeAPPLE"

-- glFlushVertexArrayRangeNV ---------------------------------------------------

glFlushVertexArrayRangeNV
  :: IO ()
glFlushVertexArrayRangeNV = dyn_glFlushVertexArrayRangeNV ptr_glFlushVertexArrayRangeNV

foreign import CALLCONV "dynamic" dyn_glFlushVertexArrayRangeNV
  :: FunPtr (IO ())
  ->         IO ()

{-# NOINLINE ptr_glFlushVertexArrayRangeNV #-}
ptr_glFlushVertexArrayRangeNV :: FunPtr (IO ())
ptr_glFlushVertexArrayRangeNV = unsafePerformIO $ getCommand "glFlushVertexArrayRangeNV"

-- glFogCoordFormatNV ----------------------------------------------------------

glFogCoordFormatNV
  :: GLenum -- ^ @type@.
  -> GLsizei -- ^ @stride@.
  -> IO ()
glFogCoordFormatNV = dyn_glFogCoordFormatNV ptr_glFogCoordFormatNV

foreign import CALLCONV "dynamic" dyn_glFogCoordFormatNV
  :: FunPtr (GLenum -> GLsizei -> IO ())
  ->         GLenum -> GLsizei -> IO ()

{-# NOINLINE ptr_glFogCoordFormatNV #-}
ptr_glFogCoordFormatNV :: FunPtr (GLenum -> GLsizei -> IO ())
ptr_glFogCoordFormatNV = unsafePerformIO $ getCommand "glFogCoordFormatNV"

-- glFogCoordPointer -----------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glFogCoordPointer.xml OpenGL 2.x>
glFogCoordPointer
  :: GLenum -- ^ @type@ of type @FogPointerTypeEXT@.
  -> GLsizei -- ^ @stride@.
  -> Ptr a -- ^ @pointer@ pointing to @COMPSIZE(type,stride)@ elements of type @a@.
  -> IO ()
glFogCoordPointer = dyn_glFogCoordPointer ptr_glFogCoordPointer

foreign import CALLCONV "dynamic" dyn_glFogCoordPointer
  :: FunPtr (GLenum -> GLsizei -> Ptr a -> IO ())
  ->         GLenum -> GLsizei -> Ptr a -> IO ()

{-# NOINLINE ptr_glFogCoordPointer #-}
ptr_glFogCoordPointer :: FunPtr (GLenum -> GLsizei -> Ptr a -> IO ())
ptr_glFogCoordPointer = unsafePerformIO $ getCommand "glFogCoordPointer"

-- glFogCoordPointerEXT --------------------------------------------------------

glFogCoordPointerEXT
  :: GLenum -- ^ @type@ of type @FogPointerTypeEXT@.
  -> GLsizei -- ^ @stride@.
  -> Ptr a -- ^ @pointer@ pointing to @COMPSIZE(type,stride)@ elements of type @a@.
  -> IO ()
glFogCoordPointerEXT = dyn_glFogCoordPointerEXT ptr_glFogCoordPointerEXT

foreign import CALLCONV "dynamic" dyn_glFogCoordPointerEXT
  :: FunPtr (GLenum -> GLsizei -> Ptr a -> IO ())
  ->         GLenum -> GLsizei -> Ptr a -> IO ()

{-# NOINLINE ptr_glFogCoordPointerEXT #-}
ptr_glFogCoordPointerEXT :: FunPtr (GLenum -> GLsizei -> Ptr a -> IO ())
ptr_glFogCoordPointerEXT = unsafePerformIO $ getCommand "glFogCoordPointerEXT"

-- glFogCoordPointerListIBM ----------------------------------------------------

glFogCoordPointerListIBM
  :: GLenum -- ^ @type@ of type @FogPointerTypeIBM@.
  -> GLint -- ^ @stride@.
  -> Ptr (Ptr a) -- ^ @pointer@ pointing to @COMPSIZE(type,stride)@ elements of type @Ptr a@.
  -> GLint -- ^ @ptrstride@.
  -> IO ()
glFogCoordPointerListIBM = dyn_glFogCoordPointerListIBM ptr_glFogCoordPointerListIBM

foreign import CALLCONV "dynamic" dyn_glFogCoordPointerListIBM
  :: FunPtr (GLenum -> GLint -> Ptr (Ptr a) -> GLint -> IO ())
  ->         GLenum -> GLint -> Ptr (Ptr a) -> GLint -> IO ()

{-# NOINLINE ptr_glFogCoordPointerListIBM #-}
ptr_glFogCoordPointerListIBM :: FunPtr (GLenum -> GLint -> Ptr (Ptr a) -> GLint -> IO ())
ptr_glFogCoordPointerListIBM = unsafePerformIO $ getCommand "glFogCoordPointerListIBM"

-- glFogCoordd -----------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glFogCoord.xml OpenGL 2.x>
glFogCoordd
  :: GLdouble -- ^ @coord@ of type @CoordD@.
  -> IO ()
glFogCoordd = dyn_glFogCoordd ptr_glFogCoordd

foreign import CALLCONV "dynamic" dyn_glFogCoordd
  :: FunPtr (GLdouble -> IO ())
  ->         GLdouble -> IO ()

{-# NOINLINE ptr_glFogCoordd #-}
ptr_glFogCoordd :: FunPtr (GLdouble -> IO ())
ptr_glFogCoordd = unsafePerformIO $ getCommand "glFogCoordd"

-- glFogCoorddEXT --------------------------------------------------------------

glFogCoorddEXT
  :: GLdouble -- ^ @coord@ of type @CoordD@.
  -> IO ()
glFogCoorddEXT = dyn_glFogCoorddEXT ptr_glFogCoorddEXT

foreign import CALLCONV "dynamic" dyn_glFogCoorddEXT
  :: FunPtr (GLdouble -> IO ())
  ->         GLdouble -> IO ()

{-# NOINLINE ptr_glFogCoorddEXT #-}
ptr_glFogCoorddEXT :: FunPtr (GLdouble -> IO ())
ptr_glFogCoorddEXT = unsafePerformIO $ getCommand "glFogCoorddEXT"

-- glFogCoorddv ----------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glFogCoord.xml OpenGL 2.x>
glFogCoorddv
  :: Ptr GLdouble -- ^ @coord@ pointing to @1@ elements of type @CoordD@.
  -> IO ()
glFogCoorddv = dyn_glFogCoorddv ptr_glFogCoorddv

foreign import CALLCONV "dynamic" dyn_glFogCoorddv
  :: FunPtr (Ptr GLdouble -> IO ())
  ->         Ptr GLdouble -> IO ()

{-# NOINLINE ptr_glFogCoorddv #-}
ptr_glFogCoorddv :: FunPtr (Ptr GLdouble -> IO ())
ptr_glFogCoorddv = unsafePerformIO $ getCommand "glFogCoorddv"

-- glFogCoorddvEXT -------------------------------------------------------------

glFogCoorddvEXT
  :: Ptr GLdouble -- ^ @coord@ pointing to @1@ elements of type @CoordD@.
  -> IO ()
glFogCoorddvEXT = dyn_glFogCoorddvEXT ptr_glFogCoorddvEXT

foreign import CALLCONV "dynamic" dyn_glFogCoorddvEXT
  :: FunPtr (Ptr GLdouble -> IO ())
  ->         Ptr GLdouble -> IO ()

{-# NOINLINE ptr_glFogCoorddvEXT #-}
ptr_glFogCoorddvEXT :: FunPtr (Ptr GLdouble -> IO ())
ptr_glFogCoorddvEXT = unsafePerformIO $ getCommand "glFogCoorddvEXT"

-- glFogCoordf -----------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glFogCoord.xml OpenGL 2.x>
glFogCoordf
  :: GLfloat -- ^ @coord@ of type @CoordF@.
  -> IO ()
glFogCoordf = dyn_glFogCoordf ptr_glFogCoordf

foreign import CALLCONV "dynamic" dyn_glFogCoordf
  :: FunPtr (GLfloat -> IO ())
  ->         GLfloat -> IO ()

{-# NOINLINE ptr_glFogCoordf #-}
ptr_glFogCoordf :: FunPtr (GLfloat -> IO ())
ptr_glFogCoordf = unsafePerformIO $ getCommand "glFogCoordf"

-- glFogCoordfEXT --------------------------------------------------------------

glFogCoordfEXT
  :: GLfloat -- ^ @coord@ of type @CoordF@.
  -> IO ()
glFogCoordfEXT = dyn_glFogCoordfEXT ptr_glFogCoordfEXT

foreign import CALLCONV "dynamic" dyn_glFogCoordfEXT
  :: FunPtr (GLfloat -> IO ())
  ->         GLfloat -> IO ()

{-# NOINLINE ptr_glFogCoordfEXT #-}
ptr_glFogCoordfEXT :: FunPtr (GLfloat -> IO ())
ptr_glFogCoordfEXT = unsafePerformIO $ getCommand "glFogCoordfEXT"

-- glFogCoordfv ----------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glFogCoord.xml OpenGL 2.x>
glFogCoordfv
  :: Ptr GLfloat -- ^ @coord@ pointing to @1@ elements of type @CoordF@.
  -> IO ()
glFogCoordfv = dyn_glFogCoordfv ptr_glFogCoordfv

foreign import CALLCONV "dynamic" dyn_glFogCoordfv
  :: FunPtr (Ptr GLfloat -> IO ())
  ->         Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glFogCoordfv #-}
ptr_glFogCoordfv :: FunPtr (Ptr GLfloat -> IO ())
ptr_glFogCoordfv = unsafePerformIO $ getCommand "glFogCoordfv"

-- glFogCoordfvEXT -------------------------------------------------------------

glFogCoordfvEXT
  :: Ptr GLfloat -- ^ @coord@ pointing to @1@ elements of type @CoordF@.
  -> IO ()
glFogCoordfvEXT = dyn_glFogCoordfvEXT ptr_glFogCoordfvEXT

foreign import CALLCONV "dynamic" dyn_glFogCoordfvEXT
  :: FunPtr (Ptr GLfloat -> IO ())
  ->         Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glFogCoordfvEXT #-}
ptr_glFogCoordfvEXT :: FunPtr (Ptr GLfloat -> IO ())
ptr_glFogCoordfvEXT = unsafePerformIO $ getCommand "glFogCoordfvEXT"

-- glFogCoordhNV ---------------------------------------------------------------

glFogCoordhNV
  :: GLhalfNV -- ^ @fog@ of type @Half16NV@.
  -> IO ()
glFogCoordhNV = dyn_glFogCoordhNV ptr_glFogCoordhNV

foreign import CALLCONV "dynamic" dyn_glFogCoordhNV
  :: FunPtr (GLhalfNV -> IO ())
  ->         GLhalfNV -> IO ()

{-# NOINLINE ptr_glFogCoordhNV #-}
ptr_glFogCoordhNV :: FunPtr (GLhalfNV -> IO ())
ptr_glFogCoordhNV = unsafePerformIO $ getCommand "glFogCoordhNV"

-- glFogCoordhvNV --------------------------------------------------------------

glFogCoordhvNV
  :: Ptr GLhalfNV -- ^ @fog@ pointing to @1@ elements of type @Half16NV@.
  -> IO ()
glFogCoordhvNV = dyn_glFogCoordhvNV ptr_glFogCoordhvNV

foreign import CALLCONV "dynamic" dyn_glFogCoordhvNV
  :: FunPtr (Ptr GLhalfNV -> IO ())
  ->         Ptr GLhalfNV -> IO ()

{-# NOINLINE ptr_glFogCoordhvNV #-}
ptr_glFogCoordhvNV :: FunPtr (Ptr GLhalfNV -> IO ())
ptr_glFogCoordhvNV = unsafePerformIO $ getCommand "glFogCoordhvNV"

-- glFogFuncSGIS ---------------------------------------------------------------

glFogFuncSGIS
  :: GLsizei -- ^ @n@.
  -> Ptr GLfloat -- ^ @points@ pointing to @n*2@ elements of type @GLfloat@.
  -> IO ()
glFogFuncSGIS = dyn_glFogFuncSGIS ptr_glFogFuncSGIS

foreign import CALLCONV "dynamic" dyn_glFogFuncSGIS
  :: FunPtr (GLsizei -> Ptr GLfloat -> IO ())
  ->         GLsizei -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glFogFuncSGIS #-}
ptr_glFogFuncSGIS :: FunPtr (GLsizei -> Ptr GLfloat -> IO ())
ptr_glFogFuncSGIS = unsafePerformIO $ getCommand "glFogFuncSGIS"

-- glFogf ----------------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glFog.xml OpenGL 2.x>
glFogf
  :: GLenum -- ^ @pname@ of type @FogParameter@.
  -> GLfloat -- ^ @param@ of type @CheckedFloat32@.
  -> IO ()
glFogf = dyn_glFogf ptr_glFogf

foreign import CALLCONV "dynamic" dyn_glFogf
  :: FunPtr (GLenum -> GLfloat -> IO ())
  ->         GLenum -> GLfloat -> IO ()

{-# NOINLINE ptr_glFogf #-}
ptr_glFogf :: FunPtr (GLenum -> GLfloat -> IO ())
ptr_glFogf = unsafePerformIO $ getCommand "glFogf"

-- glFogfv ---------------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glFog.xml OpenGL 2.x>
glFogfv
  :: GLenum -- ^ @pname@ of type @FogParameter@.
  -> Ptr GLfloat -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @CheckedFloat32@.
  -> IO ()
glFogfv = dyn_glFogfv ptr_glFogfv

foreign import CALLCONV "dynamic" dyn_glFogfv
  :: FunPtr (GLenum -> Ptr GLfloat -> IO ())
  ->         GLenum -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glFogfv #-}
ptr_glFogfv :: FunPtr (GLenum -> Ptr GLfloat -> IO ())
ptr_glFogfv = unsafePerformIO $ getCommand "glFogfv"

-- glFogi ----------------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glFog.xml OpenGL 2.x>
glFogi
  :: GLenum -- ^ @pname@ of type @FogParameter@.
  -> GLint -- ^ @param@ of type @CheckedInt32@.
  -> IO ()
glFogi = dyn_glFogi ptr_glFogi

foreign import CALLCONV "dynamic" dyn_glFogi
  :: FunPtr (GLenum -> GLint -> IO ())
  ->         GLenum -> GLint -> IO ()

{-# NOINLINE ptr_glFogi #-}
ptr_glFogi :: FunPtr (GLenum -> GLint -> IO ())
ptr_glFogi = unsafePerformIO $ getCommand "glFogi"

-- glFogiv ---------------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glFog.xml OpenGL 2.x>
glFogiv
  :: GLenum -- ^ @pname@ of type @FogParameter@.
  -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @CheckedInt32@.
  -> IO ()
glFogiv = dyn_glFogiv ptr_glFogiv

foreign import CALLCONV "dynamic" dyn_glFogiv
  :: FunPtr (GLenum -> Ptr GLint -> IO ())
  ->         GLenum -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glFogiv #-}
ptr_glFogiv :: FunPtr (GLenum -> Ptr GLint -> IO ())
ptr_glFogiv = unsafePerformIO $ getCommand "glFogiv"

-- glFogx ----------------------------------------------------------------------

glFogx
  :: GLenum -- ^ @pname@.
  -> GLfixed -- ^ @param@.
  -> IO ()
glFogx = dyn_glFogx ptr_glFogx

foreign import CALLCONV "dynamic" dyn_glFogx
  :: FunPtr (GLenum -> GLfixed -> IO ())
  ->         GLenum -> GLfixed -> IO ()

{-# NOINLINE ptr_glFogx #-}
ptr_glFogx :: FunPtr (GLenum -> GLfixed -> IO ())
ptr_glFogx = unsafePerformIO $ getCommand "glFogx"

-- glFogxOES -------------------------------------------------------------------

glFogxOES
  :: GLenum -- ^ @pname@.
  -> GLfixed -- ^ @param@.
  -> IO ()
glFogxOES = dyn_glFogxOES ptr_glFogxOES

foreign import CALLCONV "dynamic" dyn_glFogxOES
  :: FunPtr (GLenum -> GLfixed -> IO ())
  ->         GLenum -> GLfixed -> IO ()

{-# NOINLINE ptr_glFogxOES #-}
ptr_glFogxOES :: FunPtr (GLenum -> GLfixed -> IO ())
ptr_glFogxOES = unsafePerformIO $ getCommand "glFogxOES"

-- glFogxv ---------------------------------------------------------------------

glFogxv
  :: GLenum -- ^ @pname@.
  -> Ptr GLfixed -- ^ @param@ pointing to @COMPSIZE(pname)@ elements of type @GLfixed@.
  -> IO ()
glFogxv = dyn_glFogxv ptr_glFogxv

foreign import CALLCONV "dynamic" dyn_glFogxv
  :: FunPtr (GLenum -> Ptr GLfixed -> IO ())
  ->         GLenum -> Ptr GLfixed -> IO ()

{-# NOINLINE ptr_glFogxv #-}
ptr_glFogxv :: FunPtr (GLenum -> Ptr GLfixed -> IO ())
ptr_glFogxv = unsafePerformIO $ getCommand "glFogxv"

-- glFogxvOES ------------------------------------------------------------------

glFogxvOES
  :: GLenum -- ^ @pname@.
  -> Ptr GLfixed -- ^ @param@ pointing to @COMPSIZE(pname)@ elements of type @GLfixed@.
  -> IO ()
glFogxvOES = dyn_glFogxvOES ptr_glFogxvOES

foreign import CALLCONV "dynamic" dyn_glFogxvOES
  :: FunPtr (GLenum -> Ptr GLfixed -> IO ())
  ->         GLenum -> Ptr GLfixed -> IO ()

{-# NOINLINE ptr_glFogxvOES #-}
ptr_glFogxvOES :: FunPtr (GLenum -> Ptr GLfixed -> IO ())
ptr_glFogxvOES = unsafePerformIO $ getCommand "glFogxvOES"

-- glFragmentColorMaterialSGIX -------------------------------------------------

glFragmentColorMaterialSGIX
  :: GLenum -- ^ @face@ of type @MaterialFace@.
  -> GLenum -- ^ @mode@ of type @MaterialParameter@.
  -> IO ()
glFragmentColorMaterialSGIX = dyn_glFragmentColorMaterialSGIX ptr_glFragmentColorMaterialSGIX

foreign import CALLCONV "dynamic" dyn_glFragmentColorMaterialSGIX
  :: FunPtr (GLenum -> GLenum -> IO ())
  ->         GLenum -> GLenum -> IO ()

{-# NOINLINE ptr_glFragmentColorMaterialSGIX #-}
ptr_glFragmentColorMaterialSGIX :: FunPtr (GLenum -> GLenum -> IO ())
ptr_glFragmentColorMaterialSGIX = unsafePerformIO $ getCommand "glFragmentColorMaterialSGIX"

-- glFragmentCoverageColorNV ---------------------------------------------------

glFragmentCoverageColorNV
  :: GLuint -- ^ @color@.
  -> IO ()
glFragmentCoverageColorNV = dyn_glFragmentCoverageColorNV ptr_glFragmentCoverageColorNV

foreign import CALLCONV "dynamic" dyn_glFragmentCoverageColorNV
  :: FunPtr (GLuint -> IO ())
  ->         GLuint -> IO ()

{-# NOINLINE ptr_glFragmentCoverageColorNV #-}
ptr_glFragmentCoverageColorNV :: FunPtr (GLuint -> IO ())
ptr_glFragmentCoverageColorNV = unsafePerformIO $ getCommand "glFragmentCoverageColorNV"

-- glFragmentLightModelfSGIX ---------------------------------------------------

glFragmentLightModelfSGIX
  :: GLenum -- ^ @pname@ of type @FragmentLightModelParameterSGIX@.
  -> GLfloat -- ^ @param@ of type @CheckedFloat32@.
  -> IO ()
glFragmentLightModelfSGIX = dyn_glFragmentLightModelfSGIX ptr_glFragmentLightModelfSGIX

foreign import CALLCONV "dynamic" dyn_glFragmentLightModelfSGIX
  :: FunPtr (GLenum -> GLfloat -> IO ())
  ->         GLenum -> GLfloat -> IO ()

{-# NOINLINE ptr_glFragmentLightModelfSGIX #-}
ptr_glFragmentLightModelfSGIX :: FunPtr (GLenum -> GLfloat -> IO ())
ptr_glFragmentLightModelfSGIX = unsafePerformIO $ getCommand "glFragmentLightModelfSGIX"

-- glFragmentLightModelfvSGIX --------------------------------------------------

glFragmentLightModelfvSGIX
  :: GLenum -- ^ @pname@ of type @FragmentLightModelParameterSGIX@.
  -> Ptr GLfloat -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @CheckedFloat32@.
  -> IO ()
glFragmentLightModelfvSGIX = dyn_glFragmentLightModelfvSGIX ptr_glFragmentLightModelfvSGIX

foreign import CALLCONV "dynamic" dyn_glFragmentLightModelfvSGIX
  :: FunPtr (GLenum -> Ptr GLfloat -> IO ())
  ->         GLenum -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glFragmentLightModelfvSGIX #-}
ptr_glFragmentLightModelfvSGIX :: FunPtr (GLenum -> Ptr GLfloat -> IO ())
ptr_glFragmentLightModelfvSGIX = unsafePerformIO $ getCommand "glFragmentLightModelfvSGIX"

-- glFragmentLightModeliSGIX ---------------------------------------------------

glFragmentLightModeliSGIX
  :: GLenum -- ^ @pname@ of type @FragmentLightModelParameterSGIX@.
  -> GLint -- ^ @param@ of type @CheckedInt32@.
  -> IO ()
glFragmentLightModeliSGIX = dyn_glFragmentLightModeliSGIX ptr_glFragmentLightModeliSGIX

foreign import CALLCONV "dynamic" dyn_glFragmentLightModeliSGIX
  :: FunPtr (GLenum -> GLint -> IO ())
  ->         GLenum -> GLint -> IO ()

{-# NOINLINE ptr_glFragmentLightModeliSGIX #-}
ptr_glFragmentLightModeliSGIX :: FunPtr (GLenum -> GLint -> IO ())
ptr_glFragmentLightModeliSGIX = unsafePerformIO $ getCommand "glFragmentLightModeliSGIX"

-- glFragmentLightModelivSGIX --------------------------------------------------

glFragmentLightModelivSGIX
  :: GLenum -- ^ @pname@ of type @FragmentLightModelParameterSGIX@.
  -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @CheckedInt32@.
  -> IO ()
glFragmentLightModelivSGIX = dyn_glFragmentLightModelivSGIX ptr_glFragmentLightModelivSGIX

foreign import CALLCONV "dynamic" dyn_glFragmentLightModelivSGIX
  :: FunPtr (GLenum -> Ptr GLint -> IO ())
  ->         GLenum -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glFragmentLightModelivSGIX #-}
ptr_glFragmentLightModelivSGIX :: FunPtr (GLenum -> Ptr GLint -> IO ())
ptr_glFragmentLightModelivSGIX = unsafePerformIO $ getCommand "glFragmentLightModelivSGIX"

-- glFragmentLightfSGIX --------------------------------------------------------

glFragmentLightfSGIX
  :: GLenum -- ^ @light@ of type @FragmentLightNameSGIX@.
  -> GLenum -- ^ @pname@ of type @FragmentLightParameterSGIX@.
  -> GLfloat -- ^ @param@ of type @CheckedFloat32@.
  -> IO ()
glFragmentLightfSGIX = dyn_glFragmentLightfSGIX ptr_glFragmentLightfSGIX

foreign import CALLCONV "dynamic" dyn_glFragmentLightfSGIX
  :: FunPtr (GLenum -> GLenum -> GLfloat -> IO ())
  ->         GLenum -> GLenum -> GLfloat -> IO ()

{-# NOINLINE ptr_glFragmentLightfSGIX #-}
ptr_glFragmentLightfSGIX :: FunPtr (GLenum -> GLenum -> GLfloat -> IO ())
ptr_glFragmentLightfSGIX = unsafePerformIO $ getCommand "glFragmentLightfSGIX"

-- glFragmentLightfvSGIX -------------------------------------------------------

glFragmentLightfvSGIX
  :: GLenum -- ^ @light@ of type @FragmentLightNameSGIX@.
  -> GLenum -- ^ @pname@ of type @FragmentLightParameterSGIX@.
  -> Ptr GLfloat -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @CheckedFloat32@.
  -> IO ()
glFragmentLightfvSGIX = dyn_glFragmentLightfvSGIX ptr_glFragmentLightfvSGIX

foreign import CALLCONV "dynamic" dyn_glFragmentLightfvSGIX
  :: FunPtr (GLenum -> GLenum -> Ptr GLfloat -> IO ())
  ->         GLenum -> GLenum -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glFragmentLightfvSGIX #-}
ptr_glFragmentLightfvSGIX :: FunPtr (GLenum -> GLenum -> Ptr GLfloat -> IO ())
ptr_glFragmentLightfvSGIX = unsafePerformIO $ getCommand "glFragmentLightfvSGIX"

-- glFragmentLightiSGIX --------------------------------------------------------

glFragmentLightiSGIX
  :: GLenum -- ^ @light@ of type @FragmentLightNameSGIX@.
  -> GLenum -- ^ @pname@ of type @FragmentLightParameterSGIX@.
  -> GLint -- ^ @param@ of type @CheckedInt32@.
  -> IO ()
glFragmentLightiSGIX = dyn_glFragmentLightiSGIX ptr_glFragmentLightiSGIX

foreign import CALLCONV "dynamic" dyn_glFragmentLightiSGIX
  :: FunPtr (GLenum -> GLenum -> GLint -> IO ())
  ->         GLenum -> GLenum -> GLint -> IO ()

{-# NOINLINE ptr_glFragmentLightiSGIX #-}
ptr_glFragmentLightiSGIX :: FunPtr (GLenum -> GLenum -> GLint -> IO ())
ptr_glFragmentLightiSGIX = unsafePerformIO $ getCommand "glFragmentLightiSGIX"

-- glFragmentLightivSGIX -------------------------------------------------------

glFragmentLightivSGIX
  :: GLenum -- ^ @light@ of type @FragmentLightNameSGIX@.
  -> GLenum -- ^ @pname@ of type @FragmentLightParameterSGIX@.
  -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @CheckedInt32@.
  -> IO ()
glFragmentLightivSGIX = dyn_glFragmentLightivSGIX ptr_glFragmentLightivSGIX

foreign import CALLCONV "dynamic" dyn_glFragmentLightivSGIX
  :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
  ->         GLenum -> GLenum -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glFragmentLightivSGIX #-}
ptr_glFragmentLightivSGIX :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
ptr_glFragmentLightivSGIX = unsafePerformIO $ getCommand "glFragmentLightivSGIX"

-- glFragmentMaterialfSGIX -----------------------------------------------------

glFragmentMaterialfSGIX
  :: GLenum -- ^ @face@ of type @MaterialFace@.
  -> GLenum -- ^ @pname@ of type @MaterialParameter@.
  -> GLfloat -- ^ @param@ of type @CheckedFloat32@.
  -> IO ()
glFragmentMaterialfSGIX = dyn_glFragmentMaterialfSGIX ptr_glFragmentMaterialfSGIX

foreign import CALLCONV "dynamic" dyn_glFragmentMaterialfSGIX
  :: FunPtr (GLenum -> GLenum -> GLfloat -> IO ())
  ->         GLenum -> GLenum -> GLfloat -> IO ()

{-# NOINLINE ptr_glFragmentMaterialfSGIX #-}
ptr_glFragmentMaterialfSGIX :: FunPtr (GLenum -> GLenum -> GLfloat -> IO ())
ptr_glFragmentMaterialfSGIX = unsafePerformIO $ getCommand "glFragmentMaterialfSGIX"

-- glFragmentMaterialfvSGIX ----------------------------------------------------

glFragmentMaterialfvSGIX
  :: GLenum -- ^ @face@ of type @MaterialFace@.
  -> GLenum -- ^ @pname@ of type @MaterialParameter@.
  -> Ptr GLfloat -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @CheckedFloat32@.
  -> IO ()
glFragmentMaterialfvSGIX = dyn_glFragmentMaterialfvSGIX ptr_glFragmentMaterialfvSGIX

foreign import CALLCONV "dynamic" dyn_glFragmentMaterialfvSGIX
  :: FunPtr (GLenum -> GLenum -> Ptr GLfloat -> IO ())
  ->         GLenum -> GLenum -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glFragmentMaterialfvSGIX #-}
ptr_glFragmentMaterialfvSGIX :: FunPtr (GLenum -> GLenum -> Ptr GLfloat -> IO ())
ptr_glFragmentMaterialfvSGIX = unsafePerformIO $ getCommand "glFragmentMaterialfvSGIX"

-- glFragmentMaterialiSGIX -----------------------------------------------------

glFragmentMaterialiSGIX
  :: GLenum -- ^ @face@ of type @MaterialFace@.
  -> GLenum -- ^ @pname@ of type @MaterialParameter@.
  -> GLint -- ^ @param@ of type @CheckedInt32@.
  -> IO ()
glFragmentMaterialiSGIX = dyn_glFragmentMaterialiSGIX ptr_glFragmentMaterialiSGIX

foreign import CALLCONV "dynamic" dyn_glFragmentMaterialiSGIX
  :: FunPtr (GLenum -> GLenum -> GLint -> IO ())
  ->         GLenum -> GLenum -> GLint -> IO ()

{-# NOINLINE ptr_glFragmentMaterialiSGIX #-}
ptr_glFragmentMaterialiSGIX :: FunPtr (GLenum -> GLenum -> GLint -> IO ())
ptr_glFragmentMaterialiSGIX = unsafePerformIO $ getCommand "glFragmentMaterialiSGIX"

-- glFragmentMaterialivSGIX ----------------------------------------------------

glFragmentMaterialivSGIX
  :: GLenum -- ^ @face@ of type @MaterialFace@.
  -> GLenum -- ^ @pname@ of type @MaterialParameter@.
  -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @CheckedInt32@.
  -> IO ()
glFragmentMaterialivSGIX = dyn_glFragmentMaterialivSGIX ptr_glFragmentMaterialivSGIX

foreign import CALLCONV "dynamic" dyn_glFragmentMaterialivSGIX
  :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
  ->         GLenum -> GLenum -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glFragmentMaterialivSGIX #-}
ptr_glFragmentMaterialivSGIX :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
ptr_glFragmentMaterialivSGIX = unsafePerformIO $ getCommand "glFragmentMaterialivSGIX"

-- glFrameTerminatorGREMEDY ----------------------------------------------------

glFrameTerminatorGREMEDY
  :: IO ()
glFrameTerminatorGREMEDY = dyn_glFrameTerminatorGREMEDY ptr_glFrameTerminatorGREMEDY

foreign import CALLCONV "dynamic" dyn_glFrameTerminatorGREMEDY
  :: FunPtr (IO ())
  ->         IO ()

{-# NOINLINE ptr_glFrameTerminatorGREMEDY #-}
ptr_glFrameTerminatorGREMEDY :: FunPtr (IO ())
ptr_glFrameTerminatorGREMEDY = unsafePerformIO $ getCommand "glFrameTerminatorGREMEDY"

-- glFrameZoomSGIX -------------------------------------------------------------

glFrameZoomSGIX
  :: GLint -- ^ @factor@ of type @CheckedInt32@.
  -> IO ()
glFrameZoomSGIX = dyn_glFrameZoomSGIX ptr_glFrameZoomSGIX

foreign import CALLCONV "dynamic" dyn_glFrameZoomSGIX
  :: FunPtr (GLint -> IO ())
  ->         GLint -> IO ()

{-# NOINLINE ptr_glFrameZoomSGIX #-}
ptr_glFrameZoomSGIX :: FunPtr (GLint -> IO ())
ptr_glFrameZoomSGIX = unsafePerformIO $ getCommand "glFrameZoomSGIX"

-- glFramebufferDrawBufferEXT --------------------------------------------------

glFramebufferDrawBufferEXT
  :: GLuint -- ^ @framebuffer@ of type @Framebuffer@.
  -> GLenum -- ^ @mode@ of type @DrawBufferMode@.
  -> IO ()
glFramebufferDrawBufferEXT = dyn_glFramebufferDrawBufferEXT ptr_glFramebufferDrawBufferEXT

foreign import CALLCONV "dynamic" dyn_glFramebufferDrawBufferEXT
  :: FunPtr (GLuint -> GLenum -> IO ())
  ->         GLuint -> GLenum -> IO ()

{-# NOINLINE ptr_glFramebufferDrawBufferEXT #-}
ptr_glFramebufferDrawBufferEXT :: FunPtr (GLuint -> GLenum -> IO ())
ptr_glFramebufferDrawBufferEXT = unsafePerformIO $ getCommand "glFramebufferDrawBufferEXT"

-- glFramebufferDrawBuffersEXT -------------------------------------------------

glFramebufferDrawBuffersEXT
  :: GLuint -- ^ @framebuffer@ of type @Framebuffer@.
  -> GLsizei -- ^ @n@.
  -> Ptr GLenum -- ^ @bufs@ pointing to @n@ elements of type @DrawBufferMode@.
  -> IO ()
glFramebufferDrawBuffersEXT = dyn_glFramebufferDrawBuffersEXT ptr_glFramebufferDrawBuffersEXT

foreign import CALLCONV "dynamic" dyn_glFramebufferDrawBuffersEXT
  :: FunPtr (GLuint -> GLsizei -> Ptr GLenum -> IO ())
  ->         GLuint -> GLsizei -> Ptr GLenum -> IO ()

{-# NOINLINE ptr_glFramebufferDrawBuffersEXT #-}
ptr_glFramebufferDrawBuffersEXT :: FunPtr (GLuint -> GLsizei -> Ptr GLenum -> IO ())
ptr_glFramebufferDrawBuffersEXT = unsafePerformIO $ getCommand "glFramebufferDrawBuffersEXT"

-- glFramebufferParameteri -----------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glFramebufferParameteri.xhtml OpenGL 4.x>
glFramebufferParameteri
  :: GLenum -- ^ @target@.
  -> GLenum -- ^ @pname@.
  -> GLint -- ^ @param@.
  -> IO ()
glFramebufferParameteri = dyn_glFramebufferParameteri ptr_glFramebufferParameteri

foreign import CALLCONV "dynamic" dyn_glFramebufferParameteri
  :: FunPtr (GLenum -> GLenum -> GLint -> IO ())
  ->         GLenum -> GLenum -> GLint -> IO ()

{-# NOINLINE ptr_glFramebufferParameteri #-}
ptr_glFramebufferParameteri :: FunPtr (GLenum -> GLenum -> GLint -> IO ())
ptr_glFramebufferParameteri = unsafePerformIO $ getCommand "glFramebufferParameteri"

-- glFramebufferReadBufferEXT --------------------------------------------------

glFramebufferReadBufferEXT
  :: GLuint -- ^ @framebuffer@ of type @Framebuffer@.
  -> GLenum -- ^ @mode@ of type @ReadBufferMode@.
  -> IO ()
glFramebufferReadBufferEXT = dyn_glFramebufferReadBufferEXT ptr_glFramebufferReadBufferEXT

foreign import CALLCONV "dynamic" dyn_glFramebufferReadBufferEXT
  :: FunPtr (GLuint -> GLenum -> IO ())
  ->         GLuint -> GLenum -> IO ()

{-# NOINLINE ptr_glFramebufferReadBufferEXT #-}
ptr_glFramebufferReadBufferEXT :: FunPtr (GLuint -> GLenum -> IO ())
ptr_glFramebufferReadBufferEXT = unsafePerformIO $ getCommand "glFramebufferReadBufferEXT"

-- glFramebufferRenderbuffer ---------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glFramebufferRenderbuffer.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glFramebufferRenderbuffer.xhtml OpenGL 4.x>
glFramebufferRenderbuffer
  :: GLenum -- ^ @target@ of type @FramebufferTarget@.
  -> GLenum -- ^ @attachment@ of type @FramebufferAttachment@.
  -> GLenum -- ^ @renderbuffertarget@ of type @RenderbufferTarget@.
  -> GLuint -- ^ @renderbuffer@.
  -> IO ()
glFramebufferRenderbuffer = dyn_glFramebufferRenderbuffer ptr_glFramebufferRenderbuffer

foreign import CALLCONV "dynamic" dyn_glFramebufferRenderbuffer
  :: FunPtr (GLenum -> GLenum -> GLenum -> GLuint -> IO ())
  ->         GLenum -> GLenum -> GLenum -> GLuint -> IO ()

{-# NOINLINE ptr_glFramebufferRenderbuffer #-}
ptr_glFramebufferRenderbuffer :: FunPtr (GLenum -> GLenum -> GLenum -> GLuint -> IO ())
ptr_glFramebufferRenderbuffer = unsafePerformIO $ getCommand "glFramebufferRenderbuffer"

-- glFramebufferRenderbufferEXT ------------------------------------------------

glFramebufferRenderbufferEXT
  :: GLenum -- ^ @target@ of type @FramebufferTarget@.
  -> GLenum -- ^ @attachment@ of type @FramebufferAttachment@.
  -> GLenum -- ^ @renderbuffertarget@ of type @RenderbufferTarget@.
  -> GLuint -- ^ @renderbuffer@.
  -> IO ()
glFramebufferRenderbufferEXT = dyn_glFramebufferRenderbufferEXT ptr_glFramebufferRenderbufferEXT

foreign import CALLCONV "dynamic" dyn_glFramebufferRenderbufferEXT
  :: FunPtr (GLenum -> GLenum -> GLenum -> GLuint -> IO ())
  ->         GLenum -> GLenum -> GLenum -> GLuint -> IO ()

{-# NOINLINE ptr_glFramebufferRenderbufferEXT #-}
ptr_glFramebufferRenderbufferEXT :: FunPtr (GLenum -> GLenum -> GLenum -> GLuint -> IO ())
ptr_glFramebufferRenderbufferEXT = unsafePerformIO $ getCommand "glFramebufferRenderbufferEXT"

-- glFramebufferRenderbufferOES ------------------------------------------------

glFramebufferRenderbufferOES
  :: GLenum -- ^ @target@.
  -> GLenum -- ^ @attachment@.
  -> GLenum -- ^ @renderbuffertarget@.
  -> GLuint -- ^ @renderbuffer@.
  -> IO ()
glFramebufferRenderbufferOES = dyn_glFramebufferRenderbufferOES ptr_glFramebufferRenderbufferOES

foreign import CALLCONV "dynamic" dyn_glFramebufferRenderbufferOES
  :: FunPtr (GLenum -> GLenum -> GLenum -> GLuint -> IO ())
  ->         GLenum -> GLenum -> GLenum -> GLuint -> IO ()

{-# NOINLINE ptr_glFramebufferRenderbufferOES #-}
ptr_glFramebufferRenderbufferOES :: FunPtr (GLenum -> GLenum -> GLenum -> GLuint -> IO ())
ptr_glFramebufferRenderbufferOES = unsafePerformIO $ getCommand "glFramebufferRenderbufferOES"

-- glFramebufferSampleLocationsfvNV --------------------------------------------

glFramebufferSampleLocationsfvNV
  :: GLenum -- ^ @target@.
  -> GLuint -- ^ @start@.
  -> GLsizei -- ^ @count@.
  -> Ptr GLfloat -- ^ @v@.
  -> IO ()
glFramebufferSampleLocationsfvNV = dyn_glFramebufferSampleLocationsfvNV ptr_glFramebufferSampleLocationsfvNV

foreign import CALLCONV "dynamic" dyn_glFramebufferSampleLocationsfvNV
  :: FunPtr (GLenum -> GLuint -> GLsizei -> Ptr GLfloat -> IO ())
  ->         GLenum -> GLuint -> GLsizei -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glFramebufferSampleLocationsfvNV #-}
ptr_glFramebufferSampleLocationsfvNV :: FunPtr (GLenum -> GLuint -> GLsizei -> Ptr GLfloat -> IO ())
ptr_glFramebufferSampleLocationsfvNV = unsafePerformIO $ getCommand "glFramebufferSampleLocationsfvNV"

-- glFramebufferTexture --------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glFramebufferTexture.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glFramebufferTexture.xhtml OpenGL 4.x>
glFramebufferTexture
  :: GLenum -- ^ @target@.
  -> GLenum -- ^ @attachment@.
  -> GLuint -- ^ @texture@.
  -> GLint -- ^ @level@.
  -> IO ()
glFramebufferTexture = dyn_glFramebufferTexture ptr_glFramebufferTexture

foreign import CALLCONV "dynamic" dyn_glFramebufferTexture
  :: FunPtr (GLenum -> GLenum -> GLuint -> GLint -> IO ())
  ->         GLenum -> GLenum -> GLuint -> GLint -> IO ()

{-# NOINLINE ptr_glFramebufferTexture #-}
ptr_glFramebufferTexture :: FunPtr (GLenum -> GLenum -> GLuint -> GLint -> IO ())
ptr_glFramebufferTexture = unsafePerformIO $ getCommand "glFramebufferTexture"

-- glFramebufferTexture1D ------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glFramebufferTexture.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glFramebufferTexture.xhtml OpenGL 4.x>
glFramebufferTexture1D
  :: GLenum -- ^ @target@ of type @FramebufferTarget@.
  -> GLenum -- ^ @attachment@ of type @FramebufferAttachment@.
  -> GLenum -- ^ @textarget@.
  -> GLuint -- ^ @texture@.
  -> GLint -- ^ @level@.
  -> IO ()
glFramebufferTexture1D = dyn_glFramebufferTexture1D ptr_glFramebufferTexture1D

foreign import CALLCONV "dynamic" dyn_glFramebufferTexture1D
  :: FunPtr (GLenum -> GLenum -> GLenum -> GLuint -> GLint -> IO ())
  ->         GLenum -> GLenum -> GLenum -> GLuint -> GLint -> IO ()

{-# NOINLINE ptr_glFramebufferTexture1D #-}
ptr_glFramebufferTexture1D :: FunPtr (GLenum -> GLenum -> GLenum -> GLuint -> GLint -> IO ())
ptr_glFramebufferTexture1D = unsafePerformIO $ getCommand "glFramebufferTexture1D"

-- glFramebufferTexture1DEXT ---------------------------------------------------

glFramebufferTexture1DEXT
  :: GLenum -- ^ @target@ of type @FramebufferTarget@.
  -> GLenum -- ^ @attachment@ of type @FramebufferAttachment@.
  -> GLenum -- ^ @textarget@.
  -> GLuint -- ^ @texture@.
  -> GLint -- ^ @level@.
  -> IO ()
glFramebufferTexture1DEXT = dyn_glFramebufferTexture1DEXT ptr_glFramebufferTexture1DEXT

foreign import CALLCONV "dynamic" dyn_glFramebufferTexture1DEXT
  :: FunPtr (GLenum -> GLenum -> GLenum -> GLuint -> GLint -> IO ())
  ->         GLenum -> GLenum -> GLenum -> GLuint -> GLint -> IO ()

{-# NOINLINE ptr_glFramebufferTexture1DEXT #-}
ptr_glFramebufferTexture1DEXT :: FunPtr (GLenum -> GLenum -> GLenum -> GLuint -> GLint -> IO ())
ptr_glFramebufferTexture1DEXT = unsafePerformIO $ getCommand "glFramebufferTexture1DEXT"

-- glFramebufferTexture2D ------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glFramebufferTexture.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glFramebufferTexture.xhtml OpenGL 4.x>
glFramebufferTexture2D
  :: GLenum -- ^ @target@ of type @FramebufferTarget@.
  -> GLenum -- ^ @attachment@ of type @FramebufferAttachment@.
  -> GLenum -- ^ @textarget@.
  -> GLuint -- ^ @texture@.
  -> GLint -- ^ @level@.
  -> IO ()
glFramebufferTexture2D = dyn_glFramebufferTexture2D ptr_glFramebufferTexture2D

foreign import CALLCONV "dynamic" dyn_glFramebufferTexture2D
  :: FunPtr (GLenum -> GLenum -> GLenum -> GLuint -> GLint -> IO ())
  ->         GLenum -> GLenum -> GLenum -> GLuint -> GLint -> IO ()

{-# NOINLINE ptr_glFramebufferTexture2D #-}
ptr_glFramebufferTexture2D :: FunPtr (GLenum -> GLenum -> GLenum -> GLuint -> GLint -> IO ())
ptr_glFramebufferTexture2D = unsafePerformIO $ getCommand "glFramebufferTexture2D"

-- glFramebufferTexture2DEXT ---------------------------------------------------

glFramebufferTexture2DEXT
  :: GLenum -- ^ @target@ of type @FramebufferTarget@.
  -> GLenum -- ^ @attachment@ of type @FramebufferAttachment@.
  -> GLenum -- ^ @textarget@.
  -> GLuint -- ^ @texture@.
  -> GLint -- ^ @level@.
  -> IO ()
glFramebufferTexture2DEXT = dyn_glFramebufferTexture2DEXT ptr_glFramebufferTexture2DEXT

foreign import CALLCONV "dynamic" dyn_glFramebufferTexture2DEXT
  :: FunPtr (GLenum -> GLenum -> GLenum -> GLuint -> GLint -> IO ())
  ->         GLenum -> GLenum -> GLenum -> GLuint -> GLint -> IO ()

{-# NOINLINE ptr_glFramebufferTexture2DEXT #-}
ptr_glFramebufferTexture2DEXT :: FunPtr (GLenum -> GLenum -> GLenum -> GLuint -> GLint -> IO ())
ptr_glFramebufferTexture2DEXT = unsafePerformIO $ getCommand "glFramebufferTexture2DEXT"

-- glFramebufferTexture2DMultisampleEXT ----------------------------------------

glFramebufferTexture2DMultisampleEXT
  :: GLenum -- ^ @target@.
  -> GLenum -- ^ @attachment@.
  -> GLenum -- ^ @textarget@.
  -> GLuint -- ^ @texture@.
  -> GLint -- ^ @level@.
  -> GLsizei -- ^ @samples@.
  -> IO ()
glFramebufferTexture2DMultisampleEXT = dyn_glFramebufferTexture2DMultisampleEXT ptr_glFramebufferTexture2DMultisampleEXT

foreign import CALLCONV "dynamic" dyn_glFramebufferTexture2DMultisampleEXT
  :: FunPtr (GLenum -> GLenum -> GLenum -> GLuint -> GLint -> GLsizei -> IO ())
  ->         GLenum -> GLenum -> GLenum -> GLuint -> GLint -> GLsizei -> IO ()

{-# NOINLINE ptr_glFramebufferTexture2DMultisampleEXT #-}
ptr_glFramebufferTexture2DMultisampleEXT :: FunPtr (GLenum -> GLenum -> GLenum -> GLuint -> GLint -> GLsizei -> IO ())
ptr_glFramebufferTexture2DMultisampleEXT = unsafePerformIO $ getCommand "glFramebufferTexture2DMultisampleEXT"

-- glFramebufferTexture2DMultisampleIMG ----------------------------------------

glFramebufferTexture2DMultisampleIMG
  :: GLenum -- ^ @target@.
  -> GLenum -- ^ @attachment@.
  -> GLenum -- ^ @textarget@.
  -> GLuint -- ^ @texture@.
  -> GLint -- ^ @level@.
  -> GLsizei -- ^ @samples@.
  -> IO ()
glFramebufferTexture2DMultisampleIMG = dyn_glFramebufferTexture2DMultisampleIMG ptr_glFramebufferTexture2DMultisampleIMG

foreign import CALLCONV "dynamic" dyn_glFramebufferTexture2DMultisampleIMG
  :: FunPtr (GLenum -> GLenum -> GLenum -> GLuint -> GLint -> GLsizei -> IO ())
  ->         GLenum -> GLenum -> GLenum -> GLuint -> GLint -> GLsizei -> IO ()

{-# NOINLINE ptr_glFramebufferTexture2DMultisampleIMG #-}
ptr_glFramebufferTexture2DMultisampleIMG :: FunPtr (GLenum -> GLenum -> GLenum -> GLuint -> GLint -> GLsizei -> IO ())
ptr_glFramebufferTexture2DMultisampleIMG = unsafePerformIO $ getCommand "glFramebufferTexture2DMultisampleIMG"

-- glFramebufferTexture2DOES ---------------------------------------------------

glFramebufferTexture2DOES
  :: GLenum -- ^ @target@.
  -> GLenum -- ^ @attachment@.
  -> GLenum -- ^ @textarget@.
  -> GLuint -- ^ @texture@.
  -> GLint -- ^ @level@.
  -> IO ()
glFramebufferTexture2DOES = dyn_glFramebufferTexture2DOES ptr_glFramebufferTexture2DOES

foreign import CALLCONV "dynamic" dyn_glFramebufferTexture2DOES
  :: FunPtr (GLenum -> GLenum -> GLenum -> GLuint -> GLint -> IO ())
  ->         GLenum -> GLenum -> GLenum -> GLuint -> GLint -> IO ()

{-# NOINLINE ptr_glFramebufferTexture2DOES #-}
ptr_glFramebufferTexture2DOES :: FunPtr (GLenum -> GLenum -> GLenum -> GLuint -> GLint -> IO ())
ptr_glFramebufferTexture2DOES = unsafePerformIO $ getCommand "glFramebufferTexture2DOES"

-- glFramebufferTexture3D ------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glFramebufferTexture.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glFramebufferTexture.xhtml OpenGL 4.x>
glFramebufferTexture3D
  :: GLenum -- ^ @target@ of type @FramebufferTarget@.
  -> GLenum -- ^ @attachment@ of type @FramebufferAttachment@.
  -> GLenum -- ^ @textarget@.
  -> GLuint -- ^ @texture@.
  -> GLint -- ^ @level@.
  -> GLint -- ^ @zoffset@.
  -> IO ()
glFramebufferTexture3D = dyn_glFramebufferTexture3D ptr_glFramebufferTexture3D

foreign import CALLCONV "dynamic" dyn_glFramebufferTexture3D
  :: FunPtr (GLenum -> GLenum -> GLenum -> GLuint -> GLint -> GLint -> IO ())
  ->         GLenum -> GLenum -> GLenum -> GLuint -> GLint -> GLint -> IO ()

{-# NOINLINE ptr_glFramebufferTexture3D #-}
ptr_glFramebufferTexture3D :: FunPtr (GLenum -> GLenum -> GLenum -> GLuint -> GLint -> GLint -> IO ())
ptr_glFramebufferTexture3D = unsafePerformIO $ getCommand "glFramebufferTexture3D"

-- glFramebufferTexture3DEXT ---------------------------------------------------

glFramebufferTexture3DEXT
  :: GLenum -- ^ @target@ of type @FramebufferTarget@.
  -> GLenum -- ^ @attachment@ of type @FramebufferAttachment@.
  -> GLenum -- ^ @textarget@.
  -> GLuint -- ^ @texture@.
  -> GLint -- ^ @level@.
  -> GLint -- ^ @zoffset@.
  -> IO ()
glFramebufferTexture3DEXT = dyn_glFramebufferTexture3DEXT ptr_glFramebufferTexture3DEXT

foreign import CALLCONV "dynamic" dyn_glFramebufferTexture3DEXT
  :: FunPtr (GLenum -> GLenum -> GLenum -> GLuint -> GLint -> GLint -> IO ())
  ->         GLenum -> GLenum -> GLenum -> GLuint -> GLint -> GLint -> IO ()

{-# NOINLINE ptr_glFramebufferTexture3DEXT #-}
ptr_glFramebufferTexture3DEXT :: FunPtr (GLenum -> GLenum -> GLenum -> GLuint -> GLint -> GLint -> IO ())
ptr_glFramebufferTexture3DEXT = unsafePerformIO $ getCommand "glFramebufferTexture3DEXT"

-- glFramebufferTexture3DOES ---------------------------------------------------

glFramebufferTexture3DOES
  :: GLenum -- ^ @target@.
  -> GLenum -- ^ @attachment@.
  -> GLenum -- ^ @textarget@.
  -> GLuint -- ^ @texture@.
  -> GLint -- ^ @level@.
  -> GLint -- ^ @zoffset@.
  -> IO ()
glFramebufferTexture3DOES = dyn_glFramebufferTexture3DOES ptr_glFramebufferTexture3DOES

foreign import CALLCONV "dynamic" dyn_glFramebufferTexture3DOES
  :: FunPtr (GLenum -> GLenum -> GLenum -> GLuint -> GLint -> GLint -> IO ())
  ->         GLenum -> GLenum -> GLenum -> GLuint -> GLint -> GLint -> IO ()

{-# NOINLINE ptr_glFramebufferTexture3DOES #-}
ptr_glFramebufferTexture3DOES :: FunPtr (GLenum -> GLenum -> GLenum -> GLuint -> GLint -> GLint -> IO ())
ptr_glFramebufferTexture3DOES = unsafePerformIO $ getCommand "glFramebufferTexture3DOES"

-- glFramebufferTextureARB -----------------------------------------------------

glFramebufferTextureARB
  :: GLenum -- ^ @target@ of type @FramebufferTarget@.
  -> GLenum -- ^ @attachment@ of type @FramebufferAttachment@.
  -> GLuint -- ^ @texture@ of type @Texture@.
  -> GLint -- ^ @level@ of type @CheckedInt32@.
  -> IO ()
glFramebufferTextureARB = dyn_glFramebufferTextureARB ptr_glFramebufferTextureARB

foreign import CALLCONV "dynamic" dyn_glFramebufferTextureARB
  :: FunPtr (GLenum -> GLenum -> GLuint -> GLint -> IO ())
  ->         GLenum -> GLenum -> GLuint -> GLint -> IO ()

{-# NOINLINE ptr_glFramebufferTextureARB #-}
ptr_glFramebufferTextureARB :: FunPtr (GLenum -> GLenum -> GLuint -> GLint -> IO ())
ptr_glFramebufferTextureARB = unsafePerformIO $ getCommand "glFramebufferTextureARB"

-- glFramebufferTextureEXT -----------------------------------------------------

glFramebufferTextureEXT
  :: GLenum -- ^ @target@ of type @FramebufferTarget@.
  -> GLenum -- ^ @attachment@ of type @FramebufferAttachment@.
  -> GLuint -- ^ @texture@ of type @Texture@.
  -> GLint -- ^ @level@ of type @CheckedInt32@.
  -> IO ()
glFramebufferTextureEXT = dyn_glFramebufferTextureEXT ptr_glFramebufferTextureEXT

foreign import CALLCONV "dynamic" dyn_glFramebufferTextureEXT
  :: FunPtr (GLenum -> GLenum -> GLuint -> GLint -> IO ())
  ->         GLenum -> GLenum -> GLuint -> GLint -> IO ()

{-# NOINLINE ptr_glFramebufferTextureEXT #-}
ptr_glFramebufferTextureEXT :: FunPtr (GLenum -> GLenum -> GLuint -> GLint -> IO ())
ptr_glFramebufferTextureEXT = unsafePerformIO $ getCommand "glFramebufferTextureEXT"

-- glFramebufferTextureFaceARB -------------------------------------------------

glFramebufferTextureFaceARB
  :: GLenum -- ^ @target@ of type @FramebufferTarget@.
  -> GLenum -- ^ @attachment@ of type @FramebufferAttachment@.
  -> GLuint -- ^ @texture@ of type @Texture@.
  -> GLint -- ^ @level@ of type @CheckedInt32@.
  -> GLenum -- ^ @face@ of type @TextureTarget@.
  -> IO ()
glFramebufferTextureFaceARB = dyn_glFramebufferTextureFaceARB ptr_glFramebufferTextureFaceARB

foreign import CALLCONV "dynamic" dyn_glFramebufferTextureFaceARB
  :: FunPtr (GLenum -> GLenum -> GLuint -> GLint -> GLenum -> IO ())
  ->         GLenum -> GLenum -> GLuint -> GLint -> GLenum -> IO ()

{-# NOINLINE ptr_glFramebufferTextureFaceARB #-}
ptr_glFramebufferTextureFaceARB :: FunPtr (GLenum -> GLenum -> GLuint -> GLint -> GLenum -> IO ())
ptr_glFramebufferTextureFaceARB = unsafePerformIO $ getCommand "glFramebufferTextureFaceARB"

-- glFramebufferTextureFaceEXT -------------------------------------------------

glFramebufferTextureFaceEXT
  :: GLenum -- ^ @target@ of type @FramebufferTarget@.
  -> GLenum -- ^ @attachment@ of type @FramebufferAttachment@.
  -> GLuint -- ^ @texture@ of type @Texture@.
  -> GLint -- ^ @level@ of type @CheckedInt32@.
  -> GLenum -- ^ @face@ of type @TextureTarget@.
  -> IO ()
glFramebufferTextureFaceEXT = dyn_glFramebufferTextureFaceEXT ptr_glFramebufferTextureFaceEXT

foreign import CALLCONV "dynamic" dyn_glFramebufferTextureFaceEXT
  :: FunPtr (GLenum -> GLenum -> GLuint -> GLint -> GLenum -> IO ())
  ->         GLenum -> GLenum -> GLuint -> GLint -> GLenum -> IO ()

{-# NOINLINE ptr_glFramebufferTextureFaceEXT #-}
ptr_glFramebufferTextureFaceEXT :: FunPtr (GLenum -> GLenum -> GLuint -> GLint -> GLenum -> IO ())
ptr_glFramebufferTextureFaceEXT = unsafePerformIO $ getCommand "glFramebufferTextureFaceEXT"

-- glFramebufferTextureLayer ---------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glFramebufferTextureLayer.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glFramebufferTextureLayer.xhtml OpenGL 4.x>
glFramebufferTextureLayer
  :: GLenum -- ^ @target@ of type @FramebufferTarget@.
  -> GLenum -- ^ @attachment@ of type @FramebufferAttachment@.
  -> GLuint -- ^ @texture@ of type @Texture@.
  -> GLint -- ^ @level@ of type @CheckedInt32@.
  -> GLint -- ^ @layer@ of type @CheckedInt32@.
  -> IO ()
glFramebufferTextureLayer = dyn_glFramebufferTextureLayer ptr_glFramebufferTextureLayer

foreign import CALLCONV "dynamic" dyn_glFramebufferTextureLayer
  :: FunPtr (GLenum -> GLenum -> GLuint -> GLint -> GLint -> IO ())
  ->         GLenum -> GLenum -> GLuint -> GLint -> GLint -> IO ()

{-# NOINLINE ptr_glFramebufferTextureLayer #-}
ptr_glFramebufferTextureLayer :: FunPtr (GLenum -> GLenum -> GLuint -> GLint -> GLint -> IO ())
ptr_glFramebufferTextureLayer = unsafePerformIO $ getCommand "glFramebufferTextureLayer"

-- glFramebufferTextureLayerARB ------------------------------------------------

glFramebufferTextureLayerARB
  :: GLenum -- ^ @target@ of type @FramebufferTarget@.
  -> GLenum -- ^ @attachment@ of type @FramebufferAttachment@.
  -> GLuint -- ^ @texture@ of type @Texture@.
  -> GLint -- ^ @level@ of type @CheckedInt32@.
  -> GLint -- ^ @layer@ of type @CheckedInt32@.
  -> IO ()
glFramebufferTextureLayerARB = dyn_glFramebufferTextureLayerARB ptr_glFramebufferTextureLayerARB

foreign import CALLCONV "dynamic" dyn_glFramebufferTextureLayerARB
  :: FunPtr (GLenum -> GLenum -> GLuint -> GLint -> GLint -> IO ())
  ->         GLenum -> GLenum -> GLuint -> GLint -> GLint -> IO ()

{-# NOINLINE ptr_glFramebufferTextureLayerARB #-}
ptr_glFramebufferTextureLayerARB :: FunPtr (GLenum -> GLenum -> GLuint -> GLint -> GLint -> IO ())
ptr_glFramebufferTextureLayerARB = unsafePerformIO $ getCommand "glFramebufferTextureLayerARB"

-- glFramebufferTextureLayerEXT ------------------------------------------------

glFramebufferTextureLayerEXT
  :: GLenum -- ^ @target@ of type @FramebufferTarget@.
  -> GLenum -- ^ @attachment@ of type @FramebufferAttachment@.
  -> GLuint -- ^ @texture@ of type @Texture@.
  -> GLint -- ^ @level@ of type @CheckedInt32@.
  -> GLint -- ^ @layer@ of type @CheckedInt32@.
  -> IO ()
glFramebufferTextureLayerEXT = dyn_glFramebufferTextureLayerEXT ptr_glFramebufferTextureLayerEXT

foreign import CALLCONV "dynamic" dyn_glFramebufferTextureLayerEXT
  :: FunPtr (GLenum -> GLenum -> GLuint -> GLint -> GLint -> IO ())
  ->         GLenum -> GLenum -> GLuint -> GLint -> GLint -> IO ()

{-# NOINLINE ptr_glFramebufferTextureLayerEXT #-}
ptr_glFramebufferTextureLayerEXT :: FunPtr (GLenum -> GLenum -> GLuint -> GLint -> GLint -> IO ())
ptr_glFramebufferTextureLayerEXT = unsafePerformIO $ getCommand "glFramebufferTextureLayerEXT"

-- glFramebufferTextureOES -----------------------------------------------------

glFramebufferTextureOES
  :: GLenum -- ^ @target@ of type @FramebufferTarget@.
  -> GLenum -- ^ @attachment@ of type @FramebufferAttachment@.
  -> GLuint -- ^ @texture@ of type @Texture@.
  -> GLint -- ^ @level@ of type @CheckedInt32@.
  -> IO ()
glFramebufferTextureOES = dyn_glFramebufferTextureOES ptr_glFramebufferTextureOES

foreign import CALLCONV "dynamic" dyn_glFramebufferTextureOES
  :: FunPtr (GLenum -> GLenum -> GLuint -> GLint -> IO ())
  ->         GLenum -> GLenum -> GLuint -> GLint -> IO ()

{-# NOINLINE ptr_glFramebufferTextureOES #-}
ptr_glFramebufferTextureOES :: FunPtr (GLenum -> GLenum -> GLuint -> GLint -> IO ())
ptr_glFramebufferTextureOES = unsafePerformIO $ getCommand "glFramebufferTextureOES"

-- glFreeObjectBufferATI -------------------------------------------------------

glFreeObjectBufferATI
  :: GLuint -- ^ @buffer@.
  -> IO ()
glFreeObjectBufferATI = dyn_glFreeObjectBufferATI ptr_glFreeObjectBufferATI

foreign import CALLCONV "dynamic" dyn_glFreeObjectBufferATI
  :: FunPtr (GLuint -> IO ())
  ->         GLuint -> IO ()

{-# NOINLINE ptr_glFreeObjectBufferATI #-}
ptr_glFreeObjectBufferATI :: FunPtr (GLuint -> IO ())
ptr_glFreeObjectBufferATI = unsafePerformIO $ getCommand "glFreeObjectBufferATI"

-- glFrontFace -----------------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glFrontFace.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glFrontFace.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glFrontFace.xhtml OpenGL 4.x>
glFrontFace
  :: GLenum -- ^ @mode@ of type @FrontFaceDirection@.
  -> IO ()
glFrontFace = dyn_glFrontFace ptr_glFrontFace

foreign import CALLCONV "dynamic" dyn_glFrontFace
  :: FunPtr (GLenum -> IO ())
  ->         GLenum -> IO ()

{-# NOINLINE ptr_glFrontFace #-}
ptr_glFrontFace :: FunPtr (GLenum -> IO ())
ptr_glFrontFace = unsafePerformIO $ getCommand "glFrontFace"

-- glFrustum -------------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glFrustum.xml OpenGL 2.x>
glFrustum
  :: GLdouble -- ^ @left@.
  -> GLdouble -- ^ @right@.
  -> GLdouble -- ^ @bottom@.
  -> GLdouble -- ^ @top@.
  -> GLdouble -- ^ @zNear@.
  -> GLdouble -- ^ @zFar@.
  -> IO ()
glFrustum = dyn_glFrustum ptr_glFrustum

foreign import CALLCONV "dynamic" dyn_glFrustum
  :: FunPtr (GLdouble -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ())
  ->         GLdouble -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ()

{-# NOINLINE ptr_glFrustum #-}
ptr_glFrustum :: FunPtr (GLdouble -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ())
ptr_glFrustum = unsafePerformIO $ getCommand "glFrustum"

-- glFrustumf ------------------------------------------------------------------

glFrustumf
  :: GLfloat -- ^ @l@.
  -> GLfloat -- ^ @r@.
  -> GLfloat -- ^ @b@.
  -> GLfloat -- ^ @t@.
  -> GLfloat -- ^ @n@.
  -> GLfloat -- ^ @f@.
  -> IO ()
glFrustumf = dyn_glFrustumf ptr_glFrustumf

foreign import CALLCONV "dynamic" dyn_glFrustumf
  :: FunPtr (GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
  ->         GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ()

{-# NOINLINE ptr_glFrustumf #-}
ptr_glFrustumf :: FunPtr (GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
ptr_glFrustumf = unsafePerformIO $ getCommand "glFrustumf"

-- glFrustumfOES ---------------------------------------------------------------

glFrustumfOES
  :: GLfloat -- ^ @l@.
  -> GLfloat -- ^ @r@.
  -> GLfloat -- ^ @b@.
  -> GLfloat -- ^ @t@.
  -> GLfloat -- ^ @n@.
  -> GLfloat -- ^ @f@.
  -> IO ()
glFrustumfOES = dyn_glFrustumfOES ptr_glFrustumfOES

foreign import CALLCONV "dynamic" dyn_glFrustumfOES
  :: FunPtr (GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
  ->         GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ()

{-# NOINLINE ptr_glFrustumfOES #-}
ptr_glFrustumfOES :: FunPtr (GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
ptr_glFrustumfOES = unsafePerformIO $ getCommand "glFrustumfOES"

-- glFrustumx ------------------------------------------------------------------

glFrustumx
  :: GLfixed -- ^ @l@.
  -> GLfixed -- ^ @r@.
  -> GLfixed -- ^ @b@.
  -> GLfixed -- ^ @t@.
  -> GLfixed -- ^ @n@.
  -> GLfixed -- ^ @f@.
  -> IO ()
glFrustumx = dyn_glFrustumx ptr_glFrustumx

foreign import CALLCONV "dynamic" dyn_glFrustumx
  :: FunPtr (GLfixed -> GLfixed -> GLfixed -> GLfixed -> GLfixed -> GLfixed -> IO ())
  ->         GLfixed -> GLfixed -> GLfixed -> GLfixed -> GLfixed -> GLfixed -> IO ()

{-# NOINLINE ptr_glFrustumx #-}
ptr_glFrustumx :: FunPtr (GLfixed -> GLfixed -> GLfixed -> GLfixed -> GLfixed -> GLfixed -> IO ())
ptr_glFrustumx = unsafePerformIO $ getCommand "glFrustumx"

-- glFrustumxOES ---------------------------------------------------------------

glFrustumxOES
  :: GLfixed -- ^ @l@.
  -> GLfixed -- ^ @r@.
  -> GLfixed -- ^ @b@.
  -> GLfixed -- ^ @t@.
  -> GLfixed -- ^ @n@.
  -> GLfixed -- ^ @f@.
  -> IO ()
glFrustumxOES = dyn_glFrustumxOES ptr_glFrustumxOES

foreign import CALLCONV "dynamic" dyn_glFrustumxOES
  :: FunPtr (GLfixed -> GLfixed -> GLfixed -> GLfixed -> GLfixed -> GLfixed -> IO ())
  ->         GLfixed -> GLfixed -> GLfixed -> GLfixed -> GLfixed -> GLfixed -> IO ()

{-# NOINLINE ptr_glFrustumxOES #-}
ptr_glFrustumxOES :: FunPtr (GLfixed -> GLfixed -> GLfixed -> GLfixed -> GLfixed -> GLfixed -> IO ())
ptr_glFrustumxOES = unsafePerformIO $ getCommand "glFrustumxOES"

-- glGenAsyncMarkersSGIX -------------------------------------------------------

glGenAsyncMarkersSGIX
  :: GLsizei -- ^ @range@.
  -> IO GLuint
glGenAsyncMarkersSGIX = dyn_glGenAsyncMarkersSGIX ptr_glGenAsyncMarkersSGIX

foreign import CALLCONV "dynamic" dyn_glGenAsyncMarkersSGIX
  :: FunPtr (GLsizei -> IO GLuint)
  ->         GLsizei -> IO GLuint

{-# NOINLINE ptr_glGenAsyncMarkersSGIX #-}
ptr_glGenAsyncMarkersSGIX :: FunPtr (GLsizei -> IO GLuint)
ptr_glGenAsyncMarkersSGIX = unsafePerformIO $ getCommand "glGenAsyncMarkersSGIX"

-- glGenBuffers ----------------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glGenBuffers.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glGenBuffers.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glGenBuffers.xhtml OpenGL 4.x>
glGenBuffers
  :: GLsizei -- ^ @n@.
  -> Ptr GLuint -- ^ @buffers@ pointing to @n@ elements of type @GLuint@.
  -> IO ()
glGenBuffers = dyn_glGenBuffers ptr_glGenBuffers

foreign import CALLCONV "dynamic" dyn_glGenBuffers
  :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
  ->         GLsizei -> Ptr GLuint -> IO ()

{-# NOINLINE ptr_glGenBuffers #-}
ptr_glGenBuffers :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
ptr_glGenBuffers = unsafePerformIO $ getCommand "glGenBuffers"

-- glGenBuffersARB -------------------------------------------------------------

glGenBuffersARB
  :: GLsizei -- ^ @n@.
  -> Ptr GLuint -- ^ @buffers@ pointing to @n@ elements of type @GLuint@.
  -> IO ()
glGenBuffersARB = dyn_glGenBuffersARB ptr_glGenBuffersARB

foreign import CALLCONV "dynamic" dyn_glGenBuffersARB
  :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
  ->         GLsizei -> Ptr GLuint -> IO ()

{-# NOINLINE ptr_glGenBuffersARB #-}
ptr_glGenBuffersARB :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
ptr_glGenBuffersARB = unsafePerformIO $ getCommand "glGenBuffersARB"

-- glGenFencesAPPLE ------------------------------------------------------------

glGenFencesAPPLE
  :: GLsizei -- ^ @n@.
  -> Ptr GLuint -- ^ @fences@ pointing to @n@ elements of type @FenceNV@.
  -> IO ()
glGenFencesAPPLE = dyn_glGenFencesAPPLE ptr_glGenFencesAPPLE

foreign import CALLCONV "dynamic" dyn_glGenFencesAPPLE
  :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
  ->         GLsizei -> Ptr GLuint -> IO ()

{-# NOINLINE ptr_glGenFencesAPPLE #-}
ptr_glGenFencesAPPLE :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
ptr_glGenFencesAPPLE = unsafePerformIO $ getCommand "glGenFencesAPPLE"

-- glGenFencesNV ---------------------------------------------------------------

glGenFencesNV
  :: GLsizei -- ^ @n@.
  -> Ptr GLuint -- ^ @fences@ pointing to @n@ elements of type @FenceNV@.
  -> IO ()
glGenFencesNV = dyn_glGenFencesNV ptr_glGenFencesNV

foreign import CALLCONV "dynamic" dyn_glGenFencesNV
  :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
  ->         GLsizei -> Ptr GLuint -> IO ()

{-# NOINLINE ptr_glGenFencesNV #-}
ptr_glGenFencesNV :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
ptr_glGenFencesNV = unsafePerformIO $ getCommand "glGenFencesNV"

-- glGenFragmentShadersATI -----------------------------------------------------

glGenFragmentShadersATI
  :: GLuint -- ^ @range@.
  -> IO GLuint
glGenFragmentShadersATI = dyn_glGenFragmentShadersATI ptr_glGenFragmentShadersATI

foreign import CALLCONV "dynamic" dyn_glGenFragmentShadersATI
  :: FunPtr (GLuint -> IO GLuint)
  ->         GLuint -> IO GLuint

{-# NOINLINE ptr_glGenFragmentShadersATI #-}
ptr_glGenFragmentShadersATI :: FunPtr (GLuint -> IO GLuint)
ptr_glGenFragmentShadersATI = unsafePerformIO $ getCommand "glGenFragmentShadersATI"

-- glGenFramebuffers -----------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glGenFramebuffers.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glGenFramebuffers.xhtml OpenGL 4.x>
glGenFramebuffers
  :: GLsizei -- ^ @n@.
  -> Ptr GLuint -- ^ @framebuffers@ pointing to @n@ elements of type @GLuint@.
  -> IO ()
glGenFramebuffers = dyn_glGenFramebuffers ptr_glGenFramebuffers

foreign import CALLCONV "dynamic" dyn_glGenFramebuffers
  :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
  ->         GLsizei -> Ptr GLuint -> IO ()

{-# NOINLINE ptr_glGenFramebuffers #-}
ptr_glGenFramebuffers :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
ptr_glGenFramebuffers = unsafePerformIO $ getCommand "glGenFramebuffers"

-- glGenFramebuffersEXT --------------------------------------------------------

glGenFramebuffersEXT
  :: GLsizei -- ^ @n@.
  -> Ptr GLuint -- ^ @framebuffers@ pointing to @n@ elements of type @GLuint@.
  -> IO ()
glGenFramebuffersEXT = dyn_glGenFramebuffersEXT ptr_glGenFramebuffersEXT

foreign import CALLCONV "dynamic" dyn_glGenFramebuffersEXT
  :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
  ->         GLsizei -> Ptr GLuint -> IO ()

{-# NOINLINE ptr_glGenFramebuffersEXT #-}
ptr_glGenFramebuffersEXT :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
ptr_glGenFramebuffersEXT = unsafePerformIO $ getCommand "glGenFramebuffersEXT"

-- glGenFramebuffersOES --------------------------------------------------------

glGenFramebuffersOES
  :: GLsizei -- ^ @n@.
  -> Ptr GLuint -- ^ @framebuffers@ pointing to @n@ elements of type @GLuint@.
  -> IO ()
glGenFramebuffersOES = dyn_glGenFramebuffersOES ptr_glGenFramebuffersOES

foreign import CALLCONV "dynamic" dyn_glGenFramebuffersOES
  :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
  ->         GLsizei -> Ptr GLuint -> IO ()

{-# NOINLINE ptr_glGenFramebuffersOES #-}
ptr_glGenFramebuffersOES :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
ptr_glGenFramebuffersOES = unsafePerformIO $ getCommand "glGenFramebuffersOES"

-- glGenLists ------------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glGenLists.xml OpenGL 2.x>
glGenLists
  :: GLsizei -- ^ @range@.
  -> IO GLuint -- ^ of type @List@.
glGenLists = dyn_glGenLists ptr_glGenLists

foreign import CALLCONV "dynamic" dyn_glGenLists
  :: FunPtr (GLsizei -> IO GLuint)
  ->         GLsizei -> IO GLuint

{-# NOINLINE ptr_glGenLists #-}
ptr_glGenLists :: FunPtr (GLsizei -> IO GLuint)
ptr_glGenLists = unsafePerformIO $ getCommand "glGenLists"

-- glGenNamesAMD ---------------------------------------------------------------

glGenNamesAMD
  :: GLenum -- ^ @identifier@.
  -> GLuint -- ^ @num@.
  -> Ptr GLuint -- ^ @names@ pointing to @num@ elements of type @GLuint@.
  -> IO ()
glGenNamesAMD = dyn_glGenNamesAMD ptr_glGenNamesAMD

foreign import CALLCONV "dynamic" dyn_glGenNamesAMD
  :: FunPtr (GLenum -> GLuint -> Ptr GLuint -> IO ())
  ->         GLenum -> GLuint -> Ptr GLuint -> IO ()

{-# NOINLINE ptr_glGenNamesAMD #-}
ptr_glGenNamesAMD :: FunPtr (GLenum -> GLuint -> Ptr GLuint -> IO ())
ptr_glGenNamesAMD = unsafePerformIO $ getCommand "glGenNamesAMD"

-- glGenOcclusionQueriesNV -----------------------------------------------------

glGenOcclusionQueriesNV
  :: GLsizei -- ^ @n@.
  -> Ptr GLuint -- ^ @ids@ pointing to @n@ elements of type @GLuint@.
  -> IO ()
glGenOcclusionQueriesNV = dyn_glGenOcclusionQueriesNV ptr_glGenOcclusionQueriesNV

foreign import CALLCONV "dynamic" dyn_glGenOcclusionQueriesNV
  :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
  ->         GLsizei -> Ptr GLuint -> IO ()

{-# NOINLINE ptr_glGenOcclusionQueriesNV #-}
ptr_glGenOcclusionQueriesNV :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
ptr_glGenOcclusionQueriesNV = unsafePerformIO $ getCommand "glGenOcclusionQueriesNV"

-- glGenPathsNV ----------------------------------------------------------------

glGenPathsNV
  :: GLsizei -- ^ @range@.
  -> IO GLuint -- ^ of type @Path@.
glGenPathsNV = dyn_glGenPathsNV ptr_glGenPathsNV

foreign import CALLCONV "dynamic" dyn_glGenPathsNV
  :: FunPtr (GLsizei -> IO GLuint)
  ->         GLsizei -> IO GLuint

{-# NOINLINE ptr_glGenPathsNV #-}
ptr_glGenPathsNV :: FunPtr (GLsizei -> IO GLuint)
ptr_glGenPathsNV = unsafePerformIO $ getCommand "glGenPathsNV"

-- glGenPerfMonitorsAMD --------------------------------------------------------

glGenPerfMonitorsAMD
  :: GLsizei -- ^ @n@.
  -> Ptr GLuint -- ^ @monitors@ pointing to @n@ elements of type @GLuint@.
  -> IO ()
glGenPerfMonitorsAMD = dyn_glGenPerfMonitorsAMD ptr_glGenPerfMonitorsAMD

foreign import CALLCONV "dynamic" dyn_glGenPerfMonitorsAMD
  :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
  ->         GLsizei -> Ptr GLuint -> IO ()

{-# NOINLINE ptr_glGenPerfMonitorsAMD #-}
ptr_glGenPerfMonitorsAMD :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
ptr_glGenPerfMonitorsAMD = unsafePerformIO $ getCommand "glGenPerfMonitorsAMD"

-- glGenProgramPipelines -------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glGenProgramPipelines.xhtml OpenGL 4.x>
glGenProgramPipelines
  :: GLsizei -- ^ @n@.
  -> Ptr GLuint -- ^ @pipelines@ pointing to @n@ elements of type @GLuint@.
  -> IO ()
glGenProgramPipelines = dyn_glGenProgramPipelines ptr_glGenProgramPipelines

foreign import CALLCONV "dynamic" dyn_glGenProgramPipelines
  :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
  ->         GLsizei -> Ptr GLuint -> IO ()

{-# NOINLINE ptr_glGenProgramPipelines #-}
ptr_glGenProgramPipelines :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
ptr_glGenProgramPipelines = unsafePerformIO $ getCommand "glGenProgramPipelines"

-- glGenProgramPipelinesEXT ----------------------------------------------------

glGenProgramPipelinesEXT
  :: GLsizei -- ^ @n@.
  -> Ptr GLuint -- ^ @pipelines@ pointing to @n@ elements of type @GLuint@.
  -> IO ()
glGenProgramPipelinesEXT = dyn_glGenProgramPipelinesEXT ptr_glGenProgramPipelinesEXT

foreign import CALLCONV "dynamic" dyn_glGenProgramPipelinesEXT
  :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
  ->         GLsizei -> Ptr GLuint -> IO ()

{-# NOINLINE ptr_glGenProgramPipelinesEXT #-}
ptr_glGenProgramPipelinesEXT :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
ptr_glGenProgramPipelinesEXT = unsafePerformIO $ getCommand "glGenProgramPipelinesEXT"

-- glGenProgramsARB ------------------------------------------------------------

glGenProgramsARB
  :: GLsizei -- ^ @n@.
  -> Ptr GLuint -- ^ @programs@ pointing to @n@ elements of type @GLuint@.
  -> IO ()
glGenProgramsARB = dyn_glGenProgramsARB ptr_glGenProgramsARB

foreign import CALLCONV "dynamic" dyn_glGenProgramsARB
  :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
  ->         GLsizei -> Ptr GLuint -> IO ()

{-# NOINLINE ptr_glGenProgramsARB #-}
ptr_glGenProgramsARB :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
ptr_glGenProgramsARB = unsafePerformIO $ getCommand "glGenProgramsARB"

-- glGenProgramsNV -------------------------------------------------------------

glGenProgramsNV
  :: GLsizei -- ^ @n@.
  -> Ptr GLuint -- ^ @programs@ pointing to @n@ elements of type @GLuint@.
  -> IO ()
glGenProgramsNV = dyn_glGenProgramsNV ptr_glGenProgramsNV

foreign import CALLCONV "dynamic" dyn_glGenProgramsNV
  :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
  ->         GLsizei -> Ptr GLuint -> IO ()

{-# NOINLINE ptr_glGenProgramsNV #-}
ptr_glGenProgramsNV :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
ptr_glGenProgramsNV = unsafePerformIO $ getCommand "glGenProgramsNV"

-- glGenQueries ----------------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glGenQueries.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glGenQueries.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glGenQueries.xhtml OpenGL 4.x>
glGenQueries
  :: GLsizei -- ^ @n@.
  -> Ptr GLuint -- ^ @ids@ pointing to @n@ elements of type @GLuint@.
  -> IO ()
glGenQueries = dyn_glGenQueries ptr_glGenQueries

foreign import CALLCONV "dynamic" dyn_glGenQueries
  :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
  ->         GLsizei -> Ptr GLuint -> IO ()

{-# NOINLINE ptr_glGenQueries #-}
ptr_glGenQueries :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
ptr_glGenQueries = unsafePerformIO $ getCommand "glGenQueries"

-- glGenQueriesARB -------------------------------------------------------------

glGenQueriesARB
  :: GLsizei -- ^ @n@.
  -> Ptr GLuint -- ^ @ids@ pointing to @n@ elements of type @GLuint@.
  -> IO ()
glGenQueriesARB = dyn_glGenQueriesARB ptr_glGenQueriesARB

foreign import CALLCONV "dynamic" dyn_glGenQueriesARB
  :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
  ->         GLsizei -> Ptr GLuint -> IO ()

{-# NOINLINE ptr_glGenQueriesARB #-}
ptr_glGenQueriesARB :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
ptr_glGenQueriesARB = unsafePerformIO $ getCommand "glGenQueriesARB"

-- glGenQueriesEXT -------------------------------------------------------------

glGenQueriesEXT
  :: GLsizei -- ^ @n@.
  -> Ptr GLuint -- ^ @ids@ pointing to @n@ elements of type @GLuint@.
  -> IO ()
glGenQueriesEXT = dyn_glGenQueriesEXT ptr_glGenQueriesEXT

foreign import CALLCONV "dynamic" dyn_glGenQueriesEXT
  :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
  ->         GLsizei -> Ptr GLuint -> IO ()

{-# NOINLINE ptr_glGenQueriesEXT #-}
ptr_glGenQueriesEXT :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
ptr_glGenQueriesEXT = unsafePerformIO $ getCommand "glGenQueriesEXT"

-- glGenRenderbuffers ----------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glGenRenderbuffers.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glGenRenderbuffers.xhtml OpenGL 4.x>
glGenRenderbuffers
  :: GLsizei -- ^ @n@.
  -> Ptr GLuint -- ^ @renderbuffers@ pointing to @n@ elements of type @GLuint@.
  -> IO ()
glGenRenderbuffers = dyn_glGenRenderbuffers ptr_glGenRenderbuffers

foreign import CALLCONV "dynamic" dyn_glGenRenderbuffers
  :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
  ->         GLsizei -> Ptr GLuint -> IO ()

{-# NOINLINE ptr_glGenRenderbuffers #-}
ptr_glGenRenderbuffers :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
ptr_glGenRenderbuffers = unsafePerformIO $ getCommand "glGenRenderbuffers"

-- glGenRenderbuffersEXT -------------------------------------------------------

glGenRenderbuffersEXT
  :: GLsizei -- ^ @n@.
  -> Ptr GLuint -- ^ @renderbuffers@ pointing to @n@ elements of type @GLuint@.
  -> IO ()
glGenRenderbuffersEXT = dyn_glGenRenderbuffersEXT ptr_glGenRenderbuffersEXT

foreign import CALLCONV "dynamic" dyn_glGenRenderbuffersEXT
  :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
  ->         GLsizei -> Ptr GLuint -> IO ()

{-# NOINLINE ptr_glGenRenderbuffersEXT #-}
ptr_glGenRenderbuffersEXT :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
ptr_glGenRenderbuffersEXT = unsafePerformIO $ getCommand "glGenRenderbuffersEXT"

-- glGenRenderbuffersOES -------------------------------------------------------

glGenRenderbuffersOES
  :: GLsizei -- ^ @n@.
  -> Ptr GLuint -- ^ @renderbuffers@ pointing to @n@ elements of type @GLuint@.
  -> IO ()
glGenRenderbuffersOES = dyn_glGenRenderbuffersOES ptr_glGenRenderbuffersOES

foreign import CALLCONV "dynamic" dyn_glGenRenderbuffersOES
  :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
  ->         GLsizei -> Ptr GLuint -> IO ()

{-# NOINLINE ptr_glGenRenderbuffersOES #-}
ptr_glGenRenderbuffersOES :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
ptr_glGenRenderbuffersOES = unsafePerformIO $ getCommand "glGenRenderbuffersOES"

-- glGenSamplers ---------------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glGenSamplers.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glGenSamplers.xhtml OpenGL 4.x>
glGenSamplers
  :: GLsizei -- ^ @count@.
  -> Ptr GLuint -- ^ @samplers@ pointing to @count@ elements of type @GLuint@.
  -> IO ()
glGenSamplers = dyn_glGenSamplers ptr_glGenSamplers

foreign import CALLCONV "dynamic" dyn_glGenSamplers
  :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
  ->         GLsizei -> Ptr GLuint -> IO ()

{-# NOINLINE ptr_glGenSamplers #-}
ptr_glGenSamplers :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
ptr_glGenSamplers = unsafePerformIO $ getCommand "glGenSamplers"

-- glGenSymbolsEXT -------------------------------------------------------------

glGenSymbolsEXT
  :: GLenum -- ^ @datatype@ of type @DataTypeEXT@.
  -> GLenum -- ^ @storagetype@ of type @VertexShaderStorageTypeEXT@.
  -> GLenum -- ^ @range@ of type @ParameterRangeEXT@.
  -> GLuint -- ^ @components@.
  -> IO GLuint
glGenSymbolsEXT = dyn_glGenSymbolsEXT ptr_glGenSymbolsEXT

foreign import CALLCONV "dynamic" dyn_glGenSymbolsEXT
  :: FunPtr (GLenum -> GLenum -> GLenum -> GLuint -> IO GLuint)
  ->         GLenum -> GLenum -> GLenum -> GLuint -> IO GLuint

{-# NOINLINE ptr_glGenSymbolsEXT #-}
ptr_glGenSymbolsEXT :: FunPtr (GLenum -> GLenum -> GLenum -> GLuint -> IO GLuint)
ptr_glGenSymbolsEXT = unsafePerformIO $ getCommand "glGenSymbolsEXT"

-- glGenTextures ---------------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glGenTextures.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glGenTextures.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glGenTextures.xhtml OpenGL 4.x>
glGenTextures
  :: GLsizei -- ^ @n@.
  -> Ptr GLuint -- ^ @textures@ pointing to @n@ elements of type @Texture@.
  -> IO ()
glGenTextures = dyn_glGenTextures ptr_glGenTextures

foreign import CALLCONV "dynamic" dyn_glGenTextures
  :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
  ->         GLsizei -> Ptr GLuint -> IO ()

{-# NOINLINE ptr_glGenTextures #-}
ptr_glGenTextures :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
ptr_glGenTextures = unsafePerformIO $ getCommand "glGenTextures"

-- glGenTexturesEXT ------------------------------------------------------------

glGenTexturesEXT
  :: GLsizei -- ^ @n@.
  -> Ptr GLuint -- ^ @textures@ pointing to @n@ elements of type @Texture@.
  -> IO ()
glGenTexturesEXT = dyn_glGenTexturesEXT ptr_glGenTexturesEXT

foreign import CALLCONV "dynamic" dyn_glGenTexturesEXT
  :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
  ->         GLsizei -> Ptr GLuint -> IO ()

{-# NOINLINE ptr_glGenTexturesEXT #-}
ptr_glGenTexturesEXT :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
ptr_glGenTexturesEXT = unsafePerformIO $ getCommand "glGenTexturesEXT"

-- glGenTransformFeedbacks -----------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glGenTransformFeedbacks.xhtml OpenGL 4.x>
glGenTransformFeedbacks
  :: GLsizei -- ^ @n@.
  -> Ptr GLuint -- ^ @ids@ pointing to @n@ elements of type @GLuint@.
  -> IO ()
glGenTransformFeedbacks = dyn_glGenTransformFeedbacks ptr_glGenTransformFeedbacks

foreign import CALLCONV "dynamic" dyn_glGenTransformFeedbacks
  :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
  ->         GLsizei -> Ptr GLuint -> IO ()

{-# NOINLINE ptr_glGenTransformFeedbacks #-}
ptr_glGenTransformFeedbacks :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
ptr_glGenTransformFeedbacks = unsafePerformIO $ getCommand "glGenTransformFeedbacks"

-- glGenTransformFeedbacksNV ---------------------------------------------------

glGenTransformFeedbacksNV
  :: GLsizei -- ^ @n@.
  -> Ptr GLuint -- ^ @ids@ pointing to @n@ elements of type @GLuint@.
  -> IO ()
glGenTransformFeedbacksNV = dyn_glGenTransformFeedbacksNV ptr_glGenTransformFeedbacksNV

foreign import CALLCONV "dynamic" dyn_glGenTransformFeedbacksNV
  :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
  ->         GLsizei -> Ptr GLuint -> IO ()

{-# NOINLINE ptr_glGenTransformFeedbacksNV #-}
ptr_glGenTransformFeedbacksNV :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
ptr_glGenTransformFeedbacksNV = unsafePerformIO $ getCommand "glGenTransformFeedbacksNV"

-- glGenVertexArrays -----------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glGenVertexArrays.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glGenVertexArrays.xhtml OpenGL 4.x>
glGenVertexArrays
  :: GLsizei -- ^ @n@.
  -> Ptr GLuint -- ^ @arrays@ pointing to @n@ elements of type @GLuint@.
  -> IO ()
glGenVertexArrays = dyn_glGenVertexArrays ptr_glGenVertexArrays

foreign import CALLCONV "dynamic" dyn_glGenVertexArrays
  :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
  ->         GLsizei -> Ptr GLuint -> IO ()

{-# NOINLINE ptr_glGenVertexArrays #-}
ptr_glGenVertexArrays :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
ptr_glGenVertexArrays = unsafePerformIO $ getCommand "glGenVertexArrays"

-- glGenVertexArraysAPPLE ------------------------------------------------------

glGenVertexArraysAPPLE
  :: GLsizei -- ^ @n@.
  -> Ptr GLuint -- ^ @arrays@ pointing to @n@ elements of type @GLuint@.
  -> IO ()
glGenVertexArraysAPPLE = dyn_glGenVertexArraysAPPLE ptr_glGenVertexArraysAPPLE

foreign import CALLCONV "dynamic" dyn_glGenVertexArraysAPPLE
  :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
  ->         GLsizei -> Ptr GLuint -> IO ()

{-# NOINLINE ptr_glGenVertexArraysAPPLE #-}
ptr_glGenVertexArraysAPPLE :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
ptr_glGenVertexArraysAPPLE = unsafePerformIO $ getCommand "glGenVertexArraysAPPLE"

-- glGenVertexArraysOES --------------------------------------------------------

glGenVertexArraysOES
  :: GLsizei -- ^ @n@.
  -> Ptr GLuint -- ^ @arrays@ pointing to @n@ elements of type @GLuint@.
  -> IO ()
glGenVertexArraysOES = dyn_glGenVertexArraysOES ptr_glGenVertexArraysOES

foreign import CALLCONV "dynamic" dyn_glGenVertexArraysOES
  :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
  ->         GLsizei -> Ptr GLuint -> IO ()

{-# NOINLINE ptr_glGenVertexArraysOES #-}
ptr_glGenVertexArraysOES :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
ptr_glGenVertexArraysOES = unsafePerformIO $ getCommand "glGenVertexArraysOES"

-- glGenVertexShadersEXT -------------------------------------------------------

glGenVertexShadersEXT
  :: GLuint -- ^ @range@.
  -> IO GLuint
glGenVertexShadersEXT = dyn_glGenVertexShadersEXT ptr_glGenVertexShadersEXT

foreign import CALLCONV "dynamic" dyn_glGenVertexShadersEXT
  :: FunPtr (GLuint -> IO GLuint)
  ->         GLuint -> IO GLuint

{-# NOINLINE ptr_glGenVertexShadersEXT #-}
ptr_glGenVertexShadersEXT :: FunPtr (GLuint -> IO GLuint)
ptr_glGenVertexShadersEXT = unsafePerformIO $ getCommand "glGenVertexShadersEXT"

-- glGenerateMipmap ------------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glGenerateMipmap.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glGenerateMipmap.xhtml OpenGL 4.x>
glGenerateMipmap
  :: GLenum -- ^ @target@.
  -> IO ()
glGenerateMipmap = dyn_glGenerateMipmap ptr_glGenerateMipmap

foreign import CALLCONV "dynamic" dyn_glGenerateMipmap
  :: FunPtr (GLenum -> IO ())
  ->         GLenum -> IO ()

{-# NOINLINE ptr_glGenerateMipmap #-}
ptr_glGenerateMipmap :: FunPtr (GLenum -> IO ())
ptr_glGenerateMipmap = unsafePerformIO $ getCommand "glGenerateMipmap"

-- glGenerateMipmapEXT ---------------------------------------------------------

glGenerateMipmapEXT
  :: GLenum -- ^ @target@.
  -> IO ()
glGenerateMipmapEXT = dyn_glGenerateMipmapEXT ptr_glGenerateMipmapEXT

foreign import CALLCONV "dynamic" dyn_glGenerateMipmapEXT
  :: FunPtr (GLenum -> IO ())
  ->         GLenum -> IO ()

{-# NOINLINE ptr_glGenerateMipmapEXT #-}
ptr_glGenerateMipmapEXT :: FunPtr (GLenum -> IO ())
ptr_glGenerateMipmapEXT = unsafePerformIO $ getCommand "glGenerateMipmapEXT"

-- glGenerateMipmapOES ---------------------------------------------------------

glGenerateMipmapOES
  :: GLenum -- ^ @target@.
  -> IO ()
glGenerateMipmapOES = dyn_glGenerateMipmapOES ptr_glGenerateMipmapOES

foreign import CALLCONV "dynamic" dyn_glGenerateMipmapOES
  :: FunPtr (GLenum -> IO ())
  ->         GLenum -> IO ()

{-# NOINLINE ptr_glGenerateMipmapOES #-}
ptr_glGenerateMipmapOES :: FunPtr (GLenum -> IO ())
ptr_glGenerateMipmapOES = unsafePerformIO $ getCommand "glGenerateMipmapOES"

-- glGenerateMultiTexMipmapEXT -------------------------------------------------

glGenerateMultiTexMipmapEXT
  :: GLenum -- ^ @texunit@ of type @TextureUnit@.
  -> GLenum -- ^ @target@ of type @TextureTarget@.
  -> IO ()
glGenerateMultiTexMipmapEXT = dyn_glGenerateMultiTexMipmapEXT ptr_glGenerateMultiTexMipmapEXT

foreign import CALLCONV "dynamic" dyn_glGenerateMultiTexMipmapEXT
  :: FunPtr (GLenum -> GLenum -> IO ())
  ->         GLenum -> GLenum -> IO ()

{-# NOINLINE ptr_glGenerateMultiTexMipmapEXT #-}
ptr_glGenerateMultiTexMipmapEXT :: FunPtr (GLenum -> GLenum -> IO ())
ptr_glGenerateMultiTexMipmapEXT = unsafePerformIO $ getCommand "glGenerateMultiTexMipmapEXT"

-- glGenerateTextureMipmap -----------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glGenerateMipmap.xhtml OpenGL 4.x>
glGenerateTextureMipmap
  :: GLuint -- ^ @texture@.
  -> IO ()
glGenerateTextureMipmap = dyn_glGenerateTextureMipmap ptr_glGenerateTextureMipmap

foreign import CALLCONV "dynamic" dyn_glGenerateTextureMipmap
  :: FunPtr (GLuint -> IO ())
  ->         GLuint -> IO ()

{-# NOINLINE ptr_glGenerateTextureMipmap #-}
ptr_glGenerateTextureMipmap :: FunPtr (GLuint -> IO ())
ptr_glGenerateTextureMipmap = unsafePerformIO $ getCommand "glGenerateTextureMipmap"

-- glGenerateTextureMipmapEXT --------------------------------------------------

glGenerateTextureMipmapEXT
  :: GLuint -- ^ @texture@ of type @Texture@.
  -> GLenum -- ^ @target@ of type @TextureTarget@.
  -> IO ()
glGenerateTextureMipmapEXT = dyn_glGenerateTextureMipmapEXT ptr_glGenerateTextureMipmapEXT

foreign import CALLCONV "dynamic" dyn_glGenerateTextureMipmapEXT
  :: FunPtr (GLuint -> GLenum -> IO ())
  ->         GLuint -> GLenum -> IO ()

{-# NOINLINE ptr_glGenerateTextureMipmapEXT #-}
ptr_glGenerateTextureMipmapEXT :: FunPtr (GLuint -> GLenum -> IO ())
ptr_glGenerateTextureMipmapEXT = unsafePerformIO $ getCommand "glGenerateTextureMipmapEXT"

-- glGetActiveAtomicCounterBufferiv --------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glGetActiveAtomicCounterBufferiv.xhtml OpenGL 4.x>
glGetActiveAtomicCounterBufferiv
  :: GLuint -- ^ @program@.
  -> GLuint -- ^ @bufferIndex@.
  -> GLenum -- ^ @pname@.
  -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLint@.
  -> IO ()
glGetActiveAtomicCounterBufferiv = dyn_glGetActiveAtomicCounterBufferiv ptr_glGetActiveAtomicCounterBufferiv

foreign import CALLCONV "dynamic" dyn_glGetActiveAtomicCounterBufferiv
  :: FunPtr (GLuint -> GLuint -> GLenum -> Ptr GLint -> IO ())
  ->         GLuint -> GLuint -> GLenum -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glGetActiveAtomicCounterBufferiv #-}
ptr_glGetActiveAtomicCounterBufferiv :: FunPtr (GLuint -> GLuint -> GLenum -> Ptr GLint -> IO ())
ptr_glGetActiveAtomicCounterBufferiv = unsafePerformIO $ getCommand "glGetActiveAtomicCounterBufferiv"

-- glGetActiveAttrib -----------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glGetActiveAttrib.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glGetActiveAttrib.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glGetActiveAttrib.xhtml OpenGL 4.x>
glGetActiveAttrib
  :: GLuint -- ^ @program@.
  -> GLuint -- ^ @index@.
  -> GLsizei -- ^ @bufSize@.
  -> Ptr GLsizei -- ^ @length@ pointing to @1@ elements of type @GLsizei@.
  -> Ptr GLint -- ^ @size@ pointing to @1@ elements of type @GLint@.
  -> Ptr GLenum -- ^ @type@ pointing to @1@ elements of type @GLenum@.
  -> Ptr GLchar -- ^ @name@ pointing to @bufSize@ elements of type @GLchar@.
  -> IO ()
glGetActiveAttrib = dyn_glGetActiveAttrib ptr_glGetActiveAttrib

foreign import CALLCONV "dynamic" dyn_glGetActiveAttrib
  :: FunPtr (GLuint -> GLuint -> GLsizei -> Ptr GLsizei -> Ptr GLint -> Ptr GLenum -> Ptr GLchar -> IO ())
  ->         GLuint -> GLuint -> GLsizei -> Ptr GLsizei -> Ptr GLint -> Ptr GLenum -> Ptr GLchar -> IO ()

{-# NOINLINE ptr_glGetActiveAttrib #-}
ptr_glGetActiveAttrib :: FunPtr (GLuint -> GLuint -> GLsizei -> Ptr GLsizei -> Ptr GLint -> Ptr GLenum -> Ptr GLchar -> IO ())
ptr_glGetActiveAttrib = unsafePerformIO $ getCommand "glGetActiveAttrib"

-- glGetActiveAttribARB --------------------------------------------------------

glGetActiveAttribARB
  :: GLhandleARB -- ^ @programObj@ of type @handleARB@.
  -> GLuint -- ^ @index@.
  -> GLsizei -- ^ @maxLength@.
  -> Ptr GLsizei -- ^ @length@ pointing to @1@ elements of type @GLsizei@.
  -> Ptr GLint -- ^ @size@ pointing to @1@ elements of type @GLint@.
  -> Ptr GLenum -- ^ @type@ pointing to @1@ elements of type @GLenum@.
  -> Ptr GLcharARB -- ^ @name@ pointing to @maxLength@ elements of type @GLcharARB@.
  -> IO ()
glGetActiveAttribARB = dyn_glGetActiveAttribARB ptr_glGetActiveAttribARB

foreign import CALLCONV "dynamic" dyn_glGetActiveAttribARB
  :: FunPtr (GLhandleARB -> GLuint -> GLsizei -> Ptr GLsizei -> Ptr GLint -> Ptr GLenum -> Ptr GLcharARB -> IO ())
  ->         GLhandleARB -> GLuint -> GLsizei -> Ptr GLsizei -> Ptr GLint -> Ptr GLenum -> Ptr GLcharARB -> IO ()

{-# NOINLINE ptr_glGetActiveAttribARB #-}
ptr_glGetActiveAttribARB :: FunPtr (GLhandleARB -> GLuint -> GLsizei -> Ptr GLsizei -> Ptr GLint -> Ptr GLenum -> Ptr GLcharARB -> IO ())
ptr_glGetActiveAttribARB = unsafePerformIO $ getCommand "glGetActiveAttribARB"

-- glGetActiveSubroutineName ---------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glGetActiveSubroutineName.xhtml OpenGL 4.x>
glGetActiveSubroutineName
  :: GLuint -- ^ @program@.
  -> GLenum -- ^ @shadertype@.
  -> GLuint -- ^ @index@.
  -> GLsizei -- ^ @bufsize@.
  -> Ptr GLsizei -- ^ @length@ pointing to @1@ elements of type @GLsizei@.
  -> Ptr GLchar -- ^ @name@ pointing to @bufsize@ elements of type @GLchar@.
  -> IO ()
glGetActiveSubroutineName = dyn_glGetActiveSubroutineName ptr_glGetActiveSubroutineName

foreign import CALLCONV "dynamic" dyn_glGetActiveSubroutineName
  :: FunPtr (GLuint -> GLenum -> GLuint -> GLsizei -> Ptr GLsizei -> Ptr GLchar -> IO ())
  ->         GLuint -> GLenum -> GLuint -> GLsizei -> Ptr GLsizei -> Ptr GLchar -> IO ()

{-# NOINLINE ptr_glGetActiveSubroutineName #-}
ptr_glGetActiveSubroutineName :: FunPtr (GLuint -> GLenum -> GLuint -> GLsizei -> Ptr GLsizei -> Ptr GLchar -> IO ())
ptr_glGetActiveSubroutineName = unsafePerformIO $ getCommand "glGetActiveSubroutineName"

-- glGetActiveSubroutineUniformName --------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glGetActiveSubroutineUniformName.xhtml OpenGL 4.x>
glGetActiveSubroutineUniformName
  :: GLuint -- ^ @program@.
  -> GLenum -- ^ @shadertype@.
  -> GLuint -- ^ @index@.
  -> GLsizei -- ^ @bufsize@.
  -> Ptr GLsizei -- ^ @length@ pointing to @1@ elements of type @GLsizei@.
  -> Ptr GLchar -- ^ @name@ pointing to @bufsize@ elements of type @GLchar@.
  -> IO ()
glGetActiveSubroutineUniformName = dyn_glGetActiveSubroutineUniformName ptr_glGetActiveSubroutineUniformName

foreign import CALLCONV "dynamic" dyn_glGetActiveSubroutineUniformName
  :: FunPtr (GLuint -> GLenum -> GLuint -> GLsizei -> Ptr GLsizei -> Ptr GLchar -> IO ())
  ->         GLuint -> GLenum -> GLuint -> GLsizei -> Ptr GLsizei -> Ptr GLchar -> IO ()

{-# NOINLINE ptr_glGetActiveSubroutineUniformName #-}
ptr_glGetActiveSubroutineUniformName :: FunPtr (GLuint -> GLenum -> GLuint -> GLsizei -> Ptr GLsizei -> Ptr GLchar -> IO ())
ptr_glGetActiveSubroutineUniformName = unsafePerformIO $ getCommand "glGetActiveSubroutineUniformName"

-- glGetActiveSubroutineUniformiv ----------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glGetActiveSubroutineUniform.xhtml OpenGL 4.x>
glGetActiveSubroutineUniformiv
  :: GLuint -- ^ @program@.
  -> GLenum -- ^ @shadertype@.
  -> GLuint -- ^ @index@.
  -> GLenum -- ^ @pname@.
  -> Ptr GLint -- ^ @values@ pointing to @COMPSIZE(pname)@ elements of type @GLint@.
  -> IO ()
glGetActiveSubroutineUniformiv = dyn_glGetActiveSubroutineUniformiv ptr_glGetActiveSubroutineUniformiv

foreign import CALLCONV "dynamic" dyn_glGetActiveSubroutineUniformiv
  :: FunPtr (GLuint -> GLenum -> GLuint -> GLenum -> Ptr GLint -> IO ())
  ->         GLuint -> GLenum -> GLuint -> GLenum -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glGetActiveSubroutineUniformiv #-}
ptr_glGetActiveSubroutineUniformiv :: FunPtr (GLuint -> GLenum -> GLuint -> GLenum -> Ptr GLint -> IO ())
ptr_glGetActiveSubroutineUniformiv = unsafePerformIO $ getCommand "glGetActiveSubroutineUniformiv"

-- glGetActiveUniform ----------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glGetActiveUniform.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glGetActiveUniform.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glGetActiveUniform.xhtml OpenGL 4.x>
glGetActiveUniform
  :: GLuint -- ^ @program@.
  -> GLuint -- ^ @index@.
  -> GLsizei -- ^ @bufSize@.
  -> Ptr GLsizei -- ^ @length@ pointing to @1@ elements of type @GLsizei@.
  -> Ptr GLint -- ^ @size@ pointing to @1@ elements of type @GLint@.
  -> Ptr GLenum -- ^ @type@ pointing to @1@ elements of type @GLenum@.
  -> Ptr GLchar -- ^ @name@ pointing to @bufSize@ elements of type @GLchar@.
  -> IO ()
glGetActiveUniform = dyn_glGetActiveUniform ptr_glGetActiveUniform

foreign import CALLCONV "dynamic" dyn_glGetActiveUniform
  :: FunPtr (GLuint -> GLuint -> GLsizei -> Ptr GLsizei -> Ptr GLint -> Ptr GLenum -> Ptr GLchar -> IO ())
  ->         GLuint -> GLuint -> GLsizei -> Ptr GLsizei -> Ptr GLint -> Ptr GLenum -> Ptr GLchar -> IO ()

{-# NOINLINE ptr_glGetActiveUniform #-}
ptr_glGetActiveUniform :: FunPtr (GLuint -> GLuint -> GLsizei -> Ptr GLsizei -> Ptr GLint -> Ptr GLenum -> Ptr GLchar -> IO ())
ptr_glGetActiveUniform = unsafePerformIO $ getCommand "glGetActiveUniform"

-- glGetActiveUniformARB -------------------------------------------------------

glGetActiveUniformARB
  :: GLhandleARB -- ^ @programObj@ of type @handleARB@.
  -> GLuint -- ^ @index@.
  -> GLsizei -- ^ @maxLength@.
  -> Ptr GLsizei -- ^ @length@ pointing to @1@ elements of type @GLsizei@.
  -> Ptr GLint -- ^ @size@ pointing to @1@ elements of type @GLint@.
  -> Ptr GLenum -- ^ @type@ pointing to @1@ elements of type @GLenum@.
  -> Ptr GLcharARB -- ^ @name@ pointing to @maxLength@ elements of type @GLcharARB@.
  -> IO ()
glGetActiveUniformARB = dyn_glGetActiveUniformARB ptr_glGetActiveUniformARB

foreign import CALLCONV "dynamic" dyn_glGetActiveUniformARB
  :: FunPtr (GLhandleARB -> GLuint -> GLsizei -> Ptr GLsizei -> Ptr GLint -> Ptr GLenum -> Ptr GLcharARB -> IO ())
  ->         GLhandleARB -> GLuint -> GLsizei -> Ptr GLsizei -> Ptr GLint -> Ptr GLenum -> Ptr GLcharARB -> IO ()

{-# NOINLINE ptr_glGetActiveUniformARB #-}
ptr_glGetActiveUniformARB :: FunPtr (GLhandleARB -> GLuint -> GLsizei -> Ptr GLsizei -> Ptr GLint -> Ptr GLenum -> Ptr GLcharARB -> IO ())
ptr_glGetActiveUniformARB = unsafePerformIO $ getCommand "glGetActiveUniformARB"

-- glGetActiveUniformBlockName -------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glGetActiveUniformBlockName.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glGetActiveUniformBlockName.xhtml OpenGL 4.x>
glGetActiveUniformBlockName
  :: GLuint -- ^ @program@.
  -> GLuint -- ^ @uniformBlockIndex@.
  -> GLsizei -- ^ @bufSize@.
  -> Ptr GLsizei -- ^ @length@ pointing to @1@ elements of type @GLsizei@.
  -> Ptr GLchar -- ^ @uniformBlockName@ pointing to @bufSize@ elements of type @GLchar@.
  -> IO ()
glGetActiveUniformBlockName = dyn_glGetActiveUniformBlockName ptr_glGetActiveUniformBlockName

foreign import CALLCONV "dynamic" dyn_glGetActiveUniformBlockName
  :: FunPtr (GLuint -> GLuint -> GLsizei -> Ptr GLsizei -> Ptr GLchar -> IO ())
  ->         GLuint -> GLuint -> GLsizei -> Ptr GLsizei -> Ptr GLchar -> IO ()

{-# NOINLINE ptr_glGetActiveUniformBlockName #-}
ptr_glGetActiveUniformBlockName :: FunPtr (GLuint -> GLuint -> GLsizei -> Ptr GLsizei -> Ptr GLchar -> IO ())
ptr_glGetActiveUniformBlockName = unsafePerformIO $ getCommand "glGetActiveUniformBlockName"

-- glGetActiveUniformBlockiv ---------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glGetActiveUniformBlock.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glGetActiveUniformBlock.xhtml OpenGL 4.x>
glGetActiveUniformBlockiv
  :: GLuint -- ^ @program@.
  -> GLuint -- ^ @uniformBlockIndex@.
  -> GLenum -- ^ @pname@.
  -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(program,uniformBlockIndex,pname)@ elements of type @GLint@.
  -> IO ()
glGetActiveUniformBlockiv = dyn_glGetActiveUniformBlockiv ptr_glGetActiveUniformBlockiv

foreign import CALLCONV "dynamic" dyn_glGetActiveUniformBlockiv
  :: FunPtr (GLuint -> GLuint -> GLenum -> Ptr GLint -> IO ())
  ->         GLuint -> GLuint -> GLenum -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glGetActiveUniformBlockiv #-}
ptr_glGetActiveUniformBlockiv :: FunPtr (GLuint -> GLuint -> GLenum -> Ptr GLint -> IO ())
ptr_glGetActiveUniformBlockiv = unsafePerformIO $ getCommand "glGetActiveUniformBlockiv"

-- glGetActiveUniformName ------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glGetActiveUniformName.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glGetActiveUniformName.xhtml OpenGL 4.x>
glGetActiveUniformName
  :: GLuint -- ^ @program@.
  -> GLuint -- ^ @uniformIndex@.
  -> GLsizei -- ^ @bufSize@.
  -> Ptr GLsizei -- ^ @length@ pointing to @1@ elements of type @GLsizei@.
  -> Ptr GLchar -- ^ @uniformName@ pointing to @bufSize@ elements of type @GLchar@.
  -> IO ()
glGetActiveUniformName = dyn_glGetActiveUniformName ptr_glGetActiveUniformName

foreign import CALLCONV "dynamic" dyn_glGetActiveUniformName
  :: FunPtr (GLuint -> GLuint -> GLsizei -> Ptr GLsizei -> Ptr GLchar -> IO ())
  ->         GLuint -> GLuint -> GLsizei -> Ptr GLsizei -> Ptr GLchar -> IO ()

{-# NOINLINE ptr_glGetActiveUniformName #-}
ptr_glGetActiveUniformName :: FunPtr (GLuint -> GLuint -> GLsizei -> Ptr GLsizei -> Ptr GLchar -> IO ())
ptr_glGetActiveUniformName = unsafePerformIO $ getCommand "glGetActiveUniformName"

-- glGetActiveUniformsiv -------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glGetActiveUniformsiv.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glGetActiveUniformsiv.xhtml OpenGL 4.x>
glGetActiveUniformsiv
  :: GLuint -- ^ @program@.
  -> GLsizei -- ^ @uniformCount@.
  -> Ptr GLuint -- ^ @uniformIndices@ pointing to @uniformCount@ elements of type @GLuint@.
  -> GLenum -- ^ @pname@.
  -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(uniformCount,pname)@ elements of type @GLint@.
  -> IO ()
glGetActiveUniformsiv = dyn_glGetActiveUniformsiv ptr_glGetActiveUniformsiv

foreign import CALLCONV "dynamic" dyn_glGetActiveUniformsiv
  :: FunPtr (GLuint -> GLsizei -> Ptr GLuint -> GLenum -> Ptr GLint -> IO ())
  ->         GLuint -> GLsizei -> Ptr GLuint -> GLenum -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glGetActiveUniformsiv #-}
ptr_glGetActiveUniformsiv :: FunPtr (GLuint -> GLsizei -> Ptr GLuint -> GLenum -> Ptr GLint -> IO ())
ptr_glGetActiveUniformsiv = unsafePerformIO $ getCommand "glGetActiveUniformsiv"

-- glGetActiveVaryingNV --------------------------------------------------------

glGetActiveVaryingNV
  :: GLuint -- ^ @program@.
  -> GLuint -- ^ @index@.
  -> GLsizei -- ^ @bufSize@.
  -> Ptr GLsizei -- ^ @length@ pointing to @1@ elements of type @GLsizei@.
  -> Ptr GLsizei -- ^ @size@ pointing to @1@ elements of type @GLsizei@.
  -> Ptr GLenum -- ^ @type@ pointing to @1@ elements of type @GLenum@.
  -> Ptr GLchar -- ^ @name@ pointing to @COMPSIZE(program,index,bufSize)@ elements of type @GLchar@.
  -> IO ()
glGetActiveVaryingNV = dyn_glGetActiveVaryingNV ptr_glGetActiveVaryingNV

foreign import CALLCONV "dynamic" dyn_glGetActiveVaryingNV
  :: FunPtr (GLuint -> GLuint -> GLsizei -> Ptr GLsizei -> Ptr GLsizei -> Ptr GLenum -> Ptr GLchar -> IO ())
  ->         GLuint -> GLuint -> GLsizei -> Ptr GLsizei -> Ptr GLsizei -> Ptr GLenum -> Ptr GLchar -> IO ()

{-# NOINLINE ptr_glGetActiveVaryingNV #-}
ptr_glGetActiveVaryingNV :: FunPtr (GLuint -> GLuint -> GLsizei -> Ptr GLsizei -> Ptr GLsizei -> Ptr GLenum -> Ptr GLchar -> IO ())
ptr_glGetActiveVaryingNV = unsafePerformIO $ getCommand "glGetActiveVaryingNV"

-- glGetArrayObjectfvATI -------------------------------------------------------

glGetArrayObjectfvATI
  :: GLenum -- ^ @array@ of type @EnableCap@.
  -> GLenum -- ^ @pname@ of type @ArrayObjectPNameATI@.
  -> Ptr GLfloat -- ^ @params@ pointing to @1@ elements of type @GLfloat@.
  -> IO ()
glGetArrayObjectfvATI = dyn_glGetArrayObjectfvATI ptr_glGetArrayObjectfvATI

foreign import CALLCONV "dynamic" dyn_glGetArrayObjectfvATI
  :: FunPtr (GLenum -> GLenum -> Ptr GLfloat -> IO ())
  ->         GLenum -> GLenum -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glGetArrayObjectfvATI #-}
ptr_glGetArrayObjectfvATI :: FunPtr (GLenum -> GLenum -> Ptr GLfloat -> IO ())
ptr_glGetArrayObjectfvATI = unsafePerformIO $ getCommand "glGetArrayObjectfvATI"

-- glGetArrayObjectivATI -------------------------------------------------------

glGetArrayObjectivATI
  :: GLenum -- ^ @array@ of type @EnableCap@.
  -> GLenum -- ^ @pname@ of type @ArrayObjectPNameATI@.
  -> Ptr GLint -- ^ @params@ pointing to @1@ elements of type @GLint@.
  -> IO ()
glGetArrayObjectivATI = dyn_glGetArrayObjectivATI ptr_glGetArrayObjectivATI

foreign import CALLCONV "dynamic" dyn_glGetArrayObjectivATI
  :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
  ->         GLenum -> GLenum -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glGetArrayObjectivATI #-}
ptr_glGetArrayObjectivATI :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
ptr_glGetArrayObjectivATI = unsafePerformIO $ getCommand "glGetArrayObjectivATI"

-- glGetAttachedObjectsARB -----------------------------------------------------

glGetAttachedObjectsARB
  :: GLhandleARB -- ^ @containerObj@ of type @handleARB@.
  -> GLsizei -- ^ @maxCount@.
  -> Ptr GLsizei -- ^ @count@ pointing to @1@ elements of type @GLsizei@.
  -> Ptr GLhandleARB -- ^ @obj@ pointing to @maxCount@ elements of type @handleARB@.
  -> IO ()
glGetAttachedObjectsARB = dyn_glGetAttachedObjectsARB ptr_glGetAttachedObjectsARB

foreign import CALLCONV "dynamic" dyn_glGetAttachedObjectsARB
  :: FunPtr (GLhandleARB -> GLsizei -> Ptr GLsizei -> Ptr GLhandleARB -> IO ())
  ->         GLhandleARB -> GLsizei -> Ptr GLsizei -> Ptr GLhandleARB -> IO ()

{-# NOINLINE ptr_glGetAttachedObjectsARB #-}
ptr_glGetAttachedObjectsARB :: FunPtr (GLhandleARB -> GLsizei -> Ptr GLsizei -> Ptr GLhandleARB -> IO ())
ptr_glGetAttachedObjectsARB = unsafePerformIO $ getCommand "glGetAttachedObjectsARB"

-- glGetAttachedShaders --------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glGetAttachedShaders.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glGetAttachedShaders.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glGetAttachedShaders.xhtml OpenGL 4.x>
glGetAttachedShaders
  :: GLuint -- ^ @program@.
  -> GLsizei -- ^ @maxCount@.
  -> Ptr GLsizei -- ^ @count@ pointing to @1@ elements of type @GLsizei@.
  -> Ptr GLuint -- ^ @shaders@ pointing to @maxCount@ elements of type @GLuint@.
  -> IO ()
glGetAttachedShaders = dyn_glGetAttachedShaders ptr_glGetAttachedShaders

foreign import CALLCONV "dynamic" dyn_glGetAttachedShaders
  :: FunPtr (GLuint -> GLsizei -> Ptr GLsizei -> Ptr GLuint -> IO ())
  ->         GLuint -> GLsizei -> Ptr GLsizei -> Ptr GLuint -> IO ()

{-# NOINLINE ptr_glGetAttachedShaders #-}
ptr_glGetAttachedShaders :: FunPtr (GLuint -> GLsizei -> Ptr GLsizei -> Ptr GLuint -> IO ())
ptr_glGetAttachedShaders = unsafePerformIO $ getCommand "glGetAttachedShaders"

-- glGetAttribLocation ---------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glGetAttribLocation.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glGetAttribLocation.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glGetAttribLocation.xhtml OpenGL 4.x>
glGetAttribLocation
  :: GLuint -- ^ @program@.
  -> Ptr GLchar -- ^ @name@.
  -> IO GLint
glGetAttribLocation = dyn_glGetAttribLocation ptr_glGetAttribLocation

foreign import CALLCONV "dynamic" dyn_glGetAttribLocation
  :: FunPtr (GLuint -> Ptr GLchar -> IO GLint)
  ->         GLuint -> Ptr GLchar -> IO GLint

{-# NOINLINE ptr_glGetAttribLocation #-}
ptr_glGetAttribLocation :: FunPtr (GLuint -> Ptr GLchar -> IO GLint)
ptr_glGetAttribLocation = unsafePerformIO $ getCommand "glGetAttribLocation"

-- glGetAttribLocationARB ------------------------------------------------------

glGetAttribLocationARB
  :: GLhandleARB -- ^ @programObj@ of type @handleARB@.
  -> Ptr GLcharARB -- ^ @name@.
  -> IO GLint
glGetAttribLocationARB = dyn_glGetAttribLocationARB ptr_glGetAttribLocationARB

foreign import CALLCONV "dynamic" dyn_glGetAttribLocationARB
  :: FunPtr (GLhandleARB -> Ptr GLcharARB -> IO GLint)
  ->         GLhandleARB -> Ptr GLcharARB -> IO GLint

{-# NOINLINE ptr_glGetAttribLocationARB #-}
ptr_glGetAttribLocationARB :: FunPtr (GLhandleARB -> Ptr GLcharARB -> IO GLint)
ptr_glGetAttribLocationARB = unsafePerformIO $ getCommand "glGetAttribLocationARB"

-- glGetBooleanIndexedvEXT -----------------------------------------------------

glGetBooleanIndexedvEXT
  :: GLenum -- ^ @target@.
  -> GLuint -- ^ @index@.
  -> Ptr GLboolean -- ^ @data@ pointing to @COMPSIZE(target)@ elements of type @Boolean@.
  -> IO ()
glGetBooleanIndexedvEXT = dyn_glGetBooleanIndexedvEXT ptr_glGetBooleanIndexedvEXT

foreign import CALLCONV "dynamic" dyn_glGetBooleanIndexedvEXT
  :: FunPtr (GLenum -> GLuint -> Ptr GLboolean -> IO ())
  ->         GLenum -> GLuint -> Ptr GLboolean -> IO ()

{-# NOINLINE ptr_glGetBooleanIndexedvEXT #-}
ptr_glGetBooleanIndexedvEXT :: FunPtr (GLenum -> GLuint -> Ptr GLboolean -> IO ())
ptr_glGetBooleanIndexedvEXT = unsafePerformIO $ getCommand "glGetBooleanIndexedvEXT"

-- glGetBooleani_v -------------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glGet.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glGet.xhtml OpenGL 4.x>
glGetBooleani_v
  :: GLenum -- ^ @target@.
  -> GLuint -- ^ @index@.
  -> Ptr GLboolean -- ^ @data@ pointing to @COMPSIZE(target)@ elements of type @Boolean@.
  -> IO ()
glGetBooleani_v = dyn_glGetBooleani_v ptr_glGetBooleani_v

foreign import CALLCONV "dynamic" dyn_glGetBooleani_v
  :: FunPtr (GLenum -> GLuint -> Ptr GLboolean -> IO ())
  ->         GLenum -> GLuint -> Ptr GLboolean -> IO ()

{-# NOINLINE ptr_glGetBooleani_v #-}
ptr_glGetBooleani_v :: FunPtr (GLenum -> GLuint -> Ptr GLboolean -> IO ())
ptr_glGetBooleani_v = unsafePerformIO $ getCommand "glGetBooleani_v"

-- glGetBooleanv ---------------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glGet.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glGet.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glGet.xhtml OpenGL 4.x>
glGetBooleanv
  :: GLenum -- ^ @pname@ of type @GetPName@.
  -> Ptr GLboolean -- ^ @data@ pointing to @COMPSIZE(pname)@ elements of type @Boolean@.
  -> IO ()
glGetBooleanv = dyn_glGetBooleanv ptr_glGetBooleanv

foreign import CALLCONV "dynamic" dyn_glGetBooleanv
  :: FunPtr (GLenum -> Ptr GLboolean -> IO ())
  ->         GLenum -> Ptr GLboolean -> IO ()

{-# NOINLINE ptr_glGetBooleanv #-}
ptr_glGetBooleanv :: FunPtr (GLenum -> Ptr GLboolean -> IO ())
ptr_glGetBooleanv = unsafePerformIO $ getCommand "glGetBooleanv"

-- glGetBufferParameteri64v ----------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glGetBufferParameter.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glGetBufferParameter.xhtml OpenGL 4.x>
glGetBufferParameteri64v
  :: GLenum -- ^ @target@ of type @BufferTargetARB@.
  -> GLenum -- ^ @pname@ of type @BufferPNameARB@.
  -> Ptr GLint64 -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLint64@.
  -> IO ()
glGetBufferParameteri64v = dyn_glGetBufferParameteri64v ptr_glGetBufferParameteri64v

foreign import CALLCONV "dynamic" dyn_glGetBufferParameteri64v
  :: FunPtr (GLenum -> GLenum -> Ptr GLint64 -> IO ())
  ->         GLenum -> GLenum -> Ptr GLint64 -> IO ()

{-# NOINLINE ptr_glGetBufferParameteri64v #-}
ptr_glGetBufferParameteri64v :: FunPtr (GLenum -> GLenum -> Ptr GLint64 -> IO ())
ptr_glGetBufferParameteri64v = unsafePerformIO $ getCommand "glGetBufferParameteri64v"

-- glGetBufferParameteriv ------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glGetBufferParameteriv.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glGetBufferParameter.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glGetBufferParameter.xhtml OpenGL 4.x>
glGetBufferParameteriv
  :: GLenum -- ^ @target@ of type @BufferTargetARB@.
  -> GLenum -- ^ @pname@ of type @BufferPNameARB@.
  -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLint@.
  -> IO ()
glGetBufferParameteriv = dyn_glGetBufferParameteriv ptr_glGetBufferParameteriv

foreign import CALLCONV "dynamic" dyn_glGetBufferParameteriv
  :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
  ->         GLenum -> GLenum -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glGetBufferParameteriv #-}
ptr_glGetBufferParameteriv :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
ptr_glGetBufferParameteriv = unsafePerformIO $ getCommand "glGetBufferParameteriv"

-- glGetBufferParameterivARB ---------------------------------------------------

glGetBufferParameterivARB
  :: GLenum -- ^ @target@ of type @BufferTargetARB@.
  -> GLenum -- ^ @pname@ of type @BufferPNameARB@.
  -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLint@.
  -> IO ()
glGetBufferParameterivARB = dyn_glGetBufferParameterivARB ptr_glGetBufferParameterivARB

foreign import CALLCONV "dynamic" dyn_glGetBufferParameterivARB
  :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
  ->         GLenum -> GLenum -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glGetBufferParameterivARB #-}
ptr_glGetBufferParameterivARB :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
ptr_glGetBufferParameterivARB = unsafePerformIO $ getCommand "glGetBufferParameterivARB"

-- glGetBufferParameterui64vNV -------------------------------------------------

glGetBufferParameterui64vNV
  :: GLenum -- ^ @target@.
  -> GLenum -- ^ @pname@.
  -> Ptr GLuint64EXT -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLuint64EXT@.
  -> IO ()
glGetBufferParameterui64vNV = dyn_glGetBufferParameterui64vNV ptr_glGetBufferParameterui64vNV

foreign import CALLCONV "dynamic" dyn_glGetBufferParameterui64vNV
  :: FunPtr (GLenum -> GLenum -> Ptr GLuint64EXT -> IO ())
  ->         GLenum -> GLenum -> Ptr GLuint64EXT -> IO ()

{-# NOINLINE ptr_glGetBufferParameterui64vNV #-}
ptr_glGetBufferParameterui64vNV :: FunPtr (GLenum -> GLenum -> Ptr GLuint64EXT -> IO ())
ptr_glGetBufferParameterui64vNV = unsafePerformIO $ getCommand "glGetBufferParameterui64vNV"

-- glGetBufferPointerv ---------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glGetBufferPointerv.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glGetBufferPointerv.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glGetBufferPointerv.xhtml OpenGL 4.x>
glGetBufferPointerv
  :: GLenum -- ^ @target@ of type @BufferTargetARB@.
  -> GLenum -- ^ @pname@ of type @BufferPointerNameARB@.
  -> Ptr (Ptr a) -- ^ @params@ pointing to @1@ elements of type @Ptr a@.
  -> IO ()
glGetBufferPointerv = dyn_glGetBufferPointerv ptr_glGetBufferPointerv

foreign import CALLCONV "dynamic" dyn_glGetBufferPointerv
  :: FunPtr (GLenum -> GLenum -> Ptr (Ptr a) -> IO ())
  ->         GLenum -> GLenum -> Ptr (Ptr a) -> IO ()

{-# NOINLINE ptr_glGetBufferPointerv #-}
ptr_glGetBufferPointerv :: FunPtr (GLenum -> GLenum -> Ptr (Ptr a) -> IO ())
ptr_glGetBufferPointerv = unsafePerformIO $ getCommand "glGetBufferPointerv"

-- glGetBufferPointervARB ------------------------------------------------------

glGetBufferPointervARB
  :: GLenum -- ^ @target@ of type @BufferTargetARB@.
  -> GLenum -- ^ @pname@ of type @BufferPointerNameARB@.
  -> Ptr (Ptr a) -- ^ @params@ pointing to @1@ elements of type @Ptr a@.
  -> IO ()
glGetBufferPointervARB = dyn_glGetBufferPointervARB ptr_glGetBufferPointervARB

foreign import CALLCONV "dynamic" dyn_glGetBufferPointervARB
  :: FunPtr (GLenum -> GLenum -> Ptr (Ptr a) -> IO ())
  ->         GLenum -> GLenum -> Ptr (Ptr a) -> IO ()

{-# NOINLINE ptr_glGetBufferPointervARB #-}
ptr_glGetBufferPointervARB :: FunPtr (GLenum -> GLenum -> Ptr (Ptr a) -> IO ())
ptr_glGetBufferPointervARB = unsafePerformIO $ getCommand "glGetBufferPointervARB"

-- glGetBufferPointervOES ------------------------------------------------------

glGetBufferPointervOES
  :: GLenum -- ^ @target@.
  -> GLenum -- ^ @pname@.
  -> Ptr (Ptr a) -- ^ @params@.
  -> IO ()
glGetBufferPointervOES = dyn_glGetBufferPointervOES ptr_glGetBufferPointervOES

foreign import CALLCONV "dynamic" dyn_glGetBufferPointervOES
  :: FunPtr (GLenum -> GLenum -> Ptr (Ptr a) -> IO ())
  ->         GLenum -> GLenum -> Ptr (Ptr a) -> IO ()

{-# NOINLINE ptr_glGetBufferPointervOES #-}
ptr_glGetBufferPointervOES :: FunPtr (GLenum -> GLenum -> Ptr (Ptr a) -> IO ())
ptr_glGetBufferPointervOES = unsafePerformIO $ getCommand "glGetBufferPointervOES"

-- glGetBufferSubData ----------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glGetBufferSubData.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glGetBufferSubData.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glGetBufferSubData.xhtml OpenGL 4.x>
glGetBufferSubData
  :: GLenum -- ^ @target@ of type @BufferTargetARB@.
  -> GLintptr -- ^ @offset@ of type @BufferOffset@.
  -> GLsizeiptr -- ^ @size@ of type @BufferSize@.
  -> Ptr a -- ^ @data@ pointing to @size@ elements of type @a@.
  -> IO ()
glGetBufferSubData = dyn_glGetBufferSubData ptr_glGetBufferSubData

foreign import CALLCONV "dynamic" dyn_glGetBufferSubData
  :: FunPtr (GLenum -> GLintptr -> GLsizeiptr -> Ptr a -> IO ())
  ->         GLenum -> GLintptr -> GLsizeiptr -> Ptr a -> IO ()

{-# NOINLINE ptr_glGetBufferSubData #-}
ptr_glGetBufferSubData :: FunPtr (GLenum -> GLintptr -> GLsizeiptr -> Ptr a -> IO ())
ptr_glGetBufferSubData = unsafePerformIO $ getCommand "glGetBufferSubData"

-- glGetBufferSubDataARB -------------------------------------------------------

glGetBufferSubDataARB
  :: GLenum -- ^ @target@ of type @BufferTargetARB@.
  -> GLintptrARB -- ^ @offset@ of type @BufferOffsetARB@.
  -> GLsizeiptrARB -- ^ @size@ of type @BufferSizeARB@.
  -> Ptr a -- ^ @data@ pointing to @size@ elements of type @a@.
  -> IO ()
glGetBufferSubDataARB = dyn_glGetBufferSubDataARB ptr_glGetBufferSubDataARB

foreign import CALLCONV "dynamic" dyn_glGetBufferSubDataARB
  :: FunPtr (GLenum -> GLintptrARB -> GLsizeiptrARB -> Ptr a -> IO ())
  ->         GLenum -> GLintptrARB -> GLsizeiptrARB -> Ptr a -> IO ()

{-# NOINLINE ptr_glGetBufferSubDataARB #-}
ptr_glGetBufferSubDataARB :: FunPtr (GLenum -> GLintptrARB -> GLsizeiptrARB -> Ptr a -> IO ())
ptr_glGetBufferSubDataARB = unsafePerformIO $ getCommand "glGetBufferSubDataARB"

-- glGetClipPlane --------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glGetClipPlane.xml OpenGL 2.x>
glGetClipPlane
  :: GLenum -- ^ @plane@ of type @ClipPlaneName@.
  -> Ptr GLdouble -- ^ @equation@ pointing to @4@ elements of type @GLdouble@.
  -> IO ()
glGetClipPlane = dyn_glGetClipPlane ptr_glGetClipPlane

foreign import CALLCONV "dynamic" dyn_glGetClipPlane
  :: FunPtr (GLenum -> Ptr GLdouble -> IO ())
  ->         GLenum -> Ptr GLdouble -> IO ()

{-# NOINLINE ptr_glGetClipPlane #-}
ptr_glGetClipPlane :: FunPtr (GLenum -> Ptr GLdouble -> IO ())
ptr_glGetClipPlane = unsafePerformIO $ getCommand "glGetClipPlane"

-- glGetClipPlanef -------------------------------------------------------------

glGetClipPlanef
  :: GLenum -- ^ @plane@.
  -> Ptr GLfloat -- ^ @equation@ pointing to @4@ elements of type @GLfloat@.
  -> IO ()
glGetClipPlanef = dyn_glGetClipPlanef ptr_glGetClipPlanef

foreign import CALLCONV "dynamic" dyn_glGetClipPlanef
  :: FunPtr (GLenum -> Ptr GLfloat -> IO ())
  ->         GLenum -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glGetClipPlanef #-}
ptr_glGetClipPlanef :: FunPtr (GLenum -> Ptr GLfloat -> IO ())
ptr_glGetClipPlanef = unsafePerformIO $ getCommand "glGetClipPlanef"

-- glGetClipPlanefOES ----------------------------------------------------------

glGetClipPlanefOES
  :: GLenum -- ^ @plane@.
  -> Ptr GLfloat -- ^ @equation@ pointing to @4@ elements of type @GLfloat@.
  -> IO ()
glGetClipPlanefOES = dyn_glGetClipPlanefOES ptr_glGetClipPlanefOES

foreign import CALLCONV "dynamic" dyn_glGetClipPlanefOES
  :: FunPtr (GLenum -> Ptr GLfloat -> IO ())
  ->         GLenum -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glGetClipPlanefOES #-}
ptr_glGetClipPlanefOES :: FunPtr (GLenum -> Ptr GLfloat -> IO ())
ptr_glGetClipPlanefOES = unsafePerformIO $ getCommand "glGetClipPlanefOES"

-- glGetClipPlanex -------------------------------------------------------------

glGetClipPlanex
  :: GLenum -- ^ @plane@.
  -> Ptr GLfixed -- ^ @equation@ pointing to @4@ elements of type @GLfixed@.
  -> IO ()
glGetClipPlanex = dyn_glGetClipPlanex ptr_glGetClipPlanex

foreign import CALLCONV "dynamic" dyn_glGetClipPlanex
  :: FunPtr (GLenum -> Ptr GLfixed -> IO ())
  ->         GLenum -> Ptr GLfixed -> IO ()

{-# NOINLINE ptr_glGetClipPlanex #-}
ptr_glGetClipPlanex :: FunPtr (GLenum -> Ptr GLfixed -> IO ())
ptr_glGetClipPlanex = unsafePerformIO $ getCommand "glGetClipPlanex"

-- glGetClipPlanexOES ----------------------------------------------------------

glGetClipPlanexOES
  :: GLenum -- ^ @plane@.
  -> Ptr GLfixed -- ^ @equation@ pointing to @4@ elements of type @GLfixed@.
  -> IO ()
glGetClipPlanexOES = dyn_glGetClipPlanexOES ptr_glGetClipPlanexOES

foreign import CALLCONV "dynamic" dyn_glGetClipPlanexOES
  :: FunPtr (GLenum -> Ptr GLfixed -> IO ())
  ->         GLenum -> Ptr GLfixed -> IO ()

{-# NOINLINE ptr_glGetClipPlanexOES #-}
ptr_glGetClipPlanexOES :: FunPtr (GLenum -> Ptr GLfixed -> IO ())
ptr_glGetClipPlanexOES = unsafePerformIO $ getCommand "glGetClipPlanexOES"

-- glGetColorTable -------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glGetColorTable.xml OpenGL 2.x>
glGetColorTable
  :: GLenum -- ^ @target@ of type @ColorTableTarget@.
  -> GLenum -- ^ @format@ of type @PixelFormat@.
  -> GLenum -- ^ @type@ of type @PixelType@.
  -> Ptr a -- ^ @table@ pointing to @COMPSIZE(target,format,type)@ elements of type @a@.
  -> IO ()
glGetColorTable = dyn_glGetColorTable ptr_glGetColorTable

foreign import CALLCONV "dynamic" dyn_glGetColorTable
  :: FunPtr (GLenum -> GLenum -> GLenum -> Ptr a -> IO ())
  ->         GLenum -> GLenum -> GLenum -> Ptr a -> IO ()

{-# NOINLINE ptr_glGetColorTable #-}
ptr_glGetColorTable :: FunPtr (GLenum -> GLenum -> GLenum -> Ptr a -> IO ())
ptr_glGetColorTable = unsafePerformIO $ getCommand "glGetColorTable"

-- glGetColorTableEXT ----------------------------------------------------------

glGetColorTableEXT
  :: GLenum -- ^ @target@ of type @ColorTableTarget@.
  -> GLenum -- ^ @format@ of type @PixelFormat@.
  -> GLenum -- ^ @type@ of type @PixelType@.
  -> Ptr a -- ^ @data@ pointing to @COMPSIZE(target,format,type)@ elements of type @a@.
  -> IO ()
glGetColorTableEXT = dyn_glGetColorTableEXT ptr_glGetColorTableEXT

foreign import CALLCONV "dynamic" dyn_glGetColorTableEXT
  :: FunPtr (GLenum -> GLenum -> GLenum -> Ptr a -> IO ())
  ->         GLenum -> GLenum -> GLenum -> Ptr a -> IO ()

{-# NOINLINE ptr_glGetColorTableEXT #-}
ptr_glGetColorTableEXT :: FunPtr (GLenum -> GLenum -> GLenum -> Ptr a -> IO ())
ptr_glGetColorTableEXT = unsafePerformIO $ getCommand "glGetColorTableEXT"

-- glGetColorTableParameterfv --------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glGetColorTableParameter.xml OpenGL 2.x>
glGetColorTableParameterfv
  :: GLenum -- ^ @target@ of type @ColorTableTarget@.
  -> GLenum -- ^ @pname@ of type @GetColorTableParameterPName@.
  -> Ptr GLfloat -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLfloat@.
  -> IO ()
glGetColorTableParameterfv = dyn_glGetColorTableParameterfv ptr_glGetColorTableParameterfv

foreign import CALLCONV "dynamic" dyn_glGetColorTableParameterfv
  :: FunPtr (GLenum -> GLenum -> Ptr GLfloat -> IO ())
  ->         GLenum -> GLenum -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glGetColorTableParameterfv #-}
ptr_glGetColorTableParameterfv :: FunPtr (GLenum -> GLenum -> Ptr GLfloat -> IO ())
ptr_glGetColorTableParameterfv = unsafePerformIO $ getCommand "glGetColorTableParameterfv"

-- glGetColorTableParameterfvEXT -----------------------------------------------

glGetColorTableParameterfvEXT
  :: GLenum -- ^ @target@ of type @ColorTableTarget@.
  -> GLenum -- ^ @pname@ of type @GetColorTableParameterPName@.
  -> Ptr GLfloat -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLfloat@.
  -> IO ()
glGetColorTableParameterfvEXT = dyn_glGetColorTableParameterfvEXT ptr_glGetColorTableParameterfvEXT

foreign import CALLCONV "dynamic" dyn_glGetColorTableParameterfvEXT
  :: FunPtr (GLenum -> GLenum -> Ptr GLfloat -> IO ())
  ->         GLenum -> GLenum -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glGetColorTableParameterfvEXT #-}
ptr_glGetColorTableParameterfvEXT :: FunPtr (GLenum -> GLenum -> Ptr GLfloat -> IO ())
ptr_glGetColorTableParameterfvEXT = unsafePerformIO $ getCommand "glGetColorTableParameterfvEXT"

-- glGetColorTableParameterfvSGI -----------------------------------------------

glGetColorTableParameterfvSGI
  :: GLenum -- ^ @target@ of type @ColorTableTargetSGI@.
  -> GLenum -- ^ @pname@ of type @GetColorTableParameterPNameSGI@.
  -> Ptr GLfloat -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLfloat@.
  -> IO ()
glGetColorTableParameterfvSGI = dyn_glGetColorTableParameterfvSGI ptr_glGetColorTableParameterfvSGI

foreign import CALLCONV "dynamic" dyn_glGetColorTableParameterfvSGI
  :: FunPtr (GLenum -> GLenum -> Ptr GLfloat -> IO ())
  ->         GLenum -> GLenum -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glGetColorTableParameterfvSGI #-}
ptr_glGetColorTableParameterfvSGI :: FunPtr (GLenum -> GLenum -> Ptr GLfloat -> IO ())
ptr_glGetColorTableParameterfvSGI = unsafePerformIO $ getCommand "glGetColorTableParameterfvSGI"

-- glGetColorTableParameteriv --------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glGetColorTableParameter.xml OpenGL 2.x>
glGetColorTableParameteriv
  :: GLenum -- ^ @target@ of type @ColorTableTarget@.
  -> GLenum -- ^ @pname@ of type @GetColorTableParameterPName@.
  -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLint@.
  -> IO ()
glGetColorTableParameteriv = dyn_glGetColorTableParameteriv ptr_glGetColorTableParameteriv

foreign import CALLCONV "dynamic" dyn_glGetColorTableParameteriv
  :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
  ->         GLenum -> GLenum -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glGetColorTableParameteriv #-}
ptr_glGetColorTableParameteriv :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
ptr_glGetColorTableParameteriv = unsafePerformIO $ getCommand "glGetColorTableParameteriv"

-- glGetColorTableParameterivEXT -----------------------------------------------

glGetColorTableParameterivEXT
  :: GLenum -- ^ @target@ of type @ColorTableTarget@.
  -> GLenum -- ^ @pname@ of type @GetColorTableParameterPName@.
  -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLint@.
  -> IO ()
glGetColorTableParameterivEXT = dyn_glGetColorTableParameterivEXT ptr_glGetColorTableParameterivEXT

foreign import CALLCONV "dynamic" dyn_glGetColorTableParameterivEXT
  :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
  ->         GLenum -> GLenum -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glGetColorTableParameterivEXT #-}
ptr_glGetColorTableParameterivEXT :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
ptr_glGetColorTableParameterivEXT = unsafePerformIO $ getCommand "glGetColorTableParameterivEXT"

-- glGetColorTableParameterivSGI -----------------------------------------------

glGetColorTableParameterivSGI
  :: GLenum -- ^ @target@ of type @ColorTableTargetSGI@.
  -> GLenum -- ^ @pname@ of type @GetColorTableParameterPNameSGI@.
  -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLint@.
  -> IO ()
glGetColorTableParameterivSGI = dyn_glGetColorTableParameterivSGI ptr_glGetColorTableParameterivSGI

foreign import CALLCONV "dynamic" dyn_glGetColorTableParameterivSGI
  :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
  ->         GLenum -> GLenum -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glGetColorTableParameterivSGI #-}
ptr_glGetColorTableParameterivSGI :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
ptr_glGetColorTableParameterivSGI = unsafePerformIO $ getCommand "glGetColorTableParameterivSGI"

-- glGetColorTableSGI ----------------------------------------------------------

glGetColorTableSGI
  :: GLenum -- ^ @target@ of type @ColorTableTargetSGI@.
  -> GLenum -- ^ @format@ of type @PixelFormat@.
  -> GLenum -- ^ @type@ of type @PixelType@.
  -> Ptr a -- ^ @table@ pointing to @COMPSIZE(target,format,type)@ elements of type @a@.
  -> IO ()
glGetColorTableSGI = dyn_glGetColorTableSGI ptr_glGetColorTableSGI

foreign import CALLCONV "dynamic" dyn_glGetColorTableSGI
  :: FunPtr (GLenum -> GLenum -> GLenum -> Ptr a -> IO ())
  ->         GLenum -> GLenum -> GLenum -> Ptr a -> IO ()

{-# NOINLINE ptr_glGetColorTableSGI #-}
ptr_glGetColorTableSGI :: FunPtr (GLenum -> GLenum -> GLenum -> Ptr a -> IO ())
ptr_glGetColorTableSGI = unsafePerformIO $ getCommand "glGetColorTableSGI"

-- glGetCombinerInputParameterfvNV ---------------------------------------------

glGetCombinerInputParameterfvNV
  :: GLenum -- ^ @stage@ of type @CombinerStageNV@.
  -> GLenum -- ^ @portion@ of type @CombinerPortionNV@.
  -> GLenum -- ^ @variable@ of type @CombinerVariableNV@.
  -> GLenum -- ^ @pname@ of type @CombinerParameterNV@.
  -> Ptr GLfloat -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLfloat@.
  -> IO ()
glGetCombinerInputParameterfvNV = dyn_glGetCombinerInputParameterfvNV ptr_glGetCombinerInputParameterfvNV

foreign import CALLCONV "dynamic" dyn_glGetCombinerInputParameterfvNV
  :: FunPtr (GLenum -> GLenum -> GLenum -> GLenum -> Ptr GLfloat -> IO ())
  ->         GLenum -> GLenum -> GLenum -> GLenum -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glGetCombinerInputParameterfvNV #-}
ptr_glGetCombinerInputParameterfvNV :: FunPtr (GLenum -> GLenum -> GLenum -> GLenum -> Ptr GLfloat -> IO ())
ptr_glGetCombinerInputParameterfvNV = unsafePerformIO $ getCommand "glGetCombinerInputParameterfvNV"

-- glGetCombinerInputParameterivNV ---------------------------------------------

glGetCombinerInputParameterivNV
  :: GLenum -- ^ @stage@ of type @CombinerStageNV@.
  -> GLenum -- ^ @portion@ of type @CombinerPortionNV@.
  -> GLenum -- ^ @variable@ of type @CombinerVariableNV@.
  -> GLenum -- ^ @pname@ of type @CombinerParameterNV@.
  -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLint@.
  -> IO ()
glGetCombinerInputParameterivNV = dyn_glGetCombinerInputParameterivNV ptr_glGetCombinerInputParameterivNV

foreign import CALLCONV "dynamic" dyn_glGetCombinerInputParameterivNV
  :: FunPtr (GLenum -> GLenum -> GLenum -> GLenum -> Ptr GLint -> IO ())
  ->         GLenum -> GLenum -> GLenum -> GLenum -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glGetCombinerInputParameterivNV #-}
ptr_glGetCombinerInputParameterivNV :: FunPtr (GLenum -> GLenum -> GLenum -> GLenum -> Ptr GLint -> IO ())
ptr_glGetCombinerInputParameterivNV = unsafePerformIO $ getCommand "glGetCombinerInputParameterivNV"

-- glGetCombinerOutputParameterfvNV --------------------------------------------

glGetCombinerOutputParameterfvNV
  :: GLenum -- ^ @stage@ of type @CombinerStageNV@.
  -> GLenum -- ^ @portion@ of type @CombinerPortionNV@.
  -> GLenum -- ^ @pname@ of type @CombinerParameterNV@.
  -> Ptr GLfloat -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLfloat@.
  -> IO ()
glGetCombinerOutputParameterfvNV = dyn_glGetCombinerOutputParameterfvNV ptr_glGetCombinerOutputParameterfvNV

foreign import CALLCONV "dynamic" dyn_glGetCombinerOutputParameterfvNV
  :: FunPtr (GLenum -> GLenum -> GLenum -> Ptr GLfloat -> IO ())
  ->         GLenum -> GLenum -> GLenum -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glGetCombinerOutputParameterfvNV #-}
ptr_glGetCombinerOutputParameterfvNV :: FunPtr (GLenum -> GLenum -> GLenum -> Ptr GLfloat -> IO ())
ptr_glGetCombinerOutputParameterfvNV = unsafePerformIO $ getCommand "glGetCombinerOutputParameterfvNV"

-- glGetCombinerOutputParameterivNV --------------------------------------------

glGetCombinerOutputParameterivNV
  :: GLenum -- ^ @stage@ of type @CombinerStageNV@.
  -> GLenum -- ^ @portion@ of type @CombinerPortionNV@.
  -> GLenum -- ^ @pname@ of type @CombinerParameterNV@.
  -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLint@.
  -> IO ()
glGetCombinerOutputParameterivNV = dyn_glGetCombinerOutputParameterivNV ptr_glGetCombinerOutputParameterivNV

foreign import CALLCONV "dynamic" dyn_glGetCombinerOutputParameterivNV
  :: FunPtr (GLenum -> GLenum -> GLenum -> Ptr GLint -> IO ())
  ->         GLenum -> GLenum -> GLenum -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glGetCombinerOutputParameterivNV #-}
ptr_glGetCombinerOutputParameterivNV :: FunPtr (GLenum -> GLenum -> GLenum -> Ptr GLint -> IO ())
ptr_glGetCombinerOutputParameterivNV = unsafePerformIO $ getCommand "glGetCombinerOutputParameterivNV"

-- glGetCombinerStageParameterfvNV ---------------------------------------------

glGetCombinerStageParameterfvNV
  :: GLenum -- ^ @stage@ of type @CombinerStageNV@.
  -> GLenum -- ^ @pname@ of type @CombinerParameterNV@.
  -> Ptr GLfloat -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLfloat@.
  -> IO ()
glGetCombinerStageParameterfvNV = dyn_glGetCombinerStageParameterfvNV ptr_glGetCombinerStageParameterfvNV

foreign import CALLCONV "dynamic" dyn_glGetCombinerStageParameterfvNV
  :: FunPtr (GLenum -> GLenum -> Ptr GLfloat -> IO ())
  ->         GLenum -> GLenum -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glGetCombinerStageParameterfvNV #-}
ptr_glGetCombinerStageParameterfvNV :: FunPtr (GLenum -> GLenum -> Ptr GLfloat -> IO ())
ptr_glGetCombinerStageParameterfvNV = unsafePerformIO $ getCommand "glGetCombinerStageParameterfvNV"

-- glGetCompressedMultiTexImageEXT ---------------------------------------------

glGetCompressedMultiTexImageEXT
  :: GLenum -- ^ @texunit@ of type @TextureUnit@.
  -> GLenum -- ^ @target@ of type @TextureTarget@.
  -> GLint -- ^ @lod@ of type @CheckedInt32@.
  -> Ptr a -- ^ @img@ pointing to @COMPSIZE(target,lod)@ elements of type @a@.
  -> IO ()
glGetCompressedMultiTexImageEXT = dyn_glGetCompressedMultiTexImageEXT ptr_glGetCompressedMultiTexImageEXT

foreign import CALLCONV "dynamic" dyn_glGetCompressedMultiTexImageEXT
  :: FunPtr (GLenum -> GLenum -> GLint -> Ptr a -> IO ())
  ->         GLenum -> GLenum -> GLint -> Ptr a -> IO ()

{-# NOINLINE ptr_glGetCompressedMultiTexImageEXT #-}
ptr_glGetCompressedMultiTexImageEXT :: FunPtr (GLenum -> GLenum -> GLint -> Ptr a -> IO ())
ptr_glGetCompressedMultiTexImageEXT = unsafePerformIO $ getCommand "glGetCompressedMultiTexImageEXT"

-- glGetCompressedTexImage -----------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glGetCompressedTexImage.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glGetCompressedTexImage.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glGetCompressedTexImage.xhtml OpenGL 4.x>
glGetCompressedTexImage
  :: GLenum -- ^ @target@ of type @TextureTarget@.
  -> GLint -- ^ @level@ of type @CheckedInt32@.
  -> Ptr a -- ^ @img@ pointing to @COMPSIZE(target,level)@ elements of type @CompressedTextureARB@.
  -> IO ()
glGetCompressedTexImage = dyn_glGetCompressedTexImage ptr_glGetCompressedTexImage

foreign import CALLCONV "dynamic" dyn_glGetCompressedTexImage
  :: FunPtr (GLenum -> GLint -> Ptr a -> IO ())
  ->         GLenum -> GLint -> Ptr a -> IO ()

{-# NOINLINE ptr_glGetCompressedTexImage #-}
ptr_glGetCompressedTexImage :: FunPtr (GLenum -> GLint -> Ptr a -> IO ())
ptr_glGetCompressedTexImage = unsafePerformIO $ getCommand "glGetCompressedTexImage"

-- glGetCompressedTexImageARB --------------------------------------------------

glGetCompressedTexImageARB
  :: GLenum -- ^ @target@ of type @TextureTarget@.
  -> GLint -- ^ @level@ of type @CheckedInt32@.
  -> Ptr a -- ^ @img@ pointing to @COMPSIZE(target,level)@ elements of type @CompressedTextureARB@.
  -> IO ()
glGetCompressedTexImageARB = dyn_glGetCompressedTexImageARB ptr_glGetCompressedTexImageARB

foreign import CALLCONV "dynamic" dyn_glGetCompressedTexImageARB
  :: FunPtr (GLenum -> GLint -> Ptr a -> IO ())
  ->         GLenum -> GLint -> Ptr a -> IO ()

{-# NOINLINE ptr_glGetCompressedTexImageARB #-}
ptr_glGetCompressedTexImageARB :: FunPtr (GLenum -> GLint -> Ptr a -> IO ())
ptr_glGetCompressedTexImageARB = unsafePerformIO $ getCommand "glGetCompressedTexImageARB"

-- glGetCompressedTextureImage -------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glGetCompressedTexImage.xhtml OpenGL 4.x>
glGetCompressedTextureImage
  :: GLuint -- ^ @texture@.
  -> GLint -- ^ @level@.
  -> GLsizei -- ^ @bufSize@.
  -> Ptr a -- ^ @pixels@.
  -> IO ()
glGetCompressedTextureImage = dyn_glGetCompressedTextureImage ptr_glGetCompressedTextureImage

foreign import CALLCONV "dynamic" dyn_glGetCompressedTextureImage
  :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr a -> IO ())
  ->         GLuint -> GLint -> GLsizei -> Ptr a -> IO ()

{-# NOINLINE ptr_glGetCompressedTextureImage #-}
ptr_glGetCompressedTextureImage :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr a -> IO ())
ptr_glGetCompressedTextureImage = unsafePerformIO $ getCommand "glGetCompressedTextureImage"

-- glGetCompressedTextureImageEXT ----------------------------------------------

glGetCompressedTextureImageEXT
  :: GLuint -- ^ @texture@ of type @Texture@.
  -> GLenum -- ^ @target@ of type @TextureTarget@.
  -> GLint -- ^ @lod@ of type @CheckedInt32@.
  -> Ptr a -- ^ @img@ pointing to @COMPSIZE(target,lod)@ elements of type @a@.
  -> IO ()
glGetCompressedTextureImageEXT = dyn_glGetCompressedTextureImageEXT ptr_glGetCompressedTextureImageEXT

foreign import CALLCONV "dynamic" dyn_glGetCompressedTextureImageEXT
  :: FunPtr (GLuint -> GLenum -> GLint -> Ptr a -> IO ())
  ->         GLuint -> GLenum -> GLint -> Ptr a -> IO ()

{-# NOINLINE ptr_glGetCompressedTextureImageEXT #-}
ptr_glGetCompressedTextureImageEXT :: FunPtr (GLuint -> GLenum -> GLint -> Ptr a -> IO ())
ptr_glGetCompressedTextureImageEXT = unsafePerformIO $ getCommand "glGetCompressedTextureImageEXT"

-- glGetCompressedTextureSubImage ----------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glGetCompressedTextureSubImage.xhtml OpenGL 4.x>
glGetCompressedTextureSubImage
  :: GLuint -- ^ @texture@.
  -> GLint -- ^ @level@.
  -> GLint -- ^ @xoffset@.
  -> GLint -- ^ @yoffset@.
  -> GLint -- ^ @zoffset@.
  -> GLsizei -- ^ @width@.
  -> GLsizei -- ^ @height@.
  -> GLsizei -- ^ @depth@.
  -> GLsizei -- ^ @bufSize@.
  -> Ptr a -- ^ @pixels@.
  -> IO ()
glGetCompressedTextureSubImage = dyn_glGetCompressedTextureSubImage ptr_glGetCompressedTextureSubImage

foreign import CALLCONV "dynamic" dyn_glGetCompressedTextureSubImage
  :: FunPtr (GLuint -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLsizei -> Ptr a -> IO ())
  ->         GLuint -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLsizei -> Ptr a -> IO ()

{-# NOINLINE ptr_glGetCompressedTextureSubImage #-}
ptr_glGetCompressedTextureSubImage :: FunPtr (GLuint -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLsizei -> Ptr a -> IO ())
ptr_glGetCompressedTextureSubImage = unsafePerformIO $ getCommand "glGetCompressedTextureSubImage"

-- glGetConvolutionFilter ------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glGetConvolutionFilter.xml OpenGL 2.x>
glGetConvolutionFilter
  :: GLenum -- ^ @target@ of type @ConvolutionTarget@.
  -> GLenum -- ^ @format@ of type @PixelFormat@.
  -> GLenum -- ^ @type@ of type @PixelType@.
  -> Ptr a -- ^ @image@ pointing to @COMPSIZE(target,format,type)@ elements of type @a@.
  -> IO ()
glGetConvolutionFilter = dyn_glGetConvolutionFilter ptr_glGetConvolutionFilter

foreign import CALLCONV "dynamic" dyn_glGetConvolutionFilter
  :: FunPtr (GLenum -> GLenum -> GLenum -> Ptr a -> IO ())
  ->         GLenum -> GLenum -> GLenum -> Ptr a -> IO ()

{-# NOINLINE ptr_glGetConvolutionFilter #-}
ptr_glGetConvolutionFilter :: FunPtr (GLenum -> GLenum -> GLenum -> Ptr a -> IO ())
ptr_glGetConvolutionFilter = unsafePerformIO $ getCommand "glGetConvolutionFilter"

-- glGetConvolutionFilterEXT ---------------------------------------------------

glGetConvolutionFilterEXT
  :: GLenum -- ^ @target@ of type @ConvolutionTargetEXT@.
  -> GLenum -- ^ @format@ of type @PixelFormat@.
  -> GLenum -- ^ @type@ of type @PixelType@.
  -> Ptr a -- ^ @image@ pointing to @COMPSIZE(target,format,type)@ elements of type @a@.
  -> IO ()
glGetConvolutionFilterEXT = dyn_glGetConvolutionFilterEXT ptr_glGetConvolutionFilterEXT

foreign import CALLCONV "dynamic" dyn_glGetConvolutionFilterEXT
  :: FunPtr (GLenum -> GLenum -> GLenum -> Ptr a -> IO ())
  ->         GLenum -> GLenum -> GLenum -> Ptr a -> IO ()

{-# NOINLINE ptr_glGetConvolutionFilterEXT #-}
ptr_glGetConvolutionFilterEXT :: FunPtr (GLenum -> GLenum -> GLenum -> Ptr a -> IO ())
ptr_glGetConvolutionFilterEXT = unsafePerformIO $ getCommand "glGetConvolutionFilterEXT"

-- glGetConvolutionParameterfv -------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glGetConvolutionParameter.xml OpenGL 2.x>
glGetConvolutionParameterfv
  :: GLenum -- ^ @target@ of type @ConvolutionTarget@.
  -> GLenum -- ^ @pname@ of type @GetConvolutionParameterPName@.
  -> Ptr GLfloat -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLfloat@.
  -> IO ()
glGetConvolutionParameterfv = dyn_glGetConvolutionParameterfv ptr_glGetConvolutionParameterfv

foreign import CALLCONV "dynamic" dyn_glGetConvolutionParameterfv
  :: FunPtr (GLenum -> GLenum -> Ptr GLfloat -> IO ())
  ->         GLenum -> GLenum -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glGetConvolutionParameterfv #-}
ptr_glGetConvolutionParameterfv :: FunPtr (GLenum -> GLenum -> Ptr GLfloat -> IO ())
ptr_glGetConvolutionParameterfv = unsafePerformIO $ getCommand "glGetConvolutionParameterfv"

-- glGetConvolutionParameterfvEXT ----------------------------------------------

glGetConvolutionParameterfvEXT
  :: GLenum -- ^ @target@ of type @ConvolutionTargetEXT@.
  -> GLenum -- ^ @pname@ of type @ConvolutionParameterEXT@.
  -> Ptr GLfloat -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLfloat@.
  -> IO ()
glGetConvolutionParameterfvEXT = dyn_glGetConvolutionParameterfvEXT ptr_glGetConvolutionParameterfvEXT

foreign import CALLCONV "dynamic" dyn_glGetConvolutionParameterfvEXT
  :: FunPtr (GLenum -> GLenum -> Ptr GLfloat -> IO ())
  ->         GLenum -> GLenum -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glGetConvolutionParameterfvEXT #-}
ptr_glGetConvolutionParameterfvEXT :: FunPtr (GLenum -> GLenum -> Ptr GLfloat -> IO ())
ptr_glGetConvolutionParameterfvEXT = unsafePerformIO $ getCommand "glGetConvolutionParameterfvEXT"

-- glGetConvolutionParameteriv -------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glGetConvolutionParameter.xml OpenGL 2.x>
glGetConvolutionParameteriv
  :: GLenum -- ^ @target@ of type @ConvolutionTarget@.
  -> GLenum -- ^ @pname@ of type @GetConvolutionParameterPName@.
  -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLint@.
  -> IO ()
glGetConvolutionParameteriv = dyn_glGetConvolutionParameteriv ptr_glGetConvolutionParameteriv

foreign import CALLCONV "dynamic" dyn_glGetConvolutionParameteriv
  :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
  ->         GLenum -> GLenum -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glGetConvolutionParameteriv #-}
ptr_glGetConvolutionParameteriv :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
ptr_glGetConvolutionParameteriv = unsafePerformIO $ getCommand "glGetConvolutionParameteriv"

-- glGetConvolutionParameterivEXT ----------------------------------------------

glGetConvolutionParameterivEXT
  :: GLenum -- ^ @target@ of type @ConvolutionTargetEXT@.
  -> GLenum -- ^ @pname@ of type @ConvolutionParameterEXT@.
  -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLint@.
  -> IO ()
glGetConvolutionParameterivEXT = dyn_glGetConvolutionParameterivEXT ptr_glGetConvolutionParameterivEXT

foreign import CALLCONV "dynamic" dyn_glGetConvolutionParameterivEXT
  :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
  ->         GLenum -> GLenum -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glGetConvolutionParameterivEXT #-}
ptr_glGetConvolutionParameterivEXT :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
ptr_glGetConvolutionParameterivEXT = unsafePerformIO $ getCommand "glGetConvolutionParameterivEXT"

-- glGetConvolutionParameterxvOES ----------------------------------------------

glGetConvolutionParameterxvOES
  :: GLenum -- ^ @target@.
  -> GLenum -- ^ @pname@.
  -> Ptr GLfixed -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLfixed@.
  -> IO ()
glGetConvolutionParameterxvOES = dyn_glGetConvolutionParameterxvOES ptr_glGetConvolutionParameterxvOES

foreign import CALLCONV "dynamic" dyn_glGetConvolutionParameterxvOES
  :: FunPtr (GLenum -> GLenum -> Ptr GLfixed -> IO ())
  ->         GLenum -> GLenum -> Ptr GLfixed -> IO ()

{-# NOINLINE ptr_glGetConvolutionParameterxvOES #-}
ptr_glGetConvolutionParameterxvOES :: FunPtr (GLenum -> GLenum -> Ptr GLfixed -> IO ())
ptr_glGetConvolutionParameterxvOES = unsafePerformIO $ getCommand "glGetConvolutionParameterxvOES"

-- glGetCoverageModulationTableNV ----------------------------------------------

glGetCoverageModulationTableNV
  :: GLsizei -- ^ @bufsize@.
  -> Ptr GLfloat -- ^ @v@.
  -> IO ()
glGetCoverageModulationTableNV = dyn_glGetCoverageModulationTableNV ptr_glGetCoverageModulationTableNV

foreign import CALLCONV "dynamic" dyn_glGetCoverageModulationTableNV
  :: FunPtr (GLsizei -> Ptr GLfloat -> IO ())
  ->         GLsizei -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glGetCoverageModulationTableNV #-}
ptr_glGetCoverageModulationTableNV :: FunPtr (GLsizei -> Ptr GLfloat -> IO ())
ptr_glGetCoverageModulationTableNV = unsafePerformIO $ getCommand "glGetCoverageModulationTableNV"

-- glGetDebugMessageLog --------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glGetDebugMessageLog.xhtml OpenGL 4.x>
glGetDebugMessageLog
  :: GLuint -- ^ @count@.
  -> GLsizei -- ^ @bufSize@.
  -> Ptr GLenum -- ^ @sources@ pointing to @count@ elements of type @GLenum@.
  -> Ptr GLenum -- ^ @types@ pointing to @count@ elements of type @GLenum@.
  -> Ptr GLuint -- ^ @ids@ pointing to @count@ elements of type @GLuint@.
  -> Ptr GLenum -- ^ @severities@ pointing to @count@ elements of type @GLenum@.
  -> Ptr GLsizei -- ^ @lengths@ pointing to @count@ elements of type @GLsizei@.
  -> Ptr GLchar -- ^ @messageLog@ pointing to @bufSize@ elements of type @GLchar@.
  -> IO GLuint
glGetDebugMessageLog = dyn_glGetDebugMessageLog ptr_glGetDebugMessageLog

foreign import CALLCONV "dynamic" dyn_glGetDebugMessageLog
  :: FunPtr (GLuint -> GLsizei -> Ptr GLenum -> Ptr GLenum -> Ptr GLuint -> Ptr GLenum -> Ptr GLsizei -> Ptr GLchar -> IO GLuint)
  ->         GLuint -> GLsizei -> Ptr GLenum -> Ptr GLenum -> Ptr GLuint -> Ptr GLenum -> Ptr GLsizei -> Ptr GLchar -> IO GLuint

{-# NOINLINE ptr_glGetDebugMessageLog #-}
ptr_glGetDebugMessageLog :: FunPtr (GLuint -> GLsizei -> Ptr GLenum -> Ptr GLenum -> Ptr GLuint -> Ptr GLenum -> Ptr GLsizei -> Ptr GLchar -> IO GLuint)
ptr_glGetDebugMessageLog = unsafePerformIO $ getCommand "glGetDebugMessageLog"

-- glGetDebugMessageLogAMD -----------------------------------------------------

glGetDebugMessageLogAMD
  :: GLuint -- ^ @count@.
  -> GLsizei -- ^ @bufsize@.
  -> Ptr GLenum -- ^ @categories@ pointing to @count@ elements of type @GLenum@.
  -> Ptr GLuint -- ^ @severities@ pointing to @count@ elements of type @GLuint@.
  -> Ptr GLuint -- ^ @ids@ pointing to @count@ elements of type @GLuint@.
  -> Ptr GLsizei -- ^ @lengths@ pointing to @count@ elements of type @GLsizei@.
  -> Ptr GLchar -- ^ @message@ pointing to @bufsize@ elements of type @GLchar@.
  -> IO GLuint
glGetDebugMessageLogAMD = dyn_glGetDebugMessageLogAMD ptr_glGetDebugMessageLogAMD

foreign import CALLCONV "dynamic" dyn_glGetDebugMessageLogAMD
  :: FunPtr (GLuint -> GLsizei -> Ptr GLenum -> Ptr GLuint -> Ptr GLuint -> Ptr GLsizei -> Ptr GLchar -> IO GLuint)
  ->         GLuint -> GLsizei -> Ptr GLenum -> Ptr GLuint -> Ptr GLuint -> Ptr GLsizei -> Ptr GLchar -> IO GLuint

{-# NOINLINE ptr_glGetDebugMessageLogAMD #-}
ptr_glGetDebugMessageLogAMD :: FunPtr (GLuint -> GLsizei -> Ptr GLenum -> Ptr GLuint -> Ptr GLuint -> Ptr GLsizei -> Ptr GLchar -> IO GLuint)
ptr_glGetDebugMessageLogAMD = unsafePerformIO $ getCommand "glGetDebugMessageLogAMD"

-- glGetDebugMessageLogARB -----------------------------------------------------

glGetDebugMessageLogARB
  :: GLuint -- ^ @count@.
  -> GLsizei -- ^ @bufSize@.
  -> Ptr GLenum -- ^ @sources@ pointing to @count@ elements of type @GLenum@.
  -> Ptr GLenum -- ^ @types@ pointing to @count@ elements of type @GLenum@.
  -> Ptr GLuint -- ^ @ids@ pointing to @count@ elements of type @GLuint@.
  -> Ptr GLenum -- ^ @severities@ pointing to @count@ elements of type @GLenum@.
  -> Ptr GLsizei -- ^ @lengths@ pointing to @count@ elements of type @GLsizei@.
  -> Ptr GLchar -- ^ @messageLog@ pointing to @bufSize@ elements of type @GLchar@.
  -> IO GLuint
glGetDebugMessageLogARB = dyn_glGetDebugMessageLogARB ptr_glGetDebugMessageLogARB

foreign import CALLCONV "dynamic" dyn_glGetDebugMessageLogARB
  :: FunPtr (GLuint -> GLsizei -> Ptr GLenum -> Ptr GLenum -> Ptr GLuint -> Ptr GLenum -> Ptr GLsizei -> Ptr GLchar -> IO GLuint)
  ->         GLuint -> GLsizei -> Ptr GLenum -> Ptr GLenum -> Ptr GLuint -> Ptr GLenum -> Ptr GLsizei -> Ptr GLchar -> IO GLuint

{-# NOINLINE ptr_glGetDebugMessageLogARB #-}
ptr_glGetDebugMessageLogARB :: FunPtr (GLuint -> GLsizei -> Ptr GLenum -> Ptr GLenum -> Ptr GLuint -> Ptr GLenum -> Ptr GLsizei -> Ptr GLchar -> IO GLuint)
ptr_glGetDebugMessageLogARB = unsafePerformIO $ getCommand "glGetDebugMessageLogARB"

-- glGetDebugMessageLogKHR -----------------------------------------------------

glGetDebugMessageLogKHR
  :: GLuint -- ^ @count@.
  -> GLsizei -- ^ @bufSize@.
  -> Ptr GLenum -- ^ @sources@ pointing to @count@ elements of type @GLenum@.
  -> Ptr GLenum -- ^ @types@ pointing to @count@ elements of type @GLenum@.
  -> Ptr GLuint -- ^ @ids@ pointing to @count@ elements of type @GLuint@.
  -> Ptr GLenum -- ^ @severities@ pointing to @count@ elements of type @GLenum@.
  -> Ptr GLsizei -- ^ @lengths@ pointing to @count@ elements of type @GLsizei@.
  -> Ptr GLchar -- ^ @messageLog@ pointing to @bufSize@ elements of type @GLchar@.
  -> IO GLuint
glGetDebugMessageLogKHR = dyn_glGetDebugMessageLogKHR ptr_glGetDebugMessageLogKHR

foreign import CALLCONV "dynamic" dyn_glGetDebugMessageLogKHR
  :: FunPtr (GLuint -> GLsizei -> Ptr GLenum -> Ptr GLenum -> Ptr GLuint -> Ptr GLenum -> Ptr GLsizei -> Ptr GLchar -> IO GLuint)
  ->         GLuint -> GLsizei -> Ptr GLenum -> Ptr GLenum -> Ptr GLuint -> Ptr GLenum -> Ptr GLsizei -> Ptr GLchar -> IO GLuint

{-# NOINLINE ptr_glGetDebugMessageLogKHR #-}
ptr_glGetDebugMessageLogKHR :: FunPtr (GLuint -> GLsizei -> Ptr GLenum -> Ptr GLenum -> Ptr GLuint -> Ptr GLenum -> Ptr GLsizei -> Ptr GLchar -> IO GLuint)
ptr_glGetDebugMessageLogKHR = unsafePerformIO $ getCommand "glGetDebugMessageLogKHR"

-- glGetDetailTexFuncSGIS ------------------------------------------------------

glGetDetailTexFuncSGIS
  :: GLenum -- ^ @target@ of type @TextureTarget@.
  -> Ptr GLfloat -- ^ @points@ pointing to @COMPSIZE(target)@ elements of type @GLfloat@.
  -> IO ()
glGetDetailTexFuncSGIS = dyn_glGetDetailTexFuncSGIS ptr_glGetDetailTexFuncSGIS

foreign import CALLCONV "dynamic" dyn_glGetDetailTexFuncSGIS
  :: FunPtr (GLenum -> Ptr GLfloat -> IO ())
  ->         GLenum -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glGetDetailTexFuncSGIS #-}
ptr_glGetDetailTexFuncSGIS :: FunPtr (GLenum -> Ptr GLfloat -> IO ())
ptr_glGetDetailTexFuncSGIS = unsafePerformIO $ getCommand "glGetDetailTexFuncSGIS"

-- glGetDoubleIndexedvEXT ------------------------------------------------------

glGetDoubleIndexedvEXT
  :: GLenum -- ^ @target@ of type @TypeEnum@.
  -> GLuint -- ^ @index@.
  -> Ptr GLdouble -- ^ @data@ pointing to @COMPSIZE(target)@ elements of type @GLdouble@.
  -> IO ()
glGetDoubleIndexedvEXT = dyn_glGetDoubleIndexedvEXT ptr_glGetDoubleIndexedvEXT

foreign import CALLCONV "dynamic" dyn_glGetDoubleIndexedvEXT
  :: FunPtr (GLenum -> GLuint -> Ptr GLdouble -> IO ())
  ->         GLenum -> GLuint -> Ptr GLdouble -> IO ()

{-# NOINLINE ptr_glGetDoubleIndexedvEXT #-}
ptr_glGetDoubleIndexedvEXT :: FunPtr (GLenum -> GLuint -> Ptr GLdouble -> IO ())
ptr_glGetDoubleIndexedvEXT = unsafePerformIO $ getCommand "glGetDoubleIndexedvEXT"

-- glGetDoublei_v --------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glGet.xhtml OpenGL 4.x>
glGetDoublei_v
  :: GLenum -- ^ @target@.
  -> GLuint -- ^ @index@.
  -> Ptr GLdouble -- ^ @data@ pointing to @COMPSIZE(target)@ elements of type @GLdouble@.
  -> IO ()
glGetDoublei_v = dyn_glGetDoublei_v ptr_glGetDoublei_v

foreign import CALLCONV "dynamic" dyn_glGetDoublei_v
  :: FunPtr (GLenum -> GLuint -> Ptr GLdouble -> IO ())
  ->         GLenum -> GLuint -> Ptr GLdouble -> IO ()

{-# NOINLINE ptr_glGetDoublei_v #-}
ptr_glGetDoublei_v :: FunPtr (GLenum -> GLuint -> Ptr GLdouble -> IO ())
ptr_glGetDoublei_v = unsafePerformIO $ getCommand "glGetDoublei_v"

-- glGetDoublei_vEXT -----------------------------------------------------------

glGetDoublei_vEXT
  :: GLenum -- ^ @pname@ of type @TypeEnum@.
  -> GLuint -- ^ @index@.
  -> Ptr GLdouble -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLdouble@.
  -> IO ()
glGetDoublei_vEXT = dyn_glGetDoublei_vEXT ptr_glGetDoublei_vEXT

foreign import CALLCONV "dynamic" dyn_glGetDoublei_vEXT
  :: FunPtr (GLenum -> GLuint -> Ptr GLdouble -> IO ())
  ->         GLenum -> GLuint -> Ptr GLdouble -> IO ()

{-# NOINLINE ptr_glGetDoublei_vEXT #-}
ptr_glGetDoublei_vEXT :: FunPtr (GLenum -> GLuint -> Ptr GLdouble -> IO ())
ptr_glGetDoublei_vEXT = unsafePerformIO $ getCommand "glGetDoublei_vEXT"

-- glGetDoublev ----------------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glGet.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glGet.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glGet.xhtml OpenGL 4.x>
glGetDoublev
  :: GLenum -- ^ @pname@ of type @GetPName@.
  -> Ptr GLdouble -- ^ @data@ pointing to @COMPSIZE(pname)@ elements of type @GLdouble@.
  -> IO ()
glGetDoublev = dyn_glGetDoublev ptr_glGetDoublev

foreign import CALLCONV "dynamic" dyn_glGetDoublev
  :: FunPtr (GLenum -> Ptr GLdouble -> IO ())
  ->         GLenum -> Ptr GLdouble -> IO ()

{-# NOINLINE ptr_glGetDoublev #-}
ptr_glGetDoublev :: FunPtr (GLenum -> Ptr GLdouble -> IO ())
ptr_glGetDoublev = unsafePerformIO $ getCommand "glGetDoublev"

-- glGetDriverControlStringQCOM ------------------------------------------------

glGetDriverControlStringQCOM
  :: GLuint -- ^ @driverControl@.
  -> GLsizei -- ^ @bufSize@.
  -> Ptr GLsizei -- ^ @length@.
  -> Ptr GLchar -- ^ @driverControlString@ pointing to @bufSize@ elements of type @GLchar@.
  -> IO ()
glGetDriverControlStringQCOM = dyn_glGetDriverControlStringQCOM ptr_glGetDriverControlStringQCOM

foreign import CALLCONV "dynamic" dyn_glGetDriverControlStringQCOM
  :: FunPtr (GLuint -> GLsizei -> Ptr GLsizei -> Ptr GLchar -> IO ())
  ->         GLuint -> GLsizei -> Ptr GLsizei -> Ptr GLchar -> IO ()

{-# NOINLINE ptr_glGetDriverControlStringQCOM #-}
ptr_glGetDriverControlStringQCOM :: FunPtr (GLuint -> GLsizei -> Ptr GLsizei -> Ptr GLchar -> IO ())
ptr_glGetDriverControlStringQCOM = unsafePerformIO $ getCommand "glGetDriverControlStringQCOM"

-- glGetDriverControlsQCOM -----------------------------------------------------

glGetDriverControlsQCOM
  :: Ptr GLint -- ^ @num@.
  -> GLsizei -- ^ @size@.
  -> Ptr GLuint -- ^ @driverControls@ pointing to @size@ elements of type @GLuint@.
  -> IO ()
glGetDriverControlsQCOM = dyn_glGetDriverControlsQCOM ptr_glGetDriverControlsQCOM

foreign import CALLCONV "dynamic" dyn_glGetDriverControlsQCOM
  :: FunPtr (Ptr GLint -> GLsizei -> Ptr GLuint -> IO ())
  ->         Ptr GLint -> GLsizei -> Ptr GLuint -> IO ()

{-# NOINLINE ptr_glGetDriverControlsQCOM #-}
ptr_glGetDriverControlsQCOM :: FunPtr (Ptr GLint -> GLsizei -> Ptr GLuint -> IO ())
ptr_glGetDriverControlsQCOM = unsafePerformIO $ getCommand "glGetDriverControlsQCOM"

-- glGetError ------------------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glGetError.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glGetError.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glGetError.xhtml OpenGL 4.x>
glGetError
  :: IO GLenum -- ^ of type @ErrorCode@.
glGetError = dyn_glGetError ptr_glGetError

foreign import CALLCONV "dynamic" dyn_glGetError
  :: FunPtr (IO GLenum)
  ->         IO GLenum

{-# NOINLINE ptr_glGetError #-}
ptr_glGetError :: FunPtr (IO GLenum)
ptr_glGetError = unsafePerformIO $ getCommand "glGetError"

-- glGetFenceivNV --------------------------------------------------------------

glGetFenceivNV
  :: GLuint -- ^ @fence@ of type @FenceNV@.
  -> GLenum -- ^ @pname@ of type @FenceParameterNameNV@.
  -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLint@.
  -> IO ()
glGetFenceivNV = dyn_glGetFenceivNV ptr_glGetFenceivNV

foreign import CALLCONV "dynamic" dyn_glGetFenceivNV
  :: FunPtr (GLuint -> GLenum -> Ptr GLint -> IO ())
  ->         GLuint -> GLenum -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glGetFenceivNV #-}
ptr_glGetFenceivNV :: FunPtr (GLuint -> GLenum -> Ptr GLint -> IO ())
ptr_glGetFenceivNV = unsafePerformIO $ getCommand "glGetFenceivNV"

-- glGetFinalCombinerInputParameterfvNV ----------------------------------------

glGetFinalCombinerInputParameterfvNV
  :: GLenum -- ^ @variable@ of type @CombinerVariableNV@.
  -> GLenum -- ^ @pname@ of type @CombinerParameterNV@.
  -> Ptr GLfloat -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLfloat@.
  -> IO ()
glGetFinalCombinerInputParameterfvNV = dyn_glGetFinalCombinerInputParameterfvNV ptr_glGetFinalCombinerInputParameterfvNV

foreign import CALLCONV "dynamic" dyn_glGetFinalCombinerInputParameterfvNV
  :: FunPtr (GLenum -> GLenum -> Ptr GLfloat -> IO ())
  ->         GLenum -> GLenum -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glGetFinalCombinerInputParameterfvNV #-}
ptr_glGetFinalCombinerInputParameterfvNV :: FunPtr (GLenum -> GLenum -> Ptr GLfloat -> IO ())
ptr_glGetFinalCombinerInputParameterfvNV = unsafePerformIO $ getCommand "glGetFinalCombinerInputParameterfvNV"

-- glGetFinalCombinerInputParameterivNV ----------------------------------------

glGetFinalCombinerInputParameterivNV
  :: GLenum -- ^ @variable@ of type @CombinerVariableNV@.
  -> GLenum -- ^ @pname@ of type @CombinerParameterNV@.
  -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLint@.
  -> IO ()
glGetFinalCombinerInputParameterivNV = dyn_glGetFinalCombinerInputParameterivNV ptr_glGetFinalCombinerInputParameterivNV

foreign import CALLCONV "dynamic" dyn_glGetFinalCombinerInputParameterivNV
  :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
  ->         GLenum -> GLenum -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glGetFinalCombinerInputParameterivNV #-}
ptr_glGetFinalCombinerInputParameterivNV :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
ptr_glGetFinalCombinerInputParameterivNV = unsafePerformIO $ getCommand "glGetFinalCombinerInputParameterivNV"

-- glGetFirstPerfQueryIdINTEL --------------------------------------------------

glGetFirstPerfQueryIdINTEL
  :: Ptr GLuint -- ^ @queryId@.
  -> IO ()
glGetFirstPerfQueryIdINTEL = dyn_glGetFirstPerfQueryIdINTEL ptr_glGetFirstPerfQueryIdINTEL

foreign import CALLCONV "dynamic" dyn_glGetFirstPerfQueryIdINTEL
  :: FunPtr (Ptr GLuint -> IO ())
  ->         Ptr GLuint -> IO ()

{-# NOINLINE ptr_glGetFirstPerfQueryIdINTEL #-}
ptr_glGetFirstPerfQueryIdINTEL :: FunPtr (Ptr GLuint -> IO ())
ptr_glGetFirstPerfQueryIdINTEL = unsafePerformIO $ getCommand "glGetFirstPerfQueryIdINTEL"

-- glGetFixedv -----------------------------------------------------------------

glGetFixedv
  :: GLenum -- ^ @pname@.
  -> Ptr GLfixed -- ^ @params@.
  -> IO ()
glGetFixedv = dyn_glGetFixedv ptr_glGetFixedv

foreign import CALLCONV "dynamic" dyn_glGetFixedv
  :: FunPtr (GLenum -> Ptr GLfixed -> IO ())
  ->         GLenum -> Ptr GLfixed -> IO ()

{-# NOINLINE ptr_glGetFixedv #-}
ptr_glGetFixedv :: FunPtr (GLenum -> Ptr GLfixed -> IO ())
ptr_glGetFixedv = unsafePerformIO $ getCommand "glGetFixedv"

-- glGetFixedvOES --------------------------------------------------------------

glGetFixedvOES
  :: GLenum -- ^ @pname@.
  -> Ptr GLfixed -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLfixed@.
  -> IO ()
glGetFixedvOES = dyn_glGetFixedvOES ptr_glGetFixedvOES

foreign import CALLCONV "dynamic" dyn_glGetFixedvOES
  :: FunPtr (GLenum -> Ptr GLfixed -> IO ())
  ->         GLenum -> Ptr GLfixed -> IO ()

{-# NOINLINE ptr_glGetFixedvOES #-}
ptr_glGetFixedvOES :: FunPtr (GLenum -> Ptr GLfixed -> IO ())
ptr_glGetFixedvOES = unsafePerformIO $ getCommand "glGetFixedvOES"

-- glGetFloatIndexedvEXT -------------------------------------------------------

glGetFloatIndexedvEXT
  :: GLenum -- ^ @target@ of type @TypeEnum@.
  -> GLuint -- ^ @index@.
  -> Ptr GLfloat -- ^ @data@ pointing to @COMPSIZE(target)@ elements of type @GLfloat@.
  -> IO ()
glGetFloatIndexedvEXT = dyn_glGetFloatIndexedvEXT ptr_glGetFloatIndexedvEXT

foreign import CALLCONV "dynamic" dyn_glGetFloatIndexedvEXT
  :: FunPtr (GLenum -> GLuint -> Ptr GLfloat -> IO ())
  ->         GLenum -> GLuint -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glGetFloatIndexedvEXT #-}
ptr_glGetFloatIndexedvEXT :: FunPtr (GLenum -> GLuint -> Ptr GLfloat -> IO ())
ptr_glGetFloatIndexedvEXT = unsafePerformIO $ getCommand "glGetFloatIndexedvEXT"

-- glGetFloati_v ---------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glGet.xhtml OpenGL 4.x>
glGetFloati_v
  :: GLenum -- ^ @target@ of type @TypeEnum@.
  -> GLuint -- ^ @index@.
  -> Ptr GLfloat -- ^ @data@ pointing to @COMPSIZE(target)@ elements of type @GLfloat@.
  -> IO ()
glGetFloati_v = dyn_glGetFloati_v ptr_glGetFloati_v

foreign import CALLCONV "dynamic" dyn_glGetFloati_v
  :: FunPtr (GLenum -> GLuint -> Ptr GLfloat -> IO ())
  ->         GLenum -> GLuint -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glGetFloati_v #-}
ptr_glGetFloati_v :: FunPtr (GLenum -> GLuint -> Ptr GLfloat -> IO ())
ptr_glGetFloati_v = unsafePerformIO $ getCommand "glGetFloati_v"

-- glGetFloati_vEXT ------------------------------------------------------------

glGetFloati_vEXT
  :: GLenum -- ^ @pname@ of type @TypeEnum@.
  -> GLuint -- ^ @index@.
  -> Ptr GLfloat -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLfloat@.
  -> IO ()
glGetFloati_vEXT = dyn_glGetFloati_vEXT ptr_glGetFloati_vEXT

foreign import CALLCONV "dynamic" dyn_glGetFloati_vEXT
  :: FunPtr (GLenum -> GLuint -> Ptr GLfloat -> IO ())
  ->         GLenum -> GLuint -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glGetFloati_vEXT #-}
ptr_glGetFloati_vEXT :: FunPtr (GLenum -> GLuint -> Ptr GLfloat -> IO ())
ptr_glGetFloati_vEXT = unsafePerformIO $ getCommand "glGetFloati_vEXT"

-- glGetFloati_vNV -------------------------------------------------------------

glGetFloati_vNV
  :: GLenum -- ^ @target@ of type @TypeEnum@.
  -> GLuint -- ^ @index@.
  -> Ptr GLfloat -- ^ @data@ pointing to @COMPSIZE(target)@ elements of type @GLfloat@.
  -> IO ()
glGetFloati_vNV = dyn_glGetFloati_vNV ptr_glGetFloati_vNV

foreign import CALLCONV "dynamic" dyn_glGetFloati_vNV
  :: FunPtr (GLenum -> GLuint -> Ptr GLfloat -> IO ())
  ->         GLenum -> GLuint -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glGetFloati_vNV #-}
ptr_glGetFloati_vNV :: FunPtr (GLenum -> GLuint -> Ptr GLfloat -> IO ())
ptr_glGetFloati_vNV = unsafePerformIO $ getCommand "glGetFloati_vNV"

-- glGetFloatv -----------------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glGet.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glGet.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glGet.xhtml OpenGL 4.x>
glGetFloatv
  :: GLenum -- ^ @pname@ of type @GetPName@.
  -> Ptr GLfloat -- ^ @data@ pointing to @COMPSIZE(pname)@ elements of type @GLfloat@.
  -> IO ()
glGetFloatv = dyn_glGetFloatv ptr_glGetFloatv

foreign import CALLCONV "dynamic" dyn_glGetFloatv
  :: FunPtr (GLenum -> Ptr GLfloat -> IO ())
  ->         GLenum -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glGetFloatv #-}
ptr_glGetFloatv :: FunPtr (GLenum -> Ptr GLfloat -> IO ())
ptr_glGetFloatv = unsafePerformIO $ getCommand "glGetFloatv"

-- glGetFogFuncSGIS ------------------------------------------------------------

glGetFogFuncSGIS
  :: Ptr GLfloat -- ^ @points@ pointing to @COMPSIZE()@ elements of type @GLfloat@.
  -> IO ()
glGetFogFuncSGIS = dyn_glGetFogFuncSGIS ptr_glGetFogFuncSGIS

foreign import CALLCONV "dynamic" dyn_glGetFogFuncSGIS
  :: FunPtr (Ptr GLfloat -> IO ())
  ->         Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glGetFogFuncSGIS #-}
ptr_glGetFogFuncSGIS :: FunPtr (Ptr GLfloat -> IO ())
ptr_glGetFogFuncSGIS = unsafePerformIO $ getCommand "glGetFogFuncSGIS"

-- glGetFragDataIndex ----------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glGetFragDataIndex.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glGetFragDataIndex.xhtml OpenGL 4.x>
glGetFragDataIndex
  :: GLuint -- ^ @program@.
  -> Ptr GLchar -- ^ @name@.
  -> IO GLint
glGetFragDataIndex = dyn_glGetFragDataIndex ptr_glGetFragDataIndex

foreign import CALLCONV "dynamic" dyn_glGetFragDataIndex
  :: FunPtr (GLuint -> Ptr GLchar -> IO GLint)
  ->         GLuint -> Ptr GLchar -> IO GLint

{-# NOINLINE ptr_glGetFragDataIndex #-}
ptr_glGetFragDataIndex :: FunPtr (GLuint -> Ptr GLchar -> IO GLint)
ptr_glGetFragDataIndex = unsafePerformIO $ getCommand "glGetFragDataIndex"

-- glGetFragDataLocation -------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glGetFragDataLocation.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glGetFragDataLocation.xhtml OpenGL 4.x>
glGetFragDataLocation
  :: GLuint -- ^ @program@.
  -> Ptr GLchar -- ^ @name@ pointing to @COMPSIZE(name)@ elements of type @GLchar@.
  -> IO GLint
glGetFragDataLocation = dyn_glGetFragDataLocation ptr_glGetFragDataLocation

foreign import CALLCONV "dynamic" dyn_glGetFragDataLocation
  :: FunPtr (GLuint -> Ptr GLchar -> IO GLint)
  ->         GLuint -> Ptr GLchar -> IO GLint

{-# NOINLINE ptr_glGetFragDataLocation #-}
ptr_glGetFragDataLocation :: FunPtr (GLuint -> Ptr GLchar -> IO GLint)
ptr_glGetFragDataLocation = unsafePerformIO $ getCommand "glGetFragDataLocation"

-- glGetFragDataLocationEXT ----------------------------------------------------

glGetFragDataLocationEXT
  :: GLuint -- ^ @program@.
  -> Ptr GLchar -- ^ @name@ pointing to @COMPSIZE(name)@ elements of type @GLchar@.
  -> IO GLint
glGetFragDataLocationEXT = dyn_glGetFragDataLocationEXT ptr_glGetFragDataLocationEXT

foreign import CALLCONV "dynamic" dyn_glGetFragDataLocationEXT
  :: FunPtr (GLuint -> Ptr GLchar -> IO GLint)
  ->         GLuint -> Ptr GLchar -> IO GLint

{-# NOINLINE ptr_glGetFragDataLocationEXT #-}
ptr_glGetFragDataLocationEXT :: FunPtr (GLuint -> Ptr GLchar -> IO GLint)
ptr_glGetFragDataLocationEXT = unsafePerformIO $ getCommand "glGetFragDataLocationEXT"

-- glGetFragmentLightfvSGIX ----------------------------------------------------

glGetFragmentLightfvSGIX
  :: GLenum -- ^ @light@ of type @FragmentLightNameSGIX@.
  -> GLenum -- ^ @pname@ of type @FragmentLightParameterSGIX@.
  -> Ptr GLfloat -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLfloat@.
  -> IO ()
glGetFragmentLightfvSGIX = dyn_glGetFragmentLightfvSGIX ptr_glGetFragmentLightfvSGIX

foreign import CALLCONV "dynamic" dyn_glGetFragmentLightfvSGIX
  :: FunPtr (GLenum -> GLenum -> Ptr GLfloat -> IO ())
  ->         GLenum -> GLenum -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glGetFragmentLightfvSGIX #-}
ptr_glGetFragmentLightfvSGIX :: FunPtr (GLenum -> GLenum -> Ptr GLfloat -> IO ())
ptr_glGetFragmentLightfvSGIX = unsafePerformIO $ getCommand "glGetFragmentLightfvSGIX"

-- glGetFragmentLightivSGIX ----------------------------------------------------

glGetFragmentLightivSGIX
  :: GLenum -- ^ @light@ of type @FragmentLightNameSGIX@.
  -> GLenum -- ^ @pname@ of type @FragmentLightParameterSGIX@.
  -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLint@.
  -> IO ()
glGetFragmentLightivSGIX = dyn_glGetFragmentLightivSGIX ptr_glGetFragmentLightivSGIX

foreign import CALLCONV "dynamic" dyn_glGetFragmentLightivSGIX
  :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
  ->         GLenum -> GLenum -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glGetFragmentLightivSGIX #-}
ptr_glGetFragmentLightivSGIX :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
ptr_glGetFragmentLightivSGIX = unsafePerformIO $ getCommand "glGetFragmentLightivSGIX"

-- glGetFragmentMaterialfvSGIX -------------------------------------------------

glGetFragmentMaterialfvSGIX
  :: GLenum -- ^ @face@ of type @MaterialFace@.
  -> GLenum -- ^ @pname@ of type @MaterialParameter@.
  -> Ptr GLfloat -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLfloat@.
  -> IO ()
glGetFragmentMaterialfvSGIX = dyn_glGetFragmentMaterialfvSGIX ptr_glGetFragmentMaterialfvSGIX

foreign import CALLCONV "dynamic" dyn_glGetFragmentMaterialfvSGIX
  :: FunPtr (GLenum -> GLenum -> Ptr GLfloat -> IO ())
  ->         GLenum -> GLenum -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glGetFragmentMaterialfvSGIX #-}
ptr_glGetFragmentMaterialfvSGIX :: FunPtr (GLenum -> GLenum -> Ptr GLfloat -> IO ())
ptr_glGetFragmentMaterialfvSGIX = unsafePerformIO $ getCommand "glGetFragmentMaterialfvSGIX"

-- glGetFragmentMaterialivSGIX -------------------------------------------------

glGetFragmentMaterialivSGIX
  :: GLenum -- ^ @face@ of type @MaterialFace@.
  -> GLenum -- ^ @pname@ of type @MaterialParameter@.
  -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLint@.
  -> IO ()
glGetFragmentMaterialivSGIX = dyn_glGetFragmentMaterialivSGIX ptr_glGetFragmentMaterialivSGIX

foreign import CALLCONV "dynamic" dyn_glGetFragmentMaterialivSGIX
  :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
  ->         GLenum -> GLenum -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glGetFragmentMaterialivSGIX #-}
ptr_glGetFragmentMaterialivSGIX :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
ptr_glGetFragmentMaterialivSGIX = unsafePerformIO $ getCommand "glGetFragmentMaterialivSGIX"

-- glGetFramebufferAttachmentParameteriv ---------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glGetFramebufferAttachmentParameter.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glGetFramebufferAttachmentParameter.xhtml OpenGL 4.x>
glGetFramebufferAttachmentParameteriv
  :: GLenum -- ^ @target@ of type @FramebufferTarget@.
  -> GLenum -- ^ @attachment@ of type @FramebufferAttachment@.
  -> GLenum -- ^ @pname@.
  -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLint@.
  -> IO ()
glGetFramebufferAttachmentParameteriv = dyn_glGetFramebufferAttachmentParameteriv ptr_glGetFramebufferAttachmentParameteriv

foreign import CALLCONV "dynamic" dyn_glGetFramebufferAttachmentParameteriv
  :: FunPtr (GLenum -> GLenum -> GLenum -> Ptr GLint -> IO ())
  ->         GLenum -> GLenum -> GLenum -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glGetFramebufferAttachmentParameteriv #-}
ptr_glGetFramebufferAttachmentParameteriv :: FunPtr (GLenum -> GLenum -> GLenum -> Ptr GLint -> IO ())
ptr_glGetFramebufferAttachmentParameteriv = unsafePerformIO $ getCommand "glGetFramebufferAttachmentParameteriv"

-- glGetFramebufferAttachmentParameterivEXT ------------------------------------

glGetFramebufferAttachmentParameterivEXT
  :: GLenum -- ^ @target@ of type @FramebufferTarget@.
  -> GLenum -- ^ @attachment@ of type @FramebufferAttachment@.
  -> GLenum -- ^ @pname@.
  -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLint@.
  -> IO ()
glGetFramebufferAttachmentParameterivEXT = dyn_glGetFramebufferAttachmentParameterivEXT ptr_glGetFramebufferAttachmentParameterivEXT

foreign import CALLCONV "dynamic" dyn_glGetFramebufferAttachmentParameterivEXT
  :: FunPtr (GLenum -> GLenum -> GLenum -> Ptr GLint -> IO ())
  ->         GLenum -> GLenum -> GLenum -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glGetFramebufferAttachmentParameterivEXT #-}
ptr_glGetFramebufferAttachmentParameterivEXT :: FunPtr (GLenum -> GLenum -> GLenum -> Ptr GLint -> IO ())
ptr_glGetFramebufferAttachmentParameterivEXT = unsafePerformIO $ getCommand "glGetFramebufferAttachmentParameterivEXT"

-- glGetFramebufferAttachmentParameterivOES ------------------------------------

glGetFramebufferAttachmentParameterivOES
  :: GLenum -- ^ @target@.
  -> GLenum -- ^ @attachment@.
  -> GLenum -- ^ @pname@.
  -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLint@.
  -> IO ()
glGetFramebufferAttachmentParameterivOES = dyn_glGetFramebufferAttachmentParameterivOES ptr_glGetFramebufferAttachmentParameterivOES

foreign import CALLCONV "dynamic" dyn_glGetFramebufferAttachmentParameterivOES
  :: FunPtr (GLenum -> GLenum -> GLenum -> Ptr GLint -> IO ())
  ->         GLenum -> GLenum -> GLenum -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glGetFramebufferAttachmentParameterivOES #-}
ptr_glGetFramebufferAttachmentParameterivOES :: FunPtr (GLenum -> GLenum -> GLenum -> Ptr GLint -> IO ())
ptr_glGetFramebufferAttachmentParameterivOES = unsafePerformIO $ getCommand "glGetFramebufferAttachmentParameterivOES"

-- glGetFramebufferParameteriv -------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glGetFramebufferParameter.xhtml OpenGL 4.x>
glGetFramebufferParameteriv
  :: GLenum -- ^ @target@.
  -> GLenum -- ^ @pname@.
  -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLint@.
  -> IO ()
glGetFramebufferParameteriv = dyn_glGetFramebufferParameteriv ptr_glGetFramebufferParameteriv

foreign import CALLCONV "dynamic" dyn_glGetFramebufferParameteriv
  :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
  ->         GLenum -> GLenum -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glGetFramebufferParameteriv #-}
ptr_glGetFramebufferParameteriv :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
ptr_glGetFramebufferParameteriv = unsafePerformIO $ getCommand "glGetFramebufferParameteriv"

-- glGetFramebufferParameterivEXT ----------------------------------------------

glGetFramebufferParameterivEXT
  :: GLuint -- ^ @framebuffer@ of type @Framebuffer@.
  -> GLenum -- ^ @pname@ of type @GetFramebufferParameter@.
  -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLint@.
  -> IO ()
glGetFramebufferParameterivEXT = dyn_glGetFramebufferParameterivEXT ptr_glGetFramebufferParameterivEXT

foreign import CALLCONV "dynamic" dyn_glGetFramebufferParameterivEXT
  :: FunPtr (GLuint -> GLenum -> Ptr GLint -> IO ())
  ->         GLuint -> GLenum -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glGetFramebufferParameterivEXT #-}
ptr_glGetFramebufferParameterivEXT :: FunPtr (GLuint -> GLenum -> Ptr GLint -> IO ())
ptr_glGetFramebufferParameterivEXT = unsafePerformIO $ getCommand "glGetFramebufferParameterivEXT"

-- glGetGraphicsResetStatus ----------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glGetGraphicsResetStatus.xhtml OpenGL 4.x>
glGetGraphicsResetStatus
  :: IO GLenum
glGetGraphicsResetStatus = dyn_glGetGraphicsResetStatus ptr_glGetGraphicsResetStatus

foreign import CALLCONV "dynamic" dyn_glGetGraphicsResetStatus
  :: FunPtr (IO GLenum)
  ->         IO GLenum

{-# NOINLINE ptr_glGetGraphicsResetStatus #-}
ptr_glGetGraphicsResetStatus :: FunPtr (IO GLenum)
ptr_glGetGraphicsResetStatus = unsafePerformIO $ getCommand "glGetGraphicsResetStatus"

-- glGetGraphicsResetStatusARB -------------------------------------------------

glGetGraphicsResetStatusARB
  :: IO GLenum
glGetGraphicsResetStatusARB = dyn_glGetGraphicsResetStatusARB ptr_glGetGraphicsResetStatusARB

foreign import CALLCONV "dynamic" dyn_glGetGraphicsResetStatusARB
  :: FunPtr (IO GLenum)
  ->         IO GLenum

{-# NOINLINE ptr_glGetGraphicsResetStatusARB #-}
ptr_glGetGraphicsResetStatusARB :: FunPtr (IO GLenum)
ptr_glGetGraphicsResetStatusARB = unsafePerformIO $ getCommand "glGetGraphicsResetStatusARB"

-- glGetGraphicsResetStatusEXT -------------------------------------------------

glGetGraphicsResetStatusEXT
  :: IO GLenum
glGetGraphicsResetStatusEXT = dyn_glGetGraphicsResetStatusEXT ptr_glGetGraphicsResetStatusEXT

foreign import CALLCONV "dynamic" dyn_glGetGraphicsResetStatusEXT
  :: FunPtr (IO GLenum)
  ->         IO GLenum

{-# NOINLINE ptr_glGetGraphicsResetStatusEXT #-}
ptr_glGetGraphicsResetStatusEXT :: FunPtr (IO GLenum)
ptr_glGetGraphicsResetStatusEXT = unsafePerformIO $ getCommand "glGetGraphicsResetStatusEXT"

-- glGetGraphicsResetStatusKHR -------------------------------------------------

glGetGraphicsResetStatusKHR
  :: IO GLenum
glGetGraphicsResetStatusKHR = dyn_glGetGraphicsResetStatusKHR ptr_glGetGraphicsResetStatusKHR

foreign import CALLCONV "dynamic" dyn_glGetGraphicsResetStatusKHR
  :: FunPtr (IO GLenum)
  ->         IO GLenum

{-# NOINLINE ptr_glGetGraphicsResetStatusKHR #-}
ptr_glGetGraphicsResetStatusKHR :: FunPtr (IO GLenum)
ptr_glGetGraphicsResetStatusKHR = unsafePerformIO $ getCommand "glGetGraphicsResetStatusKHR"

-- glGetHandleARB --------------------------------------------------------------

glGetHandleARB
  :: GLenum -- ^ @pname@.
  -> IO GLhandleARB -- ^ of type @handleARB@.
glGetHandleARB = dyn_glGetHandleARB ptr_glGetHandleARB

foreign import CALLCONV "dynamic" dyn_glGetHandleARB
  :: FunPtr (GLenum -> IO GLhandleARB)
  ->         GLenum -> IO GLhandleARB

{-# NOINLINE ptr_glGetHandleARB #-}
ptr_glGetHandleARB :: FunPtr (GLenum -> IO GLhandleARB)
ptr_glGetHandleARB = unsafePerformIO $ getCommand "glGetHandleARB"

-- glGetHistogram --------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glGetHistogram.xml OpenGL 2.x>
glGetHistogram
  :: GLenum -- ^ @target@ of type @HistogramTarget@.
  -> GLboolean -- ^ @reset@ of type @Boolean@.
  -> GLenum -- ^ @format@ of type @PixelFormat@.
  -> GLenum -- ^ @type@ of type @PixelType@.
  -> Ptr a -- ^ @values@ pointing to @COMPSIZE(target,format,type)@ elements of type @a@.
  -> IO ()
glGetHistogram = dyn_glGetHistogram ptr_glGetHistogram

foreign import CALLCONV "dynamic" dyn_glGetHistogram
  :: FunPtr (GLenum -> GLboolean -> GLenum -> GLenum -> Ptr a -> IO ())
  ->         GLenum -> GLboolean -> GLenum -> GLenum -> Ptr a -> IO ()

{-# NOINLINE ptr_glGetHistogram #-}
ptr_glGetHistogram :: FunPtr (GLenum -> GLboolean -> GLenum -> GLenum -> Ptr a -> IO ())
ptr_glGetHistogram = unsafePerformIO $ getCommand "glGetHistogram"

-- glGetHistogramEXT -----------------------------------------------------------

glGetHistogramEXT
  :: GLenum -- ^ @target@ of type @HistogramTargetEXT@.
  -> GLboolean -- ^ @reset@ of type @Boolean@.
  -> GLenum -- ^ @format@ of type @PixelFormat@.
  -> GLenum -- ^ @type@ of type @PixelType@.
  -> Ptr a -- ^ @values@ pointing to @COMPSIZE(target,format,type)@ elements of type @a@.
  -> IO ()
glGetHistogramEXT = dyn_glGetHistogramEXT ptr_glGetHistogramEXT

foreign import CALLCONV "dynamic" dyn_glGetHistogramEXT
  :: FunPtr (GLenum -> GLboolean -> GLenum -> GLenum -> Ptr a -> IO ())
  ->         GLenum -> GLboolean -> GLenum -> GLenum -> Ptr a -> IO ()

{-# NOINLINE ptr_glGetHistogramEXT #-}
ptr_glGetHistogramEXT :: FunPtr (GLenum -> GLboolean -> GLenum -> GLenum -> Ptr a -> IO ())
ptr_glGetHistogramEXT = unsafePerformIO $ getCommand "glGetHistogramEXT"

-- glGetHistogramParameterfv ---------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glGetHistogramParameter.xml OpenGL 2.x>
glGetHistogramParameterfv
  :: GLenum -- ^ @target@ of type @HistogramTarget@.
  -> GLenum -- ^ @pname@ of type @GetHistogramParameterPName@.
  -> Ptr GLfloat -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLfloat@.
  -> IO ()
glGetHistogramParameterfv = dyn_glGetHistogramParameterfv ptr_glGetHistogramParameterfv

foreign import CALLCONV "dynamic" dyn_glGetHistogramParameterfv
  :: FunPtr (GLenum -> GLenum -> Ptr GLfloat -> IO ())
  ->         GLenum -> GLenum -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glGetHistogramParameterfv #-}
ptr_glGetHistogramParameterfv :: FunPtr (GLenum -> GLenum -> Ptr GLfloat -> IO ())
ptr_glGetHistogramParameterfv = unsafePerformIO $ getCommand "glGetHistogramParameterfv"

-- glGetHistogramParameterfvEXT ------------------------------------------------

glGetHistogramParameterfvEXT
  :: GLenum -- ^ @target@ of type @HistogramTargetEXT@.
  -> GLenum -- ^ @pname@ of type @GetHistogramParameterPNameEXT@.
  -> Ptr GLfloat -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLfloat@.
  -> IO ()
glGetHistogramParameterfvEXT = dyn_glGetHistogramParameterfvEXT ptr_glGetHistogramParameterfvEXT

foreign import CALLCONV "dynamic" dyn_glGetHistogramParameterfvEXT
  :: FunPtr (GLenum -> GLenum -> Ptr GLfloat -> IO ())
  ->         GLenum -> GLenum -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glGetHistogramParameterfvEXT #-}
ptr_glGetHistogramParameterfvEXT :: FunPtr (GLenum -> GLenum -> Ptr GLfloat -> IO ())
ptr_glGetHistogramParameterfvEXT = unsafePerformIO $ getCommand "glGetHistogramParameterfvEXT"

-- glGetHistogramParameteriv ---------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glGetHistogramParameter.xml OpenGL 2.x>
glGetHistogramParameteriv
  :: GLenum -- ^ @target@ of type @HistogramTarget@.
  -> GLenum -- ^ @pname@ of type @GetHistogramParameterPName@.
  -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLint@.
  -> IO ()
glGetHistogramParameteriv = dyn_glGetHistogramParameteriv ptr_glGetHistogramParameteriv

foreign import CALLCONV "dynamic" dyn_glGetHistogramParameteriv
  :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
  ->         GLenum -> GLenum -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glGetHistogramParameteriv #-}
ptr_glGetHistogramParameteriv :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
ptr_glGetHistogramParameteriv = unsafePerformIO $ getCommand "glGetHistogramParameteriv"

-- glGetHistogramParameterivEXT ------------------------------------------------

glGetHistogramParameterivEXT
  :: GLenum -- ^ @target@ of type @HistogramTargetEXT@.
  -> GLenum -- ^ @pname@ of type @GetHistogramParameterPNameEXT@.
  -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLint@.
  -> IO ()
glGetHistogramParameterivEXT = dyn_glGetHistogramParameterivEXT ptr_glGetHistogramParameterivEXT

foreign import CALLCONV "dynamic" dyn_glGetHistogramParameterivEXT
  :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
  ->         GLenum -> GLenum -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glGetHistogramParameterivEXT #-}
ptr_glGetHistogramParameterivEXT :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
ptr_glGetHistogramParameterivEXT = unsafePerformIO $ getCommand "glGetHistogramParameterivEXT"

-- glGetHistogramParameterxvOES ------------------------------------------------

glGetHistogramParameterxvOES
  :: GLenum -- ^ @target@.
  -> GLenum -- ^ @pname@.
  -> Ptr GLfixed -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLfixed@.
  -> IO ()
glGetHistogramParameterxvOES = dyn_glGetHistogramParameterxvOES ptr_glGetHistogramParameterxvOES

foreign import CALLCONV "dynamic" dyn_glGetHistogramParameterxvOES
  :: FunPtr (GLenum -> GLenum -> Ptr GLfixed -> IO ())
  ->         GLenum -> GLenum -> Ptr GLfixed -> IO ()

{-# NOINLINE ptr_glGetHistogramParameterxvOES #-}
ptr_glGetHistogramParameterxvOES :: FunPtr (GLenum -> GLenum -> Ptr GLfixed -> IO ())
ptr_glGetHistogramParameterxvOES = unsafePerformIO $ getCommand "glGetHistogramParameterxvOES"

-- glGetImageHandleARB ---------------------------------------------------------

glGetImageHandleARB
  :: GLuint -- ^ @texture@.
  -> GLint -- ^ @level@.
  -> GLboolean -- ^ @layered@.
  -> GLint -- ^ @layer@.
  -> GLenum -- ^ @format@.
  -> IO GLuint64
glGetImageHandleARB = dyn_glGetImageHandleARB ptr_glGetImageHandleARB

foreign import CALLCONV "dynamic" dyn_glGetImageHandleARB
  :: FunPtr (GLuint -> GLint -> GLboolean -> GLint -> GLenum -> IO GLuint64)
  ->         GLuint -> GLint -> GLboolean -> GLint -> GLenum -> IO GLuint64

{-# NOINLINE ptr_glGetImageHandleARB #-}
ptr_glGetImageHandleARB :: FunPtr (GLuint -> GLint -> GLboolean -> GLint -> GLenum -> IO GLuint64)
ptr_glGetImageHandleARB = unsafePerformIO $ getCommand "glGetImageHandleARB"

-- glGetImageHandleNV ----------------------------------------------------------

glGetImageHandleNV
  :: GLuint -- ^ @texture@.
  -> GLint -- ^ @level@.
  -> GLboolean -- ^ @layered@ of type @Boolean@.
  -> GLint -- ^ @layer@.
  -> GLenum -- ^ @format@.
  -> IO GLuint64
glGetImageHandleNV = dyn_glGetImageHandleNV ptr_glGetImageHandleNV

foreign import CALLCONV "dynamic" dyn_glGetImageHandleNV
  :: FunPtr (GLuint -> GLint -> GLboolean -> GLint -> GLenum -> IO GLuint64)
  ->         GLuint -> GLint -> GLboolean -> GLint -> GLenum -> IO GLuint64

{-# NOINLINE ptr_glGetImageHandleNV #-}
ptr_glGetImageHandleNV :: FunPtr (GLuint -> GLint -> GLboolean -> GLint -> GLenum -> IO GLuint64)
ptr_glGetImageHandleNV = unsafePerformIO $ getCommand "glGetImageHandleNV"

-- glGetImageTransformParameterfvHP --------------------------------------------

glGetImageTransformParameterfvHP
  :: GLenum -- ^ @target@ of type @ImageTransformTargetHP@.
  -> GLenum -- ^ @pname@ of type @ImageTransformPNameHP@.
  -> Ptr GLfloat -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLfloat@.
  -> IO ()
glGetImageTransformParameterfvHP = dyn_glGetImageTransformParameterfvHP ptr_glGetImageTransformParameterfvHP

foreign import CALLCONV "dynamic" dyn_glGetImageTransformParameterfvHP
  :: FunPtr (GLenum -> GLenum -> Ptr GLfloat -> IO ())
  ->         GLenum -> GLenum -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glGetImageTransformParameterfvHP #-}
ptr_glGetImageTransformParameterfvHP :: FunPtr (GLenum -> GLenum -> Ptr GLfloat -> IO ())
ptr_glGetImageTransformParameterfvHP = unsafePerformIO $ getCommand "glGetImageTransformParameterfvHP"

-- glGetImageTransformParameterivHP --------------------------------------------

glGetImageTransformParameterivHP
  :: GLenum -- ^ @target@ of type @ImageTransformTargetHP@.
  -> GLenum -- ^ @pname@ of type @ImageTransformPNameHP@.
  -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLint@.
  -> IO ()
glGetImageTransformParameterivHP = dyn_glGetImageTransformParameterivHP ptr_glGetImageTransformParameterivHP

foreign import CALLCONV "dynamic" dyn_glGetImageTransformParameterivHP
  :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
  ->         GLenum -> GLenum -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glGetImageTransformParameterivHP #-}
ptr_glGetImageTransformParameterivHP :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
ptr_glGetImageTransformParameterivHP = unsafePerformIO $ getCommand "glGetImageTransformParameterivHP"

-- glGetInfoLogARB -------------------------------------------------------------

glGetInfoLogARB
  :: GLhandleARB -- ^ @obj@ of type @handleARB@.
  -> GLsizei -- ^ @maxLength@.
  -> Ptr GLsizei -- ^ @length@ pointing to @1@ elements of type @GLsizei@.
  -> Ptr GLcharARB -- ^ @infoLog@ pointing to @maxLength@ elements of type @GLcharARB@.
  -> IO ()
glGetInfoLogARB = dyn_glGetInfoLogARB ptr_glGetInfoLogARB

foreign import CALLCONV "dynamic" dyn_glGetInfoLogARB
  :: FunPtr (GLhandleARB -> GLsizei -> Ptr GLsizei -> Ptr GLcharARB -> IO ())
  ->         GLhandleARB -> GLsizei -> Ptr GLsizei -> Ptr GLcharARB -> IO ()

{-# NOINLINE ptr_glGetInfoLogARB #-}
ptr_glGetInfoLogARB :: FunPtr (GLhandleARB -> GLsizei -> Ptr GLsizei -> Ptr GLcharARB -> IO ())
ptr_glGetInfoLogARB = unsafePerformIO $ getCommand "glGetInfoLogARB"

-- glGetInstrumentsSGIX --------------------------------------------------------

glGetInstrumentsSGIX
  :: IO GLint
glGetInstrumentsSGIX = dyn_glGetInstrumentsSGIX ptr_glGetInstrumentsSGIX

foreign import CALLCONV "dynamic" dyn_glGetInstrumentsSGIX
  :: FunPtr (IO GLint)
  ->         IO GLint

{-# NOINLINE ptr_glGetInstrumentsSGIX #-}
ptr_glGetInstrumentsSGIX :: FunPtr (IO GLint)
ptr_glGetInstrumentsSGIX = unsafePerformIO $ getCommand "glGetInstrumentsSGIX"

-- glGetInteger64i_v -----------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glGet.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glGet.xhtml OpenGL 4.x>
glGetInteger64i_v
  :: GLenum -- ^ @target@.
  -> GLuint -- ^ @index@.
  -> Ptr GLint64 -- ^ @data@ pointing to @COMPSIZE(target)@ elements of type @GLint64@.
  -> IO ()
glGetInteger64i_v = dyn_glGetInteger64i_v ptr_glGetInteger64i_v

foreign import CALLCONV "dynamic" dyn_glGetInteger64i_v
  :: FunPtr (GLenum -> GLuint -> Ptr GLint64 -> IO ())
  ->         GLenum -> GLuint -> Ptr GLint64 -> IO ()

{-# NOINLINE ptr_glGetInteger64i_v #-}
ptr_glGetInteger64i_v :: FunPtr (GLenum -> GLuint -> Ptr GLint64 -> IO ())
ptr_glGetInteger64i_v = unsafePerformIO $ getCommand "glGetInteger64i_v"

-- glGetInteger64v -------------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glGet.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glGet.xhtml OpenGL 4.x>
glGetInteger64v
  :: GLenum -- ^ @pname@.
  -> Ptr GLint64 -- ^ @data@ pointing to @COMPSIZE(pname)@ elements of type @GLint64@.
  -> IO ()
glGetInteger64v = dyn_glGetInteger64v ptr_glGetInteger64v

foreign import CALLCONV "dynamic" dyn_glGetInteger64v
  :: FunPtr (GLenum -> Ptr GLint64 -> IO ())
  ->         GLenum -> Ptr GLint64 -> IO ()

{-# NOINLINE ptr_glGetInteger64v #-}
ptr_glGetInteger64v :: FunPtr (GLenum -> Ptr GLint64 -> IO ())
ptr_glGetInteger64v = unsafePerformIO $ getCommand "glGetInteger64v"

-- glGetInteger64vAPPLE --------------------------------------------------------

glGetInteger64vAPPLE
  :: GLenum -- ^ @pname@.
  -> Ptr GLint64 -- ^ @params@.
  -> IO ()
glGetInteger64vAPPLE = dyn_glGetInteger64vAPPLE ptr_glGetInteger64vAPPLE

foreign import CALLCONV "dynamic" dyn_glGetInteger64vAPPLE
  :: FunPtr (GLenum -> Ptr GLint64 -> IO ())
  ->         GLenum -> Ptr GLint64 -> IO ()

{-# NOINLINE ptr_glGetInteger64vAPPLE #-}
ptr_glGetInteger64vAPPLE :: FunPtr (GLenum -> Ptr GLint64 -> IO ())
ptr_glGetInteger64vAPPLE = unsafePerformIO $ getCommand "glGetInteger64vAPPLE"

-- glGetIntegerIndexedvEXT -----------------------------------------------------

glGetIntegerIndexedvEXT
  :: GLenum -- ^ @target@.
  -> GLuint -- ^ @index@.
  -> Ptr GLint -- ^ @data@ pointing to @COMPSIZE(target)@ elements of type @GLint@.
  -> IO ()
glGetIntegerIndexedvEXT = dyn_glGetIntegerIndexedvEXT ptr_glGetIntegerIndexedvEXT

foreign import CALLCONV "dynamic" dyn_glGetIntegerIndexedvEXT
  :: FunPtr (GLenum -> GLuint -> Ptr GLint -> IO ())
  ->         GLenum -> GLuint -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glGetIntegerIndexedvEXT #-}
ptr_glGetIntegerIndexedvEXT :: FunPtr (GLenum -> GLuint -> Ptr GLint -> IO ())
ptr_glGetIntegerIndexedvEXT = unsafePerformIO $ getCommand "glGetIntegerIndexedvEXT"

-- glGetIntegeri_v -------------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glGet.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glGet.xhtml OpenGL 4.x>
glGetIntegeri_v
  :: GLenum -- ^ @target@.
  -> GLuint -- ^ @index@.
  -> Ptr GLint -- ^ @data@ pointing to @COMPSIZE(target)@ elements of type @GLint@.
  -> IO ()
glGetIntegeri_v = dyn_glGetIntegeri_v ptr_glGetIntegeri_v

foreign import CALLCONV "dynamic" dyn_glGetIntegeri_v
  :: FunPtr (GLenum -> GLuint -> Ptr GLint -> IO ())
  ->         GLenum -> GLuint -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glGetIntegeri_v #-}
ptr_glGetIntegeri_v :: FunPtr (GLenum -> GLuint -> Ptr GLint -> IO ())
ptr_glGetIntegeri_v = unsafePerformIO $ getCommand "glGetIntegeri_v"

-- glGetIntegeri_vEXT ----------------------------------------------------------

glGetIntegeri_vEXT
  :: GLenum -- ^ @target@.
  -> GLuint -- ^ @index@.
  -> Ptr GLint -- ^ @data@.
  -> IO ()
glGetIntegeri_vEXT = dyn_glGetIntegeri_vEXT ptr_glGetIntegeri_vEXT

foreign import CALLCONV "dynamic" dyn_glGetIntegeri_vEXT
  :: FunPtr (GLenum -> GLuint -> Ptr GLint -> IO ())
  ->         GLenum -> GLuint -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glGetIntegeri_vEXT #-}
ptr_glGetIntegeri_vEXT :: FunPtr (GLenum -> GLuint -> Ptr GLint -> IO ())
ptr_glGetIntegeri_vEXT = unsafePerformIO $ getCommand "glGetIntegeri_vEXT"

-- glGetIntegerui64i_vNV -------------------------------------------------------

glGetIntegerui64i_vNV
  :: GLenum -- ^ @value@.
  -> GLuint -- ^ @index@.
  -> Ptr GLuint64EXT -- ^ @result@ pointing to @COMPSIZE(value)@ elements of type @GLuint64EXT@.
  -> IO ()
glGetIntegerui64i_vNV = dyn_glGetIntegerui64i_vNV ptr_glGetIntegerui64i_vNV

foreign import CALLCONV "dynamic" dyn_glGetIntegerui64i_vNV
  :: FunPtr (GLenum -> GLuint -> Ptr GLuint64EXT -> IO ())
  ->         GLenum -> GLuint -> Ptr GLuint64EXT -> IO ()

{-# NOINLINE ptr_glGetIntegerui64i_vNV #-}
ptr_glGetIntegerui64i_vNV :: FunPtr (GLenum -> GLuint -> Ptr GLuint64EXT -> IO ())
ptr_glGetIntegerui64i_vNV = unsafePerformIO $ getCommand "glGetIntegerui64i_vNV"

-- glGetIntegerui64vNV ---------------------------------------------------------

glGetIntegerui64vNV
  :: GLenum -- ^ @value@.
  -> Ptr GLuint64EXT -- ^ @result@ pointing to @COMPSIZE(value)@ elements of type @GLuint64EXT@.
  -> IO ()
glGetIntegerui64vNV = dyn_glGetIntegerui64vNV ptr_glGetIntegerui64vNV

foreign import CALLCONV "dynamic" dyn_glGetIntegerui64vNV
  :: FunPtr (GLenum -> Ptr GLuint64EXT -> IO ())
  ->         GLenum -> Ptr GLuint64EXT -> IO ()

{-# NOINLINE ptr_glGetIntegerui64vNV #-}
ptr_glGetIntegerui64vNV :: FunPtr (GLenum -> Ptr GLuint64EXT -> IO ())
ptr_glGetIntegerui64vNV = unsafePerformIO $ getCommand "glGetIntegerui64vNV"

-- glGetIntegerv ---------------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glGet.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glGet.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glGet.xhtml OpenGL 4.x>
glGetIntegerv
  :: GLenum -- ^ @pname@ of type @GetPName@.
  -> Ptr GLint -- ^ @data@ pointing to @COMPSIZE(pname)@ elements of type @GLint@.
  -> IO ()
glGetIntegerv = dyn_glGetIntegerv ptr_glGetIntegerv

foreign import CALLCONV "dynamic" dyn_glGetIntegerv
  :: FunPtr (GLenum -> Ptr GLint -> IO ())
  ->         GLenum -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glGetIntegerv #-}
ptr_glGetIntegerv :: FunPtr (GLenum -> Ptr GLint -> IO ())
ptr_glGetIntegerv = unsafePerformIO $ getCommand "glGetIntegerv"

-- glGetInternalformatSampleivNV -----------------------------------------------

glGetInternalformatSampleivNV
  :: GLenum -- ^ @target@.
  -> GLenum -- ^ @internalformat@.
  -> GLsizei -- ^ @samples@.
  -> GLenum -- ^ @pname@.
  -> GLsizei -- ^ @bufSize@.
  -> Ptr GLint -- ^ @params@ pointing to @bufSize@ elements of type @GLint@.
  -> IO ()
glGetInternalformatSampleivNV = dyn_glGetInternalformatSampleivNV ptr_glGetInternalformatSampleivNV

foreign import CALLCONV "dynamic" dyn_glGetInternalformatSampleivNV
  :: FunPtr (GLenum -> GLenum -> GLsizei -> GLenum -> GLsizei -> Ptr GLint -> IO ())
  ->         GLenum -> GLenum -> GLsizei -> GLenum -> GLsizei -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glGetInternalformatSampleivNV #-}
ptr_glGetInternalformatSampleivNV :: FunPtr (GLenum -> GLenum -> GLsizei -> GLenum -> GLsizei -> Ptr GLint -> IO ())
ptr_glGetInternalformatSampleivNV = unsafePerformIO $ getCommand "glGetInternalformatSampleivNV"

-- glGetInternalformati64v -----------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glGetInternalformat.xhtml OpenGL 4.x>
glGetInternalformati64v
  :: GLenum -- ^ @target@.
  -> GLenum -- ^ @internalformat@.
  -> GLenum -- ^ @pname@.
  -> GLsizei -- ^ @bufSize@.
  -> Ptr GLint64 -- ^ @params@ pointing to @bufSize@ elements of type @GLint64@.
  -> IO ()
glGetInternalformati64v = dyn_glGetInternalformati64v ptr_glGetInternalformati64v

foreign import CALLCONV "dynamic" dyn_glGetInternalformati64v
  :: FunPtr (GLenum -> GLenum -> GLenum -> GLsizei -> Ptr GLint64 -> IO ())
  ->         GLenum -> GLenum -> GLenum -> GLsizei -> Ptr GLint64 -> IO ()

{-# NOINLINE ptr_glGetInternalformati64v #-}
ptr_glGetInternalformati64v :: FunPtr (GLenum -> GLenum -> GLenum -> GLsizei -> Ptr GLint64 -> IO ())
ptr_glGetInternalformati64v = unsafePerformIO $ getCommand "glGetInternalformati64v"

-- glGetInternalformativ -------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glGetInternalformat.xhtml OpenGL 4.x>
glGetInternalformativ
  :: GLenum -- ^ @target@.
  -> GLenum -- ^ @internalformat@.
  -> GLenum -- ^ @pname@.
  -> GLsizei -- ^ @bufSize@.
  -> Ptr GLint -- ^ @params@ pointing to @bufSize@ elements of type @GLint@.
  -> IO ()
glGetInternalformativ = dyn_glGetInternalformativ ptr_glGetInternalformativ

foreign import CALLCONV "dynamic" dyn_glGetInternalformativ
  :: FunPtr (GLenum -> GLenum -> GLenum -> GLsizei -> Ptr GLint -> IO ())
  ->         GLenum -> GLenum -> GLenum -> GLsizei -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glGetInternalformativ #-}
ptr_glGetInternalformativ :: FunPtr (GLenum -> GLenum -> GLenum -> GLsizei -> Ptr GLint -> IO ())
ptr_glGetInternalformativ = unsafePerformIO $ getCommand "glGetInternalformativ"

-- glGetInvariantBooleanvEXT ---------------------------------------------------

glGetInvariantBooleanvEXT
  :: GLuint -- ^ @id@.
  -> GLenum -- ^ @value@ of type @GetVariantValueEXT@.
  -> Ptr GLboolean -- ^ @data@ pointing to @COMPSIZE(id)@ elements of type @Boolean@.
  -> IO ()
glGetInvariantBooleanvEXT = dyn_glGetInvariantBooleanvEXT ptr_glGetInvariantBooleanvEXT

foreign import CALLCONV "dynamic" dyn_glGetInvariantBooleanvEXT
  :: FunPtr (GLuint -> GLenum -> Ptr GLboolean -> IO ())
  ->         GLuint -> GLenum -> Ptr GLboolean -> IO ()

{-# NOINLINE ptr_glGetInvariantBooleanvEXT #-}
ptr_glGetInvariantBooleanvEXT :: FunPtr (GLuint -> GLenum -> Ptr GLboolean -> IO ())
ptr_glGetInvariantBooleanvEXT = unsafePerformIO $ getCommand "glGetInvariantBooleanvEXT"

-- glGetInvariantFloatvEXT -----------------------------------------------------

glGetInvariantFloatvEXT
  :: GLuint -- ^ @id@.
  -> GLenum -- ^ @value@ of type @GetVariantValueEXT@.
  -> Ptr GLfloat -- ^ @data@ pointing to @COMPSIZE(id)@ elements of type @GLfloat@.
  -> IO ()
glGetInvariantFloatvEXT = dyn_glGetInvariantFloatvEXT ptr_glGetInvariantFloatvEXT

foreign import CALLCONV "dynamic" dyn_glGetInvariantFloatvEXT
  :: FunPtr (GLuint -> GLenum -> Ptr GLfloat -> IO ())
  ->         GLuint -> GLenum -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glGetInvariantFloatvEXT #-}
ptr_glGetInvariantFloatvEXT :: FunPtr (GLuint -> GLenum -> Ptr GLfloat -> IO ())
ptr_glGetInvariantFloatvEXT = unsafePerformIO $ getCommand "glGetInvariantFloatvEXT"

-- glGetInvariantIntegervEXT ---------------------------------------------------

glGetInvariantIntegervEXT
  :: GLuint -- ^ @id@.
  -> GLenum -- ^ @value@ of type @GetVariantValueEXT@.
  -> Ptr GLint -- ^ @data@ pointing to @COMPSIZE(id)@ elements of type @GLint@.
  -> IO ()
glGetInvariantIntegervEXT = dyn_glGetInvariantIntegervEXT ptr_glGetInvariantIntegervEXT

foreign import CALLCONV "dynamic" dyn_glGetInvariantIntegervEXT
  :: FunPtr (GLuint -> GLenum -> Ptr GLint -> IO ())
  ->         GLuint -> GLenum -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glGetInvariantIntegervEXT #-}
ptr_glGetInvariantIntegervEXT :: FunPtr (GLuint -> GLenum -> Ptr GLint -> IO ())
ptr_glGetInvariantIntegervEXT = unsafePerformIO $ getCommand "glGetInvariantIntegervEXT"

-- glGetLightfv ----------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glGetLight.xml OpenGL 2.x>
glGetLightfv
  :: GLenum -- ^ @light@ of type @LightName@.
  -> GLenum -- ^ @pname@ of type @LightParameter@.
  -> Ptr GLfloat -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLfloat@.
  -> IO ()
glGetLightfv = dyn_glGetLightfv ptr_glGetLightfv

foreign import CALLCONV "dynamic" dyn_glGetLightfv
  :: FunPtr (GLenum -> GLenum -> Ptr GLfloat -> IO ())
  ->         GLenum -> GLenum -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glGetLightfv #-}
ptr_glGetLightfv :: FunPtr (GLenum -> GLenum -> Ptr GLfloat -> IO ())
ptr_glGetLightfv = unsafePerformIO $ getCommand "glGetLightfv"

-- glGetLightiv ----------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glGetLight.xml OpenGL 2.x>
glGetLightiv
  :: GLenum -- ^ @light@ of type @LightName@.
  -> GLenum -- ^ @pname@ of type @LightParameter@.
  -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLint@.
  -> IO ()
glGetLightiv = dyn_glGetLightiv ptr_glGetLightiv

foreign import CALLCONV "dynamic" dyn_glGetLightiv
  :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
  ->         GLenum -> GLenum -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glGetLightiv #-}
ptr_glGetLightiv :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
ptr_glGetLightiv = unsafePerformIO $ getCommand "glGetLightiv"

-- glGetLightxOES --------------------------------------------------------------

glGetLightxOES
  :: GLenum -- ^ @light@.
  -> GLenum -- ^ @pname@.
  -> Ptr GLfixed -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLfixed@.
  -> IO ()
glGetLightxOES = dyn_glGetLightxOES ptr_glGetLightxOES

foreign import CALLCONV "dynamic" dyn_glGetLightxOES
  :: FunPtr (GLenum -> GLenum -> Ptr GLfixed -> IO ())
  ->         GLenum -> GLenum -> Ptr GLfixed -> IO ()

{-# NOINLINE ptr_glGetLightxOES #-}
ptr_glGetLightxOES :: FunPtr (GLenum -> GLenum -> Ptr GLfixed -> IO ())
ptr_glGetLightxOES = unsafePerformIO $ getCommand "glGetLightxOES"

-- glGetLightxv ----------------------------------------------------------------

glGetLightxv
  :: GLenum -- ^ @light@.
  -> GLenum -- ^ @pname@.
  -> Ptr GLfixed -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLfixed@.
  -> IO ()
glGetLightxv = dyn_glGetLightxv ptr_glGetLightxv

foreign import CALLCONV "dynamic" dyn_glGetLightxv
  :: FunPtr (GLenum -> GLenum -> Ptr GLfixed -> IO ())
  ->         GLenum -> GLenum -> Ptr GLfixed -> IO ()

{-# NOINLINE ptr_glGetLightxv #-}
ptr_glGetLightxv :: FunPtr (GLenum -> GLenum -> Ptr GLfixed -> IO ())
ptr_glGetLightxv = unsafePerformIO $ getCommand "glGetLightxv"

-- glGetLightxvOES -------------------------------------------------------------

glGetLightxvOES
  :: GLenum -- ^ @light@.
  -> GLenum -- ^ @pname@.
  -> Ptr GLfixed -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLfixed@.
  -> IO ()
glGetLightxvOES = dyn_glGetLightxvOES ptr_glGetLightxvOES

foreign import CALLCONV "dynamic" dyn_glGetLightxvOES
  :: FunPtr (GLenum -> GLenum -> Ptr GLfixed -> IO ())
  ->         GLenum -> GLenum -> Ptr GLfixed -> IO ()

{-# NOINLINE ptr_glGetLightxvOES #-}
ptr_glGetLightxvOES :: FunPtr (GLenum -> GLenum -> Ptr GLfixed -> IO ())
ptr_glGetLightxvOES = unsafePerformIO $ getCommand "glGetLightxvOES"

-- glGetListParameterfvSGIX ----------------------------------------------------

glGetListParameterfvSGIX
  :: GLuint -- ^ @list@ of type @List@.
  -> GLenum -- ^ @pname@ of type @ListParameterName@.
  -> Ptr GLfloat -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @CheckedFloat32@.
  -> IO ()
glGetListParameterfvSGIX = dyn_glGetListParameterfvSGIX ptr_glGetListParameterfvSGIX

foreign import CALLCONV "dynamic" dyn_glGetListParameterfvSGIX
  :: FunPtr (GLuint -> GLenum -> Ptr GLfloat -> IO ())
  ->         GLuint -> GLenum -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glGetListParameterfvSGIX #-}
ptr_glGetListParameterfvSGIX :: FunPtr (GLuint -> GLenum -> Ptr GLfloat -> IO ())
ptr_glGetListParameterfvSGIX = unsafePerformIO $ getCommand "glGetListParameterfvSGIX"

-- glGetListParameterivSGIX ----------------------------------------------------

glGetListParameterivSGIX
  :: GLuint -- ^ @list@ of type @List@.
  -> GLenum -- ^ @pname@ of type @ListParameterName@.
  -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @CheckedInt32@.
  -> IO ()
glGetListParameterivSGIX = dyn_glGetListParameterivSGIX ptr_glGetListParameterivSGIX

foreign import CALLCONV "dynamic" dyn_glGetListParameterivSGIX
  :: FunPtr (GLuint -> GLenum -> Ptr GLint -> IO ())
  ->         GLuint -> GLenum -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glGetListParameterivSGIX #-}
ptr_glGetListParameterivSGIX :: FunPtr (GLuint -> GLenum -> Ptr GLint -> IO ())
ptr_glGetListParameterivSGIX = unsafePerformIO $ getCommand "glGetListParameterivSGIX"

-- glGetLocalConstantBooleanvEXT -----------------------------------------------

glGetLocalConstantBooleanvEXT
  :: GLuint -- ^ @id@.
  -> GLenum -- ^ @value@ of type @GetVariantValueEXT@.
  -> Ptr GLboolean -- ^ @data@ pointing to @COMPSIZE(id)@ elements of type @Boolean@.
  -> IO ()
glGetLocalConstantBooleanvEXT = dyn_glGetLocalConstantBooleanvEXT ptr_glGetLocalConstantBooleanvEXT

foreign import CALLCONV "dynamic" dyn_glGetLocalConstantBooleanvEXT
  :: FunPtr (GLuint -> GLenum -> Ptr GLboolean -> IO ())
  ->         GLuint -> GLenum -> Ptr GLboolean -> IO ()

{-# NOINLINE ptr_glGetLocalConstantBooleanvEXT #-}
ptr_glGetLocalConstantBooleanvEXT :: FunPtr (GLuint -> GLenum -> Ptr GLboolean -> IO ())
ptr_glGetLocalConstantBooleanvEXT = unsafePerformIO $ getCommand "glGetLocalConstantBooleanvEXT"

-- glGetLocalConstantFloatvEXT -------------------------------------------------

glGetLocalConstantFloatvEXT
  :: GLuint -- ^ @id@.
  -> GLenum -- ^ @value@ of type @GetVariantValueEXT@.
  -> Ptr GLfloat -- ^ @data@ pointing to @COMPSIZE(id)@ elements of type @GLfloat@.
  -> IO ()
glGetLocalConstantFloatvEXT = dyn_glGetLocalConstantFloatvEXT ptr_glGetLocalConstantFloatvEXT

foreign import CALLCONV "dynamic" dyn_glGetLocalConstantFloatvEXT
  :: FunPtr (GLuint -> GLenum -> Ptr GLfloat -> IO ())
  ->         GLuint -> GLenum -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glGetLocalConstantFloatvEXT #-}
ptr_glGetLocalConstantFloatvEXT :: FunPtr (GLuint -> GLenum -> Ptr GLfloat -> IO ())
ptr_glGetLocalConstantFloatvEXT = unsafePerformIO $ getCommand "glGetLocalConstantFloatvEXT"

-- glGetLocalConstantIntegervEXT -----------------------------------------------

glGetLocalConstantIntegervEXT
  :: GLuint -- ^ @id@.
  -> GLenum -- ^ @value@ of type @GetVariantValueEXT@.
  -> Ptr GLint -- ^ @data@ pointing to @COMPSIZE(id)@ elements of type @GLint@.
  -> IO ()
glGetLocalConstantIntegervEXT = dyn_glGetLocalConstantIntegervEXT ptr_glGetLocalConstantIntegervEXT

foreign import CALLCONV "dynamic" dyn_glGetLocalConstantIntegervEXT
  :: FunPtr (GLuint -> GLenum -> Ptr GLint -> IO ())
  ->         GLuint -> GLenum -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glGetLocalConstantIntegervEXT #-}
ptr_glGetLocalConstantIntegervEXT :: FunPtr (GLuint -> GLenum -> Ptr GLint -> IO ())
ptr_glGetLocalConstantIntegervEXT = unsafePerformIO $ getCommand "glGetLocalConstantIntegervEXT"

-- glGetMapAttribParameterfvNV -------------------------------------------------

glGetMapAttribParameterfvNV
  :: GLenum -- ^ @target@ of type @EvalTargetNV@.
  -> GLuint -- ^ @index@.
  -> GLenum -- ^ @pname@ of type @MapAttribParameterNV@.
  -> Ptr GLfloat -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLfloat@.
  -> IO ()
glGetMapAttribParameterfvNV = dyn_glGetMapAttribParameterfvNV ptr_glGetMapAttribParameterfvNV

foreign import CALLCONV "dynamic" dyn_glGetMapAttribParameterfvNV
  :: FunPtr (GLenum -> GLuint -> GLenum -> Ptr GLfloat -> IO ())
  ->         GLenum -> GLuint -> GLenum -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glGetMapAttribParameterfvNV #-}
ptr_glGetMapAttribParameterfvNV :: FunPtr (GLenum -> GLuint -> GLenum -> Ptr GLfloat -> IO ())
ptr_glGetMapAttribParameterfvNV = unsafePerformIO $ getCommand "glGetMapAttribParameterfvNV"

-- glGetMapAttribParameterivNV -------------------------------------------------

glGetMapAttribParameterivNV
  :: GLenum -- ^ @target@ of type @EvalTargetNV@.
  -> GLuint -- ^ @index@.
  -> GLenum -- ^ @pname@ of type @MapAttribParameterNV@.
  -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLint@.
  -> IO ()
glGetMapAttribParameterivNV = dyn_glGetMapAttribParameterivNV ptr_glGetMapAttribParameterivNV

foreign import CALLCONV "dynamic" dyn_glGetMapAttribParameterivNV
  :: FunPtr (GLenum -> GLuint -> GLenum -> Ptr GLint -> IO ())
  ->         GLenum -> GLuint -> GLenum -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glGetMapAttribParameterivNV #-}
ptr_glGetMapAttribParameterivNV :: FunPtr (GLenum -> GLuint -> GLenum -> Ptr GLint -> IO ())
ptr_glGetMapAttribParameterivNV = unsafePerformIO $ getCommand "glGetMapAttribParameterivNV"

-- glGetMapControlPointsNV -----------------------------------------------------

glGetMapControlPointsNV
  :: GLenum -- ^ @target@ of type @EvalTargetNV@.
  -> GLuint -- ^ @index@.
  -> GLenum -- ^ @type@ of type @MapTypeNV@.
  -> GLsizei -- ^ @ustride@.
  -> GLsizei -- ^ @vstride@.
  -> GLboolean -- ^ @packed@ of type @Boolean@.
  -> Ptr a -- ^ @points@ pointing to @COMPSIZE(target)@ elements of type @a@.
  -> IO ()
glGetMapControlPointsNV = dyn_glGetMapControlPointsNV ptr_glGetMapControlPointsNV

foreign import CALLCONV "dynamic" dyn_glGetMapControlPointsNV
  :: FunPtr (GLenum -> GLuint -> GLenum -> GLsizei -> GLsizei -> GLboolean -> Ptr a -> IO ())
  ->         GLenum -> GLuint -> GLenum -> GLsizei -> GLsizei -> GLboolean -> Ptr a -> IO ()

{-# NOINLINE ptr_glGetMapControlPointsNV #-}
ptr_glGetMapControlPointsNV :: FunPtr (GLenum -> GLuint -> GLenum -> GLsizei -> GLsizei -> GLboolean -> Ptr a -> IO ())
ptr_glGetMapControlPointsNV = unsafePerformIO $ getCommand "glGetMapControlPointsNV"

-- glGetMapParameterfvNV -------------------------------------------------------

glGetMapParameterfvNV
  :: GLenum -- ^ @target@ of type @EvalTargetNV@.
  -> GLenum -- ^ @pname@ of type @MapParameterNV@.
  -> Ptr GLfloat -- ^ @params@ pointing to @COMPSIZE(target,pname)@ elements of type @GLfloat@.
  -> IO ()
glGetMapParameterfvNV = dyn_glGetMapParameterfvNV ptr_glGetMapParameterfvNV

foreign import CALLCONV "dynamic" dyn_glGetMapParameterfvNV
  :: FunPtr (GLenum -> GLenum -> Ptr GLfloat -> IO ())
  ->         GLenum -> GLenum -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glGetMapParameterfvNV #-}
ptr_glGetMapParameterfvNV :: FunPtr (GLenum -> GLenum -> Ptr GLfloat -> IO ())
ptr_glGetMapParameterfvNV = unsafePerformIO $ getCommand "glGetMapParameterfvNV"

-- glGetMapParameterivNV -------------------------------------------------------

glGetMapParameterivNV
  :: GLenum -- ^ @target@ of type @EvalTargetNV@.
  -> GLenum -- ^ @pname@ of type @MapParameterNV@.
  -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(target,pname)@ elements of type @GLint@.
  -> IO ()
glGetMapParameterivNV = dyn_glGetMapParameterivNV ptr_glGetMapParameterivNV

foreign import CALLCONV "dynamic" dyn_glGetMapParameterivNV
  :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
  ->         GLenum -> GLenum -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glGetMapParameterivNV #-}
ptr_glGetMapParameterivNV :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
ptr_glGetMapParameterivNV = unsafePerformIO $ getCommand "glGetMapParameterivNV"

-- glGetMapdv ------------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glGetMap.xml OpenGL 2.x>
glGetMapdv
  :: GLenum -- ^ @target@ of type @MapTarget@.
  -> GLenum -- ^ @query@ of type @GetMapQuery@.
  -> Ptr GLdouble -- ^ @v@ pointing to @COMPSIZE(target,query)@ elements of type @GLdouble@.
  -> IO ()
glGetMapdv = dyn_glGetMapdv ptr_glGetMapdv

foreign import CALLCONV "dynamic" dyn_glGetMapdv
  :: FunPtr (GLenum -> GLenum -> Ptr GLdouble -> IO ())
  ->         GLenum -> GLenum -> Ptr GLdouble -> IO ()

{-# NOINLINE ptr_glGetMapdv #-}
ptr_glGetMapdv :: FunPtr (GLenum -> GLenum -> Ptr GLdouble -> IO ())
ptr_glGetMapdv = unsafePerformIO $ getCommand "glGetMapdv"

-- glGetMapfv ------------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glGetMap.xml OpenGL 2.x>
glGetMapfv
  :: GLenum -- ^ @target@ of type @MapTarget@.
  -> GLenum -- ^ @query@ of type @GetMapQuery@.
  -> Ptr GLfloat -- ^ @v@ pointing to @COMPSIZE(target,query)@ elements of type @GLfloat@.
  -> IO ()
glGetMapfv = dyn_glGetMapfv ptr_glGetMapfv

foreign import CALLCONV "dynamic" dyn_glGetMapfv
  :: FunPtr (GLenum -> GLenum -> Ptr GLfloat -> IO ())
  ->         GLenum -> GLenum -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glGetMapfv #-}
ptr_glGetMapfv :: FunPtr (GLenum -> GLenum -> Ptr GLfloat -> IO ())
ptr_glGetMapfv = unsafePerformIO $ getCommand "glGetMapfv"

-- glGetMapiv ------------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glGetMap.xml OpenGL 2.x>
glGetMapiv
  :: GLenum -- ^ @target@ of type @MapTarget@.
  -> GLenum -- ^ @query@ of type @GetMapQuery@.
  -> Ptr GLint -- ^ @v@ pointing to @COMPSIZE(target,query)@ elements of type @GLint@.
  -> IO ()
glGetMapiv = dyn_glGetMapiv ptr_glGetMapiv

foreign import CALLCONV "dynamic" dyn_glGetMapiv
  :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
  ->         GLenum -> GLenum -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glGetMapiv #-}
ptr_glGetMapiv :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
ptr_glGetMapiv = unsafePerformIO $ getCommand "glGetMapiv"

-- glGetMapxvOES ---------------------------------------------------------------

glGetMapxvOES
  :: GLenum -- ^ @target@.
  -> GLenum -- ^ @query@.
  -> Ptr GLfixed -- ^ @v@ pointing to @COMPSIZE(query)@ elements of type @GLfixed@.
  -> IO ()
glGetMapxvOES = dyn_glGetMapxvOES ptr_glGetMapxvOES

foreign import CALLCONV "dynamic" dyn_glGetMapxvOES
  :: FunPtr (GLenum -> GLenum -> Ptr GLfixed -> IO ())
  ->         GLenum -> GLenum -> Ptr GLfixed -> IO ()

{-# NOINLINE ptr_glGetMapxvOES #-}
ptr_glGetMapxvOES :: FunPtr (GLenum -> GLenum -> Ptr GLfixed -> IO ())
ptr_glGetMapxvOES = unsafePerformIO $ getCommand "glGetMapxvOES"

-- glGetMaterialfv -------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glGetMaterial.xml OpenGL 2.x>
glGetMaterialfv
  :: GLenum -- ^ @face@ of type @MaterialFace@.
  -> GLenum -- ^ @pname@ of type @MaterialParameter@.
  -> Ptr GLfloat -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLfloat@.
  -> IO ()
glGetMaterialfv = dyn_glGetMaterialfv ptr_glGetMaterialfv

foreign import CALLCONV "dynamic" dyn_glGetMaterialfv
  :: FunPtr (GLenum -> GLenum -> Ptr GLfloat -> IO ())
  ->         GLenum -> GLenum -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glGetMaterialfv #-}
ptr_glGetMaterialfv :: FunPtr (GLenum -> GLenum -> Ptr GLfloat -> IO ())
ptr_glGetMaterialfv = unsafePerformIO $ getCommand "glGetMaterialfv"

-- glGetMaterialiv -------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glGetMaterial.xml OpenGL 2.x>
glGetMaterialiv
  :: GLenum -- ^ @face@ of type @MaterialFace@.
  -> GLenum -- ^ @pname@ of type @MaterialParameter@.
  -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLint@.
  -> IO ()
glGetMaterialiv = dyn_glGetMaterialiv ptr_glGetMaterialiv

foreign import CALLCONV "dynamic" dyn_glGetMaterialiv
  :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
  ->         GLenum -> GLenum -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glGetMaterialiv #-}
ptr_glGetMaterialiv :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
ptr_glGetMaterialiv = unsafePerformIO $ getCommand "glGetMaterialiv"

-- glGetMaterialxOES -----------------------------------------------------------

glGetMaterialxOES
  :: GLenum -- ^ @face@.
  -> GLenum -- ^ @pname@.
  -> GLfixed -- ^ @param@.
  -> IO ()
glGetMaterialxOES = dyn_glGetMaterialxOES ptr_glGetMaterialxOES

foreign import CALLCONV "dynamic" dyn_glGetMaterialxOES
  :: FunPtr (GLenum -> GLenum -> GLfixed -> IO ())
  ->         GLenum -> GLenum -> GLfixed -> IO ()

{-# NOINLINE ptr_glGetMaterialxOES #-}
ptr_glGetMaterialxOES :: FunPtr (GLenum -> GLenum -> GLfixed -> IO ())
ptr_glGetMaterialxOES = unsafePerformIO $ getCommand "glGetMaterialxOES"

-- glGetMaterialxv -------------------------------------------------------------

glGetMaterialxv
  :: GLenum -- ^ @face@.
  -> GLenum -- ^ @pname@.
  -> Ptr GLfixed -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLfixed@.
  -> IO ()
glGetMaterialxv = dyn_glGetMaterialxv ptr_glGetMaterialxv

foreign import CALLCONV "dynamic" dyn_glGetMaterialxv
  :: FunPtr (GLenum -> GLenum -> Ptr GLfixed -> IO ())
  ->         GLenum -> GLenum -> Ptr GLfixed -> IO ()

{-# NOINLINE ptr_glGetMaterialxv #-}
ptr_glGetMaterialxv :: FunPtr (GLenum -> GLenum -> Ptr GLfixed -> IO ())
ptr_glGetMaterialxv = unsafePerformIO $ getCommand "glGetMaterialxv"

-- glGetMaterialxvOES ----------------------------------------------------------

glGetMaterialxvOES
  :: GLenum -- ^ @face@.
  -> GLenum -- ^ @pname@.
  -> Ptr GLfixed -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLfixed@.
  -> IO ()
glGetMaterialxvOES = dyn_glGetMaterialxvOES ptr_glGetMaterialxvOES

foreign import CALLCONV "dynamic" dyn_glGetMaterialxvOES
  :: FunPtr (GLenum -> GLenum -> Ptr GLfixed -> IO ())
  ->         GLenum -> GLenum -> Ptr GLfixed -> IO ()

{-# NOINLINE ptr_glGetMaterialxvOES #-}
ptr_glGetMaterialxvOES :: FunPtr (GLenum -> GLenum -> Ptr GLfixed -> IO ())
ptr_glGetMaterialxvOES = unsafePerformIO $ getCommand "glGetMaterialxvOES"

-- glGetMinmax -----------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glGetMinmax.xml OpenGL 2.x>
glGetMinmax
  :: GLenum -- ^ @target@ of type @MinmaxTarget@.
  -> GLboolean -- ^ @reset@ of type @Boolean@.
  -> GLenum -- ^ @format@ of type @PixelFormat@.
  -> GLenum -- ^ @type@ of type @PixelType@.
  -> Ptr a -- ^ @values@ pointing to @COMPSIZE(target,format,type)@ elements of type @a@.
  -> IO ()
glGetMinmax = dyn_glGetMinmax ptr_glGetMinmax

foreign import CALLCONV "dynamic" dyn_glGetMinmax
  :: FunPtr (GLenum -> GLboolean -> GLenum -> GLenum -> Ptr a -> IO ())
  ->         GLenum -> GLboolean -> GLenum -> GLenum -> Ptr a -> IO ()

{-# NOINLINE ptr_glGetMinmax #-}
ptr_glGetMinmax :: FunPtr (GLenum -> GLboolean -> GLenum -> GLenum -> Ptr a -> IO ())
ptr_glGetMinmax = unsafePerformIO $ getCommand "glGetMinmax"

-- glGetMinmaxEXT --------------------------------------------------------------

glGetMinmaxEXT
  :: GLenum -- ^ @target@ of type @MinmaxTargetEXT@.
  -> GLboolean -- ^ @reset@ of type @Boolean@.
  -> GLenum -- ^ @format@ of type @PixelFormat@.
  -> GLenum -- ^ @type@ of type @PixelType@.
  -> Ptr a -- ^ @values@ pointing to @COMPSIZE(target,format,type)@ elements of type @a@.
  -> IO ()
glGetMinmaxEXT = dyn_glGetMinmaxEXT ptr_glGetMinmaxEXT

foreign import CALLCONV "dynamic" dyn_glGetMinmaxEXT
  :: FunPtr (GLenum -> GLboolean -> GLenum -> GLenum -> Ptr a -> IO ())
  ->         GLenum -> GLboolean -> GLenum -> GLenum -> Ptr a -> IO ()

{-# NOINLINE ptr_glGetMinmaxEXT #-}
ptr_glGetMinmaxEXT :: FunPtr (GLenum -> GLboolean -> GLenum -> GLenum -> Ptr a -> IO ())
ptr_glGetMinmaxEXT = unsafePerformIO $ getCommand "glGetMinmaxEXT"

-- glGetMinmaxParameterfv ------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glGetMinmaxParameter.xml OpenGL 2.x>
glGetMinmaxParameterfv
  :: GLenum -- ^ @target@ of type @MinmaxTarget@.
  -> GLenum -- ^ @pname@ of type @GetMinmaxParameterPName@.
  -> Ptr GLfloat -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLfloat@.
  -> IO ()
glGetMinmaxParameterfv = dyn_glGetMinmaxParameterfv ptr_glGetMinmaxParameterfv

foreign import CALLCONV "dynamic" dyn_glGetMinmaxParameterfv
  :: FunPtr (GLenum -> GLenum -> Ptr GLfloat -> IO ())
  ->         GLenum -> GLenum -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glGetMinmaxParameterfv #-}
ptr_glGetMinmaxParameterfv :: FunPtr (GLenum -> GLenum -> Ptr GLfloat -> IO ())
ptr_glGetMinmaxParameterfv = unsafePerformIO $ getCommand "glGetMinmaxParameterfv"

-- glGetMinmaxParameterfvEXT ---------------------------------------------------

glGetMinmaxParameterfvEXT
  :: GLenum -- ^ @target@ of type @MinmaxTargetEXT@.
  -> GLenum -- ^ @pname@ of type @GetMinmaxParameterPNameEXT@.
  -> Ptr GLfloat -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLfloat@.
  -> IO ()
glGetMinmaxParameterfvEXT = dyn_glGetMinmaxParameterfvEXT ptr_glGetMinmaxParameterfvEXT

foreign import CALLCONV "dynamic" dyn_glGetMinmaxParameterfvEXT
  :: FunPtr (GLenum -> GLenum -> Ptr GLfloat -> IO ())
  ->         GLenum -> GLenum -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glGetMinmaxParameterfvEXT #-}
ptr_glGetMinmaxParameterfvEXT :: FunPtr (GLenum -> GLenum -> Ptr GLfloat -> IO ())
ptr_glGetMinmaxParameterfvEXT = unsafePerformIO $ getCommand "glGetMinmaxParameterfvEXT"

-- glGetMinmaxParameteriv ------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glGetMinmaxParameter.xml OpenGL 2.x>
glGetMinmaxParameteriv
  :: GLenum -- ^ @target@ of type @MinmaxTarget@.
  -> GLenum -- ^ @pname@ of type @GetMinmaxParameterPName@.
  -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLint@.
  -> IO ()
glGetMinmaxParameteriv = dyn_glGetMinmaxParameteriv ptr_glGetMinmaxParameteriv

foreign import CALLCONV "dynamic" dyn_glGetMinmaxParameteriv
  :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
  ->         GLenum -> GLenum -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glGetMinmaxParameteriv #-}
ptr_glGetMinmaxParameteriv :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
ptr_glGetMinmaxParameteriv = unsafePerformIO $ getCommand "glGetMinmaxParameteriv"

-- glGetMinmaxParameterivEXT ---------------------------------------------------

glGetMinmaxParameterivEXT
  :: GLenum -- ^ @target@ of type @MinmaxTargetEXT@.
  -> GLenum -- ^ @pname@ of type @GetMinmaxParameterPNameEXT@.
  -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLint@.
  -> IO ()
glGetMinmaxParameterivEXT = dyn_glGetMinmaxParameterivEXT ptr_glGetMinmaxParameterivEXT

foreign import CALLCONV "dynamic" dyn_glGetMinmaxParameterivEXT
  :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
  ->         GLenum -> GLenum -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glGetMinmaxParameterivEXT #-}
ptr_glGetMinmaxParameterivEXT :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
ptr_glGetMinmaxParameterivEXT = unsafePerformIO $ getCommand "glGetMinmaxParameterivEXT"

-- glGetMultiTexEnvfvEXT -------------------------------------------------------

glGetMultiTexEnvfvEXT
  :: GLenum -- ^ @texunit@ of type @TextureUnit@.
  -> GLenum -- ^ @target@ of type @TextureEnvTarget@.
  -> GLenum -- ^ @pname@ of type @TextureEnvParameter@.
  -> Ptr GLfloat -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLfloat@.
  -> IO ()
glGetMultiTexEnvfvEXT = dyn_glGetMultiTexEnvfvEXT ptr_glGetMultiTexEnvfvEXT

foreign import CALLCONV "dynamic" dyn_glGetMultiTexEnvfvEXT
  :: FunPtr (GLenum -> GLenum -> GLenum -> Ptr GLfloat -> IO ())
  ->         GLenum -> GLenum -> GLenum -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glGetMultiTexEnvfvEXT #-}
ptr_glGetMultiTexEnvfvEXT :: FunPtr (GLenum -> GLenum -> GLenum -> Ptr GLfloat -> IO ())
ptr_glGetMultiTexEnvfvEXT = unsafePerformIO $ getCommand "glGetMultiTexEnvfvEXT"

-- glGetMultiTexEnvivEXT -------------------------------------------------------

glGetMultiTexEnvivEXT
  :: GLenum -- ^ @texunit@ of type @TextureUnit@.
  -> GLenum -- ^ @target@ of type @TextureEnvTarget@.
  -> GLenum -- ^ @pname@ of type @TextureEnvParameter@.
  -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLint@.
  -> IO ()
glGetMultiTexEnvivEXT = dyn_glGetMultiTexEnvivEXT ptr_glGetMultiTexEnvivEXT

foreign import CALLCONV "dynamic" dyn_glGetMultiTexEnvivEXT
  :: FunPtr (GLenum -> GLenum -> GLenum -> Ptr GLint -> IO ())
  ->         GLenum -> GLenum -> GLenum -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glGetMultiTexEnvivEXT #-}
ptr_glGetMultiTexEnvivEXT :: FunPtr (GLenum -> GLenum -> GLenum -> Ptr GLint -> IO ())
ptr_glGetMultiTexEnvivEXT = unsafePerformIO $ getCommand "glGetMultiTexEnvivEXT"

-- glGetMultiTexGendvEXT -------------------------------------------------------

glGetMultiTexGendvEXT
  :: GLenum -- ^ @texunit@ of type @TextureUnit@.
  -> GLenum -- ^ @coord@ of type @TextureCoordName@.
  -> GLenum -- ^ @pname@ of type @TextureGenParameter@.
  -> Ptr GLdouble -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLdouble@.
  -> IO ()
glGetMultiTexGendvEXT = dyn_glGetMultiTexGendvEXT ptr_glGetMultiTexGendvEXT

foreign import CALLCONV "dynamic" dyn_glGetMultiTexGendvEXT
  :: FunPtr (GLenum -> GLenum -> GLenum -> Ptr GLdouble -> IO ())
  ->         GLenum -> GLenum -> GLenum -> Ptr GLdouble -> IO ()

{-# NOINLINE ptr_glGetMultiTexGendvEXT #-}
ptr_glGetMultiTexGendvEXT :: FunPtr (GLenum -> GLenum -> GLenum -> Ptr GLdouble -> IO ())
ptr_glGetMultiTexGendvEXT = unsafePerformIO $ getCommand "glGetMultiTexGendvEXT"

-- glGetMultiTexGenfvEXT -------------------------------------------------------

glGetMultiTexGenfvEXT
  :: GLenum -- ^ @texunit@ of type @TextureUnit@.
  -> GLenum -- ^ @coord@ of type @TextureCoordName@.
  -> GLenum -- ^ @pname@ of type @TextureGenParameter@.
  -> Ptr GLfloat -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLfloat@.
  -> IO ()
glGetMultiTexGenfvEXT = dyn_glGetMultiTexGenfvEXT ptr_glGetMultiTexGenfvEXT

foreign import CALLCONV "dynamic" dyn_glGetMultiTexGenfvEXT
  :: FunPtr (GLenum -> GLenum -> GLenum -> Ptr GLfloat -> IO ())
  ->         GLenum -> GLenum -> GLenum -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glGetMultiTexGenfvEXT #-}
ptr_glGetMultiTexGenfvEXT :: FunPtr (GLenum -> GLenum -> GLenum -> Ptr GLfloat -> IO ())
ptr_glGetMultiTexGenfvEXT = unsafePerformIO $ getCommand "glGetMultiTexGenfvEXT"

-- glGetMultiTexGenivEXT -------------------------------------------------------

glGetMultiTexGenivEXT
  :: GLenum -- ^ @texunit@ of type @TextureUnit@.
  -> GLenum -- ^ @coord@ of type @TextureCoordName@.
  -> GLenum -- ^ @pname@ of type @TextureGenParameter@.
  -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLint@.
  -> IO ()
glGetMultiTexGenivEXT = dyn_glGetMultiTexGenivEXT ptr_glGetMultiTexGenivEXT

foreign import CALLCONV "dynamic" dyn_glGetMultiTexGenivEXT
  :: FunPtr (GLenum -> GLenum -> GLenum -> Ptr GLint -> IO ())
  ->         GLenum -> GLenum -> GLenum -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glGetMultiTexGenivEXT #-}
ptr_glGetMultiTexGenivEXT :: FunPtr (GLenum -> GLenum -> GLenum -> Ptr GLint -> IO ())
ptr_glGetMultiTexGenivEXT = unsafePerformIO $ getCommand "glGetMultiTexGenivEXT"

-- glGetMultiTexImageEXT -------------------------------------------------------

glGetMultiTexImageEXT
  :: GLenum -- ^ @texunit@ of type @TextureUnit@.
  -> GLenum -- ^ @target@ of type @TextureTarget@.
  -> GLint -- ^ @level@ of type @CheckedInt32@.
  -> GLenum -- ^ @format@ of type @PixelFormat@.
  -> GLenum -- ^ @type@ of type @PixelType@.
  -> Ptr a -- ^ @pixels@ pointing to @COMPSIZE(target,level,format,type)@ elements of type @a@.
  -> IO ()
glGetMultiTexImageEXT = dyn_glGetMultiTexImageEXT ptr_glGetMultiTexImageEXT

foreign import CALLCONV "dynamic" dyn_glGetMultiTexImageEXT
  :: FunPtr (GLenum -> GLenum -> GLint -> GLenum -> GLenum -> Ptr a -> IO ())
  ->         GLenum -> GLenum -> GLint -> GLenum -> GLenum -> Ptr a -> IO ()

{-# NOINLINE ptr_glGetMultiTexImageEXT #-}
ptr_glGetMultiTexImageEXT :: FunPtr (GLenum -> GLenum -> GLint -> GLenum -> GLenum -> Ptr a -> IO ())
ptr_glGetMultiTexImageEXT = unsafePerformIO $ getCommand "glGetMultiTexImageEXT"

-- glGetMultiTexLevelParameterfvEXT --------------------------------------------

glGetMultiTexLevelParameterfvEXT
  :: GLenum -- ^ @texunit@ of type @TextureUnit@.
  -> GLenum -- ^ @target@ of type @TextureTarget@.
  -> GLint -- ^ @level@ of type @CheckedInt32@.
  -> GLenum -- ^ @pname@ of type @GetTextureParameter@.
  -> Ptr GLfloat -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLfloat@.
  -> IO ()
glGetMultiTexLevelParameterfvEXT = dyn_glGetMultiTexLevelParameterfvEXT ptr_glGetMultiTexLevelParameterfvEXT

foreign import CALLCONV "dynamic" dyn_glGetMultiTexLevelParameterfvEXT
  :: FunPtr (GLenum -> GLenum -> GLint -> GLenum -> Ptr GLfloat -> IO ())
  ->         GLenum -> GLenum -> GLint -> GLenum -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glGetMultiTexLevelParameterfvEXT #-}
ptr_glGetMultiTexLevelParameterfvEXT :: FunPtr (GLenum -> GLenum -> GLint -> GLenum -> Ptr GLfloat -> IO ())
ptr_glGetMultiTexLevelParameterfvEXT = unsafePerformIO $ getCommand "glGetMultiTexLevelParameterfvEXT"

-- glGetMultiTexLevelParameterivEXT --------------------------------------------

glGetMultiTexLevelParameterivEXT
  :: GLenum -- ^ @texunit@ of type @TextureUnit@.
  -> GLenum -- ^ @target@ of type @TextureTarget@.
  -> GLint -- ^ @level@ of type @CheckedInt32@.
  -> GLenum -- ^ @pname@ of type @GetTextureParameter@.
  -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLint@.
  -> IO ()
glGetMultiTexLevelParameterivEXT = dyn_glGetMultiTexLevelParameterivEXT ptr_glGetMultiTexLevelParameterivEXT

foreign import CALLCONV "dynamic" dyn_glGetMultiTexLevelParameterivEXT
  :: FunPtr (GLenum -> GLenum -> GLint -> GLenum -> Ptr GLint -> IO ())
  ->         GLenum -> GLenum -> GLint -> GLenum -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glGetMultiTexLevelParameterivEXT #-}
ptr_glGetMultiTexLevelParameterivEXT :: FunPtr (GLenum -> GLenum -> GLint -> GLenum -> Ptr GLint -> IO ())
ptr_glGetMultiTexLevelParameterivEXT = unsafePerformIO $ getCommand "glGetMultiTexLevelParameterivEXT"

-- glGetMultiTexParameterIivEXT ------------------------------------------------

glGetMultiTexParameterIivEXT
  :: GLenum -- ^ @texunit@ of type @TextureUnit@.
  -> GLenum -- ^ @target@ of type @TextureTarget@.
  -> GLenum -- ^ @pname@ of type @GetTextureParameter@.
  -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLint@.
  -> IO ()
glGetMultiTexParameterIivEXT = dyn_glGetMultiTexParameterIivEXT ptr_glGetMultiTexParameterIivEXT

foreign import CALLCONV "dynamic" dyn_glGetMultiTexParameterIivEXT
  :: FunPtr (GLenum -> GLenum -> GLenum -> Ptr GLint -> IO ())
  ->         GLenum -> GLenum -> GLenum -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glGetMultiTexParameterIivEXT #-}
ptr_glGetMultiTexParameterIivEXT :: FunPtr (GLenum -> GLenum -> GLenum -> Ptr GLint -> IO ())
ptr_glGetMultiTexParameterIivEXT = unsafePerformIO $ getCommand "glGetMultiTexParameterIivEXT"

-- glGetMultiTexParameterIuivEXT -----------------------------------------------

glGetMultiTexParameterIuivEXT
  :: GLenum -- ^ @texunit@ of type @TextureUnit@.
  -> GLenum -- ^ @target@ of type @TextureTarget@.
  -> GLenum -- ^ @pname@ of type @GetTextureParameter@.
  -> Ptr GLuint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLuint@.
  -> IO ()
glGetMultiTexParameterIuivEXT = dyn_glGetMultiTexParameterIuivEXT ptr_glGetMultiTexParameterIuivEXT

foreign import CALLCONV "dynamic" dyn_glGetMultiTexParameterIuivEXT
  :: FunPtr (GLenum -> GLenum -> GLenum -> Ptr GLuint -> IO ())
  ->         GLenum -> GLenum -> GLenum -> Ptr GLuint -> IO ()

{-# NOINLINE ptr_glGetMultiTexParameterIuivEXT #-}
ptr_glGetMultiTexParameterIuivEXT :: FunPtr (GLenum -> GLenum -> GLenum -> Ptr GLuint -> IO ())
ptr_glGetMultiTexParameterIuivEXT = unsafePerformIO $ getCommand "glGetMultiTexParameterIuivEXT"

-- glGetMultiTexParameterfvEXT -------------------------------------------------

glGetMultiTexParameterfvEXT
  :: GLenum -- ^ @texunit@ of type @TextureUnit@.
  -> GLenum -- ^ @target@ of type @TextureTarget@.
  -> GLenum -- ^ @pname@ of type @GetTextureParameter@.
  -> Ptr GLfloat -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLfloat@.
  -> IO ()
glGetMultiTexParameterfvEXT = dyn_glGetMultiTexParameterfvEXT ptr_glGetMultiTexParameterfvEXT

foreign import CALLCONV "dynamic" dyn_glGetMultiTexParameterfvEXT
  :: FunPtr (GLenum -> GLenum -> GLenum -> Ptr GLfloat -> IO ())
  ->         GLenum -> GLenum -> GLenum -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glGetMultiTexParameterfvEXT #-}
ptr_glGetMultiTexParameterfvEXT :: FunPtr (GLenum -> GLenum -> GLenum -> Ptr GLfloat -> IO ())
ptr_glGetMultiTexParameterfvEXT = unsafePerformIO $ getCommand "glGetMultiTexParameterfvEXT"

-- glGetMultiTexParameterivEXT -------------------------------------------------

glGetMultiTexParameterivEXT
  :: GLenum -- ^ @texunit@ of type @TextureUnit@.
  -> GLenum -- ^ @target@ of type @TextureTarget@.
  -> GLenum -- ^ @pname@ of type @GetTextureParameter@.
  -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLint@.
  -> IO ()
glGetMultiTexParameterivEXT = dyn_glGetMultiTexParameterivEXT ptr_glGetMultiTexParameterivEXT

foreign import CALLCONV "dynamic" dyn_glGetMultiTexParameterivEXT
  :: FunPtr (GLenum -> GLenum -> GLenum -> Ptr GLint -> IO ())
  ->         GLenum -> GLenum -> GLenum -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glGetMultiTexParameterivEXT #-}
ptr_glGetMultiTexParameterivEXT :: FunPtr (GLenum -> GLenum -> GLenum -> Ptr GLint -> IO ())
ptr_glGetMultiTexParameterivEXT = unsafePerformIO $ getCommand "glGetMultiTexParameterivEXT"

-- glGetMultisamplefv ----------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glGetMultisample.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glGetMultisample.xhtml OpenGL 4.x>
glGetMultisamplefv
  :: GLenum -- ^ @pname@.
  -> GLuint -- ^ @index@.
  -> Ptr GLfloat -- ^ @val@ pointing to @COMPSIZE(pname)@ elements of type @GLfloat@.
  -> IO ()
glGetMultisamplefv = dyn_glGetMultisamplefv ptr_glGetMultisamplefv

foreign import CALLCONV "dynamic" dyn_glGetMultisamplefv
  :: FunPtr (GLenum -> GLuint -> Ptr GLfloat -> IO ())
  ->         GLenum -> GLuint -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glGetMultisamplefv #-}
ptr_glGetMultisamplefv :: FunPtr (GLenum -> GLuint -> Ptr GLfloat -> IO ())
ptr_glGetMultisamplefv = unsafePerformIO $ getCommand "glGetMultisamplefv"

-- glGetMultisamplefvNV --------------------------------------------------------

glGetMultisamplefvNV
  :: GLenum -- ^ @pname@ of type @GetMultisamplePNameNV@.
  -> GLuint -- ^ @index@.
  -> Ptr GLfloat -- ^ @val@ pointing to @2@ elements of type @GLfloat@.
  -> IO ()
glGetMultisamplefvNV = dyn_glGetMultisamplefvNV ptr_glGetMultisamplefvNV

foreign import CALLCONV "dynamic" dyn_glGetMultisamplefvNV
  :: FunPtr (GLenum -> GLuint -> Ptr GLfloat -> IO ())
  ->         GLenum -> GLuint -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glGetMultisamplefvNV #-}
ptr_glGetMultisamplefvNV :: FunPtr (GLenum -> GLuint -> Ptr GLfloat -> IO ())
ptr_glGetMultisamplefvNV = unsafePerformIO $ getCommand "glGetMultisamplefvNV"

-- glGetNamedBufferParameteri64v -----------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glGetBufferParameter.xhtml OpenGL 4.x>
glGetNamedBufferParameteri64v
  :: GLuint -- ^ @buffer@.
  -> GLenum -- ^ @pname@.
  -> Ptr GLint64 -- ^ @params@.
  -> IO ()
glGetNamedBufferParameteri64v = dyn_glGetNamedBufferParameteri64v ptr_glGetNamedBufferParameteri64v

foreign import CALLCONV "dynamic" dyn_glGetNamedBufferParameteri64v
  :: FunPtr (GLuint -> GLenum -> Ptr GLint64 -> IO ())
  ->         GLuint -> GLenum -> Ptr GLint64 -> IO ()

{-# NOINLINE ptr_glGetNamedBufferParameteri64v #-}
ptr_glGetNamedBufferParameteri64v :: FunPtr (GLuint -> GLenum -> Ptr GLint64 -> IO ())
ptr_glGetNamedBufferParameteri64v = unsafePerformIO $ getCommand "glGetNamedBufferParameteri64v"

-- glGetNamedBufferParameteriv -------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glGetBufferParameter.xhtml OpenGL 4.x>
glGetNamedBufferParameteriv
  :: GLuint -- ^ @buffer@.
  -> GLenum -- ^ @pname@.
  -> Ptr GLint -- ^ @params@.
  -> IO ()
glGetNamedBufferParameteriv = dyn_glGetNamedBufferParameteriv ptr_glGetNamedBufferParameteriv

foreign import CALLCONV "dynamic" dyn_glGetNamedBufferParameteriv
  :: FunPtr (GLuint -> GLenum -> Ptr GLint -> IO ())
  ->         GLuint -> GLenum -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glGetNamedBufferParameteriv #-}
ptr_glGetNamedBufferParameteriv :: FunPtr (GLuint -> GLenum -> Ptr GLint -> IO ())
ptr_glGetNamedBufferParameteriv = unsafePerformIO $ getCommand "glGetNamedBufferParameteriv"

-- glGetNamedBufferParameterivEXT ----------------------------------------------

glGetNamedBufferParameterivEXT
  :: GLuint -- ^ @buffer@.
  -> GLenum -- ^ @pname@ of type @VertexBufferObjectParameter@.
  -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLint@.
  -> IO ()
glGetNamedBufferParameterivEXT = dyn_glGetNamedBufferParameterivEXT ptr_glGetNamedBufferParameterivEXT

foreign import CALLCONV "dynamic" dyn_glGetNamedBufferParameterivEXT
  :: FunPtr (GLuint -> GLenum -> Ptr GLint -> IO ())
  ->         GLuint -> GLenum -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glGetNamedBufferParameterivEXT #-}
ptr_glGetNamedBufferParameterivEXT :: FunPtr (GLuint -> GLenum -> Ptr GLint -> IO ())
ptr_glGetNamedBufferParameterivEXT = unsafePerformIO $ getCommand "glGetNamedBufferParameterivEXT"

-- glGetNamedBufferParameterui64vNV --------------------------------------------

glGetNamedBufferParameterui64vNV
  :: GLuint -- ^ @buffer@.
  -> GLenum -- ^ @pname@ of type @VertexBufferObjectParameter@.
  -> Ptr GLuint64EXT -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLuint64EXT@.
  -> IO ()
glGetNamedBufferParameterui64vNV = dyn_glGetNamedBufferParameterui64vNV ptr_glGetNamedBufferParameterui64vNV

foreign import CALLCONV "dynamic" dyn_glGetNamedBufferParameterui64vNV
  :: FunPtr (GLuint -> GLenum -> Ptr GLuint64EXT -> IO ())
  ->         GLuint -> GLenum -> Ptr GLuint64EXT -> IO ()

{-# NOINLINE ptr_glGetNamedBufferParameterui64vNV #-}
ptr_glGetNamedBufferParameterui64vNV :: FunPtr (GLuint -> GLenum -> Ptr GLuint64EXT -> IO ())
ptr_glGetNamedBufferParameterui64vNV = unsafePerformIO $ getCommand "glGetNamedBufferParameterui64vNV"

-- glGetNamedBufferPointerv ----------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glGetBufferPointerv.xhtml OpenGL 4.x>
glGetNamedBufferPointerv
  :: GLuint -- ^ @buffer@.
  -> GLenum -- ^ @pname@.
  -> Ptr (Ptr a) -- ^ @params@.
  -> IO ()
glGetNamedBufferPointerv = dyn_glGetNamedBufferPointerv ptr_glGetNamedBufferPointerv

foreign import CALLCONV "dynamic" dyn_glGetNamedBufferPointerv
  :: FunPtr (GLuint -> GLenum -> Ptr (Ptr a) -> IO ())
  ->         GLuint -> GLenum -> Ptr (Ptr a) -> IO ()

{-# NOINLINE ptr_glGetNamedBufferPointerv #-}
ptr_glGetNamedBufferPointerv :: FunPtr (GLuint -> GLenum -> Ptr (Ptr a) -> IO ())
ptr_glGetNamedBufferPointerv = unsafePerformIO $ getCommand "glGetNamedBufferPointerv"

-- glGetNamedBufferPointervEXT -------------------------------------------------

glGetNamedBufferPointervEXT
  :: GLuint -- ^ @buffer@.
  -> GLenum -- ^ @pname@ of type @VertexBufferObjectParameter@.
  -> Ptr (Ptr a) -- ^ @params@ pointing to @1@ elements of type @Ptr a@.
  -> IO ()
glGetNamedBufferPointervEXT = dyn_glGetNamedBufferPointervEXT ptr_glGetNamedBufferPointervEXT

foreign import CALLCONV "dynamic" dyn_glGetNamedBufferPointervEXT
  :: FunPtr (GLuint -> GLenum -> Ptr (Ptr a) -> IO ())
  ->         GLuint -> GLenum -> Ptr (Ptr a) -> IO ()

{-# NOINLINE ptr_glGetNamedBufferPointervEXT #-}
ptr_glGetNamedBufferPointervEXT :: FunPtr (GLuint -> GLenum -> Ptr (Ptr a) -> IO ())
ptr_glGetNamedBufferPointervEXT = unsafePerformIO $ getCommand "glGetNamedBufferPointervEXT"

-- glGetNamedBufferSubData -----------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glGetBufferSubData.xhtml OpenGL 4.x>
glGetNamedBufferSubData
  :: GLuint -- ^ @buffer@.
  -> GLintptr -- ^ @offset@.
  -> GLsizeiptr -- ^ @size@ of type @BufferSize@.
  -> Ptr a -- ^ @data@.
  -> IO ()
glGetNamedBufferSubData = dyn_glGetNamedBufferSubData ptr_glGetNamedBufferSubData

foreign import CALLCONV "dynamic" dyn_glGetNamedBufferSubData
  :: FunPtr (GLuint -> GLintptr -> GLsizeiptr -> Ptr a -> IO ())
  ->         GLuint -> GLintptr -> GLsizeiptr -> Ptr a -> IO ()

{-# NOINLINE ptr_glGetNamedBufferSubData #-}
ptr_glGetNamedBufferSubData :: FunPtr (GLuint -> GLintptr -> GLsizeiptr -> Ptr a -> IO ())
ptr_glGetNamedBufferSubData = unsafePerformIO $ getCommand "glGetNamedBufferSubData"

-- glGetNamedBufferSubDataEXT --------------------------------------------------

glGetNamedBufferSubDataEXT
  :: GLuint -- ^ @buffer@.
  -> GLintptr -- ^ @offset@.
  -> GLsizeiptr -- ^ @size@.
  -> Ptr a -- ^ @data@ pointing to @COMPSIZE(size)@ elements of type @a@.
  -> IO ()
glGetNamedBufferSubDataEXT = dyn_glGetNamedBufferSubDataEXT ptr_glGetNamedBufferSubDataEXT

foreign import CALLCONV "dynamic" dyn_glGetNamedBufferSubDataEXT
  :: FunPtr (GLuint -> GLintptr -> GLsizeiptr -> Ptr a -> IO ())
  ->         GLuint -> GLintptr -> GLsizeiptr -> Ptr a -> IO ()

{-# NOINLINE ptr_glGetNamedBufferSubDataEXT #-}
ptr_glGetNamedBufferSubDataEXT :: FunPtr (GLuint -> GLintptr -> GLsizeiptr -> Ptr a -> IO ())
ptr_glGetNamedBufferSubDataEXT = unsafePerformIO $ getCommand "glGetNamedBufferSubDataEXT"

-- glGetNamedFramebufferAttachmentParameteriv ----------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glGetFramebufferAttachmentParameter.xhtml OpenGL 4.x>
glGetNamedFramebufferAttachmentParameteriv
  :: GLuint -- ^ @framebuffer@.
  -> GLenum -- ^ @attachment@.
  -> GLenum -- ^ @pname@.
  -> Ptr GLint -- ^ @params@.
  -> IO ()
glGetNamedFramebufferAttachmentParameteriv = dyn_glGetNamedFramebufferAttachmentParameteriv ptr_glGetNamedFramebufferAttachmentParameteriv

foreign import CALLCONV "dynamic" dyn_glGetNamedFramebufferAttachmentParameteriv
  :: FunPtr (GLuint -> GLenum -> GLenum -> Ptr GLint -> IO ())
  ->         GLuint -> GLenum -> GLenum -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glGetNamedFramebufferAttachmentParameteriv #-}
ptr_glGetNamedFramebufferAttachmentParameteriv :: FunPtr (GLuint -> GLenum -> GLenum -> Ptr GLint -> IO ())
ptr_glGetNamedFramebufferAttachmentParameteriv = unsafePerformIO $ getCommand "glGetNamedFramebufferAttachmentParameteriv"

-- glGetNamedFramebufferAttachmentParameterivEXT -------------------------------

glGetNamedFramebufferAttachmentParameterivEXT
  :: GLuint -- ^ @framebuffer@ of type @Framebuffer@.
  -> GLenum -- ^ @attachment@ of type @FramebufferAttachment@.
  -> GLenum -- ^ @pname@ of type @FramebufferAttachmentParameterName@.
  -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLint@.
  -> IO ()
glGetNamedFramebufferAttachmentParameterivEXT = dyn_glGetNamedFramebufferAttachmentParameterivEXT ptr_glGetNamedFramebufferAttachmentParameterivEXT

foreign import CALLCONV "dynamic" dyn_glGetNamedFramebufferAttachmentParameterivEXT
  :: FunPtr (GLuint -> GLenum -> GLenum -> Ptr GLint -> IO ())
  ->         GLuint -> GLenum -> GLenum -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glGetNamedFramebufferAttachmentParameterivEXT #-}
ptr_glGetNamedFramebufferAttachmentParameterivEXT :: FunPtr (GLuint -> GLenum -> GLenum -> Ptr GLint -> IO ())
ptr_glGetNamedFramebufferAttachmentParameterivEXT = unsafePerformIO $ getCommand "glGetNamedFramebufferAttachmentParameterivEXT"

-- glGetNamedFramebufferParameteriv --------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glGetFramebufferParameter.xhtml OpenGL 4.x>
glGetNamedFramebufferParameteriv
  :: GLuint -- ^ @framebuffer@.
  -> GLenum -- ^ @pname@.
  -> Ptr GLint -- ^ @param@.
  -> IO ()
glGetNamedFramebufferParameteriv = dyn_glGetNamedFramebufferParameteriv ptr_glGetNamedFramebufferParameteriv

foreign import CALLCONV "dynamic" dyn_glGetNamedFramebufferParameteriv
  :: FunPtr (GLuint -> GLenum -> Ptr GLint -> IO ())
  ->         GLuint -> GLenum -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glGetNamedFramebufferParameteriv #-}
ptr_glGetNamedFramebufferParameteriv :: FunPtr (GLuint -> GLenum -> Ptr GLint -> IO ())
ptr_glGetNamedFramebufferParameteriv = unsafePerformIO $ getCommand "glGetNamedFramebufferParameteriv"

-- glGetNamedFramebufferParameterivEXT -----------------------------------------

glGetNamedFramebufferParameterivEXT
  :: GLuint -- ^ @framebuffer@ of type @Framebuffer@.
  -> GLenum -- ^ @pname@ of type @GetFramebufferParameter@.
  -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLint@.
  -> IO ()
glGetNamedFramebufferParameterivEXT = dyn_glGetNamedFramebufferParameterivEXT ptr_glGetNamedFramebufferParameterivEXT

foreign import CALLCONV "dynamic" dyn_glGetNamedFramebufferParameterivEXT
  :: FunPtr (GLuint -> GLenum -> Ptr GLint -> IO ())
  ->         GLuint -> GLenum -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glGetNamedFramebufferParameterivEXT #-}
ptr_glGetNamedFramebufferParameterivEXT :: FunPtr (GLuint -> GLenum -> Ptr GLint -> IO ())
ptr_glGetNamedFramebufferParameterivEXT = unsafePerformIO $ getCommand "glGetNamedFramebufferParameterivEXT"

-- glGetNamedProgramLocalParameterIivEXT ---------------------------------------

glGetNamedProgramLocalParameterIivEXT
  :: GLuint -- ^ @program@.
  -> GLenum -- ^ @target@ of type @ProgramTarget@.
  -> GLuint -- ^ @index@.
  -> Ptr GLint -- ^ @params@ pointing to @4@ elements of type @GLint@.
  -> IO ()
glGetNamedProgramLocalParameterIivEXT = dyn_glGetNamedProgramLocalParameterIivEXT ptr_glGetNamedProgramLocalParameterIivEXT

foreign import CALLCONV "dynamic" dyn_glGetNamedProgramLocalParameterIivEXT
  :: FunPtr (GLuint -> GLenum -> GLuint -> Ptr GLint -> IO ())
  ->         GLuint -> GLenum -> GLuint -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glGetNamedProgramLocalParameterIivEXT #-}
ptr_glGetNamedProgramLocalParameterIivEXT :: FunPtr (GLuint -> GLenum -> GLuint -> Ptr GLint -> IO ())
ptr_glGetNamedProgramLocalParameterIivEXT = unsafePerformIO $ getCommand "glGetNamedProgramLocalParameterIivEXT"

-- glGetNamedProgramLocalParameterIuivEXT --------------------------------------

glGetNamedProgramLocalParameterIuivEXT
  :: GLuint -- ^ @program@.
  -> GLenum -- ^ @target@ of type @ProgramTarget@.
  -> GLuint -- ^ @index@.
  -> Ptr GLuint -- ^ @params@ pointing to @4@ elements of type @GLuint@.
  -> IO ()
glGetNamedProgramLocalParameterIuivEXT = dyn_glGetNamedProgramLocalParameterIuivEXT ptr_glGetNamedProgramLocalParameterIuivEXT

foreign import CALLCONV "dynamic" dyn_glGetNamedProgramLocalParameterIuivEXT
  :: FunPtr (GLuint -> GLenum -> GLuint -> Ptr GLuint -> IO ())
  ->         GLuint -> GLenum -> GLuint -> Ptr GLuint -> IO ()

{-# NOINLINE ptr_glGetNamedProgramLocalParameterIuivEXT #-}
ptr_glGetNamedProgramLocalParameterIuivEXT :: FunPtr (GLuint -> GLenum -> GLuint -> Ptr GLuint -> IO ())
ptr_glGetNamedProgramLocalParameterIuivEXT = unsafePerformIO $ getCommand "glGetNamedProgramLocalParameterIuivEXT"

-- glGetNamedProgramLocalParameterdvEXT ----------------------------------------

glGetNamedProgramLocalParameterdvEXT
  :: GLuint -- ^ @program@.
  -> GLenum -- ^ @target@ of type @ProgramTarget@.
  -> GLuint -- ^ @index@.
  -> Ptr GLdouble -- ^ @params@ pointing to @4@ elements of type @GLdouble@.
  -> IO ()
glGetNamedProgramLocalParameterdvEXT = dyn_glGetNamedProgramLocalParameterdvEXT ptr_glGetNamedProgramLocalParameterdvEXT

foreign import CALLCONV "dynamic" dyn_glGetNamedProgramLocalParameterdvEXT
  :: FunPtr (GLuint -> GLenum -> GLuint -> Ptr GLdouble -> IO ())
  ->         GLuint -> GLenum -> GLuint -> Ptr GLdouble -> IO ()

{-# NOINLINE ptr_glGetNamedProgramLocalParameterdvEXT #-}
ptr_glGetNamedProgramLocalParameterdvEXT :: FunPtr (GLuint -> GLenum -> GLuint -> Ptr GLdouble -> IO ())
ptr_glGetNamedProgramLocalParameterdvEXT = unsafePerformIO $ getCommand "glGetNamedProgramLocalParameterdvEXT"

-- glGetNamedProgramLocalParameterfvEXT ----------------------------------------

glGetNamedProgramLocalParameterfvEXT
  :: GLuint -- ^ @program@.
  -> GLenum -- ^ @target@ of type @ProgramTarget@.
  -> GLuint -- ^ @index@.
  -> Ptr GLfloat -- ^ @params@ pointing to @4@ elements of type @GLfloat@.
  -> IO ()
glGetNamedProgramLocalParameterfvEXT = dyn_glGetNamedProgramLocalParameterfvEXT ptr_glGetNamedProgramLocalParameterfvEXT

foreign import CALLCONV "dynamic" dyn_glGetNamedProgramLocalParameterfvEXT
  :: FunPtr (GLuint -> GLenum -> GLuint -> Ptr GLfloat -> IO ())
  ->         GLuint -> GLenum -> GLuint -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glGetNamedProgramLocalParameterfvEXT #-}
ptr_glGetNamedProgramLocalParameterfvEXT :: FunPtr (GLuint -> GLenum -> GLuint -> Ptr GLfloat -> IO ())
ptr_glGetNamedProgramLocalParameterfvEXT = unsafePerformIO $ getCommand "glGetNamedProgramLocalParameterfvEXT"

-- glGetNamedProgramStringEXT --------------------------------------------------

glGetNamedProgramStringEXT
  :: GLuint -- ^ @program@.
  -> GLenum -- ^ @target@ of type @ProgramTarget@.
  -> GLenum -- ^ @pname@ of type @ProgramStringProperty@.
  -> Ptr a -- ^ @string@ pointing to @COMPSIZE(program,pname)@ elements of type @a@.
  -> IO ()
glGetNamedProgramStringEXT = dyn_glGetNamedProgramStringEXT ptr_glGetNamedProgramStringEXT

foreign import CALLCONV "dynamic" dyn_glGetNamedProgramStringEXT
  :: FunPtr (GLuint -> GLenum -> GLenum -> Ptr a -> IO ())
  ->         GLuint -> GLenum -> GLenum -> Ptr a -> IO ()

{-# NOINLINE ptr_glGetNamedProgramStringEXT #-}
ptr_glGetNamedProgramStringEXT :: FunPtr (GLuint -> GLenum -> GLenum -> Ptr a -> IO ())
ptr_glGetNamedProgramStringEXT = unsafePerformIO $ getCommand "glGetNamedProgramStringEXT"

-- glGetNamedProgramivEXT ------------------------------------------------------

glGetNamedProgramivEXT
  :: GLuint -- ^ @program@.
  -> GLenum -- ^ @target@ of type @ProgramTarget@.
  -> GLenum -- ^ @pname@ of type @ProgramProperty@.
  -> Ptr GLint -- ^ @params@ pointing to @1@ elements of type @GLint@.
  -> IO ()
glGetNamedProgramivEXT = dyn_glGetNamedProgramivEXT ptr_glGetNamedProgramivEXT

foreign import CALLCONV "dynamic" dyn_glGetNamedProgramivEXT
  :: FunPtr (GLuint -> GLenum -> GLenum -> Ptr GLint -> IO ())
  ->         GLuint -> GLenum -> GLenum -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glGetNamedProgramivEXT #-}
ptr_glGetNamedProgramivEXT :: FunPtr (GLuint -> GLenum -> GLenum -> Ptr GLint -> IO ())
ptr_glGetNamedProgramivEXT = unsafePerformIO $ getCommand "glGetNamedProgramivEXT"

-- glGetNamedRenderbufferParameteriv -------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glGetRenderbufferParameter.xhtml OpenGL 4.x>
glGetNamedRenderbufferParameteriv
  :: GLuint -- ^ @renderbuffer@.
  -> GLenum -- ^ @pname@.
  -> Ptr GLint -- ^ @params@.
  -> IO ()
glGetNamedRenderbufferParameteriv = dyn_glGetNamedRenderbufferParameteriv ptr_glGetNamedRenderbufferParameteriv

foreign import CALLCONV "dynamic" dyn_glGetNamedRenderbufferParameteriv
  :: FunPtr (GLuint -> GLenum -> Ptr GLint -> IO ())
  ->         GLuint -> GLenum -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glGetNamedRenderbufferParameteriv #-}
ptr_glGetNamedRenderbufferParameteriv :: FunPtr (GLuint -> GLenum -> Ptr GLint -> IO ())
ptr_glGetNamedRenderbufferParameteriv = unsafePerformIO $ getCommand "glGetNamedRenderbufferParameteriv"

-- glGetNamedRenderbufferParameterivEXT ----------------------------------------

glGetNamedRenderbufferParameterivEXT
  :: GLuint -- ^ @renderbuffer@ of type @Renderbuffer@.
  -> GLenum -- ^ @pname@ of type @RenderbufferParameterName@.
  -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLint@.
  -> IO ()
glGetNamedRenderbufferParameterivEXT = dyn_glGetNamedRenderbufferParameterivEXT ptr_glGetNamedRenderbufferParameterivEXT

foreign import CALLCONV "dynamic" dyn_glGetNamedRenderbufferParameterivEXT
  :: FunPtr (GLuint -> GLenum -> Ptr GLint -> IO ())
  ->         GLuint -> GLenum -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glGetNamedRenderbufferParameterivEXT #-}
ptr_glGetNamedRenderbufferParameterivEXT :: FunPtr (GLuint -> GLenum -> Ptr GLint -> IO ())
ptr_glGetNamedRenderbufferParameterivEXT = unsafePerformIO $ getCommand "glGetNamedRenderbufferParameterivEXT"

-- glGetNamedStringARB ---------------------------------------------------------

glGetNamedStringARB
  :: GLint -- ^ @namelen@.
  -> Ptr GLchar -- ^ @name@ pointing to @namelen@ elements of type @GLchar@.
  -> GLsizei -- ^ @bufSize@.
  -> Ptr GLint -- ^ @stringlen@ pointing to @1@ elements of type @GLint@.
  -> Ptr GLchar -- ^ @string@ pointing to @bufSize@ elements of type @GLchar@.
  -> IO ()
glGetNamedStringARB = dyn_glGetNamedStringARB ptr_glGetNamedStringARB

foreign import CALLCONV "dynamic" dyn_glGetNamedStringARB
  :: FunPtr (GLint -> Ptr GLchar -> GLsizei -> Ptr GLint -> Ptr GLchar -> IO ())
  ->         GLint -> Ptr GLchar -> GLsizei -> Ptr GLint -> Ptr GLchar -> IO ()

{-# NOINLINE ptr_glGetNamedStringARB #-}
ptr_glGetNamedStringARB :: FunPtr (GLint -> Ptr GLchar -> GLsizei -> Ptr GLint -> Ptr GLchar -> IO ())
ptr_glGetNamedStringARB = unsafePerformIO $ getCommand "glGetNamedStringARB"

-- glGetNamedStringivARB -------------------------------------------------------

glGetNamedStringivARB
  :: GLint -- ^ @namelen@.
  -> Ptr GLchar -- ^ @name@ pointing to @namelen@ elements of type @GLchar@.
  -> GLenum -- ^ @pname@.
  -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLint@.
  -> IO ()
glGetNamedStringivARB = dyn_glGetNamedStringivARB ptr_glGetNamedStringivARB

foreign import CALLCONV "dynamic" dyn_glGetNamedStringivARB
  :: FunPtr (GLint -> Ptr GLchar -> GLenum -> Ptr GLint -> IO ())
  ->         GLint -> Ptr GLchar -> GLenum -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glGetNamedStringivARB #-}
ptr_glGetNamedStringivARB :: FunPtr (GLint -> Ptr GLchar -> GLenum -> Ptr GLint -> IO ())
ptr_glGetNamedStringivARB = unsafePerformIO $ getCommand "glGetNamedStringivARB"

-- glGetNextPerfQueryIdINTEL ---------------------------------------------------

glGetNextPerfQueryIdINTEL
  :: GLuint -- ^ @queryId@.
  -> Ptr GLuint -- ^ @nextQueryId@.
  -> IO ()
glGetNextPerfQueryIdINTEL = dyn_glGetNextPerfQueryIdINTEL ptr_glGetNextPerfQueryIdINTEL

foreign import CALLCONV "dynamic" dyn_glGetNextPerfQueryIdINTEL
  :: FunPtr (GLuint -> Ptr GLuint -> IO ())
  ->         GLuint -> Ptr GLuint -> IO ()

{-# NOINLINE ptr_glGetNextPerfQueryIdINTEL #-}
ptr_glGetNextPerfQueryIdINTEL :: FunPtr (GLuint -> Ptr GLuint -> IO ())
ptr_glGetNextPerfQueryIdINTEL = unsafePerformIO $ getCommand "glGetNextPerfQueryIdINTEL"

-- glGetObjectBufferfvATI ------------------------------------------------------

glGetObjectBufferfvATI
  :: GLuint -- ^ @buffer@.
  -> GLenum -- ^ @pname@ of type @ArrayObjectPNameATI@.
  -> Ptr GLfloat -- ^ @params@ pointing to @1@ elements of type @GLfloat@.
  -> IO ()
glGetObjectBufferfvATI = dyn_glGetObjectBufferfvATI ptr_glGetObjectBufferfvATI

foreign import CALLCONV "dynamic" dyn_glGetObjectBufferfvATI
  :: FunPtr (GLuint -> GLenum -> Ptr GLfloat -> IO ())
  ->         GLuint -> GLenum -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glGetObjectBufferfvATI #-}
ptr_glGetObjectBufferfvATI :: FunPtr (GLuint -> GLenum -> Ptr GLfloat -> IO ())
ptr_glGetObjectBufferfvATI = unsafePerformIO $ getCommand "glGetObjectBufferfvATI"

-- glGetObjectBufferivATI ------------------------------------------------------

glGetObjectBufferivATI
  :: GLuint -- ^ @buffer@.
  -> GLenum -- ^ @pname@ of type @ArrayObjectPNameATI@.
  -> Ptr GLint -- ^ @params@ pointing to @1@ elements of type @GLint@.
  -> IO ()
glGetObjectBufferivATI = dyn_glGetObjectBufferivATI ptr_glGetObjectBufferivATI

foreign import CALLCONV "dynamic" dyn_glGetObjectBufferivATI
  :: FunPtr (GLuint -> GLenum -> Ptr GLint -> IO ())
  ->         GLuint -> GLenum -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glGetObjectBufferivATI #-}
ptr_glGetObjectBufferivATI :: FunPtr (GLuint -> GLenum -> Ptr GLint -> IO ())
ptr_glGetObjectBufferivATI = unsafePerformIO $ getCommand "glGetObjectBufferivATI"

-- glGetObjectLabel ------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glGetObjectLabel.xhtml OpenGL 4.x>
glGetObjectLabel
  :: GLenum -- ^ @identifier@.
  -> GLuint -- ^ @name@.
  -> GLsizei -- ^ @bufSize@.
  -> Ptr GLsizei -- ^ @length@ pointing to @1@ elements of type @GLsizei@.
  -> Ptr GLchar -- ^ @label@ pointing to @bufSize@ elements of type @GLchar@.
  -> IO ()
glGetObjectLabel = dyn_glGetObjectLabel ptr_glGetObjectLabel

foreign import CALLCONV "dynamic" dyn_glGetObjectLabel
  :: FunPtr (GLenum -> GLuint -> GLsizei -> Ptr GLsizei -> Ptr GLchar -> IO ())
  ->         GLenum -> GLuint -> GLsizei -> Ptr GLsizei -> Ptr GLchar -> IO ()

{-# NOINLINE ptr_glGetObjectLabel #-}
ptr_glGetObjectLabel :: FunPtr (GLenum -> GLuint -> GLsizei -> Ptr GLsizei -> Ptr GLchar -> IO ())
ptr_glGetObjectLabel = unsafePerformIO $ getCommand "glGetObjectLabel"

-- glGetObjectLabelEXT ---------------------------------------------------------

glGetObjectLabelEXT
  :: GLenum -- ^ @type@.
  -> GLuint -- ^ @object@.
  -> GLsizei -- ^ @bufSize@.
  -> Ptr GLsizei -- ^ @length@ pointing to @1@ elements of type @GLsizei@.
  -> Ptr GLchar -- ^ @label@ pointing to @bufSize@ elements of type @GLchar@.
  -> IO ()
glGetObjectLabelEXT = dyn_glGetObjectLabelEXT ptr_glGetObjectLabelEXT

foreign import CALLCONV "dynamic" dyn_glGetObjectLabelEXT
  :: FunPtr (GLenum -> GLuint -> GLsizei -> Ptr GLsizei -> Ptr GLchar -> IO ())
  ->         GLenum -> GLuint -> GLsizei -> Ptr GLsizei -> Ptr GLchar -> IO ()

{-# NOINLINE ptr_glGetObjectLabelEXT #-}
ptr_glGetObjectLabelEXT :: FunPtr (GLenum -> GLuint -> GLsizei -> Ptr GLsizei -> Ptr GLchar -> IO ())
ptr_glGetObjectLabelEXT = unsafePerformIO $ getCommand "glGetObjectLabelEXT"

-- glGetObjectLabelKHR ---------------------------------------------------------

glGetObjectLabelKHR
  :: GLenum -- ^ @identifier@.
  -> GLuint -- ^ @name@.
  -> GLsizei -- ^ @bufSize@.
  -> Ptr GLsizei -- ^ @length@.
  -> Ptr GLchar -- ^ @label@ pointing to @bufSize@ elements of type @GLchar@.
  -> IO ()
glGetObjectLabelKHR = dyn_glGetObjectLabelKHR ptr_glGetObjectLabelKHR

foreign import CALLCONV "dynamic" dyn_glGetObjectLabelKHR
  :: FunPtr (GLenum -> GLuint -> GLsizei -> Ptr GLsizei -> Ptr GLchar -> IO ())
  ->         GLenum -> GLuint -> GLsizei -> Ptr GLsizei -> Ptr GLchar -> IO ()

{-# NOINLINE ptr_glGetObjectLabelKHR #-}
ptr_glGetObjectLabelKHR :: FunPtr (GLenum -> GLuint -> GLsizei -> Ptr GLsizei -> Ptr GLchar -> IO ())
ptr_glGetObjectLabelKHR = unsafePerformIO $ getCommand "glGetObjectLabelKHR"

-- glGetObjectParameterfvARB ---------------------------------------------------

glGetObjectParameterfvARB
  :: GLhandleARB -- ^ @obj@ of type @handleARB@.
  -> GLenum -- ^ @pname@.
  -> Ptr GLfloat -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLfloat@.
  -> IO ()
glGetObjectParameterfvARB = dyn_glGetObjectParameterfvARB ptr_glGetObjectParameterfvARB

foreign import CALLCONV "dynamic" dyn_glGetObjectParameterfvARB
  :: FunPtr (GLhandleARB -> GLenum -> Ptr GLfloat -> IO ())
  ->         GLhandleARB -> GLenum -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glGetObjectParameterfvARB #-}
ptr_glGetObjectParameterfvARB :: FunPtr (GLhandleARB -> GLenum -> Ptr GLfloat -> IO ())
ptr_glGetObjectParameterfvARB = unsafePerformIO $ getCommand "glGetObjectParameterfvARB"

-- glGetObjectParameterivAPPLE -------------------------------------------------

glGetObjectParameterivAPPLE
  :: GLenum -- ^ @objectType@.
  -> GLuint -- ^ @name@.
  -> GLenum -- ^ @pname@.
  -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLint@.
  -> IO ()
glGetObjectParameterivAPPLE = dyn_glGetObjectParameterivAPPLE ptr_glGetObjectParameterivAPPLE

foreign import CALLCONV "dynamic" dyn_glGetObjectParameterivAPPLE
  :: FunPtr (GLenum -> GLuint -> GLenum -> Ptr GLint -> IO ())
  ->         GLenum -> GLuint -> GLenum -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glGetObjectParameterivAPPLE #-}
ptr_glGetObjectParameterivAPPLE :: FunPtr (GLenum -> GLuint -> GLenum -> Ptr GLint -> IO ())
ptr_glGetObjectParameterivAPPLE = unsafePerformIO $ getCommand "glGetObjectParameterivAPPLE"

-- glGetObjectParameterivARB ---------------------------------------------------

glGetObjectParameterivARB
  :: GLhandleARB -- ^ @obj@ of type @handleARB@.
  -> GLenum -- ^ @pname@.
  -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLint@.
  -> IO ()
glGetObjectParameterivARB = dyn_glGetObjectParameterivARB ptr_glGetObjectParameterivARB

foreign import CALLCONV "dynamic" dyn_glGetObjectParameterivARB
  :: FunPtr (GLhandleARB -> GLenum -> Ptr GLint -> IO ())
  ->         GLhandleARB -> GLenum -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glGetObjectParameterivARB #-}
ptr_glGetObjectParameterivARB :: FunPtr (GLhandleARB -> GLenum -> Ptr GLint -> IO ())
ptr_glGetObjectParameterivARB = unsafePerformIO $ getCommand "glGetObjectParameterivARB"

-- glGetObjectPtrLabel ---------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glGetObjectPtrLabel.xhtml OpenGL 4.x>
glGetObjectPtrLabel
  :: Ptr a -- ^ @ptr@.
  -> GLsizei -- ^ @bufSize@.
  -> Ptr GLsizei -- ^ @length@ pointing to @1@ elements of type @GLsizei@.
  -> Ptr GLchar -- ^ @label@ pointing to @bufSize@ elements of type @GLchar@.
  -> IO ()
glGetObjectPtrLabel = dyn_glGetObjectPtrLabel ptr_glGetObjectPtrLabel

foreign import CALLCONV "dynamic" dyn_glGetObjectPtrLabel
  :: FunPtr (Ptr a -> GLsizei -> Ptr GLsizei -> Ptr GLchar -> IO ())
  ->         Ptr a -> GLsizei -> Ptr GLsizei -> Ptr GLchar -> IO ()

{-# NOINLINE ptr_glGetObjectPtrLabel #-}
ptr_glGetObjectPtrLabel :: FunPtr (Ptr a -> GLsizei -> Ptr GLsizei -> Ptr GLchar -> IO ())
ptr_glGetObjectPtrLabel = unsafePerformIO $ getCommand "glGetObjectPtrLabel"

-- glGetObjectPtrLabelKHR ------------------------------------------------------

glGetObjectPtrLabelKHR
  :: Ptr a -- ^ @ptr@.
  -> GLsizei -- ^ @bufSize@.
  -> Ptr GLsizei -- ^ @length@ pointing to @1@ elements of type @GLsizei@.
  -> Ptr GLchar -- ^ @label@ pointing to @bufSize@ elements of type @GLchar@.
  -> IO ()
glGetObjectPtrLabelKHR = dyn_glGetObjectPtrLabelKHR ptr_glGetObjectPtrLabelKHR

foreign import CALLCONV "dynamic" dyn_glGetObjectPtrLabelKHR
  :: FunPtr (Ptr a -> GLsizei -> Ptr GLsizei -> Ptr GLchar -> IO ())
  ->         Ptr a -> GLsizei -> Ptr GLsizei -> Ptr GLchar -> IO ()

{-# NOINLINE ptr_glGetObjectPtrLabelKHR #-}
ptr_glGetObjectPtrLabelKHR :: FunPtr (Ptr a -> GLsizei -> Ptr GLsizei -> Ptr GLchar -> IO ())
ptr_glGetObjectPtrLabelKHR = unsafePerformIO $ getCommand "glGetObjectPtrLabelKHR"

-- glGetOcclusionQueryivNV -----------------------------------------------------

glGetOcclusionQueryivNV
  :: GLuint -- ^ @id@.
  -> GLenum -- ^ @pname@ of type @OcclusionQueryParameterNameNV@.
  -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLint@.
  -> IO ()
glGetOcclusionQueryivNV = dyn_glGetOcclusionQueryivNV ptr_glGetOcclusionQueryivNV

foreign import CALLCONV "dynamic" dyn_glGetOcclusionQueryivNV
  :: FunPtr (GLuint -> GLenum -> Ptr GLint -> IO ())
  ->         GLuint -> GLenum -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glGetOcclusionQueryivNV #-}
ptr_glGetOcclusionQueryivNV :: FunPtr (GLuint -> GLenum -> Ptr GLint -> IO ())
ptr_glGetOcclusionQueryivNV = unsafePerformIO $ getCommand "glGetOcclusionQueryivNV"

-- glGetOcclusionQueryuivNV ----------------------------------------------------

glGetOcclusionQueryuivNV
  :: GLuint -- ^ @id@.
  -> GLenum -- ^ @pname@ of type @OcclusionQueryParameterNameNV@.
  -> Ptr GLuint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLuint@.
  -> IO ()
glGetOcclusionQueryuivNV = dyn_glGetOcclusionQueryuivNV ptr_glGetOcclusionQueryuivNV

foreign import CALLCONV "dynamic" dyn_glGetOcclusionQueryuivNV
  :: FunPtr (GLuint -> GLenum -> Ptr GLuint -> IO ())
  ->         GLuint -> GLenum -> Ptr GLuint -> IO ()

{-# NOINLINE ptr_glGetOcclusionQueryuivNV #-}
ptr_glGetOcclusionQueryuivNV :: FunPtr (GLuint -> GLenum -> Ptr GLuint -> IO ())
ptr_glGetOcclusionQueryuivNV = unsafePerformIO $ getCommand "glGetOcclusionQueryuivNV"

-- glGetPathColorGenfvNV -------------------------------------------------------

glGetPathColorGenfvNV
  :: GLenum -- ^ @color@ of type @PathColor@.
  -> GLenum -- ^ @pname@ of type @PathGenMode@.
  -> Ptr GLfloat -- ^ @value@ pointing to @COMPSIZE(pname)@ elements of type @GLfloat@.
  -> IO ()
glGetPathColorGenfvNV = dyn_glGetPathColorGenfvNV ptr_glGetPathColorGenfvNV

foreign import CALLCONV "dynamic" dyn_glGetPathColorGenfvNV
  :: FunPtr (GLenum -> GLenum -> Ptr GLfloat -> IO ())
  ->         GLenum -> GLenum -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glGetPathColorGenfvNV #-}
ptr_glGetPathColorGenfvNV :: FunPtr (GLenum -> GLenum -> Ptr GLfloat -> IO ())
ptr_glGetPathColorGenfvNV = unsafePerformIO $ getCommand "glGetPathColorGenfvNV"

-- glGetPathColorGenivNV -------------------------------------------------------

glGetPathColorGenivNV
  :: GLenum -- ^ @color@ of type @PathColor@.
  -> GLenum -- ^ @pname@ of type @PathGenMode@.
  -> Ptr GLint -- ^ @value@ pointing to @COMPSIZE(pname)@ elements of type @GLint@.
  -> IO ()
glGetPathColorGenivNV = dyn_glGetPathColorGenivNV ptr_glGetPathColorGenivNV

foreign import CALLCONV "dynamic" dyn_glGetPathColorGenivNV
  :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
  ->         GLenum -> GLenum -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glGetPathColorGenivNV #-}
ptr_glGetPathColorGenivNV :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
ptr_glGetPathColorGenivNV = unsafePerformIO $ getCommand "glGetPathColorGenivNV"

-- glGetPathCommandsNV ---------------------------------------------------------

glGetPathCommandsNV
  :: GLuint -- ^ @path@ of type @Path@.
  -> Ptr GLubyte -- ^ @commands@ pointing to @COMPSIZE(path)@ elements of type @PathCommand@.
  -> IO ()
glGetPathCommandsNV = dyn_glGetPathCommandsNV ptr_glGetPathCommandsNV

foreign import CALLCONV "dynamic" dyn_glGetPathCommandsNV
  :: FunPtr (GLuint -> Ptr GLubyte -> IO ())
  ->         GLuint -> Ptr GLubyte -> IO ()

{-# NOINLINE ptr_glGetPathCommandsNV #-}
ptr_glGetPathCommandsNV :: FunPtr (GLuint -> Ptr GLubyte -> IO ())
ptr_glGetPathCommandsNV = unsafePerformIO $ getCommand "glGetPathCommandsNV"

-- glGetPathCoordsNV -----------------------------------------------------------

glGetPathCoordsNV
  :: GLuint -- ^ @path@ of type @Path@.
  -> Ptr GLfloat -- ^ @coords@ pointing to @COMPSIZE(path)@ elements of type @GLfloat@.
  -> IO ()
glGetPathCoordsNV = dyn_glGetPathCoordsNV ptr_glGetPathCoordsNV

foreign import CALLCONV "dynamic" dyn_glGetPathCoordsNV
  :: FunPtr (GLuint -> Ptr GLfloat -> IO ())
  ->         GLuint -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glGetPathCoordsNV #-}
ptr_glGetPathCoordsNV :: FunPtr (GLuint -> Ptr GLfloat -> IO ())
ptr_glGetPathCoordsNV = unsafePerformIO $ getCommand "glGetPathCoordsNV"

-- glGetPathDashArrayNV --------------------------------------------------------

glGetPathDashArrayNV
  :: GLuint -- ^ @path@ of type @Path@.
  -> Ptr GLfloat -- ^ @dashArray@ pointing to @COMPSIZE(path)@ elements of type @GLfloat@.
  -> IO ()
glGetPathDashArrayNV = dyn_glGetPathDashArrayNV ptr_glGetPathDashArrayNV

foreign import CALLCONV "dynamic" dyn_glGetPathDashArrayNV
  :: FunPtr (GLuint -> Ptr GLfloat -> IO ())
  ->         GLuint -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glGetPathDashArrayNV #-}
ptr_glGetPathDashArrayNV :: FunPtr (GLuint -> Ptr GLfloat -> IO ())
ptr_glGetPathDashArrayNV = unsafePerformIO $ getCommand "glGetPathDashArrayNV"

-- glGetPathLengthNV -----------------------------------------------------------

glGetPathLengthNV
  :: GLuint -- ^ @path@ of type @Path@.
  -> GLsizei -- ^ @startSegment@.
  -> GLsizei -- ^ @numSegments@.
  -> IO GLfloat
glGetPathLengthNV = dyn_glGetPathLengthNV ptr_glGetPathLengthNV

foreign import CALLCONV "dynamic" dyn_glGetPathLengthNV
  :: FunPtr (GLuint -> GLsizei -> GLsizei -> IO GLfloat)
  ->         GLuint -> GLsizei -> GLsizei -> IO GLfloat

{-# NOINLINE ptr_glGetPathLengthNV #-}
ptr_glGetPathLengthNV :: FunPtr (GLuint -> GLsizei -> GLsizei -> IO GLfloat)
ptr_glGetPathLengthNV = unsafePerformIO $ getCommand "glGetPathLengthNV"

-- glGetPathMetricRangeNV ------------------------------------------------------

glGetPathMetricRangeNV
  :: GLbitfield -- ^ @metricQueryMask@ of type @PathMetricMask@.
  -> GLuint -- ^ @firstPathName@ of type @Path@.
  -> GLsizei -- ^ @numPaths@.
  -> GLsizei -- ^ @stride@.
  -> Ptr GLfloat -- ^ @metrics@ pointing to @COMPSIZE(metricQueryMask,numPaths,stride)@ elements of type @GLfloat@.
  -> IO ()
glGetPathMetricRangeNV = dyn_glGetPathMetricRangeNV ptr_glGetPathMetricRangeNV

foreign import CALLCONV "dynamic" dyn_glGetPathMetricRangeNV
  :: FunPtr (GLbitfield -> GLuint -> GLsizei -> GLsizei -> Ptr GLfloat -> IO ())
  ->         GLbitfield -> GLuint -> GLsizei -> GLsizei -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glGetPathMetricRangeNV #-}
ptr_glGetPathMetricRangeNV :: FunPtr (GLbitfield -> GLuint -> GLsizei -> GLsizei -> Ptr GLfloat -> IO ())
ptr_glGetPathMetricRangeNV = unsafePerformIO $ getCommand "glGetPathMetricRangeNV"

-- glGetPathMetricsNV ----------------------------------------------------------

glGetPathMetricsNV
  :: GLbitfield -- ^ @metricQueryMask@ of type @PathMetricMask@.
  -> GLsizei -- ^ @numPaths@.
  -> GLenum -- ^ @pathNameType@ of type @PathElementType@.
  -> Ptr a -- ^ @paths@ pointing to @COMPSIZE(numPaths,pathNameType,paths)@ elements of type @PathElement@.
  -> GLuint -- ^ @pathBase@ of type @Path@.
  -> GLsizei -- ^ @stride@.
  -> Ptr GLfloat -- ^ @metrics@ pointing to @COMPSIZE(metricQueryMask,numPaths,stride)@ elements of type @GLfloat@.
  -> IO ()
glGetPathMetricsNV = dyn_glGetPathMetricsNV ptr_glGetPathMetricsNV

foreign import CALLCONV "dynamic" dyn_glGetPathMetricsNV
  :: FunPtr (GLbitfield -> GLsizei -> GLenum -> Ptr a -> GLuint -> GLsizei -> Ptr GLfloat -> IO ())
  ->         GLbitfield -> GLsizei -> GLenum -> Ptr a -> GLuint -> GLsizei -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glGetPathMetricsNV #-}
ptr_glGetPathMetricsNV :: FunPtr (GLbitfield -> GLsizei -> GLenum -> Ptr a -> GLuint -> GLsizei -> Ptr GLfloat -> IO ())
ptr_glGetPathMetricsNV = unsafePerformIO $ getCommand "glGetPathMetricsNV"

-- glGetPathParameterfvNV ------------------------------------------------------

glGetPathParameterfvNV
  :: GLuint -- ^ @path@ of type @Path@.
  -> GLenum -- ^ @pname@ of type @PathParameter@.
  -> Ptr GLfloat -- ^ @value@ pointing to @4@ elements of type @GLfloat@.
  -> IO ()
glGetPathParameterfvNV = dyn_glGetPathParameterfvNV ptr_glGetPathParameterfvNV

foreign import CALLCONV "dynamic" dyn_glGetPathParameterfvNV
  :: FunPtr (GLuint -> GLenum -> Ptr GLfloat -> IO ())
  ->         GLuint -> GLenum -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glGetPathParameterfvNV #-}
ptr_glGetPathParameterfvNV :: FunPtr (GLuint -> GLenum -> Ptr GLfloat -> IO ())
ptr_glGetPathParameterfvNV = unsafePerformIO $ getCommand "glGetPathParameterfvNV"

-- glGetPathParameterivNV ------------------------------------------------------

glGetPathParameterivNV
  :: GLuint -- ^ @path@ of type @Path@.
  -> GLenum -- ^ @pname@ of type @PathParameter@.
  -> Ptr GLint -- ^ @value@ pointing to @4@ elements of type @GLint@.
  -> IO ()
glGetPathParameterivNV = dyn_glGetPathParameterivNV ptr_glGetPathParameterivNV

foreign import CALLCONV "dynamic" dyn_glGetPathParameterivNV
  :: FunPtr (GLuint -> GLenum -> Ptr GLint -> IO ())
  ->         GLuint -> GLenum -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glGetPathParameterivNV #-}
ptr_glGetPathParameterivNV :: FunPtr (GLuint -> GLenum -> Ptr GLint -> IO ())
ptr_glGetPathParameterivNV = unsafePerformIO $ getCommand "glGetPathParameterivNV"

-- glGetPathSpacingNV ----------------------------------------------------------

glGetPathSpacingNV
  :: GLenum -- ^ @pathListMode@ of type @PathListMode@.
  -> GLsizei -- ^ @numPaths@.
  -> GLenum -- ^ @pathNameType@ of type @PathElementType@.
  -> Ptr a -- ^ @paths@ pointing to @COMPSIZE(numPaths,pathNameType,paths)@ elements of type @PathElement@.
  -> GLuint -- ^ @pathBase@ of type @Path@.
  -> GLfloat -- ^ @advanceScale@.
  -> GLfloat -- ^ @kerningScale@.
  -> GLenum -- ^ @transformType@ of type @PathTransformType@.
  -> Ptr GLfloat -- ^ @returnedSpacing@ pointing to @COMPSIZE(pathListMode,numPaths)@ elements of type @GLfloat@.
  -> IO ()
glGetPathSpacingNV = dyn_glGetPathSpacingNV ptr_glGetPathSpacingNV

foreign import CALLCONV "dynamic" dyn_glGetPathSpacingNV
  :: FunPtr (GLenum -> GLsizei -> GLenum -> Ptr a -> GLuint -> GLfloat -> GLfloat -> GLenum -> Ptr GLfloat -> IO ())
  ->         GLenum -> GLsizei -> GLenum -> Ptr a -> GLuint -> GLfloat -> GLfloat -> GLenum -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glGetPathSpacingNV #-}
ptr_glGetPathSpacingNV :: FunPtr (GLenum -> GLsizei -> GLenum -> Ptr a -> GLuint -> GLfloat -> GLfloat -> GLenum -> Ptr GLfloat -> IO ())
ptr_glGetPathSpacingNV = unsafePerformIO $ getCommand "glGetPathSpacingNV"

-- glGetPathTexGenfvNV ---------------------------------------------------------

glGetPathTexGenfvNV
  :: GLenum -- ^ @texCoordSet@ of type @TextureUnit@.
  -> GLenum -- ^ @pname@ of type @PathGenMode@.
  -> Ptr GLfloat -- ^ @value@ pointing to @COMPSIZE(pname)@ elements of type @GLfloat@.
  -> IO ()
glGetPathTexGenfvNV = dyn_glGetPathTexGenfvNV ptr_glGetPathTexGenfvNV

foreign import CALLCONV "dynamic" dyn_glGetPathTexGenfvNV
  :: FunPtr (GLenum -> GLenum -> Ptr GLfloat -> IO ())
  ->         GLenum -> GLenum -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glGetPathTexGenfvNV #-}
ptr_glGetPathTexGenfvNV :: FunPtr (GLenum -> GLenum -> Ptr GLfloat -> IO ())
ptr_glGetPathTexGenfvNV = unsafePerformIO $ getCommand "glGetPathTexGenfvNV"

-- glGetPathTexGenivNV ---------------------------------------------------------

glGetPathTexGenivNV
  :: GLenum -- ^ @texCoordSet@ of type @TextureUnit@.
  -> GLenum -- ^ @pname@ of type @PathGenMode@.
  -> Ptr GLint -- ^ @value@ pointing to @COMPSIZE(pname)@ elements of type @GLint@.
  -> IO ()
glGetPathTexGenivNV = dyn_glGetPathTexGenivNV ptr_glGetPathTexGenivNV

foreign import CALLCONV "dynamic" dyn_glGetPathTexGenivNV
  :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
  ->         GLenum -> GLenum -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glGetPathTexGenivNV #-}
ptr_glGetPathTexGenivNV :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
ptr_glGetPathTexGenivNV = unsafePerformIO $ getCommand "glGetPathTexGenivNV"

-- glGetPerfCounterInfoINTEL ---------------------------------------------------

glGetPerfCounterInfoINTEL
  :: GLuint -- ^ @queryId@.
  -> GLuint -- ^ @counterId@.
  -> GLuint -- ^ @counterNameLength@.
  -> Ptr GLchar -- ^ @counterName@.
  -> GLuint -- ^ @counterDescLength@.
  -> Ptr GLchar -- ^ @counterDesc@.
  -> Ptr GLuint -- ^ @counterOffset@.
  -> Ptr GLuint -- ^ @counterDataSize@.
  -> Ptr GLuint -- ^ @counterTypeEnum@.
  -> Ptr GLuint -- ^ @counterDataTypeEnum@.
  -> Ptr GLuint64 -- ^ @rawCounterMaxValue@.
  -> IO ()
glGetPerfCounterInfoINTEL = dyn_glGetPerfCounterInfoINTEL ptr_glGetPerfCounterInfoINTEL

foreign import CALLCONV "dynamic" dyn_glGetPerfCounterInfoINTEL
  :: FunPtr (GLuint -> GLuint -> GLuint -> Ptr GLchar -> GLuint -> Ptr GLchar -> Ptr GLuint -> Ptr GLuint -> Ptr GLuint -> Ptr GLuint -> Ptr GLuint64 -> IO ())
  ->         GLuint -> GLuint -> GLuint -> Ptr GLchar -> GLuint -> Ptr GLchar -> Ptr GLuint -> Ptr GLuint -> Ptr GLuint -> Ptr GLuint -> Ptr GLuint64 -> IO ()

{-# NOINLINE ptr_glGetPerfCounterInfoINTEL #-}
ptr_glGetPerfCounterInfoINTEL :: FunPtr (GLuint -> GLuint -> GLuint -> Ptr GLchar -> GLuint -> Ptr GLchar -> Ptr GLuint -> Ptr GLuint -> Ptr GLuint -> Ptr GLuint -> Ptr GLuint64 -> IO ())
ptr_glGetPerfCounterInfoINTEL = unsafePerformIO $ getCommand "glGetPerfCounterInfoINTEL"

-- glGetPerfMonitorCounterDataAMD ----------------------------------------------

glGetPerfMonitorCounterDataAMD
  :: GLuint -- ^ @monitor@.
  -> GLenum -- ^ @pname@.
  -> GLsizei -- ^ @dataSize@.
  -> Ptr GLuint -- ^ @data@ pointing to @dataSize@ elements of type @GLuint@.
  -> Ptr GLint -- ^ @bytesWritten@ pointing to @1@ elements of type @GLint@.
  -> IO ()
glGetPerfMonitorCounterDataAMD = dyn_glGetPerfMonitorCounterDataAMD ptr_glGetPerfMonitorCounterDataAMD

foreign import CALLCONV "dynamic" dyn_glGetPerfMonitorCounterDataAMD
  :: FunPtr (GLuint -> GLenum -> GLsizei -> Ptr GLuint -> Ptr GLint -> IO ())
  ->         GLuint -> GLenum -> GLsizei -> Ptr GLuint -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glGetPerfMonitorCounterDataAMD #-}
ptr_glGetPerfMonitorCounterDataAMD :: FunPtr (GLuint -> GLenum -> GLsizei -> Ptr GLuint -> Ptr GLint -> IO ())
ptr_glGetPerfMonitorCounterDataAMD = unsafePerformIO $ getCommand "glGetPerfMonitorCounterDataAMD"

-- glGetPerfMonitorCounterInfoAMD ----------------------------------------------

glGetPerfMonitorCounterInfoAMD
  :: GLuint -- ^ @group@.
  -> GLuint -- ^ @counter@.
  -> GLenum -- ^ @pname@.
  -> Ptr a -- ^ @data@ pointing to @COMPSIZE(pname)@ elements of type @a@.
  -> IO ()
glGetPerfMonitorCounterInfoAMD = dyn_glGetPerfMonitorCounterInfoAMD ptr_glGetPerfMonitorCounterInfoAMD

foreign import CALLCONV "dynamic" dyn_glGetPerfMonitorCounterInfoAMD
  :: FunPtr (GLuint -> GLuint -> GLenum -> Ptr a -> IO ())
  ->         GLuint -> GLuint -> GLenum -> Ptr a -> IO ()

{-# NOINLINE ptr_glGetPerfMonitorCounterInfoAMD #-}
ptr_glGetPerfMonitorCounterInfoAMD :: FunPtr (GLuint -> GLuint -> GLenum -> Ptr a -> IO ())
ptr_glGetPerfMonitorCounterInfoAMD = unsafePerformIO $ getCommand "glGetPerfMonitorCounterInfoAMD"

-- glGetPerfMonitorCounterStringAMD --------------------------------------------

glGetPerfMonitorCounterStringAMD
  :: GLuint -- ^ @group@.
  -> GLuint -- ^ @counter@.
  -> GLsizei -- ^ @bufSize@.
  -> Ptr GLsizei -- ^ @length@ pointing to @1@ elements of type @GLsizei@.
  -> Ptr GLchar -- ^ @counterString@ pointing to @bufSize@ elements of type @GLchar@.
  -> IO ()
glGetPerfMonitorCounterStringAMD = dyn_glGetPerfMonitorCounterStringAMD ptr_glGetPerfMonitorCounterStringAMD

foreign import CALLCONV "dynamic" dyn_glGetPerfMonitorCounterStringAMD
  :: FunPtr (GLuint -> GLuint -> GLsizei -> Ptr GLsizei -> Ptr GLchar -> IO ())
  ->         GLuint -> GLuint -> GLsizei -> Ptr GLsizei -> Ptr GLchar -> IO ()

{-# NOINLINE ptr_glGetPerfMonitorCounterStringAMD #-}
ptr_glGetPerfMonitorCounterStringAMD :: FunPtr (GLuint -> GLuint -> GLsizei -> Ptr GLsizei -> Ptr GLchar -> IO ())
ptr_glGetPerfMonitorCounterStringAMD = unsafePerformIO $ getCommand "glGetPerfMonitorCounterStringAMD"

-- glGetPerfMonitorCountersAMD -------------------------------------------------

glGetPerfMonitorCountersAMD
  :: GLuint -- ^ @group@.
  -> Ptr GLint -- ^ @numCounters@ pointing to @1@ elements of type @GLint@.
  -> Ptr GLint -- ^ @maxActiveCounters@ pointing to @1@ elements of type @GLint@.
  -> GLsizei -- ^ @counterSize@.
  -> Ptr GLuint -- ^ @counters@ pointing to @counterSize@ elements of type @GLuint@.
  -> IO ()
glGetPerfMonitorCountersAMD = dyn_glGetPerfMonitorCountersAMD ptr_glGetPerfMonitorCountersAMD

foreign import CALLCONV "dynamic" dyn_glGetPerfMonitorCountersAMD
  :: FunPtr (GLuint -> Ptr GLint -> Ptr GLint -> GLsizei -> Ptr GLuint -> IO ())
  ->         GLuint -> Ptr GLint -> Ptr GLint -> GLsizei -> Ptr GLuint -> IO ()

{-# NOINLINE ptr_glGetPerfMonitorCountersAMD #-}
ptr_glGetPerfMonitorCountersAMD :: FunPtr (GLuint -> Ptr GLint -> Ptr GLint -> GLsizei -> Ptr GLuint -> IO ())
ptr_glGetPerfMonitorCountersAMD = unsafePerformIO $ getCommand "glGetPerfMonitorCountersAMD"

-- glGetPerfMonitorGroupStringAMD ----------------------------------------------

glGetPerfMonitorGroupStringAMD
  :: GLuint -- ^ @group@.
  -> GLsizei -- ^ @bufSize@.
  -> Ptr GLsizei -- ^ @length@ pointing to @1@ elements of type @GLsizei@.
  -> Ptr GLchar -- ^ @groupString@ pointing to @bufSize@ elements of type @GLchar@.
  -> IO ()
glGetPerfMonitorGroupStringAMD = dyn_glGetPerfMonitorGroupStringAMD ptr_glGetPerfMonitorGroupStringAMD

foreign import CALLCONV "dynamic" dyn_glGetPerfMonitorGroupStringAMD
  :: FunPtr (GLuint -> GLsizei -> Ptr GLsizei -> Ptr GLchar -> IO ())
  ->         GLuint -> GLsizei -> Ptr GLsizei -> Ptr GLchar -> IO ()

{-# NOINLINE ptr_glGetPerfMonitorGroupStringAMD #-}
ptr_glGetPerfMonitorGroupStringAMD :: FunPtr (GLuint -> GLsizei -> Ptr GLsizei -> Ptr GLchar -> IO ())
ptr_glGetPerfMonitorGroupStringAMD = unsafePerformIO $ getCommand "glGetPerfMonitorGroupStringAMD"

-- glGetPerfMonitorGroupsAMD ---------------------------------------------------

glGetPerfMonitorGroupsAMD
  :: Ptr GLint -- ^ @numGroups@ pointing to @1@ elements of type @GLint@.
  -> GLsizei -- ^ @groupsSize@.
  -> Ptr GLuint -- ^ @groups@ pointing to @groupsSize@ elements of type @GLuint@.
  -> IO ()
glGetPerfMonitorGroupsAMD = dyn_glGetPerfMonitorGroupsAMD ptr_glGetPerfMonitorGroupsAMD

foreign import CALLCONV "dynamic" dyn_glGetPerfMonitorGroupsAMD
  :: FunPtr (Ptr GLint -> GLsizei -> Ptr GLuint -> IO ())
  ->         Ptr GLint -> GLsizei -> Ptr GLuint -> IO ()

{-# NOINLINE ptr_glGetPerfMonitorGroupsAMD #-}
ptr_glGetPerfMonitorGroupsAMD :: FunPtr (Ptr GLint -> GLsizei -> Ptr GLuint -> IO ())
ptr_glGetPerfMonitorGroupsAMD = unsafePerformIO $ getCommand "glGetPerfMonitorGroupsAMD"

-- glGetPerfQueryDataINTEL -----------------------------------------------------

glGetPerfQueryDataINTEL
  :: GLuint -- ^ @queryHandle@.
  -> GLuint -- ^ @flags@.
  -> GLsizei -- ^ @dataSize@.
  -> Ptr a -- ^ @data@.
  -> Ptr GLuint -- ^ @bytesWritten@.
  -> IO ()
glGetPerfQueryDataINTEL = dyn_glGetPerfQueryDataINTEL ptr_glGetPerfQueryDataINTEL

foreign import CALLCONV "dynamic" dyn_glGetPerfQueryDataINTEL
  :: FunPtr (GLuint -> GLuint -> GLsizei -> Ptr a -> Ptr GLuint -> IO ())
  ->         GLuint -> GLuint -> GLsizei -> Ptr a -> Ptr GLuint -> IO ()

{-# NOINLINE ptr_glGetPerfQueryDataINTEL #-}
ptr_glGetPerfQueryDataINTEL :: FunPtr (GLuint -> GLuint -> GLsizei -> Ptr a -> Ptr GLuint -> IO ())
ptr_glGetPerfQueryDataINTEL = unsafePerformIO $ getCommand "glGetPerfQueryDataINTEL"

-- glGetPerfQueryIdByNameINTEL -------------------------------------------------

glGetPerfQueryIdByNameINTEL
  :: Ptr GLchar -- ^ @queryName@.
  -> Ptr GLuint -- ^ @queryId@.
  -> IO ()
glGetPerfQueryIdByNameINTEL = dyn_glGetPerfQueryIdByNameINTEL ptr_glGetPerfQueryIdByNameINTEL

foreign import CALLCONV "dynamic" dyn_glGetPerfQueryIdByNameINTEL
  :: FunPtr (Ptr GLchar -> Ptr GLuint -> IO ())
  ->         Ptr GLchar -> Ptr GLuint -> IO ()

{-# NOINLINE ptr_glGetPerfQueryIdByNameINTEL #-}
ptr_glGetPerfQueryIdByNameINTEL :: FunPtr (Ptr GLchar -> Ptr GLuint -> IO ())
ptr_glGetPerfQueryIdByNameINTEL = unsafePerformIO $ getCommand "glGetPerfQueryIdByNameINTEL"

-- glGetPerfQueryInfoINTEL -----------------------------------------------------

glGetPerfQueryInfoINTEL
  :: GLuint -- ^ @queryId@.
  -> GLuint -- ^ @queryNameLength@.
  -> Ptr GLchar -- ^ @queryName@.
  -> Ptr GLuint -- ^ @dataSize@.
  -> Ptr GLuint -- ^ @noCounters@.
  -> Ptr GLuint -- ^ @noInstances@.
  -> Ptr GLuint -- ^ @capsMask@.
  -> IO ()
glGetPerfQueryInfoINTEL = dyn_glGetPerfQueryInfoINTEL ptr_glGetPerfQueryInfoINTEL

foreign import CALLCONV "dynamic" dyn_glGetPerfQueryInfoINTEL
  :: FunPtr (GLuint -> GLuint -> Ptr GLchar -> Ptr GLuint -> Ptr GLuint -> Ptr GLuint -> Ptr GLuint -> IO ())
  ->         GLuint -> GLuint -> Ptr GLchar -> Ptr GLuint -> Ptr GLuint -> Ptr GLuint -> Ptr GLuint -> IO ()

{-# NOINLINE ptr_glGetPerfQueryInfoINTEL #-}
ptr_glGetPerfQueryInfoINTEL :: FunPtr (GLuint -> GLuint -> Ptr GLchar -> Ptr GLuint -> Ptr GLuint -> Ptr GLuint -> Ptr GLuint -> IO ())
ptr_glGetPerfQueryInfoINTEL = unsafePerformIO $ getCommand "glGetPerfQueryInfoINTEL"

-- glGetPixelMapfv -------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glGetPixelMap.xml OpenGL 2.x>
glGetPixelMapfv
  :: GLenum -- ^ @map@ of type @PixelMap@.
  -> Ptr GLfloat -- ^ @values@ pointing to @COMPSIZE(map)@ elements of type @GLfloat@.
  -> IO ()
glGetPixelMapfv = dyn_glGetPixelMapfv ptr_glGetPixelMapfv

foreign import CALLCONV "dynamic" dyn_glGetPixelMapfv
  :: FunPtr (GLenum -> Ptr GLfloat -> IO ())
  ->         GLenum -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glGetPixelMapfv #-}
ptr_glGetPixelMapfv :: FunPtr (GLenum -> Ptr GLfloat -> IO ())
ptr_glGetPixelMapfv = unsafePerformIO $ getCommand "glGetPixelMapfv"

-- glGetPixelMapuiv ------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glGetPixelMap.xml OpenGL 2.x>
glGetPixelMapuiv
  :: GLenum -- ^ @map@ of type @PixelMap@.
  -> Ptr GLuint -- ^ @values@ pointing to @COMPSIZE(map)@ elements of type @GLuint@.
  -> IO ()
glGetPixelMapuiv = dyn_glGetPixelMapuiv ptr_glGetPixelMapuiv

foreign import CALLCONV "dynamic" dyn_glGetPixelMapuiv
  :: FunPtr (GLenum -> Ptr GLuint -> IO ())
  ->         GLenum -> Ptr GLuint -> IO ()

{-# NOINLINE ptr_glGetPixelMapuiv #-}
ptr_glGetPixelMapuiv :: FunPtr (GLenum -> Ptr GLuint -> IO ())
ptr_glGetPixelMapuiv = unsafePerformIO $ getCommand "glGetPixelMapuiv"

-- glGetPixelMapusv ------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glGetPixelMap.xml OpenGL 2.x>
glGetPixelMapusv
  :: GLenum -- ^ @map@ of type @PixelMap@.
  -> Ptr GLushort -- ^ @values@ pointing to @COMPSIZE(map)@ elements of type @GLushort@.
  -> IO ()
glGetPixelMapusv = dyn_glGetPixelMapusv ptr_glGetPixelMapusv

foreign import CALLCONV "dynamic" dyn_glGetPixelMapusv
  :: FunPtr (GLenum -> Ptr GLushort -> IO ())
  ->         GLenum -> Ptr GLushort -> IO ()

{-# NOINLINE ptr_glGetPixelMapusv #-}
ptr_glGetPixelMapusv :: FunPtr (GLenum -> Ptr GLushort -> IO ())
ptr_glGetPixelMapusv = unsafePerformIO $ getCommand "glGetPixelMapusv"

-- glGetPixelMapxv -------------------------------------------------------------

glGetPixelMapxv
  :: GLenum -- ^ @map@.
  -> GLint -- ^ @size@.
  -> Ptr GLfixed -- ^ @values@ pointing to @size@ elements of type @GLfixed@.
  -> IO ()
glGetPixelMapxv = dyn_glGetPixelMapxv ptr_glGetPixelMapxv

foreign import CALLCONV "dynamic" dyn_glGetPixelMapxv
  :: FunPtr (GLenum -> GLint -> Ptr GLfixed -> IO ())
  ->         GLenum -> GLint -> Ptr GLfixed -> IO ()

{-# NOINLINE ptr_glGetPixelMapxv #-}
ptr_glGetPixelMapxv :: FunPtr (GLenum -> GLint -> Ptr GLfixed -> IO ())
ptr_glGetPixelMapxv = unsafePerformIO $ getCommand "glGetPixelMapxv"

-- glGetPixelTexGenParameterfvSGIS ---------------------------------------------

glGetPixelTexGenParameterfvSGIS
  :: GLenum -- ^ @pname@ of type @PixelTexGenParameterNameSGIS@.
  -> Ptr GLfloat -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @CheckedFloat32@.
  -> IO ()
glGetPixelTexGenParameterfvSGIS = dyn_glGetPixelTexGenParameterfvSGIS ptr_glGetPixelTexGenParameterfvSGIS

foreign import CALLCONV "dynamic" dyn_glGetPixelTexGenParameterfvSGIS
  :: FunPtr (GLenum -> Ptr GLfloat -> IO ())
  ->         GLenum -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glGetPixelTexGenParameterfvSGIS #-}
ptr_glGetPixelTexGenParameterfvSGIS :: FunPtr (GLenum -> Ptr GLfloat -> IO ())
ptr_glGetPixelTexGenParameterfvSGIS = unsafePerformIO $ getCommand "glGetPixelTexGenParameterfvSGIS"

-- glGetPixelTexGenParameterivSGIS ---------------------------------------------

glGetPixelTexGenParameterivSGIS
  :: GLenum -- ^ @pname@ of type @PixelTexGenParameterNameSGIS@.
  -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @CheckedInt32@.
  -> IO ()
glGetPixelTexGenParameterivSGIS = dyn_glGetPixelTexGenParameterivSGIS ptr_glGetPixelTexGenParameterivSGIS

foreign import CALLCONV "dynamic" dyn_glGetPixelTexGenParameterivSGIS
  :: FunPtr (GLenum -> Ptr GLint -> IO ())
  ->         GLenum -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glGetPixelTexGenParameterivSGIS #-}
ptr_glGetPixelTexGenParameterivSGIS :: FunPtr (GLenum -> Ptr GLint -> IO ())
ptr_glGetPixelTexGenParameterivSGIS = unsafePerformIO $ getCommand "glGetPixelTexGenParameterivSGIS"

-- glGetPixelTransformParameterfvEXT -------------------------------------------

glGetPixelTransformParameterfvEXT
  :: GLenum -- ^ @target@.
  -> GLenum -- ^ @pname@.
  -> Ptr GLfloat -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLfloat@.
  -> IO ()
glGetPixelTransformParameterfvEXT = dyn_glGetPixelTransformParameterfvEXT ptr_glGetPixelTransformParameterfvEXT

foreign import CALLCONV "dynamic" dyn_glGetPixelTransformParameterfvEXT
  :: FunPtr (GLenum -> GLenum -> Ptr GLfloat -> IO ())
  ->         GLenum -> GLenum -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glGetPixelTransformParameterfvEXT #-}
ptr_glGetPixelTransformParameterfvEXT :: FunPtr (GLenum -> GLenum -> Ptr GLfloat -> IO ())
ptr_glGetPixelTransformParameterfvEXT = unsafePerformIO $ getCommand "glGetPixelTransformParameterfvEXT"

-- glGetPixelTransformParameterivEXT -------------------------------------------

glGetPixelTransformParameterivEXT
  :: GLenum -- ^ @target@.
  -> GLenum -- ^ @pname@.
  -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLint@.
  -> IO ()
glGetPixelTransformParameterivEXT = dyn_glGetPixelTransformParameterivEXT ptr_glGetPixelTransformParameterivEXT

foreign import CALLCONV "dynamic" dyn_glGetPixelTransformParameterivEXT
  :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
  ->         GLenum -> GLenum -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glGetPixelTransformParameterivEXT #-}
ptr_glGetPixelTransformParameterivEXT :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
ptr_glGetPixelTransformParameterivEXT = unsafePerformIO $ getCommand "glGetPixelTransformParameterivEXT"

-- glGetPointerIndexedvEXT -----------------------------------------------------

glGetPointerIndexedvEXT
  :: GLenum -- ^ @target@ of type @TypeEnum@.
  -> GLuint -- ^ @index@.
  -> Ptr (Ptr a) -- ^ @data@ pointing to @1@ elements of type @Ptr a@.
  -> IO ()
glGetPointerIndexedvEXT = dyn_glGetPointerIndexedvEXT ptr_glGetPointerIndexedvEXT

foreign import CALLCONV "dynamic" dyn_glGetPointerIndexedvEXT
  :: FunPtr (GLenum -> GLuint -> Ptr (Ptr a) -> IO ())
  ->         GLenum -> GLuint -> Ptr (Ptr a) -> IO ()

{-# NOINLINE ptr_glGetPointerIndexedvEXT #-}
ptr_glGetPointerIndexedvEXT :: FunPtr (GLenum -> GLuint -> Ptr (Ptr a) -> IO ())
ptr_glGetPointerIndexedvEXT = unsafePerformIO $ getCommand "glGetPointerIndexedvEXT"

-- glGetPointeri_vEXT ----------------------------------------------------------

glGetPointeri_vEXT
  :: GLenum -- ^ @pname@ of type @TypeEnum@.
  -> GLuint -- ^ @index@.
  -> Ptr (Ptr a) -- ^ @params@ pointing to @1@ elements of type @Ptr a@.
  -> IO ()
glGetPointeri_vEXT = dyn_glGetPointeri_vEXT ptr_glGetPointeri_vEXT

foreign import CALLCONV "dynamic" dyn_glGetPointeri_vEXT
  :: FunPtr (GLenum -> GLuint -> Ptr (Ptr a) -> IO ())
  ->         GLenum -> GLuint -> Ptr (Ptr a) -> IO ()

{-# NOINLINE ptr_glGetPointeri_vEXT #-}
ptr_glGetPointeri_vEXT :: FunPtr (GLenum -> GLuint -> Ptr (Ptr a) -> IO ())
ptr_glGetPointeri_vEXT = unsafePerformIO $ getCommand "glGetPointeri_vEXT"

-- glGetPointerv ---------------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glGetPointerv.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man4/html/glGetPointerv.xhtml OpenGL 4.x>
glGetPointerv
  :: GLenum -- ^ @pname@ of type @GetPointervPName@.
  -> Ptr (Ptr a) -- ^ @params@ pointing to @1@ elements of type @Ptr a@.
  -> IO ()
glGetPointerv = dyn_glGetPointerv ptr_glGetPointerv

foreign import CALLCONV "dynamic" dyn_glGetPointerv
  :: FunPtr (GLenum -> Ptr (Ptr a) -> IO ())
  ->         GLenum -> Ptr (Ptr a) -> IO ()

{-# NOINLINE ptr_glGetPointerv #-}
ptr_glGetPointerv :: FunPtr (GLenum -> Ptr (Ptr a) -> IO ())
ptr_glGetPointerv = unsafePerformIO $ getCommand "glGetPointerv"

-- glGetPointervEXT ------------------------------------------------------------

glGetPointervEXT
  :: GLenum -- ^ @pname@ of type @GetPointervPName@.
  -> Ptr (Ptr a) -- ^ @params@ pointing to @1@ elements of type @Ptr a@.
  -> IO ()
glGetPointervEXT = dyn_glGetPointervEXT ptr_glGetPointervEXT

foreign import CALLCONV "dynamic" dyn_glGetPointervEXT
  :: FunPtr (GLenum -> Ptr (Ptr a) -> IO ())
  ->         GLenum -> Ptr (Ptr a) -> IO ()

{-# NOINLINE ptr_glGetPointervEXT #-}
ptr_glGetPointervEXT :: FunPtr (GLenum -> Ptr (Ptr a) -> IO ())
ptr_glGetPointervEXT = unsafePerformIO $ getCommand "glGetPointervEXT"

-- glGetPointervKHR ------------------------------------------------------------

glGetPointervKHR
  :: GLenum -- ^ @pname@.
  -> Ptr (Ptr a) -- ^ @params@.
  -> IO ()
glGetPointervKHR = dyn_glGetPointervKHR ptr_glGetPointervKHR

foreign import CALLCONV "dynamic" dyn_glGetPointervKHR
  :: FunPtr (GLenum -> Ptr (Ptr a) -> IO ())
  ->         GLenum -> Ptr (Ptr a) -> IO ()

{-# NOINLINE ptr_glGetPointervKHR #-}
ptr_glGetPointervKHR :: FunPtr (GLenum -> Ptr (Ptr a) -> IO ())
ptr_glGetPointervKHR = unsafePerformIO $ getCommand "glGetPointervKHR"

-- glGetPolygonStipple ---------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glGetPolygonStipple.xml OpenGL 2.x>
glGetPolygonStipple
  :: Ptr GLubyte -- ^ @mask@ pointing to @COMPSIZE()@ elements of type @GLubyte@.
  -> IO ()
glGetPolygonStipple = dyn_glGetPolygonStipple ptr_glGetPolygonStipple

foreign import CALLCONV "dynamic" dyn_glGetPolygonStipple
  :: FunPtr (Ptr GLubyte -> IO ())
  ->         Ptr GLubyte -> IO ()

{-# NOINLINE ptr_glGetPolygonStipple #-}
ptr_glGetPolygonStipple :: FunPtr (Ptr GLubyte -> IO ())
ptr_glGetPolygonStipple = unsafePerformIO $ getCommand "glGetPolygonStipple"

-- glGetProgramBinary ----------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glGetProgramBinary.xhtml OpenGL 4.x>
glGetProgramBinary
  :: GLuint -- ^ @program@.
  -> GLsizei -- ^ @bufSize@.
  -> Ptr GLsizei -- ^ @length@ pointing to @1@ elements of type @GLsizei@.
  -> Ptr GLenum -- ^ @binaryFormat@ pointing to @1@ elements of type @GLenum@.
  -> Ptr a -- ^ @binary@ pointing to @bufSize@ elements of type @a@.
  -> IO ()
glGetProgramBinary = dyn_glGetProgramBinary ptr_glGetProgramBinary

foreign import CALLCONV "dynamic" dyn_glGetProgramBinary
  :: FunPtr (GLuint -> GLsizei -> Ptr GLsizei -> Ptr GLenum -> Ptr a -> IO ())
  ->         GLuint -> GLsizei -> Ptr GLsizei -> Ptr GLenum -> Ptr a -> IO ()

{-# NOINLINE ptr_glGetProgramBinary #-}
ptr_glGetProgramBinary :: FunPtr (GLuint -> GLsizei -> Ptr GLsizei -> Ptr GLenum -> Ptr a -> IO ())
ptr_glGetProgramBinary = unsafePerformIO $ getCommand "glGetProgramBinary"

-- glGetProgramBinaryOES -------------------------------------------------------

glGetProgramBinaryOES
  :: GLuint -- ^ @program@.
  -> GLsizei -- ^ @bufSize@.
  -> Ptr GLsizei -- ^ @length@ pointing to @1@ elements of type @GLsizei@.
  -> Ptr GLenum -- ^ @binaryFormat@ pointing to @1@ elements of type @GLenum@.
  -> Ptr a -- ^ @binary@ pointing to @bufSize@ elements of type @a@.
  -> IO ()
glGetProgramBinaryOES = dyn_glGetProgramBinaryOES ptr_glGetProgramBinaryOES

foreign import CALLCONV "dynamic" dyn_glGetProgramBinaryOES
  :: FunPtr (GLuint -> GLsizei -> Ptr GLsizei -> Ptr GLenum -> Ptr a -> IO ())
  ->         GLuint -> GLsizei -> Ptr GLsizei -> Ptr GLenum -> Ptr a -> IO ()

{-# NOINLINE ptr_glGetProgramBinaryOES #-}
ptr_glGetProgramBinaryOES :: FunPtr (GLuint -> GLsizei -> Ptr GLsizei -> Ptr GLenum -> Ptr a -> IO ())
ptr_glGetProgramBinaryOES = unsafePerformIO $ getCommand "glGetProgramBinaryOES"

-- glGetProgramEnvParameterIivNV -----------------------------------------------

glGetProgramEnvParameterIivNV
  :: GLenum -- ^ @target@ of type @ProgramTarget@.
  -> GLuint -- ^ @index@.
  -> Ptr GLint -- ^ @params@ pointing to @4@ elements of type @GLint@.
  -> IO ()
glGetProgramEnvParameterIivNV = dyn_glGetProgramEnvParameterIivNV ptr_glGetProgramEnvParameterIivNV

foreign import CALLCONV "dynamic" dyn_glGetProgramEnvParameterIivNV
  :: FunPtr (GLenum -> GLuint -> Ptr GLint -> IO ())
  ->         GLenum -> GLuint -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glGetProgramEnvParameterIivNV #-}
ptr_glGetProgramEnvParameterIivNV :: FunPtr (GLenum -> GLuint -> Ptr GLint -> IO ())
ptr_glGetProgramEnvParameterIivNV = unsafePerformIO $ getCommand "glGetProgramEnvParameterIivNV"

-- glGetProgramEnvParameterIuivNV ----------------------------------------------

glGetProgramEnvParameterIuivNV
  :: GLenum -- ^ @target@ of type @ProgramTarget@.
  -> GLuint -- ^ @index@.
  -> Ptr GLuint -- ^ @params@ pointing to @4@ elements of type @GLuint@.
  -> IO ()
glGetProgramEnvParameterIuivNV = dyn_glGetProgramEnvParameterIuivNV ptr_glGetProgramEnvParameterIuivNV

foreign import CALLCONV "dynamic" dyn_glGetProgramEnvParameterIuivNV
  :: FunPtr (GLenum -> GLuint -> Ptr GLuint -> IO ())
  ->         GLenum -> GLuint -> Ptr GLuint -> IO ()

{-# NOINLINE ptr_glGetProgramEnvParameterIuivNV #-}
ptr_glGetProgramEnvParameterIuivNV :: FunPtr (GLenum -> GLuint -> Ptr GLuint -> IO ())
ptr_glGetProgramEnvParameterIuivNV = unsafePerformIO $ getCommand "glGetProgramEnvParameterIuivNV"

-- glGetProgramEnvParameterdvARB -----------------------------------------------

glGetProgramEnvParameterdvARB
  :: GLenum -- ^ @target@ of type @ProgramTargetARB@.
  -> GLuint -- ^ @index@.
  -> Ptr GLdouble -- ^ @params@ pointing to @4@ elements of type @GLdouble@.
  -> IO ()
glGetProgramEnvParameterdvARB = dyn_glGetProgramEnvParameterdvARB ptr_glGetProgramEnvParameterdvARB

foreign import CALLCONV "dynamic" dyn_glGetProgramEnvParameterdvARB
  :: FunPtr (GLenum -> GLuint -> Ptr GLdouble -> IO ())
  ->         GLenum -> GLuint -> Ptr GLdouble -> IO ()

{-# NOINLINE ptr_glGetProgramEnvParameterdvARB #-}
ptr_glGetProgramEnvParameterdvARB :: FunPtr (GLenum -> GLuint -> Ptr GLdouble -> IO ())
ptr_glGetProgramEnvParameterdvARB = unsafePerformIO $ getCommand "glGetProgramEnvParameterdvARB"

-- glGetProgramEnvParameterfvARB -----------------------------------------------

glGetProgramEnvParameterfvARB
  :: GLenum -- ^ @target@ of type @ProgramTargetARB@.
  -> GLuint -- ^ @index@.
  -> Ptr GLfloat -- ^ @params@ pointing to @4@ elements of type @GLfloat@.
  -> IO ()
glGetProgramEnvParameterfvARB = dyn_glGetProgramEnvParameterfvARB ptr_glGetProgramEnvParameterfvARB

foreign import CALLCONV "dynamic" dyn_glGetProgramEnvParameterfvARB
  :: FunPtr (GLenum -> GLuint -> Ptr GLfloat -> IO ())
  ->         GLenum -> GLuint -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glGetProgramEnvParameterfvARB #-}
ptr_glGetProgramEnvParameterfvARB :: FunPtr (GLenum -> GLuint -> Ptr GLfloat -> IO ())
ptr_glGetProgramEnvParameterfvARB = unsafePerformIO $ getCommand "glGetProgramEnvParameterfvARB"

-- glGetProgramInfoLog ---------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glGetProgramInfoLog.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glGetProgramInfoLog.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glGetProgramInfoLog.xhtml OpenGL 4.x>
glGetProgramInfoLog
  :: GLuint -- ^ @program@.
  -> GLsizei -- ^ @bufSize@.
  -> Ptr GLsizei -- ^ @length@ pointing to @1@ elements of type @GLsizei@.
  -> Ptr GLchar -- ^ @infoLog@ pointing to @bufSize@ elements of type @GLchar@.
  -> IO ()
glGetProgramInfoLog = dyn_glGetProgramInfoLog ptr_glGetProgramInfoLog

foreign import CALLCONV "dynamic" dyn_glGetProgramInfoLog
  :: FunPtr (GLuint -> GLsizei -> Ptr GLsizei -> Ptr GLchar -> IO ())
  ->         GLuint -> GLsizei -> Ptr GLsizei -> Ptr GLchar -> IO ()

{-# NOINLINE ptr_glGetProgramInfoLog #-}
ptr_glGetProgramInfoLog :: FunPtr (GLuint -> GLsizei -> Ptr GLsizei -> Ptr GLchar -> IO ())
ptr_glGetProgramInfoLog = unsafePerformIO $ getCommand "glGetProgramInfoLog"

-- glGetProgramInterfaceiv -----------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glGetProgramInterface.xhtml OpenGL 4.x>
glGetProgramInterfaceiv
  :: GLuint -- ^ @program@.
  -> GLenum -- ^ @programInterface@.
  -> GLenum -- ^ @pname@.
  -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLint@.
  -> IO ()
glGetProgramInterfaceiv = dyn_glGetProgramInterfaceiv ptr_glGetProgramInterfaceiv

foreign import CALLCONV "dynamic" dyn_glGetProgramInterfaceiv
  :: FunPtr (GLuint -> GLenum -> GLenum -> Ptr GLint -> IO ())
  ->         GLuint -> GLenum -> GLenum -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glGetProgramInterfaceiv #-}
ptr_glGetProgramInterfaceiv :: FunPtr (GLuint -> GLenum -> GLenum -> Ptr GLint -> IO ())
ptr_glGetProgramInterfaceiv = unsafePerformIO $ getCommand "glGetProgramInterfaceiv"

-- glGetProgramLocalParameterIivNV ---------------------------------------------

glGetProgramLocalParameterIivNV
  :: GLenum -- ^ @target@ of type @ProgramTarget@.
  -> GLuint -- ^ @index@.
  -> Ptr GLint -- ^ @params@ pointing to @4@ elements of type @GLint@.
  -> IO ()
glGetProgramLocalParameterIivNV = dyn_glGetProgramLocalParameterIivNV ptr_glGetProgramLocalParameterIivNV

foreign import CALLCONV "dynamic" dyn_glGetProgramLocalParameterIivNV
  :: FunPtr (GLenum -> GLuint -> Ptr GLint -> IO ())
  ->         GLenum -> GLuint -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glGetProgramLocalParameterIivNV #-}
ptr_glGetProgramLocalParameterIivNV :: FunPtr (GLenum -> GLuint -> Ptr GLint -> IO ())
ptr_glGetProgramLocalParameterIivNV = unsafePerformIO $ getCommand "glGetProgramLocalParameterIivNV"

-- glGetProgramLocalParameterIuivNV --------------------------------------------

glGetProgramLocalParameterIuivNV
  :: GLenum -- ^ @target@ of type @ProgramTarget@.
  -> GLuint -- ^ @index@.
  -> Ptr GLuint -- ^ @params@ pointing to @4@ elements of type @GLuint@.
  -> IO ()
glGetProgramLocalParameterIuivNV = dyn_glGetProgramLocalParameterIuivNV ptr_glGetProgramLocalParameterIuivNV

foreign import CALLCONV "dynamic" dyn_glGetProgramLocalParameterIuivNV
  :: FunPtr (GLenum -> GLuint -> Ptr GLuint -> IO ())
  ->         GLenum -> GLuint -> Ptr GLuint -> IO ()

{-# NOINLINE ptr_glGetProgramLocalParameterIuivNV #-}
ptr_glGetProgramLocalParameterIuivNV :: FunPtr (GLenum -> GLuint -> Ptr GLuint -> IO ())
ptr_glGetProgramLocalParameterIuivNV = unsafePerformIO $ getCommand "glGetProgramLocalParameterIuivNV"

-- glGetProgramLocalParameterdvARB ---------------------------------------------

glGetProgramLocalParameterdvARB
  :: GLenum -- ^ @target@ of type @ProgramTargetARB@.
  -> GLuint -- ^ @index@.
  -> Ptr GLdouble -- ^ @params@ pointing to @4@ elements of type @GLdouble@.
  -> IO ()
glGetProgramLocalParameterdvARB = dyn_glGetProgramLocalParameterdvARB ptr_glGetProgramLocalParameterdvARB

foreign import CALLCONV "dynamic" dyn_glGetProgramLocalParameterdvARB
  :: FunPtr (GLenum -> GLuint -> Ptr GLdouble -> IO ())
  ->         GLenum -> GLuint -> Ptr GLdouble -> IO ()

{-# NOINLINE ptr_glGetProgramLocalParameterdvARB #-}
ptr_glGetProgramLocalParameterdvARB :: FunPtr (GLenum -> GLuint -> Ptr GLdouble -> IO ())
ptr_glGetProgramLocalParameterdvARB = unsafePerformIO $ getCommand "glGetProgramLocalParameterdvARB"

-- glGetProgramLocalParameterfvARB ---------------------------------------------

glGetProgramLocalParameterfvARB
  :: GLenum -- ^ @target@ of type @ProgramTargetARB@.
  -> GLuint -- ^ @index@.
  -> Ptr GLfloat -- ^ @params@ pointing to @4@ elements of type @GLfloat@.
  -> IO ()
glGetProgramLocalParameterfvARB = dyn_glGetProgramLocalParameterfvARB ptr_glGetProgramLocalParameterfvARB

foreign import CALLCONV "dynamic" dyn_glGetProgramLocalParameterfvARB
  :: FunPtr (GLenum -> GLuint -> Ptr GLfloat -> IO ())
  ->         GLenum -> GLuint -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glGetProgramLocalParameterfvARB #-}
ptr_glGetProgramLocalParameterfvARB :: FunPtr (GLenum -> GLuint -> Ptr GLfloat -> IO ())
ptr_glGetProgramLocalParameterfvARB = unsafePerformIO $ getCommand "glGetProgramLocalParameterfvARB"

-- glGetProgramNamedParameterdvNV ----------------------------------------------

glGetProgramNamedParameterdvNV
  :: GLuint -- ^ @id@.
  -> GLsizei -- ^ @len@.
  -> Ptr GLubyte -- ^ @name@ pointing to @1@ elements of type @GLubyte@.
  -> Ptr GLdouble -- ^ @params@ pointing to @4@ elements of type @GLdouble@.
  -> IO ()
glGetProgramNamedParameterdvNV = dyn_glGetProgramNamedParameterdvNV ptr_glGetProgramNamedParameterdvNV

foreign import CALLCONV "dynamic" dyn_glGetProgramNamedParameterdvNV
  :: FunPtr (GLuint -> GLsizei -> Ptr GLubyte -> Ptr GLdouble -> IO ())
  ->         GLuint -> GLsizei -> Ptr GLubyte -> Ptr GLdouble -> IO ()

{-# NOINLINE ptr_glGetProgramNamedParameterdvNV #-}
ptr_glGetProgramNamedParameterdvNV :: FunPtr (GLuint -> GLsizei -> Ptr GLubyte -> Ptr GLdouble -> IO ())
ptr_glGetProgramNamedParameterdvNV = unsafePerformIO $ getCommand "glGetProgramNamedParameterdvNV"

-- glGetProgramNamedParameterfvNV ----------------------------------------------

glGetProgramNamedParameterfvNV
  :: GLuint -- ^ @id@.
  -> GLsizei -- ^ @len@.
  -> Ptr GLubyte -- ^ @name@ pointing to @1@ elements of type @GLubyte@.
  -> Ptr GLfloat -- ^ @params@ pointing to @4@ elements of type @GLfloat@.
  -> IO ()
glGetProgramNamedParameterfvNV = dyn_glGetProgramNamedParameterfvNV ptr_glGetProgramNamedParameterfvNV

foreign import CALLCONV "dynamic" dyn_glGetProgramNamedParameterfvNV
  :: FunPtr (GLuint -> GLsizei -> Ptr GLubyte -> Ptr GLfloat -> IO ())
  ->         GLuint -> GLsizei -> Ptr GLubyte -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glGetProgramNamedParameterfvNV #-}
ptr_glGetProgramNamedParameterfvNV :: FunPtr (GLuint -> GLsizei -> Ptr GLubyte -> Ptr GLfloat -> IO ())
ptr_glGetProgramNamedParameterfvNV = unsafePerformIO $ getCommand "glGetProgramNamedParameterfvNV"

-- glGetProgramParameterdvNV ---------------------------------------------------

glGetProgramParameterdvNV
  :: GLenum -- ^ @target@ of type @VertexAttribEnumNV@.
  -> GLuint -- ^ @index@.
  -> GLenum -- ^ @pname@ of type @VertexAttribEnumNV@.
  -> Ptr GLdouble -- ^ @params@ pointing to @4@ elements of type @GLdouble@.
  -> IO ()
glGetProgramParameterdvNV = dyn_glGetProgramParameterdvNV ptr_glGetProgramParameterdvNV

foreign import CALLCONV "dynamic" dyn_glGetProgramParameterdvNV
  :: FunPtr (GLenum -> GLuint -> GLenum -> Ptr GLdouble -> IO ())
  ->         GLenum -> GLuint -> GLenum -> Ptr GLdouble -> IO ()

{-# NOINLINE ptr_glGetProgramParameterdvNV #-}
ptr_glGetProgramParameterdvNV :: FunPtr (GLenum -> GLuint -> GLenum -> Ptr GLdouble -> IO ())
ptr_glGetProgramParameterdvNV = unsafePerformIO $ getCommand "glGetProgramParameterdvNV"

-- glGetProgramParameterfvNV ---------------------------------------------------

glGetProgramParameterfvNV
  :: GLenum -- ^ @target@ of type @VertexAttribEnumNV@.
  -> GLuint -- ^ @index@.
  -> GLenum -- ^ @pname@ of type @VertexAttribEnumNV@.
  -> Ptr GLfloat -- ^ @params@ pointing to @4@ elements of type @GLfloat@.
  -> IO ()
glGetProgramParameterfvNV = dyn_glGetProgramParameterfvNV ptr_glGetProgramParameterfvNV

foreign import CALLCONV "dynamic" dyn_glGetProgramParameterfvNV
  :: FunPtr (GLenum -> GLuint -> GLenum -> Ptr GLfloat -> IO ())
  ->         GLenum -> GLuint -> GLenum -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glGetProgramParameterfvNV #-}
ptr_glGetProgramParameterfvNV :: FunPtr (GLenum -> GLuint -> GLenum -> Ptr GLfloat -> IO ())
ptr_glGetProgramParameterfvNV = unsafePerformIO $ getCommand "glGetProgramParameterfvNV"

-- glGetProgramPipelineInfoLog -------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glGetProgramPipelineInfoLog.xhtml OpenGL 4.x>
glGetProgramPipelineInfoLog
  :: GLuint -- ^ @pipeline@.
  -> GLsizei -- ^ @bufSize@.
  -> Ptr GLsizei -- ^ @length@ pointing to @1@ elements of type @GLsizei@.
  -> Ptr GLchar -- ^ @infoLog@ pointing to @bufSize@ elements of type @GLchar@.
  -> IO ()
glGetProgramPipelineInfoLog = dyn_glGetProgramPipelineInfoLog ptr_glGetProgramPipelineInfoLog

foreign import CALLCONV "dynamic" dyn_glGetProgramPipelineInfoLog
  :: FunPtr (GLuint -> GLsizei -> Ptr GLsizei -> Ptr GLchar -> IO ())
  ->         GLuint -> GLsizei -> Ptr GLsizei -> Ptr GLchar -> IO ()

{-# NOINLINE ptr_glGetProgramPipelineInfoLog #-}
ptr_glGetProgramPipelineInfoLog :: FunPtr (GLuint -> GLsizei -> Ptr GLsizei -> Ptr GLchar -> IO ())
ptr_glGetProgramPipelineInfoLog = unsafePerformIO $ getCommand "glGetProgramPipelineInfoLog"

-- glGetProgramPipelineInfoLogEXT ----------------------------------------------

glGetProgramPipelineInfoLogEXT
  :: GLuint -- ^ @pipeline@.
  -> GLsizei -- ^ @bufSize@.
  -> Ptr GLsizei -- ^ @length@ pointing to @1@ elements of type @GLsizei@.
  -> Ptr GLchar -- ^ @infoLog@ pointing to @bufSize@ elements of type @GLchar@.
  -> IO ()
glGetProgramPipelineInfoLogEXT = dyn_glGetProgramPipelineInfoLogEXT ptr_glGetProgramPipelineInfoLogEXT

foreign import CALLCONV "dynamic" dyn_glGetProgramPipelineInfoLogEXT
  :: FunPtr (GLuint -> GLsizei -> Ptr GLsizei -> Ptr GLchar -> IO ())
  ->         GLuint -> GLsizei -> Ptr GLsizei -> Ptr GLchar -> IO ()

{-# NOINLINE ptr_glGetProgramPipelineInfoLogEXT #-}
ptr_glGetProgramPipelineInfoLogEXT :: FunPtr (GLuint -> GLsizei -> Ptr GLsizei -> Ptr GLchar -> IO ())
ptr_glGetProgramPipelineInfoLogEXT = unsafePerformIO $ getCommand "glGetProgramPipelineInfoLogEXT"

-- glGetProgramPipelineiv ------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glGetProgramPipeline.xhtml OpenGL 4.x>
glGetProgramPipelineiv
  :: GLuint -- ^ @pipeline@.
  -> GLenum -- ^ @pname@.
  -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLint@.
  -> IO ()
glGetProgramPipelineiv = dyn_glGetProgramPipelineiv ptr_glGetProgramPipelineiv

foreign import CALLCONV "dynamic" dyn_glGetProgramPipelineiv
  :: FunPtr (GLuint -> GLenum -> Ptr GLint -> IO ())
  ->         GLuint -> GLenum -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glGetProgramPipelineiv #-}
ptr_glGetProgramPipelineiv :: FunPtr (GLuint -> GLenum -> Ptr GLint -> IO ())
ptr_glGetProgramPipelineiv = unsafePerformIO $ getCommand "glGetProgramPipelineiv"

-- glGetProgramPipelineivEXT ---------------------------------------------------

glGetProgramPipelineivEXT
  :: GLuint -- ^ @pipeline@.
  -> GLenum -- ^ @pname@.
  -> Ptr GLint -- ^ @params@.
  -> IO ()
glGetProgramPipelineivEXT = dyn_glGetProgramPipelineivEXT ptr_glGetProgramPipelineivEXT

foreign import CALLCONV "dynamic" dyn_glGetProgramPipelineivEXT
  :: FunPtr (GLuint -> GLenum -> Ptr GLint -> IO ())
  ->         GLuint -> GLenum -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glGetProgramPipelineivEXT #-}
ptr_glGetProgramPipelineivEXT :: FunPtr (GLuint -> GLenum -> Ptr GLint -> IO ())
ptr_glGetProgramPipelineivEXT = unsafePerformIO $ getCommand "glGetProgramPipelineivEXT"

-- glGetProgramResourceIndex ---------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glGetProgramResourceIndex.xhtml OpenGL 4.x>
glGetProgramResourceIndex
  :: GLuint -- ^ @program@.
  -> GLenum -- ^ @programInterface@.
  -> Ptr GLchar -- ^ @name@ pointing to @COMPSIZE(name)@ elements of type @GLchar@.
  -> IO GLuint
glGetProgramResourceIndex = dyn_glGetProgramResourceIndex ptr_glGetProgramResourceIndex

foreign import CALLCONV "dynamic" dyn_glGetProgramResourceIndex
  :: FunPtr (GLuint -> GLenum -> Ptr GLchar -> IO GLuint)
  ->         GLuint -> GLenum -> Ptr GLchar -> IO GLuint

{-# NOINLINE ptr_glGetProgramResourceIndex #-}
ptr_glGetProgramResourceIndex :: FunPtr (GLuint -> GLenum -> Ptr GLchar -> IO GLuint)
ptr_glGetProgramResourceIndex = unsafePerformIO $ getCommand "glGetProgramResourceIndex"

-- glGetProgramResourceLocation ------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glGetProgramResourceLocation.xhtml OpenGL 4.x>
glGetProgramResourceLocation
  :: GLuint -- ^ @program@.
  -> GLenum -- ^ @programInterface@.
  -> Ptr GLchar -- ^ @name@ pointing to @COMPSIZE(name)@ elements of type @GLchar@.
  -> IO GLint
glGetProgramResourceLocation = dyn_glGetProgramResourceLocation ptr_glGetProgramResourceLocation

foreign import CALLCONV "dynamic" dyn_glGetProgramResourceLocation
  :: FunPtr (GLuint -> GLenum -> Ptr GLchar -> IO GLint)
  ->         GLuint -> GLenum -> Ptr GLchar -> IO GLint

{-# NOINLINE ptr_glGetProgramResourceLocation #-}
ptr_glGetProgramResourceLocation :: FunPtr (GLuint -> GLenum -> Ptr GLchar -> IO GLint)
ptr_glGetProgramResourceLocation = unsafePerformIO $ getCommand "glGetProgramResourceLocation"

-- glGetProgramResourceLocationIndex -------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glGetProgramResourceLocationIndex.xhtml OpenGL 4.x>
glGetProgramResourceLocationIndex
  :: GLuint -- ^ @program@.
  -> GLenum -- ^ @programInterface@.
  -> Ptr GLchar -- ^ @name@ pointing to @COMPSIZE(name)@ elements of type @GLchar@.
  -> IO GLint
glGetProgramResourceLocationIndex = dyn_glGetProgramResourceLocationIndex ptr_glGetProgramResourceLocationIndex

foreign import CALLCONV "dynamic" dyn_glGetProgramResourceLocationIndex
  :: FunPtr (GLuint -> GLenum -> Ptr GLchar -> IO GLint)
  ->         GLuint -> GLenum -> Ptr GLchar -> IO GLint

{-# NOINLINE ptr_glGetProgramResourceLocationIndex #-}
ptr_glGetProgramResourceLocationIndex :: FunPtr (GLuint -> GLenum -> Ptr GLchar -> IO GLint)
ptr_glGetProgramResourceLocationIndex = unsafePerformIO $ getCommand "glGetProgramResourceLocationIndex"

-- glGetProgramResourceName ----------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glGetProgramResourceName.xhtml OpenGL 4.x>
glGetProgramResourceName
  :: GLuint -- ^ @program@.
  -> GLenum -- ^ @programInterface@.
  -> GLuint -- ^ @index@.
  -> GLsizei -- ^ @bufSize@.
  -> Ptr GLsizei -- ^ @length@ pointing to @1@ elements of type @GLsizei@.
  -> Ptr GLchar -- ^ @name@ pointing to @bufSize@ elements of type @GLchar@.
  -> IO ()
glGetProgramResourceName = dyn_glGetProgramResourceName ptr_glGetProgramResourceName

foreign import CALLCONV "dynamic" dyn_glGetProgramResourceName
  :: FunPtr (GLuint -> GLenum -> GLuint -> GLsizei -> Ptr GLsizei -> Ptr GLchar -> IO ())
  ->         GLuint -> GLenum -> GLuint -> GLsizei -> Ptr GLsizei -> Ptr GLchar -> IO ()

{-# NOINLINE ptr_glGetProgramResourceName #-}
ptr_glGetProgramResourceName :: FunPtr (GLuint -> GLenum -> GLuint -> GLsizei -> Ptr GLsizei -> Ptr GLchar -> IO ())
ptr_glGetProgramResourceName = unsafePerformIO $ getCommand "glGetProgramResourceName"

-- glGetProgramResourcefvNV ----------------------------------------------------

glGetProgramResourcefvNV
  :: GLuint -- ^ @program@.
  -> GLenum -- ^ @programInterface@.
  -> GLuint -- ^ @index@.
  -> GLsizei -- ^ @propCount@.
  -> Ptr GLenum -- ^ @props@.
  -> GLsizei -- ^ @bufSize@.
  -> Ptr GLsizei -- ^ @length@.
  -> Ptr GLfloat -- ^ @params@.
  -> IO ()
glGetProgramResourcefvNV = dyn_glGetProgramResourcefvNV ptr_glGetProgramResourcefvNV

foreign import CALLCONV "dynamic" dyn_glGetProgramResourcefvNV
  :: FunPtr (GLuint -> GLenum -> GLuint -> GLsizei -> Ptr GLenum -> GLsizei -> Ptr GLsizei -> Ptr GLfloat -> IO ())
  ->         GLuint -> GLenum -> GLuint -> GLsizei -> Ptr GLenum -> GLsizei -> Ptr GLsizei -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glGetProgramResourcefvNV #-}
ptr_glGetProgramResourcefvNV :: FunPtr (GLuint -> GLenum -> GLuint -> GLsizei -> Ptr GLenum -> GLsizei -> Ptr GLsizei -> Ptr GLfloat -> IO ())
ptr_glGetProgramResourcefvNV = unsafePerformIO $ getCommand "glGetProgramResourcefvNV"

-- glGetProgramResourceiv ------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glGetProgramResource.xhtml OpenGL 4.x>
glGetProgramResourceiv
  :: GLuint -- ^ @program@.
  -> GLenum -- ^ @programInterface@.
  -> GLuint -- ^ @index@.
  -> GLsizei -- ^ @propCount@.
  -> Ptr GLenum -- ^ @props@ pointing to @propCount@ elements of type @GLenum@.
  -> GLsizei -- ^ @bufSize@.
  -> Ptr GLsizei -- ^ @length@ pointing to @1@ elements of type @GLsizei@.
  -> Ptr GLint -- ^ @params@ pointing to @bufSize@ elements of type @GLint@.
  -> IO ()
glGetProgramResourceiv = dyn_glGetProgramResourceiv ptr_glGetProgramResourceiv

foreign import CALLCONV "dynamic" dyn_glGetProgramResourceiv
  :: FunPtr (GLuint -> GLenum -> GLuint -> GLsizei -> Ptr GLenum -> GLsizei -> Ptr GLsizei -> Ptr GLint -> IO ())
  ->         GLuint -> GLenum -> GLuint -> GLsizei -> Ptr GLenum -> GLsizei -> Ptr GLsizei -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glGetProgramResourceiv #-}
ptr_glGetProgramResourceiv :: FunPtr (GLuint -> GLenum -> GLuint -> GLsizei -> Ptr GLenum -> GLsizei -> Ptr GLsizei -> Ptr GLint -> IO ())
ptr_glGetProgramResourceiv = unsafePerformIO $ getCommand "glGetProgramResourceiv"

-- glGetProgramStageiv ---------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glGetProgramStage.xhtml OpenGL 4.x>
glGetProgramStageiv
  :: GLuint -- ^ @program@.
  -> GLenum -- ^ @shadertype@.
  -> GLenum -- ^ @pname@.
  -> Ptr GLint -- ^ @values@ pointing to @1@ elements of type @GLint@.
  -> IO ()
glGetProgramStageiv = dyn_glGetProgramStageiv ptr_glGetProgramStageiv

foreign import CALLCONV "dynamic" dyn_glGetProgramStageiv
  :: FunPtr (GLuint -> GLenum -> GLenum -> Ptr GLint -> IO ())
  ->         GLuint -> GLenum -> GLenum -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glGetProgramStageiv #-}
ptr_glGetProgramStageiv :: FunPtr (GLuint -> GLenum -> GLenum -> Ptr GLint -> IO ())
ptr_glGetProgramStageiv = unsafePerformIO $ getCommand "glGetProgramStageiv"

-- glGetProgramStringARB -------------------------------------------------------

glGetProgramStringARB
  :: GLenum -- ^ @target@ of type @ProgramTargetARB@.
  -> GLenum -- ^ @pname@ of type @ProgramStringPropertyARB@.
  -> Ptr a -- ^ @string@ pointing to @COMPSIZE(target,pname)@ elements of type @a@.
  -> IO ()
glGetProgramStringARB = dyn_glGetProgramStringARB ptr_glGetProgramStringARB

foreign import CALLCONV "dynamic" dyn_glGetProgramStringARB
  :: FunPtr (GLenum -> GLenum -> Ptr a -> IO ())
  ->         GLenum -> GLenum -> Ptr a -> IO ()

{-# NOINLINE ptr_glGetProgramStringARB #-}
ptr_glGetProgramStringARB :: FunPtr (GLenum -> GLenum -> Ptr a -> IO ())
ptr_glGetProgramStringARB = unsafePerformIO $ getCommand "glGetProgramStringARB"

-- glGetProgramStringNV --------------------------------------------------------

glGetProgramStringNV
  :: GLuint -- ^ @id@.
  -> GLenum -- ^ @pname@ of type @VertexAttribEnumNV@.
  -> Ptr GLubyte -- ^ @program@ pointing to @COMPSIZE(id,pname)@ elements of type @ProgramCharacterNV@.
  -> IO ()
glGetProgramStringNV = dyn_glGetProgramStringNV ptr_glGetProgramStringNV

foreign import CALLCONV "dynamic" dyn_glGetProgramStringNV
  :: FunPtr (GLuint -> GLenum -> Ptr GLubyte -> IO ())
  ->         GLuint -> GLenum -> Ptr GLubyte -> IO ()

{-# NOINLINE ptr_glGetProgramStringNV #-}
ptr_glGetProgramStringNV :: FunPtr (GLuint -> GLenum -> Ptr GLubyte -> IO ())
ptr_glGetProgramStringNV = unsafePerformIO $ getCommand "glGetProgramStringNV"

-- glGetProgramSubroutineParameteruivNV ----------------------------------------

glGetProgramSubroutineParameteruivNV
  :: GLenum -- ^ @target@.
  -> GLuint -- ^ @index@.
  -> Ptr GLuint -- ^ @param@ pointing to @COMPSIZE(target)@ elements of type @GLuint@.
  -> IO ()
glGetProgramSubroutineParameteruivNV = dyn_glGetProgramSubroutineParameteruivNV ptr_glGetProgramSubroutineParameteruivNV

foreign import CALLCONV "dynamic" dyn_glGetProgramSubroutineParameteruivNV
  :: FunPtr (GLenum -> GLuint -> Ptr GLuint -> IO ())
  ->         GLenum -> GLuint -> Ptr GLuint -> IO ()

{-# NOINLINE ptr_glGetProgramSubroutineParameteruivNV #-}
ptr_glGetProgramSubroutineParameteruivNV :: FunPtr (GLenum -> GLuint -> Ptr GLuint -> IO ())
ptr_glGetProgramSubroutineParameteruivNV = unsafePerformIO $ getCommand "glGetProgramSubroutineParameteruivNV"

-- glGetProgramiv --------------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glGetProgram.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glGetProgram.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glGetProgram.xhtml OpenGL 4.x>
glGetProgramiv
  :: GLuint -- ^ @program@.
  -> GLenum -- ^ @pname@.
  -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLint@.
  -> IO ()
glGetProgramiv = dyn_glGetProgramiv ptr_glGetProgramiv

foreign import CALLCONV "dynamic" dyn_glGetProgramiv
  :: FunPtr (GLuint -> GLenum -> Ptr GLint -> IO ())
  ->         GLuint -> GLenum -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glGetProgramiv #-}
ptr_glGetProgramiv :: FunPtr (GLuint -> GLenum -> Ptr GLint -> IO ())
ptr_glGetProgramiv = unsafePerformIO $ getCommand "glGetProgramiv"

-- glGetProgramivARB -----------------------------------------------------------

glGetProgramivARB
  :: GLenum -- ^ @target@ of type @ProgramTargetARB@.
  -> GLenum -- ^ @pname@ of type @ProgramPropertyARB@.
  -> Ptr GLint -- ^ @params@ pointing to @1@ elements of type @GLint@.
  -> IO ()
glGetProgramivARB = dyn_glGetProgramivARB ptr_glGetProgramivARB

foreign import CALLCONV "dynamic" dyn_glGetProgramivARB
  :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
  ->         GLenum -> GLenum -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glGetProgramivARB #-}
ptr_glGetProgramivARB :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
ptr_glGetProgramivARB = unsafePerformIO $ getCommand "glGetProgramivARB"

-- glGetProgramivNV ------------------------------------------------------------

glGetProgramivNV
  :: GLuint -- ^ @id@.
  -> GLenum -- ^ @pname@ of type @VertexAttribEnumNV@.
  -> Ptr GLint -- ^ @params@ pointing to @4@ elements of type @GLint@.
  -> IO ()
glGetProgramivNV = dyn_glGetProgramivNV ptr_glGetProgramivNV

foreign import CALLCONV "dynamic" dyn_glGetProgramivNV
  :: FunPtr (GLuint -> GLenum -> Ptr GLint -> IO ())
  ->         GLuint -> GLenum -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glGetProgramivNV #-}
ptr_glGetProgramivNV :: FunPtr (GLuint -> GLenum -> Ptr GLint -> IO ())
ptr_glGetProgramivNV = unsafePerformIO $ getCommand "glGetProgramivNV"

-- glGetQueryBufferObjecti64v --------------------------------------------------

glGetQueryBufferObjecti64v
  :: GLuint -- ^ @id@.
  -> GLuint -- ^ @buffer@.
  -> GLenum -- ^ @pname@.
  -> GLintptr -- ^ @offset@.
  -> IO ()
glGetQueryBufferObjecti64v = dyn_glGetQueryBufferObjecti64v ptr_glGetQueryBufferObjecti64v

foreign import CALLCONV "dynamic" dyn_glGetQueryBufferObjecti64v
  :: FunPtr (GLuint -> GLuint -> GLenum -> GLintptr -> IO ())
  ->         GLuint -> GLuint -> GLenum -> GLintptr -> IO ()

{-# NOINLINE ptr_glGetQueryBufferObjecti64v #-}
ptr_glGetQueryBufferObjecti64v :: FunPtr (GLuint -> GLuint -> GLenum -> GLintptr -> IO ())
ptr_glGetQueryBufferObjecti64v = unsafePerformIO $ getCommand "glGetQueryBufferObjecti64v"

-- glGetQueryBufferObjectiv ----------------------------------------------------

glGetQueryBufferObjectiv
  :: GLuint -- ^ @id@.
  -> GLuint -- ^ @buffer@.
  -> GLenum -- ^ @pname@.
  -> GLintptr -- ^ @offset@.
  -> IO ()
glGetQueryBufferObjectiv = dyn_glGetQueryBufferObjectiv ptr_glGetQueryBufferObjectiv

foreign import CALLCONV "dynamic" dyn_glGetQueryBufferObjectiv
  :: FunPtr (GLuint -> GLuint -> GLenum -> GLintptr -> IO ())
  ->         GLuint -> GLuint -> GLenum -> GLintptr -> IO ()

{-# NOINLINE ptr_glGetQueryBufferObjectiv #-}
ptr_glGetQueryBufferObjectiv :: FunPtr (GLuint -> GLuint -> GLenum -> GLintptr -> IO ())
ptr_glGetQueryBufferObjectiv = unsafePerformIO $ getCommand "glGetQueryBufferObjectiv"

-- glGetQueryBufferObjectui64v -------------------------------------------------

glGetQueryBufferObjectui64v
  :: GLuint -- ^ @id@.
  -> GLuint -- ^ @buffer@.
  -> GLenum -- ^ @pname@.
  -> GLintptr -- ^ @offset@.
  -> IO ()
glGetQueryBufferObjectui64v = dyn_glGetQueryBufferObjectui64v ptr_glGetQueryBufferObjectui64v

foreign import CALLCONV "dynamic" dyn_glGetQueryBufferObjectui64v
  :: FunPtr (GLuint -> GLuint -> GLenum -> GLintptr -> IO ())
  ->         GLuint -> GLuint -> GLenum -> GLintptr -> IO ()

{-# NOINLINE ptr_glGetQueryBufferObjectui64v #-}
ptr_glGetQueryBufferObjectui64v :: FunPtr (GLuint -> GLuint -> GLenum -> GLintptr -> IO ())
ptr_glGetQueryBufferObjectui64v = unsafePerformIO $ getCommand "glGetQueryBufferObjectui64v"

-- glGetQueryBufferObjectuiv ---------------------------------------------------

glGetQueryBufferObjectuiv
  :: GLuint -- ^ @id@.
  -> GLuint -- ^ @buffer@.
  -> GLenum -- ^ @pname@.
  -> GLintptr -- ^ @offset@.
  -> IO ()
glGetQueryBufferObjectuiv = dyn_glGetQueryBufferObjectuiv ptr_glGetQueryBufferObjectuiv

foreign import CALLCONV "dynamic" dyn_glGetQueryBufferObjectuiv
  :: FunPtr (GLuint -> GLuint -> GLenum -> GLintptr -> IO ())
  ->         GLuint -> GLuint -> GLenum -> GLintptr -> IO ()

{-# NOINLINE ptr_glGetQueryBufferObjectuiv #-}
ptr_glGetQueryBufferObjectuiv :: FunPtr (GLuint -> GLuint -> GLenum -> GLintptr -> IO ())
ptr_glGetQueryBufferObjectuiv = unsafePerformIO $ getCommand "glGetQueryBufferObjectuiv"

-- glGetQueryIndexediv ---------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glGetQueryIndexed.xhtml OpenGL 4.x>
glGetQueryIndexediv
  :: GLenum -- ^ @target@.
  -> GLuint -- ^ @index@.
  -> GLenum -- ^ @pname@.
  -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLint@.
  -> IO ()
glGetQueryIndexediv = dyn_glGetQueryIndexediv ptr_glGetQueryIndexediv

foreign import CALLCONV "dynamic" dyn_glGetQueryIndexediv
  :: FunPtr (GLenum -> GLuint -> GLenum -> Ptr GLint -> IO ())
  ->         GLenum -> GLuint -> GLenum -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glGetQueryIndexediv #-}
ptr_glGetQueryIndexediv :: FunPtr (GLenum -> GLuint -> GLenum -> Ptr GLint -> IO ())
ptr_glGetQueryIndexediv = unsafePerformIO $ getCommand "glGetQueryIndexediv"

-- glGetQueryObjecti64v --------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glGetQueryObject.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glGetQueryObject.xhtml OpenGL 4.x>
glGetQueryObjecti64v
  :: GLuint -- ^ @id@.
  -> GLenum -- ^ @pname@.
  -> Ptr GLint64 -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLint64@.
  -> IO ()
glGetQueryObjecti64v = dyn_glGetQueryObjecti64v ptr_glGetQueryObjecti64v

foreign import CALLCONV "dynamic" dyn_glGetQueryObjecti64v
  :: FunPtr (GLuint -> GLenum -> Ptr GLint64 -> IO ())
  ->         GLuint -> GLenum -> Ptr GLint64 -> IO ()

{-# NOINLINE ptr_glGetQueryObjecti64v #-}
ptr_glGetQueryObjecti64v :: FunPtr (GLuint -> GLenum -> Ptr GLint64 -> IO ())
ptr_glGetQueryObjecti64v = unsafePerformIO $ getCommand "glGetQueryObjecti64v"

-- glGetQueryObjecti64vEXT -----------------------------------------------------

glGetQueryObjecti64vEXT
  :: GLuint -- ^ @id@.
  -> GLenum -- ^ @pname@.
  -> Ptr GLint64 -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLint64@.
  -> IO ()
glGetQueryObjecti64vEXT = dyn_glGetQueryObjecti64vEXT ptr_glGetQueryObjecti64vEXT

foreign import CALLCONV "dynamic" dyn_glGetQueryObjecti64vEXT
  :: FunPtr (GLuint -> GLenum -> Ptr GLint64 -> IO ())
  ->         GLuint -> GLenum -> Ptr GLint64 -> IO ()

{-# NOINLINE ptr_glGetQueryObjecti64vEXT #-}
ptr_glGetQueryObjecti64vEXT :: FunPtr (GLuint -> GLenum -> Ptr GLint64 -> IO ())
ptr_glGetQueryObjecti64vEXT = unsafePerformIO $ getCommand "glGetQueryObjecti64vEXT"

-- glGetQueryObjectiv ----------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glGetQueryObject.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glGetQueryObject.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glGetQueryObject.xhtml OpenGL 4.x>
glGetQueryObjectiv
  :: GLuint -- ^ @id@.
  -> GLenum -- ^ @pname@.
  -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLint@.
  -> IO ()
glGetQueryObjectiv = dyn_glGetQueryObjectiv ptr_glGetQueryObjectiv

foreign import CALLCONV "dynamic" dyn_glGetQueryObjectiv
  :: FunPtr (GLuint -> GLenum -> Ptr GLint -> IO ())
  ->         GLuint -> GLenum -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glGetQueryObjectiv #-}
ptr_glGetQueryObjectiv :: FunPtr (GLuint -> GLenum -> Ptr GLint -> IO ())
ptr_glGetQueryObjectiv = unsafePerformIO $ getCommand "glGetQueryObjectiv"

-- glGetQueryObjectivARB -------------------------------------------------------

glGetQueryObjectivARB
  :: GLuint -- ^ @id@.
  -> GLenum -- ^ @pname@.
  -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLint@.
  -> IO ()
glGetQueryObjectivARB = dyn_glGetQueryObjectivARB ptr_glGetQueryObjectivARB

foreign import CALLCONV "dynamic" dyn_glGetQueryObjectivARB
  :: FunPtr (GLuint -> GLenum -> Ptr GLint -> IO ())
  ->         GLuint -> GLenum -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glGetQueryObjectivARB #-}
ptr_glGetQueryObjectivARB :: FunPtr (GLuint -> GLenum -> Ptr GLint -> IO ())
ptr_glGetQueryObjectivARB = unsafePerformIO $ getCommand "glGetQueryObjectivARB"

-- glGetQueryObjectivEXT -------------------------------------------------------

glGetQueryObjectivEXT
  :: GLuint -- ^ @id@.
  -> GLenum -- ^ @pname@.
  -> Ptr GLint -- ^ @params@.
  -> IO ()
glGetQueryObjectivEXT = dyn_glGetQueryObjectivEXT ptr_glGetQueryObjectivEXT

foreign import CALLCONV "dynamic" dyn_glGetQueryObjectivEXT
  :: FunPtr (GLuint -> GLenum -> Ptr GLint -> IO ())
  ->         GLuint -> GLenum -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glGetQueryObjectivEXT #-}
ptr_glGetQueryObjectivEXT :: FunPtr (GLuint -> GLenum -> Ptr GLint -> IO ())
ptr_glGetQueryObjectivEXT = unsafePerformIO $ getCommand "glGetQueryObjectivEXT"

-- glGetQueryObjectui64v -------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glGetQueryObject.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glGetQueryObject.xhtml OpenGL 4.x>
glGetQueryObjectui64v
  :: GLuint -- ^ @id@.
  -> GLenum -- ^ @pname@.
  -> Ptr GLuint64 -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLuint64@.
  -> IO ()
glGetQueryObjectui64v = dyn_glGetQueryObjectui64v ptr_glGetQueryObjectui64v

foreign import CALLCONV "dynamic" dyn_glGetQueryObjectui64v
  :: FunPtr (GLuint -> GLenum -> Ptr GLuint64 -> IO ())
  ->         GLuint -> GLenum -> Ptr GLuint64 -> IO ()

{-# NOINLINE ptr_glGetQueryObjectui64v #-}
ptr_glGetQueryObjectui64v :: FunPtr (GLuint -> GLenum -> Ptr GLuint64 -> IO ())
ptr_glGetQueryObjectui64v = unsafePerformIO $ getCommand "glGetQueryObjectui64v"

-- glGetQueryObjectui64vEXT ----------------------------------------------------

glGetQueryObjectui64vEXT
  :: GLuint -- ^ @id@.
  -> GLenum -- ^ @pname@.
  -> Ptr GLuint64 -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLuint64@.
  -> IO ()
glGetQueryObjectui64vEXT = dyn_glGetQueryObjectui64vEXT ptr_glGetQueryObjectui64vEXT

foreign import CALLCONV "dynamic" dyn_glGetQueryObjectui64vEXT
  :: FunPtr (GLuint -> GLenum -> Ptr GLuint64 -> IO ())
  ->         GLuint -> GLenum -> Ptr GLuint64 -> IO ()

{-# NOINLINE ptr_glGetQueryObjectui64vEXT #-}
ptr_glGetQueryObjectui64vEXT :: FunPtr (GLuint -> GLenum -> Ptr GLuint64 -> IO ())
ptr_glGetQueryObjectui64vEXT = unsafePerformIO $ getCommand "glGetQueryObjectui64vEXT"

-- glGetQueryObjectuiv ---------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glGetQueryObject.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glGetQueryObject.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glGetQueryObject.xhtml OpenGL 4.x>
glGetQueryObjectuiv
  :: GLuint -- ^ @id@.
  -> GLenum -- ^ @pname@.
  -> Ptr GLuint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLuint@.
  -> IO ()
glGetQueryObjectuiv = dyn_glGetQueryObjectuiv ptr_glGetQueryObjectuiv

foreign import CALLCONV "dynamic" dyn_glGetQueryObjectuiv
  :: FunPtr (GLuint -> GLenum -> Ptr GLuint -> IO ())
  ->         GLuint -> GLenum -> Ptr GLuint -> IO ()

{-# NOINLINE ptr_glGetQueryObjectuiv #-}
ptr_glGetQueryObjectuiv :: FunPtr (GLuint -> GLenum -> Ptr GLuint -> IO ())
ptr_glGetQueryObjectuiv = unsafePerformIO $ getCommand "glGetQueryObjectuiv"

-- glGetQueryObjectuivARB ------------------------------------------------------

glGetQueryObjectuivARB
  :: GLuint -- ^ @id@.
  -> GLenum -- ^ @pname@.
  -> Ptr GLuint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLuint@.
  -> IO ()
glGetQueryObjectuivARB = dyn_glGetQueryObjectuivARB ptr_glGetQueryObjectuivARB

foreign import CALLCONV "dynamic" dyn_glGetQueryObjectuivARB
  :: FunPtr (GLuint -> GLenum -> Ptr GLuint -> IO ())
  ->         GLuint -> GLenum -> Ptr GLuint -> IO ()

{-# NOINLINE ptr_glGetQueryObjectuivARB #-}
ptr_glGetQueryObjectuivARB :: FunPtr (GLuint -> GLenum -> Ptr GLuint -> IO ())
ptr_glGetQueryObjectuivARB = unsafePerformIO $ getCommand "glGetQueryObjectuivARB"

-- glGetQueryObjectuivEXT ------------------------------------------------------

glGetQueryObjectuivEXT
  :: GLuint -- ^ @id@.
  -> GLenum -- ^ @pname@.
  -> Ptr GLuint -- ^ @params@.
  -> IO ()
glGetQueryObjectuivEXT = dyn_glGetQueryObjectuivEXT ptr_glGetQueryObjectuivEXT

foreign import CALLCONV "dynamic" dyn_glGetQueryObjectuivEXT
  :: FunPtr (GLuint -> GLenum -> Ptr GLuint -> IO ())
  ->         GLuint -> GLenum -> Ptr GLuint -> IO ()

{-# NOINLINE ptr_glGetQueryObjectuivEXT #-}
ptr_glGetQueryObjectuivEXT :: FunPtr (GLuint -> GLenum -> Ptr GLuint -> IO ())
ptr_glGetQueryObjectuivEXT = unsafePerformIO $ getCommand "glGetQueryObjectuivEXT"

-- glGetQueryiv ----------------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glGetQueryiv.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glGetQueryiv.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glGetQueryiv.xhtml OpenGL 4.x>
glGetQueryiv
  :: GLenum -- ^ @target@.
  -> GLenum -- ^ @pname@.
  -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLint@.
  -> IO ()
glGetQueryiv = dyn_glGetQueryiv ptr_glGetQueryiv

foreign import CALLCONV "dynamic" dyn_glGetQueryiv
  :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
  ->         GLenum -> GLenum -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glGetQueryiv #-}
ptr_glGetQueryiv :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
ptr_glGetQueryiv = unsafePerformIO $ getCommand "glGetQueryiv"

-- glGetQueryivARB -------------------------------------------------------------

glGetQueryivARB
  :: GLenum -- ^ @target@.
  -> GLenum -- ^ @pname@.
  -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLint@.
  -> IO ()
glGetQueryivARB = dyn_glGetQueryivARB ptr_glGetQueryivARB

foreign import CALLCONV "dynamic" dyn_glGetQueryivARB
  :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
  ->         GLenum -> GLenum -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glGetQueryivARB #-}
ptr_glGetQueryivARB :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
ptr_glGetQueryivARB = unsafePerformIO $ getCommand "glGetQueryivARB"

-- glGetQueryivEXT -------------------------------------------------------------

glGetQueryivEXT
  :: GLenum -- ^ @target@.
  -> GLenum -- ^ @pname@.
  -> Ptr GLint -- ^ @params@.
  -> IO ()
glGetQueryivEXT = dyn_glGetQueryivEXT ptr_glGetQueryivEXT

foreign import CALLCONV "dynamic" dyn_glGetQueryivEXT
  :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
  ->         GLenum -> GLenum -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glGetQueryivEXT #-}
ptr_glGetQueryivEXT :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
ptr_glGetQueryivEXT = unsafePerformIO $ getCommand "glGetQueryivEXT"

-- glGetRenderbufferParameteriv ------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glGetRenderbufferParameter.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glGetRenderbufferParameter.xhtml OpenGL 4.x>
glGetRenderbufferParameteriv
  :: GLenum -- ^ @target@ of type @RenderbufferTarget@.
  -> GLenum -- ^ @pname@.
  -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLint@.
  -> IO ()
glGetRenderbufferParameteriv = dyn_glGetRenderbufferParameteriv ptr_glGetRenderbufferParameteriv

foreign import CALLCONV "dynamic" dyn_glGetRenderbufferParameteriv
  :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
  ->         GLenum -> GLenum -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glGetRenderbufferParameteriv #-}
ptr_glGetRenderbufferParameteriv :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
ptr_glGetRenderbufferParameteriv = unsafePerformIO $ getCommand "glGetRenderbufferParameteriv"

-- glGetRenderbufferParameterivEXT ---------------------------------------------

glGetRenderbufferParameterivEXT
  :: GLenum -- ^ @target@ of type @RenderbufferTarget@.
  -> GLenum -- ^ @pname@.
  -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLint@.
  -> IO ()
glGetRenderbufferParameterivEXT = dyn_glGetRenderbufferParameterivEXT ptr_glGetRenderbufferParameterivEXT

foreign import CALLCONV "dynamic" dyn_glGetRenderbufferParameterivEXT
  :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
  ->         GLenum -> GLenum -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glGetRenderbufferParameterivEXT #-}
ptr_glGetRenderbufferParameterivEXT :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
ptr_glGetRenderbufferParameterivEXT = unsafePerformIO $ getCommand "glGetRenderbufferParameterivEXT"

-- glGetRenderbufferParameterivOES ---------------------------------------------

glGetRenderbufferParameterivOES
  :: GLenum -- ^ @target@.
  -> GLenum -- ^ @pname@.
  -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLint@.
  -> IO ()
glGetRenderbufferParameterivOES = dyn_glGetRenderbufferParameterivOES ptr_glGetRenderbufferParameterivOES

foreign import CALLCONV "dynamic" dyn_glGetRenderbufferParameterivOES
  :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
  ->         GLenum -> GLenum -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glGetRenderbufferParameterivOES #-}
ptr_glGetRenderbufferParameterivOES :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
ptr_glGetRenderbufferParameterivOES = unsafePerformIO $ getCommand "glGetRenderbufferParameterivOES"

-- glGetSamplerParameterIiv ----------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glGetSamplerParameter.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glGetSamplerParameter.xhtml OpenGL 4.x>
glGetSamplerParameterIiv
  :: GLuint -- ^ @sampler@.
  -> GLenum -- ^ @pname@.
  -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLint@.
  -> IO ()
glGetSamplerParameterIiv = dyn_glGetSamplerParameterIiv ptr_glGetSamplerParameterIiv

foreign import CALLCONV "dynamic" dyn_glGetSamplerParameterIiv
  :: FunPtr (GLuint -> GLenum -> Ptr GLint -> IO ())
  ->         GLuint -> GLenum -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glGetSamplerParameterIiv #-}
ptr_glGetSamplerParameterIiv :: FunPtr (GLuint -> GLenum -> Ptr GLint -> IO ())
ptr_glGetSamplerParameterIiv = unsafePerformIO $ getCommand "glGetSamplerParameterIiv"

-- glGetSamplerParameterIivEXT -------------------------------------------------

glGetSamplerParameterIivEXT
  :: GLuint -- ^ @sampler@.
  -> GLenum -- ^ @pname@.
  -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLint@.
  -> IO ()
glGetSamplerParameterIivEXT = dyn_glGetSamplerParameterIivEXT ptr_glGetSamplerParameterIivEXT

foreign import CALLCONV "dynamic" dyn_glGetSamplerParameterIivEXT
  :: FunPtr (GLuint -> GLenum -> Ptr GLint -> IO ())
  ->         GLuint -> GLenum -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glGetSamplerParameterIivEXT #-}
ptr_glGetSamplerParameterIivEXT :: FunPtr (GLuint -> GLenum -> Ptr GLint -> IO ())
ptr_glGetSamplerParameterIivEXT = unsafePerformIO $ getCommand "glGetSamplerParameterIivEXT"

-- glGetSamplerParameterIivOES -------------------------------------------------

glGetSamplerParameterIivOES
  :: GLuint -- ^ @sampler@.
  -> GLenum -- ^ @pname@.
  -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLint@.
  -> IO ()
glGetSamplerParameterIivOES = dyn_glGetSamplerParameterIivOES ptr_glGetSamplerParameterIivOES

foreign import CALLCONV "dynamic" dyn_glGetSamplerParameterIivOES
  :: FunPtr (GLuint -> GLenum -> Ptr GLint -> IO ())
  ->         GLuint -> GLenum -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glGetSamplerParameterIivOES #-}
ptr_glGetSamplerParameterIivOES :: FunPtr (GLuint -> GLenum -> Ptr GLint -> IO ())
ptr_glGetSamplerParameterIivOES = unsafePerformIO $ getCommand "glGetSamplerParameterIivOES"

-- glGetSamplerParameterIuiv ---------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glGetSamplerParameter.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glGetSamplerParameter.xhtml OpenGL 4.x>
glGetSamplerParameterIuiv
  :: GLuint -- ^ @sampler@.
  -> GLenum -- ^ @pname@.
  -> Ptr GLuint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLuint@.
  -> IO ()
glGetSamplerParameterIuiv = dyn_glGetSamplerParameterIuiv ptr_glGetSamplerParameterIuiv

foreign import CALLCONV "dynamic" dyn_glGetSamplerParameterIuiv
  :: FunPtr (GLuint -> GLenum -> Ptr GLuint -> IO ())
  ->         GLuint -> GLenum -> Ptr GLuint -> IO ()

{-# NOINLINE ptr_glGetSamplerParameterIuiv #-}
ptr_glGetSamplerParameterIuiv :: FunPtr (GLuint -> GLenum -> Ptr GLuint -> IO ())
ptr_glGetSamplerParameterIuiv = unsafePerformIO $ getCommand "glGetSamplerParameterIuiv"

-- glGetSamplerParameterIuivEXT ------------------------------------------------

glGetSamplerParameterIuivEXT
  :: GLuint -- ^ @sampler@.
  -> GLenum -- ^ @pname@.
  -> Ptr GLuint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLuint@.
  -> IO ()
glGetSamplerParameterIuivEXT = dyn_glGetSamplerParameterIuivEXT ptr_glGetSamplerParameterIuivEXT

foreign import CALLCONV "dynamic" dyn_glGetSamplerParameterIuivEXT
  :: FunPtr (GLuint -> GLenum -> Ptr GLuint -> IO ())
  ->         GLuint -> GLenum -> Ptr GLuint -> IO ()

{-# NOINLINE ptr_glGetSamplerParameterIuivEXT #-}
ptr_glGetSamplerParameterIuivEXT :: FunPtr (GLuint -> GLenum -> Ptr GLuint -> IO ())
ptr_glGetSamplerParameterIuivEXT = unsafePerformIO $ getCommand "glGetSamplerParameterIuivEXT"

-- glGetSamplerParameterIuivOES ------------------------------------------------

glGetSamplerParameterIuivOES
  :: GLuint -- ^ @sampler@.
  -> GLenum -- ^ @pname@.
  -> Ptr GLuint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLuint@.
  -> IO ()
glGetSamplerParameterIuivOES = dyn_glGetSamplerParameterIuivOES ptr_glGetSamplerParameterIuivOES

foreign import CALLCONV "dynamic" dyn_glGetSamplerParameterIuivOES
  :: FunPtr (GLuint -> GLenum -> Ptr GLuint -> IO ())
  ->         GLuint -> GLenum -> Ptr GLuint -> IO ()

{-# NOINLINE ptr_glGetSamplerParameterIuivOES #-}
ptr_glGetSamplerParameterIuivOES :: FunPtr (GLuint -> GLenum -> Ptr GLuint -> IO ())
ptr_glGetSamplerParameterIuivOES = unsafePerformIO $ getCommand "glGetSamplerParameterIuivOES"

-- glGetSamplerParameterfv -----------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glGetSamplerParameter.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glGetSamplerParameter.xhtml OpenGL 4.x>
glGetSamplerParameterfv
  :: GLuint -- ^ @sampler@.
  -> GLenum -- ^ @pname@.
  -> Ptr GLfloat -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLfloat@.
  -> IO ()
glGetSamplerParameterfv = dyn_glGetSamplerParameterfv ptr_glGetSamplerParameterfv

foreign import CALLCONV "dynamic" dyn_glGetSamplerParameterfv
  :: FunPtr (GLuint -> GLenum -> Ptr GLfloat -> IO ())
  ->         GLuint -> GLenum -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glGetSamplerParameterfv #-}
ptr_glGetSamplerParameterfv :: FunPtr (GLuint -> GLenum -> Ptr GLfloat -> IO ())
ptr_glGetSamplerParameterfv = unsafePerformIO $ getCommand "glGetSamplerParameterfv"

-- glGetSamplerParameteriv -----------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glGetSamplerParameter.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glGetSamplerParameter.xhtml OpenGL 4.x>
glGetSamplerParameteriv
  :: GLuint -- ^ @sampler@.
  -> GLenum -- ^ @pname@.
  -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLint@.
  -> IO ()
glGetSamplerParameteriv = dyn_glGetSamplerParameteriv ptr_glGetSamplerParameteriv

foreign import CALLCONV "dynamic" dyn_glGetSamplerParameteriv
  :: FunPtr (GLuint -> GLenum -> Ptr GLint -> IO ())
  ->         GLuint -> GLenum -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glGetSamplerParameteriv #-}
ptr_glGetSamplerParameteriv :: FunPtr (GLuint -> GLenum -> Ptr GLint -> IO ())
ptr_glGetSamplerParameteriv = unsafePerformIO $ getCommand "glGetSamplerParameteriv"

-- glGetSeparableFilter --------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glGetSeparableFilter.xml OpenGL 2.x>
glGetSeparableFilter
  :: GLenum -- ^ @target@ of type @SeparableTarget@.
  -> GLenum -- ^ @format@ of type @PixelFormat@.
  -> GLenum -- ^ @type@ of type @PixelType@.
  -> Ptr a -- ^ @row@ pointing to @COMPSIZE(target,format,type)@ elements of type @a@.
  -> Ptr b -- ^ @column@ pointing to @COMPSIZE(target,format,type)@ elements of type @b@.
  -> Ptr c -- ^ @span@ pointing to @COMPSIZE(target,format,type)@ elements of type @c@.
  -> IO ()
glGetSeparableFilter = dyn_glGetSeparableFilter ptr_glGetSeparableFilter

foreign import CALLCONV "dynamic" dyn_glGetSeparableFilter
  :: FunPtr (GLenum -> GLenum -> GLenum -> Ptr a -> Ptr b -> Ptr c -> IO ())
  ->         GLenum -> GLenum -> GLenum -> Ptr a -> Ptr b -> Ptr c -> IO ()

{-# NOINLINE ptr_glGetSeparableFilter #-}
ptr_glGetSeparableFilter :: FunPtr (GLenum -> GLenum -> GLenum -> Ptr a -> Ptr b -> Ptr c -> IO ())
ptr_glGetSeparableFilter = unsafePerformIO $ getCommand "glGetSeparableFilter"

-- glGetSeparableFilterEXT -----------------------------------------------------

glGetSeparableFilterEXT
  :: GLenum -- ^ @target@ of type @SeparableTargetEXT@.
  -> GLenum -- ^ @format@ of type @PixelFormat@.
  -> GLenum -- ^ @type@ of type @PixelType@.
  -> Ptr a -- ^ @row@ pointing to @COMPSIZE(target,format,type)@ elements of type @a@.
  -> Ptr b -- ^ @column@ pointing to @COMPSIZE(target,format,type)@ elements of type @b@.
  -> Ptr c -- ^ @span@ pointing to @COMPSIZE(target,format,type)@ elements of type @c@.
  -> IO ()
glGetSeparableFilterEXT = dyn_glGetSeparableFilterEXT ptr_glGetSeparableFilterEXT

foreign import CALLCONV "dynamic" dyn_glGetSeparableFilterEXT
  :: FunPtr (GLenum -> GLenum -> GLenum -> Ptr a -> Ptr b -> Ptr c -> IO ())
  ->         GLenum -> GLenum -> GLenum -> Ptr a -> Ptr b -> Ptr c -> IO ()

{-# NOINLINE ptr_glGetSeparableFilterEXT #-}
ptr_glGetSeparableFilterEXT :: FunPtr (GLenum -> GLenum -> GLenum -> Ptr a -> Ptr b -> Ptr c -> IO ())
ptr_glGetSeparableFilterEXT = unsafePerformIO $ getCommand "glGetSeparableFilterEXT"

-- glGetShaderInfoLog ----------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glGetShaderInfoLog.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glGetShaderInfoLog.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glGetShaderInfoLog.xhtml OpenGL 4.x>
glGetShaderInfoLog
  :: GLuint -- ^ @shader@.
  -> GLsizei -- ^ @bufSize@.
  -> Ptr GLsizei -- ^ @length@ pointing to @1@ elements of type @GLsizei@.
  -> Ptr GLchar -- ^ @infoLog@ pointing to @bufSize@ elements of type @GLchar@.
  -> IO ()
glGetShaderInfoLog = dyn_glGetShaderInfoLog ptr_glGetShaderInfoLog

foreign import CALLCONV "dynamic" dyn_glGetShaderInfoLog
  :: FunPtr (GLuint -> GLsizei -> Ptr GLsizei -> Ptr GLchar -> IO ())
  ->         GLuint -> GLsizei -> Ptr GLsizei -> Ptr GLchar -> IO ()

{-# NOINLINE ptr_glGetShaderInfoLog #-}
ptr_glGetShaderInfoLog :: FunPtr (GLuint -> GLsizei -> Ptr GLsizei -> Ptr GLchar -> IO ())
ptr_glGetShaderInfoLog = unsafePerformIO $ getCommand "glGetShaderInfoLog"

-- glGetShaderPrecisionFormat --------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glGetShaderPrecisionFormat.xhtml OpenGL 4.x>
glGetShaderPrecisionFormat
  :: GLenum -- ^ @shadertype@.
  -> GLenum -- ^ @precisiontype@.
  -> Ptr GLint -- ^ @range@ pointing to @2@ elements of type @GLint@.
  -> Ptr GLint -- ^ @precision@ pointing to @2@ elements of type @GLint@.
  -> IO ()
glGetShaderPrecisionFormat = dyn_glGetShaderPrecisionFormat ptr_glGetShaderPrecisionFormat

foreign import CALLCONV "dynamic" dyn_glGetShaderPrecisionFormat
  :: FunPtr (GLenum -> GLenum -> Ptr GLint -> Ptr GLint -> IO ())
  ->         GLenum -> GLenum -> Ptr GLint -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glGetShaderPrecisionFormat #-}
ptr_glGetShaderPrecisionFormat :: FunPtr (GLenum -> GLenum -> Ptr GLint -> Ptr GLint -> IO ())
ptr_glGetShaderPrecisionFormat = unsafePerformIO $ getCommand "glGetShaderPrecisionFormat"

-- glGetShaderSource -----------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glGetShaderSource.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glGetShaderSource.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glGetShaderSource.xhtml OpenGL 4.x>
glGetShaderSource
  :: GLuint -- ^ @shader@.
  -> GLsizei -- ^ @bufSize@.
  -> Ptr GLsizei -- ^ @length@ pointing to @1@ elements of type @GLsizei@.
  -> Ptr GLchar -- ^ @source@ pointing to @bufSize@ elements of type @GLchar@.
  -> IO ()
glGetShaderSource = dyn_glGetShaderSource ptr_glGetShaderSource

foreign import CALLCONV "dynamic" dyn_glGetShaderSource
  :: FunPtr (GLuint -> GLsizei -> Ptr GLsizei -> Ptr GLchar -> IO ())
  ->         GLuint -> GLsizei -> Ptr GLsizei -> Ptr GLchar -> IO ()

{-# NOINLINE ptr_glGetShaderSource #-}
ptr_glGetShaderSource :: FunPtr (GLuint -> GLsizei -> Ptr GLsizei -> Ptr GLchar -> IO ())
ptr_glGetShaderSource = unsafePerformIO $ getCommand "glGetShaderSource"

-- glGetShaderSourceARB --------------------------------------------------------

glGetShaderSourceARB
  :: GLhandleARB -- ^ @obj@ of type @handleARB@.
  -> GLsizei -- ^ @maxLength@.
  -> Ptr GLsizei -- ^ @length@ pointing to @1@ elements of type @GLsizei@.
  -> Ptr GLcharARB -- ^ @source@ pointing to @maxLength@ elements of type @GLcharARB@.
  -> IO ()
glGetShaderSourceARB = dyn_glGetShaderSourceARB ptr_glGetShaderSourceARB

foreign import CALLCONV "dynamic" dyn_glGetShaderSourceARB
  :: FunPtr (GLhandleARB -> GLsizei -> Ptr GLsizei -> Ptr GLcharARB -> IO ())
  ->         GLhandleARB -> GLsizei -> Ptr GLsizei -> Ptr GLcharARB -> IO ()

{-# NOINLINE ptr_glGetShaderSourceARB #-}
ptr_glGetShaderSourceARB :: FunPtr (GLhandleARB -> GLsizei -> Ptr GLsizei -> Ptr GLcharARB -> IO ())
ptr_glGetShaderSourceARB = unsafePerformIO $ getCommand "glGetShaderSourceARB"

-- glGetShaderiv ---------------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glGetShader.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glGetShader.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glGetShader.xhtml OpenGL 4.x>
glGetShaderiv
  :: GLuint -- ^ @shader@.
  -> GLenum -- ^ @pname@.
  -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLint@.
  -> IO ()
glGetShaderiv = dyn_glGetShaderiv ptr_glGetShaderiv

foreign import CALLCONV "dynamic" dyn_glGetShaderiv
  :: FunPtr (GLuint -> GLenum -> Ptr GLint -> IO ())
  ->         GLuint -> GLenum -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glGetShaderiv #-}
ptr_glGetShaderiv :: FunPtr (GLuint -> GLenum -> Ptr GLint -> IO ())
ptr_glGetShaderiv = unsafePerformIO $ getCommand "glGetShaderiv"

-- glGetSharpenTexFuncSGIS -----------------------------------------------------

glGetSharpenTexFuncSGIS
  :: GLenum -- ^ @target@ of type @TextureTarget@.
  -> Ptr GLfloat -- ^ @points@ pointing to @COMPSIZE(target)@ elements of type @GLfloat@.
  -> IO ()
glGetSharpenTexFuncSGIS = dyn_glGetSharpenTexFuncSGIS ptr_glGetSharpenTexFuncSGIS

foreign import CALLCONV "dynamic" dyn_glGetSharpenTexFuncSGIS
  :: FunPtr (GLenum -> Ptr GLfloat -> IO ())
  ->         GLenum -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glGetSharpenTexFuncSGIS #-}
ptr_glGetSharpenTexFuncSGIS :: FunPtr (GLenum -> Ptr GLfloat -> IO ())
ptr_glGetSharpenTexFuncSGIS = unsafePerformIO $ getCommand "glGetSharpenTexFuncSGIS"

-- glGetString -----------------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glGetString.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glGetString.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glGetString.xhtml OpenGL 4.x>
glGetString
  :: GLenum -- ^ @name@ of type @StringName@.
  -> IO (Ptr GLubyte) -- ^ pointing to elements of type @String@.
glGetString = dyn_glGetString ptr_glGetString

foreign import CALLCONV "dynamic" dyn_glGetString
  :: FunPtr (GLenum -> IO (Ptr GLubyte))
  ->         GLenum -> IO (Ptr GLubyte)

{-# NOINLINE ptr_glGetString #-}
ptr_glGetString :: FunPtr (GLenum -> IO (Ptr GLubyte))
ptr_glGetString = unsafePerformIO $ getCommand "glGetString"

-- glGetStringi ----------------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glGetString.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glGetString.xhtml OpenGL 4.x>
glGetStringi
  :: GLenum -- ^ @name@.
  -> GLuint -- ^ @index@.
  -> IO (Ptr GLubyte) -- ^ pointing to elements of type @String@.
glGetStringi = dyn_glGetStringi ptr_glGetStringi

foreign import CALLCONV "dynamic" dyn_glGetStringi
  :: FunPtr (GLenum -> GLuint -> IO (Ptr GLubyte))
  ->         GLenum -> GLuint -> IO (Ptr GLubyte)

{-# NOINLINE ptr_glGetStringi #-}
ptr_glGetStringi :: FunPtr (GLenum -> GLuint -> IO (Ptr GLubyte))
ptr_glGetStringi = unsafePerformIO $ getCommand "glGetStringi"

-- glGetSubroutineIndex --------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glGetSubroutineIndex.xhtml OpenGL 4.x>
glGetSubroutineIndex
  :: GLuint -- ^ @program@.
  -> GLenum -- ^ @shadertype@.
  -> Ptr GLchar -- ^ @name@.
  -> IO GLuint
glGetSubroutineIndex = dyn_glGetSubroutineIndex ptr_glGetSubroutineIndex

foreign import CALLCONV "dynamic" dyn_glGetSubroutineIndex
  :: FunPtr (GLuint -> GLenum -> Ptr GLchar -> IO GLuint)
  ->         GLuint -> GLenum -> Ptr GLchar -> IO GLuint

{-# NOINLINE ptr_glGetSubroutineIndex #-}
ptr_glGetSubroutineIndex :: FunPtr (GLuint -> GLenum -> Ptr GLchar -> IO GLuint)
ptr_glGetSubroutineIndex = unsafePerformIO $ getCommand "glGetSubroutineIndex"

-- glGetSubroutineUniformLocation ----------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glGetSubroutineUniformLocation.xhtml OpenGL 4.x>
glGetSubroutineUniformLocation
  :: GLuint -- ^ @program@.
  -> GLenum -- ^ @shadertype@.
  -> Ptr GLchar -- ^ @name@.
  -> IO GLint
glGetSubroutineUniformLocation = dyn_glGetSubroutineUniformLocation ptr_glGetSubroutineUniformLocation

foreign import CALLCONV "dynamic" dyn_glGetSubroutineUniformLocation
  :: FunPtr (GLuint -> GLenum -> Ptr GLchar -> IO GLint)
  ->         GLuint -> GLenum -> Ptr GLchar -> IO GLint

{-# NOINLINE ptr_glGetSubroutineUniformLocation #-}
ptr_glGetSubroutineUniformLocation :: FunPtr (GLuint -> GLenum -> Ptr GLchar -> IO GLint)
ptr_glGetSubroutineUniformLocation = unsafePerformIO $ getCommand "glGetSubroutineUniformLocation"

-- glGetSynciv -----------------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glGetSync.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glGetSync.xhtml OpenGL 4.x>
glGetSynciv
  :: GLsync -- ^ @sync@ of type @sync@.
  -> GLenum -- ^ @pname@.
  -> GLsizei -- ^ @bufSize@.
  -> Ptr GLsizei -- ^ @length@ pointing to @1@ elements of type @GLsizei@.
  -> Ptr GLint -- ^ @values@ pointing to @bufSize@ elements of type @GLint@.
  -> IO ()
glGetSynciv = dyn_glGetSynciv ptr_glGetSynciv

foreign import CALLCONV "dynamic" dyn_glGetSynciv
  :: FunPtr (GLsync -> GLenum -> GLsizei -> Ptr GLsizei -> Ptr GLint -> IO ())
  ->         GLsync -> GLenum -> GLsizei -> Ptr GLsizei -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glGetSynciv #-}
ptr_glGetSynciv :: FunPtr (GLsync -> GLenum -> GLsizei -> Ptr GLsizei -> Ptr GLint -> IO ())
ptr_glGetSynciv = unsafePerformIO $ getCommand "glGetSynciv"

-- glGetSyncivAPPLE ------------------------------------------------------------

glGetSyncivAPPLE
  :: GLsync -- ^ @sync@.
  -> GLenum -- ^ @pname@.
  -> GLsizei -- ^ @bufSize@.
  -> Ptr GLsizei -- ^ @length@.
  -> Ptr GLint -- ^ @values@ pointing to @bufSize@ elements of type @GLint@.
  -> IO ()
glGetSyncivAPPLE = dyn_glGetSyncivAPPLE ptr_glGetSyncivAPPLE

foreign import CALLCONV "dynamic" dyn_glGetSyncivAPPLE
  :: FunPtr (GLsync -> GLenum -> GLsizei -> Ptr GLsizei -> Ptr GLint -> IO ())
  ->         GLsync -> GLenum -> GLsizei -> Ptr GLsizei -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glGetSyncivAPPLE #-}
ptr_glGetSyncivAPPLE :: FunPtr (GLsync -> GLenum -> GLsizei -> Ptr GLsizei -> Ptr GLint -> IO ())
ptr_glGetSyncivAPPLE = unsafePerformIO $ getCommand "glGetSyncivAPPLE"

-- glGetTexBumpParameterfvATI --------------------------------------------------

glGetTexBumpParameterfvATI
  :: GLenum -- ^ @pname@ of type @GetTexBumpParameterATI@.
  -> Ptr GLfloat -- ^ @param@ pointing to @COMPSIZE(pname)@ elements of type @GLfloat@.
  -> IO ()
glGetTexBumpParameterfvATI = dyn_glGetTexBumpParameterfvATI ptr_glGetTexBumpParameterfvATI

foreign import CALLCONV "dynamic" dyn_glGetTexBumpParameterfvATI
  :: FunPtr (GLenum -> Ptr GLfloat -> IO ())
  ->         GLenum -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glGetTexBumpParameterfvATI #-}
ptr_glGetTexBumpParameterfvATI :: FunPtr (GLenum -> Ptr GLfloat -> IO ())
ptr_glGetTexBumpParameterfvATI = unsafePerformIO $ getCommand "glGetTexBumpParameterfvATI"

-- glGetTexBumpParameterivATI --------------------------------------------------

glGetTexBumpParameterivATI
  :: GLenum -- ^ @pname@ of type @GetTexBumpParameterATI@.
  -> Ptr GLint -- ^ @param@ pointing to @COMPSIZE(pname)@ elements of type @GLint@.
  -> IO ()
glGetTexBumpParameterivATI = dyn_glGetTexBumpParameterivATI ptr_glGetTexBumpParameterivATI

foreign import CALLCONV "dynamic" dyn_glGetTexBumpParameterivATI
  :: FunPtr (GLenum -> Ptr GLint -> IO ())
  ->         GLenum -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glGetTexBumpParameterivATI #-}
ptr_glGetTexBumpParameterivATI :: FunPtr (GLenum -> Ptr GLint -> IO ())
ptr_glGetTexBumpParameterivATI = unsafePerformIO $ getCommand "glGetTexBumpParameterivATI"

-- glGetTexEnvfv ---------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glGetTexEnv.xml OpenGL 2.x>
glGetTexEnvfv
  :: GLenum -- ^ @target@ of type @TextureEnvTarget@.
  -> GLenum -- ^ @pname@ of type @TextureEnvParameter@.
  -> Ptr GLfloat -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLfloat@.
  -> IO ()
glGetTexEnvfv = dyn_glGetTexEnvfv ptr_glGetTexEnvfv

foreign import CALLCONV "dynamic" dyn_glGetTexEnvfv
  :: FunPtr (GLenum -> GLenum -> Ptr GLfloat -> IO ())
  ->         GLenum -> GLenum -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glGetTexEnvfv #-}
ptr_glGetTexEnvfv :: FunPtr (GLenum -> GLenum -> Ptr GLfloat -> IO ())
ptr_glGetTexEnvfv = unsafePerformIO $ getCommand "glGetTexEnvfv"

-- glGetTexEnviv ---------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glGetTexEnv.xml OpenGL 2.x>
glGetTexEnviv
  :: GLenum -- ^ @target@ of type @TextureEnvTarget@.
  -> GLenum -- ^ @pname@ of type @TextureEnvParameter@.
  -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLint@.
  -> IO ()
glGetTexEnviv = dyn_glGetTexEnviv ptr_glGetTexEnviv

foreign import CALLCONV "dynamic" dyn_glGetTexEnviv
  :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
  ->         GLenum -> GLenum -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glGetTexEnviv #-}
ptr_glGetTexEnviv :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
ptr_glGetTexEnviv = unsafePerformIO $ getCommand "glGetTexEnviv"

-- glGetTexEnvxv ---------------------------------------------------------------

glGetTexEnvxv
  :: GLenum -- ^ @target@.
  -> GLenum -- ^ @pname@.
  -> Ptr GLfixed -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLfixed@.
  -> IO ()
glGetTexEnvxv = dyn_glGetTexEnvxv ptr_glGetTexEnvxv

foreign import CALLCONV "dynamic" dyn_glGetTexEnvxv
  :: FunPtr (GLenum -> GLenum -> Ptr GLfixed -> IO ())
  ->         GLenum -> GLenum -> Ptr GLfixed -> IO ()

{-# NOINLINE ptr_glGetTexEnvxv #-}
ptr_glGetTexEnvxv :: FunPtr (GLenum -> GLenum -> Ptr GLfixed -> IO ())
ptr_glGetTexEnvxv = unsafePerformIO $ getCommand "glGetTexEnvxv"

-- glGetTexEnvxvOES ------------------------------------------------------------

glGetTexEnvxvOES
  :: GLenum -- ^ @target@.
  -> GLenum -- ^ @pname@.
  -> Ptr GLfixed -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLfixed@.
  -> IO ()
glGetTexEnvxvOES = dyn_glGetTexEnvxvOES ptr_glGetTexEnvxvOES

foreign import CALLCONV "dynamic" dyn_glGetTexEnvxvOES
  :: FunPtr (GLenum -> GLenum -> Ptr GLfixed -> IO ())
  ->         GLenum -> GLenum -> Ptr GLfixed -> IO ()

{-# NOINLINE ptr_glGetTexEnvxvOES #-}
ptr_glGetTexEnvxvOES :: FunPtr (GLenum -> GLenum -> Ptr GLfixed -> IO ())
ptr_glGetTexEnvxvOES = unsafePerformIO $ getCommand "glGetTexEnvxvOES"

-- glGetTexFilterFuncSGIS ------------------------------------------------------

glGetTexFilterFuncSGIS
  :: GLenum -- ^ @target@ of type @TextureTarget@.
  -> GLenum -- ^ @filter@ of type @TextureFilterSGIS@.
  -> Ptr GLfloat -- ^ @weights@ pointing to @COMPSIZE(target,filter)@ elements of type @GLfloat@.
  -> IO ()
glGetTexFilterFuncSGIS = dyn_glGetTexFilterFuncSGIS ptr_glGetTexFilterFuncSGIS

foreign import CALLCONV "dynamic" dyn_glGetTexFilterFuncSGIS
  :: FunPtr (GLenum -> GLenum -> Ptr GLfloat -> IO ())
  ->         GLenum -> GLenum -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glGetTexFilterFuncSGIS #-}
ptr_glGetTexFilterFuncSGIS :: FunPtr (GLenum -> GLenum -> Ptr GLfloat -> IO ())
ptr_glGetTexFilterFuncSGIS = unsafePerformIO $ getCommand "glGetTexFilterFuncSGIS"

-- glGetTexGendv ---------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glGetTexGen.xml OpenGL 2.x>
glGetTexGendv
  :: GLenum -- ^ @coord@ of type @TextureCoordName@.
  -> GLenum -- ^ @pname@ of type @TextureGenParameter@.
  -> Ptr GLdouble -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLdouble@.
  -> IO ()
glGetTexGendv = dyn_glGetTexGendv ptr_glGetTexGendv

foreign import CALLCONV "dynamic" dyn_glGetTexGendv
  :: FunPtr (GLenum -> GLenum -> Ptr GLdouble -> IO ())
  ->         GLenum -> GLenum -> Ptr GLdouble -> IO ()

{-# NOINLINE ptr_glGetTexGendv #-}
ptr_glGetTexGendv :: FunPtr (GLenum -> GLenum -> Ptr GLdouble -> IO ())
ptr_glGetTexGendv = unsafePerformIO $ getCommand "glGetTexGendv"

-- glGetTexGenfv ---------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glGetTexGen.xml OpenGL 2.x>
glGetTexGenfv
  :: GLenum -- ^ @coord@ of type @TextureCoordName@.
  -> GLenum -- ^ @pname@ of type @TextureGenParameter@.
  -> Ptr GLfloat -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLfloat@.
  -> IO ()
glGetTexGenfv = dyn_glGetTexGenfv ptr_glGetTexGenfv

foreign import CALLCONV "dynamic" dyn_glGetTexGenfv
  :: FunPtr (GLenum -> GLenum -> Ptr GLfloat -> IO ())
  ->         GLenum -> GLenum -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glGetTexGenfv #-}
ptr_glGetTexGenfv :: FunPtr (GLenum -> GLenum -> Ptr GLfloat -> IO ())
ptr_glGetTexGenfv = unsafePerformIO $ getCommand "glGetTexGenfv"

-- glGetTexGenfvOES ------------------------------------------------------------

glGetTexGenfvOES
  :: GLenum -- ^ @coord@.
  -> GLenum -- ^ @pname@.
  -> Ptr GLfloat -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLfloat@.
  -> IO ()
glGetTexGenfvOES = dyn_glGetTexGenfvOES ptr_glGetTexGenfvOES

foreign import CALLCONV "dynamic" dyn_glGetTexGenfvOES
  :: FunPtr (GLenum -> GLenum -> Ptr GLfloat -> IO ())
  ->         GLenum -> GLenum -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glGetTexGenfvOES #-}
ptr_glGetTexGenfvOES :: FunPtr (GLenum -> GLenum -> Ptr GLfloat -> IO ())
ptr_glGetTexGenfvOES = unsafePerformIO $ getCommand "glGetTexGenfvOES"

-- glGetTexGeniv ---------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glGetTexGen.xml OpenGL 2.x>
glGetTexGeniv
  :: GLenum -- ^ @coord@ of type @TextureCoordName@.
  -> GLenum -- ^ @pname@ of type @TextureGenParameter@.
  -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLint@.
  -> IO ()
glGetTexGeniv = dyn_glGetTexGeniv ptr_glGetTexGeniv

foreign import CALLCONV "dynamic" dyn_glGetTexGeniv
  :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
  ->         GLenum -> GLenum -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glGetTexGeniv #-}
ptr_glGetTexGeniv :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
ptr_glGetTexGeniv = unsafePerformIO $ getCommand "glGetTexGeniv"

-- glGetTexGenivOES ------------------------------------------------------------

glGetTexGenivOES
  :: GLenum -- ^ @coord@.
  -> GLenum -- ^ @pname@.
  -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLint@.
  -> IO ()
glGetTexGenivOES = dyn_glGetTexGenivOES ptr_glGetTexGenivOES

foreign import CALLCONV "dynamic" dyn_glGetTexGenivOES
  :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
  ->         GLenum -> GLenum -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glGetTexGenivOES #-}
ptr_glGetTexGenivOES :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
ptr_glGetTexGenivOES = unsafePerformIO $ getCommand "glGetTexGenivOES"

-- glGetTexGenxvOES ------------------------------------------------------------

glGetTexGenxvOES
  :: GLenum -- ^ @coord@.
  -> GLenum -- ^ @pname@.
  -> Ptr GLfixed -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLfixed@.
  -> IO ()
glGetTexGenxvOES = dyn_glGetTexGenxvOES ptr_glGetTexGenxvOES

foreign import CALLCONV "dynamic" dyn_glGetTexGenxvOES
  :: FunPtr (GLenum -> GLenum -> Ptr GLfixed -> IO ())
  ->         GLenum -> GLenum -> Ptr GLfixed -> IO ()

{-# NOINLINE ptr_glGetTexGenxvOES #-}
ptr_glGetTexGenxvOES :: FunPtr (GLenum -> GLenum -> Ptr GLfixed -> IO ())
ptr_glGetTexGenxvOES = unsafePerformIO $ getCommand "glGetTexGenxvOES"

-- glGetTexImage ---------------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glGetTexImage.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glGetTexImage.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glGetTexImage.xhtml OpenGL 4.x>
glGetTexImage
  :: GLenum -- ^ @target@ of type @TextureTarget@.
  -> GLint -- ^ @level@ of type @CheckedInt32@.
  -> GLenum -- ^ @format@ of type @PixelFormat@.
  -> GLenum -- ^ @type@ of type @PixelType@.
  -> Ptr a -- ^ @pixels@ pointing to @COMPSIZE(target,level,format,type)@ elements of type @a@.
  -> IO ()
glGetTexImage = dyn_glGetTexImage ptr_glGetTexImage

foreign import CALLCONV "dynamic" dyn_glGetTexImage
  :: FunPtr (GLenum -> GLint -> GLenum -> GLenum -> Ptr a -> IO ())
  ->         GLenum -> GLint -> GLenum -> GLenum -> Ptr a -> IO ()

{-# NOINLINE ptr_glGetTexImage #-}
ptr_glGetTexImage :: FunPtr (GLenum -> GLint -> GLenum -> GLenum -> Ptr a -> IO ())
ptr_glGetTexImage = unsafePerformIO $ getCommand "glGetTexImage"

-- glGetTexLevelParameterfv ----------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glGetTexLevelParameter.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glGetTexLevelParameter.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glGetTexLevelParameter.xhtml OpenGL 4.x>
glGetTexLevelParameterfv
  :: GLenum -- ^ @target@ of type @TextureTarget@.
  -> GLint -- ^ @level@ of type @CheckedInt32@.
  -> GLenum -- ^ @pname@ of type @GetTextureParameter@.
  -> Ptr GLfloat -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLfloat@.
  -> IO ()
glGetTexLevelParameterfv = dyn_glGetTexLevelParameterfv ptr_glGetTexLevelParameterfv

foreign import CALLCONV "dynamic" dyn_glGetTexLevelParameterfv
  :: FunPtr (GLenum -> GLint -> GLenum -> Ptr GLfloat -> IO ())
  ->         GLenum -> GLint -> GLenum -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glGetTexLevelParameterfv #-}
ptr_glGetTexLevelParameterfv :: FunPtr (GLenum -> GLint -> GLenum -> Ptr GLfloat -> IO ())
ptr_glGetTexLevelParameterfv = unsafePerformIO $ getCommand "glGetTexLevelParameterfv"

-- glGetTexLevelParameteriv ----------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glGetTexLevelParameter.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glGetTexLevelParameter.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glGetTexLevelParameter.xhtml OpenGL 4.x>
glGetTexLevelParameteriv
  :: GLenum -- ^ @target@ of type @TextureTarget@.
  -> GLint -- ^ @level@ of type @CheckedInt32@.
  -> GLenum -- ^ @pname@ of type @GetTextureParameter@.
  -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLint@.
  -> IO ()
glGetTexLevelParameteriv = dyn_glGetTexLevelParameteriv ptr_glGetTexLevelParameteriv

foreign import CALLCONV "dynamic" dyn_glGetTexLevelParameteriv
  :: FunPtr (GLenum -> GLint -> GLenum -> Ptr GLint -> IO ())
  ->         GLenum -> GLint -> GLenum -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glGetTexLevelParameteriv #-}
ptr_glGetTexLevelParameteriv :: FunPtr (GLenum -> GLint -> GLenum -> Ptr GLint -> IO ())
ptr_glGetTexLevelParameteriv = unsafePerformIO $ getCommand "glGetTexLevelParameteriv"

-- glGetTexLevelParameterxvOES -------------------------------------------------

glGetTexLevelParameterxvOES
  :: GLenum -- ^ @target@.
  -> GLint -- ^ @level@.
  -> GLenum -- ^ @pname@.
  -> Ptr GLfixed -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLfixed@.
  -> IO ()
glGetTexLevelParameterxvOES = dyn_glGetTexLevelParameterxvOES ptr_glGetTexLevelParameterxvOES

foreign import CALLCONV "dynamic" dyn_glGetTexLevelParameterxvOES
  :: FunPtr (GLenum -> GLint -> GLenum -> Ptr GLfixed -> IO ())
  ->         GLenum -> GLint -> GLenum -> Ptr GLfixed -> IO ()

{-# NOINLINE ptr_glGetTexLevelParameterxvOES #-}
ptr_glGetTexLevelParameterxvOES :: FunPtr (GLenum -> GLint -> GLenum -> Ptr GLfixed -> IO ())
ptr_glGetTexLevelParameterxvOES = unsafePerformIO $ getCommand "glGetTexLevelParameterxvOES"

-- glGetTexParameterIiv --------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glGetTexParameter.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glGetTexParameter.xhtml OpenGL 4.x>
glGetTexParameterIiv
  :: GLenum -- ^ @target@ of type @TextureTarget@.
  -> GLenum -- ^ @pname@ of type @GetTextureParameter@.
  -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLint@.
  -> IO ()
glGetTexParameterIiv = dyn_glGetTexParameterIiv ptr_glGetTexParameterIiv

foreign import CALLCONV "dynamic" dyn_glGetTexParameterIiv
  :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
  ->         GLenum -> GLenum -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glGetTexParameterIiv #-}
ptr_glGetTexParameterIiv :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
ptr_glGetTexParameterIiv = unsafePerformIO $ getCommand "glGetTexParameterIiv"

-- glGetTexParameterIivEXT -----------------------------------------------------

glGetTexParameterIivEXT
  :: GLenum -- ^ @target@ of type @TextureTarget@.
  -> GLenum -- ^ @pname@ of type @GetTextureParameter@.
  -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLint@.
  -> IO ()
glGetTexParameterIivEXT = dyn_glGetTexParameterIivEXT ptr_glGetTexParameterIivEXT

foreign import CALLCONV "dynamic" dyn_glGetTexParameterIivEXT
  :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
  ->         GLenum -> GLenum -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glGetTexParameterIivEXT #-}
ptr_glGetTexParameterIivEXT :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
ptr_glGetTexParameterIivEXT = unsafePerformIO $ getCommand "glGetTexParameterIivEXT"

-- glGetTexParameterIivOES -----------------------------------------------------

glGetTexParameterIivOES
  :: GLenum -- ^ @target@ of type @TextureTarget@.
  -> GLenum -- ^ @pname@ of type @GetTextureParameter@.
  -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLint@.
  -> IO ()
glGetTexParameterIivOES = dyn_glGetTexParameterIivOES ptr_glGetTexParameterIivOES

foreign import CALLCONV "dynamic" dyn_glGetTexParameterIivOES
  :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
  ->         GLenum -> GLenum -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glGetTexParameterIivOES #-}
ptr_glGetTexParameterIivOES :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
ptr_glGetTexParameterIivOES = unsafePerformIO $ getCommand "glGetTexParameterIivOES"

-- glGetTexParameterIuiv -------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glGetTexParameter.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glGetTexParameter.xhtml OpenGL 4.x>
glGetTexParameterIuiv
  :: GLenum -- ^ @target@ of type @TextureTarget@.
  -> GLenum -- ^ @pname@ of type @GetTextureParameter@.
  -> Ptr GLuint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLuint@.
  -> IO ()
glGetTexParameterIuiv = dyn_glGetTexParameterIuiv ptr_glGetTexParameterIuiv

foreign import CALLCONV "dynamic" dyn_glGetTexParameterIuiv
  :: FunPtr (GLenum -> GLenum -> Ptr GLuint -> IO ())
  ->         GLenum -> GLenum -> Ptr GLuint -> IO ()

{-# NOINLINE ptr_glGetTexParameterIuiv #-}
ptr_glGetTexParameterIuiv :: FunPtr (GLenum -> GLenum -> Ptr GLuint -> IO ())
ptr_glGetTexParameterIuiv = unsafePerformIO $ getCommand "glGetTexParameterIuiv"

-- glGetTexParameterIuivEXT ----------------------------------------------------

glGetTexParameterIuivEXT
  :: GLenum -- ^ @target@ of type @TextureTarget@.
  -> GLenum -- ^ @pname@ of type @GetTextureParameter@.
  -> Ptr GLuint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLuint@.
  -> IO ()
glGetTexParameterIuivEXT = dyn_glGetTexParameterIuivEXT ptr_glGetTexParameterIuivEXT

foreign import CALLCONV "dynamic" dyn_glGetTexParameterIuivEXT
  :: FunPtr (GLenum -> GLenum -> Ptr GLuint -> IO ())
  ->         GLenum -> GLenum -> Ptr GLuint -> IO ()

{-# NOINLINE ptr_glGetTexParameterIuivEXT #-}
ptr_glGetTexParameterIuivEXT :: FunPtr (GLenum -> GLenum -> Ptr GLuint -> IO ())
ptr_glGetTexParameterIuivEXT = unsafePerformIO $ getCommand "glGetTexParameterIuivEXT"

-- glGetTexParameterIuivOES ----------------------------------------------------

glGetTexParameterIuivOES
  :: GLenum -- ^ @target@ of type @TextureTarget@.
  -> GLenum -- ^ @pname@ of type @GetTextureParameter@.
  -> Ptr GLuint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLuint@.
  -> IO ()
glGetTexParameterIuivOES = dyn_glGetTexParameterIuivOES ptr_glGetTexParameterIuivOES

foreign import CALLCONV "dynamic" dyn_glGetTexParameterIuivOES
  :: FunPtr (GLenum -> GLenum -> Ptr GLuint -> IO ())
  ->         GLenum -> GLenum -> Ptr GLuint -> IO ()

{-# NOINLINE ptr_glGetTexParameterIuivOES #-}
ptr_glGetTexParameterIuivOES :: FunPtr (GLenum -> GLenum -> Ptr GLuint -> IO ())
ptr_glGetTexParameterIuivOES = unsafePerformIO $ getCommand "glGetTexParameterIuivOES"

-- glGetTexParameterPointervAPPLE ----------------------------------------------

glGetTexParameterPointervAPPLE
  :: GLenum -- ^ @target@.
  -> GLenum -- ^ @pname@.
  -> Ptr (Ptr a) -- ^ @params@ pointing to @1@ elements of type @Ptr a@.
  -> IO ()
glGetTexParameterPointervAPPLE = dyn_glGetTexParameterPointervAPPLE ptr_glGetTexParameterPointervAPPLE

foreign import CALLCONV "dynamic" dyn_glGetTexParameterPointervAPPLE
  :: FunPtr (GLenum -> GLenum -> Ptr (Ptr a) -> IO ())
  ->         GLenum -> GLenum -> Ptr (Ptr a) -> IO ()

{-# NOINLINE ptr_glGetTexParameterPointervAPPLE #-}
ptr_glGetTexParameterPointervAPPLE :: FunPtr (GLenum -> GLenum -> Ptr (Ptr a) -> IO ())
ptr_glGetTexParameterPointervAPPLE = unsafePerformIO $ getCommand "glGetTexParameterPointervAPPLE"

-- glGetTexParameterfv ---------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glGetTexParameter.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glGetTexParameter.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glGetTexParameter.xhtml OpenGL 4.x>
glGetTexParameterfv
  :: GLenum -- ^ @target@ of type @TextureTarget@.
  -> GLenum -- ^ @pname@ of type @GetTextureParameter@.
  -> Ptr GLfloat -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLfloat@.
  -> IO ()
glGetTexParameterfv = dyn_glGetTexParameterfv ptr_glGetTexParameterfv

foreign import CALLCONV "dynamic" dyn_glGetTexParameterfv
  :: FunPtr (GLenum -> GLenum -> Ptr GLfloat -> IO ())
  ->         GLenum -> GLenum -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glGetTexParameterfv #-}
ptr_glGetTexParameterfv :: FunPtr (GLenum -> GLenum -> Ptr GLfloat -> IO ())
ptr_glGetTexParameterfv = unsafePerformIO $ getCommand "glGetTexParameterfv"

-- glGetTexParameteriv ---------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glGetTexParameter.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glGetTexParameter.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glGetTexParameter.xhtml OpenGL 4.x>
glGetTexParameteriv
  :: GLenum -- ^ @target@ of type @TextureTarget@.
  -> GLenum -- ^ @pname@ of type @GetTextureParameter@.
  -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLint@.
  -> IO ()
glGetTexParameteriv = dyn_glGetTexParameteriv ptr_glGetTexParameteriv

foreign import CALLCONV "dynamic" dyn_glGetTexParameteriv
  :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
  ->         GLenum -> GLenum -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glGetTexParameteriv #-}
ptr_glGetTexParameteriv :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
ptr_glGetTexParameteriv = unsafePerformIO $ getCommand "glGetTexParameteriv"

-- glGetTexParameterxv ---------------------------------------------------------

glGetTexParameterxv
  :: GLenum -- ^ @target@.
  -> GLenum -- ^ @pname@.
  -> Ptr GLfixed -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLfixed@.
  -> IO ()
glGetTexParameterxv = dyn_glGetTexParameterxv ptr_glGetTexParameterxv

foreign import CALLCONV "dynamic" dyn_glGetTexParameterxv
  :: FunPtr (GLenum -> GLenum -> Ptr GLfixed -> IO ())
  ->         GLenum -> GLenum -> Ptr GLfixed -> IO ()

{-# NOINLINE ptr_glGetTexParameterxv #-}
ptr_glGetTexParameterxv :: FunPtr (GLenum -> GLenum -> Ptr GLfixed -> IO ())
ptr_glGetTexParameterxv = unsafePerformIO $ getCommand "glGetTexParameterxv"

-- glGetTexParameterxvOES ------------------------------------------------------

glGetTexParameterxvOES
  :: GLenum -- ^ @target@.
  -> GLenum -- ^ @pname@.
  -> Ptr GLfixed -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLfixed@.
  -> IO ()
glGetTexParameterxvOES = dyn_glGetTexParameterxvOES ptr_glGetTexParameterxvOES

foreign import CALLCONV "dynamic" dyn_glGetTexParameterxvOES
  :: FunPtr (GLenum -> GLenum -> Ptr GLfixed -> IO ())
  ->         GLenum -> GLenum -> Ptr GLfixed -> IO ()

{-# NOINLINE ptr_glGetTexParameterxvOES #-}
ptr_glGetTexParameterxvOES :: FunPtr (GLenum -> GLenum -> Ptr GLfixed -> IO ())
ptr_glGetTexParameterxvOES = unsafePerformIO $ getCommand "glGetTexParameterxvOES"

-- glGetTextureHandleARB -------------------------------------------------------

glGetTextureHandleARB
  :: GLuint -- ^ @texture@.
  -> IO GLuint64
glGetTextureHandleARB = dyn_glGetTextureHandleARB ptr_glGetTextureHandleARB

foreign import CALLCONV "dynamic" dyn_glGetTextureHandleARB
  :: FunPtr (GLuint -> IO GLuint64)
  ->         GLuint -> IO GLuint64

{-# NOINLINE ptr_glGetTextureHandleARB #-}
ptr_glGetTextureHandleARB :: FunPtr (GLuint -> IO GLuint64)
ptr_glGetTextureHandleARB = unsafePerformIO $ getCommand "glGetTextureHandleARB"

-- glGetTextureHandleNV --------------------------------------------------------

glGetTextureHandleNV
  :: GLuint -- ^ @texture@.
  -> IO GLuint64
glGetTextureHandleNV = dyn_glGetTextureHandleNV ptr_glGetTextureHandleNV

foreign import CALLCONV "dynamic" dyn_glGetTextureHandleNV
  :: FunPtr (GLuint -> IO GLuint64)
  ->         GLuint -> IO GLuint64

{-# NOINLINE ptr_glGetTextureHandleNV #-}
ptr_glGetTextureHandleNV :: FunPtr (GLuint -> IO GLuint64)
ptr_glGetTextureHandleNV = unsafePerformIO $ getCommand "glGetTextureHandleNV"

-- glGetTextureImage -----------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glGetTexImage.xhtml OpenGL 4.x>
glGetTextureImage
  :: GLuint -- ^ @texture@.
  -> GLint -- ^ @level@.
  -> GLenum -- ^ @format@.
  -> GLenum -- ^ @type@.
  -> GLsizei -- ^ @bufSize@.
  -> Ptr a -- ^ @pixels@.
  -> IO ()
glGetTextureImage = dyn_glGetTextureImage ptr_glGetTextureImage

foreign import CALLCONV "dynamic" dyn_glGetTextureImage
  :: FunPtr (GLuint -> GLint -> GLenum -> GLenum -> GLsizei -> Ptr a -> IO ())
  ->         GLuint -> GLint -> GLenum -> GLenum -> GLsizei -> Ptr a -> IO ()

{-# NOINLINE ptr_glGetTextureImage #-}
ptr_glGetTextureImage :: FunPtr (GLuint -> GLint -> GLenum -> GLenum -> GLsizei -> Ptr a -> IO ())
ptr_glGetTextureImage = unsafePerformIO $ getCommand "glGetTextureImage"

-- glGetTextureImageEXT --------------------------------------------------------

glGetTextureImageEXT
  :: GLuint -- ^ @texture@ of type @Texture@.
  -> GLenum -- ^ @target@ of type @TextureTarget@.
  -> GLint -- ^ @level@ of type @CheckedInt32@.
  -> GLenum -- ^ @format@ of type @PixelFormat@.
  -> GLenum -- ^ @type@ of type @PixelType@.
  -> Ptr a -- ^ @pixels@ pointing to @COMPSIZE(target,level,format,type)@ elements of type @a@.
  -> IO ()
glGetTextureImageEXT = dyn_glGetTextureImageEXT ptr_glGetTextureImageEXT

foreign import CALLCONV "dynamic" dyn_glGetTextureImageEXT
  :: FunPtr (GLuint -> GLenum -> GLint -> GLenum -> GLenum -> Ptr a -> IO ())
  ->         GLuint -> GLenum -> GLint -> GLenum -> GLenum -> Ptr a -> IO ()

{-# NOINLINE ptr_glGetTextureImageEXT #-}
ptr_glGetTextureImageEXT :: FunPtr (GLuint -> GLenum -> GLint -> GLenum -> GLenum -> Ptr a -> IO ())
ptr_glGetTextureImageEXT = unsafePerformIO $ getCommand "glGetTextureImageEXT"

-- glGetTextureLevelParameterfv ------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glGetTexLevelParameter.xhtml OpenGL 4.x>
glGetTextureLevelParameterfv
  :: GLuint -- ^ @texture@.
  -> GLint -- ^ @level@.
  -> GLenum -- ^ @pname@.
  -> Ptr GLfloat -- ^ @params@.
  -> IO ()
glGetTextureLevelParameterfv = dyn_glGetTextureLevelParameterfv ptr_glGetTextureLevelParameterfv

foreign import CALLCONV "dynamic" dyn_glGetTextureLevelParameterfv
  :: FunPtr (GLuint -> GLint -> GLenum -> Ptr GLfloat -> IO ())
  ->         GLuint -> GLint -> GLenum -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glGetTextureLevelParameterfv #-}
ptr_glGetTextureLevelParameterfv :: FunPtr (GLuint -> GLint -> GLenum -> Ptr GLfloat -> IO ())
ptr_glGetTextureLevelParameterfv = unsafePerformIO $ getCommand "glGetTextureLevelParameterfv"

-- glGetTextureLevelParameterfvEXT ---------------------------------------------

glGetTextureLevelParameterfvEXT
  :: GLuint -- ^ @texture@ of type @Texture@.
  -> GLenum -- ^ @target@ of type @TextureTarget@.
  -> GLint -- ^ @level@ of type @CheckedInt32@.
  -> GLenum -- ^ @pname@ of type @GetTextureParameter@.
  -> Ptr GLfloat -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLfloat@.
  -> IO ()
glGetTextureLevelParameterfvEXT = dyn_glGetTextureLevelParameterfvEXT ptr_glGetTextureLevelParameterfvEXT

foreign import CALLCONV "dynamic" dyn_glGetTextureLevelParameterfvEXT
  :: FunPtr (GLuint -> GLenum -> GLint -> GLenum -> Ptr GLfloat -> IO ())
  ->         GLuint -> GLenum -> GLint -> GLenum -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glGetTextureLevelParameterfvEXT #-}
ptr_glGetTextureLevelParameterfvEXT :: FunPtr (GLuint -> GLenum -> GLint -> GLenum -> Ptr GLfloat -> IO ())
ptr_glGetTextureLevelParameterfvEXT = unsafePerformIO $ getCommand "glGetTextureLevelParameterfvEXT"

-- glGetTextureLevelParameteriv ------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glGetTexLevelParameter.xhtml OpenGL 4.x>
glGetTextureLevelParameteriv
  :: GLuint -- ^ @texture@.
  -> GLint -- ^ @level@.
  -> GLenum -- ^ @pname@.
  -> Ptr GLint -- ^ @params@.
  -> IO ()
glGetTextureLevelParameteriv = dyn_glGetTextureLevelParameteriv ptr_glGetTextureLevelParameteriv

foreign import CALLCONV "dynamic" dyn_glGetTextureLevelParameteriv
  :: FunPtr (GLuint -> GLint -> GLenum -> Ptr GLint -> IO ())
  ->         GLuint -> GLint -> GLenum -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glGetTextureLevelParameteriv #-}
ptr_glGetTextureLevelParameteriv :: FunPtr (GLuint -> GLint -> GLenum -> Ptr GLint -> IO ())
ptr_glGetTextureLevelParameteriv = unsafePerformIO $ getCommand "glGetTextureLevelParameteriv"

-- glGetTextureLevelParameterivEXT ---------------------------------------------

glGetTextureLevelParameterivEXT
  :: GLuint -- ^ @texture@ of type @Texture@.
  -> GLenum -- ^ @target@ of type @TextureTarget@.
  -> GLint -- ^ @level@ of type @CheckedInt32@.
  -> GLenum -- ^ @pname@ of type @GetTextureParameter@.
  -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLint@.
  -> IO ()
glGetTextureLevelParameterivEXT = dyn_glGetTextureLevelParameterivEXT ptr_glGetTextureLevelParameterivEXT

foreign import CALLCONV "dynamic" dyn_glGetTextureLevelParameterivEXT
  :: FunPtr (GLuint -> GLenum -> GLint -> GLenum -> Ptr GLint -> IO ())
  ->         GLuint -> GLenum -> GLint -> GLenum -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glGetTextureLevelParameterivEXT #-}
ptr_glGetTextureLevelParameterivEXT :: FunPtr (GLuint -> GLenum -> GLint -> GLenum -> Ptr GLint -> IO ())
ptr_glGetTextureLevelParameterivEXT = unsafePerformIO $ getCommand "glGetTextureLevelParameterivEXT"

-- glGetTextureParameterIiv ----------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glGetTexParameter.xhtml OpenGL 4.x>
glGetTextureParameterIiv
  :: GLuint -- ^ @texture@.
  -> GLenum -- ^ @pname@.
  -> Ptr GLint -- ^ @params@.
  -> IO ()
glGetTextureParameterIiv = dyn_glGetTextureParameterIiv ptr_glGetTextureParameterIiv

foreign import CALLCONV "dynamic" dyn_glGetTextureParameterIiv
  :: FunPtr (GLuint -> GLenum -> Ptr GLint -> IO ())
  ->         GLuint -> GLenum -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glGetTextureParameterIiv #-}
ptr_glGetTextureParameterIiv :: FunPtr (GLuint -> GLenum -> Ptr GLint -> IO ())
ptr_glGetTextureParameterIiv = unsafePerformIO $ getCommand "glGetTextureParameterIiv"

-- glGetTextureParameterIivEXT -------------------------------------------------

glGetTextureParameterIivEXT
  :: GLuint -- ^ @texture@ of type @Texture@.
  -> GLenum -- ^ @target@ of type @TextureTarget@.
  -> GLenum -- ^ @pname@ of type @GetTextureParameter@.
  -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLint@.
  -> IO ()
glGetTextureParameterIivEXT = dyn_glGetTextureParameterIivEXT ptr_glGetTextureParameterIivEXT

foreign import CALLCONV "dynamic" dyn_glGetTextureParameterIivEXT
  :: FunPtr (GLuint -> GLenum -> GLenum -> Ptr GLint -> IO ())
  ->         GLuint -> GLenum -> GLenum -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glGetTextureParameterIivEXT #-}
ptr_glGetTextureParameterIivEXT :: FunPtr (GLuint -> GLenum -> GLenum -> Ptr GLint -> IO ())
ptr_glGetTextureParameterIivEXT = unsafePerformIO $ getCommand "glGetTextureParameterIivEXT"

-- glGetTextureParameterIuiv ---------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glGetTexParameter.xhtml OpenGL 4.x>
glGetTextureParameterIuiv
  :: GLuint -- ^ @texture@.
  -> GLenum -- ^ @pname@.
  -> Ptr GLuint -- ^ @params@.
  -> IO ()
glGetTextureParameterIuiv = dyn_glGetTextureParameterIuiv ptr_glGetTextureParameterIuiv

foreign import CALLCONV "dynamic" dyn_glGetTextureParameterIuiv
  :: FunPtr (GLuint -> GLenum -> Ptr GLuint -> IO ())
  ->         GLuint -> GLenum -> Ptr GLuint -> IO ()

{-# NOINLINE ptr_glGetTextureParameterIuiv #-}
ptr_glGetTextureParameterIuiv :: FunPtr (GLuint -> GLenum -> Ptr GLuint -> IO ())
ptr_glGetTextureParameterIuiv = unsafePerformIO $ getCommand "glGetTextureParameterIuiv"

-- glGetTextureParameterIuivEXT ------------------------------------------------

glGetTextureParameterIuivEXT
  :: GLuint -- ^ @texture@ of type @Texture@.
  -> GLenum -- ^ @target@ of type @TextureTarget@.
  -> GLenum -- ^ @pname@ of type @GetTextureParameter@.
  -> Ptr GLuint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLuint@.
  -> IO ()
glGetTextureParameterIuivEXT = dyn_glGetTextureParameterIuivEXT ptr_glGetTextureParameterIuivEXT

foreign import CALLCONV "dynamic" dyn_glGetTextureParameterIuivEXT
  :: FunPtr (GLuint -> GLenum -> GLenum -> Ptr GLuint -> IO ())
  ->         GLuint -> GLenum -> GLenum -> Ptr GLuint -> IO ()

{-# NOINLINE ptr_glGetTextureParameterIuivEXT #-}
ptr_glGetTextureParameterIuivEXT :: FunPtr (GLuint -> GLenum -> GLenum -> Ptr GLuint -> IO ())
ptr_glGetTextureParameterIuivEXT = unsafePerformIO $ getCommand "glGetTextureParameterIuivEXT"

-- glGetTextureParameterfv -----------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glGetTexParameter.xhtml OpenGL 4.x>
glGetTextureParameterfv
  :: GLuint -- ^ @texture@.
  -> GLenum -- ^ @pname@.
  -> Ptr GLfloat -- ^ @params@.
  -> IO ()
glGetTextureParameterfv = dyn_glGetTextureParameterfv ptr_glGetTextureParameterfv

foreign import CALLCONV "dynamic" dyn_glGetTextureParameterfv
  :: FunPtr (GLuint -> GLenum -> Ptr GLfloat -> IO ())
  ->         GLuint -> GLenum -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glGetTextureParameterfv #-}
ptr_glGetTextureParameterfv :: FunPtr (GLuint -> GLenum -> Ptr GLfloat -> IO ())
ptr_glGetTextureParameterfv = unsafePerformIO $ getCommand "glGetTextureParameterfv"

-- glGetTextureParameterfvEXT --------------------------------------------------

glGetTextureParameterfvEXT
  :: GLuint -- ^ @texture@ of type @Texture@.
  -> GLenum -- ^ @target@ of type @TextureTarget@.
  -> GLenum -- ^ @pname@ of type @GetTextureParameter@.
  -> Ptr GLfloat -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLfloat@.
  -> IO ()
glGetTextureParameterfvEXT = dyn_glGetTextureParameterfvEXT ptr_glGetTextureParameterfvEXT

foreign import CALLCONV "dynamic" dyn_glGetTextureParameterfvEXT
  :: FunPtr (GLuint -> GLenum -> GLenum -> Ptr GLfloat -> IO ())
  ->         GLuint -> GLenum -> GLenum -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glGetTextureParameterfvEXT #-}
ptr_glGetTextureParameterfvEXT :: FunPtr (GLuint -> GLenum -> GLenum -> Ptr GLfloat -> IO ())
ptr_glGetTextureParameterfvEXT = unsafePerformIO $ getCommand "glGetTextureParameterfvEXT"

-- glGetTextureParameteriv -----------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glGetTexParameter.xhtml OpenGL 4.x>
glGetTextureParameteriv
  :: GLuint -- ^ @texture@.
  -> GLenum -- ^ @pname@.
  -> Ptr GLint -- ^ @params@.
  -> IO ()
glGetTextureParameteriv = dyn_glGetTextureParameteriv ptr_glGetTextureParameteriv

foreign import CALLCONV "dynamic" dyn_glGetTextureParameteriv
  :: FunPtr (GLuint -> GLenum -> Ptr GLint -> IO ())
  ->         GLuint -> GLenum -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glGetTextureParameteriv #-}
ptr_glGetTextureParameteriv :: FunPtr (GLuint -> GLenum -> Ptr GLint -> IO ())
ptr_glGetTextureParameteriv = unsafePerformIO $ getCommand "glGetTextureParameteriv"

-- glGetTextureParameterivEXT --------------------------------------------------

glGetTextureParameterivEXT
  :: GLuint -- ^ @texture@ of type @Texture@.
  -> GLenum -- ^ @target@ of type @TextureTarget@.
  -> GLenum -- ^ @pname@ of type @GetTextureParameter@.
  -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLint@.
  -> IO ()
glGetTextureParameterivEXT = dyn_glGetTextureParameterivEXT ptr_glGetTextureParameterivEXT

foreign import CALLCONV "dynamic" dyn_glGetTextureParameterivEXT
  :: FunPtr (GLuint -> GLenum -> GLenum -> Ptr GLint -> IO ())
  ->         GLuint -> GLenum -> GLenum -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glGetTextureParameterivEXT #-}
ptr_glGetTextureParameterivEXT :: FunPtr (GLuint -> GLenum -> GLenum -> Ptr GLint -> IO ())
ptr_glGetTextureParameterivEXT = unsafePerformIO $ getCommand "glGetTextureParameterivEXT"

-- glGetTextureSamplerHandleARB ------------------------------------------------

glGetTextureSamplerHandleARB
  :: GLuint -- ^ @texture@.
  -> GLuint -- ^ @sampler@.
  -> IO GLuint64
glGetTextureSamplerHandleARB = dyn_glGetTextureSamplerHandleARB ptr_glGetTextureSamplerHandleARB

foreign import CALLCONV "dynamic" dyn_glGetTextureSamplerHandleARB
  :: FunPtr (GLuint -> GLuint -> IO GLuint64)
  ->         GLuint -> GLuint -> IO GLuint64

{-# NOINLINE ptr_glGetTextureSamplerHandleARB #-}
ptr_glGetTextureSamplerHandleARB :: FunPtr (GLuint -> GLuint -> IO GLuint64)
ptr_glGetTextureSamplerHandleARB = unsafePerformIO $ getCommand "glGetTextureSamplerHandleARB"

-- glGetTextureSamplerHandleNV -------------------------------------------------

glGetTextureSamplerHandleNV
  :: GLuint -- ^ @texture@.
  -> GLuint -- ^ @sampler@.
  -> IO GLuint64
glGetTextureSamplerHandleNV = dyn_glGetTextureSamplerHandleNV ptr_glGetTextureSamplerHandleNV

foreign import CALLCONV "dynamic" dyn_glGetTextureSamplerHandleNV
  :: FunPtr (GLuint -> GLuint -> IO GLuint64)
  ->         GLuint -> GLuint -> IO GLuint64

{-# NOINLINE ptr_glGetTextureSamplerHandleNV #-}
ptr_glGetTextureSamplerHandleNV :: FunPtr (GLuint -> GLuint -> IO GLuint64)
ptr_glGetTextureSamplerHandleNV = unsafePerformIO $ getCommand "glGetTextureSamplerHandleNV"

-- glGetTextureSubImage --------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glGetTextureSubImage.xhtml OpenGL 4.x>
glGetTextureSubImage
  :: GLuint -- ^ @texture@.
  -> GLint -- ^ @level@.
  -> GLint -- ^ @xoffset@.
  -> GLint -- ^ @yoffset@.
  -> GLint -- ^ @zoffset@.
  -> GLsizei -- ^ @width@.
  -> GLsizei -- ^ @height@.
  -> GLsizei -- ^ @depth@.
  -> GLenum -- ^ @format@.
  -> GLenum -- ^ @type@.
  -> GLsizei -- ^ @bufSize@.
  -> Ptr a -- ^ @pixels@.
  -> IO ()
glGetTextureSubImage = dyn_glGetTextureSubImage ptr_glGetTextureSubImage

foreign import CALLCONV "dynamic" dyn_glGetTextureSubImage
  :: FunPtr (GLuint -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLenum -> GLenum -> GLsizei -> Ptr a -> IO ())
  ->         GLuint -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLenum -> GLenum -> GLsizei -> Ptr a -> IO ()

{-# NOINLINE ptr_glGetTextureSubImage #-}
ptr_glGetTextureSubImage :: FunPtr (GLuint -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLenum -> GLenum -> GLsizei -> Ptr a -> IO ())
ptr_glGetTextureSubImage = unsafePerformIO $ getCommand "glGetTextureSubImage"

-- glGetTrackMatrixivNV --------------------------------------------------------

glGetTrackMatrixivNV
  :: GLenum -- ^ @target@ of type @VertexAttribEnumNV@.
  -> GLuint -- ^ @address@.
  -> GLenum -- ^ @pname@ of type @VertexAttribEnumNV@.
  -> Ptr GLint -- ^ @params@ pointing to @1@ elements of type @GLint@.
  -> IO ()
glGetTrackMatrixivNV = dyn_glGetTrackMatrixivNV ptr_glGetTrackMatrixivNV

foreign import CALLCONV "dynamic" dyn_glGetTrackMatrixivNV
  :: FunPtr (GLenum -> GLuint -> GLenum -> Ptr GLint -> IO ())
  ->         GLenum -> GLuint -> GLenum -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glGetTrackMatrixivNV #-}
ptr_glGetTrackMatrixivNV :: FunPtr (GLenum -> GLuint -> GLenum -> Ptr GLint -> IO ())
ptr_glGetTrackMatrixivNV = unsafePerformIO $ getCommand "glGetTrackMatrixivNV"

-- glGetTransformFeedbackVarying -----------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glGetTransformFeedbackVarying.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glGetTransformFeedbackVarying.xhtml OpenGL 4.x>
glGetTransformFeedbackVarying
  :: GLuint -- ^ @program@.
  -> GLuint -- ^ @index@.
  -> GLsizei -- ^ @bufSize@.
  -> Ptr GLsizei -- ^ @length@ pointing to @1@ elements of type @GLsizei@.
  -> Ptr GLsizei -- ^ @size@ pointing to @1@ elements of type @GLsizei@.
  -> Ptr GLenum -- ^ @type@ pointing to @1@ elements of type @GLenum@.
  -> Ptr GLchar -- ^ @name@ pointing to @bufSize@ elements of type @GLchar@.
  -> IO ()
glGetTransformFeedbackVarying = dyn_glGetTransformFeedbackVarying ptr_glGetTransformFeedbackVarying

foreign import CALLCONV "dynamic" dyn_glGetTransformFeedbackVarying
  :: FunPtr (GLuint -> GLuint -> GLsizei -> Ptr GLsizei -> Ptr GLsizei -> Ptr GLenum -> Ptr GLchar -> IO ())
  ->         GLuint -> GLuint -> GLsizei -> Ptr GLsizei -> Ptr GLsizei -> Ptr GLenum -> Ptr GLchar -> IO ()

{-# NOINLINE ptr_glGetTransformFeedbackVarying #-}
ptr_glGetTransformFeedbackVarying :: FunPtr (GLuint -> GLuint -> GLsizei -> Ptr GLsizei -> Ptr GLsizei -> Ptr GLenum -> Ptr GLchar -> IO ())
ptr_glGetTransformFeedbackVarying = unsafePerformIO $ getCommand "glGetTransformFeedbackVarying"

-- glGetTransformFeedbackVaryingEXT --------------------------------------------

glGetTransformFeedbackVaryingEXT
  :: GLuint -- ^ @program@.
  -> GLuint -- ^ @index@.
  -> GLsizei -- ^ @bufSize@.
  -> Ptr GLsizei -- ^ @length@ pointing to @1@ elements of type @GLsizei@.
  -> Ptr GLsizei -- ^ @size@ pointing to @1@ elements of type @GLsizei@.
  -> Ptr GLenum -- ^ @type@ pointing to @1@ elements of type @GLenum@.
  -> Ptr GLchar -- ^ @name@ pointing to @bufSize@ elements of type @GLchar@.
  -> IO ()
glGetTransformFeedbackVaryingEXT = dyn_glGetTransformFeedbackVaryingEXT ptr_glGetTransformFeedbackVaryingEXT

foreign import CALLCONV "dynamic" dyn_glGetTransformFeedbackVaryingEXT
  :: FunPtr (GLuint -> GLuint -> GLsizei -> Ptr GLsizei -> Ptr GLsizei -> Ptr GLenum -> Ptr GLchar -> IO ())
  ->         GLuint -> GLuint -> GLsizei -> Ptr GLsizei -> Ptr GLsizei -> Ptr GLenum -> Ptr GLchar -> IO ()

{-# NOINLINE ptr_glGetTransformFeedbackVaryingEXT #-}
ptr_glGetTransformFeedbackVaryingEXT :: FunPtr (GLuint -> GLuint -> GLsizei -> Ptr GLsizei -> Ptr GLsizei -> Ptr GLenum -> Ptr GLchar -> IO ())
ptr_glGetTransformFeedbackVaryingEXT = unsafePerformIO $ getCommand "glGetTransformFeedbackVaryingEXT"

-- glGetTransformFeedbackVaryingNV ---------------------------------------------

glGetTransformFeedbackVaryingNV
  :: GLuint -- ^ @program@.
  -> GLuint -- ^ @index@.
  -> Ptr GLint -- ^ @location@ pointing to @1@ elements of type @GLint@.
  -> IO ()
glGetTransformFeedbackVaryingNV = dyn_glGetTransformFeedbackVaryingNV ptr_glGetTransformFeedbackVaryingNV

foreign import CALLCONV "dynamic" dyn_glGetTransformFeedbackVaryingNV
  :: FunPtr (GLuint -> GLuint -> Ptr GLint -> IO ())
  ->         GLuint -> GLuint -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glGetTransformFeedbackVaryingNV #-}
ptr_glGetTransformFeedbackVaryingNV :: FunPtr (GLuint -> GLuint -> Ptr GLint -> IO ())
ptr_glGetTransformFeedbackVaryingNV = unsafePerformIO $ getCommand "glGetTransformFeedbackVaryingNV"

-- glGetTransformFeedbacki64_v -------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glGetTransformFeedback.xhtml OpenGL 4.x>
glGetTransformFeedbacki64_v
  :: GLuint -- ^ @xfb@.
  -> GLenum -- ^ @pname@.
  -> GLuint -- ^ @index@.
  -> Ptr GLint64 -- ^ @param@.
  -> IO ()
glGetTransformFeedbacki64_v = dyn_glGetTransformFeedbacki64_v ptr_glGetTransformFeedbacki64_v

foreign import CALLCONV "dynamic" dyn_glGetTransformFeedbacki64_v
  :: FunPtr (GLuint -> GLenum -> GLuint -> Ptr GLint64 -> IO ())
  ->         GLuint -> GLenum -> GLuint -> Ptr GLint64 -> IO ()

{-# NOINLINE ptr_glGetTransformFeedbacki64_v #-}
ptr_glGetTransformFeedbacki64_v :: FunPtr (GLuint -> GLenum -> GLuint -> Ptr GLint64 -> IO ())
ptr_glGetTransformFeedbacki64_v = unsafePerformIO $ getCommand "glGetTransformFeedbacki64_v"

-- glGetTransformFeedbacki_v ---------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glGetTransformFeedback.xhtml OpenGL 4.x>
glGetTransformFeedbacki_v
  :: GLuint -- ^ @xfb@.
  -> GLenum -- ^ @pname@.
  -> GLuint -- ^ @index@.
  -> Ptr GLint -- ^ @param@.
  -> IO ()
glGetTransformFeedbacki_v = dyn_glGetTransformFeedbacki_v ptr_glGetTransformFeedbacki_v

foreign import CALLCONV "dynamic" dyn_glGetTransformFeedbacki_v
  :: FunPtr (GLuint -> GLenum -> GLuint -> Ptr GLint -> IO ())
  ->         GLuint -> GLenum -> GLuint -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glGetTransformFeedbacki_v #-}
ptr_glGetTransformFeedbacki_v :: FunPtr (GLuint -> GLenum -> GLuint -> Ptr GLint -> IO ())
ptr_glGetTransformFeedbacki_v = unsafePerformIO $ getCommand "glGetTransformFeedbacki_v"

-- glGetTransformFeedbackiv ----------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glGetTransformFeedback.xhtml OpenGL 4.x>
glGetTransformFeedbackiv
  :: GLuint -- ^ @xfb@.
  -> GLenum -- ^ @pname@.
  -> Ptr GLint -- ^ @param@.
  -> IO ()
glGetTransformFeedbackiv = dyn_glGetTransformFeedbackiv ptr_glGetTransformFeedbackiv

foreign import CALLCONV "dynamic" dyn_glGetTransformFeedbackiv
  :: FunPtr (GLuint -> GLenum -> Ptr GLint -> IO ())
  ->         GLuint -> GLenum -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glGetTransformFeedbackiv #-}
ptr_glGetTransformFeedbackiv :: FunPtr (GLuint -> GLenum -> Ptr GLint -> IO ())
ptr_glGetTransformFeedbackiv = unsafePerformIO $ getCommand "glGetTransformFeedbackiv"

-- glGetTranslatedShaderSourceANGLE --------------------------------------------

glGetTranslatedShaderSourceANGLE
  :: GLuint -- ^ @shader@.
  -> GLsizei -- ^ @bufsize@.
  -> Ptr GLsizei -- ^ @length@ pointing to @1@ elements of type @GLsizei@.
  -> Ptr GLchar -- ^ @source@.
  -> IO ()
glGetTranslatedShaderSourceANGLE = dyn_glGetTranslatedShaderSourceANGLE ptr_glGetTranslatedShaderSourceANGLE

foreign import CALLCONV "dynamic" dyn_glGetTranslatedShaderSourceANGLE
  :: FunPtr (GLuint -> GLsizei -> Ptr GLsizei -> Ptr GLchar -> IO ())
  ->         GLuint -> GLsizei -> Ptr GLsizei -> Ptr GLchar -> IO ()

{-# NOINLINE ptr_glGetTranslatedShaderSourceANGLE #-}
ptr_glGetTranslatedShaderSourceANGLE :: FunPtr (GLuint -> GLsizei -> Ptr GLsizei -> Ptr GLchar -> IO ())
ptr_glGetTranslatedShaderSourceANGLE = unsafePerformIO $ getCommand "glGetTranslatedShaderSourceANGLE"

-- glGetUniformBlockIndex ------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glGetUniformBlockIndex.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glGetUniformBlockIndex.xhtml OpenGL 4.x>
glGetUniformBlockIndex
  :: GLuint -- ^ @program@.
  -> Ptr GLchar -- ^ @uniformBlockName@ pointing to @COMPSIZE()@ elements of type @GLchar@.
  -> IO GLuint
glGetUniformBlockIndex = dyn_glGetUniformBlockIndex ptr_glGetUniformBlockIndex

foreign import CALLCONV "dynamic" dyn_glGetUniformBlockIndex
  :: FunPtr (GLuint -> Ptr GLchar -> IO GLuint)
  ->         GLuint -> Ptr GLchar -> IO GLuint

{-# NOINLINE ptr_glGetUniformBlockIndex #-}
ptr_glGetUniformBlockIndex :: FunPtr (GLuint -> Ptr GLchar -> IO GLuint)
ptr_glGetUniformBlockIndex = unsafePerformIO $ getCommand "glGetUniformBlockIndex"

-- glGetUniformBufferSizeEXT ---------------------------------------------------

glGetUniformBufferSizeEXT
  :: GLuint -- ^ @program@.
  -> GLint -- ^ @location@.
  -> IO GLint
glGetUniformBufferSizeEXT = dyn_glGetUniformBufferSizeEXT ptr_glGetUniformBufferSizeEXT

foreign import CALLCONV "dynamic" dyn_glGetUniformBufferSizeEXT
  :: FunPtr (GLuint -> GLint -> IO GLint)
  ->         GLuint -> GLint -> IO GLint

{-# NOINLINE ptr_glGetUniformBufferSizeEXT #-}
ptr_glGetUniformBufferSizeEXT :: FunPtr (GLuint -> GLint -> IO GLint)
ptr_glGetUniformBufferSizeEXT = unsafePerformIO $ getCommand "glGetUniformBufferSizeEXT"

-- glGetUniformIndices ---------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glGetUniformIndices.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glGetUniformIndices.xhtml OpenGL 4.x>
glGetUniformIndices
  :: GLuint -- ^ @program@.
  -> GLsizei -- ^ @uniformCount@.
  -> Ptr (Ptr GLchar) -- ^ @uniformNames@ pointing to @COMPSIZE(uniformCount)@ elements of type @Ptr GLchar@.
  -> Ptr GLuint -- ^ @uniformIndices@ pointing to @COMPSIZE(uniformCount)@ elements of type @GLuint@.
  -> IO ()
glGetUniformIndices = dyn_glGetUniformIndices ptr_glGetUniformIndices

foreign import CALLCONV "dynamic" dyn_glGetUniformIndices
  :: FunPtr (GLuint -> GLsizei -> Ptr (Ptr GLchar) -> Ptr GLuint -> IO ())
  ->         GLuint -> GLsizei -> Ptr (Ptr GLchar) -> Ptr GLuint -> IO ()

{-# NOINLINE ptr_glGetUniformIndices #-}
ptr_glGetUniformIndices :: FunPtr (GLuint -> GLsizei -> Ptr (Ptr GLchar) -> Ptr GLuint -> IO ())
ptr_glGetUniformIndices = unsafePerformIO $ getCommand "glGetUniformIndices"

-- glGetUniformLocation --------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glGetUniformLocation.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glGetUniformLocation.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glGetUniformLocation.xhtml OpenGL 4.x>
glGetUniformLocation
  :: GLuint -- ^ @program@.
  -> Ptr GLchar -- ^ @name@.
  -> IO GLint
glGetUniformLocation = dyn_glGetUniformLocation ptr_glGetUniformLocation

foreign import CALLCONV "dynamic" dyn_glGetUniformLocation
  :: FunPtr (GLuint -> Ptr GLchar -> IO GLint)
  ->         GLuint -> Ptr GLchar -> IO GLint

{-# NOINLINE ptr_glGetUniformLocation #-}
ptr_glGetUniformLocation :: FunPtr (GLuint -> Ptr GLchar -> IO GLint)
ptr_glGetUniformLocation = unsafePerformIO $ getCommand "glGetUniformLocation"

-- glGetUniformLocationARB -----------------------------------------------------

glGetUniformLocationARB
  :: GLhandleARB -- ^ @programObj@ of type @handleARB@.
  -> Ptr GLcharARB -- ^ @name@.
  -> IO GLint
glGetUniformLocationARB = dyn_glGetUniformLocationARB ptr_glGetUniformLocationARB

foreign import CALLCONV "dynamic" dyn_glGetUniformLocationARB
  :: FunPtr (GLhandleARB -> Ptr GLcharARB -> IO GLint)
  ->         GLhandleARB -> Ptr GLcharARB -> IO GLint

{-# NOINLINE ptr_glGetUniformLocationARB #-}
ptr_glGetUniformLocationARB :: FunPtr (GLhandleARB -> Ptr GLcharARB -> IO GLint)
ptr_glGetUniformLocationARB = unsafePerformIO $ getCommand "glGetUniformLocationARB"

-- glGetUniformOffsetEXT -------------------------------------------------------

glGetUniformOffsetEXT
  :: GLuint -- ^ @program@.
  -> GLint -- ^ @location@.
  -> IO GLintptr -- ^ of type @BufferOffset@.
glGetUniformOffsetEXT = dyn_glGetUniformOffsetEXT ptr_glGetUniformOffsetEXT

foreign import CALLCONV "dynamic" dyn_glGetUniformOffsetEXT
  :: FunPtr (GLuint -> GLint -> IO GLintptr)
  ->         GLuint -> GLint -> IO GLintptr

{-# NOINLINE ptr_glGetUniformOffsetEXT #-}
ptr_glGetUniformOffsetEXT :: FunPtr (GLuint -> GLint -> IO GLintptr)
ptr_glGetUniformOffsetEXT = unsafePerformIO $ getCommand "glGetUniformOffsetEXT"

-- glGetUniformSubroutineuiv ---------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glGetUniformSubroutine.xhtml OpenGL 4.x>
glGetUniformSubroutineuiv
  :: GLenum -- ^ @shadertype@.
  -> GLint -- ^ @location@.
  -> Ptr GLuint -- ^ @params@ pointing to @1@ elements of type @GLuint@.
  -> IO ()
glGetUniformSubroutineuiv = dyn_glGetUniformSubroutineuiv ptr_glGetUniformSubroutineuiv

foreign import CALLCONV "dynamic" dyn_glGetUniformSubroutineuiv
  :: FunPtr (GLenum -> GLint -> Ptr GLuint -> IO ())
  ->         GLenum -> GLint -> Ptr GLuint -> IO ()

{-# NOINLINE ptr_glGetUniformSubroutineuiv #-}
ptr_glGetUniformSubroutineuiv :: FunPtr (GLenum -> GLint -> Ptr GLuint -> IO ())
ptr_glGetUniformSubroutineuiv = unsafePerformIO $ getCommand "glGetUniformSubroutineuiv"

-- glGetUniformdv --------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glGetUniform.xhtml OpenGL 4.x>
glGetUniformdv
  :: GLuint -- ^ @program@.
  -> GLint -- ^ @location@.
  -> Ptr GLdouble -- ^ @params@ pointing to @COMPSIZE(program,location)@ elements of type @GLdouble@.
  -> IO ()
glGetUniformdv = dyn_glGetUniformdv ptr_glGetUniformdv

foreign import CALLCONV "dynamic" dyn_glGetUniformdv
  :: FunPtr (GLuint -> GLint -> Ptr GLdouble -> IO ())
  ->         GLuint -> GLint -> Ptr GLdouble -> IO ()

{-# NOINLINE ptr_glGetUniformdv #-}
ptr_glGetUniformdv :: FunPtr (GLuint -> GLint -> Ptr GLdouble -> IO ())
ptr_glGetUniformdv = unsafePerformIO $ getCommand "glGetUniformdv"

-- glGetUniformfv --------------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glGetUniform.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glGetUniform.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glGetUniform.xhtml OpenGL 4.x>
glGetUniformfv
  :: GLuint -- ^ @program@.
  -> GLint -- ^ @location@.
  -> Ptr GLfloat -- ^ @params@ pointing to @COMPSIZE(program,location)@ elements of type @GLfloat@.
  -> IO ()
glGetUniformfv = dyn_glGetUniformfv ptr_glGetUniformfv

foreign import CALLCONV "dynamic" dyn_glGetUniformfv
  :: FunPtr (GLuint -> GLint -> Ptr GLfloat -> IO ())
  ->         GLuint -> GLint -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glGetUniformfv #-}
ptr_glGetUniformfv :: FunPtr (GLuint -> GLint -> Ptr GLfloat -> IO ())
ptr_glGetUniformfv = unsafePerformIO $ getCommand "glGetUniformfv"

-- glGetUniformfvARB -----------------------------------------------------------

glGetUniformfvARB
  :: GLhandleARB -- ^ @programObj@ of type @handleARB@.
  -> GLint -- ^ @location@.
  -> Ptr GLfloat -- ^ @params@ pointing to @COMPSIZE(programObj,location)@ elements of type @GLfloat@.
  -> IO ()
glGetUniformfvARB = dyn_glGetUniformfvARB ptr_glGetUniformfvARB

foreign import CALLCONV "dynamic" dyn_glGetUniformfvARB
  :: FunPtr (GLhandleARB -> GLint -> Ptr GLfloat -> IO ())
  ->         GLhandleARB -> GLint -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glGetUniformfvARB #-}
ptr_glGetUniformfvARB :: FunPtr (GLhandleARB -> GLint -> Ptr GLfloat -> IO ())
ptr_glGetUniformfvARB = unsafePerformIO $ getCommand "glGetUniformfvARB"

-- glGetUniformi64vNV ----------------------------------------------------------

glGetUniformi64vNV
  :: GLuint -- ^ @program@.
  -> GLint -- ^ @location@.
  -> Ptr GLint64EXT -- ^ @params@ pointing to @COMPSIZE(program,location)@ elements of type @GLint64EXT@.
  -> IO ()
glGetUniformi64vNV = dyn_glGetUniformi64vNV ptr_glGetUniformi64vNV

foreign import CALLCONV "dynamic" dyn_glGetUniformi64vNV
  :: FunPtr (GLuint -> GLint -> Ptr GLint64EXT -> IO ())
  ->         GLuint -> GLint -> Ptr GLint64EXT -> IO ()

{-# NOINLINE ptr_glGetUniformi64vNV #-}
ptr_glGetUniformi64vNV :: FunPtr (GLuint -> GLint -> Ptr GLint64EXT -> IO ())
ptr_glGetUniformi64vNV = unsafePerformIO $ getCommand "glGetUniformi64vNV"

-- glGetUniformiv --------------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glGetUniform.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glGetUniform.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glGetUniform.xhtml OpenGL 4.x>
glGetUniformiv
  :: GLuint -- ^ @program@.
  -> GLint -- ^ @location@.
  -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(program,location)@ elements of type @GLint@.
  -> IO ()
glGetUniformiv = dyn_glGetUniformiv ptr_glGetUniformiv

foreign import CALLCONV "dynamic" dyn_glGetUniformiv
  :: FunPtr (GLuint -> GLint -> Ptr GLint -> IO ())
  ->         GLuint -> GLint -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glGetUniformiv #-}
ptr_glGetUniformiv :: FunPtr (GLuint -> GLint -> Ptr GLint -> IO ())
ptr_glGetUniformiv = unsafePerformIO $ getCommand "glGetUniformiv"

-- glGetUniformivARB -----------------------------------------------------------

glGetUniformivARB
  :: GLhandleARB -- ^ @programObj@ of type @handleARB@.
  -> GLint -- ^ @location@.
  -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(programObj,location)@ elements of type @GLint@.
  -> IO ()
glGetUniformivARB = dyn_glGetUniformivARB ptr_glGetUniformivARB

foreign import CALLCONV "dynamic" dyn_glGetUniformivARB
  :: FunPtr (GLhandleARB -> GLint -> Ptr GLint -> IO ())
  ->         GLhandleARB -> GLint -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glGetUniformivARB #-}
ptr_glGetUniformivARB :: FunPtr (GLhandleARB -> GLint -> Ptr GLint -> IO ())
ptr_glGetUniformivARB = unsafePerformIO $ getCommand "glGetUniformivARB"

-- glGetUniformui64vNV ---------------------------------------------------------

glGetUniformui64vNV
  :: GLuint -- ^ @program@.
  -> GLint -- ^ @location@.
  -> Ptr GLuint64EXT -- ^ @params@ pointing to @COMPSIZE(program,location)@ elements of type @GLuint64EXT@.
  -> IO ()
glGetUniformui64vNV = dyn_glGetUniformui64vNV ptr_glGetUniformui64vNV

foreign import CALLCONV "dynamic" dyn_glGetUniformui64vNV
  :: FunPtr (GLuint -> GLint -> Ptr GLuint64EXT -> IO ())
  ->         GLuint -> GLint -> Ptr GLuint64EXT -> IO ()

{-# NOINLINE ptr_glGetUniformui64vNV #-}
ptr_glGetUniformui64vNV :: FunPtr (GLuint -> GLint -> Ptr GLuint64EXT -> IO ())
ptr_glGetUniformui64vNV = unsafePerformIO $ getCommand "glGetUniformui64vNV"

-- glGetUniformuiv -------------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glGetUniform.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glGetUniform.xhtml OpenGL 4.x>
glGetUniformuiv
  :: GLuint -- ^ @program@.
  -> GLint -- ^ @location@.
  -> Ptr GLuint -- ^ @params@ pointing to @COMPSIZE(program,location)@ elements of type @GLuint@.
  -> IO ()
glGetUniformuiv = dyn_glGetUniformuiv ptr_glGetUniformuiv

foreign import CALLCONV "dynamic" dyn_glGetUniformuiv
  :: FunPtr (GLuint -> GLint -> Ptr GLuint -> IO ())
  ->         GLuint -> GLint -> Ptr GLuint -> IO ()

{-# NOINLINE ptr_glGetUniformuiv #-}
ptr_glGetUniformuiv :: FunPtr (GLuint -> GLint -> Ptr GLuint -> IO ())
ptr_glGetUniformuiv = unsafePerformIO $ getCommand "glGetUniformuiv"

-- glGetUniformuivEXT ----------------------------------------------------------

glGetUniformuivEXT
  :: GLuint -- ^ @program@.
  -> GLint -- ^ @location@.
  -> Ptr GLuint -- ^ @params@ pointing to @COMPSIZE(program,location)@ elements of type @GLuint@.
  -> IO ()
glGetUniformuivEXT = dyn_glGetUniformuivEXT ptr_glGetUniformuivEXT

foreign import CALLCONV "dynamic" dyn_glGetUniformuivEXT
  :: FunPtr (GLuint -> GLint -> Ptr GLuint -> IO ())
  ->         GLuint -> GLint -> Ptr GLuint -> IO ()

{-# NOINLINE ptr_glGetUniformuivEXT #-}
ptr_glGetUniformuivEXT :: FunPtr (GLuint -> GLint -> Ptr GLuint -> IO ())
ptr_glGetUniformuivEXT = unsafePerformIO $ getCommand "glGetUniformuivEXT"

-- glGetVariantArrayObjectfvATI ------------------------------------------------

glGetVariantArrayObjectfvATI
  :: GLuint -- ^ @id@.
  -> GLenum -- ^ @pname@ of type @ArrayObjectPNameATI@.
  -> Ptr GLfloat -- ^ @params@ pointing to @1@ elements of type @GLfloat@.
  -> IO ()
glGetVariantArrayObjectfvATI = dyn_glGetVariantArrayObjectfvATI ptr_glGetVariantArrayObjectfvATI

foreign import CALLCONV "dynamic" dyn_glGetVariantArrayObjectfvATI
  :: FunPtr (GLuint -> GLenum -> Ptr GLfloat -> IO ())
  ->         GLuint -> GLenum -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glGetVariantArrayObjectfvATI #-}
ptr_glGetVariantArrayObjectfvATI :: FunPtr (GLuint -> GLenum -> Ptr GLfloat -> IO ())
ptr_glGetVariantArrayObjectfvATI = unsafePerformIO $ getCommand "glGetVariantArrayObjectfvATI"

-- glGetVariantArrayObjectivATI ------------------------------------------------

glGetVariantArrayObjectivATI
  :: GLuint -- ^ @id@.
  -> GLenum -- ^ @pname@ of type @ArrayObjectPNameATI@.
  -> Ptr GLint -- ^ @params@ pointing to @1@ elements of type @GLint@.
  -> IO ()
glGetVariantArrayObjectivATI = dyn_glGetVariantArrayObjectivATI ptr_glGetVariantArrayObjectivATI

foreign import CALLCONV "dynamic" dyn_glGetVariantArrayObjectivATI
  :: FunPtr (GLuint -> GLenum -> Ptr GLint -> IO ())
  ->         GLuint -> GLenum -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glGetVariantArrayObjectivATI #-}
ptr_glGetVariantArrayObjectivATI :: FunPtr (GLuint -> GLenum -> Ptr GLint -> IO ())
ptr_glGetVariantArrayObjectivATI = unsafePerformIO $ getCommand "glGetVariantArrayObjectivATI"

-- glGetVariantBooleanvEXT -----------------------------------------------------

glGetVariantBooleanvEXT
  :: GLuint -- ^ @id@.
  -> GLenum -- ^ @value@ of type @GetVariantValueEXT@.
  -> Ptr GLboolean -- ^ @data@ pointing to @COMPSIZE(id)@ elements of type @Boolean@.
  -> IO ()
glGetVariantBooleanvEXT = dyn_glGetVariantBooleanvEXT ptr_glGetVariantBooleanvEXT

foreign import CALLCONV "dynamic" dyn_glGetVariantBooleanvEXT
  :: FunPtr (GLuint -> GLenum -> Ptr GLboolean -> IO ())
  ->         GLuint -> GLenum -> Ptr GLboolean -> IO ()

{-# NOINLINE ptr_glGetVariantBooleanvEXT #-}
ptr_glGetVariantBooleanvEXT :: FunPtr (GLuint -> GLenum -> Ptr GLboolean -> IO ())
ptr_glGetVariantBooleanvEXT = unsafePerformIO $ getCommand "glGetVariantBooleanvEXT"

-- glGetVariantFloatvEXT -------------------------------------------------------

glGetVariantFloatvEXT
  :: GLuint -- ^ @id@.
  -> GLenum -- ^ @value@ of type @GetVariantValueEXT@.
  -> Ptr GLfloat -- ^ @data@ pointing to @COMPSIZE(id)@ elements of type @GLfloat@.
  -> IO ()
glGetVariantFloatvEXT = dyn_glGetVariantFloatvEXT ptr_glGetVariantFloatvEXT

foreign import CALLCONV "dynamic" dyn_glGetVariantFloatvEXT
  :: FunPtr (GLuint -> GLenum -> Ptr GLfloat -> IO ())
  ->         GLuint -> GLenum -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glGetVariantFloatvEXT #-}
ptr_glGetVariantFloatvEXT :: FunPtr (GLuint -> GLenum -> Ptr GLfloat -> IO ())
ptr_glGetVariantFloatvEXT = unsafePerformIO $ getCommand "glGetVariantFloatvEXT"

-- glGetVariantIntegervEXT -----------------------------------------------------

glGetVariantIntegervEXT
  :: GLuint -- ^ @id@.
  -> GLenum -- ^ @value@ of type @GetVariantValueEXT@.
  -> Ptr GLint -- ^ @data@ pointing to @COMPSIZE(id)@ elements of type @GLint@.
  -> IO ()
glGetVariantIntegervEXT = dyn_glGetVariantIntegervEXT ptr_glGetVariantIntegervEXT

foreign import CALLCONV "dynamic" dyn_glGetVariantIntegervEXT
  :: FunPtr (GLuint -> GLenum -> Ptr GLint -> IO ())
  ->         GLuint -> GLenum -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glGetVariantIntegervEXT #-}
ptr_glGetVariantIntegervEXT :: FunPtr (GLuint -> GLenum -> Ptr GLint -> IO ())
ptr_glGetVariantIntegervEXT = unsafePerformIO $ getCommand "glGetVariantIntegervEXT"

-- glGetVariantPointervEXT -----------------------------------------------------

glGetVariantPointervEXT
  :: GLuint -- ^ @id@.
  -> GLenum -- ^ @value@ of type @GetVariantValueEXT@.
  -> Ptr (Ptr a) -- ^ @data@ pointing to @COMPSIZE(id)@ elements of type @Ptr a@.
  -> IO ()
glGetVariantPointervEXT = dyn_glGetVariantPointervEXT ptr_glGetVariantPointervEXT

foreign import CALLCONV "dynamic" dyn_glGetVariantPointervEXT
  :: FunPtr (GLuint -> GLenum -> Ptr (Ptr a) -> IO ())
  ->         GLuint -> GLenum -> Ptr (Ptr a) -> IO ()

{-# NOINLINE ptr_glGetVariantPointervEXT #-}
ptr_glGetVariantPointervEXT :: FunPtr (GLuint -> GLenum -> Ptr (Ptr a) -> IO ())
ptr_glGetVariantPointervEXT = unsafePerformIO $ getCommand "glGetVariantPointervEXT"

-- glGetVaryingLocationNV ------------------------------------------------------

glGetVaryingLocationNV
  :: GLuint -- ^ @program@.
  -> Ptr GLchar -- ^ @name@ pointing to @COMPSIZE(name)@ elements of type @GLchar@.
  -> IO GLint
glGetVaryingLocationNV = dyn_glGetVaryingLocationNV ptr_glGetVaryingLocationNV

foreign import CALLCONV "dynamic" dyn_glGetVaryingLocationNV
  :: FunPtr (GLuint -> Ptr GLchar -> IO GLint)
  ->         GLuint -> Ptr GLchar -> IO GLint

{-# NOINLINE ptr_glGetVaryingLocationNV #-}
ptr_glGetVaryingLocationNV :: FunPtr (GLuint -> Ptr GLchar -> IO GLint)
ptr_glGetVaryingLocationNV = unsafePerformIO $ getCommand "glGetVaryingLocationNV"

-- glGetVertexArrayIndexed64iv -------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glGetVertexArrayIndexed.xhtml OpenGL 4.x>
glGetVertexArrayIndexed64iv
  :: GLuint -- ^ @vaobj@.
  -> GLuint -- ^ @index@.
  -> GLenum -- ^ @pname@.
  -> Ptr GLint64 -- ^ @param@.
  -> IO ()
glGetVertexArrayIndexed64iv = dyn_glGetVertexArrayIndexed64iv ptr_glGetVertexArrayIndexed64iv

foreign import CALLCONV "dynamic" dyn_glGetVertexArrayIndexed64iv
  :: FunPtr (GLuint -> GLuint -> GLenum -> Ptr GLint64 -> IO ())
  ->         GLuint -> GLuint -> GLenum -> Ptr GLint64 -> IO ()

{-# NOINLINE ptr_glGetVertexArrayIndexed64iv #-}
ptr_glGetVertexArrayIndexed64iv :: FunPtr (GLuint -> GLuint -> GLenum -> Ptr GLint64 -> IO ())
ptr_glGetVertexArrayIndexed64iv = unsafePerformIO $ getCommand "glGetVertexArrayIndexed64iv"

-- glGetVertexArrayIndexediv ---------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glGetVertexArrayIndexed.xhtml OpenGL 4.x>
glGetVertexArrayIndexediv
  :: GLuint -- ^ @vaobj@.
  -> GLuint -- ^ @index@.
  -> GLenum -- ^ @pname@.
  -> Ptr GLint -- ^ @param@.
  -> IO ()
glGetVertexArrayIndexediv = dyn_glGetVertexArrayIndexediv ptr_glGetVertexArrayIndexediv

foreign import CALLCONV "dynamic" dyn_glGetVertexArrayIndexediv
  :: FunPtr (GLuint -> GLuint -> GLenum -> Ptr GLint -> IO ())
  ->         GLuint -> GLuint -> GLenum -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glGetVertexArrayIndexediv #-}
ptr_glGetVertexArrayIndexediv :: FunPtr (GLuint -> GLuint -> GLenum -> Ptr GLint -> IO ())
ptr_glGetVertexArrayIndexediv = unsafePerformIO $ getCommand "glGetVertexArrayIndexediv"

-- glGetVertexArrayIntegeri_vEXT -----------------------------------------------

glGetVertexArrayIntegeri_vEXT
  :: GLuint -- ^ @vaobj@.
  -> GLuint -- ^ @index@.
  -> GLenum -- ^ @pname@.
  -> Ptr GLint -- ^ @param@.
  -> IO ()
glGetVertexArrayIntegeri_vEXT = dyn_glGetVertexArrayIntegeri_vEXT ptr_glGetVertexArrayIntegeri_vEXT

foreign import CALLCONV "dynamic" dyn_glGetVertexArrayIntegeri_vEXT
  :: FunPtr (GLuint -> GLuint -> GLenum -> Ptr GLint -> IO ())
  ->         GLuint -> GLuint -> GLenum -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glGetVertexArrayIntegeri_vEXT #-}
ptr_glGetVertexArrayIntegeri_vEXT :: FunPtr (GLuint -> GLuint -> GLenum -> Ptr GLint -> IO ())
ptr_glGetVertexArrayIntegeri_vEXT = unsafePerformIO $ getCommand "glGetVertexArrayIntegeri_vEXT"

-- glGetVertexArrayIntegervEXT -------------------------------------------------

glGetVertexArrayIntegervEXT
  :: GLuint -- ^ @vaobj@.
  -> GLenum -- ^ @pname@.
  -> Ptr GLint -- ^ @param@.
  -> IO ()
glGetVertexArrayIntegervEXT = dyn_glGetVertexArrayIntegervEXT ptr_glGetVertexArrayIntegervEXT

foreign import CALLCONV "dynamic" dyn_glGetVertexArrayIntegervEXT
  :: FunPtr (GLuint -> GLenum -> Ptr GLint -> IO ())
  ->         GLuint -> GLenum -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glGetVertexArrayIntegervEXT #-}
ptr_glGetVertexArrayIntegervEXT :: FunPtr (GLuint -> GLenum -> Ptr GLint -> IO ())
ptr_glGetVertexArrayIntegervEXT = unsafePerformIO $ getCommand "glGetVertexArrayIntegervEXT"

-- glGetVertexArrayPointeri_vEXT -----------------------------------------------

glGetVertexArrayPointeri_vEXT
  :: GLuint -- ^ @vaobj@.
  -> GLuint -- ^ @index@.
  -> GLenum -- ^ @pname@.
  -> Ptr (Ptr a) -- ^ @param@.
  -> IO ()
glGetVertexArrayPointeri_vEXT = dyn_glGetVertexArrayPointeri_vEXT ptr_glGetVertexArrayPointeri_vEXT

foreign import CALLCONV "dynamic" dyn_glGetVertexArrayPointeri_vEXT
  :: FunPtr (GLuint -> GLuint -> GLenum -> Ptr (Ptr a) -> IO ())
  ->         GLuint -> GLuint -> GLenum -> Ptr (Ptr a) -> IO ()

{-# NOINLINE ptr_glGetVertexArrayPointeri_vEXT #-}
ptr_glGetVertexArrayPointeri_vEXT :: FunPtr (GLuint -> GLuint -> GLenum -> Ptr (Ptr a) -> IO ())
ptr_glGetVertexArrayPointeri_vEXT = unsafePerformIO $ getCommand "glGetVertexArrayPointeri_vEXT"

-- glGetVertexArrayPointervEXT -------------------------------------------------

glGetVertexArrayPointervEXT
  :: GLuint -- ^ @vaobj@.
  -> GLenum -- ^ @pname@.
  -> Ptr (Ptr a) -- ^ @param@ pointing to @1@ elements of type @Ptr a@.
  -> IO ()
glGetVertexArrayPointervEXT = dyn_glGetVertexArrayPointervEXT ptr_glGetVertexArrayPointervEXT

foreign import CALLCONV "dynamic" dyn_glGetVertexArrayPointervEXT
  :: FunPtr (GLuint -> GLenum -> Ptr (Ptr a) -> IO ())
  ->         GLuint -> GLenum -> Ptr (Ptr a) -> IO ()

{-# NOINLINE ptr_glGetVertexArrayPointervEXT #-}
ptr_glGetVertexArrayPointervEXT :: FunPtr (GLuint -> GLenum -> Ptr (Ptr a) -> IO ())
ptr_glGetVertexArrayPointervEXT = unsafePerformIO $ getCommand "glGetVertexArrayPointervEXT"

-- glGetVertexArrayiv ----------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glGetVertexArrayiv.xhtml OpenGL 4.x>
glGetVertexArrayiv
  :: GLuint -- ^ @vaobj@.
  -> GLenum -- ^ @pname@.
  -> Ptr GLint -- ^ @param@.
  -> IO ()
glGetVertexArrayiv = dyn_glGetVertexArrayiv ptr_glGetVertexArrayiv

foreign import CALLCONV "dynamic" dyn_glGetVertexArrayiv
  :: FunPtr (GLuint -> GLenum -> Ptr GLint -> IO ())
  ->         GLuint -> GLenum -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glGetVertexArrayiv #-}
ptr_glGetVertexArrayiv :: FunPtr (GLuint -> GLenum -> Ptr GLint -> IO ())
ptr_glGetVertexArrayiv = unsafePerformIO $ getCommand "glGetVertexArrayiv"

-- glGetVertexAttribArrayObjectfvATI -------------------------------------------

glGetVertexAttribArrayObjectfvATI
  :: GLuint -- ^ @index@.
  -> GLenum -- ^ @pname@ of type @ArrayObjectPNameATI@.
  -> Ptr GLfloat -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLfloat@.
  -> IO ()
glGetVertexAttribArrayObjectfvATI = dyn_glGetVertexAttribArrayObjectfvATI ptr_glGetVertexAttribArrayObjectfvATI

foreign import CALLCONV "dynamic" dyn_glGetVertexAttribArrayObjectfvATI
  :: FunPtr (GLuint -> GLenum -> Ptr GLfloat -> IO ())
  ->         GLuint -> GLenum -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glGetVertexAttribArrayObjectfvATI #-}
ptr_glGetVertexAttribArrayObjectfvATI :: FunPtr (GLuint -> GLenum -> Ptr GLfloat -> IO ())
ptr_glGetVertexAttribArrayObjectfvATI = unsafePerformIO $ getCommand "glGetVertexAttribArrayObjectfvATI"

-- glGetVertexAttribArrayObjectivATI -------------------------------------------

glGetVertexAttribArrayObjectivATI
  :: GLuint -- ^ @index@.
  -> GLenum -- ^ @pname@ of type @ArrayObjectPNameATI@.
  -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLint@.
  -> IO ()
glGetVertexAttribArrayObjectivATI = dyn_glGetVertexAttribArrayObjectivATI ptr_glGetVertexAttribArrayObjectivATI

foreign import CALLCONV "dynamic" dyn_glGetVertexAttribArrayObjectivATI
  :: FunPtr (GLuint -> GLenum -> Ptr GLint -> IO ())
  ->         GLuint -> GLenum -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glGetVertexAttribArrayObjectivATI #-}
ptr_glGetVertexAttribArrayObjectivATI :: FunPtr (GLuint -> GLenum -> Ptr GLint -> IO ())
ptr_glGetVertexAttribArrayObjectivATI = unsafePerformIO $ getCommand "glGetVertexAttribArrayObjectivATI"

-- glGetVertexAttribIiv --------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glGetVertexAttrib.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glGetVertexAttrib.xhtml OpenGL 4.x>
glGetVertexAttribIiv
  :: GLuint -- ^ @index@.
  -> GLenum -- ^ @pname@ of type @VertexAttribEnum@.
  -> Ptr GLint -- ^ @params@ pointing to @1@ elements of type @GLint@.
  -> IO ()
glGetVertexAttribIiv = dyn_glGetVertexAttribIiv ptr_glGetVertexAttribIiv

foreign import CALLCONV "dynamic" dyn_glGetVertexAttribIiv
  :: FunPtr (GLuint -> GLenum -> Ptr GLint -> IO ())
  ->         GLuint -> GLenum -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glGetVertexAttribIiv #-}
ptr_glGetVertexAttribIiv :: FunPtr (GLuint -> GLenum -> Ptr GLint -> IO ())
ptr_glGetVertexAttribIiv = unsafePerformIO $ getCommand "glGetVertexAttribIiv"

-- glGetVertexAttribIivEXT -----------------------------------------------------

glGetVertexAttribIivEXT
  :: GLuint -- ^ @index@.
  -> GLenum -- ^ @pname@ of type @VertexAttribEnum@.
  -> Ptr GLint -- ^ @params@ pointing to @1@ elements of type @GLint@.
  -> IO ()
glGetVertexAttribIivEXT = dyn_glGetVertexAttribIivEXT ptr_glGetVertexAttribIivEXT

foreign import CALLCONV "dynamic" dyn_glGetVertexAttribIivEXT
  :: FunPtr (GLuint -> GLenum -> Ptr GLint -> IO ())
  ->         GLuint -> GLenum -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glGetVertexAttribIivEXT #-}
ptr_glGetVertexAttribIivEXT :: FunPtr (GLuint -> GLenum -> Ptr GLint -> IO ())
ptr_glGetVertexAttribIivEXT = unsafePerformIO $ getCommand "glGetVertexAttribIivEXT"

-- glGetVertexAttribIuiv -------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glGetVertexAttrib.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glGetVertexAttrib.xhtml OpenGL 4.x>
glGetVertexAttribIuiv
  :: GLuint -- ^ @index@.
  -> GLenum -- ^ @pname@ of type @VertexAttribEnum@.
  -> Ptr GLuint -- ^ @params@ pointing to @1@ elements of type @GLuint@.
  -> IO ()
glGetVertexAttribIuiv = dyn_glGetVertexAttribIuiv ptr_glGetVertexAttribIuiv

foreign import CALLCONV "dynamic" dyn_glGetVertexAttribIuiv
  :: FunPtr (GLuint -> GLenum -> Ptr GLuint -> IO ())
  ->         GLuint -> GLenum -> Ptr GLuint -> IO ()

{-# NOINLINE ptr_glGetVertexAttribIuiv #-}
ptr_glGetVertexAttribIuiv :: FunPtr (GLuint -> GLenum -> Ptr GLuint -> IO ())
ptr_glGetVertexAttribIuiv = unsafePerformIO $ getCommand "glGetVertexAttribIuiv"

-- glGetVertexAttribIuivEXT ----------------------------------------------------

glGetVertexAttribIuivEXT
  :: GLuint -- ^ @index@.
  -> GLenum -- ^ @pname@ of type @VertexAttribEnum@.
  -> Ptr GLuint -- ^ @params@ pointing to @1@ elements of type @GLuint@.
  -> IO ()
glGetVertexAttribIuivEXT = dyn_glGetVertexAttribIuivEXT ptr_glGetVertexAttribIuivEXT

foreign import CALLCONV "dynamic" dyn_glGetVertexAttribIuivEXT
  :: FunPtr (GLuint -> GLenum -> Ptr GLuint -> IO ())
  ->         GLuint -> GLenum -> Ptr GLuint -> IO ()

{-# NOINLINE ptr_glGetVertexAttribIuivEXT #-}
ptr_glGetVertexAttribIuivEXT :: FunPtr (GLuint -> GLenum -> Ptr GLuint -> IO ())
ptr_glGetVertexAttribIuivEXT = unsafePerformIO $ getCommand "glGetVertexAttribIuivEXT"

-- glGetVertexAttribLdv --------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glGetVertexAttrib.xhtml OpenGL 4.x>
glGetVertexAttribLdv
  :: GLuint -- ^ @index@.
  -> GLenum -- ^ @pname@.
  -> Ptr GLdouble -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLdouble@.
  -> IO ()
glGetVertexAttribLdv = dyn_glGetVertexAttribLdv ptr_glGetVertexAttribLdv

foreign import CALLCONV "dynamic" dyn_glGetVertexAttribLdv
  :: FunPtr (GLuint -> GLenum -> Ptr GLdouble -> IO ())
  ->         GLuint -> GLenum -> Ptr GLdouble -> IO ()

{-# NOINLINE ptr_glGetVertexAttribLdv #-}
ptr_glGetVertexAttribLdv :: FunPtr (GLuint -> GLenum -> Ptr GLdouble -> IO ())
ptr_glGetVertexAttribLdv = unsafePerformIO $ getCommand "glGetVertexAttribLdv"

-- glGetVertexAttribLdvEXT -----------------------------------------------------

glGetVertexAttribLdvEXT
  :: GLuint -- ^ @index@.
  -> GLenum -- ^ @pname@.
  -> Ptr GLdouble -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLdouble@.
  -> IO ()
glGetVertexAttribLdvEXT = dyn_glGetVertexAttribLdvEXT ptr_glGetVertexAttribLdvEXT

foreign import CALLCONV "dynamic" dyn_glGetVertexAttribLdvEXT
  :: FunPtr (GLuint -> GLenum -> Ptr GLdouble -> IO ())
  ->         GLuint -> GLenum -> Ptr GLdouble -> IO ()

{-# NOINLINE ptr_glGetVertexAttribLdvEXT #-}
ptr_glGetVertexAttribLdvEXT :: FunPtr (GLuint -> GLenum -> Ptr GLdouble -> IO ())
ptr_glGetVertexAttribLdvEXT = unsafePerformIO $ getCommand "glGetVertexAttribLdvEXT"

-- glGetVertexAttribLi64vNV ----------------------------------------------------

glGetVertexAttribLi64vNV
  :: GLuint -- ^ @index@.
  -> GLenum -- ^ @pname@.
  -> Ptr GLint64EXT -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLint64EXT@.
  -> IO ()
glGetVertexAttribLi64vNV = dyn_glGetVertexAttribLi64vNV ptr_glGetVertexAttribLi64vNV

foreign import CALLCONV "dynamic" dyn_glGetVertexAttribLi64vNV
  :: FunPtr (GLuint -> GLenum -> Ptr GLint64EXT -> IO ())
  ->         GLuint -> GLenum -> Ptr GLint64EXT -> IO ()

{-# NOINLINE ptr_glGetVertexAttribLi64vNV #-}
ptr_glGetVertexAttribLi64vNV :: FunPtr (GLuint -> GLenum -> Ptr GLint64EXT -> IO ())
ptr_glGetVertexAttribLi64vNV = unsafePerformIO $ getCommand "glGetVertexAttribLi64vNV"

-- glGetVertexAttribLui64vARB --------------------------------------------------

glGetVertexAttribLui64vARB
  :: GLuint -- ^ @index@.
  -> GLenum -- ^ @pname@.
  -> Ptr GLuint64EXT -- ^ @params@.
  -> IO ()
glGetVertexAttribLui64vARB = dyn_glGetVertexAttribLui64vARB ptr_glGetVertexAttribLui64vARB

foreign import CALLCONV "dynamic" dyn_glGetVertexAttribLui64vARB
  :: FunPtr (GLuint -> GLenum -> Ptr GLuint64EXT -> IO ())
  ->         GLuint -> GLenum -> Ptr GLuint64EXT -> IO ()

{-# NOINLINE ptr_glGetVertexAttribLui64vARB #-}
ptr_glGetVertexAttribLui64vARB :: FunPtr (GLuint -> GLenum -> Ptr GLuint64EXT -> IO ())
ptr_glGetVertexAttribLui64vARB = unsafePerformIO $ getCommand "glGetVertexAttribLui64vARB"

-- glGetVertexAttribLui64vNV ---------------------------------------------------

glGetVertexAttribLui64vNV
  :: GLuint -- ^ @index@.
  -> GLenum -- ^ @pname@.
  -> Ptr GLuint64EXT -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLuint64EXT@.
  -> IO ()
glGetVertexAttribLui64vNV = dyn_glGetVertexAttribLui64vNV ptr_glGetVertexAttribLui64vNV

foreign import CALLCONV "dynamic" dyn_glGetVertexAttribLui64vNV
  :: FunPtr (GLuint -> GLenum -> Ptr GLuint64EXT -> IO ())
  ->         GLuint -> GLenum -> Ptr GLuint64EXT -> IO ()

{-# NOINLINE ptr_glGetVertexAttribLui64vNV #-}
ptr_glGetVertexAttribLui64vNV :: FunPtr (GLuint -> GLenum -> Ptr GLuint64EXT -> IO ())
ptr_glGetVertexAttribLui64vNV = unsafePerformIO $ getCommand "glGetVertexAttribLui64vNV"

-- glGetVertexAttribPointerv ---------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glGetVertexAttribPointerv.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glGetVertexAttribPointerv.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glGetVertexAttribPointerv.xhtml OpenGL 4.x>
glGetVertexAttribPointerv
  :: GLuint -- ^ @index@.
  -> GLenum -- ^ @pname@ of type @VertexAttribPointerPropertyARB@.
  -> Ptr (Ptr a) -- ^ @pointer@ pointing to @1@ elements of type @Ptr a@.
  -> IO ()
glGetVertexAttribPointerv = dyn_glGetVertexAttribPointerv ptr_glGetVertexAttribPointerv

foreign import CALLCONV "dynamic" dyn_glGetVertexAttribPointerv
  :: FunPtr (GLuint -> GLenum -> Ptr (Ptr a) -> IO ())
  ->         GLuint -> GLenum -> Ptr (Ptr a) -> IO ()

{-# NOINLINE ptr_glGetVertexAttribPointerv #-}
ptr_glGetVertexAttribPointerv :: FunPtr (GLuint -> GLenum -> Ptr (Ptr a) -> IO ())
ptr_glGetVertexAttribPointerv = unsafePerformIO $ getCommand "glGetVertexAttribPointerv"

-- glGetVertexAttribPointervARB ------------------------------------------------

glGetVertexAttribPointervARB
  :: GLuint -- ^ @index@.
  -> GLenum -- ^ @pname@ of type @VertexAttribPointerPropertyARB@.
  -> Ptr (Ptr a) -- ^ @pointer@ pointing to @1@ elements of type @Ptr a@.
  -> IO ()
glGetVertexAttribPointervARB = dyn_glGetVertexAttribPointervARB ptr_glGetVertexAttribPointervARB

foreign import CALLCONV "dynamic" dyn_glGetVertexAttribPointervARB
  :: FunPtr (GLuint -> GLenum -> Ptr (Ptr a) -> IO ())
  ->         GLuint -> GLenum -> Ptr (Ptr a) -> IO ()

{-# NOINLINE ptr_glGetVertexAttribPointervARB #-}
ptr_glGetVertexAttribPointervARB :: FunPtr (GLuint -> GLenum -> Ptr (Ptr a) -> IO ())
ptr_glGetVertexAttribPointervARB = unsafePerformIO $ getCommand "glGetVertexAttribPointervARB"

-- glGetVertexAttribPointervNV -------------------------------------------------

glGetVertexAttribPointervNV
  :: GLuint -- ^ @index@.
  -> GLenum -- ^ @pname@ of type @VertexAttribEnumNV@.
  -> Ptr (Ptr a) -- ^ @pointer@ pointing to @1@ elements of type @Ptr a@.
  -> IO ()
glGetVertexAttribPointervNV = dyn_glGetVertexAttribPointervNV ptr_glGetVertexAttribPointervNV

foreign import CALLCONV "dynamic" dyn_glGetVertexAttribPointervNV
  :: FunPtr (GLuint -> GLenum -> Ptr (Ptr a) -> IO ())
  ->         GLuint -> GLenum -> Ptr (Ptr a) -> IO ()

{-# NOINLINE ptr_glGetVertexAttribPointervNV #-}
ptr_glGetVertexAttribPointervNV :: FunPtr (GLuint -> GLenum -> Ptr (Ptr a) -> IO ())
ptr_glGetVertexAttribPointervNV = unsafePerformIO $ getCommand "glGetVertexAttribPointervNV"

-- glGetVertexAttribdv ---------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glGetVertexAttrib.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glGetVertexAttrib.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glGetVertexAttrib.xhtml OpenGL 4.x>
glGetVertexAttribdv
  :: GLuint -- ^ @index@.
  -> GLenum -- ^ @pname@ of type @VertexAttribPropertyARB@.
  -> Ptr GLdouble -- ^ @params@ pointing to @4@ elements of type @GLdouble@.
  -> IO ()
glGetVertexAttribdv = dyn_glGetVertexAttribdv ptr_glGetVertexAttribdv

foreign import CALLCONV "dynamic" dyn_glGetVertexAttribdv
  :: FunPtr (GLuint -> GLenum -> Ptr GLdouble -> IO ())
  ->         GLuint -> GLenum -> Ptr GLdouble -> IO ()

{-# NOINLINE ptr_glGetVertexAttribdv #-}
ptr_glGetVertexAttribdv :: FunPtr (GLuint -> GLenum -> Ptr GLdouble -> IO ())
ptr_glGetVertexAttribdv = unsafePerformIO $ getCommand "glGetVertexAttribdv"

-- glGetVertexAttribdvARB ------------------------------------------------------

glGetVertexAttribdvARB
  :: GLuint -- ^ @index@.
  -> GLenum -- ^ @pname@ of type @VertexAttribPropertyARB@.
  -> Ptr GLdouble -- ^ @params@ pointing to @4@ elements of type @GLdouble@.
  -> IO ()
glGetVertexAttribdvARB = dyn_glGetVertexAttribdvARB ptr_glGetVertexAttribdvARB

foreign import CALLCONV "dynamic" dyn_glGetVertexAttribdvARB
  :: FunPtr (GLuint -> GLenum -> Ptr GLdouble -> IO ())
  ->         GLuint -> GLenum -> Ptr GLdouble -> IO ()

{-# NOINLINE ptr_glGetVertexAttribdvARB #-}
ptr_glGetVertexAttribdvARB :: FunPtr (GLuint -> GLenum -> Ptr GLdouble -> IO ())
ptr_glGetVertexAttribdvARB = unsafePerformIO $ getCommand "glGetVertexAttribdvARB"

-- glGetVertexAttribdvNV -------------------------------------------------------

glGetVertexAttribdvNV
  :: GLuint -- ^ @index@.
  -> GLenum -- ^ @pname@ of type @VertexAttribEnumNV@.
  -> Ptr GLdouble -- ^ @params@ pointing to @1@ elements of type @GLdouble@.
  -> IO ()
glGetVertexAttribdvNV = dyn_glGetVertexAttribdvNV ptr_glGetVertexAttribdvNV

foreign import CALLCONV "dynamic" dyn_glGetVertexAttribdvNV
  :: FunPtr (GLuint -> GLenum -> Ptr GLdouble -> IO ())
  ->         GLuint -> GLenum -> Ptr GLdouble -> IO ()

{-# NOINLINE ptr_glGetVertexAttribdvNV #-}
ptr_glGetVertexAttribdvNV :: FunPtr (GLuint -> GLenum -> Ptr GLdouble -> IO ())
ptr_glGetVertexAttribdvNV = unsafePerformIO $ getCommand "glGetVertexAttribdvNV"

-- glGetVertexAttribfv ---------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glGetVertexAttrib.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glGetVertexAttrib.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glGetVertexAttrib.xhtml OpenGL 4.x>
glGetVertexAttribfv
  :: GLuint -- ^ @index@.
  -> GLenum -- ^ @pname@ of type @VertexAttribPropertyARB@.
  -> Ptr GLfloat -- ^ @params@ pointing to @4@ elements of type @GLfloat@.
  -> IO ()
glGetVertexAttribfv = dyn_glGetVertexAttribfv ptr_glGetVertexAttribfv

foreign import CALLCONV "dynamic" dyn_glGetVertexAttribfv
  :: FunPtr (GLuint -> GLenum -> Ptr GLfloat -> IO ())
  ->         GLuint -> GLenum -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glGetVertexAttribfv #-}
ptr_glGetVertexAttribfv :: FunPtr (GLuint -> GLenum -> Ptr GLfloat -> IO ())
ptr_glGetVertexAttribfv = unsafePerformIO $ getCommand "glGetVertexAttribfv"

-- glGetVertexAttribfvARB ------------------------------------------------------

glGetVertexAttribfvARB
  :: GLuint -- ^ @index@.
  -> GLenum -- ^ @pname@ of type @VertexAttribPropertyARB@.
  -> Ptr GLfloat -- ^ @params@ pointing to @4@ elements of type @GLfloat@.
  -> IO ()
glGetVertexAttribfvARB = dyn_glGetVertexAttribfvARB ptr_glGetVertexAttribfvARB

foreign import CALLCONV "dynamic" dyn_glGetVertexAttribfvARB
  :: FunPtr (GLuint -> GLenum -> Ptr GLfloat -> IO ())
  ->         GLuint -> GLenum -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glGetVertexAttribfvARB #-}
ptr_glGetVertexAttribfvARB :: FunPtr (GLuint -> GLenum -> Ptr GLfloat -> IO ())
ptr_glGetVertexAttribfvARB = unsafePerformIO $ getCommand "glGetVertexAttribfvARB"

-- glGetVertexAttribfvNV -------------------------------------------------------

glGetVertexAttribfvNV
  :: GLuint -- ^ @index@.
  -> GLenum -- ^ @pname@ of type @VertexAttribEnumNV@.
  -> Ptr GLfloat -- ^ @params@ pointing to @1@ elements of type @GLfloat@.
  -> IO ()
glGetVertexAttribfvNV = dyn_glGetVertexAttribfvNV ptr_glGetVertexAttribfvNV

foreign import CALLCONV "dynamic" dyn_glGetVertexAttribfvNV
  :: FunPtr (GLuint -> GLenum -> Ptr GLfloat -> IO ())
  ->         GLuint -> GLenum -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glGetVertexAttribfvNV #-}
ptr_glGetVertexAttribfvNV :: FunPtr (GLuint -> GLenum -> Ptr GLfloat -> IO ())
ptr_glGetVertexAttribfvNV = unsafePerformIO $ getCommand "glGetVertexAttribfvNV"

-- glGetVertexAttribiv ---------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glGetVertexAttrib.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glGetVertexAttrib.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glGetVertexAttrib.xhtml OpenGL 4.x>
glGetVertexAttribiv
  :: GLuint -- ^ @index@.
  -> GLenum -- ^ @pname@ of type @VertexAttribPropertyARB@.
  -> Ptr GLint -- ^ @params@ pointing to @4@ elements of type @GLint@.
  -> IO ()
glGetVertexAttribiv = dyn_glGetVertexAttribiv ptr_glGetVertexAttribiv

foreign import CALLCONV "dynamic" dyn_glGetVertexAttribiv
  :: FunPtr (GLuint -> GLenum -> Ptr GLint -> IO ())
  ->         GLuint -> GLenum -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glGetVertexAttribiv #-}
ptr_glGetVertexAttribiv :: FunPtr (GLuint -> GLenum -> Ptr GLint -> IO ())
ptr_glGetVertexAttribiv = unsafePerformIO $ getCommand "glGetVertexAttribiv"

-- glGetVertexAttribivARB ------------------------------------------------------

glGetVertexAttribivARB
  :: GLuint -- ^ @index@.
  -> GLenum -- ^ @pname@ of type @VertexAttribPropertyARB@.
  -> Ptr GLint -- ^ @params@ pointing to @4@ elements of type @GLint@.
  -> IO ()
glGetVertexAttribivARB = dyn_glGetVertexAttribivARB ptr_glGetVertexAttribivARB

foreign import CALLCONV "dynamic" dyn_glGetVertexAttribivARB
  :: FunPtr (GLuint -> GLenum -> Ptr GLint -> IO ())
  ->         GLuint -> GLenum -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glGetVertexAttribivARB #-}
ptr_glGetVertexAttribivARB :: FunPtr (GLuint -> GLenum -> Ptr GLint -> IO ())
ptr_glGetVertexAttribivARB = unsafePerformIO $ getCommand "glGetVertexAttribivARB"

-- glGetVertexAttribivNV -------------------------------------------------------

glGetVertexAttribivNV
  :: GLuint -- ^ @index@.
  -> GLenum -- ^ @pname@ of type @VertexAttribEnumNV@.
  -> Ptr GLint -- ^ @params@ pointing to @1@ elements of type @GLint@.
  -> IO ()
glGetVertexAttribivNV = dyn_glGetVertexAttribivNV ptr_glGetVertexAttribivNV

foreign import CALLCONV "dynamic" dyn_glGetVertexAttribivNV
  :: FunPtr (GLuint -> GLenum -> Ptr GLint -> IO ())
  ->         GLuint -> GLenum -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glGetVertexAttribivNV #-}
ptr_glGetVertexAttribivNV :: FunPtr (GLuint -> GLenum -> Ptr GLint -> IO ())
ptr_glGetVertexAttribivNV = unsafePerformIO $ getCommand "glGetVertexAttribivNV"

-- glGetVideoCaptureStreamdvNV -------------------------------------------------

glGetVideoCaptureStreamdvNV
  :: GLuint -- ^ @video_capture_slot@.
  -> GLuint -- ^ @stream@.
  -> GLenum -- ^ @pname@.
  -> Ptr GLdouble -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLdouble@.
  -> IO ()
glGetVideoCaptureStreamdvNV = dyn_glGetVideoCaptureStreamdvNV ptr_glGetVideoCaptureStreamdvNV

foreign import CALLCONV "dynamic" dyn_glGetVideoCaptureStreamdvNV
  :: FunPtr (GLuint -> GLuint -> GLenum -> Ptr GLdouble -> IO ())
  ->         GLuint -> GLuint -> GLenum -> Ptr GLdouble -> IO ()

{-# NOINLINE ptr_glGetVideoCaptureStreamdvNV #-}
ptr_glGetVideoCaptureStreamdvNV :: FunPtr (GLuint -> GLuint -> GLenum -> Ptr GLdouble -> IO ())
ptr_glGetVideoCaptureStreamdvNV = unsafePerformIO $ getCommand "glGetVideoCaptureStreamdvNV"

-- glGetVideoCaptureStreamfvNV -------------------------------------------------

glGetVideoCaptureStreamfvNV
  :: GLuint -- ^ @video_capture_slot@.
  -> GLuint -- ^ @stream@.
  -> GLenum -- ^ @pname@.
  -> Ptr GLfloat -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLfloat@.
  -> IO ()
glGetVideoCaptureStreamfvNV = dyn_glGetVideoCaptureStreamfvNV ptr_glGetVideoCaptureStreamfvNV

foreign import CALLCONV "dynamic" dyn_glGetVideoCaptureStreamfvNV
  :: FunPtr (GLuint -> GLuint -> GLenum -> Ptr GLfloat -> IO ())
  ->         GLuint -> GLuint -> GLenum -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glGetVideoCaptureStreamfvNV #-}
ptr_glGetVideoCaptureStreamfvNV :: FunPtr (GLuint -> GLuint -> GLenum -> Ptr GLfloat -> IO ())
ptr_glGetVideoCaptureStreamfvNV = unsafePerformIO $ getCommand "glGetVideoCaptureStreamfvNV"

-- glGetVideoCaptureStreamivNV -------------------------------------------------

glGetVideoCaptureStreamivNV
  :: GLuint -- ^ @video_capture_slot@.
  -> GLuint -- ^ @stream@.
  -> GLenum -- ^ @pname@.
  -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLint@.
  -> IO ()
glGetVideoCaptureStreamivNV = dyn_glGetVideoCaptureStreamivNV ptr_glGetVideoCaptureStreamivNV

foreign import CALLCONV "dynamic" dyn_glGetVideoCaptureStreamivNV
  :: FunPtr (GLuint -> GLuint -> GLenum -> Ptr GLint -> IO ())
  ->         GLuint -> GLuint -> GLenum -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glGetVideoCaptureStreamivNV #-}
ptr_glGetVideoCaptureStreamivNV :: FunPtr (GLuint -> GLuint -> GLenum -> Ptr GLint -> IO ())
ptr_glGetVideoCaptureStreamivNV = unsafePerformIO $ getCommand "glGetVideoCaptureStreamivNV"

-- glGetVideoCaptureivNV -------------------------------------------------------

glGetVideoCaptureivNV
  :: GLuint -- ^ @video_capture_slot@.
  -> GLenum -- ^ @pname@.
  -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLint@.
  -> IO ()
glGetVideoCaptureivNV = dyn_glGetVideoCaptureivNV ptr_glGetVideoCaptureivNV

foreign import CALLCONV "dynamic" dyn_glGetVideoCaptureivNV
  :: FunPtr (GLuint -> GLenum -> Ptr GLint -> IO ())
  ->         GLuint -> GLenum -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glGetVideoCaptureivNV #-}
ptr_glGetVideoCaptureivNV :: FunPtr (GLuint -> GLenum -> Ptr GLint -> IO ())
ptr_glGetVideoCaptureivNV = unsafePerformIO $ getCommand "glGetVideoCaptureivNV"

-- glGetVideoi64vNV ------------------------------------------------------------

glGetVideoi64vNV
  :: GLuint -- ^ @video_slot@.
  -> GLenum -- ^ @pname@.
  -> Ptr GLint64EXT -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLint64EXT@.
  -> IO ()
glGetVideoi64vNV = dyn_glGetVideoi64vNV ptr_glGetVideoi64vNV

foreign import CALLCONV "dynamic" dyn_glGetVideoi64vNV
  :: FunPtr (GLuint -> GLenum -> Ptr GLint64EXT -> IO ())
  ->         GLuint -> GLenum -> Ptr GLint64EXT -> IO ()

{-# NOINLINE ptr_glGetVideoi64vNV #-}
ptr_glGetVideoi64vNV :: FunPtr (GLuint -> GLenum -> Ptr GLint64EXT -> IO ())
ptr_glGetVideoi64vNV = unsafePerformIO $ getCommand "glGetVideoi64vNV"

-- glGetVideoivNV --------------------------------------------------------------

glGetVideoivNV
  :: GLuint -- ^ @video_slot@.
  -> GLenum -- ^ @pname@.
  -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLint@.
  -> IO ()
glGetVideoivNV = dyn_glGetVideoivNV ptr_glGetVideoivNV

foreign import CALLCONV "dynamic" dyn_glGetVideoivNV
  :: FunPtr (GLuint -> GLenum -> Ptr GLint -> IO ())
  ->         GLuint -> GLenum -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glGetVideoivNV #-}
ptr_glGetVideoivNV :: FunPtr (GLuint -> GLenum -> Ptr GLint -> IO ())
ptr_glGetVideoivNV = unsafePerformIO $ getCommand "glGetVideoivNV"

-- glGetVideoui64vNV -----------------------------------------------------------

glGetVideoui64vNV
  :: GLuint -- ^ @video_slot@.
  -> GLenum -- ^ @pname@.
  -> Ptr GLuint64EXT -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLuint64EXT@.
  -> IO ()
glGetVideoui64vNV = dyn_glGetVideoui64vNV ptr_glGetVideoui64vNV

foreign import CALLCONV "dynamic" dyn_glGetVideoui64vNV
  :: FunPtr (GLuint -> GLenum -> Ptr GLuint64EXT -> IO ())
  ->         GLuint -> GLenum -> Ptr GLuint64EXT -> IO ()

{-# NOINLINE ptr_glGetVideoui64vNV #-}
ptr_glGetVideoui64vNV :: FunPtr (GLuint -> GLenum -> Ptr GLuint64EXT -> IO ())
ptr_glGetVideoui64vNV = unsafePerformIO $ getCommand "glGetVideoui64vNV"

-- glGetVideouivNV -------------------------------------------------------------

glGetVideouivNV
  :: GLuint -- ^ @video_slot@.
  -> GLenum -- ^ @pname@.
  -> Ptr GLuint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLuint@.
  -> IO ()
glGetVideouivNV = dyn_glGetVideouivNV ptr_glGetVideouivNV

foreign import CALLCONV "dynamic" dyn_glGetVideouivNV
  :: FunPtr (GLuint -> GLenum -> Ptr GLuint -> IO ())
  ->         GLuint -> GLenum -> Ptr GLuint -> IO ()

{-# NOINLINE ptr_glGetVideouivNV #-}
ptr_glGetVideouivNV :: FunPtr (GLuint -> GLenum -> Ptr GLuint -> IO ())
ptr_glGetVideouivNV = unsafePerformIO $ getCommand "glGetVideouivNV"

-- glGetnColorTable ------------------------------------------------------------

glGetnColorTable
  :: GLenum -- ^ @target@.
  -> GLenum -- ^ @format@.
  -> GLenum -- ^ @type@.
  -> GLsizei -- ^ @bufSize@.
  -> Ptr a -- ^ @table@.
  -> IO ()
glGetnColorTable = dyn_glGetnColorTable ptr_glGetnColorTable

foreign import CALLCONV "dynamic" dyn_glGetnColorTable
  :: FunPtr (GLenum -> GLenum -> GLenum -> GLsizei -> Ptr a -> IO ())
  ->         GLenum -> GLenum -> GLenum -> GLsizei -> Ptr a -> IO ()

{-# NOINLINE ptr_glGetnColorTable #-}
ptr_glGetnColorTable :: FunPtr (GLenum -> GLenum -> GLenum -> GLsizei -> Ptr a -> IO ())
ptr_glGetnColorTable = unsafePerformIO $ getCommand "glGetnColorTable"

-- glGetnColorTableARB ---------------------------------------------------------

glGetnColorTableARB
  :: GLenum -- ^ @target@.
  -> GLenum -- ^ @format@.
  -> GLenum -- ^ @type@.
  -> GLsizei -- ^ @bufSize@.
  -> Ptr a -- ^ @table@ pointing to @bufSize@ elements of type @a@.
  -> IO ()
glGetnColorTableARB = dyn_glGetnColorTableARB ptr_glGetnColorTableARB

foreign import CALLCONV "dynamic" dyn_glGetnColorTableARB
  :: FunPtr (GLenum -> GLenum -> GLenum -> GLsizei -> Ptr a -> IO ())
  ->         GLenum -> GLenum -> GLenum -> GLsizei -> Ptr a -> IO ()

{-# NOINLINE ptr_glGetnColorTableARB #-}
ptr_glGetnColorTableARB :: FunPtr (GLenum -> GLenum -> GLenum -> GLsizei -> Ptr a -> IO ())
ptr_glGetnColorTableARB = unsafePerformIO $ getCommand "glGetnColorTableARB"

-- glGetnCompressedTexImage ----------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glGetCompressedTexImage.xhtml OpenGL 4.x>
glGetnCompressedTexImage
  :: GLenum -- ^ @target@.
  -> GLint -- ^ @lod@.
  -> GLsizei -- ^ @bufSize@.
  -> Ptr a -- ^ @pixels@.
  -> IO ()
glGetnCompressedTexImage = dyn_glGetnCompressedTexImage ptr_glGetnCompressedTexImage

foreign import CALLCONV "dynamic" dyn_glGetnCompressedTexImage
  :: FunPtr (GLenum -> GLint -> GLsizei -> Ptr a -> IO ())
  ->         GLenum -> GLint -> GLsizei -> Ptr a -> IO ()

{-# NOINLINE ptr_glGetnCompressedTexImage #-}
ptr_glGetnCompressedTexImage :: FunPtr (GLenum -> GLint -> GLsizei -> Ptr a -> IO ())
ptr_glGetnCompressedTexImage = unsafePerformIO $ getCommand "glGetnCompressedTexImage"

-- glGetnCompressedTexImageARB -------------------------------------------------

glGetnCompressedTexImageARB
  :: GLenum -- ^ @target@.
  -> GLint -- ^ @lod@.
  -> GLsizei -- ^ @bufSize@.
  -> Ptr a -- ^ @img@ pointing to @bufSize@ elements of type @a@.
  -> IO ()
glGetnCompressedTexImageARB = dyn_glGetnCompressedTexImageARB ptr_glGetnCompressedTexImageARB

foreign import CALLCONV "dynamic" dyn_glGetnCompressedTexImageARB
  :: FunPtr (GLenum -> GLint -> GLsizei -> Ptr a -> IO ())
  ->         GLenum -> GLint -> GLsizei -> Ptr a -> IO ()

{-# NOINLINE ptr_glGetnCompressedTexImageARB #-}
ptr_glGetnCompressedTexImageARB :: FunPtr (GLenum -> GLint -> GLsizei -> Ptr a -> IO ())
ptr_glGetnCompressedTexImageARB = unsafePerformIO $ getCommand "glGetnCompressedTexImageARB"

-- glGetnConvolutionFilter -----------------------------------------------------

glGetnConvolutionFilter
  :: GLenum -- ^ @target@.
  -> GLenum -- ^ @format@.
  -> GLenum -- ^ @type@.
  -> GLsizei -- ^ @bufSize@.
  -> Ptr a -- ^ @image@.
  -> IO ()
glGetnConvolutionFilter = dyn_glGetnConvolutionFilter ptr_glGetnConvolutionFilter

foreign import CALLCONV "dynamic" dyn_glGetnConvolutionFilter
  :: FunPtr (GLenum -> GLenum -> GLenum -> GLsizei -> Ptr a -> IO ())
  ->         GLenum -> GLenum -> GLenum -> GLsizei -> Ptr a -> IO ()

{-# NOINLINE ptr_glGetnConvolutionFilter #-}
ptr_glGetnConvolutionFilter :: FunPtr (GLenum -> GLenum -> GLenum -> GLsizei -> Ptr a -> IO ())
ptr_glGetnConvolutionFilter = unsafePerformIO $ getCommand "glGetnConvolutionFilter"

-- glGetnConvolutionFilterARB --------------------------------------------------

glGetnConvolutionFilterARB
  :: GLenum -- ^ @target@.
  -> GLenum -- ^ @format@.
  -> GLenum -- ^ @type@.
  -> GLsizei -- ^ @bufSize@.
  -> Ptr a -- ^ @image@ pointing to @bufSize@ elements of type @a@.
  -> IO ()
glGetnConvolutionFilterARB = dyn_glGetnConvolutionFilterARB ptr_glGetnConvolutionFilterARB

foreign import CALLCONV "dynamic" dyn_glGetnConvolutionFilterARB
  :: FunPtr (GLenum -> GLenum -> GLenum -> GLsizei -> Ptr a -> IO ())
  ->         GLenum -> GLenum -> GLenum -> GLsizei -> Ptr a -> IO ()

{-# NOINLINE ptr_glGetnConvolutionFilterARB #-}
ptr_glGetnConvolutionFilterARB :: FunPtr (GLenum -> GLenum -> GLenum -> GLsizei -> Ptr a -> IO ())
ptr_glGetnConvolutionFilterARB = unsafePerformIO $ getCommand "glGetnConvolutionFilterARB"

-- glGetnHistogram -------------------------------------------------------------

glGetnHistogram
  :: GLenum -- ^ @target@.
  -> GLboolean -- ^ @reset@.
  -> GLenum -- ^ @format@.
  -> GLenum -- ^ @type@.
  -> GLsizei -- ^ @bufSize@.
  -> Ptr a -- ^ @values@.
  -> IO ()
glGetnHistogram = dyn_glGetnHistogram ptr_glGetnHistogram

foreign import CALLCONV "dynamic" dyn_glGetnHistogram
  :: FunPtr (GLenum -> GLboolean -> GLenum -> GLenum -> GLsizei -> Ptr a -> IO ())
  ->         GLenum -> GLboolean -> GLenum -> GLenum -> GLsizei -> Ptr a -> IO ()

{-# NOINLINE ptr_glGetnHistogram #-}
ptr_glGetnHistogram :: FunPtr (GLenum -> GLboolean -> GLenum -> GLenum -> GLsizei -> Ptr a -> IO ())
ptr_glGetnHistogram = unsafePerformIO $ getCommand "glGetnHistogram"

-- glGetnHistogramARB ----------------------------------------------------------

glGetnHistogramARB
  :: GLenum -- ^ @target@.
  -> GLboolean -- ^ @reset@ of type @Boolean@.
  -> GLenum -- ^ @format@.
  -> GLenum -- ^ @type@.
  -> GLsizei -- ^ @bufSize@.
  -> Ptr a -- ^ @values@ pointing to @bufSize@ elements of type @a@.
  -> IO ()
glGetnHistogramARB = dyn_glGetnHistogramARB ptr_glGetnHistogramARB

foreign import CALLCONV "dynamic" dyn_glGetnHistogramARB
  :: FunPtr (GLenum -> GLboolean -> GLenum -> GLenum -> GLsizei -> Ptr a -> IO ())
  ->         GLenum -> GLboolean -> GLenum -> GLenum -> GLsizei -> Ptr a -> IO ()

{-# NOINLINE ptr_glGetnHistogramARB #-}
ptr_glGetnHistogramARB :: FunPtr (GLenum -> GLboolean -> GLenum -> GLenum -> GLsizei -> Ptr a -> IO ())
ptr_glGetnHistogramARB = unsafePerformIO $ getCommand "glGetnHistogramARB"

-- glGetnMapdv -----------------------------------------------------------------

glGetnMapdv
  :: GLenum -- ^ @target@.
  -> GLenum -- ^ @query@.
  -> GLsizei -- ^ @bufSize@.
  -> Ptr GLdouble -- ^ @v@.
  -> IO ()
glGetnMapdv = dyn_glGetnMapdv ptr_glGetnMapdv

foreign import CALLCONV "dynamic" dyn_glGetnMapdv
  :: FunPtr (GLenum -> GLenum -> GLsizei -> Ptr GLdouble -> IO ())
  ->         GLenum -> GLenum -> GLsizei -> Ptr GLdouble -> IO ()

{-# NOINLINE ptr_glGetnMapdv #-}
ptr_glGetnMapdv :: FunPtr (GLenum -> GLenum -> GLsizei -> Ptr GLdouble -> IO ())
ptr_glGetnMapdv = unsafePerformIO $ getCommand "glGetnMapdv"

-- glGetnMapdvARB --------------------------------------------------------------

glGetnMapdvARB
  :: GLenum -- ^ @target@.
  -> GLenum -- ^ @query@.
  -> GLsizei -- ^ @bufSize@.
  -> Ptr GLdouble -- ^ @v@ pointing to @bufSize@ elements of type @GLdouble@.
  -> IO ()
glGetnMapdvARB = dyn_glGetnMapdvARB ptr_glGetnMapdvARB

foreign import CALLCONV "dynamic" dyn_glGetnMapdvARB
  :: FunPtr (GLenum -> GLenum -> GLsizei -> Ptr GLdouble -> IO ())
  ->         GLenum -> GLenum -> GLsizei -> Ptr GLdouble -> IO ()

{-# NOINLINE ptr_glGetnMapdvARB #-}
ptr_glGetnMapdvARB :: FunPtr (GLenum -> GLenum -> GLsizei -> Ptr GLdouble -> IO ())
ptr_glGetnMapdvARB = unsafePerformIO $ getCommand "glGetnMapdvARB"

-- glGetnMapfv -----------------------------------------------------------------

glGetnMapfv
  :: GLenum -- ^ @target@.
  -> GLenum -- ^ @query@.
  -> GLsizei -- ^ @bufSize@.
  -> Ptr GLfloat -- ^ @v@.
  -> IO ()
glGetnMapfv = dyn_glGetnMapfv ptr_glGetnMapfv

foreign import CALLCONV "dynamic" dyn_glGetnMapfv
  :: FunPtr (GLenum -> GLenum -> GLsizei -> Ptr GLfloat -> IO ())
  ->         GLenum -> GLenum -> GLsizei -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glGetnMapfv #-}
ptr_glGetnMapfv :: FunPtr (GLenum -> GLenum -> GLsizei -> Ptr GLfloat -> IO ())
ptr_glGetnMapfv = unsafePerformIO $ getCommand "glGetnMapfv"

-- glGetnMapfvARB --------------------------------------------------------------

glGetnMapfvARB
  :: GLenum -- ^ @target@.
  -> GLenum -- ^ @query@.
  -> GLsizei -- ^ @bufSize@.
  -> Ptr GLfloat -- ^ @v@ pointing to @bufSize@ elements of type @GLfloat@.
  -> IO ()
glGetnMapfvARB = dyn_glGetnMapfvARB ptr_glGetnMapfvARB

foreign import CALLCONV "dynamic" dyn_glGetnMapfvARB
  :: FunPtr (GLenum -> GLenum -> GLsizei -> Ptr GLfloat -> IO ())
  ->         GLenum -> GLenum -> GLsizei -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glGetnMapfvARB #-}
ptr_glGetnMapfvARB :: FunPtr (GLenum -> GLenum -> GLsizei -> Ptr GLfloat -> IO ())
ptr_glGetnMapfvARB = unsafePerformIO $ getCommand "glGetnMapfvARB"

-- glGetnMapiv -----------------------------------------------------------------

glGetnMapiv
  :: GLenum -- ^ @target@.
  -> GLenum -- ^ @query@.
  -> GLsizei -- ^ @bufSize@.
  -> Ptr GLint -- ^ @v@.
  -> IO ()
glGetnMapiv = dyn_glGetnMapiv ptr_glGetnMapiv

foreign import CALLCONV "dynamic" dyn_glGetnMapiv
  :: FunPtr (GLenum -> GLenum -> GLsizei -> Ptr GLint -> IO ())
  ->         GLenum -> GLenum -> GLsizei -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glGetnMapiv #-}
ptr_glGetnMapiv :: FunPtr (GLenum -> GLenum -> GLsizei -> Ptr GLint -> IO ())
ptr_glGetnMapiv = unsafePerformIO $ getCommand "glGetnMapiv"

-- glGetnMapivARB --------------------------------------------------------------

glGetnMapivARB
  :: GLenum -- ^ @target@.
  -> GLenum -- ^ @query@.
  -> GLsizei -- ^ @bufSize@.
  -> Ptr GLint -- ^ @v@ pointing to @bufSize@ elements of type @GLint@.
  -> IO ()
glGetnMapivARB = dyn_glGetnMapivARB ptr_glGetnMapivARB

foreign import CALLCONV "dynamic" dyn_glGetnMapivARB
  :: FunPtr (GLenum -> GLenum -> GLsizei -> Ptr GLint -> IO ())
  ->         GLenum -> GLenum -> GLsizei -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glGetnMapivARB #-}
ptr_glGetnMapivARB :: FunPtr (GLenum -> GLenum -> GLsizei -> Ptr GLint -> IO ())
ptr_glGetnMapivARB = unsafePerformIO $ getCommand "glGetnMapivARB"

-- glGetnMinmax ----------------------------------------------------------------

glGetnMinmax
  :: GLenum -- ^ @target@.
  -> GLboolean -- ^ @reset@.
  -> GLenum -- ^ @format@.
  -> GLenum -- ^ @type@.
  -> GLsizei -- ^ @bufSize@.
  -> Ptr a -- ^ @values@.
  -> IO ()
glGetnMinmax = dyn_glGetnMinmax ptr_glGetnMinmax

foreign import CALLCONV "dynamic" dyn_glGetnMinmax
  :: FunPtr (GLenum -> GLboolean -> GLenum -> GLenum -> GLsizei -> Ptr a -> IO ())
  ->         GLenum -> GLboolean -> GLenum -> GLenum -> GLsizei -> Ptr a -> IO ()

{-# NOINLINE ptr_glGetnMinmax #-}
ptr_glGetnMinmax :: FunPtr (GLenum -> GLboolean -> GLenum -> GLenum -> GLsizei -> Ptr a -> IO ())
ptr_glGetnMinmax = unsafePerformIO $ getCommand "glGetnMinmax"

-- glGetnMinmaxARB -------------------------------------------------------------

glGetnMinmaxARB
  :: GLenum -- ^ @target@.
  -> GLboolean -- ^ @reset@ of type @Boolean@.
  -> GLenum -- ^ @format@.
  -> GLenum -- ^ @type@.
  -> GLsizei -- ^ @bufSize@.
  -> Ptr a -- ^ @values@ pointing to @bufSize@ elements of type @a@.
  -> IO ()
glGetnMinmaxARB = dyn_glGetnMinmaxARB ptr_glGetnMinmaxARB

foreign import CALLCONV "dynamic" dyn_glGetnMinmaxARB
  :: FunPtr (GLenum -> GLboolean -> GLenum -> GLenum -> GLsizei -> Ptr a -> IO ())
  ->         GLenum -> GLboolean -> GLenum -> GLenum -> GLsizei -> Ptr a -> IO ()

{-# NOINLINE ptr_glGetnMinmaxARB #-}
ptr_glGetnMinmaxARB :: FunPtr (GLenum -> GLboolean -> GLenum -> GLenum -> GLsizei -> Ptr a -> IO ())
ptr_glGetnMinmaxARB = unsafePerformIO $ getCommand "glGetnMinmaxARB"

-- glGetnPixelMapfv ------------------------------------------------------------

glGetnPixelMapfv
  :: GLenum -- ^ @map@.
  -> GLsizei -- ^ @bufSize@.
  -> Ptr GLfloat -- ^ @values@.
  -> IO ()
glGetnPixelMapfv = dyn_glGetnPixelMapfv ptr_glGetnPixelMapfv

foreign import CALLCONV "dynamic" dyn_glGetnPixelMapfv
  :: FunPtr (GLenum -> GLsizei -> Ptr GLfloat -> IO ())
  ->         GLenum -> GLsizei -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glGetnPixelMapfv #-}
ptr_glGetnPixelMapfv :: FunPtr (GLenum -> GLsizei -> Ptr GLfloat -> IO ())
ptr_glGetnPixelMapfv = unsafePerformIO $ getCommand "glGetnPixelMapfv"

-- glGetnPixelMapfvARB ---------------------------------------------------------

glGetnPixelMapfvARB
  :: GLenum -- ^ @map@.
  -> GLsizei -- ^ @bufSize@.
  -> Ptr GLfloat -- ^ @values@ pointing to @bufSize@ elements of type @GLfloat@.
  -> IO ()
glGetnPixelMapfvARB = dyn_glGetnPixelMapfvARB ptr_glGetnPixelMapfvARB

foreign import CALLCONV "dynamic" dyn_glGetnPixelMapfvARB
  :: FunPtr (GLenum -> GLsizei -> Ptr GLfloat -> IO ())
  ->         GLenum -> GLsizei -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glGetnPixelMapfvARB #-}
ptr_glGetnPixelMapfvARB :: FunPtr (GLenum -> GLsizei -> Ptr GLfloat -> IO ())
ptr_glGetnPixelMapfvARB = unsafePerformIO $ getCommand "glGetnPixelMapfvARB"

-- glGetnPixelMapuiv -----------------------------------------------------------

glGetnPixelMapuiv
  :: GLenum -- ^ @map@.
  -> GLsizei -- ^ @bufSize@.
  -> Ptr GLuint -- ^ @values@.
  -> IO ()
glGetnPixelMapuiv = dyn_glGetnPixelMapuiv ptr_glGetnPixelMapuiv

foreign import CALLCONV "dynamic" dyn_glGetnPixelMapuiv
  :: FunPtr (GLenum -> GLsizei -> Ptr GLuint -> IO ())
  ->         GLenum -> GLsizei -> Ptr GLuint -> IO ()

{-# NOINLINE ptr_glGetnPixelMapuiv #-}
ptr_glGetnPixelMapuiv :: FunPtr (GLenum -> GLsizei -> Ptr GLuint -> IO ())
ptr_glGetnPixelMapuiv = unsafePerformIO $ getCommand "glGetnPixelMapuiv"

-- glGetnPixelMapuivARB --------------------------------------------------------

glGetnPixelMapuivARB
  :: GLenum -- ^ @map@.
  -> GLsizei -- ^ @bufSize@.
  -> Ptr GLuint -- ^ @values@ pointing to @bufSize@ elements of type @GLuint@.
  -> IO ()
glGetnPixelMapuivARB = dyn_glGetnPixelMapuivARB ptr_glGetnPixelMapuivARB

foreign import CALLCONV "dynamic" dyn_glGetnPixelMapuivARB
  :: FunPtr (GLenum -> GLsizei -> Ptr GLuint -> IO ())
  ->         GLenum -> GLsizei -> Ptr GLuint -> IO ()

{-# NOINLINE ptr_glGetnPixelMapuivARB #-}
ptr_glGetnPixelMapuivARB :: FunPtr (GLenum -> GLsizei -> Ptr GLuint -> IO ())
ptr_glGetnPixelMapuivARB = unsafePerformIO $ getCommand "glGetnPixelMapuivARB"

-- glGetnPixelMapusv -----------------------------------------------------------

glGetnPixelMapusv
  :: GLenum -- ^ @map@.
  -> GLsizei -- ^ @bufSize@.
  -> Ptr GLushort -- ^ @values@.
  -> IO ()
glGetnPixelMapusv = dyn_glGetnPixelMapusv ptr_glGetnPixelMapusv

foreign import CALLCONV "dynamic" dyn_glGetnPixelMapusv
  :: FunPtr (GLenum -> GLsizei -> Ptr GLushort -> IO ())
  ->         GLenum -> GLsizei -> Ptr GLushort -> IO ()

{-# NOINLINE ptr_glGetnPixelMapusv #-}
ptr_glGetnPixelMapusv :: FunPtr (GLenum -> GLsizei -> Ptr GLushort -> IO ())
ptr_glGetnPixelMapusv = unsafePerformIO $ getCommand "glGetnPixelMapusv"

-- glGetnPixelMapusvARB --------------------------------------------------------

glGetnPixelMapusvARB
  :: GLenum -- ^ @map@.
  -> GLsizei -- ^ @bufSize@.
  -> Ptr GLushort -- ^ @values@ pointing to @bufSize@ elements of type @GLushort@.
  -> IO ()
glGetnPixelMapusvARB = dyn_glGetnPixelMapusvARB ptr_glGetnPixelMapusvARB

foreign import CALLCONV "dynamic" dyn_glGetnPixelMapusvARB
  :: FunPtr (GLenum -> GLsizei -> Ptr GLushort -> IO ())
  ->         GLenum -> GLsizei -> Ptr GLushort -> IO ()

{-# NOINLINE ptr_glGetnPixelMapusvARB #-}
ptr_glGetnPixelMapusvARB :: FunPtr (GLenum -> GLsizei -> Ptr GLushort -> IO ())
ptr_glGetnPixelMapusvARB = unsafePerformIO $ getCommand "glGetnPixelMapusvARB"

-- glGetnPolygonStipple --------------------------------------------------------

glGetnPolygonStipple
  :: GLsizei -- ^ @bufSize@.
  -> Ptr GLubyte -- ^ @pattern@.
  -> IO ()
glGetnPolygonStipple = dyn_glGetnPolygonStipple ptr_glGetnPolygonStipple

foreign import CALLCONV "dynamic" dyn_glGetnPolygonStipple
  :: FunPtr (GLsizei -> Ptr GLubyte -> IO ())
  ->         GLsizei -> Ptr GLubyte -> IO ()

{-# NOINLINE ptr_glGetnPolygonStipple #-}
ptr_glGetnPolygonStipple :: FunPtr (GLsizei -> Ptr GLubyte -> IO ())
ptr_glGetnPolygonStipple = unsafePerformIO $ getCommand "glGetnPolygonStipple"

-- glGetnPolygonStippleARB -----------------------------------------------------

glGetnPolygonStippleARB
  :: GLsizei -- ^ @bufSize@.
  -> Ptr GLubyte -- ^ @pattern@ pointing to @bufSize@ elements of type @GLubyte@.
  -> IO ()
glGetnPolygonStippleARB = dyn_glGetnPolygonStippleARB ptr_glGetnPolygonStippleARB

foreign import CALLCONV "dynamic" dyn_glGetnPolygonStippleARB
  :: FunPtr (GLsizei -> Ptr GLubyte -> IO ())
  ->         GLsizei -> Ptr GLubyte -> IO ()

{-# NOINLINE ptr_glGetnPolygonStippleARB #-}
ptr_glGetnPolygonStippleARB :: FunPtr (GLsizei -> Ptr GLubyte -> IO ())
ptr_glGetnPolygonStippleARB = unsafePerformIO $ getCommand "glGetnPolygonStippleARB"

-- glGetnSeparableFilter -------------------------------------------------------

glGetnSeparableFilter
  :: GLenum -- ^ @target@.
  -> GLenum -- ^ @format@.
  -> GLenum -- ^ @type@.
  -> GLsizei -- ^ @rowBufSize@.
  -> Ptr a -- ^ @row@.
  -> GLsizei -- ^ @columnBufSize@.
  -> Ptr b -- ^ @column@.
  -> Ptr c -- ^ @span@.
  -> IO ()
glGetnSeparableFilter = dyn_glGetnSeparableFilter ptr_glGetnSeparableFilter

foreign import CALLCONV "dynamic" dyn_glGetnSeparableFilter
  :: FunPtr (GLenum -> GLenum -> GLenum -> GLsizei -> Ptr a -> GLsizei -> Ptr b -> Ptr c -> IO ())
  ->         GLenum -> GLenum -> GLenum -> GLsizei -> Ptr a -> GLsizei -> Ptr b -> Ptr c -> IO ()

{-# NOINLINE ptr_glGetnSeparableFilter #-}
ptr_glGetnSeparableFilter :: FunPtr (GLenum -> GLenum -> GLenum -> GLsizei -> Ptr a -> GLsizei -> Ptr b -> Ptr c -> IO ())
ptr_glGetnSeparableFilter = unsafePerformIO $ getCommand "glGetnSeparableFilter"

-- glGetnSeparableFilterARB ----------------------------------------------------

glGetnSeparableFilterARB
  :: GLenum -- ^ @target@.
  -> GLenum -- ^ @format@.
  -> GLenum -- ^ @type@.
  -> GLsizei -- ^ @rowBufSize@.
  -> Ptr a -- ^ @row@ pointing to @rowBufSize@ elements of type @a@.
  -> GLsizei -- ^ @columnBufSize@.
  -> Ptr b -- ^ @column@ pointing to @columnBufSize@ elements of type @b@.
  -> Ptr c -- ^ @span@ pointing to @0@ elements of type @c@.
  -> IO ()
glGetnSeparableFilterARB = dyn_glGetnSeparableFilterARB ptr_glGetnSeparableFilterARB

foreign import CALLCONV "dynamic" dyn_glGetnSeparableFilterARB
  :: FunPtr (GLenum -> GLenum -> GLenum -> GLsizei -> Ptr a -> GLsizei -> Ptr b -> Ptr c -> IO ())
  ->         GLenum -> GLenum -> GLenum -> GLsizei -> Ptr a -> GLsizei -> Ptr b -> Ptr c -> IO ()

{-# NOINLINE ptr_glGetnSeparableFilterARB #-}
ptr_glGetnSeparableFilterARB :: FunPtr (GLenum -> GLenum -> GLenum -> GLsizei -> Ptr a -> GLsizei -> Ptr b -> Ptr c -> IO ())
ptr_glGetnSeparableFilterARB = unsafePerformIO $ getCommand "glGetnSeparableFilterARB"

-- glGetnTexImage --------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glGetTexImage.xhtml OpenGL 4.x>
glGetnTexImage
  :: GLenum -- ^ @target@.
  -> GLint -- ^ @level@.
  -> GLenum -- ^ @format@.
  -> GLenum -- ^ @type@.
  -> GLsizei -- ^ @bufSize@.
  -> Ptr a -- ^ @pixels@.
  -> IO ()
glGetnTexImage = dyn_glGetnTexImage ptr_glGetnTexImage

foreign import CALLCONV "dynamic" dyn_glGetnTexImage
  :: FunPtr (GLenum -> GLint -> GLenum -> GLenum -> GLsizei -> Ptr a -> IO ())
  ->         GLenum -> GLint -> GLenum -> GLenum -> GLsizei -> Ptr a -> IO ()

{-# NOINLINE ptr_glGetnTexImage #-}
ptr_glGetnTexImage :: FunPtr (GLenum -> GLint -> GLenum -> GLenum -> GLsizei -> Ptr a -> IO ())
ptr_glGetnTexImage = unsafePerformIO $ getCommand "glGetnTexImage"

-- glGetnTexImageARB -----------------------------------------------------------

glGetnTexImageARB
  :: GLenum -- ^ @target@.
  -> GLint -- ^ @level@.
  -> GLenum -- ^ @format@.
  -> GLenum -- ^ @type@.
  -> GLsizei -- ^ @bufSize@.
  -> Ptr a -- ^ @img@ pointing to @bufSize@ elements of type @a@.
  -> IO ()
glGetnTexImageARB = dyn_glGetnTexImageARB ptr_glGetnTexImageARB

foreign import CALLCONV "dynamic" dyn_glGetnTexImageARB
  :: FunPtr (GLenum -> GLint -> GLenum -> GLenum -> GLsizei -> Ptr a -> IO ())
  ->         GLenum -> GLint -> GLenum -> GLenum -> GLsizei -> Ptr a -> IO ()

{-# NOINLINE ptr_glGetnTexImageARB #-}
ptr_glGetnTexImageARB :: FunPtr (GLenum -> GLint -> GLenum -> GLenum -> GLsizei -> Ptr a -> IO ())
ptr_glGetnTexImageARB = unsafePerformIO $ getCommand "glGetnTexImageARB"

-- glGetnUniformdv -------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glGetUniform.xhtml OpenGL 4.x>
glGetnUniformdv
  :: GLuint -- ^ @program@.
  -> GLint -- ^ @location@.
  -> GLsizei -- ^ @bufSize@.
  -> Ptr GLdouble -- ^ @params@.
  -> IO ()
glGetnUniformdv = dyn_glGetnUniformdv ptr_glGetnUniformdv

foreign import CALLCONV "dynamic" dyn_glGetnUniformdv
  :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLdouble -> IO ())
  ->         GLuint -> GLint -> GLsizei -> Ptr GLdouble -> IO ()

{-# NOINLINE ptr_glGetnUniformdv #-}
ptr_glGetnUniformdv :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLdouble -> IO ())
ptr_glGetnUniformdv = unsafePerformIO $ getCommand "glGetnUniformdv"

-- glGetnUniformdvARB ----------------------------------------------------------

glGetnUniformdvARB
  :: GLuint -- ^ @program@.
  -> GLint -- ^ @location@.
  -> GLsizei -- ^ @bufSize@.
  -> Ptr GLdouble -- ^ @params@ pointing to @bufSize@ elements of type @GLdouble@.
  -> IO ()
glGetnUniformdvARB = dyn_glGetnUniformdvARB ptr_glGetnUniformdvARB

foreign import CALLCONV "dynamic" dyn_glGetnUniformdvARB
  :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLdouble -> IO ())
  ->         GLuint -> GLint -> GLsizei -> Ptr GLdouble -> IO ()

{-# NOINLINE ptr_glGetnUniformdvARB #-}
ptr_glGetnUniformdvARB :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLdouble -> IO ())
ptr_glGetnUniformdvARB = unsafePerformIO $ getCommand "glGetnUniformdvARB"

-- glGetnUniformfv -------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glGetUniform.xhtml OpenGL 4.x>
glGetnUniformfv
  :: GLuint -- ^ @program@.
  -> GLint -- ^ @location@.
  -> GLsizei -- ^ @bufSize@.
  -> Ptr GLfloat -- ^ @params@.
  -> IO ()
glGetnUniformfv = dyn_glGetnUniformfv ptr_glGetnUniformfv

foreign import CALLCONV "dynamic" dyn_glGetnUniformfv
  :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLfloat -> IO ())
  ->         GLuint -> GLint -> GLsizei -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glGetnUniformfv #-}
ptr_glGetnUniformfv :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLfloat -> IO ())
ptr_glGetnUniformfv = unsafePerformIO $ getCommand "glGetnUniformfv"

-- glGetnUniformfvARB ----------------------------------------------------------

glGetnUniformfvARB
  :: GLuint -- ^ @program@.
  -> GLint -- ^ @location@.
  -> GLsizei -- ^ @bufSize@.
  -> Ptr GLfloat -- ^ @params@ pointing to @bufSize@ elements of type @GLfloat@.
  -> IO ()
glGetnUniformfvARB = dyn_glGetnUniformfvARB ptr_glGetnUniformfvARB

foreign import CALLCONV "dynamic" dyn_glGetnUniformfvARB
  :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLfloat -> IO ())
  ->         GLuint -> GLint -> GLsizei -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glGetnUniformfvARB #-}
ptr_glGetnUniformfvARB :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLfloat -> IO ())
ptr_glGetnUniformfvARB = unsafePerformIO $ getCommand "glGetnUniformfvARB"

-- glGetnUniformfvEXT ----------------------------------------------------------

glGetnUniformfvEXT
  :: GLuint -- ^ @program@.
  -> GLint -- ^ @location@.
  -> GLsizei -- ^ @bufSize@.
  -> Ptr GLfloat -- ^ @params@ pointing to @bufSize@ elements of type @GLfloat@.
  -> IO ()
glGetnUniformfvEXT = dyn_glGetnUniformfvEXT ptr_glGetnUniformfvEXT

foreign import CALLCONV "dynamic" dyn_glGetnUniformfvEXT
  :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLfloat -> IO ())
  ->         GLuint -> GLint -> GLsizei -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glGetnUniformfvEXT #-}
ptr_glGetnUniformfvEXT :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLfloat -> IO ())
ptr_glGetnUniformfvEXT = unsafePerformIO $ getCommand "glGetnUniformfvEXT"

-- glGetnUniformfvKHR ----------------------------------------------------------

glGetnUniformfvKHR
  :: GLuint -- ^ @program@.
  -> GLint -- ^ @location@.
  -> GLsizei -- ^ @bufSize@.
  -> Ptr GLfloat -- ^ @params@.
  -> IO ()
glGetnUniformfvKHR = dyn_glGetnUniformfvKHR ptr_glGetnUniformfvKHR

foreign import CALLCONV "dynamic" dyn_glGetnUniformfvKHR
  :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLfloat -> IO ())
  ->         GLuint -> GLint -> GLsizei -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glGetnUniformfvKHR #-}
ptr_glGetnUniformfvKHR :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLfloat -> IO ())
ptr_glGetnUniformfvKHR = unsafePerformIO $ getCommand "glGetnUniformfvKHR"

-- glGetnUniformiv -------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glGetUniform.xhtml OpenGL 4.x>
glGetnUniformiv
  :: GLuint -- ^ @program@.
  -> GLint -- ^ @location@.
  -> GLsizei -- ^ @bufSize@.
  -> Ptr GLint -- ^ @params@.
  -> IO ()
glGetnUniformiv = dyn_glGetnUniformiv ptr_glGetnUniformiv

foreign import CALLCONV "dynamic" dyn_glGetnUniformiv
  :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLint -> IO ())
  ->         GLuint -> GLint -> GLsizei -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glGetnUniformiv #-}
ptr_glGetnUniformiv :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLint -> IO ())
ptr_glGetnUniformiv = unsafePerformIO $ getCommand "glGetnUniformiv"

-- glGetnUniformivARB ----------------------------------------------------------

glGetnUniformivARB
  :: GLuint -- ^ @program@.
  -> GLint -- ^ @location@.
  -> GLsizei -- ^ @bufSize@.
  -> Ptr GLint -- ^ @params@ pointing to @bufSize@ elements of type @GLint@.
  -> IO ()
glGetnUniformivARB = dyn_glGetnUniformivARB ptr_glGetnUniformivARB

foreign import CALLCONV "dynamic" dyn_glGetnUniformivARB
  :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLint -> IO ())
  ->         GLuint -> GLint -> GLsizei -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glGetnUniformivARB #-}
ptr_glGetnUniformivARB :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLint -> IO ())
ptr_glGetnUniformivARB = unsafePerformIO $ getCommand "glGetnUniformivARB"

-- glGetnUniformivEXT ----------------------------------------------------------

glGetnUniformivEXT
  :: GLuint -- ^ @program@.
  -> GLint -- ^ @location@.
  -> GLsizei -- ^ @bufSize@.
  -> Ptr GLint -- ^ @params@ pointing to @bufSize@ elements of type @GLint@.
  -> IO ()
glGetnUniformivEXT = dyn_glGetnUniformivEXT ptr_glGetnUniformivEXT

foreign import CALLCONV "dynamic" dyn_glGetnUniformivEXT
  :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLint -> IO ())
  ->         GLuint -> GLint -> GLsizei -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glGetnUniformivEXT #-}
ptr_glGetnUniformivEXT :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLint -> IO ())
ptr_glGetnUniformivEXT = unsafePerformIO $ getCommand "glGetnUniformivEXT"

-- glGetnUniformivKHR ----------------------------------------------------------

glGetnUniformivKHR
  :: GLuint -- ^ @program@.
  -> GLint -- ^ @location@.
  -> GLsizei -- ^ @bufSize@.
  -> Ptr GLint -- ^ @params@.
  -> IO ()
glGetnUniformivKHR = dyn_glGetnUniformivKHR ptr_glGetnUniformivKHR

foreign import CALLCONV "dynamic" dyn_glGetnUniformivKHR
  :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLint -> IO ())
  ->         GLuint -> GLint -> GLsizei -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glGetnUniformivKHR #-}
ptr_glGetnUniformivKHR :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLint -> IO ())
ptr_glGetnUniformivKHR = unsafePerformIO $ getCommand "glGetnUniformivKHR"

-- glGetnUniformuiv ------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glGetUniform.xhtml OpenGL 4.x>
glGetnUniformuiv
  :: GLuint -- ^ @program@.
  -> GLint -- ^ @location@.
  -> GLsizei -- ^ @bufSize@.
  -> Ptr GLuint -- ^ @params@.
  -> IO ()
glGetnUniformuiv = dyn_glGetnUniformuiv ptr_glGetnUniformuiv

foreign import CALLCONV "dynamic" dyn_glGetnUniformuiv
  :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLuint -> IO ())
  ->         GLuint -> GLint -> GLsizei -> Ptr GLuint -> IO ()

{-# NOINLINE ptr_glGetnUniformuiv #-}
ptr_glGetnUniformuiv :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLuint -> IO ())
ptr_glGetnUniformuiv = unsafePerformIO $ getCommand "glGetnUniformuiv"

-- glGetnUniformuivARB ---------------------------------------------------------

glGetnUniformuivARB
  :: GLuint -- ^ @program@.
  -> GLint -- ^ @location@.
  -> GLsizei -- ^ @bufSize@.
  -> Ptr GLuint -- ^ @params@ pointing to @bufSize@ elements of type @GLuint@.
  -> IO ()
glGetnUniformuivARB = dyn_glGetnUniformuivARB ptr_glGetnUniformuivARB

foreign import CALLCONV "dynamic" dyn_glGetnUniformuivARB
  :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLuint -> IO ())
  ->         GLuint -> GLint -> GLsizei -> Ptr GLuint -> IO ()

{-# NOINLINE ptr_glGetnUniformuivARB #-}
ptr_glGetnUniformuivARB :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLuint -> IO ())
ptr_glGetnUniformuivARB = unsafePerformIO $ getCommand "glGetnUniformuivARB"

-- glGetnUniformuivKHR ---------------------------------------------------------

glGetnUniformuivKHR
  :: GLuint -- ^ @program@.
  -> GLint -- ^ @location@.
  -> GLsizei -- ^ @bufSize@.
  -> Ptr GLuint -- ^ @params@.
  -> IO ()
glGetnUniformuivKHR = dyn_glGetnUniformuivKHR ptr_glGetnUniformuivKHR

foreign import CALLCONV "dynamic" dyn_glGetnUniformuivKHR
  :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLuint -> IO ())
  ->         GLuint -> GLint -> GLsizei -> Ptr GLuint -> IO ()

{-# NOINLINE ptr_glGetnUniformuivKHR #-}
ptr_glGetnUniformuivKHR :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLuint -> IO ())
ptr_glGetnUniformuivKHR = unsafePerformIO $ getCommand "glGetnUniformuivKHR"

-- glGlobalAlphaFactorbSUN -----------------------------------------------------

glGlobalAlphaFactorbSUN
  :: GLbyte -- ^ @factor@.
  -> IO ()
glGlobalAlphaFactorbSUN = dyn_glGlobalAlphaFactorbSUN ptr_glGlobalAlphaFactorbSUN

foreign import CALLCONV "dynamic" dyn_glGlobalAlphaFactorbSUN
  :: FunPtr (GLbyte -> IO ())
  ->         GLbyte -> IO ()

{-# NOINLINE ptr_glGlobalAlphaFactorbSUN #-}
ptr_glGlobalAlphaFactorbSUN :: FunPtr (GLbyte -> IO ())
ptr_glGlobalAlphaFactorbSUN = unsafePerformIO $ getCommand "glGlobalAlphaFactorbSUN"

-- glGlobalAlphaFactordSUN -----------------------------------------------------

glGlobalAlphaFactordSUN
  :: GLdouble -- ^ @factor@.
  -> IO ()
glGlobalAlphaFactordSUN = dyn_glGlobalAlphaFactordSUN ptr_glGlobalAlphaFactordSUN

foreign import CALLCONV "dynamic" dyn_glGlobalAlphaFactordSUN
  :: FunPtr (GLdouble -> IO ())
  ->         GLdouble -> IO ()

{-# NOINLINE ptr_glGlobalAlphaFactordSUN #-}
ptr_glGlobalAlphaFactordSUN :: FunPtr (GLdouble -> IO ())
ptr_glGlobalAlphaFactordSUN = unsafePerformIO $ getCommand "glGlobalAlphaFactordSUN"

-- glGlobalAlphaFactorfSUN -----------------------------------------------------

glGlobalAlphaFactorfSUN
  :: GLfloat -- ^ @factor@.
  -> IO ()
glGlobalAlphaFactorfSUN = dyn_glGlobalAlphaFactorfSUN ptr_glGlobalAlphaFactorfSUN

foreign import CALLCONV "dynamic" dyn_glGlobalAlphaFactorfSUN
  :: FunPtr (GLfloat -> IO ())
  ->         GLfloat -> IO ()

{-# NOINLINE ptr_glGlobalAlphaFactorfSUN #-}
ptr_glGlobalAlphaFactorfSUN :: FunPtr (GLfloat -> IO ())
ptr_glGlobalAlphaFactorfSUN = unsafePerformIO $ getCommand "glGlobalAlphaFactorfSUN"

-- glGlobalAlphaFactoriSUN -----------------------------------------------------

glGlobalAlphaFactoriSUN
  :: GLint -- ^ @factor@.
  -> IO ()
glGlobalAlphaFactoriSUN = dyn_glGlobalAlphaFactoriSUN ptr_glGlobalAlphaFactoriSUN

foreign import CALLCONV "dynamic" dyn_glGlobalAlphaFactoriSUN
  :: FunPtr (GLint -> IO ())
  ->         GLint -> IO ()

{-# NOINLINE ptr_glGlobalAlphaFactoriSUN #-}
ptr_glGlobalAlphaFactoriSUN :: FunPtr (GLint -> IO ())
ptr_glGlobalAlphaFactoriSUN = unsafePerformIO $ getCommand "glGlobalAlphaFactoriSUN"

-- glGlobalAlphaFactorsSUN -----------------------------------------------------

glGlobalAlphaFactorsSUN
  :: GLshort -- ^ @factor@.
  -> IO ()
glGlobalAlphaFactorsSUN = dyn_glGlobalAlphaFactorsSUN ptr_glGlobalAlphaFactorsSUN

foreign import CALLCONV "dynamic" dyn_glGlobalAlphaFactorsSUN
  :: FunPtr (GLshort -> IO ())
  ->         GLshort -> IO ()

{-# NOINLINE ptr_glGlobalAlphaFactorsSUN #-}
ptr_glGlobalAlphaFactorsSUN :: FunPtr (GLshort -> IO ())
ptr_glGlobalAlphaFactorsSUN = unsafePerformIO $ getCommand "glGlobalAlphaFactorsSUN"

-- glGlobalAlphaFactorubSUN ----------------------------------------------------

glGlobalAlphaFactorubSUN
  :: GLubyte -- ^ @factor@.
  -> IO ()
glGlobalAlphaFactorubSUN = dyn_glGlobalAlphaFactorubSUN ptr_glGlobalAlphaFactorubSUN

foreign import CALLCONV "dynamic" dyn_glGlobalAlphaFactorubSUN
  :: FunPtr (GLubyte -> IO ())
  ->         GLubyte -> IO ()

{-# NOINLINE ptr_glGlobalAlphaFactorubSUN #-}
ptr_glGlobalAlphaFactorubSUN :: FunPtr (GLubyte -> IO ())
ptr_glGlobalAlphaFactorubSUN = unsafePerformIO $ getCommand "glGlobalAlphaFactorubSUN"

-- glGlobalAlphaFactoruiSUN ----------------------------------------------------

glGlobalAlphaFactoruiSUN
  :: GLuint -- ^ @factor@.
  -> IO ()
glGlobalAlphaFactoruiSUN = dyn_glGlobalAlphaFactoruiSUN ptr_glGlobalAlphaFactoruiSUN

foreign import CALLCONV "dynamic" dyn_glGlobalAlphaFactoruiSUN
  :: FunPtr (GLuint -> IO ())
  ->         GLuint -> IO ()

{-# NOINLINE ptr_glGlobalAlphaFactoruiSUN #-}
ptr_glGlobalAlphaFactoruiSUN :: FunPtr (GLuint -> IO ())
ptr_glGlobalAlphaFactoruiSUN = unsafePerformIO $ getCommand "glGlobalAlphaFactoruiSUN"

-- glGlobalAlphaFactorusSUN ----------------------------------------------------

glGlobalAlphaFactorusSUN
  :: GLushort -- ^ @factor@.
  -> IO ()
glGlobalAlphaFactorusSUN = dyn_glGlobalAlphaFactorusSUN ptr_glGlobalAlphaFactorusSUN

foreign import CALLCONV "dynamic" dyn_glGlobalAlphaFactorusSUN
  :: FunPtr (GLushort -> IO ())
  ->         GLushort -> IO ()

{-# NOINLINE ptr_glGlobalAlphaFactorusSUN #-}
ptr_glGlobalAlphaFactorusSUN :: FunPtr (GLushort -> IO ())
ptr_glGlobalAlphaFactorusSUN = unsafePerformIO $ getCommand "glGlobalAlphaFactorusSUN"

-- glHint ----------------------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glHint.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glHint.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glHint.xhtml OpenGL 4.x>
glHint
  :: GLenum -- ^ @target@ of type @HintTarget@.
  -> GLenum -- ^ @mode@ of type @HintMode@.
  -> IO ()
glHint = dyn_glHint ptr_glHint

foreign import CALLCONV "dynamic" dyn_glHint
  :: FunPtr (GLenum -> GLenum -> IO ())
  ->         GLenum -> GLenum -> IO ()

{-# NOINLINE ptr_glHint #-}
ptr_glHint :: FunPtr (GLenum -> GLenum -> IO ())
ptr_glHint = unsafePerformIO $ getCommand "glHint"

-- glHintPGI -------------------------------------------------------------------

glHintPGI
  :: GLenum -- ^ @target@ of type @HintTargetPGI@.
  -> GLint -- ^ @mode@.
  -> IO ()
glHintPGI = dyn_glHintPGI ptr_glHintPGI

foreign import CALLCONV "dynamic" dyn_glHintPGI
  :: FunPtr (GLenum -> GLint -> IO ())
  ->         GLenum -> GLint -> IO ()

{-# NOINLINE ptr_glHintPGI #-}
ptr_glHintPGI :: FunPtr (GLenum -> GLint -> IO ())
ptr_glHintPGI = unsafePerformIO $ getCommand "glHintPGI"

-- glHistogram -----------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glHistogram.xml OpenGL 2.x>
glHistogram
  :: GLenum -- ^ @target@ of type @HistogramTarget@.
  -> GLsizei -- ^ @width@.
  -> GLenum -- ^ @internalformat@ of type @PixelInternalFormat@.
  -> GLboolean -- ^ @sink@ of type @Boolean@.
  -> IO ()
glHistogram = dyn_glHistogram ptr_glHistogram

foreign import CALLCONV "dynamic" dyn_glHistogram
  :: FunPtr (GLenum -> GLsizei -> GLenum -> GLboolean -> IO ())
  ->         GLenum -> GLsizei -> GLenum -> GLboolean -> IO ()

{-# NOINLINE ptr_glHistogram #-}
ptr_glHistogram :: FunPtr (GLenum -> GLsizei -> GLenum -> GLboolean -> IO ())
ptr_glHistogram = unsafePerformIO $ getCommand "glHistogram"

-- glHistogramEXT --------------------------------------------------------------

glHistogramEXT
  :: GLenum -- ^ @target@ of type @HistogramTargetEXT@.
  -> GLsizei -- ^ @width@.
  -> GLenum -- ^ @internalformat@ of type @PixelInternalFormat@.
  -> GLboolean -- ^ @sink@ of type @Boolean@.
  -> IO ()
glHistogramEXT = dyn_glHistogramEXT ptr_glHistogramEXT

foreign import CALLCONV "dynamic" dyn_glHistogramEXT
  :: FunPtr (GLenum -> GLsizei -> GLenum -> GLboolean -> IO ())
  ->         GLenum -> GLsizei -> GLenum -> GLboolean -> IO ()

{-# NOINLINE ptr_glHistogramEXT #-}
ptr_glHistogramEXT :: FunPtr (GLenum -> GLsizei -> GLenum -> GLboolean -> IO ())
ptr_glHistogramEXT = unsafePerformIO $ getCommand "glHistogramEXT"

-- glIglooInterfaceSGIX --------------------------------------------------------

glIglooInterfaceSGIX
  :: GLenum -- ^ @pname@ of type @IglooFunctionSelectSGIX@.
  -> Ptr a -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @IglooParameterSGIX@.
  -> IO ()
glIglooInterfaceSGIX = dyn_glIglooInterfaceSGIX ptr_glIglooInterfaceSGIX

foreign import CALLCONV "dynamic" dyn_glIglooInterfaceSGIX
  :: FunPtr (GLenum -> Ptr a -> IO ())
  ->         GLenum -> Ptr a -> IO ()

{-# NOINLINE ptr_glIglooInterfaceSGIX #-}
ptr_glIglooInterfaceSGIX :: FunPtr (GLenum -> Ptr a -> IO ())
ptr_glIglooInterfaceSGIX = unsafePerformIO $ getCommand "glIglooInterfaceSGIX"

-- glImageTransformParameterfHP ------------------------------------------------

glImageTransformParameterfHP
  :: GLenum -- ^ @target@ of type @ImageTransformTargetHP@.
  -> GLenum -- ^ @pname@ of type @ImageTransformPNameHP@.
  -> GLfloat -- ^ @param@.
  -> IO ()
glImageTransformParameterfHP = dyn_glImageTransformParameterfHP ptr_glImageTransformParameterfHP

foreign import CALLCONV "dynamic" dyn_glImageTransformParameterfHP
  :: FunPtr (GLenum -> GLenum -> GLfloat -> IO ())
  ->         GLenum -> GLenum -> GLfloat -> IO ()

{-# NOINLINE ptr_glImageTransformParameterfHP #-}
ptr_glImageTransformParameterfHP :: FunPtr (GLenum -> GLenum -> GLfloat -> IO ())
ptr_glImageTransformParameterfHP = unsafePerformIO $ getCommand "glImageTransformParameterfHP"

-- glImageTransformParameterfvHP -----------------------------------------------

glImageTransformParameterfvHP
  :: GLenum -- ^ @target@ of type @ImageTransformTargetHP@.
  -> GLenum -- ^ @pname@ of type @ImageTransformPNameHP@.
  -> Ptr GLfloat -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLfloat@.
  -> IO ()
glImageTransformParameterfvHP = dyn_glImageTransformParameterfvHP ptr_glImageTransformParameterfvHP

foreign import CALLCONV "dynamic" dyn_glImageTransformParameterfvHP
  :: FunPtr (GLenum -> GLenum -> Ptr GLfloat -> IO ())
  ->         GLenum -> GLenum -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glImageTransformParameterfvHP #-}
ptr_glImageTransformParameterfvHP :: FunPtr (GLenum -> GLenum -> Ptr GLfloat -> IO ())
ptr_glImageTransformParameterfvHP = unsafePerformIO $ getCommand "glImageTransformParameterfvHP"

-- glImageTransformParameteriHP ------------------------------------------------

glImageTransformParameteriHP
  :: GLenum -- ^ @target@ of type @ImageTransformTargetHP@.
  -> GLenum -- ^ @pname@ of type @ImageTransformPNameHP@.
  -> GLint -- ^ @param@.
  -> IO ()
glImageTransformParameteriHP = dyn_glImageTransformParameteriHP ptr_glImageTransformParameteriHP

foreign import CALLCONV "dynamic" dyn_glImageTransformParameteriHP
  :: FunPtr (GLenum -> GLenum -> GLint -> IO ())
  ->         GLenum -> GLenum -> GLint -> IO ()

{-# NOINLINE ptr_glImageTransformParameteriHP #-}
ptr_glImageTransformParameteriHP :: FunPtr (GLenum -> GLenum -> GLint -> IO ())
ptr_glImageTransformParameteriHP = unsafePerformIO $ getCommand "glImageTransformParameteriHP"

-- glImageTransformParameterivHP -----------------------------------------------

glImageTransformParameterivHP
  :: GLenum -- ^ @target@ of type @ImageTransformTargetHP@.
  -> GLenum -- ^ @pname@ of type @ImageTransformPNameHP@.
  -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLint@.
  -> IO ()
glImageTransformParameterivHP = dyn_glImageTransformParameterivHP ptr_glImageTransformParameterivHP

foreign import CALLCONV "dynamic" dyn_glImageTransformParameterivHP
  :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
  ->         GLenum -> GLenum -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glImageTransformParameterivHP #-}
ptr_glImageTransformParameterivHP :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
ptr_glImageTransformParameterivHP = unsafePerformIO $ getCommand "glImageTransformParameterivHP"

-- glImportSyncEXT -------------------------------------------------------------

glImportSyncEXT
  :: GLenum -- ^ @external_sync_type@.
  -> GLintptr -- ^ @external_sync@.
  -> GLbitfield -- ^ @flags@.
  -> IO GLsync -- ^ of type @sync@.
glImportSyncEXT = dyn_glImportSyncEXT ptr_glImportSyncEXT

foreign import CALLCONV "dynamic" dyn_glImportSyncEXT
  :: FunPtr (GLenum -> GLintptr -> GLbitfield -> IO GLsync)
  ->         GLenum -> GLintptr -> GLbitfield -> IO GLsync

{-# NOINLINE ptr_glImportSyncEXT #-}
ptr_glImportSyncEXT :: FunPtr (GLenum -> GLintptr -> GLbitfield -> IO GLsync)
ptr_glImportSyncEXT = unsafePerformIO $ getCommand "glImportSyncEXT"

-- glIndexFormatNV -------------------------------------------------------------

glIndexFormatNV
  :: GLenum -- ^ @type@.
  -> GLsizei -- ^ @stride@.
  -> IO ()
glIndexFormatNV = dyn_glIndexFormatNV ptr_glIndexFormatNV

foreign import CALLCONV "dynamic" dyn_glIndexFormatNV
  :: FunPtr (GLenum -> GLsizei -> IO ())
  ->         GLenum -> GLsizei -> IO ()

{-# NOINLINE ptr_glIndexFormatNV #-}
ptr_glIndexFormatNV :: FunPtr (GLenum -> GLsizei -> IO ())
ptr_glIndexFormatNV = unsafePerformIO $ getCommand "glIndexFormatNV"

-- glIndexFuncEXT --------------------------------------------------------------

glIndexFuncEXT
  :: GLenum -- ^ @func@ of type @IndexFunctionEXT@.
  -> GLclampf -- ^ @ref@ of type @ClampedFloat32@.
  -> IO ()
glIndexFuncEXT = dyn_glIndexFuncEXT ptr_glIndexFuncEXT

foreign import CALLCONV "dynamic" dyn_glIndexFuncEXT
  :: FunPtr (GLenum -> GLclampf -> IO ())
  ->         GLenum -> GLclampf -> IO ()

{-# NOINLINE ptr_glIndexFuncEXT #-}
ptr_glIndexFuncEXT :: FunPtr (GLenum -> GLclampf -> IO ())
ptr_glIndexFuncEXT = unsafePerformIO $ getCommand "glIndexFuncEXT"

-- glIndexMask -----------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glIndexMask.xml OpenGL 2.x>
glIndexMask
  :: GLuint -- ^ @mask@ of type @MaskedColorIndexValueI@.
  -> IO ()
glIndexMask = dyn_glIndexMask ptr_glIndexMask

foreign import CALLCONV "dynamic" dyn_glIndexMask
  :: FunPtr (GLuint -> IO ())
  ->         GLuint -> IO ()

{-# NOINLINE ptr_glIndexMask #-}
ptr_glIndexMask :: FunPtr (GLuint -> IO ())
ptr_glIndexMask = unsafePerformIO $ getCommand "glIndexMask"

-- glIndexMaterialEXT ----------------------------------------------------------

glIndexMaterialEXT
  :: GLenum -- ^ @face@ of type @MaterialFace@.
  -> GLenum -- ^ @mode@ of type @IndexMaterialParameterEXT@.
  -> IO ()
glIndexMaterialEXT = dyn_glIndexMaterialEXT ptr_glIndexMaterialEXT

foreign import CALLCONV "dynamic" dyn_glIndexMaterialEXT
  :: FunPtr (GLenum -> GLenum -> IO ())
  ->         GLenum -> GLenum -> IO ()

{-# NOINLINE ptr_glIndexMaterialEXT #-}
ptr_glIndexMaterialEXT :: FunPtr (GLenum -> GLenum -> IO ())
ptr_glIndexMaterialEXT = unsafePerformIO $ getCommand "glIndexMaterialEXT"

-- glIndexPointer --------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glIndexPointer.xml OpenGL 2.x>
glIndexPointer
  :: GLenum -- ^ @type@ of type @IndexPointerType@.
  -> GLsizei -- ^ @stride@.
  -> Ptr a -- ^ @pointer@ pointing to @COMPSIZE(type,stride)@ elements of type @a@.
  -> IO ()
glIndexPointer = dyn_glIndexPointer ptr_glIndexPointer

foreign import CALLCONV "dynamic" dyn_glIndexPointer
  :: FunPtr (GLenum -> GLsizei -> Ptr a -> IO ())
  ->         GLenum -> GLsizei -> Ptr a -> IO ()

{-# NOINLINE ptr_glIndexPointer #-}
ptr_glIndexPointer :: FunPtr (GLenum -> GLsizei -> Ptr a -> IO ())
ptr_glIndexPointer = unsafePerformIO $ getCommand "glIndexPointer"

-- glIndexPointerEXT -----------------------------------------------------------

glIndexPointerEXT
  :: GLenum -- ^ @type@ of type @IndexPointerType@.
  -> GLsizei -- ^ @stride@.
  -> GLsizei -- ^ @count@.
  -> Ptr a -- ^ @pointer@ pointing to @COMPSIZE(type,stride,count)@ elements of type @a@.
  -> IO ()
glIndexPointerEXT = dyn_glIndexPointerEXT ptr_glIndexPointerEXT

foreign import CALLCONV "dynamic" dyn_glIndexPointerEXT
  :: FunPtr (GLenum -> GLsizei -> GLsizei -> Ptr a -> IO ())
  ->         GLenum -> GLsizei -> GLsizei -> Ptr a -> IO ()

{-# NOINLINE ptr_glIndexPointerEXT #-}
ptr_glIndexPointerEXT :: FunPtr (GLenum -> GLsizei -> GLsizei -> Ptr a -> IO ())
ptr_glIndexPointerEXT = unsafePerformIO $ getCommand "glIndexPointerEXT"

-- glIndexPointerListIBM -------------------------------------------------------

glIndexPointerListIBM
  :: GLenum -- ^ @type@ of type @IndexPointerType@.
  -> GLint -- ^ @stride@.
  -> Ptr (Ptr a) -- ^ @pointer@ pointing to @COMPSIZE(type,stride)@ elements of type @Ptr a@.
  -> GLint -- ^ @ptrstride@.
  -> IO ()
glIndexPointerListIBM = dyn_glIndexPointerListIBM ptr_glIndexPointerListIBM

foreign import CALLCONV "dynamic" dyn_glIndexPointerListIBM
  :: FunPtr (GLenum -> GLint -> Ptr (Ptr a) -> GLint -> IO ())
  ->         GLenum -> GLint -> Ptr (Ptr a) -> GLint -> IO ()

{-# NOINLINE ptr_glIndexPointerListIBM #-}
ptr_glIndexPointerListIBM :: FunPtr (GLenum -> GLint -> Ptr (Ptr a) -> GLint -> IO ())
ptr_glIndexPointerListIBM = unsafePerformIO $ getCommand "glIndexPointerListIBM"

-- glIndexd --------------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glIndex.xml OpenGL 2.x>
glIndexd
  :: GLdouble -- ^ @c@ of type @ColorIndexValueD@.
  -> IO ()
glIndexd = dyn_glIndexd ptr_glIndexd

foreign import CALLCONV "dynamic" dyn_glIndexd
  :: FunPtr (GLdouble -> IO ())
  ->         GLdouble -> IO ()

{-# NOINLINE ptr_glIndexd #-}
ptr_glIndexd :: FunPtr (GLdouble -> IO ())
ptr_glIndexd = unsafePerformIO $ getCommand "glIndexd"

-- glIndexdv -------------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glIndex.xml OpenGL 2.x>
glIndexdv
  :: Ptr GLdouble -- ^ @c@ pointing to @1@ elements of type @ColorIndexValueD@.
  -> IO ()
glIndexdv = dyn_glIndexdv ptr_glIndexdv

foreign import CALLCONV "dynamic" dyn_glIndexdv
  :: FunPtr (Ptr GLdouble -> IO ())
  ->         Ptr GLdouble -> IO ()

{-# NOINLINE ptr_glIndexdv #-}
ptr_glIndexdv :: FunPtr (Ptr GLdouble -> IO ())
ptr_glIndexdv = unsafePerformIO $ getCommand "glIndexdv"

-- glIndexf --------------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glIndex.xml OpenGL 2.x>
glIndexf
  :: GLfloat -- ^ @c@ of type @ColorIndexValueF@.
  -> IO ()
glIndexf = dyn_glIndexf ptr_glIndexf

foreign import CALLCONV "dynamic" dyn_glIndexf
  :: FunPtr (GLfloat -> IO ())
  ->         GLfloat -> IO ()

{-# NOINLINE ptr_glIndexf #-}
ptr_glIndexf :: FunPtr (GLfloat -> IO ())
ptr_glIndexf = unsafePerformIO $ getCommand "glIndexf"

-- glIndexfv -------------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glIndex.xml OpenGL 2.x>
glIndexfv
  :: Ptr GLfloat -- ^ @c@ pointing to @1@ elements of type @ColorIndexValueF@.
  -> IO ()
glIndexfv = dyn_glIndexfv ptr_glIndexfv

foreign import CALLCONV "dynamic" dyn_glIndexfv
  :: FunPtr (Ptr GLfloat -> IO ())
  ->         Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glIndexfv #-}
ptr_glIndexfv :: FunPtr (Ptr GLfloat -> IO ())
ptr_glIndexfv = unsafePerformIO $ getCommand "glIndexfv"

-- glIndexi --------------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glIndex.xml OpenGL 2.x>
glIndexi
  :: GLint -- ^ @c@ of type @ColorIndexValueI@.
  -> IO ()
glIndexi = dyn_glIndexi ptr_glIndexi

foreign import CALLCONV "dynamic" dyn_glIndexi
  :: FunPtr (GLint -> IO ())
  ->         GLint -> IO ()

{-# NOINLINE ptr_glIndexi #-}
ptr_glIndexi :: FunPtr (GLint -> IO ())
ptr_glIndexi = unsafePerformIO $ getCommand "glIndexi"

-- glIndexiv -------------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glIndex.xml OpenGL 2.x>
glIndexiv
  :: Ptr GLint -- ^ @c@ pointing to @1@ elements of type @ColorIndexValueI@.
  -> IO ()
glIndexiv = dyn_glIndexiv ptr_glIndexiv

foreign import CALLCONV "dynamic" dyn_glIndexiv
  :: FunPtr (Ptr GLint -> IO ())
  ->         Ptr GLint -> IO ()

{-# NOINLINE ptr_glIndexiv #-}
ptr_glIndexiv :: FunPtr (Ptr GLint -> IO ())
ptr_glIndexiv = unsafePerformIO $ getCommand "glIndexiv"

-- glIndexs --------------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glIndex.xml OpenGL 2.x>
glIndexs
  :: GLshort -- ^ @c@ of type @ColorIndexValueS@.
  -> IO ()
glIndexs = dyn_glIndexs ptr_glIndexs

foreign import CALLCONV "dynamic" dyn_glIndexs
  :: FunPtr (GLshort -> IO ())
  ->         GLshort -> IO ()

{-# NOINLINE ptr_glIndexs #-}
ptr_glIndexs :: FunPtr (GLshort -> IO ())
ptr_glIndexs = unsafePerformIO $ getCommand "glIndexs"

-- glIndexsv -------------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glIndex.xml OpenGL 2.x>
glIndexsv
  :: Ptr GLshort -- ^ @c@ pointing to @1@ elements of type @ColorIndexValueS@.
  -> IO ()
glIndexsv = dyn_glIndexsv ptr_glIndexsv

foreign import CALLCONV "dynamic" dyn_glIndexsv
  :: FunPtr (Ptr GLshort -> IO ())
  ->         Ptr GLshort -> IO ()

{-# NOINLINE ptr_glIndexsv #-}
ptr_glIndexsv :: FunPtr (Ptr GLshort -> IO ())
ptr_glIndexsv = unsafePerformIO $ getCommand "glIndexsv"

-- glIndexub -------------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glIndex.xml OpenGL 2.x>
glIndexub
  :: GLubyte -- ^ @c@ of type @ColorIndexValueUB@.
  -> IO ()
glIndexub = dyn_glIndexub ptr_glIndexub

foreign import CALLCONV "dynamic" dyn_glIndexub
  :: FunPtr (GLubyte -> IO ())
  ->         GLubyte -> IO ()

{-# NOINLINE ptr_glIndexub #-}
ptr_glIndexub :: FunPtr (GLubyte -> IO ())
ptr_glIndexub = unsafePerformIO $ getCommand "glIndexub"

-- glIndexubv ------------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glIndex.xml OpenGL 2.x>
glIndexubv
  :: Ptr GLubyte -- ^ @c@ pointing to @1@ elements of type @ColorIndexValueUB@.
  -> IO ()
glIndexubv = dyn_glIndexubv ptr_glIndexubv

foreign import CALLCONV "dynamic" dyn_glIndexubv
  :: FunPtr (Ptr GLubyte -> IO ())
  ->         Ptr GLubyte -> IO ()

{-# NOINLINE ptr_glIndexubv #-}
ptr_glIndexubv :: FunPtr (Ptr GLubyte -> IO ())
ptr_glIndexubv = unsafePerformIO $ getCommand "glIndexubv"

-- glIndexxOES -----------------------------------------------------------------

glIndexxOES
  :: GLfixed -- ^ @component@.
  -> IO ()
glIndexxOES = dyn_glIndexxOES ptr_glIndexxOES

foreign import CALLCONV "dynamic" dyn_glIndexxOES
  :: FunPtr (GLfixed -> IO ())
  ->         GLfixed -> IO ()

{-# NOINLINE ptr_glIndexxOES #-}
ptr_glIndexxOES :: FunPtr (GLfixed -> IO ())
ptr_glIndexxOES = unsafePerformIO $ getCommand "glIndexxOES"

-- glIndexxvOES ----------------------------------------------------------------

glIndexxvOES
  :: Ptr GLfixed -- ^ @component@ pointing to @1@ elements of type @GLfixed@.
  -> IO ()
glIndexxvOES = dyn_glIndexxvOES ptr_glIndexxvOES

foreign import CALLCONV "dynamic" dyn_glIndexxvOES
  :: FunPtr (Ptr GLfixed -> IO ())
  ->         Ptr GLfixed -> IO ()

{-# NOINLINE ptr_glIndexxvOES #-}
ptr_glIndexxvOES :: FunPtr (Ptr GLfixed -> IO ())
ptr_glIndexxvOES = unsafePerformIO $ getCommand "glIndexxvOES"

-- glInitNames -----------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glInitNames.xml OpenGL 2.x>
glInitNames
  :: IO ()
glInitNames = dyn_glInitNames ptr_glInitNames

foreign import CALLCONV "dynamic" dyn_glInitNames
  :: FunPtr (IO ())
  ->         IO ()

{-# NOINLINE ptr_glInitNames #-}
ptr_glInitNames :: FunPtr (IO ())
ptr_glInitNames = unsafePerformIO $ getCommand "glInitNames"

-- glInsertComponentEXT --------------------------------------------------------

glInsertComponentEXT
  :: GLuint -- ^ @res@.
  -> GLuint -- ^ @src@.
  -> GLuint -- ^ @num@.
  -> IO ()
glInsertComponentEXT = dyn_glInsertComponentEXT ptr_glInsertComponentEXT

foreign import CALLCONV "dynamic" dyn_glInsertComponentEXT
  :: FunPtr (GLuint -> GLuint -> GLuint -> IO ())
  ->         GLuint -> GLuint -> GLuint -> IO ()

{-# NOINLINE ptr_glInsertComponentEXT #-}
ptr_glInsertComponentEXT :: FunPtr (GLuint -> GLuint -> GLuint -> IO ())
ptr_glInsertComponentEXT = unsafePerformIO $ getCommand "glInsertComponentEXT"

-- glInsertEventMarkerEXT ------------------------------------------------------

glInsertEventMarkerEXT
  :: GLsizei -- ^ @length@.
  -> Ptr GLchar -- ^ @marker@.
  -> IO ()
glInsertEventMarkerEXT = dyn_glInsertEventMarkerEXT ptr_glInsertEventMarkerEXT

foreign import CALLCONV "dynamic" dyn_glInsertEventMarkerEXT
  :: FunPtr (GLsizei -> Ptr GLchar -> IO ())
  ->         GLsizei -> Ptr GLchar -> IO ()

{-# NOINLINE ptr_glInsertEventMarkerEXT #-}
ptr_glInsertEventMarkerEXT :: FunPtr (GLsizei -> Ptr GLchar -> IO ())
ptr_glInsertEventMarkerEXT = unsafePerformIO $ getCommand "glInsertEventMarkerEXT"

-- glInstrumentsBufferSGIX -----------------------------------------------------

glInstrumentsBufferSGIX
  :: GLsizei -- ^ @size@.
  -> Ptr GLint -- ^ @buffer@ pointing to @size@ elements of type @GLint@.
  -> IO ()
glInstrumentsBufferSGIX = dyn_glInstrumentsBufferSGIX ptr_glInstrumentsBufferSGIX

foreign import CALLCONV "dynamic" dyn_glInstrumentsBufferSGIX
  :: FunPtr (GLsizei -> Ptr GLint -> IO ())
  ->         GLsizei -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glInstrumentsBufferSGIX #-}
ptr_glInstrumentsBufferSGIX :: FunPtr (GLsizei -> Ptr GLint -> IO ())
ptr_glInstrumentsBufferSGIX = unsafePerformIO $ getCommand "glInstrumentsBufferSGIX"

-- glInterleavedArrays ---------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glInterleavedArrays.xml OpenGL 2.x>
glInterleavedArrays
  :: GLenum -- ^ @format@ of type @InterleavedArrayFormat@.
  -> GLsizei -- ^ @stride@.
  -> Ptr a -- ^ @pointer@ pointing to @COMPSIZE(format,stride)@ elements of type @a@.
  -> IO ()
glInterleavedArrays = dyn_glInterleavedArrays ptr_glInterleavedArrays

foreign import CALLCONV "dynamic" dyn_glInterleavedArrays
  :: FunPtr (GLenum -> GLsizei -> Ptr a -> IO ())
  ->         GLenum -> GLsizei -> Ptr a -> IO ()

{-# NOINLINE ptr_glInterleavedArrays #-}
ptr_glInterleavedArrays :: FunPtr (GLenum -> GLsizei -> Ptr a -> IO ())
ptr_glInterleavedArrays = unsafePerformIO $ getCommand "glInterleavedArrays"

-- glInterpolatePathsNV --------------------------------------------------------

glInterpolatePathsNV
  :: GLuint -- ^ @resultPath@ of type @Path@.
  -> GLuint -- ^ @pathA@ of type @Path@.
  -> GLuint -- ^ @pathB@ of type @Path@.
  -> GLfloat -- ^ @weight@.
  -> IO ()
glInterpolatePathsNV = dyn_glInterpolatePathsNV ptr_glInterpolatePathsNV

foreign import CALLCONV "dynamic" dyn_glInterpolatePathsNV
  :: FunPtr (GLuint -> GLuint -> GLuint -> GLfloat -> IO ())
  ->         GLuint -> GLuint -> GLuint -> GLfloat -> IO ()

{-# NOINLINE ptr_glInterpolatePathsNV #-}
ptr_glInterpolatePathsNV :: FunPtr (GLuint -> GLuint -> GLuint -> GLfloat -> IO ())
ptr_glInterpolatePathsNV = unsafePerformIO $ getCommand "glInterpolatePathsNV"

-- glInvalidateBufferData ------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glInvalidateBufferData.xhtml OpenGL 4.x>
glInvalidateBufferData
  :: GLuint -- ^ @buffer@.
  -> IO ()
glInvalidateBufferData = dyn_glInvalidateBufferData ptr_glInvalidateBufferData

foreign import CALLCONV "dynamic" dyn_glInvalidateBufferData
  :: FunPtr (GLuint -> IO ())
  ->         GLuint -> IO ()

{-# NOINLINE ptr_glInvalidateBufferData #-}
ptr_glInvalidateBufferData :: FunPtr (GLuint -> IO ())
ptr_glInvalidateBufferData = unsafePerformIO $ getCommand "glInvalidateBufferData"

-- glInvalidateBufferSubData ---------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glInvalidateBufferSubData.xhtml OpenGL 4.x>
glInvalidateBufferSubData
  :: GLuint -- ^ @buffer@.
  -> GLintptr -- ^ @offset@ of type @BufferOffset@.
  -> GLsizeiptr -- ^ @length@ of type @BufferSize@.
  -> IO ()
glInvalidateBufferSubData = dyn_glInvalidateBufferSubData ptr_glInvalidateBufferSubData

foreign import CALLCONV "dynamic" dyn_glInvalidateBufferSubData
  :: FunPtr (GLuint -> GLintptr -> GLsizeiptr -> IO ())
  ->         GLuint -> GLintptr -> GLsizeiptr -> IO ()

{-# NOINLINE ptr_glInvalidateBufferSubData #-}
ptr_glInvalidateBufferSubData :: FunPtr (GLuint -> GLintptr -> GLsizeiptr -> IO ())
ptr_glInvalidateBufferSubData = unsafePerformIO $ getCommand "glInvalidateBufferSubData"

-- glInvalidateFramebuffer -----------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glInvalidateFramebuffer.xhtml OpenGL 4.x>
glInvalidateFramebuffer
  :: GLenum -- ^ @target@.
  -> GLsizei -- ^ @numAttachments@.
  -> Ptr GLenum -- ^ @attachments@ pointing to @numAttachments@ elements of type @GLenum@.
  -> IO ()
glInvalidateFramebuffer = dyn_glInvalidateFramebuffer ptr_glInvalidateFramebuffer

foreign import CALLCONV "dynamic" dyn_glInvalidateFramebuffer
  :: FunPtr (GLenum -> GLsizei -> Ptr GLenum -> IO ())
  ->         GLenum -> GLsizei -> Ptr GLenum -> IO ()

{-# NOINLINE ptr_glInvalidateFramebuffer #-}
ptr_glInvalidateFramebuffer :: FunPtr (GLenum -> GLsizei -> Ptr GLenum -> IO ())
ptr_glInvalidateFramebuffer = unsafePerformIO $ getCommand "glInvalidateFramebuffer"

-- glInvalidateNamedFramebufferData --------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glInvalidateFramebuffer.xhtml OpenGL 4.x>
glInvalidateNamedFramebufferData
  :: GLuint -- ^ @framebuffer@.
  -> GLsizei -- ^ @numAttachments@.
  -> Ptr GLenum -- ^ @attachments@.
  -> IO ()
glInvalidateNamedFramebufferData = dyn_glInvalidateNamedFramebufferData ptr_glInvalidateNamedFramebufferData

foreign import CALLCONV "dynamic" dyn_glInvalidateNamedFramebufferData
  :: FunPtr (GLuint -> GLsizei -> Ptr GLenum -> IO ())
  ->         GLuint -> GLsizei -> Ptr GLenum -> IO ()

{-# NOINLINE ptr_glInvalidateNamedFramebufferData #-}
ptr_glInvalidateNamedFramebufferData :: FunPtr (GLuint -> GLsizei -> Ptr GLenum -> IO ())
ptr_glInvalidateNamedFramebufferData = unsafePerformIO $ getCommand "glInvalidateNamedFramebufferData"

-- glInvalidateNamedFramebufferSubData -----------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glInvalidateSubFramebuffer.xhtml OpenGL 4.x>
glInvalidateNamedFramebufferSubData
  :: GLuint -- ^ @framebuffer@.
  -> GLsizei -- ^ @numAttachments@.
  -> Ptr GLenum -- ^ @attachments@.
  -> GLint -- ^ @x@.
  -> GLint -- ^ @y@.
  -> GLsizei -- ^ @width@.
  -> GLsizei -- ^ @height@.
  -> IO ()
glInvalidateNamedFramebufferSubData = dyn_glInvalidateNamedFramebufferSubData ptr_glInvalidateNamedFramebufferSubData

foreign import CALLCONV "dynamic" dyn_glInvalidateNamedFramebufferSubData
  :: FunPtr (GLuint -> GLsizei -> Ptr GLenum -> GLint -> GLint -> GLsizei -> GLsizei -> IO ())
  ->         GLuint -> GLsizei -> Ptr GLenum -> GLint -> GLint -> GLsizei -> GLsizei -> IO ()

{-# NOINLINE ptr_glInvalidateNamedFramebufferSubData #-}
ptr_glInvalidateNamedFramebufferSubData :: FunPtr (GLuint -> GLsizei -> Ptr GLenum -> GLint -> GLint -> GLsizei -> GLsizei -> IO ())
ptr_glInvalidateNamedFramebufferSubData = unsafePerformIO $ getCommand "glInvalidateNamedFramebufferSubData"

-- glInvalidateSubFramebuffer --------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glInvalidateSubFramebuffer.xhtml OpenGL 4.x>
glInvalidateSubFramebuffer
  :: GLenum -- ^ @target@.
  -> GLsizei -- ^ @numAttachments@.
  -> Ptr GLenum -- ^ @attachments@ pointing to @numAttachments@ elements of type @GLenum@.
  -> GLint -- ^ @x@.
  -> GLint -- ^ @y@.
  -> GLsizei -- ^ @width@.
  -> GLsizei -- ^ @height@.
  -> IO ()
glInvalidateSubFramebuffer = dyn_glInvalidateSubFramebuffer ptr_glInvalidateSubFramebuffer

foreign import CALLCONV "dynamic" dyn_glInvalidateSubFramebuffer
  :: FunPtr (GLenum -> GLsizei -> Ptr GLenum -> GLint -> GLint -> GLsizei -> GLsizei -> IO ())
  ->         GLenum -> GLsizei -> Ptr GLenum -> GLint -> GLint -> GLsizei -> GLsizei -> IO ()

{-# NOINLINE ptr_glInvalidateSubFramebuffer #-}
ptr_glInvalidateSubFramebuffer :: FunPtr (GLenum -> GLsizei -> Ptr GLenum -> GLint -> GLint -> GLsizei -> GLsizei -> IO ())
ptr_glInvalidateSubFramebuffer = unsafePerformIO $ getCommand "glInvalidateSubFramebuffer"

-- glInvalidateTexImage --------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glInvalidateTexImage.xhtml OpenGL 4.x>
glInvalidateTexImage
  :: GLuint -- ^ @texture@.
  -> GLint -- ^ @level@.
  -> IO ()
glInvalidateTexImage = dyn_glInvalidateTexImage ptr_glInvalidateTexImage

foreign import CALLCONV "dynamic" dyn_glInvalidateTexImage
  :: FunPtr (GLuint -> GLint -> IO ())
  ->         GLuint -> GLint -> IO ()

{-# NOINLINE ptr_glInvalidateTexImage #-}
ptr_glInvalidateTexImage :: FunPtr (GLuint -> GLint -> IO ())
ptr_glInvalidateTexImage = unsafePerformIO $ getCommand "glInvalidateTexImage"

-- glInvalidateTexSubImage -----------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glInvalidateTexSubImage.xhtml OpenGL 4.x>
glInvalidateTexSubImage
  :: GLuint -- ^ @texture@.
  -> GLint -- ^ @level@.
  -> GLint -- ^ @xoffset@.
  -> GLint -- ^ @yoffset@.
  -> GLint -- ^ @zoffset@.
  -> GLsizei -- ^ @width@.
  -> GLsizei -- ^ @height@.
  -> GLsizei -- ^ @depth@.
  -> IO ()
glInvalidateTexSubImage = dyn_glInvalidateTexSubImage ptr_glInvalidateTexSubImage

foreign import CALLCONV "dynamic" dyn_glInvalidateTexSubImage
  :: FunPtr (GLuint -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> IO ())
  ->         GLuint -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> IO ()

{-# NOINLINE ptr_glInvalidateTexSubImage #-}
ptr_glInvalidateTexSubImage :: FunPtr (GLuint -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> IO ())
ptr_glInvalidateTexSubImage = unsafePerformIO $ getCommand "glInvalidateTexSubImage"

-- glIsAsyncMarkerSGIX ---------------------------------------------------------

glIsAsyncMarkerSGIX
  :: GLuint -- ^ @marker@.
  -> IO GLboolean -- ^ of type @Boolean@.
glIsAsyncMarkerSGIX = dyn_glIsAsyncMarkerSGIX ptr_glIsAsyncMarkerSGIX

foreign import CALLCONV "dynamic" dyn_glIsAsyncMarkerSGIX
  :: FunPtr (GLuint -> IO GLboolean)
  ->         GLuint -> IO GLboolean

{-# NOINLINE ptr_glIsAsyncMarkerSGIX #-}
ptr_glIsAsyncMarkerSGIX :: FunPtr (GLuint -> IO GLboolean)
ptr_glIsAsyncMarkerSGIX = unsafePerformIO $ getCommand "glIsAsyncMarkerSGIX"

-- glIsBuffer ------------------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glIsBuffer.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glIsBuffer.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glIsBuffer.xhtml OpenGL 4.x>
glIsBuffer
  :: GLuint -- ^ @buffer@.
  -> IO GLboolean -- ^ of type @Boolean@.
glIsBuffer = dyn_glIsBuffer ptr_glIsBuffer

foreign import CALLCONV "dynamic" dyn_glIsBuffer
  :: FunPtr (GLuint -> IO GLboolean)
  ->         GLuint -> IO GLboolean

{-# NOINLINE ptr_glIsBuffer #-}
ptr_glIsBuffer :: FunPtr (GLuint -> IO GLboolean)
ptr_glIsBuffer = unsafePerformIO $ getCommand "glIsBuffer"

-- glIsBufferARB ---------------------------------------------------------------

glIsBufferARB
  :: GLuint -- ^ @buffer@.
  -> IO GLboolean -- ^ of type @Boolean@.
glIsBufferARB = dyn_glIsBufferARB ptr_glIsBufferARB

foreign import CALLCONV "dynamic" dyn_glIsBufferARB
  :: FunPtr (GLuint -> IO GLboolean)
  ->         GLuint -> IO GLboolean

{-# NOINLINE ptr_glIsBufferARB #-}
ptr_glIsBufferARB :: FunPtr (GLuint -> IO GLboolean)
ptr_glIsBufferARB = unsafePerformIO $ getCommand "glIsBufferARB"

-- glIsBufferResidentNV --------------------------------------------------------

glIsBufferResidentNV
  :: GLenum -- ^ @target@.
  -> IO GLboolean -- ^ of type @Boolean@.
glIsBufferResidentNV = dyn_glIsBufferResidentNV ptr_glIsBufferResidentNV

foreign import CALLCONV "dynamic" dyn_glIsBufferResidentNV
  :: FunPtr (GLenum -> IO GLboolean)
  ->         GLenum -> IO GLboolean

{-# NOINLINE ptr_glIsBufferResidentNV #-}
ptr_glIsBufferResidentNV :: FunPtr (GLenum -> IO GLboolean)
ptr_glIsBufferResidentNV = unsafePerformIO $ getCommand "glIsBufferResidentNV"

-- glIsEnabled -----------------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glIsEnabled.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glIsEnabled.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glIsEnabled.xhtml OpenGL 4.x>
glIsEnabled
  :: GLenum -- ^ @cap@ of type @EnableCap@.
  -> IO GLboolean -- ^ of type @Boolean@.
glIsEnabled = dyn_glIsEnabled ptr_glIsEnabled

foreign import CALLCONV "dynamic" dyn_glIsEnabled
  :: FunPtr (GLenum -> IO GLboolean)
  ->         GLenum -> IO GLboolean

{-# NOINLINE ptr_glIsEnabled #-}
ptr_glIsEnabled :: FunPtr (GLenum -> IO GLboolean)
ptr_glIsEnabled = unsafePerformIO $ getCommand "glIsEnabled"

-- glIsEnabledIndexedEXT -------------------------------------------------------

glIsEnabledIndexedEXT
  :: GLenum -- ^ @target@.
  -> GLuint -- ^ @index@.
  -> IO GLboolean -- ^ of type @Boolean@.
glIsEnabledIndexedEXT = dyn_glIsEnabledIndexedEXT ptr_glIsEnabledIndexedEXT

foreign import CALLCONV "dynamic" dyn_glIsEnabledIndexedEXT
  :: FunPtr (GLenum -> GLuint -> IO GLboolean)
  ->         GLenum -> GLuint -> IO GLboolean

{-# NOINLINE ptr_glIsEnabledIndexedEXT #-}
ptr_glIsEnabledIndexedEXT :: FunPtr (GLenum -> GLuint -> IO GLboolean)
ptr_glIsEnabledIndexedEXT = unsafePerformIO $ getCommand "glIsEnabledIndexedEXT"

-- glIsEnabledi ----------------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glIsEnabled.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glIsEnabled.xhtml OpenGL 4.x>
glIsEnabledi
  :: GLenum -- ^ @target@.
  -> GLuint -- ^ @index@.
  -> IO GLboolean -- ^ of type @Boolean@.
glIsEnabledi = dyn_glIsEnabledi ptr_glIsEnabledi

foreign import CALLCONV "dynamic" dyn_glIsEnabledi
  :: FunPtr (GLenum -> GLuint -> IO GLboolean)
  ->         GLenum -> GLuint -> IO GLboolean

{-# NOINLINE ptr_glIsEnabledi #-}
ptr_glIsEnabledi :: FunPtr (GLenum -> GLuint -> IO GLboolean)
ptr_glIsEnabledi = unsafePerformIO $ getCommand "glIsEnabledi"

-- glIsEnablediEXT -------------------------------------------------------------

glIsEnablediEXT
  :: GLenum -- ^ @target@.
  -> GLuint -- ^ @index@.
  -> IO GLboolean -- ^ of type @Boolean@.
glIsEnablediEXT = dyn_glIsEnablediEXT ptr_glIsEnablediEXT

foreign import CALLCONV "dynamic" dyn_glIsEnablediEXT
  :: FunPtr (GLenum -> GLuint -> IO GLboolean)
  ->         GLenum -> GLuint -> IO GLboolean

{-# NOINLINE ptr_glIsEnablediEXT #-}
ptr_glIsEnablediEXT :: FunPtr (GLenum -> GLuint -> IO GLboolean)
ptr_glIsEnablediEXT = unsafePerformIO $ getCommand "glIsEnablediEXT"

-- glIsEnablediNV --------------------------------------------------------------

glIsEnablediNV
  :: GLenum -- ^ @target@.
  -> GLuint -- ^ @index@.
  -> IO GLboolean -- ^ of type @Boolean@.
glIsEnablediNV = dyn_glIsEnablediNV ptr_glIsEnablediNV

foreign import CALLCONV "dynamic" dyn_glIsEnablediNV
  :: FunPtr (GLenum -> GLuint -> IO GLboolean)
  ->         GLenum -> GLuint -> IO GLboolean

{-# NOINLINE ptr_glIsEnablediNV #-}
ptr_glIsEnablediNV :: FunPtr (GLenum -> GLuint -> IO GLboolean)
ptr_glIsEnablediNV = unsafePerformIO $ getCommand "glIsEnablediNV"

-- glIsEnablediOES -------------------------------------------------------------

glIsEnablediOES
  :: GLenum -- ^ @target@.
  -> GLuint -- ^ @index@.
  -> IO GLboolean -- ^ of type @Boolean@.
glIsEnablediOES = dyn_glIsEnablediOES ptr_glIsEnablediOES

foreign import CALLCONV "dynamic" dyn_glIsEnablediOES
  :: FunPtr (GLenum -> GLuint -> IO GLboolean)
  ->         GLenum -> GLuint -> IO GLboolean

{-# NOINLINE ptr_glIsEnablediOES #-}
ptr_glIsEnablediOES :: FunPtr (GLenum -> GLuint -> IO GLboolean)
ptr_glIsEnablediOES = unsafePerformIO $ getCommand "glIsEnablediOES"

-- glIsFenceAPPLE --------------------------------------------------------------

glIsFenceAPPLE
  :: GLuint -- ^ @fence@ of type @FenceNV@.
  -> IO GLboolean -- ^ of type @Boolean@.
glIsFenceAPPLE = dyn_glIsFenceAPPLE ptr_glIsFenceAPPLE

foreign import CALLCONV "dynamic" dyn_glIsFenceAPPLE
  :: FunPtr (GLuint -> IO GLboolean)
  ->         GLuint -> IO GLboolean

{-# NOINLINE ptr_glIsFenceAPPLE #-}
ptr_glIsFenceAPPLE :: FunPtr (GLuint -> IO GLboolean)
ptr_glIsFenceAPPLE = unsafePerformIO $ getCommand "glIsFenceAPPLE"

-- glIsFenceNV -----------------------------------------------------------------

glIsFenceNV
  :: GLuint -- ^ @fence@ of type @FenceNV@.
  -> IO GLboolean -- ^ of type @Boolean@.
glIsFenceNV = dyn_glIsFenceNV ptr_glIsFenceNV

foreign import CALLCONV "dynamic" dyn_glIsFenceNV
  :: FunPtr (GLuint -> IO GLboolean)
  ->         GLuint -> IO GLboolean

{-# NOINLINE ptr_glIsFenceNV #-}
ptr_glIsFenceNV :: FunPtr (GLuint -> IO GLboolean)
ptr_glIsFenceNV = unsafePerformIO $ getCommand "glIsFenceNV"

-- glIsFramebuffer -------------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glIsFramebuffer.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glIsFramebuffer.xhtml OpenGL 4.x>
glIsFramebuffer
  :: GLuint -- ^ @framebuffer@.
  -> IO GLboolean -- ^ of type @Boolean@.
glIsFramebuffer = dyn_glIsFramebuffer ptr_glIsFramebuffer

foreign import CALLCONV "dynamic" dyn_glIsFramebuffer
  :: FunPtr (GLuint -> IO GLboolean)
  ->         GLuint -> IO GLboolean

{-# NOINLINE ptr_glIsFramebuffer #-}
ptr_glIsFramebuffer :: FunPtr (GLuint -> IO GLboolean)
ptr_glIsFramebuffer = unsafePerformIO $ getCommand "glIsFramebuffer"

-- glIsFramebufferEXT ----------------------------------------------------------

glIsFramebufferEXT
  :: GLuint -- ^ @framebuffer@.
  -> IO GLboolean -- ^ of type @Boolean@.
glIsFramebufferEXT = dyn_glIsFramebufferEXT ptr_glIsFramebufferEXT

foreign import CALLCONV "dynamic" dyn_glIsFramebufferEXT
  :: FunPtr (GLuint -> IO GLboolean)
  ->         GLuint -> IO GLboolean

{-# NOINLINE ptr_glIsFramebufferEXT #-}
ptr_glIsFramebufferEXT :: FunPtr (GLuint -> IO GLboolean)
ptr_glIsFramebufferEXT = unsafePerformIO $ getCommand "glIsFramebufferEXT"

-- glIsFramebufferOES ----------------------------------------------------------

glIsFramebufferOES
  :: GLuint -- ^ @framebuffer@.
  -> IO GLboolean
glIsFramebufferOES = dyn_glIsFramebufferOES ptr_glIsFramebufferOES

foreign import CALLCONV "dynamic" dyn_glIsFramebufferOES
  :: FunPtr (GLuint -> IO GLboolean)
  ->         GLuint -> IO GLboolean

{-# NOINLINE ptr_glIsFramebufferOES #-}
ptr_glIsFramebufferOES :: FunPtr (GLuint -> IO GLboolean)
ptr_glIsFramebufferOES = unsafePerformIO $ getCommand "glIsFramebufferOES"

-- glIsImageHandleResidentARB --------------------------------------------------

glIsImageHandleResidentARB
  :: GLuint64 -- ^ @handle@.
  -> IO GLboolean
glIsImageHandleResidentARB = dyn_glIsImageHandleResidentARB ptr_glIsImageHandleResidentARB

foreign import CALLCONV "dynamic" dyn_glIsImageHandleResidentARB
  :: FunPtr (GLuint64 -> IO GLboolean)
  ->         GLuint64 -> IO GLboolean

{-# NOINLINE ptr_glIsImageHandleResidentARB #-}
ptr_glIsImageHandleResidentARB :: FunPtr (GLuint64 -> IO GLboolean)
ptr_glIsImageHandleResidentARB = unsafePerformIO $ getCommand "glIsImageHandleResidentARB"

-- glIsImageHandleResidentNV ---------------------------------------------------

glIsImageHandleResidentNV
  :: GLuint64 -- ^ @handle@.
  -> IO GLboolean -- ^ of type @Boolean@.
glIsImageHandleResidentNV = dyn_glIsImageHandleResidentNV ptr_glIsImageHandleResidentNV

foreign import CALLCONV "dynamic" dyn_glIsImageHandleResidentNV
  :: FunPtr (GLuint64 -> IO GLboolean)
  ->         GLuint64 -> IO GLboolean

{-# NOINLINE ptr_glIsImageHandleResidentNV #-}
ptr_glIsImageHandleResidentNV :: FunPtr (GLuint64 -> IO GLboolean)
ptr_glIsImageHandleResidentNV = unsafePerformIO $ getCommand "glIsImageHandleResidentNV"

-- glIsList --------------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glIsList.xml OpenGL 2.x>
glIsList
  :: GLuint -- ^ @list@ of type @List@.
  -> IO GLboolean -- ^ of type @Boolean@.
glIsList = dyn_glIsList ptr_glIsList

foreign import CALLCONV "dynamic" dyn_glIsList
  :: FunPtr (GLuint -> IO GLboolean)
  ->         GLuint -> IO GLboolean

{-# NOINLINE ptr_glIsList #-}
ptr_glIsList :: FunPtr (GLuint -> IO GLboolean)
ptr_glIsList = unsafePerformIO $ getCommand "glIsList"

-- glIsNameAMD -----------------------------------------------------------------

glIsNameAMD
  :: GLenum -- ^ @identifier@.
  -> GLuint -- ^ @name@.
  -> IO GLboolean -- ^ of type @Boolean@.
glIsNameAMD = dyn_glIsNameAMD ptr_glIsNameAMD

foreign import CALLCONV "dynamic" dyn_glIsNameAMD
  :: FunPtr (GLenum -> GLuint -> IO GLboolean)
  ->         GLenum -> GLuint -> IO GLboolean

{-# NOINLINE ptr_glIsNameAMD #-}
ptr_glIsNameAMD :: FunPtr (GLenum -> GLuint -> IO GLboolean)
ptr_glIsNameAMD = unsafePerformIO $ getCommand "glIsNameAMD"

-- glIsNamedBufferResidentNV ---------------------------------------------------

glIsNamedBufferResidentNV
  :: GLuint -- ^ @buffer@.
  -> IO GLboolean -- ^ of type @Boolean@.
glIsNamedBufferResidentNV = dyn_glIsNamedBufferResidentNV ptr_glIsNamedBufferResidentNV

foreign import CALLCONV "dynamic" dyn_glIsNamedBufferResidentNV
  :: FunPtr (GLuint -> IO GLboolean)
  ->         GLuint -> IO GLboolean

{-# NOINLINE ptr_glIsNamedBufferResidentNV #-}
ptr_glIsNamedBufferResidentNV :: FunPtr (GLuint -> IO GLboolean)
ptr_glIsNamedBufferResidentNV = unsafePerformIO $ getCommand "glIsNamedBufferResidentNV"

-- glIsNamedStringARB ----------------------------------------------------------

glIsNamedStringARB
  :: GLint -- ^ @namelen@.
  -> Ptr GLchar -- ^ @name@ pointing to @namelen@ elements of type @GLchar@.
  -> IO GLboolean -- ^ of type @Boolean@.
glIsNamedStringARB = dyn_glIsNamedStringARB ptr_glIsNamedStringARB

foreign import CALLCONV "dynamic" dyn_glIsNamedStringARB
  :: FunPtr (GLint -> Ptr GLchar -> IO GLboolean)
  ->         GLint -> Ptr GLchar -> IO GLboolean

{-# NOINLINE ptr_glIsNamedStringARB #-}
ptr_glIsNamedStringARB :: FunPtr (GLint -> Ptr GLchar -> IO GLboolean)
ptr_glIsNamedStringARB = unsafePerformIO $ getCommand "glIsNamedStringARB"

-- glIsObjectBufferATI ---------------------------------------------------------

glIsObjectBufferATI
  :: GLuint -- ^ @buffer@.
  -> IO GLboolean -- ^ of type @Boolean@.
glIsObjectBufferATI = dyn_glIsObjectBufferATI ptr_glIsObjectBufferATI

foreign import CALLCONV "dynamic" dyn_glIsObjectBufferATI
  :: FunPtr (GLuint -> IO GLboolean)
  ->         GLuint -> IO GLboolean

{-# NOINLINE ptr_glIsObjectBufferATI #-}
ptr_glIsObjectBufferATI :: FunPtr (GLuint -> IO GLboolean)
ptr_glIsObjectBufferATI = unsafePerformIO $ getCommand "glIsObjectBufferATI"

-- glIsOcclusionQueryNV --------------------------------------------------------

glIsOcclusionQueryNV
  :: GLuint -- ^ @id@.
  -> IO GLboolean -- ^ of type @Boolean@.
glIsOcclusionQueryNV = dyn_glIsOcclusionQueryNV ptr_glIsOcclusionQueryNV

foreign import CALLCONV "dynamic" dyn_glIsOcclusionQueryNV
  :: FunPtr (GLuint -> IO GLboolean)
  ->         GLuint -> IO GLboolean

{-# NOINLINE ptr_glIsOcclusionQueryNV #-}
ptr_glIsOcclusionQueryNV :: FunPtr (GLuint -> IO GLboolean)
ptr_glIsOcclusionQueryNV = unsafePerformIO $ getCommand "glIsOcclusionQueryNV"

-- glIsPathNV ------------------------------------------------------------------

glIsPathNV
  :: GLuint -- ^ @path@ of type @Path@.
  -> IO GLboolean -- ^ of type @Boolean@.
glIsPathNV = dyn_glIsPathNV ptr_glIsPathNV

foreign import CALLCONV "dynamic" dyn_glIsPathNV
  :: FunPtr (GLuint -> IO GLboolean)
  ->         GLuint -> IO GLboolean

{-# NOINLINE ptr_glIsPathNV #-}
ptr_glIsPathNV :: FunPtr (GLuint -> IO GLboolean)
ptr_glIsPathNV = unsafePerformIO $ getCommand "glIsPathNV"

-- glIsPointInFillPathNV -------------------------------------------------------

glIsPointInFillPathNV
  :: GLuint -- ^ @path@ of type @Path@.
  -> GLuint -- ^ @mask@ of type @MaskedStencilValue@.
  -> GLfloat -- ^ @x@.
  -> GLfloat -- ^ @y@.
  -> IO GLboolean -- ^ of type @Boolean@.
glIsPointInFillPathNV = dyn_glIsPointInFillPathNV ptr_glIsPointInFillPathNV

foreign import CALLCONV "dynamic" dyn_glIsPointInFillPathNV
  :: FunPtr (GLuint -> GLuint -> GLfloat -> GLfloat -> IO GLboolean)
  ->         GLuint -> GLuint -> GLfloat -> GLfloat -> IO GLboolean

{-# NOINLINE ptr_glIsPointInFillPathNV #-}
ptr_glIsPointInFillPathNV :: FunPtr (GLuint -> GLuint -> GLfloat -> GLfloat -> IO GLboolean)
ptr_glIsPointInFillPathNV = unsafePerformIO $ getCommand "glIsPointInFillPathNV"

-- glIsPointInStrokePathNV -----------------------------------------------------

glIsPointInStrokePathNV
  :: GLuint -- ^ @path@ of type @Path@.
  -> GLfloat -- ^ @x@.
  -> GLfloat -- ^ @y@.
  -> IO GLboolean -- ^ of type @Boolean@.
glIsPointInStrokePathNV = dyn_glIsPointInStrokePathNV ptr_glIsPointInStrokePathNV

foreign import CALLCONV "dynamic" dyn_glIsPointInStrokePathNV
  :: FunPtr (GLuint -> GLfloat -> GLfloat -> IO GLboolean)
  ->         GLuint -> GLfloat -> GLfloat -> IO GLboolean

{-# NOINLINE ptr_glIsPointInStrokePathNV #-}
ptr_glIsPointInStrokePathNV :: FunPtr (GLuint -> GLfloat -> GLfloat -> IO GLboolean)
ptr_glIsPointInStrokePathNV = unsafePerformIO $ getCommand "glIsPointInStrokePathNV"

-- glIsProgram -----------------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glIsProgram.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glIsProgram.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glIsProgram.xhtml OpenGL 4.x>
glIsProgram
  :: GLuint -- ^ @program@.
  -> IO GLboolean -- ^ of type @Boolean@.
glIsProgram = dyn_glIsProgram ptr_glIsProgram

foreign import CALLCONV "dynamic" dyn_glIsProgram
  :: FunPtr (GLuint -> IO GLboolean)
  ->         GLuint -> IO GLboolean

{-# NOINLINE ptr_glIsProgram #-}
ptr_glIsProgram :: FunPtr (GLuint -> IO GLboolean)
ptr_glIsProgram = unsafePerformIO $ getCommand "glIsProgram"

-- glIsProgramARB --------------------------------------------------------------

glIsProgramARB
  :: GLuint -- ^ @program@.
  -> IO GLboolean -- ^ of type @Boolean@.
glIsProgramARB = dyn_glIsProgramARB ptr_glIsProgramARB

foreign import CALLCONV "dynamic" dyn_glIsProgramARB
  :: FunPtr (GLuint -> IO GLboolean)
  ->         GLuint -> IO GLboolean

{-# NOINLINE ptr_glIsProgramARB #-}
ptr_glIsProgramARB :: FunPtr (GLuint -> IO GLboolean)
ptr_glIsProgramARB = unsafePerformIO $ getCommand "glIsProgramARB"

-- glIsProgramNV ---------------------------------------------------------------

glIsProgramNV
  :: GLuint -- ^ @id@.
  -> IO GLboolean -- ^ of type @Boolean@.
glIsProgramNV = dyn_glIsProgramNV ptr_glIsProgramNV

foreign import CALLCONV "dynamic" dyn_glIsProgramNV
  :: FunPtr (GLuint -> IO GLboolean)
  ->         GLuint -> IO GLboolean

{-# NOINLINE ptr_glIsProgramNV #-}
ptr_glIsProgramNV :: FunPtr (GLuint -> IO GLboolean)
ptr_glIsProgramNV = unsafePerformIO $ getCommand "glIsProgramNV"

-- glIsProgramPipeline ---------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glIsProgramPipeline.xhtml OpenGL 4.x>
glIsProgramPipeline
  :: GLuint -- ^ @pipeline@.
  -> IO GLboolean -- ^ of type @Boolean@.
glIsProgramPipeline = dyn_glIsProgramPipeline ptr_glIsProgramPipeline

foreign import CALLCONV "dynamic" dyn_glIsProgramPipeline
  :: FunPtr (GLuint -> IO GLboolean)
  ->         GLuint -> IO GLboolean

{-# NOINLINE ptr_glIsProgramPipeline #-}
ptr_glIsProgramPipeline :: FunPtr (GLuint -> IO GLboolean)
ptr_glIsProgramPipeline = unsafePerformIO $ getCommand "glIsProgramPipeline"

-- glIsProgramPipelineEXT ------------------------------------------------------

glIsProgramPipelineEXT
  :: GLuint -- ^ @pipeline@.
  -> IO GLboolean
glIsProgramPipelineEXT = dyn_glIsProgramPipelineEXT ptr_glIsProgramPipelineEXT

foreign import CALLCONV "dynamic" dyn_glIsProgramPipelineEXT
  :: FunPtr (GLuint -> IO GLboolean)
  ->         GLuint -> IO GLboolean

{-# NOINLINE ptr_glIsProgramPipelineEXT #-}
ptr_glIsProgramPipelineEXT :: FunPtr (GLuint -> IO GLboolean)
ptr_glIsProgramPipelineEXT = unsafePerformIO $ getCommand "glIsProgramPipelineEXT"

-- glIsQuery -------------------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glIsQuery.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glIsQuery.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glIsQuery.xhtml OpenGL 4.x>
glIsQuery
  :: GLuint -- ^ @id@.
  -> IO GLboolean -- ^ of type @Boolean@.
glIsQuery = dyn_glIsQuery ptr_glIsQuery

foreign import CALLCONV "dynamic" dyn_glIsQuery
  :: FunPtr (GLuint -> IO GLboolean)
  ->         GLuint -> IO GLboolean

{-# NOINLINE ptr_glIsQuery #-}
ptr_glIsQuery :: FunPtr (GLuint -> IO GLboolean)
ptr_glIsQuery = unsafePerformIO $ getCommand "glIsQuery"

-- glIsQueryARB ----------------------------------------------------------------

glIsQueryARB
  :: GLuint -- ^ @id@.
  -> IO GLboolean -- ^ of type @Boolean@.
glIsQueryARB = dyn_glIsQueryARB ptr_glIsQueryARB

foreign import CALLCONV "dynamic" dyn_glIsQueryARB
  :: FunPtr (GLuint -> IO GLboolean)
  ->         GLuint -> IO GLboolean

{-# NOINLINE ptr_glIsQueryARB #-}
ptr_glIsQueryARB :: FunPtr (GLuint -> IO GLboolean)
ptr_glIsQueryARB = unsafePerformIO $ getCommand "glIsQueryARB"

-- glIsQueryEXT ----------------------------------------------------------------

glIsQueryEXT
  :: GLuint -- ^ @id@.
  -> IO GLboolean
glIsQueryEXT = dyn_glIsQueryEXT ptr_glIsQueryEXT

foreign import CALLCONV "dynamic" dyn_glIsQueryEXT
  :: FunPtr (GLuint -> IO GLboolean)
  ->         GLuint -> IO GLboolean

{-# NOINLINE ptr_glIsQueryEXT #-}
ptr_glIsQueryEXT :: FunPtr (GLuint -> IO GLboolean)
ptr_glIsQueryEXT = unsafePerformIO $ getCommand "glIsQueryEXT"

-- glIsRenderbuffer ------------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glIsRenderbuffer.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glIsRenderbuffer.xhtml OpenGL 4.x>
glIsRenderbuffer
  :: GLuint -- ^ @renderbuffer@.
  -> IO GLboolean -- ^ of type @Boolean@.
glIsRenderbuffer = dyn_glIsRenderbuffer ptr_glIsRenderbuffer

foreign import CALLCONV "dynamic" dyn_glIsRenderbuffer
  :: FunPtr (GLuint -> IO GLboolean)
  ->         GLuint -> IO GLboolean

{-# NOINLINE ptr_glIsRenderbuffer #-}
ptr_glIsRenderbuffer :: FunPtr (GLuint -> IO GLboolean)
ptr_glIsRenderbuffer = unsafePerformIO $ getCommand "glIsRenderbuffer"

-- glIsRenderbufferEXT ---------------------------------------------------------

glIsRenderbufferEXT
  :: GLuint -- ^ @renderbuffer@.
  -> IO GLboolean -- ^ of type @Boolean@.
glIsRenderbufferEXT = dyn_glIsRenderbufferEXT ptr_glIsRenderbufferEXT

foreign import CALLCONV "dynamic" dyn_glIsRenderbufferEXT
  :: FunPtr (GLuint -> IO GLboolean)
  ->         GLuint -> IO GLboolean

{-# NOINLINE ptr_glIsRenderbufferEXT #-}
ptr_glIsRenderbufferEXT :: FunPtr (GLuint -> IO GLboolean)
ptr_glIsRenderbufferEXT = unsafePerformIO $ getCommand "glIsRenderbufferEXT"

-- glIsRenderbufferOES ---------------------------------------------------------

glIsRenderbufferOES
  :: GLuint -- ^ @renderbuffer@.
  -> IO GLboolean
glIsRenderbufferOES = dyn_glIsRenderbufferOES ptr_glIsRenderbufferOES

foreign import CALLCONV "dynamic" dyn_glIsRenderbufferOES
  :: FunPtr (GLuint -> IO GLboolean)
  ->         GLuint -> IO GLboolean

{-# NOINLINE ptr_glIsRenderbufferOES #-}
ptr_glIsRenderbufferOES :: FunPtr (GLuint -> IO GLboolean)
ptr_glIsRenderbufferOES = unsafePerformIO $ getCommand "glIsRenderbufferOES"

-- glIsSampler -----------------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glIsSampler.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glIsSampler.xhtml OpenGL 4.x>
glIsSampler
  :: GLuint -- ^ @sampler@.
  -> IO GLboolean -- ^ of type @Boolean@.
glIsSampler = dyn_glIsSampler ptr_glIsSampler

foreign import CALLCONV "dynamic" dyn_glIsSampler
  :: FunPtr (GLuint -> IO GLboolean)
  ->         GLuint -> IO GLboolean

{-# NOINLINE ptr_glIsSampler #-}
ptr_glIsSampler :: FunPtr (GLuint -> IO GLboolean)
ptr_glIsSampler = unsafePerformIO $ getCommand "glIsSampler"

-- glIsShader ------------------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glIsShader.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glIsShader.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glIsShader.xhtml OpenGL 4.x>
glIsShader
  :: GLuint -- ^ @shader@.
  -> IO GLboolean -- ^ of type @Boolean@.
glIsShader = dyn_glIsShader ptr_glIsShader

foreign import CALLCONV "dynamic" dyn_glIsShader
  :: FunPtr (GLuint -> IO GLboolean)
  ->         GLuint -> IO GLboolean

{-# NOINLINE ptr_glIsShader #-}
ptr_glIsShader :: FunPtr (GLuint -> IO GLboolean)
ptr_glIsShader = unsafePerformIO $ getCommand "glIsShader"

-- glIsSync --------------------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glIsSync.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glIsSync.xhtml OpenGL 4.x>
glIsSync
  :: GLsync -- ^ @sync@ of type @sync@.
  -> IO GLboolean -- ^ of type @Boolean@.
glIsSync = dyn_glIsSync ptr_glIsSync

foreign import CALLCONV "dynamic" dyn_glIsSync
  :: FunPtr (GLsync -> IO GLboolean)
  ->         GLsync -> IO GLboolean

{-# NOINLINE ptr_glIsSync #-}
ptr_glIsSync :: FunPtr (GLsync -> IO GLboolean)
ptr_glIsSync = unsafePerformIO $ getCommand "glIsSync"

-- glIsSyncAPPLE ---------------------------------------------------------------

glIsSyncAPPLE
  :: GLsync -- ^ @sync@.
  -> IO GLboolean
glIsSyncAPPLE = dyn_glIsSyncAPPLE ptr_glIsSyncAPPLE

foreign import CALLCONV "dynamic" dyn_glIsSyncAPPLE
  :: FunPtr (GLsync -> IO GLboolean)
  ->         GLsync -> IO GLboolean

{-# NOINLINE ptr_glIsSyncAPPLE #-}
ptr_glIsSyncAPPLE :: FunPtr (GLsync -> IO GLboolean)
ptr_glIsSyncAPPLE = unsafePerformIO $ getCommand "glIsSyncAPPLE"

-- glIsTexture -----------------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glIsTexture.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glIsTexture.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glIsTexture.xhtml OpenGL 4.x>
glIsTexture
  :: GLuint -- ^ @texture@ of type @Texture@.
  -> IO GLboolean -- ^ of type @Boolean@.
glIsTexture = dyn_glIsTexture ptr_glIsTexture

foreign import CALLCONV "dynamic" dyn_glIsTexture
  :: FunPtr (GLuint -> IO GLboolean)
  ->         GLuint -> IO GLboolean

{-# NOINLINE ptr_glIsTexture #-}
ptr_glIsTexture :: FunPtr (GLuint -> IO GLboolean)
ptr_glIsTexture = unsafePerformIO $ getCommand "glIsTexture"

-- glIsTextureEXT --------------------------------------------------------------

glIsTextureEXT
  :: GLuint -- ^ @texture@ of type @Texture@.
  -> IO GLboolean -- ^ of type @Boolean@.
glIsTextureEXT = dyn_glIsTextureEXT ptr_glIsTextureEXT

foreign import CALLCONV "dynamic" dyn_glIsTextureEXT
  :: FunPtr (GLuint -> IO GLboolean)
  ->         GLuint -> IO GLboolean

{-# NOINLINE ptr_glIsTextureEXT #-}
ptr_glIsTextureEXT :: FunPtr (GLuint -> IO GLboolean)
ptr_glIsTextureEXT = unsafePerformIO $ getCommand "glIsTextureEXT"

-- glIsTextureHandleResidentARB ------------------------------------------------

glIsTextureHandleResidentARB
  :: GLuint64 -- ^ @handle@.
  -> IO GLboolean
glIsTextureHandleResidentARB = dyn_glIsTextureHandleResidentARB ptr_glIsTextureHandleResidentARB

foreign import CALLCONV "dynamic" dyn_glIsTextureHandleResidentARB
  :: FunPtr (GLuint64 -> IO GLboolean)
  ->         GLuint64 -> IO GLboolean

{-# NOINLINE ptr_glIsTextureHandleResidentARB #-}
ptr_glIsTextureHandleResidentARB :: FunPtr (GLuint64 -> IO GLboolean)
ptr_glIsTextureHandleResidentARB = unsafePerformIO $ getCommand "glIsTextureHandleResidentARB"

-- glIsTextureHandleResidentNV -------------------------------------------------

glIsTextureHandleResidentNV
  :: GLuint64 -- ^ @handle@.
  -> IO GLboolean -- ^ of type @Boolean@.
glIsTextureHandleResidentNV = dyn_glIsTextureHandleResidentNV ptr_glIsTextureHandleResidentNV

foreign import CALLCONV "dynamic" dyn_glIsTextureHandleResidentNV
  :: FunPtr (GLuint64 -> IO GLboolean)
  ->         GLuint64 -> IO GLboolean

{-# NOINLINE ptr_glIsTextureHandleResidentNV #-}
ptr_glIsTextureHandleResidentNV :: FunPtr (GLuint64 -> IO GLboolean)
ptr_glIsTextureHandleResidentNV = unsafePerformIO $ getCommand "glIsTextureHandleResidentNV"

-- glIsTransformFeedback -------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glIsTransformFeedback.xhtml OpenGL 4.x>
glIsTransformFeedback
  :: GLuint -- ^ @id@.
  -> IO GLboolean -- ^ of type @Boolean@.
glIsTransformFeedback = dyn_glIsTransformFeedback ptr_glIsTransformFeedback

foreign import CALLCONV "dynamic" dyn_glIsTransformFeedback
  :: FunPtr (GLuint -> IO GLboolean)
  ->         GLuint -> IO GLboolean

{-# NOINLINE ptr_glIsTransformFeedback #-}
ptr_glIsTransformFeedback :: FunPtr (GLuint -> IO GLboolean)
ptr_glIsTransformFeedback = unsafePerformIO $ getCommand "glIsTransformFeedback"

-- glIsTransformFeedbackNV -----------------------------------------------------

glIsTransformFeedbackNV
  :: GLuint -- ^ @id@.
  -> IO GLboolean -- ^ of type @Boolean@.
glIsTransformFeedbackNV = dyn_glIsTransformFeedbackNV ptr_glIsTransformFeedbackNV

foreign import CALLCONV "dynamic" dyn_glIsTransformFeedbackNV
  :: FunPtr (GLuint -> IO GLboolean)
  ->         GLuint -> IO GLboolean

{-# NOINLINE ptr_glIsTransformFeedbackNV #-}
ptr_glIsTransformFeedbackNV :: FunPtr (GLuint -> IO GLboolean)
ptr_glIsTransformFeedbackNV = unsafePerformIO $ getCommand "glIsTransformFeedbackNV"

-- glIsVariantEnabledEXT -------------------------------------------------------

glIsVariantEnabledEXT
  :: GLuint -- ^ @id@.
  -> GLenum -- ^ @cap@ of type @VariantCapEXT@.
  -> IO GLboolean -- ^ of type @Boolean@.
glIsVariantEnabledEXT = dyn_glIsVariantEnabledEXT ptr_glIsVariantEnabledEXT

foreign import CALLCONV "dynamic" dyn_glIsVariantEnabledEXT
  :: FunPtr (GLuint -> GLenum -> IO GLboolean)
  ->         GLuint -> GLenum -> IO GLboolean

{-# NOINLINE ptr_glIsVariantEnabledEXT #-}
ptr_glIsVariantEnabledEXT :: FunPtr (GLuint -> GLenum -> IO GLboolean)
ptr_glIsVariantEnabledEXT = unsafePerformIO $ getCommand "glIsVariantEnabledEXT"

-- glIsVertexArray -------------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glIsVertexArray.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glIsVertexArray.xhtml OpenGL 4.x>
glIsVertexArray
  :: GLuint -- ^ @array@.
  -> IO GLboolean -- ^ of type @Boolean@.
glIsVertexArray = dyn_glIsVertexArray ptr_glIsVertexArray

foreign import CALLCONV "dynamic" dyn_glIsVertexArray
  :: FunPtr (GLuint -> IO GLboolean)
  ->         GLuint -> IO GLboolean

{-# NOINLINE ptr_glIsVertexArray #-}
ptr_glIsVertexArray :: FunPtr (GLuint -> IO GLboolean)
ptr_glIsVertexArray = unsafePerformIO $ getCommand "glIsVertexArray"

-- glIsVertexArrayAPPLE --------------------------------------------------------

glIsVertexArrayAPPLE
  :: GLuint -- ^ @array@.
  -> IO GLboolean -- ^ of type @Boolean@.
glIsVertexArrayAPPLE = dyn_glIsVertexArrayAPPLE ptr_glIsVertexArrayAPPLE

foreign import CALLCONV "dynamic" dyn_glIsVertexArrayAPPLE
  :: FunPtr (GLuint -> IO GLboolean)
  ->         GLuint -> IO GLboolean

{-# NOINLINE ptr_glIsVertexArrayAPPLE #-}
ptr_glIsVertexArrayAPPLE :: FunPtr (GLuint -> IO GLboolean)
ptr_glIsVertexArrayAPPLE = unsafePerformIO $ getCommand "glIsVertexArrayAPPLE"

-- glIsVertexArrayOES ----------------------------------------------------------

glIsVertexArrayOES
  :: GLuint -- ^ @array@.
  -> IO GLboolean
glIsVertexArrayOES = dyn_glIsVertexArrayOES ptr_glIsVertexArrayOES

foreign import CALLCONV "dynamic" dyn_glIsVertexArrayOES
  :: FunPtr (GLuint -> IO GLboolean)
  ->         GLuint -> IO GLboolean

{-# NOINLINE ptr_glIsVertexArrayOES #-}
ptr_glIsVertexArrayOES :: FunPtr (GLuint -> IO GLboolean)
ptr_glIsVertexArrayOES = unsafePerformIO $ getCommand "glIsVertexArrayOES"

-- glIsVertexAttribEnabledAPPLE ------------------------------------------------

glIsVertexAttribEnabledAPPLE
  :: GLuint -- ^ @index@.
  -> GLenum -- ^ @pname@.
  -> IO GLboolean -- ^ of type @Boolean@.
glIsVertexAttribEnabledAPPLE = dyn_glIsVertexAttribEnabledAPPLE ptr_glIsVertexAttribEnabledAPPLE

foreign import CALLCONV "dynamic" dyn_glIsVertexAttribEnabledAPPLE
  :: FunPtr (GLuint -> GLenum -> IO GLboolean)
  ->         GLuint -> GLenum -> IO GLboolean

{-# NOINLINE ptr_glIsVertexAttribEnabledAPPLE #-}
ptr_glIsVertexAttribEnabledAPPLE :: FunPtr (GLuint -> GLenum -> IO GLboolean)
ptr_glIsVertexAttribEnabledAPPLE = unsafePerformIO $ getCommand "glIsVertexAttribEnabledAPPLE"

-- glLabelObjectEXT ------------------------------------------------------------

glLabelObjectEXT
  :: GLenum -- ^ @type@.
  -> GLuint -- ^ @object@.
  -> GLsizei -- ^ @length@.
  -> Ptr GLchar -- ^ @label@.
  -> IO ()
glLabelObjectEXT = dyn_glLabelObjectEXT ptr_glLabelObjectEXT

foreign import CALLCONV "dynamic" dyn_glLabelObjectEXT
  :: FunPtr (GLenum -> GLuint -> GLsizei -> Ptr GLchar -> IO ())
  ->         GLenum -> GLuint -> GLsizei -> Ptr GLchar -> IO ()

{-# NOINLINE ptr_glLabelObjectEXT #-}
ptr_glLabelObjectEXT :: FunPtr (GLenum -> GLuint -> GLsizei -> Ptr GLchar -> IO ())
ptr_glLabelObjectEXT = unsafePerformIO $ getCommand "glLabelObjectEXT"

-- glLightEnviSGIX -------------------------------------------------------------

glLightEnviSGIX
  :: GLenum -- ^ @pname@ of type @LightEnvParameterSGIX@.
  -> GLint -- ^ @param@ of type @CheckedInt32@.
  -> IO ()
glLightEnviSGIX = dyn_glLightEnviSGIX ptr_glLightEnviSGIX

foreign import CALLCONV "dynamic" dyn_glLightEnviSGIX
  :: FunPtr (GLenum -> GLint -> IO ())
  ->         GLenum -> GLint -> IO ()

{-# NOINLINE ptr_glLightEnviSGIX #-}
ptr_glLightEnviSGIX :: FunPtr (GLenum -> GLint -> IO ())
ptr_glLightEnviSGIX = unsafePerformIO $ getCommand "glLightEnviSGIX"

-- glLightModelf ---------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glLightModel.xml OpenGL 2.x>
glLightModelf
  :: GLenum -- ^ @pname@ of type @LightModelParameter@.
  -> GLfloat -- ^ @param@.
  -> IO ()
glLightModelf = dyn_glLightModelf ptr_glLightModelf

foreign import CALLCONV "dynamic" dyn_glLightModelf
  :: FunPtr (GLenum -> GLfloat -> IO ())
  ->         GLenum -> GLfloat -> IO ()

{-# NOINLINE ptr_glLightModelf #-}
ptr_glLightModelf :: FunPtr (GLenum -> GLfloat -> IO ())
ptr_glLightModelf = unsafePerformIO $ getCommand "glLightModelf"

-- glLightModelfv --------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glLightModel.xml OpenGL 2.x>
glLightModelfv
  :: GLenum -- ^ @pname@ of type @LightModelParameter@.
  -> Ptr GLfloat -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLfloat@.
  -> IO ()
glLightModelfv = dyn_glLightModelfv ptr_glLightModelfv

foreign import CALLCONV "dynamic" dyn_glLightModelfv
  :: FunPtr (GLenum -> Ptr GLfloat -> IO ())
  ->         GLenum -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glLightModelfv #-}
ptr_glLightModelfv :: FunPtr (GLenum -> Ptr GLfloat -> IO ())
ptr_glLightModelfv = unsafePerformIO $ getCommand "glLightModelfv"

-- glLightModeli ---------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glLightModel.xml OpenGL 2.x>
glLightModeli
  :: GLenum -- ^ @pname@ of type @LightModelParameter@.
  -> GLint -- ^ @param@.
  -> IO ()
glLightModeli = dyn_glLightModeli ptr_glLightModeli

foreign import CALLCONV "dynamic" dyn_glLightModeli
  :: FunPtr (GLenum -> GLint -> IO ())
  ->         GLenum -> GLint -> IO ()

{-# NOINLINE ptr_glLightModeli #-}
ptr_glLightModeli :: FunPtr (GLenum -> GLint -> IO ())
ptr_glLightModeli = unsafePerformIO $ getCommand "glLightModeli"

-- glLightModeliv --------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glLightModel.xml OpenGL 2.x>
glLightModeliv
  :: GLenum -- ^ @pname@ of type @LightModelParameter@.
  -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLint@.
  -> IO ()
glLightModeliv = dyn_glLightModeliv ptr_glLightModeliv

foreign import CALLCONV "dynamic" dyn_glLightModeliv
  :: FunPtr (GLenum -> Ptr GLint -> IO ())
  ->         GLenum -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glLightModeliv #-}
ptr_glLightModeliv :: FunPtr (GLenum -> Ptr GLint -> IO ())
ptr_glLightModeliv = unsafePerformIO $ getCommand "glLightModeliv"

-- glLightModelx ---------------------------------------------------------------

glLightModelx
  :: GLenum -- ^ @pname@.
  -> GLfixed -- ^ @param@.
  -> IO ()
glLightModelx = dyn_glLightModelx ptr_glLightModelx

foreign import CALLCONV "dynamic" dyn_glLightModelx
  :: FunPtr (GLenum -> GLfixed -> IO ())
  ->         GLenum -> GLfixed -> IO ()

{-# NOINLINE ptr_glLightModelx #-}
ptr_glLightModelx :: FunPtr (GLenum -> GLfixed -> IO ())
ptr_glLightModelx = unsafePerformIO $ getCommand "glLightModelx"

-- glLightModelxOES ------------------------------------------------------------

glLightModelxOES
  :: GLenum -- ^ @pname@.
  -> GLfixed -- ^ @param@.
  -> IO ()
glLightModelxOES = dyn_glLightModelxOES ptr_glLightModelxOES

foreign import CALLCONV "dynamic" dyn_glLightModelxOES
  :: FunPtr (GLenum -> GLfixed -> IO ())
  ->         GLenum -> GLfixed -> IO ()

{-# NOINLINE ptr_glLightModelxOES #-}
ptr_glLightModelxOES :: FunPtr (GLenum -> GLfixed -> IO ())
ptr_glLightModelxOES = unsafePerformIO $ getCommand "glLightModelxOES"

-- glLightModelxv --------------------------------------------------------------

glLightModelxv
  :: GLenum -- ^ @pname@.
  -> Ptr GLfixed -- ^ @param@ pointing to @COMPSIZE(pname)@ elements of type @GLfixed@.
  -> IO ()
glLightModelxv = dyn_glLightModelxv ptr_glLightModelxv

foreign import CALLCONV "dynamic" dyn_glLightModelxv
  :: FunPtr (GLenum -> Ptr GLfixed -> IO ())
  ->         GLenum -> Ptr GLfixed -> IO ()

{-# NOINLINE ptr_glLightModelxv #-}
ptr_glLightModelxv :: FunPtr (GLenum -> Ptr GLfixed -> IO ())
ptr_glLightModelxv = unsafePerformIO $ getCommand "glLightModelxv"

-- glLightModelxvOES -----------------------------------------------------------

glLightModelxvOES
  :: GLenum -- ^ @pname@.
  -> Ptr GLfixed -- ^ @param@ pointing to @COMPSIZE(pname)@ elements of type @GLfixed@.
  -> IO ()
glLightModelxvOES = dyn_glLightModelxvOES ptr_glLightModelxvOES

foreign import CALLCONV "dynamic" dyn_glLightModelxvOES
  :: FunPtr (GLenum -> Ptr GLfixed -> IO ())
  ->         GLenum -> Ptr GLfixed -> IO ()

{-# NOINLINE ptr_glLightModelxvOES #-}
ptr_glLightModelxvOES :: FunPtr (GLenum -> Ptr GLfixed -> IO ())
ptr_glLightModelxvOES = unsafePerformIO $ getCommand "glLightModelxvOES"

-- glLightf --------------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glLight.xml OpenGL 2.x>
glLightf
  :: GLenum -- ^ @light@ of type @LightName@.
  -> GLenum -- ^ @pname@ of type @LightParameter@.
  -> GLfloat -- ^ @param@ of type @CheckedFloat32@.
  -> IO ()
glLightf = dyn_glLightf ptr_glLightf

foreign import CALLCONV "dynamic" dyn_glLightf
  :: FunPtr (GLenum -> GLenum -> GLfloat -> IO ())
  ->         GLenum -> GLenum -> GLfloat -> IO ()

{-# NOINLINE ptr_glLightf #-}
ptr_glLightf :: FunPtr (GLenum -> GLenum -> GLfloat -> IO ())
ptr_glLightf = unsafePerformIO $ getCommand "glLightf"

-- glLightfv -------------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glLight.xml OpenGL 2.x>
glLightfv
  :: GLenum -- ^ @light@ of type @LightName@.
  -> GLenum -- ^ @pname@ of type @LightParameter@.
  -> Ptr GLfloat -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @CheckedFloat32@.
  -> IO ()
glLightfv = dyn_glLightfv ptr_glLightfv

foreign import CALLCONV "dynamic" dyn_glLightfv
  :: FunPtr (GLenum -> GLenum -> Ptr GLfloat -> IO ())
  ->         GLenum -> GLenum -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glLightfv #-}
ptr_glLightfv :: FunPtr (GLenum -> GLenum -> Ptr GLfloat -> IO ())
ptr_glLightfv = unsafePerformIO $ getCommand "glLightfv"

-- glLighti --------------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glLight.xml OpenGL 2.x>
glLighti
  :: GLenum -- ^ @light@ of type @LightName@.
  -> GLenum -- ^ @pname@ of type @LightParameter@.
  -> GLint -- ^ @param@ of type @CheckedInt32@.
  -> IO ()
glLighti = dyn_glLighti ptr_glLighti

foreign import CALLCONV "dynamic" dyn_glLighti
  :: FunPtr (GLenum -> GLenum -> GLint -> IO ())
  ->         GLenum -> GLenum -> GLint -> IO ()

{-# NOINLINE ptr_glLighti #-}
ptr_glLighti :: FunPtr (GLenum -> GLenum -> GLint -> IO ())
ptr_glLighti = unsafePerformIO $ getCommand "glLighti"

-- glLightiv -------------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glLight.xml OpenGL 2.x>
glLightiv
  :: GLenum -- ^ @light@ of type @LightName@.
  -> GLenum -- ^ @pname@ of type @LightParameter@.
  -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @CheckedInt32@.
  -> IO ()
glLightiv = dyn_glLightiv ptr_glLightiv

foreign import CALLCONV "dynamic" dyn_glLightiv
  :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
  ->         GLenum -> GLenum -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glLightiv #-}
ptr_glLightiv :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
ptr_glLightiv = unsafePerformIO $ getCommand "glLightiv"

-- glLightx --------------------------------------------------------------------

glLightx
  :: GLenum -- ^ @light@.
  -> GLenum -- ^ @pname@.
  -> GLfixed -- ^ @param@.
  -> IO ()
glLightx = dyn_glLightx ptr_glLightx

foreign import CALLCONV "dynamic" dyn_glLightx
  :: FunPtr (GLenum -> GLenum -> GLfixed -> IO ())
  ->         GLenum -> GLenum -> GLfixed -> IO ()

{-# NOINLINE ptr_glLightx #-}
ptr_glLightx :: FunPtr (GLenum -> GLenum -> GLfixed -> IO ())
ptr_glLightx = unsafePerformIO $ getCommand "glLightx"

-- glLightxOES -----------------------------------------------------------------

glLightxOES
  :: GLenum -- ^ @light@.
  -> GLenum -- ^ @pname@.
  -> GLfixed -- ^ @param@.
  -> IO ()
glLightxOES = dyn_glLightxOES ptr_glLightxOES

foreign import CALLCONV "dynamic" dyn_glLightxOES
  :: FunPtr (GLenum -> GLenum -> GLfixed -> IO ())
  ->         GLenum -> GLenum -> GLfixed -> IO ()

{-# NOINLINE ptr_glLightxOES #-}
ptr_glLightxOES :: FunPtr (GLenum -> GLenum -> GLfixed -> IO ())
ptr_glLightxOES = unsafePerformIO $ getCommand "glLightxOES"

-- glLightxv -------------------------------------------------------------------

glLightxv
  :: GLenum -- ^ @light@.
  -> GLenum -- ^ @pname@.
  -> Ptr GLfixed -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLfixed@.
  -> IO ()
glLightxv = dyn_glLightxv ptr_glLightxv

foreign import CALLCONV "dynamic" dyn_glLightxv
  :: FunPtr (GLenum -> GLenum -> Ptr GLfixed -> IO ())
  ->         GLenum -> GLenum -> Ptr GLfixed -> IO ()

{-# NOINLINE ptr_glLightxv #-}
ptr_glLightxv :: FunPtr (GLenum -> GLenum -> Ptr GLfixed -> IO ())
ptr_glLightxv = unsafePerformIO $ getCommand "glLightxv"

-- glLightxvOES ----------------------------------------------------------------

glLightxvOES
  :: GLenum -- ^ @light@.
  -> GLenum -- ^ @pname@.
  -> Ptr GLfixed -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLfixed@.
  -> IO ()
glLightxvOES = dyn_glLightxvOES ptr_glLightxvOES

foreign import CALLCONV "dynamic" dyn_glLightxvOES
  :: FunPtr (GLenum -> GLenum -> Ptr GLfixed -> IO ())
  ->         GLenum -> GLenum -> Ptr GLfixed -> IO ()

{-# NOINLINE ptr_glLightxvOES #-}
ptr_glLightxvOES :: FunPtr (GLenum -> GLenum -> Ptr GLfixed -> IO ())
ptr_glLightxvOES = unsafePerformIO $ getCommand "glLightxvOES"

-- glLineStipple ---------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glLineStipple.xml OpenGL 2.x>
glLineStipple
  :: GLint -- ^ @factor@ of type @CheckedInt32@.
  -> GLushort -- ^ @pattern@ of type @LineStipple@.
  -> IO ()
glLineStipple = dyn_glLineStipple ptr_glLineStipple

foreign import CALLCONV "dynamic" dyn_glLineStipple
  :: FunPtr (GLint -> GLushort -> IO ())
  ->         GLint -> GLushort -> IO ()

{-# NOINLINE ptr_glLineStipple #-}
ptr_glLineStipple :: FunPtr (GLint -> GLushort -> IO ())
ptr_glLineStipple = unsafePerformIO $ getCommand "glLineStipple"

-- glLineWidth -----------------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glLineWidth.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glLineWidth.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glLineWidth.xhtml OpenGL 4.x>
glLineWidth
  :: GLfloat -- ^ @width@ of type @CheckedFloat32@.
  -> IO ()
glLineWidth = dyn_glLineWidth ptr_glLineWidth

foreign import CALLCONV "dynamic" dyn_glLineWidth
  :: FunPtr (GLfloat -> IO ())
  ->         GLfloat -> IO ()

{-# NOINLINE ptr_glLineWidth #-}
ptr_glLineWidth :: FunPtr (GLfloat -> IO ())
ptr_glLineWidth = unsafePerformIO $ getCommand "glLineWidth"

-- glLineWidthx ----------------------------------------------------------------

glLineWidthx
  :: GLfixed -- ^ @width@.
  -> IO ()
glLineWidthx = dyn_glLineWidthx ptr_glLineWidthx

foreign import CALLCONV "dynamic" dyn_glLineWidthx
  :: FunPtr (GLfixed -> IO ())
  ->         GLfixed -> IO ()

{-# NOINLINE ptr_glLineWidthx #-}
ptr_glLineWidthx :: FunPtr (GLfixed -> IO ())
ptr_glLineWidthx = unsafePerformIO $ getCommand "glLineWidthx"

-- glLineWidthxOES -------------------------------------------------------------

glLineWidthxOES
  :: GLfixed -- ^ @width@.
  -> IO ()
glLineWidthxOES = dyn_glLineWidthxOES ptr_glLineWidthxOES

foreign import CALLCONV "dynamic" dyn_glLineWidthxOES
  :: FunPtr (GLfixed -> IO ())
  ->         GLfixed -> IO ()

{-# NOINLINE ptr_glLineWidthxOES #-}
ptr_glLineWidthxOES :: FunPtr (GLfixed -> IO ())
ptr_glLineWidthxOES = unsafePerformIO $ getCommand "glLineWidthxOES"

-- glLinkProgram ---------------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glLinkProgram.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glLinkProgram.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glLinkProgram.xhtml OpenGL 4.x>
glLinkProgram
  :: GLuint -- ^ @program@.
  -> IO ()
glLinkProgram = dyn_glLinkProgram ptr_glLinkProgram

foreign import CALLCONV "dynamic" dyn_glLinkProgram
  :: FunPtr (GLuint -> IO ())
  ->         GLuint -> IO ()

{-# NOINLINE ptr_glLinkProgram #-}
ptr_glLinkProgram :: FunPtr (GLuint -> IO ())
ptr_glLinkProgram = unsafePerformIO $ getCommand "glLinkProgram"

-- glLinkProgramARB ------------------------------------------------------------

glLinkProgramARB
  :: GLhandleARB -- ^ @programObj@ of type @handleARB@.
  -> IO ()
glLinkProgramARB = dyn_glLinkProgramARB ptr_glLinkProgramARB

foreign import CALLCONV "dynamic" dyn_glLinkProgramARB
  :: FunPtr (GLhandleARB -> IO ())
  ->         GLhandleARB -> IO ()

{-# NOINLINE ptr_glLinkProgramARB #-}
ptr_glLinkProgramARB :: FunPtr (GLhandleARB -> IO ())
ptr_glLinkProgramARB = unsafePerformIO $ getCommand "glLinkProgramARB"

-- glListBase ------------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glListBase.xml OpenGL 2.x>
glListBase
  :: GLuint -- ^ @base@ of type @List@.
  -> IO ()
glListBase = dyn_glListBase ptr_glListBase

foreign import CALLCONV "dynamic" dyn_glListBase
  :: FunPtr (GLuint -> IO ())
  ->         GLuint -> IO ()

{-# NOINLINE ptr_glListBase #-}
ptr_glListBase :: FunPtr (GLuint -> IO ())
ptr_glListBase = unsafePerformIO $ getCommand "glListBase"

-- glListParameterfSGIX --------------------------------------------------------

glListParameterfSGIX
  :: GLuint -- ^ @list@ of type @List@.
  -> GLenum -- ^ @pname@ of type @ListParameterName@.
  -> GLfloat -- ^ @param@ of type @CheckedFloat32@.
  -> IO ()
glListParameterfSGIX = dyn_glListParameterfSGIX ptr_glListParameterfSGIX

foreign import CALLCONV "dynamic" dyn_glListParameterfSGIX
  :: FunPtr (GLuint -> GLenum -> GLfloat -> IO ())
  ->         GLuint -> GLenum -> GLfloat -> IO ()

{-# NOINLINE ptr_glListParameterfSGIX #-}
ptr_glListParameterfSGIX :: FunPtr (GLuint -> GLenum -> GLfloat -> IO ())
ptr_glListParameterfSGIX = unsafePerformIO $ getCommand "glListParameterfSGIX"

-- glListParameterfvSGIX -------------------------------------------------------

glListParameterfvSGIX
  :: GLuint -- ^ @list@ of type @List@.
  -> GLenum -- ^ @pname@ of type @ListParameterName@.
  -> Ptr GLfloat -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @CheckedFloat32@.
  -> IO ()
glListParameterfvSGIX = dyn_glListParameterfvSGIX ptr_glListParameterfvSGIX

foreign import CALLCONV "dynamic" dyn_glListParameterfvSGIX
  :: FunPtr (GLuint -> GLenum -> Ptr GLfloat -> IO ())
  ->         GLuint -> GLenum -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glListParameterfvSGIX #-}
ptr_glListParameterfvSGIX :: FunPtr (GLuint -> GLenum -> Ptr GLfloat -> IO ())
ptr_glListParameterfvSGIX = unsafePerformIO $ getCommand "glListParameterfvSGIX"

-- glListParameteriSGIX --------------------------------------------------------

glListParameteriSGIX
  :: GLuint -- ^ @list@ of type @List@.
  -> GLenum -- ^ @pname@ of type @ListParameterName@.
  -> GLint -- ^ @param@ of type @CheckedInt32@.
  -> IO ()
glListParameteriSGIX = dyn_glListParameteriSGIX ptr_glListParameteriSGIX

foreign import CALLCONV "dynamic" dyn_glListParameteriSGIX
  :: FunPtr (GLuint -> GLenum -> GLint -> IO ())
  ->         GLuint -> GLenum -> GLint -> IO ()

{-# NOINLINE ptr_glListParameteriSGIX #-}
ptr_glListParameteriSGIX :: FunPtr (GLuint -> GLenum -> GLint -> IO ())
ptr_glListParameteriSGIX = unsafePerformIO $ getCommand "glListParameteriSGIX"

-- glListParameterivSGIX -------------------------------------------------------

glListParameterivSGIX
  :: GLuint -- ^ @list@ of type @List@.
  -> GLenum -- ^ @pname@ of type @ListParameterName@.
  -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @CheckedInt32@.
  -> IO ()
glListParameterivSGIX = dyn_glListParameterivSGIX ptr_glListParameterivSGIX

foreign import CALLCONV "dynamic" dyn_glListParameterivSGIX
  :: FunPtr (GLuint -> GLenum -> Ptr GLint -> IO ())
  ->         GLuint -> GLenum -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glListParameterivSGIX #-}
ptr_glListParameterivSGIX :: FunPtr (GLuint -> GLenum -> Ptr GLint -> IO ())
ptr_glListParameterivSGIX = unsafePerformIO $ getCommand "glListParameterivSGIX"

-- glLoadIdentity --------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glLoadIdentity.xml OpenGL 2.x>
glLoadIdentity
  :: IO ()
glLoadIdentity = dyn_glLoadIdentity ptr_glLoadIdentity

foreign import CALLCONV "dynamic" dyn_glLoadIdentity
  :: FunPtr (IO ())
  ->         IO ()

{-# NOINLINE ptr_glLoadIdentity #-}
ptr_glLoadIdentity :: FunPtr (IO ())
ptr_glLoadIdentity = unsafePerformIO $ getCommand "glLoadIdentity"

-- glLoadIdentityDeformationMapSGIX --------------------------------------------

glLoadIdentityDeformationMapSGIX
  :: GLbitfield -- ^ @mask@ of type @FfdMaskSGIX@.
  -> IO ()
glLoadIdentityDeformationMapSGIX = dyn_glLoadIdentityDeformationMapSGIX ptr_glLoadIdentityDeformationMapSGIX

foreign import CALLCONV "dynamic" dyn_glLoadIdentityDeformationMapSGIX
  :: FunPtr (GLbitfield -> IO ())
  ->         GLbitfield -> IO ()

{-# NOINLINE ptr_glLoadIdentityDeformationMapSGIX #-}
ptr_glLoadIdentityDeformationMapSGIX :: FunPtr (GLbitfield -> IO ())
ptr_glLoadIdentityDeformationMapSGIX = unsafePerformIO $ getCommand "glLoadIdentityDeformationMapSGIX"

-- glLoadMatrixd ---------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glLoadMatrix.xml OpenGL 2.x>
glLoadMatrixd
  :: Ptr GLdouble -- ^ @m@ pointing to @16@ elements of type @GLdouble@.
  -> IO ()
glLoadMatrixd = dyn_glLoadMatrixd ptr_glLoadMatrixd

foreign import CALLCONV "dynamic" dyn_glLoadMatrixd
  :: FunPtr (Ptr GLdouble -> IO ())
  ->         Ptr GLdouble -> IO ()

{-# NOINLINE ptr_glLoadMatrixd #-}
ptr_glLoadMatrixd :: FunPtr (Ptr GLdouble -> IO ())
ptr_glLoadMatrixd = unsafePerformIO $ getCommand "glLoadMatrixd"

-- glLoadMatrixf ---------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glLoadMatrix.xml OpenGL 2.x>
glLoadMatrixf
  :: Ptr GLfloat -- ^ @m@ pointing to @16@ elements of type @GLfloat@.
  -> IO ()
glLoadMatrixf = dyn_glLoadMatrixf ptr_glLoadMatrixf

foreign import CALLCONV "dynamic" dyn_glLoadMatrixf
  :: FunPtr (Ptr GLfloat -> IO ())
  ->         Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glLoadMatrixf #-}
ptr_glLoadMatrixf :: FunPtr (Ptr GLfloat -> IO ())
ptr_glLoadMatrixf = unsafePerformIO $ getCommand "glLoadMatrixf"

-- glLoadMatrixx ---------------------------------------------------------------

glLoadMatrixx
  :: Ptr GLfixed -- ^ @m@ pointing to @16@ elements of type @GLfixed@.
  -> IO ()
glLoadMatrixx = dyn_glLoadMatrixx ptr_glLoadMatrixx

foreign import CALLCONV "dynamic" dyn_glLoadMatrixx
  :: FunPtr (Ptr GLfixed -> IO ())
  ->         Ptr GLfixed -> IO ()

{-# NOINLINE ptr_glLoadMatrixx #-}
ptr_glLoadMatrixx :: FunPtr (Ptr GLfixed -> IO ())
ptr_glLoadMatrixx = unsafePerformIO $ getCommand "glLoadMatrixx"

-- glLoadMatrixxOES ------------------------------------------------------------

glLoadMatrixxOES
  :: Ptr GLfixed -- ^ @m@ pointing to @16@ elements of type @GLfixed@.
  -> IO ()
glLoadMatrixxOES = dyn_glLoadMatrixxOES ptr_glLoadMatrixxOES

foreign import CALLCONV "dynamic" dyn_glLoadMatrixxOES
  :: FunPtr (Ptr GLfixed -> IO ())
  ->         Ptr GLfixed -> IO ()

{-# NOINLINE ptr_glLoadMatrixxOES #-}
ptr_glLoadMatrixxOES :: FunPtr (Ptr GLfixed -> IO ())
ptr_glLoadMatrixxOES = unsafePerformIO $ getCommand "glLoadMatrixxOES"

-- glLoadName ------------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glLoadName.xml OpenGL 2.x>
glLoadName
  :: GLuint -- ^ @name@ of type @SelectName@.
  -> IO ()
glLoadName = dyn_glLoadName ptr_glLoadName

foreign import CALLCONV "dynamic" dyn_glLoadName
  :: FunPtr (GLuint -> IO ())
  ->         GLuint -> IO ()

{-# NOINLINE ptr_glLoadName #-}
ptr_glLoadName :: FunPtr (GLuint -> IO ())
ptr_glLoadName = unsafePerformIO $ getCommand "glLoadName"

-- glLoadPaletteFromModelViewMatrixOES -----------------------------------------

glLoadPaletteFromModelViewMatrixOES
  :: IO ()
glLoadPaletteFromModelViewMatrixOES = dyn_glLoadPaletteFromModelViewMatrixOES ptr_glLoadPaletteFromModelViewMatrixOES

foreign import CALLCONV "dynamic" dyn_glLoadPaletteFromModelViewMatrixOES
  :: FunPtr (IO ())
  ->         IO ()

{-# NOINLINE ptr_glLoadPaletteFromModelViewMatrixOES #-}
ptr_glLoadPaletteFromModelViewMatrixOES :: FunPtr (IO ())
ptr_glLoadPaletteFromModelViewMatrixOES = unsafePerformIO $ getCommand "glLoadPaletteFromModelViewMatrixOES"

-- glLoadProgramNV -------------------------------------------------------------

glLoadProgramNV
  :: GLenum -- ^ @target@ of type @VertexAttribEnumNV@.
  -> GLuint -- ^ @id@.
  -> GLsizei -- ^ @len@.
  -> Ptr GLubyte -- ^ @program@ pointing to @len@ elements of type @GLubyte@.
  -> IO ()
glLoadProgramNV = dyn_glLoadProgramNV ptr_glLoadProgramNV

foreign import CALLCONV "dynamic" dyn_glLoadProgramNV
  :: FunPtr (GLenum -> GLuint -> GLsizei -> Ptr GLubyte -> IO ())
  ->         GLenum -> GLuint -> GLsizei -> Ptr GLubyte -> IO ()

{-# NOINLINE ptr_glLoadProgramNV #-}
ptr_glLoadProgramNV :: FunPtr (GLenum -> GLuint -> GLsizei -> Ptr GLubyte -> IO ())
ptr_glLoadProgramNV = unsafePerformIO $ getCommand "glLoadProgramNV"

-- glLoadTransposeMatrixd ------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glLoadTransposeMatrix.xml OpenGL 2.x>
glLoadTransposeMatrixd
  :: Ptr GLdouble -- ^ @m@ pointing to @16@ elements of type @GLdouble@.
  -> IO ()
glLoadTransposeMatrixd = dyn_glLoadTransposeMatrixd ptr_glLoadTransposeMatrixd

foreign import CALLCONV "dynamic" dyn_glLoadTransposeMatrixd
  :: FunPtr (Ptr GLdouble -> IO ())
  ->         Ptr GLdouble -> IO ()

{-# NOINLINE ptr_glLoadTransposeMatrixd #-}
ptr_glLoadTransposeMatrixd :: FunPtr (Ptr GLdouble -> IO ())
ptr_glLoadTransposeMatrixd = unsafePerformIO $ getCommand "glLoadTransposeMatrixd"

-- glLoadTransposeMatrixdARB ---------------------------------------------------

glLoadTransposeMatrixdARB
  :: Ptr GLdouble -- ^ @m@ pointing to @16@ elements of type @GLdouble@.
  -> IO ()
glLoadTransposeMatrixdARB = dyn_glLoadTransposeMatrixdARB ptr_glLoadTransposeMatrixdARB

foreign import CALLCONV "dynamic" dyn_glLoadTransposeMatrixdARB
  :: FunPtr (Ptr GLdouble -> IO ())
  ->         Ptr GLdouble -> IO ()

{-# NOINLINE ptr_glLoadTransposeMatrixdARB #-}
ptr_glLoadTransposeMatrixdARB :: FunPtr (Ptr GLdouble -> IO ())
ptr_glLoadTransposeMatrixdARB = unsafePerformIO $ getCommand "glLoadTransposeMatrixdARB"

-- glLoadTransposeMatrixf ------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glLoadTransposeMatrix.xml OpenGL 2.x>
glLoadTransposeMatrixf
  :: Ptr GLfloat -- ^ @m@ pointing to @16@ elements of type @GLfloat@.
  -> IO ()
glLoadTransposeMatrixf = dyn_glLoadTransposeMatrixf ptr_glLoadTransposeMatrixf

foreign import CALLCONV "dynamic" dyn_glLoadTransposeMatrixf
  :: FunPtr (Ptr GLfloat -> IO ())
  ->         Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glLoadTransposeMatrixf #-}
ptr_glLoadTransposeMatrixf :: FunPtr (Ptr GLfloat -> IO ())
ptr_glLoadTransposeMatrixf = unsafePerformIO $ getCommand "glLoadTransposeMatrixf"

-- glLoadTransposeMatrixfARB ---------------------------------------------------

glLoadTransposeMatrixfARB
  :: Ptr GLfloat -- ^ @m@ pointing to @16@ elements of type @GLfloat@.
  -> IO ()
glLoadTransposeMatrixfARB = dyn_glLoadTransposeMatrixfARB ptr_glLoadTransposeMatrixfARB

foreign import CALLCONV "dynamic" dyn_glLoadTransposeMatrixfARB
  :: FunPtr (Ptr GLfloat -> IO ())
  ->         Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glLoadTransposeMatrixfARB #-}
ptr_glLoadTransposeMatrixfARB :: FunPtr (Ptr GLfloat -> IO ())
ptr_glLoadTransposeMatrixfARB = unsafePerformIO $ getCommand "glLoadTransposeMatrixfARB"

-- glLoadTransposeMatrixxOES ---------------------------------------------------

glLoadTransposeMatrixxOES
  :: Ptr GLfixed -- ^ @m@ pointing to @16@ elements of type @GLfixed@.
  -> IO ()
glLoadTransposeMatrixxOES = dyn_glLoadTransposeMatrixxOES ptr_glLoadTransposeMatrixxOES

foreign import CALLCONV "dynamic" dyn_glLoadTransposeMatrixxOES
  :: FunPtr (Ptr GLfixed -> IO ())
  ->         Ptr GLfixed -> IO ()

{-# NOINLINE ptr_glLoadTransposeMatrixxOES #-}
ptr_glLoadTransposeMatrixxOES :: FunPtr (Ptr GLfixed -> IO ())
ptr_glLoadTransposeMatrixxOES = unsafePerformIO $ getCommand "glLoadTransposeMatrixxOES"

-- glLockArraysEXT -------------------------------------------------------------

glLockArraysEXT
  :: GLint -- ^ @first@.
  -> GLsizei -- ^ @count@.
  -> IO ()
glLockArraysEXT = dyn_glLockArraysEXT ptr_glLockArraysEXT

foreign import CALLCONV "dynamic" dyn_glLockArraysEXT
  :: FunPtr (GLint -> GLsizei -> IO ())
  ->         GLint -> GLsizei -> IO ()

{-# NOINLINE ptr_glLockArraysEXT #-}
ptr_glLockArraysEXT :: FunPtr (GLint -> GLsizei -> IO ())
ptr_glLockArraysEXT = unsafePerformIO $ getCommand "glLockArraysEXT"

-- glLogicOp -------------------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glLogicOp.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glLogicOp.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glLogicOp.xhtml OpenGL 4.x>
glLogicOp
  :: GLenum -- ^ @opcode@ of type @LogicOp@.
  -> IO ()
glLogicOp = dyn_glLogicOp ptr_glLogicOp

foreign import CALLCONV "dynamic" dyn_glLogicOp
  :: FunPtr (GLenum -> IO ())
  ->         GLenum -> IO ()

{-# NOINLINE ptr_glLogicOp #-}
ptr_glLogicOp :: FunPtr (GLenum -> IO ())
ptr_glLogicOp = unsafePerformIO $ getCommand "glLogicOp"

-- glMakeBufferNonResidentNV ---------------------------------------------------

glMakeBufferNonResidentNV
  :: GLenum -- ^ @target@.
  -> IO ()
glMakeBufferNonResidentNV = dyn_glMakeBufferNonResidentNV ptr_glMakeBufferNonResidentNV

foreign import CALLCONV "dynamic" dyn_glMakeBufferNonResidentNV
  :: FunPtr (GLenum -> IO ())
  ->         GLenum -> IO ()

{-# NOINLINE ptr_glMakeBufferNonResidentNV #-}
ptr_glMakeBufferNonResidentNV :: FunPtr (GLenum -> IO ())
ptr_glMakeBufferNonResidentNV = unsafePerformIO $ getCommand "glMakeBufferNonResidentNV"

-- glMakeBufferResidentNV ------------------------------------------------------

glMakeBufferResidentNV
  :: GLenum -- ^ @target@.
  -> GLenum -- ^ @access@.
  -> IO ()
glMakeBufferResidentNV = dyn_glMakeBufferResidentNV ptr_glMakeBufferResidentNV

foreign import CALLCONV "dynamic" dyn_glMakeBufferResidentNV
  :: FunPtr (GLenum -> GLenum -> IO ())
  ->         GLenum -> GLenum -> IO ()

{-# NOINLINE ptr_glMakeBufferResidentNV #-}
ptr_glMakeBufferResidentNV :: FunPtr (GLenum -> GLenum -> IO ())
ptr_glMakeBufferResidentNV = unsafePerformIO $ getCommand "glMakeBufferResidentNV"

-- glMakeImageHandleNonResidentARB ---------------------------------------------

glMakeImageHandleNonResidentARB
  :: GLuint64 -- ^ @handle@.
  -> IO ()
glMakeImageHandleNonResidentARB = dyn_glMakeImageHandleNonResidentARB ptr_glMakeImageHandleNonResidentARB

foreign import CALLCONV "dynamic" dyn_glMakeImageHandleNonResidentARB
  :: FunPtr (GLuint64 -> IO ())
  ->         GLuint64 -> IO ()

{-# NOINLINE ptr_glMakeImageHandleNonResidentARB #-}
ptr_glMakeImageHandleNonResidentARB :: FunPtr (GLuint64 -> IO ())
ptr_glMakeImageHandleNonResidentARB = unsafePerformIO $ getCommand "glMakeImageHandleNonResidentARB"

-- glMakeImageHandleNonResidentNV ----------------------------------------------

glMakeImageHandleNonResidentNV
  :: GLuint64 -- ^ @handle@.
  -> IO ()
glMakeImageHandleNonResidentNV = dyn_glMakeImageHandleNonResidentNV ptr_glMakeImageHandleNonResidentNV

foreign import CALLCONV "dynamic" dyn_glMakeImageHandleNonResidentNV
  :: FunPtr (GLuint64 -> IO ())
  ->         GLuint64 -> IO ()

{-# NOINLINE ptr_glMakeImageHandleNonResidentNV #-}
ptr_glMakeImageHandleNonResidentNV :: FunPtr (GLuint64 -> IO ())
ptr_glMakeImageHandleNonResidentNV = unsafePerformIO $ getCommand "glMakeImageHandleNonResidentNV"

-- glMakeImageHandleResidentARB ------------------------------------------------

glMakeImageHandleResidentARB
  :: GLuint64 -- ^ @handle@.
  -> GLenum -- ^ @access@.
  -> IO ()
glMakeImageHandleResidentARB = dyn_glMakeImageHandleResidentARB ptr_glMakeImageHandleResidentARB

foreign import CALLCONV "dynamic" dyn_glMakeImageHandleResidentARB
  :: FunPtr (GLuint64 -> GLenum -> IO ())
  ->         GLuint64 -> GLenum -> IO ()

{-# NOINLINE ptr_glMakeImageHandleResidentARB #-}
ptr_glMakeImageHandleResidentARB :: FunPtr (GLuint64 -> GLenum -> IO ())
ptr_glMakeImageHandleResidentARB = unsafePerformIO $ getCommand "glMakeImageHandleResidentARB"

-- glMakeImageHandleResidentNV -------------------------------------------------

glMakeImageHandleResidentNV
  :: GLuint64 -- ^ @handle@.
  -> GLenum -- ^ @access@.
  -> IO ()
glMakeImageHandleResidentNV = dyn_glMakeImageHandleResidentNV ptr_glMakeImageHandleResidentNV

foreign import CALLCONV "dynamic" dyn_glMakeImageHandleResidentNV
  :: FunPtr (GLuint64 -> GLenum -> IO ())
  ->         GLuint64 -> GLenum -> IO ()

{-# NOINLINE ptr_glMakeImageHandleResidentNV #-}
ptr_glMakeImageHandleResidentNV :: FunPtr (GLuint64 -> GLenum -> IO ())
ptr_glMakeImageHandleResidentNV = unsafePerformIO $ getCommand "glMakeImageHandleResidentNV"

-- glMakeNamedBufferNonResidentNV ----------------------------------------------

glMakeNamedBufferNonResidentNV
  :: GLuint -- ^ @buffer@.
  -> IO ()
glMakeNamedBufferNonResidentNV = dyn_glMakeNamedBufferNonResidentNV ptr_glMakeNamedBufferNonResidentNV

foreign import CALLCONV "dynamic" dyn_glMakeNamedBufferNonResidentNV
  :: FunPtr (GLuint -> IO ())
  ->         GLuint -> IO ()

{-# NOINLINE ptr_glMakeNamedBufferNonResidentNV #-}
ptr_glMakeNamedBufferNonResidentNV :: FunPtr (GLuint -> IO ())
ptr_glMakeNamedBufferNonResidentNV = unsafePerformIO $ getCommand "glMakeNamedBufferNonResidentNV"

-- glMakeNamedBufferResidentNV -------------------------------------------------

glMakeNamedBufferResidentNV
  :: GLuint -- ^ @buffer@.
  -> GLenum -- ^ @access@.
  -> IO ()
glMakeNamedBufferResidentNV = dyn_glMakeNamedBufferResidentNV ptr_glMakeNamedBufferResidentNV

foreign import CALLCONV "dynamic" dyn_glMakeNamedBufferResidentNV
  :: FunPtr (GLuint -> GLenum -> IO ())
  ->         GLuint -> GLenum -> IO ()

{-# NOINLINE ptr_glMakeNamedBufferResidentNV #-}
ptr_glMakeNamedBufferResidentNV :: FunPtr (GLuint -> GLenum -> IO ())
ptr_glMakeNamedBufferResidentNV = unsafePerformIO $ getCommand "glMakeNamedBufferResidentNV"

-- glMakeTextureHandleNonResidentARB -------------------------------------------

glMakeTextureHandleNonResidentARB
  :: GLuint64 -- ^ @handle@.
  -> IO ()
glMakeTextureHandleNonResidentARB = dyn_glMakeTextureHandleNonResidentARB ptr_glMakeTextureHandleNonResidentARB

foreign import CALLCONV "dynamic" dyn_glMakeTextureHandleNonResidentARB
  :: FunPtr (GLuint64 -> IO ())
  ->         GLuint64 -> IO ()

{-# NOINLINE ptr_glMakeTextureHandleNonResidentARB #-}
ptr_glMakeTextureHandleNonResidentARB :: FunPtr (GLuint64 -> IO ())
ptr_glMakeTextureHandleNonResidentARB = unsafePerformIO $ getCommand "glMakeTextureHandleNonResidentARB"

-- glMakeTextureHandleNonResidentNV --------------------------------------------

glMakeTextureHandleNonResidentNV
  :: GLuint64 -- ^ @handle@.
  -> IO ()
glMakeTextureHandleNonResidentNV = dyn_glMakeTextureHandleNonResidentNV ptr_glMakeTextureHandleNonResidentNV

foreign import CALLCONV "dynamic" dyn_glMakeTextureHandleNonResidentNV
  :: FunPtr (GLuint64 -> IO ())
  ->         GLuint64 -> IO ()

{-# NOINLINE ptr_glMakeTextureHandleNonResidentNV #-}
ptr_glMakeTextureHandleNonResidentNV :: FunPtr (GLuint64 -> IO ())
ptr_glMakeTextureHandleNonResidentNV = unsafePerformIO $ getCommand "glMakeTextureHandleNonResidentNV"

-- glMakeTextureHandleResidentARB ----------------------------------------------

glMakeTextureHandleResidentARB
  :: GLuint64 -- ^ @handle@.
  -> IO ()
glMakeTextureHandleResidentARB = dyn_glMakeTextureHandleResidentARB ptr_glMakeTextureHandleResidentARB

foreign import CALLCONV "dynamic" dyn_glMakeTextureHandleResidentARB
  :: FunPtr (GLuint64 -> IO ())
  ->         GLuint64 -> IO ()

{-# NOINLINE ptr_glMakeTextureHandleResidentARB #-}
ptr_glMakeTextureHandleResidentARB :: FunPtr (GLuint64 -> IO ())
ptr_glMakeTextureHandleResidentARB = unsafePerformIO $ getCommand "glMakeTextureHandleResidentARB"

-- glMakeTextureHandleResidentNV -----------------------------------------------

glMakeTextureHandleResidentNV
  :: GLuint64 -- ^ @handle@.
  -> IO ()
glMakeTextureHandleResidentNV = dyn_glMakeTextureHandleResidentNV ptr_glMakeTextureHandleResidentNV

foreign import CALLCONV "dynamic" dyn_glMakeTextureHandleResidentNV
  :: FunPtr (GLuint64 -> IO ())
  ->         GLuint64 -> IO ()

{-# NOINLINE ptr_glMakeTextureHandleResidentNV #-}
ptr_glMakeTextureHandleResidentNV :: FunPtr (GLuint64 -> IO ())
ptr_glMakeTextureHandleResidentNV = unsafePerformIO $ getCommand "glMakeTextureHandleResidentNV"

-- glMap1d ---------------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glMap1.xml OpenGL 2.x>
glMap1d
  :: GLenum -- ^ @target@ of type @MapTarget@.
  -> GLdouble -- ^ @u1@ of type @CoordD@.
  -> GLdouble -- ^ @u2@ of type @CoordD@.
  -> GLint -- ^ @stride@.
  -> GLint -- ^ @order@ of type @CheckedInt32@.
  -> Ptr GLdouble -- ^ @points@ pointing to @COMPSIZE(target,stride,order)@ elements of type @CoordD@.
  -> IO ()
glMap1d = dyn_glMap1d ptr_glMap1d

foreign import CALLCONV "dynamic" dyn_glMap1d
  :: FunPtr (GLenum -> GLdouble -> GLdouble -> GLint -> GLint -> Ptr GLdouble -> IO ())
  ->         GLenum -> GLdouble -> GLdouble -> GLint -> GLint -> Ptr GLdouble -> IO ()

{-# NOINLINE ptr_glMap1d #-}
ptr_glMap1d :: FunPtr (GLenum -> GLdouble -> GLdouble -> GLint -> GLint -> Ptr GLdouble -> IO ())
ptr_glMap1d = unsafePerformIO $ getCommand "glMap1d"

-- glMap1f ---------------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glMap1.xml OpenGL 2.x>
glMap1f
  :: GLenum -- ^ @target@ of type @MapTarget@.
  -> GLfloat -- ^ @u1@ of type @CoordF@.
  -> GLfloat -- ^ @u2@ of type @CoordF@.
  -> GLint -- ^ @stride@.
  -> GLint -- ^ @order@ of type @CheckedInt32@.
  -> Ptr GLfloat -- ^ @points@ pointing to @COMPSIZE(target,stride,order)@ elements of type @CoordF@.
  -> IO ()
glMap1f = dyn_glMap1f ptr_glMap1f

foreign import CALLCONV "dynamic" dyn_glMap1f
  :: FunPtr (GLenum -> GLfloat -> GLfloat -> GLint -> GLint -> Ptr GLfloat -> IO ())
  ->         GLenum -> GLfloat -> GLfloat -> GLint -> GLint -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glMap1f #-}
ptr_glMap1f :: FunPtr (GLenum -> GLfloat -> GLfloat -> GLint -> GLint -> Ptr GLfloat -> IO ())
ptr_glMap1f = unsafePerformIO $ getCommand "glMap1f"

-- glMap1xOES ------------------------------------------------------------------

glMap1xOES
  :: GLenum -- ^ @target@.
  -> GLfixed -- ^ @u1@.
  -> GLfixed -- ^ @u2@.
  -> GLint -- ^ @stride@.
  -> GLint -- ^ @order@.
  -> GLfixed -- ^ @points@.
  -> IO ()
glMap1xOES = dyn_glMap1xOES ptr_glMap1xOES

foreign import CALLCONV "dynamic" dyn_glMap1xOES
  :: FunPtr (GLenum -> GLfixed -> GLfixed -> GLint -> GLint -> GLfixed -> IO ())
  ->         GLenum -> GLfixed -> GLfixed -> GLint -> GLint -> GLfixed -> IO ()

{-# NOINLINE ptr_glMap1xOES #-}
ptr_glMap1xOES :: FunPtr (GLenum -> GLfixed -> GLfixed -> GLint -> GLint -> GLfixed -> IO ())
ptr_glMap1xOES = unsafePerformIO $ getCommand "glMap1xOES"

-- glMap2d ---------------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glMap2.xml OpenGL 2.x>
glMap2d
  :: GLenum -- ^ @target@ of type @MapTarget@.
  -> GLdouble -- ^ @u1@ of type @CoordD@.
  -> GLdouble -- ^ @u2@ of type @CoordD@.
  -> GLint -- ^ @ustride@.
  -> GLint -- ^ @uorder@ of type @CheckedInt32@.
  -> GLdouble -- ^ @v1@ of type @CoordD@.
  -> GLdouble -- ^ @v2@ of type @CoordD@.
  -> GLint -- ^ @vstride@.
  -> GLint -- ^ @vorder@ of type @CheckedInt32@.
  -> Ptr GLdouble -- ^ @points@ pointing to @COMPSIZE(target,ustride,uorder,vstride,vorder)@ elements of type @CoordD@.
  -> IO ()
glMap2d = dyn_glMap2d ptr_glMap2d

foreign import CALLCONV "dynamic" dyn_glMap2d
  :: FunPtr (GLenum -> GLdouble -> GLdouble -> GLint -> GLint -> GLdouble -> GLdouble -> GLint -> GLint -> Ptr GLdouble -> IO ())
  ->         GLenum -> GLdouble -> GLdouble -> GLint -> GLint -> GLdouble -> GLdouble -> GLint -> GLint -> Ptr GLdouble -> IO ()

{-# NOINLINE ptr_glMap2d #-}
ptr_glMap2d :: FunPtr (GLenum -> GLdouble -> GLdouble -> GLint -> GLint -> GLdouble -> GLdouble -> GLint -> GLint -> Ptr GLdouble -> IO ())
ptr_glMap2d = unsafePerformIO $ getCommand "glMap2d"

-- glMap2f ---------------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glMap2.xml OpenGL 2.x>
glMap2f
  :: GLenum -- ^ @target@ of type @MapTarget@.
  -> GLfloat -- ^ @u1@ of type @CoordF@.
  -> GLfloat -- ^ @u2@ of type @CoordF@.
  -> GLint -- ^ @ustride@.
  -> GLint -- ^ @uorder@ of type @CheckedInt32@.
  -> GLfloat -- ^ @v1@ of type @CoordF@.
  -> GLfloat -- ^ @v2@ of type @CoordF@.
  -> GLint -- ^ @vstride@.
  -> GLint -- ^ @vorder@ of type @CheckedInt32@.
  -> Ptr GLfloat -- ^ @points@ pointing to @COMPSIZE(target,ustride,uorder,vstride,vorder)@ elements of type @CoordF@.
  -> IO ()
glMap2f = dyn_glMap2f ptr_glMap2f

foreign import CALLCONV "dynamic" dyn_glMap2f
  :: FunPtr (GLenum -> GLfloat -> GLfloat -> GLint -> GLint -> GLfloat -> GLfloat -> GLint -> GLint -> Ptr GLfloat -> IO ())
  ->         GLenum -> GLfloat -> GLfloat -> GLint -> GLint -> GLfloat -> GLfloat -> GLint -> GLint -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glMap2f #-}
ptr_glMap2f :: FunPtr (GLenum -> GLfloat -> GLfloat -> GLint -> GLint -> GLfloat -> GLfloat -> GLint -> GLint -> Ptr GLfloat -> IO ())
ptr_glMap2f = unsafePerformIO $ getCommand "glMap2f"

-- glMap2xOES ------------------------------------------------------------------

glMap2xOES
  :: GLenum -- ^ @target@.
  -> GLfixed -- ^ @u1@.
  -> GLfixed -- ^ @u2@.
  -> GLint -- ^ @ustride@.
  -> GLint -- ^ @uorder@.
  -> GLfixed -- ^ @v1@.
  -> GLfixed -- ^ @v2@.
  -> GLint -- ^ @vstride@.
  -> GLint -- ^ @vorder@.
  -> GLfixed -- ^ @points@.
  -> IO ()
glMap2xOES = dyn_glMap2xOES ptr_glMap2xOES

foreign import CALLCONV "dynamic" dyn_glMap2xOES
  :: FunPtr (GLenum -> GLfixed -> GLfixed -> GLint -> GLint -> GLfixed -> GLfixed -> GLint -> GLint -> GLfixed -> IO ())
  ->         GLenum -> GLfixed -> GLfixed -> GLint -> GLint -> GLfixed -> GLfixed -> GLint -> GLint -> GLfixed -> IO ()

{-# NOINLINE ptr_glMap2xOES #-}
ptr_glMap2xOES :: FunPtr (GLenum -> GLfixed -> GLfixed -> GLint -> GLint -> GLfixed -> GLfixed -> GLint -> GLint -> GLfixed -> IO ())
ptr_glMap2xOES = unsafePerformIO $ getCommand "glMap2xOES"

-- glMapBuffer -----------------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glMapBuffer.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glMapBuffer.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glMapBuffer.xhtml OpenGL 4.x>
glMapBuffer
  :: GLenum -- ^ @target@ of type @BufferTargetARB@.
  -> GLenum -- ^ @access@ of type @BufferAccessARB@.
  -> IO (Ptr a)
glMapBuffer = dyn_glMapBuffer ptr_glMapBuffer

foreign import CALLCONV "dynamic" dyn_glMapBuffer
  :: FunPtr (GLenum -> GLenum -> IO (Ptr a))
  ->         GLenum -> GLenum -> IO (Ptr a)

{-# NOINLINE ptr_glMapBuffer #-}
ptr_glMapBuffer :: FunPtr (GLenum -> GLenum -> IO (Ptr a))
ptr_glMapBuffer = unsafePerformIO $ getCommand "glMapBuffer"

-- glMapBufferARB --------------------------------------------------------------

glMapBufferARB
  :: GLenum -- ^ @target@ of type @BufferTargetARB@.
  -> GLenum -- ^ @access@ of type @BufferAccessARB@.
  -> IO (Ptr a)
glMapBufferARB = dyn_glMapBufferARB ptr_glMapBufferARB

foreign import CALLCONV "dynamic" dyn_glMapBufferARB
  :: FunPtr (GLenum -> GLenum -> IO (Ptr a))
  ->         GLenum -> GLenum -> IO (Ptr a)

{-# NOINLINE ptr_glMapBufferARB #-}
ptr_glMapBufferARB :: FunPtr (GLenum -> GLenum -> IO (Ptr a))
ptr_glMapBufferARB = unsafePerformIO $ getCommand "glMapBufferARB"

-- glMapBufferOES --------------------------------------------------------------

glMapBufferOES
  :: GLenum -- ^ @target@.
  -> GLenum -- ^ @access@.
  -> IO (Ptr a)
glMapBufferOES = dyn_glMapBufferOES ptr_glMapBufferOES

foreign import CALLCONV "dynamic" dyn_glMapBufferOES
  :: FunPtr (GLenum -> GLenum -> IO (Ptr a))
  ->         GLenum -> GLenum -> IO (Ptr a)

{-# NOINLINE ptr_glMapBufferOES #-}
ptr_glMapBufferOES :: FunPtr (GLenum -> GLenum -> IO (Ptr a))
ptr_glMapBufferOES = unsafePerformIO $ getCommand "glMapBufferOES"

-- glMapBufferRange ------------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glMapBufferRange.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glMapBufferRange.xhtml OpenGL 4.x>
glMapBufferRange
  :: GLenum -- ^ @target@ of type @BufferTargetARB@.
  -> GLintptr -- ^ @offset@ of type @BufferOffset@.
  -> GLsizeiptr -- ^ @length@ of type @BufferSize@.
  -> GLbitfield -- ^ @access@ of type @BufferAccessMask@.
  -> IO (Ptr a)
glMapBufferRange = dyn_glMapBufferRange ptr_glMapBufferRange

foreign import CALLCONV "dynamic" dyn_glMapBufferRange
  :: FunPtr (GLenum -> GLintptr -> GLsizeiptr -> GLbitfield -> IO (Ptr a))
  ->         GLenum -> GLintptr -> GLsizeiptr -> GLbitfield -> IO (Ptr a)

{-# NOINLINE ptr_glMapBufferRange #-}
ptr_glMapBufferRange :: FunPtr (GLenum -> GLintptr -> GLsizeiptr -> GLbitfield -> IO (Ptr a))
ptr_glMapBufferRange = unsafePerformIO $ getCommand "glMapBufferRange"

-- glMapBufferRangeEXT ---------------------------------------------------------

glMapBufferRangeEXT
  :: GLenum -- ^ @target@.
  -> GLintptr -- ^ @offset@.
  -> GLsizeiptr -- ^ @length@.
  -> GLbitfield -- ^ @access@.
  -> IO (Ptr a)
glMapBufferRangeEXT = dyn_glMapBufferRangeEXT ptr_glMapBufferRangeEXT

foreign import CALLCONV "dynamic" dyn_glMapBufferRangeEXT
  :: FunPtr (GLenum -> GLintptr -> GLsizeiptr -> GLbitfield -> IO (Ptr a))
  ->         GLenum -> GLintptr -> GLsizeiptr -> GLbitfield -> IO (Ptr a)

{-# NOINLINE ptr_glMapBufferRangeEXT #-}
ptr_glMapBufferRangeEXT :: FunPtr (GLenum -> GLintptr -> GLsizeiptr -> GLbitfield -> IO (Ptr a))
ptr_glMapBufferRangeEXT = unsafePerformIO $ getCommand "glMapBufferRangeEXT"

-- glMapControlPointsNV --------------------------------------------------------

glMapControlPointsNV
  :: GLenum -- ^ @target@ of type @EvalTargetNV@.
  -> GLuint -- ^ @index@.
  -> GLenum -- ^ @type@ of type @MapTypeNV@.
  -> GLsizei -- ^ @ustride@.
  -> GLsizei -- ^ @vstride@.
  -> GLint -- ^ @uorder@ of type @CheckedInt32@.
  -> GLint -- ^ @vorder@ of type @CheckedInt32@.
  -> GLboolean -- ^ @packed@ of type @Boolean@.
  -> Ptr a -- ^ @points@ pointing to @COMPSIZE(target,uorder,vorder)@ elements of type @a@.
  -> IO ()
glMapControlPointsNV = dyn_glMapControlPointsNV ptr_glMapControlPointsNV

foreign import CALLCONV "dynamic" dyn_glMapControlPointsNV
  :: FunPtr (GLenum -> GLuint -> GLenum -> GLsizei -> GLsizei -> GLint -> GLint -> GLboolean -> Ptr a -> IO ())
  ->         GLenum -> GLuint -> GLenum -> GLsizei -> GLsizei -> GLint -> GLint -> GLboolean -> Ptr a -> IO ()

{-# NOINLINE ptr_glMapControlPointsNV #-}
ptr_glMapControlPointsNV :: FunPtr (GLenum -> GLuint -> GLenum -> GLsizei -> GLsizei -> GLint -> GLint -> GLboolean -> Ptr a -> IO ())
ptr_glMapControlPointsNV = unsafePerformIO $ getCommand "glMapControlPointsNV"

-- glMapGrid1d -----------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glMapGrid.xml OpenGL 2.x>
glMapGrid1d
  :: GLint -- ^ @un@.
  -> GLdouble -- ^ @u1@ of type @CoordD@.
  -> GLdouble -- ^ @u2@ of type @CoordD@.
  -> IO ()
glMapGrid1d = dyn_glMapGrid1d ptr_glMapGrid1d

foreign import CALLCONV "dynamic" dyn_glMapGrid1d
  :: FunPtr (GLint -> GLdouble -> GLdouble -> IO ())
  ->         GLint -> GLdouble -> GLdouble -> IO ()

{-# NOINLINE ptr_glMapGrid1d #-}
ptr_glMapGrid1d :: FunPtr (GLint -> GLdouble -> GLdouble -> IO ())
ptr_glMapGrid1d = unsafePerformIO $ getCommand "glMapGrid1d"

-- glMapGrid1f -----------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glMapGrid.xml OpenGL 2.x>
glMapGrid1f
  :: GLint -- ^ @un@.
  -> GLfloat -- ^ @u1@ of type @CoordF@.
  -> GLfloat -- ^ @u2@ of type @CoordF@.
  -> IO ()
glMapGrid1f = dyn_glMapGrid1f ptr_glMapGrid1f

foreign import CALLCONV "dynamic" dyn_glMapGrid1f
  :: FunPtr (GLint -> GLfloat -> GLfloat -> IO ())
  ->         GLint -> GLfloat -> GLfloat -> IO ()

{-# NOINLINE ptr_glMapGrid1f #-}
ptr_glMapGrid1f :: FunPtr (GLint -> GLfloat -> GLfloat -> IO ())
ptr_glMapGrid1f = unsafePerformIO $ getCommand "glMapGrid1f"

-- glMapGrid1xOES --------------------------------------------------------------

glMapGrid1xOES
  :: GLint -- ^ @n@.
  -> GLfixed -- ^ @u1@.
  -> GLfixed -- ^ @u2@.
  -> IO ()
glMapGrid1xOES = dyn_glMapGrid1xOES ptr_glMapGrid1xOES

foreign import CALLCONV "dynamic" dyn_glMapGrid1xOES
  :: FunPtr (GLint -> GLfixed -> GLfixed -> IO ())
  ->         GLint -> GLfixed -> GLfixed -> IO ()

{-# NOINLINE ptr_glMapGrid1xOES #-}
ptr_glMapGrid1xOES :: FunPtr (GLint -> GLfixed -> GLfixed -> IO ())
ptr_glMapGrid1xOES = unsafePerformIO $ getCommand "glMapGrid1xOES"

-- glMapGrid2d -----------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glMapGrid.xml OpenGL 2.x>
glMapGrid2d
  :: GLint -- ^ @un@.
  -> GLdouble -- ^ @u1@ of type @CoordD@.
  -> GLdouble -- ^ @u2@ of type @CoordD@.
  -> GLint -- ^ @vn@.
  -> GLdouble -- ^ @v1@ of type @CoordD@.
  -> GLdouble -- ^ @v2@ of type @CoordD@.
  -> IO ()
glMapGrid2d = dyn_glMapGrid2d ptr_glMapGrid2d

foreign import CALLCONV "dynamic" dyn_glMapGrid2d
  :: FunPtr (GLint -> GLdouble -> GLdouble -> GLint -> GLdouble -> GLdouble -> IO ())
  ->         GLint -> GLdouble -> GLdouble -> GLint -> GLdouble -> GLdouble -> IO ()

{-# NOINLINE ptr_glMapGrid2d #-}
ptr_glMapGrid2d :: FunPtr (GLint -> GLdouble -> GLdouble -> GLint -> GLdouble -> GLdouble -> IO ())
ptr_glMapGrid2d = unsafePerformIO $ getCommand "glMapGrid2d"

-- glMapGrid2f -----------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glMapGrid.xml OpenGL 2.x>
glMapGrid2f
  :: GLint -- ^ @un@.
  -> GLfloat -- ^ @u1@ of type @CoordF@.
  -> GLfloat -- ^ @u2@ of type @CoordF@.
  -> GLint -- ^ @vn@.
  -> GLfloat -- ^ @v1@ of type @CoordF@.
  -> GLfloat -- ^ @v2@ of type @CoordF@.
  -> IO ()
glMapGrid2f = dyn_glMapGrid2f ptr_glMapGrid2f

foreign import CALLCONV "dynamic" dyn_glMapGrid2f
  :: FunPtr (GLint -> GLfloat -> GLfloat -> GLint -> GLfloat -> GLfloat -> IO ())
  ->         GLint -> GLfloat -> GLfloat -> GLint -> GLfloat -> GLfloat -> IO ()

{-# NOINLINE ptr_glMapGrid2f #-}
ptr_glMapGrid2f :: FunPtr (GLint -> GLfloat -> GLfloat -> GLint -> GLfloat -> GLfloat -> IO ())
ptr_glMapGrid2f = unsafePerformIO $ getCommand "glMapGrid2f"

-- glMapGrid2xOES --------------------------------------------------------------

glMapGrid2xOES
  :: GLint -- ^ @n@.
  -> GLfixed -- ^ @u1@.
  -> GLfixed -- ^ @u2@.
  -> GLfixed -- ^ @v1@.
  -> GLfixed -- ^ @v2@.
  -> IO ()
glMapGrid2xOES = dyn_glMapGrid2xOES ptr_glMapGrid2xOES

foreign import CALLCONV "dynamic" dyn_glMapGrid2xOES
  :: FunPtr (GLint -> GLfixed -> GLfixed -> GLfixed -> GLfixed -> IO ())
  ->         GLint -> GLfixed -> GLfixed -> GLfixed -> GLfixed -> IO ()

{-# NOINLINE ptr_glMapGrid2xOES #-}
ptr_glMapGrid2xOES :: FunPtr (GLint -> GLfixed -> GLfixed -> GLfixed -> GLfixed -> IO ())
ptr_glMapGrid2xOES = unsafePerformIO $ getCommand "glMapGrid2xOES"

-- glMapNamedBuffer ------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glMapBuffer.xhtml OpenGL 4.x>
glMapNamedBuffer
  :: GLuint -- ^ @buffer@.
  -> GLenum -- ^ @access@.
  -> IO (Ptr a)
glMapNamedBuffer = dyn_glMapNamedBuffer ptr_glMapNamedBuffer

foreign import CALLCONV "dynamic" dyn_glMapNamedBuffer
  :: FunPtr (GLuint -> GLenum -> IO (Ptr a))
  ->         GLuint -> GLenum -> IO (Ptr a)

{-# NOINLINE ptr_glMapNamedBuffer #-}
ptr_glMapNamedBuffer :: FunPtr (GLuint -> GLenum -> IO (Ptr a))
ptr_glMapNamedBuffer = unsafePerformIO $ getCommand "glMapNamedBuffer"

-- glMapNamedBufferEXT ---------------------------------------------------------

glMapNamedBufferEXT
  :: GLuint -- ^ @buffer@.
  -> GLenum -- ^ @access@ of type @VertexBufferObjectAccess@.
  -> IO (Ptr a)
glMapNamedBufferEXT = dyn_glMapNamedBufferEXT ptr_glMapNamedBufferEXT

foreign import CALLCONV "dynamic" dyn_glMapNamedBufferEXT
  :: FunPtr (GLuint -> GLenum -> IO (Ptr a))
  ->         GLuint -> GLenum -> IO (Ptr a)

{-# NOINLINE ptr_glMapNamedBufferEXT #-}
ptr_glMapNamedBufferEXT :: FunPtr (GLuint -> GLenum -> IO (Ptr a))
ptr_glMapNamedBufferEXT = unsafePerformIO $ getCommand "glMapNamedBufferEXT"

-- glMapNamedBufferRange -------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glMapBufferRange.xhtml OpenGL 4.x>
glMapNamedBufferRange
  :: GLuint -- ^ @buffer@.
  -> GLintptr -- ^ @offset@.
  -> GLsizeiptr -- ^ @length@ of type @BufferSize@.
  -> GLbitfield -- ^ @access@.
  -> IO (Ptr a)
glMapNamedBufferRange = dyn_glMapNamedBufferRange ptr_glMapNamedBufferRange

foreign import CALLCONV "dynamic" dyn_glMapNamedBufferRange
  :: FunPtr (GLuint -> GLintptr -> GLsizeiptr -> GLbitfield -> IO (Ptr a))
  ->         GLuint -> GLintptr -> GLsizeiptr -> GLbitfield -> IO (Ptr a)

{-# NOINLINE ptr_glMapNamedBufferRange #-}
ptr_glMapNamedBufferRange :: FunPtr (GLuint -> GLintptr -> GLsizeiptr -> GLbitfield -> IO (Ptr a))
ptr_glMapNamedBufferRange = unsafePerformIO $ getCommand "glMapNamedBufferRange"

-- glMapNamedBufferRangeEXT ----------------------------------------------------

glMapNamedBufferRangeEXT
  :: GLuint -- ^ @buffer@.
  -> GLintptr -- ^ @offset@.
  -> GLsizeiptr -- ^ @length@.
  -> GLbitfield -- ^ @access@ of type @BufferAccessMask@.
  -> IO (Ptr a)
glMapNamedBufferRangeEXT = dyn_glMapNamedBufferRangeEXT ptr_glMapNamedBufferRangeEXT

foreign import CALLCONV "dynamic" dyn_glMapNamedBufferRangeEXT
  :: FunPtr (GLuint -> GLintptr -> GLsizeiptr -> GLbitfield -> IO (Ptr a))
  ->         GLuint -> GLintptr -> GLsizeiptr -> GLbitfield -> IO (Ptr a)

{-# NOINLINE ptr_glMapNamedBufferRangeEXT #-}
ptr_glMapNamedBufferRangeEXT :: FunPtr (GLuint -> GLintptr -> GLsizeiptr -> GLbitfield -> IO (Ptr a))
ptr_glMapNamedBufferRangeEXT = unsafePerformIO $ getCommand "glMapNamedBufferRangeEXT"

-- glMapObjectBufferATI --------------------------------------------------------

glMapObjectBufferATI
  :: GLuint -- ^ @buffer@.
  -> IO (Ptr a)
glMapObjectBufferATI = dyn_glMapObjectBufferATI ptr_glMapObjectBufferATI

foreign import CALLCONV "dynamic" dyn_glMapObjectBufferATI
  :: FunPtr (GLuint -> IO (Ptr a))
  ->         GLuint -> IO (Ptr a)

{-# NOINLINE ptr_glMapObjectBufferATI #-}
ptr_glMapObjectBufferATI :: FunPtr (GLuint -> IO (Ptr a))
ptr_glMapObjectBufferATI = unsafePerformIO $ getCommand "glMapObjectBufferATI"

-- glMapParameterfvNV ----------------------------------------------------------

glMapParameterfvNV
  :: GLenum -- ^ @target@ of type @EvalTargetNV@.
  -> GLenum -- ^ @pname@ of type @MapParameterNV@.
  -> Ptr GLfloat -- ^ @params@ pointing to @COMPSIZE(target,pname)@ elements of type @CheckedFloat32@.
  -> IO ()
glMapParameterfvNV = dyn_glMapParameterfvNV ptr_glMapParameterfvNV

foreign import CALLCONV "dynamic" dyn_glMapParameterfvNV
  :: FunPtr (GLenum -> GLenum -> Ptr GLfloat -> IO ())
  ->         GLenum -> GLenum -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glMapParameterfvNV #-}
ptr_glMapParameterfvNV :: FunPtr (GLenum -> GLenum -> Ptr GLfloat -> IO ())
ptr_glMapParameterfvNV = unsafePerformIO $ getCommand "glMapParameterfvNV"

-- glMapParameterivNV ----------------------------------------------------------

glMapParameterivNV
  :: GLenum -- ^ @target@ of type @EvalTargetNV@.
  -> GLenum -- ^ @pname@ of type @MapParameterNV@.
  -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(target,pname)@ elements of type @CheckedInt32@.
  -> IO ()
glMapParameterivNV = dyn_glMapParameterivNV ptr_glMapParameterivNV

foreign import CALLCONV "dynamic" dyn_glMapParameterivNV
  :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
  ->         GLenum -> GLenum -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glMapParameterivNV #-}
ptr_glMapParameterivNV :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
ptr_glMapParameterivNV = unsafePerformIO $ getCommand "glMapParameterivNV"

-- glMapTexture2DINTEL ---------------------------------------------------------

glMapTexture2DINTEL
  :: GLuint -- ^ @texture@.
  -> GLint -- ^ @level@.
  -> GLbitfield -- ^ @access@.
  -> Ptr GLint -- ^ @stride@ pointing to @1@ elements of type @GLint@.
  -> Ptr GLenum -- ^ @layout@ pointing to @1@ elements of type @GLenum@.
  -> IO (Ptr a)
glMapTexture2DINTEL = dyn_glMapTexture2DINTEL ptr_glMapTexture2DINTEL

foreign import CALLCONV "dynamic" dyn_glMapTexture2DINTEL
  :: FunPtr (GLuint -> GLint -> GLbitfield -> Ptr GLint -> Ptr GLenum -> IO (Ptr a))
  ->         GLuint -> GLint -> GLbitfield -> Ptr GLint -> Ptr GLenum -> IO (Ptr a)

{-# NOINLINE ptr_glMapTexture2DINTEL #-}
ptr_glMapTexture2DINTEL :: FunPtr (GLuint -> GLint -> GLbitfield -> Ptr GLint -> Ptr GLenum -> IO (Ptr a))
ptr_glMapTexture2DINTEL = unsafePerformIO $ getCommand "glMapTexture2DINTEL"

-- glMapVertexAttrib1dAPPLE ----------------------------------------------------

glMapVertexAttrib1dAPPLE
  :: GLuint -- ^ @index@.
  -> GLuint -- ^ @size@.
  -> GLdouble -- ^ @u1@ of type @CoordD@.
  -> GLdouble -- ^ @u2@ of type @CoordD@.
  -> GLint -- ^ @stride@.
  -> GLint -- ^ @order@ of type @CheckedInt32@.
  -> Ptr GLdouble -- ^ @points@ pointing to @COMPSIZE(size,stride,order)@ elements of type @CoordD@.
  -> IO ()
glMapVertexAttrib1dAPPLE = dyn_glMapVertexAttrib1dAPPLE ptr_glMapVertexAttrib1dAPPLE

foreign import CALLCONV "dynamic" dyn_glMapVertexAttrib1dAPPLE
  :: FunPtr (GLuint -> GLuint -> GLdouble -> GLdouble -> GLint -> GLint -> Ptr GLdouble -> IO ())
  ->         GLuint -> GLuint -> GLdouble -> GLdouble -> GLint -> GLint -> Ptr GLdouble -> IO ()

{-# NOINLINE ptr_glMapVertexAttrib1dAPPLE #-}
ptr_glMapVertexAttrib1dAPPLE :: FunPtr (GLuint -> GLuint -> GLdouble -> GLdouble -> GLint -> GLint -> Ptr GLdouble -> IO ())
ptr_glMapVertexAttrib1dAPPLE = unsafePerformIO $ getCommand "glMapVertexAttrib1dAPPLE"

-- glMapVertexAttrib1fAPPLE ----------------------------------------------------

glMapVertexAttrib1fAPPLE
  :: GLuint -- ^ @index@.
  -> GLuint -- ^ @size@.
  -> GLfloat -- ^ @u1@ of type @CoordF@.
  -> GLfloat -- ^ @u2@ of type @CoordF@.
  -> GLint -- ^ @stride@.
  -> GLint -- ^ @order@ of type @CheckedInt32@.
  -> Ptr GLfloat -- ^ @points@ pointing to @COMPSIZE(size,stride,order)@ elements of type @CoordF@.
  -> IO ()
glMapVertexAttrib1fAPPLE = dyn_glMapVertexAttrib1fAPPLE ptr_glMapVertexAttrib1fAPPLE

foreign import CALLCONV "dynamic" dyn_glMapVertexAttrib1fAPPLE
  :: FunPtr (GLuint -> GLuint -> GLfloat -> GLfloat -> GLint -> GLint -> Ptr GLfloat -> IO ())
  ->         GLuint -> GLuint -> GLfloat -> GLfloat -> GLint -> GLint -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glMapVertexAttrib1fAPPLE #-}
ptr_glMapVertexAttrib1fAPPLE :: FunPtr (GLuint -> GLuint -> GLfloat -> GLfloat -> GLint -> GLint -> Ptr GLfloat -> IO ())
ptr_glMapVertexAttrib1fAPPLE = unsafePerformIO $ getCommand "glMapVertexAttrib1fAPPLE"

-- glMapVertexAttrib2dAPPLE ----------------------------------------------------

glMapVertexAttrib2dAPPLE
  :: GLuint -- ^ @index@.
  -> GLuint -- ^ @size@.
  -> GLdouble -- ^ @u1@ of type @CoordD@.
  -> GLdouble -- ^ @u2@ of type @CoordD@.
  -> GLint -- ^ @ustride@.
  -> GLint -- ^ @uorder@ of type @CheckedInt32@.
  -> GLdouble -- ^ @v1@ of type @CoordD@.
  -> GLdouble -- ^ @v2@ of type @CoordD@.
  -> GLint -- ^ @vstride@.
  -> GLint -- ^ @vorder@ of type @CheckedInt32@.
  -> Ptr GLdouble -- ^ @points@ pointing to @COMPSIZE(size,ustride,uorder,vstride,vorder)@ elements of type @CoordD@.
  -> IO ()
glMapVertexAttrib2dAPPLE = dyn_glMapVertexAttrib2dAPPLE ptr_glMapVertexAttrib2dAPPLE

foreign import CALLCONV "dynamic" dyn_glMapVertexAttrib2dAPPLE
  :: FunPtr (GLuint -> GLuint -> GLdouble -> GLdouble -> GLint -> GLint -> GLdouble -> GLdouble -> GLint -> GLint -> Ptr GLdouble -> IO ())
  ->         GLuint -> GLuint -> GLdouble -> GLdouble -> GLint -> GLint -> GLdouble -> GLdouble -> GLint -> GLint -> Ptr GLdouble -> IO ()

{-# NOINLINE ptr_glMapVertexAttrib2dAPPLE #-}
ptr_glMapVertexAttrib2dAPPLE :: FunPtr (GLuint -> GLuint -> GLdouble -> GLdouble -> GLint -> GLint -> GLdouble -> GLdouble -> GLint -> GLint -> Ptr GLdouble -> IO ())
ptr_glMapVertexAttrib2dAPPLE = unsafePerformIO $ getCommand "glMapVertexAttrib2dAPPLE"

-- glMapVertexAttrib2fAPPLE ----------------------------------------------------

glMapVertexAttrib2fAPPLE
  :: GLuint -- ^ @index@.
  -> GLuint -- ^ @size@.
  -> GLfloat -- ^ @u1@ of type @CoordF@.
  -> GLfloat -- ^ @u2@ of type @CoordF@.
  -> GLint -- ^ @ustride@.
  -> GLint -- ^ @uorder@ of type @CheckedInt32@.
  -> GLfloat -- ^ @v1@ of type @CoordF@.
  -> GLfloat -- ^ @v2@ of type @CoordF@.
  -> GLint -- ^ @vstride@.
  -> GLint -- ^ @vorder@ of type @CheckedInt32@.
  -> Ptr GLfloat -- ^ @points@ pointing to @COMPSIZE(size,ustride,uorder,vstride,vorder)@ elements of type @CoordF@.
  -> IO ()
glMapVertexAttrib2fAPPLE = dyn_glMapVertexAttrib2fAPPLE ptr_glMapVertexAttrib2fAPPLE

foreign import CALLCONV "dynamic" dyn_glMapVertexAttrib2fAPPLE
  :: FunPtr (GLuint -> GLuint -> GLfloat -> GLfloat -> GLint -> GLint -> GLfloat -> GLfloat -> GLint -> GLint -> Ptr GLfloat -> IO ())
  ->         GLuint -> GLuint -> GLfloat -> GLfloat -> GLint -> GLint -> GLfloat -> GLfloat -> GLint -> GLint -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glMapVertexAttrib2fAPPLE #-}
ptr_glMapVertexAttrib2fAPPLE :: FunPtr (GLuint -> GLuint -> GLfloat -> GLfloat -> GLint -> GLint -> GLfloat -> GLfloat -> GLint -> GLint -> Ptr GLfloat -> IO ())
ptr_glMapVertexAttrib2fAPPLE = unsafePerformIO $ getCommand "glMapVertexAttrib2fAPPLE"

-- glMaterialf -----------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glMaterial.xml OpenGL 2.x>
glMaterialf
  :: GLenum -- ^ @face@ of type @MaterialFace@.
  -> GLenum -- ^ @pname@ of type @MaterialParameter@.
  -> GLfloat -- ^ @param@ of type @CheckedFloat32@.
  -> IO ()
glMaterialf = dyn_glMaterialf ptr_glMaterialf

foreign import CALLCONV "dynamic" dyn_glMaterialf
  :: FunPtr (GLenum -> GLenum -> GLfloat -> IO ())
  ->         GLenum -> GLenum -> GLfloat -> IO ()

{-# NOINLINE ptr_glMaterialf #-}
ptr_glMaterialf :: FunPtr (GLenum -> GLenum -> GLfloat -> IO ())
ptr_glMaterialf = unsafePerformIO $ getCommand "glMaterialf"

-- glMaterialfv ----------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glMaterial.xml OpenGL 2.x>
glMaterialfv
  :: GLenum -- ^ @face@ of type @MaterialFace@.
  -> GLenum -- ^ @pname@ of type @MaterialParameter@.
  -> Ptr GLfloat -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @CheckedFloat32@.
  -> IO ()
glMaterialfv = dyn_glMaterialfv ptr_glMaterialfv

foreign import CALLCONV "dynamic" dyn_glMaterialfv
  :: FunPtr (GLenum -> GLenum -> Ptr GLfloat -> IO ())
  ->         GLenum -> GLenum -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glMaterialfv #-}
ptr_glMaterialfv :: FunPtr (GLenum -> GLenum -> Ptr GLfloat -> IO ())
ptr_glMaterialfv = unsafePerformIO $ getCommand "glMaterialfv"

-- glMateriali -----------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glMaterial.xml OpenGL 2.x>
glMateriali
  :: GLenum -- ^ @face@ of type @MaterialFace@.
  -> GLenum -- ^ @pname@ of type @MaterialParameter@.
  -> GLint -- ^ @param@ of type @CheckedInt32@.
  -> IO ()
glMateriali = dyn_glMateriali ptr_glMateriali

foreign import CALLCONV "dynamic" dyn_glMateriali
  :: FunPtr (GLenum -> GLenum -> GLint -> IO ())
  ->         GLenum -> GLenum -> GLint -> IO ()

{-# NOINLINE ptr_glMateriali #-}
ptr_glMateriali :: FunPtr (GLenum -> GLenum -> GLint -> IO ())
ptr_glMateriali = unsafePerformIO $ getCommand "glMateriali"

-- glMaterialiv ----------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glMaterial.xml OpenGL 2.x>
glMaterialiv
  :: GLenum -- ^ @face@ of type @MaterialFace@.
  -> GLenum -- ^ @pname@ of type @MaterialParameter@.
  -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @CheckedInt32@.
  -> IO ()
glMaterialiv = dyn_glMaterialiv ptr_glMaterialiv

foreign import CALLCONV "dynamic" dyn_glMaterialiv
  :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
  ->         GLenum -> GLenum -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glMaterialiv #-}
ptr_glMaterialiv :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
ptr_glMaterialiv = unsafePerformIO $ getCommand "glMaterialiv"

-- glMaterialx -----------------------------------------------------------------

glMaterialx
  :: GLenum -- ^ @face@.
  -> GLenum -- ^ @pname@.
  -> GLfixed -- ^ @param@.
  -> IO ()
glMaterialx = dyn_glMaterialx ptr_glMaterialx

foreign import CALLCONV "dynamic" dyn_glMaterialx
  :: FunPtr (GLenum -> GLenum -> GLfixed -> IO ())
  ->         GLenum -> GLenum -> GLfixed -> IO ()

{-# NOINLINE ptr_glMaterialx #-}
ptr_glMaterialx :: FunPtr (GLenum -> GLenum -> GLfixed -> IO ())
ptr_glMaterialx = unsafePerformIO $ getCommand "glMaterialx"

-- glMaterialxOES --------------------------------------------------------------

glMaterialxOES
  :: GLenum -- ^ @face@.
  -> GLenum -- ^ @pname@.
  -> GLfixed -- ^ @param@.
  -> IO ()
glMaterialxOES = dyn_glMaterialxOES ptr_glMaterialxOES

foreign import CALLCONV "dynamic" dyn_glMaterialxOES
  :: FunPtr (GLenum -> GLenum -> GLfixed -> IO ())
  ->         GLenum -> GLenum -> GLfixed -> IO ()

{-# NOINLINE ptr_glMaterialxOES #-}
ptr_glMaterialxOES :: FunPtr (GLenum -> GLenum -> GLfixed -> IO ())
ptr_glMaterialxOES = unsafePerformIO $ getCommand "glMaterialxOES"

-- glMaterialxv ----------------------------------------------------------------

glMaterialxv
  :: GLenum -- ^ @face@.
  -> GLenum -- ^ @pname@.
  -> Ptr GLfixed -- ^ @param@ pointing to @COMPSIZE(pname)@ elements of type @GLfixed@.
  -> IO ()
glMaterialxv = dyn_glMaterialxv ptr_glMaterialxv

foreign import CALLCONV "dynamic" dyn_glMaterialxv
  :: FunPtr (GLenum -> GLenum -> Ptr GLfixed -> IO ())
  ->         GLenum -> GLenum -> Ptr GLfixed -> IO ()

{-# NOINLINE ptr_glMaterialxv #-}
ptr_glMaterialxv :: FunPtr (GLenum -> GLenum -> Ptr GLfixed -> IO ())
ptr_glMaterialxv = unsafePerformIO $ getCommand "glMaterialxv"

-- glMaterialxvOES -------------------------------------------------------------

glMaterialxvOES
  :: GLenum -- ^ @face@.
  -> GLenum -- ^ @pname@.
  -> Ptr GLfixed -- ^ @param@ pointing to @COMPSIZE(pname)@ elements of type @GLfixed@.
  -> IO ()
glMaterialxvOES = dyn_glMaterialxvOES ptr_glMaterialxvOES

foreign import CALLCONV "dynamic" dyn_glMaterialxvOES
  :: FunPtr (GLenum -> GLenum -> Ptr GLfixed -> IO ())
  ->         GLenum -> GLenum -> Ptr GLfixed -> IO ()

{-# NOINLINE ptr_glMaterialxvOES #-}
ptr_glMaterialxvOES :: FunPtr (GLenum -> GLenum -> Ptr GLfixed -> IO ())
ptr_glMaterialxvOES = unsafePerformIO $ getCommand "glMaterialxvOES"

-- glMatrixFrustumEXT ----------------------------------------------------------

glMatrixFrustumEXT
  :: GLenum -- ^ @mode@ of type @MatrixMode@.
  -> GLdouble -- ^ @left@.
  -> GLdouble -- ^ @right@.
  -> GLdouble -- ^ @bottom@.
  -> GLdouble -- ^ @top@.
  -> GLdouble -- ^ @zNear@.
  -> GLdouble -- ^ @zFar@.
  -> IO ()
glMatrixFrustumEXT = dyn_glMatrixFrustumEXT ptr_glMatrixFrustumEXT

foreign import CALLCONV "dynamic" dyn_glMatrixFrustumEXT
  :: FunPtr (GLenum -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ())
  ->         GLenum -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ()

{-# NOINLINE ptr_glMatrixFrustumEXT #-}
ptr_glMatrixFrustumEXT :: FunPtr (GLenum -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ())
ptr_glMatrixFrustumEXT = unsafePerformIO $ getCommand "glMatrixFrustumEXT"

-- glMatrixIndexPointerARB -----------------------------------------------------

glMatrixIndexPointerARB
  :: GLint -- ^ @size@.
  -> GLenum -- ^ @type@ of type @MatrixIndexPointerTypeARB@.
  -> GLsizei -- ^ @stride@.
  -> Ptr a -- ^ @pointer@ pointing to @COMPSIZE(size,type,stride)@ elements of type @a@.
  -> IO ()
glMatrixIndexPointerARB = dyn_glMatrixIndexPointerARB ptr_glMatrixIndexPointerARB

foreign import CALLCONV "dynamic" dyn_glMatrixIndexPointerARB
  :: FunPtr (GLint -> GLenum -> GLsizei -> Ptr a -> IO ())
  ->         GLint -> GLenum -> GLsizei -> Ptr a -> IO ()

{-# NOINLINE ptr_glMatrixIndexPointerARB #-}
ptr_glMatrixIndexPointerARB :: FunPtr (GLint -> GLenum -> GLsizei -> Ptr a -> IO ())
ptr_glMatrixIndexPointerARB = unsafePerformIO $ getCommand "glMatrixIndexPointerARB"

-- glMatrixIndexPointerOES -----------------------------------------------------

glMatrixIndexPointerOES
  :: GLint -- ^ @size@.
  -> GLenum -- ^ @type@.
  -> GLsizei -- ^ @stride@.
  -> Ptr a -- ^ @pointer@ pointing to @COMPSIZE(size,type,stride)@ elements of type @a@.
  -> IO ()
glMatrixIndexPointerOES = dyn_glMatrixIndexPointerOES ptr_glMatrixIndexPointerOES

foreign import CALLCONV "dynamic" dyn_glMatrixIndexPointerOES
  :: FunPtr (GLint -> GLenum -> GLsizei -> Ptr a -> IO ())
  ->         GLint -> GLenum -> GLsizei -> Ptr a -> IO ()

{-# NOINLINE ptr_glMatrixIndexPointerOES #-}
ptr_glMatrixIndexPointerOES :: FunPtr (GLint -> GLenum -> GLsizei -> Ptr a -> IO ())
ptr_glMatrixIndexPointerOES = unsafePerformIO $ getCommand "glMatrixIndexPointerOES"

-- glMatrixIndexubvARB ---------------------------------------------------------

glMatrixIndexubvARB
  :: GLint -- ^ @size@.
  -> Ptr GLubyte -- ^ @indices@ pointing to @size@ elements of type @GLubyte@.
  -> IO ()
glMatrixIndexubvARB = dyn_glMatrixIndexubvARB ptr_glMatrixIndexubvARB

foreign import CALLCONV "dynamic" dyn_glMatrixIndexubvARB
  :: FunPtr (GLint -> Ptr GLubyte -> IO ())
  ->         GLint -> Ptr GLubyte -> IO ()

{-# NOINLINE ptr_glMatrixIndexubvARB #-}
ptr_glMatrixIndexubvARB :: FunPtr (GLint -> Ptr GLubyte -> IO ())
ptr_glMatrixIndexubvARB = unsafePerformIO $ getCommand "glMatrixIndexubvARB"

-- glMatrixIndexuivARB ---------------------------------------------------------

glMatrixIndexuivARB
  :: GLint -- ^ @size@.
  -> Ptr GLuint -- ^ @indices@ pointing to @size@ elements of type @GLuint@.
  -> IO ()
glMatrixIndexuivARB = dyn_glMatrixIndexuivARB ptr_glMatrixIndexuivARB

foreign import CALLCONV "dynamic" dyn_glMatrixIndexuivARB
  :: FunPtr (GLint -> Ptr GLuint -> IO ())
  ->         GLint -> Ptr GLuint -> IO ()

{-# NOINLINE ptr_glMatrixIndexuivARB #-}
ptr_glMatrixIndexuivARB :: FunPtr (GLint -> Ptr GLuint -> IO ())
ptr_glMatrixIndexuivARB = unsafePerformIO $ getCommand "glMatrixIndexuivARB"

-- glMatrixIndexusvARB ---------------------------------------------------------

glMatrixIndexusvARB
  :: GLint -- ^ @size@.
  -> Ptr GLushort -- ^ @indices@ pointing to @size@ elements of type @GLushort@.
  -> IO ()
glMatrixIndexusvARB = dyn_glMatrixIndexusvARB ptr_glMatrixIndexusvARB

foreign import CALLCONV "dynamic" dyn_glMatrixIndexusvARB
  :: FunPtr (GLint -> Ptr GLushort -> IO ())
  ->         GLint -> Ptr GLushort -> IO ()

{-# NOINLINE ptr_glMatrixIndexusvARB #-}
ptr_glMatrixIndexusvARB :: FunPtr (GLint -> Ptr GLushort -> IO ())
ptr_glMatrixIndexusvARB = unsafePerformIO $ getCommand "glMatrixIndexusvARB"

-- glMatrixLoad3x2fNV ----------------------------------------------------------

glMatrixLoad3x2fNV
  :: GLenum -- ^ @matrixMode@.
  -> Ptr GLfloat -- ^ @m@.
  -> IO ()
glMatrixLoad3x2fNV = dyn_glMatrixLoad3x2fNV ptr_glMatrixLoad3x2fNV

foreign import CALLCONV "dynamic" dyn_glMatrixLoad3x2fNV
  :: FunPtr (GLenum -> Ptr GLfloat -> IO ())
  ->         GLenum -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glMatrixLoad3x2fNV #-}
ptr_glMatrixLoad3x2fNV :: FunPtr (GLenum -> Ptr GLfloat -> IO ())
ptr_glMatrixLoad3x2fNV = unsafePerformIO $ getCommand "glMatrixLoad3x2fNV"

-- glMatrixLoad3x3fNV ----------------------------------------------------------

glMatrixLoad3x3fNV
  :: GLenum -- ^ @matrixMode@.
  -> Ptr GLfloat -- ^ @m@.
  -> IO ()
glMatrixLoad3x3fNV = dyn_glMatrixLoad3x3fNV ptr_glMatrixLoad3x3fNV

foreign import CALLCONV "dynamic" dyn_glMatrixLoad3x3fNV
  :: FunPtr (GLenum -> Ptr GLfloat -> IO ())
  ->         GLenum -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glMatrixLoad3x3fNV #-}
ptr_glMatrixLoad3x3fNV :: FunPtr (GLenum -> Ptr GLfloat -> IO ())
ptr_glMatrixLoad3x3fNV = unsafePerformIO $ getCommand "glMatrixLoad3x3fNV"

-- glMatrixLoadIdentityEXT -----------------------------------------------------

glMatrixLoadIdentityEXT
  :: GLenum -- ^ @mode@ of type @MatrixMode@.
  -> IO ()
glMatrixLoadIdentityEXT = dyn_glMatrixLoadIdentityEXT ptr_glMatrixLoadIdentityEXT

foreign import CALLCONV "dynamic" dyn_glMatrixLoadIdentityEXT
  :: FunPtr (GLenum -> IO ())
  ->         GLenum -> IO ()

{-# NOINLINE ptr_glMatrixLoadIdentityEXT #-}
ptr_glMatrixLoadIdentityEXT :: FunPtr (GLenum -> IO ())
ptr_glMatrixLoadIdentityEXT = unsafePerformIO $ getCommand "glMatrixLoadIdentityEXT"

-- glMatrixLoadTranspose3x3fNV -------------------------------------------------

glMatrixLoadTranspose3x3fNV
  :: GLenum -- ^ @matrixMode@.
  -> Ptr GLfloat -- ^ @m@.
  -> IO ()
glMatrixLoadTranspose3x3fNV = dyn_glMatrixLoadTranspose3x3fNV ptr_glMatrixLoadTranspose3x3fNV

foreign import CALLCONV "dynamic" dyn_glMatrixLoadTranspose3x3fNV
  :: FunPtr (GLenum -> Ptr GLfloat -> IO ())
  ->         GLenum -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glMatrixLoadTranspose3x3fNV #-}
ptr_glMatrixLoadTranspose3x3fNV :: FunPtr (GLenum -> Ptr GLfloat -> IO ())
ptr_glMatrixLoadTranspose3x3fNV = unsafePerformIO $ getCommand "glMatrixLoadTranspose3x3fNV"

-- glMatrixLoadTransposedEXT ---------------------------------------------------

glMatrixLoadTransposedEXT
  :: GLenum -- ^ @mode@ of type @MatrixMode@.
  -> Ptr GLdouble -- ^ @m@ pointing to @16@ elements of type @GLdouble@.
  -> IO ()
glMatrixLoadTransposedEXT = dyn_glMatrixLoadTransposedEXT ptr_glMatrixLoadTransposedEXT

foreign import CALLCONV "dynamic" dyn_glMatrixLoadTransposedEXT
  :: FunPtr (GLenum -> Ptr GLdouble -> IO ())
  ->         GLenum -> Ptr GLdouble -> IO ()

{-# NOINLINE ptr_glMatrixLoadTransposedEXT #-}
ptr_glMatrixLoadTransposedEXT :: FunPtr (GLenum -> Ptr GLdouble -> IO ())
ptr_glMatrixLoadTransposedEXT = unsafePerformIO $ getCommand "glMatrixLoadTransposedEXT"

-- glMatrixLoadTransposefEXT ---------------------------------------------------

glMatrixLoadTransposefEXT
  :: GLenum -- ^ @mode@ of type @MatrixMode@.
  -> Ptr GLfloat -- ^ @m@ pointing to @16@ elements of type @GLfloat@.
  -> IO ()
glMatrixLoadTransposefEXT = dyn_glMatrixLoadTransposefEXT ptr_glMatrixLoadTransposefEXT

foreign import CALLCONV "dynamic" dyn_glMatrixLoadTransposefEXT
  :: FunPtr (GLenum -> Ptr GLfloat -> IO ())
  ->         GLenum -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glMatrixLoadTransposefEXT #-}
ptr_glMatrixLoadTransposefEXT :: FunPtr (GLenum -> Ptr GLfloat -> IO ())
ptr_glMatrixLoadTransposefEXT = unsafePerformIO $ getCommand "glMatrixLoadTransposefEXT"

-- glMatrixLoaddEXT ------------------------------------------------------------

glMatrixLoaddEXT
  :: GLenum -- ^ @mode@ of type @MatrixMode@.
  -> Ptr GLdouble -- ^ @m@ pointing to @16@ elements of type @GLdouble@.
  -> IO ()
glMatrixLoaddEXT = dyn_glMatrixLoaddEXT ptr_glMatrixLoaddEXT

foreign import CALLCONV "dynamic" dyn_glMatrixLoaddEXT
  :: FunPtr (GLenum -> Ptr GLdouble -> IO ())
  ->         GLenum -> Ptr GLdouble -> IO ()

{-# NOINLINE ptr_glMatrixLoaddEXT #-}
ptr_glMatrixLoaddEXT :: FunPtr (GLenum -> Ptr GLdouble -> IO ())
ptr_glMatrixLoaddEXT = unsafePerformIO $ getCommand "glMatrixLoaddEXT"

-- glMatrixLoadfEXT ------------------------------------------------------------

glMatrixLoadfEXT
  :: GLenum -- ^ @mode@ of type @MatrixMode@.
  -> Ptr GLfloat -- ^ @m@ pointing to @16@ elements of type @GLfloat@.
  -> IO ()
glMatrixLoadfEXT = dyn_glMatrixLoadfEXT ptr_glMatrixLoadfEXT

foreign import CALLCONV "dynamic" dyn_glMatrixLoadfEXT
  :: FunPtr (GLenum -> Ptr GLfloat -> IO ())
  ->         GLenum -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glMatrixLoadfEXT #-}
ptr_glMatrixLoadfEXT :: FunPtr (GLenum -> Ptr GLfloat -> IO ())
ptr_glMatrixLoadfEXT = unsafePerformIO $ getCommand "glMatrixLoadfEXT"

-- glMatrixMode ----------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glMatrixMode.xml OpenGL 2.x>
glMatrixMode
  :: GLenum -- ^ @mode@ of type @MatrixMode@.
  -> IO ()
glMatrixMode = dyn_glMatrixMode ptr_glMatrixMode

foreign import CALLCONV "dynamic" dyn_glMatrixMode
  :: FunPtr (GLenum -> IO ())
  ->         GLenum -> IO ()

{-# NOINLINE ptr_glMatrixMode #-}
ptr_glMatrixMode :: FunPtr (GLenum -> IO ())
ptr_glMatrixMode = unsafePerformIO $ getCommand "glMatrixMode"

-- glMatrixMult3x2fNV ----------------------------------------------------------

glMatrixMult3x2fNV
  :: GLenum -- ^ @matrixMode@.
  -> Ptr GLfloat -- ^ @m@.
  -> IO ()
glMatrixMult3x2fNV = dyn_glMatrixMult3x2fNV ptr_glMatrixMult3x2fNV

foreign import CALLCONV "dynamic" dyn_glMatrixMult3x2fNV
  :: FunPtr (GLenum -> Ptr GLfloat -> IO ())
  ->         GLenum -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glMatrixMult3x2fNV #-}
ptr_glMatrixMult3x2fNV :: FunPtr (GLenum -> Ptr GLfloat -> IO ())
ptr_glMatrixMult3x2fNV = unsafePerformIO $ getCommand "glMatrixMult3x2fNV"

-- glMatrixMult3x3fNV ----------------------------------------------------------

glMatrixMult3x3fNV
  :: GLenum -- ^ @matrixMode@.
  -> Ptr GLfloat -- ^ @m@.
  -> IO ()
glMatrixMult3x3fNV = dyn_glMatrixMult3x3fNV ptr_glMatrixMult3x3fNV

foreign import CALLCONV "dynamic" dyn_glMatrixMult3x3fNV
  :: FunPtr (GLenum -> Ptr GLfloat -> IO ())
  ->         GLenum -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glMatrixMult3x3fNV #-}
ptr_glMatrixMult3x3fNV :: FunPtr (GLenum -> Ptr GLfloat -> IO ())
ptr_glMatrixMult3x3fNV = unsafePerformIO $ getCommand "glMatrixMult3x3fNV"

-- glMatrixMultTranspose3x3fNV -------------------------------------------------

glMatrixMultTranspose3x3fNV
  :: GLenum -- ^ @matrixMode@.
  -> Ptr GLfloat -- ^ @m@.
  -> IO ()
glMatrixMultTranspose3x3fNV = dyn_glMatrixMultTranspose3x3fNV ptr_glMatrixMultTranspose3x3fNV

foreign import CALLCONV "dynamic" dyn_glMatrixMultTranspose3x3fNV
  :: FunPtr (GLenum -> Ptr GLfloat -> IO ())
  ->         GLenum -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glMatrixMultTranspose3x3fNV #-}
ptr_glMatrixMultTranspose3x3fNV :: FunPtr (GLenum -> Ptr GLfloat -> IO ())
ptr_glMatrixMultTranspose3x3fNV = unsafePerformIO $ getCommand "glMatrixMultTranspose3x3fNV"

-- glMatrixMultTransposedEXT ---------------------------------------------------

glMatrixMultTransposedEXT
  :: GLenum -- ^ @mode@ of type @MatrixMode@.
  -> Ptr GLdouble -- ^ @m@ pointing to @16@ elements of type @GLdouble@.
  -> IO ()
glMatrixMultTransposedEXT = dyn_glMatrixMultTransposedEXT ptr_glMatrixMultTransposedEXT

foreign import CALLCONV "dynamic" dyn_glMatrixMultTransposedEXT
  :: FunPtr (GLenum -> Ptr GLdouble -> IO ())
  ->         GLenum -> Ptr GLdouble -> IO ()

{-# NOINLINE ptr_glMatrixMultTransposedEXT #-}
ptr_glMatrixMultTransposedEXT :: FunPtr (GLenum -> Ptr GLdouble -> IO ())
ptr_glMatrixMultTransposedEXT = unsafePerformIO $ getCommand "glMatrixMultTransposedEXT"

-- glMatrixMultTransposefEXT ---------------------------------------------------

glMatrixMultTransposefEXT
  :: GLenum -- ^ @mode@ of type @MatrixMode@.
  -> Ptr GLfloat -- ^ @m@ pointing to @16@ elements of type @GLfloat@.
  -> IO ()
glMatrixMultTransposefEXT = dyn_glMatrixMultTransposefEXT ptr_glMatrixMultTransposefEXT

foreign import CALLCONV "dynamic" dyn_glMatrixMultTransposefEXT
  :: FunPtr (GLenum -> Ptr GLfloat -> IO ())
  ->         GLenum -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glMatrixMultTransposefEXT #-}
ptr_glMatrixMultTransposefEXT :: FunPtr (GLenum -> Ptr GLfloat -> IO ())
ptr_glMatrixMultTransposefEXT = unsafePerformIO $ getCommand "glMatrixMultTransposefEXT"

-- glMatrixMultdEXT ------------------------------------------------------------

glMatrixMultdEXT
  :: GLenum -- ^ @mode@ of type @MatrixMode@.
  -> Ptr GLdouble -- ^ @m@ pointing to @16@ elements of type @GLdouble@.
  -> IO ()
glMatrixMultdEXT = dyn_glMatrixMultdEXT ptr_glMatrixMultdEXT

foreign import CALLCONV "dynamic" dyn_glMatrixMultdEXT
  :: FunPtr (GLenum -> Ptr GLdouble -> IO ())
  ->         GLenum -> Ptr GLdouble -> IO ()

{-# NOINLINE ptr_glMatrixMultdEXT #-}
ptr_glMatrixMultdEXT :: FunPtr (GLenum -> Ptr GLdouble -> IO ())
ptr_glMatrixMultdEXT = unsafePerformIO $ getCommand "glMatrixMultdEXT"

-- glMatrixMultfEXT ------------------------------------------------------------

glMatrixMultfEXT
  :: GLenum -- ^ @mode@ of type @MatrixMode@.
  -> Ptr GLfloat -- ^ @m@ pointing to @16@ elements of type @GLfloat@.
  -> IO ()
glMatrixMultfEXT = dyn_glMatrixMultfEXT ptr_glMatrixMultfEXT

foreign import CALLCONV "dynamic" dyn_glMatrixMultfEXT
  :: FunPtr (GLenum -> Ptr GLfloat -> IO ())
  ->         GLenum -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glMatrixMultfEXT #-}
ptr_glMatrixMultfEXT :: FunPtr (GLenum -> Ptr GLfloat -> IO ())
ptr_glMatrixMultfEXT = unsafePerformIO $ getCommand "glMatrixMultfEXT"

-- glMatrixOrthoEXT ------------------------------------------------------------

glMatrixOrthoEXT
  :: GLenum -- ^ @mode@ of type @MatrixMode@.
  -> GLdouble -- ^ @left@.
  -> GLdouble -- ^ @right@.
  -> GLdouble -- ^ @bottom@.
  -> GLdouble -- ^ @top@.
  -> GLdouble -- ^ @zNear@.
  -> GLdouble -- ^ @zFar@.
  -> IO ()
glMatrixOrthoEXT = dyn_glMatrixOrthoEXT ptr_glMatrixOrthoEXT

foreign import CALLCONV "dynamic" dyn_glMatrixOrthoEXT
  :: FunPtr (GLenum -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ())
  ->         GLenum -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ()

{-# NOINLINE ptr_glMatrixOrthoEXT #-}
ptr_glMatrixOrthoEXT :: FunPtr (GLenum -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ())
ptr_glMatrixOrthoEXT = unsafePerformIO $ getCommand "glMatrixOrthoEXT"

-- glMatrixPopEXT --------------------------------------------------------------

glMatrixPopEXT
  :: GLenum -- ^ @mode@ of type @MatrixMode@.
  -> IO ()
glMatrixPopEXT = dyn_glMatrixPopEXT ptr_glMatrixPopEXT

foreign import CALLCONV "dynamic" dyn_glMatrixPopEXT
  :: FunPtr (GLenum -> IO ())
  ->         GLenum -> IO ()

{-# NOINLINE ptr_glMatrixPopEXT #-}
ptr_glMatrixPopEXT :: FunPtr (GLenum -> IO ())
ptr_glMatrixPopEXT = unsafePerformIO $ getCommand "glMatrixPopEXT"

-- glMatrixPushEXT -------------------------------------------------------------

glMatrixPushEXT
  :: GLenum -- ^ @mode@ of type @MatrixMode@.
  -> IO ()
glMatrixPushEXT = dyn_glMatrixPushEXT ptr_glMatrixPushEXT

foreign import CALLCONV "dynamic" dyn_glMatrixPushEXT
  :: FunPtr (GLenum -> IO ())
  ->         GLenum -> IO ()

{-# NOINLINE ptr_glMatrixPushEXT #-}
ptr_glMatrixPushEXT :: FunPtr (GLenum -> IO ())
ptr_glMatrixPushEXT = unsafePerformIO $ getCommand "glMatrixPushEXT"

-- glMatrixRotatedEXT ----------------------------------------------------------

glMatrixRotatedEXT
  :: GLenum -- ^ @mode@ of type @MatrixMode@.
  -> GLdouble -- ^ @angle@.
  -> GLdouble -- ^ @x@.
  -> GLdouble -- ^ @y@.
  -> GLdouble -- ^ @z@.
  -> IO ()
glMatrixRotatedEXT = dyn_glMatrixRotatedEXT ptr_glMatrixRotatedEXT

foreign import CALLCONV "dynamic" dyn_glMatrixRotatedEXT
  :: FunPtr (GLenum -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ())
  ->         GLenum -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ()

{-# NOINLINE ptr_glMatrixRotatedEXT #-}
ptr_glMatrixRotatedEXT :: FunPtr (GLenum -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ())
ptr_glMatrixRotatedEXT = unsafePerformIO $ getCommand "glMatrixRotatedEXT"

-- glMatrixRotatefEXT ----------------------------------------------------------

glMatrixRotatefEXT
  :: GLenum -- ^ @mode@ of type @MatrixMode@.
  -> GLfloat -- ^ @angle@.
  -> GLfloat -- ^ @x@.
  -> GLfloat -- ^ @y@.
  -> GLfloat -- ^ @z@.
  -> IO ()
glMatrixRotatefEXT = dyn_glMatrixRotatefEXT ptr_glMatrixRotatefEXT

foreign import CALLCONV "dynamic" dyn_glMatrixRotatefEXT
  :: FunPtr (GLenum -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
  ->         GLenum -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ()

{-# NOINLINE ptr_glMatrixRotatefEXT #-}
ptr_glMatrixRotatefEXT :: FunPtr (GLenum -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
ptr_glMatrixRotatefEXT = unsafePerformIO $ getCommand "glMatrixRotatefEXT"

-- glMatrixScaledEXT -----------------------------------------------------------

glMatrixScaledEXT
  :: GLenum -- ^ @mode@ of type @MatrixMode@.
  -> GLdouble -- ^ @x@.
  -> GLdouble -- ^ @y@.
  -> GLdouble -- ^ @z@.
  -> IO ()
glMatrixScaledEXT = dyn_glMatrixScaledEXT ptr_glMatrixScaledEXT

foreign import CALLCONV "dynamic" dyn_glMatrixScaledEXT
  :: FunPtr (GLenum -> GLdouble -> GLdouble -> GLdouble -> IO ())
  ->         GLenum -> GLdouble -> GLdouble -> GLdouble -> IO ()

{-# NOINLINE ptr_glMatrixScaledEXT #-}
ptr_glMatrixScaledEXT :: FunPtr (GLenum -> GLdouble -> GLdouble -> GLdouble -> IO ())
ptr_glMatrixScaledEXT = unsafePerformIO $ getCommand "glMatrixScaledEXT"

-- glMatrixScalefEXT -----------------------------------------------------------

glMatrixScalefEXT
  :: GLenum -- ^ @mode@ of type @MatrixMode@.
  -> GLfloat -- ^ @x@.
  -> GLfloat -- ^ @y@.
  -> GLfloat -- ^ @z@.
  -> IO ()
glMatrixScalefEXT = dyn_glMatrixScalefEXT ptr_glMatrixScalefEXT

foreign import CALLCONV "dynamic" dyn_glMatrixScalefEXT
  :: FunPtr (GLenum -> GLfloat -> GLfloat -> GLfloat -> IO ())
  ->         GLenum -> GLfloat -> GLfloat -> GLfloat -> IO ()

{-# NOINLINE ptr_glMatrixScalefEXT #-}
ptr_glMatrixScalefEXT :: FunPtr (GLenum -> GLfloat -> GLfloat -> GLfloat -> IO ())
ptr_glMatrixScalefEXT = unsafePerformIO $ getCommand "glMatrixScalefEXT"

-- glMatrixTranslatedEXT -------------------------------------------------------

glMatrixTranslatedEXT
  :: GLenum -- ^ @mode@ of type @MatrixMode@.
  -> GLdouble -- ^ @x@.
  -> GLdouble -- ^ @y@.
  -> GLdouble -- ^ @z@.
  -> IO ()
glMatrixTranslatedEXT = dyn_glMatrixTranslatedEXT ptr_glMatrixTranslatedEXT

foreign import CALLCONV "dynamic" dyn_glMatrixTranslatedEXT
  :: FunPtr (GLenum -> GLdouble -> GLdouble -> GLdouble -> IO ())
  ->         GLenum -> GLdouble -> GLdouble -> GLdouble -> IO ()

{-# NOINLINE ptr_glMatrixTranslatedEXT #-}
ptr_glMatrixTranslatedEXT :: FunPtr (GLenum -> GLdouble -> GLdouble -> GLdouble -> IO ())
ptr_glMatrixTranslatedEXT = unsafePerformIO $ getCommand "glMatrixTranslatedEXT"

-- glMatrixTranslatefEXT -------------------------------------------------------

glMatrixTranslatefEXT
  :: GLenum -- ^ @mode@ of type @MatrixMode@.
  -> GLfloat -- ^ @x@.
  -> GLfloat -- ^ @y@.
  -> GLfloat -- ^ @z@.
  -> IO ()
glMatrixTranslatefEXT = dyn_glMatrixTranslatefEXT ptr_glMatrixTranslatefEXT

foreign import CALLCONV "dynamic" dyn_glMatrixTranslatefEXT
  :: FunPtr (GLenum -> GLfloat -> GLfloat -> GLfloat -> IO ())
  ->         GLenum -> GLfloat -> GLfloat -> GLfloat -> IO ()

{-# NOINLINE ptr_glMatrixTranslatefEXT #-}
ptr_glMatrixTranslatefEXT :: FunPtr (GLenum -> GLfloat -> GLfloat -> GLfloat -> IO ())
ptr_glMatrixTranslatefEXT = unsafePerformIO $ getCommand "glMatrixTranslatefEXT"

-- glMemoryBarrier -------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glMemoryBarrier.xhtml OpenGL 4.x>
glMemoryBarrier
  :: GLbitfield -- ^ @barriers@.
  -> IO ()
glMemoryBarrier = dyn_glMemoryBarrier ptr_glMemoryBarrier

foreign import CALLCONV "dynamic" dyn_glMemoryBarrier
  :: FunPtr (GLbitfield -> IO ())
  ->         GLbitfield -> IO ()

{-# NOINLINE ptr_glMemoryBarrier #-}
ptr_glMemoryBarrier :: FunPtr (GLbitfield -> IO ())
ptr_glMemoryBarrier = unsafePerformIO $ getCommand "glMemoryBarrier"

-- glMemoryBarrierByRegion -----------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glMemoryBarrier.xhtml OpenGL 4.x>
glMemoryBarrierByRegion
  :: GLbitfield -- ^ @barriers@.
  -> IO ()
glMemoryBarrierByRegion = dyn_glMemoryBarrierByRegion ptr_glMemoryBarrierByRegion

foreign import CALLCONV "dynamic" dyn_glMemoryBarrierByRegion
  :: FunPtr (GLbitfield -> IO ())
  ->         GLbitfield -> IO ()

{-# NOINLINE ptr_glMemoryBarrierByRegion #-}
ptr_glMemoryBarrierByRegion :: FunPtr (GLbitfield -> IO ())
ptr_glMemoryBarrierByRegion = unsafePerformIO $ getCommand "glMemoryBarrierByRegion"

-- glMemoryBarrierEXT ----------------------------------------------------------

glMemoryBarrierEXT
  :: GLbitfield -- ^ @barriers@.
  -> IO ()
glMemoryBarrierEXT = dyn_glMemoryBarrierEXT ptr_glMemoryBarrierEXT

foreign import CALLCONV "dynamic" dyn_glMemoryBarrierEXT
  :: FunPtr (GLbitfield -> IO ())
  ->         GLbitfield -> IO ()

{-# NOINLINE ptr_glMemoryBarrierEXT #-}
ptr_glMemoryBarrierEXT :: FunPtr (GLbitfield -> IO ())
ptr_glMemoryBarrierEXT = unsafePerformIO $ getCommand "glMemoryBarrierEXT"

-- glMinSampleShading ----------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glMinSampleShading.xhtml OpenGL 4.x>
glMinSampleShading
  :: GLfloat -- ^ @value@ of type @ColorF@.
  -> IO ()
glMinSampleShading = dyn_glMinSampleShading ptr_glMinSampleShading

foreign import CALLCONV "dynamic" dyn_glMinSampleShading
  :: FunPtr (GLfloat -> IO ())
  ->         GLfloat -> IO ()

{-# NOINLINE ptr_glMinSampleShading #-}
ptr_glMinSampleShading :: FunPtr (GLfloat -> IO ())
ptr_glMinSampleShading = unsafePerformIO $ getCommand "glMinSampleShading"

-- glMinSampleShadingARB -------------------------------------------------------

glMinSampleShadingARB
  :: GLfloat -- ^ @value@ of type @ColorF@.
  -> IO ()
glMinSampleShadingARB = dyn_glMinSampleShadingARB ptr_glMinSampleShadingARB

foreign import CALLCONV "dynamic" dyn_glMinSampleShadingARB
  :: FunPtr (GLfloat -> IO ())
  ->         GLfloat -> IO ()

{-# NOINLINE ptr_glMinSampleShadingARB #-}
ptr_glMinSampleShadingARB :: FunPtr (GLfloat -> IO ())
ptr_glMinSampleShadingARB = unsafePerformIO $ getCommand "glMinSampleShadingARB"

-- glMinSampleShadingOES -------------------------------------------------------

glMinSampleShadingOES
  :: GLfloat -- ^ @value@ of type @ColorF@.
  -> IO ()
glMinSampleShadingOES = dyn_glMinSampleShadingOES ptr_glMinSampleShadingOES

foreign import CALLCONV "dynamic" dyn_glMinSampleShadingOES
  :: FunPtr (GLfloat -> IO ())
  ->         GLfloat -> IO ()

{-# NOINLINE ptr_glMinSampleShadingOES #-}
ptr_glMinSampleShadingOES :: FunPtr (GLfloat -> IO ())
ptr_glMinSampleShadingOES = unsafePerformIO $ getCommand "glMinSampleShadingOES"

-- glMinmax --------------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glMinmax.xml OpenGL 2.x>
glMinmax
  :: GLenum -- ^ @target@ of type @MinmaxTarget@.
  -> GLenum -- ^ @internalformat@ of type @PixelInternalFormat@.
  -> GLboolean -- ^ @sink@ of type @Boolean@.
  -> IO ()
glMinmax = dyn_glMinmax ptr_glMinmax

foreign import CALLCONV "dynamic" dyn_glMinmax
  :: FunPtr (GLenum -> GLenum -> GLboolean -> IO ())
  ->         GLenum -> GLenum -> GLboolean -> IO ()

{-# NOINLINE ptr_glMinmax #-}
ptr_glMinmax :: FunPtr (GLenum -> GLenum -> GLboolean -> IO ())
ptr_glMinmax = unsafePerformIO $ getCommand "glMinmax"

-- glMinmaxEXT -----------------------------------------------------------------

glMinmaxEXT
  :: GLenum -- ^ @target@ of type @MinmaxTargetEXT@.
  -> GLenum -- ^ @internalformat@ of type @PixelInternalFormat@.
  -> GLboolean -- ^ @sink@ of type @Boolean@.
  -> IO ()
glMinmaxEXT = dyn_glMinmaxEXT ptr_glMinmaxEXT

foreign import CALLCONV "dynamic" dyn_glMinmaxEXT
  :: FunPtr (GLenum -> GLenum -> GLboolean -> IO ())
  ->         GLenum -> GLenum -> GLboolean -> IO ()

{-# NOINLINE ptr_glMinmaxEXT #-}
ptr_glMinmaxEXT :: FunPtr (GLenum -> GLenum -> GLboolean -> IO ())
ptr_glMinmaxEXT = unsafePerformIO $ getCommand "glMinmaxEXT"

-- glMultMatrixd ---------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glMultMatrix.xml OpenGL 2.x>
glMultMatrixd
  :: Ptr GLdouble -- ^ @m@ pointing to @16@ elements of type @GLdouble@.
  -> IO ()
glMultMatrixd = dyn_glMultMatrixd ptr_glMultMatrixd

foreign import CALLCONV "dynamic" dyn_glMultMatrixd
  :: FunPtr (Ptr GLdouble -> IO ())
  ->         Ptr GLdouble -> IO ()

{-# NOINLINE ptr_glMultMatrixd #-}
ptr_glMultMatrixd :: FunPtr (Ptr GLdouble -> IO ())
ptr_glMultMatrixd = unsafePerformIO $ getCommand "glMultMatrixd"

-- glMultMatrixf ---------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glMultMatrix.xml OpenGL 2.x>
glMultMatrixf
  :: Ptr GLfloat -- ^ @m@ pointing to @16@ elements of type @GLfloat@.
  -> IO ()
glMultMatrixf = dyn_glMultMatrixf ptr_glMultMatrixf

foreign import CALLCONV "dynamic" dyn_glMultMatrixf
  :: FunPtr (Ptr GLfloat -> IO ())
  ->         Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glMultMatrixf #-}
ptr_glMultMatrixf :: FunPtr (Ptr GLfloat -> IO ())
ptr_glMultMatrixf = unsafePerformIO $ getCommand "glMultMatrixf"

-- glMultMatrixx ---------------------------------------------------------------

glMultMatrixx
  :: Ptr GLfixed -- ^ @m@ pointing to @16@ elements of type @GLfixed@.
  -> IO ()
glMultMatrixx = dyn_glMultMatrixx ptr_glMultMatrixx

foreign import CALLCONV "dynamic" dyn_glMultMatrixx
  :: FunPtr (Ptr GLfixed -> IO ())
  ->         Ptr GLfixed -> IO ()

{-# NOINLINE ptr_glMultMatrixx #-}
ptr_glMultMatrixx :: FunPtr (Ptr GLfixed -> IO ())
ptr_glMultMatrixx = unsafePerformIO $ getCommand "glMultMatrixx"

-- glMultMatrixxOES ------------------------------------------------------------

glMultMatrixxOES
  :: Ptr GLfixed -- ^ @m@ pointing to @16@ elements of type @GLfixed@.
  -> IO ()
glMultMatrixxOES = dyn_glMultMatrixxOES ptr_glMultMatrixxOES

foreign import CALLCONV "dynamic" dyn_glMultMatrixxOES
  :: FunPtr (Ptr GLfixed -> IO ())
  ->         Ptr GLfixed -> IO ()

{-# NOINLINE ptr_glMultMatrixxOES #-}
ptr_glMultMatrixxOES :: FunPtr (Ptr GLfixed -> IO ())
ptr_glMultMatrixxOES = unsafePerformIO $ getCommand "glMultMatrixxOES"

-- glMultTransposeMatrixd ------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glMultTransposeMatrix.xml OpenGL 2.x>
glMultTransposeMatrixd
  :: Ptr GLdouble -- ^ @m@ pointing to @16@ elements of type @GLdouble@.
  -> IO ()
glMultTransposeMatrixd = dyn_glMultTransposeMatrixd ptr_glMultTransposeMatrixd

foreign import CALLCONV "dynamic" dyn_glMultTransposeMatrixd
  :: FunPtr (Ptr GLdouble -> IO ())
  ->         Ptr GLdouble -> IO ()

{-# NOINLINE ptr_glMultTransposeMatrixd #-}
ptr_glMultTransposeMatrixd :: FunPtr (Ptr GLdouble -> IO ())
ptr_glMultTransposeMatrixd = unsafePerformIO $ getCommand "glMultTransposeMatrixd"

-- glMultTransposeMatrixdARB ---------------------------------------------------

glMultTransposeMatrixdARB
  :: Ptr GLdouble -- ^ @m@ pointing to @16@ elements of type @GLdouble@.
  -> IO ()
glMultTransposeMatrixdARB = dyn_glMultTransposeMatrixdARB ptr_glMultTransposeMatrixdARB

foreign import CALLCONV "dynamic" dyn_glMultTransposeMatrixdARB
  :: FunPtr (Ptr GLdouble -> IO ())
  ->         Ptr GLdouble -> IO ()

{-# NOINLINE ptr_glMultTransposeMatrixdARB #-}
ptr_glMultTransposeMatrixdARB :: FunPtr (Ptr GLdouble -> IO ())
ptr_glMultTransposeMatrixdARB = unsafePerformIO $ getCommand "glMultTransposeMatrixdARB"

-- glMultTransposeMatrixf ------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glMultTransposeMatrix.xml OpenGL 2.x>
glMultTransposeMatrixf
  :: Ptr GLfloat -- ^ @m@ pointing to @16@ elements of type @GLfloat@.
  -> IO ()
glMultTransposeMatrixf = dyn_glMultTransposeMatrixf ptr_glMultTransposeMatrixf

foreign import CALLCONV "dynamic" dyn_glMultTransposeMatrixf
  :: FunPtr (Ptr GLfloat -> IO ())
  ->         Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glMultTransposeMatrixf #-}
ptr_glMultTransposeMatrixf :: FunPtr (Ptr GLfloat -> IO ())
ptr_glMultTransposeMatrixf = unsafePerformIO $ getCommand "glMultTransposeMatrixf"

-- glMultTransposeMatrixfARB ---------------------------------------------------

glMultTransposeMatrixfARB
  :: Ptr GLfloat -- ^ @m@ pointing to @16@ elements of type @GLfloat@.
  -> IO ()
glMultTransposeMatrixfARB = dyn_glMultTransposeMatrixfARB ptr_glMultTransposeMatrixfARB

foreign import CALLCONV "dynamic" dyn_glMultTransposeMatrixfARB
  :: FunPtr (Ptr GLfloat -> IO ())
  ->         Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glMultTransposeMatrixfARB #-}
ptr_glMultTransposeMatrixfARB :: FunPtr (Ptr GLfloat -> IO ())
ptr_glMultTransposeMatrixfARB = unsafePerformIO $ getCommand "glMultTransposeMatrixfARB"

-- glMultTransposeMatrixxOES ---------------------------------------------------

glMultTransposeMatrixxOES
  :: Ptr GLfixed -- ^ @m@ pointing to @16@ elements of type @GLfixed@.
  -> IO ()
glMultTransposeMatrixxOES = dyn_glMultTransposeMatrixxOES ptr_glMultTransposeMatrixxOES

foreign import CALLCONV "dynamic" dyn_glMultTransposeMatrixxOES
  :: FunPtr (Ptr GLfixed -> IO ())
  ->         Ptr GLfixed -> IO ()

{-# NOINLINE ptr_glMultTransposeMatrixxOES #-}
ptr_glMultTransposeMatrixxOES :: FunPtr (Ptr GLfixed -> IO ())
ptr_glMultTransposeMatrixxOES = unsafePerformIO $ getCommand "glMultTransposeMatrixxOES"

-- glMultiDrawArrays -----------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glMultiDrawArrays.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glMultiDrawArrays.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glMultiDrawArrays.xhtml OpenGL 4.x>
glMultiDrawArrays
  :: GLenum -- ^ @mode@ of type @PrimitiveType@.
  -> Ptr GLint -- ^ @first@ pointing to @COMPSIZE(count)@ elements of type @GLint@.
  -> Ptr GLsizei -- ^ @count@ pointing to @COMPSIZE(drawcount)@ elements of type @GLsizei@.
  -> GLsizei -- ^ @drawcount@.
  -> IO ()
glMultiDrawArrays = dyn_glMultiDrawArrays ptr_glMultiDrawArrays

foreign import CALLCONV "dynamic" dyn_glMultiDrawArrays
  :: FunPtr (GLenum -> Ptr GLint -> Ptr GLsizei -> GLsizei -> IO ())
  ->         GLenum -> Ptr GLint -> Ptr GLsizei -> GLsizei -> IO ()

{-# NOINLINE ptr_glMultiDrawArrays #-}
ptr_glMultiDrawArrays :: FunPtr (GLenum -> Ptr GLint -> Ptr GLsizei -> GLsizei -> IO ())
ptr_glMultiDrawArrays = unsafePerformIO $ getCommand "glMultiDrawArrays"

-- glMultiDrawArraysEXT --------------------------------------------------------

glMultiDrawArraysEXT
  :: GLenum -- ^ @mode@ of type @PrimitiveType@.
  -> Ptr GLint -- ^ @first@ pointing to @COMPSIZE(primcount)@ elements of type @GLint@.
  -> Ptr GLsizei -- ^ @count@ pointing to @COMPSIZE(primcount)@ elements of type @GLsizei@.
  -> GLsizei -- ^ @primcount@.
  -> IO ()
glMultiDrawArraysEXT = dyn_glMultiDrawArraysEXT ptr_glMultiDrawArraysEXT

foreign import CALLCONV "dynamic" dyn_glMultiDrawArraysEXT
  :: FunPtr (GLenum -> Ptr GLint -> Ptr GLsizei -> GLsizei -> IO ())
  ->         GLenum -> Ptr GLint -> Ptr GLsizei -> GLsizei -> IO ()

{-# NOINLINE ptr_glMultiDrawArraysEXT #-}
ptr_glMultiDrawArraysEXT :: FunPtr (GLenum -> Ptr GLint -> Ptr GLsizei -> GLsizei -> IO ())
ptr_glMultiDrawArraysEXT = unsafePerformIO $ getCommand "glMultiDrawArraysEXT"

-- glMultiDrawArraysIndirect ---------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glMultiDrawArraysIndirect.xhtml OpenGL 4.x>
glMultiDrawArraysIndirect
  :: GLenum -- ^ @mode@.
  -> Ptr a -- ^ @indirect@ pointing to @COMPSIZE(drawcount,stride)@ elements of type @a@.
  -> GLsizei -- ^ @drawcount@.
  -> GLsizei -- ^ @stride@.
  -> IO ()
glMultiDrawArraysIndirect = dyn_glMultiDrawArraysIndirect ptr_glMultiDrawArraysIndirect

foreign import CALLCONV "dynamic" dyn_glMultiDrawArraysIndirect
  :: FunPtr (GLenum -> Ptr a -> GLsizei -> GLsizei -> IO ())
  ->         GLenum -> Ptr a -> GLsizei -> GLsizei -> IO ()

{-# NOINLINE ptr_glMultiDrawArraysIndirect #-}
ptr_glMultiDrawArraysIndirect :: FunPtr (GLenum -> Ptr a -> GLsizei -> GLsizei -> IO ())
ptr_glMultiDrawArraysIndirect = unsafePerformIO $ getCommand "glMultiDrawArraysIndirect"

-- glMultiDrawArraysIndirectAMD ------------------------------------------------

glMultiDrawArraysIndirectAMD
  :: GLenum -- ^ @mode@.
  -> Ptr a -- ^ @indirect@.
  -> GLsizei -- ^ @primcount@.
  -> GLsizei -- ^ @stride@.
  -> IO ()
glMultiDrawArraysIndirectAMD = dyn_glMultiDrawArraysIndirectAMD ptr_glMultiDrawArraysIndirectAMD

foreign import CALLCONV "dynamic" dyn_glMultiDrawArraysIndirectAMD
  :: FunPtr (GLenum -> Ptr a -> GLsizei -> GLsizei -> IO ())
  ->         GLenum -> Ptr a -> GLsizei -> GLsizei -> IO ()

{-# NOINLINE ptr_glMultiDrawArraysIndirectAMD #-}
ptr_glMultiDrawArraysIndirectAMD :: FunPtr (GLenum -> Ptr a -> GLsizei -> GLsizei -> IO ())
ptr_glMultiDrawArraysIndirectAMD = unsafePerformIO $ getCommand "glMultiDrawArraysIndirectAMD"

-- glMultiDrawArraysIndirectBindlessCountNV ------------------------------------

glMultiDrawArraysIndirectBindlessCountNV
  :: GLenum -- ^ @mode@.
  -> Ptr a -- ^ @indirect@.
  -> GLsizei -- ^ @drawCount@.
  -> GLsizei -- ^ @maxDrawCount@.
  -> GLsizei -- ^ @stride@.
  -> GLint -- ^ @vertexBufferCount@.
  -> IO ()
glMultiDrawArraysIndirectBindlessCountNV = dyn_glMultiDrawArraysIndirectBindlessCountNV ptr_glMultiDrawArraysIndirectBindlessCountNV

foreign import CALLCONV "dynamic" dyn_glMultiDrawArraysIndirectBindlessCountNV
  :: FunPtr (GLenum -> Ptr a -> GLsizei -> GLsizei -> GLsizei -> GLint -> IO ())
  ->         GLenum -> Ptr a -> GLsizei -> GLsizei -> GLsizei -> GLint -> IO ()

{-# NOINLINE ptr_glMultiDrawArraysIndirectBindlessCountNV #-}
ptr_glMultiDrawArraysIndirectBindlessCountNV :: FunPtr (GLenum -> Ptr a -> GLsizei -> GLsizei -> GLsizei -> GLint -> IO ())
ptr_glMultiDrawArraysIndirectBindlessCountNV = unsafePerformIO $ getCommand "glMultiDrawArraysIndirectBindlessCountNV"

-- glMultiDrawArraysIndirectBindlessNV -----------------------------------------

glMultiDrawArraysIndirectBindlessNV
  :: GLenum -- ^ @mode@.
  -> Ptr a -- ^ @indirect@.
  -> GLsizei -- ^ @drawCount@.
  -> GLsizei -- ^ @stride@.
  -> GLint -- ^ @vertexBufferCount@.
  -> IO ()
glMultiDrawArraysIndirectBindlessNV = dyn_glMultiDrawArraysIndirectBindlessNV ptr_glMultiDrawArraysIndirectBindlessNV

foreign import CALLCONV "dynamic" dyn_glMultiDrawArraysIndirectBindlessNV
  :: FunPtr (GLenum -> Ptr a -> GLsizei -> GLsizei -> GLint -> IO ())
  ->         GLenum -> Ptr a -> GLsizei -> GLsizei -> GLint -> IO ()

{-# NOINLINE ptr_glMultiDrawArraysIndirectBindlessNV #-}
ptr_glMultiDrawArraysIndirectBindlessNV :: FunPtr (GLenum -> Ptr a -> GLsizei -> GLsizei -> GLint -> IO ())
ptr_glMultiDrawArraysIndirectBindlessNV = unsafePerformIO $ getCommand "glMultiDrawArraysIndirectBindlessNV"

-- glMultiDrawArraysIndirectCountARB -------------------------------------------

glMultiDrawArraysIndirectCountARB
  :: GLenum -- ^ @mode@.
  -> GLintptr -- ^ @indirect@.
  -> GLintptr -- ^ @drawcount@.
  -> GLsizei -- ^ @maxdrawcount@.
  -> GLsizei -- ^ @stride@.
  -> IO ()
glMultiDrawArraysIndirectCountARB = dyn_glMultiDrawArraysIndirectCountARB ptr_glMultiDrawArraysIndirectCountARB

foreign import CALLCONV "dynamic" dyn_glMultiDrawArraysIndirectCountARB
  :: FunPtr (GLenum -> GLintptr -> GLintptr -> GLsizei -> GLsizei -> IO ())
  ->         GLenum -> GLintptr -> GLintptr -> GLsizei -> GLsizei -> IO ()

{-# NOINLINE ptr_glMultiDrawArraysIndirectCountARB #-}
ptr_glMultiDrawArraysIndirectCountARB :: FunPtr (GLenum -> GLintptr -> GLintptr -> GLsizei -> GLsizei -> IO ())
ptr_glMultiDrawArraysIndirectCountARB = unsafePerformIO $ getCommand "glMultiDrawArraysIndirectCountARB"

-- glMultiDrawArraysIndirectEXT ------------------------------------------------

glMultiDrawArraysIndirectEXT
  :: GLenum -- ^ @mode@.
  -> Ptr a -- ^ @indirect@ pointing to @COMPSIZE(drawcount,stride)@ elements of type @a@.
  -> GLsizei -- ^ @drawcount@.
  -> GLsizei -- ^ @stride@.
  -> IO ()
glMultiDrawArraysIndirectEXT = dyn_glMultiDrawArraysIndirectEXT ptr_glMultiDrawArraysIndirectEXT

foreign import CALLCONV "dynamic" dyn_glMultiDrawArraysIndirectEXT
  :: FunPtr (GLenum -> Ptr a -> GLsizei -> GLsizei -> IO ())
  ->         GLenum -> Ptr a -> GLsizei -> GLsizei -> IO ()

{-# NOINLINE ptr_glMultiDrawArraysIndirectEXT #-}
ptr_glMultiDrawArraysIndirectEXT :: FunPtr (GLenum -> Ptr a -> GLsizei -> GLsizei -> IO ())
ptr_glMultiDrawArraysIndirectEXT = unsafePerformIO $ getCommand "glMultiDrawArraysIndirectEXT"

-- glMultiDrawElementArrayAPPLE ------------------------------------------------

glMultiDrawElementArrayAPPLE
  :: GLenum -- ^ @mode@ of type @PrimitiveType@.
  -> Ptr GLint -- ^ @first@ pointing to @primcount@ elements of type @GLint@.
  -> Ptr GLsizei -- ^ @count@ pointing to @primcount@ elements of type @GLsizei@.
  -> GLsizei -- ^ @primcount@.
  -> IO ()
glMultiDrawElementArrayAPPLE = dyn_glMultiDrawElementArrayAPPLE ptr_glMultiDrawElementArrayAPPLE

foreign import CALLCONV "dynamic" dyn_glMultiDrawElementArrayAPPLE
  :: FunPtr (GLenum -> Ptr GLint -> Ptr GLsizei -> GLsizei -> IO ())
  ->         GLenum -> Ptr GLint -> Ptr GLsizei -> GLsizei -> IO ()

{-# NOINLINE ptr_glMultiDrawElementArrayAPPLE #-}
ptr_glMultiDrawElementArrayAPPLE :: FunPtr (GLenum -> Ptr GLint -> Ptr GLsizei -> GLsizei -> IO ())
ptr_glMultiDrawElementArrayAPPLE = unsafePerformIO $ getCommand "glMultiDrawElementArrayAPPLE"

-- glMultiDrawElements ---------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glMultiDrawElements.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glMultiDrawElements.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glMultiDrawElements.xhtml OpenGL 4.x>
glMultiDrawElements
  :: GLenum -- ^ @mode@ of type @PrimitiveType@.
  -> Ptr GLsizei -- ^ @count@ pointing to @COMPSIZE(drawcount)@ elements of type @GLsizei@.
  -> GLenum -- ^ @type@ of type @DrawElementsType@.
  -> Ptr (Ptr a) -- ^ @indices@ pointing to @COMPSIZE(drawcount)@ elements of type @Ptr a@.
  -> GLsizei -- ^ @drawcount@.
  -> IO ()
glMultiDrawElements = dyn_glMultiDrawElements ptr_glMultiDrawElements

foreign import CALLCONV "dynamic" dyn_glMultiDrawElements
  :: FunPtr (GLenum -> Ptr GLsizei -> GLenum -> Ptr (Ptr a) -> GLsizei -> IO ())
  ->         GLenum -> Ptr GLsizei -> GLenum -> Ptr (Ptr a) -> GLsizei -> IO ()

{-# NOINLINE ptr_glMultiDrawElements #-}
ptr_glMultiDrawElements :: FunPtr (GLenum -> Ptr GLsizei -> GLenum -> Ptr (Ptr a) -> GLsizei -> IO ())
ptr_glMultiDrawElements = unsafePerformIO $ getCommand "glMultiDrawElements"

-- glMultiDrawElementsBaseVertex -----------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glMultiDrawElementsBaseVertex.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glMultiDrawElementsBaseVertex.xhtml OpenGL 4.x>
glMultiDrawElementsBaseVertex
  :: GLenum -- ^ @mode@.
  -> Ptr GLsizei -- ^ @count@ pointing to @COMPSIZE(drawcount)@ elements of type @GLsizei@.
  -> GLenum -- ^ @type@ of type @DrawElementsType@.
  -> Ptr (Ptr a) -- ^ @indices@ pointing to @COMPSIZE(drawcount)@ elements of type @Ptr a@.
  -> GLsizei -- ^ @drawcount@.
  -> Ptr GLint -- ^ @basevertex@ pointing to @COMPSIZE(drawcount)@ elements of type @GLint@.
  -> IO ()
glMultiDrawElementsBaseVertex = dyn_glMultiDrawElementsBaseVertex ptr_glMultiDrawElementsBaseVertex

foreign import CALLCONV "dynamic" dyn_glMultiDrawElementsBaseVertex
  :: FunPtr (GLenum -> Ptr GLsizei -> GLenum -> Ptr (Ptr a) -> GLsizei -> Ptr GLint -> IO ())
  ->         GLenum -> Ptr GLsizei -> GLenum -> Ptr (Ptr a) -> GLsizei -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glMultiDrawElementsBaseVertex #-}
ptr_glMultiDrawElementsBaseVertex :: FunPtr (GLenum -> Ptr GLsizei -> GLenum -> Ptr (Ptr a) -> GLsizei -> Ptr GLint -> IO ())
ptr_glMultiDrawElementsBaseVertex = unsafePerformIO $ getCommand "glMultiDrawElementsBaseVertex"

-- glMultiDrawElementsBaseVertexEXT --------------------------------------------

glMultiDrawElementsBaseVertexEXT
  :: GLenum -- ^ @mode@.
  -> Ptr GLsizei -- ^ @count@ pointing to @COMPSIZE(drawcount)@ elements of type @GLsizei@.
  -> GLenum -- ^ @type@ of type @DrawElementsType@.
  -> Ptr (Ptr a) -- ^ @indices@ pointing to @COMPSIZE(drawcount)@ elements of type @Ptr a@.
  -> GLsizei -- ^ @primcount@.
  -> Ptr GLint -- ^ @basevertex@ pointing to @COMPSIZE(drawcount)@ elements of type @GLint@.
  -> IO ()
glMultiDrawElementsBaseVertexEXT = dyn_glMultiDrawElementsBaseVertexEXT ptr_glMultiDrawElementsBaseVertexEXT

foreign import CALLCONV "dynamic" dyn_glMultiDrawElementsBaseVertexEXT
  :: FunPtr (GLenum -> Ptr GLsizei -> GLenum -> Ptr (Ptr a) -> GLsizei -> Ptr GLint -> IO ())
  ->         GLenum -> Ptr GLsizei -> GLenum -> Ptr (Ptr a) -> GLsizei -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glMultiDrawElementsBaseVertexEXT #-}
ptr_glMultiDrawElementsBaseVertexEXT :: FunPtr (GLenum -> Ptr GLsizei -> GLenum -> Ptr (Ptr a) -> GLsizei -> Ptr GLint -> IO ())
ptr_glMultiDrawElementsBaseVertexEXT = unsafePerformIO $ getCommand "glMultiDrawElementsBaseVertexEXT"

-- glMultiDrawElementsBaseVertexOES --------------------------------------------

glMultiDrawElementsBaseVertexOES
  :: GLenum -- ^ @mode@.
  -> Ptr GLsizei -- ^ @count@ pointing to @COMPSIZE(drawcount)@ elements of type @GLsizei@.
  -> GLenum -- ^ @type@ of type @DrawElementsType@.
  -> Ptr (Ptr a) -- ^ @indices@ pointing to @COMPSIZE(drawcount)@ elements of type @Ptr a@.
  -> GLsizei -- ^ @primcount@.
  -> Ptr GLint -- ^ @basevertex@ pointing to @COMPSIZE(drawcount)@ elements of type @GLint@.
  -> IO ()
glMultiDrawElementsBaseVertexOES = dyn_glMultiDrawElementsBaseVertexOES ptr_glMultiDrawElementsBaseVertexOES

foreign import CALLCONV "dynamic" dyn_glMultiDrawElementsBaseVertexOES
  :: FunPtr (GLenum -> Ptr GLsizei -> GLenum -> Ptr (Ptr a) -> GLsizei -> Ptr GLint -> IO ())
  ->         GLenum -> Ptr GLsizei -> GLenum -> Ptr (Ptr a) -> GLsizei -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glMultiDrawElementsBaseVertexOES #-}
ptr_glMultiDrawElementsBaseVertexOES :: FunPtr (GLenum -> Ptr GLsizei -> GLenum -> Ptr (Ptr a) -> GLsizei -> Ptr GLint -> IO ())
ptr_glMultiDrawElementsBaseVertexOES = unsafePerformIO $ getCommand "glMultiDrawElementsBaseVertexOES"

-- glMultiDrawElementsEXT ------------------------------------------------------

glMultiDrawElementsEXT
  :: GLenum -- ^ @mode@ of type @PrimitiveType@.
  -> Ptr GLsizei -- ^ @count@ pointing to @COMPSIZE(primcount)@ elements of type @GLsizei@.
  -> GLenum -- ^ @type@ of type @DrawElementsType@.
  -> Ptr (Ptr a) -- ^ @indices@ pointing to @COMPSIZE(primcount)@ elements of type @Ptr a@.
  -> GLsizei -- ^ @primcount@.
  -> IO ()
glMultiDrawElementsEXT = dyn_glMultiDrawElementsEXT ptr_glMultiDrawElementsEXT

foreign import CALLCONV "dynamic" dyn_glMultiDrawElementsEXT
  :: FunPtr (GLenum -> Ptr GLsizei -> GLenum -> Ptr (Ptr a) -> GLsizei -> IO ())
  ->         GLenum -> Ptr GLsizei -> GLenum -> Ptr (Ptr a) -> GLsizei -> IO ()

{-# NOINLINE ptr_glMultiDrawElementsEXT #-}
ptr_glMultiDrawElementsEXT :: FunPtr (GLenum -> Ptr GLsizei -> GLenum -> Ptr (Ptr a) -> GLsizei -> IO ())
ptr_glMultiDrawElementsEXT = unsafePerformIO $ getCommand "glMultiDrawElementsEXT"

-- glMultiDrawElementsIndirect -------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glMultiDrawElementsIndirect.xhtml OpenGL 4.x>
glMultiDrawElementsIndirect
  :: GLenum -- ^ @mode@.
  -> GLenum -- ^ @type@.
  -> Ptr a -- ^ @indirect@ pointing to @COMPSIZE(drawcount,stride)@ elements of type @a@.
  -> GLsizei -- ^ @drawcount@.
  -> GLsizei -- ^ @stride@.
  -> IO ()
glMultiDrawElementsIndirect = dyn_glMultiDrawElementsIndirect ptr_glMultiDrawElementsIndirect

foreign import CALLCONV "dynamic" dyn_glMultiDrawElementsIndirect
  :: FunPtr (GLenum -> GLenum -> Ptr a -> GLsizei -> GLsizei -> IO ())
  ->         GLenum -> GLenum -> Ptr a -> GLsizei -> GLsizei -> IO ()

{-# NOINLINE ptr_glMultiDrawElementsIndirect #-}
ptr_glMultiDrawElementsIndirect :: FunPtr (GLenum -> GLenum -> Ptr a -> GLsizei -> GLsizei -> IO ())
ptr_glMultiDrawElementsIndirect = unsafePerformIO $ getCommand "glMultiDrawElementsIndirect"

-- glMultiDrawElementsIndirectAMD ----------------------------------------------

glMultiDrawElementsIndirectAMD
  :: GLenum -- ^ @mode@.
  -> GLenum -- ^ @type@.
  -> Ptr a -- ^ @indirect@.
  -> GLsizei -- ^ @primcount@.
  -> GLsizei -- ^ @stride@.
  -> IO ()
glMultiDrawElementsIndirectAMD = dyn_glMultiDrawElementsIndirectAMD ptr_glMultiDrawElementsIndirectAMD

foreign import CALLCONV "dynamic" dyn_glMultiDrawElementsIndirectAMD
  :: FunPtr (GLenum -> GLenum -> Ptr a -> GLsizei -> GLsizei -> IO ())
  ->         GLenum -> GLenum -> Ptr a -> GLsizei -> GLsizei -> IO ()

{-# NOINLINE ptr_glMultiDrawElementsIndirectAMD #-}
ptr_glMultiDrawElementsIndirectAMD :: FunPtr (GLenum -> GLenum -> Ptr a -> GLsizei -> GLsizei -> IO ())
ptr_glMultiDrawElementsIndirectAMD = unsafePerformIO $ getCommand "glMultiDrawElementsIndirectAMD"

-- glMultiDrawElementsIndirectBindlessCountNV ----------------------------------

glMultiDrawElementsIndirectBindlessCountNV
  :: GLenum -- ^ @mode@.
  -> GLenum -- ^ @type@.
  -> Ptr a -- ^ @indirect@.
  -> GLsizei -- ^ @drawCount@.
  -> GLsizei -- ^ @maxDrawCount@.
  -> GLsizei -- ^ @stride@.
  -> GLint -- ^ @vertexBufferCount@.
  -> IO ()
glMultiDrawElementsIndirectBindlessCountNV = dyn_glMultiDrawElementsIndirectBindlessCountNV ptr_glMultiDrawElementsIndirectBindlessCountNV

foreign import CALLCONV "dynamic" dyn_glMultiDrawElementsIndirectBindlessCountNV
  :: FunPtr (GLenum -> GLenum -> Ptr a -> GLsizei -> GLsizei -> GLsizei -> GLint -> IO ())
  ->         GLenum -> GLenum -> Ptr a -> GLsizei -> GLsizei -> GLsizei -> GLint -> IO ()

{-# NOINLINE ptr_glMultiDrawElementsIndirectBindlessCountNV #-}
ptr_glMultiDrawElementsIndirectBindlessCountNV :: FunPtr (GLenum -> GLenum -> Ptr a -> GLsizei -> GLsizei -> GLsizei -> GLint -> IO ())
ptr_glMultiDrawElementsIndirectBindlessCountNV = unsafePerformIO $ getCommand "glMultiDrawElementsIndirectBindlessCountNV"

-- glMultiDrawElementsIndirectBindlessNV ---------------------------------------

glMultiDrawElementsIndirectBindlessNV
  :: GLenum -- ^ @mode@.
  -> GLenum -- ^ @type@.
  -> Ptr a -- ^ @indirect@.
  -> GLsizei -- ^ @drawCount@.
  -> GLsizei -- ^ @stride@.
  -> GLint -- ^ @vertexBufferCount@.
  -> IO ()
glMultiDrawElementsIndirectBindlessNV = dyn_glMultiDrawElementsIndirectBindlessNV ptr_glMultiDrawElementsIndirectBindlessNV

foreign import CALLCONV "dynamic" dyn_glMultiDrawElementsIndirectBindlessNV
  :: FunPtr (GLenum -> GLenum -> Ptr a -> GLsizei -> GLsizei -> GLint -> IO ())
  ->         GLenum -> GLenum -> Ptr a -> GLsizei -> GLsizei -> GLint -> IO ()

{-# NOINLINE ptr_glMultiDrawElementsIndirectBindlessNV #-}
ptr_glMultiDrawElementsIndirectBindlessNV :: FunPtr (GLenum -> GLenum -> Ptr a -> GLsizei -> GLsizei -> GLint -> IO ())
ptr_glMultiDrawElementsIndirectBindlessNV = unsafePerformIO $ getCommand "glMultiDrawElementsIndirectBindlessNV"

-- glMultiDrawElementsIndirectCountARB -----------------------------------------

glMultiDrawElementsIndirectCountARB
  :: GLenum -- ^ @mode@.
  -> GLenum -- ^ @type@.
  -> GLintptr -- ^ @indirect@.
  -> GLintptr -- ^ @drawcount@.
  -> GLsizei -- ^ @maxdrawcount@.
  -> GLsizei -- ^ @stride@.
  -> IO ()
glMultiDrawElementsIndirectCountARB = dyn_glMultiDrawElementsIndirectCountARB ptr_glMultiDrawElementsIndirectCountARB

foreign import CALLCONV "dynamic" dyn_glMultiDrawElementsIndirectCountARB
  :: FunPtr (GLenum -> GLenum -> GLintptr -> GLintptr -> GLsizei -> GLsizei -> IO ())
  ->         GLenum -> GLenum -> GLintptr -> GLintptr -> GLsizei -> GLsizei -> IO ()

{-# NOINLINE ptr_glMultiDrawElementsIndirectCountARB #-}
ptr_glMultiDrawElementsIndirectCountARB :: FunPtr (GLenum -> GLenum -> GLintptr -> GLintptr -> GLsizei -> GLsizei -> IO ())
ptr_glMultiDrawElementsIndirectCountARB = unsafePerformIO $ getCommand "glMultiDrawElementsIndirectCountARB"

-- glMultiDrawElementsIndirectEXT ----------------------------------------------

glMultiDrawElementsIndirectEXT
  :: GLenum -- ^ @mode@.
  -> GLenum -- ^ @type@.
  -> Ptr a -- ^ @indirect@ pointing to @COMPSIZE(drawcount,stride)@ elements of type @a@.
  -> GLsizei -- ^ @drawcount@.
  -> GLsizei -- ^ @stride@.
  -> IO ()
glMultiDrawElementsIndirectEXT = dyn_glMultiDrawElementsIndirectEXT ptr_glMultiDrawElementsIndirectEXT

foreign import CALLCONV "dynamic" dyn_glMultiDrawElementsIndirectEXT
  :: FunPtr (GLenum -> GLenum -> Ptr a -> GLsizei -> GLsizei -> IO ())
  ->         GLenum -> GLenum -> Ptr a -> GLsizei -> GLsizei -> IO ()

{-# NOINLINE ptr_glMultiDrawElementsIndirectEXT #-}
ptr_glMultiDrawElementsIndirectEXT :: FunPtr (GLenum -> GLenum -> Ptr a -> GLsizei -> GLsizei -> IO ())
ptr_glMultiDrawElementsIndirectEXT = unsafePerformIO $ getCommand "glMultiDrawElementsIndirectEXT"

-- glMultiDrawRangeElementArrayAPPLE -------------------------------------------

glMultiDrawRangeElementArrayAPPLE
  :: GLenum -- ^ @mode@ of type @PrimitiveType@.
  -> GLuint -- ^ @start@.
  -> GLuint -- ^ @end@.
  -> Ptr GLint -- ^ @first@ pointing to @primcount@ elements of type @GLint@.
  -> Ptr GLsizei -- ^ @count@ pointing to @primcount@ elements of type @GLsizei@.
  -> GLsizei -- ^ @primcount@.
  -> IO ()
glMultiDrawRangeElementArrayAPPLE = dyn_glMultiDrawRangeElementArrayAPPLE ptr_glMultiDrawRangeElementArrayAPPLE

foreign import CALLCONV "dynamic" dyn_glMultiDrawRangeElementArrayAPPLE
  :: FunPtr (GLenum -> GLuint -> GLuint -> Ptr GLint -> Ptr GLsizei -> GLsizei -> IO ())
  ->         GLenum -> GLuint -> GLuint -> Ptr GLint -> Ptr GLsizei -> GLsizei -> IO ()

{-# NOINLINE ptr_glMultiDrawRangeElementArrayAPPLE #-}
ptr_glMultiDrawRangeElementArrayAPPLE :: FunPtr (GLenum -> GLuint -> GLuint -> Ptr GLint -> Ptr GLsizei -> GLsizei -> IO ())
ptr_glMultiDrawRangeElementArrayAPPLE = unsafePerformIO $ getCommand "glMultiDrawRangeElementArrayAPPLE"

-- glMultiModeDrawArraysIBM ----------------------------------------------------

glMultiModeDrawArraysIBM
  :: Ptr GLenum -- ^ @mode@ pointing to @COMPSIZE(primcount)@ elements of type @PrimitiveType@.
  -> Ptr GLint -- ^ @first@ pointing to @COMPSIZE(primcount)@ elements of type @GLint@.
  -> Ptr GLsizei -- ^ @count@ pointing to @COMPSIZE(primcount)@ elements of type @GLsizei@.
  -> GLsizei -- ^ @primcount@.
  -> GLint -- ^ @modestride@.
  -> IO ()
glMultiModeDrawArraysIBM = dyn_glMultiModeDrawArraysIBM ptr_glMultiModeDrawArraysIBM

foreign import CALLCONV "dynamic" dyn_glMultiModeDrawArraysIBM
  :: FunPtr (Ptr GLenum -> Ptr GLint -> Ptr GLsizei -> GLsizei -> GLint -> IO ())
  ->         Ptr GLenum -> Ptr GLint -> Ptr GLsizei -> GLsizei -> GLint -> IO ()

{-# NOINLINE ptr_glMultiModeDrawArraysIBM #-}
ptr_glMultiModeDrawArraysIBM :: FunPtr (Ptr GLenum -> Ptr GLint -> Ptr GLsizei -> GLsizei -> GLint -> IO ())
ptr_glMultiModeDrawArraysIBM = unsafePerformIO $ getCommand "glMultiModeDrawArraysIBM"

-- glMultiModeDrawElementsIBM --------------------------------------------------

glMultiModeDrawElementsIBM
  :: Ptr GLenum -- ^ @mode@ pointing to @COMPSIZE(primcount)@ elements of type @PrimitiveType@.
  -> Ptr GLsizei -- ^ @count@ pointing to @COMPSIZE(primcount)@ elements of type @GLsizei@.
  -> GLenum -- ^ @type@ of type @DrawElementsType@.
  -> Ptr (Ptr a) -- ^ @indices@ pointing to @COMPSIZE(primcount)@ elements of type @Ptr a@.
  -> GLsizei -- ^ @primcount@.
  -> GLint -- ^ @modestride@.
  -> IO ()
glMultiModeDrawElementsIBM = dyn_glMultiModeDrawElementsIBM ptr_glMultiModeDrawElementsIBM

foreign import CALLCONV "dynamic" dyn_glMultiModeDrawElementsIBM
  :: FunPtr (Ptr GLenum -> Ptr GLsizei -> GLenum -> Ptr (Ptr a) -> GLsizei -> GLint -> IO ())
  ->         Ptr GLenum -> Ptr GLsizei -> GLenum -> Ptr (Ptr a) -> GLsizei -> GLint -> IO ()

{-# NOINLINE ptr_glMultiModeDrawElementsIBM #-}
ptr_glMultiModeDrawElementsIBM :: FunPtr (Ptr GLenum -> Ptr GLsizei -> GLenum -> Ptr (Ptr a) -> GLsizei -> GLint -> IO ())
ptr_glMultiModeDrawElementsIBM = unsafePerformIO $ getCommand "glMultiModeDrawElementsIBM"

-- glMultiTexBufferEXT ---------------------------------------------------------

glMultiTexBufferEXT
  :: GLenum -- ^ @texunit@ of type @TextureUnit@.
  -> GLenum -- ^ @target@ of type @TextureTarget@.
  -> GLenum -- ^ @internalformat@ of type @TypeEnum@.
  -> GLuint -- ^ @buffer@.
  -> IO ()
glMultiTexBufferEXT = dyn_glMultiTexBufferEXT ptr_glMultiTexBufferEXT

foreign import CALLCONV "dynamic" dyn_glMultiTexBufferEXT
  :: FunPtr (GLenum -> GLenum -> GLenum -> GLuint -> IO ())
  ->         GLenum -> GLenum -> GLenum -> GLuint -> IO ()

{-# NOINLINE ptr_glMultiTexBufferEXT #-}
ptr_glMultiTexBufferEXT :: FunPtr (GLenum -> GLenum -> GLenum -> GLuint -> IO ())
ptr_glMultiTexBufferEXT = unsafePerformIO $ getCommand "glMultiTexBufferEXT"

-- glMultiTexCoord1bOES --------------------------------------------------------

glMultiTexCoord1bOES
  :: GLenum -- ^ @texture@.
  -> GLbyte -- ^ @s@.
  -> IO ()
glMultiTexCoord1bOES = dyn_glMultiTexCoord1bOES ptr_glMultiTexCoord1bOES

foreign import CALLCONV "dynamic" dyn_glMultiTexCoord1bOES
  :: FunPtr (GLenum -> GLbyte -> IO ())
  ->         GLenum -> GLbyte -> IO ()

{-# NOINLINE ptr_glMultiTexCoord1bOES #-}
ptr_glMultiTexCoord1bOES :: FunPtr (GLenum -> GLbyte -> IO ())
ptr_glMultiTexCoord1bOES = unsafePerformIO $ getCommand "glMultiTexCoord1bOES"

-- glMultiTexCoord1bvOES -------------------------------------------------------

glMultiTexCoord1bvOES
  :: GLenum -- ^ @texture@.
  -> Ptr GLbyte -- ^ @coords@ pointing to @1@ elements of type @GLbyte@.
  -> IO ()
glMultiTexCoord1bvOES = dyn_glMultiTexCoord1bvOES ptr_glMultiTexCoord1bvOES

foreign import CALLCONV "dynamic" dyn_glMultiTexCoord1bvOES
  :: FunPtr (GLenum -> Ptr GLbyte -> IO ())
  ->         GLenum -> Ptr GLbyte -> IO ()

{-# NOINLINE ptr_glMultiTexCoord1bvOES #-}
ptr_glMultiTexCoord1bvOES :: FunPtr (GLenum -> Ptr GLbyte -> IO ())
ptr_glMultiTexCoord1bvOES = unsafePerformIO $ getCommand "glMultiTexCoord1bvOES"

-- glMultiTexCoord1d -----------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glMultiTexCoord.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glMultiTexCoord.xml OpenGL 3.x>
glMultiTexCoord1d
  :: GLenum -- ^ @target@ of type @TextureUnit@.
  -> GLdouble -- ^ @s@ of type @CoordD@.
  -> IO ()
glMultiTexCoord1d = dyn_glMultiTexCoord1d ptr_glMultiTexCoord1d

foreign import CALLCONV "dynamic" dyn_glMultiTexCoord1d
  :: FunPtr (GLenum -> GLdouble -> IO ())
  ->         GLenum -> GLdouble -> IO ()

{-# NOINLINE ptr_glMultiTexCoord1d #-}
ptr_glMultiTexCoord1d :: FunPtr (GLenum -> GLdouble -> IO ())
ptr_glMultiTexCoord1d = unsafePerformIO $ getCommand "glMultiTexCoord1d"

-- glMultiTexCoord1dARB --------------------------------------------------------

glMultiTexCoord1dARB
  :: GLenum -- ^ @target@ of type @TextureUnit@.
  -> GLdouble -- ^ @s@ of type @CoordD@.
  -> IO ()
glMultiTexCoord1dARB = dyn_glMultiTexCoord1dARB ptr_glMultiTexCoord1dARB

foreign import CALLCONV "dynamic" dyn_glMultiTexCoord1dARB
  :: FunPtr (GLenum -> GLdouble -> IO ())
  ->         GLenum -> GLdouble -> IO ()

{-# NOINLINE ptr_glMultiTexCoord1dARB #-}
ptr_glMultiTexCoord1dARB :: FunPtr (GLenum -> GLdouble -> IO ())
ptr_glMultiTexCoord1dARB = unsafePerformIO $ getCommand "glMultiTexCoord1dARB"

-- glMultiTexCoord1dv ----------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glMultiTexCoord.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glMultiTexCoord.xml OpenGL 3.x>
glMultiTexCoord1dv
  :: GLenum -- ^ @target@ of type @TextureUnit@.
  -> Ptr GLdouble -- ^ @v@ pointing to @1@ elements of type @CoordD@.
  -> IO ()
glMultiTexCoord1dv = dyn_glMultiTexCoord1dv ptr_glMultiTexCoord1dv

foreign import CALLCONV "dynamic" dyn_glMultiTexCoord1dv
  :: FunPtr (GLenum -> Ptr GLdouble -> IO ())
  ->         GLenum -> Ptr GLdouble -> IO ()

{-# NOINLINE ptr_glMultiTexCoord1dv #-}
ptr_glMultiTexCoord1dv :: FunPtr (GLenum -> Ptr GLdouble -> IO ())
ptr_glMultiTexCoord1dv = unsafePerformIO $ getCommand "glMultiTexCoord1dv"

-- glMultiTexCoord1dvARB -------------------------------------------------------

glMultiTexCoord1dvARB
  :: GLenum -- ^ @target@ of type @TextureUnit@.
  -> Ptr GLdouble -- ^ @v@ pointing to @1@ elements of type @CoordD@.
  -> IO ()
glMultiTexCoord1dvARB = dyn_glMultiTexCoord1dvARB ptr_glMultiTexCoord1dvARB

foreign import CALLCONV "dynamic" dyn_glMultiTexCoord1dvARB
  :: FunPtr (GLenum -> Ptr GLdouble -> IO ())
  ->         GLenum -> Ptr GLdouble -> IO ()

{-# NOINLINE ptr_glMultiTexCoord1dvARB #-}
ptr_glMultiTexCoord1dvARB :: FunPtr (GLenum -> Ptr GLdouble -> IO ())
ptr_glMultiTexCoord1dvARB = unsafePerformIO $ getCommand "glMultiTexCoord1dvARB"

-- glMultiTexCoord1f -----------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glMultiTexCoord.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glMultiTexCoord.xml OpenGL 3.x>
glMultiTexCoord1f
  :: GLenum -- ^ @target@ of type @TextureUnit@.
  -> GLfloat -- ^ @s@ of type @CoordF@.
  -> IO ()
glMultiTexCoord1f = dyn_glMultiTexCoord1f ptr_glMultiTexCoord1f

foreign import CALLCONV "dynamic" dyn_glMultiTexCoord1f
  :: FunPtr (GLenum -> GLfloat -> IO ())
  ->         GLenum -> GLfloat -> IO ()

{-# NOINLINE ptr_glMultiTexCoord1f #-}
ptr_glMultiTexCoord1f :: FunPtr (GLenum -> GLfloat -> IO ())
ptr_glMultiTexCoord1f = unsafePerformIO $ getCommand "glMultiTexCoord1f"

-- glMultiTexCoord1fARB --------------------------------------------------------

glMultiTexCoord1fARB
  :: GLenum -- ^ @target@ of type @TextureUnit@.
  -> GLfloat -- ^ @s@ of type @CoordF@.
  -> IO ()
glMultiTexCoord1fARB = dyn_glMultiTexCoord1fARB ptr_glMultiTexCoord1fARB

foreign import CALLCONV "dynamic" dyn_glMultiTexCoord1fARB
  :: FunPtr (GLenum -> GLfloat -> IO ())
  ->         GLenum -> GLfloat -> IO ()

{-# NOINLINE ptr_glMultiTexCoord1fARB #-}
ptr_glMultiTexCoord1fARB :: FunPtr (GLenum -> GLfloat -> IO ())
ptr_glMultiTexCoord1fARB = unsafePerformIO $ getCommand "glMultiTexCoord1fARB"

-- glMultiTexCoord1fv ----------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glMultiTexCoord.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glMultiTexCoord.xml OpenGL 3.x>
glMultiTexCoord1fv
  :: GLenum -- ^ @target@ of type @TextureUnit@.
  -> Ptr GLfloat -- ^ @v@ pointing to @1@ elements of type @CoordF@.
  -> IO ()
glMultiTexCoord1fv = dyn_glMultiTexCoord1fv ptr_glMultiTexCoord1fv

foreign import CALLCONV "dynamic" dyn_glMultiTexCoord1fv
  :: FunPtr (GLenum -> Ptr GLfloat -> IO ())
  ->         GLenum -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glMultiTexCoord1fv #-}
ptr_glMultiTexCoord1fv :: FunPtr (GLenum -> Ptr GLfloat -> IO ())
ptr_glMultiTexCoord1fv = unsafePerformIO $ getCommand "glMultiTexCoord1fv"

-- glMultiTexCoord1fvARB -------------------------------------------------------

glMultiTexCoord1fvARB
  :: GLenum -- ^ @target@ of type @TextureUnit@.
  -> Ptr GLfloat -- ^ @v@ pointing to @1@ elements of type @CoordF@.
  -> IO ()
glMultiTexCoord1fvARB = dyn_glMultiTexCoord1fvARB ptr_glMultiTexCoord1fvARB

foreign import CALLCONV "dynamic" dyn_glMultiTexCoord1fvARB
  :: FunPtr (GLenum -> Ptr GLfloat -> IO ())
  ->         GLenum -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glMultiTexCoord1fvARB #-}
ptr_glMultiTexCoord1fvARB :: FunPtr (GLenum -> Ptr GLfloat -> IO ())
ptr_glMultiTexCoord1fvARB = unsafePerformIO $ getCommand "glMultiTexCoord1fvARB"

-- glMultiTexCoord1hNV ---------------------------------------------------------

glMultiTexCoord1hNV
  :: GLenum -- ^ @target@ of type @TextureUnit@.
  -> GLhalfNV -- ^ @s@ of type @Half16NV@.
  -> IO ()
glMultiTexCoord1hNV = dyn_glMultiTexCoord1hNV ptr_glMultiTexCoord1hNV

foreign import CALLCONV "dynamic" dyn_glMultiTexCoord1hNV
  :: FunPtr (GLenum -> GLhalfNV -> IO ())
  ->         GLenum -> GLhalfNV -> IO ()

{-# NOINLINE ptr_glMultiTexCoord1hNV #-}
ptr_glMultiTexCoord1hNV :: FunPtr (GLenum -> GLhalfNV -> IO ())
ptr_glMultiTexCoord1hNV = unsafePerformIO $ getCommand "glMultiTexCoord1hNV"

-- glMultiTexCoord1hvNV --------------------------------------------------------

glMultiTexCoord1hvNV
  :: GLenum -- ^ @target@ of type @TextureUnit@.
  -> Ptr GLhalfNV -- ^ @v@ pointing to @1@ elements of type @Half16NV@.
  -> IO ()
glMultiTexCoord1hvNV = dyn_glMultiTexCoord1hvNV ptr_glMultiTexCoord1hvNV

foreign import CALLCONV "dynamic" dyn_glMultiTexCoord1hvNV
  :: FunPtr (GLenum -> Ptr GLhalfNV -> IO ())
  ->         GLenum -> Ptr GLhalfNV -> IO ()

{-# NOINLINE ptr_glMultiTexCoord1hvNV #-}
ptr_glMultiTexCoord1hvNV :: FunPtr (GLenum -> Ptr GLhalfNV -> IO ())
ptr_glMultiTexCoord1hvNV = unsafePerformIO $ getCommand "glMultiTexCoord1hvNV"

-- glMultiTexCoord1i -----------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glMultiTexCoord.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glMultiTexCoord.xml OpenGL 3.x>
glMultiTexCoord1i
  :: GLenum -- ^ @target@ of type @TextureUnit@.
  -> GLint -- ^ @s@ of type @CoordI@.
  -> IO ()
glMultiTexCoord1i = dyn_glMultiTexCoord1i ptr_glMultiTexCoord1i

foreign import CALLCONV "dynamic" dyn_glMultiTexCoord1i
  :: FunPtr (GLenum -> GLint -> IO ())
  ->         GLenum -> GLint -> IO ()

{-# NOINLINE ptr_glMultiTexCoord1i #-}
ptr_glMultiTexCoord1i :: FunPtr (GLenum -> GLint -> IO ())
ptr_glMultiTexCoord1i = unsafePerformIO $ getCommand "glMultiTexCoord1i"

-- glMultiTexCoord1iARB --------------------------------------------------------

glMultiTexCoord1iARB
  :: GLenum -- ^ @target@ of type @TextureUnit@.
  -> GLint -- ^ @s@ of type @CoordI@.
  -> IO ()
glMultiTexCoord1iARB = dyn_glMultiTexCoord1iARB ptr_glMultiTexCoord1iARB

foreign import CALLCONV "dynamic" dyn_glMultiTexCoord1iARB
  :: FunPtr (GLenum -> GLint -> IO ())
  ->         GLenum -> GLint -> IO ()

{-# NOINLINE ptr_glMultiTexCoord1iARB #-}
ptr_glMultiTexCoord1iARB :: FunPtr (GLenum -> GLint -> IO ())
ptr_glMultiTexCoord1iARB = unsafePerformIO $ getCommand "glMultiTexCoord1iARB"

-- glMultiTexCoord1iv ----------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glMultiTexCoord.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glMultiTexCoord.xml OpenGL 3.x>
glMultiTexCoord1iv
  :: GLenum -- ^ @target@ of type @TextureUnit@.
  -> Ptr GLint -- ^ @v@ pointing to @1@ elements of type @CoordI@.
  -> IO ()
glMultiTexCoord1iv = dyn_glMultiTexCoord1iv ptr_glMultiTexCoord1iv

foreign import CALLCONV "dynamic" dyn_glMultiTexCoord1iv
  :: FunPtr (GLenum -> Ptr GLint -> IO ())
  ->         GLenum -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glMultiTexCoord1iv #-}
ptr_glMultiTexCoord1iv :: FunPtr (GLenum -> Ptr GLint -> IO ())
ptr_glMultiTexCoord1iv = unsafePerformIO $ getCommand "glMultiTexCoord1iv"

-- glMultiTexCoord1ivARB -------------------------------------------------------

glMultiTexCoord1ivARB
  :: GLenum -- ^ @target@ of type @TextureUnit@.
  -> Ptr GLint -- ^ @v@ pointing to @1@ elements of type @CoordI@.
  -> IO ()
glMultiTexCoord1ivARB = dyn_glMultiTexCoord1ivARB ptr_glMultiTexCoord1ivARB

foreign import CALLCONV "dynamic" dyn_glMultiTexCoord1ivARB
  :: FunPtr (GLenum -> Ptr GLint -> IO ())
  ->         GLenum -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glMultiTexCoord1ivARB #-}
ptr_glMultiTexCoord1ivARB :: FunPtr (GLenum -> Ptr GLint -> IO ())
ptr_glMultiTexCoord1ivARB = unsafePerformIO $ getCommand "glMultiTexCoord1ivARB"

-- glMultiTexCoord1s -----------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glMultiTexCoord.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glMultiTexCoord.xml OpenGL 3.x>
glMultiTexCoord1s
  :: GLenum -- ^ @target@ of type @TextureUnit@.
  -> GLshort -- ^ @s@ of type @CoordS@.
  -> IO ()
glMultiTexCoord1s = dyn_glMultiTexCoord1s ptr_glMultiTexCoord1s

foreign import CALLCONV "dynamic" dyn_glMultiTexCoord1s
  :: FunPtr (GLenum -> GLshort -> IO ())
  ->         GLenum -> GLshort -> IO ()

{-# NOINLINE ptr_glMultiTexCoord1s #-}
ptr_glMultiTexCoord1s :: FunPtr (GLenum -> GLshort -> IO ())
ptr_glMultiTexCoord1s = unsafePerformIO $ getCommand "glMultiTexCoord1s"

-- glMultiTexCoord1sARB --------------------------------------------------------

glMultiTexCoord1sARB
  :: GLenum -- ^ @target@ of type @TextureUnit@.
  -> GLshort -- ^ @s@ of type @CoordS@.
  -> IO ()
glMultiTexCoord1sARB = dyn_glMultiTexCoord1sARB ptr_glMultiTexCoord1sARB

foreign import CALLCONV "dynamic" dyn_glMultiTexCoord1sARB
  :: FunPtr (GLenum -> GLshort -> IO ())
  ->         GLenum -> GLshort -> IO ()

{-# NOINLINE ptr_glMultiTexCoord1sARB #-}
ptr_glMultiTexCoord1sARB :: FunPtr (GLenum -> GLshort -> IO ())
ptr_glMultiTexCoord1sARB = unsafePerformIO $ getCommand "glMultiTexCoord1sARB"

-- glMultiTexCoord1sv ----------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glMultiTexCoord.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glMultiTexCoord.xml OpenGL 3.x>
glMultiTexCoord1sv
  :: GLenum -- ^ @target@ of type @TextureUnit@.
  -> Ptr GLshort -- ^ @v@ pointing to @1@ elements of type @CoordS@.
  -> IO ()
glMultiTexCoord1sv = dyn_glMultiTexCoord1sv ptr_glMultiTexCoord1sv

foreign import CALLCONV "dynamic" dyn_glMultiTexCoord1sv
  :: FunPtr (GLenum -> Ptr GLshort -> IO ())
  ->         GLenum -> Ptr GLshort -> IO ()

{-# NOINLINE ptr_glMultiTexCoord1sv #-}
ptr_glMultiTexCoord1sv :: FunPtr (GLenum -> Ptr GLshort -> IO ())
ptr_glMultiTexCoord1sv = unsafePerformIO $ getCommand "glMultiTexCoord1sv"

-- glMultiTexCoord1svARB -------------------------------------------------------

glMultiTexCoord1svARB
  :: GLenum -- ^ @target@ of type @TextureUnit@.
  -> Ptr GLshort -- ^ @v@ pointing to @1@ elements of type @CoordS@.
  -> IO ()
glMultiTexCoord1svARB = dyn_glMultiTexCoord1svARB ptr_glMultiTexCoord1svARB

foreign import CALLCONV "dynamic" dyn_glMultiTexCoord1svARB
  :: FunPtr (GLenum -> Ptr GLshort -> IO ())
  ->         GLenum -> Ptr GLshort -> IO ()

{-# NOINLINE ptr_glMultiTexCoord1svARB #-}
ptr_glMultiTexCoord1svARB :: FunPtr (GLenum -> Ptr GLshort -> IO ())
ptr_glMultiTexCoord1svARB = unsafePerformIO $ getCommand "glMultiTexCoord1svARB"

-- glMultiTexCoord1xOES --------------------------------------------------------

glMultiTexCoord1xOES
  :: GLenum -- ^ @texture@.
  -> GLfixed -- ^ @s@.
  -> IO ()
glMultiTexCoord1xOES = dyn_glMultiTexCoord1xOES ptr_glMultiTexCoord1xOES

foreign import CALLCONV "dynamic" dyn_glMultiTexCoord1xOES
  :: FunPtr (GLenum -> GLfixed -> IO ())
  ->         GLenum -> GLfixed -> IO ()

{-# NOINLINE ptr_glMultiTexCoord1xOES #-}
ptr_glMultiTexCoord1xOES :: FunPtr (GLenum -> GLfixed -> IO ())
ptr_glMultiTexCoord1xOES = unsafePerformIO $ getCommand "glMultiTexCoord1xOES"

-- glMultiTexCoord1xvOES -------------------------------------------------------

glMultiTexCoord1xvOES
  :: GLenum -- ^ @texture@.
  -> Ptr GLfixed -- ^ @coords@ pointing to @1@ elements of type @GLfixed@.
  -> IO ()
glMultiTexCoord1xvOES = dyn_glMultiTexCoord1xvOES ptr_glMultiTexCoord1xvOES

foreign import CALLCONV "dynamic" dyn_glMultiTexCoord1xvOES
  :: FunPtr (GLenum -> Ptr GLfixed -> IO ())
  ->         GLenum -> Ptr GLfixed -> IO ()

{-# NOINLINE ptr_glMultiTexCoord1xvOES #-}
ptr_glMultiTexCoord1xvOES :: FunPtr (GLenum -> Ptr GLfixed -> IO ())
ptr_glMultiTexCoord1xvOES = unsafePerformIO $ getCommand "glMultiTexCoord1xvOES"

-- glMultiTexCoord2bOES --------------------------------------------------------

glMultiTexCoord2bOES
  :: GLenum -- ^ @texture@.
  -> GLbyte -- ^ @s@.
  -> GLbyte -- ^ @t@.
  -> IO ()
glMultiTexCoord2bOES = dyn_glMultiTexCoord2bOES ptr_glMultiTexCoord2bOES

foreign import CALLCONV "dynamic" dyn_glMultiTexCoord2bOES
  :: FunPtr (GLenum -> GLbyte -> GLbyte -> IO ())
  ->         GLenum -> GLbyte -> GLbyte -> IO ()

{-# NOINLINE ptr_glMultiTexCoord2bOES #-}
ptr_glMultiTexCoord2bOES :: FunPtr (GLenum -> GLbyte -> GLbyte -> IO ())
ptr_glMultiTexCoord2bOES = unsafePerformIO $ getCommand "glMultiTexCoord2bOES"

-- glMultiTexCoord2bvOES -------------------------------------------------------

glMultiTexCoord2bvOES
  :: GLenum -- ^ @texture@.
  -> Ptr GLbyte -- ^ @coords@ pointing to @2@ elements of type @GLbyte@.
  -> IO ()
glMultiTexCoord2bvOES = dyn_glMultiTexCoord2bvOES ptr_glMultiTexCoord2bvOES

foreign import CALLCONV "dynamic" dyn_glMultiTexCoord2bvOES
  :: FunPtr (GLenum -> Ptr GLbyte -> IO ())
  ->         GLenum -> Ptr GLbyte -> IO ()

{-# NOINLINE ptr_glMultiTexCoord2bvOES #-}
ptr_glMultiTexCoord2bvOES :: FunPtr (GLenum -> Ptr GLbyte -> IO ())
ptr_glMultiTexCoord2bvOES = unsafePerformIO $ getCommand "glMultiTexCoord2bvOES"

-- glMultiTexCoord2d -----------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glMultiTexCoord.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glMultiTexCoord.xml OpenGL 3.x>
glMultiTexCoord2d
  :: GLenum -- ^ @target@ of type @TextureUnit@.
  -> GLdouble -- ^ @s@ of type @CoordD@.
  -> GLdouble -- ^ @t@ of type @CoordD@.
  -> IO ()
glMultiTexCoord2d = dyn_glMultiTexCoord2d ptr_glMultiTexCoord2d

foreign import CALLCONV "dynamic" dyn_glMultiTexCoord2d
  :: FunPtr (GLenum -> GLdouble -> GLdouble -> IO ())
  ->         GLenum -> GLdouble -> GLdouble -> IO ()

{-# NOINLINE ptr_glMultiTexCoord2d #-}
ptr_glMultiTexCoord2d :: FunPtr (GLenum -> GLdouble -> GLdouble -> IO ())
ptr_glMultiTexCoord2d = unsafePerformIO $ getCommand "glMultiTexCoord2d"

-- glMultiTexCoord2dARB --------------------------------------------------------

glMultiTexCoord2dARB
  :: GLenum -- ^ @target@ of type @TextureUnit@.
  -> GLdouble -- ^ @s@ of type @CoordD@.
  -> GLdouble -- ^ @t@ of type @CoordD@.
  -> IO ()
glMultiTexCoord2dARB = dyn_glMultiTexCoord2dARB ptr_glMultiTexCoord2dARB

foreign import CALLCONV "dynamic" dyn_glMultiTexCoord2dARB
  :: FunPtr (GLenum -> GLdouble -> GLdouble -> IO ())
  ->         GLenum -> GLdouble -> GLdouble -> IO ()

{-# NOINLINE ptr_glMultiTexCoord2dARB #-}
ptr_glMultiTexCoord2dARB :: FunPtr (GLenum -> GLdouble -> GLdouble -> IO ())
ptr_glMultiTexCoord2dARB = unsafePerformIO $ getCommand "glMultiTexCoord2dARB"

-- glMultiTexCoord2dv ----------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glMultiTexCoord.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glMultiTexCoord.xml OpenGL 3.x>
glMultiTexCoord2dv
  :: GLenum -- ^ @target@ of type @TextureUnit@.
  -> Ptr GLdouble -- ^ @v@ pointing to @2@ elements of type @CoordD@.
  -> IO ()
glMultiTexCoord2dv = dyn_glMultiTexCoord2dv ptr_glMultiTexCoord2dv

foreign import CALLCONV "dynamic" dyn_glMultiTexCoord2dv
  :: FunPtr (GLenum -> Ptr GLdouble -> IO ())
  ->         GLenum -> Ptr GLdouble -> IO ()

{-# NOINLINE ptr_glMultiTexCoord2dv #-}
ptr_glMultiTexCoord2dv :: FunPtr (GLenum -> Ptr GLdouble -> IO ())
ptr_glMultiTexCoord2dv = unsafePerformIO $ getCommand "glMultiTexCoord2dv"

-- glMultiTexCoord2dvARB -------------------------------------------------------

glMultiTexCoord2dvARB
  :: GLenum -- ^ @target@ of type @TextureUnit@.
  -> Ptr GLdouble -- ^ @v@ pointing to @2@ elements of type @CoordD@.
  -> IO ()
glMultiTexCoord2dvARB = dyn_glMultiTexCoord2dvARB ptr_glMultiTexCoord2dvARB

foreign import CALLCONV "dynamic" dyn_glMultiTexCoord2dvARB
  :: FunPtr (GLenum -> Ptr GLdouble -> IO ())
  ->         GLenum -> Ptr GLdouble -> IO ()

{-# NOINLINE ptr_glMultiTexCoord2dvARB #-}
ptr_glMultiTexCoord2dvARB :: FunPtr (GLenum -> Ptr GLdouble -> IO ())
ptr_glMultiTexCoord2dvARB = unsafePerformIO $ getCommand "glMultiTexCoord2dvARB"

-- glMultiTexCoord2f -----------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glMultiTexCoord.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glMultiTexCoord.xml OpenGL 3.x>
glMultiTexCoord2f
  :: GLenum -- ^ @target@ of type @TextureUnit@.
  -> GLfloat -- ^ @s@ of type @CoordF@.
  -> GLfloat -- ^ @t@ of type @CoordF@.
  -> IO ()
glMultiTexCoord2f = dyn_glMultiTexCoord2f ptr_glMultiTexCoord2f

foreign import CALLCONV "dynamic" dyn_glMultiTexCoord2f
  :: FunPtr (GLenum -> GLfloat -> GLfloat -> IO ())
  ->         GLenum -> GLfloat -> GLfloat -> IO ()

{-# NOINLINE ptr_glMultiTexCoord2f #-}
ptr_glMultiTexCoord2f :: FunPtr (GLenum -> GLfloat -> GLfloat -> IO ())
ptr_glMultiTexCoord2f = unsafePerformIO $ getCommand "glMultiTexCoord2f"

-- glMultiTexCoord2fARB --------------------------------------------------------

glMultiTexCoord2fARB
  :: GLenum -- ^ @target@ of type @TextureUnit@.
  -> GLfloat -- ^ @s@ of type @CoordF@.
  -> GLfloat -- ^ @t@ of type @CoordF@.
  -> IO ()
glMultiTexCoord2fARB = dyn_glMultiTexCoord2fARB ptr_glMultiTexCoord2fARB

foreign import CALLCONV "dynamic" dyn_glMultiTexCoord2fARB
  :: FunPtr (GLenum -> GLfloat -> GLfloat -> IO ())
  ->         GLenum -> GLfloat -> GLfloat -> IO ()

{-# NOINLINE ptr_glMultiTexCoord2fARB #-}
ptr_glMultiTexCoord2fARB :: FunPtr (GLenum -> GLfloat -> GLfloat -> IO ())
ptr_glMultiTexCoord2fARB = unsafePerformIO $ getCommand "glMultiTexCoord2fARB"

-- glMultiTexCoord2fv ----------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glMultiTexCoord.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glMultiTexCoord.xml OpenGL 3.x>
glMultiTexCoord2fv
  :: GLenum -- ^ @target@ of type @TextureUnit@.
  -> Ptr GLfloat -- ^ @v@ pointing to @2@ elements of type @CoordF@.
  -> IO ()
glMultiTexCoord2fv = dyn_glMultiTexCoord2fv ptr_glMultiTexCoord2fv

foreign import CALLCONV "dynamic" dyn_glMultiTexCoord2fv
  :: FunPtr (GLenum -> Ptr GLfloat -> IO ())
  ->         GLenum -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glMultiTexCoord2fv #-}
ptr_glMultiTexCoord2fv :: FunPtr (GLenum -> Ptr GLfloat -> IO ())
ptr_glMultiTexCoord2fv = unsafePerformIO $ getCommand "glMultiTexCoord2fv"

-- glMultiTexCoord2fvARB -------------------------------------------------------

glMultiTexCoord2fvARB
  :: GLenum -- ^ @target@ of type @TextureUnit@.
  -> Ptr GLfloat -- ^ @v@ pointing to @2@ elements of type @CoordF@.
  -> IO ()
glMultiTexCoord2fvARB = dyn_glMultiTexCoord2fvARB ptr_glMultiTexCoord2fvARB

foreign import CALLCONV "dynamic" dyn_glMultiTexCoord2fvARB
  :: FunPtr (GLenum -> Ptr GLfloat -> IO ())
  ->         GLenum -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glMultiTexCoord2fvARB #-}
ptr_glMultiTexCoord2fvARB :: FunPtr (GLenum -> Ptr GLfloat -> IO ())
ptr_glMultiTexCoord2fvARB = unsafePerformIO $ getCommand "glMultiTexCoord2fvARB"

-- glMultiTexCoord2hNV ---------------------------------------------------------

glMultiTexCoord2hNV
  :: GLenum -- ^ @target@ of type @TextureUnit@.
  -> GLhalfNV -- ^ @s@ of type @Half16NV@.
  -> GLhalfNV -- ^ @t@ of type @Half16NV@.
  -> IO ()
glMultiTexCoord2hNV = dyn_glMultiTexCoord2hNV ptr_glMultiTexCoord2hNV

foreign import CALLCONV "dynamic" dyn_glMultiTexCoord2hNV
  :: FunPtr (GLenum -> GLhalfNV -> GLhalfNV -> IO ())
  ->         GLenum -> GLhalfNV -> GLhalfNV -> IO ()

{-# NOINLINE ptr_glMultiTexCoord2hNV #-}
ptr_glMultiTexCoord2hNV :: FunPtr (GLenum -> GLhalfNV -> GLhalfNV -> IO ())
ptr_glMultiTexCoord2hNV = unsafePerformIO $ getCommand "glMultiTexCoord2hNV"

-- glMultiTexCoord2hvNV --------------------------------------------------------

glMultiTexCoord2hvNV
  :: GLenum -- ^ @target@ of type @TextureUnit@.
  -> Ptr GLhalfNV -- ^ @v@ pointing to @2@ elements of type @Half16NV@.
  -> IO ()
glMultiTexCoord2hvNV = dyn_glMultiTexCoord2hvNV ptr_glMultiTexCoord2hvNV

foreign import CALLCONV "dynamic" dyn_glMultiTexCoord2hvNV
  :: FunPtr (GLenum -> Ptr GLhalfNV -> IO ())
  ->         GLenum -> Ptr GLhalfNV -> IO ()

{-# NOINLINE ptr_glMultiTexCoord2hvNV #-}
ptr_glMultiTexCoord2hvNV :: FunPtr (GLenum -> Ptr GLhalfNV -> IO ())
ptr_glMultiTexCoord2hvNV = unsafePerformIO $ getCommand "glMultiTexCoord2hvNV"

-- glMultiTexCoord2i -----------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glMultiTexCoord.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glMultiTexCoord.xml OpenGL 3.x>
glMultiTexCoord2i
  :: GLenum -- ^ @target@ of type @TextureUnit@.
  -> GLint -- ^ @s@ of type @CoordI@.
  -> GLint -- ^ @t@ of type @CoordI@.
  -> IO ()
glMultiTexCoord2i = dyn_glMultiTexCoord2i ptr_glMultiTexCoord2i

foreign import CALLCONV "dynamic" dyn_glMultiTexCoord2i
  :: FunPtr (GLenum -> GLint -> GLint -> IO ())
  ->         GLenum -> GLint -> GLint -> IO ()

{-# NOINLINE ptr_glMultiTexCoord2i #-}
ptr_glMultiTexCoord2i :: FunPtr (GLenum -> GLint -> GLint -> IO ())
ptr_glMultiTexCoord2i = unsafePerformIO $ getCommand "glMultiTexCoord2i"

-- glMultiTexCoord2iARB --------------------------------------------------------

glMultiTexCoord2iARB
  :: GLenum -- ^ @target@ of type @TextureUnit@.
  -> GLint -- ^ @s@ of type @CoordI@.
  -> GLint -- ^ @t@ of type @CoordI@.
  -> IO ()
glMultiTexCoord2iARB = dyn_glMultiTexCoord2iARB ptr_glMultiTexCoord2iARB

foreign import CALLCONV "dynamic" dyn_glMultiTexCoord2iARB
  :: FunPtr (GLenum -> GLint -> GLint -> IO ())
  ->         GLenum -> GLint -> GLint -> IO ()

{-# NOINLINE ptr_glMultiTexCoord2iARB #-}
ptr_glMultiTexCoord2iARB :: FunPtr (GLenum -> GLint -> GLint -> IO ())
ptr_glMultiTexCoord2iARB = unsafePerformIO $ getCommand "glMultiTexCoord2iARB"

-- glMultiTexCoord2iv ----------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glMultiTexCoord.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glMultiTexCoord.xml OpenGL 3.x>
glMultiTexCoord2iv
  :: GLenum -- ^ @target@ of type @TextureUnit@.
  -> Ptr GLint -- ^ @v@ pointing to @2@ elements of type @CoordI@.
  -> IO ()
glMultiTexCoord2iv = dyn_glMultiTexCoord2iv ptr_glMultiTexCoord2iv

foreign import CALLCONV "dynamic" dyn_glMultiTexCoord2iv
  :: FunPtr (GLenum -> Ptr GLint -> IO ())
  ->         GLenum -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glMultiTexCoord2iv #-}
ptr_glMultiTexCoord2iv :: FunPtr (GLenum -> Ptr GLint -> IO ())
ptr_glMultiTexCoord2iv = unsafePerformIO $ getCommand "glMultiTexCoord2iv"

-- glMultiTexCoord2ivARB -------------------------------------------------------

glMultiTexCoord2ivARB
  :: GLenum -- ^ @target@ of type @TextureUnit@.
  -> Ptr GLint -- ^ @v@ pointing to @2@ elements of type @CoordI@.
  -> IO ()
glMultiTexCoord2ivARB = dyn_glMultiTexCoord2ivARB ptr_glMultiTexCoord2ivARB

foreign import CALLCONV "dynamic" dyn_glMultiTexCoord2ivARB
  :: FunPtr (GLenum -> Ptr GLint -> IO ())
  ->         GLenum -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glMultiTexCoord2ivARB #-}
ptr_glMultiTexCoord2ivARB :: FunPtr (GLenum -> Ptr GLint -> IO ())
ptr_glMultiTexCoord2ivARB = unsafePerformIO $ getCommand "glMultiTexCoord2ivARB"

-- glMultiTexCoord2s -----------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glMultiTexCoord.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glMultiTexCoord.xml OpenGL 3.x>
glMultiTexCoord2s
  :: GLenum -- ^ @target@ of type @TextureUnit@.
  -> GLshort -- ^ @s@ of type @CoordS@.
  -> GLshort -- ^ @t@ of type @CoordS@.
  -> IO ()
glMultiTexCoord2s = dyn_glMultiTexCoord2s ptr_glMultiTexCoord2s

foreign import CALLCONV "dynamic" dyn_glMultiTexCoord2s
  :: FunPtr (GLenum -> GLshort -> GLshort -> IO ())
  ->         GLenum -> GLshort -> GLshort -> IO ()

{-# NOINLINE ptr_glMultiTexCoord2s #-}
ptr_glMultiTexCoord2s :: FunPtr (GLenum -> GLshort -> GLshort -> IO ())
ptr_glMultiTexCoord2s = unsafePerformIO $ getCommand "glMultiTexCoord2s"

-- glMultiTexCoord2sARB --------------------------------------------------------

glMultiTexCoord2sARB
  :: GLenum -- ^ @target@ of type @TextureUnit@.
  -> GLshort -- ^ @s@ of type @CoordS@.
  -> GLshort -- ^ @t@ of type @CoordS@.
  -> IO ()
glMultiTexCoord2sARB = dyn_glMultiTexCoord2sARB ptr_glMultiTexCoord2sARB

foreign import CALLCONV "dynamic" dyn_glMultiTexCoord2sARB
  :: FunPtr (GLenum -> GLshort -> GLshort -> IO ())
  ->         GLenum -> GLshort -> GLshort -> IO ()

{-# NOINLINE ptr_glMultiTexCoord2sARB #-}
ptr_glMultiTexCoord2sARB :: FunPtr (GLenum -> GLshort -> GLshort -> IO ())
ptr_glMultiTexCoord2sARB = unsafePerformIO $ getCommand "glMultiTexCoord2sARB"

-- glMultiTexCoord2sv ----------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glMultiTexCoord.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glMultiTexCoord.xml OpenGL 3.x>
glMultiTexCoord2sv
  :: GLenum -- ^ @target@ of type @TextureUnit@.
  -> Ptr GLshort -- ^ @v@ pointing to @2@ elements of type @CoordS@.
  -> IO ()
glMultiTexCoord2sv = dyn_glMultiTexCoord2sv ptr_glMultiTexCoord2sv

foreign import CALLCONV "dynamic" dyn_glMultiTexCoord2sv
  :: FunPtr (GLenum -> Ptr GLshort -> IO ())
  ->         GLenum -> Ptr GLshort -> IO ()

{-# NOINLINE ptr_glMultiTexCoord2sv #-}
ptr_glMultiTexCoord2sv :: FunPtr (GLenum -> Ptr GLshort -> IO ())
ptr_glMultiTexCoord2sv = unsafePerformIO $ getCommand "glMultiTexCoord2sv"

-- glMultiTexCoord2svARB -------------------------------------------------------

glMultiTexCoord2svARB
  :: GLenum -- ^ @target@ of type @TextureUnit@.
  -> Ptr GLshort -- ^ @v@ pointing to @2@ elements of type @CoordS@.
  -> IO ()
glMultiTexCoord2svARB = dyn_glMultiTexCoord2svARB ptr_glMultiTexCoord2svARB

foreign import CALLCONV "dynamic" dyn_glMultiTexCoord2svARB
  :: FunPtr (GLenum -> Ptr GLshort -> IO ())
  ->         GLenum -> Ptr GLshort -> IO ()

{-# NOINLINE ptr_glMultiTexCoord2svARB #-}
ptr_glMultiTexCoord2svARB :: FunPtr (GLenum -> Ptr GLshort -> IO ())
ptr_glMultiTexCoord2svARB = unsafePerformIO $ getCommand "glMultiTexCoord2svARB"

-- glMultiTexCoord2xOES --------------------------------------------------------

glMultiTexCoord2xOES
  :: GLenum -- ^ @texture@.
  -> GLfixed -- ^ @s@.
  -> GLfixed -- ^ @t@.
  -> IO ()
glMultiTexCoord2xOES = dyn_glMultiTexCoord2xOES ptr_glMultiTexCoord2xOES

foreign import CALLCONV "dynamic" dyn_glMultiTexCoord2xOES
  :: FunPtr (GLenum -> GLfixed -> GLfixed -> IO ())
  ->         GLenum -> GLfixed -> GLfixed -> IO ()

{-# NOINLINE ptr_glMultiTexCoord2xOES #-}
ptr_glMultiTexCoord2xOES :: FunPtr (GLenum -> GLfixed -> GLfixed -> IO ())
ptr_glMultiTexCoord2xOES = unsafePerformIO $ getCommand "glMultiTexCoord2xOES"

-- glMultiTexCoord2xvOES -------------------------------------------------------

glMultiTexCoord2xvOES
  :: GLenum -- ^ @texture@.
  -> Ptr GLfixed -- ^ @coords@ pointing to @2@ elements of type @GLfixed@.
  -> IO ()
glMultiTexCoord2xvOES = dyn_glMultiTexCoord2xvOES ptr_glMultiTexCoord2xvOES

foreign import CALLCONV "dynamic" dyn_glMultiTexCoord2xvOES
  :: FunPtr (GLenum -> Ptr GLfixed -> IO ())
  ->         GLenum -> Ptr GLfixed -> IO ()

{-# NOINLINE ptr_glMultiTexCoord2xvOES #-}
ptr_glMultiTexCoord2xvOES :: FunPtr (GLenum -> Ptr GLfixed -> IO ())
ptr_glMultiTexCoord2xvOES = unsafePerformIO $ getCommand "glMultiTexCoord2xvOES"

-- glMultiTexCoord3bOES --------------------------------------------------------

glMultiTexCoord3bOES
  :: GLenum -- ^ @texture@.
  -> GLbyte -- ^ @s@.
  -> GLbyte -- ^ @t@.
  -> GLbyte -- ^ @r@.
  -> IO ()
glMultiTexCoord3bOES = dyn_glMultiTexCoord3bOES ptr_glMultiTexCoord3bOES

foreign import CALLCONV "dynamic" dyn_glMultiTexCoord3bOES
  :: FunPtr (GLenum -> GLbyte -> GLbyte -> GLbyte -> IO ())
  ->         GLenum -> GLbyte -> GLbyte -> GLbyte -> IO ()

{-# NOINLINE ptr_glMultiTexCoord3bOES #-}
ptr_glMultiTexCoord3bOES :: FunPtr (GLenum -> GLbyte -> GLbyte -> GLbyte -> IO ())
ptr_glMultiTexCoord3bOES = unsafePerformIO $ getCommand "glMultiTexCoord3bOES"

-- glMultiTexCoord3bvOES -------------------------------------------------------

glMultiTexCoord3bvOES
  :: GLenum -- ^ @texture@.
  -> Ptr GLbyte -- ^ @coords@ pointing to @3@ elements of type @GLbyte@.
  -> IO ()
glMultiTexCoord3bvOES = dyn_glMultiTexCoord3bvOES ptr_glMultiTexCoord3bvOES

foreign import CALLCONV "dynamic" dyn_glMultiTexCoord3bvOES
  :: FunPtr (GLenum -> Ptr GLbyte -> IO ())
  ->         GLenum -> Ptr GLbyte -> IO ()

{-# NOINLINE ptr_glMultiTexCoord3bvOES #-}
ptr_glMultiTexCoord3bvOES :: FunPtr (GLenum -> Ptr GLbyte -> IO ())
ptr_glMultiTexCoord3bvOES = unsafePerformIO $ getCommand "glMultiTexCoord3bvOES"

-- glMultiTexCoord3d -----------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glMultiTexCoord.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glMultiTexCoord.xml OpenGL 3.x>
glMultiTexCoord3d
  :: GLenum -- ^ @target@ of type @TextureUnit@.
  -> GLdouble -- ^ @s@ of type @CoordD@.
  -> GLdouble -- ^ @t@ of type @CoordD@.
  -> GLdouble -- ^ @r@ of type @CoordD@.
  -> IO ()
glMultiTexCoord3d = dyn_glMultiTexCoord3d ptr_glMultiTexCoord3d

foreign import CALLCONV "dynamic" dyn_glMultiTexCoord3d
  :: FunPtr (GLenum -> GLdouble -> GLdouble -> GLdouble -> IO ())
  ->         GLenum -> GLdouble -> GLdouble -> GLdouble -> IO ()

{-# NOINLINE ptr_glMultiTexCoord3d #-}
ptr_glMultiTexCoord3d :: FunPtr (GLenum -> GLdouble -> GLdouble -> GLdouble -> IO ())
ptr_glMultiTexCoord3d = unsafePerformIO $ getCommand "glMultiTexCoord3d"

-- glMultiTexCoord3dARB --------------------------------------------------------

glMultiTexCoord3dARB
  :: GLenum -- ^ @target@ of type @TextureUnit@.
  -> GLdouble -- ^ @s@ of type @CoordD@.
  -> GLdouble -- ^ @t@ of type @CoordD@.
  -> GLdouble -- ^ @r@ of type @CoordD@.
  -> IO ()
glMultiTexCoord3dARB = dyn_glMultiTexCoord3dARB ptr_glMultiTexCoord3dARB

foreign import CALLCONV "dynamic" dyn_glMultiTexCoord3dARB
  :: FunPtr (GLenum -> GLdouble -> GLdouble -> GLdouble -> IO ())
  ->         GLenum -> GLdouble -> GLdouble -> GLdouble -> IO ()

{-# NOINLINE ptr_glMultiTexCoord3dARB #-}
ptr_glMultiTexCoord3dARB :: FunPtr (GLenum -> GLdouble -> GLdouble -> GLdouble -> IO ())
ptr_glMultiTexCoord3dARB = unsafePerformIO $ getCommand "glMultiTexCoord3dARB"

-- glMultiTexCoord3dv ----------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glMultiTexCoord.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glMultiTexCoord.xml OpenGL 3.x>
glMultiTexCoord3dv
  :: GLenum -- ^ @target@ of type @TextureUnit@.
  -> Ptr GLdouble -- ^ @v@ pointing to @3@ elements of type @CoordD@.
  -> IO ()
glMultiTexCoord3dv = dyn_glMultiTexCoord3dv ptr_glMultiTexCoord3dv

foreign import CALLCONV "dynamic" dyn_glMultiTexCoord3dv
  :: FunPtr (GLenum -> Ptr GLdouble -> IO ())
  ->         GLenum -> Ptr GLdouble -> IO ()

{-# NOINLINE ptr_glMultiTexCoord3dv #-}
ptr_glMultiTexCoord3dv :: FunPtr (GLenum -> Ptr GLdouble -> IO ())
ptr_glMultiTexCoord3dv = unsafePerformIO $ getCommand "glMultiTexCoord3dv"

-- glMultiTexCoord3dvARB -------------------------------------------------------

glMultiTexCoord3dvARB
  :: GLenum -- ^ @target@ of type @TextureUnit@.
  -> Ptr GLdouble -- ^ @v@ pointing to @3@ elements of type @CoordD@.
  -> IO ()
glMultiTexCoord3dvARB = dyn_glMultiTexCoord3dvARB ptr_glMultiTexCoord3dvARB

foreign import CALLCONV "dynamic" dyn_glMultiTexCoord3dvARB
  :: FunPtr (GLenum -> Ptr GLdouble -> IO ())
  ->         GLenum -> Ptr GLdouble -> IO ()

{-# NOINLINE ptr_glMultiTexCoord3dvARB #-}
ptr_glMultiTexCoord3dvARB :: FunPtr (GLenum -> Ptr GLdouble -> IO ())
ptr_glMultiTexCoord3dvARB = unsafePerformIO $ getCommand "glMultiTexCoord3dvARB"

-- glMultiTexCoord3f -----------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glMultiTexCoord.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glMultiTexCoord.xml OpenGL 3.x>
glMultiTexCoord3f
  :: GLenum -- ^ @target@ of type @TextureUnit@.
  -> GLfloat -- ^ @s@ of type @CoordF@.
  -> GLfloat -- ^ @t@ of type @CoordF@.
  -> GLfloat -- ^ @r@ of type @CoordF@.
  -> IO ()
glMultiTexCoord3f = dyn_glMultiTexCoord3f ptr_glMultiTexCoord3f

foreign import CALLCONV "dynamic" dyn_glMultiTexCoord3f
  :: FunPtr (GLenum -> GLfloat -> GLfloat -> GLfloat -> IO ())
  ->         GLenum -> GLfloat -> GLfloat -> GLfloat -> IO ()

{-# NOINLINE ptr_glMultiTexCoord3f #-}
ptr_glMultiTexCoord3f :: FunPtr (GLenum -> GLfloat -> GLfloat -> GLfloat -> IO ())
ptr_glMultiTexCoord3f = unsafePerformIO $ getCommand "glMultiTexCoord3f"

-- glMultiTexCoord3fARB --------------------------------------------------------

glMultiTexCoord3fARB
  :: GLenum -- ^ @target@ of type @TextureUnit@.
  -> GLfloat -- ^ @s@ of type @CoordF@.
  -> GLfloat -- ^ @t@ of type @CoordF@.
  -> GLfloat -- ^ @r@ of type @CoordF@.
  -> IO ()
glMultiTexCoord3fARB = dyn_glMultiTexCoord3fARB ptr_glMultiTexCoord3fARB

foreign import CALLCONV "dynamic" dyn_glMultiTexCoord3fARB
  :: FunPtr (GLenum -> GLfloat -> GLfloat -> GLfloat -> IO ())
  ->         GLenum -> GLfloat -> GLfloat -> GLfloat -> IO ()

{-# NOINLINE ptr_glMultiTexCoord3fARB #-}
ptr_glMultiTexCoord3fARB :: FunPtr (GLenum -> GLfloat -> GLfloat -> GLfloat -> IO ())
ptr_glMultiTexCoord3fARB = unsafePerformIO $ getCommand "glMultiTexCoord3fARB"

-- glMultiTexCoord3fv ----------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glMultiTexCoord.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glMultiTexCoord.xml OpenGL 3.x>
glMultiTexCoord3fv
  :: GLenum -- ^ @target@ of type @TextureUnit@.
  -> Ptr GLfloat -- ^ @v@ pointing to @3@ elements of type @CoordF@.
  -> IO ()
glMultiTexCoord3fv = dyn_glMultiTexCoord3fv ptr_glMultiTexCoord3fv

foreign import CALLCONV "dynamic" dyn_glMultiTexCoord3fv
  :: FunPtr (GLenum -> Ptr GLfloat -> IO ())
  ->         GLenum -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glMultiTexCoord3fv #-}
ptr_glMultiTexCoord3fv :: FunPtr (GLenum -> Ptr GLfloat -> IO ())
ptr_glMultiTexCoord3fv = unsafePerformIO $ getCommand "glMultiTexCoord3fv"

-- glMultiTexCoord3fvARB -------------------------------------------------------

glMultiTexCoord3fvARB
  :: GLenum -- ^ @target@ of type @TextureUnit@.
  -> Ptr GLfloat -- ^ @v@ pointing to @3@ elements of type @CoordF@.
  -> IO ()
glMultiTexCoord3fvARB = dyn_glMultiTexCoord3fvARB ptr_glMultiTexCoord3fvARB

foreign import CALLCONV "dynamic" dyn_glMultiTexCoord3fvARB
  :: FunPtr (GLenum -> Ptr GLfloat -> IO ())
  ->         GLenum -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glMultiTexCoord3fvARB #-}
ptr_glMultiTexCoord3fvARB :: FunPtr (GLenum -> Ptr GLfloat -> IO ())
ptr_glMultiTexCoord3fvARB = unsafePerformIO $ getCommand "glMultiTexCoord3fvARB"

-- glMultiTexCoord3hNV ---------------------------------------------------------

glMultiTexCoord3hNV
  :: GLenum -- ^ @target@ of type @TextureUnit@.
  -> GLhalfNV -- ^ @s@ of type @Half16NV@.
  -> GLhalfNV -- ^ @t@ of type @Half16NV@.
  -> GLhalfNV -- ^ @r@ of type @Half16NV@.
  -> IO ()
glMultiTexCoord3hNV = dyn_glMultiTexCoord3hNV ptr_glMultiTexCoord3hNV

foreign import CALLCONV "dynamic" dyn_glMultiTexCoord3hNV
  :: FunPtr (GLenum -> GLhalfNV -> GLhalfNV -> GLhalfNV -> IO ())
  ->         GLenum -> GLhalfNV -> GLhalfNV -> GLhalfNV -> IO ()

{-# NOINLINE ptr_glMultiTexCoord3hNV #-}
ptr_glMultiTexCoord3hNV :: FunPtr (GLenum -> GLhalfNV -> GLhalfNV -> GLhalfNV -> IO ())
ptr_glMultiTexCoord3hNV = unsafePerformIO $ getCommand "glMultiTexCoord3hNV"

-- glMultiTexCoord3hvNV --------------------------------------------------------

glMultiTexCoord3hvNV
  :: GLenum -- ^ @target@ of type @TextureUnit@.
  -> Ptr GLhalfNV -- ^ @v@ pointing to @3@ elements of type @Half16NV@.
  -> IO ()
glMultiTexCoord3hvNV = dyn_glMultiTexCoord3hvNV ptr_glMultiTexCoord3hvNV

foreign import CALLCONV "dynamic" dyn_glMultiTexCoord3hvNV
  :: FunPtr (GLenum -> Ptr GLhalfNV -> IO ())
  ->         GLenum -> Ptr GLhalfNV -> IO ()

{-# NOINLINE ptr_glMultiTexCoord3hvNV #-}
ptr_glMultiTexCoord3hvNV :: FunPtr (GLenum -> Ptr GLhalfNV -> IO ())
ptr_glMultiTexCoord3hvNV = unsafePerformIO $ getCommand "glMultiTexCoord3hvNV"

-- glMultiTexCoord3i -----------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glMultiTexCoord.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glMultiTexCoord.xml OpenGL 3.x>
glMultiTexCoord3i
  :: GLenum -- ^ @target@ of type @TextureUnit@.
  -> GLint -- ^ @s@ of type @CoordI@.
  -> GLint -- ^ @t@ of type @CoordI@.
  -> GLint -- ^ @r@ of type @CoordI@.
  -> IO ()
glMultiTexCoord3i = dyn_glMultiTexCoord3i ptr_glMultiTexCoord3i

foreign import CALLCONV "dynamic" dyn_glMultiTexCoord3i
  :: FunPtr (GLenum -> GLint -> GLint -> GLint -> IO ())
  ->         GLenum -> GLint -> GLint -> GLint -> IO ()

{-# NOINLINE ptr_glMultiTexCoord3i #-}
ptr_glMultiTexCoord3i :: FunPtr (GLenum -> GLint -> GLint -> GLint -> IO ())
ptr_glMultiTexCoord3i = unsafePerformIO $ getCommand "glMultiTexCoord3i"

-- glMultiTexCoord3iARB --------------------------------------------------------

glMultiTexCoord3iARB
  :: GLenum -- ^ @target@ of type @TextureUnit@.
  -> GLint -- ^ @s@ of type @CoordI@.
  -> GLint -- ^ @t@ of type @CoordI@.
  -> GLint -- ^ @r@ of type @CoordI@.
  -> IO ()
glMultiTexCoord3iARB = dyn_glMultiTexCoord3iARB ptr_glMultiTexCoord3iARB

foreign import CALLCONV "dynamic" dyn_glMultiTexCoord3iARB
  :: FunPtr (GLenum -> GLint -> GLint -> GLint -> IO ())
  ->         GLenum -> GLint -> GLint -> GLint -> IO ()

{-# NOINLINE ptr_glMultiTexCoord3iARB #-}
ptr_glMultiTexCoord3iARB :: FunPtr (GLenum -> GLint -> GLint -> GLint -> IO ())
ptr_glMultiTexCoord3iARB = unsafePerformIO $ getCommand "glMultiTexCoord3iARB"

-- glMultiTexCoord3iv ----------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glMultiTexCoord.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glMultiTexCoord.xml OpenGL 3.x>
glMultiTexCoord3iv
  :: GLenum -- ^ @target@ of type @TextureUnit@.
  -> Ptr GLint -- ^ @v@ pointing to @3@ elements of type @CoordI@.
  -> IO ()
glMultiTexCoord3iv = dyn_glMultiTexCoord3iv ptr_glMultiTexCoord3iv

foreign import CALLCONV "dynamic" dyn_glMultiTexCoord3iv
  :: FunPtr (GLenum -> Ptr GLint -> IO ())
  ->         GLenum -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glMultiTexCoord3iv #-}
ptr_glMultiTexCoord3iv :: FunPtr (GLenum -> Ptr GLint -> IO ())
ptr_glMultiTexCoord3iv = unsafePerformIO $ getCommand "glMultiTexCoord3iv"

-- glMultiTexCoord3ivARB -------------------------------------------------------

glMultiTexCoord3ivARB
  :: GLenum -- ^ @target@ of type @TextureUnit@.
  -> Ptr GLint -- ^ @v@ pointing to @3@ elements of type @CoordI@.
  -> IO ()
glMultiTexCoord3ivARB = dyn_glMultiTexCoord3ivARB ptr_glMultiTexCoord3ivARB

foreign import CALLCONV "dynamic" dyn_glMultiTexCoord3ivARB
  :: FunPtr (GLenum -> Ptr GLint -> IO ())
  ->         GLenum -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glMultiTexCoord3ivARB #-}
ptr_glMultiTexCoord3ivARB :: FunPtr (GLenum -> Ptr GLint -> IO ())
ptr_glMultiTexCoord3ivARB = unsafePerformIO $ getCommand "glMultiTexCoord3ivARB"

-- glMultiTexCoord3s -----------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glMultiTexCoord.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glMultiTexCoord.xml OpenGL 3.x>
glMultiTexCoord3s
  :: GLenum -- ^ @target@ of type @TextureUnit@.
  -> GLshort -- ^ @s@ of type @CoordS@.
  -> GLshort -- ^ @t@ of type @CoordS@.
  -> GLshort -- ^ @r@ of type @CoordS@.
  -> IO ()
glMultiTexCoord3s = dyn_glMultiTexCoord3s ptr_glMultiTexCoord3s

foreign import CALLCONV "dynamic" dyn_glMultiTexCoord3s
  :: FunPtr (GLenum -> GLshort -> GLshort -> GLshort -> IO ())
  ->         GLenum -> GLshort -> GLshort -> GLshort -> IO ()

{-# NOINLINE ptr_glMultiTexCoord3s #-}
ptr_glMultiTexCoord3s :: FunPtr (GLenum -> GLshort -> GLshort -> GLshort -> IO ())
ptr_glMultiTexCoord3s = unsafePerformIO $ getCommand "glMultiTexCoord3s"

-- glMultiTexCoord3sARB --------------------------------------------------------

glMultiTexCoord3sARB
  :: GLenum -- ^ @target@ of type @TextureUnit@.
  -> GLshort -- ^ @s@ of type @CoordS@.
  -> GLshort -- ^ @t@ of type @CoordS@.
  -> GLshort -- ^ @r@ of type @CoordS@.
  -> IO ()
glMultiTexCoord3sARB = dyn_glMultiTexCoord3sARB ptr_glMultiTexCoord3sARB

foreign import CALLCONV "dynamic" dyn_glMultiTexCoord3sARB
  :: FunPtr (GLenum -> GLshort -> GLshort -> GLshort -> IO ())
  ->         GLenum -> GLshort -> GLshort -> GLshort -> IO ()

{-# NOINLINE ptr_glMultiTexCoord3sARB #-}
ptr_glMultiTexCoord3sARB :: FunPtr (GLenum -> GLshort -> GLshort -> GLshort -> IO ())
ptr_glMultiTexCoord3sARB = unsafePerformIO $ getCommand "glMultiTexCoord3sARB"

-- glMultiTexCoord3sv ----------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glMultiTexCoord.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glMultiTexCoord.xml OpenGL 3.x>
glMultiTexCoord3sv
  :: GLenum -- ^ @target@ of type @TextureUnit@.
  -> Ptr GLshort -- ^ @v@ pointing to @3@ elements of type @CoordS@.
  -> IO ()
glMultiTexCoord3sv = dyn_glMultiTexCoord3sv ptr_glMultiTexCoord3sv

foreign import CALLCONV "dynamic" dyn_glMultiTexCoord3sv
  :: FunPtr (GLenum -> Ptr GLshort -> IO ())
  ->         GLenum -> Ptr GLshort -> IO ()

{-# NOINLINE ptr_glMultiTexCoord3sv #-}
ptr_glMultiTexCoord3sv :: FunPtr (GLenum -> Ptr GLshort -> IO ())
ptr_glMultiTexCoord3sv = unsafePerformIO $ getCommand "glMultiTexCoord3sv"

-- glMultiTexCoord3svARB -------------------------------------------------------

glMultiTexCoord3svARB
  :: GLenum -- ^ @target@ of type @TextureUnit@.
  -> Ptr GLshort -- ^ @v@ pointing to @3@ elements of type @CoordS@.
  -> IO ()
glMultiTexCoord3svARB = dyn_glMultiTexCoord3svARB ptr_glMultiTexCoord3svARB

foreign import CALLCONV "dynamic" dyn_glMultiTexCoord3svARB
  :: FunPtr (GLenum -> Ptr GLshort -> IO ())
  ->         GLenum -> Ptr GLshort -> IO ()

{-# NOINLINE ptr_glMultiTexCoord3svARB #-}
ptr_glMultiTexCoord3svARB :: FunPtr (GLenum -> Ptr GLshort -> IO ())
ptr_glMultiTexCoord3svARB = unsafePerformIO $ getCommand "glMultiTexCoord3svARB"

-- glMultiTexCoord3xOES --------------------------------------------------------

glMultiTexCoord3xOES
  :: GLenum -- ^ @texture@.
  -> GLfixed -- ^ @s@.
  -> GLfixed -- ^ @t@.
  -> GLfixed -- ^ @r@.
  -> IO ()
glMultiTexCoord3xOES = dyn_glMultiTexCoord3xOES ptr_glMultiTexCoord3xOES

foreign import CALLCONV "dynamic" dyn_glMultiTexCoord3xOES
  :: FunPtr (GLenum -> GLfixed -> GLfixed -> GLfixed -> IO ())
  ->         GLenum -> GLfixed -> GLfixed -> GLfixed -> IO ()

{-# NOINLINE ptr_glMultiTexCoord3xOES #-}
ptr_glMultiTexCoord3xOES :: FunPtr (GLenum -> GLfixed -> GLfixed -> GLfixed -> IO ())
ptr_glMultiTexCoord3xOES = unsafePerformIO $ getCommand "glMultiTexCoord3xOES"

-- glMultiTexCoord3xvOES -------------------------------------------------------

glMultiTexCoord3xvOES
  :: GLenum -- ^ @texture@.
  -> Ptr GLfixed -- ^ @coords@ pointing to @3@ elements of type @GLfixed@.
  -> IO ()
glMultiTexCoord3xvOES = dyn_glMultiTexCoord3xvOES ptr_glMultiTexCoord3xvOES

foreign import CALLCONV "dynamic" dyn_glMultiTexCoord3xvOES
  :: FunPtr (GLenum -> Ptr GLfixed -> IO ())
  ->         GLenum -> Ptr GLfixed -> IO ()

{-# NOINLINE ptr_glMultiTexCoord3xvOES #-}
ptr_glMultiTexCoord3xvOES :: FunPtr (GLenum -> Ptr GLfixed -> IO ())
ptr_glMultiTexCoord3xvOES = unsafePerformIO $ getCommand "glMultiTexCoord3xvOES"

-- glMultiTexCoord4bOES --------------------------------------------------------

glMultiTexCoord4bOES
  :: GLenum -- ^ @texture@.
  -> GLbyte -- ^ @s@.
  -> GLbyte -- ^ @t@.
  -> GLbyte -- ^ @r@.
  -> GLbyte -- ^ @q@.
  -> IO ()
glMultiTexCoord4bOES = dyn_glMultiTexCoord4bOES ptr_glMultiTexCoord4bOES

foreign import CALLCONV "dynamic" dyn_glMultiTexCoord4bOES
  :: FunPtr (GLenum -> GLbyte -> GLbyte -> GLbyte -> GLbyte -> IO ())
  ->         GLenum -> GLbyte -> GLbyte -> GLbyte -> GLbyte -> IO ()

{-# NOINLINE ptr_glMultiTexCoord4bOES #-}
ptr_glMultiTexCoord4bOES :: FunPtr (GLenum -> GLbyte -> GLbyte -> GLbyte -> GLbyte -> IO ())
ptr_glMultiTexCoord4bOES = unsafePerformIO $ getCommand "glMultiTexCoord4bOES"

-- glMultiTexCoord4bvOES -------------------------------------------------------

glMultiTexCoord4bvOES
  :: GLenum -- ^ @texture@.
  -> Ptr GLbyte -- ^ @coords@ pointing to @4@ elements of type @GLbyte@.
  -> IO ()
glMultiTexCoord4bvOES = dyn_glMultiTexCoord4bvOES ptr_glMultiTexCoord4bvOES

foreign import CALLCONV "dynamic" dyn_glMultiTexCoord4bvOES
  :: FunPtr (GLenum -> Ptr GLbyte -> IO ())
  ->         GLenum -> Ptr GLbyte -> IO ()

{-# NOINLINE ptr_glMultiTexCoord4bvOES #-}
ptr_glMultiTexCoord4bvOES :: FunPtr (GLenum -> Ptr GLbyte -> IO ())
ptr_glMultiTexCoord4bvOES = unsafePerformIO $ getCommand "glMultiTexCoord4bvOES"

-- glMultiTexCoord4d -----------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glMultiTexCoord.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glMultiTexCoord.xml OpenGL 3.x>
glMultiTexCoord4d
  :: GLenum -- ^ @target@ of type @TextureUnit@.
  -> GLdouble -- ^ @s@ of type @CoordD@.
  -> GLdouble -- ^ @t@ of type @CoordD@.
  -> GLdouble -- ^ @r@ of type @CoordD@.
  -> GLdouble -- ^ @q@ of type @CoordD@.
  -> IO ()
glMultiTexCoord4d = dyn_glMultiTexCoord4d ptr_glMultiTexCoord4d

foreign import CALLCONV "dynamic" dyn_glMultiTexCoord4d
  :: FunPtr (GLenum -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ())
  ->         GLenum -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ()

{-# NOINLINE ptr_glMultiTexCoord4d #-}
ptr_glMultiTexCoord4d :: FunPtr (GLenum -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ())
ptr_glMultiTexCoord4d = unsafePerformIO $ getCommand "glMultiTexCoord4d"

-- glMultiTexCoord4dARB --------------------------------------------------------

glMultiTexCoord4dARB
  :: GLenum -- ^ @target@ of type @TextureUnit@.
  -> GLdouble -- ^ @s@ of type @CoordD@.
  -> GLdouble -- ^ @t@ of type @CoordD@.
  -> GLdouble -- ^ @r@ of type @CoordD@.
  -> GLdouble -- ^ @q@ of type @CoordD@.
  -> IO ()
glMultiTexCoord4dARB = dyn_glMultiTexCoord4dARB ptr_glMultiTexCoord4dARB

foreign import CALLCONV "dynamic" dyn_glMultiTexCoord4dARB
  :: FunPtr (GLenum -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ())
  ->         GLenum -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ()

{-# NOINLINE ptr_glMultiTexCoord4dARB #-}
ptr_glMultiTexCoord4dARB :: FunPtr (GLenum -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ())
ptr_glMultiTexCoord4dARB = unsafePerformIO $ getCommand "glMultiTexCoord4dARB"

-- glMultiTexCoord4dv ----------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glMultiTexCoord.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glMultiTexCoord.xml OpenGL 3.x>
glMultiTexCoord4dv
  :: GLenum -- ^ @target@ of type @TextureUnit@.
  -> Ptr GLdouble -- ^ @v@ pointing to @4@ elements of type @CoordD@.
  -> IO ()
glMultiTexCoord4dv = dyn_glMultiTexCoord4dv ptr_glMultiTexCoord4dv

foreign import CALLCONV "dynamic" dyn_glMultiTexCoord4dv
  :: FunPtr (GLenum -> Ptr GLdouble -> IO ())
  ->         GLenum -> Ptr GLdouble -> IO ()

{-# NOINLINE ptr_glMultiTexCoord4dv #-}
ptr_glMultiTexCoord4dv :: FunPtr (GLenum -> Ptr GLdouble -> IO ())
ptr_glMultiTexCoord4dv = unsafePerformIO $ getCommand "glMultiTexCoord4dv"

-- glMultiTexCoord4dvARB -------------------------------------------------------

glMultiTexCoord4dvARB
  :: GLenum -- ^ @target@ of type @TextureUnit@.
  -> Ptr GLdouble -- ^ @v@ pointing to @4@ elements of type @CoordD@.
  -> IO ()
glMultiTexCoord4dvARB = dyn_glMultiTexCoord4dvARB ptr_glMultiTexCoord4dvARB

foreign import CALLCONV "dynamic" dyn_glMultiTexCoord4dvARB
  :: FunPtr (GLenum -> Ptr GLdouble -> IO ())
  ->         GLenum -> Ptr GLdouble -> IO ()

{-# NOINLINE ptr_glMultiTexCoord4dvARB #-}
ptr_glMultiTexCoord4dvARB :: FunPtr (GLenum -> Ptr GLdouble -> IO ())
ptr_glMultiTexCoord4dvARB = unsafePerformIO $ getCommand "glMultiTexCoord4dvARB"

-- glMultiTexCoord4f -----------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glMultiTexCoord.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glMultiTexCoord.xml OpenGL 3.x>
glMultiTexCoord4f
  :: GLenum -- ^ @target@ of type @TextureUnit@.
  -> GLfloat -- ^ @s@ of type @CoordF@.
  -> GLfloat -- ^ @t@ of type @CoordF@.
  -> GLfloat -- ^ @r@ of type @CoordF@.
  -> GLfloat -- ^ @q@ of type @CoordF@.
  -> IO ()
glMultiTexCoord4f = dyn_glMultiTexCoord4f ptr_glMultiTexCoord4f

foreign import CALLCONV "dynamic" dyn_glMultiTexCoord4f
  :: FunPtr (GLenum -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
  ->         GLenum -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ()

{-# NOINLINE ptr_glMultiTexCoord4f #-}
ptr_glMultiTexCoord4f :: FunPtr (GLenum -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
ptr_glMultiTexCoord4f = unsafePerformIO $ getCommand "glMultiTexCoord4f"

-- glMultiTexCoord4fARB --------------------------------------------------------

glMultiTexCoord4fARB
  :: GLenum -- ^ @target@ of type @TextureUnit@.
  -> GLfloat -- ^ @s@ of type @CoordF@.
  -> GLfloat -- ^ @t@ of type @CoordF@.
  -> GLfloat -- ^ @r@ of type @CoordF@.
  -> GLfloat -- ^ @q@ of type @CoordF@.
  -> IO ()
glMultiTexCoord4fARB = dyn_glMultiTexCoord4fARB ptr_glMultiTexCoord4fARB

foreign import CALLCONV "dynamic" dyn_glMultiTexCoord4fARB
  :: FunPtr (GLenum -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
  ->         GLenum -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ()

{-# NOINLINE ptr_glMultiTexCoord4fARB #-}
ptr_glMultiTexCoord4fARB :: FunPtr (GLenum -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
ptr_glMultiTexCoord4fARB = unsafePerformIO $ getCommand "glMultiTexCoord4fARB"

-- glMultiTexCoord4fv ----------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glMultiTexCoord.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glMultiTexCoord.xml OpenGL 3.x>
glMultiTexCoord4fv
  :: GLenum -- ^ @target@ of type @TextureUnit@.
  -> Ptr GLfloat -- ^ @v@ pointing to @4@ elements of type @CoordF@.
  -> IO ()
glMultiTexCoord4fv = dyn_glMultiTexCoord4fv ptr_glMultiTexCoord4fv

foreign import CALLCONV "dynamic" dyn_glMultiTexCoord4fv
  :: FunPtr (GLenum -> Ptr GLfloat -> IO ())
  ->         GLenum -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glMultiTexCoord4fv #-}
ptr_glMultiTexCoord4fv :: FunPtr (GLenum -> Ptr GLfloat -> IO ())
ptr_glMultiTexCoord4fv = unsafePerformIO $ getCommand "glMultiTexCoord4fv"

-- glMultiTexCoord4fvARB -------------------------------------------------------

glMultiTexCoord4fvARB
  :: GLenum -- ^ @target@ of type @TextureUnit@.
  -> Ptr GLfloat -- ^ @v@ pointing to @4@ elements of type @CoordF@.
  -> IO ()
glMultiTexCoord4fvARB = dyn_glMultiTexCoord4fvARB ptr_glMultiTexCoord4fvARB

foreign import CALLCONV "dynamic" dyn_glMultiTexCoord4fvARB
  :: FunPtr (GLenum -> Ptr GLfloat -> IO ())
  ->         GLenum -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glMultiTexCoord4fvARB #-}
ptr_glMultiTexCoord4fvARB :: FunPtr (GLenum -> Ptr GLfloat -> IO ())
ptr_glMultiTexCoord4fvARB = unsafePerformIO $ getCommand "glMultiTexCoord4fvARB"

-- glMultiTexCoord4hNV ---------------------------------------------------------

glMultiTexCoord4hNV
  :: GLenum -- ^ @target@ of type @TextureUnit@.
  -> GLhalfNV -- ^ @s@ of type @Half16NV@.
  -> GLhalfNV -- ^ @t@ of type @Half16NV@.
  -> GLhalfNV -- ^ @r@ of type @Half16NV@.
  -> GLhalfNV -- ^ @q@ of type @Half16NV@.
  -> IO ()
glMultiTexCoord4hNV = dyn_glMultiTexCoord4hNV ptr_glMultiTexCoord4hNV

foreign import CALLCONV "dynamic" dyn_glMultiTexCoord4hNV
  :: FunPtr (GLenum -> GLhalfNV -> GLhalfNV -> GLhalfNV -> GLhalfNV -> IO ())
  ->         GLenum -> GLhalfNV -> GLhalfNV -> GLhalfNV -> GLhalfNV -> IO ()

{-# NOINLINE ptr_glMultiTexCoord4hNV #-}
ptr_glMultiTexCoord4hNV :: FunPtr (GLenum -> GLhalfNV -> GLhalfNV -> GLhalfNV -> GLhalfNV -> IO ())
ptr_glMultiTexCoord4hNV = unsafePerformIO $ getCommand "glMultiTexCoord4hNV"

-- glMultiTexCoord4hvNV --------------------------------------------------------

glMultiTexCoord4hvNV
  :: GLenum -- ^ @target@ of type @TextureUnit@.
  -> Ptr GLhalfNV -- ^ @v@ pointing to @4@ elements of type @Half16NV@.
  -> IO ()
glMultiTexCoord4hvNV = dyn_glMultiTexCoord4hvNV ptr_glMultiTexCoord4hvNV

foreign import CALLCONV "dynamic" dyn_glMultiTexCoord4hvNV
  :: FunPtr (GLenum -> Ptr GLhalfNV -> IO ())
  ->         GLenum -> Ptr GLhalfNV -> IO ()

{-# NOINLINE ptr_glMultiTexCoord4hvNV #-}
ptr_glMultiTexCoord4hvNV :: FunPtr (GLenum -> Ptr GLhalfNV -> IO ())
ptr_glMultiTexCoord4hvNV = unsafePerformIO $ getCommand "glMultiTexCoord4hvNV"

-- glMultiTexCoord4i -----------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glMultiTexCoord.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glMultiTexCoord.xml OpenGL 3.x>
glMultiTexCoord4i
  :: GLenum -- ^ @target@ of type @TextureUnit@.
  -> GLint -- ^ @s@ of type @CoordI@.
  -> GLint -- ^ @t@ of type @CoordI@.
  -> GLint -- ^ @r@ of type @CoordI@.
  -> GLint -- ^ @q@ of type @CoordI@.
  -> IO ()
glMultiTexCoord4i = dyn_glMultiTexCoord4i ptr_glMultiTexCoord4i

foreign import CALLCONV "dynamic" dyn_glMultiTexCoord4i
  :: FunPtr (GLenum -> GLint -> GLint -> GLint -> GLint -> IO ())
  ->         GLenum -> GLint -> GLint -> GLint -> GLint -> IO ()

{-# NOINLINE ptr_glMultiTexCoord4i #-}
ptr_glMultiTexCoord4i :: FunPtr (GLenum -> GLint -> GLint -> GLint -> GLint -> IO ())
ptr_glMultiTexCoord4i = unsafePerformIO $ getCommand "glMultiTexCoord4i"

-- glMultiTexCoord4iARB --------------------------------------------------------

glMultiTexCoord4iARB
  :: GLenum -- ^ @target@ of type @TextureUnit@.
  -> GLint -- ^ @s@ of type @CoordI@.
  -> GLint -- ^ @t@ of type @CoordI@.
  -> GLint -- ^ @r@ of type @CoordI@.
  -> GLint -- ^ @q@ of type @CoordI@.
  -> IO ()
glMultiTexCoord4iARB = dyn_glMultiTexCoord4iARB ptr_glMultiTexCoord4iARB

foreign import CALLCONV "dynamic" dyn_glMultiTexCoord4iARB
  :: FunPtr (GLenum -> GLint -> GLint -> GLint -> GLint -> IO ())
  ->         GLenum -> GLint -> GLint -> GLint -> GLint -> IO ()

{-# NOINLINE ptr_glMultiTexCoord4iARB #-}
ptr_glMultiTexCoord4iARB :: FunPtr (GLenum -> GLint -> GLint -> GLint -> GLint -> IO ())
ptr_glMultiTexCoord4iARB = unsafePerformIO $ getCommand "glMultiTexCoord4iARB"

-- glMultiTexCoord4iv ----------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glMultiTexCoord.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glMultiTexCoord.xml OpenGL 3.x>
glMultiTexCoord4iv
  :: GLenum -- ^ @target@ of type @TextureUnit@.
  -> Ptr GLint -- ^ @v@ pointing to @4@ elements of type @CoordI@.
  -> IO ()
glMultiTexCoord4iv = dyn_glMultiTexCoord4iv ptr_glMultiTexCoord4iv

foreign import CALLCONV "dynamic" dyn_glMultiTexCoord4iv
  :: FunPtr (GLenum -> Ptr GLint -> IO ())
  ->         GLenum -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glMultiTexCoord4iv #-}
ptr_glMultiTexCoord4iv :: FunPtr (GLenum -> Ptr GLint -> IO ())
ptr_glMultiTexCoord4iv = unsafePerformIO $ getCommand "glMultiTexCoord4iv"

-- glMultiTexCoord4ivARB -------------------------------------------------------

glMultiTexCoord4ivARB
  :: GLenum -- ^ @target@ of type @TextureUnit@.
  -> Ptr GLint -- ^ @v@ pointing to @4@ elements of type @CoordI@.
  -> IO ()
glMultiTexCoord4ivARB = dyn_glMultiTexCoord4ivARB ptr_glMultiTexCoord4ivARB

foreign import CALLCONV "dynamic" dyn_glMultiTexCoord4ivARB
  :: FunPtr (GLenum -> Ptr GLint -> IO ())
  ->         GLenum -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glMultiTexCoord4ivARB #-}
ptr_glMultiTexCoord4ivARB :: FunPtr (GLenum -> Ptr GLint -> IO ())
ptr_glMultiTexCoord4ivARB = unsafePerformIO $ getCommand "glMultiTexCoord4ivARB"

-- glMultiTexCoord4s -----------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glMultiTexCoord.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glMultiTexCoord.xml OpenGL 3.x>
glMultiTexCoord4s
  :: GLenum -- ^ @target@ of type @TextureUnit@.
  -> GLshort -- ^ @s@ of type @CoordS@.
  -> GLshort -- ^ @t@ of type @CoordS@.
  -> GLshort -- ^ @r@ of type @CoordS@.
  -> GLshort -- ^ @q@ of type @CoordS@.
  -> IO ()
glMultiTexCoord4s = dyn_glMultiTexCoord4s ptr_glMultiTexCoord4s

foreign import CALLCONV "dynamic" dyn_glMultiTexCoord4s
  :: FunPtr (GLenum -> GLshort -> GLshort -> GLshort -> GLshort -> IO ())
  ->         GLenum -> GLshort -> GLshort -> GLshort -> GLshort -> IO ()

{-# NOINLINE ptr_glMultiTexCoord4s #-}
ptr_glMultiTexCoord4s :: FunPtr (GLenum -> GLshort -> GLshort -> GLshort -> GLshort -> IO ())
ptr_glMultiTexCoord4s = unsafePerformIO $ getCommand "glMultiTexCoord4s"

-- glMultiTexCoord4sARB --------------------------------------------------------

glMultiTexCoord4sARB
  :: GLenum -- ^ @target@ of type @TextureUnit@.
  -> GLshort -- ^ @s@ of type @CoordS@.
  -> GLshort -- ^ @t@ of type @CoordS@.
  -> GLshort -- ^ @r@ of type @CoordS@.
  -> GLshort -- ^ @q@ of type @CoordS@.
  -> IO ()
glMultiTexCoord4sARB = dyn_glMultiTexCoord4sARB ptr_glMultiTexCoord4sARB

foreign import CALLCONV "dynamic" dyn_glMultiTexCoord4sARB
  :: FunPtr (GLenum -> GLshort -> GLshort -> GLshort -> GLshort -> IO ())
  ->         GLenum -> GLshort -> GLshort -> GLshort -> GLshort -> IO ()

{-# NOINLINE ptr_glMultiTexCoord4sARB #-}
ptr_glMultiTexCoord4sARB :: FunPtr (GLenum -> GLshort -> GLshort -> GLshort -> GLshort -> IO ())
ptr_glMultiTexCoord4sARB = unsafePerformIO $ getCommand "glMultiTexCoord4sARB"

-- glMultiTexCoord4sv ----------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glMultiTexCoord.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glMultiTexCoord.xml OpenGL 3.x>
glMultiTexCoord4sv
  :: GLenum -- ^ @target@ of type @TextureUnit@.
  -> Ptr GLshort -- ^ @v@ pointing to @4@ elements of type @CoordS@.
  -> IO ()
glMultiTexCoord4sv = dyn_glMultiTexCoord4sv ptr_glMultiTexCoord4sv

foreign import CALLCONV "dynamic" dyn_glMultiTexCoord4sv
  :: FunPtr (GLenum -> Ptr GLshort -> IO ())
  ->         GLenum -> Ptr GLshort -> IO ()

{-# NOINLINE ptr_glMultiTexCoord4sv #-}
ptr_glMultiTexCoord4sv :: FunPtr (GLenum -> Ptr GLshort -> IO ())
ptr_glMultiTexCoord4sv = unsafePerformIO $ getCommand "glMultiTexCoord4sv"

-- glMultiTexCoord4svARB -------------------------------------------------------

glMultiTexCoord4svARB
  :: GLenum -- ^ @target@ of type @TextureUnit@.
  -> Ptr GLshort -- ^ @v@ pointing to @4@ elements of type @CoordS@.
  -> IO ()
glMultiTexCoord4svARB = dyn_glMultiTexCoord4svARB ptr_glMultiTexCoord4svARB

foreign import CALLCONV "dynamic" dyn_glMultiTexCoord4svARB
  :: FunPtr (GLenum -> Ptr GLshort -> IO ())
  ->         GLenum -> Ptr GLshort -> IO ()

{-# NOINLINE ptr_glMultiTexCoord4svARB #-}
ptr_glMultiTexCoord4svARB :: FunPtr (GLenum -> Ptr GLshort -> IO ())
ptr_glMultiTexCoord4svARB = unsafePerformIO $ getCommand "glMultiTexCoord4svARB"

-- glMultiTexCoord4x -----------------------------------------------------------

glMultiTexCoord4x
  :: GLenum -- ^ @texture@.
  -> GLfixed -- ^ @s@.
  -> GLfixed -- ^ @t@.
  -> GLfixed -- ^ @r@.
  -> GLfixed -- ^ @q@.
  -> IO ()
glMultiTexCoord4x = dyn_glMultiTexCoord4x ptr_glMultiTexCoord4x

foreign import CALLCONV "dynamic" dyn_glMultiTexCoord4x
  :: FunPtr (GLenum -> GLfixed -> GLfixed -> GLfixed -> GLfixed -> IO ())
  ->         GLenum -> GLfixed -> GLfixed -> GLfixed -> GLfixed -> IO ()

{-# NOINLINE ptr_glMultiTexCoord4x #-}
ptr_glMultiTexCoord4x :: FunPtr (GLenum -> GLfixed -> GLfixed -> GLfixed -> GLfixed -> IO ())
ptr_glMultiTexCoord4x = unsafePerformIO $ getCommand "glMultiTexCoord4x"

-- glMultiTexCoord4xOES --------------------------------------------------------

glMultiTexCoord4xOES
  :: GLenum -- ^ @texture@.
  -> GLfixed -- ^ @s@.
  -> GLfixed -- ^ @t@.
  -> GLfixed -- ^ @r@.
  -> GLfixed -- ^ @q@.
  -> IO ()
glMultiTexCoord4xOES = dyn_glMultiTexCoord4xOES ptr_glMultiTexCoord4xOES

foreign import CALLCONV "dynamic" dyn_glMultiTexCoord4xOES
  :: FunPtr (GLenum -> GLfixed -> GLfixed -> GLfixed -> GLfixed -> IO ())
  ->         GLenum -> GLfixed -> GLfixed -> GLfixed -> GLfixed -> IO ()

{-# NOINLINE ptr_glMultiTexCoord4xOES #-}
ptr_glMultiTexCoord4xOES :: FunPtr (GLenum -> GLfixed -> GLfixed -> GLfixed -> GLfixed -> IO ())
ptr_glMultiTexCoord4xOES = unsafePerformIO $ getCommand "glMultiTexCoord4xOES"

-- glMultiTexCoord4xvOES -------------------------------------------------------

glMultiTexCoord4xvOES
  :: GLenum -- ^ @texture@.
  -> Ptr GLfixed -- ^ @coords@ pointing to @4@ elements of type @GLfixed@.
  -> IO ()
glMultiTexCoord4xvOES = dyn_glMultiTexCoord4xvOES ptr_glMultiTexCoord4xvOES

foreign import CALLCONV "dynamic" dyn_glMultiTexCoord4xvOES
  :: FunPtr (GLenum -> Ptr GLfixed -> IO ())
  ->         GLenum -> Ptr GLfixed -> IO ()

{-# NOINLINE ptr_glMultiTexCoord4xvOES #-}
ptr_glMultiTexCoord4xvOES :: FunPtr (GLenum -> Ptr GLfixed -> IO ())
ptr_glMultiTexCoord4xvOES = unsafePerformIO $ getCommand "glMultiTexCoord4xvOES"

-- glMultiTexCoordP1ui ---------------------------------------------------------

glMultiTexCoordP1ui
  :: GLenum -- ^ @texture@.
  -> GLenum -- ^ @type@.
  -> GLuint -- ^ @coords@.
  -> IO ()
glMultiTexCoordP1ui = dyn_glMultiTexCoordP1ui ptr_glMultiTexCoordP1ui

foreign import CALLCONV "dynamic" dyn_glMultiTexCoordP1ui
  :: FunPtr (GLenum -> GLenum -> GLuint -> IO ())
  ->         GLenum -> GLenum -> GLuint -> IO ()

{-# NOINLINE ptr_glMultiTexCoordP1ui #-}
ptr_glMultiTexCoordP1ui :: FunPtr (GLenum -> GLenum -> GLuint -> IO ())
ptr_glMultiTexCoordP1ui = unsafePerformIO $ getCommand "glMultiTexCoordP1ui"

-- glMultiTexCoordP1uiv --------------------------------------------------------

glMultiTexCoordP1uiv
  :: GLenum -- ^ @texture@.
  -> GLenum -- ^ @type@.
  -> Ptr GLuint -- ^ @coords@ pointing to @1@ elements of type @GLuint@.
  -> IO ()
glMultiTexCoordP1uiv = dyn_glMultiTexCoordP1uiv ptr_glMultiTexCoordP1uiv

foreign import CALLCONV "dynamic" dyn_glMultiTexCoordP1uiv
  :: FunPtr (GLenum -> GLenum -> Ptr GLuint -> IO ())
  ->         GLenum -> GLenum -> Ptr GLuint -> IO ()

{-# NOINLINE ptr_glMultiTexCoordP1uiv #-}
ptr_glMultiTexCoordP1uiv :: FunPtr (GLenum -> GLenum -> Ptr GLuint -> IO ())
ptr_glMultiTexCoordP1uiv = unsafePerformIO $ getCommand "glMultiTexCoordP1uiv"

-- glMultiTexCoordP2ui ---------------------------------------------------------

glMultiTexCoordP2ui
  :: GLenum -- ^ @texture@.
  -> GLenum -- ^ @type@.
  -> GLuint -- ^ @coords@.
  -> IO ()
glMultiTexCoordP2ui = dyn_glMultiTexCoordP2ui ptr_glMultiTexCoordP2ui

foreign import CALLCONV "dynamic" dyn_glMultiTexCoordP2ui
  :: FunPtr (GLenum -> GLenum -> GLuint -> IO ())
  ->         GLenum -> GLenum -> GLuint -> IO ()

{-# NOINLINE ptr_glMultiTexCoordP2ui #-}
ptr_glMultiTexCoordP2ui :: FunPtr (GLenum -> GLenum -> GLuint -> IO ())
ptr_glMultiTexCoordP2ui = unsafePerformIO $ getCommand "glMultiTexCoordP2ui"

-- glMultiTexCoordP2uiv --------------------------------------------------------

glMultiTexCoordP2uiv
  :: GLenum -- ^ @texture@.
  -> GLenum -- ^ @type@.
  -> Ptr GLuint -- ^ @coords@ pointing to @1@ elements of type @GLuint@.
  -> IO ()
glMultiTexCoordP2uiv = dyn_glMultiTexCoordP2uiv ptr_glMultiTexCoordP2uiv

foreign import CALLCONV "dynamic" dyn_glMultiTexCoordP2uiv
  :: FunPtr (GLenum -> GLenum -> Ptr GLuint -> IO ())
  ->         GLenum -> GLenum -> Ptr GLuint -> IO ()

{-# NOINLINE ptr_glMultiTexCoordP2uiv #-}
ptr_glMultiTexCoordP2uiv :: FunPtr (GLenum -> GLenum -> Ptr GLuint -> IO ())
ptr_glMultiTexCoordP2uiv = unsafePerformIO $ getCommand "glMultiTexCoordP2uiv"

-- glMultiTexCoordP3ui ---------------------------------------------------------

glMultiTexCoordP3ui
  :: GLenum -- ^ @texture@.
  -> GLenum -- ^ @type@.
  -> GLuint -- ^ @coords@.
  -> IO ()
glMultiTexCoordP3ui = dyn_glMultiTexCoordP3ui ptr_glMultiTexCoordP3ui

foreign import CALLCONV "dynamic" dyn_glMultiTexCoordP3ui
  :: FunPtr (GLenum -> GLenum -> GLuint -> IO ())
  ->         GLenum -> GLenum -> GLuint -> IO ()

{-# NOINLINE ptr_glMultiTexCoordP3ui #-}
ptr_glMultiTexCoordP3ui :: FunPtr (GLenum -> GLenum -> GLuint -> IO ())
ptr_glMultiTexCoordP3ui = unsafePerformIO $ getCommand "glMultiTexCoordP3ui"

-- glMultiTexCoordP3uiv --------------------------------------------------------

glMultiTexCoordP3uiv
  :: GLenum -- ^ @texture@.
  -> GLenum -- ^ @type@.
  -> Ptr GLuint -- ^ @coords@ pointing to @1@ elements of type @GLuint@.
  -> IO ()
glMultiTexCoordP3uiv = dyn_glMultiTexCoordP3uiv ptr_glMultiTexCoordP3uiv

foreign import CALLCONV "dynamic" dyn_glMultiTexCoordP3uiv
  :: FunPtr (GLenum -> GLenum -> Ptr GLuint -> IO ())
  ->         GLenum -> GLenum -> Ptr GLuint -> IO ()

{-# NOINLINE ptr_glMultiTexCoordP3uiv #-}
ptr_glMultiTexCoordP3uiv :: FunPtr (GLenum -> GLenum -> Ptr GLuint -> IO ())
ptr_glMultiTexCoordP3uiv = unsafePerformIO $ getCommand "glMultiTexCoordP3uiv"

-- glMultiTexCoordP4ui ---------------------------------------------------------

glMultiTexCoordP4ui
  :: GLenum -- ^ @texture@.
  -> GLenum -- ^ @type@.
  -> GLuint -- ^ @coords@.
  -> IO ()
glMultiTexCoordP4ui = dyn_glMultiTexCoordP4ui ptr_glMultiTexCoordP4ui

foreign import CALLCONV "dynamic" dyn_glMultiTexCoordP4ui
  :: FunPtr (GLenum -> GLenum -> GLuint -> IO ())
  ->         GLenum -> GLenum -> GLuint -> IO ()

{-# NOINLINE ptr_glMultiTexCoordP4ui #-}
ptr_glMultiTexCoordP4ui :: FunPtr (GLenum -> GLenum -> GLuint -> IO ())
ptr_glMultiTexCoordP4ui = unsafePerformIO $ getCommand "glMultiTexCoordP4ui"

-- glMultiTexCoordP4uiv --------------------------------------------------------

glMultiTexCoordP4uiv
  :: GLenum -- ^ @texture@.
  -> GLenum -- ^ @type@.
  -> Ptr GLuint -- ^ @coords@ pointing to @1@ elements of type @GLuint@.
  -> IO ()
glMultiTexCoordP4uiv = dyn_glMultiTexCoordP4uiv ptr_glMultiTexCoordP4uiv

foreign import CALLCONV "dynamic" dyn_glMultiTexCoordP4uiv
  :: FunPtr (GLenum -> GLenum -> Ptr GLuint -> IO ())
  ->         GLenum -> GLenum -> Ptr GLuint -> IO ()

{-# NOINLINE ptr_glMultiTexCoordP4uiv #-}
ptr_glMultiTexCoordP4uiv :: FunPtr (GLenum -> GLenum -> Ptr GLuint -> IO ())
ptr_glMultiTexCoordP4uiv = unsafePerformIO $ getCommand "glMultiTexCoordP4uiv"

-- glMultiTexCoordPointerEXT ---------------------------------------------------

glMultiTexCoordPointerEXT
  :: GLenum -- ^ @texunit@ of type @TextureUnit@.
  -> GLint -- ^ @size@.
  -> GLenum -- ^ @type@ of type @TexCoordPointerType@.
  -> GLsizei -- ^ @stride@.
  -> Ptr a -- ^ @pointer@ pointing to @COMPSIZE(size,type,stride)@ elements of type @a@.
  -> IO ()
glMultiTexCoordPointerEXT = dyn_glMultiTexCoordPointerEXT ptr_glMultiTexCoordPointerEXT

foreign import CALLCONV "dynamic" dyn_glMultiTexCoordPointerEXT
  :: FunPtr (GLenum -> GLint -> GLenum -> GLsizei -> Ptr a -> IO ())
  ->         GLenum -> GLint -> GLenum -> GLsizei -> Ptr a -> IO ()

{-# NOINLINE ptr_glMultiTexCoordPointerEXT #-}
ptr_glMultiTexCoordPointerEXT :: FunPtr (GLenum -> GLint -> GLenum -> GLsizei -> Ptr a -> IO ())
ptr_glMultiTexCoordPointerEXT = unsafePerformIO $ getCommand "glMultiTexCoordPointerEXT"

-- glMultiTexEnvfEXT -----------------------------------------------------------

glMultiTexEnvfEXT
  :: GLenum -- ^ @texunit@ of type @TextureUnit@.
  -> GLenum -- ^ @target@ of type @TextureEnvTarget@.
  -> GLenum -- ^ @pname@ of type @TextureEnvParameter@.
  -> GLfloat -- ^ @param@ of type @CheckedFloat32@.
  -> IO ()
glMultiTexEnvfEXT = dyn_glMultiTexEnvfEXT ptr_glMultiTexEnvfEXT

foreign import CALLCONV "dynamic" dyn_glMultiTexEnvfEXT
  :: FunPtr (GLenum -> GLenum -> GLenum -> GLfloat -> IO ())
  ->         GLenum -> GLenum -> GLenum -> GLfloat -> IO ()

{-# NOINLINE ptr_glMultiTexEnvfEXT #-}
ptr_glMultiTexEnvfEXT :: FunPtr (GLenum -> GLenum -> GLenum -> GLfloat -> IO ())
ptr_glMultiTexEnvfEXT = unsafePerformIO $ getCommand "glMultiTexEnvfEXT"

-- glMultiTexEnvfvEXT ----------------------------------------------------------

glMultiTexEnvfvEXT
  :: GLenum -- ^ @texunit@ of type @TextureUnit@.
  -> GLenum -- ^ @target@ of type @TextureEnvTarget@.
  -> GLenum -- ^ @pname@ of type @TextureEnvParameter@.
  -> Ptr GLfloat -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @CheckedFloat32@.
  -> IO ()
glMultiTexEnvfvEXT = dyn_glMultiTexEnvfvEXT ptr_glMultiTexEnvfvEXT

foreign import CALLCONV "dynamic" dyn_glMultiTexEnvfvEXT
  :: FunPtr (GLenum -> GLenum -> GLenum -> Ptr GLfloat -> IO ())
  ->         GLenum -> GLenum -> GLenum -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glMultiTexEnvfvEXT #-}
ptr_glMultiTexEnvfvEXT :: FunPtr (GLenum -> GLenum -> GLenum -> Ptr GLfloat -> IO ())
ptr_glMultiTexEnvfvEXT = unsafePerformIO $ getCommand "glMultiTexEnvfvEXT"

-- glMultiTexEnviEXT -----------------------------------------------------------

glMultiTexEnviEXT
  :: GLenum -- ^ @texunit@ of type @TextureUnit@.
  -> GLenum -- ^ @target@ of type @TextureEnvTarget@.
  -> GLenum -- ^ @pname@ of type @TextureEnvParameter@.
  -> GLint -- ^ @param@ of type @CheckedInt32@.
  -> IO ()
glMultiTexEnviEXT = dyn_glMultiTexEnviEXT ptr_glMultiTexEnviEXT

foreign import CALLCONV "dynamic" dyn_glMultiTexEnviEXT
  :: FunPtr (GLenum -> GLenum -> GLenum -> GLint -> IO ())
  ->         GLenum -> GLenum -> GLenum -> GLint -> IO ()

{-# NOINLINE ptr_glMultiTexEnviEXT #-}
ptr_glMultiTexEnviEXT :: FunPtr (GLenum -> GLenum -> GLenum -> GLint -> IO ())
ptr_glMultiTexEnviEXT = unsafePerformIO $ getCommand "glMultiTexEnviEXT"

-- glMultiTexEnvivEXT ----------------------------------------------------------

glMultiTexEnvivEXT
  :: GLenum -- ^ @texunit@ of type @TextureUnit@.
  -> GLenum -- ^ @target@ of type @TextureEnvTarget@.
  -> GLenum -- ^ @pname@ of type @TextureEnvParameter@.
  -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @CheckedInt32@.
  -> IO ()
glMultiTexEnvivEXT = dyn_glMultiTexEnvivEXT ptr_glMultiTexEnvivEXT

foreign import CALLCONV "dynamic" dyn_glMultiTexEnvivEXT
  :: FunPtr (GLenum -> GLenum -> GLenum -> Ptr GLint -> IO ())
  ->         GLenum -> GLenum -> GLenum -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glMultiTexEnvivEXT #-}
ptr_glMultiTexEnvivEXT :: FunPtr (GLenum -> GLenum -> GLenum -> Ptr GLint -> IO ())
ptr_glMultiTexEnvivEXT = unsafePerformIO $ getCommand "glMultiTexEnvivEXT"

-- glMultiTexGendEXT -----------------------------------------------------------

glMultiTexGendEXT
  :: GLenum -- ^ @texunit@ of type @TextureUnit@.
  -> GLenum -- ^ @coord@ of type @TextureCoordName@.
  -> GLenum -- ^ @pname@ of type @TextureGenParameter@.
  -> GLdouble -- ^ @param@.
  -> IO ()
glMultiTexGendEXT = dyn_glMultiTexGendEXT ptr_glMultiTexGendEXT

foreign import CALLCONV "dynamic" dyn_glMultiTexGendEXT
  :: FunPtr (GLenum -> GLenum -> GLenum -> GLdouble -> IO ())
  ->         GLenum -> GLenum -> GLenum -> GLdouble -> IO ()

{-# NOINLINE ptr_glMultiTexGendEXT #-}
ptr_glMultiTexGendEXT :: FunPtr (GLenum -> GLenum -> GLenum -> GLdouble -> IO ())
ptr_glMultiTexGendEXT = unsafePerformIO $ getCommand "glMultiTexGendEXT"

-- glMultiTexGendvEXT ----------------------------------------------------------

glMultiTexGendvEXT
  :: GLenum -- ^ @texunit@ of type @TextureUnit@.
  -> GLenum -- ^ @coord@ of type @TextureCoordName@.
  -> GLenum -- ^ @pname@ of type @TextureGenParameter@.
  -> Ptr GLdouble -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLdouble@.
  -> IO ()
glMultiTexGendvEXT = dyn_glMultiTexGendvEXT ptr_glMultiTexGendvEXT

foreign import CALLCONV "dynamic" dyn_glMultiTexGendvEXT
  :: FunPtr (GLenum -> GLenum -> GLenum -> Ptr GLdouble -> IO ())
  ->         GLenum -> GLenum -> GLenum -> Ptr GLdouble -> IO ()

{-# NOINLINE ptr_glMultiTexGendvEXT #-}
ptr_glMultiTexGendvEXT :: FunPtr (GLenum -> GLenum -> GLenum -> Ptr GLdouble -> IO ())
ptr_glMultiTexGendvEXT = unsafePerformIO $ getCommand "glMultiTexGendvEXT"

-- glMultiTexGenfEXT -----------------------------------------------------------

glMultiTexGenfEXT
  :: GLenum -- ^ @texunit@ of type @TextureUnit@.
  -> GLenum -- ^ @coord@ of type @TextureCoordName@.
  -> GLenum -- ^ @pname@ of type @TextureGenParameter@.
  -> GLfloat -- ^ @param@ of type @CheckedFloat32@.
  -> IO ()
glMultiTexGenfEXT = dyn_glMultiTexGenfEXT ptr_glMultiTexGenfEXT

foreign import CALLCONV "dynamic" dyn_glMultiTexGenfEXT
  :: FunPtr (GLenum -> GLenum -> GLenum -> GLfloat -> IO ())
  ->         GLenum -> GLenum -> GLenum -> GLfloat -> IO ()

{-# NOINLINE ptr_glMultiTexGenfEXT #-}
ptr_glMultiTexGenfEXT :: FunPtr (GLenum -> GLenum -> GLenum -> GLfloat -> IO ())
ptr_glMultiTexGenfEXT = unsafePerformIO $ getCommand "glMultiTexGenfEXT"

-- glMultiTexGenfvEXT ----------------------------------------------------------

glMultiTexGenfvEXT
  :: GLenum -- ^ @texunit@ of type @TextureUnit@.
  -> GLenum -- ^ @coord@ of type @TextureCoordName@.
  -> GLenum -- ^ @pname@ of type @TextureGenParameter@.
  -> Ptr GLfloat -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @CheckedFloat32@.
  -> IO ()
glMultiTexGenfvEXT = dyn_glMultiTexGenfvEXT ptr_glMultiTexGenfvEXT

foreign import CALLCONV "dynamic" dyn_glMultiTexGenfvEXT
  :: FunPtr (GLenum -> GLenum -> GLenum -> Ptr GLfloat -> IO ())
  ->         GLenum -> GLenum -> GLenum -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glMultiTexGenfvEXT #-}
ptr_glMultiTexGenfvEXT :: FunPtr (GLenum -> GLenum -> GLenum -> Ptr GLfloat -> IO ())
ptr_glMultiTexGenfvEXT = unsafePerformIO $ getCommand "glMultiTexGenfvEXT"

-- glMultiTexGeniEXT -----------------------------------------------------------

glMultiTexGeniEXT
  :: GLenum -- ^ @texunit@ of type @TextureUnit@.
  -> GLenum -- ^ @coord@ of type @TextureCoordName@.
  -> GLenum -- ^ @pname@ of type @TextureGenParameter@.
  -> GLint -- ^ @param@ of type @CheckedInt32@.
  -> IO ()
glMultiTexGeniEXT = dyn_glMultiTexGeniEXT ptr_glMultiTexGeniEXT

foreign import CALLCONV "dynamic" dyn_glMultiTexGeniEXT
  :: FunPtr (GLenum -> GLenum -> GLenum -> GLint -> IO ())
  ->         GLenum -> GLenum -> GLenum -> GLint -> IO ()

{-# NOINLINE ptr_glMultiTexGeniEXT #-}
ptr_glMultiTexGeniEXT :: FunPtr (GLenum -> GLenum -> GLenum -> GLint -> IO ())
ptr_glMultiTexGeniEXT = unsafePerformIO $ getCommand "glMultiTexGeniEXT"

-- glMultiTexGenivEXT ----------------------------------------------------------

glMultiTexGenivEXT
  :: GLenum -- ^ @texunit@ of type @TextureUnit@.
  -> GLenum -- ^ @coord@ of type @TextureCoordName@.
  -> GLenum -- ^ @pname@ of type @TextureGenParameter@.
  -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @CheckedInt32@.
  -> IO ()
glMultiTexGenivEXT = dyn_glMultiTexGenivEXT ptr_glMultiTexGenivEXT

foreign import CALLCONV "dynamic" dyn_glMultiTexGenivEXT
  :: FunPtr (GLenum -> GLenum -> GLenum -> Ptr GLint -> IO ())
  ->         GLenum -> GLenum -> GLenum -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glMultiTexGenivEXT #-}
ptr_glMultiTexGenivEXT :: FunPtr (GLenum -> GLenum -> GLenum -> Ptr GLint -> IO ())
ptr_glMultiTexGenivEXT = unsafePerformIO $ getCommand "glMultiTexGenivEXT"

-- glMultiTexImage1DEXT --------------------------------------------------------

glMultiTexImage1DEXT
  :: GLenum -- ^ @texunit@ of type @TextureUnit@.
  -> GLenum -- ^ @target@ of type @TextureTarget@.
  -> GLint -- ^ @level@ of type @CheckedInt32@.
  -> GLint -- ^ @internalformat@ of type @TextureComponentCount@.
  -> GLsizei -- ^ @width@.
  -> GLint -- ^ @border@ of type @CheckedInt32@.
  -> GLenum -- ^ @format@ of type @PixelFormat@.
  -> GLenum -- ^ @type@ of type @PixelType@.
  -> Ptr a -- ^ @pixels@ pointing to @COMPSIZE(format,type,width)@ elements of type @a@.
  -> IO ()
glMultiTexImage1DEXT = dyn_glMultiTexImage1DEXT ptr_glMultiTexImage1DEXT

foreign import CALLCONV "dynamic" dyn_glMultiTexImage1DEXT
  :: FunPtr (GLenum -> GLenum -> GLint -> GLint -> GLsizei -> GLint -> GLenum -> GLenum -> Ptr a -> IO ())
  ->         GLenum -> GLenum -> GLint -> GLint -> GLsizei -> GLint -> GLenum -> GLenum -> Ptr a -> IO ()

{-# NOINLINE ptr_glMultiTexImage1DEXT #-}
ptr_glMultiTexImage1DEXT :: FunPtr (GLenum -> GLenum -> GLint -> GLint -> GLsizei -> GLint -> GLenum -> GLenum -> Ptr a -> IO ())
ptr_glMultiTexImage1DEXT = unsafePerformIO $ getCommand "glMultiTexImage1DEXT"

-- glMultiTexImage2DEXT --------------------------------------------------------

glMultiTexImage2DEXT
  :: GLenum -- ^ @texunit@ of type @TextureUnit@.
  -> GLenum -- ^ @target@ of type @TextureTarget@.
  -> GLint -- ^ @level@ of type @CheckedInt32@.
  -> GLint -- ^ @internalformat@ of type @TextureComponentCount@.
  -> GLsizei -- ^ @width@.
  -> GLsizei -- ^ @height@.
  -> GLint -- ^ @border@ of type @CheckedInt32@.
  -> GLenum -- ^ @format@ of type @PixelFormat@.
  -> GLenum -- ^ @type@ of type @PixelType@.
  -> Ptr a -- ^ @pixels@ pointing to @COMPSIZE(format,type,width,height)@ elements of type @a@.
  -> IO ()
glMultiTexImage2DEXT = dyn_glMultiTexImage2DEXT ptr_glMultiTexImage2DEXT

foreign import CALLCONV "dynamic" dyn_glMultiTexImage2DEXT
  :: FunPtr (GLenum -> GLenum -> GLint -> GLint -> GLsizei -> GLsizei -> GLint -> GLenum -> GLenum -> Ptr a -> IO ())
  ->         GLenum -> GLenum -> GLint -> GLint -> GLsizei -> GLsizei -> GLint -> GLenum -> GLenum -> Ptr a -> IO ()

{-# NOINLINE ptr_glMultiTexImage2DEXT #-}
ptr_glMultiTexImage2DEXT :: FunPtr (GLenum -> GLenum -> GLint -> GLint -> GLsizei -> GLsizei -> GLint -> GLenum -> GLenum -> Ptr a -> IO ())
ptr_glMultiTexImage2DEXT = unsafePerformIO $ getCommand "glMultiTexImage2DEXT"

-- glMultiTexImage3DEXT --------------------------------------------------------

glMultiTexImage3DEXT
  :: GLenum -- ^ @texunit@ of type @TextureUnit@.
  -> GLenum -- ^ @target@ of type @TextureTarget@.
  -> GLint -- ^ @level@ of type @CheckedInt32@.
  -> GLint -- ^ @internalformat@ of type @TextureComponentCount@.
  -> GLsizei -- ^ @width@.
  -> GLsizei -- ^ @height@.
  -> GLsizei -- ^ @depth@.
  -> GLint -- ^ @border@ of type @CheckedInt32@.
  -> GLenum -- ^ @format@ of type @PixelFormat@.
  -> GLenum -- ^ @type@ of type @PixelType@.
  -> Ptr a -- ^ @pixels@ pointing to @COMPSIZE(format,type,width,height,depth)@ elements of type @a@.
  -> IO ()
glMultiTexImage3DEXT = dyn_glMultiTexImage3DEXT ptr_glMultiTexImage3DEXT

foreign import CALLCONV "dynamic" dyn_glMultiTexImage3DEXT
  :: FunPtr (GLenum -> GLenum -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLint -> GLenum -> GLenum -> Ptr a -> IO ())
  ->         GLenum -> GLenum -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLint -> GLenum -> GLenum -> Ptr a -> IO ()

{-# NOINLINE ptr_glMultiTexImage3DEXT #-}
ptr_glMultiTexImage3DEXT :: FunPtr (GLenum -> GLenum -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLint -> GLenum -> GLenum -> Ptr a -> IO ())
ptr_glMultiTexImage3DEXT = unsafePerformIO $ getCommand "glMultiTexImage3DEXT"

-- glMultiTexParameterIivEXT ---------------------------------------------------

glMultiTexParameterIivEXT
  :: GLenum -- ^ @texunit@ of type @TextureUnit@.
  -> GLenum -- ^ @target@ of type @TextureTarget@.
  -> GLenum -- ^ @pname@ of type @TextureParameterName@.
  -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @CheckedInt32@.
  -> IO ()
glMultiTexParameterIivEXT = dyn_glMultiTexParameterIivEXT ptr_glMultiTexParameterIivEXT

foreign import CALLCONV "dynamic" dyn_glMultiTexParameterIivEXT
  :: FunPtr (GLenum -> GLenum -> GLenum -> Ptr GLint -> IO ())
  ->         GLenum -> GLenum -> GLenum -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glMultiTexParameterIivEXT #-}
ptr_glMultiTexParameterIivEXT :: FunPtr (GLenum -> GLenum -> GLenum -> Ptr GLint -> IO ())
ptr_glMultiTexParameterIivEXT = unsafePerformIO $ getCommand "glMultiTexParameterIivEXT"

-- glMultiTexParameterIuivEXT --------------------------------------------------

glMultiTexParameterIuivEXT
  :: GLenum -- ^ @texunit@ of type @TextureUnit@.
  -> GLenum -- ^ @target@ of type @TextureTarget@.
  -> GLenum -- ^ @pname@ of type @TextureParameterName@.
  -> Ptr GLuint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLuint@.
  -> IO ()
glMultiTexParameterIuivEXT = dyn_glMultiTexParameterIuivEXT ptr_glMultiTexParameterIuivEXT

foreign import CALLCONV "dynamic" dyn_glMultiTexParameterIuivEXT
  :: FunPtr (GLenum -> GLenum -> GLenum -> Ptr GLuint -> IO ())
  ->         GLenum -> GLenum -> GLenum -> Ptr GLuint -> IO ()

{-# NOINLINE ptr_glMultiTexParameterIuivEXT #-}
ptr_glMultiTexParameterIuivEXT :: FunPtr (GLenum -> GLenum -> GLenum -> Ptr GLuint -> IO ())
ptr_glMultiTexParameterIuivEXT = unsafePerformIO $ getCommand "glMultiTexParameterIuivEXT"

-- glMultiTexParameterfEXT -----------------------------------------------------

glMultiTexParameterfEXT
  :: GLenum -- ^ @texunit@ of type @TextureUnit@.
  -> GLenum -- ^ @target@ of type @TextureTarget@.
  -> GLenum -- ^ @pname@ of type @TextureParameterName@.
  -> GLfloat -- ^ @param@ of type @CheckedFloat32@.
  -> IO ()
glMultiTexParameterfEXT = dyn_glMultiTexParameterfEXT ptr_glMultiTexParameterfEXT

foreign import CALLCONV "dynamic" dyn_glMultiTexParameterfEXT
  :: FunPtr (GLenum -> GLenum -> GLenum -> GLfloat -> IO ())
  ->         GLenum -> GLenum -> GLenum -> GLfloat -> IO ()

{-# NOINLINE ptr_glMultiTexParameterfEXT #-}
ptr_glMultiTexParameterfEXT :: FunPtr (GLenum -> GLenum -> GLenum -> GLfloat -> IO ())
ptr_glMultiTexParameterfEXT = unsafePerformIO $ getCommand "glMultiTexParameterfEXT"

-- glMultiTexParameterfvEXT ----------------------------------------------------

glMultiTexParameterfvEXT
  :: GLenum -- ^ @texunit@ of type @TextureUnit@.
  -> GLenum -- ^ @target@ of type @TextureTarget@.
  -> GLenum -- ^ @pname@ of type @TextureParameterName@.
  -> Ptr GLfloat -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @CheckedFloat32@.
  -> IO ()
glMultiTexParameterfvEXT = dyn_glMultiTexParameterfvEXT ptr_glMultiTexParameterfvEXT

foreign import CALLCONV "dynamic" dyn_glMultiTexParameterfvEXT
  :: FunPtr (GLenum -> GLenum -> GLenum -> Ptr GLfloat -> IO ())
  ->         GLenum -> GLenum -> GLenum -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glMultiTexParameterfvEXT #-}
ptr_glMultiTexParameterfvEXT :: FunPtr (GLenum -> GLenum -> GLenum -> Ptr GLfloat -> IO ())
ptr_glMultiTexParameterfvEXT = unsafePerformIO $ getCommand "glMultiTexParameterfvEXT"

-- glMultiTexParameteriEXT -----------------------------------------------------

glMultiTexParameteriEXT
  :: GLenum -- ^ @texunit@ of type @TextureUnit@.
  -> GLenum -- ^ @target@ of type @TextureTarget@.
  -> GLenum -- ^ @pname@ of type @TextureParameterName@.
  -> GLint -- ^ @param@ of type @CheckedInt32@.
  -> IO ()
glMultiTexParameteriEXT = dyn_glMultiTexParameteriEXT ptr_glMultiTexParameteriEXT

foreign import CALLCONV "dynamic" dyn_glMultiTexParameteriEXT
  :: FunPtr (GLenum -> GLenum -> GLenum -> GLint -> IO ())
  ->         GLenum -> GLenum -> GLenum -> GLint -> IO ()

{-# NOINLINE ptr_glMultiTexParameteriEXT #-}
ptr_glMultiTexParameteriEXT :: FunPtr (GLenum -> GLenum -> GLenum -> GLint -> IO ())
ptr_glMultiTexParameteriEXT = unsafePerformIO $ getCommand "glMultiTexParameteriEXT"

-- glMultiTexParameterivEXT ----------------------------------------------------

glMultiTexParameterivEXT
  :: GLenum -- ^ @texunit@ of type @TextureUnit@.
  -> GLenum -- ^ @target@ of type @TextureTarget@.
  -> GLenum -- ^ @pname@ of type @TextureParameterName@.
  -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @CheckedInt32@.
  -> IO ()
glMultiTexParameterivEXT = dyn_glMultiTexParameterivEXT ptr_glMultiTexParameterivEXT

foreign import CALLCONV "dynamic" dyn_glMultiTexParameterivEXT
  :: FunPtr (GLenum -> GLenum -> GLenum -> Ptr GLint -> IO ())
  ->         GLenum -> GLenum -> GLenum -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glMultiTexParameterivEXT #-}
ptr_glMultiTexParameterivEXT :: FunPtr (GLenum -> GLenum -> GLenum -> Ptr GLint -> IO ())
ptr_glMultiTexParameterivEXT = unsafePerformIO $ getCommand "glMultiTexParameterivEXT"

-- glMultiTexRenderbufferEXT ---------------------------------------------------

glMultiTexRenderbufferEXT
  :: GLenum -- ^ @texunit@ of type @TextureUnit@.
  -> GLenum -- ^ @target@ of type @TextureTarget@.
  -> GLuint -- ^ @renderbuffer@.
  -> IO ()
glMultiTexRenderbufferEXT = dyn_glMultiTexRenderbufferEXT ptr_glMultiTexRenderbufferEXT

foreign import CALLCONV "dynamic" dyn_glMultiTexRenderbufferEXT
  :: FunPtr (GLenum -> GLenum -> GLuint -> IO ())
  ->         GLenum -> GLenum -> GLuint -> IO ()

{-# NOINLINE ptr_glMultiTexRenderbufferEXT #-}
ptr_glMultiTexRenderbufferEXT :: FunPtr (GLenum -> GLenum -> GLuint -> IO ())
ptr_glMultiTexRenderbufferEXT = unsafePerformIO $ getCommand "glMultiTexRenderbufferEXT"

-- glMultiTexSubImage1DEXT -----------------------------------------------------

glMultiTexSubImage1DEXT
  :: GLenum -- ^ @texunit@ of type @TextureUnit@.
  -> GLenum -- ^ @target@ of type @TextureTarget@.
  -> GLint -- ^ @level@ of type @CheckedInt32@.
  -> GLint -- ^ @xoffset@ of type @CheckedInt32@.
  -> GLsizei -- ^ @width@.
  -> GLenum -- ^ @format@ of type @PixelFormat@.
  -> GLenum -- ^ @type@ of type @PixelType@.
  -> Ptr a -- ^ @pixels@ pointing to @COMPSIZE(format,type,width)@ elements of type @a@.
  -> IO ()
glMultiTexSubImage1DEXT = dyn_glMultiTexSubImage1DEXT ptr_glMultiTexSubImage1DEXT

foreign import CALLCONV "dynamic" dyn_glMultiTexSubImage1DEXT
  :: FunPtr (GLenum -> GLenum -> GLint -> GLint -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO ())
  ->         GLenum -> GLenum -> GLint -> GLint -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO ()

{-# NOINLINE ptr_glMultiTexSubImage1DEXT #-}
ptr_glMultiTexSubImage1DEXT :: FunPtr (GLenum -> GLenum -> GLint -> GLint -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO ())
ptr_glMultiTexSubImage1DEXT = unsafePerformIO $ getCommand "glMultiTexSubImage1DEXT"

-- glMultiTexSubImage2DEXT -----------------------------------------------------

glMultiTexSubImage2DEXT
  :: GLenum -- ^ @texunit@ of type @TextureUnit@.
  -> GLenum -- ^ @target@ of type @TextureTarget@.
  -> GLint -- ^ @level@ of type @CheckedInt32@.
  -> GLint -- ^ @xoffset@ of type @CheckedInt32@.
  -> GLint -- ^ @yoffset@ of type @CheckedInt32@.
  -> GLsizei -- ^ @width@.
  -> GLsizei -- ^ @height@.
  -> GLenum -- ^ @format@ of type @PixelFormat@.
  -> GLenum -- ^ @type@ of type @PixelType@.
  -> Ptr a -- ^ @pixels@ pointing to @COMPSIZE(format,type,width,height)@ elements of type @a@.
  -> IO ()
glMultiTexSubImage2DEXT = dyn_glMultiTexSubImage2DEXT ptr_glMultiTexSubImage2DEXT

foreign import CALLCONV "dynamic" dyn_glMultiTexSubImage2DEXT
  :: FunPtr (GLenum -> GLenum -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO ())
  ->         GLenum -> GLenum -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO ()

{-# NOINLINE ptr_glMultiTexSubImage2DEXT #-}
ptr_glMultiTexSubImage2DEXT :: FunPtr (GLenum -> GLenum -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO ())
ptr_glMultiTexSubImage2DEXT = unsafePerformIO $ getCommand "glMultiTexSubImage2DEXT"

-- glMultiTexSubImage3DEXT -----------------------------------------------------

glMultiTexSubImage3DEXT
  :: GLenum -- ^ @texunit@ of type @TextureUnit@.
  -> GLenum -- ^ @target@ of type @TextureTarget@.
  -> GLint -- ^ @level@ of type @CheckedInt32@.
  -> GLint -- ^ @xoffset@ of type @CheckedInt32@.
  -> GLint -- ^ @yoffset@ of type @CheckedInt32@.
  -> GLint -- ^ @zoffset@ of type @CheckedInt32@.
  -> GLsizei -- ^ @width@.
  -> GLsizei -- ^ @height@.
  -> GLsizei -- ^ @depth@.
  -> GLenum -- ^ @format@ of type @PixelFormat@.
  -> GLenum -- ^ @type@ of type @PixelType@.
  -> Ptr a -- ^ @pixels@ pointing to @COMPSIZE(format,type,width,height,depth)@ elements of type @a@.
  -> IO ()
glMultiTexSubImage3DEXT = dyn_glMultiTexSubImage3DEXT ptr_glMultiTexSubImage3DEXT

foreign import CALLCONV "dynamic" dyn_glMultiTexSubImage3DEXT
  :: FunPtr (GLenum -> GLenum -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO ())
  ->         GLenum -> GLenum -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO ()

{-# NOINLINE ptr_glMultiTexSubImage3DEXT #-}
ptr_glMultiTexSubImage3DEXT :: FunPtr (GLenum -> GLenum -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO ())
ptr_glMultiTexSubImage3DEXT = unsafePerformIO $ getCommand "glMultiTexSubImage3DEXT"

-- glNamedBufferData -----------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glBufferData.xhtml OpenGL 4.x>
glNamedBufferData
  :: GLuint -- ^ @buffer@.
  -> GLsizeiptr -- ^ @size@ of type @BufferSize@.
  -> Ptr a -- ^ @data@.
  -> GLenum -- ^ @usage@.
  -> IO ()
glNamedBufferData = dyn_glNamedBufferData ptr_glNamedBufferData

foreign import CALLCONV "dynamic" dyn_glNamedBufferData
  :: FunPtr (GLuint -> GLsizeiptr -> Ptr a -> GLenum -> IO ())
  ->         GLuint -> GLsizeiptr -> Ptr a -> GLenum -> IO ()

{-# NOINLINE ptr_glNamedBufferData #-}
ptr_glNamedBufferData :: FunPtr (GLuint -> GLsizeiptr -> Ptr a -> GLenum -> IO ())
ptr_glNamedBufferData = unsafePerformIO $ getCommand "glNamedBufferData"

-- glNamedBufferDataEXT --------------------------------------------------------

glNamedBufferDataEXT
  :: GLuint -- ^ @buffer@.
  -> GLsizeiptr -- ^ @size@.
  -> Ptr a -- ^ @data@ pointing to @COMPSIZE(size)@ elements of type @a@.
  -> GLenum -- ^ @usage@ of type @VertexBufferObjectUsage@.
  -> IO ()
glNamedBufferDataEXT = dyn_glNamedBufferDataEXT ptr_glNamedBufferDataEXT

foreign import CALLCONV "dynamic" dyn_glNamedBufferDataEXT
  :: FunPtr (GLuint -> GLsizeiptr -> Ptr a -> GLenum -> IO ())
  ->         GLuint -> GLsizeiptr -> Ptr a -> GLenum -> IO ()

{-# NOINLINE ptr_glNamedBufferDataEXT #-}
ptr_glNamedBufferDataEXT :: FunPtr (GLuint -> GLsizeiptr -> Ptr a -> GLenum -> IO ())
ptr_glNamedBufferDataEXT = unsafePerformIO $ getCommand "glNamedBufferDataEXT"

-- glNamedBufferPageCommitmentARB ----------------------------------------------

glNamedBufferPageCommitmentARB
  :: GLuint -- ^ @buffer@.
  -> GLintptr -- ^ @offset@.
  -> GLsizeiptr -- ^ @size@.
  -> GLboolean -- ^ @commit@.
  -> IO ()
glNamedBufferPageCommitmentARB = dyn_glNamedBufferPageCommitmentARB ptr_glNamedBufferPageCommitmentARB

foreign import CALLCONV "dynamic" dyn_glNamedBufferPageCommitmentARB
  :: FunPtr (GLuint -> GLintptr -> GLsizeiptr -> GLboolean -> IO ())
  ->         GLuint -> GLintptr -> GLsizeiptr -> GLboolean -> IO ()

{-# NOINLINE ptr_glNamedBufferPageCommitmentARB #-}
ptr_glNamedBufferPageCommitmentARB :: FunPtr (GLuint -> GLintptr -> GLsizeiptr -> GLboolean -> IO ())
ptr_glNamedBufferPageCommitmentARB = unsafePerformIO $ getCommand "glNamedBufferPageCommitmentARB"

-- glNamedBufferPageCommitmentEXT ----------------------------------------------

glNamedBufferPageCommitmentEXT
  :: GLuint -- ^ @buffer@.
  -> GLintptr -- ^ @offset@.
  -> GLsizeiptr -- ^ @size@.
  -> GLboolean -- ^ @commit@.
  -> IO ()
glNamedBufferPageCommitmentEXT = dyn_glNamedBufferPageCommitmentEXT ptr_glNamedBufferPageCommitmentEXT

foreign import CALLCONV "dynamic" dyn_glNamedBufferPageCommitmentEXT
  :: FunPtr (GLuint -> GLintptr -> GLsizeiptr -> GLboolean -> IO ())
  ->         GLuint -> GLintptr -> GLsizeiptr -> GLboolean -> IO ()

{-# NOINLINE ptr_glNamedBufferPageCommitmentEXT #-}
ptr_glNamedBufferPageCommitmentEXT :: FunPtr (GLuint -> GLintptr -> GLsizeiptr -> GLboolean -> IO ())
ptr_glNamedBufferPageCommitmentEXT = unsafePerformIO $ getCommand "glNamedBufferPageCommitmentEXT"

-- glNamedBufferStorage --------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glBufferStorage.xhtml OpenGL 4.x>
glNamedBufferStorage
  :: GLuint -- ^ @buffer@.
  -> GLsizeiptr -- ^ @size@ of type @BufferSize@.
  -> Ptr a -- ^ @data@.
  -> GLbitfield -- ^ @flags@.
  -> IO ()
glNamedBufferStorage = dyn_glNamedBufferStorage ptr_glNamedBufferStorage

foreign import CALLCONV "dynamic" dyn_glNamedBufferStorage
  :: FunPtr (GLuint -> GLsizeiptr -> Ptr a -> GLbitfield -> IO ())
  ->         GLuint -> GLsizeiptr -> Ptr a -> GLbitfield -> IO ()

{-# NOINLINE ptr_glNamedBufferStorage #-}
ptr_glNamedBufferStorage :: FunPtr (GLuint -> GLsizeiptr -> Ptr a -> GLbitfield -> IO ())
ptr_glNamedBufferStorage = unsafePerformIO $ getCommand "glNamedBufferStorage"

-- glNamedBufferStorageEXT -----------------------------------------------------

glNamedBufferStorageEXT
  :: GLuint -- ^ @buffer@.
  -> GLsizeiptr -- ^ @size@.
  -> Ptr a -- ^ @data@ pointing to @size@ elements of type @a@.
  -> GLbitfield -- ^ @flags@.
  -> IO ()
glNamedBufferStorageEXT = dyn_glNamedBufferStorageEXT ptr_glNamedBufferStorageEXT

foreign import CALLCONV "dynamic" dyn_glNamedBufferStorageEXT
  :: FunPtr (GLuint -> GLsizeiptr -> Ptr a -> GLbitfield -> IO ())
  ->         GLuint -> GLsizeiptr -> Ptr a -> GLbitfield -> IO ()

{-# NOINLINE ptr_glNamedBufferStorageEXT #-}
ptr_glNamedBufferStorageEXT :: FunPtr (GLuint -> GLsizeiptr -> Ptr a -> GLbitfield -> IO ())
ptr_glNamedBufferStorageEXT = unsafePerformIO $ getCommand "glNamedBufferStorageEXT"

-- glNamedBufferSubData --------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glBufferSubData.xhtml OpenGL 4.x>
glNamedBufferSubData
  :: GLuint -- ^ @buffer@.
  -> GLintptr -- ^ @offset@.
  -> GLsizeiptr -- ^ @size@ of type @BufferSize@.
  -> Ptr a -- ^ @data@.
  -> IO ()
glNamedBufferSubData = dyn_glNamedBufferSubData ptr_glNamedBufferSubData

foreign import CALLCONV "dynamic" dyn_glNamedBufferSubData
  :: FunPtr (GLuint -> GLintptr -> GLsizeiptr -> Ptr a -> IO ())
  ->         GLuint -> GLintptr -> GLsizeiptr -> Ptr a -> IO ()

{-# NOINLINE ptr_glNamedBufferSubData #-}
ptr_glNamedBufferSubData :: FunPtr (GLuint -> GLintptr -> GLsizeiptr -> Ptr a -> IO ())
ptr_glNamedBufferSubData = unsafePerformIO $ getCommand "glNamedBufferSubData"

-- glNamedBufferSubDataEXT -----------------------------------------------------

glNamedBufferSubDataEXT
  :: GLuint -- ^ @buffer@.
  -> GLintptr -- ^ @offset@.
  -> GLsizeiptr -- ^ @size@.
  -> Ptr a -- ^ @data@ pointing to @COMPSIZE(size)@ elements of type @a@.
  -> IO ()
glNamedBufferSubDataEXT = dyn_glNamedBufferSubDataEXT ptr_glNamedBufferSubDataEXT

foreign import CALLCONV "dynamic" dyn_glNamedBufferSubDataEXT
  :: FunPtr (GLuint -> GLintptr -> GLsizeiptr -> Ptr a -> IO ())
  ->         GLuint -> GLintptr -> GLsizeiptr -> Ptr a -> IO ()

{-# NOINLINE ptr_glNamedBufferSubDataEXT #-}
ptr_glNamedBufferSubDataEXT :: FunPtr (GLuint -> GLintptr -> GLsizeiptr -> Ptr a -> IO ())
ptr_glNamedBufferSubDataEXT = unsafePerformIO $ getCommand "glNamedBufferSubDataEXT"

-- glNamedCopyBufferSubDataEXT -------------------------------------------------

glNamedCopyBufferSubDataEXT
  :: GLuint -- ^ @readBuffer@.
  -> GLuint -- ^ @writeBuffer@.
  -> GLintptr -- ^ @readOffset@.
  -> GLintptr -- ^ @writeOffset@.
  -> GLsizeiptr -- ^ @size@.
  -> IO ()
glNamedCopyBufferSubDataEXT = dyn_glNamedCopyBufferSubDataEXT ptr_glNamedCopyBufferSubDataEXT

foreign import CALLCONV "dynamic" dyn_glNamedCopyBufferSubDataEXT
  :: FunPtr (GLuint -> GLuint -> GLintptr -> GLintptr -> GLsizeiptr -> IO ())
  ->         GLuint -> GLuint -> GLintptr -> GLintptr -> GLsizeiptr -> IO ()

{-# NOINLINE ptr_glNamedCopyBufferSubDataEXT #-}
ptr_glNamedCopyBufferSubDataEXT :: FunPtr (GLuint -> GLuint -> GLintptr -> GLintptr -> GLsizeiptr -> IO ())
ptr_glNamedCopyBufferSubDataEXT = unsafePerformIO $ getCommand "glNamedCopyBufferSubDataEXT"

-- glNamedFramebufferDrawBuffer ------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glDrawBuffer.xhtml OpenGL 4.x>
glNamedFramebufferDrawBuffer
  :: GLuint -- ^ @framebuffer@.
  -> GLenum -- ^ @buf@.
  -> IO ()
glNamedFramebufferDrawBuffer = dyn_glNamedFramebufferDrawBuffer ptr_glNamedFramebufferDrawBuffer

foreign import CALLCONV "dynamic" dyn_glNamedFramebufferDrawBuffer
  :: FunPtr (GLuint -> GLenum -> IO ())
  ->         GLuint -> GLenum -> IO ()

{-# NOINLINE ptr_glNamedFramebufferDrawBuffer #-}
ptr_glNamedFramebufferDrawBuffer :: FunPtr (GLuint -> GLenum -> IO ())
ptr_glNamedFramebufferDrawBuffer = unsafePerformIO $ getCommand "glNamedFramebufferDrawBuffer"

-- glNamedFramebufferDrawBuffers -----------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glDrawBuffers.xhtml OpenGL 4.x>
glNamedFramebufferDrawBuffers
  :: GLuint -- ^ @framebuffer@.
  -> GLsizei -- ^ @n@.
  -> Ptr GLenum -- ^ @bufs@.
  -> IO ()
glNamedFramebufferDrawBuffers = dyn_glNamedFramebufferDrawBuffers ptr_glNamedFramebufferDrawBuffers

foreign import CALLCONV "dynamic" dyn_glNamedFramebufferDrawBuffers
  :: FunPtr (GLuint -> GLsizei -> Ptr GLenum -> IO ())
  ->         GLuint -> GLsizei -> Ptr GLenum -> IO ()

{-# NOINLINE ptr_glNamedFramebufferDrawBuffers #-}
ptr_glNamedFramebufferDrawBuffers :: FunPtr (GLuint -> GLsizei -> Ptr GLenum -> IO ())
ptr_glNamedFramebufferDrawBuffers = unsafePerformIO $ getCommand "glNamedFramebufferDrawBuffers"

-- glNamedFramebufferParameteri ------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glFramebufferParameteri.xhtml OpenGL 4.x>
glNamedFramebufferParameteri
  :: GLuint -- ^ @framebuffer@.
  -> GLenum -- ^ @pname@.
  -> GLint -- ^ @param@.
  -> IO ()
glNamedFramebufferParameteri = dyn_glNamedFramebufferParameteri ptr_glNamedFramebufferParameteri

foreign import CALLCONV "dynamic" dyn_glNamedFramebufferParameteri
  :: FunPtr (GLuint -> GLenum -> GLint -> IO ())
  ->         GLuint -> GLenum -> GLint -> IO ()

{-# NOINLINE ptr_glNamedFramebufferParameteri #-}
ptr_glNamedFramebufferParameteri :: FunPtr (GLuint -> GLenum -> GLint -> IO ())
ptr_glNamedFramebufferParameteri = unsafePerformIO $ getCommand "glNamedFramebufferParameteri"

-- glNamedFramebufferParameteriEXT ---------------------------------------------

glNamedFramebufferParameteriEXT
  :: GLuint -- ^ @framebuffer@ of type @Framebuffer@.
  -> GLenum -- ^ @pname@ of type @FramebufferParameterName@.
  -> GLint -- ^ @param@.
  -> IO ()
glNamedFramebufferParameteriEXT = dyn_glNamedFramebufferParameteriEXT ptr_glNamedFramebufferParameteriEXT

foreign import CALLCONV "dynamic" dyn_glNamedFramebufferParameteriEXT
  :: FunPtr (GLuint -> GLenum -> GLint -> IO ())
  ->         GLuint -> GLenum -> GLint -> IO ()

{-# NOINLINE ptr_glNamedFramebufferParameteriEXT #-}
ptr_glNamedFramebufferParameteriEXT :: FunPtr (GLuint -> GLenum -> GLint -> IO ())
ptr_glNamedFramebufferParameteriEXT = unsafePerformIO $ getCommand "glNamedFramebufferParameteriEXT"

-- glNamedFramebufferReadBuffer ------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glReadBuffer.xhtml OpenGL 4.x>
glNamedFramebufferReadBuffer
  :: GLuint -- ^ @framebuffer@.
  -> GLenum -- ^ @src@.
  -> IO ()
glNamedFramebufferReadBuffer = dyn_glNamedFramebufferReadBuffer ptr_glNamedFramebufferReadBuffer

foreign import CALLCONV "dynamic" dyn_glNamedFramebufferReadBuffer
  :: FunPtr (GLuint -> GLenum -> IO ())
  ->         GLuint -> GLenum -> IO ()

{-# NOINLINE ptr_glNamedFramebufferReadBuffer #-}
ptr_glNamedFramebufferReadBuffer :: FunPtr (GLuint -> GLenum -> IO ())
ptr_glNamedFramebufferReadBuffer = unsafePerformIO $ getCommand "glNamedFramebufferReadBuffer"

-- glNamedFramebufferRenderbuffer ----------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glFramebufferRenderbuffer.xhtml OpenGL 4.x>
glNamedFramebufferRenderbuffer
  :: GLuint -- ^ @framebuffer@.
  -> GLenum -- ^ @attachment@.
  -> GLenum -- ^ @renderbuffertarget@.
  -> GLuint -- ^ @renderbuffer@.
  -> IO ()
glNamedFramebufferRenderbuffer = dyn_glNamedFramebufferRenderbuffer ptr_glNamedFramebufferRenderbuffer

foreign import CALLCONV "dynamic" dyn_glNamedFramebufferRenderbuffer
  :: FunPtr (GLuint -> GLenum -> GLenum -> GLuint -> IO ())
  ->         GLuint -> GLenum -> GLenum -> GLuint -> IO ()

{-# NOINLINE ptr_glNamedFramebufferRenderbuffer #-}
ptr_glNamedFramebufferRenderbuffer :: FunPtr (GLuint -> GLenum -> GLenum -> GLuint -> IO ())
ptr_glNamedFramebufferRenderbuffer = unsafePerformIO $ getCommand "glNamedFramebufferRenderbuffer"

-- glNamedFramebufferRenderbufferEXT -------------------------------------------

glNamedFramebufferRenderbufferEXT
  :: GLuint -- ^ @framebuffer@ of type @Framebuffer@.
  -> GLenum -- ^ @attachment@ of type @FramebufferAttachment@.
  -> GLenum -- ^ @renderbuffertarget@ of type @RenderbufferTarget@.
  -> GLuint -- ^ @renderbuffer@ of type @Renderbuffer@.
  -> IO ()
glNamedFramebufferRenderbufferEXT = dyn_glNamedFramebufferRenderbufferEXT ptr_glNamedFramebufferRenderbufferEXT

foreign import CALLCONV "dynamic" dyn_glNamedFramebufferRenderbufferEXT
  :: FunPtr (GLuint -> GLenum -> GLenum -> GLuint -> IO ())
  ->         GLuint -> GLenum -> GLenum -> GLuint -> IO ()

{-# NOINLINE ptr_glNamedFramebufferRenderbufferEXT #-}
ptr_glNamedFramebufferRenderbufferEXT :: FunPtr (GLuint -> GLenum -> GLenum -> GLuint -> IO ())
ptr_glNamedFramebufferRenderbufferEXT = unsafePerformIO $ getCommand "glNamedFramebufferRenderbufferEXT"

-- glNamedFramebufferSampleLocationsfvNV ---------------------------------------

glNamedFramebufferSampleLocationsfvNV
  :: GLuint -- ^ @framebuffer@.
  -> GLuint -- ^ @start@.
  -> GLsizei -- ^ @count@.
  -> Ptr GLfloat -- ^ @v@.
  -> IO ()
glNamedFramebufferSampleLocationsfvNV = dyn_glNamedFramebufferSampleLocationsfvNV ptr_glNamedFramebufferSampleLocationsfvNV

foreign import CALLCONV "dynamic" dyn_glNamedFramebufferSampleLocationsfvNV
  :: FunPtr (GLuint -> GLuint -> GLsizei -> Ptr GLfloat -> IO ())
  ->         GLuint -> GLuint -> GLsizei -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glNamedFramebufferSampleLocationsfvNV #-}
ptr_glNamedFramebufferSampleLocationsfvNV :: FunPtr (GLuint -> GLuint -> GLsizei -> Ptr GLfloat -> IO ())
ptr_glNamedFramebufferSampleLocationsfvNV = unsafePerformIO $ getCommand "glNamedFramebufferSampleLocationsfvNV"

-- glNamedFramebufferTexture ---------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glFramebufferTexture.xhtml OpenGL 4.x>
glNamedFramebufferTexture
  :: GLuint -- ^ @framebuffer@.
  -> GLenum -- ^ @attachment@.
  -> GLuint -- ^ @texture@.
  -> GLint -- ^ @level@.
  -> IO ()
glNamedFramebufferTexture = dyn_glNamedFramebufferTexture ptr_glNamedFramebufferTexture

foreign import CALLCONV "dynamic" dyn_glNamedFramebufferTexture
  :: FunPtr (GLuint -> GLenum -> GLuint -> GLint -> IO ())
  ->         GLuint -> GLenum -> GLuint -> GLint -> IO ()

{-# NOINLINE ptr_glNamedFramebufferTexture #-}
ptr_glNamedFramebufferTexture :: FunPtr (GLuint -> GLenum -> GLuint -> GLint -> IO ())
ptr_glNamedFramebufferTexture = unsafePerformIO $ getCommand "glNamedFramebufferTexture"

-- glNamedFramebufferTexture1DEXT ----------------------------------------------

glNamedFramebufferTexture1DEXT
  :: GLuint -- ^ @framebuffer@ of type @Framebuffer@.
  -> GLenum -- ^ @attachment@ of type @FramebufferAttachment@.
  -> GLenum -- ^ @textarget@ of type @TextureTarget@.
  -> GLuint -- ^ @texture@ of type @Texture@.
  -> GLint -- ^ @level@ of type @CheckedInt32@.
  -> IO ()
glNamedFramebufferTexture1DEXT = dyn_glNamedFramebufferTexture1DEXT ptr_glNamedFramebufferTexture1DEXT

foreign import CALLCONV "dynamic" dyn_glNamedFramebufferTexture1DEXT
  :: FunPtr (GLuint -> GLenum -> GLenum -> GLuint -> GLint -> IO ())
  ->         GLuint -> GLenum -> GLenum -> GLuint -> GLint -> IO ()

{-# NOINLINE ptr_glNamedFramebufferTexture1DEXT #-}
ptr_glNamedFramebufferTexture1DEXT :: FunPtr (GLuint -> GLenum -> GLenum -> GLuint -> GLint -> IO ())
ptr_glNamedFramebufferTexture1DEXT = unsafePerformIO $ getCommand "glNamedFramebufferTexture1DEXT"

-- glNamedFramebufferTexture2DEXT ----------------------------------------------

glNamedFramebufferTexture2DEXT
  :: GLuint -- ^ @framebuffer@ of type @Framebuffer@.
  -> GLenum -- ^ @attachment@ of type @FramebufferAttachment@.
  -> GLenum -- ^ @textarget@ of type @TextureTarget@.
  -> GLuint -- ^ @texture@ of type @Texture@.
  -> GLint -- ^ @level@ of type @CheckedInt32@.
  -> IO ()
glNamedFramebufferTexture2DEXT = dyn_glNamedFramebufferTexture2DEXT ptr_glNamedFramebufferTexture2DEXT

foreign import CALLCONV "dynamic" dyn_glNamedFramebufferTexture2DEXT
  :: FunPtr (GLuint -> GLenum -> GLenum -> GLuint -> GLint -> IO ())
  ->         GLuint -> GLenum -> GLenum -> GLuint -> GLint -> IO ()

{-# NOINLINE ptr_glNamedFramebufferTexture2DEXT #-}
ptr_glNamedFramebufferTexture2DEXT :: FunPtr (GLuint -> GLenum -> GLenum -> GLuint -> GLint -> IO ())
ptr_glNamedFramebufferTexture2DEXT = unsafePerformIO $ getCommand "glNamedFramebufferTexture2DEXT"

-- glNamedFramebufferTexture3DEXT ----------------------------------------------

glNamedFramebufferTexture3DEXT
  :: GLuint -- ^ @framebuffer@ of type @Framebuffer@.
  -> GLenum -- ^ @attachment@ of type @FramebufferAttachment@.
  -> GLenum -- ^ @textarget@ of type @TextureTarget@.
  -> GLuint -- ^ @texture@ of type @Texture@.
  -> GLint -- ^ @level@ of type @CheckedInt32@.
  -> GLint -- ^ @zoffset@ of type @CheckedInt32@.
  -> IO ()
glNamedFramebufferTexture3DEXT = dyn_glNamedFramebufferTexture3DEXT ptr_glNamedFramebufferTexture3DEXT

foreign import CALLCONV "dynamic" dyn_glNamedFramebufferTexture3DEXT
  :: FunPtr (GLuint -> GLenum -> GLenum -> GLuint -> GLint -> GLint -> IO ())
  ->         GLuint -> GLenum -> GLenum -> GLuint -> GLint -> GLint -> IO ()

{-# NOINLINE ptr_glNamedFramebufferTexture3DEXT #-}
ptr_glNamedFramebufferTexture3DEXT :: FunPtr (GLuint -> GLenum -> GLenum -> GLuint -> GLint -> GLint -> IO ())
ptr_glNamedFramebufferTexture3DEXT = unsafePerformIO $ getCommand "glNamedFramebufferTexture3DEXT"

-- glNamedFramebufferTextureEXT ------------------------------------------------

glNamedFramebufferTextureEXT
  :: GLuint -- ^ @framebuffer@ of type @Framebuffer@.
  -> GLenum -- ^ @attachment@ of type @FramebufferAttachment@.
  -> GLuint -- ^ @texture@ of type @Texture@.
  -> GLint -- ^ @level@ of type @CheckedInt32@.
  -> IO ()
glNamedFramebufferTextureEXT = dyn_glNamedFramebufferTextureEXT ptr_glNamedFramebufferTextureEXT

foreign import CALLCONV "dynamic" dyn_glNamedFramebufferTextureEXT
  :: FunPtr (GLuint -> GLenum -> GLuint -> GLint -> IO ())
  ->         GLuint -> GLenum -> GLuint -> GLint -> IO ()

{-# NOINLINE ptr_glNamedFramebufferTextureEXT #-}
ptr_glNamedFramebufferTextureEXT :: FunPtr (GLuint -> GLenum -> GLuint -> GLint -> IO ())
ptr_glNamedFramebufferTextureEXT = unsafePerformIO $ getCommand "glNamedFramebufferTextureEXT"

-- glNamedFramebufferTextureFaceEXT --------------------------------------------

glNamedFramebufferTextureFaceEXT
  :: GLuint -- ^ @framebuffer@ of type @Framebuffer@.
  -> GLenum -- ^ @attachment@ of type @FramebufferAttachment@.
  -> GLuint -- ^ @texture@ of type @Texture@.
  -> GLint -- ^ @level@ of type @CheckedInt32@.
  -> GLenum -- ^ @face@ of type @TextureTarget@.
  -> IO ()
glNamedFramebufferTextureFaceEXT = dyn_glNamedFramebufferTextureFaceEXT ptr_glNamedFramebufferTextureFaceEXT

foreign import CALLCONV "dynamic" dyn_glNamedFramebufferTextureFaceEXT
  :: FunPtr (GLuint -> GLenum -> GLuint -> GLint -> GLenum -> IO ())
  ->         GLuint -> GLenum -> GLuint -> GLint -> GLenum -> IO ()

{-# NOINLINE ptr_glNamedFramebufferTextureFaceEXT #-}
ptr_glNamedFramebufferTextureFaceEXT :: FunPtr (GLuint -> GLenum -> GLuint -> GLint -> GLenum -> IO ())
ptr_glNamedFramebufferTextureFaceEXT = unsafePerformIO $ getCommand "glNamedFramebufferTextureFaceEXT"

-- glNamedFramebufferTextureLayer ----------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glFramebufferTextureLayer.xhtml OpenGL 4.x>
glNamedFramebufferTextureLayer
  :: GLuint -- ^ @framebuffer@.
  -> GLenum -- ^ @attachment@.
  -> GLuint -- ^ @texture@.
  -> GLint -- ^ @level@.
  -> GLint -- ^ @layer@.
  -> IO ()
glNamedFramebufferTextureLayer = dyn_glNamedFramebufferTextureLayer ptr_glNamedFramebufferTextureLayer

foreign import CALLCONV "dynamic" dyn_glNamedFramebufferTextureLayer
  :: FunPtr (GLuint -> GLenum -> GLuint -> GLint -> GLint -> IO ())
  ->         GLuint -> GLenum -> GLuint -> GLint -> GLint -> IO ()

{-# NOINLINE ptr_glNamedFramebufferTextureLayer #-}
ptr_glNamedFramebufferTextureLayer :: FunPtr (GLuint -> GLenum -> GLuint -> GLint -> GLint -> IO ())
ptr_glNamedFramebufferTextureLayer = unsafePerformIO $ getCommand "glNamedFramebufferTextureLayer"

-- glNamedFramebufferTextureLayerEXT -------------------------------------------

glNamedFramebufferTextureLayerEXT
  :: GLuint -- ^ @framebuffer@ of type @Framebuffer@.
  -> GLenum -- ^ @attachment@ of type @FramebufferAttachment@.
  -> GLuint -- ^ @texture@ of type @Texture@.
  -> GLint -- ^ @level@ of type @CheckedInt32@.
  -> GLint -- ^ @layer@ of type @CheckedInt32@.
  -> IO ()
glNamedFramebufferTextureLayerEXT = dyn_glNamedFramebufferTextureLayerEXT ptr_glNamedFramebufferTextureLayerEXT

foreign import CALLCONV "dynamic" dyn_glNamedFramebufferTextureLayerEXT
  :: FunPtr (GLuint -> GLenum -> GLuint -> GLint -> GLint -> IO ())
  ->         GLuint -> GLenum -> GLuint -> GLint -> GLint -> IO ()

{-# NOINLINE ptr_glNamedFramebufferTextureLayerEXT #-}
ptr_glNamedFramebufferTextureLayerEXT :: FunPtr (GLuint -> GLenum -> GLuint -> GLint -> GLint -> IO ())
ptr_glNamedFramebufferTextureLayerEXT = unsafePerformIO $ getCommand "glNamedFramebufferTextureLayerEXT"

-- glNamedProgramLocalParameter4dEXT -------------------------------------------

glNamedProgramLocalParameter4dEXT
  :: GLuint -- ^ @program@.
  -> GLenum -- ^ @target@ of type @ProgramTarget@.
  -> GLuint -- ^ @index@.
  -> GLdouble -- ^ @x@.
  -> GLdouble -- ^ @y@.
  -> GLdouble -- ^ @z@.
  -> GLdouble -- ^ @w@.
  -> IO ()
glNamedProgramLocalParameter4dEXT = dyn_glNamedProgramLocalParameter4dEXT ptr_glNamedProgramLocalParameter4dEXT

foreign import CALLCONV "dynamic" dyn_glNamedProgramLocalParameter4dEXT
  :: FunPtr (GLuint -> GLenum -> GLuint -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ())
  ->         GLuint -> GLenum -> GLuint -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ()

{-# NOINLINE ptr_glNamedProgramLocalParameter4dEXT #-}
ptr_glNamedProgramLocalParameter4dEXT :: FunPtr (GLuint -> GLenum -> GLuint -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ())
ptr_glNamedProgramLocalParameter4dEXT = unsafePerformIO $ getCommand "glNamedProgramLocalParameter4dEXT"

-- glNamedProgramLocalParameter4dvEXT ------------------------------------------

glNamedProgramLocalParameter4dvEXT
  :: GLuint -- ^ @program@.
  -> GLenum -- ^ @target@ of type @ProgramTarget@.
  -> GLuint -- ^ @index@.
  -> Ptr GLdouble -- ^ @params@ pointing to @4@ elements of type @GLdouble@.
  -> IO ()
glNamedProgramLocalParameter4dvEXT = dyn_glNamedProgramLocalParameter4dvEXT ptr_glNamedProgramLocalParameter4dvEXT

foreign import CALLCONV "dynamic" dyn_glNamedProgramLocalParameter4dvEXT
  :: FunPtr (GLuint -> GLenum -> GLuint -> Ptr GLdouble -> IO ())
  ->         GLuint -> GLenum -> GLuint -> Ptr GLdouble -> IO ()

{-# NOINLINE ptr_glNamedProgramLocalParameter4dvEXT #-}
ptr_glNamedProgramLocalParameter4dvEXT :: FunPtr (GLuint -> GLenum -> GLuint -> Ptr GLdouble -> IO ())
ptr_glNamedProgramLocalParameter4dvEXT = unsafePerformIO $ getCommand "glNamedProgramLocalParameter4dvEXT"

-- glNamedProgramLocalParameter4fEXT -------------------------------------------

glNamedProgramLocalParameter4fEXT
  :: GLuint -- ^ @program@.
  -> GLenum -- ^ @target@ of type @ProgramTarget@.
  -> GLuint -- ^ @index@.
  -> GLfloat -- ^ @x@.
  -> GLfloat -- ^ @y@.
  -> GLfloat -- ^ @z@.
  -> GLfloat -- ^ @w@.
  -> IO ()
glNamedProgramLocalParameter4fEXT = dyn_glNamedProgramLocalParameter4fEXT ptr_glNamedProgramLocalParameter4fEXT

foreign import CALLCONV "dynamic" dyn_glNamedProgramLocalParameter4fEXT
  :: FunPtr (GLuint -> GLenum -> GLuint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
  ->         GLuint -> GLenum -> GLuint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ()

{-# NOINLINE ptr_glNamedProgramLocalParameter4fEXT #-}
ptr_glNamedProgramLocalParameter4fEXT :: FunPtr (GLuint -> GLenum -> GLuint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
ptr_glNamedProgramLocalParameter4fEXT = unsafePerformIO $ getCommand "glNamedProgramLocalParameter4fEXT"

-- glNamedProgramLocalParameter4fvEXT ------------------------------------------

glNamedProgramLocalParameter4fvEXT
  :: GLuint -- ^ @program@.
  -> GLenum -- ^ @target@ of type @ProgramTarget@.
  -> GLuint -- ^ @index@.
  -> Ptr GLfloat -- ^ @params@ pointing to @4@ elements of type @GLfloat@.
  -> IO ()
glNamedProgramLocalParameter4fvEXT = dyn_glNamedProgramLocalParameter4fvEXT ptr_glNamedProgramLocalParameter4fvEXT

foreign import CALLCONV "dynamic" dyn_glNamedProgramLocalParameter4fvEXT
  :: FunPtr (GLuint -> GLenum -> GLuint -> Ptr GLfloat -> IO ())
  ->         GLuint -> GLenum -> GLuint -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glNamedProgramLocalParameter4fvEXT #-}
ptr_glNamedProgramLocalParameter4fvEXT :: FunPtr (GLuint -> GLenum -> GLuint -> Ptr GLfloat -> IO ())
ptr_glNamedProgramLocalParameter4fvEXT = unsafePerformIO $ getCommand "glNamedProgramLocalParameter4fvEXT"

-- glNamedProgramLocalParameterI4iEXT ------------------------------------------

glNamedProgramLocalParameterI4iEXT
  :: GLuint -- ^ @program@.
  -> GLenum -- ^ @target@ of type @ProgramTarget@.
  -> GLuint -- ^ @index@.
  -> GLint -- ^ @x@.
  -> GLint -- ^ @y@.
  -> GLint -- ^ @z@.
  -> GLint -- ^ @w@.
  -> IO ()
glNamedProgramLocalParameterI4iEXT = dyn_glNamedProgramLocalParameterI4iEXT ptr_glNamedProgramLocalParameterI4iEXT

foreign import CALLCONV "dynamic" dyn_glNamedProgramLocalParameterI4iEXT
  :: FunPtr (GLuint -> GLenum -> GLuint -> GLint -> GLint -> GLint -> GLint -> IO ())
  ->         GLuint -> GLenum -> GLuint -> GLint -> GLint -> GLint -> GLint -> IO ()

{-# NOINLINE ptr_glNamedProgramLocalParameterI4iEXT #-}
ptr_glNamedProgramLocalParameterI4iEXT :: FunPtr (GLuint -> GLenum -> GLuint -> GLint -> GLint -> GLint -> GLint -> IO ())
ptr_glNamedProgramLocalParameterI4iEXT = unsafePerformIO $ getCommand "glNamedProgramLocalParameterI4iEXT"

-- glNamedProgramLocalParameterI4ivEXT -----------------------------------------

glNamedProgramLocalParameterI4ivEXT
  :: GLuint -- ^ @program@.
  -> GLenum -- ^ @target@ of type @ProgramTarget@.
  -> GLuint -- ^ @index@.
  -> Ptr GLint -- ^ @params@ pointing to @4@ elements of type @GLint@.
  -> IO ()
glNamedProgramLocalParameterI4ivEXT = dyn_glNamedProgramLocalParameterI4ivEXT ptr_glNamedProgramLocalParameterI4ivEXT

foreign import CALLCONV "dynamic" dyn_glNamedProgramLocalParameterI4ivEXT
  :: FunPtr (GLuint -> GLenum -> GLuint -> Ptr GLint -> IO ())
  ->         GLuint -> GLenum -> GLuint -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glNamedProgramLocalParameterI4ivEXT #-}
ptr_glNamedProgramLocalParameterI4ivEXT :: FunPtr (GLuint -> GLenum -> GLuint -> Ptr GLint -> IO ())
ptr_glNamedProgramLocalParameterI4ivEXT = unsafePerformIO $ getCommand "glNamedProgramLocalParameterI4ivEXT"

-- glNamedProgramLocalParameterI4uiEXT -----------------------------------------

glNamedProgramLocalParameterI4uiEXT
  :: GLuint -- ^ @program@.
  -> GLenum -- ^ @target@ of type @ProgramTarget@.
  -> GLuint -- ^ @index@.
  -> GLuint -- ^ @x@.
  -> GLuint -- ^ @y@.
  -> GLuint -- ^ @z@.
  -> GLuint -- ^ @w@.
  -> IO ()
glNamedProgramLocalParameterI4uiEXT = dyn_glNamedProgramLocalParameterI4uiEXT ptr_glNamedProgramLocalParameterI4uiEXT

foreign import CALLCONV "dynamic" dyn_glNamedProgramLocalParameterI4uiEXT
  :: FunPtr (GLuint -> GLenum -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> IO ())
  ->         GLuint -> GLenum -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> IO ()

{-# NOINLINE ptr_glNamedProgramLocalParameterI4uiEXT #-}
ptr_glNamedProgramLocalParameterI4uiEXT :: FunPtr (GLuint -> GLenum -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> IO ())
ptr_glNamedProgramLocalParameterI4uiEXT = unsafePerformIO $ getCommand "glNamedProgramLocalParameterI4uiEXT"

-- glNamedProgramLocalParameterI4uivEXT ----------------------------------------

glNamedProgramLocalParameterI4uivEXT
  :: GLuint -- ^ @program@.
  -> GLenum -- ^ @target@ of type @ProgramTarget@.
  -> GLuint -- ^ @index@.
  -> Ptr GLuint -- ^ @params@ pointing to @4@ elements of type @GLuint@.
  -> IO ()
glNamedProgramLocalParameterI4uivEXT = dyn_glNamedProgramLocalParameterI4uivEXT ptr_glNamedProgramLocalParameterI4uivEXT

foreign import CALLCONV "dynamic" dyn_glNamedProgramLocalParameterI4uivEXT
  :: FunPtr (GLuint -> GLenum -> GLuint -> Ptr GLuint -> IO ())
  ->         GLuint -> GLenum -> GLuint -> Ptr GLuint -> IO ()

{-# NOINLINE ptr_glNamedProgramLocalParameterI4uivEXT #-}
ptr_glNamedProgramLocalParameterI4uivEXT :: FunPtr (GLuint -> GLenum -> GLuint -> Ptr GLuint -> IO ())
ptr_glNamedProgramLocalParameterI4uivEXT = unsafePerformIO $ getCommand "glNamedProgramLocalParameterI4uivEXT"

-- glNamedProgramLocalParameters4fvEXT -----------------------------------------

glNamedProgramLocalParameters4fvEXT
  :: GLuint -- ^ @program@.
  -> GLenum -- ^ @target@ of type @ProgramTarget@.
  -> GLuint -- ^ @index@.
  -> GLsizei -- ^ @count@.
  -> Ptr GLfloat -- ^ @params@ pointing to @count*4@ elements of type @GLfloat@.
  -> IO ()
glNamedProgramLocalParameters4fvEXT = dyn_glNamedProgramLocalParameters4fvEXT ptr_glNamedProgramLocalParameters4fvEXT

foreign import CALLCONV "dynamic" dyn_glNamedProgramLocalParameters4fvEXT
  :: FunPtr (GLuint -> GLenum -> GLuint -> GLsizei -> Ptr GLfloat -> IO ())
  ->         GLuint -> GLenum -> GLuint -> GLsizei -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glNamedProgramLocalParameters4fvEXT #-}
ptr_glNamedProgramLocalParameters4fvEXT :: FunPtr (GLuint -> GLenum -> GLuint -> GLsizei -> Ptr GLfloat -> IO ())
ptr_glNamedProgramLocalParameters4fvEXT = unsafePerformIO $ getCommand "glNamedProgramLocalParameters4fvEXT"

-- glNamedProgramLocalParametersI4ivEXT ----------------------------------------

glNamedProgramLocalParametersI4ivEXT
  :: GLuint -- ^ @program@.
  -> GLenum -- ^ @target@ of type @ProgramTarget@.
  -> GLuint -- ^ @index@.
  -> GLsizei -- ^ @count@.
  -> Ptr GLint -- ^ @params@ pointing to @count*4@ elements of type @GLint@.
  -> IO ()
glNamedProgramLocalParametersI4ivEXT = dyn_glNamedProgramLocalParametersI4ivEXT ptr_glNamedProgramLocalParametersI4ivEXT

foreign import CALLCONV "dynamic" dyn_glNamedProgramLocalParametersI4ivEXT
  :: FunPtr (GLuint -> GLenum -> GLuint -> GLsizei -> Ptr GLint -> IO ())
  ->         GLuint -> GLenum -> GLuint -> GLsizei -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glNamedProgramLocalParametersI4ivEXT #-}
ptr_glNamedProgramLocalParametersI4ivEXT :: FunPtr (GLuint -> GLenum -> GLuint -> GLsizei -> Ptr GLint -> IO ())
ptr_glNamedProgramLocalParametersI4ivEXT = unsafePerformIO $ getCommand "glNamedProgramLocalParametersI4ivEXT"

-- glNamedProgramLocalParametersI4uivEXT ---------------------------------------

glNamedProgramLocalParametersI4uivEXT
  :: GLuint -- ^ @program@.
  -> GLenum -- ^ @target@ of type @ProgramTarget@.
  -> GLuint -- ^ @index@.
  -> GLsizei -- ^ @count@.
  -> Ptr GLuint -- ^ @params@ pointing to @count*4@ elements of type @GLuint@.
  -> IO ()
glNamedProgramLocalParametersI4uivEXT = dyn_glNamedProgramLocalParametersI4uivEXT ptr_glNamedProgramLocalParametersI4uivEXT

foreign import CALLCONV "dynamic" dyn_glNamedProgramLocalParametersI4uivEXT
  :: FunPtr (GLuint -> GLenum -> GLuint -> GLsizei -> Ptr GLuint -> IO ())
  ->         GLuint -> GLenum -> GLuint -> GLsizei -> Ptr GLuint -> IO ()

{-# NOINLINE ptr_glNamedProgramLocalParametersI4uivEXT #-}
ptr_glNamedProgramLocalParametersI4uivEXT :: FunPtr (GLuint -> GLenum -> GLuint -> GLsizei -> Ptr GLuint -> IO ())
ptr_glNamedProgramLocalParametersI4uivEXT = unsafePerformIO $ getCommand "glNamedProgramLocalParametersI4uivEXT"

-- glNamedProgramStringEXT -----------------------------------------------------

glNamedProgramStringEXT
  :: GLuint -- ^ @program@.
  -> GLenum -- ^ @target@ of type @ProgramTarget@.
  -> GLenum -- ^ @format@ of type @ProgramFormat@.
  -> GLsizei -- ^ @len@.
  -> Ptr a -- ^ @string@ pointing to @len@ elements of type @a@.
  -> IO ()
glNamedProgramStringEXT = dyn_glNamedProgramStringEXT ptr_glNamedProgramStringEXT

foreign import CALLCONV "dynamic" dyn_glNamedProgramStringEXT
  :: FunPtr (GLuint -> GLenum -> GLenum -> GLsizei -> Ptr a -> IO ())
  ->         GLuint -> GLenum -> GLenum -> GLsizei -> Ptr a -> IO ()

{-# NOINLINE ptr_glNamedProgramStringEXT #-}
ptr_glNamedProgramStringEXT :: FunPtr (GLuint -> GLenum -> GLenum -> GLsizei -> Ptr a -> IO ())
ptr_glNamedProgramStringEXT = unsafePerformIO $ getCommand "glNamedProgramStringEXT"

-- glNamedRenderbufferStorage --------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glRenderbufferStorage.xhtml OpenGL 4.x>
glNamedRenderbufferStorage
  :: GLuint -- ^ @renderbuffer@.
  -> GLenum -- ^ @internalformat@.
  -> GLsizei -- ^ @width@.
  -> GLsizei -- ^ @height@.
  -> IO ()
glNamedRenderbufferStorage = dyn_glNamedRenderbufferStorage ptr_glNamedRenderbufferStorage

foreign import CALLCONV "dynamic" dyn_glNamedRenderbufferStorage
  :: FunPtr (GLuint -> GLenum -> GLsizei -> GLsizei -> IO ())
  ->         GLuint -> GLenum -> GLsizei -> GLsizei -> IO ()

{-# NOINLINE ptr_glNamedRenderbufferStorage #-}
ptr_glNamedRenderbufferStorage :: FunPtr (GLuint -> GLenum -> GLsizei -> GLsizei -> IO ())
ptr_glNamedRenderbufferStorage = unsafePerformIO $ getCommand "glNamedRenderbufferStorage"

-- glNamedRenderbufferStorageEXT -----------------------------------------------

glNamedRenderbufferStorageEXT
  :: GLuint -- ^ @renderbuffer@ of type @Renderbuffer@.
  -> GLenum -- ^ @internalformat@ of type @PixelInternalFormat@.
  -> GLsizei -- ^ @width@.
  -> GLsizei -- ^ @height@.
  -> IO ()
glNamedRenderbufferStorageEXT = dyn_glNamedRenderbufferStorageEXT ptr_glNamedRenderbufferStorageEXT

foreign import CALLCONV "dynamic" dyn_glNamedRenderbufferStorageEXT
  :: FunPtr (GLuint -> GLenum -> GLsizei -> GLsizei -> IO ())
  ->         GLuint -> GLenum -> GLsizei -> GLsizei -> IO ()

{-# NOINLINE ptr_glNamedRenderbufferStorageEXT #-}
ptr_glNamedRenderbufferStorageEXT :: FunPtr (GLuint -> GLenum -> GLsizei -> GLsizei -> IO ())
ptr_glNamedRenderbufferStorageEXT = unsafePerformIO $ getCommand "glNamedRenderbufferStorageEXT"

-- glNamedRenderbufferStorageMultisample ---------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glRenderbufferStorageMultisample.xhtml OpenGL 4.x>
glNamedRenderbufferStorageMultisample
  :: GLuint -- ^ @renderbuffer@.
  -> GLsizei -- ^ @samples@.
  -> GLenum -- ^ @internalformat@.
  -> GLsizei -- ^ @width@.
  -> GLsizei -- ^ @height@.
  -> IO ()
glNamedRenderbufferStorageMultisample = dyn_glNamedRenderbufferStorageMultisample ptr_glNamedRenderbufferStorageMultisample

foreign import CALLCONV "dynamic" dyn_glNamedRenderbufferStorageMultisample
  :: FunPtr (GLuint -> GLsizei -> GLenum -> GLsizei -> GLsizei -> IO ())
  ->         GLuint -> GLsizei -> GLenum -> GLsizei -> GLsizei -> IO ()

{-# NOINLINE ptr_glNamedRenderbufferStorageMultisample #-}
ptr_glNamedRenderbufferStorageMultisample :: FunPtr (GLuint -> GLsizei -> GLenum -> GLsizei -> GLsizei -> IO ())
ptr_glNamedRenderbufferStorageMultisample = unsafePerformIO $ getCommand "glNamedRenderbufferStorageMultisample"

-- glNamedRenderbufferStorageMultisampleCoverageEXT ----------------------------

glNamedRenderbufferStorageMultisampleCoverageEXT
  :: GLuint -- ^ @renderbuffer@ of type @Renderbuffer@.
  -> GLsizei -- ^ @coverageSamples@.
  -> GLsizei -- ^ @colorSamples@.
  -> GLenum -- ^ @internalformat@ of type @PixelInternalFormat@.
  -> GLsizei -- ^ @width@.
  -> GLsizei -- ^ @height@.
  -> IO ()
glNamedRenderbufferStorageMultisampleCoverageEXT = dyn_glNamedRenderbufferStorageMultisampleCoverageEXT ptr_glNamedRenderbufferStorageMultisampleCoverageEXT

foreign import CALLCONV "dynamic" dyn_glNamedRenderbufferStorageMultisampleCoverageEXT
  :: FunPtr (GLuint -> GLsizei -> GLsizei -> GLenum -> GLsizei -> GLsizei -> IO ())
  ->         GLuint -> GLsizei -> GLsizei -> GLenum -> GLsizei -> GLsizei -> IO ()

{-# NOINLINE ptr_glNamedRenderbufferStorageMultisampleCoverageEXT #-}
ptr_glNamedRenderbufferStorageMultisampleCoverageEXT :: FunPtr (GLuint -> GLsizei -> GLsizei -> GLenum -> GLsizei -> GLsizei -> IO ())
ptr_glNamedRenderbufferStorageMultisampleCoverageEXT = unsafePerformIO $ getCommand "glNamedRenderbufferStorageMultisampleCoverageEXT"

-- glNamedRenderbufferStorageMultisampleEXT ------------------------------------

glNamedRenderbufferStorageMultisampleEXT
  :: GLuint -- ^ @renderbuffer@ of type @Renderbuffer@.
  -> GLsizei -- ^ @samples@.
  -> GLenum -- ^ @internalformat@ of type @PixelInternalFormat@.
  -> GLsizei -- ^ @width@.
  -> GLsizei -- ^ @height@.
  -> IO ()
glNamedRenderbufferStorageMultisampleEXT = dyn_glNamedRenderbufferStorageMultisampleEXT ptr_glNamedRenderbufferStorageMultisampleEXT

foreign import CALLCONV "dynamic" dyn_glNamedRenderbufferStorageMultisampleEXT
  :: FunPtr (GLuint -> GLsizei -> GLenum -> GLsizei -> GLsizei -> IO ())
  ->         GLuint -> GLsizei -> GLenum -> GLsizei -> GLsizei -> IO ()

{-# NOINLINE ptr_glNamedRenderbufferStorageMultisampleEXT #-}
ptr_glNamedRenderbufferStorageMultisampleEXT :: FunPtr (GLuint -> GLsizei -> GLenum -> GLsizei -> GLsizei -> IO ())
ptr_glNamedRenderbufferStorageMultisampleEXT = unsafePerformIO $ getCommand "glNamedRenderbufferStorageMultisampleEXT"

-- glNamedStringARB ------------------------------------------------------------

glNamedStringARB
  :: GLenum -- ^ @type@.
  -> GLint -- ^ @namelen@.
  -> Ptr GLchar -- ^ @name@ pointing to @namelen@ elements of type @GLchar@.
  -> GLint -- ^ @stringlen@.
  -> Ptr GLchar -- ^ @string@ pointing to @stringlen@ elements of type @GLchar@.
  -> IO ()
glNamedStringARB = dyn_glNamedStringARB ptr_glNamedStringARB

foreign import CALLCONV "dynamic" dyn_glNamedStringARB
  :: FunPtr (GLenum -> GLint -> Ptr GLchar -> GLint -> Ptr GLchar -> IO ())
  ->         GLenum -> GLint -> Ptr GLchar -> GLint -> Ptr GLchar -> IO ()

{-# NOINLINE ptr_glNamedStringARB #-}
ptr_glNamedStringARB :: FunPtr (GLenum -> GLint -> Ptr GLchar -> GLint -> Ptr GLchar -> IO ())
ptr_glNamedStringARB = unsafePerformIO $ getCommand "glNamedStringARB"

-- glNewList -------------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glNewList.xml OpenGL 2.x>
glNewList
  :: GLuint -- ^ @list@ of type @List@.
  -> GLenum -- ^ @mode@ of type @ListMode@.
  -> IO ()
glNewList = dyn_glNewList ptr_glNewList

foreign import CALLCONV "dynamic" dyn_glNewList
  :: FunPtr (GLuint -> GLenum -> IO ())
  ->         GLuint -> GLenum -> IO ()

{-# NOINLINE ptr_glNewList #-}
ptr_glNewList :: FunPtr (GLuint -> GLenum -> IO ())
ptr_glNewList = unsafePerformIO $ getCommand "glNewList"

-- glNewObjectBufferATI --------------------------------------------------------

glNewObjectBufferATI
  :: GLsizei -- ^ @size@.
  -> Ptr a -- ^ @pointer@ pointing to @size@ elements of type @a@.
  -> GLenum -- ^ @usage@ of type @ArrayObjectUsageATI@.
  -> IO GLuint
glNewObjectBufferATI = dyn_glNewObjectBufferATI ptr_glNewObjectBufferATI

foreign import CALLCONV "dynamic" dyn_glNewObjectBufferATI
  :: FunPtr (GLsizei -> Ptr a -> GLenum -> IO GLuint)
  ->         GLsizei -> Ptr a -> GLenum -> IO GLuint

{-# NOINLINE ptr_glNewObjectBufferATI #-}
ptr_glNewObjectBufferATI :: FunPtr (GLsizei -> Ptr a -> GLenum -> IO GLuint)
ptr_glNewObjectBufferATI = unsafePerformIO $ getCommand "glNewObjectBufferATI"

-- glNormal3b ------------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glNormal.xml OpenGL 2.x>
glNormal3b
  :: GLbyte -- ^ @nx@.
  -> GLbyte -- ^ @ny@.
  -> GLbyte -- ^ @nz@.
  -> IO ()
glNormal3b = dyn_glNormal3b ptr_glNormal3b

foreign import CALLCONV "dynamic" dyn_glNormal3b
  :: FunPtr (GLbyte -> GLbyte -> GLbyte -> IO ())
  ->         GLbyte -> GLbyte -> GLbyte -> IO ()

{-# NOINLINE ptr_glNormal3b #-}
ptr_glNormal3b :: FunPtr (GLbyte -> GLbyte -> GLbyte -> IO ())
ptr_glNormal3b = unsafePerformIO $ getCommand "glNormal3b"

-- glNormal3bv -----------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glNormal.xml OpenGL 2.x>
glNormal3bv
  :: Ptr GLbyte -- ^ @v@ pointing to @3@ elements of type @GLbyte@.
  -> IO ()
glNormal3bv = dyn_glNormal3bv ptr_glNormal3bv

foreign import CALLCONV "dynamic" dyn_glNormal3bv
  :: FunPtr (Ptr GLbyte -> IO ())
  ->         Ptr GLbyte -> IO ()

{-# NOINLINE ptr_glNormal3bv #-}
ptr_glNormal3bv :: FunPtr (Ptr GLbyte -> IO ())
ptr_glNormal3bv = unsafePerformIO $ getCommand "glNormal3bv"

-- glNormal3d ------------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glNormal.xml OpenGL 2.x>
glNormal3d
  :: GLdouble -- ^ @nx@ of type @CoordD@.
  -> GLdouble -- ^ @ny@ of type @CoordD@.
  -> GLdouble -- ^ @nz@ of type @CoordD@.
  -> IO ()
glNormal3d = dyn_glNormal3d ptr_glNormal3d

foreign import CALLCONV "dynamic" dyn_glNormal3d
  :: FunPtr (GLdouble -> GLdouble -> GLdouble -> IO ())
  ->         GLdouble -> GLdouble -> GLdouble -> IO ()

{-# NOINLINE ptr_glNormal3d #-}
ptr_glNormal3d :: FunPtr (GLdouble -> GLdouble -> GLdouble -> IO ())
ptr_glNormal3d = unsafePerformIO $ getCommand "glNormal3d"

-- glNormal3dv -----------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glNormal.xml OpenGL 2.x>
glNormal3dv
  :: Ptr GLdouble -- ^ @v@ pointing to @3@ elements of type @CoordD@.
  -> IO ()
glNormal3dv = dyn_glNormal3dv ptr_glNormal3dv

foreign import CALLCONV "dynamic" dyn_glNormal3dv
  :: FunPtr (Ptr GLdouble -> IO ())
  ->         Ptr GLdouble -> IO ()

{-# NOINLINE ptr_glNormal3dv #-}
ptr_glNormal3dv :: FunPtr (Ptr GLdouble -> IO ())
ptr_glNormal3dv = unsafePerformIO $ getCommand "glNormal3dv"

-- glNormal3f ------------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glNormal.xml OpenGL 2.x>
glNormal3f
  :: GLfloat -- ^ @nx@ of type @CoordF@.
  -> GLfloat -- ^ @ny@ of type @CoordF@.
  -> GLfloat -- ^ @nz@ of type @CoordF@.
  -> IO ()
glNormal3f = dyn_glNormal3f ptr_glNormal3f

foreign import CALLCONV "dynamic" dyn_glNormal3f
  :: FunPtr (GLfloat -> GLfloat -> GLfloat -> IO ())
  ->         GLfloat -> GLfloat -> GLfloat -> IO ()

{-# NOINLINE ptr_glNormal3f #-}
ptr_glNormal3f :: FunPtr (GLfloat -> GLfloat -> GLfloat -> IO ())
ptr_glNormal3f = unsafePerformIO $ getCommand "glNormal3f"

-- glNormal3fVertex3fSUN -------------------------------------------------------

glNormal3fVertex3fSUN
  :: GLfloat -- ^ @nx@.
  -> GLfloat -- ^ @ny@.
  -> GLfloat -- ^ @nz@.
  -> GLfloat -- ^ @x@.
  -> GLfloat -- ^ @y@.
  -> GLfloat -- ^ @z@.
  -> IO ()
glNormal3fVertex3fSUN = dyn_glNormal3fVertex3fSUN ptr_glNormal3fVertex3fSUN

foreign import CALLCONV "dynamic" dyn_glNormal3fVertex3fSUN
  :: FunPtr (GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
  ->         GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ()

{-# NOINLINE ptr_glNormal3fVertex3fSUN #-}
ptr_glNormal3fVertex3fSUN :: FunPtr (GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
ptr_glNormal3fVertex3fSUN = unsafePerformIO $ getCommand "glNormal3fVertex3fSUN"

-- glNormal3fVertex3fvSUN ------------------------------------------------------

glNormal3fVertex3fvSUN
  :: Ptr GLfloat -- ^ @n@ pointing to @3@ elements of type @GLfloat@.
  -> Ptr GLfloat -- ^ @v@ pointing to @3@ elements of type @GLfloat@.
  -> IO ()
glNormal3fVertex3fvSUN = dyn_glNormal3fVertex3fvSUN ptr_glNormal3fVertex3fvSUN

foreign import CALLCONV "dynamic" dyn_glNormal3fVertex3fvSUN
  :: FunPtr (Ptr GLfloat -> Ptr GLfloat -> IO ())
  ->         Ptr GLfloat -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glNormal3fVertex3fvSUN #-}
ptr_glNormal3fVertex3fvSUN :: FunPtr (Ptr GLfloat -> Ptr GLfloat -> IO ())
ptr_glNormal3fVertex3fvSUN = unsafePerformIO $ getCommand "glNormal3fVertex3fvSUN"

-- glNormal3fv -----------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glNormal.xml OpenGL 2.x>
glNormal3fv
  :: Ptr GLfloat -- ^ @v@ pointing to @3@ elements of type @CoordF@.
  -> IO ()
glNormal3fv = dyn_glNormal3fv ptr_glNormal3fv

foreign import CALLCONV "dynamic" dyn_glNormal3fv
  :: FunPtr (Ptr GLfloat -> IO ())
  ->         Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glNormal3fv #-}
ptr_glNormal3fv :: FunPtr (Ptr GLfloat -> IO ())
ptr_glNormal3fv = unsafePerformIO $ getCommand "glNormal3fv"

-- glNormal3hNV ----------------------------------------------------------------

glNormal3hNV
  :: GLhalfNV -- ^ @nx@ of type @Half16NV@.
  -> GLhalfNV -- ^ @ny@ of type @Half16NV@.
  -> GLhalfNV -- ^ @nz@ of type @Half16NV@.
  -> IO ()
glNormal3hNV = dyn_glNormal3hNV ptr_glNormal3hNV

foreign import CALLCONV "dynamic" dyn_glNormal3hNV
  :: FunPtr (GLhalfNV -> GLhalfNV -> GLhalfNV -> IO ())
  ->         GLhalfNV -> GLhalfNV -> GLhalfNV -> IO ()

{-# NOINLINE ptr_glNormal3hNV #-}
ptr_glNormal3hNV :: FunPtr (GLhalfNV -> GLhalfNV -> GLhalfNV -> IO ())
ptr_glNormal3hNV = unsafePerformIO $ getCommand "glNormal3hNV"

-- glNormal3hvNV ---------------------------------------------------------------

glNormal3hvNV
  :: Ptr GLhalfNV -- ^ @v@ pointing to @3@ elements of type @Half16NV@.
  -> IO ()
glNormal3hvNV = dyn_glNormal3hvNV ptr_glNormal3hvNV

foreign import CALLCONV "dynamic" dyn_glNormal3hvNV
  :: FunPtr (Ptr GLhalfNV -> IO ())
  ->         Ptr GLhalfNV -> IO ()

{-# NOINLINE ptr_glNormal3hvNV #-}
ptr_glNormal3hvNV :: FunPtr (Ptr GLhalfNV -> IO ())
ptr_glNormal3hvNV = unsafePerformIO $ getCommand "glNormal3hvNV"

-- glNormal3i ------------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glNormal.xml OpenGL 2.x>
glNormal3i
  :: GLint -- ^ @nx@.
  -> GLint -- ^ @ny@.
  -> GLint -- ^ @nz@.
  -> IO ()
glNormal3i = dyn_glNormal3i ptr_glNormal3i

foreign import CALLCONV "dynamic" dyn_glNormal3i
  :: FunPtr (GLint -> GLint -> GLint -> IO ())
  ->         GLint -> GLint -> GLint -> IO ()

{-# NOINLINE ptr_glNormal3i #-}
ptr_glNormal3i :: FunPtr (GLint -> GLint -> GLint -> IO ())
ptr_glNormal3i = unsafePerformIO $ getCommand "glNormal3i"

-- glNormal3iv -----------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glNormal.xml OpenGL 2.x>
glNormal3iv
  :: Ptr GLint -- ^ @v@ pointing to @3@ elements of type @GLint@.
  -> IO ()
glNormal3iv = dyn_glNormal3iv ptr_glNormal3iv

foreign import CALLCONV "dynamic" dyn_glNormal3iv
  :: FunPtr (Ptr GLint -> IO ())
  ->         Ptr GLint -> IO ()

{-# NOINLINE ptr_glNormal3iv #-}
ptr_glNormal3iv :: FunPtr (Ptr GLint -> IO ())
ptr_glNormal3iv = unsafePerformIO $ getCommand "glNormal3iv"

-- glNormal3s ------------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glNormal.xml OpenGL 2.x>
glNormal3s
  :: GLshort -- ^ @nx@.
  -> GLshort -- ^ @ny@.
  -> GLshort -- ^ @nz@.
  -> IO ()
glNormal3s = dyn_glNormal3s ptr_glNormal3s

foreign import CALLCONV "dynamic" dyn_glNormal3s
  :: FunPtr (GLshort -> GLshort -> GLshort -> IO ())
  ->         GLshort -> GLshort -> GLshort -> IO ()

{-# NOINLINE ptr_glNormal3s #-}
ptr_glNormal3s :: FunPtr (GLshort -> GLshort -> GLshort -> IO ())
ptr_glNormal3s = unsafePerformIO $ getCommand "glNormal3s"

-- glNormal3sv -----------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glNormal.xml OpenGL 2.x>
glNormal3sv
  :: Ptr GLshort -- ^ @v@ pointing to @3@ elements of type @GLshort@.
  -> IO ()
glNormal3sv = dyn_glNormal3sv ptr_glNormal3sv

foreign import CALLCONV "dynamic" dyn_glNormal3sv
  :: FunPtr (Ptr GLshort -> IO ())
  ->         Ptr GLshort -> IO ()

{-# NOINLINE ptr_glNormal3sv #-}
ptr_glNormal3sv :: FunPtr (Ptr GLshort -> IO ())
ptr_glNormal3sv = unsafePerformIO $ getCommand "glNormal3sv"

-- glNormal3x ------------------------------------------------------------------

glNormal3x
  :: GLfixed -- ^ @nx@.
  -> GLfixed -- ^ @ny@.
  -> GLfixed -- ^ @nz@.
  -> IO ()
glNormal3x = dyn_glNormal3x ptr_glNormal3x

foreign import CALLCONV "dynamic" dyn_glNormal3x
  :: FunPtr (GLfixed -> GLfixed -> GLfixed -> IO ())
  ->         GLfixed -> GLfixed -> GLfixed -> IO ()

{-# NOINLINE ptr_glNormal3x #-}
ptr_glNormal3x :: FunPtr (GLfixed -> GLfixed -> GLfixed -> IO ())
ptr_glNormal3x = unsafePerformIO $ getCommand "glNormal3x"

-- glNormal3xOES ---------------------------------------------------------------

glNormal3xOES
  :: GLfixed -- ^ @nx@.
  -> GLfixed -- ^ @ny@.
  -> GLfixed -- ^ @nz@.
  -> IO ()
glNormal3xOES = dyn_glNormal3xOES ptr_glNormal3xOES

foreign import CALLCONV "dynamic" dyn_glNormal3xOES
  :: FunPtr (GLfixed -> GLfixed -> GLfixed -> IO ())
  ->         GLfixed -> GLfixed -> GLfixed -> IO ()

{-# NOINLINE ptr_glNormal3xOES #-}
ptr_glNormal3xOES :: FunPtr (GLfixed -> GLfixed -> GLfixed -> IO ())
ptr_glNormal3xOES = unsafePerformIO $ getCommand "glNormal3xOES"

-- glNormal3xvOES --------------------------------------------------------------

glNormal3xvOES
  :: Ptr GLfixed -- ^ @coords@ pointing to @3@ elements of type @GLfixed@.
  -> IO ()
glNormal3xvOES = dyn_glNormal3xvOES ptr_glNormal3xvOES

foreign import CALLCONV "dynamic" dyn_glNormal3xvOES
  :: FunPtr (Ptr GLfixed -> IO ())
  ->         Ptr GLfixed -> IO ()

{-# NOINLINE ptr_glNormal3xvOES #-}
ptr_glNormal3xvOES :: FunPtr (Ptr GLfixed -> IO ())
ptr_glNormal3xvOES = unsafePerformIO $ getCommand "glNormal3xvOES"

-- glNormalFormatNV ------------------------------------------------------------

glNormalFormatNV
  :: GLenum -- ^ @type@.
  -> GLsizei -- ^ @stride@.
  -> IO ()
glNormalFormatNV = dyn_glNormalFormatNV ptr_glNormalFormatNV

foreign import CALLCONV "dynamic" dyn_glNormalFormatNV
  :: FunPtr (GLenum -> GLsizei -> IO ())
  ->         GLenum -> GLsizei -> IO ()

{-# NOINLINE ptr_glNormalFormatNV #-}
ptr_glNormalFormatNV :: FunPtr (GLenum -> GLsizei -> IO ())
ptr_glNormalFormatNV = unsafePerformIO $ getCommand "glNormalFormatNV"

-- glNormalP3ui ----------------------------------------------------------------

glNormalP3ui
  :: GLenum -- ^ @type@.
  -> GLuint -- ^ @coords@.
  -> IO ()
glNormalP3ui = dyn_glNormalP3ui ptr_glNormalP3ui

foreign import CALLCONV "dynamic" dyn_glNormalP3ui
  :: FunPtr (GLenum -> GLuint -> IO ())
  ->         GLenum -> GLuint -> IO ()

{-# NOINLINE ptr_glNormalP3ui #-}
ptr_glNormalP3ui :: FunPtr (GLenum -> GLuint -> IO ())
ptr_glNormalP3ui = unsafePerformIO $ getCommand "glNormalP3ui"

-- glNormalP3uiv ---------------------------------------------------------------

glNormalP3uiv
  :: GLenum -- ^ @type@.
  -> Ptr GLuint -- ^ @coords@ pointing to @1@ elements of type @GLuint@.
  -> IO ()
glNormalP3uiv = dyn_glNormalP3uiv ptr_glNormalP3uiv

foreign import CALLCONV "dynamic" dyn_glNormalP3uiv
  :: FunPtr (GLenum -> Ptr GLuint -> IO ())
  ->         GLenum -> Ptr GLuint -> IO ()

{-# NOINLINE ptr_glNormalP3uiv #-}
ptr_glNormalP3uiv :: FunPtr (GLenum -> Ptr GLuint -> IO ())
ptr_glNormalP3uiv = unsafePerformIO $ getCommand "glNormalP3uiv"

-- glNormalPointer -------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glNormalPointer.xml OpenGL 2.x>
glNormalPointer
  :: GLenum -- ^ @type@ of type @NormalPointerType@.
  -> GLsizei -- ^ @stride@.
  -> Ptr a -- ^ @pointer@ pointing to @COMPSIZE(type,stride)@ elements of type @a@.
  -> IO ()
glNormalPointer = dyn_glNormalPointer ptr_glNormalPointer

foreign import CALLCONV "dynamic" dyn_glNormalPointer
  :: FunPtr (GLenum -> GLsizei -> Ptr a -> IO ())
  ->         GLenum -> GLsizei -> Ptr a -> IO ()

{-# NOINLINE ptr_glNormalPointer #-}
ptr_glNormalPointer :: FunPtr (GLenum -> GLsizei -> Ptr a -> IO ())
ptr_glNormalPointer = unsafePerformIO $ getCommand "glNormalPointer"

-- glNormalPointerEXT ----------------------------------------------------------

glNormalPointerEXT
  :: GLenum -- ^ @type@ of type @NormalPointerType@.
  -> GLsizei -- ^ @stride@.
  -> GLsizei -- ^ @count@.
  -> Ptr a -- ^ @pointer@ pointing to @COMPSIZE(type,stride,count)@ elements of type @a@.
  -> IO ()
glNormalPointerEXT = dyn_glNormalPointerEXT ptr_glNormalPointerEXT

foreign import CALLCONV "dynamic" dyn_glNormalPointerEXT
  :: FunPtr (GLenum -> GLsizei -> GLsizei -> Ptr a -> IO ())
  ->         GLenum -> GLsizei -> GLsizei -> Ptr a -> IO ()

{-# NOINLINE ptr_glNormalPointerEXT #-}
ptr_glNormalPointerEXT :: FunPtr (GLenum -> GLsizei -> GLsizei -> Ptr a -> IO ())
ptr_glNormalPointerEXT = unsafePerformIO $ getCommand "glNormalPointerEXT"

-- glNormalPointerListIBM ------------------------------------------------------

glNormalPointerListIBM
  :: GLenum -- ^ @type@ of type @NormalPointerType@.
  -> GLint -- ^ @stride@.
  -> Ptr (Ptr a) -- ^ @pointer@ pointing to @COMPSIZE(type,stride)@ elements of type @Ptr a@.
  -> GLint -- ^ @ptrstride@.
  -> IO ()
glNormalPointerListIBM = dyn_glNormalPointerListIBM ptr_glNormalPointerListIBM

foreign import CALLCONV "dynamic" dyn_glNormalPointerListIBM
  :: FunPtr (GLenum -> GLint -> Ptr (Ptr a) -> GLint -> IO ())
  ->         GLenum -> GLint -> Ptr (Ptr a) -> GLint -> IO ()

{-# NOINLINE ptr_glNormalPointerListIBM #-}
ptr_glNormalPointerListIBM :: FunPtr (GLenum -> GLint -> Ptr (Ptr a) -> GLint -> IO ())
ptr_glNormalPointerListIBM = unsafePerformIO $ getCommand "glNormalPointerListIBM"

-- glNormalPointervINTEL -------------------------------------------------------

glNormalPointervINTEL
  :: GLenum -- ^ @type@ of type @NormalPointerType@.
  -> Ptr (Ptr a) -- ^ @pointer@ pointing to @4@ elements of type @Ptr a@.
  -> IO ()
glNormalPointervINTEL = dyn_glNormalPointervINTEL ptr_glNormalPointervINTEL

foreign import CALLCONV "dynamic" dyn_glNormalPointervINTEL
  :: FunPtr (GLenum -> Ptr (Ptr a) -> IO ())
  ->         GLenum -> Ptr (Ptr a) -> IO ()

{-# NOINLINE ptr_glNormalPointervINTEL #-}
ptr_glNormalPointervINTEL :: FunPtr (GLenum -> Ptr (Ptr a) -> IO ())
ptr_glNormalPointervINTEL = unsafePerformIO $ getCommand "glNormalPointervINTEL"

-- glNormalStream3bATI ---------------------------------------------------------

glNormalStream3bATI
  :: GLenum -- ^ @stream@ of type @VertexStreamATI@.
  -> GLbyte -- ^ @nx@.
  -> GLbyte -- ^ @ny@.
  -> GLbyte -- ^ @nz@.
  -> IO ()
glNormalStream3bATI = dyn_glNormalStream3bATI ptr_glNormalStream3bATI

foreign import CALLCONV "dynamic" dyn_glNormalStream3bATI
  :: FunPtr (GLenum -> GLbyte -> GLbyte -> GLbyte -> IO ())
  ->         GLenum -> GLbyte -> GLbyte -> GLbyte -> IO ()

{-# NOINLINE ptr_glNormalStream3bATI #-}
ptr_glNormalStream3bATI :: FunPtr (GLenum -> GLbyte -> GLbyte -> GLbyte -> IO ())
ptr_glNormalStream3bATI = unsafePerformIO $ getCommand "glNormalStream3bATI"

-- glNormalStream3bvATI --------------------------------------------------------

glNormalStream3bvATI
  :: GLenum -- ^ @stream@ of type @VertexStreamATI@.
  -> Ptr GLbyte -- ^ @coords@ pointing to @3@ elements of type @GLbyte@.
  -> IO ()
glNormalStream3bvATI = dyn_glNormalStream3bvATI ptr_glNormalStream3bvATI

foreign import CALLCONV "dynamic" dyn_glNormalStream3bvATI
  :: FunPtr (GLenum -> Ptr GLbyte -> IO ())
  ->         GLenum -> Ptr GLbyte -> IO ()

{-# NOINLINE ptr_glNormalStream3bvATI #-}
ptr_glNormalStream3bvATI :: FunPtr (GLenum -> Ptr GLbyte -> IO ())
ptr_glNormalStream3bvATI = unsafePerformIO $ getCommand "glNormalStream3bvATI"

-- glNormalStream3dATI ---------------------------------------------------------

glNormalStream3dATI
  :: GLenum -- ^ @stream@ of type @VertexStreamATI@.
  -> GLdouble -- ^ @nx@.
  -> GLdouble -- ^ @ny@.
  -> GLdouble -- ^ @nz@.
  -> IO ()
glNormalStream3dATI = dyn_glNormalStream3dATI ptr_glNormalStream3dATI

foreign import CALLCONV "dynamic" dyn_glNormalStream3dATI
  :: FunPtr (GLenum -> GLdouble -> GLdouble -> GLdouble -> IO ())
  ->         GLenum -> GLdouble -> GLdouble -> GLdouble -> IO ()

{-# NOINLINE ptr_glNormalStream3dATI #-}
ptr_glNormalStream3dATI :: FunPtr (GLenum -> GLdouble -> GLdouble -> GLdouble -> IO ())
ptr_glNormalStream3dATI = unsafePerformIO $ getCommand "glNormalStream3dATI"

-- glNormalStream3dvATI --------------------------------------------------------

glNormalStream3dvATI
  :: GLenum -- ^ @stream@ of type @VertexStreamATI@.
  -> Ptr GLdouble -- ^ @coords@ pointing to @3@ elements of type @GLdouble@.
  -> IO ()
glNormalStream3dvATI = dyn_glNormalStream3dvATI ptr_glNormalStream3dvATI

foreign import CALLCONV "dynamic" dyn_glNormalStream3dvATI
  :: FunPtr (GLenum -> Ptr GLdouble -> IO ())
  ->         GLenum -> Ptr GLdouble -> IO ()

{-# NOINLINE ptr_glNormalStream3dvATI #-}
ptr_glNormalStream3dvATI :: FunPtr (GLenum -> Ptr GLdouble -> IO ())
ptr_glNormalStream3dvATI = unsafePerformIO $ getCommand "glNormalStream3dvATI"

-- glNormalStream3fATI ---------------------------------------------------------

glNormalStream3fATI
  :: GLenum -- ^ @stream@ of type @VertexStreamATI@.
  -> GLfloat -- ^ @nx@.
  -> GLfloat -- ^ @ny@.
  -> GLfloat -- ^ @nz@.
  -> IO ()
glNormalStream3fATI = dyn_glNormalStream3fATI ptr_glNormalStream3fATI

foreign import CALLCONV "dynamic" dyn_glNormalStream3fATI
  :: FunPtr (GLenum -> GLfloat -> GLfloat -> GLfloat -> IO ())
  ->         GLenum -> GLfloat -> GLfloat -> GLfloat -> IO ()

{-# NOINLINE ptr_glNormalStream3fATI #-}
ptr_glNormalStream3fATI :: FunPtr (GLenum -> GLfloat -> GLfloat -> GLfloat -> IO ())
ptr_glNormalStream3fATI = unsafePerformIO $ getCommand "glNormalStream3fATI"

-- glNormalStream3fvATI --------------------------------------------------------

glNormalStream3fvATI
  :: GLenum -- ^ @stream@ of type @VertexStreamATI@.
  -> Ptr GLfloat -- ^ @coords@ pointing to @3@ elements of type @GLfloat@.
  -> IO ()
glNormalStream3fvATI = dyn_glNormalStream3fvATI ptr_glNormalStream3fvATI

foreign import CALLCONV "dynamic" dyn_glNormalStream3fvATI
  :: FunPtr (GLenum -> Ptr GLfloat -> IO ())
  ->         GLenum -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glNormalStream3fvATI #-}
ptr_glNormalStream3fvATI :: FunPtr (GLenum -> Ptr GLfloat -> IO ())
ptr_glNormalStream3fvATI = unsafePerformIO $ getCommand "glNormalStream3fvATI"

-- glNormalStream3iATI ---------------------------------------------------------

glNormalStream3iATI
  :: GLenum -- ^ @stream@ of type @VertexStreamATI@.
  -> GLint -- ^ @nx@.
  -> GLint -- ^ @ny@.
  -> GLint -- ^ @nz@.
  -> IO ()
glNormalStream3iATI = dyn_glNormalStream3iATI ptr_glNormalStream3iATI

foreign import CALLCONV "dynamic" dyn_glNormalStream3iATI
  :: FunPtr (GLenum -> GLint -> GLint -> GLint -> IO ())
  ->         GLenum -> GLint -> GLint -> GLint -> IO ()

{-# NOINLINE ptr_glNormalStream3iATI #-}
ptr_glNormalStream3iATI :: FunPtr (GLenum -> GLint -> GLint -> GLint -> IO ())
ptr_glNormalStream3iATI = unsafePerformIO $ getCommand "glNormalStream3iATI"

-- glNormalStream3ivATI --------------------------------------------------------

glNormalStream3ivATI
  :: GLenum -- ^ @stream@ of type @VertexStreamATI@.
  -> Ptr GLint -- ^ @coords@ pointing to @3@ elements of type @GLint@.
  -> IO ()
glNormalStream3ivATI = dyn_glNormalStream3ivATI ptr_glNormalStream3ivATI

foreign import CALLCONV "dynamic" dyn_glNormalStream3ivATI
  :: FunPtr (GLenum -> Ptr GLint -> IO ())
  ->         GLenum -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glNormalStream3ivATI #-}
ptr_glNormalStream3ivATI :: FunPtr (GLenum -> Ptr GLint -> IO ())
ptr_glNormalStream3ivATI = unsafePerformIO $ getCommand "glNormalStream3ivATI"

-- glNormalStream3sATI ---------------------------------------------------------

glNormalStream3sATI
  :: GLenum -- ^ @stream@ of type @VertexStreamATI@.
  -> GLshort -- ^ @nx@.
  -> GLshort -- ^ @ny@.
  -> GLshort -- ^ @nz@.
  -> IO ()
glNormalStream3sATI = dyn_glNormalStream3sATI ptr_glNormalStream3sATI

foreign import CALLCONV "dynamic" dyn_glNormalStream3sATI
  :: FunPtr (GLenum -> GLshort -> GLshort -> GLshort -> IO ())
  ->         GLenum -> GLshort -> GLshort -> GLshort -> IO ()

{-# NOINLINE ptr_glNormalStream3sATI #-}
ptr_glNormalStream3sATI :: FunPtr (GLenum -> GLshort -> GLshort -> GLshort -> IO ())
ptr_glNormalStream3sATI = unsafePerformIO $ getCommand "glNormalStream3sATI"

-- glNormalStream3svATI --------------------------------------------------------

glNormalStream3svATI
  :: GLenum -- ^ @stream@ of type @VertexStreamATI@.
  -> Ptr GLshort -- ^ @coords@ pointing to @3@ elements of type @GLshort@.
  -> IO ()
glNormalStream3svATI = dyn_glNormalStream3svATI ptr_glNormalStream3svATI

foreign import CALLCONV "dynamic" dyn_glNormalStream3svATI
  :: FunPtr (GLenum -> Ptr GLshort -> IO ())
  ->         GLenum -> Ptr GLshort -> IO ()

{-# NOINLINE ptr_glNormalStream3svATI #-}
ptr_glNormalStream3svATI :: FunPtr (GLenum -> Ptr GLshort -> IO ())
ptr_glNormalStream3svATI = unsafePerformIO $ getCommand "glNormalStream3svATI"

-- glObjectLabel ---------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glObjectLabel.xhtml OpenGL 4.x>
glObjectLabel
  :: GLenum -- ^ @identifier@.
  -> GLuint -- ^ @name@.
  -> GLsizei -- ^ @length@.
  -> Ptr GLchar -- ^ @label@ pointing to @COMPSIZE(label,length)@ elements of type @GLchar@.
  -> IO ()
glObjectLabel = dyn_glObjectLabel ptr_glObjectLabel

foreign import CALLCONV "dynamic" dyn_glObjectLabel
  :: FunPtr (GLenum -> GLuint -> GLsizei -> Ptr GLchar -> IO ())
  ->         GLenum -> GLuint -> GLsizei -> Ptr GLchar -> IO ()

{-# NOINLINE ptr_glObjectLabel #-}
ptr_glObjectLabel :: FunPtr (GLenum -> GLuint -> GLsizei -> Ptr GLchar -> IO ())
ptr_glObjectLabel = unsafePerformIO $ getCommand "glObjectLabel"

-- glObjectLabelKHR ------------------------------------------------------------

glObjectLabelKHR
  :: GLenum -- ^ @identifier@.
  -> GLuint -- ^ @name@.
  -> GLsizei -- ^ @length@.
  -> Ptr GLchar -- ^ @label@.
  -> IO ()
glObjectLabelKHR = dyn_glObjectLabelKHR ptr_glObjectLabelKHR

foreign import CALLCONV "dynamic" dyn_glObjectLabelKHR
  :: FunPtr (GLenum -> GLuint -> GLsizei -> Ptr GLchar -> IO ())
  ->         GLenum -> GLuint -> GLsizei -> Ptr GLchar -> IO ()

{-# NOINLINE ptr_glObjectLabelKHR #-}
ptr_glObjectLabelKHR :: FunPtr (GLenum -> GLuint -> GLsizei -> Ptr GLchar -> IO ())
ptr_glObjectLabelKHR = unsafePerformIO $ getCommand "glObjectLabelKHR"

-- glObjectPtrLabel ------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glObjectPtrLabel.xhtml OpenGL 4.x>
glObjectPtrLabel
  :: Ptr a -- ^ @ptr@.
  -> GLsizei -- ^ @length@.
  -> Ptr GLchar -- ^ @label@ pointing to @COMPSIZE(label,length)@ elements of type @GLchar@.
  -> IO ()
glObjectPtrLabel = dyn_glObjectPtrLabel ptr_glObjectPtrLabel

foreign import CALLCONV "dynamic" dyn_glObjectPtrLabel
  :: FunPtr (Ptr a -> GLsizei -> Ptr GLchar -> IO ())
  ->         Ptr a -> GLsizei -> Ptr GLchar -> IO ()

{-# NOINLINE ptr_glObjectPtrLabel #-}
ptr_glObjectPtrLabel :: FunPtr (Ptr a -> GLsizei -> Ptr GLchar -> IO ())
ptr_glObjectPtrLabel = unsafePerformIO $ getCommand "glObjectPtrLabel"

-- glObjectPtrLabelKHR ---------------------------------------------------------

glObjectPtrLabelKHR
  :: Ptr a -- ^ @ptr@.
  -> GLsizei -- ^ @length@.
  -> Ptr GLchar -- ^ @label@.
  -> IO ()
glObjectPtrLabelKHR = dyn_glObjectPtrLabelKHR ptr_glObjectPtrLabelKHR

foreign import CALLCONV "dynamic" dyn_glObjectPtrLabelKHR
  :: FunPtr (Ptr a -> GLsizei -> Ptr GLchar -> IO ())
  ->         Ptr a -> GLsizei -> Ptr GLchar -> IO ()

{-# NOINLINE ptr_glObjectPtrLabelKHR #-}
ptr_glObjectPtrLabelKHR :: FunPtr (Ptr a -> GLsizei -> Ptr GLchar -> IO ())
ptr_glObjectPtrLabelKHR = unsafePerformIO $ getCommand "glObjectPtrLabelKHR"

-- glObjectPurgeableAPPLE ------------------------------------------------------

glObjectPurgeableAPPLE
  :: GLenum -- ^ @objectType@.
  -> GLuint -- ^ @name@.
  -> GLenum -- ^ @option@.
  -> IO GLenum
glObjectPurgeableAPPLE = dyn_glObjectPurgeableAPPLE ptr_glObjectPurgeableAPPLE

foreign import CALLCONV "dynamic" dyn_glObjectPurgeableAPPLE
  :: FunPtr (GLenum -> GLuint -> GLenum -> IO GLenum)
  ->         GLenum -> GLuint -> GLenum -> IO GLenum

{-# NOINLINE ptr_glObjectPurgeableAPPLE #-}
ptr_glObjectPurgeableAPPLE :: FunPtr (GLenum -> GLuint -> GLenum -> IO GLenum)
ptr_glObjectPurgeableAPPLE = unsafePerformIO $ getCommand "glObjectPurgeableAPPLE"

-- glObjectUnpurgeableAPPLE ----------------------------------------------------

glObjectUnpurgeableAPPLE
  :: GLenum -- ^ @objectType@.
  -> GLuint -- ^ @name@.
  -> GLenum -- ^ @option@.
  -> IO GLenum
glObjectUnpurgeableAPPLE = dyn_glObjectUnpurgeableAPPLE ptr_glObjectUnpurgeableAPPLE

foreign import CALLCONV "dynamic" dyn_glObjectUnpurgeableAPPLE
  :: FunPtr (GLenum -> GLuint -> GLenum -> IO GLenum)
  ->         GLenum -> GLuint -> GLenum -> IO GLenum

{-# NOINLINE ptr_glObjectUnpurgeableAPPLE #-}
ptr_glObjectUnpurgeableAPPLE :: FunPtr (GLenum -> GLuint -> GLenum -> IO GLenum)
ptr_glObjectUnpurgeableAPPLE = unsafePerformIO $ getCommand "glObjectUnpurgeableAPPLE"

-- glOrtho ---------------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glOrtho.xml OpenGL 2.x>
glOrtho
  :: GLdouble -- ^ @left@.
  -> GLdouble -- ^ @right@.
  -> GLdouble -- ^ @bottom@.
  -> GLdouble -- ^ @top@.
  -> GLdouble -- ^ @zNear@.
  -> GLdouble -- ^ @zFar@.
  -> IO ()
glOrtho = dyn_glOrtho ptr_glOrtho

foreign import CALLCONV "dynamic" dyn_glOrtho
  :: FunPtr (GLdouble -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ())
  ->         GLdouble -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ()

{-# NOINLINE ptr_glOrtho #-}
ptr_glOrtho :: FunPtr (GLdouble -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ())
ptr_glOrtho = unsafePerformIO $ getCommand "glOrtho"

-- glOrthof --------------------------------------------------------------------

glOrthof
  :: GLfloat -- ^ @l@.
  -> GLfloat -- ^ @r@.
  -> GLfloat -- ^ @b@.
  -> GLfloat -- ^ @t@.
  -> GLfloat -- ^ @n@.
  -> GLfloat -- ^ @f@.
  -> IO ()
glOrthof = dyn_glOrthof ptr_glOrthof

foreign import CALLCONV "dynamic" dyn_glOrthof
  :: FunPtr (GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
  ->         GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ()

{-# NOINLINE ptr_glOrthof #-}
ptr_glOrthof :: FunPtr (GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
ptr_glOrthof = unsafePerformIO $ getCommand "glOrthof"

-- glOrthofOES -----------------------------------------------------------------

glOrthofOES
  :: GLfloat -- ^ @l@.
  -> GLfloat -- ^ @r@.
  -> GLfloat -- ^ @b@.
  -> GLfloat -- ^ @t@.
  -> GLfloat -- ^ @n@.
  -> GLfloat -- ^ @f@.
  -> IO ()
glOrthofOES = dyn_glOrthofOES ptr_glOrthofOES

foreign import CALLCONV "dynamic" dyn_glOrthofOES
  :: FunPtr (GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
  ->         GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ()

{-# NOINLINE ptr_glOrthofOES #-}
ptr_glOrthofOES :: FunPtr (GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
ptr_glOrthofOES = unsafePerformIO $ getCommand "glOrthofOES"

-- glOrthox --------------------------------------------------------------------

glOrthox
  :: GLfixed -- ^ @l@.
  -> GLfixed -- ^ @r@.
  -> GLfixed -- ^ @b@.
  -> GLfixed -- ^ @t@.
  -> GLfixed -- ^ @n@.
  -> GLfixed -- ^ @f@.
  -> IO ()
glOrthox = dyn_glOrthox ptr_glOrthox

foreign import CALLCONV "dynamic" dyn_glOrthox
  :: FunPtr (GLfixed -> GLfixed -> GLfixed -> GLfixed -> GLfixed -> GLfixed -> IO ())
  ->         GLfixed -> GLfixed -> GLfixed -> GLfixed -> GLfixed -> GLfixed -> IO ()

{-# NOINLINE ptr_glOrthox #-}
ptr_glOrthox :: FunPtr (GLfixed -> GLfixed -> GLfixed -> GLfixed -> GLfixed -> GLfixed -> IO ())
ptr_glOrthox = unsafePerformIO $ getCommand "glOrthox"

-- glOrthoxOES -----------------------------------------------------------------

glOrthoxOES
  :: GLfixed -- ^ @l@.
  -> GLfixed -- ^ @r@.
  -> GLfixed -- ^ @b@.
  -> GLfixed -- ^ @t@.
  -> GLfixed -- ^ @n@.
  -> GLfixed -- ^ @f@.
  -> IO ()
glOrthoxOES = dyn_glOrthoxOES ptr_glOrthoxOES

foreign import CALLCONV "dynamic" dyn_glOrthoxOES
  :: FunPtr (GLfixed -> GLfixed -> GLfixed -> GLfixed -> GLfixed -> GLfixed -> IO ())
  ->         GLfixed -> GLfixed -> GLfixed -> GLfixed -> GLfixed -> GLfixed -> IO ()

{-# NOINLINE ptr_glOrthoxOES #-}
ptr_glOrthoxOES :: FunPtr (GLfixed -> GLfixed -> GLfixed -> GLfixed -> GLfixed -> GLfixed -> IO ())
ptr_glOrthoxOES = unsafePerformIO $ getCommand "glOrthoxOES"

-- glPNTrianglesfATI -----------------------------------------------------------

glPNTrianglesfATI
  :: GLenum -- ^ @pname@ of type @PNTrianglesPNameATI@.
  -> GLfloat -- ^ @param@.
  -> IO ()
glPNTrianglesfATI = dyn_glPNTrianglesfATI ptr_glPNTrianglesfATI

foreign import CALLCONV "dynamic" dyn_glPNTrianglesfATI
  :: FunPtr (GLenum -> GLfloat -> IO ())
  ->         GLenum -> GLfloat -> IO ()

{-# NOINLINE ptr_glPNTrianglesfATI #-}
ptr_glPNTrianglesfATI :: FunPtr (GLenum -> GLfloat -> IO ())
ptr_glPNTrianglesfATI = unsafePerformIO $ getCommand "glPNTrianglesfATI"

-- glPNTrianglesiATI -----------------------------------------------------------

glPNTrianglesiATI
  :: GLenum -- ^ @pname@ of type @PNTrianglesPNameATI@.
  -> GLint -- ^ @param@.
  -> IO ()
glPNTrianglesiATI = dyn_glPNTrianglesiATI ptr_glPNTrianglesiATI

foreign import CALLCONV "dynamic" dyn_glPNTrianglesiATI
  :: FunPtr (GLenum -> GLint -> IO ())
  ->         GLenum -> GLint -> IO ()

{-# NOINLINE ptr_glPNTrianglesiATI #-}
ptr_glPNTrianglesiATI :: FunPtr (GLenum -> GLint -> IO ())
ptr_glPNTrianglesiATI = unsafePerformIO $ getCommand "glPNTrianglesiATI"

-- glPassTexCoordATI -----------------------------------------------------------

glPassTexCoordATI
  :: GLuint -- ^ @dst@.
  -> GLuint -- ^ @coord@.
  -> GLenum -- ^ @swizzle@ of type @SwizzleOpATI@.
  -> IO ()
glPassTexCoordATI = dyn_glPassTexCoordATI ptr_glPassTexCoordATI

foreign import CALLCONV "dynamic" dyn_glPassTexCoordATI
  :: FunPtr (GLuint -> GLuint -> GLenum -> IO ())
  ->         GLuint -> GLuint -> GLenum -> IO ()

{-# NOINLINE ptr_glPassTexCoordATI #-}
ptr_glPassTexCoordATI :: FunPtr (GLuint -> GLuint -> GLenum -> IO ())
ptr_glPassTexCoordATI = unsafePerformIO $ getCommand "glPassTexCoordATI"

-- glPassThrough ---------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glPassThrough.xml OpenGL 2.x>
glPassThrough
  :: GLfloat -- ^ @token@ of type @FeedbackElement@.
  -> IO ()
glPassThrough = dyn_glPassThrough ptr_glPassThrough

foreign import CALLCONV "dynamic" dyn_glPassThrough
  :: FunPtr (GLfloat -> IO ())
  ->         GLfloat -> IO ()

{-# NOINLINE ptr_glPassThrough #-}
ptr_glPassThrough :: FunPtr (GLfloat -> IO ())
ptr_glPassThrough = unsafePerformIO $ getCommand "glPassThrough"

-- glPassThroughxOES -----------------------------------------------------------

glPassThroughxOES
  :: GLfixed -- ^ @token@.
  -> IO ()
glPassThroughxOES = dyn_glPassThroughxOES ptr_glPassThroughxOES

foreign import CALLCONV "dynamic" dyn_glPassThroughxOES
  :: FunPtr (GLfixed -> IO ())
  ->         GLfixed -> IO ()

{-# NOINLINE ptr_glPassThroughxOES #-}
ptr_glPassThroughxOES :: FunPtr (GLfixed -> IO ())
ptr_glPassThroughxOES = unsafePerformIO $ getCommand "glPassThroughxOES"

-- glPatchParameterfv ----------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glPatchParameter.xhtml OpenGL 4.x>
glPatchParameterfv
  :: GLenum -- ^ @pname@.
  -> Ptr GLfloat -- ^ @values@ pointing to @COMPSIZE(pname)@ elements of type @GLfloat@.
  -> IO ()
glPatchParameterfv = dyn_glPatchParameterfv ptr_glPatchParameterfv

foreign import CALLCONV "dynamic" dyn_glPatchParameterfv
  :: FunPtr (GLenum -> Ptr GLfloat -> IO ())
  ->         GLenum -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glPatchParameterfv #-}
ptr_glPatchParameterfv :: FunPtr (GLenum -> Ptr GLfloat -> IO ())
ptr_glPatchParameterfv = unsafePerformIO $ getCommand "glPatchParameterfv"

-- glPatchParameteri -----------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glPatchParameter.xhtml OpenGL 4.x>
glPatchParameteri
  :: GLenum -- ^ @pname@.
  -> GLint -- ^ @value@.
  -> IO ()
glPatchParameteri = dyn_glPatchParameteri ptr_glPatchParameteri

foreign import CALLCONV "dynamic" dyn_glPatchParameteri
  :: FunPtr (GLenum -> GLint -> IO ())
  ->         GLenum -> GLint -> IO ()

{-# NOINLINE ptr_glPatchParameteri #-}
ptr_glPatchParameteri :: FunPtr (GLenum -> GLint -> IO ())
ptr_glPatchParameteri = unsafePerformIO $ getCommand "glPatchParameteri"

-- glPatchParameteriEXT --------------------------------------------------------

glPatchParameteriEXT
  :: GLenum -- ^ @pname@.
  -> GLint -- ^ @value@.
  -> IO ()
glPatchParameteriEXT = dyn_glPatchParameteriEXT ptr_glPatchParameteriEXT

foreign import CALLCONV "dynamic" dyn_glPatchParameteriEXT
  :: FunPtr (GLenum -> GLint -> IO ())
  ->         GLenum -> GLint -> IO ()

{-# NOINLINE ptr_glPatchParameteriEXT #-}
ptr_glPatchParameteriEXT :: FunPtr (GLenum -> GLint -> IO ())
ptr_glPatchParameteriEXT = unsafePerformIO $ getCommand "glPatchParameteriEXT"

-- glPatchParameteriOES --------------------------------------------------------

glPatchParameteriOES
  :: GLenum -- ^ @pname@.
  -> GLint -- ^ @value@.
  -> IO ()
glPatchParameteriOES = dyn_glPatchParameteriOES ptr_glPatchParameteriOES

foreign import CALLCONV "dynamic" dyn_glPatchParameteriOES
  :: FunPtr (GLenum -> GLint -> IO ())
  ->         GLenum -> GLint -> IO ()

{-# NOINLINE ptr_glPatchParameteriOES #-}
ptr_glPatchParameteriOES :: FunPtr (GLenum -> GLint -> IO ())
ptr_glPatchParameteriOES = unsafePerformIO $ getCommand "glPatchParameteriOES"

-- glPathColorGenNV ------------------------------------------------------------

glPathColorGenNV
  :: GLenum -- ^ @color@ of type @PathColor@.
  -> GLenum -- ^ @genMode@ of type @PathGenMode@.
  -> GLenum -- ^ @colorFormat@ of type @PathColorFormat@.
  -> Ptr GLfloat -- ^ @coeffs@ pointing to @COMPSIZE(genMode,colorFormat)@ elements of type @GLfloat@.
  -> IO ()
glPathColorGenNV = dyn_glPathColorGenNV ptr_glPathColorGenNV

foreign import CALLCONV "dynamic" dyn_glPathColorGenNV
  :: FunPtr (GLenum -> GLenum -> GLenum -> Ptr GLfloat -> IO ())
  ->         GLenum -> GLenum -> GLenum -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glPathColorGenNV #-}
ptr_glPathColorGenNV :: FunPtr (GLenum -> GLenum -> GLenum -> Ptr GLfloat -> IO ())
ptr_glPathColorGenNV = unsafePerformIO $ getCommand "glPathColorGenNV"

-- glPathCommandsNV ------------------------------------------------------------

glPathCommandsNV
  :: GLuint -- ^ @path@ of type @Path@.
  -> GLsizei -- ^ @numCommands@.
  -> Ptr GLubyte -- ^ @commands@ pointing to @numCommands@ elements of type @PathCommand@.
  -> GLsizei -- ^ @numCoords@.
  -> GLenum -- ^ @coordType@ of type @PathCoordType@.
  -> Ptr a -- ^ @coords@ pointing to @COMPSIZE(numCoords,coordType)@ elements of type @a@.
  -> IO ()
glPathCommandsNV = dyn_glPathCommandsNV ptr_glPathCommandsNV

foreign import CALLCONV "dynamic" dyn_glPathCommandsNV
  :: FunPtr (GLuint -> GLsizei -> Ptr GLubyte -> GLsizei -> GLenum -> Ptr a -> IO ())
  ->         GLuint -> GLsizei -> Ptr GLubyte -> GLsizei -> GLenum -> Ptr a -> IO ()

{-# NOINLINE ptr_glPathCommandsNV #-}
ptr_glPathCommandsNV :: FunPtr (GLuint -> GLsizei -> Ptr GLubyte -> GLsizei -> GLenum -> Ptr a -> IO ())
ptr_glPathCommandsNV = unsafePerformIO $ getCommand "glPathCommandsNV"

-- glPathCoordsNV --------------------------------------------------------------

glPathCoordsNV
  :: GLuint -- ^ @path@ of type @Path@.
  -> GLsizei -- ^ @numCoords@.
  -> GLenum -- ^ @coordType@ of type @PathCoordType@.
  -> Ptr a -- ^ @coords@ pointing to @COMPSIZE(numCoords,coordType)@ elements of type @a@.
  -> IO ()
glPathCoordsNV = dyn_glPathCoordsNV ptr_glPathCoordsNV

foreign import CALLCONV "dynamic" dyn_glPathCoordsNV
  :: FunPtr (GLuint -> GLsizei -> GLenum -> Ptr a -> IO ())
  ->         GLuint -> GLsizei -> GLenum -> Ptr a -> IO ()

{-# NOINLINE ptr_glPathCoordsNV #-}
ptr_glPathCoordsNV :: FunPtr (GLuint -> GLsizei -> GLenum -> Ptr a -> IO ())
ptr_glPathCoordsNV = unsafePerformIO $ getCommand "glPathCoordsNV"

-- glPathCoverDepthFuncNV ------------------------------------------------------

glPathCoverDepthFuncNV
  :: GLenum -- ^ @func@ of type @DepthFunction@.
  -> IO ()
glPathCoverDepthFuncNV = dyn_glPathCoverDepthFuncNV ptr_glPathCoverDepthFuncNV

foreign import CALLCONV "dynamic" dyn_glPathCoverDepthFuncNV
  :: FunPtr (GLenum -> IO ())
  ->         GLenum -> IO ()

{-# NOINLINE ptr_glPathCoverDepthFuncNV #-}
ptr_glPathCoverDepthFuncNV :: FunPtr (GLenum -> IO ())
ptr_glPathCoverDepthFuncNV = unsafePerformIO $ getCommand "glPathCoverDepthFuncNV"

-- glPathDashArrayNV -----------------------------------------------------------

glPathDashArrayNV
  :: GLuint -- ^ @path@ of type @Path@.
  -> GLsizei -- ^ @dashCount@.
  -> Ptr GLfloat -- ^ @dashArray@ pointing to @dashCount@ elements of type @GLfloat@.
  -> IO ()
glPathDashArrayNV = dyn_glPathDashArrayNV ptr_glPathDashArrayNV

foreign import CALLCONV "dynamic" dyn_glPathDashArrayNV
  :: FunPtr (GLuint -> GLsizei -> Ptr GLfloat -> IO ())
  ->         GLuint -> GLsizei -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glPathDashArrayNV #-}
ptr_glPathDashArrayNV :: FunPtr (GLuint -> GLsizei -> Ptr GLfloat -> IO ())
ptr_glPathDashArrayNV = unsafePerformIO $ getCommand "glPathDashArrayNV"

-- glPathFogGenNV --------------------------------------------------------------

glPathFogGenNV
  :: GLenum -- ^ @genMode@ of type @PathGenMode@.
  -> IO ()
glPathFogGenNV = dyn_glPathFogGenNV ptr_glPathFogGenNV

foreign import CALLCONV "dynamic" dyn_glPathFogGenNV
  :: FunPtr (GLenum -> IO ())
  ->         GLenum -> IO ()

{-# NOINLINE ptr_glPathFogGenNV #-}
ptr_glPathFogGenNV :: FunPtr (GLenum -> IO ())
ptr_glPathFogGenNV = unsafePerformIO $ getCommand "glPathFogGenNV"

-- glPathGlyphIndexArrayNV -----------------------------------------------------

glPathGlyphIndexArrayNV
  :: GLuint -- ^ @firstPathName@.
  -> GLenum -- ^ @fontTarget@.
  -> Ptr a -- ^ @fontName@.
  -> GLbitfield -- ^ @fontStyle@.
  -> GLuint -- ^ @firstGlyphIndex@.
  -> GLsizei -- ^ @numGlyphs@.
  -> GLuint -- ^ @pathParameterTemplate@.
  -> GLfloat -- ^ @emScale@.
  -> IO GLenum
glPathGlyphIndexArrayNV = dyn_glPathGlyphIndexArrayNV ptr_glPathGlyphIndexArrayNV

foreign import CALLCONV "dynamic" dyn_glPathGlyphIndexArrayNV
  :: FunPtr (GLuint -> GLenum -> Ptr a -> GLbitfield -> GLuint -> GLsizei -> GLuint -> GLfloat -> IO GLenum)
  ->         GLuint -> GLenum -> Ptr a -> GLbitfield -> GLuint -> GLsizei -> GLuint -> GLfloat -> IO GLenum

{-# NOINLINE ptr_glPathGlyphIndexArrayNV #-}
ptr_glPathGlyphIndexArrayNV :: FunPtr (GLuint -> GLenum -> Ptr a -> GLbitfield -> GLuint -> GLsizei -> GLuint -> GLfloat -> IO GLenum)
ptr_glPathGlyphIndexArrayNV = unsafePerformIO $ getCommand "glPathGlyphIndexArrayNV"

-- glPathGlyphIndexRangeNV -----------------------------------------------------

glPathGlyphIndexRangeNV
  :: GLenum -- ^ @fontTarget@.
  -> Ptr a -- ^ @fontName@.
  -> GLbitfield -- ^ @fontStyle@.
  -> GLuint -- ^ @pathParameterTemplate@.
  -> GLfloat -- ^ @emScale@.
  -> Ptr GLuint -- ^ @baseAndCount@.
  -> IO GLenum
glPathGlyphIndexRangeNV = dyn_glPathGlyphIndexRangeNV ptr_glPathGlyphIndexRangeNV

foreign import CALLCONV "dynamic" dyn_glPathGlyphIndexRangeNV
  :: FunPtr (GLenum -> Ptr a -> GLbitfield -> GLuint -> GLfloat -> Ptr GLuint -> IO GLenum)
  ->         GLenum -> Ptr a -> GLbitfield -> GLuint -> GLfloat -> Ptr GLuint -> IO GLenum

{-# NOINLINE ptr_glPathGlyphIndexRangeNV #-}
ptr_glPathGlyphIndexRangeNV :: FunPtr (GLenum -> Ptr a -> GLbitfield -> GLuint -> GLfloat -> Ptr GLuint -> IO GLenum)
ptr_glPathGlyphIndexRangeNV = unsafePerformIO $ getCommand "glPathGlyphIndexRangeNV"

-- glPathGlyphRangeNV ----------------------------------------------------------

glPathGlyphRangeNV
  :: GLuint -- ^ @firstPathName@ of type @Path@.
  -> GLenum -- ^ @fontTarget@ of type @PathFontTarget@.
  -> Ptr a -- ^ @fontName@ pointing to @COMPSIZE(fontTarget,fontName)@ elements of type @a@.
  -> GLbitfield -- ^ @fontStyle@ of type @PathFontStyle@.
  -> GLuint -- ^ @firstGlyph@.
  -> GLsizei -- ^ @numGlyphs@.
  -> GLenum -- ^ @handleMissingGlyphs@ of type @PathHandleMissingGlyphs@.
  -> GLuint -- ^ @pathParameterTemplate@ of type @Path@.
  -> GLfloat -- ^ @emScale@.
  -> IO ()
glPathGlyphRangeNV = dyn_glPathGlyphRangeNV ptr_glPathGlyphRangeNV

foreign import CALLCONV "dynamic" dyn_glPathGlyphRangeNV
  :: FunPtr (GLuint -> GLenum -> Ptr a -> GLbitfield -> GLuint -> GLsizei -> GLenum -> GLuint -> GLfloat -> IO ())
  ->         GLuint -> GLenum -> Ptr a -> GLbitfield -> GLuint -> GLsizei -> GLenum -> GLuint -> GLfloat -> IO ()

{-# NOINLINE ptr_glPathGlyphRangeNV #-}
ptr_glPathGlyphRangeNV :: FunPtr (GLuint -> GLenum -> Ptr a -> GLbitfield -> GLuint -> GLsizei -> GLenum -> GLuint -> GLfloat -> IO ())
ptr_glPathGlyphRangeNV = unsafePerformIO $ getCommand "glPathGlyphRangeNV"

-- glPathGlyphsNV --------------------------------------------------------------

glPathGlyphsNV
  :: GLuint -- ^ @firstPathName@ of type @Path@.
  -> GLenum -- ^ @fontTarget@ of type @PathFontTarget@.
  -> Ptr a -- ^ @fontName@ pointing to @COMPSIZE(fontTarget,fontName)@ elements of type @a@.
  -> GLbitfield -- ^ @fontStyle@ of type @PathFontStyle@.
  -> GLsizei -- ^ @numGlyphs@.
  -> GLenum -- ^ @type@ of type @PathElementType@.
  -> Ptr b -- ^ @charcodes@ pointing to @COMPSIZE(numGlyphs,type,charcodes)@ elements of type @b@.
  -> GLenum -- ^ @handleMissingGlyphs@ of type @PathHandleMissingGlyphs@.
  -> GLuint -- ^ @pathParameterTemplate@ of type @Path@.
  -> GLfloat -- ^ @emScale@.
  -> IO ()
glPathGlyphsNV = dyn_glPathGlyphsNV ptr_glPathGlyphsNV

foreign import CALLCONV "dynamic" dyn_glPathGlyphsNV
  :: FunPtr (GLuint -> GLenum -> Ptr a -> GLbitfield -> GLsizei -> GLenum -> Ptr b -> GLenum -> GLuint -> GLfloat -> IO ())
  ->         GLuint -> GLenum -> Ptr a -> GLbitfield -> GLsizei -> GLenum -> Ptr b -> GLenum -> GLuint -> GLfloat -> IO ()

{-# NOINLINE ptr_glPathGlyphsNV #-}
ptr_glPathGlyphsNV :: FunPtr (GLuint -> GLenum -> Ptr a -> GLbitfield -> GLsizei -> GLenum -> Ptr b -> GLenum -> GLuint -> GLfloat -> IO ())
ptr_glPathGlyphsNV = unsafePerformIO $ getCommand "glPathGlyphsNV"

-- glPathMemoryGlyphIndexArrayNV -----------------------------------------------

glPathMemoryGlyphIndexArrayNV
  :: GLuint -- ^ @firstPathName@.
  -> GLenum -- ^ @fontTarget@.
  -> GLsizeiptr -- ^ @fontSize@.
  -> Ptr a -- ^ @fontData@.
  -> GLsizei -- ^ @faceIndex@.
  -> GLuint -- ^ @firstGlyphIndex@.
  -> GLsizei -- ^ @numGlyphs@.
  -> GLuint -- ^ @pathParameterTemplate@.
  -> GLfloat -- ^ @emScale@.
  -> IO GLenum
glPathMemoryGlyphIndexArrayNV = dyn_glPathMemoryGlyphIndexArrayNV ptr_glPathMemoryGlyphIndexArrayNV

foreign import CALLCONV "dynamic" dyn_glPathMemoryGlyphIndexArrayNV
  :: FunPtr (GLuint -> GLenum -> GLsizeiptr -> Ptr a -> GLsizei -> GLuint -> GLsizei -> GLuint -> GLfloat -> IO GLenum)
  ->         GLuint -> GLenum -> GLsizeiptr -> Ptr a -> GLsizei -> GLuint -> GLsizei -> GLuint -> GLfloat -> IO GLenum

{-# NOINLINE ptr_glPathMemoryGlyphIndexArrayNV #-}
ptr_glPathMemoryGlyphIndexArrayNV :: FunPtr (GLuint -> GLenum -> GLsizeiptr -> Ptr a -> GLsizei -> GLuint -> GLsizei -> GLuint -> GLfloat -> IO GLenum)
ptr_glPathMemoryGlyphIndexArrayNV = unsafePerformIO $ getCommand "glPathMemoryGlyphIndexArrayNV"

-- glPathParameterfNV ----------------------------------------------------------

glPathParameterfNV
  :: GLuint -- ^ @path@ of type @Path@.
  -> GLenum -- ^ @pname@ of type @PathParameter@.
  -> GLfloat -- ^ @value@.
  -> IO ()
glPathParameterfNV = dyn_glPathParameterfNV ptr_glPathParameterfNV

foreign import CALLCONV "dynamic" dyn_glPathParameterfNV
  :: FunPtr (GLuint -> GLenum -> GLfloat -> IO ())
  ->         GLuint -> GLenum -> GLfloat -> IO ()

{-# NOINLINE ptr_glPathParameterfNV #-}
ptr_glPathParameterfNV :: FunPtr (GLuint -> GLenum -> GLfloat -> IO ())
ptr_glPathParameterfNV = unsafePerformIO $ getCommand "glPathParameterfNV"

-- glPathParameterfvNV ---------------------------------------------------------

glPathParameterfvNV
  :: GLuint -- ^ @path@ of type @Path@.
  -> GLenum -- ^ @pname@ of type @PathParameter@.
  -> Ptr GLfloat -- ^ @value@ pointing to @COMPSIZE(pname)@ elements of type @GLfloat@.
  -> IO ()
glPathParameterfvNV = dyn_glPathParameterfvNV ptr_glPathParameterfvNV

foreign import CALLCONV "dynamic" dyn_glPathParameterfvNV
  :: FunPtr (GLuint -> GLenum -> Ptr GLfloat -> IO ())
  ->         GLuint -> GLenum -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glPathParameterfvNV #-}
ptr_glPathParameterfvNV :: FunPtr (GLuint -> GLenum -> Ptr GLfloat -> IO ())
ptr_glPathParameterfvNV = unsafePerformIO $ getCommand "glPathParameterfvNV"

-- glPathParameteriNV ----------------------------------------------------------

glPathParameteriNV
  :: GLuint -- ^ @path@ of type @Path@.
  -> GLenum -- ^ @pname@ of type @PathParameter@.
  -> GLint -- ^ @value@.
  -> IO ()
glPathParameteriNV = dyn_glPathParameteriNV ptr_glPathParameteriNV

foreign import CALLCONV "dynamic" dyn_glPathParameteriNV
  :: FunPtr (GLuint -> GLenum -> GLint -> IO ())
  ->         GLuint -> GLenum -> GLint -> IO ()

{-# NOINLINE ptr_glPathParameteriNV #-}
ptr_glPathParameteriNV :: FunPtr (GLuint -> GLenum -> GLint -> IO ())
ptr_glPathParameteriNV = unsafePerformIO $ getCommand "glPathParameteriNV"

-- glPathParameterivNV ---------------------------------------------------------

glPathParameterivNV
  :: GLuint -- ^ @path@ of type @Path@.
  -> GLenum -- ^ @pname@ of type @PathParameter@.
  -> Ptr GLint -- ^ @value@ pointing to @COMPSIZE(pname)@ elements of type @GLint@.
  -> IO ()
glPathParameterivNV = dyn_glPathParameterivNV ptr_glPathParameterivNV

foreign import CALLCONV "dynamic" dyn_glPathParameterivNV
  :: FunPtr (GLuint -> GLenum -> Ptr GLint -> IO ())
  ->         GLuint -> GLenum -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glPathParameterivNV #-}
ptr_glPathParameterivNV :: FunPtr (GLuint -> GLenum -> Ptr GLint -> IO ())
ptr_glPathParameterivNV = unsafePerformIO $ getCommand "glPathParameterivNV"

-- glPathStencilDepthOffsetNV --------------------------------------------------

glPathStencilDepthOffsetNV
  :: GLfloat -- ^ @factor@.
  -> GLfloat -- ^ @units@.
  -> IO ()
glPathStencilDepthOffsetNV = dyn_glPathStencilDepthOffsetNV ptr_glPathStencilDepthOffsetNV

foreign import CALLCONV "dynamic" dyn_glPathStencilDepthOffsetNV
  :: FunPtr (GLfloat -> GLfloat -> IO ())
  ->         GLfloat -> GLfloat -> IO ()

{-# NOINLINE ptr_glPathStencilDepthOffsetNV #-}
ptr_glPathStencilDepthOffsetNV :: FunPtr (GLfloat -> GLfloat -> IO ())
ptr_glPathStencilDepthOffsetNV = unsafePerformIO $ getCommand "glPathStencilDepthOffsetNV"

-- glPathStencilFuncNV ---------------------------------------------------------

glPathStencilFuncNV
  :: GLenum -- ^ @func@ of type @StencilFunction@.
  -> GLint -- ^ @ref@ of type @ClampedStencilValue@.
  -> GLuint -- ^ @mask@ of type @MaskedStencilValue@.
  -> IO ()
glPathStencilFuncNV = dyn_glPathStencilFuncNV ptr_glPathStencilFuncNV

foreign import CALLCONV "dynamic" dyn_glPathStencilFuncNV
  :: FunPtr (GLenum -> GLint -> GLuint -> IO ())
  ->         GLenum -> GLint -> GLuint -> IO ()

{-# NOINLINE ptr_glPathStencilFuncNV #-}
ptr_glPathStencilFuncNV :: FunPtr (GLenum -> GLint -> GLuint -> IO ())
ptr_glPathStencilFuncNV = unsafePerformIO $ getCommand "glPathStencilFuncNV"

-- glPathStringNV --------------------------------------------------------------

glPathStringNV
  :: GLuint -- ^ @path@ of type @Path@.
  -> GLenum -- ^ @format@ of type @PathStringFormat@.
  -> GLsizei -- ^ @length@.
  -> Ptr a -- ^ @pathString@ pointing to @length@ elements of type @a@.
  -> IO ()
glPathStringNV = dyn_glPathStringNV ptr_glPathStringNV

foreign import CALLCONV "dynamic" dyn_glPathStringNV
  :: FunPtr (GLuint -> GLenum -> GLsizei -> Ptr a -> IO ())
  ->         GLuint -> GLenum -> GLsizei -> Ptr a -> IO ()

{-# NOINLINE ptr_glPathStringNV #-}
ptr_glPathStringNV :: FunPtr (GLuint -> GLenum -> GLsizei -> Ptr a -> IO ())
ptr_glPathStringNV = unsafePerformIO $ getCommand "glPathStringNV"

-- glPathSubCommandsNV ---------------------------------------------------------

glPathSubCommandsNV
  :: GLuint -- ^ @path@ of type @Path@.
  -> GLsizei -- ^ @commandStart@.
  -> GLsizei -- ^ @commandsToDelete@.
  -> GLsizei -- ^ @numCommands@.
  -> Ptr GLubyte -- ^ @commands@ pointing to @numCommands@ elements of type @PathCommand@.
  -> GLsizei -- ^ @numCoords@.
  -> GLenum -- ^ @coordType@ of type @PathCoordType@.
  -> Ptr a -- ^ @coords@ pointing to @COMPSIZE(numCoords,coordType)@ elements of type @a@.
  -> IO ()
glPathSubCommandsNV = dyn_glPathSubCommandsNV ptr_glPathSubCommandsNV

foreign import CALLCONV "dynamic" dyn_glPathSubCommandsNV
  :: FunPtr (GLuint -> GLsizei -> GLsizei -> GLsizei -> Ptr GLubyte -> GLsizei -> GLenum -> Ptr a -> IO ())
  ->         GLuint -> GLsizei -> GLsizei -> GLsizei -> Ptr GLubyte -> GLsizei -> GLenum -> Ptr a -> IO ()

{-# NOINLINE ptr_glPathSubCommandsNV #-}
ptr_glPathSubCommandsNV :: FunPtr (GLuint -> GLsizei -> GLsizei -> GLsizei -> Ptr GLubyte -> GLsizei -> GLenum -> Ptr a -> IO ())
ptr_glPathSubCommandsNV = unsafePerformIO $ getCommand "glPathSubCommandsNV"

-- glPathSubCoordsNV -----------------------------------------------------------

glPathSubCoordsNV
  :: GLuint -- ^ @path@ of type @Path@.
  -> GLsizei -- ^ @coordStart@.
  -> GLsizei -- ^ @numCoords@.
  -> GLenum -- ^ @coordType@ of type @PathCoordType@.
  -> Ptr a -- ^ @coords@ pointing to @COMPSIZE(numCoords,coordType)@ elements of type @a@.
  -> IO ()
glPathSubCoordsNV = dyn_glPathSubCoordsNV ptr_glPathSubCoordsNV

foreign import CALLCONV "dynamic" dyn_glPathSubCoordsNV
  :: FunPtr (GLuint -> GLsizei -> GLsizei -> GLenum -> Ptr a -> IO ())
  ->         GLuint -> GLsizei -> GLsizei -> GLenum -> Ptr a -> IO ()

{-# NOINLINE ptr_glPathSubCoordsNV #-}
ptr_glPathSubCoordsNV :: FunPtr (GLuint -> GLsizei -> GLsizei -> GLenum -> Ptr a -> IO ())
ptr_glPathSubCoordsNV = unsafePerformIO $ getCommand "glPathSubCoordsNV"

-- glPathTexGenNV --------------------------------------------------------------

glPathTexGenNV
  :: GLenum -- ^ @texCoordSet@ of type @PathColor@.
  -> GLenum -- ^ @genMode@ of type @PathGenMode@.
  -> GLint -- ^ @components@.
  -> Ptr GLfloat -- ^ @coeffs@ pointing to @COMPSIZE(genMode,components)@ elements of type @GLfloat@.
  -> IO ()
glPathTexGenNV = dyn_glPathTexGenNV ptr_glPathTexGenNV

foreign import CALLCONV "dynamic" dyn_glPathTexGenNV
  :: FunPtr (GLenum -> GLenum -> GLint -> Ptr GLfloat -> IO ())
  ->         GLenum -> GLenum -> GLint -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glPathTexGenNV #-}
ptr_glPathTexGenNV :: FunPtr (GLenum -> GLenum -> GLint -> Ptr GLfloat -> IO ())
ptr_glPathTexGenNV = unsafePerformIO $ getCommand "glPathTexGenNV"

-- glPauseTransformFeedback ----------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glPauseTransformFeedback.xhtml OpenGL 4.x>
glPauseTransformFeedback
  :: IO ()
glPauseTransformFeedback = dyn_glPauseTransformFeedback ptr_glPauseTransformFeedback

foreign import CALLCONV "dynamic" dyn_glPauseTransformFeedback
  :: FunPtr (IO ())
  ->         IO ()

{-# NOINLINE ptr_glPauseTransformFeedback #-}
ptr_glPauseTransformFeedback :: FunPtr (IO ())
ptr_glPauseTransformFeedback = unsafePerformIO $ getCommand "glPauseTransformFeedback"

-- glPauseTransformFeedbackNV --------------------------------------------------

glPauseTransformFeedbackNV
  :: IO ()
glPauseTransformFeedbackNV = dyn_glPauseTransformFeedbackNV ptr_glPauseTransformFeedbackNV

foreign import CALLCONV "dynamic" dyn_glPauseTransformFeedbackNV
  :: FunPtr (IO ())
  ->         IO ()

{-# NOINLINE ptr_glPauseTransformFeedbackNV #-}
ptr_glPauseTransformFeedbackNV :: FunPtr (IO ())
ptr_glPauseTransformFeedbackNV = unsafePerformIO $ getCommand "glPauseTransformFeedbackNV"

-- glPixelDataRangeNV ----------------------------------------------------------

glPixelDataRangeNV
  :: GLenum -- ^ @target@ of type @PixelDataRangeTargetNV@.
  -> GLsizei -- ^ @length@.
  -> Ptr a -- ^ @pointer@ pointing to @length@ elements of type @a@.
  -> IO ()
glPixelDataRangeNV = dyn_glPixelDataRangeNV ptr_glPixelDataRangeNV

foreign import CALLCONV "dynamic" dyn_glPixelDataRangeNV
  :: FunPtr (GLenum -> GLsizei -> Ptr a -> IO ())
  ->         GLenum -> GLsizei -> Ptr a -> IO ()

{-# NOINLINE ptr_glPixelDataRangeNV #-}
ptr_glPixelDataRangeNV :: FunPtr (GLenum -> GLsizei -> Ptr a -> IO ())
ptr_glPixelDataRangeNV = unsafePerformIO $ getCommand "glPixelDataRangeNV"

-- glPixelMapfv ----------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glPixelMap.xml OpenGL 2.x>
glPixelMapfv
  :: GLenum -- ^ @map@ of type @PixelMap@.
  -> GLsizei -- ^ @mapsize@ of type @CheckedInt32@.
  -> Ptr GLfloat -- ^ @values@ pointing to @mapsize@ elements of type @GLfloat@.
  -> IO ()
glPixelMapfv = dyn_glPixelMapfv ptr_glPixelMapfv

foreign import CALLCONV "dynamic" dyn_glPixelMapfv
  :: FunPtr (GLenum -> GLsizei -> Ptr GLfloat -> IO ())
  ->         GLenum -> GLsizei -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glPixelMapfv #-}
ptr_glPixelMapfv :: FunPtr (GLenum -> GLsizei -> Ptr GLfloat -> IO ())
ptr_glPixelMapfv = unsafePerformIO $ getCommand "glPixelMapfv"

-- glPixelMapuiv ---------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glPixelMap.xml OpenGL 2.x>
glPixelMapuiv
  :: GLenum -- ^ @map@ of type @PixelMap@.
  -> GLsizei -- ^ @mapsize@ of type @CheckedInt32@.
  -> Ptr GLuint -- ^ @values@ pointing to @mapsize@ elements of type @GLuint@.
  -> IO ()
glPixelMapuiv = dyn_glPixelMapuiv ptr_glPixelMapuiv

foreign import CALLCONV "dynamic" dyn_glPixelMapuiv
  :: FunPtr (GLenum -> GLsizei -> Ptr GLuint -> IO ())
  ->         GLenum -> GLsizei -> Ptr GLuint -> IO ()

{-# NOINLINE ptr_glPixelMapuiv #-}
ptr_glPixelMapuiv :: FunPtr (GLenum -> GLsizei -> Ptr GLuint -> IO ())
ptr_glPixelMapuiv = unsafePerformIO $ getCommand "glPixelMapuiv"

-- glPixelMapusv ---------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glPixelMap.xml OpenGL 2.x>
glPixelMapusv
  :: GLenum -- ^ @map@ of type @PixelMap@.
  -> GLsizei -- ^ @mapsize@ of type @CheckedInt32@.
  -> Ptr GLushort -- ^ @values@ pointing to @mapsize@ elements of type @GLushort@.
  -> IO ()
glPixelMapusv = dyn_glPixelMapusv ptr_glPixelMapusv

foreign import CALLCONV "dynamic" dyn_glPixelMapusv
  :: FunPtr (GLenum -> GLsizei -> Ptr GLushort -> IO ())
  ->         GLenum -> GLsizei -> Ptr GLushort -> IO ()

{-# NOINLINE ptr_glPixelMapusv #-}
ptr_glPixelMapusv :: FunPtr (GLenum -> GLsizei -> Ptr GLushort -> IO ())
ptr_glPixelMapusv = unsafePerformIO $ getCommand "glPixelMapusv"

-- glPixelMapx -----------------------------------------------------------------

glPixelMapx
  :: GLenum -- ^ @map@.
  -> GLint -- ^ @size@.
  -> Ptr GLfixed -- ^ @values@ pointing to @size@ elements of type @GLfixed@.
  -> IO ()
glPixelMapx = dyn_glPixelMapx ptr_glPixelMapx

foreign import CALLCONV "dynamic" dyn_glPixelMapx
  :: FunPtr (GLenum -> GLint -> Ptr GLfixed -> IO ())
  ->         GLenum -> GLint -> Ptr GLfixed -> IO ()

{-# NOINLINE ptr_glPixelMapx #-}
ptr_glPixelMapx :: FunPtr (GLenum -> GLint -> Ptr GLfixed -> IO ())
ptr_glPixelMapx = unsafePerformIO $ getCommand "glPixelMapx"

-- glPixelStoref ---------------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glPixelStore.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glPixelStore.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glPixelStore.xhtml OpenGL 4.x>
glPixelStoref
  :: GLenum -- ^ @pname@ of type @PixelStoreParameter@.
  -> GLfloat -- ^ @param@ of type @CheckedFloat32@.
  -> IO ()
glPixelStoref = dyn_glPixelStoref ptr_glPixelStoref

foreign import CALLCONV "dynamic" dyn_glPixelStoref
  :: FunPtr (GLenum -> GLfloat -> IO ())
  ->         GLenum -> GLfloat -> IO ()

{-# NOINLINE ptr_glPixelStoref #-}
ptr_glPixelStoref :: FunPtr (GLenum -> GLfloat -> IO ())
ptr_glPixelStoref = unsafePerformIO $ getCommand "glPixelStoref"

-- glPixelStorei ---------------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glPixelStore.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glPixelStore.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glPixelStore.xhtml OpenGL 4.x>
glPixelStorei
  :: GLenum -- ^ @pname@ of type @PixelStoreParameter@.
  -> GLint -- ^ @param@ of type @CheckedInt32@.
  -> IO ()
glPixelStorei = dyn_glPixelStorei ptr_glPixelStorei

foreign import CALLCONV "dynamic" dyn_glPixelStorei
  :: FunPtr (GLenum -> GLint -> IO ())
  ->         GLenum -> GLint -> IO ()

{-# NOINLINE ptr_glPixelStorei #-}
ptr_glPixelStorei :: FunPtr (GLenum -> GLint -> IO ())
ptr_glPixelStorei = unsafePerformIO $ getCommand "glPixelStorei"

-- glPixelStorex ---------------------------------------------------------------

glPixelStorex
  :: GLenum -- ^ @pname@.
  -> GLfixed -- ^ @param@.
  -> IO ()
glPixelStorex = dyn_glPixelStorex ptr_glPixelStorex

foreign import CALLCONV "dynamic" dyn_glPixelStorex
  :: FunPtr (GLenum -> GLfixed -> IO ())
  ->         GLenum -> GLfixed -> IO ()

{-# NOINLINE ptr_glPixelStorex #-}
ptr_glPixelStorex :: FunPtr (GLenum -> GLfixed -> IO ())
ptr_glPixelStorex = unsafePerformIO $ getCommand "glPixelStorex"

-- glPixelTexGenParameterfSGIS -------------------------------------------------

glPixelTexGenParameterfSGIS
  :: GLenum -- ^ @pname@ of type @PixelTexGenParameterNameSGIS@.
  -> GLfloat -- ^ @param@ of type @CheckedFloat32@.
  -> IO ()
glPixelTexGenParameterfSGIS = dyn_glPixelTexGenParameterfSGIS ptr_glPixelTexGenParameterfSGIS

foreign import CALLCONV "dynamic" dyn_glPixelTexGenParameterfSGIS
  :: FunPtr (GLenum -> GLfloat -> IO ())
  ->         GLenum -> GLfloat -> IO ()

{-# NOINLINE ptr_glPixelTexGenParameterfSGIS #-}
ptr_glPixelTexGenParameterfSGIS :: FunPtr (GLenum -> GLfloat -> IO ())
ptr_glPixelTexGenParameterfSGIS = unsafePerformIO $ getCommand "glPixelTexGenParameterfSGIS"

-- glPixelTexGenParameterfvSGIS ------------------------------------------------

glPixelTexGenParameterfvSGIS
  :: GLenum -- ^ @pname@ of type @PixelTexGenParameterNameSGIS@.
  -> Ptr GLfloat -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @CheckedFloat32@.
  -> IO ()
glPixelTexGenParameterfvSGIS = dyn_glPixelTexGenParameterfvSGIS ptr_glPixelTexGenParameterfvSGIS

foreign import CALLCONV "dynamic" dyn_glPixelTexGenParameterfvSGIS
  :: FunPtr (GLenum -> Ptr GLfloat -> IO ())
  ->         GLenum -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glPixelTexGenParameterfvSGIS #-}
ptr_glPixelTexGenParameterfvSGIS :: FunPtr (GLenum -> Ptr GLfloat -> IO ())
ptr_glPixelTexGenParameterfvSGIS = unsafePerformIO $ getCommand "glPixelTexGenParameterfvSGIS"

-- glPixelTexGenParameteriSGIS -------------------------------------------------

glPixelTexGenParameteriSGIS
  :: GLenum -- ^ @pname@ of type @PixelTexGenParameterNameSGIS@.
  -> GLint -- ^ @param@ of type @CheckedInt32@.
  -> IO ()
glPixelTexGenParameteriSGIS = dyn_glPixelTexGenParameteriSGIS ptr_glPixelTexGenParameteriSGIS

foreign import CALLCONV "dynamic" dyn_glPixelTexGenParameteriSGIS
  :: FunPtr (GLenum -> GLint -> IO ())
  ->         GLenum -> GLint -> IO ()

{-# NOINLINE ptr_glPixelTexGenParameteriSGIS #-}
ptr_glPixelTexGenParameteriSGIS :: FunPtr (GLenum -> GLint -> IO ())
ptr_glPixelTexGenParameteriSGIS = unsafePerformIO $ getCommand "glPixelTexGenParameteriSGIS"

-- glPixelTexGenParameterivSGIS ------------------------------------------------

glPixelTexGenParameterivSGIS
  :: GLenum -- ^ @pname@ of type @PixelTexGenParameterNameSGIS@.
  -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @CheckedInt32@.
  -> IO ()
glPixelTexGenParameterivSGIS = dyn_glPixelTexGenParameterivSGIS ptr_glPixelTexGenParameterivSGIS

foreign import CALLCONV "dynamic" dyn_glPixelTexGenParameterivSGIS
  :: FunPtr (GLenum -> Ptr GLint -> IO ())
  ->         GLenum -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glPixelTexGenParameterivSGIS #-}
ptr_glPixelTexGenParameterivSGIS :: FunPtr (GLenum -> Ptr GLint -> IO ())
ptr_glPixelTexGenParameterivSGIS = unsafePerformIO $ getCommand "glPixelTexGenParameterivSGIS"

-- glPixelTexGenSGIX -----------------------------------------------------------

glPixelTexGenSGIX
  :: GLenum -- ^ @mode@ of type @PixelTexGenModeSGIX@.
  -> IO ()
glPixelTexGenSGIX = dyn_glPixelTexGenSGIX ptr_glPixelTexGenSGIX

foreign import CALLCONV "dynamic" dyn_glPixelTexGenSGIX
  :: FunPtr (GLenum -> IO ())
  ->         GLenum -> IO ()

{-# NOINLINE ptr_glPixelTexGenSGIX #-}
ptr_glPixelTexGenSGIX :: FunPtr (GLenum -> IO ())
ptr_glPixelTexGenSGIX = unsafePerformIO $ getCommand "glPixelTexGenSGIX"

-- glPixelTransferf ------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glPixelTransfer.xml OpenGL 2.x>
glPixelTransferf
  :: GLenum -- ^ @pname@ of type @PixelTransferParameter@.
  -> GLfloat -- ^ @param@ of type @CheckedFloat32@.
  -> IO ()
glPixelTransferf = dyn_glPixelTransferf ptr_glPixelTransferf

foreign import CALLCONV "dynamic" dyn_glPixelTransferf
  :: FunPtr (GLenum -> GLfloat -> IO ())
  ->         GLenum -> GLfloat -> IO ()

{-# NOINLINE ptr_glPixelTransferf #-}
ptr_glPixelTransferf :: FunPtr (GLenum -> GLfloat -> IO ())
ptr_glPixelTransferf = unsafePerformIO $ getCommand "glPixelTransferf"

-- glPixelTransferi ------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glPixelTransfer.xml OpenGL 2.x>
glPixelTransferi
  :: GLenum -- ^ @pname@ of type @PixelTransferParameter@.
  -> GLint -- ^ @param@ of type @CheckedInt32@.
  -> IO ()
glPixelTransferi = dyn_glPixelTransferi ptr_glPixelTransferi

foreign import CALLCONV "dynamic" dyn_glPixelTransferi
  :: FunPtr (GLenum -> GLint -> IO ())
  ->         GLenum -> GLint -> IO ()

{-# NOINLINE ptr_glPixelTransferi #-}
ptr_glPixelTransferi :: FunPtr (GLenum -> GLint -> IO ())
ptr_glPixelTransferi = unsafePerformIO $ getCommand "glPixelTransferi"

-- glPixelTransferxOES ---------------------------------------------------------

glPixelTransferxOES
  :: GLenum -- ^ @pname@.
  -> GLfixed -- ^ @param@.
  -> IO ()
glPixelTransferxOES = dyn_glPixelTransferxOES ptr_glPixelTransferxOES

foreign import CALLCONV "dynamic" dyn_glPixelTransferxOES
  :: FunPtr (GLenum -> GLfixed -> IO ())
  ->         GLenum -> GLfixed -> IO ()

{-# NOINLINE ptr_glPixelTransferxOES #-}
ptr_glPixelTransferxOES :: FunPtr (GLenum -> GLfixed -> IO ())
ptr_glPixelTransferxOES = unsafePerformIO $ getCommand "glPixelTransferxOES"

-- glPixelTransformParameterfEXT -----------------------------------------------

glPixelTransformParameterfEXT
  :: GLenum -- ^ @target@ of type @PixelTransformTargetEXT@.
  -> GLenum -- ^ @pname@ of type @PixelTransformPNameEXT@.
  -> GLfloat -- ^ @param@.
  -> IO ()
glPixelTransformParameterfEXT = dyn_glPixelTransformParameterfEXT ptr_glPixelTransformParameterfEXT

foreign import CALLCONV "dynamic" dyn_glPixelTransformParameterfEXT
  :: FunPtr (GLenum -> GLenum -> GLfloat -> IO ())
  ->         GLenum -> GLenum -> GLfloat -> IO ()

{-# NOINLINE ptr_glPixelTransformParameterfEXT #-}
ptr_glPixelTransformParameterfEXT :: FunPtr (GLenum -> GLenum -> GLfloat -> IO ())
ptr_glPixelTransformParameterfEXT = unsafePerformIO $ getCommand "glPixelTransformParameterfEXT"

-- glPixelTransformParameterfvEXT ----------------------------------------------

glPixelTransformParameterfvEXT
  :: GLenum -- ^ @target@ of type @PixelTransformTargetEXT@.
  -> GLenum -- ^ @pname@ of type @PixelTransformPNameEXT@.
  -> Ptr GLfloat -- ^ @params@ pointing to @1@ elements of type @GLfloat@.
  -> IO ()
glPixelTransformParameterfvEXT = dyn_glPixelTransformParameterfvEXT ptr_glPixelTransformParameterfvEXT

foreign import CALLCONV "dynamic" dyn_glPixelTransformParameterfvEXT
  :: FunPtr (GLenum -> GLenum -> Ptr GLfloat -> IO ())
  ->         GLenum -> GLenum -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glPixelTransformParameterfvEXT #-}
ptr_glPixelTransformParameterfvEXT :: FunPtr (GLenum -> GLenum -> Ptr GLfloat -> IO ())
ptr_glPixelTransformParameterfvEXT = unsafePerformIO $ getCommand "glPixelTransformParameterfvEXT"

-- glPixelTransformParameteriEXT -----------------------------------------------

glPixelTransformParameteriEXT
  :: GLenum -- ^ @target@ of type @PixelTransformTargetEXT@.
  -> GLenum -- ^ @pname@ of type @PixelTransformPNameEXT@.
  -> GLint -- ^ @param@.
  -> IO ()
glPixelTransformParameteriEXT = dyn_glPixelTransformParameteriEXT ptr_glPixelTransformParameteriEXT

foreign import CALLCONV "dynamic" dyn_glPixelTransformParameteriEXT
  :: FunPtr (GLenum -> GLenum -> GLint -> IO ())
  ->         GLenum -> GLenum -> GLint -> IO ()

{-# NOINLINE ptr_glPixelTransformParameteriEXT #-}
ptr_glPixelTransformParameteriEXT :: FunPtr (GLenum -> GLenum -> GLint -> IO ())
ptr_glPixelTransformParameteriEXT = unsafePerformIO $ getCommand "glPixelTransformParameteriEXT"

-- glPixelTransformParameterivEXT ----------------------------------------------

glPixelTransformParameterivEXT
  :: GLenum -- ^ @target@ of type @PixelTransformTargetEXT@.
  -> GLenum -- ^ @pname@ of type @PixelTransformPNameEXT@.
  -> Ptr GLint -- ^ @params@ pointing to @1@ elements of type @GLint@.
  -> IO ()
glPixelTransformParameterivEXT = dyn_glPixelTransformParameterivEXT ptr_glPixelTransformParameterivEXT

foreign import CALLCONV "dynamic" dyn_glPixelTransformParameterivEXT
  :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
  ->         GLenum -> GLenum -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glPixelTransformParameterivEXT #-}
ptr_glPixelTransformParameterivEXT :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
ptr_glPixelTransformParameterivEXT = unsafePerformIO $ getCommand "glPixelTransformParameterivEXT"

-- glPixelZoom -----------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glPixelZoom.xml OpenGL 2.x>
glPixelZoom
  :: GLfloat -- ^ @xfactor@.
  -> GLfloat -- ^ @yfactor@.
  -> IO ()
glPixelZoom = dyn_glPixelZoom ptr_glPixelZoom

foreign import CALLCONV "dynamic" dyn_glPixelZoom
  :: FunPtr (GLfloat -> GLfloat -> IO ())
  ->         GLfloat -> GLfloat -> IO ()

{-# NOINLINE ptr_glPixelZoom #-}
ptr_glPixelZoom :: FunPtr (GLfloat -> GLfloat -> IO ())
ptr_glPixelZoom = unsafePerformIO $ getCommand "glPixelZoom"

-- glPixelZoomxOES -------------------------------------------------------------

glPixelZoomxOES
  :: GLfixed -- ^ @xfactor@.
  -> GLfixed -- ^ @yfactor@.
  -> IO ()
glPixelZoomxOES = dyn_glPixelZoomxOES ptr_glPixelZoomxOES

foreign import CALLCONV "dynamic" dyn_glPixelZoomxOES
  :: FunPtr (GLfixed -> GLfixed -> IO ())
  ->         GLfixed -> GLfixed -> IO ()

{-# NOINLINE ptr_glPixelZoomxOES #-}
ptr_glPixelZoomxOES :: FunPtr (GLfixed -> GLfixed -> IO ())
ptr_glPixelZoomxOES = unsafePerformIO $ getCommand "glPixelZoomxOES"

-- glPointAlongPathNV ----------------------------------------------------------

glPointAlongPathNV
  :: GLuint -- ^ @path@ of type @Path@.
  -> GLsizei -- ^ @startSegment@.
  -> GLsizei -- ^ @numSegments@.
  -> GLfloat -- ^ @distance@.
  -> Ptr GLfloat -- ^ @x@ pointing to @1@ elements of type @GLfloat@.
  -> Ptr GLfloat -- ^ @y@ pointing to @1@ elements of type @GLfloat@.
  -> Ptr GLfloat -- ^ @tangentX@ pointing to @1@ elements of type @GLfloat@.
  -> Ptr GLfloat -- ^ @tangentY@ pointing to @1@ elements of type @GLfloat@.
  -> IO GLboolean -- ^ of type @Boolean@.
glPointAlongPathNV = dyn_glPointAlongPathNV ptr_glPointAlongPathNV

foreign import CALLCONV "dynamic" dyn_glPointAlongPathNV
  :: FunPtr (GLuint -> GLsizei -> GLsizei -> GLfloat -> Ptr GLfloat -> Ptr GLfloat -> Ptr GLfloat -> Ptr GLfloat -> IO GLboolean)
  ->         GLuint -> GLsizei -> GLsizei -> GLfloat -> Ptr GLfloat -> Ptr GLfloat -> Ptr GLfloat -> Ptr GLfloat -> IO GLboolean

{-# NOINLINE ptr_glPointAlongPathNV #-}
ptr_glPointAlongPathNV :: FunPtr (GLuint -> GLsizei -> GLsizei -> GLfloat -> Ptr GLfloat -> Ptr GLfloat -> Ptr GLfloat -> Ptr GLfloat -> IO GLboolean)
ptr_glPointAlongPathNV = unsafePerformIO $ getCommand "glPointAlongPathNV"

-- glPointParameterf -----------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glPointParameter.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glPointParameter.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glPointParameter.xhtml OpenGL 4.x>
glPointParameterf
  :: GLenum -- ^ @pname@ of type @PointParameterNameARB@.
  -> GLfloat -- ^ @param@ of type @CheckedFloat32@.
  -> IO ()
glPointParameterf = dyn_glPointParameterf ptr_glPointParameterf

foreign import CALLCONV "dynamic" dyn_glPointParameterf
  :: FunPtr (GLenum -> GLfloat -> IO ())
  ->         GLenum -> GLfloat -> IO ()

{-# NOINLINE ptr_glPointParameterf #-}
ptr_glPointParameterf :: FunPtr (GLenum -> GLfloat -> IO ())
ptr_glPointParameterf = unsafePerformIO $ getCommand "glPointParameterf"

-- glPointParameterfARB --------------------------------------------------------

glPointParameterfARB
  :: GLenum -- ^ @pname@ of type @PointParameterNameARB@.
  -> GLfloat -- ^ @param@ of type @CheckedFloat32@.
  -> IO ()
glPointParameterfARB = dyn_glPointParameterfARB ptr_glPointParameterfARB

foreign import CALLCONV "dynamic" dyn_glPointParameterfARB
  :: FunPtr (GLenum -> GLfloat -> IO ())
  ->         GLenum -> GLfloat -> IO ()

{-# NOINLINE ptr_glPointParameterfARB #-}
ptr_glPointParameterfARB :: FunPtr (GLenum -> GLfloat -> IO ())
ptr_glPointParameterfARB = unsafePerformIO $ getCommand "glPointParameterfARB"

-- glPointParameterfEXT --------------------------------------------------------

glPointParameterfEXT
  :: GLenum -- ^ @pname@ of type @PointParameterNameARB@.
  -> GLfloat -- ^ @param@ of type @CheckedFloat32@.
  -> IO ()
glPointParameterfEXT = dyn_glPointParameterfEXT ptr_glPointParameterfEXT

foreign import CALLCONV "dynamic" dyn_glPointParameterfEXT
  :: FunPtr (GLenum -> GLfloat -> IO ())
  ->         GLenum -> GLfloat -> IO ()

{-# NOINLINE ptr_glPointParameterfEXT #-}
ptr_glPointParameterfEXT :: FunPtr (GLenum -> GLfloat -> IO ())
ptr_glPointParameterfEXT = unsafePerformIO $ getCommand "glPointParameterfEXT"

-- glPointParameterfSGIS -------------------------------------------------------

glPointParameterfSGIS
  :: GLenum -- ^ @pname@ of type @PointParameterNameARB@.
  -> GLfloat -- ^ @param@ of type @CheckedFloat32@.
  -> IO ()
glPointParameterfSGIS = dyn_glPointParameterfSGIS ptr_glPointParameterfSGIS

foreign import CALLCONV "dynamic" dyn_glPointParameterfSGIS
  :: FunPtr (GLenum -> GLfloat -> IO ())
  ->         GLenum -> GLfloat -> IO ()

{-# NOINLINE ptr_glPointParameterfSGIS #-}
ptr_glPointParameterfSGIS :: FunPtr (GLenum -> GLfloat -> IO ())
ptr_glPointParameterfSGIS = unsafePerformIO $ getCommand "glPointParameterfSGIS"

-- glPointParameterfv ----------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glPointParameter.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glPointParameter.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glPointParameter.xhtml OpenGL 4.x>
glPointParameterfv
  :: GLenum -- ^ @pname@ of type @PointParameterNameARB@.
  -> Ptr GLfloat -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @CheckedFloat32@.
  -> IO ()
glPointParameterfv = dyn_glPointParameterfv ptr_glPointParameterfv

foreign import CALLCONV "dynamic" dyn_glPointParameterfv
  :: FunPtr (GLenum -> Ptr GLfloat -> IO ())
  ->         GLenum -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glPointParameterfv #-}
ptr_glPointParameterfv :: FunPtr (GLenum -> Ptr GLfloat -> IO ())
ptr_glPointParameterfv = unsafePerformIO $ getCommand "glPointParameterfv"

-- glPointParameterfvARB -------------------------------------------------------

glPointParameterfvARB
  :: GLenum -- ^ @pname@ of type @PointParameterNameARB@.
  -> Ptr GLfloat -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @CheckedFloat32@.
  -> IO ()
glPointParameterfvARB = dyn_glPointParameterfvARB ptr_glPointParameterfvARB

foreign import CALLCONV "dynamic" dyn_glPointParameterfvARB
  :: FunPtr (GLenum -> Ptr GLfloat -> IO ())
  ->         GLenum -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glPointParameterfvARB #-}
ptr_glPointParameterfvARB :: FunPtr (GLenum -> Ptr GLfloat -> IO ())
ptr_glPointParameterfvARB = unsafePerformIO $ getCommand "glPointParameterfvARB"

-- glPointParameterfvEXT -------------------------------------------------------

glPointParameterfvEXT
  :: GLenum -- ^ @pname@ of type @PointParameterNameARB@.
  -> Ptr GLfloat -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @CheckedFloat32@.
  -> IO ()
glPointParameterfvEXT = dyn_glPointParameterfvEXT ptr_glPointParameterfvEXT

foreign import CALLCONV "dynamic" dyn_glPointParameterfvEXT
  :: FunPtr (GLenum -> Ptr GLfloat -> IO ())
  ->         GLenum -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glPointParameterfvEXT #-}
ptr_glPointParameterfvEXT :: FunPtr (GLenum -> Ptr GLfloat -> IO ())
ptr_glPointParameterfvEXT = unsafePerformIO $ getCommand "glPointParameterfvEXT"

-- glPointParameterfvSGIS ------------------------------------------------------

glPointParameterfvSGIS
  :: GLenum -- ^ @pname@ of type @PointParameterNameARB@.
  -> Ptr GLfloat -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @CheckedFloat32@.
  -> IO ()
glPointParameterfvSGIS = dyn_glPointParameterfvSGIS ptr_glPointParameterfvSGIS

foreign import CALLCONV "dynamic" dyn_glPointParameterfvSGIS
  :: FunPtr (GLenum -> Ptr GLfloat -> IO ())
  ->         GLenum -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glPointParameterfvSGIS #-}
ptr_glPointParameterfvSGIS :: FunPtr (GLenum -> Ptr GLfloat -> IO ())
ptr_glPointParameterfvSGIS = unsafePerformIO $ getCommand "glPointParameterfvSGIS"

-- glPointParameteri -----------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glPointParameter.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glPointParameter.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glPointParameter.xhtml OpenGL 4.x>
glPointParameteri
  :: GLenum -- ^ @pname@ of type @PointParameterNameARB@.
  -> GLint -- ^ @param@.
  -> IO ()
glPointParameteri = dyn_glPointParameteri ptr_glPointParameteri

foreign import CALLCONV "dynamic" dyn_glPointParameteri
  :: FunPtr (GLenum -> GLint -> IO ())
  ->         GLenum -> GLint -> IO ()

{-# NOINLINE ptr_glPointParameteri #-}
ptr_glPointParameteri :: FunPtr (GLenum -> GLint -> IO ())
ptr_glPointParameteri = unsafePerformIO $ getCommand "glPointParameteri"

-- glPointParameteriNV ---------------------------------------------------------

glPointParameteriNV
  :: GLenum -- ^ @pname@ of type @PointParameterNameARB@.
  -> GLint -- ^ @param@.
  -> IO ()
glPointParameteriNV = dyn_glPointParameteriNV ptr_glPointParameteriNV

foreign import CALLCONV "dynamic" dyn_glPointParameteriNV
  :: FunPtr (GLenum -> GLint -> IO ())
  ->         GLenum -> GLint -> IO ()

{-# NOINLINE ptr_glPointParameteriNV #-}
ptr_glPointParameteriNV :: FunPtr (GLenum -> GLint -> IO ())
ptr_glPointParameteriNV = unsafePerformIO $ getCommand "glPointParameteriNV"

-- glPointParameteriv ----------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glPointParameter.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glPointParameter.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glPointParameter.xhtml OpenGL 4.x>
glPointParameteriv
  :: GLenum -- ^ @pname@ of type @PointParameterNameARB@.
  -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLint@.
  -> IO ()
glPointParameteriv = dyn_glPointParameteriv ptr_glPointParameteriv

foreign import CALLCONV "dynamic" dyn_glPointParameteriv
  :: FunPtr (GLenum -> Ptr GLint -> IO ())
  ->         GLenum -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glPointParameteriv #-}
ptr_glPointParameteriv :: FunPtr (GLenum -> Ptr GLint -> IO ())
ptr_glPointParameteriv = unsafePerformIO $ getCommand "glPointParameteriv"

-- glPointParameterivNV --------------------------------------------------------

glPointParameterivNV
  :: GLenum -- ^ @pname@ of type @PointParameterNameARB@.
  -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLint@.
  -> IO ()
glPointParameterivNV = dyn_glPointParameterivNV ptr_glPointParameterivNV

foreign import CALLCONV "dynamic" dyn_glPointParameterivNV
  :: FunPtr (GLenum -> Ptr GLint -> IO ())
  ->         GLenum -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glPointParameterivNV #-}
ptr_glPointParameterivNV :: FunPtr (GLenum -> Ptr GLint -> IO ())
ptr_glPointParameterivNV = unsafePerformIO $ getCommand "glPointParameterivNV"

-- glPointParameterx -----------------------------------------------------------

glPointParameterx
  :: GLenum -- ^ @pname@.
  -> GLfixed -- ^ @param@.
  -> IO ()
glPointParameterx = dyn_glPointParameterx ptr_glPointParameterx

foreign import CALLCONV "dynamic" dyn_glPointParameterx
  :: FunPtr (GLenum -> GLfixed -> IO ())
  ->         GLenum -> GLfixed -> IO ()

{-# NOINLINE ptr_glPointParameterx #-}
ptr_glPointParameterx :: FunPtr (GLenum -> GLfixed -> IO ())
ptr_glPointParameterx = unsafePerformIO $ getCommand "glPointParameterx"

-- glPointParameterxOES --------------------------------------------------------

glPointParameterxOES
  :: GLenum -- ^ @pname@.
  -> GLfixed -- ^ @param@.
  -> IO ()
glPointParameterxOES = dyn_glPointParameterxOES ptr_glPointParameterxOES

foreign import CALLCONV "dynamic" dyn_glPointParameterxOES
  :: FunPtr (GLenum -> GLfixed -> IO ())
  ->         GLenum -> GLfixed -> IO ()

{-# NOINLINE ptr_glPointParameterxOES #-}
ptr_glPointParameterxOES :: FunPtr (GLenum -> GLfixed -> IO ())
ptr_glPointParameterxOES = unsafePerformIO $ getCommand "glPointParameterxOES"

-- glPointParameterxv ----------------------------------------------------------

glPointParameterxv
  :: GLenum -- ^ @pname@.
  -> Ptr GLfixed -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLfixed@.
  -> IO ()
glPointParameterxv = dyn_glPointParameterxv ptr_glPointParameterxv

foreign import CALLCONV "dynamic" dyn_glPointParameterxv
  :: FunPtr (GLenum -> Ptr GLfixed -> IO ())
  ->         GLenum -> Ptr GLfixed -> IO ()

{-# NOINLINE ptr_glPointParameterxv #-}
ptr_glPointParameterxv :: FunPtr (GLenum -> Ptr GLfixed -> IO ())
ptr_glPointParameterxv = unsafePerformIO $ getCommand "glPointParameterxv"

-- glPointParameterxvOES -------------------------------------------------------

glPointParameterxvOES
  :: GLenum -- ^ @pname@.
  -> Ptr GLfixed -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLfixed@.
  -> IO ()
glPointParameterxvOES = dyn_glPointParameterxvOES ptr_glPointParameterxvOES

foreign import CALLCONV "dynamic" dyn_glPointParameterxvOES
  :: FunPtr (GLenum -> Ptr GLfixed -> IO ())
  ->         GLenum -> Ptr GLfixed -> IO ()

{-# NOINLINE ptr_glPointParameterxvOES #-}
ptr_glPointParameterxvOES :: FunPtr (GLenum -> Ptr GLfixed -> IO ())
ptr_glPointParameterxvOES = unsafePerformIO $ getCommand "glPointParameterxvOES"

-- glPointSize -----------------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glPointSize.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glPointSize.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glPointSize.xhtml OpenGL 4.x>
glPointSize
  :: GLfloat -- ^ @size@ of type @CheckedFloat32@.
  -> IO ()
glPointSize = dyn_glPointSize ptr_glPointSize

foreign import CALLCONV "dynamic" dyn_glPointSize
  :: FunPtr (GLfloat -> IO ())
  ->         GLfloat -> IO ()

{-# NOINLINE ptr_glPointSize #-}
ptr_glPointSize :: FunPtr (GLfloat -> IO ())
ptr_glPointSize = unsafePerformIO $ getCommand "glPointSize"

-- glPointSizePointerOES -------------------------------------------------------

glPointSizePointerOES
  :: GLenum -- ^ @type@.
  -> GLsizei -- ^ @stride@.
  -> Ptr a -- ^ @pointer@ pointing to @COMPSIZE(type,stride)@ elements of type @a@.
  -> IO ()
glPointSizePointerOES = dyn_glPointSizePointerOES ptr_glPointSizePointerOES

foreign import CALLCONV "dynamic" dyn_glPointSizePointerOES
  :: FunPtr (GLenum -> GLsizei -> Ptr a -> IO ())
  ->         GLenum -> GLsizei -> Ptr a -> IO ()

{-# NOINLINE ptr_glPointSizePointerOES #-}
ptr_glPointSizePointerOES :: FunPtr (GLenum -> GLsizei -> Ptr a -> IO ())
ptr_glPointSizePointerOES = unsafePerformIO $ getCommand "glPointSizePointerOES"

-- glPointSizex ----------------------------------------------------------------

glPointSizex
  :: GLfixed -- ^ @size@.
  -> IO ()
glPointSizex = dyn_glPointSizex ptr_glPointSizex

foreign import CALLCONV "dynamic" dyn_glPointSizex
  :: FunPtr (GLfixed -> IO ())
  ->         GLfixed -> IO ()

{-# NOINLINE ptr_glPointSizex #-}
ptr_glPointSizex :: FunPtr (GLfixed -> IO ())
ptr_glPointSizex = unsafePerformIO $ getCommand "glPointSizex"

-- glPointSizexOES -------------------------------------------------------------

glPointSizexOES
  :: GLfixed -- ^ @size@.
  -> IO ()
glPointSizexOES = dyn_glPointSizexOES ptr_glPointSizexOES

foreign import CALLCONV "dynamic" dyn_glPointSizexOES
  :: FunPtr (GLfixed -> IO ())
  ->         GLfixed -> IO ()

{-# NOINLINE ptr_glPointSizexOES #-}
ptr_glPointSizexOES :: FunPtr (GLfixed -> IO ())
ptr_glPointSizexOES = unsafePerformIO $ getCommand "glPointSizexOES"

-- glPollAsyncSGIX -------------------------------------------------------------

glPollAsyncSGIX
  :: Ptr GLuint -- ^ @markerp@ pointing to @1@ elements of type @GLuint@.
  -> IO GLint
glPollAsyncSGIX = dyn_glPollAsyncSGIX ptr_glPollAsyncSGIX

foreign import CALLCONV "dynamic" dyn_glPollAsyncSGIX
  :: FunPtr (Ptr GLuint -> IO GLint)
  ->         Ptr GLuint -> IO GLint

{-# NOINLINE ptr_glPollAsyncSGIX #-}
ptr_glPollAsyncSGIX :: FunPtr (Ptr GLuint -> IO GLint)
ptr_glPollAsyncSGIX = unsafePerformIO $ getCommand "glPollAsyncSGIX"

-- glPollInstrumentsSGIX -------------------------------------------------------

glPollInstrumentsSGIX
  :: Ptr GLint -- ^ @marker_p@ pointing to @1@ elements of type @GLint@.
  -> IO GLint
glPollInstrumentsSGIX = dyn_glPollInstrumentsSGIX ptr_glPollInstrumentsSGIX

foreign import CALLCONV "dynamic" dyn_glPollInstrumentsSGIX
  :: FunPtr (Ptr GLint -> IO GLint)
  ->         Ptr GLint -> IO GLint

{-# NOINLINE ptr_glPollInstrumentsSGIX #-}
ptr_glPollInstrumentsSGIX :: FunPtr (Ptr GLint -> IO GLint)
ptr_glPollInstrumentsSGIX = unsafePerformIO $ getCommand "glPollInstrumentsSGIX"

-- glPolygonMode ---------------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glPolygonMode.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glPolygonMode.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glPolygonMode.xhtml OpenGL 4.x>
glPolygonMode
  :: GLenum -- ^ @face@ of type @MaterialFace@.
  -> GLenum -- ^ @mode@ of type @PolygonMode@.
  -> IO ()
glPolygonMode = dyn_glPolygonMode ptr_glPolygonMode

foreign import CALLCONV "dynamic" dyn_glPolygonMode
  :: FunPtr (GLenum -> GLenum -> IO ())
  ->         GLenum -> GLenum -> IO ()

{-# NOINLINE ptr_glPolygonMode #-}
ptr_glPolygonMode :: FunPtr (GLenum -> GLenum -> IO ())
ptr_glPolygonMode = unsafePerformIO $ getCommand "glPolygonMode"

-- glPolygonOffset -------------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glPolygonOffset.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glPolygonOffset.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glPolygonOffset.xhtml OpenGL 4.x>
glPolygonOffset
  :: GLfloat -- ^ @factor@.
  -> GLfloat -- ^ @units@.
  -> IO ()
glPolygonOffset = dyn_glPolygonOffset ptr_glPolygonOffset

foreign import CALLCONV "dynamic" dyn_glPolygonOffset
  :: FunPtr (GLfloat -> GLfloat -> IO ())
  ->         GLfloat -> GLfloat -> IO ()

{-# NOINLINE ptr_glPolygonOffset #-}
ptr_glPolygonOffset :: FunPtr (GLfloat -> GLfloat -> IO ())
ptr_glPolygonOffset = unsafePerformIO $ getCommand "glPolygonOffset"

-- glPolygonOffsetClampEXT -----------------------------------------------------

glPolygonOffsetClampEXT
  :: GLfloat -- ^ @factor@.
  -> GLfloat -- ^ @units@.
  -> GLfloat -- ^ @clamp@.
  -> IO ()
glPolygonOffsetClampEXT = dyn_glPolygonOffsetClampEXT ptr_glPolygonOffsetClampEXT

foreign import CALLCONV "dynamic" dyn_glPolygonOffsetClampEXT
  :: FunPtr (GLfloat -> GLfloat -> GLfloat -> IO ())
  ->         GLfloat -> GLfloat -> GLfloat -> IO ()

{-# NOINLINE ptr_glPolygonOffsetClampEXT #-}
ptr_glPolygonOffsetClampEXT :: FunPtr (GLfloat -> GLfloat -> GLfloat -> IO ())
ptr_glPolygonOffsetClampEXT = unsafePerformIO $ getCommand "glPolygonOffsetClampEXT"

-- glPolygonOffsetEXT ----------------------------------------------------------

glPolygonOffsetEXT
  :: GLfloat -- ^ @factor@.
  -> GLfloat -- ^ @bias@.
  -> IO ()
glPolygonOffsetEXT = dyn_glPolygonOffsetEXT ptr_glPolygonOffsetEXT

foreign import CALLCONV "dynamic" dyn_glPolygonOffsetEXT
  :: FunPtr (GLfloat -> GLfloat -> IO ())
  ->         GLfloat -> GLfloat -> IO ()

{-# NOINLINE ptr_glPolygonOffsetEXT #-}
ptr_glPolygonOffsetEXT :: FunPtr (GLfloat -> GLfloat -> IO ())
ptr_glPolygonOffsetEXT = unsafePerformIO $ getCommand "glPolygonOffsetEXT"

-- glPolygonOffsetx ------------------------------------------------------------

glPolygonOffsetx
  :: GLfixed -- ^ @factor@.
  -> GLfixed -- ^ @units@.
  -> IO ()
glPolygonOffsetx = dyn_glPolygonOffsetx ptr_glPolygonOffsetx

foreign import CALLCONV "dynamic" dyn_glPolygonOffsetx
  :: FunPtr (GLfixed -> GLfixed -> IO ())
  ->         GLfixed -> GLfixed -> IO ()

{-# NOINLINE ptr_glPolygonOffsetx #-}
ptr_glPolygonOffsetx :: FunPtr (GLfixed -> GLfixed -> IO ())
ptr_glPolygonOffsetx = unsafePerformIO $ getCommand "glPolygonOffsetx"

-- glPolygonOffsetxOES ---------------------------------------------------------

glPolygonOffsetxOES
  :: GLfixed -- ^ @factor@.
  -> GLfixed -- ^ @units@.
  -> IO ()
glPolygonOffsetxOES = dyn_glPolygonOffsetxOES ptr_glPolygonOffsetxOES

foreign import CALLCONV "dynamic" dyn_glPolygonOffsetxOES
  :: FunPtr (GLfixed -> GLfixed -> IO ())
  ->         GLfixed -> GLfixed -> IO ()

{-# NOINLINE ptr_glPolygonOffsetxOES #-}
ptr_glPolygonOffsetxOES :: FunPtr (GLfixed -> GLfixed -> IO ())
ptr_glPolygonOffsetxOES = unsafePerformIO $ getCommand "glPolygonOffsetxOES"

-- glPolygonStipple ------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glPolygonStipple.xml OpenGL 2.x>
glPolygonStipple
  :: Ptr GLubyte -- ^ @mask@ pointing to @COMPSIZE()@ elements of type @GLubyte@.
  -> IO ()
glPolygonStipple = dyn_glPolygonStipple ptr_glPolygonStipple

foreign import CALLCONV "dynamic" dyn_glPolygonStipple
  :: FunPtr (Ptr GLubyte -> IO ())
  ->         Ptr GLubyte -> IO ()

{-# NOINLINE ptr_glPolygonStipple #-}
ptr_glPolygonStipple :: FunPtr (Ptr GLubyte -> IO ())
ptr_glPolygonStipple = unsafePerformIO $ getCommand "glPolygonStipple"

-- glPopAttrib -----------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glPushAttrib.xml OpenGL 2.x>
glPopAttrib
  :: IO ()
glPopAttrib = dyn_glPopAttrib ptr_glPopAttrib

foreign import CALLCONV "dynamic" dyn_glPopAttrib
  :: FunPtr (IO ())
  ->         IO ()

{-# NOINLINE ptr_glPopAttrib #-}
ptr_glPopAttrib :: FunPtr (IO ())
ptr_glPopAttrib = unsafePerformIO $ getCommand "glPopAttrib"

-- glPopClientAttrib -----------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glPushClientAttrib.xml OpenGL 2.x>
glPopClientAttrib
  :: IO ()
glPopClientAttrib = dyn_glPopClientAttrib ptr_glPopClientAttrib

foreign import CALLCONV "dynamic" dyn_glPopClientAttrib
  :: FunPtr (IO ())
  ->         IO ()

{-# NOINLINE ptr_glPopClientAttrib #-}
ptr_glPopClientAttrib :: FunPtr (IO ())
ptr_glPopClientAttrib = unsafePerformIO $ getCommand "glPopClientAttrib"

-- glPopDebugGroup -------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glPopDebugGroup.xhtml OpenGL 4.x>
glPopDebugGroup
  :: IO ()
glPopDebugGroup = dyn_glPopDebugGroup ptr_glPopDebugGroup

foreign import CALLCONV "dynamic" dyn_glPopDebugGroup
  :: FunPtr (IO ())
  ->         IO ()

{-# NOINLINE ptr_glPopDebugGroup #-}
ptr_glPopDebugGroup :: FunPtr (IO ())
ptr_glPopDebugGroup = unsafePerformIO $ getCommand "glPopDebugGroup"

-- glPopDebugGroupKHR ----------------------------------------------------------

glPopDebugGroupKHR
  :: IO ()
glPopDebugGroupKHR = dyn_glPopDebugGroupKHR ptr_glPopDebugGroupKHR

foreign import CALLCONV "dynamic" dyn_glPopDebugGroupKHR
  :: FunPtr (IO ())
  ->         IO ()

{-# NOINLINE ptr_glPopDebugGroupKHR #-}
ptr_glPopDebugGroupKHR :: FunPtr (IO ())
ptr_glPopDebugGroupKHR = unsafePerformIO $ getCommand "glPopDebugGroupKHR"

-- glPopGroupMarkerEXT ---------------------------------------------------------

glPopGroupMarkerEXT
  :: IO ()
glPopGroupMarkerEXT = dyn_glPopGroupMarkerEXT ptr_glPopGroupMarkerEXT

foreign import CALLCONV "dynamic" dyn_glPopGroupMarkerEXT
  :: FunPtr (IO ())
  ->         IO ()

{-# NOINLINE ptr_glPopGroupMarkerEXT #-}
ptr_glPopGroupMarkerEXT :: FunPtr (IO ())
ptr_glPopGroupMarkerEXT = unsafePerformIO $ getCommand "glPopGroupMarkerEXT"

-- glPopMatrix -----------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glPushMatrix.xml OpenGL 2.x>
glPopMatrix
  :: IO ()
glPopMatrix = dyn_glPopMatrix ptr_glPopMatrix

foreign import CALLCONV "dynamic" dyn_glPopMatrix
  :: FunPtr (IO ())
  ->         IO ()

{-# NOINLINE ptr_glPopMatrix #-}
ptr_glPopMatrix :: FunPtr (IO ())
ptr_glPopMatrix = unsafePerformIO $ getCommand "glPopMatrix"

-- glPopName -------------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glPushName.xml OpenGL 2.x>
glPopName
  :: IO ()
glPopName = dyn_glPopName ptr_glPopName

foreign import CALLCONV "dynamic" dyn_glPopName
  :: FunPtr (IO ())
  ->         IO ()

{-# NOINLINE ptr_glPopName #-}
ptr_glPopName :: FunPtr (IO ())
ptr_glPopName = unsafePerformIO $ getCommand "glPopName"

-- glPresentFrameDualFillNV ----------------------------------------------------

glPresentFrameDualFillNV
  :: GLuint -- ^ @video_slot@.
  -> GLuint64EXT -- ^ @minPresentTime@.
  -> GLuint -- ^ @beginPresentTimeId@.
  -> GLuint -- ^ @presentDurationId@.
  -> GLenum -- ^ @type@.
  -> GLenum -- ^ @target0@.
  -> GLuint -- ^ @fill0@.
  -> GLenum -- ^ @target1@.
  -> GLuint -- ^ @fill1@.
  -> GLenum -- ^ @target2@.
  -> GLuint -- ^ @fill2@.
  -> GLenum -- ^ @target3@.
  -> GLuint -- ^ @fill3@.
  -> IO ()
glPresentFrameDualFillNV = dyn_glPresentFrameDualFillNV ptr_glPresentFrameDualFillNV

foreign import CALLCONV "dynamic" dyn_glPresentFrameDualFillNV
  :: FunPtr (GLuint -> GLuint64EXT -> GLuint -> GLuint -> GLenum -> GLenum -> GLuint -> GLenum -> GLuint -> GLenum -> GLuint -> GLenum -> GLuint -> IO ())
  ->         GLuint -> GLuint64EXT -> GLuint -> GLuint -> GLenum -> GLenum -> GLuint -> GLenum -> GLuint -> GLenum -> GLuint -> GLenum -> GLuint -> IO ()

{-# NOINLINE ptr_glPresentFrameDualFillNV #-}
ptr_glPresentFrameDualFillNV :: FunPtr (GLuint -> GLuint64EXT -> GLuint -> GLuint -> GLenum -> GLenum -> GLuint -> GLenum -> GLuint -> GLenum -> GLuint -> GLenum -> GLuint -> IO ())
ptr_glPresentFrameDualFillNV = unsafePerformIO $ getCommand "glPresentFrameDualFillNV"

-- glPresentFrameKeyedNV -------------------------------------------------------

glPresentFrameKeyedNV
  :: GLuint -- ^ @video_slot@.
  -> GLuint64EXT -- ^ @minPresentTime@.
  -> GLuint -- ^ @beginPresentTimeId@.
  -> GLuint -- ^ @presentDurationId@.
  -> GLenum -- ^ @type@.
  -> GLenum -- ^ @target0@.
  -> GLuint -- ^ @fill0@.
  -> GLuint -- ^ @key0@.
  -> GLenum -- ^ @target1@.
  -> GLuint -- ^ @fill1@.
  -> GLuint -- ^ @key1@.
  -> IO ()
glPresentFrameKeyedNV = dyn_glPresentFrameKeyedNV ptr_glPresentFrameKeyedNV

foreign import CALLCONV "dynamic" dyn_glPresentFrameKeyedNV
  :: FunPtr (GLuint -> GLuint64EXT -> GLuint -> GLuint -> GLenum -> GLenum -> GLuint -> GLuint -> GLenum -> GLuint -> GLuint -> IO ())
  ->         GLuint -> GLuint64EXT -> GLuint -> GLuint -> GLenum -> GLenum -> GLuint -> GLuint -> GLenum -> GLuint -> GLuint -> IO ()

{-# NOINLINE ptr_glPresentFrameKeyedNV #-}
ptr_glPresentFrameKeyedNV :: FunPtr (GLuint -> GLuint64EXT -> GLuint -> GLuint -> GLenum -> GLenum -> GLuint -> GLuint -> GLenum -> GLuint -> GLuint -> IO ())
ptr_glPresentFrameKeyedNV = unsafePerformIO $ getCommand "glPresentFrameKeyedNV"

-- glPrimitiveBoundingBoxEXT ---------------------------------------------------

glPrimitiveBoundingBoxEXT
  :: GLfloat -- ^ @minX@.
  -> GLfloat -- ^ @minY@.
  -> GLfloat -- ^ @minZ@.
  -> GLfloat -- ^ @minW@.
  -> GLfloat -- ^ @maxX@.
  -> GLfloat -- ^ @maxY@.
  -> GLfloat -- ^ @maxZ@.
  -> GLfloat -- ^ @maxW@.
  -> IO ()
glPrimitiveBoundingBoxEXT = dyn_glPrimitiveBoundingBoxEXT ptr_glPrimitiveBoundingBoxEXT

foreign import CALLCONV "dynamic" dyn_glPrimitiveBoundingBoxEXT
  :: FunPtr (GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
  ->         GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ()

{-# NOINLINE ptr_glPrimitiveBoundingBoxEXT #-}
ptr_glPrimitiveBoundingBoxEXT :: FunPtr (GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
ptr_glPrimitiveBoundingBoxEXT = unsafePerformIO $ getCommand "glPrimitiveBoundingBoxEXT"

-- glPrimitiveBoundingBoxOES ---------------------------------------------------

glPrimitiveBoundingBoxOES
  :: GLfloat -- ^ @minX@.
  -> GLfloat -- ^ @minY@.
  -> GLfloat -- ^ @minZ@.
  -> GLfloat -- ^ @minW@.
  -> GLfloat -- ^ @maxX@.
  -> GLfloat -- ^ @maxY@.
  -> GLfloat -- ^ @maxZ@.
  -> GLfloat -- ^ @maxW@.
  -> IO ()
glPrimitiveBoundingBoxOES = dyn_glPrimitiveBoundingBoxOES ptr_glPrimitiveBoundingBoxOES

foreign import CALLCONV "dynamic" dyn_glPrimitiveBoundingBoxOES
  :: FunPtr (GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
  ->         GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ()

{-# NOINLINE ptr_glPrimitiveBoundingBoxOES #-}
ptr_glPrimitiveBoundingBoxOES :: FunPtr (GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
ptr_glPrimitiveBoundingBoxOES = unsafePerformIO $ getCommand "glPrimitiveBoundingBoxOES"

-- glPrimitiveRestartIndex -----------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glPrimitiveRestartIndex.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glPrimitiveRestartIndex.xhtml OpenGL 4.x>
glPrimitiveRestartIndex
  :: GLuint -- ^ @index@.
  -> IO ()
glPrimitiveRestartIndex = dyn_glPrimitiveRestartIndex ptr_glPrimitiveRestartIndex

foreign import CALLCONV "dynamic" dyn_glPrimitiveRestartIndex
  :: FunPtr (GLuint -> IO ())
  ->         GLuint -> IO ()

{-# NOINLINE ptr_glPrimitiveRestartIndex #-}
ptr_glPrimitiveRestartIndex :: FunPtr (GLuint -> IO ())
ptr_glPrimitiveRestartIndex = unsafePerformIO $ getCommand "glPrimitiveRestartIndex"

-- glPrimitiveRestartIndexNV ---------------------------------------------------

glPrimitiveRestartIndexNV
  :: GLuint -- ^ @index@.
  -> IO ()
glPrimitiveRestartIndexNV = dyn_glPrimitiveRestartIndexNV ptr_glPrimitiveRestartIndexNV

foreign import CALLCONV "dynamic" dyn_glPrimitiveRestartIndexNV
  :: FunPtr (GLuint -> IO ())
  ->         GLuint -> IO ()

{-# NOINLINE ptr_glPrimitiveRestartIndexNV #-}
ptr_glPrimitiveRestartIndexNV :: FunPtr (GLuint -> IO ())
ptr_glPrimitiveRestartIndexNV = unsafePerformIO $ getCommand "glPrimitiveRestartIndexNV"

-- glPrimitiveRestartNV --------------------------------------------------------

glPrimitiveRestartNV
  :: IO ()
glPrimitiveRestartNV = dyn_glPrimitiveRestartNV ptr_glPrimitiveRestartNV

foreign import CALLCONV "dynamic" dyn_glPrimitiveRestartNV
  :: FunPtr (IO ())
  ->         IO ()

{-# NOINLINE ptr_glPrimitiveRestartNV #-}
ptr_glPrimitiveRestartNV :: FunPtr (IO ())
ptr_glPrimitiveRestartNV = unsafePerformIO $ getCommand "glPrimitiveRestartNV"

-- glPrioritizeTextures --------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glPrioritizeTextures.xml OpenGL 2.x>
glPrioritizeTextures
  :: GLsizei -- ^ @n@.
  -> Ptr GLuint -- ^ @textures@ pointing to @n@ elements of type @Texture@.
  -> Ptr GLfloat -- ^ @priorities@ pointing to @n@ elements of type @GLfloat@.
  -> IO ()
glPrioritizeTextures = dyn_glPrioritizeTextures ptr_glPrioritizeTextures

foreign import CALLCONV "dynamic" dyn_glPrioritizeTextures
  :: FunPtr (GLsizei -> Ptr GLuint -> Ptr GLfloat -> IO ())
  ->         GLsizei -> Ptr GLuint -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glPrioritizeTextures #-}
ptr_glPrioritizeTextures :: FunPtr (GLsizei -> Ptr GLuint -> Ptr GLfloat -> IO ())
ptr_glPrioritizeTextures = unsafePerformIO $ getCommand "glPrioritizeTextures"

-- glPrioritizeTexturesEXT -----------------------------------------------------

glPrioritizeTexturesEXT
  :: GLsizei -- ^ @n@.
  -> Ptr GLuint -- ^ @textures@ pointing to @n@ elements of type @Texture@.
  -> Ptr GLclampf -- ^ @priorities@ pointing to @n@ elements of type @ClampedFloat32@.
  -> IO ()
glPrioritizeTexturesEXT = dyn_glPrioritizeTexturesEXT ptr_glPrioritizeTexturesEXT

foreign import CALLCONV "dynamic" dyn_glPrioritizeTexturesEXT
  :: FunPtr (GLsizei -> Ptr GLuint -> Ptr GLclampf -> IO ())
  ->         GLsizei -> Ptr GLuint -> Ptr GLclampf -> IO ()

{-# NOINLINE ptr_glPrioritizeTexturesEXT #-}
ptr_glPrioritizeTexturesEXT :: FunPtr (GLsizei -> Ptr GLuint -> Ptr GLclampf -> IO ())
ptr_glPrioritizeTexturesEXT = unsafePerformIO $ getCommand "glPrioritizeTexturesEXT"

-- glPrioritizeTexturesxOES ----------------------------------------------------

glPrioritizeTexturesxOES
  :: GLsizei -- ^ @n@.
  -> Ptr GLuint -- ^ @textures@ pointing to @n@ elements of type @GLuint@.
  -> Ptr GLfixed -- ^ @priorities@ pointing to @n@ elements of type @ClampedFixed@.
  -> IO ()
glPrioritizeTexturesxOES = dyn_glPrioritizeTexturesxOES ptr_glPrioritizeTexturesxOES

foreign import CALLCONV "dynamic" dyn_glPrioritizeTexturesxOES
  :: FunPtr (GLsizei -> Ptr GLuint -> Ptr GLfixed -> IO ())
  ->         GLsizei -> Ptr GLuint -> Ptr GLfixed -> IO ()

{-# NOINLINE ptr_glPrioritizeTexturesxOES #-}
ptr_glPrioritizeTexturesxOES :: FunPtr (GLsizei -> Ptr GLuint -> Ptr GLfixed -> IO ())
ptr_glPrioritizeTexturesxOES = unsafePerformIO $ getCommand "glPrioritizeTexturesxOES"

-- glProgramBinary -------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glProgramBinary.xhtml OpenGL 4.x>
glProgramBinary
  :: GLuint -- ^ @program@.
  -> GLenum -- ^ @binaryFormat@.
  -> Ptr a -- ^ @binary@ pointing to @length@ elements of type @a@.
  -> GLsizei -- ^ @length@.
  -> IO ()
glProgramBinary = dyn_glProgramBinary ptr_glProgramBinary

foreign import CALLCONV "dynamic" dyn_glProgramBinary
  :: FunPtr (GLuint -> GLenum -> Ptr a -> GLsizei -> IO ())
  ->         GLuint -> GLenum -> Ptr a -> GLsizei -> IO ()

{-# NOINLINE ptr_glProgramBinary #-}
ptr_glProgramBinary :: FunPtr (GLuint -> GLenum -> Ptr a -> GLsizei -> IO ())
ptr_glProgramBinary = unsafePerformIO $ getCommand "glProgramBinary"

-- glProgramBinaryOES ----------------------------------------------------------

glProgramBinaryOES
  :: GLuint -- ^ @program@.
  -> GLenum -- ^ @binaryFormat@.
  -> Ptr a -- ^ @binary@ pointing to @length@ elements of type @a@.
  -> GLint -- ^ @length@.
  -> IO ()
glProgramBinaryOES = dyn_glProgramBinaryOES ptr_glProgramBinaryOES

foreign import CALLCONV "dynamic" dyn_glProgramBinaryOES
  :: FunPtr (GLuint -> GLenum -> Ptr a -> GLint -> IO ())
  ->         GLuint -> GLenum -> Ptr a -> GLint -> IO ()

{-# NOINLINE ptr_glProgramBinaryOES #-}
ptr_glProgramBinaryOES :: FunPtr (GLuint -> GLenum -> Ptr a -> GLint -> IO ())
ptr_glProgramBinaryOES = unsafePerformIO $ getCommand "glProgramBinaryOES"

-- glProgramBufferParametersIivNV ----------------------------------------------

glProgramBufferParametersIivNV
  :: GLenum -- ^ @target@ of type @ProgramTarget@.
  -> GLuint -- ^ @bindingIndex@.
  -> GLuint -- ^ @wordIndex@.
  -> GLsizei -- ^ @count@.
  -> Ptr GLint -- ^ @params@ pointing to @count@ elements of type @GLint@.
  -> IO ()
glProgramBufferParametersIivNV = dyn_glProgramBufferParametersIivNV ptr_glProgramBufferParametersIivNV

foreign import CALLCONV "dynamic" dyn_glProgramBufferParametersIivNV
  :: FunPtr (GLenum -> GLuint -> GLuint -> GLsizei -> Ptr GLint -> IO ())
  ->         GLenum -> GLuint -> GLuint -> GLsizei -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glProgramBufferParametersIivNV #-}
ptr_glProgramBufferParametersIivNV :: FunPtr (GLenum -> GLuint -> GLuint -> GLsizei -> Ptr GLint -> IO ())
ptr_glProgramBufferParametersIivNV = unsafePerformIO $ getCommand "glProgramBufferParametersIivNV"

-- glProgramBufferParametersIuivNV ---------------------------------------------

glProgramBufferParametersIuivNV
  :: GLenum -- ^ @target@ of type @ProgramTarget@.
  -> GLuint -- ^ @bindingIndex@.
  -> GLuint -- ^ @wordIndex@.
  -> GLsizei -- ^ @count@.
  -> Ptr GLuint -- ^ @params@ pointing to @count@ elements of type @GLuint@.
  -> IO ()
glProgramBufferParametersIuivNV = dyn_glProgramBufferParametersIuivNV ptr_glProgramBufferParametersIuivNV

foreign import CALLCONV "dynamic" dyn_glProgramBufferParametersIuivNV
  :: FunPtr (GLenum -> GLuint -> GLuint -> GLsizei -> Ptr GLuint -> IO ())
  ->         GLenum -> GLuint -> GLuint -> GLsizei -> Ptr GLuint -> IO ()

{-# NOINLINE ptr_glProgramBufferParametersIuivNV #-}
ptr_glProgramBufferParametersIuivNV :: FunPtr (GLenum -> GLuint -> GLuint -> GLsizei -> Ptr GLuint -> IO ())
ptr_glProgramBufferParametersIuivNV = unsafePerformIO $ getCommand "glProgramBufferParametersIuivNV"

-- glProgramBufferParametersfvNV -----------------------------------------------

glProgramBufferParametersfvNV
  :: GLenum -- ^ @target@ of type @ProgramTarget@.
  -> GLuint -- ^ @bindingIndex@.
  -> GLuint -- ^ @wordIndex@.
  -> GLsizei -- ^ @count@.
  -> Ptr GLfloat -- ^ @params@ pointing to @count@ elements of type @GLfloat@.
  -> IO ()
glProgramBufferParametersfvNV = dyn_glProgramBufferParametersfvNV ptr_glProgramBufferParametersfvNV

foreign import CALLCONV "dynamic" dyn_glProgramBufferParametersfvNV
  :: FunPtr (GLenum -> GLuint -> GLuint -> GLsizei -> Ptr GLfloat -> IO ())
  ->         GLenum -> GLuint -> GLuint -> GLsizei -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glProgramBufferParametersfvNV #-}
ptr_glProgramBufferParametersfvNV :: FunPtr (GLenum -> GLuint -> GLuint -> GLsizei -> Ptr GLfloat -> IO ())
ptr_glProgramBufferParametersfvNV = unsafePerformIO $ getCommand "glProgramBufferParametersfvNV"

-- glProgramEnvParameter4dARB --------------------------------------------------

glProgramEnvParameter4dARB
  :: GLenum -- ^ @target@ of type @ProgramTargetARB@.
  -> GLuint -- ^ @index@.
  -> GLdouble -- ^ @x@.
  -> GLdouble -- ^ @y@.
  -> GLdouble -- ^ @z@.
  -> GLdouble -- ^ @w@.
  -> IO ()
glProgramEnvParameter4dARB = dyn_glProgramEnvParameter4dARB ptr_glProgramEnvParameter4dARB

foreign import CALLCONV "dynamic" dyn_glProgramEnvParameter4dARB
  :: FunPtr (GLenum -> GLuint -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ())
  ->         GLenum -> GLuint -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ()

{-# NOINLINE ptr_glProgramEnvParameter4dARB #-}
ptr_glProgramEnvParameter4dARB :: FunPtr (GLenum -> GLuint -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ())
ptr_glProgramEnvParameter4dARB = unsafePerformIO $ getCommand "glProgramEnvParameter4dARB"

-- glProgramEnvParameter4dvARB -------------------------------------------------

glProgramEnvParameter4dvARB
  :: GLenum -- ^ @target@ of type @ProgramTargetARB@.
  -> GLuint -- ^ @index@.
  -> Ptr GLdouble -- ^ @params@ pointing to @4@ elements of type @GLdouble@.
  -> IO ()
glProgramEnvParameter4dvARB = dyn_glProgramEnvParameter4dvARB ptr_glProgramEnvParameter4dvARB

foreign import CALLCONV "dynamic" dyn_glProgramEnvParameter4dvARB
  :: FunPtr (GLenum -> GLuint -> Ptr GLdouble -> IO ())
  ->         GLenum -> GLuint -> Ptr GLdouble -> IO ()

{-# NOINLINE ptr_glProgramEnvParameter4dvARB #-}
ptr_glProgramEnvParameter4dvARB :: FunPtr (GLenum -> GLuint -> Ptr GLdouble -> IO ())
ptr_glProgramEnvParameter4dvARB = unsafePerformIO $ getCommand "glProgramEnvParameter4dvARB"

-- glProgramEnvParameter4fARB --------------------------------------------------

glProgramEnvParameter4fARB
  :: GLenum -- ^ @target@ of type @ProgramTargetARB@.
  -> GLuint -- ^ @index@.
  -> GLfloat -- ^ @x@.
  -> GLfloat -- ^ @y@.
  -> GLfloat -- ^ @z@.
  -> GLfloat -- ^ @w@.
  -> IO ()
glProgramEnvParameter4fARB = dyn_glProgramEnvParameter4fARB ptr_glProgramEnvParameter4fARB

foreign import CALLCONV "dynamic" dyn_glProgramEnvParameter4fARB
  :: FunPtr (GLenum -> GLuint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
  ->         GLenum -> GLuint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ()

{-# NOINLINE ptr_glProgramEnvParameter4fARB #-}
ptr_glProgramEnvParameter4fARB :: FunPtr (GLenum -> GLuint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
ptr_glProgramEnvParameter4fARB = unsafePerformIO $ getCommand "glProgramEnvParameter4fARB"

-- glProgramEnvParameter4fvARB -------------------------------------------------

glProgramEnvParameter4fvARB
  :: GLenum -- ^ @target@ of type @ProgramTargetARB@.
  -> GLuint -- ^ @index@.
  -> Ptr GLfloat -- ^ @params@ pointing to @4@ elements of type @GLfloat@.
  -> IO ()
glProgramEnvParameter4fvARB = dyn_glProgramEnvParameter4fvARB ptr_glProgramEnvParameter4fvARB

foreign import CALLCONV "dynamic" dyn_glProgramEnvParameter4fvARB
  :: FunPtr (GLenum -> GLuint -> Ptr GLfloat -> IO ())
  ->         GLenum -> GLuint -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glProgramEnvParameter4fvARB #-}
ptr_glProgramEnvParameter4fvARB :: FunPtr (GLenum -> GLuint -> Ptr GLfloat -> IO ())
ptr_glProgramEnvParameter4fvARB = unsafePerformIO $ getCommand "glProgramEnvParameter4fvARB"

-- glProgramEnvParameterI4iNV --------------------------------------------------

glProgramEnvParameterI4iNV
  :: GLenum -- ^ @target@ of type @ProgramTarget@.
  -> GLuint -- ^ @index@.
  -> GLint -- ^ @x@.
  -> GLint -- ^ @y@.
  -> GLint -- ^ @z@.
  -> GLint -- ^ @w@.
  -> IO ()
glProgramEnvParameterI4iNV = dyn_glProgramEnvParameterI4iNV ptr_glProgramEnvParameterI4iNV

foreign import CALLCONV "dynamic" dyn_glProgramEnvParameterI4iNV
  :: FunPtr (GLenum -> GLuint -> GLint -> GLint -> GLint -> GLint -> IO ())
  ->         GLenum -> GLuint -> GLint -> GLint -> GLint -> GLint -> IO ()

{-# NOINLINE ptr_glProgramEnvParameterI4iNV #-}
ptr_glProgramEnvParameterI4iNV :: FunPtr (GLenum -> GLuint -> GLint -> GLint -> GLint -> GLint -> IO ())
ptr_glProgramEnvParameterI4iNV = unsafePerformIO $ getCommand "glProgramEnvParameterI4iNV"

-- glProgramEnvParameterI4ivNV -------------------------------------------------

glProgramEnvParameterI4ivNV
  :: GLenum -- ^ @target@ of type @ProgramTarget@.
  -> GLuint -- ^ @index@.
  -> Ptr GLint -- ^ @params@ pointing to @4@ elements of type @GLint@.
  -> IO ()
glProgramEnvParameterI4ivNV = dyn_glProgramEnvParameterI4ivNV ptr_glProgramEnvParameterI4ivNV

foreign import CALLCONV "dynamic" dyn_glProgramEnvParameterI4ivNV
  :: FunPtr (GLenum -> GLuint -> Ptr GLint -> IO ())
  ->         GLenum -> GLuint -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glProgramEnvParameterI4ivNV #-}
ptr_glProgramEnvParameterI4ivNV :: FunPtr (GLenum -> GLuint -> Ptr GLint -> IO ())
ptr_glProgramEnvParameterI4ivNV = unsafePerformIO $ getCommand "glProgramEnvParameterI4ivNV"

-- glProgramEnvParameterI4uiNV -------------------------------------------------

glProgramEnvParameterI4uiNV
  :: GLenum -- ^ @target@ of type @ProgramTarget@.
  -> GLuint -- ^ @index@.
  -> GLuint -- ^ @x@.
  -> GLuint -- ^ @y@.
  -> GLuint -- ^ @z@.
  -> GLuint -- ^ @w@.
  -> IO ()
glProgramEnvParameterI4uiNV = dyn_glProgramEnvParameterI4uiNV ptr_glProgramEnvParameterI4uiNV

foreign import CALLCONV "dynamic" dyn_glProgramEnvParameterI4uiNV
  :: FunPtr (GLenum -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> IO ())
  ->         GLenum -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> IO ()

{-# NOINLINE ptr_glProgramEnvParameterI4uiNV #-}
ptr_glProgramEnvParameterI4uiNV :: FunPtr (GLenum -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> IO ())
ptr_glProgramEnvParameterI4uiNV = unsafePerformIO $ getCommand "glProgramEnvParameterI4uiNV"

-- glProgramEnvParameterI4uivNV ------------------------------------------------

glProgramEnvParameterI4uivNV
  :: GLenum -- ^ @target@ of type @ProgramTarget@.
  -> GLuint -- ^ @index@.
  -> Ptr GLuint -- ^ @params@ pointing to @4@ elements of type @GLuint@.
  -> IO ()
glProgramEnvParameterI4uivNV = dyn_glProgramEnvParameterI4uivNV ptr_glProgramEnvParameterI4uivNV

foreign import CALLCONV "dynamic" dyn_glProgramEnvParameterI4uivNV
  :: FunPtr (GLenum -> GLuint -> Ptr GLuint -> IO ())
  ->         GLenum -> GLuint -> Ptr GLuint -> IO ()

{-# NOINLINE ptr_glProgramEnvParameterI4uivNV #-}
ptr_glProgramEnvParameterI4uivNV :: FunPtr (GLenum -> GLuint -> Ptr GLuint -> IO ())
ptr_glProgramEnvParameterI4uivNV = unsafePerformIO $ getCommand "glProgramEnvParameterI4uivNV"

-- glProgramEnvParameters4fvEXT ------------------------------------------------

glProgramEnvParameters4fvEXT
  :: GLenum -- ^ @target@ of type @ProgramTargetARB@.
  -> GLuint -- ^ @index@.
  -> GLsizei -- ^ @count@.
  -> Ptr GLfloat -- ^ @params@ pointing to @count*4@ elements of type @GLfloat@.
  -> IO ()
glProgramEnvParameters4fvEXT = dyn_glProgramEnvParameters4fvEXT ptr_glProgramEnvParameters4fvEXT

foreign import CALLCONV "dynamic" dyn_glProgramEnvParameters4fvEXT
  :: FunPtr (GLenum -> GLuint -> GLsizei -> Ptr GLfloat -> IO ())
  ->         GLenum -> GLuint -> GLsizei -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glProgramEnvParameters4fvEXT #-}
ptr_glProgramEnvParameters4fvEXT :: FunPtr (GLenum -> GLuint -> GLsizei -> Ptr GLfloat -> IO ())
ptr_glProgramEnvParameters4fvEXT = unsafePerformIO $ getCommand "glProgramEnvParameters4fvEXT"

-- glProgramEnvParametersI4ivNV ------------------------------------------------

glProgramEnvParametersI4ivNV
  :: GLenum -- ^ @target@ of type @ProgramTarget@.
  -> GLuint -- ^ @index@.
  -> GLsizei -- ^ @count@.
  -> Ptr GLint -- ^ @params@ pointing to @count*4@ elements of type @GLint@.
  -> IO ()
glProgramEnvParametersI4ivNV = dyn_glProgramEnvParametersI4ivNV ptr_glProgramEnvParametersI4ivNV

foreign import CALLCONV "dynamic" dyn_glProgramEnvParametersI4ivNV
  :: FunPtr (GLenum -> GLuint -> GLsizei -> Ptr GLint -> IO ())
  ->         GLenum -> GLuint -> GLsizei -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glProgramEnvParametersI4ivNV #-}
ptr_glProgramEnvParametersI4ivNV :: FunPtr (GLenum -> GLuint -> GLsizei -> Ptr GLint -> IO ())
ptr_glProgramEnvParametersI4ivNV = unsafePerformIO $ getCommand "glProgramEnvParametersI4ivNV"

-- glProgramEnvParametersI4uivNV -----------------------------------------------

glProgramEnvParametersI4uivNV
  :: GLenum -- ^ @target@ of type @ProgramTarget@.
  -> GLuint -- ^ @index@.
  -> GLsizei -- ^ @count@.
  -> Ptr GLuint -- ^ @params@ pointing to @count*4@ elements of type @GLuint@.
  -> IO ()
glProgramEnvParametersI4uivNV = dyn_glProgramEnvParametersI4uivNV ptr_glProgramEnvParametersI4uivNV

foreign import CALLCONV "dynamic" dyn_glProgramEnvParametersI4uivNV
  :: FunPtr (GLenum -> GLuint -> GLsizei -> Ptr GLuint -> IO ())
  ->         GLenum -> GLuint -> GLsizei -> Ptr GLuint -> IO ()

{-# NOINLINE ptr_glProgramEnvParametersI4uivNV #-}
ptr_glProgramEnvParametersI4uivNV :: FunPtr (GLenum -> GLuint -> GLsizei -> Ptr GLuint -> IO ())
ptr_glProgramEnvParametersI4uivNV = unsafePerformIO $ getCommand "glProgramEnvParametersI4uivNV"

-- glProgramLocalParameter4dARB ------------------------------------------------

glProgramLocalParameter4dARB
  :: GLenum -- ^ @target@ of type @ProgramTargetARB@.
  -> GLuint -- ^ @index@.
  -> GLdouble -- ^ @x@.
  -> GLdouble -- ^ @y@.
  -> GLdouble -- ^ @z@.
  -> GLdouble -- ^ @w@.
  -> IO ()
glProgramLocalParameter4dARB = dyn_glProgramLocalParameter4dARB ptr_glProgramLocalParameter4dARB

foreign import CALLCONV "dynamic" dyn_glProgramLocalParameter4dARB
  :: FunPtr (GLenum -> GLuint -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ())
  ->         GLenum -> GLuint -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ()

{-# NOINLINE ptr_glProgramLocalParameter4dARB #-}
ptr_glProgramLocalParameter4dARB :: FunPtr (GLenum -> GLuint -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ())
ptr_glProgramLocalParameter4dARB = unsafePerformIO $ getCommand "glProgramLocalParameter4dARB"

-- glProgramLocalParameter4dvARB -----------------------------------------------

glProgramLocalParameter4dvARB
  :: GLenum -- ^ @target@ of type @ProgramTargetARB@.
  -> GLuint -- ^ @index@.
  -> Ptr GLdouble -- ^ @params@ pointing to @4@ elements of type @GLdouble@.
  -> IO ()
glProgramLocalParameter4dvARB = dyn_glProgramLocalParameter4dvARB ptr_glProgramLocalParameter4dvARB

foreign import CALLCONV "dynamic" dyn_glProgramLocalParameter4dvARB
  :: FunPtr (GLenum -> GLuint -> Ptr GLdouble -> IO ())
  ->         GLenum -> GLuint -> Ptr GLdouble -> IO ()

{-# NOINLINE ptr_glProgramLocalParameter4dvARB #-}
ptr_glProgramLocalParameter4dvARB :: FunPtr (GLenum -> GLuint -> Ptr GLdouble -> IO ())
ptr_glProgramLocalParameter4dvARB = unsafePerformIO $ getCommand "glProgramLocalParameter4dvARB"

-- glProgramLocalParameter4fARB ------------------------------------------------

glProgramLocalParameter4fARB
  :: GLenum -- ^ @target@ of type @ProgramTargetARB@.
  -> GLuint -- ^ @index@.
  -> GLfloat -- ^ @x@.
  -> GLfloat -- ^ @y@.
  -> GLfloat -- ^ @z@.
  -> GLfloat -- ^ @w@.
  -> IO ()
glProgramLocalParameter4fARB = dyn_glProgramLocalParameter4fARB ptr_glProgramLocalParameter4fARB

foreign import CALLCONV "dynamic" dyn_glProgramLocalParameter4fARB
  :: FunPtr (GLenum -> GLuint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
  ->         GLenum -> GLuint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ()

{-# NOINLINE ptr_glProgramLocalParameter4fARB #-}
ptr_glProgramLocalParameter4fARB :: FunPtr (GLenum -> GLuint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
ptr_glProgramLocalParameter4fARB = unsafePerformIO $ getCommand "glProgramLocalParameter4fARB"

-- glProgramLocalParameter4fvARB -----------------------------------------------

glProgramLocalParameter4fvARB
  :: GLenum -- ^ @target@ of type @ProgramTargetARB@.
  -> GLuint -- ^ @index@.
  -> Ptr GLfloat -- ^ @params@ pointing to @4@ elements of type @GLfloat@.
  -> IO ()
glProgramLocalParameter4fvARB = dyn_glProgramLocalParameter4fvARB ptr_glProgramLocalParameter4fvARB

foreign import CALLCONV "dynamic" dyn_glProgramLocalParameter4fvARB
  :: FunPtr (GLenum -> GLuint -> Ptr GLfloat -> IO ())
  ->         GLenum -> GLuint -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glProgramLocalParameter4fvARB #-}
ptr_glProgramLocalParameter4fvARB :: FunPtr (GLenum -> GLuint -> Ptr GLfloat -> IO ())
ptr_glProgramLocalParameter4fvARB = unsafePerformIO $ getCommand "glProgramLocalParameter4fvARB"

-- glProgramLocalParameterI4iNV ------------------------------------------------

glProgramLocalParameterI4iNV
  :: GLenum -- ^ @target@ of type @ProgramTarget@.
  -> GLuint -- ^ @index@.
  -> GLint -- ^ @x@.
  -> GLint -- ^ @y@.
  -> GLint -- ^ @z@.
  -> GLint -- ^ @w@.
  -> IO ()
glProgramLocalParameterI4iNV = dyn_glProgramLocalParameterI4iNV ptr_glProgramLocalParameterI4iNV

foreign import CALLCONV "dynamic" dyn_glProgramLocalParameterI4iNV
  :: FunPtr (GLenum -> GLuint -> GLint -> GLint -> GLint -> GLint -> IO ())
  ->         GLenum -> GLuint -> GLint -> GLint -> GLint -> GLint -> IO ()

{-# NOINLINE ptr_glProgramLocalParameterI4iNV #-}
ptr_glProgramLocalParameterI4iNV :: FunPtr (GLenum -> GLuint -> GLint -> GLint -> GLint -> GLint -> IO ())
ptr_glProgramLocalParameterI4iNV = unsafePerformIO $ getCommand "glProgramLocalParameterI4iNV"

-- glProgramLocalParameterI4ivNV -----------------------------------------------

glProgramLocalParameterI4ivNV
  :: GLenum -- ^ @target@ of type @ProgramTarget@.
  -> GLuint -- ^ @index@.
  -> Ptr GLint -- ^ @params@ pointing to @4@ elements of type @GLint@.
  -> IO ()
glProgramLocalParameterI4ivNV = dyn_glProgramLocalParameterI4ivNV ptr_glProgramLocalParameterI4ivNV

foreign import CALLCONV "dynamic" dyn_glProgramLocalParameterI4ivNV
  :: FunPtr (GLenum -> GLuint -> Ptr GLint -> IO ())
  ->         GLenum -> GLuint -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glProgramLocalParameterI4ivNV #-}
ptr_glProgramLocalParameterI4ivNV :: FunPtr (GLenum -> GLuint -> Ptr GLint -> IO ())
ptr_glProgramLocalParameterI4ivNV = unsafePerformIO $ getCommand "glProgramLocalParameterI4ivNV"

-- glProgramLocalParameterI4uiNV -----------------------------------------------

glProgramLocalParameterI4uiNV
  :: GLenum -- ^ @target@ of type @ProgramTarget@.
  -> GLuint -- ^ @index@.
  -> GLuint -- ^ @x@.
  -> GLuint -- ^ @y@.
  -> GLuint -- ^ @z@.
  -> GLuint -- ^ @w@.
  -> IO ()
glProgramLocalParameterI4uiNV = dyn_glProgramLocalParameterI4uiNV ptr_glProgramLocalParameterI4uiNV

foreign import CALLCONV "dynamic" dyn_glProgramLocalParameterI4uiNV
  :: FunPtr (GLenum -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> IO ())
  ->         GLenum -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> IO ()

{-# NOINLINE ptr_glProgramLocalParameterI4uiNV #-}
ptr_glProgramLocalParameterI4uiNV :: FunPtr (GLenum -> GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> IO ())
ptr_glProgramLocalParameterI4uiNV = unsafePerformIO $ getCommand "glProgramLocalParameterI4uiNV"

-- glProgramLocalParameterI4uivNV ----------------------------------------------

glProgramLocalParameterI4uivNV
  :: GLenum -- ^ @target@ of type @ProgramTarget@.
  -> GLuint -- ^ @index@.
  -> Ptr GLuint -- ^ @params@ pointing to @4@ elements of type @GLuint@.
  -> IO ()
glProgramLocalParameterI4uivNV = dyn_glProgramLocalParameterI4uivNV ptr_glProgramLocalParameterI4uivNV

foreign import CALLCONV "dynamic" dyn_glProgramLocalParameterI4uivNV
  :: FunPtr (GLenum -> GLuint -> Ptr GLuint -> IO ())
  ->         GLenum -> GLuint -> Ptr GLuint -> IO ()

{-# NOINLINE ptr_glProgramLocalParameterI4uivNV #-}
ptr_glProgramLocalParameterI4uivNV :: FunPtr (GLenum -> GLuint -> Ptr GLuint -> IO ())
ptr_glProgramLocalParameterI4uivNV = unsafePerformIO $ getCommand "glProgramLocalParameterI4uivNV"

-- glProgramLocalParameters4fvEXT ----------------------------------------------

glProgramLocalParameters4fvEXT
  :: GLenum -- ^ @target@ of type @ProgramTargetARB@.
  -> GLuint -- ^ @index@.
  -> GLsizei -- ^ @count@.
  -> Ptr GLfloat -- ^ @params@ pointing to @count*4@ elements of type @GLfloat@.
  -> IO ()
glProgramLocalParameters4fvEXT = dyn_glProgramLocalParameters4fvEXT ptr_glProgramLocalParameters4fvEXT

foreign import CALLCONV "dynamic" dyn_glProgramLocalParameters4fvEXT
  :: FunPtr (GLenum -> GLuint -> GLsizei -> Ptr GLfloat -> IO ())
  ->         GLenum -> GLuint -> GLsizei -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glProgramLocalParameters4fvEXT #-}
ptr_glProgramLocalParameters4fvEXT :: FunPtr (GLenum -> GLuint -> GLsizei -> Ptr GLfloat -> IO ())
ptr_glProgramLocalParameters4fvEXT = unsafePerformIO $ getCommand "glProgramLocalParameters4fvEXT"

-- glProgramLocalParametersI4ivNV ----------------------------------------------

glProgramLocalParametersI4ivNV
  :: GLenum -- ^ @target@ of type @ProgramTarget@.
  -> GLuint -- ^ @index@.
  -> GLsizei -- ^ @count@.
  -> Ptr GLint -- ^ @params@ pointing to @count*4@ elements of type @GLint@.
  -> IO ()
glProgramLocalParametersI4ivNV = dyn_glProgramLocalParametersI4ivNV ptr_glProgramLocalParametersI4ivNV

foreign import CALLCONV "dynamic" dyn_glProgramLocalParametersI4ivNV
  :: FunPtr (GLenum -> GLuint -> GLsizei -> Ptr GLint -> IO ())
  ->         GLenum -> GLuint -> GLsizei -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glProgramLocalParametersI4ivNV #-}
ptr_glProgramLocalParametersI4ivNV :: FunPtr (GLenum -> GLuint -> GLsizei -> Ptr GLint -> IO ())
ptr_glProgramLocalParametersI4ivNV = unsafePerformIO $ getCommand "glProgramLocalParametersI4ivNV"

-- glProgramLocalParametersI4uivNV ---------------------------------------------

glProgramLocalParametersI4uivNV
  :: GLenum -- ^ @target@ of type @ProgramTarget@.
  -> GLuint -- ^ @index@.
  -> GLsizei -- ^ @count@.
  -> Ptr GLuint -- ^ @params@ pointing to @count*4@ elements of type @GLuint@.
  -> IO ()
glProgramLocalParametersI4uivNV = dyn_glProgramLocalParametersI4uivNV ptr_glProgramLocalParametersI4uivNV

foreign import CALLCONV "dynamic" dyn_glProgramLocalParametersI4uivNV
  :: FunPtr (GLenum -> GLuint -> GLsizei -> Ptr GLuint -> IO ())
  ->         GLenum -> GLuint -> GLsizei -> Ptr GLuint -> IO ()

{-# NOINLINE ptr_glProgramLocalParametersI4uivNV #-}
ptr_glProgramLocalParametersI4uivNV :: FunPtr (GLenum -> GLuint -> GLsizei -> Ptr GLuint -> IO ())
ptr_glProgramLocalParametersI4uivNV = unsafePerformIO $ getCommand "glProgramLocalParametersI4uivNV"

-- glProgramNamedParameter4dNV -------------------------------------------------

glProgramNamedParameter4dNV
  :: GLuint -- ^ @id@.
  -> GLsizei -- ^ @len@.
  -> Ptr GLubyte -- ^ @name@ pointing to @1@ elements of type @GLubyte@.
  -> GLdouble -- ^ @x@.
  -> GLdouble -- ^ @y@.
  -> GLdouble -- ^ @z@.
  -> GLdouble -- ^ @w@.
  -> IO ()
glProgramNamedParameter4dNV = dyn_glProgramNamedParameter4dNV ptr_glProgramNamedParameter4dNV

foreign import CALLCONV "dynamic" dyn_glProgramNamedParameter4dNV
  :: FunPtr (GLuint -> GLsizei -> Ptr GLubyte -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ())
  ->         GLuint -> GLsizei -> Ptr GLubyte -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ()

{-# NOINLINE ptr_glProgramNamedParameter4dNV #-}
ptr_glProgramNamedParameter4dNV :: FunPtr (GLuint -> GLsizei -> Ptr GLubyte -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ())
ptr_glProgramNamedParameter4dNV = unsafePerformIO $ getCommand "glProgramNamedParameter4dNV"

-- glProgramNamedParameter4dvNV ------------------------------------------------

glProgramNamedParameter4dvNV
  :: GLuint -- ^ @id@.
  -> GLsizei -- ^ @len@.
  -> Ptr GLubyte -- ^ @name@ pointing to @1@ elements of type @GLubyte@.
  -> Ptr GLdouble -- ^ @v@ pointing to @4@ elements of type @GLdouble@.
  -> IO ()
glProgramNamedParameter4dvNV = dyn_glProgramNamedParameter4dvNV ptr_glProgramNamedParameter4dvNV

foreign import CALLCONV "dynamic" dyn_glProgramNamedParameter4dvNV
  :: FunPtr (GLuint -> GLsizei -> Ptr GLubyte -> Ptr GLdouble -> IO ())
  ->         GLuint -> GLsizei -> Ptr GLubyte -> Ptr GLdouble -> IO ()

{-# NOINLINE ptr_glProgramNamedParameter4dvNV #-}
ptr_glProgramNamedParameter4dvNV :: FunPtr (GLuint -> GLsizei -> Ptr GLubyte -> Ptr GLdouble -> IO ())
ptr_glProgramNamedParameter4dvNV = unsafePerformIO $ getCommand "glProgramNamedParameter4dvNV"

-- glProgramNamedParameter4fNV -------------------------------------------------

glProgramNamedParameter4fNV
  :: GLuint -- ^ @id@.
  -> GLsizei -- ^ @len@.
  -> Ptr GLubyte -- ^ @name@ pointing to @1@ elements of type @GLubyte@.
  -> GLfloat -- ^ @x@.
  -> GLfloat -- ^ @y@.
  -> GLfloat -- ^ @z@.
  -> GLfloat -- ^ @w@.
  -> IO ()
glProgramNamedParameter4fNV = dyn_glProgramNamedParameter4fNV ptr_glProgramNamedParameter4fNV

foreign import CALLCONV "dynamic" dyn_glProgramNamedParameter4fNV
  :: FunPtr (GLuint -> GLsizei -> Ptr GLubyte -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
  ->         GLuint -> GLsizei -> Ptr GLubyte -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ()

{-# NOINLINE ptr_glProgramNamedParameter4fNV #-}
ptr_glProgramNamedParameter4fNV :: FunPtr (GLuint -> GLsizei -> Ptr GLubyte -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
ptr_glProgramNamedParameter4fNV = unsafePerformIO $ getCommand "glProgramNamedParameter4fNV"

-- glProgramNamedParameter4fvNV ------------------------------------------------

glProgramNamedParameter4fvNV
  :: GLuint -- ^ @id@.
  -> GLsizei -- ^ @len@.
  -> Ptr GLubyte -- ^ @name@ pointing to @1@ elements of type @GLubyte@.
  -> Ptr GLfloat -- ^ @v@ pointing to @4@ elements of type @GLfloat@.
  -> IO ()
glProgramNamedParameter4fvNV = dyn_glProgramNamedParameter4fvNV ptr_glProgramNamedParameter4fvNV

foreign import CALLCONV "dynamic" dyn_glProgramNamedParameter4fvNV
  :: FunPtr (GLuint -> GLsizei -> Ptr GLubyte -> Ptr GLfloat -> IO ())
  ->         GLuint -> GLsizei -> Ptr GLubyte -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glProgramNamedParameter4fvNV #-}
ptr_glProgramNamedParameter4fvNV :: FunPtr (GLuint -> GLsizei -> Ptr GLubyte -> Ptr GLfloat -> IO ())
ptr_glProgramNamedParameter4fvNV = unsafePerformIO $ getCommand "glProgramNamedParameter4fvNV"

-- glProgramParameter4dNV ------------------------------------------------------

glProgramParameter4dNV
  :: GLenum -- ^ @target@ of type @VertexAttribEnumNV@.
  -> GLuint -- ^ @index@.
  -> GLdouble -- ^ @x@.
  -> GLdouble -- ^ @y@.
  -> GLdouble -- ^ @z@.
  -> GLdouble -- ^ @w@.
  -> IO ()
glProgramParameter4dNV = dyn_glProgramParameter4dNV ptr_glProgramParameter4dNV

foreign import CALLCONV "dynamic" dyn_glProgramParameter4dNV
  :: FunPtr (GLenum -> GLuint -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ())
  ->         GLenum -> GLuint -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ()

{-# NOINLINE ptr_glProgramParameter4dNV #-}
ptr_glProgramParameter4dNV :: FunPtr (GLenum -> GLuint -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ())
ptr_glProgramParameter4dNV = unsafePerformIO $ getCommand "glProgramParameter4dNV"

-- glProgramParameter4dvNV -----------------------------------------------------

glProgramParameter4dvNV
  :: GLenum -- ^ @target@ of type @VertexAttribEnumNV@.
  -> GLuint -- ^ @index@.
  -> Ptr GLdouble -- ^ @v@ pointing to @4@ elements of type @GLdouble@.
  -> IO ()
glProgramParameter4dvNV = dyn_glProgramParameter4dvNV ptr_glProgramParameter4dvNV

foreign import CALLCONV "dynamic" dyn_glProgramParameter4dvNV
  :: FunPtr (GLenum -> GLuint -> Ptr GLdouble -> IO ())
  ->         GLenum -> GLuint -> Ptr GLdouble -> IO ()

{-# NOINLINE ptr_glProgramParameter4dvNV #-}
ptr_glProgramParameter4dvNV :: FunPtr (GLenum -> GLuint -> Ptr GLdouble -> IO ())
ptr_glProgramParameter4dvNV = unsafePerformIO $ getCommand "glProgramParameter4dvNV"

-- glProgramParameter4fNV ------------------------------------------------------

glProgramParameter4fNV
  :: GLenum -- ^ @target@ of type @VertexAttribEnumNV@.
  -> GLuint -- ^ @index@.
  -> GLfloat -- ^ @x@.
  -> GLfloat -- ^ @y@.
  -> GLfloat -- ^ @z@.
  -> GLfloat -- ^ @w@.
  -> IO ()
glProgramParameter4fNV = dyn_glProgramParameter4fNV ptr_glProgramParameter4fNV

foreign import CALLCONV "dynamic" dyn_glProgramParameter4fNV
  :: FunPtr (GLenum -> GLuint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
  ->         GLenum -> GLuint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ()

{-# NOINLINE ptr_glProgramParameter4fNV #-}
ptr_glProgramParameter4fNV :: FunPtr (GLenum -> GLuint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
ptr_glProgramParameter4fNV = unsafePerformIO $ getCommand "glProgramParameter4fNV"

-- glProgramParameter4fvNV -----------------------------------------------------

glProgramParameter4fvNV
  :: GLenum -- ^ @target@ of type @VertexAttribEnumNV@.
  -> GLuint -- ^ @index@.
  -> Ptr GLfloat -- ^ @v@ pointing to @4@ elements of type @GLfloat@.
  -> IO ()
glProgramParameter4fvNV = dyn_glProgramParameter4fvNV ptr_glProgramParameter4fvNV

foreign import CALLCONV "dynamic" dyn_glProgramParameter4fvNV
  :: FunPtr (GLenum -> GLuint -> Ptr GLfloat -> IO ())
  ->         GLenum -> GLuint -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glProgramParameter4fvNV #-}
ptr_glProgramParameter4fvNV :: FunPtr (GLenum -> GLuint -> Ptr GLfloat -> IO ())
ptr_glProgramParameter4fvNV = unsafePerformIO $ getCommand "glProgramParameter4fvNV"

-- glProgramParameteri ---------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glProgramParameter.xhtml OpenGL 4.x>
glProgramParameteri
  :: GLuint -- ^ @program@.
  -> GLenum -- ^ @pname@ of type @ProgramParameterPName@.
  -> GLint -- ^ @value@.
  -> IO ()
glProgramParameteri = dyn_glProgramParameteri ptr_glProgramParameteri

foreign import CALLCONV "dynamic" dyn_glProgramParameteri
  :: FunPtr (GLuint -> GLenum -> GLint -> IO ())
  ->         GLuint -> GLenum -> GLint -> IO ()

{-# NOINLINE ptr_glProgramParameteri #-}
ptr_glProgramParameteri :: FunPtr (GLuint -> GLenum -> GLint -> IO ())
ptr_glProgramParameteri = unsafePerformIO $ getCommand "glProgramParameteri"

-- glProgramParameteriARB ------------------------------------------------------

glProgramParameteriARB
  :: GLuint -- ^ @program@.
  -> GLenum -- ^ @pname@ of type @ProgramParameterPName@.
  -> GLint -- ^ @value@.
  -> IO ()
glProgramParameteriARB = dyn_glProgramParameteriARB ptr_glProgramParameteriARB

foreign import CALLCONV "dynamic" dyn_glProgramParameteriARB
  :: FunPtr (GLuint -> GLenum -> GLint -> IO ())
  ->         GLuint -> GLenum -> GLint -> IO ()

{-# NOINLINE ptr_glProgramParameteriARB #-}
ptr_glProgramParameteriARB :: FunPtr (GLuint -> GLenum -> GLint -> IO ())
ptr_glProgramParameteriARB = unsafePerformIO $ getCommand "glProgramParameteriARB"

-- glProgramParameteriEXT ------------------------------------------------------

glProgramParameteriEXT
  :: GLuint -- ^ @program@.
  -> GLenum -- ^ @pname@ of type @ProgramParameterPName@.
  -> GLint -- ^ @value@.
  -> IO ()
glProgramParameteriEXT = dyn_glProgramParameteriEXT ptr_glProgramParameteriEXT

foreign import CALLCONV "dynamic" dyn_glProgramParameteriEXT
  :: FunPtr (GLuint -> GLenum -> GLint -> IO ())
  ->         GLuint -> GLenum -> GLint -> IO ()

{-# NOINLINE ptr_glProgramParameteriEXT #-}
ptr_glProgramParameteriEXT :: FunPtr (GLuint -> GLenum -> GLint -> IO ())
ptr_glProgramParameteriEXT = unsafePerformIO $ getCommand "glProgramParameteriEXT"

-- glProgramParameters4dvNV ----------------------------------------------------

glProgramParameters4dvNV
  :: GLenum -- ^ @target@ of type @VertexAttribEnumNV@.
  -> GLuint -- ^ @index@.
  -> GLsizei -- ^ @count@.
  -> Ptr GLdouble -- ^ @v@ pointing to @count*4@ elements of type @GLdouble@.
  -> IO ()
glProgramParameters4dvNV = dyn_glProgramParameters4dvNV ptr_glProgramParameters4dvNV

foreign import CALLCONV "dynamic" dyn_glProgramParameters4dvNV
  :: FunPtr (GLenum -> GLuint -> GLsizei -> Ptr GLdouble -> IO ())
  ->         GLenum -> GLuint -> GLsizei -> Ptr GLdouble -> IO ()

{-# NOINLINE ptr_glProgramParameters4dvNV #-}
ptr_glProgramParameters4dvNV :: FunPtr (GLenum -> GLuint -> GLsizei -> Ptr GLdouble -> IO ())
ptr_glProgramParameters4dvNV = unsafePerformIO $ getCommand "glProgramParameters4dvNV"

-- glProgramParameters4fvNV ----------------------------------------------------

glProgramParameters4fvNV
  :: GLenum -- ^ @target@ of type @VertexAttribEnumNV@.
  -> GLuint -- ^ @index@.
  -> GLsizei -- ^ @count@.
  -> Ptr GLfloat -- ^ @v@ pointing to @count*4@ elements of type @GLfloat@.
  -> IO ()
glProgramParameters4fvNV = dyn_glProgramParameters4fvNV ptr_glProgramParameters4fvNV

foreign import CALLCONV "dynamic" dyn_glProgramParameters4fvNV
  :: FunPtr (GLenum -> GLuint -> GLsizei -> Ptr GLfloat -> IO ())
  ->         GLenum -> GLuint -> GLsizei -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glProgramParameters4fvNV #-}
ptr_glProgramParameters4fvNV :: FunPtr (GLenum -> GLuint -> GLsizei -> Ptr GLfloat -> IO ())
ptr_glProgramParameters4fvNV = unsafePerformIO $ getCommand "glProgramParameters4fvNV"

-- glProgramPathFragmentInputGenNV ---------------------------------------------

glProgramPathFragmentInputGenNV
  :: GLuint -- ^ @program@.
  -> GLint -- ^ @location@.
  -> GLenum -- ^ @genMode@.
  -> GLint -- ^ @components@.
  -> Ptr GLfloat -- ^ @coeffs@.
  -> IO ()
glProgramPathFragmentInputGenNV = dyn_glProgramPathFragmentInputGenNV ptr_glProgramPathFragmentInputGenNV

foreign import CALLCONV "dynamic" dyn_glProgramPathFragmentInputGenNV
  :: FunPtr (GLuint -> GLint -> GLenum -> GLint -> Ptr GLfloat -> IO ())
  ->         GLuint -> GLint -> GLenum -> GLint -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glProgramPathFragmentInputGenNV #-}
ptr_glProgramPathFragmentInputGenNV :: FunPtr (GLuint -> GLint -> GLenum -> GLint -> Ptr GLfloat -> IO ())
ptr_glProgramPathFragmentInputGenNV = unsafePerformIO $ getCommand "glProgramPathFragmentInputGenNV"

-- glProgramStringARB ----------------------------------------------------------

glProgramStringARB
  :: GLenum -- ^ @target@ of type @ProgramTargetARB@.
  -> GLenum -- ^ @format@ of type @ProgramFormatARB@.
  -> GLsizei -- ^ @len@.
  -> Ptr a -- ^ @string@ pointing to @len@ elements of type @a@.
  -> IO ()
glProgramStringARB = dyn_glProgramStringARB ptr_glProgramStringARB

foreign import CALLCONV "dynamic" dyn_glProgramStringARB
  :: FunPtr (GLenum -> GLenum -> GLsizei -> Ptr a -> IO ())
  ->         GLenum -> GLenum -> GLsizei -> Ptr a -> IO ()

{-# NOINLINE ptr_glProgramStringARB #-}
ptr_glProgramStringARB :: FunPtr (GLenum -> GLenum -> GLsizei -> Ptr a -> IO ())
ptr_glProgramStringARB = unsafePerformIO $ getCommand "glProgramStringARB"

-- glProgramSubroutineParametersuivNV ------------------------------------------

glProgramSubroutineParametersuivNV
  :: GLenum -- ^ @target@.
  -> GLsizei -- ^ @count@.
  -> Ptr GLuint -- ^ @params@ pointing to @count@ elements of type @GLuint@.
  -> IO ()
glProgramSubroutineParametersuivNV = dyn_glProgramSubroutineParametersuivNV ptr_glProgramSubroutineParametersuivNV

foreign import CALLCONV "dynamic" dyn_glProgramSubroutineParametersuivNV
  :: FunPtr (GLenum -> GLsizei -> Ptr GLuint -> IO ())
  ->         GLenum -> GLsizei -> Ptr GLuint -> IO ()

{-# NOINLINE ptr_glProgramSubroutineParametersuivNV #-}
ptr_glProgramSubroutineParametersuivNV :: FunPtr (GLenum -> GLsizei -> Ptr GLuint -> IO ())
ptr_glProgramSubroutineParametersuivNV = unsafePerformIO $ getCommand "glProgramSubroutineParametersuivNV"

-- glProgramUniform1d ----------------------------------------------------------

glProgramUniform1d
  :: GLuint -- ^ @program@.
  -> GLint -- ^ @location@.
  -> GLdouble -- ^ @v0@.
  -> IO ()
glProgramUniform1d = dyn_glProgramUniform1d ptr_glProgramUniform1d

foreign import CALLCONV "dynamic" dyn_glProgramUniform1d
  :: FunPtr (GLuint -> GLint -> GLdouble -> IO ())
  ->         GLuint -> GLint -> GLdouble -> IO ()

{-# NOINLINE ptr_glProgramUniform1d #-}
ptr_glProgramUniform1d :: FunPtr (GLuint -> GLint -> GLdouble -> IO ())
ptr_glProgramUniform1d = unsafePerformIO $ getCommand "glProgramUniform1d"

-- glProgramUniform1dEXT -------------------------------------------------------

glProgramUniform1dEXT
  :: GLuint -- ^ @program@.
  -> GLint -- ^ @location@.
  -> GLdouble -- ^ @x@.
  -> IO ()
glProgramUniform1dEXT = dyn_glProgramUniform1dEXT ptr_glProgramUniform1dEXT

foreign import CALLCONV "dynamic" dyn_glProgramUniform1dEXT
  :: FunPtr (GLuint -> GLint -> GLdouble -> IO ())
  ->         GLuint -> GLint -> GLdouble -> IO ()

{-# NOINLINE ptr_glProgramUniform1dEXT #-}
ptr_glProgramUniform1dEXT :: FunPtr (GLuint -> GLint -> GLdouble -> IO ())
ptr_glProgramUniform1dEXT = unsafePerformIO $ getCommand "glProgramUniform1dEXT"

-- glProgramUniform1dv ---------------------------------------------------------

glProgramUniform1dv
  :: GLuint -- ^ @program@.
  -> GLint -- ^ @location@.
  -> GLsizei -- ^ @count@.
  -> Ptr GLdouble -- ^ @value@ pointing to @1@ elements of type @GLdouble@.
  -> IO ()
glProgramUniform1dv = dyn_glProgramUniform1dv ptr_glProgramUniform1dv

foreign import CALLCONV "dynamic" dyn_glProgramUniform1dv
  :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLdouble -> IO ())
  ->         GLuint -> GLint -> GLsizei -> Ptr GLdouble -> IO ()

{-# NOINLINE ptr_glProgramUniform1dv #-}
ptr_glProgramUniform1dv :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLdouble -> IO ())
ptr_glProgramUniform1dv = unsafePerformIO $ getCommand "glProgramUniform1dv"

-- glProgramUniform1dvEXT ------------------------------------------------------

glProgramUniform1dvEXT
  :: GLuint -- ^ @program@.
  -> GLint -- ^ @location@.
  -> GLsizei -- ^ @count@.
  -> Ptr GLdouble -- ^ @value@ pointing to @count@ elements of type @GLdouble@.
  -> IO ()
glProgramUniform1dvEXT = dyn_glProgramUniform1dvEXT ptr_glProgramUniform1dvEXT

foreign import CALLCONV "dynamic" dyn_glProgramUniform1dvEXT
  :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLdouble -> IO ())
  ->         GLuint -> GLint -> GLsizei -> Ptr GLdouble -> IO ()

{-# NOINLINE ptr_glProgramUniform1dvEXT #-}
ptr_glProgramUniform1dvEXT :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLdouble -> IO ())
ptr_glProgramUniform1dvEXT = unsafePerformIO $ getCommand "glProgramUniform1dvEXT"

-- glProgramUniform1f ----------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glProgramUniform.xhtml OpenGL 4.x>
glProgramUniform1f
  :: GLuint -- ^ @program@.
  -> GLint -- ^ @location@.
  -> GLfloat -- ^ @v0@.
  -> IO ()
glProgramUniform1f = dyn_glProgramUniform1f ptr_glProgramUniform1f

foreign import CALLCONV "dynamic" dyn_glProgramUniform1f
  :: FunPtr (GLuint -> GLint -> GLfloat -> IO ())
  ->         GLuint -> GLint -> GLfloat -> IO ()

{-# NOINLINE ptr_glProgramUniform1f #-}
ptr_glProgramUniform1f :: FunPtr (GLuint -> GLint -> GLfloat -> IO ())
ptr_glProgramUniform1f = unsafePerformIO $ getCommand "glProgramUniform1f"

-- glProgramUniform1fEXT -------------------------------------------------------

glProgramUniform1fEXT
  :: GLuint -- ^ @program@.
  -> GLint -- ^ @location@.
  -> GLfloat -- ^ @v0@.
  -> IO ()
glProgramUniform1fEXT = dyn_glProgramUniform1fEXT ptr_glProgramUniform1fEXT

foreign import CALLCONV "dynamic" dyn_glProgramUniform1fEXT
  :: FunPtr (GLuint -> GLint -> GLfloat -> IO ())
  ->         GLuint -> GLint -> GLfloat -> IO ()

{-# NOINLINE ptr_glProgramUniform1fEXT #-}
ptr_glProgramUniform1fEXT :: FunPtr (GLuint -> GLint -> GLfloat -> IO ())
ptr_glProgramUniform1fEXT = unsafePerformIO $ getCommand "glProgramUniform1fEXT"

-- glProgramUniform1fv ---------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glProgramUniform.xhtml OpenGL 4.x>
glProgramUniform1fv
  :: GLuint -- ^ @program@.
  -> GLint -- ^ @location@.
  -> GLsizei -- ^ @count@.
  -> Ptr GLfloat -- ^ @value@ pointing to @1@ elements of type @GLfloat@.
  -> IO ()
glProgramUniform1fv = dyn_glProgramUniform1fv ptr_glProgramUniform1fv

foreign import CALLCONV "dynamic" dyn_glProgramUniform1fv
  :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLfloat -> IO ())
  ->         GLuint -> GLint -> GLsizei -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glProgramUniform1fv #-}
ptr_glProgramUniform1fv :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLfloat -> IO ())
ptr_glProgramUniform1fv = unsafePerformIO $ getCommand "glProgramUniform1fv"

-- glProgramUniform1fvEXT ------------------------------------------------------

glProgramUniform1fvEXT
  :: GLuint -- ^ @program@.
  -> GLint -- ^ @location@.
  -> GLsizei -- ^ @count@.
  -> Ptr GLfloat -- ^ @value@ pointing to @count@ elements of type @GLfloat@.
  -> IO ()
glProgramUniform1fvEXT = dyn_glProgramUniform1fvEXT ptr_glProgramUniform1fvEXT

foreign import CALLCONV "dynamic" dyn_glProgramUniform1fvEXT
  :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLfloat -> IO ())
  ->         GLuint -> GLint -> GLsizei -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glProgramUniform1fvEXT #-}
ptr_glProgramUniform1fvEXT :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLfloat -> IO ())
ptr_glProgramUniform1fvEXT = unsafePerformIO $ getCommand "glProgramUniform1fvEXT"

-- glProgramUniform1i ----------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glProgramUniform.xhtml OpenGL 4.x>
glProgramUniform1i
  :: GLuint -- ^ @program@.
  -> GLint -- ^ @location@.
  -> GLint -- ^ @v0@.
  -> IO ()
glProgramUniform1i = dyn_glProgramUniform1i ptr_glProgramUniform1i

foreign import CALLCONV "dynamic" dyn_glProgramUniform1i
  :: FunPtr (GLuint -> GLint -> GLint -> IO ())
  ->         GLuint -> GLint -> GLint -> IO ()

{-# NOINLINE ptr_glProgramUniform1i #-}
ptr_glProgramUniform1i :: FunPtr (GLuint -> GLint -> GLint -> IO ())
ptr_glProgramUniform1i = unsafePerformIO $ getCommand "glProgramUniform1i"

-- glProgramUniform1i64NV ------------------------------------------------------

glProgramUniform1i64NV
  :: GLuint -- ^ @program@.
  -> GLint -- ^ @location@.
  -> GLint64EXT -- ^ @x@.
  -> IO ()
glProgramUniform1i64NV = dyn_glProgramUniform1i64NV ptr_glProgramUniform1i64NV

foreign import CALLCONV "dynamic" dyn_glProgramUniform1i64NV
  :: FunPtr (GLuint -> GLint -> GLint64EXT -> IO ())
  ->         GLuint -> GLint -> GLint64EXT -> IO ()

{-# NOINLINE ptr_glProgramUniform1i64NV #-}
ptr_glProgramUniform1i64NV :: FunPtr (GLuint -> GLint -> GLint64EXT -> IO ())
ptr_glProgramUniform1i64NV = unsafePerformIO $ getCommand "glProgramUniform1i64NV"

-- glProgramUniform1i64vNV -----------------------------------------------------

glProgramUniform1i64vNV
  :: GLuint -- ^ @program@.
  -> GLint -- ^ @location@.
  -> GLsizei -- ^ @count@.
  -> Ptr GLint64EXT -- ^ @value@ pointing to @count@ elements of type @GLint64EXT@.
  -> IO ()
glProgramUniform1i64vNV = dyn_glProgramUniform1i64vNV ptr_glProgramUniform1i64vNV

foreign import CALLCONV "dynamic" dyn_glProgramUniform1i64vNV
  :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLint64EXT -> IO ())
  ->         GLuint -> GLint -> GLsizei -> Ptr GLint64EXT -> IO ()

{-# NOINLINE ptr_glProgramUniform1i64vNV #-}
ptr_glProgramUniform1i64vNV :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLint64EXT -> IO ())
ptr_glProgramUniform1i64vNV = unsafePerformIO $ getCommand "glProgramUniform1i64vNV"

-- glProgramUniform1iEXT -------------------------------------------------------

glProgramUniform1iEXT
  :: GLuint -- ^ @program@.
  -> GLint -- ^ @location@.
  -> GLint -- ^ @v0@.
  -> IO ()
glProgramUniform1iEXT = dyn_glProgramUniform1iEXT ptr_glProgramUniform1iEXT

foreign import CALLCONV "dynamic" dyn_glProgramUniform1iEXT
  :: FunPtr (GLuint -> GLint -> GLint -> IO ())
  ->         GLuint -> GLint -> GLint -> IO ()

{-# NOINLINE ptr_glProgramUniform1iEXT #-}
ptr_glProgramUniform1iEXT :: FunPtr (GLuint -> GLint -> GLint -> IO ())
ptr_glProgramUniform1iEXT = unsafePerformIO $ getCommand "glProgramUniform1iEXT"

-- glProgramUniform1iv ---------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glProgramUniform.xhtml OpenGL 4.x>
glProgramUniform1iv
  :: GLuint -- ^ @program@.
  -> GLint -- ^ @location@.
  -> GLsizei -- ^ @count@.
  -> Ptr GLint -- ^ @value@ pointing to @1@ elements of type @GLint@.
  -> IO ()
glProgramUniform1iv = dyn_glProgramUniform1iv ptr_glProgramUniform1iv

foreign import CALLCONV "dynamic" dyn_glProgramUniform1iv
  :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLint -> IO ())
  ->         GLuint -> GLint -> GLsizei -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glProgramUniform1iv #-}
ptr_glProgramUniform1iv :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLint -> IO ())
ptr_glProgramUniform1iv = unsafePerformIO $ getCommand "glProgramUniform1iv"

-- glProgramUniform1ivEXT ------------------------------------------------------

glProgramUniform1ivEXT
  :: GLuint -- ^ @program@.
  -> GLint -- ^ @location@.
  -> GLsizei -- ^ @count@.
  -> Ptr GLint -- ^ @value@ pointing to @count@ elements of type @GLint@.
  -> IO ()
glProgramUniform1ivEXT = dyn_glProgramUniform1ivEXT ptr_glProgramUniform1ivEXT

foreign import CALLCONV "dynamic" dyn_glProgramUniform1ivEXT
  :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLint -> IO ())
  ->         GLuint -> GLint -> GLsizei -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glProgramUniform1ivEXT #-}
ptr_glProgramUniform1ivEXT :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLint -> IO ())
ptr_glProgramUniform1ivEXT = unsafePerformIO $ getCommand "glProgramUniform1ivEXT"

-- glProgramUniform1ui ---------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glProgramUniform.xhtml OpenGL 4.x>
glProgramUniform1ui
  :: GLuint -- ^ @program@.
  -> GLint -- ^ @location@.
  -> GLuint -- ^ @v0@.
  -> IO ()
glProgramUniform1ui = dyn_glProgramUniform1ui ptr_glProgramUniform1ui

foreign import CALLCONV "dynamic" dyn_glProgramUniform1ui
  :: FunPtr (GLuint -> GLint -> GLuint -> IO ())
  ->         GLuint -> GLint -> GLuint -> IO ()

{-# NOINLINE ptr_glProgramUniform1ui #-}
ptr_glProgramUniform1ui :: FunPtr (GLuint -> GLint -> GLuint -> IO ())
ptr_glProgramUniform1ui = unsafePerformIO $ getCommand "glProgramUniform1ui"

-- glProgramUniform1ui64NV -----------------------------------------------------

glProgramUniform1ui64NV
  :: GLuint -- ^ @program@.
  -> GLint -- ^ @location@.
  -> GLuint64EXT -- ^ @x@.
  -> IO ()
glProgramUniform1ui64NV = dyn_glProgramUniform1ui64NV ptr_glProgramUniform1ui64NV

foreign import CALLCONV "dynamic" dyn_glProgramUniform1ui64NV
  :: FunPtr (GLuint -> GLint -> GLuint64EXT -> IO ())
  ->         GLuint -> GLint -> GLuint64EXT -> IO ()

{-# NOINLINE ptr_glProgramUniform1ui64NV #-}
ptr_glProgramUniform1ui64NV :: FunPtr (GLuint -> GLint -> GLuint64EXT -> IO ())
ptr_glProgramUniform1ui64NV = unsafePerformIO $ getCommand "glProgramUniform1ui64NV"

-- glProgramUniform1ui64vNV ----------------------------------------------------

glProgramUniform1ui64vNV
  :: GLuint -- ^ @program@.
  -> GLint -- ^ @location@.
  -> GLsizei -- ^ @count@.
  -> Ptr GLuint64EXT -- ^ @value@ pointing to @count@ elements of type @GLuint64EXT@.
  -> IO ()
glProgramUniform1ui64vNV = dyn_glProgramUniform1ui64vNV ptr_glProgramUniform1ui64vNV

foreign import CALLCONV "dynamic" dyn_glProgramUniform1ui64vNV
  :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLuint64EXT -> IO ())
  ->         GLuint -> GLint -> GLsizei -> Ptr GLuint64EXT -> IO ()

{-# NOINLINE ptr_glProgramUniform1ui64vNV #-}
ptr_glProgramUniform1ui64vNV :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLuint64EXT -> IO ())
ptr_glProgramUniform1ui64vNV = unsafePerformIO $ getCommand "glProgramUniform1ui64vNV"

-- glProgramUniform1uiEXT ------------------------------------------------------

glProgramUniform1uiEXT
  :: GLuint -- ^ @program@.
  -> GLint -- ^ @location@.
  -> GLuint -- ^ @v0@.
  -> IO ()
glProgramUniform1uiEXT = dyn_glProgramUniform1uiEXT ptr_glProgramUniform1uiEXT

foreign import CALLCONV "dynamic" dyn_glProgramUniform1uiEXT
  :: FunPtr (GLuint -> GLint -> GLuint -> IO ())
  ->         GLuint -> GLint -> GLuint -> IO ()

{-# NOINLINE ptr_glProgramUniform1uiEXT #-}
ptr_glProgramUniform1uiEXT :: FunPtr (GLuint -> GLint -> GLuint -> IO ())
ptr_glProgramUniform1uiEXT = unsafePerformIO $ getCommand "glProgramUniform1uiEXT"

-- glProgramUniform1uiv --------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glProgramUniform.xhtml OpenGL 4.x>
glProgramUniform1uiv
  :: GLuint -- ^ @program@.
  -> GLint -- ^ @location@.
  -> GLsizei -- ^ @count@.
  -> Ptr GLuint -- ^ @value@ pointing to @1@ elements of type @GLuint@.
  -> IO ()
glProgramUniform1uiv = dyn_glProgramUniform1uiv ptr_glProgramUniform1uiv

foreign import CALLCONV "dynamic" dyn_glProgramUniform1uiv
  :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLuint -> IO ())
  ->         GLuint -> GLint -> GLsizei -> Ptr GLuint -> IO ()

{-# NOINLINE ptr_glProgramUniform1uiv #-}
ptr_glProgramUniform1uiv :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLuint -> IO ())
ptr_glProgramUniform1uiv = unsafePerformIO $ getCommand "glProgramUniform1uiv"

-- glProgramUniform1uivEXT -----------------------------------------------------

glProgramUniform1uivEXT
  :: GLuint -- ^ @program@.
  -> GLint -- ^ @location@.
  -> GLsizei -- ^ @count@.
  -> Ptr GLuint -- ^ @value@ pointing to @count@ elements of type @GLuint@.
  -> IO ()
glProgramUniform1uivEXT = dyn_glProgramUniform1uivEXT ptr_glProgramUniform1uivEXT

foreign import CALLCONV "dynamic" dyn_glProgramUniform1uivEXT
  :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLuint -> IO ())
  ->         GLuint -> GLint -> GLsizei -> Ptr GLuint -> IO ()

{-# NOINLINE ptr_glProgramUniform1uivEXT #-}
ptr_glProgramUniform1uivEXT :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLuint -> IO ())
ptr_glProgramUniform1uivEXT = unsafePerformIO $ getCommand "glProgramUniform1uivEXT"

-- glProgramUniform2d ----------------------------------------------------------

glProgramUniform2d
  :: GLuint -- ^ @program@.
  -> GLint -- ^ @location@.
  -> GLdouble -- ^ @v0@.
  -> GLdouble -- ^ @v1@.
  -> IO ()
glProgramUniform2d = dyn_glProgramUniform2d ptr_glProgramUniform2d

foreign import CALLCONV "dynamic" dyn_glProgramUniform2d
  :: FunPtr (GLuint -> GLint -> GLdouble -> GLdouble -> IO ())
  ->         GLuint -> GLint -> GLdouble -> GLdouble -> IO ()

{-# NOINLINE ptr_glProgramUniform2d #-}
ptr_glProgramUniform2d :: FunPtr (GLuint -> GLint -> GLdouble -> GLdouble -> IO ())
ptr_glProgramUniform2d = unsafePerformIO $ getCommand "glProgramUniform2d"

-- glProgramUniform2dEXT -------------------------------------------------------

glProgramUniform2dEXT
  :: GLuint -- ^ @program@.
  -> GLint -- ^ @location@.
  -> GLdouble -- ^ @x@.
  -> GLdouble -- ^ @y@.
  -> IO ()
glProgramUniform2dEXT = dyn_glProgramUniform2dEXT ptr_glProgramUniform2dEXT

foreign import CALLCONV "dynamic" dyn_glProgramUniform2dEXT
  :: FunPtr (GLuint -> GLint -> GLdouble -> GLdouble -> IO ())
  ->         GLuint -> GLint -> GLdouble -> GLdouble -> IO ()

{-# NOINLINE ptr_glProgramUniform2dEXT #-}
ptr_glProgramUniform2dEXT :: FunPtr (GLuint -> GLint -> GLdouble -> GLdouble -> IO ())
ptr_glProgramUniform2dEXT = unsafePerformIO $ getCommand "glProgramUniform2dEXT"

-- glProgramUniform2dv ---------------------------------------------------------

glProgramUniform2dv
  :: GLuint -- ^ @program@.
  -> GLint -- ^ @location@.
  -> GLsizei -- ^ @count@.
  -> Ptr GLdouble -- ^ @value@ pointing to @2@ elements of type @GLdouble@.
  -> IO ()
glProgramUniform2dv = dyn_glProgramUniform2dv ptr_glProgramUniform2dv

foreign import CALLCONV "dynamic" dyn_glProgramUniform2dv
  :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLdouble -> IO ())
  ->         GLuint -> GLint -> GLsizei -> Ptr GLdouble -> IO ()

{-# NOINLINE ptr_glProgramUniform2dv #-}
ptr_glProgramUniform2dv :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLdouble -> IO ())
ptr_glProgramUniform2dv = unsafePerformIO $ getCommand "glProgramUniform2dv"

-- glProgramUniform2dvEXT ------------------------------------------------------

glProgramUniform2dvEXT
  :: GLuint -- ^ @program@.
  -> GLint -- ^ @location@.
  -> GLsizei -- ^ @count@.
  -> Ptr GLdouble -- ^ @value@ pointing to @count@ elements of type @GLdouble@.
  -> IO ()
glProgramUniform2dvEXT = dyn_glProgramUniform2dvEXT ptr_glProgramUniform2dvEXT

foreign import CALLCONV "dynamic" dyn_glProgramUniform2dvEXT
  :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLdouble -> IO ())
  ->         GLuint -> GLint -> GLsizei -> Ptr GLdouble -> IO ()

{-# NOINLINE ptr_glProgramUniform2dvEXT #-}
ptr_glProgramUniform2dvEXT :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLdouble -> IO ())
ptr_glProgramUniform2dvEXT = unsafePerformIO $ getCommand "glProgramUniform2dvEXT"

-- glProgramUniform2f ----------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glProgramUniform.xhtml OpenGL 4.x>
glProgramUniform2f
  :: GLuint -- ^ @program@.
  -> GLint -- ^ @location@.
  -> GLfloat -- ^ @v0@.
  -> GLfloat -- ^ @v1@.
  -> IO ()
glProgramUniform2f = dyn_glProgramUniform2f ptr_glProgramUniform2f

foreign import CALLCONV "dynamic" dyn_glProgramUniform2f
  :: FunPtr (GLuint -> GLint -> GLfloat -> GLfloat -> IO ())
  ->         GLuint -> GLint -> GLfloat -> GLfloat -> IO ()

{-# NOINLINE ptr_glProgramUniform2f #-}
ptr_glProgramUniform2f :: FunPtr (GLuint -> GLint -> GLfloat -> GLfloat -> IO ())
ptr_glProgramUniform2f = unsafePerformIO $ getCommand "glProgramUniform2f"

-- glProgramUniform2fEXT -------------------------------------------------------

glProgramUniform2fEXT
  :: GLuint -- ^ @program@.
  -> GLint -- ^ @location@.
  -> GLfloat -- ^ @v0@.
  -> GLfloat -- ^ @v1@.
  -> IO ()
glProgramUniform2fEXT = dyn_glProgramUniform2fEXT ptr_glProgramUniform2fEXT

foreign import CALLCONV "dynamic" dyn_glProgramUniform2fEXT
  :: FunPtr (GLuint -> GLint -> GLfloat -> GLfloat -> IO ())
  ->         GLuint -> GLint -> GLfloat -> GLfloat -> IO ()

{-# NOINLINE ptr_glProgramUniform2fEXT #-}
ptr_glProgramUniform2fEXT :: FunPtr (GLuint -> GLint -> GLfloat -> GLfloat -> IO ())
ptr_glProgramUniform2fEXT = unsafePerformIO $ getCommand "glProgramUniform2fEXT"

-- glProgramUniform2fv ---------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glProgramUniform.xhtml OpenGL 4.x>
glProgramUniform2fv
  :: GLuint -- ^ @program@.
  -> GLint -- ^ @location@.
  -> GLsizei -- ^ @count@.
  -> Ptr GLfloat -- ^ @value@ pointing to @2@ elements of type @GLfloat@.
  -> IO ()
glProgramUniform2fv = dyn_glProgramUniform2fv ptr_glProgramUniform2fv

foreign import CALLCONV "dynamic" dyn_glProgramUniform2fv
  :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLfloat -> IO ())
  ->         GLuint -> GLint -> GLsizei -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glProgramUniform2fv #-}
ptr_glProgramUniform2fv :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLfloat -> IO ())
ptr_glProgramUniform2fv = unsafePerformIO $ getCommand "glProgramUniform2fv"

-- glProgramUniform2fvEXT ------------------------------------------------------

glProgramUniform2fvEXT
  :: GLuint -- ^ @program@.
  -> GLint -- ^ @location@.
  -> GLsizei -- ^ @count@.
  -> Ptr GLfloat -- ^ @value@ pointing to @count*2@ elements of type @GLfloat@.
  -> IO ()
glProgramUniform2fvEXT = dyn_glProgramUniform2fvEXT ptr_glProgramUniform2fvEXT

foreign import CALLCONV "dynamic" dyn_glProgramUniform2fvEXT
  :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLfloat -> IO ())
  ->         GLuint -> GLint -> GLsizei -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glProgramUniform2fvEXT #-}
ptr_glProgramUniform2fvEXT :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLfloat -> IO ())
ptr_glProgramUniform2fvEXT = unsafePerformIO $ getCommand "glProgramUniform2fvEXT"

-- glProgramUniform2i ----------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glProgramUniform.xhtml OpenGL 4.x>
glProgramUniform2i
  :: GLuint -- ^ @program@.
  -> GLint -- ^ @location@.
  -> GLint -- ^ @v0@.
  -> GLint -- ^ @v1@.
  -> IO ()
glProgramUniform2i = dyn_glProgramUniform2i ptr_glProgramUniform2i

foreign import CALLCONV "dynamic" dyn_glProgramUniform2i
  :: FunPtr (GLuint -> GLint -> GLint -> GLint -> IO ())
  ->         GLuint -> GLint -> GLint -> GLint -> IO ()

{-# NOINLINE ptr_glProgramUniform2i #-}
ptr_glProgramUniform2i :: FunPtr (GLuint -> GLint -> GLint -> GLint -> IO ())
ptr_glProgramUniform2i = unsafePerformIO $ getCommand "glProgramUniform2i"

-- glProgramUniform2i64NV ------------------------------------------------------

glProgramUniform2i64NV
  :: GLuint -- ^ @program@.
  -> GLint -- ^ @location@.
  -> GLint64EXT -- ^ @x@.
  -> GLint64EXT -- ^ @y@.
  -> IO ()
glProgramUniform2i64NV = dyn_glProgramUniform2i64NV ptr_glProgramUniform2i64NV

foreign import CALLCONV "dynamic" dyn_glProgramUniform2i64NV
  :: FunPtr (GLuint -> GLint -> GLint64EXT -> GLint64EXT -> IO ())
  ->         GLuint -> GLint -> GLint64EXT -> GLint64EXT -> IO ()

{-# NOINLINE ptr_glProgramUniform2i64NV #-}
ptr_glProgramUniform2i64NV :: FunPtr (GLuint -> GLint -> GLint64EXT -> GLint64EXT -> IO ())
ptr_glProgramUniform2i64NV = unsafePerformIO $ getCommand "glProgramUniform2i64NV"

-- glProgramUniform2i64vNV -----------------------------------------------------

glProgramUniform2i64vNV
  :: GLuint -- ^ @program@.
  -> GLint -- ^ @location@.
  -> GLsizei -- ^ @count@.
  -> Ptr GLint64EXT -- ^ @value@ pointing to @count*2@ elements of type @GLint64EXT@.
  -> IO ()
glProgramUniform2i64vNV = dyn_glProgramUniform2i64vNV ptr_glProgramUniform2i64vNV

foreign import CALLCONV "dynamic" dyn_glProgramUniform2i64vNV
  :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLint64EXT -> IO ())
  ->         GLuint -> GLint -> GLsizei -> Ptr GLint64EXT -> IO ()

{-# NOINLINE ptr_glProgramUniform2i64vNV #-}
ptr_glProgramUniform2i64vNV :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLint64EXT -> IO ())
ptr_glProgramUniform2i64vNV = unsafePerformIO $ getCommand "glProgramUniform2i64vNV"

-- glProgramUniform2iEXT -------------------------------------------------------

glProgramUniform2iEXT
  :: GLuint -- ^ @program@.
  -> GLint -- ^ @location@.
  -> GLint -- ^ @v0@.
  -> GLint -- ^ @v1@.
  -> IO ()
glProgramUniform2iEXT = dyn_glProgramUniform2iEXT ptr_glProgramUniform2iEXT

foreign import CALLCONV "dynamic" dyn_glProgramUniform2iEXT
  :: FunPtr (GLuint -> GLint -> GLint -> GLint -> IO ())
  ->         GLuint -> GLint -> GLint -> GLint -> IO ()

{-# NOINLINE ptr_glProgramUniform2iEXT #-}
ptr_glProgramUniform2iEXT :: FunPtr (GLuint -> GLint -> GLint -> GLint -> IO ())
ptr_glProgramUniform2iEXT = unsafePerformIO $ getCommand "glProgramUniform2iEXT"

-- glProgramUniform2iv ---------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glProgramUniform.xhtml OpenGL 4.x>
glProgramUniform2iv
  :: GLuint -- ^ @program@.
  -> GLint -- ^ @location@.
  -> GLsizei -- ^ @count@.
  -> Ptr GLint -- ^ @value@ pointing to @2@ elements of type @GLint@.
  -> IO ()
glProgramUniform2iv = dyn_glProgramUniform2iv ptr_glProgramUniform2iv

foreign import CALLCONV "dynamic" dyn_glProgramUniform2iv
  :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLint -> IO ())
  ->         GLuint -> GLint -> GLsizei -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glProgramUniform2iv #-}
ptr_glProgramUniform2iv :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLint -> IO ())
ptr_glProgramUniform2iv = unsafePerformIO $ getCommand "glProgramUniform2iv"

-- glProgramUniform2ivEXT ------------------------------------------------------

glProgramUniform2ivEXT
  :: GLuint -- ^ @program@.
  -> GLint -- ^ @location@.
  -> GLsizei -- ^ @count@.
  -> Ptr GLint -- ^ @value@ pointing to @count*2@ elements of type @GLint@.
  -> IO ()
glProgramUniform2ivEXT = dyn_glProgramUniform2ivEXT ptr_glProgramUniform2ivEXT

foreign import CALLCONV "dynamic" dyn_glProgramUniform2ivEXT
  :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLint -> IO ())
  ->         GLuint -> GLint -> GLsizei -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glProgramUniform2ivEXT #-}
ptr_glProgramUniform2ivEXT :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLint -> IO ())
ptr_glProgramUniform2ivEXT = unsafePerformIO $ getCommand "glProgramUniform2ivEXT"

-- glProgramUniform2ui ---------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glProgramUniform.xhtml OpenGL 4.x>
glProgramUniform2ui
  :: GLuint -- ^ @program@.
  -> GLint -- ^ @location@.
  -> GLuint -- ^ @v0@.
  -> GLuint -- ^ @v1@.
  -> IO ()
glProgramUniform2ui = dyn_glProgramUniform2ui ptr_glProgramUniform2ui

foreign import CALLCONV "dynamic" dyn_glProgramUniform2ui
  :: FunPtr (GLuint -> GLint -> GLuint -> GLuint -> IO ())
  ->         GLuint -> GLint -> GLuint -> GLuint -> IO ()

{-# NOINLINE ptr_glProgramUniform2ui #-}
ptr_glProgramUniform2ui :: FunPtr (GLuint -> GLint -> GLuint -> GLuint -> IO ())
ptr_glProgramUniform2ui = unsafePerformIO $ getCommand "glProgramUniform2ui"

-- glProgramUniform2ui64NV -----------------------------------------------------

glProgramUniform2ui64NV
  :: GLuint -- ^ @program@.
  -> GLint -- ^ @location@.
  -> GLuint64EXT -- ^ @x@.
  -> GLuint64EXT -- ^ @y@.
  -> IO ()
glProgramUniform2ui64NV = dyn_glProgramUniform2ui64NV ptr_glProgramUniform2ui64NV

foreign import CALLCONV "dynamic" dyn_glProgramUniform2ui64NV
  :: FunPtr (GLuint -> GLint -> GLuint64EXT -> GLuint64EXT -> IO ())
  ->         GLuint -> GLint -> GLuint64EXT -> GLuint64EXT -> IO ()

{-# NOINLINE ptr_glProgramUniform2ui64NV #-}
ptr_glProgramUniform2ui64NV :: FunPtr (GLuint -> GLint -> GLuint64EXT -> GLuint64EXT -> IO ())
ptr_glProgramUniform2ui64NV = unsafePerformIO $ getCommand "glProgramUniform2ui64NV"

-- glProgramUniform2ui64vNV ----------------------------------------------------

glProgramUniform2ui64vNV
  :: GLuint -- ^ @program@.
  -> GLint -- ^ @location@.
  -> GLsizei -- ^ @count@.
  -> Ptr GLuint64EXT -- ^ @value@ pointing to @count*2@ elements of type @GLuint64EXT@.
  -> IO ()
glProgramUniform2ui64vNV = dyn_glProgramUniform2ui64vNV ptr_glProgramUniform2ui64vNV

foreign import CALLCONV "dynamic" dyn_glProgramUniform2ui64vNV
  :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLuint64EXT -> IO ())
  ->         GLuint -> GLint -> GLsizei -> Ptr GLuint64EXT -> IO ()

{-# NOINLINE ptr_glProgramUniform2ui64vNV #-}
ptr_glProgramUniform2ui64vNV :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLuint64EXT -> IO ())
ptr_glProgramUniform2ui64vNV = unsafePerformIO $ getCommand "glProgramUniform2ui64vNV"

-- glProgramUniform2uiEXT ------------------------------------------------------

glProgramUniform2uiEXT
  :: GLuint -- ^ @program@.
  -> GLint -- ^ @location@.
  -> GLuint -- ^ @v0@.
  -> GLuint -- ^ @v1@.
  -> IO ()
glProgramUniform2uiEXT = dyn_glProgramUniform2uiEXT ptr_glProgramUniform2uiEXT

foreign import CALLCONV "dynamic" dyn_glProgramUniform2uiEXT
  :: FunPtr (GLuint -> GLint -> GLuint -> GLuint -> IO ())
  ->         GLuint -> GLint -> GLuint -> GLuint -> IO ()

{-# NOINLINE ptr_glProgramUniform2uiEXT #-}
ptr_glProgramUniform2uiEXT :: FunPtr (GLuint -> GLint -> GLuint -> GLuint -> IO ())
ptr_glProgramUniform2uiEXT = unsafePerformIO $ getCommand "glProgramUniform2uiEXT"

-- glProgramUniform2uiv --------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glProgramUniform.xhtml OpenGL 4.x>
glProgramUniform2uiv
  :: GLuint -- ^ @program@.
  -> GLint -- ^ @location@.
  -> GLsizei -- ^ @count@.
  -> Ptr GLuint -- ^ @value@ pointing to @2@ elements of type @GLuint@.
  -> IO ()
glProgramUniform2uiv = dyn_glProgramUniform2uiv ptr_glProgramUniform2uiv

foreign import CALLCONV "dynamic" dyn_glProgramUniform2uiv
  :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLuint -> IO ())
  ->         GLuint -> GLint -> GLsizei -> Ptr GLuint -> IO ()

{-# NOINLINE ptr_glProgramUniform2uiv #-}
ptr_glProgramUniform2uiv :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLuint -> IO ())
ptr_glProgramUniform2uiv = unsafePerformIO $ getCommand "glProgramUniform2uiv"

-- glProgramUniform2uivEXT -----------------------------------------------------

glProgramUniform2uivEXT
  :: GLuint -- ^ @program@.
  -> GLint -- ^ @location@.
  -> GLsizei -- ^ @count@.
  -> Ptr GLuint -- ^ @value@ pointing to @count*2@ elements of type @GLuint@.
  -> IO ()
glProgramUniform2uivEXT = dyn_glProgramUniform2uivEXT ptr_glProgramUniform2uivEXT

foreign import CALLCONV "dynamic" dyn_glProgramUniform2uivEXT
  :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLuint -> IO ())
  ->         GLuint -> GLint -> GLsizei -> Ptr GLuint -> IO ()

{-# NOINLINE ptr_glProgramUniform2uivEXT #-}
ptr_glProgramUniform2uivEXT :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLuint -> IO ())
ptr_glProgramUniform2uivEXT = unsafePerformIO $ getCommand "glProgramUniform2uivEXT"

-- glProgramUniform3d ----------------------------------------------------------

glProgramUniform3d
  :: GLuint -- ^ @program@.
  -> GLint -- ^ @location@.
  -> GLdouble -- ^ @v0@.
  -> GLdouble -- ^ @v1@.
  -> GLdouble -- ^ @v2@.
  -> IO ()
glProgramUniform3d = dyn_glProgramUniform3d ptr_glProgramUniform3d

foreign import CALLCONV "dynamic" dyn_glProgramUniform3d
  :: FunPtr (GLuint -> GLint -> GLdouble -> GLdouble -> GLdouble -> IO ())
  ->         GLuint -> GLint -> GLdouble -> GLdouble -> GLdouble -> IO ()

{-# NOINLINE ptr_glProgramUniform3d #-}
ptr_glProgramUniform3d :: FunPtr (GLuint -> GLint -> GLdouble -> GLdouble -> GLdouble -> IO ())
ptr_glProgramUniform3d = unsafePerformIO $ getCommand "glProgramUniform3d"

-- glProgramUniform3dEXT -------------------------------------------------------

glProgramUniform3dEXT
  :: GLuint -- ^ @program@.
  -> GLint -- ^ @location@.
  -> GLdouble -- ^ @x@.
  -> GLdouble -- ^ @y@.
  -> GLdouble -- ^ @z@.
  -> IO ()
glProgramUniform3dEXT = dyn_glProgramUniform3dEXT ptr_glProgramUniform3dEXT

foreign import CALLCONV "dynamic" dyn_glProgramUniform3dEXT
  :: FunPtr (GLuint -> GLint -> GLdouble -> GLdouble -> GLdouble -> IO ())
  ->         GLuint -> GLint -> GLdouble -> GLdouble -> GLdouble -> IO ()

{-# NOINLINE ptr_glProgramUniform3dEXT #-}
ptr_glProgramUniform3dEXT :: FunPtr (GLuint -> GLint -> GLdouble -> GLdouble -> GLdouble -> IO ())
ptr_glProgramUniform3dEXT = unsafePerformIO $ getCommand "glProgramUniform3dEXT"

-- glProgramUniform3dv ---------------------------------------------------------

glProgramUniform3dv
  :: GLuint -- ^ @program@.
  -> GLint -- ^ @location@.
  -> GLsizei -- ^ @count@.
  -> Ptr GLdouble -- ^ @value@ pointing to @3@ elements of type @GLdouble@.
  -> IO ()
glProgramUniform3dv = dyn_glProgramUniform3dv ptr_glProgramUniform3dv

foreign import CALLCONV "dynamic" dyn_glProgramUniform3dv
  :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLdouble -> IO ())
  ->         GLuint -> GLint -> GLsizei -> Ptr GLdouble -> IO ()

{-# NOINLINE ptr_glProgramUniform3dv #-}
ptr_glProgramUniform3dv :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLdouble -> IO ())
ptr_glProgramUniform3dv = unsafePerformIO $ getCommand "glProgramUniform3dv"

-- glProgramUniform3dvEXT ------------------------------------------------------

glProgramUniform3dvEXT
  :: GLuint -- ^ @program@.
  -> GLint -- ^ @location@.
  -> GLsizei -- ^ @count@.
  -> Ptr GLdouble -- ^ @value@ pointing to @count@ elements of type @GLdouble@.
  -> IO ()
glProgramUniform3dvEXT = dyn_glProgramUniform3dvEXT ptr_glProgramUniform3dvEXT

foreign import CALLCONV "dynamic" dyn_glProgramUniform3dvEXT
  :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLdouble -> IO ())
  ->         GLuint -> GLint -> GLsizei -> Ptr GLdouble -> IO ()

{-# NOINLINE ptr_glProgramUniform3dvEXT #-}
ptr_glProgramUniform3dvEXT :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLdouble -> IO ())
ptr_glProgramUniform3dvEXT = unsafePerformIO $ getCommand "glProgramUniform3dvEXT"

-- glProgramUniform3f ----------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glProgramUniform.xhtml OpenGL 4.x>
glProgramUniform3f
  :: GLuint -- ^ @program@.
  -> GLint -- ^ @location@.
  -> GLfloat -- ^ @v0@.
  -> GLfloat -- ^ @v1@.
  -> GLfloat -- ^ @v2@.
  -> IO ()
glProgramUniform3f = dyn_glProgramUniform3f ptr_glProgramUniform3f

foreign import CALLCONV "dynamic" dyn_glProgramUniform3f
  :: FunPtr (GLuint -> GLint -> GLfloat -> GLfloat -> GLfloat -> IO ())
  ->         GLuint -> GLint -> GLfloat -> GLfloat -> GLfloat -> IO ()

{-# NOINLINE ptr_glProgramUniform3f #-}
ptr_glProgramUniform3f :: FunPtr (GLuint -> GLint -> GLfloat -> GLfloat -> GLfloat -> IO ())
ptr_glProgramUniform3f = unsafePerformIO $ getCommand "glProgramUniform3f"

-- glProgramUniform3fEXT -------------------------------------------------------

glProgramUniform3fEXT
  :: GLuint -- ^ @program@.
  -> GLint -- ^ @location@.
  -> GLfloat -- ^ @v0@.
  -> GLfloat -- ^ @v1@.
  -> GLfloat -- ^ @v2@.
  -> IO ()
glProgramUniform3fEXT = dyn_glProgramUniform3fEXT ptr_glProgramUniform3fEXT

foreign import CALLCONV "dynamic" dyn_glProgramUniform3fEXT
  :: FunPtr (GLuint -> GLint -> GLfloat -> GLfloat -> GLfloat -> IO ())
  ->         GLuint -> GLint -> GLfloat -> GLfloat -> GLfloat -> IO ()

{-# NOINLINE ptr_glProgramUniform3fEXT #-}
ptr_glProgramUniform3fEXT :: FunPtr (GLuint -> GLint -> GLfloat -> GLfloat -> GLfloat -> IO ())
ptr_glProgramUniform3fEXT = unsafePerformIO $ getCommand "glProgramUniform3fEXT"

-- glProgramUniform3fv ---------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glProgramUniform.xhtml OpenGL 4.x>
glProgramUniform3fv
  :: GLuint -- ^ @program@.
  -> GLint -- ^ @location@.
  -> GLsizei -- ^ @count@.
  -> Ptr GLfloat -- ^ @value@ pointing to @3@ elements of type @GLfloat@.
  -> IO ()
glProgramUniform3fv = dyn_glProgramUniform3fv ptr_glProgramUniform3fv

foreign import CALLCONV "dynamic" dyn_glProgramUniform3fv
  :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLfloat -> IO ())
  ->         GLuint -> GLint -> GLsizei -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glProgramUniform3fv #-}
ptr_glProgramUniform3fv :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLfloat -> IO ())
ptr_glProgramUniform3fv = unsafePerformIO $ getCommand "glProgramUniform3fv"

-- glProgramUniform3fvEXT ------------------------------------------------------

glProgramUniform3fvEXT
  :: GLuint -- ^ @program@.
  -> GLint -- ^ @location@.
  -> GLsizei -- ^ @count@.
  -> Ptr GLfloat -- ^ @value@ pointing to @count*3@ elements of type @GLfloat@.
  -> IO ()
glProgramUniform3fvEXT = dyn_glProgramUniform3fvEXT ptr_glProgramUniform3fvEXT

foreign import CALLCONV "dynamic" dyn_glProgramUniform3fvEXT
  :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLfloat -> IO ())
  ->         GLuint -> GLint -> GLsizei -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glProgramUniform3fvEXT #-}
ptr_glProgramUniform3fvEXT :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLfloat -> IO ())
ptr_glProgramUniform3fvEXT = unsafePerformIO $ getCommand "glProgramUniform3fvEXT"

-- glProgramUniform3i ----------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glProgramUniform.xhtml OpenGL 4.x>
glProgramUniform3i
  :: GLuint -- ^ @program@.
  -> GLint -- ^ @location@.
  -> GLint -- ^ @v0@.
  -> GLint -- ^ @v1@.
  -> GLint -- ^ @v2@.
  -> IO ()
glProgramUniform3i = dyn_glProgramUniform3i ptr_glProgramUniform3i

foreign import CALLCONV "dynamic" dyn_glProgramUniform3i
  :: FunPtr (GLuint -> GLint -> GLint -> GLint -> GLint -> IO ())
  ->         GLuint -> GLint -> GLint -> GLint -> GLint -> IO ()

{-# NOINLINE ptr_glProgramUniform3i #-}
ptr_glProgramUniform3i :: FunPtr (GLuint -> GLint -> GLint -> GLint -> GLint -> IO ())
ptr_glProgramUniform3i = unsafePerformIO $ getCommand "glProgramUniform3i"

-- glProgramUniform3i64NV ------------------------------------------------------

glProgramUniform3i64NV
  :: GLuint -- ^ @program@.
  -> GLint -- ^ @location@.
  -> GLint64EXT -- ^ @x@.
  -> GLint64EXT -- ^ @y@.
  -> GLint64EXT -- ^ @z@.
  -> IO ()
glProgramUniform3i64NV = dyn_glProgramUniform3i64NV ptr_glProgramUniform3i64NV

foreign import CALLCONV "dynamic" dyn_glProgramUniform3i64NV
  :: FunPtr (GLuint -> GLint -> GLint64EXT -> GLint64EXT -> GLint64EXT -> IO ())
  ->         GLuint -> GLint -> GLint64EXT -> GLint64EXT -> GLint64EXT -> IO ()

{-# NOINLINE ptr_glProgramUniform3i64NV #-}
ptr_glProgramUniform3i64NV :: FunPtr (GLuint -> GLint -> GLint64EXT -> GLint64EXT -> GLint64EXT -> IO ())
ptr_glProgramUniform3i64NV = unsafePerformIO $ getCommand "glProgramUniform3i64NV"

-- glProgramUniform3i64vNV -----------------------------------------------------

glProgramUniform3i64vNV
  :: GLuint -- ^ @program@.
  -> GLint -- ^ @location@.
  -> GLsizei -- ^ @count@.
  -> Ptr GLint64EXT -- ^ @value@ pointing to @count*3@ elements of type @GLint64EXT@.
  -> IO ()
glProgramUniform3i64vNV = dyn_glProgramUniform3i64vNV ptr_glProgramUniform3i64vNV

foreign import CALLCONV "dynamic" dyn_glProgramUniform3i64vNV
  :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLint64EXT -> IO ())
  ->         GLuint -> GLint -> GLsizei -> Ptr GLint64EXT -> IO ()

{-# NOINLINE ptr_glProgramUniform3i64vNV #-}
ptr_glProgramUniform3i64vNV :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLint64EXT -> IO ())
ptr_glProgramUniform3i64vNV = unsafePerformIO $ getCommand "glProgramUniform3i64vNV"

-- glProgramUniform3iEXT -------------------------------------------------------

glProgramUniform3iEXT
  :: GLuint -- ^ @program@.
  -> GLint -- ^ @location@.
  -> GLint -- ^ @v0@.
  -> GLint -- ^ @v1@.
  -> GLint -- ^ @v2@.
  -> IO ()
glProgramUniform3iEXT = dyn_glProgramUniform3iEXT ptr_glProgramUniform3iEXT

foreign import CALLCONV "dynamic" dyn_glProgramUniform3iEXT
  :: FunPtr (GLuint -> GLint -> GLint -> GLint -> GLint -> IO ())
  ->         GLuint -> GLint -> GLint -> GLint -> GLint -> IO ()

{-# NOINLINE ptr_glProgramUniform3iEXT #-}
ptr_glProgramUniform3iEXT :: FunPtr (GLuint -> GLint -> GLint -> GLint -> GLint -> IO ())
ptr_glProgramUniform3iEXT = unsafePerformIO $ getCommand "glProgramUniform3iEXT"

-- glProgramUniform3iv ---------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glProgramUniform.xhtml OpenGL 4.x>
glProgramUniform3iv
  :: GLuint -- ^ @program@.
  -> GLint -- ^ @location@.
  -> GLsizei -- ^ @count@.
  -> Ptr GLint -- ^ @value@ pointing to @3@ elements of type @GLint@.
  -> IO ()
glProgramUniform3iv = dyn_glProgramUniform3iv ptr_glProgramUniform3iv

foreign import CALLCONV "dynamic" dyn_glProgramUniform3iv
  :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLint -> IO ())
  ->         GLuint -> GLint -> GLsizei -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glProgramUniform3iv #-}
ptr_glProgramUniform3iv :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLint -> IO ())
ptr_glProgramUniform3iv = unsafePerformIO $ getCommand "glProgramUniform3iv"

-- glProgramUniform3ivEXT ------------------------------------------------------

glProgramUniform3ivEXT
  :: GLuint -- ^ @program@.
  -> GLint -- ^ @location@.
  -> GLsizei -- ^ @count@.
  -> Ptr GLint -- ^ @value@ pointing to @count*3@ elements of type @GLint@.
  -> IO ()
glProgramUniform3ivEXT = dyn_glProgramUniform3ivEXT ptr_glProgramUniform3ivEXT

foreign import CALLCONV "dynamic" dyn_glProgramUniform3ivEXT
  :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLint -> IO ())
  ->         GLuint -> GLint -> GLsizei -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glProgramUniform3ivEXT #-}
ptr_glProgramUniform3ivEXT :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLint -> IO ())
ptr_glProgramUniform3ivEXT = unsafePerformIO $ getCommand "glProgramUniform3ivEXT"

-- glProgramUniform3ui ---------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glProgramUniform.xhtml OpenGL 4.x>
glProgramUniform3ui
  :: GLuint -- ^ @program@.
  -> GLint -- ^ @location@.
  -> GLuint -- ^ @v0@.
  -> GLuint -- ^ @v1@.
  -> GLuint -- ^ @v2@.
  -> IO ()
glProgramUniform3ui = dyn_glProgramUniform3ui ptr_glProgramUniform3ui

foreign import CALLCONV "dynamic" dyn_glProgramUniform3ui
  :: FunPtr (GLuint -> GLint -> GLuint -> GLuint -> GLuint -> IO ())
  ->         GLuint -> GLint -> GLuint -> GLuint -> GLuint -> IO ()

{-# NOINLINE ptr_glProgramUniform3ui #-}
ptr_glProgramUniform3ui :: FunPtr (GLuint -> GLint -> GLuint -> GLuint -> GLuint -> IO ())
ptr_glProgramUniform3ui = unsafePerformIO $ getCommand "glProgramUniform3ui"

-- glProgramUniform3ui64NV -----------------------------------------------------

glProgramUniform3ui64NV
  :: GLuint -- ^ @program@.
  -> GLint -- ^ @location@.
  -> GLuint64EXT -- ^ @x@.
  -> GLuint64EXT -- ^ @y@.
  -> GLuint64EXT -- ^ @z@.
  -> IO ()
glProgramUniform3ui64NV = dyn_glProgramUniform3ui64NV ptr_glProgramUniform3ui64NV

foreign import CALLCONV "dynamic" dyn_glProgramUniform3ui64NV
  :: FunPtr (GLuint -> GLint -> GLuint64EXT -> GLuint64EXT -> GLuint64EXT -> IO ())
  ->         GLuint -> GLint -> GLuint64EXT -> GLuint64EXT -> GLuint64EXT -> IO ()

{-# NOINLINE ptr_glProgramUniform3ui64NV #-}
ptr_glProgramUniform3ui64NV :: FunPtr (GLuint -> GLint -> GLuint64EXT -> GLuint64EXT -> GLuint64EXT -> IO ())
ptr_glProgramUniform3ui64NV = unsafePerformIO $ getCommand "glProgramUniform3ui64NV"

-- glProgramUniform3ui64vNV ----------------------------------------------------

glProgramUniform3ui64vNV
  :: GLuint -- ^ @program@.
  -> GLint -- ^ @location@.
  -> GLsizei -- ^ @count@.
  -> Ptr GLuint64EXT -- ^ @value@ pointing to @count*3@ elements of type @GLuint64EXT@.
  -> IO ()
glProgramUniform3ui64vNV = dyn_glProgramUniform3ui64vNV ptr_glProgramUniform3ui64vNV

foreign import CALLCONV "dynamic" dyn_glProgramUniform3ui64vNV
  :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLuint64EXT -> IO ())
  ->         GLuint -> GLint -> GLsizei -> Ptr GLuint64EXT -> IO ()

{-# NOINLINE ptr_glProgramUniform3ui64vNV #-}
ptr_glProgramUniform3ui64vNV :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLuint64EXT -> IO ())
ptr_glProgramUniform3ui64vNV = unsafePerformIO $ getCommand "glProgramUniform3ui64vNV"

-- glProgramUniform3uiEXT ------------------------------------------------------

glProgramUniform3uiEXT
  :: GLuint -- ^ @program@.
  -> GLint -- ^ @location@.
  -> GLuint -- ^ @v0@.
  -> GLuint -- ^ @v1@.
  -> GLuint -- ^ @v2@.
  -> IO ()
glProgramUniform3uiEXT = dyn_glProgramUniform3uiEXT ptr_glProgramUniform3uiEXT

foreign import CALLCONV "dynamic" dyn_glProgramUniform3uiEXT
  :: FunPtr (GLuint -> GLint -> GLuint -> GLuint -> GLuint -> IO ())
  ->         GLuint -> GLint -> GLuint -> GLuint -> GLuint -> IO ()

{-# NOINLINE ptr_glProgramUniform3uiEXT #-}
ptr_glProgramUniform3uiEXT :: FunPtr (GLuint -> GLint -> GLuint -> GLuint -> GLuint -> IO ())
ptr_glProgramUniform3uiEXT = unsafePerformIO $ getCommand "glProgramUniform3uiEXT"

-- glProgramUniform3uiv --------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glProgramUniform.xhtml OpenGL 4.x>
glProgramUniform3uiv
  :: GLuint -- ^ @program@.
  -> GLint -- ^ @location@.
  -> GLsizei -- ^ @count@.
  -> Ptr GLuint -- ^ @value@ pointing to @3@ elements of type @GLuint@.
  -> IO ()
glProgramUniform3uiv = dyn_glProgramUniform3uiv ptr_glProgramUniform3uiv

foreign import CALLCONV "dynamic" dyn_glProgramUniform3uiv
  :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLuint -> IO ())
  ->         GLuint -> GLint -> GLsizei -> Ptr GLuint -> IO ()

{-# NOINLINE ptr_glProgramUniform3uiv #-}
ptr_glProgramUniform3uiv :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLuint -> IO ())
ptr_glProgramUniform3uiv = unsafePerformIO $ getCommand "glProgramUniform3uiv"

-- glProgramUniform3uivEXT -----------------------------------------------------

glProgramUniform3uivEXT
  :: GLuint -- ^ @program@.
  -> GLint -- ^ @location@.
  -> GLsizei -- ^ @count@.
  -> Ptr GLuint -- ^ @value@ pointing to @count*3@ elements of type @GLuint@.
  -> IO ()
glProgramUniform3uivEXT = dyn_glProgramUniform3uivEXT ptr_glProgramUniform3uivEXT

foreign import CALLCONV "dynamic" dyn_glProgramUniform3uivEXT
  :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLuint -> IO ())
  ->         GLuint -> GLint -> GLsizei -> Ptr GLuint -> IO ()

{-# NOINLINE ptr_glProgramUniform3uivEXT #-}
ptr_glProgramUniform3uivEXT :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLuint -> IO ())
ptr_glProgramUniform3uivEXT = unsafePerformIO $ getCommand "glProgramUniform3uivEXT"

-- glProgramUniform4d ----------------------------------------------------------

glProgramUniform4d
  :: GLuint -- ^ @program@.
  -> GLint -- ^ @location@.
  -> GLdouble -- ^ @v0@.
  -> GLdouble -- ^ @v1@.
  -> GLdouble -- ^ @v2@.
  -> GLdouble -- ^ @v3@.
  -> IO ()
glProgramUniform4d = dyn_glProgramUniform4d ptr_glProgramUniform4d

foreign import CALLCONV "dynamic" dyn_glProgramUniform4d
  :: FunPtr (GLuint -> GLint -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ())
  ->         GLuint -> GLint -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ()

{-# NOINLINE ptr_glProgramUniform4d #-}
ptr_glProgramUniform4d :: FunPtr (GLuint -> GLint -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ())
ptr_glProgramUniform4d = unsafePerformIO $ getCommand "glProgramUniform4d"

-- glProgramUniform4dEXT -------------------------------------------------------

glProgramUniform4dEXT
  :: GLuint -- ^ @program@.
  -> GLint -- ^ @location@.
  -> GLdouble -- ^ @x@.
  -> GLdouble -- ^ @y@.
  -> GLdouble -- ^ @z@.
  -> GLdouble -- ^ @w@.
  -> IO ()
glProgramUniform4dEXT = dyn_glProgramUniform4dEXT ptr_glProgramUniform4dEXT

foreign import CALLCONV "dynamic" dyn_glProgramUniform4dEXT
  :: FunPtr (GLuint -> GLint -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ())
  ->         GLuint -> GLint -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ()

{-# NOINLINE ptr_glProgramUniform4dEXT #-}
ptr_glProgramUniform4dEXT :: FunPtr (GLuint -> GLint -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ())
ptr_glProgramUniform4dEXT = unsafePerformIO $ getCommand "glProgramUniform4dEXT"

-- glProgramUniform4dv ---------------------------------------------------------

glProgramUniform4dv
  :: GLuint -- ^ @program@.
  -> GLint -- ^ @location@.
  -> GLsizei -- ^ @count@.
  -> Ptr GLdouble -- ^ @value@ pointing to @4@ elements of type @GLdouble@.
  -> IO ()
glProgramUniform4dv = dyn_glProgramUniform4dv ptr_glProgramUniform4dv

foreign import CALLCONV "dynamic" dyn_glProgramUniform4dv
  :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLdouble -> IO ())
  ->         GLuint -> GLint -> GLsizei -> Ptr GLdouble -> IO ()

{-# NOINLINE ptr_glProgramUniform4dv #-}
ptr_glProgramUniform4dv :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLdouble -> IO ())
ptr_glProgramUniform4dv = unsafePerformIO $ getCommand "glProgramUniform4dv"

-- glProgramUniform4dvEXT ------------------------------------------------------

glProgramUniform4dvEXT
  :: GLuint -- ^ @program@.
  -> GLint -- ^ @location@.
  -> GLsizei -- ^ @count@.
  -> Ptr GLdouble -- ^ @value@ pointing to @count@ elements of type @GLdouble@.
  -> IO ()
glProgramUniform4dvEXT = dyn_glProgramUniform4dvEXT ptr_glProgramUniform4dvEXT

foreign import CALLCONV "dynamic" dyn_glProgramUniform4dvEXT
  :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLdouble -> IO ())
  ->         GLuint -> GLint -> GLsizei -> Ptr GLdouble -> IO ()

{-# NOINLINE ptr_glProgramUniform4dvEXT #-}
ptr_glProgramUniform4dvEXT :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLdouble -> IO ())
ptr_glProgramUniform4dvEXT = unsafePerformIO $ getCommand "glProgramUniform4dvEXT"

-- glProgramUniform4f ----------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glProgramUniform.xhtml OpenGL 4.x>
glProgramUniform4f
  :: GLuint -- ^ @program@.
  -> GLint -- ^ @location@.
  -> GLfloat -- ^ @v0@.
  -> GLfloat -- ^ @v1@.
  -> GLfloat -- ^ @v2@.
  -> GLfloat -- ^ @v3@.
  -> IO ()
glProgramUniform4f = dyn_glProgramUniform4f ptr_glProgramUniform4f

foreign import CALLCONV "dynamic" dyn_glProgramUniform4f
  :: FunPtr (GLuint -> GLint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
  ->         GLuint -> GLint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ()

{-# NOINLINE ptr_glProgramUniform4f #-}
ptr_glProgramUniform4f :: FunPtr (GLuint -> GLint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
ptr_glProgramUniform4f = unsafePerformIO $ getCommand "glProgramUniform4f"

-- glProgramUniform4fEXT -------------------------------------------------------

glProgramUniform4fEXT
  :: GLuint -- ^ @program@.
  -> GLint -- ^ @location@.
  -> GLfloat -- ^ @v0@.
  -> GLfloat -- ^ @v1@.
  -> GLfloat -- ^ @v2@.
  -> GLfloat -- ^ @v3@.
  -> IO ()
glProgramUniform4fEXT = dyn_glProgramUniform4fEXT ptr_glProgramUniform4fEXT

foreign import CALLCONV "dynamic" dyn_glProgramUniform4fEXT
  :: FunPtr (GLuint -> GLint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
  ->         GLuint -> GLint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ()

{-# NOINLINE ptr_glProgramUniform4fEXT #-}
ptr_glProgramUniform4fEXT :: FunPtr (GLuint -> GLint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
ptr_glProgramUniform4fEXT = unsafePerformIO $ getCommand "glProgramUniform4fEXT"

-- glProgramUniform4fv ---------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glProgramUniform.xhtml OpenGL 4.x>
glProgramUniform4fv
  :: GLuint -- ^ @program@.
  -> GLint -- ^ @location@.
  -> GLsizei -- ^ @count@.
  -> Ptr GLfloat -- ^ @value@ pointing to @4@ elements of type @GLfloat@.
  -> IO ()
glProgramUniform4fv = dyn_glProgramUniform4fv ptr_glProgramUniform4fv

foreign import CALLCONV "dynamic" dyn_glProgramUniform4fv
  :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLfloat -> IO ())
  ->         GLuint -> GLint -> GLsizei -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glProgramUniform4fv #-}
ptr_glProgramUniform4fv :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLfloat -> IO ())
ptr_glProgramUniform4fv = unsafePerformIO $ getCommand "glProgramUniform4fv"

-- glProgramUniform4fvEXT ------------------------------------------------------

glProgramUniform4fvEXT
  :: GLuint -- ^ @program@.
  -> GLint -- ^ @location@.
  -> GLsizei -- ^ @count@.
  -> Ptr GLfloat -- ^ @value@ pointing to @count*4@ elements of type @GLfloat@.
  -> IO ()
glProgramUniform4fvEXT = dyn_glProgramUniform4fvEXT ptr_glProgramUniform4fvEXT

foreign import CALLCONV "dynamic" dyn_glProgramUniform4fvEXT
  :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLfloat -> IO ())
  ->         GLuint -> GLint -> GLsizei -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glProgramUniform4fvEXT #-}
ptr_glProgramUniform4fvEXT :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLfloat -> IO ())
ptr_glProgramUniform4fvEXT = unsafePerformIO $ getCommand "glProgramUniform4fvEXT"

-- glProgramUniform4i ----------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glProgramUniform.xhtml OpenGL 4.x>
glProgramUniform4i
  :: GLuint -- ^ @program@.
  -> GLint -- ^ @location@.
  -> GLint -- ^ @v0@.
  -> GLint -- ^ @v1@.
  -> GLint -- ^ @v2@.
  -> GLint -- ^ @v3@.
  -> IO ()
glProgramUniform4i = dyn_glProgramUniform4i ptr_glProgramUniform4i

foreign import CALLCONV "dynamic" dyn_glProgramUniform4i
  :: FunPtr (GLuint -> GLint -> GLint -> GLint -> GLint -> GLint -> IO ())
  ->         GLuint -> GLint -> GLint -> GLint -> GLint -> GLint -> IO ()

{-# NOINLINE ptr_glProgramUniform4i #-}
ptr_glProgramUniform4i :: FunPtr (GLuint -> GLint -> GLint -> GLint -> GLint -> GLint -> IO ())
ptr_glProgramUniform4i = unsafePerformIO $ getCommand "glProgramUniform4i"

-- glProgramUniform4i64NV ------------------------------------------------------

glProgramUniform4i64NV
  :: GLuint -- ^ @program@.
  -> GLint -- ^ @location@.
  -> GLint64EXT -- ^ @x@.
  -> GLint64EXT -- ^ @y@.
  -> GLint64EXT -- ^ @z@.
  -> GLint64EXT -- ^ @w@.
  -> IO ()
glProgramUniform4i64NV = dyn_glProgramUniform4i64NV ptr_glProgramUniform4i64NV

foreign import CALLCONV "dynamic" dyn_glProgramUniform4i64NV
  :: FunPtr (GLuint -> GLint -> GLint64EXT -> GLint64EXT -> GLint64EXT -> GLint64EXT -> IO ())
  ->         GLuint -> GLint -> GLint64EXT -> GLint64EXT -> GLint64EXT -> GLint64EXT -> IO ()

{-# NOINLINE ptr_glProgramUniform4i64NV #-}
ptr_glProgramUniform4i64NV :: FunPtr (GLuint -> GLint -> GLint64EXT -> GLint64EXT -> GLint64EXT -> GLint64EXT -> IO ())
ptr_glProgramUniform4i64NV = unsafePerformIO $ getCommand "glProgramUniform4i64NV"

-- glProgramUniform4i64vNV -----------------------------------------------------

glProgramUniform4i64vNV
  :: GLuint -- ^ @program@.
  -> GLint -- ^ @location@.
  -> GLsizei -- ^ @count@.
  -> Ptr GLint64EXT -- ^ @value@ pointing to @count*4@ elements of type @GLint64EXT@.
  -> IO ()
glProgramUniform4i64vNV = dyn_glProgramUniform4i64vNV ptr_glProgramUniform4i64vNV

foreign import CALLCONV "dynamic" dyn_glProgramUniform4i64vNV
  :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLint64EXT -> IO ())
  ->         GLuint -> GLint -> GLsizei -> Ptr GLint64EXT -> IO ()

{-# NOINLINE ptr_glProgramUniform4i64vNV #-}
ptr_glProgramUniform4i64vNV :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLint64EXT -> IO ())
ptr_glProgramUniform4i64vNV = unsafePerformIO $ getCommand "glProgramUniform4i64vNV"

-- glProgramUniform4iEXT -------------------------------------------------------

glProgramUniform4iEXT
  :: GLuint -- ^ @program@.
  -> GLint -- ^ @location@.
  -> GLint -- ^ @v0@.
  -> GLint -- ^ @v1@.
  -> GLint -- ^ @v2@.
  -> GLint -- ^ @v3@.
  -> IO ()
glProgramUniform4iEXT = dyn_glProgramUniform4iEXT ptr_glProgramUniform4iEXT

foreign import CALLCONV "dynamic" dyn_glProgramUniform4iEXT
  :: FunPtr (GLuint -> GLint -> GLint -> GLint -> GLint -> GLint -> IO ())
  ->         GLuint -> GLint -> GLint -> GLint -> GLint -> GLint -> IO ()

{-# NOINLINE ptr_glProgramUniform4iEXT #-}
ptr_glProgramUniform4iEXT :: FunPtr (GLuint -> GLint -> GLint -> GLint -> GLint -> GLint -> IO ())
ptr_glProgramUniform4iEXT = unsafePerformIO $ getCommand "glProgramUniform4iEXT"

-- glProgramUniform4iv ---------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glProgramUniform.xhtml OpenGL 4.x>
glProgramUniform4iv
  :: GLuint -- ^ @program@.
  -> GLint -- ^ @location@.
  -> GLsizei -- ^ @count@.
  -> Ptr GLint -- ^ @value@ pointing to @4@ elements of type @GLint@.
  -> IO ()
glProgramUniform4iv = dyn_glProgramUniform4iv ptr_glProgramUniform4iv

foreign import CALLCONV "dynamic" dyn_glProgramUniform4iv
  :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLint -> IO ())
  ->         GLuint -> GLint -> GLsizei -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glProgramUniform4iv #-}
ptr_glProgramUniform4iv :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLint -> IO ())
ptr_glProgramUniform4iv = unsafePerformIO $ getCommand "glProgramUniform4iv"

-- glProgramUniform4ivEXT ------------------------------------------------------

glProgramUniform4ivEXT
  :: GLuint -- ^ @program@.
  -> GLint -- ^ @location@.
  -> GLsizei -- ^ @count@.
  -> Ptr GLint -- ^ @value@ pointing to @count*4@ elements of type @GLint@.
  -> IO ()
glProgramUniform4ivEXT = dyn_glProgramUniform4ivEXT ptr_glProgramUniform4ivEXT

foreign import CALLCONV "dynamic" dyn_glProgramUniform4ivEXT
  :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLint -> IO ())
  ->         GLuint -> GLint -> GLsizei -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glProgramUniform4ivEXT #-}
ptr_glProgramUniform4ivEXT :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLint -> IO ())
ptr_glProgramUniform4ivEXT = unsafePerformIO $ getCommand "glProgramUniform4ivEXT"

-- glProgramUniform4ui ---------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glProgramUniform.xhtml OpenGL 4.x>
glProgramUniform4ui
  :: GLuint -- ^ @program@.
  -> GLint -- ^ @location@.
  -> GLuint -- ^ @v0@.
  -> GLuint -- ^ @v1@.
  -> GLuint -- ^ @v2@.
  -> GLuint -- ^ @v3@.
  -> IO ()
glProgramUniform4ui = dyn_glProgramUniform4ui ptr_glProgramUniform4ui

foreign import CALLCONV "dynamic" dyn_glProgramUniform4ui
  :: FunPtr (GLuint -> GLint -> GLuint -> GLuint -> GLuint -> GLuint -> IO ())
  ->         GLuint -> GLint -> GLuint -> GLuint -> GLuint -> GLuint -> IO ()

{-# NOINLINE ptr_glProgramUniform4ui #-}
ptr_glProgramUniform4ui :: FunPtr (GLuint -> GLint -> GLuint -> GLuint -> GLuint -> GLuint -> IO ())
ptr_glProgramUniform4ui = unsafePerformIO $ getCommand "glProgramUniform4ui"

-- glProgramUniform4ui64NV -----------------------------------------------------

glProgramUniform4ui64NV
  :: GLuint -- ^ @program@.
  -> GLint -- ^ @location@.
  -> GLuint64EXT -- ^ @x@.
  -> GLuint64EXT -- ^ @y@.
  -> GLuint64EXT -- ^ @z@.
  -> GLuint64EXT -- ^ @w@.
  -> IO ()
glProgramUniform4ui64NV = dyn_glProgramUniform4ui64NV ptr_glProgramUniform4ui64NV

foreign import CALLCONV "dynamic" dyn_glProgramUniform4ui64NV
  :: FunPtr (GLuint -> GLint -> GLuint64EXT -> GLuint64EXT -> GLuint64EXT -> GLuint64EXT -> IO ())
  ->         GLuint -> GLint -> GLuint64EXT -> GLuint64EXT -> GLuint64EXT -> GLuint64EXT -> IO ()

{-# NOINLINE ptr_glProgramUniform4ui64NV #-}
ptr_glProgramUniform4ui64NV :: FunPtr (GLuint -> GLint -> GLuint64EXT -> GLuint64EXT -> GLuint64EXT -> GLuint64EXT -> IO ())
ptr_glProgramUniform4ui64NV = unsafePerformIO $ getCommand "glProgramUniform4ui64NV"

-- glProgramUniform4ui64vNV ----------------------------------------------------

glProgramUniform4ui64vNV
  :: GLuint -- ^ @program@.
  -> GLint -- ^ @location@.
  -> GLsizei -- ^ @count@.
  -> Ptr GLuint64EXT -- ^ @value@ pointing to @count*4@ elements of type @GLuint64EXT@.
  -> IO ()
glProgramUniform4ui64vNV = dyn_glProgramUniform4ui64vNV ptr_glProgramUniform4ui64vNV

foreign import CALLCONV "dynamic" dyn_glProgramUniform4ui64vNV
  :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLuint64EXT -> IO ())
  ->         GLuint -> GLint -> GLsizei -> Ptr GLuint64EXT -> IO ()

{-# NOINLINE ptr_glProgramUniform4ui64vNV #-}
ptr_glProgramUniform4ui64vNV :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLuint64EXT -> IO ())
ptr_glProgramUniform4ui64vNV = unsafePerformIO $ getCommand "glProgramUniform4ui64vNV"

-- glProgramUniform4uiEXT ------------------------------------------------------

glProgramUniform4uiEXT
  :: GLuint -- ^ @program@.
  -> GLint -- ^ @location@.
  -> GLuint -- ^ @v0@.
  -> GLuint -- ^ @v1@.
  -> GLuint -- ^ @v2@.
  -> GLuint -- ^ @v3@.
  -> IO ()
glProgramUniform4uiEXT = dyn_glProgramUniform4uiEXT ptr_glProgramUniform4uiEXT

foreign import CALLCONV "dynamic" dyn_glProgramUniform4uiEXT
  :: FunPtr (GLuint -> GLint -> GLuint -> GLuint -> GLuint -> GLuint -> IO ())
  ->         GLuint -> GLint -> GLuint -> GLuint -> GLuint -> GLuint -> IO ()

{-# NOINLINE ptr_glProgramUniform4uiEXT #-}
ptr_glProgramUniform4uiEXT :: FunPtr (GLuint -> GLint -> GLuint -> GLuint -> GLuint -> GLuint -> IO ())
ptr_glProgramUniform4uiEXT = unsafePerformIO $ getCommand "glProgramUniform4uiEXT"

-- glProgramUniform4uiv --------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glProgramUniform.xhtml OpenGL 4.x>
glProgramUniform4uiv
  :: GLuint -- ^ @program@.
  -> GLint -- ^ @location@.
  -> GLsizei -- ^ @count@.
  -> Ptr GLuint -- ^ @value@ pointing to @4@ elements of type @GLuint@.
  -> IO ()
glProgramUniform4uiv = dyn_glProgramUniform4uiv ptr_glProgramUniform4uiv

foreign import CALLCONV "dynamic" dyn_glProgramUniform4uiv
  :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLuint -> IO ())
  ->         GLuint -> GLint -> GLsizei -> Ptr GLuint -> IO ()

{-# NOINLINE ptr_glProgramUniform4uiv #-}
ptr_glProgramUniform4uiv :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLuint -> IO ())
ptr_glProgramUniform4uiv = unsafePerformIO $ getCommand "glProgramUniform4uiv"

-- glProgramUniform4uivEXT -----------------------------------------------------

glProgramUniform4uivEXT
  :: GLuint -- ^ @program@.
  -> GLint -- ^ @location@.
  -> GLsizei -- ^ @count@.
  -> Ptr GLuint -- ^ @value@ pointing to @count*4@ elements of type @GLuint@.
  -> IO ()
glProgramUniform4uivEXT = dyn_glProgramUniform4uivEXT ptr_glProgramUniform4uivEXT

foreign import CALLCONV "dynamic" dyn_glProgramUniform4uivEXT
  :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLuint -> IO ())
  ->         GLuint -> GLint -> GLsizei -> Ptr GLuint -> IO ()

{-# NOINLINE ptr_glProgramUniform4uivEXT #-}
ptr_glProgramUniform4uivEXT :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLuint -> IO ())
ptr_glProgramUniform4uivEXT = unsafePerformIO $ getCommand "glProgramUniform4uivEXT"

-- glProgramUniformHandleui64ARB -----------------------------------------------

glProgramUniformHandleui64ARB
  :: GLuint -- ^ @program@.
  -> GLint -- ^ @location@.
  -> GLuint64 -- ^ @value@.
  -> IO ()
glProgramUniformHandleui64ARB = dyn_glProgramUniformHandleui64ARB ptr_glProgramUniformHandleui64ARB

foreign import CALLCONV "dynamic" dyn_glProgramUniformHandleui64ARB
  :: FunPtr (GLuint -> GLint -> GLuint64 -> IO ())
  ->         GLuint -> GLint -> GLuint64 -> IO ()

{-# NOINLINE ptr_glProgramUniformHandleui64ARB #-}
ptr_glProgramUniformHandleui64ARB :: FunPtr (GLuint -> GLint -> GLuint64 -> IO ())
ptr_glProgramUniformHandleui64ARB = unsafePerformIO $ getCommand "glProgramUniformHandleui64ARB"

-- glProgramUniformHandleui64NV ------------------------------------------------

glProgramUniformHandleui64NV
  :: GLuint -- ^ @program@.
  -> GLint -- ^ @location@.
  -> GLuint64 -- ^ @value@.
  -> IO ()
glProgramUniformHandleui64NV = dyn_glProgramUniformHandleui64NV ptr_glProgramUniformHandleui64NV

foreign import CALLCONV "dynamic" dyn_glProgramUniformHandleui64NV
  :: FunPtr (GLuint -> GLint -> GLuint64 -> IO ())
  ->         GLuint -> GLint -> GLuint64 -> IO ()

{-# NOINLINE ptr_glProgramUniformHandleui64NV #-}
ptr_glProgramUniformHandleui64NV :: FunPtr (GLuint -> GLint -> GLuint64 -> IO ())
ptr_glProgramUniformHandleui64NV = unsafePerformIO $ getCommand "glProgramUniformHandleui64NV"

-- glProgramUniformHandleui64vARB ----------------------------------------------

glProgramUniformHandleui64vARB
  :: GLuint -- ^ @program@.
  -> GLint -- ^ @location@.
  -> GLsizei -- ^ @count@.
  -> Ptr GLuint64 -- ^ @values@ pointing to @count@ elements of type @GLuint64@.
  -> IO ()
glProgramUniformHandleui64vARB = dyn_glProgramUniformHandleui64vARB ptr_glProgramUniformHandleui64vARB

foreign import CALLCONV "dynamic" dyn_glProgramUniformHandleui64vARB
  :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLuint64 -> IO ())
  ->         GLuint -> GLint -> GLsizei -> Ptr GLuint64 -> IO ()

{-# NOINLINE ptr_glProgramUniformHandleui64vARB #-}
ptr_glProgramUniformHandleui64vARB :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLuint64 -> IO ())
ptr_glProgramUniformHandleui64vARB = unsafePerformIO $ getCommand "glProgramUniformHandleui64vARB"

-- glProgramUniformHandleui64vNV -----------------------------------------------

glProgramUniformHandleui64vNV
  :: GLuint -- ^ @program@.
  -> GLint -- ^ @location@.
  -> GLsizei -- ^ @count@.
  -> Ptr GLuint64 -- ^ @values@ pointing to @count@ elements of type @GLuint64@.
  -> IO ()
glProgramUniformHandleui64vNV = dyn_glProgramUniformHandleui64vNV ptr_glProgramUniformHandleui64vNV

foreign import CALLCONV "dynamic" dyn_glProgramUniformHandleui64vNV
  :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLuint64 -> IO ())
  ->         GLuint -> GLint -> GLsizei -> Ptr GLuint64 -> IO ()

{-# NOINLINE ptr_glProgramUniformHandleui64vNV #-}
ptr_glProgramUniformHandleui64vNV :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLuint64 -> IO ())
ptr_glProgramUniformHandleui64vNV = unsafePerformIO $ getCommand "glProgramUniformHandleui64vNV"

-- glProgramUniformMatrix2dv ---------------------------------------------------

glProgramUniformMatrix2dv
  :: GLuint -- ^ @program@.
  -> GLint -- ^ @location@.
  -> GLsizei -- ^ @count@.
  -> GLboolean -- ^ @transpose@ of type @Boolean@.
  -> Ptr GLdouble -- ^ @value@ pointing to @2@ elements of type @GLdouble@.
  -> IO ()
glProgramUniformMatrix2dv = dyn_glProgramUniformMatrix2dv ptr_glProgramUniformMatrix2dv

foreign import CALLCONV "dynamic" dyn_glProgramUniformMatrix2dv
  :: FunPtr (GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLdouble -> IO ())
  ->         GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLdouble -> IO ()

{-# NOINLINE ptr_glProgramUniformMatrix2dv #-}
ptr_glProgramUniformMatrix2dv :: FunPtr (GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLdouble -> IO ())
ptr_glProgramUniformMatrix2dv = unsafePerformIO $ getCommand "glProgramUniformMatrix2dv"

-- glProgramUniformMatrix2dvEXT ------------------------------------------------

glProgramUniformMatrix2dvEXT
  :: GLuint -- ^ @program@.
  -> GLint -- ^ @location@.
  -> GLsizei -- ^ @count@.
  -> GLboolean -- ^ @transpose@ of type @Boolean@.
  -> Ptr GLdouble -- ^ @value@ pointing to @count@ elements of type @GLdouble@.
  -> IO ()
glProgramUniformMatrix2dvEXT = dyn_glProgramUniformMatrix2dvEXT ptr_glProgramUniformMatrix2dvEXT

foreign import CALLCONV "dynamic" dyn_glProgramUniformMatrix2dvEXT
  :: FunPtr (GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLdouble -> IO ())
  ->         GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLdouble -> IO ()

{-# NOINLINE ptr_glProgramUniformMatrix2dvEXT #-}
ptr_glProgramUniformMatrix2dvEXT :: FunPtr (GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLdouble -> IO ())
ptr_glProgramUniformMatrix2dvEXT = unsafePerformIO $ getCommand "glProgramUniformMatrix2dvEXT"

-- glProgramUniformMatrix2fv ---------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glProgramUniform.xhtml OpenGL 4.x>
glProgramUniformMatrix2fv
  :: GLuint -- ^ @program@.
  -> GLint -- ^ @location@.
  -> GLsizei -- ^ @count@.
  -> GLboolean -- ^ @transpose@ of type @Boolean@.
  -> Ptr GLfloat -- ^ @value@ pointing to @2@ elements of type @GLfloat@.
  -> IO ()
glProgramUniformMatrix2fv = dyn_glProgramUniformMatrix2fv ptr_glProgramUniformMatrix2fv

foreign import CALLCONV "dynamic" dyn_glProgramUniformMatrix2fv
  :: FunPtr (GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ())
  ->         GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glProgramUniformMatrix2fv #-}
ptr_glProgramUniformMatrix2fv :: FunPtr (GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ())
ptr_glProgramUniformMatrix2fv = unsafePerformIO $ getCommand "glProgramUniformMatrix2fv"

-- glProgramUniformMatrix2fvEXT ------------------------------------------------

glProgramUniformMatrix2fvEXT
  :: GLuint -- ^ @program@.
  -> GLint -- ^ @location@.
  -> GLsizei -- ^ @count@.
  -> GLboolean -- ^ @transpose@ of type @Boolean@.
  -> Ptr GLfloat -- ^ @value@ pointing to @count*4@ elements of type @GLfloat@.
  -> IO ()
glProgramUniformMatrix2fvEXT = dyn_glProgramUniformMatrix2fvEXT ptr_glProgramUniformMatrix2fvEXT

foreign import CALLCONV "dynamic" dyn_glProgramUniformMatrix2fvEXT
  :: FunPtr (GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ())
  ->         GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glProgramUniformMatrix2fvEXT #-}
ptr_glProgramUniformMatrix2fvEXT :: FunPtr (GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ())
ptr_glProgramUniformMatrix2fvEXT = unsafePerformIO $ getCommand "glProgramUniformMatrix2fvEXT"

-- glProgramUniformMatrix2x3dv -------------------------------------------------

glProgramUniformMatrix2x3dv
  :: GLuint -- ^ @program@.
  -> GLint -- ^ @location@.
  -> GLsizei -- ^ @count@.
  -> GLboolean -- ^ @transpose@ of type @Boolean@.
  -> Ptr GLdouble -- ^ @value@ pointing to @count@ elements of type @GLdouble@.
  -> IO ()
glProgramUniformMatrix2x3dv = dyn_glProgramUniformMatrix2x3dv ptr_glProgramUniformMatrix2x3dv

foreign import CALLCONV "dynamic" dyn_glProgramUniformMatrix2x3dv
  :: FunPtr (GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLdouble -> IO ())
  ->         GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLdouble -> IO ()

{-# NOINLINE ptr_glProgramUniformMatrix2x3dv #-}
ptr_glProgramUniformMatrix2x3dv :: FunPtr (GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLdouble -> IO ())
ptr_glProgramUniformMatrix2x3dv = unsafePerformIO $ getCommand "glProgramUniformMatrix2x3dv"

-- glProgramUniformMatrix2x3dvEXT ----------------------------------------------

glProgramUniformMatrix2x3dvEXT
  :: GLuint -- ^ @program@.
  -> GLint -- ^ @location@.
  -> GLsizei -- ^ @count@.
  -> GLboolean -- ^ @transpose@ of type @Boolean@.
  -> Ptr GLdouble -- ^ @value@ pointing to @count@ elements of type @GLdouble@.
  -> IO ()
glProgramUniformMatrix2x3dvEXT = dyn_glProgramUniformMatrix2x3dvEXT ptr_glProgramUniformMatrix2x3dvEXT

foreign import CALLCONV "dynamic" dyn_glProgramUniformMatrix2x3dvEXT
  :: FunPtr (GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLdouble -> IO ())
  ->         GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLdouble -> IO ()

{-# NOINLINE ptr_glProgramUniformMatrix2x3dvEXT #-}
ptr_glProgramUniformMatrix2x3dvEXT :: FunPtr (GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLdouble -> IO ())
ptr_glProgramUniformMatrix2x3dvEXT = unsafePerformIO $ getCommand "glProgramUniformMatrix2x3dvEXT"

-- glProgramUniformMatrix2x3fv -------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glProgramUniform.xhtml OpenGL 4.x>
glProgramUniformMatrix2x3fv
  :: GLuint -- ^ @program@.
  -> GLint -- ^ @location@.
  -> GLsizei -- ^ @count@.
  -> GLboolean -- ^ @transpose@ of type @Boolean@.
  -> Ptr GLfloat -- ^ @value@ pointing to @count@ elements of type @GLfloat@.
  -> IO ()
glProgramUniformMatrix2x3fv = dyn_glProgramUniformMatrix2x3fv ptr_glProgramUniformMatrix2x3fv

foreign import CALLCONV "dynamic" dyn_glProgramUniformMatrix2x3fv
  :: FunPtr (GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ())
  ->         GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glProgramUniformMatrix2x3fv #-}
ptr_glProgramUniformMatrix2x3fv :: FunPtr (GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ())
ptr_glProgramUniformMatrix2x3fv = unsafePerformIO $ getCommand "glProgramUniformMatrix2x3fv"

-- glProgramUniformMatrix2x3fvEXT ----------------------------------------------

glProgramUniformMatrix2x3fvEXT
  :: GLuint -- ^ @program@.
  -> GLint -- ^ @location@.
  -> GLsizei -- ^ @count@.
  -> GLboolean -- ^ @transpose@ of type @Boolean@.
  -> Ptr GLfloat -- ^ @value@ pointing to @count*6@ elements of type @GLfloat@.
  -> IO ()
glProgramUniformMatrix2x3fvEXT = dyn_glProgramUniformMatrix2x3fvEXT ptr_glProgramUniformMatrix2x3fvEXT

foreign import CALLCONV "dynamic" dyn_glProgramUniformMatrix2x3fvEXT
  :: FunPtr (GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ())
  ->         GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glProgramUniformMatrix2x3fvEXT #-}
ptr_glProgramUniformMatrix2x3fvEXT :: FunPtr (GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ())
ptr_glProgramUniformMatrix2x3fvEXT = unsafePerformIO $ getCommand "glProgramUniformMatrix2x3fvEXT"

-- glProgramUniformMatrix2x4dv -------------------------------------------------

glProgramUniformMatrix2x4dv
  :: GLuint -- ^ @program@.
  -> GLint -- ^ @location@.
  -> GLsizei -- ^ @count@.
  -> GLboolean -- ^ @transpose@ of type @Boolean@.
  -> Ptr GLdouble -- ^ @value@ pointing to @count@ elements of type @GLdouble@.
  -> IO ()
glProgramUniformMatrix2x4dv = dyn_glProgramUniformMatrix2x4dv ptr_glProgramUniformMatrix2x4dv

foreign import CALLCONV "dynamic" dyn_glProgramUniformMatrix2x4dv
  :: FunPtr (GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLdouble -> IO ())
  ->         GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLdouble -> IO ()

{-# NOINLINE ptr_glProgramUniformMatrix2x4dv #-}
ptr_glProgramUniformMatrix2x4dv :: FunPtr (GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLdouble -> IO ())
ptr_glProgramUniformMatrix2x4dv = unsafePerformIO $ getCommand "glProgramUniformMatrix2x4dv"

-- glProgramUniformMatrix2x4dvEXT ----------------------------------------------

glProgramUniformMatrix2x4dvEXT
  :: GLuint -- ^ @program@.
  -> GLint -- ^ @location@.
  -> GLsizei -- ^ @count@.
  -> GLboolean -- ^ @transpose@ of type @Boolean@.
  -> Ptr GLdouble -- ^ @value@ pointing to @count@ elements of type @GLdouble@.
  -> IO ()
glProgramUniformMatrix2x4dvEXT = dyn_glProgramUniformMatrix2x4dvEXT ptr_glProgramUniformMatrix2x4dvEXT

foreign import CALLCONV "dynamic" dyn_glProgramUniformMatrix2x4dvEXT
  :: FunPtr (GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLdouble -> IO ())
  ->         GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLdouble -> IO ()

{-# NOINLINE ptr_glProgramUniformMatrix2x4dvEXT #-}
ptr_glProgramUniformMatrix2x4dvEXT :: FunPtr (GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLdouble -> IO ())
ptr_glProgramUniformMatrix2x4dvEXT = unsafePerformIO $ getCommand "glProgramUniformMatrix2x4dvEXT"

-- glProgramUniformMatrix2x4fv -------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glProgramUniform.xhtml OpenGL 4.x>
glProgramUniformMatrix2x4fv
  :: GLuint -- ^ @program@.
  -> GLint -- ^ @location@.
  -> GLsizei -- ^ @count@.
  -> GLboolean -- ^ @transpose@ of type @Boolean@.
  -> Ptr GLfloat -- ^ @value@ pointing to @count@ elements of type @GLfloat@.
  -> IO ()
glProgramUniformMatrix2x4fv = dyn_glProgramUniformMatrix2x4fv ptr_glProgramUniformMatrix2x4fv

foreign import CALLCONV "dynamic" dyn_glProgramUniformMatrix2x4fv
  :: FunPtr (GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ())
  ->         GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glProgramUniformMatrix2x4fv #-}
ptr_glProgramUniformMatrix2x4fv :: FunPtr (GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ())
ptr_glProgramUniformMatrix2x4fv = unsafePerformIO $ getCommand "glProgramUniformMatrix2x4fv"

-- glProgramUniformMatrix2x4fvEXT ----------------------------------------------

glProgramUniformMatrix2x4fvEXT
  :: GLuint -- ^ @program@.
  -> GLint -- ^ @location@.
  -> GLsizei -- ^ @count@.
  -> GLboolean -- ^ @transpose@ of type @Boolean@.
  -> Ptr GLfloat -- ^ @value@ pointing to @count*8@ elements of type @GLfloat@.
  -> IO ()
glProgramUniformMatrix2x4fvEXT = dyn_glProgramUniformMatrix2x4fvEXT ptr_glProgramUniformMatrix2x4fvEXT

foreign import CALLCONV "dynamic" dyn_glProgramUniformMatrix2x4fvEXT
  :: FunPtr (GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ())
  ->         GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glProgramUniformMatrix2x4fvEXT #-}
ptr_glProgramUniformMatrix2x4fvEXT :: FunPtr (GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ())
ptr_glProgramUniformMatrix2x4fvEXT = unsafePerformIO $ getCommand "glProgramUniformMatrix2x4fvEXT"

-- glProgramUniformMatrix3dv ---------------------------------------------------

glProgramUniformMatrix3dv
  :: GLuint -- ^ @program@.
  -> GLint -- ^ @location@.
  -> GLsizei -- ^ @count@.
  -> GLboolean -- ^ @transpose@ of type @Boolean@.
  -> Ptr GLdouble -- ^ @value@ pointing to @3@ elements of type @GLdouble@.
  -> IO ()
glProgramUniformMatrix3dv = dyn_glProgramUniformMatrix3dv ptr_glProgramUniformMatrix3dv

foreign import CALLCONV "dynamic" dyn_glProgramUniformMatrix3dv
  :: FunPtr (GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLdouble -> IO ())
  ->         GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLdouble -> IO ()

{-# NOINLINE ptr_glProgramUniformMatrix3dv #-}
ptr_glProgramUniformMatrix3dv :: FunPtr (GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLdouble -> IO ())
ptr_glProgramUniformMatrix3dv = unsafePerformIO $ getCommand "glProgramUniformMatrix3dv"

-- glProgramUniformMatrix3dvEXT ------------------------------------------------

glProgramUniformMatrix3dvEXT
  :: GLuint -- ^ @program@.
  -> GLint -- ^ @location@.
  -> GLsizei -- ^ @count@.
  -> GLboolean -- ^ @transpose@ of type @Boolean@.
  -> Ptr GLdouble -- ^ @value@ pointing to @count@ elements of type @GLdouble@.
  -> IO ()
glProgramUniformMatrix3dvEXT = dyn_glProgramUniformMatrix3dvEXT ptr_glProgramUniformMatrix3dvEXT

foreign import CALLCONV "dynamic" dyn_glProgramUniformMatrix3dvEXT
  :: FunPtr (GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLdouble -> IO ())
  ->         GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLdouble -> IO ()

{-# NOINLINE ptr_glProgramUniformMatrix3dvEXT #-}
ptr_glProgramUniformMatrix3dvEXT :: FunPtr (GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLdouble -> IO ())
ptr_glProgramUniformMatrix3dvEXT = unsafePerformIO $ getCommand "glProgramUniformMatrix3dvEXT"

-- glProgramUniformMatrix3fv ---------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glProgramUniform.xhtml OpenGL 4.x>
glProgramUniformMatrix3fv
  :: GLuint -- ^ @program@.
  -> GLint -- ^ @location@.
  -> GLsizei -- ^ @count@.
  -> GLboolean -- ^ @transpose@ of type @Boolean@.
  -> Ptr GLfloat -- ^ @value@ pointing to @3@ elements of type @GLfloat@.
  -> IO ()
glProgramUniformMatrix3fv = dyn_glProgramUniformMatrix3fv ptr_glProgramUniformMatrix3fv

foreign import CALLCONV "dynamic" dyn_glProgramUniformMatrix3fv
  :: FunPtr (GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ())
  ->         GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glProgramUniformMatrix3fv #-}
ptr_glProgramUniformMatrix3fv :: FunPtr (GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ())
ptr_glProgramUniformMatrix3fv = unsafePerformIO $ getCommand "glProgramUniformMatrix3fv"

-- glProgramUniformMatrix3fvEXT ------------------------------------------------

glProgramUniformMatrix3fvEXT
  :: GLuint -- ^ @program@.
  -> GLint -- ^ @location@.
  -> GLsizei -- ^ @count@.
  -> GLboolean -- ^ @transpose@ of type @Boolean@.
  -> Ptr GLfloat -- ^ @value@ pointing to @count*9@ elements of type @GLfloat@.
  -> IO ()
glProgramUniformMatrix3fvEXT = dyn_glProgramUniformMatrix3fvEXT ptr_glProgramUniformMatrix3fvEXT

foreign import CALLCONV "dynamic" dyn_glProgramUniformMatrix3fvEXT
  :: FunPtr (GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ())
  ->         GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glProgramUniformMatrix3fvEXT #-}
ptr_glProgramUniformMatrix3fvEXT :: FunPtr (GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ())
ptr_glProgramUniformMatrix3fvEXT = unsafePerformIO $ getCommand "glProgramUniformMatrix3fvEXT"

-- glProgramUniformMatrix3x2dv -------------------------------------------------

glProgramUniformMatrix3x2dv
  :: GLuint -- ^ @program@.
  -> GLint -- ^ @location@.
  -> GLsizei -- ^ @count@.
  -> GLboolean -- ^ @transpose@ of type @Boolean@.
  -> Ptr GLdouble -- ^ @value@ pointing to @count@ elements of type @GLdouble@.
  -> IO ()
glProgramUniformMatrix3x2dv = dyn_glProgramUniformMatrix3x2dv ptr_glProgramUniformMatrix3x2dv

foreign import CALLCONV "dynamic" dyn_glProgramUniformMatrix3x2dv
  :: FunPtr (GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLdouble -> IO ())
  ->         GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLdouble -> IO ()

{-# NOINLINE ptr_glProgramUniformMatrix3x2dv #-}
ptr_glProgramUniformMatrix3x2dv :: FunPtr (GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLdouble -> IO ())
ptr_glProgramUniformMatrix3x2dv = unsafePerformIO $ getCommand "glProgramUniformMatrix3x2dv"

-- glProgramUniformMatrix3x2dvEXT ----------------------------------------------

glProgramUniformMatrix3x2dvEXT
  :: GLuint -- ^ @program@.
  -> GLint -- ^ @location@.
  -> GLsizei -- ^ @count@.
  -> GLboolean -- ^ @transpose@ of type @Boolean@.
  -> Ptr GLdouble -- ^ @value@ pointing to @count@ elements of type @GLdouble@.
  -> IO ()
glProgramUniformMatrix3x2dvEXT = dyn_glProgramUniformMatrix3x2dvEXT ptr_glProgramUniformMatrix3x2dvEXT

foreign import CALLCONV "dynamic" dyn_glProgramUniformMatrix3x2dvEXT
  :: FunPtr (GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLdouble -> IO ())
  ->         GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLdouble -> IO ()

{-# NOINLINE ptr_glProgramUniformMatrix3x2dvEXT #-}
ptr_glProgramUniformMatrix3x2dvEXT :: FunPtr (GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLdouble -> IO ())
ptr_glProgramUniformMatrix3x2dvEXT = unsafePerformIO $ getCommand "glProgramUniformMatrix3x2dvEXT"

-- glProgramUniformMatrix3x2fv -------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glProgramUniform.xhtml OpenGL 4.x>
glProgramUniformMatrix3x2fv
  :: GLuint -- ^ @program@.
  -> GLint -- ^ @location@.
  -> GLsizei -- ^ @count@.
  -> GLboolean -- ^ @transpose@ of type @Boolean@.
  -> Ptr GLfloat -- ^ @value@ pointing to @count@ elements of type @GLfloat@.
  -> IO ()
glProgramUniformMatrix3x2fv = dyn_glProgramUniformMatrix3x2fv ptr_glProgramUniformMatrix3x2fv

foreign import CALLCONV "dynamic" dyn_glProgramUniformMatrix3x2fv
  :: FunPtr (GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ())
  ->         GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glProgramUniformMatrix3x2fv #-}
ptr_glProgramUniformMatrix3x2fv :: FunPtr (GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ())
ptr_glProgramUniformMatrix3x2fv = unsafePerformIO $ getCommand "glProgramUniformMatrix3x2fv"

-- glProgramUniformMatrix3x2fvEXT ----------------------------------------------

glProgramUniformMatrix3x2fvEXT
  :: GLuint -- ^ @program@.
  -> GLint -- ^ @location@.
  -> GLsizei -- ^ @count@.
  -> GLboolean -- ^ @transpose@ of type @Boolean@.
  -> Ptr GLfloat -- ^ @value@ pointing to @count*6@ elements of type @GLfloat@.
  -> IO ()
glProgramUniformMatrix3x2fvEXT = dyn_glProgramUniformMatrix3x2fvEXT ptr_glProgramUniformMatrix3x2fvEXT

foreign import CALLCONV "dynamic" dyn_glProgramUniformMatrix3x2fvEXT
  :: FunPtr (GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ())
  ->         GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glProgramUniformMatrix3x2fvEXT #-}
ptr_glProgramUniformMatrix3x2fvEXT :: FunPtr (GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ())
ptr_glProgramUniformMatrix3x2fvEXT = unsafePerformIO $ getCommand "glProgramUniformMatrix3x2fvEXT"

-- glProgramUniformMatrix3x4dv -------------------------------------------------

glProgramUniformMatrix3x4dv
  :: GLuint -- ^ @program@.
  -> GLint -- ^ @location@.
  -> GLsizei -- ^ @count@.
  -> GLboolean -- ^ @transpose@ of type @Boolean@.
  -> Ptr GLdouble -- ^ @value@ pointing to @count@ elements of type @GLdouble@.
  -> IO ()
glProgramUniformMatrix3x4dv = dyn_glProgramUniformMatrix3x4dv ptr_glProgramUniformMatrix3x4dv

foreign import CALLCONV "dynamic" dyn_glProgramUniformMatrix3x4dv
  :: FunPtr (GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLdouble -> IO ())
  ->         GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLdouble -> IO ()

{-# NOINLINE ptr_glProgramUniformMatrix3x4dv #-}
ptr_glProgramUniformMatrix3x4dv :: FunPtr (GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLdouble -> IO ())
ptr_glProgramUniformMatrix3x4dv = unsafePerformIO $ getCommand "glProgramUniformMatrix3x4dv"

-- glProgramUniformMatrix3x4dvEXT ----------------------------------------------

glProgramUniformMatrix3x4dvEXT
  :: GLuint -- ^ @program@.
  -> GLint -- ^ @location@.
  -> GLsizei -- ^ @count@.
  -> GLboolean -- ^ @transpose@ of type @Boolean@.
  -> Ptr GLdouble -- ^ @value@ pointing to @count@ elements of type @GLdouble@.
  -> IO ()
glProgramUniformMatrix3x4dvEXT = dyn_glProgramUniformMatrix3x4dvEXT ptr_glProgramUniformMatrix3x4dvEXT

foreign import CALLCONV "dynamic" dyn_glProgramUniformMatrix3x4dvEXT
  :: FunPtr (GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLdouble -> IO ())
  ->         GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLdouble -> IO ()

{-# NOINLINE ptr_glProgramUniformMatrix3x4dvEXT #-}
ptr_glProgramUniformMatrix3x4dvEXT :: FunPtr (GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLdouble -> IO ())
ptr_glProgramUniformMatrix3x4dvEXT = unsafePerformIO $ getCommand "glProgramUniformMatrix3x4dvEXT"

-- glProgramUniformMatrix3x4fv -------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glProgramUniform.xhtml OpenGL 4.x>
glProgramUniformMatrix3x4fv
  :: GLuint -- ^ @program@.
  -> GLint -- ^ @location@.
  -> GLsizei -- ^ @count@.
  -> GLboolean -- ^ @transpose@ of type @Boolean@.
  -> Ptr GLfloat -- ^ @value@ pointing to @count@ elements of type @GLfloat@.
  -> IO ()
glProgramUniformMatrix3x4fv = dyn_glProgramUniformMatrix3x4fv ptr_glProgramUniformMatrix3x4fv

foreign import CALLCONV "dynamic" dyn_glProgramUniformMatrix3x4fv
  :: FunPtr (GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ())
  ->         GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glProgramUniformMatrix3x4fv #-}
ptr_glProgramUniformMatrix3x4fv :: FunPtr (GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ())
ptr_glProgramUniformMatrix3x4fv = unsafePerformIO $ getCommand "glProgramUniformMatrix3x4fv"

-- glProgramUniformMatrix3x4fvEXT ----------------------------------------------

glProgramUniformMatrix3x4fvEXT
  :: GLuint -- ^ @program@.
  -> GLint -- ^ @location@.
  -> GLsizei -- ^ @count@.
  -> GLboolean -- ^ @transpose@ of type @Boolean@.
  -> Ptr GLfloat -- ^ @value@ pointing to @count*12@ elements of type @GLfloat@.
  -> IO ()
glProgramUniformMatrix3x4fvEXT = dyn_glProgramUniformMatrix3x4fvEXT ptr_glProgramUniformMatrix3x4fvEXT

foreign import CALLCONV "dynamic" dyn_glProgramUniformMatrix3x4fvEXT
  :: FunPtr (GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ())
  ->         GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glProgramUniformMatrix3x4fvEXT #-}
ptr_glProgramUniformMatrix3x4fvEXT :: FunPtr (GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ())
ptr_glProgramUniformMatrix3x4fvEXT = unsafePerformIO $ getCommand "glProgramUniformMatrix3x4fvEXT"

-- glProgramUniformMatrix4dv ---------------------------------------------------

glProgramUniformMatrix4dv
  :: GLuint -- ^ @program@.
  -> GLint -- ^ @location@.
  -> GLsizei -- ^ @count@.
  -> GLboolean -- ^ @transpose@ of type @Boolean@.
  -> Ptr GLdouble -- ^ @value@ pointing to @4@ elements of type @GLdouble@.
  -> IO ()
glProgramUniformMatrix4dv = dyn_glProgramUniformMatrix4dv ptr_glProgramUniformMatrix4dv

foreign import CALLCONV "dynamic" dyn_glProgramUniformMatrix4dv
  :: FunPtr (GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLdouble -> IO ())
  ->         GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLdouble -> IO ()

{-# NOINLINE ptr_glProgramUniformMatrix4dv #-}
ptr_glProgramUniformMatrix4dv :: FunPtr (GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLdouble -> IO ())
ptr_glProgramUniformMatrix4dv = unsafePerformIO $ getCommand "glProgramUniformMatrix4dv"

-- glProgramUniformMatrix4dvEXT ------------------------------------------------

glProgramUniformMatrix4dvEXT
  :: GLuint -- ^ @program@.
  -> GLint -- ^ @location@.
  -> GLsizei -- ^ @count@.
  -> GLboolean -- ^ @transpose@ of type @Boolean@.
  -> Ptr GLdouble -- ^ @value@ pointing to @count@ elements of type @GLdouble@.
  -> IO ()
glProgramUniformMatrix4dvEXT = dyn_glProgramUniformMatrix4dvEXT ptr_glProgramUniformMatrix4dvEXT

foreign import CALLCONV "dynamic" dyn_glProgramUniformMatrix4dvEXT
  :: FunPtr (GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLdouble -> IO ())
  ->         GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLdouble -> IO ()

{-# NOINLINE ptr_glProgramUniformMatrix4dvEXT #-}
ptr_glProgramUniformMatrix4dvEXT :: FunPtr (GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLdouble -> IO ())
ptr_glProgramUniformMatrix4dvEXT = unsafePerformIO $ getCommand "glProgramUniformMatrix4dvEXT"

-- glProgramUniformMatrix4fv ---------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glProgramUniform.xhtml OpenGL 4.x>
glProgramUniformMatrix4fv
  :: GLuint -- ^ @program@.
  -> GLint -- ^ @location@.
  -> GLsizei -- ^ @count@.
  -> GLboolean -- ^ @transpose@ of type @Boolean@.
  -> Ptr GLfloat -- ^ @value@ pointing to @4@ elements of type @GLfloat@.
  -> IO ()
glProgramUniformMatrix4fv = dyn_glProgramUniformMatrix4fv ptr_glProgramUniformMatrix4fv

foreign import CALLCONV "dynamic" dyn_glProgramUniformMatrix4fv
  :: FunPtr (GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ())
  ->         GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glProgramUniformMatrix4fv #-}
ptr_glProgramUniformMatrix4fv :: FunPtr (GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ())
ptr_glProgramUniformMatrix4fv = unsafePerformIO $ getCommand "glProgramUniformMatrix4fv"

-- glProgramUniformMatrix4fvEXT ------------------------------------------------

glProgramUniformMatrix4fvEXT
  :: GLuint -- ^ @program@.
  -> GLint -- ^ @location@.
  -> GLsizei -- ^ @count@.
  -> GLboolean -- ^ @transpose@ of type @Boolean@.
  -> Ptr GLfloat -- ^ @value@ pointing to @count*16@ elements of type @GLfloat@.
  -> IO ()
glProgramUniformMatrix4fvEXT = dyn_glProgramUniformMatrix4fvEXT ptr_glProgramUniformMatrix4fvEXT

foreign import CALLCONV "dynamic" dyn_glProgramUniformMatrix4fvEXT
  :: FunPtr (GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ())
  ->         GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glProgramUniformMatrix4fvEXT #-}
ptr_glProgramUniformMatrix4fvEXT :: FunPtr (GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ())
ptr_glProgramUniformMatrix4fvEXT = unsafePerformIO $ getCommand "glProgramUniformMatrix4fvEXT"

-- glProgramUniformMatrix4x2dv -------------------------------------------------

glProgramUniformMatrix4x2dv
  :: GLuint -- ^ @program@.
  -> GLint -- ^ @location@.
  -> GLsizei -- ^ @count@.
  -> GLboolean -- ^ @transpose@ of type @Boolean@.
  -> Ptr GLdouble -- ^ @value@ pointing to @count@ elements of type @GLdouble@.
  -> IO ()
glProgramUniformMatrix4x2dv = dyn_glProgramUniformMatrix4x2dv ptr_glProgramUniformMatrix4x2dv

foreign import CALLCONV "dynamic" dyn_glProgramUniformMatrix4x2dv
  :: FunPtr (GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLdouble -> IO ())
  ->         GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLdouble -> IO ()

{-# NOINLINE ptr_glProgramUniformMatrix4x2dv #-}
ptr_glProgramUniformMatrix4x2dv :: FunPtr (GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLdouble -> IO ())
ptr_glProgramUniformMatrix4x2dv = unsafePerformIO $ getCommand "glProgramUniformMatrix4x2dv"

-- glProgramUniformMatrix4x2dvEXT ----------------------------------------------

glProgramUniformMatrix4x2dvEXT
  :: GLuint -- ^ @program@.
  -> GLint -- ^ @location@.
  -> GLsizei -- ^ @count@.
  -> GLboolean -- ^ @transpose@ of type @Boolean@.
  -> Ptr GLdouble -- ^ @value@ pointing to @count@ elements of type @GLdouble@.
  -> IO ()
glProgramUniformMatrix4x2dvEXT = dyn_glProgramUniformMatrix4x2dvEXT ptr_glProgramUniformMatrix4x2dvEXT

foreign import CALLCONV "dynamic" dyn_glProgramUniformMatrix4x2dvEXT
  :: FunPtr (GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLdouble -> IO ())
  ->         GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLdouble -> IO ()

{-# NOINLINE ptr_glProgramUniformMatrix4x2dvEXT #-}
ptr_glProgramUniformMatrix4x2dvEXT :: FunPtr (GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLdouble -> IO ())
ptr_glProgramUniformMatrix4x2dvEXT = unsafePerformIO $ getCommand "glProgramUniformMatrix4x2dvEXT"

-- glProgramUniformMatrix4x2fv -------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glProgramUniform.xhtml OpenGL 4.x>
glProgramUniformMatrix4x2fv
  :: GLuint -- ^ @program@.
  -> GLint -- ^ @location@.
  -> GLsizei -- ^ @count@.
  -> GLboolean -- ^ @transpose@ of type @Boolean@.
  -> Ptr GLfloat -- ^ @value@ pointing to @count@ elements of type @GLfloat@.
  -> IO ()
glProgramUniformMatrix4x2fv = dyn_glProgramUniformMatrix4x2fv ptr_glProgramUniformMatrix4x2fv

foreign import CALLCONV "dynamic" dyn_glProgramUniformMatrix4x2fv
  :: FunPtr (GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ())
  ->         GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glProgramUniformMatrix4x2fv #-}
ptr_glProgramUniformMatrix4x2fv :: FunPtr (GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ())
ptr_glProgramUniformMatrix4x2fv = unsafePerformIO $ getCommand "glProgramUniformMatrix4x2fv"

-- glProgramUniformMatrix4x2fvEXT ----------------------------------------------

glProgramUniformMatrix4x2fvEXT
  :: GLuint -- ^ @program@.
  -> GLint -- ^ @location@.
  -> GLsizei -- ^ @count@.
  -> GLboolean -- ^ @transpose@ of type @Boolean@.
  -> Ptr GLfloat -- ^ @value@ pointing to @count*8@ elements of type @GLfloat@.
  -> IO ()
glProgramUniformMatrix4x2fvEXT = dyn_glProgramUniformMatrix4x2fvEXT ptr_glProgramUniformMatrix4x2fvEXT

foreign import CALLCONV "dynamic" dyn_glProgramUniformMatrix4x2fvEXT
  :: FunPtr (GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ())
  ->         GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glProgramUniformMatrix4x2fvEXT #-}
ptr_glProgramUniformMatrix4x2fvEXT :: FunPtr (GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ())
ptr_glProgramUniformMatrix4x2fvEXT = unsafePerformIO $ getCommand "glProgramUniformMatrix4x2fvEXT"

-- glProgramUniformMatrix4x3dv -------------------------------------------------

glProgramUniformMatrix4x3dv
  :: GLuint -- ^ @program@.
  -> GLint -- ^ @location@.
  -> GLsizei -- ^ @count@.
  -> GLboolean -- ^ @transpose@ of type @Boolean@.
  -> Ptr GLdouble -- ^ @value@ pointing to @count@ elements of type @GLdouble@.
  -> IO ()
glProgramUniformMatrix4x3dv = dyn_glProgramUniformMatrix4x3dv ptr_glProgramUniformMatrix4x3dv

foreign import CALLCONV "dynamic" dyn_glProgramUniformMatrix4x3dv
  :: FunPtr (GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLdouble -> IO ())
  ->         GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLdouble -> IO ()

{-# NOINLINE ptr_glProgramUniformMatrix4x3dv #-}
ptr_glProgramUniformMatrix4x3dv :: FunPtr (GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLdouble -> IO ())
ptr_glProgramUniformMatrix4x3dv = unsafePerformIO $ getCommand "glProgramUniformMatrix4x3dv"

-- glProgramUniformMatrix4x3dvEXT ----------------------------------------------

glProgramUniformMatrix4x3dvEXT
  :: GLuint -- ^ @program@.
  -> GLint -- ^ @location@.
  -> GLsizei -- ^ @count@.
  -> GLboolean -- ^ @transpose@ of type @Boolean@.
  -> Ptr GLdouble -- ^ @value@ pointing to @count@ elements of type @GLdouble@.
  -> IO ()
glProgramUniformMatrix4x3dvEXT = dyn_glProgramUniformMatrix4x3dvEXT ptr_glProgramUniformMatrix4x3dvEXT

foreign import CALLCONV "dynamic" dyn_glProgramUniformMatrix4x3dvEXT
  :: FunPtr (GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLdouble -> IO ())
  ->         GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLdouble -> IO ()

{-# NOINLINE ptr_glProgramUniformMatrix4x3dvEXT #-}
ptr_glProgramUniformMatrix4x3dvEXT :: FunPtr (GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLdouble -> IO ())
ptr_glProgramUniformMatrix4x3dvEXT = unsafePerformIO $ getCommand "glProgramUniformMatrix4x3dvEXT"

-- glProgramUniformMatrix4x3fv -------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glProgramUniform.xhtml OpenGL 4.x>
glProgramUniformMatrix4x3fv
  :: GLuint -- ^ @program@.
  -> GLint -- ^ @location@.
  -> GLsizei -- ^ @count@.
  -> GLboolean -- ^ @transpose@ of type @Boolean@.
  -> Ptr GLfloat -- ^ @value@ pointing to @count@ elements of type @GLfloat@.
  -> IO ()
glProgramUniformMatrix4x3fv = dyn_glProgramUniformMatrix4x3fv ptr_glProgramUniformMatrix4x3fv

foreign import CALLCONV "dynamic" dyn_glProgramUniformMatrix4x3fv
  :: FunPtr (GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ())
  ->         GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glProgramUniformMatrix4x3fv #-}
ptr_glProgramUniformMatrix4x3fv :: FunPtr (GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ())
ptr_glProgramUniformMatrix4x3fv = unsafePerformIO $ getCommand "glProgramUniformMatrix4x3fv"

-- glProgramUniformMatrix4x3fvEXT ----------------------------------------------

glProgramUniformMatrix4x3fvEXT
  :: GLuint -- ^ @program@.
  -> GLint -- ^ @location@.
  -> GLsizei -- ^ @count@.
  -> GLboolean -- ^ @transpose@ of type @Boolean@.
  -> Ptr GLfloat -- ^ @value@ pointing to @count*12@ elements of type @GLfloat@.
  -> IO ()
glProgramUniformMatrix4x3fvEXT = dyn_glProgramUniformMatrix4x3fvEXT ptr_glProgramUniformMatrix4x3fvEXT

foreign import CALLCONV "dynamic" dyn_glProgramUniformMatrix4x3fvEXT
  :: FunPtr (GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ())
  ->         GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glProgramUniformMatrix4x3fvEXT #-}
ptr_glProgramUniformMatrix4x3fvEXT :: FunPtr (GLuint -> GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ())
ptr_glProgramUniformMatrix4x3fvEXT = unsafePerformIO $ getCommand "glProgramUniformMatrix4x3fvEXT"

-- glProgramUniformui64NV ------------------------------------------------------

glProgramUniformui64NV
  :: GLuint -- ^ @program@.
  -> GLint -- ^ @location@.
  -> GLuint64EXT -- ^ @value@.
  -> IO ()
glProgramUniformui64NV = dyn_glProgramUniformui64NV ptr_glProgramUniformui64NV

foreign import CALLCONV "dynamic" dyn_glProgramUniformui64NV
  :: FunPtr (GLuint -> GLint -> GLuint64EXT -> IO ())
  ->         GLuint -> GLint -> GLuint64EXT -> IO ()

{-# NOINLINE ptr_glProgramUniformui64NV #-}
ptr_glProgramUniformui64NV :: FunPtr (GLuint -> GLint -> GLuint64EXT -> IO ())
ptr_glProgramUniformui64NV = unsafePerformIO $ getCommand "glProgramUniformui64NV"

-- glProgramUniformui64vNV -----------------------------------------------------

glProgramUniformui64vNV
  :: GLuint -- ^ @program@.
  -> GLint -- ^ @location@.
  -> GLsizei -- ^ @count@.
  -> Ptr GLuint64EXT -- ^ @value@ pointing to @count@ elements of type @GLuint64EXT@.
  -> IO ()
glProgramUniformui64vNV = dyn_glProgramUniformui64vNV ptr_glProgramUniformui64vNV

foreign import CALLCONV "dynamic" dyn_glProgramUniformui64vNV
  :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLuint64EXT -> IO ())
  ->         GLuint -> GLint -> GLsizei -> Ptr GLuint64EXT -> IO ()

{-# NOINLINE ptr_glProgramUniformui64vNV #-}
ptr_glProgramUniformui64vNV :: FunPtr (GLuint -> GLint -> GLsizei -> Ptr GLuint64EXT -> IO ())
ptr_glProgramUniformui64vNV = unsafePerformIO $ getCommand "glProgramUniformui64vNV"

-- glProgramVertexLimitNV ------------------------------------------------------

glProgramVertexLimitNV
  :: GLenum -- ^ @target@ of type @ProgramTarget@.
  -> GLint -- ^ @limit@.
  -> IO ()
glProgramVertexLimitNV = dyn_glProgramVertexLimitNV ptr_glProgramVertexLimitNV

foreign import CALLCONV "dynamic" dyn_glProgramVertexLimitNV
  :: FunPtr (GLenum -> GLint -> IO ())
  ->         GLenum -> GLint -> IO ()

{-# NOINLINE ptr_glProgramVertexLimitNV #-}
ptr_glProgramVertexLimitNV :: FunPtr (GLenum -> GLint -> IO ())
ptr_glProgramVertexLimitNV = unsafePerformIO $ getCommand "glProgramVertexLimitNV"

-- glProvokingVertex -----------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glProvokingVertex.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glProvokingVertex.xhtml OpenGL 4.x>
glProvokingVertex
  :: GLenum -- ^ @mode@.
  -> IO ()
glProvokingVertex = dyn_glProvokingVertex ptr_glProvokingVertex

foreign import CALLCONV "dynamic" dyn_glProvokingVertex
  :: FunPtr (GLenum -> IO ())
  ->         GLenum -> IO ()

{-# NOINLINE ptr_glProvokingVertex #-}
ptr_glProvokingVertex :: FunPtr (GLenum -> IO ())
ptr_glProvokingVertex = unsafePerformIO $ getCommand "glProvokingVertex"

-- glProvokingVertexEXT --------------------------------------------------------

glProvokingVertexEXT
  :: GLenum -- ^ @mode@.
  -> IO ()
glProvokingVertexEXT = dyn_glProvokingVertexEXT ptr_glProvokingVertexEXT

foreign import CALLCONV "dynamic" dyn_glProvokingVertexEXT
  :: FunPtr (GLenum -> IO ())
  ->         GLenum -> IO ()

{-# NOINLINE ptr_glProvokingVertexEXT #-}
ptr_glProvokingVertexEXT :: FunPtr (GLenum -> IO ())
ptr_glProvokingVertexEXT = unsafePerformIO $ getCommand "glProvokingVertexEXT"

-- glPushAttrib ----------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glPushAttrib.xml OpenGL 2.x>
glPushAttrib
  :: GLbitfield -- ^ @mask@ of type @AttribMask@.
  -> IO ()
glPushAttrib = dyn_glPushAttrib ptr_glPushAttrib

foreign import CALLCONV "dynamic" dyn_glPushAttrib
  :: FunPtr (GLbitfield -> IO ())
  ->         GLbitfield -> IO ()

{-# NOINLINE ptr_glPushAttrib #-}
ptr_glPushAttrib :: FunPtr (GLbitfield -> IO ())
ptr_glPushAttrib = unsafePerformIO $ getCommand "glPushAttrib"

-- glPushClientAttrib ----------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glPushClientAttrib.xml OpenGL 2.x>
glPushClientAttrib
  :: GLbitfield -- ^ @mask@ of type @ClientAttribMask@.
  -> IO ()
glPushClientAttrib = dyn_glPushClientAttrib ptr_glPushClientAttrib

foreign import CALLCONV "dynamic" dyn_glPushClientAttrib
  :: FunPtr (GLbitfield -> IO ())
  ->         GLbitfield -> IO ()

{-# NOINLINE ptr_glPushClientAttrib #-}
ptr_glPushClientAttrib :: FunPtr (GLbitfield -> IO ())
ptr_glPushClientAttrib = unsafePerformIO $ getCommand "glPushClientAttrib"

-- glPushClientAttribDefaultEXT ------------------------------------------------

glPushClientAttribDefaultEXT
  :: GLbitfield -- ^ @mask@ of type @ClientAttribMask@.
  -> IO ()
glPushClientAttribDefaultEXT = dyn_glPushClientAttribDefaultEXT ptr_glPushClientAttribDefaultEXT

foreign import CALLCONV "dynamic" dyn_glPushClientAttribDefaultEXT
  :: FunPtr (GLbitfield -> IO ())
  ->         GLbitfield -> IO ()

{-# NOINLINE ptr_glPushClientAttribDefaultEXT #-}
ptr_glPushClientAttribDefaultEXT :: FunPtr (GLbitfield -> IO ())
ptr_glPushClientAttribDefaultEXT = unsafePerformIO $ getCommand "glPushClientAttribDefaultEXT"

-- glPushDebugGroup ------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glPushDebugGroup.xhtml OpenGL 4.x>
glPushDebugGroup
  :: GLenum -- ^ @source@.
  -> GLuint -- ^ @id@.
  -> GLsizei -- ^ @length@.
  -> Ptr GLchar -- ^ @message@ pointing to @COMPSIZE(message,length)@ elements of type @GLchar@.
  -> IO ()
glPushDebugGroup = dyn_glPushDebugGroup ptr_glPushDebugGroup

foreign import CALLCONV "dynamic" dyn_glPushDebugGroup
  :: FunPtr (GLenum -> GLuint -> GLsizei -> Ptr GLchar -> IO ())
  ->         GLenum -> GLuint -> GLsizei -> Ptr GLchar -> IO ()

{-# NOINLINE ptr_glPushDebugGroup #-}
ptr_glPushDebugGroup :: FunPtr (GLenum -> GLuint -> GLsizei -> Ptr GLchar -> IO ())
ptr_glPushDebugGroup = unsafePerformIO $ getCommand "glPushDebugGroup"

-- glPushDebugGroupKHR ---------------------------------------------------------

glPushDebugGroupKHR
  :: GLenum -- ^ @source@.
  -> GLuint -- ^ @id@.
  -> GLsizei -- ^ @length@.
  -> Ptr GLchar -- ^ @message@.
  -> IO ()
glPushDebugGroupKHR = dyn_glPushDebugGroupKHR ptr_glPushDebugGroupKHR

foreign import CALLCONV "dynamic" dyn_glPushDebugGroupKHR
  :: FunPtr (GLenum -> GLuint -> GLsizei -> Ptr GLchar -> IO ())
  ->         GLenum -> GLuint -> GLsizei -> Ptr GLchar -> IO ()

{-# NOINLINE ptr_glPushDebugGroupKHR #-}
ptr_glPushDebugGroupKHR :: FunPtr (GLenum -> GLuint -> GLsizei -> Ptr GLchar -> IO ())
ptr_glPushDebugGroupKHR = unsafePerformIO $ getCommand "glPushDebugGroupKHR"

-- glPushGroupMarkerEXT --------------------------------------------------------

glPushGroupMarkerEXT
  :: GLsizei -- ^ @length@.
  -> Ptr GLchar -- ^ @marker@.
  -> IO ()
glPushGroupMarkerEXT = dyn_glPushGroupMarkerEXT ptr_glPushGroupMarkerEXT

foreign import CALLCONV "dynamic" dyn_glPushGroupMarkerEXT
  :: FunPtr (GLsizei -> Ptr GLchar -> IO ())
  ->         GLsizei -> Ptr GLchar -> IO ()

{-# NOINLINE ptr_glPushGroupMarkerEXT #-}
ptr_glPushGroupMarkerEXT :: FunPtr (GLsizei -> Ptr GLchar -> IO ())
ptr_glPushGroupMarkerEXT = unsafePerformIO $ getCommand "glPushGroupMarkerEXT"

-- glPushMatrix ----------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glPushMatrix.xml OpenGL 2.x>
glPushMatrix
  :: IO ()
glPushMatrix = dyn_glPushMatrix ptr_glPushMatrix

foreign import CALLCONV "dynamic" dyn_glPushMatrix
  :: FunPtr (IO ())
  ->         IO ()

{-# NOINLINE ptr_glPushMatrix #-}
ptr_glPushMatrix :: FunPtr (IO ())
ptr_glPushMatrix = unsafePerformIO $ getCommand "glPushMatrix"

-- glPushName ------------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glPushName.xml OpenGL 2.x>
glPushName
  :: GLuint -- ^ @name@ of type @SelectName@.
  -> IO ()
glPushName = dyn_glPushName ptr_glPushName

foreign import CALLCONV "dynamic" dyn_glPushName
  :: FunPtr (GLuint -> IO ())
  ->         GLuint -> IO ()

{-# NOINLINE ptr_glPushName #-}
ptr_glPushName :: FunPtr (GLuint -> IO ())
ptr_glPushName = unsafePerformIO $ getCommand "glPushName"

-- glQueryCounter --------------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glQueryCounter.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glQueryCounter.xhtml OpenGL 4.x>
glQueryCounter
  :: GLuint -- ^ @id@.
  -> GLenum -- ^ @target@.
  -> IO ()
glQueryCounter = dyn_glQueryCounter ptr_glQueryCounter

foreign import CALLCONV "dynamic" dyn_glQueryCounter
  :: FunPtr (GLuint -> GLenum -> IO ())
  ->         GLuint -> GLenum -> IO ()

{-# NOINLINE ptr_glQueryCounter #-}
ptr_glQueryCounter :: FunPtr (GLuint -> GLenum -> IO ())
ptr_glQueryCounter = unsafePerformIO $ getCommand "glQueryCounter"

-- glQueryCounterEXT -----------------------------------------------------------

glQueryCounterEXT
  :: GLuint -- ^ @id@.
  -> GLenum -- ^ @target@.
  -> IO ()
glQueryCounterEXT = dyn_glQueryCounterEXT ptr_glQueryCounterEXT

foreign import CALLCONV "dynamic" dyn_glQueryCounterEXT
  :: FunPtr (GLuint -> GLenum -> IO ())
  ->         GLuint -> GLenum -> IO ()

{-# NOINLINE ptr_glQueryCounterEXT #-}
ptr_glQueryCounterEXT :: FunPtr (GLuint -> GLenum -> IO ())
ptr_glQueryCounterEXT = unsafePerformIO $ getCommand "glQueryCounterEXT"

-- glQueryMatrixxOES -----------------------------------------------------------

glQueryMatrixxOES
  :: Ptr GLfixed -- ^ @mantissa@ pointing to @16@ elements of type @GLfixed@.
  -> Ptr GLint -- ^ @exponent@ pointing to @16@ elements of type @GLint@.
  -> IO GLbitfield
glQueryMatrixxOES = dyn_glQueryMatrixxOES ptr_glQueryMatrixxOES

foreign import CALLCONV "dynamic" dyn_glQueryMatrixxOES
  :: FunPtr (Ptr GLfixed -> Ptr GLint -> IO GLbitfield)
  ->         Ptr GLfixed -> Ptr GLint -> IO GLbitfield

{-# NOINLINE ptr_glQueryMatrixxOES #-}
ptr_glQueryMatrixxOES :: FunPtr (Ptr GLfixed -> Ptr GLint -> IO GLbitfield)
ptr_glQueryMatrixxOES = unsafePerformIO $ getCommand "glQueryMatrixxOES"

-- glQueryObjectParameteruiAMD -------------------------------------------------

glQueryObjectParameteruiAMD
  :: GLenum -- ^ @target@.
  -> GLuint -- ^ @id@.
  -> GLenum -- ^ @pname@.
  -> GLuint -- ^ @param@ of type @OcclusionQueryEventMaskAMD@.
  -> IO ()
glQueryObjectParameteruiAMD = dyn_glQueryObjectParameteruiAMD ptr_glQueryObjectParameteruiAMD

foreign import CALLCONV "dynamic" dyn_glQueryObjectParameteruiAMD
  :: FunPtr (GLenum -> GLuint -> GLenum -> GLuint -> IO ())
  ->         GLenum -> GLuint -> GLenum -> GLuint -> IO ()

{-# NOINLINE ptr_glQueryObjectParameteruiAMD #-}
ptr_glQueryObjectParameteruiAMD :: FunPtr (GLenum -> GLuint -> GLenum -> GLuint -> IO ())
ptr_glQueryObjectParameteruiAMD = unsafePerformIO $ getCommand "glQueryObjectParameteruiAMD"

-- glRasterPos2d ---------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glRasterPos.xml OpenGL 2.x>
glRasterPos2d
  :: GLdouble -- ^ @x@ of type @CoordD@.
  -> GLdouble -- ^ @y@ of type @CoordD@.
  -> IO ()
glRasterPos2d = dyn_glRasterPos2d ptr_glRasterPos2d

foreign import CALLCONV "dynamic" dyn_glRasterPos2d
  :: FunPtr (GLdouble -> GLdouble -> IO ())
  ->         GLdouble -> GLdouble -> IO ()

{-# NOINLINE ptr_glRasterPos2d #-}
ptr_glRasterPos2d :: FunPtr (GLdouble -> GLdouble -> IO ())
ptr_glRasterPos2d = unsafePerformIO $ getCommand "glRasterPos2d"

-- glRasterPos2dv --------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glRasterPos.xml OpenGL 2.x>
glRasterPos2dv
  :: Ptr GLdouble -- ^ @v@ pointing to @2@ elements of type @CoordD@.
  -> IO ()
glRasterPos2dv = dyn_glRasterPos2dv ptr_glRasterPos2dv

foreign import CALLCONV "dynamic" dyn_glRasterPos2dv
  :: FunPtr (Ptr GLdouble -> IO ())
  ->         Ptr GLdouble -> IO ()

{-# NOINLINE ptr_glRasterPos2dv #-}
ptr_glRasterPos2dv :: FunPtr (Ptr GLdouble -> IO ())
ptr_glRasterPos2dv = unsafePerformIO $ getCommand "glRasterPos2dv"

-- glRasterPos2f ---------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glRasterPos.xml OpenGL 2.x>
glRasterPos2f
  :: GLfloat -- ^ @x@ of type @CoordF@.
  -> GLfloat -- ^ @y@ of type @CoordF@.
  -> IO ()
glRasterPos2f = dyn_glRasterPos2f ptr_glRasterPos2f

foreign import CALLCONV "dynamic" dyn_glRasterPos2f
  :: FunPtr (GLfloat -> GLfloat -> IO ())
  ->         GLfloat -> GLfloat -> IO ()

{-# NOINLINE ptr_glRasterPos2f #-}
ptr_glRasterPos2f :: FunPtr (GLfloat -> GLfloat -> IO ())
ptr_glRasterPos2f = unsafePerformIO $ getCommand "glRasterPos2f"

-- glRasterPos2fv --------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glRasterPos.xml OpenGL 2.x>
glRasterPos2fv
  :: Ptr GLfloat -- ^ @v@ pointing to @2@ elements of type @CoordF@.
  -> IO ()
glRasterPos2fv = dyn_glRasterPos2fv ptr_glRasterPos2fv

foreign import CALLCONV "dynamic" dyn_glRasterPos2fv
  :: FunPtr (Ptr GLfloat -> IO ())
  ->         Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glRasterPos2fv #-}
ptr_glRasterPos2fv :: FunPtr (Ptr GLfloat -> IO ())
ptr_glRasterPos2fv = unsafePerformIO $ getCommand "glRasterPos2fv"

-- glRasterPos2i ---------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glRasterPos.xml OpenGL 2.x>
glRasterPos2i
  :: GLint -- ^ @x@ of type @CoordI@.
  -> GLint -- ^ @y@ of type @CoordI@.
  -> IO ()
glRasterPos2i = dyn_glRasterPos2i ptr_glRasterPos2i

foreign import CALLCONV "dynamic" dyn_glRasterPos2i
  :: FunPtr (GLint -> GLint -> IO ())
  ->         GLint -> GLint -> IO ()

{-# NOINLINE ptr_glRasterPos2i #-}
ptr_glRasterPos2i :: FunPtr (GLint -> GLint -> IO ())
ptr_glRasterPos2i = unsafePerformIO $ getCommand "glRasterPos2i"

-- glRasterPos2iv --------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glRasterPos.xml OpenGL 2.x>
glRasterPos2iv
  :: Ptr GLint -- ^ @v@ pointing to @2@ elements of type @CoordI@.
  -> IO ()
glRasterPos2iv = dyn_glRasterPos2iv ptr_glRasterPos2iv

foreign import CALLCONV "dynamic" dyn_glRasterPos2iv
  :: FunPtr (Ptr GLint -> IO ())
  ->         Ptr GLint -> IO ()

{-# NOINLINE ptr_glRasterPos2iv #-}
ptr_glRasterPos2iv :: FunPtr (Ptr GLint -> IO ())
ptr_glRasterPos2iv = unsafePerformIO $ getCommand "glRasterPos2iv"

-- glRasterPos2s ---------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glRasterPos.xml OpenGL 2.x>
glRasterPos2s
  :: GLshort -- ^ @x@ of type @CoordS@.
  -> GLshort -- ^ @y@ of type @CoordS@.
  -> IO ()
glRasterPos2s = dyn_glRasterPos2s ptr_glRasterPos2s

foreign import CALLCONV "dynamic" dyn_glRasterPos2s
  :: FunPtr (GLshort -> GLshort -> IO ())
  ->         GLshort -> GLshort -> IO ()

{-# NOINLINE ptr_glRasterPos2s #-}
ptr_glRasterPos2s :: FunPtr (GLshort -> GLshort -> IO ())
ptr_glRasterPos2s = unsafePerformIO $ getCommand "glRasterPos2s"

-- glRasterPos2sv --------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glRasterPos.xml OpenGL 2.x>
glRasterPos2sv
  :: Ptr GLshort -- ^ @v@ pointing to @2@ elements of type @CoordS@.
  -> IO ()
glRasterPos2sv = dyn_glRasterPos2sv ptr_glRasterPos2sv

foreign import CALLCONV "dynamic" dyn_glRasterPos2sv
  :: FunPtr (Ptr GLshort -> IO ())
  ->         Ptr GLshort -> IO ()

{-# NOINLINE ptr_glRasterPos2sv #-}
ptr_glRasterPos2sv :: FunPtr (Ptr GLshort -> IO ())
ptr_glRasterPos2sv = unsafePerformIO $ getCommand "glRasterPos2sv"

-- glRasterPos2xOES ------------------------------------------------------------

glRasterPos2xOES
  :: GLfixed -- ^ @x@.
  -> GLfixed -- ^ @y@.
  -> IO ()
glRasterPos2xOES = dyn_glRasterPos2xOES ptr_glRasterPos2xOES

foreign import CALLCONV "dynamic" dyn_glRasterPos2xOES
  :: FunPtr (GLfixed -> GLfixed -> IO ())
  ->         GLfixed -> GLfixed -> IO ()

{-# NOINLINE ptr_glRasterPos2xOES #-}
ptr_glRasterPos2xOES :: FunPtr (GLfixed -> GLfixed -> IO ())
ptr_glRasterPos2xOES = unsafePerformIO $ getCommand "glRasterPos2xOES"

-- glRasterPos2xvOES -----------------------------------------------------------

glRasterPos2xvOES
  :: Ptr GLfixed -- ^ @coords@ pointing to @2@ elements of type @GLfixed@.
  -> IO ()
glRasterPos2xvOES = dyn_glRasterPos2xvOES ptr_glRasterPos2xvOES

foreign import CALLCONV "dynamic" dyn_glRasterPos2xvOES
  :: FunPtr (Ptr GLfixed -> IO ())
  ->         Ptr GLfixed -> IO ()

{-# NOINLINE ptr_glRasterPos2xvOES #-}
ptr_glRasterPos2xvOES :: FunPtr (Ptr GLfixed -> IO ())
ptr_glRasterPos2xvOES = unsafePerformIO $ getCommand "glRasterPos2xvOES"

-- glRasterPos3d ---------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glRasterPos.xml OpenGL 2.x>
glRasterPos3d
  :: GLdouble -- ^ @x@ of type @CoordD@.
  -> GLdouble -- ^ @y@ of type @CoordD@.
  -> GLdouble -- ^ @z@ of type @CoordD@.
  -> IO ()
glRasterPos3d = dyn_glRasterPos3d ptr_glRasterPos3d

foreign import CALLCONV "dynamic" dyn_glRasterPos3d
  :: FunPtr (GLdouble -> GLdouble -> GLdouble -> IO ())
  ->         GLdouble -> GLdouble -> GLdouble -> IO ()

{-# NOINLINE ptr_glRasterPos3d #-}
ptr_glRasterPos3d :: FunPtr (GLdouble -> GLdouble -> GLdouble -> IO ())
ptr_glRasterPos3d = unsafePerformIO $ getCommand "glRasterPos3d"

-- glRasterPos3dv --------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glRasterPos.xml OpenGL 2.x>
glRasterPos3dv
  :: Ptr GLdouble -- ^ @v@ pointing to @3@ elements of type @CoordD@.
  -> IO ()
glRasterPos3dv = dyn_glRasterPos3dv ptr_glRasterPos3dv

foreign import CALLCONV "dynamic" dyn_glRasterPos3dv
  :: FunPtr (Ptr GLdouble -> IO ())
  ->         Ptr GLdouble -> IO ()

{-# NOINLINE ptr_glRasterPos3dv #-}
ptr_glRasterPos3dv :: FunPtr (Ptr GLdouble -> IO ())
ptr_glRasterPos3dv = unsafePerformIO $ getCommand "glRasterPos3dv"

-- glRasterPos3f ---------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glRasterPos.xml OpenGL 2.x>
glRasterPos3f
  :: GLfloat -- ^ @x@ of type @CoordF@.
  -> GLfloat -- ^ @y@ of type @CoordF@.
  -> GLfloat -- ^ @z@ of type @CoordF@.
  -> IO ()
glRasterPos3f = dyn_glRasterPos3f ptr_glRasterPos3f

foreign import CALLCONV "dynamic" dyn_glRasterPos3f
  :: FunPtr (GLfloat -> GLfloat -> GLfloat -> IO ())
  ->         GLfloat -> GLfloat -> GLfloat -> IO ()

{-# NOINLINE ptr_glRasterPos3f #-}
ptr_glRasterPos3f :: FunPtr (GLfloat -> GLfloat -> GLfloat -> IO ())
ptr_glRasterPos3f = unsafePerformIO $ getCommand "glRasterPos3f"

-- glRasterPos3fv --------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glRasterPos.xml OpenGL 2.x>
glRasterPos3fv
  :: Ptr GLfloat -- ^ @v@ pointing to @3@ elements of type @CoordF@.
  -> IO ()
glRasterPos3fv = dyn_glRasterPos3fv ptr_glRasterPos3fv

foreign import CALLCONV "dynamic" dyn_glRasterPos3fv
  :: FunPtr (Ptr GLfloat -> IO ())
  ->         Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glRasterPos3fv #-}
ptr_glRasterPos3fv :: FunPtr (Ptr GLfloat -> IO ())
ptr_glRasterPos3fv = unsafePerformIO $ getCommand "glRasterPos3fv"

-- glRasterPos3i ---------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glRasterPos.xml OpenGL 2.x>
glRasterPos3i
  :: GLint -- ^ @x@ of type @CoordI@.
  -> GLint -- ^ @y@ of type @CoordI@.
  -> GLint -- ^ @z@ of type @CoordI@.
  -> IO ()
glRasterPos3i = dyn_glRasterPos3i ptr_glRasterPos3i

foreign import CALLCONV "dynamic" dyn_glRasterPos3i
  :: FunPtr (GLint -> GLint -> GLint -> IO ())
  ->         GLint -> GLint -> GLint -> IO ()

{-# NOINLINE ptr_glRasterPos3i #-}
ptr_glRasterPos3i :: FunPtr (GLint -> GLint -> GLint -> IO ())
ptr_glRasterPos3i = unsafePerformIO $ getCommand "glRasterPos3i"

-- glRasterPos3iv --------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glRasterPos.xml OpenGL 2.x>
glRasterPos3iv
  :: Ptr GLint -- ^ @v@ pointing to @3@ elements of type @CoordI@.
  -> IO ()
glRasterPos3iv = dyn_glRasterPos3iv ptr_glRasterPos3iv

foreign import CALLCONV "dynamic" dyn_glRasterPos3iv
  :: FunPtr (Ptr GLint -> IO ())
  ->         Ptr GLint -> IO ()

{-# NOINLINE ptr_glRasterPos3iv #-}
ptr_glRasterPos3iv :: FunPtr (Ptr GLint -> IO ())
ptr_glRasterPos3iv = unsafePerformIO $ getCommand "glRasterPos3iv"

-- glRasterPos3s ---------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glRasterPos.xml OpenGL 2.x>
glRasterPos3s
  :: GLshort -- ^ @x@ of type @CoordS@.
  -> GLshort -- ^ @y@ of type @CoordS@.
  -> GLshort -- ^ @z@ of type @CoordS@.
  -> IO ()
glRasterPos3s = dyn_glRasterPos3s ptr_glRasterPos3s

foreign import CALLCONV "dynamic" dyn_glRasterPos3s
  :: FunPtr (GLshort -> GLshort -> GLshort -> IO ())
  ->         GLshort -> GLshort -> GLshort -> IO ()

{-# NOINLINE ptr_glRasterPos3s #-}
ptr_glRasterPos3s :: FunPtr (GLshort -> GLshort -> GLshort -> IO ())
ptr_glRasterPos3s = unsafePerformIO $ getCommand "glRasterPos3s"

-- glRasterPos3sv --------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glRasterPos.xml OpenGL 2.x>
glRasterPos3sv
  :: Ptr GLshort -- ^ @v@ pointing to @3@ elements of type @CoordS@.
  -> IO ()
glRasterPos3sv = dyn_glRasterPos3sv ptr_glRasterPos3sv

foreign import CALLCONV "dynamic" dyn_glRasterPos3sv
  :: FunPtr (Ptr GLshort -> IO ())
  ->         Ptr GLshort -> IO ()

{-# NOINLINE ptr_glRasterPos3sv #-}
ptr_glRasterPos3sv :: FunPtr (Ptr GLshort -> IO ())
ptr_glRasterPos3sv = unsafePerformIO $ getCommand "glRasterPos3sv"

-- glRasterPos3xOES ------------------------------------------------------------

glRasterPos3xOES
  :: GLfixed -- ^ @x@.
  -> GLfixed -- ^ @y@.
  -> GLfixed -- ^ @z@.
  -> IO ()
glRasterPos3xOES = dyn_glRasterPos3xOES ptr_glRasterPos3xOES

foreign import CALLCONV "dynamic" dyn_glRasterPos3xOES
  :: FunPtr (GLfixed -> GLfixed -> GLfixed -> IO ())
  ->         GLfixed -> GLfixed -> GLfixed -> IO ()

{-# NOINLINE ptr_glRasterPos3xOES #-}
ptr_glRasterPos3xOES :: FunPtr (GLfixed -> GLfixed -> GLfixed -> IO ())
ptr_glRasterPos3xOES = unsafePerformIO $ getCommand "glRasterPos3xOES"

-- glRasterPos3xvOES -----------------------------------------------------------

glRasterPos3xvOES
  :: Ptr GLfixed -- ^ @coords@ pointing to @3@ elements of type @GLfixed@.
  -> IO ()
glRasterPos3xvOES = dyn_glRasterPos3xvOES ptr_glRasterPos3xvOES

foreign import CALLCONV "dynamic" dyn_glRasterPos3xvOES
  :: FunPtr (Ptr GLfixed -> IO ())
  ->         Ptr GLfixed -> IO ()

{-# NOINLINE ptr_glRasterPos3xvOES #-}
ptr_glRasterPos3xvOES :: FunPtr (Ptr GLfixed -> IO ())
ptr_glRasterPos3xvOES = unsafePerformIO $ getCommand "glRasterPos3xvOES"

-- glRasterPos4d ---------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glRasterPos.xml OpenGL 2.x>
glRasterPos4d
  :: GLdouble -- ^ @x@ of type @CoordD@.
  -> GLdouble -- ^ @y@ of type @CoordD@.
  -> GLdouble -- ^ @z@ of type @CoordD@.
  -> GLdouble -- ^ @w@ of type @CoordD@.
  -> IO ()
glRasterPos4d = dyn_glRasterPos4d ptr_glRasterPos4d

foreign import CALLCONV "dynamic" dyn_glRasterPos4d
  :: FunPtr (GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ())
  ->         GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ()

{-# NOINLINE ptr_glRasterPos4d #-}
ptr_glRasterPos4d :: FunPtr (GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ())
ptr_glRasterPos4d = unsafePerformIO $ getCommand "glRasterPos4d"

-- glRasterPos4dv --------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glRasterPos.xml OpenGL 2.x>
glRasterPos4dv
  :: Ptr GLdouble -- ^ @v@ pointing to @4@ elements of type @CoordD@.
  -> IO ()
glRasterPos4dv = dyn_glRasterPos4dv ptr_glRasterPos4dv

foreign import CALLCONV "dynamic" dyn_glRasterPos4dv
  :: FunPtr (Ptr GLdouble -> IO ())
  ->         Ptr GLdouble -> IO ()

{-# NOINLINE ptr_glRasterPos4dv #-}
ptr_glRasterPos4dv :: FunPtr (Ptr GLdouble -> IO ())
ptr_glRasterPos4dv = unsafePerformIO $ getCommand "glRasterPos4dv"

-- glRasterPos4f ---------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glRasterPos.xml OpenGL 2.x>
glRasterPos4f
  :: GLfloat -- ^ @x@ of type @CoordF@.
  -> GLfloat -- ^ @y@ of type @CoordF@.
  -> GLfloat -- ^ @z@ of type @CoordF@.
  -> GLfloat -- ^ @w@ of type @CoordF@.
  -> IO ()
glRasterPos4f = dyn_glRasterPos4f ptr_glRasterPos4f

foreign import CALLCONV "dynamic" dyn_glRasterPos4f
  :: FunPtr (GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
  ->         GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ()

{-# NOINLINE ptr_glRasterPos4f #-}
ptr_glRasterPos4f :: FunPtr (GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
ptr_glRasterPos4f = unsafePerformIO $ getCommand "glRasterPos4f"

-- glRasterPos4fv --------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glRasterPos.xml OpenGL 2.x>
glRasterPos4fv
  :: Ptr GLfloat -- ^ @v@ pointing to @4@ elements of type @CoordF@.
  -> IO ()
glRasterPos4fv = dyn_glRasterPos4fv ptr_glRasterPos4fv

foreign import CALLCONV "dynamic" dyn_glRasterPos4fv
  :: FunPtr (Ptr GLfloat -> IO ())
  ->         Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glRasterPos4fv #-}
ptr_glRasterPos4fv :: FunPtr (Ptr GLfloat -> IO ())
ptr_glRasterPos4fv = unsafePerformIO $ getCommand "glRasterPos4fv"

-- glRasterPos4i ---------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glRasterPos.xml OpenGL 2.x>
glRasterPos4i
  :: GLint -- ^ @x@ of type @CoordI@.
  -> GLint -- ^ @y@ of type @CoordI@.
  -> GLint -- ^ @z@ of type @CoordI@.
  -> GLint -- ^ @w@ of type @CoordI@.
  -> IO ()
glRasterPos4i = dyn_glRasterPos4i ptr_glRasterPos4i

foreign import CALLCONV "dynamic" dyn_glRasterPos4i
  :: FunPtr (GLint -> GLint -> GLint -> GLint -> IO ())
  ->         GLint -> GLint -> GLint -> GLint -> IO ()

{-# NOINLINE ptr_glRasterPos4i #-}
ptr_glRasterPos4i :: FunPtr (GLint -> GLint -> GLint -> GLint -> IO ())
ptr_glRasterPos4i = unsafePerformIO $ getCommand "glRasterPos4i"

-- glRasterPos4iv --------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glRasterPos.xml OpenGL 2.x>
glRasterPos4iv
  :: Ptr GLint -- ^ @v@ pointing to @4@ elements of type @CoordI@.
  -> IO ()
glRasterPos4iv = dyn_glRasterPos4iv ptr_glRasterPos4iv

foreign import CALLCONV "dynamic" dyn_glRasterPos4iv
  :: FunPtr (Ptr GLint -> IO ())
  ->         Ptr GLint -> IO ()

{-# NOINLINE ptr_glRasterPos4iv #-}
ptr_glRasterPos4iv :: FunPtr (Ptr GLint -> IO ())
ptr_glRasterPos4iv = unsafePerformIO $ getCommand "glRasterPos4iv"

-- glRasterPos4s ---------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glRasterPos.xml OpenGL 2.x>
glRasterPos4s
  :: GLshort -- ^ @x@ of type @CoordS@.
  -> GLshort -- ^ @y@ of type @CoordS@.
  -> GLshort -- ^ @z@ of type @CoordS@.
  -> GLshort -- ^ @w@ of type @CoordS@.
  -> IO ()
glRasterPos4s = dyn_glRasterPos4s ptr_glRasterPos4s

foreign import CALLCONV "dynamic" dyn_glRasterPos4s
  :: FunPtr (GLshort -> GLshort -> GLshort -> GLshort -> IO ())
  ->         GLshort -> GLshort -> GLshort -> GLshort -> IO ()

{-# NOINLINE ptr_glRasterPos4s #-}
ptr_glRasterPos4s :: FunPtr (GLshort -> GLshort -> GLshort -> GLshort -> IO ())
ptr_glRasterPos4s = unsafePerformIO $ getCommand "glRasterPos4s"

-- glRasterPos4sv --------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glRasterPos.xml OpenGL 2.x>
glRasterPos4sv
  :: Ptr GLshort -- ^ @v@ pointing to @4@ elements of type @CoordS@.
  -> IO ()
glRasterPos4sv = dyn_glRasterPos4sv ptr_glRasterPos4sv

foreign import CALLCONV "dynamic" dyn_glRasterPos4sv
  :: FunPtr (Ptr GLshort -> IO ())
  ->         Ptr GLshort -> IO ()

{-# NOINLINE ptr_glRasterPos4sv #-}
ptr_glRasterPos4sv :: FunPtr (Ptr GLshort -> IO ())
ptr_glRasterPos4sv = unsafePerformIO $ getCommand "glRasterPos4sv"

-- glRasterPos4xOES ------------------------------------------------------------

glRasterPos4xOES
  :: GLfixed -- ^ @x@.
  -> GLfixed -- ^ @y@.
  -> GLfixed -- ^ @z@.
  -> GLfixed -- ^ @w@.
  -> IO ()
glRasterPos4xOES = dyn_glRasterPos4xOES ptr_glRasterPos4xOES

foreign import CALLCONV "dynamic" dyn_glRasterPos4xOES
  :: FunPtr (GLfixed -> GLfixed -> GLfixed -> GLfixed -> IO ())
  ->         GLfixed -> GLfixed -> GLfixed -> GLfixed -> IO ()

{-# NOINLINE ptr_glRasterPos4xOES #-}
ptr_glRasterPos4xOES :: FunPtr (GLfixed -> GLfixed -> GLfixed -> GLfixed -> IO ())
ptr_glRasterPos4xOES = unsafePerformIO $ getCommand "glRasterPos4xOES"

-- glRasterPos4xvOES -----------------------------------------------------------

glRasterPos4xvOES
  :: Ptr GLfixed -- ^ @coords@ pointing to @4@ elements of type @GLfixed@.
  -> IO ()
glRasterPos4xvOES = dyn_glRasterPos4xvOES ptr_glRasterPos4xvOES

foreign import CALLCONV "dynamic" dyn_glRasterPos4xvOES
  :: FunPtr (Ptr GLfixed -> IO ())
  ->         Ptr GLfixed -> IO ()

{-# NOINLINE ptr_glRasterPos4xvOES #-}
ptr_glRasterPos4xvOES :: FunPtr (Ptr GLfixed -> IO ())
ptr_glRasterPos4xvOES = unsafePerformIO $ getCommand "glRasterPos4xvOES"

-- glRasterSamplesEXT ----------------------------------------------------------

glRasterSamplesEXT
  :: GLuint -- ^ @samples@.
  -> GLboolean -- ^ @fixedsamplelocations@.
  -> IO ()
glRasterSamplesEXT = dyn_glRasterSamplesEXT ptr_glRasterSamplesEXT

foreign import CALLCONV "dynamic" dyn_glRasterSamplesEXT
  :: FunPtr (GLuint -> GLboolean -> IO ())
  ->         GLuint -> GLboolean -> IO ()

{-# NOINLINE ptr_glRasterSamplesEXT #-}
ptr_glRasterSamplesEXT :: FunPtr (GLuint -> GLboolean -> IO ())
ptr_glRasterSamplesEXT = unsafePerformIO $ getCommand "glRasterSamplesEXT"

-- glReadBuffer ----------------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glReadBuffer.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glReadBuffer.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glReadBuffer.xhtml OpenGL 4.x>
glReadBuffer
  :: GLenum -- ^ @src@ of type @ReadBufferMode@.
  -> IO ()
glReadBuffer = dyn_glReadBuffer ptr_glReadBuffer

foreign import CALLCONV "dynamic" dyn_glReadBuffer
  :: FunPtr (GLenum -> IO ())
  ->         GLenum -> IO ()

{-# NOINLINE ptr_glReadBuffer #-}
ptr_glReadBuffer :: FunPtr (GLenum -> IO ())
ptr_glReadBuffer = unsafePerformIO $ getCommand "glReadBuffer"

-- glReadBufferIndexedEXT ------------------------------------------------------

glReadBufferIndexedEXT
  :: GLenum -- ^ @src@.
  -> GLint -- ^ @index@.
  -> IO ()
glReadBufferIndexedEXT = dyn_glReadBufferIndexedEXT ptr_glReadBufferIndexedEXT

foreign import CALLCONV "dynamic" dyn_glReadBufferIndexedEXT
  :: FunPtr (GLenum -> GLint -> IO ())
  ->         GLenum -> GLint -> IO ()

{-# NOINLINE ptr_glReadBufferIndexedEXT #-}
ptr_glReadBufferIndexedEXT :: FunPtr (GLenum -> GLint -> IO ())
ptr_glReadBufferIndexedEXT = unsafePerformIO $ getCommand "glReadBufferIndexedEXT"

-- glReadBufferNV --------------------------------------------------------------

glReadBufferNV
  :: GLenum -- ^ @mode@.
  -> IO ()
glReadBufferNV = dyn_glReadBufferNV ptr_glReadBufferNV

foreign import CALLCONV "dynamic" dyn_glReadBufferNV
  :: FunPtr (GLenum -> IO ())
  ->         GLenum -> IO ()

{-# NOINLINE ptr_glReadBufferNV #-}
ptr_glReadBufferNV :: FunPtr (GLenum -> IO ())
ptr_glReadBufferNV = unsafePerformIO $ getCommand "glReadBufferNV"

-- glReadInstrumentsSGIX -------------------------------------------------------

glReadInstrumentsSGIX
  :: GLint -- ^ @marker@.
  -> IO ()
glReadInstrumentsSGIX = dyn_glReadInstrumentsSGIX ptr_glReadInstrumentsSGIX

foreign import CALLCONV "dynamic" dyn_glReadInstrumentsSGIX
  :: FunPtr (GLint -> IO ())
  ->         GLint -> IO ()

{-# NOINLINE ptr_glReadInstrumentsSGIX #-}
ptr_glReadInstrumentsSGIX :: FunPtr (GLint -> IO ())
ptr_glReadInstrumentsSGIX = unsafePerformIO $ getCommand "glReadInstrumentsSGIX"

-- glReadPixels ----------------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glReadPixels.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glReadPixels.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glReadPixels.xhtml OpenGL 4.x>
glReadPixels
  :: GLint -- ^ @x@ of type @WinCoord@.
  -> GLint -- ^ @y@ of type @WinCoord@.
  -> GLsizei -- ^ @width@.
  -> GLsizei -- ^ @height@.
  -> GLenum -- ^ @format@ of type @PixelFormat@.
  -> GLenum -- ^ @type@ of type @PixelType@.
  -> Ptr a -- ^ @pixels@ pointing to @COMPSIZE(format,type,width,height)@ elements of type @a@.
  -> IO ()
glReadPixels = dyn_glReadPixels ptr_glReadPixels

foreign import CALLCONV "dynamic" dyn_glReadPixels
  :: FunPtr (GLint -> GLint -> GLsizei -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO ())
  ->         GLint -> GLint -> GLsizei -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO ()

{-# NOINLINE ptr_glReadPixels #-}
ptr_glReadPixels :: FunPtr (GLint -> GLint -> GLsizei -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO ())
ptr_glReadPixels = unsafePerformIO $ getCommand "glReadPixels"

-- glReadnPixels ---------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glReadPixels.xhtml OpenGL 4.x>
glReadnPixels
  :: GLint -- ^ @x@.
  -> GLint -- ^ @y@.
  -> GLsizei -- ^ @width@.
  -> GLsizei -- ^ @height@.
  -> GLenum -- ^ @format@.
  -> GLenum -- ^ @type@.
  -> GLsizei -- ^ @bufSize@.
  -> Ptr a -- ^ @data@.
  -> IO ()
glReadnPixels = dyn_glReadnPixels ptr_glReadnPixels

foreign import CALLCONV "dynamic" dyn_glReadnPixels
  :: FunPtr (GLint -> GLint -> GLsizei -> GLsizei -> GLenum -> GLenum -> GLsizei -> Ptr a -> IO ())
  ->         GLint -> GLint -> GLsizei -> GLsizei -> GLenum -> GLenum -> GLsizei -> Ptr a -> IO ()

{-# NOINLINE ptr_glReadnPixels #-}
ptr_glReadnPixels :: FunPtr (GLint -> GLint -> GLsizei -> GLsizei -> GLenum -> GLenum -> GLsizei -> Ptr a -> IO ())
ptr_glReadnPixels = unsafePerformIO $ getCommand "glReadnPixels"

-- glReadnPixelsARB ------------------------------------------------------------

glReadnPixelsARB
  :: GLint -- ^ @x@.
  -> GLint -- ^ @y@.
  -> GLsizei -- ^ @width@.
  -> GLsizei -- ^ @height@.
  -> GLenum -- ^ @format@.
  -> GLenum -- ^ @type@.
  -> GLsizei -- ^ @bufSize@.
  -> Ptr a -- ^ @data@ pointing to @bufSize@ elements of type @a@.
  -> IO ()
glReadnPixelsARB = dyn_glReadnPixelsARB ptr_glReadnPixelsARB

foreign import CALLCONV "dynamic" dyn_glReadnPixelsARB
  :: FunPtr (GLint -> GLint -> GLsizei -> GLsizei -> GLenum -> GLenum -> GLsizei -> Ptr a -> IO ())
  ->         GLint -> GLint -> GLsizei -> GLsizei -> GLenum -> GLenum -> GLsizei -> Ptr a -> IO ()

{-# NOINLINE ptr_glReadnPixelsARB #-}
ptr_glReadnPixelsARB :: FunPtr (GLint -> GLint -> GLsizei -> GLsizei -> GLenum -> GLenum -> GLsizei -> Ptr a -> IO ())
ptr_glReadnPixelsARB = unsafePerformIO $ getCommand "glReadnPixelsARB"

-- glReadnPixelsEXT ------------------------------------------------------------

glReadnPixelsEXT
  :: GLint -- ^ @x@.
  -> GLint -- ^ @y@.
  -> GLsizei -- ^ @width@.
  -> GLsizei -- ^ @height@.
  -> GLenum -- ^ @format@.
  -> GLenum -- ^ @type@.
  -> GLsizei -- ^ @bufSize@.
  -> Ptr a -- ^ @data@ pointing to @bufSize@ elements of type @a@.
  -> IO ()
glReadnPixelsEXT = dyn_glReadnPixelsEXT ptr_glReadnPixelsEXT

foreign import CALLCONV "dynamic" dyn_glReadnPixelsEXT
  :: FunPtr (GLint -> GLint -> GLsizei -> GLsizei -> GLenum -> GLenum -> GLsizei -> Ptr a -> IO ())
  ->         GLint -> GLint -> GLsizei -> GLsizei -> GLenum -> GLenum -> GLsizei -> Ptr a -> IO ()

{-# NOINLINE ptr_glReadnPixelsEXT #-}
ptr_glReadnPixelsEXT :: FunPtr (GLint -> GLint -> GLsizei -> GLsizei -> GLenum -> GLenum -> GLsizei -> Ptr a -> IO ())
ptr_glReadnPixelsEXT = unsafePerformIO $ getCommand "glReadnPixelsEXT"

-- glReadnPixelsKHR ------------------------------------------------------------

glReadnPixelsKHR
  :: GLint -- ^ @x@ of type @WinCoord@.
  -> GLint -- ^ @y@ of type @WinCoord@.
  -> GLsizei -- ^ @width@.
  -> GLsizei -- ^ @height@.
  -> GLenum -- ^ @format@ of type @PixelFormat@.
  -> GLenum -- ^ @type@ of type @PixelType@.
  -> GLsizei -- ^ @bufSize@.
  -> Ptr a -- ^ @data@ pointing to @bufSize@ elements of type @a@.
  -> IO ()
glReadnPixelsKHR = dyn_glReadnPixelsKHR ptr_glReadnPixelsKHR

foreign import CALLCONV "dynamic" dyn_glReadnPixelsKHR
  :: FunPtr (GLint -> GLint -> GLsizei -> GLsizei -> GLenum -> GLenum -> GLsizei -> Ptr a -> IO ())
  ->         GLint -> GLint -> GLsizei -> GLsizei -> GLenum -> GLenum -> GLsizei -> Ptr a -> IO ()

{-# NOINLINE ptr_glReadnPixelsKHR #-}
ptr_glReadnPixelsKHR :: FunPtr (GLint -> GLint -> GLsizei -> GLsizei -> GLenum -> GLenum -> GLsizei -> Ptr a -> IO ())
ptr_glReadnPixelsKHR = unsafePerformIO $ getCommand "glReadnPixelsKHR"

-- glRectd ---------------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glRect.xml OpenGL 2.x>
glRectd
  :: GLdouble -- ^ @x1@ of type @CoordD@.
  -> GLdouble -- ^ @y1@ of type @CoordD@.
  -> GLdouble -- ^ @x2@ of type @CoordD@.
  -> GLdouble -- ^ @y2@ of type @CoordD@.
  -> IO ()
glRectd = dyn_glRectd ptr_glRectd

foreign import CALLCONV "dynamic" dyn_glRectd
  :: FunPtr (GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ())
  ->         GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ()

{-# NOINLINE ptr_glRectd #-}
ptr_glRectd :: FunPtr (GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ())
ptr_glRectd = unsafePerformIO $ getCommand "glRectd"

-- glRectdv --------------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glRect.xml OpenGL 2.x>
glRectdv
  :: Ptr GLdouble -- ^ @v1@ pointing to @2@ elements of type @CoordD@.
  -> Ptr GLdouble -- ^ @v2@ pointing to @2@ elements of type @CoordD@.
  -> IO ()
glRectdv = dyn_glRectdv ptr_glRectdv

foreign import CALLCONV "dynamic" dyn_glRectdv
  :: FunPtr (Ptr GLdouble -> Ptr GLdouble -> IO ())
  ->         Ptr GLdouble -> Ptr GLdouble -> IO ()

{-# NOINLINE ptr_glRectdv #-}
ptr_glRectdv :: FunPtr (Ptr GLdouble -> Ptr GLdouble -> IO ())
ptr_glRectdv = unsafePerformIO $ getCommand "glRectdv"

-- glRectf ---------------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glRect.xml OpenGL 2.x>
glRectf
  :: GLfloat -- ^ @x1@ of type @CoordF@.
  -> GLfloat -- ^ @y1@ of type @CoordF@.
  -> GLfloat -- ^ @x2@ of type @CoordF@.
  -> GLfloat -- ^ @y2@ of type @CoordF@.
  -> IO ()
glRectf = dyn_glRectf ptr_glRectf

foreign import CALLCONV "dynamic" dyn_glRectf
  :: FunPtr (GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
  ->         GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ()

{-# NOINLINE ptr_glRectf #-}
ptr_glRectf :: FunPtr (GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
ptr_glRectf = unsafePerformIO $ getCommand "glRectf"

-- glRectfv --------------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glRect.xml OpenGL 2.x>
glRectfv
  :: Ptr GLfloat -- ^ @v1@ pointing to @2@ elements of type @CoordF@.
  -> Ptr GLfloat -- ^ @v2@ pointing to @2@ elements of type @CoordF@.
  -> IO ()
glRectfv = dyn_glRectfv ptr_glRectfv

foreign import CALLCONV "dynamic" dyn_glRectfv
  :: FunPtr (Ptr GLfloat -> Ptr GLfloat -> IO ())
  ->         Ptr GLfloat -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glRectfv #-}
ptr_glRectfv :: FunPtr (Ptr GLfloat -> Ptr GLfloat -> IO ())
ptr_glRectfv = unsafePerformIO $ getCommand "glRectfv"

-- glRecti ---------------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glRect.xml OpenGL 2.x>
glRecti
  :: GLint -- ^ @x1@ of type @CoordI@.
  -> GLint -- ^ @y1@ of type @CoordI@.
  -> GLint -- ^ @x2@ of type @CoordI@.
  -> GLint -- ^ @y2@ of type @CoordI@.
  -> IO ()
glRecti = dyn_glRecti ptr_glRecti

foreign import CALLCONV "dynamic" dyn_glRecti
  :: FunPtr (GLint -> GLint -> GLint -> GLint -> IO ())
  ->         GLint -> GLint -> GLint -> GLint -> IO ()

{-# NOINLINE ptr_glRecti #-}
ptr_glRecti :: FunPtr (GLint -> GLint -> GLint -> GLint -> IO ())
ptr_glRecti = unsafePerformIO $ getCommand "glRecti"

-- glRectiv --------------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glRect.xml OpenGL 2.x>
glRectiv
  :: Ptr GLint -- ^ @v1@ pointing to @2@ elements of type @CoordI@.
  -> Ptr GLint -- ^ @v2@ pointing to @2@ elements of type @CoordI@.
  -> IO ()
glRectiv = dyn_glRectiv ptr_glRectiv

foreign import CALLCONV "dynamic" dyn_glRectiv
  :: FunPtr (Ptr GLint -> Ptr GLint -> IO ())
  ->         Ptr GLint -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glRectiv #-}
ptr_glRectiv :: FunPtr (Ptr GLint -> Ptr GLint -> IO ())
ptr_glRectiv = unsafePerformIO $ getCommand "glRectiv"

-- glRects ---------------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glRect.xml OpenGL 2.x>
glRects
  :: GLshort -- ^ @x1@ of type @CoordS@.
  -> GLshort -- ^ @y1@ of type @CoordS@.
  -> GLshort -- ^ @x2@ of type @CoordS@.
  -> GLshort -- ^ @y2@ of type @CoordS@.
  -> IO ()
glRects = dyn_glRects ptr_glRects

foreign import CALLCONV "dynamic" dyn_glRects
  :: FunPtr (GLshort -> GLshort -> GLshort -> GLshort -> IO ())
  ->         GLshort -> GLshort -> GLshort -> GLshort -> IO ()

{-# NOINLINE ptr_glRects #-}
ptr_glRects :: FunPtr (GLshort -> GLshort -> GLshort -> GLshort -> IO ())
ptr_glRects = unsafePerformIO $ getCommand "glRects"

-- glRectsv --------------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glRect.xml OpenGL 2.x>
glRectsv
  :: Ptr GLshort -- ^ @v1@ pointing to @2@ elements of type @CoordS@.
  -> Ptr GLshort -- ^ @v2@ pointing to @2@ elements of type @CoordS@.
  -> IO ()
glRectsv = dyn_glRectsv ptr_glRectsv

foreign import CALLCONV "dynamic" dyn_glRectsv
  :: FunPtr (Ptr GLshort -> Ptr GLshort -> IO ())
  ->         Ptr GLshort -> Ptr GLshort -> IO ()

{-# NOINLINE ptr_glRectsv #-}
ptr_glRectsv :: FunPtr (Ptr GLshort -> Ptr GLshort -> IO ())
ptr_glRectsv = unsafePerformIO $ getCommand "glRectsv"

-- glRectxOES ------------------------------------------------------------------

glRectxOES
  :: GLfixed -- ^ @x1@.
  -> GLfixed -- ^ @y1@.
  -> GLfixed -- ^ @x2@.
  -> GLfixed -- ^ @y2@.
  -> IO ()
glRectxOES = dyn_glRectxOES ptr_glRectxOES

foreign import CALLCONV "dynamic" dyn_glRectxOES
  :: FunPtr (GLfixed -> GLfixed -> GLfixed -> GLfixed -> IO ())
  ->         GLfixed -> GLfixed -> GLfixed -> GLfixed -> IO ()

{-# NOINLINE ptr_glRectxOES #-}
ptr_glRectxOES :: FunPtr (GLfixed -> GLfixed -> GLfixed -> GLfixed -> IO ())
ptr_glRectxOES = unsafePerformIO $ getCommand "glRectxOES"

-- glRectxvOES -----------------------------------------------------------------

glRectxvOES
  :: Ptr GLfixed -- ^ @v1@ pointing to @2@ elements of type @GLfixed@.
  -> Ptr GLfixed -- ^ @v2@ pointing to @2@ elements of type @GLfixed@.
  -> IO ()
glRectxvOES = dyn_glRectxvOES ptr_glRectxvOES

foreign import CALLCONV "dynamic" dyn_glRectxvOES
  :: FunPtr (Ptr GLfixed -> Ptr GLfixed -> IO ())
  ->         Ptr GLfixed -> Ptr GLfixed -> IO ()

{-# NOINLINE ptr_glRectxvOES #-}
ptr_glRectxvOES :: FunPtr (Ptr GLfixed -> Ptr GLfixed -> IO ())
ptr_glRectxvOES = unsafePerformIO $ getCommand "glRectxvOES"

-- glReferencePlaneSGIX --------------------------------------------------------

glReferencePlaneSGIX
  :: Ptr GLdouble -- ^ @equation@ pointing to @4@ elements of type @GLdouble@.
  -> IO ()
glReferencePlaneSGIX = dyn_glReferencePlaneSGIX ptr_glReferencePlaneSGIX

foreign import CALLCONV "dynamic" dyn_glReferencePlaneSGIX
  :: FunPtr (Ptr GLdouble -> IO ())
  ->         Ptr GLdouble -> IO ()

{-# NOINLINE ptr_glReferencePlaneSGIX #-}
ptr_glReferencePlaneSGIX :: FunPtr (Ptr GLdouble -> IO ())
ptr_glReferencePlaneSGIX = unsafePerformIO $ getCommand "glReferencePlaneSGIX"

-- glReleaseShaderCompiler -----------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glReleaseShaderCompiler.xhtml OpenGL 4.x>
glReleaseShaderCompiler
  :: IO ()
glReleaseShaderCompiler = dyn_glReleaseShaderCompiler ptr_glReleaseShaderCompiler

foreign import CALLCONV "dynamic" dyn_glReleaseShaderCompiler
  :: FunPtr (IO ())
  ->         IO ()

{-# NOINLINE ptr_glReleaseShaderCompiler #-}
ptr_glReleaseShaderCompiler :: FunPtr (IO ())
ptr_glReleaseShaderCompiler = unsafePerformIO $ getCommand "glReleaseShaderCompiler"

-- glRenderMode ----------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glRenderMode.xml OpenGL 2.x>
glRenderMode
  :: GLenum -- ^ @mode@ of type @RenderingMode@.
  -> IO GLint
glRenderMode = dyn_glRenderMode ptr_glRenderMode

foreign import CALLCONV "dynamic" dyn_glRenderMode
  :: FunPtr (GLenum -> IO GLint)
  ->         GLenum -> IO GLint

{-# NOINLINE ptr_glRenderMode #-}
ptr_glRenderMode :: FunPtr (GLenum -> IO GLint)
ptr_glRenderMode = unsafePerformIO $ getCommand "glRenderMode"

-- glRenderbufferStorage -------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glRenderbufferStorage.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glRenderbufferStorage.xhtml OpenGL 4.x>
glRenderbufferStorage
  :: GLenum -- ^ @target@ of type @RenderbufferTarget@.
  -> GLenum -- ^ @internalformat@.
  -> GLsizei -- ^ @width@.
  -> GLsizei -- ^ @height@.
  -> IO ()
glRenderbufferStorage = dyn_glRenderbufferStorage ptr_glRenderbufferStorage

foreign import CALLCONV "dynamic" dyn_glRenderbufferStorage
  :: FunPtr (GLenum -> GLenum -> GLsizei -> GLsizei -> IO ())
  ->         GLenum -> GLenum -> GLsizei -> GLsizei -> IO ()

{-# NOINLINE ptr_glRenderbufferStorage #-}
ptr_glRenderbufferStorage :: FunPtr (GLenum -> GLenum -> GLsizei -> GLsizei -> IO ())
ptr_glRenderbufferStorage = unsafePerformIO $ getCommand "glRenderbufferStorage"

-- glRenderbufferStorageEXT ----------------------------------------------------

glRenderbufferStorageEXT
  :: GLenum -- ^ @target@ of type @RenderbufferTarget@.
  -> GLenum -- ^ @internalformat@.
  -> GLsizei -- ^ @width@.
  -> GLsizei -- ^ @height@.
  -> IO ()
glRenderbufferStorageEXT = dyn_glRenderbufferStorageEXT ptr_glRenderbufferStorageEXT

foreign import CALLCONV "dynamic" dyn_glRenderbufferStorageEXT
  :: FunPtr (GLenum -> GLenum -> GLsizei -> GLsizei -> IO ())
  ->         GLenum -> GLenum -> GLsizei -> GLsizei -> IO ()

{-# NOINLINE ptr_glRenderbufferStorageEXT #-}
ptr_glRenderbufferStorageEXT :: FunPtr (GLenum -> GLenum -> GLsizei -> GLsizei -> IO ())
ptr_glRenderbufferStorageEXT = unsafePerformIO $ getCommand "glRenderbufferStorageEXT"

-- glRenderbufferStorageMultisample --------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glRenderbufferStorageMultisample.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glRenderbufferStorageMultisample.xhtml OpenGL 4.x>
glRenderbufferStorageMultisample
  :: GLenum -- ^ @target@.
  -> GLsizei -- ^ @samples@.
  -> GLenum -- ^ @internalformat@.
  -> GLsizei -- ^ @width@.
  -> GLsizei -- ^ @height@.
  -> IO ()
glRenderbufferStorageMultisample = dyn_glRenderbufferStorageMultisample ptr_glRenderbufferStorageMultisample

foreign import CALLCONV "dynamic" dyn_glRenderbufferStorageMultisample
  :: FunPtr (GLenum -> GLsizei -> GLenum -> GLsizei -> GLsizei -> IO ())
  ->         GLenum -> GLsizei -> GLenum -> GLsizei -> GLsizei -> IO ()

{-# NOINLINE ptr_glRenderbufferStorageMultisample #-}
ptr_glRenderbufferStorageMultisample :: FunPtr (GLenum -> GLsizei -> GLenum -> GLsizei -> GLsizei -> IO ())
ptr_glRenderbufferStorageMultisample = unsafePerformIO $ getCommand "glRenderbufferStorageMultisample"

-- glRenderbufferStorageMultisampleANGLE ---------------------------------------

glRenderbufferStorageMultisampleANGLE
  :: GLenum -- ^ @target@.
  -> GLsizei -- ^ @samples@.
  -> GLenum -- ^ @internalformat@.
  -> GLsizei -- ^ @width@.
  -> GLsizei -- ^ @height@.
  -> IO ()
glRenderbufferStorageMultisampleANGLE = dyn_glRenderbufferStorageMultisampleANGLE ptr_glRenderbufferStorageMultisampleANGLE

foreign import CALLCONV "dynamic" dyn_glRenderbufferStorageMultisampleANGLE
  :: FunPtr (GLenum -> GLsizei -> GLenum -> GLsizei -> GLsizei -> IO ())
  ->         GLenum -> GLsizei -> GLenum -> GLsizei -> GLsizei -> IO ()

{-# NOINLINE ptr_glRenderbufferStorageMultisampleANGLE #-}
ptr_glRenderbufferStorageMultisampleANGLE :: FunPtr (GLenum -> GLsizei -> GLenum -> GLsizei -> GLsizei -> IO ())
ptr_glRenderbufferStorageMultisampleANGLE = unsafePerformIO $ getCommand "glRenderbufferStorageMultisampleANGLE"

-- glRenderbufferStorageMultisampleAPPLE ---------------------------------------

glRenderbufferStorageMultisampleAPPLE
  :: GLenum -- ^ @target@.
  -> GLsizei -- ^ @samples@.
  -> GLenum -- ^ @internalformat@.
  -> GLsizei -- ^ @width@.
  -> GLsizei -- ^ @height@.
  -> IO ()
glRenderbufferStorageMultisampleAPPLE = dyn_glRenderbufferStorageMultisampleAPPLE ptr_glRenderbufferStorageMultisampleAPPLE

foreign import CALLCONV "dynamic" dyn_glRenderbufferStorageMultisampleAPPLE
  :: FunPtr (GLenum -> GLsizei -> GLenum -> GLsizei -> GLsizei -> IO ())
  ->         GLenum -> GLsizei -> GLenum -> GLsizei -> GLsizei -> IO ()

{-# NOINLINE ptr_glRenderbufferStorageMultisampleAPPLE #-}
ptr_glRenderbufferStorageMultisampleAPPLE :: FunPtr (GLenum -> GLsizei -> GLenum -> GLsizei -> GLsizei -> IO ())
ptr_glRenderbufferStorageMultisampleAPPLE = unsafePerformIO $ getCommand "glRenderbufferStorageMultisampleAPPLE"

-- glRenderbufferStorageMultisampleCoverageNV ----------------------------------

glRenderbufferStorageMultisampleCoverageNV
  :: GLenum -- ^ @target@ of type @RenderbufferTarget@.
  -> GLsizei -- ^ @coverageSamples@.
  -> GLsizei -- ^ @colorSamples@.
  -> GLenum -- ^ @internalformat@ of type @PixelInternalFormat@.
  -> GLsizei -- ^ @width@.
  -> GLsizei -- ^ @height@.
  -> IO ()
glRenderbufferStorageMultisampleCoverageNV = dyn_glRenderbufferStorageMultisampleCoverageNV ptr_glRenderbufferStorageMultisampleCoverageNV

foreign import CALLCONV "dynamic" dyn_glRenderbufferStorageMultisampleCoverageNV
  :: FunPtr (GLenum -> GLsizei -> GLsizei -> GLenum -> GLsizei -> GLsizei -> IO ())
  ->         GLenum -> GLsizei -> GLsizei -> GLenum -> GLsizei -> GLsizei -> IO ()

{-# NOINLINE ptr_glRenderbufferStorageMultisampleCoverageNV #-}
ptr_glRenderbufferStorageMultisampleCoverageNV :: FunPtr (GLenum -> GLsizei -> GLsizei -> GLenum -> GLsizei -> GLsizei -> IO ())
ptr_glRenderbufferStorageMultisampleCoverageNV = unsafePerformIO $ getCommand "glRenderbufferStorageMultisampleCoverageNV"

-- glRenderbufferStorageMultisampleEXT -----------------------------------------

glRenderbufferStorageMultisampleEXT
  :: GLenum -- ^ @target@.
  -> GLsizei -- ^ @samples@.
  -> GLenum -- ^ @internalformat@.
  -> GLsizei -- ^ @width@.
  -> GLsizei -- ^ @height@.
  -> IO ()
glRenderbufferStorageMultisampleEXT = dyn_glRenderbufferStorageMultisampleEXT ptr_glRenderbufferStorageMultisampleEXT

foreign import CALLCONV "dynamic" dyn_glRenderbufferStorageMultisampleEXT
  :: FunPtr (GLenum -> GLsizei -> GLenum -> GLsizei -> GLsizei -> IO ())
  ->         GLenum -> GLsizei -> GLenum -> GLsizei -> GLsizei -> IO ()

{-# NOINLINE ptr_glRenderbufferStorageMultisampleEXT #-}
ptr_glRenderbufferStorageMultisampleEXT :: FunPtr (GLenum -> GLsizei -> GLenum -> GLsizei -> GLsizei -> IO ())
ptr_glRenderbufferStorageMultisampleEXT = unsafePerformIO $ getCommand "glRenderbufferStorageMultisampleEXT"

-- glRenderbufferStorageMultisampleIMG -----------------------------------------

glRenderbufferStorageMultisampleIMG
  :: GLenum -- ^ @target@.
  -> GLsizei -- ^ @samples@.
  -> GLenum -- ^ @internalformat@.
  -> GLsizei -- ^ @width@.
  -> GLsizei -- ^ @height@.
  -> IO ()
glRenderbufferStorageMultisampleIMG = dyn_glRenderbufferStorageMultisampleIMG ptr_glRenderbufferStorageMultisampleIMG

foreign import CALLCONV "dynamic" dyn_glRenderbufferStorageMultisampleIMG
  :: FunPtr (GLenum -> GLsizei -> GLenum -> GLsizei -> GLsizei -> IO ())
  ->         GLenum -> GLsizei -> GLenum -> GLsizei -> GLsizei -> IO ()

{-# NOINLINE ptr_glRenderbufferStorageMultisampleIMG #-}
ptr_glRenderbufferStorageMultisampleIMG :: FunPtr (GLenum -> GLsizei -> GLenum -> GLsizei -> GLsizei -> IO ())
ptr_glRenderbufferStorageMultisampleIMG = unsafePerformIO $ getCommand "glRenderbufferStorageMultisampleIMG"

-- glRenderbufferStorageMultisampleNV ------------------------------------------

glRenderbufferStorageMultisampleNV
  :: GLenum -- ^ @target@.
  -> GLsizei -- ^ @samples@.
  -> GLenum -- ^ @internalformat@.
  -> GLsizei -- ^ @width@.
  -> GLsizei -- ^ @height@.
  -> IO ()
glRenderbufferStorageMultisampleNV = dyn_glRenderbufferStorageMultisampleNV ptr_glRenderbufferStorageMultisampleNV

foreign import CALLCONV "dynamic" dyn_glRenderbufferStorageMultisampleNV
  :: FunPtr (GLenum -> GLsizei -> GLenum -> GLsizei -> GLsizei -> IO ())
  ->         GLenum -> GLsizei -> GLenum -> GLsizei -> GLsizei -> IO ()

{-# NOINLINE ptr_glRenderbufferStorageMultisampleNV #-}
ptr_glRenderbufferStorageMultisampleNV :: FunPtr (GLenum -> GLsizei -> GLenum -> GLsizei -> GLsizei -> IO ())
ptr_glRenderbufferStorageMultisampleNV = unsafePerformIO $ getCommand "glRenderbufferStorageMultisampleNV"

-- glRenderbufferStorageOES ----------------------------------------------------

glRenderbufferStorageOES
  :: GLenum -- ^ @target@.
  -> GLenum -- ^ @internalformat@.
  -> GLsizei -- ^ @width@.
  -> GLsizei -- ^ @height@.
  -> IO ()
glRenderbufferStorageOES = dyn_glRenderbufferStorageOES ptr_glRenderbufferStorageOES

foreign import CALLCONV "dynamic" dyn_glRenderbufferStorageOES
  :: FunPtr (GLenum -> GLenum -> GLsizei -> GLsizei -> IO ())
  ->         GLenum -> GLenum -> GLsizei -> GLsizei -> IO ()

{-# NOINLINE ptr_glRenderbufferStorageOES #-}
ptr_glRenderbufferStorageOES :: FunPtr (GLenum -> GLenum -> GLsizei -> GLsizei -> IO ())
ptr_glRenderbufferStorageOES = unsafePerformIO $ getCommand "glRenderbufferStorageOES"

-- glReplacementCodePointerSUN -------------------------------------------------

glReplacementCodePointerSUN
  :: GLenum -- ^ @type@ of type @ReplacementCodeTypeSUN@.
  -> GLsizei -- ^ @stride@.
  -> Ptr (Ptr a) -- ^ @pointer@ pointing to @COMPSIZE(type,stride)@ elements of type @Ptr a@.
  -> IO ()
glReplacementCodePointerSUN = dyn_glReplacementCodePointerSUN ptr_glReplacementCodePointerSUN

foreign import CALLCONV "dynamic" dyn_glReplacementCodePointerSUN
  :: FunPtr (GLenum -> GLsizei -> Ptr (Ptr a) -> IO ())
  ->         GLenum -> GLsizei -> Ptr (Ptr a) -> IO ()

{-# NOINLINE ptr_glReplacementCodePointerSUN #-}
ptr_glReplacementCodePointerSUN :: FunPtr (GLenum -> GLsizei -> Ptr (Ptr a) -> IO ())
ptr_glReplacementCodePointerSUN = unsafePerformIO $ getCommand "glReplacementCodePointerSUN"

-- glReplacementCodeubSUN ------------------------------------------------------

glReplacementCodeubSUN
  :: GLubyte -- ^ @code@.
  -> IO ()
glReplacementCodeubSUN = dyn_glReplacementCodeubSUN ptr_glReplacementCodeubSUN

foreign import CALLCONV "dynamic" dyn_glReplacementCodeubSUN
  :: FunPtr (GLubyte -> IO ())
  ->         GLubyte -> IO ()

{-# NOINLINE ptr_glReplacementCodeubSUN #-}
ptr_glReplacementCodeubSUN :: FunPtr (GLubyte -> IO ())
ptr_glReplacementCodeubSUN = unsafePerformIO $ getCommand "glReplacementCodeubSUN"

-- glReplacementCodeubvSUN -----------------------------------------------------

glReplacementCodeubvSUN
  :: Ptr GLubyte -- ^ @code@ pointing to @COMPSIZE()@ elements of type @GLubyte@.
  -> IO ()
glReplacementCodeubvSUN = dyn_glReplacementCodeubvSUN ptr_glReplacementCodeubvSUN

foreign import CALLCONV "dynamic" dyn_glReplacementCodeubvSUN
  :: FunPtr (Ptr GLubyte -> IO ())
  ->         Ptr GLubyte -> IO ()

{-# NOINLINE ptr_glReplacementCodeubvSUN #-}
ptr_glReplacementCodeubvSUN :: FunPtr (Ptr GLubyte -> IO ())
ptr_glReplacementCodeubvSUN = unsafePerformIO $ getCommand "glReplacementCodeubvSUN"

-- glReplacementCodeuiColor3fVertex3fSUN ---------------------------------------

glReplacementCodeuiColor3fVertex3fSUN
  :: GLuint -- ^ @rc@ of type @ReplacementCodeSUN@.
  -> GLfloat -- ^ @r@.
  -> GLfloat -- ^ @g@.
  -> GLfloat -- ^ @b@.
  -> GLfloat -- ^ @x@.
  -> GLfloat -- ^ @y@.
  -> GLfloat -- ^ @z@.
  -> IO ()
glReplacementCodeuiColor3fVertex3fSUN = dyn_glReplacementCodeuiColor3fVertex3fSUN ptr_glReplacementCodeuiColor3fVertex3fSUN

foreign import CALLCONV "dynamic" dyn_glReplacementCodeuiColor3fVertex3fSUN
  :: FunPtr (GLuint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
  ->         GLuint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ()

{-# NOINLINE ptr_glReplacementCodeuiColor3fVertex3fSUN #-}
ptr_glReplacementCodeuiColor3fVertex3fSUN :: FunPtr (GLuint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
ptr_glReplacementCodeuiColor3fVertex3fSUN = unsafePerformIO $ getCommand "glReplacementCodeuiColor3fVertex3fSUN"

-- glReplacementCodeuiColor3fVertex3fvSUN --------------------------------------

glReplacementCodeuiColor3fVertex3fvSUN
  :: Ptr GLuint -- ^ @rc@ pointing to @1@ elements of type @ReplacementCodeSUN@.
  -> Ptr GLfloat -- ^ @c@ pointing to @3@ elements of type @GLfloat@.
  -> Ptr GLfloat -- ^ @v@ pointing to @3@ elements of type @GLfloat@.
  -> IO ()
glReplacementCodeuiColor3fVertex3fvSUN = dyn_glReplacementCodeuiColor3fVertex3fvSUN ptr_glReplacementCodeuiColor3fVertex3fvSUN

foreign import CALLCONV "dynamic" dyn_glReplacementCodeuiColor3fVertex3fvSUN
  :: FunPtr (Ptr GLuint -> Ptr GLfloat -> Ptr GLfloat -> IO ())
  ->         Ptr GLuint -> Ptr GLfloat -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glReplacementCodeuiColor3fVertex3fvSUN #-}
ptr_glReplacementCodeuiColor3fVertex3fvSUN :: FunPtr (Ptr GLuint -> Ptr GLfloat -> Ptr GLfloat -> IO ())
ptr_glReplacementCodeuiColor3fVertex3fvSUN = unsafePerformIO $ getCommand "glReplacementCodeuiColor3fVertex3fvSUN"

-- glReplacementCodeuiColor4fNormal3fVertex3fSUN -------------------------------

glReplacementCodeuiColor4fNormal3fVertex3fSUN
  :: GLuint -- ^ @rc@ of type @ReplacementCodeSUN@.
  -> GLfloat -- ^ @r@.
  -> GLfloat -- ^ @g@.
  -> GLfloat -- ^ @b@.
  -> GLfloat -- ^ @a@.
  -> GLfloat -- ^ @nx@.
  -> GLfloat -- ^ @ny@.
  -> GLfloat -- ^ @nz@.
  -> GLfloat -- ^ @x@.
  -> GLfloat -- ^ @y@.
  -> GLfloat -- ^ @z@.
  -> IO ()
glReplacementCodeuiColor4fNormal3fVertex3fSUN = dyn_glReplacementCodeuiColor4fNormal3fVertex3fSUN ptr_glReplacementCodeuiColor4fNormal3fVertex3fSUN

foreign import CALLCONV "dynamic" dyn_glReplacementCodeuiColor4fNormal3fVertex3fSUN
  :: FunPtr (GLuint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
  ->         GLuint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ()

{-# NOINLINE ptr_glReplacementCodeuiColor4fNormal3fVertex3fSUN #-}
ptr_glReplacementCodeuiColor4fNormal3fVertex3fSUN :: FunPtr (GLuint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
ptr_glReplacementCodeuiColor4fNormal3fVertex3fSUN = unsafePerformIO $ getCommand "glReplacementCodeuiColor4fNormal3fVertex3fSUN"

-- glReplacementCodeuiColor4fNormal3fVertex3fvSUN ------------------------------

glReplacementCodeuiColor4fNormal3fVertex3fvSUN
  :: Ptr GLuint -- ^ @rc@ pointing to @1@ elements of type @ReplacementCodeSUN@.
  -> Ptr GLfloat -- ^ @c@ pointing to @4@ elements of type @GLfloat@.
  -> Ptr GLfloat -- ^ @n@ pointing to @3@ elements of type @GLfloat@.
  -> Ptr GLfloat -- ^ @v@ pointing to @3@ elements of type @GLfloat@.
  -> IO ()
glReplacementCodeuiColor4fNormal3fVertex3fvSUN = dyn_glReplacementCodeuiColor4fNormal3fVertex3fvSUN ptr_glReplacementCodeuiColor4fNormal3fVertex3fvSUN

foreign import CALLCONV "dynamic" dyn_glReplacementCodeuiColor4fNormal3fVertex3fvSUN
  :: FunPtr (Ptr GLuint -> Ptr GLfloat -> Ptr GLfloat -> Ptr GLfloat -> IO ())
  ->         Ptr GLuint -> Ptr GLfloat -> Ptr GLfloat -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glReplacementCodeuiColor4fNormal3fVertex3fvSUN #-}
ptr_glReplacementCodeuiColor4fNormal3fVertex3fvSUN :: FunPtr (Ptr GLuint -> Ptr GLfloat -> Ptr GLfloat -> Ptr GLfloat -> IO ())
ptr_glReplacementCodeuiColor4fNormal3fVertex3fvSUN = unsafePerformIO $ getCommand "glReplacementCodeuiColor4fNormal3fVertex3fvSUN"

-- glReplacementCodeuiColor4ubVertex3fSUN --------------------------------------

glReplacementCodeuiColor4ubVertex3fSUN
  :: GLuint -- ^ @rc@ of type @ReplacementCodeSUN@.
  -> GLubyte -- ^ @r@.
  -> GLubyte -- ^ @g@.
  -> GLubyte -- ^ @b@.
  -> GLubyte -- ^ @a@.
  -> GLfloat -- ^ @x@.
  -> GLfloat -- ^ @y@.
  -> GLfloat -- ^ @z@.
  -> IO ()
glReplacementCodeuiColor4ubVertex3fSUN = dyn_glReplacementCodeuiColor4ubVertex3fSUN ptr_glReplacementCodeuiColor4ubVertex3fSUN

foreign import CALLCONV "dynamic" dyn_glReplacementCodeuiColor4ubVertex3fSUN
  :: FunPtr (GLuint -> GLubyte -> GLubyte -> GLubyte -> GLubyte -> GLfloat -> GLfloat -> GLfloat -> IO ())
  ->         GLuint -> GLubyte -> GLubyte -> GLubyte -> GLubyte -> GLfloat -> GLfloat -> GLfloat -> IO ()

{-# NOINLINE ptr_glReplacementCodeuiColor4ubVertex3fSUN #-}
ptr_glReplacementCodeuiColor4ubVertex3fSUN :: FunPtr (GLuint -> GLubyte -> GLubyte -> GLubyte -> GLubyte -> GLfloat -> GLfloat -> GLfloat -> IO ())
ptr_glReplacementCodeuiColor4ubVertex3fSUN = unsafePerformIO $ getCommand "glReplacementCodeuiColor4ubVertex3fSUN"

-- glReplacementCodeuiColor4ubVertex3fvSUN -------------------------------------

glReplacementCodeuiColor4ubVertex3fvSUN
  :: Ptr GLuint -- ^ @rc@ pointing to @1@ elements of type @ReplacementCodeSUN@.
  -> Ptr GLubyte -- ^ @c@ pointing to @4@ elements of type @GLubyte@.
  -> Ptr GLfloat -- ^ @v@ pointing to @3@ elements of type @GLfloat@.
  -> IO ()
glReplacementCodeuiColor4ubVertex3fvSUN = dyn_glReplacementCodeuiColor4ubVertex3fvSUN ptr_glReplacementCodeuiColor4ubVertex3fvSUN

foreign import CALLCONV "dynamic" dyn_glReplacementCodeuiColor4ubVertex3fvSUN
  :: FunPtr (Ptr GLuint -> Ptr GLubyte -> Ptr GLfloat -> IO ())
  ->         Ptr GLuint -> Ptr GLubyte -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glReplacementCodeuiColor4ubVertex3fvSUN #-}
ptr_glReplacementCodeuiColor4ubVertex3fvSUN :: FunPtr (Ptr GLuint -> Ptr GLubyte -> Ptr GLfloat -> IO ())
ptr_glReplacementCodeuiColor4ubVertex3fvSUN = unsafePerformIO $ getCommand "glReplacementCodeuiColor4ubVertex3fvSUN"

-- glReplacementCodeuiNormal3fVertex3fSUN --------------------------------------

glReplacementCodeuiNormal3fVertex3fSUN
  :: GLuint -- ^ @rc@ of type @ReplacementCodeSUN@.
  -> GLfloat -- ^ @nx@.
  -> GLfloat -- ^ @ny@.
  -> GLfloat -- ^ @nz@.
  -> GLfloat -- ^ @x@.
  -> GLfloat -- ^ @y@.
  -> GLfloat -- ^ @z@.
  -> IO ()
glReplacementCodeuiNormal3fVertex3fSUN = dyn_glReplacementCodeuiNormal3fVertex3fSUN ptr_glReplacementCodeuiNormal3fVertex3fSUN

foreign import CALLCONV "dynamic" dyn_glReplacementCodeuiNormal3fVertex3fSUN
  :: FunPtr (GLuint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
  ->         GLuint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ()

{-# NOINLINE ptr_glReplacementCodeuiNormal3fVertex3fSUN #-}
ptr_glReplacementCodeuiNormal3fVertex3fSUN :: FunPtr (GLuint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
ptr_glReplacementCodeuiNormal3fVertex3fSUN = unsafePerformIO $ getCommand "glReplacementCodeuiNormal3fVertex3fSUN"

-- glReplacementCodeuiNormal3fVertex3fvSUN -------------------------------------

glReplacementCodeuiNormal3fVertex3fvSUN
  :: Ptr GLuint -- ^ @rc@ pointing to @1@ elements of type @ReplacementCodeSUN@.
  -> Ptr GLfloat -- ^ @n@ pointing to @3@ elements of type @GLfloat@.
  -> Ptr GLfloat -- ^ @v@ pointing to @3@ elements of type @GLfloat@.
  -> IO ()
glReplacementCodeuiNormal3fVertex3fvSUN = dyn_glReplacementCodeuiNormal3fVertex3fvSUN ptr_glReplacementCodeuiNormal3fVertex3fvSUN

foreign import CALLCONV "dynamic" dyn_glReplacementCodeuiNormal3fVertex3fvSUN
  :: FunPtr (Ptr GLuint -> Ptr GLfloat -> Ptr GLfloat -> IO ())
  ->         Ptr GLuint -> Ptr GLfloat -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glReplacementCodeuiNormal3fVertex3fvSUN #-}
ptr_glReplacementCodeuiNormal3fVertex3fvSUN :: FunPtr (Ptr GLuint -> Ptr GLfloat -> Ptr GLfloat -> IO ())
ptr_glReplacementCodeuiNormal3fVertex3fvSUN = unsafePerformIO $ getCommand "glReplacementCodeuiNormal3fVertex3fvSUN"

-- glReplacementCodeuiSUN ------------------------------------------------------

glReplacementCodeuiSUN
  :: GLuint -- ^ @code@.
  -> IO ()
glReplacementCodeuiSUN = dyn_glReplacementCodeuiSUN ptr_glReplacementCodeuiSUN

foreign import CALLCONV "dynamic" dyn_glReplacementCodeuiSUN
  :: FunPtr (GLuint -> IO ())
  ->         GLuint -> IO ()

{-# NOINLINE ptr_glReplacementCodeuiSUN #-}
ptr_glReplacementCodeuiSUN :: FunPtr (GLuint -> IO ())
ptr_glReplacementCodeuiSUN = unsafePerformIO $ getCommand "glReplacementCodeuiSUN"

-- glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fSUN ---------------------

glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fSUN
  :: GLuint -- ^ @rc@ of type @ReplacementCodeSUN@.
  -> GLfloat -- ^ @s@.
  -> GLfloat -- ^ @t@.
  -> GLfloat -- ^ @r@.
  -> GLfloat -- ^ @g@.
  -> GLfloat -- ^ @b@.
  -> GLfloat -- ^ @a@.
  -> GLfloat -- ^ @nx@.
  -> GLfloat -- ^ @ny@.
  -> GLfloat -- ^ @nz@.
  -> GLfloat -- ^ @x@.
  -> GLfloat -- ^ @y@.
  -> GLfloat -- ^ @z@.
  -> IO ()
glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fSUN = dyn_glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fSUN ptr_glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fSUN

foreign import CALLCONV "dynamic" dyn_glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fSUN
  :: FunPtr (GLuint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
  ->         GLuint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ()

{-# NOINLINE ptr_glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fSUN #-}
ptr_glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fSUN :: FunPtr (GLuint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
ptr_glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fSUN = unsafePerformIO $ getCommand "glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fSUN"

-- glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fvSUN --------------------

glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fvSUN
  :: Ptr GLuint -- ^ @rc@ pointing to @1@ elements of type @ReplacementCodeSUN@.
  -> Ptr GLfloat -- ^ @tc@ pointing to @2@ elements of type @GLfloat@.
  -> Ptr GLfloat -- ^ @c@ pointing to @4@ elements of type @GLfloat@.
  -> Ptr GLfloat -- ^ @n@ pointing to @3@ elements of type @GLfloat@.
  -> Ptr GLfloat -- ^ @v@ pointing to @3@ elements of type @GLfloat@.
  -> IO ()
glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fvSUN = dyn_glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fvSUN ptr_glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fvSUN

foreign import CALLCONV "dynamic" dyn_glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fvSUN
  :: FunPtr (Ptr GLuint -> Ptr GLfloat -> Ptr GLfloat -> Ptr GLfloat -> Ptr GLfloat -> IO ())
  ->         Ptr GLuint -> Ptr GLfloat -> Ptr GLfloat -> Ptr GLfloat -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fvSUN #-}
ptr_glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fvSUN :: FunPtr (Ptr GLuint -> Ptr GLfloat -> Ptr GLfloat -> Ptr GLfloat -> Ptr GLfloat -> IO ())
ptr_glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fvSUN = unsafePerformIO $ getCommand "glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fvSUN"

-- glReplacementCodeuiTexCoord2fNormal3fVertex3fSUN ----------------------------

glReplacementCodeuiTexCoord2fNormal3fVertex3fSUN
  :: GLuint -- ^ @rc@ of type @ReplacementCodeSUN@.
  -> GLfloat -- ^ @s@.
  -> GLfloat -- ^ @t@.
  -> GLfloat -- ^ @nx@.
  -> GLfloat -- ^ @ny@.
  -> GLfloat -- ^ @nz@.
  -> GLfloat -- ^ @x@.
  -> GLfloat -- ^ @y@.
  -> GLfloat -- ^ @z@.
  -> IO ()
glReplacementCodeuiTexCoord2fNormal3fVertex3fSUN = dyn_glReplacementCodeuiTexCoord2fNormal3fVertex3fSUN ptr_glReplacementCodeuiTexCoord2fNormal3fVertex3fSUN

foreign import CALLCONV "dynamic" dyn_glReplacementCodeuiTexCoord2fNormal3fVertex3fSUN
  :: FunPtr (GLuint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
  ->         GLuint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ()

{-# NOINLINE ptr_glReplacementCodeuiTexCoord2fNormal3fVertex3fSUN #-}
ptr_glReplacementCodeuiTexCoord2fNormal3fVertex3fSUN :: FunPtr (GLuint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
ptr_glReplacementCodeuiTexCoord2fNormal3fVertex3fSUN = unsafePerformIO $ getCommand "glReplacementCodeuiTexCoord2fNormal3fVertex3fSUN"

-- glReplacementCodeuiTexCoord2fNormal3fVertex3fvSUN ---------------------------

glReplacementCodeuiTexCoord2fNormal3fVertex3fvSUN
  :: Ptr GLuint -- ^ @rc@ pointing to @1@ elements of type @ReplacementCodeSUN@.
  -> Ptr GLfloat -- ^ @tc@ pointing to @2@ elements of type @GLfloat@.
  -> Ptr GLfloat -- ^ @n@ pointing to @3@ elements of type @GLfloat@.
  -> Ptr GLfloat -- ^ @v@ pointing to @3@ elements of type @GLfloat@.
  -> IO ()
glReplacementCodeuiTexCoord2fNormal3fVertex3fvSUN = dyn_glReplacementCodeuiTexCoord2fNormal3fVertex3fvSUN ptr_glReplacementCodeuiTexCoord2fNormal3fVertex3fvSUN

foreign import CALLCONV "dynamic" dyn_glReplacementCodeuiTexCoord2fNormal3fVertex3fvSUN
  :: FunPtr (Ptr GLuint -> Ptr GLfloat -> Ptr GLfloat -> Ptr GLfloat -> IO ())
  ->         Ptr GLuint -> Ptr GLfloat -> Ptr GLfloat -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glReplacementCodeuiTexCoord2fNormal3fVertex3fvSUN #-}
ptr_glReplacementCodeuiTexCoord2fNormal3fVertex3fvSUN :: FunPtr (Ptr GLuint -> Ptr GLfloat -> Ptr GLfloat -> Ptr GLfloat -> IO ())
ptr_glReplacementCodeuiTexCoord2fNormal3fVertex3fvSUN = unsafePerformIO $ getCommand "glReplacementCodeuiTexCoord2fNormal3fVertex3fvSUN"

-- glReplacementCodeuiTexCoord2fVertex3fSUN ------------------------------------

glReplacementCodeuiTexCoord2fVertex3fSUN
  :: GLuint -- ^ @rc@ of type @ReplacementCodeSUN@.
  -> GLfloat -- ^ @s@.
  -> GLfloat -- ^ @t@.
  -> GLfloat -- ^ @x@.
  -> GLfloat -- ^ @y@.
  -> GLfloat -- ^ @z@.
  -> IO ()
glReplacementCodeuiTexCoord2fVertex3fSUN = dyn_glReplacementCodeuiTexCoord2fVertex3fSUN ptr_glReplacementCodeuiTexCoord2fVertex3fSUN

foreign import CALLCONV "dynamic" dyn_glReplacementCodeuiTexCoord2fVertex3fSUN
  :: FunPtr (GLuint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
  ->         GLuint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ()

{-# NOINLINE ptr_glReplacementCodeuiTexCoord2fVertex3fSUN #-}
ptr_glReplacementCodeuiTexCoord2fVertex3fSUN :: FunPtr (GLuint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
ptr_glReplacementCodeuiTexCoord2fVertex3fSUN = unsafePerformIO $ getCommand "glReplacementCodeuiTexCoord2fVertex3fSUN"

-- glReplacementCodeuiTexCoord2fVertex3fvSUN -----------------------------------

glReplacementCodeuiTexCoord2fVertex3fvSUN
  :: Ptr GLuint -- ^ @rc@ pointing to @1@ elements of type @ReplacementCodeSUN@.
  -> Ptr GLfloat -- ^ @tc@ pointing to @2@ elements of type @GLfloat@.
  -> Ptr GLfloat -- ^ @v@ pointing to @3@ elements of type @GLfloat@.
  -> IO ()
glReplacementCodeuiTexCoord2fVertex3fvSUN = dyn_glReplacementCodeuiTexCoord2fVertex3fvSUN ptr_glReplacementCodeuiTexCoord2fVertex3fvSUN

foreign import CALLCONV "dynamic" dyn_glReplacementCodeuiTexCoord2fVertex3fvSUN
  :: FunPtr (Ptr GLuint -> Ptr GLfloat -> Ptr GLfloat -> IO ())
  ->         Ptr GLuint -> Ptr GLfloat -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glReplacementCodeuiTexCoord2fVertex3fvSUN #-}
ptr_glReplacementCodeuiTexCoord2fVertex3fvSUN :: FunPtr (Ptr GLuint -> Ptr GLfloat -> Ptr GLfloat -> IO ())
ptr_glReplacementCodeuiTexCoord2fVertex3fvSUN = unsafePerformIO $ getCommand "glReplacementCodeuiTexCoord2fVertex3fvSUN"

-- glReplacementCodeuiVertex3fSUN ----------------------------------------------

glReplacementCodeuiVertex3fSUN
  :: GLuint -- ^ @rc@ of type @ReplacementCodeSUN@.
  -> GLfloat -- ^ @x@.
  -> GLfloat -- ^ @y@.
  -> GLfloat -- ^ @z@.
  -> IO ()
glReplacementCodeuiVertex3fSUN = dyn_glReplacementCodeuiVertex3fSUN ptr_glReplacementCodeuiVertex3fSUN

foreign import CALLCONV "dynamic" dyn_glReplacementCodeuiVertex3fSUN
  :: FunPtr (GLuint -> GLfloat -> GLfloat -> GLfloat -> IO ())
  ->         GLuint -> GLfloat -> GLfloat -> GLfloat -> IO ()

{-# NOINLINE ptr_glReplacementCodeuiVertex3fSUN #-}
ptr_glReplacementCodeuiVertex3fSUN :: FunPtr (GLuint -> GLfloat -> GLfloat -> GLfloat -> IO ())
ptr_glReplacementCodeuiVertex3fSUN = unsafePerformIO $ getCommand "glReplacementCodeuiVertex3fSUN"

-- glReplacementCodeuiVertex3fvSUN ---------------------------------------------

glReplacementCodeuiVertex3fvSUN
  :: Ptr GLuint -- ^ @rc@ pointing to @1@ elements of type @ReplacementCodeSUN@.
  -> Ptr GLfloat -- ^ @v@ pointing to @3@ elements of type @GLfloat@.
  -> IO ()
glReplacementCodeuiVertex3fvSUN = dyn_glReplacementCodeuiVertex3fvSUN ptr_glReplacementCodeuiVertex3fvSUN

foreign import CALLCONV "dynamic" dyn_glReplacementCodeuiVertex3fvSUN
  :: FunPtr (Ptr GLuint -> Ptr GLfloat -> IO ())
  ->         Ptr GLuint -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glReplacementCodeuiVertex3fvSUN #-}
ptr_glReplacementCodeuiVertex3fvSUN :: FunPtr (Ptr GLuint -> Ptr GLfloat -> IO ())
ptr_glReplacementCodeuiVertex3fvSUN = unsafePerformIO $ getCommand "glReplacementCodeuiVertex3fvSUN"

-- glReplacementCodeuivSUN -----------------------------------------------------

glReplacementCodeuivSUN
  :: Ptr GLuint -- ^ @code@ pointing to @COMPSIZE()@ elements of type @GLuint@.
  -> IO ()
glReplacementCodeuivSUN = dyn_glReplacementCodeuivSUN ptr_glReplacementCodeuivSUN

foreign import CALLCONV "dynamic" dyn_glReplacementCodeuivSUN
  :: FunPtr (Ptr GLuint -> IO ())
  ->         Ptr GLuint -> IO ()

{-# NOINLINE ptr_glReplacementCodeuivSUN #-}
ptr_glReplacementCodeuivSUN :: FunPtr (Ptr GLuint -> IO ())
ptr_glReplacementCodeuivSUN = unsafePerformIO $ getCommand "glReplacementCodeuivSUN"

-- glReplacementCodeusSUN ------------------------------------------------------

glReplacementCodeusSUN
  :: GLushort -- ^ @code@.
  -> IO ()
glReplacementCodeusSUN = dyn_glReplacementCodeusSUN ptr_glReplacementCodeusSUN

foreign import CALLCONV "dynamic" dyn_glReplacementCodeusSUN
  :: FunPtr (GLushort -> IO ())
  ->         GLushort -> IO ()

{-# NOINLINE ptr_glReplacementCodeusSUN #-}
ptr_glReplacementCodeusSUN :: FunPtr (GLushort -> IO ())
ptr_glReplacementCodeusSUN = unsafePerformIO $ getCommand "glReplacementCodeusSUN"

-- glReplacementCodeusvSUN -----------------------------------------------------

glReplacementCodeusvSUN
  :: Ptr GLushort -- ^ @code@ pointing to @COMPSIZE()@ elements of type @GLushort@.
  -> IO ()
glReplacementCodeusvSUN = dyn_glReplacementCodeusvSUN ptr_glReplacementCodeusvSUN

foreign import CALLCONV "dynamic" dyn_glReplacementCodeusvSUN
  :: FunPtr (Ptr GLushort -> IO ())
  ->         Ptr GLushort -> IO ()

{-# NOINLINE ptr_glReplacementCodeusvSUN #-}
ptr_glReplacementCodeusvSUN :: FunPtr (Ptr GLushort -> IO ())
ptr_glReplacementCodeusvSUN = unsafePerformIO $ getCommand "glReplacementCodeusvSUN"

-- glRequestResidentProgramsNV -------------------------------------------------

glRequestResidentProgramsNV
  :: GLsizei -- ^ @n@.
  -> Ptr GLuint -- ^ @programs@ pointing to @n@ elements of type @GLuint@.
  -> IO ()
glRequestResidentProgramsNV = dyn_glRequestResidentProgramsNV ptr_glRequestResidentProgramsNV

foreign import CALLCONV "dynamic" dyn_glRequestResidentProgramsNV
  :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
  ->         GLsizei -> Ptr GLuint -> IO ()

{-# NOINLINE ptr_glRequestResidentProgramsNV #-}
ptr_glRequestResidentProgramsNV :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
ptr_glRequestResidentProgramsNV = unsafePerformIO $ getCommand "glRequestResidentProgramsNV"

-- glResetHistogram ------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glResetHistogram.xml OpenGL 2.x>
glResetHistogram
  :: GLenum -- ^ @target@ of type @HistogramTarget@.
  -> IO ()
glResetHistogram = dyn_glResetHistogram ptr_glResetHistogram

foreign import CALLCONV "dynamic" dyn_glResetHistogram
  :: FunPtr (GLenum -> IO ())
  ->         GLenum -> IO ()

{-# NOINLINE ptr_glResetHistogram #-}
ptr_glResetHistogram :: FunPtr (GLenum -> IO ())
ptr_glResetHistogram = unsafePerformIO $ getCommand "glResetHistogram"

-- glResetHistogramEXT ---------------------------------------------------------

glResetHistogramEXT
  :: GLenum -- ^ @target@ of type @HistogramTargetEXT@.
  -> IO ()
glResetHistogramEXT = dyn_glResetHistogramEXT ptr_glResetHistogramEXT

foreign import CALLCONV "dynamic" dyn_glResetHistogramEXT
  :: FunPtr (GLenum -> IO ())
  ->         GLenum -> IO ()

{-# NOINLINE ptr_glResetHistogramEXT #-}
ptr_glResetHistogramEXT :: FunPtr (GLenum -> IO ())
ptr_glResetHistogramEXT = unsafePerformIO $ getCommand "glResetHistogramEXT"

-- glResetMinmax ---------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glResetMinmax.xml OpenGL 2.x>
glResetMinmax
  :: GLenum -- ^ @target@ of type @MinmaxTarget@.
  -> IO ()
glResetMinmax = dyn_glResetMinmax ptr_glResetMinmax

foreign import CALLCONV "dynamic" dyn_glResetMinmax
  :: FunPtr (GLenum -> IO ())
  ->         GLenum -> IO ()

{-# NOINLINE ptr_glResetMinmax #-}
ptr_glResetMinmax :: FunPtr (GLenum -> IO ())
ptr_glResetMinmax = unsafePerformIO $ getCommand "glResetMinmax"

-- glResetMinmaxEXT ------------------------------------------------------------

glResetMinmaxEXT
  :: GLenum -- ^ @target@ of type @MinmaxTargetEXT@.
  -> IO ()
glResetMinmaxEXT = dyn_glResetMinmaxEXT ptr_glResetMinmaxEXT

foreign import CALLCONV "dynamic" dyn_glResetMinmaxEXT
  :: FunPtr (GLenum -> IO ())
  ->         GLenum -> IO ()

{-# NOINLINE ptr_glResetMinmaxEXT #-}
ptr_glResetMinmaxEXT :: FunPtr (GLenum -> IO ())
ptr_glResetMinmaxEXT = unsafePerformIO $ getCommand "glResetMinmaxEXT"

-- glResizeBuffersMESA ---------------------------------------------------------

glResizeBuffersMESA
  :: IO ()
glResizeBuffersMESA = dyn_glResizeBuffersMESA ptr_glResizeBuffersMESA

foreign import CALLCONV "dynamic" dyn_glResizeBuffersMESA
  :: FunPtr (IO ())
  ->         IO ()

{-# NOINLINE ptr_glResizeBuffersMESA #-}
ptr_glResizeBuffersMESA :: FunPtr (IO ())
ptr_glResizeBuffersMESA = unsafePerformIO $ getCommand "glResizeBuffersMESA"

-- glResolveDepthValuesNV ------------------------------------------------------

glResolveDepthValuesNV
  :: IO ()
glResolveDepthValuesNV = dyn_glResolveDepthValuesNV ptr_glResolveDepthValuesNV

foreign import CALLCONV "dynamic" dyn_glResolveDepthValuesNV
  :: FunPtr (IO ())
  ->         IO ()

{-# NOINLINE ptr_glResolveDepthValuesNV #-}
ptr_glResolveDepthValuesNV :: FunPtr (IO ())
ptr_glResolveDepthValuesNV = unsafePerformIO $ getCommand "glResolveDepthValuesNV"

-- glResolveMultisampleFramebufferAPPLE ----------------------------------------

glResolveMultisampleFramebufferAPPLE
  :: IO ()
glResolveMultisampleFramebufferAPPLE = dyn_glResolveMultisampleFramebufferAPPLE ptr_glResolveMultisampleFramebufferAPPLE

foreign import CALLCONV "dynamic" dyn_glResolveMultisampleFramebufferAPPLE
  :: FunPtr (IO ())
  ->         IO ()

{-# NOINLINE ptr_glResolveMultisampleFramebufferAPPLE #-}
ptr_glResolveMultisampleFramebufferAPPLE :: FunPtr (IO ())
ptr_glResolveMultisampleFramebufferAPPLE = unsafePerformIO $ getCommand "glResolveMultisampleFramebufferAPPLE"

-- glResumeTransformFeedback ---------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glResumeTransformFeedback.xhtml OpenGL 4.x>
glResumeTransformFeedback
  :: IO ()
glResumeTransformFeedback = dyn_glResumeTransformFeedback ptr_glResumeTransformFeedback

foreign import CALLCONV "dynamic" dyn_glResumeTransformFeedback
  :: FunPtr (IO ())
  ->         IO ()

{-# NOINLINE ptr_glResumeTransformFeedback #-}
ptr_glResumeTransformFeedback :: FunPtr (IO ())
ptr_glResumeTransformFeedback = unsafePerformIO $ getCommand "glResumeTransformFeedback"

-- glResumeTransformFeedbackNV -------------------------------------------------

glResumeTransformFeedbackNV
  :: IO ()
glResumeTransformFeedbackNV = dyn_glResumeTransformFeedbackNV ptr_glResumeTransformFeedbackNV

foreign import CALLCONV "dynamic" dyn_glResumeTransformFeedbackNV
  :: FunPtr (IO ())
  ->         IO ()

{-# NOINLINE ptr_glResumeTransformFeedbackNV #-}
ptr_glResumeTransformFeedbackNV :: FunPtr (IO ())
ptr_glResumeTransformFeedbackNV = unsafePerformIO $ getCommand "glResumeTransformFeedbackNV"

-- glRotated -------------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glRotate.xml OpenGL 2.x>
glRotated
  :: GLdouble -- ^ @angle@.
  -> GLdouble -- ^ @x@.
  -> GLdouble -- ^ @y@.
  -> GLdouble -- ^ @z@.
  -> IO ()
glRotated = dyn_glRotated ptr_glRotated

foreign import CALLCONV "dynamic" dyn_glRotated
  :: FunPtr (GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ())
  ->         GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ()

{-# NOINLINE ptr_glRotated #-}
ptr_glRotated :: FunPtr (GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ())
ptr_glRotated = unsafePerformIO $ getCommand "glRotated"

-- glRotatef -------------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glRotate.xml OpenGL 2.x>
glRotatef
  :: GLfloat -- ^ @angle@.
  -> GLfloat -- ^ @x@.
  -> GLfloat -- ^ @y@.
  -> GLfloat -- ^ @z@.
  -> IO ()
glRotatef = dyn_glRotatef ptr_glRotatef

foreign import CALLCONV "dynamic" dyn_glRotatef
  :: FunPtr (GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
  ->         GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ()

{-# NOINLINE ptr_glRotatef #-}
ptr_glRotatef :: FunPtr (GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
ptr_glRotatef = unsafePerformIO $ getCommand "glRotatef"

-- glRotatex -------------------------------------------------------------------

glRotatex
  :: GLfixed -- ^ @angle@.
  -> GLfixed -- ^ @x@.
  -> GLfixed -- ^ @y@.
  -> GLfixed -- ^ @z@.
  -> IO ()
glRotatex = dyn_glRotatex ptr_glRotatex

foreign import CALLCONV "dynamic" dyn_glRotatex
  :: FunPtr (GLfixed -> GLfixed -> GLfixed -> GLfixed -> IO ())
  ->         GLfixed -> GLfixed -> GLfixed -> GLfixed -> IO ()

{-# NOINLINE ptr_glRotatex #-}
ptr_glRotatex :: FunPtr (GLfixed -> GLfixed -> GLfixed -> GLfixed -> IO ())
ptr_glRotatex = unsafePerformIO $ getCommand "glRotatex"

-- glRotatexOES ----------------------------------------------------------------

glRotatexOES
  :: GLfixed -- ^ @angle@.
  -> GLfixed -- ^ @x@.
  -> GLfixed -- ^ @y@.
  -> GLfixed -- ^ @z@.
  -> IO ()
glRotatexOES = dyn_glRotatexOES ptr_glRotatexOES

foreign import CALLCONV "dynamic" dyn_glRotatexOES
  :: FunPtr (GLfixed -> GLfixed -> GLfixed -> GLfixed -> IO ())
  ->         GLfixed -> GLfixed -> GLfixed -> GLfixed -> IO ()

{-# NOINLINE ptr_glRotatexOES #-}
ptr_glRotatexOES :: FunPtr (GLfixed -> GLfixed -> GLfixed -> GLfixed -> IO ())
ptr_glRotatexOES = unsafePerformIO $ getCommand "glRotatexOES"

-- glSampleCoverage ------------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glSampleCoverage.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glSampleCoverage.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glSampleCoverage.xhtml OpenGL 4.x>
glSampleCoverage
  :: GLfloat -- ^ @value@.
  -> GLboolean -- ^ @invert@ of type @Boolean@.
  -> IO ()
glSampleCoverage = dyn_glSampleCoverage ptr_glSampleCoverage

foreign import CALLCONV "dynamic" dyn_glSampleCoverage
  :: FunPtr (GLfloat -> GLboolean -> IO ())
  ->         GLfloat -> GLboolean -> IO ()

{-# NOINLINE ptr_glSampleCoverage #-}
ptr_glSampleCoverage :: FunPtr (GLfloat -> GLboolean -> IO ())
ptr_glSampleCoverage = unsafePerformIO $ getCommand "glSampleCoverage"

-- glSampleCoverageARB ---------------------------------------------------------

glSampleCoverageARB
  :: GLfloat -- ^ @value@.
  -> GLboolean -- ^ @invert@ of type @Boolean@.
  -> IO ()
glSampleCoverageARB = dyn_glSampleCoverageARB ptr_glSampleCoverageARB

foreign import CALLCONV "dynamic" dyn_glSampleCoverageARB
  :: FunPtr (GLfloat -> GLboolean -> IO ())
  ->         GLfloat -> GLboolean -> IO ()

{-# NOINLINE ptr_glSampleCoverageARB #-}
ptr_glSampleCoverageARB :: FunPtr (GLfloat -> GLboolean -> IO ())
ptr_glSampleCoverageARB = unsafePerformIO $ getCommand "glSampleCoverageARB"

-- glSampleCoverageOES ---------------------------------------------------------

glSampleCoverageOES
  :: GLfixed -- ^ @value@ of type @ClampedFixed@.
  -> GLboolean -- ^ @invert@ of type @Boolean@.
  -> IO ()
glSampleCoverageOES = dyn_glSampleCoverageOES ptr_glSampleCoverageOES

foreign import CALLCONV "dynamic" dyn_glSampleCoverageOES
  :: FunPtr (GLfixed -> GLboolean -> IO ())
  ->         GLfixed -> GLboolean -> IO ()

{-# NOINLINE ptr_glSampleCoverageOES #-}
ptr_glSampleCoverageOES :: FunPtr (GLfixed -> GLboolean -> IO ())
ptr_glSampleCoverageOES = unsafePerformIO $ getCommand "glSampleCoverageOES"

-- glSampleCoveragex -----------------------------------------------------------

glSampleCoveragex
  :: GLclampx -- ^ @value@.
  -> GLboolean -- ^ @invert@.
  -> IO ()
glSampleCoveragex = dyn_glSampleCoveragex ptr_glSampleCoveragex

foreign import CALLCONV "dynamic" dyn_glSampleCoveragex
  :: FunPtr (GLclampx -> GLboolean -> IO ())
  ->         GLclampx -> GLboolean -> IO ()

{-# NOINLINE ptr_glSampleCoveragex #-}
ptr_glSampleCoveragex :: FunPtr (GLclampx -> GLboolean -> IO ())
ptr_glSampleCoveragex = unsafePerformIO $ getCommand "glSampleCoveragex"

-- glSampleCoveragexOES --------------------------------------------------------

glSampleCoveragexOES
  :: GLclampx -- ^ @value@.
  -> GLboolean -- ^ @invert@.
  -> IO ()
glSampleCoveragexOES = dyn_glSampleCoveragexOES ptr_glSampleCoveragexOES

foreign import CALLCONV "dynamic" dyn_glSampleCoveragexOES
  :: FunPtr (GLclampx -> GLboolean -> IO ())
  ->         GLclampx -> GLboolean -> IO ()

{-# NOINLINE ptr_glSampleCoveragexOES #-}
ptr_glSampleCoveragexOES :: FunPtr (GLclampx -> GLboolean -> IO ())
ptr_glSampleCoveragexOES = unsafePerformIO $ getCommand "glSampleCoveragexOES"

-- glSampleMapATI --------------------------------------------------------------

glSampleMapATI
  :: GLuint -- ^ @dst@.
  -> GLuint -- ^ @interp@.
  -> GLenum -- ^ @swizzle@ of type @SwizzleOpATI@.
  -> IO ()
glSampleMapATI = dyn_glSampleMapATI ptr_glSampleMapATI

foreign import CALLCONV "dynamic" dyn_glSampleMapATI
  :: FunPtr (GLuint -> GLuint -> GLenum -> IO ())
  ->         GLuint -> GLuint -> GLenum -> IO ()

{-# NOINLINE ptr_glSampleMapATI #-}
ptr_glSampleMapATI :: FunPtr (GLuint -> GLuint -> GLenum -> IO ())
ptr_glSampleMapATI = unsafePerformIO $ getCommand "glSampleMapATI"

-- glSampleMaskEXT -------------------------------------------------------------

glSampleMaskEXT
  :: GLclampf -- ^ @value@ of type @ClampedFloat32@.
  -> GLboolean -- ^ @invert@ of type @Boolean@.
  -> IO ()
glSampleMaskEXT = dyn_glSampleMaskEXT ptr_glSampleMaskEXT

foreign import CALLCONV "dynamic" dyn_glSampleMaskEXT
  :: FunPtr (GLclampf -> GLboolean -> IO ())
  ->         GLclampf -> GLboolean -> IO ()

{-# NOINLINE ptr_glSampleMaskEXT #-}
ptr_glSampleMaskEXT :: FunPtr (GLclampf -> GLboolean -> IO ())
ptr_glSampleMaskEXT = unsafePerformIO $ getCommand "glSampleMaskEXT"

-- glSampleMaskIndexedNV -------------------------------------------------------

glSampleMaskIndexedNV
  :: GLuint -- ^ @index@.
  -> GLbitfield -- ^ @mask@ of type @SampleMaskNV@.
  -> IO ()
glSampleMaskIndexedNV = dyn_glSampleMaskIndexedNV ptr_glSampleMaskIndexedNV

foreign import CALLCONV "dynamic" dyn_glSampleMaskIndexedNV
  :: FunPtr (GLuint -> GLbitfield -> IO ())
  ->         GLuint -> GLbitfield -> IO ()

{-# NOINLINE ptr_glSampleMaskIndexedNV #-}
ptr_glSampleMaskIndexedNV :: FunPtr (GLuint -> GLbitfield -> IO ())
ptr_glSampleMaskIndexedNV = unsafePerformIO $ getCommand "glSampleMaskIndexedNV"

-- glSampleMaskSGIS ------------------------------------------------------------

glSampleMaskSGIS
  :: GLclampf -- ^ @value@ of type @ClampedFloat32@.
  -> GLboolean -- ^ @invert@ of type @Boolean@.
  -> IO ()
glSampleMaskSGIS = dyn_glSampleMaskSGIS ptr_glSampleMaskSGIS

foreign import CALLCONV "dynamic" dyn_glSampleMaskSGIS
  :: FunPtr (GLclampf -> GLboolean -> IO ())
  ->         GLclampf -> GLboolean -> IO ()

{-# NOINLINE ptr_glSampleMaskSGIS #-}
ptr_glSampleMaskSGIS :: FunPtr (GLclampf -> GLboolean -> IO ())
ptr_glSampleMaskSGIS = unsafePerformIO $ getCommand "glSampleMaskSGIS"

-- glSampleMaski ---------------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glSampleMaski.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glSampleMaski.xhtml OpenGL 4.x>
glSampleMaski
  :: GLuint -- ^ @maskNumber@.
  -> GLbitfield -- ^ @mask@.
  -> IO ()
glSampleMaski = dyn_glSampleMaski ptr_glSampleMaski

foreign import CALLCONV "dynamic" dyn_glSampleMaski
  :: FunPtr (GLuint -> GLbitfield -> IO ())
  ->         GLuint -> GLbitfield -> IO ()

{-# NOINLINE ptr_glSampleMaski #-}
ptr_glSampleMaski :: FunPtr (GLuint -> GLbitfield -> IO ())
ptr_glSampleMaski = unsafePerformIO $ getCommand "glSampleMaski"

-- glSamplePatternEXT ----------------------------------------------------------

glSamplePatternEXT
  :: GLenum -- ^ @pattern@ of type @SamplePatternEXT@.
  -> IO ()
glSamplePatternEXT = dyn_glSamplePatternEXT ptr_glSamplePatternEXT

foreign import CALLCONV "dynamic" dyn_glSamplePatternEXT
  :: FunPtr (GLenum -> IO ())
  ->         GLenum -> IO ()

{-# NOINLINE ptr_glSamplePatternEXT #-}
ptr_glSamplePatternEXT :: FunPtr (GLenum -> IO ())
ptr_glSamplePatternEXT = unsafePerformIO $ getCommand "glSamplePatternEXT"

-- glSamplePatternSGIS ---------------------------------------------------------

glSamplePatternSGIS
  :: GLenum -- ^ @pattern@ of type @SamplePatternSGIS@.
  -> IO ()
glSamplePatternSGIS = dyn_glSamplePatternSGIS ptr_glSamplePatternSGIS

foreign import CALLCONV "dynamic" dyn_glSamplePatternSGIS
  :: FunPtr (GLenum -> IO ())
  ->         GLenum -> IO ()

{-# NOINLINE ptr_glSamplePatternSGIS #-}
ptr_glSamplePatternSGIS :: FunPtr (GLenum -> IO ())
ptr_glSamplePatternSGIS = unsafePerformIO $ getCommand "glSamplePatternSGIS"

-- glSamplerParameterIiv -------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glSamplerParameter.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glSamplerParameter.xhtml OpenGL 4.x>
glSamplerParameterIiv
  :: GLuint -- ^ @sampler@.
  -> GLenum -- ^ @pname@.
  -> Ptr GLint -- ^ @param@ pointing to @COMPSIZE(pname)@ elements of type @GLint@.
  -> IO ()
glSamplerParameterIiv = dyn_glSamplerParameterIiv ptr_glSamplerParameterIiv

foreign import CALLCONV "dynamic" dyn_glSamplerParameterIiv
  :: FunPtr (GLuint -> GLenum -> Ptr GLint -> IO ())
  ->         GLuint -> GLenum -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glSamplerParameterIiv #-}
ptr_glSamplerParameterIiv :: FunPtr (GLuint -> GLenum -> Ptr GLint -> IO ())
ptr_glSamplerParameterIiv = unsafePerformIO $ getCommand "glSamplerParameterIiv"

-- glSamplerParameterIivEXT ----------------------------------------------------

glSamplerParameterIivEXT
  :: GLuint -- ^ @sampler@.
  -> GLenum -- ^ @pname@.
  -> Ptr GLint -- ^ @param@ pointing to @COMPSIZE(pname)@ elements of type @GLint@.
  -> IO ()
glSamplerParameterIivEXT = dyn_glSamplerParameterIivEXT ptr_glSamplerParameterIivEXT

foreign import CALLCONV "dynamic" dyn_glSamplerParameterIivEXT
  :: FunPtr (GLuint -> GLenum -> Ptr GLint -> IO ())
  ->         GLuint -> GLenum -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glSamplerParameterIivEXT #-}
ptr_glSamplerParameterIivEXT :: FunPtr (GLuint -> GLenum -> Ptr GLint -> IO ())
ptr_glSamplerParameterIivEXT = unsafePerformIO $ getCommand "glSamplerParameterIivEXT"

-- glSamplerParameterIivOES ----------------------------------------------------

glSamplerParameterIivOES
  :: GLuint -- ^ @sampler@.
  -> GLenum -- ^ @pname@.
  -> Ptr GLint -- ^ @param@ pointing to @COMPSIZE(pname)@ elements of type @GLint@.
  -> IO ()
glSamplerParameterIivOES = dyn_glSamplerParameterIivOES ptr_glSamplerParameterIivOES

foreign import CALLCONV "dynamic" dyn_glSamplerParameterIivOES
  :: FunPtr (GLuint -> GLenum -> Ptr GLint -> IO ())
  ->         GLuint -> GLenum -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glSamplerParameterIivOES #-}
ptr_glSamplerParameterIivOES :: FunPtr (GLuint -> GLenum -> Ptr GLint -> IO ())
ptr_glSamplerParameterIivOES = unsafePerformIO $ getCommand "glSamplerParameterIivOES"

-- glSamplerParameterIuiv ------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glSamplerParameter.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glSamplerParameter.xhtml OpenGL 4.x>
glSamplerParameterIuiv
  :: GLuint -- ^ @sampler@.
  -> GLenum -- ^ @pname@.
  -> Ptr GLuint -- ^ @param@ pointing to @COMPSIZE(pname)@ elements of type @GLuint@.
  -> IO ()
glSamplerParameterIuiv = dyn_glSamplerParameterIuiv ptr_glSamplerParameterIuiv

foreign import CALLCONV "dynamic" dyn_glSamplerParameterIuiv
  :: FunPtr (GLuint -> GLenum -> Ptr GLuint -> IO ())
  ->         GLuint -> GLenum -> Ptr GLuint -> IO ()

{-# NOINLINE ptr_glSamplerParameterIuiv #-}
ptr_glSamplerParameterIuiv :: FunPtr (GLuint -> GLenum -> Ptr GLuint -> IO ())
ptr_glSamplerParameterIuiv = unsafePerformIO $ getCommand "glSamplerParameterIuiv"

-- glSamplerParameterIuivEXT ---------------------------------------------------

glSamplerParameterIuivEXT
  :: GLuint -- ^ @sampler@.
  -> GLenum -- ^ @pname@.
  -> Ptr GLuint -- ^ @param@ pointing to @COMPSIZE(pname)@ elements of type @GLuint@.
  -> IO ()
glSamplerParameterIuivEXT = dyn_glSamplerParameterIuivEXT ptr_glSamplerParameterIuivEXT

foreign import CALLCONV "dynamic" dyn_glSamplerParameterIuivEXT
  :: FunPtr (GLuint -> GLenum -> Ptr GLuint -> IO ())
  ->         GLuint -> GLenum -> Ptr GLuint -> IO ()

{-# NOINLINE ptr_glSamplerParameterIuivEXT #-}
ptr_glSamplerParameterIuivEXT :: FunPtr (GLuint -> GLenum -> Ptr GLuint -> IO ())
ptr_glSamplerParameterIuivEXT = unsafePerformIO $ getCommand "glSamplerParameterIuivEXT"

-- glSamplerParameterIuivOES ---------------------------------------------------

glSamplerParameterIuivOES
  :: GLuint -- ^ @sampler@.
  -> GLenum -- ^ @pname@.
  -> Ptr GLuint -- ^ @param@ pointing to @COMPSIZE(pname)@ elements of type @GLuint@.
  -> IO ()
glSamplerParameterIuivOES = dyn_glSamplerParameterIuivOES ptr_glSamplerParameterIuivOES

foreign import CALLCONV "dynamic" dyn_glSamplerParameterIuivOES
  :: FunPtr (GLuint -> GLenum -> Ptr GLuint -> IO ())
  ->         GLuint -> GLenum -> Ptr GLuint -> IO ()

{-# NOINLINE ptr_glSamplerParameterIuivOES #-}
ptr_glSamplerParameterIuivOES :: FunPtr (GLuint -> GLenum -> Ptr GLuint -> IO ())
ptr_glSamplerParameterIuivOES = unsafePerformIO $ getCommand "glSamplerParameterIuivOES"

-- glSamplerParameterf ---------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glSamplerParameter.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glSamplerParameter.xhtml OpenGL 4.x>
glSamplerParameterf
  :: GLuint -- ^ @sampler@.
  -> GLenum -- ^ @pname@.
  -> GLfloat -- ^ @param@.
  -> IO ()
glSamplerParameterf = dyn_glSamplerParameterf ptr_glSamplerParameterf

foreign import CALLCONV "dynamic" dyn_glSamplerParameterf
  :: FunPtr (GLuint -> GLenum -> GLfloat -> IO ())
  ->         GLuint -> GLenum -> GLfloat -> IO ()

{-# NOINLINE ptr_glSamplerParameterf #-}
ptr_glSamplerParameterf :: FunPtr (GLuint -> GLenum -> GLfloat -> IO ())
ptr_glSamplerParameterf = unsafePerformIO $ getCommand "glSamplerParameterf"

-- glSamplerParameterfv --------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glSamplerParameter.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glSamplerParameter.xhtml OpenGL 4.x>
glSamplerParameterfv
  :: GLuint -- ^ @sampler@.
  -> GLenum -- ^ @pname@.
  -> Ptr GLfloat -- ^ @param@ pointing to @COMPSIZE(pname)@ elements of type @GLfloat@.
  -> IO ()
glSamplerParameterfv = dyn_glSamplerParameterfv ptr_glSamplerParameterfv

foreign import CALLCONV "dynamic" dyn_glSamplerParameterfv
  :: FunPtr (GLuint -> GLenum -> Ptr GLfloat -> IO ())
  ->         GLuint -> GLenum -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glSamplerParameterfv #-}
ptr_glSamplerParameterfv :: FunPtr (GLuint -> GLenum -> Ptr GLfloat -> IO ())
ptr_glSamplerParameterfv = unsafePerformIO $ getCommand "glSamplerParameterfv"

-- glSamplerParameteri ---------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glSamplerParameter.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glSamplerParameter.xhtml OpenGL 4.x>
glSamplerParameteri
  :: GLuint -- ^ @sampler@.
  -> GLenum -- ^ @pname@.
  -> GLint -- ^ @param@.
  -> IO ()
glSamplerParameteri = dyn_glSamplerParameteri ptr_glSamplerParameteri

foreign import CALLCONV "dynamic" dyn_glSamplerParameteri
  :: FunPtr (GLuint -> GLenum -> GLint -> IO ())
  ->         GLuint -> GLenum -> GLint -> IO ()

{-# NOINLINE ptr_glSamplerParameteri #-}
ptr_glSamplerParameteri :: FunPtr (GLuint -> GLenum -> GLint -> IO ())
ptr_glSamplerParameteri = unsafePerformIO $ getCommand "glSamplerParameteri"

-- glSamplerParameteriv --------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glSamplerParameter.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glSamplerParameter.xhtml OpenGL 4.x>
glSamplerParameteriv
  :: GLuint -- ^ @sampler@.
  -> GLenum -- ^ @pname@.
  -> Ptr GLint -- ^ @param@ pointing to @COMPSIZE(pname)@ elements of type @GLint@.
  -> IO ()
glSamplerParameteriv = dyn_glSamplerParameteriv ptr_glSamplerParameteriv

foreign import CALLCONV "dynamic" dyn_glSamplerParameteriv
  :: FunPtr (GLuint -> GLenum -> Ptr GLint -> IO ())
  ->         GLuint -> GLenum -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glSamplerParameteriv #-}
ptr_glSamplerParameteriv :: FunPtr (GLuint -> GLenum -> Ptr GLint -> IO ())
ptr_glSamplerParameteriv = unsafePerformIO $ getCommand "glSamplerParameteriv"

-- glScaled --------------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glScale.xml OpenGL 2.x>
glScaled
  :: GLdouble -- ^ @x@.
  -> GLdouble -- ^ @y@.
  -> GLdouble -- ^ @z@.
  -> IO ()
glScaled = dyn_glScaled ptr_glScaled

foreign import CALLCONV "dynamic" dyn_glScaled
  :: FunPtr (GLdouble -> GLdouble -> GLdouble -> IO ())
  ->         GLdouble -> GLdouble -> GLdouble -> IO ()

{-# NOINLINE ptr_glScaled #-}
ptr_glScaled :: FunPtr (GLdouble -> GLdouble -> GLdouble -> IO ())
ptr_glScaled = unsafePerformIO $ getCommand "glScaled"

-- glScalef --------------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glScale.xml OpenGL 2.x>
glScalef
  :: GLfloat -- ^ @x@.
  -> GLfloat -- ^ @y@.
  -> GLfloat -- ^ @z@.
  -> IO ()
glScalef = dyn_glScalef ptr_glScalef

foreign import CALLCONV "dynamic" dyn_glScalef
  :: FunPtr (GLfloat -> GLfloat -> GLfloat -> IO ())
  ->         GLfloat -> GLfloat -> GLfloat -> IO ()

{-# NOINLINE ptr_glScalef #-}
ptr_glScalef :: FunPtr (GLfloat -> GLfloat -> GLfloat -> IO ())
ptr_glScalef = unsafePerformIO $ getCommand "glScalef"

-- glScalex --------------------------------------------------------------------

glScalex
  :: GLfixed -- ^ @x@.
  -> GLfixed -- ^ @y@.
  -> GLfixed -- ^ @z@.
  -> IO ()
glScalex = dyn_glScalex ptr_glScalex

foreign import CALLCONV "dynamic" dyn_glScalex
  :: FunPtr (GLfixed -> GLfixed -> GLfixed -> IO ())
  ->         GLfixed -> GLfixed -> GLfixed -> IO ()

{-# NOINLINE ptr_glScalex #-}
ptr_glScalex :: FunPtr (GLfixed -> GLfixed -> GLfixed -> IO ())
ptr_glScalex = unsafePerformIO $ getCommand "glScalex"

-- glScalexOES -----------------------------------------------------------------

glScalexOES
  :: GLfixed -- ^ @x@.
  -> GLfixed -- ^ @y@.
  -> GLfixed -- ^ @z@.
  -> IO ()
glScalexOES = dyn_glScalexOES ptr_glScalexOES

foreign import CALLCONV "dynamic" dyn_glScalexOES
  :: FunPtr (GLfixed -> GLfixed -> GLfixed -> IO ())
  ->         GLfixed -> GLfixed -> GLfixed -> IO ()

{-# NOINLINE ptr_glScalexOES #-}
ptr_glScalexOES :: FunPtr (GLfixed -> GLfixed -> GLfixed -> IO ())
ptr_glScalexOES = unsafePerformIO $ getCommand "glScalexOES"

-- glScissor -------------------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glScissor.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glScissor.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glScissor.xhtml OpenGL 4.x>
glScissor
  :: GLint -- ^ @x@ of type @WinCoord@.
  -> GLint -- ^ @y@ of type @WinCoord@.
  -> GLsizei -- ^ @width@.
  -> GLsizei -- ^ @height@.
  -> IO ()
glScissor = dyn_glScissor ptr_glScissor

foreign import CALLCONV "dynamic" dyn_glScissor
  :: FunPtr (GLint -> GLint -> GLsizei -> GLsizei -> IO ())
  ->         GLint -> GLint -> GLsizei -> GLsizei -> IO ()

{-# NOINLINE ptr_glScissor #-}
ptr_glScissor :: FunPtr (GLint -> GLint -> GLsizei -> GLsizei -> IO ())
ptr_glScissor = unsafePerformIO $ getCommand "glScissor"

-- glScissorArrayv -------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glScissorArray.xhtml OpenGL 4.x>
glScissorArrayv
  :: GLuint -- ^ @first@.
  -> GLsizei -- ^ @count@.
  -> Ptr GLint -- ^ @v@ pointing to @COMPSIZE(count)@ elements of type @GLint@.
  -> IO ()
glScissorArrayv = dyn_glScissorArrayv ptr_glScissorArrayv

foreign import CALLCONV "dynamic" dyn_glScissorArrayv
  :: FunPtr (GLuint -> GLsizei -> Ptr GLint -> IO ())
  ->         GLuint -> GLsizei -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glScissorArrayv #-}
ptr_glScissorArrayv :: FunPtr (GLuint -> GLsizei -> Ptr GLint -> IO ())
ptr_glScissorArrayv = unsafePerformIO $ getCommand "glScissorArrayv"

-- glScissorArrayvNV -----------------------------------------------------------

glScissorArrayvNV
  :: GLuint -- ^ @first@.
  -> GLsizei -- ^ @count@.
  -> Ptr GLint -- ^ @v@ pointing to @COMPSIZE(count)@ elements of type @GLint@.
  -> IO ()
glScissorArrayvNV = dyn_glScissorArrayvNV ptr_glScissorArrayvNV

foreign import CALLCONV "dynamic" dyn_glScissorArrayvNV
  :: FunPtr (GLuint -> GLsizei -> Ptr GLint -> IO ())
  ->         GLuint -> GLsizei -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glScissorArrayvNV #-}
ptr_glScissorArrayvNV :: FunPtr (GLuint -> GLsizei -> Ptr GLint -> IO ())
ptr_glScissorArrayvNV = unsafePerformIO $ getCommand "glScissorArrayvNV"

-- glScissorIndexed ------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glScissorIndexed.xhtml OpenGL 4.x>
glScissorIndexed
  :: GLuint -- ^ @index@.
  -> GLint -- ^ @left@.
  -> GLint -- ^ @bottom@.
  -> GLsizei -- ^ @width@.
  -> GLsizei -- ^ @height@.
  -> IO ()
glScissorIndexed = dyn_glScissorIndexed ptr_glScissorIndexed

foreign import CALLCONV "dynamic" dyn_glScissorIndexed
  :: FunPtr (GLuint -> GLint -> GLint -> GLsizei -> GLsizei -> IO ())
  ->         GLuint -> GLint -> GLint -> GLsizei -> GLsizei -> IO ()

{-# NOINLINE ptr_glScissorIndexed #-}
ptr_glScissorIndexed :: FunPtr (GLuint -> GLint -> GLint -> GLsizei -> GLsizei -> IO ())
ptr_glScissorIndexed = unsafePerformIO $ getCommand "glScissorIndexed"

-- glScissorIndexedNV ----------------------------------------------------------

glScissorIndexedNV
  :: GLuint -- ^ @index@.
  -> GLint -- ^ @left@.
  -> GLint -- ^ @bottom@.
  -> GLsizei -- ^ @width@.
  -> GLsizei -- ^ @height@.
  -> IO ()
glScissorIndexedNV = dyn_glScissorIndexedNV ptr_glScissorIndexedNV

foreign import CALLCONV "dynamic" dyn_glScissorIndexedNV
  :: FunPtr (GLuint -> GLint -> GLint -> GLsizei -> GLsizei -> IO ())
  ->         GLuint -> GLint -> GLint -> GLsizei -> GLsizei -> IO ()

{-# NOINLINE ptr_glScissorIndexedNV #-}
ptr_glScissorIndexedNV :: FunPtr (GLuint -> GLint -> GLint -> GLsizei -> GLsizei -> IO ())
ptr_glScissorIndexedNV = unsafePerformIO $ getCommand "glScissorIndexedNV"

-- glScissorIndexedv -----------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glScissorIndexed.xhtml OpenGL 4.x>
glScissorIndexedv
  :: GLuint -- ^ @index@.
  -> Ptr GLint -- ^ @v@ pointing to @4@ elements of type @GLint@.
  -> IO ()
glScissorIndexedv = dyn_glScissorIndexedv ptr_glScissorIndexedv

foreign import CALLCONV "dynamic" dyn_glScissorIndexedv
  :: FunPtr (GLuint -> Ptr GLint -> IO ())
  ->         GLuint -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glScissorIndexedv #-}
ptr_glScissorIndexedv :: FunPtr (GLuint -> Ptr GLint -> IO ())
ptr_glScissorIndexedv = unsafePerformIO $ getCommand "glScissorIndexedv"

-- glScissorIndexedvNV ---------------------------------------------------------

glScissorIndexedvNV
  :: GLuint -- ^ @index@.
  -> Ptr GLint -- ^ @v@ pointing to @4@ elements of type @GLint@.
  -> IO ()
glScissorIndexedvNV = dyn_glScissorIndexedvNV ptr_glScissorIndexedvNV

foreign import CALLCONV "dynamic" dyn_glScissorIndexedvNV
  :: FunPtr (GLuint -> Ptr GLint -> IO ())
  ->         GLuint -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glScissorIndexedvNV #-}
ptr_glScissorIndexedvNV :: FunPtr (GLuint -> Ptr GLint -> IO ())
ptr_glScissorIndexedvNV = unsafePerformIO $ getCommand "glScissorIndexedvNV"

-- glSecondaryColor3b ----------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glSecondaryColor.xml OpenGL 2.x>
glSecondaryColor3b
  :: GLbyte -- ^ @red@ of type @ColorB@.
  -> GLbyte -- ^ @green@ of type @ColorB@.
  -> GLbyte -- ^ @blue@ of type @ColorB@.
  -> IO ()
glSecondaryColor3b = dyn_glSecondaryColor3b ptr_glSecondaryColor3b

foreign import CALLCONV "dynamic" dyn_glSecondaryColor3b
  :: FunPtr (GLbyte -> GLbyte -> GLbyte -> IO ())
  ->         GLbyte -> GLbyte -> GLbyte -> IO ()

{-# NOINLINE ptr_glSecondaryColor3b #-}
ptr_glSecondaryColor3b :: FunPtr (GLbyte -> GLbyte -> GLbyte -> IO ())
ptr_glSecondaryColor3b = unsafePerformIO $ getCommand "glSecondaryColor3b"

-- glSecondaryColor3bEXT -------------------------------------------------------

glSecondaryColor3bEXT
  :: GLbyte -- ^ @red@ of type @ColorB@.
  -> GLbyte -- ^ @green@ of type @ColorB@.
  -> GLbyte -- ^ @blue@ of type @ColorB@.
  -> IO ()
glSecondaryColor3bEXT = dyn_glSecondaryColor3bEXT ptr_glSecondaryColor3bEXT

foreign import CALLCONV "dynamic" dyn_glSecondaryColor3bEXT
  :: FunPtr (GLbyte -> GLbyte -> GLbyte -> IO ())
  ->         GLbyte -> GLbyte -> GLbyte -> IO ()

{-# NOINLINE ptr_glSecondaryColor3bEXT #-}
ptr_glSecondaryColor3bEXT :: FunPtr (GLbyte -> GLbyte -> GLbyte -> IO ())
ptr_glSecondaryColor3bEXT = unsafePerformIO $ getCommand "glSecondaryColor3bEXT"

-- glSecondaryColor3bv ---------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glSecondaryColor.xml OpenGL 2.x>
glSecondaryColor3bv
  :: Ptr GLbyte -- ^ @v@ pointing to @3@ elements of type @ColorB@.
  -> IO ()
glSecondaryColor3bv = dyn_glSecondaryColor3bv ptr_glSecondaryColor3bv

foreign import CALLCONV "dynamic" dyn_glSecondaryColor3bv
  :: FunPtr (Ptr GLbyte -> IO ())
  ->         Ptr GLbyte -> IO ()

{-# NOINLINE ptr_glSecondaryColor3bv #-}
ptr_glSecondaryColor3bv :: FunPtr (Ptr GLbyte -> IO ())
ptr_glSecondaryColor3bv = unsafePerformIO $ getCommand "glSecondaryColor3bv"

-- glSecondaryColor3bvEXT ------------------------------------------------------

glSecondaryColor3bvEXT
  :: Ptr GLbyte -- ^ @v@ pointing to @3@ elements of type @ColorB@.
  -> IO ()
glSecondaryColor3bvEXT = dyn_glSecondaryColor3bvEXT ptr_glSecondaryColor3bvEXT

foreign import CALLCONV "dynamic" dyn_glSecondaryColor3bvEXT
  :: FunPtr (Ptr GLbyte -> IO ())
  ->         Ptr GLbyte -> IO ()

{-# NOINLINE ptr_glSecondaryColor3bvEXT #-}
ptr_glSecondaryColor3bvEXT :: FunPtr (Ptr GLbyte -> IO ())
ptr_glSecondaryColor3bvEXT = unsafePerformIO $ getCommand "glSecondaryColor3bvEXT"

-- glSecondaryColor3d ----------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glSecondaryColor.xml OpenGL 2.x>
glSecondaryColor3d
  :: GLdouble -- ^ @red@ of type @ColorD@.
  -> GLdouble -- ^ @green@ of type @ColorD@.
  -> GLdouble -- ^ @blue@ of type @ColorD@.
  -> IO ()
glSecondaryColor3d = dyn_glSecondaryColor3d ptr_glSecondaryColor3d

foreign import CALLCONV "dynamic" dyn_glSecondaryColor3d
  :: FunPtr (GLdouble -> GLdouble -> GLdouble -> IO ())
  ->         GLdouble -> GLdouble -> GLdouble -> IO ()

{-# NOINLINE ptr_glSecondaryColor3d #-}
ptr_glSecondaryColor3d :: FunPtr (GLdouble -> GLdouble -> GLdouble -> IO ())
ptr_glSecondaryColor3d = unsafePerformIO $ getCommand "glSecondaryColor3d"

-- glSecondaryColor3dEXT -------------------------------------------------------

glSecondaryColor3dEXT
  :: GLdouble -- ^ @red@ of type @ColorD@.
  -> GLdouble -- ^ @green@ of type @ColorD@.
  -> GLdouble -- ^ @blue@ of type @ColorD@.
  -> IO ()
glSecondaryColor3dEXT = dyn_glSecondaryColor3dEXT ptr_glSecondaryColor3dEXT

foreign import CALLCONV "dynamic" dyn_glSecondaryColor3dEXT
  :: FunPtr (GLdouble -> GLdouble -> GLdouble -> IO ())
  ->         GLdouble -> GLdouble -> GLdouble -> IO ()

{-# NOINLINE ptr_glSecondaryColor3dEXT #-}
ptr_glSecondaryColor3dEXT :: FunPtr (GLdouble -> GLdouble -> GLdouble -> IO ())
ptr_glSecondaryColor3dEXT = unsafePerformIO $ getCommand "glSecondaryColor3dEXT"

-- glSecondaryColor3dv ---------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glSecondaryColor.xml OpenGL 2.x>
glSecondaryColor3dv
  :: Ptr GLdouble -- ^ @v@ pointing to @3@ elements of type @ColorD@.
  -> IO ()
glSecondaryColor3dv = dyn_glSecondaryColor3dv ptr_glSecondaryColor3dv

foreign import CALLCONV "dynamic" dyn_glSecondaryColor3dv
  :: FunPtr (Ptr GLdouble -> IO ())
  ->         Ptr GLdouble -> IO ()

{-# NOINLINE ptr_glSecondaryColor3dv #-}
ptr_glSecondaryColor3dv :: FunPtr (Ptr GLdouble -> IO ())
ptr_glSecondaryColor3dv = unsafePerformIO $ getCommand "glSecondaryColor3dv"

-- glSecondaryColor3dvEXT ------------------------------------------------------

glSecondaryColor3dvEXT
  :: Ptr GLdouble -- ^ @v@ pointing to @3@ elements of type @ColorD@.
  -> IO ()
glSecondaryColor3dvEXT = dyn_glSecondaryColor3dvEXT ptr_glSecondaryColor3dvEXT

foreign import CALLCONV "dynamic" dyn_glSecondaryColor3dvEXT
  :: FunPtr (Ptr GLdouble -> IO ())
  ->         Ptr GLdouble -> IO ()

{-# NOINLINE ptr_glSecondaryColor3dvEXT #-}
ptr_glSecondaryColor3dvEXT :: FunPtr (Ptr GLdouble -> IO ())
ptr_glSecondaryColor3dvEXT = unsafePerformIO $ getCommand "glSecondaryColor3dvEXT"

-- glSecondaryColor3f ----------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glSecondaryColor.xml OpenGL 2.x>
glSecondaryColor3f
  :: GLfloat -- ^ @red@ of type @ColorF@.
  -> GLfloat -- ^ @green@ of type @ColorF@.
  -> GLfloat -- ^ @blue@ of type @ColorF@.
  -> IO ()
glSecondaryColor3f = dyn_glSecondaryColor3f ptr_glSecondaryColor3f

foreign import CALLCONV "dynamic" dyn_glSecondaryColor3f
  :: FunPtr (GLfloat -> GLfloat -> GLfloat -> IO ())
  ->         GLfloat -> GLfloat -> GLfloat -> IO ()

{-# NOINLINE ptr_glSecondaryColor3f #-}
ptr_glSecondaryColor3f :: FunPtr (GLfloat -> GLfloat -> GLfloat -> IO ())
ptr_glSecondaryColor3f = unsafePerformIO $ getCommand "glSecondaryColor3f"

-- glSecondaryColor3fEXT -------------------------------------------------------

glSecondaryColor3fEXT
  :: GLfloat -- ^ @red@ of type @ColorF@.
  -> GLfloat -- ^ @green@ of type @ColorF@.
  -> GLfloat -- ^ @blue@ of type @ColorF@.
  -> IO ()
glSecondaryColor3fEXT = dyn_glSecondaryColor3fEXT ptr_glSecondaryColor3fEXT

foreign import CALLCONV "dynamic" dyn_glSecondaryColor3fEXT
  :: FunPtr (GLfloat -> GLfloat -> GLfloat -> IO ())
  ->         GLfloat -> GLfloat -> GLfloat -> IO ()

{-# NOINLINE ptr_glSecondaryColor3fEXT #-}
ptr_glSecondaryColor3fEXT :: FunPtr (GLfloat -> GLfloat -> GLfloat -> IO ())
ptr_glSecondaryColor3fEXT = unsafePerformIO $ getCommand "glSecondaryColor3fEXT"

-- glSecondaryColor3fv ---------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glSecondaryColor.xml OpenGL 2.x>
glSecondaryColor3fv
  :: Ptr GLfloat -- ^ @v@ pointing to @3@ elements of type @ColorF@.
  -> IO ()
glSecondaryColor3fv = dyn_glSecondaryColor3fv ptr_glSecondaryColor3fv

foreign import CALLCONV "dynamic" dyn_glSecondaryColor3fv
  :: FunPtr (Ptr GLfloat -> IO ())
  ->         Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glSecondaryColor3fv #-}
ptr_glSecondaryColor3fv :: FunPtr (Ptr GLfloat -> IO ())
ptr_glSecondaryColor3fv = unsafePerformIO $ getCommand "glSecondaryColor3fv"

-- glSecondaryColor3fvEXT ------------------------------------------------------

glSecondaryColor3fvEXT
  :: Ptr GLfloat -- ^ @v@ pointing to @3@ elements of type @ColorF@.
  -> IO ()
glSecondaryColor3fvEXT = dyn_glSecondaryColor3fvEXT ptr_glSecondaryColor3fvEXT

foreign import CALLCONV "dynamic" dyn_glSecondaryColor3fvEXT
  :: FunPtr (Ptr GLfloat -> IO ())
  ->         Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glSecondaryColor3fvEXT #-}
ptr_glSecondaryColor3fvEXT :: FunPtr (Ptr GLfloat -> IO ())
ptr_glSecondaryColor3fvEXT = unsafePerformIO $ getCommand "glSecondaryColor3fvEXT"

-- glSecondaryColor3hNV --------------------------------------------------------

glSecondaryColor3hNV
  :: GLhalfNV -- ^ @red@ of type @Half16NV@.
  -> GLhalfNV -- ^ @green@ of type @Half16NV@.
  -> GLhalfNV -- ^ @blue@ of type @Half16NV@.
  -> IO ()
glSecondaryColor3hNV = dyn_glSecondaryColor3hNV ptr_glSecondaryColor3hNV

foreign import CALLCONV "dynamic" dyn_glSecondaryColor3hNV
  :: FunPtr (GLhalfNV -> GLhalfNV -> GLhalfNV -> IO ())
  ->         GLhalfNV -> GLhalfNV -> GLhalfNV -> IO ()

{-# NOINLINE ptr_glSecondaryColor3hNV #-}
ptr_glSecondaryColor3hNV :: FunPtr (GLhalfNV -> GLhalfNV -> GLhalfNV -> IO ())
ptr_glSecondaryColor3hNV = unsafePerformIO $ getCommand "glSecondaryColor3hNV"

-- glSecondaryColor3hvNV -------------------------------------------------------

glSecondaryColor3hvNV
  :: Ptr GLhalfNV -- ^ @v@ pointing to @3@ elements of type @Half16NV@.
  -> IO ()
glSecondaryColor3hvNV = dyn_glSecondaryColor3hvNV ptr_glSecondaryColor3hvNV

foreign import CALLCONV "dynamic" dyn_glSecondaryColor3hvNV
  :: FunPtr (Ptr GLhalfNV -> IO ())
  ->         Ptr GLhalfNV -> IO ()

{-# NOINLINE ptr_glSecondaryColor3hvNV #-}
ptr_glSecondaryColor3hvNV :: FunPtr (Ptr GLhalfNV -> IO ())
ptr_glSecondaryColor3hvNV = unsafePerformIO $ getCommand "glSecondaryColor3hvNV"

-- glSecondaryColor3i ----------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glSecondaryColor.xml OpenGL 2.x>
glSecondaryColor3i
  :: GLint -- ^ @red@ of type @ColorI@.
  -> GLint -- ^ @green@ of type @ColorI@.
  -> GLint -- ^ @blue@ of type @ColorI@.
  -> IO ()
glSecondaryColor3i = dyn_glSecondaryColor3i ptr_glSecondaryColor3i

foreign import CALLCONV "dynamic" dyn_glSecondaryColor3i
  :: FunPtr (GLint -> GLint -> GLint -> IO ())
  ->         GLint -> GLint -> GLint -> IO ()

{-# NOINLINE ptr_glSecondaryColor3i #-}
ptr_glSecondaryColor3i :: FunPtr (GLint -> GLint -> GLint -> IO ())
ptr_glSecondaryColor3i = unsafePerformIO $ getCommand "glSecondaryColor3i"

-- glSecondaryColor3iEXT -------------------------------------------------------

glSecondaryColor3iEXT
  :: GLint -- ^ @red@ of type @ColorI@.
  -> GLint -- ^ @green@ of type @ColorI@.
  -> GLint -- ^ @blue@ of type @ColorI@.
  -> IO ()
glSecondaryColor3iEXT = dyn_glSecondaryColor3iEXT ptr_glSecondaryColor3iEXT

foreign import CALLCONV "dynamic" dyn_glSecondaryColor3iEXT
  :: FunPtr (GLint -> GLint -> GLint -> IO ())
  ->         GLint -> GLint -> GLint -> IO ()

{-# NOINLINE ptr_glSecondaryColor3iEXT #-}
ptr_glSecondaryColor3iEXT :: FunPtr (GLint -> GLint -> GLint -> IO ())
ptr_glSecondaryColor3iEXT = unsafePerformIO $ getCommand "glSecondaryColor3iEXT"

-- glSecondaryColor3iv ---------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glSecondaryColor.xml OpenGL 2.x>
glSecondaryColor3iv
  :: Ptr GLint -- ^ @v@ pointing to @3@ elements of type @ColorI@.
  -> IO ()
glSecondaryColor3iv = dyn_glSecondaryColor3iv ptr_glSecondaryColor3iv

foreign import CALLCONV "dynamic" dyn_glSecondaryColor3iv
  :: FunPtr (Ptr GLint -> IO ())
  ->         Ptr GLint -> IO ()

{-# NOINLINE ptr_glSecondaryColor3iv #-}
ptr_glSecondaryColor3iv :: FunPtr (Ptr GLint -> IO ())
ptr_glSecondaryColor3iv = unsafePerformIO $ getCommand "glSecondaryColor3iv"

-- glSecondaryColor3ivEXT ------------------------------------------------------

glSecondaryColor3ivEXT
  :: Ptr GLint -- ^ @v@ pointing to @3@ elements of type @ColorI@.
  -> IO ()
glSecondaryColor3ivEXT = dyn_glSecondaryColor3ivEXT ptr_glSecondaryColor3ivEXT

foreign import CALLCONV "dynamic" dyn_glSecondaryColor3ivEXT
  :: FunPtr (Ptr GLint -> IO ())
  ->         Ptr GLint -> IO ()

{-# NOINLINE ptr_glSecondaryColor3ivEXT #-}
ptr_glSecondaryColor3ivEXT :: FunPtr (Ptr GLint -> IO ())
ptr_glSecondaryColor3ivEXT = unsafePerformIO $ getCommand "glSecondaryColor3ivEXT"

-- glSecondaryColor3s ----------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glSecondaryColor.xml OpenGL 2.x>
glSecondaryColor3s
  :: GLshort -- ^ @red@ of type @ColorS@.
  -> GLshort -- ^ @green@ of type @ColorS@.
  -> GLshort -- ^ @blue@ of type @ColorS@.
  -> IO ()
glSecondaryColor3s = dyn_glSecondaryColor3s ptr_glSecondaryColor3s

foreign import CALLCONV "dynamic" dyn_glSecondaryColor3s
  :: FunPtr (GLshort -> GLshort -> GLshort -> IO ())
  ->         GLshort -> GLshort -> GLshort -> IO ()

{-# NOINLINE ptr_glSecondaryColor3s #-}
ptr_glSecondaryColor3s :: FunPtr (GLshort -> GLshort -> GLshort -> IO ())
ptr_glSecondaryColor3s = unsafePerformIO $ getCommand "glSecondaryColor3s"

-- glSecondaryColor3sEXT -------------------------------------------------------

glSecondaryColor3sEXT
  :: GLshort -- ^ @red@ of type @ColorS@.
  -> GLshort -- ^ @green@ of type @ColorS@.
  -> GLshort -- ^ @blue@ of type @ColorS@.
  -> IO ()
glSecondaryColor3sEXT = dyn_glSecondaryColor3sEXT ptr_glSecondaryColor3sEXT

foreign import CALLCONV "dynamic" dyn_glSecondaryColor3sEXT
  :: FunPtr (GLshort -> GLshort -> GLshort -> IO ())
  ->         GLshort -> GLshort -> GLshort -> IO ()

{-# NOINLINE ptr_glSecondaryColor3sEXT #-}
ptr_glSecondaryColor3sEXT :: FunPtr (GLshort -> GLshort -> GLshort -> IO ())
ptr_glSecondaryColor3sEXT = unsafePerformIO $ getCommand "glSecondaryColor3sEXT"

-- glSecondaryColor3sv ---------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glSecondaryColor.xml OpenGL 2.x>
glSecondaryColor3sv
  :: Ptr GLshort -- ^ @v@ pointing to @3@ elements of type @ColorS@.
  -> IO ()
glSecondaryColor3sv = dyn_glSecondaryColor3sv ptr_glSecondaryColor3sv

foreign import CALLCONV "dynamic" dyn_glSecondaryColor3sv
  :: FunPtr (Ptr GLshort -> IO ())
  ->         Ptr GLshort -> IO ()

{-# NOINLINE ptr_glSecondaryColor3sv #-}
ptr_glSecondaryColor3sv :: FunPtr (Ptr GLshort -> IO ())
ptr_glSecondaryColor3sv = unsafePerformIO $ getCommand "glSecondaryColor3sv"

-- glSecondaryColor3svEXT ------------------------------------------------------

glSecondaryColor3svEXT
  :: Ptr GLshort -- ^ @v@ pointing to @3@ elements of type @ColorS@.
  -> IO ()
glSecondaryColor3svEXT = dyn_glSecondaryColor3svEXT ptr_glSecondaryColor3svEXT

foreign import CALLCONV "dynamic" dyn_glSecondaryColor3svEXT
  :: FunPtr (Ptr GLshort -> IO ())
  ->         Ptr GLshort -> IO ()

{-# NOINLINE ptr_glSecondaryColor3svEXT #-}
ptr_glSecondaryColor3svEXT :: FunPtr (Ptr GLshort -> IO ())
ptr_glSecondaryColor3svEXT = unsafePerformIO $ getCommand "glSecondaryColor3svEXT"

-- glSecondaryColor3ub ---------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glSecondaryColor.xml OpenGL 2.x>
glSecondaryColor3ub
  :: GLubyte -- ^ @red@ of type @ColorUB@.
  -> GLubyte -- ^ @green@ of type @ColorUB@.
  -> GLubyte -- ^ @blue@ of type @ColorUB@.
  -> IO ()
glSecondaryColor3ub = dyn_glSecondaryColor3ub ptr_glSecondaryColor3ub

foreign import CALLCONV "dynamic" dyn_glSecondaryColor3ub
  :: FunPtr (GLubyte -> GLubyte -> GLubyte -> IO ())
  ->         GLubyte -> GLubyte -> GLubyte -> IO ()

{-# NOINLINE ptr_glSecondaryColor3ub #-}
ptr_glSecondaryColor3ub :: FunPtr (GLubyte -> GLubyte -> GLubyte -> IO ())
ptr_glSecondaryColor3ub = unsafePerformIO $ getCommand "glSecondaryColor3ub"

-- glSecondaryColor3ubEXT ------------------------------------------------------

glSecondaryColor3ubEXT
  :: GLubyte -- ^ @red@ of type @ColorUB@.
  -> GLubyte -- ^ @green@ of type @ColorUB@.
  -> GLubyte -- ^ @blue@ of type @ColorUB@.
  -> IO ()
glSecondaryColor3ubEXT = dyn_glSecondaryColor3ubEXT ptr_glSecondaryColor3ubEXT

foreign import CALLCONV "dynamic" dyn_glSecondaryColor3ubEXT
  :: FunPtr (GLubyte -> GLubyte -> GLubyte -> IO ())
  ->         GLubyte -> GLubyte -> GLubyte -> IO ()

{-# NOINLINE ptr_glSecondaryColor3ubEXT #-}
ptr_glSecondaryColor3ubEXT :: FunPtr (GLubyte -> GLubyte -> GLubyte -> IO ())
ptr_glSecondaryColor3ubEXT = unsafePerformIO $ getCommand "glSecondaryColor3ubEXT"

-- glSecondaryColor3ubv --------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glSecondaryColor.xml OpenGL 2.x>
glSecondaryColor3ubv
  :: Ptr GLubyte -- ^ @v@ pointing to @3@ elements of type @ColorUB@.
  -> IO ()
glSecondaryColor3ubv = dyn_glSecondaryColor3ubv ptr_glSecondaryColor3ubv

foreign import CALLCONV "dynamic" dyn_glSecondaryColor3ubv
  :: FunPtr (Ptr GLubyte -> IO ())
  ->         Ptr GLubyte -> IO ()

{-# NOINLINE ptr_glSecondaryColor3ubv #-}
ptr_glSecondaryColor3ubv :: FunPtr (Ptr GLubyte -> IO ())
ptr_glSecondaryColor3ubv = unsafePerformIO $ getCommand "glSecondaryColor3ubv"

-- glSecondaryColor3ubvEXT -----------------------------------------------------

glSecondaryColor3ubvEXT
  :: Ptr GLubyte -- ^ @v@ pointing to @3@ elements of type @ColorUB@.
  -> IO ()
glSecondaryColor3ubvEXT = dyn_glSecondaryColor3ubvEXT ptr_glSecondaryColor3ubvEXT

foreign import CALLCONV "dynamic" dyn_glSecondaryColor3ubvEXT
  :: FunPtr (Ptr GLubyte -> IO ())
  ->         Ptr GLubyte -> IO ()

{-# NOINLINE ptr_glSecondaryColor3ubvEXT #-}
ptr_glSecondaryColor3ubvEXT :: FunPtr (Ptr GLubyte -> IO ())
ptr_glSecondaryColor3ubvEXT = unsafePerformIO $ getCommand "glSecondaryColor3ubvEXT"

-- glSecondaryColor3ui ---------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glSecondaryColor.xml OpenGL 2.x>
glSecondaryColor3ui
  :: GLuint -- ^ @red@ of type @ColorUI@.
  -> GLuint -- ^ @green@ of type @ColorUI@.
  -> GLuint -- ^ @blue@ of type @ColorUI@.
  -> IO ()
glSecondaryColor3ui = dyn_glSecondaryColor3ui ptr_glSecondaryColor3ui

foreign import CALLCONV "dynamic" dyn_glSecondaryColor3ui
  :: FunPtr (GLuint -> GLuint -> GLuint -> IO ())
  ->         GLuint -> GLuint -> GLuint -> IO ()

{-# NOINLINE ptr_glSecondaryColor3ui #-}
ptr_glSecondaryColor3ui :: FunPtr (GLuint -> GLuint -> GLuint -> IO ())
ptr_glSecondaryColor3ui = unsafePerformIO $ getCommand "glSecondaryColor3ui"

-- glSecondaryColor3uiEXT ------------------------------------------------------

glSecondaryColor3uiEXT
  :: GLuint -- ^ @red@ of type @ColorUI@.
  -> GLuint -- ^ @green@ of type @ColorUI@.
  -> GLuint -- ^ @blue@ of type @ColorUI@.
  -> IO ()
glSecondaryColor3uiEXT = dyn_glSecondaryColor3uiEXT ptr_glSecondaryColor3uiEXT

foreign import CALLCONV "dynamic" dyn_glSecondaryColor3uiEXT
  :: FunPtr (GLuint -> GLuint -> GLuint -> IO ())
  ->         GLuint -> GLuint -> GLuint -> IO ()

{-# NOINLINE ptr_glSecondaryColor3uiEXT #-}
ptr_glSecondaryColor3uiEXT :: FunPtr (GLuint -> GLuint -> GLuint -> IO ())
ptr_glSecondaryColor3uiEXT = unsafePerformIO $ getCommand "glSecondaryColor3uiEXT"

-- glSecondaryColor3uiv --------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glSecondaryColor.xml OpenGL 2.x>
glSecondaryColor3uiv
  :: Ptr GLuint -- ^ @v@ pointing to @3@ elements of type @ColorUI@.
  -> IO ()
glSecondaryColor3uiv = dyn_glSecondaryColor3uiv ptr_glSecondaryColor3uiv

foreign import CALLCONV "dynamic" dyn_glSecondaryColor3uiv
  :: FunPtr (Ptr GLuint -> IO ())
  ->         Ptr GLuint -> IO ()

{-# NOINLINE ptr_glSecondaryColor3uiv #-}
ptr_glSecondaryColor3uiv :: FunPtr (Ptr GLuint -> IO ())
ptr_glSecondaryColor3uiv = unsafePerformIO $ getCommand "glSecondaryColor3uiv"

-- glSecondaryColor3uivEXT -----------------------------------------------------

glSecondaryColor3uivEXT
  :: Ptr GLuint -- ^ @v@ pointing to @3@ elements of type @ColorUI@.
  -> IO ()
glSecondaryColor3uivEXT = dyn_glSecondaryColor3uivEXT ptr_glSecondaryColor3uivEXT

foreign import CALLCONV "dynamic" dyn_glSecondaryColor3uivEXT
  :: FunPtr (Ptr GLuint -> IO ())
  ->         Ptr GLuint -> IO ()

{-# NOINLINE ptr_glSecondaryColor3uivEXT #-}
ptr_glSecondaryColor3uivEXT :: FunPtr (Ptr GLuint -> IO ())
ptr_glSecondaryColor3uivEXT = unsafePerformIO $ getCommand "glSecondaryColor3uivEXT"

-- glSecondaryColor3us ---------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glSecondaryColor.xml OpenGL 2.x>
glSecondaryColor3us
  :: GLushort -- ^ @red@ of type @ColorUS@.
  -> GLushort -- ^ @green@ of type @ColorUS@.
  -> GLushort -- ^ @blue@ of type @ColorUS@.
  -> IO ()
glSecondaryColor3us = dyn_glSecondaryColor3us ptr_glSecondaryColor3us

foreign import CALLCONV "dynamic" dyn_glSecondaryColor3us
  :: FunPtr (GLushort -> GLushort -> GLushort -> IO ())
  ->         GLushort -> GLushort -> GLushort -> IO ()

{-# NOINLINE ptr_glSecondaryColor3us #-}
ptr_glSecondaryColor3us :: FunPtr (GLushort -> GLushort -> GLushort -> IO ())
ptr_glSecondaryColor3us = unsafePerformIO $ getCommand "glSecondaryColor3us"

-- glSecondaryColor3usEXT ------------------------------------------------------

glSecondaryColor3usEXT
  :: GLushort -- ^ @red@ of type @ColorUS@.
  -> GLushort -- ^ @green@ of type @ColorUS@.
  -> GLushort -- ^ @blue@ of type @ColorUS@.
  -> IO ()
glSecondaryColor3usEXT = dyn_glSecondaryColor3usEXT ptr_glSecondaryColor3usEXT

foreign import CALLCONV "dynamic" dyn_glSecondaryColor3usEXT
  :: FunPtr (GLushort -> GLushort -> GLushort -> IO ())
  ->         GLushort -> GLushort -> GLushort -> IO ()

{-# NOINLINE ptr_glSecondaryColor3usEXT #-}
ptr_glSecondaryColor3usEXT :: FunPtr (GLushort -> GLushort -> GLushort -> IO ())
ptr_glSecondaryColor3usEXT = unsafePerformIO $ getCommand "glSecondaryColor3usEXT"

-- glSecondaryColor3usv --------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glSecondaryColor.xml OpenGL 2.x>
glSecondaryColor3usv
  :: Ptr GLushort -- ^ @v@ pointing to @3@ elements of type @ColorUS@.
  -> IO ()
glSecondaryColor3usv = dyn_glSecondaryColor3usv ptr_glSecondaryColor3usv

foreign import CALLCONV "dynamic" dyn_glSecondaryColor3usv
  :: FunPtr (Ptr GLushort -> IO ())
  ->         Ptr GLushort -> IO ()

{-# NOINLINE ptr_glSecondaryColor3usv #-}
ptr_glSecondaryColor3usv :: FunPtr (Ptr GLushort -> IO ())
ptr_glSecondaryColor3usv = unsafePerformIO $ getCommand "glSecondaryColor3usv"

-- glSecondaryColor3usvEXT -----------------------------------------------------

glSecondaryColor3usvEXT
  :: Ptr GLushort -- ^ @v@ pointing to @3@ elements of type @ColorUS@.
  -> IO ()
glSecondaryColor3usvEXT = dyn_glSecondaryColor3usvEXT ptr_glSecondaryColor3usvEXT

foreign import CALLCONV "dynamic" dyn_glSecondaryColor3usvEXT
  :: FunPtr (Ptr GLushort -> IO ())
  ->         Ptr GLushort -> IO ()

{-# NOINLINE ptr_glSecondaryColor3usvEXT #-}
ptr_glSecondaryColor3usvEXT :: FunPtr (Ptr GLushort -> IO ())
ptr_glSecondaryColor3usvEXT = unsafePerformIO $ getCommand "glSecondaryColor3usvEXT"

-- glSecondaryColorFormatNV ----------------------------------------------------

glSecondaryColorFormatNV
  :: GLint -- ^ @size@.
  -> GLenum -- ^ @type@.
  -> GLsizei -- ^ @stride@.
  -> IO ()
glSecondaryColorFormatNV = dyn_glSecondaryColorFormatNV ptr_glSecondaryColorFormatNV

foreign import CALLCONV "dynamic" dyn_glSecondaryColorFormatNV
  :: FunPtr (GLint -> GLenum -> GLsizei -> IO ())
  ->         GLint -> GLenum -> GLsizei -> IO ()

{-# NOINLINE ptr_glSecondaryColorFormatNV #-}
ptr_glSecondaryColorFormatNV :: FunPtr (GLint -> GLenum -> GLsizei -> IO ())
ptr_glSecondaryColorFormatNV = unsafePerformIO $ getCommand "glSecondaryColorFormatNV"

-- glSecondaryColorP3ui --------------------------------------------------------

glSecondaryColorP3ui
  :: GLenum -- ^ @type@.
  -> GLuint -- ^ @color@.
  -> IO ()
glSecondaryColorP3ui = dyn_glSecondaryColorP3ui ptr_glSecondaryColorP3ui

foreign import CALLCONV "dynamic" dyn_glSecondaryColorP3ui
  :: FunPtr (GLenum -> GLuint -> IO ())
  ->         GLenum -> GLuint -> IO ()

{-# NOINLINE ptr_glSecondaryColorP3ui #-}
ptr_glSecondaryColorP3ui :: FunPtr (GLenum -> GLuint -> IO ())
ptr_glSecondaryColorP3ui = unsafePerformIO $ getCommand "glSecondaryColorP3ui"

-- glSecondaryColorP3uiv -------------------------------------------------------

glSecondaryColorP3uiv
  :: GLenum -- ^ @type@.
  -> Ptr GLuint -- ^ @color@ pointing to @1@ elements of type @GLuint@.
  -> IO ()
glSecondaryColorP3uiv = dyn_glSecondaryColorP3uiv ptr_glSecondaryColorP3uiv

foreign import CALLCONV "dynamic" dyn_glSecondaryColorP3uiv
  :: FunPtr (GLenum -> Ptr GLuint -> IO ())
  ->         GLenum -> Ptr GLuint -> IO ()

{-# NOINLINE ptr_glSecondaryColorP3uiv #-}
ptr_glSecondaryColorP3uiv :: FunPtr (GLenum -> Ptr GLuint -> IO ())
ptr_glSecondaryColorP3uiv = unsafePerformIO $ getCommand "glSecondaryColorP3uiv"

-- glSecondaryColorPointer -----------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glSecondaryColorPointer.xml OpenGL 2.x>
glSecondaryColorPointer
  :: GLint -- ^ @size@.
  -> GLenum -- ^ @type@ of type @ColorPointerType@.
  -> GLsizei -- ^ @stride@.
  -> Ptr a -- ^ @pointer@ pointing to @COMPSIZE(size,type,stride)@ elements of type @a@.
  -> IO ()
glSecondaryColorPointer = dyn_glSecondaryColorPointer ptr_glSecondaryColorPointer

foreign import CALLCONV "dynamic" dyn_glSecondaryColorPointer
  :: FunPtr (GLint -> GLenum -> GLsizei -> Ptr a -> IO ())
  ->         GLint -> GLenum -> GLsizei -> Ptr a -> IO ()

{-# NOINLINE ptr_glSecondaryColorPointer #-}
ptr_glSecondaryColorPointer :: FunPtr (GLint -> GLenum -> GLsizei -> Ptr a -> IO ())
ptr_glSecondaryColorPointer = unsafePerformIO $ getCommand "glSecondaryColorPointer"

-- glSecondaryColorPointerEXT --------------------------------------------------

glSecondaryColorPointerEXT
  :: GLint -- ^ @size@.
  -> GLenum -- ^ @type@ of type @ColorPointerType@.
  -> GLsizei -- ^ @stride@.
  -> Ptr a -- ^ @pointer@ pointing to @COMPSIZE(size,type,stride)@ elements of type @a@.
  -> IO ()
glSecondaryColorPointerEXT = dyn_glSecondaryColorPointerEXT ptr_glSecondaryColorPointerEXT

foreign import CALLCONV "dynamic" dyn_glSecondaryColorPointerEXT
  :: FunPtr (GLint -> GLenum -> GLsizei -> Ptr a -> IO ())
  ->         GLint -> GLenum -> GLsizei -> Ptr a -> IO ()

{-# NOINLINE ptr_glSecondaryColorPointerEXT #-}
ptr_glSecondaryColorPointerEXT :: FunPtr (GLint -> GLenum -> GLsizei -> Ptr a -> IO ())
ptr_glSecondaryColorPointerEXT = unsafePerformIO $ getCommand "glSecondaryColorPointerEXT"

-- glSecondaryColorPointerListIBM ----------------------------------------------

glSecondaryColorPointerListIBM
  :: GLint -- ^ @size@.
  -> GLenum -- ^ @type@ of type @SecondaryColorPointerTypeIBM@.
  -> GLint -- ^ @stride@.
  -> Ptr (Ptr a) -- ^ @pointer@ pointing to @COMPSIZE(size,type,stride)@ elements of type @Ptr a@.
  -> GLint -- ^ @ptrstride@.
  -> IO ()
glSecondaryColorPointerListIBM = dyn_glSecondaryColorPointerListIBM ptr_glSecondaryColorPointerListIBM

foreign import CALLCONV "dynamic" dyn_glSecondaryColorPointerListIBM
  :: FunPtr (GLint -> GLenum -> GLint -> Ptr (Ptr a) -> GLint -> IO ())
  ->         GLint -> GLenum -> GLint -> Ptr (Ptr a) -> GLint -> IO ()

{-# NOINLINE ptr_glSecondaryColorPointerListIBM #-}
ptr_glSecondaryColorPointerListIBM :: FunPtr (GLint -> GLenum -> GLint -> Ptr (Ptr a) -> GLint -> IO ())
ptr_glSecondaryColorPointerListIBM = unsafePerformIO $ getCommand "glSecondaryColorPointerListIBM"

-- glSelectBuffer --------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glSelectBuffer.xml OpenGL 2.x>
glSelectBuffer
  :: GLsizei -- ^ @size@.
  -> Ptr GLuint -- ^ @buffer@ pointing to @size@ elements of type @SelectName@.
  -> IO ()
glSelectBuffer = dyn_glSelectBuffer ptr_glSelectBuffer

foreign import CALLCONV "dynamic" dyn_glSelectBuffer
  :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
  ->         GLsizei -> Ptr GLuint -> IO ()

{-# NOINLINE ptr_glSelectBuffer #-}
ptr_glSelectBuffer :: FunPtr (GLsizei -> Ptr GLuint -> IO ())
ptr_glSelectBuffer = unsafePerformIO $ getCommand "glSelectBuffer"

-- glSelectPerfMonitorCountersAMD ----------------------------------------------

glSelectPerfMonitorCountersAMD
  :: GLuint -- ^ @monitor@.
  -> GLboolean -- ^ @enable@ of type @Boolean@.
  -> GLuint -- ^ @group@.
  -> GLint -- ^ @numCounters@.
  -> Ptr GLuint -- ^ @counterList@ pointing to @numCounters@ elements of type @GLuint@.
  -> IO ()
glSelectPerfMonitorCountersAMD = dyn_glSelectPerfMonitorCountersAMD ptr_glSelectPerfMonitorCountersAMD

foreign import CALLCONV "dynamic" dyn_glSelectPerfMonitorCountersAMD
  :: FunPtr (GLuint -> GLboolean -> GLuint -> GLint -> Ptr GLuint -> IO ())
  ->         GLuint -> GLboolean -> GLuint -> GLint -> Ptr GLuint -> IO ()

{-# NOINLINE ptr_glSelectPerfMonitorCountersAMD #-}
ptr_glSelectPerfMonitorCountersAMD :: FunPtr (GLuint -> GLboolean -> GLuint -> GLint -> Ptr GLuint -> IO ())
ptr_glSelectPerfMonitorCountersAMD = unsafePerformIO $ getCommand "glSelectPerfMonitorCountersAMD"

-- glSeparableFilter2D ---------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glSeparableFilter2D.xml OpenGL 2.x>
glSeparableFilter2D
  :: GLenum -- ^ @target@ of type @SeparableTarget@.
  -> GLenum -- ^ @internalformat@ of type @PixelInternalFormat@.
  -> GLsizei -- ^ @width@.
  -> GLsizei -- ^ @height@.
  -> GLenum -- ^ @format@ of type @PixelFormat@.
  -> GLenum -- ^ @type@ of type @PixelType@.
  -> Ptr a -- ^ @row@ pointing to @COMPSIZE(target,format,type,width)@ elements of type @a@.
  -> Ptr b -- ^ @column@ pointing to @COMPSIZE(target,format,type,height)@ elements of type @b@.
  -> IO ()
glSeparableFilter2D = dyn_glSeparableFilter2D ptr_glSeparableFilter2D

foreign import CALLCONV "dynamic" dyn_glSeparableFilter2D
  :: FunPtr (GLenum -> GLenum -> GLsizei -> GLsizei -> GLenum -> GLenum -> Ptr a -> Ptr b -> IO ())
  ->         GLenum -> GLenum -> GLsizei -> GLsizei -> GLenum -> GLenum -> Ptr a -> Ptr b -> IO ()

{-# NOINLINE ptr_glSeparableFilter2D #-}
ptr_glSeparableFilter2D :: FunPtr (GLenum -> GLenum -> GLsizei -> GLsizei -> GLenum -> GLenum -> Ptr a -> Ptr b -> IO ())
ptr_glSeparableFilter2D = unsafePerformIO $ getCommand "glSeparableFilter2D"

-- glSeparableFilter2DEXT ------------------------------------------------------

glSeparableFilter2DEXT
  :: GLenum -- ^ @target@ of type @SeparableTargetEXT@.
  -> GLenum -- ^ @internalformat@ of type @PixelInternalFormat@.
  -> GLsizei -- ^ @width@.
  -> GLsizei -- ^ @height@.
  -> GLenum -- ^ @format@ of type @PixelFormat@.
  -> GLenum -- ^ @type@ of type @PixelType@.
  -> Ptr a -- ^ @row@ pointing to @COMPSIZE(target,format,type,width)@ elements of type @a@.
  -> Ptr b -- ^ @column@ pointing to @COMPSIZE(target,format,type,height)@ elements of type @b@.
  -> IO ()
glSeparableFilter2DEXT = dyn_glSeparableFilter2DEXT ptr_glSeparableFilter2DEXT

foreign import CALLCONV "dynamic" dyn_glSeparableFilter2DEXT
  :: FunPtr (GLenum -> GLenum -> GLsizei -> GLsizei -> GLenum -> GLenum -> Ptr a -> Ptr b -> IO ())
  ->         GLenum -> GLenum -> GLsizei -> GLsizei -> GLenum -> GLenum -> Ptr a -> Ptr b -> IO ()

{-# NOINLINE ptr_glSeparableFilter2DEXT #-}
ptr_glSeparableFilter2DEXT :: FunPtr (GLenum -> GLenum -> GLsizei -> GLsizei -> GLenum -> GLenum -> Ptr a -> Ptr b -> IO ())
ptr_glSeparableFilter2DEXT = unsafePerformIO $ getCommand "glSeparableFilter2DEXT"

-- glSetFenceAPPLE -------------------------------------------------------------

glSetFenceAPPLE
  :: GLuint -- ^ @fence@ of type @FenceNV@.
  -> IO ()
glSetFenceAPPLE = dyn_glSetFenceAPPLE ptr_glSetFenceAPPLE

foreign import CALLCONV "dynamic" dyn_glSetFenceAPPLE
  :: FunPtr (GLuint -> IO ())
  ->         GLuint -> IO ()

{-# NOINLINE ptr_glSetFenceAPPLE #-}
ptr_glSetFenceAPPLE :: FunPtr (GLuint -> IO ())
ptr_glSetFenceAPPLE = unsafePerformIO $ getCommand "glSetFenceAPPLE"

-- glSetFenceNV ----------------------------------------------------------------

glSetFenceNV
  :: GLuint -- ^ @fence@ of type @FenceNV@.
  -> GLenum -- ^ @condition@ of type @FenceConditionNV@.
  -> IO ()
glSetFenceNV = dyn_glSetFenceNV ptr_glSetFenceNV

foreign import CALLCONV "dynamic" dyn_glSetFenceNV
  :: FunPtr (GLuint -> GLenum -> IO ())
  ->         GLuint -> GLenum -> IO ()

{-# NOINLINE ptr_glSetFenceNV #-}
ptr_glSetFenceNV :: FunPtr (GLuint -> GLenum -> IO ())
ptr_glSetFenceNV = unsafePerformIO $ getCommand "glSetFenceNV"

-- glSetFragmentShaderConstantATI ----------------------------------------------

glSetFragmentShaderConstantATI
  :: GLuint -- ^ @dst@.
  -> Ptr GLfloat -- ^ @value@ pointing to @4@ elements of type @GLfloat@.
  -> IO ()
glSetFragmentShaderConstantATI = dyn_glSetFragmentShaderConstantATI ptr_glSetFragmentShaderConstantATI

foreign import CALLCONV "dynamic" dyn_glSetFragmentShaderConstantATI
  :: FunPtr (GLuint -> Ptr GLfloat -> IO ())
  ->         GLuint -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glSetFragmentShaderConstantATI #-}
ptr_glSetFragmentShaderConstantATI :: FunPtr (GLuint -> Ptr GLfloat -> IO ())
ptr_glSetFragmentShaderConstantATI = unsafePerformIO $ getCommand "glSetFragmentShaderConstantATI"

-- glSetInvariantEXT -----------------------------------------------------------

glSetInvariantEXT
  :: GLuint -- ^ @id@.
  -> GLenum -- ^ @type@ of type @ScalarType@.
  -> Ptr a -- ^ @addr@ pointing to @COMPSIZE(id,type)@ elements of type @a@.
  -> IO ()
glSetInvariantEXT = dyn_glSetInvariantEXT ptr_glSetInvariantEXT

foreign import CALLCONV "dynamic" dyn_glSetInvariantEXT
  :: FunPtr (GLuint -> GLenum -> Ptr a -> IO ())
  ->         GLuint -> GLenum -> Ptr a -> IO ()

{-# NOINLINE ptr_glSetInvariantEXT #-}
ptr_glSetInvariantEXT :: FunPtr (GLuint -> GLenum -> Ptr a -> IO ())
ptr_glSetInvariantEXT = unsafePerformIO $ getCommand "glSetInvariantEXT"

-- glSetLocalConstantEXT -------------------------------------------------------

glSetLocalConstantEXT
  :: GLuint -- ^ @id@.
  -> GLenum -- ^ @type@ of type @ScalarType@.
  -> Ptr a -- ^ @addr@ pointing to @COMPSIZE(id,type)@ elements of type @a@.
  -> IO ()
glSetLocalConstantEXT = dyn_glSetLocalConstantEXT ptr_glSetLocalConstantEXT

foreign import CALLCONV "dynamic" dyn_glSetLocalConstantEXT
  :: FunPtr (GLuint -> GLenum -> Ptr a -> IO ())
  ->         GLuint -> GLenum -> Ptr a -> IO ()

{-# NOINLINE ptr_glSetLocalConstantEXT #-}
ptr_glSetLocalConstantEXT :: FunPtr (GLuint -> GLenum -> Ptr a -> IO ())
ptr_glSetLocalConstantEXT = unsafePerformIO $ getCommand "glSetLocalConstantEXT"

-- glSetMultisamplefvAMD -------------------------------------------------------

glSetMultisamplefvAMD
  :: GLenum -- ^ @pname@.
  -> GLuint -- ^ @index@.
  -> Ptr GLfloat -- ^ @val@ pointing to @2@ elements of type @GLfloat@.
  -> IO ()
glSetMultisamplefvAMD = dyn_glSetMultisamplefvAMD ptr_glSetMultisamplefvAMD

foreign import CALLCONV "dynamic" dyn_glSetMultisamplefvAMD
  :: FunPtr (GLenum -> GLuint -> Ptr GLfloat -> IO ())
  ->         GLenum -> GLuint -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glSetMultisamplefvAMD #-}
ptr_glSetMultisamplefvAMD :: FunPtr (GLenum -> GLuint -> Ptr GLfloat -> IO ())
ptr_glSetMultisamplefvAMD = unsafePerformIO $ getCommand "glSetMultisamplefvAMD"

-- glShadeModel ----------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glShadeModel.xml OpenGL 2.x>
glShadeModel
  :: GLenum -- ^ @mode@ of type @ShadingModel@.
  -> IO ()
glShadeModel = dyn_glShadeModel ptr_glShadeModel

foreign import CALLCONV "dynamic" dyn_glShadeModel
  :: FunPtr (GLenum -> IO ())
  ->         GLenum -> IO ()

{-# NOINLINE ptr_glShadeModel #-}
ptr_glShadeModel :: FunPtr (GLenum -> IO ())
ptr_glShadeModel = unsafePerformIO $ getCommand "glShadeModel"

-- glShaderBinary --------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glShaderBinary.xhtml OpenGL 4.x>
glShaderBinary
  :: GLsizei -- ^ @count@.
  -> Ptr GLuint -- ^ @shaders@ pointing to @count@ elements of type @GLuint@.
  -> GLenum -- ^ @binaryformat@.
  -> Ptr a -- ^ @binary@ pointing to @length@ elements of type @a@.
  -> GLsizei -- ^ @length@.
  -> IO ()
glShaderBinary = dyn_glShaderBinary ptr_glShaderBinary

foreign import CALLCONV "dynamic" dyn_glShaderBinary
  :: FunPtr (GLsizei -> Ptr GLuint -> GLenum -> Ptr a -> GLsizei -> IO ())
  ->         GLsizei -> Ptr GLuint -> GLenum -> Ptr a -> GLsizei -> IO ()

{-# NOINLINE ptr_glShaderBinary #-}
ptr_glShaderBinary :: FunPtr (GLsizei -> Ptr GLuint -> GLenum -> Ptr a -> GLsizei -> IO ())
ptr_glShaderBinary = unsafePerformIO $ getCommand "glShaderBinary"

-- glShaderOp1EXT --------------------------------------------------------------

glShaderOp1EXT
  :: GLenum -- ^ @op@ of type @VertexShaderOpEXT@.
  -> GLuint -- ^ @res@.
  -> GLuint -- ^ @arg1@.
  -> IO ()
glShaderOp1EXT = dyn_glShaderOp1EXT ptr_glShaderOp1EXT

foreign import CALLCONV "dynamic" dyn_glShaderOp1EXT
  :: FunPtr (GLenum -> GLuint -> GLuint -> IO ())
  ->         GLenum -> GLuint -> GLuint -> IO ()

{-# NOINLINE ptr_glShaderOp1EXT #-}
ptr_glShaderOp1EXT :: FunPtr (GLenum -> GLuint -> GLuint -> IO ())
ptr_glShaderOp1EXT = unsafePerformIO $ getCommand "glShaderOp1EXT"

-- glShaderOp2EXT --------------------------------------------------------------

glShaderOp2EXT
  :: GLenum -- ^ @op@ of type @VertexShaderOpEXT@.
  -> GLuint -- ^ @res@.
  -> GLuint -- ^ @arg1@.
  -> GLuint -- ^ @arg2@.
  -> IO ()
glShaderOp2EXT = dyn_glShaderOp2EXT ptr_glShaderOp2EXT

foreign import CALLCONV "dynamic" dyn_glShaderOp2EXT
  :: FunPtr (GLenum -> GLuint -> GLuint -> GLuint -> IO ())
  ->         GLenum -> GLuint -> GLuint -> GLuint -> IO ()

{-# NOINLINE ptr_glShaderOp2EXT #-}
ptr_glShaderOp2EXT :: FunPtr (GLenum -> GLuint -> GLuint -> GLuint -> IO ())
ptr_glShaderOp2EXT = unsafePerformIO $ getCommand "glShaderOp2EXT"

-- glShaderOp3EXT --------------------------------------------------------------

glShaderOp3EXT
  :: GLenum -- ^ @op@ of type @VertexShaderOpEXT@.
  -> GLuint -- ^ @res@.
  -> GLuint -- ^ @arg1@.
  -> GLuint -- ^ @arg2@.
  -> GLuint -- ^ @arg3@.
  -> IO ()
glShaderOp3EXT = dyn_glShaderOp3EXT ptr_glShaderOp3EXT

foreign import CALLCONV "dynamic" dyn_glShaderOp3EXT
  :: FunPtr (GLenum -> GLuint -> GLuint -> GLuint -> GLuint -> IO ())
  ->         GLenum -> GLuint -> GLuint -> GLuint -> GLuint -> IO ()

{-# NOINLINE ptr_glShaderOp3EXT #-}
ptr_glShaderOp3EXT :: FunPtr (GLenum -> GLuint -> GLuint -> GLuint -> GLuint -> IO ())
ptr_glShaderOp3EXT = unsafePerformIO $ getCommand "glShaderOp3EXT"

-- glShaderSource --------------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glShaderSource.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glShaderSource.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glShaderSource.xhtml OpenGL 4.x>
glShaderSource
  :: GLuint -- ^ @shader@.
  -> GLsizei -- ^ @count@.
  -> Ptr (Ptr GLchar) -- ^ @string@ pointing to @count@ elements of type @Ptr GLchar@.
  -> Ptr GLint -- ^ @length@ pointing to @count@ elements of type @GLint@.
  -> IO ()
glShaderSource = dyn_glShaderSource ptr_glShaderSource

foreign import CALLCONV "dynamic" dyn_glShaderSource
  :: FunPtr (GLuint -> GLsizei -> Ptr (Ptr GLchar) -> Ptr GLint -> IO ())
  ->         GLuint -> GLsizei -> Ptr (Ptr GLchar) -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glShaderSource #-}
ptr_glShaderSource :: FunPtr (GLuint -> GLsizei -> Ptr (Ptr GLchar) -> Ptr GLint -> IO ())
ptr_glShaderSource = unsafePerformIO $ getCommand "glShaderSource"

-- glShaderSourceARB -----------------------------------------------------------

glShaderSourceARB
  :: GLhandleARB -- ^ @shaderObj@ of type @handleARB@.
  -> GLsizei -- ^ @count@.
  -> Ptr (Ptr GLcharARB) -- ^ @string@ pointing to @count@ elements of type @Ptr GLcharARB@.
  -> Ptr GLint -- ^ @length@ pointing to @count@ elements of type @GLint@.
  -> IO ()
glShaderSourceARB = dyn_glShaderSourceARB ptr_glShaderSourceARB

foreign import CALLCONV "dynamic" dyn_glShaderSourceARB
  :: FunPtr (GLhandleARB -> GLsizei -> Ptr (Ptr GLcharARB) -> Ptr GLint -> IO ())
  ->         GLhandleARB -> GLsizei -> Ptr (Ptr GLcharARB) -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glShaderSourceARB #-}
ptr_glShaderSourceARB :: FunPtr (GLhandleARB -> GLsizei -> Ptr (Ptr GLcharARB) -> Ptr GLint -> IO ())
ptr_glShaderSourceARB = unsafePerformIO $ getCommand "glShaderSourceARB"

-- glShaderStorageBlockBinding -------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glShaderStorageBlockBinding.xhtml OpenGL 4.x>
glShaderStorageBlockBinding
  :: GLuint -- ^ @program@.
  -> GLuint -- ^ @storageBlockIndex@.
  -> GLuint -- ^ @storageBlockBinding@.
  -> IO ()
glShaderStorageBlockBinding = dyn_glShaderStorageBlockBinding ptr_glShaderStorageBlockBinding

foreign import CALLCONV "dynamic" dyn_glShaderStorageBlockBinding
  :: FunPtr (GLuint -> GLuint -> GLuint -> IO ())
  ->         GLuint -> GLuint -> GLuint -> IO ()

{-# NOINLINE ptr_glShaderStorageBlockBinding #-}
ptr_glShaderStorageBlockBinding :: FunPtr (GLuint -> GLuint -> GLuint -> IO ())
ptr_glShaderStorageBlockBinding = unsafePerformIO $ getCommand "glShaderStorageBlockBinding"

-- glSharpenTexFuncSGIS --------------------------------------------------------

glSharpenTexFuncSGIS
  :: GLenum -- ^ @target@ of type @TextureTarget@.
  -> GLsizei -- ^ @n@.
  -> Ptr GLfloat -- ^ @points@ pointing to @n*2@ elements of type @GLfloat@.
  -> IO ()
glSharpenTexFuncSGIS = dyn_glSharpenTexFuncSGIS ptr_glSharpenTexFuncSGIS

foreign import CALLCONV "dynamic" dyn_glSharpenTexFuncSGIS
  :: FunPtr (GLenum -> GLsizei -> Ptr GLfloat -> IO ())
  ->         GLenum -> GLsizei -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glSharpenTexFuncSGIS #-}
ptr_glSharpenTexFuncSGIS :: FunPtr (GLenum -> GLsizei -> Ptr GLfloat -> IO ())
ptr_glSharpenTexFuncSGIS = unsafePerformIO $ getCommand "glSharpenTexFuncSGIS"

-- glSpriteParameterfSGIX ------------------------------------------------------

glSpriteParameterfSGIX
  :: GLenum -- ^ @pname@ of type @SpriteParameterNameSGIX@.
  -> GLfloat -- ^ @param@ of type @CheckedFloat32@.
  -> IO ()
glSpriteParameterfSGIX = dyn_glSpriteParameterfSGIX ptr_glSpriteParameterfSGIX

foreign import CALLCONV "dynamic" dyn_glSpriteParameterfSGIX
  :: FunPtr (GLenum -> GLfloat -> IO ())
  ->         GLenum -> GLfloat -> IO ()

{-# NOINLINE ptr_glSpriteParameterfSGIX #-}
ptr_glSpriteParameterfSGIX :: FunPtr (GLenum -> GLfloat -> IO ())
ptr_glSpriteParameterfSGIX = unsafePerformIO $ getCommand "glSpriteParameterfSGIX"

-- glSpriteParameterfvSGIX -----------------------------------------------------

glSpriteParameterfvSGIX
  :: GLenum -- ^ @pname@ of type @SpriteParameterNameSGIX@.
  -> Ptr GLfloat -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @CheckedFloat32@.
  -> IO ()
glSpriteParameterfvSGIX = dyn_glSpriteParameterfvSGIX ptr_glSpriteParameterfvSGIX

foreign import CALLCONV "dynamic" dyn_glSpriteParameterfvSGIX
  :: FunPtr (GLenum -> Ptr GLfloat -> IO ())
  ->         GLenum -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glSpriteParameterfvSGIX #-}
ptr_glSpriteParameterfvSGIX :: FunPtr (GLenum -> Ptr GLfloat -> IO ())
ptr_glSpriteParameterfvSGIX = unsafePerformIO $ getCommand "glSpriteParameterfvSGIX"

-- glSpriteParameteriSGIX ------------------------------------------------------

glSpriteParameteriSGIX
  :: GLenum -- ^ @pname@ of type @SpriteParameterNameSGIX@.
  -> GLint -- ^ @param@ of type @CheckedInt32@.
  -> IO ()
glSpriteParameteriSGIX = dyn_glSpriteParameteriSGIX ptr_glSpriteParameteriSGIX

foreign import CALLCONV "dynamic" dyn_glSpriteParameteriSGIX
  :: FunPtr (GLenum -> GLint -> IO ())
  ->         GLenum -> GLint -> IO ()

{-# NOINLINE ptr_glSpriteParameteriSGIX #-}
ptr_glSpriteParameteriSGIX :: FunPtr (GLenum -> GLint -> IO ())
ptr_glSpriteParameteriSGIX = unsafePerformIO $ getCommand "glSpriteParameteriSGIX"

-- glSpriteParameterivSGIX -----------------------------------------------------

glSpriteParameterivSGIX
  :: GLenum -- ^ @pname@ of type @SpriteParameterNameSGIX@.
  -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @CheckedInt32@.
  -> IO ()
glSpriteParameterivSGIX = dyn_glSpriteParameterivSGIX ptr_glSpriteParameterivSGIX

foreign import CALLCONV "dynamic" dyn_glSpriteParameterivSGIX
  :: FunPtr (GLenum -> Ptr GLint -> IO ())
  ->         GLenum -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glSpriteParameterivSGIX #-}
ptr_glSpriteParameterivSGIX :: FunPtr (GLenum -> Ptr GLint -> IO ())
ptr_glSpriteParameterivSGIX = unsafePerformIO $ getCommand "glSpriteParameterivSGIX"

-- glStartInstrumentsSGIX ------------------------------------------------------

glStartInstrumentsSGIX
  :: IO ()
glStartInstrumentsSGIX = dyn_glStartInstrumentsSGIX ptr_glStartInstrumentsSGIX

foreign import CALLCONV "dynamic" dyn_glStartInstrumentsSGIX
  :: FunPtr (IO ())
  ->         IO ()

{-# NOINLINE ptr_glStartInstrumentsSGIX #-}
ptr_glStartInstrumentsSGIX :: FunPtr (IO ())
ptr_glStartInstrumentsSGIX = unsafePerformIO $ getCommand "glStartInstrumentsSGIX"

-- glStartTilingQCOM -----------------------------------------------------------

glStartTilingQCOM
  :: GLuint -- ^ @x@.
  -> GLuint -- ^ @y@.
  -> GLuint -- ^ @width@.
  -> GLuint -- ^ @height@.
  -> GLbitfield -- ^ @preserveMask@.
  -> IO ()
glStartTilingQCOM = dyn_glStartTilingQCOM ptr_glStartTilingQCOM

foreign import CALLCONV "dynamic" dyn_glStartTilingQCOM
  :: FunPtr (GLuint -> GLuint -> GLuint -> GLuint -> GLbitfield -> IO ())
  ->         GLuint -> GLuint -> GLuint -> GLuint -> GLbitfield -> IO ()

{-# NOINLINE ptr_glStartTilingQCOM #-}
ptr_glStartTilingQCOM :: FunPtr (GLuint -> GLuint -> GLuint -> GLuint -> GLbitfield -> IO ())
ptr_glStartTilingQCOM = unsafePerformIO $ getCommand "glStartTilingQCOM"

-- glStencilClearTagEXT --------------------------------------------------------

glStencilClearTagEXT
  :: GLsizei -- ^ @stencilTagBits@.
  -> GLuint -- ^ @stencilClearTag@.
  -> IO ()
glStencilClearTagEXT = dyn_glStencilClearTagEXT ptr_glStencilClearTagEXT

foreign import CALLCONV "dynamic" dyn_glStencilClearTagEXT
  :: FunPtr (GLsizei -> GLuint -> IO ())
  ->         GLsizei -> GLuint -> IO ()

{-# NOINLINE ptr_glStencilClearTagEXT #-}
ptr_glStencilClearTagEXT :: FunPtr (GLsizei -> GLuint -> IO ())
ptr_glStencilClearTagEXT = unsafePerformIO $ getCommand "glStencilClearTagEXT"

-- glStencilFillPathInstancedNV ------------------------------------------------

glStencilFillPathInstancedNV
  :: GLsizei -- ^ @numPaths@.
  -> GLenum -- ^ @pathNameType@ of type @PathElementType@.
  -> Ptr a -- ^ @paths@ pointing to @COMPSIZE(numPaths,pathNameType,paths)@ elements of type @PathElement@.
  -> GLuint -- ^ @pathBase@ of type @Path@.
  -> GLenum -- ^ @fillMode@ of type @PathFillMode@.
  -> GLuint -- ^ @mask@ of type @MaskedStencilValue@.
  -> GLenum -- ^ @transformType@ of type @PathTransformType@.
  -> Ptr GLfloat -- ^ @transformValues@ pointing to @COMPSIZE(numPaths,transformType)@ elements of type @GLfloat@.
  -> IO ()
glStencilFillPathInstancedNV = dyn_glStencilFillPathInstancedNV ptr_glStencilFillPathInstancedNV

foreign import CALLCONV "dynamic" dyn_glStencilFillPathInstancedNV
  :: FunPtr (GLsizei -> GLenum -> Ptr a -> GLuint -> GLenum -> GLuint -> GLenum -> Ptr GLfloat -> IO ())
  ->         GLsizei -> GLenum -> Ptr a -> GLuint -> GLenum -> GLuint -> GLenum -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glStencilFillPathInstancedNV #-}
ptr_glStencilFillPathInstancedNV :: FunPtr (GLsizei -> GLenum -> Ptr a -> GLuint -> GLenum -> GLuint -> GLenum -> Ptr GLfloat -> IO ())
ptr_glStencilFillPathInstancedNV = unsafePerformIO $ getCommand "glStencilFillPathInstancedNV"

-- glStencilFillPathNV ---------------------------------------------------------

glStencilFillPathNV
  :: GLuint -- ^ @path@ of type @Path@.
  -> GLenum -- ^ @fillMode@ of type @PathFillMode@.
  -> GLuint -- ^ @mask@ of type @MaskedStencilValue@.
  -> IO ()
glStencilFillPathNV = dyn_glStencilFillPathNV ptr_glStencilFillPathNV

foreign import CALLCONV "dynamic" dyn_glStencilFillPathNV
  :: FunPtr (GLuint -> GLenum -> GLuint -> IO ())
  ->         GLuint -> GLenum -> GLuint -> IO ()

{-# NOINLINE ptr_glStencilFillPathNV #-}
ptr_glStencilFillPathNV :: FunPtr (GLuint -> GLenum -> GLuint -> IO ())
ptr_glStencilFillPathNV = unsafePerformIO $ getCommand "glStencilFillPathNV"

-- glStencilFunc ---------------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glStencilFunc.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glStencilFunc.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glStencilFunc.xhtml OpenGL 4.x>
glStencilFunc
  :: GLenum -- ^ @func@ of type @StencilFunction@.
  -> GLint -- ^ @ref@ of type @StencilValue@.
  -> GLuint -- ^ @mask@ of type @MaskedStencilValue@.
  -> IO ()
glStencilFunc = dyn_glStencilFunc ptr_glStencilFunc

foreign import CALLCONV "dynamic" dyn_glStencilFunc
  :: FunPtr (GLenum -> GLint -> GLuint -> IO ())
  ->         GLenum -> GLint -> GLuint -> IO ()

{-# NOINLINE ptr_glStencilFunc #-}
ptr_glStencilFunc :: FunPtr (GLenum -> GLint -> GLuint -> IO ())
ptr_glStencilFunc = unsafePerformIO $ getCommand "glStencilFunc"

-- glStencilFuncSeparate -------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glStencilFuncSeparate.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glStencilFuncSeparate.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glStencilFuncSeparate.xhtml OpenGL 4.x>
glStencilFuncSeparate
  :: GLenum -- ^ @face@ of type @StencilFaceDirection@.
  -> GLenum -- ^ @func@ of type @StencilFunction@.
  -> GLint -- ^ @ref@ of type @StencilValue@.
  -> GLuint -- ^ @mask@ of type @MaskedStencilValue@.
  -> IO ()
glStencilFuncSeparate = dyn_glStencilFuncSeparate ptr_glStencilFuncSeparate

foreign import CALLCONV "dynamic" dyn_glStencilFuncSeparate
  :: FunPtr (GLenum -> GLenum -> GLint -> GLuint -> IO ())
  ->         GLenum -> GLenum -> GLint -> GLuint -> IO ()

{-# NOINLINE ptr_glStencilFuncSeparate #-}
ptr_glStencilFuncSeparate :: FunPtr (GLenum -> GLenum -> GLint -> GLuint -> IO ())
ptr_glStencilFuncSeparate = unsafePerformIO $ getCommand "glStencilFuncSeparate"

-- glStencilFuncSeparateATI ----------------------------------------------------

glStencilFuncSeparateATI
  :: GLenum -- ^ @frontfunc@ of type @StencilFunction@.
  -> GLenum -- ^ @backfunc@ of type @StencilFunction@.
  -> GLint -- ^ @ref@ of type @ClampedStencilValue@.
  -> GLuint -- ^ @mask@ of type @MaskedStencilValue@.
  -> IO ()
glStencilFuncSeparateATI = dyn_glStencilFuncSeparateATI ptr_glStencilFuncSeparateATI

foreign import CALLCONV "dynamic" dyn_glStencilFuncSeparateATI
  :: FunPtr (GLenum -> GLenum -> GLint -> GLuint -> IO ())
  ->         GLenum -> GLenum -> GLint -> GLuint -> IO ()

{-# NOINLINE ptr_glStencilFuncSeparateATI #-}
ptr_glStencilFuncSeparateATI :: FunPtr (GLenum -> GLenum -> GLint -> GLuint -> IO ())
ptr_glStencilFuncSeparateATI = unsafePerformIO $ getCommand "glStencilFuncSeparateATI"

-- glStencilMask ---------------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glStencilMask.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glStencilMask.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glStencilMask.xhtml OpenGL 4.x>
glStencilMask
  :: GLuint -- ^ @mask@ of type @MaskedStencilValue@.
  -> IO ()
glStencilMask = dyn_glStencilMask ptr_glStencilMask

foreign import CALLCONV "dynamic" dyn_glStencilMask
  :: FunPtr (GLuint -> IO ())
  ->         GLuint -> IO ()

{-# NOINLINE ptr_glStencilMask #-}
ptr_glStencilMask :: FunPtr (GLuint -> IO ())
ptr_glStencilMask = unsafePerformIO $ getCommand "glStencilMask"

-- glStencilMaskSeparate -------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glStencilMaskSeparate.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glStencilMaskSeparate.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glStencilMaskSeparate.xhtml OpenGL 4.x>
glStencilMaskSeparate
  :: GLenum -- ^ @face@ of type @StencilFaceDirection@.
  -> GLuint -- ^ @mask@ of type @MaskedStencilValue@.
  -> IO ()
glStencilMaskSeparate = dyn_glStencilMaskSeparate ptr_glStencilMaskSeparate

foreign import CALLCONV "dynamic" dyn_glStencilMaskSeparate
  :: FunPtr (GLenum -> GLuint -> IO ())
  ->         GLenum -> GLuint -> IO ()

{-# NOINLINE ptr_glStencilMaskSeparate #-}
ptr_glStencilMaskSeparate :: FunPtr (GLenum -> GLuint -> IO ())
ptr_glStencilMaskSeparate = unsafePerformIO $ getCommand "glStencilMaskSeparate"

-- glStencilOp -----------------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glStencilOp.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glStencilOp.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glStencilOp.xhtml OpenGL 4.x>
glStencilOp
  :: GLenum -- ^ @fail@ of type @StencilOp@.
  -> GLenum -- ^ @zfail@ of type @StencilOp@.
  -> GLenum -- ^ @zpass@ of type @StencilOp@.
  -> IO ()
glStencilOp = dyn_glStencilOp ptr_glStencilOp

foreign import CALLCONV "dynamic" dyn_glStencilOp
  :: FunPtr (GLenum -> GLenum -> GLenum -> IO ())
  ->         GLenum -> GLenum -> GLenum -> IO ()

{-# NOINLINE ptr_glStencilOp #-}
ptr_glStencilOp :: FunPtr (GLenum -> GLenum -> GLenum -> IO ())
ptr_glStencilOp = unsafePerformIO $ getCommand "glStencilOp"

-- glStencilOpSeparate ---------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glStencilOpSeparate.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glStencilOpSeparate.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glStencilOpSeparate.xhtml OpenGL 4.x>
glStencilOpSeparate
  :: GLenum -- ^ @face@ of type @StencilFaceDirection@.
  -> GLenum -- ^ @sfail@ of type @StencilOp@.
  -> GLenum -- ^ @dpfail@ of type @StencilOp@.
  -> GLenum -- ^ @dppass@ of type @StencilOp@.
  -> IO ()
glStencilOpSeparate = dyn_glStencilOpSeparate ptr_glStencilOpSeparate

foreign import CALLCONV "dynamic" dyn_glStencilOpSeparate
  :: FunPtr (GLenum -> GLenum -> GLenum -> GLenum -> IO ())
  ->         GLenum -> GLenum -> GLenum -> GLenum -> IO ()

{-# NOINLINE ptr_glStencilOpSeparate #-}
ptr_glStencilOpSeparate :: FunPtr (GLenum -> GLenum -> GLenum -> GLenum -> IO ())
ptr_glStencilOpSeparate = unsafePerformIO $ getCommand "glStencilOpSeparate"

-- glStencilOpSeparateATI ------------------------------------------------------

glStencilOpSeparateATI
  :: GLenum -- ^ @face@ of type @StencilFaceDirection@.
  -> GLenum -- ^ @sfail@ of type @StencilOp@.
  -> GLenum -- ^ @dpfail@ of type @StencilOp@.
  -> GLenum -- ^ @dppass@ of type @StencilOp@.
  -> IO ()
glStencilOpSeparateATI = dyn_glStencilOpSeparateATI ptr_glStencilOpSeparateATI

foreign import CALLCONV "dynamic" dyn_glStencilOpSeparateATI
  :: FunPtr (GLenum -> GLenum -> GLenum -> GLenum -> IO ())
  ->         GLenum -> GLenum -> GLenum -> GLenum -> IO ()

{-# NOINLINE ptr_glStencilOpSeparateATI #-}
ptr_glStencilOpSeparateATI :: FunPtr (GLenum -> GLenum -> GLenum -> GLenum -> IO ())
ptr_glStencilOpSeparateATI = unsafePerformIO $ getCommand "glStencilOpSeparateATI"

-- glStencilOpValueAMD ---------------------------------------------------------

glStencilOpValueAMD
  :: GLenum -- ^ @face@ of type @StencilFaceDirection@.
  -> GLuint -- ^ @value@.
  -> IO ()
glStencilOpValueAMD = dyn_glStencilOpValueAMD ptr_glStencilOpValueAMD

foreign import CALLCONV "dynamic" dyn_glStencilOpValueAMD
  :: FunPtr (GLenum -> GLuint -> IO ())
  ->         GLenum -> GLuint -> IO ()

{-# NOINLINE ptr_glStencilOpValueAMD #-}
ptr_glStencilOpValueAMD :: FunPtr (GLenum -> GLuint -> IO ())
ptr_glStencilOpValueAMD = unsafePerformIO $ getCommand "glStencilOpValueAMD"

-- glStencilStrokePathInstancedNV ----------------------------------------------

glStencilStrokePathInstancedNV
  :: GLsizei -- ^ @numPaths@.
  -> GLenum -- ^ @pathNameType@ of type @PathElementType@.
  -> Ptr a -- ^ @paths@ pointing to @COMPSIZE(numPaths,pathNameType,paths)@ elements of type @PathElement@.
  -> GLuint -- ^ @pathBase@ of type @Path@.
  -> GLint -- ^ @reference@ of type @StencilValue@.
  -> GLuint -- ^ @mask@ of type @MaskedStencilValue@.
  -> GLenum -- ^ @transformType@ of type @PathTransformType@.
  -> Ptr GLfloat -- ^ @transformValues@ pointing to @COMPSIZE(numPaths,transformType)@ elements of type @GLfloat@.
  -> IO ()
glStencilStrokePathInstancedNV = dyn_glStencilStrokePathInstancedNV ptr_glStencilStrokePathInstancedNV

foreign import CALLCONV "dynamic" dyn_glStencilStrokePathInstancedNV
  :: FunPtr (GLsizei -> GLenum -> Ptr a -> GLuint -> GLint -> GLuint -> GLenum -> Ptr GLfloat -> IO ())
  ->         GLsizei -> GLenum -> Ptr a -> GLuint -> GLint -> GLuint -> GLenum -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glStencilStrokePathInstancedNV #-}
ptr_glStencilStrokePathInstancedNV :: FunPtr (GLsizei -> GLenum -> Ptr a -> GLuint -> GLint -> GLuint -> GLenum -> Ptr GLfloat -> IO ())
ptr_glStencilStrokePathInstancedNV = unsafePerformIO $ getCommand "glStencilStrokePathInstancedNV"

-- glStencilStrokePathNV -------------------------------------------------------

glStencilStrokePathNV
  :: GLuint -- ^ @path@ of type @Path@.
  -> GLint -- ^ @reference@ of type @StencilValue@.
  -> GLuint -- ^ @mask@ of type @MaskedStencilValue@.
  -> IO ()
glStencilStrokePathNV = dyn_glStencilStrokePathNV ptr_glStencilStrokePathNV

foreign import CALLCONV "dynamic" dyn_glStencilStrokePathNV
  :: FunPtr (GLuint -> GLint -> GLuint -> IO ())
  ->         GLuint -> GLint -> GLuint -> IO ()

{-# NOINLINE ptr_glStencilStrokePathNV #-}
ptr_glStencilStrokePathNV :: FunPtr (GLuint -> GLint -> GLuint -> IO ())
ptr_glStencilStrokePathNV = unsafePerformIO $ getCommand "glStencilStrokePathNV"

-- glStencilThenCoverFillPathInstancedNV ---------------------------------------

glStencilThenCoverFillPathInstancedNV
  :: GLsizei -- ^ @numPaths@.
  -> GLenum -- ^ @pathNameType@.
  -> Ptr a -- ^ @paths@.
  -> GLuint -- ^ @pathBase@.
  -> GLenum -- ^ @fillMode@.
  -> GLuint -- ^ @mask@.
  -> GLenum -- ^ @coverMode@.
  -> GLenum -- ^ @transformType@.
  -> Ptr GLfloat -- ^ @transformValues@.
  -> IO ()
glStencilThenCoverFillPathInstancedNV = dyn_glStencilThenCoverFillPathInstancedNV ptr_glStencilThenCoverFillPathInstancedNV

foreign import CALLCONV "dynamic" dyn_glStencilThenCoverFillPathInstancedNV
  :: FunPtr (GLsizei -> GLenum -> Ptr a -> GLuint -> GLenum -> GLuint -> GLenum -> GLenum -> Ptr GLfloat -> IO ())
  ->         GLsizei -> GLenum -> Ptr a -> GLuint -> GLenum -> GLuint -> GLenum -> GLenum -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glStencilThenCoverFillPathInstancedNV #-}
ptr_glStencilThenCoverFillPathInstancedNV :: FunPtr (GLsizei -> GLenum -> Ptr a -> GLuint -> GLenum -> GLuint -> GLenum -> GLenum -> Ptr GLfloat -> IO ())
ptr_glStencilThenCoverFillPathInstancedNV = unsafePerformIO $ getCommand "glStencilThenCoverFillPathInstancedNV"

-- glStencilThenCoverFillPathNV ------------------------------------------------

glStencilThenCoverFillPathNV
  :: GLuint -- ^ @path@.
  -> GLenum -- ^ @fillMode@.
  -> GLuint -- ^ @mask@.
  -> GLenum -- ^ @coverMode@.
  -> IO ()
glStencilThenCoverFillPathNV = dyn_glStencilThenCoverFillPathNV ptr_glStencilThenCoverFillPathNV

foreign import CALLCONV "dynamic" dyn_glStencilThenCoverFillPathNV
  :: FunPtr (GLuint -> GLenum -> GLuint -> GLenum -> IO ())
  ->         GLuint -> GLenum -> GLuint -> GLenum -> IO ()

{-# NOINLINE ptr_glStencilThenCoverFillPathNV #-}
ptr_glStencilThenCoverFillPathNV :: FunPtr (GLuint -> GLenum -> GLuint -> GLenum -> IO ())
ptr_glStencilThenCoverFillPathNV = unsafePerformIO $ getCommand "glStencilThenCoverFillPathNV"

-- glStencilThenCoverStrokePathInstancedNV -------------------------------------

glStencilThenCoverStrokePathInstancedNV
  :: GLsizei -- ^ @numPaths@.
  -> GLenum -- ^ @pathNameType@.
  -> Ptr a -- ^ @paths@.
  -> GLuint -- ^ @pathBase@.
  -> GLint -- ^ @reference@.
  -> GLuint -- ^ @mask@.
  -> GLenum -- ^ @coverMode@.
  -> GLenum -- ^ @transformType@.
  -> Ptr GLfloat -- ^ @transformValues@.
  -> IO ()
glStencilThenCoverStrokePathInstancedNV = dyn_glStencilThenCoverStrokePathInstancedNV ptr_glStencilThenCoverStrokePathInstancedNV

foreign import CALLCONV "dynamic" dyn_glStencilThenCoverStrokePathInstancedNV
  :: FunPtr (GLsizei -> GLenum -> Ptr a -> GLuint -> GLint -> GLuint -> GLenum -> GLenum -> Ptr GLfloat -> IO ())
  ->         GLsizei -> GLenum -> Ptr a -> GLuint -> GLint -> GLuint -> GLenum -> GLenum -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glStencilThenCoverStrokePathInstancedNV #-}
ptr_glStencilThenCoverStrokePathInstancedNV :: FunPtr (GLsizei -> GLenum -> Ptr a -> GLuint -> GLint -> GLuint -> GLenum -> GLenum -> Ptr GLfloat -> IO ())
ptr_glStencilThenCoverStrokePathInstancedNV = unsafePerformIO $ getCommand "glStencilThenCoverStrokePathInstancedNV"

-- glStencilThenCoverStrokePathNV ----------------------------------------------

glStencilThenCoverStrokePathNV
  :: GLuint -- ^ @path@.
  -> GLint -- ^ @reference@.
  -> GLuint -- ^ @mask@.
  -> GLenum -- ^ @coverMode@.
  -> IO ()
glStencilThenCoverStrokePathNV = dyn_glStencilThenCoverStrokePathNV ptr_glStencilThenCoverStrokePathNV

foreign import CALLCONV "dynamic" dyn_glStencilThenCoverStrokePathNV
  :: FunPtr (GLuint -> GLint -> GLuint -> GLenum -> IO ())
  ->         GLuint -> GLint -> GLuint -> GLenum -> IO ()

{-# NOINLINE ptr_glStencilThenCoverStrokePathNV #-}
ptr_glStencilThenCoverStrokePathNV :: FunPtr (GLuint -> GLint -> GLuint -> GLenum -> IO ())
ptr_glStencilThenCoverStrokePathNV = unsafePerformIO $ getCommand "glStencilThenCoverStrokePathNV"

-- glStopInstrumentsSGIX -------------------------------------------------------

glStopInstrumentsSGIX
  :: GLint -- ^ @marker@.
  -> IO ()
glStopInstrumentsSGIX = dyn_glStopInstrumentsSGIX ptr_glStopInstrumentsSGIX

foreign import CALLCONV "dynamic" dyn_glStopInstrumentsSGIX
  :: FunPtr (GLint -> IO ())
  ->         GLint -> IO ()

{-# NOINLINE ptr_glStopInstrumentsSGIX #-}
ptr_glStopInstrumentsSGIX :: FunPtr (GLint -> IO ())
ptr_glStopInstrumentsSGIX = unsafePerformIO $ getCommand "glStopInstrumentsSGIX"

-- glStringMarkerGREMEDY -------------------------------------------------------

glStringMarkerGREMEDY
  :: GLsizei -- ^ @len@.
  -> Ptr a -- ^ @string@ pointing to @len@ elements of type @a@.
  -> IO ()
glStringMarkerGREMEDY = dyn_glStringMarkerGREMEDY ptr_glStringMarkerGREMEDY

foreign import CALLCONV "dynamic" dyn_glStringMarkerGREMEDY
  :: FunPtr (GLsizei -> Ptr a -> IO ())
  ->         GLsizei -> Ptr a -> IO ()

{-# NOINLINE ptr_glStringMarkerGREMEDY #-}
ptr_glStringMarkerGREMEDY :: FunPtr (GLsizei -> Ptr a -> IO ())
ptr_glStringMarkerGREMEDY = unsafePerformIO $ getCommand "glStringMarkerGREMEDY"

-- glSubpixelPrecisionBiasNV ---------------------------------------------------

glSubpixelPrecisionBiasNV
  :: GLuint -- ^ @xbits@.
  -> GLuint -- ^ @ybits@.
  -> IO ()
glSubpixelPrecisionBiasNV = dyn_glSubpixelPrecisionBiasNV ptr_glSubpixelPrecisionBiasNV

foreign import CALLCONV "dynamic" dyn_glSubpixelPrecisionBiasNV
  :: FunPtr (GLuint -> GLuint -> IO ())
  ->         GLuint -> GLuint -> IO ()

{-# NOINLINE ptr_glSubpixelPrecisionBiasNV #-}
ptr_glSubpixelPrecisionBiasNV :: FunPtr (GLuint -> GLuint -> IO ())
ptr_glSubpixelPrecisionBiasNV = unsafePerformIO $ getCommand "glSubpixelPrecisionBiasNV"

-- glSwizzleEXT ----------------------------------------------------------------

glSwizzleEXT
  :: GLuint -- ^ @res@.
  -> GLuint -- ^ @in@.
  -> GLenum -- ^ @outX@ of type @VertexShaderCoordOutEXT@.
  -> GLenum -- ^ @outY@ of type @VertexShaderCoordOutEXT@.
  -> GLenum -- ^ @outZ@ of type @VertexShaderCoordOutEXT@.
  -> GLenum -- ^ @outW@ of type @VertexShaderCoordOutEXT@.
  -> IO ()
glSwizzleEXT = dyn_glSwizzleEXT ptr_glSwizzleEXT

foreign import CALLCONV "dynamic" dyn_glSwizzleEXT
  :: FunPtr (GLuint -> GLuint -> GLenum -> GLenum -> GLenum -> GLenum -> IO ())
  ->         GLuint -> GLuint -> GLenum -> GLenum -> GLenum -> GLenum -> IO ()

{-# NOINLINE ptr_glSwizzleEXT #-}
ptr_glSwizzleEXT :: FunPtr (GLuint -> GLuint -> GLenum -> GLenum -> GLenum -> GLenum -> IO ())
ptr_glSwizzleEXT = unsafePerformIO $ getCommand "glSwizzleEXT"

-- glSyncTextureINTEL ----------------------------------------------------------

glSyncTextureINTEL
  :: GLuint -- ^ @texture@.
  -> IO ()
glSyncTextureINTEL = dyn_glSyncTextureINTEL ptr_glSyncTextureINTEL

foreign import CALLCONV "dynamic" dyn_glSyncTextureINTEL
  :: FunPtr (GLuint -> IO ())
  ->         GLuint -> IO ()

{-# NOINLINE ptr_glSyncTextureINTEL #-}
ptr_glSyncTextureINTEL :: FunPtr (GLuint -> IO ())
ptr_glSyncTextureINTEL = unsafePerformIO $ getCommand "glSyncTextureINTEL"

-- glTagSampleBufferSGIX -------------------------------------------------------

glTagSampleBufferSGIX
  :: IO ()
glTagSampleBufferSGIX = dyn_glTagSampleBufferSGIX ptr_glTagSampleBufferSGIX

foreign import CALLCONV "dynamic" dyn_glTagSampleBufferSGIX
  :: FunPtr (IO ())
  ->         IO ()

{-# NOINLINE ptr_glTagSampleBufferSGIX #-}
ptr_glTagSampleBufferSGIX :: FunPtr (IO ())
ptr_glTagSampleBufferSGIX = unsafePerformIO $ getCommand "glTagSampleBufferSGIX"

-- glTangent3bEXT --------------------------------------------------------------

glTangent3bEXT
  :: GLbyte -- ^ @tx@.
  -> GLbyte -- ^ @ty@.
  -> GLbyte -- ^ @tz@.
  -> IO ()
glTangent3bEXT = dyn_glTangent3bEXT ptr_glTangent3bEXT

foreign import CALLCONV "dynamic" dyn_glTangent3bEXT
  :: FunPtr (GLbyte -> GLbyte -> GLbyte -> IO ())
  ->         GLbyte -> GLbyte -> GLbyte -> IO ()

{-# NOINLINE ptr_glTangent3bEXT #-}
ptr_glTangent3bEXT :: FunPtr (GLbyte -> GLbyte -> GLbyte -> IO ())
ptr_glTangent3bEXT = unsafePerformIO $ getCommand "glTangent3bEXT"

-- glTangent3bvEXT -------------------------------------------------------------

glTangent3bvEXT
  :: Ptr GLbyte -- ^ @v@ pointing to @3@ elements of type @GLbyte@.
  -> IO ()
glTangent3bvEXT = dyn_glTangent3bvEXT ptr_glTangent3bvEXT

foreign import CALLCONV "dynamic" dyn_glTangent3bvEXT
  :: FunPtr (Ptr GLbyte -> IO ())
  ->         Ptr GLbyte -> IO ()

{-# NOINLINE ptr_glTangent3bvEXT #-}
ptr_glTangent3bvEXT :: FunPtr (Ptr GLbyte -> IO ())
ptr_glTangent3bvEXT = unsafePerformIO $ getCommand "glTangent3bvEXT"

-- glTangent3dEXT --------------------------------------------------------------

glTangent3dEXT
  :: GLdouble -- ^ @tx@ of type @CoordD@.
  -> GLdouble -- ^ @ty@ of type @CoordD@.
  -> GLdouble -- ^ @tz@ of type @CoordD@.
  -> IO ()
glTangent3dEXT = dyn_glTangent3dEXT ptr_glTangent3dEXT

foreign import CALLCONV "dynamic" dyn_glTangent3dEXT
  :: FunPtr (GLdouble -> GLdouble -> GLdouble -> IO ())
  ->         GLdouble -> GLdouble -> GLdouble -> IO ()

{-# NOINLINE ptr_glTangent3dEXT #-}
ptr_glTangent3dEXT :: FunPtr (GLdouble -> GLdouble -> GLdouble -> IO ())
ptr_glTangent3dEXT = unsafePerformIO $ getCommand "glTangent3dEXT"

-- glTangent3dvEXT -------------------------------------------------------------

glTangent3dvEXT
  :: Ptr GLdouble -- ^ @v@ pointing to @3@ elements of type @CoordD@.
  -> IO ()
glTangent3dvEXT = dyn_glTangent3dvEXT ptr_glTangent3dvEXT

foreign import CALLCONV "dynamic" dyn_glTangent3dvEXT
  :: FunPtr (Ptr GLdouble -> IO ())
  ->         Ptr GLdouble -> IO ()

{-# NOINLINE ptr_glTangent3dvEXT #-}
ptr_glTangent3dvEXT :: FunPtr (Ptr GLdouble -> IO ())
ptr_glTangent3dvEXT = unsafePerformIO $ getCommand "glTangent3dvEXT"

-- glTangent3fEXT --------------------------------------------------------------

glTangent3fEXT
  :: GLfloat -- ^ @tx@ of type @CoordF@.
  -> GLfloat -- ^ @ty@ of type @CoordF@.
  -> GLfloat -- ^ @tz@ of type @CoordF@.
  -> IO ()
glTangent3fEXT = dyn_glTangent3fEXT ptr_glTangent3fEXT

foreign import CALLCONV "dynamic" dyn_glTangent3fEXT
  :: FunPtr (GLfloat -> GLfloat -> GLfloat -> IO ())
  ->         GLfloat -> GLfloat -> GLfloat -> IO ()

{-# NOINLINE ptr_glTangent3fEXT #-}
ptr_glTangent3fEXT :: FunPtr (GLfloat -> GLfloat -> GLfloat -> IO ())
ptr_glTangent3fEXT = unsafePerformIO $ getCommand "glTangent3fEXT"

-- glTangent3fvEXT -------------------------------------------------------------

glTangent3fvEXT
  :: Ptr GLfloat -- ^ @v@ pointing to @3@ elements of type @CoordF@.
  -> IO ()
glTangent3fvEXT = dyn_glTangent3fvEXT ptr_glTangent3fvEXT

foreign import CALLCONV "dynamic" dyn_glTangent3fvEXT
  :: FunPtr (Ptr GLfloat -> IO ())
  ->         Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glTangent3fvEXT #-}
ptr_glTangent3fvEXT :: FunPtr (Ptr GLfloat -> IO ())
ptr_glTangent3fvEXT = unsafePerformIO $ getCommand "glTangent3fvEXT"

-- glTangent3iEXT --------------------------------------------------------------

glTangent3iEXT
  :: GLint -- ^ @tx@.
  -> GLint -- ^ @ty@.
  -> GLint -- ^ @tz@.
  -> IO ()
glTangent3iEXT = dyn_glTangent3iEXT ptr_glTangent3iEXT

foreign import CALLCONV "dynamic" dyn_glTangent3iEXT
  :: FunPtr (GLint -> GLint -> GLint -> IO ())
  ->         GLint -> GLint -> GLint -> IO ()

{-# NOINLINE ptr_glTangent3iEXT #-}
ptr_glTangent3iEXT :: FunPtr (GLint -> GLint -> GLint -> IO ())
ptr_glTangent3iEXT = unsafePerformIO $ getCommand "glTangent3iEXT"

-- glTangent3ivEXT -------------------------------------------------------------

glTangent3ivEXT
  :: Ptr GLint -- ^ @v@ pointing to @3@ elements of type @GLint@.
  -> IO ()
glTangent3ivEXT = dyn_glTangent3ivEXT ptr_glTangent3ivEXT

foreign import CALLCONV "dynamic" dyn_glTangent3ivEXT
  :: FunPtr (Ptr GLint -> IO ())
  ->         Ptr GLint -> IO ()

{-# NOINLINE ptr_glTangent3ivEXT #-}
ptr_glTangent3ivEXT :: FunPtr (Ptr GLint -> IO ())
ptr_glTangent3ivEXT = unsafePerformIO $ getCommand "glTangent3ivEXT"

-- glTangent3sEXT --------------------------------------------------------------

glTangent3sEXT
  :: GLshort -- ^ @tx@.
  -> GLshort -- ^ @ty@.
  -> GLshort -- ^ @tz@.
  -> IO ()
glTangent3sEXT = dyn_glTangent3sEXT ptr_glTangent3sEXT

foreign import CALLCONV "dynamic" dyn_glTangent3sEXT
  :: FunPtr (GLshort -> GLshort -> GLshort -> IO ())
  ->         GLshort -> GLshort -> GLshort -> IO ()

{-# NOINLINE ptr_glTangent3sEXT #-}
ptr_glTangent3sEXT :: FunPtr (GLshort -> GLshort -> GLshort -> IO ())
ptr_glTangent3sEXT = unsafePerformIO $ getCommand "glTangent3sEXT"

-- glTangent3svEXT -------------------------------------------------------------

glTangent3svEXT
  :: Ptr GLshort -- ^ @v@ pointing to @3@ elements of type @GLshort@.
  -> IO ()
glTangent3svEXT = dyn_glTangent3svEXT ptr_glTangent3svEXT

foreign import CALLCONV "dynamic" dyn_glTangent3svEXT
  :: FunPtr (Ptr GLshort -> IO ())
  ->         Ptr GLshort -> IO ()

{-# NOINLINE ptr_glTangent3svEXT #-}
ptr_glTangent3svEXT :: FunPtr (Ptr GLshort -> IO ())
ptr_glTangent3svEXT = unsafePerformIO $ getCommand "glTangent3svEXT"

-- glTangentPointerEXT ---------------------------------------------------------

glTangentPointerEXT
  :: GLenum -- ^ @type@ of type @TangentPointerTypeEXT@.
  -> GLsizei -- ^ @stride@.
  -> Ptr a -- ^ @pointer@ pointing to @COMPSIZE(type,stride)@ elements of type @a@.
  -> IO ()
glTangentPointerEXT = dyn_glTangentPointerEXT ptr_glTangentPointerEXT

foreign import CALLCONV "dynamic" dyn_glTangentPointerEXT
  :: FunPtr (GLenum -> GLsizei -> Ptr a -> IO ())
  ->         GLenum -> GLsizei -> Ptr a -> IO ()

{-# NOINLINE ptr_glTangentPointerEXT #-}
ptr_glTangentPointerEXT :: FunPtr (GLenum -> GLsizei -> Ptr a -> IO ())
ptr_glTangentPointerEXT = unsafePerformIO $ getCommand "glTangentPointerEXT"

-- glTbufferMask3DFX -----------------------------------------------------------

glTbufferMask3DFX
  :: GLuint -- ^ @mask@.
  -> IO ()
glTbufferMask3DFX = dyn_glTbufferMask3DFX ptr_glTbufferMask3DFX

foreign import CALLCONV "dynamic" dyn_glTbufferMask3DFX
  :: FunPtr (GLuint -> IO ())
  ->         GLuint -> IO ()

{-# NOINLINE ptr_glTbufferMask3DFX #-}
ptr_glTbufferMask3DFX :: FunPtr (GLuint -> IO ())
ptr_glTbufferMask3DFX = unsafePerformIO $ getCommand "glTbufferMask3DFX"

-- glTessellationFactorAMD -----------------------------------------------------

glTessellationFactorAMD
  :: GLfloat -- ^ @factor@.
  -> IO ()
glTessellationFactorAMD = dyn_glTessellationFactorAMD ptr_glTessellationFactorAMD

foreign import CALLCONV "dynamic" dyn_glTessellationFactorAMD
  :: FunPtr (GLfloat -> IO ())
  ->         GLfloat -> IO ()

{-# NOINLINE ptr_glTessellationFactorAMD #-}
ptr_glTessellationFactorAMD :: FunPtr (GLfloat -> IO ())
ptr_glTessellationFactorAMD = unsafePerformIO $ getCommand "glTessellationFactorAMD"

-- glTessellationModeAMD -------------------------------------------------------

glTessellationModeAMD
  :: GLenum -- ^ @mode@.
  -> IO ()
glTessellationModeAMD = dyn_glTessellationModeAMD ptr_glTessellationModeAMD

foreign import CALLCONV "dynamic" dyn_glTessellationModeAMD
  :: FunPtr (GLenum -> IO ())
  ->         GLenum -> IO ()

{-# NOINLINE ptr_glTessellationModeAMD #-}
ptr_glTessellationModeAMD :: FunPtr (GLenum -> IO ())
ptr_glTessellationModeAMD = unsafePerformIO $ getCommand "glTessellationModeAMD"

-- glTestFenceAPPLE ------------------------------------------------------------

glTestFenceAPPLE
  :: GLuint -- ^ @fence@ of type @FenceNV@.
  -> IO GLboolean -- ^ of type @Boolean@.
glTestFenceAPPLE = dyn_glTestFenceAPPLE ptr_glTestFenceAPPLE

foreign import CALLCONV "dynamic" dyn_glTestFenceAPPLE
  :: FunPtr (GLuint -> IO GLboolean)
  ->         GLuint -> IO GLboolean

{-# NOINLINE ptr_glTestFenceAPPLE #-}
ptr_glTestFenceAPPLE :: FunPtr (GLuint -> IO GLboolean)
ptr_glTestFenceAPPLE = unsafePerformIO $ getCommand "glTestFenceAPPLE"

-- glTestFenceNV ---------------------------------------------------------------

glTestFenceNV
  :: GLuint -- ^ @fence@ of type @FenceNV@.
  -> IO GLboolean -- ^ of type @Boolean@.
glTestFenceNV = dyn_glTestFenceNV ptr_glTestFenceNV

foreign import CALLCONV "dynamic" dyn_glTestFenceNV
  :: FunPtr (GLuint -> IO GLboolean)
  ->         GLuint -> IO GLboolean

{-# NOINLINE ptr_glTestFenceNV #-}
ptr_glTestFenceNV :: FunPtr (GLuint -> IO GLboolean)
ptr_glTestFenceNV = unsafePerformIO $ getCommand "glTestFenceNV"

-- glTestObjectAPPLE -----------------------------------------------------------

glTestObjectAPPLE
  :: GLenum -- ^ @object@ of type @ObjectTypeAPPLE@.
  -> GLuint -- ^ @name@.
  -> IO GLboolean -- ^ of type @Boolean@.
glTestObjectAPPLE = dyn_glTestObjectAPPLE ptr_glTestObjectAPPLE

foreign import CALLCONV "dynamic" dyn_glTestObjectAPPLE
  :: FunPtr (GLenum -> GLuint -> IO GLboolean)
  ->         GLenum -> GLuint -> IO GLboolean

{-# NOINLINE ptr_glTestObjectAPPLE #-}
ptr_glTestObjectAPPLE :: FunPtr (GLenum -> GLuint -> IO GLboolean)
ptr_glTestObjectAPPLE = unsafePerformIO $ getCommand "glTestObjectAPPLE"

-- glTexBuffer -----------------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glTexBuffer.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glTexBuffer.xhtml OpenGL 4.x>
glTexBuffer
  :: GLenum -- ^ @target@ of type @TextureTarget@.
  -> GLenum -- ^ @internalformat@.
  -> GLuint -- ^ @buffer@.
  -> IO ()
glTexBuffer = dyn_glTexBuffer ptr_glTexBuffer

foreign import CALLCONV "dynamic" dyn_glTexBuffer
  :: FunPtr (GLenum -> GLenum -> GLuint -> IO ())
  ->         GLenum -> GLenum -> GLuint -> IO ()

{-# NOINLINE ptr_glTexBuffer #-}
ptr_glTexBuffer :: FunPtr (GLenum -> GLenum -> GLuint -> IO ())
ptr_glTexBuffer = unsafePerformIO $ getCommand "glTexBuffer"

-- glTexBufferARB --------------------------------------------------------------

glTexBufferARB
  :: GLenum -- ^ @target@ of type @TextureTarget@.
  -> GLenum -- ^ @internalformat@.
  -> GLuint -- ^ @buffer@.
  -> IO ()
glTexBufferARB = dyn_glTexBufferARB ptr_glTexBufferARB

foreign import CALLCONV "dynamic" dyn_glTexBufferARB
  :: FunPtr (GLenum -> GLenum -> GLuint -> IO ())
  ->         GLenum -> GLenum -> GLuint -> IO ()

{-# NOINLINE ptr_glTexBufferARB #-}
ptr_glTexBufferARB :: FunPtr (GLenum -> GLenum -> GLuint -> IO ())
ptr_glTexBufferARB = unsafePerformIO $ getCommand "glTexBufferARB"

-- glTexBufferEXT --------------------------------------------------------------

glTexBufferEXT
  :: GLenum -- ^ @target@ of type @TextureTarget@.
  -> GLenum -- ^ @internalformat@.
  -> GLuint -- ^ @buffer@.
  -> IO ()
glTexBufferEXT = dyn_glTexBufferEXT ptr_glTexBufferEXT

foreign import CALLCONV "dynamic" dyn_glTexBufferEXT
  :: FunPtr (GLenum -> GLenum -> GLuint -> IO ())
  ->         GLenum -> GLenum -> GLuint -> IO ()

{-# NOINLINE ptr_glTexBufferEXT #-}
ptr_glTexBufferEXT :: FunPtr (GLenum -> GLenum -> GLuint -> IO ())
ptr_glTexBufferEXT = unsafePerformIO $ getCommand "glTexBufferEXT"

-- glTexBufferOES --------------------------------------------------------------

glTexBufferOES
  :: GLenum -- ^ @target@ of type @TextureTarget@.
  -> GLenum -- ^ @internalformat@.
  -> GLuint -- ^ @buffer@.
  -> IO ()
glTexBufferOES = dyn_glTexBufferOES ptr_glTexBufferOES

foreign import CALLCONV "dynamic" dyn_glTexBufferOES
  :: FunPtr (GLenum -> GLenum -> GLuint -> IO ())
  ->         GLenum -> GLenum -> GLuint -> IO ()

{-# NOINLINE ptr_glTexBufferOES #-}
ptr_glTexBufferOES :: FunPtr (GLenum -> GLenum -> GLuint -> IO ())
ptr_glTexBufferOES = unsafePerformIO $ getCommand "glTexBufferOES"

-- glTexBufferRange ------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glTexBufferRange.xhtml OpenGL 4.x>
glTexBufferRange
  :: GLenum -- ^ @target@.
  -> GLenum -- ^ @internalformat@.
  -> GLuint -- ^ @buffer@.
  -> GLintptr -- ^ @offset@ of type @BufferOffset@.
  -> GLsizeiptr -- ^ @size@ of type @BufferSize@.
  -> IO ()
glTexBufferRange = dyn_glTexBufferRange ptr_glTexBufferRange

foreign import CALLCONV "dynamic" dyn_glTexBufferRange
  :: FunPtr (GLenum -> GLenum -> GLuint -> GLintptr -> GLsizeiptr -> IO ())
  ->         GLenum -> GLenum -> GLuint -> GLintptr -> GLsizeiptr -> IO ()

{-# NOINLINE ptr_glTexBufferRange #-}
ptr_glTexBufferRange :: FunPtr (GLenum -> GLenum -> GLuint -> GLintptr -> GLsizeiptr -> IO ())
ptr_glTexBufferRange = unsafePerformIO $ getCommand "glTexBufferRange"

-- glTexBufferRangeEXT ---------------------------------------------------------

glTexBufferRangeEXT
  :: GLenum -- ^ @target@.
  -> GLenum -- ^ @internalformat@.
  -> GLuint -- ^ @buffer@.
  -> GLintptr -- ^ @offset@ of type @BufferOffset@.
  -> GLsizeiptr -- ^ @size@ of type @BufferSize@.
  -> IO ()
glTexBufferRangeEXT = dyn_glTexBufferRangeEXT ptr_glTexBufferRangeEXT

foreign import CALLCONV "dynamic" dyn_glTexBufferRangeEXT
  :: FunPtr (GLenum -> GLenum -> GLuint -> GLintptr -> GLsizeiptr -> IO ())
  ->         GLenum -> GLenum -> GLuint -> GLintptr -> GLsizeiptr -> IO ()

{-# NOINLINE ptr_glTexBufferRangeEXT #-}
ptr_glTexBufferRangeEXT :: FunPtr (GLenum -> GLenum -> GLuint -> GLintptr -> GLsizeiptr -> IO ())
ptr_glTexBufferRangeEXT = unsafePerformIO $ getCommand "glTexBufferRangeEXT"

-- glTexBufferRangeOES ---------------------------------------------------------

glTexBufferRangeOES
  :: GLenum -- ^ @target@.
  -> GLenum -- ^ @internalformat@.
  -> GLuint -- ^ @buffer@.
  -> GLintptr -- ^ @offset@ of type @BufferOffset@.
  -> GLsizeiptr -- ^ @size@ of type @BufferSize@.
  -> IO ()
glTexBufferRangeOES = dyn_glTexBufferRangeOES ptr_glTexBufferRangeOES

foreign import CALLCONV "dynamic" dyn_glTexBufferRangeOES
  :: FunPtr (GLenum -> GLenum -> GLuint -> GLintptr -> GLsizeiptr -> IO ())
  ->         GLenum -> GLenum -> GLuint -> GLintptr -> GLsizeiptr -> IO ()

{-# NOINLINE ptr_glTexBufferRangeOES #-}
ptr_glTexBufferRangeOES :: FunPtr (GLenum -> GLenum -> GLuint -> GLintptr -> GLsizeiptr -> IO ())
ptr_glTexBufferRangeOES = unsafePerformIO $ getCommand "glTexBufferRangeOES"

-- glTexBumpParameterfvATI -----------------------------------------------------

glTexBumpParameterfvATI
  :: GLenum -- ^ @pname@ of type @TexBumpParameterATI@.
  -> Ptr GLfloat -- ^ @param@ pointing to @COMPSIZE(pname)@ elements of type @GLfloat@.
  -> IO ()
glTexBumpParameterfvATI = dyn_glTexBumpParameterfvATI ptr_glTexBumpParameterfvATI

foreign import CALLCONV "dynamic" dyn_glTexBumpParameterfvATI
  :: FunPtr (GLenum -> Ptr GLfloat -> IO ())
  ->         GLenum -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glTexBumpParameterfvATI #-}
ptr_glTexBumpParameterfvATI :: FunPtr (GLenum -> Ptr GLfloat -> IO ())
ptr_glTexBumpParameterfvATI = unsafePerformIO $ getCommand "glTexBumpParameterfvATI"

-- glTexBumpParameterivATI -----------------------------------------------------

glTexBumpParameterivATI
  :: GLenum -- ^ @pname@ of type @TexBumpParameterATI@.
  -> Ptr GLint -- ^ @param@ pointing to @COMPSIZE(pname)@ elements of type @GLint@.
  -> IO ()
glTexBumpParameterivATI = dyn_glTexBumpParameterivATI ptr_glTexBumpParameterivATI

foreign import CALLCONV "dynamic" dyn_glTexBumpParameterivATI
  :: FunPtr (GLenum -> Ptr GLint -> IO ())
  ->         GLenum -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glTexBumpParameterivATI #-}
ptr_glTexBumpParameterivATI :: FunPtr (GLenum -> Ptr GLint -> IO ())
ptr_glTexBumpParameterivATI = unsafePerformIO $ getCommand "glTexBumpParameterivATI"

-- glTexCoord1bOES -------------------------------------------------------------

glTexCoord1bOES
  :: GLbyte -- ^ @s@.
  -> IO ()
glTexCoord1bOES = dyn_glTexCoord1bOES ptr_glTexCoord1bOES

foreign import CALLCONV "dynamic" dyn_glTexCoord1bOES
  :: FunPtr (GLbyte -> IO ())
  ->         GLbyte -> IO ()

{-# NOINLINE ptr_glTexCoord1bOES #-}
ptr_glTexCoord1bOES :: FunPtr (GLbyte -> IO ())
ptr_glTexCoord1bOES = unsafePerformIO $ getCommand "glTexCoord1bOES"

-- glTexCoord1bvOES ------------------------------------------------------------

glTexCoord1bvOES
  :: Ptr GLbyte -- ^ @coords@ pointing to @1@ elements of type @GLbyte@.
  -> IO ()
glTexCoord1bvOES = dyn_glTexCoord1bvOES ptr_glTexCoord1bvOES

foreign import CALLCONV "dynamic" dyn_glTexCoord1bvOES
  :: FunPtr (Ptr GLbyte -> IO ())
  ->         Ptr GLbyte -> IO ()

{-# NOINLINE ptr_glTexCoord1bvOES #-}
ptr_glTexCoord1bvOES :: FunPtr (Ptr GLbyte -> IO ())
ptr_glTexCoord1bvOES = unsafePerformIO $ getCommand "glTexCoord1bvOES"

-- glTexCoord1d ----------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glTexCoord.xml OpenGL 2.x>
glTexCoord1d
  :: GLdouble -- ^ @s@ of type @CoordD@.
  -> IO ()
glTexCoord1d = dyn_glTexCoord1d ptr_glTexCoord1d

foreign import CALLCONV "dynamic" dyn_glTexCoord1d
  :: FunPtr (GLdouble -> IO ())
  ->         GLdouble -> IO ()

{-# NOINLINE ptr_glTexCoord1d #-}
ptr_glTexCoord1d :: FunPtr (GLdouble -> IO ())
ptr_glTexCoord1d = unsafePerformIO $ getCommand "glTexCoord1d"

-- glTexCoord1dv ---------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glTexCoord.xml OpenGL 2.x>
glTexCoord1dv
  :: Ptr GLdouble -- ^ @v@ pointing to @1@ elements of type @CoordD@.
  -> IO ()
glTexCoord1dv = dyn_glTexCoord1dv ptr_glTexCoord1dv

foreign import CALLCONV "dynamic" dyn_glTexCoord1dv
  :: FunPtr (Ptr GLdouble -> IO ())
  ->         Ptr GLdouble -> IO ()

{-# NOINLINE ptr_glTexCoord1dv #-}
ptr_glTexCoord1dv :: FunPtr (Ptr GLdouble -> IO ())
ptr_glTexCoord1dv = unsafePerformIO $ getCommand "glTexCoord1dv"

-- glTexCoord1f ----------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glTexCoord.xml OpenGL 2.x>
glTexCoord1f
  :: GLfloat -- ^ @s@ of type @CoordF@.
  -> IO ()
glTexCoord1f = dyn_glTexCoord1f ptr_glTexCoord1f

foreign import CALLCONV "dynamic" dyn_glTexCoord1f
  :: FunPtr (GLfloat -> IO ())
  ->         GLfloat -> IO ()

{-# NOINLINE ptr_glTexCoord1f #-}
ptr_glTexCoord1f :: FunPtr (GLfloat -> IO ())
ptr_glTexCoord1f = unsafePerformIO $ getCommand "glTexCoord1f"

-- glTexCoord1fv ---------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glTexCoord.xml OpenGL 2.x>
glTexCoord1fv
  :: Ptr GLfloat -- ^ @v@ pointing to @1@ elements of type @CoordF@.
  -> IO ()
glTexCoord1fv = dyn_glTexCoord1fv ptr_glTexCoord1fv

foreign import CALLCONV "dynamic" dyn_glTexCoord1fv
  :: FunPtr (Ptr GLfloat -> IO ())
  ->         Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glTexCoord1fv #-}
ptr_glTexCoord1fv :: FunPtr (Ptr GLfloat -> IO ())
ptr_glTexCoord1fv = unsafePerformIO $ getCommand "glTexCoord1fv"

-- glTexCoord1hNV --------------------------------------------------------------

glTexCoord1hNV
  :: GLhalfNV -- ^ @s@ of type @Half16NV@.
  -> IO ()
glTexCoord1hNV = dyn_glTexCoord1hNV ptr_glTexCoord1hNV

foreign import CALLCONV "dynamic" dyn_glTexCoord1hNV
  :: FunPtr (GLhalfNV -> IO ())
  ->         GLhalfNV -> IO ()

{-# NOINLINE ptr_glTexCoord1hNV #-}
ptr_glTexCoord1hNV :: FunPtr (GLhalfNV -> IO ())
ptr_glTexCoord1hNV = unsafePerformIO $ getCommand "glTexCoord1hNV"

-- glTexCoord1hvNV -------------------------------------------------------------

glTexCoord1hvNV
  :: Ptr GLhalfNV -- ^ @v@ pointing to @1@ elements of type @Half16NV@.
  -> IO ()
glTexCoord1hvNV = dyn_glTexCoord1hvNV ptr_glTexCoord1hvNV

foreign import CALLCONV "dynamic" dyn_glTexCoord1hvNV
  :: FunPtr (Ptr GLhalfNV -> IO ())
  ->         Ptr GLhalfNV -> IO ()

{-# NOINLINE ptr_glTexCoord1hvNV #-}
ptr_glTexCoord1hvNV :: FunPtr (Ptr GLhalfNV -> IO ())
ptr_glTexCoord1hvNV = unsafePerformIO $ getCommand "glTexCoord1hvNV"

-- glTexCoord1i ----------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glTexCoord.xml OpenGL 2.x>
glTexCoord1i
  :: GLint -- ^ @s@ of type @CoordI@.
  -> IO ()
glTexCoord1i = dyn_glTexCoord1i ptr_glTexCoord1i

foreign import CALLCONV "dynamic" dyn_glTexCoord1i
  :: FunPtr (GLint -> IO ())
  ->         GLint -> IO ()

{-# NOINLINE ptr_glTexCoord1i #-}
ptr_glTexCoord1i :: FunPtr (GLint -> IO ())
ptr_glTexCoord1i = unsafePerformIO $ getCommand "glTexCoord1i"

-- glTexCoord1iv ---------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glTexCoord.xml OpenGL 2.x>
glTexCoord1iv
  :: Ptr GLint -- ^ @v@ pointing to @1@ elements of type @CoordI@.
  -> IO ()
glTexCoord1iv = dyn_glTexCoord1iv ptr_glTexCoord1iv

foreign import CALLCONV "dynamic" dyn_glTexCoord1iv
  :: FunPtr (Ptr GLint -> IO ())
  ->         Ptr GLint -> IO ()

{-# NOINLINE ptr_glTexCoord1iv #-}
ptr_glTexCoord1iv :: FunPtr (Ptr GLint -> IO ())
ptr_glTexCoord1iv = unsafePerformIO $ getCommand "glTexCoord1iv"

-- glTexCoord1s ----------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glTexCoord.xml OpenGL 2.x>
glTexCoord1s
  :: GLshort -- ^ @s@ of type @CoordS@.
  -> IO ()
glTexCoord1s = dyn_glTexCoord1s ptr_glTexCoord1s

foreign import CALLCONV "dynamic" dyn_glTexCoord1s
  :: FunPtr (GLshort -> IO ())
  ->         GLshort -> IO ()

{-# NOINLINE ptr_glTexCoord1s #-}
ptr_glTexCoord1s :: FunPtr (GLshort -> IO ())
ptr_glTexCoord1s = unsafePerformIO $ getCommand "glTexCoord1s"

-- glTexCoord1sv ---------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glTexCoord.xml OpenGL 2.x>
glTexCoord1sv
  :: Ptr GLshort -- ^ @v@ pointing to @1@ elements of type @CoordS@.
  -> IO ()
glTexCoord1sv = dyn_glTexCoord1sv ptr_glTexCoord1sv

foreign import CALLCONV "dynamic" dyn_glTexCoord1sv
  :: FunPtr (Ptr GLshort -> IO ())
  ->         Ptr GLshort -> IO ()

{-# NOINLINE ptr_glTexCoord1sv #-}
ptr_glTexCoord1sv :: FunPtr (Ptr GLshort -> IO ())
ptr_glTexCoord1sv = unsafePerformIO $ getCommand "glTexCoord1sv"

-- glTexCoord1xOES -------------------------------------------------------------

glTexCoord1xOES
  :: GLfixed -- ^ @s@.
  -> IO ()
glTexCoord1xOES = dyn_glTexCoord1xOES ptr_glTexCoord1xOES

foreign import CALLCONV "dynamic" dyn_glTexCoord1xOES
  :: FunPtr (GLfixed -> IO ())
  ->         GLfixed -> IO ()

{-# NOINLINE ptr_glTexCoord1xOES #-}
ptr_glTexCoord1xOES :: FunPtr (GLfixed -> IO ())
ptr_glTexCoord1xOES = unsafePerformIO $ getCommand "glTexCoord1xOES"

-- glTexCoord1xvOES ------------------------------------------------------------

glTexCoord1xvOES
  :: Ptr GLfixed -- ^ @coords@ pointing to @1@ elements of type @GLfixed@.
  -> IO ()
glTexCoord1xvOES = dyn_glTexCoord1xvOES ptr_glTexCoord1xvOES

foreign import CALLCONV "dynamic" dyn_glTexCoord1xvOES
  :: FunPtr (Ptr GLfixed -> IO ())
  ->         Ptr GLfixed -> IO ()

{-# NOINLINE ptr_glTexCoord1xvOES #-}
ptr_glTexCoord1xvOES :: FunPtr (Ptr GLfixed -> IO ())
ptr_glTexCoord1xvOES = unsafePerformIO $ getCommand "glTexCoord1xvOES"

-- glTexCoord2bOES -------------------------------------------------------------

glTexCoord2bOES
  :: GLbyte -- ^ @s@.
  -> GLbyte -- ^ @t@.
  -> IO ()
glTexCoord2bOES = dyn_glTexCoord2bOES ptr_glTexCoord2bOES

foreign import CALLCONV "dynamic" dyn_glTexCoord2bOES
  :: FunPtr (GLbyte -> GLbyte -> IO ())
  ->         GLbyte -> GLbyte -> IO ()

{-# NOINLINE ptr_glTexCoord2bOES #-}
ptr_glTexCoord2bOES :: FunPtr (GLbyte -> GLbyte -> IO ())
ptr_glTexCoord2bOES = unsafePerformIO $ getCommand "glTexCoord2bOES"

-- glTexCoord2bvOES ------------------------------------------------------------

glTexCoord2bvOES
  :: Ptr GLbyte -- ^ @coords@ pointing to @2@ elements of type @GLbyte@.
  -> IO ()
glTexCoord2bvOES = dyn_glTexCoord2bvOES ptr_glTexCoord2bvOES

foreign import CALLCONV "dynamic" dyn_glTexCoord2bvOES
  :: FunPtr (Ptr GLbyte -> IO ())
  ->         Ptr GLbyte -> IO ()

{-# NOINLINE ptr_glTexCoord2bvOES #-}
ptr_glTexCoord2bvOES :: FunPtr (Ptr GLbyte -> IO ())
ptr_glTexCoord2bvOES = unsafePerformIO $ getCommand "glTexCoord2bvOES"

-- glTexCoord2d ----------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glTexCoord.xml OpenGL 2.x>
glTexCoord2d
  :: GLdouble -- ^ @s@ of type @CoordD@.
  -> GLdouble -- ^ @t@ of type @CoordD@.
  -> IO ()
glTexCoord2d = dyn_glTexCoord2d ptr_glTexCoord2d

foreign import CALLCONV "dynamic" dyn_glTexCoord2d
  :: FunPtr (GLdouble -> GLdouble -> IO ())
  ->         GLdouble -> GLdouble -> IO ()

{-# NOINLINE ptr_glTexCoord2d #-}
ptr_glTexCoord2d :: FunPtr (GLdouble -> GLdouble -> IO ())
ptr_glTexCoord2d = unsafePerformIO $ getCommand "glTexCoord2d"

-- glTexCoord2dv ---------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glTexCoord.xml OpenGL 2.x>
glTexCoord2dv
  :: Ptr GLdouble -- ^ @v@ pointing to @2@ elements of type @CoordD@.
  -> IO ()
glTexCoord2dv = dyn_glTexCoord2dv ptr_glTexCoord2dv

foreign import CALLCONV "dynamic" dyn_glTexCoord2dv
  :: FunPtr (Ptr GLdouble -> IO ())
  ->         Ptr GLdouble -> IO ()

{-# NOINLINE ptr_glTexCoord2dv #-}
ptr_glTexCoord2dv :: FunPtr (Ptr GLdouble -> IO ())
ptr_glTexCoord2dv = unsafePerformIO $ getCommand "glTexCoord2dv"

-- glTexCoord2f ----------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glTexCoord.xml OpenGL 2.x>
glTexCoord2f
  :: GLfloat -- ^ @s@ of type @CoordF@.
  -> GLfloat -- ^ @t@ of type @CoordF@.
  -> IO ()
glTexCoord2f = dyn_glTexCoord2f ptr_glTexCoord2f

foreign import CALLCONV "dynamic" dyn_glTexCoord2f
  :: FunPtr (GLfloat -> GLfloat -> IO ())
  ->         GLfloat -> GLfloat -> IO ()

{-# NOINLINE ptr_glTexCoord2f #-}
ptr_glTexCoord2f :: FunPtr (GLfloat -> GLfloat -> IO ())
ptr_glTexCoord2f = unsafePerformIO $ getCommand "glTexCoord2f"

-- glTexCoord2fColor3fVertex3fSUN ----------------------------------------------

glTexCoord2fColor3fVertex3fSUN
  :: GLfloat -- ^ @s@.
  -> GLfloat -- ^ @t@.
  -> GLfloat -- ^ @r@.
  -> GLfloat -- ^ @g@.
  -> GLfloat -- ^ @b@.
  -> GLfloat -- ^ @x@.
  -> GLfloat -- ^ @y@.
  -> GLfloat -- ^ @z@.
  -> IO ()
glTexCoord2fColor3fVertex3fSUN = dyn_glTexCoord2fColor3fVertex3fSUN ptr_glTexCoord2fColor3fVertex3fSUN

foreign import CALLCONV "dynamic" dyn_glTexCoord2fColor3fVertex3fSUN
  :: FunPtr (GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
  ->         GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ()

{-# NOINLINE ptr_glTexCoord2fColor3fVertex3fSUN #-}
ptr_glTexCoord2fColor3fVertex3fSUN :: FunPtr (GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
ptr_glTexCoord2fColor3fVertex3fSUN = unsafePerformIO $ getCommand "glTexCoord2fColor3fVertex3fSUN"

-- glTexCoord2fColor3fVertex3fvSUN ---------------------------------------------

glTexCoord2fColor3fVertex3fvSUN
  :: Ptr GLfloat -- ^ @tc@ pointing to @2@ elements of type @GLfloat@.
  -> Ptr GLfloat -- ^ @c@ pointing to @3@ elements of type @GLfloat@.
  -> Ptr GLfloat -- ^ @v@ pointing to @3@ elements of type @GLfloat@.
  -> IO ()
glTexCoord2fColor3fVertex3fvSUN = dyn_glTexCoord2fColor3fVertex3fvSUN ptr_glTexCoord2fColor3fVertex3fvSUN

foreign import CALLCONV "dynamic" dyn_glTexCoord2fColor3fVertex3fvSUN
  :: FunPtr (Ptr GLfloat -> Ptr GLfloat -> Ptr GLfloat -> IO ())
  ->         Ptr GLfloat -> Ptr GLfloat -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glTexCoord2fColor3fVertex3fvSUN #-}
ptr_glTexCoord2fColor3fVertex3fvSUN :: FunPtr (Ptr GLfloat -> Ptr GLfloat -> Ptr GLfloat -> IO ())
ptr_glTexCoord2fColor3fVertex3fvSUN = unsafePerformIO $ getCommand "glTexCoord2fColor3fVertex3fvSUN"

-- glTexCoord2fColor4fNormal3fVertex3fSUN --------------------------------------

glTexCoord2fColor4fNormal3fVertex3fSUN
  :: GLfloat -- ^ @s@.
  -> GLfloat -- ^ @t@.
  -> GLfloat -- ^ @r@.
  -> GLfloat -- ^ @g@.
  -> GLfloat -- ^ @b@.
  -> GLfloat -- ^ @a@.
  -> GLfloat -- ^ @nx@.
  -> GLfloat -- ^ @ny@.
  -> GLfloat -- ^ @nz@.
  -> GLfloat -- ^ @x@.
  -> GLfloat -- ^ @y@.
  -> GLfloat -- ^ @z@.
  -> IO ()
glTexCoord2fColor4fNormal3fVertex3fSUN = dyn_glTexCoord2fColor4fNormal3fVertex3fSUN ptr_glTexCoord2fColor4fNormal3fVertex3fSUN

foreign import CALLCONV "dynamic" dyn_glTexCoord2fColor4fNormal3fVertex3fSUN
  :: FunPtr (GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
  ->         GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ()

{-# NOINLINE ptr_glTexCoord2fColor4fNormal3fVertex3fSUN #-}
ptr_glTexCoord2fColor4fNormal3fVertex3fSUN :: FunPtr (GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
ptr_glTexCoord2fColor4fNormal3fVertex3fSUN = unsafePerformIO $ getCommand "glTexCoord2fColor4fNormal3fVertex3fSUN"

-- glTexCoord2fColor4fNormal3fVertex3fvSUN -------------------------------------

glTexCoord2fColor4fNormal3fVertex3fvSUN
  :: Ptr GLfloat -- ^ @tc@ pointing to @2@ elements of type @GLfloat@.
  -> Ptr GLfloat -- ^ @c@ pointing to @4@ elements of type @GLfloat@.
  -> Ptr GLfloat -- ^ @n@ pointing to @3@ elements of type @GLfloat@.
  -> Ptr GLfloat -- ^ @v@ pointing to @3@ elements of type @GLfloat@.
  -> IO ()
glTexCoord2fColor4fNormal3fVertex3fvSUN = dyn_glTexCoord2fColor4fNormal3fVertex3fvSUN ptr_glTexCoord2fColor4fNormal3fVertex3fvSUN

foreign import CALLCONV "dynamic" dyn_glTexCoord2fColor4fNormal3fVertex3fvSUN
  :: FunPtr (Ptr GLfloat -> Ptr GLfloat -> Ptr GLfloat -> Ptr GLfloat -> IO ())
  ->         Ptr GLfloat -> Ptr GLfloat -> Ptr GLfloat -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glTexCoord2fColor4fNormal3fVertex3fvSUN #-}
ptr_glTexCoord2fColor4fNormal3fVertex3fvSUN :: FunPtr (Ptr GLfloat -> Ptr GLfloat -> Ptr GLfloat -> Ptr GLfloat -> IO ())
ptr_glTexCoord2fColor4fNormal3fVertex3fvSUN = unsafePerformIO $ getCommand "glTexCoord2fColor4fNormal3fVertex3fvSUN"

-- glTexCoord2fColor4ubVertex3fSUN ---------------------------------------------

glTexCoord2fColor4ubVertex3fSUN
  :: GLfloat -- ^ @s@.
  -> GLfloat -- ^ @t@.
  -> GLubyte -- ^ @r@.
  -> GLubyte -- ^ @g@.
  -> GLubyte -- ^ @b@.
  -> GLubyte -- ^ @a@.
  -> GLfloat -- ^ @x@.
  -> GLfloat -- ^ @y@.
  -> GLfloat -- ^ @z@.
  -> IO ()
glTexCoord2fColor4ubVertex3fSUN = dyn_glTexCoord2fColor4ubVertex3fSUN ptr_glTexCoord2fColor4ubVertex3fSUN

foreign import CALLCONV "dynamic" dyn_glTexCoord2fColor4ubVertex3fSUN
  :: FunPtr (GLfloat -> GLfloat -> GLubyte -> GLubyte -> GLubyte -> GLubyte -> GLfloat -> GLfloat -> GLfloat -> IO ())
  ->         GLfloat -> GLfloat -> GLubyte -> GLubyte -> GLubyte -> GLubyte -> GLfloat -> GLfloat -> GLfloat -> IO ()

{-# NOINLINE ptr_glTexCoord2fColor4ubVertex3fSUN #-}
ptr_glTexCoord2fColor4ubVertex3fSUN :: FunPtr (GLfloat -> GLfloat -> GLubyte -> GLubyte -> GLubyte -> GLubyte -> GLfloat -> GLfloat -> GLfloat -> IO ())
ptr_glTexCoord2fColor4ubVertex3fSUN = unsafePerformIO $ getCommand "glTexCoord2fColor4ubVertex3fSUN"

-- glTexCoord2fColor4ubVertex3fvSUN --------------------------------------------

glTexCoord2fColor4ubVertex3fvSUN
  :: Ptr GLfloat -- ^ @tc@ pointing to @2@ elements of type @GLfloat@.
  -> Ptr GLubyte -- ^ @c@ pointing to @4@ elements of type @GLubyte@.
  -> Ptr GLfloat -- ^ @v@ pointing to @3@ elements of type @GLfloat@.
  -> IO ()
glTexCoord2fColor4ubVertex3fvSUN = dyn_glTexCoord2fColor4ubVertex3fvSUN ptr_glTexCoord2fColor4ubVertex3fvSUN

foreign import CALLCONV "dynamic" dyn_glTexCoord2fColor4ubVertex3fvSUN
  :: FunPtr (Ptr GLfloat -> Ptr GLubyte -> Ptr GLfloat -> IO ())
  ->         Ptr GLfloat -> Ptr GLubyte -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glTexCoord2fColor4ubVertex3fvSUN #-}
ptr_glTexCoord2fColor4ubVertex3fvSUN :: FunPtr (Ptr GLfloat -> Ptr GLubyte -> Ptr GLfloat -> IO ())
ptr_glTexCoord2fColor4ubVertex3fvSUN = unsafePerformIO $ getCommand "glTexCoord2fColor4ubVertex3fvSUN"

-- glTexCoord2fNormal3fVertex3fSUN ---------------------------------------------

glTexCoord2fNormal3fVertex3fSUN
  :: GLfloat -- ^ @s@.
  -> GLfloat -- ^ @t@.
  -> GLfloat -- ^ @nx@.
  -> GLfloat -- ^ @ny@.
  -> GLfloat -- ^ @nz@.
  -> GLfloat -- ^ @x@.
  -> GLfloat -- ^ @y@.
  -> GLfloat -- ^ @z@.
  -> IO ()
glTexCoord2fNormal3fVertex3fSUN = dyn_glTexCoord2fNormal3fVertex3fSUN ptr_glTexCoord2fNormal3fVertex3fSUN

foreign import CALLCONV "dynamic" dyn_glTexCoord2fNormal3fVertex3fSUN
  :: FunPtr (GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
  ->         GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ()

{-# NOINLINE ptr_glTexCoord2fNormal3fVertex3fSUN #-}
ptr_glTexCoord2fNormal3fVertex3fSUN :: FunPtr (GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
ptr_glTexCoord2fNormal3fVertex3fSUN = unsafePerformIO $ getCommand "glTexCoord2fNormal3fVertex3fSUN"

-- glTexCoord2fNormal3fVertex3fvSUN --------------------------------------------

glTexCoord2fNormal3fVertex3fvSUN
  :: Ptr GLfloat -- ^ @tc@ pointing to @2@ elements of type @GLfloat@.
  -> Ptr GLfloat -- ^ @n@ pointing to @3@ elements of type @GLfloat@.
  -> Ptr GLfloat -- ^ @v@ pointing to @3@ elements of type @GLfloat@.
  -> IO ()
glTexCoord2fNormal3fVertex3fvSUN = dyn_glTexCoord2fNormal3fVertex3fvSUN ptr_glTexCoord2fNormal3fVertex3fvSUN

foreign import CALLCONV "dynamic" dyn_glTexCoord2fNormal3fVertex3fvSUN
  :: FunPtr (Ptr GLfloat -> Ptr GLfloat -> Ptr GLfloat -> IO ())
  ->         Ptr GLfloat -> Ptr GLfloat -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glTexCoord2fNormal3fVertex3fvSUN #-}
ptr_glTexCoord2fNormal3fVertex3fvSUN :: FunPtr (Ptr GLfloat -> Ptr GLfloat -> Ptr GLfloat -> IO ())
ptr_glTexCoord2fNormal3fVertex3fvSUN = unsafePerformIO $ getCommand "glTexCoord2fNormal3fVertex3fvSUN"

-- glTexCoord2fVertex3fSUN -----------------------------------------------------

glTexCoord2fVertex3fSUN
  :: GLfloat -- ^ @s@.
  -> GLfloat -- ^ @t@.
  -> GLfloat -- ^ @x@.
  -> GLfloat -- ^ @y@.
  -> GLfloat -- ^ @z@.
  -> IO ()
glTexCoord2fVertex3fSUN = dyn_glTexCoord2fVertex3fSUN ptr_glTexCoord2fVertex3fSUN

foreign import CALLCONV "dynamic" dyn_glTexCoord2fVertex3fSUN
  :: FunPtr (GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
  ->         GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ()

{-# NOINLINE ptr_glTexCoord2fVertex3fSUN #-}
ptr_glTexCoord2fVertex3fSUN :: FunPtr (GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
ptr_glTexCoord2fVertex3fSUN = unsafePerformIO $ getCommand "glTexCoord2fVertex3fSUN"

-- glTexCoord2fVertex3fvSUN ----------------------------------------------------

glTexCoord2fVertex3fvSUN
  :: Ptr GLfloat -- ^ @tc@ pointing to @2@ elements of type @GLfloat@.
  -> Ptr GLfloat -- ^ @v@ pointing to @3@ elements of type @GLfloat@.
  -> IO ()
glTexCoord2fVertex3fvSUN = dyn_glTexCoord2fVertex3fvSUN ptr_glTexCoord2fVertex3fvSUN

foreign import CALLCONV "dynamic" dyn_glTexCoord2fVertex3fvSUN
  :: FunPtr (Ptr GLfloat -> Ptr GLfloat -> IO ())
  ->         Ptr GLfloat -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glTexCoord2fVertex3fvSUN #-}
ptr_glTexCoord2fVertex3fvSUN :: FunPtr (Ptr GLfloat -> Ptr GLfloat -> IO ())
ptr_glTexCoord2fVertex3fvSUN = unsafePerformIO $ getCommand "glTexCoord2fVertex3fvSUN"

-- glTexCoord2fv ---------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glTexCoord.xml OpenGL 2.x>
glTexCoord2fv
  :: Ptr GLfloat -- ^ @v@ pointing to @2@ elements of type @CoordF@.
  -> IO ()
glTexCoord2fv = dyn_glTexCoord2fv ptr_glTexCoord2fv

foreign import CALLCONV "dynamic" dyn_glTexCoord2fv
  :: FunPtr (Ptr GLfloat -> IO ())
  ->         Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glTexCoord2fv #-}
ptr_glTexCoord2fv :: FunPtr (Ptr GLfloat -> IO ())
ptr_glTexCoord2fv = unsafePerformIO $ getCommand "glTexCoord2fv"

-- glTexCoord2hNV --------------------------------------------------------------

glTexCoord2hNV
  :: GLhalfNV -- ^ @s@ of type @Half16NV@.
  -> GLhalfNV -- ^ @t@ of type @Half16NV@.
  -> IO ()
glTexCoord2hNV = dyn_glTexCoord2hNV ptr_glTexCoord2hNV

foreign import CALLCONV "dynamic" dyn_glTexCoord2hNV
  :: FunPtr (GLhalfNV -> GLhalfNV -> IO ())
  ->         GLhalfNV -> GLhalfNV -> IO ()

{-# NOINLINE ptr_glTexCoord2hNV #-}
ptr_glTexCoord2hNV :: FunPtr (GLhalfNV -> GLhalfNV -> IO ())
ptr_glTexCoord2hNV = unsafePerformIO $ getCommand "glTexCoord2hNV"

-- glTexCoord2hvNV -------------------------------------------------------------

glTexCoord2hvNV
  :: Ptr GLhalfNV -- ^ @v@ pointing to @2@ elements of type @Half16NV@.
  -> IO ()
glTexCoord2hvNV = dyn_glTexCoord2hvNV ptr_glTexCoord2hvNV

foreign import CALLCONV "dynamic" dyn_glTexCoord2hvNV
  :: FunPtr (Ptr GLhalfNV -> IO ())
  ->         Ptr GLhalfNV -> IO ()

{-# NOINLINE ptr_glTexCoord2hvNV #-}
ptr_glTexCoord2hvNV :: FunPtr (Ptr GLhalfNV -> IO ())
ptr_glTexCoord2hvNV = unsafePerformIO $ getCommand "glTexCoord2hvNV"

-- glTexCoord2i ----------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glTexCoord.xml OpenGL 2.x>
glTexCoord2i
  :: GLint -- ^ @s@ of type @CoordI@.
  -> GLint -- ^ @t@ of type @CoordI@.
  -> IO ()
glTexCoord2i = dyn_glTexCoord2i ptr_glTexCoord2i

foreign import CALLCONV "dynamic" dyn_glTexCoord2i
  :: FunPtr (GLint -> GLint -> IO ())
  ->         GLint -> GLint -> IO ()

{-# NOINLINE ptr_glTexCoord2i #-}
ptr_glTexCoord2i :: FunPtr (GLint -> GLint -> IO ())
ptr_glTexCoord2i = unsafePerformIO $ getCommand "glTexCoord2i"

-- glTexCoord2iv ---------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glTexCoord.xml OpenGL 2.x>
glTexCoord2iv
  :: Ptr GLint -- ^ @v@ pointing to @2@ elements of type @CoordI@.
  -> IO ()
glTexCoord2iv = dyn_glTexCoord2iv ptr_glTexCoord2iv

foreign import CALLCONV "dynamic" dyn_glTexCoord2iv
  :: FunPtr (Ptr GLint -> IO ())
  ->         Ptr GLint -> IO ()

{-# NOINLINE ptr_glTexCoord2iv #-}
ptr_glTexCoord2iv :: FunPtr (Ptr GLint -> IO ())
ptr_glTexCoord2iv = unsafePerformIO $ getCommand "glTexCoord2iv"

-- glTexCoord2s ----------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glTexCoord.xml OpenGL 2.x>
glTexCoord2s
  :: GLshort -- ^ @s@ of type @CoordS@.
  -> GLshort -- ^ @t@ of type @CoordS@.
  -> IO ()
glTexCoord2s = dyn_glTexCoord2s ptr_glTexCoord2s

foreign import CALLCONV "dynamic" dyn_glTexCoord2s
  :: FunPtr (GLshort -> GLshort -> IO ())
  ->         GLshort -> GLshort -> IO ()

{-# NOINLINE ptr_glTexCoord2s #-}
ptr_glTexCoord2s :: FunPtr (GLshort -> GLshort -> IO ())
ptr_glTexCoord2s = unsafePerformIO $ getCommand "glTexCoord2s"

-- glTexCoord2sv ---------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glTexCoord.xml OpenGL 2.x>
glTexCoord2sv
  :: Ptr GLshort -- ^ @v@ pointing to @2@ elements of type @CoordS@.
  -> IO ()
glTexCoord2sv = dyn_glTexCoord2sv ptr_glTexCoord2sv

foreign import CALLCONV "dynamic" dyn_glTexCoord2sv
  :: FunPtr (Ptr GLshort -> IO ())
  ->         Ptr GLshort -> IO ()

{-# NOINLINE ptr_glTexCoord2sv #-}
ptr_glTexCoord2sv :: FunPtr (Ptr GLshort -> IO ())
ptr_glTexCoord2sv = unsafePerformIO $ getCommand "glTexCoord2sv"

-- glTexCoord2xOES -------------------------------------------------------------

glTexCoord2xOES
  :: GLfixed -- ^ @s@.
  -> GLfixed -- ^ @t@.
  -> IO ()
glTexCoord2xOES = dyn_glTexCoord2xOES ptr_glTexCoord2xOES

foreign import CALLCONV "dynamic" dyn_glTexCoord2xOES
  :: FunPtr (GLfixed -> GLfixed -> IO ())
  ->         GLfixed -> GLfixed -> IO ()

{-# NOINLINE ptr_glTexCoord2xOES #-}
ptr_glTexCoord2xOES :: FunPtr (GLfixed -> GLfixed -> IO ())
ptr_glTexCoord2xOES = unsafePerformIO $ getCommand "glTexCoord2xOES"

-- glTexCoord2xvOES ------------------------------------------------------------

glTexCoord2xvOES
  :: Ptr GLfixed -- ^ @coords@ pointing to @2@ elements of type @GLfixed@.
  -> IO ()
glTexCoord2xvOES = dyn_glTexCoord2xvOES ptr_glTexCoord2xvOES

foreign import CALLCONV "dynamic" dyn_glTexCoord2xvOES
  :: FunPtr (Ptr GLfixed -> IO ())
  ->         Ptr GLfixed -> IO ()

{-# NOINLINE ptr_glTexCoord2xvOES #-}
ptr_glTexCoord2xvOES :: FunPtr (Ptr GLfixed -> IO ())
ptr_glTexCoord2xvOES = unsafePerformIO $ getCommand "glTexCoord2xvOES"

-- glTexCoord3bOES -------------------------------------------------------------

glTexCoord3bOES
  :: GLbyte -- ^ @s@.
  -> GLbyte -- ^ @t@.
  -> GLbyte -- ^ @r@.
  -> IO ()
glTexCoord3bOES = dyn_glTexCoord3bOES ptr_glTexCoord3bOES

foreign import CALLCONV "dynamic" dyn_glTexCoord3bOES
  :: FunPtr (GLbyte -> GLbyte -> GLbyte -> IO ())
  ->         GLbyte -> GLbyte -> GLbyte -> IO ()

{-# NOINLINE ptr_glTexCoord3bOES #-}
ptr_glTexCoord3bOES :: FunPtr (GLbyte -> GLbyte -> GLbyte -> IO ())
ptr_glTexCoord3bOES = unsafePerformIO $ getCommand "glTexCoord3bOES"

-- glTexCoord3bvOES ------------------------------------------------------------

glTexCoord3bvOES
  :: Ptr GLbyte -- ^ @coords@ pointing to @3@ elements of type @GLbyte@.
  -> IO ()
glTexCoord3bvOES = dyn_glTexCoord3bvOES ptr_glTexCoord3bvOES

foreign import CALLCONV "dynamic" dyn_glTexCoord3bvOES
  :: FunPtr (Ptr GLbyte -> IO ())
  ->         Ptr GLbyte -> IO ()

{-# NOINLINE ptr_glTexCoord3bvOES #-}
ptr_glTexCoord3bvOES :: FunPtr (Ptr GLbyte -> IO ())
ptr_glTexCoord3bvOES = unsafePerformIO $ getCommand "glTexCoord3bvOES"

-- glTexCoord3d ----------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glTexCoord.xml OpenGL 2.x>
glTexCoord3d
  :: GLdouble -- ^ @s@ of type @CoordD@.
  -> GLdouble -- ^ @t@ of type @CoordD@.
  -> GLdouble -- ^ @r@ of type @CoordD@.
  -> IO ()
glTexCoord3d = dyn_glTexCoord3d ptr_glTexCoord3d

foreign import CALLCONV "dynamic" dyn_glTexCoord3d
  :: FunPtr (GLdouble -> GLdouble -> GLdouble -> IO ())
  ->         GLdouble -> GLdouble -> GLdouble -> IO ()

{-# NOINLINE ptr_glTexCoord3d #-}
ptr_glTexCoord3d :: FunPtr (GLdouble -> GLdouble -> GLdouble -> IO ())
ptr_glTexCoord3d = unsafePerformIO $ getCommand "glTexCoord3d"

-- glTexCoord3dv ---------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glTexCoord.xml OpenGL 2.x>
glTexCoord3dv
  :: Ptr GLdouble -- ^ @v@ pointing to @3@ elements of type @CoordD@.
  -> IO ()
glTexCoord3dv = dyn_glTexCoord3dv ptr_glTexCoord3dv

foreign import CALLCONV "dynamic" dyn_glTexCoord3dv
  :: FunPtr (Ptr GLdouble -> IO ())
  ->         Ptr GLdouble -> IO ()

{-# NOINLINE ptr_glTexCoord3dv #-}
ptr_glTexCoord3dv :: FunPtr (Ptr GLdouble -> IO ())
ptr_glTexCoord3dv = unsafePerformIO $ getCommand "glTexCoord3dv"

-- glTexCoord3f ----------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glTexCoord.xml OpenGL 2.x>
glTexCoord3f
  :: GLfloat -- ^ @s@ of type @CoordF@.
  -> GLfloat -- ^ @t@ of type @CoordF@.
  -> GLfloat -- ^ @r@ of type @CoordF@.
  -> IO ()
glTexCoord3f = dyn_glTexCoord3f ptr_glTexCoord3f

foreign import CALLCONV "dynamic" dyn_glTexCoord3f
  :: FunPtr (GLfloat -> GLfloat -> GLfloat -> IO ())
  ->         GLfloat -> GLfloat -> GLfloat -> IO ()

{-# NOINLINE ptr_glTexCoord3f #-}
ptr_glTexCoord3f :: FunPtr (GLfloat -> GLfloat -> GLfloat -> IO ())
ptr_glTexCoord3f = unsafePerformIO $ getCommand "glTexCoord3f"

-- glTexCoord3fv ---------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glTexCoord.xml OpenGL 2.x>
glTexCoord3fv
  :: Ptr GLfloat -- ^ @v@ pointing to @3@ elements of type @CoordF@.
  -> IO ()
glTexCoord3fv = dyn_glTexCoord3fv ptr_glTexCoord3fv

foreign import CALLCONV "dynamic" dyn_glTexCoord3fv
  :: FunPtr (Ptr GLfloat -> IO ())
  ->         Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glTexCoord3fv #-}
ptr_glTexCoord3fv :: FunPtr (Ptr GLfloat -> IO ())
ptr_glTexCoord3fv = unsafePerformIO $ getCommand "glTexCoord3fv"

-- glTexCoord3hNV --------------------------------------------------------------

glTexCoord3hNV
  :: GLhalfNV -- ^ @s@ of type @Half16NV@.
  -> GLhalfNV -- ^ @t@ of type @Half16NV@.
  -> GLhalfNV -- ^ @r@ of type @Half16NV@.
  -> IO ()
glTexCoord3hNV = dyn_glTexCoord3hNV ptr_glTexCoord3hNV

foreign import CALLCONV "dynamic" dyn_glTexCoord3hNV
  :: FunPtr (GLhalfNV -> GLhalfNV -> GLhalfNV -> IO ())
  ->         GLhalfNV -> GLhalfNV -> GLhalfNV -> IO ()

{-# NOINLINE ptr_glTexCoord3hNV #-}
ptr_glTexCoord3hNV :: FunPtr (GLhalfNV -> GLhalfNV -> GLhalfNV -> IO ())
ptr_glTexCoord3hNV = unsafePerformIO $ getCommand "glTexCoord3hNV"

-- glTexCoord3hvNV -------------------------------------------------------------

glTexCoord3hvNV
  :: Ptr GLhalfNV -- ^ @v@ pointing to @3@ elements of type @Half16NV@.
  -> IO ()
glTexCoord3hvNV = dyn_glTexCoord3hvNV ptr_glTexCoord3hvNV

foreign import CALLCONV "dynamic" dyn_glTexCoord3hvNV
  :: FunPtr (Ptr GLhalfNV -> IO ())
  ->         Ptr GLhalfNV -> IO ()

{-# NOINLINE ptr_glTexCoord3hvNV #-}
ptr_glTexCoord3hvNV :: FunPtr (Ptr GLhalfNV -> IO ())
ptr_glTexCoord3hvNV = unsafePerformIO $ getCommand "glTexCoord3hvNV"

-- glTexCoord3i ----------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glTexCoord.xml OpenGL 2.x>
glTexCoord3i
  :: GLint -- ^ @s@ of type @CoordI@.
  -> GLint -- ^ @t@ of type @CoordI@.
  -> GLint -- ^ @r@ of type @CoordI@.
  -> IO ()
glTexCoord3i = dyn_glTexCoord3i ptr_glTexCoord3i

foreign import CALLCONV "dynamic" dyn_glTexCoord3i
  :: FunPtr (GLint -> GLint -> GLint -> IO ())
  ->         GLint -> GLint -> GLint -> IO ()

{-# NOINLINE ptr_glTexCoord3i #-}
ptr_glTexCoord3i :: FunPtr (GLint -> GLint -> GLint -> IO ())
ptr_glTexCoord3i = unsafePerformIO $ getCommand "glTexCoord3i"

-- glTexCoord3iv ---------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glTexCoord.xml OpenGL 2.x>
glTexCoord3iv
  :: Ptr GLint -- ^ @v@ pointing to @3@ elements of type @CoordI@.
  -> IO ()
glTexCoord3iv = dyn_glTexCoord3iv ptr_glTexCoord3iv

foreign import CALLCONV "dynamic" dyn_glTexCoord3iv
  :: FunPtr (Ptr GLint -> IO ())
  ->         Ptr GLint -> IO ()

{-# NOINLINE ptr_glTexCoord3iv #-}
ptr_glTexCoord3iv :: FunPtr (Ptr GLint -> IO ())
ptr_glTexCoord3iv = unsafePerformIO $ getCommand "glTexCoord3iv"

-- glTexCoord3s ----------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glTexCoord.xml OpenGL 2.x>
glTexCoord3s
  :: GLshort -- ^ @s@ of type @CoordS@.
  -> GLshort -- ^ @t@ of type @CoordS@.
  -> GLshort -- ^ @r@ of type @CoordS@.
  -> IO ()
glTexCoord3s = dyn_glTexCoord3s ptr_glTexCoord3s

foreign import CALLCONV "dynamic" dyn_glTexCoord3s
  :: FunPtr (GLshort -> GLshort -> GLshort -> IO ())
  ->         GLshort -> GLshort -> GLshort -> IO ()

{-# NOINLINE ptr_glTexCoord3s #-}
ptr_glTexCoord3s :: FunPtr (GLshort -> GLshort -> GLshort -> IO ())
ptr_glTexCoord3s = unsafePerformIO $ getCommand "glTexCoord3s"

-- glTexCoord3sv ---------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glTexCoord.xml OpenGL 2.x>
glTexCoord3sv
  :: Ptr GLshort -- ^ @v@ pointing to @3@ elements of type @CoordS@.
  -> IO ()
glTexCoord3sv = dyn_glTexCoord3sv ptr_glTexCoord3sv

foreign import CALLCONV "dynamic" dyn_glTexCoord3sv
  :: FunPtr (Ptr GLshort -> IO ())
  ->         Ptr GLshort -> IO ()

{-# NOINLINE ptr_glTexCoord3sv #-}
ptr_glTexCoord3sv :: FunPtr (Ptr GLshort -> IO ())
ptr_glTexCoord3sv = unsafePerformIO $ getCommand "glTexCoord3sv"

-- glTexCoord3xOES -------------------------------------------------------------

glTexCoord3xOES
  :: GLfixed -- ^ @s@.
  -> GLfixed -- ^ @t@.
  -> GLfixed -- ^ @r@.
  -> IO ()
glTexCoord3xOES = dyn_glTexCoord3xOES ptr_glTexCoord3xOES

foreign import CALLCONV "dynamic" dyn_glTexCoord3xOES
  :: FunPtr (GLfixed -> GLfixed -> GLfixed -> IO ())
  ->         GLfixed -> GLfixed -> GLfixed -> IO ()

{-# NOINLINE ptr_glTexCoord3xOES #-}
ptr_glTexCoord3xOES :: FunPtr (GLfixed -> GLfixed -> GLfixed -> IO ())
ptr_glTexCoord3xOES = unsafePerformIO $ getCommand "glTexCoord3xOES"

-- glTexCoord3xvOES ------------------------------------------------------------

glTexCoord3xvOES
  :: Ptr GLfixed -- ^ @coords@ pointing to @3@ elements of type @GLfixed@.
  -> IO ()
glTexCoord3xvOES = dyn_glTexCoord3xvOES ptr_glTexCoord3xvOES

foreign import CALLCONV "dynamic" dyn_glTexCoord3xvOES
  :: FunPtr (Ptr GLfixed -> IO ())
  ->         Ptr GLfixed -> IO ()

{-# NOINLINE ptr_glTexCoord3xvOES #-}
ptr_glTexCoord3xvOES :: FunPtr (Ptr GLfixed -> IO ())
ptr_glTexCoord3xvOES = unsafePerformIO $ getCommand "glTexCoord3xvOES"

-- glTexCoord4bOES -------------------------------------------------------------

glTexCoord4bOES
  :: GLbyte -- ^ @s@.
  -> GLbyte -- ^ @t@.
  -> GLbyte -- ^ @r@.
  -> GLbyte -- ^ @q@.
  -> IO ()
glTexCoord4bOES = dyn_glTexCoord4bOES ptr_glTexCoord4bOES

foreign import CALLCONV "dynamic" dyn_glTexCoord4bOES
  :: FunPtr (GLbyte -> GLbyte -> GLbyte -> GLbyte -> IO ())
  ->         GLbyte -> GLbyte -> GLbyte -> GLbyte -> IO ()

{-# NOINLINE ptr_glTexCoord4bOES #-}
ptr_glTexCoord4bOES :: FunPtr (GLbyte -> GLbyte -> GLbyte -> GLbyte -> IO ())
ptr_glTexCoord4bOES = unsafePerformIO $ getCommand "glTexCoord4bOES"

-- glTexCoord4bvOES ------------------------------------------------------------

glTexCoord4bvOES
  :: Ptr GLbyte -- ^ @coords@ pointing to @4@ elements of type @GLbyte@.
  -> IO ()
glTexCoord4bvOES = dyn_glTexCoord4bvOES ptr_glTexCoord4bvOES

foreign import CALLCONV "dynamic" dyn_glTexCoord4bvOES
  :: FunPtr (Ptr GLbyte -> IO ())
  ->         Ptr GLbyte -> IO ()

{-# NOINLINE ptr_glTexCoord4bvOES #-}
ptr_glTexCoord4bvOES :: FunPtr (Ptr GLbyte -> IO ())
ptr_glTexCoord4bvOES = unsafePerformIO $ getCommand "glTexCoord4bvOES"

-- glTexCoord4d ----------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glTexCoord.xml OpenGL 2.x>
glTexCoord4d
  :: GLdouble -- ^ @s@ of type @CoordD@.
  -> GLdouble -- ^ @t@ of type @CoordD@.
  -> GLdouble -- ^ @r@ of type @CoordD@.
  -> GLdouble -- ^ @q@ of type @CoordD@.
  -> IO ()
glTexCoord4d = dyn_glTexCoord4d ptr_glTexCoord4d

foreign import CALLCONV "dynamic" dyn_glTexCoord4d
  :: FunPtr (GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ())
  ->         GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ()

{-# NOINLINE ptr_glTexCoord4d #-}
ptr_glTexCoord4d :: FunPtr (GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ())
ptr_glTexCoord4d = unsafePerformIO $ getCommand "glTexCoord4d"

-- glTexCoord4dv ---------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glTexCoord.xml OpenGL 2.x>
glTexCoord4dv
  :: Ptr GLdouble -- ^ @v@ pointing to @4@ elements of type @CoordD@.
  -> IO ()
glTexCoord4dv = dyn_glTexCoord4dv ptr_glTexCoord4dv

foreign import CALLCONV "dynamic" dyn_glTexCoord4dv
  :: FunPtr (Ptr GLdouble -> IO ())
  ->         Ptr GLdouble -> IO ()

{-# NOINLINE ptr_glTexCoord4dv #-}
ptr_glTexCoord4dv :: FunPtr (Ptr GLdouble -> IO ())
ptr_glTexCoord4dv = unsafePerformIO $ getCommand "glTexCoord4dv"

-- glTexCoord4f ----------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glTexCoord.xml OpenGL 2.x>
glTexCoord4f
  :: GLfloat -- ^ @s@ of type @CoordF@.
  -> GLfloat -- ^ @t@ of type @CoordF@.
  -> GLfloat -- ^ @r@ of type @CoordF@.
  -> GLfloat -- ^ @q@ of type @CoordF@.
  -> IO ()
glTexCoord4f = dyn_glTexCoord4f ptr_glTexCoord4f

foreign import CALLCONV "dynamic" dyn_glTexCoord4f
  :: FunPtr (GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
  ->         GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ()

{-# NOINLINE ptr_glTexCoord4f #-}
ptr_glTexCoord4f :: FunPtr (GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
ptr_glTexCoord4f = unsafePerformIO $ getCommand "glTexCoord4f"

-- glTexCoord4fColor4fNormal3fVertex4fSUN --------------------------------------

glTexCoord4fColor4fNormal3fVertex4fSUN
  :: GLfloat -- ^ @s@.
  -> GLfloat -- ^ @t@.
  -> GLfloat -- ^ @p@.
  -> GLfloat -- ^ @q@.
  -> GLfloat -- ^ @r@.
  -> GLfloat -- ^ @g@.
  -> GLfloat -- ^ @b@.
  -> GLfloat -- ^ @a@.
  -> GLfloat -- ^ @nx@.
  -> GLfloat -- ^ @ny@.
  -> GLfloat -- ^ @nz@.
  -> GLfloat -- ^ @x@.
  -> GLfloat -- ^ @y@.
  -> GLfloat -- ^ @z@.
  -> GLfloat -- ^ @w@.
  -> IO ()
glTexCoord4fColor4fNormal3fVertex4fSUN = dyn_glTexCoord4fColor4fNormal3fVertex4fSUN ptr_glTexCoord4fColor4fNormal3fVertex4fSUN

foreign import CALLCONV "dynamic" dyn_glTexCoord4fColor4fNormal3fVertex4fSUN
  :: FunPtr (GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
  ->         GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ()

{-# NOINLINE ptr_glTexCoord4fColor4fNormal3fVertex4fSUN #-}
ptr_glTexCoord4fColor4fNormal3fVertex4fSUN :: FunPtr (GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
ptr_glTexCoord4fColor4fNormal3fVertex4fSUN = unsafePerformIO $ getCommand "glTexCoord4fColor4fNormal3fVertex4fSUN"

-- glTexCoord4fColor4fNormal3fVertex4fvSUN -------------------------------------

glTexCoord4fColor4fNormal3fVertex4fvSUN
  :: Ptr GLfloat -- ^ @tc@ pointing to @4@ elements of type @GLfloat@.
  -> Ptr GLfloat -- ^ @c@ pointing to @4@ elements of type @GLfloat@.
  -> Ptr GLfloat -- ^ @n@ pointing to @3@ elements of type @GLfloat@.
  -> Ptr GLfloat -- ^ @v@ pointing to @4@ elements of type @GLfloat@.
  -> IO ()
glTexCoord4fColor4fNormal3fVertex4fvSUN = dyn_glTexCoord4fColor4fNormal3fVertex4fvSUN ptr_glTexCoord4fColor4fNormal3fVertex4fvSUN

foreign import CALLCONV "dynamic" dyn_glTexCoord4fColor4fNormal3fVertex4fvSUN
  :: FunPtr (Ptr GLfloat -> Ptr GLfloat -> Ptr GLfloat -> Ptr GLfloat -> IO ())
  ->         Ptr GLfloat -> Ptr GLfloat -> Ptr GLfloat -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glTexCoord4fColor4fNormal3fVertex4fvSUN #-}
ptr_glTexCoord4fColor4fNormal3fVertex4fvSUN :: FunPtr (Ptr GLfloat -> Ptr GLfloat -> Ptr GLfloat -> Ptr GLfloat -> IO ())
ptr_glTexCoord4fColor4fNormal3fVertex4fvSUN = unsafePerformIO $ getCommand "glTexCoord4fColor4fNormal3fVertex4fvSUN"

-- glTexCoord4fVertex4fSUN -----------------------------------------------------

glTexCoord4fVertex4fSUN
  :: GLfloat -- ^ @s@.
  -> GLfloat -- ^ @t@.
  -> GLfloat -- ^ @p@.
  -> GLfloat -- ^ @q@.
  -> GLfloat -- ^ @x@.
  -> GLfloat -- ^ @y@.
  -> GLfloat -- ^ @z@.
  -> GLfloat -- ^ @w@.
  -> IO ()
glTexCoord4fVertex4fSUN = dyn_glTexCoord4fVertex4fSUN ptr_glTexCoord4fVertex4fSUN

foreign import CALLCONV "dynamic" dyn_glTexCoord4fVertex4fSUN
  :: FunPtr (GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
  ->         GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ()

{-# NOINLINE ptr_glTexCoord4fVertex4fSUN #-}
ptr_glTexCoord4fVertex4fSUN :: FunPtr (GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
ptr_glTexCoord4fVertex4fSUN = unsafePerformIO $ getCommand "glTexCoord4fVertex4fSUN"

-- glTexCoord4fVertex4fvSUN ----------------------------------------------------

glTexCoord4fVertex4fvSUN
  :: Ptr GLfloat -- ^ @tc@ pointing to @4@ elements of type @GLfloat@.
  -> Ptr GLfloat -- ^ @v@ pointing to @4@ elements of type @GLfloat@.
  -> IO ()
glTexCoord4fVertex4fvSUN = dyn_glTexCoord4fVertex4fvSUN ptr_glTexCoord4fVertex4fvSUN

foreign import CALLCONV "dynamic" dyn_glTexCoord4fVertex4fvSUN
  :: FunPtr (Ptr GLfloat -> Ptr GLfloat -> IO ())
  ->         Ptr GLfloat -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glTexCoord4fVertex4fvSUN #-}
ptr_glTexCoord4fVertex4fvSUN :: FunPtr (Ptr GLfloat -> Ptr GLfloat -> IO ())
ptr_glTexCoord4fVertex4fvSUN = unsafePerformIO $ getCommand "glTexCoord4fVertex4fvSUN"

-- glTexCoord4fv ---------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glTexCoord.xml OpenGL 2.x>
glTexCoord4fv
  :: Ptr GLfloat -- ^ @v@ pointing to @4@ elements of type @CoordF@.
  -> IO ()
glTexCoord4fv = dyn_glTexCoord4fv ptr_glTexCoord4fv

foreign import CALLCONV "dynamic" dyn_glTexCoord4fv
  :: FunPtr (Ptr GLfloat -> IO ())
  ->         Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glTexCoord4fv #-}
ptr_glTexCoord4fv :: FunPtr (Ptr GLfloat -> IO ())
ptr_glTexCoord4fv = unsafePerformIO $ getCommand "glTexCoord4fv"

-- glTexCoord4hNV --------------------------------------------------------------

glTexCoord4hNV
  :: GLhalfNV -- ^ @s@ of type @Half16NV@.
  -> GLhalfNV -- ^ @t@ of type @Half16NV@.
  -> GLhalfNV -- ^ @r@ of type @Half16NV@.
  -> GLhalfNV -- ^ @q@ of type @Half16NV@.
  -> IO ()
glTexCoord4hNV = dyn_glTexCoord4hNV ptr_glTexCoord4hNV

foreign import CALLCONV "dynamic" dyn_glTexCoord4hNV
  :: FunPtr (GLhalfNV -> GLhalfNV -> GLhalfNV -> GLhalfNV -> IO ())
  ->         GLhalfNV -> GLhalfNV -> GLhalfNV -> GLhalfNV -> IO ()

{-# NOINLINE ptr_glTexCoord4hNV #-}
ptr_glTexCoord4hNV :: FunPtr (GLhalfNV -> GLhalfNV -> GLhalfNV -> GLhalfNV -> IO ())
ptr_glTexCoord4hNV = unsafePerformIO $ getCommand "glTexCoord4hNV"

-- glTexCoord4hvNV -------------------------------------------------------------

glTexCoord4hvNV
  :: Ptr GLhalfNV -- ^ @v@ pointing to @4@ elements of type @Half16NV@.
  -> IO ()
glTexCoord4hvNV = dyn_glTexCoord4hvNV ptr_glTexCoord4hvNV

foreign import CALLCONV "dynamic" dyn_glTexCoord4hvNV
  :: FunPtr (Ptr GLhalfNV -> IO ())
  ->         Ptr GLhalfNV -> IO ()

{-# NOINLINE ptr_glTexCoord4hvNV #-}
ptr_glTexCoord4hvNV :: FunPtr (Ptr GLhalfNV -> IO ())
ptr_glTexCoord4hvNV = unsafePerformIO $ getCommand "glTexCoord4hvNV"

-- glTexCoord4i ----------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glTexCoord.xml OpenGL 2.x>
glTexCoord4i
  :: GLint -- ^ @s@ of type @CoordI@.
  -> GLint -- ^ @t@ of type @CoordI@.
  -> GLint -- ^ @r@ of type @CoordI@.
  -> GLint -- ^ @q@ of type @CoordI@.
  -> IO ()
glTexCoord4i = dyn_glTexCoord4i ptr_glTexCoord4i

foreign import CALLCONV "dynamic" dyn_glTexCoord4i
  :: FunPtr (GLint -> GLint -> GLint -> GLint -> IO ())
  ->         GLint -> GLint -> GLint -> GLint -> IO ()

{-# NOINLINE ptr_glTexCoord4i #-}
ptr_glTexCoord4i :: FunPtr (GLint -> GLint -> GLint -> GLint -> IO ())
ptr_glTexCoord4i = unsafePerformIO $ getCommand "glTexCoord4i"

-- glTexCoord4iv ---------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glTexCoord.xml OpenGL 2.x>
glTexCoord4iv
  :: Ptr GLint -- ^ @v@ pointing to @4@ elements of type @CoordI@.
  -> IO ()
glTexCoord4iv = dyn_glTexCoord4iv ptr_glTexCoord4iv

foreign import CALLCONV "dynamic" dyn_glTexCoord4iv
  :: FunPtr (Ptr GLint -> IO ())
  ->         Ptr GLint -> IO ()

{-# NOINLINE ptr_glTexCoord4iv #-}
ptr_glTexCoord4iv :: FunPtr (Ptr GLint -> IO ())
ptr_glTexCoord4iv = unsafePerformIO $ getCommand "glTexCoord4iv"

-- glTexCoord4s ----------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glTexCoord.xml OpenGL 2.x>
glTexCoord4s
  :: GLshort -- ^ @s@ of type @CoordS@.
  -> GLshort -- ^ @t@ of type @CoordS@.
  -> GLshort -- ^ @r@ of type @CoordS@.
  -> GLshort -- ^ @q@ of type @CoordS@.
  -> IO ()
glTexCoord4s = dyn_glTexCoord4s ptr_glTexCoord4s

foreign import CALLCONV "dynamic" dyn_glTexCoord4s
  :: FunPtr (GLshort -> GLshort -> GLshort -> GLshort -> IO ())
  ->         GLshort -> GLshort -> GLshort -> GLshort -> IO ()

{-# NOINLINE ptr_glTexCoord4s #-}
ptr_glTexCoord4s :: FunPtr (GLshort -> GLshort -> GLshort -> GLshort -> IO ())
ptr_glTexCoord4s = unsafePerformIO $ getCommand "glTexCoord4s"

-- glTexCoord4sv ---------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glTexCoord.xml OpenGL 2.x>
glTexCoord4sv
  :: Ptr GLshort -- ^ @v@ pointing to @4@ elements of type @CoordS@.
  -> IO ()
glTexCoord4sv = dyn_glTexCoord4sv ptr_glTexCoord4sv

foreign import CALLCONV "dynamic" dyn_glTexCoord4sv
  :: FunPtr (Ptr GLshort -> IO ())
  ->         Ptr GLshort -> IO ()

{-# NOINLINE ptr_glTexCoord4sv #-}
ptr_glTexCoord4sv :: FunPtr (Ptr GLshort -> IO ())
ptr_glTexCoord4sv = unsafePerformIO $ getCommand "glTexCoord4sv"

-- glTexCoord4xOES -------------------------------------------------------------

glTexCoord4xOES
  :: GLfixed -- ^ @s@.
  -> GLfixed -- ^ @t@.
  -> GLfixed -- ^ @r@.
  -> GLfixed -- ^ @q@.
  -> IO ()
glTexCoord4xOES = dyn_glTexCoord4xOES ptr_glTexCoord4xOES

foreign import CALLCONV "dynamic" dyn_glTexCoord4xOES
  :: FunPtr (GLfixed -> GLfixed -> GLfixed -> GLfixed -> IO ())
  ->         GLfixed -> GLfixed -> GLfixed -> GLfixed -> IO ()

{-# NOINLINE ptr_glTexCoord4xOES #-}
ptr_glTexCoord4xOES :: FunPtr (GLfixed -> GLfixed -> GLfixed -> GLfixed -> IO ())
ptr_glTexCoord4xOES = unsafePerformIO $ getCommand "glTexCoord4xOES"

-- glTexCoord4xvOES ------------------------------------------------------------

glTexCoord4xvOES
  :: Ptr GLfixed -- ^ @coords@ pointing to @4@ elements of type @GLfixed@.
  -> IO ()
glTexCoord4xvOES = dyn_glTexCoord4xvOES ptr_glTexCoord4xvOES

foreign import CALLCONV "dynamic" dyn_glTexCoord4xvOES
  :: FunPtr (Ptr GLfixed -> IO ())
  ->         Ptr GLfixed -> IO ()

{-# NOINLINE ptr_glTexCoord4xvOES #-}
ptr_glTexCoord4xvOES :: FunPtr (Ptr GLfixed -> IO ())
ptr_glTexCoord4xvOES = unsafePerformIO $ getCommand "glTexCoord4xvOES"

-- glTexCoordFormatNV ----------------------------------------------------------

glTexCoordFormatNV
  :: GLint -- ^ @size@.
  -> GLenum -- ^ @type@.
  -> GLsizei -- ^ @stride@.
  -> IO ()
glTexCoordFormatNV = dyn_glTexCoordFormatNV ptr_glTexCoordFormatNV

foreign import CALLCONV "dynamic" dyn_glTexCoordFormatNV
  :: FunPtr (GLint -> GLenum -> GLsizei -> IO ())
  ->         GLint -> GLenum -> GLsizei -> IO ()

{-# NOINLINE ptr_glTexCoordFormatNV #-}
ptr_glTexCoordFormatNV :: FunPtr (GLint -> GLenum -> GLsizei -> IO ())
ptr_glTexCoordFormatNV = unsafePerformIO $ getCommand "glTexCoordFormatNV"

-- glTexCoordP1ui --------------------------------------------------------------

glTexCoordP1ui
  :: GLenum -- ^ @type@.
  -> GLuint -- ^ @coords@.
  -> IO ()
glTexCoordP1ui = dyn_glTexCoordP1ui ptr_glTexCoordP1ui

foreign import CALLCONV "dynamic" dyn_glTexCoordP1ui
  :: FunPtr (GLenum -> GLuint -> IO ())
  ->         GLenum -> GLuint -> IO ()

{-# NOINLINE ptr_glTexCoordP1ui #-}
ptr_glTexCoordP1ui :: FunPtr (GLenum -> GLuint -> IO ())
ptr_glTexCoordP1ui = unsafePerformIO $ getCommand "glTexCoordP1ui"

-- glTexCoordP1uiv -------------------------------------------------------------

glTexCoordP1uiv
  :: GLenum -- ^ @type@.
  -> Ptr GLuint -- ^ @coords@ pointing to @1@ elements of type @GLuint@.
  -> IO ()
glTexCoordP1uiv = dyn_glTexCoordP1uiv ptr_glTexCoordP1uiv

foreign import CALLCONV "dynamic" dyn_glTexCoordP1uiv
  :: FunPtr (GLenum -> Ptr GLuint -> IO ())
  ->         GLenum -> Ptr GLuint -> IO ()

{-# NOINLINE ptr_glTexCoordP1uiv #-}
ptr_glTexCoordP1uiv :: FunPtr (GLenum -> Ptr GLuint -> IO ())
ptr_glTexCoordP1uiv = unsafePerformIO $ getCommand "glTexCoordP1uiv"

-- glTexCoordP2ui --------------------------------------------------------------

glTexCoordP2ui
  :: GLenum -- ^ @type@.
  -> GLuint -- ^ @coords@.
  -> IO ()
glTexCoordP2ui = dyn_glTexCoordP2ui ptr_glTexCoordP2ui

foreign import CALLCONV "dynamic" dyn_glTexCoordP2ui
  :: FunPtr (GLenum -> GLuint -> IO ())
  ->         GLenum -> GLuint -> IO ()

{-# NOINLINE ptr_glTexCoordP2ui #-}
ptr_glTexCoordP2ui :: FunPtr (GLenum -> GLuint -> IO ())
ptr_glTexCoordP2ui = unsafePerformIO $ getCommand "glTexCoordP2ui"

-- glTexCoordP2uiv -------------------------------------------------------------

glTexCoordP2uiv
  :: GLenum -- ^ @type@.
  -> Ptr GLuint -- ^ @coords@ pointing to @1@ elements of type @GLuint@.
  -> IO ()
glTexCoordP2uiv = dyn_glTexCoordP2uiv ptr_glTexCoordP2uiv

foreign import CALLCONV "dynamic" dyn_glTexCoordP2uiv
  :: FunPtr (GLenum -> Ptr GLuint -> IO ())
  ->         GLenum -> Ptr GLuint -> IO ()

{-# NOINLINE ptr_glTexCoordP2uiv #-}
ptr_glTexCoordP2uiv :: FunPtr (GLenum -> Ptr GLuint -> IO ())
ptr_glTexCoordP2uiv = unsafePerformIO $ getCommand "glTexCoordP2uiv"

-- glTexCoordP3ui --------------------------------------------------------------

glTexCoordP3ui
  :: GLenum -- ^ @type@.
  -> GLuint -- ^ @coords@.
  -> IO ()
glTexCoordP3ui = dyn_glTexCoordP3ui ptr_glTexCoordP3ui

foreign import CALLCONV "dynamic" dyn_glTexCoordP3ui
  :: FunPtr (GLenum -> GLuint -> IO ())
  ->         GLenum -> GLuint -> IO ()

{-# NOINLINE ptr_glTexCoordP3ui #-}
ptr_glTexCoordP3ui :: FunPtr (GLenum -> GLuint -> IO ())
ptr_glTexCoordP3ui = unsafePerformIO $ getCommand "glTexCoordP3ui"

-- glTexCoordP3uiv -------------------------------------------------------------

glTexCoordP3uiv
  :: GLenum -- ^ @type@.
  -> Ptr GLuint -- ^ @coords@ pointing to @1@ elements of type @GLuint@.
  -> IO ()
glTexCoordP3uiv = dyn_glTexCoordP3uiv ptr_glTexCoordP3uiv

foreign import CALLCONV "dynamic" dyn_glTexCoordP3uiv
  :: FunPtr (GLenum -> Ptr GLuint -> IO ())
  ->         GLenum -> Ptr GLuint -> IO ()

{-# NOINLINE ptr_glTexCoordP3uiv #-}
ptr_glTexCoordP3uiv :: FunPtr (GLenum -> Ptr GLuint -> IO ())
ptr_glTexCoordP3uiv = unsafePerformIO $ getCommand "glTexCoordP3uiv"

-- glTexCoordP4ui --------------------------------------------------------------

glTexCoordP4ui
  :: GLenum -- ^ @type@.
  -> GLuint -- ^ @coords@.
  -> IO ()
glTexCoordP4ui = dyn_glTexCoordP4ui ptr_glTexCoordP4ui

foreign import CALLCONV "dynamic" dyn_glTexCoordP4ui
  :: FunPtr (GLenum -> GLuint -> IO ())
  ->         GLenum -> GLuint -> IO ()

{-# NOINLINE ptr_glTexCoordP4ui #-}
ptr_glTexCoordP4ui :: FunPtr (GLenum -> GLuint -> IO ())
ptr_glTexCoordP4ui = unsafePerformIO $ getCommand "glTexCoordP4ui"

-- glTexCoordP4uiv -------------------------------------------------------------

glTexCoordP4uiv
  :: GLenum -- ^ @type@.
  -> Ptr GLuint -- ^ @coords@ pointing to @1@ elements of type @GLuint@.
  -> IO ()
glTexCoordP4uiv = dyn_glTexCoordP4uiv ptr_glTexCoordP4uiv

foreign import CALLCONV "dynamic" dyn_glTexCoordP4uiv
  :: FunPtr (GLenum -> Ptr GLuint -> IO ())
  ->         GLenum -> Ptr GLuint -> IO ()

{-# NOINLINE ptr_glTexCoordP4uiv #-}
ptr_glTexCoordP4uiv :: FunPtr (GLenum -> Ptr GLuint -> IO ())
ptr_glTexCoordP4uiv = unsafePerformIO $ getCommand "glTexCoordP4uiv"

-- glTexCoordPointer -----------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glTexCoordPointer.xml OpenGL 2.x>
glTexCoordPointer
  :: GLint -- ^ @size@.
  -> GLenum -- ^ @type@ of type @TexCoordPointerType@.
  -> GLsizei -- ^ @stride@.
  -> Ptr a -- ^ @pointer@ pointing to @COMPSIZE(size,type,stride)@ elements of type @a@.
  -> IO ()
glTexCoordPointer = dyn_glTexCoordPointer ptr_glTexCoordPointer

foreign import CALLCONV "dynamic" dyn_glTexCoordPointer
  :: FunPtr (GLint -> GLenum -> GLsizei -> Ptr a -> IO ())
  ->         GLint -> GLenum -> GLsizei -> Ptr a -> IO ()

{-# NOINLINE ptr_glTexCoordPointer #-}
ptr_glTexCoordPointer :: FunPtr (GLint -> GLenum -> GLsizei -> Ptr a -> IO ())
ptr_glTexCoordPointer = unsafePerformIO $ getCommand "glTexCoordPointer"

-- glTexCoordPointerEXT --------------------------------------------------------

glTexCoordPointerEXT
  :: GLint -- ^ @size@.
  -> GLenum -- ^ @type@ of type @TexCoordPointerType@.
  -> GLsizei -- ^ @stride@.
  -> GLsizei -- ^ @count@.
  -> Ptr a -- ^ @pointer@ pointing to @COMPSIZE(size,type,stride,count)@ elements of type @a@.
  -> IO ()
glTexCoordPointerEXT = dyn_glTexCoordPointerEXT ptr_glTexCoordPointerEXT

foreign import CALLCONV "dynamic" dyn_glTexCoordPointerEXT
  :: FunPtr (GLint -> GLenum -> GLsizei -> GLsizei -> Ptr a -> IO ())
  ->         GLint -> GLenum -> GLsizei -> GLsizei -> Ptr a -> IO ()

{-# NOINLINE ptr_glTexCoordPointerEXT #-}
ptr_glTexCoordPointerEXT :: FunPtr (GLint -> GLenum -> GLsizei -> GLsizei -> Ptr a -> IO ())
ptr_glTexCoordPointerEXT = unsafePerformIO $ getCommand "glTexCoordPointerEXT"

-- glTexCoordPointerListIBM ----------------------------------------------------

glTexCoordPointerListIBM
  :: GLint -- ^ @size@.
  -> GLenum -- ^ @type@ of type @TexCoordPointerType@.
  -> GLint -- ^ @stride@.
  -> Ptr (Ptr a) -- ^ @pointer@ pointing to @COMPSIZE(size,type,stride)@ elements of type @Ptr a@.
  -> GLint -- ^ @ptrstride@.
  -> IO ()
glTexCoordPointerListIBM = dyn_glTexCoordPointerListIBM ptr_glTexCoordPointerListIBM

foreign import CALLCONV "dynamic" dyn_glTexCoordPointerListIBM
  :: FunPtr (GLint -> GLenum -> GLint -> Ptr (Ptr a) -> GLint -> IO ())
  ->         GLint -> GLenum -> GLint -> Ptr (Ptr a) -> GLint -> IO ()

{-# NOINLINE ptr_glTexCoordPointerListIBM #-}
ptr_glTexCoordPointerListIBM :: FunPtr (GLint -> GLenum -> GLint -> Ptr (Ptr a) -> GLint -> IO ())
ptr_glTexCoordPointerListIBM = unsafePerformIO $ getCommand "glTexCoordPointerListIBM"

-- glTexCoordPointervINTEL -----------------------------------------------------

glTexCoordPointervINTEL
  :: GLint -- ^ @size@.
  -> GLenum -- ^ @type@ of type @VertexPointerType@.
  -> Ptr (Ptr a) -- ^ @pointer@ pointing to @4@ elements of type @Ptr a@.
  -> IO ()
glTexCoordPointervINTEL = dyn_glTexCoordPointervINTEL ptr_glTexCoordPointervINTEL

foreign import CALLCONV "dynamic" dyn_glTexCoordPointervINTEL
  :: FunPtr (GLint -> GLenum -> Ptr (Ptr a) -> IO ())
  ->         GLint -> GLenum -> Ptr (Ptr a) -> IO ()

{-# NOINLINE ptr_glTexCoordPointervINTEL #-}
ptr_glTexCoordPointervINTEL :: FunPtr (GLint -> GLenum -> Ptr (Ptr a) -> IO ())
ptr_glTexCoordPointervINTEL = unsafePerformIO $ getCommand "glTexCoordPointervINTEL"

-- glTexEnvf -------------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glTexEnv.xml OpenGL 2.x>
glTexEnvf
  :: GLenum -- ^ @target@ of type @TextureEnvTarget@.
  -> GLenum -- ^ @pname@ of type @TextureEnvParameter@.
  -> GLfloat -- ^ @param@ of type @CheckedFloat32@.
  -> IO ()
glTexEnvf = dyn_glTexEnvf ptr_glTexEnvf

foreign import CALLCONV "dynamic" dyn_glTexEnvf
  :: FunPtr (GLenum -> GLenum -> GLfloat -> IO ())
  ->         GLenum -> GLenum -> GLfloat -> IO ()

{-# NOINLINE ptr_glTexEnvf #-}
ptr_glTexEnvf :: FunPtr (GLenum -> GLenum -> GLfloat -> IO ())
ptr_glTexEnvf = unsafePerformIO $ getCommand "glTexEnvf"

-- glTexEnvfv ------------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glTexEnv.xml OpenGL 2.x>
glTexEnvfv
  :: GLenum -- ^ @target@ of type @TextureEnvTarget@.
  -> GLenum -- ^ @pname@ of type @TextureEnvParameter@.
  -> Ptr GLfloat -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @CheckedFloat32@.
  -> IO ()
glTexEnvfv = dyn_glTexEnvfv ptr_glTexEnvfv

foreign import CALLCONV "dynamic" dyn_glTexEnvfv
  :: FunPtr (GLenum -> GLenum -> Ptr GLfloat -> IO ())
  ->         GLenum -> GLenum -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glTexEnvfv #-}
ptr_glTexEnvfv :: FunPtr (GLenum -> GLenum -> Ptr GLfloat -> IO ())
ptr_glTexEnvfv = unsafePerformIO $ getCommand "glTexEnvfv"

-- glTexEnvi -------------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glTexEnv.xml OpenGL 2.x>
glTexEnvi
  :: GLenum -- ^ @target@ of type @TextureEnvTarget@.
  -> GLenum -- ^ @pname@ of type @TextureEnvParameter@.
  -> GLint -- ^ @param@ of type @CheckedInt32@.
  -> IO ()
glTexEnvi = dyn_glTexEnvi ptr_glTexEnvi

foreign import CALLCONV "dynamic" dyn_glTexEnvi
  :: FunPtr (GLenum -> GLenum -> GLint -> IO ())
  ->         GLenum -> GLenum -> GLint -> IO ()

{-# NOINLINE ptr_glTexEnvi #-}
ptr_glTexEnvi :: FunPtr (GLenum -> GLenum -> GLint -> IO ())
ptr_glTexEnvi = unsafePerformIO $ getCommand "glTexEnvi"

-- glTexEnviv ------------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glTexEnv.xml OpenGL 2.x>
glTexEnviv
  :: GLenum -- ^ @target@ of type @TextureEnvTarget@.
  -> GLenum -- ^ @pname@ of type @TextureEnvParameter@.
  -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @CheckedInt32@.
  -> IO ()
glTexEnviv = dyn_glTexEnviv ptr_glTexEnviv

foreign import CALLCONV "dynamic" dyn_glTexEnviv
  :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
  ->         GLenum -> GLenum -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glTexEnviv #-}
ptr_glTexEnviv :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
ptr_glTexEnviv = unsafePerformIO $ getCommand "glTexEnviv"

-- glTexEnvx -------------------------------------------------------------------

glTexEnvx
  :: GLenum -- ^ @target@.
  -> GLenum -- ^ @pname@.
  -> GLfixed -- ^ @param@.
  -> IO ()
glTexEnvx = dyn_glTexEnvx ptr_glTexEnvx

foreign import CALLCONV "dynamic" dyn_glTexEnvx
  :: FunPtr (GLenum -> GLenum -> GLfixed -> IO ())
  ->         GLenum -> GLenum -> GLfixed -> IO ()

{-# NOINLINE ptr_glTexEnvx #-}
ptr_glTexEnvx :: FunPtr (GLenum -> GLenum -> GLfixed -> IO ())
ptr_glTexEnvx = unsafePerformIO $ getCommand "glTexEnvx"

-- glTexEnvxOES ----------------------------------------------------------------

glTexEnvxOES
  :: GLenum -- ^ @target@.
  -> GLenum -- ^ @pname@.
  -> GLfixed -- ^ @param@.
  -> IO ()
glTexEnvxOES = dyn_glTexEnvxOES ptr_glTexEnvxOES

foreign import CALLCONV "dynamic" dyn_glTexEnvxOES
  :: FunPtr (GLenum -> GLenum -> GLfixed -> IO ())
  ->         GLenum -> GLenum -> GLfixed -> IO ()

{-# NOINLINE ptr_glTexEnvxOES #-}
ptr_glTexEnvxOES :: FunPtr (GLenum -> GLenum -> GLfixed -> IO ())
ptr_glTexEnvxOES = unsafePerformIO $ getCommand "glTexEnvxOES"

-- glTexEnvxv ------------------------------------------------------------------

glTexEnvxv
  :: GLenum -- ^ @target@.
  -> GLenum -- ^ @pname@.
  -> Ptr GLfixed -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLfixed@.
  -> IO ()
glTexEnvxv = dyn_glTexEnvxv ptr_glTexEnvxv

foreign import CALLCONV "dynamic" dyn_glTexEnvxv
  :: FunPtr (GLenum -> GLenum -> Ptr GLfixed -> IO ())
  ->         GLenum -> GLenum -> Ptr GLfixed -> IO ()

{-# NOINLINE ptr_glTexEnvxv #-}
ptr_glTexEnvxv :: FunPtr (GLenum -> GLenum -> Ptr GLfixed -> IO ())
ptr_glTexEnvxv = unsafePerformIO $ getCommand "glTexEnvxv"

-- glTexEnvxvOES ---------------------------------------------------------------

glTexEnvxvOES
  :: GLenum -- ^ @target@.
  -> GLenum -- ^ @pname@.
  -> Ptr GLfixed -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLfixed@.
  -> IO ()
glTexEnvxvOES = dyn_glTexEnvxvOES ptr_glTexEnvxvOES

foreign import CALLCONV "dynamic" dyn_glTexEnvxvOES
  :: FunPtr (GLenum -> GLenum -> Ptr GLfixed -> IO ())
  ->         GLenum -> GLenum -> Ptr GLfixed -> IO ()

{-# NOINLINE ptr_glTexEnvxvOES #-}
ptr_glTexEnvxvOES :: FunPtr (GLenum -> GLenum -> Ptr GLfixed -> IO ())
ptr_glTexEnvxvOES = unsafePerformIO $ getCommand "glTexEnvxvOES"

-- glTexFilterFuncSGIS ---------------------------------------------------------

glTexFilterFuncSGIS
  :: GLenum -- ^ @target@ of type @TextureTarget@.
  -> GLenum -- ^ @filter@ of type @TextureFilterSGIS@.
  -> GLsizei -- ^ @n@.
  -> Ptr GLfloat -- ^ @weights@ pointing to @n@ elements of type @GLfloat@.
  -> IO ()
glTexFilterFuncSGIS = dyn_glTexFilterFuncSGIS ptr_glTexFilterFuncSGIS

foreign import CALLCONV "dynamic" dyn_glTexFilterFuncSGIS
  :: FunPtr (GLenum -> GLenum -> GLsizei -> Ptr GLfloat -> IO ())
  ->         GLenum -> GLenum -> GLsizei -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glTexFilterFuncSGIS #-}
ptr_glTexFilterFuncSGIS :: FunPtr (GLenum -> GLenum -> GLsizei -> Ptr GLfloat -> IO ())
ptr_glTexFilterFuncSGIS = unsafePerformIO $ getCommand "glTexFilterFuncSGIS"

-- glTexGend -------------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glTexGen.xml OpenGL 2.x>
glTexGend
  :: GLenum -- ^ @coord@ of type @TextureCoordName@.
  -> GLenum -- ^ @pname@ of type @TextureGenParameter@.
  -> GLdouble -- ^ @param@.
  -> IO ()
glTexGend = dyn_glTexGend ptr_glTexGend

foreign import CALLCONV "dynamic" dyn_glTexGend
  :: FunPtr (GLenum -> GLenum -> GLdouble -> IO ())
  ->         GLenum -> GLenum -> GLdouble -> IO ()

{-# NOINLINE ptr_glTexGend #-}
ptr_glTexGend :: FunPtr (GLenum -> GLenum -> GLdouble -> IO ())
ptr_glTexGend = unsafePerformIO $ getCommand "glTexGend"

-- glTexGendv ------------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glTexGen.xml OpenGL 2.x>
glTexGendv
  :: GLenum -- ^ @coord@ of type @TextureCoordName@.
  -> GLenum -- ^ @pname@ of type @TextureGenParameter@.
  -> Ptr GLdouble -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLdouble@.
  -> IO ()
glTexGendv = dyn_glTexGendv ptr_glTexGendv

foreign import CALLCONV "dynamic" dyn_glTexGendv
  :: FunPtr (GLenum -> GLenum -> Ptr GLdouble -> IO ())
  ->         GLenum -> GLenum -> Ptr GLdouble -> IO ()

{-# NOINLINE ptr_glTexGendv #-}
ptr_glTexGendv :: FunPtr (GLenum -> GLenum -> Ptr GLdouble -> IO ())
ptr_glTexGendv = unsafePerformIO $ getCommand "glTexGendv"

-- glTexGenf -------------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glTexGen.xml OpenGL 2.x>
glTexGenf
  :: GLenum -- ^ @coord@ of type @TextureCoordName@.
  -> GLenum -- ^ @pname@ of type @TextureGenParameter@.
  -> GLfloat -- ^ @param@ of type @CheckedFloat32@.
  -> IO ()
glTexGenf = dyn_glTexGenf ptr_glTexGenf

foreign import CALLCONV "dynamic" dyn_glTexGenf
  :: FunPtr (GLenum -> GLenum -> GLfloat -> IO ())
  ->         GLenum -> GLenum -> GLfloat -> IO ()

{-# NOINLINE ptr_glTexGenf #-}
ptr_glTexGenf :: FunPtr (GLenum -> GLenum -> GLfloat -> IO ())
ptr_glTexGenf = unsafePerformIO $ getCommand "glTexGenf"

-- glTexGenfOES ----------------------------------------------------------------

glTexGenfOES
  :: GLenum -- ^ @coord@.
  -> GLenum -- ^ @pname@.
  -> GLfloat -- ^ @param@.
  -> IO ()
glTexGenfOES = dyn_glTexGenfOES ptr_glTexGenfOES

foreign import CALLCONV "dynamic" dyn_glTexGenfOES
  :: FunPtr (GLenum -> GLenum -> GLfloat -> IO ())
  ->         GLenum -> GLenum -> GLfloat -> IO ()

{-# NOINLINE ptr_glTexGenfOES #-}
ptr_glTexGenfOES :: FunPtr (GLenum -> GLenum -> GLfloat -> IO ())
ptr_glTexGenfOES = unsafePerformIO $ getCommand "glTexGenfOES"

-- glTexGenfv ------------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glTexGen.xml OpenGL 2.x>
glTexGenfv
  :: GLenum -- ^ @coord@ of type @TextureCoordName@.
  -> GLenum -- ^ @pname@ of type @TextureGenParameter@.
  -> Ptr GLfloat -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @CheckedFloat32@.
  -> IO ()
glTexGenfv = dyn_glTexGenfv ptr_glTexGenfv

foreign import CALLCONV "dynamic" dyn_glTexGenfv
  :: FunPtr (GLenum -> GLenum -> Ptr GLfloat -> IO ())
  ->         GLenum -> GLenum -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glTexGenfv #-}
ptr_glTexGenfv :: FunPtr (GLenum -> GLenum -> Ptr GLfloat -> IO ())
ptr_glTexGenfv = unsafePerformIO $ getCommand "glTexGenfv"

-- glTexGenfvOES ---------------------------------------------------------------

glTexGenfvOES
  :: GLenum -- ^ @coord@.
  -> GLenum -- ^ @pname@.
  -> Ptr GLfloat -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLfloat@.
  -> IO ()
glTexGenfvOES = dyn_glTexGenfvOES ptr_glTexGenfvOES

foreign import CALLCONV "dynamic" dyn_glTexGenfvOES
  :: FunPtr (GLenum -> GLenum -> Ptr GLfloat -> IO ())
  ->         GLenum -> GLenum -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glTexGenfvOES #-}
ptr_glTexGenfvOES :: FunPtr (GLenum -> GLenum -> Ptr GLfloat -> IO ())
ptr_glTexGenfvOES = unsafePerformIO $ getCommand "glTexGenfvOES"

-- glTexGeni -------------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glTexGen.xml OpenGL 2.x>
glTexGeni
  :: GLenum -- ^ @coord@ of type @TextureCoordName@.
  -> GLenum -- ^ @pname@ of type @TextureGenParameter@.
  -> GLint -- ^ @param@ of type @CheckedInt32@.
  -> IO ()
glTexGeni = dyn_glTexGeni ptr_glTexGeni

foreign import CALLCONV "dynamic" dyn_glTexGeni
  :: FunPtr (GLenum -> GLenum -> GLint -> IO ())
  ->         GLenum -> GLenum -> GLint -> IO ()

{-# NOINLINE ptr_glTexGeni #-}
ptr_glTexGeni :: FunPtr (GLenum -> GLenum -> GLint -> IO ())
ptr_glTexGeni = unsafePerformIO $ getCommand "glTexGeni"

-- glTexGeniOES ----------------------------------------------------------------

glTexGeniOES
  :: GLenum -- ^ @coord@.
  -> GLenum -- ^ @pname@.
  -> GLint -- ^ @param@.
  -> IO ()
glTexGeniOES = dyn_glTexGeniOES ptr_glTexGeniOES

foreign import CALLCONV "dynamic" dyn_glTexGeniOES
  :: FunPtr (GLenum -> GLenum -> GLint -> IO ())
  ->         GLenum -> GLenum -> GLint -> IO ()

{-# NOINLINE ptr_glTexGeniOES #-}
ptr_glTexGeniOES :: FunPtr (GLenum -> GLenum -> GLint -> IO ())
ptr_glTexGeniOES = unsafePerformIO $ getCommand "glTexGeniOES"

-- glTexGeniv ------------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glTexGen.xml OpenGL 2.x>
glTexGeniv
  :: GLenum -- ^ @coord@ of type @TextureCoordName@.
  -> GLenum -- ^ @pname@ of type @TextureGenParameter@.
  -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @CheckedInt32@.
  -> IO ()
glTexGeniv = dyn_glTexGeniv ptr_glTexGeniv

foreign import CALLCONV "dynamic" dyn_glTexGeniv
  :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
  ->         GLenum -> GLenum -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glTexGeniv #-}
ptr_glTexGeniv :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
ptr_glTexGeniv = unsafePerformIO $ getCommand "glTexGeniv"

-- glTexGenivOES ---------------------------------------------------------------

glTexGenivOES
  :: GLenum -- ^ @coord@.
  -> GLenum -- ^ @pname@.
  -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLint@.
  -> IO ()
glTexGenivOES = dyn_glTexGenivOES ptr_glTexGenivOES

foreign import CALLCONV "dynamic" dyn_glTexGenivOES
  :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
  ->         GLenum -> GLenum -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glTexGenivOES #-}
ptr_glTexGenivOES :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
ptr_glTexGenivOES = unsafePerformIO $ getCommand "glTexGenivOES"

-- glTexGenxOES ----------------------------------------------------------------

glTexGenxOES
  :: GLenum -- ^ @coord@.
  -> GLenum -- ^ @pname@.
  -> GLfixed -- ^ @param@.
  -> IO ()
glTexGenxOES = dyn_glTexGenxOES ptr_glTexGenxOES

foreign import CALLCONV "dynamic" dyn_glTexGenxOES
  :: FunPtr (GLenum -> GLenum -> GLfixed -> IO ())
  ->         GLenum -> GLenum -> GLfixed -> IO ()

{-# NOINLINE ptr_glTexGenxOES #-}
ptr_glTexGenxOES :: FunPtr (GLenum -> GLenum -> GLfixed -> IO ())
ptr_glTexGenxOES = unsafePerformIO $ getCommand "glTexGenxOES"

-- glTexGenxvOES ---------------------------------------------------------------

glTexGenxvOES
  :: GLenum -- ^ @coord@.
  -> GLenum -- ^ @pname@.
  -> Ptr GLfixed -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLfixed@.
  -> IO ()
glTexGenxvOES = dyn_glTexGenxvOES ptr_glTexGenxvOES

foreign import CALLCONV "dynamic" dyn_glTexGenxvOES
  :: FunPtr (GLenum -> GLenum -> Ptr GLfixed -> IO ())
  ->         GLenum -> GLenum -> Ptr GLfixed -> IO ()

{-# NOINLINE ptr_glTexGenxvOES #-}
ptr_glTexGenxvOES :: FunPtr (GLenum -> GLenum -> Ptr GLfixed -> IO ())
ptr_glTexGenxvOES = unsafePerformIO $ getCommand "glTexGenxvOES"

-- glTexImage1D ----------------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glTexImage1D.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glTexImage1D.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glTexImage1D.xhtml OpenGL 4.x>
glTexImage1D
  :: GLenum -- ^ @target@ of type @TextureTarget@.
  -> GLint -- ^ @level@ of type @CheckedInt32@.
  -> GLint -- ^ @internalformat@ of type @TextureComponentCount@.
  -> GLsizei -- ^ @width@.
  -> GLint -- ^ @border@ of type @CheckedInt32@.
  -> GLenum -- ^ @format@ of type @PixelFormat@.
  -> GLenum -- ^ @type@ of type @PixelType@.
  -> Ptr a -- ^ @pixels@ pointing to @COMPSIZE(format,type,width)@ elements of type @a@.
  -> IO ()
glTexImage1D = dyn_glTexImage1D ptr_glTexImage1D

foreign import CALLCONV "dynamic" dyn_glTexImage1D
  :: FunPtr (GLenum -> GLint -> GLint -> GLsizei -> GLint -> GLenum -> GLenum -> Ptr a -> IO ())
  ->         GLenum -> GLint -> GLint -> GLsizei -> GLint -> GLenum -> GLenum -> Ptr a -> IO ()

{-# NOINLINE ptr_glTexImage1D #-}
ptr_glTexImage1D :: FunPtr (GLenum -> GLint -> GLint -> GLsizei -> GLint -> GLenum -> GLenum -> Ptr a -> IO ())
ptr_glTexImage1D = unsafePerformIO $ getCommand "glTexImage1D"

-- glTexImage2D ----------------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glTexImage2D.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glTexImage2D.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glTexImage2D.xhtml OpenGL 4.x>
glTexImage2D
  :: GLenum -- ^ @target@ of type @TextureTarget@.
  -> GLint -- ^ @level@ of type @CheckedInt32@.
  -> GLint -- ^ @internalformat@ of type @TextureComponentCount@.
  -> GLsizei -- ^ @width@.
  -> GLsizei -- ^ @height@.
  -> GLint -- ^ @border@ of type @CheckedInt32@.
  -> GLenum -- ^ @format@ of type @PixelFormat@.
  -> GLenum -- ^ @type@ of type @PixelType@.
  -> Ptr a -- ^ @pixels@ pointing to @COMPSIZE(format,type,width,height)@ elements of type @a@.
  -> IO ()
glTexImage2D = dyn_glTexImage2D ptr_glTexImage2D

foreign import CALLCONV "dynamic" dyn_glTexImage2D
  :: FunPtr (GLenum -> GLint -> GLint -> GLsizei -> GLsizei -> GLint -> GLenum -> GLenum -> Ptr a -> IO ())
  ->         GLenum -> GLint -> GLint -> GLsizei -> GLsizei -> GLint -> GLenum -> GLenum -> Ptr a -> IO ()

{-# NOINLINE ptr_glTexImage2D #-}
ptr_glTexImage2D :: FunPtr (GLenum -> GLint -> GLint -> GLsizei -> GLsizei -> GLint -> GLenum -> GLenum -> Ptr a -> IO ())
ptr_glTexImage2D = unsafePerformIO $ getCommand "glTexImage2D"

-- glTexImage2DMultisample -----------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glTexImage2DMultisample.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glTexImage2DMultisample.xhtml OpenGL 4.x>
glTexImage2DMultisample
  :: GLenum -- ^ @target@.
  -> GLsizei -- ^ @samples@.
  -> GLenum -- ^ @internalformat@.
  -> GLsizei -- ^ @width@.
  -> GLsizei -- ^ @height@.
  -> GLboolean -- ^ @fixedsamplelocations@ of type @Boolean@.
  -> IO ()
glTexImage2DMultisample = dyn_glTexImage2DMultisample ptr_glTexImage2DMultisample

foreign import CALLCONV "dynamic" dyn_glTexImage2DMultisample
  :: FunPtr (GLenum -> GLsizei -> GLenum -> GLsizei -> GLsizei -> GLboolean -> IO ())
  ->         GLenum -> GLsizei -> GLenum -> GLsizei -> GLsizei -> GLboolean -> IO ()

{-# NOINLINE ptr_glTexImage2DMultisample #-}
ptr_glTexImage2DMultisample :: FunPtr (GLenum -> GLsizei -> GLenum -> GLsizei -> GLsizei -> GLboolean -> IO ())
ptr_glTexImage2DMultisample = unsafePerformIO $ getCommand "glTexImage2DMultisample"

-- glTexImage2DMultisampleCoverageNV -------------------------------------------

glTexImage2DMultisampleCoverageNV
  :: GLenum -- ^ @target@.
  -> GLsizei -- ^ @coverageSamples@.
  -> GLsizei -- ^ @colorSamples@.
  -> GLint -- ^ @internalFormat@.
  -> GLsizei -- ^ @width@.
  -> GLsizei -- ^ @height@.
  -> GLboolean -- ^ @fixedSampleLocations@ of type @Boolean@.
  -> IO ()
glTexImage2DMultisampleCoverageNV = dyn_glTexImage2DMultisampleCoverageNV ptr_glTexImage2DMultisampleCoverageNV

foreign import CALLCONV "dynamic" dyn_glTexImage2DMultisampleCoverageNV
  :: FunPtr (GLenum -> GLsizei -> GLsizei -> GLint -> GLsizei -> GLsizei -> GLboolean -> IO ())
  ->         GLenum -> GLsizei -> GLsizei -> GLint -> GLsizei -> GLsizei -> GLboolean -> IO ()

{-# NOINLINE ptr_glTexImage2DMultisampleCoverageNV #-}
ptr_glTexImage2DMultisampleCoverageNV :: FunPtr (GLenum -> GLsizei -> GLsizei -> GLint -> GLsizei -> GLsizei -> GLboolean -> IO ())
ptr_glTexImage2DMultisampleCoverageNV = unsafePerformIO $ getCommand "glTexImage2DMultisampleCoverageNV"

-- glTexImage3D ----------------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glTexImage3D.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glTexImage3D.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glTexImage3D.xhtml OpenGL 4.x>
glTexImage3D
  :: GLenum -- ^ @target@ of type @TextureTarget@.
  -> GLint -- ^ @level@ of type @CheckedInt32@.
  -> GLint -- ^ @internalformat@ of type @TextureComponentCount@.
  -> GLsizei -- ^ @width@.
  -> GLsizei -- ^ @height@.
  -> GLsizei -- ^ @depth@.
  -> GLint -- ^ @border@ of type @CheckedInt32@.
  -> GLenum -- ^ @format@ of type @PixelFormat@.
  -> GLenum -- ^ @type@ of type @PixelType@.
  -> Ptr a -- ^ @pixels@ pointing to @COMPSIZE(format,type,width,height,depth)@ elements of type @a@.
  -> IO ()
glTexImage3D = dyn_glTexImage3D ptr_glTexImage3D

foreign import CALLCONV "dynamic" dyn_glTexImage3D
  :: FunPtr (GLenum -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLint -> GLenum -> GLenum -> Ptr a -> IO ())
  ->         GLenum -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLint -> GLenum -> GLenum -> Ptr a -> IO ()

{-# NOINLINE ptr_glTexImage3D #-}
ptr_glTexImage3D :: FunPtr (GLenum -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLint -> GLenum -> GLenum -> Ptr a -> IO ())
ptr_glTexImage3D = unsafePerformIO $ getCommand "glTexImage3D"

-- glTexImage3DEXT -------------------------------------------------------------

glTexImage3DEXT
  :: GLenum -- ^ @target@ of type @TextureTarget@.
  -> GLint -- ^ @level@ of type @CheckedInt32@.
  -> GLenum -- ^ @internalformat@ of type @PixelInternalFormat@.
  -> GLsizei -- ^ @width@.
  -> GLsizei -- ^ @height@.
  -> GLsizei -- ^ @depth@.
  -> GLint -- ^ @border@ of type @CheckedInt32@.
  -> GLenum -- ^ @format@ of type @PixelFormat@.
  -> GLenum -- ^ @type@ of type @PixelType@.
  -> Ptr a -- ^ @pixels@ pointing to @COMPSIZE(format,type,width,height,depth)@ elements of type @a@.
  -> IO ()
glTexImage3DEXT = dyn_glTexImage3DEXT ptr_glTexImage3DEXT

foreign import CALLCONV "dynamic" dyn_glTexImage3DEXT
  :: FunPtr (GLenum -> GLint -> GLenum -> GLsizei -> GLsizei -> GLsizei -> GLint -> GLenum -> GLenum -> Ptr a -> IO ())
  ->         GLenum -> GLint -> GLenum -> GLsizei -> GLsizei -> GLsizei -> GLint -> GLenum -> GLenum -> Ptr a -> IO ()

{-# NOINLINE ptr_glTexImage3DEXT #-}
ptr_glTexImage3DEXT :: FunPtr (GLenum -> GLint -> GLenum -> GLsizei -> GLsizei -> GLsizei -> GLint -> GLenum -> GLenum -> Ptr a -> IO ())
ptr_glTexImage3DEXT = unsafePerformIO $ getCommand "glTexImage3DEXT"

-- glTexImage3DMultisample -----------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glTexImage3DMultisample.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glTexImage3DMultisample.xhtml OpenGL 4.x>
glTexImage3DMultisample
  :: GLenum -- ^ @target@.
  -> GLsizei -- ^ @samples@.
  -> GLenum -- ^ @internalformat@.
  -> GLsizei -- ^ @width@.
  -> GLsizei -- ^ @height@.
  -> GLsizei -- ^ @depth@.
  -> GLboolean -- ^ @fixedsamplelocations@ of type @Boolean@.
  -> IO ()
glTexImage3DMultisample = dyn_glTexImage3DMultisample ptr_glTexImage3DMultisample

foreign import CALLCONV "dynamic" dyn_glTexImage3DMultisample
  :: FunPtr (GLenum -> GLsizei -> GLenum -> GLsizei -> GLsizei -> GLsizei -> GLboolean -> IO ())
  ->         GLenum -> GLsizei -> GLenum -> GLsizei -> GLsizei -> GLsizei -> GLboolean -> IO ()

{-# NOINLINE ptr_glTexImage3DMultisample #-}
ptr_glTexImage3DMultisample :: FunPtr (GLenum -> GLsizei -> GLenum -> GLsizei -> GLsizei -> GLsizei -> GLboolean -> IO ())
ptr_glTexImage3DMultisample = unsafePerformIO $ getCommand "glTexImage3DMultisample"

-- glTexImage3DMultisampleCoverageNV -------------------------------------------

glTexImage3DMultisampleCoverageNV
  :: GLenum -- ^ @target@.
  -> GLsizei -- ^ @coverageSamples@.
  -> GLsizei -- ^ @colorSamples@.
  -> GLint -- ^ @internalFormat@.
  -> GLsizei -- ^ @width@.
  -> GLsizei -- ^ @height@.
  -> GLsizei -- ^ @depth@.
  -> GLboolean -- ^ @fixedSampleLocations@ of type @Boolean@.
  -> IO ()
glTexImage3DMultisampleCoverageNV = dyn_glTexImage3DMultisampleCoverageNV ptr_glTexImage3DMultisampleCoverageNV

foreign import CALLCONV "dynamic" dyn_glTexImage3DMultisampleCoverageNV
  :: FunPtr (GLenum -> GLsizei -> GLsizei -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLboolean -> IO ())
  ->         GLenum -> GLsizei -> GLsizei -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLboolean -> IO ()

{-# NOINLINE ptr_glTexImage3DMultisampleCoverageNV #-}
ptr_glTexImage3DMultisampleCoverageNV :: FunPtr (GLenum -> GLsizei -> GLsizei -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLboolean -> IO ())
ptr_glTexImage3DMultisampleCoverageNV = unsafePerformIO $ getCommand "glTexImage3DMultisampleCoverageNV"

-- glTexImage3DOES -------------------------------------------------------------

glTexImage3DOES
  :: GLenum -- ^ @target@.
  -> GLint -- ^ @level@.
  -> GLenum -- ^ @internalformat@.
  -> GLsizei -- ^ @width@.
  -> GLsizei -- ^ @height@.
  -> GLsizei -- ^ @depth@.
  -> GLint -- ^ @border@.
  -> GLenum -- ^ @format@.
  -> GLenum -- ^ @type@.
  -> Ptr a -- ^ @pixels@ pointing to @COMPSIZE(format,type,width,height,depth)@ elements of type @a@.
  -> IO ()
glTexImage3DOES = dyn_glTexImage3DOES ptr_glTexImage3DOES

foreign import CALLCONV "dynamic" dyn_glTexImage3DOES
  :: FunPtr (GLenum -> GLint -> GLenum -> GLsizei -> GLsizei -> GLsizei -> GLint -> GLenum -> GLenum -> Ptr a -> IO ())
  ->         GLenum -> GLint -> GLenum -> GLsizei -> GLsizei -> GLsizei -> GLint -> GLenum -> GLenum -> Ptr a -> IO ()

{-# NOINLINE ptr_glTexImage3DOES #-}
ptr_glTexImage3DOES :: FunPtr (GLenum -> GLint -> GLenum -> GLsizei -> GLsizei -> GLsizei -> GLint -> GLenum -> GLenum -> Ptr a -> IO ())
ptr_glTexImage3DOES = unsafePerformIO $ getCommand "glTexImage3DOES"

-- glTexImage4DSGIS ------------------------------------------------------------

glTexImage4DSGIS
  :: GLenum -- ^ @target@ of type @TextureTarget@.
  -> GLint -- ^ @level@ of type @CheckedInt32@.
  -> GLenum -- ^ @internalformat@ of type @PixelInternalFormat@.
  -> GLsizei -- ^ @width@.
  -> GLsizei -- ^ @height@.
  -> GLsizei -- ^ @depth@.
  -> GLsizei -- ^ @size4d@.
  -> GLint -- ^ @border@ of type @CheckedInt32@.
  -> GLenum -- ^ @format@ of type @PixelFormat@.
  -> GLenum -- ^ @type@ of type @PixelType@.
  -> Ptr a -- ^ @pixels@ pointing to @COMPSIZE(format,type,width,height,depth,size4d)@ elements of type @a@.
  -> IO ()
glTexImage4DSGIS = dyn_glTexImage4DSGIS ptr_glTexImage4DSGIS

foreign import CALLCONV "dynamic" dyn_glTexImage4DSGIS
  :: FunPtr (GLenum -> GLint -> GLenum -> GLsizei -> GLsizei -> GLsizei -> GLsizei -> GLint -> GLenum -> GLenum -> Ptr a -> IO ())
  ->         GLenum -> GLint -> GLenum -> GLsizei -> GLsizei -> GLsizei -> GLsizei -> GLint -> GLenum -> GLenum -> Ptr a -> IO ()

{-# NOINLINE ptr_glTexImage4DSGIS #-}
ptr_glTexImage4DSGIS :: FunPtr (GLenum -> GLint -> GLenum -> GLsizei -> GLsizei -> GLsizei -> GLsizei -> GLint -> GLenum -> GLenum -> Ptr a -> IO ())
ptr_glTexImage4DSGIS = unsafePerformIO $ getCommand "glTexImage4DSGIS"

-- glTexPageCommitmentARB ------------------------------------------------------

glTexPageCommitmentARB
  :: GLenum -- ^ @target@.
  -> GLint -- ^ @level@.
  -> GLint -- ^ @xoffset@.
  -> GLint -- ^ @yoffset@.
  -> GLint -- ^ @zoffset@.
  -> GLsizei -- ^ @width@.
  -> GLsizei -- ^ @height@.
  -> GLsizei -- ^ @depth@.
  -> GLboolean -- ^ @resident@.
  -> IO ()
glTexPageCommitmentARB = dyn_glTexPageCommitmentARB ptr_glTexPageCommitmentARB

foreign import CALLCONV "dynamic" dyn_glTexPageCommitmentARB
  :: FunPtr (GLenum -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLboolean -> IO ())
  ->         GLenum -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLboolean -> IO ()

{-# NOINLINE ptr_glTexPageCommitmentARB #-}
ptr_glTexPageCommitmentARB :: FunPtr (GLenum -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLboolean -> IO ())
ptr_glTexPageCommitmentARB = unsafePerformIO $ getCommand "glTexPageCommitmentARB"

-- glTexParameterIiv -----------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glTexParameter.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glTexParameter.xhtml OpenGL 4.x>
glTexParameterIiv
  :: GLenum -- ^ @target@ of type @TextureTarget@.
  -> GLenum -- ^ @pname@ of type @TextureParameterName@.
  -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLint@.
  -> IO ()
glTexParameterIiv = dyn_glTexParameterIiv ptr_glTexParameterIiv

foreign import CALLCONV "dynamic" dyn_glTexParameterIiv
  :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
  ->         GLenum -> GLenum -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glTexParameterIiv #-}
ptr_glTexParameterIiv :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
ptr_glTexParameterIiv = unsafePerformIO $ getCommand "glTexParameterIiv"

-- glTexParameterIivEXT --------------------------------------------------------

glTexParameterIivEXT
  :: GLenum -- ^ @target@ of type @TextureTarget@.
  -> GLenum -- ^ @pname@ of type @TextureParameterName@.
  -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLint@.
  -> IO ()
glTexParameterIivEXT = dyn_glTexParameterIivEXT ptr_glTexParameterIivEXT

foreign import CALLCONV "dynamic" dyn_glTexParameterIivEXT
  :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
  ->         GLenum -> GLenum -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glTexParameterIivEXT #-}
ptr_glTexParameterIivEXT :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
ptr_glTexParameterIivEXT = unsafePerformIO $ getCommand "glTexParameterIivEXT"

-- glTexParameterIivOES --------------------------------------------------------

glTexParameterIivOES
  :: GLenum -- ^ @target@ of type @TextureTarget@.
  -> GLenum -- ^ @pname@ of type @TextureParameterName@.
  -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLint@.
  -> IO ()
glTexParameterIivOES = dyn_glTexParameterIivOES ptr_glTexParameterIivOES

foreign import CALLCONV "dynamic" dyn_glTexParameterIivOES
  :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
  ->         GLenum -> GLenum -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glTexParameterIivOES #-}
ptr_glTexParameterIivOES :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
ptr_glTexParameterIivOES = unsafePerformIO $ getCommand "glTexParameterIivOES"

-- glTexParameterIuiv ----------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glTexParameter.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glTexParameter.xhtml OpenGL 4.x>
glTexParameterIuiv
  :: GLenum -- ^ @target@ of type @TextureTarget@.
  -> GLenum -- ^ @pname@ of type @TextureParameterName@.
  -> Ptr GLuint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLuint@.
  -> IO ()
glTexParameterIuiv = dyn_glTexParameterIuiv ptr_glTexParameterIuiv

foreign import CALLCONV "dynamic" dyn_glTexParameterIuiv
  :: FunPtr (GLenum -> GLenum -> Ptr GLuint -> IO ())
  ->         GLenum -> GLenum -> Ptr GLuint -> IO ()

{-# NOINLINE ptr_glTexParameterIuiv #-}
ptr_glTexParameterIuiv :: FunPtr (GLenum -> GLenum -> Ptr GLuint -> IO ())
ptr_glTexParameterIuiv = unsafePerformIO $ getCommand "glTexParameterIuiv"

-- glTexParameterIuivEXT -------------------------------------------------------

glTexParameterIuivEXT
  :: GLenum -- ^ @target@ of type @TextureTarget@.
  -> GLenum -- ^ @pname@ of type @TextureParameterName@.
  -> Ptr GLuint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLuint@.
  -> IO ()
glTexParameterIuivEXT = dyn_glTexParameterIuivEXT ptr_glTexParameterIuivEXT

foreign import CALLCONV "dynamic" dyn_glTexParameterIuivEXT
  :: FunPtr (GLenum -> GLenum -> Ptr GLuint -> IO ())
  ->         GLenum -> GLenum -> Ptr GLuint -> IO ()

{-# NOINLINE ptr_glTexParameterIuivEXT #-}
ptr_glTexParameterIuivEXT :: FunPtr (GLenum -> GLenum -> Ptr GLuint -> IO ())
ptr_glTexParameterIuivEXT = unsafePerformIO $ getCommand "glTexParameterIuivEXT"

-- glTexParameterIuivOES -------------------------------------------------------

glTexParameterIuivOES
  :: GLenum -- ^ @target@ of type @TextureTarget@.
  -> GLenum -- ^ @pname@ of type @TextureParameterName@.
  -> Ptr GLuint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLuint@.
  -> IO ()
glTexParameterIuivOES = dyn_glTexParameterIuivOES ptr_glTexParameterIuivOES

foreign import CALLCONV "dynamic" dyn_glTexParameterIuivOES
  :: FunPtr (GLenum -> GLenum -> Ptr GLuint -> IO ())
  ->         GLenum -> GLenum -> Ptr GLuint -> IO ()

{-# NOINLINE ptr_glTexParameterIuivOES #-}
ptr_glTexParameterIuivOES :: FunPtr (GLenum -> GLenum -> Ptr GLuint -> IO ())
ptr_glTexParameterIuivOES = unsafePerformIO $ getCommand "glTexParameterIuivOES"

-- glTexParameterf -------------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glTexParameter.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glTexParameter.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glTexParameter.xhtml OpenGL 4.x>
glTexParameterf
  :: GLenum -- ^ @target@ of type @TextureTarget@.
  -> GLenum -- ^ @pname@ of type @TextureParameterName@.
  -> GLfloat -- ^ @param@ of type @CheckedFloat32@.
  -> IO ()
glTexParameterf = dyn_glTexParameterf ptr_glTexParameterf

foreign import CALLCONV "dynamic" dyn_glTexParameterf
  :: FunPtr (GLenum -> GLenum -> GLfloat -> IO ())
  ->         GLenum -> GLenum -> GLfloat -> IO ()

{-# NOINLINE ptr_glTexParameterf #-}
ptr_glTexParameterf :: FunPtr (GLenum -> GLenum -> GLfloat -> IO ())
ptr_glTexParameterf = unsafePerformIO $ getCommand "glTexParameterf"

-- glTexParameterfv ------------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glTexParameter.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glTexParameter.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glTexParameter.xhtml OpenGL 4.x>
glTexParameterfv
  :: GLenum -- ^ @target@ of type @TextureTarget@.
  -> GLenum -- ^ @pname@ of type @TextureParameterName@.
  -> Ptr GLfloat -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @CheckedFloat32@.
  -> IO ()
glTexParameterfv = dyn_glTexParameterfv ptr_glTexParameterfv

foreign import CALLCONV "dynamic" dyn_glTexParameterfv
  :: FunPtr (GLenum -> GLenum -> Ptr GLfloat -> IO ())
  ->         GLenum -> GLenum -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glTexParameterfv #-}
ptr_glTexParameterfv :: FunPtr (GLenum -> GLenum -> Ptr GLfloat -> IO ())
ptr_glTexParameterfv = unsafePerformIO $ getCommand "glTexParameterfv"

-- glTexParameteri -------------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glTexParameter.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glTexParameter.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glTexParameter.xhtml OpenGL 4.x>
glTexParameteri
  :: GLenum -- ^ @target@ of type @TextureTarget@.
  -> GLenum -- ^ @pname@ of type @TextureParameterName@.
  -> GLint -- ^ @param@ of type @CheckedInt32@.
  -> IO ()
glTexParameteri = dyn_glTexParameteri ptr_glTexParameteri

foreign import CALLCONV "dynamic" dyn_glTexParameteri
  :: FunPtr (GLenum -> GLenum -> GLint -> IO ())
  ->         GLenum -> GLenum -> GLint -> IO ()

{-# NOINLINE ptr_glTexParameteri #-}
ptr_glTexParameteri :: FunPtr (GLenum -> GLenum -> GLint -> IO ())
ptr_glTexParameteri = unsafePerformIO $ getCommand "glTexParameteri"

-- glTexParameteriv ------------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glTexParameter.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glTexParameter.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glTexParameter.xhtml OpenGL 4.x>
glTexParameteriv
  :: GLenum -- ^ @target@ of type @TextureTarget@.
  -> GLenum -- ^ @pname@ of type @TextureParameterName@.
  -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @CheckedInt32@.
  -> IO ()
glTexParameteriv = dyn_glTexParameteriv ptr_glTexParameteriv

foreign import CALLCONV "dynamic" dyn_glTexParameteriv
  :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
  ->         GLenum -> GLenum -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glTexParameteriv #-}
ptr_glTexParameteriv :: FunPtr (GLenum -> GLenum -> Ptr GLint -> IO ())
ptr_glTexParameteriv = unsafePerformIO $ getCommand "glTexParameteriv"

-- glTexParameterx -------------------------------------------------------------

glTexParameterx
  :: GLenum -- ^ @target@.
  -> GLenum -- ^ @pname@.
  -> GLfixed -- ^ @param@.
  -> IO ()
glTexParameterx = dyn_glTexParameterx ptr_glTexParameterx

foreign import CALLCONV "dynamic" dyn_glTexParameterx
  :: FunPtr (GLenum -> GLenum -> GLfixed -> IO ())
  ->         GLenum -> GLenum -> GLfixed -> IO ()

{-# NOINLINE ptr_glTexParameterx #-}
ptr_glTexParameterx :: FunPtr (GLenum -> GLenum -> GLfixed -> IO ())
ptr_glTexParameterx = unsafePerformIO $ getCommand "glTexParameterx"

-- glTexParameterxOES ----------------------------------------------------------

glTexParameterxOES
  :: GLenum -- ^ @target@.
  -> GLenum -- ^ @pname@.
  -> GLfixed -- ^ @param@.
  -> IO ()
glTexParameterxOES = dyn_glTexParameterxOES ptr_glTexParameterxOES

foreign import CALLCONV "dynamic" dyn_glTexParameterxOES
  :: FunPtr (GLenum -> GLenum -> GLfixed -> IO ())
  ->         GLenum -> GLenum -> GLfixed -> IO ()

{-# NOINLINE ptr_glTexParameterxOES #-}
ptr_glTexParameterxOES :: FunPtr (GLenum -> GLenum -> GLfixed -> IO ())
ptr_glTexParameterxOES = unsafePerformIO $ getCommand "glTexParameterxOES"

-- glTexParameterxv ------------------------------------------------------------

glTexParameterxv
  :: GLenum -- ^ @target@.
  -> GLenum -- ^ @pname@.
  -> Ptr GLfixed -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLfixed@.
  -> IO ()
glTexParameterxv = dyn_glTexParameterxv ptr_glTexParameterxv

foreign import CALLCONV "dynamic" dyn_glTexParameterxv
  :: FunPtr (GLenum -> GLenum -> Ptr GLfixed -> IO ())
  ->         GLenum -> GLenum -> Ptr GLfixed -> IO ()

{-# NOINLINE ptr_glTexParameterxv #-}
ptr_glTexParameterxv :: FunPtr (GLenum -> GLenum -> Ptr GLfixed -> IO ())
ptr_glTexParameterxv = unsafePerformIO $ getCommand "glTexParameterxv"

-- glTexParameterxvOES ---------------------------------------------------------

glTexParameterxvOES
  :: GLenum -- ^ @target@.
  -> GLenum -- ^ @pname@.
  -> Ptr GLfixed -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLfixed@.
  -> IO ()
glTexParameterxvOES = dyn_glTexParameterxvOES ptr_glTexParameterxvOES

foreign import CALLCONV "dynamic" dyn_glTexParameterxvOES
  :: FunPtr (GLenum -> GLenum -> Ptr GLfixed -> IO ())
  ->         GLenum -> GLenum -> Ptr GLfixed -> IO ()

{-# NOINLINE ptr_glTexParameterxvOES #-}
ptr_glTexParameterxvOES :: FunPtr (GLenum -> GLenum -> Ptr GLfixed -> IO ())
ptr_glTexParameterxvOES = unsafePerformIO $ getCommand "glTexParameterxvOES"

-- glTexRenderbufferNV ---------------------------------------------------------

glTexRenderbufferNV
  :: GLenum -- ^ @target@ of type @TextureTarget@.
  -> GLuint -- ^ @renderbuffer@.
  -> IO ()
glTexRenderbufferNV = dyn_glTexRenderbufferNV ptr_glTexRenderbufferNV

foreign import CALLCONV "dynamic" dyn_glTexRenderbufferNV
  :: FunPtr (GLenum -> GLuint -> IO ())
  ->         GLenum -> GLuint -> IO ()

{-# NOINLINE ptr_glTexRenderbufferNV #-}
ptr_glTexRenderbufferNV :: FunPtr (GLenum -> GLuint -> IO ())
ptr_glTexRenderbufferNV = unsafePerformIO $ getCommand "glTexRenderbufferNV"

-- glTexStorage1D --------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glTexStorage1D.xhtml OpenGL 4.x>
glTexStorage1D
  :: GLenum -- ^ @target@.
  -> GLsizei -- ^ @levels@.
  -> GLenum -- ^ @internalformat@.
  -> GLsizei -- ^ @width@.
  -> IO ()
glTexStorage1D = dyn_glTexStorage1D ptr_glTexStorage1D

foreign import CALLCONV "dynamic" dyn_glTexStorage1D
  :: FunPtr (GLenum -> GLsizei -> GLenum -> GLsizei -> IO ())
  ->         GLenum -> GLsizei -> GLenum -> GLsizei -> IO ()

{-# NOINLINE ptr_glTexStorage1D #-}
ptr_glTexStorage1D :: FunPtr (GLenum -> GLsizei -> GLenum -> GLsizei -> IO ())
ptr_glTexStorage1D = unsafePerformIO $ getCommand "glTexStorage1D"

-- glTexStorage1DEXT -----------------------------------------------------------

glTexStorage1DEXT
  :: GLenum -- ^ @target@.
  -> GLsizei -- ^ @levels@.
  -> GLenum -- ^ @internalformat@.
  -> GLsizei -- ^ @width@.
  -> IO ()
glTexStorage1DEXT = dyn_glTexStorage1DEXT ptr_glTexStorage1DEXT

foreign import CALLCONV "dynamic" dyn_glTexStorage1DEXT
  :: FunPtr (GLenum -> GLsizei -> GLenum -> GLsizei -> IO ())
  ->         GLenum -> GLsizei -> GLenum -> GLsizei -> IO ()

{-# NOINLINE ptr_glTexStorage1DEXT #-}
ptr_glTexStorage1DEXT :: FunPtr (GLenum -> GLsizei -> GLenum -> GLsizei -> IO ())
ptr_glTexStorage1DEXT = unsafePerformIO $ getCommand "glTexStorage1DEXT"

-- glTexStorage2D --------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glTexStorage2D.xhtml OpenGL 4.x>
glTexStorage2D
  :: GLenum -- ^ @target@.
  -> GLsizei -- ^ @levels@.
  -> GLenum -- ^ @internalformat@.
  -> GLsizei -- ^ @width@.
  -> GLsizei -- ^ @height@.
  -> IO ()
glTexStorage2D = dyn_glTexStorage2D ptr_glTexStorage2D

foreign import CALLCONV "dynamic" dyn_glTexStorage2D
  :: FunPtr (GLenum -> GLsizei -> GLenum -> GLsizei -> GLsizei -> IO ())
  ->         GLenum -> GLsizei -> GLenum -> GLsizei -> GLsizei -> IO ()

{-# NOINLINE ptr_glTexStorage2D #-}
ptr_glTexStorage2D :: FunPtr (GLenum -> GLsizei -> GLenum -> GLsizei -> GLsizei -> IO ())
ptr_glTexStorage2D = unsafePerformIO $ getCommand "glTexStorage2D"

-- glTexStorage2DEXT -----------------------------------------------------------

glTexStorage2DEXT
  :: GLenum -- ^ @target@.
  -> GLsizei -- ^ @levels@.
  -> GLenum -- ^ @internalformat@.
  -> GLsizei -- ^ @width@.
  -> GLsizei -- ^ @height@.
  -> IO ()
glTexStorage2DEXT = dyn_glTexStorage2DEXT ptr_glTexStorage2DEXT

foreign import CALLCONV "dynamic" dyn_glTexStorage2DEXT
  :: FunPtr (GLenum -> GLsizei -> GLenum -> GLsizei -> GLsizei -> IO ())
  ->         GLenum -> GLsizei -> GLenum -> GLsizei -> GLsizei -> IO ()

{-# NOINLINE ptr_glTexStorage2DEXT #-}
ptr_glTexStorage2DEXT :: FunPtr (GLenum -> GLsizei -> GLenum -> GLsizei -> GLsizei -> IO ())
ptr_glTexStorage2DEXT = unsafePerformIO $ getCommand "glTexStorage2DEXT"

-- glTexStorage2DMultisample ---------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glTexStorage2DMultisample.xhtml OpenGL 4.x>
glTexStorage2DMultisample
  :: GLenum -- ^ @target@.
  -> GLsizei -- ^ @samples@.
  -> GLenum -- ^ @internalformat@.
  -> GLsizei -- ^ @width@.
  -> GLsizei -- ^ @height@.
  -> GLboolean -- ^ @fixedsamplelocations@ of type @Boolean@.
  -> IO ()
glTexStorage2DMultisample = dyn_glTexStorage2DMultisample ptr_glTexStorage2DMultisample

foreign import CALLCONV "dynamic" dyn_glTexStorage2DMultisample
  :: FunPtr (GLenum -> GLsizei -> GLenum -> GLsizei -> GLsizei -> GLboolean -> IO ())
  ->         GLenum -> GLsizei -> GLenum -> GLsizei -> GLsizei -> GLboolean -> IO ()

{-# NOINLINE ptr_glTexStorage2DMultisample #-}
ptr_glTexStorage2DMultisample :: FunPtr (GLenum -> GLsizei -> GLenum -> GLsizei -> GLsizei -> GLboolean -> IO ())
ptr_glTexStorage2DMultisample = unsafePerformIO $ getCommand "glTexStorage2DMultisample"

-- glTexStorage3D --------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glTexStorage3D.xhtml OpenGL 4.x>
glTexStorage3D
  :: GLenum -- ^ @target@.
  -> GLsizei -- ^ @levels@.
  -> GLenum -- ^ @internalformat@.
  -> GLsizei -- ^ @width@.
  -> GLsizei -- ^ @height@.
  -> GLsizei -- ^ @depth@.
  -> IO ()
glTexStorage3D = dyn_glTexStorage3D ptr_glTexStorage3D

foreign import CALLCONV "dynamic" dyn_glTexStorage3D
  :: FunPtr (GLenum -> GLsizei -> GLenum -> GLsizei -> GLsizei -> GLsizei -> IO ())
  ->         GLenum -> GLsizei -> GLenum -> GLsizei -> GLsizei -> GLsizei -> IO ()

{-# NOINLINE ptr_glTexStorage3D #-}
ptr_glTexStorage3D :: FunPtr (GLenum -> GLsizei -> GLenum -> GLsizei -> GLsizei -> GLsizei -> IO ())
ptr_glTexStorage3D = unsafePerformIO $ getCommand "glTexStorage3D"

-- glTexStorage3DEXT -----------------------------------------------------------

glTexStorage3DEXT
  :: GLenum -- ^ @target@.
  -> GLsizei -- ^ @levels@.
  -> GLenum -- ^ @internalformat@.
  -> GLsizei -- ^ @width@.
  -> GLsizei -- ^ @height@.
  -> GLsizei -- ^ @depth@.
  -> IO ()
glTexStorage3DEXT = dyn_glTexStorage3DEXT ptr_glTexStorage3DEXT

foreign import CALLCONV "dynamic" dyn_glTexStorage3DEXT
  :: FunPtr (GLenum -> GLsizei -> GLenum -> GLsizei -> GLsizei -> GLsizei -> IO ())
  ->         GLenum -> GLsizei -> GLenum -> GLsizei -> GLsizei -> GLsizei -> IO ()

{-# NOINLINE ptr_glTexStorage3DEXT #-}
ptr_glTexStorage3DEXT :: FunPtr (GLenum -> GLsizei -> GLenum -> GLsizei -> GLsizei -> GLsizei -> IO ())
ptr_glTexStorage3DEXT = unsafePerformIO $ getCommand "glTexStorage3DEXT"

-- glTexStorage3DMultisample ---------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glTexStorage3DMultisample.xhtml OpenGL 4.x>
glTexStorage3DMultisample
  :: GLenum -- ^ @target@.
  -> GLsizei -- ^ @samples@.
  -> GLenum -- ^ @internalformat@.
  -> GLsizei -- ^ @width@.
  -> GLsizei -- ^ @height@.
  -> GLsizei -- ^ @depth@.
  -> GLboolean -- ^ @fixedsamplelocations@ of type @Boolean@.
  -> IO ()
glTexStorage3DMultisample = dyn_glTexStorage3DMultisample ptr_glTexStorage3DMultisample

foreign import CALLCONV "dynamic" dyn_glTexStorage3DMultisample
  :: FunPtr (GLenum -> GLsizei -> GLenum -> GLsizei -> GLsizei -> GLsizei -> GLboolean -> IO ())
  ->         GLenum -> GLsizei -> GLenum -> GLsizei -> GLsizei -> GLsizei -> GLboolean -> IO ()

{-# NOINLINE ptr_glTexStorage3DMultisample #-}
ptr_glTexStorage3DMultisample :: FunPtr (GLenum -> GLsizei -> GLenum -> GLsizei -> GLsizei -> GLsizei -> GLboolean -> IO ())
ptr_glTexStorage3DMultisample = unsafePerformIO $ getCommand "glTexStorage3DMultisample"

-- glTexStorage3DMultisampleOES ------------------------------------------------

glTexStorage3DMultisampleOES
  :: GLenum -- ^ @target@.
  -> GLsizei -- ^ @samples@.
  -> GLenum -- ^ @internalformat@.
  -> GLsizei -- ^ @width@.
  -> GLsizei -- ^ @height@.
  -> GLsizei -- ^ @depth@.
  -> GLboolean -- ^ @fixedsamplelocations@ of type @Boolean@.
  -> IO ()
glTexStorage3DMultisampleOES = dyn_glTexStorage3DMultisampleOES ptr_glTexStorage3DMultisampleOES

foreign import CALLCONV "dynamic" dyn_glTexStorage3DMultisampleOES
  :: FunPtr (GLenum -> GLsizei -> GLenum -> GLsizei -> GLsizei -> GLsizei -> GLboolean -> IO ())
  ->         GLenum -> GLsizei -> GLenum -> GLsizei -> GLsizei -> GLsizei -> GLboolean -> IO ()

{-# NOINLINE ptr_glTexStorage3DMultisampleOES #-}
ptr_glTexStorage3DMultisampleOES :: FunPtr (GLenum -> GLsizei -> GLenum -> GLsizei -> GLsizei -> GLsizei -> GLboolean -> IO ())
ptr_glTexStorage3DMultisampleOES = unsafePerformIO $ getCommand "glTexStorage3DMultisampleOES"

-- glTexStorageSparseAMD -------------------------------------------------------

glTexStorageSparseAMD
  :: GLenum -- ^ @target@.
  -> GLenum -- ^ @internalFormat@.
  -> GLsizei -- ^ @width@.
  -> GLsizei -- ^ @height@.
  -> GLsizei -- ^ @depth@.
  -> GLsizei -- ^ @layers@.
  -> GLbitfield -- ^ @flags@.
  -> IO ()
glTexStorageSparseAMD = dyn_glTexStorageSparseAMD ptr_glTexStorageSparseAMD

foreign import CALLCONV "dynamic" dyn_glTexStorageSparseAMD
  :: FunPtr (GLenum -> GLenum -> GLsizei -> GLsizei -> GLsizei -> GLsizei -> GLbitfield -> IO ())
  ->         GLenum -> GLenum -> GLsizei -> GLsizei -> GLsizei -> GLsizei -> GLbitfield -> IO ()

{-# NOINLINE ptr_glTexStorageSparseAMD #-}
ptr_glTexStorageSparseAMD :: FunPtr (GLenum -> GLenum -> GLsizei -> GLsizei -> GLsizei -> GLsizei -> GLbitfield -> IO ())
ptr_glTexStorageSparseAMD = unsafePerformIO $ getCommand "glTexStorageSparseAMD"

-- glTexSubImage1D -------------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glTexSubImage1D.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glTexSubImage1D.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glTexSubImage1D.xhtml OpenGL 4.x>
glTexSubImage1D
  :: GLenum -- ^ @target@ of type @TextureTarget@.
  -> GLint -- ^ @level@ of type @CheckedInt32@.
  -> GLint -- ^ @xoffset@ of type @CheckedInt32@.
  -> GLsizei -- ^ @width@.
  -> GLenum -- ^ @format@ of type @PixelFormat@.
  -> GLenum -- ^ @type@ of type @PixelType@.
  -> Ptr a -- ^ @pixels@ pointing to @COMPSIZE(format,type,width)@ elements of type @a@.
  -> IO ()
glTexSubImage1D = dyn_glTexSubImage1D ptr_glTexSubImage1D

foreign import CALLCONV "dynamic" dyn_glTexSubImage1D
  :: FunPtr (GLenum -> GLint -> GLint -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO ())
  ->         GLenum -> GLint -> GLint -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO ()

{-# NOINLINE ptr_glTexSubImage1D #-}
ptr_glTexSubImage1D :: FunPtr (GLenum -> GLint -> GLint -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO ())
ptr_glTexSubImage1D = unsafePerformIO $ getCommand "glTexSubImage1D"

-- glTexSubImage1DEXT ----------------------------------------------------------

glTexSubImage1DEXT
  :: GLenum -- ^ @target@ of type @TextureTarget@.
  -> GLint -- ^ @level@ of type @CheckedInt32@.
  -> GLint -- ^ @xoffset@ of type @CheckedInt32@.
  -> GLsizei -- ^ @width@.
  -> GLenum -- ^ @format@ of type @PixelFormat@.
  -> GLenum -- ^ @type@ of type @PixelType@.
  -> Ptr a -- ^ @pixels@ pointing to @COMPSIZE(format,type,width)@ elements of type @a@.
  -> IO ()
glTexSubImage1DEXT = dyn_glTexSubImage1DEXT ptr_glTexSubImage1DEXT

foreign import CALLCONV "dynamic" dyn_glTexSubImage1DEXT
  :: FunPtr (GLenum -> GLint -> GLint -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO ())
  ->         GLenum -> GLint -> GLint -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO ()

{-# NOINLINE ptr_glTexSubImage1DEXT #-}
ptr_glTexSubImage1DEXT :: FunPtr (GLenum -> GLint -> GLint -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO ())
ptr_glTexSubImage1DEXT = unsafePerformIO $ getCommand "glTexSubImage1DEXT"

-- glTexSubImage2D -------------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glTexSubImage2D.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glTexSubImage2D.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glTexSubImage2D.xhtml OpenGL 4.x>
glTexSubImage2D
  :: GLenum -- ^ @target@ of type @TextureTarget@.
  -> GLint -- ^ @level@ of type @CheckedInt32@.
  -> GLint -- ^ @xoffset@ of type @CheckedInt32@.
  -> GLint -- ^ @yoffset@ of type @CheckedInt32@.
  -> GLsizei -- ^ @width@.
  -> GLsizei -- ^ @height@.
  -> GLenum -- ^ @format@ of type @PixelFormat@.
  -> GLenum -- ^ @type@ of type @PixelType@.
  -> Ptr a -- ^ @pixels@ pointing to @COMPSIZE(format,type,width,height)@ elements of type @a@.
  -> IO ()
glTexSubImage2D = dyn_glTexSubImage2D ptr_glTexSubImage2D

foreign import CALLCONV "dynamic" dyn_glTexSubImage2D
  :: FunPtr (GLenum -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO ())
  ->         GLenum -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO ()

{-# NOINLINE ptr_glTexSubImage2D #-}
ptr_glTexSubImage2D :: FunPtr (GLenum -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO ())
ptr_glTexSubImage2D = unsafePerformIO $ getCommand "glTexSubImage2D"

-- glTexSubImage2DEXT ----------------------------------------------------------

glTexSubImage2DEXT
  :: GLenum -- ^ @target@ of type @TextureTarget@.
  -> GLint -- ^ @level@ of type @CheckedInt32@.
  -> GLint -- ^ @xoffset@ of type @CheckedInt32@.
  -> GLint -- ^ @yoffset@ of type @CheckedInt32@.
  -> GLsizei -- ^ @width@.
  -> GLsizei -- ^ @height@.
  -> GLenum -- ^ @format@ of type @PixelFormat@.
  -> GLenum -- ^ @type@ of type @PixelType@.
  -> Ptr a -- ^ @pixels@ pointing to @COMPSIZE(format,type,width,height)@ elements of type @a@.
  -> IO ()
glTexSubImage2DEXT = dyn_glTexSubImage2DEXT ptr_glTexSubImage2DEXT

foreign import CALLCONV "dynamic" dyn_glTexSubImage2DEXT
  :: FunPtr (GLenum -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO ())
  ->         GLenum -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO ()

{-# NOINLINE ptr_glTexSubImage2DEXT #-}
ptr_glTexSubImage2DEXT :: FunPtr (GLenum -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO ())
ptr_glTexSubImage2DEXT = unsafePerformIO $ getCommand "glTexSubImage2DEXT"

-- glTexSubImage3D -------------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glTexSubImage3D.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glTexSubImage3D.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glTexSubImage3D.xhtml OpenGL 4.x>
glTexSubImage3D
  :: GLenum -- ^ @target@ of type @TextureTarget@.
  -> GLint -- ^ @level@ of type @CheckedInt32@.
  -> GLint -- ^ @xoffset@ of type @CheckedInt32@.
  -> GLint -- ^ @yoffset@ of type @CheckedInt32@.
  -> GLint -- ^ @zoffset@ of type @CheckedInt32@.
  -> GLsizei -- ^ @width@.
  -> GLsizei -- ^ @height@.
  -> GLsizei -- ^ @depth@.
  -> GLenum -- ^ @format@ of type @PixelFormat@.
  -> GLenum -- ^ @type@ of type @PixelType@.
  -> Ptr a -- ^ @pixels@ pointing to @COMPSIZE(format,type,width,height,depth)@ elements of type @a@.
  -> IO ()
glTexSubImage3D = dyn_glTexSubImage3D ptr_glTexSubImage3D

foreign import CALLCONV "dynamic" dyn_glTexSubImage3D
  :: FunPtr (GLenum -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO ())
  ->         GLenum -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO ()

{-# NOINLINE ptr_glTexSubImage3D #-}
ptr_glTexSubImage3D :: FunPtr (GLenum -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO ())
ptr_glTexSubImage3D = unsafePerformIO $ getCommand "glTexSubImage3D"

-- glTexSubImage3DEXT ----------------------------------------------------------

glTexSubImage3DEXT
  :: GLenum -- ^ @target@ of type @TextureTarget@.
  -> GLint -- ^ @level@ of type @CheckedInt32@.
  -> GLint -- ^ @xoffset@ of type @CheckedInt32@.
  -> GLint -- ^ @yoffset@ of type @CheckedInt32@.
  -> GLint -- ^ @zoffset@ of type @CheckedInt32@.
  -> GLsizei -- ^ @width@.
  -> GLsizei -- ^ @height@.
  -> GLsizei -- ^ @depth@.
  -> GLenum -- ^ @format@ of type @PixelFormat@.
  -> GLenum -- ^ @type@ of type @PixelType@.
  -> Ptr a -- ^ @pixels@ pointing to @COMPSIZE(format,type,width,height,depth)@ elements of type @a@.
  -> IO ()
glTexSubImage3DEXT = dyn_glTexSubImage3DEXT ptr_glTexSubImage3DEXT

foreign import CALLCONV "dynamic" dyn_glTexSubImage3DEXT
  :: FunPtr (GLenum -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO ())
  ->         GLenum -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO ()

{-# NOINLINE ptr_glTexSubImage3DEXT #-}
ptr_glTexSubImage3DEXT :: FunPtr (GLenum -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO ())
ptr_glTexSubImage3DEXT = unsafePerformIO $ getCommand "glTexSubImage3DEXT"

-- glTexSubImage3DOES ----------------------------------------------------------

glTexSubImage3DOES
  :: GLenum -- ^ @target@.
  -> GLint -- ^ @level@.
  -> GLint -- ^ @xoffset@.
  -> GLint -- ^ @yoffset@.
  -> GLint -- ^ @zoffset@.
  -> GLsizei -- ^ @width@.
  -> GLsizei -- ^ @height@.
  -> GLsizei -- ^ @depth@.
  -> GLenum -- ^ @format@.
  -> GLenum -- ^ @type@.
  -> Ptr a -- ^ @pixels@ pointing to @COMPSIZE(format,type,width,height,depth)@ elements of type @a@.
  -> IO ()
glTexSubImage3DOES = dyn_glTexSubImage3DOES ptr_glTexSubImage3DOES

foreign import CALLCONV "dynamic" dyn_glTexSubImage3DOES
  :: FunPtr (GLenum -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO ())
  ->         GLenum -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO ()

{-# NOINLINE ptr_glTexSubImage3DOES #-}
ptr_glTexSubImage3DOES :: FunPtr (GLenum -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO ())
ptr_glTexSubImage3DOES = unsafePerformIO $ getCommand "glTexSubImage3DOES"

-- glTexSubImage4DSGIS ---------------------------------------------------------

glTexSubImage4DSGIS
  :: GLenum -- ^ @target@ of type @TextureTarget@.
  -> GLint -- ^ @level@ of type @CheckedInt32@.
  -> GLint -- ^ @xoffset@ of type @CheckedInt32@.
  -> GLint -- ^ @yoffset@ of type @CheckedInt32@.
  -> GLint -- ^ @zoffset@ of type @CheckedInt32@.
  -> GLint -- ^ @woffset@ of type @CheckedInt32@.
  -> GLsizei -- ^ @width@.
  -> GLsizei -- ^ @height@.
  -> GLsizei -- ^ @depth@.
  -> GLsizei -- ^ @size4d@.
  -> GLenum -- ^ @format@ of type @PixelFormat@.
  -> GLenum -- ^ @type@ of type @PixelType@.
  -> Ptr a -- ^ @pixels@ pointing to @COMPSIZE(format,type,width,height,depth,size4d)@ elements of type @a@.
  -> IO ()
glTexSubImage4DSGIS = dyn_glTexSubImage4DSGIS ptr_glTexSubImage4DSGIS

foreign import CALLCONV "dynamic" dyn_glTexSubImage4DSGIS
  :: FunPtr (GLenum -> GLint -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO ())
  ->         GLenum -> GLint -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO ()

{-# NOINLINE ptr_glTexSubImage4DSGIS #-}
ptr_glTexSubImage4DSGIS :: FunPtr (GLenum -> GLint -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO ())
ptr_glTexSubImage4DSGIS = unsafePerformIO $ getCommand "glTexSubImage4DSGIS"

-- glTextureBarrier ------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glTextureBarrier.xhtml OpenGL 4.x>
glTextureBarrier
  :: IO ()
glTextureBarrier = dyn_glTextureBarrier ptr_glTextureBarrier

foreign import CALLCONV "dynamic" dyn_glTextureBarrier
  :: FunPtr (IO ())
  ->         IO ()

{-# NOINLINE ptr_glTextureBarrier #-}
ptr_glTextureBarrier :: FunPtr (IO ())
ptr_glTextureBarrier = unsafePerformIO $ getCommand "glTextureBarrier"

-- glTextureBarrierNV ----------------------------------------------------------

glTextureBarrierNV
  :: IO ()
glTextureBarrierNV = dyn_glTextureBarrierNV ptr_glTextureBarrierNV

foreign import CALLCONV "dynamic" dyn_glTextureBarrierNV
  :: FunPtr (IO ())
  ->         IO ()

{-# NOINLINE ptr_glTextureBarrierNV #-}
ptr_glTextureBarrierNV :: FunPtr (IO ())
ptr_glTextureBarrierNV = unsafePerformIO $ getCommand "glTextureBarrierNV"

-- glTextureBuffer -------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glTexBuffer.xhtml OpenGL 4.x>
glTextureBuffer
  :: GLuint -- ^ @texture@.
  -> GLenum -- ^ @internalformat@.
  -> GLuint -- ^ @buffer@.
  -> IO ()
glTextureBuffer = dyn_glTextureBuffer ptr_glTextureBuffer

foreign import CALLCONV "dynamic" dyn_glTextureBuffer
  :: FunPtr (GLuint -> GLenum -> GLuint -> IO ())
  ->         GLuint -> GLenum -> GLuint -> IO ()

{-# NOINLINE ptr_glTextureBuffer #-}
ptr_glTextureBuffer :: FunPtr (GLuint -> GLenum -> GLuint -> IO ())
ptr_glTextureBuffer = unsafePerformIO $ getCommand "glTextureBuffer"

-- glTextureBufferEXT ----------------------------------------------------------

glTextureBufferEXT
  :: GLuint -- ^ @texture@ of type @Texture@.
  -> GLenum -- ^ @target@ of type @TextureTarget@.
  -> GLenum -- ^ @internalformat@ of type @TextureInternalFormat@.
  -> GLuint -- ^ @buffer@.
  -> IO ()
glTextureBufferEXT = dyn_glTextureBufferEXT ptr_glTextureBufferEXT

foreign import CALLCONV "dynamic" dyn_glTextureBufferEXT
  :: FunPtr (GLuint -> GLenum -> GLenum -> GLuint -> IO ())
  ->         GLuint -> GLenum -> GLenum -> GLuint -> IO ()

{-# NOINLINE ptr_glTextureBufferEXT #-}
ptr_glTextureBufferEXT :: FunPtr (GLuint -> GLenum -> GLenum -> GLuint -> IO ())
ptr_glTextureBufferEXT = unsafePerformIO $ getCommand "glTextureBufferEXT"

-- glTextureBufferRange --------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glTexBufferRange.xhtml OpenGL 4.x>
glTextureBufferRange
  :: GLuint -- ^ @texture@.
  -> GLenum -- ^ @internalformat@.
  -> GLuint -- ^ @buffer@.
  -> GLintptr -- ^ @offset@.
  -> GLsizeiptr -- ^ @size@ of type @BufferSize@.
  -> IO ()
glTextureBufferRange = dyn_glTextureBufferRange ptr_glTextureBufferRange

foreign import CALLCONV "dynamic" dyn_glTextureBufferRange
  :: FunPtr (GLuint -> GLenum -> GLuint -> GLintptr -> GLsizeiptr -> IO ())
  ->         GLuint -> GLenum -> GLuint -> GLintptr -> GLsizeiptr -> IO ()

{-# NOINLINE ptr_glTextureBufferRange #-}
ptr_glTextureBufferRange :: FunPtr (GLuint -> GLenum -> GLuint -> GLintptr -> GLsizeiptr -> IO ())
ptr_glTextureBufferRange = unsafePerformIO $ getCommand "glTextureBufferRange"

-- glTextureBufferRangeEXT -----------------------------------------------------

glTextureBufferRangeEXT
  :: GLuint -- ^ @texture@ of type @Texture@.
  -> GLenum -- ^ @target@ of type @TextureTarget@.
  -> GLenum -- ^ @internalformat@ of type @TextureInternalFormat@.
  -> GLuint -- ^ @buffer@.
  -> GLintptr -- ^ @offset@ of type @BufferOffset@.
  -> GLsizeiptr -- ^ @size@ of type @BufferSize@.
  -> IO ()
glTextureBufferRangeEXT = dyn_glTextureBufferRangeEXT ptr_glTextureBufferRangeEXT

foreign import CALLCONV "dynamic" dyn_glTextureBufferRangeEXT
  :: FunPtr (GLuint -> GLenum -> GLenum -> GLuint -> GLintptr -> GLsizeiptr -> IO ())
  ->         GLuint -> GLenum -> GLenum -> GLuint -> GLintptr -> GLsizeiptr -> IO ()

{-# NOINLINE ptr_glTextureBufferRangeEXT #-}
ptr_glTextureBufferRangeEXT :: FunPtr (GLuint -> GLenum -> GLenum -> GLuint -> GLintptr -> GLsizeiptr -> IO ())
ptr_glTextureBufferRangeEXT = unsafePerformIO $ getCommand "glTextureBufferRangeEXT"

-- glTextureColorMaskSGIS ------------------------------------------------------

glTextureColorMaskSGIS
  :: GLboolean -- ^ @red@ of type @Boolean@.
  -> GLboolean -- ^ @green@ of type @Boolean@.
  -> GLboolean -- ^ @blue@ of type @Boolean@.
  -> GLboolean -- ^ @alpha@ of type @Boolean@.
  -> IO ()
glTextureColorMaskSGIS = dyn_glTextureColorMaskSGIS ptr_glTextureColorMaskSGIS

foreign import CALLCONV "dynamic" dyn_glTextureColorMaskSGIS
  :: FunPtr (GLboolean -> GLboolean -> GLboolean -> GLboolean -> IO ())
  ->         GLboolean -> GLboolean -> GLboolean -> GLboolean -> IO ()

{-# NOINLINE ptr_glTextureColorMaskSGIS #-}
ptr_glTextureColorMaskSGIS :: FunPtr (GLboolean -> GLboolean -> GLboolean -> GLboolean -> IO ())
ptr_glTextureColorMaskSGIS = unsafePerformIO $ getCommand "glTextureColorMaskSGIS"

-- glTextureImage1DEXT ---------------------------------------------------------

glTextureImage1DEXT
  :: GLuint -- ^ @texture@ of type @Texture@.
  -> GLenum -- ^ @target@ of type @TextureTarget@.
  -> GLint -- ^ @level@ of type @CheckedInt32@.
  -> GLint -- ^ @internalformat@ of type @TextureComponentCount@.
  -> GLsizei -- ^ @width@.
  -> GLint -- ^ @border@ of type @CheckedInt32@.
  -> GLenum -- ^ @format@ of type @PixelFormat@.
  -> GLenum -- ^ @type@ of type @PixelType@.
  -> Ptr a -- ^ @pixels@ pointing to @COMPSIZE(format,type,width)@ elements of type @a@.
  -> IO ()
glTextureImage1DEXT = dyn_glTextureImage1DEXT ptr_glTextureImage1DEXT

foreign import CALLCONV "dynamic" dyn_glTextureImage1DEXT
  :: FunPtr (GLuint -> GLenum -> GLint -> GLint -> GLsizei -> GLint -> GLenum -> GLenum -> Ptr a -> IO ())
  ->         GLuint -> GLenum -> GLint -> GLint -> GLsizei -> GLint -> GLenum -> GLenum -> Ptr a -> IO ()

{-# NOINLINE ptr_glTextureImage1DEXT #-}
ptr_glTextureImage1DEXT :: FunPtr (GLuint -> GLenum -> GLint -> GLint -> GLsizei -> GLint -> GLenum -> GLenum -> Ptr a -> IO ())
ptr_glTextureImage1DEXT = unsafePerformIO $ getCommand "glTextureImage1DEXT"

-- glTextureImage2DEXT ---------------------------------------------------------

glTextureImage2DEXT
  :: GLuint -- ^ @texture@ of type @Texture@.
  -> GLenum -- ^ @target@ of type @TextureTarget@.
  -> GLint -- ^ @level@ of type @CheckedInt32@.
  -> GLint -- ^ @internalformat@ of type @TextureComponentCount@.
  -> GLsizei -- ^ @width@.
  -> GLsizei -- ^ @height@.
  -> GLint -- ^ @border@ of type @CheckedInt32@.
  -> GLenum -- ^ @format@ of type @PixelFormat@.
  -> GLenum -- ^ @type@ of type @PixelType@.
  -> Ptr a -- ^ @pixels@ pointing to @COMPSIZE(format,type,width,height)@ elements of type @a@.
  -> IO ()
glTextureImage2DEXT = dyn_glTextureImage2DEXT ptr_glTextureImage2DEXT

foreign import CALLCONV "dynamic" dyn_glTextureImage2DEXT
  :: FunPtr (GLuint -> GLenum -> GLint -> GLint -> GLsizei -> GLsizei -> GLint -> GLenum -> GLenum -> Ptr a -> IO ())
  ->         GLuint -> GLenum -> GLint -> GLint -> GLsizei -> GLsizei -> GLint -> GLenum -> GLenum -> Ptr a -> IO ()

{-# NOINLINE ptr_glTextureImage2DEXT #-}
ptr_glTextureImage2DEXT :: FunPtr (GLuint -> GLenum -> GLint -> GLint -> GLsizei -> GLsizei -> GLint -> GLenum -> GLenum -> Ptr a -> IO ())
ptr_glTextureImage2DEXT = unsafePerformIO $ getCommand "glTextureImage2DEXT"

-- glTextureImage2DMultisampleCoverageNV ---------------------------------------

glTextureImage2DMultisampleCoverageNV
  :: GLuint -- ^ @texture@.
  -> GLenum -- ^ @target@.
  -> GLsizei -- ^ @coverageSamples@.
  -> GLsizei -- ^ @colorSamples@.
  -> GLint -- ^ @internalFormat@.
  -> GLsizei -- ^ @width@.
  -> GLsizei -- ^ @height@.
  -> GLboolean -- ^ @fixedSampleLocations@ of type @Boolean@.
  -> IO ()
glTextureImage2DMultisampleCoverageNV = dyn_glTextureImage2DMultisampleCoverageNV ptr_glTextureImage2DMultisampleCoverageNV

foreign import CALLCONV "dynamic" dyn_glTextureImage2DMultisampleCoverageNV
  :: FunPtr (GLuint -> GLenum -> GLsizei -> GLsizei -> GLint -> GLsizei -> GLsizei -> GLboolean -> IO ())
  ->         GLuint -> GLenum -> GLsizei -> GLsizei -> GLint -> GLsizei -> GLsizei -> GLboolean -> IO ()

{-# NOINLINE ptr_glTextureImage2DMultisampleCoverageNV #-}
ptr_glTextureImage2DMultisampleCoverageNV :: FunPtr (GLuint -> GLenum -> GLsizei -> GLsizei -> GLint -> GLsizei -> GLsizei -> GLboolean -> IO ())
ptr_glTextureImage2DMultisampleCoverageNV = unsafePerformIO $ getCommand "glTextureImage2DMultisampleCoverageNV"

-- glTextureImage2DMultisampleNV -----------------------------------------------

glTextureImage2DMultisampleNV
  :: GLuint -- ^ @texture@.
  -> GLenum -- ^ @target@.
  -> GLsizei -- ^ @samples@.
  -> GLint -- ^ @internalFormat@.
  -> GLsizei -- ^ @width@.
  -> GLsizei -- ^ @height@.
  -> GLboolean -- ^ @fixedSampleLocations@ of type @Boolean@.
  -> IO ()
glTextureImage2DMultisampleNV = dyn_glTextureImage2DMultisampleNV ptr_glTextureImage2DMultisampleNV

foreign import CALLCONV "dynamic" dyn_glTextureImage2DMultisampleNV
  :: FunPtr (GLuint -> GLenum -> GLsizei -> GLint -> GLsizei -> GLsizei -> GLboolean -> IO ())
  ->         GLuint -> GLenum -> GLsizei -> GLint -> GLsizei -> GLsizei -> GLboolean -> IO ()

{-# NOINLINE ptr_glTextureImage2DMultisampleNV #-}
ptr_glTextureImage2DMultisampleNV :: FunPtr (GLuint -> GLenum -> GLsizei -> GLint -> GLsizei -> GLsizei -> GLboolean -> IO ())
ptr_glTextureImage2DMultisampleNV = unsafePerformIO $ getCommand "glTextureImage2DMultisampleNV"

-- glTextureImage3DEXT ---------------------------------------------------------

glTextureImage3DEXT
  :: GLuint -- ^ @texture@ of type @Texture@.
  -> GLenum -- ^ @target@ of type @TextureTarget@.
  -> GLint -- ^ @level@ of type @CheckedInt32@.
  -> GLint -- ^ @internalformat@ of type @TextureComponentCount@.
  -> GLsizei -- ^ @width@.
  -> GLsizei -- ^ @height@.
  -> GLsizei -- ^ @depth@.
  -> GLint -- ^ @border@ of type @CheckedInt32@.
  -> GLenum -- ^ @format@ of type @PixelFormat@.
  -> GLenum -- ^ @type@ of type @PixelType@.
  -> Ptr a -- ^ @pixels@ pointing to @COMPSIZE(format,type,width,height,depth)@ elements of type @a@.
  -> IO ()
glTextureImage3DEXT = dyn_glTextureImage3DEXT ptr_glTextureImage3DEXT

foreign import CALLCONV "dynamic" dyn_glTextureImage3DEXT
  :: FunPtr (GLuint -> GLenum -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLint -> GLenum -> GLenum -> Ptr a -> IO ())
  ->         GLuint -> GLenum -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLint -> GLenum -> GLenum -> Ptr a -> IO ()

{-# NOINLINE ptr_glTextureImage3DEXT #-}
ptr_glTextureImage3DEXT :: FunPtr (GLuint -> GLenum -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLint -> GLenum -> GLenum -> Ptr a -> IO ())
ptr_glTextureImage3DEXT = unsafePerformIO $ getCommand "glTextureImage3DEXT"

-- glTextureImage3DMultisampleCoverageNV ---------------------------------------

glTextureImage3DMultisampleCoverageNV
  :: GLuint -- ^ @texture@.
  -> GLenum -- ^ @target@.
  -> GLsizei -- ^ @coverageSamples@.
  -> GLsizei -- ^ @colorSamples@.
  -> GLint -- ^ @internalFormat@.
  -> GLsizei -- ^ @width@.
  -> GLsizei -- ^ @height@.
  -> GLsizei -- ^ @depth@.
  -> GLboolean -- ^ @fixedSampleLocations@ of type @Boolean@.
  -> IO ()
glTextureImage3DMultisampleCoverageNV = dyn_glTextureImage3DMultisampleCoverageNV ptr_glTextureImage3DMultisampleCoverageNV

foreign import CALLCONV "dynamic" dyn_glTextureImage3DMultisampleCoverageNV
  :: FunPtr (GLuint -> GLenum -> GLsizei -> GLsizei -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLboolean -> IO ())
  ->         GLuint -> GLenum -> GLsizei -> GLsizei -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLboolean -> IO ()

{-# NOINLINE ptr_glTextureImage3DMultisampleCoverageNV #-}
ptr_glTextureImage3DMultisampleCoverageNV :: FunPtr (GLuint -> GLenum -> GLsizei -> GLsizei -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLboolean -> IO ())
ptr_glTextureImage3DMultisampleCoverageNV = unsafePerformIO $ getCommand "glTextureImage3DMultisampleCoverageNV"

-- glTextureImage3DMultisampleNV -----------------------------------------------

glTextureImage3DMultisampleNV
  :: GLuint -- ^ @texture@.
  -> GLenum -- ^ @target@.
  -> GLsizei -- ^ @samples@.
  -> GLint -- ^ @internalFormat@.
  -> GLsizei -- ^ @width@.
  -> GLsizei -- ^ @height@.
  -> GLsizei -- ^ @depth@.
  -> GLboolean -- ^ @fixedSampleLocations@ of type @Boolean@.
  -> IO ()
glTextureImage3DMultisampleNV = dyn_glTextureImage3DMultisampleNV ptr_glTextureImage3DMultisampleNV

foreign import CALLCONV "dynamic" dyn_glTextureImage3DMultisampleNV
  :: FunPtr (GLuint -> GLenum -> GLsizei -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLboolean -> IO ())
  ->         GLuint -> GLenum -> GLsizei -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLboolean -> IO ()

{-# NOINLINE ptr_glTextureImage3DMultisampleNV #-}
ptr_glTextureImage3DMultisampleNV :: FunPtr (GLuint -> GLenum -> GLsizei -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLboolean -> IO ())
ptr_glTextureImage3DMultisampleNV = unsafePerformIO $ getCommand "glTextureImage3DMultisampleNV"

-- glTextureLightEXT -----------------------------------------------------------

glTextureLightEXT
  :: GLenum -- ^ @pname@ of type @LightTexturePNameEXT@.
  -> IO ()
glTextureLightEXT = dyn_glTextureLightEXT ptr_glTextureLightEXT

foreign import CALLCONV "dynamic" dyn_glTextureLightEXT
  :: FunPtr (GLenum -> IO ())
  ->         GLenum -> IO ()

{-# NOINLINE ptr_glTextureLightEXT #-}
ptr_glTextureLightEXT :: FunPtr (GLenum -> IO ())
ptr_glTextureLightEXT = unsafePerformIO $ getCommand "glTextureLightEXT"

-- glTextureMaterialEXT --------------------------------------------------------

glTextureMaterialEXT
  :: GLenum -- ^ @face@ of type @MaterialFace@.
  -> GLenum -- ^ @mode@ of type @MaterialParameter@.
  -> IO ()
glTextureMaterialEXT = dyn_glTextureMaterialEXT ptr_glTextureMaterialEXT

foreign import CALLCONV "dynamic" dyn_glTextureMaterialEXT
  :: FunPtr (GLenum -> GLenum -> IO ())
  ->         GLenum -> GLenum -> IO ()

{-# NOINLINE ptr_glTextureMaterialEXT #-}
ptr_glTextureMaterialEXT :: FunPtr (GLenum -> GLenum -> IO ())
ptr_glTextureMaterialEXT = unsafePerformIO $ getCommand "glTextureMaterialEXT"

-- glTextureNormalEXT ----------------------------------------------------------

glTextureNormalEXT
  :: GLenum -- ^ @mode@ of type @TextureNormalModeEXT@.
  -> IO ()
glTextureNormalEXT = dyn_glTextureNormalEXT ptr_glTextureNormalEXT

foreign import CALLCONV "dynamic" dyn_glTextureNormalEXT
  :: FunPtr (GLenum -> IO ())
  ->         GLenum -> IO ()

{-# NOINLINE ptr_glTextureNormalEXT #-}
ptr_glTextureNormalEXT :: FunPtr (GLenum -> IO ())
ptr_glTextureNormalEXT = unsafePerformIO $ getCommand "glTextureNormalEXT"

-- glTexturePageCommitmentEXT --------------------------------------------------

glTexturePageCommitmentEXT
  :: GLuint -- ^ @texture@.
  -> GLint -- ^ @level@.
  -> GLint -- ^ @xoffset@.
  -> GLint -- ^ @yoffset@.
  -> GLint -- ^ @zoffset@.
  -> GLsizei -- ^ @width@.
  -> GLsizei -- ^ @height@.
  -> GLsizei -- ^ @depth@.
  -> GLboolean -- ^ @resident@.
  -> IO ()
glTexturePageCommitmentEXT = dyn_glTexturePageCommitmentEXT ptr_glTexturePageCommitmentEXT

foreign import CALLCONV "dynamic" dyn_glTexturePageCommitmentEXT
  :: FunPtr (GLuint -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLboolean -> IO ())
  ->         GLuint -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLboolean -> IO ()

{-# NOINLINE ptr_glTexturePageCommitmentEXT #-}
ptr_glTexturePageCommitmentEXT :: FunPtr (GLuint -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLboolean -> IO ())
ptr_glTexturePageCommitmentEXT = unsafePerformIO $ getCommand "glTexturePageCommitmentEXT"

-- glTextureParameterIiv -------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glTexParameter.xhtml OpenGL 4.x>
glTextureParameterIiv
  :: GLuint -- ^ @texture@.
  -> GLenum -- ^ @pname@.
  -> Ptr GLint -- ^ @params@.
  -> IO ()
glTextureParameterIiv = dyn_glTextureParameterIiv ptr_glTextureParameterIiv

foreign import CALLCONV "dynamic" dyn_glTextureParameterIiv
  :: FunPtr (GLuint -> GLenum -> Ptr GLint -> IO ())
  ->         GLuint -> GLenum -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glTextureParameterIiv #-}
ptr_glTextureParameterIiv :: FunPtr (GLuint -> GLenum -> Ptr GLint -> IO ())
ptr_glTextureParameterIiv = unsafePerformIO $ getCommand "glTextureParameterIiv"

-- glTextureParameterIivEXT ----------------------------------------------------

glTextureParameterIivEXT
  :: GLuint -- ^ @texture@ of type @Texture@.
  -> GLenum -- ^ @target@ of type @TextureTarget@.
  -> GLenum -- ^ @pname@ of type @TextureParameterName@.
  -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @CheckedInt32@.
  -> IO ()
glTextureParameterIivEXT = dyn_glTextureParameterIivEXT ptr_glTextureParameterIivEXT

foreign import CALLCONV "dynamic" dyn_glTextureParameterIivEXT
  :: FunPtr (GLuint -> GLenum -> GLenum -> Ptr GLint -> IO ())
  ->         GLuint -> GLenum -> GLenum -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glTextureParameterIivEXT #-}
ptr_glTextureParameterIivEXT :: FunPtr (GLuint -> GLenum -> GLenum -> Ptr GLint -> IO ())
ptr_glTextureParameterIivEXT = unsafePerformIO $ getCommand "glTextureParameterIivEXT"

-- glTextureParameterIuiv ------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glTexParameter.xhtml OpenGL 4.x>
glTextureParameterIuiv
  :: GLuint -- ^ @texture@.
  -> GLenum -- ^ @pname@.
  -> Ptr GLuint -- ^ @params@.
  -> IO ()
glTextureParameterIuiv = dyn_glTextureParameterIuiv ptr_glTextureParameterIuiv

foreign import CALLCONV "dynamic" dyn_glTextureParameterIuiv
  :: FunPtr (GLuint -> GLenum -> Ptr GLuint -> IO ())
  ->         GLuint -> GLenum -> Ptr GLuint -> IO ()

{-# NOINLINE ptr_glTextureParameterIuiv #-}
ptr_glTextureParameterIuiv :: FunPtr (GLuint -> GLenum -> Ptr GLuint -> IO ())
ptr_glTextureParameterIuiv = unsafePerformIO $ getCommand "glTextureParameterIuiv"

-- glTextureParameterIuivEXT ---------------------------------------------------

glTextureParameterIuivEXT
  :: GLuint -- ^ @texture@ of type @Texture@.
  -> GLenum -- ^ @target@ of type @TextureTarget@.
  -> GLenum -- ^ @pname@ of type @TextureParameterName@.
  -> Ptr GLuint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLuint@.
  -> IO ()
glTextureParameterIuivEXT = dyn_glTextureParameterIuivEXT ptr_glTextureParameterIuivEXT

foreign import CALLCONV "dynamic" dyn_glTextureParameterIuivEXT
  :: FunPtr (GLuint -> GLenum -> GLenum -> Ptr GLuint -> IO ())
  ->         GLuint -> GLenum -> GLenum -> Ptr GLuint -> IO ()

{-# NOINLINE ptr_glTextureParameterIuivEXT #-}
ptr_glTextureParameterIuivEXT :: FunPtr (GLuint -> GLenum -> GLenum -> Ptr GLuint -> IO ())
ptr_glTextureParameterIuivEXT = unsafePerformIO $ getCommand "glTextureParameterIuivEXT"

-- glTextureParameterf ---------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glTexParameter.xhtml OpenGL 4.x>
glTextureParameterf
  :: GLuint -- ^ @texture@.
  -> GLenum -- ^ @pname@.
  -> GLfloat -- ^ @param@.
  -> IO ()
glTextureParameterf = dyn_glTextureParameterf ptr_glTextureParameterf

foreign import CALLCONV "dynamic" dyn_glTextureParameterf
  :: FunPtr (GLuint -> GLenum -> GLfloat -> IO ())
  ->         GLuint -> GLenum -> GLfloat -> IO ()

{-# NOINLINE ptr_glTextureParameterf #-}
ptr_glTextureParameterf :: FunPtr (GLuint -> GLenum -> GLfloat -> IO ())
ptr_glTextureParameterf = unsafePerformIO $ getCommand "glTextureParameterf"

-- glTextureParameterfEXT ------------------------------------------------------

glTextureParameterfEXT
  :: GLuint -- ^ @texture@ of type @Texture@.
  -> GLenum -- ^ @target@ of type @TextureTarget@.
  -> GLenum -- ^ @pname@ of type @TextureParameterName@.
  -> GLfloat -- ^ @param@ of type @CheckedFloat32@.
  -> IO ()
glTextureParameterfEXT = dyn_glTextureParameterfEXT ptr_glTextureParameterfEXT

foreign import CALLCONV "dynamic" dyn_glTextureParameterfEXT
  :: FunPtr (GLuint -> GLenum -> GLenum -> GLfloat -> IO ())
  ->         GLuint -> GLenum -> GLenum -> GLfloat -> IO ()

{-# NOINLINE ptr_glTextureParameterfEXT #-}
ptr_glTextureParameterfEXT :: FunPtr (GLuint -> GLenum -> GLenum -> GLfloat -> IO ())
ptr_glTextureParameterfEXT = unsafePerformIO $ getCommand "glTextureParameterfEXT"

-- glTextureParameterfv --------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glTexParameter.xhtml OpenGL 4.x>
glTextureParameterfv
  :: GLuint -- ^ @texture@.
  -> GLenum -- ^ @pname@.
  -> Ptr GLfloat -- ^ @param@.
  -> IO ()
glTextureParameterfv = dyn_glTextureParameterfv ptr_glTextureParameterfv

foreign import CALLCONV "dynamic" dyn_glTextureParameterfv
  :: FunPtr (GLuint -> GLenum -> Ptr GLfloat -> IO ())
  ->         GLuint -> GLenum -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glTextureParameterfv #-}
ptr_glTextureParameterfv :: FunPtr (GLuint -> GLenum -> Ptr GLfloat -> IO ())
ptr_glTextureParameterfv = unsafePerformIO $ getCommand "glTextureParameterfv"

-- glTextureParameterfvEXT -----------------------------------------------------

glTextureParameterfvEXT
  :: GLuint -- ^ @texture@ of type @Texture@.
  -> GLenum -- ^ @target@ of type @TextureTarget@.
  -> GLenum -- ^ @pname@ of type @TextureParameterName@.
  -> Ptr GLfloat -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @CheckedFloat32@.
  -> IO ()
glTextureParameterfvEXT = dyn_glTextureParameterfvEXT ptr_glTextureParameterfvEXT

foreign import CALLCONV "dynamic" dyn_glTextureParameterfvEXT
  :: FunPtr (GLuint -> GLenum -> GLenum -> Ptr GLfloat -> IO ())
  ->         GLuint -> GLenum -> GLenum -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glTextureParameterfvEXT #-}
ptr_glTextureParameterfvEXT :: FunPtr (GLuint -> GLenum -> GLenum -> Ptr GLfloat -> IO ())
ptr_glTextureParameterfvEXT = unsafePerformIO $ getCommand "glTextureParameterfvEXT"

-- glTextureParameteri ---------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glTexParameter.xhtml OpenGL 4.x>
glTextureParameteri
  :: GLuint -- ^ @texture@.
  -> GLenum -- ^ @pname@.
  -> GLint -- ^ @param@.
  -> IO ()
glTextureParameteri = dyn_glTextureParameteri ptr_glTextureParameteri

foreign import CALLCONV "dynamic" dyn_glTextureParameteri
  :: FunPtr (GLuint -> GLenum -> GLint -> IO ())
  ->         GLuint -> GLenum -> GLint -> IO ()

{-# NOINLINE ptr_glTextureParameteri #-}
ptr_glTextureParameteri :: FunPtr (GLuint -> GLenum -> GLint -> IO ())
ptr_glTextureParameteri = unsafePerformIO $ getCommand "glTextureParameteri"

-- glTextureParameteriEXT ------------------------------------------------------

glTextureParameteriEXT
  :: GLuint -- ^ @texture@ of type @Texture@.
  -> GLenum -- ^ @target@ of type @TextureTarget@.
  -> GLenum -- ^ @pname@ of type @TextureParameterName@.
  -> GLint -- ^ @param@ of type @CheckedInt32@.
  -> IO ()
glTextureParameteriEXT = dyn_glTextureParameteriEXT ptr_glTextureParameteriEXT

foreign import CALLCONV "dynamic" dyn_glTextureParameteriEXT
  :: FunPtr (GLuint -> GLenum -> GLenum -> GLint -> IO ())
  ->         GLuint -> GLenum -> GLenum -> GLint -> IO ()

{-# NOINLINE ptr_glTextureParameteriEXT #-}
ptr_glTextureParameteriEXT :: FunPtr (GLuint -> GLenum -> GLenum -> GLint -> IO ())
ptr_glTextureParameteriEXT = unsafePerformIO $ getCommand "glTextureParameteriEXT"

-- glTextureParameteriv --------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glTexParameter.xhtml OpenGL 4.x>
glTextureParameteriv
  :: GLuint -- ^ @texture@.
  -> GLenum -- ^ @pname@.
  -> Ptr GLint -- ^ @param@.
  -> IO ()
glTextureParameteriv = dyn_glTextureParameteriv ptr_glTextureParameteriv

foreign import CALLCONV "dynamic" dyn_glTextureParameteriv
  :: FunPtr (GLuint -> GLenum -> Ptr GLint -> IO ())
  ->         GLuint -> GLenum -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glTextureParameteriv #-}
ptr_glTextureParameteriv :: FunPtr (GLuint -> GLenum -> Ptr GLint -> IO ())
ptr_glTextureParameteriv = unsafePerformIO $ getCommand "glTextureParameteriv"

-- glTextureParameterivEXT -----------------------------------------------------

glTextureParameterivEXT
  :: GLuint -- ^ @texture@ of type @Texture@.
  -> GLenum -- ^ @target@ of type @TextureTarget@.
  -> GLenum -- ^ @pname@ of type @TextureParameterName@.
  -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @CheckedInt32@.
  -> IO ()
glTextureParameterivEXT = dyn_glTextureParameterivEXT ptr_glTextureParameterivEXT

foreign import CALLCONV "dynamic" dyn_glTextureParameterivEXT
  :: FunPtr (GLuint -> GLenum -> GLenum -> Ptr GLint -> IO ())
  ->         GLuint -> GLenum -> GLenum -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glTextureParameterivEXT #-}
ptr_glTextureParameterivEXT :: FunPtr (GLuint -> GLenum -> GLenum -> Ptr GLint -> IO ())
ptr_glTextureParameterivEXT = unsafePerformIO $ getCommand "glTextureParameterivEXT"

-- glTextureRangeAPPLE ---------------------------------------------------------

glTextureRangeAPPLE
  :: GLenum -- ^ @target@.
  -> GLsizei -- ^ @length@.
  -> Ptr a -- ^ @pointer@ pointing to @length@ elements of type @a@.
  -> IO ()
glTextureRangeAPPLE = dyn_glTextureRangeAPPLE ptr_glTextureRangeAPPLE

foreign import CALLCONV "dynamic" dyn_glTextureRangeAPPLE
  :: FunPtr (GLenum -> GLsizei -> Ptr a -> IO ())
  ->         GLenum -> GLsizei -> Ptr a -> IO ()

{-# NOINLINE ptr_glTextureRangeAPPLE #-}
ptr_glTextureRangeAPPLE :: FunPtr (GLenum -> GLsizei -> Ptr a -> IO ())
ptr_glTextureRangeAPPLE = unsafePerformIO $ getCommand "glTextureRangeAPPLE"

-- glTextureRenderbufferEXT ----------------------------------------------------

glTextureRenderbufferEXT
  :: GLuint -- ^ @texture@ of type @Texture@.
  -> GLenum -- ^ @target@ of type @TextureTarget@.
  -> GLuint -- ^ @renderbuffer@.
  -> IO ()
glTextureRenderbufferEXT = dyn_glTextureRenderbufferEXT ptr_glTextureRenderbufferEXT

foreign import CALLCONV "dynamic" dyn_glTextureRenderbufferEXT
  :: FunPtr (GLuint -> GLenum -> GLuint -> IO ())
  ->         GLuint -> GLenum -> GLuint -> IO ()

{-# NOINLINE ptr_glTextureRenderbufferEXT #-}
ptr_glTextureRenderbufferEXT :: FunPtr (GLuint -> GLenum -> GLuint -> IO ())
ptr_glTextureRenderbufferEXT = unsafePerformIO $ getCommand "glTextureRenderbufferEXT"

-- glTextureStorage1D ----------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glTexStorage1D.xhtml OpenGL 4.x>
glTextureStorage1D
  :: GLuint -- ^ @texture@.
  -> GLsizei -- ^ @levels@.
  -> GLenum -- ^ @internalformat@.
  -> GLsizei -- ^ @width@.
  -> IO ()
glTextureStorage1D = dyn_glTextureStorage1D ptr_glTextureStorage1D

foreign import CALLCONV "dynamic" dyn_glTextureStorage1D
  :: FunPtr (GLuint -> GLsizei -> GLenum -> GLsizei -> IO ())
  ->         GLuint -> GLsizei -> GLenum -> GLsizei -> IO ()

{-# NOINLINE ptr_glTextureStorage1D #-}
ptr_glTextureStorage1D :: FunPtr (GLuint -> GLsizei -> GLenum -> GLsizei -> IO ())
ptr_glTextureStorage1D = unsafePerformIO $ getCommand "glTextureStorage1D"

-- glTextureStorage1DEXT -------------------------------------------------------

glTextureStorage1DEXT
  :: GLuint -- ^ @texture@.
  -> GLenum -- ^ @target@.
  -> GLsizei -- ^ @levels@.
  -> GLenum -- ^ @internalformat@.
  -> GLsizei -- ^ @width@.
  -> IO ()
glTextureStorage1DEXT = dyn_glTextureStorage1DEXT ptr_glTextureStorage1DEXT

foreign import CALLCONV "dynamic" dyn_glTextureStorage1DEXT
  :: FunPtr (GLuint -> GLenum -> GLsizei -> GLenum -> GLsizei -> IO ())
  ->         GLuint -> GLenum -> GLsizei -> GLenum -> GLsizei -> IO ()

{-# NOINLINE ptr_glTextureStorage1DEXT #-}
ptr_glTextureStorage1DEXT :: FunPtr (GLuint -> GLenum -> GLsizei -> GLenum -> GLsizei -> IO ())
ptr_glTextureStorage1DEXT = unsafePerformIO $ getCommand "glTextureStorage1DEXT"

-- glTextureStorage2D ----------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glTexStorage2D.xhtml OpenGL 4.x>
glTextureStorage2D
  :: GLuint -- ^ @texture@.
  -> GLsizei -- ^ @levels@.
  -> GLenum -- ^ @internalformat@.
  -> GLsizei -- ^ @width@.
  -> GLsizei -- ^ @height@.
  -> IO ()
glTextureStorage2D = dyn_glTextureStorage2D ptr_glTextureStorage2D

foreign import CALLCONV "dynamic" dyn_glTextureStorage2D
  :: FunPtr (GLuint -> GLsizei -> GLenum -> GLsizei -> GLsizei -> IO ())
  ->         GLuint -> GLsizei -> GLenum -> GLsizei -> GLsizei -> IO ()

{-# NOINLINE ptr_glTextureStorage2D #-}
ptr_glTextureStorage2D :: FunPtr (GLuint -> GLsizei -> GLenum -> GLsizei -> GLsizei -> IO ())
ptr_glTextureStorage2D = unsafePerformIO $ getCommand "glTextureStorage2D"

-- glTextureStorage2DEXT -------------------------------------------------------

glTextureStorage2DEXT
  :: GLuint -- ^ @texture@.
  -> GLenum -- ^ @target@.
  -> GLsizei -- ^ @levels@.
  -> GLenum -- ^ @internalformat@.
  -> GLsizei -- ^ @width@.
  -> GLsizei -- ^ @height@.
  -> IO ()
glTextureStorage2DEXT = dyn_glTextureStorage2DEXT ptr_glTextureStorage2DEXT

foreign import CALLCONV "dynamic" dyn_glTextureStorage2DEXT
  :: FunPtr (GLuint -> GLenum -> GLsizei -> GLenum -> GLsizei -> GLsizei -> IO ())
  ->         GLuint -> GLenum -> GLsizei -> GLenum -> GLsizei -> GLsizei -> IO ()

{-# NOINLINE ptr_glTextureStorage2DEXT #-}
ptr_glTextureStorage2DEXT :: FunPtr (GLuint -> GLenum -> GLsizei -> GLenum -> GLsizei -> GLsizei -> IO ())
ptr_glTextureStorage2DEXT = unsafePerformIO $ getCommand "glTextureStorage2DEXT"

-- glTextureStorage2DMultisample -----------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glTexStorage2DMultisample.xhtml OpenGL 4.x>
glTextureStorage2DMultisample
  :: GLuint -- ^ @texture@.
  -> GLsizei -- ^ @samples@.
  -> GLenum -- ^ @internalformat@.
  -> GLsizei -- ^ @width@.
  -> GLsizei -- ^ @height@.
  -> GLboolean -- ^ @fixedsamplelocations@.
  -> IO ()
glTextureStorage2DMultisample = dyn_glTextureStorage2DMultisample ptr_glTextureStorage2DMultisample

foreign import CALLCONV "dynamic" dyn_glTextureStorage2DMultisample
  :: FunPtr (GLuint -> GLsizei -> GLenum -> GLsizei -> GLsizei -> GLboolean -> IO ())
  ->         GLuint -> GLsizei -> GLenum -> GLsizei -> GLsizei -> GLboolean -> IO ()

{-# NOINLINE ptr_glTextureStorage2DMultisample #-}
ptr_glTextureStorage2DMultisample :: FunPtr (GLuint -> GLsizei -> GLenum -> GLsizei -> GLsizei -> GLboolean -> IO ())
ptr_glTextureStorage2DMultisample = unsafePerformIO $ getCommand "glTextureStorage2DMultisample"

-- glTextureStorage2DMultisampleEXT --------------------------------------------

glTextureStorage2DMultisampleEXT
  :: GLuint -- ^ @texture@ of type @Texture@.
  -> GLenum -- ^ @target@ of type @TextureTarget@.
  -> GLsizei -- ^ @samples@.
  -> GLenum -- ^ @internalformat@ of type @TextureInternalFormat@.
  -> GLsizei -- ^ @width@.
  -> GLsizei -- ^ @height@.
  -> GLboolean -- ^ @fixedsamplelocations@ of type @Boolean@.
  -> IO ()
glTextureStorage2DMultisampleEXT = dyn_glTextureStorage2DMultisampleEXT ptr_glTextureStorage2DMultisampleEXT

foreign import CALLCONV "dynamic" dyn_glTextureStorage2DMultisampleEXT
  :: FunPtr (GLuint -> GLenum -> GLsizei -> GLenum -> GLsizei -> GLsizei -> GLboolean -> IO ())
  ->         GLuint -> GLenum -> GLsizei -> GLenum -> GLsizei -> GLsizei -> GLboolean -> IO ()

{-# NOINLINE ptr_glTextureStorage2DMultisampleEXT #-}
ptr_glTextureStorage2DMultisampleEXT :: FunPtr (GLuint -> GLenum -> GLsizei -> GLenum -> GLsizei -> GLsizei -> GLboolean -> IO ())
ptr_glTextureStorage2DMultisampleEXT = unsafePerformIO $ getCommand "glTextureStorage2DMultisampleEXT"

-- glTextureStorage3D ----------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glTexStorage3D.xhtml OpenGL 4.x>
glTextureStorage3D
  :: GLuint -- ^ @texture@.
  -> GLsizei -- ^ @levels@.
  -> GLenum -- ^ @internalformat@.
  -> GLsizei -- ^ @width@.
  -> GLsizei -- ^ @height@.
  -> GLsizei -- ^ @depth@.
  -> IO ()
glTextureStorage3D = dyn_glTextureStorage3D ptr_glTextureStorage3D

foreign import CALLCONV "dynamic" dyn_glTextureStorage3D
  :: FunPtr (GLuint -> GLsizei -> GLenum -> GLsizei -> GLsizei -> GLsizei -> IO ())
  ->         GLuint -> GLsizei -> GLenum -> GLsizei -> GLsizei -> GLsizei -> IO ()

{-# NOINLINE ptr_glTextureStorage3D #-}
ptr_glTextureStorage3D :: FunPtr (GLuint -> GLsizei -> GLenum -> GLsizei -> GLsizei -> GLsizei -> IO ())
ptr_glTextureStorage3D = unsafePerformIO $ getCommand "glTextureStorage3D"

-- glTextureStorage3DEXT -------------------------------------------------------

glTextureStorage3DEXT
  :: GLuint -- ^ @texture@.
  -> GLenum -- ^ @target@.
  -> GLsizei -- ^ @levels@.
  -> GLenum -- ^ @internalformat@.
  -> GLsizei -- ^ @width@.
  -> GLsizei -- ^ @height@.
  -> GLsizei -- ^ @depth@.
  -> IO ()
glTextureStorage3DEXT = dyn_glTextureStorage3DEXT ptr_glTextureStorage3DEXT

foreign import CALLCONV "dynamic" dyn_glTextureStorage3DEXT
  :: FunPtr (GLuint -> GLenum -> GLsizei -> GLenum -> GLsizei -> GLsizei -> GLsizei -> IO ())
  ->         GLuint -> GLenum -> GLsizei -> GLenum -> GLsizei -> GLsizei -> GLsizei -> IO ()

{-# NOINLINE ptr_glTextureStorage3DEXT #-}
ptr_glTextureStorage3DEXT :: FunPtr (GLuint -> GLenum -> GLsizei -> GLenum -> GLsizei -> GLsizei -> GLsizei -> IO ())
ptr_glTextureStorage3DEXT = unsafePerformIO $ getCommand "glTextureStorage3DEXT"

-- glTextureStorage3DMultisample -----------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glTexStorage3DMultisample.xhtml OpenGL 4.x>
glTextureStorage3DMultisample
  :: GLuint -- ^ @texture@.
  -> GLsizei -- ^ @samples@.
  -> GLenum -- ^ @internalformat@.
  -> GLsizei -- ^ @width@.
  -> GLsizei -- ^ @height@.
  -> GLsizei -- ^ @depth@.
  -> GLboolean -- ^ @fixedsamplelocations@.
  -> IO ()
glTextureStorage3DMultisample = dyn_glTextureStorage3DMultisample ptr_glTextureStorage3DMultisample

foreign import CALLCONV "dynamic" dyn_glTextureStorage3DMultisample
  :: FunPtr (GLuint -> GLsizei -> GLenum -> GLsizei -> GLsizei -> GLsizei -> GLboolean -> IO ())
  ->         GLuint -> GLsizei -> GLenum -> GLsizei -> GLsizei -> GLsizei -> GLboolean -> IO ()

{-# NOINLINE ptr_glTextureStorage3DMultisample #-}
ptr_glTextureStorage3DMultisample :: FunPtr (GLuint -> GLsizei -> GLenum -> GLsizei -> GLsizei -> GLsizei -> GLboolean -> IO ())
ptr_glTextureStorage3DMultisample = unsafePerformIO $ getCommand "glTextureStorage3DMultisample"

-- glTextureStorage3DMultisampleEXT --------------------------------------------

glTextureStorage3DMultisampleEXT
  :: GLuint -- ^ @texture@.
  -> GLenum -- ^ @target@.
  -> GLsizei -- ^ @samples@.
  -> GLenum -- ^ @internalformat@.
  -> GLsizei -- ^ @width@.
  -> GLsizei -- ^ @height@.
  -> GLsizei -- ^ @depth@.
  -> GLboolean -- ^ @fixedsamplelocations@ of type @Boolean@.
  -> IO ()
glTextureStorage3DMultisampleEXT = dyn_glTextureStorage3DMultisampleEXT ptr_glTextureStorage3DMultisampleEXT

foreign import CALLCONV "dynamic" dyn_glTextureStorage3DMultisampleEXT
  :: FunPtr (GLuint -> GLenum -> GLsizei -> GLenum -> GLsizei -> GLsizei -> GLsizei -> GLboolean -> IO ())
  ->         GLuint -> GLenum -> GLsizei -> GLenum -> GLsizei -> GLsizei -> GLsizei -> GLboolean -> IO ()

{-# NOINLINE ptr_glTextureStorage3DMultisampleEXT #-}
ptr_glTextureStorage3DMultisampleEXT :: FunPtr (GLuint -> GLenum -> GLsizei -> GLenum -> GLsizei -> GLsizei -> GLsizei -> GLboolean -> IO ())
ptr_glTextureStorage3DMultisampleEXT = unsafePerformIO $ getCommand "glTextureStorage3DMultisampleEXT"

-- glTextureStorageSparseAMD ---------------------------------------------------

glTextureStorageSparseAMD
  :: GLuint -- ^ @texture@.
  -> GLenum -- ^ @target@.
  -> GLenum -- ^ @internalFormat@.
  -> GLsizei -- ^ @width@.
  -> GLsizei -- ^ @height@.
  -> GLsizei -- ^ @depth@.
  -> GLsizei -- ^ @layers@.
  -> GLbitfield -- ^ @flags@.
  -> IO ()
glTextureStorageSparseAMD = dyn_glTextureStorageSparseAMD ptr_glTextureStorageSparseAMD

foreign import CALLCONV "dynamic" dyn_glTextureStorageSparseAMD
  :: FunPtr (GLuint -> GLenum -> GLenum -> GLsizei -> GLsizei -> GLsizei -> GLsizei -> GLbitfield -> IO ())
  ->         GLuint -> GLenum -> GLenum -> GLsizei -> GLsizei -> GLsizei -> GLsizei -> GLbitfield -> IO ()

{-# NOINLINE ptr_glTextureStorageSparseAMD #-}
ptr_glTextureStorageSparseAMD :: FunPtr (GLuint -> GLenum -> GLenum -> GLsizei -> GLsizei -> GLsizei -> GLsizei -> GLbitfield -> IO ())
ptr_glTextureStorageSparseAMD = unsafePerformIO $ getCommand "glTextureStorageSparseAMD"

-- glTextureSubImage1D ---------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glTexSubImage1D.xhtml OpenGL 4.x>
glTextureSubImage1D
  :: GLuint -- ^ @texture@.
  -> GLint -- ^ @level@.
  -> GLint -- ^ @xoffset@.
  -> GLsizei -- ^ @width@.
  -> GLenum -- ^ @format@.
  -> GLenum -- ^ @type@.
  -> Ptr a -- ^ @pixels@.
  -> IO ()
glTextureSubImage1D = dyn_glTextureSubImage1D ptr_glTextureSubImage1D

foreign import CALLCONV "dynamic" dyn_glTextureSubImage1D
  :: FunPtr (GLuint -> GLint -> GLint -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO ())
  ->         GLuint -> GLint -> GLint -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO ()

{-# NOINLINE ptr_glTextureSubImage1D #-}
ptr_glTextureSubImage1D :: FunPtr (GLuint -> GLint -> GLint -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO ())
ptr_glTextureSubImage1D = unsafePerformIO $ getCommand "glTextureSubImage1D"

-- glTextureSubImage1DEXT ------------------------------------------------------

glTextureSubImage1DEXT
  :: GLuint -- ^ @texture@ of type @Texture@.
  -> GLenum -- ^ @target@ of type @TextureTarget@.
  -> GLint -- ^ @level@ of type @CheckedInt32@.
  -> GLint -- ^ @xoffset@ of type @CheckedInt32@.
  -> GLsizei -- ^ @width@.
  -> GLenum -- ^ @format@ of type @PixelFormat@.
  -> GLenum -- ^ @type@ of type @PixelType@.
  -> Ptr a -- ^ @pixels@ pointing to @COMPSIZE(format,type,width)@ elements of type @a@.
  -> IO ()
glTextureSubImage1DEXT = dyn_glTextureSubImage1DEXT ptr_glTextureSubImage1DEXT

foreign import CALLCONV "dynamic" dyn_glTextureSubImage1DEXT
  :: FunPtr (GLuint -> GLenum -> GLint -> GLint -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO ())
  ->         GLuint -> GLenum -> GLint -> GLint -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO ()

{-# NOINLINE ptr_glTextureSubImage1DEXT #-}
ptr_glTextureSubImage1DEXT :: FunPtr (GLuint -> GLenum -> GLint -> GLint -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO ())
ptr_glTextureSubImage1DEXT = unsafePerformIO $ getCommand "glTextureSubImage1DEXT"

-- glTextureSubImage2D ---------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glTexSubImage2D.xhtml OpenGL 4.x>
glTextureSubImage2D
  :: GLuint -- ^ @texture@.
  -> GLint -- ^ @level@.
  -> GLint -- ^ @xoffset@.
  -> GLint -- ^ @yoffset@.
  -> GLsizei -- ^ @width@.
  -> GLsizei -- ^ @height@.
  -> GLenum -- ^ @format@.
  -> GLenum -- ^ @type@.
  -> Ptr a -- ^ @pixels@.
  -> IO ()
glTextureSubImage2D = dyn_glTextureSubImage2D ptr_glTextureSubImage2D

foreign import CALLCONV "dynamic" dyn_glTextureSubImage2D
  :: FunPtr (GLuint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO ())
  ->         GLuint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO ()

{-# NOINLINE ptr_glTextureSubImage2D #-}
ptr_glTextureSubImage2D :: FunPtr (GLuint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO ())
ptr_glTextureSubImage2D = unsafePerformIO $ getCommand "glTextureSubImage2D"

-- glTextureSubImage2DEXT ------------------------------------------------------

glTextureSubImage2DEXT
  :: GLuint -- ^ @texture@ of type @Texture@.
  -> GLenum -- ^ @target@ of type @TextureTarget@.
  -> GLint -- ^ @level@ of type @CheckedInt32@.
  -> GLint -- ^ @xoffset@ of type @CheckedInt32@.
  -> GLint -- ^ @yoffset@ of type @CheckedInt32@.
  -> GLsizei -- ^ @width@.
  -> GLsizei -- ^ @height@.
  -> GLenum -- ^ @format@ of type @PixelFormat@.
  -> GLenum -- ^ @type@ of type @PixelType@.
  -> Ptr a -- ^ @pixels@ pointing to @COMPSIZE(format,type,width,height)@ elements of type @a@.
  -> IO ()
glTextureSubImage2DEXT = dyn_glTextureSubImage2DEXT ptr_glTextureSubImage2DEXT

foreign import CALLCONV "dynamic" dyn_glTextureSubImage2DEXT
  :: FunPtr (GLuint -> GLenum -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO ())
  ->         GLuint -> GLenum -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO ()

{-# NOINLINE ptr_glTextureSubImage2DEXT #-}
ptr_glTextureSubImage2DEXT :: FunPtr (GLuint -> GLenum -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO ())
ptr_glTextureSubImage2DEXT = unsafePerformIO $ getCommand "glTextureSubImage2DEXT"

-- glTextureSubImage3D ---------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glTexSubImage3D.xhtml OpenGL 4.x>
glTextureSubImage3D
  :: GLuint -- ^ @texture@.
  -> GLint -- ^ @level@.
  -> GLint -- ^ @xoffset@.
  -> GLint -- ^ @yoffset@.
  -> GLint -- ^ @zoffset@.
  -> GLsizei -- ^ @width@.
  -> GLsizei -- ^ @height@.
  -> GLsizei -- ^ @depth@.
  -> GLenum -- ^ @format@.
  -> GLenum -- ^ @type@.
  -> Ptr a -- ^ @pixels@.
  -> IO ()
glTextureSubImage3D = dyn_glTextureSubImage3D ptr_glTextureSubImage3D

foreign import CALLCONV "dynamic" dyn_glTextureSubImage3D
  :: FunPtr (GLuint -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO ())
  ->         GLuint -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO ()

{-# NOINLINE ptr_glTextureSubImage3D #-}
ptr_glTextureSubImage3D :: FunPtr (GLuint -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO ())
ptr_glTextureSubImage3D = unsafePerformIO $ getCommand "glTextureSubImage3D"

-- glTextureSubImage3DEXT ------------------------------------------------------

glTextureSubImage3DEXT
  :: GLuint -- ^ @texture@ of type @Texture@.
  -> GLenum -- ^ @target@ of type @TextureTarget@.
  -> GLint -- ^ @level@ of type @CheckedInt32@.
  -> GLint -- ^ @xoffset@ of type @CheckedInt32@.
  -> GLint -- ^ @yoffset@ of type @CheckedInt32@.
  -> GLint -- ^ @zoffset@ of type @CheckedInt32@.
  -> GLsizei -- ^ @width@.
  -> GLsizei -- ^ @height@.
  -> GLsizei -- ^ @depth@.
  -> GLenum -- ^ @format@ of type @PixelFormat@.
  -> GLenum -- ^ @type@ of type @PixelType@.
  -> Ptr a -- ^ @pixels@ pointing to @COMPSIZE(format,type,width,height,depth)@ elements of type @a@.
  -> IO ()
glTextureSubImage3DEXT = dyn_glTextureSubImage3DEXT ptr_glTextureSubImage3DEXT

foreign import CALLCONV "dynamic" dyn_glTextureSubImage3DEXT
  :: FunPtr (GLuint -> GLenum -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO ())
  ->         GLuint -> GLenum -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO ()

{-# NOINLINE ptr_glTextureSubImage3DEXT #-}
ptr_glTextureSubImage3DEXT :: FunPtr (GLuint -> GLenum -> GLint -> GLint -> GLint -> GLint -> GLsizei -> GLsizei -> GLsizei -> GLenum -> GLenum -> Ptr a -> IO ())
ptr_glTextureSubImage3DEXT = unsafePerformIO $ getCommand "glTextureSubImage3DEXT"

-- glTextureView ---------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glTextureView.xhtml OpenGL 4.x>
glTextureView
  :: GLuint -- ^ @texture@.
  -> GLenum -- ^ @target@.
  -> GLuint -- ^ @origtexture@.
  -> GLenum -- ^ @internalformat@.
  -> GLuint -- ^ @minlevel@.
  -> GLuint -- ^ @numlevels@.
  -> GLuint -- ^ @minlayer@.
  -> GLuint -- ^ @numlayers@.
  -> IO ()
glTextureView = dyn_glTextureView ptr_glTextureView

foreign import CALLCONV "dynamic" dyn_glTextureView
  :: FunPtr (GLuint -> GLenum -> GLuint -> GLenum -> GLuint -> GLuint -> GLuint -> GLuint -> IO ())
  ->         GLuint -> GLenum -> GLuint -> GLenum -> GLuint -> GLuint -> GLuint -> GLuint -> IO ()

{-# NOINLINE ptr_glTextureView #-}
ptr_glTextureView :: FunPtr (GLuint -> GLenum -> GLuint -> GLenum -> GLuint -> GLuint -> GLuint -> GLuint -> IO ())
ptr_glTextureView = unsafePerformIO $ getCommand "glTextureView"

-- glTextureViewEXT ------------------------------------------------------------

glTextureViewEXT
  :: GLuint -- ^ @texture@.
  -> GLenum -- ^ @target@.
  -> GLuint -- ^ @origtexture@.
  -> GLenum -- ^ @internalformat@.
  -> GLuint -- ^ @minlevel@.
  -> GLuint -- ^ @numlevels@.
  -> GLuint -- ^ @minlayer@.
  -> GLuint -- ^ @numlayers@.
  -> IO ()
glTextureViewEXT = dyn_glTextureViewEXT ptr_glTextureViewEXT

foreign import CALLCONV "dynamic" dyn_glTextureViewEXT
  :: FunPtr (GLuint -> GLenum -> GLuint -> GLenum -> GLuint -> GLuint -> GLuint -> GLuint -> IO ())
  ->         GLuint -> GLenum -> GLuint -> GLenum -> GLuint -> GLuint -> GLuint -> GLuint -> IO ()

{-# NOINLINE ptr_glTextureViewEXT #-}
ptr_glTextureViewEXT :: FunPtr (GLuint -> GLenum -> GLuint -> GLenum -> GLuint -> GLuint -> GLuint -> GLuint -> IO ())
ptr_glTextureViewEXT = unsafePerformIO $ getCommand "glTextureViewEXT"

-- glTextureViewOES ------------------------------------------------------------

glTextureViewOES
  :: GLuint -- ^ @texture@.
  -> GLenum -- ^ @target@.
  -> GLuint -- ^ @origtexture@.
  -> GLenum -- ^ @internalformat@.
  -> GLuint -- ^ @minlevel@.
  -> GLuint -- ^ @numlevels@.
  -> GLuint -- ^ @minlayer@.
  -> GLuint -- ^ @numlayers@.
  -> IO ()
glTextureViewOES = dyn_glTextureViewOES ptr_glTextureViewOES

foreign import CALLCONV "dynamic" dyn_glTextureViewOES
  :: FunPtr (GLuint -> GLenum -> GLuint -> GLenum -> GLuint -> GLuint -> GLuint -> GLuint -> IO ())
  ->         GLuint -> GLenum -> GLuint -> GLenum -> GLuint -> GLuint -> GLuint -> GLuint -> IO ()

{-# NOINLINE ptr_glTextureViewOES #-}
ptr_glTextureViewOES :: FunPtr (GLuint -> GLenum -> GLuint -> GLenum -> GLuint -> GLuint -> GLuint -> GLuint -> IO ())
ptr_glTextureViewOES = unsafePerformIO $ getCommand "glTextureViewOES"

-- glTrackMatrixNV -------------------------------------------------------------

glTrackMatrixNV
  :: GLenum -- ^ @target@ of type @VertexAttribEnumNV@.
  -> GLuint -- ^ @address@.
  -> GLenum -- ^ @matrix@ of type @VertexAttribEnumNV@.
  -> GLenum -- ^ @transform@ of type @VertexAttribEnumNV@.
  -> IO ()
glTrackMatrixNV = dyn_glTrackMatrixNV ptr_glTrackMatrixNV

foreign import CALLCONV "dynamic" dyn_glTrackMatrixNV
  :: FunPtr (GLenum -> GLuint -> GLenum -> GLenum -> IO ())
  ->         GLenum -> GLuint -> GLenum -> GLenum -> IO ()

{-# NOINLINE ptr_glTrackMatrixNV #-}
ptr_glTrackMatrixNV :: FunPtr (GLenum -> GLuint -> GLenum -> GLenum -> IO ())
ptr_glTrackMatrixNV = unsafePerformIO $ getCommand "glTrackMatrixNV"

-- glTransformFeedbackAttribsNV ------------------------------------------------

glTransformFeedbackAttribsNV
  :: GLsizei -- ^ @count@.
  -> Ptr GLint -- ^ @attribs@ pointing to @COMPSIZE(count)@ elements of type @GLint@.
  -> GLenum -- ^ @bufferMode@.
  -> IO ()
glTransformFeedbackAttribsNV = dyn_glTransformFeedbackAttribsNV ptr_glTransformFeedbackAttribsNV

foreign import CALLCONV "dynamic" dyn_glTransformFeedbackAttribsNV
  :: FunPtr (GLsizei -> Ptr GLint -> GLenum -> IO ())
  ->         GLsizei -> Ptr GLint -> GLenum -> IO ()

{-# NOINLINE ptr_glTransformFeedbackAttribsNV #-}
ptr_glTransformFeedbackAttribsNV :: FunPtr (GLsizei -> Ptr GLint -> GLenum -> IO ())
ptr_glTransformFeedbackAttribsNV = unsafePerformIO $ getCommand "glTransformFeedbackAttribsNV"

-- glTransformFeedbackBufferBase -----------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glTransformFeedbackBufferBase.xhtml OpenGL 4.x>
glTransformFeedbackBufferBase
  :: GLuint -- ^ @xfb@.
  -> GLuint -- ^ @index@.
  -> GLuint -- ^ @buffer@.
  -> IO ()
glTransformFeedbackBufferBase = dyn_glTransformFeedbackBufferBase ptr_glTransformFeedbackBufferBase

foreign import CALLCONV "dynamic" dyn_glTransformFeedbackBufferBase
  :: FunPtr (GLuint -> GLuint -> GLuint -> IO ())
  ->         GLuint -> GLuint -> GLuint -> IO ()

{-# NOINLINE ptr_glTransformFeedbackBufferBase #-}
ptr_glTransformFeedbackBufferBase :: FunPtr (GLuint -> GLuint -> GLuint -> IO ())
ptr_glTransformFeedbackBufferBase = unsafePerformIO $ getCommand "glTransformFeedbackBufferBase"

-- glTransformFeedbackBufferRange ----------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glTransformFeedbackBufferRange.xhtml OpenGL 4.x>
glTransformFeedbackBufferRange
  :: GLuint -- ^ @xfb@.
  -> GLuint -- ^ @index@.
  -> GLuint -- ^ @buffer@.
  -> GLintptr -- ^ @offset@.
  -> GLsizeiptr -- ^ @size@ of type @BufferSize@.
  -> IO ()
glTransformFeedbackBufferRange = dyn_glTransformFeedbackBufferRange ptr_glTransformFeedbackBufferRange

foreign import CALLCONV "dynamic" dyn_glTransformFeedbackBufferRange
  :: FunPtr (GLuint -> GLuint -> GLuint -> GLintptr -> GLsizeiptr -> IO ())
  ->         GLuint -> GLuint -> GLuint -> GLintptr -> GLsizeiptr -> IO ()

{-# NOINLINE ptr_glTransformFeedbackBufferRange #-}
ptr_glTransformFeedbackBufferRange :: FunPtr (GLuint -> GLuint -> GLuint -> GLintptr -> GLsizeiptr -> IO ())
ptr_glTransformFeedbackBufferRange = unsafePerformIO $ getCommand "glTransformFeedbackBufferRange"

-- glTransformFeedbackStreamAttribsNV ------------------------------------------

glTransformFeedbackStreamAttribsNV
  :: GLsizei -- ^ @count@.
  -> Ptr GLint -- ^ @attribs@ pointing to @count@ elements of type @GLint@.
  -> GLsizei -- ^ @nbuffers@.
  -> Ptr GLint -- ^ @bufstreams@ pointing to @nbuffers@ elements of type @GLint@.
  -> GLenum -- ^ @bufferMode@.
  -> IO ()
glTransformFeedbackStreamAttribsNV = dyn_glTransformFeedbackStreamAttribsNV ptr_glTransformFeedbackStreamAttribsNV

foreign import CALLCONV "dynamic" dyn_glTransformFeedbackStreamAttribsNV
  :: FunPtr (GLsizei -> Ptr GLint -> GLsizei -> Ptr GLint -> GLenum -> IO ())
  ->         GLsizei -> Ptr GLint -> GLsizei -> Ptr GLint -> GLenum -> IO ()

{-# NOINLINE ptr_glTransformFeedbackStreamAttribsNV #-}
ptr_glTransformFeedbackStreamAttribsNV :: FunPtr (GLsizei -> Ptr GLint -> GLsizei -> Ptr GLint -> GLenum -> IO ())
ptr_glTransformFeedbackStreamAttribsNV = unsafePerformIO $ getCommand "glTransformFeedbackStreamAttribsNV"

-- glTransformFeedbackVaryings -------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glTransformFeedbackVaryings.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glTransformFeedbackVaryings.xhtml OpenGL 4.x>
glTransformFeedbackVaryings
  :: GLuint -- ^ @program@.
  -> GLsizei -- ^ @count@.
  -> Ptr (Ptr GLchar) -- ^ @varyings@ pointing to @count@ elements of type @Ptr GLchar@.
  -> GLenum -- ^ @bufferMode@.
  -> IO ()
glTransformFeedbackVaryings = dyn_glTransformFeedbackVaryings ptr_glTransformFeedbackVaryings

foreign import CALLCONV "dynamic" dyn_glTransformFeedbackVaryings
  :: FunPtr (GLuint -> GLsizei -> Ptr (Ptr GLchar) -> GLenum -> IO ())
  ->         GLuint -> GLsizei -> Ptr (Ptr GLchar) -> GLenum -> IO ()

{-# NOINLINE ptr_glTransformFeedbackVaryings #-}
ptr_glTransformFeedbackVaryings :: FunPtr (GLuint -> GLsizei -> Ptr (Ptr GLchar) -> GLenum -> IO ())
ptr_glTransformFeedbackVaryings = unsafePerformIO $ getCommand "glTransformFeedbackVaryings"

-- glTransformFeedbackVaryingsEXT ----------------------------------------------

glTransformFeedbackVaryingsEXT
  :: GLuint -- ^ @program@.
  -> GLsizei -- ^ @count@.
  -> Ptr (Ptr GLchar) -- ^ @varyings@ pointing to @count@ elements of type @Ptr GLchar@.
  -> GLenum -- ^ @bufferMode@.
  -> IO ()
glTransformFeedbackVaryingsEXT = dyn_glTransformFeedbackVaryingsEXT ptr_glTransformFeedbackVaryingsEXT

foreign import CALLCONV "dynamic" dyn_glTransformFeedbackVaryingsEXT
  :: FunPtr (GLuint -> GLsizei -> Ptr (Ptr GLchar) -> GLenum -> IO ())
  ->         GLuint -> GLsizei -> Ptr (Ptr GLchar) -> GLenum -> IO ()

{-# NOINLINE ptr_glTransformFeedbackVaryingsEXT #-}
ptr_glTransformFeedbackVaryingsEXT :: FunPtr (GLuint -> GLsizei -> Ptr (Ptr GLchar) -> GLenum -> IO ())
ptr_glTransformFeedbackVaryingsEXT = unsafePerformIO $ getCommand "glTransformFeedbackVaryingsEXT"

-- glTransformFeedbackVaryingsNV -----------------------------------------------

glTransformFeedbackVaryingsNV
  :: GLuint -- ^ @program@.
  -> GLsizei -- ^ @count@.
  -> Ptr GLint -- ^ @locations@ pointing to @count@ elements of type @GLint@.
  -> GLenum -- ^ @bufferMode@.
  -> IO ()
glTransformFeedbackVaryingsNV = dyn_glTransformFeedbackVaryingsNV ptr_glTransformFeedbackVaryingsNV

foreign import CALLCONV "dynamic" dyn_glTransformFeedbackVaryingsNV
  :: FunPtr (GLuint -> GLsizei -> Ptr GLint -> GLenum -> IO ())
  ->         GLuint -> GLsizei -> Ptr GLint -> GLenum -> IO ()

{-# NOINLINE ptr_glTransformFeedbackVaryingsNV #-}
ptr_glTransformFeedbackVaryingsNV :: FunPtr (GLuint -> GLsizei -> Ptr GLint -> GLenum -> IO ())
ptr_glTransformFeedbackVaryingsNV = unsafePerformIO $ getCommand "glTransformFeedbackVaryingsNV"

-- glTransformPathNV -----------------------------------------------------------

glTransformPathNV
  :: GLuint -- ^ @resultPath@ of type @Path@.
  -> GLuint -- ^ @srcPath@ of type @Path@.
  -> GLenum -- ^ @transformType@ of type @PathTransformType@.
  -> Ptr GLfloat -- ^ @transformValues@ pointing to @COMPSIZE(transformType)@ elements of type @GLfloat@.
  -> IO ()
glTransformPathNV = dyn_glTransformPathNV ptr_glTransformPathNV

foreign import CALLCONV "dynamic" dyn_glTransformPathNV
  :: FunPtr (GLuint -> GLuint -> GLenum -> Ptr GLfloat -> IO ())
  ->         GLuint -> GLuint -> GLenum -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glTransformPathNV #-}
ptr_glTransformPathNV :: FunPtr (GLuint -> GLuint -> GLenum -> Ptr GLfloat -> IO ())
ptr_glTransformPathNV = unsafePerformIO $ getCommand "glTransformPathNV"

-- glTranslated ----------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glTranslate.xml OpenGL 2.x>
glTranslated
  :: GLdouble -- ^ @x@.
  -> GLdouble -- ^ @y@.
  -> GLdouble -- ^ @z@.
  -> IO ()
glTranslated = dyn_glTranslated ptr_glTranslated

foreign import CALLCONV "dynamic" dyn_glTranslated
  :: FunPtr (GLdouble -> GLdouble -> GLdouble -> IO ())
  ->         GLdouble -> GLdouble -> GLdouble -> IO ()

{-# NOINLINE ptr_glTranslated #-}
ptr_glTranslated :: FunPtr (GLdouble -> GLdouble -> GLdouble -> IO ())
ptr_glTranslated = unsafePerformIO $ getCommand "glTranslated"

-- glTranslatef ----------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glTranslate.xml OpenGL 2.x>
glTranslatef
  :: GLfloat -- ^ @x@.
  -> GLfloat -- ^ @y@.
  -> GLfloat -- ^ @z@.
  -> IO ()
glTranslatef = dyn_glTranslatef ptr_glTranslatef

foreign import CALLCONV "dynamic" dyn_glTranslatef
  :: FunPtr (GLfloat -> GLfloat -> GLfloat -> IO ())
  ->         GLfloat -> GLfloat -> GLfloat -> IO ()

{-# NOINLINE ptr_glTranslatef #-}
ptr_glTranslatef :: FunPtr (GLfloat -> GLfloat -> GLfloat -> IO ())
ptr_glTranslatef = unsafePerformIO $ getCommand "glTranslatef"

-- glTranslatex ----------------------------------------------------------------

glTranslatex
  :: GLfixed -- ^ @x@.
  -> GLfixed -- ^ @y@.
  -> GLfixed -- ^ @z@.
  -> IO ()
glTranslatex = dyn_glTranslatex ptr_glTranslatex

foreign import CALLCONV "dynamic" dyn_glTranslatex
  :: FunPtr (GLfixed -> GLfixed -> GLfixed -> IO ())
  ->         GLfixed -> GLfixed -> GLfixed -> IO ()

{-# NOINLINE ptr_glTranslatex #-}
ptr_glTranslatex :: FunPtr (GLfixed -> GLfixed -> GLfixed -> IO ())
ptr_glTranslatex = unsafePerformIO $ getCommand "glTranslatex"

-- glTranslatexOES -------------------------------------------------------------

glTranslatexOES
  :: GLfixed -- ^ @x@.
  -> GLfixed -- ^ @y@.
  -> GLfixed -- ^ @z@.
  -> IO ()
glTranslatexOES = dyn_glTranslatexOES ptr_glTranslatexOES

foreign import CALLCONV "dynamic" dyn_glTranslatexOES
  :: FunPtr (GLfixed -> GLfixed -> GLfixed -> IO ())
  ->         GLfixed -> GLfixed -> GLfixed -> IO ()

{-# NOINLINE ptr_glTranslatexOES #-}
ptr_glTranslatexOES :: FunPtr (GLfixed -> GLfixed -> GLfixed -> IO ())
ptr_glTranslatexOES = unsafePerformIO $ getCommand "glTranslatexOES"

-- glUniform1d -----------------------------------------------------------------

glUniform1d
  :: GLint -- ^ @location@.
  -> GLdouble -- ^ @x@.
  -> IO ()
glUniform1d = dyn_glUniform1d ptr_glUniform1d

foreign import CALLCONV "dynamic" dyn_glUniform1d
  :: FunPtr (GLint -> GLdouble -> IO ())
  ->         GLint -> GLdouble -> IO ()

{-# NOINLINE ptr_glUniform1d #-}
ptr_glUniform1d :: FunPtr (GLint -> GLdouble -> IO ())
ptr_glUniform1d = unsafePerformIO $ getCommand "glUniform1d"

-- glUniform1dv ----------------------------------------------------------------

glUniform1dv
  :: GLint -- ^ @location@.
  -> GLsizei -- ^ @count@.
  -> Ptr GLdouble -- ^ @value@ pointing to @count*1@ elements of type @GLdouble@.
  -> IO ()
glUniform1dv = dyn_glUniform1dv ptr_glUniform1dv

foreign import CALLCONV "dynamic" dyn_glUniform1dv
  :: FunPtr (GLint -> GLsizei -> Ptr GLdouble -> IO ())
  ->         GLint -> GLsizei -> Ptr GLdouble -> IO ()

{-# NOINLINE ptr_glUniform1dv #-}
ptr_glUniform1dv :: FunPtr (GLint -> GLsizei -> Ptr GLdouble -> IO ())
ptr_glUniform1dv = unsafePerformIO $ getCommand "glUniform1dv"

-- glUniform1f -----------------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glUniform.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glUniform.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glUniform.xhtml OpenGL 4.x>
glUniform1f
  :: GLint -- ^ @location@.
  -> GLfloat -- ^ @v0@.
  -> IO ()
glUniform1f = dyn_glUniform1f ptr_glUniform1f

foreign import CALLCONV "dynamic" dyn_glUniform1f
  :: FunPtr (GLint -> GLfloat -> IO ())
  ->         GLint -> GLfloat -> IO ()

{-# NOINLINE ptr_glUniform1f #-}
ptr_glUniform1f :: FunPtr (GLint -> GLfloat -> IO ())
ptr_glUniform1f = unsafePerformIO $ getCommand "glUniform1f"

-- glUniform1fARB --------------------------------------------------------------

glUniform1fARB
  :: GLint -- ^ @location@.
  -> GLfloat -- ^ @v0@.
  -> IO ()
glUniform1fARB = dyn_glUniform1fARB ptr_glUniform1fARB

foreign import CALLCONV "dynamic" dyn_glUniform1fARB
  :: FunPtr (GLint -> GLfloat -> IO ())
  ->         GLint -> GLfloat -> IO ()

{-# NOINLINE ptr_glUniform1fARB #-}
ptr_glUniform1fARB :: FunPtr (GLint -> GLfloat -> IO ())
ptr_glUniform1fARB = unsafePerformIO $ getCommand "glUniform1fARB"

-- glUniform1fv ----------------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glUniform.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glUniform.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glUniform.xhtml OpenGL 4.x>
glUniform1fv
  :: GLint -- ^ @location@.
  -> GLsizei -- ^ @count@.
  -> Ptr GLfloat -- ^ @value@ pointing to @count*1@ elements of type @GLfloat@.
  -> IO ()
glUniform1fv = dyn_glUniform1fv ptr_glUniform1fv

foreign import CALLCONV "dynamic" dyn_glUniform1fv
  :: FunPtr (GLint -> GLsizei -> Ptr GLfloat -> IO ())
  ->         GLint -> GLsizei -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glUniform1fv #-}
ptr_glUniform1fv :: FunPtr (GLint -> GLsizei -> Ptr GLfloat -> IO ())
ptr_glUniform1fv = unsafePerformIO $ getCommand "glUniform1fv"

-- glUniform1fvARB -------------------------------------------------------------

glUniform1fvARB
  :: GLint -- ^ @location@.
  -> GLsizei -- ^ @count@.
  -> Ptr GLfloat -- ^ @value@ pointing to @count*1@ elements of type @GLfloat@.
  -> IO ()
glUniform1fvARB = dyn_glUniform1fvARB ptr_glUniform1fvARB

foreign import CALLCONV "dynamic" dyn_glUniform1fvARB
  :: FunPtr (GLint -> GLsizei -> Ptr GLfloat -> IO ())
  ->         GLint -> GLsizei -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glUniform1fvARB #-}
ptr_glUniform1fvARB :: FunPtr (GLint -> GLsizei -> Ptr GLfloat -> IO ())
ptr_glUniform1fvARB = unsafePerformIO $ getCommand "glUniform1fvARB"

-- glUniform1i -----------------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glUniform.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glUniform.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glUniform.xhtml OpenGL 4.x>
glUniform1i
  :: GLint -- ^ @location@.
  -> GLint -- ^ @v0@.
  -> IO ()
glUniform1i = dyn_glUniform1i ptr_glUniform1i

foreign import CALLCONV "dynamic" dyn_glUniform1i
  :: FunPtr (GLint -> GLint -> IO ())
  ->         GLint -> GLint -> IO ()

{-# NOINLINE ptr_glUniform1i #-}
ptr_glUniform1i :: FunPtr (GLint -> GLint -> IO ())
ptr_glUniform1i = unsafePerformIO $ getCommand "glUniform1i"

-- glUniform1i64NV -------------------------------------------------------------

glUniform1i64NV
  :: GLint -- ^ @location@.
  -> GLint64EXT -- ^ @x@.
  -> IO ()
glUniform1i64NV = dyn_glUniform1i64NV ptr_glUniform1i64NV

foreign import CALLCONV "dynamic" dyn_glUniform1i64NV
  :: FunPtr (GLint -> GLint64EXT -> IO ())
  ->         GLint -> GLint64EXT -> IO ()

{-# NOINLINE ptr_glUniform1i64NV #-}
ptr_glUniform1i64NV :: FunPtr (GLint -> GLint64EXT -> IO ())
ptr_glUniform1i64NV = unsafePerformIO $ getCommand "glUniform1i64NV"

-- glUniform1i64vNV ------------------------------------------------------------

glUniform1i64vNV
  :: GLint -- ^ @location@.
  -> GLsizei -- ^ @count@.
  -> Ptr GLint64EXT -- ^ @value@ pointing to @count*1@ elements of type @GLint64EXT@.
  -> IO ()
glUniform1i64vNV = dyn_glUniform1i64vNV ptr_glUniform1i64vNV

foreign import CALLCONV "dynamic" dyn_glUniform1i64vNV
  :: FunPtr (GLint -> GLsizei -> Ptr GLint64EXT -> IO ())
  ->         GLint -> GLsizei -> Ptr GLint64EXT -> IO ()

{-# NOINLINE ptr_glUniform1i64vNV #-}
ptr_glUniform1i64vNV :: FunPtr (GLint -> GLsizei -> Ptr GLint64EXT -> IO ())
ptr_glUniform1i64vNV = unsafePerformIO $ getCommand "glUniform1i64vNV"

-- glUniform1iARB --------------------------------------------------------------

glUniform1iARB
  :: GLint -- ^ @location@.
  -> GLint -- ^ @v0@.
  -> IO ()
glUniform1iARB = dyn_glUniform1iARB ptr_glUniform1iARB

foreign import CALLCONV "dynamic" dyn_glUniform1iARB
  :: FunPtr (GLint -> GLint -> IO ())
  ->         GLint -> GLint -> IO ()

{-# NOINLINE ptr_glUniform1iARB #-}
ptr_glUniform1iARB :: FunPtr (GLint -> GLint -> IO ())
ptr_glUniform1iARB = unsafePerformIO $ getCommand "glUniform1iARB"

-- glUniform1iv ----------------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glUniform.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glUniform.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glUniform.xhtml OpenGL 4.x>
glUniform1iv
  :: GLint -- ^ @location@.
  -> GLsizei -- ^ @count@.
  -> Ptr GLint -- ^ @value@ pointing to @count*1@ elements of type @GLint@.
  -> IO ()
glUniform1iv = dyn_glUniform1iv ptr_glUniform1iv

foreign import CALLCONV "dynamic" dyn_glUniform1iv
  :: FunPtr (GLint -> GLsizei -> Ptr GLint -> IO ())
  ->         GLint -> GLsizei -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glUniform1iv #-}
ptr_glUniform1iv :: FunPtr (GLint -> GLsizei -> Ptr GLint -> IO ())
ptr_glUniform1iv = unsafePerformIO $ getCommand "glUniform1iv"

-- glUniform1ivARB -------------------------------------------------------------

glUniform1ivARB
  :: GLint -- ^ @location@.
  -> GLsizei -- ^ @count@.
  -> Ptr GLint -- ^ @value@ pointing to @count*1@ elements of type @GLint@.
  -> IO ()
glUniform1ivARB = dyn_glUniform1ivARB ptr_glUniform1ivARB

foreign import CALLCONV "dynamic" dyn_glUniform1ivARB
  :: FunPtr (GLint -> GLsizei -> Ptr GLint -> IO ())
  ->         GLint -> GLsizei -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glUniform1ivARB #-}
ptr_glUniform1ivARB :: FunPtr (GLint -> GLsizei -> Ptr GLint -> IO ())
ptr_glUniform1ivARB = unsafePerformIO $ getCommand "glUniform1ivARB"

-- glUniform1ui ----------------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glUniform.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glUniform.xhtml OpenGL 4.x>
glUniform1ui
  :: GLint -- ^ @location@.
  -> GLuint -- ^ @v0@.
  -> IO ()
glUniform1ui = dyn_glUniform1ui ptr_glUniform1ui

foreign import CALLCONV "dynamic" dyn_glUniform1ui
  :: FunPtr (GLint -> GLuint -> IO ())
  ->         GLint -> GLuint -> IO ()

{-# NOINLINE ptr_glUniform1ui #-}
ptr_glUniform1ui :: FunPtr (GLint -> GLuint -> IO ())
ptr_glUniform1ui = unsafePerformIO $ getCommand "glUniform1ui"

-- glUniform1ui64NV ------------------------------------------------------------

glUniform1ui64NV
  :: GLint -- ^ @location@.
  -> GLuint64EXT -- ^ @x@.
  -> IO ()
glUniform1ui64NV = dyn_glUniform1ui64NV ptr_glUniform1ui64NV

foreign import CALLCONV "dynamic" dyn_glUniform1ui64NV
  :: FunPtr (GLint -> GLuint64EXT -> IO ())
  ->         GLint -> GLuint64EXT -> IO ()

{-# NOINLINE ptr_glUniform1ui64NV #-}
ptr_glUniform1ui64NV :: FunPtr (GLint -> GLuint64EXT -> IO ())
ptr_glUniform1ui64NV = unsafePerformIO $ getCommand "glUniform1ui64NV"

-- glUniform1ui64vNV -----------------------------------------------------------

glUniform1ui64vNV
  :: GLint -- ^ @location@.
  -> GLsizei -- ^ @count@.
  -> Ptr GLuint64EXT -- ^ @value@ pointing to @count*1@ elements of type @GLuint64EXT@.
  -> IO ()
glUniform1ui64vNV = dyn_glUniform1ui64vNV ptr_glUniform1ui64vNV

foreign import CALLCONV "dynamic" dyn_glUniform1ui64vNV
  :: FunPtr (GLint -> GLsizei -> Ptr GLuint64EXT -> IO ())
  ->         GLint -> GLsizei -> Ptr GLuint64EXT -> IO ()

{-# NOINLINE ptr_glUniform1ui64vNV #-}
ptr_glUniform1ui64vNV :: FunPtr (GLint -> GLsizei -> Ptr GLuint64EXT -> IO ())
ptr_glUniform1ui64vNV = unsafePerformIO $ getCommand "glUniform1ui64vNV"

-- glUniform1uiEXT -------------------------------------------------------------

glUniform1uiEXT
  :: GLint -- ^ @location@.
  -> GLuint -- ^ @v0@.
  -> IO ()
glUniform1uiEXT = dyn_glUniform1uiEXT ptr_glUniform1uiEXT

foreign import CALLCONV "dynamic" dyn_glUniform1uiEXT
  :: FunPtr (GLint -> GLuint -> IO ())
  ->         GLint -> GLuint -> IO ()

{-# NOINLINE ptr_glUniform1uiEXT #-}
ptr_glUniform1uiEXT :: FunPtr (GLint -> GLuint -> IO ())
ptr_glUniform1uiEXT = unsafePerformIO $ getCommand "glUniform1uiEXT"

-- glUniform1uiv ---------------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glUniform.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glUniform.xhtml OpenGL 4.x>
glUniform1uiv
  :: GLint -- ^ @location@.
  -> GLsizei -- ^ @count@.
  -> Ptr GLuint -- ^ @value@ pointing to @count*1@ elements of type @GLuint@.
  -> IO ()
glUniform1uiv = dyn_glUniform1uiv ptr_glUniform1uiv

foreign import CALLCONV "dynamic" dyn_glUniform1uiv
  :: FunPtr (GLint -> GLsizei -> Ptr GLuint -> IO ())
  ->         GLint -> GLsizei -> Ptr GLuint -> IO ()

{-# NOINLINE ptr_glUniform1uiv #-}
ptr_glUniform1uiv :: FunPtr (GLint -> GLsizei -> Ptr GLuint -> IO ())
ptr_glUniform1uiv = unsafePerformIO $ getCommand "glUniform1uiv"

-- glUniform1uivEXT ------------------------------------------------------------

glUniform1uivEXT
  :: GLint -- ^ @location@.
  -> GLsizei -- ^ @count@.
  -> Ptr GLuint -- ^ @value@ pointing to @count*1@ elements of type @GLuint@.
  -> IO ()
glUniform1uivEXT = dyn_glUniform1uivEXT ptr_glUniform1uivEXT

foreign import CALLCONV "dynamic" dyn_glUniform1uivEXT
  :: FunPtr (GLint -> GLsizei -> Ptr GLuint -> IO ())
  ->         GLint -> GLsizei -> Ptr GLuint -> IO ()

{-# NOINLINE ptr_glUniform1uivEXT #-}
ptr_glUniform1uivEXT :: FunPtr (GLint -> GLsizei -> Ptr GLuint -> IO ())
ptr_glUniform1uivEXT = unsafePerformIO $ getCommand "glUniform1uivEXT"

-- glUniform2d -----------------------------------------------------------------

glUniform2d
  :: GLint -- ^ @location@.
  -> GLdouble -- ^ @x@.
  -> GLdouble -- ^ @y@.
  -> IO ()
glUniform2d = dyn_glUniform2d ptr_glUniform2d

foreign import CALLCONV "dynamic" dyn_glUniform2d
  :: FunPtr (GLint -> GLdouble -> GLdouble -> IO ())
  ->         GLint -> GLdouble -> GLdouble -> IO ()

{-# NOINLINE ptr_glUniform2d #-}
ptr_glUniform2d :: FunPtr (GLint -> GLdouble -> GLdouble -> IO ())
ptr_glUniform2d = unsafePerformIO $ getCommand "glUniform2d"

-- glUniform2dv ----------------------------------------------------------------

glUniform2dv
  :: GLint -- ^ @location@.
  -> GLsizei -- ^ @count@.
  -> Ptr GLdouble -- ^ @value@ pointing to @count*2@ elements of type @GLdouble@.
  -> IO ()
glUniform2dv = dyn_glUniform2dv ptr_glUniform2dv

foreign import CALLCONV "dynamic" dyn_glUniform2dv
  :: FunPtr (GLint -> GLsizei -> Ptr GLdouble -> IO ())
  ->         GLint -> GLsizei -> Ptr GLdouble -> IO ()

{-# NOINLINE ptr_glUniform2dv #-}
ptr_glUniform2dv :: FunPtr (GLint -> GLsizei -> Ptr GLdouble -> IO ())
ptr_glUniform2dv = unsafePerformIO $ getCommand "glUniform2dv"

-- glUniform2f -----------------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glUniform.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glUniform.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glUniform.xhtml OpenGL 4.x>
glUniform2f
  :: GLint -- ^ @location@.
  -> GLfloat -- ^ @v0@.
  -> GLfloat -- ^ @v1@.
  -> IO ()
glUniform2f = dyn_glUniform2f ptr_glUniform2f

foreign import CALLCONV "dynamic" dyn_glUniform2f
  :: FunPtr (GLint -> GLfloat -> GLfloat -> IO ())
  ->         GLint -> GLfloat -> GLfloat -> IO ()

{-# NOINLINE ptr_glUniform2f #-}
ptr_glUniform2f :: FunPtr (GLint -> GLfloat -> GLfloat -> IO ())
ptr_glUniform2f = unsafePerformIO $ getCommand "glUniform2f"

-- glUniform2fARB --------------------------------------------------------------

glUniform2fARB
  :: GLint -- ^ @location@.
  -> GLfloat -- ^ @v0@.
  -> GLfloat -- ^ @v1@.
  -> IO ()
glUniform2fARB = dyn_glUniform2fARB ptr_glUniform2fARB

foreign import CALLCONV "dynamic" dyn_glUniform2fARB
  :: FunPtr (GLint -> GLfloat -> GLfloat -> IO ())
  ->         GLint -> GLfloat -> GLfloat -> IO ()

{-# NOINLINE ptr_glUniform2fARB #-}
ptr_glUniform2fARB :: FunPtr (GLint -> GLfloat -> GLfloat -> IO ())
ptr_glUniform2fARB = unsafePerformIO $ getCommand "glUniform2fARB"

-- glUniform2fv ----------------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glUniform.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glUniform.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glUniform.xhtml OpenGL 4.x>
glUniform2fv
  :: GLint -- ^ @location@.
  -> GLsizei -- ^ @count@.
  -> Ptr GLfloat -- ^ @value@ pointing to @count*2@ elements of type @GLfloat@.
  -> IO ()
glUniform2fv = dyn_glUniform2fv ptr_glUniform2fv

foreign import CALLCONV "dynamic" dyn_glUniform2fv
  :: FunPtr (GLint -> GLsizei -> Ptr GLfloat -> IO ())
  ->         GLint -> GLsizei -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glUniform2fv #-}
ptr_glUniform2fv :: FunPtr (GLint -> GLsizei -> Ptr GLfloat -> IO ())
ptr_glUniform2fv = unsafePerformIO $ getCommand "glUniform2fv"

-- glUniform2fvARB -------------------------------------------------------------

glUniform2fvARB
  :: GLint -- ^ @location@.
  -> GLsizei -- ^ @count@.
  -> Ptr GLfloat -- ^ @value@ pointing to @count*2@ elements of type @GLfloat@.
  -> IO ()
glUniform2fvARB = dyn_glUniform2fvARB ptr_glUniform2fvARB

foreign import CALLCONV "dynamic" dyn_glUniform2fvARB
  :: FunPtr (GLint -> GLsizei -> Ptr GLfloat -> IO ())
  ->         GLint -> GLsizei -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glUniform2fvARB #-}
ptr_glUniform2fvARB :: FunPtr (GLint -> GLsizei -> Ptr GLfloat -> IO ())
ptr_glUniform2fvARB = unsafePerformIO $ getCommand "glUniform2fvARB"

-- glUniform2i -----------------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glUniform.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glUniform.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glUniform.xhtml OpenGL 4.x>
glUniform2i
  :: GLint -- ^ @location@.
  -> GLint -- ^ @v0@.
  -> GLint -- ^ @v1@.
  -> IO ()
glUniform2i = dyn_glUniform2i ptr_glUniform2i

foreign import CALLCONV "dynamic" dyn_glUniform2i
  :: FunPtr (GLint -> GLint -> GLint -> IO ())
  ->         GLint -> GLint -> GLint -> IO ()

{-# NOINLINE ptr_glUniform2i #-}
ptr_glUniform2i :: FunPtr (GLint -> GLint -> GLint -> IO ())
ptr_glUniform2i = unsafePerformIO $ getCommand "glUniform2i"

-- glUniform2i64NV -------------------------------------------------------------

glUniform2i64NV
  :: GLint -- ^ @location@.
  -> GLint64EXT -- ^ @x@.
  -> GLint64EXT -- ^ @y@.
  -> IO ()
glUniform2i64NV = dyn_glUniform2i64NV ptr_glUniform2i64NV

foreign import CALLCONV "dynamic" dyn_glUniform2i64NV
  :: FunPtr (GLint -> GLint64EXT -> GLint64EXT -> IO ())
  ->         GLint -> GLint64EXT -> GLint64EXT -> IO ()

{-# NOINLINE ptr_glUniform2i64NV #-}
ptr_glUniform2i64NV :: FunPtr (GLint -> GLint64EXT -> GLint64EXT -> IO ())
ptr_glUniform2i64NV = unsafePerformIO $ getCommand "glUniform2i64NV"

-- glUniform2i64vNV ------------------------------------------------------------

glUniform2i64vNV
  :: GLint -- ^ @location@.
  -> GLsizei -- ^ @count@.
  -> Ptr GLint64EXT -- ^ @value@ pointing to @count*2@ elements of type @GLint64EXT@.
  -> IO ()
glUniform2i64vNV = dyn_glUniform2i64vNV ptr_glUniform2i64vNV

foreign import CALLCONV "dynamic" dyn_glUniform2i64vNV
  :: FunPtr (GLint -> GLsizei -> Ptr GLint64EXT -> IO ())
  ->         GLint -> GLsizei -> Ptr GLint64EXT -> IO ()

{-# NOINLINE ptr_glUniform2i64vNV #-}
ptr_glUniform2i64vNV :: FunPtr (GLint -> GLsizei -> Ptr GLint64EXT -> IO ())
ptr_glUniform2i64vNV = unsafePerformIO $ getCommand "glUniform2i64vNV"

-- glUniform2iARB --------------------------------------------------------------

glUniform2iARB
  :: GLint -- ^ @location@.
  -> GLint -- ^ @v0@.
  -> GLint -- ^ @v1@.
  -> IO ()
glUniform2iARB = dyn_glUniform2iARB ptr_glUniform2iARB

foreign import CALLCONV "dynamic" dyn_glUniform2iARB
  :: FunPtr (GLint -> GLint -> GLint -> IO ())
  ->         GLint -> GLint -> GLint -> IO ()

{-# NOINLINE ptr_glUniform2iARB #-}
ptr_glUniform2iARB :: FunPtr (GLint -> GLint -> GLint -> IO ())
ptr_glUniform2iARB = unsafePerformIO $ getCommand "glUniform2iARB"

-- glUniform2iv ----------------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glUniform.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glUniform.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glUniform.xhtml OpenGL 4.x>
glUniform2iv
  :: GLint -- ^ @location@.
  -> GLsizei -- ^ @count@.
  -> Ptr GLint -- ^ @value@ pointing to @count*2@ elements of type @GLint@.
  -> IO ()
glUniform2iv = dyn_glUniform2iv ptr_glUniform2iv

foreign import CALLCONV "dynamic" dyn_glUniform2iv
  :: FunPtr (GLint -> GLsizei -> Ptr GLint -> IO ())
  ->         GLint -> GLsizei -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glUniform2iv #-}
ptr_glUniform2iv :: FunPtr (GLint -> GLsizei -> Ptr GLint -> IO ())
ptr_glUniform2iv = unsafePerformIO $ getCommand "glUniform2iv"

-- glUniform2ivARB -------------------------------------------------------------

glUniform2ivARB
  :: GLint -- ^ @location@.
  -> GLsizei -- ^ @count@.
  -> Ptr GLint -- ^ @value@ pointing to @count*2@ elements of type @GLint@.
  -> IO ()
glUniform2ivARB = dyn_glUniform2ivARB ptr_glUniform2ivARB

foreign import CALLCONV "dynamic" dyn_glUniform2ivARB
  :: FunPtr (GLint -> GLsizei -> Ptr GLint -> IO ())
  ->         GLint -> GLsizei -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glUniform2ivARB #-}
ptr_glUniform2ivARB :: FunPtr (GLint -> GLsizei -> Ptr GLint -> IO ())
ptr_glUniform2ivARB = unsafePerformIO $ getCommand "glUniform2ivARB"

-- glUniform2ui ----------------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glUniform.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glUniform.xhtml OpenGL 4.x>
glUniform2ui
  :: GLint -- ^ @location@.
  -> GLuint -- ^ @v0@.
  -> GLuint -- ^ @v1@.
  -> IO ()
glUniform2ui = dyn_glUniform2ui ptr_glUniform2ui

foreign import CALLCONV "dynamic" dyn_glUniform2ui
  :: FunPtr (GLint -> GLuint -> GLuint -> IO ())
  ->         GLint -> GLuint -> GLuint -> IO ()

{-# NOINLINE ptr_glUniform2ui #-}
ptr_glUniform2ui :: FunPtr (GLint -> GLuint -> GLuint -> IO ())
ptr_glUniform2ui = unsafePerformIO $ getCommand "glUniform2ui"

-- glUniform2ui64NV ------------------------------------------------------------

glUniform2ui64NV
  :: GLint -- ^ @location@.
  -> GLuint64EXT -- ^ @x@.
  -> GLuint64EXT -- ^ @y@.
  -> IO ()
glUniform2ui64NV = dyn_glUniform2ui64NV ptr_glUniform2ui64NV

foreign import CALLCONV "dynamic" dyn_glUniform2ui64NV
  :: FunPtr (GLint -> GLuint64EXT -> GLuint64EXT -> IO ())
  ->         GLint -> GLuint64EXT -> GLuint64EXT -> IO ()

{-# NOINLINE ptr_glUniform2ui64NV #-}
ptr_glUniform2ui64NV :: FunPtr (GLint -> GLuint64EXT -> GLuint64EXT -> IO ())
ptr_glUniform2ui64NV = unsafePerformIO $ getCommand "glUniform2ui64NV"

-- glUniform2ui64vNV -----------------------------------------------------------

glUniform2ui64vNV
  :: GLint -- ^ @location@.
  -> GLsizei -- ^ @count@.
  -> Ptr GLuint64EXT -- ^ @value@ pointing to @count*2@ elements of type @GLuint64EXT@.
  -> IO ()
glUniform2ui64vNV = dyn_glUniform2ui64vNV ptr_glUniform2ui64vNV

foreign import CALLCONV "dynamic" dyn_glUniform2ui64vNV
  :: FunPtr (GLint -> GLsizei -> Ptr GLuint64EXT -> IO ())
  ->         GLint -> GLsizei -> Ptr GLuint64EXT -> IO ()

{-# NOINLINE ptr_glUniform2ui64vNV #-}
ptr_glUniform2ui64vNV :: FunPtr (GLint -> GLsizei -> Ptr GLuint64EXT -> IO ())
ptr_glUniform2ui64vNV = unsafePerformIO $ getCommand "glUniform2ui64vNV"

-- glUniform2uiEXT -------------------------------------------------------------

glUniform2uiEXT
  :: GLint -- ^ @location@.
  -> GLuint -- ^ @v0@.
  -> GLuint -- ^ @v1@.
  -> IO ()
glUniform2uiEXT = dyn_glUniform2uiEXT ptr_glUniform2uiEXT

foreign import CALLCONV "dynamic" dyn_glUniform2uiEXT
  :: FunPtr (GLint -> GLuint -> GLuint -> IO ())
  ->         GLint -> GLuint -> GLuint -> IO ()

{-# NOINLINE ptr_glUniform2uiEXT #-}
ptr_glUniform2uiEXT :: FunPtr (GLint -> GLuint -> GLuint -> IO ())
ptr_glUniform2uiEXT = unsafePerformIO $ getCommand "glUniform2uiEXT"

-- glUniform2uiv ---------------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glUniform.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glUniform.xhtml OpenGL 4.x>
glUniform2uiv
  :: GLint -- ^ @location@.
  -> GLsizei -- ^ @count@.
  -> Ptr GLuint -- ^ @value@ pointing to @count*2@ elements of type @GLuint@.
  -> IO ()
glUniform2uiv = dyn_glUniform2uiv ptr_glUniform2uiv

foreign import CALLCONV "dynamic" dyn_glUniform2uiv
  :: FunPtr (GLint -> GLsizei -> Ptr GLuint -> IO ())
  ->         GLint -> GLsizei -> Ptr GLuint -> IO ()

{-# NOINLINE ptr_glUniform2uiv #-}
ptr_glUniform2uiv :: FunPtr (GLint -> GLsizei -> Ptr GLuint -> IO ())
ptr_glUniform2uiv = unsafePerformIO $ getCommand "glUniform2uiv"

-- glUniform2uivEXT ------------------------------------------------------------

glUniform2uivEXT
  :: GLint -- ^ @location@.
  -> GLsizei -- ^ @count@.
  -> Ptr GLuint -- ^ @value@ pointing to @count*2@ elements of type @GLuint@.
  -> IO ()
glUniform2uivEXT = dyn_glUniform2uivEXT ptr_glUniform2uivEXT

foreign import CALLCONV "dynamic" dyn_glUniform2uivEXT
  :: FunPtr (GLint -> GLsizei -> Ptr GLuint -> IO ())
  ->         GLint -> GLsizei -> Ptr GLuint -> IO ()

{-# NOINLINE ptr_glUniform2uivEXT #-}
ptr_glUniform2uivEXT :: FunPtr (GLint -> GLsizei -> Ptr GLuint -> IO ())
ptr_glUniform2uivEXT = unsafePerformIO $ getCommand "glUniform2uivEXT"

-- glUniform3d -----------------------------------------------------------------

glUniform3d
  :: GLint -- ^ @location@.
  -> GLdouble -- ^ @x@.
  -> GLdouble -- ^ @y@.
  -> GLdouble -- ^ @z@.
  -> IO ()
glUniform3d = dyn_glUniform3d ptr_glUniform3d

foreign import CALLCONV "dynamic" dyn_glUniform3d
  :: FunPtr (GLint -> GLdouble -> GLdouble -> GLdouble -> IO ())
  ->         GLint -> GLdouble -> GLdouble -> GLdouble -> IO ()

{-# NOINLINE ptr_glUniform3d #-}
ptr_glUniform3d :: FunPtr (GLint -> GLdouble -> GLdouble -> GLdouble -> IO ())
ptr_glUniform3d = unsafePerformIO $ getCommand "glUniform3d"

-- glUniform3dv ----------------------------------------------------------------

glUniform3dv
  :: GLint -- ^ @location@.
  -> GLsizei -- ^ @count@.
  -> Ptr GLdouble -- ^ @value@ pointing to @count*3@ elements of type @GLdouble@.
  -> IO ()
glUniform3dv = dyn_glUniform3dv ptr_glUniform3dv

foreign import CALLCONV "dynamic" dyn_glUniform3dv
  :: FunPtr (GLint -> GLsizei -> Ptr GLdouble -> IO ())
  ->         GLint -> GLsizei -> Ptr GLdouble -> IO ()

{-# NOINLINE ptr_glUniform3dv #-}
ptr_glUniform3dv :: FunPtr (GLint -> GLsizei -> Ptr GLdouble -> IO ())
ptr_glUniform3dv = unsafePerformIO $ getCommand "glUniform3dv"

-- glUniform3f -----------------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glUniform.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glUniform.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glUniform.xhtml OpenGL 4.x>
glUniform3f
  :: GLint -- ^ @location@.
  -> GLfloat -- ^ @v0@.
  -> GLfloat -- ^ @v1@.
  -> GLfloat -- ^ @v2@.
  -> IO ()
glUniform3f = dyn_glUniform3f ptr_glUniform3f

foreign import CALLCONV "dynamic" dyn_glUniform3f
  :: FunPtr (GLint -> GLfloat -> GLfloat -> GLfloat -> IO ())
  ->         GLint -> GLfloat -> GLfloat -> GLfloat -> IO ()

{-# NOINLINE ptr_glUniform3f #-}
ptr_glUniform3f :: FunPtr (GLint -> GLfloat -> GLfloat -> GLfloat -> IO ())
ptr_glUniform3f = unsafePerformIO $ getCommand "glUniform3f"

-- glUniform3fARB --------------------------------------------------------------

glUniform3fARB
  :: GLint -- ^ @location@.
  -> GLfloat -- ^ @v0@.
  -> GLfloat -- ^ @v1@.
  -> GLfloat -- ^ @v2@.
  -> IO ()
glUniform3fARB = dyn_glUniform3fARB ptr_glUniform3fARB

foreign import CALLCONV "dynamic" dyn_glUniform3fARB
  :: FunPtr (GLint -> GLfloat -> GLfloat -> GLfloat -> IO ())
  ->         GLint -> GLfloat -> GLfloat -> GLfloat -> IO ()

{-# NOINLINE ptr_glUniform3fARB #-}
ptr_glUniform3fARB :: FunPtr (GLint -> GLfloat -> GLfloat -> GLfloat -> IO ())
ptr_glUniform3fARB = unsafePerformIO $ getCommand "glUniform3fARB"

-- glUniform3fv ----------------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glUniform.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glUniform.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glUniform.xhtml OpenGL 4.x>
glUniform3fv
  :: GLint -- ^ @location@.
  -> GLsizei -- ^ @count@.
  -> Ptr GLfloat -- ^ @value@ pointing to @count*3@ elements of type @GLfloat@.
  -> IO ()
glUniform3fv = dyn_glUniform3fv ptr_glUniform3fv

foreign import CALLCONV "dynamic" dyn_glUniform3fv
  :: FunPtr (GLint -> GLsizei -> Ptr GLfloat -> IO ())
  ->         GLint -> GLsizei -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glUniform3fv #-}
ptr_glUniform3fv :: FunPtr (GLint -> GLsizei -> Ptr GLfloat -> IO ())
ptr_glUniform3fv = unsafePerformIO $ getCommand "glUniform3fv"

-- glUniform3fvARB -------------------------------------------------------------

glUniform3fvARB
  :: GLint -- ^ @location@.
  -> GLsizei -- ^ @count@.
  -> Ptr GLfloat -- ^ @value@ pointing to @count*3@ elements of type @GLfloat@.
  -> IO ()
glUniform3fvARB = dyn_glUniform3fvARB ptr_glUniform3fvARB

foreign import CALLCONV "dynamic" dyn_glUniform3fvARB
  :: FunPtr (GLint -> GLsizei -> Ptr GLfloat -> IO ())
  ->         GLint -> GLsizei -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glUniform3fvARB #-}
ptr_glUniform3fvARB :: FunPtr (GLint -> GLsizei -> Ptr GLfloat -> IO ())
ptr_glUniform3fvARB = unsafePerformIO $ getCommand "glUniform3fvARB"

-- glUniform3i -----------------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glUniform.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glUniform.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glUniform.xhtml OpenGL 4.x>
glUniform3i
  :: GLint -- ^ @location@.
  -> GLint -- ^ @v0@.
  -> GLint -- ^ @v1@.
  -> GLint -- ^ @v2@.
  -> IO ()
glUniform3i = dyn_glUniform3i ptr_glUniform3i

foreign import CALLCONV "dynamic" dyn_glUniform3i
  :: FunPtr (GLint -> GLint -> GLint -> GLint -> IO ())
  ->         GLint -> GLint -> GLint -> GLint -> IO ()

{-# NOINLINE ptr_glUniform3i #-}
ptr_glUniform3i :: FunPtr (GLint -> GLint -> GLint -> GLint -> IO ())
ptr_glUniform3i = unsafePerformIO $ getCommand "glUniform3i"

-- glUniform3i64NV -------------------------------------------------------------

glUniform3i64NV
  :: GLint -- ^ @location@.
  -> GLint64EXT -- ^ @x@.
  -> GLint64EXT -- ^ @y@.
  -> GLint64EXT -- ^ @z@.
  -> IO ()
glUniform3i64NV = dyn_glUniform3i64NV ptr_glUniform3i64NV

foreign import CALLCONV "dynamic" dyn_glUniform3i64NV
  :: FunPtr (GLint -> GLint64EXT -> GLint64EXT -> GLint64EXT -> IO ())
  ->         GLint -> GLint64EXT -> GLint64EXT -> GLint64EXT -> IO ()

{-# NOINLINE ptr_glUniform3i64NV #-}
ptr_glUniform3i64NV :: FunPtr (GLint -> GLint64EXT -> GLint64EXT -> GLint64EXT -> IO ())
ptr_glUniform3i64NV = unsafePerformIO $ getCommand "glUniform3i64NV"

-- glUniform3i64vNV ------------------------------------------------------------

glUniform3i64vNV
  :: GLint -- ^ @location@.
  -> GLsizei -- ^ @count@.
  -> Ptr GLint64EXT -- ^ @value@ pointing to @count*3@ elements of type @GLint64EXT@.
  -> IO ()
glUniform3i64vNV = dyn_glUniform3i64vNV ptr_glUniform3i64vNV

foreign import CALLCONV "dynamic" dyn_glUniform3i64vNV
  :: FunPtr (GLint -> GLsizei -> Ptr GLint64EXT -> IO ())
  ->         GLint -> GLsizei -> Ptr GLint64EXT -> IO ()

{-# NOINLINE ptr_glUniform3i64vNV #-}
ptr_glUniform3i64vNV :: FunPtr (GLint -> GLsizei -> Ptr GLint64EXT -> IO ())
ptr_glUniform3i64vNV = unsafePerformIO $ getCommand "glUniform3i64vNV"

-- glUniform3iARB --------------------------------------------------------------

glUniform3iARB
  :: GLint -- ^ @location@.
  -> GLint -- ^ @v0@.
  -> GLint -- ^ @v1@.
  -> GLint -- ^ @v2@.
  -> IO ()
glUniform3iARB = dyn_glUniform3iARB ptr_glUniform3iARB

foreign import CALLCONV "dynamic" dyn_glUniform3iARB
  :: FunPtr (GLint -> GLint -> GLint -> GLint -> IO ())
  ->         GLint -> GLint -> GLint -> GLint -> IO ()

{-# NOINLINE ptr_glUniform3iARB #-}
ptr_glUniform3iARB :: FunPtr (GLint -> GLint -> GLint -> GLint -> IO ())
ptr_glUniform3iARB = unsafePerformIO $ getCommand "glUniform3iARB"

-- glUniform3iv ----------------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glUniform.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glUniform.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glUniform.xhtml OpenGL 4.x>
glUniform3iv
  :: GLint -- ^ @location@.
  -> GLsizei -- ^ @count@.
  -> Ptr GLint -- ^ @value@ pointing to @count*3@ elements of type @GLint@.
  -> IO ()
glUniform3iv = dyn_glUniform3iv ptr_glUniform3iv

foreign import CALLCONV "dynamic" dyn_glUniform3iv
  :: FunPtr (GLint -> GLsizei -> Ptr GLint -> IO ())
  ->         GLint -> GLsizei -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glUniform3iv #-}
ptr_glUniform3iv :: FunPtr (GLint -> GLsizei -> Ptr GLint -> IO ())
ptr_glUniform3iv = unsafePerformIO $ getCommand "glUniform3iv"

-- glUniform3ivARB -------------------------------------------------------------

glUniform3ivARB
  :: GLint -- ^ @location@.
  -> GLsizei -- ^ @count@.
  -> Ptr GLint -- ^ @value@ pointing to @count*3@ elements of type @GLint@.
  -> IO ()
glUniform3ivARB = dyn_glUniform3ivARB ptr_glUniform3ivARB

foreign import CALLCONV "dynamic" dyn_glUniform3ivARB
  :: FunPtr (GLint -> GLsizei -> Ptr GLint -> IO ())
  ->         GLint -> GLsizei -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glUniform3ivARB #-}
ptr_glUniform3ivARB :: FunPtr (GLint -> GLsizei -> Ptr GLint -> IO ())
ptr_glUniform3ivARB = unsafePerformIO $ getCommand "glUniform3ivARB"

-- glUniform3ui ----------------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glUniform.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glUniform.xhtml OpenGL 4.x>
glUniform3ui
  :: GLint -- ^ @location@.
  -> GLuint -- ^ @v0@.
  -> GLuint -- ^ @v1@.
  -> GLuint -- ^ @v2@.
  -> IO ()
glUniform3ui = dyn_glUniform3ui ptr_glUniform3ui

foreign import CALLCONV "dynamic" dyn_glUniform3ui
  :: FunPtr (GLint -> GLuint -> GLuint -> GLuint -> IO ())
  ->         GLint -> GLuint -> GLuint -> GLuint -> IO ()

{-# NOINLINE ptr_glUniform3ui #-}
ptr_glUniform3ui :: FunPtr (GLint -> GLuint -> GLuint -> GLuint -> IO ())
ptr_glUniform3ui = unsafePerformIO $ getCommand "glUniform3ui"

-- glUniform3ui64NV ------------------------------------------------------------

glUniform3ui64NV
  :: GLint -- ^ @location@.
  -> GLuint64EXT -- ^ @x@.
  -> GLuint64EXT -- ^ @y@.
  -> GLuint64EXT -- ^ @z@.
  -> IO ()
glUniform3ui64NV = dyn_glUniform3ui64NV ptr_glUniform3ui64NV

foreign import CALLCONV "dynamic" dyn_glUniform3ui64NV
  :: FunPtr (GLint -> GLuint64EXT -> GLuint64EXT -> GLuint64EXT -> IO ())
  ->         GLint -> GLuint64EXT -> GLuint64EXT -> GLuint64EXT -> IO ()

{-# NOINLINE ptr_glUniform3ui64NV #-}
ptr_glUniform3ui64NV :: FunPtr (GLint -> GLuint64EXT -> GLuint64EXT -> GLuint64EXT -> IO ())
ptr_glUniform3ui64NV = unsafePerformIO $ getCommand "glUniform3ui64NV"

-- glUniform3ui64vNV -----------------------------------------------------------

glUniform3ui64vNV
  :: GLint -- ^ @location@.
  -> GLsizei -- ^ @count@.
  -> Ptr GLuint64EXT -- ^ @value@ pointing to @count*3@ elements of type @GLuint64EXT@.
  -> IO ()
glUniform3ui64vNV = dyn_glUniform3ui64vNV ptr_glUniform3ui64vNV

foreign import CALLCONV "dynamic" dyn_glUniform3ui64vNV
  :: FunPtr (GLint -> GLsizei -> Ptr GLuint64EXT -> IO ())
  ->         GLint -> GLsizei -> Ptr GLuint64EXT -> IO ()

{-# NOINLINE ptr_glUniform3ui64vNV #-}
ptr_glUniform3ui64vNV :: FunPtr (GLint -> GLsizei -> Ptr GLuint64EXT -> IO ())
ptr_glUniform3ui64vNV = unsafePerformIO $ getCommand "glUniform3ui64vNV"

-- glUniform3uiEXT -------------------------------------------------------------

glUniform3uiEXT
  :: GLint -- ^ @location@.
  -> GLuint -- ^ @v0@.
  -> GLuint -- ^ @v1@.
  -> GLuint -- ^ @v2@.
  -> IO ()
glUniform3uiEXT = dyn_glUniform3uiEXT ptr_glUniform3uiEXT

foreign import CALLCONV "dynamic" dyn_glUniform3uiEXT
  :: FunPtr (GLint -> GLuint -> GLuint -> GLuint -> IO ())
  ->         GLint -> GLuint -> GLuint -> GLuint -> IO ()

{-# NOINLINE ptr_glUniform3uiEXT #-}
ptr_glUniform3uiEXT :: FunPtr (GLint -> GLuint -> GLuint -> GLuint -> IO ())
ptr_glUniform3uiEXT = unsafePerformIO $ getCommand "glUniform3uiEXT"

-- glUniform3uiv ---------------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glUniform.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glUniform.xhtml OpenGL 4.x>
glUniform3uiv
  :: GLint -- ^ @location@.
  -> GLsizei -- ^ @count@.
  -> Ptr GLuint -- ^ @value@ pointing to @count*3@ elements of type @GLuint@.
  -> IO ()
glUniform3uiv = dyn_glUniform3uiv ptr_glUniform3uiv

foreign import CALLCONV "dynamic" dyn_glUniform3uiv
  :: FunPtr (GLint -> GLsizei -> Ptr GLuint -> IO ())
  ->         GLint -> GLsizei -> Ptr GLuint -> IO ()

{-# NOINLINE ptr_glUniform3uiv #-}
ptr_glUniform3uiv :: FunPtr (GLint -> GLsizei -> Ptr GLuint -> IO ())
ptr_glUniform3uiv = unsafePerformIO $ getCommand "glUniform3uiv"

-- glUniform3uivEXT ------------------------------------------------------------

glUniform3uivEXT
  :: GLint -- ^ @location@.
  -> GLsizei -- ^ @count@.
  -> Ptr GLuint -- ^ @value@ pointing to @count*3@ elements of type @GLuint@.
  -> IO ()
glUniform3uivEXT = dyn_glUniform3uivEXT ptr_glUniform3uivEXT

foreign import CALLCONV "dynamic" dyn_glUniform3uivEXT
  :: FunPtr (GLint -> GLsizei -> Ptr GLuint -> IO ())
  ->         GLint -> GLsizei -> Ptr GLuint -> IO ()

{-# NOINLINE ptr_glUniform3uivEXT #-}
ptr_glUniform3uivEXT :: FunPtr (GLint -> GLsizei -> Ptr GLuint -> IO ())
ptr_glUniform3uivEXT = unsafePerformIO $ getCommand "glUniform3uivEXT"

-- glUniform4d -----------------------------------------------------------------

glUniform4d
  :: GLint -- ^ @location@.
  -> GLdouble -- ^ @x@.
  -> GLdouble -- ^ @y@.
  -> GLdouble -- ^ @z@.
  -> GLdouble -- ^ @w@.
  -> IO ()
glUniform4d = dyn_glUniform4d ptr_glUniform4d

foreign import CALLCONV "dynamic" dyn_glUniform4d
  :: FunPtr (GLint -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ())
  ->         GLint -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ()

{-# NOINLINE ptr_glUniform4d #-}
ptr_glUniform4d :: FunPtr (GLint -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ())
ptr_glUniform4d = unsafePerformIO $ getCommand "glUniform4d"

-- glUniform4dv ----------------------------------------------------------------

glUniform4dv
  :: GLint -- ^ @location@.
  -> GLsizei -- ^ @count@.
  -> Ptr GLdouble -- ^ @value@ pointing to @count*4@ elements of type @GLdouble@.
  -> IO ()
glUniform4dv = dyn_glUniform4dv ptr_glUniform4dv

foreign import CALLCONV "dynamic" dyn_glUniform4dv
  :: FunPtr (GLint -> GLsizei -> Ptr GLdouble -> IO ())
  ->         GLint -> GLsizei -> Ptr GLdouble -> IO ()

{-# NOINLINE ptr_glUniform4dv #-}
ptr_glUniform4dv :: FunPtr (GLint -> GLsizei -> Ptr GLdouble -> IO ())
ptr_glUniform4dv = unsafePerformIO $ getCommand "glUniform4dv"

-- glUniform4f -----------------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glUniform.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glUniform.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glUniform.xhtml OpenGL 4.x>
glUniform4f
  :: GLint -- ^ @location@.
  -> GLfloat -- ^ @v0@.
  -> GLfloat -- ^ @v1@.
  -> GLfloat -- ^ @v2@.
  -> GLfloat -- ^ @v3@.
  -> IO ()
glUniform4f = dyn_glUniform4f ptr_glUniform4f

foreign import CALLCONV "dynamic" dyn_glUniform4f
  :: FunPtr (GLint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
  ->         GLint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ()

{-# NOINLINE ptr_glUniform4f #-}
ptr_glUniform4f :: FunPtr (GLint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
ptr_glUniform4f = unsafePerformIO $ getCommand "glUniform4f"

-- glUniform4fARB --------------------------------------------------------------

glUniform4fARB
  :: GLint -- ^ @location@.
  -> GLfloat -- ^ @v0@.
  -> GLfloat -- ^ @v1@.
  -> GLfloat -- ^ @v2@.
  -> GLfloat -- ^ @v3@.
  -> IO ()
glUniform4fARB = dyn_glUniform4fARB ptr_glUniform4fARB

foreign import CALLCONV "dynamic" dyn_glUniform4fARB
  :: FunPtr (GLint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
  ->         GLint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ()

{-# NOINLINE ptr_glUniform4fARB #-}
ptr_glUniform4fARB :: FunPtr (GLint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
ptr_glUniform4fARB = unsafePerformIO $ getCommand "glUniform4fARB"

-- glUniform4fv ----------------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glUniform.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glUniform.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glUniform.xhtml OpenGL 4.x>
glUniform4fv
  :: GLint -- ^ @location@.
  -> GLsizei -- ^ @count@.
  -> Ptr GLfloat -- ^ @value@ pointing to @count*4@ elements of type @GLfloat@.
  -> IO ()
glUniform4fv = dyn_glUniform4fv ptr_glUniform4fv

foreign import CALLCONV "dynamic" dyn_glUniform4fv
  :: FunPtr (GLint -> GLsizei -> Ptr GLfloat -> IO ())
  ->         GLint -> GLsizei -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glUniform4fv #-}
ptr_glUniform4fv :: FunPtr (GLint -> GLsizei -> Ptr GLfloat -> IO ())
ptr_glUniform4fv = unsafePerformIO $ getCommand "glUniform4fv"

-- glUniform4fvARB -------------------------------------------------------------

glUniform4fvARB
  :: GLint -- ^ @location@.
  -> GLsizei -- ^ @count@.
  -> Ptr GLfloat -- ^ @value@ pointing to @count*4@ elements of type @GLfloat@.
  -> IO ()
glUniform4fvARB = dyn_glUniform4fvARB ptr_glUniform4fvARB

foreign import CALLCONV "dynamic" dyn_glUniform4fvARB
  :: FunPtr (GLint -> GLsizei -> Ptr GLfloat -> IO ())
  ->         GLint -> GLsizei -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glUniform4fvARB #-}
ptr_glUniform4fvARB :: FunPtr (GLint -> GLsizei -> Ptr GLfloat -> IO ())
ptr_glUniform4fvARB = unsafePerformIO $ getCommand "glUniform4fvARB"

-- glUniform4i -----------------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glUniform.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glUniform.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glUniform.xhtml OpenGL 4.x>
glUniform4i
  :: GLint -- ^ @location@.
  -> GLint -- ^ @v0@.
  -> GLint -- ^ @v1@.
  -> GLint -- ^ @v2@.
  -> GLint -- ^ @v3@.
  -> IO ()
glUniform4i = dyn_glUniform4i ptr_glUniform4i

foreign import CALLCONV "dynamic" dyn_glUniform4i
  :: FunPtr (GLint -> GLint -> GLint -> GLint -> GLint -> IO ())
  ->         GLint -> GLint -> GLint -> GLint -> GLint -> IO ()

{-# NOINLINE ptr_glUniform4i #-}
ptr_glUniform4i :: FunPtr (GLint -> GLint -> GLint -> GLint -> GLint -> IO ())
ptr_glUniform4i = unsafePerformIO $ getCommand "glUniform4i"

-- glUniform4i64NV -------------------------------------------------------------

glUniform4i64NV
  :: GLint -- ^ @location@.
  -> GLint64EXT -- ^ @x@.
  -> GLint64EXT -- ^ @y@.
  -> GLint64EXT -- ^ @z@.
  -> GLint64EXT -- ^ @w@.
  -> IO ()
glUniform4i64NV = dyn_glUniform4i64NV ptr_glUniform4i64NV

foreign import CALLCONV "dynamic" dyn_glUniform4i64NV
  :: FunPtr (GLint -> GLint64EXT -> GLint64EXT -> GLint64EXT -> GLint64EXT -> IO ())
  ->         GLint -> GLint64EXT -> GLint64EXT -> GLint64EXT -> GLint64EXT -> IO ()

{-# NOINLINE ptr_glUniform4i64NV #-}
ptr_glUniform4i64NV :: FunPtr (GLint -> GLint64EXT -> GLint64EXT -> GLint64EXT -> GLint64EXT -> IO ())
ptr_glUniform4i64NV = unsafePerformIO $ getCommand "glUniform4i64NV"

-- glUniform4i64vNV ------------------------------------------------------------

glUniform4i64vNV
  :: GLint -- ^ @location@.
  -> GLsizei -- ^ @count@.
  -> Ptr GLint64EXT -- ^ @value@ pointing to @count*4@ elements of type @GLint64EXT@.
  -> IO ()
glUniform4i64vNV = dyn_glUniform4i64vNV ptr_glUniform4i64vNV

foreign import CALLCONV "dynamic" dyn_glUniform4i64vNV
  :: FunPtr (GLint -> GLsizei -> Ptr GLint64EXT -> IO ())
  ->         GLint -> GLsizei -> Ptr GLint64EXT -> IO ()

{-# NOINLINE ptr_glUniform4i64vNV #-}
ptr_glUniform4i64vNV :: FunPtr (GLint -> GLsizei -> Ptr GLint64EXT -> IO ())
ptr_glUniform4i64vNV = unsafePerformIO $ getCommand "glUniform4i64vNV"

-- glUniform4iARB --------------------------------------------------------------

glUniform4iARB
  :: GLint -- ^ @location@.
  -> GLint -- ^ @v0@.
  -> GLint -- ^ @v1@.
  -> GLint -- ^ @v2@.
  -> GLint -- ^ @v3@.
  -> IO ()
glUniform4iARB = dyn_glUniform4iARB ptr_glUniform4iARB

foreign import CALLCONV "dynamic" dyn_glUniform4iARB
  :: FunPtr (GLint -> GLint -> GLint -> GLint -> GLint -> IO ())
  ->         GLint -> GLint -> GLint -> GLint -> GLint -> IO ()

{-# NOINLINE ptr_glUniform4iARB #-}
ptr_glUniform4iARB :: FunPtr (GLint -> GLint -> GLint -> GLint -> GLint -> IO ())
ptr_glUniform4iARB = unsafePerformIO $ getCommand "glUniform4iARB"

-- glUniform4iv ----------------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glUniform.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glUniform.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glUniform.xhtml OpenGL 4.x>
glUniform4iv
  :: GLint -- ^ @location@.
  -> GLsizei -- ^ @count@.
  -> Ptr GLint -- ^ @value@ pointing to @count*4@ elements of type @GLint@.
  -> IO ()
glUniform4iv = dyn_glUniform4iv ptr_glUniform4iv

foreign import CALLCONV "dynamic" dyn_glUniform4iv
  :: FunPtr (GLint -> GLsizei -> Ptr GLint -> IO ())
  ->         GLint -> GLsizei -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glUniform4iv #-}
ptr_glUniform4iv :: FunPtr (GLint -> GLsizei -> Ptr GLint -> IO ())
ptr_glUniform4iv = unsafePerformIO $ getCommand "glUniform4iv"

-- glUniform4ivARB -------------------------------------------------------------

glUniform4ivARB
  :: GLint -- ^ @location@.
  -> GLsizei -- ^ @count@.
  -> Ptr GLint -- ^ @value@ pointing to @count*4@ elements of type @GLint@.
  -> IO ()
glUniform4ivARB = dyn_glUniform4ivARB ptr_glUniform4ivARB

foreign import CALLCONV "dynamic" dyn_glUniform4ivARB
  :: FunPtr (GLint -> GLsizei -> Ptr GLint -> IO ())
  ->         GLint -> GLsizei -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glUniform4ivARB #-}
ptr_glUniform4ivARB :: FunPtr (GLint -> GLsizei -> Ptr GLint -> IO ())
ptr_glUniform4ivARB = unsafePerformIO $ getCommand "glUniform4ivARB"

-- glUniform4ui ----------------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glUniform.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glUniform.xhtml OpenGL 4.x>
glUniform4ui
  :: GLint -- ^ @location@.
  -> GLuint -- ^ @v0@.
  -> GLuint -- ^ @v1@.
  -> GLuint -- ^ @v2@.
  -> GLuint -- ^ @v3@.
  -> IO ()
glUniform4ui = dyn_glUniform4ui ptr_glUniform4ui

foreign import CALLCONV "dynamic" dyn_glUniform4ui
  :: FunPtr (GLint -> GLuint -> GLuint -> GLuint -> GLuint -> IO ())
  ->         GLint -> GLuint -> GLuint -> GLuint -> GLuint -> IO ()

{-# NOINLINE ptr_glUniform4ui #-}
ptr_glUniform4ui :: FunPtr (GLint -> GLuint -> GLuint -> GLuint -> GLuint -> IO ())
ptr_glUniform4ui = unsafePerformIO $ getCommand "glUniform4ui"

-- glUniform4ui64NV ------------------------------------------------------------

glUniform4ui64NV
  :: GLint -- ^ @location@.
  -> GLuint64EXT -- ^ @x@.
  -> GLuint64EXT -- ^ @y@.
  -> GLuint64EXT -- ^ @z@.
  -> GLuint64EXT -- ^ @w@.
  -> IO ()
glUniform4ui64NV = dyn_glUniform4ui64NV ptr_glUniform4ui64NV

foreign import CALLCONV "dynamic" dyn_glUniform4ui64NV
  :: FunPtr (GLint -> GLuint64EXT -> GLuint64EXT -> GLuint64EXT -> GLuint64EXT -> IO ())
  ->         GLint -> GLuint64EXT -> GLuint64EXT -> GLuint64EXT -> GLuint64EXT -> IO ()

{-# NOINLINE ptr_glUniform4ui64NV #-}
ptr_glUniform4ui64NV :: FunPtr (GLint -> GLuint64EXT -> GLuint64EXT -> GLuint64EXT -> GLuint64EXT -> IO ())
ptr_glUniform4ui64NV = unsafePerformIO $ getCommand "glUniform4ui64NV"

-- glUniform4ui64vNV -----------------------------------------------------------

glUniform4ui64vNV
  :: GLint -- ^ @location@.
  -> GLsizei -- ^ @count@.
  -> Ptr GLuint64EXT -- ^ @value@ pointing to @count*4@ elements of type @GLuint64EXT@.
  -> IO ()
glUniform4ui64vNV = dyn_glUniform4ui64vNV ptr_glUniform4ui64vNV

foreign import CALLCONV "dynamic" dyn_glUniform4ui64vNV
  :: FunPtr (GLint -> GLsizei -> Ptr GLuint64EXT -> IO ())
  ->         GLint -> GLsizei -> Ptr GLuint64EXT -> IO ()

{-# NOINLINE ptr_glUniform4ui64vNV #-}
ptr_glUniform4ui64vNV :: FunPtr (GLint -> GLsizei -> Ptr GLuint64EXT -> IO ())
ptr_glUniform4ui64vNV = unsafePerformIO $ getCommand "glUniform4ui64vNV"

-- glUniform4uiEXT -------------------------------------------------------------

glUniform4uiEXT
  :: GLint -- ^ @location@.
  -> GLuint -- ^ @v0@.
  -> GLuint -- ^ @v1@.
  -> GLuint -- ^ @v2@.
  -> GLuint -- ^ @v3@.
  -> IO ()
glUniform4uiEXT = dyn_glUniform4uiEXT ptr_glUniform4uiEXT

foreign import CALLCONV "dynamic" dyn_glUniform4uiEXT
  :: FunPtr (GLint -> GLuint -> GLuint -> GLuint -> GLuint -> IO ())
  ->         GLint -> GLuint -> GLuint -> GLuint -> GLuint -> IO ()

{-# NOINLINE ptr_glUniform4uiEXT #-}
ptr_glUniform4uiEXT :: FunPtr (GLint -> GLuint -> GLuint -> GLuint -> GLuint -> IO ())
ptr_glUniform4uiEXT = unsafePerformIO $ getCommand "glUniform4uiEXT"

-- glUniform4uiv ---------------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glUniform.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glUniform.xhtml OpenGL 4.x>
glUniform4uiv
  :: GLint -- ^ @location@.
  -> GLsizei -- ^ @count@.
  -> Ptr GLuint -- ^ @value@ pointing to @count*4@ elements of type @GLuint@.
  -> IO ()
glUniform4uiv = dyn_glUniform4uiv ptr_glUniform4uiv

foreign import CALLCONV "dynamic" dyn_glUniform4uiv
  :: FunPtr (GLint -> GLsizei -> Ptr GLuint -> IO ())
  ->         GLint -> GLsizei -> Ptr GLuint -> IO ()

{-# NOINLINE ptr_glUniform4uiv #-}
ptr_glUniform4uiv :: FunPtr (GLint -> GLsizei -> Ptr GLuint -> IO ())
ptr_glUniform4uiv = unsafePerformIO $ getCommand "glUniform4uiv"

-- glUniform4uivEXT ------------------------------------------------------------

glUniform4uivEXT
  :: GLint -- ^ @location@.
  -> GLsizei -- ^ @count@.
  -> Ptr GLuint -- ^ @value@ pointing to @count*4@ elements of type @GLuint@.
  -> IO ()
glUniform4uivEXT = dyn_glUniform4uivEXT ptr_glUniform4uivEXT

foreign import CALLCONV "dynamic" dyn_glUniform4uivEXT
  :: FunPtr (GLint -> GLsizei -> Ptr GLuint -> IO ())
  ->         GLint -> GLsizei -> Ptr GLuint -> IO ()

{-# NOINLINE ptr_glUniform4uivEXT #-}
ptr_glUniform4uivEXT :: FunPtr (GLint -> GLsizei -> Ptr GLuint -> IO ())
ptr_glUniform4uivEXT = unsafePerformIO $ getCommand "glUniform4uivEXT"

-- glUniformBlockBinding -------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glUniformBlockBinding.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glUniformBlockBinding.xhtml OpenGL 4.x>
glUniformBlockBinding
  :: GLuint -- ^ @program@.
  -> GLuint -- ^ @uniformBlockIndex@.
  -> GLuint -- ^ @uniformBlockBinding@.
  -> IO ()
glUniformBlockBinding = dyn_glUniformBlockBinding ptr_glUniformBlockBinding

foreign import CALLCONV "dynamic" dyn_glUniformBlockBinding
  :: FunPtr (GLuint -> GLuint -> GLuint -> IO ())
  ->         GLuint -> GLuint -> GLuint -> IO ()

{-# NOINLINE ptr_glUniformBlockBinding #-}
ptr_glUniformBlockBinding :: FunPtr (GLuint -> GLuint -> GLuint -> IO ())
ptr_glUniformBlockBinding = unsafePerformIO $ getCommand "glUniformBlockBinding"

-- glUniformBufferEXT ----------------------------------------------------------

glUniformBufferEXT
  :: GLuint -- ^ @program@.
  -> GLint -- ^ @location@.
  -> GLuint -- ^ @buffer@.
  -> IO ()
glUniformBufferEXT = dyn_glUniformBufferEXT ptr_glUniformBufferEXT

foreign import CALLCONV "dynamic" dyn_glUniformBufferEXT
  :: FunPtr (GLuint -> GLint -> GLuint -> IO ())
  ->         GLuint -> GLint -> GLuint -> IO ()

{-# NOINLINE ptr_glUniformBufferEXT #-}
ptr_glUniformBufferEXT :: FunPtr (GLuint -> GLint -> GLuint -> IO ())
ptr_glUniformBufferEXT = unsafePerformIO $ getCommand "glUniformBufferEXT"

-- glUniformHandleui64ARB ------------------------------------------------------

glUniformHandleui64ARB
  :: GLint -- ^ @location@.
  -> GLuint64 -- ^ @value@.
  -> IO ()
glUniformHandleui64ARB = dyn_glUniformHandleui64ARB ptr_glUniformHandleui64ARB

foreign import CALLCONV "dynamic" dyn_glUniformHandleui64ARB
  :: FunPtr (GLint -> GLuint64 -> IO ())
  ->         GLint -> GLuint64 -> IO ()

{-# NOINLINE ptr_glUniformHandleui64ARB #-}
ptr_glUniformHandleui64ARB :: FunPtr (GLint -> GLuint64 -> IO ())
ptr_glUniformHandleui64ARB = unsafePerformIO $ getCommand "glUniformHandleui64ARB"

-- glUniformHandleui64NV -------------------------------------------------------

glUniformHandleui64NV
  :: GLint -- ^ @location@.
  -> GLuint64 -- ^ @value@.
  -> IO ()
glUniformHandleui64NV = dyn_glUniformHandleui64NV ptr_glUniformHandleui64NV

foreign import CALLCONV "dynamic" dyn_glUniformHandleui64NV
  :: FunPtr (GLint -> GLuint64 -> IO ())
  ->         GLint -> GLuint64 -> IO ()

{-# NOINLINE ptr_glUniformHandleui64NV #-}
ptr_glUniformHandleui64NV :: FunPtr (GLint -> GLuint64 -> IO ())
ptr_glUniformHandleui64NV = unsafePerformIO $ getCommand "glUniformHandleui64NV"

-- glUniformHandleui64vARB -----------------------------------------------------

glUniformHandleui64vARB
  :: GLint -- ^ @location@.
  -> GLsizei -- ^ @count@.
  -> Ptr GLuint64 -- ^ @value@ pointing to @count@ elements of type @GLuint64@.
  -> IO ()
glUniformHandleui64vARB = dyn_glUniformHandleui64vARB ptr_glUniformHandleui64vARB

foreign import CALLCONV "dynamic" dyn_glUniformHandleui64vARB
  :: FunPtr (GLint -> GLsizei -> Ptr GLuint64 -> IO ())
  ->         GLint -> GLsizei -> Ptr GLuint64 -> IO ()

{-# NOINLINE ptr_glUniformHandleui64vARB #-}
ptr_glUniformHandleui64vARB :: FunPtr (GLint -> GLsizei -> Ptr GLuint64 -> IO ())
ptr_glUniformHandleui64vARB = unsafePerformIO $ getCommand "glUniformHandleui64vARB"

-- glUniformHandleui64vNV ------------------------------------------------------

glUniformHandleui64vNV
  :: GLint -- ^ @location@.
  -> GLsizei -- ^ @count@.
  -> Ptr GLuint64 -- ^ @value@ pointing to @count@ elements of type @GLuint64@.
  -> IO ()
glUniformHandleui64vNV = dyn_glUniformHandleui64vNV ptr_glUniformHandleui64vNV

foreign import CALLCONV "dynamic" dyn_glUniformHandleui64vNV
  :: FunPtr (GLint -> GLsizei -> Ptr GLuint64 -> IO ())
  ->         GLint -> GLsizei -> Ptr GLuint64 -> IO ()

{-# NOINLINE ptr_glUniformHandleui64vNV #-}
ptr_glUniformHandleui64vNV :: FunPtr (GLint -> GLsizei -> Ptr GLuint64 -> IO ())
ptr_glUniformHandleui64vNV = unsafePerformIO $ getCommand "glUniformHandleui64vNV"

-- glUniformMatrix2dv ----------------------------------------------------------

glUniformMatrix2dv
  :: GLint -- ^ @location@.
  -> GLsizei -- ^ @count@.
  -> GLboolean -- ^ @transpose@ of type @Boolean@.
  -> Ptr GLdouble -- ^ @value@ pointing to @count*4@ elements of type @GLdouble@.
  -> IO ()
glUniformMatrix2dv = dyn_glUniformMatrix2dv ptr_glUniformMatrix2dv

foreign import CALLCONV "dynamic" dyn_glUniformMatrix2dv
  :: FunPtr (GLint -> GLsizei -> GLboolean -> Ptr GLdouble -> IO ())
  ->         GLint -> GLsizei -> GLboolean -> Ptr GLdouble -> IO ()

{-# NOINLINE ptr_glUniformMatrix2dv #-}
ptr_glUniformMatrix2dv :: FunPtr (GLint -> GLsizei -> GLboolean -> Ptr GLdouble -> IO ())
ptr_glUniformMatrix2dv = unsafePerformIO $ getCommand "glUniformMatrix2dv"

-- glUniformMatrix2fv ----------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glUniform.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glUniform.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glUniform.xhtml OpenGL 4.x>
glUniformMatrix2fv
  :: GLint -- ^ @location@.
  -> GLsizei -- ^ @count@.
  -> GLboolean -- ^ @transpose@ of type @Boolean@.
  -> Ptr GLfloat -- ^ @value@ pointing to @count*4@ elements of type @GLfloat@.
  -> IO ()
glUniformMatrix2fv = dyn_glUniformMatrix2fv ptr_glUniformMatrix2fv

foreign import CALLCONV "dynamic" dyn_glUniformMatrix2fv
  :: FunPtr (GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ())
  ->         GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glUniformMatrix2fv #-}
ptr_glUniformMatrix2fv :: FunPtr (GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ())
ptr_glUniformMatrix2fv = unsafePerformIO $ getCommand "glUniformMatrix2fv"

-- glUniformMatrix2fvARB -------------------------------------------------------

glUniformMatrix2fvARB
  :: GLint -- ^ @location@.
  -> GLsizei -- ^ @count@.
  -> GLboolean -- ^ @transpose@ of type @Boolean@.
  -> Ptr GLfloat -- ^ @value@ pointing to @count*4@ elements of type @GLfloat@.
  -> IO ()
glUniformMatrix2fvARB = dyn_glUniformMatrix2fvARB ptr_glUniformMatrix2fvARB

foreign import CALLCONV "dynamic" dyn_glUniformMatrix2fvARB
  :: FunPtr (GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ())
  ->         GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glUniformMatrix2fvARB #-}
ptr_glUniformMatrix2fvARB :: FunPtr (GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ())
ptr_glUniformMatrix2fvARB = unsafePerformIO $ getCommand "glUniformMatrix2fvARB"

-- glUniformMatrix2x3dv --------------------------------------------------------

glUniformMatrix2x3dv
  :: GLint -- ^ @location@.
  -> GLsizei -- ^ @count@.
  -> GLboolean -- ^ @transpose@ of type @Boolean@.
  -> Ptr GLdouble -- ^ @value@ pointing to @count*6@ elements of type @GLdouble@.
  -> IO ()
glUniformMatrix2x3dv = dyn_glUniformMatrix2x3dv ptr_glUniformMatrix2x3dv

foreign import CALLCONV "dynamic" dyn_glUniformMatrix2x3dv
  :: FunPtr (GLint -> GLsizei -> GLboolean -> Ptr GLdouble -> IO ())
  ->         GLint -> GLsizei -> GLboolean -> Ptr GLdouble -> IO ()

{-# NOINLINE ptr_glUniformMatrix2x3dv #-}
ptr_glUniformMatrix2x3dv :: FunPtr (GLint -> GLsizei -> GLboolean -> Ptr GLdouble -> IO ())
ptr_glUniformMatrix2x3dv = unsafePerformIO $ getCommand "glUniformMatrix2x3dv"

-- glUniformMatrix2x3fv --------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glUniform.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glUniform.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glUniform.xhtml OpenGL 4.x>
glUniformMatrix2x3fv
  :: GLint -- ^ @location@.
  -> GLsizei -- ^ @count@.
  -> GLboolean -- ^ @transpose@ of type @Boolean@.
  -> Ptr GLfloat -- ^ @value@ pointing to @count*6@ elements of type @GLfloat@.
  -> IO ()
glUniformMatrix2x3fv = dyn_glUniformMatrix2x3fv ptr_glUniformMatrix2x3fv

foreign import CALLCONV "dynamic" dyn_glUniformMatrix2x3fv
  :: FunPtr (GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ())
  ->         GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glUniformMatrix2x3fv #-}
ptr_glUniformMatrix2x3fv :: FunPtr (GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ())
ptr_glUniformMatrix2x3fv = unsafePerformIO $ getCommand "glUniformMatrix2x3fv"

-- glUniformMatrix2x3fvNV ------------------------------------------------------

glUniformMatrix2x3fvNV
  :: GLint -- ^ @location@.
  -> GLsizei -- ^ @count@.
  -> GLboolean -- ^ @transpose@ of type @Boolean@.
  -> Ptr GLfloat -- ^ @value@ pointing to @count*6@ elements of type @GLfloat@.
  -> IO ()
glUniformMatrix2x3fvNV = dyn_glUniformMatrix2x3fvNV ptr_glUniformMatrix2x3fvNV

foreign import CALLCONV "dynamic" dyn_glUniformMatrix2x3fvNV
  :: FunPtr (GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ())
  ->         GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glUniformMatrix2x3fvNV #-}
ptr_glUniformMatrix2x3fvNV :: FunPtr (GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ())
ptr_glUniformMatrix2x3fvNV = unsafePerformIO $ getCommand "glUniformMatrix2x3fvNV"

-- glUniformMatrix2x4dv --------------------------------------------------------

glUniformMatrix2x4dv
  :: GLint -- ^ @location@.
  -> GLsizei -- ^ @count@.
  -> GLboolean -- ^ @transpose@ of type @Boolean@.
  -> Ptr GLdouble -- ^ @value@ pointing to @count*8@ elements of type @GLdouble@.
  -> IO ()
glUniformMatrix2x4dv = dyn_glUniformMatrix2x4dv ptr_glUniformMatrix2x4dv

foreign import CALLCONV "dynamic" dyn_glUniformMatrix2x4dv
  :: FunPtr (GLint -> GLsizei -> GLboolean -> Ptr GLdouble -> IO ())
  ->         GLint -> GLsizei -> GLboolean -> Ptr GLdouble -> IO ()

{-# NOINLINE ptr_glUniformMatrix2x4dv #-}
ptr_glUniformMatrix2x4dv :: FunPtr (GLint -> GLsizei -> GLboolean -> Ptr GLdouble -> IO ())
ptr_glUniformMatrix2x4dv = unsafePerformIO $ getCommand "glUniformMatrix2x4dv"

-- glUniformMatrix2x4fv --------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glUniform.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glUniform.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glUniform.xhtml OpenGL 4.x>
glUniformMatrix2x4fv
  :: GLint -- ^ @location@.
  -> GLsizei -- ^ @count@.
  -> GLboolean -- ^ @transpose@ of type @Boolean@.
  -> Ptr GLfloat -- ^ @value@ pointing to @count*8@ elements of type @GLfloat@.
  -> IO ()
glUniformMatrix2x4fv = dyn_glUniformMatrix2x4fv ptr_glUniformMatrix2x4fv

foreign import CALLCONV "dynamic" dyn_glUniformMatrix2x4fv
  :: FunPtr (GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ())
  ->         GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glUniformMatrix2x4fv #-}
ptr_glUniformMatrix2x4fv :: FunPtr (GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ())
ptr_glUniformMatrix2x4fv = unsafePerformIO $ getCommand "glUniformMatrix2x4fv"

-- glUniformMatrix2x4fvNV ------------------------------------------------------

glUniformMatrix2x4fvNV
  :: GLint -- ^ @location@.
  -> GLsizei -- ^ @count@.
  -> GLboolean -- ^ @transpose@ of type @Boolean@.
  -> Ptr GLfloat -- ^ @value@ pointing to @count*8@ elements of type @GLfloat@.
  -> IO ()
glUniformMatrix2x4fvNV = dyn_glUniformMatrix2x4fvNV ptr_glUniformMatrix2x4fvNV

foreign import CALLCONV "dynamic" dyn_glUniformMatrix2x4fvNV
  :: FunPtr (GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ())
  ->         GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glUniformMatrix2x4fvNV #-}
ptr_glUniformMatrix2x4fvNV :: FunPtr (GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ())
ptr_glUniformMatrix2x4fvNV = unsafePerformIO $ getCommand "glUniformMatrix2x4fvNV"

-- glUniformMatrix3dv ----------------------------------------------------------

glUniformMatrix3dv
  :: GLint -- ^ @location@.
  -> GLsizei -- ^ @count@.
  -> GLboolean -- ^ @transpose@ of type @Boolean@.
  -> Ptr GLdouble -- ^ @value@ pointing to @count*9@ elements of type @GLdouble@.
  -> IO ()
glUniformMatrix3dv = dyn_glUniformMatrix3dv ptr_glUniformMatrix3dv

foreign import CALLCONV "dynamic" dyn_glUniformMatrix3dv
  :: FunPtr (GLint -> GLsizei -> GLboolean -> Ptr GLdouble -> IO ())
  ->         GLint -> GLsizei -> GLboolean -> Ptr GLdouble -> IO ()

{-# NOINLINE ptr_glUniformMatrix3dv #-}
ptr_glUniformMatrix3dv :: FunPtr (GLint -> GLsizei -> GLboolean -> Ptr GLdouble -> IO ())
ptr_glUniformMatrix3dv = unsafePerformIO $ getCommand "glUniformMatrix3dv"

-- glUniformMatrix3fv ----------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glUniform.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glUniform.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glUniform.xhtml OpenGL 4.x>
glUniformMatrix3fv
  :: GLint -- ^ @location@.
  -> GLsizei -- ^ @count@.
  -> GLboolean -- ^ @transpose@ of type @Boolean@.
  -> Ptr GLfloat -- ^ @value@ pointing to @count*9@ elements of type @GLfloat@.
  -> IO ()
glUniformMatrix3fv = dyn_glUniformMatrix3fv ptr_glUniformMatrix3fv

foreign import CALLCONV "dynamic" dyn_glUniformMatrix3fv
  :: FunPtr (GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ())
  ->         GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glUniformMatrix3fv #-}
ptr_glUniformMatrix3fv :: FunPtr (GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ())
ptr_glUniformMatrix3fv = unsafePerformIO $ getCommand "glUniformMatrix3fv"

-- glUniformMatrix3fvARB -------------------------------------------------------

glUniformMatrix3fvARB
  :: GLint -- ^ @location@.
  -> GLsizei -- ^ @count@.
  -> GLboolean -- ^ @transpose@ of type @Boolean@.
  -> Ptr GLfloat -- ^ @value@ pointing to @count*9@ elements of type @GLfloat@.
  -> IO ()
glUniformMatrix3fvARB = dyn_glUniformMatrix3fvARB ptr_glUniformMatrix3fvARB

foreign import CALLCONV "dynamic" dyn_glUniformMatrix3fvARB
  :: FunPtr (GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ())
  ->         GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glUniformMatrix3fvARB #-}
ptr_glUniformMatrix3fvARB :: FunPtr (GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ())
ptr_glUniformMatrix3fvARB = unsafePerformIO $ getCommand "glUniformMatrix3fvARB"

-- glUniformMatrix3x2dv --------------------------------------------------------

glUniformMatrix3x2dv
  :: GLint -- ^ @location@.
  -> GLsizei -- ^ @count@.
  -> GLboolean -- ^ @transpose@ of type @Boolean@.
  -> Ptr GLdouble -- ^ @value@ pointing to @count*6@ elements of type @GLdouble@.
  -> IO ()
glUniformMatrix3x2dv = dyn_glUniformMatrix3x2dv ptr_glUniformMatrix3x2dv

foreign import CALLCONV "dynamic" dyn_glUniformMatrix3x2dv
  :: FunPtr (GLint -> GLsizei -> GLboolean -> Ptr GLdouble -> IO ())
  ->         GLint -> GLsizei -> GLboolean -> Ptr GLdouble -> IO ()

{-# NOINLINE ptr_glUniformMatrix3x2dv #-}
ptr_glUniformMatrix3x2dv :: FunPtr (GLint -> GLsizei -> GLboolean -> Ptr GLdouble -> IO ())
ptr_glUniformMatrix3x2dv = unsafePerformIO $ getCommand "glUniformMatrix3x2dv"

-- glUniformMatrix3x2fv --------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glUniform.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glUniform.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glUniform.xhtml OpenGL 4.x>
glUniformMatrix3x2fv
  :: GLint -- ^ @location@.
  -> GLsizei -- ^ @count@.
  -> GLboolean -- ^ @transpose@ of type @Boolean@.
  -> Ptr GLfloat -- ^ @value@ pointing to @count*6@ elements of type @GLfloat@.
  -> IO ()
glUniformMatrix3x2fv = dyn_glUniformMatrix3x2fv ptr_glUniformMatrix3x2fv

foreign import CALLCONV "dynamic" dyn_glUniformMatrix3x2fv
  :: FunPtr (GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ())
  ->         GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glUniformMatrix3x2fv #-}
ptr_glUniformMatrix3x2fv :: FunPtr (GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ())
ptr_glUniformMatrix3x2fv = unsafePerformIO $ getCommand "glUniformMatrix3x2fv"

-- glUniformMatrix3x2fvNV ------------------------------------------------------

glUniformMatrix3x2fvNV
  :: GLint -- ^ @location@.
  -> GLsizei -- ^ @count@.
  -> GLboolean -- ^ @transpose@ of type @Boolean@.
  -> Ptr GLfloat -- ^ @value@ pointing to @count*6@ elements of type @GLfloat@.
  -> IO ()
glUniformMatrix3x2fvNV = dyn_glUniformMatrix3x2fvNV ptr_glUniformMatrix3x2fvNV

foreign import CALLCONV "dynamic" dyn_glUniformMatrix3x2fvNV
  :: FunPtr (GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ())
  ->         GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glUniformMatrix3x2fvNV #-}
ptr_glUniformMatrix3x2fvNV :: FunPtr (GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ())
ptr_glUniformMatrix3x2fvNV = unsafePerformIO $ getCommand "glUniformMatrix3x2fvNV"

-- glUniformMatrix3x4dv --------------------------------------------------------

glUniformMatrix3x4dv
  :: GLint -- ^ @location@.
  -> GLsizei -- ^ @count@.
  -> GLboolean -- ^ @transpose@ of type @Boolean@.
  -> Ptr GLdouble -- ^ @value@ pointing to @count*12@ elements of type @GLdouble@.
  -> IO ()
glUniformMatrix3x4dv = dyn_glUniformMatrix3x4dv ptr_glUniformMatrix3x4dv

foreign import CALLCONV "dynamic" dyn_glUniformMatrix3x4dv
  :: FunPtr (GLint -> GLsizei -> GLboolean -> Ptr GLdouble -> IO ())
  ->         GLint -> GLsizei -> GLboolean -> Ptr GLdouble -> IO ()

{-# NOINLINE ptr_glUniformMatrix3x4dv #-}
ptr_glUniformMatrix3x4dv :: FunPtr (GLint -> GLsizei -> GLboolean -> Ptr GLdouble -> IO ())
ptr_glUniformMatrix3x4dv = unsafePerformIO $ getCommand "glUniformMatrix3x4dv"

-- glUniformMatrix3x4fv --------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glUniform.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glUniform.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glUniform.xhtml OpenGL 4.x>
glUniformMatrix3x4fv
  :: GLint -- ^ @location@.
  -> GLsizei -- ^ @count@.
  -> GLboolean -- ^ @transpose@ of type @Boolean@.
  -> Ptr GLfloat -- ^ @value@ pointing to @count*12@ elements of type @GLfloat@.
  -> IO ()
glUniformMatrix3x4fv = dyn_glUniformMatrix3x4fv ptr_glUniformMatrix3x4fv

foreign import CALLCONV "dynamic" dyn_glUniformMatrix3x4fv
  :: FunPtr (GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ())
  ->         GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glUniformMatrix3x4fv #-}
ptr_glUniformMatrix3x4fv :: FunPtr (GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ())
ptr_glUniformMatrix3x4fv = unsafePerformIO $ getCommand "glUniformMatrix3x4fv"

-- glUniformMatrix3x4fvNV ------------------------------------------------------

glUniformMatrix3x4fvNV
  :: GLint -- ^ @location@.
  -> GLsizei -- ^ @count@.
  -> GLboolean -- ^ @transpose@ of type @Boolean@.
  -> Ptr GLfloat -- ^ @value@ pointing to @count*12@ elements of type @GLfloat@.
  -> IO ()
glUniformMatrix3x4fvNV = dyn_glUniformMatrix3x4fvNV ptr_glUniformMatrix3x4fvNV

foreign import CALLCONV "dynamic" dyn_glUniformMatrix3x4fvNV
  :: FunPtr (GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ())
  ->         GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glUniformMatrix3x4fvNV #-}
ptr_glUniformMatrix3x4fvNV :: FunPtr (GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ())
ptr_glUniformMatrix3x4fvNV = unsafePerformIO $ getCommand "glUniformMatrix3x4fvNV"

-- glUniformMatrix4dv ----------------------------------------------------------

glUniformMatrix4dv
  :: GLint -- ^ @location@.
  -> GLsizei -- ^ @count@.
  -> GLboolean -- ^ @transpose@ of type @Boolean@.
  -> Ptr GLdouble -- ^ @value@ pointing to @count*16@ elements of type @GLdouble@.
  -> IO ()
glUniformMatrix4dv = dyn_glUniformMatrix4dv ptr_glUniformMatrix4dv

foreign import CALLCONV "dynamic" dyn_glUniformMatrix4dv
  :: FunPtr (GLint -> GLsizei -> GLboolean -> Ptr GLdouble -> IO ())
  ->         GLint -> GLsizei -> GLboolean -> Ptr GLdouble -> IO ()

{-# NOINLINE ptr_glUniformMatrix4dv #-}
ptr_glUniformMatrix4dv :: FunPtr (GLint -> GLsizei -> GLboolean -> Ptr GLdouble -> IO ())
ptr_glUniformMatrix4dv = unsafePerformIO $ getCommand "glUniformMatrix4dv"

-- glUniformMatrix4fv ----------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glUniform.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glUniform.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glUniform.xhtml OpenGL 4.x>
glUniformMatrix4fv
  :: GLint -- ^ @location@.
  -> GLsizei -- ^ @count@.
  -> GLboolean -- ^ @transpose@ of type @Boolean@.
  -> Ptr GLfloat -- ^ @value@ pointing to @count*16@ elements of type @GLfloat@.
  -> IO ()
glUniformMatrix4fv = dyn_glUniformMatrix4fv ptr_glUniformMatrix4fv

foreign import CALLCONV "dynamic" dyn_glUniformMatrix4fv
  :: FunPtr (GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ())
  ->         GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glUniformMatrix4fv #-}
ptr_glUniformMatrix4fv :: FunPtr (GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ())
ptr_glUniformMatrix4fv = unsafePerformIO $ getCommand "glUniformMatrix4fv"

-- glUniformMatrix4fvARB -------------------------------------------------------

glUniformMatrix4fvARB
  :: GLint -- ^ @location@.
  -> GLsizei -- ^ @count@.
  -> GLboolean -- ^ @transpose@ of type @Boolean@.
  -> Ptr GLfloat -- ^ @value@ pointing to @count*16@ elements of type @GLfloat@.
  -> IO ()
glUniformMatrix4fvARB = dyn_glUniformMatrix4fvARB ptr_glUniformMatrix4fvARB

foreign import CALLCONV "dynamic" dyn_glUniformMatrix4fvARB
  :: FunPtr (GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ())
  ->         GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glUniformMatrix4fvARB #-}
ptr_glUniformMatrix4fvARB :: FunPtr (GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ())
ptr_glUniformMatrix4fvARB = unsafePerformIO $ getCommand "glUniformMatrix4fvARB"

-- glUniformMatrix4x2dv --------------------------------------------------------

glUniformMatrix4x2dv
  :: GLint -- ^ @location@.
  -> GLsizei -- ^ @count@.
  -> GLboolean -- ^ @transpose@ of type @Boolean@.
  -> Ptr GLdouble -- ^ @value@ pointing to @count*8@ elements of type @GLdouble@.
  -> IO ()
glUniformMatrix4x2dv = dyn_glUniformMatrix4x2dv ptr_glUniformMatrix4x2dv

foreign import CALLCONV "dynamic" dyn_glUniformMatrix4x2dv
  :: FunPtr (GLint -> GLsizei -> GLboolean -> Ptr GLdouble -> IO ())
  ->         GLint -> GLsizei -> GLboolean -> Ptr GLdouble -> IO ()

{-# NOINLINE ptr_glUniformMatrix4x2dv #-}
ptr_glUniformMatrix4x2dv :: FunPtr (GLint -> GLsizei -> GLboolean -> Ptr GLdouble -> IO ())
ptr_glUniformMatrix4x2dv = unsafePerformIO $ getCommand "glUniformMatrix4x2dv"

-- glUniformMatrix4x2fv --------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glUniform.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glUniform.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glUniform.xhtml OpenGL 4.x>
glUniformMatrix4x2fv
  :: GLint -- ^ @location@.
  -> GLsizei -- ^ @count@.
  -> GLboolean -- ^ @transpose@ of type @Boolean@.
  -> Ptr GLfloat -- ^ @value@ pointing to @count*8@ elements of type @GLfloat@.
  -> IO ()
glUniformMatrix4x2fv = dyn_glUniformMatrix4x2fv ptr_glUniformMatrix4x2fv

foreign import CALLCONV "dynamic" dyn_glUniformMatrix4x2fv
  :: FunPtr (GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ())
  ->         GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glUniformMatrix4x2fv #-}
ptr_glUniformMatrix4x2fv :: FunPtr (GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ())
ptr_glUniformMatrix4x2fv = unsafePerformIO $ getCommand "glUniformMatrix4x2fv"

-- glUniformMatrix4x2fvNV ------------------------------------------------------

glUniformMatrix4x2fvNV
  :: GLint -- ^ @location@.
  -> GLsizei -- ^ @count@.
  -> GLboolean -- ^ @transpose@ of type @Boolean@.
  -> Ptr GLfloat -- ^ @value@ pointing to @count*8@ elements of type @GLfloat@.
  -> IO ()
glUniformMatrix4x2fvNV = dyn_glUniformMatrix4x2fvNV ptr_glUniformMatrix4x2fvNV

foreign import CALLCONV "dynamic" dyn_glUniformMatrix4x2fvNV
  :: FunPtr (GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ())
  ->         GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glUniformMatrix4x2fvNV #-}
ptr_glUniformMatrix4x2fvNV :: FunPtr (GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ())
ptr_glUniformMatrix4x2fvNV = unsafePerformIO $ getCommand "glUniformMatrix4x2fvNV"

-- glUniformMatrix4x3dv --------------------------------------------------------

glUniformMatrix4x3dv
  :: GLint -- ^ @location@.
  -> GLsizei -- ^ @count@.
  -> GLboolean -- ^ @transpose@ of type @Boolean@.
  -> Ptr GLdouble -- ^ @value@ pointing to @count*12@ elements of type @GLdouble@.
  -> IO ()
glUniformMatrix4x3dv = dyn_glUniformMatrix4x3dv ptr_glUniformMatrix4x3dv

foreign import CALLCONV "dynamic" dyn_glUniformMatrix4x3dv
  :: FunPtr (GLint -> GLsizei -> GLboolean -> Ptr GLdouble -> IO ())
  ->         GLint -> GLsizei -> GLboolean -> Ptr GLdouble -> IO ()

{-# NOINLINE ptr_glUniformMatrix4x3dv #-}
ptr_glUniformMatrix4x3dv :: FunPtr (GLint -> GLsizei -> GLboolean -> Ptr GLdouble -> IO ())
ptr_glUniformMatrix4x3dv = unsafePerformIO $ getCommand "glUniformMatrix4x3dv"

-- glUniformMatrix4x3fv --------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glUniform.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glUniform.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glUniform.xhtml OpenGL 4.x>
glUniformMatrix4x3fv
  :: GLint -- ^ @location@.
  -> GLsizei -- ^ @count@.
  -> GLboolean -- ^ @transpose@ of type @Boolean@.
  -> Ptr GLfloat -- ^ @value@ pointing to @count*12@ elements of type @GLfloat@.
  -> IO ()
glUniformMatrix4x3fv = dyn_glUniformMatrix4x3fv ptr_glUniformMatrix4x3fv

foreign import CALLCONV "dynamic" dyn_glUniformMatrix4x3fv
  :: FunPtr (GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ())
  ->         GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glUniformMatrix4x3fv #-}
ptr_glUniformMatrix4x3fv :: FunPtr (GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ())
ptr_glUniformMatrix4x3fv = unsafePerformIO $ getCommand "glUniformMatrix4x3fv"

-- glUniformMatrix4x3fvNV ------------------------------------------------------

glUniformMatrix4x3fvNV
  :: GLint -- ^ @location@.
  -> GLsizei -- ^ @count@.
  -> GLboolean -- ^ @transpose@ of type @Boolean@.
  -> Ptr GLfloat -- ^ @value@ pointing to @count*12@ elements of type @GLfloat@.
  -> IO ()
glUniformMatrix4x3fvNV = dyn_glUniformMatrix4x3fvNV ptr_glUniformMatrix4x3fvNV

foreign import CALLCONV "dynamic" dyn_glUniformMatrix4x3fvNV
  :: FunPtr (GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ())
  ->         GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glUniformMatrix4x3fvNV #-}
ptr_glUniformMatrix4x3fvNV :: FunPtr (GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> IO ())
ptr_glUniformMatrix4x3fvNV = unsafePerformIO $ getCommand "glUniformMatrix4x3fvNV"

-- glUniformSubroutinesuiv -----------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glUniformSubroutines.xhtml OpenGL 4.x>
glUniformSubroutinesuiv
  :: GLenum -- ^ @shadertype@.
  -> GLsizei -- ^ @count@.
  -> Ptr GLuint -- ^ @indices@ pointing to @count@ elements of type @GLuint@.
  -> IO ()
glUniformSubroutinesuiv = dyn_glUniformSubroutinesuiv ptr_glUniformSubroutinesuiv

foreign import CALLCONV "dynamic" dyn_glUniformSubroutinesuiv
  :: FunPtr (GLenum -> GLsizei -> Ptr GLuint -> IO ())
  ->         GLenum -> GLsizei -> Ptr GLuint -> IO ()

{-# NOINLINE ptr_glUniformSubroutinesuiv #-}
ptr_glUniformSubroutinesuiv :: FunPtr (GLenum -> GLsizei -> Ptr GLuint -> IO ())
ptr_glUniformSubroutinesuiv = unsafePerformIO $ getCommand "glUniformSubroutinesuiv"

-- glUniformui64NV -------------------------------------------------------------

glUniformui64NV
  :: GLint -- ^ @location@.
  -> GLuint64EXT -- ^ @value@.
  -> IO ()
glUniformui64NV = dyn_glUniformui64NV ptr_glUniformui64NV

foreign import CALLCONV "dynamic" dyn_glUniformui64NV
  :: FunPtr (GLint -> GLuint64EXT -> IO ())
  ->         GLint -> GLuint64EXT -> IO ()

{-# NOINLINE ptr_glUniformui64NV #-}
ptr_glUniformui64NV :: FunPtr (GLint -> GLuint64EXT -> IO ())
ptr_glUniformui64NV = unsafePerformIO $ getCommand "glUniformui64NV"

-- glUniformui64vNV ------------------------------------------------------------

glUniformui64vNV
  :: GLint -- ^ @location@.
  -> GLsizei -- ^ @count@.
  -> Ptr GLuint64EXT -- ^ @value@ pointing to @count*1@ elements of type @GLuint64EXT@.
  -> IO ()
glUniformui64vNV = dyn_glUniformui64vNV ptr_glUniformui64vNV

foreign import CALLCONV "dynamic" dyn_glUniformui64vNV
  :: FunPtr (GLint -> GLsizei -> Ptr GLuint64EXT -> IO ())
  ->         GLint -> GLsizei -> Ptr GLuint64EXT -> IO ()

{-# NOINLINE ptr_glUniformui64vNV #-}
ptr_glUniformui64vNV :: FunPtr (GLint -> GLsizei -> Ptr GLuint64EXT -> IO ())
ptr_glUniformui64vNV = unsafePerformIO $ getCommand "glUniformui64vNV"

-- glUnlockArraysEXT -----------------------------------------------------------

glUnlockArraysEXT
  :: IO ()
glUnlockArraysEXT = dyn_glUnlockArraysEXT ptr_glUnlockArraysEXT

foreign import CALLCONV "dynamic" dyn_glUnlockArraysEXT
  :: FunPtr (IO ())
  ->         IO ()

{-# NOINLINE ptr_glUnlockArraysEXT #-}
ptr_glUnlockArraysEXT :: FunPtr (IO ())
ptr_glUnlockArraysEXT = unsafePerformIO $ getCommand "glUnlockArraysEXT"

-- glUnmapBuffer ---------------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glMapBuffer.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glMapBuffer.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glUnmapBuffer.xhtml OpenGL 4.x>
glUnmapBuffer
  :: GLenum -- ^ @target@ of type @BufferTargetARB@.
  -> IO GLboolean -- ^ of type @Boolean@.
glUnmapBuffer = dyn_glUnmapBuffer ptr_glUnmapBuffer

foreign import CALLCONV "dynamic" dyn_glUnmapBuffer
  :: FunPtr (GLenum -> IO GLboolean)
  ->         GLenum -> IO GLboolean

{-# NOINLINE ptr_glUnmapBuffer #-}
ptr_glUnmapBuffer :: FunPtr (GLenum -> IO GLboolean)
ptr_glUnmapBuffer = unsafePerformIO $ getCommand "glUnmapBuffer"

-- glUnmapBufferARB ------------------------------------------------------------

glUnmapBufferARB
  :: GLenum -- ^ @target@ of type @BufferTargetARB@.
  -> IO GLboolean -- ^ of type @Boolean@.
glUnmapBufferARB = dyn_glUnmapBufferARB ptr_glUnmapBufferARB

foreign import CALLCONV "dynamic" dyn_glUnmapBufferARB
  :: FunPtr (GLenum -> IO GLboolean)
  ->         GLenum -> IO GLboolean

{-# NOINLINE ptr_glUnmapBufferARB #-}
ptr_glUnmapBufferARB :: FunPtr (GLenum -> IO GLboolean)
ptr_glUnmapBufferARB = unsafePerformIO $ getCommand "glUnmapBufferARB"

-- glUnmapBufferOES ------------------------------------------------------------

glUnmapBufferOES
  :: GLenum -- ^ @target@.
  -> IO GLboolean
glUnmapBufferOES = dyn_glUnmapBufferOES ptr_glUnmapBufferOES

foreign import CALLCONV "dynamic" dyn_glUnmapBufferOES
  :: FunPtr (GLenum -> IO GLboolean)
  ->         GLenum -> IO GLboolean

{-# NOINLINE ptr_glUnmapBufferOES #-}
ptr_glUnmapBufferOES :: FunPtr (GLenum -> IO GLboolean)
ptr_glUnmapBufferOES = unsafePerformIO $ getCommand "glUnmapBufferOES"

-- glUnmapNamedBuffer ----------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glUnmapBuffer.xhtml OpenGL 4.x>
glUnmapNamedBuffer
  :: GLuint -- ^ @buffer@.
  -> IO GLboolean
glUnmapNamedBuffer = dyn_glUnmapNamedBuffer ptr_glUnmapNamedBuffer

foreign import CALLCONV "dynamic" dyn_glUnmapNamedBuffer
  :: FunPtr (GLuint -> IO GLboolean)
  ->         GLuint -> IO GLboolean

{-# NOINLINE ptr_glUnmapNamedBuffer #-}
ptr_glUnmapNamedBuffer :: FunPtr (GLuint -> IO GLboolean)
ptr_glUnmapNamedBuffer = unsafePerformIO $ getCommand "glUnmapNamedBuffer"

-- glUnmapNamedBufferEXT -------------------------------------------------------

glUnmapNamedBufferEXT
  :: GLuint -- ^ @buffer@.
  -> IO GLboolean -- ^ of type @Boolean@.
glUnmapNamedBufferEXT = dyn_glUnmapNamedBufferEXT ptr_glUnmapNamedBufferEXT

foreign import CALLCONV "dynamic" dyn_glUnmapNamedBufferEXT
  :: FunPtr (GLuint -> IO GLboolean)
  ->         GLuint -> IO GLboolean

{-# NOINLINE ptr_glUnmapNamedBufferEXT #-}
ptr_glUnmapNamedBufferEXT :: FunPtr (GLuint -> IO GLboolean)
ptr_glUnmapNamedBufferEXT = unsafePerformIO $ getCommand "glUnmapNamedBufferEXT"

-- glUnmapObjectBufferATI ------------------------------------------------------

glUnmapObjectBufferATI
  :: GLuint -- ^ @buffer@.
  -> IO ()
glUnmapObjectBufferATI = dyn_glUnmapObjectBufferATI ptr_glUnmapObjectBufferATI

foreign import CALLCONV "dynamic" dyn_glUnmapObjectBufferATI
  :: FunPtr (GLuint -> IO ())
  ->         GLuint -> IO ()

{-# NOINLINE ptr_glUnmapObjectBufferATI #-}
ptr_glUnmapObjectBufferATI :: FunPtr (GLuint -> IO ())
ptr_glUnmapObjectBufferATI = unsafePerformIO $ getCommand "glUnmapObjectBufferATI"

-- glUnmapTexture2DINTEL -------------------------------------------------------

glUnmapTexture2DINTEL
  :: GLuint -- ^ @texture@.
  -> GLint -- ^ @level@.
  -> IO ()
glUnmapTexture2DINTEL = dyn_glUnmapTexture2DINTEL ptr_glUnmapTexture2DINTEL

foreign import CALLCONV "dynamic" dyn_glUnmapTexture2DINTEL
  :: FunPtr (GLuint -> GLint -> IO ())
  ->         GLuint -> GLint -> IO ()

{-# NOINLINE ptr_glUnmapTexture2DINTEL #-}
ptr_glUnmapTexture2DINTEL :: FunPtr (GLuint -> GLint -> IO ())
ptr_glUnmapTexture2DINTEL = unsafePerformIO $ getCommand "glUnmapTexture2DINTEL"

-- glUpdateObjectBufferATI -----------------------------------------------------

glUpdateObjectBufferATI
  :: GLuint -- ^ @buffer@.
  -> GLuint -- ^ @offset@.
  -> GLsizei -- ^ @size@.
  -> Ptr a -- ^ @pointer@ pointing to @size@ elements of type @a@.
  -> GLenum -- ^ @preserve@ of type @PreserveModeATI@.
  -> IO ()
glUpdateObjectBufferATI = dyn_glUpdateObjectBufferATI ptr_glUpdateObjectBufferATI

foreign import CALLCONV "dynamic" dyn_glUpdateObjectBufferATI
  :: FunPtr (GLuint -> GLuint -> GLsizei -> Ptr a -> GLenum -> IO ())
  ->         GLuint -> GLuint -> GLsizei -> Ptr a -> GLenum -> IO ()

{-# NOINLINE ptr_glUpdateObjectBufferATI #-}
ptr_glUpdateObjectBufferATI :: FunPtr (GLuint -> GLuint -> GLsizei -> Ptr a -> GLenum -> IO ())
ptr_glUpdateObjectBufferATI = unsafePerformIO $ getCommand "glUpdateObjectBufferATI"

-- glUseProgram ----------------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glUseProgram.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glUseProgram.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glUseProgram.xhtml OpenGL 4.x>
glUseProgram
  :: GLuint -- ^ @program@.
  -> IO ()
glUseProgram = dyn_glUseProgram ptr_glUseProgram

foreign import CALLCONV "dynamic" dyn_glUseProgram
  :: FunPtr (GLuint -> IO ())
  ->         GLuint -> IO ()

{-# NOINLINE ptr_glUseProgram #-}
ptr_glUseProgram :: FunPtr (GLuint -> IO ())
ptr_glUseProgram = unsafePerformIO $ getCommand "glUseProgram"

-- glUseProgramObjectARB -------------------------------------------------------

glUseProgramObjectARB
  :: GLhandleARB -- ^ @programObj@ of type @handleARB@.
  -> IO ()
glUseProgramObjectARB = dyn_glUseProgramObjectARB ptr_glUseProgramObjectARB

foreign import CALLCONV "dynamic" dyn_glUseProgramObjectARB
  :: FunPtr (GLhandleARB -> IO ())
  ->         GLhandleARB -> IO ()

{-# NOINLINE ptr_glUseProgramObjectARB #-}
ptr_glUseProgramObjectARB :: FunPtr (GLhandleARB -> IO ())
ptr_glUseProgramObjectARB = unsafePerformIO $ getCommand "glUseProgramObjectARB"

-- glUseProgramStages ----------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glUseProgramStages.xhtml OpenGL 4.x>
glUseProgramStages
  :: GLuint -- ^ @pipeline@.
  -> GLbitfield -- ^ @stages@.
  -> GLuint -- ^ @program@.
  -> IO ()
glUseProgramStages = dyn_glUseProgramStages ptr_glUseProgramStages

foreign import CALLCONV "dynamic" dyn_glUseProgramStages
  :: FunPtr (GLuint -> GLbitfield -> GLuint -> IO ())
  ->         GLuint -> GLbitfield -> GLuint -> IO ()

{-# NOINLINE ptr_glUseProgramStages #-}
ptr_glUseProgramStages :: FunPtr (GLuint -> GLbitfield -> GLuint -> IO ())
ptr_glUseProgramStages = unsafePerformIO $ getCommand "glUseProgramStages"

-- glUseProgramStagesEXT -------------------------------------------------------

glUseProgramStagesEXT
  :: GLuint -- ^ @pipeline@.
  -> GLbitfield -- ^ @stages@.
  -> GLuint -- ^ @program@.
  -> IO ()
glUseProgramStagesEXT = dyn_glUseProgramStagesEXT ptr_glUseProgramStagesEXT

foreign import CALLCONV "dynamic" dyn_glUseProgramStagesEXT
  :: FunPtr (GLuint -> GLbitfield -> GLuint -> IO ())
  ->         GLuint -> GLbitfield -> GLuint -> IO ()

{-# NOINLINE ptr_glUseProgramStagesEXT #-}
ptr_glUseProgramStagesEXT :: FunPtr (GLuint -> GLbitfield -> GLuint -> IO ())
ptr_glUseProgramStagesEXT = unsafePerformIO $ getCommand "glUseProgramStagesEXT"

-- glUseShaderProgramEXT -------------------------------------------------------

glUseShaderProgramEXT
  :: GLenum -- ^ @type@.
  -> GLuint -- ^ @program@.
  -> IO ()
glUseShaderProgramEXT = dyn_glUseShaderProgramEXT ptr_glUseShaderProgramEXT

foreign import CALLCONV "dynamic" dyn_glUseShaderProgramEXT
  :: FunPtr (GLenum -> GLuint -> IO ())
  ->         GLenum -> GLuint -> IO ()

{-# NOINLINE ptr_glUseShaderProgramEXT #-}
ptr_glUseShaderProgramEXT :: FunPtr (GLenum -> GLuint -> IO ())
ptr_glUseShaderProgramEXT = unsafePerformIO $ getCommand "glUseShaderProgramEXT"

-- glVDPAUFiniNV ---------------------------------------------------------------

glVDPAUFiniNV
  :: IO ()
glVDPAUFiniNV = dyn_glVDPAUFiniNV ptr_glVDPAUFiniNV

foreign import CALLCONV "dynamic" dyn_glVDPAUFiniNV
  :: FunPtr (IO ())
  ->         IO ()

{-# NOINLINE ptr_glVDPAUFiniNV #-}
ptr_glVDPAUFiniNV :: FunPtr (IO ())
ptr_glVDPAUFiniNV = unsafePerformIO $ getCommand "glVDPAUFiniNV"

-- glVDPAUGetSurfaceivNV -------------------------------------------------------

glVDPAUGetSurfaceivNV
  :: GLvdpauSurfaceNV -- ^ @surface@ of type @vdpauSurfaceNV@.
  -> GLenum -- ^ @pname@.
  -> GLsizei -- ^ @bufSize@.
  -> Ptr GLsizei -- ^ @length@.
  -> Ptr GLint -- ^ @values@ pointing to @bufSize@ elements of type @GLint@.
  -> IO ()
glVDPAUGetSurfaceivNV = dyn_glVDPAUGetSurfaceivNV ptr_glVDPAUGetSurfaceivNV

foreign import CALLCONV "dynamic" dyn_glVDPAUGetSurfaceivNV
  :: FunPtr (GLvdpauSurfaceNV -> GLenum -> GLsizei -> Ptr GLsizei -> Ptr GLint -> IO ())
  ->         GLvdpauSurfaceNV -> GLenum -> GLsizei -> Ptr GLsizei -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glVDPAUGetSurfaceivNV #-}
ptr_glVDPAUGetSurfaceivNV :: FunPtr (GLvdpauSurfaceNV -> GLenum -> GLsizei -> Ptr GLsizei -> Ptr GLint -> IO ())
ptr_glVDPAUGetSurfaceivNV = unsafePerformIO $ getCommand "glVDPAUGetSurfaceivNV"

-- glVDPAUInitNV ---------------------------------------------------------------

glVDPAUInitNV
  :: Ptr a -- ^ @vdpDevice@.
  -> Ptr b -- ^ @getProcAddress@.
  -> IO ()
glVDPAUInitNV = dyn_glVDPAUInitNV ptr_glVDPAUInitNV

foreign import CALLCONV "dynamic" dyn_glVDPAUInitNV
  :: FunPtr (Ptr a -> Ptr b -> IO ())
  ->         Ptr a -> Ptr b -> IO ()

{-# NOINLINE ptr_glVDPAUInitNV #-}
ptr_glVDPAUInitNV :: FunPtr (Ptr a -> Ptr b -> IO ())
ptr_glVDPAUInitNV = unsafePerformIO $ getCommand "glVDPAUInitNV"

-- glVDPAUIsSurfaceNV ----------------------------------------------------------

glVDPAUIsSurfaceNV
  :: GLvdpauSurfaceNV -- ^ @surface@ of type @vdpauSurfaceNV@.
  -> IO GLboolean
glVDPAUIsSurfaceNV = dyn_glVDPAUIsSurfaceNV ptr_glVDPAUIsSurfaceNV

foreign import CALLCONV "dynamic" dyn_glVDPAUIsSurfaceNV
  :: FunPtr (GLvdpauSurfaceNV -> IO GLboolean)
  ->         GLvdpauSurfaceNV -> IO GLboolean

{-# NOINLINE ptr_glVDPAUIsSurfaceNV #-}
ptr_glVDPAUIsSurfaceNV :: FunPtr (GLvdpauSurfaceNV -> IO GLboolean)
ptr_glVDPAUIsSurfaceNV = unsafePerformIO $ getCommand "glVDPAUIsSurfaceNV"

-- glVDPAUMapSurfacesNV --------------------------------------------------------

glVDPAUMapSurfacesNV
  :: GLsizei -- ^ @numSurfaces@.
  -> Ptr GLvdpauSurfaceNV -- ^ @surfaces@ pointing to @numSurfaces@ elements of type @vdpauSurfaceNV@.
  -> IO ()
glVDPAUMapSurfacesNV = dyn_glVDPAUMapSurfacesNV ptr_glVDPAUMapSurfacesNV

foreign import CALLCONV "dynamic" dyn_glVDPAUMapSurfacesNV
  :: FunPtr (GLsizei -> Ptr GLvdpauSurfaceNV -> IO ())
  ->         GLsizei -> Ptr GLvdpauSurfaceNV -> IO ()

{-# NOINLINE ptr_glVDPAUMapSurfacesNV #-}
ptr_glVDPAUMapSurfacesNV :: FunPtr (GLsizei -> Ptr GLvdpauSurfaceNV -> IO ())
ptr_glVDPAUMapSurfacesNV = unsafePerformIO $ getCommand "glVDPAUMapSurfacesNV"

-- glVDPAURegisterOutputSurfaceNV ----------------------------------------------

glVDPAURegisterOutputSurfaceNV
  :: Ptr a -- ^ @vdpSurface@.
  -> GLenum -- ^ @target@.
  -> GLsizei -- ^ @numTextureNames@.
  -> Ptr GLuint -- ^ @textureNames@ pointing to @numTextureNames@ elements of type @GLuint@.
  -> IO GLvdpauSurfaceNV -- ^ of type @vdpauSurfaceNV@.
glVDPAURegisterOutputSurfaceNV = dyn_glVDPAURegisterOutputSurfaceNV ptr_glVDPAURegisterOutputSurfaceNV

foreign import CALLCONV "dynamic" dyn_glVDPAURegisterOutputSurfaceNV
  :: FunPtr (Ptr a -> GLenum -> GLsizei -> Ptr GLuint -> IO GLvdpauSurfaceNV)
  ->         Ptr a -> GLenum -> GLsizei -> Ptr GLuint -> IO GLvdpauSurfaceNV

{-# NOINLINE ptr_glVDPAURegisterOutputSurfaceNV #-}
ptr_glVDPAURegisterOutputSurfaceNV :: FunPtr (Ptr a -> GLenum -> GLsizei -> Ptr GLuint -> IO GLvdpauSurfaceNV)
ptr_glVDPAURegisterOutputSurfaceNV = unsafePerformIO $ getCommand "glVDPAURegisterOutputSurfaceNV"

-- glVDPAURegisterVideoSurfaceNV -----------------------------------------------

glVDPAURegisterVideoSurfaceNV
  :: Ptr a -- ^ @vdpSurface@.
  -> GLenum -- ^ @target@.
  -> GLsizei -- ^ @numTextureNames@.
  -> Ptr GLuint -- ^ @textureNames@ pointing to @numTextureNames@ elements of type @GLuint@.
  -> IO GLvdpauSurfaceNV -- ^ of type @vdpauSurfaceNV@.
glVDPAURegisterVideoSurfaceNV = dyn_glVDPAURegisterVideoSurfaceNV ptr_glVDPAURegisterVideoSurfaceNV

foreign import CALLCONV "dynamic" dyn_glVDPAURegisterVideoSurfaceNV
  :: FunPtr (Ptr a -> GLenum -> GLsizei -> Ptr GLuint -> IO GLvdpauSurfaceNV)
  ->         Ptr a -> GLenum -> GLsizei -> Ptr GLuint -> IO GLvdpauSurfaceNV

{-# NOINLINE ptr_glVDPAURegisterVideoSurfaceNV #-}
ptr_glVDPAURegisterVideoSurfaceNV :: FunPtr (Ptr a -> GLenum -> GLsizei -> Ptr GLuint -> IO GLvdpauSurfaceNV)
ptr_glVDPAURegisterVideoSurfaceNV = unsafePerformIO $ getCommand "glVDPAURegisterVideoSurfaceNV"

-- glVDPAUSurfaceAccessNV ------------------------------------------------------

glVDPAUSurfaceAccessNV
  :: GLvdpauSurfaceNV -- ^ @surface@ of type @vdpauSurfaceNV@.
  -> GLenum -- ^ @access@.
  -> IO ()
glVDPAUSurfaceAccessNV = dyn_glVDPAUSurfaceAccessNV ptr_glVDPAUSurfaceAccessNV

foreign import CALLCONV "dynamic" dyn_glVDPAUSurfaceAccessNV
  :: FunPtr (GLvdpauSurfaceNV -> GLenum -> IO ())
  ->         GLvdpauSurfaceNV -> GLenum -> IO ()

{-# NOINLINE ptr_glVDPAUSurfaceAccessNV #-}
ptr_glVDPAUSurfaceAccessNV :: FunPtr (GLvdpauSurfaceNV -> GLenum -> IO ())
ptr_glVDPAUSurfaceAccessNV = unsafePerformIO $ getCommand "glVDPAUSurfaceAccessNV"

-- glVDPAUUnmapSurfacesNV ------------------------------------------------------

glVDPAUUnmapSurfacesNV
  :: GLsizei -- ^ @numSurface@.
  -> Ptr GLvdpauSurfaceNV -- ^ @surfaces@ pointing to @numSurface@ elements of type @vdpauSurfaceNV@.
  -> IO ()
glVDPAUUnmapSurfacesNV = dyn_glVDPAUUnmapSurfacesNV ptr_glVDPAUUnmapSurfacesNV

foreign import CALLCONV "dynamic" dyn_glVDPAUUnmapSurfacesNV
  :: FunPtr (GLsizei -> Ptr GLvdpauSurfaceNV -> IO ())
  ->         GLsizei -> Ptr GLvdpauSurfaceNV -> IO ()

{-# NOINLINE ptr_glVDPAUUnmapSurfacesNV #-}
ptr_glVDPAUUnmapSurfacesNV :: FunPtr (GLsizei -> Ptr GLvdpauSurfaceNV -> IO ())
ptr_glVDPAUUnmapSurfacesNV = unsafePerformIO $ getCommand "glVDPAUUnmapSurfacesNV"

-- glVDPAUUnregisterSurfaceNV --------------------------------------------------

glVDPAUUnregisterSurfaceNV
  :: GLvdpauSurfaceNV -- ^ @surface@ of type @vdpauSurfaceNV@.
  -> IO ()
glVDPAUUnregisterSurfaceNV = dyn_glVDPAUUnregisterSurfaceNV ptr_glVDPAUUnregisterSurfaceNV

foreign import CALLCONV "dynamic" dyn_glVDPAUUnregisterSurfaceNV
  :: FunPtr (GLvdpauSurfaceNV -> IO ())
  ->         GLvdpauSurfaceNV -> IO ()

{-# NOINLINE ptr_glVDPAUUnregisterSurfaceNV #-}
ptr_glVDPAUUnregisterSurfaceNV :: FunPtr (GLvdpauSurfaceNV -> IO ())
ptr_glVDPAUUnregisterSurfaceNV = unsafePerformIO $ getCommand "glVDPAUUnregisterSurfaceNV"

-- glValidateProgram -----------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glValidateProgram.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glValidateProgram.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glValidateProgram.xhtml OpenGL 4.x>
glValidateProgram
  :: GLuint -- ^ @program@.
  -> IO ()
glValidateProgram = dyn_glValidateProgram ptr_glValidateProgram

foreign import CALLCONV "dynamic" dyn_glValidateProgram
  :: FunPtr (GLuint -> IO ())
  ->         GLuint -> IO ()

{-# NOINLINE ptr_glValidateProgram #-}
ptr_glValidateProgram :: FunPtr (GLuint -> IO ())
ptr_glValidateProgram = unsafePerformIO $ getCommand "glValidateProgram"

-- glValidateProgramARB --------------------------------------------------------

glValidateProgramARB
  :: GLhandleARB -- ^ @programObj@ of type @handleARB@.
  -> IO ()
glValidateProgramARB = dyn_glValidateProgramARB ptr_glValidateProgramARB

foreign import CALLCONV "dynamic" dyn_glValidateProgramARB
  :: FunPtr (GLhandleARB -> IO ())
  ->         GLhandleARB -> IO ()

{-# NOINLINE ptr_glValidateProgramARB #-}
ptr_glValidateProgramARB :: FunPtr (GLhandleARB -> IO ())
ptr_glValidateProgramARB = unsafePerformIO $ getCommand "glValidateProgramARB"

-- glValidateProgramPipeline ---------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glValidateProgramPipeline.xhtml OpenGL 4.x>
glValidateProgramPipeline
  :: GLuint -- ^ @pipeline@.
  -> IO ()
glValidateProgramPipeline = dyn_glValidateProgramPipeline ptr_glValidateProgramPipeline

foreign import CALLCONV "dynamic" dyn_glValidateProgramPipeline
  :: FunPtr (GLuint -> IO ())
  ->         GLuint -> IO ()

{-# NOINLINE ptr_glValidateProgramPipeline #-}
ptr_glValidateProgramPipeline :: FunPtr (GLuint -> IO ())
ptr_glValidateProgramPipeline = unsafePerformIO $ getCommand "glValidateProgramPipeline"

-- glValidateProgramPipelineEXT ------------------------------------------------

glValidateProgramPipelineEXT
  :: GLuint -- ^ @pipeline@.
  -> IO ()
glValidateProgramPipelineEXT = dyn_glValidateProgramPipelineEXT ptr_glValidateProgramPipelineEXT

foreign import CALLCONV "dynamic" dyn_glValidateProgramPipelineEXT
  :: FunPtr (GLuint -> IO ())
  ->         GLuint -> IO ()

{-# NOINLINE ptr_glValidateProgramPipelineEXT #-}
ptr_glValidateProgramPipelineEXT :: FunPtr (GLuint -> IO ())
ptr_glValidateProgramPipelineEXT = unsafePerformIO $ getCommand "glValidateProgramPipelineEXT"

-- glVariantArrayObjectATI -----------------------------------------------------

glVariantArrayObjectATI
  :: GLuint -- ^ @id@.
  -> GLenum -- ^ @type@ of type @ScalarType@.
  -> GLsizei -- ^ @stride@.
  -> GLuint -- ^ @buffer@.
  -> GLuint -- ^ @offset@.
  -> IO ()
glVariantArrayObjectATI = dyn_glVariantArrayObjectATI ptr_glVariantArrayObjectATI

foreign import CALLCONV "dynamic" dyn_glVariantArrayObjectATI
  :: FunPtr (GLuint -> GLenum -> GLsizei -> GLuint -> GLuint -> IO ())
  ->         GLuint -> GLenum -> GLsizei -> GLuint -> GLuint -> IO ()

{-# NOINLINE ptr_glVariantArrayObjectATI #-}
ptr_glVariantArrayObjectATI :: FunPtr (GLuint -> GLenum -> GLsizei -> GLuint -> GLuint -> IO ())
ptr_glVariantArrayObjectATI = unsafePerformIO $ getCommand "glVariantArrayObjectATI"

-- glVariantPointerEXT ---------------------------------------------------------

glVariantPointerEXT
  :: GLuint -- ^ @id@.
  -> GLenum -- ^ @type@ of type @ScalarType@.
  -> GLuint -- ^ @stride@.
  -> Ptr a -- ^ @addr@ pointing to @COMPSIZE(id,type,stride)@ elements of type @a@.
  -> IO ()
glVariantPointerEXT = dyn_glVariantPointerEXT ptr_glVariantPointerEXT

foreign import CALLCONV "dynamic" dyn_glVariantPointerEXT
  :: FunPtr (GLuint -> GLenum -> GLuint -> Ptr a -> IO ())
  ->         GLuint -> GLenum -> GLuint -> Ptr a -> IO ()

{-# NOINLINE ptr_glVariantPointerEXT #-}
ptr_glVariantPointerEXT :: FunPtr (GLuint -> GLenum -> GLuint -> Ptr a -> IO ())
ptr_glVariantPointerEXT = unsafePerformIO $ getCommand "glVariantPointerEXT"

-- glVariantbvEXT --------------------------------------------------------------

glVariantbvEXT
  :: GLuint -- ^ @id@.
  -> Ptr GLbyte -- ^ @addr@ pointing to @COMPSIZE(id)@ elements of type @GLbyte@.
  -> IO ()
glVariantbvEXT = dyn_glVariantbvEXT ptr_glVariantbvEXT

foreign import CALLCONV "dynamic" dyn_glVariantbvEXT
  :: FunPtr (GLuint -> Ptr GLbyte -> IO ())
  ->         GLuint -> Ptr GLbyte -> IO ()

{-# NOINLINE ptr_glVariantbvEXT #-}
ptr_glVariantbvEXT :: FunPtr (GLuint -> Ptr GLbyte -> IO ())
ptr_glVariantbvEXT = unsafePerformIO $ getCommand "glVariantbvEXT"

-- glVariantdvEXT --------------------------------------------------------------

glVariantdvEXT
  :: GLuint -- ^ @id@.
  -> Ptr GLdouble -- ^ @addr@ pointing to @COMPSIZE(id)@ elements of type @GLdouble@.
  -> IO ()
glVariantdvEXT = dyn_glVariantdvEXT ptr_glVariantdvEXT

foreign import CALLCONV "dynamic" dyn_glVariantdvEXT
  :: FunPtr (GLuint -> Ptr GLdouble -> IO ())
  ->         GLuint -> Ptr GLdouble -> IO ()

{-# NOINLINE ptr_glVariantdvEXT #-}
ptr_glVariantdvEXT :: FunPtr (GLuint -> Ptr GLdouble -> IO ())
ptr_glVariantdvEXT = unsafePerformIO $ getCommand "glVariantdvEXT"

-- glVariantfvEXT --------------------------------------------------------------

glVariantfvEXT
  :: GLuint -- ^ @id@.
  -> Ptr GLfloat -- ^ @addr@ pointing to @COMPSIZE(id)@ elements of type @GLfloat@.
  -> IO ()
glVariantfvEXT = dyn_glVariantfvEXT ptr_glVariantfvEXT

foreign import CALLCONV "dynamic" dyn_glVariantfvEXT
  :: FunPtr (GLuint -> Ptr GLfloat -> IO ())
  ->         GLuint -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glVariantfvEXT #-}
ptr_glVariantfvEXT :: FunPtr (GLuint -> Ptr GLfloat -> IO ())
ptr_glVariantfvEXT = unsafePerformIO $ getCommand "glVariantfvEXT"

-- glVariantivEXT --------------------------------------------------------------

glVariantivEXT
  :: GLuint -- ^ @id@.
  -> Ptr GLint -- ^ @addr@ pointing to @COMPSIZE(id)@ elements of type @GLint@.
  -> IO ()
glVariantivEXT = dyn_glVariantivEXT ptr_glVariantivEXT

foreign import CALLCONV "dynamic" dyn_glVariantivEXT
  :: FunPtr (GLuint -> Ptr GLint -> IO ())
  ->         GLuint -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glVariantivEXT #-}
ptr_glVariantivEXT :: FunPtr (GLuint -> Ptr GLint -> IO ())
ptr_glVariantivEXT = unsafePerformIO $ getCommand "glVariantivEXT"

-- glVariantsvEXT --------------------------------------------------------------

glVariantsvEXT
  :: GLuint -- ^ @id@.
  -> Ptr GLshort -- ^ @addr@ pointing to @COMPSIZE(id)@ elements of type @GLshort@.
  -> IO ()
glVariantsvEXT = dyn_glVariantsvEXT ptr_glVariantsvEXT

foreign import CALLCONV "dynamic" dyn_glVariantsvEXT
  :: FunPtr (GLuint -> Ptr GLshort -> IO ())
  ->         GLuint -> Ptr GLshort -> IO ()

{-# NOINLINE ptr_glVariantsvEXT #-}
ptr_glVariantsvEXT :: FunPtr (GLuint -> Ptr GLshort -> IO ())
ptr_glVariantsvEXT = unsafePerformIO $ getCommand "glVariantsvEXT"

-- glVariantubvEXT -------------------------------------------------------------

glVariantubvEXT
  :: GLuint -- ^ @id@.
  -> Ptr GLubyte -- ^ @addr@ pointing to @COMPSIZE(id)@ elements of type @GLubyte@.
  -> IO ()
glVariantubvEXT = dyn_glVariantubvEXT ptr_glVariantubvEXT

foreign import CALLCONV "dynamic" dyn_glVariantubvEXT
  :: FunPtr (GLuint -> Ptr GLubyte -> IO ())
  ->         GLuint -> Ptr GLubyte -> IO ()

{-# NOINLINE ptr_glVariantubvEXT #-}
ptr_glVariantubvEXT :: FunPtr (GLuint -> Ptr GLubyte -> IO ())
ptr_glVariantubvEXT = unsafePerformIO $ getCommand "glVariantubvEXT"

-- glVariantuivEXT -------------------------------------------------------------

glVariantuivEXT
  :: GLuint -- ^ @id@.
  -> Ptr GLuint -- ^ @addr@ pointing to @COMPSIZE(id)@ elements of type @GLuint@.
  -> IO ()
glVariantuivEXT = dyn_glVariantuivEXT ptr_glVariantuivEXT

foreign import CALLCONV "dynamic" dyn_glVariantuivEXT
  :: FunPtr (GLuint -> Ptr GLuint -> IO ())
  ->         GLuint -> Ptr GLuint -> IO ()

{-# NOINLINE ptr_glVariantuivEXT #-}
ptr_glVariantuivEXT :: FunPtr (GLuint -> Ptr GLuint -> IO ())
ptr_glVariantuivEXT = unsafePerformIO $ getCommand "glVariantuivEXT"

-- glVariantusvEXT -------------------------------------------------------------

glVariantusvEXT
  :: GLuint -- ^ @id@.
  -> Ptr GLushort -- ^ @addr@ pointing to @COMPSIZE(id)@ elements of type @GLushort@.
  -> IO ()
glVariantusvEXT = dyn_glVariantusvEXT ptr_glVariantusvEXT

foreign import CALLCONV "dynamic" dyn_glVariantusvEXT
  :: FunPtr (GLuint -> Ptr GLushort -> IO ())
  ->         GLuint -> Ptr GLushort -> IO ()

{-# NOINLINE ptr_glVariantusvEXT #-}
ptr_glVariantusvEXT :: FunPtr (GLuint -> Ptr GLushort -> IO ())
ptr_glVariantusvEXT = unsafePerformIO $ getCommand "glVariantusvEXT"

-- glVertex2bOES ---------------------------------------------------------------

glVertex2bOES
  :: GLbyte -- ^ @x@.
  -> GLbyte -- ^ @y@.
  -> IO ()
glVertex2bOES = dyn_glVertex2bOES ptr_glVertex2bOES

foreign import CALLCONV "dynamic" dyn_glVertex2bOES
  :: FunPtr (GLbyte -> GLbyte -> IO ())
  ->         GLbyte -> GLbyte -> IO ()

{-# NOINLINE ptr_glVertex2bOES #-}
ptr_glVertex2bOES :: FunPtr (GLbyte -> GLbyte -> IO ())
ptr_glVertex2bOES = unsafePerformIO $ getCommand "glVertex2bOES"

-- glVertex2bvOES --------------------------------------------------------------

glVertex2bvOES
  :: Ptr GLbyte -- ^ @coords@ pointing to @2@ elements of type @GLbyte@.
  -> IO ()
glVertex2bvOES = dyn_glVertex2bvOES ptr_glVertex2bvOES

foreign import CALLCONV "dynamic" dyn_glVertex2bvOES
  :: FunPtr (Ptr GLbyte -> IO ())
  ->         Ptr GLbyte -> IO ()

{-# NOINLINE ptr_glVertex2bvOES #-}
ptr_glVertex2bvOES :: FunPtr (Ptr GLbyte -> IO ())
ptr_glVertex2bvOES = unsafePerformIO $ getCommand "glVertex2bvOES"

-- glVertex2d ------------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glVertex.xml OpenGL 2.x>
glVertex2d
  :: GLdouble -- ^ @x@ of type @CoordD@.
  -> GLdouble -- ^ @y@ of type @CoordD@.
  -> IO ()
glVertex2d = dyn_glVertex2d ptr_glVertex2d

foreign import CALLCONV "dynamic" dyn_glVertex2d
  :: FunPtr (GLdouble -> GLdouble -> IO ())
  ->         GLdouble -> GLdouble -> IO ()

{-# NOINLINE ptr_glVertex2d #-}
ptr_glVertex2d :: FunPtr (GLdouble -> GLdouble -> IO ())
ptr_glVertex2d = unsafePerformIO $ getCommand "glVertex2d"

-- glVertex2dv -----------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glVertex.xml OpenGL 2.x>
glVertex2dv
  :: Ptr GLdouble -- ^ @v@ pointing to @2@ elements of type @CoordD@.
  -> IO ()
glVertex2dv = dyn_glVertex2dv ptr_glVertex2dv

foreign import CALLCONV "dynamic" dyn_glVertex2dv
  :: FunPtr (Ptr GLdouble -> IO ())
  ->         Ptr GLdouble -> IO ()

{-# NOINLINE ptr_glVertex2dv #-}
ptr_glVertex2dv :: FunPtr (Ptr GLdouble -> IO ())
ptr_glVertex2dv = unsafePerformIO $ getCommand "glVertex2dv"

-- glVertex2f ------------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glVertex.xml OpenGL 2.x>
glVertex2f
  :: GLfloat -- ^ @x@ of type @CoordF@.
  -> GLfloat -- ^ @y@ of type @CoordF@.
  -> IO ()
glVertex2f = dyn_glVertex2f ptr_glVertex2f

foreign import CALLCONV "dynamic" dyn_glVertex2f
  :: FunPtr (GLfloat -> GLfloat -> IO ())
  ->         GLfloat -> GLfloat -> IO ()

{-# NOINLINE ptr_glVertex2f #-}
ptr_glVertex2f :: FunPtr (GLfloat -> GLfloat -> IO ())
ptr_glVertex2f = unsafePerformIO $ getCommand "glVertex2f"

-- glVertex2fv -----------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glVertex.xml OpenGL 2.x>
glVertex2fv
  :: Ptr GLfloat -- ^ @v@ pointing to @2@ elements of type @CoordF@.
  -> IO ()
glVertex2fv = dyn_glVertex2fv ptr_glVertex2fv

foreign import CALLCONV "dynamic" dyn_glVertex2fv
  :: FunPtr (Ptr GLfloat -> IO ())
  ->         Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glVertex2fv #-}
ptr_glVertex2fv :: FunPtr (Ptr GLfloat -> IO ())
ptr_glVertex2fv = unsafePerformIO $ getCommand "glVertex2fv"

-- glVertex2hNV ----------------------------------------------------------------

glVertex2hNV
  :: GLhalfNV -- ^ @x@ of type @Half16NV@.
  -> GLhalfNV -- ^ @y@ of type @Half16NV@.
  -> IO ()
glVertex2hNV = dyn_glVertex2hNV ptr_glVertex2hNV

foreign import CALLCONV "dynamic" dyn_glVertex2hNV
  :: FunPtr (GLhalfNV -> GLhalfNV -> IO ())
  ->         GLhalfNV -> GLhalfNV -> IO ()

{-# NOINLINE ptr_glVertex2hNV #-}
ptr_glVertex2hNV :: FunPtr (GLhalfNV -> GLhalfNV -> IO ())
ptr_glVertex2hNV = unsafePerformIO $ getCommand "glVertex2hNV"

-- glVertex2hvNV ---------------------------------------------------------------

glVertex2hvNV
  :: Ptr GLhalfNV -- ^ @v@ pointing to @2@ elements of type @Half16NV@.
  -> IO ()
glVertex2hvNV = dyn_glVertex2hvNV ptr_glVertex2hvNV

foreign import CALLCONV "dynamic" dyn_glVertex2hvNV
  :: FunPtr (Ptr GLhalfNV -> IO ())
  ->         Ptr GLhalfNV -> IO ()

{-# NOINLINE ptr_glVertex2hvNV #-}
ptr_glVertex2hvNV :: FunPtr (Ptr GLhalfNV -> IO ())
ptr_glVertex2hvNV = unsafePerformIO $ getCommand "glVertex2hvNV"

-- glVertex2i ------------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glVertex.xml OpenGL 2.x>
glVertex2i
  :: GLint -- ^ @x@ of type @CoordI@.
  -> GLint -- ^ @y@ of type @CoordI@.
  -> IO ()
glVertex2i = dyn_glVertex2i ptr_glVertex2i

foreign import CALLCONV "dynamic" dyn_glVertex2i
  :: FunPtr (GLint -> GLint -> IO ())
  ->         GLint -> GLint -> IO ()

{-# NOINLINE ptr_glVertex2i #-}
ptr_glVertex2i :: FunPtr (GLint -> GLint -> IO ())
ptr_glVertex2i = unsafePerformIO $ getCommand "glVertex2i"

-- glVertex2iv -----------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glVertex.xml OpenGL 2.x>
glVertex2iv
  :: Ptr GLint -- ^ @v@ pointing to @2@ elements of type @CoordI@.
  -> IO ()
glVertex2iv = dyn_glVertex2iv ptr_glVertex2iv

foreign import CALLCONV "dynamic" dyn_glVertex2iv
  :: FunPtr (Ptr GLint -> IO ())
  ->         Ptr GLint -> IO ()

{-# NOINLINE ptr_glVertex2iv #-}
ptr_glVertex2iv :: FunPtr (Ptr GLint -> IO ())
ptr_glVertex2iv = unsafePerformIO $ getCommand "glVertex2iv"

-- glVertex2s ------------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glVertex.xml OpenGL 2.x>
glVertex2s
  :: GLshort -- ^ @x@ of type @CoordS@.
  -> GLshort -- ^ @y@ of type @CoordS@.
  -> IO ()
glVertex2s = dyn_glVertex2s ptr_glVertex2s

foreign import CALLCONV "dynamic" dyn_glVertex2s
  :: FunPtr (GLshort -> GLshort -> IO ())
  ->         GLshort -> GLshort -> IO ()

{-# NOINLINE ptr_glVertex2s #-}
ptr_glVertex2s :: FunPtr (GLshort -> GLshort -> IO ())
ptr_glVertex2s = unsafePerformIO $ getCommand "glVertex2s"

-- glVertex2sv -----------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glVertex.xml OpenGL 2.x>
glVertex2sv
  :: Ptr GLshort -- ^ @v@ pointing to @2@ elements of type @CoordS@.
  -> IO ()
glVertex2sv = dyn_glVertex2sv ptr_glVertex2sv

foreign import CALLCONV "dynamic" dyn_glVertex2sv
  :: FunPtr (Ptr GLshort -> IO ())
  ->         Ptr GLshort -> IO ()

{-# NOINLINE ptr_glVertex2sv #-}
ptr_glVertex2sv :: FunPtr (Ptr GLshort -> IO ())
ptr_glVertex2sv = unsafePerformIO $ getCommand "glVertex2sv"

-- glVertex2xOES ---------------------------------------------------------------

glVertex2xOES
  :: GLfixed -- ^ @x@.
  -> IO ()
glVertex2xOES = dyn_glVertex2xOES ptr_glVertex2xOES

foreign import CALLCONV "dynamic" dyn_glVertex2xOES
  :: FunPtr (GLfixed -> IO ())
  ->         GLfixed -> IO ()

{-# NOINLINE ptr_glVertex2xOES #-}
ptr_glVertex2xOES :: FunPtr (GLfixed -> IO ())
ptr_glVertex2xOES = unsafePerformIO $ getCommand "glVertex2xOES"

-- glVertex2xvOES --------------------------------------------------------------

glVertex2xvOES
  :: Ptr GLfixed -- ^ @coords@ pointing to @2@ elements of type @GLfixed@.
  -> IO ()
glVertex2xvOES = dyn_glVertex2xvOES ptr_glVertex2xvOES

foreign import CALLCONV "dynamic" dyn_glVertex2xvOES
  :: FunPtr (Ptr GLfixed -> IO ())
  ->         Ptr GLfixed -> IO ()

{-# NOINLINE ptr_glVertex2xvOES #-}
ptr_glVertex2xvOES :: FunPtr (Ptr GLfixed -> IO ())
ptr_glVertex2xvOES = unsafePerformIO $ getCommand "glVertex2xvOES"

-- glVertex3bOES ---------------------------------------------------------------

glVertex3bOES
  :: GLbyte -- ^ @x@.
  -> GLbyte -- ^ @y@.
  -> GLbyte -- ^ @z@.
  -> IO ()
glVertex3bOES = dyn_glVertex3bOES ptr_glVertex3bOES

foreign import CALLCONV "dynamic" dyn_glVertex3bOES
  :: FunPtr (GLbyte -> GLbyte -> GLbyte -> IO ())
  ->         GLbyte -> GLbyte -> GLbyte -> IO ()

{-# NOINLINE ptr_glVertex3bOES #-}
ptr_glVertex3bOES :: FunPtr (GLbyte -> GLbyte -> GLbyte -> IO ())
ptr_glVertex3bOES = unsafePerformIO $ getCommand "glVertex3bOES"

-- glVertex3bvOES --------------------------------------------------------------

glVertex3bvOES
  :: Ptr GLbyte -- ^ @coords@ pointing to @3@ elements of type @GLbyte@.
  -> IO ()
glVertex3bvOES = dyn_glVertex3bvOES ptr_glVertex3bvOES

foreign import CALLCONV "dynamic" dyn_glVertex3bvOES
  :: FunPtr (Ptr GLbyte -> IO ())
  ->         Ptr GLbyte -> IO ()

{-# NOINLINE ptr_glVertex3bvOES #-}
ptr_glVertex3bvOES :: FunPtr (Ptr GLbyte -> IO ())
ptr_glVertex3bvOES = unsafePerformIO $ getCommand "glVertex3bvOES"

-- glVertex3d ------------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glVertex.xml OpenGL 2.x>
glVertex3d
  :: GLdouble -- ^ @x@ of type @CoordD@.
  -> GLdouble -- ^ @y@ of type @CoordD@.
  -> GLdouble -- ^ @z@ of type @CoordD@.
  -> IO ()
glVertex3d = dyn_glVertex3d ptr_glVertex3d

foreign import CALLCONV "dynamic" dyn_glVertex3d
  :: FunPtr (GLdouble -> GLdouble -> GLdouble -> IO ())
  ->         GLdouble -> GLdouble -> GLdouble -> IO ()

{-# NOINLINE ptr_glVertex3d #-}
ptr_glVertex3d :: FunPtr (GLdouble -> GLdouble -> GLdouble -> IO ())
ptr_glVertex3d = unsafePerformIO $ getCommand "glVertex3d"

-- glVertex3dv -----------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glVertex.xml OpenGL 2.x>
glVertex3dv
  :: Ptr GLdouble -- ^ @v@ pointing to @3@ elements of type @CoordD@.
  -> IO ()
glVertex3dv = dyn_glVertex3dv ptr_glVertex3dv

foreign import CALLCONV "dynamic" dyn_glVertex3dv
  :: FunPtr (Ptr GLdouble -> IO ())
  ->         Ptr GLdouble -> IO ()

{-# NOINLINE ptr_glVertex3dv #-}
ptr_glVertex3dv :: FunPtr (Ptr GLdouble -> IO ())
ptr_glVertex3dv = unsafePerformIO $ getCommand "glVertex3dv"

-- glVertex3f ------------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glVertex.xml OpenGL 2.x>
glVertex3f
  :: GLfloat -- ^ @x@ of type @CoordF@.
  -> GLfloat -- ^ @y@ of type @CoordF@.
  -> GLfloat -- ^ @z@ of type @CoordF@.
  -> IO ()
glVertex3f = dyn_glVertex3f ptr_glVertex3f

foreign import CALLCONV "dynamic" dyn_glVertex3f
  :: FunPtr (GLfloat -> GLfloat -> GLfloat -> IO ())
  ->         GLfloat -> GLfloat -> GLfloat -> IO ()

{-# NOINLINE ptr_glVertex3f #-}
ptr_glVertex3f :: FunPtr (GLfloat -> GLfloat -> GLfloat -> IO ())
ptr_glVertex3f = unsafePerformIO $ getCommand "glVertex3f"

-- glVertex3fv -----------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glVertex.xml OpenGL 2.x>
glVertex3fv
  :: Ptr GLfloat -- ^ @v@ pointing to @3@ elements of type @CoordF@.
  -> IO ()
glVertex3fv = dyn_glVertex3fv ptr_glVertex3fv

foreign import CALLCONV "dynamic" dyn_glVertex3fv
  :: FunPtr (Ptr GLfloat -> IO ())
  ->         Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glVertex3fv #-}
ptr_glVertex3fv :: FunPtr (Ptr GLfloat -> IO ())
ptr_glVertex3fv = unsafePerformIO $ getCommand "glVertex3fv"

-- glVertex3hNV ----------------------------------------------------------------

glVertex3hNV
  :: GLhalfNV -- ^ @x@ of type @Half16NV@.
  -> GLhalfNV -- ^ @y@ of type @Half16NV@.
  -> GLhalfNV -- ^ @z@ of type @Half16NV@.
  -> IO ()
glVertex3hNV = dyn_glVertex3hNV ptr_glVertex3hNV

foreign import CALLCONV "dynamic" dyn_glVertex3hNV
  :: FunPtr (GLhalfNV -> GLhalfNV -> GLhalfNV -> IO ())
  ->         GLhalfNV -> GLhalfNV -> GLhalfNV -> IO ()

{-# NOINLINE ptr_glVertex3hNV #-}
ptr_glVertex3hNV :: FunPtr (GLhalfNV -> GLhalfNV -> GLhalfNV -> IO ())
ptr_glVertex3hNV = unsafePerformIO $ getCommand "glVertex3hNV"

-- glVertex3hvNV ---------------------------------------------------------------

glVertex3hvNV
  :: Ptr GLhalfNV -- ^ @v@ pointing to @3@ elements of type @Half16NV@.
  -> IO ()
glVertex3hvNV = dyn_glVertex3hvNV ptr_glVertex3hvNV

foreign import CALLCONV "dynamic" dyn_glVertex3hvNV
  :: FunPtr (Ptr GLhalfNV -> IO ())
  ->         Ptr GLhalfNV -> IO ()

{-# NOINLINE ptr_glVertex3hvNV #-}
ptr_glVertex3hvNV :: FunPtr (Ptr GLhalfNV -> IO ())
ptr_glVertex3hvNV = unsafePerformIO $ getCommand "glVertex3hvNV"

-- glVertex3i ------------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glVertex.xml OpenGL 2.x>
glVertex3i
  :: GLint -- ^ @x@ of type @CoordI@.
  -> GLint -- ^ @y@ of type @CoordI@.
  -> GLint -- ^ @z@ of type @CoordI@.
  -> IO ()
glVertex3i = dyn_glVertex3i ptr_glVertex3i

foreign import CALLCONV "dynamic" dyn_glVertex3i
  :: FunPtr (GLint -> GLint -> GLint -> IO ())
  ->         GLint -> GLint -> GLint -> IO ()

{-# NOINLINE ptr_glVertex3i #-}
ptr_glVertex3i :: FunPtr (GLint -> GLint -> GLint -> IO ())
ptr_glVertex3i = unsafePerformIO $ getCommand "glVertex3i"

-- glVertex3iv -----------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glVertex.xml OpenGL 2.x>
glVertex3iv
  :: Ptr GLint -- ^ @v@ pointing to @3@ elements of type @CoordI@.
  -> IO ()
glVertex3iv = dyn_glVertex3iv ptr_glVertex3iv

foreign import CALLCONV "dynamic" dyn_glVertex3iv
  :: FunPtr (Ptr GLint -> IO ())
  ->         Ptr GLint -> IO ()

{-# NOINLINE ptr_glVertex3iv #-}
ptr_glVertex3iv :: FunPtr (Ptr GLint -> IO ())
ptr_glVertex3iv = unsafePerformIO $ getCommand "glVertex3iv"

-- glVertex3s ------------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glVertex.xml OpenGL 2.x>
glVertex3s
  :: GLshort -- ^ @x@ of type @CoordS@.
  -> GLshort -- ^ @y@ of type @CoordS@.
  -> GLshort -- ^ @z@ of type @CoordS@.
  -> IO ()
glVertex3s = dyn_glVertex3s ptr_glVertex3s

foreign import CALLCONV "dynamic" dyn_glVertex3s
  :: FunPtr (GLshort -> GLshort -> GLshort -> IO ())
  ->         GLshort -> GLshort -> GLshort -> IO ()

{-# NOINLINE ptr_glVertex3s #-}
ptr_glVertex3s :: FunPtr (GLshort -> GLshort -> GLshort -> IO ())
ptr_glVertex3s = unsafePerformIO $ getCommand "glVertex3s"

-- glVertex3sv -----------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glVertex.xml OpenGL 2.x>
glVertex3sv
  :: Ptr GLshort -- ^ @v@ pointing to @3@ elements of type @CoordS@.
  -> IO ()
glVertex3sv = dyn_glVertex3sv ptr_glVertex3sv

foreign import CALLCONV "dynamic" dyn_glVertex3sv
  :: FunPtr (Ptr GLshort -> IO ())
  ->         Ptr GLshort -> IO ()

{-# NOINLINE ptr_glVertex3sv #-}
ptr_glVertex3sv :: FunPtr (Ptr GLshort -> IO ())
ptr_glVertex3sv = unsafePerformIO $ getCommand "glVertex3sv"

-- glVertex3xOES ---------------------------------------------------------------

glVertex3xOES
  :: GLfixed -- ^ @x@.
  -> GLfixed -- ^ @y@.
  -> IO ()
glVertex3xOES = dyn_glVertex3xOES ptr_glVertex3xOES

foreign import CALLCONV "dynamic" dyn_glVertex3xOES
  :: FunPtr (GLfixed -> GLfixed -> IO ())
  ->         GLfixed -> GLfixed -> IO ()

{-# NOINLINE ptr_glVertex3xOES #-}
ptr_glVertex3xOES :: FunPtr (GLfixed -> GLfixed -> IO ())
ptr_glVertex3xOES = unsafePerformIO $ getCommand "glVertex3xOES"

-- glVertex3xvOES --------------------------------------------------------------

glVertex3xvOES
  :: Ptr GLfixed -- ^ @coords@ pointing to @3@ elements of type @GLfixed@.
  -> IO ()
glVertex3xvOES = dyn_glVertex3xvOES ptr_glVertex3xvOES

foreign import CALLCONV "dynamic" dyn_glVertex3xvOES
  :: FunPtr (Ptr GLfixed -> IO ())
  ->         Ptr GLfixed -> IO ()

{-# NOINLINE ptr_glVertex3xvOES #-}
ptr_glVertex3xvOES :: FunPtr (Ptr GLfixed -> IO ())
ptr_glVertex3xvOES = unsafePerformIO $ getCommand "glVertex3xvOES"

-- glVertex4bOES ---------------------------------------------------------------

glVertex4bOES
  :: GLbyte -- ^ @x@.
  -> GLbyte -- ^ @y@.
  -> GLbyte -- ^ @z@.
  -> GLbyte -- ^ @w@.
  -> IO ()
glVertex4bOES = dyn_glVertex4bOES ptr_glVertex4bOES

foreign import CALLCONV "dynamic" dyn_glVertex4bOES
  :: FunPtr (GLbyte -> GLbyte -> GLbyte -> GLbyte -> IO ())
  ->         GLbyte -> GLbyte -> GLbyte -> GLbyte -> IO ()

{-# NOINLINE ptr_glVertex4bOES #-}
ptr_glVertex4bOES :: FunPtr (GLbyte -> GLbyte -> GLbyte -> GLbyte -> IO ())
ptr_glVertex4bOES = unsafePerformIO $ getCommand "glVertex4bOES"

-- glVertex4bvOES --------------------------------------------------------------

glVertex4bvOES
  :: Ptr GLbyte -- ^ @coords@ pointing to @4@ elements of type @GLbyte@.
  -> IO ()
glVertex4bvOES = dyn_glVertex4bvOES ptr_glVertex4bvOES

foreign import CALLCONV "dynamic" dyn_glVertex4bvOES
  :: FunPtr (Ptr GLbyte -> IO ())
  ->         Ptr GLbyte -> IO ()

{-# NOINLINE ptr_glVertex4bvOES #-}
ptr_glVertex4bvOES :: FunPtr (Ptr GLbyte -> IO ())
ptr_glVertex4bvOES = unsafePerformIO $ getCommand "glVertex4bvOES"

-- glVertex4d ------------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glVertex.xml OpenGL 2.x>
glVertex4d
  :: GLdouble -- ^ @x@ of type @CoordD@.
  -> GLdouble -- ^ @y@ of type @CoordD@.
  -> GLdouble -- ^ @z@ of type @CoordD@.
  -> GLdouble -- ^ @w@ of type @CoordD@.
  -> IO ()
glVertex4d = dyn_glVertex4d ptr_glVertex4d

foreign import CALLCONV "dynamic" dyn_glVertex4d
  :: FunPtr (GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ())
  ->         GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ()

{-# NOINLINE ptr_glVertex4d #-}
ptr_glVertex4d :: FunPtr (GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ())
ptr_glVertex4d = unsafePerformIO $ getCommand "glVertex4d"

-- glVertex4dv -----------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glVertex.xml OpenGL 2.x>
glVertex4dv
  :: Ptr GLdouble -- ^ @v@ pointing to @4@ elements of type @CoordD@.
  -> IO ()
glVertex4dv = dyn_glVertex4dv ptr_glVertex4dv

foreign import CALLCONV "dynamic" dyn_glVertex4dv
  :: FunPtr (Ptr GLdouble -> IO ())
  ->         Ptr GLdouble -> IO ()

{-# NOINLINE ptr_glVertex4dv #-}
ptr_glVertex4dv :: FunPtr (Ptr GLdouble -> IO ())
ptr_glVertex4dv = unsafePerformIO $ getCommand "glVertex4dv"

-- glVertex4f ------------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glVertex.xml OpenGL 2.x>
glVertex4f
  :: GLfloat -- ^ @x@ of type @CoordF@.
  -> GLfloat -- ^ @y@ of type @CoordF@.
  -> GLfloat -- ^ @z@ of type @CoordF@.
  -> GLfloat -- ^ @w@ of type @CoordF@.
  -> IO ()
glVertex4f = dyn_glVertex4f ptr_glVertex4f

foreign import CALLCONV "dynamic" dyn_glVertex4f
  :: FunPtr (GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
  ->         GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ()

{-# NOINLINE ptr_glVertex4f #-}
ptr_glVertex4f :: FunPtr (GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
ptr_glVertex4f = unsafePerformIO $ getCommand "glVertex4f"

-- glVertex4fv -----------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glVertex.xml OpenGL 2.x>
glVertex4fv
  :: Ptr GLfloat -- ^ @v@ pointing to @4@ elements of type @CoordF@.
  -> IO ()
glVertex4fv = dyn_glVertex4fv ptr_glVertex4fv

foreign import CALLCONV "dynamic" dyn_glVertex4fv
  :: FunPtr (Ptr GLfloat -> IO ())
  ->         Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glVertex4fv #-}
ptr_glVertex4fv :: FunPtr (Ptr GLfloat -> IO ())
ptr_glVertex4fv = unsafePerformIO $ getCommand "glVertex4fv"

-- glVertex4hNV ----------------------------------------------------------------

glVertex4hNV
  :: GLhalfNV -- ^ @x@ of type @Half16NV@.
  -> GLhalfNV -- ^ @y@ of type @Half16NV@.
  -> GLhalfNV -- ^ @z@ of type @Half16NV@.
  -> GLhalfNV -- ^ @w@ of type @Half16NV@.
  -> IO ()
glVertex4hNV = dyn_glVertex4hNV ptr_glVertex4hNV

foreign import CALLCONV "dynamic" dyn_glVertex4hNV
  :: FunPtr (GLhalfNV -> GLhalfNV -> GLhalfNV -> GLhalfNV -> IO ())
  ->         GLhalfNV -> GLhalfNV -> GLhalfNV -> GLhalfNV -> IO ()

{-# NOINLINE ptr_glVertex4hNV #-}
ptr_glVertex4hNV :: FunPtr (GLhalfNV -> GLhalfNV -> GLhalfNV -> GLhalfNV -> IO ())
ptr_glVertex4hNV = unsafePerformIO $ getCommand "glVertex4hNV"

-- glVertex4hvNV ---------------------------------------------------------------

glVertex4hvNV
  :: Ptr GLhalfNV -- ^ @v@ pointing to @4@ elements of type @Half16NV@.
  -> IO ()
glVertex4hvNV = dyn_glVertex4hvNV ptr_glVertex4hvNV

foreign import CALLCONV "dynamic" dyn_glVertex4hvNV
  :: FunPtr (Ptr GLhalfNV -> IO ())
  ->         Ptr GLhalfNV -> IO ()

{-# NOINLINE ptr_glVertex4hvNV #-}
ptr_glVertex4hvNV :: FunPtr (Ptr GLhalfNV -> IO ())
ptr_glVertex4hvNV = unsafePerformIO $ getCommand "glVertex4hvNV"

-- glVertex4i ------------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glVertex.xml OpenGL 2.x>
glVertex4i
  :: GLint -- ^ @x@ of type @CoordI@.
  -> GLint -- ^ @y@ of type @CoordI@.
  -> GLint -- ^ @z@ of type @CoordI@.
  -> GLint -- ^ @w@ of type @CoordI@.
  -> IO ()
glVertex4i = dyn_glVertex4i ptr_glVertex4i

foreign import CALLCONV "dynamic" dyn_glVertex4i
  :: FunPtr (GLint -> GLint -> GLint -> GLint -> IO ())
  ->         GLint -> GLint -> GLint -> GLint -> IO ()

{-# NOINLINE ptr_glVertex4i #-}
ptr_glVertex4i :: FunPtr (GLint -> GLint -> GLint -> GLint -> IO ())
ptr_glVertex4i = unsafePerformIO $ getCommand "glVertex4i"

-- glVertex4iv -----------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glVertex.xml OpenGL 2.x>
glVertex4iv
  :: Ptr GLint -- ^ @v@ pointing to @4@ elements of type @CoordI@.
  -> IO ()
glVertex4iv = dyn_glVertex4iv ptr_glVertex4iv

foreign import CALLCONV "dynamic" dyn_glVertex4iv
  :: FunPtr (Ptr GLint -> IO ())
  ->         Ptr GLint -> IO ()

{-# NOINLINE ptr_glVertex4iv #-}
ptr_glVertex4iv :: FunPtr (Ptr GLint -> IO ())
ptr_glVertex4iv = unsafePerformIO $ getCommand "glVertex4iv"

-- glVertex4s ------------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glVertex.xml OpenGL 2.x>
glVertex4s
  :: GLshort -- ^ @x@ of type @CoordS@.
  -> GLshort -- ^ @y@ of type @CoordS@.
  -> GLshort -- ^ @z@ of type @CoordS@.
  -> GLshort -- ^ @w@ of type @CoordS@.
  -> IO ()
glVertex4s = dyn_glVertex4s ptr_glVertex4s

foreign import CALLCONV "dynamic" dyn_glVertex4s
  :: FunPtr (GLshort -> GLshort -> GLshort -> GLshort -> IO ())
  ->         GLshort -> GLshort -> GLshort -> GLshort -> IO ()

{-# NOINLINE ptr_glVertex4s #-}
ptr_glVertex4s :: FunPtr (GLshort -> GLshort -> GLshort -> GLshort -> IO ())
ptr_glVertex4s = unsafePerformIO $ getCommand "glVertex4s"

-- glVertex4sv -----------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glVertex.xml OpenGL 2.x>
glVertex4sv
  :: Ptr GLshort -- ^ @v@ pointing to @4@ elements of type @CoordS@.
  -> IO ()
glVertex4sv = dyn_glVertex4sv ptr_glVertex4sv

foreign import CALLCONV "dynamic" dyn_glVertex4sv
  :: FunPtr (Ptr GLshort -> IO ())
  ->         Ptr GLshort -> IO ()

{-# NOINLINE ptr_glVertex4sv #-}
ptr_glVertex4sv :: FunPtr (Ptr GLshort -> IO ())
ptr_glVertex4sv = unsafePerformIO $ getCommand "glVertex4sv"

-- glVertex4xOES ---------------------------------------------------------------

glVertex4xOES
  :: GLfixed -- ^ @x@.
  -> GLfixed -- ^ @y@.
  -> GLfixed -- ^ @z@.
  -> IO ()
glVertex4xOES = dyn_glVertex4xOES ptr_glVertex4xOES

foreign import CALLCONV "dynamic" dyn_glVertex4xOES
  :: FunPtr (GLfixed -> GLfixed -> GLfixed -> IO ())
  ->         GLfixed -> GLfixed -> GLfixed -> IO ()

{-# NOINLINE ptr_glVertex4xOES #-}
ptr_glVertex4xOES :: FunPtr (GLfixed -> GLfixed -> GLfixed -> IO ())
ptr_glVertex4xOES = unsafePerformIO $ getCommand "glVertex4xOES"

-- glVertex4xvOES --------------------------------------------------------------

glVertex4xvOES
  :: Ptr GLfixed -- ^ @coords@ pointing to @4@ elements of type @GLfixed@.
  -> IO ()
glVertex4xvOES = dyn_glVertex4xvOES ptr_glVertex4xvOES

foreign import CALLCONV "dynamic" dyn_glVertex4xvOES
  :: FunPtr (Ptr GLfixed -> IO ())
  ->         Ptr GLfixed -> IO ()

{-# NOINLINE ptr_glVertex4xvOES #-}
ptr_glVertex4xvOES :: FunPtr (Ptr GLfixed -> IO ())
ptr_glVertex4xvOES = unsafePerformIO $ getCommand "glVertex4xvOES"

-- glVertexArrayAttribBinding --------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glVertexAttribBinding.xhtml OpenGL 4.x>
glVertexArrayAttribBinding
  :: GLuint -- ^ @vaobj@.
  -> GLuint -- ^ @attribindex@.
  -> GLuint -- ^ @bindingindex@.
  -> IO ()
glVertexArrayAttribBinding = dyn_glVertexArrayAttribBinding ptr_glVertexArrayAttribBinding

foreign import CALLCONV "dynamic" dyn_glVertexArrayAttribBinding
  :: FunPtr (GLuint -> GLuint -> GLuint -> IO ())
  ->         GLuint -> GLuint -> GLuint -> IO ()

{-# NOINLINE ptr_glVertexArrayAttribBinding #-}
ptr_glVertexArrayAttribBinding :: FunPtr (GLuint -> GLuint -> GLuint -> IO ())
ptr_glVertexArrayAttribBinding = unsafePerformIO $ getCommand "glVertexArrayAttribBinding"

-- glVertexArrayAttribFormat ---------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glVertexAttribFormat.xhtml OpenGL 4.x>
glVertexArrayAttribFormat
  :: GLuint -- ^ @vaobj@.
  -> GLuint -- ^ @attribindex@.
  -> GLint -- ^ @size@.
  -> GLenum -- ^ @type@.
  -> GLboolean -- ^ @normalized@.
  -> GLuint -- ^ @relativeoffset@.
  -> IO ()
glVertexArrayAttribFormat = dyn_glVertexArrayAttribFormat ptr_glVertexArrayAttribFormat

foreign import CALLCONV "dynamic" dyn_glVertexArrayAttribFormat
  :: FunPtr (GLuint -> GLuint -> GLint -> GLenum -> GLboolean -> GLuint -> IO ())
  ->         GLuint -> GLuint -> GLint -> GLenum -> GLboolean -> GLuint -> IO ()

{-# NOINLINE ptr_glVertexArrayAttribFormat #-}
ptr_glVertexArrayAttribFormat :: FunPtr (GLuint -> GLuint -> GLint -> GLenum -> GLboolean -> GLuint -> IO ())
ptr_glVertexArrayAttribFormat = unsafePerformIO $ getCommand "glVertexArrayAttribFormat"

-- glVertexArrayAttribIFormat --------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glVertexAttribFormat.xhtml OpenGL 4.x>
glVertexArrayAttribIFormat
  :: GLuint -- ^ @vaobj@.
  -> GLuint -- ^ @attribindex@.
  -> GLint -- ^ @size@.
  -> GLenum -- ^ @type@.
  -> GLuint -- ^ @relativeoffset@.
  -> IO ()
glVertexArrayAttribIFormat = dyn_glVertexArrayAttribIFormat ptr_glVertexArrayAttribIFormat

foreign import CALLCONV "dynamic" dyn_glVertexArrayAttribIFormat
  :: FunPtr (GLuint -> GLuint -> GLint -> GLenum -> GLuint -> IO ())
  ->         GLuint -> GLuint -> GLint -> GLenum -> GLuint -> IO ()

{-# NOINLINE ptr_glVertexArrayAttribIFormat #-}
ptr_glVertexArrayAttribIFormat :: FunPtr (GLuint -> GLuint -> GLint -> GLenum -> GLuint -> IO ())
ptr_glVertexArrayAttribIFormat = unsafePerformIO $ getCommand "glVertexArrayAttribIFormat"

-- glVertexArrayAttribLFormat --------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glVertexAttribFormat.xhtml OpenGL 4.x>
glVertexArrayAttribLFormat
  :: GLuint -- ^ @vaobj@.
  -> GLuint -- ^ @attribindex@.
  -> GLint -- ^ @size@.
  -> GLenum -- ^ @type@.
  -> GLuint -- ^ @relativeoffset@.
  -> IO ()
glVertexArrayAttribLFormat = dyn_glVertexArrayAttribLFormat ptr_glVertexArrayAttribLFormat

foreign import CALLCONV "dynamic" dyn_glVertexArrayAttribLFormat
  :: FunPtr (GLuint -> GLuint -> GLint -> GLenum -> GLuint -> IO ())
  ->         GLuint -> GLuint -> GLint -> GLenum -> GLuint -> IO ()

{-# NOINLINE ptr_glVertexArrayAttribLFormat #-}
ptr_glVertexArrayAttribLFormat :: FunPtr (GLuint -> GLuint -> GLint -> GLenum -> GLuint -> IO ())
ptr_glVertexArrayAttribLFormat = unsafePerformIO $ getCommand "glVertexArrayAttribLFormat"

-- glVertexArrayBindVertexBufferEXT --------------------------------------------

glVertexArrayBindVertexBufferEXT
  :: GLuint -- ^ @vaobj@.
  -> GLuint -- ^ @bindingindex@.
  -> GLuint -- ^ @buffer@.
  -> GLintptr -- ^ @offset@ of type @BufferOffset@.
  -> GLsizei -- ^ @stride@.
  -> IO ()
glVertexArrayBindVertexBufferEXT = dyn_glVertexArrayBindVertexBufferEXT ptr_glVertexArrayBindVertexBufferEXT

foreign import CALLCONV "dynamic" dyn_glVertexArrayBindVertexBufferEXT
  :: FunPtr (GLuint -> GLuint -> GLuint -> GLintptr -> GLsizei -> IO ())
  ->         GLuint -> GLuint -> GLuint -> GLintptr -> GLsizei -> IO ()

{-# NOINLINE ptr_glVertexArrayBindVertexBufferEXT #-}
ptr_glVertexArrayBindVertexBufferEXT :: FunPtr (GLuint -> GLuint -> GLuint -> GLintptr -> GLsizei -> IO ())
ptr_glVertexArrayBindVertexBufferEXT = unsafePerformIO $ getCommand "glVertexArrayBindVertexBufferEXT"

-- glVertexArrayBindingDivisor -------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glVertexBindingDivisor.xhtml OpenGL 4.x>
glVertexArrayBindingDivisor
  :: GLuint -- ^ @vaobj@.
  -> GLuint -- ^ @bindingindex@.
  -> GLuint -- ^ @divisor@.
  -> IO ()
glVertexArrayBindingDivisor = dyn_glVertexArrayBindingDivisor ptr_glVertexArrayBindingDivisor

foreign import CALLCONV "dynamic" dyn_glVertexArrayBindingDivisor
  :: FunPtr (GLuint -> GLuint -> GLuint -> IO ())
  ->         GLuint -> GLuint -> GLuint -> IO ()

{-# NOINLINE ptr_glVertexArrayBindingDivisor #-}
ptr_glVertexArrayBindingDivisor :: FunPtr (GLuint -> GLuint -> GLuint -> IO ())
ptr_glVertexArrayBindingDivisor = unsafePerformIO $ getCommand "glVertexArrayBindingDivisor"

-- glVertexArrayColorOffsetEXT -------------------------------------------------

glVertexArrayColorOffsetEXT
  :: GLuint -- ^ @vaobj@.
  -> GLuint -- ^ @buffer@.
  -> GLint -- ^ @size@.
  -> GLenum -- ^ @type@ of type @ColorPointerType@.
  -> GLsizei -- ^ @stride@.
  -> GLintptr -- ^ @offset@.
  -> IO ()
glVertexArrayColorOffsetEXT = dyn_glVertexArrayColorOffsetEXT ptr_glVertexArrayColorOffsetEXT

foreign import CALLCONV "dynamic" dyn_glVertexArrayColorOffsetEXT
  :: FunPtr (GLuint -> GLuint -> GLint -> GLenum -> GLsizei -> GLintptr -> IO ())
  ->         GLuint -> GLuint -> GLint -> GLenum -> GLsizei -> GLintptr -> IO ()

{-# NOINLINE ptr_glVertexArrayColorOffsetEXT #-}
ptr_glVertexArrayColorOffsetEXT :: FunPtr (GLuint -> GLuint -> GLint -> GLenum -> GLsizei -> GLintptr -> IO ())
ptr_glVertexArrayColorOffsetEXT = unsafePerformIO $ getCommand "glVertexArrayColorOffsetEXT"

-- glVertexArrayEdgeFlagOffsetEXT ----------------------------------------------

glVertexArrayEdgeFlagOffsetEXT
  :: GLuint -- ^ @vaobj@.
  -> GLuint -- ^ @buffer@.
  -> GLsizei -- ^ @stride@.
  -> GLintptr -- ^ @offset@.
  -> IO ()
glVertexArrayEdgeFlagOffsetEXT = dyn_glVertexArrayEdgeFlagOffsetEXT ptr_glVertexArrayEdgeFlagOffsetEXT

foreign import CALLCONV "dynamic" dyn_glVertexArrayEdgeFlagOffsetEXT
  :: FunPtr (GLuint -> GLuint -> GLsizei -> GLintptr -> IO ())
  ->         GLuint -> GLuint -> GLsizei -> GLintptr -> IO ()

{-# NOINLINE ptr_glVertexArrayEdgeFlagOffsetEXT #-}
ptr_glVertexArrayEdgeFlagOffsetEXT :: FunPtr (GLuint -> GLuint -> GLsizei -> GLintptr -> IO ())
ptr_glVertexArrayEdgeFlagOffsetEXT = unsafePerformIO $ getCommand "glVertexArrayEdgeFlagOffsetEXT"

-- glVertexArrayElementBuffer --------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glVertexArrayElementBuffer.xhtml OpenGL 4.x>
glVertexArrayElementBuffer
  :: GLuint -- ^ @vaobj@.
  -> GLuint -- ^ @buffer@.
  -> IO ()
glVertexArrayElementBuffer = dyn_glVertexArrayElementBuffer ptr_glVertexArrayElementBuffer

foreign import CALLCONV "dynamic" dyn_glVertexArrayElementBuffer
  :: FunPtr (GLuint -> GLuint -> IO ())
  ->         GLuint -> GLuint -> IO ()

{-# NOINLINE ptr_glVertexArrayElementBuffer #-}
ptr_glVertexArrayElementBuffer :: FunPtr (GLuint -> GLuint -> IO ())
ptr_glVertexArrayElementBuffer = unsafePerformIO $ getCommand "glVertexArrayElementBuffer"

-- glVertexArrayFogCoordOffsetEXT ----------------------------------------------

glVertexArrayFogCoordOffsetEXT
  :: GLuint -- ^ @vaobj@.
  -> GLuint -- ^ @buffer@.
  -> GLenum -- ^ @type@ of type @FogCoordinatePointerType@.
  -> GLsizei -- ^ @stride@.
  -> GLintptr -- ^ @offset@.
  -> IO ()
glVertexArrayFogCoordOffsetEXT = dyn_glVertexArrayFogCoordOffsetEXT ptr_glVertexArrayFogCoordOffsetEXT

foreign import CALLCONV "dynamic" dyn_glVertexArrayFogCoordOffsetEXT
  :: FunPtr (GLuint -> GLuint -> GLenum -> GLsizei -> GLintptr -> IO ())
  ->         GLuint -> GLuint -> GLenum -> GLsizei -> GLintptr -> IO ()

{-# NOINLINE ptr_glVertexArrayFogCoordOffsetEXT #-}
ptr_glVertexArrayFogCoordOffsetEXT :: FunPtr (GLuint -> GLuint -> GLenum -> GLsizei -> GLintptr -> IO ())
ptr_glVertexArrayFogCoordOffsetEXT = unsafePerformIO $ getCommand "glVertexArrayFogCoordOffsetEXT"

-- glVertexArrayIndexOffsetEXT -------------------------------------------------

glVertexArrayIndexOffsetEXT
  :: GLuint -- ^ @vaobj@.
  -> GLuint -- ^ @buffer@.
  -> GLenum -- ^ @type@ of type @IndexPointerType@.
  -> GLsizei -- ^ @stride@.
  -> GLintptr -- ^ @offset@.
  -> IO ()
glVertexArrayIndexOffsetEXT = dyn_glVertexArrayIndexOffsetEXT ptr_glVertexArrayIndexOffsetEXT

foreign import CALLCONV "dynamic" dyn_glVertexArrayIndexOffsetEXT
  :: FunPtr (GLuint -> GLuint -> GLenum -> GLsizei -> GLintptr -> IO ())
  ->         GLuint -> GLuint -> GLenum -> GLsizei -> GLintptr -> IO ()

{-# NOINLINE ptr_glVertexArrayIndexOffsetEXT #-}
ptr_glVertexArrayIndexOffsetEXT :: FunPtr (GLuint -> GLuint -> GLenum -> GLsizei -> GLintptr -> IO ())
ptr_glVertexArrayIndexOffsetEXT = unsafePerformIO $ getCommand "glVertexArrayIndexOffsetEXT"

-- glVertexArrayMultiTexCoordOffsetEXT -----------------------------------------

glVertexArrayMultiTexCoordOffsetEXT
  :: GLuint -- ^ @vaobj@.
  -> GLuint -- ^ @buffer@.
  -> GLenum -- ^ @texunit@.
  -> GLint -- ^ @size@.
  -> GLenum -- ^ @type@ of type @TexCoordPointerType@.
  -> GLsizei -- ^ @stride@.
  -> GLintptr -- ^ @offset@.
  -> IO ()
glVertexArrayMultiTexCoordOffsetEXT = dyn_glVertexArrayMultiTexCoordOffsetEXT ptr_glVertexArrayMultiTexCoordOffsetEXT

foreign import CALLCONV "dynamic" dyn_glVertexArrayMultiTexCoordOffsetEXT
  :: FunPtr (GLuint -> GLuint -> GLenum -> GLint -> GLenum -> GLsizei -> GLintptr -> IO ())
  ->         GLuint -> GLuint -> GLenum -> GLint -> GLenum -> GLsizei -> GLintptr -> IO ()

{-# NOINLINE ptr_glVertexArrayMultiTexCoordOffsetEXT #-}
ptr_glVertexArrayMultiTexCoordOffsetEXT :: FunPtr (GLuint -> GLuint -> GLenum -> GLint -> GLenum -> GLsizei -> GLintptr -> IO ())
ptr_glVertexArrayMultiTexCoordOffsetEXT = unsafePerformIO $ getCommand "glVertexArrayMultiTexCoordOffsetEXT"

-- glVertexArrayNormalOffsetEXT ------------------------------------------------

glVertexArrayNormalOffsetEXT
  :: GLuint -- ^ @vaobj@.
  -> GLuint -- ^ @buffer@.
  -> GLenum -- ^ @type@ of type @NormalPointerType@.
  -> GLsizei -- ^ @stride@.
  -> GLintptr -- ^ @offset@.
  -> IO ()
glVertexArrayNormalOffsetEXT = dyn_glVertexArrayNormalOffsetEXT ptr_glVertexArrayNormalOffsetEXT

foreign import CALLCONV "dynamic" dyn_glVertexArrayNormalOffsetEXT
  :: FunPtr (GLuint -> GLuint -> GLenum -> GLsizei -> GLintptr -> IO ())
  ->         GLuint -> GLuint -> GLenum -> GLsizei -> GLintptr -> IO ()

{-# NOINLINE ptr_glVertexArrayNormalOffsetEXT #-}
ptr_glVertexArrayNormalOffsetEXT :: FunPtr (GLuint -> GLuint -> GLenum -> GLsizei -> GLintptr -> IO ())
ptr_glVertexArrayNormalOffsetEXT = unsafePerformIO $ getCommand "glVertexArrayNormalOffsetEXT"

-- glVertexArrayParameteriAPPLE ------------------------------------------------

glVertexArrayParameteriAPPLE
  :: GLenum -- ^ @pname@ of type @VertexArrayPNameAPPLE@.
  -> GLint -- ^ @param@.
  -> IO ()
glVertexArrayParameteriAPPLE = dyn_glVertexArrayParameteriAPPLE ptr_glVertexArrayParameteriAPPLE

foreign import CALLCONV "dynamic" dyn_glVertexArrayParameteriAPPLE
  :: FunPtr (GLenum -> GLint -> IO ())
  ->         GLenum -> GLint -> IO ()

{-# NOINLINE ptr_glVertexArrayParameteriAPPLE #-}
ptr_glVertexArrayParameteriAPPLE :: FunPtr (GLenum -> GLint -> IO ())
ptr_glVertexArrayParameteriAPPLE = unsafePerformIO $ getCommand "glVertexArrayParameteriAPPLE"

-- glVertexArrayRangeAPPLE -----------------------------------------------------

glVertexArrayRangeAPPLE
  :: GLsizei -- ^ @length@.
  -> Ptr a -- ^ @pointer@ pointing to @length@ elements of type @a@.
  -> IO ()
glVertexArrayRangeAPPLE = dyn_glVertexArrayRangeAPPLE ptr_glVertexArrayRangeAPPLE

foreign import CALLCONV "dynamic" dyn_glVertexArrayRangeAPPLE
  :: FunPtr (GLsizei -> Ptr a -> IO ())
  ->         GLsizei -> Ptr a -> IO ()

{-# NOINLINE ptr_glVertexArrayRangeAPPLE #-}
ptr_glVertexArrayRangeAPPLE :: FunPtr (GLsizei -> Ptr a -> IO ())
ptr_glVertexArrayRangeAPPLE = unsafePerformIO $ getCommand "glVertexArrayRangeAPPLE"

-- glVertexArrayRangeNV --------------------------------------------------------

glVertexArrayRangeNV
  :: GLsizei -- ^ @length@.
  -> Ptr a -- ^ @pointer@ pointing to @COMPSIZE(length)@ elements of type @a@.
  -> IO ()
glVertexArrayRangeNV = dyn_glVertexArrayRangeNV ptr_glVertexArrayRangeNV

foreign import CALLCONV "dynamic" dyn_glVertexArrayRangeNV
  :: FunPtr (GLsizei -> Ptr a -> IO ())
  ->         GLsizei -> Ptr a -> IO ()

{-# NOINLINE ptr_glVertexArrayRangeNV #-}
ptr_glVertexArrayRangeNV :: FunPtr (GLsizei -> Ptr a -> IO ())
ptr_glVertexArrayRangeNV = unsafePerformIO $ getCommand "glVertexArrayRangeNV"

-- glVertexArraySecondaryColorOffsetEXT ----------------------------------------

glVertexArraySecondaryColorOffsetEXT
  :: GLuint -- ^ @vaobj@.
  -> GLuint -- ^ @buffer@.
  -> GLint -- ^ @size@.
  -> GLenum -- ^ @type@ of type @ColorPointerType@.
  -> GLsizei -- ^ @stride@.
  -> GLintptr -- ^ @offset@.
  -> IO ()
glVertexArraySecondaryColorOffsetEXT = dyn_glVertexArraySecondaryColorOffsetEXT ptr_glVertexArraySecondaryColorOffsetEXT

foreign import CALLCONV "dynamic" dyn_glVertexArraySecondaryColorOffsetEXT
  :: FunPtr (GLuint -> GLuint -> GLint -> GLenum -> GLsizei -> GLintptr -> IO ())
  ->         GLuint -> GLuint -> GLint -> GLenum -> GLsizei -> GLintptr -> IO ()

{-# NOINLINE ptr_glVertexArraySecondaryColorOffsetEXT #-}
ptr_glVertexArraySecondaryColorOffsetEXT :: FunPtr (GLuint -> GLuint -> GLint -> GLenum -> GLsizei -> GLintptr -> IO ())
ptr_glVertexArraySecondaryColorOffsetEXT = unsafePerformIO $ getCommand "glVertexArraySecondaryColorOffsetEXT"

-- glVertexArrayTexCoordOffsetEXT ----------------------------------------------

glVertexArrayTexCoordOffsetEXT
  :: GLuint -- ^ @vaobj@.
  -> GLuint -- ^ @buffer@.
  -> GLint -- ^ @size@.
  -> GLenum -- ^ @type@ of type @TexCoordPointerType@.
  -> GLsizei -- ^ @stride@.
  -> GLintptr -- ^ @offset@.
  -> IO ()
glVertexArrayTexCoordOffsetEXT = dyn_glVertexArrayTexCoordOffsetEXT ptr_glVertexArrayTexCoordOffsetEXT

foreign import CALLCONV "dynamic" dyn_glVertexArrayTexCoordOffsetEXT
  :: FunPtr (GLuint -> GLuint -> GLint -> GLenum -> GLsizei -> GLintptr -> IO ())
  ->         GLuint -> GLuint -> GLint -> GLenum -> GLsizei -> GLintptr -> IO ()

{-# NOINLINE ptr_glVertexArrayTexCoordOffsetEXT #-}
ptr_glVertexArrayTexCoordOffsetEXT :: FunPtr (GLuint -> GLuint -> GLint -> GLenum -> GLsizei -> GLintptr -> IO ())
ptr_glVertexArrayTexCoordOffsetEXT = unsafePerformIO $ getCommand "glVertexArrayTexCoordOffsetEXT"

-- glVertexArrayVertexAttribBindingEXT -----------------------------------------

glVertexArrayVertexAttribBindingEXT
  :: GLuint -- ^ @vaobj@.
  -> GLuint -- ^ @attribindex@.
  -> GLuint -- ^ @bindingindex@.
  -> IO ()
glVertexArrayVertexAttribBindingEXT = dyn_glVertexArrayVertexAttribBindingEXT ptr_glVertexArrayVertexAttribBindingEXT

foreign import CALLCONV "dynamic" dyn_glVertexArrayVertexAttribBindingEXT
  :: FunPtr (GLuint -> GLuint -> GLuint -> IO ())
  ->         GLuint -> GLuint -> GLuint -> IO ()

{-# NOINLINE ptr_glVertexArrayVertexAttribBindingEXT #-}
ptr_glVertexArrayVertexAttribBindingEXT :: FunPtr (GLuint -> GLuint -> GLuint -> IO ())
ptr_glVertexArrayVertexAttribBindingEXT = unsafePerformIO $ getCommand "glVertexArrayVertexAttribBindingEXT"

-- glVertexArrayVertexAttribDivisorEXT -----------------------------------------

glVertexArrayVertexAttribDivisorEXT
  :: GLuint -- ^ @vaobj@.
  -> GLuint -- ^ @index@.
  -> GLuint -- ^ @divisor@.
  -> IO ()
glVertexArrayVertexAttribDivisorEXT = dyn_glVertexArrayVertexAttribDivisorEXT ptr_glVertexArrayVertexAttribDivisorEXT

foreign import CALLCONV "dynamic" dyn_glVertexArrayVertexAttribDivisorEXT
  :: FunPtr (GLuint -> GLuint -> GLuint -> IO ())
  ->         GLuint -> GLuint -> GLuint -> IO ()

{-# NOINLINE ptr_glVertexArrayVertexAttribDivisorEXT #-}
ptr_glVertexArrayVertexAttribDivisorEXT :: FunPtr (GLuint -> GLuint -> GLuint -> IO ())
ptr_glVertexArrayVertexAttribDivisorEXT = unsafePerformIO $ getCommand "glVertexArrayVertexAttribDivisorEXT"

-- glVertexArrayVertexAttribFormatEXT ------------------------------------------

glVertexArrayVertexAttribFormatEXT
  :: GLuint -- ^ @vaobj@.
  -> GLuint -- ^ @attribindex@.
  -> GLint -- ^ @size@.
  -> GLenum -- ^ @type@.
  -> GLboolean -- ^ @normalized@ of type @Boolean@.
  -> GLuint -- ^ @relativeoffset@.
  -> IO ()
glVertexArrayVertexAttribFormatEXT = dyn_glVertexArrayVertexAttribFormatEXT ptr_glVertexArrayVertexAttribFormatEXT

foreign import CALLCONV "dynamic" dyn_glVertexArrayVertexAttribFormatEXT
  :: FunPtr (GLuint -> GLuint -> GLint -> GLenum -> GLboolean -> GLuint -> IO ())
  ->         GLuint -> GLuint -> GLint -> GLenum -> GLboolean -> GLuint -> IO ()

{-# NOINLINE ptr_glVertexArrayVertexAttribFormatEXT #-}
ptr_glVertexArrayVertexAttribFormatEXT :: FunPtr (GLuint -> GLuint -> GLint -> GLenum -> GLboolean -> GLuint -> IO ())
ptr_glVertexArrayVertexAttribFormatEXT = unsafePerformIO $ getCommand "glVertexArrayVertexAttribFormatEXT"

-- glVertexArrayVertexAttribIFormatEXT -----------------------------------------

glVertexArrayVertexAttribIFormatEXT
  :: GLuint -- ^ @vaobj@.
  -> GLuint -- ^ @attribindex@.
  -> GLint -- ^ @size@.
  -> GLenum -- ^ @type@.
  -> GLuint -- ^ @relativeoffset@.
  -> IO ()
glVertexArrayVertexAttribIFormatEXT = dyn_glVertexArrayVertexAttribIFormatEXT ptr_glVertexArrayVertexAttribIFormatEXT

foreign import CALLCONV "dynamic" dyn_glVertexArrayVertexAttribIFormatEXT
  :: FunPtr (GLuint -> GLuint -> GLint -> GLenum -> GLuint -> IO ())
  ->         GLuint -> GLuint -> GLint -> GLenum -> GLuint -> IO ()

{-# NOINLINE ptr_glVertexArrayVertexAttribIFormatEXT #-}
ptr_glVertexArrayVertexAttribIFormatEXT :: FunPtr (GLuint -> GLuint -> GLint -> GLenum -> GLuint -> IO ())
ptr_glVertexArrayVertexAttribIFormatEXT = unsafePerformIO $ getCommand "glVertexArrayVertexAttribIFormatEXT"

-- glVertexArrayVertexAttribIOffsetEXT -----------------------------------------

glVertexArrayVertexAttribIOffsetEXT
  :: GLuint -- ^ @vaobj@.
  -> GLuint -- ^ @buffer@.
  -> GLuint -- ^ @index@.
  -> GLint -- ^ @size@.
  -> GLenum -- ^ @type@ of type @VertexAttribEnum@.
  -> GLsizei -- ^ @stride@.
  -> GLintptr -- ^ @offset@.
  -> IO ()
glVertexArrayVertexAttribIOffsetEXT = dyn_glVertexArrayVertexAttribIOffsetEXT ptr_glVertexArrayVertexAttribIOffsetEXT

foreign import CALLCONV "dynamic" dyn_glVertexArrayVertexAttribIOffsetEXT
  :: FunPtr (GLuint -> GLuint -> GLuint -> GLint -> GLenum -> GLsizei -> GLintptr -> IO ())
  ->         GLuint -> GLuint -> GLuint -> GLint -> GLenum -> GLsizei -> GLintptr -> IO ()

{-# NOINLINE ptr_glVertexArrayVertexAttribIOffsetEXT #-}
ptr_glVertexArrayVertexAttribIOffsetEXT :: FunPtr (GLuint -> GLuint -> GLuint -> GLint -> GLenum -> GLsizei -> GLintptr -> IO ())
ptr_glVertexArrayVertexAttribIOffsetEXT = unsafePerformIO $ getCommand "glVertexArrayVertexAttribIOffsetEXT"

-- glVertexArrayVertexAttribLFormatEXT -----------------------------------------

glVertexArrayVertexAttribLFormatEXT
  :: GLuint -- ^ @vaobj@.
  -> GLuint -- ^ @attribindex@.
  -> GLint -- ^ @size@.
  -> GLenum -- ^ @type@.
  -> GLuint -- ^ @relativeoffset@.
  -> IO ()
glVertexArrayVertexAttribLFormatEXT = dyn_glVertexArrayVertexAttribLFormatEXT ptr_glVertexArrayVertexAttribLFormatEXT

foreign import CALLCONV "dynamic" dyn_glVertexArrayVertexAttribLFormatEXT
  :: FunPtr (GLuint -> GLuint -> GLint -> GLenum -> GLuint -> IO ())
  ->         GLuint -> GLuint -> GLint -> GLenum -> GLuint -> IO ()

{-# NOINLINE ptr_glVertexArrayVertexAttribLFormatEXT #-}
ptr_glVertexArrayVertexAttribLFormatEXT :: FunPtr (GLuint -> GLuint -> GLint -> GLenum -> GLuint -> IO ())
ptr_glVertexArrayVertexAttribLFormatEXT = unsafePerformIO $ getCommand "glVertexArrayVertexAttribLFormatEXT"

-- glVertexArrayVertexAttribLOffsetEXT -----------------------------------------

glVertexArrayVertexAttribLOffsetEXT
  :: GLuint -- ^ @vaobj@.
  -> GLuint -- ^ @buffer@.
  -> GLuint -- ^ @index@.
  -> GLint -- ^ @size@.
  -> GLenum -- ^ @type@.
  -> GLsizei -- ^ @stride@.
  -> GLintptr -- ^ @offset@ of type @BufferOffset@.
  -> IO ()
glVertexArrayVertexAttribLOffsetEXT = dyn_glVertexArrayVertexAttribLOffsetEXT ptr_glVertexArrayVertexAttribLOffsetEXT

foreign import CALLCONV "dynamic" dyn_glVertexArrayVertexAttribLOffsetEXT
  :: FunPtr (GLuint -> GLuint -> GLuint -> GLint -> GLenum -> GLsizei -> GLintptr -> IO ())
  ->         GLuint -> GLuint -> GLuint -> GLint -> GLenum -> GLsizei -> GLintptr -> IO ()

{-# NOINLINE ptr_glVertexArrayVertexAttribLOffsetEXT #-}
ptr_glVertexArrayVertexAttribLOffsetEXT :: FunPtr (GLuint -> GLuint -> GLuint -> GLint -> GLenum -> GLsizei -> GLintptr -> IO ())
ptr_glVertexArrayVertexAttribLOffsetEXT = unsafePerformIO $ getCommand "glVertexArrayVertexAttribLOffsetEXT"

-- glVertexArrayVertexAttribOffsetEXT ------------------------------------------

glVertexArrayVertexAttribOffsetEXT
  :: GLuint -- ^ @vaobj@.
  -> GLuint -- ^ @buffer@.
  -> GLuint -- ^ @index@.
  -> GLint -- ^ @size@.
  -> GLenum -- ^ @type@ of type @VertexAttribPointerType@.
  -> GLboolean -- ^ @normalized@.
  -> GLsizei -- ^ @stride@.
  -> GLintptr -- ^ @offset@.
  -> IO ()
glVertexArrayVertexAttribOffsetEXT = dyn_glVertexArrayVertexAttribOffsetEXT ptr_glVertexArrayVertexAttribOffsetEXT

foreign import CALLCONV "dynamic" dyn_glVertexArrayVertexAttribOffsetEXT
  :: FunPtr (GLuint -> GLuint -> GLuint -> GLint -> GLenum -> GLboolean -> GLsizei -> GLintptr -> IO ())
  ->         GLuint -> GLuint -> GLuint -> GLint -> GLenum -> GLboolean -> GLsizei -> GLintptr -> IO ()

{-# NOINLINE ptr_glVertexArrayVertexAttribOffsetEXT #-}
ptr_glVertexArrayVertexAttribOffsetEXT :: FunPtr (GLuint -> GLuint -> GLuint -> GLint -> GLenum -> GLboolean -> GLsizei -> GLintptr -> IO ())
ptr_glVertexArrayVertexAttribOffsetEXT = unsafePerformIO $ getCommand "glVertexArrayVertexAttribOffsetEXT"

-- glVertexArrayVertexBindingDivisorEXT ----------------------------------------

glVertexArrayVertexBindingDivisorEXT
  :: GLuint -- ^ @vaobj@.
  -> GLuint -- ^ @bindingindex@.
  -> GLuint -- ^ @divisor@.
  -> IO ()
glVertexArrayVertexBindingDivisorEXT = dyn_glVertexArrayVertexBindingDivisorEXT ptr_glVertexArrayVertexBindingDivisorEXT

foreign import CALLCONV "dynamic" dyn_glVertexArrayVertexBindingDivisorEXT
  :: FunPtr (GLuint -> GLuint -> GLuint -> IO ())
  ->         GLuint -> GLuint -> GLuint -> IO ()

{-# NOINLINE ptr_glVertexArrayVertexBindingDivisorEXT #-}
ptr_glVertexArrayVertexBindingDivisorEXT :: FunPtr (GLuint -> GLuint -> GLuint -> IO ())
ptr_glVertexArrayVertexBindingDivisorEXT = unsafePerformIO $ getCommand "glVertexArrayVertexBindingDivisorEXT"

-- glVertexArrayVertexBuffer ---------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glBindVertexBuffer.xhtml OpenGL 4.x>
glVertexArrayVertexBuffer
  :: GLuint -- ^ @vaobj@.
  -> GLuint -- ^ @bindingindex@.
  -> GLuint -- ^ @buffer@.
  -> GLintptr -- ^ @offset@.
  -> GLsizei -- ^ @stride@.
  -> IO ()
glVertexArrayVertexBuffer = dyn_glVertexArrayVertexBuffer ptr_glVertexArrayVertexBuffer

foreign import CALLCONV "dynamic" dyn_glVertexArrayVertexBuffer
  :: FunPtr (GLuint -> GLuint -> GLuint -> GLintptr -> GLsizei -> IO ())
  ->         GLuint -> GLuint -> GLuint -> GLintptr -> GLsizei -> IO ()

{-# NOINLINE ptr_glVertexArrayVertexBuffer #-}
ptr_glVertexArrayVertexBuffer :: FunPtr (GLuint -> GLuint -> GLuint -> GLintptr -> GLsizei -> IO ())
ptr_glVertexArrayVertexBuffer = unsafePerformIO $ getCommand "glVertexArrayVertexBuffer"

-- glVertexArrayVertexBuffers --------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glBindVertexBuffers.xhtml OpenGL 4.x>
glVertexArrayVertexBuffers
  :: GLuint -- ^ @vaobj@.
  -> GLuint -- ^ @first@.
  -> GLsizei -- ^ @count@.
  -> Ptr GLuint -- ^ @buffers@.
  -> Ptr GLintptr -- ^ @offsets@.
  -> Ptr GLsizei -- ^ @strides@.
  -> IO ()
glVertexArrayVertexBuffers = dyn_glVertexArrayVertexBuffers ptr_glVertexArrayVertexBuffers

foreign import CALLCONV "dynamic" dyn_glVertexArrayVertexBuffers
  :: FunPtr (GLuint -> GLuint -> GLsizei -> Ptr GLuint -> Ptr GLintptr -> Ptr GLsizei -> IO ())
  ->         GLuint -> GLuint -> GLsizei -> Ptr GLuint -> Ptr GLintptr -> Ptr GLsizei -> IO ()

{-# NOINLINE ptr_glVertexArrayVertexBuffers #-}
ptr_glVertexArrayVertexBuffers :: FunPtr (GLuint -> GLuint -> GLsizei -> Ptr GLuint -> Ptr GLintptr -> Ptr GLsizei -> IO ())
ptr_glVertexArrayVertexBuffers = unsafePerformIO $ getCommand "glVertexArrayVertexBuffers"

-- glVertexArrayVertexOffsetEXT ------------------------------------------------

glVertexArrayVertexOffsetEXT
  :: GLuint -- ^ @vaobj@.
  -> GLuint -- ^ @buffer@.
  -> GLint -- ^ @size@.
  -> GLenum -- ^ @type@ of type @VertexPointerType@.
  -> GLsizei -- ^ @stride@.
  -> GLintptr -- ^ @offset@.
  -> IO ()
glVertexArrayVertexOffsetEXT = dyn_glVertexArrayVertexOffsetEXT ptr_glVertexArrayVertexOffsetEXT

foreign import CALLCONV "dynamic" dyn_glVertexArrayVertexOffsetEXT
  :: FunPtr (GLuint -> GLuint -> GLint -> GLenum -> GLsizei -> GLintptr -> IO ())
  ->         GLuint -> GLuint -> GLint -> GLenum -> GLsizei -> GLintptr -> IO ()

{-# NOINLINE ptr_glVertexArrayVertexOffsetEXT #-}
ptr_glVertexArrayVertexOffsetEXT :: FunPtr (GLuint -> GLuint -> GLint -> GLenum -> GLsizei -> GLintptr -> IO ())
ptr_glVertexArrayVertexOffsetEXT = unsafePerformIO $ getCommand "glVertexArrayVertexOffsetEXT"

-- glVertexAttrib1d ------------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glVertexAttrib.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glVertexAttrib.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glVertexAttrib.xhtml OpenGL 4.x>
glVertexAttrib1d
  :: GLuint -- ^ @index@.
  -> GLdouble -- ^ @x@.
  -> IO ()
glVertexAttrib1d = dyn_glVertexAttrib1d ptr_glVertexAttrib1d

foreign import CALLCONV "dynamic" dyn_glVertexAttrib1d
  :: FunPtr (GLuint -> GLdouble -> IO ())
  ->         GLuint -> GLdouble -> IO ()

{-# NOINLINE ptr_glVertexAttrib1d #-}
ptr_glVertexAttrib1d :: FunPtr (GLuint -> GLdouble -> IO ())
ptr_glVertexAttrib1d = unsafePerformIO $ getCommand "glVertexAttrib1d"

-- glVertexAttrib1dARB ---------------------------------------------------------

glVertexAttrib1dARB
  :: GLuint -- ^ @index@.
  -> GLdouble -- ^ @x@.
  -> IO ()
glVertexAttrib1dARB = dyn_glVertexAttrib1dARB ptr_glVertexAttrib1dARB

foreign import CALLCONV "dynamic" dyn_glVertexAttrib1dARB
  :: FunPtr (GLuint -> GLdouble -> IO ())
  ->         GLuint -> GLdouble -> IO ()

{-# NOINLINE ptr_glVertexAttrib1dARB #-}
ptr_glVertexAttrib1dARB :: FunPtr (GLuint -> GLdouble -> IO ())
ptr_glVertexAttrib1dARB = unsafePerformIO $ getCommand "glVertexAttrib1dARB"

-- glVertexAttrib1dNV ----------------------------------------------------------

glVertexAttrib1dNV
  :: GLuint -- ^ @index@.
  -> GLdouble -- ^ @x@.
  -> IO ()
glVertexAttrib1dNV = dyn_glVertexAttrib1dNV ptr_glVertexAttrib1dNV

foreign import CALLCONV "dynamic" dyn_glVertexAttrib1dNV
  :: FunPtr (GLuint -> GLdouble -> IO ())
  ->         GLuint -> GLdouble -> IO ()

{-# NOINLINE ptr_glVertexAttrib1dNV #-}
ptr_glVertexAttrib1dNV :: FunPtr (GLuint -> GLdouble -> IO ())
ptr_glVertexAttrib1dNV = unsafePerformIO $ getCommand "glVertexAttrib1dNV"

-- glVertexAttrib1dv -----------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glVertexAttrib.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glVertexAttrib.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glVertexAttrib.xhtml OpenGL 4.x>
glVertexAttrib1dv
  :: GLuint -- ^ @index@.
  -> Ptr GLdouble -- ^ @v@ pointing to @1@ elements of type @GLdouble@.
  -> IO ()
glVertexAttrib1dv = dyn_glVertexAttrib1dv ptr_glVertexAttrib1dv

foreign import CALLCONV "dynamic" dyn_glVertexAttrib1dv
  :: FunPtr (GLuint -> Ptr GLdouble -> IO ())
  ->         GLuint -> Ptr GLdouble -> IO ()

{-# NOINLINE ptr_glVertexAttrib1dv #-}
ptr_glVertexAttrib1dv :: FunPtr (GLuint -> Ptr GLdouble -> IO ())
ptr_glVertexAttrib1dv = unsafePerformIO $ getCommand "glVertexAttrib1dv"

-- glVertexAttrib1dvARB --------------------------------------------------------

glVertexAttrib1dvARB
  :: GLuint -- ^ @index@.
  -> Ptr GLdouble -- ^ @v@ pointing to @1@ elements of type @GLdouble@.
  -> IO ()
glVertexAttrib1dvARB = dyn_glVertexAttrib1dvARB ptr_glVertexAttrib1dvARB

foreign import CALLCONV "dynamic" dyn_glVertexAttrib1dvARB
  :: FunPtr (GLuint -> Ptr GLdouble -> IO ())
  ->         GLuint -> Ptr GLdouble -> IO ()

{-# NOINLINE ptr_glVertexAttrib1dvARB #-}
ptr_glVertexAttrib1dvARB :: FunPtr (GLuint -> Ptr GLdouble -> IO ())
ptr_glVertexAttrib1dvARB = unsafePerformIO $ getCommand "glVertexAttrib1dvARB"

-- glVertexAttrib1dvNV ---------------------------------------------------------

glVertexAttrib1dvNV
  :: GLuint -- ^ @index@.
  -> Ptr GLdouble -- ^ @v@ pointing to @1@ elements of type @GLdouble@.
  -> IO ()
glVertexAttrib1dvNV = dyn_glVertexAttrib1dvNV ptr_glVertexAttrib1dvNV

foreign import CALLCONV "dynamic" dyn_glVertexAttrib1dvNV
  :: FunPtr (GLuint -> Ptr GLdouble -> IO ())
  ->         GLuint -> Ptr GLdouble -> IO ()

{-# NOINLINE ptr_glVertexAttrib1dvNV #-}
ptr_glVertexAttrib1dvNV :: FunPtr (GLuint -> Ptr GLdouble -> IO ())
ptr_glVertexAttrib1dvNV = unsafePerformIO $ getCommand "glVertexAttrib1dvNV"

-- glVertexAttrib1f ------------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glVertexAttrib.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glVertexAttrib.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glVertexAttrib.xhtml OpenGL 4.x>
glVertexAttrib1f
  :: GLuint -- ^ @index@.
  -> GLfloat -- ^ @x@.
  -> IO ()
glVertexAttrib1f = dyn_glVertexAttrib1f ptr_glVertexAttrib1f

foreign import CALLCONV "dynamic" dyn_glVertexAttrib1f
  :: FunPtr (GLuint -> GLfloat -> IO ())
  ->         GLuint -> GLfloat -> IO ()

{-# NOINLINE ptr_glVertexAttrib1f #-}
ptr_glVertexAttrib1f :: FunPtr (GLuint -> GLfloat -> IO ())
ptr_glVertexAttrib1f = unsafePerformIO $ getCommand "glVertexAttrib1f"

-- glVertexAttrib1fARB ---------------------------------------------------------

glVertexAttrib1fARB
  :: GLuint -- ^ @index@.
  -> GLfloat -- ^ @x@.
  -> IO ()
glVertexAttrib1fARB = dyn_glVertexAttrib1fARB ptr_glVertexAttrib1fARB

foreign import CALLCONV "dynamic" dyn_glVertexAttrib1fARB
  :: FunPtr (GLuint -> GLfloat -> IO ())
  ->         GLuint -> GLfloat -> IO ()

{-# NOINLINE ptr_glVertexAttrib1fARB #-}
ptr_glVertexAttrib1fARB :: FunPtr (GLuint -> GLfloat -> IO ())
ptr_glVertexAttrib1fARB = unsafePerformIO $ getCommand "glVertexAttrib1fARB"

-- glVertexAttrib1fNV ----------------------------------------------------------

glVertexAttrib1fNV
  :: GLuint -- ^ @index@.
  -> GLfloat -- ^ @x@.
  -> IO ()
glVertexAttrib1fNV = dyn_glVertexAttrib1fNV ptr_glVertexAttrib1fNV

foreign import CALLCONV "dynamic" dyn_glVertexAttrib1fNV
  :: FunPtr (GLuint -> GLfloat -> IO ())
  ->         GLuint -> GLfloat -> IO ()

{-# NOINLINE ptr_glVertexAttrib1fNV #-}
ptr_glVertexAttrib1fNV :: FunPtr (GLuint -> GLfloat -> IO ())
ptr_glVertexAttrib1fNV = unsafePerformIO $ getCommand "glVertexAttrib1fNV"

-- glVertexAttrib1fv -----------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glVertexAttrib.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glVertexAttrib.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glVertexAttrib.xhtml OpenGL 4.x>
glVertexAttrib1fv
  :: GLuint -- ^ @index@.
  -> Ptr GLfloat -- ^ @v@ pointing to @1@ elements of type @GLfloat@.
  -> IO ()
glVertexAttrib1fv = dyn_glVertexAttrib1fv ptr_glVertexAttrib1fv

foreign import CALLCONV "dynamic" dyn_glVertexAttrib1fv
  :: FunPtr (GLuint -> Ptr GLfloat -> IO ())
  ->         GLuint -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glVertexAttrib1fv #-}
ptr_glVertexAttrib1fv :: FunPtr (GLuint -> Ptr GLfloat -> IO ())
ptr_glVertexAttrib1fv = unsafePerformIO $ getCommand "glVertexAttrib1fv"

-- glVertexAttrib1fvARB --------------------------------------------------------

glVertexAttrib1fvARB
  :: GLuint -- ^ @index@.
  -> Ptr GLfloat -- ^ @v@ pointing to @1@ elements of type @GLfloat@.
  -> IO ()
glVertexAttrib1fvARB = dyn_glVertexAttrib1fvARB ptr_glVertexAttrib1fvARB

foreign import CALLCONV "dynamic" dyn_glVertexAttrib1fvARB
  :: FunPtr (GLuint -> Ptr GLfloat -> IO ())
  ->         GLuint -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glVertexAttrib1fvARB #-}
ptr_glVertexAttrib1fvARB :: FunPtr (GLuint -> Ptr GLfloat -> IO ())
ptr_glVertexAttrib1fvARB = unsafePerformIO $ getCommand "glVertexAttrib1fvARB"

-- glVertexAttrib1fvNV ---------------------------------------------------------

glVertexAttrib1fvNV
  :: GLuint -- ^ @index@.
  -> Ptr GLfloat -- ^ @v@ pointing to @1@ elements of type @GLfloat@.
  -> IO ()
glVertexAttrib1fvNV = dyn_glVertexAttrib1fvNV ptr_glVertexAttrib1fvNV

foreign import CALLCONV "dynamic" dyn_glVertexAttrib1fvNV
  :: FunPtr (GLuint -> Ptr GLfloat -> IO ())
  ->         GLuint -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glVertexAttrib1fvNV #-}
ptr_glVertexAttrib1fvNV :: FunPtr (GLuint -> Ptr GLfloat -> IO ())
ptr_glVertexAttrib1fvNV = unsafePerformIO $ getCommand "glVertexAttrib1fvNV"

-- glVertexAttrib1hNV ----------------------------------------------------------

glVertexAttrib1hNV
  :: GLuint -- ^ @index@.
  -> GLhalfNV -- ^ @x@ of type @Half16NV@.
  -> IO ()
glVertexAttrib1hNV = dyn_glVertexAttrib1hNV ptr_glVertexAttrib1hNV

foreign import CALLCONV "dynamic" dyn_glVertexAttrib1hNV
  :: FunPtr (GLuint -> GLhalfNV -> IO ())
  ->         GLuint -> GLhalfNV -> IO ()

{-# NOINLINE ptr_glVertexAttrib1hNV #-}
ptr_glVertexAttrib1hNV :: FunPtr (GLuint -> GLhalfNV -> IO ())
ptr_glVertexAttrib1hNV = unsafePerformIO $ getCommand "glVertexAttrib1hNV"

-- glVertexAttrib1hvNV ---------------------------------------------------------

glVertexAttrib1hvNV
  :: GLuint -- ^ @index@.
  -> Ptr GLhalfNV -- ^ @v@ pointing to @1@ elements of type @Half16NV@.
  -> IO ()
glVertexAttrib1hvNV = dyn_glVertexAttrib1hvNV ptr_glVertexAttrib1hvNV

foreign import CALLCONV "dynamic" dyn_glVertexAttrib1hvNV
  :: FunPtr (GLuint -> Ptr GLhalfNV -> IO ())
  ->         GLuint -> Ptr GLhalfNV -> IO ()

{-# NOINLINE ptr_glVertexAttrib1hvNV #-}
ptr_glVertexAttrib1hvNV :: FunPtr (GLuint -> Ptr GLhalfNV -> IO ())
ptr_glVertexAttrib1hvNV = unsafePerformIO $ getCommand "glVertexAttrib1hvNV"

-- glVertexAttrib1s ------------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glVertexAttrib.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glVertexAttrib.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glVertexAttrib.xhtml OpenGL 4.x>
glVertexAttrib1s
  :: GLuint -- ^ @index@.
  -> GLshort -- ^ @x@.
  -> IO ()
glVertexAttrib1s = dyn_glVertexAttrib1s ptr_glVertexAttrib1s

foreign import CALLCONV "dynamic" dyn_glVertexAttrib1s
  :: FunPtr (GLuint -> GLshort -> IO ())
  ->         GLuint -> GLshort -> IO ()

{-# NOINLINE ptr_glVertexAttrib1s #-}
ptr_glVertexAttrib1s :: FunPtr (GLuint -> GLshort -> IO ())
ptr_glVertexAttrib1s = unsafePerformIO $ getCommand "glVertexAttrib1s"

-- glVertexAttrib1sARB ---------------------------------------------------------

glVertexAttrib1sARB
  :: GLuint -- ^ @index@.
  -> GLshort -- ^ @x@.
  -> IO ()
glVertexAttrib1sARB = dyn_glVertexAttrib1sARB ptr_glVertexAttrib1sARB

foreign import CALLCONV "dynamic" dyn_glVertexAttrib1sARB
  :: FunPtr (GLuint -> GLshort -> IO ())
  ->         GLuint -> GLshort -> IO ()

{-# NOINLINE ptr_glVertexAttrib1sARB #-}
ptr_glVertexAttrib1sARB :: FunPtr (GLuint -> GLshort -> IO ())
ptr_glVertexAttrib1sARB = unsafePerformIO $ getCommand "glVertexAttrib1sARB"

-- glVertexAttrib1sNV ----------------------------------------------------------

glVertexAttrib1sNV
  :: GLuint -- ^ @index@.
  -> GLshort -- ^ @x@.
  -> IO ()
glVertexAttrib1sNV = dyn_glVertexAttrib1sNV ptr_glVertexAttrib1sNV

foreign import CALLCONV "dynamic" dyn_glVertexAttrib1sNV
  :: FunPtr (GLuint -> GLshort -> IO ())
  ->         GLuint -> GLshort -> IO ()

{-# NOINLINE ptr_glVertexAttrib1sNV #-}
ptr_glVertexAttrib1sNV :: FunPtr (GLuint -> GLshort -> IO ())
ptr_glVertexAttrib1sNV = unsafePerformIO $ getCommand "glVertexAttrib1sNV"

-- glVertexAttrib1sv -----------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glVertexAttrib.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glVertexAttrib.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glVertexAttrib.xhtml OpenGL 4.x>
glVertexAttrib1sv
  :: GLuint -- ^ @index@.
  -> Ptr GLshort -- ^ @v@ pointing to @1@ elements of type @GLshort@.
  -> IO ()
glVertexAttrib1sv = dyn_glVertexAttrib1sv ptr_glVertexAttrib1sv

foreign import CALLCONV "dynamic" dyn_glVertexAttrib1sv
  :: FunPtr (GLuint -> Ptr GLshort -> IO ())
  ->         GLuint -> Ptr GLshort -> IO ()

{-# NOINLINE ptr_glVertexAttrib1sv #-}
ptr_glVertexAttrib1sv :: FunPtr (GLuint -> Ptr GLshort -> IO ())
ptr_glVertexAttrib1sv = unsafePerformIO $ getCommand "glVertexAttrib1sv"

-- glVertexAttrib1svARB --------------------------------------------------------

glVertexAttrib1svARB
  :: GLuint -- ^ @index@.
  -> Ptr GLshort -- ^ @v@ pointing to @1@ elements of type @GLshort@.
  -> IO ()
glVertexAttrib1svARB = dyn_glVertexAttrib1svARB ptr_glVertexAttrib1svARB

foreign import CALLCONV "dynamic" dyn_glVertexAttrib1svARB
  :: FunPtr (GLuint -> Ptr GLshort -> IO ())
  ->         GLuint -> Ptr GLshort -> IO ()

{-# NOINLINE ptr_glVertexAttrib1svARB #-}
ptr_glVertexAttrib1svARB :: FunPtr (GLuint -> Ptr GLshort -> IO ())
ptr_glVertexAttrib1svARB = unsafePerformIO $ getCommand "glVertexAttrib1svARB"

-- glVertexAttrib1svNV ---------------------------------------------------------

glVertexAttrib1svNV
  :: GLuint -- ^ @index@.
  -> Ptr GLshort -- ^ @v@ pointing to @1@ elements of type @GLshort@.
  -> IO ()
glVertexAttrib1svNV = dyn_glVertexAttrib1svNV ptr_glVertexAttrib1svNV

foreign import CALLCONV "dynamic" dyn_glVertexAttrib1svNV
  :: FunPtr (GLuint -> Ptr GLshort -> IO ())
  ->         GLuint -> Ptr GLshort -> IO ()

{-# NOINLINE ptr_glVertexAttrib1svNV #-}
ptr_glVertexAttrib1svNV :: FunPtr (GLuint -> Ptr GLshort -> IO ())
ptr_glVertexAttrib1svNV = unsafePerformIO $ getCommand "glVertexAttrib1svNV"

-- glVertexAttrib2d ------------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glVertexAttrib.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glVertexAttrib.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glVertexAttrib.xhtml OpenGL 4.x>
glVertexAttrib2d
  :: GLuint -- ^ @index@.
  -> GLdouble -- ^ @x@.
  -> GLdouble -- ^ @y@.
  -> IO ()
glVertexAttrib2d = dyn_glVertexAttrib2d ptr_glVertexAttrib2d

foreign import CALLCONV "dynamic" dyn_glVertexAttrib2d
  :: FunPtr (GLuint -> GLdouble -> GLdouble -> IO ())
  ->         GLuint -> GLdouble -> GLdouble -> IO ()

{-# NOINLINE ptr_glVertexAttrib2d #-}
ptr_glVertexAttrib2d :: FunPtr (GLuint -> GLdouble -> GLdouble -> IO ())
ptr_glVertexAttrib2d = unsafePerformIO $ getCommand "glVertexAttrib2d"

-- glVertexAttrib2dARB ---------------------------------------------------------

glVertexAttrib2dARB
  :: GLuint -- ^ @index@.
  -> GLdouble -- ^ @x@.
  -> GLdouble -- ^ @y@.
  -> IO ()
glVertexAttrib2dARB = dyn_glVertexAttrib2dARB ptr_glVertexAttrib2dARB

foreign import CALLCONV "dynamic" dyn_glVertexAttrib2dARB
  :: FunPtr (GLuint -> GLdouble -> GLdouble -> IO ())
  ->         GLuint -> GLdouble -> GLdouble -> IO ()

{-# NOINLINE ptr_glVertexAttrib2dARB #-}
ptr_glVertexAttrib2dARB :: FunPtr (GLuint -> GLdouble -> GLdouble -> IO ())
ptr_glVertexAttrib2dARB = unsafePerformIO $ getCommand "glVertexAttrib2dARB"

-- glVertexAttrib2dNV ----------------------------------------------------------

glVertexAttrib2dNV
  :: GLuint -- ^ @index@.
  -> GLdouble -- ^ @x@.
  -> GLdouble -- ^ @y@.
  -> IO ()
glVertexAttrib2dNV = dyn_glVertexAttrib2dNV ptr_glVertexAttrib2dNV

foreign import CALLCONV "dynamic" dyn_glVertexAttrib2dNV
  :: FunPtr (GLuint -> GLdouble -> GLdouble -> IO ())
  ->         GLuint -> GLdouble -> GLdouble -> IO ()

{-# NOINLINE ptr_glVertexAttrib2dNV #-}
ptr_glVertexAttrib2dNV :: FunPtr (GLuint -> GLdouble -> GLdouble -> IO ())
ptr_glVertexAttrib2dNV = unsafePerformIO $ getCommand "glVertexAttrib2dNV"

-- glVertexAttrib2dv -----------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glVertexAttrib.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glVertexAttrib.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glVertexAttrib.xhtml OpenGL 4.x>
glVertexAttrib2dv
  :: GLuint -- ^ @index@.
  -> Ptr GLdouble -- ^ @v@ pointing to @2@ elements of type @GLdouble@.
  -> IO ()
glVertexAttrib2dv = dyn_glVertexAttrib2dv ptr_glVertexAttrib2dv

foreign import CALLCONV "dynamic" dyn_glVertexAttrib2dv
  :: FunPtr (GLuint -> Ptr GLdouble -> IO ())
  ->         GLuint -> Ptr GLdouble -> IO ()

{-# NOINLINE ptr_glVertexAttrib2dv #-}
ptr_glVertexAttrib2dv :: FunPtr (GLuint -> Ptr GLdouble -> IO ())
ptr_glVertexAttrib2dv = unsafePerformIO $ getCommand "glVertexAttrib2dv"

-- glVertexAttrib2dvARB --------------------------------------------------------

glVertexAttrib2dvARB
  :: GLuint -- ^ @index@.
  -> Ptr GLdouble -- ^ @v@ pointing to @2@ elements of type @GLdouble@.
  -> IO ()
glVertexAttrib2dvARB = dyn_glVertexAttrib2dvARB ptr_glVertexAttrib2dvARB

foreign import CALLCONV "dynamic" dyn_glVertexAttrib2dvARB
  :: FunPtr (GLuint -> Ptr GLdouble -> IO ())
  ->         GLuint -> Ptr GLdouble -> IO ()

{-# NOINLINE ptr_glVertexAttrib2dvARB #-}
ptr_glVertexAttrib2dvARB :: FunPtr (GLuint -> Ptr GLdouble -> IO ())
ptr_glVertexAttrib2dvARB = unsafePerformIO $ getCommand "glVertexAttrib2dvARB"

-- glVertexAttrib2dvNV ---------------------------------------------------------

glVertexAttrib2dvNV
  :: GLuint -- ^ @index@.
  -> Ptr GLdouble -- ^ @v@ pointing to @2@ elements of type @GLdouble@.
  -> IO ()
glVertexAttrib2dvNV = dyn_glVertexAttrib2dvNV ptr_glVertexAttrib2dvNV

foreign import CALLCONV "dynamic" dyn_glVertexAttrib2dvNV
  :: FunPtr (GLuint -> Ptr GLdouble -> IO ())
  ->         GLuint -> Ptr GLdouble -> IO ()

{-# NOINLINE ptr_glVertexAttrib2dvNV #-}
ptr_glVertexAttrib2dvNV :: FunPtr (GLuint -> Ptr GLdouble -> IO ())
ptr_glVertexAttrib2dvNV = unsafePerformIO $ getCommand "glVertexAttrib2dvNV"

-- glVertexAttrib2f ------------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glVertexAttrib.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glVertexAttrib.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glVertexAttrib.xhtml OpenGL 4.x>
glVertexAttrib2f
  :: GLuint -- ^ @index@.
  -> GLfloat -- ^ @x@.
  -> GLfloat -- ^ @y@.
  -> IO ()
glVertexAttrib2f = dyn_glVertexAttrib2f ptr_glVertexAttrib2f

foreign import CALLCONV "dynamic" dyn_glVertexAttrib2f
  :: FunPtr (GLuint -> GLfloat -> GLfloat -> IO ())
  ->         GLuint -> GLfloat -> GLfloat -> IO ()

{-# NOINLINE ptr_glVertexAttrib2f #-}
ptr_glVertexAttrib2f :: FunPtr (GLuint -> GLfloat -> GLfloat -> IO ())
ptr_glVertexAttrib2f = unsafePerformIO $ getCommand "glVertexAttrib2f"

-- glVertexAttrib2fARB ---------------------------------------------------------

glVertexAttrib2fARB
  :: GLuint -- ^ @index@.
  -> GLfloat -- ^ @x@.
  -> GLfloat -- ^ @y@.
  -> IO ()
glVertexAttrib2fARB = dyn_glVertexAttrib2fARB ptr_glVertexAttrib2fARB

foreign import CALLCONV "dynamic" dyn_glVertexAttrib2fARB
  :: FunPtr (GLuint -> GLfloat -> GLfloat -> IO ())
  ->         GLuint -> GLfloat -> GLfloat -> IO ()

{-# NOINLINE ptr_glVertexAttrib2fARB #-}
ptr_glVertexAttrib2fARB :: FunPtr (GLuint -> GLfloat -> GLfloat -> IO ())
ptr_glVertexAttrib2fARB = unsafePerformIO $ getCommand "glVertexAttrib2fARB"

-- glVertexAttrib2fNV ----------------------------------------------------------

glVertexAttrib2fNV
  :: GLuint -- ^ @index@.
  -> GLfloat -- ^ @x@.
  -> GLfloat -- ^ @y@.
  -> IO ()
glVertexAttrib2fNV = dyn_glVertexAttrib2fNV ptr_glVertexAttrib2fNV

foreign import CALLCONV "dynamic" dyn_glVertexAttrib2fNV
  :: FunPtr (GLuint -> GLfloat -> GLfloat -> IO ())
  ->         GLuint -> GLfloat -> GLfloat -> IO ()

{-# NOINLINE ptr_glVertexAttrib2fNV #-}
ptr_glVertexAttrib2fNV :: FunPtr (GLuint -> GLfloat -> GLfloat -> IO ())
ptr_glVertexAttrib2fNV = unsafePerformIO $ getCommand "glVertexAttrib2fNV"

-- glVertexAttrib2fv -----------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glVertexAttrib.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glVertexAttrib.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glVertexAttrib.xhtml OpenGL 4.x>
glVertexAttrib2fv
  :: GLuint -- ^ @index@.
  -> Ptr GLfloat -- ^ @v@ pointing to @2@ elements of type @GLfloat@.
  -> IO ()
glVertexAttrib2fv = dyn_glVertexAttrib2fv ptr_glVertexAttrib2fv

foreign import CALLCONV "dynamic" dyn_glVertexAttrib2fv
  :: FunPtr (GLuint -> Ptr GLfloat -> IO ())
  ->         GLuint -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glVertexAttrib2fv #-}
ptr_glVertexAttrib2fv :: FunPtr (GLuint -> Ptr GLfloat -> IO ())
ptr_glVertexAttrib2fv = unsafePerformIO $ getCommand "glVertexAttrib2fv"

-- glVertexAttrib2fvARB --------------------------------------------------------

glVertexAttrib2fvARB
  :: GLuint -- ^ @index@.
  -> Ptr GLfloat -- ^ @v@ pointing to @2@ elements of type @GLfloat@.
  -> IO ()
glVertexAttrib2fvARB = dyn_glVertexAttrib2fvARB ptr_glVertexAttrib2fvARB

foreign import CALLCONV "dynamic" dyn_glVertexAttrib2fvARB
  :: FunPtr (GLuint -> Ptr GLfloat -> IO ())
  ->         GLuint -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glVertexAttrib2fvARB #-}
ptr_glVertexAttrib2fvARB :: FunPtr (GLuint -> Ptr GLfloat -> IO ())
ptr_glVertexAttrib2fvARB = unsafePerformIO $ getCommand "glVertexAttrib2fvARB"

-- glVertexAttrib2fvNV ---------------------------------------------------------

glVertexAttrib2fvNV
  :: GLuint -- ^ @index@.
  -> Ptr GLfloat -- ^ @v@ pointing to @2@ elements of type @GLfloat@.
  -> IO ()
glVertexAttrib2fvNV = dyn_glVertexAttrib2fvNV ptr_glVertexAttrib2fvNV

foreign import CALLCONV "dynamic" dyn_glVertexAttrib2fvNV
  :: FunPtr (GLuint -> Ptr GLfloat -> IO ())
  ->         GLuint -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glVertexAttrib2fvNV #-}
ptr_glVertexAttrib2fvNV :: FunPtr (GLuint -> Ptr GLfloat -> IO ())
ptr_glVertexAttrib2fvNV = unsafePerformIO $ getCommand "glVertexAttrib2fvNV"

-- glVertexAttrib2hNV ----------------------------------------------------------

glVertexAttrib2hNV
  :: GLuint -- ^ @index@.
  -> GLhalfNV -- ^ @x@ of type @Half16NV@.
  -> GLhalfNV -- ^ @y@ of type @Half16NV@.
  -> IO ()
glVertexAttrib2hNV = dyn_glVertexAttrib2hNV ptr_glVertexAttrib2hNV

foreign import CALLCONV "dynamic" dyn_glVertexAttrib2hNV
  :: FunPtr (GLuint -> GLhalfNV -> GLhalfNV -> IO ())
  ->         GLuint -> GLhalfNV -> GLhalfNV -> IO ()

{-# NOINLINE ptr_glVertexAttrib2hNV #-}
ptr_glVertexAttrib2hNV :: FunPtr (GLuint -> GLhalfNV -> GLhalfNV -> IO ())
ptr_glVertexAttrib2hNV = unsafePerformIO $ getCommand "glVertexAttrib2hNV"

-- glVertexAttrib2hvNV ---------------------------------------------------------

glVertexAttrib2hvNV
  :: GLuint -- ^ @index@.
  -> Ptr GLhalfNV -- ^ @v@ pointing to @2@ elements of type @Half16NV@.
  -> IO ()
glVertexAttrib2hvNV = dyn_glVertexAttrib2hvNV ptr_glVertexAttrib2hvNV

foreign import CALLCONV "dynamic" dyn_glVertexAttrib2hvNV
  :: FunPtr (GLuint -> Ptr GLhalfNV -> IO ())
  ->         GLuint -> Ptr GLhalfNV -> IO ()

{-# NOINLINE ptr_glVertexAttrib2hvNV #-}
ptr_glVertexAttrib2hvNV :: FunPtr (GLuint -> Ptr GLhalfNV -> IO ())
ptr_glVertexAttrib2hvNV = unsafePerformIO $ getCommand "glVertexAttrib2hvNV"

-- glVertexAttrib2s ------------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glVertexAttrib.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glVertexAttrib.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glVertexAttrib.xhtml OpenGL 4.x>
glVertexAttrib2s
  :: GLuint -- ^ @index@.
  -> GLshort -- ^ @x@.
  -> GLshort -- ^ @y@.
  -> IO ()
glVertexAttrib2s = dyn_glVertexAttrib2s ptr_glVertexAttrib2s

foreign import CALLCONV "dynamic" dyn_glVertexAttrib2s
  :: FunPtr (GLuint -> GLshort -> GLshort -> IO ())
  ->         GLuint -> GLshort -> GLshort -> IO ()

{-# NOINLINE ptr_glVertexAttrib2s #-}
ptr_glVertexAttrib2s :: FunPtr (GLuint -> GLshort -> GLshort -> IO ())
ptr_glVertexAttrib2s = unsafePerformIO $ getCommand "glVertexAttrib2s"

-- glVertexAttrib2sARB ---------------------------------------------------------

glVertexAttrib2sARB
  :: GLuint -- ^ @index@.
  -> GLshort -- ^ @x@.
  -> GLshort -- ^ @y@.
  -> IO ()
glVertexAttrib2sARB = dyn_glVertexAttrib2sARB ptr_glVertexAttrib2sARB

foreign import CALLCONV "dynamic" dyn_glVertexAttrib2sARB
  :: FunPtr (GLuint -> GLshort -> GLshort -> IO ())
  ->         GLuint -> GLshort -> GLshort -> IO ()

{-# NOINLINE ptr_glVertexAttrib2sARB #-}
ptr_glVertexAttrib2sARB :: FunPtr (GLuint -> GLshort -> GLshort -> IO ())
ptr_glVertexAttrib2sARB = unsafePerformIO $ getCommand "glVertexAttrib2sARB"

-- glVertexAttrib2sNV ----------------------------------------------------------

glVertexAttrib2sNV
  :: GLuint -- ^ @index@.
  -> GLshort -- ^ @x@.
  -> GLshort -- ^ @y@.
  -> IO ()
glVertexAttrib2sNV = dyn_glVertexAttrib2sNV ptr_glVertexAttrib2sNV

foreign import CALLCONV "dynamic" dyn_glVertexAttrib2sNV
  :: FunPtr (GLuint -> GLshort -> GLshort -> IO ())
  ->         GLuint -> GLshort -> GLshort -> IO ()

{-# NOINLINE ptr_glVertexAttrib2sNV #-}
ptr_glVertexAttrib2sNV :: FunPtr (GLuint -> GLshort -> GLshort -> IO ())
ptr_glVertexAttrib2sNV = unsafePerformIO $ getCommand "glVertexAttrib2sNV"

-- glVertexAttrib2sv -----------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glVertexAttrib.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glVertexAttrib.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glVertexAttrib.xhtml OpenGL 4.x>
glVertexAttrib2sv
  :: GLuint -- ^ @index@.
  -> Ptr GLshort -- ^ @v@ pointing to @2@ elements of type @GLshort@.
  -> IO ()
glVertexAttrib2sv = dyn_glVertexAttrib2sv ptr_glVertexAttrib2sv

foreign import CALLCONV "dynamic" dyn_glVertexAttrib2sv
  :: FunPtr (GLuint -> Ptr GLshort -> IO ())
  ->         GLuint -> Ptr GLshort -> IO ()

{-# NOINLINE ptr_glVertexAttrib2sv #-}
ptr_glVertexAttrib2sv :: FunPtr (GLuint -> Ptr GLshort -> IO ())
ptr_glVertexAttrib2sv = unsafePerformIO $ getCommand "glVertexAttrib2sv"

-- glVertexAttrib2svARB --------------------------------------------------------

glVertexAttrib2svARB
  :: GLuint -- ^ @index@.
  -> Ptr GLshort -- ^ @v@ pointing to @2@ elements of type @GLshort@.
  -> IO ()
glVertexAttrib2svARB = dyn_glVertexAttrib2svARB ptr_glVertexAttrib2svARB

foreign import CALLCONV "dynamic" dyn_glVertexAttrib2svARB
  :: FunPtr (GLuint -> Ptr GLshort -> IO ())
  ->         GLuint -> Ptr GLshort -> IO ()

{-# NOINLINE ptr_glVertexAttrib2svARB #-}
ptr_glVertexAttrib2svARB :: FunPtr (GLuint -> Ptr GLshort -> IO ())
ptr_glVertexAttrib2svARB = unsafePerformIO $ getCommand "glVertexAttrib2svARB"

-- glVertexAttrib2svNV ---------------------------------------------------------

glVertexAttrib2svNV
  :: GLuint -- ^ @index@.
  -> Ptr GLshort -- ^ @v@ pointing to @2@ elements of type @GLshort@.
  -> IO ()
glVertexAttrib2svNV = dyn_glVertexAttrib2svNV ptr_glVertexAttrib2svNV

foreign import CALLCONV "dynamic" dyn_glVertexAttrib2svNV
  :: FunPtr (GLuint -> Ptr GLshort -> IO ())
  ->         GLuint -> Ptr GLshort -> IO ()

{-# NOINLINE ptr_glVertexAttrib2svNV #-}
ptr_glVertexAttrib2svNV :: FunPtr (GLuint -> Ptr GLshort -> IO ())
ptr_glVertexAttrib2svNV = unsafePerformIO $ getCommand "glVertexAttrib2svNV"

-- glVertexAttrib3d ------------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glVertexAttrib.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glVertexAttrib.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glVertexAttrib.xhtml OpenGL 4.x>
glVertexAttrib3d
  :: GLuint -- ^ @index@.
  -> GLdouble -- ^ @x@.
  -> GLdouble -- ^ @y@.
  -> GLdouble -- ^ @z@.
  -> IO ()
glVertexAttrib3d = dyn_glVertexAttrib3d ptr_glVertexAttrib3d

foreign import CALLCONV "dynamic" dyn_glVertexAttrib3d
  :: FunPtr (GLuint -> GLdouble -> GLdouble -> GLdouble -> IO ())
  ->         GLuint -> GLdouble -> GLdouble -> GLdouble -> IO ()

{-# NOINLINE ptr_glVertexAttrib3d #-}
ptr_glVertexAttrib3d :: FunPtr (GLuint -> GLdouble -> GLdouble -> GLdouble -> IO ())
ptr_glVertexAttrib3d = unsafePerformIO $ getCommand "glVertexAttrib3d"

-- glVertexAttrib3dARB ---------------------------------------------------------

glVertexAttrib3dARB
  :: GLuint -- ^ @index@.
  -> GLdouble -- ^ @x@.
  -> GLdouble -- ^ @y@.
  -> GLdouble -- ^ @z@.
  -> IO ()
glVertexAttrib3dARB = dyn_glVertexAttrib3dARB ptr_glVertexAttrib3dARB

foreign import CALLCONV "dynamic" dyn_glVertexAttrib3dARB
  :: FunPtr (GLuint -> GLdouble -> GLdouble -> GLdouble -> IO ())
  ->         GLuint -> GLdouble -> GLdouble -> GLdouble -> IO ()

{-# NOINLINE ptr_glVertexAttrib3dARB #-}
ptr_glVertexAttrib3dARB :: FunPtr (GLuint -> GLdouble -> GLdouble -> GLdouble -> IO ())
ptr_glVertexAttrib3dARB = unsafePerformIO $ getCommand "glVertexAttrib3dARB"

-- glVertexAttrib3dNV ----------------------------------------------------------

glVertexAttrib3dNV
  :: GLuint -- ^ @index@.
  -> GLdouble -- ^ @x@.
  -> GLdouble -- ^ @y@.
  -> GLdouble -- ^ @z@.
  -> IO ()
glVertexAttrib3dNV = dyn_glVertexAttrib3dNV ptr_glVertexAttrib3dNV

foreign import CALLCONV "dynamic" dyn_glVertexAttrib3dNV
  :: FunPtr (GLuint -> GLdouble -> GLdouble -> GLdouble -> IO ())
  ->         GLuint -> GLdouble -> GLdouble -> GLdouble -> IO ()

{-# NOINLINE ptr_glVertexAttrib3dNV #-}
ptr_glVertexAttrib3dNV :: FunPtr (GLuint -> GLdouble -> GLdouble -> GLdouble -> IO ())
ptr_glVertexAttrib3dNV = unsafePerformIO $ getCommand "glVertexAttrib3dNV"

-- glVertexAttrib3dv -----------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glVertexAttrib.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glVertexAttrib.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glVertexAttrib.xhtml OpenGL 4.x>
glVertexAttrib3dv
  :: GLuint -- ^ @index@.
  -> Ptr GLdouble -- ^ @v@ pointing to @3@ elements of type @GLdouble@.
  -> IO ()
glVertexAttrib3dv = dyn_glVertexAttrib3dv ptr_glVertexAttrib3dv

foreign import CALLCONV "dynamic" dyn_glVertexAttrib3dv
  :: FunPtr (GLuint -> Ptr GLdouble -> IO ())
  ->         GLuint -> Ptr GLdouble -> IO ()

{-# NOINLINE ptr_glVertexAttrib3dv #-}
ptr_glVertexAttrib3dv :: FunPtr (GLuint -> Ptr GLdouble -> IO ())
ptr_glVertexAttrib3dv = unsafePerformIO $ getCommand "glVertexAttrib3dv"

-- glVertexAttrib3dvARB --------------------------------------------------------

glVertexAttrib3dvARB
  :: GLuint -- ^ @index@.
  -> Ptr GLdouble -- ^ @v@ pointing to @3@ elements of type @GLdouble@.
  -> IO ()
glVertexAttrib3dvARB = dyn_glVertexAttrib3dvARB ptr_glVertexAttrib3dvARB

foreign import CALLCONV "dynamic" dyn_glVertexAttrib3dvARB
  :: FunPtr (GLuint -> Ptr GLdouble -> IO ())
  ->         GLuint -> Ptr GLdouble -> IO ()

{-# NOINLINE ptr_glVertexAttrib3dvARB #-}
ptr_glVertexAttrib3dvARB :: FunPtr (GLuint -> Ptr GLdouble -> IO ())
ptr_glVertexAttrib3dvARB = unsafePerformIO $ getCommand "glVertexAttrib3dvARB"

-- glVertexAttrib3dvNV ---------------------------------------------------------

glVertexAttrib3dvNV
  :: GLuint -- ^ @index@.
  -> Ptr GLdouble -- ^ @v@ pointing to @3@ elements of type @GLdouble@.
  -> IO ()
glVertexAttrib3dvNV = dyn_glVertexAttrib3dvNV ptr_glVertexAttrib3dvNV

foreign import CALLCONV "dynamic" dyn_glVertexAttrib3dvNV
  :: FunPtr (GLuint -> Ptr GLdouble -> IO ())
  ->         GLuint -> Ptr GLdouble -> IO ()

{-# NOINLINE ptr_glVertexAttrib3dvNV #-}
ptr_glVertexAttrib3dvNV :: FunPtr (GLuint -> Ptr GLdouble -> IO ())
ptr_glVertexAttrib3dvNV = unsafePerformIO $ getCommand "glVertexAttrib3dvNV"

-- glVertexAttrib3f ------------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glVertexAttrib.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glVertexAttrib.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glVertexAttrib.xhtml OpenGL 4.x>
glVertexAttrib3f
  :: GLuint -- ^ @index@.
  -> GLfloat -- ^ @x@.
  -> GLfloat -- ^ @y@.
  -> GLfloat -- ^ @z@.
  -> IO ()
glVertexAttrib3f = dyn_glVertexAttrib3f ptr_glVertexAttrib3f

foreign import CALLCONV "dynamic" dyn_glVertexAttrib3f
  :: FunPtr (GLuint -> GLfloat -> GLfloat -> GLfloat -> IO ())
  ->         GLuint -> GLfloat -> GLfloat -> GLfloat -> IO ()

{-# NOINLINE ptr_glVertexAttrib3f #-}
ptr_glVertexAttrib3f :: FunPtr (GLuint -> GLfloat -> GLfloat -> GLfloat -> IO ())
ptr_glVertexAttrib3f = unsafePerformIO $ getCommand "glVertexAttrib3f"

-- glVertexAttrib3fARB ---------------------------------------------------------

glVertexAttrib3fARB
  :: GLuint -- ^ @index@.
  -> GLfloat -- ^ @x@.
  -> GLfloat -- ^ @y@.
  -> GLfloat -- ^ @z@.
  -> IO ()
glVertexAttrib3fARB = dyn_glVertexAttrib3fARB ptr_glVertexAttrib3fARB

foreign import CALLCONV "dynamic" dyn_glVertexAttrib3fARB
  :: FunPtr (GLuint -> GLfloat -> GLfloat -> GLfloat -> IO ())
  ->         GLuint -> GLfloat -> GLfloat -> GLfloat -> IO ()

{-# NOINLINE ptr_glVertexAttrib3fARB #-}
ptr_glVertexAttrib3fARB :: FunPtr (GLuint -> GLfloat -> GLfloat -> GLfloat -> IO ())
ptr_glVertexAttrib3fARB = unsafePerformIO $ getCommand "glVertexAttrib3fARB"

-- glVertexAttrib3fNV ----------------------------------------------------------

glVertexAttrib3fNV
  :: GLuint -- ^ @index@.
  -> GLfloat -- ^ @x@.
  -> GLfloat -- ^ @y@.
  -> GLfloat -- ^ @z@.
  -> IO ()
glVertexAttrib3fNV = dyn_glVertexAttrib3fNV ptr_glVertexAttrib3fNV

foreign import CALLCONV "dynamic" dyn_glVertexAttrib3fNV
  :: FunPtr (GLuint -> GLfloat -> GLfloat -> GLfloat -> IO ())
  ->         GLuint -> GLfloat -> GLfloat -> GLfloat -> IO ()

{-# NOINLINE ptr_glVertexAttrib3fNV #-}
ptr_glVertexAttrib3fNV :: FunPtr (GLuint -> GLfloat -> GLfloat -> GLfloat -> IO ())
ptr_glVertexAttrib3fNV = unsafePerformIO $ getCommand "glVertexAttrib3fNV"

-- glVertexAttrib3fv -----------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glVertexAttrib.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glVertexAttrib.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glVertexAttrib.xhtml OpenGL 4.x>
glVertexAttrib3fv
  :: GLuint -- ^ @index@.
  -> Ptr GLfloat -- ^ @v@ pointing to @3@ elements of type @GLfloat@.
  -> IO ()
glVertexAttrib3fv = dyn_glVertexAttrib3fv ptr_glVertexAttrib3fv

foreign import CALLCONV "dynamic" dyn_glVertexAttrib3fv
  :: FunPtr (GLuint -> Ptr GLfloat -> IO ())
  ->         GLuint -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glVertexAttrib3fv #-}
ptr_glVertexAttrib3fv :: FunPtr (GLuint -> Ptr GLfloat -> IO ())
ptr_glVertexAttrib3fv = unsafePerformIO $ getCommand "glVertexAttrib3fv"

-- glVertexAttrib3fvARB --------------------------------------------------------

glVertexAttrib3fvARB
  :: GLuint -- ^ @index@.
  -> Ptr GLfloat -- ^ @v@ pointing to @3@ elements of type @GLfloat@.
  -> IO ()
glVertexAttrib3fvARB = dyn_glVertexAttrib3fvARB ptr_glVertexAttrib3fvARB

foreign import CALLCONV "dynamic" dyn_glVertexAttrib3fvARB
  :: FunPtr (GLuint -> Ptr GLfloat -> IO ())
  ->         GLuint -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glVertexAttrib3fvARB #-}
ptr_glVertexAttrib3fvARB :: FunPtr (GLuint -> Ptr GLfloat -> IO ())
ptr_glVertexAttrib3fvARB = unsafePerformIO $ getCommand "glVertexAttrib3fvARB"

-- glVertexAttrib3fvNV ---------------------------------------------------------

glVertexAttrib3fvNV
  :: GLuint -- ^ @index@.
  -> Ptr GLfloat -- ^ @v@ pointing to @3@ elements of type @GLfloat@.
  -> IO ()
glVertexAttrib3fvNV = dyn_glVertexAttrib3fvNV ptr_glVertexAttrib3fvNV

foreign import CALLCONV "dynamic" dyn_glVertexAttrib3fvNV
  :: FunPtr (GLuint -> Ptr GLfloat -> IO ())
  ->         GLuint -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glVertexAttrib3fvNV #-}
ptr_glVertexAttrib3fvNV :: FunPtr (GLuint -> Ptr GLfloat -> IO ())
ptr_glVertexAttrib3fvNV = unsafePerformIO $ getCommand "glVertexAttrib3fvNV"

-- glVertexAttrib3hNV ----------------------------------------------------------

glVertexAttrib3hNV
  :: GLuint -- ^ @index@.
  -> GLhalfNV -- ^ @x@ of type @Half16NV@.
  -> GLhalfNV -- ^ @y@ of type @Half16NV@.
  -> GLhalfNV -- ^ @z@ of type @Half16NV@.
  -> IO ()
glVertexAttrib3hNV = dyn_glVertexAttrib3hNV ptr_glVertexAttrib3hNV

foreign import CALLCONV "dynamic" dyn_glVertexAttrib3hNV
  :: FunPtr (GLuint -> GLhalfNV -> GLhalfNV -> GLhalfNV -> IO ())
  ->         GLuint -> GLhalfNV -> GLhalfNV -> GLhalfNV -> IO ()

{-# NOINLINE ptr_glVertexAttrib3hNV #-}
ptr_glVertexAttrib3hNV :: FunPtr (GLuint -> GLhalfNV -> GLhalfNV -> GLhalfNV -> IO ())
ptr_glVertexAttrib3hNV = unsafePerformIO $ getCommand "glVertexAttrib3hNV"

-- glVertexAttrib3hvNV ---------------------------------------------------------

glVertexAttrib3hvNV
  :: GLuint -- ^ @index@.
  -> Ptr GLhalfNV -- ^ @v@ pointing to @3@ elements of type @Half16NV@.
  -> IO ()
glVertexAttrib3hvNV = dyn_glVertexAttrib3hvNV ptr_glVertexAttrib3hvNV

foreign import CALLCONV "dynamic" dyn_glVertexAttrib3hvNV
  :: FunPtr (GLuint -> Ptr GLhalfNV -> IO ())
  ->         GLuint -> Ptr GLhalfNV -> IO ()

{-# NOINLINE ptr_glVertexAttrib3hvNV #-}
ptr_glVertexAttrib3hvNV :: FunPtr (GLuint -> Ptr GLhalfNV -> IO ())
ptr_glVertexAttrib3hvNV = unsafePerformIO $ getCommand "glVertexAttrib3hvNV"

-- glVertexAttrib3s ------------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glVertexAttrib.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glVertexAttrib.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glVertexAttrib.xhtml OpenGL 4.x>
glVertexAttrib3s
  :: GLuint -- ^ @index@.
  -> GLshort -- ^ @x@.
  -> GLshort -- ^ @y@.
  -> GLshort -- ^ @z@.
  -> IO ()
glVertexAttrib3s = dyn_glVertexAttrib3s ptr_glVertexAttrib3s

foreign import CALLCONV "dynamic" dyn_glVertexAttrib3s
  :: FunPtr (GLuint -> GLshort -> GLshort -> GLshort -> IO ())
  ->         GLuint -> GLshort -> GLshort -> GLshort -> IO ()

{-# NOINLINE ptr_glVertexAttrib3s #-}
ptr_glVertexAttrib3s :: FunPtr (GLuint -> GLshort -> GLshort -> GLshort -> IO ())
ptr_glVertexAttrib3s = unsafePerformIO $ getCommand "glVertexAttrib3s"

-- glVertexAttrib3sARB ---------------------------------------------------------

glVertexAttrib3sARB
  :: GLuint -- ^ @index@.
  -> GLshort -- ^ @x@.
  -> GLshort -- ^ @y@.
  -> GLshort -- ^ @z@.
  -> IO ()
glVertexAttrib3sARB = dyn_glVertexAttrib3sARB ptr_glVertexAttrib3sARB

foreign import CALLCONV "dynamic" dyn_glVertexAttrib3sARB
  :: FunPtr (GLuint -> GLshort -> GLshort -> GLshort -> IO ())
  ->         GLuint -> GLshort -> GLshort -> GLshort -> IO ()

{-# NOINLINE ptr_glVertexAttrib3sARB #-}
ptr_glVertexAttrib3sARB :: FunPtr (GLuint -> GLshort -> GLshort -> GLshort -> IO ())
ptr_glVertexAttrib3sARB = unsafePerformIO $ getCommand "glVertexAttrib3sARB"

-- glVertexAttrib3sNV ----------------------------------------------------------

glVertexAttrib3sNV
  :: GLuint -- ^ @index@.
  -> GLshort -- ^ @x@.
  -> GLshort -- ^ @y@.
  -> GLshort -- ^ @z@.
  -> IO ()
glVertexAttrib3sNV = dyn_glVertexAttrib3sNV ptr_glVertexAttrib3sNV

foreign import CALLCONV "dynamic" dyn_glVertexAttrib3sNV
  :: FunPtr (GLuint -> GLshort -> GLshort -> GLshort -> IO ())
  ->         GLuint -> GLshort -> GLshort -> GLshort -> IO ()

{-# NOINLINE ptr_glVertexAttrib3sNV #-}
ptr_glVertexAttrib3sNV :: FunPtr (GLuint -> GLshort -> GLshort -> GLshort -> IO ())
ptr_glVertexAttrib3sNV = unsafePerformIO $ getCommand "glVertexAttrib3sNV"

-- glVertexAttrib3sv -----------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glVertexAttrib.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glVertexAttrib.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glVertexAttrib.xhtml OpenGL 4.x>
glVertexAttrib3sv
  :: GLuint -- ^ @index@.
  -> Ptr GLshort -- ^ @v@ pointing to @3@ elements of type @GLshort@.
  -> IO ()
glVertexAttrib3sv = dyn_glVertexAttrib3sv ptr_glVertexAttrib3sv

foreign import CALLCONV "dynamic" dyn_glVertexAttrib3sv
  :: FunPtr (GLuint -> Ptr GLshort -> IO ())
  ->         GLuint -> Ptr GLshort -> IO ()

{-# NOINLINE ptr_glVertexAttrib3sv #-}
ptr_glVertexAttrib3sv :: FunPtr (GLuint -> Ptr GLshort -> IO ())
ptr_glVertexAttrib3sv = unsafePerformIO $ getCommand "glVertexAttrib3sv"

-- glVertexAttrib3svARB --------------------------------------------------------

glVertexAttrib3svARB
  :: GLuint -- ^ @index@.
  -> Ptr GLshort -- ^ @v@ pointing to @3@ elements of type @GLshort@.
  -> IO ()
glVertexAttrib3svARB = dyn_glVertexAttrib3svARB ptr_glVertexAttrib3svARB

foreign import CALLCONV "dynamic" dyn_glVertexAttrib3svARB
  :: FunPtr (GLuint -> Ptr GLshort -> IO ())
  ->         GLuint -> Ptr GLshort -> IO ()

{-# NOINLINE ptr_glVertexAttrib3svARB #-}
ptr_glVertexAttrib3svARB :: FunPtr (GLuint -> Ptr GLshort -> IO ())
ptr_glVertexAttrib3svARB = unsafePerformIO $ getCommand "glVertexAttrib3svARB"

-- glVertexAttrib3svNV ---------------------------------------------------------

glVertexAttrib3svNV
  :: GLuint -- ^ @index@.
  -> Ptr GLshort -- ^ @v@ pointing to @3@ elements of type @GLshort@.
  -> IO ()
glVertexAttrib3svNV = dyn_glVertexAttrib3svNV ptr_glVertexAttrib3svNV

foreign import CALLCONV "dynamic" dyn_glVertexAttrib3svNV
  :: FunPtr (GLuint -> Ptr GLshort -> IO ())
  ->         GLuint -> Ptr GLshort -> IO ()

{-# NOINLINE ptr_glVertexAttrib3svNV #-}
ptr_glVertexAttrib3svNV :: FunPtr (GLuint -> Ptr GLshort -> IO ())
ptr_glVertexAttrib3svNV = unsafePerformIO $ getCommand "glVertexAttrib3svNV"

-- glVertexAttrib4Nbv ----------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glVertexAttrib.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glVertexAttrib.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glVertexAttrib.xhtml OpenGL 4.x>
glVertexAttrib4Nbv
  :: GLuint -- ^ @index@.
  -> Ptr GLbyte -- ^ @v@ pointing to @4@ elements of type @GLbyte@.
  -> IO ()
glVertexAttrib4Nbv = dyn_glVertexAttrib4Nbv ptr_glVertexAttrib4Nbv

foreign import CALLCONV "dynamic" dyn_glVertexAttrib4Nbv
  :: FunPtr (GLuint -> Ptr GLbyte -> IO ())
  ->         GLuint -> Ptr GLbyte -> IO ()

{-# NOINLINE ptr_glVertexAttrib4Nbv #-}
ptr_glVertexAttrib4Nbv :: FunPtr (GLuint -> Ptr GLbyte -> IO ())
ptr_glVertexAttrib4Nbv = unsafePerformIO $ getCommand "glVertexAttrib4Nbv"

-- glVertexAttrib4NbvARB -------------------------------------------------------

glVertexAttrib4NbvARB
  :: GLuint -- ^ @index@.
  -> Ptr GLbyte -- ^ @v@ pointing to @4@ elements of type @GLbyte@.
  -> IO ()
glVertexAttrib4NbvARB = dyn_glVertexAttrib4NbvARB ptr_glVertexAttrib4NbvARB

foreign import CALLCONV "dynamic" dyn_glVertexAttrib4NbvARB
  :: FunPtr (GLuint -> Ptr GLbyte -> IO ())
  ->         GLuint -> Ptr GLbyte -> IO ()

{-# NOINLINE ptr_glVertexAttrib4NbvARB #-}
ptr_glVertexAttrib4NbvARB :: FunPtr (GLuint -> Ptr GLbyte -> IO ())
ptr_glVertexAttrib4NbvARB = unsafePerformIO $ getCommand "glVertexAttrib4NbvARB"

-- glVertexAttrib4Niv ----------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glVertexAttrib.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glVertexAttrib.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glVertexAttrib.xhtml OpenGL 4.x>
glVertexAttrib4Niv
  :: GLuint -- ^ @index@.
  -> Ptr GLint -- ^ @v@ pointing to @4@ elements of type @GLint@.
  -> IO ()
glVertexAttrib4Niv = dyn_glVertexAttrib4Niv ptr_glVertexAttrib4Niv

foreign import CALLCONV "dynamic" dyn_glVertexAttrib4Niv
  :: FunPtr (GLuint -> Ptr GLint -> IO ())
  ->         GLuint -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glVertexAttrib4Niv #-}
ptr_glVertexAttrib4Niv :: FunPtr (GLuint -> Ptr GLint -> IO ())
ptr_glVertexAttrib4Niv = unsafePerformIO $ getCommand "glVertexAttrib4Niv"

-- glVertexAttrib4NivARB -------------------------------------------------------

glVertexAttrib4NivARB
  :: GLuint -- ^ @index@.
  -> Ptr GLint -- ^ @v@ pointing to @4@ elements of type @GLint@.
  -> IO ()
glVertexAttrib4NivARB = dyn_glVertexAttrib4NivARB ptr_glVertexAttrib4NivARB

foreign import CALLCONV "dynamic" dyn_glVertexAttrib4NivARB
  :: FunPtr (GLuint -> Ptr GLint -> IO ())
  ->         GLuint -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glVertexAttrib4NivARB #-}
ptr_glVertexAttrib4NivARB :: FunPtr (GLuint -> Ptr GLint -> IO ())
ptr_glVertexAttrib4NivARB = unsafePerformIO $ getCommand "glVertexAttrib4NivARB"

-- glVertexAttrib4Nsv ----------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glVertexAttrib.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glVertexAttrib.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glVertexAttrib.xhtml OpenGL 4.x>
glVertexAttrib4Nsv
  :: GLuint -- ^ @index@.
  -> Ptr GLshort -- ^ @v@ pointing to @4@ elements of type @GLshort@.
  -> IO ()
glVertexAttrib4Nsv = dyn_glVertexAttrib4Nsv ptr_glVertexAttrib4Nsv

foreign import CALLCONV "dynamic" dyn_glVertexAttrib4Nsv
  :: FunPtr (GLuint -> Ptr GLshort -> IO ())
  ->         GLuint -> Ptr GLshort -> IO ()

{-# NOINLINE ptr_glVertexAttrib4Nsv #-}
ptr_glVertexAttrib4Nsv :: FunPtr (GLuint -> Ptr GLshort -> IO ())
ptr_glVertexAttrib4Nsv = unsafePerformIO $ getCommand "glVertexAttrib4Nsv"

-- glVertexAttrib4NsvARB -------------------------------------------------------

glVertexAttrib4NsvARB
  :: GLuint -- ^ @index@.
  -> Ptr GLshort -- ^ @v@ pointing to @4@ elements of type @GLshort@.
  -> IO ()
glVertexAttrib4NsvARB = dyn_glVertexAttrib4NsvARB ptr_glVertexAttrib4NsvARB

foreign import CALLCONV "dynamic" dyn_glVertexAttrib4NsvARB
  :: FunPtr (GLuint -> Ptr GLshort -> IO ())
  ->         GLuint -> Ptr GLshort -> IO ()

{-# NOINLINE ptr_glVertexAttrib4NsvARB #-}
ptr_glVertexAttrib4NsvARB :: FunPtr (GLuint -> Ptr GLshort -> IO ())
ptr_glVertexAttrib4NsvARB = unsafePerformIO $ getCommand "glVertexAttrib4NsvARB"

-- glVertexAttrib4Nub ----------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glVertexAttrib.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glVertexAttrib.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glVertexAttrib.xhtml OpenGL 4.x>
glVertexAttrib4Nub
  :: GLuint -- ^ @index@.
  -> GLubyte -- ^ @x@.
  -> GLubyte -- ^ @y@.
  -> GLubyte -- ^ @z@.
  -> GLubyte -- ^ @w@.
  -> IO ()
glVertexAttrib4Nub = dyn_glVertexAttrib4Nub ptr_glVertexAttrib4Nub

foreign import CALLCONV "dynamic" dyn_glVertexAttrib4Nub
  :: FunPtr (GLuint -> GLubyte -> GLubyte -> GLubyte -> GLubyte -> IO ())
  ->         GLuint -> GLubyte -> GLubyte -> GLubyte -> GLubyte -> IO ()

{-# NOINLINE ptr_glVertexAttrib4Nub #-}
ptr_glVertexAttrib4Nub :: FunPtr (GLuint -> GLubyte -> GLubyte -> GLubyte -> GLubyte -> IO ())
ptr_glVertexAttrib4Nub = unsafePerformIO $ getCommand "glVertexAttrib4Nub"

-- glVertexAttrib4NubARB -------------------------------------------------------

glVertexAttrib4NubARB
  :: GLuint -- ^ @index@.
  -> GLubyte -- ^ @x@.
  -> GLubyte -- ^ @y@.
  -> GLubyte -- ^ @z@.
  -> GLubyte -- ^ @w@.
  -> IO ()
glVertexAttrib4NubARB = dyn_glVertexAttrib4NubARB ptr_glVertexAttrib4NubARB

foreign import CALLCONV "dynamic" dyn_glVertexAttrib4NubARB
  :: FunPtr (GLuint -> GLubyte -> GLubyte -> GLubyte -> GLubyte -> IO ())
  ->         GLuint -> GLubyte -> GLubyte -> GLubyte -> GLubyte -> IO ()

{-# NOINLINE ptr_glVertexAttrib4NubARB #-}
ptr_glVertexAttrib4NubARB :: FunPtr (GLuint -> GLubyte -> GLubyte -> GLubyte -> GLubyte -> IO ())
ptr_glVertexAttrib4NubARB = unsafePerformIO $ getCommand "glVertexAttrib4NubARB"

-- glVertexAttrib4Nubv ---------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glVertexAttrib.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glVertexAttrib.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glVertexAttrib.xhtml OpenGL 4.x>
glVertexAttrib4Nubv
  :: GLuint -- ^ @index@.
  -> Ptr GLubyte -- ^ @v@ pointing to @4@ elements of type @GLubyte@.
  -> IO ()
glVertexAttrib4Nubv = dyn_glVertexAttrib4Nubv ptr_glVertexAttrib4Nubv

foreign import CALLCONV "dynamic" dyn_glVertexAttrib4Nubv
  :: FunPtr (GLuint -> Ptr GLubyte -> IO ())
  ->         GLuint -> Ptr GLubyte -> IO ()

{-# NOINLINE ptr_glVertexAttrib4Nubv #-}
ptr_glVertexAttrib4Nubv :: FunPtr (GLuint -> Ptr GLubyte -> IO ())
ptr_glVertexAttrib4Nubv = unsafePerformIO $ getCommand "glVertexAttrib4Nubv"

-- glVertexAttrib4NubvARB ------------------------------------------------------

glVertexAttrib4NubvARB
  :: GLuint -- ^ @index@.
  -> Ptr GLubyte -- ^ @v@ pointing to @4@ elements of type @GLubyte@.
  -> IO ()
glVertexAttrib4NubvARB = dyn_glVertexAttrib4NubvARB ptr_glVertexAttrib4NubvARB

foreign import CALLCONV "dynamic" dyn_glVertexAttrib4NubvARB
  :: FunPtr (GLuint -> Ptr GLubyte -> IO ())
  ->         GLuint -> Ptr GLubyte -> IO ()

{-# NOINLINE ptr_glVertexAttrib4NubvARB #-}
ptr_glVertexAttrib4NubvARB :: FunPtr (GLuint -> Ptr GLubyte -> IO ())
ptr_glVertexAttrib4NubvARB = unsafePerformIO $ getCommand "glVertexAttrib4NubvARB"

-- glVertexAttrib4Nuiv ---------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glVertexAttrib.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glVertexAttrib.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glVertexAttrib.xhtml OpenGL 4.x>
glVertexAttrib4Nuiv
  :: GLuint -- ^ @index@.
  -> Ptr GLuint -- ^ @v@ pointing to @4@ elements of type @GLuint@.
  -> IO ()
glVertexAttrib4Nuiv = dyn_glVertexAttrib4Nuiv ptr_glVertexAttrib4Nuiv

foreign import CALLCONV "dynamic" dyn_glVertexAttrib4Nuiv
  :: FunPtr (GLuint -> Ptr GLuint -> IO ())
  ->         GLuint -> Ptr GLuint -> IO ()

{-# NOINLINE ptr_glVertexAttrib4Nuiv #-}
ptr_glVertexAttrib4Nuiv :: FunPtr (GLuint -> Ptr GLuint -> IO ())
ptr_glVertexAttrib4Nuiv = unsafePerformIO $ getCommand "glVertexAttrib4Nuiv"

-- glVertexAttrib4NuivARB ------------------------------------------------------

glVertexAttrib4NuivARB
  :: GLuint -- ^ @index@.
  -> Ptr GLuint -- ^ @v@ pointing to @4@ elements of type @GLuint@.
  -> IO ()
glVertexAttrib4NuivARB = dyn_glVertexAttrib4NuivARB ptr_glVertexAttrib4NuivARB

foreign import CALLCONV "dynamic" dyn_glVertexAttrib4NuivARB
  :: FunPtr (GLuint -> Ptr GLuint -> IO ())
  ->         GLuint -> Ptr GLuint -> IO ()

{-# NOINLINE ptr_glVertexAttrib4NuivARB #-}
ptr_glVertexAttrib4NuivARB :: FunPtr (GLuint -> Ptr GLuint -> IO ())
ptr_glVertexAttrib4NuivARB = unsafePerformIO $ getCommand "glVertexAttrib4NuivARB"

-- glVertexAttrib4Nusv ---------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glVertexAttrib.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glVertexAttrib.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glVertexAttrib.xhtml OpenGL 4.x>
glVertexAttrib4Nusv
  :: GLuint -- ^ @index@.
  -> Ptr GLushort -- ^ @v@ pointing to @4@ elements of type @GLushort@.
  -> IO ()
glVertexAttrib4Nusv = dyn_glVertexAttrib4Nusv ptr_glVertexAttrib4Nusv

foreign import CALLCONV "dynamic" dyn_glVertexAttrib4Nusv
  :: FunPtr (GLuint -> Ptr GLushort -> IO ())
  ->         GLuint -> Ptr GLushort -> IO ()

{-# NOINLINE ptr_glVertexAttrib4Nusv #-}
ptr_glVertexAttrib4Nusv :: FunPtr (GLuint -> Ptr GLushort -> IO ())
ptr_glVertexAttrib4Nusv = unsafePerformIO $ getCommand "glVertexAttrib4Nusv"

-- glVertexAttrib4NusvARB ------------------------------------------------------

glVertexAttrib4NusvARB
  :: GLuint -- ^ @index@.
  -> Ptr GLushort -- ^ @v@ pointing to @4@ elements of type @GLushort@.
  -> IO ()
glVertexAttrib4NusvARB = dyn_glVertexAttrib4NusvARB ptr_glVertexAttrib4NusvARB

foreign import CALLCONV "dynamic" dyn_glVertexAttrib4NusvARB
  :: FunPtr (GLuint -> Ptr GLushort -> IO ())
  ->         GLuint -> Ptr GLushort -> IO ()

{-# NOINLINE ptr_glVertexAttrib4NusvARB #-}
ptr_glVertexAttrib4NusvARB :: FunPtr (GLuint -> Ptr GLushort -> IO ())
ptr_glVertexAttrib4NusvARB = unsafePerformIO $ getCommand "glVertexAttrib4NusvARB"

-- glVertexAttrib4bv -----------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glVertexAttrib.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glVertexAttrib.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glVertexAttrib.xhtml OpenGL 4.x>
glVertexAttrib4bv
  :: GLuint -- ^ @index@.
  -> Ptr GLbyte -- ^ @v@ pointing to @4@ elements of type @GLbyte@.
  -> IO ()
glVertexAttrib4bv = dyn_glVertexAttrib4bv ptr_glVertexAttrib4bv

foreign import CALLCONV "dynamic" dyn_glVertexAttrib4bv
  :: FunPtr (GLuint -> Ptr GLbyte -> IO ())
  ->         GLuint -> Ptr GLbyte -> IO ()

{-# NOINLINE ptr_glVertexAttrib4bv #-}
ptr_glVertexAttrib4bv :: FunPtr (GLuint -> Ptr GLbyte -> IO ())
ptr_glVertexAttrib4bv = unsafePerformIO $ getCommand "glVertexAttrib4bv"

-- glVertexAttrib4bvARB --------------------------------------------------------

glVertexAttrib4bvARB
  :: GLuint -- ^ @index@.
  -> Ptr GLbyte -- ^ @v@ pointing to @4@ elements of type @GLbyte@.
  -> IO ()
glVertexAttrib4bvARB = dyn_glVertexAttrib4bvARB ptr_glVertexAttrib4bvARB

foreign import CALLCONV "dynamic" dyn_glVertexAttrib4bvARB
  :: FunPtr (GLuint -> Ptr GLbyte -> IO ())
  ->         GLuint -> Ptr GLbyte -> IO ()

{-# NOINLINE ptr_glVertexAttrib4bvARB #-}
ptr_glVertexAttrib4bvARB :: FunPtr (GLuint -> Ptr GLbyte -> IO ())
ptr_glVertexAttrib4bvARB = unsafePerformIO $ getCommand "glVertexAttrib4bvARB"

-- glVertexAttrib4d ------------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glVertexAttrib.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glVertexAttrib.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glVertexAttrib.xhtml OpenGL 4.x>
glVertexAttrib4d
  :: GLuint -- ^ @index@.
  -> GLdouble -- ^ @x@.
  -> GLdouble -- ^ @y@.
  -> GLdouble -- ^ @z@.
  -> GLdouble -- ^ @w@.
  -> IO ()
glVertexAttrib4d = dyn_glVertexAttrib4d ptr_glVertexAttrib4d

foreign import CALLCONV "dynamic" dyn_glVertexAttrib4d
  :: FunPtr (GLuint -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ())
  ->         GLuint -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ()

{-# NOINLINE ptr_glVertexAttrib4d #-}
ptr_glVertexAttrib4d :: FunPtr (GLuint -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ())
ptr_glVertexAttrib4d = unsafePerformIO $ getCommand "glVertexAttrib4d"

-- glVertexAttrib4dARB ---------------------------------------------------------

glVertexAttrib4dARB
  :: GLuint -- ^ @index@.
  -> GLdouble -- ^ @x@.
  -> GLdouble -- ^ @y@.
  -> GLdouble -- ^ @z@.
  -> GLdouble -- ^ @w@.
  -> IO ()
glVertexAttrib4dARB = dyn_glVertexAttrib4dARB ptr_glVertexAttrib4dARB

foreign import CALLCONV "dynamic" dyn_glVertexAttrib4dARB
  :: FunPtr (GLuint -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ())
  ->         GLuint -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ()

{-# NOINLINE ptr_glVertexAttrib4dARB #-}
ptr_glVertexAttrib4dARB :: FunPtr (GLuint -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ())
ptr_glVertexAttrib4dARB = unsafePerformIO $ getCommand "glVertexAttrib4dARB"

-- glVertexAttrib4dNV ----------------------------------------------------------

glVertexAttrib4dNV
  :: GLuint -- ^ @index@.
  -> GLdouble -- ^ @x@.
  -> GLdouble -- ^ @y@.
  -> GLdouble -- ^ @z@.
  -> GLdouble -- ^ @w@.
  -> IO ()
glVertexAttrib4dNV = dyn_glVertexAttrib4dNV ptr_glVertexAttrib4dNV

foreign import CALLCONV "dynamic" dyn_glVertexAttrib4dNV
  :: FunPtr (GLuint -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ())
  ->         GLuint -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ()

{-# NOINLINE ptr_glVertexAttrib4dNV #-}
ptr_glVertexAttrib4dNV :: FunPtr (GLuint -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ())
ptr_glVertexAttrib4dNV = unsafePerformIO $ getCommand "glVertexAttrib4dNV"

-- glVertexAttrib4dv -----------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glVertexAttrib.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glVertexAttrib.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glVertexAttrib.xhtml OpenGL 4.x>
glVertexAttrib4dv
  :: GLuint -- ^ @index@.
  -> Ptr GLdouble -- ^ @v@ pointing to @4@ elements of type @GLdouble@.
  -> IO ()
glVertexAttrib4dv = dyn_glVertexAttrib4dv ptr_glVertexAttrib4dv

foreign import CALLCONV "dynamic" dyn_glVertexAttrib4dv
  :: FunPtr (GLuint -> Ptr GLdouble -> IO ())
  ->         GLuint -> Ptr GLdouble -> IO ()

{-# NOINLINE ptr_glVertexAttrib4dv #-}
ptr_glVertexAttrib4dv :: FunPtr (GLuint -> Ptr GLdouble -> IO ())
ptr_glVertexAttrib4dv = unsafePerformIO $ getCommand "glVertexAttrib4dv"

-- glVertexAttrib4dvARB --------------------------------------------------------

glVertexAttrib4dvARB
  :: GLuint -- ^ @index@.
  -> Ptr GLdouble -- ^ @v@ pointing to @4@ elements of type @GLdouble@.
  -> IO ()
glVertexAttrib4dvARB = dyn_glVertexAttrib4dvARB ptr_glVertexAttrib4dvARB

foreign import CALLCONV "dynamic" dyn_glVertexAttrib4dvARB
  :: FunPtr (GLuint -> Ptr GLdouble -> IO ())
  ->         GLuint -> Ptr GLdouble -> IO ()

{-# NOINLINE ptr_glVertexAttrib4dvARB #-}
ptr_glVertexAttrib4dvARB :: FunPtr (GLuint -> Ptr GLdouble -> IO ())
ptr_glVertexAttrib4dvARB = unsafePerformIO $ getCommand "glVertexAttrib4dvARB"

-- glVertexAttrib4dvNV ---------------------------------------------------------

glVertexAttrib4dvNV
  :: GLuint -- ^ @index@.
  -> Ptr GLdouble -- ^ @v@ pointing to @4@ elements of type @GLdouble@.
  -> IO ()
glVertexAttrib4dvNV = dyn_glVertexAttrib4dvNV ptr_glVertexAttrib4dvNV

foreign import CALLCONV "dynamic" dyn_glVertexAttrib4dvNV
  :: FunPtr (GLuint -> Ptr GLdouble -> IO ())
  ->         GLuint -> Ptr GLdouble -> IO ()

{-# NOINLINE ptr_glVertexAttrib4dvNV #-}
ptr_glVertexAttrib4dvNV :: FunPtr (GLuint -> Ptr GLdouble -> IO ())
ptr_glVertexAttrib4dvNV = unsafePerformIO $ getCommand "glVertexAttrib4dvNV"

-- glVertexAttrib4f ------------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glVertexAttrib.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glVertexAttrib.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glVertexAttrib.xhtml OpenGL 4.x>
glVertexAttrib4f
  :: GLuint -- ^ @index@.
  -> GLfloat -- ^ @x@.
  -> GLfloat -- ^ @y@.
  -> GLfloat -- ^ @z@.
  -> GLfloat -- ^ @w@.
  -> IO ()
glVertexAttrib4f = dyn_glVertexAttrib4f ptr_glVertexAttrib4f

foreign import CALLCONV "dynamic" dyn_glVertexAttrib4f
  :: FunPtr (GLuint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
  ->         GLuint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ()

{-# NOINLINE ptr_glVertexAttrib4f #-}
ptr_glVertexAttrib4f :: FunPtr (GLuint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
ptr_glVertexAttrib4f = unsafePerformIO $ getCommand "glVertexAttrib4f"

-- glVertexAttrib4fARB ---------------------------------------------------------

glVertexAttrib4fARB
  :: GLuint -- ^ @index@.
  -> GLfloat -- ^ @x@.
  -> GLfloat -- ^ @y@.
  -> GLfloat -- ^ @z@.
  -> GLfloat -- ^ @w@.
  -> IO ()
glVertexAttrib4fARB = dyn_glVertexAttrib4fARB ptr_glVertexAttrib4fARB

foreign import CALLCONV "dynamic" dyn_glVertexAttrib4fARB
  :: FunPtr (GLuint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
  ->         GLuint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ()

{-# NOINLINE ptr_glVertexAttrib4fARB #-}
ptr_glVertexAttrib4fARB :: FunPtr (GLuint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
ptr_glVertexAttrib4fARB = unsafePerformIO $ getCommand "glVertexAttrib4fARB"

-- glVertexAttrib4fNV ----------------------------------------------------------

glVertexAttrib4fNV
  :: GLuint -- ^ @index@.
  -> GLfloat -- ^ @x@.
  -> GLfloat -- ^ @y@.
  -> GLfloat -- ^ @z@.
  -> GLfloat -- ^ @w@.
  -> IO ()
glVertexAttrib4fNV = dyn_glVertexAttrib4fNV ptr_glVertexAttrib4fNV

foreign import CALLCONV "dynamic" dyn_glVertexAttrib4fNV
  :: FunPtr (GLuint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
  ->         GLuint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ()

{-# NOINLINE ptr_glVertexAttrib4fNV #-}
ptr_glVertexAttrib4fNV :: FunPtr (GLuint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
ptr_glVertexAttrib4fNV = unsafePerformIO $ getCommand "glVertexAttrib4fNV"

-- glVertexAttrib4fv -----------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glVertexAttrib.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glVertexAttrib.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glVertexAttrib.xhtml OpenGL 4.x>
glVertexAttrib4fv
  :: GLuint -- ^ @index@.
  -> Ptr GLfloat -- ^ @v@ pointing to @4@ elements of type @GLfloat@.
  -> IO ()
glVertexAttrib4fv = dyn_glVertexAttrib4fv ptr_glVertexAttrib4fv

foreign import CALLCONV "dynamic" dyn_glVertexAttrib4fv
  :: FunPtr (GLuint -> Ptr GLfloat -> IO ())
  ->         GLuint -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glVertexAttrib4fv #-}
ptr_glVertexAttrib4fv :: FunPtr (GLuint -> Ptr GLfloat -> IO ())
ptr_glVertexAttrib4fv = unsafePerformIO $ getCommand "glVertexAttrib4fv"

-- glVertexAttrib4fvARB --------------------------------------------------------

glVertexAttrib4fvARB
  :: GLuint -- ^ @index@.
  -> Ptr GLfloat -- ^ @v@ pointing to @4@ elements of type @GLfloat@.
  -> IO ()
glVertexAttrib4fvARB = dyn_glVertexAttrib4fvARB ptr_glVertexAttrib4fvARB

foreign import CALLCONV "dynamic" dyn_glVertexAttrib4fvARB
  :: FunPtr (GLuint -> Ptr GLfloat -> IO ())
  ->         GLuint -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glVertexAttrib4fvARB #-}
ptr_glVertexAttrib4fvARB :: FunPtr (GLuint -> Ptr GLfloat -> IO ())
ptr_glVertexAttrib4fvARB = unsafePerformIO $ getCommand "glVertexAttrib4fvARB"

-- glVertexAttrib4fvNV ---------------------------------------------------------

glVertexAttrib4fvNV
  :: GLuint -- ^ @index@.
  -> Ptr GLfloat -- ^ @v@ pointing to @4@ elements of type @GLfloat@.
  -> IO ()
glVertexAttrib4fvNV = dyn_glVertexAttrib4fvNV ptr_glVertexAttrib4fvNV

foreign import CALLCONV "dynamic" dyn_glVertexAttrib4fvNV
  :: FunPtr (GLuint -> Ptr GLfloat -> IO ())
  ->         GLuint -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glVertexAttrib4fvNV #-}
ptr_glVertexAttrib4fvNV :: FunPtr (GLuint -> Ptr GLfloat -> IO ())
ptr_glVertexAttrib4fvNV = unsafePerformIO $ getCommand "glVertexAttrib4fvNV"

-- glVertexAttrib4hNV ----------------------------------------------------------

glVertexAttrib4hNV
  :: GLuint -- ^ @index@.
  -> GLhalfNV -- ^ @x@ of type @Half16NV@.
  -> GLhalfNV -- ^ @y@ of type @Half16NV@.
  -> GLhalfNV -- ^ @z@ of type @Half16NV@.
  -> GLhalfNV -- ^ @w@ of type @Half16NV@.
  -> IO ()
glVertexAttrib4hNV = dyn_glVertexAttrib4hNV ptr_glVertexAttrib4hNV

foreign import CALLCONV "dynamic" dyn_glVertexAttrib4hNV
  :: FunPtr (GLuint -> GLhalfNV -> GLhalfNV -> GLhalfNV -> GLhalfNV -> IO ())
  ->         GLuint -> GLhalfNV -> GLhalfNV -> GLhalfNV -> GLhalfNV -> IO ()

{-# NOINLINE ptr_glVertexAttrib4hNV #-}
ptr_glVertexAttrib4hNV :: FunPtr (GLuint -> GLhalfNV -> GLhalfNV -> GLhalfNV -> GLhalfNV -> IO ())
ptr_glVertexAttrib4hNV = unsafePerformIO $ getCommand "glVertexAttrib4hNV"

-- glVertexAttrib4hvNV ---------------------------------------------------------

glVertexAttrib4hvNV
  :: GLuint -- ^ @index@.
  -> Ptr GLhalfNV -- ^ @v@ pointing to @4@ elements of type @Half16NV@.
  -> IO ()
glVertexAttrib4hvNV = dyn_glVertexAttrib4hvNV ptr_glVertexAttrib4hvNV

foreign import CALLCONV "dynamic" dyn_glVertexAttrib4hvNV
  :: FunPtr (GLuint -> Ptr GLhalfNV -> IO ())
  ->         GLuint -> Ptr GLhalfNV -> IO ()

{-# NOINLINE ptr_glVertexAttrib4hvNV #-}
ptr_glVertexAttrib4hvNV :: FunPtr (GLuint -> Ptr GLhalfNV -> IO ())
ptr_glVertexAttrib4hvNV = unsafePerformIO $ getCommand "glVertexAttrib4hvNV"

-- glVertexAttrib4iv -----------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glVertexAttrib.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glVertexAttrib.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glVertexAttrib.xhtml OpenGL 4.x>
glVertexAttrib4iv
  :: GLuint -- ^ @index@.
  -> Ptr GLint -- ^ @v@ pointing to @4@ elements of type @GLint@.
  -> IO ()
glVertexAttrib4iv = dyn_glVertexAttrib4iv ptr_glVertexAttrib4iv

foreign import CALLCONV "dynamic" dyn_glVertexAttrib4iv
  :: FunPtr (GLuint -> Ptr GLint -> IO ())
  ->         GLuint -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glVertexAttrib4iv #-}
ptr_glVertexAttrib4iv :: FunPtr (GLuint -> Ptr GLint -> IO ())
ptr_glVertexAttrib4iv = unsafePerformIO $ getCommand "glVertexAttrib4iv"

-- glVertexAttrib4ivARB --------------------------------------------------------

glVertexAttrib4ivARB
  :: GLuint -- ^ @index@.
  -> Ptr GLint -- ^ @v@ pointing to @4@ elements of type @GLint@.
  -> IO ()
glVertexAttrib4ivARB = dyn_glVertexAttrib4ivARB ptr_glVertexAttrib4ivARB

foreign import CALLCONV "dynamic" dyn_glVertexAttrib4ivARB
  :: FunPtr (GLuint -> Ptr GLint -> IO ())
  ->         GLuint -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glVertexAttrib4ivARB #-}
ptr_glVertexAttrib4ivARB :: FunPtr (GLuint -> Ptr GLint -> IO ())
ptr_glVertexAttrib4ivARB = unsafePerformIO $ getCommand "glVertexAttrib4ivARB"

-- glVertexAttrib4s ------------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glVertexAttrib.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glVertexAttrib.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glVertexAttrib.xhtml OpenGL 4.x>
glVertexAttrib4s
  :: GLuint -- ^ @index@.
  -> GLshort -- ^ @x@.
  -> GLshort -- ^ @y@.
  -> GLshort -- ^ @z@.
  -> GLshort -- ^ @w@.
  -> IO ()
glVertexAttrib4s = dyn_glVertexAttrib4s ptr_glVertexAttrib4s

foreign import CALLCONV "dynamic" dyn_glVertexAttrib4s
  :: FunPtr (GLuint -> GLshort -> GLshort -> GLshort -> GLshort -> IO ())
  ->         GLuint -> GLshort -> GLshort -> GLshort -> GLshort -> IO ()

{-# NOINLINE ptr_glVertexAttrib4s #-}
ptr_glVertexAttrib4s :: FunPtr (GLuint -> GLshort -> GLshort -> GLshort -> GLshort -> IO ())
ptr_glVertexAttrib4s = unsafePerformIO $ getCommand "glVertexAttrib4s"

-- glVertexAttrib4sARB ---------------------------------------------------------

glVertexAttrib4sARB
  :: GLuint -- ^ @index@.
  -> GLshort -- ^ @x@.
  -> GLshort -- ^ @y@.
  -> GLshort -- ^ @z@.
  -> GLshort -- ^ @w@.
  -> IO ()
glVertexAttrib4sARB = dyn_glVertexAttrib4sARB ptr_glVertexAttrib4sARB

foreign import CALLCONV "dynamic" dyn_glVertexAttrib4sARB
  :: FunPtr (GLuint -> GLshort -> GLshort -> GLshort -> GLshort -> IO ())
  ->         GLuint -> GLshort -> GLshort -> GLshort -> GLshort -> IO ()

{-# NOINLINE ptr_glVertexAttrib4sARB #-}
ptr_glVertexAttrib4sARB :: FunPtr (GLuint -> GLshort -> GLshort -> GLshort -> GLshort -> IO ())
ptr_glVertexAttrib4sARB = unsafePerformIO $ getCommand "glVertexAttrib4sARB"

-- glVertexAttrib4sNV ----------------------------------------------------------

glVertexAttrib4sNV
  :: GLuint -- ^ @index@.
  -> GLshort -- ^ @x@.
  -> GLshort -- ^ @y@.
  -> GLshort -- ^ @z@.
  -> GLshort -- ^ @w@.
  -> IO ()
glVertexAttrib4sNV = dyn_glVertexAttrib4sNV ptr_glVertexAttrib4sNV

foreign import CALLCONV "dynamic" dyn_glVertexAttrib4sNV
  :: FunPtr (GLuint -> GLshort -> GLshort -> GLshort -> GLshort -> IO ())
  ->         GLuint -> GLshort -> GLshort -> GLshort -> GLshort -> IO ()

{-# NOINLINE ptr_glVertexAttrib4sNV #-}
ptr_glVertexAttrib4sNV :: FunPtr (GLuint -> GLshort -> GLshort -> GLshort -> GLshort -> IO ())
ptr_glVertexAttrib4sNV = unsafePerformIO $ getCommand "glVertexAttrib4sNV"

-- glVertexAttrib4sv -----------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glVertexAttrib.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glVertexAttrib.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glVertexAttrib.xhtml OpenGL 4.x>
glVertexAttrib4sv
  :: GLuint -- ^ @index@.
  -> Ptr GLshort -- ^ @v@ pointing to @4@ elements of type @GLshort@.
  -> IO ()
glVertexAttrib4sv = dyn_glVertexAttrib4sv ptr_glVertexAttrib4sv

foreign import CALLCONV "dynamic" dyn_glVertexAttrib4sv
  :: FunPtr (GLuint -> Ptr GLshort -> IO ())
  ->         GLuint -> Ptr GLshort -> IO ()

{-# NOINLINE ptr_glVertexAttrib4sv #-}
ptr_glVertexAttrib4sv :: FunPtr (GLuint -> Ptr GLshort -> IO ())
ptr_glVertexAttrib4sv = unsafePerformIO $ getCommand "glVertexAttrib4sv"

-- glVertexAttrib4svARB --------------------------------------------------------

glVertexAttrib4svARB
  :: GLuint -- ^ @index@.
  -> Ptr GLshort -- ^ @v@ pointing to @4@ elements of type @GLshort@.
  -> IO ()
glVertexAttrib4svARB = dyn_glVertexAttrib4svARB ptr_glVertexAttrib4svARB

foreign import CALLCONV "dynamic" dyn_glVertexAttrib4svARB
  :: FunPtr (GLuint -> Ptr GLshort -> IO ())
  ->         GLuint -> Ptr GLshort -> IO ()

{-# NOINLINE ptr_glVertexAttrib4svARB #-}
ptr_glVertexAttrib4svARB :: FunPtr (GLuint -> Ptr GLshort -> IO ())
ptr_glVertexAttrib4svARB = unsafePerformIO $ getCommand "glVertexAttrib4svARB"

-- glVertexAttrib4svNV ---------------------------------------------------------

glVertexAttrib4svNV
  :: GLuint -- ^ @index@.
  -> Ptr GLshort -- ^ @v@ pointing to @4@ elements of type @GLshort@.
  -> IO ()
glVertexAttrib4svNV = dyn_glVertexAttrib4svNV ptr_glVertexAttrib4svNV

foreign import CALLCONV "dynamic" dyn_glVertexAttrib4svNV
  :: FunPtr (GLuint -> Ptr GLshort -> IO ())
  ->         GLuint -> Ptr GLshort -> IO ()

{-# NOINLINE ptr_glVertexAttrib4svNV #-}
ptr_glVertexAttrib4svNV :: FunPtr (GLuint -> Ptr GLshort -> IO ())
ptr_glVertexAttrib4svNV = unsafePerformIO $ getCommand "glVertexAttrib4svNV"

-- glVertexAttrib4ubNV ---------------------------------------------------------

glVertexAttrib4ubNV
  :: GLuint -- ^ @index@.
  -> GLubyte -- ^ @x@ of type @ColorUB@.
  -> GLubyte -- ^ @y@ of type @ColorUB@.
  -> GLubyte -- ^ @z@ of type @ColorUB@.
  -> GLubyte -- ^ @w@ of type @ColorUB@.
  -> IO ()
glVertexAttrib4ubNV = dyn_glVertexAttrib4ubNV ptr_glVertexAttrib4ubNV

foreign import CALLCONV "dynamic" dyn_glVertexAttrib4ubNV
  :: FunPtr (GLuint -> GLubyte -> GLubyte -> GLubyte -> GLubyte -> IO ())
  ->         GLuint -> GLubyte -> GLubyte -> GLubyte -> GLubyte -> IO ()

{-# NOINLINE ptr_glVertexAttrib4ubNV #-}
ptr_glVertexAttrib4ubNV :: FunPtr (GLuint -> GLubyte -> GLubyte -> GLubyte -> GLubyte -> IO ())
ptr_glVertexAttrib4ubNV = unsafePerformIO $ getCommand "glVertexAttrib4ubNV"

-- glVertexAttrib4ubv ----------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glVertexAttrib.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glVertexAttrib.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glVertexAttrib.xhtml OpenGL 4.x>
glVertexAttrib4ubv
  :: GLuint -- ^ @index@.
  -> Ptr GLubyte -- ^ @v@ pointing to @4@ elements of type @GLubyte@.
  -> IO ()
glVertexAttrib4ubv = dyn_glVertexAttrib4ubv ptr_glVertexAttrib4ubv

foreign import CALLCONV "dynamic" dyn_glVertexAttrib4ubv
  :: FunPtr (GLuint -> Ptr GLubyte -> IO ())
  ->         GLuint -> Ptr GLubyte -> IO ()

{-# NOINLINE ptr_glVertexAttrib4ubv #-}
ptr_glVertexAttrib4ubv :: FunPtr (GLuint -> Ptr GLubyte -> IO ())
ptr_glVertexAttrib4ubv = unsafePerformIO $ getCommand "glVertexAttrib4ubv"

-- glVertexAttrib4ubvARB -------------------------------------------------------

glVertexAttrib4ubvARB
  :: GLuint -- ^ @index@.
  -> Ptr GLubyte -- ^ @v@ pointing to @4@ elements of type @GLubyte@.
  -> IO ()
glVertexAttrib4ubvARB = dyn_glVertexAttrib4ubvARB ptr_glVertexAttrib4ubvARB

foreign import CALLCONV "dynamic" dyn_glVertexAttrib4ubvARB
  :: FunPtr (GLuint -> Ptr GLubyte -> IO ())
  ->         GLuint -> Ptr GLubyte -> IO ()

{-# NOINLINE ptr_glVertexAttrib4ubvARB #-}
ptr_glVertexAttrib4ubvARB :: FunPtr (GLuint -> Ptr GLubyte -> IO ())
ptr_glVertexAttrib4ubvARB = unsafePerformIO $ getCommand "glVertexAttrib4ubvARB"

-- glVertexAttrib4ubvNV --------------------------------------------------------

glVertexAttrib4ubvNV
  :: GLuint -- ^ @index@.
  -> Ptr GLubyte -- ^ @v@ pointing to @4@ elements of type @ColorUB@.
  -> IO ()
glVertexAttrib4ubvNV = dyn_glVertexAttrib4ubvNV ptr_glVertexAttrib4ubvNV

foreign import CALLCONV "dynamic" dyn_glVertexAttrib4ubvNV
  :: FunPtr (GLuint -> Ptr GLubyte -> IO ())
  ->         GLuint -> Ptr GLubyte -> IO ()

{-# NOINLINE ptr_glVertexAttrib4ubvNV #-}
ptr_glVertexAttrib4ubvNV :: FunPtr (GLuint -> Ptr GLubyte -> IO ())
ptr_glVertexAttrib4ubvNV = unsafePerformIO $ getCommand "glVertexAttrib4ubvNV"

-- glVertexAttrib4uiv ----------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glVertexAttrib.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glVertexAttrib.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glVertexAttrib.xhtml OpenGL 4.x>
glVertexAttrib4uiv
  :: GLuint -- ^ @index@.
  -> Ptr GLuint -- ^ @v@ pointing to @4@ elements of type @GLuint@.
  -> IO ()
glVertexAttrib4uiv = dyn_glVertexAttrib4uiv ptr_glVertexAttrib4uiv

foreign import CALLCONV "dynamic" dyn_glVertexAttrib4uiv
  :: FunPtr (GLuint -> Ptr GLuint -> IO ())
  ->         GLuint -> Ptr GLuint -> IO ()

{-# NOINLINE ptr_glVertexAttrib4uiv #-}
ptr_glVertexAttrib4uiv :: FunPtr (GLuint -> Ptr GLuint -> IO ())
ptr_glVertexAttrib4uiv = unsafePerformIO $ getCommand "glVertexAttrib4uiv"

-- glVertexAttrib4uivARB -------------------------------------------------------

glVertexAttrib4uivARB
  :: GLuint -- ^ @index@.
  -> Ptr GLuint -- ^ @v@ pointing to @4@ elements of type @GLuint@.
  -> IO ()
glVertexAttrib4uivARB = dyn_glVertexAttrib4uivARB ptr_glVertexAttrib4uivARB

foreign import CALLCONV "dynamic" dyn_glVertexAttrib4uivARB
  :: FunPtr (GLuint -> Ptr GLuint -> IO ())
  ->         GLuint -> Ptr GLuint -> IO ()

{-# NOINLINE ptr_glVertexAttrib4uivARB #-}
ptr_glVertexAttrib4uivARB :: FunPtr (GLuint -> Ptr GLuint -> IO ())
ptr_glVertexAttrib4uivARB = unsafePerformIO $ getCommand "glVertexAttrib4uivARB"

-- glVertexAttrib4usv ----------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glVertexAttrib.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glVertexAttrib.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glVertexAttrib.xhtml OpenGL 4.x>
glVertexAttrib4usv
  :: GLuint -- ^ @index@.
  -> Ptr GLushort -- ^ @v@ pointing to @4@ elements of type @GLushort@.
  -> IO ()
glVertexAttrib4usv = dyn_glVertexAttrib4usv ptr_glVertexAttrib4usv

foreign import CALLCONV "dynamic" dyn_glVertexAttrib4usv
  :: FunPtr (GLuint -> Ptr GLushort -> IO ())
  ->         GLuint -> Ptr GLushort -> IO ()

{-# NOINLINE ptr_glVertexAttrib4usv #-}
ptr_glVertexAttrib4usv :: FunPtr (GLuint -> Ptr GLushort -> IO ())
ptr_glVertexAttrib4usv = unsafePerformIO $ getCommand "glVertexAttrib4usv"

-- glVertexAttrib4usvARB -------------------------------------------------------

glVertexAttrib4usvARB
  :: GLuint -- ^ @index@.
  -> Ptr GLushort -- ^ @v@ pointing to @4@ elements of type @GLushort@.
  -> IO ()
glVertexAttrib4usvARB = dyn_glVertexAttrib4usvARB ptr_glVertexAttrib4usvARB

foreign import CALLCONV "dynamic" dyn_glVertexAttrib4usvARB
  :: FunPtr (GLuint -> Ptr GLushort -> IO ())
  ->         GLuint -> Ptr GLushort -> IO ()

{-# NOINLINE ptr_glVertexAttrib4usvARB #-}
ptr_glVertexAttrib4usvARB :: FunPtr (GLuint -> Ptr GLushort -> IO ())
ptr_glVertexAttrib4usvARB = unsafePerformIO $ getCommand "glVertexAttrib4usvARB"

-- glVertexAttribArrayObjectATI ------------------------------------------------

glVertexAttribArrayObjectATI
  :: GLuint -- ^ @index@.
  -> GLint -- ^ @size@.
  -> GLenum -- ^ @type@ of type @VertexAttribPointerType@.
  -> GLboolean -- ^ @normalized@ of type @Boolean@.
  -> GLsizei -- ^ @stride@.
  -> GLuint -- ^ @buffer@.
  -> GLuint -- ^ @offset@.
  -> IO ()
glVertexAttribArrayObjectATI = dyn_glVertexAttribArrayObjectATI ptr_glVertexAttribArrayObjectATI

foreign import CALLCONV "dynamic" dyn_glVertexAttribArrayObjectATI
  :: FunPtr (GLuint -> GLint -> GLenum -> GLboolean -> GLsizei -> GLuint -> GLuint -> IO ())
  ->         GLuint -> GLint -> GLenum -> GLboolean -> GLsizei -> GLuint -> GLuint -> IO ()

{-# NOINLINE ptr_glVertexAttribArrayObjectATI #-}
ptr_glVertexAttribArrayObjectATI :: FunPtr (GLuint -> GLint -> GLenum -> GLboolean -> GLsizei -> GLuint -> GLuint -> IO ())
ptr_glVertexAttribArrayObjectATI = unsafePerformIO $ getCommand "glVertexAttribArrayObjectATI"

-- glVertexAttribBinding -------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glVertexAttribBinding.xhtml OpenGL 4.x>
glVertexAttribBinding
  :: GLuint -- ^ @attribindex@.
  -> GLuint -- ^ @bindingindex@.
  -> IO ()
glVertexAttribBinding = dyn_glVertexAttribBinding ptr_glVertexAttribBinding

foreign import CALLCONV "dynamic" dyn_glVertexAttribBinding
  :: FunPtr (GLuint -> GLuint -> IO ())
  ->         GLuint -> GLuint -> IO ()

{-# NOINLINE ptr_glVertexAttribBinding #-}
ptr_glVertexAttribBinding :: FunPtr (GLuint -> GLuint -> IO ())
ptr_glVertexAttribBinding = unsafePerformIO $ getCommand "glVertexAttribBinding"

-- glVertexAttribDivisor -------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glVertexAttribDivisor.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glVertexAttribDivisor.xhtml OpenGL 4.x>
glVertexAttribDivisor
  :: GLuint -- ^ @index@.
  -> GLuint -- ^ @divisor@.
  -> IO ()
glVertexAttribDivisor = dyn_glVertexAttribDivisor ptr_glVertexAttribDivisor

foreign import CALLCONV "dynamic" dyn_glVertexAttribDivisor
  :: FunPtr (GLuint -> GLuint -> IO ())
  ->         GLuint -> GLuint -> IO ()

{-# NOINLINE ptr_glVertexAttribDivisor #-}
ptr_glVertexAttribDivisor :: FunPtr (GLuint -> GLuint -> IO ())
ptr_glVertexAttribDivisor = unsafePerformIO $ getCommand "glVertexAttribDivisor"

-- glVertexAttribDivisorANGLE --------------------------------------------------

glVertexAttribDivisorANGLE
  :: GLuint -- ^ @index@.
  -> GLuint -- ^ @divisor@.
  -> IO ()
glVertexAttribDivisorANGLE = dyn_glVertexAttribDivisorANGLE ptr_glVertexAttribDivisorANGLE

foreign import CALLCONV "dynamic" dyn_glVertexAttribDivisorANGLE
  :: FunPtr (GLuint -> GLuint -> IO ())
  ->         GLuint -> GLuint -> IO ()

{-# NOINLINE ptr_glVertexAttribDivisorANGLE #-}
ptr_glVertexAttribDivisorANGLE :: FunPtr (GLuint -> GLuint -> IO ())
ptr_glVertexAttribDivisorANGLE = unsafePerformIO $ getCommand "glVertexAttribDivisorANGLE"

-- glVertexAttribDivisorARB ----------------------------------------------------

glVertexAttribDivisorARB
  :: GLuint -- ^ @index@.
  -> GLuint -- ^ @divisor@.
  -> IO ()
glVertexAttribDivisorARB = dyn_glVertexAttribDivisorARB ptr_glVertexAttribDivisorARB

foreign import CALLCONV "dynamic" dyn_glVertexAttribDivisorARB
  :: FunPtr (GLuint -> GLuint -> IO ())
  ->         GLuint -> GLuint -> IO ()

{-# NOINLINE ptr_glVertexAttribDivisorARB #-}
ptr_glVertexAttribDivisorARB :: FunPtr (GLuint -> GLuint -> IO ())
ptr_glVertexAttribDivisorARB = unsafePerformIO $ getCommand "glVertexAttribDivisorARB"

-- glVertexAttribDivisorEXT ----------------------------------------------------

glVertexAttribDivisorEXT
  :: GLuint -- ^ @index@.
  -> GLuint -- ^ @divisor@.
  -> IO ()
glVertexAttribDivisorEXT = dyn_glVertexAttribDivisorEXT ptr_glVertexAttribDivisorEXT

foreign import CALLCONV "dynamic" dyn_glVertexAttribDivisorEXT
  :: FunPtr (GLuint -> GLuint -> IO ())
  ->         GLuint -> GLuint -> IO ()

{-# NOINLINE ptr_glVertexAttribDivisorEXT #-}
ptr_glVertexAttribDivisorEXT :: FunPtr (GLuint -> GLuint -> IO ())
ptr_glVertexAttribDivisorEXT = unsafePerformIO $ getCommand "glVertexAttribDivisorEXT"

-- glVertexAttribDivisorNV -----------------------------------------------------

glVertexAttribDivisorNV
  :: GLuint -- ^ @index@.
  -> GLuint -- ^ @divisor@.
  -> IO ()
glVertexAttribDivisorNV = dyn_glVertexAttribDivisorNV ptr_glVertexAttribDivisorNV

foreign import CALLCONV "dynamic" dyn_glVertexAttribDivisorNV
  :: FunPtr (GLuint -> GLuint -> IO ())
  ->         GLuint -> GLuint -> IO ()

{-# NOINLINE ptr_glVertexAttribDivisorNV #-}
ptr_glVertexAttribDivisorNV :: FunPtr (GLuint -> GLuint -> IO ())
ptr_glVertexAttribDivisorNV = unsafePerformIO $ getCommand "glVertexAttribDivisorNV"

-- glVertexAttribFormat --------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glVertexAttribFormat.xhtml OpenGL 4.x>
glVertexAttribFormat
  :: GLuint -- ^ @attribindex@.
  -> GLint -- ^ @size@.
  -> GLenum -- ^ @type@.
  -> GLboolean -- ^ @normalized@ of type @Boolean@.
  -> GLuint -- ^ @relativeoffset@.
  -> IO ()
glVertexAttribFormat = dyn_glVertexAttribFormat ptr_glVertexAttribFormat

foreign import CALLCONV "dynamic" dyn_glVertexAttribFormat
  :: FunPtr (GLuint -> GLint -> GLenum -> GLboolean -> GLuint -> IO ())
  ->         GLuint -> GLint -> GLenum -> GLboolean -> GLuint -> IO ()

{-# NOINLINE ptr_glVertexAttribFormat #-}
ptr_glVertexAttribFormat :: FunPtr (GLuint -> GLint -> GLenum -> GLboolean -> GLuint -> IO ())
ptr_glVertexAttribFormat = unsafePerformIO $ getCommand "glVertexAttribFormat"

-- glVertexAttribFormatNV ------------------------------------------------------

glVertexAttribFormatNV
  :: GLuint -- ^ @index@.
  -> GLint -- ^ @size@.
  -> GLenum -- ^ @type@.
  -> GLboolean -- ^ @normalized@ of type @Boolean@.
  -> GLsizei -- ^ @stride@.
  -> IO ()
glVertexAttribFormatNV = dyn_glVertexAttribFormatNV ptr_glVertexAttribFormatNV

foreign import CALLCONV "dynamic" dyn_glVertexAttribFormatNV
  :: FunPtr (GLuint -> GLint -> GLenum -> GLboolean -> GLsizei -> IO ())
  ->         GLuint -> GLint -> GLenum -> GLboolean -> GLsizei -> IO ()

{-# NOINLINE ptr_glVertexAttribFormatNV #-}
ptr_glVertexAttribFormatNV :: FunPtr (GLuint -> GLint -> GLenum -> GLboolean -> GLsizei -> IO ())
ptr_glVertexAttribFormatNV = unsafePerformIO $ getCommand "glVertexAttribFormatNV"

-- glVertexAttribI1i -----------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glVertexAttrib.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glVertexAttrib.xhtml OpenGL 4.x>
glVertexAttribI1i
  :: GLuint -- ^ @index@.
  -> GLint -- ^ @x@.
  -> IO ()
glVertexAttribI1i = dyn_glVertexAttribI1i ptr_glVertexAttribI1i

foreign import CALLCONV "dynamic" dyn_glVertexAttribI1i
  :: FunPtr (GLuint -> GLint -> IO ())
  ->         GLuint -> GLint -> IO ()

{-# NOINLINE ptr_glVertexAttribI1i #-}
ptr_glVertexAttribI1i :: FunPtr (GLuint -> GLint -> IO ())
ptr_glVertexAttribI1i = unsafePerformIO $ getCommand "glVertexAttribI1i"

-- glVertexAttribI1iEXT --------------------------------------------------------

glVertexAttribI1iEXT
  :: GLuint -- ^ @index@.
  -> GLint -- ^ @x@.
  -> IO ()
glVertexAttribI1iEXT = dyn_glVertexAttribI1iEXT ptr_glVertexAttribI1iEXT

foreign import CALLCONV "dynamic" dyn_glVertexAttribI1iEXT
  :: FunPtr (GLuint -> GLint -> IO ())
  ->         GLuint -> GLint -> IO ()

{-# NOINLINE ptr_glVertexAttribI1iEXT #-}
ptr_glVertexAttribI1iEXT :: FunPtr (GLuint -> GLint -> IO ())
ptr_glVertexAttribI1iEXT = unsafePerformIO $ getCommand "glVertexAttribI1iEXT"

-- glVertexAttribI1iv ----------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glVertexAttrib.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glVertexAttrib.xhtml OpenGL 4.x>
glVertexAttribI1iv
  :: GLuint -- ^ @index@.
  -> Ptr GLint -- ^ @v@ pointing to @1@ elements of type @GLint@.
  -> IO ()
glVertexAttribI1iv = dyn_glVertexAttribI1iv ptr_glVertexAttribI1iv

foreign import CALLCONV "dynamic" dyn_glVertexAttribI1iv
  :: FunPtr (GLuint -> Ptr GLint -> IO ())
  ->         GLuint -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glVertexAttribI1iv #-}
ptr_glVertexAttribI1iv :: FunPtr (GLuint -> Ptr GLint -> IO ())
ptr_glVertexAttribI1iv = unsafePerformIO $ getCommand "glVertexAttribI1iv"

-- glVertexAttribI1ivEXT -------------------------------------------------------

glVertexAttribI1ivEXT
  :: GLuint -- ^ @index@.
  -> Ptr GLint -- ^ @v@ pointing to @1@ elements of type @GLint@.
  -> IO ()
glVertexAttribI1ivEXT = dyn_glVertexAttribI1ivEXT ptr_glVertexAttribI1ivEXT

foreign import CALLCONV "dynamic" dyn_glVertexAttribI1ivEXT
  :: FunPtr (GLuint -> Ptr GLint -> IO ())
  ->         GLuint -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glVertexAttribI1ivEXT #-}
ptr_glVertexAttribI1ivEXT :: FunPtr (GLuint -> Ptr GLint -> IO ())
ptr_glVertexAttribI1ivEXT = unsafePerformIO $ getCommand "glVertexAttribI1ivEXT"

-- glVertexAttribI1ui ----------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glVertexAttrib.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glVertexAttrib.xhtml OpenGL 4.x>
glVertexAttribI1ui
  :: GLuint -- ^ @index@.
  -> GLuint -- ^ @x@.
  -> IO ()
glVertexAttribI1ui = dyn_glVertexAttribI1ui ptr_glVertexAttribI1ui

foreign import CALLCONV "dynamic" dyn_glVertexAttribI1ui
  :: FunPtr (GLuint -> GLuint -> IO ())
  ->         GLuint -> GLuint -> IO ()

{-# NOINLINE ptr_glVertexAttribI1ui #-}
ptr_glVertexAttribI1ui :: FunPtr (GLuint -> GLuint -> IO ())
ptr_glVertexAttribI1ui = unsafePerformIO $ getCommand "glVertexAttribI1ui"

-- glVertexAttribI1uiEXT -------------------------------------------------------

glVertexAttribI1uiEXT
  :: GLuint -- ^ @index@.
  -> GLuint -- ^ @x@.
  -> IO ()
glVertexAttribI1uiEXT = dyn_glVertexAttribI1uiEXT ptr_glVertexAttribI1uiEXT

foreign import CALLCONV "dynamic" dyn_glVertexAttribI1uiEXT
  :: FunPtr (GLuint -> GLuint -> IO ())
  ->         GLuint -> GLuint -> IO ()

{-# NOINLINE ptr_glVertexAttribI1uiEXT #-}
ptr_glVertexAttribI1uiEXT :: FunPtr (GLuint -> GLuint -> IO ())
ptr_glVertexAttribI1uiEXT = unsafePerformIO $ getCommand "glVertexAttribI1uiEXT"

-- glVertexAttribI1uiv ---------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glVertexAttrib.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glVertexAttrib.xhtml OpenGL 4.x>
glVertexAttribI1uiv
  :: GLuint -- ^ @index@.
  -> Ptr GLuint -- ^ @v@ pointing to @1@ elements of type @GLuint@.
  -> IO ()
glVertexAttribI1uiv = dyn_glVertexAttribI1uiv ptr_glVertexAttribI1uiv

foreign import CALLCONV "dynamic" dyn_glVertexAttribI1uiv
  :: FunPtr (GLuint -> Ptr GLuint -> IO ())
  ->         GLuint -> Ptr GLuint -> IO ()

{-# NOINLINE ptr_glVertexAttribI1uiv #-}
ptr_glVertexAttribI1uiv :: FunPtr (GLuint -> Ptr GLuint -> IO ())
ptr_glVertexAttribI1uiv = unsafePerformIO $ getCommand "glVertexAttribI1uiv"

-- glVertexAttribI1uivEXT ------------------------------------------------------

glVertexAttribI1uivEXT
  :: GLuint -- ^ @index@.
  -> Ptr GLuint -- ^ @v@ pointing to @1@ elements of type @GLuint@.
  -> IO ()
glVertexAttribI1uivEXT = dyn_glVertexAttribI1uivEXT ptr_glVertexAttribI1uivEXT

foreign import CALLCONV "dynamic" dyn_glVertexAttribI1uivEXT
  :: FunPtr (GLuint -> Ptr GLuint -> IO ())
  ->         GLuint -> Ptr GLuint -> IO ()

{-# NOINLINE ptr_glVertexAttribI1uivEXT #-}
ptr_glVertexAttribI1uivEXT :: FunPtr (GLuint -> Ptr GLuint -> IO ())
ptr_glVertexAttribI1uivEXT = unsafePerformIO $ getCommand "glVertexAttribI1uivEXT"

-- glVertexAttribI2i -----------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glVertexAttrib.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glVertexAttrib.xhtml OpenGL 4.x>
glVertexAttribI2i
  :: GLuint -- ^ @index@.
  -> GLint -- ^ @x@.
  -> GLint -- ^ @y@.
  -> IO ()
glVertexAttribI2i = dyn_glVertexAttribI2i ptr_glVertexAttribI2i

foreign import CALLCONV "dynamic" dyn_glVertexAttribI2i
  :: FunPtr (GLuint -> GLint -> GLint -> IO ())
  ->         GLuint -> GLint -> GLint -> IO ()

{-# NOINLINE ptr_glVertexAttribI2i #-}
ptr_glVertexAttribI2i :: FunPtr (GLuint -> GLint -> GLint -> IO ())
ptr_glVertexAttribI2i = unsafePerformIO $ getCommand "glVertexAttribI2i"

-- glVertexAttribI2iEXT --------------------------------------------------------

glVertexAttribI2iEXT
  :: GLuint -- ^ @index@.
  -> GLint -- ^ @x@.
  -> GLint -- ^ @y@.
  -> IO ()
glVertexAttribI2iEXT = dyn_glVertexAttribI2iEXT ptr_glVertexAttribI2iEXT

foreign import CALLCONV "dynamic" dyn_glVertexAttribI2iEXT
  :: FunPtr (GLuint -> GLint -> GLint -> IO ())
  ->         GLuint -> GLint -> GLint -> IO ()

{-# NOINLINE ptr_glVertexAttribI2iEXT #-}
ptr_glVertexAttribI2iEXT :: FunPtr (GLuint -> GLint -> GLint -> IO ())
ptr_glVertexAttribI2iEXT = unsafePerformIO $ getCommand "glVertexAttribI2iEXT"

-- glVertexAttribI2iv ----------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glVertexAttrib.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glVertexAttrib.xhtml OpenGL 4.x>
glVertexAttribI2iv
  :: GLuint -- ^ @index@.
  -> Ptr GLint -- ^ @v@ pointing to @2@ elements of type @GLint@.
  -> IO ()
glVertexAttribI2iv = dyn_glVertexAttribI2iv ptr_glVertexAttribI2iv

foreign import CALLCONV "dynamic" dyn_glVertexAttribI2iv
  :: FunPtr (GLuint -> Ptr GLint -> IO ())
  ->         GLuint -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glVertexAttribI2iv #-}
ptr_glVertexAttribI2iv :: FunPtr (GLuint -> Ptr GLint -> IO ())
ptr_glVertexAttribI2iv = unsafePerformIO $ getCommand "glVertexAttribI2iv"

-- glVertexAttribI2ivEXT -------------------------------------------------------

glVertexAttribI2ivEXT
  :: GLuint -- ^ @index@.
  -> Ptr GLint -- ^ @v@ pointing to @2@ elements of type @GLint@.
  -> IO ()
glVertexAttribI2ivEXT = dyn_glVertexAttribI2ivEXT ptr_glVertexAttribI2ivEXT

foreign import CALLCONV "dynamic" dyn_glVertexAttribI2ivEXT
  :: FunPtr (GLuint -> Ptr GLint -> IO ())
  ->         GLuint -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glVertexAttribI2ivEXT #-}
ptr_glVertexAttribI2ivEXT :: FunPtr (GLuint -> Ptr GLint -> IO ())
ptr_glVertexAttribI2ivEXT = unsafePerformIO $ getCommand "glVertexAttribI2ivEXT"

-- glVertexAttribI2ui ----------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glVertexAttrib.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glVertexAttrib.xhtml OpenGL 4.x>
glVertexAttribI2ui
  :: GLuint -- ^ @index@.
  -> GLuint -- ^ @x@.
  -> GLuint -- ^ @y@.
  -> IO ()
glVertexAttribI2ui = dyn_glVertexAttribI2ui ptr_glVertexAttribI2ui

foreign import CALLCONV "dynamic" dyn_glVertexAttribI2ui
  :: FunPtr (GLuint -> GLuint -> GLuint -> IO ())
  ->         GLuint -> GLuint -> GLuint -> IO ()

{-# NOINLINE ptr_glVertexAttribI2ui #-}
ptr_glVertexAttribI2ui :: FunPtr (GLuint -> GLuint -> GLuint -> IO ())
ptr_glVertexAttribI2ui = unsafePerformIO $ getCommand "glVertexAttribI2ui"

-- glVertexAttribI2uiEXT -------------------------------------------------------

glVertexAttribI2uiEXT
  :: GLuint -- ^ @index@.
  -> GLuint -- ^ @x@.
  -> GLuint -- ^ @y@.
  -> IO ()
glVertexAttribI2uiEXT = dyn_glVertexAttribI2uiEXT ptr_glVertexAttribI2uiEXT

foreign import CALLCONV "dynamic" dyn_glVertexAttribI2uiEXT
  :: FunPtr (GLuint -> GLuint -> GLuint -> IO ())
  ->         GLuint -> GLuint -> GLuint -> IO ()

{-# NOINLINE ptr_glVertexAttribI2uiEXT #-}
ptr_glVertexAttribI2uiEXT :: FunPtr (GLuint -> GLuint -> GLuint -> IO ())
ptr_glVertexAttribI2uiEXT = unsafePerformIO $ getCommand "glVertexAttribI2uiEXT"

-- glVertexAttribI2uiv ---------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glVertexAttrib.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glVertexAttrib.xhtml OpenGL 4.x>
glVertexAttribI2uiv
  :: GLuint -- ^ @index@.
  -> Ptr GLuint -- ^ @v@ pointing to @2@ elements of type @GLuint@.
  -> IO ()
glVertexAttribI2uiv = dyn_glVertexAttribI2uiv ptr_glVertexAttribI2uiv

foreign import CALLCONV "dynamic" dyn_glVertexAttribI2uiv
  :: FunPtr (GLuint -> Ptr GLuint -> IO ())
  ->         GLuint -> Ptr GLuint -> IO ()

{-# NOINLINE ptr_glVertexAttribI2uiv #-}
ptr_glVertexAttribI2uiv :: FunPtr (GLuint -> Ptr GLuint -> IO ())
ptr_glVertexAttribI2uiv = unsafePerformIO $ getCommand "glVertexAttribI2uiv"

-- glVertexAttribI2uivEXT ------------------------------------------------------

glVertexAttribI2uivEXT
  :: GLuint -- ^ @index@.
  -> Ptr GLuint -- ^ @v@ pointing to @2@ elements of type @GLuint@.
  -> IO ()
glVertexAttribI2uivEXT = dyn_glVertexAttribI2uivEXT ptr_glVertexAttribI2uivEXT

foreign import CALLCONV "dynamic" dyn_glVertexAttribI2uivEXT
  :: FunPtr (GLuint -> Ptr GLuint -> IO ())
  ->         GLuint -> Ptr GLuint -> IO ()

{-# NOINLINE ptr_glVertexAttribI2uivEXT #-}
ptr_glVertexAttribI2uivEXT :: FunPtr (GLuint -> Ptr GLuint -> IO ())
ptr_glVertexAttribI2uivEXT = unsafePerformIO $ getCommand "glVertexAttribI2uivEXT"

-- glVertexAttribI3i -----------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glVertexAttrib.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glVertexAttrib.xhtml OpenGL 4.x>
glVertexAttribI3i
  :: GLuint -- ^ @index@.
  -> GLint -- ^ @x@.
  -> GLint -- ^ @y@.
  -> GLint -- ^ @z@.
  -> IO ()
glVertexAttribI3i = dyn_glVertexAttribI3i ptr_glVertexAttribI3i

foreign import CALLCONV "dynamic" dyn_glVertexAttribI3i
  :: FunPtr (GLuint -> GLint -> GLint -> GLint -> IO ())
  ->         GLuint -> GLint -> GLint -> GLint -> IO ()

{-# NOINLINE ptr_glVertexAttribI3i #-}
ptr_glVertexAttribI3i :: FunPtr (GLuint -> GLint -> GLint -> GLint -> IO ())
ptr_glVertexAttribI3i = unsafePerformIO $ getCommand "glVertexAttribI3i"

-- glVertexAttribI3iEXT --------------------------------------------------------

glVertexAttribI3iEXT
  :: GLuint -- ^ @index@.
  -> GLint -- ^ @x@.
  -> GLint -- ^ @y@.
  -> GLint -- ^ @z@.
  -> IO ()
glVertexAttribI3iEXT = dyn_glVertexAttribI3iEXT ptr_glVertexAttribI3iEXT

foreign import CALLCONV "dynamic" dyn_glVertexAttribI3iEXT
  :: FunPtr (GLuint -> GLint -> GLint -> GLint -> IO ())
  ->         GLuint -> GLint -> GLint -> GLint -> IO ()

{-# NOINLINE ptr_glVertexAttribI3iEXT #-}
ptr_glVertexAttribI3iEXT :: FunPtr (GLuint -> GLint -> GLint -> GLint -> IO ())
ptr_glVertexAttribI3iEXT = unsafePerformIO $ getCommand "glVertexAttribI3iEXT"

-- glVertexAttribI3iv ----------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glVertexAttrib.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glVertexAttrib.xhtml OpenGL 4.x>
glVertexAttribI3iv
  :: GLuint -- ^ @index@.
  -> Ptr GLint -- ^ @v@ pointing to @3@ elements of type @GLint@.
  -> IO ()
glVertexAttribI3iv = dyn_glVertexAttribI3iv ptr_glVertexAttribI3iv

foreign import CALLCONV "dynamic" dyn_glVertexAttribI3iv
  :: FunPtr (GLuint -> Ptr GLint -> IO ())
  ->         GLuint -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glVertexAttribI3iv #-}
ptr_glVertexAttribI3iv :: FunPtr (GLuint -> Ptr GLint -> IO ())
ptr_glVertexAttribI3iv = unsafePerformIO $ getCommand "glVertexAttribI3iv"

-- glVertexAttribI3ivEXT -------------------------------------------------------

glVertexAttribI3ivEXT
  :: GLuint -- ^ @index@.
  -> Ptr GLint -- ^ @v@ pointing to @3@ elements of type @GLint@.
  -> IO ()
glVertexAttribI3ivEXT = dyn_glVertexAttribI3ivEXT ptr_glVertexAttribI3ivEXT

foreign import CALLCONV "dynamic" dyn_glVertexAttribI3ivEXT
  :: FunPtr (GLuint -> Ptr GLint -> IO ())
  ->         GLuint -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glVertexAttribI3ivEXT #-}
ptr_glVertexAttribI3ivEXT :: FunPtr (GLuint -> Ptr GLint -> IO ())
ptr_glVertexAttribI3ivEXT = unsafePerformIO $ getCommand "glVertexAttribI3ivEXT"

-- glVertexAttribI3ui ----------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glVertexAttrib.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glVertexAttrib.xhtml OpenGL 4.x>
glVertexAttribI3ui
  :: GLuint -- ^ @index@.
  -> GLuint -- ^ @x@.
  -> GLuint -- ^ @y@.
  -> GLuint -- ^ @z@.
  -> IO ()
glVertexAttribI3ui = dyn_glVertexAttribI3ui ptr_glVertexAttribI3ui

foreign import CALLCONV "dynamic" dyn_glVertexAttribI3ui
  :: FunPtr (GLuint -> GLuint -> GLuint -> GLuint -> IO ())
  ->         GLuint -> GLuint -> GLuint -> GLuint -> IO ()

{-# NOINLINE ptr_glVertexAttribI3ui #-}
ptr_glVertexAttribI3ui :: FunPtr (GLuint -> GLuint -> GLuint -> GLuint -> IO ())
ptr_glVertexAttribI3ui = unsafePerformIO $ getCommand "glVertexAttribI3ui"

-- glVertexAttribI3uiEXT -------------------------------------------------------

glVertexAttribI3uiEXT
  :: GLuint -- ^ @index@.
  -> GLuint -- ^ @x@.
  -> GLuint -- ^ @y@.
  -> GLuint -- ^ @z@.
  -> IO ()
glVertexAttribI3uiEXT = dyn_glVertexAttribI3uiEXT ptr_glVertexAttribI3uiEXT

foreign import CALLCONV "dynamic" dyn_glVertexAttribI3uiEXT
  :: FunPtr (GLuint -> GLuint -> GLuint -> GLuint -> IO ())
  ->         GLuint -> GLuint -> GLuint -> GLuint -> IO ()

{-# NOINLINE ptr_glVertexAttribI3uiEXT #-}
ptr_glVertexAttribI3uiEXT :: FunPtr (GLuint -> GLuint -> GLuint -> GLuint -> IO ())
ptr_glVertexAttribI3uiEXT = unsafePerformIO $ getCommand "glVertexAttribI3uiEXT"

-- glVertexAttribI3uiv ---------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glVertexAttrib.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glVertexAttrib.xhtml OpenGL 4.x>
glVertexAttribI3uiv
  :: GLuint -- ^ @index@.
  -> Ptr GLuint -- ^ @v@ pointing to @3@ elements of type @GLuint@.
  -> IO ()
glVertexAttribI3uiv = dyn_glVertexAttribI3uiv ptr_glVertexAttribI3uiv

foreign import CALLCONV "dynamic" dyn_glVertexAttribI3uiv
  :: FunPtr (GLuint -> Ptr GLuint -> IO ())
  ->         GLuint -> Ptr GLuint -> IO ()

{-# NOINLINE ptr_glVertexAttribI3uiv #-}
ptr_glVertexAttribI3uiv :: FunPtr (GLuint -> Ptr GLuint -> IO ())
ptr_glVertexAttribI3uiv = unsafePerformIO $ getCommand "glVertexAttribI3uiv"

-- glVertexAttribI3uivEXT ------------------------------------------------------

glVertexAttribI3uivEXT
  :: GLuint -- ^ @index@.
  -> Ptr GLuint -- ^ @v@ pointing to @3@ elements of type @GLuint@.
  -> IO ()
glVertexAttribI3uivEXT = dyn_glVertexAttribI3uivEXT ptr_glVertexAttribI3uivEXT

foreign import CALLCONV "dynamic" dyn_glVertexAttribI3uivEXT
  :: FunPtr (GLuint -> Ptr GLuint -> IO ())
  ->         GLuint -> Ptr GLuint -> IO ()

{-# NOINLINE ptr_glVertexAttribI3uivEXT #-}
ptr_glVertexAttribI3uivEXT :: FunPtr (GLuint -> Ptr GLuint -> IO ())
ptr_glVertexAttribI3uivEXT = unsafePerformIO $ getCommand "glVertexAttribI3uivEXT"

-- glVertexAttribI4bv ----------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glVertexAttrib.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glVertexAttrib.xhtml OpenGL 4.x>
glVertexAttribI4bv
  :: GLuint -- ^ @index@.
  -> Ptr GLbyte -- ^ @v@ pointing to @4@ elements of type @GLbyte@.
  -> IO ()
glVertexAttribI4bv = dyn_glVertexAttribI4bv ptr_glVertexAttribI4bv

foreign import CALLCONV "dynamic" dyn_glVertexAttribI4bv
  :: FunPtr (GLuint -> Ptr GLbyte -> IO ())
  ->         GLuint -> Ptr GLbyte -> IO ()

{-# NOINLINE ptr_glVertexAttribI4bv #-}
ptr_glVertexAttribI4bv :: FunPtr (GLuint -> Ptr GLbyte -> IO ())
ptr_glVertexAttribI4bv = unsafePerformIO $ getCommand "glVertexAttribI4bv"

-- glVertexAttribI4bvEXT -------------------------------------------------------

glVertexAttribI4bvEXT
  :: GLuint -- ^ @index@.
  -> Ptr GLbyte -- ^ @v@ pointing to @4@ elements of type @GLbyte@.
  -> IO ()
glVertexAttribI4bvEXT = dyn_glVertexAttribI4bvEXT ptr_glVertexAttribI4bvEXT

foreign import CALLCONV "dynamic" dyn_glVertexAttribI4bvEXT
  :: FunPtr (GLuint -> Ptr GLbyte -> IO ())
  ->         GLuint -> Ptr GLbyte -> IO ()

{-# NOINLINE ptr_glVertexAttribI4bvEXT #-}
ptr_glVertexAttribI4bvEXT :: FunPtr (GLuint -> Ptr GLbyte -> IO ())
ptr_glVertexAttribI4bvEXT = unsafePerformIO $ getCommand "glVertexAttribI4bvEXT"

-- glVertexAttribI4i -----------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glVertexAttrib.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glVertexAttrib.xhtml OpenGL 4.x>
glVertexAttribI4i
  :: GLuint -- ^ @index@.
  -> GLint -- ^ @x@.
  -> GLint -- ^ @y@.
  -> GLint -- ^ @z@.
  -> GLint -- ^ @w@.
  -> IO ()
glVertexAttribI4i = dyn_glVertexAttribI4i ptr_glVertexAttribI4i

foreign import CALLCONV "dynamic" dyn_glVertexAttribI4i
  :: FunPtr (GLuint -> GLint -> GLint -> GLint -> GLint -> IO ())
  ->         GLuint -> GLint -> GLint -> GLint -> GLint -> IO ()

{-# NOINLINE ptr_glVertexAttribI4i #-}
ptr_glVertexAttribI4i :: FunPtr (GLuint -> GLint -> GLint -> GLint -> GLint -> IO ())
ptr_glVertexAttribI4i = unsafePerformIO $ getCommand "glVertexAttribI4i"

-- glVertexAttribI4iEXT --------------------------------------------------------

glVertexAttribI4iEXT
  :: GLuint -- ^ @index@.
  -> GLint -- ^ @x@.
  -> GLint -- ^ @y@.
  -> GLint -- ^ @z@.
  -> GLint -- ^ @w@.
  -> IO ()
glVertexAttribI4iEXT = dyn_glVertexAttribI4iEXT ptr_glVertexAttribI4iEXT

foreign import CALLCONV "dynamic" dyn_glVertexAttribI4iEXT
  :: FunPtr (GLuint -> GLint -> GLint -> GLint -> GLint -> IO ())
  ->         GLuint -> GLint -> GLint -> GLint -> GLint -> IO ()

{-# NOINLINE ptr_glVertexAttribI4iEXT #-}
ptr_glVertexAttribI4iEXT :: FunPtr (GLuint -> GLint -> GLint -> GLint -> GLint -> IO ())
ptr_glVertexAttribI4iEXT = unsafePerformIO $ getCommand "glVertexAttribI4iEXT"

-- glVertexAttribI4iv ----------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glVertexAttrib.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glVertexAttrib.xhtml OpenGL 4.x>
glVertexAttribI4iv
  :: GLuint -- ^ @index@.
  -> Ptr GLint -- ^ @v@ pointing to @4@ elements of type @GLint@.
  -> IO ()
glVertexAttribI4iv = dyn_glVertexAttribI4iv ptr_glVertexAttribI4iv

foreign import CALLCONV "dynamic" dyn_glVertexAttribI4iv
  :: FunPtr (GLuint -> Ptr GLint -> IO ())
  ->         GLuint -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glVertexAttribI4iv #-}
ptr_glVertexAttribI4iv :: FunPtr (GLuint -> Ptr GLint -> IO ())
ptr_glVertexAttribI4iv = unsafePerformIO $ getCommand "glVertexAttribI4iv"

-- glVertexAttribI4ivEXT -------------------------------------------------------

glVertexAttribI4ivEXT
  :: GLuint -- ^ @index@.
  -> Ptr GLint -- ^ @v@ pointing to @4@ elements of type @GLint@.
  -> IO ()
glVertexAttribI4ivEXT = dyn_glVertexAttribI4ivEXT ptr_glVertexAttribI4ivEXT

foreign import CALLCONV "dynamic" dyn_glVertexAttribI4ivEXT
  :: FunPtr (GLuint -> Ptr GLint -> IO ())
  ->         GLuint -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glVertexAttribI4ivEXT #-}
ptr_glVertexAttribI4ivEXT :: FunPtr (GLuint -> Ptr GLint -> IO ())
ptr_glVertexAttribI4ivEXT = unsafePerformIO $ getCommand "glVertexAttribI4ivEXT"

-- glVertexAttribI4sv ----------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glVertexAttrib.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glVertexAttrib.xhtml OpenGL 4.x>
glVertexAttribI4sv
  :: GLuint -- ^ @index@.
  -> Ptr GLshort -- ^ @v@ pointing to @4@ elements of type @GLshort@.
  -> IO ()
glVertexAttribI4sv = dyn_glVertexAttribI4sv ptr_glVertexAttribI4sv

foreign import CALLCONV "dynamic" dyn_glVertexAttribI4sv
  :: FunPtr (GLuint -> Ptr GLshort -> IO ())
  ->         GLuint -> Ptr GLshort -> IO ()

{-# NOINLINE ptr_glVertexAttribI4sv #-}
ptr_glVertexAttribI4sv :: FunPtr (GLuint -> Ptr GLshort -> IO ())
ptr_glVertexAttribI4sv = unsafePerformIO $ getCommand "glVertexAttribI4sv"

-- glVertexAttribI4svEXT -------------------------------------------------------

glVertexAttribI4svEXT
  :: GLuint -- ^ @index@.
  -> Ptr GLshort -- ^ @v@ pointing to @4@ elements of type @GLshort@.
  -> IO ()
glVertexAttribI4svEXT = dyn_glVertexAttribI4svEXT ptr_glVertexAttribI4svEXT

foreign import CALLCONV "dynamic" dyn_glVertexAttribI4svEXT
  :: FunPtr (GLuint -> Ptr GLshort -> IO ())
  ->         GLuint -> Ptr GLshort -> IO ()

{-# NOINLINE ptr_glVertexAttribI4svEXT #-}
ptr_glVertexAttribI4svEXT :: FunPtr (GLuint -> Ptr GLshort -> IO ())
ptr_glVertexAttribI4svEXT = unsafePerformIO $ getCommand "glVertexAttribI4svEXT"

-- glVertexAttribI4ubv ---------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glVertexAttrib.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glVertexAttrib.xhtml OpenGL 4.x>
glVertexAttribI4ubv
  :: GLuint -- ^ @index@.
  -> Ptr GLubyte -- ^ @v@ pointing to @4@ elements of type @GLubyte@.
  -> IO ()
glVertexAttribI4ubv = dyn_glVertexAttribI4ubv ptr_glVertexAttribI4ubv

foreign import CALLCONV "dynamic" dyn_glVertexAttribI4ubv
  :: FunPtr (GLuint -> Ptr GLubyte -> IO ())
  ->         GLuint -> Ptr GLubyte -> IO ()

{-# NOINLINE ptr_glVertexAttribI4ubv #-}
ptr_glVertexAttribI4ubv :: FunPtr (GLuint -> Ptr GLubyte -> IO ())
ptr_glVertexAttribI4ubv = unsafePerformIO $ getCommand "glVertexAttribI4ubv"

-- glVertexAttribI4ubvEXT ------------------------------------------------------

glVertexAttribI4ubvEXT
  :: GLuint -- ^ @index@.
  -> Ptr GLubyte -- ^ @v@ pointing to @4@ elements of type @GLubyte@.
  -> IO ()
glVertexAttribI4ubvEXT = dyn_glVertexAttribI4ubvEXT ptr_glVertexAttribI4ubvEXT

foreign import CALLCONV "dynamic" dyn_glVertexAttribI4ubvEXT
  :: FunPtr (GLuint -> Ptr GLubyte -> IO ())
  ->         GLuint -> Ptr GLubyte -> IO ()

{-# NOINLINE ptr_glVertexAttribI4ubvEXT #-}
ptr_glVertexAttribI4ubvEXT :: FunPtr (GLuint -> Ptr GLubyte -> IO ())
ptr_glVertexAttribI4ubvEXT = unsafePerformIO $ getCommand "glVertexAttribI4ubvEXT"

-- glVertexAttribI4ui ----------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glVertexAttrib.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glVertexAttrib.xhtml OpenGL 4.x>
glVertexAttribI4ui
  :: GLuint -- ^ @index@.
  -> GLuint -- ^ @x@.
  -> GLuint -- ^ @y@.
  -> GLuint -- ^ @z@.
  -> GLuint -- ^ @w@.
  -> IO ()
glVertexAttribI4ui = dyn_glVertexAttribI4ui ptr_glVertexAttribI4ui

foreign import CALLCONV "dynamic" dyn_glVertexAttribI4ui
  :: FunPtr (GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> IO ())
  ->         GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> IO ()

{-# NOINLINE ptr_glVertexAttribI4ui #-}
ptr_glVertexAttribI4ui :: FunPtr (GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> IO ())
ptr_glVertexAttribI4ui = unsafePerformIO $ getCommand "glVertexAttribI4ui"

-- glVertexAttribI4uiEXT -------------------------------------------------------

glVertexAttribI4uiEXT
  :: GLuint -- ^ @index@.
  -> GLuint -- ^ @x@.
  -> GLuint -- ^ @y@.
  -> GLuint -- ^ @z@.
  -> GLuint -- ^ @w@.
  -> IO ()
glVertexAttribI4uiEXT = dyn_glVertexAttribI4uiEXT ptr_glVertexAttribI4uiEXT

foreign import CALLCONV "dynamic" dyn_glVertexAttribI4uiEXT
  :: FunPtr (GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> IO ())
  ->         GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> IO ()

{-# NOINLINE ptr_glVertexAttribI4uiEXT #-}
ptr_glVertexAttribI4uiEXT :: FunPtr (GLuint -> GLuint -> GLuint -> GLuint -> GLuint -> IO ())
ptr_glVertexAttribI4uiEXT = unsafePerformIO $ getCommand "glVertexAttribI4uiEXT"

-- glVertexAttribI4uiv ---------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glVertexAttrib.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glVertexAttrib.xhtml OpenGL 4.x>
glVertexAttribI4uiv
  :: GLuint -- ^ @index@.
  -> Ptr GLuint -- ^ @v@ pointing to @4@ elements of type @GLuint@.
  -> IO ()
glVertexAttribI4uiv = dyn_glVertexAttribI4uiv ptr_glVertexAttribI4uiv

foreign import CALLCONV "dynamic" dyn_glVertexAttribI4uiv
  :: FunPtr (GLuint -> Ptr GLuint -> IO ())
  ->         GLuint -> Ptr GLuint -> IO ()

{-# NOINLINE ptr_glVertexAttribI4uiv #-}
ptr_glVertexAttribI4uiv :: FunPtr (GLuint -> Ptr GLuint -> IO ())
ptr_glVertexAttribI4uiv = unsafePerformIO $ getCommand "glVertexAttribI4uiv"

-- glVertexAttribI4uivEXT ------------------------------------------------------

glVertexAttribI4uivEXT
  :: GLuint -- ^ @index@.
  -> Ptr GLuint -- ^ @v@ pointing to @4@ elements of type @GLuint@.
  -> IO ()
glVertexAttribI4uivEXT = dyn_glVertexAttribI4uivEXT ptr_glVertexAttribI4uivEXT

foreign import CALLCONV "dynamic" dyn_glVertexAttribI4uivEXT
  :: FunPtr (GLuint -> Ptr GLuint -> IO ())
  ->         GLuint -> Ptr GLuint -> IO ()

{-# NOINLINE ptr_glVertexAttribI4uivEXT #-}
ptr_glVertexAttribI4uivEXT :: FunPtr (GLuint -> Ptr GLuint -> IO ())
ptr_glVertexAttribI4uivEXT = unsafePerformIO $ getCommand "glVertexAttribI4uivEXT"

-- glVertexAttribI4usv ---------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glVertexAttrib.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glVertexAttrib.xhtml OpenGL 4.x>
glVertexAttribI4usv
  :: GLuint -- ^ @index@.
  -> Ptr GLushort -- ^ @v@ pointing to @4@ elements of type @GLushort@.
  -> IO ()
glVertexAttribI4usv = dyn_glVertexAttribI4usv ptr_glVertexAttribI4usv

foreign import CALLCONV "dynamic" dyn_glVertexAttribI4usv
  :: FunPtr (GLuint -> Ptr GLushort -> IO ())
  ->         GLuint -> Ptr GLushort -> IO ()

{-# NOINLINE ptr_glVertexAttribI4usv #-}
ptr_glVertexAttribI4usv :: FunPtr (GLuint -> Ptr GLushort -> IO ())
ptr_glVertexAttribI4usv = unsafePerformIO $ getCommand "glVertexAttribI4usv"

-- glVertexAttribI4usvEXT ------------------------------------------------------

glVertexAttribI4usvEXT
  :: GLuint -- ^ @index@.
  -> Ptr GLushort -- ^ @v@ pointing to @4@ elements of type @GLushort@.
  -> IO ()
glVertexAttribI4usvEXT = dyn_glVertexAttribI4usvEXT ptr_glVertexAttribI4usvEXT

foreign import CALLCONV "dynamic" dyn_glVertexAttribI4usvEXT
  :: FunPtr (GLuint -> Ptr GLushort -> IO ())
  ->         GLuint -> Ptr GLushort -> IO ()

{-# NOINLINE ptr_glVertexAttribI4usvEXT #-}
ptr_glVertexAttribI4usvEXT :: FunPtr (GLuint -> Ptr GLushort -> IO ())
ptr_glVertexAttribI4usvEXT = unsafePerformIO $ getCommand "glVertexAttribI4usvEXT"

-- glVertexAttribIFormat -------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glVertexAttribFormat.xhtml OpenGL 4.x>
glVertexAttribIFormat
  :: GLuint -- ^ @attribindex@.
  -> GLint -- ^ @size@.
  -> GLenum -- ^ @type@.
  -> GLuint -- ^ @relativeoffset@.
  -> IO ()
glVertexAttribIFormat = dyn_glVertexAttribIFormat ptr_glVertexAttribIFormat

foreign import CALLCONV "dynamic" dyn_glVertexAttribIFormat
  :: FunPtr (GLuint -> GLint -> GLenum -> GLuint -> IO ())
  ->         GLuint -> GLint -> GLenum -> GLuint -> IO ()

{-# NOINLINE ptr_glVertexAttribIFormat #-}
ptr_glVertexAttribIFormat :: FunPtr (GLuint -> GLint -> GLenum -> GLuint -> IO ())
ptr_glVertexAttribIFormat = unsafePerformIO $ getCommand "glVertexAttribIFormat"

-- glVertexAttribIFormatNV -----------------------------------------------------

glVertexAttribIFormatNV
  :: GLuint -- ^ @index@.
  -> GLint -- ^ @size@.
  -> GLenum -- ^ @type@.
  -> GLsizei -- ^ @stride@.
  -> IO ()
glVertexAttribIFormatNV = dyn_glVertexAttribIFormatNV ptr_glVertexAttribIFormatNV

foreign import CALLCONV "dynamic" dyn_glVertexAttribIFormatNV
  :: FunPtr (GLuint -> GLint -> GLenum -> GLsizei -> IO ())
  ->         GLuint -> GLint -> GLenum -> GLsizei -> IO ()

{-# NOINLINE ptr_glVertexAttribIFormatNV #-}
ptr_glVertexAttribIFormatNV :: FunPtr (GLuint -> GLint -> GLenum -> GLsizei -> IO ())
ptr_glVertexAttribIFormatNV = unsafePerformIO $ getCommand "glVertexAttribIFormatNV"

-- glVertexAttribIPointer ------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glVertexAttribPointer.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glVertexAttribPointer.xhtml OpenGL 4.x>
glVertexAttribIPointer
  :: GLuint -- ^ @index@.
  -> GLint -- ^ @size@.
  -> GLenum -- ^ @type@ of type @VertexAttribEnum@.
  -> GLsizei -- ^ @stride@.
  -> Ptr a -- ^ @pointer@ pointing to @COMPSIZE(size,type,stride)@ elements of type @a@.
  -> IO ()
glVertexAttribIPointer = dyn_glVertexAttribIPointer ptr_glVertexAttribIPointer

foreign import CALLCONV "dynamic" dyn_glVertexAttribIPointer
  :: FunPtr (GLuint -> GLint -> GLenum -> GLsizei -> Ptr a -> IO ())
  ->         GLuint -> GLint -> GLenum -> GLsizei -> Ptr a -> IO ()

{-# NOINLINE ptr_glVertexAttribIPointer #-}
ptr_glVertexAttribIPointer :: FunPtr (GLuint -> GLint -> GLenum -> GLsizei -> Ptr a -> IO ())
ptr_glVertexAttribIPointer = unsafePerformIO $ getCommand "glVertexAttribIPointer"

-- glVertexAttribIPointerEXT ---------------------------------------------------

glVertexAttribIPointerEXT
  :: GLuint -- ^ @index@.
  -> GLint -- ^ @size@.
  -> GLenum -- ^ @type@ of type @VertexAttribEnum@.
  -> GLsizei -- ^ @stride@.
  -> Ptr a -- ^ @pointer@ pointing to @COMPSIZE(size,type,stride)@ elements of type @a@.
  -> IO ()
glVertexAttribIPointerEXT = dyn_glVertexAttribIPointerEXT ptr_glVertexAttribIPointerEXT

foreign import CALLCONV "dynamic" dyn_glVertexAttribIPointerEXT
  :: FunPtr (GLuint -> GLint -> GLenum -> GLsizei -> Ptr a -> IO ())
  ->         GLuint -> GLint -> GLenum -> GLsizei -> Ptr a -> IO ()

{-# NOINLINE ptr_glVertexAttribIPointerEXT #-}
ptr_glVertexAttribIPointerEXT :: FunPtr (GLuint -> GLint -> GLenum -> GLsizei -> Ptr a -> IO ())
ptr_glVertexAttribIPointerEXT = unsafePerformIO $ getCommand "glVertexAttribIPointerEXT"

-- glVertexAttribL1d -----------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glVertexAttrib.xhtml OpenGL 4.x>
glVertexAttribL1d
  :: GLuint -- ^ @index@.
  -> GLdouble -- ^ @x@.
  -> IO ()
glVertexAttribL1d = dyn_glVertexAttribL1d ptr_glVertexAttribL1d

foreign import CALLCONV "dynamic" dyn_glVertexAttribL1d
  :: FunPtr (GLuint -> GLdouble -> IO ())
  ->         GLuint -> GLdouble -> IO ()

{-# NOINLINE ptr_glVertexAttribL1d #-}
ptr_glVertexAttribL1d :: FunPtr (GLuint -> GLdouble -> IO ())
ptr_glVertexAttribL1d = unsafePerformIO $ getCommand "glVertexAttribL1d"

-- glVertexAttribL1dEXT --------------------------------------------------------

glVertexAttribL1dEXT
  :: GLuint -- ^ @index@.
  -> GLdouble -- ^ @x@.
  -> IO ()
glVertexAttribL1dEXT = dyn_glVertexAttribL1dEXT ptr_glVertexAttribL1dEXT

foreign import CALLCONV "dynamic" dyn_glVertexAttribL1dEXT
  :: FunPtr (GLuint -> GLdouble -> IO ())
  ->         GLuint -> GLdouble -> IO ()

{-# NOINLINE ptr_glVertexAttribL1dEXT #-}
ptr_glVertexAttribL1dEXT :: FunPtr (GLuint -> GLdouble -> IO ())
ptr_glVertexAttribL1dEXT = unsafePerformIO $ getCommand "glVertexAttribL1dEXT"

-- glVertexAttribL1dv ----------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glVertexAttrib.xhtml OpenGL 4.x>
glVertexAttribL1dv
  :: GLuint -- ^ @index@.
  -> Ptr GLdouble -- ^ @v@ pointing to @1@ elements of type @GLdouble@.
  -> IO ()
glVertexAttribL1dv = dyn_glVertexAttribL1dv ptr_glVertexAttribL1dv

foreign import CALLCONV "dynamic" dyn_glVertexAttribL1dv
  :: FunPtr (GLuint -> Ptr GLdouble -> IO ())
  ->         GLuint -> Ptr GLdouble -> IO ()

{-# NOINLINE ptr_glVertexAttribL1dv #-}
ptr_glVertexAttribL1dv :: FunPtr (GLuint -> Ptr GLdouble -> IO ())
ptr_glVertexAttribL1dv = unsafePerformIO $ getCommand "glVertexAttribL1dv"

-- glVertexAttribL1dvEXT -------------------------------------------------------

glVertexAttribL1dvEXT
  :: GLuint -- ^ @index@.
  -> Ptr GLdouble -- ^ @v@ pointing to @1@ elements of type @GLdouble@.
  -> IO ()
glVertexAttribL1dvEXT = dyn_glVertexAttribL1dvEXT ptr_glVertexAttribL1dvEXT

foreign import CALLCONV "dynamic" dyn_glVertexAttribL1dvEXT
  :: FunPtr (GLuint -> Ptr GLdouble -> IO ())
  ->         GLuint -> Ptr GLdouble -> IO ()

{-# NOINLINE ptr_glVertexAttribL1dvEXT #-}
ptr_glVertexAttribL1dvEXT :: FunPtr (GLuint -> Ptr GLdouble -> IO ())
ptr_glVertexAttribL1dvEXT = unsafePerformIO $ getCommand "glVertexAttribL1dvEXT"

-- glVertexAttribL1i64NV -------------------------------------------------------

glVertexAttribL1i64NV
  :: GLuint -- ^ @index@.
  -> GLint64EXT -- ^ @x@.
  -> IO ()
glVertexAttribL1i64NV = dyn_glVertexAttribL1i64NV ptr_glVertexAttribL1i64NV

foreign import CALLCONV "dynamic" dyn_glVertexAttribL1i64NV
  :: FunPtr (GLuint -> GLint64EXT -> IO ())
  ->         GLuint -> GLint64EXT -> IO ()

{-# NOINLINE ptr_glVertexAttribL1i64NV #-}
ptr_glVertexAttribL1i64NV :: FunPtr (GLuint -> GLint64EXT -> IO ())
ptr_glVertexAttribL1i64NV = unsafePerformIO $ getCommand "glVertexAttribL1i64NV"

-- glVertexAttribL1i64vNV ------------------------------------------------------

glVertexAttribL1i64vNV
  :: GLuint -- ^ @index@.
  -> Ptr GLint64EXT -- ^ @v@ pointing to @1@ elements of type @GLint64EXT@.
  -> IO ()
glVertexAttribL1i64vNV = dyn_glVertexAttribL1i64vNV ptr_glVertexAttribL1i64vNV

foreign import CALLCONV "dynamic" dyn_glVertexAttribL1i64vNV
  :: FunPtr (GLuint -> Ptr GLint64EXT -> IO ())
  ->         GLuint -> Ptr GLint64EXT -> IO ()

{-# NOINLINE ptr_glVertexAttribL1i64vNV #-}
ptr_glVertexAttribL1i64vNV :: FunPtr (GLuint -> Ptr GLint64EXT -> IO ())
ptr_glVertexAttribL1i64vNV = unsafePerformIO $ getCommand "glVertexAttribL1i64vNV"

-- glVertexAttribL1ui64ARB -----------------------------------------------------

glVertexAttribL1ui64ARB
  :: GLuint -- ^ @index@.
  -> GLuint64EXT -- ^ @x@.
  -> IO ()
glVertexAttribL1ui64ARB = dyn_glVertexAttribL1ui64ARB ptr_glVertexAttribL1ui64ARB

foreign import CALLCONV "dynamic" dyn_glVertexAttribL1ui64ARB
  :: FunPtr (GLuint -> GLuint64EXT -> IO ())
  ->         GLuint -> GLuint64EXT -> IO ()

{-# NOINLINE ptr_glVertexAttribL1ui64ARB #-}
ptr_glVertexAttribL1ui64ARB :: FunPtr (GLuint -> GLuint64EXT -> IO ())
ptr_glVertexAttribL1ui64ARB = unsafePerformIO $ getCommand "glVertexAttribL1ui64ARB"

-- glVertexAttribL1ui64NV ------------------------------------------------------

glVertexAttribL1ui64NV
  :: GLuint -- ^ @index@.
  -> GLuint64EXT -- ^ @x@.
  -> IO ()
glVertexAttribL1ui64NV = dyn_glVertexAttribL1ui64NV ptr_glVertexAttribL1ui64NV

foreign import CALLCONV "dynamic" dyn_glVertexAttribL1ui64NV
  :: FunPtr (GLuint -> GLuint64EXT -> IO ())
  ->         GLuint -> GLuint64EXT -> IO ()

{-# NOINLINE ptr_glVertexAttribL1ui64NV #-}
ptr_glVertexAttribL1ui64NV :: FunPtr (GLuint -> GLuint64EXT -> IO ())
ptr_glVertexAttribL1ui64NV = unsafePerformIO $ getCommand "glVertexAttribL1ui64NV"

-- glVertexAttribL1ui64vARB ----------------------------------------------------

glVertexAttribL1ui64vARB
  :: GLuint -- ^ @index@.
  -> Ptr GLuint64EXT -- ^ @v@.
  -> IO ()
glVertexAttribL1ui64vARB = dyn_glVertexAttribL1ui64vARB ptr_glVertexAttribL1ui64vARB

foreign import CALLCONV "dynamic" dyn_glVertexAttribL1ui64vARB
  :: FunPtr (GLuint -> Ptr GLuint64EXT -> IO ())
  ->         GLuint -> Ptr GLuint64EXT -> IO ()

{-# NOINLINE ptr_glVertexAttribL1ui64vARB #-}
ptr_glVertexAttribL1ui64vARB :: FunPtr (GLuint -> Ptr GLuint64EXT -> IO ())
ptr_glVertexAttribL1ui64vARB = unsafePerformIO $ getCommand "glVertexAttribL1ui64vARB"

-- glVertexAttribL1ui64vNV -----------------------------------------------------

glVertexAttribL1ui64vNV
  :: GLuint -- ^ @index@.
  -> Ptr GLuint64EXT -- ^ @v@ pointing to @1@ elements of type @GLuint64EXT@.
  -> IO ()
glVertexAttribL1ui64vNV = dyn_glVertexAttribL1ui64vNV ptr_glVertexAttribL1ui64vNV

foreign import CALLCONV "dynamic" dyn_glVertexAttribL1ui64vNV
  :: FunPtr (GLuint -> Ptr GLuint64EXT -> IO ())
  ->         GLuint -> Ptr GLuint64EXT -> IO ()

{-# NOINLINE ptr_glVertexAttribL1ui64vNV #-}
ptr_glVertexAttribL1ui64vNV :: FunPtr (GLuint -> Ptr GLuint64EXT -> IO ())
ptr_glVertexAttribL1ui64vNV = unsafePerformIO $ getCommand "glVertexAttribL1ui64vNV"

-- glVertexAttribL2d -----------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glVertexAttrib.xhtml OpenGL 4.x>
glVertexAttribL2d
  :: GLuint -- ^ @index@.
  -> GLdouble -- ^ @x@.
  -> GLdouble -- ^ @y@.
  -> IO ()
glVertexAttribL2d = dyn_glVertexAttribL2d ptr_glVertexAttribL2d

foreign import CALLCONV "dynamic" dyn_glVertexAttribL2d
  :: FunPtr (GLuint -> GLdouble -> GLdouble -> IO ())
  ->         GLuint -> GLdouble -> GLdouble -> IO ()

{-# NOINLINE ptr_glVertexAttribL2d #-}
ptr_glVertexAttribL2d :: FunPtr (GLuint -> GLdouble -> GLdouble -> IO ())
ptr_glVertexAttribL2d = unsafePerformIO $ getCommand "glVertexAttribL2d"

-- glVertexAttribL2dEXT --------------------------------------------------------

glVertexAttribL2dEXT
  :: GLuint -- ^ @index@.
  -> GLdouble -- ^ @x@.
  -> GLdouble -- ^ @y@.
  -> IO ()
glVertexAttribL2dEXT = dyn_glVertexAttribL2dEXT ptr_glVertexAttribL2dEXT

foreign import CALLCONV "dynamic" dyn_glVertexAttribL2dEXT
  :: FunPtr (GLuint -> GLdouble -> GLdouble -> IO ())
  ->         GLuint -> GLdouble -> GLdouble -> IO ()

{-# NOINLINE ptr_glVertexAttribL2dEXT #-}
ptr_glVertexAttribL2dEXT :: FunPtr (GLuint -> GLdouble -> GLdouble -> IO ())
ptr_glVertexAttribL2dEXT = unsafePerformIO $ getCommand "glVertexAttribL2dEXT"

-- glVertexAttribL2dv ----------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glVertexAttrib.xhtml OpenGL 4.x>
glVertexAttribL2dv
  :: GLuint -- ^ @index@.
  -> Ptr GLdouble -- ^ @v@ pointing to @2@ elements of type @GLdouble@.
  -> IO ()
glVertexAttribL2dv = dyn_glVertexAttribL2dv ptr_glVertexAttribL2dv

foreign import CALLCONV "dynamic" dyn_glVertexAttribL2dv
  :: FunPtr (GLuint -> Ptr GLdouble -> IO ())
  ->         GLuint -> Ptr GLdouble -> IO ()

{-# NOINLINE ptr_glVertexAttribL2dv #-}
ptr_glVertexAttribL2dv :: FunPtr (GLuint -> Ptr GLdouble -> IO ())
ptr_glVertexAttribL2dv = unsafePerformIO $ getCommand "glVertexAttribL2dv"

-- glVertexAttribL2dvEXT -------------------------------------------------------

glVertexAttribL2dvEXT
  :: GLuint -- ^ @index@.
  -> Ptr GLdouble -- ^ @v@ pointing to @2@ elements of type @GLdouble@.
  -> IO ()
glVertexAttribL2dvEXT = dyn_glVertexAttribL2dvEXT ptr_glVertexAttribL2dvEXT

foreign import CALLCONV "dynamic" dyn_glVertexAttribL2dvEXT
  :: FunPtr (GLuint -> Ptr GLdouble -> IO ())
  ->         GLuint -> Ptr GLdouble -> IO ()

{-# NOINLINE ptr_glVertexAttribL2dvEXT #-}
ptr_glVertexAttribL2dvEXT :: FunPtr (GLuint -> Ptr GLdouble -> IO ())
ptr_glVertexAttribL2dvEXT = unsafePerformIO $ getCommand "glVertexAttribL2dvEXT"

-- glVertexAttribL2i64NV -------------------------------------------------------

glVertexAttribL2i64NV
  :: GLuint -- ^ @index@.
  -> GLint64EXT -- ^ @x@.
  -> GLint64EXT -- ^ @y@.
  -> IO ()
glVertexAttribL2i64NV = dyn_glVertexAttribL2i64NV ptr_glVertexAttribL2i64NV

foreign import CALLCONV "dynamic" dyn_glVertexAttribL2i64NV
  :: FunPtr (GLuint -> GLint64EXT -> GLint64EXT -> IO ())
  ->         GLuint -> GLint64EXT -> GLint64EXT -> IO ()

{-# NOINLINE ptr_glVertexAttribL2i64NV #-}
ptr_glVertexAttribL2i64NV :: FunPtr (GLuint -> GLint64EXT -> GLint64EXT -> IO ())
ptr_glVertexAttribL2i64NV = unsafePerformIO $ getCommand "glVertexAttribL2i64NV"

-- glVertexAttribL2i64vNV ------------------------------------------------------

glVertexAttribL2i64vNV
  :: GLuint -- ^ @index@.
  -> Ptr GLint64EXT -- ^ @v@ pointing to @2@ elements of type @GLint64EXT@.
  -> IO ()
glVertexAttribL2i64vNV = dyn_glVertexAttribL2i64vNV ptr_glVertexAttribL2i64vNV

foreign import CALLCONV "dynamic" dyn_glVertexAttribL2i64vNV
  :: FunPtr (GLuint -> Ptr GLint64EXT -> IO ())
  ->         GLuint -> Ptr GLint64EXT -> IO ()

{-# NOINLINE ptr_glVertexAttribL2i64vNV #-}
ptr_glVertexAttribL2i64vNV :: FunPtr (GLuint -> Ptr GLint64EXT -> IO ())
ptr_glVertexAttribL2i64vNV = unsafePerformIO $ getCommand "glVertexAttribL2i64vNV"

-- glVertexAttribL2ui64NV ------------------------------------------------------

glVertexAttribL2ui64NV
  :: GLuint -- ^ @index@.
  -> GLuint64EXT -- ^ @x@.
  -> GLuint64EXT -- ^ @y@.
  -> IO ()
glVertexAttribL2ui64NV = dyn_glVertexAttribL2ui64NV ptr_glVertexAttribL2ui64NV

foreign import CALLCONV "dynamic" dyn_glVertexAttribL2ui64NV
  :: FunPtr (GLuint -> GLuint64EXT -> GLuint64EXT -> IO ())
  ->         GLuint -> GLuint64EXT -> GLuint64EXT -> IO ()

{-# NOINLINE ptr_glVertexAttribL2ui64NV #-}
ptr_glVertexAttribL2ui64NV :: FunPtr (GLuint -> GLuint64EXT -> GLuint64EXT -> IO ())
ptr_glVertexAttribL2ui64NV = unsafePerformIO $ getCommand "glVertexAttribL2ui64NV"

-- glVertexAttribL2ui64vNV -----------------------------------------------------

glVertexAttribL2ui64vNV
  :: GLuint -- ^ @index@.
  -> Ptr GLuint64EXT -- ^ @v@ pointing to @2@ elements of type @GLuint64EXT@.
  -> IO ()
glVertexAttribL2ui64vNV = dyn_glVertexAttribL2ui64vNV ptr_glVertexAttribL2ui64vNV

foreign import CALLCONV "dynamic" dyn_glVertexAttribL2ui64vNV
  :: FunPtr (GLuint -> Ptr GLuint64EXT -> IO ())
  ->         GLuint -> Ptr GLuint64EXT -> IO ()

{-# NOINLINE ptr_glVertexAttribL2ui64vNV #-}
ptr_glVertexAttribL2ui64vNV :: FunPtr (GLuint -> Ptr GLuint64EXT -> IO ())
ptr_glVertexAttribL2ui64vNV = unsafePerformIO $ getCommand "glVertexAttribL2ui64vNV"

-- glVertexAttribL3d -----------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glVertexAttrib.xhtml OpenGL 4.x>
glVertexAttribL3d
  :: GLuint -- ^ @index@.
  -> GLdouble -- ^ @x@.
  -> GLdouble -- ^ @y@.
  -> GLdouble -- ^ @z@.
  -> IO ()
glVertexAttribL3d = dyn_glVertexAttribL3d ptr_glVertexAttribL3d

foreign import CALLCONV "dynamic" dyn_glVertexAttribL3d
  :: FunPtr (GLuint -> GLdouble -> GLdouble -> GLdouble -> IO ())
  ->         GLuint -> GLdouble -> GLdouble -> GLdouble -> IO ()

{-# NOINLINE ptr_glVertexAttribL3d #-}
ptr_glVertexAttribL3d :: FunPtr (GLuint -> GLdouble -> GLdouble -> GLdouble -> IO ())
ptr_glVertexAttribL3d = unsafePerformIO $ getCommand "glVertexAttribL3d"

-- glVertexAttribL3dEXT --------------------------------------------------------

glVertexAttribL3dEXT
  :: GLuint -- ^ @index@.
  -> GLdouble -- ^ @x@.
  -> GLdouble -- ^ @y@.
  -> GLdouble -- ^ @z@.
  -> IO ()
glVertexAttribL3dEXT = dyn_glVertexAttribL3dEXT ptr_glVertexAttribL3dEXT

foreign import CALLCONV "dynamic" dyn_glVertexAttribL3dEXT
  :: FunPtr (GLuint -> GLdouble -> GLdouble -> GLdouble -> IO ())
  ->         GLuint -> GLdouble -> GLdouble -> GLdouble -> IO ()

{-# NOINLINE ptr_glVertexAttribL3dEXT #-}
ptr_glVertexAttribL3dEXT :: FunPtr (GLuint -> GLdouble -> GLdouble -> GLdouble -> IO ())
ptr_glVertexAttribL3dEXT = unsafePerformIO $ getCommand "glVertexAttribL3dEXT"

-- glVertexAttribL3dv ----------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glVertexAttrib.xhtml OpenGL 4.x>
glVertexAttribL3dv
  :: GLuint -- ^ @index@.
  -> Ptr GLdouble -- ^ @v@ pointing to @3@ elements of type @GLdouble@.
  -> IO ()
glVertexAttribL3dv = dyn_glVertexAttribL3dv ptr_glVertexAttribL3dv

foreign import CALLCONV "dynamic" dyn_glVertexAttribL3dv
  :: FunPtr (GLuint -> Ptr GLdouble -> IO ())
  ->         GLuint -> Ptr GLdouble -> IO ()

{-# NOINLINE ptr_glVertexAttribL3dv #-}
ptr_glVertexAttribL3dv :: FunPtr (GLuint -> Ptr GLdouble -> IO ())
ptr_glVertexAttribL3dv = unsafePerformIO $ getCommand "glVertexAttribL3dv"

-- glVertexAttribL3dvEXT -------------------------------------------------------

glVertexAttribL3dvEXT
  :: GLuint -- ^ @index@.
  -> Ptr GLdouble -- ^ @v@ pointing to @3@ elements of type @GLdouble@.
  -> IO ()
glVertexAttribL3dvEXT = dyn_glVertexAttribL3dvEXT ptr_glVertexAttribL3dvEXT

foreign import CALLCONV "dynamic" dyn_glVertexAttribL3dvEXT
  :: FunPtr (GLuint -> Ptr GLdouble -> IO ())
  ->         GLuint -> Ptr GLdouble -> IO ()

{-# NOINLINE ptr_glVertexAttribL3dvEXT #-}
ptr_glVertexAttribL3dvEXT :: FunPtr (GLuint -> Ptr GLdouble -> IO ())
ptr_glVertexAttribL3dvEXT = unsafePerformIO $ getCommand "glVertexAttribL3dvEXT"

-- glVertexAttribL3i64NV -------------------------------------------------------

glVertexAttribL3i64NV
  :: GLuint -- ^ @index@.
  -> GLint64EXT -- ^ @x@.
  -> GLint64EXT -- ^ @y@.
  -> GLint64EXT -- ^ @z@.
  -> IO ()
glVertexAttribL3i64NV = dyn_glVertexAttribL3i64NV ptr_glVertexAttribL3i64NV

foreign import CALLCONV "dynamic" dyn_glVertexAttribL3i64NV
  :: FunPtr (GLuint -> GLint64EXT -> GLint64EXT -> GLint64EXT -> IO ())
  ->         GLuint -> GLint64EXT -> GLint64EXT -> GLint64EXT -> IO ()

{-# NOINLINE ptr_glVertexAttribL3i64NV #-}
ptr_glVertexAttribL3i64NV :: FunPtr (GLuint -> GLint64EXT -> GLint64EXT -> GLint64EXT -> IO ())
ptr_glVertexAttribL3i64NV = unsafePerformIO $ getCommand "glVertexAttribL3i64NV"

-- glVertexAttribL3i64vNV ------------------------------------------------------

glVertexAttribL3i64vNV
  :: GLuint -- ^ @index@.
  -> Ptr GLint64EXT -- ^ @v@ pointing to @3@ elements of type @GLint64EXT@.
  -> IO ()
glVertexAttribL3i64vNV = dyn_glVertexAttribL3i64vNV ptr_glVertexAttribL3i64vNV

foreign import CALLCONV "dynamic" dyn_glVertexAttribL3i64vNV
  :: FunPtr (GLuint -> Ptr GLint64EXT -> IO ())
  ->         GLuint -> Ptr GLint64EXT -> IO ()

{-# NOINLINE ptr_glVertexAttribL3i64vNV #-}
ptr_glVertexAttribL3i64vNV :: FunPtr (GLuint -> Ptr GLint64EXT -> IO ())
ptr_glVertexAttribL3i64vNV = unsafePerformIO $ getCommand "glVertexAttribL3i64vNV"

-- glVertexAttribL3ui64NV ------------------------------------------------------

glVertexAttribL3ui64NV
  :: GLuint -- ^ @index@.
  -> GLuint64EXT -- ^ @x@.
  -> GLuint64EXT -- ^ @y@.
  -> GLuint64EXT -- ^ @z@.
  -> IO ()
glVertexAttribL3ui64NV = dyn_glVertexAttribL3ui64NV ptr_glVertexAttribL3ui64NV

foreign import CALLCONV "dynamic" dyn_glVertexAttribL3ui64NV
  :: FunPtr (GLuint -> GLuint64EXT -> GLuint64EXT -> GLuint64EXT -> IO ())
  ->         GLuint -> GLuint64EXT -> GLuint64EXT -> GLuint64EXT -> IO ()

{-# NOINLINE ptr_glVertexAttribL3ui64NV #-}
ptr_glVertexAttribL3ui64NV :: FunPtr (GLuint -> GLuint64EXT -> GLuint64EXT -> GLuint64EXT -> IO ())
ptr_glVertexAttribL3ui64NV = unsafePerformIO $ getCommand "glVertexAttribL3ui64NV"

-- glVertexAttribL3ui64vNV -----------------------------------------------------

glVertexAttribL3ui64vNV
  :: GLuint -- ^ @index@.
  -> Ptr GLuint64EXT -- ^ @v@ pointing to @3@ elements of type @GLuint64EXT@.
  -> IO ()
glVertexAttribL3ui64vNV = dyn_glVertexAttribL3ui64vNV ptr_glVertexAttribL3ui64vNV

foreign import CALLCONV "dynamic" dyn_glVertexAttribL3ui64vNV
  :: FunPtr (GLuint -> Ptr GLuint64EXT -> IO ())
  ->         GLuint -> Ptr GLuint64EXT -> IO ()

{-# NOINLINE ptr_glVertexAttribL3ui64vNV #-}
ptr_glVertexAttribL3ui64vNV :: FunPtr (GLuint -> Ptr GLuint64EXT -> IO ())
ptr_glVertexAttribL3ui64vNV = unsafePerformIO $ getCommand "glVertexAttribL3ui64vNV"

-- glVertexAttribL4d -----------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glVertexAttrib.xhtml OpenGL 4.x>
glVertexAttribL4d
  :: GLuint -- ^ @index@.
  -> GLdouble -- ^ @x@.
  -> GLdouble -- ^ @y@.
  -> GLdouble -- ^ @z@.
  -> GLdouble -- ^ @w@.
  -> IO ()
glVertexAttribL4d = dyn_glVertexAttribL4d ptr_glVertexAttribL4d

foreign import CALLCONV "dynamic" dyn_glVertexAttribL4d
  :: FunPtr (GLuint -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ())
  ->         GLuint -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ()

{-# NOINLINE ptr_glVertexAttribL4d #-}
ptr_glVertexAttribL4d :: FunPtr (GLuint -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ())
ptr_glVertexAttribL4d = unsafePerformIO $ getCommand "glVertexAttribL4d"

-- glVertexAttribL4dEXT --------------------------------------------------------

glVertexAttribL4dEXT
  :: GLuint -- ^ @index@.
  -> GLdouble -- ^ @x@.
  -> GLdouble -- ^ @y@.
  -> GLdouble -- ^ @z@.
  -> GLdouble -- ^ @w@.
  -> IO ()
glVertexAttribL4dEXT = dyn_glVertexAttribL4dEXT ptr_glVertexAttribL4dEXT

foreign import CALLCONV "dynamic" dyn_glVertexAttribL4dEXT
  :: FunPtr (GLuint -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ())
  ->         GLuint -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ()

{-# NOINLINE ptr_glVertexAttribL4dEXT #-}
ptr_glVertexAttribL4dEXT :: FunPtr (GLuint -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ())
ptr_glVertexAttribL4dEXT = unsafePerformIO $ getCommand "glVertexAttribL4dEXT"

-- glVertexAttribL4dv ----------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glVertexAttrib.xhtml OpenGL 4.x>
glVertexAttribL4dv
  :: GLuint -- ^ @index@.
  -> Ptr GLdouble -- ^ @v@ pointing to @4@ elements of type @GLdouble@.
  -> IO ()
glVertexAttribL4dv = dyn_glVertexAttribL4dv ptr_glVertexAttribL4dv

foreign import CALLCONV "dynamic" dyn_glVertexAttribL4dv
  :: FunPtr (GLuint -> Ptr GLdouble -> IO ())
  ->         GLuint -> Ptr GLdouble -> IO ()

{-# NOINLINE ptr_glVertexAttribL4dv #-}
ptr_glVertexAttribL4dv :: FunPtr (GLuint -> Ptr GLdouble -> IO ())
ptr_glVertexAttribL4dv = unsafePerformIO $ getCommand "glVertexAttribL4dv"

-- glVertexAttribL4dvEXT -------------------------------------------------------

glVertexAttribL4dvEXT
  :: GLuint -- ^ @index@.
  -> Ptr GLdouble -- ^ @v@ pointing to @4@ elements of type @GLdouble@.
  -> IO ()
glVertexAttribL4dvEXT = dyn_glVertexAttribL4dvEXT ptr_glVertexAttribL4dvEXT

foreign import CALLCONV "dynamic" dyn_glVertexAttribL4dvEXT
  :: FunPtr (GLuint -> Ptr GLdouble -> IO ())
  ->         GLuint -> Ptr GLdouble -> IO ()

{-# NOINLINE ptr_glVertexAttribL4dvEXT #-}
ptr_glVertexAttribL4dvEXT :: FunPtr (GLuint -> Ptr GLdouble -> IO ())
ptr_glVertexAttribL4dvEXT = unsafePerformIO $ getCommand "glVertexAttribL4dvEXT"

-- glVertexAttribL4i64NV -------------------------------------------------------

glVertexAttribL4i64NV
  :: GLuint -- ^ @index@.
  -> GLint64EXT -- ^ @x@.
  -> GLint64EXT -- ^ @y@.
  -> GLint64EXT -- ^ @z@.
  -> GLint64EXT -- ^ @w@.
  -> IO ()
glVertexAttribL4i64NV = dyn_glVertexAttribL4i64NV ptr_glVertexAttribL4i64NV

foreign import CALLCONV "dynamic" dyn_glVertexAttribL4i64NV
  :: FunPtr (GLuint -> GLint64EXT -> GLint64EXT -> GLint64EXT -> GLint64EXT -> IO ())
  ->         GLuint -> GLint64EXT -> GLint64EXT -> GLint64EXT -> GLint64EXT -> IO ()

{-# NOINLINE ptr_glVertexAttribL4i64NV #-}
ptr_glVertexAttribL4i64NV :: FunPtr (GLuint -> GLint64EXT -> GLint64EXT -> GLint64EXT -> GLint64EXT -> IO ())
ptr_glVertexAttribL4i64NV = unsafePerformIO $ getCommand "glVertexAttribL4i64NV"

-- glVertexAttribL4i64vNV ------------------------------------------------------

glVertexAttribL4i64vNV
  :: GLuint -- ^ @index@.
  -> Ptr GLint64EXT -- ^ @v@ pointing to @4@ elements of type @GLint64EXT@.
  -> IO ()
glVertexAttribL4i64vNV = dyn_glVertexAttribL4i64vNV ptr_glVertexAttribL4i64vNV

foreign import CALLCONV "dynamic" dyn_glVertexAttribL4i64vNV
  :: FunPtr (GLuint -> Ptr GLint64EXT -> IO ())
  ->         GLuint -> Ptr GLint64EXT -> IO ()

{-# NOINLINE ptr_glVertexAttribL4i64vNV #-}
ptr_glVertexAttribL4i64vNV :: FunPtr (GLuint -> Ptr GLint64EXT -> IO ())
ptr_glVertexAttribL4i64vNV = unsafePerformIO $ getCommand "glVertexAttribL4i64vNV"

-- glVertexAttribL4ui64NV ------------------------------------------------------

glVertexAttribL4ui64NV
  :: GLuint -- ^ @index@.
  -> GLuint64EXT -- ^ @x@.
  -> GLuint64EXT -- ^ @y@.
  -> GLuint64EXT -- ^ @z@.
  -> GLuint64EXT -- ^ @w@.
  -> IO ()
glVertexAttribL4ui64NV = dyn_glVertexAttribL4ui64NV ptr_glVertexAttribL4ui64NV

foreign import CALLCONV "dynamic" dyn_glVertexAttribL4ui64NV
  :: FunPtr (GLuint -> GLuint64EXT -> GLuint64EXT -> GLuint64EXT -> GLuint64EXT -> IO ())
  ->         GLuint -> GLuint64EXT -> GLuint64EXT -> GLuint64EXT -> GLuint64EXT -> IO ()

{-# NOINLINE ptr_glVertexAttribL4ui64NV #-}
ptr_glVertexAttribL4ui64NV :: FunPtr (GLuint -> GLuint64EXT -> GLuint64EXT -> GLuint64EXT -> GLuint64EXT -> IO ())
ptr_glVertexAttribL4ui64NV = unsafePerformIO $ getCommand "glVertexAttribL4ui64NV"

-- glVertexAttribL4ui64vNV -----------------------------------------------------

glVertexAttribL4ui64vNV
  :: GLuint -- ^ @index@.
  -> Ptr GLuint64EXT -- ^ @v@ pointing to @4@ elements of type @GLuint64EXT@.
  -> IO ()
glVertexAttribL4ui64vNV = dyn_glVertexAttribL4ui64vNV ptr_glVertexAttribL4ui64vNV

foreign import CALLCONV "dynamic" dyn_glVertexAttribL4ui64vNV
  :: FunPtr (GLuint -> Ptr GLuint64EXT -> IO ())
  ->         GLuint -> Ptr GLuint64EXT -> IO ()

{-# NOINLINE ptr_glVertexAttribL4ui64vNV #-}
ptr_glVertexAttribL4ui64vNV :: FunPtr (GLuint -> Ptr GLuint64EXT -> IO ())
ptr_glVertexAttribL4ui64vNV = unsafePerformIO $ getCommand "glVertexAttribL4ui64vNV"

-- glVertexAttribLFormat -------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glVertexAttribFormat.xhtml OpenGL 4.x>
glVertexAttribLFormat
  :: GLuint -- ^ @attribindex@.
  -> GLint -- ^ @size@.
  -> GLenum -- ^ @type@.
  -> GLuint -- ^ @relativeoffset@.
  -> IO ()
glVertexAttribLFormat = dyn_glVertexAttribLFormat ptr_glVertexAttribLFormat

foreign import CALLCONV "dynamic" dyn_glVertexAttribLFormat
  :: FunPtr (GLuint -> GLint -> GLenum -> GLuint -> IO ())
  ->         GLuint -> GLint -> GLenum -> GLuint -> IO ()

{-# NOINLINE ptr_glVertexAttribLFormat #-}
ptr_glVertexAttribLFormat :: FunPtr (GLuint -> GLint -> GLenum -> GLuint -> IO ())
ptr_glVertexAttribLFormat = unsafePerformIO $ getCommand "glVertexAttribLFormat"

-- glVertexAttribLFormatNV -----------------------------------------------------

glVertexAttribLFormatNV
  :: GLuint -- ^ @index@.
  -> GLint -- ^ @size@.
  -> GLenum -- ^ @type@.
  -> GLsizei -- ^ @stride@.
  -> IO ()
glVertexAttribLFormatNV = dyn_glVertexAttribLFormatNV ptr_glVertexAttribLFormatNV

foreign import CALLCONV "dynamic" dyn_glVertexAttribLFormatNV
  :: FunPtr (GLuint -> GLint -> GLenum -> GLsizei -> IO ())
  ->         GLuint -> GLint -> GLenum -> GLsizei -> IO ()

{-# NOINLINE ptr_glVertexAttribLFormatNV #-}
ptr_glVertexAttribLFormatNV :: FunPtr (GLuint -> GLint -> GLenum -> GLsizei -> IO ())
ptr_glVertexAttribLFormatNV = unsafePerformIO $ getCommand "glVertexAttribLFormatNV"

-- glVertexAttribLPointer ------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glVertexAttribPointer.xhtml OpenGL 4.x>
glVertexAttribLPointer
  :: GLuint -- ^ @index@.
  -> GLint -- ^ @size@.
  -> GLenum -- ^ @type@.
  -> GLsizei -- ^ @stride@.
  -> Ptr a -- ^ @pointer@ pointing to @size@ elements of type @a@.
  -> IO ()
glVertexAttribLPointer = dyn_glVertexAttribLPointer ptr_glVertexAttribLPointer

foreign import CALLCONV "dynamic" dyn_glVertexAttribLPointer
  :: FunPtr (GLuint -> GLint -> GLenum -> GLsizei -> Ptr a -> IO ())
  ->         GLuint -> GLint -> GLenum -> GLsizei -> Ptr a -> IO ()

{-# NOINLINE ptr_glVertexAttribLPointer #-}
ptr_glVertexAttribLPointer :: FunPtr (GLuint -> GLint -> GLenum -> GLsizei -> Ptr a -> IO ())
ptr_glVertexAttribLPointer = unsafePerformIO $ getCommand "glVertexAttribLPointer"

-- glVertexAttribLPointerEXT ---------------------------------------------------

glVertexAttribLPointerEXT
  :: GLuint -- ^ @index@.
  -> GLint -- ^ @size@.
  -> GLenum -- ^ @type@.
  -> GLsizei -- ^ @stride@.
  -> Ptr a -- ^ @pointer@ pointing to @size@ elements of type @a@.
  -> IO ()
glVertexAttribLPointerEXT = dyn_glVertexAttribLPointerEXT ptr_glVertexAttribLPointerEXT

foreign import CALLCONV "dynamic" dyn_glVertexAttribLPointerEXT
  :: FunPtr (GLuint -> GLint -> GLenum -> GLsizei -> Ptr a -> IO ())
  ->         GLuint -> GLint -> GLenum -> GLsizei -> Ptr a -> IO ()

{-# NOINLINE ptr_glVertexAttribLPointerEXT #-}
ptr_glVertexAttribLPointerEXT :: FunPtr (GLuint -> GLint -> GLenum -> GLsizei -> Ptr a -> IO ())
ptr_glVertexAttribLPointerEXT = unsafePerformIO $ getCommand "glVertexAttribLPointerEXT"

-- glVertexAttribP1ui ----------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glVertexAttrib.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glVertexAttrib.xhtml OpenGL 4.x>
glVertexAttribP1ui
  :: GLuint -- ^ @index@.
  -> GLenum -- ^ @type@.
  -> GLboolean -- ^ @normalized@ of type @Boolean@.
  -> GLuint -- ^ @value@.
  -> IO ()
glVertexAttribP1ui = dyn_glVertexAttribP1ui ptr_glVertexAttribP1ui

foreign import CALLCONV "dynamic" dyn_glVertexAttribP1ui
  :: FunPtr (GLuint -> GLenum -> GLboolean -> GLuint -> IO ())
  ->         GLuint -> GLenum -> GLboolean -> GLuint -> IO ()

{-# NOINLINE ptr_glVertexAttribP1ui #-}
ptr_glVertexAttribP1ui :: FunPtr (GLuint -> GLenum -> GLboolean -> GLuint -> IO ())
ptr_glVertexAttribP1ui = unsafePerformIO $ getCommand "glVertexAttribP1ui"

-- glVertexAttribP1uiv ---------------------------------------------------------

glVertexAttribP1uiv
  :: GLuint -- ^ @index@.
  -> GLenum -- ^ @type@.
  -> GLboolean -- ^ @normalized@ of type @Boolean@.
  -> Ptr GLuint -- ^ @value@ pointing to @1@ elements of type @GLuint@.
  -> IO ()
glVertexAttribP1uiv = dyn_glVertexAttribP1uiv ptr_glVertexAttribP1uiv

foreign import CALLCONV "dynamic" dyn_glVertexAttribP1uiv
  :: FunPtr (GLuint -> GLenum -> GLboolean -> Ptr GLuint -> IO ())
  ->         GLuint -> GLenum -> GLboolean -> Ptr GLuint -> IO ()

{-# NOINLINE ptr_glVertexAttribP1uiv #-}
ptr_glVertexAttribP1uiv :: FunPtr (GLuint -> GLenum -> GLboolean -> Ptr GLuint -> IO ())
ptr_glVertexAttribP1uiv = unsafePerformIO $ getCommand "glVertexAttribP1uiv"

-- glVertexAttribP2ui ----------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glVertexAttrib.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glVertexAttrib.xhtml OpenGL 4.x>
glVertexAttribP2ui
  :: GLuint -- ^ @index@.
  -> GLenum -- ^ @type@.
  -> GLboolean -- ^ @normalized@ of type @Boolean@.
  -> GLuint -- ^ @value@.
  -> IO ()
glVertexAttribP2ui = dyn_glVertexAttribP2ui ptr_glVertexAttribP2ui

foreign import CALLCONV "dynamic" dyn_glVertexAttribP2ui
  :: FunPtr (GLuint -> GLenum -> GLboolean -> GLuint -> IO ())
  ->         GLuint -> GLenum -> GLboolean -> GLuint -> IO ()

{-# NOINLINE ptr_glVertexAttribP2ui #-}
ptr_glVertexAttribP2ui :: FunPtr (GLuint -> GLenum -> GLboolean -> GLuint -> IO ())
ptr_glVertexAttribP2ui = unsafePerformIO $ getCommand "glVertexAttribP2ui"

-- glVertexAttribP2uiv ---------------------------------------------------------

glVertexAttribP2uiv
  :: GLuint -- ^ @index@.
  -> GLenum -- ^ @type@.
  -> GLboolean -- ^ @normalized@ of type @Boolean@.
  -> Ptr GLuint -- ^ @value@ pointing to @1@ elements of type @GLuint@.
  -> IO ()
glVertexAttribP2uiv = dyn_glVertexAttribP2uiv ptr_glVertexAttribP2uiv

foreign import CALLCONV "dynamic" dyn_glVertexAttribP2uiv
  :: FunPtr (GLuint -> GLenum -> GLboolean -> Ptr GLuint -> IO ())
  ->         GLuint -> GLenum -> GLboolean -> Ptr GLuint -> IO ()

{-# NOINLINE ptr_glVertexAttribP2uiv #-}
ptr_glVertexAttribP2uiv :: FunPtr (GLuint -> GLenum -> GLboolean -> Ptr GLuint -> IO ())
ptr_glVertexAttribP2uiv = unsafePerformIO $ getCommand "glVertexAttribP2uiv"

-- glVertexAttribP3ui ----------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glVertexAttrib.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glVertexAttrib.xhtml OpenGL 4.x>
glVertexAttribP3ui
  :: GLuint -- ^ @index@.
  -> GLenum -- ^ @type@.
  -> GLboolean -- ^ @normalized@ of type @Boolean@.
  -> GLuint -- ^ @value@.
  -> IO ()
glVertexAttribP3ui = dyn_glVertexAttribP3ui ptr_glVertexAttribP3ui

foreign import CALLCONV "dynamic" dyn_glVertexAttribP3ui
  :: FunPtr (GLuint -> GLenum -> GLboolean -> GLuint -> IO ())
  ->         GLuint -> GLenum -> GLboolean -> GLuint -> IO ()

{-# NOINLINE ptr_glVertexAttribP3ui #-}
ptr_glVertexAttribP3ui :: FunPtr (GLuint -> GLenum -> GLboolean -> GLuint -> IO ())
ptr_glVertexAttribP3ui = unsafePerformIO $ getCommand "glVertexAttribP3ui"

-- glVertexAttribP3uiv ---------------------------------------------------------

glVertexAttribP3uiv
  :: GLuint -- ^ @index@.
  -> GLenum -- ^ @type@.
  -> GLboolean -- ^ @normalized@ of type @Boolean@.
  -> Ptr GLuint -- ^ @value@ pointing to @1@ elements of type @GLuint@.
  -> IO ()
glVertexAttribP3uiv = dyn_glVertexAttribP3uiv ptr_glVertexAttribP3uiv

foreign import CALLCONV "dynamic" dyn_glVertexAttribP3uiv
  :: FunPtr (GLuint -> GLenum -> GLboolean -> Ptr GLuint -> IO ())
  ->         GLuint -> GLenum -> GLboolean -> Ptr GLuint -> IO ()

{-# NOINLINE ptr_glVertexAttribP3uiv #-}
ptr_glVertexAttribP3uiv :: FunPtr (GLuint -> GLenum -> GLboolean -> Ptr GLuint -> IO ())
ptr_glVertexAttribP3uiv = unsafePerformIO $ getCommand "glVertexAttribP3uiv"

-- glVertexAttribP4ui ----------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glVertexAttrib.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glVertexAttrib.xhtml OpenGL 4.x>
glVertexAttribP4ui
  :: GLuint -- ^ @index@.
  -> GLenum -- ^ @type@.
  -> GLboolean -- ^ @normalized@ of type @Boolean@.
  -> GLuint -- ^ @value@.
  -> IO ()
glVertexAttribP4ui = dyn_glVertexAttribP4ui ptr_glVertexAttribP4ui

foreign import CALLCONV "dynamic" dyn_glVertexAttribP4ui
  :: FunPtr (GLuint -> GLenum -> GLboolean -> GLuint -> IO ())
  ->         GLuint -> GLenum -> GLboolean -> GLuint -> IO ()

{-# NOINLINE ptr_glVertexAttribP4ui #-}
ptr_glVertexAttribP4ui :: FunPtr (GLuint -> GLenum -> GLboolean -> GLuint -> IO ())
ptr_glVertexAttribP4ui = unsafePerformIO $ getCommand "glVertexAttribP4ui"

-- glVertexAttribP4uiv ---------------------------------------------------------

glVertexAttribP4uiv
  :: GLuint -- ^ @index@.
  -> GLenum -- ^ @type@.
  -> GLboolean -- ^ @normalized@ of type @Boolean@.
  -> Ptr GLuint -- ^ @value@ pointing to @1@ elements of type @GLuint@.
  -> IO ()
glVertexAttribP4uiv = dyn_glVertexAttribP4uiv ptr_glVertexAttribP4uiv

foreign import CALLCONV "dynamic" dyn_glVertexAttribP4uiv
  :: FunPtr (GLuint -> GLenum -> GLboolean -> Ptr GLuint -> IO ())
  ->         GLuint -> GLenum -> GLboolean -> Ptr GLuint -> IO ()

{-# NOINLINE ptr_glVertexAttribP4uiv #-}
ptr_glVertexAttribP4uiv :: FunPtr (GLuint -> GLenum -> GLboolean -> Ptr GLuint -> IO ())
ptr_glVertexAttribP4uiv = unsafePerformIO $ getCommand "glVertexAttribP4uiv"

-- glVertexAttribParameteriAMD -------------------------------------------------

glVertexAttribParameteriAMD
  :: GLuint -- ^ @index@.
  -> GLenum -- ^ @pname@.
  -> GLint -- ^ @param@.
  -> IO ()
glVertexAttribParameteriAMD = dyn_glVertexAttribParameteriAMD ptr_glVertexAttribParameteriAMD

foreign import CALLCONV "dynamic" dyn_glVertexAttribParameteriAMD
  :: FunPtr (GLuint -> GLenum -> GLint -> IO ())
  ->         GLuint -> GLenum -> GLint -> IO ()

{-# NOINLINE ptr_glVertexAttribParameteriAMD #-}
ptr_glVertexAttribParameteriAMD :: FunPtr (GLuint -> GLenum -> GLint -> IO ())
ptr_glVertexAttribParameteriAMD = unsafePerformIO $ getCommand "glVertexAttribParameteriAMD"

-- glVertexAttribPointer -------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glVertexAttribPointer.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glVertexAttribPointer.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glVertexAttribPointer.xhtml OpenGL 4.x>
glVertexAttribPointer
  :: GLuint -- ^ @index@.
  -> GLint -- ^ @size@.
  -> GLenum -- ^ @type@ of type @VertexAttribPointerType@.
  -> GLboolean -- ^ @normalized@ of type @Boolean@.
  -> GLsizei -- ^ @stride@.
  -> Ptr a -- ^ @pointer@ pointing to @COMPSIZE(size,type,stride)@ elements of type @a@.
  -> IO ()
glVertexAttribPointer = dyn_glVertexAttribPointer ptr_glVertexAttribPointer

foreign import CALLCONV "dynamic" dyn_glVertexAttribPointer
  :: FunPtr (GLuint -> GLint -> GLenum -> GLboolean -> GLsizei -> Ptr a -> IO ())
  ->         GLuint -> GLint -> GLenum -> GLboolean -> GLsizei -> Ptr a -> IO ()

{-# NOINLINE ptr_glVertexAttribPointer #-}
ptr_glVertexAttribPointer :: FunPtr (GLuint -> GLint -> GLenum -> GLboolean -> GLsizei -> Ptr a -> IO ())
ptr_glVertexAttribPointer = unsafePerformIO $ getCommand "glVertexAttribPointer"

-- glVertexAttribPointerARB ----------------------------------------------------

glVertexAttribPointerARB
  :: GLuint -- ^ @index@.
  -> GLint -- ^ @size@.
  -> GLenum -- ^ @type@ of type @VertexAttribPointerType@.
  -> GLboolean -- ^ @normalized@ of type @Boolean@.
  -> GLsizei -- ^ @stride@.
  -> Ptr a -- ^ @pointer@ pointing to @COMPSIZE(size,type,stride)@ elements of type @a@.
  -> IO ()
glVertexAttribPointerARB = dyn_glVertexAttribPointerARB ptr_glVertexAttribPointerARB

foreign import CALLCONV "dynamic" dyn_glVertexAttribPointerARB
  :: FunPtr (GLuint -> GLint -> GLenum -> GLboolean -> GLsizei -> Ptr a -> IO ())
  ->         GLuint -> GLint -> GLenum -> GLboolean -> GLsizei -> Ptr a -> IO ()

{-# NOINLINE ptr_glVertexAttribPointerARB #-}
ptr_glVertexAttribPointerARB :: FunPtr (GLuint -> GLint -> GLenum -> GLboolean -> GLsizei -> Ptr a -> IO ())
ptr_glVertexAttribPointerARB = unsafePerformIO $ getCommand "glVertexAttribPointerARB"

-- glVertexAttribPointerNV -----------------------------------------------------

glVertexAttribPointerNV
  :: GLuint -- ^ @index@.
  -> GLint -- ^ @fsize@.
  -> GLenum -- ^ @type@ of type @VertexAttribEnumNV@.
  -> GLsizei -- ^ @stride@.
  -> Ptr a -- ^ @pointer@ pointing to @COMPSIZE(fsize,type,stride)@ elements of type @a@.
  -> IO ()
glVertexAttribPointerNV = dyn_glVertexAttribPointerNV ptr_glVertexAttribPointerNV

foreign import CALLCONV "dynamic" dyn_glVertexAttribPointerNV
  :: FunPtr (GLuint -> GLint -> GLenum -> GLsizei -> Ptr a -> IO ())
  ->         GLuint -> GLint -> GLenum -> GLsizei -> Ptr a -> IO ()

{-# NOINLINE ptr_glVertexAttribPointerNV #-}
ptr_glVertexAttribPointerNV :: FunPtr (GLuint -> GLint -> GLenum -> GLsizei -> Ptr a -> IO ())
ptr_glVertexAttribPointerNV = unsafePerformIO $ getCommand "glVertexAttribPointerNV"

-- glVertexAttribs1dvNV --------------------------------------------------------

glVertexAttribs1dvNV
  :: GLuint -- ^ @index@.
  -> GLsizei -- ^ @count@.
  -> Ptr GLdouble -- ^ @v@ pointing to @count@ elements of type @GLdouble@.
  -> IO ()
glVertexAttribs1dvNV = dyn_glVertexAttribs1dvNV ptr_glVertexAttribs1dvNV

foreign import CALLCONV "dynamic" dyn_glVertexAttribs1dvNV
  :: FunPtr (GLuint -> GLsizei -> Ptr GLdouble -> IO ())
  ->         GLuint -> GLsizei -> Ptr GLdouble -> IO ()

{-# NOINLINE ptr_glVertexAttribs1dvNV #-}
ptr_glVertexAttribs1dvNV :: FunPtr (GLuint -> GLsizei -> Ptr GLdouble -> IO ())
ptr_glVertexAttribs1dvNV = unsafePerformIO $ getCommand "glVertexAttribs1dvNV"

-- glVertexAttribs1fvNV --------------------------------------------------------

glVertexAttribs1fvNV
  :: GLuint -- ^ @index@.
  -> GLsizei -- ^ @count@.
  -> Ptr GLfloat -- ^ @v@ pointing to @count@ elements of type @GLfloat@.
  -> IO ()
glVertexAttribs1fvNV = dyn_glVertexAttribs1fvNV ptr_glVertexAttribs1fvNV

foreign import CALLCONV "dynamic" dyn_glVertexAttribs1fvNV
  :: FunPtr (GLuint -> GLsizei -> Ptr GLfloat -> IO ())
  ->         GLuint -> GLsizei -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glVertexAttribs1fvNV #-}
ptr_glVertexAttribs1fvNV :: FunPtr (GLuint -> GLsizei -> Ptr GLfloat -> IO ())
ptr_glVertexAttribs1fvNV = unsafePerformIO $ getCommand "glVertexAttribs1fvNV"

-- glVertexAttribs1hvNV --------------------------------------------------------

glVertexAttribs1hvNV
  :: GLuint -- ^ @index@.
  -> GLsizei -- ^ @n@.
  -> Ptr GLhalfNV -- ^ @v@ pointing to @n@ elements of type @Half16NV@.
  -> IO ()
glVertexAttribs1hvNV = dyn_glVertexAttribs1hvNV ptr_glVertexAttribs1hvNV

foreign import CALLCONV "dynamic" dyn_glVertexAttribs1hvNV
  :: FunPtr (GLuint -> GLsizei -> Ptr GLhalfNV -> IO ())
  ->         GLuint -> GLsizei -> Ptr GLhalfNV -> IO ()

{-# NOINLINE ptr_glVertexAttribs1hvNV #-}
ptr_glVertexAttribs1hvNV :: FunPtr (GLuint -> GLsizei -> Ptr GLhalfNV -> IO ())
ptr_glVertexAttribs1hvNV = unsafePerformIO $ getCommand "glVertexAttribs1hvNV"

-- glVertexAttribs1svNV --------------------------------------------------------

glVertexAttribs1svNV
  :: GLuint -- ^ @index@.
  -> GLsizei -- ^ @count@.
  -> Ptr GLshort -- ^ @v@ pointing to @count@ elements of type @GLshort@.
  -> IO ()
glVertexAttribs1svNV = dyn_glVertexAttribs1svNV ptr_glVertexAttribs1svNV

foreign import CALLCONV "dynamic" dyn_glVertexAttribs1svNV
  :: FunPtr (GLuint -> GLsizei -> Ptr GLshort -> IO ())
  ->         GLuint -> GLsizei -> Ptr GLshort -> IO ()

{-# NOINLINE ptr_glVertexAttribs1svNV #-}
ptr_glVertexAttribs1svNV :: FunPtr (GLuint -> GLsizei -> Ptr GLshort -> IO ())
ptr_glVertexAttribs1svNV = unsafePerformIO $ getCommand "glVertexAttribs1svNV"

-- glVertexAttribs2dvNV --------------------------------------------------------

glVertexAttribs2dvNV
  :: GLuint -- ^ @index@.
  -> GLsizei -- ^ @count@.
  -> Ptr GLdouble -- ^ @v@ pointing to @count*2@ elements of type @GLdouble@.
  -> IO ()
glVertexAttribs2dvNV = dyn_glVertexAttribs2dvNV ptr_glVertexAttribs2dvNV

foreign import CALLCONV "dynamic" dyn_glVertexAttribs2dvNV
  :: FunPtr (GLuint -> GLsizei -> Ptr GLdouble -> IO ())
  ->         GLuint -> GLsizei -> Ptr GLdouble -> IO ()

{-# NOINLINE ptr_glVertexAttribs2dvNV #-}
ptr_glVertexAttribs2dvNV :: FunPtr (GLuint -> GLsizei -> Ptr GLdouble -> IO ())
ptr_glVertexAttribs2dvNV = unsafePerformIO $ getCommand "glVertexAttribs2dvNV"

-- glVertexAttribs2fvNV --------------------------------------------------------

glVertexAttribs2fvNV
  :: GLuint -- ^ @index@.
  -> GLsizei -- ^ @count@.
  -> Ptr GLfloat -- ^ @v@ pointing to @count*2@ elements of type @GLfloat@.
  -> IO ()
glVertexAttribs2fvNV = dyn_glVertexAttribs2fvNV ptr_glVertexAttribs2fvNV

foreign import CALLCONV "dynamic" dyn_glVertexAttribs2fvNV
  :: FunPtr (GLuint -> GLsizei -> Ptr GLfloat -> IO ())
  ->         GLuint -> GLsizei -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glVertexAttribs2fvNV #-}
ptr_glVertexAttribs2fvNV :: FunPtr (GLuint -> GLsizei -> Ptr GLfloat -> IO ())
ptr_glVertexAttribs2fvNV = unsafePerformIO $ getCommand "glVertexAttribs2fvNV"

-- glVertexAttribs2hvNV --------------------------------------------------------

glVertexAttribs2hvNV
  :: GLuint -- ^ @index@.
  -> GLsizei -- ^ @n@.
  -> Ptr GLhalfNV -- ^ @v@ pointing to @n@ elements of type @Half16NV@.
  -> IO ()
glVertexAttribs2hvNV = dyn_glVertexAttribs2hvNV ptr_glVertexAttribs2hvNV

foreign import CALLCONV "dynamic" dyn_glVertexAttribs2hvNV
  :: FunPtr (GLuint -> GLsizei -> Ptr GLhalfNV -> IO ())
  ->         GLuint -> GLsizei -> Ptr GLhalfNV -> IO ()

{-# NOINLINE ptr_glVertexAttribs2hvNV #-}
ptr_glVertexAttribs2hvNV :: FunPtr (GLuint -> GLsizei -> Ptr GLhalfNV -> IO ())
ptr_glVertexAttribs2hvNV = unsafePerformIO $ getCommand "glVertexAttribs2hvNV"

-- glVertexAttribs2svNV --------------------------------------------------------

glVertexAttribs2svNV
  :: GLuint -- ^ @index@.
  -> GLsizei -- ^ @count@.
  -> Ptr GLshort -- ^ @v@ pointing to @count*2@ elements of type @GLshort@.
  -> IO ()
glVertexAttribs2svNV = dyn_glVertexAttribs2svNV ptr_glVertexAttribs2svNV

foreign import CALLCONV "dynamic" dyn_glVertexAttribs2svNV
  :: FunPtr (GLuint -> GLsizei -> Ptr GLshort -> IO ())
  ->         GLuint -> GLsizei -> Ptr GLshort -> IO ()

{-# NOINLINE ptr_glVertexAttribs2svNV #-}
ptr_glVertexAttribs2svNV :: FunPtr (GLuint -> GLsizei -> Ptr GLshort -> IO ())
ptr_glVertexAttribs2svNV = unsafePerformIO $ getCommand "glVertexAttribs2svNV"

-- glVertexAttribs3dvNV --------------------------------------------------------

glVertexAttribs3dvNV
  :: GLuint -- ^ @index@.
  -> GLsizei -- ^ @count@.
  -> Ptr GLdouble -- ^ @v@ pointing to @count*3@ elements of type @GLdouble@.
  -> IO ()
glVertexAttribs3dvNV = dyn_glVertexAttribs3dvNV ptr_glVertexAttribs3dvNV

foreign import CALLCONV "dynamic" dyn_glVertexAttribs3dvNV
  :: FunPtr (GLuint -> GLsizei -> Ptr GLdouble -> IO ())
  ->         GLuint -> GLsizei -> Ptr GLdouble -> IO ()

{-# NOINLINE ptr_glVertexAttribs3dvNV #-}
ptr_glVertexAttribs3dvNV :: FunPtr (GLuint -> GLsizei -> Ptr GLdouble -> IO ())
ptr_glVertexAttribs3dvNV = unsafePerformIO $ getCommand "glVertexAttribs3dvNV"

-- glVertexAttribs3fvNV --------------------------------------------------------

glVertexAttribs3fvNV
  :: GLuint -- ^ @index@.
  -> GLsizei -- ^ @count@.
  -> Ptr GLfloat -- ^ @v@ pointing to @count*3@ elements of type @GLfloat@.
  -> IO ()
glVertexAttribs3fvNV = dyn_glVertexAttribs3fvNV ptr_glVertexAttribs3fvNV

foreign import CALLCONV "dynamic" dyn_glVertexAttribs3fvNV
  :: FunPtr (GLuint -> GLsizei -> Ptr GLfloat -> IO ())
  ->         GLuint -> GLsizei -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glVertexAttribs3fvNV #-}
ptr_glVertexAttribs3fvNV :: FunPtr (GLuint -> GLsizei -> Ptr GLfloat -> IO ())
ptr_glVertexAttribs3fvNV = unsafePerformIO $ getCommand "glVertexAttribs3fvNV"

-- glVertexAttribs3hvNV --------------------------------------------------------

glVertexAttribs3hvNV
  :: GLuint -- ^ @index@.
  -> GLsizei -- ^ @n@.
  -> Ptr GLhalfNV -- ^ @v@ pointing to @n@ elements of type @Half16NV@.
  -> IO ()
glVertexAttribs3hvNV = dyn_glVertexAttribs3hvNV ptr_glVertexAttribs3hvNV

foreign import CALLCONV "dynamic" dyn_glVertexAttribs3hvNV
  :: FunPtr (GLuint -> GLsizei -> Ptr GLhalfNV -> IO ())
  ->         GLuint -> GLsizei -> Ptr GLhalfNV -> IO ()

{-# NOINLINE ptr_glVertexAttribs3hvNV #-}
ptr_glVertexAttribs3hvNV :: FunPtr (GLuint -> GLsizei -> Ptr GLhalfNV -> IO ())
ptr_glVertexAttribs3hvNV = unsafePerformIO $ getCommand "glVertexAttribs3hvNV"

-- glVertexAttribs3svNV --------------------------------------------------------

glVertexAttribs3svNV
  :: GLuint -- ^ @index@.
  -> GLsizei -- ^ @count@.
  -> Ptr GLshort -- ^ @v@ pointing to @count*3@ elements of type @GLshort@.
  -> IO ()
glVertexAttribs3svNV = dyn_glVertexAttribs3svNV ptr_glVertexAttribs3svNV

foreign import CALLCONV "dynamic" dyn_glVertexAttribs3svNV
  :: FunPtr (GLuint -> GLsizei -> Ptr GLshort -> IO ())
  ->         GLuint -> GLsizei -> Ptr GLshort -> IO ()

{-# NOINLINE ptr_glVertexAttribs3svNV #-}
ptr_glVertexAttribs3svNV :: FunPtr (GLuint -> GLsizei -> Ptr GLshort -> IO ())
ptr_glVertexAttribs3svNV = unsafePerformIO $ getCommand "glVertexAttribs3svNV"

-- glVertexAttribs4dvNV --------------------------------------------------------

glVertexAttribs4dvNV
  :: GLuint -- ^ @index@.
  -> GLsizei -- ^ @count@.
  -> Ptr GLdouble -- ^ @v@ pointing to @count*4@ elements of type @GLdouble@.
  -> IO ()
glVertexAttribs4dvNV = dyn_glVertexAttribs4dvNV ptr_glVertexAttribs4dvNV

foreign import CALLCONV "dynamic" dyn_glVertexAttribs4dvNV
  :: FunPtr (GLuint -> GLsizei -> Ptr GLdouble -> IO ())
  ->         GLuint -> GLsizei -> Ptr GLdouble -> IO ()

{-# NOINLINE ptr_glVertexAttribs4dvNV #-}
ptr_glVertexAttribs4dvNV :: FunPtr (GLuint -> GLsizei -> Ptr GLdouble -> IO ())
ptr_glVertexAttribs4dvNV = unsafePerformIO $ getCommand "glVertexAttribs4dvNV"

-- glVertexAttribs4fvNV --------------------------------------------------------

glVertexAttribs4fvNV
  :: GLuint -- ^ @index@.
  -> GLsizei -- ^ @count@.
  -> Ptr GLfloat -- ^ @v@ pointing to @count*4@ elements of type @GLfloat@.
  -> IO ()
glVertexAttribs4fvNV = dyn_glVertexAttribs4fvNV ptr_glVertexAttribs4fvNV

foreign import CALLCONV "dynamic" dyn_glVertexAttribs4fvNV
  :: FunPtr (GLuint -> GLsizei -> Ptr GLfloat -> IO ())
  ->         GLuint -> GLsizei -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glVertexAttribs4fvNV #-}
ptr_glVertexAttribs4fvNV :: FunPtr (GLuint -> GLsizei -> Ptr GLfloat -> IO ())
ptr_glVertexAttribs4fvNV = unsafePerformIO $ getCommand "glVertexAttribs4fvNV"

-- glVertexAttribs4hvNV --------------------------------------------------------

glVertexAttribs4hvNV
  :: GLuint -- ^ @index@.
  -> GLsizei -- ^ @n@.
  -> Ptr GLhalfNV -- ^ @v@ pointing to @n@ elements of type @Half16NV@.
  -> IO ()
glVertexAttribs4hvNV = dyn_glVertexAttribs4hvNV ptr_glVertexAttribs4hvNV

foreign import CALLCONV "dynamic" dyn_glVertexAttribs4hvNV
  :: FunPtr (GLuint -> GLsizei -> Ptr GLhalfNV -> IO ())
  ->         GLuint -> GLsizei -> Ptr GLhalfNV -> IO ()

{-# NOINLINE ptr_glVertexAttribs4hvNV #-}
ptr_glVertexAttribs4hvNV :: FunPtr (GLuint -> GLsizei -> Ptr GLhalfNV -> IO ())
ptr_glVertexAttribs4hvNV = unsafePerformIO $ getCommand "glVertexAttribs4hvNV"

-- glVertexAttribs4svNV --------------------------------------------------------

glVertexAttribs4svNV
  :: GLuint -- ^ @index@.
  -> GLsizei -- ^ @count@.
  -> Ptr GLshort -- ^ @v@ pointing to @count*4@ elements of type @GLshort@.
  -> IO ()
glVertexAttribs4svNV = dyn_glVertexAttribs4svNV ptr_glVertexAttribs4svNV

foreign import CALLCONV "dynamic" dyn_glVertexAttribs4svNV
  :: FunPtr (GLuint -> GLsizei -> Ptr GLshort -> IO ())
  ->         GLuint -> GLsizei -> Ptr GLshort -> IO ()

{-# NOINLINE ptr_glVertexAttribs4svNV #-}
ptr_glVertexAttribs4svNV :: FunPtr (GLuint -> GLsizei -> Ptr GLshort -> IO ())
ptr_glVertexAttribs4svNV = unsafePerformIO $ getCommand "glVertexAttribs4svNV"

-- glVertexAttribs4ubvNV -------------------------------------------------------

glVertexAttribs4ubvNV
  :: GLuint -- ^ @index@.
  -> GLsizei -- ^ @count@.
  -> Ptr GLubyte -- ^ @v@ pointing to @count*4@ elements of type @ColorUB@.
  -> IO ()
glVertexAttribs4ubvNV = dyn_glVertexAttribs4ubvNV ptr_glVertexAttribs4ubvNV

foreign import CALLCONV "dynamic" dyn_glVertexAttribs4ubvNV
  :: FunPtr (GLuint -> GLsizei -> Ptr GLubyte -> IO ())
  ->         GLuint -> GLsizei -> Ptr GLubyte -> IO ()

{-# NOINLINE ptr_glVertexAttribs4ubvNV #-}
ptr_glVertexAttribs4ubvNV :: FunPtr (GLuint -> GLsizei -> Ptr GLubyte -> IO ())
ptr_glVertexAttribs4ubvNV = unsafePerformIO $ getCommand "glVertexAttribs4ubvNV"

-- glVertexBindingDivisor ------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glVertexBindingDivisor.xhtml OpenGL 4.x>
glVertexBindingDivisor
  :: GLuint -- ^ @bindingindex@.
  -> GLuint -- ^ @divisor@.
  -> IO ()
glVertexBindingDivisor = dyn_glVertexBindingDivisor ptr_glVertexBindingDivisor

foreign import CALLCONV "dynamic" dyn_glVertexBindingDivisor
  :: FunPtr (GLuint -> GLuint -> IO ())
  ->         GLuint -> GLuint -> IO ()

{-# NOINLINE ptr_glVertexBindingDivisor #-}
ptr_glVertexBindingDivisor :: FunPtr (GLuint -> GLuint -> IO ())
ptr_glVertexBindingDivisor = unsafePerformIO $ getCommand "glVertexBindingDivisor"

-- glVertexBlendARB ------------------------------------------------------------

glVertexBlendARB
  :: GLint -- ^ @count@.
  -> IO ()
glVertexBlendARB = dyn_glVertexBlendARB ptr_glVertexBlendARB

foreign import CALLCONV "dynamic" dyn_glVertexBlendARB
  :: FunPtr (GLint -> IO ())
  ->         GLint -> IO ()

{-# NOINLINE ptr_glVertexBlendARB #-}
ptr_glVertexBlendARB :: FunPtr (GLint -> IO ())
ptr_glVertexBlendARB = unsafePerformIO $ getCommand "glVertexBlendARB"

-- glVertexBlendEnvfATI --------------------------------------------------------

glVertexBlendEnvfATI
  :: GLenum -- ^ @pname@ of type @VertexStreamATI@.
  -> GLfloat -- ^ @param@.
  -> IO ()
glVertexBlendEnvfATI = dyn_glVertexBlendEnvfATI ptr_glVertexBlendEnvfATI

foreign import CALLCONV "dynamic" dyn_glVertexBlendEnvfATI
  :: FunPtr (GLenum -> GLfloat -> IO ())
  ->         GLenum -> GLfloat -> IO ()

{-# NOINLINE ptr_glVertexBlendEnvfATI #-}
ptr_glVertexBlendEnvfATI :: FunPtr (GLenum -> GLfloat -> IO ())
ptr_glVertexBlendEnvfATI = unsafePerformIO $ getCommand "glVertexBlendEnvfATI"

-- glVertexBlendEnviATI --------------------------------------------------------

glVertexBlendEnviATI
  :: GLenum -- ^ @pname@ of type @VertexStreamATI@.
  -> GLint -- ^ @param@.
  -> IO ()
glVertexBlendEnviATI = dyn_glVertexBlendEnviATI ptr_glVertexBlendEnviATI

foreign import CALLCONV "dynamic" dyn_glVertexBlendEnviATI
  :: FunPtr (GLenum -> GLint -> IO ())
  ->         GLenum -> GLint -> IO ()

{-# NOINLINE ptr_glVertexBlendEnviATI #-}
ptr_glVertexBlendEnviATI :: FunPtr (GLenum -> GLint -> IO ())
ptr_glVertexBlendEnviATI = unsafePerformIO $ getCommand "glVertexBlendEnviATI"

-- glVertexFormatNV ------------------------------------------------------------

glVertexFormatNV
  :: GLint -- ^ @size@.
  -> GLenum -- ^ @type@.
  -> GLsizei -- ^ @stride@.
  -> IO ()
glVertexFormatNV = dyn_glVertexFormatNV ptr_glVertexFormatNV

foreign import CALLCONV "dynamic" dyn_glVertexFormatNV
  :: FunPtr (GLint -> GLenum -> GLsizei -> IO ())
  ->         GLint -> GLenum -> GLsizei -> IO ()

{-# NOINLINE ptr_glVertexFormatNV #-}
ptr_glVertexFormatNV :: FunPtr (GLint -> GLenum -> GLsizei -> IO ())
ptr_glVertexFormatNV = unsafePerformIO $ getCommand "glVertexFormatNV"

-- glVertexP2ui ----------------------------------------------------------------

glVertexP2ui
  :: GLenum -- ^ @type@.
  -> GLuint -- ^ @value@.
  -> IO ()
glVertexP2ui = dyn_glVertexP2ui ptr_glVertexP2ui

foreign import CALLCONV "dynamic" dyn_glVertexP2ui
  :: FunPtr (GLenum -> GLuint -> IO ())
  ->         GLenum -> GLuint -> IO ()

{-# NOINLINE ptr_glVertexP2ui #-}
ptr_glVertexP2ui :: FunPtr (GLenum -> GLuint -> IO ())
ptr_glVertexP2ui = unsafePerformIO $ getCommand "glVertexP2ui"

-- glVertexP2uiv ---------------------------------------------------------------

glVertexP2uiv
  :: GLenum -- ^ @type@.
  -> Ptr GLuint -- ^ @value@ pointing to @1@ elements of type @GLuint@.
  -> IO ()
glVertexP2uiv = dyn_glVertexP2uiv ptr_glVertexP2uiv

foreign import CALLCONV "dynamic" dyn_glVertexP2uiv
  :: FunPtr (GLenum -> Ptr GLuint -> IO ())
  ->         GLenum -> Ptr GLuint -> IO ()

{-# NOINLINE ptr_glVertexP2uiv #-}
ptr_glVertexP2uiv :: FunPtr (GLenum -> Ptr GLuint -> IO ())
ptr_glVertexP2uiv = unsafePerformIO $ getCommand "glVertexP2uiv"

-- glVertexP3ui ----------------------------------------------------------------

glVertexP3ui
  :: GLenum -- ^ @type@.
  -> GLuint -- ^ @value@.
  -> IO ()
glVertexP3ui = dyn_glVertexP3ui ptr_glVertexP3ui

foreign import CALLCONV "dynamic" dyn_glVertexP3ui
  :: FunPtr (GLenum -> GLuint -> IO ())
  ->         GLenum -> GLuint -> IO ()

{-# NOINLINE ptr_glVertexP3ui #-}
ptr_glVertexP3ui :: FunPtr (GLenum -> GLuint -> IO ())
ptr_glVertexP3ui = unsafePerformIO $ getCommand "glVertexP3ui"

-- glVertexP3uiv ---------------------------------------------------------------

glVertexP3uiv
  :: GLenum -- ^ @type@.
  -> Ptr GLuint -- ^ @value@ pointing to @1@ elements of type @GLuint@.
  -> IO ()
glVertexP3uiv = dyn_glVertexP3uiv ptr_glVertexP3uiv

foreign import CALLCONV "dynamic" dyn_glVertexP3uiv
  :: FunPtr (GLenum -> Ptr GLuint -> IO ())
  ->         GLenum -> Ptr GLuint -> IO ()

{-# NOINLINE ptr_glVertexP3uiv #-}
ptr_glVertexP3uiv :: FunPtr (GLenum -> Ptr GLuint -> IO ())
ptr_glVertexP3uiv = unsafePerformIO $ getCommand "glVertexP3uiv"

-- glVertexP4ui ----------------------------------------------------------------

glVertexP4ui
  :: GLenum -- ^ @type@.
  -> GLuint -- ^ @value@.
  -> IO ()
glVertexP4ui = dyn_glVertexP4ui ptr_glVertexP4ui

foreign import CALLCONV "dynamic" dyn_glVertexP4ui
  :: FunPtr (GLenum -> GLuint -> IO ())
  ->         GLenum -> GLuint -> IO ()

{-# NOINLINE ptr_glVertexP4ui #-}
ptr_glVertexP4ui :: FunPtr (GLenum -> GLuint -> IO ())
ptr_glVertexP4ui = unsafePerformIO $ getCommand "glVertexP4ui"

-- glVertexP4uiv ---------------------------------------------------------------

glVertexP4uiv
  :: GLenum -- ^ @type@.
  -> Ptr GLuint -- ^ @value@ pointing to @1@ elements of type @GLuint@.
  -> IO ()
glVertexP4uiv = dyn_glVertexP4uiv ptr_glVertexP4uiv

foreign import CALLCONV "dynamic" dyn_glVertexP4uiv
  :: FunPtr (GLenum -> Ptr GLuint -> IO ())
  ->         GLenum -> Ptr GLuint -> IO ()

{-# NOINLINE ptr_glVertexP4uiv #-}
ptr_glVertexP4uiv :: FunPtr (GLenum -> Ptr GLuint -> IO ())
ptr_glVertexP4uiv = unsafePerformIO $ getCommand "glVertexP4uiv"

-- glVertexPointer -------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glVertexPointer.xml OpenGL 2.x>
glVertexPointer
  :: GLint -- ^ @size@.
  -> GLenum -- ^ @type@ of type @VertexPointerType@.
  -> GLsizei -- ^ @stride@.
  -> Ptr a -- ^ @pointer@ pointing to @COMPSIZE(size,type,stride)@ elements of type @a@.
  -> IO ()
glVertexPointer = dyn_glVertexPointer ptr_glVertexPointer

foreign import CALLCONV "dynamic" dyn_glVertexPointer
  :: FunPtr (GLint -> GLenum -> GLsizei -> Ptr a -> IO ())
  ->         GLint -> GLenum -> GLsizei -> Ptr a -> IO ()

{-# NOINLINE ptr_glVertexPointer #-}
ptr_glVertexPointer :: FunPtr (GLint -> GLenum -> GLsizei -> Ptr a -> IO ())
ptr_glVertexPointer = unsafePerformIO $ getCommand "glVertexPointer"

-- glVertexPointerEXT ----------------------------------------------------------

glVertexPointerEXT
  :: GLint -- ^ @size@.
  -> GLenum -- ^ @type@ of type @VertexPointerType@.
  -> GLsizei -- ^ @stride@.
  -> GLsizei -- ^ @count@.
  -> Ptr a -- ^ @pointer@ pointing to @COMPSIZE(size,type,stride,count)@ elements of type @a@.
  -> IO ()
glVertexPointerEXT = dyn_glVertexPointerEXT ptr_glVertexPointerEXT

foreign import CALLCONV "dynamic" dyn_glVertexPointerEXT
  :: FunPtr (GLint -> GLenum -> GLsizei -> GLsizei -> Ptr a -> IO ())
  ->         GLint -> GLenum -> GLsizei -> GLsizei -> Ptr a -> IO ()

{-# NOINLINE ptr_glVertexPointerEXT #-}
ptr_glVertexPointerEXT :: FunPtr (GLint -> GLenum -> GLsizei -> GLsizei -> Ptr a -> IO ())
ptr_glVertexPointerEXT = unsafePerformIO $ getCommand "glVertexPointerEXT"

-- glVertexPointerListIBM ------------------------------------------------------

glVertexPointerListIBM
  :: GLint -- ^ @size@.
  -> GLenum -- ^ @type@ of type @VertexPointerType@.
  -> GLint -- ^ @stride@.
  -> Ptr (Ptr a) -- ^ @pointer@ pointing to @COMPSIZE(size,type,stride)@ elements of type @Ptr a@.
  -> GLint -- ^ @ptrstride@.
  -> IO ()
glVertexPointerListIBM = dyn_glVertexPointerListIBM ptr_glVertexPointerListIBM

foreign import CALLCONV "dynamic" dyn_glVertexPointerListIBM
  :: FunPtr (GLint -> GLenum -> GLint -> Ptr (Ptr a) -> GLint -> IO ())
  ->         GLint -> GLenum -> GLint -> Ptr (Ptr a) -> GLint -> IO ()

{-# NOINLINE ptr_glVertexPointerListIBM #-}
ptr_glVertexPointerListIBM :: FunPtr (GLint -> GLenum -> GLint -> Ptr (Ptr a) -> GLint -> IO ())
ptr_glVertexPointerListIBM = unsafePerformIO $ getCommand "glVertexPointerListIBM"

-- glVertexPointervINTEL -------------------------------------------------------

glVertexPointervINTEL
  :: GLint -- ^ @size@.
  -> GLenum -- ^ @type@ of type @VertexPointerType@.
  -> Ptr (Ptr a) -- ^ @pointer@ pointing to @4@ elements of type @Ptr a@.
  -> IO ()
glVertexPointervINTEL = dyn_glVertexPointervINTEL ptr_glVertexPointervINTEL

foreign import CALLCONV "dynamic" dyn_glVertexPointervINTEL
  :: FunPtr (GLint -> GLenum -> Ptr (Ptr a) -> IO ())
  ->         GLint -> GLenum -> Ptr (Ptr a) -> IO ()

{-# NOINLINE ptr_glVertexPointervINTEL #-}
ptr_glVertexPointervINTEL :: FunPtr (GLint -> GLenum -> Ptr (Ptr a) -> IO ())
ptr_glVertexPointervINTEL = unsafePerformIO $ getCommand "glVertexPointervINTEL"

-- glVertexStream1dATI ---------------------------------------------------------

glVertexStream1dATI
  :: GLenum -- ^ @stream@ of type @VertexStreamATI@.
  -> GLdouble -- ^ @x@.
  -> IO ()
glVertexStream1dATI = dyn_glVertexStream1dATI ptr_glVertexStream1dATI

foreign import CALLCONV "dynamic" dyn_glVertexStream1dATI
  :: FunPtr (GLenum -> GLdouble -> IO ())
  ->         GLenum -> GLdouble -> IO ()

{-# NOINLINE ptr_glVertexStream1dATI #-}
ptr_glVertexStream1dATI :: FunPtr (GLenum -> GLdouble -> IO ())
ptr_glVertexStream1dATI = unsafePerformIO $ getCommand "glVertexStream1dATI"

-- glVertexStream1dvATI --------------------------------------------------------

glVertexStream1dvATI
  :: GLenum -- ^ @stream@ of type @VertexStreamATI@.
  -> Ptr GLdouble -- ^ @coords@ pointing to @1@ elements of type @GLdouble@.
  -> IO ()
glVertexStream1dvATI = dyn_glVertexStream1dvATI ptr_glVertexStream1dvATI

foreign import CALLCONV "dynamic" dyn_glVertexStream1dvATI
  :: FunPtr (GLenum -> Ptr GLdouble -> IO ())
  ->         GLenum -> Ptr GLdouble -> IO ()

{-# NOINLINE ptr_glVertexStream1dvATI #-}
ptr_glVertexStream1dvATI :: FunPtr (GLenum -> Ptr GLdouble -> IO ())
ptr_glVertexStream1dvATI = unsafePerformIO $ getCommand "glVertexStream1dvATI"

-- glVertexStream1fATI ---------------------------------------------------------

glVertexStream1fATI
  :: GLenum -- ^ @stream@ of type @VertexStreamATI@.
  -> GLfloat -- ^ @x@.
  -> IO ()
glVertexStream1fATI = dyn_glVertexStream1fATI ptr_glVertexStream1fATI

foreign import CALLCONV "dynamic" dyn_glVertexStream1fATI
  :: FunPtr (GLenum -> GLfloat -> IO ())
  ->         GLenum -> GLfloat -> IO ()

{-# NOINLINE ptr_glVertexStream1fATI #-}
ptr_glVertexStream1fATI :: FunPtr (GLenum -> GLfloat -> IO ())
ptr_glVertexStream1fATI = unsafePerformIO $ getCommand "glVertexStream1fATI"

-- glVertexStream1fvATI --------------------------------------------------------

glVertexStream1fvATI
  :: GLenum -- ^ @stream@ of type @VertexStreamATI@.
  -> Ptr GLfloat -- ^ @coords@ pointing to @1@ elements of type @GLfloat@.
  -> IO ()
glVertexStream1fvATI = dyn_glVertexStream1fvATI ptr_glVertexStream1fvATI

foreign import CALLCONV "dynamic" dyn_glVertexStream1fvATI
  :: FunPtr (GLenum -> Ptr GLfloat -> IO ())
  ->         GLenum -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glVertexStream1fvATI #-}
ptr_glVertexStream1fvATI :: FunPtr (GLenum -> Ptr GLfloat -> IO ())
ptr_glVertexStream1fvATI = unsafePerformIO $ getCommand "glVertexStream1fvATI"

-- glVertexStream1iATI ---------------------------------------------------------

glVertexStream1iATI
  :: GLenum -- ^ @stream@ of type @VertexStreamATI@.
  -> GLint -- ^ @x@.
  -> IO ()
glVertexStream1iATI = dyn_glVertexStream1iATI ptr_glVertexStream1iATI

foreign import CALLCONV "dynamic" dyn_glVertexStream1iATI
  :: FunPtr (GLenum -> GLint -> IO ())
  ->         GLenum -> GLint -> IO ()

{-# NOINLINE ptr_glVertexStream1iATI #-}
ptr_glVertexStream1iATI :: FunPtr (GLenum -> GLint -> IO ())
ptr_glVertexStream1iATI = unsafePerformIO $ getCommand "glVertexStream1iATI"

-- glVertexStream1ivATI --------------------------------------------------------

glVertexStream1ivATI
  :: GLenum -- ^ @stream@ of type @VertexStreamATI@.
  -> Ptr GLint -- ^ @coords@ pointing to @1@ elements of type @GLint@.
  -> IO ()
glVertexStream1ivATI = dyn_glVertexStream1ivATI ptr_glVertexStream1ivATI

foreign import CALLCONV "dynamic" dyn_glVertexStream1ivATI
  :: FunPtr (GLenum -> Ptr GLint -> IO ())
  ->         GLenum -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glVertexStream1ivATI #-}
ptr_glVertexStream1ivATI :: FunPtr (GLenum -> Ptr GLint -> IO ())
ptr_glVertexStream1ivATI = unsafePerformIO $ getCommand "glVertexStream1ivATI"

-- glVertexStream1sATI ---------------------------------------------------------

glVertexStream1sATI
  :: GLenum -- ^ @stream@ of type @VertexStreamATI@.
  -> GLshort -- ^ @x@.
  -> IO ()
glVertexStream1sATI = dyn_glVertexStream1sATI ptr_glVertexStream1sATI

foreign import CALLCONV "dynamic" dyn_glVertexStream1sATI
  :: FunPtr (GLenum -> GLshort -> IO ())
  ->         GLenum -> GLshort -> IO ()

{-# NOINLINE ptr_glVertexStream1sATI #-}
ptr_glVertexStream1sATI :: FunPtr (GLenum -> GLshort -> IO ())
ptr_glVertexStream1sATI = unsafePerformIO $ getCommand "glVertexStream1sATI"

-- glVertexStream1svATI --------------------------------------------------------

glVertexStream1svATI
  :: GLenum -- ^ @stream@ of type @VertexStreamATI@.
  -> Ptr GLshort -- ^ @coords@ pointing to @1@ elements of type @GLshort@.
  -> IO ()
glVertexStream1svATI = dyn_glVertexStream1svATI ptr_glVertexStream1svATI

foreign import CALLCONV "dynamic" dyn_glVertexStream1svATI
  :: FunPtr (GLenum -> Ptr GLshort -> IO ())
  ->         GLenum -> Ptr GLshort -> IO ()

{-# NOINLINE ptr_glVertexStream1svATI #-}
ptr_glVertexStream1svATI :: FunPtr (GLenum -> Ptr GLshort -> IO ())
ptr_glVertexStream1svATI = unsafePerformIO $ getCommand "glVertexStream1svATI"

-- glVertexStream2dATI ---------------------------------------------------------

glVertexStream2dATI
  :: GLenum -- ^ @stream@ of type @VertexStreamATI@.
  -> GLdouble -- ^ @x@.
  -> GLdouble -- ^ @y@.
  -> IO ()
glVertexStream2dATI = dyn_glVertexStream2dATI ptr_glVertexStream2dATI

foreign import CALLCONV "dynamic" dyn_glVertexStream2dATI
  :: FunPtr (GLenum -> GLdouble -> GLdouble -> IO ())
  ->         GLenum -> GLdouble -> GLdouble -> IO ()

{-# NOINLINE ptr_glVertexStream2dATI #-}
ptr_glVertexStream2dATI :: FunPtr (GLenum -> GLdouble -> GLdouble -> IO ())
ptr_glVertexStream2dATI = unsafePerformIO $ getCommand "glVertexStream2dATI"

-- glVertexStream2dvATI --------------------------------------------------------

glVertexStream2dvATI
  :: GLenum -- ^ @stream@ of type @VertexStreamATI@.
  -> Ptr GLdouble -- ^ @coords@ pointing to @2@ elements of type @GLdouble@.
  -> IO ()
glVertexStream2dvATI = dyn_glVertexStream2dvATI ptr_glVertexStream2dvATI

foreign import CALLCONV "dynamic" dyn_glVertexStream2dvATI
  :: FunPtr (GLenum -> Ptr GLdouble -> IO ())
  ->         GLenum -> Ptr GLdouble -> IO ()

{-# NOINLINE ptr_glVertexStream2dvATI #-}
ptr_glVertexStream2dvATI :: FunPtr (GLenum -> Ptr GLdouble -> IO ())
ptr_glVertexStream2dvATI = unsafePerformIO $ getCommand "glVertexStream2dvATI"

-- glVertexStream2fATI ---------------------------------------------------------

glVertexStream2fATI
  :: GLenum -- ^ @stream@ of type @VertexStreamATI@.
  -> GLfloat -- ^ @x@.
  -> GLfloat -- ^ @y@.
  -> IO ()
glVertexStream2fATI = dyn_glVertexStream2fATI ptr_glVertexStream2fATI

foreign import CALLCONV "dynamic" dyn_glVertexStream2fATI
  :: FunPtr (GLenum -> GLfloat -> GLfloat -> IO ())
  ->         GLenum -> GLfloat -> GLfloat -> IO ()

{-# NOINLINE ptr_glVertexStream2fATI #-}
ptr_glVertexStream2fATI :: FunPtr (GLenum -> GLfloat -> GLfloat -> IO ())
ptr_glVertexStream2fATI = unsafePerformIO $ getCommand "glVertexStream2fATI"

-- glVertexStream2fvATI --------------------------------------------------------

glVertexStream2fvATI
  :: GLenum -- ^ @stream@ of type @VertexStreamATI@.
  -> Ptr GLfloat -- ^ @coords@ pointing to @2@ elements of type @GLfloat@.
  -> IO ()
glVertexStream2fvATI = dyn_glVertexStream2fvATI ptr_glVertexStream2fvATI

foreign import CALLCONV "dynamic" dyn_glVertexStream2fvATI
  :: FunPtr (GLenum -> Ptr GLfloat -> IO ())
  ->         GLenum -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glVertexStream2fvATI #-}
ptr_glVertexStream2fvATI :: FunPtr (GLenum -> Ptr GLfloat -> IO ())
ptr_glVertexStream2fvATI = unsafePerformIO $ getCommand "glVertexStream2fvATI"

-- glVertexStream2iATI ---------------------------------------------------------

glVertexStream2iATI
  :: GLenum -- ^ @stream@ of type @VertexStreamATI@.
  -> GLint -- ^ @x@.
  -> GLint -- ^ @y@.
  -> IO ()
glVertexStream2iATI = dyn_glVertexStream2iATI ptr_glVertexStream2iATI

foreign import CALLCONV "dynamic" dyn_glVertexStream2iATI
  :: FunPtr (GLenum -> GLint -> GLint -> IO ())
  ->         GLenum -> GLint -> GLint -> IO ()

{-# NOINLINE ptr_glVertexStream2iATI #-}
ptr_glVertexStream2iATI :: FunPtr (GLenum -> GLint -> GLint -> IO ())
ptr_glVertexStream2iATI = unsafePerformIO $ getCommand "glVertexStream2iATI"

-- glVertexStream2ivATI --------------------------------------------------------

glVertexStream2ivATI
  :: GLenum -- ^ @stream@ of type @VertexStreamATI@.
  -> Ptr GLint -- ^ @coords@ pointing to @2@ elements of type @GLint@.
  -> IO ()
glVertexStream2ivATI = dyn_glVertexStream2ivATI ptr_glVertexStream2ivATI

foreign import CALLCONV "dynamic" dyn_glVertexStream2ivATI
  :: FunPtr (GLenum -> Ptr GLint -> IO ())
  ->         GLenum -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glVertexStream2ivATI #-}
ptr_glVertexStream2ivATI :: FunPtr (GLenum -> Ptr GLint -> IO ())
ptr_glVertexStream2ivATI = unsafePerformIO $ getCommand "glVertexStream2ivATI"

-- glVertexStream2sATI ---------------------------------------------------------

glVertexStream2sATI
  :: GLenum -- ^ @stream@ of type @VertexStreamATI@.
  -> GLshort -- ^ @x@.
  -> GLshort -- ^ @y@.
  -> IO ()
glVertexStream2sATI = dyn_glVertexStream2sATI ptr_glVertexStream2sATI

foreign import CALLCONV "dynamic" dyn_glVertexStream2sATI
  :: FunPtr (GLenum -> GLshort -> GLshort -> IO ())
  ->         GLenum -> GLshort -> GLshort -> IO ()

{-# NOINLINE ptr_glVertexStream2sATI #-}
ptr_glVertexStream2sATI :: FunPtr (GLenum -> GLshort -> GLshort -> IO ())
ptr_glVertexStream2sATI = unsafePerformIO $ getCommand "glVertexStream2sATI"

-- glVertexStream2svATI --------------------------------------------------------

glVertexStream2svATI
  :: GLenum -- ^ @stream@ of type @VertexStreamATI@.
  -> Ptr GLshort -- ^ @coords@ pointing to @2@ elements of type @GLshort@.
  -> IO ()
glVertexStream2svATI = dyn_glVertexStream2svATI ptr_glVertexStream2svATI

foreign import CALLCONV "dynamic" dyn_glVertexStream2svATI
  :: FunPtr (GLenum -> Ptr GLshort -> IO ())
  ->         GLenum -> Ptr GLshort -> IO ()

{-# NOINLINE ptr_glVertexStream2svATI #-}
ptr_glVertexStream2svATI :: FunPtr (GLenum -> Ptr GLshort -> IO ())
ptr_glVertexStream2svATI = unsafePerformIO $ getCommand "glVertexStream2svATI"

-- glVertexStream3dATI ---------------------------------------------------------

glVertexStream3dATI
  :: GLenum -- ^ @stream@ of type @VertexStreamATI@.
  -> GLdouble -- ^ @x@.
  -> GLdouble -- ^ @y@.
  -> GLdouble -- ^ @z@.
  -> IO ()
glVertexStream3dATI = dyn_glVertexStream3dATI ptr_glVertexStream3dATI

foreign import CALLCONV "dynamic" dyn_glVertexStream3dATI
  :: FunPtr (GLenum -> GLdouble -> GLdouble -> GLdouble -> IO ())
  ->         GLenum -> GLdouble -> GLdouble -> GLdouble -> IO ()

{-# NOINLINE ptr_glVertexStream3dATI #-}
ptr_glVertexStream3dATI :: FunPtr (GLenum -> GLdouble -> GLdouble -> GLdouble -> IO ())
ptr_glVertexStream3dATI = unsafePerformIO $ getCommand "glVertexStream3dATI"

-- glVertexStream3dvATI --------------------------------------------------------

glVertexStream3dvATI
  :: GLenum -- ^ @stream@ of type @VertexStreamATI@.
  -> Ptr GLdouble -- ^ @coords@ pointing to @3@ elements of type @GLdouble@.
  -> IO ()
glVertexStream3dvATI = dyn_glVertexStream3dvATI ptr_glVertexStream3dvATI

foreign import CALLCONV "dynamic" dyn_glVertexStream3dvATI
  :: FunPtr (GLenum -> Ptr GLdouble -> IO ())
  ->         GLenum -> Ptr GLdouble -> IO ()

{-# NOINLINE ptr_glVertexStream3dvATI #-}
ptr_glVertexStream3dvATI :: FunPtr (GLenum -> Ptr GLdouble -> IO ())
ptr_glVertexStream3dvATI = unsafePerformIO $ getCommand "glVertexStream3dvATI"

-- glVertexStream3fATI ---------------------------------------------------------

glVertexStream3fATI
  :: GLenum -- ^ @stream@ of type @VertexStreamATI@.
  -> GLfloat -- ^ @x@.
  -> GLfloat -- ^ @y@.
  -> GLfloat -- ^ @z@.
  -> IO ()
glVertexStream3fATI = dyn_glVertexStream3fATI ptr_glVertexStream3fATI

foreign import CALLCONV "dynamic" dyn_glVertexStream3fATI
  :: FunPtr (GLenum -> GLfloat -> GLfloat -> GLfloat -> IO ())
  ->         GLenum -> GLfloat -> GLfloat -> GLfloat -> IO ()

{-# NOINLINE ptr_glVertexStream3fATI #-}
ptr_glVertexStream3fATI :: FunPtr (GLenum -> GLfloat -> GLfloat -> GLfloat -> IO ())
ptr_glVertexStream3fATI = unsafePerformIO $ getCommand "glVertexStream3fATI"

-- glVertexStream3fvATI --------------------------------------------------------

glVertexStream3fvATI
  :: GLenum -- ^ @stream@ of type @VertexStreamATI@.
  -> Ptr GLfloat -- ^ @coords@ pointing to @3@ elements of type @GLfloat@.
  -> IO ()
glVertexStream3fvATI = dyn_glVertexStream3fvATI ptr_glVertexStream3fvATI

foreign import CALLCONV "dynamic" dyn_glVertexStream3fvATI
  :: FunPtr (GLenum -> Ptr GLfloat -> IO ())
  ->         GLenum -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glVertexStream3fvATI #-}
ptr_glVertexStream3fvATI :: FunPtr (GLenum -> Ptr GLfloat -> IO ())
ptr_glVertexStream3fvATI = unsafePerformIO $ getCommand "glVertexStream3fvATI"

-- glVertexStream3iATI ---------------------------------------------------------

glVertexStream3iATI
  :: GLenum -- ^ @stream@ of type @VertexStreamATI@.
  -> GLint -- ^ @x@.
  -> GLint -- ^ @y@.
  -> GLint -- ^ @z@.
  -> IO ()
glVertexStream3iATI = dyn_glVertexStream3iATI ptr_glVertexStream3iATI

foreign import CALLCONV "dynamic" dyn_glVertexStream3iATI
  :: FunPtr (GLenum -> GLint -> GLint -> GLint -> IO ())
  ->         GLenum -> GLint -> GLint -> GLint -> IO ()

{-# NOINLINE ptr_glVertexStream3iATI #-}
ptr_glVertexStream3iATI :: FunPtr (GLenum -> GLint -> GLint -> GLint -> IO ())
ptr_glVertexStream3iATI = unsafePerformIO $ getCommand "glVertexStream3iATI"

-- glVertexStream3ivATI --------------------------------------------------------

glVertexStream3ivATI
  :: GLenum -- ^ @stream@ of type @VertexStreamATI@.
  -> Ptr GLint -- ^ @coords@ pointing to @3@ elements of type @GLint@.
  -> IO ()
glVertexStream3ivATI = dyn_glVertexStream3ivATI ptr_glVertexStream3ivATI

foreign import CALLCONV "dynamic" dyn_glVertexStream3ivATI
  :: FunPtr (GLenum -> Ptr GLint -> IO ())
  ->         GLenum -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glVertexStream3ivATI #-}
ptr_glVertexStream3ivATI :: FunPtr (GLenum -> Ptr GLint -> IO ())
ptr_glVertexStream3ivATI = unsafePerformIO $ getCommand "glVertexStream3ivATI"

-- glVertexStream3sATI ---------------------------------------------------------

glVertexStream3sATI
  :: GLenum -- ^ @stream@ of type @VertexStreamATI@.
  -> GLshort -- ^ @x@.
  -> GLshort -- ^ @y@.
  -> GLshort -- ^ @z@.
  -> IO ()
glVertexStream3sATI = dyn_glVertexStream3sATI ptr_glVertexStream3sATI

foreign import CALLCONV "dynamic" dyn_glVertexStream3sATI
  :: FunPtr (GLenum -> GLshort -> GLshort -> GLshort -> IO ())
  ->         GLenum -> GLshort -> GLshort -> GLshort -> IO ()

{-# NOINLINE ptr_glVertexStream3sATI #-}
ptr_glVertexStream3sATI :: FunPtr (GLenum -> GLshort -> GLshort -> GLshort -> IO ())
ptr_glVertexStream3sATI = unsafePerformIO $ getCommand "glVertexStream3sATI"

-- glVertexStream3svATI --------------------------------------------------------

glVertexStream3svATI
  :: GLenum -- ^ @stream@ of type @VertexStreamATI@.
  -> Ptr GLshort -- ^ @coords@ pointing to @3@ elements of type @GLshort@.
  -> IO ()
glVertexStream3svATI = dyn_glVertexStream3svATI ptr_glVertexStream3svATI

foreign import CALLCONV "dynamic" dyn_glVertexStream3svATI
  :: FunPtr (GLenum -> Ptr GLshort -> IO ())
  ->         GLenum -> Ptr GLshort -> IO ()

{-# NOINLINE ptr_glVertexStream3svATI #-}
ptr_glVertexStream3svATI :: FunPtr (GLenum -> Ptr GLshort -> IO ())
ptr_glVertexStream3svATI = unsafePerformIO $ getCommand "glVertexStream3svATI"

-- glVertexStream4dATI ---------------------------------------------------------

glVertexStream4dATI
  :: GLenum -- ^ @stream@ of type @VertexStreamATI@.
  -> GLdouble -- ^ @x@.
  -> GLdouble -- ^ @y@.
  -> GLdouble -- ^ @z@.
  -> GLdouble -- ^ @w@.
  -> IO ()
glVertexStream4dATI = dyn_glVertexStream4dATI ptr_glVertexStream4dATI

foreign import CALLCONV "dynamic" dyn_glVertexStream4dATI
  :: FunPtr (GLenum -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ())
  ->         GLenum -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ()

{-# NOINLINE ptr_glVertexStream4dATI #-}
ptr_glVertexStream4dATI :: FunPtr (GLenum -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ())
ptr_glVertexStream4dATI = unsafePerformIO $ getCommand "glVertexStream4dATI"

-- glVertexStream4dvATI --------------------------------------------------------

glVertexStream4dvATI
  :: GLenum -- ^ @stream@ of type @VertexStreamATI@.
  -> Ptr GLdouble -- ^ @coords@ pointing to @4@ elements of type @GLdouble@.
  -> IO ()
glVertexStream4dvATI = dyn_glVertexStream4dvATI ptr_glVertexStream4dvATI

foreign import CALLCONV "dynamic" dyn_glVertexStream4dvATI
  :: FunPtr (GLenum -> Ptr GLdouble -> IO ())
  ->         GLenum -> Ptr GLdouble -> IO ()

{-# NOINLINE ptr_glVertexStream4dvATI #-}
ptr_glVertexStream4dvATI :: FunPtr (GLenum -> Ptr GLdouble -> IO ())
ptr_glVertexStream4dvATI = unsafePerformIO $ getCommand "glVertexStream4dvATI"

-- glVertexStream4fATI ---------------------------------------------------------

glVertexStream4fATI
  :: GLenum -- ^ @stream@ of type @VertexStreamATI@.
  -> GLfloat -- ^ @x@.
  -> GLfloat -- ^ @y@.
  -> GLfloat -- ^ @z@.
  -> GLfloat -- ^ @w@.
  -> IO ()
glVertexStream4fATI = dyn_glVertexStream4fATI ptr_glVertexStream4fATI

foreign import CALLCONV "dynamic" dyn_glVertexStream4fATI
  :: FunPtr (GLenum -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
  ->         GLenum -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ()

{-# NOINLINE ptr_glVertexStream4fATI #-}
ptr_glVertexStream4fATI :: FunPtr (GLenum -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
ptr_glVertexStream4fATI = unsafePerformIO $ getCommand "glVertexStream4fATI"

-- glVertexStream4fvATI --------------------------------------------------------

glVertexStream4fvATI
  :: GLenum -- ^ @stream@ of type @VertexStreamATI@.
  -> Ptr GLfloat -- ^ @coords@ pointing to @4@ elements of type @GLfloat@.
  -> IO ()
glVertexStream4fvATI = dyn_glVertexStream4fvATI ptr_glVertexStream4fvATI

foreign import CALLCONV "dynamic" dyn_glVertexStream4fvATI
  :: FunPtr (GLenum -> Ptr GLfloat -> IO ())
  ->         GLenum -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glVertexStream4fvATI #-}
ptr_glVertexStream4fvATI :: FunPtr (GLenum -> Ptr GLfloat -> IO ())
ptr_glVertexStream4fvATI = unsafePerformIO $ getCommand "glVertexStream4fvATI"

-- glVertexStream4iATI ---------------------------------------------------------

glVertexStream4iATI
  :: GLenum -- ^ @stream@ of type @VertexStreamATI@.
  -> GLint -- ^ @x@.
  -> GLint -- ^ @y@.
  -> GLint -- ^ @z@.
  -> GLint -- ^ @w@.
  -> IO ()
glVertexStream4iATI = dyn_glVertexStream4iATI ptr_glVertexStream4iATI

foreign import CALLCONV "dynamic" dyn_glVertexStream4iATI
  :: FunPtr (GLenum -> GLint -> GLint -> GLint -> GLint -> IO ())
  ->         GLenum -> GLint -> GLint -> GLint -> GLint -> IO ()

{-# NOINLINE ptr_glVertexStream4iATI #-}
ptr_glVertexStream4iATI :: FunPtr (GLenum -> GLint -> GLint -> GLint -> GLint -> IO ())
ptr_glVertexStream4iATI = unsafePerformIO $ getCommand "glVertexStream4iATI"

-- glVertexStream4ivATI --------------------------------------------------------

glVertexStream4ivATI
  :: GLenum -- ^ @stream@ of type @VertexStreamATI@.
  -> Ptr GLint -- ^ @coords@ pointing to @4@ elements of type @GLint@.
  -> IO ()
glVertexStream4ivATI = dyn_glVertexStream4ivATI ptr_glVertexStream4ivATI

foreign import CALLCONV "dynamic" dyn_glVertexStream4ivATI
  :: FunPtr (GLenum -> Ptr GLint -> IO ())
  ->         GLenum -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glVertexStream4ivATI #-}
ptr_glVertexStream4ivATI :: FunPtr (GLenum -> Ptr GLint -> IO ())
ptr_glVertexStream4ivATI = unsafePerformIO $ getCommand "glVertexStream4ivATI"

-- glVertexStream4sATI ---------------------------------------------------------

glVertexStream4sATI
  :: GLenum -- ^ @stream@ of type @VertexStreamATI@.
  -> GLshort -- ^ @x@.
  -> GLshort -- ^ @y@.
  -> GLshort -- ^ @z@.
  -> GLshort -- ^ @w@.
  -> IO ()
glVertexStream4sATI = dyn_glVertexStream4sATI ptr_glVertexStream4sATI

foreign import CALLCONV "dynamic" dyn_glVertexStream4sATI
  :: FunPtr (GLenum -> GLshort -> GLshort -> GLshort -> GLshort -> IO ())
  ->         GLenum -> GLshort -> GLshort -> GLshort -> GLshort -> IO ()

{-# NOINLINE ptr_glVertexStream4sATI #-}
ptr_glVertexStream4sATI :: FunPtr (GLenum -> GLshort -> GLshort -> GLshort -> GLshort -> IO ())
ptr_glVertexStream4sATI = unsafePerformIO $ getCommand "glVertexStream4sATI"

-- glVertexStream4svATI --------------------------------------------------------

glVertexStream4svATI
  :: GLenum -- ^ @stream@ of type @VertexStreamATI@.
  -> Ptr GLshort -- ^ @coords@ pointing to @4@ elements of type @GLshort@.
  -> IO ()
glVertexStream4svATI = dyn_glVertexStream4svATI ptr_glVertexStream4svATI

foreign import CALLCONV "dynamic" dyn_glVertexStream4svATI
  :: FunPtr (GLenum -> Ptr GLshort -> IO ())
  ->         GLenum -> Ptr GLshort -> IO ()

{-# NOINLINE ptr_glVertexStream4svATI #-}
ptr_glVertexStream4svATI :: FunPtr (GLenum -> Ptr GLshort -> IO ())
ptr_glVertexStream4svATI = unsafePerformIO $ getCommand "glVertexStream4svATI"

-- glVertexWeightPointerEXT ----------------------------------------------------

glVertexWeightPointerEXT
  :: GLint -- ^ @size@.
  -> GLenum -- ^ @type@ of type @VertexWeightPointerTypeEXT@.
  -> GLsizei -- ^ @stride@.
  -> Ptr a -- ^ @pointer@ pointing to @COMPSIZE(type,stride)@ elements of type @a@.
  -> IO ()
glVertexWeightPointerEXT = dyn_glVertexWeightPointerEXT ptr_glVertexWeightPointerEXT

foreign import CALLCONV "dynamic" dyn_glVertexWeightPointerEXT
  :: FunPtr (GLint -> GLenum -> GLsizei -> Ptr a -> IO ())
  ->         GLint -> GLenum -> GLsizei -> Ptr a -> IO ()

{-# NOINLINE ptr_glVertexWeightPointerEXT #-}
ptr_glVertexWeightPointerEXT :: FunPtr (GLint -> GLenum -> GLsizei -> Ptr a -> IO ())
ptr_glVertexWeightPointerEXT = unsafePerformIO $ getCommand "glVertexWeightPointerEXT"

-- glVertexWeightfEXT ----------------------------------------------------------

glVertexWeightfEXT
  :: GLfloat -- ^ @weight@.
  -> IO ()
glVertexWeightfEXT = dyn_glVertexWeightfEXT ptr_glVertexWeightfEXT

foreign import CALLCONV "dynamic" dyn_glVertexWeightfEXT
  :: FunPtr (GLfloat -> IO ())
  ->         GLfloat -> IO ()

{-# NOINLINE ptr_glVertexWeightfEXT #-}
ptr_glVertexWeightfEXT :: FunPtr (GLfloat -> IO ())
ptr_glVertexWeightfEXT = unsafePerformIO $ getCommand "glVertexWeightfEXT"

-- glVertexWeightfvEXT ---------------------------------------------------------

glVertexWeightfvEXT
  :: Ptr GLfloat -- ^ @weight@ pointing to @1@ elements of type @GLfloat@.
  -> IO ()
glVertexWeightfvEXT = dyn_glVertexWeightfvEXT ptr_glVertexWeightfvEXT

foreign import CALLCONV "dynamic" dyn_glVertexWeightfvEXT
  :: FunPtr (Ptr GLfloat -> IO ())
  ->         Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glVertexWeightfvEXT #-}
ptr_glVertexWeightfvEXT :: FunPtr (Ptr GLfloat -> IO ())
ptr_glVertexWeightfvEXT = unsafePerformIO $ getCommand "glVertexWeightfvEXT"

-- glVertexWeighthNV -----------------------------------------------------------

glVertexWeighthNV
  :: GLhalfNV -- ^ @weight@ of type @Half16NV@.
  -> IO ()
glVertexWeighthNV = dyn_glVertexWeighthNV ptr_glVertexWeighthNV

foreign import CALLCONV "dynamic" dyn_glVertexWeighthNV
  :: FunPtr (GLhalfNV -> IO ())
  ->         GLhalfNV -> IO ()

{-# NOINLINE ptr_glVertexWeighthNV #-}
ptr_glVertexWeighthNV :: FunPtr (GLhalfNV -> IO ())
ptr_glVertexWeighthNV = unsafePerformIO $ getCommand "glVertexWeighthNV"

-- glVertexWeighthvNV ----------------------------------------------------------

glVertexWeighthvNV
  :: Ptr GLhalfNV -- ^ @weight@ pointing to @1@ elements of type @Half16NV@.
  -> IO ()
glVertexWeighthvNV = dyn_glVertexWeighthvNV ptr_glVertexWeighthvNV

foreign import CALLCONV "dynamic" dyn_glVertexWeighthvNV
  :: FunPtr (Ptr GLhalfNV -> IO ())
  ->         Ptr GLhalfNV -> IO ()

{-# NOINLINE ptr_glVertexWeighthvNV #-}
ptr_glVertexWeighthvNV :: FunPtr (Ptr GLhalfNV -> IO ())
ptr_glVertexWeighthvNV = unsafePerformIO $ getCommand "glVertexWeighthvNV"

-- glVideoCaptureNV ------------------------------------------------------------

glVideoCaptureNV
  :: GLuint -- ^ @video_capture_slot@.
  -> Ptr GLuint -- ^ @sequence_num@.
  -> Ptr GLuint64EXT -- ^ @capture_time@.
  -> IO GLenum
glVideoCaptureNV = dyn_glVideoCaptureNV ptr_glVideoCaptureNV

foreign import CALLCONV "dynamic" dyn_glVideoCaptureNV
  :: FunPtr (GLuint -> Ptr GLuint -> Ptr GLuint64EXT -> IO GLenum)
  ->         GLuint -> Ptr GLuint -> Ptr GLuint64EXT -> IO GLenum

{-# NOINLINE ptr_glVideoCaptureNV #-}
ptr_glVideoCaptureNV :: FunPtr (GLuint -> Ptr GLuint -> Ptr GLuint64EXT -> IO GLenum)
ptr_glVideoCaptureNV = unsafePerformIO $ getCommand "glVideoCaptureNV"

-- glVideoCaptureStreamParameterdvNV -------------------------------------------

glVideoCaptureStreamParameterdvNV
  :: GLuint -- ^ @video_capture_slot@.
  -> GLuint -- ^ @stream@.
  -> GLenum -- ^ @pname@.
  -> Ptr GLdouble -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLdouble@.
  -> IO ()
glVideoCaptureStreamParameterdvNV = dyn_glVideoCaptureStreamParameterdvNV ptr_glVideoCaptureStreamParameterdvNV

foreign import CALLCONV "dynamic" dyn_glVideoCaptureStreamParameterdvNV
  :: FunPtr (GLuint -> GLuint -> GLenum -> Ptr GLdouble -> IO ())
  ->         GLuint -> GLuint -> GLenum -> Ptr GLdouble -> IO ()

{-# NOINLINE ptr_glVideoCaptureStreamParameterdvNV #-}
ptr_glVideoCaptureStreamParameterdvNV :: FunPtr (GLuint -> GLuint -> GLenum -> Ptr GLdouble -> IO ())
ptr_glVideoCaptureStreamParameterdvNV = unsafePerformIO $ getCommand "glVideoCaptureStreamParameterdvNV"

-- glVideoCaptureStreamParameterfvNV -------------------------------------------

glVideoCaptureStreamParameterfvNV
  :: GLuint -- ^ @video_capture_slot@.
  -> GLuint -- ^ @stream@.
  -> GLenum -- ^ @pname@.
  -> Ptr GLfloat -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLfloat@.
  -> IO ()
glVideoCaptureStreamParameterfvNV = dyn_glVideoCaptureStreamParameterfvNV ptr_glVideoCaptureStreamParameterfvNV

foreign import CALLCONV "dynamic" dyn_glVideoCaptureStreamParameterfvNV
  :: FunPtr (GLuint -> GLuint -> GLenum -> Ptr GLfloat -> IO ())
  ->         GLuint -> GLuint -> GLenum -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glVideoCaptureStreamParameterfvNV #-}
ptr_glVideoCaptureStreamParameterfvNV :: FunPtr (GLuint -> GLuint -> GLenum -> Ptr GLfloat -> IO ())
ptr_glVideoCaptureStreamParameterfvNV = unsafePerformIO $ getCommand "glVideoCaptureStreamParameterfvNV"

-- glVideoCaptureStreamParameterivNV -------------------------------------------

glVideoCaptureStreamParameterivNV
  :: GLuint -- ^ @video_capture_slot@.
  -> GLuint -- ^ @stream@.
  -> GLenum -- ^ @pname@.
  -> Ptr GLint -- ^ @params@ pointing to @COMPSIZE(pname)@ elements of type @GLint@.
  -> IO ()
glVideoCaptureStreamParameterivNV = dyn_glVideoCaptureStreamParameterivNV ptr_glVideoCaptureStreamParameterivNV

foreign import CALLCONV "dynamic" dyn_glVideoCaptureStreamParameterivNV
  :: FunPtr (GLuint -> GLuint -> GLenum -> Ptr GLint -> IO ())
  ->         GLuint -> GLuint -> GLenum -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glVideoCaptureStreamParameterivNV #-}
ptr_glVideoCaptureStreamParameterivNV :: FunPtr (GLuint -> GLuint -> GLenum -> Ptr GLint -> IO ())
ptr_glVideoCaptureStreamParameterivNV = unsafePerformIO $ getCommand "glVideoCaptureStreamParameterivNV"

-- glViewport ------------------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man2/xhtml/glViewport.xml OpenGL 2.x> or <https://www.opengl.org/sdk/docs/man3/xhtml/glViewport.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glViewport.xhtml OpenGL 4.x>
glViewport
  :: GLint -- ^ @x@ of type @WinCoord@.
  -> GLint -- ^ @y@ of type @WinCoord@.
  -> GLsizei -- ^ @width@.
  -> GLsizei -- ^ @height@.
  -> IO ()
glViewport = dyn_glViewport ptr_glViewport

foreign import CALLCONV "dynamic" dyn_glViewport
  :: FunPtr (GLint -> GLint -> GLsizei -> GLsizei -> IO ())
  ->         GLint -> GLint -> GLsizei -> GLsizei -> IO ()

{-# NOINLINE ptr_glViewport #-}
ptr_glViewport :: FunPtr (GLint -> GLint -> GLsizei -> GLsizei -> IO ())
ptr_glViewport = unsafePerformIO $ getCommand "glViewport"

-- glViewportArrayv ------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glViewportArray.xhtml OpenGL 4.x>
glViewportArrayv
  :: GLuint -- ^ @first@.
  -> GLsizei -- ^ @count@.
  -> Ptr GLfloat -- ^ @v@ pointing to @COMPSIZE(count)@ elements of type @GLfloat@.
  -> IO ()
glViewportArrayv = dyn_glViewportArrayv ptr_glViewportArrayv

foreign import CALLCONV "dynamic" dyn_glViewportArrayv
  :: FunPtr (GLuint -> GLsizei -> Ptr GLfloat -> IO ())
  ->         GLuint -> GLsizei -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glViewportArrayv #-}
ptr_glViewportArrayv :: FunPtr (GLuint -> GLsizei -> Ptr GLfloat -> IO ())
ptr_glViewportArrayv = unsafePerformIO $ getCommand "glViewportArrayv"

-- glViewportArrayvNV ----------------------------------------------------------

glViewportArrayvNV
  :: GLuint -- ^ @first@.
  -> GLsizei -- ^ @count@.
  -> Ptr GLfloat -- ^ @v@ pointing to @COMPSIZE(count)@ elements of type @GLfloat@.
  -> IO ()
glViewportArrayvNV = dyn_glViewportArrayvNV ptr_glViewportArrayvNV

foreign import CALLCONV "dynamic" dyn_glViewportArrayvNV
  :: FunPtr (GLuint -> GLsizei -> Ptr GLfloat -> IO ())
  ->         GLuint -> GLsizei -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glViewportArrayvNV #-}
ptr_glViewportArrayvNV :: FunPtr (GLuint -> GLsizei -> Ptr GLfloat -> IO ())
ptr_glViewportArrayvNV = unsafePerformIO $ getCommand "glViewportArrayvNV"

-- glViewportIndexedf ----------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glViewportIndexed.xhtml OpenGL 4.x>
glViewportIndexedf
  :: GLuint -- ^ @index@.
  -> GLfloat -- ^ @x@.
  -> GLfloat -- ^ @y@.
  -> GLfloat -- ^ @w@.
  -> GLfloat -- ^ @h@.
  -> IO ()
glViewportIndexedf = dyn_glViewportIndexedf ptr_glViewportIndexedf

foreign import CALLCONV "dynamic" dyn_glViewportIndexedf
  :: FunPtr (GLuint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
  ->         GLuint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ()

{-# NOINLINE ptr_glViewportIndexedf #-}
ptr_glViewportIndexedf :: FunPtr (GLuint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
ptr_glViewportIndexedf = unsafePerformIO $ getCommand "glViewportIndexedf"

-- glViewportIndexedfNV --------------------------------------------------------

glViewportIndexedfNV
  :: GLuint -- ^ @index@.
  -> GLfloat -- ^ @x@.
  -> GLfloat -- ^ @y@.
  -> GLfloat -- ^ @w@.
  -> GLfloat -- ^ @h@.
  -> IO ()
glViewportIndexedfNV = dyn_glViewportIndexedfNV ptr_glViewportIndexedfNV

foreign import CALLCONV "dynamic" dyn_glViewportIndexedfNV
  :: FunPtr (GLuint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
  ->         GLuint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ()

{-# NOINLINE ptr_glViewportIndexedfNV #-}
ptr_glViewportIndexedfNV :: FunPtr (GLuint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
ptr_glViewportIndexedfNV = unsafePerformIO $ getCommand "glViewportIndexedfNV"

-- glViewportIndexedfv ---------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man4/html/glViewportIndexed.xhtml OpenGL 4.x>
glViewportIndexedfv
  :: GLuint -- ^ @index@.
  -> Ptr GLfloat -- ^ @v@ pointing to @4@ elements of type @GLfloat@.
  -> IO ()
glViewportIndexedfv = dyn_glViewportIndexedfv ptr_glViewportIndexedfv

foreign import CALLCONV "dynamic" dyn_glViewportIndexedfv
  :: FunPtr (GLuint -> Ptr GLfloat -> IO ())
  ->         GLuint -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glViewportIndexedfv #-}
ptr_glViewportIndexedfv :: FunPtr (GLuint -> Ptr GLfloat -> IO ())
ptr_glViewportIndexedfv = unsafePerformIO $ getCommand "glViewportIndexedfv"

-- glViewportIndexedfvNV -------------------------------------------------------

glViewportIndexedfvNV
  :: GLuint -- ^ @index@.
  -> Ptr GLfloat -- ^ @v@ pointing to @4@ elements of type @GLfloat@.
  -> IO ()
glViewportIndexedfvNV = dyn_glViewportIndexedfvNV ptr_glViewportIndexedfvNV

foreign import CALLCONV "dynamic" dyn_glViewportIndexedfvNV
  :: FunPtr (GLuint -> Ptr GLfloat -> IO ())
  ->         GLuint -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glViewportIndexedfvNV #-}
ptr_glViewportIndexedfvNV :: FunPtr (GLuint -> Ptr GLfloat -> IO ())
ptr_glViewportIndexedfvNV = unsafePerformIO $ getCommand "glViewportIndexedfvNV"

-- glWaitSync ------------------------------------------------------------------

-- | Manual pages for <https://www.opengl.org/sdk/docs/man3/xhtml/glWaitSync.xml OpenGL 3.x> or <https://www.opengl.org/sdk/docs/man4/html/glWaitSync.xhtml OpenGL 4.x>
glWaitSync
  :: GLsync -- ^ @sync@ of type @sync@.
  -> GLbitfield -- ^ @flags@.
  -> GLuint64 -- ^ @timeout@.
  -> IO ()
glWaitSync = dyn_glWaitSync ptr_glWaitSync

foreign import CALLCONV "dynamic" dyn_glWaitSync
  :: FunPtr (GLsync -> GLbitfield -> GLuint64 -> IO ())
  ->         GLsync -> GLbitfield -> GLuint64 -> IO ()

{-# NOINLINE ptr_glWaitSync #-}
ptr_glWaitSync :: FunPtr (GLsync -> GLbitfield -> GLuint64 -> IO ())
ptr_glWaitSync = unsafePerformIO $ getCommand "glWaitSync"

-- glWaitSyncAPPLE -------------------------------------------------------------

glWaitSyncAPPLE
  :: GLsync -- ^ @sync@.
  -> GLbitfield -- ^ @flags@.
  -> GLuint64 -- ^ @timeout@.
  -> IO ()
glWaitSyncAPPLE = dyn_glWaitSyncAPPLE ptr_glWaitSyncAPPLE

foreign import CALLCONV "dynamic" dyn_glWaitSyncAPPLE
  :: FunPtr (GLsync -> GLbitfield -> GLuint64 -> IO ())
  ->         GLsync -> GLbitfield -> GLuint64 -> IO ()

{-# NOINLINE ptr_glWaitSyncAPPLE #-}
ptr_glWaitSyncAPPLE :: FunPtr (GLsync -> GLbitfield -> GLuint64 -> IO ())
ptr_glWaitSyncAPPLE = unsafePerformIO $ getCommand "glWaitSyncAPPLE"

-- glWeightPathsNV -------------------------------------------------------------

glWeightPathsNV
  :: GLuint -- ^ @resultPath@ of type @Path@.
  -> GLsizei -- ^ @numPaths@.
  -> Ptr GLuint -- ^ @paths@ pointing to @numPaths@ elements of type @Path@.
  -> Ptr GLfloat -- ^ @weights@ pointing to @numPaths@ elements of type @GLfloat@.
  -> IO ()
glWeightPathsNV = dyn_glWeightPathsNV ptr_glWeightPathsNV

foreign import CALLCONV "dynamic" dyn_glWeightPathsNV
  :: FunPtr (GLuint -> GLsizei -> Ptr GLuint -> Ptr GLfloat -> IO ())
  ->         GLuint -> GLsizei -> Ptr GLuint -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glWeightPathsNV #-}
ptr_glWeightPathsNV :: FunPtr (GLuint -> GLsizei -> Ptr GLuint -> Ptr GLfloat -> IO ())
ptr_glWeightPathsNV = unsafePerformIO $ getCommand "glWeightPathsNV"

-- glWeightPointerARB ----------------------------------------------------------

glWeightPointerARB
  :: GLint -- ^ @size@.
  -> GLenum -- ^ @type@ of type @WeightPointerTypeARB@.
  -> GLsizei -- ^ @stride@.
  -> Ptr a -- ^ @pointer@ pointing to @COMPSIZE(type,stride)@ elements of type @a@.
  -> IO ()
glWeightPointerARB = dyn_glWeightPointerARB ptr_glWeightPointerARB

foreign import CALLCONV "dynamic" dyn_glWeightPointerARB
  :: FunPtr (GLint -> GLenum -> GLsizei -> Ptr a -> IO ())
  ->         GLint -> GLenum -> GLsizei -> Ptr a -> IO ()

{-# NOINLINE ptr_glWeightPointerARB #-}
ptr_glWeightPointerARB :: FunPtr (GLint -> GLenum -> GLsizei -> Ptr a -> IO ())
ptr_glWeightPointerARB = unsafePerformIO $ getCommand "glWeightPointerARB"

-- glWeightPointerOES ----------------------------------------------------------

glWeightPointerOES
  :: GLint -- ^ @size@.
  -> GLenum -- ^ @type@.
  -> GLsizei -- ^ @stride@.
  -> Ptr a -- ^ @pointer@ pointing to @COMPSIZE(type,stride)@ elements of type @a@.
  -> IO ()
glWeightPointerOES = dyn_glWeightPointerOES ptr_glWeightPointerOES

foreign import CALLCONV "dynamic" dyn_glWeightPointerOES
  :: FunPtr (GLint -> GLenum -> GLsizei -> Ptr a -> IO ())
  ->         GLint -> GLenum -> GLsizei -> Ptr a -> IO ()

{-# NOINLINE ptr_glWeightPointerOES #-}
ptr_glWeightPointerOES :: FunPtr (GLint -> GLenum -> GLsizei -> Ptr a -> IO ())
ptr_glWeightPointerOES = unsafePerformIO $ getCommand "glWeightPointerOES"

-- glWeightbvARB ---------------------------------------------------------------

glWeightbvARB
  :: GLint -- ^ @size@.
  -> Ptr GLbyte -- ^ @weights@ pointing to @size@ elements of type @GLbyte@.
  -> IO ()
glWeightbvARB = dyn_glWeightbvARB ptr_glWeightbvARB

foreign import CALLCONV "dynamic" dyn_glWeightbvARB
  :: FunPtr (GLint -> Ptr GLbyte -> IO ())
  ->         GLint -> Ptr GLbyte -> IO ()

{-# NOINLINE ptr_glWeightbvARB #-}
ptr_glWeightbvARB :: FunPtr (GLint -> Ptr GLbyte -> IO ())
ptr_glWeightbvARB = unsafePerformIO $ getCommand "glWeightbvARB"

-- glWeightdvARB ---------------------------------------------------------------

glWeightdvARB
  :: GLint -- ^ @size@.
  -> Ptr GLdouble -- ^ @weights@ pointing to @size@ elements of type @GLdouble@.
  -> IO ()
glWeightdvARB = dyn_glWeightdvARB ptr_glWeightdvARB

foreign import CALLCONV "dynamic" dyn_glWeightdvARB
  :: FunPtr (GLint -> Ptr GLdouble -> IO ())
  ->         GLint -> Ptr GLdouble -> IO ()

{-# NOINLINE ptr_glWeightdvARB #-}
ptr_glWeightdvARB :: FunPtr (GLint -> Ptr GLdouble -> IO ())
ptr_glWeightdvARB = unsafePerformIO $ getCommand "glWeightdvARB"

-- glWeightfvARB ---------------------------------------------------------------

glWeightfvARB
  :: GLint -- ^ @size@.
  -> Ptr GLfloat -- ^ @weights@ pointing to @size@ elements of type @GLfloat@.
  -> IO ()
glWeightfvARB = dyn_glWeightfvARB ptr_glWeightfvARB

foreign import CALLCONV "dynamic" dyn_glWeightfvARB
  :: FunPtr (GLint -> Ptr GLfloat -> IO ())
  ->         GLint -> Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glWeightfvARB #-}
ptr_glWeightfvARB :: FunPtr (GLint -> Ptr GLfloat -> IO ())
ptr_glWeightfvARB = unsafePerformIO $ getCommand "glWeightfvARB"

-- glWeightivARB ---------------------------------------------------------------

glWeightivARB
  :: GLint -- ^ @size@.
  -> Ptr GLint -- ^ @weights@ pointing to @size@ elements of type @GLint@.
  -> IO ()
glWeightivARB = dyn_glWeightivARB ptr_glWeightivARB

foreign import CALLCONV "dynamic" dyn_glWeightivARB
  :: FunPtr (GLint -> Ptr GLint -> IO ())
  ->         GLint -> Ptr GLint -> IO ()

{-# NOINLINE ptr_glWeightivARB #-}
ptr_glWeightivARB :: FunPtr (GLint -> Ptr GLint -> IO ())
ptr_glWeightivARB = unsafePerformIO $ getCommand "glWeightivARB"

-- glWeightsvARB ---------------------------------------------------------------

glWeightsvARB
  :: GLint -- ^ @size@.
  -> Ptr GLshort -- ^ @weights@ pointing to @size@ elements of type @GLshort@.
  -> IO ()
glWeightsvARB = dyn_glWeightsvARB ptr_glWeightsvARB

foreign import CALLCONV "dynamic" dyn_glWeightsvARB
  :: FunPtr (GLint -> Ptr GLshort -> IO ())
  ->         GLint -> Ptr GLshort -> IO ()

{-# NOINLINE ptr_glWeightsvARB #-}
ptr_glWeightsvARB :: FunPtr (GLint -> Ptr GLshort -> IO ())
ptr_glWeightsvARB = unsafePerformIO $ getCommand "glWeightsvARB"

-- glWeightubvARB --------------------------------------------------------------

glWeightubvARB
  :: GLint -- ^ @size@.
  -> Ptr GLubyte -- ^ @weights@ pointing to @size@ elements of type @GLubyte@.
  -> IO ()
glWeightubvARB = dyn_glWeightubvARB ptr_glWeightubvARB

foreign import CALLCONV "dynamic" dyn_glWeightubvARB
  :: FunPtr (GLint -> Ptr GLubyte -> IO ())
  ->         GLint -> Ptr GLubyte -> IO ()

{-# NOINLINE ptr_glWeightubvARB #-}
ptr_glWeightubvARB :: FunPtr (GLint -> Ptr GLubyte -> IO ())
ptr_glWeightubvARB = unsafePerformIO $ getCommand "glWeightubvARB"

-- glWeightuivARB --------------------------------------------------------------

glWeightuivARB
  :: GLint -- ^ @size@.
  -> Ptr GLuint -- ^ @weights@ pointing to @size@ elements of type @GLuint@.
  -> IO ()
glWeightuivARB = dyn_glWeightuivARB ptr_glWeightuivARB

foreign import CALLCONV "dynamic" dyn_glWeightuivARB
  :: FunPtr (GLint -> Ptr GLuint -> IO ())
  ->         GLint -> Ptr GLuint -> IO ()

{-# NOINLINE ptr_glWeightuivARB #-}
ptr_glWeightuivARB :: FunPtr (GLint -> Ptr GLuint -> IO ())
ptr_glWeightuivARB = unsafePerformIO $ getCommand "glWeightuivARB"

-- glWeightusvARB --------------------------------------------------------------

glWeightusvARB
  :: GLint -- ^ @size@.
  -> Ptr GLushort -- ^ @weights@ pointing to @size@ elements of type @GLushort@.
  -> IO ()
glWeightusvARB = dyn_glWeightusvARB ptr_glWeightusvARB

foreign import CALLCONV "dynamic" dyn_glWeightusvARB
  :: FunPtr (GLint -> Ptr GLushort -> IO ())
  ->         GLint -> Ptr GLushort -> IO ()

{-# NOINLINE ptr_glWeightusvARB #-}
ptr_glWeightusvARB :: FunPtr (GLint -> Ptr GLushort -> IO ())
ptr_glWeightusvARB = unsafePerformIO $ getCommand "glWeightusvARB"

-- glWindowPos2d ---------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glWindowPos.xml OpenGL 2.x>
glWindowPos2d
  :: GLdouble -- ^ @x@ of type @CoordD@.
  -> GLdouble -- ^ @y@ of type @CoordD@.
  -> IO ()
glWindowPos2d = dyn_glWindowPos2d ptr_glWindowPos2d

foreign import CALLCONV "dynamic" dyn_glWindowPos2d
  :: FunPtr (GLdouble -> GLdouble -> IO ())
  ->         GLdouble -> GLdouble -> IO ()

{-# NOINLINE ptr_glWindowPos2d #-}
ptr_glWindowPos2d :: FunPtr (GLdouble -> GLdouble -> IO ())
ptr_glWindowPos2d = unsafePerformIO $ getCommand "glWindowPos2d"

-- glWindowPos2dARB ------------------------------------------------------------

glWindowPos2dARB
  :: GLdouble -- ^ @x@ of type @CoordD@.
  -> GLdouble -- ^ @y@ of type @CoordD@.
  -> IO ()
glWindowPos2dARB = dyn_glWindowPos2dARB ptr_glWindowPos2dARB

foreign import CALLCONV "dynamic" dyn_glWindowPos2dARB
  :: FunPtr (GLdouble -> GLdouble -> IO ())
  ->         GLdouble -> GLdouble -> IO ()

{-# NOINLINE ptr_glWindowPos2dARB #-}
ptr_glWindowPos2dARB :: FunPtr (GLdouble -> GLdouble -> IO ())
ptr_glWindowPos2dARB = unsafePerformIO $ getCommand "glWindowPos2dARB"

-- glWindowPos2dMESA -----------------------------------------------------------

glWindowPos2dMESA
  :: GLdouble -- ^ @x@ of type @CoordD@.
  -> GLdouble -- ^ @y@ of type @CoordD@.
  -> IO ()
glWindowPos2dMESA = dyn_glWindowPos2dMESA ptr_glWindowPos2dMESA

foreign import CALLCONV "dynamic" dyn_glWindowPos2dMESA
  :: FunPtr (GLdouble -> GLdouble -> IO ())
  ->         GLdouble -> GLdouble -> IO ()

{-# NOINLINE ptr_glWindowPos2dMESA #-}
ptr_glWindowPos2dMESA :: FunPtr (GLdouble -> GLdouble -> IO ())
ptr_glWindowPos2dMESA = unsafePerformIO $ getCommand "glWindowPos2dMESA"

-- glWindowPos2dv --------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glWindowPos.xml OpenGL 2.x>
glWindowPos2dv
  :: Ptr GLdouble -- ^ @v@ pointing to @2@ elements of type @CoordD@.
  -> IO ()
glWindowPos2dv = dyn_glWindowPos2dv ptr_glWindowPos2dv

foreign import CALLCONV "dynamic" dyn_glWindowPos2dv
  :: FunPtr (Ptr GLdouble -> IO ())
  ->         Ptr GLdouble -> IO ()

{-# NOINLINE ptr_glWindowPos2dv #-}
ptr_glWindowPos2dv :: FunPtr (Ptr GLdouble -> IO ())
ptr_glWindowPos2dv = unsafePerformIO $ getCommand "glWindowPos2dv"

-- glWindowPos2dvARB -----------------------------------------------------------

glWindowPos2dvARB
  :: Ptr GLdouble -- ^ @v@ pointing to @2@ elements of type @CoordD@.
  -> IO ()
glWindowPos2dvARB = dyn_glWindowPos2dvARB ptr_glWindowPos2dvARB

foreign import CALLCONV "dynamic" dyn_glWindowPos2dvARB
  :: FunPtr (Ptr GLdouble -> IO ())
  ->         Ptr GLdouble -> IO ()

{-# NOINLINE ptr_glWindowPos2dvARB #-}
ptr_glWindowPos2dvARB :: FunPtr (Ptr GLdouble -> IO ())
ptr_glWindowPos2dvARB = unsafePerformIO $ getCommand "glWindowPos2dvARB"

-- glWindowPos2dvMESA ----------------------------------------------------------

glWindowPos2dvMESA
  :: Ptr GLdouble -- ^ @v@ pointing to @2@ elements of type @CoordD@.
  -> IO ()
glWindowPos2dvMESA = dyn_glWindowPos2dvMESA ptr_glWindowPos2dvMESA

foreign import CALLCONV "dynamic" dyn_glWindowPos2dvMESA
  :: FunPtr (Ptr GLdouble -> IO ())
  ->         Ptr GLdouble -> IO ()

{-# NOINLINE ptr_glWindowPos2dvMESA #-}
ptr_glWindowPos2dvMESA :: FunPtr (Ptr GLdouble -> IO ())
ptr_glWindowPos2dvMESA = unsafePerformIO $ getCommand "glWindowPos2dvMESA"

-- glWindowPos2f ---------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glWindowPos.xml OpenGL 2.x>
glWindowPos2f
  :: GLfloat -- ^ @x@ of type @CoordF@.
  -> GLfloat -- ^ @y@ of type @CoordF@.
  -> IO ()
glWindowPos2f = dyn_glWindowPos2f ptr_glWindowPos2f

foreign import CALLCONV "dynamic" dyn_glWindowPos2f
  :: FunPtr (GLfloat -> GLfloat -> IO ())
  ->         GLfloat -> GLfloat -> IO ()

{-# NOINLINE ptr_glWindowPos2f #-}
ptr_glWindowPos2f :: FunPtr (GLfloat -> GLfloat -> IO ())
ptr_glWindowPos2f = unsafePerformIO $ getCommand "glWindowPos2f"

-- glWindowPos2fARB ------------------------------------------------------------

glWindowPos2fARB
  :: GLfloat -- ^ @x@ of type @CoordF@.
  -> GLfloat -- ^ @y@ of type @CoordF@.
  -> IO ()
glWindowPos2fARB = dyn_glWindowPos2fARB ptr_glWindowPos2fARB

foreign import CALLCONV "dynamic" dyn_glWindowPos2fARB
  :: FunPtr (GLfloat -> GLfloat -> IO ())
  ->         GLfloat -> GLfloat -> IO ()

{-# NOINLINE ptr_glWindowPos2fARB #-}
ptr_glWindowPos2fARB :: FunPtr (GLfloat -> GLfloat -> IO ())
ptr_glWindowPos2fARB = unsafePerformIO $ getCommand "glWindowPos2fARB"

-- glWindowPos2fMESA -----------------------------------------------------------

glWindowPos2fMESA
  :: GLfloat -- ^ @x@ of type @CoordF@.
  -> GLfloat -- ^ @y@ of type @CoordF@.
  -> IO ()
glWindowPos2fMESA = dyn_glWindowPos2fMESA ptr_glWindowPos2fMESA

foreign import CALLCONV "dynamic" dyn_glWindowPos2fMESA
  :: FunPtr (GLfloat -> GLfloat -> IO ())
  ->         GLfloat -> GLfloat -> IO ()

{-# NOINLINE ptr_glWindowPos2fMESA #-}
ptr_glWindowPos2fMESA :: FunPtr (GLfloat -> GLfloat -> IO ())
ptr_glWindowPos2fMESA = unsafePerformIO $ getCommand "glWindowPos2fMESA"

-- glWindowPos2fv --------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glWindowPos.xml OpenGL 2.x>
glWindowPos2fv
  :: Ptr GLfloat -- ^ @v@ pointing to @2@ elements of type @CoordF@.
  -> IO ()
glWindowPos2fv = dyn_glWindowPos2fv ptr_glWindowPos2fv

foreign import CALLCONV "dynamic" dyn_glWindowPos2fv
  :: FunPtr (Ptr GLfloat -> IO ())
  ->         Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glWindowPos2fv #-}
ptr_glWindowPos2fv :: FunPtr (Ptr GLfloat -> IO ())
ptr_glWindowPos2fv = unsafePerformIO $ getCommand "glWindowPos2fv"

-- glWindowPos2fvARB -----------------------------------------------------------

glWindowPos2fvARB
  :: Ptr GLfloat -- ^ @v@ pointing to @2@ elements of type @CoordF@.
  -> IO ()
glWindowPos2fvARB = dyn_glWindowPos2fvARB ptr_glWindowPos2fvARB

foreign import CALLCONV "dynamic" dyn_glWindowPos2fvARB
  :: FunPtr (Ptr GLfloat -> IO ())
  ->         Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glWindowPos2fvARB #-}
ptr_glWindowPos2fvARB :: FunPtr (Ptr GLfloat -> IO ())
ptr_glWindowPos2fvARB = unsafePerformIO $ getCommand "glWindowPos2fvARB"

-- glWindowPos2fvMESA ----------------------------------------------------------

glWindowPos2fvMESA
  :: Ptr GLfloat -- ^ @v@ pointing to @2@ elements of type @CoordF@.
  -> IO ()
glWindowPos2fvMESA = dyn_glWindowPos2fvMESA ptr_glWindowPos2fvMESA

foreign import CALLCONV "dynamic" dyn_glWindowPos2fvMESA
  :: FunPtr (Ptr GLfloat -> IO ())
  ->         Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glWindowPos2fvMESA #-}
ptr_glWindowPos2fvMESA :: FunPtr (Ptr GLfloat -> IO ())
ptr_glWindowPos2fvMESA = unsafePerformIO $ getCommand "glWindowPos2fvMESA"

-- glWindowPos2i ---------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glWindowPos.xml OpenGL 2.x>
glWindowPos2i
  :: GLint -- ^ @x@ of type @CoordI@.
  -> GLint -- ^ @y@ of type @CoordI@.
  -> IO ()
glWindowPos2i = dyn_glWindowPos2i ptr_glWindowPos2i

foreign import CALLCONV "dynamic" dyn_glWindowPos2i
  :: FunPtr (GLint -> GLint -> IO ())
  ->         GLint -> GLint -> IO ()

{-# NOINLINE ptr_glWindowPos2i #-}
ptr_glWindowPos2i :: FunPtr (GLint -> GLint -> IO ())
ptr_glWindowPos2i = unsafePerformIO $ getCommand "glWindowPos2i"

-- glWindowPos2iARB ------------------------------------------------------------

glWindowPos2iARB
  :: GLint -- ^ @x@ of type @CoordI@.
  -> GLint -- ^ @y@ of type @CoordI@.
  -> IO ()
glWindowPos2iARB = dyn_glWindowPos2iARB ptr_glWindowPos2iARB

foreign import CALLCONV "dynamic" dyn_glWindowPos2iARB
  :: FunPtr (GLint -> GLint -> IO ())
  ->         GLint -> GLint -> IO ()

{-# NOINLINE ptr_glWindowPos2iARB #-}
ptr_glWindowPos2iARB :: FunPtr (GLint -> GLint -> IO ())
ptr_glWindowPos2iARB = unsafePerformIO $ getCommand "glWindowPos2iARB"

-- glWindowPos2iMESA -----------------------------------------------------------

glWindowPos2iMESA
  :: GLint -- ^ @x@ of type @CoordI@.
  -> GLint -- ^ @y@ of type @CoordI@.
  -> IO ()
glWindowPos2iMESA = dyn_glWindowPos2iMESA ptr_glWindowPos2iMESA

foreign import CALLCONV "dynamic" dyn_glWindowPos2iMESA
  :: FunPtr (GLint -> GLint -> IO ())
  ->         GLint -> GLint -> IO ()

{-# NOINLINE ptr_glWindowPos2iMESA #-}
ptr_glWindowPos2iMESA :: FunPtr (GLint -> GLint -> IO ())
ptr_glWindowPos2iMESA = unsafePerformIO $ getCommand "glWindowPos2iMESA"

-- glWindowPos2iv --------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glWindowPos.xml OpenGL 2.x>
glWindowPos2iv
  :: Ptr GLint -- ^ @v@ pointing to @2@ elements of type @CoordI@.
  -> IO ()
glWindowPos2iv = dyn_glWindowPos2iv ptr_glWindowPos2iv

foreign import CALLCONV "dynamic" dyn_glWindowPos2iv
  :: FunPtr (Ptr GLint -> IO ())
  ->         Ptr GLint -> IO ()

{-# NOINLINE ptr_glWindowPos2iv #-}
ptr_glWindowPos2iv :: FunPtr (Ptr GLint -> IO ())
ptr_glWindowPos2iv = unsafePerformIO $ getCommand "glWindowPos2iv"

-- glWindowPos2ivARB -----------------------------------------------------------

glWindowPos2ivARB
  :: Ptr GLint -- ^ @v@ pointing to @2@ elements of type @CoordI@.
  -> IO ()
glWindowPos2ivARB = dyn_glWindowPos2ivARB ptr_glWindowPos2ivARB

foreign import CALLCONV "dynamic" dyn_glWindowPos2ivARB
  :: FunPtr (Ptr GLint -> IO ())
  ->         Ptr GLint -> IO ()

{-# NOINLINE ptr_glWindowPos2ivARB #-}
ptr_glWindowPos2ivARB :: FunPtr (Ptr GLint -> IO ())
ptr_glWindowPos2ivARB = unsafePerformIO $ getCommand "glWindowPos2ivARB"

-- glWindowPos2ivMESA ----------------------------------------------------------

glWindowPos2ivMESA
  :: Ptr GLint -- ^ @v@ pointing to @2@ elements of type @CoordI@.
  -> IO ()
glWindowPos2ivMESA = dyn_glWindowPos2ivMESA ptr_glWindowPos2ivMESA

foreign import CALLCONV "dynamic" dyn_glWindowPos2ivMESA
  :: FunPtr (Ptr GLint -> IO ())
  ->         Ptr GLint -> IO ()

{-# NOINLINE ptr_glWindowPos2ivMESA #-}
ptr_glWindowPos2ivMESA :: FunPtr (Ptr GLint -> IO ())
ptr_glWindowPos2ivMESA = unsafePerformIO $ getCommand "glWindowPos2ivMESA"

-- glWindowPos2s ---------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glWindowPos.xml OpenGL 2.x>
glWindowPos2s
  :: GLshort -- ^ @x@ of type @CoordS@.
  -> GLshort -- ^ @y@ of type @CoordS@.
  -> IO ()
glWindowPos2s = dyn_glWindowPos2s ptr_glWindowPos2s

foreign import CALLCONV "dynamic" dyn_glWindowPos2s
  :: FunPtr (GLshort -> GLshort -> IO ())
  ->         GLshort -> GLshort -> IO ()

{-# NOINLINE ptr_glWindowPos2s #-}
ptr_glWindowPos2s :: FunPtr (GLshort -> GLshort -> IO ())
ptr_glWindowPos2s = unsafePerformIO $ getCommand "glWindowPos2s"

-- glWindowPos2sARB ------------------------------------------------------------

glWindowPos2sARB
  :: GLshort -- ^ @x@ of type @CoordS@.
  -> GLshort -- ^ @y@ of type @CoordS@.
  -> IO ()
glWindowPos2sARB = dyn_glWindowPos2sARB ptr_glWindowPos2sARB

foreign import CALLCONV "dynamic" dyn_glWindowPos2sARB
  :: FunPtr (GLshort -> GLshort -> IO ())
  ->         GLshort -> GLshort -> IO ()

{-# NOINLINE ptr_glWindowPos2sARB #-}
ptr_glWindowPos2sARB :: FunPtr (GLshort -> GLshort -> IO ())
ptr_glWindowPos2sARB = unsafePerformIO $ getCommand "glWindowPos2sARB"

-- glWindowPos2sMESA -----------------------------------------------------------

glWindowPos2sMESA
  :: GLshort -- ^ @x@ of type @CoordS@.
  -> GLshort -- ^ @y@ of type @CoordS@.
  -> IO ()
glWindowPos2sMESA = dyn_glWindowPos2sMESA ptr_glWindowPos2sMESA

foreign import CALLCONV "dynamic" dyn_glWindowPos2sMESA
  :: FunPtr (GLshort -> GLshort -> IO ())
  ->         GLshort -> GLshort -> IO ()

{-# NOINLINE ptr_glWindowPos2sMESA #-}
ptr_glWindowPos2sMESA :: FunPtr (GLshort -> GLshort -> IO ())
ptr_glWindowPos2sMESA = unsafePerformIO $ getCommand "glWindowPos2sMESA"

-- glWindowPos2sv --------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glWindowPos.xml OpenGL 2.x>
glWindowPos2sv
  :: Ptr GLshort -- ^ @v@ pointing to @2@ elements of type @CoordS@.
  -> IO ()
glWindowPos2sv = dyn_glWindowPos2sv ptr_glWindowPos2sv

foreign import CALLCONV "dynamic" dyn_glWindowPos2sv
  :: FunPtr (Ptr GLshort -> IO ())
  ->         Ptr GLshort -> IO ()

{-# NOINLINE ptr_glWindowPos2sv #-}
ptr_glWindowPos2sv :: FunPtr (Ptr GLshort -> IO ())
ptr_glWindowPos2sv = unsafePerformIO $ getCommand "glWindowPos2sv"

-- glWindowPos2svARB -----------------------------------------------------------

glWindowPos2svARB
  :: Ptr GLshort -- ^ @v@ pointing to @2@ elements of type @CoordS@.
  -> IO ()
glWindowPos2svARB = dyn_glWindowPos2svARB ptr_glWindowPos2svARB

foreign import CALLCONV "dynamic" dyn_glWindowPos2svARB
  :: FunPtr (Ptr GLshort -> IO ())
  ->         Ptr GLshort -> IO ()

{-# NOINLINE ptr_glWindowPos2svARB #-}
ptr_glWindowPos2svARB :: FunPtr (Ptr GLshort -> IO ())
ptr_glWindowPos2svARB = unsafePerformIO $ getCommand "glWindowPos2svARB"

-- glWindowPos2svMESA ----------------------------------------------------------

glWindowPos2svMESA
  :: Ptr GLshort -- ^ @v@ pointing to @2@ elements of type @CoordS@.
  -> IO ()
glWindowPos2svMESA = dyn_glWindowPos2svMESA ptr_glWindowPos2svMESA

foreign import CALLCONV "dynamic" dyn_glWindowPos2svMESA
  :: FunPtr (Ptr GLshort -> IO ())
  ->         Ptr GLshort -> IO ()

{-# NOINLINE ptr_glWindowPos2svMESA #-}
ptr_glWindowPos2svMESA :: FunPtr (Ptr GLshort -> IO ())
ptr_glWindowPos2svMESA = unsafePerformIO $ getCommand "glWindowPos2svMESA"

-- glWindowPos3d ---------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glWindowPos.xml OpenGL 2.x>
glWindowPos3d
  :: GLdouble -- ^ @x@ of type @CoordD@.
  -> GLdouble -- ^ @y@ of type @CoordD@.
  -> GLdouble -- ^ @z@ of type @CoordD@.
  -> IO ()
glWindowPos3d = dyn_glWindowPos3d ptr_glWindowPos3d

foreign import CALLCONV "dynamic" dyn_glWindowPos3d
  :: FunPtr (GLdouble -> GLdouble -> GLdouble -> IO ())
  ->         GLdouble -> GLdouble -> GLdouble -> IO ()

{-# NOINLINE ptr_glWindowPos3d #-}
ptr_glWindowPos3d :: FunPtr (GLdouble -> GLdouble -> GLdouble -> IO ())
ptr_glWindowPos3d = unsafePerformIO $ getCommand "glWindowPos3d"

-- glWindowPos3dARB ------------------------------------------------------------

glWindowPos3dARB
  :: GLdouble -- ^ @x@ of type @CoordD@.
  -> GLdouble -- ^ @y@ of type @CoordD@.
  -> GLdouble -- ^ @z@ of type @CoordD@.
  -> IO ()
glWindowPos3dARB = dyn_glWindowPos3dARB ptr_glWindowPos3dARB

foreign import CALLCONV "dynamic" dyn_glWindowPos3dARB
  :: FunPtr (GLdouble -> GLdouble -> GLdouble -> IO ())
  ->         GLdouble -> GLdouble -> GLdouble -> IO ()

{-# NOINLINE ptr_glWindowPos3dARB #-}
ptr_glWindowPos3dARB :: FunPtr (GLdouble -> GLdouble -> GLdouble -> IO ())
ptr_glWindowPos3dARB = unsafePerformIO $ getCommand "glWindowPos3dARB"

-- glWindowPos3dMESA -----------------------------------------------------------

glWindowPos3dMESA
  :: GLdouble -- ^ @x@ of type @CoordD@.
  -> GLdouble -- ^ @y@ of type @CoordD@.
  -> GLdouble -- ^ @z@ of type @CoordD@.
  -> IO ()
glWindowPos3dMESA = dyn_glWindowPos3dMESA ptr_glWindowPos3dMESA

foreign import CALLCONV "dynamic" dyn_glWindowPos3dMESA
  :: FunPtr (GLdouble -> GLdouble -> GLdouble -> IO ())
  ->         GLdouble -> GLdouble -> GLdouble -> IO ()

{-# NOINLINE ptr_glWindowPos3dMESA #-}
ptr_glWindowPos3dMESA :: FunPtr (GLdouble -> GLdouble -> GLdouble -> IO ())
ptr_glWindowPos3dMESA = unsafePerformIO $ getCommand "glWindowPos3dMESA"

-- glWindowPos3dv --------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glWindowPos.xml OpenGL 2.x>
glWindowPos3dv
  :: Ptr GLdouble -- ^ @v@ pointing to @3@ elements of type @CoordD@.
  -> IO ()
glWindowPos3dv = dyn_glWindowPos3dv ptr_glWindowPos3dv

foreign import CALLCONV "dynamic" dyn_glWindowPos3dv
  :: FunPtr (Ptr GLdouble -> IO ())
  ->         Ptr GLdouble -> IO ()

{-# NOINLINE ptr_glWindowPos3dv #-}
ptr_glWindowPos3dv :: FunPtr (Ptr GLdouble -> IO ())
ptr_glWindowPos3dv = unsafePerformIO $ getCommand "glWindowPos3dv"

-- glWindowPos3dvARB -----------------------------------------------------------

glWindowPos3dvARB
  :: Ptr GLdouble -- ^ @v@ pointing to @3@ elements of type @CoordD@.
  -> IO ()
glWindowPos3dvARB = dyn_glWindowPos3dvARB ptr_glWindowPos3dvARB

foreign import CALLCONV "dynamic" dyn_glWindowPos3dvARB
  :: FunPtr (Ptr GLdouble -> IO ())
  ->         Ptr GLdouble -> IO ()

{-# NOINLINE ptr_glWindowPos3dvARB #-}
ptr_glWindowPos3dvARB :: FunPtr (Ptr GLdouble -> IO ())
ptr_glWindowPos3dvARB = unsafePerformIO $ getCommand "glWindowPos3dvARB"

-- glWindowPos3dvMESA ----------------------------------------------------------

glWindowPos3dvMESA
  :: Ptr GLdouble -- ^ @v@ pointing to @3@ elements of type @CoordD@.
  -> IO ()
glWindowPos3dvMESA = dyn_glWindowPos3dvMESA ptr_glWindowPos3dvMESA

foreign import CALLCONV "dynamic" dyn_glWindowPos3dvMESA
  :: FunPtr (Ptr GLdouble -> IO ())
  ->         Ptr GLdouble -> IO ()

{-# NOINLINE ptr_glWindowPos3dvMESA #-}
ptr_glWindowPos3dvMESA :: FunPtr (Ptr GLdouble -> IO ())
ptr_glWindowPos3dvMESA = unsafePerformIO $ getCommand "glWindowPos3dvMESA"

-- glWindowPos3f ---------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glWindowPos.xml OpenGL 2.x>
glWindowPos3f
  :: GLfloat -- ^ @x@ of type @CoordF@.
  -> GLfloat -- ^ @y@ of type @CoordF@.
  -> GLfloat -- ^ @z@ of type @CoordF@.
  -> IO ()
glWindowPos3f = dyn_glWindowPos3f ptr_glWindowPos3f

foreign import CALLCONV "dynamic" dyn_glWindowPos3f
  :: FunPtr (GLfloat -> GLfloat -> GLfloat -> IO ())
  ->         GLfloat -> GLfloat -> GLfloat -> IO ()

{-# NOINLINE ptr_glWindowPos3f #-}
ptr_glWindowPos3f :: FunPtr (GLfloat -> GLfloat -> GLfloat -> IO ())
ptr_glWindowPos3f = unsafePerformIO $ getCommand "glWindowPos3f"

-- glWindowPos3fARB ------------------------------------------------------------

glWindowPos3fARB
  :: GLfloat -- ^ @x@ of type @CoordF@.
  -> GLfloat -- ^ @y@ of type @CoordF@.
  -> GLfloat -- ^ @z@ of type @CoordF@.
  -> IO ()
glWindowPos3fARB = dyn_glWindowPos3fARB ptr_glWindowPos3fARB

foreign import CALLCONV "dynamic" dyn_glWindowPos3fARB
  :: FunPtr (GLfloat -> GLfloat -> GLfloat -> IO ())
  ->         GLfloat -> GLfloat -> GLfloat -> IO ()

{-# NOINLINE ptr_glWindowPos3fARB #-}
ptr_glWindowPos3fARB :: FunPtr (GLfloat -> GLfloat -> GLfloat -> IO ())
ptr_glWindowPos3fARB = unsafePerformIO $ getCommand "glWindowPos3fARB"

-- glWindowPos3fMESA -----------------------------------------------------------

glWindowPos3fMESA
  :: GLfloat -- ^ @x@ of type @CoordF@.
  -> GLfloat -- ^ @y@ of type @CoordF@.
  -> GLfloat -- ^ @z@ of type @CoordF@.
  -> IO ()
glWindowPos3fMESA = dyn_glWindowPos3fMESA ptr_glWindowPos3fMESA

foreign import CALLCONV "dynamic" dyn_glWindowPos3fMESA
  :: FunPtr (GLfloat -> GLfloat -> GLfloat -> IO ())
  ->         GLfloat -> GLfloat -> GLfloat -> IO ()

{-# NOINLINE ptr_glWindowPos3fMESA #-}
ptr_glWindowPos3fMESA :: FunPtr (GLfloat -> GLfloat -> GLfloat -> IO ())
ptr_glWindowPos3fMESA = unsafePerformIO $ getCommand "glWindowPos3fMESA"

-- glWindowPos3fv --------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glWindowPos.xml OpenGL 2.x>
glWindowPos3fv
  :: Ptr GLfloat -- ^ @v@ pointing to @3@ elements of type @CoordF@.
  -> IO ()
glWindowPos3fv = dyn_glWindowPos3fv ptr_glWindowPos3fv

foreign import CALLCONV "dynamic" dyn_glWindowPos3fv
  :: FunPtr (Ptr GLfloat -> IO ())
  ->         Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glWindowPos3fv #-}
ptr_glWindowPos3fv :: FunPtr (Ptr GLfloat -> IO ())
ptr_glWindowPos3fv = unsafePerformIO $ getCommand "glWindowPos3fv"

-- glWindowPos3fvARB -----------------------------------------------------------

glWindowPos3fvARB
  :: Ptr GLfloat -- ^ @v@ pointing to @3@ elements of type @CoordF@.
  -> IO ()
glWindowPos3fvARB = dyn_glWindowPos3fvARB ptr_glWindowPos3fvARB

foreign import CALLCONV "dynamic" dyn_glWindowPos3fvARB
  :: FunPtr (Ptr GLfloat -> IO ())
  ->         Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glWindowPos3fvARB #-}
ptr_glWindowPos3fvARB :: FunPtr (Ptr GLfloat -> IO ())
ptr_glWindowPos3fvARB = unsafePerformIO $ getCommand "glWindowPos3fvARB"

-- glWindowPos3fvMESA ----------------------------------------------------------

glWindowPos3fvMESA
  :: Ptr GLfloat -- ^ @v@ pointing to @3@ elements of type @CoordF@.
  -> IO ()
glWindowPos3fvMESA = dyn_glWindowPos3fvMESA ptr_glWindowPos3fvMESA

foreign import CALLCONV "dynamic" dyn_glWindowPos3fvMESA
  :: FunPtr (Ptr GLfloat -> IO ())
  ->         Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glWindowPos3fvMESA #-}
ptr_glWindowPos3fvMESA :: FunPtr (Ptr GLfloat -> IO ())
ptr_glWindowPos3fvMESA = unsafePerformIO $ getCommand "glWindowPos3fvMESA"

-- glWindowPos3i ---------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glWindowPos.xml OpenGL 2.x>
glWindowPos3i
  :: GLint -- ^ @x@ of type @CoordI@.
  -> GLint -- ^ @y@ of type @CoordI@.
  -> GLint -- ^ @z@ of type @CoordI@.
  -> IO ()
glWindowPos3i = dyn_glWindowPos3i ptr_glWindowPos3i

foreign import CALLCONV "dynamic" dyn_glWindowPos3i
  :: FunPtr (GLint -> GLint -> GLint -> IO ())
  ->         GLint -> GLint -> GLint -> IO ()

{-# NOINLINE ptr_glWindowPos3i #-}
ptr_glWindowPos3i :: FunPtr (GLint -> GLint -> GLint -> IO ())
ptr_glWindowPos3i = unsafePerformIO $ getCommand "glWindowPos3i"

-- glWindowPos3iARB ------------------------------------------------------------

glWindowPos3iARB
  :: GLint -- ^ @x@ of type @CoordI@.
  -> GLint -- ^ @y@ of type @CoordI@.
  -> GLint -- ^ @z@ of type @CoordI@.
  -> IO ()
glWindowPos3iARB = dyn_glWindowPos3iARB ptr_glWindowPos3iARB

foreign import CALLCONV "dynamic" dyn_glWindowPos3iARB
  :: FunPtr (GLint -> GLint -> GLint -> IO ())
  ->         GLint -> GLint -> GLint -> IO ()

{-# NOINLINE ptr_glWindowPos3iARB #-}
ptr_glWindowPos3iARB :: FunPtr (GLint -> GLint -> GLint -> IO ())
ptr_glWindowPos3iARB = unsafePerformIO $ getCommand "glWindowPos3iARB"

-- glWindowPos3iMESA -----------------------------------------------------------

glWindowPos3iMESA
  :: GLint -- ^ @x@ of type @CoordI@.
  -> GLint -- ^ @y@ of type @CoordI@.
  -> GLint -- ^ @z@ of type @CoordI@.
  -> IO ()
glWindowPos3iMESA = dyn_glWindowPos3iMESA ptr_glWindowPos3iMESA

foreign import CALLCONV "dynamic" dyn_glWindowPos3iMESA
  :: FunPtr (GLint -> GLint -> GLint -> IO ())
  ->         GLint -> GLint -> GLint -> IO ()

{-# NOINLINE ptr_glWindowPos3iMESA #-}
ptr_glWindowPos3iMESA :: FunPtr (GLint -> GLint -> GLint -> IO ())
ptr_glWindowPos3iMESA = unsafePerformIO $ getCommand "glWindowPos3iMESA"

-- glWindowPos3iv --------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glWindowPos.xml OpenGL 2.x>
glWindowPos3iv
  :: Ptr GLint -- ^ @v@ pointing to @3@ elements of type @CoordI@.
  -> IO ()
glWindowPos3iv = dyn_glWindowPos3iv ptr_glWindowPos3iv

foreign import CALLCONV "dynamic" dyn_glWindowPos3iv
  :: FunPtr (Ptr GLint -> IO ())
  ->         Ptr GLint -> IO ()

{-# NOINLINE ptr_glWindowPos3iv #-}
ptr_glWindowPos3iv :: FunPtr (Ptr GLint -> IO ())
ptr_glWindowPos3iv = unsafePerformIO $ getCommand "glWindowPos3iv"

-- glWindowPos3ivARB -----------------------------------------------------------

glWindowPos3ivARB
  :: Ptr GLint -- ^ @v@ pointing to @3@ elements of type @CoordI@.
  -> IO ()
glWindowPos3ivARB = dyn_glWindowPos3ivARB ptr_glWindowPos3ivARB

foreign import CALLCONV "dynamic" dyn_glWindowPos3ivARB
  :: FunPtr (Ptr GLint -> IO ())
  ->         Ptr GLint -> IO ()

{-# NOINLINE ptr_glWindowPos3ivARB #-}
ptr_glWindowPos3ivARB :: FunPtr (Ptr GLint -> IO ())
ptr_glWindowPos3ivARB = unsafePerformIO $ getCommand "glWindowPos3ivARB"

-- glWindowPos3ivMESA ----------------------------------------------------------

glWindowPos3ivMESA
  :: Ptr GLint -- ^ @v@ pointing to @3@ elements of type @CoordI@.
  -> IO ()
glWindowPos3ivMESA = dyn_glWindowPos3ivMESA ptr_glWindowPos3ivMESA

foreign import CALLCONV "dynamic" dyn_glWindowPos3ivMESA
  :: FunPtr (Ptr GLint -> IO ())
  ->         Ptr GLint -> IO ()

{-# NOINLINE ptr_glWindowPos3ivMESA #-}
ptr_glWindowPos3ivMESA :: FunPtr (Ptr GLint -> IO ())
ptr_glWindowPos3ivMESA = unsafePerformIO $ getCommand "glWindowPos3ivMESA"

-- glWindowPos3s ---------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glWindowPos.xml OpenGL 2.x>
glWindowPos3s
  :: GLshort -- ^ @x@ of type @CoordS@.
  -> GLshort -- ^ @y@ of type @CoordS@.
  -> GLshort -- ^ @z@ of type @CoordS@.
  -> IO ()
glWindowPos3s = dyn_glWindowPos3s ptr_glWindowPos3s

foreign import CALLCONV "dynamic" dyn_glWindowPos3s
  :: FunPtr (GLshort -> GLshort -> GLshort -> IO ())
  ->         GLshort -> GLshort -> GLshort -> IO ()

{-# NOINLINE ptr_glWindowPos3s #-}
ptr_glWindowPos3s :: FunPtr (GLshort -> GLshort -> GLshort -> IO ())
ptr_glWindowPos3s = unsafePerformIO $ getCommand "glWindowPos3s"

-- glWindowPos3sARB ------------------------------------------------------------

glWindowPos3sARB
  :: GLshort -- ^ @x@ of type @CoordS@.
  -> GLshort -- ^ @y@ of type @CoordS@.
  -> GLshort -- ^ @z@ of type @CoordS@.
  -> IO ()
glWindowPos3sARB = dyn_glWindowPos3sARB ptr_glWindowPos3sARB

foreign import CALLCONV "dynamic" dyn_glWindowPos3sARB
  :: FunPtr (GLshort -> GLshort -> GLshort -> IO ())
  ->         GLshort -> GLshort -> GLshort -> IO ()

{-# NOINLINE ptr_glWindowPos3sARB #-}
ptr_glWindowPos3sARB :: FunPtr (GLshort -> GLshort -> GLshort -> IO ())
ptr_glWindowPos3sARB = unsafePerformIO $ getCommand "glWindowPos3sARB"

-- glWindowPos3sMESA -----------------------------------------------------------

glWindowPos3sMESA
  :: GLshort -- ^ @x@ of type @CoordS@.
  -> GLshort -- ^ @y@ of type @CoordS@.
  -> GLshort -- ^ @z@ of type @CoordS@.
  -> IO ()
glWindowPos3sMESA = dyn_glWindowPos3sMESA ptr_glWindowPos3sMESA

foreign import CALLCONV "dynamic" dyn_glWindowPos3sMESA
  :: FunPtr (GLshort -> GLshort -> GLshort -> IO ())
  ->         GLshort -> GLshort -> GLshort -> IO ()

{-# NOINLINE ptr_glWindowPos3sMESA #-}
ptr_glWindowPos3sMESA :: FunPtr (GLshort -> GLshort -> GLshort -> IO ())
ptr_glWindowPos3sMESA = unsafePerformIO $ getCommand "glWindowPos3sMESA"

-- glWindowPos3sv --------------------------------------------------------------

-- | Manual page for <https://www.opengl.org/sdk/docs/man2/xhtml/glWindowPos.xml OpenGL 2.x>
glWindowPos3sv
  :: Ptr GLshort -- ^ @v@ pointing to @3@ elements of type @CoordS@.
  -> IO ()
glWindowPos3sv = dyn_glWindowPos3sv ptr_glWindowPos3sv

foreign import CALLCONV "dynamic" dyn_glWindowPos3sv
  :: FunPtr (Ptr GLshort -> IO ())
  ->         Ptr GLshort -> IO ()

{-# NOINLINE ptr_glWindowPos3sv #-}
ptr_glWindowPos3sv :: FunPtr (Ptr GLshort -> IO ())
ptr_glWindowPos3sv = unsafePerformIO $ getCommand "glWindowPos3sv"

-- glWindowPos3svARB -----------------------------------------------------------

glWindowPos3svARB
  :: Ptr GLshort -- ^ @v@ pointing to @3@ elements of type @CoordS@.
  -> IO ()
glWindowPos3svARB = dyn_glWindowPos3svARB ptr_glWindowPos3svARB

foreign import CALLCONV "dynamic" dyn_glWindowPos3svARB
  :: FunPtr (Ptr GLshort -> IO ())
  ->         Ptr GLshort -> IO ()

{-# NOINLINE ptr_glWindowPos3svARB #-}
ptr_glWindowPos3svARB :: FunPtr (Ptr GLshort -> IO ())
ptr_glWindowPos3svARB = unsafePerformIO $ getCommand "glWindowPos3svARB"

-- glWindowPos3svMESA ----------------------------------------------------------

glWindowPos3svMESA
  :: Ptr GLshort -- ^ @v@ pointing to @3@ elements of type @CoordS@.
  -> IO ()
glWindowPos3svMESA = dyn_glWindowPos3svMESA ptr_glWindowPos3svMESA

foreign import CALLCONV "dynamic" dyn_glWindowPos3svMESA
  :: FunPtr (Ptr GLshort -> IO ())
  ->         Ptr GLshort -> IO ()

{-# NOINLINE ptr_glWindowPos3svMESA #-}
ptr_glWindowPos3svMESA :: FunPtr (Ptr GLshort -> IO ())
ptr_glWindowPos3svMESA = unsafePerformIO $ getCommand "glWindowPos3svMESA"

-- glWindowPos4dMESA -----------------------------------------------------------

glWindowPos4dMESA
  :: GLdouble -- ^ @x@ of type @CoordD@.
  -> GLdouble -- ^ @y@ of type @CoordD@.
  -> GLdouble -- ^ @z@ of type @CoordD@.
  -> GLdouble -- ^ @w@ of type @CoordD@.
  -> IO ()
glWindowPos4dMESA = dyn_glWindowPos4dMESA ptr_glWindowPos4dMESA

foreign import CALLCONV "dynamic" dyn_glWindowPos4dMESA
  :: FunPtr (GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ())
  ->         GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ()

{-# NOINLINE ptr_glWindowPos4dMESA #-}
ptr_glWindowPos4dMESA :: FunPtr (GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ())
ptr_glWindowPos4dMESA = unsafePerformIO $ getCommand "glWindowPos4dMESA"

-- glWindowPos4dvMESA ----------------------------------------------------------

glWindowPos4dvMESA
  :: Ptr GLdouble -- ^ @v@ pointing to @4@ elements of type @CoordD@.
  -> IO ()
glWindowPos4dvMESA = dyn_glWindowPos4dvMESA ptr_glWindowPos4dvMESA

foreign import CALLCONV "dynamic" dyn_glWindowPos4dvMESA
  :: FunPtr (Ptr GLdouble -> IO ())
  ->         Ptr GLdouble -> IO ()

{-# NOINLINE ptr_glWindowPos4dvMESA #-}
ptr_glWindowPos4dvMESA :: FunPtr (Ptr GLdouble -> IO ())
ptr_glWindowPos4dvMESA = unsafePerformIO $ getCommand "glWindowPos4dvMESA"

-- glWindowPos4fMESA -----------------------------------------------------------

glWindowPos4fMESA
  :: GLfloat -- ^ @x@ of type @CoordF@.
  -> GLfloat -- ^ @y@ of type @CoordF@.
  -> GLfloat -- ^ @z@ of type @CoordF@.
  -> GLfloat -- ^ @w@ of type @CoordF@.
  -> IO ()
glWindowPos4fMESA = dyn_glWindowPos4fMESA ptr_glWindowPos4fMESA

foreign import CALLCONV "dynamic" dyn_glWindowPos4fMESA
  :: FunPtr (GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
  ->         GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ()

{-# NOINLINE ptr_glWindowPos4fMESA #-}
ptr_glWindowPos4fMESA :: FunPtr (GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
ptr_glWindowPos4fMESA = unsafePerformIO $ getCommand "glWindowPos4fMESA"

-- glWindowPos4fvMESA ----------------------------------------------------------

glWindowPos4fvMESA
  :: Ptr GLfloat -- ^ @v@ pointing to @4@ elements of type @CoordF@.
  -> IO ()
glWindowPos4fvMESA = dyn_glWindowPos4fvMESA ptr_glWindowPos4fvMESA

foreign import CALLCONV "dynamic" dyn_glWindowPos4fvMESA
  :: FunPtr (Ptr GLfloat -> IO ())
  ->         Ptr GLfloat -> IO ()

{-# NOINLINE ptr_glWindowPos4fvMESA #-}
ptr_glWindowPos4fvMESA :: FunPtr (Ptr GLfloat -> IO ())
ptr_glWindowPos4fvMESA = unsafePerformIO $ getCommand "glWindowPos4fvMESA"

-- glWindowPos4iMESA -----------------------------------------------------------

glWindowPos4iMESA
  :: GLint -- ^ @x@ of type @CoordI@.
  -> GLint -- ^ @y@ of type @CoordI@.
  -> GLint -- ^ @z@ of type @CoordI@.
  -> GLint -- ^ @w@ of type @CoordI@.
  -> IO ()
glWindowPos4iMESA = dyn_glWindowPos4iMESA ptr_glWindowPos4iMESA

foreign import CALLCONV "dynamic" dyn_glWindowPos4iMESA
  :: FunPtr (GLint -> GLint -> GLint -> GLint -> IO ())
  ->         GLint -> GLint -> GLint -> GLint -> IO ()

{-# NOINLINE ptr_glWindowPos4iMESA #-}
ptr_glWindowPos4iMESA :: FunPtr (GLint -> GLint -> GLint -> GLint -> IO ())
ptr_glWindowPos4iMESA = unsafePerformIO $ getCommand "glWindowPos4iMESA"

-- glWindowPos4ivMESA ----------------------------------------------------------

glWindowPos4ivMESA
  :: Ptr GLint -- ^ @v@ pointing to @4@ elements of type @CoordI@.
  -> IO ()
glWindowPos4ivMESA = dyn_glWindowPos4ivMESA ptr_glWindowPos4ivMESA

foreign import CALLCONV "dynamic" dyn_glWindowPos4ivMESA
  :: FunPtr (Ptr GLint -> IO ())
  ->         Ptr GLint -> IO ()

{-# NOINLINE ptr_glWindowPos4ivMESA #-}
ptr_glWindowPos4ivMESA :: FunPtr (Ptr GLint -> IO ())
ptr_glWindowPos4ivMESA = unsafePerformIO $ getCommand "glWindowPos4ivMESA"

-- glWindowPos4sMESA -----------------------------------------------------------

glWindowPos4sMESA
  :: GLshort -- ^ @x@ of type @CoordS@.
  -> GLshort -- ^ @y@ of type @CoordS@.
  -> GLshort -- ^ @z@ of type @CoordS@.
  -> GLshort -- ^ @w@ of type @CoordS@.
  -> IO ()
glWindowPos4sMESA = dyn_glWindowPos4sMESA ptr_glWindowPos4sMESA

foreign import CALLCONV "dynamic" dyn_glWindowPos4sMESA
  :: FunPtr (GLshort -> GLshort -> GLshort -> GLshort -> IO ())
  ->         GLshort -> GLshort -> GLshort -> GLshort -> IO ()

{-# NOINLINE ptr_glWindowPos4sMESA #-}
ptr_glWindowPos4sMESA :: FunPtr (GLshort -> GLshort -> GLshort -> GLshort -> IO ())
ptr_glWindowPos4sMESA = unsafePerformIO $ getCommand "glWindowPos4sMESA"

-- glWindowPos4svMESA ----------------------------------------------------------

glWindowPos4svMESA
  :: Ptr GLshort -- ^ @v@ pointing to @4@ elements of type @CoordS@.
  -> IO ()
glWindowPos4svMESA = dyn_glWindowPos4svMESA ptr_glWindowPos4svMESA

foreign import CALLCONV "dynamic" dyn_glWindowPos4svMESA
  :: FunPtr (Ptr GLshort -> IO ())
  ->         Ptr GLshort -> IO ()

{-# NOINLINE ptr_glWindowPos4svMESA #-}
ptr_glWindowPos4svMESA :: FunPtr (Ptr GLshort -> IO ())
ptr_glWindowPos4svMESA = unsafePerformIO $ getCommand "glWindowPos4svMESA"

-- glWriteMaskEXT --------------------------------------------------------------

glWriteMaskEXT
  :: GLuint -- ^ @res@.
  -> GLuint -- ^ @in@.
  -> GLenum -- ^ @outX@ of type @VertexShaderWriteMaskEXT@.
  -> GLenum -- ^ @outY@ of type @VertexShaderWriteMaskEXT@.
  -> GLenum -- ^ @outZ@ of type @VertexShaderWriteMaskEXT@.
  -> GLenum -- ^ @outW@ of type @VertexShaderWriteMaskEXT@.
  -> IO ()
glWriteMaskEXT = dyn_glWriteMaskEXT ptr_glWriteMaskEXT

foreign import CALLCONV "dynamic" dyn_glWriteMaskEXT
  :: FunPtr (GLuint -> GLuint -> GLenum -> GLenum -> GLenum -> GLenum -> IO ())
  ->         GLuint -> GLuint -> GLenum -> GLenum -> GLenum -> GLenum -> IO ()

{-# NOINLINE ptr_glWriteMaskEXT #-}
ptr_glWriteMaskEXT :: FunPtr (GLuint -> GLuint -> GLenum -> GLenum -> GLenum -> GLenum -> IO ())
ptr_glWriteMaskEXT = unsafePerformIO $ getCommand "glWriteMaskEXT"