VTK  9.3.1
vtkPartitionedDataSetCollection.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
18 #ifndef vtkPartitionedDataSetCollection_h
19 #define vtkPartitionedDataSetCollection_h
20 
21 #include "vtkCommonDataModelModule.h" // For export macro
22 #include "vtkDataObjectTree.h"
23 
24 VTK_ABI_NAMESPACE_BEGIN
26 class vtkDataAssembly;
27 class vtkDataSet;
28 
29 class VTKCOMMONDATAMODEL_EXPORT vtkPartitionedDataSetCollection : public vtkDataObjectTree
30 {
31 public:
34  void PrintSelf(ostream& os, vtkIndent indent) override;
35 
41 
47  void SetNumberOfPartitionedDataSets(unsigned int numDataSets);
48 
52  unsigned int GetNumberOfPartitionedDataSets() const;
53 
58  vtkPartitionedDataSet* GetPartitionedDataSet(unsigned int idx) const;
59 
66  void SetPartitionedDataSet(unsigned int idx, vtkPartitionedDataSet* dataset);
67 
71  void RemovePartitionedDataSet(unsigned int idx);
72 
74 
77  void SetPartition(unsigned int idx, unsigned int partition, vtkDataObject* object);
78  vtkDataSet* GetPartition(unsigned int idx, unsigned int partition);
79  vtkDataObject* GetPartitionAsDataObject(unsigned int idx, unsigned int partition);
81 
85  unsigned int GetNumberOfPartitions(unsigned int idx) const;
86 
91  void SetNumberOfPartitions(unsigned int idx, unsigned int numPartitions);
92 
96  vtkTypeBool HasMetaData(unsigned int idx) { return this->Superclass::HasChildMetaData(idx); }
97 
103  vtkInformation* GetMetaData(unsigned int idx) { return this->Superclass::GetChildMetaData(idx); }
104 
106 
111  vtkGetObjectMacro(DataAssembly, vtkDataAssembly);
112  void SetDataAssembly(vtkDataAssembly* assembly);
114 
116 
121  unsigned int GetCompositeIndex(unsigned int idx) const;
122  unsigned int GetCompositeIndex(unsigned int idx, unsigned int partition) const;
124 
126 
132 
137  {
138  return this->Superclass::GetMetaData(iter);
139  }
140 
145  {
146  return this->Superclass::HasMetaData(iter);
147  }
148 
152  vtkMTimeType GetMTime() override;
153 
155 
158  void CompositeShallowCopy(vtkCompositeDataSet* src) override;
159  void ShallowCopy(vtkDataObject* src) override;
160  void DeepCopy(vtkDataObject* src) override;
161  void CopyStructure(vtkCompositeDataSet* input) override;
162  void Initialize() override;
164 protected:
167 
174 
175 private:
177  void operator=(const vtkPartitionedDataSetCollection&) = delete;
178 
179  vtkDataAssembly* DataAssembly;
180 };
181 
182 VTK_ABI_NAMESPACE_END
183 #endif
void Initialize() override
Restore data object to initial state,.
composite dataset to encapsulates a dataset consisting of partitions.
static vtkDataObject * New()
provides implementation for most abstract methods in the superclass vtkCompositeDataSet ...
Store vtkAlgorithm input/output information.
vtkTypeUInt32 vtkMTimeType
Definition: vtkType.h:270
abstract class to specify dataset behavior
Definition: vtkDataSet.h:52
void CopyStructure(vtkCompositeDataSet *input) override
Copies the tree structure from the input.
vtkInformation * GetMetaData(unsigned int idx)
Returns the meta-data for the block.
vtkTypeBool HasMetaData(vtkCompositeDataIterator *iter) override
Unhiding superclass method.
superclass for composite data iterators
int vtkTypeBool
Definition: vtkABI.h:64
#define VTK_PARTITIONED_DATA_SET_COLLECTION
Definition: vtkType.h:103
void ShallowCopy(vtkDataObject *src) override
CompositeShallow, Shallow and Deep copy.
abstract superclass for composite (multi-block or AMR) datasets
void CompositeShallowCopy(vtkCompositeDataSet *src) override
CompositeShallow, Shallow and Deep copy.
a simple class to control print indentation
Definition: vtkIndent.h:28
virtual vtkDataObjectTree * CreateForCopyStructure(vtkDataObjectTree *other)
When copying structure from another vtkDataObjectTree, this method gets called for create a new non-l...
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.
void DeepCopy(vtkDataObject *src) override
CompositeShallow, Shallow and Deep copy.
int GetDataObjectType() override
Return class name of data type (see vtkType.h for definitions).
hierarchical representation to use with vtkPartitionedDataSetCollection
vtkMTimeType GetMTime() override
Data objects are composite objects and need to check each part for MTime.
vtkInformation * GetMetaData(vtkCompositeDataIterator *iter) override
Unhiding superclass method.
general representation of visualization data
Definition: vtkDataObject.h:54
vtkTypeBool HasMetaData(unsigned int idx)
Returns true if meta-data is available for a given block.
Composite dataset that groups datasets as a collection.