OpenGLRaw-1.2.0.0: src/Graphics/Rendering/OpenGL/Raw/ARB/VertexProgram.hs
{-# 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, see
-- <http://www.opengl.org/registry/specs/ARB/vertex_program.txt>.
--
--------------------------------------------------------------------------------
module Graphics.Rendering.OpenGL.Raw.ARB.VertexProgram (
-- * Functions
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,
glProgramString,
glBindProgram,
glDeletePrograms,
glGenPrograms,
glProgramEnvParameter4d,
glProgramEnvParameter4dv,
glProgramEnvParameter4f,
glProgramEnvParameter4fv,
glProgramLocalParameter4d,
glProgramLocalParameter4dv,
glProgramLocalParameter4f,
glProgramLocalParameter4fv,
glGetProgramEnvParameterdv,
glGetProgramEnvParameterfv,
glGetProgramLocalParameterdv,
glGetProgramLocalParameterfv,
glGetProgramiv,
glGetProgramString,
glGetVertexAttribdv,
glGetVertexAttribfv,
glGetVertexAttribiv,
glGetVertexAttribPointerv,
glIsProgram,
-- * Tokens
gl_VERTEX_PROGRAM,
gl_VERTEX_PROGRAM_POINT_SIZE,
gl_VERTEX_PROGRAM_TWO_SIDE,
gl_COLOR_SUM,
gl_PROGRAM_FORMAT_ASCII,
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_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_VERTEX_ATTRIBS,
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 Foreign.C.Types
import Graphics.Rendering.OpenGL.Raw.ARB.Compatibility
import Graphics.Rendering.OpenGL.Raw.Core32
import Graphics.Rendering.OpenGL.Raw.Extensions
import Graphics.Rendering.OpenGL.Raw.Core31.TypesInternal
#include "HsOpenGLRaw.h"
extensionNameString :: String
extensionNameString = "GL_ARB_vertex_program"
EXTENSION_ENTRY(glProgramString,GLenum -> GLenum -> GLsizei -> Ptr a -> IO ())
EXTENSION_ENTRY(glBindProgram,GLenum -> GLuint -> IO ())
EXTENSION_ENTRY(glDeletePrograms,GLsizei -> Ptr GLuint -> IO ())
EXTENSION_ENTRY(glGenPrograms,GLsizei -> Ptr GLuint -> IO ())
EXTENSION_ENTRY(glProgramEnvParameter4d,GLenum -> GLuint -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ())
EXTENSION_ENTRY(glProgramEnvParameter4dv,GLenum -> GLuint -> Ptr GLdouble -> IO ())
EXTENSION_ENTRY(glProgramEnvParameter4f,GLenum -> GLuint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
EXTENSION_ENTRY(glProgramEnvParameter4fv,GLenum -> GLuint -> Ptr GLfloat -> IO ())
EXTENSION_ENTRY(glProgramLocalParameter4d,GLenum -> GLuint -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> IO ())
EXTENSION_ENTRY(glProgramLocalParameter4dv,GLenum -> GLuint -> Ptr GLdouble -> IO ())
EXTENSION_ENTRY(glProgramLocalParameter4f,GLenum -> GLuint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> IO ())
EXTENSION_ENTRY(glProgramLocalParameter4fv,GLenum -> GLuint -> Ptr GLfloat -> IO ())
EXTENSION_ENTRY(glGetProgramEnvParameterdv,GLenum -> GLuint -> Ptr GLdouble -> IO ())
EXTENSION_ENTRY(glGetProgramEnvParameterfv,GLenum -> GLuint -> Ptr GLfloat -> IO ())
EXTENSION_ENTRY(glGetProgramLocalParameterdv,GLenum -> GLuint -> Ptr GLdouble -> IO ())
EXTENSION_ENTRY(glGetProgramLocalParameterfv,GLenum -> GLuint -> Ptr GLfloat -> IO ())
EXTENSION_ENTRY(glGetProgramString,GLenum -> GLenum -> Ptr a -> IO ())
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