0
|
1 #ifndef _TASKMANAGER_H
|
|
2 #define _TASKMANAGER_H
|
|
3 #include <stdlib.h>
|
|
4 #include "List.h"
|
|
5
|
|
6 typedef List TaskList;
|
1
|
7 typedef uint32_t TaskTypeID;
|
0
|
8
|
|
9 /* C++CeriumでのTaskObjectにあたる */
|
1
|
10 typedef struct _tasktype {
|
|
11 //Taskrun run;
|
0
|
12 char *name;
|
|
13 enum cpu cputype;
|
1
|
14 } TaskType;
|
0
|
15
|
1
|
16 /* C++CeriumでのHTaskにあたるのかな */
|
0
|
17 typedef struct _Task {
|
1
|
18 TaskType tasktype;
|
0
|
19 unsigned int id; // is it needed?
|
|
20
|
|
21 void *rbuff;
|
|
22 void *wbuff;
|
|
23 size_t rsize;
|
|
24 size_t wsize;
|
|
25
|
|
26 TaskList waiter; // List of tasks waiting for me :-P
|
|
27 TaskList waitee; // List of tasks keep me waiting :-(
|
|
28 } Task;
|
|
29
|
1
|
30 /* defined in USERs space. */
|
|
31 /* but generated by Cerium automatically. */
|
|
32 extern int max_tasktypes;
|
|
33 extern TaskType taskTypes[];
|
0
|
34
|
|
35 #endif /* !_TASKMANAGER_H */
|