Mercurial > hg > Game > Cerium
view TaskManager/kernel/ppe/Task.h @ 616:350b9b8c985f draft
First addOutput rendering try failed.
author | Shinji KONO <kono@ie.u-ryukyu.ac.jp> |
---|---|
date | Sat, 14 Nov 2009 18:57:54 +0900 |
parents | 57ec231bc8ac |
children | 94d82f2c842f |
line wrap: on
line source
#ifndef INCLUDED_TASK #define INCLUDED_TASK #include "base.h" #include "types.h" #include "ListData.h" #define MAX_PARAMS 8 class TaskQueue; class Task { public: // variables BASE_NEW_DELETE(Task); int command; // 4 byte memaddr self; // 4 byte (or 8byte on 64bit mode) int param_size; // 4 byte memaddr param[MAX_PARAMS]; // 4*MAX_PARAMS byte ListData inData __attribute__ ((aligned (DEFAULT_ALIGNMENT))); // 4 byte 64bit であるべき ListData outData __attribute__ ((aligned (DEFAULT_ALIGNMENT))); // 4 byte 64bit であるべき public: // functions int add_inData_t(memaddr addr, int size); // unsigned int ではなく 64bit int add_outData_t(memaddr addr, int size); // unsigned int ではなく 64bit int add_data(ListData &list, memaddr addr, int size); int add_param(memaddr param); // obsolete. do not use. int add_param(int index, memaddr param); #define add_inData(addr, size) \ add_inData_t((memaddr)(addr), (size)); #define add_outData(addr, size) \ add_outData_t((memaddr)(addr), (size)); }; typedef Task* TaskPtr; #endif