695
|
1 #include "SchedTaskArrayLoad.h"
|
|
2 #include "SchedTaskArray.h"
|
|
3 #include "Task.h"
|
|
4
|
|
5 SchedTaskArrayLoad::SchedTaskArrayLoad(SchedTaskBase *savedTask_)
|
|
6 {
|
697
|
7 savedTask = savedTask_;
|
695
|
8 }
|
|
9
|
697
|
10 SchedTaskArrayLoad::~SchedTaskArrayLoad() {}
|
695
|
11
|
|
12 void
|
|
13 SchedTaskArrayLoad::read()
|
|
14 {
|
697
|
15 // if (task->r_size == 0) return; cannot happen...
|
695
|
16 // load Task Array Data
|
|
17 readbuf = scheduler->allocate(task->r_size);
|
|
18 scheduler->dma_load(readbuf, task->rbuf,task->r_size, DMA_READ);
|
|
19 }
|
|
20
|
|
21 void
|
|
22 SchedTaskArrayLoad::exec() {} // to empty the pipeline
|
|
23
|
|
24 void
|
|
25 SchedTaskArrayLoad::write() {} // to empty the pipeline
|
|
26
|
|
27 SchedTaskBase*
|
697
|
28 SchedTaskArrayLoad::next(Scheduler *scheduler, SchedTaskBase *p)
|
695
|
29 {
|
|
30 Task *nextTask = (Task *)readbuf;
|
|
31 return new SchedTaskArray(savedTask, nextTask, nextTask);
|
|
32 }
|
|
33
|
|
34 /* end */
|