Public Types | Public Member Functions | Protected Attributes
pcl::octree::OctreeIteratorBase< DataT, OctreeT > Class Template Reference

Abstract octree iterator class More...

#include <octree_iterator.h>

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

List of all members.

Public Types

typedef OctreeT::BranchNode BranchNode
typedef OctreeT::LeafNode LeafNode

Public Member Functions

unsigned int getCurrentOctreeDepth () const
 Get the current depth level of octree.
const OctreeKeygetCurrentOctreeKey () const
 Get octree key for the current iterator octree node.
OctreeNodegetCurrentOctreeNode () const
 Get the current octree node.
virtual void getData (DataT &data_arg) const
 Method for retrieving a single DataT element from the octree leaf node.
virtual void getData (std::vector< DataT > &dataVector_arg) const
 Method for retrieving a vector of DataT elements from the octree laef node.
char getNodeConfiguration () const
 Get bit pattern of children configuration of current node.
virtual unsigned long getNodeID () const
 get a integer identifier for current node (note: identifier depends on tree depth).
virtual std::size_t getSize () const
 Method for retrieving the size of the DataT vector from the octree laef node.
bool isBranchNode () const
 check if current node is a branch node
bool isLeafNode () const
 check if current node is a branch node
 OctreeIteratorBase (OctreeT &octree_arg)
 Constructor.
 OctreeIteratorBase (const OctreeIteratorBase &src)
 Copy constructor.
OctreeNodeoperator* () const
 *operator.
OctreeIteratorBaseoperator= (const OctreeIteratorBase &src)
 Copy operator.
void reset ()
 initialize iterator globals
virtual ~OctreeIteratorBase ()
 Empty deconstructor.

Protected Attributes

OctreeNodecurrentNode_
unsigned int currentOctreeDepth_
OctreeKey currentOctreeKey_
OctreeT & octree_
 Reference to octree class.

Detailed Description

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

Abstract octree iterator class

Note:
Octree iterator base class
Author:
Julius Kammerl (julius@kammerl.de)

Definition at line 69 of file octree_iterator.h.


Member Typedef Documentation

template<typename DataT, typename OctreeT>
typedef OctreeT::BranchNode pcl::octree::OctreeIteratorBase< DataT, OctreeT >::BranchNode
template<typename DataT, typename OctreeT>
typedef OctreeT::LeafNode pcl::octree::OctreeIteratorBase< DataT, OctreeT >::LeafNode

Constructor & Destructor Documentation

template<typename DataT, typename OctreeT>
pcl::octree::OctreeIteratorBase< DataT, OctreeT >::OctreeIteratorBase ( OctreeT &  octree_arg) [inline, explicit]

Constructor.

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

Definition at line 81 of file octree_iterator.h.

template<typename DataT, typename OctreeT>
pcl::octree::OctreeIteratorBase< DataT, OctreeT >::OctreeIteratorBase ( const OctreeIteratorBase< DataT, OctreeT > &  src) [inline]

Copy constructor.

Parameters:
[in]srcthe iterator to copy into this

Definition at line 90 of file octree_iterator.h.

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

Empty deconstructor.

Definition at line 111 of file octree_iterator.h.


Member Function Documentation

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

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 [inline]

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 [inline]

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 [inline, virtual]

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 [inline, virtual]

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 [inline]

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 [inline, virtual]

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 [inline, virtual]

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 [inline]

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 [inline]

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::OctreeIteratorBase< DataT, OctreeT >::operator* ( ) const [inline]

*operator.

Returns:
pointer to the current octree node

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

Definition at line 158 of file octree_iterator.h.

template<typename DataT, typename OctreeT>
OctreeIteratorBase& pcl::octree::OctreeIteratorBase< DataT, OctreeT >::operator= ( const OctreeIteratorBase< DataT, OctreeT > &  src) [inline]

Copy operator.

Parameters:
[in]srcthe iterator to copy into this

Definition at line 100 of file octree_iterator.h.

template<typename DataT, typename OctreeT>
void pcl::octree::OctreeIteratorBase< DataT, OctreeT >::reset ( ) [inline]

Member Data Documentation

template<typename DataT, typename OctreeT>
OctreeNode* pcl::octree::OctreeIteratorBase< DataT, OctreeT >::currentNode_ [protected]

Pointer to current octree node.

Definition at line 260 of file octree_iterator.h.

template<typename DataT, typename OctreeT>
unsigned int pcl::octree::OctreeIteratorBase< DataT, OctreeT >::currentOctreeDepth_ [protected]

Depth level in the octree structure.

Definition at line 263 of file octree_iterator.h.

template<typename DataT, typename OctreeT>
OctreeKey pcl::octree::OctreeIteratorBase< DataT, OctreeT >::currentOctreeKey_ [protected]

Octree key for current octree node.

Definition at line 266 of file octree_iterator.h.

template<typename DataT, typename OctreeT>
OctreeT& pcl::octree::OctreeIteratorBase< DataT, OctreeT >::octree_ [protected]

Reference to octree class.

Definition at line 257 of file octree_iterator.h.


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


pcl
Author(s): Open Perception
autogenerated on Mon Oct 6 2014 03:20:18