Ref T26, Ref T27, added utility function in remote aircraft provider

This commit is contained in:
Klaus Basan
2017-06-24 23:43:20 +02:00
parent 0c336952d2
commit 417496024e
2 changed files with 20 additions and 0 deletions

View File

@@ -16,12 +16,24 @@ namespace BlackMisc
{ {
namespace Simulation namespace Simulation
{ {
bool IRemoteAircraftProvider::isAircraftInRange(const CCallsign &callsign) const
{
if (callsign.isEmpty()) { return false; }
return this->getAircraftInRange().containsCallsign(callsign);
}
CSimulatedAircraftList CRemoteAircraftAware::getAircraftInRange() const CSimulatedAircraftList CRemoteAircraftAware::getAircraftInRange() const
{ {
Q_ASSERT_X(this->m_remoteAircraftProvider, Q_FUNC_INFO, "No object available"); Q_ASSERT_X(this->m_remoteAircraftProvider, Q_FUNC_INFO, "No object available");
return this->m_remoteAircraftProvider->getAircraftInRange(); return this->m_remoteAircraftProvider->getAircraftInRange();
} }
bool CRemoteAircraftAware::isAircraftInRange(const CCallsign &callsign) const
{
Q_ASSERT_X(this->m_remoteAircraftProvider, Q_FUNC_INFO, "No object available");
return this->m_remoteAircraftProvider->isAircraftInRange(callsign);
}
int CRemoteAircraftAware::getAircraftInRangeCount() const int CRemoteAircraftAware::getAircraftInRangeCount() const
{ {
Q_ASSERT_X(this->m_remoteAircraftProvider, Q_FUNC_INFO, "No object available"); Q_ASSERT_X(this->m_remoteAircraftProvider, Q_FUNC_INFO, "No object available");

View File

@@ -68,6 +68,11 @@ namespace BlackMisc
//! \threadsafe //! \threadsafe
virtual BlackMisc::Aviation::CCallsignSet getAircraftInRangeCallsigns() const = 0; virtual BlackMisc::Aviation::CCallsignSet getAircraftInRangeCallsigns() const = 0;
//! Is aircraft in range?
//! \remark convenience function with default implementation
//! \threadsafe
virtual bool isAircraftInRange(const BlackMisc::Aviation::CCallsign &callsign) const;
//! Current snapshot //! Current snapshot
//! \threadsafe //! \threadsafe
virtual BlackMisc::Simulation::CAirspaceAircraftSnapshot getLatestAirspaceAircraftSnapshot() const = 0; virtual BlackMisc::Simulation::CAirspaceAircraftSnapshot getLatestAirspaceAircraftSnapshot() const = 0;
@@ -177,6 +182,9 @@ namespace BlackMisc
//! \copydoc IRemoteAircraftProvider::getAircraftInRange //! \copydoc IRemoteAircraftProvider::getAircraftInRange
BlackMisc::Simulation::CSimulatedAircraftList getAircraftInRange() const; BlackMisc::Simulation::CSimulatedAircraftList getAircraftInRange() const;
//! \copydoc IRemoteAircraftProvider::isAircraftInRange
bool isAircraftInRange(const BlackMisc::Aviation::CCallsign &callsign) const;
//! \copydoc IRemoteAircraftProvider::getAircraftInRangeCount //! \copydoc IRemoteAircraftProvider::getAircraftInRangeCount
int getAircraftInRangeCount() const; int getAircraftInRangeCount() const;