39 #ifndef PCL_OUTOFCORE_BREADTH_FIRST_ITERATOR_IMPL_H_
40 #define PCL_OUTOFCORE_BREADTH_FIRST_ITERATOR_IMPL_H_
47 template<
typename Po
intT,
typename ContainerT>
56 template<
typename Po
intT,
typename ContainerT>
61 template<
typename Po
intT,
typename ContainerT>
75 auto* branch =
static_cast<BranchNode*
> (node);
79 for (
unsigned char child_idx = 0; child_idx < 8 ; child_idx++)
82 child = this->octree_.getBranchChildPtr (*branch, child_idx);
85 FIFO_.push_back (child);
92 skip_child_voxels_ =
false;
97 this->currentNode_ = FIFO_.front ();
101 this->currentNode_ =
nullptr;
OutofcoreBreadthFirstIterator(OctreeDisk &octree_arg)
OutofcoreBreadthFirstIterator & operator++()
~OutofcoreBreadthFirstIterator() override
Abstract octree iterator class.
This code defines the octree used for point storage at Urban Robotics.
OutofcoreOctreeBaseNode Class internally representing nodes of an outofcore octree,...
virtual std::size_t getDepth() const
node_type_t getNodeType() const override
Pure virtual method for retrieving the type of octree node (branch or leaf)
A point structure representing Euclidean xyz coordinates, and the RGB color.