$darkmode
engine::Coordinator Class Reference

#include <coordinator.hpp>

Public Member Functions

const std::vector< HistoryTrigger > & history () const
 
void register_action (const std::string &key, cloe::ActionFactoryPtr &&af)
 
void register_event (const std::string &key, cloe::EventFactoryPtr &&ef, std::shared_ptr< cloe::Callback > storage)
 
std::shared_ptr< cloe::TriggerRegistrartrigger_registrar (cloe::Source s)
 
void enroll (cloe::Registrar &r)
 
cloe::Logger logger () const
 
cloe::Duration process (const cloe::Sync &)
 

Protected Member Functions

cloe::ActionPtr make_action (const cloe::Conf &c) const
 
cloe::EventPtr make_event (const cloe::Conf &c) const
 
cloe::TriggerPtr make_trigger (cloe::Source s, const cloe::Conf &c) const
 
void queue_trigger (cloe::Source s, const cloe::Conf &c)
 
void queue_trigger (cloe::TriggerPtr &&t)
 
void execute_trigger (cloe::TriggerPtr &&t, const cloe::Sync &s)
 

Protected Attributes

friend TriggerRegistrar
 

Detailed Description

Coordinator manages the set of available triggers as well as the concrete list of active trigger events.

Before it can be configured, it is important that all simulators, components, controllers, etc. have registered their triggers and actions.

Member Function Documentation

◆ process()

Duration engine::Coordinator::process ( const cloe::Sync sync)

Process any incoming triggers, clear the buffer, and trigger time-based events.

Here is the call graph for this function:

The documentation for this class was generated from the following files: