#pragma once #include #include "glfw/glfw_window.h" namespace veng { class Graphics final { public: Graphics(gsl::not_null window); ~Graphics(); private: void InitializeVulkan(); void CreateInstance(); static gsl::span GetSuggestedExtentions(); static std::vector GetSupprotedInstanceExtensions(); static bool AreAllExtensionsSupported(gsl::span extensions); VkInstance instance_ = nullptr; gsl::not_null window_; }; } // namespace veng