Mercurial > hg > Members > kono > Cerium
comparison include/TaskManager/Scheduler.h @ 42:aa11038dbdc1
*** empty log message ***
author | gongo |
---|---|
date | Thu, 14 Feb 2008 18:27:37 +0900 |
parents | |
children | 7927e00fb8e2 |
comparison
equal
deleted
inserted
replaced
41:68fb5bfee6b7 | 42:aa11038dbdc1 |
---|---|
1 #ifndef INCLUDED_SCHEDULER | |
2 #define INCLUDED_SCHEDULER | |
3 | |
4 #ifndef INCLUDED_TASK | |
5 # include "task.h" | |
6 #endif | |
7 | |
8 #ifndef INCLUDED_DMA_MANAGER | |
9 # include "DmaManager.h" | |
10 #endif | |
11 | |
12 #ifndef INCLUDED_SCHED_TASK_BASE | |
13 # include "SchedTaskBase.h" | |
14 #endif | |
15 | |
16 class SchedTaskBase; | |
17 | |
18 class Scheduler { | |
19 public: | |
20 virtual ~Scheduler(void) {} | |
21 | |
22 /* variables */ | |
23 TaskListPtr listBuf[2]; | |
24 void *readBuf[2]; | |
25 void *writeBuf[2]; | |
26 int listBufFlg; | |
27 int readBufFlg; | |
28 int writeBufFlg; | |
29 | |
30 DmaManager* connector; | |
31 | |
32 SchedTaskBase* task1; | |
33 SchedTaskBase* task2; | |
34 SchedTaskBase* task3; | |
35 | |
36 /* functions */ | |
37 void init(void); | |
38 void run(void); | |
39 virtual void init_impl(void) = 0; | |
40 virtual void finish(void) = 0; | |
41 | |
42 TaskListPtr get_curListBuf(void); | |
43 void* get_curReadBuf(void); | |
44 void* get_curWriteBuf(void); | |
45 }; | |
46 | |
47 #endif |