Ref T280, definitions for QHash<CCallsign, T> for

* situation
* situation list
* client
* parts
* parts list
* functions to convert standard swift containers into QMap/QHash<CCallign, T>
This commit is contained in:
Klaus Basan
2018-06-12 00:46:42 +02:00
parent 398ca4fb45
commit edde558f29
7 changed files with 98 additions and 18 deletions

View File

@@ -25,6 +25,7 @@
#include <QMetaType>
#include <QList>
#include <QPair>
#include <QHash>
namespace BlackMisc
{
@@ -34,7 +35,7 @@ namespace BlackMisc
{
class CAircraftParts;
//! Value object encapsulating a list of aircraft situations
//! List of aircraft situations
class BLACKMISC_EXPORT CAircraftSituationList :
public CSequence<CAircraftSituation>,
public Geo::IGeoObjectList<CAircraftSituation, CAircraftSituationList>,
@@ -181,11 +182,20 @@ namespace BlackMisc
//! \note distance is without CG, so on ground it can also be used to calculate
QPair<CAltitude, CAltitude> altitudeAglStandardDeviationAndMean() const;
};
//! Situation per callsign
using CAircraftSituationPerCallsign = QHash<CCallsign, CAircraftSituation>;
//! Situations (list) per callsign
using CAircraftSituationListPerCallsign = QHash<CCallsign, CAircraftSituationList>;
} // namespace
} // namespace
Q_DECLARE_METATYPE(BlackMisc::Aviation::CAircraftSituationList)
Q_DECLARE_METATYPE(BlackMisc::CCollection<BlackMisc::Aviation::CAircraftSituation>)
Q_DECLARE_METATYPE(BlackMisc::CSequence<BlackMisc::Aviation::CAircraftSituation>)
Q_DECLARE_METATYPE(BlackMisc::Aviation::CAircraftSituationPerCallsign)
Q_DECLARE_METATYPE(BlackMisc::Aviation::CAircraftSituationListPerCallsign)
#endif // guard