17template <
class MemberType>
25 [](
int inArrayDepth,
EOSDataType inDataType,
const char *inClassName)
27 return OSIsType((MemberType *)
nullptr, inArrayDepth, inDataType, inClassName);
31 return OSReadData(ioStream, *
reinterpret_cast<MemberType *
>(inObject));
35 OSWriteData(ioStream, *
reinterpret_cast<const MemberType *
>(inObject));
44#define JPH_ADD_ATTRIBUTE_WITH_ALIAS(class_name, member_name, alias_name) \
45 AddSerializableAttributeTyped<decltype(class_name::member_name)>(inRTTI, offsetof(class_name, member_name), alias_name);
48#define JPH_ADD_ATTRIBUTE(class_name, member_name) \
49 JPH_ADD_ATTRIBUTE_WITH_ALIAS(class_name, member_name, #member_name)
unsigned int uint
Definition: Core.h:439
#define JPH_NAMESPACE_END
Definition: Core.h:367
#define JPH_NAMESPACE_BEGIN
Definition: Core.h:361
JPH_NAMESPACE_BEGIN const RTTI * GetPrimitiveTypeOfType(T *)
Helper functions to get the underlying RTTI type of a type (so e.g. Array<sometype> will return somet...
Definition: GetPrimitiveTypeOfType.h:13
bool OSIsType(Array< T > *, int inArrayDepth, EOSDataType inDataType, const char *inClassName)
Definition: ObjectStream.h:123
void OSWriteData(IObjectStreamOut &ioStream, const Array< T > &inArray)
Definition: ObjectStream.h:241
bool OSReadData(IObjectStreamIn &ioStream, Array< T > &inArray)
Define serialization templates for dynamic arrays.
Definition: ObjectStream.h:154
void OSWriteDataType(IObjectStreamOut &ioStream, Array< T > *)
Definition: ObjectStream.h:234
EOSDataType
Data type.
Definition: SerializableAttribute.h:15
JPH_NAMESPACE_BEGIN void AddSerializableAttributeTyped(RTTI &inRTTI, uint inOffset, const char *inName)
Definition: SerializableAttributeTyped.h:18
Interface class for reading from an object stream.
Definition: ObjectStream.h:40
Interface class for writing to an object stream.
Definition: ObjectStream.h:74
void AddAttribute(const SerializableAttribute &inAttribute)
Attribute access.
Definition: RTTI.cpp:128
Attributes are members of classes that need to be serialized.
Definition: SerializableAttribute.h:35