|
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 |
Public Member Functions | |
| virtual int | IsA (const char *type) |
| Return 1 if this class is the same type of (or a subclass of) the named class. More... | |
| vtkShader * | NewInstance () const |
| void | PrintSelf (ostream &os, vtkIndent indent) |
| Methods invoked by print to print information about the object including superclasses. More... | |
| 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... | |
Public Member Functions inherited from vtkObject | |
| vtkBaseTypeMacro (vtkObject, vtkObjectBase) | |
| virtual void | DebugOn () |
| Turn debugging output on. More... | |
| virtual void | DebugOff () |
| Turn debugging output off. More... | |
| bool | GetDebug () |
| Get the value of the debug flag. More... | |
| void | SetDebug (bool debugFlag) |
| Set the value of the debug flag. More... | |
| virtual void | Modified () |
| Update the modification time for this object. More... | |
| virtual vtkMTimeType | GetMTime () |
| Return this object's modified time. More... | |
| unsigned long | AddObserver (unsigned long event, vtkCommand *, float priority=0.0f) |
| Allow people to add/remove/invoke observers (callbacks) to any VTK object. More... | |
| 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) |
| Overloads to AddObserver that allow developers to add class member functions as callbacks for events. More... | |
| 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) |
| Allow user to set the AbortFlagOn() with the return value of the callback method. More... | |
| int | InvokeEvent (unsigned long event, void *callData) |
| This method invokes an event and return whether the event was aborted or not. More... | |
| int | InvokeEvent (const char *event, void *callData) |
| int | InvokeEvent (unsigned long event) |
| int | InvokeEvent (const char *event) |
Public Member Functions inherited from vtkObjectBase | |
| const char * | GetClassName () const |
| Return the class name as a string. More... | |
| virtual void | Delete () |
| Delete a VTK object. More... | |
| virtual void | FastDelete () |
| Delete a reference to this object. More... | |
| void | InitializeObjectBase () |
| void | Print (ostream &os) |
| Print an object to an ostream. More... | |
| virtual void | PrintHeader (ostream &os, vtkIndent indent) |
| virtual void | PrintTrailer (ostream &os, vtkIndent indent) |
| virtual void | Register (vtkObjectBase *o) |
| Increase the reference count (mark as used by another object). More... | |
| virtual void | UnRegister (vtkObjectBase *o) |
| Decrease the reference count (release by another object). More... | |
| int | GetReferenceCount () |
| Return the current reference count of this object. More... | |
| void | SetReferenceCount (int) |
| Sets the reference count. More... | |
| void | PrintRevisions (ostream &) |
| Legacy. More... | |
Static Public Member Functions | |
| static vtkShader * | New () |
| static int | IsTypeOf (const char *type) |
| static vtkShader * | SafeDownCast (vtkObjectBase *o) |
Static Public Member Functions inherited from vtkObject | |
| static vtkObject * | New () |
| Create an object with Debug turned off, modified time initialized to zero, and reference counting on. More... | |
| static void | BreakOnError () |
| This method is called when vtkErrorMacro executes. More... | |
| static void | SetGlobalWarningDisplay (int val) |
| This is a global flag that controls whether any debug, warning or error messages are displayed. More... | |
| static void | GlobalWarningDisplayOn () |
| static void | GlobalWarningDisplayOff () |
| static int | GetGlobalWarningDisplay () |
Static Public Member Functions inherited from vtkObjectBase | |
| static vtkTypeBool | IsTypeOf (const char *name) |
| Return 1 if this class type is the same type of (or a subclass of) the named class. More... | |
| static vtkObjectBase * | New () |
| Create an object with Debug turned off, modified time initialized to zero, and reference counting on. More... | |
Protected Member Functions | |
| virtual vtkObjectBase * | NewInstanceInternal () const |
| vtkShader () | |
| ~vtkShader () | |
Protected Member Functions inherited from vtkObject | |
| vtkObject () | |
| ~vtkObject () override | |
| void | RegisterInternal (vtkObjectBase *, vtkTypeBool check) override |
| void | UnRegisterInternal (vtkObjectBase *, vtkTypeBool check) override |
| void | InternalGrabFocus (vtkCommand *mouseEvents, vtkCommand *keypressEvents=NULL) |
| These methods allow a command to exclusively grab all events. More... | |
| void | InternalReleaseFocus () |
Protected Member Functions inherited from vtkObjectBase | |
| 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 |
Protected Attributes inherited from vtkObject | |
| bool | Debug |
| vtkTimeStamp | MTime |
| vtkSubjectHelper * | SubjectHelper |
Protected Attributes inherited from vtkObjectBase | |
| 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 40 of file vtkShader.h.
| typedef vtkObject vtkShader::Superclass |
Definition at line 44 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 49 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 vtkObjectBase.
|
static |
|
protectedvirtual |
| 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 60 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 66 of file vtkShader.h.
|
inline |
Get the error message (empty if none) for the shader.
Definition at line 69 of file vtkShader.h.
|
inline |
Get the handle of the shader.
Definition at line 72 of file vtkShader.h.
| bool vtkShader::Compile | ( | ) |
Compile the shader.
| void vtkShader::Cleanup | ( | ) |
Delete the shader.
|
protected |
Definition at line 89 of file vtkShader.h.
|
protected |
Definition at line 90 of file vtkShader.h.
|
protected |
Definition at line 91 of file vtkShader.h.
|
protected |
Definition at line 93 of file vtkShader.h.
|
protected |
Definition at line 94 of file vtkShader.h.