15#include <unordered_map>
23 :
Scheduler(logLevel), mOutMeasurementFile(outMeasurementFile) {}
26 const Edges &outEdges);
33 std::unordered_map<size_t, std::vector<std::chrono::nanoseconds>>
35 std::vector<std::chrono::nanoseconds> mStepMeasurements;
spdlog::level::level_enum Level
Scheduler(CPS::Logger::Level logLevel=CPS::Logger::Level::off)
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.
SequentialScheduler(String outMeasurementFile=String(), CPS::Logger::Level logLevel=CPS::Logger::Level::info)
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.