VTK  9.7.1
vtkGroupDataSetsFilter.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
23 #ifndef vtkGroupDataSetsFilter_h
24 #define vtkGroupDataSetsFilter_h
25 
26 #include "vtkDataObjectAlgorithm.h"
27 #include "vtkFiltersGeneralModule.h" // For export macro
28 #include <memory> // for std::unique_ptr
29 
30 VTK_ABI_NAMESPACE_BEGIN
31 class VTKFILTERSGENERAL_EXPORT vtkGroupDataSetsFilter : public vtkDataObjectAlgorithm
32 {
33 public:
34  static vtkGroupDataSetsFilter* New();
36  void PrintSelf(ostream& os, vtkIndent indent) override;
37 
39 
46  vtkSetMacro(OutputType, int);
47  vtkGetMacro(OutputType, int);
48  void SetOutputTypeToPartitionedDataSet();
49  void SetOutputTypeToPartitionedDataSetCollection();
50  void SetOutputTypeToMultiBlockDataSet();
52 
54 
61  void SetInputName(int index, const char* name);
62  const char* GetInputName(int index) const;
64 
68  void ClearInputNames();
69 
71 
79  vtkSetMacro(CombineFirstLayerMultiblock, bool);
80  vtkGetMacro(CombineFirstLayerMultiblock, bool);
81  vtkBooleanMacro(CombineFirstLayerMultiblock, bool);
83 
84 protected:
86  ~vtkGroupDataSetsFilter() override;
87 
92 
93 private:
95  void operator=(const vtkGroupDataSetsFilter&) = delete;
96 
97  int OutputType;
98 
99  bool CombineFirstLayerMultiblock = false;
100 
101  class vtkInternals;
102  std::unique_ptr<vtkInternals> Internals;
103 };
104 
105 VTK_ABI_NAMESPACE_END
106 #endif
virtual int RequestDataObject(vtkInformation *, vtkInformationVector **, vtkInformationVector *)
This is called by the superclass.
Store vtkAlgorithm input/output information.
static vtkDataObjectAlgorithm * New()
a simple class to control print indentation
Definition: vtkIndent.h:28
groups inputs into a chosen composite dataset.
Superclass for algorithms that produce only data object as output.
virtual int RequestData(vtkInformation *, vtkInformationVector **, vtkInformationVector *)
virtual int RequestInformation(vtkInformation *request, vtkInformationVector **inputVector, vtkInformationVector *outputVector)
Store zero or more vtkInformation instances.
int FillInputPortInformation(int port, vtkInformation *info) override
Fill the input port information objects for this algorithm.
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.