13 class Application :
public std::enable_shared_from_this<Application> {
15 void init(
char *path);
20 [[nodiscard]]
static constexpr auto getAppVersion() ->
Version {
28 [[nodiscard]]
auto getWindow()
const -> std::shared_ptr<Window> {
32 [[nodiscard]]
auto getRenderer()
const -> std::shared_ptr<Renderer> {
36 [[nodiscard]]
auto getPluginLoader()
const -> std::shared_ptr<Plugin::PluginLoader> {
37 return m_pluginLoader;
40 [[nodiscard]]
auto getEventManager()
const -> std::shared_ptr<EventManager> {
41 return m_eventManager;
45 std::shared_ptr<Window> m_window;
46 std::shared_ptr<Renderer> m_renderer;
47 std::shared_ptr<Plugin::PluginLoader> m_pluginLoader;
48 std::shared_ptr<EventManager> m_eventManager;
49 std::shared_ptr<TaskManager> m_taskManager;