view TaskManager/kernel/schedule/SchedTaskList.h @ 603:42c94f85c779

long -> memaddr (64 or 32)
author Shinji KONO <kono@ie.u-ryukyu.ac.jp>
date Sat, 07 Nov 2009 14:13:29 +0900
parents 1733f3cbfa28
children 60aa3f241b10
line wrap: on
line source

#ifndef INCLUDED_SCHED_TASKLIST
#define INCLUDED_SCHED_TASKLIST

#include "base.h"
#include "Scheduler.h"
#include "SchedTaskBase.h"

#include "error.h"

class SchedTaskList : public SchedTaskBase {
public:
    /* constructor */
    SchedTaskList(unsigned int addr, Scheduler *sched);

    BASE_NEW_DELETE(SchedTaskList);

    /* variables */
    unsigned int params_addr;
    TaskListPtr list;
    Scheduler *scheduler;

    int flag_renewTaskList;

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

#ifdef DEBUG
    void exec(void)  { __debug("[SchedTaskList:%s]\n", __FUNCTION__); }
    void write(void) { __debug("[SchedTaskList:%s]\n", __FUNCTION__); }
#endif

};

const int SCHED_TASKLIST_NORMAL = 0;
const int SCHED_TASKLIST_RENEW  = 1;

extern SchedTaskList* createSchedTaskList(memaddr, Scheduler*, int);

#endif