Skip to content

LiteFX::Rendering::Backends::DirectX12CommandBuffer

Records commands for a DirectX12Queue

Synopsis

Declared in <litefx/backends/dx12.hpp>

class [[dllimport, dllexport]] DirectX12CommandBuffer final
    : public CommandBuffer<DirectX12CommandBuffer, IDirectX12Buffer, IDirectX12VertexBuffer, IDirectX12IndexBuffer, IDirectX12Image, DirectX12Barrier, DirectX12PipelineState, DirectX12BottomLevelAccelerationStructure, DirectX12TopLevelAccelerationStructure>
    , public ComResource<ID3D12GraphicsCommandList7>

Base Classes

Type Aliases

Member Functions

NameDescription
~DirectX12CommandBuffer [destructor] [virtual]Destructor
barrier [virtual]Executes the transitions that have been added to barrier.
barrier [virtual]Executes the transitions that have been added to barrier.
begin [virtual]Sets the command buffer into recording state, so that it can receive command that should be submitted to the parent CommandQueue.
bind [virtual]Binds an arbitrary input range of descriptor sets to the last pipeline that was used by the command buffer.
bind [virtual]Binds an arbitrary input range of descriptor sets to the last pipeline that was used by the command buffer.
bind [virtual]Binds the provided descriptor to the last pipeline that was used by the command buffer.
bind [virtual]Binds a index buffer to the pipeline.
bind [virtual]Binds a vertex buffer to the pipeline.
bind [virtual]Binds the provided descriptor to the last pipeline that was used by the command buffer.
bind [virtual]Binds a index buffer to the pipeline.
bind [virtual]Binds a vertex buffer to the pipeline.
bind [virtual]Binds an arbitrary input range of descriptor sets to the provided pipeline.
bind [virtual]Binds an arbitrary input range of descriptor sets to the provided pipeline.
bind [virtual]Binds the provided descriptor set to the provided pipeline.
bind [virtual]Binds the provided descriptor set to the provided pipeline.
buildAccelerationStructure [virtual]Builds a bottom-level acceleration structure.
buildAccelerationStructure [virtual]Builds a top-level acceleration structure.
buildAccelerationStructure [virtual]Builds a bottom-level acceleration structure.
buildAccelerationStructure [virtual]Builds a top-level acceleration structure.
copyAccelerationStructure [virtual]Copies the acceleration structure from into the acceleration structure to.
copyAccelerationStructure [virtual]Copies the acceleration structure from into the acceleration structure to.
copyAccelerationStructure [virtual]Copies the acceleration structure from into the acceleration structure to.
copyAccelerationStructure [virtual]Copies the acceleration structure from into the acceleration structure to.
dispatch [virtual]Executes a compute shader.
dispatchIndirect [virtual]Executes a set of indirect dispatches.
dispatchIndirect [virtual]Executes a set of indirect dispatches.
dispatchIndirect Executes a set of indirect dispatches.
dispatchMesh [virtual]Executes a mesh shader pipeline.
dispatchMeshIndirect [virtual]Executes a set of indirect mesh shader dispatches.
dispatchMeshIndirect [virtual]Executes a set of indirect mesh shader dispatches.
dispatchMeshIndirect [virtual]Executes a set of indirect mesh shader dispatches.
dispatchMeshIndirect [virtual]Executes a set of indirect mesh shader dispatches.
draw [virtual]Draws a number of vertices from the currently bound vertex buffer.
draw [virtual]Draws all vertices from the vertex buffer provided in vertexBuffer.
drawIndexed [virtual]Draws the currently bound vertex buffer with a set of indices from the currently bound index buffer.
drawIndexed [virtual]Draws the currently bound vertex buffer with a set of indices from the currently bound index buffer.
drawIndexed [virtual]Draws the vertex buffer provided by vertexBuffer using the index buffer, provided by indexBuffer.
drawIndexedIndirect [virtual]Executes a set of indirect indexed draw calls.
drawIndexedIndirect [virtual]Executes a set of indirect indexed draw calls.
drawIndexedIndirect [virtual]Executes a set of indirect indexed draw calls.
drawIndexedIndirect [virtual]Executes a set of indirect indexed draw calls.
drawIndirect [virtual]Executes a set of indirect non-indexed draw calls.
drawIndirect [virtual]Executes a set of indirect non-indexed draw calls.
drawIndirect [virtual]Executes a set of indirect non-indexed draw calls.
drawIndirect [virtual]Executes a set of indirect non-indexed draw calls.
end [virtual]Ends recording commands on the command buffer.
execute [virtual]Executes a series of secondary command buffers/bundles.
execute [virtual]Executes a series of secondary command buffers/bundles.
execute [virtual]Executes a secondary command buffer/bundle.
execute [virtual]Executes a secondary command buffer/bundle.
handle [virtual]Returns the resource managed by the class.
isSecondary [virtual]Returns true, if the command buffer is a secondary command buffer, or false otherwise.
makeBarrier [virtual]Creates a new barrier instance.
pushConstants [virtual]Pushes a block of memory into the push constants backing memory.
pushConstants [virtual]Pushes a block of memory into the push constants backing memory.
queue Gets a pointer to the command queue that this command buffer was allocated from or nullptr, if the queue has already been released.
setBlendFactors [virtual]Sets the blend factors for the subsequent draw calls.
setDepthBounds [virtual]Sets the depth range for the depth bounds test.
setScissors [virtual]Sets the scissor rectangles used for the subsequent draw calls.
setScissors [virtual]Sets the scissor rectangle used for the subsequent draw calls.
setStencilRef [virtual]Sets the stencil reference for the subsequent draw calls.
setViewports [virtual]Sets the viewports used for the subsequent draw calls.
setViewports [virtual]Sets the viewport used for the subsequent draw calls.
submit [virtual]Submits the command buffer to parent command
traceRays Executes a query on a ray-tracing pipeline.
traceRays [virtual]Executes a query on a ray-tracing pipeline.
traceRays [virtual]Executes a query on a ray-tracing pipeline.
track [virtual]Sets up tracking for a buffer, so that it will not be destroyed until the command buffer has been executed.
track [virtual]Sets up tracking for a buffer, so that it will not be destroyed until the command buffer has been executed.
track [virtual]Sets up tracking for a buffer, so that it will not be destroyed until the command buffer has been executed.
track [virtual]Sets up tracking for a descriptor set, so that bindings aren't released until the command buffer has been executed.
transfer [virtual]Performs a buffer-to-buffer transfer from a temporary buffer into target.
transfer [virtual]Performs a buffer-to-buffer transfer from a temporary buffer into target.
transfer [virtual]Performs a buffer-to-buffer transfer from a temporary buffer into target.
transfer [virtual]Performs a buffer-to-buffer transfer from a temporary buffer into target.
transfer [virtual]Performs a buffer-to-buffer transfer from a temporary buffer into target.
transfer [virtual]Performs a buffer-to-buffer transfer from a temporary buffer into target.
transfer [virtual]Performs a buffer-to-buffer transfer from source to target.
transfer [virtual]Performs a buffer-to-image transfer from source to target.
transfer [virtual]Performs an image-to-buffer transfer from source to target.
transfer [virtual]Performs an image-to-image transfer from source to target.
transfer [virtual]Performs a buffer-to-buffer transfer from source to target.
transfer [virtual]Performs a buffer-to-image transfer from source to target.
transfer [virtual]Performs an image-to-buffer transfer from source to target.
transfer [virtual]Performs an image-to-image transfer from source to target.
transfer [virtual]Performs a buffer-to-buffer transfer from source to target.
transfer [virtual]Performs a buffer-to-image transfer from source to target.
transfer [virtual]Performs a buffer-to-buffer transfer from source to target.
transfer [virtual]Performs a buffer-to-image transfer from source to target.
transfer [virtual]Performs a buffer-to-buffer transfer from source to target.
transfer [virtual]Performs a buffer-to-image transfer from source to target.
transfer [virtual]Performs a buffer-to-buffer transfer from source to target.
transfer [virtual]Performs a buffer-to-image transfer from source to target.
transfer [virtual]Performs a buffer-to-buffer transfer from a temporary buffer into target.
transfer [virtual]Performs a buffer-to-buffer transfer from a temporary buffer into target.
updateAccelerationStructure [virtual]Updates a bottom-level acceleration structure.
updateAccelerationStructure [virtual]Updates a top-level acceleration structure.
updateAccelerationStructure [virtual]Updates a bottom-level acceleration structure.
updateAccelerationStructure [virtual]Updates a top-level acceleration structure.
use [virtual]Sets the active pipeline state.
use [virtual]Sets the active pipeline state.
writeTimingEvent [virtual]Writes the current GPU time stamp value for the timing event.

Static Member Functions

NameDescription
create Initializes the command buffer from a command queue.

Using Declarations

Protected Member Functions

NameDescription
operator= [deleted]Assignment operator
operator= Assignment operator
handle [virtual]Returns the resource managed by the class.

Friends

NameDescription
LiteFX::SharedObject::AllocatorAn allocator used to allocate the shared object.
LiteFX::Rendering::Backends::DirectX12CommandBuffer::DirectX12CommandBufferImpl
LiteFX::PimplPtrA smart pointer that manages an implementation instance for a public interface class.

See Also

DirectX12Queue