18template<
typename DerivedT>
36template<
typename DerivedT>
39 typedef typename OctreeType::NodeType
NodeType;
62 EIGEN_MAKE_ALIGNED_OPERATOR_NEW
68 DerivedT* underlying()
70 return static_cast<DerivedT*
>(
this);
73 const DerivedT* underlying()
const
75 return static_cast<const DerivedT*
>(
this);
86 std::stack<OctantBase*> octant_stack_;
95template<
typename OctreeT>
114template<
typename OctreeT>
133template<
typename OctreeT>
152template<
typename OctreeT>
171template<
typename OctreeT>
197template<
typename MapT,
typename SensorT>
232 EIGEN_MAKE_ALIGNED_OPERATOR_NEW
242template<
typename OctreeT>
250template<
typename OctreeT>
258template<
typename OctreeT>
266template<
typename OctreeT>
274template<
typename OctreeT>
280template<
typename MapT,
typename SensorT>
288#include "impl/iterator_impl.hpp"
The base class of all octants (se::Node and se::Block) in an se::Octree.
Definition octant.hpp:19
Helper wrapper to allocate and de-allocate octants in the octree.
Definition bounded_vector.hpp:14
int timestamp_t
The type of the time stamp.
Definition type_util.hpp:55
Iterates over all valid data in the octree at the last scale it was updated at.
Definition iterator.hpp:37
bool operator!=(const BaseIterator &other) const
BaseIterator(OctreeType *octree_ptr)
bool operator==(const BaseIterator &other) const
BaseIterator operator++(int)
OctantBase * operator*() const
OctreeType::NodeType NodeType
Definition iterator.hpp:39
BaseIterator & operator++()
BaseTraits< DerivedT >::OctreeType OctreeType
Definition iterator.hpp:38
std::forward_iterator_tag iterator_category
Definition iterator.hpp:60
OctreeT OctreeType
Definition iterator.hpp:260
MapT::OctreeType OctreeType
Definition iterator.hpp:282
OctreeT OctreeType
Definition iterator.hpp:268
OctreeT OctreeType
Definition iterator.hpp:252
OctreeT OctreeType
Definition iterator.hpp:244
OctreeT OctreeType
Definition iterator.hpp:276
Definition iterator.hpp:19
Definition iterator.hpp:134
BlocksIterator()
Definition iterator.hpp:135
BlocksIterator(OctreeT *octree_ptr)
Definition iterator.hpp:137
bool isNext(OctantBase *octant_ptr)
Definition iterator.hpp:142
static constexpr bool has_ignore_condition
Definition iterator.hpp:147
Definition iterator.hpp:198
MapT::OctreeType OctreeType
Definition iterator.hpp:199
bool isNext(OctantBase *octant_ptr)
Definition iterator.hpp:212
FrustumIterator(MapT &map, const SensorT &sensor, const Eigen::Isometry3f &T_SM)
Definition iterator.hpp:203
static constexpr bool has_ignore_condition
Definition iterator.hpp:230
const SensorT * sensor_ptr_
Definition iterator.hpp:236
bool doIgnore(OctantBase *octant_ptr)
Definition iterator.hpp:217
MapT * map_ptr_
Definition iterator.hpp:235
const Eigen::Isometry3f T_SM_
Definition iterator.hpp:237
FrustumIterator()
Definition iterator.hpp:201
Definition iterator.hpp:153
LeavesIterator()
Definition iterator.hpp:154
LeavesIterator(OctreeT *octree_ptr)
Definition iterator.hpp:156
bool isNext(OctantBase *octant_ptr)
Definition iterator.hpp:161
static constexpr bool has_ignore_condition
Definition iterator.hpp:166
Definition iterator.hpp:115
NodesIterator()
Definition iterator.hpp:116
NodesIterator(OctreeT *octree_ptr)
Definition iterator.hpp:118
static constexpr bool has_ignore_condition
Definition iterator.hpp:128
bool isNext(OctantBase *octant_ptr)
Definition iterator.hpp:123
Definition iterator.hpp:96
OctreeIterator(OctreeT *octree_ptr)
Definition iterator.hpp:99
OctreeIterator()
Definition iterator.hpp:97
static constexpr bool has_ignore_condition
Definition iterator.hpp:109
bool isNext(OctantBase *)
Definition iterator.hpp:104
Definition iterator.hpp:172
static constexpr bool has_ignore_condition
Definition iterator.hpp:193
UpdateIterator()
Definition iterator.hpp:173
UpdateIterator(OctreeT *octree_ptr, timestamp_t time_stamp)
Definition iterator.hpp:175
const timestamp_t time_stamp_
Definition iterator.hpp:191
bool doIgnore(OctantBase *octant_ptr)
Definition iterator.hpp:186
bool isNext(OctantBase *octant_ptr)
Definition iterator.hpp:181