A Discrete-Event Network Simulator
API
RedQueueDiscTestItem Class Reference

Red Queue Disc Test Item. More...

+ Inheritance diagram for RedQueueDiscTestItem:
+ Collaboration diagram for RedQueueDiscTestItem:

Public Member Functions

 RedQueueDiscTestItem ()=delete
 
 RedQueueDiscTestItem (const RedQueueDiscTestItem &)=delete
 
 RedQueueDiscTestItem (Ptr< Packet > p, const Address &addr, bool ecnCapable)
 Constructor. More...
 
virtual ~RedQueueDiscTestItem ()
 
virtual void AddHeader (void)
 Add the header to the packet. More...
 
virtual bool Mark (void)
 Marks the packet as a substitute for dropping it, such as for Explicit Congestion Notification. More...
 
RedQueueDiscTestItemoperator= (const RedQueueDiscTestItem &)=delete
 
- Public Member Functions inherited from ns3::QueueDiscItem
 QueueDiscItem ()=delete
 
 QueueDiscItem (const QueueDiscItem &)=delete
 
 QueueDiscItem (Ptr< Packet > p, const Address &addr, uint16_t protocol)
 Create a queue disc item. More...
 
virtual ~QueueDiscItem ()
 
virtual void AddHeader (void)=0
 Add the header to the packet. More...
 
Address GetAddress (void) const
 Get the MAC address included in this item. More...
 
uint16_t GetProtocol (void) const
 Get the L3 protocol included in this item. More...
 
Time GetTimeStamp (void) const
 Get the timestamp included in this item. More...
 
uint8_t GetTxQueueIndex (void) const
 Get the transmission queue index included in this item. More...
 
virtual uint32_t Hash (uint32_t perturbation=0) const
 Computes the hash of various fields of the packet header. More...
 
virtual bool Mark (void)=0
 Marks the packet as a substitute for dropping it, such as for Explicit Congestion Notification. More...
 
QueueDiscItemoperator= (const QueueDiscItem &)=delete
 
virtual void Print (std::ostream &os) const
 Print the item contents. More...
 
void SetTimeStamp (Time t)
 Set the timestamp included in this item. More...
 
void SetTxQueueIndex (uint8_t txq)
 Set the transmission queue index to store in this item. More...
 
- Public Member Functions inherited from ns3::QueueItem
 QueueItem ()=delete
 
 QueueItem (const QueueItem &)=delete
 
 QueueItem (Ptr< Packet > p)
 Create a queue item containing a packet. More...
 
virtual ~QueueItem ()
 
Ptr< PacketGetPacket (void) const
 
virtual uint32_t GetSize (void) const
 Use this method (instead of GetPacket ()->GetSize ()) to get the packet size. More...
 
virtual bool GetUint8Value (Uint8Values field, uint8_t &value) const
 Retrieve the value of a given field from the packet, if present. More...
 
QueueItemoperator= (const QueueItem &)=delete
 
virtual void Print (std::ostream &os) const
 Print the item contents. More...
 
- Public Member Functions inherited from ns3::SimpleRefCount< QueueItem >
 SimpleRefCount ()
 Default constructor. More...
 
 SimpleRefCount (const SimpleRefCount &o)
 Copy constructor. More...
 
uint32_t GetReferenceCount (void) const
 Get the reference count of the object. More...
 
SimpleRefCountoperator= (const SimpleRefCount &o)
 Assignment operator. More...
 
void Ref (void) const
 Increment the reference count. More...
 
void Unref (void) const
 Decrement the reference count. More...
 

Private Attributes

bool m_ecnCapablePacket
 ECN capable packet? More...
 

Additional Inherited Members

- Public Types inherited from ns3::QueueItem
typedef void(* TracedCallback) (Ptr< const QueueItem > item)
 TracedCallback signature for Ptr<QueueItem> More...
 
enum  Uint8Values { IP_DSFIELD }
 1-byte fields of the packet whose value can be retrieved, if present More...
 

Detailed Description

Red Queue Disc Test Item.

Definition at line 40 of file red-queue-disc-test-suite.cc.

Constructor & Destructor Documentation

◆ RedQueueDiscTestItem() [1/3]

RedQueueDiscTestItem::RedQueueDiscTestItem ( Ptr< Packet p,
const Address addr,
bool  ecnCapable 
)

Constructor.

Parameters
ppacket
addraddress
ecnCapableECN capable flag

Definition at line 64 of file red-queue-disc-test-suite.cc.

◆ ~RedQueueDiscTestItem()

RedQueueDiscTestItem::~RedQueueDiscTestItem ( )
virtual

Definition at line 70 of file red-queue-disc-test-suite.cc.

◆ RedQueueDiscTestItem() [2/3]

RedQueueDiscTestItem::RedQueueDiscTestItem ( )
delete

◆ RedQueueDiscTestItem() [3/3]

RedQueueDiscTestItem::RedQueueDiscTestItem ( const RedQueueDiscTestItem )
delete

Member Function Documentation

◆ AddHeader()

void RedQueueDiscTestItem::AddHeader ( void  )
virtual

Add the header to the packet.

Subclasses may keep header and payload separate to allow manipulating the header, so this method allows to add the header to the packet before sending the packet to the device.

Implements ns3::QueueDiscItem.

Definition at line 75 of file red-queue-disc-test-suite.cc.

◆ Mark()

bool RedQueueDiscTestItem::Mark ( void  )
virtual

Marks the packet as a substitute for dropping it, such as for Explicit Congestion Notification.

Returns
true if the packet is marked by this method or is already marked, false otherwise

Implements ns3::QueueDiscItem.

Definition at line 80 of file red-queue-disc-test-suite.cc.

References m_ecnCapablePacket.

◆ operator=()

RedQueueDiscTestItem & RedQueueDiscTestItem::operator= ( const RedQueueDiscTestItem )
delete

Member Data Documentation

◆ m_ecnCapablePacket

bool RedQueueDiscTestItem::m_ecnCapablePacket
private

ECN capable packet?

Definition at line 61 of file red-queue-disc-test-suite.cc.

Referenced by Mark().


The documentation for this class was generated from the following file: