VTK  9.0.3
vtkUniformGridAMRDataIterator.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3  Program: Visualization Toolkit
4  Module: vtkUniformGridAMRDataIterator.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 =========================================================================*/
22 #ifndef vtkUniformGridAMRDataIterator_h
23 #define vtkUniformGridAMRDataIterator_h
24 
25 #include "vtkCommonDataModelModule.h" // For export macro
27 #include "vtkSmartPointer.h" //for member variable Information
28 
29 class vtkInformation;
30 class vtkAMRInformation;
32 class vtkUniformGridAMR;
33 class AMRIndexIterator;
34 
35 class VTKCOMMONDATAMODEL_EXPORT vtkUniformGridAMRDataIterator : public vtkCompositeDataIterator
36 {
37 public:
40  void PrintSelf(ostream& os, vtkIndent indent) override;
41 
49 
50  int HasCurrentMetaData() override { return 1; }
51 
56 
62  unsigned int GetCurrentFlatIndex() override;
63 
67  virtual unsigned int GetCurrentLevel();
68 
73  virtual unsigned int GetCurrentIndex();
74 
78  void GoToFirstItem() override;
79 
83  void GoToNextItem() override;
84 
91  int IsDoneWithTraversal() override;
92 
93 protected:
97 
98 private:
100  void operator=(const vtkUniformGridAMRDataIterator&) = delete;
101 
104  vtkAMRInformation* AMRInfo;
105  vtkAMRDataInternals* AMRData;
106 
107  void GetCurrentIndexPair(unsigned int& level, unsigned int& id);
108 };
109 
110 #endif
container of vtkUniformGrid for an AMR data set
Meta data that describes the structure of an AMR data set.
superclass for composite data iterators
general representation of visualization data
Definition: vtkDataObject.h:60
a simple class to control print indentation
Definition: vtkIndent.h:34
Store vtkAlgorithm input/output information.
subclass of vtkCompositeDataIterator with API to get current level and dataset index.
virtual unsigned int GetCurrentLevel()
Returns the level for the current dataset.
int HasCurrentMetaData() override
Returns if the a meta-data information object is present for the current item.
unsigned int GetCurrentFlatIndex() override
Flat index is an index obtained by traversing the tree in preorder.
int IsDoneWithTraversal() override
Test whether the iterator is finished with the traversal.
virtual unsigned int GetCurrentIndex()
Returns the dataset index for the current data object.
static vtkUniformGridAMRDataIterator * New()
void GoToNextItem() override
Move the iterator to the next item in the collection.
vtkDataObject * GetCurrentDataObject() override
Returns the current item.
void GoToFirstItem() override
Move the iterator to the beginning of the collection.
vtkSmartPointer< AMRIndexIterator > Iter
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
vtkInformation * GetCurrentMetaData() override
Returns the meta-data associated with the current item.
~vtkUniformGridAMRDataIterator() override
@ level
Definition: vtkX3D.h:401