11 #include <dpsim/Scheduler.h>
15 #include <unordered_map>
22 CPS::Logger::Level logLevel = CPS::Logger::Level::info)
23 :
Scheduler(logLevel), mOutMeasurementFile(outMeasurementFile) {}
26 const Edges &outEdges);
27 void step(Real time, Int timeStepCount);
31 CPS::Task::List mSchedule;
33 std::unordered_map<size_t, std::vector<std::chrono::nanoseconds>>
35 std::vector<std::chrono::nanoseconds> mStepMeasurements;
36 CPS::String mOutMeasurementFile;
std::unordered_map< CPS::Task::Ptr, std::deque< CPS::Task::Ptr > > Edges
void stop()
Called on simulation stop to reliably clean up e.g. running helper threads.
void step(Real time, Int timeStepCount)
Performs a single simulation step.
void createSchedule(const CPS::Task::List &tasks, const Edges &inEdges, const Edges &outEdges)
Creates the schedule for the given dependency graph.