23 #ifndef SATELLITE_PHY_RX_CARRIER_CONF_H_
24 #define SATELLITE_PHY_RX_CARRIER_CONF_H_
31 #include <ns3/object.h>
137 Ptr<SatChannelEstimationErrorContainer>
m_cec;
144 m_extNoiseDensityWhz(0.0),
145 m_aciIfWrtNoiseFactor(0.0),
152 m_chType(SatEnums::RETURN_USER_CH),
ChannelType_t
Types of channel.
CarrierBandwidthType_t
Types of bandwidth.
RandomAccessModel_t
The defined random access models.
RegenerationMode_t
The regeneration mode used in satellites.
Information of beam users liken UTs and their users.
SatEnums::ChannelType_t GetChannelType() const
Get channel type.
double m_rxAciIfWrtNoiseFactor
static TypeId GetTypeId(void)
Get the type ID.
double m_daConstantErrorRate
double GetRandomAccessConstantErrorRate() const
Get random access constant error rate.
double m_raConstantErrorRate
Ptr< SatLinkResults > m_linkResults
ErrorModel GetErrorModel() const
Get configured error model.
AdditionalInterferenceCallback m_additionalInterferenceCallback
SatPhyRxCarrierConf()
Constructor for SatPhyRxCarrierConf.
bool IsRandomAccessDynamicLoadControlEnabled() const
Function for checking if random access dynamic load control is enabled.
bool m_enableIntfOutputTrace
void SetAdditionalInterferenceCb(AdditionalInterferenceCallback additionalInterferenceCallback)
Set additional interference callback.
InterferenceEliminationModel
Interference cancelation model enum.
virtual ~SatPhyRxCarrierConf()
Destructor for SatPhyRxCarrierConf.
double GetCarrierBandwidthHz(uint32_t carrierId, SatEnums::CarrierBandwidthType_t bandwidthType) const
Get configured bandwidth.
uint32_t GetCarrierCount() const
Get the number of configured carriers.
ErrorModel
Error model enum.
uint32_t m_randomAccessAverageNormalizedOfferedLoadMeasurementWindowSize
Callback< double > AdditionalInterferenceCallback
Callback to get additional interference from PHY layer.
SatEnums::RegenerationMode_t GetLinkRegenerationMode() const
Get link regeneration mode.
SatEnums::RandomAccessModel_t m_randomAccessModel
RandomAccessCollisionModel m_raCollisionModel
double GetConstantDaErrorRate() const
Get constant error rate for dedicated access.
RandomAccessCollisionModel
Random access collision model enum.
@ RA_CONSTANT_COLLISION_PROBABILITY
@ RA_COLLISION_CHECK_AGAINST_SINR
@ RA_COLLISION_NOT_DEFINED
@ RA_COLLISION_ALWAYS_DROP_ALL_COLLIDING_PACKETS
void SetLinkResults(Ptr< SatLinkResults > linkResults)
Set link results for the carrier configuration, either DVB-RCS2 or DVB-S2.
uint32_t GetRandomAccessAverageNormalizedOfferedLoadMeasurementWindowSize() const
Get random access average normalized offered load measurement window size.
InterferenceModel m_daIfModel
SatEnums::RegenerationMode_t m_linkRegenerationMode
bool m_enableRandomAccessDynamicLoadControl
double GetRxAciInterferenceWrtNoiseFactor() const
Get adjacent channel interference wrt noise (factor)
InterferenceEliminationModel m_raIfEliminateModel
RandomAccessCollisionModel GetRandomAccessCollisionModel() const
Get random access collision model.
RxMode GetRxMode() const
Get configured RX mode.
double GetRxTemperatureK() const
Get configured RX noise temperature.
Ptr< SatLinkResults > GetLinkResults() const
Get configured link results.
SatTypedefs::CarrierBandwidthConverter_t m_carrierBandwidthConverter
Ptr< SatChannelEstimationErrorContainer > GetChannelEstimatorErrorContainer() const
Get channel estimator container.
SatEnums::RandomAccessModel_t GetRandomAccessModel() const
InterferenceModel
Interference model enum.
SatEnums::ChannelType_t m_channelType
double GetExtPowerDensityWhz() const
Get other system RX noise.
bool IsIntfOutputTraceEnabled() const
Is interference output trace enabled.
double m_rxExtNoiseDensityWhz
InterferenceModel GetInterferenceModel(bool isRandomAccessCarrier) const
Get configured interference model.
AdditionalInterferenceCallback GetAdditionalInterferenceCb()
Get additional interference callback.
InterferenceModel m_raIfModel
InterferenceEliminationModel GetInterferenceEliminationModel(bool isRandomAccessCarrier) const
Get configured interference cancelation model.
virtual void DoDispose()
Dispose function.
Ptr< SatChannelEstimationErrorContainer > m_channelEstimationError
Callback< double, SatEnums::ChannelType_t, uint32_t, SatEnums::CarrierBandwidthType_t > CarrierBandwidthConverter_t
Callback for carrier bandwidths.
SatArqSequenceNumber is handling the sequence numbers for the ARQ process.
Struct for storing the information for SatPhyRxCarrierConf.
double m_extNoiseDensityWhz
Ptr< SatChannelEstimationErrorContainer > m_cec
InterferenceModel m_daIfModel
double m_aciIfWrtNoiseFactor
double m_raConstantErrorRate
SatEnums::RandomAccessModel_t m_randomAccessModel
RxCarrierCreateParams_s()
SatTypedefs::CarrierBandwidthConverter_t m_bwConverter
RandomAccessCollisionModel m_raCollisionModel
SatEnums::ChannelType_t m_chType
SatEnums::RegenerationMode_t m_linkRegenerationMode
InterferenceModel m_raIfModel
InterferenceEliminationModel m_raIfEliminateModel
double m_daConstantErrorRate