This class mimics the TXVECTOR which is to be passed to the PHY in order to define the parameters which are to be used for a transmission. More...
#include <wifi-tx-vector.h>
Public Member Functions | |
WifiTxVector () | |
WifiTxVector (WifiMode mode, uint8_t powerLevel, uint8_t retries, bool shortGuardInterval, uint8_t nss, uint8_t ness, bool stbc) | |
Create a TXVECTOR with the given parameters. More... | |
WifiMode | GetMode (void) const |
uint8_t | GetNess (void) const |
uint8_t | GetNss (void) const |
uint8_t | GetRetries (void) const |
uint8_t | GetTxPowerLevel (void) const |
bool | IsShortGuardInterval (void) const |
bool | IsStbc (void) const |
Check if STBC is used or not. More... | |
void | SetMode (WifiMode mode) |
Sets the selected payload transmission mode. More... | |
void | SetNess (uint8_t ness) |
Sets the Ness number refer to IEEE802.11n Table 20-6 for explanation. More... | |
void | SetNss (uint8_t nss) |
Sets the number of Nss refer to IEEE802.11n Table 20-28 for explanation and range. More... | |
void | SetRetries (uint8_t retries) |
Sets the number of retries. More... | |
void | SetShortGuardInterval (bool guardinterval) |
Sets if short gurad interval is being used. More... | |
void | SetStbc (bool stbc) |
Sets if STBC is being used. More... | |
void | SetTxPowerLevel (uint8_t powerlevel) |
Sets the selected transmission power level. More... | |
Private Attributes | |
WifiMode | m_mode |
The DATARATE parameter in Table 15-4. More... | |
uint8_t | m_ness |
uint8_t | m_nss |
uint8_t | m_retries |
The DATA_RETRIES/RTS_RETRIES parameter for Click radiotap information. More... | |
bool | m_shortGuardInterval |
bool | m_stbc |
uint8_t | m_txPowerLevel |
The TXPWR_LEVEL parameter in Table 15-4. More... | |
This class mimics the TXVECTOR which is to be passed to the PHY in order to define the parameters which are to be used for a transmission.
See IEEE 802.11-2007 15.2.6 "Transmit PLCP", and also 15.4.4.2 "PMD_SAP peer-to-peer service primitive parameters".
Definition at line 47 of file wifi-tx-vector.h.
ns3::WifiTxVector::WifiTxVector | ( | ) |
Definition at line 26 of file wifi-tx-vector.cc.
ns3::WifiTxVector::WifiTxVector | ( | WifiMode | mode, |
uint8_t | powerLevel, | ||
uint8_t | retries, | ||
bool | shortGuardInterval, | ||
uint8_t | nss, | ||
uint8_t | ness, | ||
bool | stbc | ||
) |
Create a TXVECTOR with the given parameters.
mode | WifiMode |
powerLevel | transmission power level |
retries | retries |
shortGuardInterval | enable or disable short guard interval |
nss | the number of spatial STBC streams (NSS) |
ness | the number of extension spatial streams (NESS) |
stbc | enable or disable STBC |
Definition at line 30 of file wifi-tx-vector.cc.
WifiMode ns3::WifiTxVector::GetMode | ( | void | ) | const |
Definition at line 42 of file wifi-tx-vector.cc.
References m_mode.
Referenced by ns3::MacLow::CalculateOverallTxTime(), ns3::MacLow::CalculateTransmissionTime(), ns3::WifiPhy::CalculateTxDuration(), ns3::MacLow::ForwardDown(), ns3::MacLow::GetAckDuration(), ns3::MacLow::GetBlockAckDuration(), ns3::MacLow::GetCtsDuration(), ns3::WaveMacLow::GetDataTxVector(), ns3::WifiPhy::GetPayloadDurationMicroSeconds(), ns3::WifiRemoteStationManager::NeedCtsToSelf(), ns3::operator<<(), ns3::MacLow::SendAckAfterData(), ns3::MacLow::SendBlockAckResponse(), ns3::MacLow::SendCtsAfterRts(), ns3::MacLow::SendCtsToSelf(), ns3::MacLow::SendDataAfterCts(), ns3::MacLow::SendDataPacket(), ns3::YansWifiPhy::SendPacket(), ns3::MacLow::SendRtsForPacket(), ns3::MacLow::StartDataTxTimers(), and ns3::YansWifiPhy::StartReceivePacket().
uint8_t ns3::WifiTxVector::GetNess | ( | void | ) | const |
Definition at line 67 of file wifi-tx-vector.cc.
References m_ness.
Referenced by ns3::WifiPhy::GetPlcpHtTrainingSymbolDurationMicroSeconds(), and ns3::operator<<().
uint8_t ns3::WifiTxVector::GetNss | ( | void | ) | const |
Definition at line 62 of file wifi-tx-vector.cc.
References m_nss.
Referenced by ns3::WifiPhy::GetPayloadDurationMicroSeconds(), ns3::WifiPhy::GetPlcpHtTrainingSymbolDurationMicroSeconds(), ns3::operator<<(), and ns3::YansWifiPhy::SendPacket().
uint8_t ns3::WifiTxVector::GetRetries | ( | void | ) | const |
Definition at line 52 of file wifi-tx-vector.cc.
References m_retries.
Referenced by ns3::operator<<().
uint8_t ns3::WifiTxVector::GetTxPowerLevel | ( | void | ) | const |
Definition at line 47 of file wifi-tx-vector.cc.
References m_txPowerLevel.
Referenced by ns3::WaveMacLow::GetDataTxVector(), ns3::operator<<(), and ns3::YansWifiPhy::SendPacket().
bool ns3::WifiTxVector::IsShortGuardInterval | ( | void | ) | const |
Definition at line 57 of file wifi-tx-vector.cc.
References m_shortGuardInterval.
Referenced by ns3::operator<<().
bool ns3::WifiTxVector::IsStbc | ( | void | ) | const |
Check if STBC is used or not.
Definition at line 72 of file wifi-tx-vector.cc.
References m_stbc.
Referenced by ns3::WifiPhy::GetPayloadDurationMicroSeconds(), and ns3::operator<<().
void ns3::WifiTxVector::SetMode | ( | WifiMode | mode | ) |
Sets the selected payload transmission mode.
mode |
Definition at line 78 of file wifi-tx-vector.cc.
References m_mode.
Referenced by ns3::dot11s::AirtimeLinkMetricCalculator::CalculateMetric(), ns3::TxDurationTest::CheckPayloadDuration(), ns3::TxDurationTest::CheckTxDuration(), ns3::WifiRemoteStationManager::GetAckTxVector(), ns3::WifiRemoteStationManager::GetBlockAckTxVector(), ns3::WifiRemoteStationManager::GetCtsTxVector(), ns3::WaveMacLow::GetDataTxVector(), ns3::WifiRemoteStationManager::GetDataTxVector(), CollisionExperiment::SendB(), ns3::MacLow::SendBlockAckResponse(), and ns3::MinstrelWifiManager::SetupPhy().
void ns3::WifiTxVector::SetNess | ( | uint8_t | ness | ) |
Sets the Ness number refer to IEEE802.11n Table 20-6 for explanation.
ness |
Definition at line 103 of file wifi-tx-vector.cc.
References m_ness.
Referenced by ns3::TxDurationTest::CheckTxDuration(), and ns3::WifiRemoteStationManager::GetDataTxVector().
void ns3::WifiTxVector::SetNss | ( | uint8_t | nss | ) |
Sets the number of Nss refer to IEEE802.11n Table 20-28 for explanation and range.
nss |
Definition at line 98 of file wifi-tx-vector.cc.
References m_nss.
Referenced by ns3::TxDurationTest::CheckTxDuration(), ns3::WifiRemoteStationManager::GetDataTxVector(), and ns3::MacLow::SendBlockAckResponse().
void ns3::WifiTxVector::SetRetries | ( | uint8_t | retries | ) |
Sets the number of retries.
retries |
Definition at line 88 of file wifi-tx-vector.cc.
References m_retries.
void ns3::WifiTxVector::SetShortGuardInterval | ( | bool | guardinterval | ) |
Sets if short gurad interval is being used.
guardinterval | enable or disable short guard interval |
Definition at line 93 of file wifi-tx-vector.cc.
References m_shortGuardInterval.
Referenced by ns3::WifiRemoteStationManager::GetDataTxVector().
void ns3::WifiTxVector::SetStbc | ( | bool | stbc | ) |
Sets if STBC is being used.
stbc | enable or disable STBC |
Definition at line 108 of file wifi-tx-vector.cc.
References m_stbc.
Referenced by ns3::TxDurationTest::CheckTxDuration(), ns3::WifiRemoteStationManager::GetDataTxVector(), and ns3::MacLow::SendBlockAckResponse().
void ns3::WifiTxVector::SetTxPowerLevel | ( | uint8_t | powerlevel | ) |
Sets the selected transmission power level.
powerlevel |
Definition at line 83 of file wifi-tx-vector.cc.
References m_txPowerLevel.
Referenced by ns3::WaveMacLow::GetDataTxVector(), ns3::WifiRemoteStationManager::GetDataTxVector(), PsrExperiment::Send(), CollisionExperiment::SendA(), and CollisionExperiment::SendB().
|
private |
The DATARATE parameter in Table 15-4.
It is the value that will be passed to PMD_RATE.request
Definition at line 139 of file wifi-tx-vector.h.
|
private |
Definition at line 149 of file wifi-tx-vector.h.
|
private |
Definition at line 148 of file wifi-tx-vector.h.
|
private |
The DATA_RETRIES/RTS_RETRIES parameter for Click radiotap information.
Definition at line 145 of file wifi-tx-vector.h.
Referenced by GetRetries(), and SetRetries().
|
private |
Definition at line 147 of file wifi-tx-vector.h.
Referenced by IsShortGuardInterval(), and SetShortGuardInterval().
|
private |
Definition at line 150 of file wifi-tx-vector.h.
|
private |
The TXPWR_LEVEL parameter in Table 15-4.
It is the value that will be passed to PMD_TXPWRLVL.request
Definition at line 142 of file wifi-tx-vector.h.
Referenced by GetTxPowerLevel(), and SetTxPowerLevel().