User Manual, Developers Guide and API Documentation

wifimac::pathselection::LinkQualityMeasurement 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/LinkQualityMeasurement.hpp>

Inheritance diagram for wifimac::pathselection::LinkQualityMeasurement:

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

Collaboration graph
[legend]

List of all members.

Public Member Functions

 LinkQualityMeasurement (wns::ldk::fun::FUN *fun, const wns::pyconfig::View &config)
void newLinkCost (wns::service::dll::UnicastAddress rx, Metric cost)
 Indicates a change in the link cost.
void sendLinkMeasurement (wns::service::dll::UnicastAddress rx, wns::simulator::Time last)
 Initiates the transmission of a probe-packet.
virtual ~LinkQualityMeasurement ()

Private Types

typedef
wns::container::Registry
< wns::service::dll::UnicastAddress,
LinkQuality
*, wns::container::registry::DeleteOnErase
adr2qualityMap
 Stores and manages the linkQualities for the links to all neighboring nodes.

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
 FunctionalUnit / CompoundHandlerInterface.
virtual void doOnData (const wns::ldk::CompoundPtr &_compound)
virtual void doSendData (const wns::ldk::CompoundPtr &_compound)
virtual void doWakeup ()
virtual void onFUNCreated ()
void onLinkIndication (const wns::service::dll::UnicastAddress myself, const wns::service::dll::UnicastAddress peer)
 observer for new link notifications / link updates

Private Attributes

const wns::pyconfig::View config
const bool doPiggybacking
const Bit frameSize
struct
wifimac::pathselection::LinkQualityMeasurement::Friends 
friends
adr2qualityMap linkQualities
wns::logger::Logger logger
wns::service::dll::UnicastAddress myMACAddress
int numPiggybacked
const wns::simulator::Time period
int piggybackingPeriod
PathSelectionInterface * ps
 Pointer to the current path-selection algorithm for link-metric updates.
const wns::simulator::Time referenceFlightTime
const std::string ucName

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 182 of file LinkQualityMeasurement.hpp.


Member Typedef Documentation

Definition at line 242 of file LinkQualityMeasurement.hpp.


Constructor & Destructor Documentation

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

Definition at line 116 of file LinkQualityMeasurement.cpp.

LinkQualityMeasurement::~LinkQualityMeasurement (  )  [virtual]

Definition at line 134 of file LinkQualityMeasurement.cpp.


Member Function Documentation

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

Definition at line 280 of file LinkQualityMeasurement.cpp.

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

Definition at line 162 of file LinkQualityMeasurement.cpp.

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

Definition at line 213 of file LinkQualityMeasurement.cpp.

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

Definition at line 167 of file LinkQualityMeasurement.cpp.

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

Definition at line 207 of file LinkQualityMeasurement.cpp.

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

Definition at line 274 of file LinkQualityMeasurement.cpp.

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

Definition at line 139 of file LinkQualityMeasurement.cpp.

void LinkQualityMeasurement::onLinkIndication ( const wns::service::dll::UnicastAddress  myself,
const wns::service::dll::UnicastAddress  peer 
) [private]

Definition at line 307 of file LinkQualityMeasurement.cpp.

void LinkQualityMeasurement::sendLinkMeasurement ( wns::service::dll::UnicastAddress  rx,
wns::simulator::Time  last 
)

Definition at line 250 of file LinkQualityMeasurement.cpp.


Member Data Documentation

Definition at line 223 of file LinkQualityMeasurement.hpp.

Definition at line 230 of file LinkQualityMeasurement.hpp.

Definition at line 224 of file LinkQualityMeasurement.hpp.

Definition at line 243 of file LinkQualityMeasurement.hpp.

Definition at line 227 of file LinkQualityMeasurement.hpp.

Definition at line 245 of file LinkQualityMeasurement.hpp.

Definition at line 232 of file LinkQualityMeasurement.hpp.

Definition at line 226 of file LinkQualityMeasurement.hpp.

Definition at line 231 of file LinkQualityMeasurement.hpp.

PathSelectionInterface* wifimac::pathselection::LinkQualityMeasurement::ps [private]

Definition at line 237 of file LinkQualityMeasurement.hpp.

Definition at line 225 of file LinkQualityMeasurement.hpp.

Definition at line 228 of file LinkQualityMeasurement.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