User Manual, Developers Guide and API Documentation

wns::service::phy::phymode::PhyModeInterface Class Reference

Base Class for encapsulating Modulation and Coding -> PHY Mode wns::service::phy::phymode::PhyModeInterface.

#include <service/phy/phymode/PhyModeInterface.hpp>

Inheritance diagram for wns::service::phy::phymode::PhyModeInterface:

Inheritance graph
[legend]
Collaboration diagram for wns::service::phy::phymode::PhyModeInterface:

Collaboration graph
[legend]

List of all members.

Public Member Functions

virtual bool dataRateIsValid () const =0
 true if dataRate can be calculated. False if something is missing.
virtual unsigned int getBitCapacityFractional (wns::simulator::Time duration) const =0
 calculate capacity[bits] for an arbitrary duration
virtual double getBitsPerSymbol () const =0
 bit rate per OFDM symbol
virtual Coding getCoding () const =0
 access method for the coding
virtual double getDataRate () const =0
 datarate in [bits per second]
virtual double getMI2PER (const double mib, unsigned int bits) const =0
 PER = f(MIB,bits), blockLength bits (=payload[net], not CWL[gross]).
virtual wns::Ratio getMIB2SINR (const double &mib) const =0
 SINR = f(MIB).
virtual Modulation getModulation () const =0
 access method for the modulation
virtual double getSINR2MI (const wns::Ratio &sinr) const =0
 MI = f(SINR) (mutual information).
virtual double getSINR2MIB (const wns::Ratio &sinr) const =0
 MIB = f(SINR) (mutual information per bit, [0..1]).
virtual double getSINR2PER (const wns::Ratio &sinr, unsigned int bits) const =0
 PER = f(SINR,bits), blockLength bits (=payload[net], not CWL[gross]).
virtual std::string getString () const =0
 access method for the modulation&coding (string)
virtual bool isValid () const =0
 true if PhyMode is set (not undefined)
virtual bool nameMatches (const std::string &name) const =0
 true, if string matches to the PhyMode
virtual ~PhyModeInterface ()

Private Member Functions

virtual unsigned int toInt () const =0
 Convert PHY Mode (M&C) to one int (used for ordering).

Friends

bool operator!= (const PhyModeInterface &p1, const PhyModeInterface &p2)
bool operator< (const PhyModeInterface &p1, const PhyModeInterface &p2)
 operator< used for sorting/ordering in maps,registries. This does not mean "better" PhyMode in the sense of bitrate or robustness. For that purpose, use PhyModeIsBetter(a,b)
bool operator== (const PhyModeInterface &p1, const PhyModeInterface &p2)
 test PhyModes for equality
bool operator> (const PhyModeInterface &p1, const PhyModeInterface &p2)
bool PhyModeIsBetter (const PhyModeInterface &p1, const PhyModeInterface &p2)
 Compares PhyModes in terms of bits per modulation symbol.


Detailed Description

Definition at line 52 of file PhyModeInterface.hpp.


Constructor & Destructor Documentation

virtual wns::service::phy::phymode::PhyModeInterface::~PhyModeInterface (  )  [inline, virtual]

Definition at line 58 of file PhyModeInterface.hpp.


Member Function Documentation

virtual bool wns::service::phy::phymode::PhyModeInterface::dataRateIsValid (  )  const [pure virtual]

Implemented in rise::plmapping::PhyMode.

virtual unsigned int wns::service::phy::phymode::PhyModeInterface::getBitCapacityFractional ( wns::simulator::Time  duration  )  const [pure virtual]

virtual double wns::service::phy::phymode::PhyModeInterface::getBitsPerSymbol (  )  const [pure virtual]

Implemented in rise::plmapping::PhyMode.

virtual Coding wns::service::phy::phymode::PhyModeInterface::getCoding (  )  const [pure virtual]

Implemented in rise::plmapping::PhyMode.

virtual double wns::service::phy::phymode::PhyModeInterface::getDataRate (  )  const [pure virtual]

symbolRate and subCarriersPerSubChannel must be known in advance

Implemented in rise::plmapping::PhyMode.

virtual double wns::service::phy::phymode::PhyModeInterface::getMI2PER ( const double  mib,
unsigned int  bits 
) const [pure virtual]

Implemented in rise::plmapping::PhyMode.

virtual wns::Ratio wns::service::phy::phymode::PhyModeInterface::getMIB2SINR ( const double mib  )  const [pure virtual]

Implemented in rise::plmapping::PhyMode.

virtual Modulation wns::service::phy::phymode::PhyModeInterface::getModulation (  )  const [pure virtual]

Implemented in rise::plmapping::PhyMode.

virtual double wns::service::phy::phymode::PhyModeInterface::getSINR2MI ( const wns::Ratio sinr  )  const [pure virtual]

Implemented in rise::plmapping::PhyMode.

virtual double wns::service::phy::phymode::PhyModeInterface::getSINR2MIB ( const wns::Ratio sinr  )  const [pure virtual]

Implemented in rise::plmapping::PhyMode.

virtual double wns::service::phy::phymode::PhyModeInterface::getSINR2PER ( const wns::Ratio sinr,
unsigned int  bits 
) const [pure virtual]

Implemented in rise::plmapping::PhyMode.

virtual std::string wns::service::phy::phymode::PhyModeInterface::getString (  )  const [pure virtual]

Implemented in rise::plmapping::PhyMode.

virtual bool wns::service::phy::phymode::PhyModeInterface::isValid (  )  const [pure virtual]

Implemented in rise::plmapping::PhyMode.

virtual bool wns::service::phy::phymode::PhyModeInterface::nameMatches ( const std::string &  name  )  const [pure virtual]

Implemented in rise::plmapping::PhyMode.

virtual unsigned int wns::service::phy::phymode::PhyModeInterface::toInt (  )  const [private, pure virtual]

Implemented in rise::plmapping::PhyMode.


Friends And Related Function Documentation

bool operator!= ( const PhyModeInterface p1,
const PhyModeInterface p2 
) [friend]

Definition at line 69 of file PhyModeInterface.hpp.

bool operator< ( const PhyModeInterface p1,
const PhyModeInterface p2 
) [friend]

Definition at line 76 of file PhyModeInterface.hpp.

bool operator== ( const PhyModeInterface p1,
const PhyModeInterface p2 
) [friend]

Definition at line 67 of file PhyModeInterface.hpp.

bool operator> ( const PhyModeInterface p1,
const PhyModeInterface p2 
) [friend]

Definition at line 79 of file PhyModeInterface.hpp.

bool PhyModeIsBetter ( const PhyModeInterface p1,
const PhyModeInterface p2 
) [friend]

Definition at line 83 of file PhyModeInterface.hpp.


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

Generated on Sun May 27 03:33:06 2012 for openWNS by  doxygen 1.5.5