26 #include <ns3/lte-phy.h>
27 #include <ns3/ff-mac-common.h>
29 #include <ns3/lte-control-messages.h>
30 #include <ns3/lte-amc.h>
31 #include <ns3/lte-ue-phy-sap.h>
32 #include <ns3/lte-ue-cphy-sap.h>
34 #include <ns3/lte-amc.h>
double GetNoiseFigure() const
Ptr< LteSpectrumPhy > GetUlSpectrumPhy() const
SpectrumValue m_rsIntereferencePower
keep track of time values and allow control of global simulation resolution
smart pointer class similar to boost::intrusive_ptr
LteUePhySapUser * m_uePhySapUser
void SetNoiseFigure(double pow)
void SetTxMode5Gain(double gain)
virtual void GenerateDataCqiReport(const SpectrumValue &sinr)
std::list< PssElement > m_pssList
void SetTxMode2Gain(double gain)
uint8_t GetMacChDelay(void) const
void DoConfigureUplink(uint16_t ulEarfcn, uint8_t ulBandwidth)
std::vector< int > GetSubChannelsForTransmission(void)
Get a list of sub channels to use in RX.
virtual void GenerateCtrlCqiReport(const SpectrumValue &sinr)
TracedCallback< uint16_t, uint16_t, double, double > m_reportCurrentCellRsrpSinrTrace
void DoSyncronizeWithEnb(uint16_t cellId, uint16_t dlEarfcn)
void SetSubChannelsForTransmission(std::vector< int > mask)
Set a list of sub channels to use in TX.
LteUePhySapProvider * m_uePhySapProvider
void SetTxMode6Gain(double gain)
std::vector< double > m_txModeGain
void QueueSubChannelsForTransmission(std::vector< int > rbMap)
void SetTxModeGain(uint8_t txMode, double gain)
std::map< uint16_t, UeMeasurementsElement > m_UeMeasurementsMap
virtual void DoSendMacPdu(Ptr< Packet > p)
Queue the MAC PDU to be sent (according to m_macChTtiDelay)
std::vector< int > GetSubChannelsForReception(void)
Get a list of sub channels to use in RX.
uint8_t m_transmissionMode
void SetHarqPhyModule(Ptr< LteHarqPhy > harq)
Set the HARQ PHY module.
void DoSetSrsConfigurationIndex(uint16_t srcCi)
void DoSetTransmissionMode(uint8_t txMode)
double m_pssReceptionThreshold
TracedCallback< uint16_t, uint16_t, double, double, bool > m_reportUeMeasurements
Time m_ueMeasurementsFilterLast
LteUeCphySapUser * m_ueCphySapUser
void DoSetDlBandwidth(uint8_t ulBandwidth)
uint16_t m_rsrpSinrSamplePeriod
void SetLteUePhySapUser(LteUePhySapUser *s)
Set the PHY SAP User.
void SetTxMode3Gain(double gain)
Ptr< DlCqiLteControlMessage > CreateDlCqiFeedbackMessage(const SpectrumValue &sinr)
Create the DL CQI feedback from SINR values perceived at the physical layer with the signal received ...
void SetTxMode4Gain(double gain)
void SendSrs()
Send the SRS signal in the last symbols of the frame.
bool m_rsInterferencePowerUpdated
void SetTxMode7Gain(double gain)
See section 4.3.23 dlInfoListElement.
virtual void DoSendRachPreamble(uint32_t prachId, uint32_t raRnti)
virtual void ReceiveLteDlHarqFeedback(DlInfoListElement_s mes)
PhySpectrum generated a new DL HARQ feedback.
Ptr< LteHarqPhy > m_harqPhyModule
uint16_t m_rsrpSinrSampleCounter
SpectrumValue m_rsReceivedPower
double GetTxPower() const
uint16_t m_srsSubframeOffset
void SubframeIndication(uint32_t frameNo, uint32_t subframeNo)
trigger from eNB the start from a new frame
virtual void DoInitialize(void)
void SetTxMode1Gain(double gain)
std::vector< int > m_subChannelsForTransmission
std::vector< std::vector< int > > m_subChannelsForTransmissionQueue
LteUeCphySapProvider * m_ueCphySapProvider
an identifier for simulation events.
std::vector< int > m_subChannelsForReception
virtual void ReceiveLteControlMessageList(std::list< Ptr< LteControlMessage > >)
void SetTxPower(double pow)
virtual void ReceivePss(uint16_t cellId, Ptr< SpectrumValue > p)
uint16_t m_srsPeriodicity
LteUePhySapProvider * GetLteUePhySapProvider()
Get the PHY SAP provider.
void SetLteUeCphySapUser(LteUeCphySapUser *s)
Set the CPHY SAP User.
void PhyPduReceived(Ptr< Packet > p)
PhySpectrum received a new PHY-PDU.
virtual void DoSendLteControlMessage(Ptr< LteControlMessage > msg)
bool m_rsReceivedPowerUpdated
Ptr< LteSpectrumPhy > GetDlSpectrumPhy() const
virtual void ReportRsReceivedPower(const SpectrumValue &power)
LteUeCphySapProvider * GetLteUeCphySapProvider()
Get the CPHY SAP provider.
Set of values corresponding to a given SpectrumModel.
a unique identifier for an interface.
TracedCallback< PhyTransmissionStatParameters > m_ulPhyTransmission
static TypeId GetTypeId(void)
void ReportUeMeasurements()
virtual void ReportInterference(const SpectrumValue &interf)
virtual Ptr< SpectrumValue > CreateTxPowerSpectralDensity()
Create the PSD for the TX.
void DoSetRnti(uint16_t rnti)
void SetSubChannelsForReception(std::vector< int > mask)
Get a list of sub channels to use in RX.
virtual void DoDispose(void)
Time m_ueMeasurementsFilterPeriod