A Discrete-Event Network Simulator
API
lte-test-downlink-power-control.h
Go to the documentation of this file.
1 /*
2  * Copyright (c) 2014 Piotr Gawlowicz
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: Piotr Gawlowicz <gawlowicz.p@gmail.com>
18  *
19  */
20 
21 #ifndef LTE_TEST_DOWNLINK_POWER_CONTROL_H
22 #define LTE_TEST_DOWNLINK_POWER_CONTROL_H
23 
24 #include "ns3/lte-spectrum-value-helper.h"
25 #include "ns3/spectrum-test.h"
26 #include "ns3/spectrum-value.h"
27 #include "ns3/test.h"
28 #include <ns3/lte-rrc-sap.h>
29 
30 using namespace ns3;
31 
39 {
40  public:
42 
49  double CalculateRbTxPower(double txPower, uint8_t pa);
50 };
51 
59 {
60  public:
73  uint16_t earfcn,
74  uint16_t bw,
75  double powerTx,
76  std::map<int, double> powerTxMap,
77  std::vector<int> activeRbs,
78  SpectrumValue& expected);
80 
81  private:
82  void DoRun() override;
85 };
86 
95 {
96  public:
104  LteDownlinkPowerControlTestCase(bool changePower, uint8_t pa, std::string name);
106 
107  private:
108  void DoRun() override;
109 
113 };
114 
123 {
124  public:
131  LteDownlinkPowerControlRrcConnectionReconfigurationTestCase(bool useIdealRrc, std::string name);
133 
142  void ConnectionReconfigurationEnb(std::string context,
143  uint64_t imsi,
144  uint16_t cellid,
145  uint16_t rnti);
146 
155  void ConnectionReconfigurationUe(std::string context,
156  uint64_t imsi,
157  uint16_t cellid,
158  uint16_t rnti);
159 
166  void ChangePdschConfigDedicated(uint16_t rnti, uint8_t pa);
167 
168  private:
169  void DoRun() override;
171 
175 };
176 
177 #endif /* LTE_TEST_DOWNLINK_POWER_CONTROL_H */
Set of values corresponding to a given SpectrumModel.
encapsulates test code
Definition: test.h:1060
A suite of tests to run.
Definition: test.h:1256
Every class exported by the ns3 library is enclosed in the ns3 namespace.
PdschConfigDedicated structure.
Definition: lte-rrc-sap.h:163