VTK  9.7.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 #include "vtkWrappingHints.h" // For VTK_MARSHALAUTO
28 
29 VTK_ABI_NAMESPACE_BEGIN
30 class vtkAlgorithm;
31 
32 class VTKCOMMONEXECUTIONMODEL_EXPORT VTK_MARSHALAUTO vtkAlgorithmOutput : public vtkObject
33 {
34 public:
35  static vtkAlgorithmOutput* New();
36  vtkTypeMacro(vtkAlgorithmOutput, vtkObject);
37  void PrintSelf(ostream& os, vtkIndent indent) override;
38 
39  void SetIndex(int index);
40  int GetIndex() const;
41 
42  vtkAlgorithm* GetProducer() const;
43  void SetProducer(vtkAlgorithm* producer);
44 
45 protected:
47  ~vtkAlgorithmOutput() override;
48 
49  int Index;
51 
52 private:
53  vtkAlgorithmOutput(const vtkAlgorithmOutput&) = delete;
54  void operator=(const vtkAlgorithmOutput&) = delete;
55 };
56 
57 VTK_ABI_NAMESPACE_END
58 #endif
abstract base class for most VTK objects
Definition: vtkObject.h:52
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:53
a simple class to control print indentation
Definition: vtkIndent.h:28
#define VTK_MARSHALAUTO
vtkAlgorithm * Producer
static vtkObject * New()
Create an object with Debug turned off, modified time initialized to zero, and reference counting on...