VTK  9.3.0
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 
36 VTK_ABI_NAMESPACE_BEGIN
37 class vtkDataSet;
38 class VTKCOMMONDATAMODEL_EXPORT vtkPartitionedDataSet : public vtkDataObjectTree
39 {
40 public:
43  void PrintSelf(ostream& os, vtkIndent indent) override;
44 
49  int GetDataObjectType() override { return VTK_PARTITIONED_DATA_SET; }
50 
56  void SetNumberOfPartitions(unsigned int numPartitions);
57 
61  unsigned int GetNumberOfPartitions();
62 
64 
67  vtkDataSet* GetPartition(unsigned int idx);
70 
75  void SetPartition(unsigned int idx, vtkDataObject* partition);
76 
80  vtkTypeBool HasMetaData(unsigned int idx) { return this->Superclass::HasChildMetaData(idx); }
81 
87  vtkInformation* GetMetaData(unsigned int idx) { return this->Superclass::GetChildMetaData(idx); }
88 
90 
96 
101  {
102  return this->Superclass::GetMetaData(iter);
103  }
104 
109  {
110  return this->Superclass::HasMetaData(iter);
111  }
112 
118 
119 protected:
122 
128 
129 private:
131  void operator=(const vtkPartitionedDataSet&) = delete;
132 };
133 
134 VTK_ABI_NAMESPACE_END
135 #endif
superclass for composite data iterators
provides implementation for most abstract methods in the superclass vtkCompositeDataSet
general representation of visualization data
Definition: vtkDataObject.h:55
abstract class to specify dataset behavior
Definition: vtkDataSet.h:53
a simple class to control print indentation
Definition: vtkIndent.h:29
Store zero or more vtkInformation instances.
Store vtkAlgorithm input/output information.
composite dataset to encapsulates a dataset consisting of partitions.
unsigned int GetNumberOfPartitions()
Returns the number of partitions.
static vtkPartitionedDataSet * GetData(vtkInformationVector *v, int i=0)
Retrieve an instance of this class from an information object.
vtkTypeBool HasMetaData(unsigned int idx)
Returns true if meta-data is available for a given partition.
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
~vtkPartitionedDataSet() override
vtkDataSet * GetPartition(unsigned int idx)
Returns the partition at the given index.
vtkInformation * GetMetaData(unsigned int idx)
Returns the meta-data for the partition.
int GetDataObjectType() override
Return class name of data type (see vtkType.h for definitions).
vtkInformation * GetMetaData(vtkCompositeDataIterator *iter) override
Unhiding superclass method.
vtkTypeBool HasMetaData(vtkCompositeDataIterator *iter) override
Unhiding superclass method.
vtkDataObjectTree * CreateForCopyStructure(vtkDataObjectTree *) override
vtkPartitionedDataSet cannot contain non-leaf children.
static vtkPartitionedDataSet * New()
vtkDataObject * GetPartitionAsDataObject(unsigned int idx)
Returns the partition at the given index.
void RemoveNullPartitions()
Removes all partitions that have null datasets and resizes the dataset.
void SetNumberOfPartitions(unsigned int numPartitions)
Set the number of partitions.
void SetPartition(unsigned int idx, vtkDataObject *partition)
Sets the data object as the given partition.
static vtkPartitionedDataSet * GetData(vtkInformation *info)
Retrieve an instance of this class from an information object.
@ info
Definition: vtkX3D.h:376
int vtkTypeBool
Definition: vtkABI.h:64
#define VTK_PARTITIONED_DATA_SET
Definition: vtkType.h:102