Main Page | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Class Members | File Members | Related Pages

vtkDataSetAlgorithm Class Reference

#include <vtkDataSetAlgorithm.h>

Inheritance diagram for vtkDataSetAlgorithm:

Inheritance graph
[legend]
Collaboration diagram for vtkDataSetAlgorithm:

Collaboration graph
[legend]
List of all members.

Detailed Description

Superclass for algorithms that produce output of the same type as input.

vtkDataSetAlgorithm is a convenience class to make writing algorithms easier. It is also designed to help transition old algorithms to the new pipeline architecture. Ther are some assumptions and defaults made by this class you should be aware of. This class defaults such that your filter will have one input port and one output port. If that is not the case simply change it with SetNumberOfInputPorts etc. See this classes contstructor for the default. This class also provides a FillInputPortInfo method that by default says that all inputs will be DataSet. If that isn't the case then please override this method in your subclass. This class breaks out the downstream requests into seperate functions such as RequestDataObject RequestData and RequestInformation. The default implementation of RequestDataObject will create an output data of the same type as the input.

Tests:
vtkDataSetAlgorithm (Tests)

Definition at line 49 of file vtkDataSetAlgorithm.h.

Public Types

typedef vtkAlgorithm Superclass

Public Member Functions

virtual const char * GetClassName ()
virtual int IsA (const char *type)
vtkDataObjectGetInput ()
vtkPolyDataGetPolyDataOutput ()
vtkStructuredPointsGetStructuredPointsOutput ()
vtkImageDataGetImageDataOutput ()
vtkStructuredGridGetStructuredGridOutput ()
vtkUnstructuredGridGetUnstructuredGridOutput ()
void PrintSelf (ostream &os, vtkIndent indent)
vtkDataSetGetOutput ()
vtkDataSetGetOutput (int)
vtkRectilinearGridGetRectilinearGridOutput ()
void SetInput (vtkDataObject *)
void SetInput (int, vtkDataObject *)
void SetInput (vtkDataSet *)
void SetInput (int, vtkDataSet *)
void AddInput (vtkDataObject *)
void AddInput (vtkDataSet *)
void AddInput (int, vtkDataSet *)
void AddInput (int, vtkDataObject *)
virtual int ProcessRequest (vtkInformation *request, vtkInformationVector **inputVector, vtkInformationVector *outputVector)

Static Public Member Functions

static vtkDataSetAlgorithmNew ()
static int IsTypeOf (const char *type)
static vtkDataSetAlgorithmSafeDownCast (vtkObject *o)

Protected Member Functions

 vtkDataSetAlgorithm ()
virtual int FillOutputPortInformation (int port, vtkInformation *info)
virtual int FillInputPortInformation (int port, vtkInformation *info)
vtkDataObjectGetInput (int port)
 ~vtkDataSetAlgorithm ()
virtual int RequestDataObject (vtkInformation *request, vtkInformationVector **inputVector, vtkInformationVector *outputVector)
virtual int RequestInformation (vtkInformation *, vtkInformationVector **, vtkInformationVector *)
virtual int RequestData (vtkInformation *, vtkInformationVector **, vtkInformationVector *)
virtual int RequestUpdateExtent (vtkInformation *, vtkInformationVector **, vtkInformationVector *)


Member Typedef Documentation

typedef vtkAlgorithm vtkDataSetAlgorithm::Superclass
 

Reimplemented from vtkAlgorithm.

Reimplemented in vtkCastToConcrete, vtkArrayCalculator, vtkAssignAttribute, vtkAttributeDataToFieldDataFilter, vtkBrownianPoints, vtkCellDataToPointData, vtkCellDerivatives, vtkDataObjectToDataSetFilter, vtkDicer, vtkElevationFilter, vtkExtractTensorComponents, vtkExtractVectorComponents, vtkFieldDataToAttributeDataFilter, vtkIdFilter, vtkImplicitTextureCoords, vtkInterpolateDataSetAttributes, vtkMaskFields, vtkMergeDataObjectFilter, vtkMergeFields, vtkMergeFilter, vtkMeshQuality, vtkOBBDicer, vtkPointDataToCellData, vtkProbeFilter, vtkProgrammableAttributeDataFilter, vtkProgrammableFilter, vtkProgrammableSource, vtkProjectedTexture, vtkRearrangeFields, vtkSimpleElevationFilter, vtkSplitField, vtkTextureMapToCylinder, vtkTextureMapToPlane, vtkTextureMapToSphere, vtkThresholdTextureCoords, vtkTransformTextureCoords, vtkVectorDot, vtkVectorNorm, vtkPassThroughFilter, vtkPCellDataToPointData, vtkPDataSetReader, vtkPieceScalars, vtkPProbeFilter, and vtkProcessIdScalars.

Definition at line 53 of file vtkDataSetAlgorithm.h.


Constructor & Destructor Documentation

vtkDataSetAlgorithm::vtkDataSetAlgorithm  )  [protected]
 

vtkDataSetAlgorithm::~vtkDataSetAlgorithm  )  [inline, protected]
 

Definition at line 118 of file vtkDataSetAlgorithm.h.


Member Function Documentation

static vtkDataSetAlgorithm* vtkDataSetAlgorithm::New  )  [static]
 

Create an object with Debug turned off, modified time initialized to zero, and reference counting on.

Reimplemented from vtkAlgorithm.

Reimplemented in vtkCastToConcrete, vtkArrayCalculator, vtkAssignAttribute, vtkAttributeDataToFieldDataFilter, vtkBrownianPoints, vtkCellDataToPointData, vtkCellDerivatives, vtkDataObjectToDataSetFilter, vtkElevationFilter, vtkExtractTensorComponents, vtkExtractVectorComponents, vtkFieldDataToAttributeDataFilter, vtkIdFilter, vtkImplicitTextureCoords, vtkInterpolateDataSetAttributes, vtkMaskFields, vtkMergeDataObjectFilter, vtkMergeFields, vtkMergeFilter, vtkMeshQuality, vtkOBBDicer, vtkPointDataToCellData, vtkProbeFilter, vtkProgrammableAttributeDataFilter, vtkProgrammableFilter, vtkProgrammableSource, vtkProjectedTexture, vtkRearrangeFields, vtkSimpleElevationFilter, vtkSplitField, vtkTextureMapToCylinder, vtkTextureMapToPlane, vtkTextureMapToSphere, vtkThresholdTextureCoords, vtkTransformTextureCoords, vtkVectorDot, vtkVectorNorm, vtkPassThroughFilter, vtkPCellDataToPointData, vtkPDataSetReader, vtkPieceScalars, vtkPProbeFilter, and vtkProcessIdScalars.

virtual const char* vtkDataSetAlgorithm::GetClassName  )  [virtual]
 

Reimplemented from vtkAlgorithm.

Reimplemented in vtkCastToConcrete, vtkArrayCalculator, vtkAssignAttribute, vtkAttributeDataToFieldDataFilter, vtkBrownianPoints, vtkCellDataToPointData, vtkCellDerivatives, vtkDataObjectToDataSetFilter, vtkDicer, vtkElevationFilter, vtkExtractTensorComponents, vtkExtractVectorComponents, vtkFieldDataToAttributeDataFilter, vtkIdFilter, vtkImplicitTextureCoords, vtkInterpolateDataSetAttributes, vtkMaskFields, vtkMergeDataObjectFilter, vtkMergeFields, vtkMergeFilter, vtkMeshQuality, vtkOBBDicer, vtkPointDataToCellData, vtkProbeFilter, vtkProgrammableAttributeDataFilter, vtkProgrammableFilter, vtkProgrammableSource, vtkProjectedTexture, vtkRearrangeFields, vtkSimpleElevationFilter, vtkSplitField, vtkTextureMapToCylinder, vtkTextureMapToPlane, vtkTextureMapToSphere, vtkThresholdTextureCoords, vtkTransformTextureCoords, vtkVectorDot, vtkVectorNorm, vtkPassThroughFilter, vtkPCellDataToPointData, vtkPDataSetReader, vtkPieceScalars, vtkPProbeFilter, and vtkProcessIdScalars.

static int vtkDataSetAlgorithm::IsTypeOf const char *  type  )  [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 vtkAlgorithm.

Reimplemented in vtkCastToConcrete, vtkArrayCalculator, vtkAssignAttribute, vtkAttributeDataToFieldDataFilter, vtkBrownianPoints, vtkCellDataToPointData, vtkCellDerivatives, vtkDataObjectToDataSetFilter, vtkDicer, vtkElevationFilter, vtkExtractTensorComponents, vtkExtractVectorComponents, vtkFieldDataToAttributeDataFilter, vtkIdFilter, vtkImplicitTextureCoords, vtkInterpolateDataSetAttributes, vtkMaskFields, vtkMergeDataObjectFilter, vtkMergeFields, vtkMergeFilter, vtkMeshQuality, vtkOBBDicer, vtkPointDataToCellData, vtkProbeFilter, vtkProgrammableAttributeDataFilter, vtkProgrammableFilter, vtkProgrammableSource, vtkProjectedTexture, vtkRearrangeFields, vtkSimpleElevationFilter, vtkSplitField, vtkTextureMapToCylinder, vtkTextureMapToPlane, vtkTextureMapToSphere, vtkThresholdTextureCoords, vtkTransformTextureCoords, vtkVectorDot, vtkVectorNorm, vtkPassThroughFilter, vtkPCellDataToPointData, vtkPDataSetReader, vtkPieceScalars, vtkPProbeFilter, and vtkProcessIdScalars.

virtual int vtkDataSetAlgorithm::IsA const char *  type  )  [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 vtkAlgorithm.

Reimplemented in vtkCastToConcrete, vtkArrayCalculator, vtkAssignAttribute, vtkAttributeDataToFieldDataFilter, vtkBrownianPoints, vtkCellDataToPointData, vtkCellDerivatives, vtkDataObjectToDataSetFilter, vtkDicer, vtkElevationFilter, vtkExtractTensorComponents, vtkExtractVectorComponents, vtkFieldDataToAttributeDataFilter, vtkIdFilter, vtkImplicitTextureCoords, vtkInterpolateDataSetAttributes, vtkMaskFields, vtkMergeDataObjectFilter, vtkMergeFields, vtkMergeFilter, vtkMeshQuality, vtkOBBDicer, vtkPointDataToCellData, vtkProbeFilter, vtkProgrammableAttributeDataFilter, vtkProgrammableFilter, vtkProgrammableSource, vtkProjectedTexture, vtkRearrangeFields, vtkSimpleElevationFilter, vtkSplitField, vtkTextureMapToCylinder, vtkTextureMapToPlane, vtkTextureMapToSphere, vtkThresholdTextureCoords, vtkTransformTextureCoords, vtkVectorDot, vtkVectorNorm, vtkPassThroughFilter, vtkPCellDataToPointData, vtkPDataSetReader, vtkPieceScalars, vtkPProbeFilter, and vtkProcessIdScalars.

static vtkDataSetAlgorithm* vtkDataSetAlgorithm::SafeDownCast vtkObject o  )  [static]
 

Reimplemented from vtkAlgorithm.

Reimplemented in vtkCastToConcrete, vtkArrayCalculator, vtkAssignAttribute, vtkAttributeDataToFieldDataFilter, vtkBrownianPoints, vtkCellDataToPointData, vtkCellDerivatives, vtkDataObjectToDataSetFilter, vtkDicer, vtkElevationFilter, vtkExtractTensorComponents, vtkExtractVectorComponents, vtkFieldDataToAttributeDataFilter, vtkIdFilter, vtkImplicitTextureCoords, vtkInterpolateDataSetAttributes, vtkMaskFields, vtkMergeDataObjectFilter, vtkMergeFields, vtkMergeFilter, vtkMeshQuality, vtkOBBDicer, vtkPointDataToCellData, vtkProbeFilter, vtkProgrammableAttributeDataFilter, vtkProgrammableFilter, vtkProgrammableSource, vtkProjectedTexture, vtkRearrangeFields, vtkSimpleElevationFilter, vtkSplitField, vtkTextureMapToCylinder, vtkTextureMapToPlane, vtkTextureMapToSphere, vtkThresholdTextureCoords, vtkTransformTextureCoords, vtkVectorDot, vtkVectorNorm, vtkPassThroughFilter, vtkPCellDataToPointData, vtkPDataSetReader, vtkPieceScalars, vtkPProbeFilter, and vtkProcessIdScalars.

void vtkDataSetAlgorithm::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 vtkAlgorithm.

Reimplemented in vtkCastToConcrete, vtkArrayCalculator, vtkAssignAttribute, vtkAttributeDataToFieldDataFilter, vtkBrownianPoints, vtkCellDataToPointData, vtkCellDerivatives, vtkDataObjectToDataSetFilter, vtkDicer, vtkElevationFilter, vtkExtractTensorComponents, vtkExtractVectorComponents, vtkFieldDataToAttributeDataFilter, vtkIdFilter, vtkImplicitTextureCoords, vtkInterpolateDataSetAttributes, vtkMaskFields, vtkMergeDataObjectFilter, vtkMergeFields, vtkMergeFilter, vtkMeshQuality, vtkOBBDicer, vtkPointDataToCellData, vtkProbeFilter, vtkProgrammableAttributeDataFilter, vtkProjectedTexture, vtkRearrangeFields, vtkSimpleElevationFilter, vtkSplitField, vtkTextureMapToCylinder, vtkTextureMapToPlane, vtkTextureMapToSphere, vtkThresholdTextureCoords, vtkTransformTextureCoords, vtkVectorDot, vtkVectorNorm, vtkPassThroughFilter, vtkPCellDataToPointData, vtkPDataSetReader, vtkPieceScalars, vtkPProbeFilter, and vtkProcessIdScalars.

vtkDataSet* vtkDataSetAlgorithm::GetOutput  ) 
 

Get the output data object for a port on this algorithm.

Reimplemented in vtkDataObjectToDataSetFilter.

vtkDataSet* vtkDataSetAlgorithm::GetOutput int   ) 
 

Reimplemented in vtkDataObjectToDataSetFilter.

vtkDataObject* vtkDataSetAlgorithm::GetInput  ) 
 

Get the input data object. This method is not recommended for use, but lots of old style filters use it.

Reimplemented in vtkDataObjectToDataSetFilter.

vtkPolyData* vtkDataSetAlgorithm::GetPolyDataOutput  ) 
 

Get the output as vtkPolyData.

Reimplemented in vtkDataObjectToDataSetFilter, and vtkProgrammableSource.

vtkStructuredPoints* vtkDataSetAlgorithm::GetStructuredPointsOutput  ) 
 

Get the output as vtkStructuredPoints.

Reimplemented in vtkDataObjectToDataSetFilter, and vtkProgrammableSource.

vtkImageData* vtkDataSetAlgorithm::GetImageDataOutput  ) 
 

Get the output as vtkStructuredPoints.

vtkStructuredGrid* vtkDataSetAlgorithm::GetStructuredGridOutput  ) 
 

Get the output as vtkStructuredGrid.

Reimplemented in vtkDataObjectToDataSetFilter, and vtkProgrammableSource.

vtkUnstructuredGrid* vtkDataSetAlgorithm::GetUnstructuredGridOutput  ) 
 

Get the output as vtkUnstructuredGrid.

Reimplemented in vtkDataObjectToDataSetFilter, and vtkProgrammableSource.

vtkRectilinearGrid* vtkDataSetAlgorithm::GetRectilinearGridOutput  ) 
 

Get the output as vtkRectilinearGrid.

Reimplemented in vtkDataObjectToDataSetFilter, and vtkProgrammableSource.

void vtkDataSetAlgorithm::SetInput vtkDataObject  ) 
 

Set an input of this algorithm. You should not override these methods because they are not the only way to connect a pipeline. Note that these methods support old-style pipeline connections. When writing new code you should use the more general vtkAlgorithm::SetInputConnection(). These methods transform the input index to the input port index, not an index of a connection within a single port.

Referenced by vtkMergeFilter::SetGeometry().

void vtkDataSetAlgorithm::SetInput int  ,
vtkDataObject
 

Get the output as vtkRectilinearGrid.

void vtkDataSetAlgorithm::SetInput vtkDataSet  ) 
 

Get the output as vtkRectilinearGrid.

Reimplemented in vtkExtractVectorComponents.

void vtkDataSetAlgorithm::SetInput int  ,
vtkDataSet
 

Get the output as vtkRectilinearGrid.

void vtkDataSetAlgorithm::AddInput vtkDataObject  ) 
 

Add an input of this algorithm. Note that these methods support old-style pipeline connections. When writing new code you should use the more general vtkAlgorithm::AddInputConnection(). See SetInput() for details.

void vtkDataSetAlgorithm::AddInput vtkDataSet  ) 
 

Add an input of this algorithm. Note that these methods support old-style pipeline connections. When writing new code you should use the more general vtkAlgorithm::AddInputConnection(). See SetInput() for details.

Reimplemented in vtkProgrammableAttributeDataFilter.

void vtkDataSetAlgorithm::AddInput int  ,
vtkDataSet
 

Add an input of this algorithm. Note that these methods support old-style pipeline connections. When writing new code you should use the more general vtkAlgorithm::AddInputConnection(). See SetInput() for details.

void vtkDataSetAlgorithm::AddInput int  ,
vtkDataObject
 

Add an input of this algorithm. Note that these methods support old-style pipeline connections. When writing new code you should use the more general vtkAlgorithm::AddInputConnection(). See SetInput() for details.

virtual int vtkDataSetAlgorithm::ProcessRequest vtkInformation request,
vtkInformationVector **  inputVector,
vtkInformationVector outputVector
[virtual]
 

see vtkAlgorithm for details

Reimplemented from vtkAlgorithm.

virtual int vtkDataSetAlgorithm::RequestDataObject vtkInformation request,
vtkInformationVector **  inputVector,
vtkInformationVector outputVector
[protected, virtual]
 

This is called by the superclass. This is the method you should override.

Reimplemented in vtkDataObjectToDataSetFilter, vtkProgrammableSource, and vtkPDataSetReader.

virtual int vtkDataSetAlgorithm::RequestInformation vtkInformation ,
vtkInformationVector **  ,
vtkInformationVector
[inline, protected, virtual]
 

This is called by the superclass. This is the method you should override.

Reimplemented in vtkCastToConcrete, vtkAssignAttribute, vtkDataObjectToDataSetFilter, vtkProbeFilter, vtkProgrammableSource, and vtkPProbeFilter.

Definition at line 131 of file vtkDataSetAlgorithm.h.

virtual int vtkDataSetAlgorithm::RequestData vtkInformation ,
vtkInformationVector **  ,
vtkInformationVector
[inline, protected, virtual]
 

This is called by the superclass. This is the method you should override.

Reimplemented in vtkCastToConcrete, vtkArrayCalculator, vtkAssignAttribute, vtkAttributeDataToFieldDataFilter, vtkBrownianPoints, vtkCellDataToPointData, vtkCellDerivatives, vtkDataObjectToDataSetFilter, vtkElevationFilter, vtkExtractTensorComponents, vtkExtractVectorComponents, vtkFieldDataToAttributeDataFilter, vtkIdFilter, vtkImplicitTextureCoords, vtkInterpolateDataSetAttributes, vtkMaskFields, vtkMergeDataObjectFilter, vtkMergeFields, vtkMergeFilter, vtkMeshQuality, vtkOBBDicer, vtkPointDataToCellData, vtkProbeFilter, vtkProgrammableAttributeDataFilter, vtkProgrammableFilter, vtkProgrammableSource, vtkProjectedTexture, vtkRearrangeFields, vtkSimpleElevationFilter, vtkSplitField, vtkTextureMapToCylinder, vtkTextureMapToPlane, vtkTextureMapToSphere, vtkThresholdTextureCoords, vtkTransformTextureCoords, vtkVectorDot, vtkVectorNorm, vtkPassThroughFilter, vtkPCellDataToPointData, vtkPDataSetReader, vtkPieceScalars, vtkPProbeFilter, and vtkProcessIdScalars.

Definition at line 139 of file vtkDataSetAlgorithm.h.

virtual int vtkDataSetAlgorithm::RequestUpdateExtent vtkInformation ,
vtkInformationVector **  ,
vtkInformationVector
[inline, protected, virtual]
 

This is called by the superclass. This is the method you should override.

Reimplemented in vtkDataObjectToDataSetFilter, vtkFieldDataToAttributeDataFilter, vtkMergeFilter, vtkProbeFilter, and vtkPProbeFilter.

Definition at line 147 of file vtkDataSetAlgorithm.h.

virtual int vtkDataSetAlgorithm::FillOutputPortInformation int  port,
vtkInformation info
[protected, virtual]
 

Fill the output port information objects for this algorithm. This is invoked by the first call to GetOutputPortInformation for each port so subclasses can specify what they can handle.

Reimplemented from vtkAlgorithm.

virtual int vtkDataSetAlgorithm::FillInputPortInformation int  port,
vtkInformation info
[protected, virtual]
 

Fill the input port information objects for this algorithm. This is invoked by the first call to GetInputPortInformation for each port so subclasses can specify what they can handle.

Reimplemented from vtkAlgorithm.

Reimplemented in vtkDataObjectToDataSetFilter, vtkInterpolateDataSetAttributes, vtkMergeDataObjectFilter, and vtkMergeFilter.

vtkDataObject* vtkDataSetAlgorithm::GetInput int  port  )  [protected]
 


The documentation for this class was generated from the following file:
Generated on Mon Jan 21 23:40:06 2008 for VTK by  doxygen 1.4.3-20050530