annotate Renderer/Cell/Engine.cpp @ 327:c8edba9cabb7 draft

add test_render/show_time.{cpp,h} {spe,task}/ShowTime.{cpp,h} but incomplete
author aaa
date Fri, 12 Jun 2009 02:07:06 +0900
parents df32980116bd
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
0
df32980116bd Initial revision
gongo
parents:
diff changeset
1 CellEngine::CellEngine()
df32980116bd Initial revision
gongo
parents:
diff changeset
2 {
df32980116bd Initial revision
gongo
parents:
diff changeset
3 TaskManager manager = new TaskManager();
df32980116bd Initial revision
gongo
parents:
diff changeset
4 }
df32980116bd Initial revision
gongo
parents:
diff changeset
5
df32980116bd Initial revision
gongo
parents:
diff changeset
6 void
df32980116bd Initial revision
gongo
parents:
diff changeset
7 CellEngine::init(int width, int height, int bpp)
df32980116bd Initial revision
gongo
parents:
diff changeset
8 {
df32980116bd Initial revision
gongo
parents:
diff changeset
9 if(SDL_Init( SDL_INIT_VIDEO ) < 0)
df32980116bd Initial revision
gongo
parents:
diff changeset
10 {
df32980116bd Initial revision
gongo
parents:
diff changeset
11 cout << "Couldn't initialize SDL:" << SDL_GetError() << endl;
df32980116bd Initial revision
gongo
parents:
diff changeset
12 exit(1);
df32980116bd Initial revision
gongo
parents:
diff changeset
13 }
df32980116bd Initial revision
gongo
parents:
diff changeset
14
df32980116bd Initial revision
gongo
parents:
diff changeset
15 // etc...
df32980116bd Initial revision
gongo
parents:
diff changeset
16 }
df32980116bd Initial revision
gongo
parents:
diff changeset
17
df32980116bd Initial revision
gongo
parents:
diff changeset
18 TaskDepend
df32980116bd Initial revision
gongo
parents:
diff changeset
19 CellEngine::update_all(SceneGraph* next, SceneGraph* now, TaskDepend wait)
df32980116bd Initial revision
gongo
parents:
diff changeset
20 {
df32980116bd Initial revision
gongo
parents:
diff changeset
21 SceneGraph *t, *nt;
df32980116bd Initial revision
gongo
parents:
diff changeset
22 t = now;
df32980116bd Initial revision
gongo
parents:
diff changeset
23 nt = next;
df32980116bd Initial revision
gongo
parents:
diff changeset
24
df32980116bd Initial revision
gongo
parents:
diff changeset
25 SceneGraphPack *nt_pack = nt->data_pack();
df32980116bd Initial revision
gongo
parents:
diff changeset
26 SceneGraphPack *t_pack;
df32980116bd Initial revision
gongo
parents:
diff changeset
27 Task* t_task = now->get_task();
df32980116bd Initial revision
gongo
parents:
diff changeset
28 TaskDepend task;
df32980116bd Initial revision
gongo
parents:
diff changeset
29
df32980116bd Initial revision
gongo
parents:
diff changeset
30 task = manager->create_task(function_id, now->task_size(),
df32980116bd Initial revision
gongo
parents:
diff changeset
31 (unsigned int *)now->get_task(),
df32980116bd Initial revision
gongo
parents:
diff changeset
32 (unsigned int *)next->get_task());
df32980116bd Initial revision
gongo
parents:
diff changeset
33
df32980116bd Initial revision
gongo
parents:
diff changeset
34 manager->set_task_depend(task, wait);
df32980116bd Initial revision
gongo
parents:
diff changeset
35
df32980116bd Initial revision
gongo
parents:
diff changeset
36 task->run();
df32980116bd Initial revision
gongo
parents:
diff changeset
37
df32980116bd Initial revision
gongo
parents:
diff changeset
38 return task;
df32980116bd Initial revision
gongo
parents:
diff changeset
39 }
df32980116bd Initial revision
gongo
parents:
diff changeset
40
df32980116bd Initial revision
gongo
parents:
diff changeset
41 TaskDepend
df32980116bd Initial revision
gongo
parents:
diff changeset
42 CellEngin::draw_all(SceneGraph* now, TaskDepend wait)
df32980116bd Initial revision
gongo
parents:
diff changeset
43 {
df32980116bd Initial revision
gongo
parents:
diff changeset
44 /**
df32980116bd Initial revision
gongo
parents:
diff changeset
45 * SceneGraph => Polygon
df32980116bd Initial revision
gongo
parents:
diff changeset
46 * Polygon => Span, Texture
df32980116bd Initial revision
gongo
parents:
diff changeset
47 * Texture, Span => Rendering
df32980116bd Initial revision
gongo
parents:
diff changeset
48 */
df32980116bd Initial revision
gongo
parents:
diff changeset
49
df32980116bd Initial revision
gongo
parents:
diff changeset
50 SceneGraph *t, *nt;
df32980116bd Initial revision
gongo
parents:
diff changeset
51 t = now;
df32980116bd Initial revision
gongo
parents:
diff changeset
52 nt = next;
df32980116bd Initial revision
gongo
parents:
diff changeset
53
df32980116bd Initial revision
gongo
parents:
diff changeset
54 SceneGraphPack *nt_pack = nt->data_pack();
df32980116bd Initial revision
gongo
parents:
diff changeset
55 SceneGraphPack *t_pack;
df32980116bd Initial revision
gongo
parents:
diff changeset
56 Task* t_task = now->get_task();
df32980116bd Initial revision
gongo
parents:
diff changeset
57 TaskDepend task;
df32980116bd Initial revision
gongo
parents:
diff changeset
58
df32980116bd Initial revision
gongo
parents:
diff changeset
59 task = manager->create_task(function_id, now->task_size(),
df32980116bd Initial revision
gongo
parents:
diff changeset
60 (unsigned int *)now->get_task(),
df32980116bd Initial revision
gongo
parents:
diff changeset
61 (unsigned int *)next->get_task());
df32980116bd Initial revision
gongo
parents:
diff changeset
62
df32980116bd Initial revision
gongo
parents:
diff changeset
63 manager->set_task_depend(task, wait);
df32980116bd Initial revision
gongo
parents:
diff changeset
64
df32980116bd Initial revision
gongo
parents:
diff changeset
65 task->run();
df32980116bd Initial revision
gongo
parents:
diff changeset
66 }