glGetShader

Returns a parameter from a shader object

Signature

glGetShaderiv( GLuint ( shader ) , GLenum ( pname ) , GLint *( params ) )-> void
glGetShaderiv( shader , pname , params )
Retrieve the integer parameter for the given shader

    shader -- shader ID to query
    pname -- parameter name
    status -- pointer to integer to receive status or None to
        return the parameter as an integer value

    returns
        integer if status parameter is None
        status if status parameter is not None
    

Parameters

VariablesDescription
shader
Specifies the shader object to be queried.
pname
Specifies the object parameter. Accepted symbolic names are GL_SHADER_TYPE , GL_DELETE_STATUS , GL_COMPILE_STATUS , GL_INFO_LOG_LENGTH , GL_SHADER_SOURCE_LENGTH .
params
Returns the requested object parameter.

Description

glGetShader returns in params the value of a parameter for a specific shader object. The following parameters are defined:
GL_SHADER_TYPE
params returns GL_VERTEX_SHADER if shader is a vertex shader object, GL_GEOMETRY_SHADER if shader is a geometry shader object, and GL_FRAGMENT_SHADER if shader is a fragment shader object.
GL_DELETE_STATUS
params returns GL_TRUE if shader is currently flagged for deletion, and GL_FALSE otherwise.
GL_COMPILE_STATUS
params returns GL_TRUE if the last compile operation on shader was successful, and GL_FALSE otherwise.
GL_INFO_LOG_LENGTH
params returns the number of characters in the information log for shader including the null termination character (i.e., the size of the character buffer required to store the information log). If shader has no information log, a value of 0 is returned.
GL_SHADER_SOURCE_LENGTH
params returns the length of the concatenation of the source strings that make up the shader source for the shader , including the null termination character. (i.e., the size of the character buffer required to store the shader source). If no source code exists, 0 is returned.

Notes

If an error is generated, no change is made to the contents of params .

Errors

GL_INVALID_VALUE is generated if shader is not a value generated by OpenGL.
GL_INVALID_OPERATION is generated if shader does not refer to a shader object.
GL_INVALID_ENUM is generated if pname is not an accepted value.

Associated Gets

glGetShaderInfoLog with argument shader
glGetShaderSource with argument shader

Version Support

glGetShaderiv

See Also

Copyright

Copyright
2003-2005 3Dlabs Inc. Ltd. Copyright
2010-2014 Khronos Group. This material may be distributed subject to the terms and conditions set forth in the Open Publication License, v 1.0, 8 June 1999. .

Sample Code References

The following code samples have been found which appear to reference the functions described here. Take care that the code may be old, broken or not even use PyOpenGL.

glGetShaderiv
Visvis core/shaders.py Lines: 532
{GPL3} OpenGL-Programmable 05-shader.py Lines: 37
{GPL3} OpenGL-Programmable 07-attrib.py Lines: 37
{GPL3} OpenGL-Programmable 09-gles2.py Lines: 38
{GPL3} OpenGL-Programmable 06-perpixel.py Lines: 37
{GPL3} OpenGL-Programmable 10-gl3.2core.py Lines: 37
{GPL3} OpenGL-Programmable 08-pbo.py Lines: 37