mirror of
https://github.com/swift-project/pilotclient.git
synced 2026-04-05 09:15:34 +08:00
Ref T432, context functions to get ATC stations by COM frequency
This commit is contained in:
@@ -20,23 +20,24 @@
|
||||
#include "blackcore/corefacade.h"
|
||||
#include "blackcore/corefacadeconfig.h"
|
||||
#include "blackcore/network.h"
|
||||
#include "blackmisc/audio/voiceroomlist.h"
|
||||
#include "blackmisc/simulation/simulatedaircraft.h"
|
||||
#include "blackmisc/simulation/simulatedaircraftlist.h"
|
||||
#include "blackmisc/aviation/aircraftpartslist.h"
|
||||
#include "blackmisc/aviation/airporticaocode.h"
|
||||
#include "blackmisc/aviation/atcstation.h"
|
||||
#include "blackmisc/aviation/atcstationlist.h"
|
||||
#include "blackmisc/aviation/callsignset.h"
|
||||
#include "blackmisc/aviation/comsystem.h"
|
||||
#include "blackmisc/aviation/flightplan.h"
|
||||
#include "blackmisc/identifiable.h"
|
||||
#include "blackmisc/identifier.h"
|
||||
#include "blackmisc/network/clientlist.h"
|
||||
#include "blackmisc/network/server.h"
|
||||
#include "blackmisc/network/serverlist.h"
|
||||
#include "blackmisc/network/textmessagelist.h"
|
||||
#include "blackmisc/network/user.h"
|
||||
#include "blackmisc/network/userlist.h"
|
||||
#include "blackmisc/simulation/simulatedaircraft.h"
|
||||
#include "blackmisc/simulation/simulatedaircraftlist.h"
|
||||
#include "blackmisc/audio/voiceroomlist.h"
|
||||
#include "blackmisc/identifiable.h"
|
||||
#include "blackmisc/identifier.h"
|
||||
#include "blackmisc/statusmessage.h"
|
||||
#include "blackmisc/weather/metar.h"
|
||||
|
||||
@@ -203,6 +204,9 @@ namespace BlackCore
|
||||
//! Online station for callsign
|
||||
virtual BlackMisc::Aviation::CAtcStation getOnlineStationForCallsign(const BlackMisc::Aviation::CCallsign &callsign) const = 0;
|
||||
|
||||
//! Online stations for frequency
|
||||
virtual BlackMisc::Aviation::CAtcStationList getOnlineStationsForFrequency(const BlackMisc::PhysicalQuantities::CFrequency &frequency, BlackMisc::Aviation::CComSystem::ChannelSpacing channelSpacing) const = 0;
|
||||
|
||||
//! Online station for callsign?
|
||||
virtual bool isOnlineStation(const BlackMisc::Aviation::CCallsign &callsign) const = 0;
|
||||
|
||||
|
||||
@@ -75,6 +75,15 @@ namespace BlackCore
|
||||
return BlackMisc::Simulation::CSimulatedAircraft();
|
||||
}
|
||||
|
||||
//! \copydoc IContextNetwork::getOnlineStationsForFrequency
|
||||
virtual BlackMisc::Aviation::CAtcStationList getOnlineStationsForFrequency(const BlackMisc::PhysicalQuantities::CFrequency &frequency, BlackMisc::Aviation::CComSystem::ChannelSpacing channelSpacing) const override
|
||||
{
|
||||
Q_UNUSED(frequency);
|
||||
Q_UNUSED(channelSpacing);
|
||||
logEmptyContextWarning(Q_FUNC_INFO);
|
||||
return BlackMisc::Aviation::CAtcStationList();
|
||||
}
|
||||
|
||||
//! \copydoc IContextNetwork::getAircraftInRangeCallsigns()
|
||||
virtual BlackMisc::Aviation::CCallsignSet getAircraftInRangeCallsigns() const override
|
||||
{
|
||||
|
||||
@@ -769,6 +769,12 @@ namespace BlackCore
|
||||
return m_airspace->getAtcStationsOnline().findFirstByCallsign(callsign);
|
||||
}
|
||||
|
||||
CAtcStationList CContextNetwork::getOnlineStationsForFrequency(const CFrequency &frequency, CComSystem::ChannelSpacing channelSpacing) const
|
||||
{
|
||||
if (this->isDebugEnabled()) { CLogMessage(this, CLogCategory::contextSlot()).debug() << Q_FUNC_INFO; }
|
||||
return m_airspace->getAtcStationsOnline().findIfFrequencyIsWithinSpacing(frequency, channelSpacing);
|
||||
}
|
||||
|
||||
bool CContextNetwork::isOnlineStation(const CCallsign &callsign) const
|
||||
{
|
||||
if (this->isDebugEnabled()) { CLogMessage(this, CLogCategory::contextSlot()).debug() << Q_FUNC_INFO << callsign; }
|
||||
|
||||
@@ -236,6 +236,7 @@ namespace BlackCore
|
||||
virtual BlackMisc::Aviation::CAtcStationList getAtcStationsOnline(bool recalculateDistance) const override;
|
||||
virtual BlackMisc::Aviation::CAtcStationList getClosestAtcStationsOnline(int number) const override;
|
||||
virtual BlackMisc::Aviation::CAtcStation getOnlineStationForCallsign(const BlackMisc::Aviation::CCallsign &callsign) const override;
|
||||
virtual BlackMisc::Aviation::CAtcStationList getOnlineStationsForFrequency(const BlackMisc::PhysicalQuantities::CFrequency &frequency, BlackMisc::Aviation::CComSystem::ChannelSpacing channelSpacing) const override;
|
||||
virtual bool isOnlineStation(const BlackMisc::Aviation::CCallsign &callsign) const override;
|
||||
virtual BlackMisc::CStatusMessage connectToNetwork(const BlackMisc::Network::CServer &server, BlackCore::INetwork::LoginMode mode) override;
|
||||
virtual BlackMisc::Network::CServer getConnectedServer() const override;
|
||||
|
||||
@@ -22,6 +22,7 @@
|
||||
using namespace BlackMisc;
|
||||
using namespace BlackMisc::Network;
|
||||
using namespace BlackMisc::Aviation;
|
||||
using namespace BlackMisc::PhysicalQuantities;
|
||||
using namespace BlackMisc::Audio;
|
||||
using namespace BlackMisc::Weather;
|
||||
using namespace BlackMisc::Simulation;
|
||||
@@ -148,6 +149,11 @@ namespace BlackCore
|
||||
return m_dBusInterface->callDBusRet<BlackMisc::Simulation::CSimulatedAircraft>(QLatin1String("getAircraftInRangeForCallsign"), callsign);
|
||||
}
|
||||
|
||||
CAtcStationList CContextNetworkProxy::getOnlineStationsForFrequency(const CFrequency &frequency, CComSystem::ChannelSpacing channelSpacing) const
|
||||
{
|
||||
return m_dBusInterface->callDBusRet<BlackMisc::Aviation::CAtcStationList>(QLatin1String("getOnlineStationsForFrequency"), frequency, channelSpacing);
|
||||
}
|
||||
|
||||
CAtcStation CContextNetworkProxy::getOnlineStationForCallsign(const CCallsign &callsign) const
|
||||
{
|
||||
return m_dBusInterface->callDBusRet<BlackMisc::Aviation::CAtcStation>(QLatin1String("getOnlineStationForCallsign"), callsign);
|
||||
|
||||
@@ -84,6 +84,7 @@ namespace BlackCore
|
||||
virtual int getAircraftInRangeCount() const override;
|
||||
virtual bool isAircraftInRange(const BlackMisc::Aviation::CCallsign &callsign) const override;
|
||||
virtual BlackMisc::Simulation::CSimulatedAircraft getAircraftInRangeForCallsign(const BlackMisc::Aviation::CCallsign &callsign) const override;
|
||||
virtual BlackMisc::Aviation::CAtcStationList getOnlineStationsForFrequency(const BlackMisc::PhysicalQuantities::CFrequency &frequency, BlackMisc::Aviation::CComSystem::ChannelSpacing channelSpacing) const override;
|
||||
virtual BlackMisc::Aviation::CAtcStation getOnlineStationForCallsign(const BlackMisc::Aviation::CCallsign &callsign) const override;
|
||||
virtual bool isOnlineStation(const BlackMisc::Aviation::CCallsign &callsign) const override;
|
||||
virtual BlackMisc::CStatusMessage connectToNetwork(const BlackMisc::Network::CServer &server, BlackCore::INetwork::LoginMode mode) override;
|
||||
|
||||
Reference in New Issue
Block a user