5G-LENA nr-v3.3-81-g75c7590d
The 5G/NR module for the ns-3 simulator
Loading...
Searching...
No Matches

The BwpManagerUe class. More...

#include "bwp-manager-ue.h"

+ Inheritance diagram for ns3::BwpManagerUe:
+ Collaboration diagram for ns3::BwpManagerUe:

Public Member Functions

 BwpManagerUe ()
 BwpManagerUe constructor.
 
 ~BwpManagerUe () override
 ~BwpManagerUe
 
uint8_t RouteDlHarqFeedback (const DlHarqInfo &m) const
 The UE received a HARQ feedback from spectrum. Where this feedback should be forwarded?
 
uint8_t RouteIngoingCtrlMsg (const Ptr< NrControlMessage > &msg, uint8_t sourceBwpId) const
 Decide the BWP for the control message received.
 
uint8_t RouteOutgoingCtrlMsg (const Ptr< NrControlMessage > &msg, uint8_t sourceBwpId) const
 Route the outgoing messages to the right BWP.
 
void SetBwpManagerAlgorithm (const Ptr< BwpManagerAlgorithm > &algorithm)
 Set the algorithm.
 
void SetOutputLink (uint32_t sourceBwp, uint32_t outputBwp)
 Set a mapping between two BWP.
 
- Public Member Functions inherited from ns3::NrSimpleUeComponentCarrierManager
 NrSimpleUeComponentCarrierManager ()
 Creates a No-op CCS algorithm instance.
 
NrMacSapProviderGetNrMacSapProvider () override
 Returns the MAC sap provider interface that if forwarding calls to the instance of the NrUeComponentCarrierManager.
 
- Public Member Functions inherited from ns3::NrUeComponentCarrierManager
virtual NrUeCcmRrcSapProviderGetNrCcmRrcSapProvider ()
 Exports the "provider" part of the NrComponentCarrier Management SAP interface.
 
bool SetComponentCarrierMacSapProviders (uint8_t componentCarrierId, NrMacSapProvider *sap)
 Sets a pointer to SAP interface of MAC instance for the specified carrier.
 
virtual void SetNrCcmRrcSapUser (NrUeCcmRrcSapUser *s)
 Set the "user" part of the NrComponentCarrier Management SAP interface that this UE component carrier manager will interact with.
 
void SetNumberOfComponentCarriers (uint8_t noOfComponentCarriers)
 Sets number of component carriers that are supported by this UE.
 

Static Public Member Functions

static TypeId GetTypeId ()
 GetTypeId.
 
- Static Public Member Functions inherited from ns3::NrSimpleUeComponentCarrierManager
static TypeId GetTypeId ()
 Get the type ID.
 
- Static Public Member Functions inherited from ns3::NrUeComponentCarrierManager
static TypeId GetTypeId ()
 Get the type ID.
 

Protected Member Functions

std::vector< NrUeCcmRrcSapProvider::LcsConfigDoAddLc (uint8_t lcId, NrUeCmacSapProvider::LogicalChannelConfig lcConfig, NrMacSapUser *msu) override
 Add LC function.
 
NrMacSapUserDoConfigureSignalBearer (uint8_t lcId, NrUeCmacSapProvider::LogicalChannelConfig lcConfig, NrMacSapUser *msu) override
 Configure signal bearer function.
 
void DoReportBufferStatus (NrMacSapProvider::ReportBufferStatusParameters params) override
 Report buffer status function.
 
Ptr< const BwpManagerAlgorithmGetAlgorithm () const
 
- Protected Member Functions inherited from ns3::NrSimpleUeComponentCarrierManager
void DoDispose () override
 
void DoInitialize () override
 
void DoNotifyHarqDeliveryFailure ()
 Notify HARQ deliver failure.
 
void DoNotifyTxOpportunity (NrMacSapUser::TxOpportunityParameters txOpParams)
 Notify TX opportunity function.
 
void DoReceivePdu (NrMacSapUser::ReceivePduParameters rxPduParams)
 Receive PDU function.
 
std::vector< uint16_t > DoRemoveLc (uint8_t lcid)
 Remove LC function.
 
void DoReportUeMeas (uint16_t rnti, NrRrcSap::MeasResults measResults)
 Report Ue Measure function.
 
void DoReset ()
 Reset LC map.
 
void DoTransmitPdu (NrMacSapProvider::TransmitPduParameters params)
 Transmit PDU function.
 
- Protected Member Functions inherited from ns3::NrUeComponentCarrierManager
void DoDispose () override
 

Additional Inherited Members

- Protected Attributes inherited from ns3::NrSimpleUeComponentCarrierManager
NrMacSapProviderm_ccmMacSapProvider
 Receive API calls from the UE RLC instance.
 
NrMacSapUserm_ccmMacSapUser
 Interface to the UE RLC instance.
 
- Protected Attributes inherited from ns3::NrUeComponentCarrierManager
NrUeCcmRrcSapProviderm_ccmRrcSapProvider
 Receive API calls from the UE RRC instance.
 
NrUeCcmRrcSapUserm_ccmRrcSapUser
 Interface to the UE RRC instance.
 
std::map< uint8_t, std::map< uint8_t, NrMacSapProvider * > > m_componentCarrierLcMap
 Flow configuration per flow Id of this UE.
 
std::map< uint8_t, NrMacSapUser * > m_lcAttached
 
std::map< uint8_t, NrMacSapProvider * > m_macSapProvidersMap
 
uint8_t m_noOfComponentCarriers
 The number of component carriers that this UE can support.
 

Detailed Description

The BwpManagerUe class.

Config Paths

ns3::BwpManagerUe is accessible through the following paths with Config::Set and Config::Connect:

Attributes

No TraceSources are defined for this type.
Size of this type is 360 bytes (on a 64-bit architecture).

Definition at line 23 of file bwp-manager-ue.h.

Constructor & Destructor Documentation

◆ BwpManagerUe()

ns3::BwpManagerUe::BwpManagerUe ( )

BwpManagerUe constructor.

Definition at line 19 of file bwp-manager-ue.cc.

◆ ~BwpManagerUe()

ns3::BwpManagerUe::~BwpManagerUe ( )
override

~BwpManagerUe

Definition at line 25 of file bwp-manager-ue.cc.

Member Function Documentation

◆ DoAddLc()

std::vector< NrUeCcmRrcSapProvider::LcsConfig > ns3::BwpManagerUe::DoAddLc ( uint8_t  lcId,
NrUeCmacSapProvider::LogicalChannelConfig  lcConfig,
NrMacSapUser msu 
)
overrideprotectedvirtual

Add LC function.

Parameters
lcIdthe LCID
lcConfigthe logical channel config
msuthe MSU
Returns
updated LC config list

Reimplemented from ns3::NrSimpleUeComponentCarrierManager.

Definition at line 69 of file bwp-manager-ue.cc.

References ns3::NrSimpleUeComponentCarrierManager::DoAddLc(), and ns3::NrUeCmacSapProvider::LogicalChannelConfig::priority.

+ Here is the call graph for this function:

◆ DoConfigureSignalBearer()

NrMacSapUser * ns3::BwpManagerUe::DoConfigureSignalBearer ( uint8_t  lcId,
NrUeCmacSapProvider::LogicalChannelConfig  lcConfig,
NrMacSapUser msu 
)
overrideprotectedvirtual

Configure signal bearer function.

Parameters
lcIdthe LCID
lcConfigthe logical channel config
msuthe MSU
Returns
NrMacSapUser *

Reimplemented from ns3::NrSimpleUeComponentCarrierManager.

Definition at line 86 of file bwp-manager-ue.cc.

References ns3::NrSimpleUeComponentCarrierManager::DoConfigureSignalBearer(), and ns3::NrUeCmacSapProvider::LogicalChannelConfig::priority.

+ Here is the call graph for this function:

◆ DoReportBufferStatus()

◆ GetAlgorithm()

Ptr< const BwpManagerAlgorithm > ns3::BwpManagerUe::GetAlgorithm ( ) const
protected

Allow subclasses to access BwpManagerAlgorithm

Returns
const pointer to the algorithm

Definition at line 147 of file bwp-manager-ue.cc.

◆ GetTypeId()

TypeId ns3::BwpManagerUe::GetTypeId ( )
static

GetTypeId.

Returns
the type id for the object

Definition at line 38 of file bwp-manager-ue.cc.

◆ RouteDlHarqFeedback()

uint8_t ns3::BwpManagerUe::RouteDlHarqFeedback ( const DlHarqInfo m) const

The UE received a HARQ feedback from spectrum. Where this feedback should be forwarded?

Parameters
mthe feedback
Returns
the BWP index in which the feedback can be transmitted to the gNB.

Definition at line 98 of file bwp-manager-ue.cc.

References ns3::HarqInfo::m_bwpIndex.

◆ RouteIngoingCtrlMsg()

uint8_t ns3::BwpManagerUe::RouteIngoingCtrlMsg ( const Ptr< NrControlMessage > &  msg,
uint8_t  sourceBwpId 
) const

Decide the BWP for the control message received.

Parameters
msgMessage
sourceBwpIdBWP Id from which this message come from.

The routing is made following the bandwidth part reported in the message.

Returns
the BWP Id to which this message should be routed to.

Definition at line 137 of file bwp-manager-ue.cc.

◆ RouteOutgoingCtrlMsg()

uint8_t ns3::BwpManagerUe::RouteOutgoingCtrlMsg ( const Ptr< NrControlMessage > &  msg,
uint8_t  sourceBwpId 
) const

Route the outgoing messages to the right BWP.

Parameters
msgthe message
sourceBwpIdthe source bwp of the message

The routing is made by following the mapping provided through the function SetOutputLink. If no mapping has been installed, or if the sourceBwpId provided is not in the mapping, then forward the message back to the originating BWP.

See also
SetOutputLink
Returns
the bwp to which the ctrl messages should be redirected

Definition at line 113 of file bwp-manager-ue.cc.

◆ SetBwpManagerAlgorithm()

void ns3::BwpManagerUe::SetBwpManagerAlgorithm ( const Ptr< BwpManagerAlgorithm > &  algorithm)

Set the algorithm.

Parameters
algorithmpointer to the algorithm

Definition at line 31 of file bwp-manager-ue.cc.

◆ SetOutputLink()

void ns3::BwpManagerUe::SetOutputLink ( uint32_t  sourceBwp,
uint32_t  outputBwp 
)

Set a mapping between two BWP.

Parameters
sourceBwpThe messages that comes from this value...
outputBwp... will get routed in this bandwidth part.

Call it for each mapping you want to install.

Definition at line 106 of file bwp-manager-ue.cc.


The documentation for this class was generated from the following files: