diff --git a/src/blackmisc/propertyindexvariantmap.cpp b/src/blackmisc/propertyindexvariantmap.cpp index 8b02cd878..6bcfc4a8e 100644 --- a/src/blackmisc/propertyindexvariantmap.cpp +++ b/src/blackmisc/propertyindexvariantmap.cpp @@ -53,7 +53,7 @@ namespace BlackMisc { if (this->isEmpty()) return QString("{wildcard: %1}").arg(this->m_wildcard ? "true" : "false"); QString s; - foreach(CPropertyIndex index, this->m_values.keys()) + foreach (CPropertyIndex index, this->m_values.keys()) { CVariant v = this->m_values.value(index); @@ -120,6 +120,11 @@ namespace BlackMisc return CPropertyIndexList::fromImpl(this->m_values.keys()); } + int CPropertyIndexVariantMap::size() const + { + return this->m_values.size(); + } + uint CPropertyIndexVariantMap::getValueHash() const { // there is no hash for map, so I use this workaround here diff --git a/src/blackmisc/propertyindexvariantmap.h b/src/blackmisc/propertyindexvariantmap.h index f14cfefd2..7255a2535 100644 --- a/src/blackmisc/propertyindexvariantmap.h +++ b/src/blackmisc/propertyindexvariantmap.h @@ -169,6 +169,9 @@ namespace BlackMisc //! clear void clear() { this->m_values.clear(); } + //! Number of elements + int size() const; + //! Equal operator, required if maps are directly compared, not with CValueObject BLACKMISC_EXPORT friend bool operator ==(const CPropertyIndexVariantMap &a, const CPropertyIndexVariantMap &b); diff --git a/src/blackmisc/simulation/simulatedaircraft.cpp b/src/blackmisc/simulation/simulatedaircraft.cpp index e6e0c53d1..4db0e900c 100644 --- a/src/blackmisc/simulation/simulatedaircraft.cpp +++ b/src/blackmisc/simulation/simulatedaircraft.cpp @@ -44,6 +44,13 @@ namespace BlackMisc init(); } + CSimulatedAircraft::CSimulatedAircraft(const CCallsign &callsign, const CAircraftModel &model, const CUser &user, const CAircraftSituation &situation) : + m_callsign(callsign), m_pilot(user), m_situation(situation) + { + this->setModel(model); + init(); + } + void CSimulatedAircraft::init() { Q_ASSERT_X(m_models.size() == 2, Q_FUNC_INFO, "Wrong model size"); diff --git a/src/blackmisc/simulation/simulatedaircraft.h b/src/blackmisc/simulation/simulatedaircraft.h index c295916ba..3a9e553e9 100644 --- a/src/blackmisc/simulation/simulatedaircraft.h +++ b/src/blackmisc/simulation/simulatedaircraft.h @@ -100,6 +100,9 @@ namespace BlackMisc //! Constructor. CSimulatedAircraft(const BlackMisc::Aviation::CCallsign &callsign, const BlackMisc::Network::CUser &user, const BlackMisc::Aviation::CAircraftSituation &situation); + //! Constructor. + CSimulatedAircraft(const BlackMisc::Aviation::CCallsign &callsign, const BlackMisc::Simulation::CAircraftModel &model, const BlackMisc::Network::CUser &user, const BlackMisc::Aviation::CAircraftSituation &situation); + //! Get callsign. const BlackMisc::Aviation::CCallsign &getCallsign() const { return m_callsign; }