Inheritance diagram for ns3::SixLowPanNetDevice::Fragments:
Collaboration diagram for ns3::SixLowPanNetDevice::Fragments:Public Member Functions | |
| Fragments () | |
| Constructor. More... | |
| ~Fragments () | |
| Destructor. More... | |
| void | AddFirstFragment (Ptr< Packet > fragment) |
| Add the first packet fragment. More... | |
| void | AddFragment (Ptr< Packet > fragment, uint16_t fragmentOffset) |
| Add a fragment to the pool. More... | |
| std::list< Ptr< Packet > > | GetFraments () const |
| Get a list of the current stored fragments. More... | |
| Ptr< Packet > | GetPacket () const |
| Get the entire packet. More... | |
| FragmentsTimeoutsListI_t | GetTimeoutIter () |
| Get the Timeout iterator. More... | |
| bool | IsEntire () const |
| If all fragments have been added. More... | |
| void | SetPacketSize (uint32_t packetSize) |
| Set the packet-to-be-defragmented size. More... | |
| void | SetTimeoutIter (FragmentsTimeoutsListI_t iter) |
| Set the Timeout iterator. More... | |
Public Member Functions inherited from ns3::SimpleRefCount< Fragments > | |
| SimpleRefCount () | |
| Default constructor. More... | |
| SimpleRefCount (const SimpleRefCount &o[[maybe_unused]]) | |
| Copy constructor. More... | |
| uint32_t | GetReferenceCount (void) const |
| Get the reference count of the object. More... | |
| SimpleRefCount & | operator= ([[maybe_unused]] 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 | |
| Ptr< Packet > | m_firstFragment |
| The very first fragment. More... | |
| std::list< std::pair< Ptr< Packet >, uint16_t > > | m_fragments |
| The current fragments. More... | |
| uint32_t | m_packetSize |
| The size of the reconstructed packet (bytes). More... | |
| FragmentsTimeoutsListI_t | m_timeoutIter |
| Timeout iterator to "event" handler. More... | |
A Set of Fragments.
Definition at line 435 of file sixlowpan-net-device.h.
| ns3::SixLowPanNetDevice::Fragments::Fragments | ( | ) |
Constructor.
Definition at line 2452 of file sixlowpan-net-device.cc.
References m_packetSize, and NS_LOG_FUNCTION.
| ns3::SixLowPanNetDevice::Fragments::~Fragments | ( | ) |
Add the first packet fragment.
The first fragment is needed to allow the post-defragmentation decompression.
| [in] | fragment | The fragment. |
Definition at line 2489 of file sixlowpan-net-device.cc.
References NS_LOG_FUNCTION.
Referenced by ns3::SixLowPanNetDevice::ProcessFragment().
Here is the caller graph for this function:| void ns3::SixLowPanNetDevice::Fragments::AddFragment | ( | Ptr< Packet > | fragment, |
| uint16_t | fragmentOffset | ||
| ) |
Add a fragment to the pool.
| [in] | fragment | the fragment. |
| [in] | fragmentOffset | the offset of the fragment. |
Definition at line 2463 of file sixlowpan-net-device.cc.
References ns3::Packet::GetSize(), ns3::SixLowPanNetDevice::m_fragments, NS_ASSERT_MSG, and NS_LOG_FUNCTION.
Referenced by ns3::SixLowPanNetDevice::ProcessFragment().
Here is the call graph for this function:
Here is the caller graph for this function:Get a list of the current stored fragments.
Definition at line 2564 of file sixlowpan-net-device.cc.
References ns3::SixLowPanNetDevice::m_fragments.
Get the entire packet.
Definition at line 2528 of file sixlowpan-net-device.cc.
References ns3::Packet::AddAtEnd(), ns3::SixLowPanNetDevice::m_fragments, NS_ABORT_MSG, NS_LOG_FUNCTION, and NS_LOG_LOGIC.
Referenced by ns3::SixLowPanNetDevice::ProcessFragment().
Here is the call graph for this function:
Here is the caller graph for this function:| SixLowPanNetDevice::FragmentsTimeoutsListI_t ns3::SixLowPanNetDevice::Fragments::GetTimeoutIter | ( | ) |
Get the Timeout iterator.
Definition at line 2583 of file sixlowpan-net-device.cc.
Referenced by ns3::SixLowPanNetDevice::ProcessFragment().
Here is the caller graph for this function:| bool ns3::SixLowPanNetDevice::Fragments::IsEntire | ( | ) | const |
If all fragments have been added.
Definition at line 2496 of file sixlowpan-net-device.cc.
References list, ns3::SixLowPanNetDevice::m_fragments, max, NS_LOG_FUNCTION, and NS_LOG_LOGIC.
Referenced by ns3::SixLowPanNetDevice::ProcessFragment().
Here is the caller graph for this function:| void ns3::SixLowPanNetDevice::Fragments::SetPacketSize | ( | uint32_t | packetSize | ) |
Set the packet-to-be-defragmented size.
| [in] | packetSize | The packet size (bytes). |
Definition at line 2558 of file sixlowpan-net-device.cc.
References NS_LOG_FUNCTION, and packetSize.
Referenced by ns3::SixLowPanNetDevice::ProcessFragment().
Here is the caller graph for this function:| void ns3::SixLowPanNetDevice::Fragments::SetTimeoutIter | ( | FragmentsTimeoutsListI_t | iter | ) |
Set the Timeout iterator.
| iter | The iterator. |
Definition at line 2576 of file sixlowpan-net-device.cc.
Referenced by ns3::SixLowPanNetDevice::ProcessFragment().
Here is the caller graph for this function:The very first fragment.
Definition at line 512 of file sixlowpan-net-device.h.
|
private |
The current fragments.
Definition at line 507 of file sixlowpan-net-device.h.
|
private |
The size of the reconstructed packet (bytes).
Definition at line 502 of file sixlowpan-net-device.h.
Referenced by Fragments().
|
private |
Timeout iterator to "event" handler.
Definition at line 517 of file sixlowpan-net-device.h.