Octree iterator class More...
#include <pcl/octree/octree_iterator.h>
Public Types |
|
using | BranchNode = typename OctreeIteratorBase< OctreeT >::BranchNode |
using | LeafNode = typename OctreeIteratorBase< OctreeT >::LeafNode |
Public Types inherited from pcl::octree::OctreeIteratorBase< OctreeT > | |
using | LeafNode = typename OctreeT::LeafNode |
using | BranchNode = typename OctreeT::BranchNode |
using | LeafContainer = typename OctreeT::LeafContainer |
using | BranchContainer = typename OctreeT::BranchContainer |
Public Member Functions |
|
OctreeBreadthFirstIterator (uindex_t max_depth_arg=0) | |
Empty constructor. More... |
|
OctreeBreadthFirstIterator (OctreeT *octree_arg, uindex_t max_depth_arg=0) | |
Constructor. More... |
|
OctreeBreadthFirstIterator (OctreeT *octree_arg, uindex_t max_depth_arg, IteratorState *current_state, const std::deque< IteratorState > &fifo=std::deque< IteratorState >()) | |
Constructor. More... |
|
OctreeBreadthFirstIterator (const OctreeBreadthFirstIterator &other) | |
Copy Constructor. More... |
|
OctreeBreadthFirstIterator & | operator= (const OctreeBreadthFirstIterator &src) |
Copy operator. More... |
|
void | reset () |
Reset the iterator to the root node of the octree. More... |
|
OctreeBreadthFirstIterator & | operator++ () |
Preincrement operator. More... |
|
OctreeBreadthFirstIterator | operator++ (int) |
postincrement operator. More... |
|
Public Member Functions inherited from pcl::octree::OctreeIteratorBase< OctreeT > | |
OctreeIteratorBase () | |
Empty constructor. More... |
|
OctreeIteratorBase (uindex_t max_depth_arg) | |
Constructor. More... |
|
OctreeIteratorBase (OctreeT *octree_arg) | |
Constructor. More... |
|
OctreeIteratorBase (OctreeT *octree_arg, uindex_t max_depth_arg) | |
Constructor. More... |
|
OctreeIteratorBase (OctreeT *octree_arg, uindex_t max_depth_arg, IteratorState *current_state) | |
Constructor. More... |
|
virtual | ~OctreeIteratorBase () |
Empty deconstructor. More... |
|
bool | operator== (const OctreeIteratorBase &other) const |
Equal comparison operator. More... |
|
bool | operator!= (const OctreeIteratorBase &other) const |
Inequal comparison operator. More... |
|
void | reset () |
Reset iterator. More... |
|
const OctreeKey & | getCurrentOctreeKey () const |
Get octree key for the current iterator octree node. More... |
|
uindex_t | getCurrentOctreeDepth () const |
Get the current depth level of octree. More... |
|
OctreeNode * | getCurrentOctreeNode () const |
Get the current octree node. More... |
|
bool | isBranchNode () const |
check if current node is a branch node More... |
|
bool | isLeafNode () const |
check if current node is a branch node More... |
|
OctreeNode * | operator* () const |
*operator. More... |
|
char | getNodeConfiguration () const |
Get bit pattern of children configuration of current node. More... |
|
const LeafContainer & | getLeafContainer () const |
Method for retrieving a single leaf container from the octree leaf node. More... |
|
LeafContainer & | getLeafContainer () |
Method for retrieving a single leaf container from the octree leaf node. More... |
|
const BranchContainer & | getBranchContainer () const |
Method for retrieving the container from an octree branch node. More... |
|
BranchContainer & | getBranchContainer () |
Method for retrieving the container from an octree branch node. More... |
|
virtual unsigned long | getNodeID () const |
get a integer identifier for current node (note: identifier depends on tree depth). More... |
|
Protected Attributes |
|
std::deque< IteratorState > | FIFO_ |
FIFO list. More... |
|
Protected Attributes inherited from pcl::octree::OctreeIteratorBase< OctreeT > | |
OctreeT * | octree_ |
Reference to octree class. More... |
|
IteratorState * | current_state_ |
Pointer to current iterator state. More... |
|
uindex_t | max_octree_depth_ |
Maximum octree depth. More... |
|
Detailed Description
template<typename OctreeT>
class pcl::octree::OctreeBreadthFirstIterator< OctreeT >
Octree iterator class
- Note
- This class implements a forward iterator for traversing octrees in a breadth-first manner.
Definition at line 473 of file octree_iterator.h.
Member Typedef Documentation
BranchNode
using pcl::octree::OctreeBreadthFirstIterator< OctreeT >::BranchNode = typename OctreeIteratorBase<OctreeT>::BranchNode |
Definition at line 476 of file octree_iterator.h.
LeafNode
using pcl::octree::OctreeBreadthFirstIterator< OctreeT >::LeafNode = typename OctreeIteratorBase<OctreeT>::LeafNode |
Definition at line 477 of file octree_iterator.h.
Constructor & Destructor Documentation
OctreeBreadthFirstIterator() [1/4]
|
explicit |
Empty constructor.
- Parameters
-
[in] max_depth_arg Depth limitation during traversal
Definition at line 166 of file octree_iterator.hpp.
References pcl::octree::OctreeIteratorBase< OctreeT >::reset(), and pcl::octree::OctreeBreadthFirstIterator< OctreeT >::reset().
OctreeBreadthFirstIterator() [2/4]
|
explicit |
Constructor.
- Parameters
-
[in] octree_arg Octree to be iterated. Initially the iterator is set to its root node. [in] max_depth_arg Depth limitation during traversal
Definition at line 177 of file octree_iterator.hpp.
References pcl::octree::OctreeIteratorBase< OctreeT >::reset(), and pcl::octree::OctreeBreadthFirstIterator< OctreeT >::reset().
OctreeBreadthFirstIterator() [3/4]
|
inlineexplicit |
Constructor.
- Parameters
-
[in] octree_arg Octree to be iterated. Initially the iterator is set to its root node. [in] max_depth_arg Depth limitation during traversal [in] current_state A pointer to the current iterator state
- Warning
- For advanced users only.
Definition at line 499 of file octree_iterator.h.
OctreeBreadthFirstIterator() [4/4]
|
inline |
Copy Constructor.
- Parameters
-
[in] other Another OctreeBreadthFirstIterator to copy from
Definition at line 510 of file octree_iterator.h.
References pcl::octree::OctreeIteratorBase< OctreeT >::current_state_, and pcl::octree::OctreeBreadthFirstIterator< OctreeT >::FIFO_.
Member Function Documentation
operator++() [1/2]
OctreeBreadthFirstIterator< OctreeT > & pcl::octree::OctreeBreadthFirstIterator< OctreeT >::operator++ |
Preincrement operator.
- Note
- step to next octree node
Definition at line 213 of file octree_iterator.hpp.
References pcl::octree::BRANCH_NODE, pcl::octree::IteratorState::depth_, pcl::octree::OctreeNode::getNodeType(), pcl::octree::IteratorState::key_, pcl::octree::IteratorState::node_, pcl::octree::OctreeKey::popBranch(), and pcl::octree::OctreeKey::pushBranch().
Referenced by pcl::octree::OctreeLeafNodeBreadthFirstIterator< OctreeT >::operator++(), and pcl::octree::OctreeFixedDepthIterator< OctreeT >::reset().
operator++() [2/2]
|
inline |
postincrement operator.
- Note
- step to next octree node
Definition at line 552 of file octree_iterator.h.
operator=()
|
inline |
Copy operator.
- Parameters
-
[in] src the iterator to copy into this
Definition at line 520 of file octree_iterator.h.
References pcl::octree::OctreeIteratorBase< OctreeT >::current_state_, and pcl::octree::OctreeBreadthFirstIterator< OctreeT >::FIFO_.
Referenced by pcl::octree::OctreeFixedDepthIterator< OctreeT >::operator=().
reset()
void pcl::octree::OctreeBreadthFirstIterator< OctreeT >::reset |
Reset the iterator to the root node of the octree.
Definition at line 190 of file octree_iterator.hpp.
References pcl::octree::IteratorState::depth_, pcl::octree::IteratorState::key_, pcl::octree::IteratorState::node_, pcl::octree::OctreeIteratorBase< OctreeT >::reset(), pcl::octree::OctreeKey::x, pcl::octree::OctreeKey::y, and pcl::octree::OctreeKey::z.
Referenced by pcl::octree::OctreeBreadthFirstIterator< OctreeT >::OctreeBreadthFirstIterator(), pcl::octree::OctreeFixedDepthIterator< OctreeT >::reset(), and pcl::octree::OctreeLeafNodeBreadthFirstIterator< OctreeT >::reset().
Member Data Documentation
FIFO_
|
protected |
FIFO list.
Definition at line 561 of file octree_iterator.h.
Referenced by pcl::octree::OctreeBreadthFirstIterator< OctreeT >::OctreeBreadthFirstIterator(), and pcl::octree::OctreeBreadthFirstIterator< OctreeT >::operator=().
The documentation for this class was generated from the following files:
- pcl/octree/octree_iterator.h
- pcl/octree/impl/octree_iterator.hpp
© 2009–2012, Willow Garage, Inc.
© 2012–, Open Perception, Inc.
Licensed under the BSD License.
https://pointclouds.org/documentation/classpcl_1_1octree_1_1_octree_breadth_first_iterator.html