Add validation for barriers within render passes.
Conflicts:
layers/draw_state.cpp
diff --git a/layers/draw_state.h b/layers/draw_state.h
index c55acf4..542013c 100755
--- a/layers/draw_state.h
+++ b/layers/draw_state.h
@@ -40,7 +40,8 @@
DRAWSTATE_INVALID_IMAGE_LAYOUT, // Invalid Image layout
DRAWSTATE_INVALID_PIPELINE, // Invalid Pipeline handle referenced
DRAWSTATE_INVALID_PIPELINE_CREATE_STATE, // Attempt to create a pipeline with invalid state
- DRAWSTATE_INVALID_COMMAND_BUFFER, // Invalid CommandBuffer referenced
+ DRAWSTATE_INVALID_COMMAND_BUFFER, // Invalid CommandBuffer referenced
+ DRAWSTATE_INVALID_BARRIER, // Invalid Barrier
DRAWSTATE_VTX_INDEX_OUT_OF_BOUNDS, // binding in vkCmdBindVertexData() too large for PSO's pVertexBindingDescriptions array
DRAWSTATE_VTX_INDEX_ALIGNMENT_ERROR, // binding offset in vkCmdBindIndexBuffer() out of alignment based on indexType
//DRAWSTATE_MISSING_DOT_PROGRAM, // No "dot" program in order to generate png image
@@ -150,6 +151,11 @@
VkImageLayout initialLayout;
} IMAGE_CMD_BUF_NODE;
+typedef struct _RENDER_PASS_NODE {
+ VkRenderPassCreateInfo* createInfo;
+ std::vector<bool> hasSelfDependency;
+} RENDER_PASS_NODE;
+
// Descriptor Data structures
// Layout Node has the core layout data
typedef struct _LAYOUT_NODE {