A Discrete-Event Network Simulator
API
Loading...
Searching...
No Matches
extended-capabilities.h
Go to the documentation of this file.
1/*
2 * Copyright (c) 2017
3 *
4 * SPDX-License-Identifier: GPL-2.0-only
5 *
6 * Authors: Sébastien Deronne <sebastien.deronne@gmail.com>
7 */
8
9#ifndef EXTENDED_CAPABILITIES_H
10#define EXTENDED_CAPABILITIES_H
11
13
14namespace ns3
15{
16
17/**
18 * @brief The Extended Capabilities Information Element
19 * @ingroup wifi
20 *
21 * This class knows how to serialise and deserialise the Extended Capabilities Information Element
22 */
24{
25 public:
26 WifiInformationElementId ElementId() const override;
27 uint16_t GetInformationFieldSize() const override;
28 void SerializeInformationField(Buffer::Iterator start) const override;
29 uint16_t DeserializeInformationField(Buffer::Iterator start, uint16_t length) override;
30 void Print(std::ostream& os) const override;
31
33 0}; ///< 20/40 BSS Coexistence Management Support
34 uint8_t m_extendedChannelSwitching : 1 {0}; ///< Extended Channel Switching
35 uint8_t m_psmpCapability : 1 {0}; ///< PSMP Capability
36 uint8_t m_spsmpSupport : 1 {0}; ///< S-PSMP Support
37 uint8_t m_event : 1 {0}; ///< Event
38 uint8_t m_diagnostics : 1 {0}; ///< Diagnostics
39 uint8_t m_multicastDiagnostics : 1 {0}; ///< Multicast Diagnostics
40 uint8_t m_locationTracking : 1 {0}; ///< Location Tracking
41 uint8_t m_fms : 1 {0}; ///< FMS
42 uint8_t m_proxyArpService : 1 {0}; ///< Proxy ARP Service
43 uint8_t m_collocatedInterferenceReporting : 1 {0}; ///< Collocated Interference Reporting
44 uint8_t m_civicLocation : 1 {0}; ///< Civic Location
45 uint8_t m_geospatialLocation : 1 {0}; ///< Geospatial Location
46 uint8_t m_tfs : 1 {0}; ///< TFS
47 uint8_t m_wnmSleepMode : 1 {0}; ///< WNM Sleep Mode
48 uint8_t m_timBroadcast : 1 {0}; ///< TIM Broadcast
49 uint8_t m_bssTransition : 1 {0}; ///< BSS Transition
50 uint8_t m_qosTrafficCapability : 1 {0}; ///< QoS Traffic Capability
51 uint8_t m_acStationCount : 1 {0}; ///< AC Station Count
52 uint8_t m_multipleBssid : 1 {0}; ///< Multiple BSSID
53 uint8_t m_timingMeasurement : 1 {0}; ///< Timing Measurement
54 uint8_t m_channelUsage : 1 {0}; ///< Channel Usage
55 uint8_t m_ssidList : 1 {0}; ///< SSID List
56 uint8_t m_dms : 1 {0}; ///< DMS
57 uint8_t m_utcTsfOffset : 1 {0}; ///< UTC TSF Offset
58 uint8_t m_tpuBufferStaSupport : 1 {0}; ///< TPU Buffer STA Support
59 uint8_t m_tdlsPeerPsmSupport : 1 {0}; ///< TDLS Peer PSM Support
60 uint8_t m_tdlsChannelSwitching : 1 {0}; ///< TDLS Channel Switching
61 uint8_t m_interworking : 1 {0}; ///< Interworking
62 uint8_t m_qosMap : 1 {0}; ///< QoS Map
63 uint8_t m_ebr : 1 {0}; ///< EBR
64 uint8_t m_sspnInterface : 1 {0}; ///< SSPN Interface
65 uint8_t m_msgcfCapability : 1 {0}; ///< MSGCF Capability
66 uint8_t m_tdlsSupport : 1 {0}; ///< TDLS Support
67 uint8_t m_tdlsProhibited : 1 {0}; ///< TDLS Prohibited
68 uint8_t m_tdlsChannelSwitchingProhibited : 1 {0}; ///< TDLS Channel Switching Prohibited
69 uint8_t m_rejectUnadmittedFrame : 1 {0}; ///< Reject Unadmitted Frame
70 uint8_t m_serviceIntervalGranularity : 3 {0}; ///< Service Interval Granularity
71 uint8_t m_identifierLocation : 1 {0}; ///< Identifier Location
72 uint8_t m_uapsdCoexistence : 1 {0}; ///< U-APSD Coexistence
73 uint8_t m_wnmNotification : 1 {0}; ///< WNM Notification
74 uint8_t m_qabCapability : 1 {0}; ///< QAB Capability
75 uint8_t m_utf8Ssid : 1 {0}; ///< UTF-8 SSID
76 uint8_t m_qmfActivated : 1 {0}; ///< QMFActivated
77 uint8_t m_qmfReconfigurationActivated : 1 {0}; ///< QMFReconfigurationActivated
78 uint8_t m_robustAvStreaming : 1 {0}; ///< Robust AV Streaming
79 uint8_t m_advancedGcr : 1 {0}; ///< Advanced GCR
80 uint8_t m_meshGcr : 1 {0}; ///< Mesh GCR
81 uint8_t m_scs : 1 {0}; ///< SCS
82 uint8_t m_qloadReport : 1 {0}; ///< QLoad Report
83 uint8_t m_alternateEdca : 1 {0}; ///< Alternate EDCA
84 uint8_t m_unprotectedTxopNegotiation : 1 {0}; ///< Unprotected TXOP Negotiation
85 uint8_t m_protectedTxopNegotiation : 1 {0}; ///< Protected TXOP Negotiation
86 uint8_t m_protectedQloadReport : 1 {0}; ///< Protected QLoad Report
87 uint8_t m_tdlsWiderBandwidth : 1 {0}; ///< TDLS Wider Bandwidth
88 uint8_t m_operatingModeNotification : 1 {0}; ///< Operating Mode Notification
89 uint8_t m_maxNumberOfMsdusInAmsdu : 2 {0}; ///< Max Number Of MSDUs In A-MSDU
90};
91
92} // namespace ns3
93
94#endif /* EXTENDED_CAPABILITIES_H */
iterator in a Buffer instance
Definition buffer.h:89
The Extended Capabilities Information Element.
uint8_t m_tdlsWiderBandwidth
TDLS Wider Bandwidth.
void SerializeInformationField(Buffer::Iterator start) const override
Serialize information (i.e., the body of the IE, not including the Element ID and length octets)
uint16_t DeserializeInformationField(Buffer::Iterator start, uint16_t length) override
Deserialize information (i.e., the body of the IE, not including the Element ID and length octets)
uint8_t m_wnmNotification
WNM Notification.
uint8_t m_utcTsfOffset
UTC TSF Offset.
uint8_t m_unprotectedTxopNegotiation
Unprotected TXOP Negotiation.
uint8_t m_identifierLocation
Identifier Location.
uint8_t m_diagnostics
Diagnostics.
uint8_t m_multicastDiagnostics
Multicast Diagnostics.
uint8_t m_alternateEdca
Alternate EDCA.
uint8_t m_qmfActivated
QMFActivated.
uint8_t m_operatingModeNotification
Operating Mode Notification.
uint8_t m_extendedChannelSwitching
Extended Channel Switching.
uint8_t m_wnmSleepMode
WNM Sleep Mode.
uint16_t GetInformationFieldSize() const override
Length of serialized information (i.e., the length of the body of the IE, not including the Element I...
uint8_t m_proxyArpService
Proxy ARP Service.
uint8_t m_acStationCount
AC Station Count.
uint8_t m_msgcfCapability
MSGCF Capability.
uint8_t m_geospatialLocation
Geospatial Location.
uint8_t m_serviceIntervalGranularity
Service Interval Granularity.
uint8_t m_qosTrafficCapability
QoS Traffic Capability.
WifiInformationElementId ElementId() const override
Get the wifi information element ID.
uint8_t m_timingMeasurement
Timing Measurement.
uint8_t m_tdlsProhibited
TDLS Prohibited.
uint8_t m_channelUsage
Channel Usage.
uint8_t m_qloadReport
QLoad Report.
uint8_t m_bssTransition
BSS Transition.
uint8_t m_multipleBssid
Multiple BSSID.
uint8_t m_tdlsPeerPsmSupport
TDLS Peer PSM Support.
uint8_t m_interworking
Interworking.
uint8_t m_tdlsChannelSwitching
TDLS Channel Switching.
uint8_t m_timBroadcast
TIM Broadcast.
uint8_t m_protectedQloadReport
Protected QLoad Report.
uint8_t m_tdlsChannelSwitchingProhibited
TDLS Channel Switching Prohibited.
uint8_t m_advancedGcr
Advanced GCR.
uint8_t m_locationTracking
Location Tracking.
uint8_t m_tdlsSupport
TDLS Support.
uint8_t m_psmpCapability
PSMP Capability.
uint8_t m_tpuBufferStaSupport
TPU Buffer STA Support.
uint8_t m_qmfReconfigurationActivated
QMFReconfigurationActivated.
uint8_t m_qabCapability
QAB Capability.
void Print(std::ostream &os) const override
Generate human-readable form of IE.
uint8_t m_protectedTxopNegotiation
Protected TXOP Negotiation.
uint8_t m_rejectUnadmittedFrame
Reject Unadmitted Frame.
uint8_t m_sspnInterface
SSPN Interface.
uint8_t m_robustAvStreaming
Robust AV Streaming.
uint8_t m_spsmpSupport
S-PSMP Support.
uint8_t m_collocatedInterferenceReporting
Collocated Interference Reporting.
uint8_t m_maxNumberOfMsdusInAmsdu
Max Number Of MSDUs In A-MSDU.
uint8_t m_20_40_bssCoexistenceManagementSupport
20/40 BSS Coexistence Management Support
uint8_t m_civicLocation
Civic Location.
uint8_t m_uapsdCoexistence
U-APSD Coexistence.
Information element, as defined in 802.11-2007 standard.
Every class exported by the ns3 library is enclosed in the ns3 namespace.
uint8_t WifiInformationElementId
This type is used to represent an Information Element ID.