Scheduler
Public Member Functions | Static Public Attributes | Protected Member Functions | List of all members
Scheduler::EdfDiscipline Class Reference

#include <edfDiscipline.h>

Inheritance diagram for Scheduler::EdfDiscipline:
Scheduler::PriorityDiscipline Scheduler::SchedulingDiscipline

Public Member Functions

 EdfDiscipline (std::shared_ptr< SchedulerConfiguration > c)
 
 ~EdfDiscipline ()
 
- Public Member Functions inherited from Scheduler::PriorityDiscipline
 PriorityDiscipline (std::shared_ptr< SchedulerConfiguration > c)
 
virtual ~PriorityDiscipline ()
 
std::shared_ptr< ProcessselectNextTask (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...
 
- Public Member Functions inherited from Scheduler::SchedulingDiscipline
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...
 
- Protected Member Functions inherited from Scheduler::PriorityDiscipline
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

- Public Types inherited from Scheduler::PriorityDiscipline
typedef bool(* ComparatorPointer) (std::shared_ptr< Process >, std::shared_ptr< Process >)
 
- Protected Attributes inherited from Scheduler::SchedulingDiscipline
std::shared_ptr< SchedulerConfigurationconf {nullptr}
 

Detailed Description

Definition at line 20 of file edfDiscipline.h.

Constructor & Destructor Documentation

Scheduler::EdfDiscipline::EdfDiscipline ( std::shared_ptr< SchedulerConfiguration c)
inline

Definition at line 23 of file edfDiscipline.h.

Scheduler::EdfDiscipline::~EdfDiscipline ( )
inline

Definition at line 24 of file edfDiscipline.h.

Member Function Documentation

PriorityDiscipline::ComparatorPointer EdfDiscipline::getComparator ( )
overrideprotectedvirtual

return a function pointer to a function that provides comparison of tasks' priorities

Returns
a pointer to a function taking two processes as arguments, and returning a boolean value. The return value is true if the first argument task's priority is higher than the second one.

Reimplemented from Scheduler::PriorityDiscipline.

Definition at line 24 of file edfDiscipline.cpp.

std::string EdfDiscipline::getName ( )
protectedvirtual

returns the name of that discipline

Implements Scheduler::PriorityDiscipline.

Definition at line 18 of file edfDiscipline.cpp.

Member Data Documentation

constexpr const char* Scheduler::EdfDiscipline::configKey = "edfDiscipline"
static

Definition at line 25 of file edfDiscipline.h.


The documentation for this class was generated from the following files: