Point Cloud Library (PCL)  1.11.1-dev
List of all members | Public Member Functions | Protected Attributes
pcl::octree::OctreeFixedDepthIterator< OctreeT > Class Template Reference

Octree iterator class More...

#include <pcl/octree/octree_iterator.h>

+ Inheritance diagram for pcl::octree::OctreeFixedDepthIterator< OctreeT >:

Public Member Functions

 OctreeFixedDepthIterator ()
 Empty constructor. More...
 
 OctreeFixedDepthIterator (OctreeT *octree_arg, unsigned int fixed_depth_arg=0)
 Constructor. More...
 
 OctreeFixedDepthIterator (OctreeT *octree_arg, unsigned int fixed_depth_arg, IteratorState *current_state, const std::deque< IteratorState > &fifo=std::deque< IteratorState >())
 Constructor. More...
 
 OctreeFixedDepthIterator (const OctreeFixedDepthIterator &other)
 Copy Constructor. More...
 
OctreeFixedDepthIteratoroperator= (const OctreeFixedDepthIterator &src)
 Copy assignment. More...
 
void reset (unsigned int fixed_depth_arg)
 Reset the iterator to the first node at the depth given as parameter. More...
 
void reset ()
 Reset the iterator to the first node at the current depth. More...
 
- Public Member Functions inherited from pcl::octree::OctreeBreadthFirstIterator< OctreeT >
 OctreeBreadthFirstIterator (unsigned int max_depth_arg=0)
 Empty constructor. More...
 
 OctreeBreadthFirstIterator (OctreeT *octree_arg, unsigned int max_depth_arg=0)
 Constructor. More...
 
 OctreeBreadthFirstIterator (OctreeT *octree_arg, unsigned int max_depth_arg, IteratorState *current_state, const std::deque< IteratorState > &fifo=std::deque< IteratorState >())
 Constructor. More...
 
 OctreeBreadthFirstIterator (const OctreeBreadthFirstIterator &other)
 Copy Constructor. More...
 
OctreeBreadthFirstIteratoroperator= (const OctreeBreadthFirstIterator &src)
 Copy operator. More...
 
void reset ()
 Reset the iterator to the root node of the octree. More...
 
OctreeBreadthFirstIteratoroperator++ ()
 Preincrement operator. More...
 
OctreeBreadthFirstIterator operator++ (int)
 postincrement operator. More...
 
- Public Member Functions inherited from pcl::octree::OctreeIteratorBase< OctreeT >
 OctreeIteratorBase (unsigned int max_depth_arg=0)
 Empty constructor. More...
 
 OctreeIteratorBase (OctreeT *octree_arg, unsigned int max_depth_arg=0)
 Constructor. More...
 
 OctreeIteratorBase (OctreeT *octree_arg, unsigned int max_depth_arg, IteratorState *current_state)
 Constructor. More...
 
virtual ~OctreeIteratorBase ()
 Empty deconstructor. More...
 
bool operator== (const OctreeIteratorBase &other) const
 Equal comparison operator. More...
 
bool operator!= (const OctreeIteratorBase &other) const
 Inequal comparison operator. More...
 
void reset ()
 Reset iterator. 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...
 
OctreeNodeoperator* () const
 *operator. More...
 
char getNodeConfiguration () const
 Get bit pattern of children configuration of current node. More...
 
const LeafContainergetLeafContainer () const
 Method for retrieving a single leaf container from the octree leaf node. More...
 
LeafContainergetLeafContainer ()
 Method for retrieving a single leaf container from the octree leaf node. More...
 
const BranchContainergetBranchContainer () const
 Method for retrieving the container from an octree branch node. More...
 
BranchContainergetBranchContainer ()
 Method for retrieving the container from an octree branch node. More...
 
virtual unsigned long getNodeID () const
 get a integer identifier for current node (note: identifier depends on tree depth). More...
 

Protected Attributes

unsigned int fixed_depth_
 Given level of the node to be iterated. More...
 
- Protected Attributes inherited from pcl::octree::OctreeBreadthFirstIterator< OctreeT >
std::deque< IteratorStateFIFO_
 FIFO list. More...
 
- Protected Attributes inherited from pcl::octree::OctreeIteratorBase< OctreeT >
OctreeT * octree_
 Reference to octree class. More...
 
IteratorStatecurrent_state_
 Pointer to current iterator state. More...
 
unsigned int max_octree_depth_
 Maximum octree depth. More...
 

Additional Inherited Members

- Public Types inherited from pcl::octree::OctreeBreadthFirstIterator< OctreeT >
using BranchNode = typename OctreeIteratorBase< OctreeT >::BranchNode
 
using LeafNode = typename OctreeIteratorBase< OctreeT >::LeafNode
 
- Public Types inherited from pcl::octree::OctreeIteratorBase< OctreeT >
using LeafNode = typename OctreeT::LeafNode
 
using BranchNode = typename OctreeT::BranchNode
 
using LeafContainer = typename OctreeT::LeafContainer
 
using BranchContainer = typename OctreeT::BranchContainer
 

Detailed Description

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

Octree iterator class

Note
Iterator over all existing nodes at a given depth. It walks across an octree in a breadth-first manner.
Author
Fabien Rozar (fabie.nosp@m.n.ro.nosp@m.zar@g.nosp@m.mail.nosp@m..com)

Definition at line 563 of file octree_iterator.h.

Constructor & Destructor Documentation

◆ OctreeFixedDepthIterator() [1/4]

template<typename OctreeT >
pcl::octree::OctreeFixedDepthIterator< OctreeT >::OctreeFixedDepthIterator

Empty constructor.

Definition at line 261 of file octree_iterator.hpp.

◆ OctreeFixedDepthIterator() [2/4]

template<typename OctreeT >
pcl::octree::OctreeFixedDepthIterator< OctreeT >::OctreeFixedDepthIterator ( OctreeT *  octree_arg,
unsigned int  fixed_depth_arg = 0 
)
explicit

Constructor.

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

Definition at line 267 of file octree_iterator.hpp.

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

◆ OctreeFixedDepthIterator() [3/4]

template<typename OctreeT >
pcl::octree::OctreeFixedDepthIterator< OctreeT >::OctreeFixedDepthIterator ( OctreeT *  octree_arg,
unsigned int  fixed_depth_arg,
IteratorState current_state,
const std::deque< IteratorState > &  fifo = std::deque<IteratorState>() 
)
inline

Constructor.

Parameters
[in]octree_argOctree to be iterated. Initially the iterator is set to its root node.
[in]fixed_depth_argDepth level during traversal
[in]current_stateA pointer to the current iterator state
[in]fifoInternal container of octree node to go through
Warning
For advanced users only.

Definition at line 590 of file octree_iterator.h.

◆ OctreeFixedDepthIterator() [4/4]

template<typename OctreeT >
pcl::octree::OctreeFixedDepthIterator< OctreeT >::OctreeFixedDepthIterator ( const OctreeFixedDepthIterator< OctreeT > &  other)
inline

Copy Constructor.

Parameters
[in]otherAnother OctreeFixedDepthIterator to copy from

Definition at line 603 of file octree_iterator.h.

References pcl::octree::OctreeFixedDepthIterator< OctreeT >::fixed_depth_.

Member Function Documentation

◆ operator=()

template<typename OctreeT >
OctreeFixedDepthIterator& pcl::octree::OctreeFixedDepthIterator< OctreeT >::operator= ( const OctreeFixedDepthIterator< OctreeT > &  src)
inline

Copy assignment.

Parameters
[in]srcthe iterator to copy into this
Returns
pointer to the current octree node

Definition at line 614 of file octree_iterator.h.

References pcl::octree::OctreeFixedDepthIterator< OctreeT >::fixed_depth_, and pcl::octree::OctreeBreadthFirstIterator< OctreeT >::operator=().

◆ reset() [1/2]

template<typename OctreeT >
void pcl::octree::OctreeFixedDepthIterator< OctreeT >::reset ( )
inline

Reset the iterator to the first node at the current depth.

Definition at line 631 of file octree_iterator.h.

References pcl::octree::OctreeFixedDepthIterator< OctreeT >::fixed_depth_.

Referenced by pcl::octree::OctreeFixedDepthIterator< OctreeT >::OctreeFixedDepthIterator().

◆ reset() [2/2]

template<typename OctreeT >
void pcl::octree::OctreeFixedDepthIterator< OctreeT >::reset ( unsigned int  fixed_depth_arg)

Reset the iterator to the first node at the depth given as parameter.

Parameters
[in]fixed_depth_argDepth level during traversal

Definition at line 278 of file octree_iterator.hpp.

References pcl::octree::OctreeBreadthFirstIterator< OctreeT >::operator++(), and pcl::octree::OctreeBreadthFirstIterator< OctreeT >::reset().

Member Data Documentation

◆ fixed_depth_

template<typename OctreeT >
unsigned int pcl::octree::OctreeFixedDepthIterator< OctreeT >::fixed_depth_
protected

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