Radiotap header implementation. More...
#include "radiotap-header.h"
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. More... | |
TypeId | GetInstanceTypeId () const override |
Get the most derived TypeId for this Object. More... | |
uint32_t | GetSerializedSize () const override |
This method is used by Packet::AddHeader to store the header into the byte buffer of a packet. More... | |
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. More... | |
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. More... | |
void | SetAmpduStatus (uint32_t referenceNumber, uint16_t flags, uint8_t crc) |
Set the A-MPDU status fields. More... | |
void | SetAntennaNoisePower (double noise) |
Set the RF noise power at the antenna as a decibel difference from an arbitrary, fixed reference. More... | |
void | SetAntennaSignalPower (double signal) |
Set the RF signal power at the antenna as a decibel difference from an arbitrary, fixed reference. More... | |
void | SetChannelFrequencyAndFlags (uint16_t frequency, uint16_t flags) |
Set the transmit/receive channel frequency and flags. More... | |
void | SetFrameFlags (uint8_t flags) |
Set the frame flags of the transmitted or received frame. More... | |
void | SetHeFields (uint16_t data1, uint16_t data2, uint16_t data3, uint16_t data4, uint16_t data5, uint16_t data6) |
Set the HE fields. More... | |
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. More... | |
void | SetHeMuPerUserFields (uint16_t perUser1, uint16_t perUser2, uint8_t perUserPosition, uint8_t perUserKnown) |
Set the HE MU per user fields. More... | |
void | SetMcsFields (uint8_t known, uint8_t flags, uint8_t mcs) |
Set the MCS fields. More... | |
void | SetRate (uint8_t rate) |
Set the transmit/receive channel frequency in units of megahertz. More... | |
void | SetTsft (uint64_t tsft) |
Set the Time Synchronization Function Timer (TSFT) value. More... | |
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. More... | |
Public Member Functions inherited from ns3::Header | |
~Header () override | |
virtual uint32_t | Deserialize (Buffer::Iterator start)=0 |
Deserialize the object from a buffer iterator. More... | |
virtual uint32_t | Deserialize (Buffer::Iterator start, Buffer::Iterator end) |
Deserialize the object from a buffer iterator. More... | |
Public Member Functions inherited from ns3::Chunk | |
virtual uint32_t | Deserialize (Buffer::Iterator start, Buffer::Iterator end) |
Deserialize the object from a buffer iterator. More... | |
Public Member Functions inherited from ns3::ObjectBase | |
virtual | ~ObjectBase () |
Virtual destructor. More... | |
void | GetAttribute (std::string name, AttributeValue &value) const |
Get the value of an attribute, raising fatal errors if unsuccessful. More... | |
bool | GetAttributeFailSafe (std::string name, AttributeValue &value) const |
Get the value of an attribute without raising errors. More... | |
void | SetAttribute (std::string name, const AttributeValue &value) |
Set a single attribute, raising fatal errors if unsuccessful. More... | |
bool | SetAttributeFailSafe (std::string name, const AttributeValue &value) |
Set a single attribute without raising errors. More... | |
bool | TraceConnect (std::string name, std::string context, const CallbackBase &cb) |
Connect a TraceSource to a Callback with a context. More... | |
bool | TraceConnectWithoutContext (std::string name, const CallbackBase &cb) |
Connect a TraceSource to a Callback without a context. More... | |
bool | TraceDisconnect (std::string name, std::string context, const CallbackBase &cb) |
Disconnect from a TraceSource a Callback previously connected with a context. More... | |
bool | TraceDisconnectWithoutContext (std::string name, const CallbackBase &cb) |
Disconnect from a TraceSource a Callback previously connected without a context. More... | |
Static Public Member Functions | |
static TypeId | GetTypeId () |
Get the type ID. More... | |
Static Public Member Functions inherited from ns3::Header | |
static TypeId | GetTypeId () |
Get the type ID. More... | |
Static Public Member Functions inherited from ns3::Chunk | |
static TypeId | GetTypeId () |
Get the type ID. More... | |
Static Public Member Functions inherited from ns3::ObjectBase | |
static TypeId | GetTypeId () |
Get the type ID. More... | |
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. More... | |
uint16_t | m_ampduStatusFlags |
A-MPDU Status Flags, information about the received A-MPDU. More... | |
uint8_t | m_ampduStatusPad |
A-MPDU Status Flags, padding before A-MPDU Status Field. More... | |
uint32_t | m_ampduStatusRef |
A-MPDU Status Flags, reference number. More... | |
int8_t | m_antennaNoise |
RF noise power at the antenna, dB difference from an arbitrary, fixed reference. More... | |
int8_t | m_antennaSignal |
RF signal power at the antenna, dB difference from an arbitrary, fixed reference. More... | |
uint16_t | m_channelFlags |
Tx/Rx channel flags. More... | |
uint16_t | m_channelFreq |
Tx/Rx frequency in MHz. More... | |
uint8_t | m_channelPad |
Tx/Rx channel padding. More... | |
uint8_t | m_flags |
Properties of transmitted and received frames. More... | |
uint16_t | m_heData1 |
HE data1 field. More... | |
uint16_t | m_heData2 |
HE data2 field. More... | |
uint16_t | m_heData3 |
HE data3 field. More... | |
uint16_t | m_heData4 |
HE data4 field. More... | |
uint16_t | m_heData5 |
HE data5 field. More... | |
uint16_t | m_heData6 |
HE data6 field. More... | |
uint16_t | m_heMuFlags1 |
HE MU flags1 field. More... | |
uint16_t | m_heMuFlags2 |
HE MU flags2 field. More... | |
uint8_t | m_heMuOtherUserPad |
HE MU other user padding. More... | |
uint8_t | m_heMuPad |
HE MU padding. More... | |
uint16_t | m_heMuPerUser1 |
HE MU per_user_1 field. More... | |
uint16_t | m_heMuPerUser2 |
HE MU per_user_2 field. More... | |
uint8_t | m_heMuPerUserKnown |
HE MU per_user_known field. More... | |
uint8_t | m_heMuPerUserPosition |
HE MU per_user_position field. More... | |
uint8_t | m_hePad |
HE padding. More... | |
uint16_t | m_length |
entire length of radiotap data + header More... | |
uint8_t | m_mcsFlags |
MCS Flags, flags field. More... | |
uint8_t | m_mcsKnown |
MCS Flags, known information field. More... | |
uint8_t | m_mcsRate |
MCS Flags, mcs rate index. More... | |
uint32_t | m_present |
bits describing which fields follow header More... | |
uint8_t | m_rate |
TX/RX data rate in units of 500 kbps. More... | |
uint64_t | m_tsft |
Time Synchronization Function Timer (when the first bit of the MPDU arrived at the MAC) More... | |
uint8_t | m_vhtBandwidth |
VHT bandwidth field. More... | |
uint8_t | m_vhtCoding |
VHT coding field. More... | |
uint8_t | m_vhtFlags |
VHT flags field. More... | |
uint8_t | m_vhtGroupId |
VHT group_id field. More... | |
uint16_t | m_vhtKnown |
VHT known field. More... | |
uint8_t | m_vhtMcsNss [4] |
VHT mcs_nss field. More... | |
uint8_t | m_vhtPad |
VHT padding. More... | |
uint16_t | m_vhtPartialAid |
VHT partial_aid field. More... | |
Additional Inherited Members | |
Protected Member Functions inherited from ns3::ObjectBase | |
void | ConstructSelf (const AttributeConstructionList &attributes) |
Complete construction of ObjectBase; invoked by derived classes. More... | |
virtual void | NotifyConstructionCompleted () |
Notifier called once the ObjectBase is fully constructed. More... | |
Related Functions inherited from ns3::ObjectBase | |
static TypeId | GetObjectIid () |
Ensure the TypeId for ObjectBase gets fully configured to anchor the inheritance tree properly. More... | |
Radiotap header implementation.
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.
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, RADIOTAP_VHT, and two-ray-to-three-gpp-ch-calibration::start.
|
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().
|
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().
|
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, RADIOTAP_VHT, and two-ray-to-three-gpp-ch-calibration::start.
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().
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().
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().
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().
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().
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().
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().
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().
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().
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().
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().
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().
|
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().