class CommandBufferPool

Defined at line 23 of file ../../src/ui/lib/escher/impl/command_buffer_pool.h

Manages the lifecycle of CommandBuffers.

Not thread-safe.

Public Methods

void CommandBufferPool (vk::Device device, vk::Queue queue, uint32_t queue_family_index, CommandBufferSequencer * sequencer, bool supports_graphics_and_compute, bool use_protected_memory)

The CommandBufferPool does not take ownership of the device and queue.

Defined at line 14 of file ../../src/ui/lib/escher/impl/command_buffer_pool.cc

vk::Device device ()

Defined at line 43 of file ../../src/ui/lib/escher/impl/command_buffer_pool.h

vk::Queue queue ()

Defined at line 44 of file ../../src/ui/lib/escher/impl/command_buffer_pool.h

void ~CommandBufferPool ()

If there are still any pending buffers, this will block until they are

finished.

Defined at line 54 of file ../../src/ui/lib/escher/impl/command_buffer_pool.cc

CommandBuffer * GetCommandBuffer ()

Get a ready-to-use CommandBuffer; a new one will be allocated if necessary.

If a callback is provided, it will be run at some time after the buffer

has finished running on the GPU.

Defined at line 80 of file ../../src/ui/lib/escher/impl/command_buffer_pool.cc

bool Cleanup ()

Do periodic housekeeping. Return true if cleanup was complete, i.e. all

pending command buffers are now finished.

Defined at line 109 of file ../../src/ui/lib/escher/impl/command_buffer_pool.cc