vtkGenericDataSetAlgorithm 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 GenericDataSet. 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.
|
Public Types |
typedef vtkAlgorithm | Superclass |
Public Member Functions |
virtual const char * | GetClassName () |
virtual int | IsA (const char *type) |
vtkDataObject * | GetInput () |
vtkDataObject * | GetInput (int port) |
|
void | PrintSelf (ostream &os, vtkIndent indent) |
vtkGenericDataSet * | GetOutput () |
vtkGenericDataSet * | GetOutput (int) |
virtual void | SetOutput (vtkDataObject *d) |
|
virtual int | ProcessRequest (vtkInformation *, vtkInformationVector **, vtkInformationVector *) |
|
vtkGenericDataSet * | GetGenericDataSetInput (int port) |
void | SetInput (vtkDataObject *) |
void | SetInput (int, vtkDataObject *) |
|
void | AddInput (vtkDataObject *) |
void | AddInput (int, vtkDataObject *) |
Static Public Member Functions |
static int | IsTypeOf (const char *type) |
static vtkGenericDataSetAlgorithm * | SafeDownCast (vtkObject *o) |
Protected Member Functions |
| vtkGenericDataSetAlgorithm () |
| ~vtkGenericDataSetAlgorithm () |
virtual int | FillOutputPortInformation (int port, vtkInformation *info) |
virtual int | FillInputPortInformation (int port, vtkInformation *info) |
|
virtual int | RequestInformation (vtkInformation *request, vtkInformationVector **inputVector, vtkInformationVector *outputVector) |
virtual int | RequestData (vtkInformation *request, vtkInformationVector **inputVector, vtkInformationVector *outputVector) |
|
virtual int | RequestDataObject (vtkInformation *request, vtkInformationVector **inputVector, vtkInformationVector *outputVector)=0 |
|
virtual int | RequestUpdateExtent (vtkInformation *, vtkInformationVector **, vtkInformationVector *) |
|
virtual void | ExecuteData (vtkDataObject *output) |
virtual void | Execute () |