From b0708f165601fad16aa59715dbe32796a6e7081e Mon Sep 17 00:00:00 2001 From: ladevieq Date: Tue, 6 Sep 2022 22:41:00 +0200 Subject: Setup for texture upload system --- include/vk-context.hpp | 21 +++++++++++---------- 1 file changed, 11 insertions(+), 10 deletions(-) (limited to 'include/vk-context.hpp') diff --git a/include/vk-context.hpp b/include/vk-context.hpp index 8d0b91f..58d7ce9 100644 --- a/include/vk-context.hpp +++ b/include/vk-context.hpp @@ -1,11 +1,15 @@ -#ifndef __VK_CONTEXT_HPP_ -#define __VK_CONTEXT_HPP_ +#pragma once -#include #include "vulkan-loader.hpp" using VmaAllocator = struct VmaAllocator_T*; +struct queue { + VkQueue handle; + uint32_t index; + VkQueueFlags usages; +}; + class vkcontext { public: vkcontext(); @@ -19,8 +23,7 @@ class vkcontext { VmaAllocator allocator; - uint32_t queue_index; - VkQueue queue; + queue graphics_queue; private: void create_instance(); @@ -33,16 +36,14 @@ class vkcontext { void select_physical_device(); - void select_queue(VkQueueFlags queueUsage); + [[nodiscard]] uint32_t select_queue(VkQueueFlags queue_usage) const; - static void check_available_instance_layers(std::vector& needed_layers); + static void check_available_instance_layers(const char* needed_layers[], size_t needed_layers_count); - static void check_available_instance_extensions(std::vector& needed_extensions); + static void check_available_instance_extensions(const char* needed_extensions[], size_t needed_extensions_count); static bool support_required_features(VkPhysicalDevice physical_device); VkDebugUtilsMessengerEXT debugMessenger; }; - -#endif // !__VK_CONTEXT_HPP_ -- cgit v1.3