Filter other pilots ghost aircraft when flying in shared cockpit mode

When flying in shared cockpit mode, both pilots log into the network.
One as pilot to be visible to ATC and other pilots. The other one as
observer. For the observing user, the pilots aircraft needs to be filtered.
Filter algorithm is using the same schema as vPilot does.

ref T427
This commit is contained in:
Roland Winklmeier
2018-11-08 11:35:31 +01:00
committed by Klaus Basan
parent 420fc40fb2
commit ee8af9f4c6
5 changed files with 35 additions and 16 deletions

View File

@@ -87,9 +87,11 @@ namespace BlackMisc
return m_callsign.endsWith("SUP");
}
bool CCallsign::isCopilotCallsign() const
bool CCallsign::isMaybeCopilotCallsign(const CCallsign &pilotCallsign) const
{
return (this->getTypeHint() == Aircraft) && this->isObserverCallsign();
return m_callsign.startsWith(pilotCallsign.asString()) &&
m_callsign.size() == pilotCallsign.asString().size() + 1 &&
m_callsign.at(m_callsign.size() - 1) >= 'A' && m_callsign.at(m_callsign.size() - 1) <= 'Z';
}
QString CCallsign::getIcaoCode() const