annotate TaskManager/kernel/ppe/HTaskInfo.h @ 638:671fca057ad3

hmmmm
author Shinji KONO <kono@ie.u-ryukyu.ac.jp>
date Thu, 19 Nov 2009 18:18:20 +0900
parents d433fc37587d
children bed529c55eda
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
46
f154d9d07a42 *** empty log message ***
gongo
parents:
diff changeset
1 #ifndef INCLUDED_HTASK_INFO
f154d9d07a42 *** empty log message ***
gongo
parents:
diff changeset
2 #define INCLUDED_HTASK_INFO
f154d9d07a42 *** empty log message ***
gongo
parents:
diff changeset
3
498
cb5ecfc5aaa3 double linked HTaskInfo/HTask
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 366
diff changeset
4 #include "Task.h"
307
7075842aa155 clean up include
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 109
diff changeset
5 #include "HTask.h"
46
f154d9d07a42 *** empty log message ***
gongo
parents:
diff changeset
6
498
cb5ecfc5aaa3 double linked HTaskInfo/HTask
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 366
diff changeset
7 class HTaskInfo : public HTask {
cb5ecfc5aaa3 double linked HTaskInfo/HTask
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 366
diff changeset
8
46
f154d9d07a42 *** empty log message ***
gongo
parents:
diff changeset
9 public:
f154d9d07a42 *** empty log message ***
gongo
parents:
diff changeset
10 /* constructor */
498
cb5ecfc5aaa3 double linked HTaskInfo/HTask
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 366
diff changeset
11 HTaskInfo();
cb5ecfc5aaa3 double linked HTaskInfo/HTask
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 366
diff changeset
12
cb5ecfc5aaa3 double linked HTaskInfo/HTask
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 366
diff changeset
13 BASE_NEW_DELETE(HTaskInfo);
46
f154d9d07a42 *** empty log message ***
gongo
parents:
diff changeset
14
f154d9d07a42 *** empty log message ***
gongo
parents:
diff changeset
15 /* functions */
501
4a2c9ff53605 Cell inData/outData DMA removal
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 499
diff changeset
16 HTaskPtr create(int cmd);
636
d433fc37587d Cell Simple Task compiled. but not worked.
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 634
diff changeset
17 HTaskPtr create(int cmd, memaddr rbuf, int rs, memaddr wbuf, int ws);
498
cb5ecfc5aaa3 double linked HTaskInfo/HTask
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 366
diff changeset
18
cb5ecfc5aaa3 double linked HTaskInfo/HTask
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 366
diff changeset
19 void free_(HTaskPtr queue);
46
f154d9d07a42 *** empty log message ***
gongo
parents:
diff changeset
20
498
cb5ecfc5aaa3 double linked HTaskInfo/HTask
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 366
diff changeset
21 void addFirst(HTask* e);
cb5ecfc5aaa3 double linked HTaskInfo/HTask
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 366
diff changeset
22 void addLast(HTask* e);
cb5ecfc5aaa3 double linked HTaskInfo/HTask
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 366
diff changeset
23 HTask* getFirst();
cb5ecfc5aaa3 double linked HTaskInfo/HTask
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 366
diff changeset
24 HTask* getLast();
cb5ecfc5aaa3 double linked HTaskInfo/HTask
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 366
diff changeset
25 int remove(HTask* e);
cb5ecfc5aaa3 double linked HTaskInfo/HTask
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 366
diff changeset
26 HTask* poll();
cb5ecfc5aaa3 double linked HTaskInfo/HTask
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 366
diff changeset
27 void moveToFirst(HTask* e); // or use();
cb5ecfc5aaa3 double linked HTaskInfo/HTask
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 366
diff changeset
28 HTask* get(int index);
499
eacbcdb23986 still fixing...
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 498
diff changeset
29 HTask* find(HTask *task);
498
cb5ecfc5aaa3 double linked HTaskInfo/HTask
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 366
diff changeset
30 int empty();
cb5ecfc5aaa3 double linked HTaskInfo/HTask
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 366
diff changeset
31 void freePool() ;
cb5ecfc5aaa3 double linked HTaskInfo/HTask
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 366
diff changeset
32
cb5ecfc5aaa3 double linked HTaskInfo/HTask
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 366
diff changeset
33 // Iterator
cb5ecfc5aaa3 double linked HTaskInfo/HTask
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 366
diff changeset
34 HTask* getNext(HTask* q) ;
499
eacbcdb23986 still fixing...
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 498
diff changeset
35 int length();
498
cb5ecfc5aaa3 double linked HTaskInfo/HTask
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 366
diff changeset
36
cb5ecfc5aaa3 double linked HTaskInfo/HTask
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 366
diff changeset
37 private:
46
f154d9d07a42 *** empty log message ***
gongo
parents:
diff changeset
38 /* variables */
498
cb5ecfc5aaa3 double linked HTaskInfo/HTask
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 366
diff changeset
39
cb5ecfc5aaa3 double linked HTaskInfo/HTask
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 366
diff changeset
40 static HTaskInfo taskQueuePool;
cb5ecfc5aaa3 double linked HTaskInfo/HTask
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 366
diff changeset
41 HTask* first;
cb5ecfc5aaa3 double linked HTaskInfo/HTask
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 366
diff changeset
42 HTask* last;
46
f154d9d07a42 *** empty log message ***
gongo
parents:
diff changeset
43
f154d9d07a42 *** empty log message ***
gongo
parents:
diff changeset
44 /* functions */
498
cb5ecfc5aaa3 double linked HTaskInfo/HTask
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 366
diff changeset
45 int extend_pool(int num);
cb5ecfc5aaa3 double linked HTaskInfo/HTask
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 366
diff changeset
46 void destroy();
46
f154d9d07a42 *** empty log message ***
gongo
parents:
diff changeset
47 };
f154d9d07a42 *** empty log message ***
gongo
parents:
diff changeset
48
f154d9d07a42 *** empty log message ***
gongo
parents:
diff changeset
49 #endif