refs #283 Rationalized ISimulator slots for managing remote aircraft

This commit is contained in:
Mathew Sutcliffe
2014-08-22 21:19:56 +01:00
parent a6fd2bdeb2
commit f4b7a9c6a2
9 changed files with 51 additions and 33 deletions

View File

@@ -247,11 +247,25 @@ namespace BlackCore
}
}
void CContextSimulator::ps_addAircraftSituation(const CCallsign &callsign, const CAircraftSituation &initialSituation)
void CContextSimulator::ps_addRemoteAircraft(const CCallsign &callsign, const CAircraftSituation &initialSituation)
{
Q_ASSERT(this->m_simulator);
if (!this->m_simulator) return;
this->m_simulator->addAircraftSituation(callsign, initialSituation);
this->m_simulator->addRemoteAircraft(callsign, initialSituation);
}
void CContextSimulator::ps_addAircraftSituation(const CCallsign &callsign, const CAircraftSituation &situation)
{
Q_ASSERT(this->m_simulator);
if (!this->m_simulator) return;
this->m_simulator->addAircraftSituation(callsign, situation);
}
void CContextSimulator::ps_removeRemoteAircraft(const CCallsign &callsign)
{
Q_ASSERT(this->m_simulator);
if (!this->m_simulator) return;
this->m_simulator->removeRemoteAircraft(callsign);
}
void CContextSimulator::ps_updateCockpitFromContext(const CAircraft &ownAircraft, const QString &originator)

View File

@@ -102,8 +102,14 @@ namespace BlackCore
//! Update own aircraft, because simulator has changed something
void ps_updateOwnAircraft();
//! \copydoc ISimulator::addRemoteAircraft
void ps_addRemoteAircraft(const BlackMisc::Aviation::CCallsign &callsign, const BlackMisc::Aviation::CAircraftSituation &initialSituation);
//! \copydoc ISimulator::addAircraftSituation
void ps_addAircraftSituation(const BlackMisc::Aviation::CCallsign &callsign, const BlackMisc::Aviation::CAircraftSituation &initialSituation);
void ps_addAircraftSituation(const BlackMisc::Aviation::CCallsign &callsign, const BlackMisc::Aviation::CAircraftSituation &situation);
//! \copydoc ISimulator::removeRemoteAircraft
void ps_removeRemoteAircraft(const BlackMisc::Aviation::CCallsign &callsign);
//! Update cockpit from context, because someone else has changed cockpit (e.g. GUI, 3rd party)
//! \remarks set by runtime, only to be used locally (not via DBus)

View File

@@ -61,10 +61,11 @@ namespace BlackCore
virtual BlackMisc::Aviation::CAircraft getOwnAircraft() const = 0;
//! Add new remote aircraft to the simulator
virtual void addRemoteAircraft(const BlackMisc::Aviation::CCallsign &callsign, const QString &type, const BlackMisc::Aviation::CAircraftSituation &initialSituation) = 0;
//! \todo Add parameter: aircraft model
virtual void addRemoteAircraft(const BlackMisc::Aviation::CCallsign &callsign, const BlackMisc::Aviation::CAircraftSituation &initialSituation) = 0;
//! Add new aircraft situation
virtual void addAircraftSituation(const BlackMisc::Aviation::CCallsign &callsign, const BlackMisc::Aviation::CAircraftSituation &initialSituation) = 0;
virtual void addAircraftSituation(const BlackMisc::Aviation::CCallsign &callsign, const BlackMisc::Aviation::CAircraftSituation &situation) = 0;
//! Remove remote aircraft from simulator
virtual void removeRemoteAircraft(const BlackMisc::Aviation::CCallsign &callsign) = 0;