Creates needed objects for LORA GW nodes like SatorbiterNetDevice objects. More...
#include "satellite-gw-helper-lora.h"
Public Member Functions | |
SatGwHelperLora () | |
Default constructor. More... | |
SatGwHelperLora (SatTypedefs::CarrierBandwidthConverter_t carrierBandwidthConverter, uint32_t fwdLinkCarrierCount, Ptr< SatSuperframeSeq > seq, SatMac::ReadCtrlMsgCallback readCb, SatMac::ReserveCtrlMsgCallback reserveCb, SatMac::SendCtrlMsgCallback sendCb, RandomAccessSettings_s randomAccessSettings) | |
Create a SatGwHelperLora to make life easier when creating Satellite point to point network connections. More... | |
virtual | ~SatGwHelperLora () |
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 LORA GW nodes like SatorbiterNetDevice objects.
Handles needed configuration for the GW nodes.
Definition at line 43 of file satellite-gw-helper-lora.h.
ns3::SatGwHelperLora::SatGwHelperLora | ( | ) |
Default constructor.
Definition at line 68 of file satellite-gw-helper-lora.cc.
ns3::SatGwHelperLora::SatGwHelperLora | ( | SatTypedefs::CarrierBandwidthConverter_t | carrierBandwidthConverter, |
uint32_t | fwdLinkCarrierCount, | ||
Ptr< SatSuperframeSeq > | seq, | ||
SatMac::ReadCtrlMsgCallback | readCb, | ||
SatMac::ReserveCtrlMsgCallback | reserveCb, | ||
SatMac::SendCtrlMsgCallback | sendCb, | ||
RandomAccessSettings_s | randomAccessSettings | ||
) |
Create a SatGwHelperLora to make life easier when creating Satellite point to point network connections.
Definition at line 74 of file satellite-gw-helper-lora.cc.
|
inlinevirtual |
Definition at line 70 of file satellite-gw-helper-lora.h.
TypeId ns3::SatGwHelperLora::GetInstanceTypeId | ( | void | ) | const |
Definition at line 63 of file satellite-gw-helper-lora.cc.
References GetTypeId().
|
static |
Get the type ID.
Definition at line 55 of file satellite-gw-helper-lora.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::SatLorawanNetDevice with the requested attributes, a queue for this ns3::SatLorawanNetDevice, and associate the resulting ns3::SatLorawanNetDevice with the ns3::Node and ns3::SatChannel.
Channel estimation errors
Implements ns3::SatGwHelper.
Definition at line 93 of file satellite-gw-helper-lora.cc.
References ns3::SatNcc::DoRandomAccessDynamicLoadControl(), ns3::SatEnums::LORA_GW, 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_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_rtnLinkCarrierCount, ns3::SatPhy::CreateParam_t::m_rxCh, ns3::SatPhy::CreateParam_t::m_satId, ns3::SatPhy::CreateParam_t::m_standard, ns3::SatGwHelper::m_superframeSeq, ns3::SatPhy::CreateParam_t::m_txCh, ns3::SatEnums::NT_GW, ns3::LorawanMac::Receive(), ns3::SatEnums::REGENERATION_PHY, ns3::SatLoraConf::SetConf(), ns3::SatConstVariables::SUPERFRAME_SEQUENCE, ns3::SatEnums::TRANSPARENT, and ns3::SatNcc::UtCnoUpdated().