VTK  9.1.20211230
vtkMultiBlockDataSet.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3  Program: Visualization Toolkit
4  Module: vtkMultiBlockDataSet.h
5 
6  Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
7  All rights reserved.
8  See Copyright.txt or http://www.kitware.com/Copyright.htm for details.
9 
10  This software is distributed WITHOUT ANY WARRANTY; without even
11  the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
12  PURPOSE. See the above copyright notice for more information.
13 
14 =========================================================================*/
148 #ifndef vtkMultiBlockDataSet_h
149 #define vtkMultiBlockDataSet_h
150 
151 #include "vtkCommonDataModelModule.h" // For export macro
152 #include "vtkDataObjectTree.h"
153 
154 class VTKCOMMONDATAMODEL_EXPORT vtkMultiBlockDataSet : public vtkDataObjectTree
155 {
156 public:
159  void PrintSelf(ostream& os, vtkIndent indent) override;
160 
165  int GetDataObjectType() override { return VTK_MULTIBLOCK_DATA_SET; }
166 
172  void SetNumberOfBlocks(unsigned int numBlocks);
173 
177  unsigned int GetNumberOfBlocks();
178 
183  vtkDataObject* GetBlock(unsigned int blockno);
184 
194  void SetBlock(unsigned int blockno, vtkDataObject* block);
195 
199  void RemoveBlock(unsigned int blockno);
200 
204  int HasMetaData(unsigned int blockno) { return this->Superclass::HasChildMetaData(blockno); }
205 
211  vtkInformation* GetMetaData(unsigned int blockno)
212  {
213  return this->Superclass::GetChildMetaData(blockno);
214  }
215 
217 
223 
228  {
229  return this->Superclass::GetMetaData(iter);
230  }
231 
236  {
237  return this->Superclass::HasMetaData(iter);
238  }
239 
240 protected:
243 
250 
251 private:
253  void operator=(const vtkMultiBlockDataSet&) = delete;
254 };
255 
256 #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:113
Store zero or more vtkInformation instances.
Store vtkAlgorithm input/output information.
Composite dataset that organizes datasets into blocks.
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.
~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.
int HasMetaData(unsigned int blockno)
Returns true if meta-data is available for a given block.
static vtkMultiBlockDataSet * GetData(vtkInformation *info)
Retrieve an instance of this class from an information object.
static vtkMultiBlockDataSet * New()
int HasMetaData(vtkCompositeDataIterator *iter) override
Unhiding superclass method.
vtkInformation * GetMetaData(vtkCompositeDataIterator *iter) override
Unhiding superclass method.
@ info
Definition: vtkX3D.h:382
#define VTK_MULTIBLOCK_DATA_SET
Definition: vtkType.h:90