10 #ifndef CORAL_BUS_EXECUTION_MANAGER_HPP 11 #define CORAL_BUS_EXECUTION_MANAGER_HPP 16 #include <system_error> 20 #include "boost/noncopyable.hpp" 22 #include "coral/config.h" 74 , variableSettings(variableSettings_)
99 const coral::master::ExecutionOptions& options = coral::master::ExecutionOptions{});
136 ReconstituteHandler onComplete,
171 ReconfigureHandler onComplete,
185 StepHandler onComplete,
201 AcceptStepHandler onComplete,
216 #endif // header guard Defines the coral::bus::SlaveSetup class.
std::function< void(const std::error_code &)> StepHandler
Completion handler type for the Step() function.
Definition: execution_manager.hpp:175
std::string name
A name for the slave, unique in the execution.
Definition: execution_manager.hpp:49
Manages and coordinates all participants in an execution.
Definition: execution_manager.hpp:83
Contains the coral::net::Reactor class and related functionality.
Main module header for coral::net.
AddedSlave(coral::net::SlaveLocator locator_, std::string name_)
Constructor which sets the locator and name fields.
Definition: execution_manager.hpp:55
std::function< void(const std::error_code &)> ReconfigureHandler
Completion handler type for Reconfigure().
Definition: execution_manager.hpp:140
AddedSlave() CORAL_NOEXCEPT
Default constructor.
Definition: execution_manager.hpp:52
Configuration options for an execution.
Defines the coral::bus::SlaveController class.
std::function< void(const std::error_code &)> AcceptStepHandler
Completion handler type for the AcceptStep() function.
Definition: execution_manager.hpp:189
coral::net::SlaveLocator locator
The slave's network location.
Definition: execution_manager.hpp:46
std::function< void(const std::error_code &, coral::model::SlaveID, std::size_t)> SlaveReconfigureHandler
Per-slave completion handler type for Reconfigure()
Definition: execution_manager.hpp:144
Definition: variable_io.hpp:28
std::function< void(const std::error_code &, coral::model::SlaveID)> SlaveAcceptStepHandler
Completion handler type for the AcceptStep() function of individual slaves.
Definition: execution_manager.hpp:196
std::function< void(const std::error_code &)> ReconstituteHandler
Completion handler type for Reconstitute().
Definition: execution_manager.hpp:104
std::function< void(const std::error_code &, coral::model::SlaveID)> SlaveStepHandler
Completion handler type for the Step() function of individual slaves.
Definition: execution_manager.hpp:179
double TimeDuration
The type used to specify (simulation) time durations.
Definition: model.hpp:56
Used in ExecutionManager::Reconfigure() to specify variable value and connection changes.
Definition: execution_manager.hpp:64
An implementation of the reactor pattern.
Definition: reactor.hpp:41
Implementation class for coral::bus::ExecutionManager.
Definition: execution_manager_private.hpp:50
Used in ExecutionManager::Reconstitute() to specify a slave which should be added to the simulation...
Definition: execution_manager.hpp:43
std::function< void(const std::error_code &, coral::model::SlaveID, std::size_t)> SlaveReconstituteHandler
Per-slave completion handler type for Reconstitute()
Definition: execution_manager.hpp:108
Class which represents the network location(s) of a slave.
Definition: net.hpp:292
Main module header for coral::model.