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

#include <Ieee80211ERPOFDMMode.h>

Inheritance diagram for inet::physicallayer::Ieee80211ErpOfdmMode:
inet::physicallayer::Ieee80211OFDMMode inet::physicallayer::Ieee80211ModeBase inet::physicallayer::Ieee80211OFDMTimingRelatedParametersBase inet::physicallayer::IIeee80211Mode inet::physicallayer::IPrintableObject

Public Member Functions

 Ieee80211ErpOfdmMode (const char *name, bool isErpOnly, const Ieee80211OFDMPreambleMode *preambleMode, const Ieee80211OFDMSignalMode *signalMode, const Ieee80211OFDMDataMode *dataMode)
 
virtual std::ostream & printToStream (std::ostream &stream, int level) const override
 Prints this object to the provided output stream. More...
 
virtual const simtime_t getSlotTime () const override
 
const simtime_t getRifsTime () const override
 
virtual const simtime_t getSifsTime () const override
 
virtual const simtime_t getDuration (int dataBitLength) const override
 
- Public Member Functions inherited from inet::physicallayer::Ieee80211OFDMMode
 Ieee80211OFDMMode (const char *name, const Ieee80211OFDMPreambleMode *preambleMode, const Ieee80211OFDMSignalMode *signalMode, const Ieee80211OFDMDataMode *dataMode, Hz channelSpacing, Hz bandwidth)
 
virtual const Ieee80211OFDMPreambleModegetPreambleMode () const override
 
virtual const Ieee80211OFDMSignalModegetHeaderMode () const override
 
virtual const Ieee80211OFDMDataModegetDataMode () const override
 
virtual const Ieee80211OFDMSignalModegetSignalMode () const
 
virtual const simtime_t getCcaTime () const override
 
virtual const simtime_t getPhyRxStartDelay () const override
 
virtual const simtime_t getRxTxTurnaroundTime () const override
 
virtual const simtime_t getPreambleLength () const override
 
virtual const simtime_t getPlcpHeaderLength () const override
 
virtual int getMpduMaxLength () const override
 
- Public Member Functions inherited from inet::physicallayer::Ieee80211ModeBase
 Ieee80211ModeBase (const char *name)
 
virtual const char * getName () const override
 
- Public Member Functions inherited from inet::physicallayer::IIeee80211Mode
IIeee80211PreambleMode_getPreambleMode () const
 
IIeee80211HeaderMode_getHeaderMode () const
 
IIeee80211DataMode_getDataMode () const
 
- Public Member Functions inherited from inet::physicallayer::IPrintableObject
virtual ~IPrintableObject ()
 
virtual std::string getInfoStringRepresentation () const
 
virtual std::string getDetailStringRepresentation () const
 
virtual std::string getDebugStringRepresentation () const
 
virtual std::string getTraceStringRepresentation () const
 
virtual std::string getCompleteStringRepresentation () const
 

Protected Attributes

bool isErpOnly
 
- Protected Attributes inherited from inet::physicallayer::Ieee80211OFDMMode
const Ieee80211OFDMPreambleModepreambleMode
 
const Ieee80211OFDMSignalModesignalMode
 
const Ieee80211OFDMDataModedataMode
 

Additional Inherited Members

- Public Types inherited from inet::physicallayer::IPrintableObject
enum  PrintLevel {
  PRINT_LEVEL_TRACE, PRINT_LEVEL_DEBUG, PRINT_LEVEL_DETAIL, PRINT_LEVEL_INFO,
  PRINT_LEVEL_COMPLETE = INT_MIN
}
 
- Protected Member Functions inherited from inet::physicallayer::Ieee80211OFDMMode
virtual int getLegacyCwMin () const override
 
virtual int getLegacyCwMax () const override
 

Constructor & Destructor Documentation

inet::physicallayer::Ieee80211ErpOfdmMode::Ieee80211ErpOfdmMode ( const char *  name,
bool  isErpOnly,
const Ieee80211OFDMPreambleMode preambleMode,
const Ieee80211OFDMSignalMode signalMode,
const Ieee80211OFDMDataMode dataMode 
)
23  :
24  Ieee80211OFDMMode(name, preambleMode, signalMode, dataMode, MHz(20), MHz(20)), // review the channel spacing
26 {
27 
28 }
const Ieee80211OFDMDataMode * dataMode
Definition: Ieee80211OFDMMode.h:139
std::string name
Definition: Ieee80211ModeBase.h:29
const Ieee80211OFDMSignalMode * signalMode
Definition: Ieee80211OFDMMode.h:138
mega< Hz >::type MHz
Definition: Units.h:906
Ieee80211OFDMMode(const char *name, const Ieee80211OFDMPreambleMode *preambleMode, const Ieee80211OFDMSignalMode *signalMode, const Ieee80211OFDMDataMode *dataMode, Hz channelSpacing, Hz bandwidth)
Definition: Ieee80211OFDMMode.cc:37
bool isErpOnly
Definition: Ieee80211ERPOFDMMode.h:30
const Ieee80211OFDMPreambleMode * preambleMode
Definition: Ieee80211OFDMMode.h:137

Member Function Documentation

virtual const simtime_t inet::physicallayer::Ieee80211ErpOfdmMode::getDuration ( int  dataBitLength) const
inlineoverridevirtual

Reimplemented from inet::physicallayer::Ieee80211OFDMMode.

45 { return preambleMode->getDuration() + signalMode->getDuration() + dataMode->getDuration(dataBitLength) + 6E-6; }
const Ieee80211OFDMDataMode * dataMode
Definition: Ieee80211OFDMMode.h:139
virtual const simtime_t getDuration() const override
Definition: Ieee80211OFDMMode.h:104
virtual const simtime_t getDuration(int dataBitLength) const override
Definition: Ieee80211OFDMMode.cc:185
const Ieee80211OFDMSignalMode * signalMode
Definition: Ieee80211OFDMMode.h:138
virtual const simtime_t getDuration() const override
Definition: Ieee80211OFDMMode.h:82
const Ieee80211OFDMPreambleMode * preambleMode
Definition: Ieee80211OFDMMode.h:137
const simtime_t inet::physicallayer::Ieee80211ErpOfdmMode::getRifsTime ( ) const
overridevirtual

Reimplemented from inet::physicallayer::Ieee80211OFDMMode.

49 {
50  throw cRuntimeError("Undefined physical layer parameter");
51  return SIMTIME_ZERO;
52 }
virtual const simtime_t inet::physicallayer::Ieee80211ErpOfdmMode::getSifsTime ( ) const
inlineoverridevirtual

Reimplemented from inet::physicallayer::Ieee80211OFDMMode.

42 { return 10E-6; }
virtual const simtime_t inet::physicallayer::Ieee80211ErpOfdmMode::getSlotTime ( ) const
inlineoverridevirtual

Reimplemented from inet::physicallayer::Ieee80211OFDMMode.

39 { return isErpOnly ? 9E-6 : 20E-6; }
bool isErpOnly
Definition: Ieee80211ERPOFDMMode.h:30
virtual std::ostream& inet::physicallayer::Ieee80211ErpOfdmMode::printToStream ( std::ostream &  stream,
int  level 
) const
inlineoverridevirtual

Prints this object to the provided output stream.

Function calls to operator<< with pointers or references either const or not are all forwarded to this function.

Reimplemented from inet::physicallayer::Ieee80211OFDMMode.

35 { return stream << "Ieee80211ErpOfdmMode"; }

Member Data Documentation

bool inet::physicallayer::Ieee80211ErpOfdmMode::isErpOnly
protected

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