2025-12-02 03:16:07 +02:00
|
|
|
#pragma once
|
|
|
|
|
|
2025-12-03 00:11:15 +02:00
|
|
|
#include <memory>
|
2025-12-02 17:57:59 +02:00
|
|
|
|
2025-12-02 03:16:07 +02:00
|
|
|
#include <SDL3/SDL_video.h>
|
|
|
|
|
|
2025-12-02 21:26:53 +02:00
|
|
|
#include "Logger.h"
|
2025-12-02 03:16:07 +02:00
|
|
|
|
2025-12-03 02:31:38 +02:00
|
|
|
#include <imgui.h>
|
|
|
|
|
|
2025-12-02 03:16:07 +02:00
|
|
|
namespace Lunar {
|
2025-12-03 00:11:15 +02:00
|
|
|
class VulkanRenderer;
|
2025-12-02 17:57:59 +02:00
|
|
|
|
2025-12-02 03:16:07 +02:00
|
|
|
struct Application {
|
|
|
|
|
Application();
|
|
|
|
|
~Application();
|
|
|
|
|
|
|
|
|
|
auto run() -> void;
|
|
|
|
|
|
|
|
|
|
private:
|
|
|
|
|
SDL_Window *m_window { nullptr };
|
|
|
|
|
Logger m_logger { "Lunar" };
|
2025-12-03 00:11:15 +02:00
|
|
|
std::unique_ptr<VulkanRenderer> m_renderer;
|
2025-12-02 03:16:07 +02:00
|
|
|
|
|
|
|
|
bool m_running { true };
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
} // namespace Lunar
|