VTK  9.1.0
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 =========================================================================*/
39 #ifndef vtkMultiBlockDataSet_h
40 #define vtkMultiBlockDataSet_h
41 
42 #include "vtkCommonDataModelModule.h" // For export macro
43 #include "vtkDataObjectTree.h"
44 
45 class VTKCOMMONDATAMODEL_EXPORT vtkMultiBlockDataSet : public vtkDataObjectTree
46 {
47 public:
50  void PrintSelf(ostream& os, vtkIndent indent) override;
51 
56  int GetDataObjectType() override { return VTK_MULTIBLOCK_DATA_SET; }
57 
63  void SetNumberOfBlocks(unsigned int numBlocks);
64 
68  unsigned int GetNumberOfBlocks();
69 
74  vtkDataObject* GetBlock(unsigned int blockno);
75 
85  void SetBlock(unsigned int blockno, vtkDataObject* block);
86 
90  void RemoveBlock(unsigned int blockno);
91 
95  int HasMetaData(unsigned int blockno) { return this->Superclass::HasChildMetaData(blockno); }
96 
102  vtkInformation* GetMetaData(unsigned int blockno)
103  {
104  return this->Superclass::GetChildMetaData(blockno);
105  }
106 
108 
114 
119  {
120  return this->Superclass::GetMetaData(iter);
121  }
122 
127  {
128  return this->Superclass::HasMetaData(iter);
129  }
130 
131 protected:
134 
141 
142 private:
144  void operator=(const vtkMultiBlockDataSet&) = delete;
145 };
146 
147 #endif
superclass for composite data iterators
provides implementation for most abstract methods in the superclass vtkCompositeDataSet
general representation of visualization data
Definition: vtkDataObject.h:60
a simple class to control print indentation
Definition: vtkIndent.h:34
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