UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
UE::IoStore::FOnDemandInstallCache Class Referencefinal
+ Inheritance diagram for UE::IoStore::FOnDemandInstallCache:

Public Member Functions

 FOnDemandInstallCache (const FOnDemandInstallCacheConfig &Config, FOnDemandIoStore &IoStore, FDiskCacheGovernor &Governor)
 
virtual ~FOnDemandInstallCache ()
 
virtual void Initialize (FSharedBackendContextRef Context) override
 
virtual void Shutdown () override
 
virtual void ResolveIoRequests (FIoRequestList Requests, FIoRequestList &OutUnresolved) override
 
virtual FIoRequestImplGetCompletedIoRequests () override
 
virtual void CancelIoRequest (FIoRequestImpl *Request) override
 
virtual void UpdatePriorityForIoRequest (FIoRequestImpl *Request) override
 
virtual bool DoesChunkExist (const FIoChunkId &ChunkId) const override
 
virtual TIoStatusOr< uint64GetSizeForChunk (const FIoChunkId &ChunkId) const override
 
virtual TIoStatusOr< FIoMappedRegionOpenMapped (const FIoChunkId &ChunkId, const FIoReadOptions &Options) override
 
virtual const TCHARGetName () const override
 
virtual bool IsChunkCached (const FIoHash &ChunkHash) override
 
virtual bool TryPinChunks (const FSharedOnDemandContainer &Container, TConstArrayView< int32 > EntryIndices, FOnDemandContentHandle ContentHandle, TArray< int32 > &OutMissing) override
 
virtual FResult PutChunk (FIoBuffer &&Chunk, const FIoHash &ChunkHash) override
 
virtual FResult Purge (uint64 BytesToInstall) override
 
virtual FResult PurgeAllUnreferenced (bool bDefrag, const uint64 *BytesToPurge=nullptr) override
 
virtual FResult DefragAll (const uint64 *BytesToFree=nullptr) override
 
virtual FResult Verify () override
 
virtual FResult Flush () override
 
virtual FResult FlushLastAccess () override
 
virtual void UpdateLastAccess (TConstArrayView< FIoHash > ChunkHashes) override
 
virtual FOnDemandInstallCacheUsage GetCacheUsage () override
 
- Public Member Functions inherited from UE::IoStore::IOnDemandInstallCache
virtual ~IOnDemandInstallCache ()=default
 
- Public Member Functions inherited from IIoDispatcherBackend
virtual void Initialize (TSharedRef< const FIoDispatcherBackendContext > Context)=0
 
virtual bool DoesChunkExist (const FIoChunkId &ChunkId, const FIoOffsetAndLength &ChunkRange) const
 
virtual TIoStatusOr< uint64GetSizeForChunk (const FIoChunkId &ChunkId, const FIoOffsetAndLength &ChunkRange, uint64 &OutAvailable) const
 

Constructor & Destructor Documentation

◆ FOnDemandInstallCache()

UE::IoStore::FOnDemandInstallCache::FOnDemandInstallCache ( const FOnDemandInstallCacheConfig Config,
FOnDemandIoStore IoStore,
FDiskCacheGovernor Governor 
)

◆ ~FOnDemandInstallCache()

UE::IoStore::FOnDemandInstallCache::~FOnDemandInstallCache ( )
virtual

Member Function Documentation

◆ CancelIoRequest()

void UE::IoStore::FOnDemandInstallCache::CancelIoRequest ( FIoRequestImpl Request)
overridevirtual

Cancel the I/O request.

Implements IIoDispatcherBackend.

◆ DefragAll()

FResult UE::IoStore::FOnDemandInstallCache::DefragAll ( const uint64 BytesToFree = nullptr)
overridevirtual

◆ DoesChunkExist()

bool UE::IoStore::FOnDemandInstallCache::DoesChunkExist ( const FIoChunkId ChunkId) const
overridevirtual

Returns whether the chunk exists.

Implements IIoDispatcherBackend.

◆ Flush()

FResult UE::IoStore::FOnDemandInstallCache::Flush ( )
overridevirtual

◆ FlushLastAccess()

FResult UE::IoStore::FOnDemandInstallCache::FlushLastAccess ( )
overridevirtual

◆ GetCacheUsage()

FOnDemandInstallCacheUsage UE::IoStore::FOnDemandInstallCache::GetCacheUsage ( )
overridevirtual

◆ GetCompletedIoRequests()

FIoRequestImpl * UE::IoStore::FOnDemandInstallCache::GetCompletedIoRequests ( )
overridevirtual

Returns all completed request(s) to the I/O dispatcher. Triggered by invoking the wake-up callback on the backend context object.

Implements IIoDispatcherBackend.

◆ GetName()

const TCHAR * UE::IoStore::FOnDemandInstallCache::GetName ( ) const
overridevirtual

Returns the name of this backend, for logging purposes

Implements IIoDispatcherBackend.

◆ GetSizeForChunk()

TIoStatusOr< uint64 > UE::IoStore::FOnDemandInstallCache::GetSizeForChunk ( const FIoChunkId ChunkId) const
overridevirtual

Returns the size of the chunk.

Implements IIoDispatcherBackend.

◆ Initialize()

void UE::IoStore::FOnDemandInstallCache::Initialize ( FSharedBackendContextRef  Context)
overridevirtual

◆ IsChunkCached()

bool UE::IoStore::FOnDemandInstallCache::IsChunkCached ( const FIoHash ChunkHash)
overridevirtual

◆ OpenMapped()

TIoStatusOr< FIoMappedRegion > UE::IoStore::FOnDemandInstallCache::OpenMapped ( const FIoChunkId ChunkId,
const FIoReadOptions Options 
)
overridevirtual

Read the chunk as a memory mapped file.

Implements IIoDispatcherBackend.

◆ Purge()

FResult UE::IoStore::FOnDemandInstallCache::Purge ( uint64  BytesToInstall)
overridevirtual

◆ PurgeAllUnreferenced()

FResult UE::IoStore::FOnDemandInstallCache::PurgeAllUnreferenced ( bool  bDefrag,
const uint64 BytesToPurge = nullptr 
)
overridevirtual

◆ PutChunk()

FResult UE::IoStore::FOnDemandInstallCache::PutChunk ( FIoBuffer &&  Chunk,
const FIoHash ChunkHash 
)
overridevirtual

◆ ResolveIoRequests()

void UE::IoStore::FOnDemandInstallCache::ResolveIoRequests ( FIoRequestList  Requests,
FIoRequestList OutUnresolved 
)
overridevirtual

Create asynchronous read requests for the list of I/O request(s). The request(s) can span multiple chunks.

Parameters
RequestsRequest(s) to resolve.
OutUnresolvedUnresolved request(s) returned to the I/O dispatcher.

Implements IIoDispatcherBackend.

◆ Shutdown()

void UE::IoStore::FOnDemandInstallCache::Shutdown ( )
overridevirtual

Called by the I/O dispatcher when shutting down.

Reimplemented from IIoDispatcherBackend.

◆ TryPinChunks()

bool UE::IoStore::FOnDemandInstallCache::TryPinChunks ( const FSharedOnDemandContainer Container,
TConstArrayView< int32 EntryIndices,
FOnDemandContentHandle  ContentHandle,
TArray< int32 > &  OutMissing 
)
overridevirtual

◆ UpdateLastAccess()

void UE::IoStore::FOnDemandInstallCache::UpdateLastAccess ( TConstArrayView< FIoHash ChunkHashes)
overridevirtual

◆ UpdatePriorityForIoRequest()

void UE::IoStore::FOnDemandInstallCache::UpdatePriorityForIoRequest ( FIoRequestImpl Request)
overridevirtual

Update the priority of the I/O request.

Implements IIoDispatcherBackend.

◆ Verify()

FResult UE::IoStore::FOnDemandInstallCache::Verify ( )
overridevirtual

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