MeVisLabToolboxReference
SoGLShaderObject Class Reference

Vertex or fragment shader object class. More...

#include <SoGLShaderObject.h>

Inheritance diagram for SoGLShaderObject:
SoGLShader

List of all members.

Public Member Functions

 SoGLShaderObject (SoShader::ShaderType shaderType)
 Constructor.
virtual ~SoGLShaderObject ()
 Destructor.
virtual void reset ()
 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 ()
SbBool isCreated () const
void compile (int context)
void scheduleCompile ()
SbBool shouldCompile () const
void scheduleRebuild ()
SoGLShaderProgramgetShaderProgram () const
void setName (const SbString &name)
const SbString & getName () const

Protected Attributes

SoShader::ShaderType _shaderType
SbBool _isActive
SbString _source
SbBool _shouldCompile
SbString _name
SoGLShaderProgram_shaderProgram
GLuint _shaderHandle

Detailed Description

Vertex or fragment shader object class.

Definition at line 24 of file SoGLShaderObject.h.


Constructor & Destructor Documentation

SoGLShaderObject::SoGLShaderObject ( SoShader::ShaderType  shaderType)

Constructor.

virtual SoGLShaderObject::~SoGLShaderObject ( ) [virtual]

Destructor.


Member Function Documentation

void SoGLShaderObject::activate ( SbBool  act)
void SoGLShaderObject::attach ( SoGLShaderProgram shaderProgram)
void SoGLShaderObject::compile ( int  context)
void SoGLShaderObject::detach ( )
const SbString& SoGLShaderObject::getName ( ) const [inline]

Definition at line 90 of file SoGLShaderObject.h.

SoGLShaderProgram* SoGLShaderObject::getShaderProgram ( ) const [inline]

Definition at line 84 of file SoGLShaderObject.h.

const SbString& SoGLShaderObject::getSource ( ) const [inline]

Definition at line 49 of file SoGLShaderObject.h.

SbBool SoGLShaderObject::isActive ( ) const [inline]

Definition at line 40 of file SoGLShaderObject.h.

SbBool SoGLShaderObject::isCreated ( ) const [inline]

Definition at line 56 of file SoGLShaderObject.h.

virtual void SoGLShaderObject::reset ( ) [virtual]

Free all resources (OpenGL too) and reset instance to initial state.

Reimplemented from SoGLShader.

void SoGLShaderObject::scheduleCompile ( ) [inline]

Definition at line 68 of file SoGLShaderObject.h.

void SoGLShaderObject::scheduleRebuild ( ) [inline]

Definition at line 75 of file SoGLShaderObject.h.

void SoGLShaderObject::setName ( const SbString &  name) [inline]

Definition at line 88 of file SoGLShaderObject.h.

void SoGLShaderObject::setSource ( const SbString &  source)
SoShader::ShaderType SoGLShaderObject::shaderType ( ) const [inline]

Definition at line 44 of file SoGLShaderObject.h.

SbBool SoGLShaderObject::shouldCompile ( ) const [inline]

Definition at line 71 of file SoGLShaderObject.h.


Member Data Documentation

SbBool SoGLShaderObject::_isActive [protected]

Definition at line 95 of file SoGLShaderObject.h.

SbString SoGLShaderObject::_name [protected]

Definition at line 100 of file SoGLShaderObject.h.

GLuint SoGLShaderObject::_shaderHandle [protected]

Definition at line 108 of file SoGLShaderObject.h.

Definition at line 98 of file SoGLShaderObject.h.

SbString SoGLShaderObject::_source [protected]

Definition at line 97 of file SoGLShaderObject.h.


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