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

Public Member Functions

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...
 
- Public Member Functions inherited from UN::ICommandList
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...
 
- Public Member Functions inherited from UN::IDeviceObject
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...
 

Protected Member Functions

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)
 
- Protected Member Functions inherited from UN::ICommandList
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
 

Protected Attributes

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
 

Additional Inherited Members

- Public Types inherited from UN::DeviceObjectBase< ICommandList >
using DescriptorType = typename TInterface::DescriptorType
 
- Public Types inherited from UN::ICommandList
using DescriptorType = CommandListDesc
 

Member Function Documentation

◆ Begin()

CommandListBuilder UN::CommandListBase::Begin ( )
overridevirtual

Set the command list state to CommandListState::Recording.

Implements UN::ICommandList.

◆ End()

void UN::CommandListBase::End ( )
overrideprotectedvirtual

Implements UN::ICommandList.

◆ GetFence()

IFence * UN::CommandListBase::GetFence ( )
overridevirtual

Get the fence that is signaled after submit operation is complete.

Implements UN::ICommandList.

◆ Init()

ResultCode UN::CommandListBase::Init ( const CommandListDesc desc)
overridevirtual

Implements UN::ICommandList.

◆ ResetState()

void UN::CommandListBase::ResetState ( )
overridevirtual

Set the command list state to CommandListState::Initial.

Implements UN::ICommandList.

◆ Submit()

ResultCode UN::CommandListBase::Submit ( )
overridevirtual

Submit the command list and set the state to CommandListState::Pending.

Implements UN::ICommandList.


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