Public Member Functions | |
Fragments () | |
Constructor. | |
~Fragments () | |
Destructor. | |
void | AddFragment (Ptr< Packet > fragment, uint16_t fragmentOffset, bool moreFragment) |
Add a fragment. | |
void | CancelTimeout () |
Cancel the timeout event. | |
Ptr< Packet > | GetPacket () const |
Get the entire packet. | |
Ptr< Packet > | GetPartialPacket () const |
Get the packet parts so far received. | |
bool | IsEntire () const |
If all fragments have been added. | |
void | SetTimeoutEventId (EventId event) |
Set the Timeout EventId. | |
void | SetUnfragmentablePart (Ptr< Packet > unfragmentablePart) |
Set the unfragmentable part of the packet. | |
![]() | |
SimpleRefCount () | |
SimpleRefCount (const SimpleRefCount &o) | |
uint32_t | GetReferenceCount (void) const |
SimpleRefCount & | operator= (const SimpleRefCount &o) |
void | Ref (void) const |
void | Unref (void) const |
Private Attributes | |
bool | m_moreFragment |
If other fragments will be sent. | |
std::list< std::pair< Ptr < Packet >, uint16_t > > | m_packetFragments |
The current fragments. | |
EventId | m_timeoutEventId |
Timeout handler event. | |
Ptr< Packet > | m_unfragmentable |
The unfragmentable part. |
Additional Inherited Members | |
![]() | |
static void | Cleanup (void) |
A Set of Fragment.
Definition at line 303 of file ipv6-extension.h.
ns3::Ipv6ExtensionFragment::Fragments::Fragments | ( | ) |
Constructor.
Definition at line 588 of file ipv6-extension.cc.
ns3::Ipv6ExtensionFragment::Fragments::~Fragments | ( | ) |
Destructor.
Definition at line 593 of file ipv6-extension.cc.
void ns3::Ipv6ExtensionFragment::Fragments::AddFragment | ( | Ptr< Packet > | fragment, |
uint16_t | fragmentOffset, | ||
bool | moreFragment | ||
) |
Add a fragment.
fragment | the fragment |
fragmentOffset | the offset of the fragment |
moreFragment | the bit "More Fragment" |
Definition at line 597 of file ipv6-extension.cc.
void ns3::Ipv6ExtensionFragment::Fragments::CancelTimeout | ( | ) |
Cancel the timeout event.
Definition at line 691 of file ipv6-extension.cc.
Get the entire packet.
Definition at line 645 of file ipv6-extension.cc.
References ns3::Packet::AddAtEnd(), ns3::Packet::Copy(), and list.
Get the packet parts so far received.
Definition at line 657 of file ipv6-extension.cc.
References ns3::Packet::AddAtEnd(), ns3::Packet::Copy(), and list.
bool ns3::Ipv6ExtensionFragment::Fragments::IsEntire | ( | ) | const |
If all fragments have been added.
Definition at line 622 of file ipv6-extension.cc.
References list.
void ns3::Ipv6ExtensionFragment::Fragments::SetTimeoutEventId | ( | EventId | event | ) |
Set the Timeout EventId.
Definition at line 685 of file ipv6-extension.cc.
void ns3::Ipv6ExtensionFragment::Fragments::SetUnfragmentablePart | ( | Ptr< Packet > | unfragmentablePart | ) |
Set the unfragmentable part of the packet.
unfragmentablePart | the unfragmentable part |
Definition at line 617 of file ipv6-extension.cc.
|
private |
If other fragments will be sent.
Definition at line 362 of file ipv6-extension.h.
|
private |
The current fragments.
Definition at line 367 of file ipv6-extension.h.
|
private |
Timeout handler event.
Definition at line 377 of file ipv6-extension.h.
The unfragmentable part.
Definition at line 372 of file ipv6-extension.h.