UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
FD3D11BufferedGPUTiming Class Reference

#include <D3D11RHIPrivate.h>

+ Inheritance diagram for FD3D11BufferedGPUTiming:

Public Member Functions

 FD3D11BufferedGPUTiming (class FD3D11DynamicRHI *InD3DRHI, int32 BufferSize)
 
void StartTiming ()
 
void EndTiming ()
 
uint64 GetTiming (bool bGetCurrentResultsAndBlock=false)
 
virtual void InitRHI (FRHICommandListBase &RHICmdList) override
 
virtual void ReleaseRHI () override
 
- Public Member Functions inherited from FRenderResource
RENDERCORE_API FRenderResource ()
 
RENDERCORE_API FRenderResource (ERHIFeatureLevel::Type InFeatureLevel)
 
RENDERCORE_API FRenderResource (const FRenderResource &)
 
RENDERCORE_API FRenderResource (FRenderResource &&)
 
RENDERCORE_API FRenderResourceoperator= (const FRenderResource &Other)
 
RENDERCORE_API FRenderResourceoperator= (FRenderResource &&Other)
 
virtual RENDERCORE_API ~FRenderResource ()
 
virtual RENDERCORE_API void InitResource (FRHICommandListBase &RHICmdList)
 
virtual RENDERCORE_API void ReleaseResource ()
 
RENDERCORE_API void UpdateRHI (FRHICommandListBase &RHICmdList)
 
virtual FString GetFriendlyName () const
 
bool IsInitialized () const
 
int32 GetListIndex () const
 
EInitPhase GetInitPhase () const
 
void SetOwnerName (FName InOwnerName)
 
FName GetOwnerName () const
 
void SetResourceName (FName InResourceName)
 
FName GetResourceName () const
 

Static Public Member Functions

static void CalibrateTimers (FD3D11DynamicRHI *InD3DRHI)
 
- Static Public Member Functions inherited from FRenderResource
static RENDERCORE_API void ReleaseRHIForAllResources ()
 
static RENDERCORE_API void InitPreRHIResources ()
 
static RENDERCORE_API void ChangeFeatureLevel (ERHIFeatureLevel::Type NewFeatureLevel)
 
static RENDERCORE_API FName SetScopeName (FName Name)
 

Additional Inherited Members

- Public Types inherited from FRenderResource
enum class  EInitPhase : uint8 { Pre , Default , MAX }
 
- Public Attributes inherited from FRenderResource
ERenderResourceState ResourceState = ERenderResourceState::Default
 
- Protected Member Functions inherited from FRenderResource
void SetFeatureLevel (const FStaticFeatureLevel InFeatureLevel)
 
const FStaticFeatureLevel GetFeatureLevel () const
 
bool HasValidFeatureLevel () const
 
template<typename T >
FBufferRHIRef CreateRHIBuffer (FRHICommandListBase &RHICmdList, T &InOutResourceObject, uint32 ResourceCount, EBufferUsageFlags InBufferUsageFlags, const TCHAR *InDebugName)
 
void SetInitPhase (EInitPhase InInitPhase)
 
- Static Protected Member Functions inherited from FRenderResource
static RENDERCORE_API FRHICommandListBaseGetImmediateCommandList ()
 

Constructor & Destructor Documentation

◆ FD3D11BufferedGPUTiming()

FD3D11BufferedGPUTiming::FD3D11BufferedGPUTiming ( class FD3D11DynamicRHI InD3DRHI,
int32  InBufferSize 
)

Constructor.

Parameters
InD3DRHIRHI interface
InBufferSizeNumber of buffered measurements

Member Function Documentation

◆ CalibrateTimers()

void FD3D11BufferedGPUTiming::CalibrateTimers ( FD3D11DynamicRHI InD3DRHI)
static

◆ EndTiming()

void FD3D11BufferedGPUTiming::EndTiming ( )

End a GPU timing measurement. The timing for this particular measurement will be resolved at a later time by the GPU.

◆ GetTiming()

uint64 FD3D11BufferedGPUTiming::GetTiming ( bool  bGetCurrentResultsAndBlock = false)

Retrieves the most recently resolved timing measurement. The unit is the same as for FPlatformTime::Cycles(). Returns 0 if there are no resolved measurements.

Returns
Value of the most recently resolved timing, or 0 if no measurements have been resolved by the GPU yet.

◆ InitRHI()

void FD3D11BufferedGPUTiming::InitRHI ( FRHICommandListBase RHICmdList)
overridevirtual

Initializes all D3D resources.

Initializes all D3D resources and if necessary, the static variables.

Reimplemented from FRenderResource.

◆ ReleaseRHI()

void FD3D11BufferedGPUTiming::ReleaseRHI ( )
overridevirtual

Releases all D3D resources.

Reimplemented from FRenderResource.

◆ StartTiming()

void FD3D11BufferedGPUTiming::StartTiming ( )

Start a GPU timing measurement.


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