diff Renderer/Engine/viewer.h @ 748:b7376415fa5f

TaskManager changeset 683, Renderer changeset 746
author hiroki
date Mon, 25 Jan 2010 18:01:19 +0900
parents f42b303044f7
children 4455e7b0caf3
line wrap: on
line diff
--- a/Renderer/Engine/viewer.h	Sun Dec 06 10:23:19 2009 +0900
+++ b/Renderer/Engine/viewer.h	Mon Jan 25 18:01:19 2010 +0900
@@ -9,6 +9,7 @@
 #include "MainLoop.h"
 #include "Application.h"
 #include "SceneGraphRoot.h"
+#include "ViewerDevice.h"
 
 class SceneGraphRoot;
 
@@ -18,10 +19,12 @@
 
 public:
 
-    Viewer(int bpp, int width, int height, int spenum);
+    Viewer(TaskManager *manager, ViewerDevice *dev, int bpp, int width, int height, int spenum);
 
     virtual ~Viewer() {}
+    BASE_NEW_DELETE(Viewer);
 
+    ViewerDevice *dev;
     Application *app;
 
     TaskManager *manager;
@@ -29,41 +32,46 @@
     HTaskPtr draw_dummy;
 
     /* screen info */
-    int width;
-    int height;
     int bpp;
 
+    int rgb_size[3];
     int spe_num;
+    int width;
+    int height;
 
-    int rgb_size[3];
+    //float light_xyz[4] __attribute__((aligned(16)));
+    float *light_xyz;
+    float *light_xyz_stock;
+
+
     Uint32 video_flags;
     Uint32 *pixels;
 
     SceneGraphRoot *sgroot;
 
-    virtual void video_init(TaskManager *manager) = 0;
+    //Uint32 *video_init(TaskManager *manager, int bpp, int width, int height);
     void init();
 
     int get_ticks();
     bool quit_check();
     void quit();
-
-    virtual void swap_buffers();
-    virtual void clean_pixels() {}
+    HTaskPtr initLoop();
 
-    virtual void run_init(TaskManager *manager, Application *app);
-    virtual void run_loop(HTaskPtr task_next);
-    virtual void run_draw(HTaskPtr task_next);
-    virtual void run_finish();
-    virtual void run_move(HTaskPtr task_next);
-    virtual void run_collision();
-    virtual void rendering(HTaskPtr task_next);
-    virtual void common_draw(HTaskPtr task_next);
-    virtual void common_rendering(HTaskPtr task_next);
+    void clean_pixels() {}
+      
+    void run_init(TaskManager *manager, Application *app);
+    void run_loop(HTaskPtr task_next);
+    void run_draw(HTaskPtr task_next);
+    void run_finish();
+    void run_move(HTaskPtr task_next);
+    void run_collision();
+    void rendering(HTaskPtr task_next);
+    void common_draw(HTaskPtr task_next);
+    void common_rendering(HTaskPtr task_next, SceneGraphRoot *sgroot);
 
-    virtual void spe_rendering(HTaskPtr task_next);
-    virtual void spe_draw(HTaskPtr task_next);
-    //virtual void exchange_sgroot(TaskManager *manager);
+    void spe_rendering(HTaskPtr task_next);
+    void spe_draw(HTaskPtr task_next);
+    //  void exchange_sgroot(TaskManager *manager);
 
     void getKey();
     void get_send_controll();
@@ -114,13 +122,6 @@
 	return sgroot->getLast();
     }
 
-
-
-
-private:
-    HTaskPtr initLoop();
-    void speLoop();
-
 };
 
 #define default_sdl_flag SDL_INIT_TIMER | SDL_INIT_JOYSTICK