view 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 source

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