VTK  9.3.1
vtkExplicitStructuredGridAlgorithm.h
Go to the documentation of this file.
1 // SPDX-FileCopyrightText: Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
2 // SPDX-License-Identifier: BSD-3-Clause
9 #ifndef vtkExplicitStructuredGridAlgorithm_h
10 #define vtkExplicitStructuredGridAlgorithm_h
11 
12 #include "vtkAlgorithm.h"
13 #include "vtkCommonExecutionModelModule.h" // For export macro
14 
15 VTK_ABI_NAMESPACE_BEGIN
16 class vtkDataSet;
18 
19 class VTKCOMMONEXECUTIONMODEL_EXPORT vtkExplicitStructuredGridAlgorithm : public vtkAlgorithm
20 {
21 public:
24  void PrintSelf(ostream& os, vtkIndent indent) override;
25 
27 
30  vtkExplicitStructuredGrid* GetOutput();
31  vtkExplicitStructuredGrid* GetOutput(int);
32  virtual void SetOutput(vtkDataObject* d);
34 
40 
41  // this method is not recommended for use, but lots of old style filters
42  // use it
43  vtkDataObject* GetInput();
44  vtkDataObject* GetInput(int port);
45  vtkExplicitStructuredGrid* GetExplicitStructuredGridInput(int port);
46 
48 
53  void SetInputData(vtkDataObject*);
54  void SetInputData(int, vtkDataObject*);
56 
58 
63  void AddInputData(vtkDataObject*);
64  void AddInputData(int, vtkDataObject*);
66 
67 protected:
69  ~vtkExplicitStructuredGridAlgorithm() override = default;
70 
71  // convenience method
72  virtual int RequestInformation(vtkInformation* request, vtkInformationVector** inputVector,
73  vtkInformationVector* outputVector);
74 
79  virtual int RequestData(vtkInformation* request, vtkInformationVector** inputVector,
80  vtkInformationVector* outputVector);
81 
86  virtual int RequestUpdateExtent(vtkInformation*, vtkInformationVector**, vtkInformationVector*);
87 
88  // see algorithm for more info
91 
92 private:
94  void operator=(const vtkExplicitStructuredGridAlgorithm&) = delete;
95 };
96 
97 VTK_ABI_NAMESPACE_END
98 #endif
Store vtkAlgorithm input/output information.
abstract class to specify dataset behavior
Definition: vtkDataSet.h:52
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
int vtkTypeBool
Definition: vtkABI.h:64
virtual vtkTypeBool ProcessRequest(vtkInformation *request, vtkInformationVector **inInfo, vtkInformationVector *outInfo)
Upstream/Downstream requests form the generalized interface through which executives invoke a algorit...
Superclass for all sources, filters, and sinks in VTK.
Definition: vtkAlgorithm.h:51
virtual int FillOutputPortInformation(int port, vtkInformation *info)
Fill the output port information objects for this algorithm.
a simple class to control print indentation
Definition: vtkIndent.h:28
virtual int FillInputPortInformation(int port, vtkInformation *info)
Fill the input port information objects for this algorithm.
structured grid with explicit topology and geometry
Store zero or more vtkInformation instances.
static vtkAlgorithm * New()
Superclass for algorithms that produce only explicit structured grid as output.
general representation of visualization data
Definition: vtkDataObject.h:54