|
|
||||||
|
sp_pexecutor.cpp
Go to the documentation of this file.
130 void ParallelExecutor::DoWrite(TokenWriter& rTw, const std::string& rLabel, const Type* pContext) const {
141 void ParallelExecutor::DoXWrite(TokenWriter& rTw, const std::string& rLabel, const Type* pContext) const {
151 FD_DG("vGenerator(" << this << ")::DoXWrite(..): section " << btag.StringValue() << " #" << Size());
175 void ParallelExecutor::DoRead(TokenReader& rTr, const std::string& rLabel, const Type* pContext) {
302 FD_DX("ParalelExecutor(" << this << ")::EnabledEventTime(" << event << "):"<< retInterval.Str());
314 FD_DX("ParalelExecutor(" << this << ")::EnabledGuardTime(" << event << "):"<< retInterval.Str());
324 const ParallelExecutor::ParallelTimedState& ParallelExecutor::CurrentParallelTimedState(void) const {
330 FD_DX("ParalelExecutor(" << this << ")::CurrentParallelState(ptstate): set " << PTSStr(ptstate));
526 retEventSet.EraseSet( xit->Generator().Alphabet() - xit->Generator().ActiveEventSet(stateVec[i]));
551 void ParallelExecutor::ParallelTimedState::DoWrite(TokenWriter& rTw, const std::string& rLabel, const Type* pContext) const {
557 FD_DC("ParallelExecutor::ParallelTimedState::DoWrite(): section " << rLabel << " context " << pContext);
600 void ParallelExecutor::ParallelTimedState::DoRead(TokenReader& rTr, const std::string& rLabel, const Type* pContext) {
#define FD_DC(message) Debug: optional report on container operations. Definition: cfl_definitions.h:153 #define FAUDES_TYPE_IMPLEMENTATION(ftype, ctype, cbase) faudes type implementation macros, overall Definition: cfl_types.h:946 An Executor is a timed generator that maintains a current state. Definition: sp_executor.h:93 void Generator(const TimedGenerator &rGen) Initialise from TimedGenerator. Definition: sp_executor.cpp:46 virtual void InsertSet(const NameSet &rOtherSet) Inserts all elements of rOtherSet. Definition: cfl_nameset.cpp:295 void EraseSet(const NameSet &rOtherSet) Erase elements specified by rOtherSet. Definition: cfl_nameset.cpp:352 Typedef for parallel timed state, incl token io. Definition: sp_pexecutor.h:76 virtual void DoWrite(TokenWriter &rTw, const std::string &rLabel="", const Type *pContext=0) const Write configuration data of this object to TokenWriter. Definition: sp_pexecutor.cpp:551 virtual void DoRead(TokenReader &rTr, const std::string &rLabel="", const Type *pContext=0) Read configuration data of this object from TokenReader. Definition: sp_pexecutor.cpp:600 Synchronized parallel execution of TimedGenerators. Definition: sp_pexecutor.h:64 std::string TEStr(const TimedEvent &tevent) const Pretty printable string of timed event. Definition: sp_pexecutor.cpp:493 virtual void DoWrite(TokenWriter &rTw, const std::string &rLabel="", const Type *pContext=0) const Write to TokenWriter, see also public wrappers Write() in faudes::Type. Definition: sp_pexecutor.cpp:130 std::vector< Executor >::iterator iterator Internal non-const iterator. Definition: sp_pexecutor.h:578 void ComputeEnabledNonConst(void) Compute enabled core routine (non const) Definition: sp_pexecutor.cpp:240 std::string PSStr(const ParallelState &pstate) const Pretty printable string of parallel state. Definition: sp_pexecutor.cpp:480 const EventSet & EnabledEvents() const Get events that are enabled at current (timed) state. Definition: sp_pexecutor.cpp:277 const ParallelState & CurrentParallelState(void) const Get current discrete state vector of the ParallelExecutor. Definition: sp_pexecutor.cpp:319 void ComputeEnabled(void) const Compute enabled events and enabled interval (fake const) Definition: sp_pexecutor.cpp:234 virtual bool ExecuteTime(Time::Type duration) Let time pass without executing a transition. Definition: sp_pexecutor.cpp:364 virtual void DoRead(TokenReader &rTr, const std::string &rLabel="", const Type *pContext=0) Reads parallel executor from TokenReader, see also public wrappers Read() in faudes::Type. Definition: sp_pexecutor.cpp:175 EventSet ActiveEventSet(const ParallelState &stateVec) const Get events that are active in all TimedGenerators. Definition: sp_pexecutor.cpp:521 const ParallelTimedState & CurrentParallelTimedState(void) const Get current state of the ParallelExecutor. Definition: sp_pexecutor.cpp:324 int CurrentStep(void) const Get logical time, ie number of transitions so far,. Definition: sp_pexecutor.cpp:440 std::string PTSStr(const ParallelTimedState &ptstate) const Pretty printable string of timed parallel state. Definition: sp_pexecutor.cpp:453 void Insert(const std::string &rFileName) Add a TimedGenerator from file. Definition: sp_pexecutor.cpp:91 std::vector< Executor >::const_iterator Iterator Read-only access to individual executors. Definition: sp_pexecutor.h:180 bool Active(Idx ev, const ParallelState &stateVec) const Test whether an event is active in a given discrete state. Definition: sp_pexecutor.cpp:537 const TimeInterval & EnabledInterval() const Get an interval on which the set of enabled events is constant. Definition: sp_pexecutor.cpp:289 const EventSet & DisabledEvents() const Get events that are disabled at current (timed) state. Definition: sp_pexecutor.cpp:283 std::string CurrentParallelTimedStateStr(void) const Pretty printable string of current state. Definition: sp_pexecutor.cpp:511 virtual void DoWriteGenerators(TokenWriter &rTw) const Write generator files section to TokenWriter. Definition: sp_pexecutor.cpp:159 const TimeInterval & EnabledTime() const Get maximal duration that can pass without executing an event. Definition: sp_pexecutor.cpp:270 TimeInterval EnabledGuardTime(Idx event) const Get interval on which the respective guard is satisfied. Definition: sp_pexecutor.cpp:307 std::string CurrentParallelStateStr(void) const Pretty printable string of parallel state Definition: sp_pexecutor.cpp:516 virtual void DoReadGenerators(TokenReader &rTr) Reads generator files section from TokenReader. Definition: sp_pexecutor.cpp:194 std::string CStr(Idx clock) const Pretty printable string of clock name. Definition: sp_pexecutor.cpp:505 TimeInterval EnabledEventTime(Idx event) const Get interval on which the specified event is enabled. Definition: sp_pexecutor.cpp:295 bool In(Time::Type time) const Test whether a point satisfies interval. Definition: tp_timeinterval.cpp:42 void Intersect(const TimeInterval &rOtherInterval) Intersect this interval with other interval. Definition: tp_timeinterval.cpp:87 A TokenReader reads sequential tokens from a file or string. Definition: cfl_tokenreader.h:63 bool Eos(const std::string &rLabel) Peek a token and check whether it ends the specified section. Definition: cfl_tokenreader.cpp:439 void ReadEnd(const std::string &rLabel) Close the current section by matching the previous ReadBegin(). Definition: cfl_tokenreader.cpp:364 void ReadBegin(const std::string &rLabel) Open a section by specified label. Definition: cfl_tokenreader.cpp:249 A TokenWriter writes sequential tokens to a file, a string or stdout. Definition: cfl_tokenwriter.h:51 const std::string & StringValue(void) const Get string value of a name token. Definition: cfl_token.cpp:177 Base class of all libFAUDES objects that participate in the run-time interface. Definition: cfl_types.h:239 void Read(const std::string &rFileName, const std::string &rLabel="", const Type *pContext=0) Read configuration data from file with label specified. Definition: cfl_types.cpp:261 virtual Type & Assign(const Type &rSrc) Assign configuration data from other object. Definition: cfl_types.cpp:77 std::string ExtractDirectory(const std::string &rFullPath) Extract directory from full path. Definition: cfl_helper.cpp:262 std::string PrependDirectory(const std::string &rDirectory, const std::string &rFileName) Construct full path from directory and filename. Definition: cfl_helper.cpp:309 Executor for multiple synchronized timed generators std::map< Idx, Time::Type > ClockValue Definition: sp_executor.h:103 libFAUDES 2.32b --- 2024.03.01 --- c++ api documentaion by doxygen |