Scheduler
|
#include <edfDiscipline.h>
Public Member Functions | |
EdfDiscipline (std::shared_ptr< SchedulerConfiguration > c) | |
~EdfDiscipline () | |
![]() | |
PriorityDiscipline (std::shared_ptr< SchedulerConfiguration > c) | |
virtual | ~PriorityDiscipline () |
std::shared_ptr< Process > | selectNextTask (Queue *readyQueue, std::shared_ptr< Process > running, unsigned int) |
select the best task to run at this point. More... | |
virtual bool | preempts (TriggeringEvent trigger) |
returns true if the argument is a scheduling trigger for this specific discipline More... | |
![]() | |
virtual | ~SchedulingDiscipline () |
SchedulingDiscipline (std::shared_ptr< SchedulerConfiguration > c) | |
virtual void | end () |
Static Public Attributes | |
static constexpr const char * | configKey = "edfDiscipline" |
Protected Member Functions | |
virtual std::string | getName () |
returns the name of that discipline More... | |
PriorityDiscipline::ComparatorPointer | getComparator () override |
return a function pointer to a function that provides comparison of tasks' priorities More... | |
![]() | |
virtual void | updatePriorities (Queue *readyQueue, std::shared_ptr< Process > running) |
sets the correct priorities to the tasks, especially if dynamic priorities are used. More... | |
Additional Inherited Members | |
![]() | |
typedef bool(* | ComparatorPointer) (std::shared_ptr< Process >, std::shared_ptr< Process >) |
![]() | |
std::shared_ptr< SchedulerConfiguration > | conf {nullptr} |
Definition at line 20 of file edfDiscipline.h.
|
inline |
Definition at line 23 of file edfDiscipline.h.
|
inline |
Definition at line 24 of file edfDiscipline.h.
|
overrideprotectedvirtual |
return a function pointer to a function that provides comparison of tasks' priorities
Reimplemented from Scheduler::PriorityDiscipline.
Definition at line 24 of file edfDiscipline.cpp.
|
protectedvirtual |
returns the name of that discipline
Implements Scheduler::PriorityDiscipline.
Definition at line 18 of file edfDiscipline.cpp.
|
static |
Definition at line 25 of file edfDiscipline.h.