9#ifndef SE_PROPAGATOR_HPP
10#define SE_PROPAGATOR_HPP
14#include <unordered_set>
37template<
typename OctreeT,
typename AggregateF>
55template<
typename OctreeT,
typename ChildF,
typename ParentF>
69template<
typename PropagateF>
85#include "impl/propagator_impl.hpp"
The base class of all octants (se::Node and se::Block) in an se::Octree.
Definition octant.hpp:19
void propagateBlockTimeStampsToRoot(std::vector< se::OctantBase * > &octant_ptrs)
Propagate all node time stamps to the root.
void propagateBlocksToRoot(std::vector< se::OctantBase * > &octant_ptrs, PropagateF &propagate_funct)
Propagate all nodes to the root using a given up-propagation function.
void propagateBlockDown(const OctreeT &octree, se::OctantBase *octant_ptr, const int target_scale, ChildF child_funct, ParentF parent_funct)
Propagate the block values from the current scale to a lower target scale.
void propagateBlockUp(const OctreeT &, se::OctantBase *octant_ptr, const int init_scale, AggregateF aggregate_children_funct)
Propagate the block values from the current scale to a lower target scale.
Helper wrapper to allocate and de-allocate octants in the octree.
Definition bounded_vector.hpp:14