annotate TaskManager/kernel/ppe/TaskList.h @ 970:1a4849b2acad draft

change pipeline and TaskArray fast
author Yutaka Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
date Thu, 26 Aug 2010 20:38:06 +0900
parents 338523ff6986
children 8cf62aea798f
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
109
028ffc9c0375 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
1 #ifndef INCLUDED_TASKLIST
028ffc9c0375 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
2 #define INCLUDED_TASKLIST
028ffc9c0375 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
3
301
7f991471d43f remove deprecated source. not work.
tkaito@localhost.localdomain
parents: 244
diff changeset
4 #include "base.h"
7f991471d43f remove deprecated source. not work.
tkaito@localhost.localdomain
parents: 244
diff changeset
5 #include "Task.h"
109
028ffc9c0375 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
6
028ffc9c0375 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
7
895
b662e9dd26b0 add alignment of classes in SPU
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 830
diff changeset
8 #define TASK_MAX_SIZE 31
109
028ffc9c0375 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
9
895
b662e9dd26b0 add alignment of classes in SPU
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 830
diff changeset
10 class TaskList { // 1024 byte
109
028ffc9c0375 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
11 public:
028ffc9c0375 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
12 BASE_NEW_DELETE(TaskList);
028ffc9c0375 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
13
895
b662e9dd26b0 add alignment of classes in SPU
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 830
diff changeset
14 int length; // 4 byte
109
028ffc9c0375 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
15 TaskList *next; // 4 byte
806
fb49e881f2ed TaslListInfo
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 713
diff changeset
16 TaskList *prev; // 4 byte
fb49e881f2ed TaslListInfo
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 713
diff changeset
17 TaskList *waiter; // 4 byte
895
b662e9dd26b0 add alignment of classes in SPU
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 830
diff changeset
18 int dummy[4]; // 16 byte
b662e9dd26b0 add alignment of classes in SPU
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 830
diff changeset
19 SimpleTask tasks[TASK_MAX_SIZE]; // 32*TASK_MAX_SIZE
634
62e570ac5db2 SimpleTask start
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 631
diff changeset
20
830
af2fb2e641eb return TaskList->self
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 809
diff changeset
21 void init() { length = 0; waiter=this; }
956
197b7e19a345 unified queue worked on Mac OS X
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 899
diff changeset
22 void initOnce() { }
958
338523ff6986 add freeOnce()
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 956
diff changeset
23 void freeOnce() {}
338523ff6986 add freeOnce()
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 956
diff changeset
24
899
1b9418af3127 minor fix..
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 895
diff changeset
25 } ;
109
028ffc9c0375 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
26
028ffc9c0375 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
27 typedef TaskList* TaskListPtr;
028ffc9c0375 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
28
028ffc9c0375 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
29 #endif