VTK
|
#include <vtkShaderProgram.h>
vtkShaderProgram is a superclass for managing Hardware Shaders defined in the XML Material file and interfacing VTK to those shaders. It's concrete descendants are responsible for installing vertex and fragment programs to the graphics hardware.
Definition at line 70 of file vtkShaderProgram.h.
Reimplemented from vtkObject.
Reimplemented in vtkGLSLShaderProgram.
Definition at line 73 of file vtkShaderProgram.h.
vtkShaderProgram::vtkShaderProgram | ( | ) | [protected] |
vtkShaderProgram::~vtkShaderProgram | ( | ) | [protected] |
static int vtkShaderProgram::IsTypeOf | ( | const char * | name | ) | [static] |
Return 1 if this class type is the same type of (or a subclass of) the named class. Returns 0 otherwise. This method works in combination with vtkTypeMacro found in vtkSetGet.h.
Reimplemented from vtkObject.
Reimplemented in vtkGLSLShaderProgram.
virtual int vtkShaderProgram::IsA | ( | const char * | name | ) | [virtual] |
Return 1 if this class is the same type of (or a subclass of) the named class. Returns 0 otherwise. This method works in combination with vtkTypeMacro found in vtkSetGet.h.
Reimplemented from vtkObject.
Reimplemented in vtkGLSLShaderProgram.
static vtkShaderProgram* vtkShaderProgram::SafeDownCast | ( | vtkObjectBase * | o | ) | [static] |
Reimplemented from vtkObject.
Reimplemented in vtkGLSLShaderProgram.
virtual vtkObjectBase* vtkShaderProgram::NewInstanceInternal | ( | ) | const [protected, virtual] |
Reimplemented from vtkObject.
Reimplemented in vtkGLSLShaderProgram.
vtkShaderProgram* vtkShaderProgram::NewInstance | ( | ) | const |
Reimplemented from vtkObject.
Reimplemented in vtkGLSLShaderProgram.
void vtkShaderProgram::PrintSelf | ( | ostream & | os, |
vtkIndent | indent | ||
) | [virtual] |
Methods invoked by print to print information about the object including superclasses. Typically not called by the user (use Print() instead) but used in the hierarchical print process to combine the output of several classes.
Reimplemented from vtkObject.
Reimplemented in vtkGLSLShaderProgram.
virtual vtkXMLMaterial* vtkShaderProgram::GetMaterial | ( | ) | [virtual] |
virtual void vtkShaderProgram::SetMaterial | ( | vtkXMLMaterial * | ) | [virtual] |
int vtkShaderProgram::AddShader | ( | vtkShader * | shader | ) |
void vtkShaderProgram::RemoveShader | ( | int | index | ) |
Remove a shader at the given index.
void vtkShaderProgram::RemoveShader | ( | vtkShader * | shader | ) |
Removes the given shader.
Returns a new iterator to iterate over the shaders.
Returns the number of shaders available in this shader program.
static vtkShaderProgram* vtkShaderProgram::CreateShaderProgram | ( | int | type | ) | [static] |
virtual void vtkShaderProgram::ReadMaterial | ( | ) | [virtual] |
virtual void vtkShaderProgram::Render | ( | vtkActor * | , |
vtkRenderer * | |||
) | [pure virtual] |
Implemented in vtkGLSLShaderProgram.
virtual void vtkShaderProgram::AddShaderVariable | ( | const char * | name, |
int | numVars, | ||
int * | x | ||
) | [virtual] |
Provide values to initialize shader variables. This is a conduit to initialize shader variables that change over time, useful for animation, gui widget inputs, etc. name - hardware name of the uniform variable numVars - number of variables being set x - values
virtual void vtkShaderProgram::AddShaderVariable | ( | const char * | name, |
int | numVars, | ||
float * | x | ||
) | [virtual] |
Provide values to initialize shader variables. This is a conduit to initialize shader variables that change over time, useful for animation, gui widget inputs, etc. name - hardware name of the uniform variable numVars - number of variables being set x - values
virtual void vtkShaderProgram::AddShaderVariable | ( | const char * | name, |
int | numVars, | ||
double * | x | ||
) | [virtual] |
Provide values to initialize shader variables. This is a conduit to initialize shader variables that change over time, useful for animation, gui widget inputs, etc. name - hardware name of the uniform variable numVars - number of variables being set x - values
virtual void vtkShaderProgram::PostRender | ( | vtkActor * | , |
vtkRenderer * | |||
) | [virtual] |
Called to unload the shaders after the actor has been rendered.
Reimplemented in vtkGLSLShaderProgram.
virtual void vtkShaderProgram::ReleaseGraphicsResources | ( | vtkWindow * | ) | [virtual] |
Release any graphics resources that are being consumed by this actor. The parameter window could be used to determine which graphic resources to release.
Reimplemented in vtkGLSLShaderProgram.
virtual vtkShaderDeviceAdapter* vtkShaderProgram::GetShaderDeviceAdapter | ( | ) | [virtual] |
Get the vtkShaderDeviceAdapter which can be used to execute this shader program.
virtual void vtkShaderProgram::SetGLExtensionsLoaded | ( | int | ) | [protected, virtual] |
virtual int vtkShaderProgram::GetGLExtensionsLoaded | ( | ) | [protected, virtual] |
virtual void vtkShaderProgram::LoadExtensions | ( | vtkRenderWindow * | ) | [inline, protected, virtual] |
Reimplemented in vtkGLSLShaderProgram.
Definition at line 148 of file vtkShaderProgram.h.
void vtkShaderProgram::SetShaderDeviceAdapter | ( | vtkShaderDeviceAdapter * | ) | [protected] |
virtual vtkShader* vtkShaderProgram::NewShader | ( | ) | [protected, pure virtual] |
Must be overloaded by subclasses to create the shader of appropriate type.
Implemented in vtkGLSLShaderProgram.
vtkXMLMaterial* vtkShaderProgram::Material [protected] |
Definition at line 141 of file vtkShaderProgram.h.
vtkCollection* vtkShaderProgram::ShaderCollection [protected] |
Definition at line 142 of file vtkShaderProgram.h.
Definition at line 143 of file vtkShaderProgram.h.
int vtkShaderProgram::GLExtensionsLoaded [protected] |
Definition at line 146 of file vtkShaderProgram.h.