From 5846c0fc2a8170ccbe84c46a70b648bc0fdbead9 Mon Sep 17 00:00:00 2001 From: Mathieu Lacage Date: Fri, 17 Apr 2009 11:43:14 +0200 Subject: [PATCH] handle rts somewhat better --- src/devices/wifi/aarfcd-wifi-manager.cc | 2 +- src/devices/wifi/aarfcd-wifi-manager.h | 2 +- src/devices/wifi/cara-wifi-manager.cc | 2 +- src/devices/wifi/cara-wifi-manager.h | 3 ++- 4 files changed, 5 insertions(+), 4 deletions(-) diff --git a/src/devices/wifi/aarfcd-wifi-manager.cc b/src/devices/wifi/aarfcd-wifi-manager.cc index 602583a40..6048e6224 100644 --- a/src/devices/wifi/aarfcd-wifi-manager.cc +++ b/src/devices/wifi/aarfcd-wifi-manager.cc @@ -327,7 +327,7 @@ AarfcdWifiRemoteStation::ResetRtsWnd (void) } bool -AarfcdWifiRemoteStation::DoNeedRts (Ptr packet) +AarfcdWifiRemoteStation::NeedRts (Ptr packet) { //printf ("%.9f %p NeedRts %d %d\n",Simulator::Now ().GetSeconds (),this,m_rate,(m_rtsOn?1:0)); NS_LOG_INFO ("" << this << " rate=" << m_rate << " rts=" << (m_rtsOn?"RTS":"BASIC") << " rtsCounter=" << m_rtsCounter); diff --git a/src/devices/wifi/aarfcd-wifi-manager.h b/src/devices/wifi/aarfcd-wifi-manager.h index fb287c308..f95d45356 100644 --- a/src/devices/wifi/aarfcd-wifi-manager.h +++ b/src/devices/wifi/aarfcd-wifi-manager.h @@ -70,10 +70,10 @@ private: virtual void DoReportDataOk (double ackSnr, WifiMode ackMode, double dataSnr); virtual void DoReportFinalRtsFailed (void); virtual void DoReportFinalDataFailed (void); - virtual bool DoNeedRts (Ptr packet); virtual Ptr GetManager (void) const; virtual WifiMode DoGetDataMode (uint32_t size); virtual WifiMode DoGetRtsMode (void); + virtual bool NeedRts (Ptr packet); void ReportRecoveryFailure (void); void ReportFailure (void); diff --git a/src/devices/wifi/cara-wifi-manager.cc b/src/devices/wifi/cara-wifi-manager.cc index d8d73f44c..df11efa70 100644 --- a/src/devices/wifi/cara-wifi-manager.cc +++ b/src/devices/wifi/cara-wifi-manager.cc @@ -133,7 +133,7 @@ CaraWifiRemoteStation::GetManager (void) const } bool -CaraWifiRemoteStation::DoNeedRts (Ptr packet) +CaraWifiRemoteStation::NeedRts (Ptr packet) { bool rts = WifiRemoteStation::NeedRts (packet); if (rts || m_failed >= m_manager->m_probeThreshold) diff --git a/src/devices/wifi/cara-wifi-manager.h b/src/devices/wifi/cara-wifi-manager.h index ab3c41fa2..0e47348e6 100644 --- a/src/devices/wifi/cara-wifi-manager.h +++ b/src/devices/wifi/cara-wifi-manager.h @@ -66,10 +66,11 @@ private: virtual void DoReportFinalRtsFailed (void); virtual void DoReportFinalDataFailed (void); virtual void DoReportRxOk (double rxSnr, WifiMode txMode); - virtual bool DoNeedRts (Ptr packet); virtual WifiMode DoGetDataMode (uint32_t size); virtual WifiMode DoGetRtsMode (void); + virtual bool NeedRts (Ptr packet); + uint32_t m_timer; uint32_t m_success; uint32_t m_failed;