Mercurial > hg > Members > kono > Cerium
diff TaskManager/Fifo/FifoTaskManagerImpl.h @ 366:09f33c51a204
rename include/TaskManager/* and add memory
author | aaa |
---|---|
date | Mon, 27 Jul 2009 15:51:18 +0900 |
parents | include/TaskManager/FifoTaskManagerImpl.h@7075842aa155 |
children | eab18aa0c7f6 |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/TaskManager/Fifo/FifoTaskManagerImpl.h Mon Jul 27 15:51:18 2009 +0900 @@ -0,0 +1,40 @@ +#ifndef INCLUDED_FIFO_TASK_MANAGER_IMPL +#define INCLUDED_FIFO_TASK_MANAGER_IMPL + +#include "TaskManagerImpl.h" +#include "MainScheduler.h" + +class FifoTaskManagerImpl : public TaskManagerImpl { +public: + /* constructor */ + FifoTaskManagerImpl(int num = 1) : TaskManagerImpl(num) {} + ~FifoTaskManagerImpl(void); + + /* variables */ + int machineNum; + TaskListPtr mainTaskList; + + MailManager *mailManager; + MainScheduler *scheduler; + + /* functions */ + // call by system + void init(void); + void init(MainScheduler*, BufferManager*); + void run(void); + void mail_check(MailQueuePtr mail_list); + void mail_check(MailQueuePtr mail_list, TaskQueuePtr *waitQueue); + TaskListPtr get_runTaskList(void); + MailQueuePtr schedule(TaskListPtr); + + // call by user + int add_data(ListDataPtr, uint32, int); + void* allocate(int size); +}; + +#ifndef Cerium_malloc +#define Cerium_malloc(dest, align, size) \ + *dest = malloc(size); +#endif /* Cerium_malloc */ + +#endif /* INCLUDED_FIFO_TASK_MANAGER_IMPL */