src/wifi/model/ideal-wifi-manager.cc
changeset 10139 17a71cd49da3
parent 9063 32755d0516f4
child 10410 4d4eb8097fa3
--- a/src/wifi/model/ideal-wifi-manager.cc	Tue Aug 13 10:37:49 2013 -0700
+++ b/src/wifi/model/ideal-wifi-manager.cc	Tue Aug 13 22:05:25 2013 -0700
@@ -17,13 +17,14 @@
  *
  * Author: Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
  */
-
 #include "ideal-wifi-manager.h"
 #include "wifi-phy.h"
 #include "ns3/assert.h"
 #include "ns3/double.h"
 #include <cmath>
 
+#define Min(a,b) ((a < b) ? a : b)
+
 namespace ns3 {
 
 struct IdealWifiRemoteStation : public WifiRemoteStation
@@ -133,8 +134,8 @@
 {
 }
 
-WifiMode
-IdealWifiManager::DoGetDataMode (WifiRemoteStation *st, uint32_t size)
+WifiTxVector
+IdealWifiManager::DoGetDataTxVector (WifiRemoteStation *st, uint32_t size)
 {
   IdealWifiRemoteStation *station = (IdealWifiRemoteStation *)st;
   // We search within the Supported rate set the mode with the
@@ -153,10 +154,10 @@
           maxMode = mode;
         }
     }
-  return maxMode;
+  return WifiTxVector (maxMode, GetDefaultTxPowerLevel (), GetLongRetryCount (station), GetShortGuardInterval (station), Min (GetNumberOfReceiveAntennas (station),GetNumberOfTransmitAntennas()), GetNumberOfTransmitAntennas (station), GetStbc (station));
 }
-WifiMode
-IdealWifiManager::DoGetRtsMode (WifiRemoteStation *st)
+WifiTxVector
+IdealWifiManager::DoGetRtsTxVector (WifiRemoteStation *st)
 {
   IdealWifiRemoteStation *station = (IdealWifiRemoteStation *)st;
   // We search within the Basic rate set the mode with the highest
@@ -175,7 +176,7 @@
           maxMode = mode;
         }
     }
-  return maxMode;
+  return WifiTxVector (maxMode, GetDefaultTxPowerLevel (), GetShortRetryCount (station), GetShortGuardInterval (station), Min (GetNumberOfReceiveAntennas (station),GetNumberOfTransmitAntennas()), GetNumberOfTransmitAntennas (station), GetStbc (station));
 }
 
 bool