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

#include <Ieee80211HRDSSSMode.h>

Inheritance diagram for inet::physicallayer::Ieee80211HrDsssPreambleMode:
inet::physicallayer::IIeee80211PreambleMode inet::physicallayer::IPrintableObject

Public Member Functions

 Ieee80211HrDsssPreambleMode (const Ieee80211HrDsssPreambleType preambleType)
 
Ieee80211HrDsssPreambleType getPreambleType () const
 
int getSyncBitLength () const
 
int getSFDBitLength () const
 
int getBitLength () const
 
virtual bps getNetBitrate () const
 
virtual bps getGrossBitrate () const
 
virtual const simtime_t getDuration () const override
 
virtual const DBPSKModulationgetModulation () const
 
- Public Member Functions inherited from inet::physicallayer::IPrintableObject
virtual ~IPrintableObject ()
 
virtual std::ostream & printToStream (std::ostream &stream, int level) const
 Prints this object to the provided output stream. More...
 
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

const Ieee80211HrDsssPreambleType preambleType
 

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
}
 

Constructor & Destructor Documentation

inet::physicallayer::Ieee80211HrDsssPreambleMode::Ieee80211HrDsssPreambleMode ( const Ieee80211HrDsssPreambleType  preambleType)
24  :
26 {
27 }
const Ieee80211HrDsssPreambleType preambleType
Definition: Ieee80211HRDSSSMode.h:37

Member Function Documentation

int inet::physicallayer::Ieee80211HrDsssPreambleMode::getBitLength ( ) const
inline
46 { return getSyncBitLength() + getSFDBitLength(); }
int getSyncBitLength() const
Definition: Ieee80211HRDSSSMode.h:44
int getSFDBitLength() const
Definition: Ieee80211HRDSSSMode.h:45
virtual const simtime_t inet::physicallayer::Ieee80211HrDsssPreambleMode::getDuration ( ) const
inlineoverridevirtual

Implements inet::physicallayer::IIeee80211PreambleMode.

Referenced by inet::physicallayer::Ieee80211HrDsssMode::getDuration(), and inet::physicallayer::Ieee80211HrDsssMode::getPreambleLength().

50 { return getBitLength() / getNetBitrate().get(); }
const value_type & get() const
Definition: Units.h:89
virtual bps getNetBitrate() const
Definition: Ieee80211HRDSSSMode.h:48
int getBitLength() const
Definition: Ieee80211HRDSSSMode.h:46
virtual bps inet::physicallayer::Ieee80211HrDsssPreambleMode::getGrossBitrate ( ) const
inlinevirtual
49 { return getNetBitrate(); }
virtual bps getNetBitrate() const
Definition: Ieee80211HRDSSSMode.h:48
virtual const DBPSKModulation* inet::physicallayer::Ieee80211HrDsssPreambleMode::getModulation ( ) const
inlinevirtual
51 { return &DBPSKModulation::singleton; }
static const DBPSKModulation singleton
Definition: DBPSKModulation.h:30
virtual bps inet::physicallayer::Ieee80211HrDsssPreambleMode::getNetBitrate ( ) const
inlinevirtual
48 { return Mbps(1); }
scale< bps, 1, 1000000 > Mbps
Definition: Units.h:987
Ieee80211HrDsssPreambleType inet::physicallayer::Ieee80211HrDsssPreambleMode::getPreambleType ( ) const
inline

Referenced by inet::physicallayer::Ieee80211HrDsssMode::getPhyRxStartDelay().

42 { return preambleType; }
const Ieee80211HrDsssPreambleType preambleType
Definition: Ieee80211HRDSSSMode.h:37
int inet::physicallayer::Ieee80211HrDsssPreambleMode::getSFDBitLength ( ) const
inline
45 { return 16; }
int inet::physicallayer::Ieee80211HrDsssPreambleMode::getSyncBitLength ( ) const
inline
44 { return preambleType == IEEE80211_HRDSSS_PREAMBLE_TYPE_SHORT ? 72 : 128; }
const Ieee80211HrDsssPreambleType preambleType
Definition: Ieee80211HRDSSSMode.h:37

Member Data Documentation

const Ieee80211HrDsssPreambleType inet::physicallayer::Ieee80211HrDsssPreambleMode::preambleType
protected

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