#include <lte-helper.h>
Public Types | |
enum | LteEpsBearerToRlcMapping_t { RLC_SM_ALWAYS = 1, RLC_UM_ALWAYS = 2, RLC_AM_ALWAYS = 3, PER_BASED = 4 } |
Static Public Member Functions | |
static TypeId | GetTypeId (void) |
Protected Member Functions | |
virtual void | DoInitialize (void) |
![]() | |
Object (const Object &o) | |
virtual void | NotifyNewAggregate (void) |
Private Member Functions | |
void | DoHandoverRequest (Ptr< NetDevice > ueDev, Ptr< NetDevice > sourceEnbDev, Ptr< NetDevice > targetEnbDev) |
Ptr< NetDevice > | InstallSingleEnbDevice (Ptr< Node > n) |
Ptr< NetDevice > | InstallSingleUeDevice (Ptr< Node > n) |
Creation and configuration of LTE entities
Doxygen introspection did not find any typical Config paths.
No TraceSources are defined for this type.
Definition at line 55 of file lte-helper.h.
Definition at line 384 of file lte-helper.h.
ns3::LteHelper::LteHelper | ( | void | ) |
Definition at line 68 of file lte-helper.cc.
References ns3::IsotropicAntennaModel::GetTypeId(), ns3::LteEnbNetDevice::GetTypeId(), ns3::MultiModelSpectrumChannel::GetTypeId(), m_channelFactory, m_enbAntennaModelFactory, m_enbNetDeviceFactory, m_ueAntennaModelFactory, NS_LOG_FUNCTION, and ns3::ObjectFactory::SetTypeId().
|
virtual |
Definition at line 131 of file lte-helper.cc.
References NS_LOG_FUNCTION.
void ns3::LteHelper::ActivateDataRadioBearer | ( | NetDeviceContainer | ueDevices, |
EpsBearer | bearer | ||
) |
Call ActivateDataRadioBearer (ueDevice, bearer) for each UE device in a given set
ueDevices | the set of UE devices |
bearer |
Definition at line 793 of file lte-helper.cc.
References ns3::NetDeviceContainer::Begin(), ns3::NetDeviceContainer::End(), and NS_LOG_FUNCTION.
Referenced by ns3::LteRrcConnectionEstablishmentTestCase::Connect(), ns3::LenaMimoTestCase::DoRun(), ns3::LenaHarqTestCase::DoRun(), ns3::LenaDataPhyErrorModelTestCase::DoRun(), ns3::LenaRrFfMacSchedulerTestCase::DoRun(), ns3::LenaPfFfMacSchedulerTestCase1::DoRun(), ns3::LenaFdBetFfMacSchedulerTestCase1::DoRun(), LenaTdMtFfMacSchedulerTestCase::DoRun(), LenaTtaFfMacSchedulerTestCase::DoRun(), LenaFdMtFfMacSchedulerTestCase::DoRun(), ns3::LenaTdBetFfMacSchedulerTestCase1::DoRun(), ns3::LteLinkAdaptationTestCase::DoRun(), ns3::LteInterferenceTestCase::DoRun(), ns3::LtePathlossModelSystemTestCase::DoRun(), ns3::LteUeMeasurementsTestCase::DoRun(), ns3::LteEnbAntennaTestCase::DoRun(), ns3::LteX2HandoverTestCase::DoRun(), ns3::LenaDlCtrlPhyErrorModelTestCase::DoRun(), ns3::LenaPfFfMacSchedulerTestCase2::DoRun(), ns3::LenaTdBetFfMacSchedulerTestCase2::DoRun(), ns3::LenaFdBetFfMacSchedulerTestCase2::DoRun(), ns3::LteX2HandoverMeasuresTestCase::DoRun(), and main().
Activate a Data Radio Bearer for a simplified LTE-only simulation without EPC. This method will schedule the actual activation of the bearer so that it happens after the UE got connected.
ueDevice | the device of the UE for which the radio bearer is to be activated |
bearer | the characteristics of the bearer to be activated |
Definition at line 725 of file lte-helper.cc.
References ns3::DrbActivator::ActivateCallback(), ns3::Config::Connect(), ns3::Node::GetId(), ns3::LteNetDevice::GetIfIndex(), ns3::LteNetDevice::GetNode(), ns3::Object::GetObject(), m_epcHelper, ns3::MakeBoundCallback(), NS_ASSERT_MSG, and NS_LOG_FUNCTION.
void ns3::LteHelper::ActivateDedicatedEpsBearer | ( | NetDeviceContainer | ueDevices, |
EpsBearer | bearer, | ||
Ptr< EpcTft > | tft | ||
) |
Activate a dedicated EPS bearer on a given set of UE devices
ueDevices | the set of UE devices |
bearer | the characteristics of the bearer to be activated |
tft | the Traffic Flow Template that identifies the traffic to go on this bearer |
Definition at line 649 of file lte-helper.cc.
References ns3::NetDeviceContainer::Begin(), ns3::NetDeviceContainer::End(), and NS_LOG_FUNCTION.
Referenced by ns3::LenaFdTbfqFfMacSchedulerTestCase1::DoRun(), ns3::LenaPssFfMacSchedulerTestCase1::DoRun(), ns3::LenaTdTbfqFfMacSchedulerTestCase1::DoRun(), ns3::LteX2HandoverTestCase::DoRun(), ns3::LenaTdTbfqFfMacSchedulerTestCase2::DoRun(), ns3::LenaPssFfMacSchedulerTestCase2::DoRun(), ns3::LenaFdTbfqFfMacSchedulerTestCase2::DoRun(), ns3::LteX2HandoverMeasuresTestCase::DoRun(), ns3::LteEpcE2eDataTestCase::DoRun(), and main().
void ns3::LteHelper::ActivateDedicatedEpsBearer | ( | Ptr< NetDevice > | ueDevice, |
EpsBearer | bearer, | ||
Ptr< EpcTft > | tft | ||
) |
Activate a dedicated EPS bearer on a given UE device
ueDevices | the set of UE devices |
bearer | the characteristics of the bearer to be activated |
tft | the Traffic Flow Template that identifies the traffic to go on this bearer |
Definition at line 660 of file lte-helper.cc.
References ns3::EpcHelper::ActivateEpsBearer(), ns3::Object::GetObject(), m_epcHelper, NS_ASSERT_MSG, and NS_LOG_FUNCTION.
void ns3::LteHelper::AddX2Interface | ( | NodeContainer | enbNodes | ) |
Create an X2 interface between all the eNBs in a given set
enbNodes | the set of eNB nodes |
Definition at line 747 of file lte-helper.cc.
References ns3::NodeContainer::Begin(), ns3::NodeContainer::End(), and NS_LOG_FUNCTION.
Referenced by ns3::LteX2HandoverTestCase::DoRun(), ns3::LteX2HandoverMeasuresTestCase::DoRun(), and main().
Create an X2 interface between two eNBs
enbNode1 | one eNB of the X2 interface |
enbNode2 | the other eNB of the X2 interface |
Definition at line 761 of file lte-helper.cc.
References ns3::EpcHelper::AddX2Interface(), m_epcHelper, NS_LOG_FUNCTION, and NS_LOG_INFO.
int64_t ns3::LteHelper::AssignStreams | ( | NetDeviceContainer | c, |
int64_t | stream | ||
) |
Assign a fixed random variable stream number to the random variables used by this model. Return the number of streams (possibly zero) that have been assigned. The Install() method should have previously been called by the user.
c | NetDeviceContainer of the set of net devices for which the LteNetDevice should be modified to use a fixed stream |
stream | first stream index to use |
Definition at line 857 of file lte-helper.cc.
References ns3::TraceFadingLossModel::AssignStreams(), ns3::LteUeMac::AssignStreams(), ns3::LteSpectrumPhy::AssignStreams(), ns3::NetDeviceContainer::Begin(), ns3::NetDeviceContainer::End(), ns3::LtePhy::GetDownlinkSpectrumPhy(), ns3::Object::GetObject(), ns3::LteEnbNetDevice::GetPhy(), ns3::LtePhy::GetUplinkSpectrumPhy(), m_fadingModule, and m_fadingStreamsAssigned.
Referenced by ns3::LteX2HandoverTestCase::DoRun(), and ns3::LteX2HandoverMeasuresTestCase::DoRun().
void ns3::LteHelper::Attach | ( | NetDeviceContainer | ueDevices, |
Ptr< NetDevice > | enbDevice | ||
) |
Attach a set of UE devices to a single eNB device
ueDevices | |
enbDevice |
Definition at line 582 of file lte-helper.cc.
References ns3::NetDeviceContainer::Begin(), ns3::NetDeviceContainer::End(), and NS_LOG_FUNCTION.
Referenced by AttachToClosestEnb(), ns3::LteRrcConnectionEstablishmentTestCase::Connect(), ns3::LenaMimoTestCase::DoRun(), ns3::LenaHarqTestCase::DoRun(), ns3::LenaDataPhyErrorModelTestCase::DoRun(), ns3::LenaRrFfMacSchedulerTestCase::DoRun(), ns3::LenaPfFfMacSchedulerTestCase1::DoRun(), ns3::LenaFdBetFfMacSchedulerTestCase1::DoRun(), ns3::LenaPssFfMacSchedulerTestCase1::DoRun(), ns3::LenaTdBetFfMacSchedulerTestCase1::DoRun(), LenaTdMtFfMacSchedulerTestCase::DoRun(), LenaFdMtFfMacSchedulerTestCase::DoRun(), ns3::LenaTdTbfqFfMacSchedulerTestCase1::DoRun(), LenaTtaFfMacSchedulerTestCase::DoRun(), ns3::LenaFdTbfqFfMacSchedulerTestCase1::DoRun(), ns3::LteLinkAdaptationTestCase::DoRun(), ns3::LteInterferenceTestCase::DoRun(), ns3::LtePathlossModelSystemTestCase::DoRun(), ns3::LteUeMeasurementsTestCase::DoRun(), ns3::LteEnbAntennaTestCase::DoRun(), ns3::LteX2HandoverTestCase::DoRun(), ns3::LenaDlCtrlPhyErrorModelTestCase::DoRun(), ns3::LenaPfFfMacSchedulerTestCase2::DoRun(), ns3::LenaFdBetFfMacSchedulerTestCase2::DoRun(), ns3::LenaTdBetFfMacSchedulerTestCase2::DoRun(), ns3::LenaFdTbfqFfMacSchedulerTestCase2::DoRun(), ns3::LenaTdTbfqFfMacSchedulerTestCase2::DoRun(), ns3::LenaPssFfMacSchedulerTestCase2::DoRun(), ns3::LteX2HandoverMeasuresTestCase::DoRun(), ns3::LteEpcE2eDataTestCase::DoRun(), ns3::LteFadingTestSuite::LteFadingTestSuite(), and main().
Attach a UE to the network
Attach a UE device to the network via a given eNB, and activate the default EPS bearer.
ueDevice | |
enbDevice |
Definition at line 592 of file lte-helper.cc.
References ns3::EpcHelper::ActivateEpsBearer(), ns3::EpcTft::Default(), ns3::Object::GetObject(), m_epcHelper, ns3::EpsBearer::NGBR_VIDEO_TCP_DEFAULT, and NS_LOG_FUNCTION.
void ns3::LteHelper::AttachToClosestEnb | ( | NetDeviceContainer | ueDevices, |
NetDeviceContainer | enbDevices | ||
) |
Attach each UE in a set to the closest (w.r.t. distance) eNB among those in a set.
ueDevices | the set of UEs |
enbDevices | the set of eNBs |
Definition at line 617 of file lte-helper.cc.
References ns3::NetDeviceContainer::Begin(), ns3::NetDeviceContainer::End(), and NS_LOG_FUNCTION.
Referenced by main().
void ns3::LteHelper::AttachToClosestEnb | ( | Ptr< NetDevice > | ueDevice, |
NetDeviceContainer | enbDevices | ||
) |
Attach an UE ito the closest (w.r.t. distance) eNB among those in a set Will call LteHelper::Attach () passing to it the single eNB instance which resulted to be the closest to the UE
ueDevice | the UE |
enbDevices | the set of eNBs |
Definition at line 627 of file lte-helper.cc.
References Attach(), ns3::NetDeviceContainer::Begin(), ns3::CalculateDistance(), ns3::NetDeviceContainer::End(), ns3::NetDeviceContainer::GetN(), ns3::NetDevice::GetNode(), ns3::Object::GetObject(), GetPosition(), NS_ASSERT, NS_ASSERT_MSG, and NS_LOG_FUNCTION.
|
virtual |
This method is called by Object::Dispose or by the object's destructor, whichever comes first.
Subclasses are expected to implement their real destruction code in an overriden version of this method and chain up to their parent's implementation once they are done. i.e., for simplicity, the destructor of every subclass should be empty and its content should be moved to the associated DoDispose method.
It is safe to call GetObject from within this method.
Reimplemented from ns3::Object.
Definition at line 176 of file lte-helper.cc.
References m_downlinkChannel, m_uplinkChannel, and NS_LOG_FUNCTION.
|
private |
Definition at line 778 of file lte-helper.cc.
References ns3::Object::GetObject(), NS_LOG_FUNCTION, and ns3::LteEnbRrc::SendHandoverRequest().
Referenced by HandoverRequest().
|
protectedvirtual |
This method is called only once by Object::Initialize. If the user calls Object::Initialize multiple times, DoInitialize is called only the first time.
Subclasses are expected to override this method and chain up to their parent's implementation once they are done. It is safe to call GetObject and AggregateObject from within this method.
Reimplemented from ns3::Object.
Definition at line 81 of file lte-helper.cc.
References ns3::SpectrumChannel::AddPropagationLossModel(), ns3::SpectrumChannel::AddSpectrumPropagationLossModel(), ns3::ObjectFactory::Create(), ns3::Object::GetObject(), ns3::Object::Initialize(), m_channelFactory, m_dlPathlossModelFactory, m_downlinkChannel, m_downlinkPathlossModel, m_fadingModelFactory, m_fadingModelType, m_fadingModule, m_macStats, m_phyRxStats, m_phyStats, m_phyTxStats, m_ulPathlossModelFactory, m_uplinkChannel, m_uplinkPathlossModel, NS_ASSERT_MSG, NS_LOG_FUNCTION, and NS_LOG_LOGIC.
void ns3::LteHelper::EnableDlMacTraces | ( | void | ) |
Enable trace sinks for DL MAC layer
Definition at line 945 of file lte-helper.cc.
References ns3::Config::Connect(), ns3::MacStatsCalculator::DlSchedulingCallback(), m_macStats, ns3::MakeBoundCallback(), and NS_LOG_FUNCTION_NOARGS.
Referenced by EnableMacTraces().
void ns3::LteHelper::EnableDlPhyTraces | ( | void | ) |
Enable trace sinks for DL PHY layer
Definition at line 961 of file lte-helper.cc.
References ns3::Config::Connect(), m_phyStats, ns3::MakeBoundCallback(), NS_LOG_FUNCTION_NOARGS, and ns3::PhyStatsCalculator::ReportCurrentCellRsrpSinrCallback().
Referenced by EnablePhyTraces().
void ns3::LteHelper::EnableDlRxPhyTraces | ( | void | ) |
Enable trace sinks for DL reception PHY layer
Definition at line 922 of file lte-helper.cc.
References ns3::Config::Connect(), ns3::PhyRxStatsCalculator::DlPhyReceptionCallback(), m_phyRxStats, and ns3::MakeBoundCallback().
Referenced by EnablePhyTraces().
void ns3::LteHelper::EnableDlTxPhyTraces | ( | void | ) |
Enable trace sinks for DL transmission PHY layer
Definition at line 908 of file lte-helper.cc.
References ns3::Config::Connect(), ns3::PhyTxStatsCalculator::DlPhyTransmissionCallback(), m_phyTxStats, and ns3::MakeBoundCallback().
Referenced by EnablePhyTraces().
void ns3::LteHelper::EnableLogComponents | ( | void | ) |
Enables logging for all components of the LENA architecture
Definition at line 803 of file lte-helper.cc.
References ns3::TypeId::GetName(), ns3::ObjectFactory::GetTypeId(), ns3::LOG_LEVEL_ALL, ns3::LogComponentEnable(), and m_dlPathlossModelFactory.
Referenced by ns3::LteUplinkSrsSinrTestCase::DoRun().
void ns3::LteHelper::EnableMacTraces | ( | void | ) |
Enable trace sinks for MAC layer
Definition at line 937 of file lte-helper.cc.
References EnableDlMacTraces(), and EnableUlMacTraces().
Referenced by ns3::LenaMimoTestCase::DoRun(), ns3::LenaHarqTestCase::DoRun(), ns3::LenaPfFfMacSchedulerTestCase1::DoRun(), LenaTdMtFfMacSchedulerTestCase::DoRun(), LenaFdMtFfMacSchedulerTestCase::DoRun(), ns3::LenaTdBetFfMacSchedulerTestCase1::DoRun(), ns3::LenaTdTbfqFfMacSchedulerTestCase1::DoRun(), LenaTtaFfMacSchedulerTestCase::DoRun(), ns3::LenaFdBetFfMacSchedulerTestCase1::DoRun(), ns3::LenaPssFfMacSchedulerTestCase1::DoRun(), ns3::LenaFdTbfqFfMacSchedulerTestCase1::DoRun(), ns3::LteLinkAdaptationTestCase::DoRun(), ns3::LtePathlossModelSystemTestCase::DoRun(), ns3::LenaTdBetFfMacSchedulerTestCase2::DoRun(), ns3::LenaFdBetFfMacSchedulerTestCase2::DoRun(), EnableTraces(), and main().
void ns3::LteHelper::EnablePdcpTraces | ( | void | ) |
Enable trace sinks for PDCP layer
Definition at line 986 of file lte-helper.cc.
References ns3::RadioBearerStatsConnector::EnablePdcpStats(), m_pdcpStats, m_radioBearerStatsConnector, and NS_ASSERT_MSG.
Referenced by ns3::LteEpcE2eDataTestCase::DoRun(), EnableTraces(), and main().
void ns3::LteHelper::EnablePhyTraces | ( | void | ) |
Enable trace sinks for PHY layer
Definition at line 897 of file lte-helper.cc.
References EnableDlPhyTraces(), EnableDlRxPhyTraces(), EnableDlTxPhyTraces(), EnableUlPhyTraces(), EnableUlRxPhyTraces(), and EnableUlTxPhyTraces().
Referenced by EnableTraces(), and main().
void ns3::LteHelper::EnableRlcTraces | ( | void | ) |
Enable trace sinks for RLC layer
Definition at line 849 of file lte-helper.cc.
References ns3::RadioBearerStatsConnector::EnableRlcStats(), m_radioBearerStatsConnector, m_rlcStats, and NS_ASSERT_MSG.
Referenced by ns3::LenaMimoTestCase::DoRun(), ns3::LenaHarqTestCase::DoRun(), ns3::LenaDataPhyErrorModelTestCase::DoRun(), ns3::LenaRrFfMacSchedulerTestCase::DoRun(), ns3::LenaPfFfMacSchedulerTestCase1::DoRun(), ns3::LenaPssFfMacSchedulerTestCase1::DoRun(), LenaFdMtFfMacSchedulerTestCase::DoRun(), ns3::LenaTdBetFfMacSchedulerTestCase1::DoRun(), ns3::LenaFdBetFfMacSchedulerTestCase1::DoRun(), LenaTdMtFfMacSchedulerTestCase::DoRun(), ns3::LenaTdTbfqFfMacSchedulerTestCase1::DoRun(), ns3::LenaFdTbfqFfMacSchedulerTestCase1::DoRun(), LenaTtaFfMacSchedulerTestCase::DoRun(), ns3::LteLinkAdaptationTestCase::DoRun(), ns3::LtePathlossModelSystemTestCase::DoRun(), ns3::LenaDlCtrlPhyErrorModelTestCase::DoRun(), ns3::LenaPfFfMacSchedulerTestCase2::DoRun(), ns3::LenaFdBetFfMacSchedulerTestCase2::DoRun(), ns3::LenaTdBetFfMacSchedulerTestCase2::DoRun(), ns3::LenaFdTbfqFfMacSchedulerTestCase2::DoRun(), ns3::LenaPssFfMacSchedulerTestCase2::DoRun(), ns3::LenaTdTbfqFfMacSchedulerTestCase2::DoRun(), EnableTraces(), and main().
void ns3::LteHelper::EnableTraces | ( | void | ) |
Enables trace sinks for PHY, MAC, RLC and PDCP. To make sure all nodes are traced, traces should be enabled once all UEs and eNodeBs are in place and connected, just before starting the simulation.
Definition at line 840 of file lte-helper.cc.
References EnableMacTraces(), EnablePdcpTraces(), EnablePhyTraces(), and EnableRlcTraces().
Referenced by main().
void ns3::LteHelper::EnableUlMacTraces | ( | void | ) |
Enable trace sinks for UL MAC layer
Definition at line 953 of file lte-helper.cc.
References ns3::Config::Connect(), m_macStats, ns3::MakeBoundCallback(), NS_LOG_FUNCTION_NOARGS, and ns3::MacStatsCalculator::UlSchedulingCallback().
Referenced by EnableMacTraces().
void ns3::LteHelper::EnableUlPhyTraces | ( | void | ) |
Enable trace sinks for UL PHY layer
Definition at line 969 of file lte-helper.cc.
References ns3::Config::Connect(), m_phyStats, ns3::MakeBoundCallback(), NS_LOG_FUNCTION_NOARGS, ns3::PhyStatsCalculator::ReportInterference(), and ns3::PhyStatsCalculator::ReportUeSinr().
Referenced by EnablePhyTraces().
void ns3::LteHelper::EnableUlRxPhyTraces | ( | void | ) |
Enable trace sinks for UL reception PHY layer
Definition at line 929 of file lte-helper.cc.
References ns3::Config::Connect(), m_phyRxStats, ns3::MakeBoundCallback(), and ns3::PhyRxStatsCalculator::UlPhyReceptionCallback().
Referenced by EnablePhyTraces().
void ns3::LteHelper::EnableUlTxPhyTraces | ( | void | ) |
Enable trace sinks for UL transmission PHY layer
Definition at line 915 of file lte-helper.cc.
References ns3::Config::Connect(), m_phyTxStats, ns3::MakeBoundCallback(), and ns3::PhyTxStatsCalculator::UlPhyTransmissionCallback().
Referenced by EnablePhyTraces().
Ptr< RadioBearerStatsCalculator > ns3::LteHelper::GetPdcpStats | ( | void | ) |
Definition at line 994 of file lte-helper.cc.
References m_pdcpStats.
Referenced by ns3::LteEpcE2eDataTestCase::DoRun(), and main().
Ptr< RadioBearerStatsCalculator > ns3::LteHelper::GetRlcStats | ( | void | ) |
Definition at line 980 of file lte-helper.cc.
References m_rlcStats.
Referenced by ns3::LenaMimoTestCase::DoRun(), ns3::LenaHarqTestCase::DoRun(), ns3::LenaDataPhyErrorModelTestCase::DoRun(), ns3::LenaRrFfMacSchedulerTestCase::DoRun(), ns3::LenaPfFfMacSchedulerTestCase1::DoRun(), LenaTdMtFfMacSchedulerTestCase::DoRun(), ns3::LenaTdBetFfMacSchedulerTestCase1::DoRun(), LenaFdMtFfMacSchedulerTestCase::DoRun(), LenaTtaFfMacSchedulerTestCase::DoRun(), ns3::LenaFdTbfqFfMacSchedulerTestCase1::DoRun(), ns3::LenaTdTbfqFfMacSchedulerTestCase1::DoRun(), ns3::LenaPssFfMacSchedulerTestCase1::DoRun(), ns3::LenaFdBetFfMacSchedulerTestCase1::DoRun(), ns3::LenaDlCtrlPhyErrorModelTestCase::DoRun(), ns3::LenaPfFfMacSchedulerTestCase2::DoRun(), ns3::LenaTdBetFfMacSchedulerTestCase2::DoRun(), ns3::LenaFdBetFfMacSchedulerTestCase2::DoRun(), ns3::LenaTdTbfqFfMacSchedulerTestCase2::DoRun(), ns3::LenaPssFfMacSchedulerTestCase2::DoRun(), ns3::LenaFdTbfqFfMacSchedulerTestCase2::DoRun(), and main().
std::string ns3::LteHelper::GetSchedulerType | ( | ) | const |
Definition at line 201 of file lte-helper.cc.
References ns3::TypeId::GetName(), ns3::ObjectFactory::GetTypeId(), and m_schedulerFactory.
Referenced by GetTypeId().
|
static |
Get the type ID.
Reimplemented from ns3::Object.
Definition at line 136 of file lte-helper.cc.
References GetSchedulerType(), m_useIdealRrc, SetFadingModel(), ns3::TypeId::SetParent(), SetPathlossModelType(), and SetSchedulerType().
void ns3::LteHelper::HandoverRequest | ( | Time | hoTime, |
Ptr< NetDevice > | ueDev, | ||
Ptr< NetDevice > | sourceEnbDev, | ||
Ptr< NetDevice > | targetEnbDev | ||
) |
Trigger an X2-based handover of a UE between two eNBs
hoTime | when the Handover is initiated |
ueDev | the UE that hands off |
enbDev1 | source eNB, originally the UE is attached to this eNB |
enbDev2 | target eNB, the UE is finally connected to this eNB |
Definition at line 770 of file lte-helper.cc.
References DoHandoverRequest(), m_epcHelper, NS_ASSERT_MSG, NS_LOG_FUNCTION, and ns3::Simulator::Schedule().
Referenced by ns3::LteX2HandoverTestCase::DoRun(), and main().
NetDeviceContainer ns3::LteHelper::InstallEnbDevice | ( | NodeContainer | c | ) |
create a set of eNB devices
c | the node container where the devices are to be installed |
Definition at line 301 of file lte-helper.cc.
References ns3::NetDeviceContainer::Add(), ns3::NodeContainer::Begin(), first::devices, ns3::NodeContainer::End(), ns3::Object::Initialize(), InstallSingleEnbDevice(), and NS_LOG_FUNCTION.
Referenced by ns3::LenaMimoTestCase::DoRun(), ns3::LenaDataPhyErrorModelTestCase::DoRun(), ns3::LenaHarqTestCase::DoRun(), ns3::LenaRrFfMacSchedulerTestCase::DoRun(), ns3::LteRrcConnectionEstablishmentTestCase::DoRun(), ns3::LenaPfFfMacSchedulerTestCase1::DoRun(), ns3::LenaFdBetFfMacSchedulerTestCase1::DoRun(), ns3::LenaPssFfMacSchedulerTestCase1::DoRun(), ns3::LenaTdBetFfMacSchedulerTestCase1::DoRun(), LenaTdMtFfMacSchedulerTestCase::DoRun(), LenaFdMtFfMacSchedulerTestCase::DoRun(), ns3::LenaTdTbfqFfMacSchedulerTestCase1::DoRun(), LenaTtaFfMacSchedulerTestCase::DoRun(), ns3::LenaFdTbfqFfMacSchedulerTestCase1::DoRun(), ns3::LteLinkAdaptationTestCase::DoRun(), ns3::LteInterferenceTestCase::DoRun(), ns3::LtePathlossModelSystemTestCase::DoRun(), ns3::LteUeMeasurementsTestCase::DoRun(), ns3::LteEnbAntennaTestCase::DoRun(), ns3::LteX2HandoverTestCase::DoRun(), ns3::LenaDlCtrlPhyErrorModelTestCase::DoRun(), ns3::LenaPfFfMacSchedulerTestCase2::DoRun(), ns3::LenaFdBetFfMacSchedulerTestCase2::DoRun(), ns3::LenaTdBetFfMacSchedulerTestCase2::DoRun(), ns3::LenaFdTbfqFfMacSchedulerTestCase2::DoRun(), ns3::LenaPssFfMacSchedulerTestCase2::DoRun(), ns3::LenaTdTbfqFfMacSchedulerTestCase2::DoRun(), ns3::LteX2HandoverMeasuresTestCase::DoRun(), ns3::LteEpcE2eDataTestCase::DoRun(), ns3::LteFadingTestSuite::LteFadingTestSuite(), main(), and ns3::LteHexGridEnbTopologyHelper::SetPositionAndInstallEnbDevice().
Definition at line 331 of file lte-helper.cc.
References ns3::Node::AddDevice(), ns3::EpcHelper::AddEnb(), ns3::SpectrumChannel::AddRx(), ns3::ObjectFactory::Create(), ns3::EnumValue::Get(), ns3::Node::GetApplication(), ns3::LteSpectrumValueHelper::GetCarrierFrequency(), ns3::LteEnbNetDevice::GetCellId(), ns3::LteEnbNetDevice::GetDlEarfcn(), ns3::LteEnbMac::GetFfMacCschedSapUser(), ns3::LteEnbMac::GetFfMacSchedSapUser(), ns3::LteEnbMac::GetLteEnbCmacSapProvider(), ns3::LteEnbMac::GetLteEnbPhySapUser(), ns3::LteEnbMac::GetLteMacSapProvider(), ns3::Object::GetObject(), ns3::LteEnbNetDevice::GetUlEarfcn(), ns3::Object::Initialize(), m_cellIdCounter, m_downlinkChannel, m_downlinkPathlossModel, m_enbAntennaModelFactory, m_enbNetDeviceFactory, m_epcHelper, m_schedulerFactory, m_uplinkChannel, m_uplinkPathlossModel, m_useIdealRrc, ns3::MakeCallback(), NS_ABORT_MSG_IF, NS_ASSERT_MSG, NS_LOG_INFO, NS_LOG_LOGIC, NS_LOG_WARN, ns3::LteEnbPhy::PhyPduReceived(), ns3::LteNetDevice::Receive(), ns3::LteEnbPhy::ReceiveLteControlMessageList(), ns3::LteEnbPhy::ReceiveLteUlHarqFeedback(), RLC_SM_ALWAYS, ns3::LteEnbRrc::RLC_UM_ALWAYS, ns3::ObjectBase::SetAttribute(), ns3::ObjectBase::SetAttributeFailSafe(), ns3::LteEnbMac::SetFfMacCschedSapProvider(), ns3::LteEnbMac::SetFfMacSchedSapProvider(), ns3::LteEnbMac::SetLteEnbCmacSapUser(), ns3::LteEnbMac::SetLteEnbPhySapProvider(), and ns3::LteNetDevice::SetNode().
Referenced by InstallEnbDevice().
Definition at line 478 of file lte-helper.cc.
References ns3::EpcHelper::AddUe(), ns3::ObjectFactory::Create(), ns3::EpcUeNas::GetAsSapUser(), ns3::LteUeMac::GetLteMacSapProvider(), ns3::LteUeMac::GetLteUeCmacSapProvider(), ns3::LteUeMac::GetLteUePhySapUser(), ns3::Object::GetObject(), m_downlinkChannel, m_epcHelper, m_imsiCounter, m_ueAntennaModelFactory, m_uplinkChannel, m_useIdealRrc, ns3::MakeCallback(), NS_ABORT_MSG_IF, NS_ASSERT_MSG, NS_LOG_FUNCTION, ns3::LteUePhy::PhyPduReceived(), ns3::LteNetDevice::Receive(), ns3::LteUePhy::ReceiveLteControlMessageList(), ns3::LteUePhy::ReceiveLteDlHarqFeedback(), ns3::LteUePhy::ReceivePss(), ns3::EpcUeNas::SetAsSapProvider(), ns3::LteUeMac::SetLteUeCmacSapUser(), and ns3::LteUeMac::SetLteUePhySapProvider().
Referenced by InstallUeDevice().
NetDeviceContainer ns3::LteHelper::InstallUeDevice | ( | NodeContainer | c | ) |
create a set of UE devices
c | the node container where the devices are to be installed |
Definition at line 316 of file lte-helper.cc.
References ns3::NetDeviceContainer::Add(), ns3::NodeContainer::Begin(), first::devices, ns3::NodeContainer::End(), InstallSingleUeDevice(), and NS_LOG_FUNCTION.
Referenced by ns3::LenaMimoTestCase::DoRun(), ns3::LenaHarqTestCase::DoRun(), ns3::LenaDataPhyErrorModelTestCase::DoRun(), ns3::LenaRrFfMacSchedulerTestCase::DoRun(), ns3::LteRrcConnectionEstablishmentTestCase::DoRun(), ns3::LenaPfFfMacSchedulerTestCase1::DoRun(), ns3::LenaPssFfMacSchedulerTestCase1::DoRun(), LenaFdMtFfMacSchedulerTestCase::DoRun(), ns3::LenaFdBetFfMacSchedulerTestCase1::DoRun(), ns3::LenaTdBetFfMacSchedulerTestCase1::DoRun(), LenaTdMtFfMacSchedulerTestCase::DoRun(), ns3::LenaTdTbfqFfMacSchedulerTestCase1::DoRun(), ns3::LenaFdTbfqFfMacSchedulerTestCase1::DoRun(), LenaTtaFfMacSchedulerTestCase::DoRun(), ns3::LteLinkAdaptationTestCase::DoRun(), ns3::LteInterferenceTestCase::DoRun(), ns3::LtePathlossModelSystemTestCase::DoRun(), ns3::LteUeMeasurementsTestCase::DoRun(), ns3::LteEnbAntennaTestCase::DoRun(), ns3::LteX2HandoverTestCase::DoRun(), ns3::LenaDlCtrlPhyErrorModelTestCase::DoRun(), ns3::LenaPfFfMacSchedulerTestCase2::DoRun(), ns3::LenaTdBetFfMacSchedulerTestCase2::DoRun(), ns3::LenaFdBetFfMacSchedulerTestCase2::DoRun(), ns3::LenaPssFfMacSchedulerTestCase2::DoRun(), ns3::LenaFdTbfqFfMacSchedulerTestCase2::DoRun(), ns3::LenaTdTbfqFfMacSchedulerTestCase2::DoRun(), ns3::LteX2HandoverMeasuresTestCase::DoRun(), ns3::LteEpcE2eDataTestCase::DoRun(), ns3::LteFadingTestSuite::LteFadingTestSuite(), and main().
void ns3::LteHelper::SetEnbAntennaModelAttribute | ( | std::string | n, |
const AttributeValue & | v | ||
) |
set an attribute for the AntennaModel to be used for the eNBs
n | the name of the attribute |
v | the value of the attribute |
Definition at line 248 of file lte-helper.cc.
References m_enbAntennaModelFactory, NS_LOG_FUNCTION, and ns3::ObjectFactory::Set().
Referenced by ns3::LteEnbAntennaTestCase::DoRun(), main(), and ns3::LteHexGridEnbTopologyHelper::SetPositionAndInstallEnbDevice().
void ns3::LteHelper::SetEnbAntennaModelType | ( | std::string | type | ) |
type | the type of AntennaModel to be used for the eNBs |
Definition at line 241 of file lte-helper.cc.
References m_enbAntennaModelFactory, NS_LOG_FUNCTION, and ns3::ObjectFactory::SetTypeId().
Referenced by ns3::LteEnbAntennaTestCase::DoRun(), and main().
void ns3::LteHelper::SetEnbDeviceAttribute | ( | std::string | n, |
const AttributeValue & | v | ||
) |
set an attribute for the LteEnbNetDevice to be created
n | the name of the attribute |
v | the value of the attribute |
Definition at line 233 of file lte-helper.cc.
References m_enbNetDeviceFactory, NS_LOG_FUNCTION, and ns3::ObjectFactory::Set().
Referenced by ns3::LtePathlossModelSystemTestCase::DoRun(), and main().
Set the EpcHelper to be used to setup the EPC network in conjunction with the setup of the LTE radio access network
h | a pointer to the EpcHelper to be used |
Definition at line 186 of file lte-helper.cc.
References m_epcHelper, and NS_LOG_FUNCTION.
Referenced by ns3::LenaFdTbfqFfMacSchedulerTestCase1::DoRun(), ns3::LenaPssFfMacSchedulerTestCase1::DoRun(), ns3::LenaTdTbfqFfMacSchedulerTestCase1::DoRun(), ns3::LteX2HandoverTestCase::DoRun(), ns3::LenaTdTbfqFfMacSchedulerTestCase2::DoRun(), ns3::LenaPssFfMacSchedulerTestCase2::DoRun(), ns3::LenaFdTbfqFfMacSchedulerTestCase2::DoRun(), ns3::LteX2HandoverMeasuresTestCase::DoRun(), ns3::LteEpcE2eDataTestCase::DoRun(), and main().
void ns3::LteHelper::SetFadingModel | ( | std::string | model | ) |
type | the fading model to be used |
Definition at line 269 of file lte-helper.cc.
References m_fadingModelFactory, m_fadingModelType, NS_LOG_FUNCTION, ns3::Object::ObjectFactory, and ns3::ObjectFactory::SetTypeId().
Referenced by GetTypeId().
void ns3::LteHelper::SetFadingModelAttribute | ( | std::string | n, |
const AttributeValue & | v | ||
) |
set an attribute of the fading model
Definition at line 281 of file lte-helper.cc.
References m_fadingModelFactory, and ns3::ObjectFactory::Set().
Referenced by main().
void ns3::LteHelper::SetPathlossModelAttribute | ( | std::string | n, |
const AttributeValue & | v | ||
) |
set an attribute for the pathloss model to be created
n | the name of the attribute |
v | the value of the attribute |
Definition at line 225 of file lte-helper.cc.
References m_dlPathlossModelFactory, m_ulPathlossModelFactory, NS_LOG_FUNCTION, and ns3::ObjectFactory::Set().
Referenced by ns3::LenaMimoTestCase::DoRun(), ns3::LenaHarqTestCase::DoRun(), ns3::LenaDataPhyErrorModelTestCase::DoRun(), ns3::LteLinkAdaptationTestCase::DoRun(), ns3::LtePathlossModelSystemTestCase::DoRun(), ns3::LteEnbAntennaTestCase::DoRun(), ns3::LenaDlCtrlPhyErrorModelTestCase::DoRun(), and main().
void ns3::LteHelper::SetPathlossModelType | ( | std::string | type | ) |
type | the type of pathloss model to be used for the eNBs |
Definition at line 215 of file lte-helper.cc.
References m_dlPathlossModelFactory, m_ulPathlossModelFactory, NS_LOG_FUNCTION, ns3::Object::ObjectFactory, and ns3::ObjectFactory::SetTypeId().
Referenced by GetTypeId().
void ns3::LteHelper::SetSchedulerAttribute | ( | std::string | n, |
const AttributeValue & | v | ||
) |
set an attribute for the scheduler to be created
n | the name of the attribute |
v | the value of the attribute |
Definition at line 207 of file lte-helper.cc.
References m_schedulerFactory, NS_LOG_FUNCTION, and ns3::ObjectFactory::Set().
Referenced by ns3::LenaHarqTestCase::DoRun(), ns3::LenaDataPhyErrorModelTestCase::DoRun(), ns3::LteInterferenceTestCase::DoRun(), ns3::LteUeMeasurementsTestCase::DoRun(), ns3::LteEnbAntennaTestCase::DoRun(), ns3::LenaDlCtrlPhyErrorModelTestCase::DoRun(), and main().
void ns3::LteHelper::SetSchedulerType | ( | std::string | type | ) |
type | the type of scheduler to be used for the eNBs |
Definition at line 193 of file lte-helper.cc.
References m_schedulerFactory, NS_LOG_FUNCTION, ns3::Object::ObjectFactory, and ns3::ObjectFactory::SetTypeId().
Referenced by ns3::LenaMimoTestCase::DoRun(), ns3::LenaHarqTestCase::DoRun(), ns3::LenaDataPhyErrorModelTestCase::DoRun(), ns3::LenaRrFfMacSchedulerTestCase::DoRun(), ns3::LenaPfFfMacSchedulerTestCase1::DoRun(), ns3::LenaPssFfMacSchedulerTestCase1::DoRun(), LenaFdMtFfMacSchedulerTestCase::DoRun(), ns3::LenaTdTbfqFfMacSchedulerTestCase1::DoRun(), ns3::LenaFdBetFfMacSchedulerTestCase1::DoRun(), ns3::LenaTdBetFfMacSchedulerTestCase1::DoRun(), LenaTdMtFfMacSchedulerTestCase::DoRun(), ns3::LenaFdTbfqFfMacSchedulerTestCase1::DoRun(), LenaTtaFfMacSchedulerTestCase::DoRun(), ns3::LteLinkAdaptationTestCase::DoRun(), ns3::LteInterferenceTestCase::DoRun(), ns3::LtePathlossModelSystemTestCase::DoRun(), ns3::LteUeMeasurementsTestCase::DoRun(), ns3::LteEnbAntennaTestCase::DoRun(), ns3::LteX2HandoverTestCase::DoRun(), ns3::LenaDlCtrlPhyErrorModelTestCase::DoRun(), ns3::LenaPfFfMacSchedulerTestCase2::DoRun(), ns3::LenaTdBetFfMacSchedulerTestCase2::DoRun(), ns3::LenaFdBetFfMacSchedulerTestCase2::DoRun(), ns3::LenaTdTbfqFfMacSchedulerTestCase2::DoRun(), ns3::LenaFdTbfqFfMacSchedulerTestCase2::DoRun(), ns3::LenaPssFfMacSchedulerTestCase2::DoRun(), ns3::LteX2HandoverMeasuresTestCase::DoRun(), GetTypeId(), and main().
void ns3::LteHelper::SetSpectrumChannelAttribute | ( | std::string | n, |
const AttributeValue & | v | ||
) |
set an attribute for the SpectrumChannel to be used for the UEs
n | the name of the attribute |
v | the value of the attribute |
Definition at line 294 of file lte-helper.cc.
References m_channelFactory, and ns3::ObjectFactory::Set().
void ns3::LteHelper::SetSpectrumChannelType | ( | std::string | type | ) |
type | the type of SpectrumChannel to be used for the UEs |
Definition at line 287 of file lte-helper.cc.
References m_channelFactory, NS_LOG_FUNCTION, and ns3::ObjectFactory::SetTypeId().
Referenced by main().
void ns3::LteHelper::SetUeAntennaModelAttribute | ( | std::string | n, |
const AttributeValue & | v | ||
) |
set an attribute for the AntennaModel to be used for the UEs
n | the name of the attribute |
v | the value of the attribute |
Definition at line 262 of file lte-helper.cc.
References m_ueAntennaModelFactory, NS_LOG_FUNCTION, and ns3::ObjectFactory::Set().
void ns3::LteHelper::SetUeAntennaModelType | ( | std::string | type | ) |
type | the type of AntennaModel to be used for the UEs |
Definition at line 255 of file lte-helper.cc.
References m_ueAntennaModelFactory, NS_LOG_FUNCTION, and ns3::ObjectFactory::SetTypeId().
|
private |
Definition at line 445 of file lte-helper.h.
Referenced by InstallSingleEnbDevice().
|
private |
Definition at line 427 of file lte-helper.h.
Referenced by DoInitialize(), LteHelper(), SetSpectrumChannelAttribute(), and SetSpectrumChannelType().
|
private |
Definition at line 424 of file lte-helper.h.
Referenced by DoInitialize(), EnableLogComponents(), SetPathlossModelAttribute(), and SetPathlossModelType().
|
private |
Definition at line 412 of file lte-helper.h.
Referenced by DoDispose(), DoInitialize(), InstallSingleEnbDevice(), and InstallSingleUeDevice().
Definition at line 415 of file lte-helper.h.
Referenced by DoInitialize(), and InstallSingleEnbDevice().
|
private |
Definition at line 421 of file lte-helper.h.
Referenced by InstallSingleEnbDevice(), LteHelper(), SetEnbAntennaModelAttribute(), and SetEnbAntennaModelType().
|
private |
Definition at line 420 of file lte-helper.h.
Referenced by InstallSingleEnbDevice(), LteHelper(), and SetEnbDeviceAttribute().
Definition at line 442 of file lte-helper.h.
Referenced by ActivateDataRadioBearer(), ActivateDedicatedEpsBearer(), AddX2Interface(), Attach(), HandoverRequest(), InstallSingleEnbDevice(), InstallSingleUeDevice(), and SetEpcHelper().
|
private |
Definition at line 430 of file lte-helper.h.
Referenced by DoInitialize(), SetFadingModel(), and SetFadingModelAttribute().
|
private |
Definition at line 429 of file lte-helper.h.
Referenced by DoInitialize(), and SetFadingModel().
|
private |
Definition at line 431 of file lte-helper.h.
Referenced by AssignStreams(), and DoInitialize().
|
private |
Definition at line 432 of file lte-helper.h.
Referenced by AssignStreams().
|
private |
Definition at line 444 of file lte-helper.h.
Referenced by InstallSingleUeDevice().
|
private |
Definition at line 437 of file lte-helper.h.
Referenced by DoInitialize(), EnableDlMacTraces(), and EnableUlMacTraces().
|
private |
Definition at line 439 of file lte-helper.h.
Referenced by EnablePdcpTraces(), and GetPdcpStats().
|
private |
Definition at line 436 of file lte-helper.h.
Referenced by DoInitialize(), EnableDlRxPhyTraces(), and EnableUlRxPhyTraces().
|
private |
Definition at line 434 of file lte-helper.h.
Referenced by DoInitialize(), EnableDlPhyTraces(), and EnableUlPhyTraces().
|
private |
Definition at line 435 of file lte-helper.h.
Referenced by DoInitialize(), EnableDlTxPhyTraces(), and EnableUlTxPhyTraces().
|
private |
Definition at line 419 of file lte-helper.h.
|
private |
Definition at line 440 of file lte-helper.h.
Referenced by EnablePdcpTraces(), and EnableRlcTraces().
|
private |
Definition at line 438 of file lte-helper.h.
Referenced by EnableRlcTraces(), and GetRlcStats().
|
private |
Definition at line 418 of file lte-helper.h.
Referenced by GetSchedulerType(), InstallSingleEnbDevice(), SetSchedulerAttribute(), and SetSchedulerType().
|
private |
Definition at line 422 of file lte-helper.h.
Referenced by InstallSingleUeDevice(), LteHelper(), SetUeAntennaModelAttribute(), and SetUeAntennaModelType().
|
private |
Definition at line 425 of file lte-helper.h.
Referenced by DoInitialize(), SetPathlossModelAttribute(), and SetPathlossModelType().
|
private |
Definition at line 413 of file lte-helper.h.
Referenced by DoDispose(), DoInitialize(), InstallSingleEnbDevice(), and InstallSingleUeDevice().
Definition at line 416 of file lte-helper.h.
Referenced by DoInitialize(), and InstallSingleEnbDevice().
|
private |
Definition at line 447 of file lte-helper.h.
Referenced by GetTypeId(), InstallSingleEnbDevice(), and InstallSingleUeDevice().