VTK  9.3.1
vtkAlgorithmOutput.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
22 #ifndef vtkAlgorithmOutput_h
23 #define vtkAlgorithmOutput_h
24 
25 #include "vtkCommonExecutionModelModule.h" // For export macro
26 #include "vtkObject.h"
27 
28 VTK_ABI_NAMESPACE_BEGIN
29 class vtkAlgorithm;
30 
31 class VTKCOMMONEXECUTIONMODEL_EXPORT vtkAlgorithmOutput : public vtkObject
32 {
33 public:
34  static vtkAlgorithmOutput* New();
35  vtkTypeMacro(vtkAlgorithmOutput, vtkObject);
36  void PrintSelf(ostream& os, vtkIndent indent) override;
37 
38  void SetIndex(int index);
39  int GetIndex() const;
40 
41  vtkAlgorithm* GetProducer() const;
42  void SetProducer(vtkAlgorithm* producer);
43 
44 protected:
46  ~vtkAlgorithmOutput() override;
47 
48  int Index;
50 
51 private:
52  vtkAlgorithmOutput(const vtkAlgorithmOutput&) = delete;
53  void operator=(const vtkAlgorithmOutput&) = delete;
54 };
55 
56 VTK_ABI_NAMESPACE_END
57 #endif
abstract base class for most VTK objects
Definition: vtkObject.h:51
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
Proxy object to connect input/output ports.
Superclass for all sources, filters, and sinks in VTK.
Definition: vtkAlgorithm.h:51
a simple class to control print indentation
Definition: vtkIndent.h:28
vtkAlgorithm * Producer
static vtkObject * New()
Create an object with Debug turned off, modified time initialized to zero, and reference counting on...