Ref T268, utilty functions for logging setup

This commit is contained in:
Klaus Basan
2018-07-18 01:46:58 +02:00
parent aef01008ac
commit c6c22a6e5c
2 changed files with 23 additions and 2 deletions

View File

@@ -28,6 +28,12 @@ namespace BlackMisc
return CInterpolationSetupList(setups.values());
}
bool IInterpolationSetupProvider::hasSetupsPerCallsign() const
{
QReadLocker l(&m_lockSetup);
return !m_setups.isEmpty();
}
bool IInterpolationSetupProvider::setInterpolationSetupsPerCallsign(const CInterpolationSetupList &setups, bool ignoreSameAsGlobal)
{
const CInterpolationAndRenderingSetupGlobal gs = this->getInterpolationSetupGlobal();
@@ -63,6 +69,13 @@ namespace BlackMisc
return callsigns;
}
bool IInterpolationSetupProvider::isLogCallsign(const CCallsign &callsign) const
{
QReadLocker l(&m_lockSetup);
if (!m_setups.contains(callsign)) { return false; }
return m_setups[callsign].logInterpolation();
}
bool IInterpolationSetupProvider::setInterpolationMode(const QString &modeAsString, const CCallsign &callsign)
{
CInterpolationAndRenderingSetupPerCallsign setup = this->getInterpolationSetupPerCallsignOrDefault(callsign);

View File

@@ -36,11 +36,15 @@ namespace BlackMisc
//! Get all setups per callsign
//! \threadsafe
virtual CInterpolationSetupList getInterpolationSetupsPerCallsign() const;
CInterpolationSetupList getInterpolationSetupsPerCallsign() const;
//! Get all setups per callsign
//! \threadsafe
bool hasSetupsPerCallsign() const;
//! Set all setups per callsign
//! \threadsafe
virtual bool setInterpolationSetupsPerCallsign(const CInterpolationSetupList &setups, bool ignoreSameAsGlobal = true);
bool setInterpolationSetupsPerCallsign(const CInterpolationSetupList &setups, bool ignoreSameAsGlobal = true);
//! The global setup
//! \threadsafe
@@ -50,6 +54,10 @@ namespace BlackMisc
//! \threadsafe
Aviation::CCallsignSet getLogCallsigns() const;
//! Is callsign marked for logging
//! \threadsafe
bool isLogCallsign(const Aviation::CCallsign &callsign) const;
//! Set mode as string
//! \threadsafe
bool setInterpolationMode(const QString &modeAsString, const Aviation::CCallsign &callsign);