engine/include/engine.hpp

56 lines
691 B
C++
Raw Normal View History

#pragma once
2022-10-04 10:54:23 +00:00
#include <memory>
namespace engine {
2022-10-04 10:54:23 +00:00
class Window;
2022-10-27 16:58:30 +00:00
class Input;
class ResourceManager;
class SceneRoot;
2022-10-04 10:54:23 +00:00
class Application {
public:
Application(const char* appName, const char* appVersion);
2022-10-04 10:54:23 +00:00
Application(const Application&) = delete;
Application& operator=(const Application&) = delete;
2022-10-04 10:54:23 +00:00
~Application();
void gameLoop();
2022-10-31 16:21:07 +00:00
Window* window()
{
return m_win;
}
Input* input()
{
return m_input;
}
ResourceManager* resources()
{
return m_res;
}
SceneRoot* scene()
{
return m_scene;
}
2022-10-04 10:54:23 +00:00
private:
2022-10-31 16:21:07 +00:00
Window* m_win;
Input* m_input;
ResourceManager* m_res;
SceneRoot* m_scene;
2022-11-23 15:40:10 +00:00
bool m_enableFrameLimiter = true;
2022-10-04 10:54:23 +00:00
};
2022-09-13 18:25:18 +00:00
}