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

NAME

       glUseProgramStages - bind stages of a program object to a program pipeline

C SPECIFICATION

       void glUseProgramStages(GLuint pipeline, GLbitfield stages, GLuint program);

PARAMETERS

       pipeline
           Specifies the program pipeline object to which to bind stages from program.

       stages
           Specifies a set of program stages to bind to the program pipeline object.

       program
           Specifies the program object containing the shader executables to use in pipeline.

DESCRIPTION

       glUseProgramStages binds executables from a program object associated with a specified set
       of shader stages to the program pipeline object given by pipeline.  pipeline specifies the
       program pipeline object to which to bind the executables.  stages contains a logical
       combination of bits indicating the shader stages to use within program with the program
       pipeline object pipeline.  stages must be a logical combination of GL_VERTEX_SHADER_BIT,
       GL_TESS_CONTROL_SHADER_BIT, GL_TESS_EVALUATION_SHADER_BIT, GL_GEOMETRY_SHADER_BIT,
       GL_FRAGMENT_SHADER_BIT and GL_COMPUTE_SHADER_BIT. Additionally, the special value
       GL_ALL_SHADER_BITS may be specified to indicate that all executables contained in program
       should be installed in pipeline.

       If program refers to a program object with a valid shader attached for an indicated shader
       stage, glUseProgramStages installs the executable code for that stage in the indicated
       program pipeline object pipeline. If program is zero, or refers to a program object with
       no valid shader executable for a given stage, it is as if the pipeline object has no
       programmable stage configured for the indicated shader stages. If stages contains bits
       other than those listed above, and is not equal to GL_ALL_SHADER_BITS, an error is
       generated.

NOTES

       The GL_COMPUTE_SHADER_BIT bit is available only if the GL version is 4.3 or greater.

ERRORS

       GL_INVALID_VALUE is generated if shaders contains set bits that are not recognized, and is
       not the reserved value GL_ALL_SHADER_BITS.

       GL_INVALID_OPERATION is generated if program refers to a program object that was not
       linked with its GL_PROGRAM_SEPARABLE status set.

       GL_INVALID_OPERATION is generated if program refers to a program object that has not been
       successfully linked.

       GL_INVALID_OPERATION is generated if pipeline is not a name previously returned from a
       call to glGenProgramPipelines() or if such a name has been deleted by a call to
       glDeleteProgramPipelines().

SEE ALSO

       glGenProgramPipelines(), glDeleteProgramPipelines(), glIsProgramPipeline()

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