VTK  9.2.6
vtkHyperTreeGridNonOrientedCursor.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3  Program: Visualization Toolkit
4  Module: vtkHyperTreeGridNonOrientedCursor.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 Nonice for more information.
13 
14 =========================================================================*/
41 #ifndef vtkHyperTreeGridNonOrientedCursor_h
42 #define vtkHyperTreeGridNonOrientedCursor_h
43 
44 #include "vtkCommonDataModelModule.h" // For export macro
45 #include "vtkObject.h"
46 
47 #include <vector> // For std::vector
48 
49 class vtkHyperTree;
50 class vtkHyperTreeGrid;
52 
53 class VTKCOMMONDATAMODEL_EXPORT vtkHyperTreeGridNonOrientedCursor : public vtkObject
54 {
55 public:
57  void PrintSelf(ostream& os, vtkIndent indent) override;
59 
65 
69  void Initialize(vtkHyperTreeGrid* grid, vtkIdType treeIndex, bool create = false);
70 
74  void Initialize(
75  vtkHyperTreeGrid* grid, vtkHyperTree* tree, unsigned int level, vtkHyperTreeGridEntry& entry);
76 
80  void Initialize(vtkHyperTreeGrid* grid, vtkHyperTree* tree, unsigned int level, vtkIdType index);
81 
83 
86  vtkHyperTreeGrid* GetGrid();
88 
90 
93  bool HasTree() const;
95 
97 
100  vtkHyperTree* GetTree() const;
102 
106  vtkIdType GetVertexId();
107 
112  vtkIdType GetGlobalNodeIndex();
113 
118  unsigned char GetDimension();
119 
124  unsigned char GetNumberOfChildren();
125 
129  void SetGlobalIndexStart(vtkIdType index);
130 
134  void SetGlobalIndexFromLocal(vtkIdType index);
135 
140  void SetMask(bool state);
141 
145  bool IsMasked();
146 
150  bool IsLeaf();
151 
155  void SubdivideLeaf();
156 
160  bool IsRoot();
161 
165  unsigned int GetLevel();
166 
174  void ToChild(unsigned char ichild);
175 
181  void ToRoot();
182 
188  void ToParent();
189 
190 protected:
195 
200 
205 
210 
214  unsigned int Level;
215 
220 
224  std::vector<vtkHyperTreeGridEntry> Entries;
225 
226 private:
228  void operator=(const vtkHyperTreeGridNonOrientedCursor&) = delete;
229 };
230 #endif
abstract base class for most VTK objects
Definition: vtkObject.h:62
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
vtkHyperTreeGrid * Grid
JB Reference sur l'hyper tree grid parcouru actuellement.
A dataset containing a grid of vtkHyperTree instances arranged as a rectilinear grid.
int vtkIdType
Definition: vtkType.h:332
Objects for traversal a HyperTreeGrid.
a simple class to control print indentation
Definition: vtkIndent.h:39
Entries are cache data for cursors.
A data object structured as a tree.
Definition: vtkHyperTree.h:179
int LastValidEntry
JB Le dernier noeud valid enregistre.
bool HasTree(const T &e)
static vtkObject * New()
Create an object with Debug turned off, modified time initialized to zero, and reference counting on...
std::vector< vtkHyperTreeGridEntry > Entries
JB Hyper tree grid to which the cursor is attached.