INET Framework for OMNeT++/OMNEST
inet::ieee80211::IReassembly Class Referenceabstract

Abstract interface for classes that encapsulate the functionality of reassembling frames from fragments. More...

#include <IReassembly.h>

Inheritance diagram for inet::ieee80211::IReassembly:
inet::ieee80211::BasicReassembly

Public Member Functions

virtual ~IReassembly ()
 
virtual Ieee80211DataOrMgmtFrameaddFragment (Ieee80211DataOrMgmtFrame *frame)=0
 Add a fragment to the reassembly buffer. More...
 
virtual void purge (const MACAddress &address, int tid, int startSeqNumber, int endSeqNumber)=0
 Discard fragments from the reassembly buffer. More...
 

Detailed Description

Abstract interface for classes that encapsulate the functionality of reassembling frames from fragments.

Fragmentation reassembly classes are typically instantiated as part of an UpperMac.

Constructor & Destructor Documentation

virtual inet::ieee80211::IReassembly::~IReassembly ( )
inlinevirtual
36 {}

Member Function Documentation

virtual Ieee80211DataOrMgmtFrame* inet::ieee80211::IReassembly::addFragment ( Ieee80211DataOrMgmtFrame frame)
pure virtual

Add a fragment to the reassembly buffer.

If the new fragment completes a frame, then the reassembled frame is returned (and fragments are removed from the buffer), otherwise the function returns nullptr.

Implemented in inet::ieee80211::BasicReassembly.

virtual void inet::ieee80211::IReassembly::purge ( const MACAddress address,
int  tid,
int  startSeqNumber,
int  endSeqNumber 
)
pure virtual

Discard fragments from the reassembly buffer.

Frames are identified by the transmitter address, the TID, and the sequence number range [startSeqNumber, endSeqNumber[. Set tid=-1 for non-QoS frames.

Implemented in inet::ieee80211::BasicReassembly.


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