mirror of
https://github.com/swift-project/pilotclient.git
synced 2026-04-23 05:45:35 +08:00
Ref T171, made remote aircraft provider and web service "protected slots" -> "protected"
* Unlike in other cases, the remote aircraft provider slots are also very frequently called. So besides "style", it might be also useful here to avoid the extra MOC layers. * Also renamed 2 web service signals and made web service connections Qt::QueuedConnection
This commit is contained in:
@@ -59,23 +59,23 @@ namespace BlackCore
|
|||||||
m_remoteAircraftProviderConnections.append(
|
m_remoteAircraftProviderConnections.append(
|
||||||
m_remoteAircraftProvider->connectRemoteAircraftProviderSignals(
|
m_remoteAircraftProvider->connectRemoteAircraftProviderSignals(
|
||||||
this, // receiver must match object in bind
|
this, // receiver must match object in bind
|
||||||
std::bind(&CSimulatorCommon::ps_remoteProviderAddAircraftSituation, this, std::placeholders::_1),
|
std::bind(&CSimulatorCommon::onRemoteProviderAddedAircraftSituation, this, std::placeholders::_1),
|
||||||
std::bind(&CSimulatorCommon::ps_remoteProviderAddAircraftParts, this, std::placeholders::_1, std::placeholders::_2),
|
std::bind(&CSimulatorCommon::onRemoteProviderAddedAircraftParts, this, std::placeholders::_1, std::placeholders::_2),
|
||||||
std::bind(&CSimulatorCommon::ps_remoteProviderRemovedAircraft, this, std::placeholders::_1),
|
std::bind(&CSimulatorCommon::onRemoteProviderRemovedAircraft, this, std::placeholders::_1),
|
||||||
std::bind(&CSimulatorCommon::ps_recalculateRenderedAircraft, this, std::placeholders::_1))
|
std::bind(&CSimulatorCommon::onRecalculatedRenderedAircraft, this, std::placeholders::_1))
|
||||||
);
|
);
|
||||||
|
|
||||||
// timer
|
// timer
|
||||||
connect(&m_oneSecondTimer, &QTimer::timeout, this, &CSimulatorCommon::ps_oneSecondTimer);
|
connect(&m_oneSecondTimer, &QTimer::timeout, this, &CSimulatorCommon::oneSecondTimerTimeout);
|
||||||
this->m_oneSecondTimer.setObjectName(this->objectName().append(":m_oneSecondTimer"));
|
this->m_oneSecondTimer.setObjectName(this->objectName().append(":m_oneSecondTimer"));
|
||||||
this->m_oneSecondTimer.start(1000);
|
this->m_oneSecondTimer.start(1000);
|
||||||
|
|
||||||
// swift data
|
// swift data
|
||||||
if (sApp && sApp->getWebDataServices())
|
if (sApp && sApp->hasWebDataServices())
|
||||||
{
|
{
|
||||||
connect(sApp->getWebDataServices(), &CWebDataServices::allSwiftDbDataRead, this, &CSimulatorCommon::ps_allSwiftDataRead);
|
connect(sApp->getWebDataServices(), &CWebDataServices::allSwiftDbDataRead, this, &CSimulatorCommon::onSwiftDbAllDataRead, Qt::QueuedConnection);
|
||||||
connect(sApp->getWebDataServices(), &CWebDataServices::swiftDbAirportsRead, this, &CSimulatorCommon::ps_airportsRead);
|
connect(sApp->getWebDataServices(), &CWebDataServices::swiftDbAirportsRead, this, &CSimulatorCommon::onSwiftDbAirportsRead, Qt::QueuedConnection);
|
||||||
connect(sApp->getWebDataServices(), &CWebDataServices::swiftDbModelMatchingEntities, this, &CSimulatorCommon::ps_modelMatchingEntities);
|
connect(sApp->getWebDataServices(), &CWebDataServices::swiftDbModelMatchingEntitiesRead, this, &CSimulatorCommon::onSwiftDbModelMatchingEntitiesRead, Qt::QueuedConnection);
|
||||||
}
|
}
|
||||||
|
|
||||||
// info
|
// info
|
||||||
@@ -243,7 +243,7 @@ namespace BlackCore
|
|||||||
else
|
else
|
||||||
{
|
{
|
||||||
// we wait for the data
|
// we wait for the data
|
||||||
connect(sApp->getWebDataServices(), &CWebDataServices::swiftDbModelMatchingEntities, this, [ = ]
|
connect(sApp->getWebDataServices(), &CWebDataServices::swiftDbModelMatchingEntitiesRead, this, [ = ]
|
||||||
{
|
{
|
||||||
this->reverseLookupAndUpdateOwnAircraftModel(model);
|
this->reverseLookupAndUpdateOwnAircraftModel(model);
|
||||||
});
|
});
|
||||||
@@ -286,17 +286,17 @@ namespace BlackCore
|
|||||||
return reverseModel;
|
return reverseModel;
|
||||||
}
|
}
|
||||||
|
|
||||||
void CSimulatorCommon::ps_allSwiftDataRead()
|
void CSimulatorCommon::onSwiftDbAllDataRead()
|
||||||
{
|
{
|
||||||
// void, can be overridden in specialized drivers
|
// void, can be overridden in specialized drivers
|
||||||
}
|
}
|
||||||
|
|
||||||
void CSimulatorCommon::ps_modelMatchingEntities()
|
void CSimulatorCommon::onSwiftDbModelMatchingEntitiesRead()
|
||||||
{
|
{
|
||||||
// void, can be overridden in specialized drivers
|
// void, can be overridden in specialized drivers
|
||||||
}
|
}
|
||||||
|
|
||||||
void CSimulatorCommon::ps_airportsRead()
|
void CSimulatorCommon::onSwiftDbAirportsRead()
|
||||||
{
|
{
|
||||||
// void, can be overridden in specialized drivers
|
// void, can be overridden in specialized drivers
|
||||||
}
|
}
|
||||||
@@ -461,12 +461,12 @@ namespace BlackCore
|
|||||||
CSimpleCommandParser::registerCommand({".drv spline|linear <callsign>", "set spline/linear interpolator for one/all callsign(s)"});
|
CSimpleCommandParser::registerCommand({".drv spline|linear <callsign>", "set spline/linear interpolator for one/all callsign(s)"});
|
||||||
}
|
}
|
||||||
|
|
||||||
void CSimulatorCommon::ps_oneSecondTimer()
|
void CSimulatorCommon::oneSecondTimerTimeout()
|
||||||
{
|
{
|
||||||
this->blinkHighlightedAircraft();
|
this->blinkHighlightedAircraft();
|
||||||
}
|
}
|
||||||
|
|
||||||
void CSimulatorCommon::ps_recalculateRenderedAircraft(const CAirspaceAircraftSnapshot &snapshot)
|
void CSimulatorCommon::onRecalculatedRenderedAircraft(const CAirspaceAircraftSnapshot &snapshot)
|
||||||
{
|
{
|
||||||
if (!snapshot.isValidSnapshot()) { return;}
|
if (!snapshot.isValidSnapshot()) { return;}
|
||||||
|
|
||||||
@@ -516,18 +516,18 @@ namespace BlackCore
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void CSimulatorCommon::ps_remoteProviderAddAircraftSituation(const CAircraftSituation &situation)
|
void CSimulatorCommon::onRemoteProviderAddedAircraftSituation(const CAircraftSituation &situation)
|
||||||
{
|
{
|
||||||
Q_UNUSED(situation);
|
Q_UNUSED(situation);
|
||||||
}
|
}
|
||||||
|
|
||||||
void CSimulatorCommon::ps_remoteProviderAddAircraftParts(const BlackMisc::Aviation::CCallsign &callsign, const CAircraftParts &parts)
|
void CSimulatorCommon::onRemoteProviderAddedAircraftParts(const BlackMisc::Aviation::CCallsign &callsign, const CAircraftParts &parts)
|
||||||
{
|
{
|
||||||
Q_UNUSED(callsign);
|
Q_UNUSED(callsign);
|
||||||
Q_UNUSED(parts);
|
Q_UNUSED(parts);
|
||||||
}
|
}
|
||||||
|
|
||||||
void CSimulatorCommon::ps_remoteProviderRemovedAircraft(const CCallsign &callsign)
|
void CSimulatorCommon::onRemoteProviderRemovedAircraft(const CCallsign &callsign)
|
||||||
{
|
{
|
||||||
Q_UNUSED(callsign);
|
Q_UNUSED(callsign);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -106,34 +106,6 @@ namespace BlackCore
|
|||||||
|
|
||||||
// --------- ISimulator implementations ------------
|
// --------- ISimulator implementations ------------
|
||||||
|
|
||||||
protected slots:
|
|
||||||
//! \name Connected with remote aircraft provider signals
|
|
||||||
//! @{
|
|
||||||
//! Slow timer used to highlight aircraft, can be used for other things too
|
|
||||||
virtual void ps_oneSecondTimer();
|
|
||||||
|
|
||||||
//! Recalculate the rendered aircraft, this happens when restrictions are applied (max. aircraft, range)
|
|
||||||
virtual void ps_recalculateRenderedAircraft(const BlackMisc::Simulation::CAirspaceAircraftSnapshot &snapshot);
|
|
||||||
|
|
||||||
//! Provider added situation
|
|
||||||
virtual void ps_remoteProviderAddAircraftSituation(const BlackMisc::Aviation::CAircraftSituation &situation);
|
|
||||||
|
|
||||||
//! Provider added parts
|
|
||||||
virtual void ps_remoteProviderAddAircraftParts(const BlackMisc::Aviation::CCallsign &callsign, const BlackMisc::Aviation::CAircraftParts &parts);
|
|
||||||
|
|
||||||
//! Provider removed aircraft
|
|
||||||
virtual void ps_remoteProviderRemovedAircraft(const BlackMisc::Aviation::CCallsign &callsign);
|
|
||||||
//! @}
|
|
||||||
|
|
||||||
//! All swift data read from DB
|
|
||||||
virtual void ps_allSwiftDataRead();
|
|
||||||
|
|
||||||
//! DB models read
|
|
||||||
virtual void ps_modelMatchingEntities();
|
|
||||||
|
|
||||||
//! DB Airports read
|
|
||||||
virtual void ps_airportsRead();
|
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
//! Constructor
|
//! Constructor
|
||||||
CSimulatorCommon(const BlackMisc::Simulation::CSimulatorPluginInfo &info,
|
CSimulatorCommon(const BlackMisc::Simulation::CSimulatorPluginInfo &info,
|
||||||
@@ -148,6 +120,28 @@ namespace BlackCore
|
|||||||
virtual bool logicallyRemoveRemoteAircraft(const BlackMisc::Aviation::CCallsign &callsign) override;
|
virtual bool logicallyRemoveRemoteAircraft(const BlackMisc::Aviation::CCallsign &callsign) override;
|
||||||
//! @}
|
//! @}
|
||||||
|
|
||||||
|
//! \name When swift DB data are read
|
||||||
|
//! @{
|
||||||
|
virtual void onSwiftDbAllDataRead();
|
||||||
|
virtual void onSwiftDbModelMatchingEntitiesRead();
|
||||||
|
virtual void onSwiftDbAirportsRead();
|
||||||
|
//! @}
|
||||||
|
|
||||||
|
//! \name Connected with remote aircraft provider signals
|
||||||
|
//! @{
|
||||||
|
//! Recalculate the rendered aircraft, this happens when restrictions are applied (max. aircraft, range)
|
||||||
|
virtual void onRecalculatedRenderedAircraft(const BlackMisc::Simulation::CAirspaceAircraftSnapshot &snapshot);
|
||||||
|
|
||||||
|
//! Provider added situation
|
||||||
|
virtual void onRemoteProviderAddedAircraftSituation(const BlackMisc::Aviation::CAircraftSituation &situation);
|
||||||
|
|
||||||
|
//! Provider added parts
|
||||||
|
virtual void onRemoteProviderAddedAircraftParts(const BlackMisc::Aviation::CCallsign &callsign, const BlackMisc::Aviation::CAircraftParts &parts);
|
||||||
|
|
||||||
|
//! Provider removed aircraft
|
||||||
|
virtual void onRemoteProviderRemovedAircraft(const BlackMisc::Aviation::CCallsign &callsign);
|
||||||
|
//! @}
|
||||||
|
|
||||||
//! New plugin info
|
//! New plugin info
|
||||||
//! \remark normally only used by
|
//! \remark normally only used by
|
||||||
void setNewPluginInfo(const BlackMisc::Simulation::CSimulatorPluginInfo &info, const BlackMisc::Simulation::CAircraftModel &defaultModel);
|
void setNewPluginInfo(const BlackMisc::Simulation::CSimulatorPluginInfo &info, const BlackMisc::Simulation::CAircraftModel &defaultModel);
|
||||||
@@ -197,12 +191,15 @@ namespace BlackCore
|
|||||||
//! Show log messages?
|
//! Show log messages?
|
||||||
bool showDebugLogMessage() const;
|
bool showDebugLogMessage() const;
|
||||||
|
|
||||||
|
//! Slow timer used to highlight aircraft, can be used for other things too
|
||||||
|
virtual void oneSecondTimerTimeout();
|
||||||
|
|
||||||
bool m_pausedSimFreezesInterpolation = false; //!< paused simulator will also pause interpolation (so AI aircraft will hold)
|
bool m_pausedSimFreezesInterpolation = false; //!< paused simulator will also pause interpolation (so AI aircraft will hold)
|
||||||
bool m_autoCalcAirportDistance = true; //!< automatically calculate airport distance and bearing
|
bool m_autoCalcAirportDistance = true; //!< automatically calculate airport distance and bearing
|
||||||
BlackMisc::Simulation::CAircraftModel m_defaultModel; //!< default model
|
|
||||||
int m_statsUpdateAircraftCountMs = 0; //!< statistics update count
|
int m_statsUpdateAircraftCountMs = 0; //!< statistics update count
|
||||||
qint64 m_statsUpdateAircraftTimeTotalMs = 0; //!< statistics update time
|
qint64 m_statsUpdateAircraftTimeTotalMs = 0; //!< statistics update time
|
||||||
qint64 m_statsUpdateAircraftTimeAvgMs = 0; //!< statistics update time
|
qint64 m_statsUpdateAircraftTimeAvgMs = 0; //!< statistics update time
|
||||||
|
BlackMisc::Simulation::CAircraftModel m_defaultModel; //!< default model
|
||||||
BlackMisc::Simulation::CSimulatorInternals m_simulatorInternals; //!< setup object
|
BlackMisc::Simulation::CSimulatorInternals m_simulatorInternals; //!< setup object
|
||||||
BlackMisc::Simulation::CInterpolationLogger m_interpolationLogger; //!< log interpolation
|
BlackMisc::Simulation::CInterpolationLogger m_interpolationLogger; //!< log interpolation
|
||||||
mutable QReadWriteLock m_interpolationRenderingSetupMutex; //!< mutex protecting setup object
|
mutable QReadWriteLock m_interpolationRenderingSetupMutex; //!< mutex protecting setup object
|
||||||
|
|||||||
@@ -1187,11 +1187,11 @@ namespace BlackCore
|
|||||||
|
|
||||||
if (m_swiftDbEntitiesRead.testFlag(CEntityFlags::AllIcaoEntities) && signalEntitiesAlreadyRead(CEntityFlags::AllIcaoEntities))
|
if (m_swiftDbEntitiesRead.testFlag(CEntityFlags::AllIcaoEntities) && signalEntitiesAlreadyRead(CEntityFlags::AllIcaoEntities))
|
||||||
{
|
{
|
||||||
emit swiftDbAllIcaoEntities();
|
emit swiftDbAllIcaoEntitiesRead();
|
||||||
}
|
}
|
||||||
if (m_swiftDbEntitiesRead.testFlag(CEntityFlags::ModelMatchingEntities) && signalEntitiesAlreadyRead(CEntityFlags::ModelMatchingEntities))
|
if (m_swiftDbEntitiesRead.testFlag(CEntityFlags::ModelMatchingEntities) && signalEntitiesAlreadyRead(CEntityFlags::ModelMatchingEntities))
|
||||||
{
|
{
|
||||||
emit swiftDbModelMatchingEntities();
|
emit swiftDbModelMatchingEntitiesRead();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -460,10 +460,10 @@ namespace BlackCore
|
|||||||
void swiftDbAirportsRead();
|
void swiftDbAirportsRead();
|
||||||
|
|
||||||
//! All ICAO entities
|
//! All ICAO entities
|
||||||
void swiftDbAllIcaoEntities();
|
void swiftDbAllIcaoEntitiesRead();
|
||||||
|
|
||||||
//! All entities needed for model matching
|
//! All entities needed for model matching
|
||||||
void swiftDbModelMatchingEntities();
|
void swiftDbModelMatchingEntitiesRead();
|
||||||
//! @}
|
//! @}
|
||||||
|
|
||||||
public slots:
|
public slots:
|
||||||
|
|||||||
@@ -417,14 +417,14 @@ namespace BlackSimPlugin
|
|||||||
m_fsuipc->write(weatherGrid);
|
m_fsuipc->write(weatherGrid);
|
||||||
}
|
}
|
||||||
|
|
||||||
void CSimulatorFs9::ps_remoteProviderAddAircraftSituation(const CAircraftSituation &situation)
|
void CSimulatorFs9::onRemoteProviderAddedAircraftSituation(const CAircraftSituation &situation)
|
||||||
{
|
{
|
||||||
const auto it = m_hashFs9Clients.find(situation.getCallsign());
|
const auto it = m_hashFs9Clients.find(situation.getCallsign());
|
||||||
if (it == m_hashFs9Clients.end()) { return; }
|
if (it == m_hashFs9Clients.end()) { return; }
|
||||||
QTimer::singleShot(0, it->data(), [client = *it, situation] { client->getInterpolator()->addAircraftSituation(situation); });
|
QTimer::singleShot(0, it->data(), [client = *it, situation] { client->getInterpolator()->addAircraftSituation(situation); });
|
||||||
}
|
}
|
||||||
|
|
||||||
void CSimulatorFs9::ps_remoteProviderAddAircraftParts(const BlackMisc::Aviation::CCallsign &callsign, const CAircraftParts &parts)
|
void CSimulatorFs9::onRemoteProviderAddedAircraftParts(const BlackMisc::Aviation::CCallsign &callsign, const CAircraftParts &parts)
|
||||||
{
|
{
|
||||||
const auto it = m_hashFs9Clients.find(callsign);
|
const auto it = m_hashFs9Clients.find(callsign);
|
||||||
if (it == m_hashFs9Clients.end()) { return; }
|
if (it == m_hashFs9Clients.end()) { return; }
|
||||||
|
|||||||
@@ -78,8 +78,12 @@ namespace BlackSimPlugin
|
|||||||
//! \name Base class overrides
|
//! \name Base class overrides
|
||||||
//! @{
|
//! @{
|
||||||
virtual void injectWeatherGrid(const BlackMisc::Weather::CWeatherGrid &weatherGrid) override;
|
virtual void injectWeatherGrid(const BlackMisc::Weather::CWeatherGrid &weatherGrid) override;
|
||||||
virtual void ps_remoteProviderAddAircraftSituation(const BlackMisc::Aviation::CAircraftSituation &situation) override;
|
//! @}
|
||||||
virtual void ps_remoteProviderAddAircraftParts(const BlackMisc::Aviation::CCallsign &callsign, const BlackMisc::Aviation::CAircraftParts &parts) override;
|
|
||||||
|
//! \name Remote aircraft provider overrides
|
||||||
|
//! @{
|
||||||
|
virtual void onRemoteProviderAddedAircraftSituation(const BlackMisc::Aviation::CAircraftSituation &situation) override;
|
||||||
|
virtual void onRemoteProviderAddedAircraftParts(const BlackMisc::Aviation::CCallsign &callsign, const BlackMisc::Aviation::CAircraftParts &parts) override;
|
||||||
//! @}
|
//! @}
|
||||||
|
|
||||||
private slots:
|
private slots:
|
||||||
|
|||||||
@@ -147,14 +147,14 @@ namespace BlackSimPlugin
|
|||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
void CSimulatorFsCommon::ps_airportsRead()
|
void CSimulatorFsCommon::onSwiftDbAirportsRead()
|
||||||
{
|
{
|
||||||
const CAirportList webServiceAirports = this->getWebServiceAirports();
|
const CAirportList webServiceAirports = this->getWebServiceAirports();
|
||||||
if (!webServiceAirports.isEmpty())
|
if (!webServiceAirports.isEmpty())
|
||||||
{
|
{
|
||||||
m_airportsInRangeFromSimulator.updateMissingParts(webServiceAirports);
|
m_airportsInRangeFromSimulator.updateMissingParts(webServiceAirports);
|
||||||
}
|
}
|
||||||
CSimulatorCommon::ps_airportsRead();
|
CSimulatorCommon::onSwiftDbAirportsRead();
|
||||||
}
|
}
|
||||||
} // namespace
|
} // namespace
|
||||||
} // namespace
|
} // namespace
|
||||||
|
|||||||
@@ -48,10 +48,6 @@ namespace BlackSimPlugin
|
|||||||
virtual bool changeRemoteAircraftEnabled(const BlackMisc::Simulation::CSimulatedAircraft &aircraft) override;
|
virtual bool changeRemoteAircraftEnabled(const BlackMisc::Simulation::CSimulatedAircraft &aircraft) override;
|
||||||
// ---------------------- ISimulator ------------------
|
// ---------------------- ISimulator ------------------
|
||||||
|
|
||||||
protected slots:
|
|
||||||
//! \copydoc BlackCore::CSimulatorCommon::ps_allSwiftDataRead
|
|
||||||
virtual void ps_airportsRead() override;
|
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
//! Constructor
|
//! Constructor
|
||||||
CSimulatorFsCommon(const BlackMisc::Simulation::CSimulatorPluginInfo &info,
|
CSimulatorFsCommon(const BlackMisc::Simulation::CSimulatorPluginInfo &info,
|
||||||
@@ -63,6 +59,11 @@ namespace BlackSimPlugin
|
|||||||
//! Init the internal objects
|
//! Init the internal objects
|
||||||
virtual void initSimulatorInternals();
|
virtual void initSimulatorInternals();
|
||||||
|
|
||||||
|
//! \name When swift DB data are read
|
||||||
|
//! @{
|
||||||
|
virtual void onSwiftDbAirportsRead() override;
|
||||||
|
//! @}
|
||||||
|
|
||||||
//! \addtogroup swiftdotcommands
|
//! \addtogroup swiftdotcommands
|
||||||
//! @{
|
//! @{
|
||||||
//! <pre>
|
//! <pre>
|
||||||
|
|||||||
@@ -1434,13 +1434,13 @@ namespace BlackSimPlugin
|
|||||||
CSimulatorFsCommon::clearAllAircraft();
|
CSimulatorFsCommon::clearAllAircraft();
|
||||||
}
|
}
|
||||||
|
|
||||||
void CSimulatorFsxCommon::ps_remoteProviderAddAircraftSituation(const CAircraftSituation &situation)
|
void CSimulatorFsxCommon::onRemoteProviderAddedAircraftSituation(const CAircraftSituation &situation)
|
||||||
{
|
{
|
||||||
if (!m_simConnectObjects.contains(situation.getCallsign())) { return; }
|
if (!m_simConnectObjects.contains(situation.getCallsign())) { return; }
|
||||||
m_simConnectObjects[situation.getCallsign()].addAircraftSituation(situation);
|
m_simConnectObjects[situation.getCallsign()].addAircraftSituation(situation);
|
||||||
}
|
}
|
||||||
|
|
||||||
void CSimulatorFsxCommon::ps_remoteProviderAddAircraftParts(const BlackMisc::Aviation::CCallsign &callsign, const CAircraftParts &parts)
|
void CSimulatorFsxCommon::onRemoteProviderAddedAircraftParts(const BlackMisc::Aviation::CCallsign &callsign, const CAircraftParts &parts)
|
||||||
{
|
{
|
||||||
if (!m_simConnectObjects.contains(callsign)) { return; }
|
if (!m_simConnectObjects.contains(callsign)) { return; }
|
||||||
m_simConnectObjects[callsign].addAircraftParts(parts);
|
m_simConnectObjects[callsign].addAircraftParts(parts);
|
||||||
|
|||||||
@@ -135,8 +135,12 @@ namespace BlackSimPlugin
|
|||||||
virtual void clearAllAircraft() override;
|
virtual void clearAllAircraft() override;
|
||||||
virtual void initSimulatorInternals() override;
|
virtual void initSimulatorInternals() override;
|
||||||
virtual void injectWeatherGrid(const BlackMisc::Weather::CWeatherGrid &weatherGrid) override;
|
virtual void injectWeatherGrid(const BlackMisc::Weather::CWeatherGrid &weatherGrid) override;
|
||||||
virtual void ps_remoteProviderAddAircraftSituation(const BlackMisc::Aviation::CAircraftSituation &situation) override;
|
//! @}
|
||||||
virtual void ps_remoteProviderAddAircraftParts(const BlackMisc::Aviation::CCallsign &callsign, const BlackMisc::Aviation::CAircraftParts &parts) override;
|
|
||||||
|
//! \name Remote aircraft provider overrides
|
||||||
|
//! @{
|
||||||
|
virtual void onRemoteProviderAddedAircraftSituation(const BlackMisc::Aviation::CAircraftSituation &situation) override;
|
||||||
|
virtual void onRemoteProviderAddedAircraftParts(const BlackMisc::Aviation::CCallsign &callsign, const BlackMisc::Aviation::CAircraftParts &parts) override;
|
||||||
//! @}
|
//! @}
|
||||||
|
|
||||||
//! Timer event (our SimConnect event loop), runs dispatch
|
//! Timer event (our SimConnect event loop), runs dispatch
|
||||||
|
|||||||
@@ -526,7 +526,7 @@ namespace BlackSimPlugin
|
|||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
void CSimulatorXPlane::ps_remoteProviderAddAircraftSituation(const BlackMisc::Aviation::CAircraftSituation &situation)
|
void CSimulatorXPlane::onRemoteProviderAddedAircraftSituation(const BlackMisc::Aviation::CAircraftSituation &situation)
|
||||||
{
|
{
|
||||||
if (!isConnected()) { return; } //! \fixme why is this method called when not connected?
|
if (!isConnected()) { return; } //! \fixme why is this method called when not connected?
|
||||||
using namespace BlackMisc::PhysicalQuantities;
|
using namespace BlackMisc::PhysicalQuantities;
|
||||||
@@ -567,11 +567,11 @@ namespace BlackSimPlugin
|
|||||||
{
|
{
|
||||||
parts.setLights({ true, false, false, true, true, true, true, true });
|
parts.setLights({ true, false, false, true, true, true, true, true });
|
||||||
}
|
}
|
||||||
ps_remoteProviderAddAircraftParts(situation.getCallsign(), parts);
|
onRemoteProviderAddedAircraftParts(situation.getCallsign(), parts);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void CSimulatorXPlane::ps_remoteProviderAddAircraftParts(const BlackMisc::Aviation::CCallsign &callsign, const BlackMisc::Aviation::CAircraftParts &parts)
|
void CSimulatorXPlane::onRemoteProviderAddedAircraftParts(const BlackMisc::Aviation::CCallsign &callsign, const BlackMisc::Aviation::CAircraftParts &parts)
|
||||||
{
|
{
|
||||||
if (!isConnected()) { return; } //! \fixme why is this method called when not connected?
|
if (!isConnected()) { return; } //! \fixme why is this method called when not connected?
|
||||||
m_traffic->addPlaneSurfaces(callsign.asString(), parts.isGearDown() ? 1 : 0,
|
m_traffic->addPlaneSurfaces(callsign.asString(), parts.isGearDown() ? 1 : 0,
|
||||||
@@ -582,7 +582,7 @@ namespace BlackSimPlugin
|
|||||||
m_traffic->setPlaneTransponder(callsign.asString(), 2000, true, false);
|
m_traffic->setPlaneTransponder(callsign.asString(), 2000, true, false);
|
||||||
}
|
}
|
||||||
|
|
||||||
void CSimulatorXPlane::ps_remoteProviderRemovedAircraft(const CCallsign &callsign)
|
void CSimulatorXPlane::onRemoteProviderRemovedAircraft(const CCallsign &callsign)
|
||||||
{
|
{
|
||||||
Q_UNUSED(callsign);
|
Q_UNUSED(callsign);
|
||||||
//! \todo call removeRemoteAircraft or just let removeRemoteAircraft handle it?
|
//! \todo call removeRemoteAircraft or just let removeRemoteAircraft handle it?
|
||||||
|
|||||||
@@ -106,17 +106,14 @@ namespace BlackSimPlugin
|
|||||||
//! Creates an appropriate dbus connection from the string describing it
|
//! Creates an appropriate dbus connection from the string describing it
|
||||||
static QDBusConnection connectionFromString(const QString &str);
|
static QDBusConnection connectionFromString(const QString &str);
|
||||||
|
|
||||||
protected slots:
|
|
||||||
//! \copydoc BlackCore::CSimulatorCommon::ps_remoteProviderAddAircraftSituation
|
|
||||||
virtual void ps_remoteProviderAddAircraftSituation(const BlackMisc::Aviation::CAircraftSituation &situation) override;
|
|
||||||
|
|
||||||
//! \copydoc BlackCore::CSimulatorCommon::ps_remoteProviderAddAircraftParts
|
|
||||||
virtual void ps_remoteProviderAddAircraftParts(const BlackMisc::Aviation::CCallsign &callsign, const BlackMisc::Aviation::CAircraftParts &parts) override;
|
|
||||||
|
|
||||||
//! \copydoc BlackCore::CSimulatorCommon::ps_remoteProviderRemovedAircraft
|
|
||||||
virtual void ps_remoteProviderRemovedAircraft(const BlackMisc::Aviation::CCallsign &callsign) override;
|
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
|
//! \name Remote aircraft provider overrides
|
||||||
|
//! @{
|
||||||
|
virtual void onRemoteProviderAddedAircraftSituation(const BlackMisc::Aviation::CAircraftSituation &situation) override;
|
||||||
|
virtual void onRemoteProviderAddedAircraftParts(const BlackMisc::Aviation::CCallsign &callsign, const BlackMisc::Aviation::CAircraftParts &parts) override;
|
||||||
|
virtual void onRemoteProviderRemovedAircraft(const BlackMisc::Aviation::CCallsign &callsign) override;
|
||||||
|
//! @}
|
||||||
|
|
||||||
//! \copydoc BlackCore::ISimulator::isConnected
|
//! \copydoc BlackCore::ISimulator::isConnected
|
||||||
virtual bool isConnected() const override;
|
virtual bool isConnected() const override;
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user