Point Cloud Library (PCL)  1.6.0
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
List of all members | Public Member Functions
pcl::octree::OctreeLeafNodeIterator< DataT, OctreeT > Class Template Reference

Octree leaf node iterator class. More...

#include <pcl/octree/octree_iterator.h>

Inheritance diagram for pcl::octree::OctreeLeafNodeIterator< DataT, OctreeT >:
Inheritance graph
[legend]
Collaboration diagram for pcl::octree::OctreeLeafNodeIterator< DataT, OctreeT >:
Collaboration graph
[legend]

Public Member Functions

 OctreeLeafNodeIterator (OctreeT &octree_arg)
 Constructor. More...
 
virtual ~OctreeLeafNodeIterator ()
 Empty deconstructor. More...
 
void reset ()
 Reset the iterator to the root node of the octree. More...
 
OctreeLeafNodeIterator & operator++ ()
 Preincrement operator. More...
 
OctreeLeafNodeIterator operator++ (int)
 postincrement operator. More...
 
OctreeNode * operator* () const
 *operator. More...
 
void skipChildVoxels ()
 Skip all child voxels of current node and return to parent node. 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...
 
char getNodeConfiguration () const
 Get bit pattern of children configuration of current node. More...
 
virtual void getData (DataT &data_arg) const
 Method for retrieving a single DataT element from the octree leaf node. More...
 
virtual void getData (std::vector< DataT > &dataVector_arg) const
 Method for retrieving a vector of DataT elements from the octree laef node. More...
 
virtual std::size_t getSize () const
 Method for retrieving the size of the DataT vector from the octree laef node. More...
 
virtual unsigned long getNodeID () const
 get a integer identifier for current node (note: identifier depends on tree depth). More...
 

Detailed Description

template<typename DataT, typename OctreeT>
class pcl::octree::OctreeLeafNodeIterator< DataT, OctreeT >

Octree leaf node iterator class.

Note
This class implements a forward iterator for traversing the leaf nodes of an octree data structure.
Author
Julius Kammerl (juliu.nosp@m.s@ka.nosp@m.mmerl.nosp@m..de)

Definition at line 403 of file octree_iterator.h.

Constructor & Destructor Documentation

template<typename DataT , typename OctreeT >
pcl::octree::OctreeLeafNodeIterator< DataT, OctreeT >::OctreeLeafNodeIterator ( OctreeT &  octree_arg)
inlineexplicit

Constructor.

Parameters
[in]octree_argOctree to be iterated. Initially the iterator is set to its root node.

Definition at line 413 of file octree_iterator.h.

template<typename DataT , typename OctreeT >
virtual pcl::octree::OctreeLeafNodeIterator< DataT, OctreeT >::~OctreeLeafNodeIterator ( )
inlinevirtual

Empty deconstructor.

Definition at line 421 of file octree_iterator.h.

Member Function Documentation

template<typename DataT, typename OctreeT>
unsigned int pcl::octree::OctreeIteratorBase< DataT, OctreeT >::getCurrentOctreeDepth ( ) const
inlineinherited

Get the current depth level of octree.

Returns
depth level

Definition at line 140 of file octree_iterator.h.

template<typename DataT, typename OctreeT>
const OctreeKey& pcl::octree::OctreeIteratorBase< DataT, OctreeT >::getCurrentOctreeKey ( ) const
inlineinherited

Get octree key for the current iterator octree node.

Returns
octree key of current node

Definition at line 131 of file octree_iterator.h.

template<typename DataT, typename OctreeT>
OctreeNode* pcl::octree::OctreeIteratorBase< DataT, OctreeT >::getCurrentOctreeNode ( ) const
inlineinherited

Get the current octree node.

Returns
pointer to current octree node

Definition at line 149 of file octree_iterator.h.

template<typename DataT, typename OctreeT>
virtual void pcl::octree::OctreeIteratorBase< DataT, OctreeT >::getData ( DataT &  data_arg) const
inlinevirtualinherited

Method for retrieving a single DataT element from the octree leaf node.

Parameters
[in]data_argreference to return pointer of leaf node DataT element.

Definition at line 207 of file octree_iterator.h.

template<typename DataT, typename OctreeT>
virtual void pcl::octree::OctreeIteratorBase< DataT, OctreeT >::getData ( std::vector< DataT > &  dataVector_arg) const
inlinevirtualinherited

Method for retrieving a vector of DataT elements from the octree laef node.

Parameters
[in]dataVector_argreference to DataT vector that is extended with leaf node DataT elements.

Definition at line 219 of file octree_iterator.h.

template<typename DataT, typename OctreeT>
char pcl::octree::OctreeIteratorBase< DataT, OctreeT >::getNodeConfiguration ( ) const
inlineinherited

Get bit pattern of children configuration of current node.

Returns
bit pattern (byte) describing the existence of 8 children of the current node

Definition at line 185 of file octree_iterator.h.

template<typename DataT, typename OctreeT>
virtual unsigned long pcl::octree::OctreeIteratorBase< DataT, OctreeT >::getNodeID ( ) const
inlinevirtualinherited

get a integer identifier for current node (note: identifier depends on tree depth).

Returns
node id.

Definition at line 240 of file octree_iterator.h.

template<typename DataT, typename OctreeT>
virtual std::size_t pcl::octree::OctreeIteratorBase< DataT, OctreeT >::getSize ( ) const
inlinevirtualinherited

Method for retrieving the size of the DataT vector from the octree laef node.

Definition at line 229 of file octree_iterator.h.

template<typename DataT, typename OctreeT>
bool pcl::octree::OctreeIteratorBase< DataT, OctreeT >::isBranchNode ( ) const
inlineinherited

check if current node is a branch node

Returns
true if current node is a branch node, false otherwise

Definition at line 167 of file octree_iterator.h.

template<typename DataT, typename OctreeT>
bool pcl::octree::OctreeIteratorBase< DataT, OctreeT >::isLeafNode ( ) const
inlineinherited

check if current node is a branch node

Returns
true if current node is a branch node, false otherwise

Definition at line 176 of file octree_iterator.h.

template<typename DataT , typename OctreeT >
OctreeNode* pcl::octree::OctreeLeafNodeIterator< DataT, OctreeT >::operator* ( ) const
inline

*operator.

Returns
pointer to the current octree leaf node

Definition at line 462 of file octree_iterator.h.

template<typename DataT , typename OctreeT >
OctreeLeafNodeIterator& pcl::octree::OctreeLeafNodeIterator< DataT, OctreeT >::operator++ ( )
inline

Preincrement operator.

Note
recursively step to next octree leaf node

Definition at line 437 of file octree_iterator.h.

template<typename DataT , typename OctreeT >
OctreeLeafNodeIterator pcl::octree::OctreeLeafNodeIterator< DataT, OctreeT >::operator++ ( int  )
inline

postincrement operator.

Note
step to next octree node

Definition at line 451 of file octree_iterator.h.

template<typename DataT , typename OctreeT >
void pcl::octree::OctreeLeafNodeIterator< DataT, OctreeT >::reset ( )
inlinevirtual

Reset the iterator to the root node of the octree.

Reimplemented from pcl::octree::OctreeDepthFirstIterator< DataT, OctreeT >.

Definition at line 428 of file octree_iterator.h.

template<typename DataT , typename OctreeT >
void pcl::octree::OctreeDepthFirstIterator< DataT, OctreeT >::skipChildVoxels ( )
inherited

Skip all child voxels of current node and return to parent node.

Definition at line 82 of file octree_iterator.hpp.


The documentation for this class was generated from the following file: