Merge ktlim@zizzer.eecs.umich.edu:/bk/m5
into zamp.eecs.umich.edu:/z/ktlim2/m5 --HG-- extra : convert_revision : 8f25703b016c391217a7daae5f395bd942d589ef
This commit is contained in:
@@ -61,14 +61,29 @@ namespace Stats {
|
||||
//
|
||||
// SimObject constructor: used to maintain static simObjectList
|
||||
//
|
||||
SimObject::SimObject(const string &_name)
|
||||
: objName(_name)
|
||||
SimObject::SimObject(Params *p)
|
||||
: _params(p)
|
||||
{
|
||||
#ifdef DEBUG
|
||||
doDebugBreak = false;
|
||||
#endif
|
||||
|
||||
doRecordEvent = !Stats::event_ignore.match(_name);
|
||||
doRecordEvent = !Stats::event_ignore.match(name());
|
||||
simObjectList.push_back(this);
|
||||
}
|
||||
|
||||
//
|
||||
// SimObject constructor: used to maintain static simObjectList
|
||||
//
|
||||
SimObject::SimObject(const string &_name)
|
||||
: _params(new Params)
|
||||
{
|
||||
_params->name = _name;
|
||||
#ifdef DEBUG
|
||||
doDebugBreak = false;
|
||||
#endif
|
||||
|
||||
doRecordEvent = !Stats::event_ignore.match(name());
|
||||
simObjectList.push_back(this);
|
||||
}
|
||||
|
||||
|
||||
@@ -48,8 +48,16 @@
|
||||
*/
|
||||
class SimObject : public Serializable, protected StartupCallback
|
||||
{
|
||||
public:
|
||||
struct Params {
|
||||
std::string name;
|
||||
};
|
||||
|
||||
protected:
|
||||
std::string objName;
|
||||
Params *_params;
|
||||
|
||||
public:
|
||||
const Params *params() const { return _params; }
|
||||
|
||||
private:
|
||||
friend class Serializer;
|
||||
@@ -60,15 +68,12 @@ class SimObject : public Serializable, protected StartupCallback
|
||||
static SimObjectList simObjectList;
|
||||
|
||||
public:
|
||||
|
||||
// for Params struct
|
||||
#include "simobj/param/SimObject.hh"
|
||||
|
||||
SimObject(Params *_params);
|
||||
SimObject(const std::string &_name);
|
||||
|
||||
virtual ~SimObject() {}
|
||||
|
||||
virtual const std::string name() const { return objName; }
|
||||
virtual const std::string name() const { return params()->name; }
|
||||
|
||||
// initialization pass of all objects.
|
||||
// Gets invoked after construction, before unserialize.
|
||||
|
||||
Reference in New Issue
Block a user