A Discrete-Event Network Simulator
API
Loading...
Searching...
No Matches
snr-to-block-error-rate-record.h
Go to the documentation of this file.
1/*
2 * Copyright (c) 2007,2008, 2009 INRIA, UDcast
3 *
4 * SPDX-License-Identifier: GPL-2.0-only
5 *
6 * Author: Mohamed Amine Ismail <amine.ismail@sophia.inria.fr>
7 * <amine.ismail@udcast.com>
8 */
9
10#ifndef SNR_TO_BLOCK_ERROR_RATE_RECORD_H
11#define SNR_TO_BLOCK_ERROR_RATE_RECORD_H
12
13namespace ns3
14{
15
16/**
17 * \ingroup wimax
18 * \brief This class represents a record (handled by SnrToBlockErrorRate manager) that keeps a
19 * mapping between an SNR value and its corresponding (1) Bit Error Rate, (2) Block Error Rate, (3)
20 * Standard deviation, (4 and 5) confidence interval.
21 *
22 */
24{
25 public:
26 /**
27 * \brief creates a record and sets its values
28 * \param snrValue The SNR value
29 * \param bitErrorRate the BER
30 * \param BlockErrorRate the BlcER
31 * \param sigma2 the standard deviation
32 * \param I1 the lower boundary of the confidence interval
33 * \param I2 the upper boundary of the confidence interval
34 */
35 SNRToBlockErrorRateRecord(double snrValue,
36 double bitErrorRate,
37 double BlockErrorRate,
38 double sigma2,
39 double I1,
40 double I2);
42
43 /**
44 * \return the SNR value
45 */
46 double GetSNRValue() const;
47 /**
48 * \return the BER value
49 */
50 double GetBitErrorRate() const;
51 /**
52 * \return the BlcER value
53 */
54 double GetBlockErrorRate() const;
55 /**
56 * \return the standard deviation
57 */
58 double GetSigma2() const;
59 /**
60 * \return the lower boundary of the confidence interval
61 */
62 double GetI1() const;
63 /**
64 * \return the upper boundary of the confidence interval
65 */
66 double GetI2() const;
67 /**
68 * \brief copy a record
69 * \return a copy of this record
70 */
72
73 /**
74 * \brief set the snr value
75 * \param snrValue the SNR value
76 */
77 void SetSNRValue(double snrValue);
78 /**
79 * \brief set the BER value
80 * \param bitErrorRate the bit error rate value
81 */
82 void SetBitErrorRate(double bitErrorRate);
83 /**
84 * \brief set the BlcER value
85 * \param blockErrorRate the block error rate value
86 */
87 void SetBlockErrorRate(double blockErrorRate);
88 /**
89 * \brief set the lower boundary of the confidence interval
90 * \param i1 the lower boundary of the confidence interval
91 */
92 void SetI1(double i1);
93 /**
94 * \brief set the upper boundary of the confidence interval
95 * \param i2 the upper boundary of the confidence interval
96 */
97 void SetI2(double i2);
98
99 private:
100 double m_snrValue; ///< SNR value
101 double m_bitErrorRate; ///< bit error rate
102 double m_blockErrorRate; ///< block error rate
103 double m_sigma2; ///< sigma2
104 double m_i1; ///< The lower boundary of the confidence interval
105 double m_i2; ///< The upper boundary of the confidence interval
106};
107
108} // namespace ns3
109
110#endif /* SNR_TO_BLOCK_ERROR_RATE_RECORD_H */
This class represents a record (handled by SnrToBlockErrorRate manager) that keeps a mapping between ...
double m_i1
The lower boundary of the confidence interval.
void SetSNRValue(double snrValue)
set the snr value
void SetBitErrorRate(double bitErrorRate)
set the BER value
void SetI2(double i2)
set the upper boundary of the confidence interval
double m_i2
The upper boundary of the confidence interval.
SNRToBlockErrorRateRecord * Copy() const
copy a record
void SetI1(double i1)
set the lower boundary of the confidence interval
SNRToBlockErrorRateRecord(double snrValue, double bitErrorRate, double BlockErrorRate, double sigma2, double I1, double I2)
creates a record and sets its values
void SetBlockErrorRate(double blockErrorRate)
set the BlcER value
Every class exported by the ns3 library is enclosed in the ns3 namespace.