summaryrefslogtreecommitdiff
path: root/sim/serialize.hh
diff options
context:
space:
mode:
authorAndrew Schultz <alschult@umich.edu>2003-10-31 17:32:04 -0500
committerAndrew Schultz <alschult@umich.edu>2003-10-31 17:32:04 -0500
commit2ab51fbcdb1d26d635875174eb23f60d6f9dc6bb (patch)
treea24dc79dca85e80ac7580a24a71299a939f07748 /sim/serialize.hh
parentb5fc3af142cfe71e6cb331dbed3b177193553a58 (diff)
downloadgem5-2ab51fbcdb1d26d635875174eb23f60d6f9dc6bb.tar.xz
Changed the naming of Serializeable derived objects. Serializeable no longer has
objName as a member, instead it has the pure virtual function name(). SimObject now has a objName member, and all classes derived directly from Serializeable have to implement a name() function (which now makes them unique by pointer value) cpu/simple_cpu/simple_cpu.cc: Change initialization of Event to get rid of Serializeable naming dev/etherlink.cc: dev/etherlink.hh: Seralizeable derived naming changes sim/eventq.cc: Serializeable derived naming changes, also changed serialization process so it doesn't need to use nameChildren sim/eventq.hh: Serializeable derived naming changes, remove constructor for specifying event name sim/serialize.cc: Serializeable derived naming changes, remove setName function and the child naming pass for serialization sim/serialize.hh: Serializeable derived naming changes, removed nameChildren, setName sim/sim_object.cc: sim/sim_object.hh: Serializeable derived naming changes --HG-- extra : convert_revision : 67bcc275b6c210f7049f98a1ad0d22e8f5596a63
Diffstat (limited to 'sim/serialize.hh')
-rw-r--r--sim/serialize.hh12
1 files changed, 3 insertions, 9 deletions
diff --git a/sim/serialize.hh b/sim/serialize.hh
index b615e6527..a8fff7b6f 100644
--- a/sim/serialize.hh
+++ b/sim/serialize.hh
@@ -107,9 +107,6 @@ class Serializeable
friend class Serializer;
protected:
- // object name: should be unique
- std::string objName;
-
bool serialized;
static Serializer *serializer;
@@ -118,15 +115,12 @@ class Serializeable
void nameOut(std::ostream& os, const std::string &_name);
public:
- Serializeable(const std::string &n);
+ Serializeable();
virtual ~Serializeable();
- void setName(const std::string &name);
-
- // return name
- const std::string &name() const { return objName; }
+ // manditory virtual function, so objects must provide names
+ virtual std::string name() const = 0;
- virtual void nameChildren() {}
virtual void serialize(std::ostream& os) {}
virtual void unserialize(Checkpoint *cp, const std::string &section) {}