From 9391244210c941ecf167feb1e6f3c5e8a890b260 Mon Sep 17 00:00:00 2001 From: Mark Lobodzinski Date: Wed, 19 Jul 2017 15:18:15 -0600 Subject: layers: Move GetDeviceQueue func in OT Special case function must avoid code generation. Change-Id: I786d4ef4a8855f10e9cfe1234a5d885056f50a93 --- layers/object_tracker_utils.cpp | 12 ++++++++++++ 1 file changed, 12 insertions(+) (limited to 'layers/object_tracker_utils.cpp') diff --git a/layers/object_tracker_utils.cpp b/layers/object_tracker_utils.cpp index 298c089e..f7ac60f6 100644 --- a/layers/object_tracker_utils.cpp +++ b/layers/object_tracker_utils.cpp @@ -335,6 +335,18 @@ VKAPI_ATTR void VKAPI_CALL DestroyDevice(VkDevice device, const VkAllocationCall FreeLayerDataPtr(key, layer_data_map); } +VKAPI_ATTR void VKAPI_CALL GetDeviceQueue(VkDevice device, uint32_t queueFamilyIndex, uint32_t queueIndex, VkQueue *pQueue) { + std::unique_lock lock(global_lock); + ValidateObject(device, device, kVulkanObjectTypeDevice, false, VALIDATION_ERROR_29605601, VALIDATION_ERROR_UNDEFINED); + lock.unlock(); + + get_dispatch_table(ot_device_table_map, device)->GetDeviceQueue(device, queueFamilyIndex, queueIndex, pQueue); + + lock.lock(); + CreateQueue(device, *pQueue); + AddQueueInfo(device, queueFamilyIndex, *pQueue); +} + VKAPI_ATTR void VKAPI_CALL UpdateDescriptorSets(VkDevice device, uint32_t descriptorWriteCount, const VkWriteDescriptorSet *pDescriptorWrites, uint32_t descriptorCopyCount, const VkCopyDescriptorSet *pDescriptorCopies) { -- cgit v1.2.3