ns3::SatMutualInformationTable Class Reference

Loads a mutual information file and provide query service. More...

#include "satellite-mutual-information-table.h"

+ Inheritance diagram for ns3::SatMutualInformationTable:
+ Collaboration diagram for ns3::SatMutualInformationTable:

Public Member Functions

 SatMutualInformationTable (std::string mutualInformationPath)
 Constructor with initialization parameters. More...
 
virtual ~SatMutualInformationTable ()
 Destructor for SatMutualInformationTable. More...
 
double GetBeta () const
 Get the value of beta. More...
 
double GetNormalizedSymbolInformation (double snirDb) const
 Get the Normalized Symbol Information corresponding to a given SNIR. More...
 
double GetSnirDb (double symbolInformationTarget) const
 Get the SNIR in dB for a given Normalized Symbol Information target. More...
 

Static Public Member Functions

static TypeId GetTypeId ()
 Get the type ID. More...
 

Private Member Functions

virtual void DoDispose ()
 
void Load (std::string mutualInformationPath)
 Load the mutual information. More...
 

Private Attributes

double m_beta
 The adjusting factor beta. More...
 
std::ifstream * m_ifs
 
std::vector< double > m_snirDb
 
std::vector< double > m_symbolInformation
 

Detailed Description

Loads a mutual information file and provide query service.

Definition at line 38 of file satellite-mutual-information-table.h.

Constructor & Destructor Documentation

◆ SatMutualInformationTable()

ns3::SatMutualInformationTable::SatMutualInformationTable ( std::string  mutualInformationPath)

Constructor with initialization parameters.

Parameters
mutualInformationPath

Definition at line 39 of file satellite-mutual-information-table.cc.

References Load().

+ Here is the call graph for this function:

◆ ~SatMutualInformationTable()

ns3::SatMutualInformationTable::~SatMutualInformationTable ( )
virtual

Destructor for SatMutualInformationTable.

Definition at line 46 of file satellite-mutual-information-table.cc.

Member Function Documentation

◆ DoDispose()

void ns3::SatMutualInformationTable::DoDispose ( void  )
privatevirtual

Definition at line 52 of file satellite-mutual-information-table.cc.

References m_ifs, m_snirDb, and m_symbolInformation.

◆ GetBeta()

double ns3::SatMutualInformationTable::GetBeta ( ) const
inline

Get the value of beta.

Definition at line 75 of file satellite-mutual-information-table.h.

References m_beta.

◆ GetNormalizedSymbolInformation()

double ns3::SatMutualInformationTable::GetNormalizedSymbolInformation ( double  snirDb) const

Get the Normalized Symbol Information corresponding to a given SNIR.

Parameters
snirDbSNIR in logarithmic scale
Returns
NormaizedSymbolInformation

Definition at line 87 of file satellite-mutual-information-table.cc.

References ns3::SatUtils::Interpolate(), m_snirDb, and m_symbolInformation.

+ Here is the call graph for this function:

◆ GetSnirDb()

double ns3::SatMutualInformationTable::GetSnirDb ( double  symbolInformationTarget) const

Get the SNIR in dB for a given Normalized Symbol Information target.

Parameters
NormalizedSymbol Information target (0-1)
Returns
Es/No target in dB

Definition at line 145 of file satellite-mutual-information-table.cc.

References ns3::SatUtils::Interpolate(), m_snirDb, and m_symbolInformation.

+ Here is the call graph for this function:

◆ GetTypeId()

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

Get the type ID.

Returns
the object TypeId

Definition at line 74 of file satellite-mutual-information-table.cc.

References m_beta.

◆ Load()

void ns3::SatMutualInformationTable::Load ( std::string  mutualInformationPath)
private

Load the mutual information.

Parameters
mutualInformationPathPath to a mutual information file.

Definition at line 202 of file satellite-mutual-information-table.cc.

References m_ifs, m_snirDb, and m_symbolInformation.

Referenced by SatMutualInformationTable().

+ Here is the caller graph for this function:

Member Data Documentation

◆ m_beta

double ns3::SatMutualInformationTable::m_beta
private

The adjusting factor beta.

Definition at line 96 of file satellite-mutual-information-table.h.

Referenced by GetBeta(), and GetTypeId().

◆ m_ifs

std::ifstream* ns3::SatMutualInformationTable::m_ifs
private

Definition at line 91 of file satellite-mutual-information-table.h.

Referenced by DoDispose(), and Load().

◆ m_snirDb

std::vector<double> ns3::SatMutualInformationTable::m_snirDb
private

◆ m_symbolInformation

std::vector<double> ns3::SatMutualInformationTable::m_symbolInformation
private

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