aether::octree< P > Class Template Reference

The main class of the Aether engine which manages all the processes. More...

#include <manager.hh>

Public Types

using octree_params_type = P
 
using octree_traits = typename octree_params_type::octree_traits
 
using aether_state_type = typename octree_params_type::aether_state_type
 
using user_state_builder = closure< std::unique_ptr< user_cell_state_interface< octree_traits >>(const aether_state_type &state)>
 

Public Member Functions

 octree (uint64_t num_workers, const octree_params_type &static_args)
 
void add_muxer (const tcp::service_location &muxer)
 Connect the simulation to a. More...
 
void manager_tick ()
 Advance the simulation by a single tick. More...
 
template<typename Allocator >
void set_process_allocator (const Allocator &_allocator)
 
 ~octree ()
 

Detailed Description

template<typename P>
class aether::octree< P >

The main class of the Aether engine which manages all the processes.

See aether::build_entity_simulation_manager a builder for this type.

Template Parameters
Psee octree_params.hh

Member Typedef Documentation

template<typename P >
using aether::octree< P >::aether_state_type = typename octree_params_type::aether_state_type
template<typename P >
using aether::octree< P >::octree_params_type = P
template<typename P >
using aether::octree< P >::octree_traits = typename octree_params_type::octree_traits
template<typename P >
using aether::octree< P >::user_state_builder = closure<std::unique_ptr<user_cell_state_interface<octree_traits>>(const aether_state_type &state)>

Constructor & Destructor Documentation

template<typename P >
aether::octree< P >::octree ( uint64_t  num_workers,
const octree_params_type static_args 
)
template<typename P >
aether::octree< P >::~octree ( )

Member Function Documentation

template<typename P >
void aether::octree< P >::add_muxer ( const tcp::service_location &  muxer)

Connect the simulation to a.

Parameters
muxerservice.

Muxers are intermediaries between the simulation workers and the clients and are configured in the aether config file.

template<typename P >
void aether::octree< P >::manager_tick ( )

Advance the simulation by a single tick.

Should be called from an update loop of the manager process.

template<typename P >
template<typename Allocator >
void aether::octree< P >::set_process_allocator ( const Allocator &  _allocator)
inline