Diligent Engine
 
Loading...
Searching...
No Matches
Diligent::ITopLevelASVk Struct Referenceabstract

Exposes Vulkan-specific functionality of a Top-level acceleration structure object. More...

#include <TopLevelASVk.h>

Inheritance diagram for Diligent::ITopLevelASVk:
Diligent::ITopLevelAS Diligent::IDeviceObject Diligent.IObject

Public Member Functions

virtual VkAccelerationStructureKHR DILIGENT_CALL_TYPE GetVkTLAS () const =0
 Returns a Vulkan handle of the internal top-level AS object.
 
virtual VkDeviceAddress DILIGENT_CALL_TYPE GetVkDeviceAddress () const =0
 Returns a Vulkan device address of the internal top-level AS object.
 
- Public Member Functions inherited from Diligent::ITopLevelAS
virtual const TopLevelASDesc &DILIGENT_CALL_TYPE GetDesc () const override=0
 Returns the top level AS description used to create the object.
 
virtual TLASInstanceDesc DILIGENT_CALL_TYPE GetInstanceDesc (const Char *Name) const =0
 Returns instance description that can be used in shader binding table.
 
virtual TLASBuildInfo DILIGENT_CALL_TYPE GetBuildInfo () const =0
 Returns TLAS state after the last build or update operation.
 
virtual ScratchBufferSizes DILIGENT_CALL_TYPE GetScratchBufferSizes () const =0
 Returns scratch buffer info for the current acceleration structure.
 
virtual Uint64 DILIGENT_CALL_TYPE GetNativeHandle ()=0
 Returns native acceleration structure handle specific to the underlying graphics API.
 
virtual void DILIGENT_CALL_TYPE SetState (RESOURCE_STATE State)=0
 Sets the acceleration structure usage state.
 
virtual RESOURCE_STATE DILIGENT_CALL_TYPE GetState () const =0
 Returns the internal acceleration structure state.
 
- Public Member Functions inherited from Diligent::IDeviceObject
virtual Int32 DILIGENT_CALL_TYPE GetUniqueID () const =0
 Returns unique identifier assigned to an object.
 
virtual void DILIGENT_CALL_TYPE SetUserData (IObject *pUserData)=0
 Stores a pointer to the user-provided data object.
 
virtual IObject *DILIGENT_CALL_TYPE GetUserData () const =0
 Returns a pointer to the user data object previously set with SetUserData() method.
 
- Public Member Functions inherited from Diligent.IObject
virtual void DILIGENT_CALL_TYPE QueryInterface (const INTERFACE_ID &IID, IObject **ppInterface)=0
 Queries the specific interface.
 
virtual ReferenceCounterValueType DILIGENT_CALL_TYPE AddRef ()=0
 Increments the number of strong references by 1.
 
virtual ReferenceCounterValueType DILIGENT_CALL_TYPE Release ()=0
 
virtual IReferenceCounters *DILIGENT_CALL_TYPE GetReferenceCounters () const =0
 

Detailed Description

Exposes Vulkan-specific functionality of a Top-level acceleration structure object.