annotate ppe/chara_state3.cc @ 21:5f1abbe03b9a

add new task.
author koba <koba@cr.ie.u-ryukyu.ac.jp>
date Sun, 26 Dec 2010 22:28:18 +0900
parents 6487f54ba3d1
children ee4c488d48a3
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
21
5f1abbe03b9a add new task.
koba <koba@cr.ie.u-ryukyu.ac.jp>
parents: 20
diff changeset
1 #include "task_base.h"
20
6487f54ba3d1 add new file.
koba <koba@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
2 #include "task_object.h"
6487f54ba3d1 add new file.
koba <koba@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
3
6487f54ba3d1 add new file.
koba <koba@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
4 SchedDefineTask(STATE3);
6487f54ba3d1 add new file.
koba <koba@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
5
6487f54ba3d1 add new file.
koba <koba@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
6 static int
6487f54ba3d1 add new file.
koba <koba@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
7 run(SchedTask *smanager, void *rbuf, void *wbuf)
6487f54ba3d1 add new file.
koba <koba@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
8 {
6487f54ba3d1 add new file.
koba <koba@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
9 CHARACTER *p = (CHARACTER*)smanager->get_input(rbuf, 0);
6487f54ba3d1 add new file.
koba <koba@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
10
6487f54ba3d1 add new file.
koba <koba@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
11 p->x += p->vx;
6487f54ba3d1 add new file.
koba <koba@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
12 p->y += p->vy;
6487f54ba3d1 add new file.
koba <koba@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
13 if((p->dt1 == 60) ||
6487f54ba3d1 add new file.
koba <koba@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
14 (p->dt1 == 90) ||
6487f54ba3d1 add new file.
koba <koba@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
15 (p->dt1 == 30))
6487f54ba3d1 add new file.
koba <koba@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
16 {
6487f54ba3d1 add new file.
koba <koba@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
17 Puttama(0, p->x, p->y);
6487f54ba3d1 add new file.
koba <koba@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
18 }
6487f54ba3d1 add new file.
koba <koba@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
19 p->dt1++;
6487f54ba3d1 add new file.
koba <koba@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
20
6487f54ba3d1 add new file.
koba <koba@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
21 p->task = STATE3;
6487f54ba3d1 add new file.
koba <koba@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
22 smanager->swap();
6487f54ba3d1 add new file.
koba <koba@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
23 return 0;
6487f54ba3d1 add new file.
koba <koba@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
24 }