User Manual, Developers Guide and API Documentation

wifimac::pathselection::BeaconLinkQualityMeasurement Class Reference

The LQM measures the average one-way flight-time of all current active links and provides this measure as a metric for the path-selection FU. More...

#include <pathselection/BeaconLinkQualityMeasurement.hpp>

Inheritance diagram for wifimac::pathselection::BeaconLinkQualityMeasurement:

Inheritance graph
[legend]
Collaboration diagram for wifimac::pathselection::BeaconLinkQualityMeasurement:

Collaboration graph
[legend]

List of all members.

Public Member Functions

 BeaconLinkQualityMeasurement (wns::ldk::fun::FUN *fun, const wns::pyconfig::View &config)
 Constructor.
void newLinkCost (wns::service::dll::UnicastAddress rx, Metric cost)
 Indicates a change in the link cost.
virtual ~BeaconLinkQualityMeasurement ()
 Destructor.

Public Attributes

wns::logger::Logger logger
 The logger.

Private Types

typedef
wns::container::Registry
< wns::service::dll::UnicastAddress,
BroadcastLinkQuality * > 
adr2qualityMap
 Map of address to BroadcastLinkQuality.

Private Member Functions

void calculateSizes (const wns::ldk::CommandPool *commandPool, Bit &commandPoolSize, Bit &dataSize) const
 SDU and PCI size calculation for probe-frames and frames with piggybacked lqm.
virtual bool doIsAccepting (const wns::ldk::CompoundPtr &_compound) const
 Forward request to lower FU.
virtual void doOnData (const wns::ldk::CompoundPtr &_compound)
 Parse and process incoming beacon for Information Element.
virtual void doSendData (const wns::ldk::CompoundPtr &_compound)
 Add Information Element to beacon.
virtual void doWakeup ()
 Forward call to upper FU.
virtual void onFUNCreated ()
 Initialization.

Private Attributes

wns::simulator::Time beaconInterval
 The own beacon interval to be stored in each IE.
const wns::pyconfig::View config
 The configuration.
struct
wifimac::pathselection::BeaconLinkQualityMeasurement::Friends 
friends
wns::probe::bus::ContextCollectorPtr linkCost
 Probing the link cost.
adr2qualityMap linkQualities
 Stores and manages the linkQualities for the links to all neighboring nodes.
wns::service::dll::UnicastAddress myMACAddress
 My own MAC address.
wns::probe::bus::ContextCollectorPtr peerMeasurement
 Probing success rate of received beacons.
const std::string phyUserCommandName
 Name of PHY user commands to read the SINR.
IPathSelectionps
 Pointer to the current path-selection algorithm for link-metric updates.
wns::probe::bus::ContextCollectorPtr receivedPower
 Probing the power of received beacons.

Classes

struct  Friends


Detailed Description

It does so by sending either probe-packets with a fixed length or by piggybacking its required control information (i.e. a timestamp) to frames which have to be transmitted anyways.

Definition at line 206 of file BeaconLinkQualityMeasurement.hpp.


Member Typedef Documentation

Definition at line 268 of file BeaconLinkQualityMeasurement.hpp.


Constructor & Destructor Documentation

BeaconLinkQualityMeasurement::BeaconLinkQualityMeasurement ( wns::ldk::fun::FUN fun,
const wns::pyconfig::View config 
)

Definition at line 234 of file BeaconLinkQualityMeasurement.cpp.

BeaconLinkQualityMeasurement::~BeaconLinkQualityMeasurement (  )  [virtual]

Definition at line 258 of file BeaconLinkQualityMeasurement.cpp.


Member Function Documentation

void BeaconLinkQualityMeasurement::calculateSizes ( const wns::ldk::CommandPool commandPool,
Bit commandPoolSize,
Bit dataSize 
) const [private, virtual]

bool BeaconLinkQualityMeasurement::doIsAccepting ( const wns::ldk::CompoundPtr _compound  )  const [private, virtual]

Definition at line 280 of file BeaconLinkQualityMeasurement.cpp.

void BeaconLinkQualityMeasurement::doOnData ( const wns::ldk::CompoundPtr _compound  )  [private, virtual]

  • Store SINR and success rate of the incoming beacons
  • If an IE is in the beacon, parse the information about the success/SINR of the own beacons previously transmitted and received by the peer.

Definition at line 328 of file BeaconLinkQualityMeasurement.cpp.

void BeaconLinkQualityMeasurement::doSendData ( const wns::ldk::CompoundPtr _compound  )  [private, virtual]

Definition at line 286 of file BeaconLinkQualityMeasurement.cpp.

void BeaconLinkQualityMeasurement::doWakeup (  )  [private, virtual]

Definition at line 321 of file BeaconLinkQualityMeasurement.cpp.

void BeaconLinkQualityMeasurement::newLinkCost ( wns::service::dll::UnicastAddress  rx,
Metric  cost 
)

Definition at line 396 of file BeaconLinkQualityMeasurement.cpp.

void BeaconLinkQualityMeasurement::onFUNCreated (  )  [private, virtual]

Reimplemented from wns::ldk::FunctionalUnit.

Definition at line 264 of file BeaconLinkQualityMeasurement.cpp.


Member Data Documentation

Definition at line 260 of file BeaconLinkQualityMeasurement.hpp.

Definition at line 257 of file BeaconLinkQualityMeasurement.hpp.

Definition at line 288 of file BeaconLinkQualityMeasurement.hpp.

Definition at line 273 of file BeaconLinkQualityMeasurement.hpp.

Has to be public so that the BroadcastLinkQuality entities can use it

Definition at line 226 of file BeaconLinkQualityMeasurement.hpp.

Definition at line 276 of file BeaconLinkQualityMeasurement.hpp.

Definition at line 285 of file BeaconLinkQualityMeasurement.hpp.

Definition at line 279 of file BeaconLinkQualityMeasurement.hpp.

Definition at line 265 of file BeaconLinkQualityMeasurement.hpp.

Definition at line 282 of file BeaconLinkQualityMeasurement.hpp.


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

Generated on Sat May 26 03:32:44 2012 for openWNS by  doxygen 1.5.5