Changed the hello_sparc executable back to the cross compiled one
[gem5.git] / dev / etherpkt.hh
index 7a7809f0a1f12f5ad8a34f73d0df335938d05c94..cb9022d7256d108d424819fa3764576d5de6e90f 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2002-2004 The Regents of The University of Michigan
+ * Copyright (c) 2002-2005 The Regents of The University of Michigan
  * All rights reserved.
  *
  * Redistribution and use in source and binary forms, with or without
@@ -47,14 +47,30 @@ class Checkpoint;
 class PacketData : public RefCounted
 {
   public:
+    /*
+     * Pointer to packet data will be deleted
+     */
     uint8_t *data;
+
+    /*
+     * Length of the current packet
+     */
     int length;
 
+    /*
+     * Extra space taken up by the packet in whatever data structure
+     * it is in.
+     *
+     * NOTE: This can only be use by *one* data structure at a time!
+     */
+    int slack;
+
   public:
-    PacketData() : data(NULL), length(0) { }
-    explicit PacketData(size_t size) : data(new uint8_t[size]), length(0) { }
-    PacketData(std::auto_ptr<uint8_t> d, int l)
-        : data(d.release()), length(l) { }
+    PacketData() : data(NULL), length(0), slack(0) { }
+    explicit PacketData(size_t size)
+        : data(new uint8_t[size]), length(0), slack(0) { }
+    PacketData(std::auto_ptr<uint8_t> d, int l, int s = 0)
+        : data(d.release()), length(l), slack(s) { }
     ~PacketData() { if (data) delete [] data; }
 
   public: