src/wifi/test/wifi-phy-test.cc
changeset 7141 072fb225b714
parent 6852 8f1a53d3f6ca
child 7252 c8200621e252
--- a/src/wifi/test/wifi-phy-test.cc	Fri May 06 13:21:20 2011 -0700
+++ b/src/wifi/test/wifi-phy-test.cc	Sat May 07 21:49:46 2011 +0200
@@ -3,7 +3,7 @@
  * Copyright (c) 2005,2006 INRIA
  *
  * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License version 2 as 
+ * it under the terms of the GNU General Public License version 2 as
  * published by the Free Software Foundation;
  *
  * This program is distributed in the hope that it will be useful,
@@ -64,7 +64,7 @@
   struct Output m_output;
 };
 
-void 
+void
 PsrExperiment::Send (void)
 {
   Ptr<Packet> p = Create<Packet> (m_input.packetSize);
@@ -72,21 +72,23 @@
   m_tx->SendPacket (p, mode, WIFI_PREAMBLE_SHORT, m_input.txPowerLevel);
 }
 
-void 
+void
 PsrExperiment::Receive (Ptr<Packet> p, double snr, WifiMode mode, enum WifiPreamble preamble)
 {
   m_output.received++;
 }
 
 PsrExperiment::PsrExperiment ()
-{}
+{
+}
 PsrExperiment::Input::Input ()
   : distance (5.0),
     txMode ("OfdmRate6Mbps"),
     txPowerLevel (0),
     packetSize (2304),
     nPackets (400)
-{}
+{
+}
 
 struct PsrExperiment::Output
 PsrExperiment::Run (struct PsrExperiment::Input input)
@@ -163,25 +165,25 @@
   struct Output m_output;
 };
 
-void 
+void
 CollisionExperiment::SendA (void) const
 {
   Ptr<Packet> p = Create<Packet> (m_input.packetSizeA);
   p->AddByteTag (FlowIdTag (m_flowIdA));
-  m_txA->SendPacket (p, WifiMode (m_input.txModeA), 
-		     WIFI_PREAMBLE_SHORT, m_input.txPowerLevelA);
+  m_txA->SendPacket (p, WifiMode (m_input.txModeA),
+                     WIFI_PREAMBLE_SHORT, m_input.txPowerLevelA);
 }
 
-void 
+void
 CollisionExperiment::SendB (void) const
 {
   Ptr<Packet> p = Create<Packet> (m_input.packetSizeB);
   p->AddByteTag (FlowIdTag (m_flowIdB));
-  m_txB->SendPacket (p, WifiMode (m_input.txModeB), 
-		     WIFI_PREAMBLE_SHORT, m_input.txPowerLevelB);
+  m_txB->SendPacket (p, WifiMode (m_input.txModeB),
+                     WIFI_PREAMBLE_SHORT, m_input.txPowerLevelB);
 }
 
-void 
+void
 CollisionExperiment::Receive (Ptr<Packet> p, double snr, WifiMode mode, enum WifiPreamble preamble)
 {
   FlowIdTag tag;
@@ -197,7 +199,8 @@
 }
 
 CollisionExperiment::CollisionExperiment ()
-{}
+{
+}
 CollisionExperiment::Input::Input ()
   : interval (MicroSeconds (0)),
     xA (-5),
@@ -209,7 +212,8 @@
     packetSizeA (2304),
     packetSizeB (2304),
     nPackets (400)
-{}
+{
+}
 
 struct CollisionExperiment::Output
 CollisionExperiment::Run (struct CollisionExperiment::Input input)
@@ -284,7 +288,7 @@
 
   double psr = output.received;
   psr /= input.nPackets ;
-  
+
   std::cout << psr << std::endl;
 }
 
@@ -299,7 +303,7 @@
 {
   struct PsrExperiment::Input input;
   CommandLine cmd;
-  cmd.AddValue ("TxPowerLevel", "The power level index to use to send each packet", input.txPowerLevel);  
+  cmd.AddValue ("TxPowerLevel", "The power level index to use to send each packet", input.txPowerLevel);
   cmd.AddValue ("TxMode", "The mode to use to send each packet", input.txMode);
   cmd.AddValue ("NPackets", "The number of packets to send", input.nPackets);
   cmd.AddValue ("PacketSize", "The size of each packet sent", input.packetSize);
@@ -313,7 +317,7 @@
       input.txMode = "OfdmRate6Mbps";
       output = experiment.Run (input);
       std::cout << " " << CalcPsr (output, input);
-    
+
       input.txMode = "OfdmRate9Mbps";
       output = experiment.Run (input);
       std::cout << " " << CalcPsr (output, input);
@@ -351,7 +355,7 @@
   double targetPsr = 0.05;
   struct PsrExperiment::Input input;
   CommandLine cmd;
-  cmd.AddValue ("TxPowerLevel", "The power level index to use to send each packet", input.txPowerLevel);  
+  cmd.AddValue ("TxPowerLevel", "The power level index to use to send each packet", input.txPowerLevel);
   cmd.AddValue ("TxMode", "The mode to use to send each packet", input.txMode);
   cmd.AddValue ("NPackets", "The number of packets to send", input.nPackets);
   cmd.AddValue ("TargetPsr", "The psr needed to assume that we are within range", targetPsr);
@@ -362,22 +366,22 @@
       double low = 1.0;
       double high = 200.0;
       while (high - low > precision)
-	{
-	  double middle = low + (high - low) / 2;
-	  struct PsrExperiment::Output output;
-	  PsrExperiment experiment;
-	  input.distance = middle;
-	  output = experiment.Run (input);
-	  double psr = CalcPsr (output, input);
-	  if (psr >= targetPsr)
-	    {
-	      low = middle;
-	    }
-	  else
-	    {
-	      high = middle;
-	    }
-	}
+        {
+          double middle = low + (high - low) / 2;
+          struct PsrExperiment::Output output;
+          PsrExperiment experiment;
+          input.distance = middle;
+          output = experiment.Run (input);
+          double psr = CalcPsr (output, input);
+          if (psr >= targetPsr)
+            {
+              low = middle;
+            }
+          else
+            {
+              high = middle;
+            }
+        }
       std::cout << input.packetSize << " " << input.distance << std::endl;
     }
 }
@@ -396,8 +400,8 @@
       CollisionExperiment::Output output;
       input.interval = MicroSeconds (i);
       output = experiment.Run (input);
-      double perA = (output.receivedA+0.0) / (input.nPackets+0.0);
-      double perB = (output.receivedB+0.0) / (input.nPackets+0.0);
+      double perA = (output.receivedA + 0.0) / (input.nPackets + 0.0);
+      double perB = (output.receivedB + 0.0) / (input.nPackets + 0.0);
       std::cout << i << " " << perA << " " << perB << std::endl;
     }
   for (uint32_t i = 100; i < 4000; i += 50)
@@ -406,8 +410,8 @@
       CollisionExperiment::Output output;
       input.interval = MicroSeconds (i);
       output = experiment.Run (input);
-      double perA = (output.receivedA+0.0) / (input.nPackets+0.0);
-      double perB = (output.receivedB+0.0) / (input.nPackets+0.0);
+      double perA = (output.receivedA + 0.0) / (input.nPackets + 0.0);
+      double perB = (output.receivedB + 0.0) / (input.nPackets + 0.0);
       std::cout << i << " " << perA << " " << perB << std::endl;
     }
 }
@@ -419,11 +423,11 @@
   if (argc <= 1)
     {
       std::cout << "Available experiments: "
-		<< "Psr "
-		<< "SizeVsRange "
-		<< "PsrVsDistance "
-		<< "PsrVsCollisionInterval "
-		<< std::endl;
+                << "Psr "
+                << "SizeVsRange "
+                << "PsrVsDistance "
+                << "PsrVsCollisionInterval "
+                << std::endl;
       return -1;
     }
   std::string type = argv[1];