VTK  9.7.1
vtkPartitionedDataSet.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
30 #ifndef vtkPartitionedDataSet_h
31 #define vtkPartitionedDataSet_h
32 
33 #include "vtkCommonDataModelModule.h" // For export macro
34 #include "vtkDataObjectTree.h"
35 #include "vtkWrappingHints.h" // For VTK_MARSHALMANUAL
36 
37 VTK_ABI_NAMESPACE_BEGIN
38 class vtkDataSet;
39 class VTKCOMMONDATAMODEL_EXPORT VTK_MARSHALMANUAL vtkPartitionedDataSet : public vtkDataObjectTree
40 {
41 public:
42  static vtkPartitionedDataSet* New();
44  void PrintSelf(ostream& os, vtkIndent indent) override;
45 
50  int GetDataObjectType() VTK_FUTURE_CONST override { return VTK_PARTITIONED_DATA_SET; }
51 
57  void SetNumberOfPartitions(unsigned int numPartitions);
58 
62  unsigned int GetNumberOfPartitions();
63 
65 
68  vtkDataSet* GetPartition(unsigned int idx);
69  vtkDataObject* GetPartitionAsDataObject(unsigned int idx);
71 
76  void SetPartition(unsigned int idx, vtkDataObject* partition);
77 
81  vtkTypeBool HasMetaData(unsigned int idx) { return this->Superclass::HasChildMetaData(idx); }
82 
88  vtkInformation* GetMetaData(unsigned int idx) { return this->Superclass::GetChildMetaData(idx); }
89 
91 
95  static vtkPartitionedDataSet* GetData(vtkInformationVector* v, int i = 0);
97 
102  {
103  return this->Superclass::GetMetaData(iter);
104  }
105 
110  {
111  return this->Superclass::HasMetaData(iter);
112  }
113 
118  void RemoveNullPartitions();
119 
120 protected:
122  ~vtkPartitionedDataSet() override;
123 
129 
130 private:
132  void operator=(const vtkPartitionedDataSet&) = delete;
133 };
134 
135 VTK_ABI_NAMESPACE_END
136 #endif
int GetDataObjectType() VTK_FUTURE_CONST override
Return class name of data type (see vtkType.h for definitions).
composite dataset to encapsulates a dataset consisting of partitions.
static vtkDataObject * New()
vtkDataObjectTree * CreateForCopyStructure(vtkDataObjectTree *) override
vtkPartitionedDataSet cannot contain non-leaf children.
provides implementation for most abstract methods in the superclass vtkCompositeDataSet ...
Store vtkAlgorithm input/output information.
abstract class to specify dataset behavior
Definition: vtkDataSet.h:56
superclass for composite data iterators
int vtkTypeBool
Definition: vtkABI.h:64
vtkTypeBool HasMetaData(unsigned int idx)
Returns true if meta-data is available for a given partition.
#define VTK_MARSHALMANUAL
vtkInformation * GetMetaData(vtkCompositeDataIterator *iter) override
Unhiding superclass method.
a simple class to control print indentation
Definition: vtkIndent.h:28
vtkInformation * GetMetaData(unsigned int idx)
Returns the meta-data for the partition.
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
Store zero or more vtkInformation instances.
static vtkDataObjectTree * GetData(vtkInformation *info)
Retrieve an instance of this class from an information object.
general representation of visualization data
Definition: vtkDataObject.h:55
vtkTypeBool HasMetaData(vtkCompositeDataIterator *iter) override
Unhiding superclass method.