Ref T261, set client provider in simulator

Needed to obtain client capabilities
This commit is contained in:
Klaus Basan
2018-05-04 22:07:03 +02:00
committed by Roland Winklmeier
parent 2a86378f79
commit 3031e5b648
21 changed files with 93 additions and 93 deletions

View File

@@ -239,11 +239,12 @@ namespace BlackCore
void receivedRequestedElevation(const BlackMisc::Geo::CElevationPlane &plane, const BlackMisc::Aviation::CCallsign &callsign); void receivedRequestedElevation(const BlackMisc::Geo::CElevationPlane &plane, const BlackMisc::Aviation::CCallsign &callsign);
protected: protected:
//! Default constructor //! Constructor with all the providers
ISimulator(const BlackMisc::Simulation::CSimulatorPluginInfo &pluginInfo, ISimulator(const BlackMisc::Simulation::CSimulatorPluginInfo &pluginInfo,
BlackMisc::Simulation::IOwnAircraftProvider *ownAircraftProvider, BlackMisc::Simulation::IOwnAircraftProvider *ownAircraftProvider,
BlackMisc::Simulation::IRemoteAircraftProvider *remoteAircraftProvider, BlackMisc::Simulation::IRemoteAircraftProvider *remoteAircraftProvider,
BlackMisc::Weather::IWeatherGridProvider *weatherGridProvider, BlackMisc::Weather::IWeatherGridProvider *weatherGridProvider,
BlackMisc::Network::IClientProvider *clientProvider,
QObject *parent = nullptr); QObject *parent = nullptr);
//! Are we connected to the simulator? //! Are we connected to the simulator?
@@ -344,7 +345,8 @@ namespace BlackCore
const BlackMisc::Simulation::CSimulatorPluginInfo &info, const BlackMisc::Simulation::CSimulatorPluginInfo &info,
BlackMisc::Simulation::IOwnAircraftProvider *ownAircraftProvider, BlackMisc::Simulation::IOwnAircraftProvider *ownAircraftProvider,
BlackMisc::Simulation::IRemoteAircraftProvider *remoteAircraftProvider, BlackMisc::Simulation::IRemoteAircraftProvider *remoteAircraftProvider,
BlackMisc::Weather::IWeatherGridProvider *weatherGridProvider) = 0; BlackMisc::Weather::IWeatherGridProvider *weatherGridProvider,
BlackMisc::Network::IClientProvider *clientProvider) = 0;
//! Simulator listener instance //! Simulator listener instance
virtual ISimulatorListener *createListener(const BlackMisc::Simulation::CSimulatorPluginInfo &info) = 0; virtual ISimulatorListener *createListener(const BlackMisc::Simulation::CSimulatorPluginInfo &info) = 0;

View File

@@ -34,8 +34,9 @@ namespace BlackSimPlugin
IOwnAircraftProvider *ownAircraftProvider, IOwnAircraftProvider *ownAircraftProvider,
IRemoteAircraftProvider *remoteAircraftProvider, IRemoteAircraftProvider *remoteAircraftProvider,
IWeatherGridProvider *weatherGridProvider, IWeatherGridProvider *weatherGridProvider,
IClientProvider *clientProvider,
QObject *parent) : QObject *parent) :
CSimulatorCommon(info, ownAircraftProvider, remoteAircraftProvider, weatherGridProvider, parent) CSimulatorCommon(info, ownAircraftProvider, remoteAircraftProvider, weatherGridProvider, clientProvider, parent)
{ {
Q_ASSERT_X(sApp && sApp->getIContextSimulator(), Q_FUNC_INFO, "Need context"); Q_ASSERT_X(sApp && sApp->getIContextSimulator(), Q_FUNC_INFO, "Need context");

View File

@@ -43,6 +43,7 @@ namespace BlackSimPlugin
BlackMisc::Simulation::IOwnAircraftProvider *ownAircraftProvider, BlackMisc::Simulation::IOwnAircraftProvider *ownAircraftProvider,
BlackMisc::Simulation::IRemoteAircraftProvider *remoteAircraftProvider, BlackMisc::Simulation::IRemoteAircraftProvider *remoteAircraftProvider,
BlackMisc::Weather::IWeatherGridProvider *weatherGridProvider, BlackMisc::Weather::IWeatherGridProvider *weatherGridProvider,
BlackMisc::Network::IClientProvider *clientProvider,
QObject *parent = nullptr); QObject *parent = nullptr);
// functions implemented // functions implemented

View File

@@ -22,10 +22,10 @@ namespace BlackSimPlugin
BlackCore::ISimulator *CSimulatorEmulatedFactory::create(const CSimulatorPluginInfo &info, BlackCore::ISimulator *CSimulatorEmulatedFactory::create(const CSimulatorPluginInfo &info,
IOwnAircraftProvider *ownAircraftProvider, IOwnAircraftProvider *ownAircraftProvider,
IRemoteAircraftProvider *remoteAircraftProvider, IRemoteAircraftProvider *remoteAircraftProvider,
BlackMisc::Weather::IWeatherGridProvider *weatherGridProvider) BlackMisc::Weather::IWeatherGridProvider *weatherGridProvider, Network::IClientProvider *clientProvider)
{ {
Q_ASSERT(ownAircraftProvider); Q_ASSERT(ownAircraftProvider);
return new CSimulatorEmulated(info, ownAircraftProvider, remoteAircraftProvider, weatherGridProvider, this); return new CSimulatorEmulated(info, ownAircraftProvider, remoteAircraftProvider, weatherGridProvider, clientProvider, this);
} }
BlackCore::ISimulatorListener *CSimulatorEmulatedFactory::createListener(const CSimulatorPluginInfo &info) BlackCore::ISimulatorListener *CSimulatorEmulatedFactory::createListener(const CSimulatorPluginInfo &info)

View File

@@ -36,7 +36,8 @@ namespace BlackSimPlugin
virtual BlackCore::ISimulator *create(const BlackMisc::Simulation::CSimulatorPluginInfo &info, virtual BlackCore::ISimulator *create(const BlackMisc::Simulation::CSimulatorPluginInfo &info,
BlackMisc::Simulation::IOwnAircraftProvider *ownAircraftProvider, BlackMisc::Simulation::IOwnAircraftProvider *ownAircraftProvider,
BlackMisc::Simulation::IRemoteAircraftProvider *remoteAircraftProvider, BlackMisc::Simulation::IRemoteAircraftProvider *remoteAircraftProvider,
BlackMisc::Weather::IWeatherGridProvider *weatherGridProvider) override; BlackMisc::Weather::IWeatherGridProvider *weatherGridProvider,
BlackMisc::Network::IClientProvider *clientProvider) override;
//! \copydoc BlackCore::ISimulatorFactory::createListener //! \copydoc BlackCore::ISimulatorFactory::createListener
virtual BlackCore::ISimulatorListener *createListener(const BlackMisc::Simulation::CSimulatorPluginInfo &info) override; virtual BlackCore::ISimulatorListener *createListener(const BlackMisc::Simulation::CSimulatorPluginInfo &info) override;

View File

@@ -28,6 +28,7 @@ using namespace BlackMisc::Aviation;
using namespace BlackMisc::Network; using namespace BlackMisc::Network;
using namespace BlackMisc::PhysicalQuantities; using namespace BlackMisc::PhysicalQuantities;
using namespace BlackMisc::Geo; using namespace BlackMisc::Geo;
using namespace BlackMisc::Network;
using namespace BlackMisc::Simulation; using namespace BlackMisc::Simulation;
using namespace BlackMisc::Simulation::FsCommon; using namespace BlackMisc::Simulation::FsCommon;
using namespace BlackMisc::Weather; using namespace BlackMisc::Weather;
@@ -99,15 +100,15 @@ namespace BlackSimPlugin
return situation; return situation;
} }
CSimulatorFs9::CSimulatorFs9( CSimulatorFs9::CSimulatorFs9(const CSimulatorPluginInfo &info,
const CSimulatorPluginInfo &info, const QSharedPointer<CFs9Host> &fs9Host,
const QSharedPointer<CFs9Host> &fs9Host, const QSharedPointer<CLobbyClient> &lobbyClient,
const QSharedPointer<CLobbyClient> &lobbyClient, IOwnAircraftProvider *ownAircraftProvider,
IOwnAircraftProvider *ownAircraftProvider, IRemoteAircraftProvider *remoteAircraftProvider,
IRemoteAircraftProvider *remoteAircraftProvider, IWeatherGridProvider *weatherGridProvider,
IWeatherGridProvider *weatherGridProvider, IClientProvider *clientProvider,
QObject *parent) : QObject *parent) :
CSimulatorFsCommon(info, ownAircraftProvider, remoteAircraftProvider, weatherGridProvider, parent), CSimulatorFsCommon(info, ownAircraftProvider, remoteAircraftProvider, weatherGridProvider, clientProvider, parent),
m_fs9Host(fs9Host), m_fs9Host(fs9Host),
m_lobbyClient(lobbyClient) m_lobbyClient(lobbyClient)
{ {
@@ -231,34 +232,12 @@ namespace BlackSimPlugin
const CTransponder newTransponder = ownAircraft.getTransponder(); const CTransponder newTransponder = ownAircraft.getTransponder();
bool changed = false; bool changed = false;
if (newCom1.getFrequencyActive() != m_simCom1.getFrequencyActive()) if (newCom1.getFrequencyActive() != m_simCom1.getFrequencyActive()) { changed = true; }
{ if (newCom1.getFrequencyStandby() != m_simCom1.getFrequencyStandby()) { changed = true; }
changed = true; if (newCom2.getFrequencyActive() != m_simCom2.getFrequencyActive()) { changed = true; }
if (newCom2.getFrequencyStandby() != m_simCom2.getFrequencyStandby()) { changed = true; }
} if (newTransponder.getTransponderCode() != m_simTransponder.getTransponderCode()) { changed = true; }
if (newCom1.getFrequencyStandby() != m_simCom1.getFrequencyStandby()) if (newTransponder.getTransponderMode() != m_simTransponder.getTransponderMode()) { changed = true; }
{
changed = true;
}
if (newCom2.getFrequencyActive() != m_simCom2.getFrequencyActive())
{
changed = true;
}
if (newCom2.getFrequencyStandby() != m_simCom2.getFrequencyStandby())
{
changed = true;
}
if (newTransponder.getTransponderCode() != m_simTransponder.getTransponderCode())
{
changed = true;
}
if (newTransponder.getTransponderMode() != m_simTransponder.getTransponderMode())
{
changed = true;
}
//! \todo KB 8/2017 set FS9 cockpit values //! \todo KB 8/2017 set FS9 cockpit values
@@ -483,19 +462,18 @@ namespace BlackSimPlugin
CSimulatorFs9Factory::~CSimulatorFs9Factory() CSimulatorFs9Factory::~CSimulatorFs9Factory()
{ } { }
BlackCore::ISimulator *CSimulatorFs9Factory::create( BlackCore::ISimulator *CSimulatorFs9Factory::create(const CSimulatorPluginInfo &info,
const CSimulatorPluginInfo &info, IOwnAircraftProvider *ownAircraftProvider,
IOwnAircraftProvider *ownAircraftProvider, IRemoteAircraftProvider *remoteAircraftProvider,
IRemoteAircraftProvider *remoteAircraftProvider, IWeatherGridProvider *weatherGridProvider,
IWeatherGridProvider *weatherGridProvider) IClientProvider *clientProvider)
{ {
return new CSimulatorFs9(info, m_fs9Host, m_lobbyClient, ownAircraftProvider, remoteAircraftProvider, weatherGridProvider, this); return new CSimulatorFs9(info, m_fs9Host, m_lobbyClient, ownAircraftProvider, remoteAircraftProvider, weatherGridProvider, clientProvider, this);
} }
BlackCore::ISimulatorListener *CSimulatorFs9Factory::createListener(const CSimulatorPluginInfo &info) BlackCore::ISimulatorListener *CSimulatorFs9Factory::createListener(const CSimulatorPluginInfo &info)
{ {
return new CSimulatorFs9Listener(info, m_fs9Host, m_lobbyClient); return new CSimulatorFs9Listener(info, m_fs9Host, m_lobbyClient);
} }
} // namespace } // namespace
} // namespace } // namespace

View File

@@ -39,14 +39,14 @@ namespace BlackSimPlugin
public: public:
//! Constructor, parameters as in \sa BlackCore::ISimulatorFactory::create //! Constructor, parameters as in \sa BlackCore::ISimulatorFactory::create
CSimulatorFs9( CSimulatorFs9(const BlackMisc::Simulation::CSimulatorPluginInfo &info,
const BlackMisc::Simulation::CSimulatorPluginInfo &info, const QSharedPointer<CFs9Host> &fs9Host,
const QSharedPointer<CFs9Host> &fs9Host, const QSharedPointer<CLobbyClient> &lobbyClient,
const QSharedPointer<CLobbyClient> &lobbyClient, BlackMisc::Simulation::IOwnAircraftProvider *ownAircraftProvider,
BlackMisc::Simulation::IOwnAircraftProvider *ownAircraftProvider, BlackMisc::Simulation::IRemoteAircraftProvider *remoteAircraftProvider,
BlackMisc::Simulation::IRemoteAircraftProvider *remoteAircraftProvider, BlackMisc::Weather::IWeatherGridProvider *weatherGridProvider,
BlackMisc::Weather::IWeatherGridProvider *weatherGridProvider, BlackMisc::Network::IClientProvider *clientProvider,
QObject *parent = nullptr); QObject *parent = nullptr);
//! Destructor //! Destructor
virtual ~CSimulatorFs9() = default; virtual ~CSimulatorFs9() = default;
@@ -64,7 +64,6 @@ namespace BlackSimPlugin
virtual bool updateOwnSimulatorSelcal(const BlackMisc::Aviation::CSelcal &selcal, const BlackMisc::CIdentifier &originator) override; virtual bool updateOwnSimulatorSelcal(const BlackMisc::Aviation::CSelcal &selcal, const BlackMisc::CIdentifier &originator) override;
virtual void displayStatusMessage(const BlackMisc::CStatusMessage &message) const override; virtual void displayStatusMessage(const BlackMisc::CStatusMessage &message) const override;
virtual void displayTextMessage(const BlackMisc::Network::CTextMessage &message) const override; virtual void displayTextMessage(const BlackMisc::Network::CTextMessage &message) const override;
virtual bool setInterpolatorMode(BlackMisc::Simulation::CInterpolatorMulti::Mode mode, const BlackMisc::Aviation::CCallsign &callsign) override;
//! \@} //! \@}
protected: protected:
@@ -149,7 +148,9 @@ namespace BlackSimPlugin
const BlackMisc::Simulation::CSimulatorPluginInfo &info, const BlackMisc::Simulation::CSimulatorPluginInfo &info,
BlackMisc::Simulation::IOwnAircraftProvider *ownAircraftProvider, BlackMisc::Simulation::IOwnAircraftProvider *ownAircraftProvider,
BlackMisc::Simulation::IRemoteAircraftProvider *remoteAircraftProvider, BlackMisc::Simulation::IRemoteAircraftProvider *remoteAircraftProvider,
BlackMisc::Weather::IWeatherGridProvider *weatherGridProvider) override; BlackMisc::Weather::IWeatherGridProvider *weatherGridProvider,
BlackMisc::Network::IClientProvider *clientProvider
) override;
//! \copydoc BlackCore::ISimulatorFactory::createListener //! \copydoc BlackCore::ISimulatorFactory::createListener
virtual BlackCore::ISimulatorListener *createListener(const BlackMisc::Simulation::CSimulatorPluginInfo &info) override; virtual BlackCore::ISimulatorListener *createListener(const BlackMisc::Simulation::CSimulatorPluginInfo &info) override;

View File

@@ -20,6 +20,7 @@ using namespace BlackMisc::Geo;
using namespace BlackMisc::Network; using namespace BlackMisc::Network;
using namespace BlackMisc::Simulation; using namespace BlackMisc::Simulation;
using namespace BlackMisc::Simulation::FsCommon; using namespace BlackMisc::Simulation::FsCommon;
using namespace BlackMisc::Weather;
using namespace BlackCore; using namespace BlackCore;
namespace BlackSimPlugin namespace BlackSimPlugin
@@ -30,9 +31,10 @@ namespace BlackSimPlugin
const CSimulatorPluginInfo &info, const CSimulatorPluginInfo &info,
IOwnAircraftProvider *ownAircraftProvider, IOwnAircraftProvider *ownAircraftProvider,
IRemoteAircraftProvider *renderedAircraftProvider, IRemoteAircraftProvider *renderedAircraftProvider,
Weather::IWeatherGridProvider *weatherGridProvider, IWeatherGridProvider *weatherGridProvider,
IClientProvider *clientProvider,
QObject *parent) : QObject *parent) :
CSimulatorCommon(info, ownAircraftProvider, renderedAircraftProvider, weatherGridProvider, parent), CSimulatorCommon(info, ownAircraftProvider, renderedAircraftProvider, weatherGridProvider, clientProvider, parent),
m_fsuipc(std::make_unique<CFsuipc>(this)) m_fsuipc(std::make_unique<CFsuipc>(this))
{ {
CSimulatorFsCommon::registerHelp(); CSimulatorFsCommon::registerHelp();

View File

@@ -54,6 +54,7 @@ namespace BlackSimPlugin
BlackMisc::Simulation::IOwnAircraftProvider *ownAircraftProvider, BlackMisc::Simulation::IOwnAircraftProvider *ownAircraftProvider,
BlackMisc::Simulation::IRemoteAircraftProvider *renderedAircraftProvider, BlackMisc::Simulation::IRemoteAircraftProvider *renderedAircraftProvider,
BlackMisc::Weather::IWeatherGridProvider *weatherGridProvider, BlackMisc::Weather::IWeatherGridProvider *weatherGridProvider,
BlackMisc::Network::IClientProvider *clientProvider,
QObject *parent = nullptr); QObject *parent = nullptr);
//! Init the internal objects //! Init the internal objects

View File

@@ -27,8 +27,9 @@ namespace BlackSimPlugin
IOwnAircraftProvider *ownAircraftProvider, IOwnAircraftProvider *ownAircraftProvider,
IRemoteAircraftProvider *remoteAircraftProvider, IRemoteAircraftProvider *remoteAircraftProvider,
IWeatherGridProvider *weatherGridProvider, IWeatherGridProvider *weatherGridProvider,
IClientProvider *clientProvider,
QObject *parent) : QObject *parent) :
CSimulatorFsxCommon(info, ownAircraftProvider, remoteAircraftProvider, weatherGridProvider, parent) CSimulatorFsxCommon(info, ownAircraftProvider, remoteAircraftProvider, weatherGridProvider, clientProvider, parent)
{ {
this->setDefaultModel( this->setDefaultModel(
{ {

View File

@@ -25,12 +25,12 @@ namespace BlackSimPlugin
public: public:
//! Constructor, parameters as in \sa BlackCore::ISimulatorFactory::create //! Constructor, parameters as in \sa BlackCore::ISimulatorFactory::create
CSimulatorFsx( CSimulatorFsx(const BlackMisc::Simulation::CSimulatorPluginInfo &info,
const BlackMisc::Simulation::CSimulatorPluginInfo &info, BlackMisc::Simulation::IOwnAircraftProvider *ownAircraftProvider,
BlackMisc::Simulation::IOwnAircraftProvider *ownAircraftProvider, BlackMisc::Simulation::IRemoteAircraftProvider *remoteAircraftProvider,
BlackMisc::Simulation::IRemoteAircraftProvider *remoteAircraftProvider, BlackMisc::Weather::IWeatherGridProvider *weatherGridProvider,
BlackMisc::Weather::IWeatherGridProvider *weatherGridProvider, BlackMisc::Network::IClientProvider *clientProvider,
QObject *parent = nullptr); QObject *parent = nullptr);
}; };
//! Listener for FSX //! Listener for FSX

View File

@@ -11,6 +11,7 @@
#include "simulatorfsx.h" #include "simulatorfsx.h"
#include "blackmisc/simulation/simulatorplugininfo.h" #include "blackmisc/simulation/simulatorplugininfo.h"
using namespace BlackMisc::Network;
using namespace BlackMisc::Simulation; using namespace BlackMisc::Simulation;
using namespace BlackMisc::Weather; using namespace BlackMisc::Weather;
@@ -21,10 +22,11 @@ namespace BlackSimPlugin
BlackCore::ISimulator *CSimulatorFsxFactory::create(const CSimulatorPluginInfo &info, BlackCore::ISimulator *CSimulatorFsxFactory::create(const CSimulatorPluginInfo &info,
IOwnAircraftProvider *ownAircraftProvider, IOwnAircraftProvider *ownAircraftProvider,
IRemoteAircraftProvider *remoteAircraftProvider, IRemoteAircraftProvider *remoteAircraftProvider,
IWeatherGridProvider *weatherGridProvider) IWeatherGridProvider *weatherGridProvider,
IClientProvider *clientProvider)
{ {
Q_ASSERT(ownAircraftProvider); Q_ASSERT(ownAircraftProvider);
return new CSimulatorFsx(info, ownAircraftProvider, remoteAircraftProvider, weatherGridProvider, this); return new CSimulatorFsx(info, ownAircraftProvider, remoteAircraftProvider, weatherGridProvider, clientProvider, this);
} }
BlackCore::ISimulatorListener *CSimulatorFsxFactory::createListener(const CSimulatorPluginInfo &info) BlackCore::ISimulatorListener *CSimulatorFsxFactory::createListener(const CSimulatorPluginInfo &info)

View File

@@ -36,7 +36,8 @@ namespace BlackSimPlugin
virtual BlackCore::ISimulator *create(const BlackMisc::Simulation::CSimulatorPluginInfo &info, virtual BlackCore::ISimulator *create(const BlackMisc::Simulation::CSimulatorPluginInfo &info,
BlackMisc::Simulation::IOwnAircraftProvider *ownAircraftProvider, BlackMisc::Simulation::IOwnAircraftProvider *ownAircraftProvider,
BlackMisc::Simulation::IRemoteAircraftProvider *remoteAircraftProvider, BlackMisc::Simulation::IRemoteAircraftProvider *remoteAircraftProvider,
BlackMisc::Weather::IWeatherGridProvider *weatherGridProvider) override; BlackMisc::Weather::IWeatherGridProvider *weatherGridProvider,
BlackMisc::Network::IClientProvider *clientProvider) override;
//! \copydoc BlackCore::ISimulatorFactory::createListener //! \copydoc BlackCore::ISimulatorFactory::createListener
virtual BlackCore::ISimulatorListener *createListener(const BlackMisc::Simulation::CSimulatorPluginInfo &info) override; virtual BlackCore::ISimulatorListener *createListener(const BlackMisc::Simulation::CSimulatorPluginInfo &info) override;

View File

@@ -48,8 +48,9 @@ namespace BlackSimPlugin
IOwnAircraftProvider *ownAircraftProvider, IOwnAircraftProvider *ownAircraftProvider,
IRemoteAircraftProvider *remoteAircraftProvider, IRemoteAircraftProvider *remoteAircraftProvider,
IWeatherGridProvider *weatherGridProvider, IWeatherGridProvider *weatherGridProvider,
IClientProvider *clientProvider,
QObject *parent) : QObject *parent) :
CSimulatorFsCommon(info, ownAircraftProvider, remoteAircraftProvider, weatherGridProvider, parent) CSimulatorFsCommon(info, ownAircraftProvider, remoteAircraftProvider, weatherGridProvider, clientProvider, parent)
{ {
Q_ASSERT_X(ownAircraftProvider, Q_FUNC_INFO, "Missing provider"); Q_ASSERT_X(ownAircraftProvider, Q_FUNC_INFO, "Missing provider");
Q_ASSERT_X(remoteAircraftProvider, Q_FUNC_INFO, "Missing provider"); Q_ASSERT_X(remoteAircraftProvider, Q_FUNC_INFO, "Missing provider");

View File

@@ -104,12 +104,12 @@ namespace BlackSimPlugin
public: public:
//! Constructor, parameters as in \sa BlackCore::ISimulatorFactory::create //! Constructor, parameters as in \sa BlackCore::ISimulatorFactory::create
CSimulatorFsxCommon( CSimulatorFsxCommon(const BlackMisc::Simulation::CSimulatorPluginInfo &info,
const BlackMisc::Simulation::CSimulatorPluginInfo &info, BlackMisc::Simulation::IOwnAircraftProvider *ownAircraftProvider,
BlackMisc::Simulation::IOwnAircraftProvider *ownAircraftProvider, BlackMisc::Simulation::IRemoteAircraftProvider *remoteAircraftProvider,
BlackMisc::Simulation::IRemoteAircraftProvider *remoteAircraftProvider, BlackMisc::Weather::IWeatherGridProvider *weatherGridProvider,
BlackMisc::Weather::IWeatherGridProvider *weatherGridProvider, BlackMisc::Network::IClientProvider *clientProvider,
QObject *parent = nullptr); QObject *parent = nullptr);
//! Destructor //! Destructor
virtual ~CSimulatorFsxCommon(); virtual ~CSimulatorFsxCommon();

View File

@@ -32,8 +32,9 @@ namespace BlackSimPlugin
IOwnAircraftProvider *ownAircraftProvider, IOwnAircraftProvider *ownAircraftProvider,
IRemoteAircraftProvider *remoteAircraftProvider, IRemoteAircraftProvider *remoteAircraftProvider,
IWeatherGridProvider *weatherGridProvider, IWeatherGridProvider *weatherGridProvider,
IClientProvider *clientProvider,
QObject *parent) : QObject *parent) :
CSimulatorFsxCommon(info, ownAircraftProvider, remoteAircraftProvider, weatherGridProvider, parent) CSimulatorFsxCommon(info, ownAircraftProvider, remoteAircraftProvider, weatherGridProvider, clientProvider, parent)
{ {
if (CBuildConfig::isCompiledWithP3DSupport() && CBuildConfig::isRunningOnWindowsNtPlatform() && CBuildConfig::buildWordSize() == 64) if (CBuildConfig::isCompiledWithP3DSupport() && CBuildConfig::isRunningOnWindowsNtPlatform() && CBuildConfig::buildWordSize() == 64)
{ {

View File

@@ -25,12 +25,12 @@ namespace BlackSimPlugin
public: public:
//! Constructor, parameters as in \sa BlackCore::ISimulatorFactory::create //! Constructor, parameters as in \sa BlackCore::ISimulatorFactory::create
CSimulatorP3D( CSimulatorP3D(const BlackMisc::Simulation::CSimulatorPluginInfo &info,
const BlackMisc::Simulation::CSimulatorPluginInfo &info, BlackMisc::Simulation::IOwnAircraftProvider *ownAircraftProvider,
BlackMisc::Simulation::IOwnAircraftProvider *ownAircraftProvider, BlackMisc::Simulation::IRemoteAircraftProvider *remoteAircraftProvider,
BlackMisc::Simulation::IRemoteAircraftProvider *remoteAircraftProvider, BlackMisc::Weather::IWeatherGridProvider *weatherGridProvider,
BlackMisc::Weather::IWeatherGridProvider *weatherGridProvider, BlackMisc::Network::IClientProvider *clientProvider,
QObject *parent = nullptr); QObject *parent = nullptr);
//! \copydoc BlackMisc::Simulation::ISimulationEnvironmentProvider::requestElevation //! \copydoc BlackMisc::Simulation::ISimulationEnvironmentProvider::requestElevation
virtual bool requestElevation(const BlackMisc::Geo::ICoordinateGeodetic &reference, const BlackMisc::Aviation::CCallsign &callsign) override; virtual bool requestElevation(const BlackMisc::Geo::ICoordinateGeodetic &reference, const BlackMisc::Aviation::CCallsign &callsign) override;

View File

@@ -13,6 +13,7 @@
using namespace BlackMisc::Simulation; using namespace BlackMisc::Simulation;
using namespace BlackMisc::Weather; using namespace BlackMisc::Weather;
using namespace BlackMisc::Network;
namespace BlackSimPlugin namespace BlackSimPlugin
{ {
@@ -21,10 +22,11 @@ namespace BlackSimPlugin
BlackCore::ISimulator *CSimulatorP3DFactory::create(const CSimulatorPluginInfo &info, BlackCore::ISimulator *CSimulatorP3DFactory::create(const CSimulatorPluginInfo &info,
IOwnAircraftProvider *ownAircraftProvider, IOwnAircraftProvider *ownAircraftProvider,
IRemoteAircraftProvider *remoteAircraftProvider, IRemoteAircraftProvider *remoteAircraftProvider,
IWeatherGridProvider *weatherGridProvider) IWeatherGridProvider *weatherGridProvider,
IClientProvider *clientProvider)
{ {
Q_ASSERT(ownAircraftProvider); Q_ASSERT(ownAircraftProvider);
return new CSimulatorP3D(info, ownAircraftProvider, remoteAircraftProvider, weatherGridProvider, this); return new CSimulatorP3D(info, ownAircraftProvider, remoteAircraftProvider, weatherGridProvider, clientProvider, this);
} }
BlackCore::ISimulatorListener *CSimulatorP3DFactory::createListener(const CSimulatorPluginInfo &info) BlackCore::ISimulatorListener *CSimulatorP3DFactory::createListener(const CSimulatorPluginInfo &info)

View File

@@ -36,7 +36,8 @@ namespace BlackSimPlugin
virtual BlackCore::ISimulator *create(const BlackMisc::Simulation::CSimulatorPluginInfo &info, virtual BlackCore::ISimulator *create(const BlackMisc::Simulation::CSimulatorPluginInfo &info,
BlackMisc::Simulation::IOwnAircraftProvider *ownAircraftProvider, BlackMisc::Simulation::IOwnAircraftProvider *ownAircraftProvider,
BlackMisc::Simulation::IRemoteAircraftProvider *remoteAircraftProvider, BlackMisc::Simulation::IRemoteAircraftProvider *remoteAircraftProvider,
BlackMisc::Weather::IWeatherGridProvider *weatherGridProvider) override; BlackMisc::Weather::IWeatherGridProvider *weatherGridProvider,
BlackMisc::Network::IClientProvider *clientProvider) override;
//! \copydoc BlackCore::ISimulatorFactory::createListener //! \copydoc BlackCore::ISimulatorFactory::createListener
virtual BlackCore::ISimulatorListener *createListener(const BlackMisc::Simulation::CSimulatorPluginInfo &info) override; virtual BlackCore::ISimulatorListener *createListener(const BlackMisc::Simulation::CSimulatorPluginInfo &info) override;

View File

@@ -84,8 +84,9 @@ namespace BlackSimPlugin
IOwnAircraftProvider *ownAircraftProvider, IOwnAircraftProvider *ownAircraftProvider,
IRemoteAircraftProvider *remoteAircraftProvider, IRemoteAircraftProvider *remoteAircraftProvider,
IWeatherGridProvider *weatherGridProvider, IWeatherGridProvider *weatherGridProvider,
IClientProvider *clientProvider,
QObject *parent) : QObject *parent) :
CSimulatorCommon(info, ownAircraftProvider, remoteAircraftProvider, weatherGridProvider, parent) CSimulatorCommon(info, ownAircraftProvider, remoteAircraftProvider, weatherGridProvider, clientProvider, parent)
{ {
m_watcher = new QDBusServiceWatcher(this); m_watcher = new QDBusServiceWatcher(this);
m_watcher->setWatchMode(QDBusServiceWatcher::WatchForUnregistration); m_watcher->setWatchMode(QDBusServiceWatcher::WatchForUnregistration);
@@ -784,9 +785,10 @@ namespace BlackSimPlugin
BlackCore::ISimulator *CSimulatorXPlaneFactory::create(const CSimulatorPluginInfo &info, BlackCore::ISimulator *CSimulatorXPlaneFactory::create(const CSimulatorPluginInfo &info,
IOwnAircraftProvider *ownAircraftProvider, IOwnAircraftProvider *ownAircraftProvider,
IRemoteAircraftProvider *remoteAircraftProvider, IRemoteAircraftProvider *remoteAircraftProvider,
IWeatherGridProvider *weatherGridProvider) IWeatherGridProvider *weatherGridProvider,
IClientProvider *clientProvider)
{ {
return new CSimulatorXPlane(info, ownAircraftProvider, remoteAircraftProvider, weatherGridProvider, this); return new CSimulatorXPlane(info, ownAircraftProvider, remoteAircraftProvider, weatherGridProvider, clientProvider, this);
} }
CSimulatorXPlaneListener::CSimulatorXPlaneListener(const CSimulatorPluginInfo &info): ISimulatorListener(info) CSimulatorXPlaneListener::CSimulatorXPlaneListener(const CSimulatorPluginInfo &info): ISimulatorListener(info)

View File

@@ -112,6 +112,7 @@ namespace BlackSimPlugin
BlackMisc::Simulation::IOwnAircraftProvider *ownAircraftProvider, BlackMisc::Simulation::IOwnAircraftProvider *ownAircraftProvider,
BlackMisc::Simulation::IRemoteAircraftProvider *remoteAircraftProvider, BlackMisc::Simulation::IRemoteAircraftProvider *remoteAircraftProvider,
BlackMisc::Weather::IWeatherGridProvider *weatherGridProvider, BlackMisc::Weather::IWeatherGridProvider *weatherGridProvider,
BlackMisc::Network::IClientProvider *clientProvider,
QObject *parent = nullptr); QObject *parent = nullptr);
//! \name ISimulator implementations //! \name ISimulator implementations
@@ -257,7 +258,8 @@ namespace BlackSimPlugin
virtual BlackCore::ISimulator *create(const BlackMisc::Simulation::CSimulatorPluginInfo &info, virtual BlackCore::ISimulator *create(const BlackMisc::Simulation::CSimulatorPluginInfo &info,
BlackMisc::Simulation::IOwnAircraftProvider *ownAircraftProvider, BlackMisc::Simulation::IOwnAircraftProvider *ownAircraftProvider,
BlackMisc::Simulation::IRemoteAircraftProvider *remoteAircraftProvider, BlackMisc::Simulation::IRemoteAircraftProvider *remoteAircraftProvider,
BlackMisc::Weather::IWeatherGridProvider *weatherGridProvider) override; BlackMisc::Weather::IWeatherGridProvider *weatherGridProvider,
BlackMisc::Network::IClientProvider *clientProvider) override;
//! \copydoc BlackCore::ISimulatorFactory::createListener //! \copydoc BlackCore::ISimulatorFactory::createListener
virtual BlackCore::ISimulatorListener *createListener(const BlackMisc::Simulation::CSimulatorPluginInfo &info) override { return new CSimulatorXPlaneListener(info); } virtual BlackCore::ISimulatorListener *createListener(const BlackMisc::Simulation::CSimulatorPluginInfo &info) override { return new CSimulatorXPlaneListener(info); }