Provided by: opengl-4-man-doc_1.0~svn22917-1_all bug

NAME

       glGetSubroutineIndex - retrieve the index of a subroutine uniform of a given shader stage
       within a program

C SPECIFICATION

       GLuint glGetSubroutineIndex(GLuint program, GLenum shadertype, const GLchar *name);

PARAMETERS

       program
           Specifies the name of the program containing shader stage.

       shadertype
           Specifies the shader stage from which to query for subroutine uniform index.
           shadertype must be one of GL_VERTEX_SHADER, GL_TESS_CONTROL_SHADER,
           GL_TESS_EVALUATION_SHADER, GL_GEOMETRY_SHADER or GL_FRAGMENT_SHADER.

       name
           Specifies the name of the subroutine uniform whose index to query.

DESCRIPTION

       glGetSubroutineIndex returns the index of a subroutine uniform within a shader stage
       attached to a program object.  program contains the name of the program to which the
       shader is attached.  shadertype specifies the stage from which to query shader subroutine
       index.  name contains the null-terminated name of the subroutine uniform whose name to
       query.

       If name is not the name of a subroutine uniform in the shader stage, GL_INVALID_INDEX is
       returned, but no error is generated. If name is the name of a subroutine uniform in the
       shader stage, a value between zero and the value of GL_ACTIVE_SUBROUTINES minus one will
       be returned. Subroutine indices are assigned using consecutive integers in the range from
       zero to the value of GL_ACTIVE_SUBROUTINES minus one for the shader stage.

ERRORS

       GL_INVALID_ENUM is generated if shadertype or pname is not one of the accepted values.

       GL_INVALID_VALUE is generated if program is not the name of an existing program object.

SEE ALSO

       glGetProgram(), glGetActiveSubroutineUniform(), glGetActiveSubroutineUniformName()

COPYRIGHT

       Copyright © 2010 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.
       http://opencontent.org/openpub/.

AUTHORS

       opengl.org