refs #827, use matching logs (CMatchingUtils) with score functions

This commit is contained in:
Klaus Basan
2017-03-10 04:02:29 +01:00
committed by Mathew Sutcliffe
parent 8d198a9174
commit 88a5b54ef6
2 changed files with 8 additions and 2 deletions

View File

@@ -8,6 +8,7 @@
*/
#include "blackmisc/simulation/aircraftmodellist.h"
#include "blackmisc/simulation/matchingutils.h"
#include "blackmisc/aviation/aircrafticaocode.h"
#include "blackmisc/aviation/callsign.h"
#include "blackmisc/aviation/livery.h"
@@ -15,6 +16,7 @@
#include "blackmisc/iterator.h"
#include "blackmisc/range.h"
#include "blackmisc/statusmessage.h"
#include "blackmisc/stringutils.h"
#include <QJsonValue>
#include <QList>
@@ -584,12 +586,16 @@ namespace BlackMisc
}
}
ScoredModels CAircraftModelList::scoreFull(const CAircraftModel &remoteModel, bool ignoreZeroScores) const
ScoredModels CAircraftModelList::scoreFull(const CAircraftModel &remoteModel, bool ignoreZeroScores, CStatusMessageList *log) const
{
ScoredModels scoreMap;
// prefer colors if there is no airline
const bool hasAirlineDesignator = remoteModel.hasAirlineDesignator() && this->contains(&CAircraftModel::getAirlineIcaoCodeDesignator, remoteModel.getAirlineIcaoCodeDesignator());
const bool preferColorLiveries = !hasAirlineDesignator;
// prefer colors if there is no airline
CMatchingUtils::addLogDetailsToList(log, remoteModel.getCallsign(), QString("Prefer color liveries: %1, airline: '%2'").arg(boolToYesNo(preferColorLiveries), remoteModel.getAirlineIcaoCodeDesignator()));
for (const CAircraftModel &model : *this)
{
const int score = model.calculateScore(remoteModel, preferColorLiveries);

View File

@@ -226,7 +226,7 @@ namespace BlackMisc
void normalizeFileNamesForDb();
//! Score by aircraft ICAO code
ScoredModels scoreFull(const CAircraftModel &remoteModel, bool ignoreZeroScores = true) const;
ScoredModels scoreFull(const CAircraftModel &remoteModel, bool ignoreZeroScores = true, CStatusMessageList *log = nullptr) const;
//! Completer strings
QStringList toCompleterStrings(bool sorted = true) const;