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
void DoStartContentionBasedRandomAccessProcedure()
void SendReportBufferStatus(void)
void DoRemoveLc(uint8_t lcId)
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)
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
LteUePhySapProvider * m_uePhySapProvider
void RandomlySelectAndSendRaPreamble()
void RecvRaResponse(BuildRarListElement_s raResponse)
uint8_t m_preambleTransmissionCounter
an identifier for simulation events.
EventId m_noRaResponseReceivedEvent
virtual void DoDispose(void)
LteUeCmacSapProvider::RachConfig m_rachConfig
std::map< uint8_t, LteMacSapProvider::ReportBufferStatusParameters > m_ulBsrReceived
a base class which provides memory management and object aggregation
int64_t AssignStreams(int64_t stream)
a unique identifier for an interface.
void RefreshHarqProcessesPacketBuffer(void)
LteUeCmacSapUser * m_cmacSapUser