IBuildPatchServicesModule

Interface for the services manager.

Choose your operating system:

Windows

macOS

Linux

Inheritance Hierarchy

IModuleInterface

IBuildPatchServicesModule

References

Module

BuildPatchServices

Header

/Engine/Source/Runtime/Online/BuildPatchServices/Public/Interfaces/IBuildPatchServicesModule.h

Include

#include "Interfaces/IBuildPatchServicesModule.h"

Syntax

class IBuildPatchServicesModule : public IModuleInterface

Remarks

Interface for the services manager.

Destructors

Name Description

Public function Virtual

~IBuildPatchServicesModule()

Virtual destructor.

Functions

Name Description

Public function

void

 

CancelAllInstallers

(
    bool WaitForThreads
)

Call to force the exit out of all current installers, optionally blocks until threads have exited and complete delegates are called.

Public function

bool

 

ChunkBuildDirectory

(
    const BuildPatchServices::FChunkBui...
)

Processes a Build directory to create chunks for new data and produce a manifest, saved to the provided cloud directory.

Public function

bool

 

CompactifyCloudDirectory

(
    const BuildPatchServices::FCompacti...
)

Processes a Cloud Directory to identify and delete any orphaned chunks or files.

Public function Const

IBuildInstal...

 

CreateBuildInstaller

Factory providing construction of a build installer class.

Public function Const

BuildPatchSe...

 

CreateBuildStatistics

(
    const IBuildInstallerRef& Installe...
)

Factory providing construction of a build statistics class.

Public function Const

BuildPatchSe...

 

CreatePatchDataEnumeration

Factory providing construction of a patch data enumeration class.

Public function

bool

 

DiffManifests

(
    const BuildPatchServices::FDiffMani...
)

Takes two manifests as input and outputs the details of the patch.

Public function

bool

 

EnumeratePatchData

(
    const BuildPatchServices::FPatchDat...
)

Saves info for an enumeration of patch data referenced from an input file of known format, to a specified output file.

Public function Const

TSet< FStrin...

 

GetInstalledPrereqIds()

Gets an array of prerequisite identifiers that are registered as installed on this system.

Public function Const

const TArray...

 

GetInstallers()

Gets a list of currently active installers

Public function

IBuildManife...

 

LoadManifestFromFile

(
    const FString& Filename
)

Loads a Build Manifest from file and returns the interface

Public function

IBuildManife...

 

MakeManifestFromData

(
    const TArray< uint8 >& ManifestDat...
)

Constructs a Build Manifest from a data

Public function

bool

 

MergeManifests

(
    const FString& ManifestFilePathA,
    const FString& ManifestFilePathB,
    const FString& ManifestFilePathC,
    const FString& NewVersionString,
    const FString& SelectionDetailFile...
)

Takes two manifests as input, in order to merge together producing a new manifest containing all files.

Public function

IBuildPatchS...

 

OnStartBuildInstall()

Public function

bool

 

OptimiseChunkDelta

(
    const BuildPatchServices::FChunkDel...
)

Process a pair of manifests to produce additional delta data which reduces the patch directly between them.

Public function

bool

 

PackageChunkData

(
    const BuildPatchServices::FPackageC...
)

Packages data referenced by a manifest file into chunkdb files, supporting a maximum filesize per chunkdb.

Public function

void

 

RegisterAppInstallation

(
    IBuildManifestRef AppManifest,
    const FString AppInstallDirectory
)

Registers an installation on this machine.

Public function

bool

 

SaveManifestToFile

(
    const FString& Filename,
    IBuildManifestRef Manifest
)

Saves a Build Manifest to file

Public function

void

 

SetAnalyticsProvider

(
    TSharedPtr< IAnalyticsProvider > An...
)

Sets the Analytics provider that will be used to register errors with patch/build installs

Public function

void

 

SetBackupDirectory

(
    const FString& BackupDir
)

Sets the backup directory where files that are being clobbered by repair/patch will be placed.

Public function

void

 

SetCloudDirectories

(
    TArray< FString > CloudDirs
)

Sets the cloud directory list where chunks and manifests will be pulled from and saved to.

Public function

void

 

SetCloudDirectory

(
    FString CloudDir
)

Sets the cloud directory where chunks and manifests will be pulled from and saved to.

Public function

void

 

SetStagingDirectory

(
    const FString& StagingDir
)

Sets the directory used for staging intermediate files.

Public function

bool

 

UnregisterAppInstallation

(
    const FString AppInstallDirectory
)

Unregisters an installation on this machine

Public function

bool

 

VerifyChunkData

(
    const FString& SearchPath,
    const FString& OutputFile
)

Searches a given directory for chunk and chunkdb files, and verifies their integrity uses the hashes in the files.

Classes

Name

Description

Public class

FSimpleEvent

Returns an event which fires when we start a new build install.

Deprecated Functions

Name Description

Public function Virtual

bool

 

EnumerateManifestData

(
    const FString& ManifestFilePath,
    const FString& OutputFile,
    bool bIncludeSizes
)

Please use EnumeratePatchData instead.

Public function Virtual

bool

 

GenerateChunksManifestFromDirectory

(
    const BuildPatchServices::FGenerati...
)

Please use ChunkBuildDirectory instead.

Public function

IBuildManife...

 

MakeManifestFromJSON

(
    const FString& ManifestJSON
)

MakeManifestFromJSON(const FString& ManifestJSON) has been deprecated. Please use MakeManifestFromData(const TArray& ManifestData) instead.

Public function

IBuildInstal...

 

StartBuildInstall

StartBuildInstall(BuildPatchServices::FInstallerConfiguration, FBuildPatchBoolManifestDelegate) has been deprecated. Please use CreateBuildInstaller(BuildPatchServices::FBuildInstallerConfiguration, FBuildPatchInstallerDelegate) instead, followed by IBuildInstaller::StartInstallation.

Public function

IBuildInstal...

 

StartBuildInstall

(
    IBuildManifestPtr CurrentManifest,
    IBuildManifestPtr InstallManifest,
    const FString& InstallDirectory,
    FBuildPatchBoolManifestDelegate OnC...,
    bool bIsRepair,
    TSet< FString > InstallTags
)

StartBuildInstall(IBuildManifestPtr, IBuildManifestPtr, const FString&, FBuildPatchBoolManifestDelegate, bool, TSet) has been deprecated. Please use CreateBuildInstaller(BuildPatchServices::FBuildInstallerConfiguration, FBuildPatchInstallerDelegate) instead, followed by IBuildInstaller::StartInstallation.

Public function

IBuildInstal...

 

StartBuildInstallStageOnly

(
    IBuildManifestPtr CurrentManifest,
    IBuildManifestPtr InstallManifest,
    const FString& InstallDirectory,
    FBuildPatchBoolManifestDelegate OnC...,
    bool bIsRepair,
    TSet< FString > InstallTags
)

StartBuildInstallStageOnly(IBuildManifestPtr, IBuildManifestPtr, const FString&, FBuildPatchBoolManifestDelegate, bool, TSet) has been deprecated. Please use CreateBuildInstaller(BuildPatchServices::FBuildInstallerConfiguration, FBuildPatchInstallerDelegate) instead, followed by IBuildInstaller::StartInstallation.