VTK
vtkPassInputTypeAlgorithm.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3  Program: Visualization Toolkit
4  Module: vtkPassInputTypeAlgorithm.h
5 
6  Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
7  All rights reserved.
8  See Copyright.txt or http://www.kitware.com/Copyright.htm for details.
9 
10  This software is distributed WITHOUT ANY WARRANTY; without even
11  the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
12  PURPOSE. See the above copyright notice for more information.
13 
14 =========================================================================*/
34 #ifndef vtkPassInputTypeAlgorithm_h
35 #define vtkPassInputTypeAlgorithm_h
36 
37 #include "vtkCommonExecutionModelModule.h" // For export macro
38 #include "vtkAlgorithm.h"
39 
40 class vtkDataObject;
41 class vtkGraph;
42 class vtkImageData;
43 class vtkPolyData;
45 class vtkStructuredGrid;
47 class vtkRectilinearGrid;
48 class vtkTable;
49 
50 class VTKCOMMONEXECUTIONMODEL_EXPORT vtkPassInputTypeAlgorithm : public vtkAlgorithm
51 {
52 public:
55  void PrintSelf(ostream& os, vtkIndent indent) VTK_OVERRIDE;
56 
58 
61  vtkDataObject* GetOutput();
62  vtkDataObject* GetOutput(int);
64 
68  vtkPolyData *GetPolyDataOutput();
69 
73  vtkStructuredPoints *GetStructuredPointsOutput();
74 
78  vtkImageData *GetImageDataOutput();
79 
83  vtkStructuredGrid *GetStructuredGridOutput();
84 
88  vtkUnstructuredGrid *GetUnstructuredGridOutput();
89 
93  vtkRectilinearGrid *GetRectilinearGridOutput();
94 
98  vtkTable *GetTableOutput();
99 
103  vtkGraph *GetGraphOutput();
104 
109  vtkDataObject* GetInput();
110 
112 
117  void SetInputData(vtkDataObject*);
118  void SetInputData(int, vtkDataObject*);
120 
122 
127  void AddInputData(vtkDataObject *);
128  void AddInputData(int, vtkDataObject*);
130 
131 
135  int ProcessRequest(vtkInformation* request,
136  vtkInformationVector** inputVector,
137  vtkInformationVector* outputVector) VTK_OVERRIDE;
138 
139 protected:
141  ~vtkPassInputTypeAlgorithm() VTK_OVERRIDE {}
142 
152  vtkInformationVector*) {return 1;};
153 
154 
157  vtkInformationVector*) { return 1;}
158 
161  vtkInformationVector*) { return 1;}
162 
163 
165 
174  {
175  return 1;
176  };
178 
179 
189  virtual int RequestDataObject(vtkInformation* request,
190  vtkInformationVector** inputVector,
191  vtkInformationVector* outputVector);
192 
201  vtkInformationVector*) {return 1;};
202 
203 
204  // see algorithm for more info
205  int FillOutputPortInformation(int port, vtkInformation* info) VTK_OVERRIDE;
206  int FillInputPortInformation(int port, vtkInformation* info) VTK_OVERRIDE;
207 
208  vtkDataObject *GetInput(int port);
209 
210 private:
211  vtkPassInputTypeAlgorithm(const vtkPassInputTypeAlgorithm&) VTK_DELETE_FUNCTION;
212  void operator=(const vtkPassInputTypeAlgorithm&) VTK_DELETE_FUNCTION;
213 };
214 
215 #endif
216 
217 
virtual int RequestInformation(vtkInformation *, vtkInformationVector **, vtkInformationVector *)
This is called within ProcessRequest when a request asks for Information.
a dataset that is topologically regular with variable spacing in the three coordinate directions ...
Superclass for algorithms that produce output of the same type as input.
Store vtkAlgorithm input/output information.
virtual int ProcessRequest(vtkInformation *request, vtkInformationVector **inInfo, vtkInformationVector *outInfo)
Upstream/Downstream requests form the generalized interface through which executives invoke a algorit...
concrete dataset represents vertices, lines, polygons, and triangle strips
Definition: vtkPolyData.h:85
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
virtual int RequestUpdateTime(vtkInformation *, vtkInformationVector **, vtkInformationVector *)
Base class for graph data types.
Definition: vtkGraph.h:287
virtual int RequestUpdateTimeDependentInformation(vtkInformation *, vtkInformationVector **, vtkInformationVector *)
Superclass for all sources, filters, and sinks in VTK.
Definition: vtkAlgorithm.h:59
virtual int FillOutputPortInformation(int port, vtkInformation *info)
Fill the output port information objects for this algorithm.
virtual int RequestUpdateExtent(vtkInformation *, vtkInformationVector **, vtkInformationVector *)
This is called within ProcessRequest when each filter in the pipeline decides what portion of its inp...
a simple class to control print indentation
Definition: vtkIndent.h:39
topologically and geometrically regular array of data
Definition: vtkImageData.h:45
dataset represents arbitrary combinations of all possible cell types
virtual int FillInputPortInformation(int port, vtkInformation *info)
Fill the input port information objects for this algorithm.
A table, which contains similar-typed columns of data.
Definition: vtkTable.h:68
A subclass of ImageData.
topologically regular array of data
Store zero or more vtkInformation instances.
static vtkAlgorithm * New()
general representation of visualization data
Definition: vtkDataObject.h:64
virtual int RequestData(vtkInformation *, vtkInformationVector **, vtkInformationVector *)
This is called within ProcessRequest when a request asks the algorithm to do its work.