VTK
Public Types | Public Member Functions | Static Public Member Functions | Protected Member Functions | Protected Attributes
vtkShaderDeviceAdapter Class Reference

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...

#include <vtkShaderDeviceAdapter.h>

Inheritance diagram for vtkShaderDeviceAdapter:
Inheritance graph
[legend]
Collaboration diagram for vtkShaderDeviceAdapter:
Collaboration graph
[legend]

List of all members.

Public Types

typedef vtkObject Superclass

Public Member Functions

virtual int IsA (const char *type)
vtkShaderDeviceAdapterNewInstance () const
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 vtkShaderProgramGetShaderProgram ()

Static Public Member Functions

static int IsTypeOf (const char *type)
static vtkShaderDeviceAdapterSafeDownCast (vtkObjectBase *o)

Protected Member Functions

virtual vtkObjectBaseNewInstanceInternal () const
 vtkShaderDeviceAdapter ()
 ~vtkShaderDeviceAdapter ()

Protected Attributes

vtkShaderProgramShaderProgram

Detailed Description

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 38 of file vtkShaderDeviceAdapter.h.


Member Typedef Documentation

Reimplemented from vtkObject.

Reimplemented in vtkGLSLShaderDeviceAdapter.

Definition at line 41 of file vtkShaderDeviceAdapter.h.


Constructor & Destructor Documentation


Member Function Documentation

static int vtkShaderDeviceAdapter::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 vtkGLSLShaderDeviceAdapter.

virtual int vtkShaderDeviceAdapter::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 vtkGLSLShaderDeviceAdapter.

Reimplemented from vtkObject.

Reimplemented in vtkGLSLShaderDeviceAdapter.

virtual vtkObjectBase* vtkShaderDeviceAdapter::NewInstanceInternal ( ) const [protected, virtual]

Reimplemented from vtkObject.

Reimplemented in vtkGLSLShaderDeviceAdapter.

Reimplemented from vtkObject.

Reimplemented in vtkGLSLShaderDeviceAdapter.

virtual void vtkShaderDeviceAdapter::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 vtkGLSLShaderDeviceAdapter.

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.

Set the shader program which is being updated by this device adapter. The shader program is not reference counted to avoid reference loops.

Definition at line 62 of file vtkShaderDeviceAdapter.h.

Set the shader program which is being updated by this device adapter. The shader program is not reference counted to avoid reference loops.

virtual void vtkShaderDeviceAdapter::PrepareForRender ( ) [pure virtual]

Implemented in vtkGLSLShaderDeviceAdapter.


Member Data Documentation

Definition at line 76 of file vtkShaderDeviceAdapter.h.


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