[XSwiftBus] Add hasMultiplayerPlanesAquired() DBus API

This function will return whether X-Plane multiplayer planes have been acquired by XSwiftBus or if not, who else acquired them.
This commit is contained in:
Roland Rossgotterer
2018-11-24 19:00:49 +01:00
committed by Klaus Basan
parent 55c2e2e559
commit 49bd38d722
5 changed files with 83 additions and 12 deletions

View File

@@ -41,6 +41,20 @@ namespace BlackSimPlugin
}
}
MultiplayerAcquireInfo CXSwiftBusTrafficProxy::acquireMultiplayerPlanes()
{
QDBusPendingReply<bool, QString> reply = m_dbusInterface->asyncCall(QLatin1String("acquireMultiplayerPlanes"));
reply.waitForFinished();
if (reply.isError())
{
BlackMisc::CLogMessage(this).debug("CXSwiftBusTrafficProxy::acquireMultiplayerPlanes returned: %1") << reply.error().message();
}
MultiplayerAcquireInfo info;
info.hasAcquired = reply.argumentAt<0>();
info.owner = reply.argumentAt<1>();
return info;
}
bool CXSwiftBusTrafficProxy::initialize()
{
return m_dbusInterface->callDBusRet<bool>(QLatin1String("initialize"));

View File

@@ -99,6 +99,13 @@ namespace BlackSimPlugin
QList<bool> idents; //!< List of active idents
};
//! Multiplayer Acquire Info
struct MultiplayerAcquireInfo
{
bool hasAcquired; //!< Has XSwiftBus acquired multiplayer planes?
QString owner; //!< Name of the plugin having multiplayer planes acquired
};
/*!
* Proxy object connected to a real XSwiftBus::CTraffic object via DBus
*/
@@ -145,6 +152,9 @@ namespace BlackSimPlugin
void remoteAircraftAddingFailed(const QString &callsign);
public slots:
//! \copydoc XSwiftBus::CTraffic::acquireMultiplayerPlanes
MultiplayerAcquireInfo acquireMultiplayerPlanes();
//! \copydoc XSwiftBus::CTraffic::initialize
bool initialize();