view TaskManager/kernel/schedule/SchedTaskArray.h @ 706:e4d2b823903c simple-task-regression

no compile error on Cell. Regression Test. Cell failed some how.
author Shinji KONO <kono@ie.u-ryukyu.ac.jp>
date Mon, 14 Dec 2009 20:21:59 +0900
parents 61b59376aec5
children 56487849ea2d
line wrap: on
line source

#ifndef INCLUDED_SCHED_TASK_ARRAY
#define INCLUDED_SCHED_TASK_ARRAY

#include "base.h"
#include "Scheduler.h"
#include "SchedTask.h"


class SchedTaskArray : public SchedTask {
public:
    BASE_NEW_DELETE(SchedTaskArray);

    /* constructor */
    SchedTaskArray(Scheduler *s, SchedTaskBase *savedTask_, Task *task_, Task *array_);
    /* constructor for old style task */
    SchedTaskArray(Scheduler *s, SchedTaskBase *savedTask_);

    virtual ~SchedTaskArray();


    SchedTaskBase *savedTask;
    Task *array;

private:
    /* variables */

    TaskPtr task;
    void *readbuf;
    void *writebuf;

    /* functions */
    Task *last();

    // override
    void read();
    void exec();
    void write();
    SchedTaskBase* next(Scheduler *, SchedTaskBase *);

    void* get_input(void*, int);
    memaddr get_inputAddr(int);
    int get_inputSize(int);
    void* get_output(void*, int);
    memaddr get_outputAddr(int);
    int get_outputSize(int);
    memaddr get_param(int);

};


#endif