mirror of
https://github.com/swift-project/pilotclient.git
synced 2026-04-12 23:35:33 +08:00
Ref T739, removed voice room functions from context and UI
This commit is contained in:
committed by
Mat Sutcliffe
parent
f09e99333f
commit
66ea77d25f
@@ -14,7 +14,6 @@
|
||||
#include "blackcore/blackcoreexport.h"
|
||||
#include "blackcore/context/context.h"
|
||||
#include "blackcore/corefacadeconfig.h"
|
||||
#include "blackmisc/audio/voiceroomlist.h"
|
||||
#include "blackmisc/compare.h"
|
||||
#include "blackmisc/dictionary.h"
|
||||
#include "blackmisc/identifier.h"
|
||||
@@ -122,9 +121,6 @@ namespace BlackCore
|
||||
//! \note Used for hotkey action, do not use directly
|
||||
void remoteHotkeyAction(const QString &action, bool argument, const BlackMisc::CIdentifier &origin);
|
||||
|
||||
//! Work around for audio context, #382
|
||||
void fakedSetComVoiceRoom(const BlackMisc::Audio::CVoiceRoomList &requestedRooms);
|
||||
|
||||
//! Request a message to be displayed on console, whatever the console is
|
||||
//! \note no guarantee it is really written to console
|
||||
void requestDisplayOnConsole(const QString &message);
|
||||
|
||||
@@ -32,7 +32,6 @@
|
||||
#include "blackmisc/network/textmessagelist.h"
|
||||
#include "blackmisc/network/user.h"
|
||||
#include "blackmisc/network/userlist.h"
|
||||
#include "blackmisc/audio/voiceroomlist.h"
|
||||
#include "blackmisc/identifiable.h"
|
||||
#include "blackmisc/identifier.h"
|
||||
#include "blackmisc/statusmessage.h"
|
||||
@@ -276,9 +275,6 @@ namespace BlackCore
|
||||
//! Load flight plan (from network)
|
||||
virtual BlackMisc::Aviation::CFlightPlan loadFlightPlanFromNetwork(const BlackMisc::Aviation::CCallsign &callsign) const = 0;
|
||||
|
||||
//! Use the selected COM1/2 frequencies, and get the corresponding voice room for it
|
||||
virtual BlackMisc::Audio::CVoiceRoomList getSelectedVoiceRooms() const = 0;
|
||||
|
||||
//! Use the selected COM1/2 frequencies, and get the corresponding ATC stations for it
|
||||
virtual BlackMisc::Aviation::CAtcStationList getSelectedAtcStations() const = 0;
|
||||
|
||||
|
||||
@@ -202,13 +202,6 @@ namespace BlackCore
|
||||
return {};
|
||||
}
|
||||
|
||||
//! \copydoc IContextNetwork::getSelectedVoiceRooms()
|
||||
virtual BlackMisc::Audio::CVoiceRoomList getSelectedVoiceRooms() const override
|
||||
{
|
||||
logEmptyContextWarning(Q_FUNC_INFO);
|
||||
return BlackMisc::Audio::CVoiceRoomList();
|
||||
}
|
||||
|
||||
//! \copydoc IContextNetwork::getSelectedAtcStations
|
||||
virtual BlackMisc::Aviation::CAtcStationList getSelectedAtcStations() const override
|
||||
{
|
||||
|
||||
@@ -1182,19 +1182,6 @@ namespace BlackCore
|
||||
return selectedStations;
|
||||
}
|
||||
|
||||
CVoiceRoomList CContextNetwork::getSelectedVoiceRooms() const
|
||||
{
|
||||
if (this->isDebugEnabled()) { CLogMessage(this, CLogCategory::contextSlot()).debug() << Q_FUNC_INFO; }
|
||||
const CAtcStationList stations = this->getSelectedAtcStations();
|
||||
Q_ASSERT(stations.size() == 2);
|
||||
CVoiceRoomList rooms;
|
||||
const CAtcStation s1 = stations[0];
|
||||
const CAtcStation s2 = stations[1];
|
||||
rooms.push_back(s1.getVoiceRoom());
|
||||
rooms.push_back(s2.getVoiceRoom());
|
||||
return rooms;
|
||||
}
|
||||
|
||||
QMetaObject::Connection CContextNetwork::connectRawFsdMessageSignal(QObject *receiver, RawFsdMessageReceivedSlot rawFsdMessageReceivedSlot)
|
||||
{
|
||||
Q_ASSERT_X(receiver, Q_FUNC_INFO, "Missing receiver");
|
||||
|
||||
@@ -22,7 +22,6 @@
|
||||
#include "blackcore/context/contextnetwork.h"
|
||||
#include "blackcore/corefacadeconfig.h"
|
||||
#include "blackcore/fsd/fsdclient.h"
|
||||
#include "blackmisc/audio/voiceroomlist.h"
|
||||
#include "blackmisc/simulation/aircraftmodel.h"
|
||||
#include "blackmisc/simulation/airspaceaircraftsnapshot.h"
|
||||
#include "blackmisc/simulation/remoteaircraftprovider.h"
|
||||
@@ -261,7 +260,6 @@ namespace BlackCore
|
||||
virtual void sendFlightPlan(const BlackMisc::Aviation::CFlightPlan &flightPlan) override;
|
||||
virtual BlackMisc::Aviation::CFlightPlan loadFlightPlanFromNetwork(const BlackMisc::Aviation::CCallsign &callsign) const override;
|
||||
BlackMisc::Weather::CMetar getMetarForAirport(const BlackMisc::Aviation::CAirportIcaoCode &airportIcaoCode) const override;
|
||||
virtual BlackMisc::Audio::CVoiceRoomList getSelectedVoiceRooms() const override;
|
||||
virtual BlackMisc::Aviation::CAtcStationList getSelectedAtcStations() const override;
|
||||
virtual BlackMisc::Network::CUserList getUsers() const override;
|
||||
virtual BlackMisc::Network::CUserList getUsersForCallsigns(const BlackMisc::Aviation::CCallsignSet &callsigns) const override;
|
||||
|
||||
@@ -7,7 +7,6 @@
|
||||
*/
|
||||
|
||||
#include "blackcore/context/contextnetworkproxy.h"
|
||||
#include "blackmisc/audio/voiceroomlist.h"
|
||||
#include "blackmisc/dbus.h"
|
||||
#include "blackmisc/dbusserver.h"
|
||||
#include "blackmisc/genericdbusinterface.h"
|
||||
@@ -203,11 +202,6 @@ namespace BlackCore
|
||||
return m_dBusInterface->callDBusRet<bool>(QLatin1String("setOtherClient"), client);
|
||||
}
|
||||
|
||||
CVoiceRoomList CContextNetworkProxy::getSelectedVoiceRooms() const
|
||||
{
|
||||
return m_dBusInterface->callDBusRet<BlackMisc::Audio::CVoiceRoomList>(QLatin1String("getSelectedVoiceRooms"));
|
||||
}
|
||||
|
||||
CAtcStationList CContextNetworkProxy::getSelectedAtcStations() const
|
||||
{
|
||||
return m_dBusInterface->callDBusRet<BlackMisc::Aviation::CAtcStationList>(QLatin1String("getSelectedAtcStations"));
|
||||
|
||||
@@ -15,7 +15,6 @@
|
||||
#include "blackcore/context/contextnetwork.h"
|
||||
#include "blackcore/corefacadeconfig.h"
|
||||
#include "blackcore/blackcoreexport.h"
|
||||
#include "blackmisc/audio/voiceroomlist.h"
|
||||
#include "blackmisc/aviation/airporticaocode.h"
|
||||
#include "blackmisc/aviation/atcstation.h"
|
||||
#include "blackmisc/aviation/atcstationlist.h"
|
||||
@@ -98,7 +97,6 @@ namespace BlackCore
|
||||
virtual void sendFlightPlan(const BlackMisc::Aviation::CFlightPlan &flightPlan) override;
|
||||
virtual BlackMisc::Aviation::CFlightPlan loadFlightPlanFromNetwork(const BlackMisc::Aviation::CCallsign &callsign) const override;
|
||||
BlackMisc::Weather::CMetar getMetarForAirport(const BlackMisc::Aviation::CAirportIcaoCode &airportIcaoCode) const override;
|
||||
virtual BlackMisc::Audio::CVoiceRoomList getSelectedVoiceRooms() const override;
|
||||
virtual BlackMisc::Aviation::CAtcStationList getSelectedAtcStations() const override;
|
||||
virtual BlackMisc::Network::CUserList getUsers() const override;
|
||||
virtual BlackMisc::Network::CUserList getUsersForCallsigns(const BlackMisc::Aviation::CCallsignSet &callsigns) const override;
|
||||
|
||||
@@ -159,14 +159,6 @@ namespace BlackCore
|
||||
//! Output volume 0..300
|
||||
virtual void setAudioOutputVolume(int outputVolume) = 0;
|
||||
|
||||
//! Set individual voice rooms (overrides voice rooms)
|
||||
//! \note Empty string "" disables voice room override
|
||||
//! \sa enableAutomaticVoiceRoomResolution
|
||||
virtual void setAudioVoiceRoomOverrideUrls(const QString &voiceRoom1Url, const QString &voiceRoom2Url) = 0;
|
||||
|
||||
//! Automatic voice room resolution for frequencies
|
||||
virtual void enableAutomaticVoiceRoomResolution(bool enable) = 0;
|
||||
|
||||
//! Default situation
|
||||
//! \remark normally used when no driver is attached
|
||||
static const BlackMisc::Aviation::CAircraftSituation &getDefaultSituation();
|
||||
|
||||
@@ -155,21 +155,6 @@ namespace BlackCore
|
||||
return false;
|
||||
}
|
||||
|
||||
//! \copydoc IContextOwnAircraft::setAudioVoiceRoomOverrideUrls
|
||||
virtual void setAudioVoiceRoomOverrideUrls(const QString &voiceRoom1Url, const QString &voiceRoom2Url) override
|
||||
{
|
||||
Q_UNUSED(voiceRoom1Url);
|
||||
Q_UNUSED(voiceRoom2Url);
|
||||
logEmptyContextWarning(Q_FUNC_INFO);
|
||||
}
|
||||
|
||||
//! \copydoc IContextOwnAircraft::enableAutomaticVoiceRoomResolution
|
||||
virtual void enableAutomaticVoiceRoomResolution(bool enable) override
|
||||
{
|
||||
Q_UNUSED(enable);
|
||||
logEmptyContextWarning(Q_FUNC_INFO);
|
||||
}
|
||||
|
||||
//! \copydoc IContextOwnAircraft::parseCommandLine
|
||||
virtual bool parseCommandLine(const QString &commandLine, const BlackMisc::CIdentifier &originator) override
|
||||
{
|
||||
|
||||
@@ -17,8 +17,6 @@
|
||||
|
||||
#include "blackcore/application.h"
|
||||
#include "blackcore/webdataservices.h"
|
||||
#include "blackmisc/audio/voiceroom.h"
|
||||
#include "blackmisc/audio/voiceroomlist.h"
|
||||
#include "blackmisc/network/server.h"
|
||||
#include "blackmisc/aviation/aircrafticaocode.h"
|
||||
#include "blackmisc/aviation/aircraftsituation.h"
|
||||
@@ -177,35 +175,6 @@ namespace BlackCore
|
||||
QWriteLocker l(&m_lockAircraft);
|
||||
m_ownAircraft = ownAircraft;
|
||||
}
|
||||
|
||||
// voice rooms, if network is already available
|
||||
if (this->getIContextNetwork())
|
||||
{
|
||||
this->resolveVoiceRooms(); // init own aircraft
|
||||
}
|
||||
}
|
||||
|
||||
void CContextOwnAircraft::resolveVoiceRooms()
|
||||
{
|
||||
// If VVL supported is disabled, do nothing
|
||||
if (true) { return; }
|
||||
|
||||
if (!this->getIContextNetwork() || !this->getIContextAudio() || !this->getIContextApplication()) { return; } // no chance to resolve rooms
|
||||
if (m_debugEnabled) { CLogMessage(this, CLogCategory::contextSlot()).debug() << Q_FUNC_INFO; }
|
||||
|
||||
if (m_voiceRoom1UrlOverride.isEmpty() && m_voiceRoom2UrlOverride.isEmpty() && !m_automaticVoiceRoomResolution) { return; }
|
||||
if (!m_automaticVoiceRoomResolution) { return; } // not responsible
|
||||
|
||||
// requires correct frequencies set
|
||||
// but local network uses exactly this object here, so if frequencies are set here,
|
||||
// they are set for network context as well
|
||||
CVoiceRoomList rooms = this->getIContextNetwork()->getSelectedVoiceRooms();
|
||||
|
||||
if (!m_voiceRoom1UrlOverride.isEmpty()) { rooms[0] = CVoiceRoom(m_voiceRoom1UrlOverride); }
|
||||
if (!m_voiceRoom2UrlOverride.isEmpty()) { rooms[1] = CVoiceRoom(m_voiceRoom2UrlOverride); }
|
||||
|
||||
// set the rooms on the side where the audio is located
|
||||
emit this->getIContextApplication()->fakedSetComVoiceRoom(rooms);
|
||||
}
|
||||
|
||||
void CContextOwnAircraft::evaluateUpdateHistory()
|
||||
@@ -341,7 +310,6 @@ namespace BlackCore
|
||||
if (changed)
|
||||
{
|
||||
emit this->changedAircraftCockpit(m_ownAircraft, originator);
|
||||
this->resolveVoiceRooms(); // cockpit COM changed
|
||||
}
|
||||
return changed;
|
||||
}
|
||||
@@ -456,14 +424,8 @@ namespace BlackCore
|
||||
void CContextOwnAircraft::xCtxChangedAtcStationOnlineConnectionStatus(const CAtcStation &atcStation, bool connected)
|
||||
{
|
||||
// any of our active frequencies?
|
||||
Q_UNUSED(connected);
|
||||
const CSimulatedAircraft myAircraft(this->getOwnAircraft());
|
||||
|
||||
// relevant frequency
|
||||
if (myAircraft.getCom1System().isActiveFrequencyWithinChannelSpacing(atcStation.getFrequency()) || myAircraft.getCom2System().isActiveFrequencyWithinChannelSpacing(atcStation.getFrequency()))
|
||||
{
|
||||
this->resolveVoiceRooms(); // online status changed
|
||||
}
|
||||
Q_UNUSED(connected)
|
||||
Q_UNUSED(atcStation)
|
||||
}
|
||||
|
||||
void CContextOwnAircraft::xCtxChangedSimulatorModel(const CAircraftModel &model, const CIdentifier &identifier)
|
||||
@@ -505,23 +467,9 @@ namespace BlackCore
|
||||
// from the driver
|
||||
}
|
||||
|
||||
void CContextOwnAircraft::setAudioVoiceRoomOverrideUrls(const QString &voiceRoom1Url, const QString &voiceRoom2Url)
|
||||
{
|
||||
if (m_debugEnabled) { CLogMessage(this, CLogCategory::contextSlot()).debug() << Q_FUNC_INFO << voiceRoom1Url << voiceRoom2Url; }
|
||||
m_voiceRoom1UrlOverride = voiceRoom1Url.trimmed();
|
||||
m_voiceRoom2UrlOverride = voiceRoom2Url.trimmed();
|
||||
this->resolveVoiceRooms(); // override
|
||||
}
|
||||
|
||||
void CContextOwnAircraft::enableAutomaticVoiceRoomResolution(bool enable)
|
||||
{
|
||||
if (m_debugEnabled) {CLogMessage(this, CLogCategory::contextSlot()).debug() << Q_FUNC_INFO << enable; }
|
||||
m_automaticVoiceRoomResolution = enable;
|
||||
}
|
||||
|
||||
bool CContextOwnAircraft::parseCommandLine(const QString &commandLine, const CIdentifier &originator)
|
||||
{
|
||||
Q_UNUSED(originator);
|
||||
Q_UNUSED(originator)
|
||||
if (commandLine.isEmpty()) { return false; }
|
||||
CSimpleCommandParser parser(
|
||||
{
|
||||
|
||||
@@ -179,12 +179,6 @@ namespace BlackCore
|
||||
//! \copydoc IContextOwnAircraft::setAudioOutputVolume
|
||||
virtual void setAudioOutputVolume(int outputVolume) override;
|
||||
|
||||
//! \copydoc IContextOwnAircraft::setAudioVoiceRoomOverrideUrls
|
||||
virtual void setAudioVoiceRoomOverrideUrls(const QString &voiceRoom1Url, const QString &voiceRoom2Url) override;
|
||||
|
||||
//! \copydoc IContextOwnAircraft::enableAutomaticVoiceRoomResolution
|
||||
virtual void enableAutomaticVoiceRoomResolution(bool enable) override;
|
||||
|
||||
//! \addtogroup swiftdotcommands
|
||||
//! @{
|
||||
//! <pre>
|
||||
@@ -218,9 +212,6 @@ namespace BlackCore
|
||||
|
||||
private:
|
||||
BlackMisc::Simulation::CSimulatedAircraft m_ownAircraft; //!< my aircraft
|
||||
bool m_automaticVoiceRoomResolution = true; //!< automatic voice room resolution, or disable for override
|
||||
QString m_voiceRoom1UrlOverride; //!< overridden voice room url
|
||||
QString m_voiceRoom2UrlOverride; //!< overridden voice room url
|
||||
mutable QReadWriteLock m_lockAircraft; //!< lock aircraft
|
||||
|
||||
CActionBind m_actionToggleXpdr { BlackMisc::Input::toggleXPDRStateHotkeyAction(), BlackMisc::Input::toggleXPDRStateHotkeyIcon(), this, &CContextOwnAircraft::actionToggleTransponder };
|
||||
@@ -257,9 +248,6 @@ namespace BlackCore
|
||||
//! Init my very own aircraft with some defaults, before overridden by simulator
|
||||
void initOwnAircraft();
|
||||
|
||||
//! Resolve voice rooms
|
||||
void resolveVoiceRooms();
|
||||
|
||||
//! Update position history
|
||||
void evaluateUpdateHistory();
|
||||
|
||||
|
||||
@@ -137,16 +137,6 @@ namespace BlackCore
|
||||
m_dBusInterface->callDBus(QLatin1String("setAudioOutputVolume"), outputVolume);
|
||||
}
|
||||
|
||||
void CContextOwnAircraftProxy::setAudioVoiceRoomOverrideUrls(const QString &voiceRoom1Url, const QString &voiceRoom2Url)
|
||||
{
|
||||
m_dBusInterface->callDBus(QLatin1String("setAudioVoiceRoomOverrideUrls"), voiceRoom1Url, voiceRoom2Url);
|
||||
}
|
||||
|
||||
void CContextOwnAircraftProxy::enableAutomaticVoiceRoomResolution(bool enable)
|
||||
{
|
||||
m_dBusInterface->callDBus(QLatin1String("enableAutomaticVoiceRoomResolution"), enable);
|
||||
}
|
||||
|
||||
void CContextOwnAircraftProxy::toggleTransponderMode()
|
||||
{
|
||||
m_dBusInterface->callDBus(QLatin1String("toggleTransponderMode"));
|
||||
|
||||
@@ -77,8 +77,6 @@ namespace BlackCore
|
||||
virtual bool updateOwnCallsign(const BlackMisc::Aviation::CCallsign &callsign) override;
|
||||
virtual bool updateOwnIcaoCodes(const BlackMisc::Aviation::CAircraftIcaoCode &aircraftIcaoCode, const BlackMisc::Aviation::CAirlineIcaoCode &airlineIcaoCode) override;
|
||||
virtual void setAudioOutputVolume(int outputVolume) override;
|
||||
virtual void setAudioVoiceRoomOverrideUrls(const QString &voiceRoom1Url, const QString &voiceRoom2Url) override;
|
||||
virtual void enableAutomaticVoiceRoomResolution(bool enable) override;
|
||||
virtual void toggleTransponderMode() override;
|
||||
virtual bool setTransponderMode(BlackMisc::Aviation::CTransponder::TransponderMode mode) override;
|
||||
virtual bool parseCommandLine(const QString &commandLine, const BlackMisc::CIdentifier &originator) override;
|
||||
|
||||
Reference in New Issue
Block a user