AmcPilotD2D.h Source File

Simu5G: AmcPilotD2D.h Source File
Simu5G
AmcPilotD2D.h
1//
2// Simu5G
3//
4// Copyright (C) 2012-2021 Giovanni Nardini, Giovanni Stea, Antonio Virdis et al. (University of Pisa)
5// Copyright (C) 2022-2026 Giovanni Nardini, Giovanni Stea et al. (University of Pisa)
6//
7// This file is part of a software released under the license included in file
8// "license.pdf". Please read LICENSE and README files before using it.
9// The above files and the present reference are part of the software itself,
10// and cannot be removed from it.
11//
12
13#ifndef _LTE_AMCPILOTD2D_H_
14#define _LTE_AMCPILOTD2D_H_
15
16#include "simu5g/stack/mac/amc/AmcPilot.h"
17
18namespace simu5g {
19
23class AmcPilotD2D : public AmcPilot
24{
25 bool usePreconfiguredTxParams_ = false;
26 UserTxParams *preconfiguredTxParams_ = nullptr;
27
28 public:
29
34 AmcPilotD2D(Binder *binder, LteAmc *amc) :
35 AmcPilot(binder, amc)
36 {
37 name_ = "D2D";
38 mode_ = MIN_CQI;
39 }
40
47 const UserTxParams& computeTxParams(MacNodeId id, const Direction dir, GHz carrierFrequency) override;
48
49 virtual void setPreconfiguredTxParams(Cqi cqi);
50
51 // TODO reimplement these functions
52 std::vector<Cqi> getMultiBandCqi(MacNodeId id, const Direction dir, GHz carrierFrequency) override { std::vector<Cqi> result; return result; }
53 void setUsableBands(MacNodeId id, UsableBands usableBands) override {}
54 UsableBands *getUsableBands(MacNodeId id) override { return nullptr; }
55};
56
57} //namespace
58
59#endif
60
const UserTxParams & computeTxParams(MacNodeId id, const Direction dir, GHz carrierFrequency) override
AmcPilotD2D(Binder *binder, LteAmc *amc)
Definition AmcPilotD2D.h:34
std::string name_
Pilot Name.
Definition AmcPilot.h:43
AmcPilot(Binder *binder, LteAmc *amc)
Definition AmcPilot.h:57
Definition Binder.h:48
Lte AMC module for Omnet++ simulator.
Definition LteAmc.h:45
Definition AlertReceiver.h:24
unsigned short Cqi
Channel Quality Indicator.
Definition LteTypes.h:133