2011-04-14 19:43:46 +00:00
|
|
|
#ifndef __ISCHEDULER_H__
|
|
|
|
#define __ISCHEDULER_H__
|
|
|
|
|
|
|
|
#include "Tier1/CTask.h"
|
2011-05-03 11:59:20 +00:00
|
|
|
#include "Tier1/CSemaphore.h"
|
2011-04-14 19:43:46 +00:00
|
|
|
|
|
|
|
namespace cb {
|
|
|
|
class IScheduler {
|
|
|
|
public:
|
|
|
|
virtual void Enable(bool Enabled) = 0;
|
|
|
|
virtual void AddTask(CTask *Task) = 0;
|
|
|
|
virtual void NextTask(void) = 0;
|
|
|
|
virtual CTask *GetCurrentTask(void) = 0;
|
2011-05-03 11:59:20 +00:00
|
|
|
virtual void DispatchAvailableSemaphore(CSemaphore *Semaphore) = 0;
|
2011-04-14 19:43:46 +00:00
|
|
|
};
|
|
|
|
};
|
|
|
|
|
|
|
|
#endif
|