UDocumentation
UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
InstanceDataObjectUtils.h
Go to the documentation of this file.
1
// Copyright Epic Games, Inc. All Rights Reserved.
2
3
#pragma once
4
5
#include "
CoreTypes.h
"
6
7
#if WITH_EDITORONLY_DATA
8
9
#define UE_API COREUOBJECT_API
10
11
class
FFieldVariant
;
12
class
FProperty
;
13
class
FStructuredArchiveRecord
;
14
class
FArchive
;
15
class
UClass
;
16
class
UObject
;
17
class
UStruct
;
18
19
namespace
UE
{
class
FPropertyPathNameTree; }
20
namespace
UE
{
class
FUnknownEnumNames
; }
21
namespace
UE::Serialization::Private
{
class
FImportTypeHierarchy; }
22
23
namespace
UE
24
{
25
27
UE_API
bool
IsInstanceDataObjectSupportEnabled
();
29
UE_API
bool
IsInstanceDataObjectSupportEnabled
(
const
UObject
* Object);
31
UE_API
bool
IsInstanceDataObjectSupportEnabledForGC
(
const
UClass
*
Class
);
33
UE_API
bool
IsUninitializedAlertUIEnabled
();
35
UE_API
bool
IsInstanceDataObjectImpersonationEnabledOnSave
(
const
UObject
* Object);
37
UE_API
bool
IsInstanceDataObjectArchetypeChainEnabled
();
39
UE_API
bool
IsInstanceDataObjectPlaceholderObjectSupportEnabled
();
41
UE_API
bool
IsInstanceDataObjectOuterChainEnabled
();
42
43
UE_API
bool
StructContainsLooseProperties
(
const
UStruct
*
Struct
);
44
UE_API
bool
StructIsInstanceDataObjectStruct
(
const
UStruct
*
Struct
);
45
46
UE_API
bool
IsPropertyLoose
(
const
FProperty
*
Property
);
47
49
bool
CanCreatePropertyBagPlaceholderTypeForImportClass
(
const
UClass
*
ClassKind
,
const
UE::Serialization::Private::FImportTypeHierarchy
*
ImportTypeHierarchy
);
51
bool
CanCreatePropertyBagPlaceholderForType
(
const
UClass
*
ClassKind
,
const
UStruct
* Type);
52
54
UE_API
bool
IsClassOfInstanceDataObjectClass
(
const
UStruct
*
Class
);
55
57
UE_API
UObject
*
GetTemplateForInstanceDataObject
(
const
UObject
*
Instance
,
const
UObject
*
InstanceArchetype
,
const
UClass
*
InstanceDataObjectClass
);
58
60
UClass
*
CreateInstanceDataObjectClass
(
const
FPropertyPathNameTree*
PropertyTree
,
const
FUnknownEnumNames
*
EnumNames
,
UClass
* OwnerClass,
UObject
*
Outer
);
61
63
UE_API
bool
IsInstanceDataObject
(
const
UObject
* Object);
64
75
UE_API
UObject
*
CreateInstanceDataObject
(
UObject
*
Owner
);
76
88
UE_API
UObject
*
CreateInstanceDataObject
(
UObject
*
Owner
,
FArchive
& Ar,
int64
StartOffset,
int64
EndOffset);
89
91
UE_API
UObject
*
ResolveInstanceDataObject
(
UObject
* Object);
92
93
namespace
Private
94
{
95
UE_API
bool
TryCreateIDOForConstructedObject
(
UObject
* Object,
bool
bCreateIDOsForSubObjects
=
true
);
96
}
// Private
97
98
}
// UE
99
100
#undef UE_API
101
102
#endif
// WITH_EDITORONLY_DATA
ESphericalLimitType::Outer
@ Outer
CoreTypes.h
int64
FPlatformTypes::int64 int64
A 64-bit signed integer.
Definition
Platform.h:1127
StaticCastSharedRef
UE_FORCEINLINE_HINT TSharedRef< CastToType, Mode > StaticCastSharedRef(TSharedRef< CastFromType, Mode > const &InSharedRef)
Definition
SharedPointer.h:127
EPropertyTagSerializeType::Property
@ Property
ERepBuildType::Struct
@ Struct
ERepBuildType::Class
@ Class
UE_API
#define UE_API
Definition
SColorGradingComponentViewer.h:12
EConcurrencyMode::Owner
@ Owner
ETypeContainerScope::Instance
@ Instance
FArchive
Definition
Archive.h:1208
FFieldVariant
Definition
Field.h:353
FProperty
Definition
UnrealType.h:174
FStructuredArchiveRecord
Definition
StructuredArchiveSlots.h:144
UClass
Definition
Class.h:3793
UE::Serialization::Private::FImportTypeHierarchy
Definition
ImportTypeHierarchy.h:39
UObject
Definition
Object.h:95
UStruct
Definition
Class.h:480
Private
Definition
OverriddenPropertySet.cpp:45
UE::Serialization::Private
Definition
StructuredLog.cpp:42
UE
Definition
AdvancedWidgetsModule.cpp:13
Engine
Source
Runtime
CoreUObject
Internal
UObject
InstanceDataObjectUtils.h
Generated by
1.9.8