A Discrete-Event Network Simulator
API
Loading...
Searching...
No Matches
ht-configuration.h
Go to the documentation of this file.
1/*
2 * Copyright (c) 2018 Sébastien Deronne
3 *
4 * SPDX-License-Identifier: GPL-2.0-only
5 *
6 * Author: Sébastien Deronne <sebastien.deronne@gmail.com>
7 */
8
9#ifndef HT_CONFIGURATION_H
10#define HT_CONFIGURATION_H
11
12#include "ns3/deprecated.h"
13#include "ns3/object.h"
14
15namespace ns3
16{
17
18/**
19 * @brief HT configuration
20 * @ingroup wifi
21 *
22 * This object stores HT configuration information, for use in modifying
23 * AP or STA behavior and for constructing HT-related information elements.
24 *
25 */
26class HtConfiguration : public Object
27{
28 public:
30 ~HtConfiguration() override;
31
32 /**
33 * @brief Get the type ID.
34 * @return the object TypeId
35 */
36 static TypeId GetTypeId();
37
38 /**
39 * Enable or disable SGI support.
40 *
41 * @param enable true if SGI is to be supported,
42 * false otherwise
43 */
44 NS_DEPRECATED_3_44("Set the m_sgiSupported member variable instead")
45 void SetShortGuardIntervalSupported(bool enable);
46
47 /**
48 * @return whether the device supports SGI.
49 *
50 * @return true if SGI is supported,
51 * false otherwise.
52 */
53 NS_DEPRECATED_3_44("Get the m_sgiSupported member variable instead")
55
56 /**
57 * Enable or disable LDPC support.
58 *
59 * @param enable true if LDPC is to be supported,
60 * false otherwise
61 */
62 NS_DEPRECATED_3_44("Set the m_ldpcSupported member variable instead")
63 void SetLdpcSupported(bool enable);
64
65 /**
66 * @return whether the device supports LDPC.
67 *
68 * @return true if LDPC is supported,
69 * false otherwise.
70 */
71 NS_DEPRECATED_3_44("Get the m_ldpcSupported member variable instead")
72 bool GetLdpcSupported() const;
73
74 /**
75 * Enable or disable 40 MHz operation support.
76 *
77 * @param enable true if both 20 MHz and 40 MHz operation is to be supported,
78 * false if only 20 MHz operation is to be supported
79 */
80 NS_DEPRECATED_3_44("Set the m_40MHzSupported member variable instead")
81 void Set40MHzOperationSupported(bool enable);
82
83 /**
84 * @return true if both 20 MHz and 40 MHz operation is supported, false if
85 * only 20 MHz operation is supported
86 */
87 NS_DEPRECATED_3_44("Get the m_40MHzSupported member variable instead")
88 bool Get40MHzOperationSupported() const;
89
90 bool m_sgiSupported; ///< flag whether short guard interval is supported
91 bool m_ldpcSupported; ///< flag whether LDPC coding is supported
92 bool m_40MHzSupported; ///< whether 40 MHz operation is supported
93};
94
95} // namespace ns3
96
97#endif /* HT_CONFIGURATION_H */
HT configuration.
bool m_40MHzSupported
whether 40 MHz operation is supported
bool Get40MHzOperationSupported() const
bool GetShortGuardIntervalSupported() const
bool m_ldpcSupported
flag whether LDPC coding is supported
void Set40MHzOperationSupported(bool enable)
Enable or disable 40 MHz operation support.
void SetShortGuardIntervalSupported(bool enable)
Enable or disable SGI support.
static TypeId GetTypeId()
Get the type ID.
bool m_sgiSupported
flag whether short guard interval is supported
void SetLdpcSupported(bool enable)
Enable or disable LDPC support.
bool GetLdpcSupported() const
A base class which provides memory management and object aggregation.
Definition object.h:78
a unique identifier for an interface.
Definition type-id.h:49
#define NS_DEPRECATED_3_44(msg)
Tag for things deprecated in version ns-3.44.
Definition deprecated.h:91
Every class exported by the ns3 library is enclosed in the ns3 namespace.