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

#include <D3D12Resources.h>

+ Inheritance diagram for FD3D12Buffer:

Public Member Functions

 FD3D12Buffer (FD3D12Device *InParent, const FRHIBufferCreateDesc &InCreateDesc)
 
virtual ~FD3D12Buffer ()
 
FD3D12SyncPointRef UploadResourceDataViaCopyQueue (FD3D12CommandContext &OwningContext, FResourceArrayUploadInterface *InResourceArray)
 
void Rename (FD3D12ContextArray const &Contexts, FD3D12ResourceLocation &NewLocation)
 
void RenameLDAChain (FD3D12ContextArray const &Contexts, FD3D12ResourceLocation &NewLocation)
 
void TakeOwnership (FD3D12Buffer &Other)
 
void ReleaseOwnership ()
 
virtual FReturnedRefCountValue AddRef () const
 
virtual uint32 Release () const
 
virtual uint32 GetRefCount () const
 
- Public Member Functions inherited from FRHIBuffer
const FRHIBufferDescGetDesc () const
 
uint32 GetSize () const
 
uint32 GetStride () const
 
EBufferUsageFlags GetUsage () const
 
void SetName (FName InName)
 
- Public Member Functions inherited from FRHIViewableResource
ERHIAccess GetTrackedAccess_Unsafe () const
 
FName GetName () const
 
- Public Member Functions inherited from FRHIResource
RHI_API FRHIResource (ERHIResourceType InResourceType)
 
uint32 AddRef () const
 
uint32 Release () const
 
uint32 GetRefCount () const
 
bool IsValid () const
 
void DisableLifetimeExtension ()
 
ERHIResourceType GetType () const
 
FName GetOwnerName () const
 
void SetOwnerName (FName InOwnerName)
 
- Public Member Functions inherited from FD3D12BaseShaderResource
FD3D12ResourceGetResource () const
 
void AddRenameListener (FD3D12ShaderResourceRenameListener *InRenameListener)
 
void RemoveRenameListener (FD3D12ShaderResourceRenameListener *InRenameListener)
 
bool HasLinkedViews () const
 
void ResourceRenamed (FD3D12ContextArray const &Contexts)
 
 FD3D12BaseShaderResource (FD3D12Device *InParent)
 
 ~FD3D12BaseShaderResource ()
 
- Public Member Functions inherited from FD3D12DeviceChild
 FD3D12DeviceChild (FD3D12Device *InParent=nullptr)
 
FORCEINLINE FD3D12DeviceGetParentDevice () const
 
FD3D12DeviceGetParentDevice_Unsafe () const
 
- Public Member Functions inherited from IRefCountedObject
virtual ~IRefCountedObject ()
 
- Public Member Functions inherited from FD3D12LinkedAdapterObject< FD3D12Buffer >
 ~FD3D12LinkedAdapterObject ()
 
FORCEINLINE bool IsHeadLink () const
 
FD3D12BufferGetLinkedObject (uint32 GPUIndex) const
 
FD3D12BufferGetFirstLinkedObject () const
 
FRHIGPUMask GetLinkedObjectsGPUMask () const
 
FLinkedObjectIterator begin ()
 
FLinkedObjectIterator end ()
 

Static Public Member Functions

static void UploadResourceData (FD3D12CommandContext &CommandContext, ED3D12Access DestinationD3D12Access, FD3D12ResourceLocation &DestinationResourceLocation, const FD3D12ResourceLocation &SourceResourceLocation, uint32 Size)
 
static void GetResourceDescAndAlignment (const FRHIBufferCreateDesc &CreateDesc, D3D12_RESOURCE_DESC &ResourceDesc, uint32 &Alignment)
 
- Static Public Member Functions inherited from FD3D12LinkedAdapterObject< FD3D12Buffer >
static ReturnType * CreateLinkedObjects (FRHIGPUMask GPUMask, const CreationParameterFunction &pfnGetCreationParameter, const CreationCoreFunction &pfnCreationCore)
 

Public Attributes

FD3D12LockedResource LockedData
 
uint32 BufferAlignment = 0
 
- Public Attributes inherited from FD3D12BaseShaderResource
FD3D12ResourceLocation ResourceLocation
 

Additional Inherited Members

- Public Types inherited from FD3D12LinkedAdapterObject< FD3D12Buffer >
using LinkedObjectType = FD3D12Buffer
 
using FDualLinkedObjectIterator = TD3D12DualLinkedObjectIterator< FD3D12Buffer, FD3D12Buffer >
 
- Protected Member Functions inherited from FRHIBuffer
 FRHIBuffer ()=delete
 
RHI_API FRHIBuffer (const FRHIBufferCreateDesc &CreateDesc)
 
void TakeOwnership (FRHIBuffer &Other)
 
void ReleaseOwnership ()
 
- Protected Member Functions inherited from FRHIViewableResource
 FRHIViewableResource (ERHIResourceType InResourceType, ERHIAccess InAccess, const TCHAR *InName, FName InOwnerName)
 
virtual void SetTrackedAccessFromContext (FRHITrackedAccess InTrackedAccess)
 
void TakeOwnership (FRHIViewableResource &Other)
 
void ReleaseOwnership ()
 
- Protected Member Functions inherited from FRHIResource
virtual RHI_API ~FRHIResource ()
 
- Protected Member Functions inherited from FD3D12LinkedAdapterObject< FD3D12Buffer >
 FD3D12LinkedAdapterObject ()
 
- Protected Attributes inherited from FRHIViewableResource
FName Name
 
- Protected Attributes inherited from FD3D12DeviceChild
FD3D12DeviceParent
 

Constructor & Destructor Documentation

◆ FD3D12Buffer()

FD3D12Buffer::FD3D12Buffer ( FD3D12Device InParent,
const FRHIBufferCreateDesc InCreateDesc 
)
inline

◆ ~FD3D12Buffer()

FD3D12Buffer::~FD3D12Buffer ( )
virtual

Member Function Documentation

◆ AddRef()

virtual FReturnedRefCountValue FD3D12Buffer::AddRef ( ) const
inlinevirtual

Implements IRefCountedObject.

◆ GetRefCount()

virtual uint32 FD3D12Buffer::GetRefCount ( ) const
inlinevirtual

Implements IRefCountedObject.

◆ GetResourceDescAndAlignment()

void FD3D12Buffer::GetResourceDescAndAlignment ( const FRHIBufferCreateDesc CreateDesc,
D3D12_RESOURCE_DESC &  ResourceDesc,
uint32 Alignment 
)
static

◆ Release()

virtual uint32 FD3D12Buffer::Release ( ) const
inlinevirtual

Implements IRefCountedObject.

◆ ReleaseOwnership()

void FD3D12Buffer::ReleaseOwnership ( )

◆ Rename()

void FD3D12Buffer::Rename ( FD3D12ContextArray const &  Contexts,
FD3D12ResourceLocation NewLocation 
)

◆ RenameLDAChain()

void FD3D12Buffer::RenameLDAChain ( FD3D12ContextArray const &  Contexts,
FD3D12ResourceLocation NewLocation 
)

◆ TakeOwnership()

void FD3D12Buffer::TakeOwnership ( FD3D12Buffer Other)

◆ UploadResourceData()

void FD3D12Buffer::UploadResourceData ( FD3D12CommandContext CommandContext,
ED3D12Access  DestinationD3D12Access,
FD3D12ResourceLocation DestinationResourceLocation,
const FD3D12ResourceLocation SourceResourceLocation,
uint32  Size 
)
static

◆ UploadResourceDataViaCopyQueue()

FD3D12SyncPointRef FD3D12Buffer::UploadResourceDataViaCopyQueue ( FD3D12CommandContext OwningContext,
FResourceArrayUploadInterface InResourceArray 
)

Member Data Documentation

◆ BufferAlignment

uint32 FD3D12Buffer::BufferAlignment = 0

◆ LockedData

FD3D12LockedResource FD3D12Buffer::LockedData

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