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 * 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: Mohamed Amine Ismail <amine.ismail@sophia.inria.fr>
18 * <amine.ismail@udcast.com>
19 */
20
21#ifndef SNR_TO_BLOCK_ERROR_RATE_RECORD_H
22#define SNR_TO_BLOCK_ERROR_RATE_RECORD_H
23
24namespace ns3
25{
26
27/**
28 * \ingroup wimax
29 * \brief This class represents a record (handled by SnrToBlockErrorRate manager) that keeps a
30 * mapping between an SNR value and its corresponding (1) Bit Error Rate, (2) Block Error Rate, (3)
31 * Standard deviation, (4 and 5) confidence interval.
32 *
33 */
35{
36 public:
37 /**
38 * \brief creates a record and sets its values
39 * \param snrValue The SNR value
40 * \param bitErrorRate the BER
41 * \param BlockErrorRate the BlcER
42 * \param sigma2 the standard deviation
43 * \param I1 the lower boundary of the confidence interval
44 * \param I2 the upper boundary of the confidence interval
45 */
46 SNRToBlockErrorRateRecord(double snrValue,
47 double bitErrorRate,
48 double BlockErrorRate,
49 double sigma2,
50 double I1,
51 double I2);
53
54 /**
55 * \return the SNR value
56 */
57 double GetSNRValue() const;
58 /**
59 * \return the BER value
60 */
61 double GetBitErrorRate() const;
62 /**
63 * \return the BlcER value
64 */
65 double GetBlockErrorRate() const;
66 /**
67 * \return the standard deviation
68 */
69 double GetSigma2() const;
70 /**
71 * \return the lower boundary of the confidence interval
72 */
73 double GetI1() const;
74 /**
75 * \return the upper boundary of the confidence interval
76 */
77 double GetI2() const;
78 /**
79 * \brief copy a record
80 * \return a copy of this record
81 */
83
84 /**
85 * \brief set the snr value
86 * \param snrValue the SNR value
87 */
88 void SetSNRValue(double snrValue);
89 /**
90 * \brief set the BER value
91 * \param bitErrorRate the bit error rate value
92 */
93 void SetBitErrorRate(double bitErrorRate);
94 /**
95 * \brief set the BlcER value
96 * \param blockErrorRate the block error rate value
97 */
98 void SetBlockErrorRate(double blockErrorRate);
99 /**
100 * \brief set the lower boundary of the confidence interval
101 * \param i1 the lower boundary of the confidence interval
102 */
103 void SetI1(double i1);
104 /**
105 * \brief set the upper boundary of the confidence interval
106 * \param i2 the upper boundary of the confidence interval
107 */
108 void SetI2(double i2);
109
110 private:
111 double m_snrValue; ///< SNR value
112 double m_bitErrorRate; ///< bit error rate
113 double m_blockErrorRate; ///< block error rate
114 double m_sigma2; ///< sigma2
115 double m_i1; ///< The lower boundary of the confidence interval
116 double m_i2; ///< The upper boundary of the confidence interval
117};
118
119} // namespace ns3
120
121#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
void SetBlockErrorRate(double blockErrorRate)
set the BlcER value
Every class exported by the ns3 library is enclosed in the ns3 namespace.