INET Framework for OMNeT++/OMNEST
inet::physicallayer::Ieee80211EnumeratedBand Class Reference

#include <Ieee80211Band.h>

Inheritance diagram for inet::physicallayer::Ieee80211EnumeratedBand:
inet::physicallayer::Ieee80211BandBase inet::physicallayer::IIeee80211Band inet::IPrintableObject

Public Member Functions

 Ieee80211EnumeratedBand (const char *name, const std::vector< Hz > centers)
 
virtual int getNumChannels () const override
 
virtual Hz getCenterFrequency (int channelNumber) const override
 
virtual Hz getSpacing () const override
 
- Public Member Functions inherited from inet::physicallayer::Ieee80211BandBase
 Ieee80211BandBase (const char *name)
 
virtual const char * getName () const override
 
- Public Member Functions inherited from inet::physicallayer::IIeee80211Band
virtual std::ostream & printToStream (std::ostream &stream, int level, int evFlags=0) const override
 Prints this object to the provided output stream. More...
 
- Public Member Functions inherited from inet::IPrintableObject
virtual ~IPrintableObject ()
 
virtual std::string printToString () const
 
virtual std::string printToString (int level, int evFlags=0) const
 
virtual std::string getInfoStringRepresentation (int evFlags=0) const
 
virtual std::string getDetailStringRepresentation (int evFlags=0) const
 
virtual std::string getDebugStringRepresentation (int evFlags=0) const
 
virtual std::string getTraceStringRepresentation (int evFlags=0) const
 
virtual std::string getCompleteStringRepresentation (int evFlags=0) const
 

Protected Attributes

std::vector< Hzcenters
 
- Protected Attributes inherited from inet::physicallayer::Ieee80211BandBase
const char * name
 

Additional Inherited Members

- Public Types inherited from inet::IPrintableObject
enum  PrintLevel {
  PRINT_LEVEL_TRACE, PRINT_LEVEL_DEBUG, PRINT_LEVEL_DETAIL, PRINT_LEVEL_INFO,
  PRINT_LEVEL_COMPLETE = INT_MIN
}
 
enum  PrintFlag { PRINT_FLAG_FORMATTED = (1 << 0), PRINT_FLAG_MULTILINE = (1 << 1) }
 

Constructor & Destructor Documentation

◆ Ieee80211EnumeratedBand()

inet::physicallayer::Ieee80211EnumeratedBand::Ieee80211EnumeratedBand ( const char *  name,
const std::vector< Hz centers 
)
19  :
22 {
23 }

Member Function Documentation

◆ getCenterFrequency()

Hz inet::physicallayer::Ieee80211EnumeratedBand::getCenterFrequency ( int  channelNumber) const
overridevirtual

Implements inet::physicallayer::IIeee80211Band.

26 {
27  if (channelNumber < 0 || channelNumber >= (int)centers.size())
28  throw cRuntimeError("Invalid channel number: %d", channelNumber);
29  return centers[channelNumber];
30 }

◆ getNumChannels()

virtual int inet::physicallayer::Ieee80211EnumeratedBand::getNumChannels ( ) const
inlineoverridevirtual

Implements inet::physicallayer::IIeee80211Band.

49 { return centers.size(); }

◆ getSpacing()

virtual Hz inet::physicallayer::Ieee80211EnumeratedBand::getSpacing ( ) const
inlineoverridevirtual

Implements inet::physicallayer::IIeee80211Band.

51 { return Hz(NaN); }

Member Data Documentation

◆ centers

std::vector<Hz> inet::physicallayer::Ieee80211EnumeratedBand::centers
protected

Referenced by getCenterFrequency().


The documentation for this class was generated from the following files:
inet::units::units::Hz
pow< s, -1 > Hz
Definition: Units.h:935
inet::physicallayer::Ieee80211BandBase::Ieee80211BandBase
Ieee80211BandBase(const char *name)
Definition: Ieee80211Band.cc:14
inet::physicallayer::Ieee80211EnumeratedBand::centers
std::vector< Hz > centers
Definition: Ieee80211Band.h:44
NaN
#define NaN
Definition: INETMath.h:91
inet::physicallayer::Ieee80211BandBase::name
const char * name
Definition: Ieee80211Band.h:33