Module gfx_hal::command

source ·
Expand description

Command buffers.

A command buffer collects a list of commands to be submitted to the device. Each command buffer has specific capabilities for graphics, compute or transfer operations, and can be either a “primary” command buffer or a “secondary” command buffer. Operations always start from a primary command buffer, but a primary command buffer can contain calls to secondary command buffers that contain snippets of commands that do specific things, similar to function calls.

All the possible commands are implemented in the RawCommandBuffer trait, and then the CommandBuffer and related types make a generic, strongly-typed wrapper around it that only expose the methods that are valid for the capabilities it provides.

Structs

Specifies a source region and a destination region in a buffer for copying. All values are in units of bytes.
Bundles together all the parameters needed to copy a buffer to an image or vice-versa.
Depth-stencil target clear values.
A variant of ClearDepthStencil that has a #[repr(C)] layout and so is used when a known layout is needed.
A strongly-typed command buffer that will only implement methods that are valid for the operations it supports.
Option flags for various command buffer settings.
Parameters for an image blit operation, where a portion of one image is copied into another, possibly with scaling and filtering.
Bundles together all the parameters needed to copy data from one Image to another.
Parameters for an image resolve operation, where a multi-sampled image is copied into a single-sampled image.
An object that records commands into a command buffer inline, that is, without secondary command buffers.
An object that records commands into a command buffer where each command must be a call to execute a secondary command buffer.
This struct contains all methods for all commands submittable during a subpass. It is used to implement the identical portions of RenderPassInlineEncoder and SubpassCommandBuffer.
A secondary command buffer recorded entirely within a subpass.

Enums

Attachment clear description for the current subpass.
A universal clear color supporting integer formats as well as the standard floating-point.
General clear values for attachments (color or depth-stencil).
Indicates a Submit that can be submitted multiple times.
Indicates a Submit that can only be submitted once.
Indicates a primary command buffer. Vulkan describes a primary command buffer as one which can be directly submitted to a queue, and can execute Secondary command buffers.
An enum that indicates at runtime whether a command buffer is primary or secondary, similar to what command::Primary and command::Secondary do at compile-time.
Indicates a secondary command buffer.
Specifies how commands for the following renderpasses will be recorded.

Traits

A trait indicating the level of a command buffer.
A trait that describes all the operations that must be provided by a Backend’s command buffer.
Trait indicating how many times a Submit object can be submitted to a command buffer.
A property of a command buffer to be submitted to a queue with specific capability.

Type Definitions

Offset for dynamic descriptors.
A convenience alias for not typing out the full signature of a secondary command buffer.

Unions

Unsafe variant of ClearColor.
Unsafe variant of ClearValue.