21#ifndef HEDGEHOG_SCHEDULER_H 
   22#define HEDGEHOG_SCHEDULER_H 
   27#include "../../core/abstractions/base/node/node_abstraction.h" 
   43  [[nodiscard]] 
virtual std::unique_ptr<Scheduler> 
create() 
const = 0;
 
   48  virtual void spawnThreads(std::set<core::abstraction::NodeAbstraction *> 
const &cores, 
bool waitForInitialization) = 0;
 
Scheduler abstraction to manage graph's threads.
virtual void joinAll()=0
Method waiting for all graph's threads termination, called when Graph::waitForTermination() is called...
virtual ~Scheduler()=default
Scheduler default destructor.
virtual void spawnThreads(std::set< core::abstraction::NodeAbstraction * > const &cores, bool waitForInitialization)=0
Spawn the threads of a graph.
Scheduler()=default
Scheduler default constructor.
virtual std::unique_ptr< Scheduler > create() const =0
Definition of virtual constructor.