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

Static Public Member Functions

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

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 43 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 50 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 67 of file satellite-phy-rx-carrier-conf.h.

◆ InterferenceEliminationModel

Interference cancelation model enum.

Enumerator
SIC_NONE 
SIC_PERFECT 
SIC_RESIDUAL 

Definition at line 88 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 77 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 98 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 58 of file satellite-phy-rx-carrier-conf.h.

Constructor & Destructor Documentation

◆ SatPhyRxCarrierConf() [1/2]

ns3::SatPhyRxCarrierConf::SatPhyRxCarrierConf ( RxCarrierCreateParams_s  params)

Default constructor for SatPhyRxCarrierConf.

Parameters
paramsRx carrier parameters

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

◆ SatPhyRxCarrierConf() [2/2]

ns3::SatPhyRxCarrierConf::SatPhyRxCarrierConf ( )

Constructor for SatPhyRxCarrierConf.

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

◆ ~SatPhyRxCarrierConf()

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

Destructor for SatPhyRxCarrierConf.

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

Member Function Documentation

◆ DoDispose()

void ns3::SatPhyRxCarrierConf::DoDispose ( void  )
virtual

◆ GetAdditionalInterferenceCb()

AdditionalInterferenceCallback ns3::SatPhyRxCarrierConf::GetAdditionalInterferenceCb ( )
inline

Get additional interference callback.

Returns
The additional interference callback

Definition at line 290 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 336 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

◆ 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 299 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

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

Referenced by DoDispose(), and GetCarrierBandwidthHz().

◆ m_carrierCount

uint32_t ns3::SatPhyRxCarrierConf::m_carrierCount
private

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

Referenced by GetCarrierCount().

◆ m_channelEstimationError

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

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

Referenced by GetChannelEstimatorErrorContainer().

◆ m_channelType

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

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

Referenced by GetCarrierBandwidthHz(), and GetChannelType().

◆ m_daConstantErrorRate

double ns3::SatPhyRxCarrierConf::m_daConstantErrorRate
private

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

Referenced by GetConstantDaErrorRate().

◆ m_daIfModel

InterferenceModel ns3::SatPhyRxCarrierConf::m_daIfModel
private

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

Referenced by GetInterferenceModel().

◆ m_enableIntfOutputTrace

bool ns3::SatPhyRxCarrierConf::m_enableIntfOutputTrace
private

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

Referenced by GetTypeId(), and IsIntfOutputTraceEnabled().

◆ m_enableRandomAccessDynamicLoadControl

bool ns3::SatPhyRxCarrierConf::m_enableRandomAccessDynamicLoadControl
private

◆ m_errorModel

ErrorModel ns3::SatPhyRxCarrierConf::m_errorModel
private

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

Referenced by GetErrorModel().

◆ m_linkRegenerationMode

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

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

Referenced by GetLinkRegenerationMode().

◆ m_linkResults

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

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

Referenced by DoDispose(), GetLinkResults(), and SetLinkResults().

◆ m_raCollisionModel

RandomAccessCollisionModel ns3::SatPhyRxCarrierConf::m_raCollisionModel
private

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

Referenced by GetRandomAccessCollisionModel().

◆ m_raConstantErrorRate

double ns3::SatPhyRxCarrierConf::m_raConstantErrorRate
private

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

Referenced by GetRandomAccessConstantErrorRate().

◆ m_raIfEliminateModel

InterferenceEliminationModel ns3::SatPhyRxCarrierConf::m_raIfEliminateModel
private

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

Referenced by GetInterferenceEliminationModel().

◆ 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

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

Referenced by GetRandomAccessModel().

◆ m_rxAciIfWrtNoiseFactor

double ns3::SatPhyRxCarrierConf::m_rxAciIfWrtNoiseFactor
private

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

Referenced by GetRxAciInterferenceWrtNoiseFactor().

◆ m_rxExtNoiseDensityWhz

double ns3::SatPhyRxCarrierConf::m_rxExtNoiseDensityWhz
private

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

Referenced by GetExtPowerDensityWhz().

◆ m_rxMode

RxMode ns3::SatPhyRxCarrierConf::m_rxMode
private

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

Referenced by GetRxMode().

◆ m_rxTemperatureK

double ns3::SatPhyRxCarrierConf::m_rxTemperatureK
private

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

Referenced by GetRxTemperatureK().


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