vtkShaderDeviceAdapter Class Reference

#include <vtkShaderDeviceAdapter.h>

Inheritance diagram for vtkShaderDeviceAdapter:

Inheritance graph
[legend]
Collaboration diagram for vtkShaderDeviceAdapter:

Collaboration graph
[legend]

List of all members.


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


Public Types

typedef vtkObject Superclass

Public Member Functions

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 vtkShaderProgramGetShaderProgram ()

Static Public Member Functions

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

Protected Member Functions

 vtkShaderDeviceAdapter ()
 ~vtkShaderDeviceAdapter ()

Protected Attributes

vtkShaderProgramShaderProgram

Member Typedef Documentation

Reimplemented from vtkObject.

Reimplemented in vtkCgShaderDeviceAdapter, and vtkGLSLShaderDeviceAdapter.

Definition at line 40 of file vtkShaderDeviceAdapter.h.


Constructor & Destructor Documentation

vtkShaderDeviceAdapter::vtkShaderDeviceAdapter (  )  [protected]

vtkShaderDeviceAdapter::~vtkShaderDeviceAdapter (  )  [protected]


Member Function Documentation

virtual const char* vtkShaderDeviceAdapter::GetClassName (  )  [virtual]

Reimplemented from vtkObject.

Reimplemented in vtkCgShaderDeviceAdapter, and vtkGLSLShaderDeviceAdapter.

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 vtkTypeRevisionMacro found in vtkSetGet.h.

Reimplemented from vtkObject.

Reimplemented in vtkCgShaderDeviceAdapter, and 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 vtkTypeRevisionMacro found in vtkSetGet.h.

Reimplemented from vtkObject.

Reimplemented in vtkCgShaderDeviceAdapter, and vtkGLSLShaderDeviceAdapter.

static vtkShaderDeviceAdapter* vtkShaderDeviceAdapter::SafeDownCast ( vtkObject o  )  [static]

Reimplemented from vtkObject.

Reimplemented in vtkCgShaderDeviceAdapter, and 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 vtkCgShaderDeviceAdapter, and 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 vtkCgShaderDeviceAdapter, and vtkGLSLShaderDeviceAdapter.

void vtkShaderDeviceAdapter::SetShaderProgram ( vtkShaderProgram pgm  )  [inline]

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

virtual vtkShaderProgram* vtkShaderDeviceAdapter::GetShaderProgram (  )  [virtual]

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]


Member Data Documentation

Definition at line 75 of file vtkShaderDeviceAdapter.h.


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

Generated on Wed Jun 3 19:33:44 2009 for VTK by  doxygen 1.5.6