Creates needed objects for UT nodes like SatOrbiterNetDevice objects. More...
#include "satellite-ut-helper.h"
Inheritance diagram for ns3::SatUtHelper:
Collaboration diagram for ns3::SatUtHelper:Classes | |
| struct | RandomAccessSettings_s |
| Define RandomAccessSettings as a struct. More... | |
Public Member Functions | |
| SatUtHelper () | |
| Default constructor. More... | |
| SatUtHelper (SatTypedefs::CarrierBandwidthConverter_t carrierBandwidthConverter, uint32_t rtnLinkCarrierCount, Ptr< SatSuperframeSeq > seq, SatMac::ReadCtrlMsgCallback readCb, SatMac::ReserveCtrlMsgCallback reserveCb, SatMac::SendCtrlMsgCallback sendCb, RandomAccessSettings_s randomAccessSettings) | |
| Create a SatUtHelper to make life easier when creating Satellite point to point network connections. More... | |
| virtual | ~SatUtHelper () |
| Destructor. More... | |
| void | EnableCreationTraces (Ptr< OutputStreamWrapper > stream, CallbackBase &cb) |
| Enables creation traces to be written in given file. More... | |
| TypeId | GetInstanceTypeId (void) const |
| Derived from Object. More... | |
| void | Initialize (Ptr< SatLinkResultsFwd > lrFwd) |
| NetDeviceContainer | Install (NodeContainer c, uint32_t satId, uint32_t beamId, Ptr< SatChannel > fCh, Ptr< SatChannel > rCh, Ptr< SatNetDevice > gwNd, Ptr< SatNcc > ncc, Address satUserAddress, SatPhy::ChannelPairGetterCallback cbChannel, SatMac::RoutingUpdateCallback cbRouting) |
| virtual Ptr< NetDevice > | Install (Ptr< Node > n, uint32_t satId, uint32_t beamId, Ptr< SatChannel > fCh, Ptr< SatChannel > rCh, Ptr< SatNetDevice > gwNd, Ptr< SatNcc > ncc, Address satUserAddress, SatPhy::ChannelPairGetterCallback cbChannel, SatMac::RoutingUpdateCallback cbRouting)=0 |
| 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) |
| Derived from Object. More... | |
Protected Attributes | |
| bool | m_asyncAccess |
| SatTypedefs::CarrierBandwidthConverter_t | m_carrierBandwidthConverter |
| ObjectFactory | m_channelFactory |
| bool | m_crdsaOnlyForControl |
| Planned CRDSA usage: More... | |
| TracedCallback< std::string > | m_creationTrace |
| Trace callback for creation traces. More... | |
| double | m_daConstantErrorRate |
| SatPhy::InterferenceModel | m_daInterferenceModel |
| ObjectFactory | m_deviceFactory |
| bool | m_enableChannelEstimationError |
| Enable channel estimation error modeling at forward link receiver (= UT). More... | |
| SatPhy::ErrorModel | m_errorModel |
| uint32_t | m_fwdLinkCarrierCount |
| Ptr< SatLinkResults > | m_linkResults |
| Ptr< SatLowerLayerServiceConf > | m_llsConf |
| Configured lower layer service configuration. More... | |
| RandomAccessSettings_s | m_raSettings |
| The used random access model settings. More... | |
| SatMac::ReadCtrlMsgCallback | m_readCtrlCb |
| SatMac::ReserveCtrlMsgCallback | m_reserveCtrlCb |
| SatMac::SendCtrlMsgCallback | m_sendCtrlCb |
| Ptr< SatSuperframeSeq > | m_superframeSeq |
Creates needed objects for UT nodes like SatOrbiterNetDevice objects.
Handles needed configuration for the UT nodes.
Definition at line 52 of file satellite-ut-helper.h.
| ns3::SatUtHelper::SatUtHelper | ( | ) |
Default constructor.
Definition at line 118 of file satellite-ut-helper.cc.
| ns3::SatUtHelper::SatUtHelper | ( | SatTypedefs::CarrierBandwidthConverter_t | carrierBandwidthConverter, |
| uint32_t | rtnLinkCarrierCount, | ||
| Ptr< SatSuperframeSeq > | seq, | ||
| SatMac::ReadCtrlMsgCallback | readCb, | ||
| SatMac::ReserveCtrlMsgCallback | reserveCb, | ||
| SatMac::SendCtrlMsgCallback | sendCb, | ||
| RandomAccessSettings_s | randomAccessSettings | ||
| ) |
Create a SatUtHelper to make life easier when creating Satellite point to point network connections.
Definition at line 138 of file satellite-ut-helper.cc.
References m_channelFactory, m_deviceFactory, and m_llsConf.
|
inlinevirtual |
Destructor.
Definition at line 96 of file satellite-ut-helper.h.
| void ns3::SatUtHelper::EnableCreationTraces | ( | Ptr< OutputStreamWrapper > | stream, |
| CallbackBase & | cb | ||
| ) |
Enables creation traces to be written in given file.
| stream | stream for creation trace outputs |
| cb | callback to connect traces |
Definition at line 230 of file satellite-ut-helper.cc.
| TypeId ns3::SatUtHelper::GetInstanceTypeId | ( | void | ) | const |
Derived from Object.
Definition at line 111 of file satellite-ut-helper.cc.
References GetTypeId().
Here is the call graph for this function:
|
static |
Derived from Object.
Definition at line 49 of file satellite-ut-helper.cc.
References ns3::SatPhyRxCarrierConf::EM_AVI, ns3::SatPhyRxCarrierConf::EM_CONSTANT, ns3::SatPhyRxCarrierConf::EM_NONE, ns3::SatPhyRxCarrierConf::IF_CONSTANT, ns3::SatPhyRxCarrierConf::IF_PER_FRAGMENT, ns3::SatPhyRxCarrierConf::IF_PER_PACKET, ns3::SatPhyRxCarrierConf::IF_TRACE, m_asyncAccess, m_crdsaOnlyForControl, m_creationTrace, m_daConstantErrorRate, m_daInterferenceModel, m_enableChannelEstimationError, m_errorModel, and m_llsConf.
Referenced by GetInstanceTypeId().
Here is the caller graph for this function:| void ns3::SatUtHelper::Initialize | ( | Ptr< SatLinkResultsFwd > | lrFwd | ) |
Definition at line 168 of file satellite-ut-helper.cc.
References ns3::SatPhyRxCarrierConf::EM_AVI, m_errorModel, and m_linkResults.
| NetDeviceContainer ns3::SatUtHelper::Install | ( | NodeContainer | c, |
| uint32_t | satId, | ||
| uint32_t | beamId, | ||
| Ptr< SatChannel > | fCh, | ||
| Ptr< SatChannel > | rCh, | ||
| Ptr< SatNetDevice > | gwNd, | ||
| Ptr< SatNcc > | ncc, | ||
| Address | satUserAddress, | ||
| SatPhy::ChannelPairGetterCallback | cbChannel, | ||
| SatMac::RoutingUpdateCallback | cbRouting | ||
| ) |
| c | a set of nodes |
| satId | id of the satellite |
| beamId | id of the beam |
| fCh | forward channel |
| rCh | return channel |
| gwNd | satellite netdevice of the GW |
| ncc | NCC (Network Control Center) |
| satUserAddress | MAC address of satellite user link |
This method creates a ns3::SatChannel with the attributes configured by SatUtHelper::SetChannelAttribute, then, for each node in the input container, we create a ns3::SatNetDevice with the requested attributes, a queue for this ns3::NetDevice, and associate the resulting ns3::NetDevice with the ns3::Node and ns3::SatChannel.
Definition at line 205 of file satellite-ut-helper.cc.
|
pure virtual |
| n | node |
| satId | id of the satellite |
| beamId | id of the beam |
| fCh | forward channel |
| rCh | return channel |
| gwNd | satellite netdevice of the GW |
| ncc | NCC (Network Control Center) |
| satUserAddress | MAC address of satellite user link |
Saves you from having to construct a temporary NodeContainer. This method is implemented in child classes.
Implemented in ns3::SatUtHelperLora, and ns3::SatUtHelperDvb.
| void ns3::SatUtHelper::SetChannelAttribute | ( | std::string | name, |
| const AttributeValue & | value | ||
| ) |
Set an attribute value to be propagated to each Channel created by the helper.
| name | the name of the attribute to set |
| value | the value of the attribute to set |
Set these attribute on each ns3::SatChannel created by SatUtHelper::Install
Definition at line 189 of file satellite-ut-helper.cc.
References m_channelFactory.
| void ns3::SatUtHelper::SetDeviceAttribute | ( | std::string | name, |
| const AttributeValue & | value | ||
| ) |
Set an attribute value to be propagated to each NetDevice created by the helper.
| name | the name of the attribute to set |
| value | the value of the attribute to set |
Set these attributes on each ns3::SatNetDevice created by SatUtHelper::Install
Definition at line 181 of file satellite-ut-helper.cc.
References m_deviceFactory.
| void ns3::SatUtHelper::SetPhyAttribute | ( | std::string | name, |
| const AttributeValue & | value | ||
| ) |
Set an attribute value to be propagated to each Phy created by the helper.
| name | the name of the attribute to set |
| value | the value of the attribute to set |
Set these attributes on each ns3::SatNetDevice created by SatUtHelper::Install
Definition at line 197 of file satellite-ut-helper.cc.
|
protected |
Definition at line 264 of file satellite-ut-helper.h.
Referenced by GetTypeId().
|
protected |
Definition at line 202 of file satellite-ut-helper.h.
Referenced by ns3::SatUtHelperDvb::Install(), and ns3::SatUtHelperLora::Install().
|
protected |
Definition at line 211 of file satellite-ut-helper.h.
Referenced by SatUtHelper(), and SetChannelAttribute().
|
protected |
Planned CRDSA usage:
Definition at line 257 of file satellite-ut-helper.h.
Referenced by GetTypeId(), and ns3::SatUtHelperDvb::Install().
|
protected |
Trace callback for creation traces.
Definition at line 239 of file satellite-ut-helper.h.
Referenced by GetTypeId().
|
protected |
Definition at line 227 of file satellite-ut-helper.h.
Referenced by GetTypeId(), ns3::SatUtHelperDvb::Install(), and ns3::SatUtHelperLora::Install().
|
protected |
Definition at line 217 of file satellite-ut-helper.h.
Referenced by GetTypeId(), ns3::SatUtHelperDvb::Install(), and ns3::SatUtHelperLora::Install().
|
protected |
Definition at line 212 of file satellite-ut-helper.h.
Referenced by SatUtHelper(), ns3::SatUtHelperDvb::Install(), ns3::SatUtHelperLora::Install(), and SetDeviceAttribute().
|
protected |
Enable channel estimation error modeling at forward link receiver (= UT).
Definition at line 250 of file satellite-ut-helper.h.
Referenced by GetTypeId(), ns3::SatUtHelperDvb::Install(), and ns3::SatUtHelperLora::Install().
|
protected |
Definition at line 222 of file satellite-ut-helper.h.
Referenced by GetTypeId(), Initialize(), ns3::SatUtHelperDvb::Install(), and ns3::SatUtHelperLora::Install().
|
protected |
Definition at line 203 of file satellite-ut-helper.h.
Referenced by ns3::SatUtHelperDvb::Install(), and ns3::SatUtHelperLora::Install().
|
protected |
Definition at line 234 of file satellite-ut-helper.h.
Referenced by Initialize(), ns3::SatUtHelperDvb::Install(), and ns3::SatUtHelperLora::Install().
|
protected |
Configured lower layer service configuration.
Definition at line 244 of file satellite-ut-helper.h.
Referenced by SatUtHelper(), GetTypeId(), ns3::SatUtHelperDvb::Install(), and ns3::SatUtHelperLora::Install().
|
protected |
The used random access model settings.
Definition at line 269 of file satellite-ut-helper.h.
Referenced by ns3::SatUtHelperDvb::Install(), and ns3::SatUtHelperLora::Install().
|
protected |
Definition at line 207 of file satellite-ut-helper.h.
Referenced by ns3::SatUtHelperDvb::Install().
|
protected |
Definition at line 208 of file satellite-ut-helper.h.
Referenced by ns3::SatUtHelperDvb::Install().
|
protected |
Definition at line 209 of file satellite-ut-helper.h.
Referenced by ns3::SatUtHelperDvb::Install().
|
protected |
Definition at line 204 of file satellite-ut-helper.h.
Referenced by ns3::SatUtHelperDvb::Install(), and ns3::SatUtHelperLora::Install().