Creates needed objects for DVB GW nodes like SatOrbiterNetDevice objects. More...
#include "satellite-gw-helper-dvb.h"
Public Member Functions | |
SatGwHelperDvb () | |
Default constructor. More... | |
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. More... | |
virtual | ~SatGwHelperDvb () |
TypeId | GetInstanceTypeId (void) const |
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. More... | |
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. More... | |
virtual | ~SatGwHelper () |
void | EnableCreationTraces (Ptr< OutputStreamWrapper > stream, CallbackBase &cb) |
Enables creation traces to be written in given file. More... | |
Ptr< SatBbFrameConf > | GetBbFrameConf () const |
Get BB frame configuration. More... | |
TypeId | GetInstanceTypeId (void) const |
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. More... | |
void | SetDeviceAttribute (std::string name, const AttributeValue &value) |
Set an attribute value to be propagated to each NetDevice created by the helper. More... | |
void | SetPhyAttribute (std::string name, const AttributeValue &value) |
Set an attribute value to be propagated to each Phy created by the helper. More... | |
Static Public Member Functions | |
static TypeId | GetTypeId (void) |
Get the type ID. More... | |
Static Public Member Functions inherited from ns3::SatGwHelper | |
static TypeId | GetTypeId (void) |
Get the type ID. More... | |
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.
ns3::SatGwHelperDvb::SatGwHelperDvb | ( | ) |
Default constructor.
Definition at line 81 of file satellite-gw-helper-dvb.cc.
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 87 of file satellite-gw-helper-dvb.cc.
|
inlinevirtual |
Definition at line 71 of file satellite-gw-helper-dvb.h.
TypeId ns3::SatGwHelperDvb::GetInstanceTypeId | ( | void | ) | const |
Definition at line 76 of file satellite-gw-helper-dvb.cc.
References GetTypeId().
|
static |
Get the type ID.
Definition at line 68 of file satellite-gw-helper-dvb.cc.
Referenced by GetInstanceTypeId().
|
virtual |
n | node |
gwId | id of the gw |
satId | id of the satellite linked to the UT |
beamId | id of the beam linked to the UT |
feederSatId | id of the satellite linked to the GW |
feederBeamId | id of the beam linked to the GW |
fCh | forward channel |
rCh | return channel |
ncc | NCC (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 106 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::RandomAccessSettings_s::m_raCollisionModel, ns3::SatGwHelper::RandomAccessSettings_s::m_raConstantErrorRate, ns3::SatGwHelper::RandomAccessSettings_s::m_raInterferenceEliminationModel, ns3::SatGwHelper::RandomAccessSettings_s::m_raInterferenceModel, ns3::SatGwHelper::RandomAccessSettings_s::m_randomAccessModel, 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::SatNetDevice::Receive(), ns3::SatLlc::Receive(), ns3::SatGwMac::Receive(), ns3::SatNcc::ReceiveControlBurst(), ns3::SatEnums::REGENERATION_PHY, ns3::SatNcc::RemoveUt(), ns3::SatNetDevice::SendControlMsg(), ns3::SatPhy::SendPdu(), ns3::SatHandoverModule::SetHandoverRequestCallback(), ns3::SatAddressE2ETag::SIZE, ns3::SatConstVariables::SUPERFRAME_SEQUENCE, ns3::SatEnums::TIME_SLICING, ns3::SatEnums::TRANSPARENT, ns3::SatNcc::UtCnoUpdated(), and ns3::SatNcc::UtCrReceived().