class UniformBufferPool
Defined at line 24 of file ../../src/ui/lib/escher/impl/uniform_buffer_pool.h
Vends host-accessible Buffers whose resources are automatically returned
to the pool upon destruction. If necessary, it will grow by creating new
buffers (and allocating backing memory for them). |additional_flags| allows
the user to customize the memory that is allocated by the pool; by default,
only eHostVisible is used. Not thread-safe.
Public Methods
void UniformBufferPool (EscherWeakPtr escher, size_t ring_size, GpuAllocator * allocator, vk::MemoryPropertyFlags additional_flags)
Defined at line 18 of file ../../src/ui/lib/escher/impl/uniform_buffer_pool.cc
void ~UniformBufferPool ()
Defined at line 30 of file ../../src/ui/lib/escher/impl/uniform_buffer_pool.cc
UniformBufferPoolWeakPtr GetWeakPtr ()
Defined at line 32 of file ../../src/ui/lib/escher/impl/uniform_buffer_pool.h
BufferPtr Allocate ()
Allocate a buffer that will be returned to this pool when the last
reference to it is dropped.
Defined at line 32 of file ../../src/ui/lib/escher/impl/uniform_buffer_pool.cc
vk::DeviceSize buffer_size ()
Return the size of buffers allocated by this allocator; constant over the
allocator's lifetime.
NOTE: this value is currently always 64kB, which is a typical max-size for
Vulkan uniform buffers.
Defined at line 47 of file ../../src/ui/lib/escher/impl/uniform_buffer_pool.h
void BeginFrame ()
Rotate the ring buffer so that buffers freed in previous frames are moved
toward the front.
Defined at line 96 of file ../../src/ui/lib/escher/impl/uniform_buffer_pool.cc