Open 3D Engine Atom Gem API Reference 25.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::RayTracingBufferPools Class Reference

#include <RayTracingBufferPools.h>

Inherits AZ::RHI::MultiDeviceObject.

Public Member Functions

 AZ_CLASS_ALLOCATOR (RayTracingBufferPools, AZ::SystemAllocator, 0)
 
 AZ_RTTI (RayTracingBufferPools, "{59397661-F5A5-44DE-9B1D-E6F5BC32DC51}", MultiDeviceObject)
 
 AZ_RHI_MULTI_DEVICE_OBJECT_GETTER (RayTracingBufferPools)
 
const RHI::Ptr< RHI::BufferPool > & GetShaderTableBufferPool () const
 Accessors.
 
const RHI::Ptr< RHI::BufferPool > & GetScratchBufferPool () const
 
const RHI::Ptr< RHI::BufferPool > & GetAabbStagingBufferPool () const
 
const RHI::Ptr< RHI::BufferPool > & GetBlasBufferPool () const
 
const RHI::Ptr< RHI::BufferPool > & GetTlasInstancesBufferPool () const
 
const RHI::Ptr< RHI::BufferPool > & GetTlasBufferPool () const
 
void Init (MultiDevice::DeviceMask deviceMask)
 Initializes the multi-device BufferPools as well as all device-specific DeviceRayTracingBufferPools.
 
- 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.
 
AZ_FORCE_INLINE bool IsDeviceSet (int deviceIndex) const
 
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.
 

Protected Member Functions

virtual RHI::BufferBindFlags GetShaderTableBufferBindFlags () const
 
virtual RHI::BufferBindFlags GetScratchBufferBindFlags () const
 
virtual RHI::BufferBindFlags GetAabbStagingBufferBindFlags () const
 
virtual RHI::BufferBindFlags GetBlasBufferBindFlags () const
 
virtual RHI::BufferBindFlags GetTlasInstancesBufferBindFlags () const
 
virtual RHI::BufferBindFlags GetTlasBufferBindFlags () const
 
- 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 >
AZ_FORCE_INLINE void IterateDevices (T callback)
 Helper method that will iterate over all selected devices and call the provided callback.
 
template<typename T , typename U >
AZ_FORCE_INLINE decltype(auto) IterateObjects (U callback)
 
template<typename T , typename U >
AZ_FORCE_INLINE decltype(auto) IterateObjects (U callback) const
 
template<typename T >
AZ_FORCE_INLINE Ptr< T > GetDeviceObject (int deviceIndex) const
 
- Protected Member Functions inherited from AZ::RHI::Object
void add_ref () const
 
void release () const
 

Additional Inherited Members

- Static Public Member Functions inherited from AZ::RHI::MultiDeviceObject
template<typename T >
static AZ_FORCE_INLINE void IterateDevices (MultiDevice::DeviceMask deviceMask, T callback)
 
- Protected Attributes inherited from AZ::RHI::MultiDeviceObject
AZStd::unordered_map< int, Ptr< DeviceObject > > m_deviceObjects
 A map of all device-specific objects, indexed by the device index.
 
- Protected Attributes inherited from AZ::RHI::Object
AZStd::atomic_int m_useCount = 0
 

Detailed Description

RayTracingBufferPools

This class encapsulates all of the BufferPools needed for ray tracing, freeing the application from setting up and managing the buffers pools individually.


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