view TaskManager/Cell/CellTaskManagerImpl.h @ 596:f1c2e11a2ef4 draft

add xdr_getpos
author Shinji KONO <kono@ie.u-ryukyu.ac.jp>
date Wed, 04 Nov 2009 22:52:06 +0900
parents 5641d121818e
children 20665e4060ea
line wrap: on
line source

#ifndef INCLUDED_CELL_TASK_MANAGER_IMPL
#define INCLUDED_CELL_TASK_MANAGER_IMPL

#include "TaskManagerImpl.h"
#include "FifoTaskManagerImpl.h"
#include "SpeThreads.h"

class CellTaskManagerImpl : public TaskManagerImpl {
public:
    /* constructor */
    CellTaskManagerImpl(int num = 1) : TaskManagerImpl(num) {}
    ~CellTaskManagerImpl();

    /* variables */
    TaskListPtr *speTaskList;
    TaskListPtr *speTaskList_bg;

    SpeThreads *speThreads;
    int *flag_sendTaskList;
    FifoTaskManagerImpl *ppeManager;

    /* functions */
    // system
    void init();
    void run();
    TaskListPtr mail_check(MailQueuePtr mail_list);
    void set_runTaskList();
    void append_activeTask(HTaskPtr);

    // user
    int add_data(ListDataPtr, uint32, int);
    void* allocate(int size);
    void* allocate(int size,int align);
    Scheduler* get_scheduler();

private:
    void send_taskList(int id);
};

#endif