Module |
|
Header |
/Engine/Source/Runtime/Online/BuildPatchServices/Public/BuildPatchFeatureLevel.h |
Include |
#include "BuildPatchFeatureLevel.h" |
namespace BuildPatchServices
{
enum EFeatureLevel
{
Original = 0,
CustomFields,
StartStoringVersion,
DataFileRenames,
StoresIfChunkOrFileData,
StoresDataGroupNumbers,
ChunkCompressionSupport,
StoresPrerequisitesInfo,
StoresChunkFileSizes,
StoredAsCompressedUClass,
UNUSED_0,
UNUSED_1,
StoresChunkDataShaHashes,
StoresPrerequisiteIds,
StoredAsBinaryData,
VariableSizeChunksWithoutWindowSizeChunkInfo,
VariableSizeChunks,
UsesRuntimeGeneratedBuildId,
UsesBuildTimeGeneratedBuildId,
LatestPlusOne,
Latest = (LatestPlusOne - 1),
LatestNoChunks = StoresChunkFileSizes,
LatestJson = StoresPrerequisiteIds,
FirstOptimisedDelta = UsesRuntimeGeneratedBuildId,
StoresUniqueBuildId = UsesRuntimeGeneratedBuildId,
BrokenJsonVersion = 255,
Invalid = -1,
}
}
Name |
Description |
---|---|
Original |
The original version. |
CustomFields |
Support for custom fields. |
StartStoringVersion |
Started storing the version number. |
DataFileRenames |
Made after data files where renamed to include the hash value, these chunks now go to ChunksV2. |
StoresIfChunkOrFileData |
Manifest stores whether build was constructed with chunk or file data. |
StoresDataGroupNumbers |
Manifest stores group number for each chunk/file data for reference so that external readers don't need to know how to calculate them. |
ChunkCompressionSupport |
Added support for chunk compression, these chunks now go to ChunksV3. NB: Not File Data Compression yet. |
StoresPrerequisitesInfo |
Manifest stores product prerequisites info. |
StoresChunkFileSizes |
Manifest stores chunk download sizes. |
StoredAsCompressedUClass |
Manifest can optionally be stored using UObject serialization and compressed. |
UNUSED_0 |
These two features were removed and never used. |
UNUSED_1 |
|
StoresChunkDataShaHashes |
Manifest stores chunk data SHA1 hash to use in place of data compare, for faster generation. |
StoresPrerequisiteIds |
Manifest stores Prerequisite Ids. |
StoredAsBinaryData |
The first minimal binary format was added. UObject classes will no longer be saved out when binary selected. |
VariableSizeChunksWithoutWindowSizeChunkInfo |
Temporary level where manifest can reference chunks with dynamic window size, but did not serialize them. Chunks from here onwards are stored in ChunksV4. |
VariableSizeChunks |
Manifest can reference chunks with dynamic window size, and also serializes them. |
UsesRuntimeGeneratedBuildId |
Manifest uses a build id generated from its metadata. |
UsesBuildTimeGeneratedBuildId |
Manifest uses a build id generated unique at build time, and stored in manifest. |
LatestPlusOne |
!! Always after the latest version entry, signifies the latest version plus 1 to allow the following Latest alias. |
Latest |
An alias for the actual latest version value. |
LatestNoChunks |
An alias to provide the latest version of a manifest supported by file data (nochunks). |
LatestJson |
An alias to provide the latest version of a manifest supported by a json serialized format. |
FirstOptimisedDelta |
An alias to provide the first available version of optimised delta manifest saving. |
StoresUniqueBuildId |
More aliases, but this time for values that have been renamed. |
BrokenJsonVersion |
JSON manifests were stored with a version of 255 during a certain CL range due to a bug. |
Invalid |
This is for UObject default, so that we always serialize it. |
An enum type to describe supported features of a certain manifest.