#pragma once #include "export.h" class QWidget; namespace dtEntity { class EntityManager; } namespace VCtrl { class ViewerInterface; struct Vec3d; class VIEWER_CTRL_EXPORT MainLoop { public: MainLoop(int argc, char **argv, QWidget *parentWidget); ~MainLoop(); dtEntity::EntityManager *getEntityManager() const; ViewerInterface *getViewerInterface() const; bool getProfilingEnabled() const; void setProfilingEnabled(bool v); void shutDown(); bool isRunning() const; void tick(); void GetCurrentPosition(Vec3d &position, Vec3d &lookAt); private: class Impl; Impl *mImpl; }; }