pcl::octree::OctreeDepthFirstIterator< OctreeT > Class Template Reference
[Module octree]

Octree iterator class More...

#include <pcl/octree/octree_iterator.h>

Inheritance diagram for pcl::octree::OctreeDepthFirstIterator< OctreeT >:
Inheritance graph
[legend]
Collaboration diagram for pcl::octree::OctreeDepthFirstIterator< OctreeT >:
Collaboration graph
[legend]

List of all members.

Public Types

typedef OctreeIteratorBase
< OctreeT >::LeafNode 
LeafNode
typedef OctreeIteratorBase
< OctreeT >::BranchNode 
BranchNode

Public Member Functions

 OctreeDepthFirstIterator (unsigned int max_depth_arg=0)
 Empty constructor.
 OctreeDepthFirstIterator (OctreeT *octree_arg, unsigned int max_depth_arg=0)
 Constructor.
virtual ~OctreeDepthFirstIterator ()
 Empty deconstructor.
OctreeDepthFirstIteratoroperator= (const OctreeDepthFirstIterator &src)
 Copy operator.
virtual void reset ()
 Reset the iterator to the root node of the octree.
OctreeDepthFirstIteratoroperator++ ()
 Preincrement operator.
OctreeDepthFirstIterator operator++ (int)
 postincrement operator.
void skipChildVoxels ()
 Skip all child voxels of current node and return to parent node.

Protected Attributes

std::vector< IteratorStatestack_
 Stack structure.

Detailed Description

template<typename OctreeT>
class pcl::octree::OctreeDepthFirstIterator< OctreeT >

Octree iterator class

Note:
This class implements a forward iterator for traversing octrees in a depth-first manner.
Author:
Julius Kammerl (julius@kammerl.de)

Definition at line 368 of file octree_iterator.h.


Member Typedef Documentation

Reimplemented from pcl::octree::OctreeIteratorBase< OctreeT >.

Definition at line 374 of file octree_iterator.h.

Reimplemented from pcl::octree::OctreeIteratorBase< OctreeT >.

Definition at line 373 of file octree_iterator.h.


Constructor & Destructor Documentation

template<typename OctreeT >
pcl::octree::OctreeDepthFirstIterator< OctreeT >::OctreeDepthFirstIterator ( unsigned int  max_depth_arg = 0  )  [inline, explicit]

Empty constructor.

Parameters:
[in] max_depth_arg Depth limitation during traversal

Definition at line 53 of file octree_iterator.hpp.

References pcl::octree::OctreeDepthFirstIterator< OctreeT >::reset().

template<typename OctreeT >
pcl::octree::OctreeDepthFirstIterator< OctreeT >::OctreeDepthFirstIterator ( OctreeT octree_arg,
unsigned int  max_depth_arg = 0 
) [inline, explicit]

Constructor.

Parameters:
[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 62 of file octree_iterator.hpp.

References pcl::octree::OctreeDepthFirstIterator< OctreeT >::reset().

template<typename OctreeT >
pcl::octree::OctreeDepthFirstIterator< OctreeT >::~OctreeDepthFirstIterator (  )  [inline, virtual]

Empty deconstructor.

Definition at line 71 of file octree_iterator.hpp.


Member Function Documentation

template<typename OctreeT>
OctreeDepthFirstIterator pcl::octree::OctreeDepthFirstIterator< OctreeT >::operator++ ( int   )  [inline]

postincrement operator.

Note:
recursively step to next octree node

Reimplemented in pcl::octree::OctreeLeafNodeIterator< OctreeT >.

Definition at line 430 of file octree_iterator.h.

template<typename OctreeT >
OctreeDepthFirstIterator< OctreeT > & pcl::octree::OctreeDepthFirstIterator< OctreeT >::operator++ (  )  [inline]
template<typename OctreeT>
OctreeDepthFirstIterator& pcl::octree::OctreeDepthFirstIterator< OctreeT >::operator= ( const OctreeDepthFirstIterator< OctreeT > &  src  )  [inline]

Copy operator.

Parameters:
[in] src the iterator to copy into this

Reimplemented from pcl::octree::OctreeIteratorBase< OctreeT >.

Definition at line 397 of file octree_iterator.h.

References pcl::octree::OctreeIteratorBase< OctreeT >::current_state_, and pcl::octree::OctreeDepthFirstIterator< OctreeT >::stack_.

template<typename OctreeT >
void pcl::octree::OctreeDepthFirstIterator< OctreeT >::reset (  )  [inline, virtual]
template<typename OctreeT >
void pcl::octree::OctreeDepthFirstIterator< OctreeT >::skipChildVoxels (  )  [inline]

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

Definition at line 104 of file octree_iterator.hpp.

References pcl::octree::OctreeIteratorBase< OctreeT >::current_state_, and pcl::octree::OctreeDepthFirstIterator< OctreeT >::stack_.


Member Data Documentation

template<typename OctreeT>
std::vector<IteratorState> pcl::octree::OctreeDepthFirstIterator< OctreeT >::stack_ [protected]

The documentation for this class was generated from the following files:
 All Classes Namespaces Functions Variables Typedefs Enumerations Enumerator Friends