diff --git a/liblava/base/device.cpp b/liblava/base/device.cpp index ee79c62573b10dcc83614282a9041f649be1631a..8b39724a5c9ff84578a83ba9e8f83821f004b384 100644 --- a/liblava/base/device.cpp +++ b/liblava/base/device.cpp @@ -53,6 +53,7 @@ namespace lava { graphics_queue_list.clear(); compute_queue_list.clear(); transfer_queue_list.clear(); + queue_list.clear(); index_map queue_family_map; @@ -73,6 +74,8 @@ namespace lava { compute_queue_list.push_back({ queue, queue_create_info_list[i].queueFamilyIndex }); if (param.queue_info_list[i].flags & VK_QUEUE_TRANSFER_BIT) transfer_queue_list.push_back({ queue, queue_create_info_list[i].queueFamilyIndex }); + + queue_list.push_back({ queue, queue_create_info_list[i].queueFamilyIndex }); } } @@ -86,6 +89,7 @@ namespace lava { graphics_queue_list.clear(); compute_queue_list.clear(); transfer_queue_list.clear(); + queue_list.clear(); call().vkDestroyDescriptorPool(vk_device, descriptor_pool, memory::alloc()); descriptor_pool = 0; diff --git a/liblava/base/device.hpp b/liblava/base/device.hpp index aa1aa49e6b568feb4fbdeca6a87dda1380331008..9da9193d68b963a87d4d15dccbfe79d5362788cb 100644 --- a/liblava/base/device.hpp +++ b/liblava/base/device.hpp @@ -109,6 +109,14 @@ namespace lava { return get_transfer_queues(); } + queue::list const& get_queues() const { + return queue_list; + } + + queue::list const& queues() const { + return get_queues(); + } + VkDevice get() const { return vk_device; } @@ -155,6 +163,7 @@ namespace lava { device::queue::list graphics_queue_list; device::queue::list compute_queue_list; device::queue::list transfer_queue_list; + device::queue::list queue_list; VkPhysicalDeviceFeatures features;