cpu: Useful getters for ActivityRecorder
authorAndrew Bardsley <Andrew.Bardsley@arm.com>
Fri, 9 May 2014 22:58:48 +0000 (18:58 -0400)
committerAndrew Bardsley <Andrew.Bardsley@arm.com>
Fri, 9 May 2014 22:58:48 +0000 (18:58 -0400)
Add some useful getters to ActivityRecorder

src/cpu/activity.hh

index 7913bf5e7f4fa7b6e1454e3b8317ee7a2a8a7f71..f8d57f1afc854f44ee9a80ff59556b2837383907 100644 (file)
@@ -71,8 +71,14 @@ class ActivityRecorder
     /** Deactivates a stage. */
     void deactivateStage(const int idx);
 
+    /** Returns the activity status of a stage. */
+    bool getStageActive(const int idx) const { return stageActive[idx]; }
+
+    /** Returns the number of stages. */
+    int getNumStages() const { return numStages; }
+
     /** Returns how many things are active within the recorder. */
-    int getActivityCount() { return activityCount; }
+    int getActivityCount() const { return activityCount; }
 
     /** Sets the count to a starting value.  Can be used to disable
      * the idling option.
@@ -94,10 +100,11 @@ class ActivityRecorder
      */
     void validate();
 
+    const std::string &name() const { return _name; }
+
   private:
     // provide name() for DPRINTF.
     std::string _name;
-    const std::string &name() { return _name; }
 
     /** Time buffer that tracks if any cycles has active communication
      *  in them.  It should be as long as the longest communication