Mercurial > hg > Game > Cerium
comparison TaskManager/kernel/ppe/HTask.cc @ 1425:8bd889db45a1 draft
add API
author | Shinji KONO <kono@ie.u-ryukyu.ac.jp> |
---|---|
date | Sun, 11 Mar 2012 19:21:49 +0900 |
parents | 0ce6c6880b4b |
children | db5c022d871c af2adce9752e |
comparison
equal
deleted
inserted
replaced
1424:0ce6c6880b4b | 1425:8bd889db45a1 |
---|---|
113 mimpl->get_scheduler()->printf("too many task array used.\n"); | 113 mimpl->get_scheduler()->printf("too many task array used.\n"); |
114 return next; | 114 return next; |
115 } | 115 } |
116 | 116 |
117 /*! | 117 /*! |
118 @brief Task Array の次のTask | |
119 @param t 今のTaskのポインタ | |
120 0 の場合は最初のTask | |
121 @return 次のTaskへのポインタ | |
122 */ | |
123 Task * | |
124 HTask::next_task_array(int id, Task *t, int param_count, int inData_count, int outData_count) | |
125 { | |
126 Task *first = (Task*)rbuf; | |
127 if (t==0) { | |
128 // first->print(); | |
129 return first; | |
130 } | |
131 | |
132 Task *next = t->next(); | |
133 next->init(id, param_count, inData_count, outData_count); | |
134 if ((memaddr)next - (memaddr)rbuf > r_size) | |
135 mimpl->get_scheduler()->printf("too many task array used.\n"); | |
136 return next; | |
137 } | |
138 | |
139 | |
140 /*! | |
118 @brief Task Array の中のすべてのTaskが書き込まれたかどうかをチェックする | 141 @brief Task Array の中のすべてのTaskが書き込まれたかどうかをチェックする |
119 TaskArray 自体の spawn() は別に必要 | 142 TaskArray 自体の spawn() は別に必要 |
120 @param last 今のTaskのポインタ (最後である必要がある) | 143 @param last 今のTaskのポインタ (最後である必要がある) |
121 */ | 144 */ |
122 void | 145 void |