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

#include <GenericPlatformChunkInstall.h>

+ Inheritance diagram for FGenericPlatformChunkInstall:

Public Member Functions

virtual CORE_API void AsyncInit (TFunction< void(bool)> OnInitComplete) override
 
virtual bool IsAvailable () const
 
virtual EChunkLocation::Type GetPakchunkLocation (int32 PakchunkIndex) override
 
virtual bool PrioritizePakchunk (int32 PakchunkIndex, EChunkPriority::Type Priority)
 
virtual bool GetProgressReportingTypeSupported (EChunkProgressReportingType::Type ReportType) override
 
virtual float GetChunkProgress (uint32 ChunkID, EChunkProgressReportingType::Type ReportType) override
 
virtual EChunkInstallSpeed::Type GetInstallSpeed () override
 
virtual bool SetInstallSpeed (EChunkInstallSpeed::Type InstallSpeed) override
 
virtual bool PrioritizeChunk (uint32 ChunkID, EChunkPriority::Type Priority) override
 
virtual bool DebugStartNextChunk () override
 
virtual void ExternalNotifyChunkAvailable (uint32 InChunkID) override
 
virtual FDelegateHandle AddChunkInstallDelegate (FPlatformChunkInstallDelegate Delegate) override
 
virtual void RemoveChunkInstallDelegate (FDelegateHandle Delegate) override
 
virtual bool SupportsNamedChunkInstall () const override
 
virtual bool IsNamedChunkInProgress (const FName NamedChunk) override
 
virtual bool InstallNamedChunk (const FName NamedChunk) override
 
virtual bool UninstallNamedChunk (const FName NamedChunk) override
 
virtual bool InstallNamedChunks (const TArrayView< const FName > &NamedChunks) override
 
virtual bool UninstallNamedChunks (const TArrayView< const FName > &NamedChunks) override
 
virtual EChunkLocation::Type GetNamedChunkLocation (const FName NamedChunk) override
 
virtual float GetNamedChunkProgress (const FName NamedChunk, EChunkProgressReportingType::Type ReportType) override
 
virtual bool PrioritizeNamedChunk (const FName NamedChunk, EChunkPriority::Type Priority) override
 
virtual ENamedChunkType GetNamedChunkType (const FName NamedChunk) const override
 
virtual TArray< FNameGetNamedChunksByType (ENamedChunkType NamedChunkType) const override
 
virtual void RemoveNamedChunkCompleteDelegate (FDelegateHandle Delegate) override
 
virtual FDelegateHandle AddNamedChunkCompleteDelegate (FPlatformNamedChunkCompleteDelegate Delegate) override
 
virtual bool SupportsBundleSource () const override
 
virtual bool SetAutoPakMountingEnabled (bool bEnabled)
 
virtual bool GetPakFilesInNamedChunk (const FName NamedChunk, TArray< FString > &OutFilesInChunk) const override
 
virtual bool GetNamedChunkInstallationStatus (const FName NamedChunk, FChunkInstallationStatusDetail &OutChunkStatusDetail) const override
 
virtual bool IsNamedChunkForCurrentLocale (const FName NamedChunk) const
 
- Public Member Functions inherited from IPlatformChunkInstall
virtual ~IPlatformChunkInstall ()
 

Protected Member Functions

CORE_API void DoNamedChunkCompleteCallbacks (const FName NamedChunk, EChunkLocation::Type Location, bool bHasSucceeded) const
 
CORE_API void DoNamedChunkCompleteCallbacks (const TArrayView< const FName > &NamedChunks, EChunkLocation::Type Location, bool bHasSucceeded) const
 
virtual EChunkLocation::Type GetChunkLocation (uint32 ChunkID) override
 

Protected Attributes

FPlatformChunkInstallMultiDelegate InstallDelegate
 
FPlatformNamedChunkCompleteMultiDelegate NamedChunkCompleteDelegate
 

Detailed Description

Generic implementation of chunk based install

Member Function Documentation

◆ AddChunkInstallDelegate()

virtual FDelegateHandle FGenericPlatformChunkInstall::AddChunkInstallDelegate ( FPlatformChunkInstallDelegate  Delegate)
inlineoverridevirtual

Request a delegate callback on chunk install completion or failure. Request may not be respected.

Parameters
DelegateThe delegate to call when any chunk is installed or fails to install
Returns
Handle to the bound delegate

Implements IPlatformChunkInstall.

◆ AddNamedChunkCompleteDelegate()

virtual FDelegateHandle FGenericPlatformChunkInstall::AddNamedChunkCompleteDelegate ( FPlatformNamedChunkCompleteDelegate  Delegate)
inlineoverridevirtual

Request a delegate callback on named chunk install completion or failure. Request may not be respected.

Parameters
DelegateThe delegate to call when any named chunk is installed or fails to install
Returns
Handle to the bound delegate

Implements IPlatformChunkInstall.

◆ AsyncInit()

void FGenericPlatformChunkInstall::AsyncInit ( TFunction< void(bool)>  OnInitComplete)
overridevirtual

Initialize the platform chunk installer in the background. May require opt-in for the platform-specific chunk installer due to backwards compatility concerns.

Parameters
OnInitializedCallback for when asyncronous initialization is completed.

Implements IPlatformChunkInstall.

◆ DebugStartNextChunk()

virtual bool FGenericPlatformChunkInstall::DebugStartNextChunk ( )
inlineoverridevirtual

For platforms that support emulation of the Chunk install. Starts transfer of the next chunk. Does nothing in a shipping build.

Returns
true if the operation succeeds.

Implements IPlatformChunkInstall.

Reimplemented in FIOSChunkInstall.

◆ DoNamedChunkCompleteCallbacks() [1/2]

void FGenericPlatformChunkInstall::DoNamedChunkCompleteCallbacks ( const FName  NamedChunk,
EChunkLocation::Type  Location,
bool  bHasSucceeded 
) const
protected

◆ DoNamedChunkCompleteCallbacks() [2/2]

void FGenericPlatformChunkInstall::DoNamedChunkCompleteCallbacks ( const TArrayView< const FName > &  NamedChunks,
EChunkLocation::Type  Location,
bool  bHasSucceeded 
) const
protected

◆ ExternalNotifyChunkAvailable()

virtual void FGenericPlatformChunkInstall::ExternalNotifyChunkAvailable ( uint32  InChunkID)
inlineoverridevirtual

Allow an external system to notify that a particular chunk ID has become available Initial use-case is for dynamically encrypted pak files to signal to the outside world that it has become available.

Parameters
InChunkID- ID of the chunk that has just become available

Implements IPlatformChunkInstall.

◆ GetChunkLocation()

virtual EChunkLocation::Type FGenericPlatformChunkInstall::GetChunkLocation ( uint32  ChunkID)
inlineoverrideprotectedvirtual

Get the current location of a chunk. Pakchunk index and platform chunk id are not always the same. Call GetPakchunkLocation instead of calling from outside.

Parameters
ChunkIDThe id of the chunk to check.
Returns
Enum specifying whether the chunk is available to use, waiting to install, or does not exist.

Implements IPlatformChunkInstall.

◆ GetChunkProgress()

virtual float FGenericPlatformChunkInstall::GetChunkProgress ( uint32  ChunkID,
EChunkProgressReportingType::Type  ReportType 
)
inlineoverridevirtual

Get the current install progress of a chunk. Let the user specify report type for platforms that support more than one.

Parameters
ChunkIDThe id of the chunk to check.
ReportTypeThe type of progress report you want.
Returns
A value whose meaning is dependent on the ReportType param.

Implements IPlatformChunkInstall.

Reimplemented in FIOSChunkInstall.

◆ GetInstallSpeed()

virtual EChunkInstallSpeed::Type FGenericPlatformChunkInstall::GetInstallSpeed ( )
inlineoverridevirtual

Inquire about the priority of chunk installation vs. game IO.

Returns
Paused, low or high priority.

Implements IPlatformChunkInstall.

Reimplemented in FIOSChunkInstall.

◆ GetNamedChunkInstallationStatus()

virtual bool FGenericPlatformChunkInstall::GetNamedChunkInstallationStatus ( const FName  NamedChunk,
FChunkInstallationStatusDetail OutChunkStatusDetail 
) const
inlineoverridevirtual

Get detailed installation status for the given named chunk

Parameters
NamedChunkThe named chunk to query
OutChunkStatusDetail(out) structure that will contain the status detail
Returns
true if the structure has been filled in

Implements IPlatformChunkInstall.

◆ GetNamedChunkLocation()

virtual EChunkLocation::Type FGenericPlatformChunkInstall::GetNamedChunkLocation ( const FName  NamedChunk)
inlineoverridevirtual

Get the current location of the given named chunk

Parameters
NamedChunkThe name of the chunk
Returns
Enum specifying whether the chunk is available to use, waiting to install, or does not exist.

Implements IPlatformChunkInstall.

◆ GetNamedChunkProgress()

virtual float FGenericPlatformChunkInstall::GetNamedChunkProgress ( const FName  NamedChunk,
EChunkProgressReportingType::Type  ReportType 
)
inlineoverridevirtual

Get the current install progress of the given named chunk. Let the user specify report type for platforms that support more than one.

Parameters
NamedChunkThe name of the chunk
ReportTypeThe type of progress report you want.
Returns
A value whose meaning is dependent on the ReportType param.

Implements IPlatformChunkInstall.

◆ GetNamedChunksByType()

virtual TArray< FName > FGenericPlatformChunkInstall::GetNamedChunksByType ( ENamedChunkType  NamedChunkType) const
inlineoverridevirtual

Get a list of all the named chunks of the given type

Parameters
Enumindicating the type of chunk
Returns
Array containing all named chunks of the given type

Implements IPlatformChunkInstall.

◆ GetNamedChunkType()

virtual ENamedChunkType FGenericPlatformChunkInstall::GetNamedChunkType ( const FName  NamedChunk) const
inlineoverridevirtual

Query the type of the given named chunk

Parameters
NamedChunkThe name of the chunk
Returns
Enum indicating the type of chunk, if any

Implements IPlatformChunkInstall.

◆ GetPakchunkLocation()

virtual EChunkLocation::Type FGenericPlatformChunkInstall::GetPakchunkLocation ( int32  PakchunkIndex)
inlineoverridevirtual

Get the current location of a chunk with pakchunk index.

Parameters
PakchunkIndexThe id of the pak chunk.
Returns
Enum specifying whether the chunk is available to use, waiting to install, or does not exist.

Implements IPlatformChunkInstall.

◆ GetPakFilesInNamedChunk()

virtual bool FGenericPlatformChunkInstall::GetPakFilesInNamedChunk ( const FName  NamedChunk,
TArray< FString > &  OutFilesInChunk 
) const
inlineoverridevirtual

Get the list of pak files in the given named chunk.

Parameters
NamedChunkThe named chunk to query
OutFilesInChunkThe pak files names in the named chunk
Returns
true if the named chunk is valid and this function is supported

Implements IPlatformChunkInstall.

◆ GetProgressReportingTypeSupported()

virtual bool FGenericPlatformChunkInstall::GetProgressReportingTypeSupported ( EChunkProgressReportingType::Type  ReportType)
inlineoverridevirtual

Check if a given reporting type is supported.

Parameters
ReportTypeEnum specifying how progress is reported.
Returns
true if reporting type is supported on the current platform.

Implements IPlatformChunkInstall.

Reimplemented in FIOSChunkInstall.

◆ InstallNamedChunk()

virtual bool FGenericPlatformChunkInstall::InstallNamedChunk ( const FName  NamedChunk)
inlineoverridevirtual

Install the given named chunk

Parameters
NamedChunkThe name of the chunk
Returns
whether installation task has been kicked

Implements IPlatformChunkInstall.

◆ InstallNamedChunks()

virtual bool FGenericPlatformChunkInstall::InstallNamedChunks ( const TArrayView< const FName > &  NamedChunks)
inlineoverridevirtual

Install the given set of named chunks

Parameters
NamedChunksThe names of the chunks to install
Returns
whether installation task has been kicked

Implements IPlatformChunkInstall.

◆ IsAvailable()

virtual bool FGenericPlatformChunkInstall::IsAvailable ( ) const
inlinevirtual

Returns whether chunk installation is available (i.e. we are an installed packaged build etc)

Implements IPlatformChunkInstall.

◆ IsNamedChunkForCurrentLocale()

virtual bool FGenericPlatformChunkInstall::IsNamedChunkForCurrentLocale ( const FName  NamedChunk) const
inlinevirtual

Determine if the given named chunk is suitable for the current system locale

Parameters
NamedChunkThe named chunk to query
Returns
false if the chunk is associated with a different locale

Implements IPlatformChunkInstall.

◆ IsNamedChunkInProgress()

virtual bool FGenericPlatformChunkInstall::IsNamedChunkInProgress ( const FName  NamedChunk)
inlineoverridevirtual

Check whether the give chunk is being installed

Parameters
NamedChunkThe name of the chunk
Returns
whether installation task has been kicked

Implements IPlatformChunkInstall.

◆ PrioritizeChunk()

virtual bool FGenericPlatformChunkInstall::PrioritizeChunk ( uint32  ChunkID,
EChunkPriority::Type  Priority 
)
inlineoverridevirtual

Hint to the installer that we would like to prioritize a specific chunk

Parameters
ChunkIDThe id of the chunk to prioritize.
PriorityThe priority for the chunk.
Returns
false if the operation is not allowed or the chunk doesn't exist, otherwise true.

Implements IPlatformChunkInstall.

Reimplemented in FIOSChunkInstall.

◆ PrioritizeNamedChunk()

virtual bool FGenericPlatformChunkInstall::PrioritizeNamedChunk ( const FName  NamedChunk,
EChunkPriority::Type  Priority 
)
inlineoverridevirtual

Hint to the installer that we would like to prioritize a specific chunk

Parameters
NamedChunkThe name of the chunk
PriorityThe priority for the chunk.
Returns
false if the operation is not allowed or the chunk doesn't exist, otherwise true.

Implements IPlatformChunkInstall.

◆ PrioritizePakchunk()

virtual bool FGenericPlatformChunkInstall::PrioritizePakchunk ( int32  PakchunkIndex,
EChunkPriority::Type  Priority 
)
inlinevirtual

Hint to the installer that we would like to prioritize a specific chunk

Parameters
PakchunkIndexThe index of the pakchunk to prioritize.
PriorityThe priority for the chunk.
Returns
false if the operation is not allowed or the chunk doesn't exist, otherwise true.

Implements IPlatformChunkInstall.

◆ RemoveChunkInstallDelegate()

virtual void FGenericPlatformChunkInstall::RemoveChunkInstallDelegate ( FDelegateHandle  Delegate)
inlineoverridevirtual

Remove a delegate callback on chunk install completion.

Parameters
DelegateThe delegate to remove.

Implements IPlatformChunkInstall.

◆ RemoveNamedChunkCompleteDelegate()

virtual void FGenericPlatformChunkInstall::RemoveNamedChunkCompleteDelegate ( FDelegateHandle  Delegate)
inlineoverridevirtual

Remove a delegate callback on named chunk install completion.

Parameters
DelegateThe delegate to remove.

Implements IPlatformChunkInstall.

◆ SetAutoPakMountingEnabled()

virtual bool FGenericPlatformChunkInstall::SetAutoPakMountingEnabled ( bool  bEnabled)
inlinevirtual

Set whether pak files are auto-mounted when they are installed (the default is that they are mounted)

Parameters
bEnabledWhether to auto-mount pak files
Returns
false if this function is not supported

Implements IPlatformChunkInstall.

◆ SetInstallSpeed()

virtual bool FGenericPlatformChunkInstall::SetInstallSpeed ( EChunkInstallSpeed::Type  InstallSpeed)
inlineoverridevirtual

Specify the priority of chunk installation vs. game IO.

Parameters
InstallSpeedPause, low or high priority.
Returns
false if the operation is not allowed, otherwise true.

Implements IPlatformChunkInstall.

Reimplemented in FIOSChunkInstall.

◆ SupportsBundleSource()

virtual bool FGenericPlatformChunkInstall::SupportsBundleSource ( ) const
inlineoverridevirtual

Returns whether this platform chunk installer implements all the API functions to support the platform chunk install bundle source

Implements IPlatformChunkInstall.

◆ SupportsNamedChunkInstall()

virtual bool FGenericPlatformChunkInstall::SupportsNamedChunkInstall ( ) const
inlineoverridevirtual

Check whether current platform supports chunk installation by name

Returns
whether Intelligent Install is supported

Implements IPlatformChunkInstall.

◆ UninstallNamedChunk()

virtual bool FGenericPlatformChunkInstall::UninstallNamedChunk ( const FName  NamedChunk)
inlineoverridevirtual

Uninstall the given named chunk

Parameters
NamedChunkThe name of the chunk
Returns
whether uninstallation task has been kicked

Implements IPlatformChunkInstall.

◆ UninstallNamedChunks()

virtual bool FGenericPlatformChunkInstall::UninstallNamedChunks ( const TArrayView< const FName > &  NamedChunks)
inlineoverridevirtual

Uninstall the given set of named chunks

Parameters
NamedChunkThe names of the chunks to uninstall
Returns
whether uninstallation task has been kicked

Implements IPlatformChunkInstall.

Member Data Documentation

◆ InstallDelegate

FPlatformChunkInstallMultiDelegate FGenericPlatformChunkInstall::InstallDelegate
protected

Delegates called when installation succeeds or fails

◆ NamedChunkCompleteDelegate

FPlatformNamedChunkCompleteMultiDelegate FGenericPlatformChunkInstall::NamedChunkCompleteDelegate
protected

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