27 template<
typename NodeT>
29 get_child_idx(
const Eigen::Vector3i& octant_coord, NodeT* node_ptr,
unsigned int& child_idx);
34 template<
typename DataT,
typename DerivedT>
40 template<Field FldT, Colour ColB, Semantics SemB,
typename DerivedT>
50 template<Colour ColB, Semantics SemB,
typename DerivedT>
75 template<Colour ColB, Semantics SemB,
typename DerivedT>
99 return (data_.observed && this->underlying().children_mask_ == 0) ? data_ : DataType();
130 DerivedT& underlying()
132 return static_cast<DerivedT&
>(*this);
134 const DerivedT& underlying()
const 136 return static_cast<const DerivedT&
>(*this);
146 template<
typename DataT>
170 template<
typename DataT, se::Res ResT = se::Res::Single>
172 public std::conditional<ResT == Res::Single,
173 NodeSingleRes<DataT>,
174 NodeMultiRes<DataT, Node<DataT, ResT>>>::type {
186 Node(
const Eigen::Vector3i& coord,
const int size,
const DataT init_data);
194 Node(
Node* parent_ptr,
const int child_idx,
const DataT init_data);
201 inline int getSize()
const;
229 EIGEN_MAKE_ALIGNED_OPERATOR_NEW
232 std::array<se::OctantBase*, 8>
243 #include "impl/node_impl.hpp" 247 #endif // SE_NODE_HPP se::Data< se::Field::Occupancy, ColB, SemB > DataType
Definition: node.hpp:78
void get_child_idx(const Eigen::Vector3i &octant_coord, NodeT *node_ptr, unsigned int &child_idx)
Get the child idx for a given child coordinate and pointer to the parent node.
The node type of the octant.
Definition: block.hpp:18
DataT getData()
Definition: node.hpp:157
void setData(const DataType &data)
Set the data / max data of the node.
Definition: node.hpp:119
DataType getData()
Definition: node.hpp:64
const DataType getData() const
Definition: node.hpp:60
NodeSingleRes(const DataT)
Definition: node.hpp:149
Single-resolution data of a node.
Definition: node.hpp:147
DataType data_
Holds the max data of the node.
Definition: node.hpp:125
se::Data< se::Field::TSDF, ColB, SemB > DataType
Definition: node.hpp:53
const DataT getData() const
Definition: node.hpp:153
This class only helps to dynamic cast the octant to the right type and builds the base of nodes and b...
Definition: octant.hpp:24
se::DeltaData< se::Field::TSDF, ColB, SemB > PropDataType
Definition: node.hpp:54
NodeMultiRes(const DataType)
Definition: node.hpp:56
DataT DataType
Definition: node.hpp:176
const DataType getData() const
Get the leaf data of the node.
Definition: node.hpp:97
const DataType getMaxData() const
Get the max data of the node.
Definition: node.hpp:109
Helper wrapper to allocate and de-allocate octants in the octree.
Definition: colour_utils.hpp:17
NodeMultiRes(const DataType init_data)
Set the inital data of the node.
Definition: node.hpp:85