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