Refactored code to walk multiple runs

This commit is contained in:
2019-10-08 16:46:22 +02:00
parent 08be3e9af5
commit 8236069094
7 changed files with 130 additions and 78 deletions

View File

@@ -48,15 +48,21 @@ struct CombinedStats {
Stats::Statistics<T> rssi;
};
template<typename T>
void printErrorStats(std::ostream& stream, const CombinedStats<T>& errorStats)
{
stream << "Walk error:" << "\n";
stream << "[m] " << std::setw(10) << "mean" << std::setw(10) << "stdDev" << std::setw(10) << "median" << "\n";
stream << "FTM " << std::setw(10) << errorStats.ftm.getAvg() << std::setw(10) << errorStats.ftm.getStdDev() << std::setw(10) << errorStats.ftm.getMedian() << "\n";
stream << "RSSI " << std::setw(10) << errorStats.rssi.getAvg() << std::setw(10) << errorStats.rssi.getStdDev() << std::setw(10) << errorStats.rssi.getMedian() << "\n";
stream << std::endl;
}
template<typename T>
void printErrorStats(const CombinedStats<T>& errorStats)
{
std::cout << "Walk error:" << "\n";
std::cout << "[m] " << std::setw(10) << "mean" << std::setw(10) << "stdDev" << std::setw(10) << "median" << "\n";
std::cout << "FTM " << std::setw(10) << errorStats.ftm.getAvg() << std::setw(10) << errorStats.ftm.getStdDev() << std::setw(10) << errorStats.ftm.getMedian() << "\n";
std::cout << "RSSI " << std::setw(10) << errorStats.rssi.getAvg() << std::setw(10) << errorStats.rssi.getStdDev() << std::setw(10) << errorStats.rssi.getMedian() << "\n";
std::cout << std::endl;
return printErrorStats(std::cout, errorStats);
}
@@ -94,10 +100,10 @@ static std::vector<WifiMeas> filterOfflineData(const Offline::FileReader& fr)
auto ftm = fr.getWifiFtm()[e.idx].data;
const MACAddress& mac = ftm.getAP().getMAC();
float ftm_offset = Settings::data.CurrentPath.NUCs.at(mac).ftm_offset;
float ftm_offset = Settings::CurrentPath.NUCs.at(mac).ftm_offset;
float ftmDist = ftm.getFtmDist() + ftm_offset; // in m; plus static offset
float rssi_pathloss = Settings::data.CurrentPath.NUCs.at(mac).rssi_pathloss;
float rssi_pathloss = Settings::CurrentPath.NUCs.at(mac).rssi_pathloss;
float rssiDist = LogDistanceModel::rssiToDistance(-40, rssi_pathloss, ftm.getRSSI());
int nucIndex = Settings::nucIndex(mac);