INET Framework for OMNeT++/OMNEST
inet::ieee80211::EdcaCollisionController Class Reference

#include <EdcaCollisionController.h>

Inheritance diagram for inet::ieee80211::EdcaCollisionController:
inet::ieee80211::IEdcaCollisionController

Public Member Functions

virtual void expectedChannelAccess (Edcaf *edcaf, simtime_t time) override
 
virtual bool isInternalCollision (Edcaf *edcaf) override
 
- Public Member Functions inherited from inet::ieee80211::IEdcaCollisionController
virtual ~IEdcaCollisionController ()
 

Protected Member Functions

virtual int numInitStages () const override
 
virtual void initialize () override
 

Protected Attributes

simtime_t txStartTimes [4]
 

Member Function Documentation

void inet::ieee80211::EdcaCollisionController::expectedChannelAccess ( Edcaf edcaf,
simtime_t  time 
)
overridevirtual

Implements inet::ieee80211::IEdcaCollisionController.

34 {
35  //Enter_Method("recordTxStartTime(%d)", edcaf->getAccessCategory());
36  auto ac = edcaf->getAccessCategory();
37  EV_INFO << "The expected channel access of the " << printAccessCategory(ac) << " queue is: " << time << std::endl;
38  txStartTimes[ac] = time;
39 }
simtime_t txStartTimes[4]
Definition: EdcaCollisionController.h:29
virtual AccessCategory getAccessCategory(const char *ac)
Definition: Edcaf.cc:93
void inet::ieee80211::EdcaCollisionController::initialize ( )
overrideprotectedvirtual
28 {
29  for (int ac = 0; ac < 4; ac++)
30  txStartTimes[ac] = -1;
31 }
simtime_t txStartTimes[4]
Definition: EdcaCollisionController.h:29
bool inet::ieee80211::EdcaCollisionController::isInternalCollision ( Edcaf edcaf)
overridevirtual

Implements inet::ieee80211::IEdcaCollisionController.

42 {
43  simtime_t now = simTime();
44  AccessCategory accessCategory = edcaf->getAccessCategory();
45  if (txStartTimes[accessCategory] == now) {
46  for (int ac = accessCategory + 1; ac < 4; ac++) {
47  if (txStartTimes[ac] == now)
48  return true;
49  }
50  }
51  return false;
52 }
AccessCategory
IEEE 802.11e QoS (EDCA) access categories.
Definition: AccessCategory.h:29
simtime_t txStartTimes[4]
Definition: EdcaCollisionController.h:29
virtual AccessCategory getAccessCategory(const char *ac)
Definition: Edcaf.cc:93
virtual int inet::ieee80211::EdcaCollisionController::numInitStages ( ) const
inlineoverrideprotectedvirtual
32 { return NUM_INIT_STAGES; }
The number of initialization stages.
Definition: InitStages.h:116

Member Data Documentation

simtime_t inet::ieee80211::EdcaCollisionController::txStartTimes[4]
protected

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