#ifndef APPLICATION_H_ #define APPLICATION_H_ #include "sigslot.h" #include "common.h" #include "Game.h" #include "Schedule.h" #include "Network.h" #include "Config.h" namespace gln { class Application: public sigslot::has_slots<> { public: Application(); virtual ~Application(); virtual void initialize(Config &config); virtual void update(); virtual void shutdown(); bool isRunning(); virtual void start(); virtual void stop(); inline bool isMaster() { return master; } void setMaster(bool master); inline Game *getGame() { return &game; } private: bool running; double lastTime; Schedule gameUpdateSchudule; bool master; protected: Game game; Network network; double dt; double time; }; } // namespace grln #endif /* APPLICATION_H_ */