VTK  9.0.1
vtkExplicitStructuredGridAlgorithm.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3  Program: Visualization Toolkit
4  Module: vtkExplicitStructuredGridAlgorithm.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 =========================================================================*/
21 #ifndef vtkExplicitStructuredGridAlgorithm_h
22 #define vtkExplicitStructuredGridAlgorithm_h
23 
24 #include "vtkAlgorithm.h"
25 #include "vtkCommonExecutionModelModule.h" // For export macro
26 
27 class vtkDataSet;
29 
30 class VTKCOMMONEXECUTIONMODEL_EXPORT vtkExplicitStructuredGridAlgorithm : public vtkAlgorithm
31 {
32 public:
35 
37 
40  vtkExplicitStructuredGrid* GetOutput();
41  vtkExplicitStructuredGrid* GetOutput(int);
42  virtual void SetOutput(vtkDataObject* d);
44 
50 
51  // this method is not recommended for use, but lots of old style filters
52  // use it
53  vtkDataObject* GetInput();
54  vtkDataObject* GetInput(int port);
55  vtkExplicitStructuredGrid* GetExplicitStructuredGridInput(int port);
56 
58 
63  void SetInputData(vtkDataObject*);
64  void SetInputData(int, vtkDataObject*);
66 
68 
73  void AddInputData(vtkDataObject*);
74  void AddInputData(int, vtkDataObject*);
76 
77 protected:
79  ~vtkExplicitStructuredGridAlgorithm() override = default;
80 
81  // convenience method
82  virtual int RequestInformation(vtkInformation* request, vtkInformationVector** inputVector,
83  vtkInformationVector* outputVector);
84 
89  virtual int RequestData(vtkInformation* request, vtkInformationVector** inputVector,
90  vtkInformationVector* outputVector);
91 
96  virtual int RequestUpdateExtent(vtkInformation*, vtkInformationVector**, vtkInformationVector*);
97 
98  // see algorithm for more info
99  virtual int FillOutputPortInformation(int port, vtkInformation* info) override;
100  virtual int FillInputPortInformation(int port, vtkInformation* info) override;
101 
102 private:
104  void operator=(const vtkExplicitStructuredGridAlgorithm&) = delete;
105 };
106 
107 #endif
Store vtkAlgorithm input/output information.
abstract class to specify dataset behavior
Definition: vtkDataSet.h:56
int vtkTypeBool
Definition: vtkABI.h:69
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:62
virtual int FillOutputPortInformation(int port, vtkInformation *info)
Fill the output port information objects for this algorithm.
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:59