pcl::octree::OctreeIteratorBase< OctreeT > Class Template Reference

**Abstract** octree iterator class
More...

`#include <octree_iterator.h>`

Inheritance diagram for pcl::octree::OctreeIteratorBase< OctreeT >:

## Public Types | |

typedef OctreeT::BranchContainer | BranchContainer |

typedef OctreeT::BranchNode | BranchNode |

typedef OctreeT::LeafContainer | LeafContainer |

typedef OctreeT::LeafNode | LeafNode |

## Public Member Functions | |

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. | |

unsigned int | getCurrentOctreeDepth () const |

Get the current depth level of octree. | |

const OctreeKey & | getCurrentOctreeKey () const |

Get octree key for the current iterator octree node. | |

OctreeNode * | getCurrentOctreeNode () const |

Get the current octree 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. | |

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). | |

bool | isBranchNode () const |

check if current node is a branch node | |

bool | isLeafNode () const |

check if current node is a branch node | |

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. | |

bool | operator!= (const OctreeIteratorBase &other) const |

Inequal comparison operator. | |

OctreeNode * | operator* () const |

*operator. | |

OctreeIteratorBase & | operator= (const OctreeIteratorBase &src) |

Copy operator. | |

bool | operator== (const OctreeIteratorBase &other) const |

Equal comparison operator. | |

void | reset () |

Reset iterator. | |

virtual | ~OctreeIteratorBase () |

Empty deconstructor. | |

## Protected Attributes | |

IteratorState * | current_state_ |

Pointer to current iterator state. | |

unsigned int | max_octree_depth_ |

Maximum octree depth. | |

OctreeT * | octree_ |

Reference to octree class. |

class pcl::octree::OctreeIteratorBase< OctreeT >

**Abstract** octree iterator class

**Note:**- Octree iterator base class

Definition at line 78 of file octree_iterator.h.

template<typename OctreeT>

typedef OctreeT::BranchContainer pcl::octree::OctreeIteratorBase< OctreeT >::BranchContainer |

Definition at line 87 of file octree_iterator.h.

template<typename OctreeT>

typedef OctreeT::BranchNode pcl::octree::OctreeIteratorBase< OctreeT >::BranchNode |

Reimplemented in pcl::octree::OctreeLeafNodeIterator< OctreeT >, pcl::octree::OctreeBreadthFirstIterator< OctreeT >, and pcl::octree::OctreeDepthFirstIterator< OctreeT >.

Definition at line 84 of file octree_iterator.h.

template<typename OctreeT>

typedef OctreeT::LeafContainer pcl::octree::OctreeIteratorBase< OctreeT >::LeafContainer |

Definition at line 86 of file octree_iterator.h.

template<typename OctreeT>

typedef OctreeT::LeafNode pcl::octree::OctreeIteratorBase< OctreeT >::LeafNode |

Reimplemented in pcl::octree::OctreeLeafNodeIterator< OctreeT >, pcl::octree::OctreeBreadthFirstIterator< OctreeT >, and pcl::octree::OctreeDepthFirstIterator< OctreeT >.

Definition at line 83 of file octree_iterator.h.

template<typename OctreeT>

pcl::octree::OctreeIteratorBase< OctreeT >::OctreeIteratorBase | ( | unsigned int | max_depth_arg = `0` | ) | ` [inline, explicit]` |

Empty constructor.

Definition at line 92 of file octree_iterator.h.

template<typename OctreeT>

pcl::octree::OctreeIteratorBase< OctreeT >::OctreeIteratorBase | ( | 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 103 of file octree_iterator.h.

template<typename OctreeT>

pcl::octree::OctreeIteratorBase< OctreeT >::OctreeIteratorBase | ( | const OctreeIteratorBase< OctreeT > & | src, |

unsigned int | max_depth_arg = `0` |
||

) | ` [inline]` |

Copy constructor.

**Parameters:**-
[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.

template<typename OctreeT>

virtual pcl::octree::OctreeIteratorBase< OctreeT >::~OctreeIteratorBase | ( | ) | ` [inline, virtual]` |

Empty deconstructor.

Definition at line 133 of file octree_iterator.h.

template<typename OctreeT>

const BranchContainer& pcl::octree::OctreeIteratorBase< OctreeT >::getBranchContainer | ( | ) | const` [inline]` |

Method for retrieving the container from an octree branch node.

**Returns:**- BranchContainer.

Definition at line 302 of file octree_iterator.h.

template<typename OctreeT>

BranchContainer& pcl::octree::OctreeIteratorBase< OctreeT >::getBranchContainer | ( | ) | ` [inline]` |

Method for retrieving the container from an octree branch node.

**Returns:**- BranchContainer.

Definition at line 317 of file octree_iterator.h.

template<typename OctreeT>

unsigned int pcl::octree::OctreeIteratorBase< OctreeT >::getCurrentOctreeDepth | ( | ) | const` [inline]` |

Get the current depth level of octree.

**Returns:**- depth level

Definition at line 183 of file octree_iterator.h.

template<typename OctreeT>

const OctreeKey& pcl::octree::OctreeIteratorBase< OctreeT >::getCurrentOctreeKey | ( | ) | const` [inline]` |

Get octree key for the current iterator octree node.

**Returns:**- octree key of current node

Definition at line 171 of file octree_iterator.h.

template<typename OctreeT>

OctreeNode* pcl::octree::OctreeIteratorBase< OctreeT >::getCurrentOctreeNode | ( | ) | const` [inline]` |

Get the current octree node.

**Returns:**- pointer to current octree node

Definition at line 195 of file octree_iterator.h.

template<typename OctreeT>

const LeafContainer& pcl::octree::OctreeIteratorBase< OctreeT >::getLeafContainer | ( | ) | const` [inline]` |

Method for retrieving a single leaf container from the octree leaf node.

**Returns:**- Reference to container class of leaf node.

Definition at line 272 of file octree_iterator.h.

template<typename OctreeT>

LeafContainer& pcl::octree::OctreeIteratorBase< OctreeT >::getLeafContainer | ( | ) | ` [inline]` |

Method for retrieving a single leaf container from the octree leaf node.

**Returns:**- Reference to container class of leaf node.

Definition at line 287 of file octree_iterator.h.

template<typename OctreeT>

char pcl::octree::OctreeIteratorBase< 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 247 of file octree_iterator.h.

template<typename OctreeT>

virtual unsigned long pcl::octree::OctreeIteratorBase< OctreeT >::getNodeID | ( | ) | const` [inline, virtual]` |

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

**Returns:**- node id.

Definition at line 332 of file octree_iterator.h.

template<typename OctreeT>

bool pcl::octree::OctreeIteratorBase< 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 208 of file octree_iterator.h.

template<typename OctreeT>

bool pcl::octree::OctreeIteratorBase< 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 220 of file octree_iterator.h.

template<typename OctreeT>

bool pcl::octree::OctreeIteratorBase< OctreeT >::operator!= | ( | const OctreeIteratorBase< OctreeT > & | other | ) | const` [inline]` |

Inequal comparison operator.

**Parameters:**-
[in] OctreeIteratorBase to compare with

Definition at line 150 of file octree_iterator.h.

template<typename OctreeT>

OctreeNode* pcl::octree::OctreeIteratorBase< OctreeT >::operator* | ( | ) | const` [inline]` |

*operator.

**Returns:**- pointer to the current octree node

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

Definition at line 232 of file octree_iterator.h.

template<typename OctreeT>

OctreeIteratorBase& pcl::octree::OctreeIteratorBase< OctreeT >::operator= | ( | const OctreeIteratorBase< OctreeT > & | src | ) | ` [inline]` |

Copy operator.

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

Definition at line 123 of file octree_iterator.h.

template<typename OctreeT>

bool pcl::octree::OctreeIteratorBase< OctreeT >::operator== | ( | const OctreeIteratorBase< OctreeT > & | other | ) | const` [inline]` |

Equal comparison operator.

**Parameters:**-
[in] OctreeIteratorBase to compare with

Definition at line 140 of file octree_iterator.h.

template<typename OctreeT>

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.

template<typename OctreeT>

IteratorState* pcl::octree::OctreeIteratorBase< OctreeT >::current_state_` [protected]` |

Pointer to current iterator state.

Definition at line 355 of file octree_iterator.h.

template<typename OctreeT>

unsigned int pcl::octree::OctreeIteratorBase< OctreeT >::max_octree_depth_` [protected]` |

Maximum octree depth.

Definition at line 358 of file octree_iterator.h.

template<typename OctreeT>

OctreeT* pcl::octree::OctreeIteratorBase< OctreeT >::octree_` [protected]` |

Reference to octree class.

Definition at line 352 of file octree_iterator.h.

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