Point Cloud Library (PCL)
1.8.1dev

Abstract octree iterator class More...
#include <pcl/octree/octree_iterator.h>
Public Types  
typedef OctreeT::LeafNode  LeafNode 
typedef OctreeT::BranchNode  BranchNode 
typedef OctreeT::LeafContainer  LeafContainer 
typedef OctreeT::BranchContainer  BranchContainer 
Public Member Functions  
OctreeIteratorBase (unsigned int max_depth_arg=0)  
Empty constructor. More...  
OctreeIteratorBase (OctreeT *octree_arg, unsigned int max_depth_arg=0)  
Constructor. More...  
OctreeIteratorBase (const OctreeIteratorBase &src, unsigned int max_depth_arg=0)  
Copy constructor. More...  
OctreeIteratorBase &  operator= (const OctreeIteratorBase &src) 
Copy operator. 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...  
unsigned int  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  
OctreeT *  octree_ 
Reference to octree class. More...  
IteratorState *  current_state_ 
Pointer to current iterator state. More...  
unsigned int  max_octree_depth_ 
Maximum octree depth. More...  
Abstract octree iterator class
Definition at line 75 of file octree_iterator.h.
typedef OctreeT::BranchContainer pcl::octree::OctreeIteratorBase< OctreeT >::BranchContainer 
Definition at line 84 of file octree_iterator.h.
typedef OctreeT::BranchNode pcl::octree::OctreeIteratorBase< OctreeT >::BranchNode 
Definition at line 81 of file octree_iterator.h.
typedef OctreeT::LeafContainer pcl::octree::OctreeIteratorBase< OctreeT >::LeafContainer 
Definition at line 83 of file octree_iterator.h.
typedef OctreeT::LeafNode pcl::octree::OctreeIteratorBase< OctreeT >::LeafNode 
Definition at line 80 of file octree_iterator.h.

inlineexplicit 
Empty constructor.
Definition at line 89 of file octree_iterator.h.
References pcl::octree::OctreeIteratorBase< OctreeT >::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 
Definition at line 100 of file octree_iterator.h.
References pcl::octree::OctreeIteratorBase< OctreeT >::reset().

inline 
Copy constructor.
[in]  src  the iterator to copy into this 
[in]  max_depth_arg  Depth limitation during traversal 
Definition at line 110 of file octree_iterator.h.

inlinevirtual 
Empty deconstructor.
Definition at line 129 of file octree_iterator.h.

inline 
Method for retrieving the container from an octree branch node.
Definition at line 298 of file octree_iterator.h.
References pcl::octree::OctreeIteratorBase< OctreeT >::current_state_, pcl::octree::OctreeIteratorBase< OctreeT >::isBranchNode(), pcl::octree::IteratorState::node_, and pcl::octree::OctreeIteratorBase< OctreeT >::octree_.

inline 
Method for retrieving the container from an octree branch node.
Definition at line 313 of file octree_iterator.h.
References pcl::octree::OctreeIteratorBase< OctreeT >::current_state_, pcl::octree::OctreeIteratorBase< OctreeT >::isBranchNode(), pcl::octree::IteratorState::node_, and pcl::octree::OctreeIteratorBase< OctreeT >::octree_.

inline 
Get the current depth level of octree.
Definition at line 179 of file octree_iterator.h.
References pcl::octree::OctreeIteratorBase< OctreeT >::current_state_, pcl::octree::IteratorState::depth_, and pcl::octree::OctreeIteratorBase< OctreeT >::octree_.
Referenced by pcl::octree::OctreePointCloud< PointT, LeafT, BranchT, OctreeT >::getVoxelBounds().

inline 
Get octree key for the current iterator octree node.
Definition at line 167 of file octree_iterator.h.
References pcl::octree::OctreeIteratorBase< OctreeT >::current_state_, pcl::octree::IteratorState::key_, and pcl::octree::OctreeIteratorBase< OctreeT >::octree_.
Referenced by pcl::octree::OctreePointCloudAdjacency< PointT, LeafContainerT, BranchContainerT >::addPointsFromInputCloud(), pcl::octree::OctreeIteratorBase< OctreeT >::getNodeID(), and pcl::octree::OctreePointCloud< PointT, LeafT, BranchT, OctreeT >::getVoxelBounds().

inline 
Get the current octree node.
Definition at line 191 of file octree_iterator.h.
References pcl::octree::OctreeIteratorBase< OctreeT >::current_state_, pcl::octree::IteratorState::node_, and pcl::octree::OctreeIteratorBase< OctreeT >::octree_.

inline 
Method for retrieving a single leaf container from the octree leaf node.
Definition at line 268 of file octree_iterator.h.
References pcl::octree::OctreeIteratorBase< OctreeT >::current_state_, pcl::octree::OctreeIteratorBase< OctreeT >::isLeafNode(), pcl::octree::IteratorState::node_, and pcl::octree::OctreeIteratorBase< OctreeT >::octree_.
Referenced by pcl::octree::OctreePointCloudAdjacency< PointT, LeafContainerT, BranchContainerT >::addPointsFromInputCloud().

inline 
Method for retrieving a single leaf container from the octree leaf node.
Definition at line 283 of file octree_iterator.h.
References pcl::octree::OctreeIteratorBase< OctreeT >::current_state_, pcl::octree::OctreeIteratorBase< OctreeT >::isLeafNode(), pcl::octree::IteratorState::node_, and pcl::octree::OctreeIteratorBase< OctreeT >::octree_.

inline 
Get bit pattern of children configuration of current node.
Definition at line 243 of file octree_iterator.h.
References pcl::octree::OctreeIteratorBase< OctreeT >::current_state_, pcl::octree::OctreeIteratorBase< OctreeT >::isBranchNode(), pcl::octree::IteratorState::node_, and pcl::octree::OctreeIteratorBase< OctreeT >::octree_.

inlinevirtual 
get a integer identifier for current node (note: identifier depends on tree depth).
Definition at line 328 of file octree_iterator.h.
References pcl::octree::OctreeIteratorBase< OctreeT >::current_state_, pcl::octree::OctreeIteratorBase< OctreeT >::getCurrentOctreeKey(), pcl::octree::OctreeIteratorBase< OctreeT >::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 204 of file octree_iterator.h.
References pcl::octree::BRANCH_NODE, pcl::octree::OctreeIteratorBase< OctreeT >::current_state_, pcl::octree::OctreeNode::getNodeType(), pcl::octree::IteratorState::node_, and pcl::octree::OctreeIteratorBase< OctreeT >::octree_.
Referenced by pcl::octree::OctreeIteratorBase< OctreeT >::getBranchContainer(), and pcl::octree::OctreeIteratorBase< OctreeT >::getNodeConfiguration().

inline 
check if current node is a branch node
Definition at line 216 of file octree_iterator.h.
References pcl::octree::OctreeIteratorBase< OctreeT >::current_state_, pcl::octree::OctreeNode::getNodeType(), pcl::octree::LEAF_NODE, pcl::octree::IteratorState::node_, and pcl::octree::OctreeIteratorBase< OctreeT >::octree_.
Referenced by pcl::octree::OctreeIteratorBase< OctreeT >::getLeafContainer().

inline 
Inequal comparison operator.
[in]  other  OctreeIteratorBase to compare with 
Definition at line 146 of file octree_iterator.h.
References pcl::octree::OctreeIteratorBase< OctreeT >::current_state_, pcl::octree::OctreeIteratorBase< OctreeT >::max_octree_depth_, and pcl::octree::OctreeIteratorBase< OctreeT >::octree_.

inline 
*operator.
Definition at line 228 of file octree_iterator.h.
References pcl::octree::OctreeIteratorBase< OctreeT >::current_state_, pcl::octree::IteratorState::node_, and pcl::octree::OctreeIteratorBase< OctreeT >::octree_.

inline 
Copy operator.
[in]  src  the iterator to copy into this 
Definition at line 119 of file octree_iterator.h.
References pcl::octree::OctreeIteratorBase< OctreeT >::current_state_, pcl::octree::OctreeIteratorBase< OctreeT >::max_octree_depth_, and pcl::octree::OctreeIteratorBase< OctreeT >::octree_.
Referenced by pcl::octree::OctreeDepthFirstIterator< OctreeT >::operator=(), and pcl::octree::OctreeBreadthFirstIterator< OctreeT >::operator=().

inline 
Equal comparison operator.
[in]  other  OctreeIteratorBase to compare with 
Definition at line 136 of file octree_iterator.h.
References pcl::octree::OctreeIteratorBase< OctreeT >::current_state_, pcl::octree::OctreeIteratorBase< OctreeT >::max_octree_depth_, and pcl::octree::OctreeIteratorBase< OctreeT >::octree_.

inline 
Reset iterator.
Definition at line 154 of file octree_iterator.h.
References pcl::octree::OctreeIteratorBase< OctreeT >::current_state_, pcl::octree::OctreeIteratorBase< OctreeT >::max_octree_depth_, and pcl::octree::OctreeIteratorBase< OctreeT >::octree_.
Referenced by pcl::octree::OctreeBreadthFirstIterator< OctreeT >::OctreeBreadthFirstIterator(), pcl::octree::OctreeIteratorBase< OctreeT >::OctreeIteratorBase(), pcl::octree::OctreeDepthFirstIterator< OctreeT >::reset(), and pcl::octree::OctreeBreadthFirstIterator< OctreeT >::reset().

protected 
Pointer to current iterator state.
Definition at line 353 of file octree_iterator.h.
Referenced by pcl::octree::OctreeIteratorBase< OctreeT >::getBranchContainer(), pcl::octree::OctreeIteratorBase< OctreeT >::getCurrentOctreeDepth(), pcl::octree::OctreeIteratorBase< OctreeT >::getCurrentOctreeKey(), pcl::octree::OctreeIteratorBase< OctreeT >::getCurrentOctreeNode(), pcl::octree::OctreeIteratorBase< OctreeT >::getLeafContainer(), pcl::octree::OctreeIteratorBase< OctreeT >::getNodeConfiguration(), pcl::octree::OctreeIteratorBase< OctreeT >::getNodeID(), pcl::octree::OctreeIteratorBase< OctreeT >::isBranchNode(), pcl::octree::OctreeIteratorBase< OctreeT >::isLeafNode(), pcl::octree::OctreeIteratorBase< OctreeT >::operator!=(), pcl::octree::OctreeIteratorBase< OctreeT >::operator*(), pcl::octree::OctreeLeafNodeIterator< OctreeT >::operator*(), pcl::octree::OctreeLeafNodeIterator< OctreeT >::operator++(), pcl::octree::OctreeIteratorBase< OctreeT >::operator=(), pcl::octree::OctreeDepthFirstIterator< OctreeT >::operator=(), pcl::octree::OctreeBreadthFirstIterator< OctreeT >::operator=(), pcl::octree::OctreeIteratorBase< OctreeT >::operator==(), and pcl::octree::OctreeIteratorBase< OctreeT >::reset().

protected 
Maximum octree depth.
Definition at line 356 of file octree_iterator.h.
Referenced by pcl::octree::OctreeIteratorBase< OctreeT >::operator!=(), pcl::octree::OctreeIteratorBase< OctreeT >::operator=(), pcl::octree::OctreeIteratorBase< OctreeT >::operator==(), and pcl::octree::OctreeIteratorBase< OctreeT >::reset().

protected 
Reference to octree class.
Definition at line 350 of file octree_iterator.h.
Referenced by pcl::octree::OctreeIteratorBase< OctreeT >::getBranchContainer(), pcl::octree::OctreeIteratorBase< OctreeT >::getCurrentOctreeDepth(), pcl::octree::OctreeIteratorBase< OctreeT >::getCurrentOctreeKey(), pcl::octree::OctreeIteratorBase< OctreeT >::getCurrentOctreeNode(), pcl::octree::OctreeIteratorBase< OctreeT >::getLeafContainer(), pcl::octree::OctreeIteratorBase< OctreeT >::getNodeConfiguration(), pcl::octree::OctreeIteratorBase< OctreeT >::getNodeID(), pcl::octree::OctreeIteratorBase< OctreeT >::isBranchNode(), pcl::octree::OctreeIteratorBase< OctreeT >::isLeafNode(), pcl::octree::OctreeIteratorBase< OctreeT >::operator!=(), pcl::octree::OctreeIteratorBase< OctreeT >::operator*(), pcl::octree::OctreeIteratorBase< OctreeT >::operator=(), pcl::octree::OctreeIteratorBase< OctreeT >::operator==(), and pcl::octree::OctreeIteratorBase< OctreeT >::reset().