diff options
| author | Tobin Ehlis <tobine@google.com> | 2017-04-07 12:20:30 -0600 |
|---|---|---|
| committer | Tobin Ehlis <tobine@google.com> | 2017-04-14 15:46:26 -0600 |
| commit | 7b59978c199c64bd8428cdae570f989002a7a2a4 (patch) | |
| tree | 73feaf1c10ead0280011020d5c81dc88357297e1 /layers/buffer_validation.h | |
| parent | 32cd102c36c6fca2679904aa9e59fdffc64ded59 (diff) | |
| download | usermoji-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.h | 10 |
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); |
