MeVisLab Toolbox Reference
|
Vertex or fragment shader object class. More...
#include <SoGLShaderObject.h>
Public Member Functions | |
SoGLShaderObject (SoShader::ShaderType shaderType) | |
Constructor. | |
~SoGLShaderObject () override | |
Destructor. | |
void | reset () override |
Free all resources (OpenGL too) and reset instance to initial state. | |
void | activate (SbBool act) |
SbBool | isActive () const |
SoShader::ShaderType | shaderType () const |
void | setSource (const SbString &source) |
const SbString & | getSource () const |
void | attach (SoGLShaderProgram *shaderProgram) |
void | detach () |
int | version () const |
Get the used GLSL version (only available after compile()!) | |
SbBool | isCreated () const |
void | compile () |
void | scheduleCompile () |
SbBool | shouldCompile () const |
void | scheduleRebuild () |
SoGLShaderProgram * | getShaderProgram () const |
void | setName (const SbString &name) |
const SbString & | getName () const |
void | setAlwaysReadErrorLog (bool flag) |
bool | alwaysReadErrorLog () |
bool | hadCompileError () |
const SbString & | getErrorLog () |
void | setEmulateLegacyOpenGL (bool flag) |
Protected Member Functions | |
std::string | adaptSourceString () |
Protected Member Functions inherited from SoGLShader | |
SoGLShader () | |
Constructor. | |
virtual | ~SoGLShader () |
Destructor. | |
void | errClear (const char *string=nullptr) const |
Clear OpenGL error state and print any previously not displayed error message. | |
void | errCheck (const char *string=nullptr) const |
Check for OpenGL errors and print error message if one is found. | |
SbBool | error (const char *string=nullptr) const |
Returns 'TRUE' if OpenGL error is found. | |
Protected Attributes | |
bool | _emulateLegacyOpenGL |
SoShader::ShaderType | _shaderType |
SbBool | _isActive |
int | _version |
SbString | _source |
SbBool | _shouldCompile |
SbString | _name |
SoGLShaderProgram * | _shaderProgram |
ml::GLSLShader | _shaderRes |
bool | _alwaysReadErrorLog |
bool | _hadError |
SbString | _errorLog |
Additional Inherited Members | |
Static Public Member Functions inherited from SoGLShader | |
static SbBool | isSupported () |
Returns 'TRUE' if vertex and fragment shaders are supported by OpenGL. | |
static bool | supportsGeometryShaders () |
Returns if the hardware supports geometry shaders. | |
static void | printCapabilities () |
Prints capabilities of the OpenGL implementation. | |
Vertex or fragment shader object class.
Definition at line 28 of file SoGLShaderObject.h.
SoGLShaderObject::SoGLShaderObject | ( | SoShader::ShaderType | shaderType | ) |
Constructor.
|
override |
Destructor.
|
protected |
|
inline |
Definition at line 92 of file SoGLShaderObject.h.
void SoGLShaderObject::attach | ( | SoGLShaderProgram * | shaderProgram | ) |
void SoGLShaderObject::compile | ( | ) |
void SoGLShaderObject::detach | ( | ) |
Definition at line 95 of file SoGLShaderObject.h.
Definition at line 89 of file SoGLShaderObject.h.
|
inline |
Definition at line 83 of file SoGLShaderObject.h.
Definition at line 53 of file SoGLShaderObject.h.
|
inline |
Definition at line 94 of file SoGLShaderObject.h.
|
inline |
Definition at line 44 of file SoGLShaderObject.h.
|
inline |
Definition at line 63 of file SoGLShaderObject.h.
|
overridevirtual |
Free all resources (OpenGL too) and reset instance to initial state.
Reimplemented from SoGLShader.
|
inline |
Definition at line 71 of file SoGLShaderObject.h.
References mlrange_cast().
|
inline |
Definition at line 78 of file SoGLShaderObject.h.
References mlrange_cast().
Definition at line 91 of file SoGLShaderObject.h.
References mlrange_cast().
Definition at line 87 of file SoGLShaderObject.h.
|
inline |
Definition at line 48 of file SoGLShaderObject.h.
|
inline |
Definition at line 74 of file SoGLShaderObject.h.
|
inline |
Get the used GLSL version (only available after compile()!)
Definition at line 61 of file SoGLShaderObject.h.
|
protected |
Definition at line 118 of file SoGLShaderObject.h.
|
protected |
Definition at line 102 of file SoGLShaderObject.h.
|
protected |
Definition at line 120 of file SoGLShaderObject.h.
|
protected |
Definition at line 119 of file SoGLShaderObject.h.
|
protected |
Definition at line 105 of file SoGLShaderObject.h.
|
protected |
Definition at line 112 of file SoGLShaderObject.h.
|
protected |
Definition at line 114 of file SoGLShaderObject.h.
|
protected |
Definition at line 116 of file SoGLShaderObject.h.
|
protected |
Definition at line 104 of file SoGLShaderObject.h.
|
protected |
Definition at line 110 of file SoGLShaderObject.h.
|
protected |
Definition at line 109 of file SoGLShaderObject.h.
|
protected |
Definition at line 107 of file SoGLShaderObject.h.