00001
00002
00003
00004
00006
00007
00008
00009
00010
00011
00012
00013
00014
00016
00017 #ifndef __IScene_h_INCLUDED__
00018 #define __IScene_h_INCLUDED__
00019
00020 #include "IObject.h"
00021 #include "IRoot.h"
00022 #include "IEventManager.h"
00023 #include <string>
00024
00025 namespace mortic
00026 {
00028
00035 class IScene : public IObject
00036 {
00037 public:
00039 IScene(IRoot* root, std::string name) : IObject(root, name)
00040 { }
00041
00043
00046 virtual void start() = 0;
00047
00049
00052 virtual void stop() = 0;
00053
00055
00059 virtual void run() = 0;
00060
00062
00067 virtual bool event(IEvent* e) = 0;
00068 };
00069
00070 }
00071 ;
00072 #endif // __IScene_h_INCLUDED__