Ref T259, Ref T243 remove aircraft parts and situations from interpolator

* no longer using the add parts/situations signals
* will use the remote aircraft provider parts directly

Result: all parts/situations are stored only once in memory and in one single place
This commit is contained in:
Klaus Basan
2018-03-24 17:27:16 +01:00
parent 4248c1b689
commit 9abc57bb3d
27 changed files with 140 additions and 351 deletions

View File

@@ -314,23 +314,6 @@ namespace BlackSimPlugin
return CSimulatorCommon::physicallyRemoveAllRemoteAircraft();
}
void CSimulatorEmulated::onRemoteProviderAddedAircraftSituation(const CAircraftSituation &situation)
{
const CCallsign cs = situation.getCallsign();
if (!m_interpolators.contains(cs)) { return; }
CInterpolatorMulti *im = m_interpolators[cs];
Q_ASSERT_X(im, Q_FUNC_INFO, "no interpolator");
im->addAircraftSituation(situation);
}
void BlackSimPlugin::Emulated::CSimulatorEmulated::onRemoteProviderAddedAircraftParts(const CCallsign &callsign, const CAircraftParts &parts)
{
if (!m_interpolators.contains(callsign)) { return; }
CInterpolatorMulti *im = m_interpolators[callsign];
Q_ASSERT_X(im, Q_FUNC_INFO, "no interpolator");
im->addAircraftParts(parts);
}
bool CSimulatorEmulated::parseDetails(const CSimpleCommandParser &parser)
{
if (m_monitorWidget && parser.isKnownCommand())

View File

@@ -124,12 +124,6 @@ namespace BlackSimPlugin
// just logged
virtual int physicallyRemoveAllRemoteAircraft() 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;
//! @}
//! \copydoc BlackCore::CSimulatorCommon::parseDetails
virtual bool parseDetails(const BlackMisc::CSimpleCommandParser &parser) override;

View File

@@ -205,8 +205,8 @@ namespace BlackSimPlugin
if (!m_simulator) { return; }
ui->le_PhysicallyAddedAircraft->setText(QString::number(m_simulator->getStatisticsPhysicallyAddedAircraft()));
ui->le_PhysicallyRemovedAircraft->setText(QString::number(m_simulator->getStatisticsPhysicallyRemovedAircraft()));
ui->le_SituationAdded->setText(QString::number(m_simulator->getStatisticsSituationAdded()));
ui->le_PartsAdded->setText(QString::number(m_simulator->getStatisticsPartsAdded()));
// ui->le_SituationAdded->setText(QString::number(m_simulator->getStatisticsSituationAdded()));
// ui->le_PartsAdded->setText(QString::number(m_simulator->getStatisticsPartsAdded()));
ui->le_AircraftRendered->setText(QString::number(m_simulator->m_renderedAircraft.size()));
ui->le_PartsEnabledAircraft->setText(QString::number(m_simulator->getRemoteAircraftSupportingPartsCount()));
}