annotate Renderer/Engine/task/DataUpdate.cc @ 985:e40dd2384357

fix light data update
author root@henri.cr.ie.u-ryukyu.ac.jp
date Fri, 01 Oct 2010 02:49:38 +0900
parents 01b6d924a560
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
751
8b45afad160f add task/DataLoad task/DataUpdate
hiroki
parents:
diff changeset
1 #include <stdio.h>
8b45afad160f add task/DataLoad task/DataUpdate
hiroki
parents:
diff changeset
2 #include "DataUpdate.h"
8b45afad160f add task/DataLoad task/DataUpdate
hiroki
parents:
diff changeset
3 #include "Func.h"
8b45afad160f add task/DataLoad task/DataUpdate
hiroki
parents:
diff changeset
4 #include "string.h"
8b45afad160f add task/DataLoad task/DataUpdate
hiroki
parents:
diff changeset
5
8b45afad160f add task/DataLoad task/DataUpdate
hiroki
parents:
diff changeset
6 /* これは必須 */
8b45afad160f add task/DataLoad task/DataUpdate
hiroki
parents:
diff changeset
7 SchedDefineTask(DataUpdate);
8b45afad160f add task/DataLoad task/DataUpdate
hiroki
parents:
diff changeset
8
8b45afad160f add task/DataLoad task/DataUpdate
hiroki
parents:
diff changeset
9 static int
8b45afad160f add task/DataLoad task/DataUpdate
hiroki
parents:
diff changeset
10 run(SchedTask *s, void *rbuf, void *wbuf)
8b45afad160f add task/DataLoad task/DataUpdate
hiroki
parents:
diff changeset
11 {
985
e40dd2384357 fix light data update
root@henri.cr.ie.u-ryukyu.ac.jp
parents: 823
diff changeset
12
e40dd2384357 fix light data update
root@henri.cr.ie.u-ryukyu.ac.jp
parents: 823
diff changeset
13 long count = (long)s->get_param(0);
e40dd2384357 fix light data update
root@henri.cr.ie.u-ryukyu.ac.jp
parents: 823
diff changeset
14 long id_base = (long)s->get_param(1);
e40dd2384357 fix light data update
root@henri.cr.ie.u-ryukyu.ac.jp
parents: 823
diff changeset
15 for(int i=0; i<count; i++) {
e40dd2384357 fix light data update
root@henri.cr.ie.u-ryukyu.ac.jp
parents: 823
diff changeset
16 void *idata = (void*)s->get_input(rbuf, i);
e40dd2384357 fix light data update
root@henri.cr.ie.u-ryukyu.ac.jp
parents: 823
diff changeset
17 long size = (long)s->get_inputSize(i);
e40dd2384357 fix light data update
root@henri.cr.ie.u-ryukyu.ac.jp
parents: 823
diff changeset
18 void *global_data = (void*)s->global_get(id_base+i);
e40dd2384357 fix light data update
root@henri.cr.ie.u-ryukyu.ac.jp
parents: 823
diff changeset
19 memcpy(global_data,idata,size);
e40dd2384357 fix light data update
root@henri.cr.ie.u-ryukyu.ac.jp
parents: 823
diff changeset
20 }
751
8b45afad160f add task/DataLoad task/DataUpdate
hiroki
parents:
diff changeset
21
8b45afad160f add task/DataLoad task/DataUpdate
hiroki
parents:
diff changeset
22 return 0;
8b45afad160f add task/DataLoad task/DataUpdate
hiroki
parents:
diff changeset
23 }