Adding more statistics collection (number of transmitted/received bytes
per "pit entry" and per face)
diff --git a/model/forwarding-strategy/fw-stats.cc b/model/forwarding-strategy/fw-stats.cc
index 76638e2..9d15152 100644
--- a/model/forwarding-strategy/fw-stats.cc
+++ b/model/forwarding-strategy/fw-stats.cc
@@ -69,6 +69,32 @@
 }
 
 void
+FwStats::OnInterest (const Ptr<CcnxFace> &face,
+                     Ptr<CcnxInterestHeader> &header,
+                     const Ptr<const Packet> &packet)
+{
+  super::OnInterest (face, header, packet);
+  
+  m_stats.Rx (header->GetName (), face, packet->GetSize ());
+
+  ScheduleRefreshingIfNecessary ();
+}
+
+void
+FwStats::OnData (const Ptr<CcnxFace> &face,
+                 Ptr<CcnxContentObjectHeader> &header,
+                 Ptr<Packet> &payload,
+                 const Ptr<const Packet> &packet)
+{
+  super::OnData (face, header, payload, packet);
+  
+  m_stats.Rx (header->GetName (), face, packet->GetSize ());
+
+  ScheduleRefreshingIfNecessary ();
+}
+
+
+void
 FwStats::FailedToCreatePitEntry (const Ptr<CcnxFace> &incomingFace,
                                  Ptr<CcnxInterestHeader> header,
                                  const Ptr<const Packet> &packet)
@@ -77,7 +103,10 @@
 
   // Kind of cheating... But at least this way we will have some statistics
   m_stats.NewPitEntry (header->GetName ());
+  m_stats.Incoming (header->GetName (), incomingFace);
   m_stats.Timeout (header->GetName ());
+
+  ScheduleRefreshingIfNecessary ();
 }
 
 void
@@ -108,16 +137,32 @@
 void
 FwStats::DidSendOutInterest (const Ptr<CcnxFace> &outgoingFace,
                              Ptr<CcnxInterestHeader> header,
+                             const Ptr<const Packet> &packet,
                              Ptr<CcnxPitEntry> pitEntry)
 {
-  super::DidSendOutInterest (outgoingFace, header, pitEntry);
+  super::DidSendOutInterest (outgoingFace, header, packet, pitEntry);
 
   m_stats.Outgoing (header->GetName (), outgoingFace);
+  m_stats.Tx (header->GetName (), outgoingFace, packet->GetSize ());
   
   ScheduleRefreshingIfNecessary ();
 }
 
 void
+FwStats::DidSendOutData (const Ptr<CcnxFace> &face,
+                         Ptr<const CcnxContentObjectHeader> header,
+                         Ptr<const Packet> payload,
+                         const Ptr<const Packet> &packet)
+{
+  super::DidSendOutData (face, header, payload, packet);
+
+  m_stats.Tx (header->GetName (), face, packet->GetSize ());
+  
+  ScheduleRefreshingIfNecessary ();
+}
+
+
+void
 FwStats::WillErasePendingInterest (Ptr<CcnxPitEntry> pitEntry)
 {
   super::WillErasePendingInterest (pitEntry);