struct
#include <src/vt/termination/term_action.h>
TermAction
Base classes
- struct TermTerminated
Derived classes
- struct TerminationDetector
- Detect global termination and of subsets of work.
Public types
- struct ActionMsg
- using TermStateType = TermState
- using ActionVecType = std::vector<ActionType>
- using ActionContType = std::unordered_map<EpochType, ActionVecType>
- using CallableActionType = std::unique_ptr<CallableBase>
- using CallableVecType = std::unordered_map<EpochType, std::vector<CallableActionType>>
- using CallableContType = std::unordered_map<EpochType, CallableVecType>
- using EpochActionContType = std::unordered_map<EpochType, ActionContType>
- using EpochStateType = std::unordered_map<EpochType, TermStateType>
Public static functions
- static void runActions(ActionMsg* msg)
Constructors, destructors, conversion operators
- TermAction() defaulted
- ~TermAction() defaulted virtual
Public functions
- void addDefaultAction(ActionType action)
- void addAction(ActionType action)
- void addAction(EpochType const& epoch, ActionType action)
- void addActionEpoch(EpochType const& epoch, ActionType action)
-
template<typename Callable>void addActionUnique(EpochType const& epoch, Callable&& c)
- auto getCurrentEpoch() const -> EpochType
- void produceOn(EpochType epoch) const
Protected functions
- void queueActions(EpochType epoch)
- void triggerAllEpochActions(EpochType epoch, EpochType encapsulated_epoch)
- void afterAddEpochAction(EpochType const& epoch)