UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
UE::Virtualization::IPayloadProvider Class Referenceabstract

#include <VirtualizationSystem.h>

Public Member Functions

 IPayloadProvider ()=default
 
virtual ~IPayloadProvider ()=default
 
virtual FCompressedBuffer RequestPayload (const FIoHash &Identifier)=0
 
virtual uint64 GetPayloadSize (const FIoHash &Identifier)=0
 

Detailed Description

This interface can be implemented and passed to a FPushRequest as a way of providing the payload to the virtualization system for a push operation but deferring the loading of the payload from disk until it is actually needed. In some cases this allows the loading of the payload to be skipped entirely (if the payload is already in all backends for example) or can prevent memory spikes caused by loading a large number of payloads for a batched push request.

Note that if the backend graph contains multiple backends then payloads may be requested multiple times. It will be up to the provider implementation to decide if a requested payload should be cached in case of future access or not. The methods are not const in order to make it easier for derived classes to cache the results if needed without the use of mutable.

Constructor & Destructor Documentation

◆ IPayloadProvider()

UE::Virtualization::IPayloadProvider::IPayloadProvider ( )
default

◆ ~IPayloadProvider()

virtual UE::Virtualization::IPayloadProvider::~IPayloadProvider ( )
virtualdefault

Member Function Documentation

◆ GetPayloadSize()

virtual uint64 UE::Virtualization::IPayloadProvider::GetPayloadSize ( const FIoHash Identifier)
pure virtual

Returns the current size of the payload on disk.

◆ RequestPayload()

virtual FCompressedBuffer UE::Virtualization::IPayloadProvider::RequestPayload ( const FIoHash Identifier)
pure virtual

Should return the payload for the given FIoHash. If the provider fails to find the payload then it should return a null FCompressedBuffer to indicate the error.


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