-
-
Notifications
You must be signed in to change notification settings - Fork 4.6k
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
frozar
committed
Sep 4, 2017
1 parent
423dac3
commit 5b3cf3f
Showing
2 changed files
with
74 additions
and
74 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -530,81 +530,81 @@ namespace pcl | |
* \ingroup octree | ||
* \author Fabien Rozar ([email protected]) | ||
*/ | ||
template<typename OctreeT> | ||
class OctreeBreadthFirstAtDepthIterator : public OctreeBreadthFirstIterator<OctreeT> | ||
{ | ||
public: | ||
|
||
// public typedefs | ||
using typename OctreeBreadthFirstIterator<OctreeT>::BranchNode; | ||
using typename OctreeBreadthFirstIterator<OctreeT>::LeafNode; | ||
|
||
/** \brief Empty constructor. | ||
* \param[in] depth_arg Depth level during traversal | ||
*/ | ||
explicit | ||
OctreeBreadthFirstAtDepthIterator (unsigned int depth_arg = 0); | ||
|
||
/** \brief Constructor. | ||
* \param[in] octree_arg Octree to be iterated. Initially the iterator is set to its root node. | ||
* \param[in] depth_arg Depth level during traversal | ||
*/ | ||
explicit | ||
OctreeBreadthFirstAtDepthIterator (OctreeT* octree_arg, unsigned int depth_arg = 0); | ||
|
||
/** \brief Copy constructor. | ||
* \param[in] octree_arg Octree to be iterated. Initially the iterator is set to its root node. | ||
* \param[in] depth_arg Depth level during traversal | ||
*/ | ||
OctreeBreadthFirstAtDepthIterator (const OctreeBreadthFirstAtDepthIterator& iterator); | ||
|
||
virtual | ||
~OctreeBreadthFirstAtDepthIterator (); | ||
|
||
/** \brief Copy operator. | ||
* \param[in] src the iterator to copy into this | ||
*/ | ||
inline OctreeBreadthFirstAtDepthIterator& | ||
operator = (const OctreeBreadthFirstAtDepthIterator& src) | ||
{ | ||
OctreeBreadthFirstIterator<OctreeT>::operator= (src); | ||
this->depth_ = src.depth_; | ||
return *this; | ||
} | ||
|
||
/** \brief Reset the iterator to the first node at the depth given initially of the octree | ||
*/ | ||
void | ||
reset (); | ||
|
||
/** \brief Reset the iterator to the first node at the depth given initially of the octree | ||
*/ | ||
void | ||
reset (int depth); | ||
|
||
/** \brief Preincrement operator. | ||
* \note step to next octree node | ||
*/ | ||
OctreeBreadthFirstAtDepthIterator& | ||
operator++ (); | ||
|
||
/** \brief postincrement operator. | ||
* \note step to next octree node | ||
*/ | ||
inline OctreeBreadthFirstAtDepthIterator | ||
operator++ (int) | ||
{ | ||
OctreeBreadthFirstAtDepthIterator tmp = *this; | ||
++*this; | ||
return (tmp); | ||
} | ||
template<typename OctreeT> | ||
class OctreeBreadthFirstAtDepthIterator : public OctreeBreadthFirstIterator<OctreeT> | ||
{ | ||
public: | ||
|
||
// public typedefs | ||
using typename OctreeBreadthFirstIterator<OctreeT>::BranchNode; | ||
using typename OctreeBreadthFirstIterator<OctreeT>::LeafNode; | ||
|
||
/** \brief Empty constructor. | ||
* \param[in] depth_arg Depth level during traversal | ||
*/ | ||
explicit | ||
OctreeBreadthFirstAtDepthIterator (unsigned int depth_arg = 0); | ||
|
||
/** \brief Constructor. | ||
* \param[in] octree_arg Octree to be iterated. Initially the iterator is set to its root node. | ||
* \param[in] depth_arg Depth level during traversal | ||
*/ | ||
explicit | ||
OctreeBreadthFirstAtDepthIterator (OctreeT* octree_arg, unsigned int depth_arg = 0); | ||
|
||
/** \brief Copy constructor. | ||
* \param[in] octree_arg Octree to be iterated. Initially the iterator is set to its root node. | ||
* \param[in] depth_arg Depth level during traversal | ||
*/ | ||
OctreeBreadthFirstAtDepthIterator (const OctreeBreadthFirstAtDepthIterator& iterator); | ||
|
||
virtual | ||
~OctreeBreadthFirstAtDepthIterator (); | ||
|
||
/** \brief Copy operator. | ||
* \param[in] src the iterator to copy into this | ||
*/ | ||
inline OctreeBreadthFirstAtDepthIterator& | ||
operator = (const OctreeBreadthFirstAtDepthIterator& src) | ||
{ | ||
OctreeBreadthFirstIterator<OctreeT>::operator= (src); | ||
this->depth_ = src.depth_; | ||
return *this; | ||
} | ||
|
||
/** \brief Reset the iterator to the first node at the depth given initially of the octree | ||
*/ | ||
void | ||
reset (); | ||
|
||
/** \brief Reset the iterator to the first node at the depth given as parameter | ||
*/ | ||
void | ||
reset (int depth); | ||
|
||
/** \brief Preincrement operator. | ||
* \note step to next octree node | ||
*/ | ||
OctreeBreadthFirstAtDepthIterator& | ||
operator++ (); | ||
|
||
/** \brief postincrement operator. | ||
* \note step to next octree node | ||
*/ | ||
inline OctreeBreadthFirstAtDepthIterator | ||
operator++ (int) | ||
{ | ||
OctreeBreadthFirstAtDepthIterator tmp = *this; | ||
++*this; | ||
return (tmp); | ||
} | ||
|
||
protected: | ||
using OctreeBreadthFirstIterator<OctreeT>::FIFO_; | ||
protected: | ||
using OctreeBreadthFirstIterator<OctreeT>::FIFO_; | ||
|
||
/** \brief Given level of the node to be iterated */ | ||
unsigned int depth_; | ||
} ; | ||
/** \brief Given level of the node to be iterated */ | ||
unsigned int depth_; | ||
}; | ||
|
||
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// | ||
/** \brief Octree leaf node iterator class | ||
|