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

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

#include "satellite-gw-helper-dvb.h"

Inheritance diagram for ns3::SatGwHelperDvb:
Collaboration diagram for ns3::SatGwHelperDvb:

Public Member Functions

 SatGwHelperDvb ()
 Default constructor.
 SatGwHelperDvb (SatTypedefs::CarrierBandwidthConverter_t carrierBandwidthConverter, uint32_t fwdLinkCarrierCount, Ptr< SatSuperframeSeq > seq, SatMac::ReadCtrlMsgCallback readCb, SatMac::ReserveCtrlMsgCallback reserveCb, SatMac::SendCtrlMsgCallback sendCb, RandomAccessSettings_s randomAccessSettings)
 Create a SatGwHelperDvb to make life easier when creating Satellite point to point network connections.
virtual ~SatGwHelperDvb ()
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)
Public Member Functions inherited from ns3::SatGwHelper
 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)
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.
Static Public Member Functions inherited from ns3::SatGwHelper
static TypeId GetTypeId (void)
 Get the type ID.

Additional Inherited Members

Protected Attributes inherited from ns3::SatGwHelper
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 DVB GW nodes like SatOrbiterNetDevice objects.

Handles needed configuration for the GW nodes.

Definition at line 44 of file satellite-gw-helper-dvb.h.

Constructor & Destructor Documentation

◆ SatGwHelperDvb() [1/2]

ns3::SatGwHelperDvb::SatGwHelperDvb ( )

Default constructor.

Definition at line 75 of file satellite-gw-helper-dvb.cc.

◆ SatGwHelperDvb() [2/2]

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

Create a SatGwHelperDvb to make life easier when creating Satellite point to point network connections.

Definition at line 81 of file satellite-gw-helper-dvb.cc.

References ns3::SatGwHelper::SatGwHelper().

Here is the call graph for this function:

◆ ~SatGwHelperDvb()

virtual ns3::SatGwHelperDvb::~SatGwHelperDvb ( )
inlinevirtual

Definition at line 70 of file satellite-gw-helper-dvb.h.

Member Function Documentation

◆ GetTypeId()

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

Get the type ID.

Returns
the object TypeId

Definition at line 68 of file satellite-gw-helper-dvb.cc.

References ns3::SatGwHelper::SatGwHelper().

Here is the call graph for this function:

◆ Install()

Ptr< NetDevice > ns3::SatGwHelperDvb::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 )
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)

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.

Channel estimation errors

Implements ns3::SatGwHelper.

Definition at line 100 of file satellite-gw-helper-dvb.cc.

References ns3::SatGwMac::ChangeBeam(), ns3::SatGwLlc::ClearQueues(), ns3::SatEnums::CONTROL_FID, ns3::SatNcc::DoRandomAccessDynamicLoadControl(), ns3::SatEnums::DVB, ns3::SatEnums::DVB_GW, ns3::SatEnums::EFFECTIVE_BANDWIDTH, ns3::SatEnums::FORWARD_FEEDER_CH, ns3::SatNcc::GetBeamScheduler(), ns3::SatLlc::GetSchedulingContexts(), ns3::logonCallbackHelper(), ns3::SatEnums::LORA, ns3::SatGwHelper::m_bbFrameConf, ns3::SatPhy::CreateParam_t::m_beamId, ns3::SatGwHelper::m_carrierBandwidthConverter, ns3::SatGwHelper::m_daConstantErrorRate, ns3::SatGwHelper::m_daInterferenceModel, ns3::SatPhy::CreateParam_t::m_device, ns3::SatGwHelper::m_deviceFactory, ns3::SatGwHelper::m_enableChannelEstimationError, ns3::SatGwHelper::m_errorModel, ns3::SatGwHelper::m_fwdSchedulingAlgorithm, ns3::SatGwHelper::m_linkResults, ns3::SatGwHelper::m_raSettings, ns3::SatGwHelper::m_readCtrlCb, ns3::SatGwHelper::m_reserveCtrlCb, ns3::SatGwHelper::m_rtnLinkCarrierCount, ns3::SatPhy::CreateParam_t::m_rxCh, ns3::SatPhy::CreateParam_t::m_satId, ns3::SatGwHelper::m_sendCtrlCb, ns3::SatPhy::CreateParam_t::m_standard, ns3::SatGwHelper::m_superframeSeq, ns3::SatPhy::CreateParam_t::m_txCh, ns3::SatNcc::MoveUtBetweenBeams(), ns3::SatEnums::NO_TIME_SLICING, ns3::SatGwLlc::NotifyTxOpportunity(), ns3::SatEnums::NT_GW, ns3::SatGwPhy::PerformHandover(), ns3::SatGwMac::Receive(), ns3::SatLlc::Receive(), ns3::SatNetDevice::Receive(), ns3::SatNcc::ReceiveControlBurst(), ns3::SatEnums::REGENERATION_PHY, ns3::SatNcc::RemoveUt(), ns3::SatNetDevice::SendControlMsg(), ns3::SatPhy::SendPdu(), ns3::SatAddressE2ETag::SIZE, ns3::SatConstVariables::SUPERFRAME_SEQUENCE, ns3::SatEnums::TIME_SLICING, ns3::SatEnums::TRANSPARENT, ns3::SatNcc::UtCnoUpdated(), and ns3::SatNcc::UtCrReceived().

Here is the call graph for this function:

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