{-# LANGUAGE ForeignFunctionInterface, CPP #-} -------------------------------------------------------------------------------- -- | -- Module : Graphics.Rendering.OpenGL.Raw.ARB.VertexProgram -- Copyright : (c) Sven Panne 2009 -- License : BSD-style (see the file LICENSE) -- -- Maintainer : sven.panne@aedion.de -- Stability : stable -- Portability : portable -- -- All raw functions and tokens from the ARB_vertex_program extension not -- already in the OpenGL 3.1 core, see -- . -- -------------------------------------------------------------------------------- module Graphics.Rendering.OpenGL.Raw.ARB.VertexProgram ( -- * Functions glProgramString, glBindProgram, glDeletePrograms, glGenPrograms, glProgramEnvParameter4d, glProgramEnvParameter4dv, glProgramEnvParameter4f, glProgramEnvParameter4fv, glProgramLocalParameter4d, glProgramLocalParameter4dv, glProgramLocalParameter4f, glProgramLocalParameter4fv, glGetProgramEnvParameterdv, glGetProgramEnvParameterfv, glGetProgramLocalParameterdv, glGetProgramLocalParameterfv, glGetProgramString, -- * Tokens gl_VERTEX_PROGRAM, gl_PROGRAM_FORMAT_ASCII, gl_PROGRAM_LENGTH, gl_PROGRAM_FORMAT, gl_PROGRAM_BINDING, gl_PROGRAM_INSTRUCTIONS, gl_MAX_PROGRAM_INSTRUCTIONS, gl_PROGRAM_NATIVE_INSTRUCTIONS, gl_MAX_PROGRAM_NATIVE_INSTRUCTIONS, gl_PROGRAM_TEMPORARIES, gl_MAX_PROGRAM_TEMPORARIES, gl_PROGRAM_NATIVE_TEMPORARIES, gl_MAX_PROGRAM_NATIVE_TEMPORARIES, gl_PROGRAM_PARAMETERS, gl_MAX_PROGRAM_PARAMETERS, gl_PROGRAM_NATIVE_PARAMETERS, gl_MAX_PROGRAM_NATIVE_PARAMETERS, gl_PROGRAM_ATTRIBS, gl_MAX_PROGRAM_ATTRIBS, gl_PROGRAM_NATIVE_ATTRIBS, gl_MAX_PROGRAM_NATIVE_ATTRIBS, gl_PROGRAM_ADDRESS_REGISTERS, gl_MAX_PROGRAM_ADDRESS_REGISTERS, gl_PROGRAM_NATIVE_ADDRESS_REGISTERS, gl_MAX_PROGRAM_NATIVE_ADDRESS_REGISTERS, gl_MAX_PROGRAM_LOCAL_PARAMETERS, gl_MAX_PROGRAM_ENV_PARAMETERS, gl_PROGRAM_UNDER_NATIVE_LIMITS, gl_PROGRAM_STRING, gl_PROGRAM_ERROR_POSITION, gl_CURRENT_MATRIX, gl_TRANSPOSE_CURRENT_MATRIX, gl_CURRENT_MATRIX_STACK_DEPTH, gl_MAX_PROGRAM_MATRICES, gl_MAX_PROGRAM_MATRIX_STACK_DEPTH, gl_PROGRAM_ERROR_STRING, gl_MATRIX0, gl_MATRIX1, gl_MATRIX2, gl_MATRIX3, gl_MATRIX4, gl_MATRIX5, gl_MATRIX6, gl_MATRIX7, gl_MATRIX8, gl_MATRIX9, gl_MATRIX10, gl_MATRIX11, gl_MATRIX12, gl_MATRIX13, gl_MATRIX14, gl_MATRIX15, gl_MATRIX16, gl_MATRIX17, gl_MATRIX18, gl_MATRIX19, gl_MATRIX20, gl_MATRIX21, gl_MATRIX22, gl_MATRIX23, gl_MATRIX24, gl_MATRIX25, gl_MATRIX26, gl_MATRIX27, gl_MATRIX28, gl_MATRIX29, gl_MATRIX30, gl_MATRIX31 ) where import Foreign.Ptr import Graphics.Rendering.OpenGL.Raw.Core31 -- functions/tokens already in the OpenGL 3.1 core: -- -- glVertexAttrib1s -- glVertexAttrib1f -- glVertexAttrib1d -- glVertexAttrib2s -- glVertexAttrib2f -- glVertexAttrib2d -- glVertexAttrib3s -- glVertexAttrib3f -- glVertexAttrib3d -- glVertexAttrib4s -- glVertexAttrib4f -- glVertexAttrib4d -- glVertexAttrib4Nub -- glVertexAttrib1sv -- glVertexAttrib1fv -- glVertexAttrib1dv -- glVertexAttrib2sv -- glVertexAttrib2fv -- glVertexAttrib2dv -- glVertexAttrib3sv -- glVertexAttrib3fv -- glVertexAttrib3dv -- glVertexAttrib4bv -- glVertexAttrib4sv -- glVertexAttrib4iv -- glVertexAttrib4ubv -- glVertexAttrib4usv -- glVertexAttrib4uiv -- glVertexAttrib4fv -- glVertexAttrib4dv -- glVertexAttrib4Nbv -- glVertexAttrib4Nsv -- glVertexAttrib4Niv -- glVertexAttrib4Nubv -- glVertexAttrib4Nusv -- glVertexAttrib4Nuiv -- glVertexAttribPointer -- glEnableVertexAttribArray -- glDisableVertexAttribArray -- glGetProgramiv -- glGetVertexAttribdv -- glGetVertexAttribfv -- glGetVertexAttribiv -- glGetVertexAttribPointerv -- glIsProgram -- gl_VERTEX_PROGRAM_POINT_SIZE -- gl_VERTEX_ATTRIB_ARRAY_ENABLED -- gl_VERTEX_ATTRIB_ARRAY_SIZE -- gl_VERTEX_ATTRIB_ARRAY_STRIDE -- gl_VERTEX_ATTRIB_ARRAY_TYPE -- gl_VERTEX_ATTRIB_ARRAY_NORMALIZED -- gl_CURRENT_VERTEX_ATTRIB -- gl_VERTEX_ATTRIB_ARRAY_POINTER -- gl_MAX_VERTEX_ATTRIBS glProgramString :: GLenum -> GLenum -> GLsizei -> Ptr a -> IO () glProgramString = undefined glBindProgram :: GLenum -> GLuint -> IO () glBindProgram = undefined glDeletePrograms :: GLsizei -> Ptr GLuint -> IO () glDeletePrograms = undefined glGenPrograms :: GLsizei -> Ptr GLuint -> IO () glGenPrograms = undefined glProgramEnvParameter4d :: GLenum -> GLuint -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO () glProgramEnvParameter4d = undefined glProgramEnvParameter4dv :: GLenum -> GLuint -> Ptr GLdouble -> IO () glProgramEnvParameter4dv = undefined glProgramEnvParameter4f :: GLenum -> GLuint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO () glProgramEnvParameter4f = undefined glProgramEnvParameter4fv :: GLenum -> GLuint -> Ptr GLfloat -> IO () glProgramEnvParameter4fv = undefined glProgramLocalParameter4d :: GLenum -> GLuint -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO () glProgramLocalParameter4d = undefined glProgramLocalParameter4dv :: GLenum -> GLuint -> Ptr GLdouble -> IO () glProgramLocalParameter4dv = undefined glProgramLocalParameter4f :: GLenum -> GLuint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO () glProgramLocalParameter4f = undefined glProgramLocalParameter4fv :: GLenum -> GLuint -> Ptr GLfloat -> IO () glProgramLocalParameter4fv = undefined glGetProgramEnvParameterdv :: GLenum -> GLuint -> Ptr GLdouble -> IO () glGetProgramEnvParameterdv = undefined glGetProgramEnvParameterfv :: GLenum -> GLuint -> Ptr GLfloat -> IO () glGetProgramEnvParameterfv = undefined glGetProgramLocalParameterdv :: GLenum -> GLuint -> Ptr GLdouble -> IO () glGetProgramLocalParameterdv = undefined glGetProgramLocalParameterfv :: GLenum -> GLuint -> Ptr GLfloat -> IO () glGetProgramLocalParameterfv = undefined glGetProgramString :: GLenum -> GLenum -> Ptr a -> IO () glGetProgramString = undefined gl_VERTEX_PROGRAM :: GLenum gl_VERTEX_PROGRAM = 0x8620 gl_PROGRAM_FORMAT_ASCII :: GLenum gl_PROGRAM_FORMAT_ASCII = 0x8875 gl_PROGRAM_LENGTH :: GLenum gl_PROGRAM_LENGTH = 0x8627 gl_PROGRAM_FORMAT :: GLenum gl_PROGRAM_FORMAT = 0x8876 gl_PROGRAM_BINDING :: GLenum gl_PROGRAM_BINDING = 0x8677 gl_PROGRAM_INSTRUCTIONS :: GLenum gl_PROGRAM_INSTRUCTIONS = 0x88A0 gl_MAX_PROGRAM_INSTRUCTIONS :: GLenum gl_MAX_PROGRAM_INSTRUCTIONS = 0x88A1 gl_PROGRAM_NATIVE_INSTRUCTIONS :: GLenum gl_PROGRAM_NATIVE_INSTRUCTIONS = 0x88A2 gl_MAX_PROGRAM_NATIVE_INSTRUCTIONS :: GLenum gl_MAX_PROGRAM_NATIVE_INSTRUCTIONS = 0x88A3 gl_PROGRAM_TEMPORARIES :: GLenum gl_PROGRAM_TEMPORARIES = 0x88A4 gl_MAX_PROGRAM_TEMPORARIES :: GLenum gl_MAX_PROGRAM_TEMPORARIES = 0x88A5 gl_PROGRAM_NATIVE_TEMPORARIES :: GLenum gl_PROGRAM_NATIVE_TEMPORARIES = 0x88A6 gl_MAX_PROGRAM_NATIVE_TEMPORARIES :: GLenum gl_MAX_PROGRAM_NATIVE_TEMPORARIES = 0x88A7 gl_PROGRAM_PARAMETERS :: GLenum gl_PROGRAM_PARAMETERS = 0x88A8 gl_MAX_PROGRAM_PARAMETERS :: GLenum gl_MAX_PROGRAM_PARAMETERS = 0x88A9 gl_PROGRAM_NATIVE_PARAMETERS :: GLenum gl_PROGRAM_NATIVE_PARAMETERS = 0x88AA gl_MAX_PROGRAM_NATIVE_PARAMETERS :: GLenum gl_MAX_PROGRAM_NATIVE_PARAMETERS = 0x88AB gl_PROGRAM_ATTRIBS :: GLenum gl_PROGRAM_ATTRIBS = 0x88AC gl_MAX_PROGRAM_ATTRIBS :: GLenum gl_MAX_PROGRAM_ATTRIBS = 0x88AD gl_PROGRAM_NATIVE_ATTRIBS :: GLenum gl_PROGRAM_NATIVE_ATTRIBS = 0x88AE gl_MAX_PROGRAM_NATIVE_ATTRIBS :: GLenum gl_MAX_PROGRAM_NATIVE_ATTRIBS = 0x88AF gl_PROGRAM_ADDRESS_REGISTERS :: GLenum gl_PROGRAM_ADDRESS_REGISTERS = 0x88B0 gl_MAX_PROGRAM_ADDRESS_REGISTERS :: GLenum gl_MAX_PROGRAM_ADDRESS_REGISTERS = 0x88B1 gl_PROGRAM_NATIVE_ADDRESS_REGISTERS :: GLenum gl_PROGRAM_NATIVE_ADDRESS_REGISTERS = 0x88B2 gl_MAX_PROGRAM_NATIVE_ADDRESS_REGISTERS :: GLenum gl_MAX_PROGRAM_NATIVE_ADDRESS_REGISTERS = 0x88B3 gl_MAX_PROGRAM_LOCAL_PARAMETERS :: GLenum gl_MAX_PROGRAM_LOCAL_PARAMETERS = 0x88B4 gl_MAX_PROGRAM_ENV_PARAMETERS :: GLenum gl_MAX_PROGRAM_ENV_PARAMETERS = 0x88B5 gl_PROGRAM_UNDER_NATIVE_LIMITS :: GLenum gl_PROGRAM_UNDER_NATIVE_LIMITS = 0x88B6 gl_PROGRAM_STRING :: GLenum gl_PROGRAM_STRING = 0x8628 gl_PROGRAM_ERROR_POSITION :: GLenum gl_PROGRAM_ERROR_POSITION = 0x864B gl_CURRENT_MATRIX :: GLenum gl_CURRENT_MATRIX = 0x8641 gl_TRANSPOSE_CURRENT_MATRIX :: GLenum gl_TRANSPOSE_CURRENT_MATRIX = 0x88B7 gl_CURRENT_MATRIX_STACK_DEPTH :: GLenum gl_CURRENT_MATRIX_STACK_DEPTH = 0x8640 gl_MAX_PROGRAM_MATRICES :: GLenum gl_MAX_PROGRAM_MATRICES = 0x862F gl_MAX_PROGRAM_MATRIX_STACK_DEPTH :: GLenum gl_MAX_PROGRAM_MATRIX_STACK_DEPTH = 0x862E gl_PROGRAM_ERROR_STRING :: GLenum gl_PROGRAM_ERROR_STRING = 0x8874 gl_MATRIX0 :: GLenum gl_MATRIX0 = 0x88C0 gl_MATRIX1 :: GLenum gl_MATRIX1 = 0x88C1 gl_MATRIX2 :: GLenum gl_MATRIX2 = 0x88C2 gl_MATRIX3 :: GLenum gl_MATRIX3 = 0x88C3 gl_MATRIX4 :: GLenum gl_MATRIX4 = 0x88C4 gl_MATRIX5 :: GLenum gl_MATRIX5 = 0x88C5 gl_MATRIX6 :: GLenum gl_MATRIX6 = 0x88C6 gl_MATRIX7 :: GLenum gl_MATRIX7 = 0x88C7 gl_MATRIX8 :: GLenum gl_MATRIX8 = 0x88C8 gl_MATRIX9 :: GLenum gl_MATRIX9 = 0x88C9 gl_MATRIX10 :: GLenum gl_MATRIX10 = 0x88CA gl_MATRIX11 :: GLenum gl_MATRIX11 = 0x88CB gl_MATRIX12 :: GLenum gl_MATRIX12 = 0x88CC gl_MATRIX13 :: GLenum gl_MATRIX13 = 0x88CD gl_MATRIX14 :: GLenum gl_MATRIX14 = 0x88CE gl_MATRIX15 :: GLenum gl_MATRIX15 = 0x88CF gl_MATRIX16 :: GLenum gl_MATRIX16 = 0x88D0 gl_MATRIX17 :: GLenum gl_MATRIX17 = 0x88D1 gl_MATRIX18 :: GLenum gl_MATRIX18 = 0x88D2 gl_MATRIX19 :: GLenum gl_MATRIX19 = 0x88D3 gl_MATRIX20 :: GLenum gl_MATRIX20 = 0x88D4 gl_MATRIX21 :: GLenum gl_MATRIX21 = 0x88D5 gl_MATRIX22 :: GLenum gl_MATRIX22 = 0x88D6 gl_MATRIX23 :: GLenum gl_MATRIX23 = 0x88D7 gl_MATRIX24 :: GLenum gl_MATRIX24 = 0x88D8 gl_MATRIX25 :: GLenum gl_MATRIX25 = 0x88D9 gl_MATRIX26 :: GLenum gl_MATRIX26 = 0x88DA gl_MATRIX27 :: GLenum gl_MATRIX27 = 0x88DB gl_MATRIX28 :: GLenum gl_MATRIX28 = 0x88DC gl_MATRIX29 :: GLenum gl_MATRIX29 = 0x88DD gl_MATRIX30 :: GLenum gl_MATRIX30 = 0x88DE gl_MATRIX31 :: GLenum gl_MATRIX31 = 0x88DF