UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
MovieSceneTrackInstanceSystem.h
Go to the documentation of this file.
1// Copyright Epic Games, Inc. All Rights Reserved.
2
3#pragma once
4
6#include "Containers/Map.h"
13#include "HAL/Platform.h"
16#include "UObject/ObjectPtr.h"
18
19#include "MovieSceneTrackInstanceSystem.generated.h"
20
21class UClass;
24class UObject;
25
26USTRUCT()
28{
30
31 UPROPERTY()
32 TObjectPtr<UObject> BoundObject = nullptr;
33
34 UPROPERTY()
35 TObjectPtr<UMovieSceneTrackInstance> TrackInstance = nullptr;
36};
37
38
39UCLASS(MinimalAPI)
41{
43
44public:
45
47
48 MOVIESCENE_API int32 MakeOutput(UObject* BoundObject, UClass* TrackInstanceClass);
49
50 MOVIESCENE_API int32 FindOutput(UObject* BoundObject, UClass* TrackInstanceClass) const;
51
53 {
54 return TrackInstances;
55 }
56
58
59private:
60
61 MOVIESCENE_API virtual void OnLink() override final;
62 MOVIESCENE_API virtual void OnUnlink() override final;
63 MOVIESCENE_API virtual void OnRun(FSystemTaskPrerequisites& InPrerequisites, FSystemSubsequentTasks& Subsequents) override final;
64
65 MOVIESCENE_API virtual void OnTagGarbage() override;
66 MOVIESCENE_API virtual void OnCleanTaggedGarbage() override;
67
69
71 TMultiMap<TObjectPtr<UObject>, int32> BoundObjectToInstances;
72
73 TBitArray<> InvalidatedOutputs;
74
75 int32 ChildInitializerIndex;
76};
77
78
79UCLASS(MinimalAPI)
81{
83
85
86private:
87
88 MOVIESCENE_API virtual void OnLink() override final;
89 MOVIESCENE_API virtual void OnSchedulePersistentTasks(UE::MovieScene::IEntitySystemScheduler* TaskScheduler) override final;
90 MOVIESCENE_API virtual void OnRun(FSystemTaskPrerequisites& InPrerequisites, FSystemSubsequentTasks& Subsequents) override final;
91
92 void EvaluateAllInstances();
93
94 UPROPERTY()
96};
97
98
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 UPROPERTY(...)
UObject definition macros.
Definition ObjectMacros.h:744
#define GENERATED_BODY(...)
Definition ObjectMacros.h:765
#define UCLASS(...)
Definition ObjectMacros.h:776
#define USTRUCT(...)
Definition ObjectMacros.h:746
Definition Archive.h:1208
Definition UObjectGlobals.h:1292
Definition UObjectGlobals.h:2492
Definition BitArray.h:350
Definition SparseArray.h:524
Definition Class.h:3793
Definition IMovieSceneTaskScheduler.h:162
Definition MovieSceneEntityInstantiatorSystem.h:22
Definition MovieSceneEntitySystem.h:62
Definition MovieSceneSection.h:243
Definition MovieSceneTrackInstanceSystem.h:41
const TSparseArray< FMovieSceneTrackInstanceEntry > & GetTrackInstances() const
Definition MovieSceneTrackInstanceSystem.h:52
MOVIESCENE_API int32 FindOutput(UObject *BoundObject, UClass *TrackInstanceClass) const
Definition MovieSceneTrackInstanceSystem.h:81
Definition MovieSceneTrackInstance.h:106
Definition Object.h:95
static COREUOBJECT_API void AddReferencedObjects(UObject *InThis, FReferenceCollector &Collector)
Definition GarbageCollection.cpp:6401
Definition MovieSceneTrackInstanceSystem.h:28
Definition ObjectPtr.h:488
Definition MovieSceneSystemTaskDependencies.h:98
Definition MovieSceneSystemTaskDependencies.h:29