#pragma once #include "ITickable.hpp" #include "ICloseable.hpp" #include "UI/IWindow.hpp" namespace OpenVulkano { class PlatformInitFailedException : public std::runtime_error { public: PlatformInitFailedException(char const* const message) : runtime_error(message) {} }; class IPlatform : public ITickable, public ICloseable { public: virtual void Init() = 0; virtual IWindow* MakeWindow() = 0; }; }