src/devices/wifi/propagation-loss-model.h
changeset 1959 f64684973ea8
parent 1882 061f7f7f9992
child 1985 623a90f3fe07
--- a/src/devices/wifi/propagation-loss-model.h	Thu Oct 11 16:16:14 2007 +0200
+++ b/src/devices/wifi/propagation-loss-model.h	Thu Oct 11 16:16:31 2007 +0200
@@ -5,12 +5,29 @@
 
 namespace ns3 {
 
+class RandomVariable;
+
 class PropagationLossModel : public Object
 {
 public:
   virtual ~PropagationLossModel ();
   virtual double GetRxPower (double txPowerDbm,
 			     double distance) const = 0;
+
+  static Ptr<PropagationLossModel> CreateDefault (void);
+};
+
+class RandomPropagationLossModel : public PropagationLossModel
+{
+public:
+  RandomPropagationLossModel ();
+  RandomPropagationLossModel (const RandomVariable &variable);
+  virtual ~RandomPropagationLossModel ();
+
+  virtual double GetRxPower (double txPowerDbm,
+			     double distance) const;
+private:
+  RandomVariable *m_variable;
 };
 
 class FriisPropagationLossModel : public PropagationLossModel
@@ -48,8 +65,8 @@
 			     double distance) const;
 private:
   double DbToW (double db) const;
+  static Ptr<PropagationLossModel> CreateDefaultReference (void);
 
-  double m_lambda;
   double m_exponent;
   Ptr<PropagationLossModel> m_reference;
 };