changeset fdfbd4c6e449 in /z/repo/m5
details: http://repo.m5sim.org/m5?cmd=changeset;node=fdfbd4c6e449
description:
        stats: Rename the info classes to hopefully make things a bit clearer
        FooInfoBase became FooInfo
        FooInfo became FooInfoProxy

diffstat:

7 files changed, 119 insertions(+), 118 deletions(-)
src/base/statistics.cc  |    6 +-
src/base/statistics.hh  |   95 +++++++++++++++++++++++------------------------
src/base/stats/mysql.cc |   36 ++++++++---------
src/base/stats/mysql.hh |   40 +++++++++----------
src/base/stats/text.cc  |   22 +++++-----
src/base/stats/text.hh  |   12 ++---
src/base/stats/visit.hh |   26 ++++++------

diffs (truncated from 749 to 300 lines):

diff -r eb26da1fc16d -r fdfbd4c6e449 src/base/statistics.cc
--- a/src/base/statistics.cc    Wed Apr 22 10:25:17 2009 -0700
+++ b/src/base/statistics.cc    Wed Apr 22 13:38:00 2009 -0700
@@ -206,7 +206,7 @@
 }
 
 void
-VectorInfoBase::enable()
+VectorInfo::enable()
 {
     size_type s = size();
     if (subnames.size() < s)
@@ -216,7 +216,7 @@
 }
 
 void
-VectorDistInfoBase::enable()
+VectorDistInfo::enable()
 {
     size_type s = size();
     if (subnames.size() < s)
@@ -226,7 +226,7 @@
 }
 
 void
-Vector2dInfoBase::enable()
+Vector2dInfo::enable()
 {
     if (subnames.size() < x)
         subnames.resize(x);
diff -r eb26da1fc16d -r fdfbd4c6e449 src/base/statistics.hh
--- a/src/base/statistics.hh    Wed Apr 22 10:25:17 2009 -0700
+++ b/src/base/statistics.hh    Wed Apr 22 13:38:00 2009 -0700
@@ -161,15 +161,16 @@
      */
     static bool less(Info *stat1, Info *stat2);
 };
+struct StorageParams;
 
 template <class Stat, class Base>
-class InfoWrap : public Base
+class InfoProxy : public Base
 {
   protected:
     Stat &s;
 
   public:
-    InfoWrap(Stat &stat) : s(stat) {}
+    InfoProxy(Stat &stat) : s(stat) {}
 
     bool check() const { return s.check(); }
     void prepare() { s.prepare(); }
@@ -182,7 +183,7 @@
     bool zero() const { return s.zero(); }
 };
 
-class ScalarInfoBase : public Info
+class ScalarInfo : public Info
 {
   public:
     virtual Counter value() const = 0;
@@ -191,17 +192,17 @@
 };
 
 template <class Stat>
-class ScalarInfo : public InfoWrap<Stat, ScalarInfoBase>
+class ScalarInfoProxy : public InfoProxy<Stat, ScalarInfo>
 {
   public:
-    ScalarInfo(Stat &stat) : InfoWrap<Stat, ScalarInfoBase>(stat) {}
+    ScalarInfoProxy(Stat &stat) : InfoProxy<Stat, ScalarInfo>(stat) {}
 
     Counter value() const { return this->s.value(); }
     Result result() const { return this->s.result(); }
     Result total() const { return this->s.total(); }
 };
 
-class VectorInfoBase : public Info
+class VectorInfo : public Info
 {
   public:
     /** Names and descriptions of subfields. */
@@ -219,14 +220,14 @@
 };
 
 template <class Stat>
-class VectorInfo : public InfoWrap<Stat, VectorInfoBase>
+class VectorInfoProxy : public InfoProxy<Stat, VectorInfo>
 {
   protected:
     mutable VCounter cvec;
     mutable VResult rvec;
 
   public:
-    VectorInfo(Stat &stat) : InfoWrap<Stat, VectorInfoBase>(stat) {}
+    VectorInfoProxy(Stat &stat) : InfoProxy<Stat, VectorInfo>(stat) {}
 
     size_type size() const { return this->s.size(); }
 
@@ -259,7 +260,7 @@
     Counter samples;
 };
 
-class DistInfoBase : public Info
+class DistInfo : public Info
 {
   public:
     /** Local storage for the entry values, used for printing. */
@@ -267,13 +268,13 @@
 };
 
 template <class Stat>
-class DistInfo : public InfoWrap<Stat, DistInfoBase>
+class DistInfoProxy : public InfoProxy<Stat, DistInfo>
 {
   public:
-    DistInfo(Stat &stat) : InfoWrap<Stat, DistInfoBase>(stat) {}
+    DistInfoProxy(Stat &stat) : InfoProxy<Stat, DistInfo>(stat) {}
 };
 
-class VectorDistInfoBase : public Info
+class VectorDistInfo : public Info
 {
   public:
     std::vector<DistData> data;
@@ -292,15 +293,15 @@
 };
 
 template <class Stat>
-class VectorDistInfo : public InfoWrap<Stat, VectorDistInfoBase>
+class VectorDistInfoProxy : public InfoProxy<Stat, VectorDistInfo>
 {
   public:
-    VectorDistInfo(Stat &stat) : InfoWrap<Stat, VectorDistInfoBase>(stat) {}
+    VectorDistInfoProxy(Stat &stat) : InfoProxy<Stat, VectorDistInfo>(stat) {}
 
     size_type size() const { return this->s.size(); }
 };
 
-class Vector2dInfoBase : public Info
+class Vector2dInfo : public Info
 {
   public:
     /** Names and descriptions of subfields. */
@@ -318,10 +319,10 @@
 };
 
 template <class Stat>
-class Vector2dInfo : public InfoWrap<Stat, Vector2dInfoBase>
+class Vector2dInfoProxy : public InfoProxy<Stat, Vector2dInfo>
 {
   public:
-    Vector2dInfo(Stat &stat) : InfoWrap<Stat, Vector2dInfoBase>(stat) {}
+    Vector2dInfoProxy(Stat &stat) : InfoProxy<Stat, Vector2dInfo>(stat) {}
 };
 
 class InfoAccess
@@ -359,11 +360,11 @@
     bool check() const { return true; }
 };
 
-template <class Derived, template <class> class InfoType>
+template <class Derived, template <class> class InfoProxyType>
 class DataWrap : public InfoAccess
 {
   public:
-    typedef InfoType<Derived> Info;
+    typedef InfoProxyType<Derived> Info;
 
   protected:
     Derived &self() { return *static_cast<Derived *>(this); }
@@ -466,11 +467,11 @@
     }
 };
 
-template <class Derived, template <class> class InfoType>
-class DataWrapVec : public DataWrap<Derived, InfoType>
+template <class Derived, template <class> class InfoProxyType>
+class DataWrapVec : public DataWrap<Derived, InfoProxyType>
 {
   public:
-    typedef InfoType<Derived> Info;
+    typedef InfoProxyType<Derived> Info;
 
     // The following functions are specific to vectors.  If you use them
     // in a non vector context, you will get a nice compiler error!
@@ -542,11 +543,11 @@
     }
 };
 
-template <class Derived, template <class> class InfoType>
-class DataWrapVec2d : public DataWrapVec<Derived, InfoType>
+template <class Derived, template <class> class InfoProxyType>
+class DataWrapVec2d : public DataWrapVec<Derived, InfoProxyType>
 {
   public:
-    typedef InfoType<Derived> Info;
+    typedef InfoProxyType<Derived> Info;
 
     /**
      * @warning This makes the assumption that if you're gonna subnames a 2d
@@ -746,7 +747,7 @@
  * Storage template.
  */
 template <class Derived, class Stor>
-class ScalarBase : public DataWrap<Derived, ScalarInfo>
+class ScalarBase : public DataWrap<Derived, ScalarInfoProxy>
 {
   public:
     typedef Stor Storage;
@@ -860,7 +861,7 @@
     void prepare() { data()->prepare(this->info()); }
 };
 
-class ProxyInfo : public ScalarInfoBase
+class ProxyInfo : public ScalarInfo
 {
   public:
     std::string str() const { return to_string(value()); }
@@ -900,7 +901,7 @@
 };
 
 template <class Derived>
-class ValueBase : public DataWrap<Derived, ScalarInfo>
+class ValueBase : public DataWrap<Derived, ScalarInfoProxy>
 {
   private:
     ProxyInfo *proxy;
@@ -1076,7 +1077,7 @@
  * Storage class. @sa ScalarBase
  */
 template <class Derived, class Stor>
-class VectorBase : public DataWrapVec<Derived, VectorInfo>
+class VectorBase : public DataWrapVec<Derived, VectorInfoProxy>
 {
   public:
     typedef Stor Storage;
@@ -1085,7 +1086,7 @@
     /** Proxy type */
     typedef ScalarProxy<Derived> Proxy;
     friend class ScalarProxy<Derived>;
-    friend class DataWrapVec<Derived, VectorInfo>;
+    friend class DataWrapVec<Derived, VectorInfoProxy>;
 
   protected:
     /** The storage of this stat. */
@@ -1295,17 +1296,17 @@
 };
 
 template <class Derived, class Stor>
-class Vector2dBase : public DataWrapVec2d<Derived, Vector2dInfo>
+class Vector2dBase : public DataWrapVec2d<Derived, Vector2dInfoProxy>
 {
   public:
-    typedef Vector2dInfo<Derived> Info;
+    typedef Vector2dInfoProxy<Derived> Info;
     typedef Stor Storage;
     typedef typename Stor::Params Params;
     typedef VectorProxy<Derived> Proxy;
     friend class ScalarProxy<Derived>;
     friend class VectorProxy<Derived>;
-    friend class DataWrapVec<Derived, Vector2dInfo>;
-    friend class DataWrapVec2d<Derived, Vector2dInfo>;
+    friend class DataWrapVec<Derived, Vector2dInfoProxy>;
+    friend class DataWrapVec2d<Derived, Vector2dInfoProxy>;
 
   protected:
     size_type x;
@@ -1733,10 +1734,10 @@
  * determined by the Storage template. @sa ScalarBase
  */
 template <class Derived, class Stor>
-class DistBase : public DataWrap<Derived, DistInfo>
+class DistBase : public DataWrap<Derived, DistInfoProxy>
 {
   public:
-    typedef DistInfo<Derived> Info;
+    typedef DistInfoProxy<Derived> Info;
     typedef Stor Storage;
     typedef typename Stor::Params Params;
 
@@ -1816,15 +1817,15 @@
 class DistProxy;
 
 template <class Derived, class Stor>
-class VectorDistBase : public DataWrapVec<Derived, VectorDistInfo>
+class VectorDistBase : public DataWrapVec<Derived, VectorDistInfoProxy>
 {
   public:
-    typedef VectorDistInfo<Derived> Info;
+    typedef VectorDistInfoProxy<Derived> Info;
     typedef Stor Storage;
     typedef typename Stor::Params Params;
     typedef DistProxy<Derived> Proxy;
     friend class DistProxy<Derived>;
-    friend class DataWrapVec<Derived, VectorDistInfo>;
+    friend class DataWrapVec<Derived, VectorDistInfoProxy>;
 
   protected:
     Storage *storage;
_______________________________________________
m5-dev mailing list
[email protected]
http://m5sim.org/mailman/listinfo/m5-dev

Reply via email to