5G-LENA nr-v4.0-29-g6d8085cd
The 5G/NR module for the ns-3 simulator
Loading...
Searching...
No Matches
nr-lte-amc.h
1// Copyright (c) 2010 TELEMATICS LAB, DEE - Politecnico di Bari
2//
3// SPDX-License-Identifier: GPL-2.0-only
4//
5// Original Author: Giuseppe Piro <g.piro@poliba.it>
6// Modified by: Nicola Baldo <nbaldo@cttc.es>
7// Modified by: Marco Miozzo <mmiozzo@cttc.es>
8
9#ifndef NR_LTE_AMC_H
10#define NR_LTE_AMC_H
11
12#include "ns3/object.h"
13#include "ns3/ptr.h"
14
15#include <vector>
16
17namespace ns3
18{
19
20class SpectrumValue;
21
28class NrLteAmc : public Object
29{
30 public:
35 static TypeId GetTypeId();
36
37 NrLteAmc();
38 ~NrLteAmc() override;
39
56
63 int GetMcsFromCqi(int cqi);
64
72 int GetDlTbSizeFromMcs(int mcs, int nprb);
73
81 int GetUlTbSizeFromMcs(int mcs, int nprb);
82
90 int GetCqiFromSpectralEfficiency(double s);
91
92 private:
98 double m_ber;
99
105 AmcModel m_amcModel;
106
107}; // end of `class NrLteAmc`
108
109} // namespace ns3
110
111#endif /* NR_LTE_AMC_H */
AmcModel
Types of AMC model.
Definition nr-lte-amc.h:42
int GetDlTbSizeFromMcs(int mcs, int nprb)
Get the Transport Block Size for a selected MCS and number of PRB (table 7.1.7.2.1-1 of 36....
static TypeId GetTypeId()
Get the type ID.
int GetCqiFromSpectralEfficiency(double s)
Get a proper CQI for the spectral efficiency value. In order to assure a lower block error rate,...
int GetUlTbSizeFromMcs(int mcs, int nprb)
Get the Transport Block Size for a selected MCS and number of PRB (table 8.6.1-1 of 36....
int GetMcsFromCqi(int cqi)
Get the Modulation and Coding Scheme for a CQI value.