Skip to content

vke.CommandPool

Jean-Philippe Bruyère edited this page Feb 2, 2020 · 1 revision

Command pools are opaque objects that command buffer memory is allocated from, and which allow the implementation to amortize the cost of resource creation across multiple command buffers.

namespace: vke

Inheritance Hierarchy

  • CommandPool

Syntax

public class CommandPool : Activable

Constructors

prototype description
CommandPool (Device device, uint qFamIdx) Create and activate a new Command Pool.
CommandPool (Queue queue) Initializes a new instance of the [[CommandPool]]"/> class.

Properties

name description

Methods

prototype description
void Activate() Activation of the object, the reference count is incremented and if Debug utils is enabled, name is set.
CommandBuffer AllocateAndStart(VkCommandBufferUsageFlags usage=0, VkCommandBufferLevel level=VkCommandBufferLevel.Primary) Allocates a new command buffer and automatically start it.
CommandBuffer AllocateCommandBuffer(VkCommandBufferLevel level=VkCommandBufferLevel.Primary) Allocates single command buffer. When command buffers are first allocated, they are in the initial state.
CommandBuffer[] AllocateCommandBuffer(uint count, VkCommandBufferLevel level=VkCommandBufferLevel.Primary) Allocates multiple command buffer.
void FreeCommandBuffers(params CommandBuffer[] cmds) Any primary command buffer that is in the recording or executable state and has any element of the command buffer list recorded into it, becomes invalid.
void Reset(VkCommandPoolResetFlags flags=0) Resetting a command pool recycles all of the resources from all of the command buffers allocated from the command pool back to the command pool. All command buffers that have been allocated from the command pool are put in the initial state. Any primary command buffer allocated from another VkCommandPool that is in the recording or executable state and has a secondary command buffer allocated from commandPool recorded into it, becomes invalid.
string ToString() __

Events

name description
Clone this wiki locally