User Info field of Trigger frames. More...
#include "ctrl-headers.h"
Public Member Functions | |
CtrlTriggerUserInfoField (TriggerFrameType triggerType, TriggerFrameVariant variant) | |
Constructor. | |
~CtrlTriggerUserInfoField () | |
Destructor. | |
Buffer::Iterator | Deserialize (Buffer::Iterator start) |
Deserialize the User Info field from the given buffer. | |
uint16_t | GetAid12 () const |
Get the value of the AID12 subfield. | |
bool | GetMoreRaRu () const |
Return true if more RA-RUs are allocated in subsequent Trigger frames that are sent before the end of the current TXOP. | |
uint8_t | GetMpduMuSpacingFactor () const |
Get the MPDU MU spacing factor. | |
const CtrlBAckRequestHeader & | GetMuBarTriggerDepUserInfo () const |
Get the Trigger Dependent User Info subfield for the MU-BAR variant of Trigger frames, which includes a BAR Control subfield and a BAR Information subfield. | |
uint8_t | GetMuRtsRuAllocation () const |
This method can only be called on MU-RTS Trigger Frames. | |
uint8_t | GetNRaRus () const |
Get the number of contiguous RUs for Random Access. | |
uint8_t | GetNss () const |
Get the number of spatial streams. | |
WifiPreamble | GetPreambleType () const |
AcIndex | GetPreferredAc () const |
Get the Preferred AC subfield. | |
HeRu::RuSpec | GetRuAllocation () const |
Get the RU specified by the RU Allocation subfield. | |
uint32_t | GetSerializedSize () const |
Get the expected size of this User Info field. | |
uint8_t | GetStartingSs () const |
Get the starting spatial stream. | |
uint8_t | GetTidAggregationLimit () const |
Get the TID Aggregation Limit. | |
TriggerFrameType | GetType () const |
Get the type of the Trigger Frame this User Info field belongs to. | |
bool | GetUlDcm () const |
Get the UL DCM subfield, which indicates whether or not DCM is used This method can only be used with HE variant User Info field. | |
bool | GetUlFecCodingType () const |
Get the UL FEC Coding Type subfield, which indicates whether BCC or LDPC is used. | |
uint8_t | GetUlMcs () const |
Get the UL MCS subfield, which indicates the MCS of the solicited HE TB PPDU. | |
int8_t | GetUlTargetRssi () const |
Get the expected receive signal power for the solicited HE TB PPDU. | |
bool | HasRaRuForAssociatedSta () const |
Check if this User Info field allocates a Random Access RU for stations associated with the AP that transmitted the Trigger frame. | |
bool | HasRaRuForUnassociatedSta () const |
Check if this User Info field allocates a Random Access RU for stations not associated with the AP that transmitted the Trigger frame. | |
bool | IsUlTargetRssiMaxTxPower () const |
Return true if the UL Target RSSI subfield indicates to the station to transmit an HE TB PPDU response at its maximum transmit power for the assigned MCS. | |
CtrlTriggerUserInfoField & | operator= (const CtrlTriggerUserInfoField &userInfo) |
Copy assignment operator. | |
void | Print (std::ostream &os) const |
Print the content of this User Info field. | |
Buffer::Iterator | Serialize (Buffer::Iterator start) const |
Serialize the User Info field to the given buffer. | |
void | SetAid12 (uint16_t aid) |
Set the AID12 subfield, which carries the 12 LSBs of the AID of the station for which this User Info field is intended. | |
void | SetBasicTriggerDepUserInfo (uint8_t spacingFactor, uint8_t tidLimit, AcIndex prefAc) |
Set the Trigger Dependent User Info subfield for Basic Trigger frames. | |
void | SetMuBarTriggerDepUserInfo (const CtrlBAckRequestHeader &bar) |
Set the Trigger Dependent User Info subfield for the MU-BAR variant of Trigger frames, which includes a BAR Control subfield and a BAR Information subfield. | |
void | SetMuRtsRuAllocation (uint8_t value) |
Set the RU Allocation subfield based on the given value for the B7-B1 bits. | |
void | SetRaRuInformation (uint8_t nRaRu, bool moreRaRu) |
Set the RA-RU Information subfield, which is present when the AID12 subfield is 0 or 2045. | |
void | SetRuAllocation (HeRu::RuSpec ru) |
Set the RU Allocation subfield according to the specified RU. | |
void | SetSsAllocation (uint8_t startingSs, uint8_t nSs) |
Set the SS Allocation subfield, which is present when the AID12 subfield is neither 0 nor 2045. | |
void | SetUlDcm (bool dcm) |
Set the UL DCM subfield, which indicates whether or not DCM is used. | |
void | SetUlFecCodingType (bool ldpc) |
Set the UL FEC Coding Type subfield, which indicates whether BCC or LDPC is used. | |
void | SetUlMcs (uint8_t mcs) |
Set the UL MCS subfield, which indicates the MCS of the solicited HE TB PPDU. | |
void | SetUlTargetRssi (int8_t dBm) |
Set the UL Target RSSI subfield to indicate the expected receive signal power in dBm. | |
void | SetUlTargetRssiMaxTxPower () |
Set the UL Target RSSI subfield to indicate to the station to transmit an HE TB PPDU response at its maximum transmit power for the assigned MCS. | |
Private Attributes | ||
uint16_t | m_aid12 | |
Association ID of the addressed station. | ||
uint8_t | m_basicTriggerDependentUserInfo | |
Basic Trigger variant of Trigger Dependent User Info subfield. | ||
union { | ||
struct { | ||
bool moreRaRu | ||
More RA-RU in subsequent Trigger frames. More... | ||
uint8_t nRaRu | ||
Number of Random Access RUs. More... | ||
} raRuInformation | ||
Used when AID12 is 0 or 2045. More... | ||
struct { | ||
uint8_t nSs | ||
Number of spatial streams. More... | ||
uint8_t startingSs | ||
Starting spatial stream. More... | ||
} ssAllocation | ||
Used when AID12 is neither 0 nor 2045. More... | ||
} | m_bits26To31 | |
Fields occupying bits 26-31 in the User Info field. | ||
CtrlBAckRequestHeader | m_muBarTriggerDependentUserInfo | |
MU-BAR variant of Trigger Dependent User Info subfield. | ||
bool | m_ps160 | |
identifies the location of the RU (EHT variant only) | ||
uint8_t | m_ruAllocation | |
RU Allocation. | ||
TriggerFrameType | m_triggerType | |
Trigger frame type. | ||
bool | m_ulDcm | |
whether or not to use Dual Carrier Modulation (HE variant only) | ||
bool | m_ulFecCodingType | |
UL FEC Coding Type. | ||
uint8_t | m_ulMcs | |
MCS to be used by the addressed station. | ||
uint8_t | m_ulTargetRssi | |
Expected receive signal power. | ||
TriggerFrameVariant | m_variant | |
User Info field variant. | ||
User Info field of Trigger frames.
Trigger frames, introduced by 802.11ax amendment (see Section 9.3.1.23 of D3.0), include one or more User Info fields, each of which carries information about the HE TB PPDU that the addressed station sends in response to the Trigger frame.
Definition at line 578 of file ctrl-headers.h.
ns3::CtrlTriggerUserInfoField::CtrlTriggerUserInfoField | ( | TriggerFrameType | triggerType, |
TriggerFrameVariant | variant ) |
Constructor.
triggerType | the Trigger frame type |
variant | the Trigger Frame variant |
Definition at line 1098 of file ctrl-headers.cc.
References m_bits26To31.
ns3::CtrlTriggerUserInfoField::~CtrlTriggerUserInfoField | ( | ) |
Destructor.
Definition at line 1114 of file ctrl-headers.cc.
Buffer::Iterator ns3::CtrlTriggerUserInfoField::Deserialize | ( | Buffer::Iterator | start | ) |
Deserialize the User Info field from the given buffer.
start | an iterator which points to where the header should read from |
Definition at line 1232 of file ctrl-headers.cc.
References ns3::BASIC_TRIGGER, ns3::BFRP_TRIGGER, ns3::CtrlBAckRequestHeader::Deserialize(), ns3::EHT, ns3::GCR_MU_BAR_TRIGGER, ns3::HE, m_aid12, m_basicTriggerDependentUserInfo, m_bits26To31, m_muBarTriggerDependentUserInfo, m_ps160, m_ruAllocation, m_triggerType, m_ulDcm, m_ulFecCodingType, m_ulMcs, m_ulTargetRssi, m_variant, ns3::MU_BAR_TRIGGER, ns3::Buffer::Iterator::Next(), ns3::NFRP_TRIGGER, NS_ABORT_MSG_IF, ns3::Buffer::Iterator::ReadLsbtohU32(), and ns3::Buffer::Iterator::ReadU8().
Referenced by ns3::CtrlTriggerHeader::Deserialize().
uint16_t ns3::CtrlTriggerUserInfoField::GetAid12 | ( | ) | const |
Get the value of the AID12 subfield.
Definition at line 1314 of file ctrl-headers.cc.
References m_aid12.
Referenced by ns3::CtrlTriggerHeader::FindUserInfoWithAid().
bool ns3::CtrlTriggerUserInfoField::GetMoreRaRu | ( | ) | const |
Return true if more RA-RUs are allocated in subsequent Trigger frames that are sent before the end of the current TXOP.
This method can only be called if the AID12 subfield has been set to 0 or 2045
Definition at line 1554 of file ctrl-headers.cc.
References m_aid12, m_bits26To31, and NS_ABORT_MSG_IF.
uint8_t ns3::CtrlTriggerUserInfoField::GetMpduMuSpacingFactor | ( | ) | const |
Get the MPDU MU spacing factor.
This method can only be called if this User Info field is included in a Basic Trigger frame.
Definition at line 1603 of file ctrl-headers.cc.
References ns3::BASIC_TRIGGER, m_basicTriggerDependentUserInfo, m_triggerType, and NS_ABORT_MSG_IF.
const CtrlBAckRequestHeader & ns3::CtrlTriggerUserInfoField::GetMuBarTriggerDepUserInfo | ( | ) | const |
Get the Trigger Dependent User Info subfield for the MU-BAR variant of Trigger frames, which includes a BAR Control subfield and a BAR Information subfield.
The BAR Control subfield must indicate either a Compressed BlockAckReq variant or a Multi-TID BlockAckReq variant.
Definition at line 1638 of file ctrl-headers.cc.
References m_muBarTriggerDependentUserInfo, m_triggerType, ns3::MU_BAR_TRIGGER, and NS_ABORT_MSG_IF.
uint8_t ns3::CtrlTriggerUserInfoField::GetMuRtsRuAllocation | ( | ) | const |
This method can only be called on MU-RTS Trigger Frames.
Definition at line 1451 of file ctrl-headers.cc.
References m_ruAllocation, m_triggerType, ns3::MU_RTS_TRIGGER, and NS_ABORT_MSG_IF.
uint8_t ns3::CtrlTriggerUserInfoField::GetNRaRus | ( | ) | const |
Get the number of contiguous RUs for Random Access.
This method can only be called if the AID12 subfield has been set to 0 or 2045
Definition at line 1546 of file ctrl-headers.cc.
References m_aid12, m_bits26To31, and NS_ABORT_MSG_IF.
uint8_t ns3::CtrlTriggerUserInfoField::GetNss | ( | ) | const |
Get the number of spatial streams.
Definition at line 1526 of file ctrl-headers.cc.
References m_aid12, and m_bits26To31.
WifiPreamble ns3::CtrlTriggerUserInfoField::GetPreambleType | ( | ) | const |
Definition at line 1293 of file ctrl-headers.cc.
References ns3::EHT, ns3::HE, m_variant, NS_ABORT_MSG, ns3::WIFI_PREAMBLE_EHT_TB, ns3::WIFI_PREAMBLE_HE_TB, and ns3::WIFI_PREAMBLE_LONG.
AcIndex ns3::CtrlTriggerUserInfoField::GetPreferredAc | ( | ) | const |
Get the Preferred AC subfield.
This method can only be called if this User Info field is included in a Basic Trigger frame.
Definition at line 1619 of file ctrl-headers.cc.
References ns3::BASIC_TRIGGER, m_basicTriggerDependentUserInfo, m_triggerType, and NS_ABORT_MSG_IF.
HeRu::RuSpec ns3::CtrlTriggerUserInfoField::GetRuAllocation | ( | ) | const |
Get the RU specified by the RU Allocation subfield.
This method cannot be called on MU-RTS Trigger Frames (call GetMuRtsRuAllocation instead).
Definition at line 1376 of file ctrl-headers.cc.
References m_ruAllocation, m_triggerType, ns3::MU_RTS_TRIGGER, NS_ABORT_MSG_IF, NS_FATAL_ERROR, ns3::HeRu::RU_106_TONE, ns3::HeRu::RU_242_TONE, ns3::HeRu::RU_26_TONE, ns3::HeRu::RU_2x996_TONE, ns3::HeRu::RU_484_TONE, ns3::HeRu::RU_52_TONE, and ns3::HeRu::RU_996_TONE.
uint32_t ns3::CtrlTriggerUserInfoField::GetSerializedSize | ( | ) | const |
Get the expected size of this User Info field.
Definition at line 1152 of file ctrl-headers.cc.
References ns3::BASIC_TRIGGER, ns3::BFRP_TRIGGER, ns3::CtrlBAckRequestHeader::GetSerializedSize(), m_muBarTriggerDependentUserInfo, m_triggerType, and ns3::MU_BAR_TRIGGER.
uint8_t ns3::CtrlTriggerUserInfoField::GetStartingSs | ( | ) | const |
Get the starting spatial stream.
Definition at line 1516 of file ctrl-headers.cc.
References m_aid12, and m_bits26To31.
uint8_t ns3::CtrlTriggerUserInfoField::GetTidAggregationLimit | ( | ) | const |
Get the TID Aggregation Limit.
This method can only be called if this User Info field is included in a Basic Trigger frame.
Definition at line 1611 of file ctrl-headers.cc.
References ns3::BASIC_TRIGGER, m_basicTriggerDependentUserInfo, m_triggerType, and NS_ABORT_MSG_IF.
TriggerFrameType ns3::CtrlTriggerUserInfoField::GetType | ( | ) | const |
Get the type of the Trigger Frame this User Info field belongs to.
Definition at line 1287 of file ctrl-headers.cc.
References m_triggerType.
Referenced by ns3::CtrlTriggerHeader::AddUserInfoField().
bool ns3::CtrlTriggerUserInfoField::GetUlDcm | ( | ) | const |
Get the UL DCM subfield, which indicates whether or not DCM is used This method can only be used with HE variant User Info field.
Definition at line 1498 of file ctrl-headers.cc.
References ns3::HE, m_ulDcm, m_variant, and NS_ASSERT_MSG.
bool ns3::CtrlTriggerUserInfoField::GetUlFecCodingType | ( | ) | const |
Get the UL FEC Coding Type subfield, which indicates whether BCC or LDPC is used.
Definition at line 1471 of file ctrl-headers.cc.
References m_ulFecCodingType.
uint8_t ns3::CtrlTriggerUserInfoField::GetUlMcs | ( | ) | const |
Get the UL MCS subfield, which indicates the MCS of the solicited HE TB PPDU.
Definition at line 1485 of file ctrl-headers.cc.
References m_ulMcs.
int8_t ns3::CtrlTriggerUserInfoField::GetUlTargetRssi | ( | ) | const |
Get the expected receive signal power for the solicited HE TB PPDU.
This method can only be called if IsUlTargetRssiMaxTxPower returns false.
Definition at line 1582 of file ctrl-headers.cc.
References m_ulTargetRssi, and NS_ABORT_MSG_IF.
bool ns3::CtrlTriggerUserInfoField::HasRaRuForAssociatedSta | ( | ) | const |
Check if this User Info field allocates a Random Access RU for stations associated with the AP that transmitted the Trigger frame.
Definition at line 1320 of file ctrl-headers.cc.
References m_aid12.
bool ns3::CtrlTriggerUserInfoField::HasRaRuForUnassociatedSta | ( | ) | const |
Check if this User Info field allocates a Random Access RU for stations not associated with the AP that transmitted the Trigger frame.
Definition at line 1326 of file ctrl-headers.cc.
References m_aid12.
bool ns3::CtrlTriggerUserInfoField::IsUlTargetRssiMaxTxPower | ( | ) | const |
Return true if the UL Target RSSI subfield indicates to the station to transmit an HE TB PPDU response at its maximum transmit power for the assigned MCS.
Definition at line 1576 of file ctrl-headers.cc.
References m_ulTargetRssi.
CtrlTriggerUserInfoField & ns3::CtrlTriggerUserInfoField::operator= | ( | const CtrlTriggerUserInfoField & | userInfo | ) |
Copy assignment operator.
userInfo | the User Info field to copy |
Checks that the given User Info fields is included in the same type of Trigger Frame.
Definition at line 1119 of file ctrl-headers.cc.
References m_aid12, m_basicTriggerDependentUserInfo, m_bits26To31, m_muBarTriggerDependentUserInfo, m_ps160, m_ruAllocation, m_triggerType, m_ulDcm, m_ulFecCodingType, m_ulMcs, m_ulTargetRssi, m_variant, and NS_ABORT_MSG_IF.
void ns3::CtrlTriggerUserInfoField::Print | ( | std::ostream & | os | ) | const |
Print the content of this User Info field.
os | output stream |
Definition at line 1144 of file ctrl-headers.cc.
References ns3::HE, m_aid12, m_ruAllocation, m_ulMcs, and m_variant.
Buffer::Iterator ns3::CtrlTriggerUserInfoField::Serialize | ( | Buffer::Iterator | start | ) | const |
Serialize the User Info field to the given buffer.
start | an iterator which points to where the header should be written |
Definition at line 1175 of file ctrl-headers.cc.
References ns3::BASIC_TRIGGER, ns3::BFRP_TRIGGER, ns3::EHT, ns3::GCR_MU_BAR_TRIGGER, ns3::CtrlBAckRequestHeader::GetSerializedSize(), ns3::HE, m_aid12, m_basicTriggerDependentUserInfo, m_bits26To31, m_muBarTriggerDependentUserInfo, m_ps160, m_ruAllocation, m_triggerType, m_ulDcm, m_ulFecCodingType, m_ulMcs, m_ulTargetRssi, m_variant, ns3::MU_BAR_TRIGGER, ns3::Buffer::Iterator::Next(), ns3::NFRP_TRIGGER, NS_ABORT_MSG_IF, ns3::CtrlBAckRequestHeader::Serialize(), ns3::Buffer::Iterator::WriteHtolsbU32(), and ns3::Buffer::Iterator::WriteU8().
void ns3::CtrlTriggerUserInfoField::SetAid12 | ( | uint16_t | aid | ) |
Set the AID12 subfield, which carries the 12 LSBs of the AID of the station for which this User Info field is intended.
The whole AID can be passed, since the passed value is properly masked.
aid | the value for the AID12 subfield |
Definition at line 1308 of file ctrl-headers.cc.
References m_aid12.
Referenced by ns3::CtrlTriggerHeader::CtrlTriggerHeader(), ns3::WifiProtectionManager::AddUserInfoToMuRts(), and TestUlOfdmaPowerControl::SendMuBar().
void ns3::CtrlTriggerUserInfoField::SetBasicTriggerDepUserInfo | ( | uint8_t | spacingFactor, |
uint8_t | tidLimit, | ||
AcIndex | prefAc ) |
Set the Trigger Dependent User Info subfield for Basic Trigger frames.
spacingFactor | the MPDU MU spacing factor |
tidLimit | the value for the TID Aggregation Limit subfield |
prefAc | the lowest AC recommended for aggregation of MPDUs |
Definition at line 1590 of file ctrl-headers.cc.
References ns3::BASIC_TRIGGER, m_basicTriggerDependentUserInfo, m_triggerType, and NS_ABORT_MSG_IF.
void ns3::CtrlTriggerUserInfoField::SetMuBarTriggerDepUserInfo | ( | const CtrlBAckRequestHeader & | bar | ) |
Set the Trigger Dependent User Info subfield for the MU-BAR variant of Trigger frames, which includes a BAR Control subfield and a BAR Information subfield.
The BAR Control subfield must indicate either a Compressed BlockAckReq variant or a Multi-TID BlockAckReq variant.
bar | the BlockAckRequest header object including the BAR Control subfield and the BAR Information subfield |
Definition at line 1627 of file ctrl-headers.cc.
References ns3::BlockAckReqType::COMPRESSED, ns3::CtrlBAckRequestHeader::GetType(), m_muBarTriggerDependentUserInfo, m_triggerType, ns3::BlockAckReqType::m_variant, ns3::MU_BAR_TRIGGER, ns3::BlockAckReqType::MULTI_TID, and NS_ABORT_MSG_IF.
Referenced by TestUlOfdmaPowerControl::SendMuBar().
void ns3::CtrlTriggerUserInfoField::SetMuRtsRuAllocation | ( | uint8_t | value | ) |
Set the RU Allocation subfield based on the given value for the B7-B1 bits.
This method can only be called on MU-RTS Trigger Frames.
B7–B1 of the RU Allocation subfield is set to indicate the primary 20 MHz channel as follows:
B7–B1 of the RU Allocation subfield is set to indicate the primary 40 MHz channel as follows:
B7–B1 of the RU Allocation subfield is set to 67 to indicate the primary 80 MHz channel.
B7–B1 of the RU Allocation subfield is set to 68 to indicate the primary and secondary 80 MHz channel.
value | the value for B7–B1 of the RU Allocation subfield |
Definition at line 1432 of file ctrl-headers.cc.
References m_ruAllocation, m_triggerType, ns3::MU_RTS_TRIGGER, and NS_ABORT_MSG_IF.
Referenced by ns3::WifiProtectionManager::AddUserInfoToMuRts().
void ns3::CtrlTriggerUserInfoField::SetRaRuInformation | ( | uint8_t | nRaRu, |
bool | moreRaRu ) |
Set the RA-RU Information subfield, which is present when the AID12 subfield is 0 or 2045.
This method must be called after setting the AID12 subfield to 0 or 2045.
nRaRu | the number (from 1 to 32) of contiguous RUs allocated for Random Access. |
moreRaRu | whether RA-RUs are allocated in subsequent Trigger frames |
Definition at line 1536 of file ctrl-headers.cc.
References m_aid12, m_bits26To31, moreRaRu, nRaRu, and NS_ABORT_MSG_IF.
void ns3::CtrlTriggerUserInfoField::SetRuAllocation | ( | HeRu::RuSpec | ru | ) |
Set the RU Allocation subfield according to the specified RU.
This method cannot be called on MU-RTS Trigger Frames (call SetMuRtsRuAllocation instead).
ru | the RU this User Info field is allocating |
Definition at line 1332 of file ctrl-headers.cc.
References ns3::HeRu::RuSpec::GetIndex(), ns3::HeRu::RuSpec::GetPrimary80MHz(), ns3::HeRu::RuSpec::GetRuType(), m_ruAllocation, m_triggerType, ns3::MU_RTS_TRIGGER, NS_ABORT_MSG_IF, NS_FATAL_ERROR, ns3::HeRu::RU_106_TONE, ns3::HeRu::RU_242_TONE, ns3::HeRu::RU_26_TONE, ns3::HeRu::RU_2x996_TONE, ns3::HeRu::RU_484_TONE, ns3::HeRu::RU_52_TONE, and ns3::HeRu::RU_996_TONE.
Referenced by ns3::CtrlTriggerHeader::CtrlTriggerHeader(), and TestUlOfdmaPowerControl::SendMuBar().
void ns3::CtrlTriggerUserInfoField::SetSsAllocation | ( | uint8_t | startingSs, |
uint8_t | nSs ) |
Set the SS Allocation subfield, which is present when the AID12 subfield is neither 0 nor 2045.
This method must be called after setting the AID12 subfield to a value other than 0 and 2045.
startingSs | the starting spatial stream (a value from 1 to 8) |
nSs | the number of spatial streams (a value from 1 to 8) |
Definition at line 1505 of file ctrl-headers.cc.
References m_aid12, m_bits26To31, NS_ABORT_MSG_IF, nSs, and startingSs.
Referenced by ns3::CtrlTriggerHeader::CtrlTriggerHeader(), and TestUlOfdmaPowerControl::SendMuBar().
void ns3::CtrlTriggerUserInfoField::SetUlDcm | ( | bool | dcm | ) |
Set the UL DCM subfield, which indicates whether or not DCM is used.
This method can only be used with HE variant User Info field.
dcm | whether to use DCM or not |
Definition at line 1491 of file ctrl-headers.cc.
References ns3::HE, m_ulDcm, m_variant, and NS_ASSERT_MSG.
Referenced by TestUlOfdmaPowerControl::SendMuBar().
void ns3::CtrlTriggerUserInfoField::SetUlFecCodingType | ( | bool | ldpc | ) |
Set the UL FEC Coding Type subfield, which indicates whether BCC or LDPC is used.
ldpc | whether to use LDPC or not |
Definition at line 1465 of file ctrl-headers.cc.
References m_ulFecCodingType.
Referenced by TestUlOfdmaPowerControl::SendMuBar().
void ns3::CtrlTriggerUserInfoField::SetUlMcs | ( | uint8_t | mcs | ) |
Set the UL MCS subfield, which indicates the MCS of the solicited HE TB PPDU.
mcs | the MCS index (a value between 0 and 11) |
Definition at line 1477 of file ctrl-headers.cc.
References ns3::EHT, m_ulMcs, m_variant, and NS_ABORT_MSG_IF.
Referenced by ns3::CtrlTriggerHeader::CtrlTriggerHeader(), and TestUlOfdmaPowerControl::SendMuBar().
void ns3::CtrlTriggerUserInfoField::SetUlTargetRssi | ( | int8_t | dBm | ) |
Set the UL Target RSSI subfield to indicate the expected receive signal power in dBm.
dBm | the expected receive signal power (a value between -110 and -20) |
Definition at line 1568 of file ctrl-headers.cc.
References m_ulTargetRssi, and NS_ABORT_MSG_IF.
Referenced by TestUlOfdmaPowerControl::SendMuBar().
void ns3::CtrlTriggerUserInfoField::SetUlTargetRssiMaxTxPower | ( | ) |
Set the UL Target RSSI subfield to indicate to the station to transmit an HE TB PPDU response at its maximum transmit power for the assigned MCS.
Definition at line 1562 of file ctrl-headers.cc.
References m_ulTargetRssi.
|
private |
Association ID of the addressed station.
Definition at line 881 of file ctrl-headers.h.
Referenced by Deserialize(), GetAid12(), GetMoreRaRu(), GetNRaRus(), GetNss(), GetStartingSs(), HasRaRuForAssociatedSta(), HasRaRuForUnassociatedSta(), operator=(), Print(), Serialize(), SetAid12(), SetRaRuInformation(), and SetSsAllocation().
|
private |
Basic Trigger variant of Trigger Dependent User Info subfield.
Definition at line 904 of file ctrl-headers.h.
Referenced by Deserialize(), GetMpduMuSpacingFactor(), GetPreferredAc(), GetTidAggregationLimit(), operator=(), Serialize(), and SetBasicTriggerDepUserInfo().
union { ... } ns3::CtrlTriggerUserInfoField::m_bits26To31 |
Fields occupying bits 26-31 in the User Info field.
Referenced by CtrlTriggerUserInfoField(), Deserialize(), GetMoreRaRu(), GetNRaRus(), GetNss(), GetStartingSs(), operator=(), Serialize(), SetRaRuInformation(), and SetSsAllocation().
|
private |
MU-BAR variant of Trigger Dependent User Info subfield.
Definition at line 907 of file ctrl-headers.h.
Referenced by Deserialize(), GetMuBarTriggerDepUserInfo(), GetSerializedSize(), operator=(), Serialize(), and SetMuBarTriggerDepUserInfo().
|
private |
identifies the location of the RU (EHT variant only)
Definition at line 886 of file ctrl-headers.h.
Referenced by Deserialize(), operator=(), and Serialize().
|
private |
RU Allocation.
Definition at line 882 of file ctrl-headers.h.
Referenced by Deserialize(), GetMuRtsRuAllocation(), GetRuAllocation(), operator=(), Print(), Serialize(), SetMuRtsRuAllocation(), and SetRuAllocation().
|
private |
Trigger frame type.
Definition at line 903 of file ctrl-headers.h.
Referenced by Deserialize(), GetMpduMuSpacingFactor(), GetMuBarTriggerDepUserInfo(), GetMuRtsRuAllocation(), GetPreferredAc(), GetRuAllocation(), GetSerializedSize(), GetTidAggregationLimit(), GetType(), operator=(), Serialize(), SetBasicTriggerDepUserInfo(), SetMuBarTriggerDepUserInfo(), SetMuRtsRuAllocation(), and SetRuAllocation().
|
private |
whether or not to use Dual Carrier Modulation (HE variant only)
Definition at line 885 of file ctrl-headers.h.
Referenced by Deserialize(), GetUlDcm(), operator=(), Serialize(), and SetUlDcm().
|
private |
UL FEC Coding Type.
Definition at line 883 of file ctrl-headers.h.
Referenced by Deserialize(), GetUlFecCodingType(), operator=(), Serialize(), and SetUlFecCodingType().
|
private |
MCS to be used by the addressed station.
Definition at line 884 of file ctrl-headers.h.
Referenced by Deserialize(), GetUlMcs(), operator=(), Print(), Serialize(), and SetUlMcs().
|
private |
Expected receive signal power.
Definition at line 902 of file ctrl-headers.h.
Referenced by Deserialize(), GetUlTargetRssi(), IsUlTargetRssiMaxTxPower(), operator=(), Serialize(), SetUlTargetRssi(), and SetUlTargetRssiMaxTxPower().
|
private |
User Info field variant.
Definition at line 879 of file ctrl-headers.h.
Referenced by Deserialize(), GetPreambleType(), GetUlDcm(), operator=(), Print(), Serialize(), SetUlDcm(), and SetUlMcs().
bool ns3::CtrlTriggerUserInfoField::moreRaRu |
More RA-RU in subsequent Trigger frames.
Definition at line 898 of file ctrl-headers.h.
Referenced by SetRaRuInformation().
uint8_t ns3::CtrlTriggerUserInfoField::nRaRu |
Number of Random Access RUs.
Definition at line 897 of file ctrl-headers.h.
Referenced by SetRaRuInformation().
uint8_t ns3::CtrlTriggerUserInfoField::nSs |
Number of spatial streams.
Definition at line 892 of file ctrl-headers.h.
Referenced by SetSsAllocation().
struct { ... } ns3::CtrlTriggerUserInfoField::raRuInformation |
Used when AID12 is 0 or 2045.
struct { ... } ns3::CtrlTriggerUserInfoField::ssAllocation |
Used when AID12 is neither 0 nor 2045.
uint8_t ns3::CtrlTriggerUserInfoField::startingSs |
Starting spatial stream.
Definition at line 891 of file ctrl-headers.h.
Referenced by SetSsAllocation().