00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00033 #ifndef __vtkPassInputTypeAlgorithm_h
00034 #define __vtkPassInputTypeAlgorithm_h
00035
00036 #include "vtkAlgorithm.h"
00037
00038 class vtkDataObject;
00039 class vtkGraph;
00040 class vtkImageData;
00041 class vtkPolyData;
00042 class vtkStructuredPoints;
00043 class vtkStructuredGrid;
00044 class vtkUnstructuredGrid;
00045 class vtkRectilinearGrid;
00046 class vtkTable;
00047
00048 class VTK_FILTERING_EXPORT vtkPassInputTypeAlgorithm : public vtkAlgorithm
00049 {
00050 public:
00051 static vtkPassInputTypeAlgorithm *New();
00052 vtkTypeMacro(vtkPassInputTypeAlgorithm,vtkAlgorithm);
00053 void PrintSelf(ostream& os, vtkIndent indent);
00054
00056
00057 vtkDataObject* GetOutput();
00058 vtkDataObject* GetOutput(int);
00060
00062 vtkPolyData *GetPolyDataOutput();
00063
00065 vtkStructuredPoints *GetStructuredPointsOutput();
00066
00068 vtkImageData *GetImageDataOutput();
00069
00071 vtkStructuredGrid *GetStructuredGridOutput();
00072
00074 vtkUnstructuredGrid *GetUnstructuredGridOutput();
00075
00077 vtkRectilinearGrid *GetRectilinearGridOutput();
00078
00080 vtkTable *GetTableOutput();
00081
00083 vtkGraph *GetGraphOutput();
00084
00087 vtkDataObject* GetInput();
00088
00090
00097 void SetInput(vtkDataObject*);
00098 void SetInput(int, vtkDataObject*);
00100
00102
00106 void AddInput(vtkDataObject *);
00107 void AddInput(int, vtkDataObject*);
00109
00111
00112 virtual int ProcessRequest(vtkInformation* request,
00113 vtkInformationVector** inputVector,
00114 vtkInformationVector* outputVector);
00116
00117 protected:
00118 vtkPassInputTypeAlgorithm();
00119 ~vtkPassInputTypeAlgorithm() {};
00120
00122
00127 virtual int RequestInformation(vtkInformation*,
00128 vtkInformationVector**,
00129 vtkInformationVector*) {return 1;};
00131
00133
00137 virtual int RequestUpdateExtent(vtkInformation*,
00138 vtkInformationVector**,
00139 vtkInformationVector*)
00140 {
00141 return 1;
00142 };
00144
00145
00147
00154 virtual int RequestDataObject(vtkInformation* request,
00155 vtkInformationVector** inputVector,
00156 vtkInformationVector* outputVector);
00158
00160
00164 virtual int RequestData(vtkInformation*,
00165 vtkInformationVector**,
00166 vtkInformationVector*) {return 1;};
00168
00169
00170
00171 virtual int FillOutputPortInformation(int port, vtkInformation* info);
00172 virtual int FillInputPortInformation(int port, vtkInformation* info);
00173
00174 vtkDataObject *GetInput(int port);
00175
00176 private:
00177 vtkPassInputTypeAlgorithm(const vtkPassInputTypeAlgorithm&);
00178 void operator=(const vtkPassInputTypeAlgorithm&);
00179 };
00180
00181 #endif
00182
00183