Maintains a bounded pool of hardware buffer backed texture sources that can be used as swapchain imag...
AHBTexturePoolVK & operator=(const AHBTexturePoolVK &)=delete
PoolEntry Pop()
Pops an texture source from the pool. If the pool is empty, a new texture source is created and retur...
AHBTexturePoolVK(const AHBTexturePoolVK &)=delete
bool IsValid() const
If the pool can create and pool hardware buffer backed texture sources. The only reason valid texture...
void Push(std::shared_ptr< AHBTextureSourceVK > texture, fml::UniqueFD render_ready_fence)
Push a popped texture back into the pool. This also performs a GC.
std::shared_ptr< AHBTextureSourceVK > texture
std::shared_ptr< fml::UniqueFD > render_ready_fence
PoolEntry(std::shared_ptr< AHBTextureSourceVK > p_item, fml::UniqueFD p_render_ready_fence={})
constexpr bool IsValid() const