UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
TUniformBufferRef< TBufferStruct > Class Template Reference

#include <ShaderParameterMacros.h>

+ Inheritance diagram for TUniformBufferRef< TBufferStruct >:

Public Member Functions

 TUniformBufferRef ()=default
 
 TUniformBufferRef (FRHIUniformBuffer *InRHIRef)
 
void UpdateUniformBufferImmediate (const TBufferStruct &Value)
 
void UpdateUniformBufferImmediate (FRHICommandListBase &RHICmdList, const TBufferStruct &Value)
 
- Public Member Functions inherited from TRefCountPtr< FRHIUniformBuffer >
UE_FORCEINLINE_HINT TRefCountPtr ()=default
 
 TRefCountPtr (FRHIUniformBuffer *InReference, bool bAddRef=true)
 
 TRefCountPtr (const TRefCountPtr &Copy)
 
 TRefCountPtr (const TRefCountPtr< CopyReferencedType > &Copy)
 
 TRefCountPtr (TRefCountPtr &&Move)
 
 TRefCountPtr (TRefCountPtr< MoveReferencedType > &&Move)
 
 ~TRefCountPtr ()
 
TRefCountPtroperator= (FRHIUniformBuffer *InReference)
 
UE_FORCEINLINE_HINT TRefCountPtroperator= (const TRefCountPtr &InPtr)
 
UE_FORCEINLINE_HINT TRefCountPtroperator= (const TRefCountPtr< CopyReferencedType > &InPtr)
 
TRefCountPtroperator= (TRefCountPtr &&InPtr)
 
TRefCountPtroperator= (TRefCountPtr< MoveReferencedType > &&InPtr)
 
UE_FORCEINLINE_HINT FRHIUniformBufferoperator-> () const
 
UE_FORCEINLINE_HINT operator ReferenceType () const
 
FRHIUniformBuffer ** GetInitReference ()
 
UE_FORCEINLINE_HINT FRHIUniformBufferGetReference () const
 
UE_FORCEINLINE_HINT bool IsValid () const
 
UE_FORCEINLINE_HINT void SafeRelease ()
 
uint32 GetRefCount ()
 
void Swap (TRefCountPtr &InPtr)
 
void Serialize (FArchive &Ar)
 
UE_FORCEINLINE_HINT bool operator== (const TRefCountPtr &B) const
 
UE_FORCEINLINE_HINT bool operator== (FRHIUniformBuffer *B) const
 

Static Public Member Functions

static TUniformBufferRef< TBufferStructCreateUniformBufferImmediate (const TBufferStruct &Value, EUniformBufferUsage Usage, EUniformBufferValidation Validation=EUniformBufferValidation::ValidateResources)
 
static TUniformBufferRef< TBufferStructCreateEmptyUniformBufferImmediate (EUniformBufferUsage Usage)
 

Friends

template<typename TBufferStruct2 >
class TUniformBuffer
 
class TRDGUniformBuffer< TBufferStruct >
 

Detailed Description

template<typename TBufferStruct>
class TUniformBufferRef< TBufferStruct >

A reference to a uniform buffer RHI resource with a specific structure.

Constructor & Destructor Documentation

◆ TUniformBufferRef() [1/2]

Initializes the reference to null.

◆ TUniformBufferRef() [2/2]

Construct an instance from an existing RHI uniform buffer pointer. Validates at runtime that the type of the uniform buffer matches the template struct type.

Member Function Documentation

◆ CreateEmptyUniformBufferImmediate()

template<typename TBufferStruct >
static TUniformBufferRef< TBufferStruct > TUniformBufferRef< TBufferStruct >::CreateEmptyUniformBufferImmediate ( EUniformBufferUsage  Usage)
inlinestatic

Creates a uniform buffer with the given value, and returns a structured reference to it.

◆ CreateUniformBufferImmediate()

Creates a uniform buffer with the given value, and returns a structured reference to it.

◆ UpdateUniformBufferImmediate() [1/2]

template<typename TBufferStruct >
void TUniformBufferRef< TBufferStruct >::UpdateUniformBufferImmediate ( const TBufferStruct Value)
inline

◆ UpdateUniformBufferImmediate() [2/2]

template<typename TBufferStruct >
void TUniformBufferRef< TBufferStruct >::UpdateUniformBufferImmediate ( FRHICommandListBase RHICmdList,
const TBufferStruct Value 
)
inline

Friends And Related Symbol Documentation

◆ TRDGUniformBuffer< TBufferStruct >

◆ TUniformBuffer

template<typename TBufferStruct >
friend class TUniformBuffer
friend

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