|
Point Cloud Library (PCL) 1.15.0
|
Abstract octree iterator class More...
#include <pcl/octree/octree_iterator.h>
Public Types | |
| using | iterator_category = std::forward_iterator_tag |
| using | value_type = const OctreeNode |
| using | difference_type = void |
| using | pointer = const OctreeNode* |
| using | reference = const OctreeNode& |
| using | LeafNode = typename OctreeT::LeafNode |
| using | BranchNode = typename OctreeT::BranchNode |
| using | LeafContainer = typename OctreeT::LeafContainer |
| using | BranchContainer = typename OctreeT::BranchContainer |
Public Member Functions | |
| OctreeIteratorBase () | |
| Empty constructor. | |
| OctreeIteratorBase (uindex_t max_depth_arg) | |
| Constructor. | |
| OctreeIteratorBase (OctreeT *octree_arg) | |
| Constructor. | |
| OctreeIteratorBase (OctreeT *octree_arg, uindex_t max_depth_arg) | |
| Constructor. | |
| OctreeIteratorBase (OctreeT *octree_arg, uindex_t max_depth_arg, IteratorState *current_state) | |
| Constructor. | |
| virtual | ~OctreeIteratorBase ()=default |
| Empty deconstructor. | |
| bool | operator== (const OctreeIteratorBase &other) const |
| Equal comparison operator. | |
| bool | operator!= (const OctreeIteratorBase &other) const |
| Inequal comparison operator. | |
| void | reset () |
| Reset iterator. | |
| virtual OctreeIteratorBase & | operator++ ()=0 |
| Preincrement operator. | |
| const OctreeKey & | getCurrentOctreeKey () const |
| Get octree key for the current iterator octree node. | |
| uindex_t | getCurrentOctreeDepth () const |
| Get the current depth level of octree. | |
| OctreeNode * | getCurrentOctreeNode () const |
| Get the current octree node. | |
| bool | isBranchNode () const |
| check if current node is a branch node | |
| bool | isLeafNode () const |
| check if current node is a branch node | |
| virtual OctreeNode * | operator* () const |
| *operator. | |
| char | getNodeConfiguration () const |
| Get bit pattern of children configuration of current node. | |
| const LeafContainer & | getLeafContainer () const |
| Method for retrieving a single leaf container from the octree leaf node. | |
| LeafContainer & | getLeafContainer () |
| Method for retrieving a single leaf container from the octree leaf node. | |
| const BranchContainer & | getBranchContainer () const |
| Method for retrieving the container from an octree branch node. | |
| BranchContainer & | getBranchContainer () |
| Method for retrieving the container from an octree branch node. | |
| virtual unsigned long | getNodeID () const |
| get a integer identifier for current node (note: identifier depends on tree depth). | |
Protected Attributes | |
| OctreeT * | octree_ |
| Reference to octree class. | |
| IteratorState * | current_state_ |
| Pointer to current iterator state. | |
| uindex_t | max_octree_depth_ |
| Maximum octree depth. | |
Abstract octree iterator class
Definition at line 75 of file octree_iterator.h.
| using pcl::octree::OctreeIteratorBase< OctreeT >::BranchContainer = typename OctreeT::BranchContainer |
Definition at line 87 of file octree_iterator.h.
| using pcl::octree::OctreeIteratorBase< OctreeT >::BranchNode = typename OctreeT::BranchNode |
Definition at line 84 of file octree_iterator.h.
| using pcl::octree::OctreeIteratorBase< OctreeT >::difference_type = void |
Definition at line 79 of file octree_iterator.h.
| using pcl::octree::OctreeIteratorBase< OctreeT >::iterator_category = std::forward_iterator_tag |
Definition at line 77 of file octree_iterator.h.
| using pcl::octree::OctreeIteratorBase< OctreeT >::LeafContainer = typename OctreeT::LeafContainer |
Definition at line 86 of file octree_iterator.h.
| using pcl::octree::OctreeIteratorBase< OctreeT >::LeafNode = typename OctreeT::LeafNode |
Definition at line 83 of file octree_iterator.h.
| using pcl::octree::OctreeIteratorBase< OctreeT >::pointer = const OctreeNode* |
Definition at line 80 of file octree_iterator.h.
| using pcl::octree::OctreeIteratorBase< OctreeT >::reference = const OctreeNode& |
Definition at line 81 of file octree_iterator.h.
| using pcl::octree::OctreeIteratorBase< OctreeT >::value_type = const OctreeNode |
Definition at line 78 of file octree_iterator.h.
|
inline |
Empty constructor.
Definition at line 91 of file octree_iterator.h.
References OctreeIteratorBase().
Referenced by pcl::octree::OctreeBreadthFirstIterator< OctreeT >::OctreeBreadthFirstIterator(), pcl::octree::OctreeBreadthFirstIterator< OctreeT >::OctreeBreadthFirstIterator(), pcl::octree::OctreeBreadthFirstIterator< const OctreeT >::OctreeBreadthFirstIterator(), pcl::octree::OctreeBreadthFirstIterator< const OctreeT >::OctreeBreadthFirstIterator(), pcl::octree::OctreeDepthFirstIterator< OctreeT >::OctreeDepthFirstIterator(), pcl::octree::OctreeDepthFirstIterator< OctreeT >::OctreeDepthFirstIterator(), pcl::octree::OctreeDepthFirstIterator< const OctreeT >::OctreeDepthFirstIterator(), pcl::octree::OctreeDepthFirstIterator< const OctreeT >::OctreeDepthFirstIterator(), OctreeIteratorBase(), OctreeIteratorBase(), operator!=(), pcl::octree::OctreeBreadthFirstIterator< const OctreeT >::operator=(), pcl::octree::OctreeDepthFirstIterator< const OctreeT >::operator=(), and operator==().
|
inlineexplicit |
Constructor.
| [in] | max_depth_arg | Depth limitation during traversal |
Definition at line 96 of file octree_iterator.h.
References current_state_, max_octree_depth_, octree_, and reset().
|
inline |
Constructor.
| [in] | octree_arg | Octree to be iterated. Initially the iterator is set to its root node. |
Definition at line 106 of file octree_iterator.h.
References OctreeIteratorBase().
|
inlineexplicit |
Constructor.
| [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 113 of file octree_iterator.h.
References current_state_, max_octree_depth_, octree_, and reset().
|
inlineexplicit |
Constructor.
| [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 |
Definition at line 127 of file octree_iterator.h.
References current_state_, max_octree_depth_, and octree_.
|
virtualdefault |
Empty deconstructor.
|
inline |
Method for retrieving the container from an octree branch node.
Definition at line 328 of file octree_iterator.h.
References current_state_, isBranchNode(), and octree_.
|
inline |
Method for retrieving the container from an octree branch node.
Definition at line 313 of file octree_iterator.h.
References current_state_, isBranchNode(), and octree_.
|
inline |
Get the current depth level of octree.
Definition at line 196 of file octree_iterator.h.
References current_state_, and octree_.
Referenced by pcl::octree::OctreePointCloud< PointT, LeafContainerT, BranchContainerT, OctreeBase< LeafContainerT > >::getVoxelBounds(), and pcl::octree::OctreeFixedDepthIterator< OctreeT >::reset().
|
inline |
Get octree key for the current iterator octree node.
Definition at line 184 of file octree_iterator.h.
References current_state_, and octree_.
Referenced by getNodeID(), and pcl::octree::OctreePointCloud< PointT, LeafContainerT, BranchContainerT, OctreeBase< LeafContainerT > >::getVoxelBounds().
|
inline |
Get the current octree node.
Definition at line 208 of file octree_iterator.h.
References current_state_, and octree_.
|
inline |
Method for retrieving a single leaf container from the octree leaf node.
Definition at line 298 of file octree_iterator.h.
References current_state_, isLeafNode(), and octree_.
|
inline |
Method for retrieving a single leaf container from the octree leaf node.
Definition at line 283 of file octree_iterator.h.
References current_state_, isLeafNode(), and octree_.
|
inline |
Get bit pattern of children configuration of current node.
Definition at line 259 of file octree_iterator.h.
References current_state_, isBranchNode(), and octree_.
|
inlinevirtual |
get a integer identifier for current node (note: identifier depends on tree depth).
Definition at line 343 of file octree_iterator.h.
References current_state_, getCurrentOctreeKey(), octree_, pcl::octree::OctreeKey::x, pcl::octree::OctreeKey::y, and pcl::octree::OctreeKey::z.
|
inline |
check if current node is a branch node
Definition at line 220 of file octree_iterator.h.
References pcl::octree::BRANCH_NODE, current_state_, and octree_.
Referenced by getBranchContainer(), getBranchContainer(), and getNodeConfiguration().
|
inline |
check if current node is a branch node
Definition at line 232 of file octree_iterator.h.
References current_state_, pcl::octree::LEAF_NODE, and octree_.
Referenced by getLeafContainer(), and getLeafContainer().
|
inline |
Inequal comparison operator.
| [in] | other | OctreeIteratorBase to compare with |
Definition at line 159 of file octree_iterator.h.
References OctreeIteratorBase(), and operator==().
|
inlinevirtual |
*operator.
Reimplemented in pcl::octree::OctreeLeafNodeBreadthFirstIterator< OctreeT >, pcl::octree::OctreeLeafNodeBreadthFirstIterator< const OctreeT >, pcl::octree::OctreeLeafNodeDepthFirstIterator< OctreeT >, and pcl::octree::OctreeLeafNodeDepthFirstIterator< const OctreeT >.
Definition at line 244 of file octree_iterator.h.
References current_state_, and octree_.
|
pure virtual |
Preincrement operator.
Implemented in pcl::octree::OctreeBreadthFirstIterator< OctreeT >, pcl::octree::OctreeBreadthFirstIterator< const OctreeT >, pcl::octree::OctreeDepthFirstIterator< OctreeT >, pcl::octree::OctreeDepthFirstIterator< const OctreeT >, pcl::octree::OctreeLeafNodeBreadthFirstIterator< OctreeT >, pcl::octree::OctreeLeafNodeBreadthFirstIterator< const OctreeT >, pcl::octree::OctreeLeafNodeDepthFirstIterator< OctreeT >, and pcl::octree::OctreeLeafNodeDepthFirstIterator< const OctreeT >.
|
inline |
Equal comparison operator.
| [in] | other | OctreeIteratorBase to compare with |
Definition at line 140 of file octree_iterator.h.
References current_state_, pcl::octree::IteratorState::key_, max_octree_depth_, octree_, and OctreeIteratorBase().
Referenced by operator!=().
|
inline |
Reset iterator.
Definition at line 166 of file octree_iterator.h.
References current_state_, max_octree_depth_, and octree_.
Referenced by pcl::octree::OctreeBreadthFirstIterator< OctreeT >::OctreeBreadthFirstIterator(), pcl::octree::OctreeBreadthFirstIterator< OctreeT >::OctreeBreadthFirstIterator(), OctreeIteratorBase(), OctreeIteratorBase(), pcl::octree::OctreeBreadthFirstIterator< OctreeT >::reset(), and pcl::octree::OctreeDepthFirstIterator< OctreeT >::reset().
|
protected |
Pointer to current iterator state.
Definition at line 367 of file octree_iterator.h.
Referenced by getBranchContainer(), getBranchContainer(), getCurrentOctreeDepth(), getCurrentOctreeKey(), getCurrentOctreeNode(), getLeafContainer(), getLeafContainer(), getNodeConfiguration(), getNodeID(), isBranchNode(), isLeafNode(), pcl::octree::OctreeBreadthFirstIterator< const OctreeT >::OctreeBreadthFirstIterator(), pcl::octree::OctreeDepthFirstIterator< const OctreeT >::OctreeDepthFirstIterator(), OctreeIteratorBase(), OctreeIteratorBase(), OctreeIteratorBase(), operator*(), pcl::octree::OctreeLeafNodeBreadthFirstIterator< const OctreeT >::operator*(), pcl::octree::OctreeLeafNodeDepthFirstIterator< const OctreeT >::operator*(), pcl::octree::OctreeBreadthFirstIterator< OctreeT >::operator++(), pcl::octree::OctreeDepthFirstIterator< OctreeT >::operator++(), pcl::octree::OctreeLeafNodeBreadthFirstIterator< OctreeT >::operator++(), pcl::octree::OctreeLeafNodeDepthFirstIterator< const OctreeT >::operator++(), pcl::octree::OctreeBreadthFirstIterator< const OctreeT >::operator=(), pcl::octree::OctreeDepthFirstIterator< const OctreeT >::operator=(), operator==(), pcl::octree::OctreeBreadthFirstIterator< OctreeT >::reset(), pcl::octree::OctreeDepthFirstIterator< OctreeT >::reset(), pcl::octree::OctreeFixedDepthIterator< OctreeT >::reset(), reset(), and pcl::octree::OctreeDepthFirstIterator< OctreeT >::skipChildVoxels().
|
protected |
Maximum octree depth.
Definition at line 370 of file octree_iterator.h.
Referenced by OctreeIteratorBase(), OctreeIteratorBase(), OctreeIteratorBase(), pcl::octree::OctreeBreadthFirstIterator< OctreeT >::operator++(), pcl::octree::OctreeDepthFirstIterator< OctreeT >::operator++(), operator==(), pcl::octree::OctreeDepthFirstIterator< OctreeT >::reset(), pcl::octree::OctreeFixedDepthIterator< OctreeT >::reset(), and reset().
|
protected |
Reference to octree class.
Definition at line 364 of file octree_iterator.h.
Referenced by getBranchContainer(), getBranchContainer(), getCurrentOctreeDepth(), getCurrentOctreeKey(), getCurrentOctreeNode(), getLeafContainer(), getLeafContainer(), getNodeConfiguration(), getNodeID(), isBranchNode(), isLeafNode(), OctreeIteratorBase(), OctreeIteratorBase(), OctreeIteratorBase(), operator*(), pcl::octree::OctreeBreadthFirstIterator< OctreeT >::operator++(), pcl::octree::OctreeDepthFirstIterator< OctreeT >::operator++(), operator==(), pcl::octree::OctreeBreadthFirstIterator< OctreeT >::reset(), pcl::octree::OctreeDepthFirstIterator< OctreeT >::reset(), pcl::octree::OctreeFixedDepthIterator< OctreeT >::reset(), and reset().