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

Inherits AZ::RHI::DeviceObject.

Inherited by AZ::Vulkan::BinarySemaphore, and AZ::Vulkan::TimelineSemaphore.

Public Types

using WaitSemaphore = AZStd::pair< VkPipelineStageFlags, RHI::Ptr< Semaphore > >
 

Public Member Functions

 AZ_RTTI (Semaphore, "{A0946587-C4FD-49E7-BB6D-92EA80CE140E}", RHI::DeviceObject)
 
 AZ_CLASS_ALLOCATOR (Semaphore, AZ::ThreadPoolAllocator)
 
RHI::ResultCode Init (Device &device)
 
void Reset ()
 
void SetSignalEvent (const AZStd::shared_ptr< AZ::Vulkan::SignalEvent > &signalEvent)
 
void SetSignalEventBitToSignal (int bitToSignal)
 
void SetSignalEventDependencies (SignalEvent::BitSet dependencies)
 
void SetRecycleValue (bool canRecycle)
 
bool GetRecycleValue () const
 
VkSemaphore GetNativeSemaphore () const
 
virtual void SignalEvent ()
 
virtual void WaitEvent () const
 
- 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 Shutdown () override
 Clears the current bound device to null.
 
- Protected Member Functions inherited from AZ::RHI::DeviceObject
void Init (Device &device)
 The derived class should call this method to assign the device.
 
- Protected Member Functions inherited from AZ::RHI::Object
void add_ref () const
 
void release () const
 

Protected Attributes

AZStd::shared_ptr< AZ::Vulkan::SignalEventm_signalEvent
 
int m_bitToSignal = -1
 
SignalEvent::BitSet m_waitDependencies = 0
 
VkSemaphore m_nativeSemaphore = VK_NULL_HANDLE
 
bool m_recyclable = true
 
- Protected Attributes inherited from AZ::RHI::Object
AZStd::atomic_int m_useCount = 0
 

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