![]() |
helics
3.3.0
|
#include <TimeDependencies.hpp>
class for managing a set of dependencies
|
default |
default constructor
int helics::TimeDependencies::activeDependencyCount | ( | ) | const |
get a count of the active dependencies
Referenced by helics::BaseTimeCoordinator::dependencyCount().
bool helics::TimeDependencies::addDependency | ( | GlobalFederateId | id | ) |
insert a dependency into the structure
Referenced by helics::BaseTimeCoordinator::addDependency().
bool helics::TimeDependencies::addDependent | ( | GlobalFederateId | id | ) |
update the info about a dependency based on a message
Referenced by helics::BaseTimeCoordinator::addDependent().
|
inline |
iterator to first dependency
Referenced by helics::BaseTimeCoordinator::disconnect(), and helics::TimeCoordinator::localError().
|
inline |
const iterator to first dependency
|
inline |
const iterator to first dependency
|
inline |
const iterator to first dependency
bool helics::TimeDependencies::checkAllPastExec | ( | bool | iterating | ) | const |
check if all dependencies have passed exec mode and are requesting time
Referenced by helics::TimeCoordinator::checkExecEntry().
std::pair< int, std::string > helics::TimeDependencies::checkForIssues | ( | bool | waiting | ) | const |
check the dependency set for any issues
Referenced by helics::BaseTimeCoordinator::enteringExecMode(), and helics::TimeCoordinator::enteringExecMode().
bool helics::TimeDependencies::checkIfReadyForExecEntry | ( | bool | iterating, |
bool | waiting | ||
) | const |
check if the dependencies would allow entry to exec mode
Referenced by helics::ForwardingTimeCoordinator::checkExecEntry(), helics::GlobalTimeCoordinator::checkExecEntry(), and helics::TimeCoordinator::checkExecEntry().
bool helics::TimeDependencies::checkIfReadyForTimeGrant | ( | bool | iterating, |
Time | desiredGrantTime, | ||
GrantDelayMode | delayMode | ||
) | const |
check if the dependencies would allow a grant of the time
iterating | true if the object is iterating |
desiredGrantTime | the time to check for granting |
References helics::cBigTime.
Referenced by helics::TimeCoordinator::checkTimeGrant().
|
inline |
check if there are no dependencies
Referenced by helics::BaseTimeCoordinator::disconnect(), helics::BaseTimeCoordinator::empty(), helics::BaseTimeCoordinator::enteringExecMode(), helics::TimeCoordinator::localError(), and helics::TimeCoordinator::timeRequest().
|
inline |
iterator to end point
|
inline |
const iterator to end point
DependencyInfo * helics::TimeDependencies::getDependencyInfo | ( | GlobalFederateId | id | ) |
get a pointer to the dependency information for a particular object
const DependencyInfo * helics::TimeDependencies::getDependencyInfo | ( | GlobalFederateId | id | ) | const |
get a pointer to the dependency information for a particular object
Referenced by helics::BaseTimeCoordinator::addDependency(), helics::TimeCoordinator::checkExecEntry(), helics::BaseTimeCoordinator::getDependencyInfo(), and updateTime().
GlobalFederateId helics::TimeDependencies::getMinDependency | ( | ) | const |
get a count of the active dependencies
References helics::cBigTime.
Referenced by helics::BaseTimeCoordinator::getMinDependency().
bool helics::TimeDependencies::hasActiveTimeDependencies | ( | ) | const |
check if there are active dependencies
Referenced by helics::BaseTimeCoordinator::hasActiveTimeDependencies().
bool helics::TimeDependencies::isDependency | ( | GlobalFederateId | ofed | ) | const |
return true if the given federate is already a dependency
Referenced by helics::BaseTimeCoordinator::isDependency().
bool helics::TimeDependencies::isDependent | ( | GlobalFederateId | ofed | ) | const |
return true if the given federate is already a dependent
void helics::TimeDependencies::removeDependency | ( | GlobalFederateId | id | ) |
remove dependency from consideration
Referenced by helics::BaseTimeCoordinator::removeDependency(), and helics::TimeCoordinator::removeDependency().
void helics::TimeDependencies::removeDependent | ( | GlobalFederateId | id | ) |
remove dependent from consideration
Referenced by helics::BaseTimeCoordinator::removeDependent(), and helics::TimeCoordinator::removeDependent().
void helics::TimeDependencies::removeInterdependence | ( | GlobalFederateId | id | ) |
remove an interdependency from consideration
void helics::TimeDependencies::resetDependentEvents | ( | helics::Time | grantTime | ) |
reset the tdeMin
Referenced by helics::TimeCoordinator::timeRequest().
void helics::TimeDependencies::resetIteratingExecRequests | ( | ) |
reset the iterative exec requests to prepare for the next iteration
void helics::TimeDependencies::resetIteratingTimeRequests | ( | helics::Time | requestTime | ) |
reset iterative time requests to prepare for next iteration
requestTime | the time that is being iterated |
|
inline |
get the number of dependencies
Referenced by helics::BaseTimeCoordinator::disconnect(), helics::TimeCoordinator::localError(), and helics::TimeCoordinator::updateTimeFactors().
DependencyProcessingResult helics::TimeDependencies::updateTime | ( | const ActionMessage & | m | ) |
update the info about a dependency based on a message
References getDependencyInfo(), and helics::ActionMessage::source_id.
Referenced by helics::BaseTimeCoordinator::processDependencyUpdateMessage(), and helics::BaseTimeCoordinator::processTimeMessage().
bool helics::TimeDependencies::verifySequenceCounter | ( | Time | tmin, |
std::int32_t | sq | ||
) |
verify that all the sequence Counters match
Referenced by helics::GlobalTimeCoordinator::updateTimeFactors().