X-Git-Url: https://git.dogcows.com/gitweb?p=chaz%2Fyoink;a=blobdiff_plain;f=src%2FMoof%2FEngine.hh;h=aa751356f6a81b6ec1712cf1ee7bdf322384d749;hp=971d68fe1e28eb59e3536056dd19c4355ec0668c;hb=a5f0d391406a68275b41448fc3f49e8d8396c497;hpb=4701bf580b75a7d77a460c6f14f9fc31fb109bbb diff --git a/src/Moof/Engine.hh b/src/Moof/Engine.hh index 971d68f..aa75135 100644 --- a/src/Moof/Engine.hh +++ b/src/Moof/Engine.hh @@ -36,7 +36,6 @@ #include #include #include -#include namespace Mf { @@ -45,11 +44,15 @@ namespace Mf { // forward declaration class Video; -class Engine : public Singleton +class Engine { -public: +protected: + Engine(int argc, char* argv[], const std::string& configFile, const std::string& name, const std::string& iconFile); + +public: + virtual ~Engine(); int run(); @@ -63,7 +66,7 @@ public: Video& getVideo(); long getFrameRate(); - // Override these if you want. + // override these if you want virtual void update(Scalar t, Scalar dt); virtual void draw(Scalar alpha); virtual void handleEvent(const Event& event); @@ -75,6 +78,8 @@ public: }; private: + Engine() {} // this class must be subclassed to be useful + class Impl; boost::shared_ptr impl_; };