Ref T273, Ref T275 compare equal parts/situation functions

This commit is contained in:
Klaus Basan
2018-06-04 17:49:13 +02:00
parent 8f336a9631
commit 6c0c925fa2
2 changed files with 55 additions and 7 deletions

View File

@@ -16,6 +16,7 @@
#include <QTimer>
#include <QReadWriteLock>
#include <QtGlobal>
#include <QMap>
#include "blackcore/aircraftmatcher.h"
#include "blackcore/blackcoreexport.h"
@@ -103,6 +104,13 @@ namespace BlackCore
//! @}
//! \copydoc ISimulator::parseCommandLine
virtual bool parseCommandLine(const QString &commandLine, const BlackMisc::CIdentifier &originator) override;
//! \name Interface implementations, called from context
//! @{
virtual bool logicallyAddRemoteAircraft(const BlackMisc::Simulation::CSimulatedAircraft &remoteAircraft) override;
virtual bool logicallyRemoveRemoteAircraft(const BlackMisc::Aviation::CCallsign &callsign) override;
//! @}
// --------- ISimulator implementations ------------
//! Register help
@@ -142,12 +150,6 @@ namespace BlackCore
BlackMisc::Network::IClientProvider *clientProvider,
QObject *parent);
//! \name Interface implementations, called from context
//! @{
virtual bool logicallyAddRemoteAircraft(const BlackMisc::Simulation::CSimulatedAircraft &remoteAircraft) override;
virtual bool logicallyRemoveRemoteAircraft(const BlackMisc::Aviation::CCallsign &callsign) override;
//! @}
//! \name When swift DB data are read
//! @{
virtual void onSwiftDbAllDataRead();
@@ -235,6 +237,18 @@ namespace BlackCore
//! Update stats and flags
void setStatsRemoteAircraftUpdate(qint64 startTime);
//! Equal to last sent situation
bool isEqualLastSent(const BlackMisc::Aviation::CAircraftSituation &compare) const;
//! Equal to last sent situation
bool isEqualLastSent(const BlackMisc::Aviation::CAircraftParts &compare, const BlackMisc::Aviation::CCallsign &callsign) const;
//! Remember as last sent
void rememberLastSent(const BlackMisc::Aviation::CAircraftSituation &sent);
//! Remember as last sent
void rememberLastSent(const BlackMisc::Aviation::CAircraftParts &sent, const BlackMisc::Aviation::CCallsign &callsign);
//! Lookup against DB data
static BlackMisc::Simulation::CAircraftModel reverseLookupModel(const BlackMisc::Simulation::CAircraftModel &model);
@@ -250,7 +264,9 @@ namespace BlackCore
BlackMisc::Simulation::CSimulatorInternals m_simulatorInternals; //!< setup object
BlackMisc::Simulation::CInterpolationLogger m_interpolationLogger; //!< log.interpolation
QMap<BlackMisc::Aviation::CCallsign, qint64> m_clampedLogMsg; //!< when logged last so there, can be used so there is no log message overflow
QMap<BlackMisc::Aviation::CCallsign, qint64> m_clampedLogMsg; //!< when logged last for this callsign, can be used so there is no log message overflow
QMap<BlackMisc::Aviation::CCallsign, BlackMisc::Aviation::CAircraftSituation> m_lastSentSituation; //!< last situation sent to simulator
QMap<BlackMisc::Aviation::CCallsign, BlackMisc::Aviation::CAircraftParts> m_lastSentParts; //!< last parts sent to simulator
// some optional functionality which can be used by the simulators as needed
BlackMisc::Simulation::CSimulatedAircraftList m_addAgainAircraftWhenRemoved; //!< add this model again when removed, normally used to change model