#ifndef RSE_GRAPHICS_HPP #define RSE_GRAPHICS_HPP #include struct VulkanState; namespace rse::graphics { class RseGraphics { public: RseGraphics(); ~RseGraphics(); RseGraphics& operator=(const RseGraphics&) = delete; RseGraphics(const RseGraphics&) = delete; /** * @brief Initialize graphics module, runs main loop and deinits everything, when interrupted. * This has to been run AFTER all scene objects have been already created. * * @return uint8_t 0 on success. */ uint8_t graphics_run(void); private: /* Hold vulkan state. It is modified by function initializing and communicating with Vulkan API */ VulkanState* vulkan_state; }; } // namespace rse::graphics #endif