VTK  9.3.0
vtkHyperTreeGridOrientedCursor.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
29#ifndef vtkHyperTreeGridOrientedCursor_h
30#define vtkHyperTreeGridOrientedCursor_h
31
32#include "vtkCommonDataModelModule.h" // For export macro
33#include "vtkHyperTreeGridEntry.h" // Used internally
34#include "vtkObject.h"
35
36VTK_ABI_NAMESPACE_BEGIN
37class vtkHyperTree;
39
40class VTKCOMMONDATAMODEL_EXPORT vtkHyperTreeGridOrientedCursor : public vtkObject
41{
42public:
44 void PrintSelf(ostream& os, vtkIndent indent) override;
46
52
56 void Initialize(vtkHyperTreeGrid* grid, vtkIdType treeIndex, bool create = false);
57
61 void Initialize(vtkHyperTreeGrid* grid, vtkHyperTree* tree, unsigned int level, vtkIdType index);
62
67 vtkHyperTreeGrid* grid, vtkHyperTree* tree, unsigned int level, vtkHyperTreeGridEntry& entry);
68
70
75
77
80 bool HasTree() const;
82
84
89
94
100
105 unsigned char GetDimension();
106
111 unsigned char GetNumberOfChildren();
112
117
122
127 void SetMask(bool state);
128
132 bool IsMasked();
133
137 bool IsLeaf();
138
143
147 bool IsRoot();
148
152 unsigned int GetLevel();
153
161 void ToChild(unsigned char ichild);
162
163protected:
168
173
178
183
187 unsigned int Level;
188
189 // Hyper tree grid to which the cursor is attached
191
192private:
194 void operator=(const vtkHyperTreeGridOrientedCursor&) = delete;
195};
196VTK_ABI_NAMESPACE_END
197#endif
Entries are cache data for cursors.
Objects for traversal a HyperTreeGrid.
vtkHyperTreeGridOrientedCursor()
Constructor.
void SetGlobalIndexStart(vtkIdType index)
JB.
vtkHyperTreeGrid * GetGrid()
Set the hyper tree grid to which the cursor is pointing.
bool IsMasked()
Determine whether blanking mask is empty or not.
unsigned int GetLevel()
Get the level of the tree vertex pointed by the cursor.
bool IsRoot()
Is the cursor at tree root?
vtkHyperTreeGridOrientedCursor * Clone()
Create a copy of ‘this’.
void Initialize(vtkHyperTreeGrid *grid, vtkHyperTree *tree, unsigned int level, vtkIdType index)
JB.
vtkIdType GetVertexId()
Return the index of the current vertex in the tree.
void SetMask(bool state)
Set the blanking mask is empty or not.
vtkIdType GetGlobalNodeIndex()
Return the global index (relative to the grid) of the current vertex in the tree.
void ToChild(unsigned char ichild)
Move the cursor to child ‘child’ of the current vertex.
void SetGlobalIndexFromLocal(vtkIdType index)
JB.
vtkHyperTreeGrid * Grid
JB Reference sur l'hyper tree grid parcouru actuellement.
~vtkHyperTreeGridOrientedCursor() override
Destructor.
void Initialize(vtkHyperTreeGrid *grid, vtkIdType treeIndex, bool create=false)
Initialize cursor at root of given tree index in grid.
bool HasTree() const
Return if a Tree pointing exist.
unsigned char GetNumberOfChildren()
Return the number of children for each node (non-vertex leaf) of the tree.
bool IsLeaf()
Is the cursor pointing to a leaf?
void Initialize(vtkHyperTreeGrid *grid, vtkHyperTree *tree, unsigned int level, vtkHyperTreeGridEntry &entry)
JB.
vtkHyperTree * GetTree() const
Set the hyper tree to which the cursor is pointing.
unsigned char GetDimension()
Return the dimension of the tree.
static vtkHyperTreeGridOrientedCursor * New()
void SubdivideLeaf()
JB Fait chier normalement on devrait passer par GetEntry.
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
A dataset containing a grid of vtkHyperTree instances arranged as a rectilinear grid.
A data object structured as a tree.
a simple class to control print indentation
Definition vtkIndent.h:29
abstract base class for most VTK objects
Definition vtkObject.h:49
int vtkIdType
Definition vtkType.h:315