Navigation
API > API/Editor > API/Editor/UnrealEd
Helper class for generating streaming install manifests
| Name | FAssetRegistryGenerator |
| Type | class |
| Header File | /Engine/Source/Editor/UnrealEd/Public/Commandlets/AssetRegistryGenerator.h |
| Include Path | #include "Commandlets/AssetRegistryGenerator.h" |
Syntax
class FAssetRegistryGenerator
Constructors
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
FAssetRegistryGenerator
(
const ITargetPlatform* InPlatform |
Constructor | Commandlets/AssetRegistryGenerator.h |
Destructors
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
~FAssetRegistryGenerator() |
Destructor | Commandlets/AssetRegistryGenerator.h |
Classes
| Name | Remarks |
|---|---|
| FGetShortestReferenceChain | Helper struct to get the shortest reference chain in cook dependencies from one or more PackageNames to the set of packages that are hard-imported into a chunk. |
Structs
| Name | Remarks |
|---|---|
| FAssetRegistryDifference | Differences between the current and the previous state. |
| FComputeDifferenceOptions | Options when computing the differences between current and previous state. |
| FGeneratorPackageInfo | Info about a GeneratorPackage (see ICookPackageSplitter) loaded from previous incremental cooks. |
Enums
Public
| Name | Remarks |
|---|---|
| EDifference |
Typedefs
| Name | Type | Remarks | Include Path |
|---|---|---|---|
| FChunkPackageSet | TMap< FName, FString > | Map of Package name to Sandbox Paths | Commandlets/AssetRegistryGenerator.h |
Variables
Protected
| Name | Type | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|---|
| AllCookedPackageSet | FChunkPackageSet | Map of all cooked Packages | Commandlets/AssetRegistryGenerator.h | |
| AssetRegistry | IAssetRegistry & | Holds a reference to asset registry | Commandlets/AssetRegistryGenerator.h | |
| AssetsLoadedWithLastPackage | TSet< FName > | List of all asset packages that were created while loading the last package in the cooker. | Commandlets/AssetRegistryGenerator.h | |
| bGenerateChunks | bool | Should the chunks be generated or only asset registry | Commandlets/AssetRegistryGenerator.h | |
| ChunkDataGenerators | TArray< TSharedRef< IChunkDataGenerator > > | Additional data generators used when creating chunks | Commandlets/AssetRegistryGenerator.h | |
| ChunkIdPakchunkIndexMapping | TMap< int32, int32 > | Mapping from chunk id to pakchunk file index. | Commandlets/AssetRegistryGenerator.h | |
| ChunkManifests | TArray< TUniquePtr< FChunkPackageSet > > | Array of Maps with chunks<->packages assignments | Commandlets/AssetRegistryGenerator.h | |
| DependencyInfo | UChunkDependencyInfo & | Source of the config-driven parent-child relationships between chunks. | Commandlets/AssetRegistryGenerator.h | |
| DependencyQuery | UE::AssetRegistry::EDependencyQuery | Required flags a dependency must have if it is to be followed when adding package dependencies to chunks. | Commandlets/AssetRegistryGenerator.h | |
| ExplicitChunkIDs | TMap< FName, TArray< int32 > > | Lookup for the ChunkIDs that were explicitly set by the user in the editor | Commandlets/AssetRegistryGenerator.h | |
| FinalChunkManifests | TArray< TUniquePtr< FChunkPackageSet > > | Array of Maps with chunks<->packages assignments. This version contains all dependent packages | Commandlets/AssetRegistryGenerator.h | |
| HighestChunkId | int32 | Highest chunk id, being used for geneating dependency tree | Commandlets/AssetRegistryGenerator.h | |
| PackagesContainingMaps | TSet< FName > | Set of packages containing a map | Commandlets/AssetRegistryGenerator.h | |
| State | FAssetRegistryState | State of the asset registry that is being built for this platform | Commandlets/AssetRegistryGenerator.h | |
| TargetPlatform | const ITargetPlatform * | Platform to generate the manifest for | Commandlets/AssetRegistryGenerator.h | |
| UnassignedPackageSet | FChunkPackageSet | Map of packages that has not been assigned to chunks | Commandlets/AssetRegistryGenerator.h |
Functions
Public
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
| Follows an assets dependency chain to build up a list of package names in the same order as the runtime would attempt to load them | Commandlets/AssetRegistryGenerator.h | ||
void AddGlobalsToCookedAssetRegistry
(
UCookOnTheFlyServer& COTFS |
Add or update data in the generated AssetRegistry for non-package data such as management references from PrimaryAssets and /Script PackageDatas. | Commandlets/AssetRegistryGenerator.h | |
bool CleanManifestDirectories
(
UE::Cook::FCookSandbox& InSandboxFile, |
Deletes temporary manifest directories. | Commandlets/AssetRegistryGenerator.h | |
void ComputePackageDifferences
(
const FComputeDifferenceOptions& Options, |
Computes differences between the current asset registry state and the provided previous state. | Commandlets/AssetRegistryGenerator.h | |
bool ContainsMap
(
const FName& PackageName |
ContainsMap Does this package contain a map file (determined by finding if this package contains a UWorld / ULevel object) | Commandlets/AssetRegistryGenerator.h | |
void FinalizeChunkIDs
(
const TSet< FName >& CookedPackages, |
FinalizeChunkIDs Create the list of packages to store in each Chunk; each Chunk corresponds to a pak file, or group of pak files if the chunk is split. | Commandlets/AssetRegistryGenerator.h | |
FAssetPackageData * GetAssetPackageData
(
const FName& PackageName |
Returns editable version of the asset package state being generated | Commandlets/AssetRegistryGenerator.h | |
int32 GetPakchunkIndex
(
int32 ChunkId |
Get pakchunk file index from ChunkID | Commandlets/AssetRegistryGenerator.h | |
const ITargetPlatform * GetTargetPlatform() |
Commandlets/AssetRegistryGenerator.h | ||
void Initialize() |
Commandlets/AssetRegistryGenerator.h | ||
void InitializeAssetRegistryForCookOnTheFly
(
const FAssetRegistrySerializationOptions& DevelopmentSaveOptions |
Called at the beginning of CookOnTheFly to bootstrap the targetplatform's AssetRegistry by copying it from the editor's AssetRegistry. | Commandlets/AssetRegistryGenerator.h | |
void PostSave() |
PostSave Notify generator that we are finished saving registry | Commandlets/AssetRegistryGenerator.h | |
void PreSave
(
const TSet< FName >& InCookedPackages |
PreSave Notify generator that we are about to save the registry and chunk manifests | Commandlets/AssetRegistryGenerator.h | |
void RegisterChunkDataGenerator
(
TSharedRef< IChunkDataGenerator > InChunkDataGenerator |
Register a chunk data generator with this generator. Should be called prior to SaveManifests. | Commandlets/AssetRegistryGenerator.h | |
void RemoveStalePackages
(
const TMap< FName, UE::Cook::Artifact::FOplogPackageData >& OplogPackages |
Given the list of packages still in the oplog, remove any packages from the AssetRegistryState that are no longer in the oplog (they were not referenced in the current session and were pruned for being too old or invalid). | Commandlets/AssetRegistryGenerator.h | |
void ReportGeneratorPackages
(
const FAssetRegistryState& PreviousState, |
Reads Generator packages and other cooking data from the previous incrementalcook's DevelopmentAssetRegistry. | Commandlets/AssetRegistryGenerator.h | |
bool SaveAssetRegistry
(
const FString& SandboxPath, |
Saves generated asset registry data for each platform. | Commandlets/AssetRegistryGenerator.h | |
bool SaveManifests
(
UE::Cook::FCookSandbox& InSandboxFile, |
Saves all generated manifests for each target platform. | Commandlets/AssetRegistryGenerator.h | |
void SetPreviousAssetRegistry
(
TUniquePtr< FAssetRegistryState >&& PreviousState |
Sets asset registry from a previous run that is used for incremental cooking. | Commandlets/AssetRegistryGenerator.h | |
void UpdateAssetRegistryData
(
UE::Cook::FMPCollectorServerMessageContext& Context, |
Commandlets/AssetRegistryGenerator.h | ||
void UpdateAssetRegistryData
(
FName PackageName, |
Attempts to update the metadata for a package in an asset registry generator. | Commandlets/AssetRegistryGenerator.h | |
bool WriteCookerOpenOrder
(
UE::Cook::FCookSandbox& InSandboxFile |
Writes out CookerOpenOrder.log file | Commandlets/AssetRegistryGenerator.h |
Static
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
static void AddChunkIdStringOverride
(
const int32 ChunkId, |
Sets the generated pak chunk to be named the given OverrideName rather than the chunkId. | Commandlets/AssetRegistryGenerator.h | |
static bool ClearChunkIdOverride
(
const int32 ChunkId |
Removes the String Override for the given ChunkId. Returns true if an override was removed. | Commandlets/AssetRegistryGenerator.h | |
static FAssetPackageData CopyAssetPackageDataForIncrementalCook
(
const FAssetPackageData& Source |
When copying AssetPackageData from the previous saved development assetregistry into the FGeneratorPackageInfo returned from ComputePackageDifferences that are used for incremental cook, we only need a subset of the data; we skip copying the portions we don't need to improve performance. | Commandlets/AssetRegistryGenerator.h | |
static FName GetGeneratorPackage
(
FName PackageName, |
If InState records PackageName is generated, return the name of the Generator and the property flags of the Generator's AssetRegistry dependency upon the generated package, otherwise return NAME_None and EDependencyProperty::None. | Commandlets/AssetRegistryGenerator.h | |
static UE::Cook::FAssetRegistryPackageMessage RecordUpdateAssetRegistryData
(
FName PackageName, |
Commandlets/AssetRegistryGenerator.h | ||
static void UpdateAssetManagerDatabase () |
Check config to see whether chunk assignments use the AssetManager. | Commandlets/AssetRegistryGenerator.h |