A Discrete-Event Network Simulator
API
Loading...
Searching...
No Matches
lte-test-rr-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 */
8
9#ifndef LENA_TEST_RR_FF_MAC_SCHEDULER_H
10#define LENA_TEST_RR_FF_MAC_SCHEDULER_H
11
12#include "ns3/simulator.h"
13#include "ns3/test.h"
14
15using namespace ns3;
16
17/**
18 * \ingroup lte-test
19 *
20 * \brief This system test program creates different test cases with a single eNB and
21 * This system test program creates different test cases with a single eNB and
22 * several UEs, all having the same Radio Bearer specification. In each test
23 * case, the UEs see the same SINR from the eNB; different test cases are
24 * implemented obtained by using different SINR values and different numbers of
25 * UEs. The test consists on checking that the obtained throughput performance
26 * is equal among users and matches a reference throughput value within a given
27 * tolerance.
28 */
30{
31 public:
32 /**
33 * Constructor
34 *
35 * \param nUser the number of UE nodes
36 * \param dist the distance between nodes
37 * \param thrRefDl the DL throughput reference
38 * \param thrRefUl the UL throughput reference
39 * \param errorModelEnabled if true the error model is enabled
40 */
41 LenaRrFfMacSchedulerTestCase(uint16_t nUser,
42 double dist,
43 double thrRefDl,
44 double thrRefUl,
45 bool errorModelEnabled);
47
48 private:
49 void DoRun() override;
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 UE nodes and eNodeB
54 * \returns the name string
55 */
56 static std::string BuildNameString(uint16_t nUser, double dist);
57 uint16_t m_nUser; ///< number of UE nodes
58 double m_dist; ///< the distance between nodes
59 double m_thrRefDl; ///< the DL throughput reference
60 double m_thrRefUl; ///< the UL throughput reference
61 bool m_errorModelEnabled; ///< indicates whether the error model is enabled
62};
63
64/**
65 * \ingroup lte-test
66 *
67 * \brief Test suite for RrFfMacScheduler test
68 */
74
75#endif /* LENA_TEST_RR_FF_MAC_SCHEDULER_H */
This system test program creates different test cases with a single eNB and This system test program ...
double m_thrRefDl
the DL throughput reference
void DoRun() override
Implementation to actually run this TestCase.
double m_thrRefUl
the UL throughput reference
bool m_errorModelEnabled
indicates 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.
double m_dist
the distance between nodes
LenaRrFfMacSchedulerTestCase(uint16_t nUser, double dist, double thrRefDl, double thrRefUl, bool errorModelEnabled)
Constructor.
Test suite for RrFfMacScheduler test.
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.