UraniumCompute 0.1.0
A GPU accelerated parallel task scheduler
UN::VulkanCommandList Class Referencefinal
Inheritance diagram for UN::VulkanCommandList:
UN::CommandListBase UN::DeviceObjectBase< ICommandList > UN::Object< ICommandList > UN::ICommandList UN::IDeviceObject UN::IObject

Public Member Functions

 VulkanCommandList (IComputeDevice *pDevice)
 
CommandListState GetState () override
 Get command list state. More...
 
void Reset () override
 Reset the object to uninitialized state. More...
 
- Public Member Functions inherited from UN::CommandListBase
ResultCode Init (const CommandListDesc &desc) override
 
IFenceGetFence () override
 Get the fence that is signaled after submit operation is complete. More...
 
CommandListBuilder Begin () override
 Set the command list state to CommandListState::Recording. More...
 
void ResetState () override
 Set the command list state to CommandListState::Initial. More...
 
ResultCode Submit () override
 Submit the command list and set the state to CommandListState::Pending. More...
 
- Public Member Functions inherited from UN::DeviceObjectBase< ICommandList >
const DescriptorTypeGetDesc () const override
 
std::string_view GetDebugName () const override
 
IComputeDeviceGetDevice () const override
 
UInt32 Release () override
 
- Public Member Functions inherited from UN::Object< ICommandList >
UInt32 Release () override
 
 Object (const Object &)=delete
 
 Object (Object &&)=delete
 
UInt32 AddRef () override
 Add a strong reference to the object. More...
 
void AttachRefCounter (ReferenceCounter *pRefCounter) override
 Attach a reference counter to the object. More...
 
ReferenceCounterGetRefCounter () override
 Get reference counter attached to this object. More...
 
virtual const DescriptorTypeGetDesc () const =0
 
virtual ResultCode Init (const DescriptorType &desc)=0
 
virtual IFenceGetFence ()=0
 Get the fence that is signaled after submit operation is complete. More...
 
virtual CommandListState GetState ()=0
 Get command list state. More...
 
virtual CommandListBuilder Begin ()=0
 Set the command list state to CommandListState::Recording. More...
 
virtual void ResetState ()=0
 Set the command list state to CommandListState::Initial. More...
 
virtual ResultCode Submit ()=0
 Submit the command list and set the state to CommandListState::Pending. More...
 
virtual std::string_view GetDebugName () const =0
 Get debug name of the object.
 
virtual void Reset ()=0
 Reset the object to uninitialized state. More...
 
virtual IComputeDeviceGetDevice () const =0
 Get the compute device this object was created on. More...
 
virtual UInt32 AddRef ()=0
 Add a strong reference to object's reference counter. More...
 
virtual UInt32 Release ()=0
 Remove a strong reference from object's reference counter. More...
 
virtual void AttachRefCounter (ReferenceCounter *counter)=0
 Attach a ReferenceCounter to this object. More...
 
virtual ReferenceCounterGetRefCounter ()=0
 Get reference counter that belongs to this object. More...
 

Static Public Member Functions

static ResultCode Create (IComputeDevice *pDevice, ICommandList **ppCommandList)
 

Protected Member Functions

ResultCode InitInternal (const CommandListDesc &desc) override
 
ResultCode BeginInternal () override
 
ResultCode EndInternal () override
 
ResultCode ResetStateInternal () override
 
ResultCode SubmitInternal () override
 
void CmdMemoryBarrier (IBuffer *pBuffer, const MemoryBarrierDesc &barrierDesc) override
 
void CmdCopy (IBuffer *pSource, IBuffer *pDestination, const BufferCopyRegion &region) override
 
void CmdDispatch (IKernel *pKernel, Int32 x, Int32 y, Int32 z) override
 
- Protected Member Functions inherited from UN::CommandListBase
virtual ResultCode InitInternal (const CommandListDesc &desc)=0
 
virtual ResultCode BeginInternal ()=0
 
virtual ResultCode EndInternal ()=0
 
virtual ResultCode ResetStateInternal ()=0
 
virtual ResultCode SubmitInternal ()=0
 
void End () override
 
 CommandListBase (IComputeDevice *pDevice)
 
- Protected Member Functions inherited from UN::DeviceObjectBase< ICommandList >
void Init (std::string_view name, const DescriptorType &desc)
 Common device object initializer. More...
 
 DeviceObjectBase (IComputeDevice *pDevice)
 
- Protected Member Functions inherited from UN::Object< ICommandList >
UInt32 Release (F &&destroyCallback)
 
virtual void End ()=0
 
virtual void CmdMemoryBarrier (IBuffer *pBuffer, const MemoryBarrierDesc &barrierDesc)=0
 
virtual void CmdCopy (IBuffer *pSource, IBuffer *pDestination, const BufferCopyRegion &region)=0
 
virtual void CmdDispatch (IKernel *pKernel, Int32 x, Int32 y, Int32 z)=0
 

Additional Inherited Members

- Public Types inherited from UN::DeviceObjectBase< ICommandList >
using DescriptorType = typename TInterface::DescriptorType
 
- Public Types inherited from UN::ICommandList
using DescriptorType = CommandListDesc
 
- Protected Attributes inherited from UN::CommandListBase
CommandListState m_State = CommandListState::Invalid
 
Ptr< IFencem_pFence
 
- Protected Attributes inherited from UN::DeviceObjectBase< ICommandList >
Ptr< IComputeDevicem_pDevice
 
DescriptorType m_Desc
 
std::string m_Name
 

Member Function Documentation

◆ BeginInternal()

ResultCode UN::VulkanCommandList::BeginInternal ( )
overrideprotectedvirtual

Implements UN::CommandListBase.

◆ CmdCopy()

void UN::VulkanCommandList::CmdCopy ( IBuffer pSource,
IBuffer pDestination,
const BufferCopyRegion region 
)
overrideprotectedvirtual

Implements UN::ICommandList.

◆ CmdDispatch()

void UN::VulkanCommandList::CmdDispatch ( IKernel pKernel,
Int32  x,
Int32  y,
Int32  z 
)
overrideprotectedvirtual

Implements UN::ICommandList.

◆ CmdMemoryBarrier()

void UN::VulkanCommandList::CmdMemoryBarrier ( IBuffer pBuffer,
const MemoryBarrierDesc barrierDesc 
)
overrideprotectedvirtual

Implements UN::ICommandList.

◆ EndInternal()

ResultCode UN::VulkanCommandList::EndInternal ( )
overrideprotectedvirtual

Implements UN::CommandListBase.

◆ GetState()

CommandListState UN::VulkanCommandList::GetState ( )
overridevirtual

Get command list state.

Implements UN::ICommandList.

◆ InitInternal()

ResultCode UN::VulkanCommandList::InitInternal ( const CommandListDesc desc)
overrideprotectedvirtual

Implements UN::CommandListBase.

◆ Reset()

void UN::VulkanCommandList::Reset ( )
overridevirtual

Reset the object to uninitialized state.

Implements UN::IDeviceObject.

◆ ResetStateInternal()

ResultCode UN::VulkanCommandList::ResetStateInternal ( )
overrideprotectedvirtual

Implements UN::CommandListBase.

◆ SubmitInternal()

ResultCode UN::VulkanCommandList::SubmitInternal ( )
overrideprotectedvirtual

Implements UN::CommandListBase.


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