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...
 
OctreeLeafNodeIteratoroperator++ ()
 Preincrement operator. More...
 
OctreeLeafNodeIterator operator++ (int)
 postincrement operator. More...
 
OctreeNodeoperator* () const
 *operator. More...
 
void skipChildVoxels ()
 Skip all child voxels of current node and return to parent node. More...
 
const OctreeKeygetCurrentOctreeKey () const
 Get octree key for the current iterator octree node. More...
 
unsigned int getCurrentOctreeDepth () const
 Get the current depth level of octree. More...
 
OctreeNodegetCurrentOctreeNode () 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: