#include <cons.h>
Public Member Functions | |
void | initSync () |
Initialize synchronization strategy type (optimistic or conservative). | |
virtual void | Step () |
Strategy-specific forward execution step. | |
POSE_TimeType | SafeTime () |
Calculate safe time (earliest time at which object can generate events). | |
Protected Member Functions | |
virtual void | CancelEvents () |
Strategy-specific event cancellation. |
Definition at line 8 of file cons.h.
void con::CancelEvents | ( | ) | [protected, virtual] |
Strategy-specific event cancellation.
Reimplemented from strat.
Definition at line 46 of file cons.C.
References eventQueue::back(), sim::cancels, CkExit(), eventQueue::currentPtr, eventQueue::DeleteEvent(), EqHeap::DeleteEvent(), Event::done, strat::eq, eventQueue::eqh, CancelNode::evID, Event::evID, PVT::getGVT(), CancelList::GetItem(), CancelList::IsEmpty(), strat::localPVT, Event::next, strat::parent, CancelList::RemoveItem(), eventQueue::ShiftEvent(), CancelNode::timestamp, and Event::timestamp.
Referenced by Step().
void con::initSync | ( | ) | [inline, virtual] |
Initialize synchronization strategy type (optimistic or conservative).
Reimplemented from strat.
Definition at line 12 of file cons.h.
References strat::parent, and sim::sync.
void con::Step | ( | ) | [virtual] |
Strategy-specific forward execution step.
Code here MUST be overridden, but this gives a basic idea of how a forward execution step should go. Strategies must determine if it is safe to execute an event.
Reimplemented from strat.
Definition at line 7 of file cons.C.
References CancelEvents(), sim::cancels, strat::currentEvent, eventQueue::currentPtr, localStat::Do(), Event::done, sim::DOs, strat::eq, Event::fnIdx, PVT::getGVT(), CancelList::IsEmpty(), strat::localPVT, strat::localStats, Event::msg, strat::parent, pose_config, sim::ResolveFn(), eventQueue::ShiftEvent(), POSE_Config::stats, localStat::SwitchTimer(), and Event::timestamp.
POSE_TimeType con::SafeTime | ( | ) | [inline, virtual] |
Calculate safe time (earliest time at which object can generate events).
Reimplemented from strat.
Definition at line 14 of file cons.h.
References sim::cancels, eventQueue::currentPtr, strat::eq, CancelList::getEarliest(), PVT::getGVT(), strat::localPVT, rep::OVT(), strat::parent, POSE_UnsetTS, Event::timestamp, and strat::userObj.