|
UraniumCompute 0.1.0
A GPU accelerated parallel task scheduler
|
Public Member Functions | |
| VulkanFence (IComputeDevice *pDevice) | |
| void | Reset () override |
| Reset the object to uninitialized state. More... | |
| ResultCode | SignalOnCpu () override |
| Signal the fence on CPU. More... | |
| ResultCode | WaitOnCpu (std::chrono::nanoseconds timeout) override |
| Wait for the fence to signal. More... | |
| ResultCode | WaitOnCpu () override |
| Wait for the fence to signal. More... | |
| void | ResetState () override |
| Reset fence state. More... | |
| FenceState | GetState () override |
| Get current fence state. More... | |
| VkFence | GetNativeFence () const |
Public Member Functions inherited from UN::FenceBase | |
| ResultCode | Init (const DescriptorType &desc) override |
Public Member Functions inherited from UN::DeviceObjectBase< IFence > | |
| const DescriptorType & | GetDesc () const override |
| std::string_view | GetDebugName () const override |
| IComputeDevice * | GetDevice () const override |
| UInt32 | Release () override |
Public Member Functions inherited from UN::Object< IFence > | |
| 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... | |
| ReferenceCounter * | GetRefCounter () override |
| Get reference counter attached to this object. More... | |
| virtual const DescriptorType & | GetDesc () const =0 |
| virtual ResultCode | Init (const DescriptorType &desc)=0 |
| virtual ResultCode | SignalOnCpu ()=0 |
| Signal the fence on CPU. More... | |
| virtual ResultCode | WaitOnCpu (std::chrono::nanoseconds timeout)=0 |
| Wait for the fence to signal. More... | |
| virtual ResultCode | WaitOnCpu ()=0 |
| Wait for the fence to signal. More... | |
| virtual void | ResetState ()=0 |
| Reset fence state. More... | |
| virtual FenceState | GetState ()=0 |
| Get current fence state. 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 IComputeDevice * | GetDevice () 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 ReferenceCounter * | GetRefCounter ()=0 |
| Get reference counter that belongs to this object. More... | |
Static Public Member Functions | |
| static ResultCode | Create (IComputeDevice *pDevice, IFence **ppFence) |
Protected Member Functions | |
| ResultCode | InitInternal (const DescriptorType &desc) override |
Protected Member Functions inherited from UN::FenceBase | |
| virtual ResultCode | InitInternal (const DescriptorType &desc)=0 |
| FenceBase (IComputeDevice *pDevice) | |
Protected Member Functions inherited from UN::DeviceObjectBase< IFence > | |
| void | Init (std::string_view name, const DescriptorType &desc) |
| Common device object initializer. More... | |
| DeviceObjectBase (IComputeDevice *pDevice) | |
Protected Member Functions inherited from UN::Object< IFence > | |
| UInt32 | Release (F &&destroyCallback) |
Additional Inherited Members | |
Public Types inherited from UN::DeviceObjectBase< IFence > | |
| using | DescriptorType = typename TInterface::DescriptorType |
Public Types inherited from UN::IFence | |
| using | DescriptorType = FenceDesc |
Protected Attributes inherited from UN::DeviceObjectBase< IFence > | |
| Ptr< IComputeDevice > | m_pDevice |
| DescriptorType | m_Desc |
| std::string | m_Name |
|
overridevirtual |
Get current fence state.
Implements UN::IFence.
|
overrideprotectedvirtual |
Implements UN::FenceBase.
|
overridevirtual |
Reset the object to uninitialized state.
Implements UN::IDeviceObject.
|
overridevirtual |
Reset fence state.
Implements UN::IFence.
|
overridevirtual |
Signal the fence on CPU.
Implements UN::IFence.
|
inlineoverridevirtual |
Wait for the fence to signal.
Same as WaitOnCpu(std::chrono::nanoseconds), but without a timeout.
Implements UN::IFence.
|
overridevirtual |
Wait for the fence to signal.
| timeout | - Waiting timeout in nanoseconds. |
Implements UN::IFence.