template<typename EngineImplTraits>
Diligent::TopLevelASBase class

Template class implementing base functionality of the top-level acceleration structure object.

Template parameters
EngineImplTraits - Engine implementation type traits.

Base classes

template<class BaseInterface, typename RenderDeviceImplType, typename ObjectDescType>
class DeviceObjectBase<EngineImplTraits::TopLevelASInterface, EngineImplTraits::RenderDeviceImplType, TopLevelASDesc>
Template class implementing base functionality of the device object.

Constructors, destructors, conversion operators

TopLevelASBase(IReferenceCounters* pRefCounters, RenderDeviceImplType* pDevice, const TopLevelASDesc& Desc, bool bIsDeviceInternal = false)

Public functions

auto GetInstanceDesc(const char* Name) const -> TLASInstanceDesc final
Implementation of ITopLevelAS::GetInstanceDesc().
auto GetBuildInfo() const -> TLASBuildInfo final
Implementation of ITopLevelAS::GetBuildInfo().
void SetState(RESOURCE_STATE State) final
Implementation of ITopLevelAS::SetState().
auto GetState() const -> RESOURCE_STATE final
Implementation of ITopLevelAS::GetState().
auto GetScratchBufferSizes() const -> ScratchBufferSizes final
Implementation of ITopLevelAS::GetScratchBufferSizes().

Function documentation

template<typename EngineImplTraits>
Diligent::TopLevelASBase<EngineImplTraits>::TopLevelASBase(IReferenceCounters* pRefCounters, RenderDeviceImplType* pDevice, const TopLevelASDesc& Desc, bool bIsDeviceInternal = false)

Parameters
pRefCounters - Reference counters object that controls the lifetime of this TLAS.
pDevice - Pointer to the device.
Desc - TLAS description.
bIsDeviceInternal - Flag indicating if the TLAS is an internal device object and must not keep a strong reference to the device.