diff --git a/src/blackmisc/simulation/aircraftmodellist.cpp b/src/blackmisc/simulation/aircraftmodellist.cpp index bb1698d3c..fe3cf9835 100644 --- a/src/blackmisc/simulation/aircraftmodellist.cpp +++ b/src/blackmisc/simulation/aircraftmodellist.cpp @@ -406,6 +406,24 @@ namespace BlackMisc return distributors; } + QMap CAircraftModelList::countPerAircraftIcao() const + { + QMap icaos; + for (const CAircraftModel &model : *this) + { + if (!model.hasAircraftDesignator()) { continue; } + if (icaos.contains(model.getAircraftIcaoCode())) + { + icaos[model.getAircraftIcaoCode()]++; + } + else + { + icaos[model.getAircraftIcaoCode()] = 1; + } + } + return icaos; + } + QString CAircraftModelList::findModelIconPathByModelString(const QString &modelString) const { if (modelString.isEmpty()) { return {}; } diff --git a/src/blackmisc/simulation/aircraftmodellist.h b/src/blackmisc/simulation/aircraftmodellist.h index b17b6c329..97792350d 100644 --- a/src/blackmisc/simulation/aircraftmodellist.h +++ b/src/blackmisc/simulation/aircraftmodellist.h @@ -299,9 +299,12 @@ namespace BlackMisc //! Model strings plus count QMap countPerModelString() const; - //! Distributor plus count + //! Distributors plus count QMap countPerDistributor() const; + //! Aircraft ICAO plus count + QMap countPerAircraftIcao() const; + //! Which simulator(s) have the most entries? CSimulatorInfo simulatorsWithMaxEntries() const;