This commit is contained in:
Mathieu Lacage
2007-11-22 10:30:29 +01:00
72 changed files with 663 additions and 597 deletions

View File

@@ -91,17 +91,17 @@ public:
* Place a packet into the rear of the Queue
* \return True if the operation was successful; false otherwise
*/
bool Enqueue (const Packet& p);
bool Enqueue (Ptr<Packet> p);
/**
* Remove a packet from the front of the Queue
* \return True if the operation was successful; false otherwise
* \return 0 if the operation was not successful; the packet otherwise.
*/
bool Dequeue (Packet &p);
Ptr<Packet> Dequeue (void);
/**
* Get a copy of the item at the front of the queue without removing it
* \return True if the operation was successful; false otherwise
* \return 0 if the operation was not successful; the packet otherwise.
*/
bool Peek (Packet &p) const;
Ptr<Packet> Peek (void) const;
/**
* XXX Doesn't do anything right now, think its supposed to flush the queue
@@ -173,19 +173,19 @@ public:
private:
virtual bool DoEnqueue (const Packet& p) = 0;
virtual bool DoDequeue (Packet &p) = 0;
virtual bool DoPeek (Packet &p) const = 0;
virtual bool DoEnqueue (Ptr<Packet> p) = 0;
virtual Ptr<Packet> DoDequeue (void) = 0;
virtual Ptr<Packet> DoPeek (void) const = 0;
protected:
Ptr<TraceResolver> GetTraceResolver (void) const;
// called by subclasses to notify parent of packet drops.
void Drop (const Packet& p);
void Drop (Ptr<Packet> packet);
private:
CallbackTraceSource<const Packet &> m_traceEnqueue;
CallbackTraceSource<const Packet &> m_traceDequeue;
CallbackTraceSource<const Packet &> m_traceDrop;
CallbackTraceSource<Ptr<const Packet> > m_traceEnqueue;
CallbackTraceSource<Ptr<const Packet> > m_traceDequeue;
CallbackTraceSource<Ptr<const Packet> > m_traceDrop;
uint32_t m_nBytes;
uint32_t m_nTotalReceivedBytes;