Loading...
Searching...
No Matches
ns3::SatGwHelper Class Referenceabstract

Creates needed objects for GW nodes like SatOrbiterNetDevice objects. More...

#include "satellite-gw-helper.h"

Inheritance diagram for ns3::SatGwHelper:
Collaboration diagram for ns3::SatGwHelper:

Classes

struct  RandomAccessSettings_s
 Random access setting options. More...

Public Member Functions

 SatGwHelper ()
 Default constructor.
 SatGwHelper (SatTypedefs::CarrierBandwidthConverter_t carrierBandwidthConverter, uint32_t fwdLinkCarrierCount, Ptr< SatSuperframeSeq > seq, SatMac::ReadCtrlMsgCallback readCb, SatMac::ReserveCtrlMsgCallback reserveCb, SatMac::SendCtrlMsgCallback sendCb, RandomAccessSettings_s randomAccessSettings)
 Create a SatGwHelper to make life easier when creating Satellite point to point network connections.
virtual ~SatGwHelper ()
void EnableCreationTraces (Ptr< OutputStreamWrapper > stream, CallbackBase &cb)
 Enables creation traces to be written in given file.
Ptr< SatBbFrameConfGetBbFrameConf () const
 Get BB frame configuration.
void Initialize (Ptr< SatLinkResultsRtn > lrRcs2, Ptr< SatLinkResultsFwd > lrFwd, SatEnums::DvbVersion_t dvbVersion, bool useScpc)
NetDeviceContainer Install (NodeContainer c, uint32_t gwId, uint32_t satId, uint32_t beamId, uint32_t feederSatId, uint32_t feederBeamId, Ptr< SatChannel > fCh, Ptr< SatChannel > rCh, SatPhy::ChannelPairGetterCallback cbChannel, Ptr< SatNcc > ncc, Ptr< SatLowerLayerServiceConf > llsConf)
virtual Ptr< NetDevice > Install (Ptr< Node > n, uint32_t gwId, uint32_t satId, uint32_t beamId, uint32_t feederSatId, uint32_t feederBeamId, Ptr< SatChannel > fCh, Ptr< SatChannel > rCh, SatPhy::ChannelPairGetterCallback cbChannel, Ptr< SatNcc > ncc, Ptr< SatLowerLayerServiceConf > llsConf)=0
void SetChannelAttribute (std::string name, const AttributeValue &value)
 Set an attribute value to be propagated to each Channel created by the helper.
void SetDeviceAttribute (std::string name, const AttributeValue &value)
 Set an attribute value to be propagated to each NetDevice created by the helper.
void SetPhyAttribute (std::string name, const AttributeValue &value)
 Set an attribute value to be propagated to each Phy created by the helper.

Static Public Member Functions

static TypeId GetTypeId (void)
 Get the type ID.

Protected Attributes

Ptr< SatBbFrameConfm_bbFrameConf
SatTypedefs::CarrierBandwidthConverter_t m_carrierBandwidthConverter
ObjectFactory m_channelFactory
TracedCallback< std::string > m_creationTrace
 Trace callback for creation traces.
double m_daConstantErrorRate
SatPhy::InterferenceModel m_daInterferenceModel
ObjectFactory m_deviceFactory
bool m_enableChannelEstimationError
 Enable channel estimation error modeling at forward link receiver (= UT).
SatPhy::ErrorModel m_errorModel
SatEnums::FwdSchedulingAlgorithm_t m_fwdSchedulingAlgorithm
 The forward link algorithm used.
Ptr< SatLinkResultsm_linkResults
RandomAccessSettings_s m_raSettings
 The used random access model settings.
SatMac::ReadCtrlMsgCallback m_readCtrlCb
SatMac::ReserveCtrlMsgCallback m_reserveCtrlCb
uint32_t m_rtnLinkCarrierCount
SatMac::SendCtrlMsgCallback m_sendCtrlCb
Ptr< SatSuperframeSeqm_superframeSeq
double m_symbolRate

Detailed Description

Creates needed objects for GW nodes like SatOrbiterNetDevice objects.

Handles needed configuration for the GW nodes.

Definition at line 51 of file satellite-gw-helper.h.

Constructor & Destructor Documentation

◆ SatGwHelper() [1/2]

◆ SatGwHelper() [2/2]

ns3::SatGwHelper::SatGwHelper ( SatTypedefs::CarrierBandwidthConverter_t carrierBandwidthConverter,
uint32_t fwdLinkCarrierCount,
Ptr< SatSuperframeSeq > seq,
SatMac::ReadCtrlMsgCallback readCb,
SatMac::ReserveCtrlMsgCallback reserveCb,
SatMac::SendCtrlMsgCallback sendCb,
RandomAccessSettings_s randomAccessSettings )

◆ ~SatGwHelper()

virtual ns3::SatGwHelper::~SatGwHelper ( )
inlinevirtual

Definition at line 89 of file satellite-gw-helper.h.

Member Function Documentation

◆ EnableCreationTraces()

void ns3::SatGwHelper::EnableCreationTraces ( Ptr< OutputStreamWrapper > stream,
CallbackBase & cb )

Enables creation traces to be written in given file.

Parameters
streamstream for creation trace outputs
cbcallback to connect traces

Definition at line 256 of file satellite-gw-helper.cc.

◆ GetBbFrameConf()

Ptr< SatBbFrameConf > ns3::SatGwHelper::GetBbFrameConf ( ) const

Get BB frame configuration.

Returns
BB frame configuration create by helper.

Definition at line 189 of file satellite-gw-helper.cc.

References m_bbFrameConf.

◆ GetTypeId()

◆ Initialize()

◆ Install() [1/2]

NetDeviceContainer ns3::SatGwHelper::Install ( NodeContainer c,
uint32_t gwId,
uint32_t satId,
uint32_t beamId,
uint32_t feederSatId,
uint32_t feederBeamId,
Ptr< SatChannel > fCh,
Ptr< SatChannel > rCh,
SatPhy::ChannelPairGetterCallback cbChannel,
Ptr< SatNcc > ncc,
Ptr< SatLowerLayerServiceConf > llsConf )
Parameters
ca set of nodes
gwIdid of the gw
satIdid of the satellite linked to the UT
beamIdid of the beam linked to the UT
feederSatIdid of the satellite linked to the GW
feederBeamIdid of the beam linked to the GW
fChforward channel
rChreturn channel
nccNCC (Network Control Center)

This method creates a ns3::SatChannel with the attributes configured by SatGwHelper::SetChannelAttribute, then, for each node in the input container, we create a ns3::SatNetDevice with the requested attributes, a queue for this ns3::SatNetDevice, and associate the resulting ns3::SatNetDevice with the ns3::Node and ns3::SatChannel.

Definition at line 221 of file satellite-gw-helper.cc.

References Install().

Referenced by Install().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ Install() [2/2]

virtual Ptr< NetDevice > ns3::SatGwHelper::Install ( Ptr< Node > n,
uint32_t gwId,
uint32_t satId,
uint32_t beamId,
uint32_t feederSatId,
uint32_t feederBeamId,
Ptr< SatChannel > fCh,
Ptr< SatChannel > rCh,
SatPhy::ChannelPairGetterCallback cbChannel,
Ptr< SatNcc > ncc,
Ptr< SatLowerLayerServiceConf > llsConf )
pure virtual
Parameters
nnode
gwIdid of the gw
satIdid of the satellite linked to the UT
beamIdid of the beam linked to the UT
feederSatIdid of the satellite linked to the GW
feederBeamIdid of the beam linked to the GW
fChforward channel
rChreturn channel
nccNCC (Network Control Center)

Saves you from having to construct a temporary NodeContainer. This method is implemented in child classes.

Implemented in ns3::SatGwHelperDvb, and ns3::SatGwHelperLora.

◆ SetChannelAttribute()

void ns3::SatGwHelper::SetChannelAttribute ( std::string name,
const AttributeValue & value )

Set an attribute value to be propagated to each Channel created by the helper.

Parameters
namethe name of the attribute to set
valuethe value of the attribute to set

Set these attribute on each ns3::SatChannel created by SatGwHelper::Install

Definition at line 205 of file satellite-gw-helper.cc.

References m_channelFactory.

◆ SetDeviceAttribute()

void ns3::SatGwHelper::SetDeviceAttribute ( std::string name,
const AttributeValue & value )

Set an attribute value to be propagated to each NetDevice created by the helper.

Parameters
namethe name of the attribute to set
valuethe value of the attribute to set

Set these attributes on each ns3::SatNetDevice created by SatGwHelper::Install

Definition at line 197 of file satellite-gw-helper.cc.

References m_deviceFactory.

◆ SetPhyAttribute()

void ns3::SatGwHelper::SetPhyAttribute ( std::string name,
const AttributeValue & value )

Set an attribute value to be propagated to each Phy created by the helper.

Parameters
namethe name of the attribute to set
valuethe value of the attribute to set

Set these attributes on each ns3::SatNetDevice created by SatGwHelper::Install

Definition at line 213 of file satellite-gw-helper.cc.

Member Data Documentation

◆ m_bbFrameConf

Ptr<SatBbFrameConf> ns3::SatGwHelper::m_bbFrameConf
protected

Definition at line 215 of file satellite-gw-helper.h.

Referenced by GetBbFrameConf(), Initialize(), and ns3::SatGwHelperDvb::Install().

◆ m_carrierBandwidthConverter

SatTypedefs::CarrierBandwidthConverter_t ns3::SatGwHelper::m_carrierBandwidthConverter
protected

◆ m_channelFactory

ObjectFactory ns3::SatGwHelper::m_channelFactory
protected

Definition at line 222 of file satellite-gw-helper.h.

Referenced by SatGwHelper(), and SetChannelAttribute().

◆ m_creationTrace

TracedCallback<std::string> ns3::SatGwHelper::m_creationTrace
protected

Trace callback for creation traces.

Definition at line 250 of file satellite-gw-helper.h.

Referenced by GetTypeId().

◆ m_daConstantErrorRate

double ns3::SatGwHelper::m_daConstantErrorRate
protected

◆ m_daInterferenceModel

SatPhy::InterferenceModel ns3::SatGwHelper::m_daInterferenceModel
protected

◆ m_deviceFactory

ObjectFactory ns3::SatGwHelper::m_deviceFactory
protected

◆ m_enableChannelEstimationError

bool ns3::SatGwHelper::m_enableChannelEstimationError
protected

Enable channel estimation error modeling at forward link receiver (= UT).

Definition at line 258 of file satellite-gw-helper.h.

Referenced by SatGwHelper(), SatGwHelper(), GetTypeId(), ns3::SatGwHelperDvb::Install(), and ns3::SatGwHelperLora::Install().

◆ m_errorModel

SatPhy::ErrorModel ns3::SatGwHelper::m_errorModel
protected

◆ m_fwdSchedulingAlgorithm

SatEnums::FwdSchedulingAlgorithm_t ns3::SatGwHelper::m_fwdSchedulingAlgorithm
protected

The forward link algorithm used.

Definition at line 268 of file satellite-gw-helper.h.

Referenced by GetTypeId(), Initialize(), and ns3::SatGwHelperDvb::Install().

◆ m_linkResults

Ptr<SatLinkResults> ns3::SatGwHelper::m_linkResults
protected

◆ m_raSettings

RandomAccessSettings_s ns3::SatGwHelper::m_raSettings
protected

The used random access model settings.

Definition at line 263 of file satellite-gw-helper.h.

Referenced by SatGwHelper(), SatGwHelper(), ns3::SatGwHelperDvb::Install(), and ns3::SatGwHelperLora::Install().

◆ m_readCtrlCb

SatMac::ReadCtrlMsgCallback ns3::SatGwHelper::m_readCtrlCb
protected

Definition at line 218 of file satellite-gw-helper.h.

Referenced by SatGwHelper(), and ns3::SatGwHelperDvb::Install().

◆ m_reserveCtrlCb

SatMac::ReserveCtrlMsgCallback ns3::SatGwHelper::m_reserveCtrlCb
protected

Definition at line 219 of file satellite-gw-helper.h.

Referenced by SatGwHelper(), and ns3::SatGwHelperDvb::Install().

◆ m_rtnLinkCarrierCount

uint32_t ns3::SatGwHelper::m_rtnLinkCarrierCount
protected

◆ m_sendCtrlCb

SatMac::SendCtrlMsgCallback ns3::SatGwHelper::m_sendCtrlCb
protected

Definition at line 220 of file satellite-gw-helper.h.

Referenced by SatGwHelper(), and ns3::SatGwHelperDvb::Install().

◆ m_superframeSeq

Ptr<SatSuperframeSeq> ns3::SatGwHelper::m_superframeSeq
protected

◆ m_symbolRate

double ns3::SatGwHelper::m_symbolRate
protected

Definition at line 252 of file satellite-gw-helper.h.

Referenced by SatGwHelper(), SatGwHelper(), and Initialize().


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