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::RHI::MultiDeviceQuery Class Reference

#include <MultiDeviceQuery.h>

Inherits AZ::RHI::MultiDeviceResource.

Public Member Functions

 AZ_CLASS_ALLOCATOR (MultiDeviceQuery, AZ::SystemAllocator, 0)
 
 AZ_RTTI (MultiDeviceQuery, "{F72033E8-7A91-40BF-80E2-7262223362DB}", MultiDeviceResource)
 
Ptr< QueryGetDeviceQuery (int deviceIndex) const
 Returns the device-specific Query for the given index.
 
const MultiDeviceQueryPoolGetQueryPool () const
 Returns the query pool that this query belongs to.
 
MultiDeviceQueryPoolGetQueryPool ()
 
QueryHandle GetHandle (int deviceIndex)
 
void Shutdown () override final
 Shuts down the device-specific resources by detaching them from their parent pool.
 
void InvalidateViews () override final
 Invalidates all views by setting off events on all device-specific ResourceInvalidateBusses.
 
- Public Member Functions inherited from AZ::RHI::MultiDeviceResource
 AZ_RTTI (MultiDeviceResource, "{613AED98-48FD-4453-98F8-6956D2133489}", MultiDeviceObject)
 
bool IsAttachment () const
 Returns whether the resource is currently an attachment on a frame graph.
 
virtual void Shutdown () override=0
 Shuts down the resource by detaching it from its parent pool.
 
const MultiDeviceResourcePoolGetPool () const
 
MultiDeviceResourcePoolGetPool ()
 
uint32_t GetVersion () const
 
const FrameAttachmentGetFrameAttachment () const
 Returns the frame attachment associated with this image (if it exists).
 
virtual void InvalidateViews ()=0
 
- Public Member Functions inherited from AZ::RHI::MultiDeviceObject
 AZ_RTTI (MultiDeviceObject, "{17D34F71-944C-4AF5-9823-627474C4C0A6}", Object)
 
bool IsInitialized () const
 Returns whether the device object is initialized.
 
MultiDevice::DeviceMask GetDeviceMask () 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.
 

Friends

class MultiDeviceQueryPool
 

Additional Inherited Members

- Protected Member Functions inherited from AZ::RHI::MultiDeviceObject
void Init (MultiDevice::DeviceMask deviceMask)
 The derived class should call this method to assign the device.
 
void Shutdown () override
 Clears the current bound device to null.
 
template<typename T >
void IterateDevices (T callback)
 Helper method that will iterate over all selected devices and call the provided callback.
 
- Protected Member Functions inherited from AZ::RHI::Object
void add_ref () const
 
void release () const
 
- Protected Attributes inherited from AZ::RHI::Object
AZStd::atomic_int m_useCount = 0
 

Detailed Description

MultiDeviceQuery resource for recording gpu data like occlusion, timestamp or pipeline statistics. Queries belong to a MultiDeviceQueryPool and their types are determined by the pool.

Member Function Documentation

◆ GetHandle()

QueryHandle AZ::RHI::MultiDeviceQuery::GetHandle ( int  deviceIndex)
inline

Returns the device-specific query handle

Parameters
deviceIndexSpecify from which device the query handle should be retrieved

◆ InvalidateViews()

void AZ::RHI::MultiDeviceQuery::InvalidateViews ( )
finaloverridevirtual

Invalidates all views by setting off events on all device-specific ResourceInvalidateBusses.

Implements AZ::RHI::MultiDeviceResource.

◆ Shutdown()

void AZ::RHI::MultiDeviceQuery::Shutdown ( )
finaloverridevirtual

Shuts down the device-specific resources by detaching them from their parent pool.

Implements AZ::RHI::MultiDeviceResource.


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