Open 3D Engine Atom Gem API Reference 23.10.0
O3DE is an open-source, fully-featured, high-fidelity, modular 3D engine for building games and simulations, available to every industry.
AZ::DX12::CommandListBase Class Referenceabstract

Inherits AZ::RHI::DeviceObject.

Inherited by AZ::DX12::CommandList.

Public Member Functions

 CommandListBase (const CommandListBase &)=delete
 
virtual void Reset (ID3D12CommandAllocator *commandAllocator)
 
virtual void Close ()
 
bool IsRecording () const
 
void QueueTransitionBarrier (ID3D12Resource *resource, D3D12_RESOURCE_STATES stateBefore, D3D12_RESOURCE_STATES stateAfter, const BarrierOp::CommandListState *state=nullptr)
 
void QueueTransitionBarrier (const D3D12_RESOURCE_TRANSITION_BARRIER &barrier, const BarrierOp::CommandListState *state=nullptr)
 
void QueueTransitionBarrier (const BarrierOp &op)
 Adds a transition barrier operation that will be emitted when flusing the barriers.
 
void QueueAliasingBarrier (const D3D12_RESOURCE_ALIASING_BARRIER &barrier, const BarrierOp::CommandListState *state=nullptr)
 
void QueueAliasingBarrier (const BarrierOp &op)
 Adds an aliasing barrier operation that will be emitted when flusing the barriers.
 
void FlushBarriers ()
 
ID3D12GraphicsCommandList * GetCommandList ()
 
const ID3D12GraphicsCommandList * GetCommandList () const
 
RHI::HardwareQueueClass GetHardwareQueueClass () const
 
void SetAftermathEventMarker (const char *markerData)
 
- Public Member Functions inherited from AZ::RHI::DeviceObject
 AZ_RTTI (DeviceObject, "{17D34F71-944C-4AF5-9823-627474C4C0A6}", Object)
 
bool IsInitialized () const
 Returns whether the device object is initialized.
 
DeviceGetDevice () const
 
- Public Member Functions inherited from AZ::RHI::Object
 AZ_RTTI (Object, "{E43378F1-2331-4173-94B8-990ED20E6003}")
 
void SetName (const Name &name)
 Sets the name of the object.
 
const Name & GetName () const
 Returns the name set on the object by SetName.
 
uint32_t use_count ()
 Returns the current use count of the object.
 

Protected Member Functions

void Init (Device &device, RHI::HardwareQueueClass hardwareQueueClass, ID3D12CommandAllocator *commandAllocator)
 
void SetBarrierState (const BarrierOp::CommandListState &state)
 Sets the state of the command list for emitting a barrier.
 
void SetSamplePositions (const RHI::MultisampleState &state)
 Sets the sample positions of the command list.
 
- Protected Member Functions inherited from AZ::RHI::DeviceObject
void Init (Device &device)
 The derived class should call this method to assign the device.
 
void Shutdown () override
 Clears the current bound device to null.
 
- Protected Member Functions inherited from AZ::RHI::Object
void add_ref () const
 
void release () const
 

Additional Inherited Members

- Protected Attributes inherited from AZ::RHI::Object
AZStd::atomic_int m_useCount = 0
 

Member Function Documentation

◆ QueueAliasingBarrier()

void AZ::DX12::CommandListBase::QueueAliasingBarrier ( const D3D12_RESOURCE_ALIASING_BARRIER &  barrier,
const BarrierOp::CommandListState state = nullptr 
)

Adds an aliasing barrier that will be emitted when flusing the barriers. Can specify a state that the command list need to be before emitting the barrier. A null state means that it doesn't matter in which state the command list is.

◆ QueueTransitionBarrier() [1/2]

void AZ::DX12::CommandListBase::QueueTransitionBarrier ( const D3D12_RESOURCE_TRANSITION_BARRIER &  barrier,
const BarrierOp::CommandListState state = nullptr 
)

Adds a transition barrier that will be emitted when flusing the barriers. Can specify a state that the command list need to be before emitting the barrier. A null state means that it doesn't matter in which state the command list is.

◆ QueueTransitionBarrier() [2/2]

void AZ::DX12::CommandListBase::QueueTransitionBarrier ( ID3D12Resource *  resource,
D3D12_RESOURCE_STATES  stateBefore,
D3D12_RESOURCE_STATES  stateAfter,
const BarrierOp::CommandListState state = nullptr 
)

Adds a transition barrier that will be emitted when flusing the barriers. Can specify a state that the command list need to be before emitting the barrier. A null state means that it doesn't matter in which state the command list is.


The documentation for this class was generated from the following file: