summaryrefslogtreecommitdiffstats
path: root/src/video_core/renderer_vulkan/renderer_vulkan.h
diff options
context:
space:
mode:
authorbunnei <bunneidev@gmail.com>2020-04-11 02:06:55 +0200
committerGitHub <noreply@github.com>2020-04-11 02:06:55 +0200
commit51c6688e214a9bdcf335fb0598dc7e5bc194f8f6 (patch)
tree37ef2214634c2423ca617e9e22a2c9d57693ed86 /src/video_core/renderer_vulkan/renderer_vulkan.h
parentMerge pull request #3607 from FearlessTobi/input-kms (diff)
parentyuzu: Drop SDL2 and Qt frontend Vulkan requirements (diff)
downloadyuzu-51c6688e214a9bdcf335fb0598dc7e5bc194f8f6.tar
yuzu-51c6688e214a9bdcf335fb0598dc7e5bc194f8f6.tar.gz
yuzu-51c6688e214a9bdcf335fb0598dc7e5bc194f8f6.tar.bz2
yuzu-51c6688e214a9bdcf335fb0598dc7e5bc194f8f6.tar.lz
yuzu-51c6688e214a9bdcf335fb0598dc7e5bc194f8f6.tar.xz
yuzu-51c6688e214a9bdcf335fb0598dc7e5bc194f8f6.tar.zst
yuzu-51c6688e214a9bdcf335fb0598dc7e5bc194f8f6.zip
Diffstat (limited to 'src/video_core/renderer_vulkan/renderer_vulkan.h')
-rw-r--r--src/video_core/renderer_vulkan/renderer_vulkan.h19
1 files changed, 14 insertions, 5 deletions
diff --git a/src/video_core/renderer_vulkan/renderer_vulkan.h b/src/video_core/renderer_vulkan/renderer_vulkan.h
index d14384e79..42e253de5 100644
--- a/src/video_core/renderer_vulkan/renderer_vulkan.h
+++ b/src/video_core/renderer_vulkan/renderer_vulkan.h
@@ -6,8 +6,11 @@
#include <memory>
#include <optional>
+#include <string>
#include <vector>
+#include "common/dynamic_library.h"
+
#include "video_core/renderer_base.h"
#include "video_core/renderer_vulkan/declarations.h"
@@ -44,18 +47,24 @@ public:
void SwapBuffers(const Tegra::FramebufferConfig* framebuffer) override;
bool TryPresent(int timeout_ms) override;
+ static std::vector<std::string> EnumerateDevices();
+
private:
- std::optional<vk::DebugUtilsMessengerEXT> CreateDebugCallback(
- const vk::DispatchLoaderDynamic& dldi);
+ bool CreateDebugCallback();
- bool PickDevices(const vk::DispatchLoaderDynamic& dldi);
+ bool CreateSurface();
+
+ bool PickDevices();
void Report() const;
Core::System& system;
- vk::Instance instance;
- vk::SurfaceKHR surface;
+ Common::DynamicLibrary library;
+ vk::DispatchLoaderDynamic dld;
+
+ UniqueInstance instance;
+ UniqueSurfaceKHR surface;
VKScreenInfo screen_info;