wifi: Reduce function calls in GetMcsForMode
This commit is contained in:
@@ -85,54 +85,58 @@ uint8_t
|
||||
TableBasedErrorRateModel::GetMcsForMode (WifiMode mode)
|
||||
{
|
||||
uint8_t mcs = 0xff; // Initialize to invalid mcs
|
||||
if (mode.GetModulationClass () == WIFI_MOD_CLASS_OFDM || mode.GetModulationClass () == WIFI_MOD_CLASS_ERP_OFDM)
|
||||
WifiModulationClass modulationClass = mode.GetModulationClass ();
|
||||
WifiCodeRate codeRate = mode.GetCodeRate ();
|
||||
uint16_t constellationSize = mode.GetConstellationSize ();
|
||||
|
||||
if (modulationClass == WIFI_MOD_CLASS_OFDM || modulationClass == WIFI_MOD_CLASS_ERP_OFDM)
|
||||
{
|
||||
if (mode.GetConstellationSize () == 2)
|
||||
if (constellationSize == 2)
|
||||
{
|
||||
if (mode.GetCodeRate () == WIFI_CODE_RATE_1_2)
|
||||
if (codeRate == WIFI_CODE_RATE_1_2)
|
||||
{
|
||||
mcs = 0;
|
||||
}
|
||||
if (mode.GetCodeRate () == WIFI_CODE_RATE_3_4)
|
||||
if (codeRate == WIFI_CODE_RATE_3_4)
|
||||
{
|
||||
mcs = 1;
|
||||
}
|
||||
}
|
||||
else if (mode.GetConstellationSize () == 4)
|
||||
else if (constellationSize == 4)
|
||||
{
|
||||
if (mode.GetCodeRate () == WIFI_CODE_RATE_1_2)
|
||||
if (codeRate == WIFI_CODE_RATE_1_2)
|
||||
{
|
||||
mcs = 2;
|
||||
}
|
||||
else if (mode.GetCodeRate () == WIFI_CODE_RATE_3_4)
|
||||
else if (codeRate == WIFI_CODE_RATE_3_4)
|
||||
{
|
||||
mcs = 3;
|
||||
}
|
||||
}
|
||||
else if (mode.GetConstellationSize () == 16)
|
||||
else if (constellationSize == 16)
|
||||
{
|
||||
if (mode.GetCodeRate () == WIFI_CODE_RATE_1_2)
|
||||
if (codeRate == WIFI_CODE_RATE_1_2)
|
||||
{
|
||||
mcs = 4;
|
||||
}
|
||||
else if (mode.GetCodeRate () == WIFI_CODE_RATE_3_4)
|
||||
else if (codeRate == WIFI_CODE_RATE_3_4)
|
||||
{
|
||||
mcs = 5;
|
||||
}
|
||||
}
|
||||
else if (mode.GetConstellationSize () == 64)
|
||||
else if (constellationSize == 64)
|
||||
{
|
||||
if (mode.GetCodeRate () == WIFI_CODE_RATE_2_3)
|
||||
if (codeRate == WIFI_CODE_RATE_2_3)
|
||||
{
|
||||
mcs = 6;
|
||||
}
|
||||
else if (mode.GetCodeRate () == WIFI_CODE_RATE_3_4)
|
||||
else if (codeRate == WIFI_CODE_RATE_3_4)
|
||||
{
|
||||
mcs = 7;
|
||||
}
|
||||
}
|
||||
}
|
||||
else if (mode.GetModulationClass () >= WIFI_MOD_CLASS_HT)
|
||||
else if (modulationClass >= WIFI_MOD_CLASS_HT)
|
||||
{
|
||||
mcs = mode.GetMcsValue ();
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user