Radiotap header implementation. More...
#include "radiotap-header.h"
Inheritance diagram for ns3::RadiotapHeader:
Collaboration diagram for ns3::RadiotapHeader:Public Member Functions | |
| RadiotapHeader () | |
| uint32_t | Deserialize (Buffer::Iterator start) override |
| This method is used by Packet::RemoveHeader to re-create a header from the byte buffer of a packet. | |
| TypeId | GetInstanceTypeId () const override |
| Get the most derived TypeId for this Object. | |
| uint32_t | GetSerializedSize () const override |
| This method is used by Packet::AddHeader to store the header into the byte buffer of a packet. | |
| void | Print (std::ostream &os) const override |
| This method is used by Packet::Print to print the content of the header as ascii data to a C++ output stream. | |
| void | Serialize (Buffer::Iterator start) const override |
| This method is used by Packet::AddHeader to store the header into the byte buffer of a packet. | |
| void | SetAmpduStatus (uint32_t referenceNumber, uint16_t flags, uint8_t crc) |
| Set the A-MPDU status fields. | |
| void | SetAntennaNoisePower (double noise) |
| Set the RF noise power at the antenna as a decibel difference from an arbitrary, fixed reference. | |
| void | SetAntennaSignalPower (double signal) |
| Set the RF signal power at the antenna as a decibel difference from an arbitrary, fixed reference. | |
| void | SetChannelFrequencyAndFlags (uint16_t frequency, uint16_t flags) |
| Set the transmit/receive channel frequency and flags. | |
| void | SetFrameFlags (uint8_t flags) |
| Set the frame flags of the transmitted or received frame. | |
| void | SetHeFields (uint16_t data1, uint16_t data2, uint16_t data3, uint16_t data4, uint16_t data5, uint16_t data6) |
| Set the HE fields. | |
| void | SetHeMuFields (uint16_t flags1, uint16_t flags2, const std::array< uint8_t, 4 > &ruChannel1, const std::array< uint8_t, 4 > &ruChannel2) |
| Set the HE MU fields. | |
| void | SetHeMuPerUserFields (uint16_t perUser1, uint16_t perUser2, uint8_t perUserPosition, uint8_t perUserKnown) |
| Set the HE MU per user fields. | |
| void | SetMcsFields (uint8_t known, uint8_t flags, uint8_t mcs) |
| Set the MCS fields. | |
| void | SetRate (uint8_t rate) |
| Set the transmit/receive channel frequency in units of megahertz. | |
| void | SetTsft (uint64_t tsft) |
| Set the Time Synchronization Function Timer (TSFT) value. | |
| void | SetVhtFields (uint16_t known, uint8_t flags, uint8_t bandwidth, uint8_t mcs_nss[4], uint8_t coding, uint8_t group_id, uint16_t partial_aid) |
| Set the VHT fields. | |
Public Member Functions inherited from ns3::Header | |
| ~Header () override | |
| uint32_t | Deserialize (Buffer::Iterator start) override=0 |
| virtual uint32_t | Deserialize (Buffer::Iterator start)=0 |
| Deserialize the object from a buffer iterator. | |
| virtual uint32_t | Deserialize (Buffer::Iterator start, Buffer::Iterator end) |
| Deserialize the object from a buffer iterator. | |
| virtual uint32_t | GetSerializedSize () const =0 |
| void | Print (std::ostream &os) const override=0 |
| virtual void | Serialize (Buffer::Iterator start) const =0 |
| virtual uint32_t | Deserialize (Buffer::Iterator start)=0 |
| Deserialize the object from a buffer iterator. | |
| virtual uint32_t | Deserialize (Buffer::Iterator start, Buffer::Iterator end) |
| Deserialize the object from a buffer iterator. | |
| virtual void | Print (std::ostream &os) const =0 |
| Print the object contents. | |
Public Member Functions inherited from ns3::ObjectBase | |
| virtual | ~ObjectBase () |
| Virtual destructor. | |
| void | GetAttribute (std::string name, AttributeValue &value) const |
| Get the value of an attribute, raising fatal errors if unsuccessful. | |
| bool | GetAttributeFailSafe (std::string name, AttributeValue &value) const |
| Get the value of an attribute without raising errors. | |
| virtual TypeId | GetInstanceTypeId () const =0 |
| Get the most derived TypeId for this Object. | |
| void | SetAttribute (std::string name, const AttributeValue &value) |
| Set a single attribute, raising fatal errors if unsuccessful. | |
| bool | SetAttributeFailSafe (std::string name, const AttributeValue &value) |
| Set a single attribute without raising errors. | |
| bool | TraceConnect (std::string name, std::string context, const CallbackBase &cb) |
| Connect a TraceSource to a Callback with a context. | |
| bool | TraceConnectWithoutContext (std::string name, const CallbackBase &cb) |
| Connect a TraceSource to a Callback without a context. | |
| bool | TraceDisconnect (std::string name, std::string context, const CallbackBase &cb) |
| Disconnect from a TraceSource a Callback previously connected with a context. | |
| bool | TraceDisconnectWithoutContext (std::string name, const CallbackBase &cb) |
| Disconnect from a TraceSource a Callback previously connected without a context. | |
Static Public Member Functions | |
| static TypeId | GetTypeId () |
| Get the type ID. | |
Static Public Member Functions inherited from ns3::Header | |
| static TypeId | GetTypeId () |
| Get the type ID. | |
Static Public Member Functions inherited from ns3::Chunk | |
| static TypeId | GetTypeId () |
| Get the type ID. | |
Static Public Member Functions inherited from ns3::ObjectBase | |
| static TypeId | GetTypeId () |
| Get the type ID. | |
Private Types | |
| enum | RadiotapFlags { RADIOTAP_TSFT = 0x00000001 , RADIOTAP_FLAGS = 0x00000002 , RADIOTAP_RATE = 0x00000004 , RADIOTAP_CHANNEL = 0x00000008 , RADIOTAP_FHSS = 0x00000010 , RADIOTAP_DBM_ANTSIGNAL = 0x00000020 , RADIOTAP_DBM_ANTNOISE = 0x00000040 , RADIOTAP_LOCK_QUALITY = 0x00000080 , RADIOTAP_TX_ATTENUATION = 0x00000100 , RADIOTAP_DB_TX_ATTENUATION = 0x00000200 , RADIOTAP_DBM_TX_POWER = 0x00000400 , RADIOTAP_ANTENNA = 0x00000800 , RADIOTAP_DB_ANTSIGNAL = 0x00001000 , RADIOTAP_DB_ANTNOISE = 0x00002000 , RADIOTAP_RX_FLAGS = 0x00004000 , RADIOTAP_MCS = 0x00080000 , RADIOTAP_AMPDU_STATUS = 0x00100000 , RADIOTAP_VHT = 0x00200000 , RADIOTAP_HE = 0x00800000 , RADIOTAP_HE_MU = 0x01000000 , RADIOTAP_HE_MU_OTHER_USER = 0x02000000 , RADIOTAP_ZERO_LEN_PSDU = 0x04000000 , RADIOTAP_LSIG = 0x08000000 , RADIOTAP_EXT = 0x80000000 } |
| Radiotap flags. More... | |
Private Attributes | |
| uint8_t | m_ampduStatusCRC |
| A-MPDU Status Flags, delimiter CRC value. | |
| uint16_t | m_ampduStatusFlags |
| A-MPDU Status Flags, information about the received A-MPDU. | |
| uint8_t | m_ampduStatusPad |
| A-MPDU Status Flags, padding before A-MPDU Status Field. | |
| uint32_t | m_ampduStatusRef |
| A-MPDU Status Flags, reference number. | |
| int8_t | m_antennaNoise |
| RF noise power at the antenna, dB difference from an arbitrary, fixed reference. | |
| int8_t | m_antennaSignal |
| RF signal power at the antenna, dB difference from an arbitrary, fixed reference. | |
| uint16_t | m_channelFlags |
| Tx/Rx channel flags. | |
| uint16_t | m_channelFreq |
| Tx/Rx frequency in MHz. | |
| uint8_t | m_channelPad |
| Tx/Rx channel padding. | |
| uint8_t | m_flags |
| Properties of transmitted and received frames. | |
| uint16_t | m_heData1 |
| HE data1 field. | |
| uint16_t | m_heData2 |
| HE data2 field. | |
| uint16_t | m_heData3 |
| HE data3 field. | |
| uint16_t | m_heData4 |
| HE data4 field. | |
| uint16_t | m_heData5 |
| HE data5 field. | |
| uint16_t | m_heData6 |
| HE data6 field. | |
| uint16_t | m_heMuFlags1 |
| HE MU flags1 field. | |
| uint16_t | m_heMuFlags2 |
| HE MU flags2 field. | |
| uint8_t | m_heMuOtherUserPad |
| HE MU other user padding. | |
| uint8_t | m_heMuPad |
| HE MU padding. | |
| uint16_t | m_heMuPerUser1 |
| HE MU per_user_1 field. | |
| uint16_t | m_heMuPerUser2 |
| HE MU per_user_2 field. | |
| uint8_t | m_heMuPerUserKnown |
| HE MU per_user_known field. | |
| uint8_t | m_heMuPerUserPosition |
| HE MU per_user_position field. | |
| uint8_t | m_hePad |
| HE padding. | |
| uint16_t | m_length |
| entire length of radiotap data + header | |
| uint8_t | m_mcsFlags |
| MCS Flags, flags field. | |
| uint8_t | m_mcsKnown |
| MCS Flags, known information field. | |
| uint8_t | m_mcsRate |
| MCS Flags, mcs rate index. | |
| uint32_t | m_present |
| bits describing which fields follow header | |
| uint8_t | m_rate |
| TX/RX data rate in units of 500 kbps. | |
| uint64_t | m_tsft |
| Time Synchronization Function Timer (when the first bit of the MPDU arrived at the MAC) | |
| uint8_t | m_vhtBandwidth |
| VHT bandwidth field. | |
| uint8_t | m_vhtCoding |
| VHT coding field. | |
| uint8_t | m_vhtFlags |
| VHT flags field. | |
| uint8_t | m_vhtGroupId |
| VHT group_id field. | |
| uint16_t | m_vhtKnown |
| VHT known field. | |
| uint8_t | m_vhtMcsNss [4] |
| VHT mcs_nss field. | |
| uint8_t | m_vhtPad |
| VHT padding. | |
| uint16_t | m_vhtPartialAid |
| VHT partial_aid field. | |
Additional Inherited Members | |
Protected Member Functions inherited from ns3::ObjectBase | |
| void | ConstructSelf (const AttributeConstructionList &attributes) |
| Complete construction of ObjectBase; invoked by derived classes. | |
| virtual void | NotifyConstructionCompleted () |
| Notifier called once the ObjectBase is fully constructed. | |
Related Functions inherited from ns3::ObjectBase | |
| static TypeId | GetObjectIid () |
| Ensure the TypeId for ObjectBase gets fully configured to anchor the inheritance tree properly. | |
Radiotap header implementation.
Introspection did not find any typical Config paths.
Radiotap is a de facto standard for 802.11 frame injection and reception. The radiotap header format is a mechanism to supply additional information about frames, from the driver to userspace applications such as libpcap, and from a userspace application to the driver for transmission.
No Attributes are defined for this type.
No TraceSources are defined for this type.
Size of this type is 88 bytes (on a 64-bit architecture).
Definition at line 37 of file radiotap-header.h.
A-MPDU status flags.
Definition at line 221 of file radiotap-header.h.
Channel flags.
| Enumerator | |
|---|---|
| CHANNEL_FLAG_NONE | No flags set. |
| CHANNEL_FLAG_TURBO | Turbo Channel. |
| CHANNEL_FLAG_CCK | CCK channel. |
| CHANNEL_FLAG_OFDM | OFDM channel. |
| CHANNEL_FLAG_SPECTRUM_2GHZ | 2 GHz spectrum channel |
| CHANNEL_FLAG_SPECTRUM_5GHZ | 5 GHz spectrum channel |
| CHANNEL_FLAG_PASSIVE | Only passive scan allowed. |
| CHANNEL_FLAG_DYNAMIC | Dynamic CCK-OFDM channel. |
| CHANNEL_FLAG_GFSK | GFSK channel (FHSS PHY) |
Definition at line 135 of file radiotap-header.h.
Frame flags.
Definition at line 106 of file radiotap-header.h.
HE data1.
Definition at line 305 of file radiotap-header.h.
HE data2.
Definition at line 331 of file radiotap-header.h.
HE data5.
Definition at line 349 of file radiotap-header.h.
HE MU flags1.
| Enumerator | |
|---|---|
| HE_MU_FLAGS1_SIGB_MCS | SIG-B MCS (from SIG-A) |
| HE_MU_FLAGS1_SIGB_MCS_KNOWN | SIG-B MCS known. |
| HE_MU_FLAGS1_SIGB_DCM | SIG-B DCM (from SIG-A) |
| HE_MU_FLAGS1_SIGB_DCM_KNOWN | SIG-B DCM known. |
| HE_MU_FLAGS1_CH2_CENTER_26T_RU_KNOWN | (Channel 2) Center 26-tone RU bit known |
| HE_MU_FLAGS1_CH1_RUS_KNOWN | Channel 1 RUs known (which depends on BW) |
| HE_MU_FLAGS1_CH2_RUS_KNOWN | Channel 2 RUs known (which depends on BW) |
| HE_MU_FLAGS1_CH1_CENTER_26T_RU_KNOWN | (Channel 1) Center 26-tone RU bit known |
| HE_MU_FLAGS1_CH1_CENTER_26T_RU | (Channel 1) Center 26-tone RU value |
| HE_MU_FLAGS1_SIGB_COMPRESSION_KNOWN | SIG-B Compression known. |
| HE_MU_FLAGS1_NUM_SIGB_SYMBOLS_KNOWN | of HE-SIG-B Symbols/MU-MIMO Users known |
Definition at line 390 of file radiotap-header.h.
HE MU flags2.
| Enumerator | |
|---|---|
| HE_MU_FLAGS2_BW_FROM_SIGA | Bandwidth from Bandwidth field in HE-SIG-A. |
| HE_MU_FLAGS2_BW_FROM_SIGA_KNOWN | Bandwidth from Bandwidth field in HE-SIG-A known. |
| HE_MU_FLAGS2_SIGB_COMPRESSION_FROM_SIGA | SIG-B compression from SIG-A. |
| HE_MU_FLAGS2_NUM_SIGB_SYMBOLS_FROM_SIGA | of HE-SIG-B Symbols - 1 or # of MU-MIMO Users - 1 from SIG-A |
| HE_MU_FLAGS2_PREAMBLE_PUNCTURING_FROM_SIGA_BW_FIELD | Preamble puncturing from Bandwidth field in HE-SIG-A. |
| HE_MU_FLAGS2_PREAMBLE_PUNCTURING_FROM_SIGA_BW_FIELD_KNOWN | Preamble puncturing from Bandwidth field in HE-SIG-A known. |
| HE_MU_FLAGS2_CH2_CENTER_26T_RU | (Channel 2) Center 26-tone RU value |
Definition at line 408 of file radiotap-header.h.
HE MU per_user_known.
Definition at line 439 of file radiotap-header.h.
MCS flags.
Definition at line 194 of file radiotap-header.h.
MCS known bits.
Definition at line 177 of file radiotap-header.h.
|
private |
Radiotap flags.
Definition at line 468 of file radiotap-header.h.
VHT flags.
Definition at line 267 of file radiotap-header.h.
VHT known bits.
Definition at line 248 of file radiotap-header.h.
| ns3::RadiotapHeader::RadiotapHeader | ( | ) |
Definition at line 35 of file radiotap-header.cc.
References NS_LOG_FUNCTION.
|
overridevirtual |
This method is used by Packet::RemoveHeader to re-create a header from the byte buffer of a packet.
The data read is expected to match bit-for-bit the representation of this header in real networks.
| start | An iterator which points to where the header should written. |
Implements ns3::Header.
Definition at line 345 of file radiotap-header.cc.
References m_ampduStatusCRC, m_ampduStatusFlags, m_ampduStatusPad, m_ampduStatusRef, m_antennaNoise, m_antennaSignal, m_channelFlags, m_channelFreq, m_channelPad, m_flags, m_heData1, m_heData2, m_heData3, m_heData4, m_heData5, m_heData6, m_heMuFlags1, m_heMuFlags2, m_heMuOtherUserPad, m_heMuPad, m_heMuPerUser1, m_heMuPerUser2, m_heMuPerUserKnown, m_heMuPerUserPosition, m_hePad, m_length, m_mcsFlags, m_mcsKnown, m_mcsRate, m_present, m_rate, m_tsft, m_vhtBandwidth, m_vhtCoding, m_vhtFlags, m_vhtGroupId, m_vhtKnown, m_vhtMcsNss, m_vhtPad, m_vhtPartialAid, NS_ASSERT_MSG, NS_LOG_FUNCTION, RADIOTAP_AMPDU_STATUS, RADIOTAP_ANTENNA, RADIOTAP_CHANNEL, RADIOTAP_DB_ANTNOISE, RADIOTAP_DB_ANTSIGNAL, RADIOTAP_DB_TX_ATTENUATION, RADIOTAP_DBM_ANTNOISE, RADIOTAP_DBM_ANTSIGNAL, RADIOTAP_DBM_TX_POWER, RADIOTAP_FHSS, RADIOTAP_FLAGS, RADIOTAP_HE, RADIOTAP_HE_MU, RADIOTAP_HE_MU_OTHER_USER, RADIOTAP_LOCK_QUALITY, RADIOTAP_MCS, RADIOTAP_RATE, RADIOTAP_RX_FLAGS, RADIOTAP_TSFT, RADIOTAP_TX_ATTENUATION, and RADIOTAP_VHT.
|
overridevirtual |
Get the most derived TypeId for this Object.
This method is typically implemented by ns3::Object::GetInstanceTypeId but some classes which derive from ns3::ObjectBase directly have to implement it themselves.
Implements ns3::ObjectBase.
Definition at line 86 of file radiotap-header.cc.
References GetTypeId().
Here is the call graph for this function:
|
overridevirtual |
This method is used by Packet::AddHeader to store the header into the byte buffer of a packet.
This method returns the number of bytes which are needed to store the header data during a Serialize.
Implements ns3::Header.
Definition at line 92 of file radiotap-header.cc.
References m_length, and NS_LOG_FUNCTION.
|
static |
Get the type ID.
Definition at line 75 of file radiotap-header.cc.
References ns3::TypeId::SetParent().
Referenced by GetInstanceTypeId().
Here is the call graph for this function:
Here is the caller graph for this function:
|
overridevirtual |
This method is used by Packet::Print to print the content of the header as ascii data to a C++ output stream.
Although the header is free to format its output as it wishes, it is recommended to follow a few rules to integrate with the packet pretty printer: start with flags, small field values located between a pair of parens. Values should be separated by whitespace. Follow the parens with the important fields, separated by whitespace.
eg: (field1 val1 field2 val2 field3 val3) field4 val4 field5 val5
| os | The output stream |
Implements ns3::Header.
Definition at line 632 of file radiotap-header.cc.
References m_ampduStatusFlags, m_antennaNoise, m_antennaSignal, m_channelFlags, m_channelFreq, m_flags, m_heData1, m_heData2, m_heData3, m_heData4, m_heData5, m_heData6, m_heMuFlags1, m_heMuFlags2, m_heMuPerUser1, m_heMuPerUser2, m_heMuPerUserKnown, m_heMuPerUserPosition, m_mcsFlags, m_mcsKnown, m_mcsRate, m_rate, m_tsft, m_vhtBandwidth, m_vhtCoding, m_vhtFlags, m_vhtGroupId, m_vhtKnown, m_vhtMcsNss, m_vhtPartialAid, and NS_LOG_FUNCTION.
|
overridevirtual |
This method is used by Packet::AddHeader to store the header into the byte buffer of a packet.
The data written is expected to match bit-for-bit the representation of this header in a real network.
| start | An iterator which points to where the header should be written. |
Implements ns3::Header.
Definition at line 99 of file radiotap-header.cc.
References m_ampduStatusCRC, m_ampduStatusFlags, m_ampduStatusPad, m_ampduStatusRef, m_antennaNoise, m_antennaSignal, m_channelFlags, m_channelFreq, m_channelPad, m_flags, m_heData1, m_heData2, m_heData3, m_heData4, m_heData5, m_heData6, m_heMuFlags1, m_heMuFlags2, m_heMuOtherUserPad, m_heMuPad, m_heMuPerUser1, m_heMuPerUser2, m_heMuPerUserKnown, m_heMuPerUserPosition, m_hePad, m_length, m_mcsFlags, m_mcsKnown, m_mcsRate, m_present, m_rate, m_tsft, m_vhtBandwidth, m_vhtCoding, m_vhtFlags, m_vhtGroupId, m_vhtKnown, m_vhtMcsNss, m_vhtPad, m_vhtPartialAid, NS_LOG_FUNCTION, RADIOTAP_AMPDU_STATUS, RADIOTAP_ANTENNA, RADIOTAP_CHANNEL, RADIOTAP_DB_ANTNOISE, RADIOTAP_DB_ANTSIGNAL, RADIOTAP_DB_TX_ATTENUATION, RADIOTAP_DBM_ANTNOISE, RADIOTAP_DBM_ANTSIGNAL, RADIOTAP_DBM_TX_POWER, RADIOTAP_FHSS, RADIOTAP_FLAGS, RADIOTAP_HE, RADIOTAP_HE_MU, RADIOTAP_HE_MU_OTHER_USER, RADIOTAP_LOCK_QUALITY, RADIOTAP_MCS, RADIOTAP_RATE, RADIOTAP_RX_FLAGS, RADIOTAP_TSFT, RADIOTAP_TX_ATTENUATION, and RADIOTAP_VHT.
| void ns3::RadiotapHeader::SetAmpduStatus | ( | uint32_t | referenceNumber, |
| uint16_t | flags, | ||
| uint8_t | crc | ||
| ) |
Set the A-MPDU status fields.
| referenceNumber | The A-MPDU reference number to identify all subframes belonging to the same A-MPDU. |
| flags | The flags to set. |
| crc | The CRC value value. |
Definition at line 790 of file radiotap-header.cc.
References m_ampduStatusCRC, m_ampduStatusFlags, m_ampduStatusPad, m_ampduStatusRef, m_length, m_present, NS_LOG_FUNCTION, NS_LOG_LOGIC, and RADIOTAP_AMPDU_STATUS.
Referenced by ns3::WifiPhyHelper::GetRadiotapHeader().
Here is the caller graph for this function:| void ns3::RadiotapHeader::SetAntennaNoisePower | ( | double | noise | ) |
Set the RF noise power at the antenna as a decibel difference from an arbitrary, fixed reference.
| noise | The RF noise power at the antenna as a decibel difference from an arbitrary, fixed reference. |
Definition at line 746 of file radiotap-header.cc.
References m_antennaNoise, m_length, m_present, NS_LOG_FUNCTION, NS_LOG_LOGIC, and RADIOTAP_DBM_ANTNOISE.
Referenced by ns3::WifiPhyHelper::GetRadiotapHeader().
Here is the caller graph for this function:| void ns3::RadiotapHeader::SetAntennaSignalPower | ( | double | signal | ) |
Set the RF signal power at the antenna as a decibel difference from an arbitrary, fixed reference.
| signal | The RF signal power at the antenna as a decibel difference from an arbitrary, fixed reference; |
Definition at line 719 of file radiotap-header.cc.
References m_antennaSignal, m_length, m_present, NS_LOG_FUNCTION, NS_LOG_LOGIC, and RADIOTAP_DBM_ANTSIGNAL.
Referenced by ns3::WifiPhyHelper::GetRadiotapHeader().
Here is the caller graph for this function:| void ns3::RadiotapHeader::SetChannelFrequencyAndFlags | ( | uint16_t | frequency, |
| uint16_t | flags | ||
| ) |
Set the transmit/receive channel frequency and flags.
| frequency | The transmit/receive data rate in units of 500 kbps. |
| flags | The flags to set. |
Definition at line 701 of file radiotap-header.cc.
References m_channelFlags, m_channelFreq, m_channelPad, m_length, m_present, NS_LOG_FUNCTION, NS_LOG_LOGIC, and RADIOTAP_CHANNEL.
Referenced by ns3::WifiPhyHelper::GetRadiotapHeader().
Here is the caller graph for this function:| void ns3::RadiotapHeader::SetFrameFlags | ( | uint8_t | flags | ) |
Set the frame flags of the transmitted or received frame.
| flags | flags to set. |
Definition at line 669 of file radiotap-header.cc.
References m_flags, m_length, m_present, NS_LOG_FUNCTION, NS_LOG_LOGIC, and RADIOTAP_FLAGS.
Referenced by ns3::WifiPhyHelper::GetRadiotapHeader().
Here is the caller graph for this function:| void ns3::RadiotapHeader::SetHeFields | ( | uint16_t | data1, |
| uint16_t | data2, | ||
| uint16_t | data3, | ||
| uint16_t | data4, | ||
| uint16_t | data5, | ||
| uint16_t | data6 | ||
| ) |
Set the HE fields.
| data1 | The data1 field. |
| data2 | The data2 field. |
| data3 | The data3 field. |
| data4 | The data4 field. |
| data5 | The data5 field. |
| data6 | The data6 field. |
Definition at line 840 of file radiotap-header.cc.
References m_heData1, m_heData2, m_heData3, m_heData4, m_heData5, m_heData6, m_hePad, m_length, m_present, NS_LOG_FUNCTION, NS_LOG_LOGIC, and RADIOTAP_HE.
Referenced by ns3::WifiPhyHelper::GetRadiotapHeader().
Here is the caller graph for this function:| void ns3::RadiotapHeader::SetHeMuFields | ( | uint16_t | flags1, |
| uint16_t | flags2, | ||
| const std::array< uint8_t, 4 > & | ruChannel1, | ||
| const std::array< uint8_t, 4 > & | ruChannel2 | ||
| ) |
Set the HE MU fields.
| flags1 | The flags1 field. |
| flags2 | The flags2 field. |
| ruChannel1 | The RU_channel1 field. |
| ruChannel2 | The RU_channel2 field. |
Definition at line 866 of file radiotap-header.cc.
References m_heMuFlags1, m_heMuFlags2, m_heMuPad, m_length, m_present, NS_LOG_FUNCTION, NS_LOG_LOGIC, and RADIOTAP_HE_MU.
Referenced by ns3::WifiPhyHelper::GetRadiotapHeader().
Here is the caller graph for this function:| void ns3::RadiotapHeader::SetHeMuPerUserFields | ( | uint16_t | perUser1, |
| uint16_t | perUser2, | ||
| uint8_t | perUserPosition, | ||
| uint8_t | perUserKnown | ||
| ) |
Set the HE MU per user fields.
| perUser1 | The per_user_1 field. |
| perUser2 | The per_user_2 field. |
| perUserPosition | The per_user_position field. |
| perUserKnown | The per_user_known field. |
Definition at line 886 of file radiotap-header.cc.
References m_heMuOtherUserPad, m_heMuPerUser1, m_heMuPerUser2, m_heMuPerUserKnown, m_heMuPerUserPosition, m_length, m_present, NS_LOG_FUNCTION, NS_LOG_LOGIC, and RADIOTAP_HE_MU_OTHER_USER.
Referenced by ns3::WifiPhyHelper::GetRadiotapHeader().
Here is the caller graph for this function:| void ns3::RadiotapHeader::SetMcsFields | ( | uint8_t | known, |
| uint8_t | flags, | ||
| uint8_t | mcs | ||
| ) |
Set the MCS fields.
| known | The kwown flags. |
| flags | The flags to set. |
| mcs | The MCS index value. |
Definition at line 773 of file radiotap-header.cc.
References m_length, m_mcsFlags, m_mcsKnown, m_mcsRate, m_present, NS_LOG_FUNCTION, NS_LOG_LOGIC, and RADIOTAP_MCS.
Referenced by ns3::WifiPhyHelper::GetRadiotapHeader().
Here is the caller graph for this function:| void ns3::RadiotapHeader::SetRate | ( | uint8_t | rate | ) |
Set the transmit/receive channel frequency in units of megahertz.
| rate | the transmit/receive channel frequency in units of megahertz. |
Definition at line 685 of file radiotap-header.cc.
References m_length, m_present, m_rate, NS_LOG_FUNCTION, NS_LOG_LOGIC, and RADIOTAP_RATE.
Referenced by ns3::WifiPhyHelper::GetRadiotapHeader().
Here is the caller graph for this function:| void ns3::RadiotapHeader::SetTsft | ( | uint64_t | tsft | ) |
Set the Time Synchronization Function Timer (TSFT) value.
Valid for received frames only.
| tsft | Value in microseconds of the MAC's 64-bit 802.11 Time Synchronization Function timer when the first bit of the MPDU arrived at the MAC. |
Definition at line 653 of file radiotap-header.cc.
References m_length, m_present, m_tsft, NS_LOG_FUNCTION, NS_LOG_LOGIC, and RADIOTAP_TSFT.
Referenced by ns3::WifiPhyHelper::GetRadiotapHeader().
Here is the caller graph for this function:| void ns3::RadiotapHeader::SetVhtFields | ( | uint16_t | known, |
| uint8_t | flags, | ||
| uint8_t | bandwidth, | ||
| uint8_t | mcs_nss[4], | ||
| uint8_t | coding, | ||
| uint8_t | group_id, | ||
| uint16_t | partial_aid | ||
| ) |
Set the VHT fields.
| known | The kwown flags. |
| flags | The flags to set. |
| bandwidth | The bandwidth value. |
| mcs_nss | The mcs_nss value. |
| coding | The coding value. |
| group_id | The group_id value. |
| partial_aid | The partial_aid value. |
Definition at line 808 of file radiotap-header.cc.
References m_length, m_present, m_vhtBandwidth, m_vhtCoding, m_vhtFlags, m_vhtGroupId, m_vhtKnown, m_vhtMcsNss, m_vhtPad, m_vhtPartialAid, NS_LOG_FUNCTION, NS_LOG_LOGIC, and RADIOTAP_VHT.
Referenced by ns3::WifiPhyHelper::GetRadiotapHeader().
Here is the caller graph for this function:
|
private |
A-MPDU Status Flags, delimiter CRC value.
Definition at line 518 of file radiotap-header.h.
Referenced by Deserialize(), Serialize(), and SetAmpduStatus().
|
private |
A-MPDU Status Flags, information about the received A-MPDU.
Definition at line 517 of file radiotap-header.h.
Referenced by Deserialize(), Print(), Serialize(), and SetAmpduStatus().
|
private |
A-MPDU Status Flags, padding before A-MPDU Status Field.
Definition at line 515 of file radiotap-header.h.
Referenced by Deserialize(), Serialize(), and SetAmpduStatus().
|
private |
A-MPDU Status Flags, reference number.
Definition at line 516 of file radiotap-header.h.
Referenced by Deserialize(), Serialize(), and SetAmpduStatus().
|
private |
RF noise power at the antenna, dB difference from an arbitrary, fixed reference.
Definition at line 508 of file radiotap-header.h.
Referenced by Deserialize(), Print(), Serialize(), and SetAntennaNoisePower().
|
private |
RF signal power at the antenna, dB difference from an arbitrary, fixed reference.
Definition at line 506 of file radiotap-header.h.
Referenced by Deserialize(), Print(), Serialize(), and SetAntennaSignalPower().
|
private |
Tx/Rx channel flags.
Definition at line 505 of file radiotap-header.h.
Referenced by Deserialize(), Print(), Serialize(), and SetChannelFrequencyAndFlags().
|
private |
Tx/Rx frequency in MHz.
Definition at line 504 of file radiotap-header.h.
Referenced by Deserialize(), Print(), Serialize(), and SetChannelFrequencyAndFlags().
|
private |
Tx/Rx channel padding.
Definition at line 503 of file radiotap-header.h.
Referenced by Deserialize(), Serialize(), and SetChannelFrequencyAndFlags().
|
private |
Properties of transmitted and received frames.
Definition at line 501 of file radiotap-header.h.
Referenced by Deserialize(), Print(), Serialize(), and SetFrameFlags().
|
private |
HE data1 field.
Definition at line 530 of file radiotap-header.h.
Referenced by Deserialize(), Print(), Serialize(), and SetHeFields().
|
private |
HE data2 field.
Definition at line 531 of file radiotap-header.h.
Referenced by Deserialize(), Print(), Serialize(), and SetHeFields().
|
private |
HE data3 field.
Definition at line 532 of file radiotap-header.h.
Referenced by Deserialize(), Print(), Serialize(), and SetHeFields().
|
private |
HE data4 field.
Definition at line 533 of file radiotap-header.h.
Referenced by Deserialize(), Print(), Serialize(), and SetHeFields().
|
private |
HE data5 field.
Definition at line 534 of file radiotap-header.h.
Referenced by Deserialize(), Print(), Serialize(), and SetHeFields().
|
private |
HE data6 field.
Definition at line 535 of file radiotap-header.h.
Referenced by Deserialize(), Print(), Serialize(), and SetHeFields().
|
private |
HE MU flags1 field.
Definition at line 538 of file radiotap-header.h.
Referenced by Deserialize(), Print(), Serialize(), and SetHeMuFields().
|
private |
HE MU flags2 field.
Definition at line 539 of file radiotap-header.h.
Referenced by Deserialize(), Print(), Serialize(), and SetHeMuFields().
|
private |
HE MU other user padding.
Definition at line 541 of file radiotap-header.h.
Referenced by Deserialize(), Serialize(), and SetHeMuPerUserFields().
|
private |
HE MU padding.
Definition at line 537 of file radiotap-header.h.
Referenced by Deserialize(), Serialize(), and SetHeMuFields().
|
private |
HE MU per_user_1 field.
Definition at line 542 of file radiotap-header.h.
Referenced by Deserialize(), Print(), Serialize(), and SetHeMuPerUserFields().
|
private |
HE MU per_user_2 field.
Definition at line 543 of file radiotap-header.h.
Referenced by Deserialize(), Print(), Serialize(), and SetHeMuPerUserFields().
|
private |
HE MU per_user_known field.
Definition at line 545 of file radiotap-header.h.
Referenced by Deserialize(), Print(), Serialize(), and SetHeMuPerUserFields().
|
private |
HE MU per_user_position field.
Definition at line 544 of file radiotap-header.h.
Referenced by Deserialize(), Print(), Serialize(), and SetHeMuPerUserFields().
|
private |
HE padding.
Definition at line 529 of file radiotap-header.h.
Referenced by Deserialize(), Serialize(), and SetHeFields().
|
private |
entire length of radiotap data + header
Definition at line 496 of file radiotap-header.h.
Referenced by Deserialize(), GetSerializedSize(), Serialize(), SetAmpduStatus(), SetAntennaNoisePower(), SetAntennaSignalPower(), SetChannelFrequencyAndFlags(), SetFrameFlags(), SetHeFields(), SetHeMuFields(), SetHeMuPerUserFields(), SetMcsFields(), SetRate(), SetTsft(), and SetVhtFields().
|
private |
MCS Flags, flags field.
Definition at line 512 of file radiotap-header.h.
Referenced by Deserialize(), Print(), Serialize(), and SetMcsFields().
|
private |
MCS Flags, known information field.
Definition at line 511 of file radiotap-header.h.
Referenced by Deserialize(), Print(), Serialize(), and SetMcsFields().
|
private |
MCS Flags, mcs rate index.
Definition at line 513 of file radiotap-header.h.
Referenced by Deserialize(), Print(), Serialize(), and SetMcsFields().
|
private |
bits describing which fields follow header
Definition at line 497 of file radiotap-header.h.
Referenced by Deserialize(), Serialize(), SetAmpduStatus(), SetAntennaNoisePower(), SetAntennaSignalPower(), SetChannelFrequencyAndFlags(), SetFrameFlags(), SetHeFields(), SetHeMuFields(), SetHeMuPerUserFields(), SetMcsFields(), SetRate(), SetTsft(), and SetVhtFields().
|
private |
TX/RX data rate in units of 500 kbps.
Definition at line 502 of file radiotap-header.h.
Referenced by Deserialize(), Print(), Serialize(), and SetRate().
|
private |
Time Synchronization Function Timer (when the first bit of the MPDU arrived at the MAC)
Definition at line 499 of file radiotap-header.h.
Referenced by Deserialize(), Print(), Serialize(), and SetTsft().
|
private |
VHT bandwidth field.
Definition at line 523 of file radiotap-header.h.
Referenced by Deserialize(), Print(), Serialize(), and SetVhtFields().
|
private |
VHT coding field.
Definition at line 525 of file radiotap-header.h.
Referenced by Deserialize(), Print(), Serialize(), and SetVhtFields().
|
private |
VHT flags field.
Definition at line 522 of file radiotap-header.h.
Referenced by Deserialize(), Print(), Serialize(), and SetVhtFields().
|
private |
VHT group_id field.
Definition at line 526 of file radiotap-header.h.
Referenced by Deserialize(), Print(), Serialize(), and SetVhtFields().
|
private |
VHT known field.
Definition at line 521 of file radiotap-header.h.
Referenced by Deserialize(), Print(), Serialize(), and SetVhtFields().
|
private |
VHT mcs_nss field.
Definition at line 524 of file radiotap-header.h.
Referenced by Deserialize(), Print(), Serialize(), and SetVhtFields().
|
private |
VHT padding.
Definition at line 520 of file radiotap-header.h.
Referenced by Deserialize(), Serialize(), and SetVhtFields().
|
private |
VHT partial_aid field.
Definition at line 527 of file radiotap-header.h.
Referenced by Deserialize(), Print(), Serialize(), and SetVhtFields().