Serializable Class Definition. More...
#include "cel_memory.h"#include "cel_autoptr.h"#include "cel_string.h"#include "cel_guid.h"#include <vector>#include <typeinfo>

Classes | |
| class | Celartem::Serializable |
| struct | Celartem::SerializableDataHelper< T, IS_POD > |
| struct | Celartem::SerializableDataHelper< T, true > |
| class | Celartem::SerializableData< T > |
Namespaces | |
| Celartem | |
Macros | |
| #define | REGISTER_SERIALIZABLECLASS(ID, CLASSNAME) |
| #define | REGISTER_SERIALIZABLECLASS2(ID, CLASSNAME, DISPNAME) |
Typedefs | |
| typedef AutoPtr< Serializable >(* | Celartem::DeserializeFunc )(Stream *inStream, size_t inLevel, Endian inEndian) |
Serializable Class Definition.
| #define REGISTER_SERIALIZABLECLASS | ( | ID, | |
| CLASSNAME | |||
| ) |
This macro is used to register user defined Celartem::Serializable derivative classes.
If you don't need to change the display name of registered class, use REGISTER_SERIALIZABLECLASS like follows:
| #define REGISTER_SERIALIZABLECLASS2 | ( | ID, | |
| CLASSNAME, | |||
| DISPNAME | |||
| ) |
This macro is used to register user defined Celartem::Serializable derivative classes.
If your class does not have Celartem::Serializable feature natively, you may use Celartem::SerializableData<> adapter to deal with it, and then you feel to simplify the name obtained from typeinfo structure. REGISTER_SERIALIZABLECLASS2 is just for this purpose: