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

vtkPolyDataAlgorithm Class Reference

#include <vtkPolyDataAlgorithm.h>

Inheritance diagram for vtkPolyDataAlgorithm:

Inheritance graph
[legend]
Collaboration diagram for vtkPolyDataAlgorithm:

Collaboration graph
[legend]
List of all members.

Detailed Description

Superclass for algorithms that produce only polydata as output.

vtkPolyDataAlgorithm 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 constructor for the default. This class also provides a FillInputPortInfo method that by default says that all inputs will be PolyData. 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 ExecuteData and ExecuteInformation. For new algorithms you should implement RequestData( request, inputVec, outputVec) but for older filters there is a default implementation that calls the old ExecuteData(output) signature, for even older filters that don;t implement ExecuteData the default implementation calls the even older Execute() signature.

Events:
vtkCommand::StartEvent vtkCommand::EndEvent
Created by:
  • King, Brad
CVS contributions (if > 5%):
  • Martin, Ken (100%)
CVS logs (CVSweb):
  • .cxx (/Filtering/vtkPolyDataAlgorithm.cxx)
  • .h (/Filtering/vtkPolyDataAlgorithm.h)

Definition at line 56 of file vtkPolyDataAlgorithm.h.

Public Types

typedef vtkAlgorithm Superclass

Public Member Functions

virtual const char * GetClassName ()
virtual int IsA (const char *type)
void PrintSelf (ostream &os, vtkIndent indent)
vtkDataObject * GetInput (int port)
vtkPolyData * GetPolyDataInput (int port)
vtkPolyData * GetOutput ()
vtkPolyData * GetOutput (int)
virtual int ProcessRequest (vtkInformation *, vtkInformationVector *, vtkInformationVector *)
void SetInput (vtkDataObject *)
void SetInput (int, vtkDataObject *)
void AddInput (vtkDataObject *)
void AddInput (int, vtkDataObject *)

Static Public Member Functions

vtkPolyDataAlgorithm * New ()
int IsTypeOf (const char *type)
vtkPolyDataAlgorithm * SafeDownCast (vtkObject *o)

Protected Member Functions

 vtkPolyDataAlgorithm ()
 ~vtkPolyDataAlgorithm ()
virtual void ExecuteInformation (vtkInformation *request, vtkInformationVector *inputVector, vtkInformationVector *outputVector)
virtual void RequestData (vtkInformation *request, vtkInformationVector *inputVector, vtkInformationVector *outputVector)
int UpdateExtentIsEmpty (vtkDataObject *output)
virtual int FillOutputPortInformation (int port, vtkInformation *info)
virtual int FillInputPortInformation (int port, vtkInformation *info)
virtual void ExecuteData (vtkDataObject *output)
virtual void Execute ()


Member Typedef Documentation

typedef vtkAlgorithm vtkPolyDataAlgorithm::Superclass
 

Reimplemented from vtkAlgorithm.

Definition at line 60 of file vtkPolyDataAlgorithm.h.


Constructor & Destructor Documentation

vtkPolyDataAlgorithm::vtkPolyDataAlgorithm (   )  [protected]
 

vtkPolyDataAlgorithm::~vtkPolyDataAlgorithm (   )  [protected]
 


Member Function Documentation

vtkPolyDataAlgorithm* vtkPolyDataAlgorithm::New (   )  [static]
 

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

Reimplemented from vtkAlgorithm.

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

Reimplemented from vtkAlgorithm.

int vtkPolyDataAlgorithm::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.

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

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

Reimplemented from vtkAlgorithm.

void vtkPolyDataAlgorithm::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.

vtkPolyData* vtkPolyDataAlgorithm::GetOutput (   ) 
 

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

vtkPolyData* vtkPolyDataAlgorithm::GetOutput (  int   ) 
 

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

virtual int vtkPolyDataAlgorithm::ProcessRequest (  vtkInformation *  ,
vtkInformationVector *  ,
vtkInformationVector * 
)  [virtual]
 

see vtkAlgorithm for details

Reimplemented from vtkAlgorithm.

vtkDataObject* vtkPolyDataAlgorithm::GetInput (  int  port  ) 
 

vtkPolyData* vtkPolyDataAlgorithm::GetPolyDataInput (  int  port  ) 
 

void vtkPolyDataAlgorithm::SetInput (  vtkDataObject *   ) 
 

Set an input of this algorithm.

void vtkPolyDataAlgorithm::SetInput (  int  ,
vtkDataObject * 
) 
 

Set an input of this algorithm.

void vtkPolyDataAlgorithm::AddInput (  vtkDataObject *   ) 
 

Add an input of this algorithm.

void vtkPolyDataAlgorithm::AddInput (  int  ,
vtkDataObject * 
) 
 

Add an input of this algorithm.

virtual void vtkPolyDataAlgorithm::ExecuteInformation (  vtkInformation *  request,
vtkInformationVector *  inputVector,
vtkInformationVector *  outputVector
)  [protected, virtual]
 

virtual void vtkPolyDataAlgorithm::RequestData (  vtkInformation *  request,
vtkInformationVector *  inputVector,
vtkInformationVector *  outputVector
)  [protected, virtual]
 

int vtkPolyDataAlgorithm::UpdateExtentIsEmpty (  vtkDataObject *  output  )  [protected]
 

This detects when the UpdateExtent will generate no data. This condition is satisfied when the UpdateExtent has zero volume (0,-1,...) or the UpdateNumberOfPieces is 0. The source uses this call to determine whether to call Execute.

virtual void vtkPolyDataAlgorithm::ExecuteData (  vtkDataObject *  output  )  [protected, virtual]
 

This method is the old style execute method

virtual void vtkPolyDataAlgorithm::Execute (   )  [protected, virtual]
 

This method is the old style execute method

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


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