VTK  9.3.20240416
vtkMultiBlockDataSet.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
142 #ifndef vtkMultiBlockDataSet_h
143 #define vtkMultiBlockDataSet_h
144 
145 #include "vtkCommonDataModelModule.h" // For export macro
146 #include "vtkDataObjectTree.h"
147 
148 VTK_ABI_NAMESPACE_BEGIN
149 class VTKCOMMONDATAMODEL_EXPORT vtkMultiBlockDataSet : public vtkDataObjectTree
150 {
151 public:
154  void PrintSelf(ostream& os, vtkIndent indent) override;
155 
160  int GetDataObjectType() override { return VTK_MULTIBLOCK_DATA_SET; }
161 
167  void SetNumberOfBlocks(unsigned int numBlocks);
168 
172  unsigned int GetNumberOfBlocks();
173 
178  vtkDataObject* GetBlock(unsigned int blockno);
179 
189  void SetBlock(unsigned int blockno, vtkDataObject* block);
190 
194  void RemoveBlock(unsigned int blockno);
195 
199  vtkTypeBool HasMetaData(unsigned int blockno)
200  {
201  return this->Superclass::HasChildMetaData(blockno);
202  }
203 
209  vtkInformation* GetMetaData(unsigned int blockno)
210  {
211  return this->Superclass::GetChildMetaData(blockno);
212  }
213 
215 
221 
226  {
227  return this->Superclass::GetMetaData(iter);
228  }
229 
234  {
235  return this->Superclass::HasMetaData(iter);
236  }
237 
238 protected:
241 
248 
249 private:
251  void operator=(const vtkMultiBlockDataSet&) = delete;
252 };
253 
254 VTK_ABI_NAMESPACE_END
255 #endif
superclass for composite data iterators
provides implementation for most abstract methods in the superclass vtkCompositeDataSet
general representation of visualization data
a simple class to control print indentation
Definition: vtkIndent.h:108
Store zero or more vtkInformation instances.
Store vtkAlgorithm input/output information.
Composite dataset that organizes datasets into blocks.
vtkTypeBool HasMetaData(vtkCompositeDataIterator *iter) override
Unhiding superclass method.
void SetNumberOfBlocks(unsigned int numBlocks)
Set the number of blocks.
void RemoveBlock(unsigned int blockno)
Remove the given block from the dataset.
int GetDataObjectType() override
Return class name of data type (see vtkType.h for definitions).
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
vtkTypeBool HasMetaData(unsigned int blockno)
Returns true if meta-data is available for a given block.
~vtkMultiBlockDataSet() override
vtkInformation * GetMetaData(unsigned int blockno)
Returns the meta-data for the block.
static vtkMultiBlockDataSet * GetData(vtkInformationVector *v, int i=0)
Retrieve an instance of this class from an information object.
vtkDataObject * GetBlock(unsigned int blockno)
Returns the block at the given index.
void SetBlock(unsigned int blockno, vtkDataObject *block)
Sets the data object as the given block.
unsigned int GetNumberOfBlocks()
Returns the number of blocks.
vtkDataObjectTree * CreateForCopyStructure(vtkDataObjectTree *other) override
Overridden to create a vtkMultiPieceDataSet whenever a vtkPartitionedDataSet is encountered.
static vtkMultiBlockDataSet * GetData(vtkInformation *info)
Retrieve an instance of this class from an information object.
static vtkMultiBlockDataSet * New()
vtkInformation * GetMetaData(vtkCompositeDataIterator *iter) override
Unhiding superclass method.
@ info
Definition: vtkX3D.h:376
int vtkTypeBool
Definition: vtkABI.h:64
#define VTK_MULTIBLOCK_DATA_SET
Definition: vtkType.h:78