Creation and configuration of LTE entities. More...
#include <lte-helper.h>
Public Member Functions | |
LteHelper (void) | |
virtual | ~LteHelper (void) |
void | ActivateDataRadioBearer (NetDeviceContainer ueDevices, EpsBearer bearer) |
Activate a Data Radio Bearer on a given UE devices (for LTE-only simulation). More... | |
void | ActivateDataRadioBearer (Ptr< NetDevice > ueDevice, EpsBearer bearer) |
Activate a Data Radio Bearer on a UE device (for LTE-only simulation). More... | |
uint8_t | ActivateDedicatedEpsBearer (NetDeviceContainer ueDevices, EpsBearer bearer, Ptr< EpcTft > tft) |
Activate a dedicated EPS bearer on a given set of UE devices. More... | |
uint8_t | ActivateDedicatedEpsBearer (Ptr< NetDevice > ueDevice, EpsBearer bearer, Ptr< EpcTft > tft) |
Activate a dedicated EPS bearer on a given UE device. More... | |
void | AddX2Interface (NodeContainer enbNodes) |
Create an X2 interface between all the eNBs in a given set. More... | |
void | AddX2Interface (Ptr< Node > enbNode1, Ptr< Node > enbNode2) |
Create an X2 interface between two eNBs. More... | |
int64_t | AssignStreams (NetDeviceContainer c, int64_t stream) |
Assign a fixed random variable stream number to the random variables used. More... | |
void | Attach (NetDeviceContainer ueDevices) |
Enables automatic attachment of a set of UE devices to a suitable cell using Idle mode initial cell selection procedure. More... | |
void | Attach (Ptr< NetDevice > ueDevice) |
Enables automatic attachment of a UE device to a suitable cell using Idle mode initial cell selection procedure. More... | |
void | Attach (NetDeviceContainer ueDevices, Ptr< NetDevice > enbDevice) |
Manual attachment of a set of UE devices to the network via a given eNodeB. More... | |
void | Attach (Ptr< NetDevice > ueDevice, Ptr< NetDevice > enbDevice) |
Manual attachment of a UE device to the network via a given eNodeB. More... | |
void | AttachToClosestEnb (NetDeviceContainer ueDevices, NetDeviceContainer enbDevices) |
Manual attachment of a set of UE devices to the network via the closest eNodeB (with respect to distance) among those in the set. More... | |
void | AttachToClosestEnb (Ptr< NetDevice > ueDevice, NetDeviceContainer enbDevices) |
Manual attachment of a UE device to the network via the closest eNodeB (with respect to distance) among those in the set. More... | |
void | DeActivateDedicatedEpsBearer (Ptr< NetDevice > ueDevice, Ptr< NetDevice > enbDevice, uint8_t bearerId) |
Manually trigger dedicated bearer de-activation at specific simulation time. More... | |
virtual void | DoDispose (void) |
Destructor implementation. More... | |
void | EnableDlMacTraces (void) |
Enable trace sinks for DL MAC layer. More... | |
void | EnableDlPhyTraces (void) |
Enable trace sinks for DL PHY layer. More... | |
void | EnableDlRxPhyTraces (void) |
Enable trace sinks for DL reception PHY layer. More... | |
void | EnableDlTxPhyTraces (void) |
Enable trace sinks for DL transmission PHY layer. More... | |
void | EnableLogComponents (void) |
Enables full-blown logging for major components of the LENA architecture. More... | |
void | EnableMacTraces (void) |
Enable trace sinks for MAC layer. More... | |
void | EnablePdcpTraces (void) |
Enable trace sinks for PDCP layer. More... | |
void | EnablePhyTraces (void) |
Enable trace sinks for PHY layer. More... | |
void | EnableRlcTraces (void) |
Enable trace sinks for RLC layer. More... | |
void | EnableTraces (void) |
Enables trace sinks for PHY, MAC, RLC and PDCP. More... | |
void | EnableUlMacTraces (void) |
Enable trace sinks for UL MAC layer. More... | |
void | EnableUlPhyTraces (void) |
Enable trace sinks for UL PHY layer. More... | |
void | EnableUlRxPhyTraces (void) |
Enable trace sinks for UL reception PHY layer. More... | |
void | EnableUlTxPhyTraces (void) |
Enable trace sinks for UL transmission PHY layer. More... | |
std::string | GetFfrAlgorithmType () const |
std::string | GetHandoverAlgorithmType () const |
Ptr< RadioBearerStatsCalculator > | GetPdcpStats (void) |
Ptr< RadioBearerStatsCalculator > | GetRlcStats (void) |
std::string | GetSchedulerType () const |
void | HandoverRequest (Time hoTime, Ptr< NetDevice > ueDev, Ptr< NetDevice > sourceEnbDev, Ptr< NetDevice > targetEnbDev) |
Manually trigger an X2-based handover. More... | |
NetDeviceContainer | InstallEnbDevice (NodeContainer c) |
Create a set of eNodeB devices. More... | |
NetDeviceContainer | InstallUeDevice (NodeContainer c) |
Create a set of UE devices. More... | |
void | SetEnbAntennaModelAttribute (std::string n, const AttributeValue &v) |
Set an attribute for the eNodeB antenna model to be created. More... | |
void | SetEnbAntennaModelType (std::string type) |
Set the type of antenna model to be used by eNodeB devices. More... | |
void | SetEnbDeviceAttribute (std::string n, const AttributeValue &v) |
Set an attribute for the eNodeB devices (LteEnbNetDevice) to be created. More... | |
void | SetEpcHelper (Ptr< EpcHelper > h) |
Set the EpcHelper to be used to setup the EPC network in conjunction with the setup of the LTE radio access network. More... | |
void | SetFadingModel (std::string type) |
Set the type of fading model to be used in both DL and UL. More... | |
void | SetFadingModelAttribute (std::string n, const AttributeValue &v) |
Set an attribute for the fading model to be created (both DL and UL). More... | |
void | SetFfrAlgorithmAttribute (std::string n, const AttributeValue &v) |
Set an attribute for the FFR algorithm to be created. More... | |
void | SetFfrAlgorithmType (std::string type) |
Set the type of FFR algorithm to be used by eNodeB devices. More... | |
void | SetHandoverAlgorithmAttribute (std::string n, const AttributeValue &v) |
Set an attribute for the handover algorithm to be created. More... | |
void | SetHandoverAlgorithmType (std::string type) |
Set the type of handover algorithm to be used by eNodeB devices. More... | |
void | SetPathlossModelAttribute (std::string n, const AttributeValue &v) |
Set an attribute for the path loss models to be created. More... | |
void | SetPathlossModelType (std::string type) |
Set the type of path loss model to be used for both DL and UL channels. More... | |
void | SetSchedulerAttribute (std::string n, const AttributeValue &v) |
Set an attribute for the scheduler to be created. More... | |
void | SetSchedulerType (std::string type) |
Set the type of scheduler to be used by eNodeB devices. More... | |
void | SetSpectrumChannelAttribute (std::string n, const AttributeValue &v) |
Set an attribute for the spectrum channel to be created (both DL and UL). More... | |
void | SetSpectrumChannelType (std::string type) |
Set the type of spectrum channel to be used in both DL and UL. More... | |
void | SetUeAntennaModelAttribute (std::string n, const AttributeValue &v) |
Set an attribute for the UE antenna model to be created. More... | |
void | SetUeAntennaModelType (std::string type) |
Set the type of antenna model to be used by UE devices. More... | |
void | SetUeDeviceAttribute (std::string n, const AttributeValue &v) |
Set an attribute for the UE devices (LteUeNetDevice) to be created. More... | |
![]() | |
Object () | |
Constructor. More... | |
virtual | ~Object () |
Destructor. More... | |
void | AggregateObject (Ptr< Object > other) |
Aggregate two Objects together. More... | |
void | Dispose (void) |
Dispose of this Object. More... | |
AggregateIterator | GetAggregateIterator (void) const |
Get an iterator to the Objects aggregated to this one. More... | |
virtual TypeId | GetInstanceTypeId (void) const |
Implement the GetInstanceTypeId method defined in ObjectBase. More... | |
template<typename T > | |
Ptr< T > | GetObject (void) const |
Get a pointer to the requested aggregated Object. More... | |
template<typename T > | |
Ptr< T > | GetObject (TypeId tid) const |
Get a pointer to the requested aggregated Object. More... | |
void | Initialize (void) |
Invoke DoInitialize on all Objects aggregated to this one. More... | |
![]() | |
SimpleRefCount () | |
Constructor. More... | |
SimpleRefCount (const SimpleRefCount &o) | |
Copy constructor. More... | |
uint32_t | GetReferenceCount (void) const |
Get the reference count of the object. More... | |
SimpleRefCount & | operator= (const SimpleRefCount &o) |
Assignment. More... | |
void | Ref (void) const |
Increment the reference count. More... | |
void | Unref (void) const |
Decrement the reference count. More... | |
![]() | |
virtual | ~ObjectBase () |
Virtual destructor. More... | |
void | GetAttribute (std::string name, AttributeValue &value) const |
Get the value of an attribute, raising fatal errors if unsuccessful. More... | |
bool | GetAttributeFailSafe (std::string name, AttributeValue &value) const |
Get the value of an attribute without raising erros. More... | |
void | SetAttribute (std::string name, const AttributeValue &value) |
Set a single attribute, raising fatal errors if unsuccessful. More... | |
bool | SetAttributeFailSafe (std::string name, const AttributeValue &value) |
Set a single attribute without raising errors. More... | |
bool | TraceConnect (std::string name, std::string context, const CallbackBase &cb) |
Connect a TraceSource to a Callback with a context. More... | |
bool | TraceConnectWithoutContext (std::string name, const CallbackBase &cb) |
Connect a TraceSource to a Callback without a context. More... | |
bool | TraceDisconnect (std::string name, std::string context, const CallbackBase &cb) |
Disconnect from a TraceSource a Callback previously connected with a context. More... | |
bool | TraceDisconnectWithoutContext (std::string name, const CallbackBase &cb) |
Disconnect from a TraceSource a Callback previously connected without a context. More... | |
Static Public Member Functions | |
static TypeId | GetTypeId (void) |
Register this type. More... | |
![]() | |
static TypeId | GetTypeId (void) |
Register this type. More... | |
![]() | |
static void | Cleanup (void) |
Noop. More... | |
![]() | |
static TypeId | GetTypeId (void) |
Get the type ID. More... | |
Protected Member Functions | |
virtual void | DoInitialize (void) |
Initialize() implementation. More... | |
![]() | |
Object (const Object &o) | |
Copy an Object. More... | |
virtual void | NotifyNewAggregate (void) |
Notify all Objects aggregated to this one of a new Object being aggregated. More... | |
![]() | |
void | ConstructSelf (const AttributeConstructionList &attributes) |
Complete construction of ObjectBase; invoked by derived classes. More... | |
virtual void | NotifyConstructionCompleted (void) |
Notifier called once the ObjectBase is fully constructed. More... | |
Private Member Functions | |
void | DoDeActivateDedicatedEpsBearer (Ptr< NetDevice > ueDevice, Ptr< NetDevice > enbDevice, uint8_t bearerId) |
The actual function to trigger a manual bearer de-activation. More... | |
void | DoHandoverRequest (Ptr< NetDevice > ueDev, Ptr< NetDevice > sourceEnbDev, Ptr< NetDevice > targetEnbDev) |
The actual function to trigger a manual handover. More... | |
Ptr< NetDevice > | InstallSingleEnbDevice (Ptr< Node > n) |
Create an eNodeB device (LteEnbNetDevice) on the given node. More... | |
Ptr< NetDevice > | InstallSingleUeDevice (Ptr< Node > n) |
Create a UE device (LteUeNetDevice) on the given node. More... | |
Private Attributes | |
uint16_t | m_cellIdCounter |
Keep track of the number of cell ID allocated. More... | |
ObjectFactory | m_channelFactory |
Factory of both the downlink and uplink LTE channels. More... | |
ObjectFactory | m_dlPathlossModelFactory |
Factory of path loss model object for the downlink channel. More... | |
Ptr< SpectrumChannel > | m_downlinkChannel |
The downlink LTE channel used in the simulation. More... | |
Ptr< Object > | m_downlinkPathlossModel |
The path loss model used in the downlink channel. More... | |
ObjectFactory | m_enbAntennaModelFactory |
Factory of antenna object for eNodeB. More... | |
ObjectFactory | m_enbNetDeviceFactory |
Factory of LteEnbNetDevice objects. More... | |
Ptr< EpcHelper > | m_epcHelper |
Helper which provides implementation of core network. More... | |
ObjectFactory | m_fadingModelFactory |
Factory of fading model object for both the downlink and uplink channels. More... | |
std::string | m_fadingModelType |
Name of fading model type, e.g., "ns3::TraceFadingLossModel". More... | |
Ptr< SpectrumPropagationLossModel > | m_fadingModule |
The fading model used in both the downlink and uplink channels. More... | |
bool | m_fadingStreamsAssigned |
True if a random variable stream number has been assigned for the fading model. More... | |
ObjectFactory | m_ffrAlgorithmFactory |
Factory of FFR (frequency reuse) algorithm object. More... | |
ObjectFactory | m_handoverAlgorithmFactory |
Factory of handover algorithm object. More... | |
uint64_t | m_imsiCounter |
Keep track of the number of IMSI allocated. More... | |
bool | m_isAnrEnabled |
The AnrEnabled attribute. More... | |
Ptr< MacStatsCalculator > | m_macStats |
Container of MAC layer statistics. More... | |
Ptr< RadioBearerStatsCalculator > | m_pdcpStats |
Container of PDCP layer statistics. More... | |
Ptr< PhyRxStatsCalculator > | m_phyRxStats |
Container of PHY layer statistics related to reception. More... | |
Ptr< PhyStatsCalculator > | m_phyStats |
Container of PHY layer statistics. More... | |
Ptr< PhyTxStatsCalculator > | m_phyTxStats |
Container of PHY layer statistics related to transmission. More... | |
RadioBearerStatsConnector | m_radioBearerStatsConnector |
Connects RLC and PDCP statistics containers to appropriate trace sources. More... | |
Ptr< RadioBearerStatsCalculator > | m_rlcStats |
Container of RLC layer statistics. More... | |
ObjectFactory | m_schedulerFactory |
Factory of MAC scheduler object. More... | |
ObjectFactory | m_ueAntennaModelFactory |
Factory of antenna object for UE. More... | |
ObjectFactory | m_ueNetDeviceFactory |
Factory for LteUeNetDevice objects. More... | |
ObjectFactory | m_ulPathlossModelFactory |
Factory of path loss model object for the uplink channel. More... | |
Ptr< SpectrumChannel > | m_uplinkChannel |
The uplink LTE channel used in the simulation. More... | |
Ptr< Object > | m_uplinkPathlossModel |
The path loss model used in the uplink channel. More... | |
bool | m_useIdealRrc |
The UseIdealRrc attribute. More... | |
bool | m_usePdschForCqiGeneration |
The UsePdschForCqiGeneration attribute. More... | |
Additional Inherited Members | |
![]() | |
static TypeId | GetObjectIid (void) |
Ensure the TypeId for ObjectBase gets fully configured to anchor the inheritance tree properly. More... | |
Creation and configuration of LTE entities.
Introspection did not find any typical Config paths.
One LteHelper instance is typically enough for an LTE simulation. To create it:
Ptr<LteHelper> lteHelper = CreateObject<LteHelper> ();
The general responsibility of the helper is to create various LTE objects and arrange them together to make the whole LTE system. The overall arrangement would look like the following:
Spetrum channels are created automatically: one for DL, and one for UL. eNodeB devices are created by calling InstallEnbDevice(), while UE devices are created by calling InstallUeDevice(). EPC helper can be set by using SetEpcHelper().
No TraceSources are defined for this type.
Size of this type is 592 bytes (on a 64-bit architecture).
Definition at line 96 of file lte-helper.h.
ns3::LteHelper::LteHelper | ( | void | ) |
Definition at line 71 of file lte-helper.cc.
References ns3::IsotropicAntennaModel::GetTypeId(), ns3::LteUeNetDevice::GetTypeId(), ns3::LteEnbNetDevice::GetTypeId(), ns3::MultiModelSpectrumChannel::GetTypeId(), m_channelFactory, m_enbAntennaModelFactory, m_enbNetDeviceFactory, m_ueAntennaModelFactory, m_ueNetDeviceFactory, NS_LOG_FUNCTION, and ns3::ObjectFactory::SetTypeId().
|
virtual |
Definition at line 135 of file lte-helper.cc.
References NS_LOG_FUNCTION.
void ns3::LteHelper::ActivateDataRadioBearer | ( | NetDeviceContainer | ueDevices, |
EpsBearer | bearer | ||
) |
Activate a Data Radio Bearer on a given UE devices (for LTE-only simulation).
ueDevices | the set of UE devices |
bearer | the characteristics of the bearer to be activated |
Definition at line 1046 of file lte-helper.cc.
References ns3::NetDeviceContainer::Begin(), ns3::NetDeviceContainer::End(), and NS_LOG_FUNCTION.
Referenced by LteRrcConnectionEstablishmentTestCase::Connect(), LenaMimoTestCase::DoRun(), LenaHarqTestCase::DoRun(), LenaRrFfMacSchedulerTestCase::DoRun(), LenaDataPhyErrorModelTestCase::DoRun(), LteInterferenceHardFrTestCase::DoRun(), LenaPfFfMacSchedulerTestCase1::DoRun(), LteCqiGenerationTestCase::DoRun(), LenaFdBetFfMacSchedulerTestCase1::DoRun(), LenaTdBetFfMacSchedulerTestCase1::DoRun(), LenaTdMtFfMacSchedulerTestCase::DoRun(), LenaTtaFfMacSchedulerTestCase::DoRun(), LenaFdMtFfMacSchedulerTestCase::DoRun(), LteLinkAdaptationTestCase::DoRun(), LteInterferenceTestCase::DoRun(), LtePathlossModelSystemTestCase::DoRun(), LteEnbAntennaTestCase::DoRun(), LteX2HandoverTestCase::DoRun(), LteInterferenceStrictFrTestCase::DoRun(), LenaPfFfMacSchedulerTestCase2::DoRun(), LenaTdBetFfMacSchedulerTestCase2::DoRun(), LenaFdBetFfMacSchedulerTestCase2::DoRun(), LteDownlinkPowerControlTestCase::DoRun(), LteUeMeasurementsTestCase::DoRun(), LenaDlCtrlPhyErrorModelTestCase::DoRun(), LteCqiGenerationDlPowerControlTestCase::DoRun(), LteUplinkOpenLoopPowerControlTestCase::DoRun(), LteHardFrTestCase::DoRun(), LteX2HandoverMeasuresTestCase::DoRun(), LteUplinkClosedLoopPowerControlAbsoluteModeTestCase::DoRun(), LteDownlinkPowerControlRrcConnectionReconfigurationTestCase::DoRun(), LteUplinkClosedLoopPowerControlAccumulatedModeTestCase::DoRun(), LteStrictFrTestCase::DoRun(), LteUeMeasurementsPiecewiseTestCase1::DoRun(), LteStrictFrAreaTestCase::DoRun(), LteSoftFrAreaTestCase::DoRun(), LteSoftFfrAreaTestCase::DoRun(), LteEnhancedFfrAreaTestCase::DoRun(), and LteUeMeasurementsPiecewiseTestCase2::DoRun().
Activate a Data Radio Bearer on a UE device (for LTE-only simulation).
This method will schedule the actual activation the bearer so that it happens after the UE got connected.
ueDevice | the UE device |
bearer | the characteristics of the bearer to be activated |
Definition at line 954 of file lte-helper.cc.
References ns3::DrbActivator::ActivateCallback(), ns3::Config::Connect(), ns3::Node::GetId(), ns3::LteNetDevice::GetIfIndex(), ns3::LteNetDevice::GetNode(), m_epcHelper, ns3::MakeBoundCallback(), NS_ASSERT_MSG, and NS_LOG_FUNCTION.
uint8_t 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 824 of file lte-helper.cc.
References ns3::NetDeviceContainer::Begin(), ns3::NetDeviceContainer::End(), and NS_LOG_FUNCTION.
Referenced by ns3::LenaDeactivateBearerTestCase::DoRun(), LenaCqaFfMacSchedulerTestCase1::DoRun(), LenaFdTbfqFfMacSchedulerTestCase1::DoRun(), LenaTdTbfqFfMacSchedulerTestCase1::DoRun(), LenaPssFfMacSchedulerTestCase1::DoRun(), LteX2HandoverTestCase::DoRun(), LenaCqaFfMacSchedulerTestCase2::DoRun(), LenaPssFfMacSchedulerTestCase2::DoRun(), LenaFdTbfqFfMacSchedulerTestCase2::DoRun(), LenaTdTbfqFfMacSchedulerTestCase2::DoRun(), LteX2HandoverMeasuresTestCase::DoRun(), LteEpcE2eDataTestCase::DoRun(), and LteDistributedFfrAreaTestCase::DoRun().
uint8_t ns3::LteHelper::ActivateDedicatedEpsBearer | ( | Ptr< NetDevice > | ueDevice, |
EpsBearer | bearer, | ||
Ptr< EpcTft > | tft | ||
) |
Activate a dedicated EPS bearer on a given UE device.
ueDevice | the UE device |
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 837 of file lte-helper.cc.
References 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 976 of file lte-helper.cc.
References ns3::NodeContainer::Begin(), ns3::NodeContainer::End(), m_epcHelper, NS_ASSERT_MSG, and NS_LOG_FUNCTION.
Referenced by LteX2HandoverTestCase::DoRun(), LteX2HandoverMeasuresTestCase::DoRun(), LteHandoverTargetTestCase::DoRun(), LteDistributedFfrAreaTestCase::DoRun(), and LteUeMeasurementsHandoverTestCase::DoRun().
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 992 of file lte-helper.cc.
References 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.
The InstallEnbDevice() or InstallUeDevice method should have previously been called by the user on the given devices.
If TraceFadingLossModel has been set as the fading model type, this method will also assign a stream number to it, if none has been assigned before.
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 1110 of file lte-helper.cc.
References ns3::TraceFadingLossModel::AssignStreams(), ns3::NetDeviceContainer::Begin(), ns3::NetDeviceContainer::End(), ns3::LteEnbNetDevice::GetPhy(), m_fadingModule, and m_fadingStreamsAssigned.
Referenced by LenaDataPhyErrorModelTestCase::DoRun(), LteRrcConnectionEstablishmentTestCase::DoRun(), LteX2HandoverTestCase::DoRun(), LenaDlCtrlPhyErrorModelTestCase::DoRun(), LteX2HandoverMeasuresTestCase::DoRun(), LteCellSelectionTestCase::DoRun(), and LteRrcConnectionEstablishmentErrorTestCase::DoRun().
void ns3::LteHelper::Attach | ( | NetDeviceContainer | ueDevices | ) |
Enables automatic attachment of a set of UE devices to a suitable cell using Idle mode initial cell selection procedure.
ueDevices | the set of UE devices to be attached |
By calling this, the UE will start the initial cell selection procedure at the beginning of simulation. In addition, the function also instructs each UE to immediately enter CONNECTED mode and activates the default EPS bearer.
If this function is called when the UE is in a situation where entering CONNECTED mode is not possible (e.g. before the simulation begin), then the UE will attempt to connect at the earliest possible time (e.g. after it camps to a suitable cell).
Note that this function can only be used in EPC-enabled simulation.
Definition at line 716 of file lte-helper.cc.
References ns3::NetDeviceContainer::Begin(), ns3::NetDeviceContainer::End(), and NS_LOG_FUNCTION.
Referenced by Attach(), AttachToClosestEnb(), LteRrcConnectionEstablishmentTestCase::Connect(), ns3::LenaDeactivateBearerTestCase::DoRun(), LenaMimoTestCase::DoRun(), LenaHarqTestCase::DoRun(), LenaRrFfMacSchedulerTestCase::DoRun(), LenaCqaFfMacSchedulerTestCase1::DoRun(), LenaDataPhyErrorModelTestCase::DoRun(), LteInterferenceHardFrTestCase::DoRun(), LteCqiGenerationTestCase::DoRun(), LenaPfFfMacSchedulerTestCase1::DoRun(), LenaPssFfMacSchedulerTestCase1::DoRun(), LenaTdBetFfMacSchedulerTestCase1::DoRun(), LenaTdMtFfMacSchedulerTestCase::DoRun(), LenaTdTbfqFfMacSchedulerTestCase1::DoRun(), LenaTtaFfMacSchedulerTestCase::DoRun(), LenaFdBetFfMacSchedulerTestCase1::DoRun(), LenaFdMtFfMacSchedulerTestCase::DoRun(), LenaFdTbfqFfMacSchedulerTestCase1::DoRun(), LteLinkAdaptationTestCase::DoRun(), LteInterferenceTestCase::DoRun(), LtePathlossModelSystemTestCase::DoRun(), LteEnbAntennaTestCase::DoRun(), LteX2HandoverTestCase::DoRun(), LteInterferenceStrictFrTestCase::DoRun(), LenaPfFfMacSchedulerTestCase2::DoRun(), LenaTdBetFfMacSchedulerTestCase2::DoRun(), LenaCqaFfMacSchedulerTestCase2::DoRun(), LenaFdBetFfMacSchedulerTestCase2::DoRun(), LenaFdTbfqFfMacSchedulerTestCase2::DoRun(), LteDownlinkPowerControlTestCase::DoRun(), LenaPssFfMacSchedulerTestCase2::DoRun(), LenaTdTbfqFfMacSchedulerTestCase2::DoRun(), LteUeMeasurementsTestCase::DoRun(), LenaDlCtrlPhyErrorModelTestCase::DoRun(), LteCqiGenerationDlPowerControlTestCase::DoRun(), LteUplinkOpenLoopPowerControlTestCase::DoRun(), LteHardFrTestCase::DoRun(), LteX2HandoverMeasuresTestCase::DoRun(), LteDownlinkPowerControlRrcConnectionReconfigurationTestCase::DoRun(), LteUplinkClosedLoopPowerControlAbsoluteModeTestCase::DoRun(), LteEpcE2eDataTestCase::DoRun(), LteUplinkClosedLoopPowerControlAccumulatedModeTestCase::DoRun(), LteCellSelectionTestCase::DoRun(), LteStrictFrTestCase::DoRun(), LteHandoverTargetTestCase::DoRun(), LteUeMeasurementsPiecewiseTestCase1::DoRun(), LteStrictFrAreaTestCase::DoRun(), LteSoftFrAreaTestCase::DoRun(), LteSoftFfrAreaTestCase::DoRun(), LteEnhancedFfrAreaTestCase::DoRun(), LteDistributedFfrAreaTestCase::DoRun(), LteUeMeasurementsPiecewiseTestCase2::DoRun(), LteUeMeasurementsHandoverTestCase::DoRun(), and LteFadingTestSuite::LteFadingTestSuite().
Enables automatic attachment of a UE device to a suitable cell using Idle mode initial cell selection procedure.
ueDevice | the UE device to be attached |
By calling this, the UE will start the initial cell selection procedure at the beginning of simulation. In addition, the function also instructs the UE to immediately enter CONNECTED mode and activates the default EPS bearer.
If this function is called when the UE is in a situation where entering CONNECTED mode is not possible (e.g. before the simulation begin), then the UE will attempt to connect at the earliest possible time (e.g. after it camps to a suitable cell).
Note that this function can only be used in EPC-enabled simulation.
Definition at line 726 of file lte-helper.cc.
References ns3::EpcTft::Default(), m_epcHelper, ns3::EpsBearer::NGBR_VIDEO_TCP_DEFAULT, NS_ASSERT, NS_FATAL_ERROR, and NS_LOG_FUNCTION.
void ns3::LteHelper::Attach | ( | NetDeviceContainer | ueDevices, |
Ptr< NetDevice > | enbDevice | ||
) |
Manual attachment of a set of UE devices to the network via a given eNodeB.
ueDevices | the set of UE devices to be attached |
enbDevice | the destination eNodeB device |
In addition, the function also instructs each UE to immediately enter CONNECTED mode and activates the default EPS bearer.
The function can be used in both LTE-only and EPC-enabled simulations. Note that this function will disable Idle mode initial cell selection procedure.
Definition at line 757 of file lte-helper.cc.
References Attach(), ns3::NetDeviceContainer::Begin(), ns3::NetDeviceContainer::End(), and NS_LOG_FUNCTION.
Manual attachment of a UE device to the network via a given eNodeB.
ueDevice | the UE device to be attached |
enbDevice | the destination eNodeB device |
In addition, the function also instructs the UE to immediately enter CONNECTED mode and activates the default EPS bearer.
The function can be used in both LTE-only and EPC-enabled simulations. Note that this function will disable Idle mode initial cell selection procedure.
Definition at line 767 of file lte-helper.cc.
References ns3::EpcTft::Default(), m_epcHelper, ns3::EpsBearer::NGBR_VIDEO_TCP_DEFAULT, and NS_LOG_FUNCTION.
void ns3::LteHelper::AttachToClosestEnb | ( | NetDeviceContainer | ueDevices, |
NetDeviceContainer | enbDevices | ||
) |
Manual attachment of a set of UE devices to the network via the closest eNodeB (with respect to distance) among those in the set.
ueDevices | the set of UE devices to be attached |
enbDevices | the set of eNodeB devices to be considered |
This function finds among the eNodeB set the closest eNodeB for each UE, and then invokes manual attachment between the pair.
Users are encouraged to use automatic attachment (Idle mode cell selection) instead of this function.
Definition at line 792 of file lte-helper.cc.
References ns3::NetDeviceContainer::Begin(), ns3::NetDeviceContainer::End(), and NS_LOG_FUNCTION.
void ns3::LteHelper::AttachToClosestEnb | ( | Ptr< NetDevice > | ueDevice, |
NetDeviceContainer | enbDevices | ||
) |
Manual attachment of a UE device to the network via the closest eNodeB (with respect to distance) among those in the set.
ueDevice | the UE device to be attached |
enbDevices | the set of eNodeB devices to be considered |
This function finds among the eNodeB set the closest eNodeB for the UE, and then invokes manual attachment between the pair.
Users are encouraged to use automatic attachment (Idle mode cell selection) instead of this function.
Definition at line 802 of file lte-helper.cc.
References Attach(), ns3::NetDeviceContainer::Begin(), ns3::CalculateDistance(), ns3::NetDeviceContainer::End(), ns3::NetDeviceContainer::GetN(), GetPosition(), NS_ASSERT, NS_ASSERT_MSG, and NS_LOG_FUNCTION.
void ns3::LteHelper::DeActivateDedicatedEpsBearer | ( | Ptr< NetDevice > | ueDevice, |
Ptr< NetDevice > | enbDevice, | ||
uint8_t | bearerId | ||
) |
Manually trigger dedicated bearer de-activation at specific simulation time.
ueDevice | the UE on which dedicated bearer to be de-activated must be of the type LteUeNetDevice |
enbDevice | eNB, must be of the type LteEnbNetDevice |
bearerId | Bearer Identity which is to be de-activated |
Definition at line 1020 of file lte-helper.cc.
References DoDeActivateDedicatedEpsBearer(), m_epcHelper, NS_ASSERT_MSG, and NS_LOG_FUNCTION.
Referenced by ns3::LenaDeactivateBearerTestCase::DoRun().
|
private |
The actual function to trigger a manual bearer de-activation.
ueDevice | the UE on which bearer to be de-activated must be of the type LteUeNetDevice |
enbDevice | eNB, must be of the type LteEnbNetDevice |
bearerId | Bearer Identity which is to be de-activated |
This method is normally scheduled by DeActivateDedicatedEpsBearer() to run at a specific time when a manual bearer de-activation is desired by the simulation user.
Definition at line 1030 of file lte-helper.cc.
References NS_LOG_FUNCTION.
Referenced by DeActivateDedicatedEpsBearer().
|
virtual |
Destructor implementation.
This method is called by 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 208 of file lte-helper.cc.
References ns3::Object::DoDispose(), m_downlinkChannel, m_uplinkChannel, and NS_LOG_FUNCTION.
|
private |
The actual function to trigger a manual handover.
ueDev | the UE that hands off, must be of the type LteUeNetDevice |
sourceEnbDev | source eNB, must be of the type LteEnbNetDevice (originally the UE is attached to this eNB) |
targetEnbDev | target eNB, must be of the type LteEnbNetDevice (the UE would be connected to this eNB after the handover) |
This method is normally scheduled by HandoverRequest() to run at a specific time where a manual handover is desired by the simulation user.
Definition at line 1009 of file lte-helper.cc.
References NS_LOG_FUNCTION.
Referenced by HandoverRequest().
|
protectedvirtual |
Initialize() implementation.
This method is called only once by Initialize(). If the user calls 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 85 of file lte-helper.cc.
References ns3::SpectrumChannel::AddPropagationLossModel(), ns3::SpectrumChannel::AddSpectrumPropagationLossModel(), ns3::ObjectFactory::Create(), ns3::Object::DoInitialize(), ns3::Object::GetObject(), 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 1198 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 1214 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 1175 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 1161 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 full-blown logging for major components of the LENA architecture.
Definition at line 1056 of file lte-helper.cc.
References ns3::TypeId::GetName(), ns3::ObjectFactory::GetTypeId(), ns3::LOG_LEVEL_ALL, ns3::LogComponentEnable(), and m_dlPathlossModelFactory.
void ns3::LteHelper::EnableMacTraces | ( | void | ) |
Enable trace sinks for MAC layer.
Definition at line 1190 of file lte-helper.cc.
References EnableDlMacTraces(), and EnableUlMacTraces().
Referenced by LenaMimoTestCase::DoRun(), LenaHarqTestCase::DoRun(), LenaCqaFfMacSchedulerTestCase1::DoRun(), LenaPfFfMacSchedulerTestCase1::DoRun(), LenaTdMtFfMacSchedulerTestCase::DoRun(), LenaTdBetFfMacSchedulerTestCase1::DoRun(), LenaFdMtFfMacSchedulerTestCase::DoRun(), LenaTdTbfqFfMacSchedulerTestCase1::DoRun(), LenaTtaFfMacSchedulerTestCase::DoRun(), LenaFdTbfqFfMacSchedulerTestCase1::DoRun(), LenaPssFfMacSchedulerTestCase1::DoRun(), LenaFdBetFfMacSchedulerTestCase1::DoRun(), LteLinkAdaptationTestCase::DoRun(), LtePathlossModelSystemTestCase::DoRun(), LenaFdBetFfMacSchedulerTestCase2::DoRun(), LenaTdBetFfMacSchedulerTestCase2::DoRun(), and EnableTraces().
void ns3::LteHelper::EnablePdcpTraces | ( | void | ) |
Enable trace sinks for PDCP layer.
Definition at line 1239 of file lte-helper.cc.
References ns3::RadioBearerStatsConnector::EnablePdcpStats(), m_pdcpStats, m_radioBearerStatsConnector, and NS_ASSERT_MSG.
Referenced by LteEpcE2eDataTestCase::DoRun(), and EnableTraces().
void ns3::LteHelper::EnablePhyTraces | ( | void | ) |
Enable trace sinks for PHY layer.
Definition at line 1150 of file lte-helper.cc.
References EnableDlPhyTraces(), EnableDlRxPhyTraces(), EnableDlTxPhyTraces(), EnableUlPhyTraces(), EnableUlRxPhyTraces(), and EnableUlTxPhyTraces().
Referenced by EnableTraces().
void ns3::LteHelper::EnableRlcTraces | ( | void | ) |
Enable trace sinks for RLC layer.
Definition at line 1102 of file lte-helper.cc.
References ns3::RadioBearerStatsConnector::EnableRlcStats(), m_radioBearerStatsConnector, m_rlcStats, and NS_ASSERT_MSG.
Referenced by ns3::LenaDeactivateBearerTestCase::DoRun(), LenaMimoTestCase::DoRun(), LenaHarqTestCase::DoRun(), LenaRrFfMacSchedulerTestCase::DoRun(), LenaDataPhyErrorModelTestCase::DoRun(), LenaCqaFfMacSchedulerTestCase1::DoRun(), LenaPfFfMacSchedulerTestCase1::DoRun(), LenaFdTbfqFfMacSchedulerTestCase1::DoRun(), LenaPssFfMacSchedulerTestCase1::DoRun(), LenaFdBetFfMacSchedulerTestCase1::DoRun(), LenaTdBetFfMacSchedulerTestCase1::DoRun(), LenaTdMtFfMacSchedulerTestCase::DoRun(), LenaFdMtFfMacSchedulerTestCase::DoRun(), LenaTdTbfqFfMacSchedulerTestCase1::DoRun(), LenaTtaFfMacSchedulerTestCase::DoRun(), LteLinkAdaptationTestCase::DoRun(), LtePathlossModelSystemTestCase::DoRun(), LenaPfFfMacSchedulerTestCase2::DoRun(), LenaFdBetFfMacSchedulerTestCase2::DoRun(), LenaTdBetFfMacSchedulerTestCase2::DoRun(), LenaCqaFfMacSchedulerTestCase2::DoRun(), LenaTdTbfqFfMacSchedulerTestCase2::DoRun(), LenaPssFfMacSchedulerTestCase2::DoRun(), LenaFdTbfqFfMacSchedulerTestCase2::DoRun(), LenaDlCtrlPhyErrorModelTestCase::DoRun(), and EnableTraces().
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 1093 of file lte-helper.cc.
References EnableMacTraces(), EnablePdcpTraces(), EnablePhyTraces(), and EnableRlcTraces().
void ns3::LteHelper::EnableUlMacTraces | ( | void | ) |
Enable trace sinks for UL MAC layer.
Definition at line 1206 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 1222 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 1182 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 1168 of file lte-helper.cc.
References ns3::Config::Connect(), m_phyTxStats, ns3::MakeBoundCallback(), and ns3::PhyTxStatsCalculator::UlPhyTransmissionCallback().
Referenced by EnablePhyTraces().
std::string ns3::LteHelper::GetFfrAlgorithmType | ( | ) | const |
Definition at line 246 of file lte-helper.cc.
References ns3::TypeId::GetName(), ns3::ObjectFactory::GetTypeId(), and m_ffrAlgorithmFactory.
Referenced by GetTypeId().
std::string ns3::LteHelper::GetHandoverAlgorithmType | ( | ) | const |
Definition at line 267 of file lte-helper.cc.
References ns3::TypeId::GetName(), ns3::ObjectFactory::GetTypeId(), and m_handoverAlgorithmFactory.
Referenced by GetTypeId().
Ptr< RadioBearerStatsCalculator > ns3::LteHelper::GetPdcpStats | ( | void | ) |
Definition at line 1247 of file lte-helper.cc.
References m_pdcpStats.
Referenced by LteEpcE2eDataTestCase::DoRun().
Ptr< RadioBearerStatsCalculator > ns3::LteHelper::GetRlcStats | ( | void | ) |
Definition at line 1233 of file lte-helper.cc.
References m_rlcStats.
Referenced by ns3::LenaDeactivateBearerTestCase::DoRun(), LenaMimoTestCase::DoRun(), LenaHarqTestCase::DoRun(), LenaRrFfMacSchedulerTestCase::DoRun(), LenaCqaFfMacSchedulerTestCase1::DoRun(), LenaDataPhyErrorModelTestCase::DoRun(), LenaPfFfMacSchedulerTestCase1::DoRun(), LenaFdBetFfMacSchedulerTestCase1::DoRun(), LenaTdBetFfMacSchedulerTestCase1::DoRun(), LenaPssFfMacSchedulerTestCase1::DoRun(), LenaTdTbfqFfMacSchedulerTestCase1::DoRun(), LenaTdMtFfMacSchedulerTestCase::DoRun(), LenaTtaFfMacSchedulerTestCase::DoRun(), LenaFdMtFfMacSchedulerTestCase::DoRun(), LenaFdTbfqFfMacSchedulerTestCase1::DoRun(), LenaPfFfMacSchedulerTestCase2::DoRun(), LenaTdBetFfMacSchedulerTestCase2::DoRun(), LenaCqaFfMacSchedulerTestCase2::DoRun(), LenaFdBetFfMacSchedulerTestCase2::DoRun(), LenaPssFfMacSchedulerTestCase2::DoRun(), LenaTdTbfqFfMacSchedulerTestCase2::DoRun(), LenaFdTbfqFfMacSchedulerTestCase2::DoRun(), and LenaDlCtrlPhyErrorModelTestCase::DoRun().
std::string ns3::LteHelper::GetSchedulerType | ( | ) | const |
Definition at line 233 of file lte-helper.cc.
References ns3::TypeId::GetName(), ns3::ObjectFactory::GetTypeId(), and m_schedulerFactory.
Referenced by GetTypeId().
|
static |
Register this type.
Definition at line 140 of file lte-helper.cc.
References GetFfrAlgorithmType(), GetHandoverAlgorithmType(), GetSchedulerType(), m_isAnrEnabled, m_useIdealRrc, m_usePdschForCqiGeneration, ns3::MakeBooleanAccessor(), ns3::MakeBooleanChecker(), ns3::MakeStringAccessor(), ns3::MakeStringChecker(), SetFadingModel(), SetFfrAlgorithmType(), SetHandoverAlgorithmType(), ns3::TypeId::SetParent(), SetPathlossModelType(), and SetSchedulerType().
void ns3::LteHelper::HandoverRequest | ( | Time | hoTime, |
Ptr< NetDevice > | ueDev, | ||
Ptr< NetDevice > | sourceEnbDev, | ||
Ptr< NetDevice > | targetEnbDev | ||
) |
Manually trigger an X2-based handover.
hoTime | when the handover shall be initiated |
ueDev | the UE that hands off, must be of the type LteUeNetDevice |
sourceEnbDev | source eNB, must be of the type LteEnbNetDevice (originally the UE is attached to this eNB) |
targetEnbDev | target eNB, must be of the type LteEnbNetDevice (the UE would be connected to this eNB after the handover) |
Definition at line 1001 of file lte-helper.cc.
References DoHandoverRequest(), m_epcHelper, NS_ASSERT_MSG, NS_LOG_FUNCTION, and ns3::Simulator::Schedule().
Referenced by LteX2HandoverTestCase::DoRun(), and LteUeMeasurementsHandoverTestCase::DoRun().
NetDeviceContainer ns3::LteHelper::InstallEnbDevice | ( | NodeContainer | c | ) |
Create a set of eNodeB devices.
c | the node container where the devices are to be installed |
Definition at line 382 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::LenaDeactivateBearerTestCase::DoRun(), LenaMimoTestCase::DoRun(), LenaHarqTestCase::DoRun(), LenaRrFfMacSchedulerTestCase::DoRun(), LenaDataPhyErrorModelTestCase::DoRun(), LteInterferenceHardFrTestCase::DoRun(), LenaCqaFfMacSchedulerTestCase1::DoRun(), LteCqiGenerationTestCase::DoRun(), LenaPfFfMacSchedulerTestCase1::DoRun(), LenaPssFfMacSchedulerTestCase1::DoRun(), LenaTdBetFfMacSchedulerTestCase1::DoRun(), LenaTdMtFfMacSchedulerTestCase::DoRun(), LenaTdTbfqFfMacSchedulerTestCase1::DoRun(), LenaTtaFfMacSchedulerTestCase::DoRun(), LenaFdBetFfMacSchedulerTestCase1::DoRun(), LenaFdMtFfMacSchedulerTestCase::DoRun(), LenaFdTbfqFfMacSchedulerTestCase1::DoRun(), LteLinkAdaptationTestCase::DoRun(), LteInterferenceTestCase::DoRun(), LtePathlossModelSystemTestCase::DoRun(), LteEnbAntennaTestCase::DoRun(), LteRrcConnectionEstablishmentTestCase::DoRun(), LteX2HandoverTestCase::DoRun(), LteInterferenceStrictFrTestCase::DoRun(), LenaPfFfMacSchedulerTestCase2::DoRun(), LenaTdBetFfMacSchedulerTestCase2::DoRun(), LenaFdBetFfMacSchedulerTestCase2::DoRun(), LenaCqaFfMacSchedulerTestCase2::DoRun(), LteDownlinkPowerControlTestCase::DoRun(), LenaPssFfMacSchedulerTestCase2::DoRun(), LenaTdTbfqFfMacSchedulerTestCase2::DoRun(), LteUeMeasurementsTestCase::DoRun(), LenaFdTbfqFfMacSchedulerTestCase2::DoRun(), LenaDlCtrlPhyErrorModelTestCase::DoRun(), LteCqiGenerationDlPowerControlTestCase::DoRun(), LteUplinkOpenLoopPowerControlTestCase::DoRun(), LteHardFrTestCase::DoRun(), LteX2HandoverMeasuresTestCase::DoRun(), LteDownlinkPowerControlRrcConnectionReconfigurationTestCase::DoRun(), LteUplinkClosedLoopPowerControlAbsoluteModeTestCase::DoRun(), LteEpcE2eDataTestCase::DoRun(), LteUplinkClosedLoopPowerControlAccumulatedModeTestCase::DoRun(), LteCellSelectionTestCase::DoRun(), LteStrictFrTestCase::DoRun(), LteHandoverTargetTestCase::DoRun(), LteUeMeasurementsPiecewiseTestCase1::DoRun(), LteStrictFrAreaTestCase::DoRun(), LteSoftFrAreaTestCase::DoRun(), LteSoftFfrAreaTestCase::DoRun(), LteEnhancedFfrAreaTestCase::DoRun(), LteDistributedFfrAreaTestCase::DoRun(), LteUeMeasurementsPiecewiseTestCase2::DoRun(), LteUeMeasurementsHandoverTestCase::DoRun(), LteRrcConnectionEstablishmentErrorTestCase::DoRun(), LteFadingTestSuite::LteFadingTestSuite(), and ns3::LteHexGridEnbTopologyHelper::SetPositionAndInstallEnbDevice().
Create an eNodeB device (LteEnbNetDevice) on the given node.
n | the node where the device is to be installed |
Definition at line 412 of file lte-helper.cc.
References ns3::Node::AddDevice(), ns3::ObjectFactory::Create(), ns3::LteEnbPhy::GenerateCtrlCqiReport(), ns3::LteEnbPhy::GenerateDataCqiReport(), ns3::EnumValue::Get(), ns3::Node::GetApplication(), ns3::LteSpectrumValueHelper::GetCarrierFrequency(), ns3::LteEnbNetDevice::GetCellId(), ns3::LteEnbNetDevice::GetDlEarfcn(), ns3::Object::GetObject(), ns3::LteEnbNetDevice::GetUlEarfcn(), ns3::Object::Initialize(), m_cellIdCounter, m_downlinkChannel, m_downlinkPathlossModel, m_enbAntennaModelFactory, m_enbNetDeviceFactory, m_epcHelper, m_ffrAlgorithmFactory, m_handoverAlgorithmFactory, m_isAnrEnabled, 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(), ns3::LteEnbPhy::ReportInterference(), ns3::LteEnbRrc::RLC_SM_ALWAYS, ns3::LteEnbRrc::RLC_UM_ALWAYS, ns3::ObjectBase::SetAttribute(), ns3::ObjectBase::SetAttributeFailSafe(), ns3::LteNetDevice::SetNode(), and ns3::LteSpectrumPhy::UpdateSinrPerceived().
Referenced by InstallEnbDevice().
Create a UE device (LteUeNetDevice) on the given node.
n | the node where the device is to be installed |
Definition at line 584 of file lte-helper.cc.
References ns3::Node::AddDevice(), ns3::ObjectFactory::Create(), ns3::LteUePhy::GenerateCtrlCqiReport(), ns3::LteUePhy::GenerateMixedCqiReport(), ns3::Object::GetObject(), m_downlinkChannel, m_epcHelper, m_imsiCounter, m_ueAntennaModelFactory, m_ueNetDeviceFactory, m_uplinkChannel, m_useIdealRrc, m_usePdschForCqiGeneration, 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::LteUePhy::ReportDataInterference(), ns3::LteUePhy::ReportInterference(), ns3::LteUePhy::ReportRsReceivedPower(), and ns3::LteSpectrumPhy::UpdateSinrPerceived().
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 397 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::LenaDeactivateBearerTestCase::DoRun(), LenaMimoTestCase::DoRun(), LenaHarqTestCase::DoRun(), LenaRrFfMacSchedulerTestCase::DoRun(), LteInterferenceHardFrTestCase::DoRun(), LenaCqaFfMacSchedulerTestCase1::DoRun(), LenaDataPhyErrorModelTestCase::DoRun(), LteCqiGenerationTestCase::DoRun(), LenaPfFfMacSchedulerTestCase1::DoRun(), LenaPssFfMacSchedulerTestCase1::DoRun(), LenaTdBetFfMacSchedulerTestCase1::DoRun(), LenaTdMtFfMacSchedulerTestCase::DoRun(), LenaTdTbfqFfMacSchedulerTestCase1::DoRun(), LenaTtaFfMacSchedulerTestCase::DoRun(), LenaFdBetFfMacSchedulerTestCase1::DoRun(), LenaFdMtFfMacSchedulerTestCase::DoRun(), LenaFdTbfqFfMacSchedulerTestCase1::DoRun(), LteLinkAdaptationTestCase::DoRun(), LteInterferenceTestCase::DoRun(), LtePathlossModelSystemTestCase::DoRun(), LteEnbAntennaTestCase::DoRun(), LteRrcConnectionEstablishmentTestCase::DoRun(), LteX2HandoverTestCase::DoRun(), LteInterferenceStrictFrTestCase::DoRun(), LenaPfFfMacSchedulerTestCase2::DoRun(), LenaTdBetFfMacSchedulerTestCase2::DoRun(), LenaCqaFfMacSchedulerTestCase2::DoRun(), LenaFdBetFfMacSchedulerTestCase2::DoRun(), LenaPssFfMacSchedulerTestCase2::DoRun(), LenaTdTbfqFfMacSchedulerTestCase2::DoRun(), LteUeMeasurementsTestCase::DoRun(), LenaFdTbfqFfMacSchedulerTestCase2::DoRun(), LteDownlinkPowerControlTestCase::DoRun(), LenaDlCtrlPhyErrorModelTestCase::DoRun(), LteCqiGenerationDlPowerControlTestCase::DoRun(), LteUplinkOpenLoopPowerControlTestCase::DoRun(), LteHardFrTestCase::DoRun(), LteX2HandoverMeasuresTestCase::DoRun(), LteDownlinkPowerControlRrcConnectionReconfigurationTestCase::DoRun(), LteUplinkClosedLoopPowerControlAbsoluteModeTestCase::DoRun(), LteEpcE2eDataTestCase::DoRun(), LteUplinkClosedLoopPowerControlAccumulatedModeTestCase::DoRun(), LteCellSelectionTestCase::DoRun(), LteStrictFrTestCase::DoRun(), LteHandoverTargetTestCase::DoRun(), LteUeMeasurementsPiecewiseTestCase1::DoRun(), LteStrictFrAreaTestCase::DoRun(), LteSoftFrAreaTestCase::DoRun(), LteSoftFfrAreaTestCase::DoRun(), LteEnhancedFfrAreaTestCase::DoRun(), LteDistributedFfrAreaTestCase::DoRun(), LteUeMeasurementsPiecewiseTestCase2::DoRun(), LteUeMeasurementsHandoverTestCase::DoRun(), LteRrcConnectionEstablishmentErrorTestCase::DoRun(), and LteFadingTestSuite::LteFadingTestSuite().
void ns3::LteHelper::SetEnbAntennaModelAttribute | ( | std::string | n, |
const AttributeValue & | v | ||
) |
Set an attribute for the eNodeB antenna model to be created.
n | the name of the attribute. |
v | the value of the attribute |
Definition at line 322 of file lte-helper.cc.
References m_enbAntennaModelFactory, NS_LOG_FUNCTION, and ns3::ObjectFactory::Set().
Referenced by LteEnbAntennaTestCase::DoRun(), and ns3::LteHexGridEnbTopologyHelper::SetPositionAndInstallEnbDevice().
void ns3::LteHelper::SetEnbAntennaModelType | ( | std::string | type | ) |
Set the type of antenna model to be used by eNodeB devices.
type | type of antenna model, must be a type name of any class inheriting from ns3::AntennaModel, for example: "ns3::IsotropicAntennaModel" |
Definition at line 315 of file lte-helper.cc.
References m_enbAntennaModelFactory, NS_LOG_FUNCTION, and ns3::ObjectFactory::SetTypeId().
Referenced by LteEnbAntennaTestCase::DoRun().
void ns3::LteHelper::SetEnbDeviceAttribute | ( | std::string | n, |
const AttributeValue & | v | ||
) |
Set an attribute for the eNodeB devices (LteEnbNetDevice) to be created.
n | the name of the attribute. |
v | the value of the attribute |
Definition at line 307 of file lte-helper.cc.
References m_enbNetDeviceFactory, NS_LOG_FUNCTION, and ns3::ObjectFactory::Set().
Referenced by LtePathlossModelSystemTestCase::DoRun(), LteUplinkOpenLoopPowerControlTestCase::DoRun(), LteUplinkClosedLoopPowerControlAbsoluteModeTestCase::DoRun(), LteUplinkClosedLoopPowerControlAccumulatedModeTestCase::DoRun(), LteCellSelectionTestCase::DoRun(), LteEnhancedFfrAreaTestCase::DoRun(), and LteDistributedFfrAreaTestCase::DoRun().
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 218 of file lte-helper.cc.
References m_epcHelper, and NS_LOG_FUNCTION.
Referenced by ns3::LenaDeactivateBearerTestCase::DoRun(), LenaCqaFfMacSchedulerTestCase1::DoRun(), LenaPssFfMacSchedulerTestCase1::DoRun(), LenaFdTbfqFfMacSchedulerTestCase1::DoRun(), LenaTdTbfqFfMacSchedulerTestCase1::DoRun(), LteX2HandoverTestCase::DoRun(), LenaCqaFfMacSchedulerTestCase2::DoRun(), LenaPssFfMacSchedulerTestCase2::DoRun(), LenaTdTbfqFfMacSchedulerTestCase2::DoRun(), LenaFdTbfqFfMacSchedulerTestCase2::DoRun(), LteX2HandoverMeasuresTestCase::DoRun(), LteEpcE2eDataTestCase::DoRun(), LteCellSelectionTestCase::DoRun(), LteHandoverTargetTestCase::DoRun(), LteDistributedFfrAreaTestCase::DoRun(), and LteUeMeasurementsHandoverTestCase::DoRun().
void ns3::LteHelper::SetFadingModel | ( | std::string | type | ) |
Set the type of fading model to be used in both DL and UL.
type | type of fading model, must be a type name of any class inheriting from ns3::SpectrumPropagationLossModel, for example: "ns3::TraceFadingLossModel" |
Definition at line 350 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 for the fading model to be created (both DL and UL).
n | the name of the attribute |
v | the value of the attribute |
Definition at line 362 of file lte-helper.cc.
References m_fadingModelFactory, and ns3::ObjectFactory::Set().
void ns3::LteHelper::SetFfrAlgorithmAttribute | ( | std::string | n, |
const AttributeValue & | v | ||
) |
Set an attribute for the FFR algorithm to be created.
n | the name of the attribute |
v | the value of the attribute |
Definition at line 260 of file lte-helper.cc.
References m_ffrAlgorithmFactory, NS_LOG_FUNCTION, and ns3::ObjectFactory::Set().
Referenced by LteInterferenceHardFrTestCase::DoRun(), LteCqiGenerationTestCase::DoRun(), LteInterferenceStrictFrTestCase::DoRun(), LteHardFrTestCase::DoRun(), LteStrictFrTestCase::DoRun(), LteStrictFrAreaTestCase::DoRun(), LteSoftFrAreaTestCase::DoRun(), LteSoftFfrAreaTestCase::DoRun(), LteEnhancedFfrAreaTestCase::DoRun(), LteDistributedFfrAreaTestCase::DoRun(), and ns3::LteHexGridEnbTopologyHelper::SetPositionAndInstallEnbDevice().
void ns3::LteHelper::SetFfrAlgorithmType | ( | std::string | type | ) |
Set the type of FFR algorithm to be used by eNodeB devices.
type | type of FFR algorithm, must be a type name of any class inheriting from ns3::LteFfrAlgorithm, for example: "ns3::LteFrNoOpAlgorithm" |
Equivalent with setting the FfrAlgorithm
attribute.
Definition at line 252 of file lte-helper.cc.
References m_ffrAlgorithmFactory, NS_LOG_FUNCTION, ns3::Object::ObjectFactory, and ns3::ObjectFactory::SetTypeId().
Referenced by LteInterferenceHardFrTestCase::DoRun(), LteCqiGenerationTestCase::DoRun(), LteInterferenceStrictFrTestCase::DoRun(), LteDownlinkPowerControlTestCase::DoRun(), LteCqiGenerationDlPowerControlTestCase::DoRun(), LteHardFrTestCase::DoRun(), LteDownlinkPowerControlRrcConnectionReconfigurationTestCase::DoRun(), LteUplinkClosedLoopPowerControlAbsoluteModeTestCase::DoRun(), LteUplinkClosedLoopPowerControlAccumulatedModeTestCase::DoRun(), LteStrictFrTestCase::DoRun(), LteStrictFrAreaTestCase::DoRun(), LteSoftFrAreaTestCase::DoRun(), LteSoftFfrAreaTestCase::DoRun(), LteEnhancedFfrAreaTestCase::DoRun(), LteDistributedFfrAreaTestCase::DoRun(), and GetTypeId().
void ns3::LteHelper::SetHandoverAlgorithmAttribute | ( | std::string | n, |
const AttributeValue & | v | ||
) |
Set an attribute for the handover algorithm to be created.
n | the name of the attribute |
v | the value of the attribute |
Definition at line 281 of file lte-helper.cc.
References m_handoverAlgorithmFactory, NS_LOG_FUNCTION, and ns3::ObjectFactory::Set().
Referenced by LteX2HandoverMeasuresTestCase::DoRun(), and LteHandoverTargetTestCase::DoRun().
void ns3::LteHelper::SetHandoverAlgorithmType | ( | std::string | type | ) |
Set the type of handover algorithm to be used by eNodeB devices.
type | type of handover algorithm, must be a type name of any class inheriting from ns3::LteHandoverAlgorithm, for example: "ns3::NoOpHandoverAlgorithm" |
Equivalent with setting the HandoverAlgorithm
attribute.
Definition at line 273 of file lte-helper.cc.
References m_handoverAlgorithmFactory, NS_LOG_FUNCTION, ns3::Object::ObjectFactory, and ns3::ObjectFactory::SetTypeId().
Referenced by LteX2HandoverTestCase::DoRun(), LteX2HandoverMeasuresTestCase::DoRun(), LteHandoverTargetTestCase::DoRun(), LteDistributedFfrAreaTestCase::DoRun(), and GetTypeId().
void ns3::LteHelper::SetPathlossModelAttribute | ( | std::string | n, |
const AttributeValue & | v | ||
) |
Set an attribute for the path loss models to be created.
n | the name of the attribute |
v | the value of the attribute |
Definition at line 299 of file lte-helper.cc.
References m_dlPathlossModelFactory, m_ulPathlossModelFactory, NS_LOG_FUNCTION, and ns3::ObjectFactory::Set().
Referenced by LenaMimoTestCase::DoRun(), LenaHarqTestCase::DoRun(), LenaDataPhyErrorModelTestCase::DoRun(), LteLinkAdaptationTestCase::DoRun(), LtePathlossModelSystemTestCase::DoRun(), LteEnbAntennaTestCase::DoRun(), and LenaDlCtrlPhyErrorModelTestCase::DoRun().
void ns3::LteHelper::SetPathlossModelType | ( | std::string | type | ) |
Set the type of path loss model to be used for both DL and UL channels.
type | type of path loss model, must be a type name of any class inheriting from ns3::PropagationLossModel, for example: "ns3::FriisPropagationLossModel" |
Definition at line 289 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 239 of file lte-helper.cc.
References m_schedulerFactory, NS_LOG_FUNCTION, and ns3::ObjectFactory::Set().
Referenced by LenaHarqTestCase::DoRun(), LteInterferenceHardFrTestCase::DoRun(), LenaDataPhyErrorModelTestCase::DoRun(), LteCqiGenerationTestCase::DoRun(), LteInterferenceTestCase::DoRun(), LteEnbAntennaTestCase::DoRun(), LteInterferenceStrictFrTestCase::DoRun(), LteUeMeasurementsTestCase::DoRun(), LenaDlCtrlPhyErrorModelTestCase::DoRun(), LteCqiGenerationDlPowerControlTestCase::DoRun(), LteUeMeasurementsPiecewiseTestCase1::DoRun(), LteEnhancedFfrAreaTestCase::DoRun(), and LteUeMeasurementsPiecewiseTestCase2::DoRun().
void ns3::LteHelper::SetSchedulerType | ( | std::string | type | ) |
Set the type of scheduler to be used by eNodeB devices.
type | type of scheduler, must be a type name of any class inheriting from ns3::FfMacScheduler, for example: "ns3::PfFfMacScheduler" |
Equivalent with setting the Scheduler
attribute.
Definition at line 225 of file lte-helper.cc.
References m_schedulerFactory, NS_LOG_FUNCTION, ns3::Object::ObjectFactory, and ns3::ObjectFactory::SetTypeId().
Referenced by ns3::LenaDeactivateBearerTestCase::DoRun(), LenaMimoTestCase::DoRun(), LenaHarqTestCase::DoRun(), LenaRrFfMacSchedulerTestCase::DoRun(), LteInterferenceHardFrTestCase::DoRun(), LenaCqaFfMacSchedulerTestCase1::DoRun(), LenaDataPhyErrorModelTestCase::DoRun(), LteCqiGenerationTestCase::DoRun(), LenaPfFfMacSchedulerTestCase1::DoRun(), LenaFdBetFfMacSchedulerTestCase1::DoRun(), LenaPssFfMacSchedulerTestCase1::DoRun(), LenaTdBetFfMacSchedulerTestCase1::DoRun(), LenaTdMtFfMacSchedulerTestCase::DoRun(), LenaTdTbfqFfMacSchedulerTestCase1::DoRun(), LenaFdMtFfMacSchedulerTestCase::DoRun(), LenaTtaFfMacSchedulerTestCase::DoRun(), LenaFdTbfqFfMacSchedulerTestCase1::DoRun(), LteLinkAdaptationTestCase::DoRun(), LteInterferenceTestCase::DoRun(), LtePathlossModelSystemTestCase::DoRun(), LteEnbAntennaTestCase::DoRun(), LteX2HandoverTestCase::DoRun(), LteInterferenceStrictFrTestCase::DoRun(), LenaPfFfMacSchedulerTestCase2::DoRun(), LenaTdBetFfMacSchedulerTestCase2::DoRun(), LenaFdBetFfMacSchedulerTestCase2::DoRun(), LenaCqaFfMacSchedulerTestCase2::DoRun(), LenaPssFfMacSchedulerTestCase2::DoRun(), LenaTdTbfqFfMacSchedulerTestCase2::DoRun(), LteUeMeasurementsTestCase::DoRun(), LenaFdTbfqFfMacSchedulerTestCase2::DoRun(), LteDownlinkPowerControlTestCase::DoRun(), LenaDlCtrlPhyErrorModelTestCase::DoRun(), LteCqiGenerationDlPowerControlTestCase::DoRun(), LteUplinkOpenLoopPowerControlTestCase::DoRun(), LteHardFrTestCase::DoRun(), LteX2HandoverMeasuresTestCase::DoRun(), LteDownlinkPowerControlRrcConnectionReconfigurationTestCase::DoRun(), LteUplinkClosedLoopPowerControlAbsoluteModeTestCase::DoRun(), LteUplinkClosedLoopPowerControlAccumulatedModeTestCase::DoRun(), LteStrictFrTestCase::DoRun(), LteUeMeasurementsPiecewiseTestCase1::DoRun(), LteStrictFrAreaTestCase::DoRun(), LteSoftFrAreaTestCase::DoRun(), LteSoftFfrAreaTestCase::DoRun(), LteEnhancedFfrAreaTestCase::DoRun(), LteDistributedFfrAreaTestCase::DoRun(), LteUeMeasurementsPiecewiseTestCase2::DoRun(), and GetTypeId().
void ns3::LteHelper::SetSpectrumChannelAttribute | ( | std::string | n, |
const AttributeValue & | v | ||
) |
Set an attribute for the spectrum channel to be created (both DL and UL).
n | the name of the attribute |
v | the value of the attribute |
Definition at line 375 of file lte-helper.cc.
References m_channelFactory, and ns3::ObjectFactory::Set().
void ns3::LteHelper::SetSpectrumChannelType | ( | std::string | type | ) |
Set the type of spectrum channel to be used in both DL and UL.
type | type of spectrum channel model, must be a type name of any class inheriting from ns3::SpectrumChannel, for example: "ns3::MultiModelSpectrumChannel" |
Definition at line 368 of file lte-helper.cc.
References m_channelFactory, NS_LOG_FUNCTION, and ns3::ObjectFactory::SetTypeId().
void ns3::LteHelper::SetUeAntennaModelAttribute | ( | std::string | n, |
const AttributeValue & | v | ||
) |
Set an attribute for the UE antenna model to be created.
n | the name of the attribute |
v | the value of the attribute |
Definition at line 343 of file lte-helper.cc.
References m_ueAntennaModelFactory, NS_LOG_FUNCTION, and ns3::ObjectFactory::Set().
void ns3::LteHelper::SetUeAntennaModelType | ( | std::string | type | ) |
Set the type of antenna model to be used by UE devices.
type | type of antenna model, must be a type name of any class inheriting from ns3::AntennaModel, for example: "ns3::IsotropicAntennaModel" |
Definition at line 336 of file lte-helper.cc.
References m_ueAntennaModelFactory, NS_LOG_FUNCTION, and ns3::ObjectFactory::SetTypeId().
void ns3::LteHelper::SetUeDeviceAttribute | ( | std::string | n, |
const AttributeValue & | v | ||
) |
Set an attribute for the UE devices (LteUeNetDevice) to be created.
n | the name of the attribute. |
v | the value of the attribute |
Definition at line 329 of file lte-helper.cc.
References m_ueNetDeviceFactory, NS_LOG_FUNCTION, and ns3::ObjectFactory::Set().
Referenced by LtePathlossModelSystemTestCase::DoRun(), and LteCellSelectionTestCase::DoRun().
|
private |
Keep track of the number of cell ID allocated.
Increases by one every time a new eNodeB is installed (by InstallSingleEnbDevice()). The first eNodeB will have a cell ID of 1. The maximum number of eNodeB is 65535.
Definition at line 716 of file lte-helper.h.
Referenced by InstallSingleEnbDevice().
|
private |
Factory of both the downlink and uplink LTE channels.
Definition at line 669 of file lte-helper.h.
Referenced by DoInitialize(), LteHelper(), SetSpectrumChannelAttribute(), and SetSpectrumChannelType().
|
private |
Factory of path loss model object for the downlink channel.
Definition at line 665 of file lte-helper.h.
Referenced by DoInitialize(), EnableLogComponents(), SetPathlossModelAttribute(), and SetPathlossModelType().
|
private |
The downlink LTE channel used in the simulation.
Definition at line 642 of file lte-helper.h.
Referenced by DoDispose(), DoInitialize(), InstallSingleEnbDevice(), and InstallSingleUeDevice().
The path loss model used in the downlink channel.
Definition at line 646 of file lte-helper.h.
Referenced by DoInitialize(), and InstallSingleEnbDevice().
|
private |
Factory of antenna object for eNodeB.
Definition at line 659 of file lte-helper.h.
Referenced by InstallSingleEnbDevice(), LteHelper(), SetEnbAntennaModelAttribute(), and SetEnbAntennaModelType().
|
private |
Factory of LteEnbNetDevice objects.
Definition at line 657 of file lte-helper.h.
Referenced by InstallSingleEnbDevice(), LteHelper(), and SetEnbDeviceAttribute().
Helper which provides implementation of core network.
Initially empty (i.e., LTE-only simulation without any core network) and then might be set using SetEpcHelper().
Definition at line 703 of file lte-helper.h.
Referenced by ActivateDataRadioBearer(), ActivateDedicatedEpsBearer(), AddX2Interface(), Attach(), DeActivateDedicatedEpsBearer(), HandoverRequest(), InstallSingleEnbDevice(), InstallSingleUeDevice(), and SetEpcHelper().
|
private |
Factory of fading model object for both the downlink and uplink channels.
Definition at line 674 of file lte-helper.h.
Referenced by DoInitialize(), SetFadingModel(), and SetFadingModelAttribute().
|
private |
Name of fading model type, e.g., "ns3::TraceFadingLossModel".
Definition at line 672 of file lte-helper.h.
Referenced by DoInitialize(), and SetFadingModel().
|
private |
The fading model used in both the downlink and uplink channels.
Definition at line 676 of file lte-helper.h.
Referenced by AssignStreams(), and DoInitialize().
|
private |
True if a random variable stream number has been assigned for the fading model.
Used to prevent such assignment to be done more than once.
Definition at line 681 of file lte-helper.h.
Referenced by AssignStreams().
|
private |
Factory of FFR (frequency reuse) algorithm object.
Definition at line 653 of file lte-helper.h.
Referenced by GetFfrAlgorithmType(), InstallSingleEnbDevice(), SetFfrAlgorithmAttribute(), and SetFfrAlgorithmType().
|
private |
Factory of handover algorithm object.
Definition at line 655 of file lte-helper.h.
Referenced by GetHandoverAlgorithmType(), InstallSingleEnbDevice(), SetHandoverAlgorithmAttribute(), and SetHandoverAlgorithmType().
|
private |
Keep track of the number of IMSI allocated.
Increases by one every time a new UE is installed (by InstallSingleUeDevice()). The first UE will have an IMSI of 1. The maximum number of UE is 2^64 (~4.2e9).
Definition at line 710 of file lte-helper.h.
Referenced by InstallSingleUeDevice().
|
private |
The AnrEnabled
attribute.
Activate or deactivate Automatic Neighbour Relation function.
Definition at line 727 of file lte-helper.h.
Referenced by GetTypeId(), and InstallSingleEnbDevice().
|
private |
Container of MAC layer statistics.
Definition at line 690 of file lte-helper.h.
Referenced by DoInitialize(), EnableDlMacTraces(), and EnableUlMacTraces().
|
private |
Container of PDCP layer statistics.
Definition at line 694 of file lte-helper.h.
Referenced by EnablePdcpTraces(), and GetPdcpStats().
|
private |
Container of PHY layer statistics related to reception.
Definition at line 688 of file lte-helper.h.
Referenced by DoInitialize(), EnableDlRxPhyTraces(), and EnableUlRxPhyTraces().
|
private |
Container of PHY layer statistics.
Definition at line 684 of file lte-helper.h.
Referenced by DoInitialize(), EnableDlPhyTraces(), and EnableUlPhyTraces().
|
private |
Container of PHY layer statistics related to transmission.
Definition at line 686 of file lte-helper.h.
Referenced by DoInitialize(), EnableDlTxPhyTraces(), and EnableUlTxPhyTraces().
|
private |
Connects RLC and PDCP statistics containers to appropriate trace sources.
Definition at line 696 of file lte-helper.h.
Referenced by EnablePdcpTraces(), and EnableRlcTraces().
|
private |
Container of RLC layer statistics.
Definition at line 692 of file lte-helper.h.
Referenced by EnableRlcTraces(), and GetRlcStats().
|
private |
Factory of MAC scheduler object.
Definition at line 651 of file lte-helper.h.
Referenced by GetSchedulerType(), InstallSingleEnbDevice(), SetSchedulerAttribute(), and SetSchedulerType().
|
private |
Factory of antenna object for UE.
Definition at line 663 of file lte-helper.h.
Referenced by InstallSingleUeDevice(), LteHelper(), SetUeAntennaModelAttribute(), and SetUeAntennaModelType().
|
private |
Factory for LteUeNetDevice objects.
Definition at line 661 of file lte-helper.h.
Referenced by InstallSingleUeDevice(), LteHelper(), and SetUeDeviceAttribute().
|
private |
Factory of path loss model object for the uplink channel.
Definition at line 667 of file lte-helper.h.
Referenced by DoInitialize(), SetPathlossModelAttribute(), and SetPathlossModelType().
|
private |
The uplink LTE channel used in the simulation.
Definition at line 644 of file lte-helper.h.
Referenced by DoDispose(), DoInitialize(), InstallSingleEnbDevice(), and InstallSingleUeDevice().
The path loss model used in the uplink channel.
Definition at line 648 of file lte-helper.h.
Referenced by DoInitialize(), and InstallSingleEnbDevice().
|
private |
The UseIdealRrc
attribute.
If true, LteRrcProtocolIdeal will be used for RRC signaling. If false, LteRrcProtocolReal will be used.
Definition at line 722 of file lte-helper.h.
Referenced by GetTypeId(), InstallSingleEnbDevice(), and InstallSingleUeDevice().
|
private |
The UsePdschForCqiGeneration
attribute.
If true, DL-CQI will be calculated from PDCCH as signal and PDSCH as interference. If false, DL-CQI will be calculated from PDCCH as signal and PDCCH as interference.
Definition at line 733 of file lte-helper.h.
Referenced by GetTypeId(), and InstallSingleUeDevice().