comparison TaskManager/kernel/schedule/SchedTaskArrayLoad.cc @ 697:257ad1a518e3

TaskArray on going...
author Shinji KONO <kono@ie.u-ryukyu.ac.jp>
date Sun, 13 Dec 2009 18:45:09 +0900
parents cbcf0182635e
children 7e937a1cd121
comparison
equal deleted inserted replaced
696:b5c3ef336878 697:257ad1a518e3
2 #include "SchedTaskArray.h" 2 #include "SchedTaskArray.h"
3 #include "Task.h" 3 #include "Task.h"
4 4
5 SchedTaskArrayLoad::SchedTaskArrayLoad(SchedTaskBase *savedTask_) 5 SchedTaskArrayLoad::SchedTaskArrayLoad(SchedTaskBase *savedTask_)
6 { 6 {
7 savedTask = saveTask_; 7 savedTask = savedTask_;
8 } 8 }
9 9
10 ~SchedTaskArrayLoad::SchedTaskArrayLoad() {} 10 SchedTaskArrayLoad::~SchedTaskArrayLoad() {}
11 11
12 void 12 void
13 SchedTaskArrayLoad::read() 13 SchedTaskArrayLoad::read()
14 { 14 {
15 if (task->r_size == 0) return; 15 // if (task->r_size == 0) return; cannot happen...
16 // load Task Array Data 16 // load Task Array Data
17 readbuf = scheduler->allocate(task->r_size); 17 readbuf = scheduler->allocate(task->r_size);
18 scheduler->dma_load(readbuf, task->rbuf,task->r_size, DMA_READ); 18 scheduler->dma_load(readbuf, task->rbuf,task->r_size, DMA_READ);
19 } 19 }
20 20
23 23
24 void 24 void
25 SchedTaskArrayLoad::write() {} // to empty the pipeline 25 SchedTaskArrayLoad::write() {} // to empty the pipeline
26 26
27 SchedTaskBase* 27 SchedTaskBase*
28 SchedNop::next(Scheduler *scheduler, SchedTaskBase *p) 28 SchedTaskArrayLoad::next(Scheduler *scheduler, SchedTaskBase *p)
29 { 29 {
30 Task *nextTask = (Task *)readbuf; 30 Task *nextTask = (Task *)readbuf;
31 return new SchedTaskArray(savedTask, nextTask, nextTask); 31 return new SchedTaskArray(savedTask, nextTask, nextTask);
32 } 32 }
33 33