ns3::SatMarkovConf Class Reference

A configuration class for three state Markov model. More...

#include "satellite-markov-conf.h"

+ Inheritance diagram for ns3::SatMarkovConf:
+ Collaboration diagram for ns3::SatMarkovConf:

Public Types

enum  MarkovFaderType_t { LOO_FADER , RAYLEIGH_FADER }
 Possible types of Markov state faders. More...
 

Public Member Functions

 SatMarkovConf ()
 Constructor. More...
 
 ~SatMarkovConf ()
 Destructor. More...
 
bool AreDecibelsUsed ()
 Function for getting whether the calculations should return the fading value in decibels or not. More...
 
void DoDispose ()
 Do needed dispose actions. More...
 
Time GetCooldownPeriod ()
 Function for returning the cooldown period. More...
 
std::vector< std::vector< double > > GetElevationProbabilities (uint32_t set)
 Function for returning the probabilities. More...
 
SatMarkovConf::MarkovFaderType_t GetFaderType ()
 Function for returning the selected fader type. More...
 
uint32_t GetInitialState ()
 Function for returning the initial state. More...
 
Ptr< SatLooConfGetLooConf ()
 Function for returning the Loo's model configuration. More...
 
double GetMinimumPositionChange ()
 Function for returning the minimum position change distance. More...
 
uint32_t GetNumOfSets ()
 Function for returning the number of parameter sets. More...
 
uint32_t GetProbabilitySetID (double elevation)
 Function for returning the parameter set. More...
 
Ptr< SatRayleighConfGetRayleighConf ()
 Function for returning the Loo's model configuration. More...
 
uint32_t GetStateCount ()
 Function for returning the number of states. More...
 

Static Public Member Functions

static TypeId GetTypeId (void)
 NS-3 function for type id. More...
 

Static Public Attributes

static const uint32_t DEFAULT_ELEVATION_COUNT = 1
 Default elevation count. More...
 
static const uint32_t DEFAULT_STATE_COUNT = 3
 Default state count. More...
 

Private Member Functions

void Reset ()
 Clear used variables. More...
 

Private Attributes

Time m_cooldownPeriodLength
 Cooldown period lengthin seconds. More...
 
uint32_t m_elevationCount
 Number of parameter sets. More...
 
SatMarkovConf::MarkovFaderType_t m_faderType
 Selected fader type. More...
 
std::vector< double > m_initialProbabilities
 Initial Markov state probabilities. More...
 
Ptr< SatLooConfm_looConf
 Loo configuration. More...
 
std::map< double, uint32_t > m_markovElevations
 Markov elevations. More...
 
std::vector< std::vector< std::vector< double > > > m_markovProbabilities
 Markov state change probabilities. More...
 
double m_minimumPositionChangeInMeters
 Minimum position change in meters. More...
 
Ptr< SatRayleighConfm_rayleighConf
 Rayleigh configuration. More...
 
uint32_t m_stateCount
 Number of states. More...
 
bool m_useDecibels
 Defines whether the calculations should return the fading value in decibels or not. More...
 

Detailed Description

A configuration class for three state Markov model.

This class provides configuration parameters for the Markov-based fading. It also acts as an interface for the configurations used by the different faders in Markov-based fading.

Definition at line 45 of file satellite-markov-conf.h.

Member Enumeration Documentation

◆ MarkovFaderType_t

Possible types of Markov state faders.

Enumerator
LOO_FADER 
RAYLEIGH_FADER 

Definition at line 51 of file satellite-markov-conf.h.

Constructor & Destructor Documentation

◆ SatMarkovConf()

◆ ~SatMarkovConf()

ns3::SatMarkovConf::~SatMarkovConf ( )

Destructor.

Definition at line 144 of file satellite-markov-conf.cc.

References Reset().

+ Here is the call graph for this function:

Member Function Documentation

◆ AreDecibelsUsed()

bool ns3::SatMarkovConf::AreDecibelsUsed ( )

Function for getting whether the calculations should return the fading value in decibels or not.

Returns
are decibels used or not

Definition at line 313 of file satellite-markov-conf.cc.

References m_useDecibels.

◆ DoDispose()

void ns3::SatMarkovConf::DoDispose ( void  )

Do needed dispose actions.

Definition at line 172 of file satellite-markov-conf.cc.

References Reset().

+ Here is the call graph for this function:

◆ GetCooldownPeriod()

Time ns3::SatMarkovConf::GetCooldownPeriod ( )

Function for returning the cooldown period.

Returns
cooldown period

Definition at line 232 of file satellite-markov-conf.cc.

References m_cooldownPeriodLength.

◆ GetElevationProbabilities()

std::vector< std::vector< double > > ns3::SatMarkovConf::GetElevationProbabilities ( uint32_t  set)

Function for returning the probabilities.

Parameters
setparameter set
Returns
probabilities

Definition at line 181 of file satellite-markov-conf.cc.

References m_elevationCount, and m_markovProbabilities.

◆ GetFaderType()

SatMarkovConf::MarkovFaderType_t ns3::SatMarkovConf::GetFaderType ( )

Function for returning the selected fader type.

Returns
selected fader type

Definition at line 305 of file satellite-markov-conf.cc.

References m_faderType.

◆ GetInitialState()

uint32_t ns3::SatMarkovConf::GetInitialState ( )

Function for returning the initial state.

Returns
initial state

Definition at line 256 of file satellite-markov-conf.cc.

References m_initialProbabilities, and m_stateCount.

◆ GetLooConf()

Ptr< SatLooConf > ns3::SatMarkovConf::GetLooConf ( )

Function for returning the Loo's model configuration.

Returns
Loo's model configuration

Definition at line 289 of file satellite-markov-conf.cc.

References m_looConf.

◆ GetMinimumPositionChange()

double ns3::SatMarkovConf::GetMinimumPositionChange ( )

Function for returning the minimum position change distance.

Returns
minimum position change distance value

Definition at line 240 of file satellite-markov-conf.cc.

References m_minimumPositionChangeInMeters.

◆ GetNumOfSets()

uint32_t ns3::SatMarkovConf::GetNumOfSets ( )

Function for returning the number of parameter sets.

Returns
number of parameter sets

Definition at line 248 of file satellite-markov-conf.cc.

References m_markovElevations.

◆ GetProbabilitySetID()

uint32_t ns3::SatMarkovConf::GetProbabilitySetID ( double  elevation)

Function for returning the parameter set.

Parameters
elevationelevation
Returns
parameter set

elevation angle can never be this large

Definition at line 194 of file satellite-markov-conf.cc.

References m_markovElevations.

◆ GetRayleighConf()

Ptr< SatRayleighConf > ns3::SatMarkovConf::GetRayleighConf ( )

Function for returning the Loo's model configuration.

Returns
Loo's model configuration

Definition at line 297 of file satellite-markov-conf.cc.

References m_rayleighConf.

◆ GetStateCount()

uint32_t ns3::SatMarkovConf::GetStateCount ( )

Function for returning the number of states.

Returns
number of states

Definition at line 224 of file satellite-markov-conf.cc.

References m_stateCount.

◆ GetTypeId()

TypeId ns3::SatMarkovConf::GetTypeId ( void  )
static

◆ Reset()

void ns3::SatMarkovConf::Reset ( void  )
private

Clear used variables.

Definition at line 152 of file satellite-markov-conf.cc.

References m_elevationCount, m_initialProbabilities, m_looConf, m_markovElevations, m_markovProbabilities, m_rayleighConf, and m_stateCount.

Referenced by ~SatMarkovConf(), and DoDispose().

+ Here is the caller graph for this function:

Member Data Documentation

◆ DEFAULT_ELEVATION_COUNT

const uint32_t ns3::SatMarkovConf::DEFAULT_ELEVATION_COUNT = 1
static

Default elevation count.

Definition at line 60 of file satellite-markov-conf.h.

Referenced by ns3::SatLooConf::GetTypeId(), GetTypeId(), and ns3::SatRayleighConf::GetTypeId().

◆ DEFAULT_STATE_COUNT

const uint32_t ns3::SatMarkovConf::DEFAULT_STATE_COUNT = 3
static

Default state count.

Definition at line 65 of file satellite-markov-conf.h.

Referenced by ns3::SatLooConf::GetTypeId(), GetTypeId(), and ns3::SatRayleighConf::GetTypeId().

◆ m_cooldownPeriodLength

Time ns3::SatMarkovConf::m_cooldownPeriodLength
private

Cooldown period lengthin seconds.

Definition at line 190 of file satellite-markov-conf.h.

Referenced by GetCooldownPeriod(), and GetTypeId().

◆ m_elevationCount

uint32_t ns3::SatMarkovConf::m_elevationCount
private

Number of parameter sets.

Definition at line 160 of file satellite-markov-conf.h.

Referenced by SatMarkovConf(), GetElevationProbabilities(), GetTypeId(), and Reset().

◆ m_faderType

SatMarkovConf::MarkovFaderType_t ns3::SatMarkovConf::m_faderType
private

Selected fader type.

Definition at line 210 of file satellite-markov-conf.h.

Referenced by GetFaderType().

◆ m_initialProbabilities

std::vector<double> ns3::SatMarkovConf::m_initialProbabilities
private

Initial Markov state probabilities.

Definition at line 175 of file satellite-markov-conf.h.

Referenced by SatMarkovConf(), GetInitialState(), and Reset().

◆ m_looConf

Ptr<SatLooConf> ns3::SatMarkovConf::m_looConf
private

Loo configuration.

Definition at line 200 of file satellite-markov-conf.h.

Referenced by SatMarkovConf(), GetLooConf(), and Reset().

◆ m_markovElevations

std::map<double, uint32_t> ns3::SatMarkovConf::m_markovElevations
private

Markov elevations.

Definition at line 180 of file satellite-markov-conf.h.

Referenced by SatMarkovConf(), GetNumOfSets(), GetProbabilitySetID(), and Reset().

◆ m_markovProbabilities

std::vector<std::vector<std::vector<double> > > ns3::SatMarkovConf::m_markovProbabilities
private

Markov state change probabilities.

Definition at line 170 of file satellite-markov-conf.h.

Referenced by SatMarkovConf(), GetElevationProbabilities(), and Reset().

◆ m_minimumPositionChangeInMeters

double ns3::SatMarkovConf::m_minimumPositionChangeInMeters
private

Minimum position change in meters.

Definition at line 185 of file satellite-markov-conf.h.

Referenced by GetMinimumPositionChange(), and GetTypeId().

◆ m_rayleighConf

Ptr<SatRayleighConf> ns3::SatMarkovConf::m_rayleighConf
private

Rayleigh configuration.

Definition at line 205 of file satellite-markov-conf.h.

Referenced by SatMarkovConf(), GetRayleighConf(), and Reset().

◆ m_stateCount

uint32_t ns3::SatMarkovConf::m_stateCount
private

Number of states.

Definition at line 165 of file satellite-markov-conf.h.

Referenced by SatMarkovConf(), GetInitialState(), GetStateCount(), GetTypeId(), and Reset().

◆ m_useDecibels

bool ns3::SatMarkovConf::m_useDecibels
private

Defines whether the calculations should return the fading value in decibels or not.

Definition at line 195 of file satellite-markov-conf.h.

Referenced by AreDecibelsUsed(), and GetTypeId().


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