Mercurial > hg > Game > Cerium
changeset 294:dae47a3f7b57 draft
merge
author | e065746@localhost.localdomain |
---|---|
date | Fri, 05 Jun 2009 19:18:12 +0900 |
parents | 2369f477ffbe (current diff) da8edd0735f2 (diff) |
children | 87b33556916c |
files | |
diffstat | 3 files changed, 36 insertions(+), 14 deletions(-) [+] |
line wrap: on
line diff
--- a/TaskManager/kernel/ppe/HTask.cc Fri Jun 05 18:53:42 2009 +0900 +++ b/TaskManager/kernel/ppe/HTask.cc Fri Jun 05 19:18:12 2009 +0900 @@ -3,24 +3,34 @@ #include "TaskManagerImpl.h" -/** - * manager->set_task_depend(task1, task2); // task2 は task1 の終了を待つ - * - * ってやるより - * - * task2->set_depend(task1); - * - * ってやったほうがわかりやすいよねー的な話し合いで - * 下のようなAPIを作りました - */ +/*! + manager->set_task_depend(task1, task2); // task2 は task1 の終了を待つ + + ってやるより + + task2->set_depend(task1); + + ってやったほうがわかりやすいよねー的な話し合いで + 下のようなAPIを作りました +*/ + void HTask::spawn(void) { mimpl->spawn_task(this); } +/*! + @brief この Task が待ち合わせする Task を指定する + @param[in] master この Task が終了待ち合わせをする相手の Task + + 繰り返し使用する事で複数の Task を待ち合わせする事ができる。 + + wait_for している Task の入力バッファにこの Task から書き込みできる機能があると良い + */ + void -HTask::set_depend(HTaskPtr master) +HTask::wait_for(HTaskPtr master) { mimpl->set_task_depend(master, this); }
--- a/example/basic/main.cc Fri Jun 05 18:53:42 2009 +0900 +++ b/example/basic/main.cc Fri Jun 05 19:18:12 2009 +0900 @@ -87,6 +87,9 @@ */ twice->add_param(length); + /* + * set_post() で ppe task を渡せるようにしたい + */ twice->set_post(twice_result, (void*)data); // add Active Queue
--- a/include/TaskManager/HTask.h Fri Jun 05 18:53:42 2009 +0900 +++ b/include/TaskManager/HTask.h Fri Jun 05 19:18:12 2009 +0900 @@ -19,6 +19,17 @@ class TaskManagerImpl; +/*! + @class + + @brief + + Cerium Task сspawn() сャ若主罨≦茵 + cpu 絎遺研絎茵 + 劫 Task 緇≦篋純 + Task ュ阪 dma copy + */ + class HTask : public Task { public: BASE_NEW_DELETE(HTask); @@ -32,11 +43,9 @@ TaskManagerImpl *mimpl; void spawn(void); - void set_depend(HTask *); + void wait_for(HTask *); void set_cpu(CPU_TYPE type); void set_post(void (*func)(void *), void *arg); - -#define wait_for set_depend }; typedef HTask* HTaskPtr;