22 #ifndef LTE_CCM_RRC_SAP_H 23 #define LTE_CCM_RRC_SAP_H 25 #include <ns3/lte-rrc-sap.h> 26 #include <ns3/eps-bearer.h> 27 #include <ns3/lte-enb-cmac-sap.h> 28 #include <ns3/lte-mac-sap.h> 33 class LteUeCmacSapProvider;
35 class LteEnbCmacSapProvider;
84 virtual void AddUe (uint16_t rnti, uint8_t state) = 0;
99 virtual void RemoveUe (uint16_t rnti) = 0;
196 virtual void AddLcs (std::vector<LteEnbRrcSapProvider::LogicalChannelConfig> lcConfig) = 0;
204 virtual void ReleaseLcs (uint16_t rnti, uint8_t lcid) = 0;
237 virtual void AddUe (uint16_t rnti, uint8_t state);
239 virtual void RemoveUe (uint16_t rnti);
257 m_owner->DoReportUeMeas (rnti, measResults);
263 m_owner->DoAddUe (rnti, state);
269 m_owner->DoAddLc (lcInfo, msu);
275 m_owner->DoRemoveUe (rnti);
281 return m_owner->DoSetupDataRadioBearer (bearer, bearerId, rnti, lcid, lcGroup, msu);
287 return m_owner->DoReleaseDataRadioBearer (rnti, lcid);
293 return m_owner->DoConfigureSignalBearer (lcInfo, rlcMacSapUser);
310 virtual void AddLcs (std::vector<LteEnbRrcSapProvider::LogicalChannelConfig> lcConfig);
311 virtual void ReleaseLcs (uint16_t rnti, uint8_t lcid);
330 NS_FATAL_ERROR (
"Function should not be called because it is not implemented.");
337 NS_FATAL_ERROR (
"Function should not be called because it is not implemented.");
346 return m_owner->DoAddUeMeasReportConfigForComponentCarrier (reportConfig);
354 NS_FATAL_ERROR (
"Function should not be called because it is not implemented.");
361 return m_owner->GetUeManager (rnti);
368 return m_owner->DoSetNumberOfComponentCarriers (noOfComponentCarriers);
virtual void SetNumberOfComponentCarriers(uint16_t noOfComponentCarriers)
Set the number of component carriers.
virtual Ptr< UeManager > GetUeManager(uint16_t rnti)=0
Get UE manager by RNTI.
virtual std::vector< uint8_t > ReleaseDataRadioBearer(uint16_t rnti, uint8_t lcid)=0
Release an existing Data Radio Bearer for a Ue in the LteEnbComponentCarrierManager.
Smart pointer class similar to boost::intrusive_ptr.
virtual std::vector< LteCcmRrcSapProvider::LcsConfig > SetupDataRadioBearer(EpsBearer bearer, uint8_t bearerId, uint16_t rnti, uint8_t lcid, uint8_t lcGroup, LteMacSapUser *msu)=0
Add a new Bearer for the Ue in the LteEnbComponentCarrierManager.
Specifies criteria for triggering of an E-UTRA measurement reporting event.
virtual void RemoveUe(uint16_t rnti)=0
Remove an existing UE.
virtual LteMacSapUser * ConfigureSignalBearer(LteEnbCmacSapProvider::LcInfo lcInfo, LteMacSapUser *rlcMacSapUser)=0
Add the Signal Bearer for a specific Ue in LteEnbComponenCarrierManager.
The LTE Radio Resource Control entity at the eNB.
#define NS_FATAL_ERROR(msg)
Report a fatal error with a message and terminate.
virtual void TriggerComponentCarrier(uint16_t rnti, uint16_t targetCellId)
Instruct the eNodeB RRC entity to prepare a component carrier.
virtual void ReportUeMeas(uint16_t rnti, LteRrcSap::MeasResults measResults)=0
Reports UE measurements to the component carrier manager.
MemberLteCcmRrcSapUser class.
virtual uint8_t AddUeMeasReportConfigForComponentCarrier(LteRrcSap::ReportConfigEutra reportConfig)=0
Request a certain reporting configuration to be fulfilled by the UEs attached to the eNodeB entity...
virtual ~LteCcmRrcSapUser()
virtual ~LteCcmRrcSapProvider()
virtual void AddLc(LteEnbCmacSapProvider::LcInfo lcInfo, LteMacSapUser *msu)
Add a new logical channel.
uint16_t componentCarrierId
component carrier ID
MemberLteCcmRrcSapProvider(C *owner)
Constructor.
virtual void SetNumberOfComponentCarriers(uint16_t noOfComponentCarriers)=0
Set the number of component carriers.
Logical Channel information to be passed to CmacSapProvider::ConfigureLc.
virtual void ReleaseLcs(uint16_t rnti, uint8_t lcid)=0
remove an existing LC
virtual void ReportUeMeas(uint16_t rnti, LteRrcSap::MeasResults measResults)
Reports UE measurements to the component carrier manager.
MemberLteCcmRrcSapUser(C *owner)
Constructor.
virtual Ptr< UeManager > GetUeManager(uint16_t rnti)
Get UE manager by RNTI.
C * m_owner
the owner class
virtual std::vector< LteCcmRrcSapProvider::LcsConfig > SetupDataRadioBearer(EpsBearer bearer, uint8_t bearerId, uint16_t rnti, uint8_t lcid, uint8_t lcGroup, LteMacSapUser *msu)
Add a new Bearer for the Ue in the LteEnbComponentCarrierManager.
C * m_owner
the owner class
virtual void TriggerComponentCarrier(uint16_t rnti, uint16_t targetCellId)=0
Instruct the eNodeB RRC entity to prepare a component carrier.
MemberLteCcmRrcSapProvider class.
Every class exported by the ns3 library is enclosed in the ns3 namespace.
Manages all the radio bearer information possessed by the ENB RRC for a single UE.
virtual uint8_t AddUeMeasReportConfigForComponentCarrier(LteRrcSap::ReportConfigEutra reportConfig)
Request a certain reporting configuration to be fulfilled by the UEs attached to the eNodeB entity...
This class contains the specification of EPS Bearers.
virtual void AddUe(uint16_t rnti, uint8_t state)=0
Add a new UE in the LteEnbComponentCarrierManager.
virtual std::vector< uint8_t > ReleaseDataRadioBearer(uint16_t rnti, uint8_t lcid)
Release an existing Data Radio Bearer for a Ue in the LteEnbComponentCarrierManager.
virtual void RemoveUe(uint16_t rnti)
Remove an existing UE.
virtual void AddUe(uint16_t rnti, uint8_t state)
Add a new UE in the LteEnbComponentCarrierManager.
Service Access Point (SAP) offered by the MAC to the RLC See Femto Forum MAC Scheduler Interface Spec...
Service Access Point (SAP) offered by the Component Carrier Manager (CCM) instance to the eNodeB RRC ...
virtual void AddLc(LteEnbCmacSapProvider::LcInfo lcInfo, LteMacSapUser *msu)=0
Add a new logical channel.
LteEnbCmacSapProvider::LcInfo lc
LC info.
Service Access Point (SAP) offered by the eNodeB RRC instance to the component carrier manager (CCM) ...
virtual void AddLcs(std::vector< LteEnbRrcSapProvider::LogicalChannelConfig > lcConfig)
add a new Logical Channel (LC)
virtual void ReleaseLcs(uint16_t rnti, uint8_t lcid)
remove an existing LC
virtual void AddLcs(std::vector< LteEnbRrcSapProvider::LogicalChannelConfig > lcConfig)=0
add a new Logical Channel (LC)
virtual LteMacSapUser * ConfigureSignalBearer(LteEnbCmacSapProvider::LcInfo lcInfo, LteMacSapUser *rlcMacSapUser)
Add the Signal Bearer for a specific Ue in LteEnbComponenCarrierManager.