#ifndef __SIM_TICKED_OBJECT_HH__
#define __SIM_TICKED_OBJECT_HH__
-#include "params/TickedObject.hh"
#include "sim/clocked_object.hh"
+class TickedObjectParams;
+
/** Ticked attaches gem5's event queue/scheduler to evaluate
* calls and provides a start/stop interface to ticking.
*
* Ticked is not a ClockedObject but can be attached to one by
* inheritance and by calling regStats, serialize/unserialize */
-class Ticked
+class Ticked : public Serializable
{
protected:
/** An event to call process periodically */
}
/** Checkpoint lastStopped */
- void serialize(std::ostream &os);
- void unserialize(Checkpoint *cp, const std::string §ion);
+ void serialize(CheckpointOut &cp) const override;
+ void unserialize(CheckpointIn &cp) override;
/** Action to call on the clock tick */
virtual void evaluate() = 0;
using ClockedObject::unserialize;
/** Pass on regStats, serialize etc. onto Ticked */
- void regStats();
- void serialize(std::ostream &os);
- void unserialize(Checkpoint *cp, const std::string §ion);
+ void regStats() override;
+ void serialize(CheckpointOut &cp) const override;
+ void unserialize(CheckpointIn &cp) override;
};
#endif /* __SIM_TICKED_OBJECT_HH__ */