helics
3.5.2
|
#include <TimeoutMonitor.h>
Public Member Functions | |
void | tick (CommonCore *core) |
void | tick (CoreBroker *brk) |
void | pingReply (const ActionMessage &cmd, CoreBroker *brk=nullptr) |
void | setTimeout (std::chrono::milliseconds to) |
void | reset () |
void | pingSub (CoreBroker *brk) |
void | setParentId (GlobalBrokerId parent_id) |
void | disableParentPing (bool value=true) |
class to handle timeouts and other issues for cores and brokers
|
inline |
set the "pingability" of a parent connection
void helics::TimeoutMonitor::pingReply | ( | const ActionMessage & | cmd, |
CoreBroker * | brk = nullptr |
||
) |
void helics::TimeoutMonitor::pingSub | ( | CoreBroker * | brk | ) |
ping all a brokers sub connections
References helics::BrokerBase::addActionMessage(), helics::ActionMessage::dest_id, helics::BrokerBase::global_broker_id_local, helics::BrokerBase::global_id, helics::indicator_flag, helics::ActionMessage::messageID, helics::setActionFlag(), helics::ActionMessage::source_id, and helics::CoreBroker::transmit().
Referenced by tick().
void helics::TimeoutMonitor::reset | ( | ) |
reset the monitor to initial conditions
References helics::linkConnection::waitingForPingReply.
|
inline |
set the parent id
|
inline |
set the overall timeout for the connection monitor
void helics::TimeoutMonitor::tick | ( | CommonCore * | core | ) |
tick function for a core, executes one tick
References helics::BrokerBase::addActionMessage(), helics::ActionMessage::dest_id, helics::ERROR_LEVEL, helics::BrokerBase::ERRORED, helics::CommonCore::getIdentifier(), helics::BrokerBase::global_broker_id_local, helics::BrokerBase::higher_broker_id, helics::CommonCore::isConnected(), helics::ActionMessage::messageID, helics::parent_broker_id, helics::CommonCore::processCommand(), helics::BrokerBase::sendToLogger(), helics::ActionMessage::source_id, helics::BrokerBase::TERMINATED, helics::CommonCore::transmit(), and helics::linkConnection::waitingForPingReply.
void helics::TimeoutMonitor::tick | ( | CoreBroker * | brk | ) |
tick function for a broker, executes one tick
References helics::BrokerBase::addActionMessage(), helics::ActionMessage::dest_id, helics::ERROR_LEVEL, helics::BrokerBase::ERRORED, helics::CoreBroker::getIdentifier(), helics::BrokerBase::global_broker_id_local, helics::BrokerBase::higher_broker_id, helics::CoreBroker::isConnected(), helics::CoreBroker::isRoot(), helics::parent_broker_id, pingSub(), helics::BrokerBase::sendToLogger(), helics::ActionMessage::source_id, helics::BrokerBase::TERMINATED, helics::CoreBroker::transmit(), and helics::linkConnection::waitingForPingReply.