Implementing Poisson Process for consumer requests (exponential distribution for inter-arrival times)
diff --git a/apps/ccnx-consumer.h b/apps/ccnx-consumer.h
index 7cfb739..ed1558c 100644
--- a/apps/ccnx-consumer.h
+++ b/apps/ccnx-consumer.h
@@ -25,6 +25,7 @@
 #include "ns3/random-variable.h"
 #include "ns3/ccnx-name-components.h"
 #include "ns3/nstime.h"
+#include "ns3/data-rate.h"
 
 #include <set>
 
@@ -67,6 +68,24 @@
 private:
   //helpers
   void
+  ScheduleNextPacket ();
+
+  void
+  UpdateMean ();
+
+  void
+  SetPayloadSize (uint32_t payload);
+
+  uint32_t
+  GetPayloadSize () const;
+
+  void
+  SetDesiredRate (DataRate rate);
+
+  DataRate
+  GetDesiredRate () const;
+  
+  void
   SendPacket ();
 
   void
@@ -79,7 +98,12 @@
   GetRetxTimer () const;
   
 protected:
-  UniformVariable m_rand;
+  UniformVariable m_rand; // nonce generator
+
+  ExponentialVariable m_randExp; // packet inter-arrival time generation (Poisson process)
+  DataRate            m_desiredRate;    // Desired data packet rate
+  uint32_t            m_payloadSize; // expected payload size
+  
   uint32_t        m_seq;
   EventId         m_sendEvent; // Eventid of pending "send packet" event
   Time            m_retxTimer;