14template<
typename DataT, Res ResT>
21template<
typename DataT, Res ResT>
43template<Colour ColB, Semantics SemB, Res ResT>
56 return (max_data.
field.observed && derived()->isLeaf()) ? max_data :
default_data;
59 EIGEN_MAKE_ALIGNED_OPERATOR_NEW
86template<
typename DataT, Res ResT>
128 EIGEN_MAKE_ALIGNED_OPERATOR_NEW
132 std::array<OctantBase*, 8> children_ptr_;
141#include "impl/node_impl.hpp"
An intermediate node of an se::Octree.
Definition node.hpp:87
const int size
The edge length of the node in voxels.
Definition node.hpp:136
DataT DataType
Definition node.hpp:89
OctantBase * getChild(const int child_idx)
A non-const overload of the previous member function.
int getChildIdx(const Eigen::Vector3i &child_coord) const
Return the index of the child of the node with coordinates child_coord.
Node(const Eigen::Vector3i &coord, const int size, const DataT &init_data)
Construct a node at coordinates coord in voxels, with an edge length size in voxels and initialize it...
Node(Node *const parent_ptr, const int child_idx, const DataT &init_data)
Construct the child node of parent_ptr with index child_idx and initialize its data with init_data.
Eigen::Vector3i getChildCoord(const int child_idx) const
Return the coordinates in voxels of the child with index child_idx.
void setChild(const int child_idx, OctantBase *const child_ptr)
Set the node child with index child_idx to child_ptr.
const OctantBase * getChild(const int child_idx) const
Return a pointer to the node child with index child_idx.
The base class of all octants (se::Node and se::Block) in an se::Octree.
Definition octant.hpp:19
const Eigen::Vector3i coord
The coordinates in voxels of the octant's vertex closest to the origin.
Definition octant.hpp:26
Helper wrapper to allocate and de-allocate octants in the octree.
Definition bounded_vector.hpp:14
Field
Definition setup_util.hpp:18
FieldType field
Definition data.hpp:24
DataType max_data
The maximum data among the node's children or the node's data if it's a leaf.
Definition node.hpp:50
Data< Field::Occupancy, ColB, SemB > DataType
Definition node.hpp:45
NodeData(const DataType &init_data)
Construct a node with both its minimum and maximum data initialized to init_data.
Definition node.hpp:63
DataType min_data
The minimum data among the node's children or the node's data if it's a leaf.
Definition node.hpp:48
const DataType & data() const
Return NodeData::max_data if the node is observed and a leaf, the default data otherwise.
Definition node.hpp:53
Contains se::Data stored in se::Node and appropriate methods.
Definition node.hpp:22
NodeData(const DataT &)
Definition node.hpp:33
const DataT & data() const
Always returns the default data.
Definition node.hpp:26