refs #666 XBus expects timestamp relative to current time, in case core and sim PCs run with different clock times.

This commit is contained in:
Mathew Sutcliffe
2016-06-05 14:44:35 +01:00
parent 73156c2e6d
commit 4c2bc31975
5 changed files with 7 additions and 7 deletions

View File

@@ -485,7 +485,7 @@ namespace BlackSimPlugin
situation.getPitch().value(CAngleUnit::deg()), situation.getPitch().value(CAngleUnit::deg()),
situation.getBank().value(CAngleUnit::deg()), situation.getBank().value(CAngleUnit::deg()),
situation.getHeading().value(CAngleUnit::deg()), situation.getHeading().value(CAngleUnit::deg()),
situation.getAdjustedMSecsSinceEpoch()); // fixme sim machine's clock must be synchronized situation.getAdjustedMSecsSinceEpoch() - QDateTime::currentMSecsSinceEpoch());
} }
void CSimulatorXPlane::ps_remoteProviderAddAircraftParts(const BlackMisc::Aviation::CCallsign &callsign, const BlackMisc::Aviation::CAircraftParts &parts) void CSimulatorXPlane::ps_remoteProviderAddAircraftParts(const BlackMisc::Aviation::CCallsign &callsign, const BlackMisc::Aviation::CAircraftParts &parts)

View File

@@ -86,9 +86,9 @@ namespace BlackSimPlugin
m_dbusInterface->callDBus(QLatin1String("removeAllPlanes")); m_dbusInterface->callDBus(QLatin1String("removeAllPlanes"));
} }
void CXBusTrafficProxy::addPlanePosition(const QString &callsign, double latitude, double longitude, double altitude, double pitch, double roll, double heading, qint64 time) void CXBusTrafficProxy::addPlanePosition(const QString &callsign, double latitude, double longitude, double altitude, double pitch, double roll, double heading, qint64 relativeTime)
{ {
m_dbusInterface->callDBus(QLatin1String("addPlanePosition"), callsign, latitude, longitude, altitude, pitch, roll, heading, time); m_dbusInterface->callDBus(QLatin1String("addPlanePosition"), callsign, latitude, longitude, altitude, pitch, roll, heading, relativeTime);
} }
void CXBusTrafficProxy::setPlaneSurfaces(const QString &callsign, double gear, double flap, double spoiler, double speedBrake, double slat, double wingSweep, double thrust, void CXBusTrafficProxy::setPlaneSurfaces(const QString &callsign, double gear, double flap, double spoiler, double speedBrake, double slat, double wingSweep, double thrust,

View File

@@ -103,7 +103,7 @@ namespace BlackSimPlugin
void removeAllPlanes(); void removeAllPlanes();
//! \copydoc XBus::CTraffic::addPlanePosition //! \copydoc XBus::CTraffic::addPlanePosition
void addPlanePosition(const QString &callsign, double latitude, double longitude, double altitude, double pitch, double roll, double heading, qint64 time); void addPlanePosition(const QString &callsign, double latitude, double longitude, double altitude, double pitch, double roll, double heading, qint64 relativeTime);
//! \copydoc XBus::CTraffic::setPlaneSurfaces //! \copydoc XBus::CTraffic::setPlaneSurfaces
void setPlaneSurfaces(const QString &callsign, double gear, double flap, double spoiler, double speedBrake, double slat, double wingSweep, double thrust, void setPlaneSurfaces(const QString &callsign, double gear, double flap, double spoiler, double speedBrake, double slat, double wingSweep, double thrust,

View File

@@ -249,7 +249,7 @@ namespace XBus
m_planesById.clear(); m_planesById.clear();
} }
void CTraffic::addPlanePosition(const QString &callsign, double latitude, double longitude, double altitude, double pitch, double roll, double heading, qint64 time) void CTraffic::addPlanePosition(const QString &callsign, double latitude, double longitude, double altitude, double pitch, double roll, double heading, qint64 relativeTime)
{ {
const auto plane = m_planesByCallsign.value(callsign, nullptr); const auto plane = m_planesByCallsign.value(callsign, nullptr);
if (plane) if (plane)
@@ -267,7 +267,7 @@ namespace XBus
CAngle(roll, CAngleUnit::deg()), CAngle(roll, CAngleUnit::deg()),
CSpeed(0, CSpeedUnit::kts()) CSpeed(0, CSpeedUnit::kts())
}, maxSituationCount); }, maxSituationCount);
plane->situations.front().setMSecsSinceEpoch(time); plane->situations.front().setMSecsSinceEpoch(relativeTime + QDateTime::currentMSecsSinceEpoch());
} }
} }

View File

@@ -104,7 +104,7 @@ namespace XBus
void removeAllPlanes(); void removeAllPlanes();
//! Set the position of a traffic aircraft //! Set the position of a traffic aircraft
void addPlanePosition(const QString &callsign, double latitude, double longitude, double altitude, double pitch, double roll, double heading, qint64 time); void addPlanePosition(const QString &callsign, double latitude, double longitude, double altitude, double pitch, double roll, double heading, qint64 relativeTime);
//! Set the flight control surfaces and lights of a traffic aircraft //! Set the flight control surfaces and lights of a traffic aircraft
void setPlaneSurfaces(const QString &callsign, double gear, double flap, double spoiler, double speedBrake, double slat, double wingSweep, double thrust, void setPlaneSurfaces(const QString &callsign, double gear, double flap, double spoiler, double speedBrake, double slat, double wingSweep, double thrust,