Diligent Engine  v.2.4.g
Public Types | Public Member Functions | List of all members
Diligent::BottomLevelASVkImpl Class Referencefinal

#include <BottomLevelASVkImpl.hpp>

Inheritance diagram for Diligent::BottomLevelASVkImpl:
Diligent::BottomLevelASBase< EngineVkImplTraits > Diligent::DeviceObjectBase< EngineVkImplTraits ::BottomLevelASInterface, EngineVkImplTraits ::RenderDeviceImplType, BottomLevelASDesc > Diligent::ObjectBase< EngineVkImplTraits ::BottomLevelASInterface > Diligent::RefCountedObject< EngineVkImplTraits ::BottomLevelASInterface >

Public Types

using TBottomLevelASBase = BottomLevelASBase< EngineVkImplTraits >
 
- Public Types inherited from Diligent::BottomLevelASBase< EngineVkImplTraits >
using BaseInterface = typename EngineVkImplTraits ::BottomLevelASInterface
 
using RenderDeviceImplType = typename EngineVkImplTraits ::RenderDeviceImplType
 
using TDeviceObjectBase = DeviceObjectBase< BaseInterface, RenderDeviceImplType, BottomLevelASDesc >
 
- Public Types inherited from Diligent::DeviceObjectBase< EngineVkImplTraits ::BottomLevelASInterface, EngineVkImplTraits ::RenderDeviceImplType, BottomLevelASDesc >
typedef ObjectBase< EngineVkImplTraits ::BottomLevelASInterface > TBase
 

Public Member Functions

 BottomLevelASVkImpl (IReferenceCounters *pRefCounters, RenderDeviceVkImpl *pRenderDeviceVk, const BottomLevelASDesc &Desc)
 
 BottomLevelASVkImpl (IReferenceCounters *pRefCounters, RenderDeviceVkImpl *pRenderDeviceVk, const BottomLevelASDesc &Desc, RESOURCE_STATE InitialState, VkAccelerationStructureKHR vkBLAS)
 
 ~BottomLevelASVkImpl ()
 
virtual void * GetNativeHandle () override final
 Implementation of IBottomLevelAS::GetNativeHandle() in Vulkan backend. More...
 
virtual VkAccelerationStructureKHR GetVkBLAS () const override
 Implementation of IBottomLevelASVk::GetVkBLAS(). More...
 
virtual VkDeviceAddress GetVkDeviceAddress () const override
 Implementation of IBottomLevelASVk::GetVkDeviceAddress(). More...
 
- Public Member Functions inherited from Diligent::BottomLevelASBase< EngineVkImplTraits >
 BottomLevelASBase (IReferenceCounters *pRefCounters, RenderDeviceImplType *pDevice, const BottomLevelASDesc &Desc, bool bIsDeviceInternal=false)
 
 ~BottomLevelASBase ()
 
Uint32 UpdateGeometryIndex (const char *Name, Uint32 &ActualIndex, bool OnUpdate)
 
virtual Uint32 GetGeometryDescIndex (const char *Name) const override final
 Implementation of IBottomLevelAS::GetGeometryDescIndex() More...
 
virtual Uint32 GetGeometryIndex (const char *Name) const override final
 Implementation of IBottomLevelAS::GetGeometryIndex() More...
 
virtual void SetState (RESOURCE_STATE State) override final
 Implementation of IBottomLevelAS::SetState() More...
 
virtual RESOURCE_STATE GetState () const override final
 Implementation of IBottomLevelAS::GetState() More...
 
virtual ScratchBufferSizes GetScratchBufferSizes () const override final
 Implementation of IBottomLevelAS::GetScratchBufferSizes() More...
 
bool IsInKnownState () const
 
bool CheckState (RESOURCE_STATE State) const
 
void CopyGeometryDescription (const BottomLevelASBase &SrcBLAS) noexcept
 
void SetActualGeometryCount (Uint32 Count)
 
virtual Uint32 GetActualGeometryCount () const override final
 
- Public Member Functions inherited from Diligent::DeviceObjectBase< EngineVkImplTraits ::BottomLevelASInterface, EngineVkImplTraits ::RenderDeviceImplType, BottomLevelASDesc >
 DeviceObjectBase (IReferenceCounters *pRefCounters, EngineVkImplTraits ::RenderDeviceImplType *pDevice, const BottomLevelASDesc &ObjDesc, bool bIsDeviceInternal=false)
 
 DeviceObjectBase (const DeviceObjectBase &)=delete
 
 DeviceObjectBase (DeviceObjectBase &&)=delete
 
DeviceObjectBaseoperator= (const DeviceObjectBase &)=delete
 
DeviceObjectBaseoperator= (DeviceObjectBase &&)=delete
 
virtual ~DeviceObjectBase ()
 
virtual Atomics::Long Release () override final
 
virtual const BottomLevelASDescGetDesc () const override final
 
virtual Int32 GetUniqueID () const override final
 Returns unique identifier. More...
 
virtual void SetUserData (IObject *pUserData) override final
 Implementation of IDeviceObject::SetUserData. More...
 
virtual IObjectGetUserData () const override final
 Implementation of IDeviceObject::GetUserData. More...
 
EngineVkImplTraits ::RenderDeviceImplType * GetDevice () const
 
- Public Member Functions inherited from Diligent::ObjectBase< EngineVkImplTraits ::BottomLevelASInterface >
 ObjectBase (IReferenceCounters *pRefCounters)
 
virtual void QueryInterface (const INTERFACE_ID &IID, IObject **ppInterface)
 
- Public Member Functions inherited from Diligent::RefCountedObject< EngineVkImplTraits ::BottomLevelASInterface >
 RefCountedObject (IReferenceCounters *pRefCounters, BaseCtorArgTypes &&... BaseCtorArgs) noexcept
 
virtual ~RefCountedObject ()
 
virtual IReferenceCountersGetReferenceCounters () const override final
 
virtual ReferenceCounterValueType AddRef () override final
 
ReferenceCounterValueType Release (TPreObjectDestroy PreObjectDestroy)
 

Additional Inherited Members

- Static Public Member Functions inherited from Diligent::DeviceObjectBase< EngineVkImplTraits ::BottomLevelASInterface, EngineVkImplTraits ::RenderDeviceImplType, BottomLevelASDesc >
static bool IsSameObject (const DeviceObjectBase *pObj1, const DeviceObjectBase *pObj2)
 
- Protected Member Functions inherited from Diligent::RefCountedObject< EngineVkImplTraits ::BottomLevelASInterface >
void operator delete (void *ptr)
 
void operator delete (void *ptr, ObjectAllocatorType &Allocator, const Char *dbgDescription, const char *dbgFileName, const Int32 dbgLineNumber)
 
- Protected Attributes inherited from Diligent::BottomLevelASBase< EngineVkImplTraits >
RESOURCE_STATE m_State
 
BLASNameToIndex m_NameToIndex
 
void * m_pRawPtr
 
Uint32 m_GeometryCount
 
ScratchBufferSizes m_ScratchSize
 
- Protected Attributes inherited from Diligent::DeviceObjectBase< EngineVkImplTraits ::BottomLevelASInterface, EngineVkImplTraits ::RenderDeviceImplType, BottomLevelASDesc >
EngineVkImplTraits ::RenderDeviceImplType *const m_pDevice
 Pointer to the device. More...
 
BottomLevelASDesc m_Desc
 Object description. More...
 
UniqueIdHelper< EngineVkImplTraits ::BottomLevelASInterface > m_UniqueID
 
const bool m_bIsDeviceInternal
 
RefCntAutoPtr< IObjectm_pUserData
 

Member Typedef Documentation

◆ TBottomLevelASBase

Constructor & Destructor Documentation

◆ BottomLevelASVkImpl() [1/2]

Diligent::BottomLevelASVkImpl::BottomLevelASVkImpl ( IReferenceCounters pRefCounters,
RenderDeviceVkImpl pRenderDeviceVk,
const BottomLevelASDesc Desc 
)

◆ BottomLevelASVkImpl() [2/2]

Diligent::BottomLevelASVkImpl::BottomLevelASVkImpl ( IReferenceCounters pRefCounters,
RenderDeviceVkImpl pRenderDeviceVk,
const BottomLevelASDesc Desc,
RESOURCE_STATE  InitialState,
VkAccelerationStructureKHR  vkBLAS 
)

◆ ~BottomLevelASVkImpl()

Diligent::BottomLevelASVkImpl::~BottomLevelASVkImpl ( )

Member Function Documentation

◆ GetNativeHandle()

virtual void* Diligent::BottomLevelASVkImpl::GetNativeHandle ( )
inlinefinaloverridevirtual

Implementation of IBottomLevelAS::GetNativeHandle() in Vulkan backend.

◆ GetVkBLAS()

virtual VkAccelerationStructureKHR Diligent::BottomLevelASVkImpl::GetVkBLAS ( ) const
inlineoverridevirtual

Implementation of IBottomLevelASVk::GetVkBLAS().

◆ GetVkDeviceAddress()

virtual VkDeviceAddress Diligent::BottomLevelASVkImpl::GetVkDeviceAddress ( ) const
inlineoverridevirtual

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