remove public static variables. Use public static methods
This commit is contained in:
@@ -224,11 +224,11 @@ InterferenceHelper::Configure80211aParameters (void)
|
||||
m_80211a = true;
|
||||
m_plcpLongPreambleDelayUs = 16;
|
||||
m_plcpShortPreambleDelayUs = 16;
|
||||
m_longPlcpHeaderMode = WifiPhy::g_6mba;
|
||||
m_shortPlcpHeaderMode = WifiPhy::g_6mba;
|
||||
m_longPlcpHeaderMode = WifiPhy::Get6mba ();
|
||||
m_shortPlcpHeaderMode = WifiPhy::Get6mba ();
|
||||
m_plcpHeaderLength = 4 + 1 + 12 + 1 + 6;
|
||||
/* 4095 bytes at a 6Mb/s rate with a 1/2 coding rate. */
|
||||
m_maxPacketDuration = CalculateTxDuration (4095, WifiPhy::g_6mba, WIFI_PREAMBLE_LONG);
|
||||
m_maxPacketDuration = CalculateTxDuration (4095, WifiPhy::Get6mba (), WIFI_PREAMBLE_LONG);
|
||||
}
|
||||
|
||||
void
|
||||
|
||||
@@ -37,34 +37,6 @@ NS_LOG_COMPONENT_DEFINE ("WifiPhy");
|
||||
|
||||
namespace ns3 {
|
||||
|
||||
// Define all the WifiMode needed for 802.11a
|
||||
WifiMode WifiPhy::g_6mba = WifiModeFactory::CreateBpsk ("wifia-6mbs",
|
||||
true,
|
||||
20000000, 6000000, 12000000);
|
||||
WifiMode WifiPhy::g_9mba = WifiModeFactory::CreateBpsk ("wifia-9mbs",
|
||||
false,
|
||||
20000000, 9000000, 12000000);
|
||||
// XXX explain why Bpsk rather than Qpsk
|
||||
WifiMode WifiPhy::g_12mba = WifiModeFactory::CreateBpsk ("wifia-12mbs",
|
||||
true,
|
||||
20000000, 12000000, 24000000);
|
||||
WifiMode WifiPhy::g_18mba = WifiModeFactory::CreateBpsk ("wifia-18mbs",
|
||||
false,
|
||||
20000000, 18000000, 24000000);
|
||||
WifiMode WifiPhy::g_24mba = WifiModeFactory::CreateBpsk ("wifia-24mbs",
|
||||
true,
|
||||
20000000, 24000000, 48000000);
|
||||
WifiMode WifiPhy::g_36mba = WifiModeFactory::CreateBpsk ("wifia-36mbs",
|
||||
false,
|
||||
20000000, 36000000, 48000000);
|
||||
WifiMode WifiPhy::g_48mba = WifiModeFactory::CreateBpsk ("wifia-48mbs",
|
||||
false,
|
||||
20000000, 48000000, 72000000);
|
||||
WifiMode WifiPhy::g_54mba = WifiModeFactory::CreateBpsk ("wifia-54mbs",
|
||||
false,
|
||||
20000000, 54000000, 72000000);
|
||||
|
||||
|
||||
/****************************************************************
|
||||
* This destructor is needed.
|
||||
****************************************************************/
|
||||
@@ -97,4 +69,71 @@ WifiPhy::~WifiPhy ()
|
||||
NS_LOG_FUNCTION (this);
|
||||
}
|
||||
|
||||
WifiMode
|
||||
WifiPhy::Get6mba (void)
|
||||
{
|
||||
static WifiMode mode = WifiModeFactory::CreateBpsk ("wifia-6mbs",
|
||||
true,
|
||||
20000000, 6000000, 12000000);
|
||||
return mode;
|
||||
}
|
||||
WifiMode
|
||||
WifiPhy::Get9mba (void)
|
||||
{
|
||||
static WifiMode mode = WifiModeFactory::CreateBpsk ("wifia-9mbs",
|
||||
false,
|
||||
20000000, 9000000, 12000000);
|
||||
return mode;
|
||||
}
|
||||
WifiMode
|
||||
WifiPhy::Get12mba (void)
|
||||
{
|
||||
static WifiMode mode = WifiModeFactory::CreateBpsk ("wifia-12mbs",
|
||||
true,
|
||||
20000000, 12000000, 24000000);
|
||||
return mode;
|
||||
}
|
||||
WifiMode
|
||||
WifiPhy::Get18mba (void)
|
||||
{
|
||||
static WifiMode mode = WifiModeFactory::CreateBpsk ("wifia-18mbs",
|
||||
false,
|
||||
20000000, 18000000, 24000000);
|
||||
return mode;
|
||||
}
|
||||
WifiMode
|
||||
WifiPhy::Get24mba (void)
|
||||
{
|
||||
static WifiMode mode = WifiModeFactory::CreateBpsk ("wifia-24mbs",
|
||||
true,
|
||||
20000000, 24000000, 48000000);
|
||||
return mode;
|
||||
}
|
||||
WifiMode
|
||||
WifiPhy::Get36mba (void)
|
||||
{
|
||||
static WifiMode mode = WifiModeFactory::CreateBpsk ("wifia-36mbs",
|
||||
false,
|
||||
20000000, 36000000, 48000000);
|
||||
return mode;
|
||||
}
|
||||
|
||||
WifiMode
|
||||
WifiPhy::Get48mba (void)
|
||||
{
|
||||
static WifiMode mode = WifiModeFactory::CreateBpsk ("wifia-48mbs",
|
||||
false,
|
||||
20000000, 48000000, 72000000);
|
||||
return mode;
|
||||
}
|
||||
|
||||
WifiMode
|
||||
WifiPhy::Get54mba (void)
|
||||
{
|
||||
static WifiMode mode = WifiModeFactory::CreateBpsk ("wifia-54mbs",
|
||||
false,
|
||||
20000000, 54000000, 72000000);
|
||||
return mode;
|
||||
}
|
||||
|
||||
} // namespace ns3
|
||||
|
||||
@@ -242,14 +242,14 @@ public:
|
||||
|
||||
virtual Ptr<WifiChannel> GetChannel (void) const = 0;
|
||||
|
||||
static WifiMode g_6mba;
|
||||
static WifiMode g_9mba;
|
||||
static WifiMode g_12mba;
|
||||
static WifiMode g_18mba;
|
||||
static WifiMode g_24mba;
|
||||
static WifiMode g_36mba;
|
||||
static WifiMode g_48mba;
|
||||
static WifiMode g_54mba;
|
||||
static WifiMode Get6mba (void);
|
||||
static WifiMode Get9mba (void);
|
||||
static WifiMode Get12mba (void);
|
||||
static WifiMode Get18mba (void);
|
||||
static WifiMode Get24mba (void);
|
||||
static WifiMode Get36mba (void);
|
||||
static WifiMode Get48mba (void);
|
||||
static WifiMode Get54mba (void);
|
||||
};
|
||||
|
||||
} // namespace ns3
|
||||
|
||||
@@ -171,7 +171,7 @@ YansErrorRateModel::GetFecQamBer (double snr, uint32_t nbits,
|
||||
double
|
||||
YansErrorRateModel::GetChunkSuccessRate (WifiMode mode, double snr, uint32_t nbits) const
|
||||
{
|
||||
if (mode == WifiPhy::g_6mba)
|
||||
if (mode == WifiPhy::Get6mba ())
|
||||
{
|
||||
return GetFecBpskBer (snr,
|
||||
nbits,
|
||||
@@ -181,7 +181,7 @@ YansErrorRateModel::GetChunkSuccessRate (WifiMode mode, double snr, uint32_t nbi
|
||||
11 // adFree
|
||||
);
|
||||
}
|
||||
else if (mode == WifiPhy::g_9mba)
|
||||
else if (mode == WifiPhy::Get9mba ())
|
||||
{
|
||||
return GetFecBpskBer (snr,
|
||||
nbits,
|
||||
@@ -191,7 +191,7 @@ YansErrorRateModel::GetChunkSuccessRate (WifiMode mode, double snr, uint32_t nbi
|
||||
8 // adFree
|
||||
);
|
||||
}
|
||||
else if (mode == WifiPhy::g_12mba)
|
||||
else if (mode == WifiPhy::Get12mba ())
|
||||
{
|
||||
return GetFecQamBer (snr,
|
||||
nbits,
|
||||
@@ -203,7 +203,7 @@ YansErrorRateModel::GetChunkSuccessRate (WifiMode mode, double snr, uint32_t nbi
|
||||
0 // adFreePlusOne
|
||||
);
|
||||
}
|
||||
else if (mode == WifiPhy::g_18mba)
|
||||
else if (mode == WifiPhy::Get18mba ())
|
||||
{
|
||||
return GetFecQamBer (snr,
|
||||
nbits,
|
||||
@@ -215,7 +215,7 @@ YansErrorRateModel::GetChunkSuccessRate (WifiMode mode, double snr, uint32_t nbi
|
||||
31 // adFreePlusOne
|
||||
);
|
||||
}
|
||||
else if (mode == WifiPhy::g_24mba)
|
||||
else if (mode == WifiPhy::Get24mba ())
|
||||
{
|
||||
return GetFecQamBer (snr,
|
||||
nbits,
|
||||
@@ -227,7 +227,7 @@ YansErrorRateModel::GetChunkSuccessRate (WifiMode mode, double snr, uint32_t nbi
|
||||
0 // adFreePlusOne
|
||||
);
|
||||
}
|
||||
else if (mode == WifiPhy::g_36mba)
|
||||
else if (mode == WifiPhy::Get36mba ())
|
||||
{
|
||||
return GetFecQamBer (snr,
|
||||
nbits,
|
||||
@@ -239,7 +239,7 @@ YansErrorRateModel::GetChunkSuccessRate (WifiMode mode, double snr, uint32_t nbi
|
||||
31 // adFreePlusOne
|
||||
);
|
||||
}
|
||||
else if (mode == WifiPhy::g_48mba)
|
||||
else if (mode == WifiPhy::Get48mba ())
|
||||
{
|
||||
return GetFecQamBer (snr,
|
||||
nbits,
|
||||
@@ -251,7 +251,7 @@ YansErrorRateModel::GetChunkSuccessRate (WifiMode mode, double snr, uint32_t nbi
|
||||
16 // adFreePlusOne
|
||||
);
|
||||
}
|
||||
else if (mode == WifiPhy::g_54mba)
|
||||
else if (mode == WifiPhy::Get54mba ())
|
||||
{
|
||||
return GetFecQamBer (snr,
|
||||
nbits,
|
||||
|
||||
@@ -416,14 +416,14 @@ YansWifiPhy::Configure80211a (void)
|
||||
{
|
||||
NS_LOG_FUNCTION (this);
|
||||
m_interference.Configure80211aParameters ();
|
||||
m_modes.push_back (g_6mba);
|
||||
m_modes.push_back (g_9mba);
|
||||
m_modes.push_back (g_12mba);
|
||||
m_modes.push_back (g_18mba);
|
||||
m_modes.push_back (g_24mba);
|
||||
m_modes.push_back (g_36mba);
|
||||
m_modes.push_back (g_48mba);
|
||||
m_modes.push_back (g_54mba);
|
||||
m_modes.push_back (WifiPhy::Get6mba ());
|
||||
m_modes.push_back (WifiPhy::Get9mba ());
|
||||
m_modes.push_back (WifiPhy::Get12mba ());
|
||||
m_modes.push_back (WifiPhy::Get18mba ());
|
||||
m_modes.push_back (WifiPhy::Get24mba ());
|
||||
m_modes.push_back (WifiPhy::Get36mba ());
|
||||
m_modes.push_back (WifiPhy::Get48mba ());
|
||||
m_modes.push_back (WifiPhy::Get54mba ());
|
||||
}
|
||||
|
||||
void
|
||||
@@ -431,11 +431,11 @@ YansWifiPhy::ConfigureHolland (void)
|
||||
{
|
||||
NS_LOG_FUNCTION (this);
|
||||
m_interference.Configure80211aParameters ();
|
||||
m_modes.push_back (g_6mba);
|
||||
m_modes.push_back (g_12mba);
|
||||
m_modes.push_back (g_18mba);
|
||||
m_modes.push_back (g_36mba);
|
||||
m_modes.push_back (g_54mba);
|
||||
m_modes.push_back (WifiPhy::Get6mba ());
|
||||
m_modes.push_back (WifiPhy::Get12mba ());
|
||||
m_modes.push_back (WifiPhy::Get18mba ());
|
||||
m_modes.push_back (WifiPhy::Get36mba ());
|
||||
m_modes.push_back (WifiPhy::Get54mba ());
|
||||
}
|
||||
|
||||
void
|
||||
|
||||
Reference in New Issue
Block a user