UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
WorldDataLayersActorDesc.h
Go to the documentation of this file.
1// Copyright Epic Games, Inc. All Rights Reserved.
2
3#pragma once
4
5#if WITH_EDITOR
6
9#include "Misc/Optional.h"
10
12{
13public:
15 ENGINE_API void Init(class UDataLayerInstance* DataLayerInstance);
17 friend bool operator == (const FDataLayerInstanceDesc& Lhs, const FDataLayerInstanceDesc& Rhs);
18 friend bool operator < (const FDataLayerInstanceDesc& Lhs, const FDataLayerInstanceDesc& Rhs);
19
20 FName GetName() const { return Name; }
21 FName GetParentName() const { return ParentName; }
22 bool IsUsingAsset() const { return bIsUsingAsset; }
23 FName GetAssetPath() const { return AssetPath; }
25 ENGINE_API FString GetShortName() const;
27 ENGINE_API bool SupportsActorFilters() const;
28
29private:
30 ENGINE_API class UDataLayerAsset* GetAsset() const;
31
32 // DataLayerInstance Name
33 FName Name;
34 // Parent DataLayerInstance Name
35 FName ParentName;
36 // We can't rely on a valid AssetPath to determine if DataLayerInstance is UDataLayerInstanceWithAsset/UDataLayerInstancePrivate
37 bool bIsUsingAsset;
38
39 //~ Begin UDataLayerInstance
40 // DataLayer Asset Path
41 FName AssetPath;
42 // Returns if data layer should be included by default in FWorldPartitionActorFilter.
44 // DataLayer Asset is Private
45 bool bIsPrivate;
46 //~ End UDataLayerInstance
47
48 // If DataLayer Asset is Private store the SupportsActorFilter() flag
50 // If DataLayer Asset is Private store the ShortName (also used for UDeprecatedDataLayerInstance)
51 FString PrivateShortName;
52
53 //~ Begin UDeprecatedDataLayerInstance
55 //~ End UDeprecatedDataLayerInstance
56
57 friend class UDataLayerInstance;
58};
59
64{
65public:
67 bool IsValid() const { return bIsValid; }
68 ENGINE_API const TArray<FDataLayerInstanceDesc>& GetDataLayerInstances() const;
71
72protected:
73 //~ Begin FWorldPartitionActorDesc Interface.
74 ENGINE_API virtual void Init(const AActor* InActor) override;
75 ENGINE_API virtual bool Equals(const FWorldPartitionActorDesc* Other) const override;
76 virtual uint32 GetSizeOf() const override { return sizeof(FWorldDataLayersActorDesc); }
77 ENGINE_API virtual void Serialize(FArchive& Ar) override;
78 virtual bool IsResaveNeeded() const override { return !IsValid(); }
80 //~ End FWorldPartitionActorDesc Interface.
81
82private:
83
86
87 TArray<FDataLayerInstanceDesc> DataLayerInstances;
88 mutable TOptional<TArray<FDataLayerInstanceDesc>> ExternalPackageDataLayerInstances;
89 bool bIsValid;
92};
93#endif
UE_FORCEINLINE_HINT TSharedRef< CastToType, Mode > StaticCastSharedRef(TSharedRef< CastFromType, Mode > const &InSharedRef)
Definition SharedPointer.h:127
EDataLayerType
Definition DataLayerType.h:9
FArchive & operator<<(FArchive &Ar, FEnvQueryDebugProfileData::FStep &Data)
Definition EnvQueryTypes.cpp:489
bool operator<(const FTextFormatString &LHS, const FTextFormatString &RHS)
Definition ITextFormatArgumentModifier.h:147
void Init()
Definition LockFreeList.h:4
uint32_t uint32
Definition binka_ue_file_header.h:6
Definition Actor.h:257
Definition Archive.h:1208
Definition NameTypes.h:617
Definition WorldPartitionActorDescInstance.h:18
Definition WorldPartitionActorDesc.h:282
Definition Array.h:670
Definition AssetRegistryState.h:50
Definition DataLayerAsset.h:30
IMAGECORE_API const TCHAR * GetName(Type Format)
Definition ImageCore.cpp:1378
Definition Optional.h:131