6#include "Containers/Array.h"
17#define UE_API DIRECTLINK_API
26template<
typename T,
typename S = T>
31 : NativeValue(InitialValue)
34 const T&
Get()
const {
return NativeValue; }
35 T&
Get() {
return NativeValue; }
36 operator const T&()
const {
return NativeValue; }
37 operator T&() {
return NativeValue; }
66 if (Reflect::CanSerializeWithMethod<T>(Parameters[I].StorageMethod))
81 return Parameter.Name == ParameterName;
96 struct FParameterDetails
117 template<
typename T,
typename S>
143 if (Reflect::CanSerializeWithMethod<T>(Parameters[I].StorageMethod))
145 Out = *(T*)(Parameters[I].StorageLocation);
157 struct FParameterDetails
160 void* StorageLocation;
172 , bIsSaving(bIsSaving)
193 const bool bIsSaving;
#define check(expr)
Definition AssertionMacros.h:314
UE_FORCEINLINE_HINT TSharedRef< CastToType, Mode > StaticCastSharedRef(TSharedRef< CastFromType, Mode > const &InSharedRef)
Definition SharedPointer.h:127
#define UE_API
Definition SColorGradingComponentViewer.h:12
Definition DirectLinkParameterStore.h:57
UE_API void AddParam(FName Name, Reflect::ESerialMethod StorageMethod, void *StorageLocation)
Definition DirectLinkParameterStore.cpp:148
UE_API FElementHash Hash() const
Definition DirectLinkParameterStore.cpp:160
void ReserveParamCount(uint32 PropCount)
Definition DirectLinkParameterStore.h:87
bool GetValueAs(int32 I, T &Out) const
Definition DirectLinkParameterStore.h:62
bool GetValueAs(FName Name, T &Out) const
Definition DirectLinkParameterStore.h:76
UE_API void SerializeAll(FArchive &Ar)
Definition DirectLinkParameterStore.cpp:109
int32 GetParameterIndex(FName ParameterName) const
Definition DirectLinkParameterStore.h:78
Definition DirectLinkParameterStore.h:108
bool GetValueAs(FName ParameterName, T &Out) const
Definition DirectLinkParameterStore.h:138
UE_API FParameterStore & operator=(FParameterStore &&)
UE_API FParameterStore & operator=(const FParameterStore &)
UE_API int32 GetParameterIndex(FName Name) const
Definition DirectLinkParameterStore.cpp:35
UE_API FParameterStore(FParameterStore &&)
UE_API FParameterStore(const FParameterStore &)
UE_API bool HasParameterNamed(FName Name) const
Definition DirectLinkParameterStore.cpp:42
UE_API FParameterStoreSnapshot Snapshot() const
Definition DirectLinkParameterStore.cpp:53
TStoreKey< T, S > & RegisterParameter(TStoreKey< T, S > &Key, FName Name)
Definition DirectLinkParameterStore.h:118
UE_API ~FParameterStore()
UE_API uint32 GetParameterCount() const
Definition DirectLinkParameterStore.cpp:30
UE_API FName GetParameterName(int32 Index) const
Definition DirectLinkParameterStore.cpp:47
Definition DirectLinkParameterStore.h:168
bool IsSaving() const
Definition DirectLinkParameterStore.h:175
FSnapshotProxy(FParameterStoreSnapshot &Storage, bool bIsSaving)
Definition DirectLinkParameterStore.h:170
bool TagSerialize(FName SerialTag, T &Item)
Definition DirectLinkParameterStore.h:178
Definition DirectLinkParameterStore.h:28
TStoreKey(const T &InitialValue={})
Definition DirectLinkParameterStore.h:30
const T & Get() const
Definition DirectLinkParameterStore.h:34
T & Get()
Definition DirectLinkParameterStore.h:35
T & operator=(const T &InValue)
Definition DirectLinkParameterStore.h:39
Definition Archive.h:1208
Definition MemoryReader.h:17
Definition NameTypes.h:617
UE_NODEBUG UE_FORCEINLINE_HINT bool IsValidIndex(SizeType Index) const
Definition Array.h:1122
ElementType & AddDefaulted_GetRef() UE_LIFETIMEBOUND
Definition Array.h:2815
SizeType IndexOfByPredicate(Predicate Pred) const
Definition Array.h:1423
UE_FORCEINLINE_HINT void Reserve(SizeType Number)
Definition Array.h:3016
Definition DatasmithSceneReceiver.h:17
uint32 FElementHash
Definition DirectLinkCommon.h:21
bool SerialAny(FArchive &Ar, void *data, ESerialMethod Method)
Definition DirectLinkSerialMethods.h:135
ESerialMethod
Definition DirectLinkSerialMethods.h:44
U16 Index
Definition radfft.cpp:71
Definition DirectLinkSerialMethods.h:74