sim, arch, base: Refactor the base remote GDB class.
[gem5.git] / src / sim / root.hh
index 6a7b5dc938792f0c038b7fb6ecd0cf69adbd26be..c5f42b807616acbe5fb93a2cf6dda326cc874993 100644 (file)
@@ -60,8 +60,7 @@ class Root : public SimObject
     Time lastTime;
 
     void timeSync();
-    EventWrapper<Root, &Root::timeSync> syncEvent;
-    friend class EventWrapper<Root, &Root::timeSync>;
+    EventFunctionWrapper syncEvent;
 
   public:
     /**
@@ -104,17 +103,11 @@ class Root : public SimObject
 
     Root(Params *p);
 
-    /** Schedule the timesync event at loadState() so that curTick is correct
+    /** Schedule the timesync event at startup().
      */
-    void loadState(Checkpoint *cp);
-
-    /** Schedule the timesync event at initState() when not unserializing
-     */
-    void initState();
-
-    virtual void serialize(std::ostream &os);
-    virtual void unserialize(Checkpoint *cp, const std::string &section);
+    void startup() override;
 
+    void serialize(CheckpointOut &cp) const override;
 };
 
 #endif // __SIM_ROOT_HH__