octomap
1.9.7
|
Base class for OcTree iterators. More...
Data Structures | |
struct | StackElement |
Element on the internal recursion stack of the iterator. More... | |
Public Member Functions | |
point3d | getCoordinate () const |
return the center coordinate of the current node More... | |
unsigned | getDepth () const |
return depth of the current node More... | |
OcTreeKey | getIndexKey () const |
const OcTreeKey & | getKey () const |
double | getSize () const |
double | getX () const |
double | getY () const |
double | getZ () const |
iterator_base () | |
Default ctor, only used for the end-iterator. More... | |
iterator_base (const iterator_base &other) | |
Copy constructor of the iterator. More... | |
iterator_base (OcTreeBaseImpl< NodeType, INTERFACE > const *ptree, uint8_t depth=0) | |
Constructor of the iterator. More... | |
bool | operator!= (const iterator_base &other) const |
Comparison between iterators. First compares the tree, then stack size and top element of stack. More... | |
NodeType & | operator* () |
Return the current node in the octree which the iterator is referring to. More... | |
const NodeType & | operator* () const |
Return the current node in the octree which the iterator is referring to. More... | |
NodeType * | operator-> () |
Ptr operator will return the current node in the octree which the iterator is referring to. More... | |
NodeType const * | operator-> () const |
Ptr operator will return the current node in the octree which the iterator is referring to. More... | |
iterator_base & | operator= (const iterator_base &other) |
bool | operator== (const iterator_base &other) const |
Comparison between iterators. First compares the tree, then stack size and top element of stack. More... | |
Protected Member Functions | |
void | singleIncrement () |
One step of depth-first tree traversal. How this is used depends on the actual iterator. More... | |
Protected Attributes | |
uint8_t | maxDepth |
Maximum depth for depth-limited queries. More... | |
std::stack< StackElement, std::vector< StackElement > > | stack |
Internal recursion stack. Apparently a stack of vector works fastest here. More... | |
OcTreeBaseImpl< NodeType, INTERFACE > const * | tree |
Octree this iterator is working on. More... | |
Base class for OcTree iterators.
So far, all iterator's are const with respect to the tree. This file is included within OcTreeBaseImpl.h, you should probably not include this directly.
|
inline |
Default ctor, only used for the end-iterator.
|
inline |
Constructor of the iterator.
Initializes the iterator with the default constructor (= end() iterator) if tree is empty or NULL.
ptree | OcTreeBaseImpl on which the iterator is used on |
depth | Maximum depth to traverse the tree. 0 (default): unlimited |
References iterator_base::StackElement::depth, iterator_base::StackElement::key, maxDepth, iterator_base::StackElement::node, stack, and tree.
|
inline |
Copy constructor of the iterator.
|
inline |
|
inline |
return depth of the current node
References stack.
|
inline |
References octomap::computeIndexKey(), stack, and tree.
|
inline |
References stack.
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
Return the current node in the octree which the iterator is referring to.
References stack.
|
inline |
Return the current node in the octree which the iterator is referring to.
References stack.
|
inline |
Ptr operator will return the current node in the octree which the iterator is referring to.
References stack.
|
inline |
Ptr operator will return the current node in the octree which the iterator is referring to.
References stack.
|
inline |
|
inline |
|
inlineprotected |
One step of depth-first tree traversal. How this is used depends on the actual iterator.
References octomap::computeChildKey(), iterator_base::StackElement::depth, iterator_base::StackElement::key, maxDepth, iterator_base::StackElement::node, stack, and tree.
Referenced by tree_iterator::operator++(), and leaf_iterator::operator++().
|
protected |
Maximum depth for depth-limited queries.
Referenced by iterator_base(), leaf_bbx_iterator::leaf_bbx_iterator(), operator=(), and singleIncrement().
|
protected |
Internal recursion stack. Apparently a stack of vector works fastest here.
Referenced by getCoordinate(), getDepth(), getIndexKey(), getKey(), getSize(), getX(), getY(), getZ(), iterator_base(), leaf_bbx_iterator::leaf_bbx_iterator(), leaf_iterator::leaf_iterator(), operator!=(), operator*(), tree_iterator::operator++(), leaf_iterator::operator++(), leaf_bbx_iterator::operator++(), operator->(), operator=(), operator==(), singleIncrement(), and leaf_bbx_iterator::singleIncrement().
|
protected |
Octree this iterator is working on.
Referenced by getCoordinate(), getIndexKey(), getSize(), getX(), getY(), getZ(), tree_iterator::isLeaf(), iterator_base(), leaf_bbx_iterator::leaf_bbx_iterator(), operator!=(), tree_iterator::operator++(), leaf_iterator::operator++(), leaf_bbx_iterator::operator++(), operator=(), operator==(), singleIncrement(), and leaf_bbx_iterator::singleIncrement().