UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
FPackageFileSummary Struct Reference

#include <PackageFileSummary.h>

Public Member Functions

COREUOBJECT_API FPackageFileSummary ()
 
PRAGMA_DISABLE_DEPRECATION_WARNINGS FPackageFileSummary (FPackageFileSummary &&)=default
 
 FPackageFileSummary (const FPackageFileSummary &)=default
 
FPackageFileSummaryoperator= (FPackageFileSummary &&)=default
 
FPackageFileSummaryoperator= (const FPackageFileSummary &)=default
 
PRAGMA_ENABLE_DEPRECATION_WARNINGS FPackageFileVersion GetFileVersionUE () const
 
int32 GetFileVersionUE4 () const
 
int32 GetFileVersionLicenseeUE () const
 
int32 GetFileVersionLicenseeUE4 () const
 
const FCustomVersionContainerGetCustomVersionContainer () const
 
void SetCustomVersionContainer (const FCustomVersionContainer &InContainer)
 
COREUOBJECT_API void SetFileVersions (const int32 EpicUE4, const int32 EpicUE5, const int32 LicenseeUE, const bool bInSaveUnversioned=false)
 
void SetFileVersions (const int32 EpicUE, const int32 LicenseeUE, const bool bInSaveUnversioned=false)
 
void SetToLatestFileVersions (const bool bInSaveUnversioned)
 
bool IsFileVersionTooOld () const
 
bool IsFileVersionTooNew () const
 
COREUOBJECT_API bool IsFileVersionValid () const
 
uint32 GetPackageFlags () const
 
void SetPackageFlags (uint32 InPackageFlags)
 

Public Attributes

int32 Tag
 
int32 TotalHeaderSize
 
FString PackageName
 
int32 NameCount
 
int32 NameOffset
 
int32 SoftObjectPathsCount
 
int32 SoftObjectPathsOffset
 
FString LocalizationId
 
int32 GatherableTextDataCount
 
int32 GatherableTextDataOffset
 
int32 MetaDataOffset
 
int32 ExportCount
 
int32 ExportOffset
 
int32 ImportCount
 
int32 ImportOffset
 
int32 CellExportCount
 
int32 CellExportOffset
 
int32 CellImportCount
 
int32 CellImportOffset
 
int32 DependsOffset
 
int32 SoftPackageReferencesCount
 
int32 SoftPackageReferencesOffset
 
int32 SearchableNamesOffset
 
int32 ThumbnailTableOffset
 
int32 ImportTypeHierarchiesCount
 
int32 ImportTypeHierarchiesOffset
 
TArray< FGenerationInfoGenerations
 
FEngineVersion SavedByEngineVersion
 
FEngineVersion CompatibleWithEngineVersion
 
uint32 CompressionFlags
 
uint32 PackageSource
 
bool bUnversioned
 
int32 AssetRegistryDataOffset
 
int64 BulkDataStartOffset
 
int32 WorldTileInfoDataOffset
 
TArray< int32ChunkIDs
 
int32 PreloadDependencyCount
 
int32 PreloadDependencyOffset
 
int32 NamesReferencedFromExportDataCount
 
int64 PayloadTocOffset
 
int32 DataResourceOffset
 

Friends

COREUOBJECT_API FArchiveoperator<< (FArchive &Ar, FPackageFileSummary &Sum)
 
COREUOBJECT_API void operator<< (FStructuredArchive::FSlot Slot, FPackageFileSummary &Sum)
 

Detailed Description

A "table of contents" for an Unreal package file. Stored at the top of the file.

Constructor & Destructor Documentation

◆ FPackageFileSummary() [1/3]

FPackageFileSummary::FPackageFileSummary ( )

Constructor

◆ FPackageFileSummary() [2/3]

PRAGMA_DISABLE_DEPRECATION_WARNINGS FPackageFileSummary::FPackageFileSummary ( FPackageFileSummary &&  )
default

◆ FPackageFileSummary() [3/3]

FPackageFileSummary::FPackageFileSummary ( const FPackageFileSummary )
default

Member Function Documentation

◆ GetCustomVersionContainer()

const FCustomVersionContainer & FPackageFileSummary::GetCustomVersionContainer ( ) const
inline

◆ GetFileVersionLicenseeUE()

int32 FPackageFileSummary::GetFileVersionLicenseeUE ( ) const
inline

◆ GetFileVersionLicenseeUE4()

int32 FPackageFileSummary::GetFileVersionLicenseeUE4 ( ) const
inline

◆ GetFileVersionUE()

PRAGMA_ENABLE_DEPRECATION_WARNINGS FPackageFileVersion FPackageFileSummary::GetFileVersionUE ( ) const
inline

◆ GetFileVersionUE4()

int32 FPackageFileSummary::GetFileVersionUE4 ( ) const
inline

◆ GetPackageFlags()

uint32 FPackageFileSummary::GetPackageFlags ( ) const
inline

Get the summary package flags.

◆ IsFileVersionTooNew()

bool FPackageFileSummary::IsFileVersionTooNew ( ) const
inline

Returns true if any of the package file versions are newer than currently supported by the running process

◆ IsFileVersionTooOld()

bool FPackageFileSummary::IsFileVersionTooOld ( ) const
inline

Returns true if any of the package file versions are older than the minimum supported versions

◆ IsFileVersionValid()

bool FPackageFileSummary::IsFileVersionValid ( ) const

Returns false if the summary is unversioned and the current process does not support that. If this returns false and the summary was loaded from disk then the serialization of the summary was aborted early!

◆ operator=() [1/2]

FPackageFileSummary & FPackageFileSummary::operator= ( const FPackageFileSummary )
default

◆ operator=() [2/2]

FPackageFileSummary & FPackageFileSummary::operator= ( FPackageFileSummary &&  )
default

◆ SetCustomVersionContainer()

void FPackageFileSummary::SetCustomVersionContainer ( const FCustomVersionContainer InContainer)

◆ SetFileVersions() [1/2]

void FPackageFileSummary::SetFileVersions ( const int32  EpicUE,
const int32  LicenseeUE,
const bool  bInSaveUnversioned = false 
)
inline

◆ SetFileVersions() [2/2]

void FPackageFileSummary::SetFileVersions ( const int32  EpicUE4,
const int32  EpicUE5,
const int32  LicenseeUE,
const bool  bInSaveUnversioned = false 
)

Used to manually set the package file and licensee versions

◆ SetPackageFlags()

void FPackageFileSummary::SetPackageFlags ( uint32  InPackageFlags)

Set the summary package flags while stripping out temporary flags (i.e. NewlyCreated, IsSaving)

◆ SetToLatestFileVersions()

void FPackageFileSummary::SetToLatestFileVersions ( const bool  bInSaveUnversioned)
inline

Set both the package file versions and the licensee version to the most recent version numbers supported

Friends And Related Symbol Documentation

◆ operator<< [1/2]

COREUOBJECT_API FArchive & operator<< ( FArchive Ar,
FPackageFileSummary Sum 
)
friend

I/O functions

◆ operator<< [2/2]

COREUOBJECT_API void operator<< ( FStructuredArchive::FSlot  Slot,
FPackageFileSummary Sum 
)
friend

The package file version number when this package was saved.

Lower 16 bits stores the UE3 engine version Upper 16 bits stores the UE licensee version For newer packages this is -7 -2 indicates presence of enum-based custom versions -3 indicates guid-based custom versions -4 indicates removal of the UE3 version. Packages saved with this ID cannot be loaded in older engine versions -5 indicates the replacement of writing out the "UE3 version" so older versions of engine can gracefully fail to open newer packages -6 indicates optimizations to how custom versions are being serialized -7 indicates the texture allocation info has been removed from the summary -8 indicates that the UE5 version has been added to the summary -9 indicates a contractual change in when early exits are required based on FileVersionTooNew. At or after this LegacyFileVersion, we support changing the PackageFileSummary serialization format for all bytes serialized after FileVersionLicensee, and that format change can be conditional on any of the versions parsed before that point. All packageloaders that understand the -9 legacyfileformat are required to early exit without further serialization at that point if FileVersionTooNew is true.

Member Data Documentation

◆ AssetRegistryDataOffset

int32 FPackageFileSummary::AssetRegistryDataOffset

Location into the file on disk for the asset registry tag data

◆ BulkDataStartOffset

int64 FPackageFileSummary::BulkDataStartOffset

Offset to the location in the file where the bulkdata starts

◆ bUnversioned

bool FPackageFileSummary::bUnversioned

If true, this file will not be saved with version numbers or was saved without version numbers. In this case they are assumed to be the current version. This is only used for full cooks for distribution because it is hard to guarantee correctness

◆ CellExportCount

int32 FPackageFileSummary::CellExportCount

Number of cells contained in this package

◆ CellExportOffset

int32 FPackageFileSummary::CellExportOffset

Location into the file on disk for the CellExportMap data

◆ CellImportCount

int32 FPackageFileSummary::CellImportCount

Number of cell imports contained in this package

◆ CellImportOffset

int32 FPackageFileSummary::CellImportOffset

Location into the file on disk for the CellImportMap data

◆ ChunkIDs

TArray<int32> FPackageFileSummary::ChunkIDs

Streaming install ChunkIDs

◆ CompatibleWithEngineVersion

FEngineVersion FPackageFileSummary::CompatibleWithEngineVersion

Engine version this package is compatible with. Assets saved by Hotfix releases and engine versions that maintain binary compatibility will have a CompatibleWithEngineVersion.Patch that matches the original release (as opposed to SavedByEngineVersion which will have a patch version of the new release).

◆ CompressionFlags

uint32 FPackageFileSummary::CompressionFlags

Flags used to compress the file on save and uncompress on load.

◆ DataResourceOffset

int32 FPackageFileSummary::DataResourceOffset

Location into the file of the data resource(s)

◆ DependsOffset

int32 FPackageFileSummary::DependsOffset

Location into the file on disk for the DependsMap data

◆ ExportCount

int32 FPackageFileSummary::ExportCount

Number of exports contained in this package

◆ ExportOffset

int32 FPackageFileSummary::ExportOffset

Location into the file on disk for the ExportMap data

◆ GatherableTextDataCount

int32 FPackageFileSummary::GatherableTextDataCount

Number of gatherable text data items in this package

◆ GatherableTextDataOffset

int32 FPackageFileSummary::GatherableTextDataOffset

Location into the file on disk for the gatherable text data items

◆ Generations

TArray<FGenerationInfo> FPackageFileSummary::Generations

Data about previous versions of this package

◆ ImportCount

int32 FPackageFileSummary::ImportCount

Number of imports contained in this package

◆ ImportOffset

int32 FPackageFileSummary::ImportOffset

Location into the file on disk for the ImportMap data

◆ ImportTypeHierarchiesCount

int32 FPackageFileSummary::ImportTypeHierarchiesCount

Number of import type hierarchy entries

◆ ImportTypeHierarchiesOffset

int32 FPackageFileSummary::ImportTypeHierarchiesOffset

Location into the file on disk for the import type hierarchy map

◆ LocalizationId

FString FPackageFileSummary::LocalizationId

Localization ID of this package

Note
This is copy of the version stored in the package meta-data. It exists here so we can query it without having to load the whole package

◆ MetaDataOffset

int32 FPackageFileSummary::MetaDataOffset

Location into the file on disk for the MetaData data

◆ NameCount

int32 FPackageFileSummary::NameCount

Number of names used in this package

◆ NameOffset

int32 FPackageFileSummary::NameOffset

Location into the file on disk for the name data

◆ NamesReferencedFromExportDataCount

int32 FPackageFileSummary::NamesReferencedFromExportDataCount

Number of names that are referenced from serialized export data (sorted first in the name map)

◆ PackageName

FString FPackageFileSummary::PackageName

The package name the file was last saved with.

◆ PackageSource

uint32 FPackageFileSummary::PackageSource

Value that is used to determine if the package was saved by Epic (or licensee) or by a modder, etc

◆ PayloadTocOffset

int64 FPackageFileSummary::PayloadTocOffset

Location into the file on disk for the payload table of contents data

◆ PreloadDependencyCount

int32 FPackageFileSummary::PreloadDependencyCount

◆ PreloadDependencyOffset

int32 FPackageFileSummary::PreloadDependencyOffset

Location into the file on disk for the preload dependency data

◆ SavedByEngineVersion

FEngineVersion FPackageFileSummary::SavedByEngineVersion

Engine version this package was saved with. This may differ from CompatibleWithEngineVersion for assets saved with a hotfix release.

◆ SearchableNamesOffset

int32 FPackageFileSummary::SearchableNamesOffset

Location into the file on disk for the SearchableNamesMap data

◆ SoftObjectPathsCount

int32 FPackageFileSummary::SoftObjectPathsCount

Number of soft object paths references contained in this package

Note
: the soft object path lists slightly duplicate information found in the SoftPackageReferences list

◆ SoftObjectPathsOffset

int32 FPackageFileSummary::SoftObjectPathsOffset

Location into the file on disk for the soft object paths reference list

◆ SoftPackageReferencesCount

int32 FPackageFileSummary::SoftPackageReferencesCount

Number of soft package references contained in this package

◆ SoftPackageReferencesOffset

int32 FPackageFileSummary::SoftPackageReferencesOffset

Location into the file on disk for the soft package reference list

◆ Tag

int32 FPackageFileSummary::Tag

Magic tag compared against PACKAGE_FILE_TAG to ensure that package is an Unreal package.

◆ ThumbnailTableOffset

int32 FPackageFileSummary::ThumbnailTableOffset

Thumbnail table offset

◆ TotalHeaderSize

int32 FPackageFileSummary::TotalHeaderSize

Total size of all information that needs to be read in to create a FLinkerLoad. This includes the package file summary, name table and import & export maps.

◆ WorldTileInfoDataOffset

int32 FPackageFileSummary::WorldTileInfoDataOffset

Offset to the location in the file where the FWorldTileInfo data starts


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