SimpleNetDevice tag to store source, destination and protocol of each packet. More...
Public Member Functions | |
void | Deserialize (TagBuffer i) override |
Mac48Address | GetDst () const |
Get the destination address. More... | |
TypeId | GetInstanceTypeId () const override |
Get the most derived TypeId for this Object. More... | |
uint16_t | GetProto () const |
Get the protocol number. More... | |
uint32_t | GetSerializedSize () const override |
Mac48Address | GetSrc () const |
Get the source address. More... | |
void | Print (std::ostream &os) const override |
void | Serialize (TagBuffer i) const override |
void | SetDst (Mac48Address dst) |
Set the destination address. More... | |
void | SetProto (uint16_t proto) |
Set the protocol number. More... | |
void | SetSrc (Mac48Address src) |
Set the source address. More... | |
Public Member Functions inherited from ns3::ObjectBase | |
virtual | ~ObjectBase () |
Virtual destructor. More... | |
void | GetAttribute (std::string name, AttributeValue &value) const |
Get the value of an attribute, raising fatal errors if unsuccessful. More... | |
bool | GetAttributeFailSafe (std::string name, AttributeValue &value) const |
Get the value of an attribute without raising errors. More... | |
void | SetAttribute (std::string name, const AttributeValue &value) |
Set a single attribute, raising fatal errors if unsuccessful. More... | |
bool | SetAttributeFailSafe (std::string name, const AttributeValue &value) |
Set a single attribute without raising errors. More... | |
bool | TraceConnect (std::string name, std::string context, const CallbackBase &cb) |
Connect a TraceSource to a Callback with a context. More... | |
bool | TraceConnectWithoutContext (std::string name, const CallbackBase &cb) |
Connect a TraceSource to a Callback without a context. More... | |
bool | TraceDisconnect (std::string name, std::string context, const CallbackBase &cb) |
Disconnect from a TraceSource a Callback previously connected with a context. More... | |
bool | TraceDisconnectWithoutContext (std::string name, const CallbackBase &cb) |
Disconnect from a TraceSource a Callback previously connected without a context. More... | |
Static Public Member Functions | |
static TypeId | GetTypeId () |
Get the type ID. More... | |
Static Public Member Functions inherited from ns3::Tag | |
static TypeId | GetTypeId () |
Get the type ID. More... | |
Static Public Member Functions inherited from ns3::ObjectBase | |
static TypeId | GetTypeId () |
Get the type ID. More... | |
Private Attributes | |
Mac48Address | m_dst |
destination address More... | |
uint16_t | m_protocolNumber |
protocol number More... | |
Mac48Address | m_src |
source address More... | |
Additional Inherited Members | |
Protected Member Functions inherited from ns3::ObjectBase | |
void | ConstructSelf (const AttributeConstructionList &attributes) |
Complete construction of ObjectBase; invoked by derived classes. More... | |
virtual void | NotifyConstructionCompleted () |
Notifier called once the ObjectBase is fully constructed. More... | |
Related Functions inherited from ns3::ObjectBase | |
static TypeId | GetObjectIid () |
Ensure the TypeId for ObjectBase gets fully configured to anchor the inheritance tree properly. More... | |
SimpleNetDevice tag to store source, destination and protocol of each packet.
Definition at line 43 of file simple-net-device.cc.
|
overridevirtual |
i | the buffer to read data from. |
Read the content of the tag from the provided tag buffer. DO NOT attempt to read more bytes than you wrote with Tag::Serialize.
Implements ns3::Tag.
Definition at line 134 of file simple-net-device.cc.
References ns3::Mac48Address::CopyFrom(), m_dst, m_protocolNumber, m_src, third::mac, ns3::TagBuffer::Read(), and ns3::TagBuffer::ReadU16().
Mac48Address ns3::SimpleTag::GetDst | ( | ) | const |
Get the destination address.
Definition at line 163 of file simple-net-device.cc.
References m_dst.
Referenced by ns3::SimpleNetDevice::FinishTransmission().
|
overridevirtual |
Get the most derived TypeId for this Object.
This method is typically implemented by ns3::Object::GetInstanceTypeId but some classes which derive from ns3::ObjectBase directly have to implement it themselves.
Implements ns3::ObjectBase.
Definition at line 111 of file simple-net-device.cc.
References GetTypeId().
uint16_t ns3::SimpleTag::GetProto | ( | ) | const |
Get the protocol number.
Definition at line 175 of file simple-net-device.cc.
References m_protocolNumber.
Referenced by ns3::SimpleNetDevice::FinishTransmission().
|
overridevirtual |
This method is typically invoked by Packet::AddPacketTag or Packet::AddByteTag just prior to calling Tag::Serialize.
Implements ns3::Tag.
Definition at line 117 of file simple-net-device.cc.
Mac48Address ns3::SimpleTag::GetSrc | ( | ) | const |
Get the source address.
Definition at line 151 of file simple-net-device.cc.
References m_src.
Referenced by ns3::SimpleNetDevice::FinishTransmission().
|
static |
Get the type ID.
Definition at line 101 of file simple-net-device.cc.
References ns3::TypeId::SetParent().
Referenced by GetInstanceTypeId().
|
overridevirtual |
os | the stream to print to |
This method is typically invoked from the Packet::PrintByteTags or Packet::PrintPacketTags methods.
Implements ns3::Tag.
Definition at line 181 of file simple-net-device.cc.
References m_dst, m_protocolNumber, and m_src.
|
overridevirtual |
i | the buffer to write data into. |
Write the content of the tag in the provided tag buffer. DO NOT attempt to write more bytes than you requested with Tag::GetSerializedSize.
Implements ns3::Tag.
Definition at line 123 of file simple-net-device.cc.
References ns3::Mac48Address::CopyTo(), m_dst, m_protocolNumber, m_src, third::mac, ns3::TagBuffer::Write(), and ns3::TagBuffer::WriteU16().
void ns3::SimpleTag::SetDst | ( | Mac48Address | dst | ) |
Set the destination address.
dst | destination address |
Definition at line 157 of file simple-net-device.cc.
References m_dst.
Referenced by ns3::SimpleNetDevice::SendFrom().
void ns3::SimpleTag::SetProto | ( | uint16_t | proto | ) |
Set the protocol number.
proto | protocol number |
Definition at line 169 of file simple-net-device.cc.
References m_protocolNumber.
Referenced by ns3::SimpleNetDevice::SendFrom().
void ns3::SimpleTag::SetSrc | ( | Mac48Address | src | ) |
Set the source address.
src | source address |
Definition at line 145 of file simple-net-device.cc.
References m_src.
Referenced by ns3::SimpleNetDevice::SendFrom().
|
private |
destination address
Definition at line 94 of file simple-net-device.cc.
Referenced by Deserialize(), GetDst(), Print(), Serialize(), and SetDst().
|
private |
protocol number
Definition at line 95 of file simple-net-device.cc.
Referenced by Deserialize(), GetProto(), Print(), Serialize(), and SetProto().
|
private |
source address
Definition at line 93 of file simple-net-device.cc.
Referenced by Deserialize(), GetSrc(), Print(), Serialize(), and SetSrc().