OGLplus (0.45.0) a C++ wrapper for OpenGL

An OGLplus object encapsulating OpenGL program pipeline functionality. More...

#include </home/chochlik/devel/oglplus/include/oglplus/program_pipeline.hpp>

Inheritance diagram for oglplus::ProgramPipeline:
Collaboration diagram for oglplus::ProgramPipeline:

Public Member Functions

void Bind (void) const
 Bind this program pipeline. More...
 
aux::ProgPLUseStages UseStages (const ProgramOps &program) const
 Specifies program stages by calling functions of the returned object. More...
 
void UseStages (Bitfield< ProgramPipelineStage > stages, const ProgramOps &program) const
 Use the specified stages of the program. More...
 
String GetInfoLog (void) const
 Returns the validation process output. More...
 
bool IsValid (void) const
 Returns true if the pipeline is validated, false otherwise. More...
 
void Validate (void) const
 Validates this program pipeline. More...
 
void ActiveShaderProgram (const ProgramOps &program) const
 Make the program active for this program pipeline. More...
 
Managed< ProgramOpsActiveShaderProgram (void) const
 Returns the current active shader program. More...
 
bool HasShader (ShaderType shader_type) const
 Returns true if this pipeline contains a shader of a particular type. More...
 
Managed< ProgramOpsShaderProgram (ShaderType shader_type) const
 Returns the program from which the shader_type is used. More...
 

Static Public Member Functions

static void Unbind (void)
 Unbinds the current program pipeline object (if any) More...
 

Detailed Description

An OGLplus object encapsulating OpenGL program pipeline functionality.

Member Function Documentation

void oglplus::ProgramPipelineOps::ActiveShaderProgram ( const ProgramOps program) const
inherited

Make the program active for this program pipeline.

Related OpenGL symbols:
glActiveShaderProgram

References oglplus::ProgramPipelineOps::ActiveShaderProgram(), and OGLPLUS_CHECK.

Managed<ProgramOps> oglplus::ProgramPipelineOps::ActiveShaderProgram ( void  ) const
inherited

Returns the current active shader program.

Related OpenGL symbols:
glGetProgramPipeline GL_ACTIVE_PROGRAM

Referenced by oglplus::ProgramPipelineOps::ActiveShaderProgram().

void oglplus::ProgramPipelineOps::Bind ( void  ) const
inherited

Bind this program pipeline.

Related OpenGL symbols:
glBindProgramPipeline
String oglplus::ProgramPipelineOps::GetInfoLog ( void  ) const
inherited

Returns the validation process output.

Related OpenGL symbols:
glGetProgramPipeline glGetProgramPipelineInfoLog
bool oglplus::ProgramPipelineOps::HasShader ( ShaderType  shader_type) const
inherited

Returns true if this pipeline contains a shader of a particular type.

Related OpenGL symbols:
glGetProgramPipeline
bool oglplus::ProgramPipelineOps::IsValid ( void  ) const
inherited

Returns true if the pipeline is validated, false otherwise.

See Also
Validate
Related OpenGL symbols:
glGetProgramPipeline

Referenced by oglplus::ProgramPipelineOps::Validate().

Managed<ProgramOps> oglplus::ProgramPipelineOps::ShaderProgram ( ShaderType  shader_type) const
inherited

Returns the program from which the shader_type is used.

Related OpenGL symbols:
glGetProgramPipeline
static void oglplus::ProgramPipelineOps::Unbind ( void  )
staticinherited

Unbinds the current program pipeline object (if any)

Related OpenGL symbols:
glBindProgramPipeline

References OGLPLUS_VERIFY.

aux::ProgPLUseStages oglplus::ProgramPipelineOps::UseStages ( const ProgramOps program) const
inherited

Specifies program stages by calling functions of the returned object.

This function returns an object that allows to specify which stages of program should by used when this pipeline is active by calling the Vertex(), TessControl(), TessEvaluation(), Geometry(), Fragment() and All() member functions of the object returned by UseStages.

example:

Program prog;
...
pp.UseStages(prog).Vertex();
pp.UseStages(prog).Vertex().Geometry();
pp.UseStages(prog).Vertex().TessControl().TessEvaluation().Geometry();
pp.UseStages(prog).Vertex().Geometry().Fragment();
pp.UseStages(prog).Geometry();
pp.UseStages(prog).All();
Exceptions
Error
Related OpenGL symbols:
glUseProgramStages
void oglplus::ProgramPipelineOps::UseStages ( Bitfield< ProgramPipelineStage stages,
const ProgramOps program 
) const
inherited

Use the specified stages of the program.

Related OpenGL symbols:
glUseProgramStages

References OGLPLUS_CHECK.

void oglplus::ProgramPipelineOps::Validate ( void  ) const
inherited

Validates this program pipeline.

Exceptions
ErrorValidationError
See Also
Link
Related OpenGL symbols:
glValidateProgramPipeline

References oglplus::ProgramPipelineOps::IsValid(), OGLPLUS_IS_ERROR, and OGLPLUS_VERIFY.


The documentation for this class was generated from the following file:

Copyright © 2010-2014 Matúš Chochlík, University of Žilina, Žilina, Slovakia.
<matus.chochlik -at- fri.uniza.sk>
<chochlik -at -gmail.com>
Documentation generated on Wed Apr 30 2014 by Doxygen (version 1.8.4).