5#include "Containers/Array.h"
17#include "Misc/Optional.h"
26#include <initializer_list>
42struct FPropertyCompositeDefinition;
43struct FPropertyDefinition;
44struct IPropertyTraits;
199 template<
typename PropertyTraits>
214 template<
typename PropertyTraits>
228 return Properties[PropertyID.TypeIndex];
249 const int32 CompositeOffset =
Property.VariableSizeCompositeOffset;
264 template<
typename PropertyTraits>
267 template<
typename PropertyTraits,
typename... Composites>
276 template<
typename PropertyTraits>
279 using StorageType =
typename PropertyTraits::StorageType;
288#if STATS || ENABLE_STATNAMEDEVENTS
292 StatID = FDynamicStats::CreateStatId<STAT_GROUP_TO_FStatGroup(STATGROUP_MovieSceneECS)>(
FName(
InStatName) );
333#if UE_ENABLE_INCLUDE_ORDER_DEPRECATED_IN_5_5
constexpr auto MakeArrayView(OtherRangeType &&Other)
Definition ArrayView.h:873
#define checkf(expr, format,...)
Definition AssertionMacros.h:315
@ INDEX_NONE
Definition CoreMiscDefines.h:150
#define DECLARE_CYCLE_STAT(CounterName, StatId, GroupId)
Definition Stats.h:669
UE_FORCEINLINE_HINT TSharedRef< CastToType, Mode > StaticCastSharedRef(TSharedRef< CastFromType, Mode > const &InSharedRef)
Definition SharedPointer.h:127
#define MAX_uint16
Definition NumericLimits.h:20
WIDECHAR PROFILER_CHAR
Definition StatsCommon.h:24
UE_INTRINSIC_CAST UE_REWRITE constexpr std::remove_reference_t< T > && MoveTemp(T &&Obj) noexcept
Definition UnrealTemplate.h:520
Definition NameTypes.h:617
Definition TrackInstancePropertyBindings.h:143
Definition MovieScene.Build.cs:6
Definition ArrayView.h:139
Definition InlineValue.h:22
Definition SubclassOf.h:30
Definition MovieScenePropertyRegistry.h:165
TCompositePropertyDefinitionBuilder< PropertyTraits > DefineCompositeProperty(TPropertyComponents< PropertyTraits > &InOutPropertyComponents, const TCHAR *InStatName)
Definition MovieScenePropertyRegistry.h:200
FPropertyRegistry()=default
TArrayView< const FPropertyDefinition > GetProperties() const
Definition MovieScenePropertyRegistry.h:234
TArrayView< const FPropertyCompositeDefinition > GetComposites(const FPropertyDefinition &Property) const
Definition MovieScenePropertyRegistry.h:247
static MOVIESCENE_API TOptional< FResolvedFastProperty > ResolveFastProperty(UObject *Object, const FMovieScenePropertyBinding &PropertyBinding, FCustomAccessorView CustomAccessors)
Definition MovieScenePropertyRegistry.cpp:171
TArrayView< const FPropertyCompositeDefinition > GetComposites(FCompositePropertyTypeID PropertyID) const
Definition MovieScenePropertyRegistry.h:257
MOVIESCENE_API const FPropertyDefinition * FindPropertyDefinition(FComponentTypeID ComponentTypeID) const
Definition MovieScenePropertyRegistry.cpp:224
FPropertyRegistry(const FPropertyRegistry &)=delete
const FPropertyDefinition & GetDefinition(FCompositePropertyTypeID PropertyID) const
Definition MovieScenePropertyRegistry.h:226
static MOVIESCENE_API TOptional< FResolvedProperty > ResolveProperty(UObject *Object, const FMovieScenePropertyBinding &PropertyBinding, FCustomAccessorView CustomAccessors)
Definition MovieScenePropertyRegistry.cpp:201
FPropertyRegistry(FPropertyRegistry &&)=delete
TPropertyDefinitionBuilder< PropertyTraits > DefineProperty(TPropertyComponents< PropertyTraits > &InOutPropertyComponents, const TCHAR *InStatName)
Definition MovieScenePropertyRegistry.h:215
Definition MovieSceneBlenderSystem.h:45
Definition MovieSceneEntitySystemLinker.h:113
Definition MovieSceneTrack.h:206
Definition AdvancedWidgetsModule.cpp:13
U16 Index
Definition radfft.cpp:71
static UE_FORCEINLINE_HINT void * Memcpy(void *Dest, const void *Src, SIZE_T Count)
Definition UnrealMemory.h:160
Definition MovieScenePropertyBinding.h:17
Definition Optional.h:131
Definition LightweightStats.h:416
Definition MovieSceneEntityIDs.h:174
Definition MovieScenePropertySystemTypes.h:28
static FCompositePropertyTypeID FromIndex(int32 Index)
Definition MovieScenePropertySystemTypes.h:31
Definition MovieScenePropertySystemTypes.h:164
Definition MovieScenePropertyRegistry.h:141
FComponentTypeID ComponentTypeID
Definition MovieScenePropertyRegistry.h:143
uint16 CompositeOffset
Definition MovieScenePropertyRegistry.h:149
Definition MovieScenePropertyRegistry.h:66
FComponentTypeID InitialValueType
Definition MovieScenePropertyRegistry.h:127
TStatId StatID
Definition MovieScenePropertyRegistry.h:112
TSubclassOf< UMovieSceneTrack > DefaultTrackType
Definition MovieScenePropertyRegistry.h:109
FPropertyDefinition(uint16 InVariableSizeCompositeOffset, FComponentTypeID InPropertyType, FComponentTypeID InInitialValueType)
Definition MovieScenePropertyRegistry.h:69
FPropertyDefinition(const FPropertyDefinition &)=delete
uint16 VariableSizeCompositeOffset
Definition MovieScenePropertyRegistry.h:118
MOVIESCENE_API void SetupInitialValueProcessor() const
Definition MovieScenePropertyRegistry.cpp:230
uint16 CompositeSize
Definition MovieScenePropertyRegistry.h:121
const IPropertyTraits * TraitsInstance
Definition MovieScenePropertyRegistry.h:106
FPropertyDefinition()=default
UClass * BlenderSystemClass
Definition MovieScenePropertyRegistry.h:133
FPropertyDefinition(FPropertyDefinition &&)=default
TComponentTypeID< T > GetMetaDataComponent(int32 Index) const
Definition MovieScenePropertyRegistry.h:92
uint32 DoubleCompositeMask
Definition MovieScenePropertyRegistry.h:115
TInlineValue< IPropertyComponentHandler, 32 > Handler
Definition MovieScenePropertyRegistry.h:136
TArrayView< const FComponentTypeID > MetaDataTypes
Definition MovieScenePropertyRegistry.h:130
ICustomPropertyRegistration * CustomPropertyRegistration
Definition MovieScenePropertyRegistry.h:103
FComponentTypeID PropertyType
Definition MovieScenePropertyRegistry.h:124
Definition MovieScenePropertyRegistry.h:53
int32 NumProperties
Definition MovieScenePropertyRegistry.h:55
int32 NumPartialProperties
Definition MovieScenePropertyRegistry.h:58
Definition MovieScenePropertySystemTypes.h:216
Definition MovieScenePropertyTraits.h:40
Definition MovieSceneEntityIDs.h:283
Definition MovieScenePropertyComponentHandler.h:763
Definition MovieScenePropertySystemTypes.h:299
Definition MovieScenePropertyComponentHandler.h:675