1
0
mirror of https://github.com/f4exb/sdrangel.git synced 2026-06-07 00:14:49 -04:00

FCDProPlus: Make settings assignments atomic. Part of #1329

This commit is contained in:
f4exb
2022-10-23 11:40:32 +02:00
parent 5a162e6474
commit 8dfda5e534
6 changed files with 224 additions and 89 deletions
@@ -49,20 +49,23 @@ public:
public:
const FCDProPlusSettings& getSettings() const { return m_settings; }
const QList<QString>& getSettingsKeys() const { return m_settingsKeys; }
bool getForce() const { return m_force; }
static MsgConfigureFCDProPlus* create(const FCDProPlusSettings& settings, bool force)
static MsgConfigureFCDProPlus* create(const FCDProPlusSettings& settings, const QList<QString>& settingsKeys, bool force)
{
return new MsgConfigureFCDProPlus(settings, force);
return new MsgConfigureFCDProPlus(settings, settingsKeys, force);
}
private:
FCDProPlusSettings m_settings;
QList<QString> m_settingsKeys;
bool m_force;
MsgConfigureFCDProPlus(const FCDProPlusSettings& settings, bool force) :
MsgConfigureFCDProPlus(const FCDProPlusSettings& settings, const QList<QString>& settingsKeys, bool force) :
Message(),
m_settings(settings),
m_settingsKeys(settingsKeys),
m_force(force)
{ }
};
@@ -159,8 +162,8 @@ private:
void closeDevice();
bool openFCDAudio(const char *filename);
void closeFCDAudio();
void applySettings(const FCDProPlusSettings& settings, bool force);
void webapiReverseSendSettings(QList<QString>& deviceSettingsKeys, const FCDProPlusSettings& settings, bool force);
void applySettings(const FCDProPlusSettings& settings, const QList<QString>& settingsKeys, bool force);
void webapiReverseSendSettings(const QList<QString>& deviceSettingsKeys, const FCDProPlusSettings& settings, bool force);
void webapiReverseSendStartStop(bool start);
private slots: