aboutsummaryrefslogtreecommitdiff
path: root/layers/core_validation.h
diff options
context:
space:
mode:
authorTobin Ehlis <tobine@google.com>2016-09-14 11:21:55 -0600
committerTobin Ehlis <tobine@google.com>2016-09-22 07:21:24 -0600
commitc9b557f81aa5e480823e8051ea1663cacb8668c4 (patch)
treeda232d8fab8bffafa26fa126acf8e243f2e36253 /layers/core_validation.h
parent43da0bd4137df812a76b7f1488f641a4c8299f35 (diff)
downloadusermoji-c9b557f81aa5e480823e8051ea1663cacb8668c4.tar.xz
layers: Add support code to handle in_use for missing objects
Add case block to in-use Increment/Decrement functions to handle the missing object types that may be bound to a command buffer. The actual bindings for these missing types will be added in a future commit. Here are the types that were added: VkBufferView VkImageView VkDescriptorPool VkCommandPool VkFramebuffer VkRenderPass VkDeviceMemory Also added new error enums for all of these type except RENDERPASS which already had an appropriate error enum. Unify object BASE_NODE look-up for removeCommandBufferBinding() and DecrementBoundResources() to use common GetStateStructPtrFromObject() function. Finally, had to update the state-wrapping class for DescriptorPool, DeviceMemory and RenderPass to derive from BASE_NODE so that in_use can be tracked.
Diffstat (limited to 'layers/core_validation.h')
-rw-r--r--layers/core_validation.h4
1 files changed, 2 insertions, 2 deletions
diff --git a/layers/core_validation.h b/layers/core_validation.h
index d7374f6c..aa3058ed 100644
--- a/layers/core_validation.h
+++ b/layers/core_validation.h
@@ -176,7 +176,7 @@ class QUERY_POOL_NODE : public BASE_NODE {
VkQueryPoolCreateInfo createInfo;
};
-class FRAMEBUFFER_NODE : BASE_NODE {
+class FRAMEBUFFER_NODE : public BASE_NODE {
public:
using BASE_NODE::in_use;
using BASE_NODE::cb_bindings;
@@ -196,7 +196,7 @@ typedef struct stencil_data {
} CBStencilData;
// Track command pools and their command buffers
-struct COMMAND_POOL_NODE {
+struct COMMAND_POOL_NODE : public BASE_NODE {
VkCommandPoolCreateFlags createFlags;
uint32_t queueFamilyIndex;
// TODO: why is this std::list?