VTK
|
Vertex or Fragment shader, combined into a ShaderProgram. More...
#include <vtkShader.h>
Public Types | |
enum | Type { Vertex, Fragment, Geometry, Unknown } |
Available shader types. More... | |
typedef vtkObject | Superclass |
![]() | |
typedef vtkObjectBase | Superclass |
Public Member Functions | |
virtual int | IsA (const char *type) |
vtkShader * | NewInstance () const |
void | PrintSelf (ostream &os, vtkIndent indent) |
void | SetType (Type type) |
Set the shader type. More... | |
Type | GetType () const |
Get the shader type, typically Vertex or Fragment. More... | |
void | SetSource (const std::string &source) |
Set the shader source to the supplied string. More... | |
std::string | GetSource () const |
Get the source for the shader. More... | |
std::string | GetError () const |
Get the error message (empty if none) for the shader. More... | |
int | GetHandle () const |
Get the handle of the shader. More... | |
bool | Compile () |
Compile the shader. More... | |
void | Cleanup () |
Delete the shader. More... | |
![]() | |
vtkObject * | NewInstance () const |
virtual void | DebugOn () |
virtual void | DebugOff () |
bool | GetDebug () |
void | SetDebug (bool debugFlag) |
virtual void | Modified () |
virtual unsigned long | GetMTime () |
unsigned long | AddObserver (unsigned long event, vtkCommand *, float priority=0.0f) |
unsigned long | AddObserver (const char *event, vtkCommand *, float priority=0.0f) |
vtkCommand * | GetCommand (unsigned long tag) |
void | RemoveObserver (vtkCommand *) |
void | RemoveObservers (unsigned long event, vtkCommand *) |
void | RemoveObservers (const char *event, vtkCommand *) |
int | HasObserver (unsigned long event, vtkCommand *) |
int | HasObserver (const char *event, vtkCommand *) |
void | RemoveObserver (unsigned long tag) |
void | RemoveObservers (unsigned long event) |
void | RemoveObservers (const char *event) |
void | RemoveAllObservers () |
int | HasObserver (unsigned long event) |
int | HasObserver (const char *event) |
template<class U , class T > | |
unsigned long | AddObserver (unsigned long event, U observer, void(T::*callback)(), float priority=0.0f) |
template<class U , class T > | |
unsigned long | AddObserver (unsigned long event, U observer, void(T::*callback)(vtkObject *, unsigned long, void *), float priority=0.0f) |
template<class U , class T > | |
unsigned long | AddObserver (unsigned long event, U observer, bool(T::*callback)(vtkObject *, unsigned long, void *), float priority=0.0f) |
int | InvokeEvent (unsigned long event, void *callData) |
int | InvokeEvent (const char *event, void *callData) |
int | InvokeEvent (unsigned long event) |
int | InvokeEvent (const char *event) |
![]() | |
const char * | GetClassName () const |
virtual void | Delete () |
virtual void | FastDelete () |
void | Print (ostream &os) |
virtual void | Register (vtkObjectBase *o) |
virtual void | UnRegister (vtkObjectBase *o) |
void | SetReferenceCount (int) |
void | PrintRevisions (ostream &) |
virtual void | PrintHeader (ostream &os, vtkIndent indent) |
virtual void | PrintTrailer (ostream &os, vtkIndent indent) |
int | GetReferenceCount () |
Static Public Member Functions | |
static vtkShader * | New () |
static int | IsTypeOf (const char *type) |
static vtkShader * | SafeDownCast (vtkObjectBase *o) |
![]() | |
static int | IsTypeOf (const char *type) |
static vtkObject * | SafeDownCast (vtkObjectBase *o) |
static vtkObject * | New () |
static void | BreakOnError () |
static void | SetGlobalWarningDisplay (int val) |
static void | GlobalWarningDisplayOn () |
static void | GlobalWarningDisplayOff () |
static int | GetGlobalWarningDisplay () |
![]() | |
static int | IsTypeOf (const char *name) |
static vtkObjectBase * | New () |
Protected Member Functions | |
virtual vtkObjectBase * | NewInstanceInternal () const |
vtkShader () | |
~vtkShader () | |
![]() | |
vtkObject () | |
virtual | ~vtkObject () |
virtual void | RegisterInternal (vtkObjectBase *, int check) |
virtual void | UnRegisterInternal (vtkObjectBase *, int check) |
void | InternalGrabFocus (vtkCommand *mouseEvents, vtkCommand *keypressEvents=NULL) |
void | InternalReleaseFocus () |
![]() | |
vtkObjectBase () | |
virtual | ~vtkObjectBase () |
virtual void | CollectRevisions (ostream &) |
virtual void | ReportReferences (vtkGarbageCollector *) |
vtkObjectBase (const vtkObjectBase &) | |
void | operator= (const vtkObjectBase &) |
Protected Attributes | |
Type | ShaderType |
int | Handle |
bool | Dirty |
std::string | Source |
std::string | Error |
![]() | |
bool | Debug |
vtkTimeStamp | MTime |
vtkSubjectHelper * | SubjectHelper |
![]() | |
vtkAtomicInt32 | ReferenceCount |
vtkWeakPointerBase ** | WeakPointers |
Vertex or Fragment shader, combined into a ShaderProgram.
encapsulate a glsl shader
This class creates a Vertex, Fragment or Geometry shader, that can be attached to a ShaderProgram in order to render geometry etc.
vtkShader represents a shader, vertex, fragment, geometry etc
Definition at line 36 of file vtkShader.h.
typedef vtkObject vtkShader::Superclass |
Definition at line 40 of file vtkShader.h.
enum vtkShader::Type |
Available shader types.
Enumerator | |
---|---|
Vertex |
Vertex shader. |
Fragment |
Fragment shader. |
Geometry |
Geometry shader. |
Unknown |
Unknown (default) |
Definition at line 45 of file vtkShader.h.
|
protected |
|
protected |
|
static |
|
static |
|
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.
|
static |
|
protectedvirtual |
Reimplemented from vtkObject.
vtkShader* vtkShader::NewInstance | ( | ) | const |
|
virtual |
void vtkShader::SetType | ( | Type | type | ) |
Set the shader type.
|
inline |
Get the shader type, typically Vertex or Fragment.
Definition at line 56 of file vtkShader.h.
void vtkShader::SetSource | ( | const std::string & | source | ) |
Set the shader source to the supplied string.
|
inline |
Get the source for the shader.
Definition at line 62 of file vtkShader.h.
|
inline |
Get the error message (empty if none) for the shader.
Definition at line 65 of file vtkShader.h.
|
inline |
Get the handle of the shader.
Definition at line 68 of file vtkShader.h.
bool vtkShader::Compile | ( | ) |
Compile the shader.
void vtkShader::Cleanup | ( | ) |
Delete the shader.
|
protected |
Definition at line 85 of file vtkShader.h.
|
protected |
Definition at line 86 of file vtkShader.h.
|
protected |
Definition at line 87 of file vtkShader.h.
|
protected |
Definition at line 89 of file vtkShader.h.
|
protected |
Definition at line 90 of file vtkShader.h.