From 0340de5e14803e420bcb7542e8c678bc9af8b7b7 Mon Sep 17 00:00:00 2001 From: Klaus Basan Date: Mon, 16 Oct 2017 01:02:04 +0200 Subject: [PATCH] Ref T171, utility functions for interpolator hints/setup --- src/blackmisc/simulation/interpolationhints.cpp | 4 ++++ src/blackmisc/simulation/interpolationhints.h | 9 ++++++--- src/blackmisc/simulation/interpolationrenderingsetup.cpp | 5 +++++ src/blackmisc/simulation/interpolationrenderingsetup.h | 3 +++ 4 files changed, 18 insertions(+), 3 deletions(-) diff --git a/src/blackmisc/simulation/interpolationhints.cpp b/src/blackmisc/simulation/interpolationhints.cpp index 12d8d5f5b..8dae07e73 100644 --- a/src/blackmisc/simulation/interpolationhints.cpp +++ b/src/blackmisc/simulation/interpolationhints.cpp @@ -23,6 +23,10 @@ namespace BlackMisc CInterpolationHints::CInterpolationHints(bool isVtolAircraft) : m_isVtol(isVtolAircraft) { } + CInterpolationHints::CInterpolationHints(bool isVtolAircraft, bool hasParts, bool log) : + m_isVtol(isVtolAircraft), m_hasParts(hasParts), m_logInterpolation(log) + { } + CAltitude CInterpolationHints::getGroundElevation(const Aviation::CAircraftSituation &situation) const { if (m_elevationProvider) { return m_elevationProvider(situation); } diff --git a/src/blackmisc/simulation/interpolationhints.h b/src/blackmisc/simulation/interpolationhints.h index 00ea60c3b..1c2f03d2c 100644 --- a/src/blackmisc/simulation/interpolationhints.h +++ b/src/blackmisc/simulation/interpolationhints.h @@ -41,6 +41,9 @@ namespace BlackMisc //! Constructor CInterpolationHints(bool isVtolAircraft); + //! Constructor + CInterpolationHints(bool isVtolAircraft, bool hasParts, bool log); + //! Get elevation const BlackMisc::Geo::CElevationPlane &getElevationPlane() const { return m_elevationPlane;} @@ -116,9 +119,9 @@ namespace BlackMisc bool m_isVtol = false; //!< VTOL aircraft? bool m_hasParts = false; //!< Has valid aircraft parts? bool m_logInterpolation = false; //!< log interpolation - BlackMisc::Aviation::CAircraftParts m_aircraftParts; //!< Aircraft parts - BlackMisc::Geo::CElevationPlane m_elevationPlane; //!< aircraft's elevation if available - ElevationProvider m_elevationProvider; //!< Provider of ground elevation (lazy computation) + BlackMisc::Aviation::CAircraftParts m_aircraftParts; //!< Aircraft parts + BlackMisc::Geo::CElevationPlane m_elevationPlane; //!< aircraft's elevation if available + ElevationProvider m_elevationProvider; //!< Provider of ground elevation (lazy computation) BlackMisc::PhysicalQuantities::CLength m_cgAboveGround { 0, nullptr }; //!< center of gravity above ground BLACK_METACLASS( diff --git a/src/blackmisc/simulation/interpolationrenderingsetup.cpp b/src/blackmisc/simulation/interpolationrenderingsetup.cpp index a9de4ccf6..b7d568d85 100644 --- a/src/blackmisc/simulation/interpolationrenderingsetup.cpp +++ b/src/blackmisc/simulation/interpolationrenderingsetup.cpp @@ -156,6 +156,11 @@ namespace BlackMisc return m_callsignsToLog; } + bool CInterpolationAndRenderingSetup::logCallsign(const Aviation::CCallsign &callsign) const + { + return m_callsignsToLog.contains(callsign); + } + QString CInterpolationAndRenderingSetup::convertToQString(bool i18n) const { Q_UNUSED(i18n); diff --git a/src/blackmisc/simulation/interpolationrenderingsetup.h b/src/blackmisc/simulation/interpolationrenderingsetup.h index b987a2c18..4e9b6a234 100644 --- a/src/blackmisc/simulation/interpolationrenderingsetup.h +++ b/src/blackmisc/simulation/interpolationrenderingsetup.h @@ -113,6 +113,9 @@ namespace BlackMisc //! Callsigns for logging BlackMisc::Aviation::CCallsignSet getLogCallsigns() const; + //! Log the given callsign? + bool logCallsign(const BlackMisc::Aviation::CCallsign &callsign) const; + //! \copydoc BlackMisc::Mixin::String::toQString QString convertToQString(bool i18n = false) const;