Merge with head.
[gem5.git] / src / base / timebuf.hh
index 160a97034d9fce31d2fb87fc8e884282e019e7b9..348f7a673d410dcfbd4c69322f570809ad496b13 100644 (file)
@@ -32,6 +32,8 @@
 #ifndef __BASE_TIMEBUF_HH__
 #define __BASE_TIMEBUF_HH__
 
+#include <cassert>
+#include <cstring>
 #include <vector>
 
 template <class T>
@@ -142,7 +144,7 @@ class TimeBuffer
         char *ptr = data;
         for (int i = 0; i < size; i++) {
             index[i] = ptr;
-            memset(ptr, 0, sizeof(T));
+            std::memset(ptr, 0, sizeof(T));
             new (ptr) T;
             ptr += sizeof(T);
         }
@@ -170,7 +172,7 @@ class TimeBuffer
         if (ptr >= size)
             ptr -= size;
         (reinterpret_cast<T *>(index[ptr]))->~T();
-        memset(index[ptr], 0, sizeof(T));
+        std::memset(index[ptr], 0, sizeof(T));
         new (index[ptr]) T;
     }
 
@@ -215,6 +217,11 @@ class TimeBuffer
     {
         return wire(this, 0);
     }
+
+    int getSize()
+    {
+        return size;
+    }
 };
 
 #endif // __BASE_TIMEBUF_HH__