A Discrete-Event Network Simulator
API
lte-test-downlink-power-control.h
Go to the documentation of this file.
1 /* -*- Mode: C++; c-file-style: "gnu"; indent-tabs-mode:nil; -*- */
2 /*
3  * Copyright (c) 2014 Piotr Gawlowicz
4  *
5  * This program is free software; you can redistribute it and/or modify
6  * it under the terms of the GNU General Public License version 2 as
7  * published by the Free Software Foundation;
8  *
9  * This program is distributed in the hope that it will be useful,
10  * but WITHOUT ANY WARRANTY; without even the implied warranty of
11  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12  * GNU General Public License for more details.
13  *
14  * You should have received a copy of the GNU General Public License
15  * along with this program; if not, write to the Free Software
16  * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
17  *
18  * Author: Piotr Gawlowicz <gawlowicz.p@gmail.com>
19  *
20  */
21 
22 #ifndef LTE_TEST_DOWNLINK_POWER_CONTROL_H
23 #define LTE_TEST_DOWNLINK_POWER_CONTROL_H
24 
25 #include "ns3/spectrum-value.h"
26 #include <ns3/lte-rrc-sap.h>
27 
28 #include "ns3/spectrum-test.h"
29 #include "ns3/lte-spectrum-value-helper.h"
30 
31 #include "ns3/test.h"
32 
33 using namespace ns3;
34 
39 {
40 public:
42 
43  double CalculateRbTxPower (double txPower, uint8_t pa);
44 };
45 
47 {
48 public:
50  uint16_t earfcn, uint8_t bw, double powerTx,
51  std::map<int, double> powerTxMap, std::vector <int> activeRbs,
52  SpectrumValue& expected);
54 
55 private:
56  virtual void DoRun (void);
59 
60 };
61 
63 {
64 public:
65  LteDownlinkPowerControlTestCase (bool changePower, uint8_t pa, std::string name);
67 
68 private:
69  virtual void DoRun (void);
70 
74 };
75 
76 
78 {
79 public:
80  LteDownlinkPowerControlRrcConnectionReconfigurationTestCase (bool useIdealRrc, std::string name);
82 
83  void ConnectionReconfigurationEnb (std::string context, uint64_t imsi, uint16_t cellid, uint16_t rnti);
84 
85  void ConnectionReconfigurationUe (std::string context, uint64_t imsi, uint16_t cellid, uint16_t rnti);
86 
87  void ChangePdschConfigDedicated (uint16_t rnti, uint8_t pa);
88 private:
89  virtual void DoRun (void);
91 
95 };
96 
97 #endif /* LTE_TEST_DOWNLINK_POWER_CONTROL_H */
A suite of tests to run.
Definition: test.h:1333
encapsulates test code
Definition: test.h:1147
Every class exported by the ns3 library is enclosed in the ns3 namespace.
Set of values corresponding to a given SpectrumModel.