#include <amrr-wifi-manager.h>
Public Member Functions | |
AmrrWifiRemoteStation (Ptr< AmrrWifiManager > stations) | |
virtual | ~AmrrWifiRemoteStation () |
Protected Member Functions | |
virtual void | DoReportRxOk (double rxSnr, WifiMode txMode) |
virtual void | DoReportRtsFailed (void) |
virtual void | DoReportDataFailed (void) |
virtual void | DoReportRtsOk (double ctsSnr, WifiMode ctsMode, double rtsSnr) |
virtual void | DoReportDataOk (double ackSnr, WifiMode ackMode, double dataSnr) |
virtual void | DoReportFinalRtsFailed (void) |
virtual void | DoReportFinalDataFailed (void) |
Private Member Functions | |
virtual Ptr < WifiRemoteStationManager > | GetManager (void) const |
virtual WifiMode | DoGetDataMode (uint32_t size) |
virtual WifiMode | DoGetRtsMode (void) |
void | UpdateRetry (void) |
void | UpdateMode (void) |
void | ResetCnt (void) |
void | IncreaseRate (void) |
void | DecreaseRate (void) |
bool | IsMinRate (void) const |
bool | IsMaxRate (void) const |
bool | IsSuccess (void) const |
bool | IsFailure (void) const |
bool | IsEnough (void) const |
Private Attributes | |
Ptr< AmrrWifiManager > | m_stations |
Time | m_nextModeUpdate |
uint32_t | m_tx_ok |
uint32_t | m_tx_err |
uint32_t | m_tx_retr |
uint32_t | m_retry |
uint32_t | m_txrate |
uint32_t | m_successThreshold |
uint32_t | m_success |
bool | m_recovery |
Definition at line 56 of file amrr-wifi-manager.h.
ns3::AmrrWifiRemoteStation::AmrrWifiRemoteStation | ( | Ptr< AmrrWifiManager > | stations | ) |
Definition at line 76 of file amrr-wifi-manager.cc.
ns3::AmrrWifiRemoteStation::~AmrrWifiRemoteStation | ( | ) | [virtual] |
Definition at line 88 of file amrr-wifi-manager.cc.
void ns3::AmrrWifiRemoteStation::DecreaseRate | ( | void | ) | [private] |
Definition at line 161 of file amrr-wifi-manager.cc.
References m_txrate.
Referenced by UpdateMode().
WifiMode ns3::AmrrWifiRemoteStation::DoGetDataMode | ( | uint32_t | size | ) | [private, virtual] |
Implements ns3::WifiRemoteStation.
Definition at line 237 of file amrr-wifi-manager.cc.
References ns3::WifiRemoteStation::GetNSupportedModes(), ns3::WifiRemoteStation::GetSupportedMode(), m_retry, m_txrate, NS_ASSERT, and UpdateMode().
WifiMode ns3::AmrrWifiRemoteStation::DoGetRtsMode | ( | void | ) | [private, virtual] |
Implements ns3::WifiRemoteStation.
Definition at line 283 of file amrr-wifi-manager.cc.
References ns3::WifiRemoteStation::GetSupportedMode(), and UpdateMode().
void ns3::AmrrWifiRemoteStation::DoReportDataFailed | ( | void | ) | [protected, virtual] |
Implements ns3::WifiRemoteStation.
Definition at line 98 of file amrr-wifi-manager.cc.
void ns3::AmrrWifiRemoteStation::DoReportDataOk | ( | double | ackSnr, | |
WifiMode | ackMode, | |||
double | dataSnr | |||
) | [protected, virtual] |
Implements ns3::WifiRemoteStation.
Definition at line 107 of file amrr-wifi-manager.cc.
void ns3::AmrrWifiRemoteStation::DoReportFinalDataFailed | ( | void | ) | [protected, virtual] |
Implements ns3::WifiRemoteStation.
Definition at line 116 of file amrr-wifi-manager.cc.
void ns3::AmrrWifiRemoteStation::DoReportFinalRtsFailed | ( | void | ) | [protected, virtual] |
Implements ns3::WifiRemoteStation.
Definition at line 113 of file amrr-wifi-manager.cc.
void ns3::AmrrWifiRemoteStation::DoReportRtsFailed | ( | void | ) | [protected, virtual] |
Implements ns3::WifiRemoteStation.
Definition at line 95 of file amrr-wifi-manager.cc.
void ns3::AmrrWifiRemoteStation::DoReportRtsOk | ( | double | ctsSnr, | |
WifiMode | ctsMode, | |||
double | rtsSnr | |||
) | [protected, virtual] |
Implements ns3::WifiRemoteStation.
Definition at line 104 of file amrr-wifi-manager.cc.
void ns3::AmrrWifiRemoteStation::DoReportRxOk | ( | double | rxSnr, | |
WifiMode | txMode | |||
) | [protected, virtual] |
Implements ns3::WifiRemoteStation.
Definition at line 92 of file amrr-wifi-manager.cc.
Ptr< WifiRemoteStationManager > ns3::AmrrWifiRemoteStation::GetManager | ( | void | ) | const [private, virtual] |
Implements ns3::WifiRemoteStation.
Definition at line 232 of file amrr-wifi-manager.cc.
References m_stations.
void ns3::AmrrWifiRemoteStation::IncreaseRate | ( | void | ) | [private] |
Definition at line 155 of file amrr-wifi-manager.cc.
References ns3::WifiRemoteStation::GetNSupportedModes(), m_txrate, and NS_ASSERT.
Referenced by UpdateMode().
bool ns3::AmrrWifiRemoteStation::IsEnough | ( | void | ) | const [private] |
Definition at line 143 of file amrr-wifi-manager.cc.
References m_tx_err, m_tx_ok, and m_tx_retr.
Referenced by UpdateMode().
bool ns3::AmrrWifiRemoteStation::IsFailure | ( | void | ) | const [private] |
Definition at line 138 of file amrr-wifi-manager.cc.
References m_stations, m_tx_err, m_tx_ok, and m_tx_retr.
Referenced by UpdateMode().
bool ns3::AmrrWifiRemoteStation::IsMaxRate | ( | void | ) | const [private] |
Definition at line 127 of file amrr-wifi-manager.cc.
References ns3::WifiRemoteStation::GetNSupportedModes(), m_txrate, and NS_ASSERT.
Referenced by UpdateMode().
bool ns3::AmrrWifiRemoteStation::IsMinRate | ( | void | ) | const [private] |
Definition at line 122 of file amrr-wifi-manager.cc.
References m_txrate.
Referenced by UpdateMode().
bool ns3::AmrrWifiRemoteStation::IsSuccess | ( | void | ) | const [private] |
Definition at line 133 of file amrr-wifi-manager.cc.
References m_stations, m_tx_err, m_tx_ok, and m_tx_retr.
Referenced by UpdateMode().
void ns3::AmrrWifiRemoteStation::ResetCnt | ( | void | ) | [private] |
Definition at line 148 of file amrr-wifi-manager.cc.
References m_tx_err, m_tx_ok, and m_tx_retr.
Referenced by UpdateMode().
void ns3::AmrrWifiRemoteStation::UpdateMode | ( | void | ) | [private] |
Definition at line 167 of file amrr-wifi-manager.cc.
References DecreaseRate(), ns3::WifiRemoteStation::GetNSupportedModes(), IncreaseRate(), IsEnough(), IsFailure(), IsMaxRate(), IsMinRate(), IsSuccess(), m_nextModeUpdate, m_recovery, m_stations, m_success, m_successThreshold, m_tx_err, m_tx_ok, m_tx_retr, m_txrate, ns3::Now(), ns3::Simulator::Now(), NS_LOG_DEBUG, and ResetCnt().
Referenced by DoGetDataMode(), and DoGetRtsMode().
void ns3::AmrrWifiRemoteStation::UpdateRetry | ( | void | ) | [private] |
Definition at line 89 of file amrr-wifi-manager.h.
Referenced by UpdateMode().
bool ns3::AmrrWifiRemoteStation::m_recovery [private] |
Definition at line 97 of file amrr-wifi-manager.h.
Referenced by UpdateMode().
uint32_t ns3::AmrrWifiRemoteStation::m_retry [private] |
Definition at line 93 of file amrr-wifi-manager.h.
Referenced by DoGetDataMode(), DoReportDataFailed(), DoReportDataOk(), and DoReportFinalDataFailed().
Definition at line 88 of file amrr-wifi-manager.h.
Referenced by GetManager(), IsFailure(), IsSuccess(), and UpdateMode().
uint32_t ns3::AmrrWifiRemoteStation::m_success [private] |
Definition at line 96 of file amrr-wifi-manager.h.
Referenced by UpdateMode().
uint32_t ns3::AmrrWifiRemoteStation::m_successThreshold [private] |
Definition at line 95 of file amrr-wifi-manager.h.
Referenced by UpdateMode().
uint32_t ns3::AmrrWifiRemoteStation::m_tx_err [private] |
Definition at line 91 of file amrr-wifi-manager.h.
Referenced by DoReportFinalDataFailed(), IsEnough(), IsFailure(), IsSuccess(), ResetCnt(), and UpdateMode().
uint32_t ns3::AmrrWifiRemoteStation::m_tx_ok [private] |
Definition at line 90 of file amrr-wifi-manager.h.
Referenced by DoReportDataOk(), IsEnough(), IsFailure(), IsSuccess(), ResetCnt(), and UpdateMode().
uint32_t ns3::AmrrWifiRemoteStation::m_tx_retr [private] |
Definition at line 92 of file amrr-wifi-manager.h.
Referenced by DoReportDataFailed(), IsEnough(), IsFailure(), IsSuccess(), ResetCnt(), and UpdateMode().
uint32_t ns3::AmrrWifiRemoteStation::m_txrate [private] |
Definition at line 94 of file amrr-wifi-manager.h.
Referenced by DecreaseRate(), DoGetDataMode(), IncreaseRate(), IsMaxRate(), IsMinRate(), and UpdateMode().