annotate TaskManager/kernel/schedule/ListData.h @ 1044:150412ed980a

minor fix
author Shinji KONO <kono@ie.u-ryukyu.ac.jp>
date Wed, 08 Dec 2010 00:05:31 +0900
parents 31d0a5baafdf
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
109
5c194c71eca8 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
1 #ifndef INCLUDED_LIST_DATA
5c194c71eca8 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
2 #define INCLUDED_LIST_DATA
5c194c71eca8 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
3
301
bcb81858aa62 remove deprecated source. not work.
tkaito@localhost.localdomain
parents: 109
diff changeset
4 #include "base.h"
605
90c61fe2b109 working on 32 bit compiler
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 603
diff changeset
5 #include "types.h"
109
5c194c71eca8 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
6
5c194c71eca8 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
7 #define MAX_LIST_DMA_SIZE 8
5c194c71eca8 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
8
5c194c71eca8 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
9 class ListElement {
5c194c71eca8 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
10 public:
5c194c71eca8 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
11 BASE_NEW_DELETE(ListElement);
5c194c71eca8 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
12
5c194c71eca8 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
13 int size;
629
8843edf37c0e Cell 64 bit tried, but not yet worked.
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 605
diff changeset
14 #ifdef __CERIUM_CELL__
8843edf37c0e Cell 64 bit tried, but not yet worked.
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 605
diff changeset
15 uint32 addr; // Cell の仕様なんでどうしようもない...
8843edf37c0e Cell 64 bit tried, but not yet worked.
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 605
diff changeset
16 // PowerPC 64bit だと動かない可能性も高いんだが...
8843edf37c0e Cell 64 bit tried, but not yet worked.
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 605
diff changeset
17 #else
603
42c94f85c779 long -> memaddr (64 or 32)
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 602
diff changeset
18 memaddr addr;
629
8843edf37c0e Cell 64 bit tried, but not yet worked.
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 605
diff changeset
19 #endif
109
5c194c71eca8 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
20 };
5c194c71eca8 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
21
5c194c71eca8 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
22 typedef ListElement* ListElementPtr;
5c194c71eca8 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
23
5c194c71eca8 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
24 class ListData {
5c194c71eca8 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
25 public:
5c194c71eca8 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
26 BASE_NEW_DELETE(ListData);
5c194c71eca8 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
27
5c194c71eca8 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
28 int length; // The number of data (4)
5c194c71eca8 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
29 int size; // Total size of data (4)
696
b5c3ef336878 on going...
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 629
diff changeset
30 int *bound;
b5c3ef336878 on going...
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 629
diff changeset
31 ListElement *element;
109
5c194c71eca8 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
32
5c194c71eca8 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
33 void clear(void) {
5c194c71eca8 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
34 length = 0;
5c194c71eca8 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
35 size = 0;
5c194c71eca8 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
36 }
699
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 696
diff changeset
37
736
31d0a5baafdf cut printf
hiroki@localhost.localdomain
parents: 713
diff changeset
38 /*
31d0a5baafdf cut printf
hiroki@localhost.localdomain
parents: 713
diff changeset
39 void print(Scheduler *s) {
31d0a5baafdf cut printf
hiroki@localhost.localdomain
parents: 713
diff changeset
40 s->printf("inList length %d size %d\n",length, size);
699
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 696
diff changeset
41 for(int i=0;i<length;i++) {
736
31d0a5baafdf cut printf
hiroki@localhost.localdomain
parents: 713
diff changeset
42 s->printf("inList element[%d] size %d addr %lx\n",i, element[i].size, (unsigned long)element[i].addr);
699
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 696
diff changeset
43 }
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents: 696
diff changeset
44 }
736
31d0a5baafdf cut printf
hiroki@localhost.localdomain
parents: 713
diff changeset
45 */
109
5c194c71eca8 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
46 };
5c194c71eca8 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
47
5c194c71eca8 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
48 typedef ListData* ListDataPtr;
5c194c71eca8 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
49
5c194c71eca8 Cerium cvs version
gongo@gendarme.local
parents:
diff changeset
50 #endif