Mercurial > hg > Members > kono > Cerium
diff TaskManager/Cell/spe/SpeTaskManagerImpl.h @ 621:5b178db5988a
Cell fix
author | Shinji KONO <kono@ie.u-ryukyu.ac.jp> |
---|---|
date | Sun, 15 Nov 2009 03:34:18 +0900 |
parents | 0decff4e867b |
children | d433fc37587d |
line wrap: on
line diff
--- a/TaskManager/Cell/spe/SpeTaskManagerImpl.h Sun Nov 15 02:05:33 2009 +0900 +++ b/TaskManager/Cell/spe/SpeTaskManagerImpl.h Sun Nov 15 03:34:18 2009 +0900 @@ -1,29 +1,38 @@ -#ifndef INCLUDED_FIFO_TASK_MANAGER_IMPL -#define INCLUDED_FIFO_TASK_MANAGER_IMPL +#ifndef INCLUDED_TASK_MANAGER_IMPL +#define INCLUDED_TASK_MANAGER_IMPL -#include "TaskManagerImpl.h" -#include "MainScheduler.h" -#include "Scheduler.h" +#include "MailManager.h" +#include "ListData.h" +#include "TaskListInfo.h" +#include "TaskQueueInfo.h" +#include "HTaskInfo.h" +class Scheduler; +class MemList; -class SpeTaskManagerImpl : public TaskManagerImpl { + +class TaskManagerImpl { public: - /* constructor */ - SpeTaskManagerImpl(int num = 1) : TaskManagerImpl(num) {} - ~SpeTaskManagerImpl(void); + + BASE_NEW_DELETE(TaskManagerImpl); /* variables */ - CellScheduler *scheduler; + SchedTask *schedTaskManager; + Scheduler *scheduler; + + /* constructor */ + TaskManagerImpl(Scheduler *s) { scheduler = s; } + + ~TaskManagerImpl() { } - /* functions */ - // call by system - void init(void); - void run(void); + // user + HTaskPtr create_task(int cmd); + void set_task_depend(HTaskPtr master, HTaskPtr slave); + void spawn_task(HTaskPtr); + void set_task_cpu(HTaskPtr, CPU_TYPE); - // call by user - int add_data(ListDataPtr, uint32, int); + void* allocate(int size); void* allocate(int size,int align); - void* allocate(int size); - Scheduler* get_scheduler(); + Scheduler* get_scheduler() { return scheduler; }; };