/* * include/framework/interface/Scheduler.h * * Copyright (C) 2023 Douglas B. Rumbaugh * * Distributed under the Modified BSD License. * */ #pragma once #include "framework/scheduling/Task.h" template concept SchedulerInterface = requires(S s, size_t i, void *vp, de::Job j) { {S(i, i)}; {s.schedule_job(j, i, vp, i)} -> std::convertible_to; {s.shutdown()}; {s.print_statistics()}; };