--- a/src/contrib/delay-jitter-estimation.h Tue Dec 11 17:48:09 2007 +0100
+++ b/src/contrib/delay-jitter-estimation.h Tue Dec 11 17:53:54 2007 +0100
@@ -6,14 +6,45 @@
namespace ns3 {
+/**
+ * \brief quick and diry delay and jitter estimation
+ *
+ */
class DelayJitterEstimation
{
public:
DelayJitterEstimation ();
+
+ /**
+ * \param packet the packet to send over a wire
+ *
+ * This method should be invoked once on each packet to
+ * record within the packet the tx time which is used upon
+ * packet reception to calculate the delay and jitter. The
+ * tx time is stored in the packet as an ns3::Tag which means
+ * that it does not use any network ressources and is not
+ * taken into account in transmission delay calculations.
+ */
static void PrepareTx (Ptr<const Packet> packet);
+ /**
+ * \param packet the packet received
+ *
+ * Invoke this method to update the delay and jitter calculations
+ * After a call to this method, \ref GetLastDelay and \ref GetLastJitter
+ * will return an updated delay and jitter.
+ */
void RecordRx (Ptr<const Packet> packet);
+ /**
+ * \returns the updated delay.
+ */
Time GetLastDelay (void) const;
+ /**
+ * The jitter is calculated using the RFC 1889 (RTP) jitter
+ * definition.
+ *
+ * \returns the updated jitter.
+ */
Time GetLastJitter (void) const;
private:
--- a/src/contrib/wscript Tue Dec 11 17:48:09 2007 +0100
+++ b/src/contrib/wscript Tue Dec 11 17:53:54 2007 +0100
@@ -5,10 +5,12 @@
module.source = [
'event-garbage-collector.cc',
'gnuplot.cc',
+ 'delay-jitter-estimation.cc',
]
headers = bld.create_obj('ns3header')
headers.source = [
'event-garbage-collector.h',
'gnuplot.h',
+ 'delay-jitter-estimation.h',
]