12#include "ns3/packet.h"
134 NS_LOG_WARN(
"The Hash method should be redefined by subclasses");
a polymophic address class
uint32_t GetSize() const
Returns the the size in bytes of the packet (including the zero-filled initial payload).
Smart pointer class similar to boost::intrusive_ptr.
void Print(std::ostream &os) const override
Print the item contents.
uint8_t m_txq
Transmission queue index.
Time m_tstamp
timestamp when the packet was enqueued
Address m_address
MAC destination address.
void SetTimeStamp(Time t)
Set the timestamp included in this item.
uint16_t m_protocol
L3 Protocol number.
virtual uint32_t Hash(uint32_t perturbation=0) const
Computes the hash of various fields of the packet header.
Address GetAddress() const
Get the MAC address included in this item.
~QueueDiscItem() override
uint8_t GetTxQueueIndex() const
Get the transmission queue index included in this item.
void SetTxQueueIndex(uint8_t txq)
Set the transmission queue index to store in this item.
uint16_t GetProtocol() const
Get the L3 protocol included in this item.
Time GetTimeStamp() const
Get the timestamp included in this item.
Base class to represent items of packet Queues.
virtual bool GetUint8Value(Uint8Values field, uint8_t &value) const
Retrieve the value of a given field from the packet, if present.
Ptr< Packet > GetPacket() const
virtual void Print(std::ostream &os) const
Print the item contents.
virtual uint32_t GetSize() const
Use this method (instead of GetPacket ()->GetSize ()) to get the packet size.
Uint8Values
1-byte fields of the packet whose value can be retrieved, if present
Ptr< Packet > m_packet
The packet contained in the queue item.
Simulation virtual time values and global simulation resolution.
#define NS_ASSERT(condition)
At runtime, in debugging builds, if this condition is not true, the program prints the source file,...
#define NS_LOG_COMPONENT_DEFINE(name)
Define a Log component with a specific name.
#define NS_LOG_FUNCTION(parameters)
If log level LOG_FUNCTION is enabled, this macro will output all input parameters separated by ",...
#define NS_LOG_WARN(msg)
Use NS_LOG to output a message of level LOG_WARN.
Every class exported by the ns3 library is enclosed in the ns3 namespace.
std::ostream & operator<<(std::ostream &os, const Angles &a)