UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
MovieSceneSubTrack.h
Go to the documentation of this file.
1// Copyright Epic Games, Inc. All Rights Reserved.
2
3#pragma once
4
5#include "Containers/Array.h"
6#include "CoreMinimal.h"
7#include "CoreTypes.h"
9#include "Misc/FrameNumber.h"
10#include "Misc/InlineValue.h"
12#include "MovieSceneSection.h"
15#include "UObject/ObjectPtr.h"
17
18#include "MovieSceneSubTrack.generated.h"
19
22class UObject;
24
28UCLASS(MinimalAPI)
31{
33
34public:
35
37
46 virtual UMovieSceneSubSection* AddSequence(UMovieSceneSequence* Sequence, FFrameNumber StartTime, int32 Duration) { return AddSequenceOnRow(Sequence, StartTime, Duration, INDEX_NONE); }
47
57 MOVIESCENE_API virtual UMovieSceneSubSection* AddSequenceOnRow(UMovieSceneSequence* Sequence, FFrameNumber StartTime, int32 Duration, int32 RowIndex);
58
67 MOVIESCENE_API bool ContainsSequence(const UMovieSceneSequence& Sequence, bool Recursively = false, const UMovieSceneSection* SectionToSkip = nullptr) const;
68
76
84
93
102
103public:
104
105 // UMovieSceneTrack interface
106
107 MOVIESCENE_API virtual void AddSection(UMovieSceneSection& Section) override;
108 MOVIESCENE_API virtual bool SupportsType(TSubclassOf<UMovieSceneSection> SectionClass) const override;
109 MOVIESCENE_API virtual UMovieSceneSection* CreateNewSection() override;
110 MOVIESCENE_API virtual const TArray<UMovieSceneSection*>& GetAllSections() const override;
111 MOVIESCENE_API virtual bool HasSection(const UMovieSceneSection& Section) const override;
112 MOVIESCENE_API virtual bool IsEmpty() const override;
113 MOVIESCENE_API virtual void RemoveAllAnimationData() override;
114 MOVIESCENE_API virtual void RemoveSection(UMovieSceneSection& Section) override;
115 MOVIESCENE_API virtual void RemoveSectionAt(int32 SectionIndex) override;
116 MOVIESCENE_API virtual bool SupportsMultipleRows() const override;
117
118#if WITH_EDITORONLY_DATA
119 MOVIESCENE_API virtual FText GetDefaultDisplayName() const override;
120 virtual UMovieSceneSection* GetSectionToKey() const override { return SectionToKey; }
121 MOVIESCENE_API virtual void SetSectionToKey(UMovieSceneSection* Section) override;
122#endif
123
124protected:
125
127 UPROPERTY()
129
130#if WITH_EDITORONLY_DATA
131
132public:
133
137 int32 GetRowHeight() const
138 {
139 return RowHeight;
140 }
141
146 {
147 RowHeight = FMath::Max(16, NewRowHeight);
148 }
149
150private:
151
153 UPROPERTY()
155
157 UPROPERTY()
158 TObjectPtr<UMovieSceneSection> SectionToKey;
159
160#endif
161};
@ INDEX_NONE
Definition CoreMiscDefines.h:150
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
Definition UObjectGlobals.h:1292
Definition Text.h:385
Definition Array.h:670
Definition SubclassOf.h:30
Definition MovieSceneNameableTrack.h:24
Definition MovieSceneSection.h:243
Definition MovieSceneSequence.h:73
Definition MovieSceneSubSection.h:96
Definition MovieSceneSubTrack.h:31
MOVIESCENE_API UMovieSceneSection * FindOrExtendSection(FFrameNumber Time, float &OutWeight)
virtual UMovieSceneSubSection * AddSequence(UMovieSceneSequence *Sequence, FFrameNumber StartTime, int32 Duration)
Definition MovieSceneSubTrack.h:46
MOVIESCENE_API UMovieSceneSection * FindOrAddSection(FFrameNumber Time, bool &bSectionAdded)
MOVIESCENE_API UMovieSceneSection * FindSection(FFrameNumber Time) const
Definition Object.h:95
Definition FrameNumber.h:18
Definition ObjectPtr.h:488