Mercurial > hg > Members > kono > Cerium
view Renderer/Engine/task/ExecMove.cc @ 761:be6e43d977d1
add task/ExecMove
author | hiroki |
---|---|
date | Thu, 04 Feb 2010 14:50:01 +0900 |
parents | |
children | 01b6d924a560 |
line wrap: on
line source
#include <stdlib.h> #include <string.h> #include "ExecMove.h" #include "SgChange.h" #include "SceneGraphRoot.h" SchedDefineTask(ExecMove); static int run(SchedTask *smanager, void *rbuf , void *wbuf) { SgChange *sgchange = (SgChange *)smanager->get_param(0); //SceneGraphRoot *sgroot = (SceneGraphRoot *)smanager->get_param(0); SceneGraphRoot *sgroot = sgchange->sgroot_A; int screen_w = (int)smanager->get_param(1); int screen_h = (int)smanager->get_param(2); //sgroot->updateControllerState(); SceneGraphPtr list = sgroot->sg_available_list; sgroot->allRemove(sgroot->sg_remove_list); sgroot->sg_draw_tree = sgroot->sg_exec_tree; sgroot->sg_remove_list = sgroot->sg_available_list; sgroot->sg_exec_tree = NULL; sgroot->sg_available_list = NULL; sgroot->camera->move_execute(screen_w, screen_h); sgroot->camera->update(screen_w, screen_h); sgroot->camera->children = NULL; sgroot->camera->lastChild = NULL; list->move_execute(screen_w, screen_h); sgroot->list = list; return 0; }