inorder: squash on memory stall
[gem5.git] / src / dev / etherdump.hh
index 8bba073fe16c4e032f966cbc5d10d37a14f18d0e..cf4213b2766edfedc068f94798d8769116018fae 100644 (file)
@@ -24,6 +24,8 @@
  * 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: Nathan Binkert
  */
 
 /* @file
@@ -36,6 +38,7 @@
 #include <fstream>
 #include "dev/etherpkt.hh"
 #include "sim/sim_object.hh"
+#include "params/EtherDump.hh"
 
 /*
  * Simple object for creating a simple pcap style packet trace
 class EtherDump : public SimObject
 {
   private:
-    std::ofstream stream;
-    const int maxlen;
+    std::ostream *stream;
+    const unsigned maxlen;
     void dumpPacket(EthPacketPtr &packet);
     void init();
 
-    Tick curtime;
-
   public:
-    EtherDump(const std::string &name, const std::string &file, int max);
+    typedef EtherDumpParams Params;
+    EtherDump(const Params *p);
 
     inline void dump(EthPacketPtr &pkt) { dumpPacket(pkt); }
 };