UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
MassRelationObservers.h
Go to the documentation of this file.
1// Copyright Epic Games, Inc. All Rights Reserved.
2
3#pragma once
4
6#include "MassEntityQuery.h"
7#include "MassRelationObservers.generated.h"
8
9#define UE_API MASSENTITY_API
10
11namespace UE::Mass::Relations
12{
13 struct FRelationTypeTraits;
14 enum class ERelationRole : uint8;
15}
16
17UCLASS(MinimalAPI)
19{
21
22public:
24
28 UE_API virtual bool ConfigureRelationObserver(UE::Mass::FTypeHandle InRegisteredTypeHandle, const UE::Mass::FRelationTypeTraits& Traits);
29
30protected:
31 UE_API virtual void InitializeInternal(UObject& Owner, const TSharedRef<FMassEntityManager>& EntityManager) override;
32 UE_API virtual void ConfigureQueries(const TSharedRef<FMassEntityManager>& EntityManager) override;
33
39 bool bAutoAddRelationFragmentRequirement = true;
40 bool bAutoAddRelationTagRequirement = true;
41
43};
44
45UCLASS(MinimalAPI)
47{
49public:
50 static constexpr int32 RelationCreationObserverExecutionPriority = 1024;
51
53
54protected:
55 UE_API virtual void Execute(FMassEntityManager& EntityManager, FMassExecutionContext& Context) override;
56};
57
59UCLASS(MinimalAPI)
61{
63public:
65
66protected:
67 UE_API virtual void Execute(FMassEntityManager& EntityManager, FMassExecutionContext& Context) override;
68};
69
71UCLASS(MinimalAPI)
81
82UCLASS(MinimalAPI)
84{
86
87public:
89
90 UE_API virtual bool ConfigureRelationObserver(UE::Mass::FTypeHandle InRegisteredTypeHandle, const UE::Mass::FRelationTypeTraits& Traits) override;
91 static UE_API void AddObserverInstances(FMassObserverManager& GetObserverManager, UE::Mass::FTypeHandle InRegisteredTypeHandle, const UE::Mass::FRelationTypeTraits& Traits);
92
93protected:
94 UE_API virtual void Execute(FMassEntityManager& EntityManager, FMassExecutionContext& Context) override;
95 UE_API virtual void ConfigureQueries(const TSharedRef<FMassEntityManager>& EntityManager) override;
96
98
103
108 const UScriptStruct* ExcludedRelationFragmentType = nullptr;
109};
110
111#undef UE_API
FPlatformTypes::int32 int32
A 32-bit signed integer.
Definition Platform.h:1125
UE_FORCEINLINE_HINT TSharedRef< CastToType, Mode > StaticCastSharedRef(TSharedRef< CastFromType, Mode > const &InSharedRef)
Definition SharedPointer.h:127
#define UE_API
Definition MassRelationObservers.h:9
EMassFragmentAccess
Definition MassRequirements.h:18
#define GENERATED_BODY(...)
Definition ObjectMacros.h:765
#define UCLASS(...)
Definition ObjectMacros.h:776
uint8_t uint8
Definition binka_ue_file_header.h:8
Definition SharedPointer.h:153
Definition MassObserverProcessor.h:70
Definition MassRelationObservers.h:47
Definition MassRelationObservers.h:73
Definition MassRelationObservers.h:61
Definition MassRelationObservers.h:19
FString DebugDescription
Definition MassRelationObservers.h:42
FMassEntityQuery EntityQuery
Definition MassRelationObservers.h:34
UE::Mass::FTypeHandle RelationTypeHandle
Definition MassRelationObservers.h:35
Definition MassRelationObservers.h:84
FMassExecuteFunction ExecuteFunction
Definition MassRelationObservers.h:97
Definition Object.h:95
Definition Class.h:1720
Definition MassRelationManager.cpp:20
ERelationRole
Definition MassEntityRelations.h:46
Definition MassEntityManager.h:96
Definition MassEntityQuery.h:51
Definition MassExecutionContext.h:29
Definition MassObserverManager.h:67
Definition MassTypeManager.h:27
Definition MassEntityRelations.h:105