an adapter to pass generic vertex attributes to the rendering pipeline. .SECTION This class is an adapter used to pass generic vertex attributes to the rendering pipeline. Since this changes based on the shading language used, this class merely defines the API and subclasses provide implementations for Cg and GSince this changes based on the shading language used, this class merely defines the API and subclasses provide implementations for Cg and GLSL.
More...
|
virtual const char * | GetClassName () |
|
virtual int | IsA (const char *type) |
|
virtual void | PrintSelf (ostream &os, vtkIndent indent) |
|
virtual void | PrepareForRender ()=0 |
|
|
virtual void | SendAttribute (const char *attrname, int components, int type, const void *attribute, unsigned long offset=0)=0 |
|
|
void | SetShaderProgram (vtkShaderProgram *pgm) |
|
virtual vtkShaderProgram * | GetShaderProgram () |
|
virtual void | DebugOn () |
|
virtual void | DebugOff () |
|
unsigned char | GetDebug () |
|
void | SetDebug (unsigned char 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) |
|
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 &os) |
|
virtual void | PrintHeader (ostream &os, vtkIndent indent) |
|
virtual void | PrintTrailer (ostream &os, vtkIndent indent) |
|
int | GetReferenceCount () |
|
an adapter to pass generic vertex attributes to the rendering pipeline. .SECTION This class is an adapter used to pass generic vertex attributes to the rendering pipeline. Since this changes based on the shading language used, this class merely defines the API and subclasses provide implementations for Cg and GSince this changes based on the shading language used, this class merely defines the API and subclasses provide implementations for Cg and GLSL.
- Thanks:
- Support for generic vertex attributes in VTK was contributed in collaboration with Stephane Ploix at EDF.
Definition at line 37 of file vtkShaderDeviceAdapter.h.
virtual void vtkShaderDeviceAdapter::SendAttribute |
( |
const char * |
attrname, |
|
|
int |
components, |
|
|
int |
type, |
|
|
const void * |
attribute, |
|
|
unsigned long |
offset = 0 |
|
) |
| |
|
pure virtual |
Sends a single attribute to the graphics card. The attrname parameter identifies the name of attribute. The components parameter gives the number of components in the attribute. In general, components must be between 1-4, but a rendering system may impose even more constraints. The type parameter is a VTK type enumeration (VTK_FLOAT, VTK_INT, etc.). Again, a rendering system may not support all types for all attributes. The attribute parameter is the actual data for the attribute. If offset is specified, it is added to attribute pointer after
it has been casted to the proper type.
Implemented in vtkGLSLShaderDeviceAdapter, and vtkCgShaderDeviceAdapter.