22 #ifndef LTE_UE_MAC_ENTITY_H
23 #define LTE_UE_MAC_ENTITY_H
29 #include <ns3/lte-mac-sap.h>
30 #include <ns3/lte-ue-cmac-sap.h>
31 #include <ns3/lte-ue-phy-sap.h>
32 #include <ns3/nstime.h>
33 #include <ns3/event-id.h>
35 #include <ns3/packet.h>
36 #include <ns3/packet-burst.h>
41 class UniformRandomVariable;
164 #endif // LTE_UE_MAC_ENTITY
void DoStartNonContentionBasedRandomAccessProcedure(uint16_t rnti, uint8_t rapId, uint8_t prachMask)
LteUeCmacSapProvider::LogicalChannelConfig lcConfig
keep track of time values and allow control of global simulation resolution
void SendRaPreamble(bool contention)
void StartWaitingForRaResponse()
void DoReceivePhyPdu(Ptr< Packet > p)
Ptr< UniformRandomVariable > m_raPreambleUniformVariable
LteUePhySapUser * m_uePhySapUser
void RaResponseTimeout(bool contention)
See section 4.3.10 buildRARListElement.
void DoAddLc(uint8_t lcId, LteUeCmacSapProvider::LogicalChannelConfig lcConfig, LteMacSapUser *msu)
void SetLteUePhySapProvider(LteUePhySapProvider *s)
Set the PHY SAP Provider.
LteMacSapUser * macSapUser
Service Access Point (SAP) offered by the PHY to the MAC.
void DoStartContentionBasedRandomAccessProcedure()
void SendReportBufferStatus(void)
void DoRemoveLc(uint8_t lcId)
Parameters for LteMacSapProvider::ReportBufferStatus.
std::vector< uint8_t > m_miUlHarqProcessesPacketTimer
void SetLteUeCmacSapUser(LteUeCmacSapUser *s)
void DoTransmitPdu(LteMacSapProvider::TransmitPduParameters params)
bool m_waitingForRaResponse
void DoReportBufferStatus(LteMacSapProvider::ReportBufferStatusParameters params)
LteUeCmacSapProvider * m_cmacSapProvider
std::vector< Ptr< PacketBurst > > m_miUlHarqProcessesPacket
LteUeCmacSapProvider * GetLteUeCmacSapProvider(void)
Service Access Point (SAP) offered by the UE MAC to the UE RRC.
void DoConfigureRach(LteUeCmacSapProvider::RachConfig rc)
void DoSubframeIndication(uint32_t frameNo, uint32_t subframeNo)
Forwarded from LteUePhySapUser: trigger the start from a new frame.
void DoReceiveLteControlMessage(Ptr< LteControlMessage > msg)
std::map< uint8_t, LcInfo > m_lcInfoMap
LteUePhySapUser * GetLteUePhySapUser()
Get the PHY SAP user.
LteMacSapProvider * GetLteMacSapProvider(void)
uint16_t m_backoffParameter
static TypeId GetTypeId(void)
LteMacSapProvider * m_macSapProvider
Service Access Point (SAP) offered by the UE MAC to the UE RRC.
LteUePhySapProvider * m_uePhySapProvider
void RandomlySelectAndSendRaPreamble()
void RecvRaResponse(BuildRarListElement_s raResponse)
uint8_t m_preambleTransmissionCounter
an identifier for simulation events.
Service Access Point (SAP) offered by the MAC to the RLC See Femto Forum MAC Scheduler Interface Spec...
EventId m_noRaResponseReceivedEvent
virtual void DoDispose(void)
This method is called by Object::Dispose or by the object's destructor, whichever comes first...
LteUeCmacSapProvider::RachConfig m_rachConfig
Service Access Point (SAP) offered by the UE-PHY to the UE-MAC.
Service Access Point (SAP) offered by the MAC to the RLC See Femto Forum MAC Scheduler Interface Spec...
std::map< uint8_t, LteMacSapProvider::ReportBufferStatusParameters > m_ulBsrReceived
a base class which provides memory management and object aggregation
int64_t AssignStreams(int64_t stream)
Assign a fixed random variable stream number to the random variables used by this model...
a unique identifier for an interface.
void RefreshHarqProcessesPacketBuffer(void)
LteUeCmacSapUser * m_cmacSapUser
Parameters for LteMacSapProvider::TransmitPdu.