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
{
bool IRemoteAircraftProvider::isAircraftInRange(const CCallsign &callsign) const
{
if (callsign.isEmpty()) { return false; }
return this->getAircraftInRange().containsCallsign(callsign);
}
CSimulatedAircraftList CRemoteAircraftAware::getAircraftInRange() const
{
Q_ASSERT_X(this->m_remoteAircraftProvider, Q_FUNC_INFO, "No object available");
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
{
Q_ASSERT_X(this->m_remoteAircraftProvider, Q_FUNC_INFO, "No object available");

View File

@@ -68,6 +68,11 @@ namespace BlackMisc
//! \threadsafe
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
//! \threadsafe
virtual BlackMisc::Simulation::CAirspaceAircraftSnapshot getLatestAirspaceAircraftSnapshot() const = 0;
@@ -177,6 +182,9 @@ namespace BlackMisc
//! \copydoc IRemoteAircraftProvider::getAircraftInRange
BlackMisc::Simulation::CSimulatedAircraftList getAircraftInRange() const;
//! \copydoc IRemoteAircraftProvider::isAircraftInRange
bool isAircraftInRange(const BlackMisc::Aviation::CCallsign &callsign) const;
//! \copydoc IRemoteAircraftProvider::getAircraftInRangeCount
int getAircraftInRangeCount() const;