Point Cloud Library (PCL)  1.14.0-dev
List of all members | Public Types | Public Member Functions | Protected Attributes
pcl::outofcore::OutofcoreDepthFirstIterator< PointT, ContainerT > Class Template Reference

#include <pcl/outofcore/outofcore_depth_first_iterator.h>

+ Inheritance diagram for pcl::outofcore::OutofcoreDepthFirstIterator< PointT, ContainerT >:
+ Collaboration diagram for pcl::outofcore::OutofcoreDepthFirstIterator< PointT, ContainerT >:

Public Types

using OctreeDisk = pcl::outofcore::OutofcoreOctreeBase< ContainerT, PointT >
 
using OctreeDiskNode = pcl::outofcore::OutofcoreOctreeBaseNode< ContainerT, PointT >
 
using LeafNode = pcl::outofcore::OutofcoreOctreeBaseNode< ContainerT, PointT >
 
using BranchNode = pcl::outofcore::OutofcoreOctreeBaseNode< ContainerT, PointT >
 
- Public Types inherited from pcl::outofcore::OutofcoreIteratorBase< pcl::PointXYZ, OutofcoreOctreeDiskContainer< pcl::PointXYZ > >
using iterator_category = std::forward_iterator_tag
 
using value_type = const OutofcoreOctreeBaseNode< OutofcoreOctreeDiskContainer< pcl::PointXYZ >, pcl::PointXYZ >
 
using difference_type = void
 
using pointer = const OutofcoreOctreeBaseNode< OutofcoreOctreeDiskContainer< pcl::PointXYZ >, pcl::PointXYZ > *
 
using reference = const OutofcoreOctreeBaseNode< OutofcoreOctreeDiskContainer< pcl::PointXYZ >, pcl::PointXYZ > &
 
using OctreeDisk = pcl::outofcore::OutofcoreOctreeBase< OutofcoreOctreeDiskContainer< pcl::PointXYZ >, pcl::PointXYZ >
 
using OctreeDiskNode = pcl::outofcore::OutofcoreOctreeBaseNode< OutofcoreOctreeDiskContainer< pcl::PointXYZ >, pcl::PointXYZ >
 
using BranchNode = typename pcl::outofcore::OutofcoreOctreeBase< OutofcoreOctreeDiskContainer< pcl::PointXYZ >, pcl::PointXYZ >::BranchNode
 
using LeafNode = typename pcl::outofcore::OutofcoreOctreeBase< OutofcoreOctreeDiskContainer< pcl::PointXYZ >, pcl::PointXYZ >::LeafNode
 
using OutofcoreNodeType = typename OctreeDisk::OutofcoreNodeType
 

Public Member Functions

 OutofcoreDepthFirstIterator (OctreeDisk &octree_arg)
 
 ~OutofcoreDepthFirstIterator () override
 
OutofcoreDepthFirstIteratoroperator++ ()
 
OutofcoreDepthFirstIterator operator++ (int)
 
void skipChildVoxels ()
 
- Public Member Functions inherited from pcl::outofcore::OutofcoreIteratorBase< pcl::PointXYZ, OutofcoreOctreeDiskContainer< pcl::PointXYZ > >
 OutofcoreIteratorBase (OctreeDisk &octree_arg)
 
 OutofcoreIteratorBase (const OutofcoreIteratorBase &src)
 
virtual ~OutofcoreIteratorBase ()=default
 
OutofcoreIteratorBaseoperator= (const OutofcoreIteratorBase &src)
 
OutofcoreNodeTypeoperator* () const
 
virtual OutofcoreNodeTypegetCurrentOctreeNode () const
 
virtual void reset ()
 
void setMaxDepth (unsigned int max_depth)
 

Protected Attributes

unsigned char currentChildIdx_ {0}
 
std::vector< std::pair< OctreeDiskNode *, unsigned char > > stack_
 
- Protected Attributes inherited from pcl::outofcore::OutofcoreIteratorBase< pcl::PointXYZ, OutofcoreOctreeDiskContainer< pcl::PointXYZ > >
OctreeDiskoctree_
 
OctreeDiskNodecurrentNode_
 
unsigned int currentOctreeDepth_
 
unsigned int max_depth_
 

Detailed Description

template<typename PointT = pcl::PointXYZ, typename ContainerT = OutofcoreOctreeDiskContainer<pcl::PointXYZ>>
class pcl::outofcore::OutofcoreDepthFirstIterator< PointT, ContainerT >

Author
Stephen Fox (foxst.nosp@m.ephe.nosp@m.nd@gm.nosp@m.ail..nosp@m.com)
Note
Code adapted from octree_iterator.h in Module pcl::octree written by Julius Kammerl

Definition at line 53 of file outofcore_depth_first_iterator.h.

Member Typedef Documentation

◆ BranchNode

template<typename PointT = pcl::PointXYZ, typename ContainerT = OutofcoreOctreeDiskContainer<pcl::PointXYZ>>
using pcl::outofcore::OutofcoreDepthFirstIterator< PointT, ContainerT >::BranchNode = pcl::outofcore::OutofcoreOctreeBaseNode<ContainerT, PointT>

Definition at line 60 of file outofcore_depth_first_iterator.h.

◆ LeafNode

template<typename PointT = pcl::PointXYZ, typename ContainerT = OutofcoreOctreeDiskContainer<pcl::PointXYZ>>
using pcl::outofcore::OutofcoreDepthFirstIterator< PointT, ContainerT >::LeafNode = pcl::outofcore::OutofcoreOctreeBaseNode<ContainerT, PointT>

Definition at line 59 of file outofcore_depth_first_iterator.h.

◆ OctreeDisk

template<typename PointT = pcl::PointXYZ, typename ContainerT = OutofcoreOctreeDiskContainer<pcl::PointXYZ>>
using pcl::outofcore::OutofcoreDepthFirstIterator< PointT, ContainerT >::OctreeDisk = pcl::outofcore::OutofcoreOctreeBase<ContainerT, PointT>

Definition at line 56 of file outofcore_depth_first_iterator.h.

◆ OctreeDiskNode

template<typename PointT = pcl::PointXYZ, typename ContainerT = OutofcoreOctreeDiskContainer<pcl::PointXYZ>>
using pcl::outofcore::OutofcoreDepthFirstIterator< PointT, ContainerT >::OctreeDiskNode = pcl::outofcore::OutofcoreOctreeBaseNode<ContainerT, PointT>

Definition at line 57 of file outofcore_depth_first_iterator.h.

Constructor & Destructor Documentation

◆ OutofcoreDepthFirstIterator()

template<typename PointT = pcl::PointXYZ, typename ContainerT = OutofcoreOctreeDiskContainer<pcl::PointXYZ>>
pcl::outofcore::OutofcoreDepthFirstIterator< PointT, ContainerT >::OutofcoreDepthFirstIterator ( OctreeDisk octree_arg)
explicit

◆ ~OutofcoreDepthFirstIterator()

template<typename PointT , typename ContainerT >
pcl::outofcore::OutofcoreDepthFirstIterator< PointT, ContainerT >::~OutofcoreDepthFirstIterator ( )
overridedefault

Member Function Documentation

◆ operator++() [1/2]

template<typename PointT , typename ContainerT >
OutofcoreDepthFirstIterator< PointT, ContainerT > & pcl::outofcore::OutofcoreDepthFirstIterator< PointT, ContainerT >::operator++

Definition at line 66 of file outofcore_depth_first_iterator.hpp.

References pcl::octree::BRANCH_NODE.

◆ operator++() [2/2]

template<typename PointT = pcl::PointXYZ, typename ContainerT = OutofcoreOctreeDiskContainer<pcl::PointXYZ>>
OutofcoreDepthFirstIterator pcl::outofcore::OutofcoreDepthFirstIterator< PointT, ContainerT >::operator++ ( int  )
inline

Definition at line 72 of file outofcore_depth_first_iterator.h.

◆ skipChildVoxels()

template<typename PointT = pcl::PointXYZ, typename ContainerT = OutofcoreOctreeDiskContainer<pcl::PointXYZ>>
void pcl::outofcore::OutofcoreDepthFirstIterator< PointT, ContainerT >::skipChildVoxels ( )

Member Data Documentation

◆ currentChildIdx_

template<typename PointT = pcl::PointXYZ, typename ContainerT = OutofcoreOctreeDiskContainer<pcl::PointXYZ>>
unsigned char pcl::outofcore::OutofcoreDepthFirstIterator< PointT, ContainerT >::currentChildIdx_ {0}
protected

Definition at line 83 of file outofcore_depth_first_iterator.h.

◆ stack_

template<typename PointT = pcl::PointXYZ, typename ContainerT = OutofcoreOctreeDiskContainer<pcl::PointXYZ>>
std::vector<std::pair<OctreeDiskNode*, unsigned char> > pcl::outofcore::OutofcoreDepthFirstIterator< PointT, ContainerT >::stack_
protected

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