Creates and manages the lifecycle of |vk::DescriptorPoolVK| objects. More...
#include <descriptor_pool_vk.h>
Public Member Functions | |
~DescriptorPoolRecyclerVK ()=default | |
DescriptorPoolRecyclerVK (std::weak_ptr< ContextVK > context) | |
Creates a recycler for the given |ContextVK|. More... | |
vk::UniqueDescriptorPool | Get () |
Gets a descriptor pool. More... | |
std::shared_ptr< DescriptorPoolVK > | GetDescriptorPool () |
void | Reclaim (DescriptorCacheMap descriptor_sets, std::vector< vk::UniqueDescriptorPool > pools) |
Static Public Attributes | |
static constexpr size_t | kMaxRecycledPools = 32u |
The maximum number of descriptor pools this recycler will hold onto. More... | |
Creates and manages the lifecycle of |vk::DescriptorPoolVK| objects.
Definition at line 70 of file descriptor_pool_vk.h.
|
default |
|
inlineexplicit |
Creates a recycler for the given |ContextVK|.
[in] | context | The context to create the recycler for. |
Definition at line 81 of file descriptor_pool_vk.h.
vk::UniqueDescriptorPool impeller::DescriptorPoolRecyclerVK::Get | ( | ) |
Gets a descriptor pool.
This may create a new descriptor pool if no existing pools had the necessary capacity.
Definition at line 138 of file descriptor_pool_vk.cc.
std::shared_ptr< DescriptorPoolVK > impeller::DescriptorPoolRecyclerVK::GetDescriptorPool | ( | ) |
Definition at line 174 of file descriptor_pool_vk.cc.
void impeller::DescriptorPoolRecyclerVK::Reclaim | ( | DescriptorCacheMap | descriptor_sets, |
std::vector< vk::UniqueDescriptorPool > | pools | ||
) |
Definition at line 111 of file descriptor_pool_vk.cc.
References kMaxRecycledPools.
|
staticconstexpr |
The maximum number of descriptor pools this recycler will hold onto.
Definition at line 76 of file descriptor_pool_vk.h.
Referenced by Reclaim().