#include <stdlib.h>
#include <stdio.h>
#include <string>
#include <iostream>
#include <map>
Go to the source code of this file.
Classes | |
struct | TypeRegistrant< T > |
Handles class registration with the serialization framework. More... | |
Defines | |
#define | COAL_SERIALIZE_BASE(BaseClass, DaoProvider) BaseClass::serialize(DaoProvider) |
#define | COAL_DECLARE_CLASSNAME(N) |
Binds a name string to the class, for use by the serialization framework. | |
#define | COAL_REGISTER_TYPE(T) |
Registers a class with the serialization framework Should be invoked by all classes that will be serialized via the DAOInterface. | |
Typedefs | |
typedef void *(*) | SerializedFactoryFunc () |
Variables | |
std::map< std::string, SerializedFactoryFunc > | ofMap |
#define COAL_DECLARE_CLASSNAME | ( | N | ) |
Value:
virtual char* COAL_getClassname() { return N; }; \ static char* COAL_static_getClassname() { return N; }; \ virtual char* getClassname() { return COAL_getClassname(); };
Definition at line 16 of file CkptTypeRegistry.h.
#define COAL_REGISTER_TYPE | ( | T | ) |
Value:
TypeRegistrant<T> const& COAL_registrant_ ## T = \ TypeRegistrant<T>::instance(T::COAL_static_getClassname());
Requires the use of the COAL_DECLARE_CLASSNAME() within the target class.
Definition at line 28 of file CkptTypeRegistry.h.
#define COAL_SERIALIZE_BASE | ( | BaseClass, | |||
DaoProvider | ) | BaseClass::serialize(DaoProvider) |
Definition at line 10 of file CkptTypeRegistry.h.
typedef void*(*) SerializedFactoryFunc() |
Definition at line 32 of file CkptTypeRegistry.h.
std::map<std::string, SerializedFactoryFunc> ofMap |
Definition at line 3 of file CkptTypeRegistry.cc.
Referenced by RawInputDAO::processExternalObj(), and TypeRegistrant< T >::TypeRegistrant().