UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
BlueprintSupport.h
Go to the documentation of this file.
1// Copyright Epic Games, Inc. All Rights Reserved.
2
3#pragma once
4
5#include "Containers/Array.h"
6#include "Containers/Map.h"
7#include "CoreMinimal.h"
8#include "CoreTypes.h"
11#include "UObject/NameTypes.h"
13
15class UClass;
16class UObject;
17class UPackage;
18class UScriptStruct;
19class UStruct;
21class ITargetPlatform;
22
62
74
78
83{
93 static void DuplicateAllFields(class UStruct* StructToDuplicate, class FDuplicateDataWriter& Writer);
94
99 static bool UseDeferredDependencyLoading();
102
104 static void FlushReinstancingQueue();
109
112
115
116#if WITH_EDITOR
118 COREUOBJECT_API static void RegisterDeferredDependenciesInStruct(const UStruct* Struct, void* StructData);
119#endif
120
123
126
130 COREUOBJECT_API static bool ShouldTreatWarningAsError(FName WarningIdentifier);
131 COREUOBJECT_API static bool ShouldSuppressWarning(FName WarningIdentifier);
132
134
135#if WITH_EDITOR
138
141#endif
142};
143
158
159#if WITH_EDITOR
169{
170public:
173
182
183private:
186
189
192
194 FUObjectSerializeContext* LoadContext;
195
197};
198
199#endif // WITH_EDITOR
200
295
301{
302public:
303 //~ FDeferredInitializationTrackerBase interface
304 virtual bool DeferPreload(UObject* Object) override;
305};
306
312{
313protected:
314 //~ FDeferredInitializationTrackerBase interface
316};
317
OODEFFUNC typedef void(OODLE_CALLBACK t_fp_OodleCore_Plugin_Free)(void *ptr)
void(* FFlushCompilationQueueFPtr)(FUObjectSerializeContext *)
Definition BlueprintSupport.h:76
void(* FClassReparentingFPtr)(const TMap< UClass *, UClass * > &)
Definition BlueprintSupport.h:77
void(* FFlushReinstancingQueueFPtr)()
Definition BlueprintSupport.h:75
UE_FORCEINLINE_HINT TSharedRef< CastToType, Mode > StaticCastSharedRef(TSharedRef< CastFromType, Mode > const &InSharedRef)
Definition SharedPointer.h:127
Definition DuplicatedDataWriter.h:22
Definition NameTypes.h:617
Definition UObjectGlobals.h:1292
Definition Text.h:385
Definition Array.h:670
Definition UnrealString.h.inl:34
Definition ThreadSingleton.h:44
Definition Class.h:3793
Definition Object.h:95
Definition Package.h:216
Definition Class.h:1720
Definition Class.h:480
Definition BlueprintSupport.h:83
static void FlushReinstancingQueue()
Definition BlueprintSupport.cpp:139
static COREUOBJECT_API void SetFlushCompilationQueueFPtr(FFlushCompilationQueueFPtr Ptr)
Definition BlueprintSupport.cpp:168
static COREUOBJECT_API const TArray< FBlueprintWarningDeclaration > & GetBlueprintWarnings()
Definition BlueprintSupport.cpp:330
static COREUOBJECT_API bool ShouldSuppressWarning(FName WarningIdentifier)
Definition BlueprintSupport.cpp:346
static bool IsDeferredCDOInitializationDisabled()
Definition BlueprintSupport.cpp:125
static COREUOBJECT_API bool IsClassPlaceholder(const UClass *Class)
Definition BlueprintSupport.cpp:351
static COREUOBJECT_API void UpdateWarningBehavior(const TArray< FName > &WarningIdentifiersToTreatAsError, const TArray< FName > &WarningIdentifiersToSuppress)
Definition BlueprintSupport.cpp:335
static COREUOBJECT_API bool ShouldTreatWarningAsError(FName WarningIdentifier)
Definition BlueprintSupport.cpp:341
static COREUOBJECT_API void SetFlushReinstancingQueueFPtr(FFlushReinstancingQueueFPtr Ptr)
Definition BlueprintSupport.cpp:163
static COREUOBJECT_API void RepairDeferredDependenciesInObject(UObject *Object)
Definition BlueprintSupport.cpp:236
static void FlushCompilationQueue(FUObjectSerializeContext *InLoadContext=nullptr)
Definition BlueprintSupport.cpp:147
static COREUOBJECT_API void ReparentHierarchies(const TMap< UClass *, UClass * > &OldClassToNewClass)
Definition BlueprintSupport.cpp:155
static bool UseDeferredDependencyLoading()
Definition BlueprintSupport.cpp:98
static void DuplicateAllFields(class UStruct *StructToDuplicate, class FDuplicateDataWriter &Writer)
Definition BlueprintSupport.cpp:72
static bool IsDeferredExportCreationDisabled()
Definition BlueprintSupport.cpp:115
static COREUOBJECT_API void SetClassReparentingFPtr(FClassReparentingFPtr Ptr)
Definition BlueprintSupport.cpp:173
static bool IsInBlueprintPackage(UObject *LoadedObj)
Definition BlueprintSupport.cpp:299
static COREUOBJECT_API void RegisterBlueprintWarning(const FBlueprintWarningDeclaration &Warning)
Definition BlueprintSupport.cpp:325
static COREUOBJECT_API bool IsDeferredDependencyPlaceholder(const UObject *LoadedObj)
Definition BlueprintSupport.cpp:178
Definition BlueprintSupport.h:28
static COREUOBJECT_API const FName BlueprintDescription
Definition BlueprintSupport.h:40
static COREUOBJECT_API const FName ParentClassPath
Definition BlueprintSupport.h:32
static COREUOBJECT_API const FName NumNativeComponents
Definition BlueprintSupport.h:56
static COREUOBJECT_API const FName GeneratedClassPath
Definition BlueprintSupport.h:30
static COREUOBJECT_API const FName BlueprintType
Definition BlueprintSupport.h:38
static COREUOBJECT_API const FName NumReplicatedProperties
Definition BlueprintSupport.h:54
static COREUOBJECT_API const FName IsDataOnly
Definition BlueprintSupport.h:46
static COREUOBJECT_API const FName BlueprintPathWithinPackage
Definition BlueprintSupport.h:60
static COREUOBJECT_API const FName ClassFlags
Definition BlueprintSupport.h:36
static COREUOBJECT_API const FName UnversionedFindInBlueprintsData
Definition BlueprintSupport.h:52
static COREUOBJECT_API const FName FindInBlueprintsData
Definition BlueprintSupport.h:50
static COREUOBJECT_API const FName NativeParentClassPath
Definition BlueprintSupport.h:34
static COREUOBJECT_API const FName ImplementedInterfaces
Definition BlueprintSupport.h:48
static COREUOBJECT_API const FName BlueprintCategory
Definition BlueprintSupport.h:44
static COREUOBJECT_API const FName BlueprintDisplayName
Definition BlueprintSupport.h:42
static COREUOBJECT_API const FName NumBlueprintComponents
Definition BlueprintSupport.h:58
Definition BlueprintSupport.h:64
FBlueprintWarningDeclaration(FName InWarningIdentifier, FText InWarningDescription)
Definition BlueprintSupport.h:65
FName WarningIdentifier
Definition BlueprintSupport.h:71
FText WarningDescription
Definition BlueprintSupport.h:72
Definition BlueprintSupport.h:301
virtual bool DeferPreload(UObject *Object) override
Definition BlueprintSupport.cpp:2800
Definition BlueprintSupport.h:210
void ResolveArchetypeInstances(UObject *ArchetypeKey)
Definition BlueprintSupport.cpp:2720
TMap< UObject *, FObjectInitializer > DeferredInitializers
Definition BlueprintSupport.h:289
bool IsInitializationDeferred(const UObject *Object) const
Definition BlueprintSupport.cpp:2744
TArray< UObject * > ResolvingObjects
Definition BlueprintSupport.h:291
virtual bool DeferPreload(UObject *Object)
Definition BlueprintSupport.cpp:2749
void PreloadDeferredDependents(UObject *ArchetypeInstance)
Definition BlueprintSupport.cpp:2778
TMultiMap< UObject *, UObject * > DeferredPreloads
Definition BlueprintSupport.h:293
virtual ~FDeferredInitializationTrackerBase()
Definition BlueprintSupport.h:212
virtual bool ResolveDeferredInitialization(UObject *ResolvingObject, UObject *ArchetypeInstance)
Definition BlueprintSupport.cpp:2764
bool IsResolving(UObject *ArchetypeInstance) const
Definition BlueprintSupport.cpp:2759
TMultiMap< const UObject *, UObject * > ArchetypeInstanceMap
Definition BlueprintSupport.h:287
Definition BlueprintSupport.h:323
static FObjectInitializer * DeferObjectInitializerIfNeeded(const FObjectInitializer &DeferringInitializer)
Definition BlueprintSupport.cpp:2916
static bool DeferObjectPreload(UObject *Object)
Definition BlueprintSupport.cpp:3039
static void ResolveDeferredInitsFromArchetype(UObject *Archetype)
Definition BlueprintSupport.cpp:3044
Definition BlueprintSupport.h:312
virtual bool ResolveDeferredInitialization(UObject *ResolvingObject, UObject *ArchetypeInstance) override
Definition BlueprintSupport.cpp:2869
Definition BlueprintSupport.h:150
COREUOBJECT_API ~FScopedPlaceholderRawContainerTracker()
Definition LinkerPlaceholderBase.cpp:277
Definition UObjectThreadContext.h:140