* THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ *
+ * Authors: Kevin Lim
*/
-#include "base/timebuf.hh"
+#include <string>
+
#include "cpu/activity.hh"
+#include "cpu/timebuf.hh"
+#include "debug/Activity.hh"
+
+using namespace std;
-ActivityRecorder::ActivityRecorder(int num_stages, int longest_latency,
- int activity)
- : activityBuffer(longest_latency, 0), longestLatency(longest_latency),
- activityCount(activity), numStages(num_stages)
+ActivityRecorder::ActivityRecorder(const string &name, int num_stages,
+ int longest_latency, int activity)
+ : _name(name), activityBuffer(longest_latency, 0),
+ longestLatency(longest_latency), activityCount(activity),
+ numStages(num_stages)
{
stageActive = new bool[numStages];
- memset(stageActive, 0, numStages);
+ std::memset(stageActive, 0, numStages);
+}
+
+ActivityRecorder::~ActivityRecorder()
+{
+ delete[] stageActive;
}
void
ActivityRecorder::reset()
{
activityCount = 0;
- memset(stageActive, 0, numStages);
+ std::memset(stageActive, 0, numStages);
for (int i = 0; i < longestLatency + 1; ++i)
activityBuffer.advance();
}