UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
MovieSceneSequenceInstanceData.h
Go to the documentation of this file.
1// Copyright Epic Games, Inc. All Rights Reserved.
2
3#pragma once
4
6#include "CoreMinimal.h"
7#include "CoreTypes.h"
9#include "Misc/InlineValue.h"
10#include "Templates/Decay.h"
11#include "Templates/EnableIf.h"
15#include "UObject/Class.h"
17
18#include "MovieSceneSequenceInstanceData.generated.h"
19
20class FArchive;
21
25USTRUCT()
27{
29
30
34
39 {
40 return GetScriptStructImpl();
41 }
42
43private:
44
48 virtual UScriptStruct& GetScriptStructImpl() const
49 {
50 check(false);
51 return *StaticStruct();
52 }
53};
54
56USTRUCT()
58#if CPP
60#endif
61{
63
64
69
73 template<
74 typename T,
76 >
78 : TInlineValue(Forward<T>(In))
79 {
80 typedef typename TDecay<T>::Type ClientType;
81
82 static_assert(!std::is_same_v<ClientType, FMovieSceneSequenceInstanceData>, "Direct usage of FMovieSceneSequenceInstanceData is prohibited.");
83
84#if WITH_EDITOR && DO_CHECK
85 const UStruct* ClientStruct = ClientType::StaticStruct();
86 checkf(ClientStruct == &In.GetScriptStruct() && ClientStruct != FMovieSceneSequenceInstanceData::StaticStruct(), TEXT("%s type does not correctly override GetScriptStructImpl. Track will not serialize correctly."), *ClientStruct->GetName());
87#endif
88 }
89
93
97
100};
101
102template<> struct TStructOpsTypeTraits<FMovieSceneSequenceInstanceDataPtr> : public TStructOpsTypeTraitsBase2<FMovieSceneSequenceInstanceDataPtr>
103{
104 enum { WithSerializer = true, WithCopy = true };
105};
#define check(expr)
Definition AssertionMacros.h:314
#define checkf(expr, format,...)
Definition AssertionMacros.h:315
#define TEXT(x)
Definition Platform.h:1272
UE_FORCEINLINE_HINT TSharedRef< CastToType, Mode > StaticCastSharedRef(TSharedRef< CastFromType, Mode > const &InSharedRef)
Definition SharedPointer.h:127
#define GENERATED_BODY(...)
Definition ObjectMacros.h:765
#define USTRUCT(...)
Definition ObjectMacros.h:746
UScriptStruct * StaticStruct()
Definition ReflectedTypeAccessors.h:18
Definition Archive.h:1208
FArchive & operator=(const FArchive &ArchiveToCopy)=default
Definition EnableIf.h:20
Definition InlineValue.h:22
Definition Class.h:1720
Definition Class.h:480
Definition MovieSceneSequenceInstanceData.h:61
FMovieSceneSequenceInstanceDataPtr(FMovieSceneSequenceInstanceDataPtr &&)=default
FMovieSceneSequenceInstanceDataPtr & operator=(FMovieSceneSequenceInstanceDataPtr &&)=default
FMovieSceneSequenceInstanceDataPtr(T &&In)
Definition MovieSceneSequenceInstanceData.h:77
Definition MovieSceneSequenceInstanceData.h:27
UScriptStruct & GetScriptStruct() const
Definition MovieSceneSequenceInstanceData.h:38
UE::Core::Private::Decay::TDecayNonReference< typenameTRemoveReference< T >::Type >::Type Type
Definition Decay.h:45
Definition StructOpsTypeTraits.h:11
@ WithCopy
Definition StructOpsTypeTraits.h:17
@ WithSerializer
Definition StructOpsTypeTraits.h:23
Definition StructOpsTypeTraits.h:46