3#include <Foundation/IO/OpenDdlWriter.h>
4#include <Foundation/Reflection/Reflection.h>
21 static void WriteObjectToDDL(
plStreamWriter& inout_stream,
const plRTTI* pRtti,
const void* pObject,
bool bCompactMmode =
true,
28 static void WriteObjectToBinary(
plStreamWriter& inout_stream,
const plRTTI* pRtti,
const void* pObject);
51 static void ReadObjectPropertiesFromDDL(
plStreamReader& inout_stream,
const plRTTI& rtti,
void* pObject);
54 static void ReadObjectPropertiesFromBinary(
plStreamReader& inout_stream,
const plRTTI& rtti,
void* pObject);
61 static void* Clone(
const void* pObject,
const plRTTI* pType);
69 static void Clone(
const void* pObject,
void* pClone,
const plRTTI* pType);
73 static T*
Clone(
const T* pObject)
75 return static_cast<T*
>(Clone(pObject, plGetStaticRTTI<T>()));
Represents a single 'object' in a DDL document, e.g. either a custom type or a primitives list.
Definition OpenDdlReader.h:11
The base class for OpenDDL writers.
Definition OpenDdlWriter.h:13
TypeStringMode
Definition OpenDdlWriter.h:16
This class holds information about reflected types. Each instance represents one type that is known t...
Definition RTTI.h:30
Definition ReflectionSerializer.h:9
static T * Clone(const T *pObject)
Templated convenience function that calls Clone and automatically deduces the type.
Definition ReflectionSerializer.h:73
Interface for binary in (read) streams.
Definition Stream.h:22
Interface for binary out (write) streams.
Definition Stream.h:107
This data type is the abstraction for 128-bit Uuid (also known as GUID) instances.
Definition Uuid.h:11