Template Class tv_manager

Class Documentation

template<typename TEnvDynamics, typename TPopulationDynamics>
class tv_manager

Orchestrates all application of temporal variance to robot interations with the environment, robotic mechanical functioning, etc.

Template Parameters:
  • TEnvDynamics – Class which will orchestrate application of environmental dynamics to the swarm. Project-specific, so must be a templated type.

  • TPopulationDynamics – Class which will orchestrate population dynamics within the swarm. Must be derived from population_dynamics.

Public Functions

tv_manager(const tv_manager&) = delete
inline tv_manager(std::unique_ptr<TEnvDynamics> envd, std::unique_ptr<TPopulationDynamics> popd)
template<dynamics_type type, typename std::enable_if<dynamics_type::ekPOPULATION == type, int>::type = 0>
inline TPopulationDynamics *dynamics(void)
template<dynamics_type type, typename std::enable_if<dynamics_type::ekENVIRONMENT == type, int>::type = 0>
inline TEnvDynamics *dynamics(void)
template<dynamics_type type, typename std::enable_if<dynamics_type::ekPOPULATION == type, int>::type = 0>
inline const TPopulationDynamics *dynamics(void) const
template<dynamics_type type, typename std::enable_if<dynamics_type::ekENVIRONMENT == type, int>::type = 0>
inline const TEnvDynamics *dynamics(void) const
const tv_manager &operator=(const tv_manager&) = delete
inline void update(const rtypes::timestep &t)

Update the state of all applied variances. Should be called once per timestep.