OpenGLRaw-3.3.4.1: A raw binding for the OpenGL graphics system

Copyright | (c) Sven Panne 2019
License | BSD3
Maintainer | Sven Panne <svenpanne@gmail.com>
Stability | stable
Portability | portable
Safe Haskell | None
Language | Haskell2010

Graphics.GL.ARB.ProgramInterfaceQuery

Contents

- Extension Support
- Enums
- Functions

Description

Synopsis

- glGetARBProgramInterfaceQuery :: MonadIO m => m Bool
- gl_ARB_program_interface_query :: Bool
- pattern GL_ACTIVE_RESOURCES :: GLenum
- pattern GL_ACTIVE_VARIABLES :: GLenum
- pattern GL_ARRAY_SIZE :: GLenum
- pattern GL_ARRAY_STRIDE :: GLenum
- pattern GL_ATOMIC_COUNTER_BUFFER :: GLenum
- pattern GL_ATOMIC_COUNTER_BUFFER_INDEX :: GLenum
- pattern GL_BLOCK_INDEX :: GLenum
- pattern GL_BUFFER_BINDING :: GLenum
- pattern GL_BUFFER_DATA_SIZE :: GLenum
- pattern GL_BUFFER_VARIABLE :: GLenum
- pattern GL_COMPATIBLE_SUBROUTINES :: GLenum
- pattern GL_COMPUTE_SUBROUTINE :: GLenum
- pattern GL_COMPUTE_SUBROUTINE_UNIFORM :: GLenum
- pattern GL_FRAGMENT_SUBROUTINE :: GLenum
- pattern GL_FRAGMENT_SUBROUTINE_UNIFORM :: GLenum
- pattern GL_GEOMETRY_SUBROUTINE :: GLenum
- pattern GL_GEOMETRY_SUBROUTINE_UNIFORM :: GLenum
- pattern GL_IS_PER_PATCH :: GLenum
- pattern GL_IS_ROW_MAJOR :: GLenum
- pattern GL_LOCATION :: GLenum
- pattern GL_LOCATION_INDEX :: GLenum
- pattern GL_MATRIX_STRIDE :: GLenum
- pattern GL_MAX_NAME_LENGTH :: GLenum
- pattern GL_MAX_NUM_ACTIVE_VARIABLES :: GLenum
- pattern GL_MAX_NUM_COMPATIBLE_SUBROUTINES :: GLenum
- pattern GL_NAME_LENGTH :: GLenum
- pattern GL_NUM_ACTIVE_VARIABLES :: GLenum
- pattern GL_NUM_COMPATIBLE_SUBROUTINES :: GLenum
- pattern GL_OFFSET :: GLenum
- pattern GL_PROGRAM_INPUT :: GLenum
- pattern GL_PROGRAM_OUTPUT :: GLenum
- pattern GL_REFERENCED_BY_COMPUTE_SHADER :: GLenum
- pattern GL_REFERENCED_BY_FRAGMENT_SHADER :: GLenum
- pattern GL_REFERENCED_BY_GEOMETRY_SHADER :: GLenum
- pattern GL_REFERENCED_BY_TESS_CONTROL_SHADER :: GLenum
- pattern GL_REFERENCED_BY_TESS_EVALUATION_SHADER :: GLenum
- pattern GL_REFERENCED_BY_VERTEX_SHADER :: GLenum
- pattern GL_SHADER_STORAGE_BLOCK :: GLenum
- pattern GL_TESS_CONTROL_SUBROUTINE :: GLenum
- pattern GL_TESS_CONTROL_SUBROUTINE_UNIFORM :: GLenum
- pattern GL_TESS_EVALUATION_SUBROUTINE :: GLenum
- pattern GL_TESS_EVALUATION_SUBROUTINE_UNIFORM :: GLenum
- pattern GL_TOP_LEVEL_ARRAY_SIZE :: GLenum
- pattern GL_TOP_LEVEL_ARRAY_STRIDE :: GLenum
- pattern GL_TRANSFORM_FEEDBACK_VARYING :: GLenum
- pattern GL_TYPE :: GLenum
- pattern GL_UNIFORM :: GLenum
- pattern GL_UNIFORM_BLOCK :: GLenum
- pattern GL_VERTEX_SUBROUTINE :: GLenum
- pattern GL_VERTEX_SUBROUTINE_UNIFORM :: GLenum
- glGetProgramInterfaceiv :: MonadIO m => GLuint -> GLenum -> GLenum -> Ptr GLint -> m ()
- glGetProgramResourceIndex :: MonadIO m => GLuint -> GLenum -> Ptr GLchar -> m GLuint
- glGetProgramResourceLocation :: MonadIO m => GLuint -> GLenum -> Ptr GLchar -> m GLint
- glGetProgramResourceLocationIndex :: MonadIO m => GLuint -> GLenum -> Ptr GLchar -> m GLint
- glGetProgramResourceName :: MonadIO m => GLuint -> GLenum -> GLuint -> GLsizei -> Ptr GLsizei -> Ptr GLchar -> m ()
- glGetProgramResourceiv :: MonadIO m => GLuint -> GLenum -> GLuint -> GLsizei -> Ptr GLenum -> GLsizei -> Ptr GLsizei -> Ptr GLint -> m ()

# Extension Support

glGetARBProgramInterfaceQuery :: MonadIO m => m Bool Source #

Is the ARB_program_interface_query extension supported?

gl_ARB_program_interface_query :: Bool Source #

Is the ARB_program_interface_query extension supported? Note that in the presence of multiple contexts with different capabilities, this might be wrong. Use `glGetARBProgramInterfaceQuery` in those cases instead.

# Enums

pattern GL_ACTIVE_RESOURCES :: GLenum Source #

pattern GL_ACTIVE_VARIABLES :: GLenum Source #

pattern GL_ARRAY_SIZE :: GLenum Source #

pattern GL_ARRAY_STRIDE :: GLenum Source #

pattern GL_ATOMIC_COUNTER_BUFFER :: GLenum Source #

pattern GL_ATOMIC_COUNTER_BUFFER_INDEX :: GLenum Source #

pattern GL_BLOCK_INDEX :: GLenum Source #

pattern GL_BUFFER_BINDING :: GLenum Source #

pattern GL_BUFFER_DATA_SIZE :: GLenum Source #

pattern GL_BUFFER_VARIABLE :: GLenum Source #

pattern GL_COMPATIBLE_SUBROUTINES :: GLenum Source #

pattern GL_COMPUTE_SUBROUTINE :: GLenum Source #

pattern GL_COMPUTE_SUBROUTINE_UNIFORM :: GLenum Source #

pattern GL_FRAGMENT_SUBROUTINE :: GLenum Source #

pattern GL_FRAGMENT_SUBROUTINE_UNIFORM :: GLenum Source #

pattern GL_GEOMETRY_SUBROUTINE :: GLenum Source #

pattern GL_GEOMETRY_SUBROUTINE_UNIFORM :: GLenum Source #

pattern GL_IS_PER_PATCH :: GLenum Source #

pattern GL_IS_ROW_MAJOR :: GLenum Source #

pattern GL_LOCATION :: GLenum Source #

pattern GL_LOCATION_INDEX :: GLenum Source #

pattern GL_MATRIX_STRIDE :: GLenum Source #

pattern GL_MAX_NAME_LENGTH :: GLenum Source #

pattern GL_MAX_NUM_ACTIVE_VARIABLES :: GLenum Source #

pattern GL_MAX_NUM_COMPATIBLE_SUBROUTINES :: GLenum Source #

pattern GL_NAME_LENGTH :: GLenum Source #

pattern GL_NUM_ACTIVE_VARIABLES :: GLenum Source #

pattern GL_NUM_COMPATIBLE_SUBROUTINES :: GLenum Source #

pattern GL_OFFSET :: GLenum Source #

pattern GL_PROGRAM_INPUT :: GLenum Source #

pattern GL_PROGRAM_OUTPUT :: GLenum Source #

pattern GL_REFERENCED_BY_COMPUTE_SHADER :: GLenum Source #

pattern GL_REFERENCED_BY_FRAGMENT_SHADER :: GLenum Source #

pattern GL_REFERENCED_BY_GEOMETRY_SHADER :: GLenum Source #

pattern GL_REFERENCED_BY_TESS_CONTROL_SHADER :: GLenum Source #

pattern GL_REFERENCED_BY_TESS_EVALUATION_SHADER :: GLenum Source #

pattern GL_REFERENCED_BY_VERTEX_SHADER :: GLenum Source #

pattern GL_SHADER_STORAGE_BLOCK :: GLenum Source #

pattern GL_TESS_CONTROL_SUBROUTINE :: GLenum Source #

pattern GL_TESS_CONTROL_SUBROUTINE_UNIFORM :: GLenum Source #

pattern GL_TESS_EVALUATION_SUBROUTINE :: GLenum Source #

pattern GL_TESS_EVALUATION_SUBROUTINE_UNIFORM :: GLenum Source #

pattern GL_TOP_LEVEL_ARRAY_SIZE :: GLenum Source #

pattern GL_TOP_LEVEL_ARRAY_STRIDE :: GLenum Source #

pattern GL_TRANSFORM_FEEDBACK_VARYING :: GLenum Source #

pattern GL_TYPE :: GLenum Source #

pattern GL_UNIFORM :: GLenum Source #

pattern GL_UNIFORM_BLOCK :: GLenum Source #

pattern GL_VERTEX_SUBROUTINE :: GLenum Source #

pattern GL_VERTEX_SUBROUTINE_UNIFORM :: GLenum Source #

# Functions

glGetProgramInterfaceiv Source #

Arguments

:: MonadIO m |
=> GLuint | `program`.
-> GLenum | `programInterface` of type ProgramInterface.
-> GLenum | `pname` of type ProgramInterfacePName.
-> Ptr GLint | `params` pointing to `COMPSIZE(pname)` elements of type `GLint`.
-> m () |

Manual page for OpenGL 4.x.

glGetProgramResourceIndex Source #

Arguments

:: MonadIO m |
=> GLuint | `program`.
-> GLenum | `programInterface` of type ProgramInterface.
-> Ptr GLchar | `name` pointing to `COMPSIZE(name)` elements of type `GLchar`.
-> m GLuint |

Manual page for OpenGL 4.x.

glGetProgramResourceLocation Source #

Arguments

:: MonadIO m |
=> GLuint | `program`.
-> GLenum | `programInterface` of type ProgramInterface.
-> Ptr GLchar | `name` pointing to `COMPSIZE(name)` elements of type `GLchar`.
-> m GLint |

Manual page for OpenGL 4.x.

glGetProgramResourceLocationIndex Source #

Arguments

:: MonadIO m |
=> GLuint | `program`.
-> GLenum | `programInterface` of type ProgramInterface.
-> Ptr GLchar | `name` pointing to `COMPSIZE(name)` elements of type `GLchar`.
-> m GLint |

Manual page for OpenGL 4.x.

glGetProgramResourceName Source #

Arguments

:: MonadIO m |
=> GLuint | `program`.
-> GLenum | `programInterface` of type ProgramInterface.
-> GLuint | `index`.
-> GLsizei | `bufSize`.
-> Ptr GLsizei | `length` pointing to `1` element of type `GLsizei`.
-> Ptr GLchar | `name` pointing to `bufSize` elements of type `GLchar`.
-> m () |

Manual page for OpenGL 4.x.

glGetProgramResourceiv Source #

Arguments

:: MonadIO m |
=> GLuint | `program`.
-> GLenum | `programInterface` of type ProgramInterface.
-> GLuint | `index`.
-> GLsizei | `propCount`.
-> Ptr GLenum | `props` pointing to `propCount` elements of type ProgramResourceProperty.
-> GLsizei | `count`.
-> Ptr GLsizei | `length` pointing to `1` element of type `GLsizei`.
-> Ptr GLint | `params` pointing to `count` elements of type `GLint`.
-> m () |

Manual page for OpenGL 4.x.