A Discrete-Event Network Simulator
API
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
ns3::InterferenceHelper Class Reference

handles interference calculations More...

#include <interference-helper.h>

Classes

class  Event
 
class  NiChange
 
struct  SnrPer
 

Public Member Functions

Ptr< InterferenceHelper::EventAdd (uint32_t size, WifiMode payloadMode, enum WifiPreamble preamble, Time duration, double rxPower)
 
struct InterferenceHelper::SnrPer CalculateSnrPer (Ptr< InterferenceHelper::Event > event)
 
void EraseEvents (void)
 
Time GetEnergyDuration (double energyW)
 
Ptr< ErrorRateModelGetErrorRateModel (void) const
 
double GetNoiseFigure (void) const
 
void NotifyRxEnd ()
 
void NotifyRxStart ()
 
void SetErrorRateModel (Ptr< ErrorRateModel > rate)
 
void SetNoiseFigure (double value)
 

Private Types

typedef std::list< Ptr< Event > > Events
 
typedef std::vector< NiChangeNiChanges
 

Private Member Functions

 InterferenceHelper (const InterferenceHelper &o)
 
void AddNiChangeEvent (NiChange change)
 
void AppendEvent (Ptr< Event > event)
 
double CalculateChunkSuccessRate (double snir, Time delay, WifiMode mode) const
 
double CalculateNoiseInterferenceW (Ptr< Event > event, NiChanges *ni) const
 
double CalculatePer (Ptr< const Event > event, NiChanges *ni) const
 
double CalculateSnr (double signal, double noiseInterference, WifiMode mode) const
 
NiChanges::iterator GetPosition (Time moment)
 Returns an iterator to the first nichange, which is later than moment.
 
InterferenceHelperoperator= (const InterferenceHelper &o)
 

Private Attributes

Ptr< ErrorRateModelm_errorRateModel
 
double m_firstPower
 
NiChanges m_niChanges
 Experimental: needed for energy duration calculation.
 
double m_noiseFigure
 
bool m_rxing
 

Detailed Description

handles interference calculations

Definition at line 40 of file interference-helper.h.

Member Function Documentation

Time ns3::InterferenceHelper::GetEnergyDuration ( double  energyW)
Parameters
energyWthe minimum energy (W) requested
Returns
the expected amount of time the observed energy on the medium will be higher than the requested threshold.

Definition at line 170 of file interference-helper.cc.

References m_niChanges, ns3::MicroSeconds(), and ns3::Simulator::Now().

Member Data Documentation

double ns3::InterferenceHelper::m_noiseFigure
private

noise figure (linear)

Definition at line 122 of file interference-helper.h.


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