mirror of
https://github.com/swift-project/pilotclient.git
synced 2026-04-03 15:45:46 +08:00
refs #321 Handle aircraft config client capability
This commit is contained in:
committed by
Klaus Basan
parent
b40180818c
commit
afea320a2e
@@ -46,6 +46,7 @@ namespace BlackCore
|
||||
this->connect(this->m_network, &INetwork::capabilitiesReplyReceived, this, &CAirspaceMonitor::ps_capabilitiesReplyReceived);
|
||||
this->connect(this->m_network, &INetwork::fsipirCustomPacketReceived, this, &CAirspaceMonitor::ps_fsipirCustomPacketReceived);
|
||||
this->connect(this->m_network, &INetwork::serverReplyReceived, this, &CAirspaceMonitor::ps_serverReplyReceived);
|
||||
this->connect(this->m_network, &INetwork::aircraftConfigPacketReceived, this, &CAirspaceMonitor::ps_aircraftConfigReceived);
|
||||
|
||||
// AutoConnection: this should also avoid race conditions by updating the bookings
|
||||
this->connect(this->m_vatsimBookingReader, &CVatsimBookingReader::dataRead, this, &CAirspaceMonitor::ps_receivedBookings);
|
||||
@@ -313,7 +314,7 @@ namespace BlackCore
|
||||
capabilities.addValue(CClient::FsdAtisCanBeReceived, (flags & INetwork::AcceptsAtisResponses));
|
||||
capabilities.addValue(CClient::FsdWithInterimPositions, (flags & INetwork::SupportsInterimPosUpdates));
|
||||
capabilities.addValue(CClient::FsdWithModelDescription, (flags & INetwork::SupportsModelDescriptions));
|
||||
//! \todo add aircraft config cap.
|
||||
capabilities.addValue(CClient::FsdWithAircraftConfig, (flags & INetwork::SupportsAircraftConfigs));
|
||||
|
||||
CPropertyIndexVariantMap vm(CClient::IndexCapabilities, capabilities.toCVariant());
|
||||
CVoiceCapabilities caps = m_vatsimDataFileReader->getVoiceCapabilityForCallsign(callsign);
|
||||
|
||||
@@ -73,7 +73,8 @@ namespace BlackCore
|
||||
{
|
||||
AcceptsAtisResponses = 1 << 0,
|
||||
SupportsInterimPosUpdates = 1 << 1,
|
||||
SupportsModelDescriptions = 1 << 2
|
||||
SupportsModelDescriptions = 1 << 2,
|
||||
SupportsAircraftConfigs = 1 << 3
|
||||
};
|
||||
|
||||
/*!
|
||||
|
||||
@@ -61,7 +61,7 @@ namespace BlackCore
|
||||
{
|
||||
Q_ASSERT_X(isDisconnected(), "CNetworkVatlib", "attempted to reinitialize session while still connected");
|
||||
|
||||
int clientCapabilities = vatCapsModelDesc | vatCapsInterminPos | vatCapsAtcInfo;
|
||||
int clientCapabilities = vatCapsModelDesc | vatCapsInterminPos | vatCapsAtcInfo | vatCapsAircraftConfig;
|
||||
if (m_loginMode == LoginStealth)
|
||||
{
|
||||
clientCapabilities |= vatCapsStealth;
|
||||
@@ -800,8 +800,9 @@ namespace BlackCore
|
||||
{
|
||||
int flags = 0;
|
||||
if (capabilityFlags & vatCapsAtcInfo) { flags |= AcceptsAtisResponses; }
|
||||
else if (capabilityFlags & vatCapsInterminPos) { flags |= SupportsInterimPosUpdates; }
|
||||
else if (capabilityFlags & vatCapsModelDesc) { flags |= SupportsModelDescriptions; }
|
||||
if (capabilityFlags & vatCapsInterminPos) { flags |= SupportsInterimPosUpdates; }
|
||||
if (capabilityFlags & vatCapsModelDesc) { flags |= SupportsModelDescriptions; }
|
||||
if (capabilityFlags & vatCapsAircraftConfig) { flags |= SupportsAircraftConfigs; }
|
||||
emit cbvar_cast(cbvar)->capabilitiesReplyReceived(cbvar_cast(cbvar)->fromFSD(callsign), flags);
|
||||
}
|
||||
|
||||
|
||||
@@ -57,6 +57,7 @@ namespace BlackMisc
|
||||
if (this->hasCapability(FsdAtisCanBeReceived)) sl << "ATIS";
|
||||
if (this->hasCapability(FsdWithInterimPositions)) sl << "interim pos.";
|
||||
if (this->hasCapability(FsdWithModelDescription)) sl << "model";
|
||||
if (this->hasCapability(FsdWithAircraftConfig)) sl << "aircraft config";
|
||||
if (sl.isEmpty()) return "";
|
||||
return sl.join(", ");
|
||||
}
|
||||
|
||||
@@ -48,7 +48,8 @@ namespace BlackMisc
|
||||
{
|
||||
FsdWithInterimPositions = BlackMisc::CPropertyIndex::GlobalIndexAbuseMode,
|
||||
FsdWithModelDescription,
|
||||
FsdAtisCanBeReceived
|
||||
FsdAtisCanBeReceived,
|
||||
FsdWithAircraftConfig
|
||||
};
|
||||
|
||||
//! Default constructor.
|
||||
@@ -137,7 +138,6 @@ namespace BlackMisc
|
||||
CPropertyIndexVariantMap m_capabilities;
|
||||
QString m_server;
|
||||
CVoiceCapabilities m_voiceCapabilities;
|
||||
|
||||
};
|
||||
} // namespace
|
||||
} // namespace
|
||||
|
||||
Reference in New Issue
Block a user