3
|
1 #ifndef INCLUDED_TASK_MANAGER_IMPL
|
|
2 #define INCLUDED_TASK_MANAGER_IMPL
|
|
3
|
42
|
4 #ifndef INCLUDED_MAIL_MANAGER
|
|
5 # include "MailManager.h"
|
|
6 #endif
|
|
7
|
|
8 #ifndef INCLUDED_MAIN_SCHEDULER
|
|
9 # include "MainScheduler.h"
|
|
10 #endif
|
|
11
|
54
|
12 #ifndef INCLUDED_BUFFER_MANAGER
|
|
13 # include "BufferManager.h"
|
|
14 #endif
|
|
15
|
3
|
16 class TaskManagerImpl {
|
|
17 public:
|
|
18 /* constructor */
|
|
19 TaskManagerImpl(int num = 1);
|
50
|
20 virtual ~TaskManagerImpl(void);
|
3
|
21
|
|
22 /* variables */
|
|
23 int machineNum;
|
45
|
24
|
42
|
25 MailManager *mailManager;
|
|
26 MainScheduler *scheduler;
|
58
|
27 BufferManager *bufferManager;
|
3
|
28
|
|
29 /* functions */
|
42
|
30 virtual void init(void);
|
|
31 void run(void);
|
65
|
32 virtual MailQueuePtr mail_check(MailQueuePtr mail_list);
|
14
|
33
|
54
|
34 HTaskPtr create_task(int cmd, int siz, DmaBuffer *in_addr,
|
|
35 DmaBuffer *out_addr, void (*func)(void));
|
3
|
36 void set_task_depend(HTaskPtr master, HTaskPtr slave);
|
42
|
37 TaskListPtr set_task(void);
|
18
|
38 virtual void spawn_task(HTaskPtr);
|
65
|
39 void set_task_cpu(HTaskPtr, CPU_TYPE);
|
54
|
40
|
|
41 // Fixme
|
|
42 // ���饤���ȤȤ����������Ѥ� new �Ȥ����ۤȤ���etc...
|
|
43 DmaBuffer* allocate(int size);
|
3
|
44 };
|
|
45 #endif
|