--- a/src/devices/wifi/wifi-remote-station-manager.cc Thu Apr 16 11:10:27 2009 +0200
+++ b/src/devices/wifi/wifi-remote-station-manager.cc Thu Apr 16 11:17:31 2009 +0200
@@ -97,7 +97,7 @@
WifiMode
NonUnicastWifiRemoteStation::DoGetDataMode (uint32_t size)
{
- WifiMode mode = m_stations->GetBasicMode (0);
+ WifiMode mode = m_stations->GetNonUnicastMode ();
NS_LOG_DEBUG ("non-unicast size="<<size<<", mode="<<mode);
return mode;
}
@@ -155,6 +155,10 @@
UintegerValue (1500),
MakeUintegerAccessor (&WifiRemoteStationManager::m_fragmentationThreshold),
MakeUintegerChecker<uint32_t> ())
+ .AddAttribute ("NonUnicastMode", "Wifi mode used for non-unicast transmissions.",
+ WifiModeValue (),
+ MakeWifiModeAccessor (&WifiRemoteStationManager::m_nonUnicastMode),
+ MakeWifiModeChecker ())
;
return tid;
}
@@ -305,6 +309,14 @@
{
return m_isLowLatency;
}
+WifiMode
+WifiRemoteStationManager::GetNonUnicastMode (void) const
+{
+ if (m_nonUnicastMode == WifiMode ())
+ return GetBasicMode(0);
+ else
+ return m_nonUnicastMode;
+}
} // namespace ns3