00001 /* 00002 * $Id: $ 00003 * 00004 * Description : Manager for scripting 00005 * Author : Jakub Zelenka <jakub.zelenka@gmail.com> 00006 * 00007 * Purpose : 00008 * ScriptManager class provides many methods for communication with kernel. 00009 */ 00010 00011 00012 #ifndef __SCRIPTMANAGER_H_ 00013 #define __SCRIPTMANAGER_H_ 00014 00015 #include <vector> 00016 #include <map> 00017 00018 #include "scriptexception.h" 00019 #include "../../core/src/kernel.h" 00020 00021 namespace VRUT 00022 { 00023 class ScriptScene; 00024 00026 class ScriptSceneManager 00027 { 00028 private: 00029 std::map<SCENE_ID, ScriptScene *> scenes; 00030 00031 Kernel *kernel; 00032 00033 void deleteScriptScene(SCENE_ID id); 00034 00035 public: 00036 ScriptSceneManager(Kernel *k) : kernel(k) {} 00037 00038 ~ScriptSceneManager(); 00039 00040 size_t GetSceneIDs(std::vector< SCENE_ID > &IDlist) 00041 { 00042 return kernel->sceneManager->GetSceneIDs(IDlist); 00043 } 00044 00045 ScriptScene *GetScene(SCENE_ID sceneID); 00046 00047 friend class ScriptScene; 00048 }; 00049 } 00050 00051 #endif /* __SCRIPTMANAGER_H_ */
1.5.5