view include/TaskManager/BufferManager.h @ 267:943c2ebe4483 draft

merge 172 264
author Shinji KONO <kono@ie.u-ryukyu.ac.jp>
date Wed, 03 Jun 2009 23:58:22 +0900
parents 028ffc9c0375
children d7803cea25a3 cfd20d609ace
line wrap: on
line source

#ifndef INCLUDED_BUFFER_MANAGER
#define INCLUDED_BUFFER_MANAGER

#ifndef INCLUDED_TYPES
#  include "types.h"
#endif

#ifndef INCLUDED_TASK_LIST_INFO
#  include "TaskListInfo.h"
#endif

#ifndef INCLUDED_TASK_QUEUE_INFO
#  include "TaskQueueInfo.h"
#endif

#ifndef INCLUDED_HTASK_INFO
#  include "HTaskInfo.h"
#endif

class BufferManager {
public:
    /* constructor */
    BufferManager(int num = 1);
    virtual ~BufferManager(void);
    
    /* variables */
    TaskListInfo *taskListImpl;
    TaskQueueInfo *taskQueueImpl;
    HTaskInfo *htaskImpl;

    int machineNum;

    /* function */
    virtual void init(void);

    // TaskList
    TaskListPtr create_taskList(void);
    void free_taskList(TaskListPtr);
    TaskListPtr clear_taskList(TaskListPtr);

    // TaskQueue
    TaskQueuePtr create_taskQueue(HTaskPtr);
    void free_taskQueue(TaskQueuePtr);

    // HTask
    HTaskPtr create_task(int cmd);
    void free_task(HTaskPtr);


    void finish(void);
private:
};

#endif