Loading...
Searching...
No Matches
ns3::SatPhyRxCarrierConf Class Reference

Information of beam users liken UTs and their users. More...

#include "satellite-phy-rx-carrier-conf.h"

Inheritance diagram for ns3::SatPhyRxCarrierConf:
Collaboration diagram for ns3::SatPhyRxCarrierConf:

Public Types

typedef Callback< double > AdditionalInterferenceCallback
 Callback to get additional interference from PHY layer.
enum  ErrorModel { EM_NONE , EM_CONSTANT , EM_AVI }
 Error model enum. More...
enum  InterferenceEliminationModel { SIC_NONE , SIC_PERFECT , SIC_RESIDUAL }
 Interference cancelation model enum. More...
enum  InterferenceModel { IF_PER_PACKET , IF_PER_FRAGMENT , IF_TRACE , IF_CONSTANT }
 Interference model enum. More...
enum  RandomAccessCollisionModel { RA_COLLISION_NOT_DEFINED , RA_COLLISION_ALWAYS_DROP_ALL_COLLIDING_PACKETS , RA_COLLISION_CHECK_AGAINST_SINR , RA_CONSTANT_COLLISION_PROBABILITY }
 Random access collision model enum. More...
enum  RxMode { TRANSPARENT , NORMAL }
 RX mode enum. More...

Public Member Functions

 SatPhyRxCarrierConf ()
 Constructor for SatPhyRxCarrierConf.
 SatPhyRxCarrierConf (RxCarrierCreateParams_s params)
 Default constructor for SatPhyRxCarrierConf.
virtual ~SatPhyRxCarrierConf ()
 Destructor for SatPhyRxCarrierConf.
virtual void DoDispose ()
 Dispose function.
AdditionalInterferenceCallback GetAdditionalInterferenceCb ()
 Get additional interference callback.
double GetCarrierBandwidthHz (uint32_t carrierId, SatEnums::CarrierBandwidthType_t bandwidthType) const
 Get configured bandwidth.
uint32_t GetCarrierCount () const
 Get the number of configured carriers.
Ptr< SatChannelEstimationErrorContainerGetChannelEstimatorErrorContainer () const
 Get channel estimator container.
SatEnums::ChannelType_t GetChannelType () const
 Get channel type.
double GetConstantDaErrorRate () const
 Get constant error rate for dedicated access.
ErrorModel GetErrorModel () const
 Get configured error model.
double GetExtPowerDensityWhz () const
 Get other system RX noise.
InterferenceEliminationModel GetInterferenceEliminationModel (bool isRandomAccessCarrier) const
 Get configured interference cancelation model.
InterferenceModel GetInterferenceModel (bool isRandomAccessCarrier) const
 Get configured interference model.
SatEnums::RegenerationMode_t GetLinkRegenerationMode () const
 Get link regeneration mode.
Ptr< SatLinkResultsGetLinkResults () const
 Get configured link results.
uint32_t GetRandomAccessAverageNormalizedOfferedLoadMeasurementWindowSize () const
 Get random access average normalized offered load measurement window size.
RandomAccessCollisionModel GetRandomAccessCollisionModel () const
 Get random access collision model.
double GetRandomAccessConstantErrorRate () const
 Get random access constant error rate.
SatEnums::RandomAccessModel_t GetRandomAccessModel () const
double GetRxAciInterferenceWrtNoiseFactor () const
 Get adjacent channel interference wrt noise (factor).
RxMode GetRxMode () const
 Get configured RX mode.
double GetRxTemperatureK () const
 Get configured RX noise temperature.
bool IsIntfOutputTraceEnabled () const
 Is interference output trace enabled.
bool IsRandomAccessDynamicLoadControlEnabled () const
 Function for checking if random access dynamic load control is enabled.
void SetAdditionalInterferenceCb (AdditionalInterferenceCallback additionalInterferenceCallback)
 Set additional interference callback.
void SetLinkResults (Ptr< SatLinkResults > linkResults)
 Set link results for the carrier configuration, either DVB-RCS2 or DVB-S2.

Static Public Member Functions

static TypeId GetTypeId (void)
 Get the type ID.

Private Attributes

AdditionalInterferenceCallback m_additionalInterferenceCallback
SatTypedefs::CarrierBandwidthConverter_t m_carrierBandwidthConverter
uint32_t m_carrierCount
Ptr< SatChannelEstimationErrorContainerm_channelEstimationError
SatEnums::ChannelType_t m_channelType
double m_daConstantErrorRate
InterferenceModel m_daIfModel
bool m_enableIntfOutputTrace
bool m_enableRandomAccessDynamicLoadControl
ErrorModel m_errorModel
SatEnums::RegenerationMode_t m_linkRegenerationMode
Ptr< SatLinkResultsm_linkResults
RandomAccessCollisionModel m_raCollisionModel
double m_raConstantErrorRate
InterferenceEliminationModel m_raIfEliminateModel
InterferenceModel m_raIfModel
uint32_t m_randomAccessAverageNormalizedOfferedLoadMeasurementWindowSize
SatEnums::RandomAccessModel_t m_randomAccessModel
double m_rxAciIfWrtNoiseFactor
double m_rxExtNoiseDensityWhz
RxMode m_rxMode
double m_rxTemperatureK

Detailed Description

Information of beam users liken UTs and their users.

Used e.g. when creating beams.

Definition at line 45 of file satellite-phy-rx-carrier-conf.h.

Member Typedef Documentation

◆ AdditionalInterferenceCallback

Callback to get additional interference from PHY layer.

Returns
Interference to add

Definition at line 52 of file satellite-phy-rx-carrier-conf.h.

Member Enumeration Documentation

◆ ErrorModel

Error model enum.

Enumerator
EM_NONE 
EM_CONSTANT 
EM_AVI 

Definition at line 69 of file satellite-phy-rx-carrier-conf.h.

◆ InterferenceEliminationModel

Interference cancelation model enum.

Enumerator
SIC_NONE 
SIC_PERFECT 
SIC_RESIDUAL 

Definition at line 90 of file satellite-phy-rx-carrier-conf.h.

◆ InterferenceModel

Interference model enum.

Enumerator
IF_PER_PACKET 
IF_PER_FRAGMENT 
IF_TRACE 
IF_CONSTANT 

Definition at line 79 of file satellite-phy-rx-carrier-conf.h.

◆ RandomAccessCollisionModel

Random access collision model enum.

Enumerator
RA_COLLISION_NOT_DEFINED 
RA_COLLISION_ALWAYS_DROP_ALL_COLLIDING_PACKETS 
RA_COLLISION_CHECK_AGAINST_SINR 
RA_CONSTANT_COLLISION_PROBABILITY 

Definition at line 100 of file satellite-phy-rx-carrier-conf.h.

◆ RxMode

RX mode enum.

TRANSPARENT Only beam Id is checked for receiving NORMAL Beam Id and valid address (own or broadcast) is checked for receiving

Enumerator
TRANSPARENT 
NORMAL 

Definition at line 60 of file satellite-phy-rx-carrier-conf.h.

Constructor & Destructor Documentation

◆ SatPhyRxCarrierConf() [1/2]

◆ SatPhyRxCarrierConf() [2/2]

◆ ~SatPhyRxCarrierConf()

virtual ns3::SatPhyRxCarrierConf::~SatPhyRxCarrierConf ( )
inlinevirtual

Destructor for SatPhyRxCarrierConf.

Definition at line 179 of file satellite-phy-rx-carrier-conf.h.

Member Function Documentation

◆ DoDispose()

void ns3::SatPhyRxCarrierConf::DoDispose ( )
virtual

◆ GetAdditionalInterferenceCb()

AdditionalInterferenceCallback ns3::SatPhyRxCarrierConf::GetAdditionalInterferenceCb ( )
inline

Get additional interference callback.

Returns
The additional interference callback

Definition at line 292 of file satellite-phy-rx-carrier-conf.h.

References m_additionalInterferenceCallback.

◆ GetCarrierBandwidthHz()

double ns3::SatPhyRxCarrierConf::GetCarrierBandwidthHz ( uint32_t carrierId,
SatEnums::CarrierBandwidthType_t bandwidthType ) const

Get configured bandwidth.

Parameters
carrierIdId of the carrier
bandwidthTypeType of the bandwidth
Returns
Bandwidth of the requested carrier.

Definition at line 192 of file satellite-phy-rx-carrier-conf.cc.

References m_carrierBandwidthConverter, and m_channelType.

◆ GetCarrierCount()

uint32_t ns3::SatPhyRxCarrierConf::GetCarrierCount ( ) const

Get the number of configured carriers.

Returns
the number of configured carriers

Definition at line 142 of file satellite-phy-rx-carrier-conf.cc.

References m_carrierCount.

◆ GetChannelEstimatorErrorContainer()

Ptr< SatChannelEstimationErrorContainer > ns3::SatPhyRxCarrierConf::GetChannelEstimatorErrorContainer ( ) const

Get channel estimator container.

Returns
channel estimator container

Definition at line 241 of file satellite-phy-rx-carrier-conf.cc.

References m_channelEstimationError.

◆ GetChannelType()

SatEnums::ChannelType_t ns3::SatPhyRxCarrierConf::GetChannelType ( ) const

Get channel type.

Returns
channel type

Definition at line 223 of file satellite-phy-rx-carrier-conf.cc.

References m_channelType.

◆ GetConstantDaErrorRate()

double ns3::SatPhyRxCarrierConf::GetConstantDaErrorRate ( ) const

Get constant error rate for dedicated access.

Returns
configured constant error rate

Definition at line 154 of file satellite-phy-rx-carrier-conf.cc.

References m_daConstantErrorRate.

◆ GetErrorModel()

SatPhyRxCarrierConf::ErrorModel ns3::SatPhyRxCarrierConf::GetErrorModel ( ) const

Get configured error model.

Returns
configured error model

Definition at line 148 of file satellite-phy-rx-carrier-conf.cc.

References m_errorModel.

◆ GetExtPowerDensityWhz()

double ns3::SatPhyRxCarrierConf::GetExtPowerDensityWhz ( ) const

Get other system RX noise.

Returns
other system RX noise

Definition at line 205 of file satellite-phy-rx-carrier-conf.cc.

References m_rxExtNoiseDensityWhz.

◆ GetInterferenceEliminationModel()

SatPhyRxCarrierConf::InterferenceEliminationModel ns3::SatPhyRxCarrierConf::GetInterferenceEliminationModel ( bool isRandomAccessCarrier) const

Get configured interference cancelation model.

Parameters
isRandomAccessCarrierDo we want RA or DA SIC model
Returns
configured interference cancelation model

Definition at line 173 of file satellite-phy-rx-carrier-conf.cc.

References m_raIfEliminateModel, and SIC_NONE.

◆ GetInterferenceModel()

SatPhyRxCarrierConf::InterferenceModel ns3::SatPhyRxCarrierConf::GetInterferenceModel ( bool isRandomAccessCarrier) const

Get configured interference model.

Parameters
isRandomAccessCarrierDo we want RA or DA IF model
Returns
configured interference model

Definition at line 160 of file satellite-phy-rx-carrier-conf.cc.

References m_daIfModel, and m_raIfModel.

◆ GetLinkRegenerationMode()

SatEnums::RegenerationMode_t ns3::SatPhyRxCarrierConf::GetLinkRegenerationMode ( ) const

Get link regeneration mode.

Returns
link regeneration mode

Definition at line 229 of file satellite-phy-rx-carrier-conf.cc.

References m_linkRegenerationMode.

◆ GetLinkResults()

Ptr< SatLinkResults > ns3::SatPhyRxCarrierConf::GetLinkResults ( ) const

Get configured link results.

Returns
configured link results

Definition at line 186 of file satellite-phy-rx-carrier-conf.cc.

References m_linkResults.

◆ GetRandomAccessAverageNormalizedOfferedLoadMeasurementWindowSize()

uint32_t ns3::SatPhyRxCarrierConf::GetRandomAccessAverageNormalizedOfferedLoadMeasurementWindowSize ( ) const

Get random access average normalized offered load measurement window size.

Returns
average normalized offered load measurement window size

Definition at line 266 of file satellite-phy-rx-carrier-conf.cc.

References m_randomAccessAverageNormalizedOfferedLoadMeasurementWindowSize.

◆ GetRandomAccessCollisionModel()

SatPhyRxCarrierConf::RandomAccessCollisionModel ns3::SatPhyRxCarrierConf::GetRandomAccessCollisionModel ( ) const

Get random access collision model.

Returns
random access collision model

Definition at line 247 of file satellite-phy-rx-carrier-conf.cc.

References IF_PER_FRAGMENT, IF_PER_PACKET, m_raCollisionModel, m_raIfModel, and RA_COLLISION_ALWAYS_DROP_ALL_COLLIDING_PACKETS.

◆ GetRandomAccessConstantErrorRate()

double ns3::SatPhyRxCarrierConf::GetRandomAccessConstantErrorRate ( ) const

Get random access constant error rate.

Used if collision model is RA_CONSTANT_COLLISION_PROBABILITY.

Returns
constant error rate

Definition at line 260 of file satellite-phy-rx-carrier-conf.cc.

References m_raConstantErrorRate.

◆ GetRandomAccessModel()

SatEnums::RandomAccessModel_t ns3::SatPhyRxCarrierConf::GetRandomAccessModel ( ) const
inline

Definition at line 338 of file satellite-phy-rx-carrier-conf.h.

References m_randomAccessModel.

◆ GetRxAciInterferenceWrtNoiseFactor()

double ns3::SatPhyRxCarrierConf::GetRxAciInterferenceWrtNoiseFactor ( ) const

Get adjacent channel interference wrt noise (factor).

Returns
adjacent channel interference wrt noise (factor)

Definition at line 211 of file satellite-phy-rx-carrier-conf.cc.

References m_rxAciIfWrtNoiseFactor.

◆ GetRxMode()

SatPhyRxCarrierConf::RxMode ns3::SatPhyRxCarrierConf::GetRxMode ( ) const

Get configured RX mode.

Returns
configured RX mode

Definition at line 217 of file satellite-phy-rx-carrier-conf.cc.

References m_rxMode.

◆ GetRxTemperatureK()

double ns3::SatPhyRxCarrierConf::GetRxTemperatureK ( ) const

Get configured RX noise temperature.

Returns
configured RX noise temperature

Definition at line 199 of file satellite-phy-rx-carrier-conf.cc.

References m_rxTemperatureK.

◆ GetTypeId()

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

Get the type ID.

Returns
the object TypeId

Definition at line 96 of file satellite-phy-rx-carrier-conf.cc.

References SatPhyRxCarrierConf(), m_enableIntfOutputTrace, m_enableRandomAccessDynamicLoadControl, and m_randomAccessAverageNormalizedOfferedLoadMeasurementWindowSize.

Here is the call graph for this function:

◆ IsIntfOutputTraceEnabled()

bool ns3::SatPhyRxCarrierConf::IsIntfOutputTraceEnabled ( ) const

Is interference output trace enabled.

Returns
true or false

Definition at line 235 of file satellite-phy-rx-carrier-conf.cc.

References m_enableIntfOutputTrace.

◆ IsRandomAccessDynamicLoadControlEnabled()

bool ns3::SatPhyRxCarrierConf::IsRandomAccessDynamicLoadControlEnabled ( ) const

Function for checking if random access dynamic load control is enabled.

Returns
Is random access dynamic load control enabled

Definition at line 272 of file satellite-phy-rx-carrier-conf.cc.

References m_enableRandomAccessDynamicLoadControl.

◆ SetAdditionalInterferenceCb()

void ns3::SatPhyRxCarrierConf::SetAdditionalInterferenceCb ( AdditionalInterferenceCallback additionalInterferenceCallback)
inline

Set additional interference callback.

Parameters
additionalInterferenceCallbackThe additional interference callback

Definition at line 301 of file satellite-phy-rx-carrier-conf.h.

References m_additionalInterferenceCallback.

◆ SetLinkResults()

void ns3::SatPhyRxCarrierConf::SetLinkResults ( Ptr< SatLinkResults > linkResults)

Set link results for the carrier configuration, either DVB-RCS2 or DVB-S2.

Definition at line 136 of file satellite-phy-rx-carrier-conf.cc.

References m_linkResults.

Member Data Documentation

◆ m_additionalInterferenceCallback

AdditionalInterferenceCallback ns3::SatPhyRxCarrierConf::m_additionalInterferenceCallback
private

◆ m_carrierBandwidthConverter

SatTypedefs::CarrierBandwidthConverter_t ns3::SatPhyRxCarrierConf::m_carrierBandwidthConverter
private

◆ m_carrierCount

uint32_t ns3::SatPhyRxCarrierConf::m_carrierCount
private

◆ m_channelEstimationError

Ptr<SatChannelEstimationErrorContainer> ns3::SatPhyRxCarrierConf::m_channelEstimationError
private

◆ m_channelType

SatEnums::ChannelType_t ns3::SatPhyRxCarrierConf::m_channelType
private

◆ m_daConstantErrorRate

double ns3::SatPhyRxCarrierConf::m_daConstantErrorRate
private

◆ m_daIfModel

InterferenceModel ns3::SatPhyRxCarrierConf::m_daIfModel
private

◆ m_enableIntfOutputTrace

bool ns3::SatPhyRxCarrierConf::m_enableIntfOutputTrace
private

◆ m_enableRandomAccessDynamicLoadControl

bool ns3::SatPhyRxCarrierConf::m_enableRandomAccessDynamicLoadControl
private

◆ m_errorModel

ErrorModel ns3::SatPhyRxCarrierConf::m_errorModel
private

◆ m_linkRegenerationMode

SatEnums::RegenerationMode_t ns3::SatPhyRxCarrierConf::m_linkRegenerationMode
private

◆ m_linkResults

Ptr<SatLinkResults> ns3::SatPhyRxCarrierConf::m_linkResults
private

◆ m_raCollisionModel

RandomAccessCollisionModel ns3::SatPhyRxCarrierConf::m_raCollisionModel
private

◆ m_raConstantErrorRate

double ns3::SatPhyRxCarrierConf::m_raConstantErrorRate
private

◆ m_raIfEliminateModel

InterferenceEliminationModel ns3::SatPhyRxCarrierConf::m_raIfEliminateModel
private

◆ m_raIfModel

InterferenceModel ns3::SatPhyRxCarrierConf::m_raIfModel
private

◆ m_randomAccessAverageNormalizedOfferedLoadMeasurementWindowSize

uint32_t ns3::SatPhyRxCarrierConf::m_randomAccessAverageNormalizedOfferedLoadMeasurementWindowSize
private

◆ m_randomAccessModel

SatEnums::RandomAccessModel_t ns3::SatPhyRxCarrierConf::m_randomAccessModel
private

◆ m_rxAciIfWrtNoiseFactor

double ns3::SatPhyRxCarrierConf::m_rxAciIfWrtNoiseFactor
private

◆ m_rxExtNoiseDensityWhz

double ns3::SatPhyRxCarrierConf::m_rxExtNoiseDensityWhz
private

◆ m_rxMode

RxMode ns3::SatPhyRxCarrierConf::m_rxMode
private

◆ m_rxTemperatureK

double ns3::SatPhyRxCarrierConf::m_rxTemperatureK
private

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