Mercurial > hg > Members > kono > Cerium
annotate TaskManager/kernel/schedule/SchedTaskArray.cc @ 1044:150412ed980a
minor fix
author | Shinji KONO <kono@ie.u-ryukyu.ac.jp> |
---|---|
date | Wed, 08 Dec 2010 00:05:31 +0900 |
parents | 33630c6ff445 |
children |
rev | line source |
---|---|
695 | 1 #include "SchedTaskArray.h" |
786
ccf78a465459
fix early free of TaskArray, add SchedTaskArrayNop stage.
yutaka@localhost.localdomain
parents:
781
diff
changeset
|
2 #include "SchedTaskArrayNop.h" |
698
dcaa40ec963d
no compile error for Task Array
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
697
diff
changeset
|
3 #include "Scheduler.h" |
800
2708c4a7bade
run16 word count ( not yet worked. )
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
786
diff
changeset
|
4 #include "TaskManagerImpl.h" |
695 | 5 |
6 | |
970
33630c6ff445
change pipeline and TaskArray fast
Yutaka Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
945
diff
changeset
|
7 SchedTaskArray::SchedTaskArray(Scheduler *s, SchedTaskBase *savedTask_, Task *curTask_, Task *_array, int tag) |
695 | 8 { |
9 savedTask = savedTask_; | |
708 | 10 atask = curTask_; |
695 | 11 array = _array; |
699 | 12 scheduler = s; |
695 | 13 |
696 | 14 inListData.bound = 0; |
15 inListData.size = 0; | |
16 inListData.length = 0; | |
17 inListData.element = 0; | |
18 outListData.bound = 0; | |
19 outListData.size = 0; | |
20 outListData.length = 0; | |
21 outListData.element = 0; | |
893
96536163c0a0
fix SimpleTask alignment
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
887
diff
changeset
|
22 |
96536163c0a0
fix SimpleTask alignment
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
887
diff
changeset
|
23 cur_index = -1; |
96536163c0a0
fix SimpleTask alignment
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
887
diff
changeset
|
24 task = 0; |
970
33630c6ff445
change pipeline and TaskArray fast
Yutaka Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
945
diff
changeset
|
25 |
33630c6ff445
change pipeline and TaskArray fast
Yutaka Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
945
diff
changeset
|
26 this->tag = tag; |
33630c6ff445
change pipeline and TaskArray fast
Yutaka Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
945
diff
changeset
|
27 |
696 | 28 } |
29 | |
697 | 30 /** |
703 | 31 Constructor for old Task with ListData |
32 next TaskList entry contains Task object. | |
33 savedTask->rbuf is 0, it has only one Task. | |
34 */ | |
35 | |
36 SchedTaskArray::SchedTaskArray(Scheduler *s, SchedTaskBase *savedTask_) | |
37 { | |
38 savedTask = savedTask_; | |
39 scheduler = s; | |
40 | |
41 inListData.bound = 0; | |
42 inListData.size = 0; | |
43 inListData.length = 0; | |
44 inListData.element = 0; | |
45 outListData.bound = 0; | |
46 outListData.size = 0; | |
47 outListData.length = 0; | |
48 outListData.element = 0; | |
49 | |
808 | 50 SimpleTaskPtr st = &savedTask->list->tasks[savedTask->cur_index]; |
51 atask = (TaskPtr)st; | |
704
6d497c098455
Compatibility mode works.
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
703
diff
changeset
|
52 array = 0; |
708 | 53 savedTask->cur_index += (atask->size()+sizeof(SimpleTask))/sizeof(SimpleTask); |
893
96536163c0a0
fix SimpleTask alignment
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
887
diff
changeset
|
54 cur_index = -1; |
96536163c0a0
fix SimpleTask alignment
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
887
diff
changeset
|
55 task = 0; |
703 | 56 |
970
33630c6ff445
change pipeline and TaskArray fast
Yutaka Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
945
diff
changeset
|
57 this->tag = 0; |
33630c6ff445
change pipeline and TaskArray fast
Yutaka Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
945
diff
changeset
|
58 |
703 | 59 } |
60 | |
61 /** | |
697 | 62 */ |
63 SchedTaskArray::~SchedTaskArray() | |
696 | 64 { |
697 | 65 } |
66 | |
708 | 67 /** |
68 * DMA buffer offset in rbuf | |
69 */ | |
697 | 70 static void |
71 bound(ListData *list) | |
72 { | |
73 ListElement *elm = list->element; | |
74 int *bound = list->bound; | |
75 int offset=0; | |
696 | 76 for(int i=0;i<list->length;i++) { |
697 | 77 bound[i] = offset; |
78 offset += elm[i].size; | |
696 | 79 } |
695 | 80 } |
81 | |
871
ab3cd3aeacff
fix get segment dma tag zero problem
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
830
diff
changeset
|
82 |
708 | 83 /** |
84 * Task data / code read | |
85 */ | |
695 | 86 void |
87 SchedTaskArray::read() | |
88 { | |
89 | |
90 // object creation をSchedTaskArray生成時にやらないので、 | |
91 // exec の直前のread で十分に間に合う | |
708 | 92 loadSchedTask(scheduler, atask->command); |
695 | 93 |
94 // 読むデータが一つもなければ無視 | |
708 | 95 if (atask->inData_count == 0) return; |
696 | 96 |
708 | 97 inListData.length = atask->inData_count; |
98 inListData.size = atask->inData_total_size(); | |
99 inListData.element = atask->inData(0); | |
800
2708c4a7bade
run16 word count ( not yet worked. )
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
786
diff
changeset
|
100 inListData.bound = (int*)manager->allocate(inListData.length*sizeof(int)); |
695 | 101 |
102 // load Input Data | |
800
2708c4a7bade
run16 word count ( not yet worked. )
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
786
diff
changeset
|
103 readbuf = manager->allocate(inListData.size); |
701
226d95fa2691
Bulk task worked on Mac OS X
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
700
diff
changeset
|
104 // inListData.print(); |
970
33630c6ff445
change pipeline and TaskArray fast
Yutaka Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
945
diff
changeset
|
105 scheduler->dma_loadList(&inListData, readbuf, (DMA_READ + this->tag)); |
697 | 106 bound(&inListData); |
695 | 107 |
108 } | |
109 | |
708 | 110 /** |
111 * Wait read data and execute task | |
112 * Start write DMA | |
113 */ | |
695 | 114 void |
115 SchedTaskArray::exec() | |
116 { | |
871
ab3cd3aeacff
fix get segment dma tag zero problem
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
830
diff
changeset
|
117 task_list[atask->command].wait(scheduler,atask->command); |
895
bed529c55eda
add alignment of classes in SPU
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
893
diff
changeset
|
118 TaskObjectRun run = task_list[atask->command].run; |
708 | 119 if (atask->outData_count > 0) { |
871
ab3cd3aeacff
fix get segment dma tag zero problem
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
830
diff
changeset
|
120 // allocate write buffer |
708 | 121 outListData.length = atask->outData_count; |
122 outListData.size = atask->outData_total_size(); | |
893
96536163c0a0
fix SimpleTask alignment
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
887
diff
changeset
|
123 // atask->outData_offset += cur_index + 1 ; // to avoid compiler bug |
708 | 124 outListData.element = atask->outData(0); |
800
2708c4a7bade
run16 word count ( not yet worked. )
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
786
diff
changeset
|
125 outListData.bound = (int*)manager->allocate(outListData.length*sizeof(int)); |
699 | 126 bound(&outListData); |
127 | |
800
2708c4a7bade
run16 word count ( not yet worked. )
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
786
diff
changeset
|
128 writebuf = manager->allocate(outListData.size); |
893
96536163c0a0
fix SimpleTask alignment
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
887
diff
changeset
|
129 //if (outListData.element == inListData.element ) { |
96536163c0a0
fix SimpleTask alignment
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
887
diff
changeset
|
130 // printf("bad %x\n",outListData.element); |
96536163c0a0
fix SimpleTask alignment
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
887
diff
changeset
|
131 //} |
699 | 132 } |
970
33630c6ff445
change pipeline and TaskArray fast
Yutaka Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
945
diff
changeset
|
133 scheduler->dma_wait((DMA_READ + this->tag)); |
945
a9c7784e5dae
sort example fix ( simple task accepts one param and more compatible with old task)
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
895
diff
changeset
|
134 run(this, get_input(readbuf, 0), get_output(writebuf, 0)); |
695 | 135 free(readbuf); |
136 // 書き込む領域がなければ無視 | |
697 | 137 |
138 // User 側で作る方法が必要... | |
139 | |
708 | 140 if (atask->outData_count > 0) { |
701
226d95fa2691
Bulk task worked on Mac OS X
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
700
diff
changeset
|
141 // outListData.print(); |
696 | 142 scheduler->dma_storeList(&outListData, writebuf, DMA_WRITE); |
695 | 143 } |
144 } | |
145 | |
708 | 146 /** |
147 * Wait write DMA | |
148 * send finish mail | |
149 */ | |
695 | 150 void |
151 SchedTaskArray::write() | |
152 { | |
153 | |
154 scheduler->dma_wait(DMA_WRITE); | |
155 free(writebuf); | |
698
dcaa40ec963d
no compile error for Task Array
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
697
diff
changeset
|
156 free(inListData.bound); |
dcaa40ec963d
no compile error for Task Array
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
697
diff
changeset
|
157 free(outListData.bound); |
695 | 158 } |
159 | |
160 Task *SchedTaskArray::last() | |
161 { | |
697 | 162 SchedTask *s = (SchedTask *)savedTask; |
163 return (Task*)(((char*)array)+ s->read_size()); | |
695 | 164 } |
165 | |
166 SchedTaskBase* | |
697 | 167 SchedTaskArray::next(Scheduler *scheduler, SchedTaskBase *p) |
695 | 168 { |
169 | |
708 | 170 Task *next = atask->next(); |
697 | 171 if (next < last()) { |
695 | 172 // Task List が残っているので、次を準備 |
970
33630c6ff445
change pipeline and TaskArray fast
Yutaka Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
945
diff
changeset
|
173 //scheduler->printf("hog\n"); |
33630c6ff445
change pipeline and TaskArray fast
Yutaka Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
945
diff
changeset
|
174 return new SchedTaskArray(scheduler, savedTask, next, array, this->tag^1); |
695 | 175 } else { |
786
ccf78a465459
fix early free of TaskArray, add SchedTaskArrayNop stage.
yutaka@localhost.localdomain
parents:
781
diff
changeset
|
176 |
ccf78a465459
fix early free of TaskArray, add SchedTaskArrayNop stage.
yutaka@localhost.localdomain
parents:
781
diff
changeset
|
177 //このTaskArrayは終わったが、Pipeline 上にread の TaskArray が残っているので |
ccf78a465459
fix early free of TaskArray, add SchedTaskArrayNop stage.
yutaka@localhost.localdomain
parents:
781
diff
changeset
|
178 //1ステージを稼ぐ必要がある |
970
33630c6ff445
change pipeline and TaskArray fast
Yutaka Kinjyo <yutaka@cr.ie.u-ryukyu.ac.jp>
parents:
945
diff
changeset
|
179 //scheduler->printf("auau\n"); |
786
ccf78a465459
fix early free of TaskArray, add SchedTaskArrayNop stage.
yutaka@localhost.localdomain
parents:
781
diff
changeset
|
180 return new SchedTaskArrayNop(scheduler, savedTask, next, array); |
ccf78a465459
fix early free of TaskArray, add SchedTaskArrayNop stage.
yutaka@localhost.localdomain
parents:
781
diff
changeset
|
181 |
695 | 182 } |
183 } | |
184 | |
185 | |
186 | |
698
dcaa40ec963d
no compile error for Task Array
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
697
diff
changeset
|
187 /** |
dcaa40ec963d
no compile error for Task Array
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
697
diff
changeset
|
188 * task->add_inData で与えられた順番に対応する index (0〜n-1) で、 |
dcaa40ec963d
no compile error for Task Array
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
697
diff
changeset
|
189 * buffer から対応するデータを返す。 |
dcaa40ec963d
no compile error for Task Array
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
697
diff
changeset
|
190 */ |
dcaa40ec963d
no compile error for Task Array
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
697
diff
changeset
|
191 void* |
dcaa40ec963d
no compile error for Task Array
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
697
diff
changeset
|
192 SchedTaskArray::get_input(void *buff, int index) |
dcaa40ec963d
no compile error for Task Array
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
697
diff
changeset
|
193 { |
dcaa40ec963d
no compile error for Task Array
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
697
diff
changeset
|
194 return (void*)((char*)readbuf + inListData.bound[index]); |
dcaa40ec963d
no compile error for Task Array
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
697
diff
changeset
|
195 } |
dcaa40ec963d
no compile error for Task Array
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
697
diff
changeset
|
196 |
dcaa40ec963d
no compile error for Task Array
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
697
diff
changeset
|
197 /** |
dcaa40ec963d
no compile error for Task Array
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
697
diff
changeset
|
198 * get_input(index) のアドレスを返す |
dcaa40ec963d
no compile error for Task Array
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
697
diff
changeset
|
199 */ |
dcaa40ec963d
no compile error for Task Array
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
697
diff
changeset
|
200 memaddr |
dcaa40ec963d
no compile error for Task Array
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
697
diff
changeset
|
201 SchedTaskArray::get_inputAddr(int index) |
dcaa40ec963d
no compile error for Task Array
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
697
diff
changeset
|
202 { |
dcaa40ec963d
no compile error for Task Array
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
697
diff
changeset
|
203 #ifdef __CERIUM_CELL__ |
dcaa40ec963d
no compile error for Task Array
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
697
diff
changeset
|
204 return (memaddr)inListData.element[index].addr; |
dcaa40ec963d
no compile error for Task Array
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
697
diff
changeset
|
205 #else |
dcaa40ec963d
no compile error for Task Array
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
697
diff
changeset
|
206 return inListData.element[index].addr; |
dcaa40ec963d
no compile error for Task Array
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
697
diff
changeset
|
207 #endif |
dcaa40ec963d
no compile error for Task Array
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
697
diff
changeset
|
208 } |
dcaa40ec963d
no compile error for Task Array
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
697
diff
changeset
|
209 |
dcaa40ec963d
no compile error for Task Array
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
697
diff
changeset
|
210 /** |
dcaa40ec963d
no compile error for Task Array
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
697
diff
changeset
|
211 * get_input(index) のサイズを返す |
dcaa40ec963d
no compile error for Task Array
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
697
diff
changeset
|
212 */ |
dcaa40ec963d
no compile error for Task Array
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
697
diff
changeset
|
213 int |
dcaa40ec963d
no compile error for Task Array
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
697
diff
changeset
|
214 SchedTaskArray::get_inputSize(int index) |
dcaa40ec963d
no compile error for Task Array
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
697
diff
changeset
|
215 { |
dcaa40ec963d
no compile error for Task Array
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
697
diff
changeset
|
216 return inListData.element[index].size; |
dcaa40ec963d
no compile error for Task Array
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
697
diff
changeset
|
217 } |
dcaa40ec963d
no compile error for Task Array
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
697
diff
changeset
|
218 |
dcaa40ec963d
no compile error for Task Array
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
697
diff
changeset
|
219 /** |
dcaa40ec963d
no compile error for Task Array
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
697
diff
changeset
|
220 * write buffer の領域を返す。 |
dcaa40ec963d
no compile error for Task Array
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
697
diff
changeset
|
221 */ |
dcaa40ec963d
no compile error for Task Array
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
697
diff
changeset
|
222 void* |
dcaa40ec963d
no compile error for Task Array
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
697
diff
changeset
|
223 SchedTaskArray::get_output(void *buff, int index) |
dcaa40ec963d
no compile error for Task Array
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
697
diff
changeset
|
224 { |
dcaa40ec963d
no compile error for Task Array
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
697
diff
changeset
|
225 return (void*)((char *)writebuf + outListData.bound[index]); |
dcaa40ec963d
no compile error for Task Array
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
697
diff
changeset
|
226 } |
dcaa40ec963d
no compile error for Task Array
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
697
diff
changeset
|
227 |
dcaa40ec963d
no compile error for Task Array
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
697
diff
changeset
|
228 /** |
dcaa40ec963d
no compile error for Task Array
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
697
diff
changeset
|
229 * get_output(index) のアドレスを返す |
dcaa40ec963d
no compile error for Task Array
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
697
diff
changeset
|
230 */ |
dcaa40ec963d
no compile error for Task Array
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
697
diff
changeset
|
231 memaddr |
dcaa40ec963d
no compile error for Task Array
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
697
diff
changeset
|
232 SchedTaskArray::get_outputAddr(int index) |
dcaa40ec963d
no compile error for Task Array
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
697
diff
changeset
|
233 { |
dcaa40ec963d
no compile error for Task Array
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
697
diff
changeset
|
234 #ifdef __CERIUM_CELL__ |
dcaa40ec963d
no compile error for Task Array
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
697
diff
changeset
|
235 return (memaddr)outListData.element[index].addr; |
dcaa40ec963d
no compile error for Task Array
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
697
diff
changeset
|
236 #else |
dcaa40ec963d
no compile error for Task Array
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
697
diff
changeset
|
237 return outListData.element[index].addr; |
dcaa40ec963d
no compile error for Task Array
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
697
diff
changeset
|
238 #endif |
dcaa40ec963d
no compile error for Task Array
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
697
diff
changeset
|
239 } |
dcaa40ec963d
no compile error for Task Array
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
697
diff
changeset
|
240 |
dcaa40ec963d
no compile error for Task Array
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
697
diff
changeset
|
241 /** |
dcaa40ec963d
no compile error for Task Array
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
697
diff
changeset
|
242 * get_output(index) のサイズを返す |
dcaa40ec963d
no compile error for Task Array
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
697
diff
changeset
|
243 */ |
dcaa40ec963d
no compile error for Task Array
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
697
diff
changeset
|
244 int |
dcaa40ec963d
no compile error for Task Array
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
697
diff
changeset
|
245 SchedTaskArray::get_outputSize(int index) |
dcaa40ec963d
no compile error for Task Array
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
697
diff
changeset
|
246 { |
dcaa40ec963d
no compile error for Task Array
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
697
diff
changeset
|
247 return outListData.element[index].size; |
dcaa40ec963d
no compile error for Task Array
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
697
diff
changeset
|
248 } |
dcaa40ec963d
no compile error for Task Array
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
697
diff
changeset
|
249 |
dcaa40ec963d
no compile error for Task Array
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
697
diff
changeset
|
250 memaddr |
dcaa40ec963d
no compile error for Task Array
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
697
diff
changeset
|
251 SchedTaskArray::get_param(int index) |
dcaa40ec963d
no compile error for Task Array
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
697
diff
changeset
|
252 { |
708 | 253 return *atask->param(index); |
698
dcaa40ec963d
no compile error for Task Array
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
697
diff
changeset
|
254 } |
dcaa40ec963d
no compile error for Task Array
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
697
diff
changeset
|
255 |
800
2708c4a7bade
run16 word count ( not yet worked. )
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
786
diff
changeset
|
256 int |
2708c4a7bade
run16 word count ( not yet worked. )
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
786
diff
changeset
|
257 SchedTaskArray::read_size() |
2708c4a7bade
run16 word count ( not yet worked. )
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
786
diff
changeset
|
258 { |
945
a9c7784e5dae
sort example fix ( simple task accepts one param and more compatible with old task)
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
895
diff
changeset
|
259 return get_inputSize(0); |
800
2708c4a7bade
run16 word count ( not yet worked. )
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
786
diff
changeset
|
260 } |
2708c4a7bade
run16 word count ( not yet worked. )
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
786
diff
changeset
|
261 |
698
dcaa40ec963d
no compile error for Task Array
Shinji KONO <kono@ie.u-ryukyu.ac.jp>
parents:
697
diff
changeset
|
262 |
695 | 263 /* end */ |