00001 // scene.h 00002 00003 #ifndef SCENES_H 00004 #define SCENES_H 00005 00006 #include <Afxtempl.h> 00007 #include "mesh.h" 00008 #include "renderer.h" 00009 00016 class Scenes { 00017 00018 private: 00019 CArray<Mesh*, Mesh*> meshes; 00020 CArray<Renderer*, Renderer*> renderers; 00021 SceneID count; 00022 SceneID curr; 00023 bool checkSceneId(SceneID sID); 00024 00025 public: 00026 00027 #ifndef SKIP_THIS 00028 Scenes(Mesh* nmesh, Renderer* nrenderer); 00029 ~Scenes(); 00030 #endif 00031 00036 RESULT addNewScene(SceneID &sID); 00043 RESULT removeScene(SceneID sID); 00050 RESULT setCurrentScene(SceneID sID); 00062 RESULT getCurrentScene(SceneID &sID, Mesh** nmesh=NULL, Renderer** nrenderer=NULL); 00074 RESULT getScene(SceneID sID, Mesh** nmesh, Renderer** nrenderer); 00075 00076 }; 00077 00078 #endif