diff --git a/client.pro b/client.pro index 29de9857b..f781113c1 100644 --- a/client.pro +++ b/client.pro @@ -15,7 +15,7 @@ contains(BLACK_CONFIG, BlackSim) { SUBDIRS += src/blacksim contains(BLACK_CONFIG, FSX) { - SUBDIRS += src/blacksim/fsx/plugin_fsx.pro + SUBDIRS += src/plugins/simulator/fsx/plugin_fsx.pro } contains(BLACK_CONFIG, XPlane) { diff --git a/src/blackcore/context_simulator_impl.cpp b/src/blackcore/context_simulator_impl.cpp index e26c22cd6..813cd2327 100644 --- a/src/blackcore/context_simulator_impl.cpp +++ b/src/blackcore/context_simulator_impl.cpp @@ -66,7 +66,7 @@ namespace BlackCore void CContextSimulator::loadPlugins() { - m_pluginsDir = QDir(qApp->applicationDirPath().append("/plugins")); + m_pluginsDir = QDir(qApp->applicationDirPath().append("/plugins/simulator")); if (!m_pluginsDir.exists()) { qWarning() << "No plugin directory" << m_pluginsDir.currentPath(); diff --git a/src/blacksim/fsx/plugin_fsx.pro b/src/blacksim/fsx/plugin_fsx.pro deleted file mode 100644 index 0fb65eeab..000000000 --- a/src/blacksim/fsx/plugin_fsx.pro +++ /dev/null @@ -1,28 +0,0 @@ -include (../../../config.pri) -include (../../../build.pri) - -QT += core dbus gui network - -TARGET = simulator_fsx -TEMPLATE = lib - -CONFIG += plugin shared -CONFIG += blackmisc blackcore blacksim - -LIBS += -lSimConnect - -DEPENDPATH += . ../../../src -INCLUDEPATH += . ../../../src - -SOURCES += *.cpp -HEADERS += *.h - -win32:!win32-g++*: PRE_TARGETDEPS += ../../../lib/blackmisc.lib \ - ../../../lib/blacksim.lib \ - ../../../lib/blackcore.lib -else: PRE_TARGETDEPS += ../../../lib/libblackmisc.a \ - ../../../lib/libblacksim.a \ - ../../../lib/libblackcore.a - -DESTDIR = ../../../bin/plugins -include (../../../libraries.pri) diff --git a/src/plugins/simulator/fsx/plugin_fsx.pro b/src/plugins/simulator/fsx/plugin_fsx.pro new file mode 100644 index 000000000..e532e327a --- /dev/null +++ b/src/plugins/simulator/fsx/plugin_fsx.pro @@ -0,0 +1,28 @@ +include (../../../../config.pri) +include (../../../../build.pri) + +QT += core dbus gui network + +TARGET = simulator_fsx +TEMPLATE = lib + +CONFIG += plugin shared +CONFIG += blackmisc blackcore blacksim + +LIBS += -lSimConnect + +DEPENDPATH += . ../../../../src +INCLUDEPATH += . ../../../../src + +SOURCES += *.cpp +HEADERS += *.h + +win32:!win32-g++*: PRE_TARGETDEPS += ../../../../lib/blackmisc.lib \ + ../../../../lib/blacksim.lib \ + ../../../../lib/blackcore.lib +else: PRE_TARGETDEPS += ../../../../lib/libblackmisc.a \ + ../../../../lib/libblacksim.a \ + ../../../../lib/libblackcore.a + +DESTDIR = ../../../../bin/plugins/simulator +include (../../../../libraries.pri) diff --git a/src/blacksim/fsx/simconnect_datadefinition.cpp b/src/plugins/simulator/fsx/simconnect_datadefinition.cpp similarity index 99% rename from src/blacksim/fsx/simconnect_datadefinition.cpp rename to src/plugins/simulator/fsx/simconnect_datadefinition.cpp index a40b008a2..39267d873 100644 --- a/src/blacksim/fsx/simconnect_datadefinition.cpp +++ b/src/plugins/simulator/fsx/simconnect_datadefinition.cpp @@ -8,7 +8,7 @@ namespace BlackSimPlugin { - namespace FSX + namespace Fsx { CSimConnectDataDefinition::CSimConnectDataDefinition() diff --git a/src/blacksim/fsx/simconnect_datadefinition.h b/src/plugins/simulator/fsx/simconnect_datadefinition.h similarity index 99% rename from src/blacksim/fsx/simconnect_datadefinition.h rename to src/plugins/simulator/fsx/simconnect_datadefinition.h index 696b6acbc..d466a33a6 100644 --- a/src/blacksim/fsx/simconnect_datadefinition.h +++ b/src/plugins/simulator/fsx/simconnect_datadefinition.h @@ -13,7 +13,7 @@ namespace BlackSimPlugin { - namespace FSX + namespace Fsx { //! \brief Data struct of our own aircraft struct DataDefinitionOwnAircraft diff --git a/src/blacksim/fsx/simconnect_exception.cpp b/src/plugins/simulator/fsx/simconnect_exception.cpp similarity index 99% rename from src/blacksim/fsx/simconnect_exception.cpp rename to src/plugins/simulator/fsx/simconnect_exception.cpp index c317b4d35..6d746ad46 100644 --- a/src/blacksim/fsx/simconnect_exception.cpp +++ b/src/plugins/simulator/fsx/simconnect_exception.cpp @@ -8,7 +8,7 @@ namespace BlackSimPlugin { - namespace FSX + namespace Fsx { CSimConnectException::CSimConnectException() { diff --git a/src/blacksim/fsx/simconnect_exception.h b/src/plugins/simulator/fsx/simconnect_exception.h similarity index 97% rename from src/blacksim/fsx/simconnect_exception.h rename to src/plugins/simulator/fsx/simconnect_exception.h index 5763ddfcc..ab13472cb 100644 --- a/src/blacksim/fsx/simconnect_exception.h +++ b/src/plugins/simulator/fsx/simconnect_exception.h @@ -10,7 +10,7 @@ namespace BlackSimPlugin { - namespace FSX + namespace Fsx { //! \brief Handles SimConnect exceptions class CSimConnectException diff --git a/src/blacksim/fsx/simulator_fsx.cpp b/src/plugins/simulator/fsx/simulator_fsx.cpp similarity index 91% rename from src/blacksim/fsx/simulator_fsx.cpp rename to src/plugins/simulator/fsx/simulator_fsx.cpp index d6c1505cd..1a59e6a48 100644 --- a/src/blacksim/fsx/simulator_fsx.cpp +++ b/src/plugins/simulator/fsx/simulator_fsx.cpp @@ -18,14 +18,14 @@ using namespace BlackSim::Fsx; namespace BlackSimPlugin { - namespace FSX + namespace Fsx { BlackCore::ISimulator *CSimulatorFsxFactory::create(QObject *parent) { - return new FSX::CSimulatorFSX(parent); + return new Fsx::CSimulatorFsx(parent); } - CSimulatorFSX::CSimulatorFSX(QObject *parent) : + CSimulatorFsx::CSimulatorFsx(QObject *parent) : ISimulator(parent), m_isConnected(false), m_simRunning(false), @@ -39,12 +39,12 @@ namespace BlackSimPlugin QTimer::singleShot(5000, this, SLOT(checkConnection())); } - bool CSimulatorFSX::isConnected() const + bool CSimulatorFsx::isConnected() const { return m_isConnected; } - void CSimulatorFSX::addRemoteAircraft(const CCallsign &callsign, const QString &type, const CAircraftSituation &initialSituation) + void CSimulatorFsx::addRemoteAircraft(const CCallsign &callsign, const QString &type, const CAircraftSituation &initialSituation) { Q_UNUSED(type); @@ -70,7 +70,7 @@ namespace BlackSimPlugin Q_UNUSED(hr); } - void CSimulatorFSX::addAircraftSituation(const CCallsign &callsign, const CAircraftSituation &situation) + void CSimulatorFsx::addAircraftSituation(const CCallsign &callsign, const CAircraftSituation &situation) { if (!m_simConnectObjects.contains(callsign)) { @@ -83,19 +83,19 @@ namespace BlackSimPlugin m_simConnectObjects.insert(callsign, simObj); } - void CSimulatorFSX::removeRemoteAircraft(const CCallsign &/*callsign*/) + void CSimulatorFsx::removeRemoteAircraft(const CCallsign &/*callsign*/) { // TODO } - CSimulatorInfo CSimulatorFSX::getSimulatorInfo() const + CSimulatorInfo CSimulatorFsx::getSimulatorInfo() const { return this->m_simulatorInfo; } - void CALLBACK CSimulatorFSX::SimConnectProc(SIMCONNECT_RECV *pData, DWORD /* cbData */, void *pContext) + void CALLBACK CSimulatorFsx::SimConnectProc(SIMCONNECT_RECV *pData, DWORD /* cbData */, void *pContext) { - CSimulatorFSX *simulatorFsx = static_cast(pContext); + CSimulatorFsx *simulatorFsx = static_cast(pContext); switch (pData->dwID) { @@ -168,7 +168,7 @@ namespace BlackSimPlugin } } - void CSimulatorFSX::onSimRunning() + void CSimulatorFsx::onSimRunning() { m_simRunning = true; SimConnect_RequestDataOnSimObject(m_hSimConnect, CSimConnectDataDefinition::RequestOwnAircraft, @@ -176,21 +176,21 @@ namespace BlackSimPlugin SIMCONNECT_OBJECT_ID_USER, SIMCONNECT_PERIOD_VISUAL_FRAME); } - void CSimulatorFSX::onSimStopped() + void CSimulatorFsx::onSimStopped() { m_simRunning = false; } - void CSimulatorFSX::onSimFrame() + void CSimulatorFsx::onSimFrame() { } - void CSimulatorFSX::onSimExit() + void CSimulatorFsx::onSimExit() { } - void CSimulatorFSX::setOwnAircraft(DataDefinitionOwnAircraft aircraft) + void CSimulatorFsx::setOwnAircraft(DataDefinitionOwnAircraft aircraft) { BlackMisc::Geo::CCoordinateGeodetic position; position.setLatitude(CLatitude(aircraft.latitude, CAngleUnit::deg())); @@ -220,7 +220,7 @@ namespace BlackSimPlugin m_ownAircraft.setTransponder(transponder); } - void CSimulatorFSX::setSimconnectObjectID(DWORD requestID, DWORD objectID) + void CSimulatorFsx::setSimconnectObjectID(DWORD requestID, DWORD objectID) { SimConnect_AIReleaseControl(m_hSimConnect, objectID, requestID); SimConnect_TransmitClientEvent(m_hSimConnect, objectID, EVENT_FREEZELAT, 1, @@ -251,13 +251,13 @@ namespace BlackSimPlugin } - void CSimulatorFSX::timerEvent(QTimerEvent * /* event */) + void CSimulatorFsx::timerEvent(QTimerEvent * /* event */) { dispatch(); update(); } - void CSimulatorFSX::checkConnection() + void CSimulatorFsx::checkConnection() { if (FAILED(SimConnect_Open(&m_hSimConnect, "BlackBox", nullptr, 0, 0, 0))) { @@ -273,12 +273,12 @@ namespace BlackSimPlugin emit connectionChanged(true); } - void CSimulatorFSX::dispatch() + void CSimulatorFsx::dispatch() { SimConnect_CallDispatch(m_hSimConnect, SimConnectProc, this); } - HRESULT CSimulatorFSX::initSystemEvents() + HRESULT CSimulatorFsx::initSystemEvents() { HRESULT hr = S_OK; // System events @@ -292,12 +292,12 @@ namespace BlackSimPlugin return hr; } - HRESULT CSimulatorFSX::initDataDefinitions() + HRESULT CSimulatorFsx::initDataDefinitions() { return CSimConnectDataDefinition::initDataDefinitions(m_hSimConnect); } - void CSimulatorFSX::update() + void CSimulatorFsx::update() { foreach(SimConnectObject simObj, m_simConnectObjects) { diff --git a/src/blacksim/fsx/simulator_fsx.h b/src/plugins/simulator/fsx/simulator_fsx.h similarity index 96% rename from src/blacksim/fsx/simulator_fsx.h rename to src/plugins/simulator/fsx/simulator_fsx.h index 05350650d..1b0a70f6d 100644 --- a/src/blacksim/fsx/simulator_fsx.h +++ b/src/plugins/simulator/fsx/simulator_fsx.h @@ -23,9 +23,9 @@ namespace BlackSimPlugin { - namespace FSX + namespace Fsx { - //! \brief Factory implementation to create CSimulatorFSX instances + //! \brief Factory implementation to create CSimulatorFsx instances class Q_DECL_EXPORT CSimulatorFsxFactory : public QObject, public BlackCore::ISimulatorFactory { Q_OBJECT @@ -51,12 +51,12 @@ namespace BlackSimPlugin }; //! \brief FSX Simulator Implementation - class CSimulatorFSX : public BlackCore::ISimulator + class CSimulatorFsx : public BlackCore::ISimulator { Q_OBJECT public: //! \brief Constructor - CSimulatorFSX(QObject *parent = nullptr); + CSimulatorFsx(QObject *parent = nullptr); //! \copydoc ISimulator::isConnected() virtual bool isConnected() const override;