Mercurial > hg > Members > kono > Cerium
diff Renderer/Engine/spe/ChainInit.cc @ 507:735f76483bb2
Reorganization..
author | Shinji KONO <kono@ie.u-ryukyu.ac.jp> |
---|---|
date | Mon, 12 Oct 2009 09:39:35 +0900 |
parents | |
children | ab866bc8a624 |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/Renderer/Engine/spe/ChainInit.cc Mon Oct 12 09:39:35 2009 +0900 @@ -0,0 +1,32 @@ +#include <stdio.h> +#include <string.h> +#include "ChainInit.h" +#include "Func.h" + +/* これは必須 */ +SchedDefineTask(ChainInit); + +/* + spe の global 領域に MemList を生成する + */ + +typedef struct { + double x, y, next_x, next_y; + double vx, vy, next_vx, next_vy; + int can_move; + uint32 parent; +} CHAIN_VARS; + + +static int +run(SchedTask *s,void *rbuf, void *wbuf) +{ + CHAIN_VARS* idata = (CHAIN_VARS*)s->get_input(rbuf, 0); + uint32 chain_len = s->get_param(0); + + // property は spe 上で allocate している(global) + CHAIN_VARS *property = (CHAIN_VARS*)s->global_alloc(DATA_ID, sizeof(CHAIN_VARS)*chain_len); + memcpy(property, idata, sizeof(CHAIN_VARS)*chain_len); + + return 0; +}