A Discrete-Event Network Simulator
API
Loading...
Searching...
No Matches
lte-test-tdmt-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 * SPDX-License-Identifier: GPL-2.0-only
5 *
6 * Author: Marco Miozzo <marco.miozzo@cttc.es>,
7 * Nicola Baldo <nbaldo@cttc.es>
8 * Dizhi Zhou <dizhi.zhou@gmail.com>
9 */
10
11#ifndef LENA_TEST_TDMT_FF_MAC_SCHEDULER_H
12#define LENA_TEST_TDMT_FF_MAC_SCHEDULER_H
13
14#include "ns3/simulator.h"
15#include "ns3/test.h"
16
17using namespace ns3;
18
19/**
20 * \ingroup lte-test
21 *
22 * \brief This system test program creates different test cases with a single eNB and
23 * several UEs, all having the same Radio Bearer specification. In each test
24 * case, the UEs see the same SINR from the eNB; different test cases are
25 * implemented obtained by using different SINR values and different numbers of
26 * UEs. The test consists on checking that the obtained throughput performance
27 * is consistent with the definition of maximum throughput
28 * scheduling
29 */
31{
32 public:
33 /**
34 * Constructor
35 *
36 * \param nUser the number of UE nodes
37 * \param dist the distance between UE nodes and eNodeB
38 * \param thrRefDl the DL throughput reference
39 * \param thrRefUl the UL throughput reference
40 * \param errorModelEnabled if true the error model is enabled
41 */
42 LenaTdMtFfMacSchedulerTestCase(uint16_t nUser,
43 double dist,
44 double thrRefDl,
45 double thrRefUl,
46 bool errorModelEnabled);
48
49 private:
50 /**
51 * Builds the test name string based on provided parameter values
52 * \param nUser the number of UE nodes
53 * \param dist the distance between nodes
54 * \returns the name string
55 */
56 static std::string BuildNameString(uint16_t nUser, double dist);
57 void DoRun() override;
58 uint16_t m_nUser; ///< number of UE nodes
59 double m_dist; ///< the distance between nodes
60 double m_thrRefDl; ///< the DL throughput reference
61 double m_thrRefUl; ///< the UL throughput reference
62 bool m_errorModelEnabled; ///< whether the error model is enabled
63};
64
65/**
66 * \ingroup lte-test
67 *
68 * \brief Test suite for TdMtFfMacScheduler tests.
69 */
75
76#endif /* LENA_TEST_TDMT_FF_MAC_SCHEDULER_H */
This system test program creates different test cases with a single eNB and several UEs,...
double m_dist
the distance between nodes
void DoRun() override
Implementation to actually run this TestCase.
double m_thrRefUl
the UL throughput reference
double m_thrRefDl
the DL throughput reference
LenaTdMtFfMacSchedulerTestCase(uint16_t nUser, double dist, double thrRefDl, double thrRefUl, bool errorModelEnabled)
Constructor.
bool m_errorModelEnabled
whether the error model is enabled
static std::string BuildNameString(uint16_t nUser, double dist)
Builds the test name string based on provided parameter values.
Test suite for TdMtFfMacScheduler tests.
encapsulates test code
Definition test.h:1050
A suite of tests to run.
Definition test.h:1267
Every class exported by the ns3 library is enclosed in the ns3 namespace.