The object resolver isn't serialization specific and shouldn't live in
serialize.hh. Move it to sim_object.hh since it queries to the
SimObject hierarchy.
class Serializable;
class CheckpointIn;
class SimObject;
+class SimObjectResolver;
class EventQueue;
typedef std::ostream CheckpointOut;
SerializableClass the##OBJ_CLASS##Class(CLASS_NAME, \
OBJ_CLASS::createForUnserialize);
-// Base class to wrap object resolving functionality. This can be
-// provided to Checkpoint to allow it to map object names onto
-// object C++ objects in which to unserialize
-class SimObjectResolver
-{
- public:
- virtual ~SimObjectResolver() { }
-
- // Find a SimObject given a full path name
- virtual SimObject *resolveSimObject(const std::string &name) = 0;
-};
class CheckpointIn
{
static SimObject *find(const char *name);
};
+/**
+ * Base class to wrap object resolving functionality.
+ *
+ * This can be provided to the serialization framework to allow it to
+ * map object names onto C++ objects.
+ */
+class SimObjectResolver
+{
+ public:
+ virtual ~SimObjectResolver() { }
+
+ // Find a SimObject given a full path name
+ virtual SimObject *resolveSimObject(const std::string &name) = 0;
+};
+
#ifdef DEBUG
void debugObjectBreak(const char *objs);
#endif