gl-0.7.2.2: Complete OpenGL raw bindings

Safe HaskellNone
LanguageHaskell2010

Graphics.GL.Standard20

Contents

Synopsis

Graphics.GL.Standard20

glDrawBuffers :: MonadIO m => GLsizei -> Ptr GLenum -> m () Source

Usage: glDrawBuffers n bufs

The parameter bufs is a DrawBufferModeATI.

The length of bufs should be n.

Manual page: https://www.opengl.org/sdk/docs/man/html/glDrawBuffers.xhtml

glGetActiveAttrib :: MonadIO m => GLuint -> GLuint -> GLsizei -> Ptr GLsizei -> Ptr GLint -> Ptr GLenum -> Ptr GLchar -> m () Source

Usage: glGetActiveAttrib program index bufSize length size type name

The length of length should be 1.

The length of size should be 1.

The length of type should be 1.

The length of name should be bufSize.

Manual page: https://www.opengl.org/sdk/docs/man/html/glGetActiveAttrib.xhtml

glGetActiveUniform :: MonadIO m => GLuint -> GLuint -> GLsizei -> Ptr GLsizei -> Ptr GLint -> Ptr GLenum -> Ptr GLchar -> m () Source

Usage: glGetActiveUniform program index bufSize length size type name

The length of length should be 1.

The length of size should be 1.

The length of type should be 1.

The length of name should be bufSize.

Manual page: https://www.opengl.org/sdk/docs/man/html/glGetActiveUniform.xhtml

glGetAttachedShaders :: MonadIO m => GLuint -> GLsizei -> Ptr GLsizei -> Ptr GLuint -> m () Source

Usage: glGetAttachedShaders program maxCount count shaders

The length of count should be 1.

The length of shaders should be maxCount.

Manual page: https://www.opengl.org/sdk/docs/man/html/glGetAttachedShaders.xhtml

glGetProgramInfoLog :: MonadIO m => GLuint -> GLsizei -> Ptr GLsizei -> Ptr GLchar -> m () Source

Usage: glGetProgramInfoLog program bufSize length infoLog

The length of length should be 1.

The length of infoLog should be bufSize.

Manual page: https://www.opengl.org/sdk/docs/man/html/glGetProgramInfoLog.xhtml

glGetProgramiv :: MonadIO m => GLuint -> GLenum -> Ptr GLint -> m () Source

Usage: glGetProgramiv program pname params

The length of params should be COMPSIZE(pname).

glGetShaderInfoLog :: MonadIO m => GLuint -> GLsizei -> Ptr GLsizei -> Ptr GLchar -> m () Source

Usage: glGetShaderInfoLog shader bufSize length infoLog

The length of length should be 1.

The length of infoLog should be bufSize.

Manual page: https://www.opengl.org/sdk/docs/man/html/glGetShaderInfoLog.xhtml

glGetShaderSource :: MonadIO m => GLuint -> GLsizei -> Ptr GLsizei -> Ptr GLchar -> m () Source

Usage: glGetShaderSource shader bufSize length source

The length of length should be 1.

The length of source should be bufSize.

Manual page: https://www.opengl.org/sdk/docs/man/html/glGetShaderSource.xhtml

glGetShaderiv :: MonadIO m => GLuint -> GLenum -> Ptr GLint -> m () Source

Usage: glGetShaderiv shader pname params

The length of params should be COMPSIZE(pname).

glGetUniformfv :: MonadIO m => GLuint -> GLint -> Ptr GLfloat -> m () Source

Usage: glGetUniformfv program location params

The length of params should be COMPSIZE(program,location).

glGetUniformiv :: MonadIO m => GLuint -> GLint -> Ptr GLint -> m () Source

Usage: glGetUniformiv program location params

The length of params should be COMPSIZE(program,location).

glGetVertexAttribPointerv :: MonadIO m => GLuint -> GLenum -> Ptr (Ptr ()) -> m () Source

Usage: glGetVertexAttribPointerv index pname pointer

The parameter pname is a VertexAttribPointerPropertyARB.

The length of pointer should be 1.

Manual page: https://www.opengl.org/sdk/docs/man/html/glGetVertexAttribPointerv.xhtml

glGetVertexAttribdv :: MonadIO m => GLuint -> GLenum -> Ptr GLdouble -> m () Source

Usage: glGetVertexAttribdv index pname params

The parameter pname is a VertexAttribPropertyARB.

The length of params should be 4.

glGetVertexAttribfv :: MonadIO m => GLuint -> GLenum -> Ptr GLfloat -> m () Source

Usage: glGetVertexAttribfv index pname params

The parameter pname is a VertexAttribPropertyARB.

The length of params should be 4.

glGetVertexAttribiv :: MonadIO m => GLuint -> GLenum -> Ptr GLint -> m () Source

Usage: glGetVertexAttribiv index pname params

The parameter pname is a VertexAttribPropertyARB.

The length of params should be 4.

glShaderSource :: MonadIO m => GLuint -> GLsizei -> Ptr (Ptr GLchar) -> Ptr GLint -> m () Source

Usage: glShaderSource shader count string length

The length of string should be count.

The length of length should be count.

Manual page: https://www.opengl.org/sdk/docs/man/html/glShaderSource.xhtml

glStencilFuncSeparate :: MonadIO m => GLenum -> GLenum -> GLint -> GLuint -> m () Source

Usage: glStencilFuncSeparate face func ref mask

The parameter face is a StencilFaceDirection.

The parameter func is a StencilFunction, one of: GL_ALWAYS, GL_EQUAL, GL_GEQUAL, GL_GREATER, GL_LEQUAL, GL_LESS, GL_NEVER, GL_NOTEQUAL.

The parameter ref is a StencilValue.

The parameter mask is a MaskedStencilValue.

Manual page: https://www.opengl.org/sdk/docs/man/html/glStencilFuncSeparate.xhtml

glStencilMaskSeparate :: MonadIO m => GLenum -> GLuint -> m () Source

Usage: glStencilMaskSeparate face mask

The parameter face is a StencilFaceDirection.

The parameter mask is a MaskedStencilValue.

Manual page: https://www.opengl.org/sdk/docs/man/html/glStencilMaskSeparate.xhtml

glStencilOpSeparate :: MonadIO m => GLenum -> GLenum -> GLenum -> GLenum -> m () Source

Usage: glStencilOpSeparate face sfail dpfail dppass

The parameter face is a StencilFaceDirection.

The parameter sfail is a StencilOp, one of: GL_DECR, GL_INCR, GL_INVERT, GL_KEEP, GL_REPLACE, GL_ZERO.

The parameter dpfail is a StencilOp, one of: GL_DECR, GL_INCR, GL_INVERT, GL_KEEP, GL_REPLACE, GL_ZERO.

The parameter dppass is a StencilOp, one of: GL_DECR, GL_INCR, GL_INVERT, GL_KEEP, GL_REPLACE, GL_ZERO.

Manual page: https://www.opengl.org/sdk/docs/man/html/glStencilOpSeparate.xhtml

glUniform1f :: MonadIO m => GLint -> GLfloat -> m () Source

Usage: glUniform1f location v0

glUniform1fv :: MonadIO m => GLint -> GLsizei -> Ptr GLfloat -> m () Source

Usage: glUniform1fv location count value

The length of value should be count*1.

glUniform1i :: MonadIO m => GLint -> GLint -> m () Source

Usage: glUniform1i location v0

glUniform1iv :: MonadIO m => GLint -> GLsizei -> Ptr GLint -> m () Source

Usage: glUniform1iv location count value

The length of value should be count*1.

glUniform2f :: MonadIO m => GLint -> GLfloat -> GLfloat -> m () Source

Usage: glUniform2f location v0 v1

glUniform2fv :: MonadIO m => GLint -> GLsizei -> Ptr GLfloat -> m () Source

Usage: glUniform2fv location count value

The length of value should be count*2.

glUniform2i :: MonadIO m => GLint -> GLint -> GLint -> m () Source

Usage: glUniform2i location v0 v1

glUniform2iv :: MonadIO m => GLint -> GLsizei -> Ptr GLint -> m () Source

Usage: glUniform2iv location count value

The length of value should be count*2.

glUniform3f :: MonadIO m => GLint -> GLfloat -> GLfloat -> GLfloat -> m () Source

Usage: glUniform3f location v0 v1 v2

glUniform3fv :: MonadIO m => GLint -> GLsizei -> Ptr GLfloat -> m () Source

Usage: glUniform3fv location count value

The length of value should be count*3.

glUniform3i :: MonadIO m => GLint -> GLint -> GLint -> GLint -> m () Source

Usage: glUniform3i location v0 v1 v2

glUniform3iv :: MonadIO m => GLint -> GLsizei -> Ptr GLint -> m () Source

Usage: glUniform3iv location count value

The length of value should be count*3.

glUniform4f :: MonadIO m => GLint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> m () Source

Usage: glUniform4f location v0 v1 v2 v3

glUniform4fv :: MonadIO m => GLint -> GLsizei -> Ptr GLfloat -> m () Source

Usage: glUniform4fv location count value

The length of value should be count*4.

glUniform4i :: MonadIO m => GLint -> GLint -> GLint -> GLint -> GLint -> m () Source

Usage: glUniform4i location v0 v1 v2 v3

glUniform4iv :: MonadIO m => GLint -> GLsizei -> Ptr GLint -> m () Source

Usage: glUniform4iv location count value

The length of value should be count*4.

glUniformMatrix2fv :: MonadIO m => GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> m () Source

Usage: glUniformMatrix2fv location count transpose value

The parameter transpose is a Boolean, one of: GL_FALSE, GL_TRUE.

The length of value should be count*4.

glUniformMatrix3fv :: MonadIO m => GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> m () Source

Usage: glUniformMatrix3fv location count transpose value

The parameter transpose is a Boolean, one of: GL_FALSE, GL_TRUE.

The length of value should be count*9.

glUniformMatrix4fv :: MonadIO m => GLint -> GLsizei -> GLboolean -> Ptr GLfloat -> m () Source

Usage: glUniformMatrix4fv location count transpose value

The parameter transpose is a Boolean, one of: GL_FALSE, GL_TRUE.

The length of value should be count*16.

glVertexAttrib1d :: MonadIO m => GLuint -> GLdouble -> m () Source

Usage: glVertexAttrib1d index x

The vector equivalent of this command is glVertexAttrib1dv.

glVertexAttrib1dv :: MonadIO m => GLuint -> Ptr GLdouble -> m () Source

Usage: glVertexAttrib1dv index v

The length of v should be 1.

glVertexAttrib1f :: MonadIO m => GLuint -> GLfloat -> m () Source

Usage: glVertexAttrib1f index x

The vector equivalent of this command is glVertexAttrib1fv.

glVertexAttrib1fv :: MonadIO m => GLuint -> Ptr GLfloat -> m () Source

Usage: glVertexAttrib1fv index v

The length of v should be 1.

glVertexAttrib1s :: MonadIO m => GLuint -> GLshort -> m () Source

Usage: glVertexAttrib1s index x

The vector equivalent of this command is glVertexAttrib1sv.

glVertexAttrib1sv :: MonadIO m => GLuint -> Ptr GLshort -> m () Source

Usage: glVertexAttrib1sv index v

The length of v should be 1.

glVertexAttrib2d :: MonadIO m => GLuint -> GLdouble -> GLdouble -> m () Source

Usage: glVertexAttrib2d index x y

The vector equivalent of this command is glVertexAttrib2dv.

glVertexAttrib2dv :: MonadIO m => GLuint -> Ptr GLdouble -> m () Source

Usage: glVertexAttrib2dv index v

The length of v should be 2.

glVertexAttrib2f :: MonadIO m => GLuint -> GLfloat -> GLfloat -> m () Source

Usage: glVertexAttrib2f index x y

The vector equivalent of this command is glVertexAttrib2fv.

glVertexAttrib2fv :: MonadIO m => GLuint -> Ptr GLfloat -> m () Source

Usage: glVertexAttrib2fv index v

The length of v should be 2.

glVertexAttrib2s :: MonadIO m => GLuint -> GLshort -> GLshort -> m () Source

Usage: glVertexAttrib2s index x y

The vector equivalent of this command is glVertexAttrib2sv.

glVertexAttrib2sv :: MonadIO m => GLuint -> Ptr GLshort -> m () Source

Usage: glVertexAttrib2sv index v

The length of v should be 2.

glVertexAttrib3d :: MonadIO m => GLuint -> GLdouble -> GLdouble -> GLdouble -> m () Source

Usage: glVertexAttrib3d index x y z

The vector equivalent of this command is glVertexAttrib3dv.

glVertexAttrib3dv :: MonadIO m => GLuint -> Ptr GLdouble -> m () Source

Usage: glVertexAttrib3dv index v

The length of v should be 3.

glVertexAttrib3f :: MonadIO m => GLuint -> GLfloat -> GLfloat -> GLfloat -> m () Source

Usage: glVertexAttrib3f index x y z

The vector equivalent of this command is glVertexAttrib3fv.

glVertexAttrib3fv :: MonadIO m => GLuint -> Ptr GLfloat -> m () Source

Usage: glVertexAttrib3fv index v

The length of v should be 3.

glVertexAttrib3s :: MonadIO m => GLuint -> GLshort -> GLshort -> GLshort -> m () Source

Usage: glVertexAttrib3s index x y z

The vector equivalent of this command is glVertexAttrib3sv.

glVertexAttrib3sv :: MonadIO m => GLuint -> Ptr GLshort -> m () Source

Usage: glVertexAttrib3sv index v

The length of v should be 3.

glVertexAttrib4Nbv :: MonadIO m => GLuint -> Ptr GLbyte -> m () Source

Usage: glVertexAttrib4Nbv index v

The length of v should be 4.

glVertexAttrib4Niv :: MonadIO m => GLuint -> Ptr GLint -> m () Source

Usage: glVertexAttrib4Niv index v

The length of v should be 4.

glVertexAttrib4Nsv :: MonadIO m => GLuint -> Ptr GLshort -> m () Source

Usage: glVertexAttrib4Nsv index v

The length of v should be 4.

glVertexAttrib4Nub :: MonadIO m => GLuint -> GLubyte -> GLubyte -> GLubyte -> GLubyte -> m () Source

Usage: glVertexAttrib4Nub index x y z w

glVertexAttrib4Nubv :: MonadIO m => GLuint -> Ptr GLubyte -> m () Source

Usage: glVertexAttrib4Nubv index v

The length of v should be 4.

glVertexAttrib4Nuiv :: MonadIO m => GLuint -> Ptr GLuint -> m () Source

Usage: glVertexAttrib4Nuiv index v

The length of v should be 4.

glVertexAttrib4Nusv :: MonadIO m => GLuint -> Ptr GLushort -> m () Source

Usage: glVertexAttrib4Nusv index v

The length of v should be 4.

glVertexAttrib4bv :: MonadIO m => GLuint -> Ptr GLbyte -> m () Source

Usage: glVertexAttrib4bv index v

The length of v should be 4.

glVertexAttrib4d :: MonadIO m => GLuint -> GLdouble -> GLdouble -> GLdouble -> GLdouble -> m () Source

Usage: glVertexAttrib4d index x y z w

The vector equivalent of this command is glVertexAttrib4dv.

glVertexAttrib4dv :: MonadIO m => GLuint -> Ptr GLdouble -> m () Source

Usage: glVertexAttrib4dv index v

The length of v should be 4.

glVertexAttrib4f :: MonadIO m => GLuint -> GLfloat -> GLfloat -> GLfloat -> GLfloat -> m () Source

Usage: glVertexAttrib4f index x y z w

The vector equivalent of this command is glVertexAttrib4fv.

glVertexAttrib4fv :: MonadIO m => GLuint -> Ptr GLfloat -> m () Source

Usage: glVertexAttrib4fv index v

The length of v should be 4.

glVertexAttrib4iv :: MonadIO m => GLuint -> Ptr GLint -> m () Source

Usage: glVertexAttrib4iv index v

The length of v should be 4.

glVertexAttrib4s :: MonadIO m => GLuint -> GLshort -> GLshort -> GLshort -> GLshort -> m () Source

Usage: glVertexAttrib4s index x y z w

The vector equivalent of this command is glVertexAttrib4sv.

glVertexAttrib4sv :: MonadIO m => GLuint -> Ptr GLshort -> m () Source

Usage: glVertexAttrib4sv index v

The length of v should be 4.

glVertexAttrib4ubv :: MonadIO m => GLuint -> Ptr GLubyte -> m () Source

Usage: glVertexAttrib4ubv index v

The length of v should be 4.

glVertexAttrib4uiv :: MonadIO m => GLuint -> Ptr GLuint -> m () Source

Usage: glVertexAttrib4uiv index v

The length of v should be 4.

glVertexAttrib4usv :: MonadIO m => GLuint -> Ptr GLushort -> m () Source

Usage: glVertexAttrib4usv index v

The length of v should be 4.

glVertexAttribPointer :: MonadIO m => GLuint -> GLint -> GLenum -> GLboolean -> GLsizei -> Ptr () -> m () Source

Usage: glVertexAttribPointer index size type normalized stride pointer

The parameter type is a VertexAttribPointerType.

The parameter normalized is a Boolean, one of: GL_FALSE, GL_TRUE.

The length of pointer should be COMPSIZE(size,type,stride).

Manual page: https://www.opengl.org/sdk/docs/man/html/glVertexAttribPointer.xhtml

pattern GL_ACTIVE_ATTRIBUTES :: (Num a, Eq a) => a Source

pattern GL_ACTIVE_UNIFORMS :: (Num a, Eq a) => a Source

pattern GL_ACTIVE_UNIFORM_MAX_LENGTH :: (Num a, Eq a) => a Source

pattern GL_ATTACHED_SHADERS :: (Num a, Eq a) => a Source

pattern GL_BLEND_EQUATION_ALPHA :: (Num a, Eq a) => a Source

pattern GL_BLEND_EQUATION_RGB :: (Num a, Eq a) => a Source

pattern GL_BOOL :: (Num a, Eq a) => a Source

pattern GL_BOOL_VEC2 :: (Num a, Eq a) => a Source

pattern GL_BOOL_VEC3 :: (Num a, Eq a) => a Source

pattern GL_BOOL_VEC4 :: (Num a, Eq a) => a Source

pattern GL_COMPILE_STATUS :: (Num a, Eq a) => a Source

pattern GL_COORD_REPLACE :: (Num a, Eq a) => a Source

pattern GL_CURRENT_PROGRAM :: (Num a, Eq a) => a Source

pattern GL_CURRENT_VERTEX_ATTRIB :: (Num a, Eq a) => a Source

pattern GL_DELETE_STATUS :: (Num a, Eq a) => a Source

pattern GL_DRAW_BUFFER0 :: (Num a, Eq a) => a Source

pattern GL_DRAW_BUFFER1 :: (Num a, Eq a) => a Source

pattern GL_DRAW_BUFFER10 :: (Num a, Eq a) => a Source

pattern GL_DRAW_BUFFER11 :: (Num a, Eq a) => a Source

pattern GL_DRAW_BUFFER12 :: (Num a, Eq a) => a Source

pattern GL_DRAW_BUFFER13 :: (Num a, Eq a) => a Source

pattern GL_DRAW_BUFFER14 :: (Num a, Eq a) => a Source

pattern GL_DRAW_BUFFER15 :: (Num a, Eq a) => a Source

pattern GL_DRAW_BUFFER2 :: (Num a, Eq a) => a Source

pattern GL_DRAW_BUFFER3 :: (Num a, Eq a) => a Source

pattern GL_DRAW_BUFFER4 :: (Num a, Eq a) => a Source

pattern GL_DRAW_BUFFER5 :: (Num a, Eq a) => a Source

pattern GL_DRAW_BUFFER6 :: (Num a, Eq a) => a Source

pattern GL_DRAW_BUFFER7 :: (Num a, Eq a) => a Source

pattern GL_DRAW_BUFFER8 :: (Num a, Eq a) => a Source

pattern GL_DRAW_BUFFER9 :: (Num a, Eq a) => a Source

pattern GL_FLOAT_MAT2 :: (Num a, Eq a) => a Source

pattern GL_FLOAT_MAT3 :: (Num a, Eq a) => a Source

pattern GL_FLOAT_MAT4 :: (Num a, Eq a) => a Source

pattern GL_FLOAT_VEC2 :: (Num a, Eq a) => a Source

pattern GL_FLOAT_VEC3 :: (Num a, Eq a) => a Source

pattern GL_FLOAT_VEC4 :: (Num a, Eq a) => a Source

pattern GL_FRAGMENT_SHADER :: (Num a, Eq a) => a Source

pattern GL_INFO_LOG_LENGTH :: (Num a, Eq a) => a Source

pattern GL_INT_VEC2 :: (Num a, Eq a) => a Source

pattern GL_INT_VEC3 :: (Num a, Eq a) => a Source

pattern GL_INT_VEC4 :: (Num a, Eq a) => a Source

pattern GL_LINK_STATUS :: (Num a, Eq a) => a Source

pattern GL_LOWER_LEFT :: (Num a, Eq a) => a Source

pattern GL_MAX_DRAW_BUFFERS :: (Num a, Eq a) => a Source

pattern GL_MAX_TEXTURE_COORDS :: (Num a, Eq a) => a Source

pattern GL_MAX_TEXTURE_IMAGE_UNITS :: (Num a, Eq a) => a Source

pattern GL_MAX_VARYING_FLOATS :: (Num a, Eq a) => a Source

pattern GL_MAX_VERTEX_ATTRIBS :: (Num a, Eq a) => a Source

pattern GL_POINT_SPRITE :: (Num a, Eq a) => a Source

pattern GL_POINT_SPRITE_COORD_ORIGIN :: (Num a, Eq a) => a Source

pattern GL_SAMPLER_1D :: (Num a, Eq a) => a Source

pattern GL_SAMPLER_1D_SHADOW :: (Num a, Eq a) => a Source

pattern GL_SAMPLER_2D :: (Num a, Eq a) => a Source

pattern GL_SAMPLER_2D_SHADOW :: (Num a, Eq a) => a Source

pattern GL_SAMPLER_3D :: (Num a, Eq a) => a Source

pattern GL_SAMPLER_CUBE :: (Num a, Eq a) => a Source

pattern GL_SHADER_SOURCE_LENGTH :: (Num a, Eq a) => a Source

pattern GL_SHADER_TYPE :: (Num a, Eq a) => a Source

pattern GL_SHADING_LANGUAGE_VERSION :: (Num a, Eq a) => a Source

pattern GL_STENCIL_BACK_FAIL :: (Num a, Eq a) => a Source

pattern GL_STENCIL_BACK_FUNC :: (Num a, Eq a) => a Source

pattern GL_STENCIL_BACK_REF :: (Num a, Eq a) => a Source

pattern GL_STENCIL_BACK_VALUE_MASK :: (Num a, Eq a) => a Source

pattern GL_STENCIL_BACK_WRITEMASK :: (Num a, Eq a) => a Source

pattern GL_UPPER_LEFT :: (Num a, Eq a) => a Source

pattern GL_VALIDATE_STATUS :: (Num a, Eq a) => a Source

pattern GL_VERTEX_ATTRIB_ARRAY_SIZE :: (Num a, Eq a) => a Source

pattern GL_VERTEX_ATTRIB_ARRAY_TYPE :: (Num a, Eq a) => a Source

pattern GL_VERTEX_PROGRAM_POINT_SIZE :: (Num a, Eq a) => a Source

pattern GL_VERTEX_PROGRAM_TWO_SIDE :: (Num a, Eq a) => a Source

pattern GL_VERTEX_SHADER :: (Num a, Eq a) => a Source