10#if UE_ENABLE_INCLUDE_ORDER_DEPRECATED_IN_5_6
15#include "MassObserverManager.generated.h"
25 struct FProcessingContext;
26 namespace ObserverManager
28 struct FDeprecationHelper;
29 struct FBufferedNotificationExecutioner;
30 struct FBufferedCreationNotificationExecutioner;
32 struct FBufferedNotification;
33 struct FCreationNotificationHandle;
35 struct FCreationContext;
83 return ObservedFragments[(
uint8)Operation];
89 return ObservedTags[(
uint8)Operation];
104 return HasObserversForBitSet(
Composition.GetFragments(), Operation) || HasObserversForBitSet(
Composition.GetTags(), Operation);
147 , EntityCollection(DummyCollection)
177 template<
typename T,
typename U = std::decay_t<T>>
requires (std::is_same_v<U, FMassFragmentBitSet> || std::is_same_v<U, FMassTagBitSet>)
184 template<
typename T,
typename U = std::decay_t<T>>
requires (std::is_same_v<U, FMassFragmentBitSet> || std::is_same_v<U, FMassTagBitSet>)
224 bool IsLocked()
const {
return ActiveObserverLock.IsValid(); }
270#if WITH_MASSENTITY_DEBUG
276 UE_DEPRECATED(5.5,
"This flavor of OnPostEntitiesCreated is deprecated. Please use the one taking a TConstArrayView<FMassArchetypeEntityCollection> parameter instead")
290 UE_DEPRECATED(5.6, "Use HandleElementsImpl
instead.")
#define UE_DEPRECATED(Version, Message)
Definition CoreMiscDefines.h:302
UE_FORCEINLINE_HINT TSharedRef< CastToType, Mode > StaticCastSharedRef(TSharedRef< CastFromType, Mode > const &InSharedRef)
Definition SharedPointer.h:127
#define TRACE_CPUPROFILER_EVENT_SCOPE(Name)
Definition CpuProfilerTrace.h:528
EForkProcessRole
Definition Fork.h:22
@ Composition
Definition HairStrandsComposition.cpp:43
EMassObservedOperation
Definition MassEntityTypes.h:579
EMassObservedOperationFlags
Definition MassEntityTypes.h:597
T TNotNull
Definition NotNull.h:307
#define UPROPERTY(...)
UObject definition macros.
Definition ObjectMacros.h:744
#define GENERATED_BODY(...)
Definition ObjectMacros.h:765
#define USTRUCT(...)
Definition ObjectMacros.h:746
UE_INTRINSIC_CAST UE_REWRITE constexpr std::remove_reference_t< T > && MoveTemp(T &&Obj) noexcept
Definition UnrealTemplate.h:520
Definition IDelegateInstance.h:14
Definition UnrealType.h:3087
Definition ArrayView.h:139
Definition UnrealString.h.inl:34
Definition SharedPointer.h:692
Definition SharedPointer.h:153
Definition SharedPointer.h:1295
Definition MassObserverProcessor.h:70
Definition MassProcessor.h:78
Definition MassArchetypeData.h:21
Definition AdvancedWidgetsModule.cpp:13
Definition MassEntityTypes.h:74
Definition MassArchetypeTypes.h:93
Definition MassEntityHandle.h:13
Definition MassEntityManager.h:96
Definition MassObserverProcessor.h:22
Definition MassObserverManager.h:141
const FMassArchetypeEntityCollection & EntityCollection
Definition MassObserverManager.h:157
FCollectionRefOrHandle(const FMassArchetypeEntityCollection &InEntityCollection)
Definition MassObserverManager.h:151
FMassEntityHandle EntityHandle
Definition MassObserverManager.h:156
UE_NONCOPYABLE(FCollectionRefOrHandle)
FCollectionRefOrHandle(FMassEntityHandle InEntityHandle)
Definition MassObserverManager.h:145
static FMassArchetypeEntityCollection DummyCollection
Definition MassObserverManager.h:144
Definition MassObserverManager.h:67
bool HasObserversForBitSet(const FMassFragmentBitSet &InQueriedBitSet, const EMassObservedOperation Operation) const
Definition MassObserverManager.h:92
const FMassTagBitSet & GetObservedTagsBitSet(const EMassObservedOperation Operation) const
Definition MassObserverManager.h:87
bool HasObserversForComposition(const FMassArchetypeCompositionDescriptor &Composition, const EMassObservedOperation Operation) const
Definition MassObserverManager.h:102
bool HasObserversForBitSet(const FMassTagBitSet &InQueriedBitSet, const EMassObservedOperation Operation) const
Definition MassObserverManager.h:97
friend FObserverLock
Definition MassObserverManager.h:232
TSharedPtr< FCreationContext > GetCreationContext() const
Definition MassObserverManager.h:327
friend FMassEntityManager
Definition MassObserverManager.h:202
const FMassTagBitSet * GetObservedTagBitSets() const
Definition MassObserverManager.h:86
bool OnPostCompositionAdded(const FMassEntityHandle Entity, const FMassArchetypeCompositionDescriptor &Composition)
Definition MassObserverManager.h:123
bool OnPreCompositionRemoved(const FMassEntityHandle Entity, const FMassArchetypeCompositionDescriptor &Composition)
Definition MassObserverManager.h:128
FMassEntityManager & EntityManager
Definition MassObserverManager.h:268
FMassEntityManager & GetEntityManager()
Definition MassObserverManager.h:317
const FMassFragmentBitSet & GetObservedFragmentsBitSet(const EMassObservedOperation Operation) const
Definition MassObserverManager.h:81
bool OnCompositionChanged(const FMassArchetypeEntityCollection &EntityCollection, const FMassArchetypeCompositionDescriptor &Composition, const EMassObservedOperation Operation, UE::Mass::FProcessingContext *ProcessingContext=nullptr)
Definition MassObserverManager.h:163
bool OnCompositionChanged(const FMassEntityHandle Entity, T &&BitSet, const EMassObservedOperation Operation, UE::Mass::FProcessingContext *ProcessingContext=nullptr)
Definition MassObserverManager.h:185
bool OnCompositionChanged(const FMassArchetypeEntityCollection &EntityCollection, T &&BitSet, const EMassObservedOperation Operation, UE::Mass::FProcessingContext *ProcessingContext=nullptr)
Definition MassObserverManager.h:178
TWeakPtr< FCreationContext > ActiveCreationContext
Definition MassObserverManager.h:251
TSharedPtr< FObserverLock > GetObserverLock() const
Definition MassObserverManager.h:322
bool OnCompositionChanged(FMassEntityHandle EntityHandle, const FMassArchetypeCompositionDescriptor &Composition, const EMassObservedOperation Operation, UE::Mass::FProcessingContext *ProcessingContext=nullptr)
Definition MassObserverManager.h:170
bool IsLocked() const
Definition MassObserverManager.h:224
TWeakPtr< FObserverLock > ActiveObserverLock
Definition MassObserverManager.h:249
Definition MassObserverManager.h:44
Definition MassProcessingTypes.h:69
Definition ObjectPtr.h:488
Definition StructOpsTypeTraits.h:11
Definition StructOpsTypeTraits.h:46
Definition MassProcessingContext.h:14
Definition MassObserverManager.cpp:224
Definition MassObserverManager.cpp:135
Definition MassObserverNotificationTypes.h:39
Definition MassObserverNotificationTypes.h:404
Definition MassObserverNotificationTypes.h:183
Definition MassObserverNotificationTypes.h:221