diff --git a/src/blackcore/context_network.h b/src/blackcore/context_network.h index 2efc130a7..cac6d709d 100644 --- a/src/blackcore/context_network.h +++ b/src/blackcore/context_network.h @@ -170,10 +170,16 @@ namespace BlackCore virtual BlackMisc::Network::CServerList getVatsimFsdServers() const = 0; //! Is interim position sending enabled? - virtual bool isInterimPositionSendingEnabled() const = 0; + virtual bool isFastPositionSendingEnabled() const = 0; //! Enable interim position sending - virtual void enableInterimPositionSending(bool enable) = 0; + virtual void enableFastPositionSending(bool enable) = 0; + + //! Callsigns enabled for fast position updates + virtual void setFastPositionEnabledCallsigns(BlackMisc::Aviation::CCallsignList &callsigns) = 0; + + //! Callsigns enabled for fast position updates + virtual BlackMisc::Aviation::CCallsignList getFastPositionEnabledCallsigns() = 0; /*! * Connect to Network diff --git a/src/blackcore/context_network_empty.h b/src/blackcore/context_network_empty.h index c7ccfe4cb..3b75654eb 100644 --- a/src/blackcore/context_network_empty.h +++ b/src/blackcore/context_network_empty.h @@ -241,20 +241,34 @@ namespace BlackCore return false; } - //! \copydoc IContextNetwork::isInterimPositionSendingEnabled - virtual bool isInterimPositionSendingEnabled() const override + //! \copydoc IContextNetwork::isFastPositionSendingEnabled + virtual bool isFastPositionSendingEnabled() const override { logEmptyContextWarning(Q_FUNC_INFO); return false; } - //! \copydoc IContextNetwork::enableInterimPositionSending - virtual void enableInterimPositionSending(bool enable) override + //! \copydoc IContextNetwork::enableFastPositionSending + virtual void enableFastPositionSending(bool enable) override { Q_UNUSED(enable); logEmptyContextWarning(Q_FUNC_INFO); } + //! \copydoc IContextNetwork::setFastPositionEnabledCallsigns + virtual void setFastPositionEnabledCallsigns(BlackMisc::Aviation::CCallsignList &callsigns) override + { + Q_UNUSED(callsigns); + logEmptyContextWarning(Q_FUNC_INFO); + } + + //! \copydoc IContextNetwork::getFastPositionEnabledCallsigns + virtual BlackMisc::Aviation::CCallsignList getFastPositionEnabledCallsigns() override + { + logEmptyContextWarning(Q_FUNC_INFO); + return BlackMisc::Aviation::CCallsignList(); + } + }; } // namespace diff --git a/src/blackcore/context_network_impl.cpp b/src/blackcore/context_network_impl.cpp index 75508ee9c..487003a65 100644 --- a/src/blackcore/context_network_impl.cpp +++ b/src/blackcore/context_network_impl.cpp @@ -531,18 +531,31 @@ namespace BlackCore return c; } - bool CContextNetwork::isInterimPositionSendingEnabled() const + bool CContextNetwork::isFastPositionSendingEnabled() const { if (this->isDebugEnabled()) { CLogMessage(this, CLogCategory::contextSlot()).debug() << Q_FUNC_INFO; } Q_ASSERT(this->m_network); - return m_network->isInterimPositionSendingEnabled(); + return m_network->isFastPositionSendingEnabled(); } - void CContextNetwork::enableInterimPositionSending(bool enable) + void CContextNetwork::enableFastPositionSending(bool enable) { if (this->isDebugEnabled()) { CLogMessage(this, CLogCategory::contextSlot()).debug() << Q_FUNC_INFO << enable; } Q_ASSERT(this->m_network); - m_network->enableInterimPositionSending(enable); + m_network->enableFastPositionSending(enable); + } + + void CContextNetwork::setFastPositionEnabledCallsigns(CCallsignList &callsigns) + { + if (this->isDebugEnabled()) { CLogMessage(this, CLogCategory::contextSlot()).debug() << Q_FUNC_INFO << callsigns; } + Q_ASSERT(this->m_network); + } + + CCallsignList CContextNetwork::getFastPositionEnabledCallsigns() + { + if (this->isDebugEnabled()) { CLogMessage(this, CLogCategory::contextSlot()).debug() << Q_FUNC_INFO; } + Q_ASSERT(this->m_network); + return CCallsignList(); } void CContextNetwork::testCreateDummyOnlineAtcStations(int number) diff --git a/src/blackcore/context_network_impl.h b/src/blackcore/context_network_impl.h index f8074e54a..726354fae 100644 --- a/src/blackcore/context_network_impl.h +++ b/src/blackcore/context_network_impl.h @@ -181,11 +181,17 @@ namespace BlackCore //! \copydoc IContextNetwork::updateAircraftModel virtual bool updateAircraftModel(const BlackMisc::Aviation::CCallsign &callsign, const BlackMisc::Simulation::CAircraftModel &model, const QString &originator) override; - //! \copydoc IContextNetwork::isInterimPositionSendingEnabled - virtual bool isInterimPositionSendingEnabled() const override; + //! \copydoc IContextNetwork::isFastPositionSendingEnabled + virtual bool isFastPositionSendingEnabled() const override; - //! \copydoc IContextNetwork::enableInterimPositionSending - virtual void enableInterimPositionSending(bool enable) override; + //! \copydoc IContextNetwork::enableFastPositionSending + virtual void enableFastPositionSending(bool enable) override; + + //! \copydoc IContextNetwork::setFastPositionEnabledCallsigns + virtual void setFastPositionEnabledCallsigns(BlackMisc::Aviation::CCallsignList &callsigns) override; + + //! \copydoc IContextNetwork::getFastPositionEnabledCallsigns + virtual BlackMisc::Aviation::CCallsignList getFastPositionEnabledCallsigns() override; //! \copydoc IContextNetwork::testCreateDummyOnlineAtcStations virtual void testCreateDummyOnlineAtcStations(int number) override; diff --git a/src/blackcore/context_network_proxy.cpp b/src/blackcore/context_network_proxy.cpp index def867636..8edc70a2a 100644 --- a/src/blackcore/context_network_proxy.cpp +++ b/src/blackcore/context_network_proxy.cpp @@ -179,14 +179,24 @@ namespace BlackCore return this->m_dBusInterface->callDBusRet(QLatin1Literal("updateAircraftModel"), callsign, model, originator); } - bool CContextNetworkProxy::isInterimPositionSendingEnabled() const + bool CContextNetworkProxy::isFastPositionSendingEnabled() const { - return this->m_dBusInterface->callDBusRet(QLatin1Literal("isInterimPositionSendingEnabled")); + return this->m_dBusInterface->callDBusRet(QLatin1Literal("isFastPositionSendingEnabled")); } - void CContextNetworkProxy::enableInterimPositionSending(bool enable) + void CContextNetworkProxy::enableFastPositionSending(bool enable) { - this->m_dBusInterface->callDBus(QLatin1Literal("enableInterimPositionSending"), enable); + this->m_dBusInterface->callDBus(QLatin1Literal("enableFastPositionSending"), enable); + } + + void CContextNetworkProxy::setFastPositionEnabledCallsigns(CCallsignList &callsigns) + { + this->m_dBusInterface->callDBus(QLatin1Literal("setFastPositionEnabledCallsigns"), callsigns); + } + + CCallsignList CContextNetworkProxy::getFastPositionEnabledCallsigns() + { + return this->m_dBusInterface->callDBusRet(QLatin1Literal("getFastPositionEnabledCallsigns")); } void CContextNetworkProxy::testCreateDummyOnlineAtcStations(int number) diff --git a/src/blackcore/context_network_proxy.h b/src/blackcore/context_network_proxy.h index 8d6973b64..ab83a90ff 100644 --- a/src/blackcore/context_network_proxy.h +++ b/src/blackcore/context_network_proxy.h @@ -131,11 +131,17 @@ namespace BlackCore //! \copydoc IContextNetwork::updateAircraftModel virtual bool updateAircraftModel(const BlackMisc::Aviation::CCallsign &callsign, const BlackMisc::Simulation::CAircraftModel &model, const QString &originator) override; - //! \copydoc IContextNetwork::isInterimPositionSendingEnabled - virtual bool isInterimPositionSendingEnabled() const override; + //! \copydoc IContextNetwork::isFastPositionSendingEnabled + virtual bool isFastPositionSendingEnabled() const override; - //! \copydoc IContextNetwork::enableInterimPositionSending - virtual void enableInterimPositionSending(bool enable) override; + //! \copydoc IContextNetwork::enableFastPositionSending + virtual void enableFastPositionSending(bool enable) override; + + //! \copydoc IContextNetwork::setFastPositionEnabledCallsigns + virtual void setFastPositionEnabledCallsigns(BlackMisc::Aviation::CCallsignList &callsigns) override; + + //! \copydoc IContextNetwork::getFastPositionEnabledCallsigns + virtual BlackMisc::Aviation::CCallsignList getFastPositionEnabledCallsigns() override; //! \copydoc IContextNetwork::testCreateDummyOnlineAtcStations virtual void testCreateDummyOnlineAtcStations(int number) override; diff --git a/src/blackcore/network.h b/src/blackcore/network.h index 964ae4416..8385fd5cc 100644 --- a/src/blackcore/network.h +++ b/src/blackcore/network.h @@ -199,10 +199,10 @@ namespace BlackCore virtual void terminateConnection() = 0; //! Is interim position sending enabled? - virtual bool isInterimPositionSendingEnabled() const = 0; + virtual bool isFastPositionSendingEnabled() const = 0; //! Enable interim position sending - virtual void enableInterimPositionSending(bool enable) = 0; + virtual void enableFastPositionSending(bool enable) = 0; /*! * Send a ping message to a user with a specific callsign. diff --git a/src/blackcore/network_vatlib.cpp b/src/blackcore/network_vatlib.cpp index 15e385906..675be1448 100644 --- a/src/blackcore/network_vatlib.cpp +++ b/src/blackcore/network_vatlib.cpp @@ -587,12 +587,12 @@ namespace BlackCore sendCustomPacket(callsign, "FSIPIR", data); } - void CNetworkVatlib::enableInterimPositionSending(bool enable) + void CNetworkVatlib::enableFastPositionSending(bool enable) { m_sendInterimPositions = enable; } - bool CNetworkVatlib::isInterimPositionSendingEnabled() const + bool CNetworkVatlib::isFastPositionSendingEnabled() const { return m_sendInterimPositions; } diff --git a/src/blackcore/network_vatlib.h b/src/blackcore/network_vatlib.h index dcbedb5bd..b501b290a 100644 --- a/src/blackcore/network_vatlib.h +++ b/src/blackcore/network_vatlib.h @@ -63,8 +63,8 @@ namespace BlackCore const QString &aircraftDesignator, const QString &combinedType, const QString &modelString) override; virtual void sendFsipirCustomPacket(const BlackMisc::Aviation::CCallsign &callsign, const QString &airlineDesignator, const QString &aircraftDesignator, const QString &combinedType, const QString &modelString) override; - virtual bool isInterimPositionSendingEnabled() const override; - virtual void enableInterimPositionSending(bool enable) override; + virtual bool isFastPositionSendingEnabled() const override; + virtual void enableFastPositionSending(bool enable) override; virtual void broadcastAircraftConfig(const QJsonObject &config) override; virtual void sendAircraftConfigQuery(const BlackMisc::Aviation::CCallsign &callsign) override;