A Discrete-Event Network Simulator
API
lte-test-fdtbfq-ff-mac-scheduler.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 <marco.miozzo@cttc.es>,
18 * Nicola Baldo <nbaldo@cttc.es>
19 * Dizhi Zhou <dizhi.zhou@gmail.com>
20 */
21
22#ifndef LENA_TEST_FDTBFQ_FF_MAC_SCHEDULER_H
23#define LENA_TEST_FDTBFQ_FF_MAC_SCHEDULER_H
24
25#include "ns3/simulator.h"
26#include "ns3/test.h"
27
28using namespace ns3;
29
42{
43 public:
56 double dist,
57 double thrRefDl,
58 double thrRefUl,
59 uint16_t packetSize,
60 uint16_t interval,
61 bool errorModelEnabled);
63
64 private:
72 static std::string BuildNameString(uint16_t nUser, double dist);
73 void DoRun() override;
74 uint16_t m_nUser;
75 double m_dist;
76 uint16_t m_packetSize;
77 uint16_t m_interval;
78 double m_thrRefDl;
79 double m_thrRefUl;
81};
82
91{
92 public:
102 LenaFdTbfqFfMacSchedulerTestCase2(std::vector<double> dist,
103 std::vector<uint32_t> estThrFdTbfqDl,
104 std::vector<uint16_t> packetSize,
105 uint16_t interval,
106 bool errorModelEnabled);
108
109 private:
117 static std::string BuildNameString(uint16_t nUser, std::vector<double> dist);
118 void DoRun() override;
119 uint16_t m_nUser;
120 std::vector<double> m_dist;
121 std::vector<uint16_t> m_packetSize;
122 uint16_t m_interval;
123 std::vector<uint32_t> m_estThrFdTbfqDl;
125};
126
133{
134 public:
136};
137
138#endif /* LENA_TEST_FDTBFQ_FF_MAC_SCHEDULER_H */
This system test program creates different test cases with a single eNB and several UEs,...
static std::string BuildNameString(uint16_t nUser, double dist)
Builds the test name string based on provided parameter values.
LenaFdTbfqFfMacSchedulerTestCase1(uint16_t nUser, double dist, double thrRefDl, double thrRefUl, uint16_t packetSize, uint16_t interval, bool errorModelEnabled)
Constructor.
void DoRun() override
Implementation to actually run this TestCase.
bool m_errorModelEnabled
whether the error model is enabled
Test case is simillar to the one defined in LenaFdTbfqFfMacSchedulerTestCase1, with the difference th...
void DoRun() override
Implementation to actually run this TestCase.
std::vector< uint32_t > m_estThrFdTbfqDl
estimated thrpughput FDTBFQ DL
static std::string BuildNameString(uint16_t nUser, std::vector< double > dist)
Builds the test name string based on provided parameter values.
std::vector< double > m_dist
distance between the nodes
std::vector< uint16_t > m_packetSize
packet size in bytes
LenaFdTbfqFfMacSchedulerTestCase2(std::vector< double > dist, std::vector< uint32_t > estThrFdTbfqDl, std::vector< uint16_t > packetSize, uint16_t interval, bool errorModelEnabled)
Constructor.
Test suit for FdTbfqFfMacScheduler test.
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.
static const uint32_t packetSize
Packet size generated at the AP.