Public Member Functions | Static Public Member Functions | Public Attributes | List of all members
bitoct Class Reference

#include <Boctree.h>

Public Member Functions

template<class T >
bitunion< T > * getChild (unsigned char index)
 

Static Public Member Functions

template<class T >
static void getChildren (const bitoct &parent, bitunion< T > *&children)
 
template<class T >
static void link (bitoct &parent, bitunion< T > *child)
 

Public Attributes

signed long child_pointer: 48
 
unsigned leaf: 8
 
unsigned valid: 8
 

Detailed Description

This struct represents the nodes of the octree

child_pointer is a relative pointer to the first child of this node, as it is only 48 bit this will cause issues on systems with more than 268 TB of memory. All children of this node must be stored sequentially. If one of the children is a leaf, that child will be a pointer to however a set of points is represented (pointrep *).

valid is a bitmask describing whether the corresponding buckets are filled.

leaf is a bitmask describing whether the correpsonding bucket is a leaf node.

The representation of the bitmask is somewhat inefficient. We use 16 bits for only 3^8 possible states, so in essence we could save 3 bits by compression.

Definition at line 82 of file Boctree.h.

Member Function Documentation

◆ getChild()

template<class T >
bitunion<T>* bitoct::getChild ( unsigned char  index)
inline

Definition at line 111 of file Boctree.h.

◆ getChildren()

template<class T >
static void bitoct::getChildren ( const bitoct parent,
bitunion< T > *&  children 
)
inlinestatic

Returns the children of this node (given as parent).

Definition at line 106 of file Boctree.h.

◆ link()

template<class T >
static void bitoct::link ( bitoct parent,
bitunion< T > *  child 
)
inlinestatic

sets the child pointer of parent so it points to child

Definition at line 98 of file Boctree.h.

Member Data Documentation

◆ child_pointer

signed long bitoct::child_pointer

Definition at line 90 of file Boctree.h.

◆ leaf

unsigned bitoct::leaf

Definition at line 92 of file Boctree.h.

◆ valid

unsigned bitoct::valid

Definition at line 91 of file Boctree.h.


The documentation for this class was generated from the following file:


lvr2
Author(s): Thomas Wiemann , Sebastian Pütz , Alexander Mock , Lars Kiesow , Lukas Kalbertodt , Tristan Igelbrink , Johan M. von Behren , Dominik Feldschnieders , Alexander Löhr
autogenerated on Mon Feb 28 2022 22:46:10