mirror of
https://github.com/swift-project/pilotclient.git
synced 2026-04-17 02:45:33 +08:00
Ref T259, Ref T243 unify ground details when a new situation is received
This commit is contained in:
@@ -938,7 +938,7 @@ namespace BlackCore
|
|||||||
else if (client.hasCapability(CClient::FsdWithAircraftConfig))
|
else if (client.hasCapability(CClient::FsdWithAircraftConfig))
|
||||||
{
|
{
|
||||||
const CAircraftPartsList parts = this->remoteAircraftParts(callsign);
|
const CAircraftPartsList parts = this->remoteAircraftParts(callsign);
|
||||||
if (!parts.isEmpty()) { correctedSituation.adjustGroundFlag(parts); }
|
if (!parts.isEmpty()) { correctedSituation.adjustGroundFlag(parts, true); }
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -181,6 +181,12 @@ namespace BlackMisc
|
|||||||
situationList.push_frontKeepLatestFirstAdjustOffset(situation, IRemoteAircraftProvider::MaxSituationsPerCallsign);
|
situationList.push_frontKeepLatestFirstAdjustOffset(situation, IRemoteAircraftProvider::MaxSituationsPerCallsign);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// unify all inbound ground information
|
||||||
|
if (situation.hasInboundGroundInformation())
|
||||||
|
{
|
||||||
|
situationList.setOnGroundDetails(situation.getOnGroundDetails());
|
||||||
|
}
|
||||||
|
|
||||||
// check sort order
|
// check sort order
|
||||||
Q_ASSERT_X(situationList.isSortedAdjustedLatestFirst(), Q_FUNC_INFO, "wrong sort order");
|
Q_ASSERT_X(situationList.isSortedAdjustedLatestFirst(), Q_FUNC_INFO, "wrong sort order");
|
||||||
Q_ASSERT_X(situationList.size() <= IRemoteAircraftProvider::MaxSituationsPerCallsign, Q_FUNC_INFO, "Wrong size");
|
Q_ASSERT_X(situationList.size() <= IRemoteAircraftProvider::MaxSituationsPerCallsign, Q_FUNC_INFO, "Wrong size");
|
||||||
|
|||||||
@@ -117,11 +117,11 @@ namespace BlackMiscTest
|
|||||||
}
|
}
|
||||||
|
|
||||||
CAircraftSituation s0 = situations[0];
|
CAircraftSituation s0 = situations[0];
|
||||||
s0.adjustGroundFlag(partsOnGround);
|
s0.adjustGroundFlag(partsOnGround, true);
|
||||||
QVERIFY2(s0.getOnGround(), "Supposed to be on ground");
|
QVERIFY2(s0.getOnGround(), "Supposed to be on ground");
|
||||||
|
|
||||||
s0 = situations[0];
|
s0 = situations[0];
|
||||||
s0.adjustGroundFlag(partsNotOnGround);
|
s0.adjustGroundFlag(partsNotOnGround, true);
|
||||||
QVERIFY2(!s0.getOnGround(), "Supposed to be not on ground");
|
QVERIFY2(!s0.getOnGround(), "Supposed to be not on ground");
|
||||||
|
|
||||||
qint64 distanceMs = -1;
|
qint64 distanceMs = -1;
|
||||||
|
|||||||
Reference in New Issue
Block a user