5#include "Containers/Array.h"
39static constexpr uint8 _storeTypeMask = 0b0001'1111u;
40static constexpr uint8 _modifierMask = 0b1110'0000u;
41static_assert((
_storeTypeLast & _modifierMask) == 0,
"enum overlap");
99template<ESerialMethod Code,
typename T>
125 *ValuePtr =
FQuat(Tmp);
137#define SerialAny_Case(enumvalue, casttype) case enumvalue: Serial<enumvalue>(Ar, (casttype*)data); return true;
#define ensure( InExpression)
Definition AssertionMacros.h:464
UE_FORCEINLINE_HINT TSharedRef< CastToType, Mode > StaticCastSharedRef(TSharedRef< CastFromType, Mode > const &InSharedRef)
Definition SharedPointer.h:127
#define SerialAny_Case(enumvalue, casttype)
#define FVector
Definition IOSSystemIncludes.h:8
UE::Math::TQuat< double > FQuat
Definition MathFwd.h:50
const bool
Definition NetworkReplayStreaming.h:178
USkinnedMeshComponent float
Definition SkinnedMeshComponent.h:60
Definition Archive.h:1208
virtual CORE_API void SerializeIntPacked(uint32 &Value)
Definition Archive.cpp:1328
UE_FORCEINLINE_HINT bool IsLoading() const
Definition Archive.h:236
UE_FORCEINLINE_HINT bool IsSaving() const
Definition Archive.h:248
Definition DirectLinkSerialMethods.h:15
void Serial(FArchive &Ar, T *Param)
Definition DirectLinkSerialMethods.h:100
bool CanSerializeWithMethod(ESerialMethod Method)
Definition DirectLinkSerialMethods.h:95
EStoreType GetStoreTypeForType()
Definition DirectLinkSerialMethods.h:94
bool SerialAny(FArchive &Ar, void *data, ESerialMethod Method)
Definition DirectLinkSerialMethods.h:135
ESerialModifier
Definition DirectLinkSerialMethods.h:33
@ _array
Definition DirectLinkSerialMethods.h:35
@ _default
Definition DirectLinkSerialMethods.h:34
@ _alt1
Definition DirectLinkSerialMethods.h:36
EStoreType
Definition DirectLinkSerialMethods.h:19
@ _vector4
Definition DirectLinkSerialMethods.h:25
@ _u64
Definition DirectLinkSerialMethods.h:22
@ _vector
Definition DirectLinkSerialMethods.h:25
@ _u8
Definition DirectLinkSerialMethods.h:22
@ _transform
Definition DirectLinkSerialMethods.h:28
@ _u32
Definition DirectLinkSerialMethods.h:22
@ _str
Definition DirectLinkSerialMethods.h:24
@ _i64
Definition DirectLinkSerialMethods.h:21
@ _i32
Definition DirectLinkSerialMethods.h:21
@ _storeTypeLast
Definition DirectLinkSerialMethods.h:29
@ _i8
Definition DirectLinkSerialMethods.h:21
@ _f32
Definition DirectLinkSerialMethods.h:23
@ _u16
Definition DirectLinkSerialMethods.h:22
@ _linearcolor
Definition DirectLinkSerialMethods.h:26
@ _md5hash
Definition DirectLinkSerialMethods.h:27
@ _quat
Definition DirectLinkSerialMethods.h:25
@ _i16
Definition DirectLinkSerialMethods.h:21
@ _f64
Definition DirectLinkSerialMethods.h:23
@ _bool
Definition DirectLinkSerialMethods.h:20
ESerialMethod
Definition DirectLinkSerialMethods.h:44
void Serial< ESerialMethod::Vector_f32 >(FArchive &Ar, FVector *ValuePtr)
Definition DirectLinkSerialMethods.h:104
void Serial< ESerialMethod::Quat_f32 >(FArchive &Ar, FQuat *ValuePtr)
Definition DirectLinkSerialMethods.h:119
void Serial< ESerialMethod::Uint32_Packed >(FArchive &Ar, uint32 *ValuePtr)
Definition DirectLinkSerialMethods.h:102
Definition SecureHash.h:133
Definition DirectLinkSerialMethods.h:74
static constexpr ESerialMethod Value
Definition DirectLinkSerialMethods.h:74