layers: Update PostCallRecordCreateImage
authorMark Lobodzinski <mark@lunarg.com>
Fri, 27 Jan 2017 21:25:32 +0000 (14:25 -0700)
committerMark Lobodzinski <mark@lunarg.com>
Tue, 31 Jan 2017 16:55:10 +0000 (09:55 -0700)
Changed to use layer_data accessor functions instead of passing in
items individually.

Change-Id: I55b92a4e0a6fff0e74516b9249c213f7d514cc8e

layers/buffer_validation.cpp
layers/buffer_validation.h
layers/core_validation.cpp

index 76a743f..8fca611 100644 (file)
@@ -185,17 +185,14 @@ bool PreCallValidateCreateImage(core_validation::layer_data *device_data, const
     return skip_call;
 }
 
-void PostCallRecordCreateImage(std::unordered_map<VkImage, std::unique_ptr<IMAGE_STATE>> *imageMap,
-                               std::unordered_map<VkImage, std::vector<ImageSubresourcePair>> *imageSubresourceMap,
-                               std::unordered_map<ImageSubresourcePair, IMAGE_LAYOUT_NODE> *imageLayoutMap,
-                               const VkImageCreateInfo *pCreateInfo, VkImage *pImage) {
+void PostCallRecordCreateImage(core_validation::layer_data *device_data, const VkImageCreateInfo *pCreateInfo, VkImage *pImage) {
     IMAGE_LAYOUT_NODE image_state;
     image_state.layout = pCreateInfo->initialLayout;
     image_state.format = pCreateInfo->format;
-    (*imageMap).insert(std::make_pair(*pImage, std::unique_ptr<IMAGE_STATE>(new IMAGE_STATE(*pImage, pCreateInfo))));
+    GetImageMap(device_data)->insert(std::make_pair(*pImage, std::unique_ptr<IMAGE_STATE>(new IMAGE_STATE(*pImage, pCreateInfo))));
     ImageSubresourcePair subpair{*pImage, false, VkImageSubresource()};
-    (*imageSubresourceMap)[*pImage].push_back(subpair);
-    (*imageLayoutMap)[subpair] = image_state;
+    (*core_validation::GetImageSubresourceMap(device_data))[*pImage].push_back(subpair);
+    (*core_validation::GetImageLayoutMap(device_data))[subpair] = image_state;
 }
 
 bool PreCallValidateDestroyImage(core_validation::layer_data *device_data, VkImage image, IMAGE_STATE **image_state,
index dab6ac2..b2d5274 100644 (file)
 bool PreCallValidateCreateImage(core_validation::layer_data *device_data, const VkImageCreateInfo *pCreateInfo,
                                 const VkAllocationCallbacks *pAllocator, VkImage *pImage);
 
-void PostCallRecordCreateImage(std::unordered_map<VkImage, std::unique_ptr<IMAGE_STATE>> *imageMap,
-                               std::unordered_map<VkImage, std::vector<ImageSubresourcePair>> *imageSubresourceMap,
-                               std::unordered_map<ImageSubresourcePair, IMAGE_LAYOUT_NODE> *imageLayoutMap,
-                               const VkImageCreateInfo *pCreateInfo, VkImage *pImage);
+void PostCallRecordCreateImage(core_validation::layer_data *device_data, const VkImageCreateInfo *pCreateInfo, VkImage *pImage);
 
 void PostCallRecordDestroyImage(core_validation::layer_data *device_data, VkImage image, IMAGE_STATE *image_state,
                                 VK_OBJECT obj_struct);
index 01d6f41..ed45633 100644 (file)
@@ -6402,8 +6402,7 @@ VKAPI_ATTR VkResult VKAPI_CALL CreateImage(VkDevice device, const VkImageCreateI
     }
     if (VK_SUCCESS == result) {
         std::lock_guard<std::mutex> lock(global_lock);
-        PostCallRecordCreateImage(&dev_data->imageMap, &dev_data->imageSubresourceMap, &dev_data->imageLayoutMap, pCreateInfo,
-                                  pImage);
+        PostCallRecordCreateImage(dev_data, pCreateInfo, pImage);
     }
     return result;
 }