Loading [MathJax]/extensions/tex2jax.js
Jolt Physics
A multi core friendly Game Physics Engine
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
SerializableObject.h File Reference

Go to the source code of this file.

Classes

class  SerializableObject
 

Macros

#define JPH_DECLARE_SERIALIZATION_FUNCTIONS(linkage, prefix, class_name)
 
#define JPH_IMPLEMENT_SERIALIZATION_FUNCTIONS(class_name)
 
#define JPH_DECLARE_SERIALIZABLE_NON_VIRTUAL(linkage, class_name)
 
#define JPH_IMPLEMENT_SERIALIZABLE_NON_VIRTUAL(class_name)
 
#define JPH_DECLARE_SERIALIZABLE_OUTSIDE_CLASS(linkage, class_name)
 
#define JPH_IMPLEMENT_SERIALIZABLE_OUTSIDE_CLASS(class_name)
 
#define JPH_DECLARE_SERIALIZABLE_VIRTUAL(linkage, class_name)
 
#define JPH_IMPLEMENT_SERIALIZABLE_VIRTUAL(class_name)
 
#define JPH_DECLARE_SERIALIZABLE_ABSTRACT(linkage, class_name)
 
#define JPH_IMPLEMENT_SERIALIZABLE_ABSTRACT(class_name)
 
#define JPH_DECLARE_SERIALIZABLE_VIRTUAL_BASE(linkage, class_name)
 
#define JPH_IMPLEMENT_SERIALIZABLE_VIRTUAL_BASE(class_name)
 
#define JPH_DECLARE_SERIALIZABLE_ABSTRACT_BASE(linkage, class_name)
 
#define JPH_IMPLEMENT_SERIALIZABLE_ABSTRACT_BASE(class_name)
 

Macro Definition Documentation

◆ JPH_DECLARE_SERIALIZABLE_ABSTRACT

#define JPH_DECLARE_SERIALIZABLE_ABSTRACT (   linkage,
  class_name 
)
Value:
public: \
JPH_DECLARE_RTTI_ABSTRACT(linkage, class_name) \
JPH_DECLARE_SERIALIZATION_FUNCTIONS(linkage, friend, class_name) \

◆ JPH_DECLARE_SERIALIZABLE_ABSTRACT_BASE

#define JPH_DECLARE_SERIALIZABLE_ABSTRACT_BASE (   linkage,
  class_name 
)
Value:
public: \
JPH_DECLARE_RTTI_ABSTRACT_BASE(linkage, class_name) \
JPH_DECLARE_SERIALIZATION_FUNCTIONS(linkage, friend, class_name) \

◆ JPH_DECLARE_SERIALIZABLE_NON_VIRTUAL

#define JPH_DECLARE_SERIALIZABLE_NON_VIRTUAL (   linkage,
  class_name 
)
Value:
public: \
JPH_DECLARE_RTTI_NON_VIRTUAL(linkage, class_name) \
JPH_DECLARE_SERIALIZATION_FUNCTIONS(linkage, friend, class_name) \

◆ JPH_DECLARE_SERIALIZABLE_OUTSIDE_CLASS

#define JPH_DECLARE_SERIALIZABLE_OUTSIDE_CLASS (   linkage,
  class_name 
)
Value:
JPH_DECLARE_RTTI_OUTSIDE_CLASS(linkage, class_name) \
JPH_DECLARE_SERIALIZATION_FUNCTIONS(linkage, extern, class_name) \
#define JPH_DECLARE_RTTI_OUTSIDE_CLASS(linkage, class_name)
Definition: RTTI.h:217

◆ JPH_DECLARE_SERIALIZABLE_VIRTUAL

#define JPH_DECLARE_SERIALIZABLE_VIRTUAL (   linkage,
  class_name 
)
Value:
public: \
JPH_DECLARE_RTTI_VIRTUAL(linkage, class_name) \
JPH_DECLARE_SERIALIZATION_FUNCTIONS(linkage, friend, class_name) \

◆ JPH_DECLARE_SERIALIZABLE_VIRTUAL_BASE

#define JPH_DECLARE_SERIALIZABLE_VIRTUAL_BASE (   linkage,
  class_name 
)
Value:
public: \
JPH_DECLARE_RTTI_VIRTUAL_BASE(linkage, class_name) \
JPH_DECLARE_SERIALIZATION_FUNCTIONS(linkage, friend, class_name) \

◆ JPH_DECLARE_SERIALIZATION_FUNCTIONS

#define JPH_DECLARE_SERIALIZATION_FUNCTIONS (   linkage,
  prefix,
  class_name 
)
Value:
linkage prefix bool OSReadData(IObjectStreamIn &ioStream, class_name &inInstance); \
linkage prefix bool OSReadData(IObjectStreamIn &ioStream, class_name *&inPointer); \
linkage prefix bool OSIsType(class_name *, int inArrayDepth, EOSDataType inDataType, const char *inClassName); \
linkage prefix bool OSIsType(class_name **, int inArrayDepth, EOSDataType inDataType, const char *inClassName); \
linkage prefix void OSWriteData(IObjectStreamOut &ioStream, const class_name &inInstance); \
linkage prefix void OSWriteData(IObjectStreamOut &ioStream, class_name *const &inPointer); \
linkage prefix void OSWriteDataType(IObjectStreamOut &ioStream, class_name *); \
linkage prefix void OSWriteDataType(IObjectStreamOut &ioStream, class_name **);
bool OSIsType(Array< T, A > *, int inArrayDepth, EOSDataType inDataType, const char *inClassName)
Definition: ObjectStream.h:125
bool OSReadData(IObjectStreamIn &ioStream, Array< T, A > &inArray)
Define serialization templates for dynamic arrays.
Definition: ObjectStream.h:156
void OSWriteData(IObjectStreamOut &ioStream, const Array< T, A > &inArray)
Definition: ObjectStream.h:243
void OSWriteDataType(IObjectStreamOut &ioStream, Array< T, A > *)
Definition: ObjectStream.h:236
EOSDataType
Data type.
Definition: SerializableAttribute.h:17
Interface class for reading from an object stream.
Definition: ObjectStream.h:42
Interface class for writing to an object stream.
Definition: ObjectStream.h:76

◆ JPH_IMPLEMENT_SERIALIZABLE_ABSTRACT

#define JPH_IMPLEMENT_SERIALIZABLE_ABSTRACT (   class_name)
Value:
JPH_IMPLEMENT_RTTI_ABSTRACT(class_name) \
#define JPH_IMPLEMENT_SERIALIZATION_FUNCTIONS(class_name)
Definition: SerializableObject.h:29

◆ JPH_IMPLEMENT_SERIALIZABLE_ABSTRACT_BASE

#define JPH_IMPLEMENT_SERIALIZABLE_ABSTRACT_BASE (   class_name)
Value:
JPH_IMPLEMENT_RTTI_ABSTRACT_BASE(class_name)

◆ JPH_IMPLEMENT_SERIALIZABLE_NON_VIRTUAL

#define JPH_IMPLEMENT_SERIALIZABLE_NON_VIRTUAL (   class_name)
Value:
JPH_IMPLEMENT_RTTI_NON_VIRTUAL(class_name) \

◆ JPH_IMPLEMENT_SERIALIZABLE_OUTSIDE_CLASS

#define JPH_IMPLEMENT_SERIALIZABLE_OUTSIDE_CLASS (   class_name)
Value:
JPH_IMPLEMENT_RTTI_OUTSIDE_CLASS(class_name) \

◆ JPH_IMPLEMENT_SERIALIZABLE_VIRTUAL

#define JPH_IMPLEMENT_SERIALIZABLE_VIRTUAL (   class_name)
Value:
JPH_IMPLEMENT_RTTI_VIRTUAL(class_name) \

◆ JPH_IMPLEMENT_SERIALIZABLE_VIRTUAL_BASE

#define JPH_IMPLEMENT_SERIALIZABLE_VIRTUAL_BASE (   class_name)
Value:
JPH_IMPLEMENT_RTTI_VIRTUAL_BASE(class_name) \

◆ JPH_IMPLEMENT_SERIALIZATION_FUNCTIONS

#define JPH_IMPLEMENT_SERIALIZATION_FUNCTIONS (   class_name)