55 #ifndef OPENMESH_VDPROGMESH_VHIERARCHYNODEINDEX_HH
56 #define OPENMESH_VDPROGMESH_VHIERARCHYNODEINDEX_HH
96 { value_ = _other.value_; }
99 unsigned int _node_id,
100 unsigned short _tree_id_bits)
102 assert(_tree_id < ((
unsigned int) 0x00000001 << _tree_id_bits));
103 assert(_node_id < ((
unsigned int) 0x00000001 << (32 - _tree_id_bits)));
104 value_ = (_tree_id << (32 - _tree_id_bits)) | _node_id;
107 bool is_valid(
unsigned short _tree_id_bits)
const
108 {
return node_id(_tree_id_bits) != 0 ?
true :
false; }
110 unsigned int tree_id(
unsigned short _tree_id_bits)
const
111 {
return value_ >> (32 - _tree_id_bits); }
113 unsigned int node_id(
unsigned short _tree_id_bits)
const
114 {
return value_ & ((
unsigned int) 0xFFFFFFFF >> _tree_id_bits); }
117 {
return (value_ < other.value_) ?
true :
false; }
119 unsigned int value()
const
132 #endif // OPENMESH_VDPROGMESH_VHIERARCHYNODEINDEX_HH defined
Index of vertex hierarchy node.
Definition: VHierarchyNodeIndex.hh:78
std::vector< VHierarchyNodeIndex > VHierarchyNodeIndexContainer
Container for vertex hierarchy node indices.
Definition: VHierarchyNodeIndex.hh:125
Contains all the mesh ingredients like the polygonal mesh, the triangle mesh, different mesh kernels ...
Definition: MeshItems.hh:64