# HG changeset patch # User Shinji KONO # Date 1274173894 -32400 # Node ID 2d919c3201f2f493d3be79e8a35c185814f4d431 # Parent 1db779ac0268ef6b1b4da38853df8cd3526025e3 virtual clean up diff -r 1db779ac0268 -r 2d919c3201f2 TaskManager/kernel/schedule/SchedTask.h --- a/TaskManager/kernel/schedule/SchedTask.h Tue May 18 17:57:19 2010 +0900 +++ b/TaskManager/kernel/schedule/SchedTask.h Tue May 18 18:11:34 2010 +0900 @@ -19,8 +19,6 @@ /* variables */ -private: - /* functions */ // override @@ -31,10 +29,6 @@ // タスクの処理は、task_list に登録された C の関数によっておこなう - //--- System API --- - SchedTask* get_nextTask(TaskListPtr list); - - public: /* functions */ @@ -46,9 +40,9 @@ int write_size() { return task->w_size; } void set_write_size(int w) { task->w_size = w; } - virtual void* get_input(void *buff, int index); - virtual void* get_output(void *buff, int index); - virtual memaddr get_param(int index); + void* get_input(void *buff, int index); + void* get_output(void *buff, int index); + memaddr get_param(int index); memaddr get_inputAddr(int index); memaddr get_outputAddr(int index); // 書き出しを追加する API がない... diff -r 1db779ac0268 -r 2d919c3201f2 TaskManager/kernel/schedule/SchedTaskBase.h --- a/TaskManager/kernel/schedule/SchedTaskBase.h Tue May 18 17:57:19 2010 +0900 +++ b/TaskManager/kernel/schedule/SchedTaskBase.h Tue May 18 18:11:34 2010 +0900 @@ -21,7 +21,7 @@ BASE_NEW_DELETE(SchedTaskBase); // noaction in default - virtual void load() {} + // virtual void load() {} virtual void read() {} virtual void exec() {} virtual void write() {} @@ -29,10 +29,13 @@ /* functions */ virtual SchedTaskBase* next(Scheduler *, SchedTaskBase*) {return 0;} + virtual void* get_input(void *buff, int index) { return 0;} + virtual memaddr get_param(int index) { return 0;} + /* variables */ // SchedTask は、すべて同じ大きさであるべきなので、継承するクラスには、 - // 変数を置かない。ここに、すべて置く。 + // 変数を置かない。ここに、すべて置く。virtual も含めて。 // Task を実行するスケジューラ自身 Scheduler *scheduler;