aboutsummaryrefslogtreecommitdiff
path: root/layers/buffer_validation.h
diff options
context:
space:
mode:
authorTobin Ehlis <tobine@google.com>2017-04-07 12:20:30 -0600
committerTobin Ehlis <tobine@google.com>2017-04-14 15:46:26 -0600
commit7b59978c199c64bd8428cdae570f989002a7a2a4 (patch)
tree73feaf1c10ead0280011020d5c81dc88357297e1 /layers/buffer_validation.h
parent32cd102c36c6fca2679904aa9e59fdffc64ded59 (diff)
downloadusermoji-7b59978c199c64bd8428cdae570f989002a7a2a4.tar.xz
layers:Add image layout validation for descriptors
This change adds validation to make sure that an image layout at the time the image is used in a descriptor matches the layout that was given when the descriptor was updated. Because image view covers a range of mip levels, loop over each level and verify layouts one at a time. Also Updated a number of validate functions to use cont ptr params for data that they aren't changing.
Diffstat (limited to 'layers/buffer_validation.h')
-rw-r--r--layers/buffer_validation.h10
1 files changed, 5 insertions, 5 deletions
diff --git a/layers/buffer_validation.h b/layers/buffer_validation.h
index e4d1143f..1494afe0 100644
--- a/layers/buffer_validation.h
+++ b/layers/buffer_validation.h
@@ -51,9 +51,9 @@ uint32_t ResolveRemainingLayers(const VkImageSubresourceRange *range, uint32_t l
bool VerifyClearImageLayout(layer_data *device_data, GLOBAL_CB_NODE *cb_node, IMAGE_STATE *image_state,
VkImageSubresourceRange range, VkImageLayout dest_image_layout, const char *func_name);
-bool VerifyImageLayout(layer_data *device_data, GLOBAL_CB_NODE *cb_node, IMAGE_STATE *image_state,
+bool VerifyImageLayout(layer_data const *device_data, GLOBAL_CB_NODE const *cb_node, IMAGE_STATE *image_state,
VkImageSubresourceLayers subLayers, VkImageLayout explicit_layout, VkImageLayout optimal_layout,
- const char *caller, UNIQUE_VALIDATION_ERROR_CODE msg_code);
+ const char *caller, UNIQUE_VALIDATION_ERROR_CODE msg_code, bool *error);
void RecordClearImageLayout(layer_data *dev_data, GLOBAL_CB_NODE *cb_node, VkImage image, VkImageSubresourceRange range,
VkImageLayout dest_image_layout);
@@ -68,13 +68,13 @@ bool PreCallValidateCmdClearDepthStencilImage(layer_data *dev_data, VkCommandBuf
VkImageLayout imageLayout, uint32_t rangeCount,
const VkImageSubresourceRange *pRanges);
-bool FindLayoutVerifyNode(layer_data *device_data, GLOBAL_CB_NODE *pCB, ImageSubresourcePair imgpair,
+bool FindLayoutVerifyNode(layer_data const *device_data, GLOBAL_CB_NODE const *pCB, ImageSubresourcePair imgpair,
IMAGE_CMD_BUF_LAYOUT_NODE &node, const VkImageAspectFlags aspectMask);
-bool FindLayoutVerifyLayout(layer_data *device_data, ImageSubresourcePair imgpair, VkImageLayout &layout,
+bool FindLayoutVerifyLayout(layer_data const *device_data, ImageSubresourcePair imgpair, VkImageLayout &layout,
const VkImageAspectFlags aspectMask);
-bool FindCmdBufLayout(layer_data *device_data, GLOBAL_CB_NODE *pCB, VkImage image, VkImageSubresource range,
+bool FindCmdBufLayout(layer_data const *device_data, GLOBAL_CB_NODE const *pCB, VkImage image, VkImageSubresource range,
IMAGE_CMD_BUF_LAYOUT_NODE &node);
bool FindGlobalLayout(layer_data *device_data, ImageSubresourcePair imgpair, VkImageLayout &layout);