mirror of
https://github.com/swift-project/pilotclient.git
synced 2026-04-05 17:35:34 +08:00
Ref T379, to improve reset models added "setAircraftEnabledFlag" to just set the flag, not sending signals causing removed aircraft
This commit is contained in:
@@ -269,6 +269,9 @@ namespace BlackCore
|
||||
//! Enable/disable rendering
|
||||
virtual bool updateAircraftEnabled(const BlackMisc::Aviation::CCallsign &callsign, bool enabledForRendering) = 0;
|
||||
|
||||
//! Set the enabled flag without any further logic like sending signals
|
||||
virtual bool setAircraftEnabledFlag(const BlackMisc::Aviation::CCallsign &callsign, bool enabledForRendering) = 0;
|
||||
|
||||
//! Enable/disable support of gnd. flag
|
||||
virtual bool updateAircraftSupportingGndFLag(const BlackMisc::Aviation::CCallsign &callsign, bool supportGndFlag) = 0;
|
||||
|
||||
|
||||
@@ -354,6 +354,15 @@ namespace BlackCore
|
||||
return false;
|
||||
}
|
||||
|
||||
//! \copydoc IContextNetwork::setAircraftEnabledFlag
|
||||
virtual bool setAircraftEnabledFlag(const BlackMisc::Aviation::CCallsign &callsign, bool enabledForRendering) override
|
||||
{
|
||||
logEmptyContextWarning(Q_FUNC_INFO);
|
||||
Q_UNUSED(callsign);
|
||||
Q_UNUSED(enabledForRendering);
|
||||
return false;
|
||||
}
|
||||
|
||||
//! \copydoc IContextNetwork::reInitializeAllAircraft
|
||||
virtual int reInitializeAllAircraft() override
|
||||
{
|
||||
|
||||
@@ -122,6 +122,12 @@ namespace BlackCore
|
||||
return m_airspace->remoteAircraftSituation(callsign, index);
|
||||
}
|
||||
|
||||
MillisecondsMinMaxMean CContextNetwork::remoteAircraftSituationsTimestampDifferenceMinMaxMean(const CCallsign &callsign) const
|
||||
{
|
||||
Q_ASSERT(m_airspace);
|
||||
return m_airspace->remoteAircraftSituationsTimestampDifferenceMinMaxMean(callsign);
|
||||
}
|
||||
|
||||
CAircraftSituationList CContextNetwork::latestRemoteAircraftSituations() const
|
||||
{
|
||||
Q_ASSERT(m_airspace);
|
||||
@@ -774,6 +780,12 @@ namespace BlackCore
|
||||
return c;
|
||||
}
|
||||
|
||||
bool CContextNetwork::setAircraftEnabledFlag(const CCallsign &callsign, bool enabledForRendering)
|
||||
{
|
||||
if (this->isDebugEnabled()) { CLogMessage(this, CLogCategory::contextSlot()).debug() << Q_FUNC_INFO << callsign; }
|
||||
return m_airspace->setAircraftEnabledFlag(callsign, enabledForRendering);
|
||||
}
|
||||
|
||||
bool CContextNetwork::updateAircraftModel(const CCallsign &callsign, const CAircraftModel &model, const CIdentifier &originator)
|
||||
{
|
||||
Q_ASSERT(m_airspace);
|
||||
@@ -807,7 +819,7 @@ namespace BlackCore
|
||||
if (c)
|
||||
{
|
||||
const CSimulatedAircraft aircraft(this->getAircraftInRangeForCallsign(callsign));
|
||||
CLogMessage(this).info("Callsign %1 sets fast positions ") << aircraft.getCallsign() << BlackMisc::boolToOnOff(aircraft.fastPositionUpdates());
|
||||
CLogMessage(this).info("Callsign '%1' fast positions '%2'") << aircraft.getCallsign() << BlackMisc::boolToOnOff(aircraft.fastPositionUpdates());
|
||||
emit this->changedFastPositionUpdates(aircraft);
|
||||
}
|
||||
return c;
|
||||
@@ -876,6 +888,7 @@ namespace BlackCore
|
||||
|
||||
int CContextNetwork::reInitializeAllAircraft()
|
||||
{
|
||||
if (this->isDebugEnabled()) { CLogMessage(this, CLogCategory::contextSlot()).debug() << Q_FUNC_INFO; }
|
||||
return m_airspace->reInitializeAllAircraft();
|
||||
}
|
||||
|
||||
|
||||
@@ -93,6 +93,7 @@ namespace BlackCore
|
||||
//! @{
|
||||
virtual BlackMisc::Aviation::CAircraftSituationList remoteAircraftSituations(const BlackMisc::Aviation::CCallsign &callsign) const override;
|
||||
virtual BlackMisc::Aviation::CAircraftSituation remoteAircraftSituation(const BlackMisc::Aviation::CCallsign &callsign, int index) const override;
|
||||
virtual BlackMisc::MillisecondsMinMaxMean remoteAircraftSituationsTimestampDifferenceMinMaxMean(const BlackMisc::Aviation::CCallsign &callsign) const override;
|
||||
virtual BlackMisc::Aviation::CAircraftSituationList latestRemoteAircraftSituations() const override;
|
||||
virtual BlackMisc::Aviation::CAircraftSituationList latestOnGroundProviderElevations() const override;
|
||||
virtual int remoteAircraftSituationsCount(const BlackMisc::Aviation::CCallsign &callsign) const override;
|
||||
@@ -153,12 +154,18 @@ namespace BlackCore
|
||||
// from context and provider interface
|
||||
//! \ingroup remoteaircraftprovider
|
||||
//! @{
|
||||
|
||||
// emit signal when changed
|
||||
virtual bool updateAircraftEnabled(const BlackMisc::Aviation::CCallsign &callsign, bool enabledForRendering) override;
|
||||
virtual bool updateAircraftModel(const BlackMisc::Aviation::CCallsign &callsign, const BlackMisc::Simulation::CAircraftModel &model, const BlackMisc::CIdentifier &originator) override;
|
||||
virtual bool updateAircraftNetworkModel(const BlackMisc::Aviation::CCallsign &callsign, const BlackMisc::Simulation::CAircraftModel &model, const BlackMisc::CIdentifier &originator) override;
|
||||
virtual bool updateFastPositionEnabled(const BlackMisc::Aviation::CCallsign &callsign, bool enableFastPositonUpdates) override;
|
||||
virtual int reInitializeAllAircraft() override;
|
||||
virtual bool updateAircraftSupportingGndFLag(const BlackMisc::Aviation::CCallsign &callsign, bool supportGndFlag) override;
|
||||
virtual void enableReverseLookupMessages(bool enabled) override;
|
||||
|
||||
// plain vanilla passing to airspace monitor
|
||||
virtual bool setAircraftEnabledFlag(const BlackMisc::Aviation::CCallsign &callsign, bool enabledForRendering) override;
|
||||
virtual int reInitializeAllAircraft() override;
|
||||
virtual bool updateCG(const BlackMisc::Aviation::CCallsign &callsign, const BlackMisc::PhysicalQuantities::CLength &cg) override;
|
||||
virtual bool updateCGAndModelString(const BlackMisc::Aviation::CCallsign &callsign, const BlackMisc::PhysicalQuantities::CLength &cg, const QString &modelString) override;
|
||||
virtual BlackMisc::Simulation::CSimulatedAircraftList getAircraftInRange() const override;
|
||||
@@ -170,7 +177,6 @@ namespace BlackCore
|
||||
virtual BlackMisc::Simulation::CAircraftModel getAircraftInRangeModelForCallsign(const BlackMisc::Aviation::CCallsign &callsign) const override;
|
||||
virtual BlackMisc::CStatusMessageList getReverseLookupMessages(const BlackMisc::Aviation::CCallsign &callsign) const override;
|
||||
virtual bool isReverseLookupMessagesEnabled() const override;
|
||||
virtual void enableReverseLookupMessages(bool enabled) override;
|
||||
virtual BlackMisc::CStatusMessageList getAircraftPartsHistory(const BlackMisc::Aviation::CCallsign &callsign) const override;
|
||||
virtual BlackMisc::Aviation::CAircraftPartsList getRemoteAircraftParts(const BlackMisc::Aviation::CCallsign &callsign) const override;
|
||||
virtual int getRemoteAircraftSupportingPartsCount() const override;
|
||||
|
||||
@@ -208,9 +208,14 @@ namespace BlackCore
|
||||
m_dBusInterface->callDBus(QLatin1String("requestAtisUpdates"));
|
||||
}
|
||||
|
||||
bool CContextNetworkProxy::updateAircraftEnabled(const CCallsign &callsign, bool enabledForRedering)
|
||||
bool CContextNetworkProxy::updateAircraftEnabled(const CCallsign &callsign, bool enabledForRendering)
|
||||
{
|
||||
return m_dBusInterface->callDBusRet<bool>(QLatin1String("updateAircraftEnabled"), callsign, enabledForRedering);
|
||||
return m_dBusInterface->callDBusRet<bool>(QLatin1String("updateAircraftEnabled"), callsign, enabledForRendering);
|
||||
}
|
||||
|
||||
bool CContextNetworkProxy::setAircraftEnabledFlag(const CCallsign &callsign, bool enabledForRendering)
|
||||
{
|
||||
return m_dBusInterface->callDBusRet<bool>(QLatin1String("setEnabledFlag"), callsign, enabledForRendering);
|
||||
}
|
||||
|
||||
bool CContextNetworkProxy::updateAircraftModel(const CCallsign &callsign, const CAircraftModel &model, const CIdentifier &originator)
|
||||
|
||||
@@ -106,7 +106,8 @@ namespace BlackCore
|
||||
virtual bool setOtherClient(const BlackMisc::Network::CClient &client) override;
|
||||
virtual void requestDataUpdates()override;
|
||||
virtual void requestAtisUpdates() override;
|
||||
virtual bool updateAircraftEnabled(const BlackMisc::Aviation::CCallsign &callsign, bool enabledForRedering) override;
|
||||
virtual bool updateAircraftEnabled(const BlackMisc::Aviation::CCallsign &callsign, bool enabledForRendering) override;
|
||||
virtual bool setAircraftEnabledFlag(const BlackMisc::Aviation::CCallsign &callsign, bool enabledForRendering) override;
|
||||
virtual bool updateAircraftModel(const BlackMisc::Aviation::CCallsign &callsign, const BlackMisc::Simulation::CAircraftModel &model, const BlackMisc::CIdentifier &originator) override;
|
||||
virtual bool updateAircraftNetworkModel(const BlackMisc::Aviation::CCallsign &callsign, const BlackMisc::Simulation::CAircraftModel &model, const BlackMisc::CIdentifier &originator) override;
|
||||
virtual bool updateFastPositionEnabled(const BlackMisc::Aviation::CCallsign &callsign, bool enableFastPositionSending) override;
|
||||
|
||||
@@ -870,9 +870,10 @@ namespace BlackCore
|
||||
{
|
||||
CSimulatedAircraft aircraft = this->getAircraftInRangeForCallsign(callsign);
|
||||
if (aircraft.getCallsign() != callsign) { return false; } // not found
|
||||
this->updateAircraftEnabled(callsign, true);
|
||||
aircraft.setModel(aircraft.getNetworkModel());
|
||||
xCtxAddedRemoteAircraftReadyForModelMatching(aircraft);
|
||||
this->setAircraftEnabledFlag(callsign, true); // plain vanilla flag
|
||||
this->updateAircraftRendered(callsign, false); // this is flag only anyway
|
||||
aircraft.setModel(aircraft.getNetworkModel()); // like originally from network
|
||||
this->xCtxAddedRemoteAircraftReadyForModelMatching(aircraft);
|
||||
return true;
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user