Function Prototype
vkResetDescriptorPool
Resets a descriptor pool object
To return all descriptor sets allocated from a given pool to the pool, rather than freeing individual descriptor sets, call:
VkResult vkResetDescriptorPool(
VkDevice device,
VkDescriptorPool descriptorPool,
VkDescriptorPoolResetFlags flags);
device
is the logical device that owns the descriptor pool.descriptorPool
is the descriptor pool to be reset.flags
is reserved for future use.
Resetting a descriptor pool recycles all of the resources from all of the descriptor sets allocated from the descriptor pool back to the descriptor pool, and the descriptor sets are implicitly freed.
Valid Usage
VUID-vkResetDescriptorPool-descriptorPool-00313
All uses of descriptorPool
(via any allocated descriptor sets)
must have completed execution
Valid Usage (Implicit)
VUID-vkResetDescriptorPool-device-parameter
device
must be a valid VkDevice handle
VUID-vkResetDescriptorPool-descriptorPool-parameter
descriptorPool
must be a valid VkDescriptorPool handle
VUID-vkResetDescriptorPool-flags-zerobitmask
flags
must be 0
VUID-vkResetDescriptorPool-descriptorPool-parent
descriptorPool
must have been created, allocated, or retrieved from device
Host Synchronization
- Host access to
descriptorPool
must be externally synchronized - Host access to any
VkDescriptorSet
objects allocated fromdescriptorPool
must be externally synchronized ::