Point Cloud Library (PCL)
1.7.0
|
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. | |
OctreeIteratorBase (OctreeT *octree_arg, unsigned int max_depth_arg=0) | |
Constructor. | |
OctreeIteratorBase (const OctreeIteratorBase &src, unsigned int max_depth_arg=0) | |
Copy constructor. | |
OctreeIteratorBase & | operator= (const OctreeIteratorBase &src) |
Copy operator. | |
virtual | ~OctreeIteratorBase () |
Empty deconstructor. | |
bool | operator== (const OctreeIteratorBase &other) const |
Equal comparison operator. | |
bool | operator!= (const OctreeIteratorBase &other) const |
Inequal comparison operator. | |
void | reset () |
Reset iterator. | |
const OctreeKey & | getCurrentOctreeKey () const |
Get octree key for the current iterator octree node. | |
unsigned int | 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 | |
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. | |
unsigned int | max_octree_depth_ |
Maximum octree depth. |
Abstract octree iterator class
Definition at line 78 of file octree_iterator.h.
typedef OctreeT::BranchContainer pcl::octree::OctreeIteratorBase< OctreeT >::BranchContainer |
Definition at line 87 of file octree_iterator.h.
typedef OctreeT::BranchNode pcl::octree::OctreeIteratorBase< OctreeT >::BranchNode |
Reimplemented in pcl::octree::OctreeDepthFirstIterator< OctreeT >.
Definition at line 84 of file octree_iterator.h.
typedef OctreeT::LeafContainer pcl::octree::OctreeIteratorBase< OctreeT >::LeafContainer |
Definition at line 86 of file octree_iterator.h.
typedef OctreeT::LeafNode pcl::octree::OctreeIteratorBase< OctreeT >::LeafNode |
Reimplemented in pcl::octree::OctreeDepthFirstIterator< OctreeT >.
Definition at line 83 of file octree_iterator.h.
pcl::octree::OctreeIteratorBase< OctreeT >::OctreeIteratorBase | ( | unsigned int | max_depth_arg = 0 | ) | [inline, explicit] |
Empty constructor.
Definition at line 92 of file octree_iterator.h.
References pcl::octree::OctreeIteratorBase< OctreeT >::reset().
pcl::octree::OctreeIteratorBase< OctreeT >::OctreeIteratorBase | ( | OctreeT * | octree_arg, |
unsigned int | max_depth_arg = 0 |
||
) | [inline, explicit] |
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 103 of file octree_iterator.h.
References pcl::octree::OctreeIteratorBase< OctreeT >::reset().
pcl::octree::OctreeIteratorBase< OctreeT >::OctreeIteratorBase | ( | const OctreeIteratorBase< OctreeT > & | src, |
unsigned int | max_depth_arg = 0 |
||
) | [inline] |
Copy constructor.
[in] | src | the iterator to copy into this |
[in] | max_depth_arg | Depth limitation during traversal |
Definition at line 113 of file octree_iterator.h.
References pcl::octree::OctreeIteratorBase< OctreeT >::reset().
virtual pcl::octree::OctreeIteratorBase< OctreeT >::~OctreeIteratorBase | ( | ) | [inline, virtual] |
Empty deconstructor.
Definition at line 133 of file octree_iterator.h.
const BranchContainer& pcl::octree::OctreeIteratorBase< OctreeT >::getBranchContainer | ( | ) | const [inline] |
Method for retrieving the container from an octree branch node.
Definition at line 302 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_.
BranchContainer& pcl::octree::OctreeIteratorBase< OctreeT >::getBranchContainer | ( | ) | [inline] |
Method for retrieving the container from an octree branch node.
Definition at line 317 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_.
unsigned int pcl::octree::OctreeIteratorBase< OctreeT >::getCurrentOctreeDepth | ( | ) | const [inline] |
Get the current depth level of octree.
Definition at line 183 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().
const OctreeKey& pcl::octree::OctreeIteratorBase< OctreeT >::getCurrentOctreeKey | ( | ) | const [inline] |
Get octree key for the current iterator octree node.
Definition at line 171 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().
OctreeNode* pcl::octree::OctreeIteratorBase< OctreeT >::getCurrentOctreeNode | ( | ) | const [inline] |
Get the current octree node.
Definition at line 195 of file octree_iterator.h.
References pcl::octree::OctreeIteratorBase< OctreeT >::current_state_, pcl::octree::IteratorState::node_, and pcl::octree::OctreeIteratorBase< OctreeT >::octree_.
const LeafContainer& pcl::octree::OctreeIteratorBase< OctreeT >::getLeafContainer | ( | ) | const [inline] |
Method for retrieving a single leaf container from the octree leaf node.
Definition at line 272 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().
LeafContainer& pcl::octree::OctreeIteratorBase< OctreeT >::getLeafContainer | ( | ) | [inline] |
Method for retrieving a single leaf container from the octree leaf node.
Definition at line 287 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_.
char pcl::octree::OctreeIteratorBase< OctreeT >::getNodeConfiguration | ( | ) | const [inline] |
Get bit pattern of children configuration of current node.
Definition at line 247 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_.
virtual unsigned long pcl::octree::OctreeIteratorBase< OctreeT >::getNodeID | ( | ) | const [inline, virtual] |
get a integer identifier for current node (note: identifier depends on tree depth).
Definition at line 332 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.
bool pcl::octree::OctreeIteratorBase< OctreeT >::isBranchNode | ( | ) | const [inline] |
check if current node is a branch node
Definition at line 208 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().
bool pcl::octree::OctreeIteratorBase< OctreeT >::isLeafNode | ( | ) | const [inline] |
check if current node is a branch node
Definition at line 220 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().
bool pcl::octree::OctreeIteratorBase< OctreeT >::operator!= | ( | const OctreeIteratorBase< OctreeT > & | other | ) | const [inline] |
Inequal comparison operator.
[in] | OctreeIteratorBase | to compare with |
Definition at line 150 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_.
OctreeNode* pcl::octree::OctreeIteratorBase< OctreeT >::operator* | ( | ) | const [inline] |
*operator.
Reimplemented in pcl::octree::OctreeLeafNodeIterator< OctreeT >.
Definition at line 232 of file octree_iterator.h.
References pcl::octree::OctreeIteratorBase< OctreeT >::current_state_, pcl::octree::IteratorState::node_, and pcl::octree::OctreeIteratorBase< OctreeT >::octree_.
OctreeIteratorBase& pcl::octree::OctreeIteratorBase< OctreeT >::operator= | ( | const OctreeIteratorBase< OctreeT > & | src | ) | [inline] |
Copy operator.
[in] | src | the iterator to copy into this |
Definition at line 123 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_.
bool pcl::octree::OctreeIteratorBase< OctreeT >::operator== | ( | const OctreeIteratorBase< OctreeT > & | other | ) | const [inline] |
Equal comparison operator.
[in] | OctreeIteratorBase | to compare with |
Definition at line 140 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_.
void pcl::octree::OctreeIteratorBase< OctreeT >::reset | ( | ) | [inline] |
Reset iterator.
Reimplemented in pcl::octree::OctreeLeafNodeIterator< OctreeT >, pcl::octree::OctreeBreadthFirstIterator< OctreeT >, and pcl::octree::OctreeDepthFirstIterator< OctreeT >.
Definition at line 158 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::OctreeIteratorBase< OctreeT >::OctreeIteratorBase(), pcl::octree::OctreeDepthFirstIterator< OctreeT >::reset(), and pcl::octree::OctreeBreadthFirstIterator< OctreeT >::reset().
IteratorState* pcl::octree::OctreeIteratorBase< OctreeT >::current_state_ [protected] |
Pointer to current iterator state.
Definition at line 355 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().
unsigned int pcl::octree::OctreeIteratorBase< OctreeT >::max_octree_depth_ [protected] |
Maximum octree depth.
Definition at line 358 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().
OctreeT* pcl::octree::OctreeIteratorBase< OctreeT >::octree_ [protected] |
Reference to octree class.
Definition at line 352 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().