Mercurial > hg > Members > kono > Cerium
diff Renderer/Engine/viewer.cc @ 514:2659376067e8
old ball_bound fix...
author | Shinji KONO <kono@ie.u-ryukyu.ac.jp> |
---|---|
date | Tue, 20 Oct 2009 21:18:28 +0900 |
parents | 997490a061ee |
children | b273767962b8 |
line wrap: on
line diff
--- a/Renderer/Engine/viewer.cc Mon Oct 12 21:39:57 2009 +0900 +++ b/Renderer/Engine/viewer.cc Tue Oct 20 21:18:28 2009 +0900 @@ -12,20 +12,20 @@ #include "Pad.h" #include "Application.h" -static void post2runLoop(void *viewer); -static void post2runDraw(void *viewer); -static void post2speRendering(void *viewer); -static void post2speDraw(void *viewer); -// static void post2speRunLoop(void *viewer); -//static void post2runMove(void *viewer); -//static void post2exchange_sgroot(void *viewer); -//static void post2speRunLoop(void *viewer); -static void post2runMoveDrawLoop(void *viewer); +static void post2runLoop(SchedTask *s,void *viewer,void *s); +static void post2runDraw(SchedTask *s,void *viewer,void *s); +static void post2speRendering(SchedTask *s,void *viewer,void *s); +static void post2speDraw(SchedTask *s,void *viewer,void *s); +static void post2runMoveDrawLoop(SchedTask *s,void *viewer,void *s); /* measure for FPS (Frame Per Second) */ int start_time; int this_time; int frames; +// static void post2speRunLoop(void *viewer); +//static void post2runMove(void *viewer); +//static void post2exchange_sgroot(void *viewer); +//static void post2speRunLoop(void *viewer); SceneGraphRootPtr sgroot; //SceneGraphRootPtr sgroot_2; @@ -200,7 +200,7 @@ HTaskPtr task_switch = manager->create_task(TASK_SWITCH); task_switch->wait_for(task_next); - task_switch->set_post(post2runMoveDrawLoop, (void*)this); + task_switch->set_post(post2runMoveDrawLoop, (void*)this, 0); task_switch->spawn(); } @@ -250,7 +250,7 @@ } static void -post2runMoveDrawLoop(void *viewer_) +post2runMoveDrawLoop(SchedTask *m, void *viewer_, void *arg) { Viewer *viewer = (Viewer*)viewer_; @@ -278,14 +278,14 @@ HTaskPtr switch_task = viewer->manager->create_task(TASK_SWITCH); viewer->draw_dummy = draw_dummy; switch_task->wait_for(draw_dummy); - draw_task->set_post(post2speRendering, (void*)viewer); + draw_task->set_post(post2speRendering, (void*)viewer, 0); switch_task->wait_for(move_task); switch_task->wait_for(draw_task); move_task->spawn(); draw_task->spawn(); - switch_task->set_post(post2runMoveDrawLoop, (void*)viewer); + switch_task->set_post(post2runMoveDrawLoop, (void*)viewer, 0); switch_task->spawn(); } @@ -305,7 +305,7 @@ { HTaskPtr task_next = initLoop(); - task_next->set_post(&post2runLoop, (void *)this); // set_post(function(this->run_loop()), NULL) + task_next->set_post(&post2runLoop, (void *)this, 0); // set_post(function(this->run_loop()), NULL) task_next->spawn(); } @@ -333,7 +333,7 @@ } void -post2rendering(void *viewer_) +post2rendering(SchedTask *s, void *viewer_, void *arg) { Viewer *viewer = (Viewer *)viewer_; HTaskPtr task_next = viewer->manager->create_task(TASK_DUMMY); @@ -347,14 +347,14 @@ // Barrier 同期 // run_draw() を呼ぶ post2runDraw - task_next->set_post(post2runDraw, (void*)this); // set_post(function(this->run_draw()), NULL) + task_next->set_post(post2runDraw, (void*)this, 0); // set_post(function(this->run_draw()), NULL) task_next->spawn(); // TASK_CREATE_SPAN が全て終わったら DUMMY_TASK が Viewer::run_draw() を呼ぶ } static void -post2runLoop(void *viewer_) +post2runLoop(SchedTask *s, void *viewer_, void *arg) { Viewer *viewer = (Viewer*)viewer_; HTaskPtr task_next = viewer->manager->create_task(TASK_DUMMY); @@ -389,7 +389,7 @@ } static void -post2runDraw(void *viewer_) +post2runDraw(SchedTask *s, void *viewer_, void *arg) { Viewer *viewer = (Viewer*)viewer_; HTaskPtr task_next = viewer->manager->create_task(TASK_DUMMY); @@ -402,7 +402,7 @@ { common_draw(task_next); - task_next->set_post(post2runLoop, (void*)this); // set_post(function(this->run_loop()), NULL) + task_next->set_post(post2runLoop, (void*)this, 0); // set_post(function(this->run_loop()), NULL) task_next->spawn(); // TASK_DRAW_SPAN が全て終わったら DUMMY_TASK が Viewer::run_loop() を呼ぶ @@ -422,7 +422,7 @@ } static void -post2speRendering(void *viewer_) +post2speRendering(SchedTask *s, void *viewer_, void *arg) { Viewer *viewer = (Viewer*)viewer_; HTaskPtr task_next = viewer->manager->create_task(TASK_DUMMY); @@ -435,13 +435,13 @@ common_rendering(task_next); this->draw_dummy->wait_for(task_next); - task_next->set_post(post2speDraw, (void*)this); + task_next->set_post(post2speDraw, (void*)this, 0); task_next->spawn(); } static void -post2speDraw(void *viewer_) +post2speDraw(SchedTask *s, void *viewer_, void *arg) { Viewer *viewer = (Viewer*)viewer_; HTaskPtr task_next = viewer->manager->create_task(TASK_DUMMY);