Navigation
API > API/Runtime > API/Runtime/CoreUObject
Helper class to remap package imports during loading. This is usually when objects in a package are outer-ed to object in another package or vice versa. Instancing such a package without a instance remapping would resolve imports to the original package which is not desirable in an instancing context (i.e. loading a level instance) This is because an instanced package has a different name than the package file name on disk, this class is used in the linker to remaps reference to the package name as stored in import tables on disk to the corresponding instanced package or packages we are loading.
| Name | FLinkerInstancingContext |
| Type | class |
| Header File | /Engine/Source/Runtime/CoreUObject/Public/UObject/LinkerInstancingContext.h |
| Include Path | #include "UObject/LinkerInstancingContext.h" |
Syntax
class FLinkerInstancingContext
Constructors
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
FLinkerInstancingContext
(
bool bInSoftObjectPathRemappingEnabled |
UObject/LinkerInstancingContext.h | ||
FLinkerInstancingContext
(
TSet< FName > InTags |
UObject/LinkerInstancingContext.h | ||
| UObject/LinkerInstancingContext.h |
Classes
| Name | Remarks |
|---|---|
| FSharedLinkerInstancingContextData |
Variables
Protected
| Name | Type | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|---|
| SharedData | TSharedPtr< FSharedLinkerInstancingContextData > | UObject/LinkerInstancingContext.h |
Functions
Public
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
void AddPackageMapping
(
FName Original, |
Add a mapping from a package name to a new package name. | UObject/LinkerInstancingContext.h | |
void AddPackageMappingFunc
(
TFunction< FName(FName)> InInstancedPackageMapFunc |
Add a mapping function from a package name to a new package name. | UObject/LinkerInstancingContext.h | |
void AddPathMapping
(
FSoftObjectPath Original, |
Add a mapping from a top level asset path (/Path/To/Package.AssetName) to another. | UObject/LinkerInstancingContext.h | |
void AddTag
(
FName NewTag |
UObject/LinkerInstancingContext.h | ||
void AppendTags
(
const TSet< FName >& NewTags |
UObject/LinkerInstancingContext.h | ||
void FixupSoftObjectPath
(
FSoftObjectPath& InOutSoftObjectPath |
UObject/LinkerInstancingContext.h | ||
bool GetSoftObjectPathRemappingEnabled() |
UObject/LinkerInstancingContext.h | ||
bool HasTag
(
FName Tag |
UObject/LinkerInstancingContext.h | ||
bool IsInstanced() |
UObject/LinkerInstancingContext.h | ||
| Remap the package name from the import table to its instanced counterpart, otherwise return the name unmodified. | UObject/LinkerInstancingContext.h | ||
FSoftObjectPath RemapPath
(
const FSoftObjectPath& Path |
Remap the top level asset part of the path name to its instanced counterpart, otherwise return the name unmodified. | UObject/LinkerInstancingContext.h | |
void SetRegenerateUniqueBulkDataGuids
(
bool bFlag |
UObject/LinkerInstancingContext.h | ||
void SetSoftObjectPathRemappingEnabled
(
bool bInSoftObjectPathRemappingEnabled |
UObject/LinkerInstancingContext.h | ||
bool ShouldRegenerateUniqueBulkDataGuids() |
UObject/LinkerInstancingContext.h |
Static
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
static FLinkerInstancingContext DuplicateContext
(
const FLinkerInstancingContext& InLinkerInstancingContext |
UObject/LinkerInstancingContext.h | ||
static FName GetInstancedPackageName
(
FName InOuterPackageName, |
UObject/LinkerInstancingContext.h | ||
static FString GetInstancedPackageName
(
const FString& InOuterPackageName, |
Return the instanced package name for a given instanced outer package and an object package name | UObject/LinkerInstancingContext.h |