A Discrete-Event Network Simulator
API
lte-enb-phy-sap.h
Go to the documentation of this file.
1 /*
2  * Copyright (c) 2011 Centre Tecnologic de Telecomunicacions de Catalunya (CTTC)
3  *
4  * This program is free software; you can redistribute it and/or modify
5  * it under the terms of the GNU General Public License version 2 as
6  * published by the Free Software Foundation;
7  *
8  * This program is distributed in the hope that it will be useful,
9  * but WITHOUT ANY WARRANTY; without even the implied warranty of
10  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11  * GNU General Public License for more details.
12  *
13  * You should have received a copy of the GNU General Public License
14  * along with this program; if not, write to the Free Software
15  * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
16  *
17  * Author: Marco Miozzo <mmiozzo@cttc.es>
18  */
19 
20 #ifndef LTE_ENB_PHY_SAP_H
21 #define LTE_ENB_PHY_SAP_H
22 
23 #include "ff-mac-common.h"
24 #include "ff-mac-sched-sap.h"
25 
26 #include <ns3/packet.h>
27 
28 namespace ns3
29 {
30 
31 class LteControlMessage;
32 
40 {
41  public:
42  virtual ~LteEnbPhySapProvider();
43 
48  virtual void SendMacPdu(Ptr<Packet> p) = 0;
49 
55 
60  virtual uint8_t GetMacChTtiDelay() = 0;
61 };
62 
70 {
71  public:
72  virtual ~LteEnbPhySapUser();
73 
79  virtual void ReceivePhyPdu(Ptr<Packet> p) = 0;
80 
86  virtual void SubframeIndication(uint32_t frameNo, uint32_t subframeNo) = 0;
87 
94 
100  virtual void ReceiveRachPreamble(uint32_t prachId) = 0;
101 
107 
114 
121 };
122 
123 } // namespace ns3
124 
125 #endif // LTE_ENB_PHY_SAP_H
Service Access Point (SAP) offered by the eNB-PHY to the eNB-MAC.
virtual void SendLteControlMessage(Ptr< LteControlMessage > msg)=0
Send SendLteControlMessage (PDCCH map, CQI feedbacks) using the ideal control channel.
virtual uint8_t GetMacChTtiDelay()=0
Get the delay from MAC to Channel expressed in TTIs.
virtual void SendMacPdu(Ptr< Packet > p)=0
Send the MAC PDU to the channel.
Service Access Point (SAP) offered by the eNB-PHY to the eNB-MAC.
virtual void ReceivePhyPdu(Ptr< Packet > p)=0
Called by the Phy to notify the MAC of the reception of a new PHY-PDU.
virtual void UlCqiReport(FfMacSchedSapProvider::SchedUlCqiInfoReqParameters ulcqi)=0
Returns to MAC level the UL-CQI evaluated.
virtual void UlInfoListElementHarqFeedback(UlInfoListElement_s params)=0
Notify the HARQ on the UL transmission status.
virtual void ReceiveLteControlMessage(Ptr< LteControlMessage > msg)=0
Receive SendLteControlMessage (PDCCH map, CQI feedbacks) using the ideal control channel.
virtual void ReceiveRachPreamble(uint32_t prachId)=0
notify the reception of a RACH preamble on the PRACH
virtual void SubframeIndication(uint32_t frameNo, uint32_t subframeNo)=0
Trigger the start from a new frame (input from Phy layer)
virtual void DlInfoListElementHarqFeedback(DlInfoListElement_s params)=0
Notify the HARQ on the DL transmission status.
Every class exported by the ns3 library is enclosed in the ns3 namespace.
params
Fit Fluctuating Two Ray model to the 3GPP TR 38.901 using the Anderson-Darling goodness-of-fit ##.
See section 4.3.23 dlInfoListElement.
Parameters of the SCHED_UL_CQI_INFO_REQ primitive.
See section 4.3.12 ulInfoListElement.