View | Details | Raw Unified | Return to bug 1034
Collapse All | Expand All

(-)a/src/devices/wifi/wifi-mac-queue.cc (+5 lines)
 Lines 22-27    Link Here 
22
#include "ns3/simulator.h"
22
#include "ns3/simulator.h"
23
#include "ns3/packet.h"
23
#include "ns3/packet.h"
24
#include "ns3/uinteger.h"
24
#include "ns3/uinteger.h"
25
#include "ns3/trace-source-accessor.h"
25
26
26
#include "wifi-mac-queue.h"
27
#include "wifi-mac-queue.h"
27
#include "qos-blocked-destinations.h"
28
#include "qos-blocked-destinations.h"
 Lines 52-57    Link Here 
52
                   TimeValue (Seconds (10.0)),
53
                   TimeValue (Seconds (10.0)),
53
                   MakeTimeAccessor (&WifiMacQueue::m_maxDelay),
54
                   MakeTimeAccessor (&WifiMacQueue::m_maxDelay),
54
                   MakeTimeChecker ())
55
                   MakeTimeChecker ())
56
    .AddTraceSource ("PacketDrop", "Triggered whenever a packet was drop from queue due to MaxPacketNumber/MaxDelay constraints.",
57
                   MakeTraceSourceAccessor (&WifiMacQueue::m_packetDropTrace))
55
    ;
58
    ;
56
  return tid;
59
  return tid;
57
}
60
}
 Lines 95-100    Link Here 
95
  Cleanup ();
98
  Cleanup ();
96
  if (m_size == m_maxSize) 
99
  if (m_size == m_maxSize) 
97
    {
100
    {
101
      m_packetDropTrace (packet);
98
      return;
102
      return;
99
    }
103
    }
100
  Time now = Simulator::Now ();
104
  Time now = Simulator::Now ();
 Lines 120-125    Link Here 
120
        }
124
        }
121
      else
125
      else
122
        {
126
        {
127
          m_packetDropTrace (i->packet);
123
          i = m_queue.erase (i);
128
          i = m_queue.erase (i);
124
          n++;
129
          n++;
125
        }
130
        }
(-)a/src/devices/wifi/wifi-mac-queue.h (+9 lines)
 Lines 27-32    Link Here 
27
#include "ns3/packet.h"
27
#include "ns3/packet.h"
28
#include "ns3/nstime.h"
28
#include "ns3/nstime.h"
29
#include "ns3/object.h"
29
#include "ns3/object.h"
30
#include "ns3/traced-callback.h"
30
#include "wifi-mac-header.h"
31
#include "wifi-mac-header.h"
31
32
32
namespace ns3 {
33
namespace ns3 {
 Lines 125-130    Link Here 
125
  typedef std::list<struct Item> PacketQueue;
126
  typedef std::list<struct Item> PacketQueue;
126
  typedef std::list<struct Item>::reverse_iterator PacketQueueRI;
127
  typedef std::list<struct Item>::reverse_iterator PacketQueueRI;
127
  typedef std::list<struct Item>::iterator PacketQueueI;
128
  typedef std::list<struct Item>::iterator PacketQueueI;
129
130
  /**
131
   * The trace source fired when a packet is dropped at the queue due to queue
132
   * full or when the packet has been in the queue too long.
133
   *
134
   * \see class CallBackTraceSource
135
   */
136
  TracedCallback<Ptr<const Packet> > m_packetDropTrace;
128
  
137
  
129
  void Cleanup (void);
138
  void Cleanup (void);
130
  Mac48Address GetAddressForPacket (enum WifiMacHeader::AddressType type, PacketQueueI);
139
  Mac48Address GetAddressForPacket (enum WifiMacHeader::AddressType type, PacketQueueI);

Return to bug 1034