summaryrefslogtreecommitdiff
path: root/hk21/vulkan/loader/loader.hpp
diff options
context:
space:
mode:
authorSteven Le Rouzic <steven.lerouzic@gmail.com>2025-04-08 23:18:47 +0200
committerSteven Le Rouzic <steven.lerouzic@gmail.com>2025-04-08 23:18:47 +0200
commit921d1811ece439086aa238a6356a54d00f179e27 (patch)
tree8c1a8c756176e54ea70bfce8b28344a6116bc78f /hk21/vulkan/loader/loader.hpp
parentd10e76d5a1a6b2b425cc6c780d91f52695177a02 (diff)
Move the Vulkan loader
Diffstat (limited to 'hk21/vulkan/loader/loader.hpp')
-rw-r--r--hk21/vulkan/loader/loader.hpp27
1 files changed, 27 insertions, 0 deletions
diff --git a/hk21/vulkan/loader/loader.hpp b/hk21/vulkan/loader/loader.hpp
new file mode 100644
index 0000000..e1147f4
--- /dev/null
+++ b/hk21/vulkan/loader/loader.hpp
@@ -0,0 +1,27 @@
+// Copyright 2025 Steven Le Rouzic
+//
+// SPDX-License-Identifier: BSD-3-Clause
+
+#pragma once
+
+#include <asl/base/integers.hpp>
+#include <asl/types/status.hpp>
+
+#include "hk21/vulkan/vulkan.hpp"
+#include "hk21/vulkan/loader/fns.hpp"
+
+#define FN(NAME) extern PFN_##NAME NAME;
+VULKAN_GLOBAL_FNS
+VULKAN_INSTANCE_FNS
+VULKAN_DEVICE_FNS
+#undef FN
+
+namespace vulkan_loader
+{
+
+asl::status load_global(PFN_vkGetInstanceProcAddr load_fn);
+asl::status load_instance(PFN_vkGetInstanceProcAddr load_fn, VkInstance instance);
+asl::status load_device(VkDevice device);
+
+} // namespace vulkan_loader
+