refs #417, made the isConnected, isRunning, isPaused functions protected.

They should be only used with the drivers.
This commit is contained in:
Klaus Basan
2015-05-17 23:56:29 +02:00
parent e53395412a
commit 25c0cea575
4 changed files with 35 additions and 30 deletions

View File

@@ -51,15 +51,6 @@ namespace BlackCore
//! Destructor
virtual ~ISimulator() {}
//! Are we connected to the simulator?
virtual bool isConnected() const = 0;
//! Simulator paused?
virtual bool isPaused() const = 0;
//! Simulator running?
virtual bool isSimulating() const = 0;
//! Combined status
virtual int getSimulatorStatus() const;
@@ -206,6 +197,15 @@ namespace BlackCore
//! Default constructor
ISimulator(QObject *parent = nullptr) : QObject(parent) {}
//! Are we connected to the simulator?
virtual bool isConnected() const = 0;
//! Simulator paused?
virtual bool isPaused() const = 0;
//! Simulator running?
virtual bool isSimulating() const = 0;
//! Add new remote aircraft physically to the simulator
//! \sa changeRemoteAircraftEnabled to hide a remote aircraft
virtual bool physicallyAddRemoteAircraft(const BlackMisc::Simulation::CSimulatedAircraft &remoteAircraft) = 0;

View File

@@ -48,12 +48,6 @@ namespace BlackSimPlugin
//! Destructor
virtual ~CSimulatorFs9() = default;
//! \copydoc ISimulator::isConnected()
virtual bool isConnected() const override;
//! \copydoc ISimulator::isSimulating
virtual bool isSimulating() const override { return isConnected(); }
//! \copydoc ISimulator::connectTo()
virtual bool connectTo() override;
@@ -88,6 +82,12 @@ namespace BlackSimPlugin
virtual void displayTextMessage(const BlackMisc::Network::CTextMessage &message) const override;
protected:
//! \copydoc ISimulator::isConnected()
virtual bool isConnected() const override;
//! \copydoc ISimulator::isSimulating
virtual bool isSimulating() const override { return isConnected(); }
//! Timer event
virtual void timerEvent(QTimerEvent *event);

View File

@@ -83,12 +83,6 @@ namespace BlackSimPlugin
//! Destructor
virtual ~CSimulatorFsx();
//! \copydoc ISimulator::isConnected()
virtual bool isConnected() const override;
//! \copydoc ISimulator::isSimulating
virtual bool isSimulating() const override;
//! SimConnect Callback
static void CALLBACK SimConnectProc(SIMCONNECT_RECV *pData, DWORD cbData, void *pContext);
@@ -135,6 +129,12 @@ namespace BlackSimPlugin
void setSimConnectObjectID(DWORD requestID, DWORD objectID);
protected:
//! \copydoc ISimulator::isConnected()
virtual bool isConnected() const override;
//! \copydoc ISimulator::isSimulating
virtual bool isSimulating() const override;
//! Timer event (our SimConnect event loop), runs \sa ps_dispatch
//! \sa m_simconnectTimerId
virtual void timerEvent(QTimerEvent *event) override;

View File

@@ -38,18 +38,9 @@ namespace BlackSimPlugin
BlackMisc::Simulation::IRemoteAircraftProvider *remoteAircraftProvider,
QObject *parent = nullptr);
//! \copydoc BlackCore::ISimulator::isConnected
virtual bool isConnected() const override;
//! \copydoc ISimulator::isTimeSynchronized
virtual bool isTimeSynchronized() const override { return false; } // TODO: Can we query the XP intrinisc feature?
//! \copydoc ISimulator::isSimPaused
virtual bool isPaused() const override { return false; }
//! \copydoc ISimulator::isSimulating
virtual bool isSimulating() const override { return isConnected(); }
//! \copydoc BlackCore::ISimulator::getIcaoForModelString
virtual BlackMisc::Aviation::CAircraftIcaoData getIcaoForModelString(const QString &modelString) const override;
@@ -120,6 +111,20 @@ namespace BlackSimPlugin
//! \copydoc CSimulatorCommon::ps_remoteProviderRemovedAircraft
virtual void ps_remoteProviderRemovedAircraft(const BlackMisc::Aviation::CCallsign &callsign) override;
protected:
//! \copydoc BlackCore::ISimulator::isConnected
virtual bool isConnected() const override;
//! \copydoc ISimulator::isSimPaused
virtual bool isPaused() const override
{
//! \todo XP: provide correct pause state
return false;
}
//! \copydoc ISimulator::isSimulating
virtual bool isSimulating() const override { return isConnected(); }
private slots:
void ps_serviceUnregistered();
void ps_setAirportsInRange(const QStringList &icaoCodes, const QStringList &names, const BlackMisc::CSequence<double> &lats, const BlackMisc::CSequence<double> &lons, const BlackMisc::CSequence<double> &alts);