diff options
| author | Tobin Ehlis <tobine@google.com> | 2016-09-14 11:21:55 -0600 |
|---|---|---|
| committer | Tobin Ehlis <tobine@google.com> | 2016-09-22 07:21:24 -0600 |
| commit | c9b557f81aa5e480823e8051ea1663cacb8668c4 (patch) | |
| tree | da232d8fab8bffafa26fa126acf8e243f2e36253 /layers/core_validation.h | |
| parent | 43da0bd4137df812a76b7f1488f641a4c8299f35 (diff) | |
| download | usermoji-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.h | 4 |
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? |
