As a result of the RW/KB workshop.

Prepared functions for interim position updates
* isFastPositionSendingEnabled(), enableFastPositionSending(bool enable)
* setFastPositionEnabledCallsigns ,  getFastPositionEnabledCallsigns()
This commit is contained in:
Klaus Basan
2015-03-13 18:11:05 +01:00
parent 72c796f92f
commit fb12c608b1
9 changed files with 83 additions and 28 deletions

View File

@@ -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

View File

@@ -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

View File

@@ -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)

View File

@@ -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;

View File

@@ -179,14 +179,24 @@ namespace BlackCore
return this->m_dBusInterface->callDBusRet<bool>(QLatin1Literal("updateAircraftModel"), callsign, model, originator);
}
bool CContextNetworkProxy::isInterimPositionSendingEnabled() const
bool CContextNetworkProxy::isFastPositionSendingEnabled() const
{
return this->m_dBusInterface->callDBusRet<bool>(QLatin1Literal("isInterimPositionSendingEnabled"));
return this->m_dBusInterface->callDBusRet<bool>(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<CCallsignList>(QLatin1Literal("getFastPositionEnabledCallsigns"));
}
void CContextNetworkProxy::testCreateDummyOnlineAtcStations(int number)

View File

@@ -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;

View File

@@ -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.

View File

@@ -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;
}

View File

@@ -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;