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

Abstract interface for processes that implement contention-based channel access. More...

#include <IContention.h>

Inheritance diagram for inet::ieee80211::IContention:
inet::ieee80211::Contention

Classes

class  ICallback
 

Public Member Functions

virtual ~IContention ()
 
virtual void startContention (int cw, simtime_t ifs, simtime_t eifs, simtime_t slotTime, ICallback *callback)=0
 
virtual bool isContentionInProgress ()=0
 
virtual void mediumStateChanged (bool mediumFree)=0
 
virtual void corruptedFrameReceived ()=0
 

Detailed Description

Abstract interface for processes that implement contention-based channel access.

For each frame, Contention listens on the channel for a DIFS (AIFS) period then for a random backoff period before transmitting the frame, and defers when busy channel is sensed. After receiving a corrupted frame, EIFS is used instead of the original DIFS (AIFS).

Note that waiting for an ACK (or CTS) and initiating the retransmission if it does not arrive is not handled by this process. Instead, that is typically performed by a frame exchange class INET_API inside UpperMac (see IFrameExchange, IUpperMac).

Constructor & Destructor Documentation

virtual inet::ieee80211::IContention::~IContention ( )
inlinevirtual
51 {}

Member Function Documentation

virtual void inet::ieee80211::IContention::corruptedFrameReceived ( )
pure virtual

Implemented in inet::ieee80211::Contention.

virtual bool inet::ieee80211::IContention::isContentionInProgress ( )
pure virtual
virtual void inet::ieee80211::IContention::mediumStateChanged ( bool  mediumFree)
pure virtual
virtual void inet::ieee80211::IContention::startContention ( int  cw,
simtime_t  ifs,
simtime_t  eifs,
simtime_t  slotTime,
ICallback callback 
)
pure virtual

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