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 */