CSCI441 OpenGL Library 5.9.0
CS@Mines CSCI441 Computer Graphics Course Library
Loading...
Searching...
No Matches
Public Member Functions | Static Public Member Functions | List of all members
CSCI441::ShaderProgramPipeline Class Referencefinal

Handles registration and compilation of Shader Program Pipelines. More...

#include <ShaderProgramPipeline.hpp>

Public Member Functions

 ShaderProgramPipeline ()
 creates a shader program pipeline by generating a shader program pipeline handle
 
 ~ShaderProgramPipeline ()
 deletes a shader program pipeline by deleting the shader program pipeline handle
 
 ShaderProgramPipeline (const ShaderProgramPipeline &)=delete
 do not allow shader program pipelines to be copied
 
ShaderProgramPipelineoperator= (const ShaderProgramPipeline &)=delete
 do not allow shader program pipelines to be copied
 
void useProgramStages (GLbitfield programStages, const ShaderProgram *shaderProgram) const
 adds shader program stages to pipeline
 
void useProgramStages (const ShaderProgram *shaderProgram) const
 adds shader program stages to pipeline
 
void bindPipeline () const
 bind shader program pipeline
 
void printPipelineInfo () const
 prints shader program pipeline information to console
 
bool validatePipeline () const
 

Static Public Member Functions

static void enableDebugMessages ()
 Enables debug messages from Shader Program functions.
 
static void disableDebugMessages ()
 Disables debug messages from Shader Program functions.
 

Detailed Description

Handles registration and compilation of Shader Program Pipelines.

Member Function Documentation

◆ bindPipeline()

void CSCI441::ShaderProgramPipeline::bindPipeline ( ) const
inline

bind shader program pipeline

Note
unbinds any previously used shader programs

◆ disableDebugMessages()

void CSCI441::ShaderProgramPipeline::disableDebugMessages ( )
inlinestatic

Disables debug messages from Shader Program functions.

Note
Debug messages are on by default.

◆ enableDebugMessages()

void CSCI441::ShaderProgramPipeline::enableDebugMessages ( )
inlinestatic

Enables debug messages from Shader Program functions.

Note
Debug messages are on by default.

◆ useProgramStages() [1/2]

void CSCI441::ShaderProgramPipeline::useProgramStages ( const ShaderProgram shaderProgram) const
inline

adds shader program stages to pipeline

Parameters
shaderProgramseparable shader program to use within pipeline
Note
ShaderProgram must be separable

◆ useProgramStages() [2/2]

void CSCI441::ShaderProgramPipeline::useProgramStages ( GLbitfield  programStages,
const ShaderProgram shaderProgram 
) const
inline

adds shader program stages to pipeline

Parameters
programStagesstages shader program contains
shaderProgramseparable shader program to use within pipeline
Note
ShaderProgram must be separable

◆ validatePipeline()

bool CSCI441::ShaderProgramPipeline::validatePipeline ( ) const
inline

checks if shader program pipeline is in valid state to run

Returns
true if valid

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