mirror of
https://github.com/f4exb/sdrangel.git
synced 2026-04-29 10:54:01 -04:00
Merge pull request #2630 from f4exb/feature-2292
Make device title editable in the basic device settings. Fixes #2292
This commit is contained in:
commit
00c60a2855
Binary file not shown.
|
Before Width: | Height: | Size: 13 KiB After Width: | Height: | Size: 72 KiB |
Binary file not shown.
@ -728,6 +728,9 @@ void AudioCATSISO::webapiUpdateDeviceSettings(
|
||||
const QStringList& deviceSettingsKeys,
|
||||
SWGSDRangel::SWGDeviceSettings& response)
|
||||
{
|
||||
if (deviceSettingsKeys.contains("title")) {
|
||||
settings.m_title = *response.getAudioCatsisoSettings()->getTitle();
|
||||
}
|
||||
if (deviceSettingsKeys.contains("rxCenterFrequency")) {
|
||||
settings.m_rxCenterFrequency = response.getAudioCatsisoSettings()->getRxCenterFrequency();
|
||||
}
|
||||
@ -828,6 +831,12 @@ void AudioCATSISO::webapiUpdateDeviceSettings(
|
||||
|
||||
void AudioCATSISO::webapiFormatDeviceSettings(SWGSDRangel::SWGDeviceSettings& response, const AudioCATSISOSettings& settings)
|
||||
{
|
||||
if (response.getAudioCatsisoSettings()->getTitle()) {
|
||||
*response.getAudioCatsisoSettings()->getTitle() = settings.m_title;
|
||||
} else {
|
||||
response.getAudioCatsisoSettings()->setTitle(new QString(settings.m_title));
|
||||
}
|
||||
|
||||
response.getAudioCatsisoSettings()->setRxCenterFrequency(settings.m_rxCenterFrequency);
|
||||
response.getAudioCatsisoSettings()->setRxSampleRate(settings.m_rxSampleRate);
|
||||
response.getAudioCatsisoSettings()->setTxCenterFrequency(settings.m_txCenterFrequency);
|
||||
@ -882,6 +891,9 @@ void AudioCATSISO::webapiReverseSendSettings(const QList<QString>& deviceSetting
|
||||
|
||||
// transfer data that has been modified. When force is on transfer all data except reverse API data
|
||||
|
||||
if (deviceSettingsKeys.contains("title")) {
|
||||
swgAudioCATSISOSettings->setTitle(new QString(settings.m_title));
|
||||
}
|
||||
if (deviceSettingsKeys.contains("rxCenterFrequency")) {
|
||||
swgAudioCATSISOSettings->setRxCenterFrequency(settings.m_rxCenterFrequency);
|
||||
}
|
||||
|
||||
@ -31,6 +31,7 @@
|
||||
#include "gui/dialpopup.h"
|
||||
#include "gui/dialogpositioner.h"
|
||||
#include "gui/basicdevicesettingsdialog.h"
|
||||
#include "mainspectrum/mainspectrumgui.h"
|
||||
#include "gui/audioselectdialog.h"
|
||||
#include "dsp/dspengine.h"
|
||||
#include "dsp/dspcommands.h"
|
||||
@ -513,6 +514,8 @@ void AudioCATSISOGUI::displaySettings()
|
||||
{
|
||||
blockApplySettings(true);
|
||||
|
||||
setTitle(m_settings.m_title);
|
||||
getDeviceUISet()->m_mainSpectrumGUI->setTitle(m_settings.m_title);
|
||||
ui->transverter->setDeltaFrequency(m_settings.m_transverterDeltaFrequency);
|
||||
ui->transverter->setDeltaFrequencyActive(m_settings.m_transverterMode);
|
||||
ui->transverter->setIQOrder(m_settings.m_iqOrder);
|
||||
@ -843,21 +846,30 @@ void AudioCATSISOGUI::openDeviceSettingsDialog(const QPoint& p)
|
||||
dialog.setReverseAPIAddress(m_settings.m_reverseAPIAddress);
|
||||
dialog.setReverseAPIPort(m_settings.m_reverseAPIPort);
|
||||
dialog.setReverseAPIDeviceIndex(m_settings.m_reverseAPIDeviceIndex);
|
||||
dialog.setTitle(m_settings.m_title);
|
||||
dialog.setDefaultTitle(getDefaultTitle());
|
||||
|
||||
dialog.move(p);
|
||||
new DialogPositioner(&dialog, false);
|
||||
dialog.exec();
|
||||
|
||||
m_settings.m_useReverseAPI = dialog.useReverseAPI();
|
||||
m_settings.m_reverseAPIAddress = dialog.getReverseAPIAddress();
|
||||
m_settings.m_reverseAPIPort = dialog.getReverseAPIPort();
|
||||
m_settings.m_reverseAPIDeviceIndex = dialog.getReverseAPIDeviceIndex();
|
||||
m_settingsKeys.append("useReverseAPI");
|
||||
m_settingsKeys.append("reverseAPIAddress");
|
||||
m_settingsKeys.append("reverseAPIPort");
|
||||
m_settingsKeys.append("reverseAPIDeviceIndex");
|
||||
if (dialog.result() == QDialog::Accepted)
|
||||
{
|
||||
m_settings.m_title = dialog.getTitle();
|
||||
setTitle(m_settings.m_title);
|
||||
getDeviceUISet()->m_mainSpectrumGUI->setTitle(m_settings.m_title);
|
||||
m_settings.m_useReverseAPI = dialog.useReverseAPI();
|
||||
m_settings.m_reverseAPIAddress = dialog.getReverseAPIAddress();
|
||||
m_settings.m_reverseAPIPort = dialog.getReverseAPIPort();
|
||||
m_settings.m_reverseAPIDeviceIndex = dialog.getReverseAPIDeviceIndex();
|
||||
m_settingsKeys.append("title");
|
||||
m_settingsKeys.append("useReverseAPI");
|
||||
m_settingsKeys.append("reverseAPIAddress");
|
||||
m_settingsKeys.append("reverseAPIPort");
|
||||
m_settingsKeys.append("reverseAPIDeviceIndex");
|
||||
|
||||
sendSettings();
|
||||
sendSettings();
|
||||
}
|
||||
}
|
||||
|
||||
resetContextMenuType();
|
||||
|
||||
@ -69,6 +69,7 @@ AudioCATSISOSettings::AudioCATSISOSettings()
|
||||
|
||||
void AudioCATSISOSettings::resetToDefaults()
|
||||
{
|
||||
m_title = "AudioCATSISO";
|
||||
m_txEnable = false;
|
||||
m_pttSpectrumLink = true;
|
||||
m_rxCenterFrequency = 14200000;
|
||||
@ -106,6 +107,7 @@ void AudioCATSISOSettings::resetToDefaults()
|
||||
|
||||
AudioCATSISOSettings::AudioCATSISOSettings(const AudioCATSISOSettings& other)
|
||||
{
|
||||
m_title = other.m_title;
|
||||
m_txEnable = other.m_txEnable;
|
||||
m_pttSpectrumLink = other.m_pttSpectrumLink;
|
||||
m_rxCenterFrequency = other.m_rxCenterFrequency;
|
||||
@ -155,6 +157,7 @@ QByteArray AudioCATSISOSettings::serialize() const
|
||||
s.writeBool(9, m_transverterMode);
|
||||
s.writeS64(10, m_transverterDeltaFrequency);
|
||||
s.writeS32(11, m_rxSampleRate); // Serialize RX sample rate
|
||||
s.writeString(12, m_title);
|
||||
|
||||
s.writeString(21, m_txDeviceName);
|
||||
s.writeU64(22, m_txCenterFrequency);
|
||||
@ -210,6 +213,7 @@ bool AudioCATSISOSettings::deserialize(const QByteArray& data)
|
||||
d.readBool(9, &m_transverterMode, false);
|
||||
d.readS64(10, &m_transverterDeltaFrequency, 0);
|
||||
d.readS32(11, &m_rxSampleRate, 48000); // Deserialize RX sample rate
|
||||
d.readString(12, &m_title, "AudioCATSISO");
|
||||
|
||||
d.readString(21, &m_txDeviceName, "");
|
||||
d.readU64(22, &m_txCenterFrequency, 14200000);
|
||||
@ -255,6 +259,9 @@ bool AudioCATSISOSettings::deserialize(const QByteArray& data)
|
||||
|
||||
void AudioCATSISOSettings::applySettings(const QStringList& settingsKeys, const AudioCATSISOSettings& settings)
|
||||
{
|
||||
if (settingsKeys.contains("title")) {
|
||||
m_title = settings.m_title;
|
||||
}
|
||||
if (settingsKeys.contains("transverterMode")) {
|
||||
m_transverterMode = settings.m_transverterMode;
|
||||
}
|
||||
@ -361,6 +368,9 @@ QString AudioCATSISOSettings::getDebugString(const QStringList& settingsKeys, bo
|
||||
{
|
||||
std::ostringstream ostr;
|
||||
|
||||
if (settingsKeys.contains("title") || force) {
|
||||
ostr << " m_title: " << m_title.toStdString();
|
||||
}
|
||||
if (settingsKeys.contains("transverterMode") || force) {
|
||||
ostr << " m_transverterMode: " << m_transverterMode;
|
||||
}
|
||||
|
||||
@ -104,6 +104,7 @@ public:
|
||||
R
|
||||
};
|
||||
|
||||
QString m_title;
|
||||
quint64 m_rxCenterFrequency;
|
||||
quint64 m_txCenterFrequency;
|
||||
bool m_transverterMode;
|
||||
|
||||
@ -907,6 +907,9 @@ void BladeRF2MIMO::webapiUpdateDeviceSettings(
|
||||
const QStringList& deviceSettingsKeys,
|
||||
SWGSDRangel::SWGDeviceSettings& response)
|
||||
{
|
||||
if (deviceSettingsKeys.contains("title")) {
|
||||
settings.m_title = *response.getBladeRf2MimoSettings()->getTitle();
|
||||
}
|
||||
if (deviceSettingsKeys.contains("devSampleRate")) {
|
||||
settings.m_devSampleRate = response.getBladeRf2MimoSettings()->getDevSampleRate();
|
||||
}
|
||||
@ -1001,6 +1004,12 @@ void BladeRF2MIMO::webapiUpdateDeviceSettings(
|
||||
|
||||
void BladeRF2MIMO::webapiFormatDeviceSettings(SWGSDRangel::SWGDeviceSettings& response, const BladeRF2MIMOSettings& settings)
|
||||
{
|
||||
if (response.getBladeRf2MimoSettings()->getTitle()) {
|
||||
*response.getBladeRf2MimoSettings()->getTitle() = settings.m_title;
|
||||
} else {
|
||||
response.getBladeRf2MimoSettings()->setTitle(new QString(settings.m_title));
|
||||
}
|
||||
|
||||
response.getBladeRf2MimoSettings()->setDevSampleRate(settings.m_devSampleRate);
|
||||
response.getBladeRf2MimoSettings()->setLOppmTenths(settings.m_LOppmTenths);
|
||||
|
||||
@ -1097,6 +1106,9 @@ void BladeRF2MIMO::webapiReverseSendSettings(const QList<QString>& deviceSetting
|
||||
|
||||
// transfer data that has been modified. When force is on transfer all data except reverse API data
|
||||
|
||||
if (deviceSettingsKeys.contains("title") || force) {
|
||||
swgBladeRF2MIMOSettings->setTitle(new QString(settings.m_title));
|
||||
}
|
||||
if (deviceSettingsKeys.contains("devSampleRate") || force) {
|
||||
swgBladeRF2MIMOSettings->setDevSampleRate(settings.m_devSampleRate);
|
||||
}
|
||||
|
||||
@ -31,6 +31,7 @@
|
||||
#include "gui/glspectrum.h"
|
||||
#include "gui/basicdevicesettingsdialog.h"
|
||||
#include "gui/dialogpositioner.h"
|
||||
#include "mainspectrum/mainspectrumgui.h"
|
||||
#include "dsp/dspcommands.h"
|
||||
#include "dsp/devicesamplestatic.h"
|
||||
|
||||
@ -196,6 +197,8 @@ void BladeRF2MIMOGui::displaySettings()
|
||||
|
||||
displayGain();
|
||||
|
||||
setTitle(m_settings.m_title);
|
||||
getDeviceUISet()->m_mainSpectrumGUI->setTitle(m_settings.m_title);
|
||||
ui->sampleRate->setValue(m_settings.m_devSampleRate);
|
||||
ui->LOppm->setValue(m_settings.m_LOppmTenths);
|
||||
ui->LOppmText->setText(QString("%1").arg(QString::number(m_settings.m_LOppmTenths/10.0, 'f', 1)));
|
||||
@ -882,21 +885,30 @@ void BladeRF2MIMOGui::openDeviceSettingsDialog(const QPoint& p)
|
||||
dialog.setReverseAPIAddress(m_settings.m_reverseAPIAddress);
|
||||
dialog.setReverseAPIPort(m_settings.m_reverseAPIPort);
|
||||
dialog.setReverseAPIDeviceIndex(m_settings.m_reverseAPIDeviceIndex);
|
||||
dialog.setTitle(m_settings.m_title);
|
||||
dialog.setDefaultTitle(getDefaultTitle());
|
||||
|
||||
dialog.move(p);
|
||||
new DialogPositioner(&dialog, false);
|
||||
dialog.exec();
|
||||
|
||||
m_settings.m_useReverseAPI = dialog.useReverseAPI();
|
||||
m_settings.m_reverseAPIAddress = dialog.getReverseAPIAddress();
|
||||
m_settings.m_reverseAPIPort = dialog.getReverseAPIPort();
|
||||
m_settings.m_reverseAPIDeviceIndex = dialog.getReverseAPIDeviceIndex();
|
||||
m_settingsKeys.append("useReverseAPI");
|
||||
m_settingsKeys.append("reverseAPIAddress");
|
||||
m_settingsKeys.append("reverseAPIPort");
|
||||
m_settingsKeys.append("reverseAPIDeviceIndex");
|
||||
if (dialog.result() == QDialog::Accepted)
|
||||
{
|
||||
m_settings.m_title = dialog.getTitle();
|
||||
setTitle(m_settings.m_title);
|
||||
getDeviceUISet()->m_mainSpectrumGUI->setTitle(m_settings.m_title);
|
||||
m_settings.m_useReverseAPI = dialog.useReverseAPI();
|
||||
m_settings.m_reverseAPIAddress = dialog.getReverseAPIAddress();
|
||||
m_settings.m_reverseAPIPort = dialog.getReverseAPIPort();
|
||||
m_settings.m_reverseAPIDeviceIndex = dialog.getReverseAPIDeviceIndex();
|
||||
m_settingsKeys.append("title");
|
||||
m_settingsKeys.append("useReverseAPI");
|
||||
m_settingsKeys.append("reverseAPIAddress");
|
||||
m_settingsKeys.append("reverseAPIPort");
|
||||
m_settingsKeys.append("reverseAPIDeviceIndex");
|
||||
|
||||
sendSettings();
|
||||
sendSettings();
|
||||
}
|
||||
}
|
||||
|
||||
resetContextMenuType();
|
||||
|
||||
@ -26,6 +26,7 @@ BladeRF2MIMOSettings::BladeRF2MIMOSettings()
|
||||
|
||||
void BladeRF2MIMOSettings::resetToDefaults()
|
||||
{
|
||||
m_title = "BladeRF2MIMO";
|
||||
m_devSampleRate = 3072000;
|
||||
m_LOppmTenths = 0;
|
||||
|
||||
@ -66,6 +67,7 @@ QByteArray BladeRF2MIMOSettings::serialize() const
|
||||
|
||||
s.writeS32(1, m_devSampleRate);
|
||||
s.writeS32(2, m_LOppmTenths);
|
||||
s.writeString(3, m_title);
|
||||
|
||||
s.writeU64(10, m_rxCenterFrequency);
|
||||
s.writeU32(11, m_log2Decim);
|
||||
@ -117,6 +119,7 @@ bool BladeRF2MIMOSettings::deserialize(const QByteArray& data)
|
||||
|
||||
d.readS32(1, &m_devSampleRate, 3072000);
|
||||
d.readS32(2, &m_LOppmTenths, 0);
|
||||
d.readString(3, &m_title, "BladeRF2MIMO");
|
||||
|
||||
d.readU64(10, &m_rxCenterFrequency, 435000*1000);
|
||||
d.readU32(11, &m_log2Decim);
|
||||
@ -169,6 +172,9 @@ bool BladeRF2MIMOSettings::deserialize(const QByteArray& data)
|
||||
|
||||
void BladeRF2MIMOSettings::applySettings(const QStringList& settingsKeys, const BladeRF2MIMOSettings& settings)
|
||||
{
|
||||
if (settingsKeys.contains("title")) {
|
||||
m_title = settings.m_title;
|
||||
}
|
||||
if (settingsKeys.contains("devSampleRate")) {
|
||||
m_devSampleRate = settings.m_devSampleRate;
|
||||
}
|
||||
@ -262,6 +268,9 @@ QString BladeRF2MIMOSettings::getDebugString(const QStringList& settingsKeys, bo
|
||||
{
|
||||
std::ostringstream ostr;
|
||||
|
||||
if (settingsKeys.contains("title") || force) {
|
||||
ostr << " m_title: " << m_title.toStdString();
|
||||
}
|
||||
if (settingsKeys.contains("devSampleRate") || force) {
|
||||
ostr << " m_devSampleRate: " << m_devSampleRate;
|
||||
}
|
||||
@ -352,6 +361,3 @@ QString BladeRF2MIMOSettings::getDebugString(const QStringList& settingsKeys, bo
|
||||
|
||||
return QString(ostr.str().c_str());
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
@ -30,6 +30,7 @@ struct BladeRF2MIMOSettings {
|
||||
FC_POS_CENTER
|
||||
} fcPos_t;
|
||||
|
||||
QString m_title;
|
||||
qint32 m_devSampleRate;
|
||||
qint32 m_LOppmTenths;
|
||||
|
||||
|
||||
@ -1646,6 +1646,12 @@ void LimeSDRMIMO::webapiFormatDeviceSettings(
|
||||
const LimeSDRMIMOSettings& settings)
|
||||
{
|
||||
// Common
|
||||
if (response.getLimeSdrMimoSettings()->getTitle()) {
|
||||
*response.getLimeSdrMimoSettings()->getTitle() = settings.m_title;
|
||||
} else {
|
||||
response.getLimeSdrMimoSettings()->setTitle(new QString(settings.m_title));
|
||||
}
|
||||
|
||||
response.getLimeSdrMimoSettings()->setDevSampleRate(settings.m_devSampleRate);
|
||||
response.getLimeSdrMimoSettings()->setExtClock(settings.m_extClock ? 1 : 0);
|
||||
response.getLimeSdrMimoSettings()->setExtClockFreq(settings.m_extClockFreq);
|
||||
@ -1722,6 +1728,9 @@ void LimeSDRMIMO::webapiUpdateDeviceSettings(
|
||||
SWGSDRangel::SWGDeviceSettings& response)
|
||||
{
|
||||
// Common
|
||||
if (deviceSettingsKeys.contains("title")) {
|
||||
settings.m_title = *response.getLimeSdrMimoSettings()->getTitle();
|
||||
}
|
||||
if (deviceSettingsKeys.contains("devSampleRate")) {
|
||||
settings.m_devSampleRate = response.getLimeSdrMimoSettings()->getDevSampleRate();
|
||||
}
|
||||
@ -1972,6 +1981,9 @@ void LimeSDRMIMO::webapiReverseSendSettings(const QList<QString>& deviceSettings
|
||||
SWGSDRangel::SWGLimeSdrMIMOSettings *swgLimeSdrMIMOSettings = swgDeviceSettings->getLimeSdrMimoSettings();
|
||||
|
||||
// Common
|
||||
if (deviceSettingsKeys.contains("title") || force) {
|
||||
swgLimeSdrMIMOSettings->setTitle(new QString(settings.m_title));
|
||||
}
|
||||
if (deviceSettingsKeys.contains("devSampleRate") || force) {
|
||||
swgLimeSdrMIMOSettings->setDevSampleRate(settings.m_devSampleRate);
|
||||
}
|
||||
|
||||
@ -31,6 +31,7 @@
|
||||
#include "gui/basicdevicesettingsdialog.h"
|
||||
#include "gui/dialpopup.h"
|
||||
#include "gui/dialogpositioner.h"
|
||||
#include "mainspectrum/mainspectrumgui.h"
|
||||
#include "dsp/dspcommands.h"
|
||||
#include "dsp/devicesamplestatic.h"
|
||||
#include "limesdr/devicelimesdrshared.h"
|
||||
@ -413,6 +414,8 @@ void LimeSDRMIMOGUI::displaySettings()
|
||||
}
|
||||
|
||||
setNCODisplay();
|
||||
setTitle(m_settings.m_title);
|
||||
getDeviceUISet()->m_mainSpectrumGUI->setTitle(m_settings.m_title);
|
||||
}
|
||||
|
||||
void LimeSDRMIMOGUI::displayRxSampleRate()
|
||||
@ -1259,21 +1262,30 @@ void LimeSDRMIMOGUI::openDeviceSettingsDialog(const QPoint& p)
|
||||
dialog.setReverseAPIAddress(m_settings.m_reverseAPIAddress);
|
||||
dialog.setReverseAPIPort(m_settings.m_reverseAPIPort);
|
||||
dialog.setReverseAPIDeviceIndex(m_settings.m_reverseAPIDeviceIndex);
|
||||
dialog.setTitle(m_settings.m_title);
|
||||
dialog.setDefaultTitle(getDefaultTitle());
|
||||
|
||||
dialog.move(p);
|
||||
new DialogPositioner(&dialog, false);
|
||||
dialog.exec();
|
||||
|
||||
m_settings.m_useReverseAPI = dialog.useReverseAPI();
|
||||
m_settings.m_reverseAPIAddress = dialog.getReverseAPIAddress();
|
||||
m_settings.m_reverseAPIPort = dialog.getReverseAPIPort();
|
||||
m_settings.m_reverseAPIDeviceIndex = dialog.getReverseAPIDeviceIndex();
|
||||
m_settingsKeys.append("useReverseAPI");
|
||||
m_settingsKeys.append("reverseAPIAddress");
|
||||
m_settingsKeys.append("reverseAPIPort");
|
||||
m_settingsKeys.append("reverseAPIDeviceIndex");
|
||||
if (dialog.result() == QDialog::Accepted)
|
||||
{
|
||||
m_settings.m_title = dialog.getTitle();
|
||||
setTitle(m_settings.m_title);
|
||||
getDeviceUISet()->m_mainSpectrumGUI->setTitle(m_settings.m_title);
|
||||
m_settings.m_useReverseAPI = dialog.useReverseAPI();
|
||||
m_settings.m_reverseAPIAddress = dialog.getReverseAPIAddress();
|
||||
m_settings.m_reverseAPIPort = dialog.getReverseAPIPort();
|
||||
m_settings.m_reverseAPIDeviceIndex = dialog.getReverseAPIDeviceIndex();
|
||||
m_settingsKeys.append("title");
|
||||
m_settingsKeys.append("useReverseAPI");
|
||||
m_settingsKeys.append("reverseAPIAddress");
|
||||
m_settingsKeys.append("reverseAPIPort");
|
||||
m_settingsKeys.append("reverseAPIDeviceIndex");
|
||||
|
||||
sendSettings();
|
||||
sendSettings();
|
||||
}
|
||||
}
|
||||
|
||||
resetContextMenuType();
|
||||
|
||||
@ -26,6 +26,7 @@ LimeSDRMIMOSettings::LimeSDRMIMOSettings()
|
||||
|
||||
void LimeSDRMIMOSettings::resetToDefaults()
|
||||
{
|
||||
m_title = "LimeSDRMIMO";
|
||||
m_devSampleRate = 3200000;
|
||||
m_gpioDir = 0;
|
||||
m_gpioPins = 0;
|
||||
@ -101,6 +102,7 @@ QByteArray LimeSDRMIMOSettings::serialize() const
|
||||
s.writeString(9, m_reverseAPIAddress);
|
||||
s.writeU32(10, m_reverseAPIPort);
|
||||
s.writeU32(11, m_reverseAPIDeviceIndex);
|
||||
s.writeString(12, m_title);
|
||||
|
||||
s.writeU64(20, m_rxCenterFrequency);
|
||||
s.writeU32(21, m_log2HardDecim);
|
||||
@ -181,6 +183,9 @@ bool LimeSDRMIMOSettings::deserialize(const QByteArray& data)
|
||||
d.readBool(8, &m_useReverseAPI, false);
|
||||
d.readString(9, &m_reverseAPIAddress, "127.0.0.1");
|
||||
d.readU32(10, &uintval, 0);
|
||||
d.readU32(11, &uintval, 0);
|
||||
m_reverseAPIDeviceIndex = uintval > 99 ? 99 : uintval;
|
||||
d.readString(12, &m_title, "LimeSDRMIMO");
|
||||
|
||||
if ((uintval > 1023) && (uintval < 65535)) {
|
||||
m_reverseAPIPort = uintval;
|
||||
@ -259,6 +264,9 @@ bool LimeSDRMIMOSettings::deserialize(const QByteArray& data)
|
||||
|
||||
void LimeSDRMIMOSettings::applySettings(const QStringList& settingsKeys, const LimeSDRMIMOSettings& settings)
|
||||
{
|
||||
if (settingsKeys.contains("title")) {
|
||||
m_title = settings.m_title;
|
||||
}
|
||||
if (settingsKeys.contains("devSampleRate")) {
|
||||
m_devSampleRate = settings.m_devSampleRate;
|
||||
}
|
||||
@ -427,6 +435,9 @@ QString LimeSDRMIMOSettings::getDebugString(const QStringList& settingsKeys, boo
|
||||
{
|
||||
std::ostringstream ostr;
|
||||
|
||||
if (settingsKeys.contains("title") || force) {
|
||||
ostr << " m_title: " << m_title.toStdString();
|
||||
}
|
||||
if (settingsKeys.contains("devSampleRate") || force) {
|
||||
ostr << " m_devSampleRate: " << m_devSampleRate;
|
||||
}
|
||||
|
||||
@ -52,6 +52,7 @@ struct LimeSDRMIMOSettings
|
||||
};
|
||||
|
||||
// General
|
||||
QString m_title;
|
||||
qint32 m_devSampleRate;
|
||||
uint8_t m_gpioDir; //!< GPIO pin direction LSB first; 0 input, 1 output
|
||||
uint8_t m_gpioPins; //!< GPIO pins to write; LSB first
|
||||
|
||||
@ -484,6 +484,9 @@ void MetisMISO::webapiUpdateDeviceSettings(
|
||||
const QStringList& deviceSettingsKeys,
|
||||
SWGSDRangel::SWGDeviceSettings& response)
|
||||
{
|
||||
if (deviceSettingsKeys.contains("title")) {
|
||||
settings.m_title = *response.getMetisMisoSettings()->getTitle();
|
||||
}
|
||||
if (deviceSettingsKeys.contains("nbReceivers")) {
|
||||
settings.m_nbReceivers = response.getMetisMisoSettings()->getNbReceivers();
|
||||
}
|
||||
@ -614,6 +617,12 @@ void MetisMISO::webapiUpdateDeviceSettings(
|
||||
|
||||
void MetisMISO::webapiFormatDeviceSettings(SWGSDRangel::SWGDeviceSettings& response, const MetisMISOSettings& settings)
|
||||
{
|
||||
if (response.getMetisMisoSettings()->getTitle()) {
|
||||
*response.getMetisMisoSettings()->getTitle() = settings.m_title;
|
||||
} else {
|
||||
response.getMetisMisoSettings()->setTitle(new QString(settings.m_title));
|
||||
}
|
||||
|
||||
response.getMetisMisoSettings()->setNbReceivers(settings.m_nbReceivers);
|
||||
response.getMetisMisoSettings()->setTxEnable(settings.m_txEnable ? 1 : 0);
|
||||
|
||||
@ -676,6 +685,9 @@ void MetisMISO::webapiReverseSendSettings(const QList<QString>& deviceSettingsKe
|
||||
swgDeviceSettings->setMetisMisoSettings(new SWGSDRangel::SWGMetisMISOSettings());
|
||||
SWGSDRangel::SWGMetisMISOSettings *swgMetisMISOSettings = swgDeviceSettings->getMetisMisoSettings();
|
||||
|
||||
if (deviceSettingsKeys.contains("title") || force) {
|
||||
swgMetisMISOSettings->setTitle(new QString(settings.m_title));
|
||||
}
|
||||
if (deviceSettingsKeys.contains("nbReceivers") || force) {
|
||||
swgMetisMISOSettings->setNbReceivers(settings.m_nbReceivers);
|
||||
}
|
||||
|
||||
@ -30,6 +30,7 @@
|
||||
#include "gui/glspectrum.h"
|
||||
#include "gui/dialpopup.h"
|
||||
#include "gui/dialogpositioner.h"
|
||||
#include "mainspectrum/mainspectrumgui.h"
|
||||
#include "gui/basicdevicesettingsdialog.h"
|
||||
#include "dsp/dspcommands.h"
|
||||
|
||||
@ -384,6 +385,8 @@ void MetisMISOGui::displaySettings()
|
||||
{
|
||||
blockApplySettings(true);
|
||||
|
||||
setTitle(m_settings.m_title);
|
||||
getDeviceUISet()->m_mainSpectrumGUI->setTitle(m_settings.m_title);
|
||||
ui->streamIndex->setCurrentIndex(m_settings.m_streamIndex);
|
||||
ui->spectrumSource->setCurrentIndex(m_settings.m_spectrumStreamIndex);
|
||||
ui->nbRxIndex->setCurrentIndex(m_settings.m_nbReceivers - 1);
|
||||
@ -631,21 +634,30 @@ void MetisMISOGui::openDeviceSettingsDialog(const QPoint& p)
|
||||
dialog.setReverseAPIAddress(m_settings.m_reverseAPIAddress);
|
||||
dialog.setReverseAPIPort(m_settings.m_reverseAPIPort);
|
||||
dialog.setReverseAPIDeviceIndex(m_settings.m_reverseAPIDeviceIndex);
|
||||
dialog.setTitle(m_settings.m_title);
|
||||
dialog.setDefaultTitle(getDefaultTitle());
|
||||
|
||||
dialog.move(p);
|
||||
new DialogPositioner(&dialog, false);
|
||||
dialog.exec();
|
||||
|
||||
m_settings.m_useReverseAPI = dialog.useReverseAPI();
|
||||
m_settings.m_reverseAPIAddress = dialog.getReverseAPIAddress();
|
||||
m_settings.m_reverseAPIPort = dialog.getReverseAPIPort();
|
||||
m_settings.m_reverseAPIDeviceIndex = dialog.getReverseAPIDeviceIndex();
|
||||
m_settingsKeys.append("useReverseAPI");
|
||||
m_settingsKeys.append("reverseAPIAddress");
|
||||
m_settingsKeys.append("reverseAPIPort");
|
||||
m_settingsKeys.append("reverseAPIDeviceIndex");
|
||||
if (dialog.result() == QDialog::Accepted)
|
||||
{
|
||||
m_settings.m_title = dialog.getTitle();
|
||||
setTitle(m_settings.m_title);
|
||||
getDeviceUISet()->m_mainSpectrumGUI->setTitle(m_settings.m_title);
|
||||
m_settings.m_useReverseAPI = dialog.useReverseAPI();
|
||||
m_settings.m_reverseAPIAddress = dialog.getReverseAPIAddress();
|
||||
m_settings.m_reverseAPIPort = dialog.getReverseAPIPort();
|
||||
m_settings.m_reverseAPIDeviceIndex = dialog.getReverseAPIDeviceIndex();
|
||||
m_settingsKeys.append("title");
|
||||
m_settingsKeys.append("useReverseAPI");
|
||||
m_settingsKeys.append("reverseAPIAddress");
|
||||
m_settingsKeys.append("reverseAPIPort");
|
||||
m_settingsKeys.append("reverseAPIDeviceIndex");
|
||||
|
||||
sendSettings();
|
||||
sendSettings();
|
||||
}
|
||||
}
|
||||
|
||||
resetContextMenuType();
|
||||
|
||||
@ -26,6 +26,7 @@ MetisMISOSettings::MetisMISOSettings()
|
||||
|
||||
MetisMISOSettings::MetisMISOSettings(const MetisMISOSettings& other)
|
||||
{
|
||||
m_title = other.m_title;
|
||||
m_nbReceivers = other.m_nbReceivers;
|
||||
m_txEnable = other.m_txEnable;
|
||||
std::copy(other.m_rxCenterFrequencies, other.m_rxCenterFrequencies + m_maxReceivers, m_rxCenterFrequencies);
|
||||
@ -58,6 +59,7 @@ MetisMISOSettings::MetisMISOSettings(const MetisMISOSettings& other)
|
||||
|
||||
void MetisMISOSettings::resetToDefaults()
|
||||
{
|
||||
m_title = "MetisMISO";
|
||||
m_nbReceivers = 1;
|
||||
m_txEnable = false;
|
||||
std::fill(m_rxCenterFrequencies, m_rxCenterFrequencies + m_maxReceivers, 7074000);
|
||||
@ -118,6 +120,7 @@ QByteArray MetisMISOSettings::serialize() const
|
||||
s.writeS32(24, m_spectrumStreamIndex);
|
||||
s.writeBool(25, m_streamLock);
|
||||
s.writeBool(26, m_rxLock);
|
||||
s.writeString(27, m_title);
|
||||
|
||||
for (int i = 0; i < m_maxReceivers; i++)
|
||||
{
|
||||
@ -183,6 +186,7 @@ bool MetisMISOSettings::deserialize(const QByteArray& data)
|
||||
d.readS32(24, &m_spectrumStreamIndex, 0);
|
||||
d.readBool(25, &m_streamLock, false);
|
||||
d.readBool(26, &m_rxLock, false);
|
||||
d.readString(27, &m_title, "MetisMISO");
|
||||
|
||||
return true;
|
||||
}
|
||||
@ -195,6 +199,9 @@ bool MetisMISOSettings::deserialize(const QByteArray& data)
|
||||
|
||||
void MetisMISOSettings::applySettings(const QStringList& settingsKeys, const MetisMISOSettings& settings)
|
||||
{
|
||||
if (settingsKeys.contains("title")) {
|
||||
m_title = settings.m_title;
|
||||
}
|
||||
if (settingsKeys.contains("nbReceivers")) {
|
||||
m_nbReceivers = settings.m_nbReceivers;
|
||||
}
|
||||
@ -327,6 +334,9 @@ QString MetisMISOSettings::getDebugString(const QStringList& settingsKeys, bool
|
||||
{
|
||||
std::ostringstream ostr;
|
||||
|
||||
if (settingsKeys.contains("title") || force) {
|
||||
ostr << " m_title: " << m_title.toStdString();
|
||||
}
|
||||
if (settingsKeys.contains("nbReceivers") || force) {
|
||||
ostr << " m_nbReceivers: " << m_nbReceivers;
|
||||
}
|
||||
|
||||
@ -23,8 +23,10 @@
|
||||
|
||||
#include <QString>
|
||||
|
||||
struct MetisMISOSettings {
|
||||
struct MetisMISOSettings
|
||||
{
|
||||
static const int m_maxReceivers = 8;
|
||||
QString m_title;
|
||||
unsigned int m_nbReceivers;
|
||||
bool m_txEnable;
|
||||
quint64 m_rxCenterFrequencies[m_maxReceivers];
|
||||
|
||||
@ -794,6 +794,9 @@ void PlutoSDRMIMO::webapiUpdateDeviceSettings(
|
||||
const QStringList& deviceSettingsKeys,
|
||||
SWGSDRangel::SWGDeviceSettings& response)
|
||||
{
|
||||
if (deviceSettingsKeys.contains("title")) {
|
||||
settings.m_title = *response.getPlutoSdrMimoSettings()->getTitle();
|
||||
}
|
||||
if (deviceSettingsKeys.contains("devSampleRate")) {
|
||||
settings.m_devSampleRate = response.getPlutoSdrMimoSettings()->getDevSampleRate();
|
||||
}
|
||||
@ -924,6 +927,12 @@ void PlutoSDRMIMO::webapiUpdateDeviceSettings(
|
||||
|
||||
void PlutoSDRMIMO::webapiFormatDeviceSettings(SWGSDRangel::SWGDeviceSettings& response, const PlutoSDRMIMOSettings& settings)
|
||||
{
|
||||
if (response.getPlutoSdrMimoSettings()->getTitle()) {
|
||||
*response.getPlutoSdrMimoSettings()->getTitle() = settings.m_title;
|
||||
} else {
|
||||
response.getPlutoSdrMimoSettings()->setTitle(new QString(settings.m_title));
|
||||
}
|
||||
|
||||
response.getPlutoSdrMimoSettings()->setDevSampleRate(settings.m_devSampleRate);
|
||||
response.getPlutoSdrMimoSettings()->setLOppmTenths(settings.m_LOppmTenths);
|
||||
response.getPlutoSdrMimoSettings()->setRxCenterFrequency(settings.m_rxCenterFrequency);
|
||||
@ -1029,6 +1038,9 @@ void PlutoSDRMIMO::webapiReverseSendSettings(const QList<QString>& deviceSetting
|
||||
|
||||
// transfer data that has been modified. When force is on transfer all data except reverse API data
|
||||
|
||||
if (deviceSettingsKeys.contains("title")) {
|
||||
swgPlutoSDRMIMOSettings->setTitle(new QString(settings.m_title));
|
||||
}
|
||||
if (deviceSettingsKeys.contains("devSampleRate") || force) {
|
||||
swgPlutoSDRMIMOSettings->setDevSampleRate(settings.m_devSampleRate);
|
||||
}
|
||||
|
||||
@ -30,6 +30,7 @@
|
||||
#include "gui/basicdevicesettingsdialog.h"
|
||||
#include "gui/dialpopup.h"
|
||||
#include "gui/dialogpositioner.h"
|
||||
#include "mainspectrum/mainspectrumgui.h"
|
||||
#include "dsp/dspcommands.h"
|
||||
#include "dsp/devicesamplestatic.h"
|
||||
#include "dsp/devicesamplesource.h"
|
||||
@ -146,6 +147,9 @@ bool PlutoSDRMIMOGUI::deserialize(const QByteArray& data)
|
||||
|
||||
void PlutoSDRMIMOGUI::displaySettings()
|
||||
{
|
||||
setTitle(m_settings.m_title);
|
||||
getDeviceUISet()->m_mainSpectrumGUI->setTitle(m_settings.m_title);
|
||||
|
||||
if (m_rxElseTx)
|
||||
{
|
||||
ui->transverter->setDeltaFrequency(m_settings.m_rxTransverterDeltaFrequency);
|
||||
@ -994,21 +998,30 @@ void PlutoSDRMIMOGUI::openDeviceSettingsDialog(const QPoint& p)
|
||||
dialog.setReverseAPIAddress(m_settings.m_reverseAPIAddress);
|
||||
dialog.setReverseAPIPort(m_settings.m_reverseAPIPort);
|
||||
dialog.setReverseAPIDeviceIndex(m_settings.m_reverseAPIDeviceIndex);
|
||||
dialog.setTitle(m_settings.m_title);
|
||||
dialog.setDefaultTitle(getDefaultTitle());
|
||||
|
||||
dialog.move(p);
|
||||
new DialogPositioner(&dialog, false);
|
||||
dialog.exec();
|
||||
|
||||
m_settings.m_useReverseAPI = dialog.useReverseAPI();
|
||||
m_settings.m_reverseAPIAddress = dialog.getReverseAPIAddress();
|
||||
m_settings.m_reverseAPIPort = dialog.getReverseAPIPort();
|
||||
m_settings.m_reverseAPIDeviceIndex = dialog.getReverseAPIDeviceIndex();
|
||||
m_settingsKeys.append("useReverseAPI");
|
||||
m_settingsKeys.append("reverseAPIAddress");
|
||||
m_settingsKeys.append("reverseAPIPort");
|
||||
m_settingsKeys.append("reverseAPIDeviceIndex");
|
||||
if (dialog.result() == QDialog::Accepted)
|
||||
{
|
||||
m_settings.m_title = dialog.getTitle();
|
||||
setTitle(m_settings.m_title);
|
||||
getDeviceUISet()->m_mainSpectrumGUI->setTitle(m_settings.m_title);
|
||||
m_settings.m_useReverseAPI = dialog.useReverseAPI();
|
||||
m_settings.m_reverseAPIAddress = dialog.getReverseAPIAddress();
|
||||
m_settings.m_reverseAPIPort = dialog.getReverseAPIPort();
|
||||
m_settings.m_reverseAPIDeviceIndex = dialog.getReverseAPIDeviceIndex();
|
||||
m_settingsKeys.append("title");
|
||||
m_settingsKeys.append("useReverseAPI");
|
||||
m_settingsKeys.append("reverseAPIAddress");
|
||||
m_settingsKeys.append("reverseAPIPort");
|
||||
m_settingsKeys.append("reverseAPIDeviceIndex");
|
||||
|
||||
sendSettings();
|
||||
sendSettings();
|
||||
}
|
||||
}
|
||||
|
||||
resetContextMenuType();
|
||||
|
||||
@ -29,6 +29,7 @@ PlutoSDRMIMOSettings::PlutoSDRMIMOSettings()
|
||||
|
||||
void PlutoSDRMIMOSettings::resetToDefaults()
|
||||
{
|
||||
m_title = "PlutoSDRMIMO";
|
||||
m_devSampleRate = 2500 * 1000;
|
||||
m_LOppmTenths = 0;
|
||||
|
||||
@ -87,6 +88,7 @@ QByteArray PlutoSDRMIMOSettings::serialize() const
|
||||
// Common
|
||||
s.writeU64(1, m_devSampleRate);
|
||||
s.writeS32(2, m_LOppmTenths);
|
||||
s.writeString(3, m_title);
|
||||
|
||||
// Rx
|
||||
s.writeU64(10, m_rxCenterFrequency);
|
||||
@ -163,6 +165,7 @@ bool PlutoSDRMIMOSettings::deserialize(const QByteArray& data)
|
||||
// Common
|
||||
d.readU64(1, &m_devSampleRate, 2500 * 1000);
|
||||
d.readS32(2, &m_LOppmTenths, 0);
|
||||
d.readString(3, &m_title, "PlutoSDRMIMO");
|
||||
|
||||
// Rx
|
||||
d.readU64(10, &m_rxCenterFrequency, 435000*1000);
|
||||
@ -287,6 +290,9 @@ bool PlutoSDRMIMOSettings::deserialize(const QByteArray& data)
|
||||
|
||||
void PlutoSDRMIMOSettings::applySettings(const QStringList& settingsKeys, const PlutoSDRMIMOSettings& settings)
|
||||
{
|
||||
if (settingsKeys.contains("title")) {
|
||||
m_title = settings.m_title;
|
||||
}
|
||||
if (settingsKeys.contains("devSampleRate")) {
|
||||
m_devSampleRate = settings.m_devSampleRate;
|
||||
}
|
||||
@ -419,6 +425,9 @@ QString PlutoSDRMIMOSettings::getDebugString(const QStringList& settingsKeys, bo
|
||||
{
|
||||
std::ostringstream ostr;
|
||||
|
||||
if (settingsKeys.contains("title") || force) {
|
||||
ostr << " m_title: " << m_title.toStdString();
|
||||
}
|
||||
if (settingsKeys.contains("devSampleRate") || force) {
|
||||
ostr << " m_devSampleRate: " << m_devSampleRate;
|
||||
}
|
||||
|
||||
@ -63,6 +63,7 @@ struct PlutoSDRMIMOSettings {
|
||||
} GainMode;
|
||||
|
||||
// Common
|
||||
QString m_title;
|
||||
quint64 m_devSampleRate; //!< Host interface sample rate
|
||||
qint32 m_LOppmTenths; //!< XO correction
|
||||
|
||||
|
||||
@ -679,6 +679,10 @@ void TestMI::webapiUpdateDeviceSettings(
|
||||
|
||||
}
|
||||
|
||||
|
||||
if (deviceSettingsKeys.contains("title")) {
|
||||
settings.m_title = *response.getTestMiSettings()->getTitle();
|
||||
}
|
||||
if (deviceSettingsKeys.contains("useReverseAPI")) {
|
||||
settings.m_useReverseAPI = response.getTestMiSettings()->getUseReverseApi() != 0;
|
||||
}
|
||||
@ -722,6 +726,12 @@ void TestMI::webapiFormatDeviceSettings(SWGSDRangel::SWGDeviceSettings& response
|
||||
streams->back()->setPhaseImbalance(it->m_phaseImbalance);
|
||||
}
|
||||
|
||||
if (response.getTestMiSettings()->getTitle()) {
|
||||
*response.getTestMiSettings()->getTitle() = settings.m_title;
|
||||
} else {
|
||||
response.getTestMiSettings()->setTitle(new QString(settings.m_title));
|
||||
}
|
||||
|
||||
response.getTestMiSettings()->setUseReverseApi(settings.m_useReverseAPI ? 1 : 0);
|
||||
|
||||
if (response.getTestMiSettings()->getReverseApiAddress()) {
|
||||
|
||||
@ -31,6 +31,7 @@
|
||||
#include "gui/basicdevicesettingsdialog.h"
|
||||
#include "gui/dialpopup.h"
|
||||
#include "gui/dialogpositioner.h"
|
||||
#include "mainspectrum/mainspectrumgui.h"
|
||||
#include "dsp/dspcommands.h"
|
||||
#include "util/db.h"
|
||||
|
||||
@ -397,6 +398,8 @@ void TestMIGui::displaySettings()
|
||||
blockApplySettings(true);
|
||||
ui->sampleSize->blockSignals(true);
|
||||
|
||||
setTitle(m_settings.m_title);
|
||||
getDeviceUISet()->m_mainSpectrumGUI->setTitle(m_settings.m_title);
|
||||
ui->streamIndex->setCurrentIndex(m_streamIndex);
|
||||
ui->centerFrequency->setValue(m_settings.m_streams[m_streamIndex].m_centerFrequency / 1000);
|
||||
ui->decimation->setCurrentIndex(m_settings.m_streams[m_streamIndex].m_log2Decim);
|
||||
@ -557,17 +560,25 @@ void TestMIGui::openDeviceSettingsDialog(const QPoint& p)
|
||||
dialog.setReverseAPIAddress(m_settings.m_reverseAPIAddress);
|
||||
dialog.setReverseAPIPort(m_settings.m_reverseAPIPort);
|
||||
dialog.setReverseAPIDeviceIndex(m_settings.m_reverseAPIDeviceIndex);
|
||||
dialog.setTitle(m_settings.m_title);
|
||||
dialog.setDefaultTitle(getDefaultTitle());
|
||||
|
||||
dialog.move(p);
|
||||
new DialogPositioner(&dialog, false);
|
||||
dialog.exec();
|
||||
|
||||
m_settings.m_useReverseAPI = dialog.useReverseAPI();
|
||||
m_settings.m_reverseAPIAddress = dialog.getReverseAPIAddress();
|
||||
m_settings.m_reverseAPIPort = dialog.getReverseAPIPort();
|
||||
m_settings.m_reverseAPIDeviceIndex = dialog.getReverseAPIDeviceIndex();
|
||||
if (dialog.result() == QDialog::Accepted)
|
||||
{
|
||||
m_settings.m_title = dialog.getTitle();
|
||||
setTitle(m_settings.m_title);
|
||||
getDeviceUISet()->m_mainSpectrumGUI->setTitle(m_settings.m_title);
|
||||
m_settings.m_useReverseAPI = dialog.useReverseAPI();
|
||||
m_settings.m_reverseAPIAddress = dialog.getReverseAPIAddress();
|
||||
m_settings.m_reverseAPIPort = dialog.getReverseAPIPort();
|
||||
m_settings.m_reverseAPIDeviceIndex = dialog.getReverseAPIDeviceIndex();
|
||||
|
||||
sendSettings();
|
||||
sendSettings();
|
||||
}
|
||||
}
|
||||
|
||||
resetContextMenuType();
|
||||
|
||||
@ -48,6 +48,7 @@ void TestMIStreamSettings::resetToDefaults()
|
||||
|
||||
TestMISettings::TestMISettings()
|
||||
{
|
||||
m_title = "TestMI";
|
||||
m_useReverseAPI = false;
|
||||
m_reverseAPIAddress = "127.0.0.1";
|
||||
m_reverseAPIPort = 8888;
|
||||
@ -80,6 +81,7 @@ QByteArray TestMISettings::serialize() const
|
||||
s.writeString(2, m_reverseAPIAddress);
|
||||
s.writeU32(3, m_reverseAPIPort);
|
||||
s.writeU32(4, m_reverseAPIDeviceIndex);
|
||||
s.writeString(5, m_title);
|
||||
|
||||
for (unsigned int i = 0; i < m_streams.size(); i++)
|
||||
{
|
||||
@ -173,9 +175,3 @@ bool TestMISettings::deserialize(const QByteArray& data)
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
@ -70,6 +70,7 @@ struct TestMIStreamSettings {
|
||||
|
||||
struct TestMISettings
|
||||
{
|
||||
QString m_title;
|
||||
bool m_useReverseAPI;
|
||||
QString m_reverseAPIAddress;
|
||||
uint16_t m_reverseAPIPort;
|
||||
|
||||
@ -401,6 +401,12 @@ void TestMOSync::webapiFormatDeviceSettings(
|
||||
SWGSDRangel::SWGDeviceSettings& response,
|
||||
const TestMOSyncSettings& settings)
|
||||
{
|
||||
if (response.getTestMoSyncSettings()->getTitle()) {
|
||||
*response.getTestMoSyncSettings()->getTitle() = settings.m_title;
|
||||
} else {
|
||||
response.getTestMoSyncSettings()->setTitle(new QString(settings.m_title));
|
||||
}
|
||||
|
||||
response.getTestMoSyncSettings()->setCenterFrequency(settings.m_centerFrequency);
|
||||
response.getTestMoSyncSettings()->setFcPosTx((int) settings.m_fcPosTx);
|
||||
response.getTestMoSyncSettings()->setLog2Interp(settings.m_log2Interp);
|
||||
@ -412,6 +418,9 @@ void TestMOSync::webapiUpdateDeviceSettings(
|
||||
const QStringList& deviceSettingsKeys,
|
||||
SWGSDRangel::SWGDeviceSettings& response)
|
||||
{
|
||||
if (deviceSettingsKeys.contains("title")) {
|
||||
settings.m_title = *response.getTestMoSyncSettings()->getTitle();
|
||||
}
|
||||
if (deviceSettingsKeys.contains("centerFrequency")) {
|
||||
settings.m_centerFrequency = response.getTestMoSyncSettings()->getCenterFrequency();
|
||||
}
|
||||
|
||||
@ -27,6 +27,7 @@
|
||||
#include "gui/glspectrum.h"
|
||||
#include "gui/basicdevicesettingsdialog.h"
|
||||
#include "gui/dialogpositioner.h"
|
||||
#include "mainspectrum/mainspectrumgui.h"
|
||||
#include "dsp/dspcommands.h"
|
||||
#include "dsp/spectrumvis.h"
|
||||
#include "device/deviceapi.h"
|
||||
@ -204,6 +205,8 @@ void TestMOSyncGui::updateSampleRateAndFrequency()
|
||||
|
||||
void TestMOSyncGui::displaySettings()
|
||||
{
|
||||
setTitle(m_settings.m_title);
|
||||
getDeviceUISet()->m_mainSpectrumGUI->setTitle(m_settings.m_title);
|
||||
ui->centerFrequency->setValue(m_settings.m_centerFrequency / 1000);
|
||||
ui->sampleRate->setValue(m_settings.m_sampleRate);
|
||||
}
|
||||
@ -314,21 +317,30 @@ void TestMOSyncGui::openDeviceSettingsDialog(const QPoint& p)
|
||||
dialog.setReverseAPIAddress(m_settings.m_reverseAPIAddress);
|
||||
dialog.setReverseAPIPort(m_settings.m_reverseAPIPort);
|
||||
dialog.setReverseAPIDeviceIndex(m_settings.m_reverseAPIDeviceIndex);
|
||||
dialog.setTitle(m_settings.m_title);
|
||||
dialog.setDefaultTitle(getDefaultTitle());
|
||||
|
||||
dialog.move(p);
|
||||
new DialogPositioner(&dialog, false);
|
||||
dialog.exec();
|
||||
|
||||
m_settings.m_useReverseAPI = dialog.useReverseAPI();
|
||||
m_settings.m_reverseAPIAddress = dialog.getReverseAPIAddress();
|
||||
m_settings.m_reverseAPIPort = dialog.getReverseAPIPort();
|
||||
m_settings.m_reverseAPIDeviceIndex = dialog.getReverseAPIDeviceIndex();
|
||||
m_settingsKeys.append("useReverseAPI");
|
||||
m_settingsKeys.append("reverseAPIAddress");
|
||||
m_settingsKeys.append("reverseAPIPort");
|
||||
m_settingsKeys.append("reverseAPIDeviceIndex");
|
||||
if (dialog.result() == QDialog::Accepted)
|
||||
{
|
||||
m_settings.m_title = dialog.getTitle();
|
||||
setTitle(m_settings.m_title);
|
||||
getDeviceUISet()->m_mainSpectrumGUI->setTitle(m_settings.m_title);
|
||||
m_settings.m_useReverseAPI = dialog.useReverseAPI();
|
||||
m_settings.m_reverseAPIAddress = dialog.getReverseAPIAddress();
|
||||
m_settings.m_reverseAPIPort = dialog.getReverseAPIPort();
|
||||
m_settings.m_reverseAPIDeviceIndex = dialog.getReverseAPIDeviceIndex();
|
||||
m_settingsKeys.append("title");
|
||||
m_settingsKeys.append("useReverseAPI");
|
||||
m_settingsKeys.append("reverseAPIAddress");
|
||||
m_settingsKeys.append("reverseAPIPort");
|
||||
m_settingsKeys.append("reverseAPIDeviceIndex");
|
||||
|
||||
sendSettings();
|
||||
sendSettings();
|
||||
}
|
||||
}
|
||||
|
||||
resetContextMenuType();
|
||||
|
||||
@ -29,6 +29,7 @@ TestMOSyncSettings::TestMOSyncSettings()
|
||||
|
||||
void TestMOSyncSettings::resetToDefaults()
|
||||
{
|
||||
m_title = "TestMOSync";
|
||||
m_centerFrequency = 435000*1000;
|
||||
m_sampleRate = 48000;
|
||||
m_log2Interp = 0;
|
||||
@ -50,6 +51,7 @@ QByteArray TestMOSyncSettings::serialize() const
|
||||
s.writeString(7, m_reverseAPIAddress);
|
||||
s.writeU32(8, m_reverseAPIPort);
|
||||
s.writeU32(9, m_reverseAPIDeviceIndex);
|
||||
s.writeString(10, m_title);
|
||||
|
||||
return s.final();
|
||||
}
|
||||
@ -73,9 +75,9 @@ bool TestMOSyncSettings::deserialize(const QByteArray& data)
|
||||
d.readU32(2, &m_log2Interp, 0);
|
||||
d.readS32(3, &intval, 2);
|
||||
m_fcPosTx = (fcPos_t) intval;
|
||||
d.readBool(1, &m_useReverseAPI, false);
|
||||
d.readString(2, &m_reverseAPIAddress, "127.0.0.1");
|
||||
d.readU32(3, &utmp, 0);
|
||||
d.readBool(6, &m_useReverseAPI, false);
|
||||
d.readString(7, &m_reverseAPIAddress, "127.0.0.1");
|
||||
d.readU32(8, &utmp, 0);
|
||||
|
||||
if ((utmp > 1023) && (utmp < 65535)) {
|
||||
m_reverseAPIPort = utmp;
|
||||
@ -83,9 +85,11 @@ bool TestMOSyncSettings::deserialize(const QByteArray& data)
|
||||
m_reverseAPIPort = 8888;
|
||||
}
|
||||
|
||||
d.readU32(4, &utmp, 0);
|
||||
d.readU32(9, &utmp, 0);
|
||||
m_reverseAPIDeviceIndex = utmp > 99 ? 99 : utmp;
|
||||
|
||||
d.readString(10, &m_title, "TestMOSync");
|
||||
|
||||
return true;
|
||||
}
|
||||
else
|
||||
@ -97,6 +101,9 @@ bool TestMOSyncSettings::deserialize(const QByteArray& data)
|
||||
|
||||
void TestMOSyncSettings::applySettings(const QStringList& settingsKeys, const TestMOSyncSettings& settings)
|
||||
{
|
||||
if (settingsKeys.contains("title")) {
|
||||
m_title = settings.m_title;
|
||||
}
|
||||
if (settingsKeys.contains("centerFrequency")) {
|
||||
m_centerFrequency = settings.m_centerFrequency;
|
||||
}
|
||||
@ -127,6 +134,9 @@ QString TestMOSyncSettings::getDebugString(const QStringList& settingsKeys, bool
|
||||
{
|
||||
std::ostringstream ostr;
|
||||
|
||||
if (settingsKeys.contains("title") || force) {
|
||||
ostr << " m_title: " << m_title.toStdString();
|
||||
}
|
||||
if (settingsKeys.contains("centerFrequency") || force) {
|
||||
ostr << " m_centerFrequency: " << m_centerFrequency;
|
||||
}
|
||||
|
||||
@ -27,6 +27,7 @@ struct TestMOSyncSettings {
|
||||
FC_POS_CENTER
|
||||
} fcPos_t;
|
||||
|
||||
QString m_title;
|
||||
quint64 m_centerFrequency;
|
||||
quint64 m_sampleRate;
|
||||
quint32 m_log2Interp;
|
||||
|
||||
@ -1223,6 +1223,9 @@ void XTRXMIMO::webapiUpdateDeviceSettings(
|
||||
SWGSDRangel::SWGDeviceSettings& response)
|
||||
{
|
||||
// common
|
||||
if (deviceSettingsKeys.contains("title")) {
|
||||
settings.m_title = *response.getXtrxMimoSettings()->getTitle();
|
||||
}
|
||||
if (deviceSettingsKeys.contains("extClock")) {
|
||||
settings.m_extClock = response.getXtrxMimoSettings()->getExtClock() != 0;
|
||||
}
|
||||
@ -1371,6 +1374,12 @@ void XTRXMIMO::webapiFormatDeviceSettings(
|
||||
const XTRXMIMOSettings& settings)
|
||||
{
|
||||
// common
|
||||
if (response.getXtrxMimoSettings()->getTitle()) {
|
||||
*response.getXtrxMimoSettings()->getTitle() = settings.m_title;
|
||||
} else {
|
||||
response.getXtrxMimoSettings()->setTitle(new QString(settings.m_title));
|
||||
}
|
||||
|
||||
response.getXtrxMimoSettings()->setExtClock(settings.m_extClock ? 1 : 0);
|
||||
response.getXtrxMimoSettings()->setExtClockFreq(settings.m_extClockFreq);
|
||||
|
||||
|
||||
@ -30,6 +30,7 @@
|
||||
#include "gui/basicdevicesettingsdialog.h"
|
||||
#include "gui/dialpopup.h"
|
||||
#include "gui/dialogpositioner.h"
|
||||
#include "mainspectrum/mainspectrumgui.h"
|
||||
#include "dsp/devicesamplestatic.h"
|
||||
#include "dsp/dspcommands.h"
|
||||
#include "xtrx/devicextrxshared.h"
|
||||
@ -268,6 +269,8 @@ void XTRXMIMOGUI::displaySettings()
|
||||
ui->extClock->setExternalClockFrequency(m_settings.m_extClockFreq);
|
||||
ui->extClock->setExternalClockActive(m_settings.m_extClock);
|
||||
displaySampleRate();
|
||||
setTitle(m_settings.m_title);
|
||||
getDeviceUISet()->m_mainSpectrumGUI->setTitle(m_settings.m_title);
|
||||
|
||||
if (m_rxElseTx)
|
||||
{
|
||||
@ -1081,21 +1084,30 @@ void XTRXMIMOGUI::openDeviceSettingsDialog(const QPoint& p)
|
||||
dialog.setReverseAPIAddress(m_settings.m_reverseAPIAddress);
|
||||
dialog.setReverseAPIPort(m_settings.m_reverseAPIPort);
|
||||
dialog.setReverseAPIDeviceIndex(m_settings.m_reverseAPIDeviceIndex);
|
||||
dialog.setTitle(m_settings.m_title);
|
||||
dialog.setDefaultTitle(getDefaultTitle());
|
||||
|
||||
dialog.move(p);
|
||||
new DialogPositioner(&dialog, false);
|
||||
dialog.exec();
|
||||
|
||||
m_settings.m_useReverseAPI = dialog.useReverseAPI();
|
||||
m_settings.m_reverseAPIAddress = dialog.getReverseAPIAddress();
|
||||
m_settings.m_reverseAPIPort = dialog.getReverseAPIPort();
|
||||
m_settings.m_reverseAPIDeviceIndex = dialog.getReverseAPIDeviceIndex();
|
||||
m_settingsKeys.append("useReverseAPI");
|
||||
m_settingsKeys.append("reverseAPIAddress");
|
||||
m_settingsKeys.append("reverseAPIPort");
|
||||
m_settingsKeys.append("reverseAPIDeviceIndex");
|
||||
if (dialog.result() == QDialog::Accepted)
|
||||
{
|
||||
m_settings.m_title = dialog.getTitle();
|
||||
setTitle(m_settings.m_title);
|
||||
getDeviceUISet()->m_mainSpectrumGUI->setTitle(m_settings.m_title);
|
||||
m_settings.m_useReverseAPI = dialog.useReverseAPI();
|
||||
m_settings.m_reverseAPIAddress = dialog.getReverseAPIAddress();
|
||||
m_settings.m_reverseAPIPort = dialog.getReverseAPIPort();
|
||||
m_settings.m_reverseAPIDeviceIndex = dialog.getReverseAPIDeviceIndex();
|
||||
m_settingsKeys.append("title");
|
||||
m_settingsKeys.append("useReverseAPI");
|
||||
m_settingsKeys.append("reverseAPIAddress");
|
||||
m_settingsKeys.append("reverseAPIPort");
|
||||
m_settingsKeys.append("reverseAPIDeviceIndex");
|
||||
|
||||
sendSettings();
|
||||
sendSettings();
|
||||
}
|
||||
}
|
||||
|
||||
resetContextMenuType();
|
||||
|
||||
@ -26,6 +26,7 @@ XTRXMIMOSettings::XTRXMIMOSettings()
|
||||
void XTRXMIMOSettings::resetToDefaults()
|
||||
{
|
||||
// common
|
||||
m_title = "XTRXMIMO";
|
||||
m_extClock = false;
|
||||
m_extClockFreq = 0; // Auto
|
||||
m_useReverseAPI = false;
|
||||
@ -88,6 +89,7 @@ QByteArray XTRXMIMOSettings::serialize() const
|
||||
s.writeString(6, m_reverseAPIAddress);
|
||||
s.writeU32(7, m_reverseAPIPort);
|
||||
s.writeU32(8, m_reverseAPIDeviceIndex);
|
||||
s.writeString(9, m_title);
|
||||
// Rx
|
||||
s.writeU32(20, m_log2HardDecim);
|
||||
s.writeU32(21, m_log2SoftDecim);
|
||||
@ -161,6 +163,7 @@ bool XTRXMIMOSettings::deserialize(const QByteArray& data)
|
||||
}
|
||||
d.readU32(8, &uintval, 0);
|
||||
m_reverseAPIDeviceIndex = uintval > 99 ? 99 : uintval;
|
||||
d.readString(9, &m_title, "XTRXMIMO");
|
||||
// Rx
|
||||
d.readU32(20, &m_log2HardDecim, 1);
|
||||
d.readU32(21, &m_log2SoftDecim, 0);
|
||||
@ -219,6 +222,9 @@ bool XTRXMIMOSettings::deserialize(const QByteArray& data)
|
||||
|
||||
void XTRXMIMOSettings::applySettings(const QStringList& settingsKeys, const XTRXMIMOSettings& settings)
|
||||
{
|
||||
if (settingsKeys.contains("title")) {
|
||||
m_title = settings.m_title;
|
||||
}
|
||||
if (settingsKeys.contains("extClock")) {
|
||||
m_extClock = settings.m_extClock;
|
||||
}
|
||||
@ -354,6 +360,9 @@ QString XTRXMIMOSettings::getDebugString(const QStringList& settingsKeys, bool f
|
||||
{
|
||||
std::ostringstream ostr;
|
||||
|
||||
if (settingsKeys.contains("title") || force) {
|
||||
ostr << " m_title: " << m_title.toStdString();
|
||||
}
|
||||
if (settingsKeys.contains("extClock") || force) {
|
||||
ostr << " m_extClock: " << m_extClock;
|
||||
}
|
||||
|
||||
@ -42,6 +42,7 @@ struct XTRXMIMOSettings
|
||||
} TxAntenna;
|
||||
|
||||
// common
|
||||
QString m_title;
|
||||
bool m_extClock; //!< True if external clock source
|
||||
uint32_t m_extClockFreq; //!< Frequency (Hz) of external clock source
|
||||
uint8_t m_gpioDir; //!< GPIO pin direction LSB first; 0 input, 1 output
|
||||
|
||||
@ -375,6 +375,9 @@ void AaroniaRTSAOutput::webapiUpdateDeviceSettings(
|
||||
const QStringList& deviceSettingsKeys,
|
||||
SWGSDRangel::SWGDeviceSettings& response)
|
||||
{
|
||||
if (deviceSettingsKeys.contains("title")) {
|
||||
settings.m_title = *response.getAaroniaRtsaOutputSettings()->getTitle();
|
||||
}
|
||||
if (deviceSettingsKeys.contains("centerFrequency")) {
|
||||
settings.m_centerFrequency = response.getAaroniaRtsaOutputSettings()->getCenterFrequency();
|
||||
}
|
||||
@ -400,6 +403,12 @@ void AaroniaRTSAOutput::webapiUpdateDeviceSettings(
|
||||
|
||||
void AaroniaRTSAOutput::webapiFormatDeviceSettings(SWGSDRangel::SWGDeviceSettings& response, const AaroniaRTSAOutputSettings& settings)
|
||||
{
|
||||
if (response.getAaroniaRtsaOutputSettings()->getTitle()) {
|
||||
*response.getAaroniaRtsaOutputSettings()->getTitle() = settings.m_title;
|
||||
} else {
|
||||
response.getAaroniaRtsaOutputSettings()->setTitle(new QString(settings.m_title));
|
||||
}
|
||||
|
||||
response.getAaroniaRtsaOutputSettings()->setCenterFrequency(settings.m_centerFrequency);
|
||||
response.getAaroniaRtsaOutputSettings()->setSampleRate(settings.m_sampleRate);
|
||||
|
||||
|
||||
@ -35,6 +35,7 @@
|
||||
#include "gui/glspectrum.h"
|
||||
#include "gui/basicdevicesettingsdialog.h"
|
||||
#include "gui/dialogpositioner.h"
|
||||
#include "mainspectrum/mainspectrumgui.h"
|
||||
#include "dsp/dspcommands.h"
|
||||
#include "device/deviceapi.h"
|
||||
#include "device/deviceuiset.h"
|
||||
@ -259,6 +260,8 @@ void AaroniaRTSAOutputGui::displaySettings()
|
||||
{
|
||||
blockApplySettings(true);
|
||||
|
||||
setTitle(m_settings.m_title);
|
||||
getDeviceUISet()->m_mainSpectrumGUI->setTitle(m_settings.m_title);
|
||||
ui->centerFrequency->setValue(m_settings.m_centerFrequency / 1000);
|
||||
ui->sampleRate->setValue(m_settings.m_sampleRate);
|
||||
ui->deviceRateText->setText(tr("%1k").arg(m_streamSampleRate / 1000.0));
|
||||
@ -369,21 +372,30 @@ void AaroniaRTSAOutputGui::openDeviceSettingsDialog(const QPoint& p)
|
||||
dialog.setReverseAPIAddress(m_settings.m_reverseAPIAddress);
|
||||
dialog.setReverseAPIPort(m_settings.m_reverseAPIPort);
|
||||
dialog.setReverseAPIDeviceIndex(m_settings.m_reverseAPIDeviceIndex);
|
||||
dialog.setTitle(m_settings.m_title);
|
||||
dialog.setDefaultTitle(getDefaultTitle());
|
||||
|
||||
dialog.move(p);
|
||||
new DialogPositioner(&dialog, false);
|
||||
dialog.exec();
|
||||
|
||||
m_settings.m_useReverseAPI = dialog.useReverseAPI();
|
||||
m_settings.m_reverseAPIAddress = dialog.getReverseAPIAddress();
|
||||
m_settings.m_reverseAPIPort = dialog.getReverseAPIPort();
|
||||
m_settings.m_reverseAPIDeviceIndex = dialog.getReverseAPIDeviceIndex();
|
||||
m_settingsKeys.append("useReverseAPI");
|
||||
m_settingsKeys.append("reverseAPIAddress");
|
||||
m_settingsKeys.append("reverseAPIPort");
|
||||
m_settingsKeys.append("reverseAPIDeviceIndex");
|
||||
if (dialog.result() == QDialog::Accepted)
|
||||
{
|
||||
m_settings.m_title = dialog.getTitle();
|
||||
setTitle(m_settings.m_title);
|
||||
getDeviceUISet()->m_mainSpectrumGUI->setTitle(m_settings.m_title);
|
||||
m_settings.m_useReverseAPI = dialog.useReverseAPI();
|
||||
m_settings.m_reverseAPIAddress = dialog.getReverseAPIAddress();
|
||||
m_settings.m_reverseAPIPort = dialog.getReverseAPIPort();
|
||||
m_settings.m_reverseAPIDeviceIndex = dialog.getReverseAPIDeviceIndex();
|
||||
m_settingsKeys.append("title");
|
||||
m_settingsKeys.append("useReverseAPI");
|
||||
m_settingsKeys.append("reverseAPIAddress");
|
||||
m_settingsKeys.append("reverseAPIPort");
|
||||
m_settingsKeys.append("reverseAPIDeviceIndex");
|
||||
|
||||
sendSettings();
|
||||
sendSettings();
|
||||
}
|
||||
}
|
||||
|
||||
resetContextMenuType();
|
||||
|
||||
@ -27,6 +27,7 @@ AaroniaRTSAOutputSettings::AaroniaRTSAOutputSettings()
|
||||
|
||||
void AaroniaRTSAOutputSettings::resetToDefaults()
|
||||
{
|
||||
m_title = "AaroniaRTSAOutput";
|
||||
m_centerFrequency = 433200000;
|
||||
m_sampleRate = 100000;
|
||||
m_serverAddress = "127.0.0.1:5550";
|
||||
@ -43,6 +44,7 @@ QByteArray AaroniaRTSAOutputSettings::serialize() const
|
||||
s.writeU64(1, m_centerFrequency);
|
||||
s.writeString(2, m_serverAddress);
|
||||
s.writeS32(3, m_sampleRate);
|
||||
s.writeString(4, m_title);
|
||||
s.writeString(20, m_reverseAPIAddress);
|
||||
s.writeU32(21, m_reverseAPIPort);
|
||||
s.writeU32(22, m_reverseAPIDeviceIndex);
|
||||
@ -67,6 +69,7 @@ bool AaroniaRTSAOutputSettings::deserialize(const QByteArray& data)
|
||||
d.readU64(1, &m_centerFrequency, 433200000);
|
||||
d.readString(2, &m_serverAddress, "127.0.0.1:5550");
|
||||
d.readS32(3, &m_sampleRate, 100000);
|
||||
d.readString(4, &m_title, "AaroniaRTSAOutput");
|
||||
d.readString(20, &m_reverseAPIAddress, "127.0.0.1");
|
||||
d.readU32(21, &uintval, 0);
|
||||
|
||||
@ -90,6 +93,9 @@ bool AaroniaRTSAOutputSettings::deserialize(const QByteArray& data)
|
||||
|
||||
void AaroniaRTSAOutputSettings::applySettings(const QStringList& settingsKeys, const AaroniaRTSAOutputSettings& settings)
|
||||
{
|
||||
if (settingsKeys.contains("title")) {
|
||||
m_title = settings.m_title;
|
||||
}
|
||||
if (settingsKeys.contains("centerFrequency")) {
|
||||
m_centerFrequency = settings.m_centerFrequency;
|
||||
}
|
||||
@ -117,6 +123,9 @@ QString AaroniaRTSAOutputSettings::getDebugString(const QStringList& settingsKey
|
||||
{
|
||||
std::ostringstream ostr;
|
||||
|
||||
if (settingsKeys.contains("title") || force) {
|
||||
ostr << " m_title: " << m_title.toStdString();
|
||||
}
|
||||
if (settingsKeys.contains("centerFrequency") || force) {
|
||||
ostr << " m_centerFrequency: " << m_centerFrequency;
|
||||
}
|
||||
|
||||
@ -34,6 +34,7 @@ struct AaroniaRTSAOutputSettings
|
||||
ConnectionDisconnected // 4 - magenta
|
||||
};
|
||||
|
||||
QString m_title;
|
||||
quint64 m_centerFrequency;
|
||||
int m_sampleRate;
|
||||
QString m_serverAddress;
|
||||
|
||||
@ -332,6 +332,9 @@ void AudioOutput::webapiUpdateDeviceSettings(
|
||||
const QStringList& deviceSettingsKeys,
|
||||
SWGSDRangel::SWGDeviceSettings& response)
|
||||
{
|
||||
if (deviceSettingsKeys.contains("title")) {
|
||||
settings.m_title = *response.getAudioOutputSettings()->getTitle();
|
||||
}
|
||||
if (deviceSettingsKeys.contains("deviceName")) {
|
||||
settings.m_deviceName = *response.getAudioOutputSettings()->getDeviceName();
|
||||
}
|
||||
@ -357,6 +360,12 @@ void AudioOutput::webapiUpdateDeviceSettings(
|
||||
|
||||
void AudioOutput::webapiFormatDeviceSettings(SWGSDRangel::SWGDeviceSettings& response, const AudioOutputSettings& settings)
|
||||
{
|
||||
if (response.getAudioOutputSettings()->getTitle()) {
|
||||
*response.getAudioOutputSettings()->getTitle() = settings.m_title;
|
||||
} else {
|
||||
response.getAudioOutputSettings()->setTitle(new QString(settings.m_title));
|
||||
}
|
||||
|
||||
response.getAudioOutputSettings()->setDeviceName(new QString(settings.m_deviceName));
|
||||
response.getAudioOutputSettings()->setVolume(settings.m_volume);
|
||||
response.getAudioOutputSettings()->setIqMapping((int) settings.m_iqMapping);
|
||||
@ -463,4 +472,3 @@ void AudioOutput::networkManagerFinished(QNetworkReply *reply)
|
||||
|
||||
reply->deleteLater();
|
||||
}
|
||||
|
||||
|
||||
@ -25,6 +25,7 @@
|
||||
#include "gui/audioselectdialog.h"
|
||||
#include "gui/dialpopup.h"
|
||||
#include "gui/dialogpositioner.h"
|
||||
#include "mainspectrum/mainspectrumgui.h"
|
||||
#include "dsp/dspengine.h"
|
||||
#include "dsp/dspcommands.h"
|
||||
#include "audiooutputgui.h"
|
||||
@ -175,6 +176,8 @@ void AudioOutputGui::updateSampleRateAndFrequency()
|
||||
|
||||
void AudioOutputGui::displaySettings()
|
||||
{
|
||||
setTitle(m_settings.m_title);
|
||||
getDeviceUISet()->m_mainSpectrumGUI->setTitle(m_settings.m_title);
|
||||
ui->deviceLabel->setText(m_settings.m_deviceName);
|
||||
ui->volume->setValue((int)(m_settings.m_volume*10.0f));
|
||||
ui->volumeText->setText(QString("%1").arg(m_settings.m_volume, 3, 'f', 1));
|
||||
@ -249,21 +252,30 @@ void AudioOutputGui::openDeviceSettingsDialog(const QPoint& p)
|
||||
dialog.setReverseAPIAddress(m_settings.m_reverseAPIAddress);
|
||||
dialog.setReverseAPIPort(m_settings.m_reverseAPIPort);
|
||||
dialog.setReverseAPIDeviceIndex(m_settings.m_reverseAPIDeviceIndex);
|
||||
dialog.setTitle(m_settings.m_title);
|
||||
dialog.setDefaultTitle(getDefaultTitle());
|
||||
|
||||
dialog.move(p);
|
||||
new DialogPositioner(&dialog, false);
|
||||
dialog.exec();
|
||||
|
||||
m_settings.m_useReverseAPI = dialog.useReverseAPI();
|
||||
m_settings.m_reverseAPIAddress = dialog.getReverseAPIAddress();
|
||||
m_settings.m_reverseAPIPort = dialog.getReverseAPIPort();
|
||||
m_settings.m_reverseAPIDeviceIndex = dialog.getReverseAPIDeviceIndex();
|
||||
m_settingsKeys.append("useReverseAPI");
|
||||
m_settingsKeys.append("reverseAPIAddress");
|
||||
m_settingsKeys.append("reverseAPIPort");
|
||||
m_settingsKeys.append("reverseAPIDeviceIndex");
|
||||
if (dialog.result() == QDialog::Rejected)
|
||||
{
|
||||
m_settings.m_title = dialog.getTitle();
|
||||
setTitle(m_settings.m_title);
|
||||
getDeviceUISet()->m_mainSpectrumGUI->setTitle(m_settings.m_title);
|
||||
m_settings.m_useReverseAPI = dialog.useReverseAPI();
|
||||
m_settings.m_reverseAPIAddress = dialog.getReverseAPIAddress();
|
||||
m_settings.m_reverseAPIPort = dialog.getReverseAPIPort();
|
||||
m_settings.m_reverseAPIDeviceIndex = dialog.getReverseAPIDeviceIndex();
|
||||
m_settingsKeys.append("title");
|
||||
m_settingsKeys.append("useReverseAPI");
|
||||
m_settingsKeys.append("reverseAPIAddress");
|
||||
m_settingsKeys.append("reverseAPIPort");
|
||||
m_settingsKeys.append("reverseAPIDeviceIndex");
|
||||
|
||||
sendSettings();
|
||||
sendSettings();
|
||||
}
|
||||
}
|
||||
|
||||
resetContextMenuType();
|
||||
|
||||
@ -30,6 +30,7 @@ AudioOutputSettings::AudioOutputSettings()
|
||||
|
||||
void AudioOutputSettings::resetToDefaults()
|
||||
{
|
||||
m_title = "AudioOutput";
|
||||
m_deviceName = "";
|
||||
m_volume = 1.0f;
|
||||
m_iqMapping = LR;
|
||||
@ -45,6 +46,7 @@ QByteArray AudioOutputSettings::serialize() const
|
||||
|
||||
s.writeString(1, m_deviceName);
|
||||
s.writeFloat(3, m_volume);
|
||||
s.writeString(4, m_title);
|
||||
s.writeS32(5, (int)m_iqMapping);
|
||||
|
||||
s.writeBool(24, m_useReverseAPI);
|
||||
@ -71,6 +73,7 @@ bool AudioOutputSettings::deserialize(const QByteArray& data)
|
||||
|
||||
d.readString(1, &m_deviceName, "");
|
||||
d.readFloat(3, &m_volume, 1.0f);
|
||||
d.readString(4, &m_title, "AudioOutput");
|
||||
d.readS32(5, (int *)&m_iqMapping, IQMapping::LR);
|
||||
|
||||
d.readBool(24, &m_useReverseAPI, false);
|
||||
|
||||
@ -26,6 +26,7 @@
|
||||
|
||||
struct AudioOutputSettings {
|
||||
|
||||
QString m_title;
|
||||
QString m_deviceName; // Including realm, as from getFullDeviceName below
|
||||
float m_volume;
|
||||
enum IQMapping {
|
||||
|
||||
@ -511,6 +511,12 @@ int Bladerf1Output::webapiSettingsGet(
|
||||
|
||||
void Bladerf1Output::webapiFormatDeviceSettings(SWGSDRangel::SWGDeviceSettings& response, const BladeRF1OutputSettings& settings)
|
||||
{
|
||||
if (response.getBladeRf1OutputSettings()->getTitle()) {
|
||||
*response.getBladeRf1OutputSettings()->getTitle() = settings.m_title;
|
||||
} else {
|
||||
response.getBladeRf1OutputSettings()->setTitle(new QString(settings.m_title));
|
||||
}
|
||||
|
||||
response.getBladeRf1OutputSettings()->setCenterFrequency(settings.m_centerFrequency);
|
||||
response.getBladeRf1OutputSettings()->setDevSampleRate(settings.m_devSampleRate);
|
||||
response.getBladeRf1OutputSettings()->setVga1(settings.m_vga1);
|
||||
@ -561,6 +567,9 @@ void Bladerf1Output::webapiUpdateDeviceSettings(
|
||||
const QStringList& deviceSettingsKeys,
|
||||
SWGSDRangel::SWGDeviceSettings& response)
|
||||
{
|
||||
if (deviceSettingsKeys.contains("title")) {
|
||||
settings.m_title = *response.getBladeRf1OutputSettings()->getTitle();
|
||||
}
|
||||
if (deviceSettingsKeys.contains("centerFrequency")) {
|
||||
settings.m_centerFrequency = response.getBladeRf1OutputSettings()->getCenterFrequency();
|
||||
}
|
||||
@ -641,6 +650,9 @@ void Bladerf1Output::webapiReverseSendSettings(const QList<QString>& deviceSetti
|
||||
|
||||
// transfer data that has been modified. When force is on transfer all data except reverse API data
|
||||
|
||||
if (deviceSettingsKeys.contains("title") || force) {
|
||||
swgBladeRF1OutputSettings->setTitle(new QString(settings.m_title));
|
||||
}
|
||||
if (deviceSettingsKeys.contains("centerFrequency") || force) {
|
||||
swgBladeRF1OutputSettings->setCenterFrequency(settings.m_centerFrequency);
|
||||
}
|
||||
|
||||
@ -26,6 +26,7 @@
|
||||
#include "gui/glspectrum.h"
|
||||
#include "gui/basicdevicesettingsdialog.h"
|
||||
#include "gui/dialogpositioner.h"
|
||||
#include "mainspectrum/mainspectrumgui.h"
|
||||
#include "dsp/dspcommands.h"
|
||||
#include "device/deviceapi.h"
|
||||
#include "device/deviceuiset.h"
|
||||
@ -217,6 +218,8 @@ void Bladerf1OutputGui::displaySampleRate()
|
||||
|
||||
void Bladerf1OutputGui::displaySettings()
|
||||
{
|
||||
setTitle(m_settings.m_title);
|
||||
getDeviceUISet()->m_mainSpectrumGUI->setTitle(m_settings.m_title);
|
||||
ui->centerFrequency->setValue(m_settings.m_centerFrequency / 1000);
|
||||
displaySampleRate();
|
||||
|
||||
@ -478,21 +481,30 @@ void Bladerf1OutputGui::openDeviceSettingsDialog(const QPoint& p)
|
||||
dialog.setReverseAPIAddress(m_settings.m_reverseAPIAddress);
|
||||
dialog.setReverseAPIPort(m_settings.m_reverseAPIPort);
|
||||
dialog.setReverseAPIDeviceIndex(m_settings.m_reverseAPIDeviceIndex);
|
||||
dialog.setTitle(m_settings.m_title);
|
||||
dialog.setDefaultTitle(getDefaultTitle());
|
||||
|
||||
dialog.move(p);
|
||||
new DialogPositioner(&dialog, false);
|
||||
dialog.exec();
|
||||
|
||||
m_settings.m_useReverseAPI = dialog.useReverseAPI();
|
||||
m_settings.m_reverseAPIAddress = dialog.getReverseAPIAddress();
|
||||
m_settings.m_reverseAPIPort = dialog.getReverseAPIPort();
|
||||
m_settings.m_reverseAPIDeviceIndex = dialog.getReverseAPIDeviceIndex();
|
||||
m_settingsKeys.append("useReverseAPI");
|
||||
m_settingsKeys.append("reverseAPIAddress");
|
||||
m_settingsKeys.append("reverseAPIPort");
|
||||
m_settingsKeys.append("reverseAPIDeviceIndex");
|
||||
if (dialog.result() == QDialog::Accepted)
|
||||
{
|
||||
m_settings.m_title = dialog.getTitle();
|
||||
setTitle(m_settings.m_title);
|
||||
getDeviceUISet()->m_mainSpectrumGUI->setTitle(m_settings.m_title);
|
||||
m_settings.m_useReverseAPI = dialog.useReverseAPI();
|
||||
m_settings.m_reverseAPIAddress = dialog.getReverseAPIAddress();
|
||||
m_settings.m_reverseAPIPort = dialog.getReverseAPIPort();
|
||||
m_settings.m_reverseAPIDeviceIndex = dialog.getReverseAPIDeviceIndex();
|
||||
m_settingsKeys.append("title");
|
||||
m_settingsKeys.append("useReverseAPI");
|
||||
m_settingsKeys.append("reverseAPIAddress");
|
||||
m_settingsKeys.append("reverseAPIPort");
|
||||
m_settingsKeys.append("reverseAPIDeviceIndex");
|
||||
|
||||
sendSettings();
|
||||
sendSettings();
|
||||
}
|
||||
}
|
||||
|
||||
resetContextMenuType();
|
||||
|
||||
@ -28,6 +28,7 @@ BladeRF1OutputSettings::BladeRF1OutputSettings()
|
||||
|
||||
void BladeRF1OutputSettings::resetToDefaults()
|
||||
{
|
||||
m_title = "BladeRF1";
|
||||
m_centerFrequency = 435000*1000;
|
||||
m_devSampleRate = 3072000;
|
||||
m_vga1 = -20;
|
||||
@ -59,6 +60,7 @@ QByteArray BladeRF1OutputSettings::serialize() const
|
||||
s.writeString(10, m_reverseAPIAddress);
|
||||
s.writeU32(11, m_reverseAPIPort);
|
||||
s.writeU32(12, m_reverseAPIDeviceIndex);
|
||||
s.writeString(13, m_title);
|
||||
|
||||
return s.final();
|
||||
}
|
||||
@ -100,6 +102,7 @@ bool BladeRF1OutputSettings::deserialize(const QByteArray& data)
|
||||
|
||||
d.readU32(12, &uintval, 0);
|
||||
m_reverseAPIDeviceIndex = uintval > 99 ? 99 : uintval;
|
||||
d.readString(13, &m_title, "BladeRF1");
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
@ -26,7 +26,9 @@
|
||||
|
||||
#include <libbladeRF.h>
|
||||
|
||||
struct BladeRF1OutputSettings {
|
||||
struct BladeRF1OutputSettings
|
||||
{
|
||||
QString m_title;
|
||||
quint64 m_centerFrequency;
|
||||
qint32 m_devSampleRate;
|
||||
qint32 m_vga1;
|
||||
|
||||
@ -969,6 +969,9 @@ void BladeRF2Output::webapiUpdateDeviceSettings(
|
||||
const QStringList& deviceSettingsKeys,
|
||||
SWGSDRangel::SWGDeviceSettings& response)
|
||||
{
|
||||
if (deviceSettingsKeys.contains("title")) {
|
||||
settings.m_title = *response.getBladeRf2OutputSettings()->getTitle();
|
||||
}
|
||||
if (deviceSettingsKeys.contains("centerFrequency")) {
|
||||
settings.m_centerFrequency = response.getBladeRf2OutputSettings()->getCenterFrequency();
|
||||
}
|
||||
@ -1021,6 +1024,12 @@ int BladeRF2Output::webapiReportGet(SWGSDRangel::SWGDeviceReport& response, QStr
|
||||
|
||||
void BladeRF2Output::webapiFormatDeviceSettings(SWGSDRangel::SWGDeviceSettings& response, const BladeRF2OutputSettings& settings)
|
||||
{
|
||||
if (response.getBladeRf1OutputSettings()->getTitle()) {
|
||||
*response.getBladeRf1OutputSettings()->getTitle() = settings.m_title;
|
||||
} else {
|
||||
response.getBladeRf1OutputSettings()->setTitle(new QString(settings.m_title));
|
||||
}
|
||||
|
||||
response.getBladeRf2OutputSettings()->setCenterFrequency(settings.m_centerFrequency);
|
||||
response.getBladeRf2OutputSettings()->setLOppmTenths(settings.m_LOppmTenths);
|
||||
response.getBladeRf2OutputSettings()->setDevSampleRate(settings.m_devSampleRate);
|
||||
@ -1126,6 +1135,9 @@ void BladeRF2Output::webapiReverseSendSettings(const QList<QString>& deviceSetti
|
||||
|
||||
// transfer data that has been modified. When force is on transfer all data except reverse API data
|
||||
|
||||
if (deviceSettingsKeys.contains("title") || force) {
|
||||
swgBladeRF2OutputSettings->setTitle(new QString(settings.m_title));
|
||||
}
|
||||
if (deviceSettingsKeys.contains("centerFrequency") || force) {
|
||||
swgBladeRF2OutputSettings->setCenterFrequency(settings.m_centerFrequency);
|
||||
}
|
||||
|
||||
@ -27,6 +27,7 @@
|
||||
#include "gui/glspectrum.h"
|
||||
#include "gui/basicdevicesettingsdialog.h"
|
||||
#include "gui/dialogpositioner.h"
|
||||
#include "mainspectrum/mainspectrumgui.h"
|
||||
#include "dsp/dspcommands.h"
|
||||
#include "device/deviceapi.h"
|
||||
#include "device/deviceuiset.h"
|
||||
@ -287,6 +288,8 @@ void BladeRF2OutputGui::displaySettings()
|
||||
{
|
||||
blockApplySettings(true);
|
||||
|
||||
setTitle(m_settings.m_title);
|
||||
getDeviceUISet()->m_mainSpectrumGUI->setTitle(m_settings.m_title);
|
||||
ui->transverter->setDeltaFrequency(m_settings.m_transverterDeltaFrequency);
|
||||
ui->transverter->setDeltaFrequencyActive(m_settings.m_transverterMode);
|
||||
|
||||
@ -463,21 +466,30 @@ void BladeRF2OutputGui::openDeviceSettingsDialog(const QPoint& p)
|
||||
dialog.setReverseAPIAddress(m_settings.m_reverseAPIAddress);
|
||||
dialog.setReverseAPIPort(m_settings.m_reverseAPIPort);
|
||||
dialog.setReverseAPIDeviceIndex(m_settings.m_reverseAPIDeviceIndex);
|
||||
dialog.setTitle(m_settings.m_title);
|
||||
dialog.setDefaultTitle(getDefaultTitle());
|
||||
|
||||
dialog.move(p);
|
||||
new DialogPositioner(&dialog, false);
|
||||
dialog.exec();
|
||||
|
||||
m_settings.m_useReverseAPI = dialog.useReverseAPI();
|
||||
m_settings.m_reverseAPIAddress = dialog.getReverseAPIAddress();
|
||||
m_settings.m_reverseAPIPort = dialog.getReverseAPIPort();
|
||||
m_settings.m_reverseAPIDeviceIndex = dialog.getReverseAPIDeviceIndex();
|
||||
m_settingsKeys.append("useReverseAPI");
|
||||
m_settingsKeys.append("reverseAPIAddress");
|
||||
m_settingsKeys.append("reverseAPIPort");
|
||||
m_settingsKeys.append("reverseAPIDeviceIndex");
|
||||
if (dialog.result() == QDialog::Accepted)
|
||||
{
|
||||
m_settings.m_title = dialog.getTitle();
|
||||
setTitle(m_settings.m_title);
|
||||
getDeviceUISet()->m_mainSpectrumGUI->setTitle(m_settings.m_title);
|
||||
m_settings.m_useReverseAPI = dialog.useReverseAPI();
|
||||
m_settings.m_reverseAPIAddress = dialog.getReverseAPIAddress();
|
||||
m_settings.m_reverseAPIPort = dialog.getReverseAPIPort();
|
||||
m_settings.m_reverseAPIDeviceIndex = dialog.getReverseAPIDeviceIndex();
|
||||
m_settingsKeys.append("title");
|
||||
m_settingsKeys.append("useReverseAPI");
|
||||
m_settingsKeys.append("reverseAPIAddress");
|
||||
m_settingsKeys.append("reverseAPIPort");
|
||||
m_settingsKeys.append("reverseAPIDeviceIndex");
|
||||
|
||||
sendSettings();
|
||||
sendSettings();
|
||||
}
|
||||
}
|
||||
|
||||
resetContextMenuType();
|
||||
|
||||
@ -30,6 +30,7 @@ BladeRF2OutputSettings::BladeRF2OutputSettings()
|
||||
|
||||
void BladeRF2OutputSettings::resetToDefaults()
|
||||
{
|
||||
m_title = "BladeRF2";
|
||||
m_centerFrequency = 435000*1000;
|
||||
m_LOppmTenths = 0;
|
||||
m_devSampleRate = 3072000;
|
||||
@ -61,6 +62,7 @@ QByteArray BladeRF2OutputSettings::serialize() const
|
||||
s.writeString(10, m_reverseAPIAddress);
|
||||
s.writeU32(11, m_reverseAPIPort);
|
||||
s.writeU32(12, m_reverseAPIDeviceIndex);
|
||||
s.writeString(13, m_title);
|
||||
|
||||
return s.final();
|
||||
}
|
||||
@ -99,6 +101,7 @@ bool BladeRF2OutputSettings::deserialize(const QByteArray& data)
|
||||
|
||||
d.readU32(12, &uintval, 0);
|
||||
m_reverseAPIDeviceIndex = uintval > 99 ? 99 : uintval;
|
||||
d.readString(13, &m_title, "BladeRF2");
|
||||
|
||||
return true;
|
||||
}
|
||||
@ -111,6 +114,9 @@ bool BladeRF2OutputSettings::deserialize(const QByteArray& data)
|
||||
|
||||
void BladeRF2OutputSettings::applySettings(const QStringList& settingsKeys, const BladeRF2OutputSettings& settings)
|
||||
{
|
||||
if (settingsKeys.contains("title")) {
|
||||
m_title = settings.m_title;
|
||||
}
|
||||
if (settingsKeys.contains("centerFrequency")) {
|
||||
m_centerFrequency = settings.m_centerFrequency;
|
||||
}
|
||||
@ -156,6 +162,9 @@ QString BladeRF2OutputSettings::getDebugString(const QStringList& settingsKeys,
|
||||
{
|
||||
std::ostringstream ostr;
|
||||
|
||||
if (settingsKeys.contains("title") || force) {
|
||||
ostr << " m_title: " << m_title.toStdString();
|
||||
}
|
||||
if (settingsKeys.contains("centerFrequency") || force) {
|
||||
ostr << " m_centerFrequency: " << m_centerFrequency;
|
||||
}
|
||||
|
||||
@ -23,7 +23,9 @@
|
||||
#include <QtGlobal>
|
||||
#include <QString>
|
||||
|
||||
struct BladeRF2OutputSettings {
|
||||
struct BladeRF2OutputSettings
|
||||
{
|
||||
QString m_title;
|
||||
quint64 m_centerFrequency;
|
||||
int m_LOppmTenths;
|
||||
qint32 m_devSampleRate;
|
||||
|
||||
@ -411,6 +411,12 @@ int FileOutput::webapiRun(
|
||||
|
||||
void FileOutput::webapiFormatDeviceSettings(SWGSDRangel::SWGDeviceSettings& response, const FileOutputSettings& settings)
|
||||
{
|
||||
if (response.getFileOutputSettings()->getTitle()) {
|
||||
*response.getFileOutputSettings()->getTitle() = settings.m_title;
|
||||
} else {
|
||||
response.getFileOutputSettings()->setTitle(new QString(settings.m_title));
|
||||
}
|
||||
|
||||
response.getFileOutputSettings()->setFileName(new QString(settings.m_fileName));
|
||||
response.getFileOutputSettings()->setCenterFrequency(settings.m_centerFrequency);
|
||||
response.getFileOutputSettings()->setSampleRate(settings.m_sampleRate);
|
||||
@ -433,6 +439,9 @@ void FileOutput::webapiUpdateDeviceSettings(
|
||||
const QStringList& deviceSettingsKeys,
|
||||
SWGSDRangel::SWGDeviceSettings& response)
|
||||
{
|
||||
if (deviceSettingsKeys.contains("title")) {
|
||||
settings.m_title = *response.getFileOutputSettings()->getTitle();
|
||||
}
|
||||
if (deviceSettingsKeys.contains("fileName")) {
|
||||
settings.m_fileName = *response.getFileOutputSettings()->getFileName();
|
||||
}
|
||||
|
||||
@ -30,6 +30,7 @@
|
||||
#include "gui/glspectrum.h"
|
||||
#include "gui/basicdevicesettingsdialog.h"
|
||||
#include "gui/dialogpositioner.h"
|
||||
#include "mainspectrum/mainspectrumgui.h"
|
||||
#include "dsp/dspcommands.h"
|
||||
#include "dsp/spectrumvis.h"
|
||||
|
||||
@ -210,6 +211,8 @@ void FileOutputGui::updateSampleRateAndFrequency()
|
||||
|
||||
void FileOutputGui::displaySettings()
|
||||
{
|
||||
setTitle(m_settings.m_title);
|
||||
getDeviceUISet()->m_mainSpectrumGUI->setTitle(m_settings.m_title);
|
||||
ui->centerFrequency->setValue(m_settings.m_centerFrequency / 1000);
|
||||
ui->sampleRate->setValue(m_settings.m_sampleRate);
|
||||
ui->fileNameText->setText(m_settings.m_fileName);
|
||||
@ -362,21 +365,30 @@ void FileOutputGui::openDeviceSettingsDialog(const QPoint& p)
|
||||
dialog.setReverseAPIAddress(m_settings.m_reverseAPIAddress);
|
||||
dialog.setReverseAPIPort(m_settings.m_reverseAPIPort);
|
||||
dialog.setReverseAPIDeviceIndex(m_settings.m_reverseAPIDeviceIndex);
|
||||
dialog.setTitle(m_settings.m_title);
|
||||
dialog.setDefaultTitle(getDefaultTitle());
|
||||
|
||||
dialog.move(p);
|
||||
new DialogPositioner(&dialog, false);
|
||||
dialog.exec();
|
||||
|
||||
m_settings.m_useReverseAPI = dialog.useReverseAPI();
|
||||
m_settings.m_reverseAPIAddress = dialog.getReverseAPIAddress();
|
||||
m_settings.m_reverseAPIPort = dialog.getReverseAPIPort();
|
||||
m_settings.m_reverseAPIDeviceIndex = dialog.getReverseAPIDeviceIndex();
|
||||
m_settingsKeys.append("useReverseAPI");
|
||||
m_settingsKeys.append("reverseAPIAddress");
|
||||
m_settingsKeys.append("reverseAPIPort");
|
||||
m_settingsKeys.append("reverseAPIDeviceIndex");
|
||||
if (dialog.result() == QDialog::Accepted)
|
||||
{
|
||||
m_settings.m_title = dialog.getTitle();
|
||||
setTitle(m_settings.m_title);
|
||||
getDeviceUISet()->m_mainSpectrumGUI->setTitle(m_settings.m_title);
|
||||
m_settings.m_useReverseAPI = dialog.useReverseAPI();
|
||||
m_settings.m_reverseAPIAddress = dialog.getReverseAPIAddress();
|
||||
m_settings.m_reverseAPIPort = dialog.getReverseAPIPort();
|
||||
m_settings.m_reverseAPIDeviceIndex = dialog.getReverseAPIDeviceIndex();
|
||||
m_settingsKeys.append("title");
|
||||
m_settingsKeys.append("useReverseAPI");
|
||||
m_settingsKeys.append("reverseAPIAddress");
|
||||
m_settingsKeys.append("reverseAPIPort");
|
||||
m_settingsKeys.append("reverseAPIDeviceIndex");
|
||||
|
||||
sendSettings();
|
||||
sendSettings();
|
||||
}
|
||||
}
|
||||
|
||||
resetContextMenuType();
|
||||
|
||||
@ -28,6 +28,7 @@ FileOutputSettings::FileOutputSettings()
|
||||
|
||||
void FileOutputSettings::resetToDefaults()
|
||||
{
|
||||
m_title = "FileOutput";
|
||||
m_centerFrequency = 435000*1000;
|
||||
m_sampleRate = 48000;
|
||||
m_log2Interp = 0;
|
||||
@ -50,6 +51,7 @@ QByteArray FileOutputSettings::serialize() const
|
||||
s.writeString(5, m_reverseAPIAddress);
|
||||
s.writeU32(6, m_reverseAPIPort);
|
||||
s.writeU32(7, m_reverseAPIDeviceIndex);
|
||||
s.writeString(9, m_title);
|
||||
|
||||
if (m_spectrumGUI) {
|
||||
s.writeBlob(8, m_spectrumGUI->serialize());
|
||||
@ -87,6 +89,7 @@ bool FileOutputSettings::deserialize(const QByteArray& data)
|
||||
|
||||
d.readU32(7, &uintval, 0);
|
||||
m_reverseAPIDeviceIndex = uintval > 99 ? 99 : uintval;
|
||||
d.readString(9, &m_title, "FileOutput");
|
||||
|
||||
if (m_spectrumGUI)
|
||||
{
|
||||
@ -106,6 +109,9 @@ bool FileOutputSettings::deserialize(const QByteArray& data)
|
||||
|
||||
void FileOutputSettings::applySettings(const QStringList& settingsKeys, const FileOutputSettings& settings)
|
||||
{
|
||||
if (settingsKeys.contains("title")) {
|
||||
m_title = settings.m_title;
|
||||
}
|
||||
if (settingsKeys.contains("centerFrequency")) {
|
||||
m_centerFrequency = settings.m_centerFrequency;
|
||||
}
|
||||
@ -136,6 +142,9 @@ QString FileOutputSettings::getDebugString(const QStringList& settingsKeys, bool
|
||||
{
|
||||
std::ostringstream ostr;
|
||||
|
||||
if (settingsKeys.contains("title") || force) {
|
||||
ostr << " m_title: " << m_title.toStdString();
|
||||
}
|
||||
if (settingsKeys.contains("centerFrequency") || force) {
|
||||
ostr << " m_centerFrequency: " << m_centerFrequency;
|
||||
}
|
||||
|
||||
@ -22,7 +22,9 @@
|
||||
|
||||
class Serializable;
|
||||
|
||||
struct FileOutputSettings {
|
||||
struct FileOutputSettings
|
||||
{
|
||||
QString m_title;
|
||||
quint64 m_centerFrequency;
|
||||
quint64 m_sampleRate;
|
||||
quint32 m_log2Interp;
|
||||
|
||||
@ -557,6 +557,9 @@ void HackRFOutput::webapiUpdateDeviceSettings(
|
||||
const QStringList& deviceSettingsKeys,
|
||||
SWGSDRangel::SWGDeviceSettings& response)
|
||||
{
|
||||
if (deviceSettingsKeys.contains("title")) {
|
||||
settings.m_title = *response.getHackRfOutputSettings()->getTitle();
|
||||
}
|
||||
if (deviceSettingsKeys.contains("centerFrequency")) {
|
||||
settings.m_centerFrequency = response.getHackRfOutputSettings()->getCenterFrequency();
|
||||
}
|
||||
@ -609,6 +612,12 @@ void HackRFOutput::webapiUpdateDeviceSettings(
|
||||
|
||||
void HackRFOutput::webapiFormatDeviceSettings(SWGSDRangel::SWGDeviceSettings& response, const HackRFOutputSettings& settings)
|
||||
{
|
||||
if (response.getHackRfOutputSettings()->getTitle()) {
|
||||
*response.getHackRfOutputSettings()->getTitle() = settings.m_title;
|
||||
} else {
|
||||
response.getHackRfOutputSettings()->setTitle(new QString(settings.m_title));
|
||||
}
|
||||
|
||||
response.getHackRfOutputSettings()->setCenterFrequency(settings.m_centerFrequency);
|
||||
response.getHackRfOutputSettings()->setLOppmTenths(settings.m_LOppmTenths);
|
||||
response.getHackRfOutputSettings()->setBandwidth(settings.m_bandwidth);
|
||||
@ -672,6 +681,9 @@ void HackRFOutput::webapiReverseSendSettings(const QList<QString>& deviceSetting
|
||||
|
||||
// transfer data that has been modified. When force is on transfer all data except reverse API data
|
||||
|
||||
if (deviceSettingsKeys.contains("title") || force) {
|
||||
swgHackRFOutputSettings->setTitle(new QString(settings.m_title));
|
||||
}
|
||||
if (deviceSettingsKeys.contains("centerFrequency") || force) {
|
||||
swgHackRFOutputSettings->setCenterFrequency(settings.m_centerFrequency);
|
||||
}
|
||||
|
||||
@ -25,6 +25,7 @@
|
||||
#include "gui/glspectrum.h"
|
||||
#include "gui/basicdevicesettingsdialog.h"
|
||||
#include "gui/dialogpositioner.h"
|
||||
#include "mainspectrum/mainspectrumgui.h"
|
||||
#include "dsp/dspcommands.h"
|
||||
#include "device/deviceapi.h"
|
||||
#include "device/deviceuiset.h"
|
||||
@ -260,6 +261,8 @@ void HackRFOutputGui::displaySettings()
|
||||
|
||||
updateFrequencyLimits();
|
||||
|
||||
setTitle(m_settings.m_title);
|
||||
getDeviceUISet()->m_mainSpectrumGUI->setTitle(m_settings.m_title);
|
||||
ui->centerFrequency->setValue(m_settings.m_centerFrequency / 1000);
|
||||
ui->LOppm->setValue(m_settings.m_LOppmTenths);
|
||||
ui->LOppmText->setText(QString("%1").arg(QString::number(m_settings.m_LOppmTenths/10.0, 'f', 1)));
|
||||
@ -480,21 +483,30 @@ void HackRFOutputGui::openDeviceSettingsDialog(const QPoint& p)
|
||||
dialog.setReverseAPIAddress(m_settings.m_reverseAPIAddress);
|
||||
dialog.setReverseAPIPort(m_settings.m_reverseAPIPort);
|
||||
dialog.setReverseAPIDeviceIndex(m_settings.m_reverseAPIDeviceIndex);
|
||||
dialog.setTitle(m_settings.m_title);
|
||||
dialog.setDefaultTitle(getDefaultTitle());
|
||||
|
||||
dialog.move(p);
|
||||
new DialogPositioner(&dialog, false);
|
||||
dialog.exec();
|
||||
|
||||
m_settings.m_useReverseAPI = dialog.useReverseAPI();
|
||||
m_settings.m_reverseAPIAddress = dialog.getReverseAPIAddress();
|
||||
m_settings.m_reverseAPIPort = dialog.getReverseAPIPort();
|
||||
m_settings.m_reverseAPIDeviceIndex = dialog.getReverseAPIDeviceIndex();
|
||||
m_settingsKeys.append("useReverseAPI");
|
||||
m_settingsKeys.append("reverseAPIAddress");
|
||||
m_settingsKeys.append("reverseAPIPort");
|
||||
m_settingsKeys.append("reverseAPIDeviceIndex");
|
||||
if (dialog.result() == QDialog::Accepted)
|
||||
{
|
||||
m_settings.m_title = dialog.getTitle();
|
||||
setTitle(m_settings.m_title);
|
||||
getDeviceUISet()->m_mainSpectrumGUI->setTitle(m_settings.m_title);
|
||||
m_settings.m_useReverseAPI = dialog.useReverseAPI();
|
||||
m_settings.m_reverseAPIAddress = dialog.getReverseAPIAddress();
|
||||
m_settings.m_reverseAPIPort = dialog.getReverseAPIPort();
|
||||
m_settings.m_reverseAPIDeviceIndex = dialog.getReverseAPIDeviceIndex();
|
||||
m_settingsKeys.append("useReverseAPI");
|
||||
m_settingsKeys.append("reverseAPIAddress");
|
||||
m_settingsKeys.append("reverseAPIPort");
|
||||
m_settingsKeys.append("reverseAPIDeviceIndex");
|
||||
m_settingsKeys.append("title");
|
||||
|
||||
sendSettings();
|
||||
sendSettings();
|
||||
}
|
||||
}
|
||||
|
||||
resetContextMenuType();
|
||||
|
||||
@ -28,6 +28,7 @@ HackRFOutputSettings::HackRFOutputSettings()
|
||||
|
||||
void HackRFOutputSettings::resetToDefaults()
|
||||
{
|
||||
m_title = "HackRF";
|
||||
m_centerFrequency = 435000 * 1000;
|
||||
m_LOppmTenths = 0;
|
||||
m_biasT = false;
|
||||
@ -63,6 +64,7 @@ QByteArray HackRFOutputSettings::serialize() const
|
||||
s.writeU32(12, m_reverseAPIDeviceIndex);
|
||||
s.writeBool(13, m_transverterMode);
|
||||
s.writeS64(14, m_transverterDeltaFrequency);
|
||||
s.writeString(15, m_title);
|
||||
|
||||
return s.final();
|
||||
}
|
||||
@ -105,6 +107,7 @@ bool HackRFOutputSettings::deserialize(const QByteArray& data)
|
||||
m_reverseAPIDeviceIndex = uintval > 99 ? 99 : uintval;
|
||||
d.readBool(13, &m_transverterMode, false);
|
||||
d.readS64(14, &m_transverterDeltaFrequency, 0);
|
||||
d.readString(15, &m_title, "HackRF");
|
||||
|
||||
return true;
|
||||
}
|
||||
@ -117,6 +120,9 @@ bool HackRFOutputSettings::deserialize(const QByteArray& data)
|
||||
|
||||
void HackRFOutputSettings::applySettings(const QStringList& settingsKeys, const HackRFOutputSettings& settings)
|
||||
{
|
||||
if (settingsKeys.contains("title")) {
|
||||
m_title = settings.m_title;
|
||||
}
|
||||
if (settingsKeys.contains("centerFrequency")) {
|
||||
m_centerFrequency = settings.m_centerFrequency;
|
||||
}
|
||||
@ -168,6 +174,9 @@ QString HackRFOutputSettings::getDebugString(const QStringList& settingsKeys, bo
|
||||
{
|
||||
std::ostringstream ostr;
|
||||
|
||||
if (settingsKeys.contains("title") || force) {
|
||||
ostr << " m_title: " << m_title.toStdString();
|
||||
}
|
||||
if (settingsKeys.contains("centerFrequency") || force) {
|
||||
ostr << " m_centerFrequency: " << m_centerFrequency;
|
||||
}
|
||||
|
||||
@ -31,6 +31,7 @@ struct HackRFOutputSettings {
|
||||
FC_POS_CENTER
|
||||
} fcPos_t;
|
||||
|
||||
QString m_title;
|
||||
quint64 m_centerFrequency;
|
||||
qint32 m_LOppmTenths;
|
||||
quint32 m_bandwidth;
|
||||
|
||||
@ -1253,6 +1253,9 @@ void LimeSDROutput::webapiUpdateDeviceSettings(
|
||||
const QStringList& deviceSettingsKeys,
|
||||
SWGSDRangel::SWGDeviceSettings& response)
|
||||
{
|
||||
if (deviceSettingsKeys.contains("title")) {
|
||||
settings.m_title = *response.getLimeSdrOutputSettings()->getTitle();
|
||||
}
|
||||
if (deviceSettingsKeys.contains("antennaPath")) {
|
||||
settings.m_antennaPath = (LimeSDROutputSettings::PathRFE) response.getLimeSdrOutputSettings()->getAntennaPath();
|
||||
}
|
||||
@ -1330,6 +1333,12 @@ int LimeSDROutput::webapiReportGet(
|
||||
}
|
||||
void LimeSDROutput::webapiFormatDeviceSettings(SWGSDRangel::SWGDeviceSettings& response, const LimeSDROutputSettings& settings)
|
||||
{
|
||||
if (response.getLimeSdrOutputSettings()->getTitle()) {
|
||||
*response.getLimeSdrOutputSettings()->getTitle() = settings.m_title;
|
||||
} else {
|
||||
response.getLimeSdrOutputSettings()->setTitle(new QString(settings.m_title));
|
||||
}
|
||||
|
||||
response.getLimeSdrOutputSettings()->setAntennaPath((int) settings.m_antennaPath);
|
||||
response.getLimeSdrOutputSettings()->setCenterFrequency(settings.m_centerFrequency);
|
||||
response.getLimeSdrOutputSettings()->setDevSampleRate(settings.m_devSampleRate);
|
||||
@ -1438,6 +1447,9 @@ void LimeSDROutput::webapiReverseSendSettings(const QList<QString>& deviceSettin
|
||||
|
||||
// transfer data that has been modified. When force is on transfer all data except reverse API data
|
||||
|
||||
if (deviceSettingsKeys.contains("title") || force) {
|
||||
swgLimeSdrOutputSettings->setTitle(new QString(settings.m_title));
|
||||
}
|
||||
if (deviceSettingsKeys.contains("antennaPath") || force) {
|
||||
swgLimeSdrOutputSettings->setAntennaPath((int) settings.m_antennaPath);
|
||||
}
|
||||
|
||||
@ -24,6 +24,7 @@
|
||||
#include "gui/glspectrum.h"
|
||||
#include "gui/basicdevicesettingsdialog.h"
|
||||
#include "gui/dialogpositioner.h"
|
||||
#include "mainspectrum/mainspectrumgui.h"
|
||||
#include "dsp/dspcommands.h"
|
||||
#include "device/deviceapi.h"
|
||||
#include "device/deviceuiset.h"
|
||||
@ -391,6 +392,8 @@ void LimeSDROutputGUI::displaySampleRate()
|
||||
|
||||
void LimeSDROutputGUI::displaySettings()
|
||||
{
|
||||
setTitle(m_settings.m_title);
|
||||
getDeviceUISet()->m_mainSpectrumGUI->setTitle(m_settings.m_title);
|
||||
ui->transverter->setDeltaFrequency(m_settings.m_transverterDeltaFrequency);
|
||||
ui->transverter->setDeltaFrequencyActive(m_settings.m_transverterMode);
|
||||
|
||||
@ -697,21 +700,30 @@ void LimeSDROutputGUI::openDeviceSettingsDialog(const QPoint& p)
|
||||
dialog.setReverseAPIAddress(m_settings.m_reverseAPIAddress);
|
||||
dialog.setReverseAPIPort(m_settings.m_reverseAPIPort);
|
||||
dialog.setReverseAPIDeviceIndex(m_settings.m_reverseAPIDeviceIndex);
|
||||
dialog.setTitle(m_settings.m_title);
|
||||
dialog.setDefaultTitle(getDefaultTitle());
|
||||
|
||||
dialog.move(p);
|
||||
new DialogPositioner(&dialog, false);
|
||||
dialog.exec();
|
||||
|
||||
m_settings.m_useReverseAPI = dialog.useReverseAPI();
|
||||
m_settings.m_reverseAPIAddress = dialog.getReverseAPIAddress();
|
||||
m_settings.m_reverseAPIPort = dialog.getReverseAPIPort();
|
||||
m_settings.m_reverseAPIDeviceIndex = dialog.getReverseAPIDeviceIndex();
|
||||
m_settingsKeys.append("useReverseAPI");
|
||||
m_settingsKeys.append("reverseAPIAddress");
|
||||
m_settingsKeys.append("reverseAPIPort");
|
||||
m_settingsKeys.append("reverseAPIDeviceIndex");
|
||||
if (dialog.result() == QDialog::Accepted)
|
||||
{
|
||||
m_settings.m_title = dialog.getTitle();
|
||||
setTitle(m_settings.m_title);
|
||||
getDeviceUISet()->m_mainSpectrumGUI->setTitle(m_settings.m_title);
|
||||
m_settings.m_useReverseAPI = dialog.useReverseAPI();
|
||||
m_settings.m_reverseAPIAddress = dialog.getReverseAPIAddress();
|
||||
m_settings.m_reverseAPIPort = dialog.getReverseAPIPort();
|
||||
m_settings.m_reverseAPIDeviceIndex = dialog.getReverseAPIDeviceIndex();
|
||||
m_settingsKeys.append("title");
|
||||
m_settingsKeys.append("useReverseAPI");
|
||||
m_settingsKeys.append("reverseAPIAddress");
|
||||
m_settingsKeys.append("reverseAPIPort");
|
||||
m_settingsKeys.append("reverseAPIDeviceIndex");
|
||||
|
||||
sendSettings();
|
||||
sendSettings();
|
||||
}
|
||||
}
|
||||
|
||||
resetContextMenuType();
|
||||
|
||||
@ -28,6 +28,7 @@ LimeSDROutputSettings::LimeSDROutputSettings()
|
||||
|
||||
void LimeSDROutputSettings::resetToDefaults()
|
||||
{
|
||||
m_title = "LimeSDR";
|
||||
m_centerFrequency = 435000*1000;
|
||||
m_devSampleRate = 5000000;
|
||||
m_log2HardInterp = 3;
|
||||
@ -75,6 +76,7 @@ QByteArray LimeSDROutputSettings::serialize() const
|
||||
s.writeString(21, m_reverseAPIAddress);
|
||||
s.writeU32(22, m_reverseAPIPort);
|
||||
s.writeU32(23, m_reverseAPIDeviceIndex);
|
||||
s.writeString(24, m_title);
|
||||
|
||||
return s.final();
|
||||
}
|
||||
@ -125,6 +127,7 @@ bool LimeSDROutputSettings::deserialize(const QByteArray& data)
|
||||
|
||||
d.readU32(23, &uintval, 0);
|
||||
m_reverseAPIDeviceIndex = uintval > 99 ? 99 : uintval;
|
||||
d.readString(24, &m_title, "LimeSDR");
|
||||
|
||||
return true;
|
||||
}
|
||||
@ -137,6 +140,9 @@ bool LimeSDROutputSettings::deserialize(const QByteArray& data)
|
||||
|
||||
void LimeSDROutputSettings::applySettings(const QStringList& settingsKeys, const LimeSDROutputSettings& settings)
|
||||
{
|
||||
if (settingsKeys.contains("title")) {
|
||||
m_title = settings.m_title;
|
||||
}
|
||||
if (settingsKeys.contains("centerFrequency")) {
|
||||
m_centerFrequency = settings.m_centerFrequency;
|
||||
}
|
||||
@ -206,6 +212,9 @@ QString LimeSDROutputSettings::getDebugString(const QStringList& settingsKeys, b
|
||||
{
|
||||
std::ostringstream ostr;
|
||||
|
||||
if (settingsKeys.contains("title") || force) {
|
||||
ostr << " m_title: " << m_title.toStdString();
|
||||
}
|
||||
if (settingsKeys.contains("centerFrequency") || force) {
|
||||
ostr << " m_centerFrequency: " << m_centerFrequency;
|
||||
}
|
||||
@ -272,5 +281,3 @@ QString LimeSDROutputSettings::getDebugString(const QStringList& settingsKeys, b
|
||||
|
||||
return QString(ostr.str().c_str());
|
||||
}
|
||||
|
||||
|
||||
|
||||
@ -45,6 +45,7 @@ struct LimeSDROutputSettings
|
||||
};
|
||||
|
||||
// global settings to be saved
|
||||
QString m_title;
|
||||
uint64_t m_centerFrequency;
|
||||
int m_devSampleRate;
|
||||
uint32_t m_log2HardInterp;
|
||||
|
||||
@ -299,6 +299,9 @@ void LocalOutput::webapiUpdateDeviceSettings(
|
||||
const QStringList& deviceSettingsKeys,
|
||||
SWGSDRangel::SWGDeviceSettings& response)
|
||||
{
|
||||
if (deviceSettingsKeys.contains("title")) {
|
||||
settings.m_title = *response.getLocalOutputSettings()->getTitle();
|
||||
}
|
||||
if (deviceSettingsKeys.contains("useReverseAPI")) {
|
||||
settings.m_useReverseAPI = response.getLocalOutputSettings()->getUseReverseApi() != 0;
|
||||
}
|
||||
@ -315,6 +318,12 @@ void LocalOutput::webapiUpdateDeviceSettings(
|
||||
|
||||
void LocalOutput::webapiFormatDeviceSettings(SWGSDRangel::SWGDeviceSettings& response, const LocalOutputSettings& settings)
|
||||
{
|
||||
if (response.getLocalOutputSettings()->getTitle()) {
|
||||
*response.getLocalOutputSettings()->getTitle() = settings.m_title;
|
||||
} else {
|
||||
response.getLocalOutputSettings()->setTitle(new QString(settings.m_title));
|
||||
}
|
||||
|
||||
response.getLocalOutputSettings()->setUseReverseApi(settings.m_useReverseAPI ? 1 : 0);
|
||||
|
||||
if (response.getLocalOutputSettings()->getReverseApiAddress()) {
|
||||
|
||||
@ -34,6 +34,7 @@
|
||||
#include "gui/glspectrum.h"
|
||||
#include "gui/basicdevicesettingsdialog.h"
|
||||
#include "gui/dialogpositioner.h"
|
||||
#include "mainspectrum/mainspectrumgui.h"
|
||||
#include "dsp/dspcommands.h"
|
||||
#include "device/deviceapi.h"
|
||||
#include "device/deviceuiset.h"
|
||||
@ -221,6 +222,8 @@ void LocalOutputGui::displaySettings()
|
||||
{
|
||||
blockApplySettings(true);
|
||||
|
||||
setTitle(m_settings.m_title);
|
||||
getDeviceUISet()->m_mainSpectrumGUI->setTitle(m_settings.m_title);
|
||||
ui->centerFrequency->setText(QString("%L1").arg(m_streamCenterFrequency / 1000));
|
||||
ui->deviceRateText->setText(tr("%1k").arg(m_streamSampleRate / 1000.0));
|
||||
|
||||
@ -295,21 +298,30 @@ void LocalOutputGui::openDeviceSettingsDialog(const QPoint& p)
|
||||
dialog.setReverseAPIAddress(m_settings.m_reverseAPIAddress);
|
||||
dialog.setReverseAPIPort(m_settings.m_reverseAPIPort);
|
||||
dialog.setReverseAPIDeviceIndex(m_settings.m_reverseAPIDeviceIndex);
|
||||
dialog.setTitle(m_settings.m_title);
|
||||
dialog.setDefaultTitle(getDefaultTitle());
|
||||
|
||||
dialog.move(p);
|
||||
new DialogPositioner(&dialog, false);
|
||||
dialog.exec();
|
||||
|
||||
m_settings.m_useReverseAPI = dialog.useReverseAPI();
|
||||
m_settings.m_reverseAPIAddress = dialog.getReverseAPIAddress();
|
||||
m_settings.m_reverseAPIPort = dialog.getReverseAPIPort();
|
||||
m_settings.m_reverseAPIDeviceIndex = dialog.getReverseAPIDeviceIndex();
|
||||
m_settingsKeys.append("useReverseAPI");
|
||||
m_settingsKeys.append("reverseAPIAddress");
|
||||
m_settingsKeys.append("reverseAPIPort");
|
||||
m_settingsKeys.append("reverseAPIDeviceIndex");
|
||||
if (dialog.result() == QDialog::Accepted)
|
||||
{
|
||||
m_settings.m_title = dialog.getTitle();
|
||||
setTitle(m_settings.m_title);
|
||||
getDeviceUISet()->m_mainSpectrumGUI->setTitle(m_settings.m_title);
|
||||
m_settings.m_useReverseAPI = dialog.useReverseAPI();
|
||||
m_settings.m_reverseAPIAddress = dialog.getReverseAPIAddress();
|
||||
m_settings.m_reverseAPIPort = dialog.getReverseAPIPort();
|
||||
m_settings.m_reverseAPIDeviceIndex = dialog.getReverseAPIDeviceIndex();
|
||||
m_settingsKeys.append("title");
|
||||
m_settingsKeys.append("useReverseAPI");
|
||||
m_settingsKeys.append("reverseAPIAddress");
|
||||
m_settingsKeys.append("reverseAPIPort");
|
||||
m_settingsKeys.append("reverseAPIDeviceIndex");
|
||||
|
||||
sendSettings();
|
||||
sendSettings();
|
||||
}
|
||||
}
|
||||
|
||||
resetContextMenuType();
|
||||
|
||||
@ -27,6 +27,7 @@ LocalOutputSettings::LocalOutputSettings()
|
||||
|
||||
void LocalOutputSettings::resetToDefaults()
|
||||
{
|
||||
m_title = "LocalOutput";
|
||||
m_useReverseAPI = false;
|
||||
m_reverseAPIAddress = "127.0.0.1";
|
||||
m_reverseAPIPort = 8888;
|
||||
@ -37,6 +38,7 @@ QByteArray LocalOutputSettings::serialize() const
|
||||
{
|
||||
SimpleSerializer s(1);
|
||||
|
||||
s.writeString(1, m_title);
|
||||
s.writeString(4, m_reverseAPIAddress);
|
||||
s.writeU32(5, m_reverseAPIPort);
|
||||
s.writeU32(6, m_reverseAPIDeviceIndex);
|
||||
@ -58,6 +60,7 @@ bool LocalOutputSettings::deserialize(const QByteArray& data)
|
||||
{
|
||||
quint32 uintval;
|
||||
|
||||
d.readString(1, &m_title, "LocalOutput");
|
||||
d.readString(4, &m_reverseAPIAddress, "127.0.0.1");
|
||||
d.readU32(5, &uintval, 0);
|
||||
|
||||
@ -81,6 +84,9 @@ bool LocalOutputSettings::deserialize(const QByteArray& data)
|
||||
|
||||
void LocalOutputSettings::applySettings(const QStringList& settingsKeys, const LocalOutputSettings& settings)
|
||||
{
|
||||
if (settingsKeys.contains("title")) {
|
||||
m_title = settings.m_title;
|
||||
}
|
||||
if (settingsKeys.contains("useReverseAPI")) {
|
||||
m_useReverseAPI = settings.m_useReverseAPI;
|
||||
}
|
||||
@ -99,6 +105,9 @@ QString LocalOutputSettings::getDebugString(const QStringList& settingsKeys, boo
|
||||
{
|
||||
std::ostringstream ostr;
|
||||
|
||||
if (settingsKeys.contains("title") || force) {
|
||||
ostr << " m_title: " << m_title.toStdString();
|
||||
}
|
||||
if (settingsKeys.contains("useReverseAPI") || force) {
|
||||
ostr << " m_useReverseAPI: " << m_useReverseAPI;
|
||||
}
|
||||
|
||||
@ -23,7 +23,9 @@
|
||||
#include <QByteArray>
|
||||
#include <QString>
|
||||
|
||||
struct LocalOutputSettings {
|
||||
struct LocalOutputSettings
|
||||
{
|
||||
QString m_title;
|
||||
bool m_useReverseAPI;
|
||||
QString m_reverseAPIAddress;
|
||||
uint16_t m_reverseAPIPort;
|
||||
|
||||
@ -758,6 +758,9 @@ void PlutoSDROutput::webapiUpdateDeviceSettings(
|
||||
const QStringList& deviceSettingsKeys,
|
||||
SWGSDRangel::SWGDeviceSettings& response)
|
||||
{
|
||||
if (deviceSettingsKeys.contains("title")) {
|
||||
settings.m_title = *response.getPlutoSdrOutputSettings()->getTitle();
|
||||
}
|
||||
if (deviceSettingsKeys.contains("centerFrequency")) {
|
||||
settings.m_centerFrequency = response.getPlutoSdrOutputSettings()->getCenterFrequency();
|
||||
}
|
||||
@ -826,6 +829,12 @@ int PlutoSDROutput::webapiReportGet(
|
||||
|
||||
void PlutoSDROutput::webapiFormatDeviceSettings(SWGSDRangel::SWGDeviceSettings& response, const PlutoSDROutputSettings& settings)
|
||||
{
|
||||
if (response.getPlutoSdrOutputSettings()->getTitle()) {
|
||||
*response.getPlutoSdrOutputSettings()->getTitle() = settings.m_title;
|
||||
} else {
|
||||
response.getPlutoSdrOutputSettings()->setTitle(new QString(settings.m_title));
|
||||
}
|
||||
|
||||
response.getPlutoSdrOutputSettings()->setCenterFrequency(settings.m_centerFrequency);
|
||||
response.getPlutoSdrOutputSettings()->setDevSampleRate(settings.m_devSampleRate);
|
||||
response.getPlutoSdrOutputSettings()->setLOppmTenths(settings.m_LOppmTenths);
|
||||
@ -872,6 +881,9 @@ void PlutoSDROutput::webapiReverseSendSettings(const QList<QString>& deviceSetti
|
||||
|
||||
// transfer data that has been modified. When force is on transfer all data except reverse API data
|
||||
|
||||
if (deviceSettingsKeys.contains("title") || force) {
|
||||
swgPlutoSdrOutputSettings->setTitle(new QString(settings.m_title));
|
||||
}
|
||||
if (deviceSettingsKeys.contains("centerFrequency") || force) {
|
||||
swgPlutoSdrOutputSettings->setCenterFrequency(settings.m_centerFrequency);
|
||||
}
|
||||
|
||||
@ -28,6 +28,7 @@
|
||||
#include "gui/basicdevicesettingsdialog.h"
|
||||
#include "gui/dialpopup.h"
|
||||
#include "gui/dialogpositioner.h"
|
||||
#include "mainspectrum/mainspectrumgui.h"
|
||||
#include "device/deviceapi.h"
|
||||
#include "device/deviceuiset.h"
|
||||
#include "plutosdr/deviceplutosdr.h"
|
||||
@ -331,6 +332,8 @@ void PlutoSDROutputGUI::displaySampleRate()
|
||||
|
||||
void PlutoSDROutputGUI::displaySettings()
|
||||
{
|
||||
setTitle(m_settings.m_title);
|
||||
getDeviceUISet()->m_mainSpectrumGUI->setTitle(m_settings.m_title);
|
||||
ui->transverter->setDeltaFrequency(m_settings.m_transverterDeltaFrequency);
|
||||
ui->transverter->setDeltaFrequencyActive(m_settings.m_transverterMode);
|
||||
updateFrequencyLimits();
|
||||
@ -530,21 +533,30 @@ void PlutoSDROutputGUI::openDeviceSettingsDialog(const QPoint& p)
|
||||
dialog.setReverseAPIAddress(m_settings.m_reverseAPIAddress);
|
||||
dialog.setReverseAPIPort(m_settings.m_reverseAPIPort);
|
||||
dialog.setReverseAPIDeviceIndex(m_settings.m_reverseAPIDeviceIndex);
|
||||
dialog.setTitle(m_settings.m_title);
|
||||
dialog.setDefaultTitle(getDefaultTitle());
|
||||
|
||||
dialog.move(p);
|
||||
new DialogPositioner(&dialog, false);
|
||||
dialog.exec();
|
||||
|
||||
m_settings.m_useReverseAPI = dialog.useReverseAPI();
|
||||
m_settings.m_reverseAPIAddress = dialog.getReverseAPIAddress();
|
||||
m_settings.m_reverseAPIPort = dialog.getReverseAPIPort();
|
||||
m_settings.m_reverseAPIDeviceIndex = dialog.getReverseAPIDeviceIndex();
|
||||
m_settingsKeys.append("useReverseAPI");
|
||||
m_settingsKeys.append("reverseAPIAddress");
|
||||
m_settingsKeys.append("reverseAPIPort");
|
||||
m_settingsKeys.append("reverseAPIDeviceIndex");
|
||||
if (dialog.result() == QDialog::Accepted)
|
||||
{
|
||||
m_settings.m_title = dialog.getTitle();
|
||||
setTitle(m_settings.m_title);
|
||||
getDeviceUISet()->m_mainSpectrumGUI->setTitle(m_settings.m_title);
|
||||
m_settings.m_useReverseAPI = dialog.useReverseAPI();
|
||||
m_settings.m_reverseAPIAddress = dialog.getReverseAPIAddress();
|
||||
m_settings.m_reverseAPIPort = dialog.getReverseAPIPort();
|
||||
m_settings.m_reverseAPIDeviceIndex = dialog.getReverseAPIDeviceIndex();
|
||||
m_settingsKeys.append("title");
|
||||
m_settingsKeys.append("useReverseAPI");
|
||||
m_settingsKeys.append("reverseAPIAddress");
|
||||
m_settingsKeys.append("reverseAPIPort");
|
||||
m_settingsKeys.append("reverseAPIDeviceIndex");
|
||||
|
||||
sendSettings();
|
||||
sendSettings();
|
||||
}
|
||||
}
|
||||
|
||||
resetContextMenuType();
|
||||
|
||||
@ -27,6 +27,7 @@ PlutoSDROutputSettings::PlutoSDROutputSettings()
|
||||
|
||||
void PlutoSDROutputSettings::resetToDefaults()
|
||||
{
|
||||
m_title = "PlutoSDROutput";
|
||||
m_centerFrequency = 435000 * 1000;
|
||||
m_LOppmTenths = 0;
|
||||
m_log2Interp = 0;
|
||||
@ -66,6 +67,7 @@ QByteArray PlutoSDROutputSettings::serialize() const
|
||||
s.writeString(18, m_reverseAPIAddress);
|
||||
s.writeU32(19, m_reverseAPIPort);
|
||||
s.writeU32(20, m_reverseAPIDeviceIndex);
|
||||
s.writeString(21, m_title);
|
||||
|
||||
return s.final();
|
||||
}
|
||||
@ -119,6 +121,7 @@ bool PlutoSDROutputSettings::deserialize(const QByteArray& data)
|
||||
|
||||
d.readU32(20, &uintval, 0);
|
||||
m_reverseAPIDeviceIndex = uintval > 99 ? 99 : uintval;
|
||||
d.readString(21, &m_title, "PlutoSDROutput");
|
||||
|
||||
return true;
|
||||
}
|
||||
@ -131,6 +134,9 @@ bool PlutoSDROutputSettings::deserialize(const QByteArray& data)
|
||||
|
||||
void PlutoSDROutputSettings::applySettings(const QStringList& settingsKeys, const PlutoSDROutputSettings& settings)
|
||||
{
|
||||
if (settingsKeys.contains("title")) {
|
||||
m_title = settings.m_title;
|
||||
}
|
||||
if (settingsKeys.contains("centerFrequency")) {
|
||||
m_centerFrequency = settings.m_centerFrequency;
|
||||
}
|
||||
@ -188,6 +194,9 @@ QString PlutoSDROutputSettings::getDebugString(const QStringList& settingsKeys,
|
||||
{
|
||||
std::ostringstream ostr;
|
||||
|
||||
if (settingsKeys.contains("title") || force) {
|
||||
ostr << " m_title: " << m_title.toStdString();
|
||||
}
|
||||
if (settingsKeys.contains("centerFrequency") || force) {
|
||||
ostr << " m_centerFrequency: " << m_centerFrequency;
|
||||
}
|
||||
|
||||
@ -35,6 +35,7 @@ struct PlutoSDROutputSettings {
|
||||
};
|
||||
|
||||
// global settings to be saved
|
||||
QString m_title;
|
||||
quint64 m_centerFrequency;
|
||||
// common device settings
|
||||
quint64 m_devSampleRate; //!< Host interface sample rate
|
||||
|
||||
@ -399,6 +399,9 @@ void RemoteOutput::webapiUpdateDeviceSettings(
|
||||
const QStringList& deviceSettingsKeys,
|
||||
SWGSDRangel::SWGDeviceSettings& response)
|
||||
{
|
||||
if (deviceSettingsKeys.contains("title")) {
|
||||
settings.m_title = *response.getRemoteOutputSettings()->getTitle();
|
||||
}
|
||||
if (deviceSettingsKeys.contains("nbFECBlocks")) {
|
||||
settings.m_nbFECBlocks = response.getRemoteOutputSettings()->getNbFecBlocks();
|
||||
}
|
||||
@ -450,6 +453,12 @@ int RemoteOutput::webapiReportGet(
|
||||
|
||||
void RemoteOutput::webapiFormatDeviceSettings(SWGSDRangel::SWGDeviceSettings& response, const RemoteOutputSettings& settings)
|
||||
{
|
||||
if (response.getRemoteOutputSettings()->getTitle()) {
|
||||
*response.getRemoteOutputSettings()->getTitle() = settings.m_title;
|
||||
} else {
|
||||
response.getRemoteOutputSettings()->setTitle(new QString(settings.m_title));
|
||||
}
|
||||
|
||||
response.getRemoteOutputSettings()->setNbFecBlocks(settings.m_nbFECBlocks);
|
||||
response.getRemoteOutputSettings()->setNbTxBytes(settings.m_nbTxBytes);
|
||||
response.getRemoteOutputSettings()->setApiAddress(new QString(settings.m_apiAddress));
|
||||
@ -656,6 +665,9 @@ void RemoteOutput::webapiReverseSendSettings(const QList<QString>& deviceSetting
|
||||
|
||||
// transfer data that has been modified. When force is on transfer all data except reverse API data
|
||||
|
||||
if (deviceSettingsKeys.contains("title") || force) {
|
||||
swgRemoteOutputSettings->setTitle(new QString(settings.m_title));
|
||||
}
|
||||
if (deviceSettingsKeys.contains("nbFECBlocks") || force) {
|
||||
swgRemoteOutputSettings->setNbFecBlocks(settings.m_nbFECBlocks);
|
||||
}
|
||||
|
||||
@ -31,6 +31,7 @@
|
||||
#include "gui/basicdevicesettingsdialog.h"
|
||||
#include "gui/dialpopup.h"
|
||||
#include "gui/dialogpositioner.h"
|
||||
#include "mainspectrum/mainspectrumgui.h"
|
||||
#include "dsp/dspcommands.h"
|
||||
|
||||
#include "device/deviceapi.h"
|
||||
@ -219,6 +220,8 @@ void RemoteOutputSinkGui::updateSampleRate()
|
||||
void RemoteOutputSinkGui::displaySettings()
|
||||
{
|
||||
blockApplySettings(true);
|
||||
setTitle(m_settings.m_title);
|
||||
getDeviceUISet()->m_mainSpectrumGUI->setTitle(m_settings.m_title);
|
||||
ui->centerFrequency->setText(QString("%L1").arg(m_deviceCenterFrequency));
|
||||
ui->nbFECBlocks->setValue(m_settings.m_nbFECBlocks);
|
||||
ui->nbTxBytes->setCurrentIndex(log2(m_settings.m_nbTxBytes));
|
||||
@ -556,21 +559,30 @@ void RemoteOutputSinkGui::openDeviceSettingsDialog(const QPoint& p)
|
||||
dialog.setReverseAPIAddress(m_settings.m_reverseAPIAddress);
|
||||
dialog.setReverseAPIPort(m_settings.m_reverseAPIPort);
|
||||
dialog.setReverseAPIDeviceIndex(m_settings.m_reverseAPIDeviceIndex);
|
||||
dialog.setTitle(m_settings.m_title);
|
||||
dialog.setDefaultTitle(getDefaultTitle());
|
||||
|
||||
dialog.move(p);
|
||||
new DialogPositioner(&dialog, false);
|
||||
dialog.exec();
|
||||
|
||||
m_settings.m_useReverseAPI = dialog.useReverseAPI();
|
||||
m_settings.m_reverseAPIAddress = dialog.getReverseAPIAddress();
|
||||
m_settings.m_reverseAPIPort = dialog.getReverseAPIPort();
|
||||
m_settings.m_reverseAPIDeviceIndex = dialog.getReverseAPIDeviceIndex();
|
||||
m_settingsKeys.append("useReverseAPI");
|
||||
m_settingsKeys.append("reverseAPIAddress");
|
||||
m_settingsKeys.append("reverseAPIPort");
|
||||
m_settingsKeys.append("reverseAPIDeviceIndex");
|
||||
if (dialog.result() == QDialog::Accepted)
|
||||
{
|
||||
m_settings.m_title = dialog.getTitle();
|
||||
setTitle(m_settings.m_title);
|
||||
getDeviceUISet()->m_mainSpectrumGUI->setTitle(m_settings.m_title);
|
||||
m_settings.m_useReverseAPI = dialog.useReverseAPI();
|
||||
m_settings.m_reverseAPIAddress = dialog.getReverseAPIAddress();
|
||||
m_settings.m_reverseAPIPort = dialog.getReverseAPIPort();
|
||||
m_settings.m_reverseAPIDeviceIndex = dialog.getReverseAPIDeviceIndex();
|
||||
m_settingsKeys.append("title");
|
||||
m_settingsKeys.append("useReverseAPI");
|
||||
m_settingsKeys.append("reverseAPIAddress");
|
||||
m_settingsKeys.append("reverseAPIPort");
|
||||
m_settingsKeys.append("reverseAPIDeviceIndex");
|
||||
|
||||
sendSettings();
|
||||
sendSettings();
|
||||
}
|
||||
}
|
||||
|
||||
resetContextMenuType();
|
||||
|
||||
@ -27,6 +27,7 @@ RemoteOutputSettings::RemoteOutputSettings()
|
||||
|
||||
void RemoteOutputSettings::resetToDefaults()
|
||||
{
|
||||
m_title = "RemoteOutput";
|
||||
m_nbFECBlocks = 0;
|
||||
m_nbTxBytes = 2;
|
||||
m_apiAddress = "127.0.0.1";
|
||||
@ -45,6 +46,7 @@ QByteArray RemoteOutputSettings::serialize() const
|
||||
{
|
||||
SimpleSerializer s(1);
|
||||
|
||||
s.writeString(2, m_title);
|
||||
s.writeU32(3, m_nbTxBytes);
|
||||
s.writeU32(4, m_nbFECBlocks);
|
||||
s.writeString(5, m_apiAddress);
|
||||
@ -75,7 +77,8 @@ bool RemoteOutputSettings::deserialize(const QByteArray& data)
|
||||
{
|
||||
quint32 uintval;
|
||||
|
||||
d.readU32(4, &m_nbTxBytes, 2);
|
||||
d.readString(2, &m_title, "RemoteOutput");
|
||||
d.readU32(3, &m_nbTxBytes, 2);
|
||||
d.readU32(4, &m_nbFECBlocks, 0);
|
||||
d.readString(5, &m_apiAddress, "127.0.0.1");
|
||||
d.readU32(6, &uintval, 9090);
|
||||
@ -109,6 +112,9 @@ bool RemoteOutputSettings::deserialize(const QByteArray& data)
|
||||
|
||||
void RemoteOutputSettings::applySettings(const QStringList& settingsKeys, const RemoteOutputSettings& settings)
|
||||
{
|
||||
if (settingsKeys.contains("title")) {
|
||||
m_title = settings.m_title;
|
||||
}
|
||||
if (settingsKeys.contains("nbFECBlocks")) {
|
||||
m_nbFECBlocks = settings.m_nbFECBlocks;
|
||||
}
|
||||
@ -151,6 +157,9 @@ QString RemoteOutputSettings::getDebugString(const QStringList& settingsKeys, bo
|
||||
{
|
||||
std::ostringstream ostr;
|
||||
|
||||
if (settingsKeys.contains("title") || force) {
|
||||
ostr << " m_title: " << m_title.toStdString();
|
||||
}
|
||||
if (settingsKeys.contains("nbFECBlocks") || force) {
|
||||
ostr << " m_nbFECBlocks: " << m_nbFECBlocks;
|
||||
}
|
||||
@ -190,4 +199,3 @@ QString RemoteOutputSettings::getDebugString(const QStringList& settingsKeys, bo
|
||||
|
||||
return QString(ostr.str().c_str());
|
||||
}
|
||||
|
||||
|
||||
@ -23,7 +23,9 @@
|
||||
#include <QByteArray>
|
||||
#include <QString>
|
||||
|
||||
struct RemoteOutputSettings {
|
||||
struct RemoteOutputSettings
|
||||
{
|
||||
QString m_title;
|
||||
quint32 m_nbFECBlocks;
|
||||
quint32 m_nbTxBytes;
|
||||
QString m_apiAddress;
|
||||
|
||||
@ -1388,6 +1388,9 @@ void SoapySDROutput::webapiUpdateDeviceSettings(
|
||||
const QStringList& deviceSettingsKeys,
|
||||
SWGSDRangel::SWGDeviceSettings& response)
|
||||
{
|
||||
if (deviceSettingsKeys.contains("title")) {
|
||||
settings.m_title = *response.getSoapySdrOutputSettings()->getTitle();
|
||||
}
|
||||
if (deviceSettingsKeys.contains("centerFrequency")) {
|
||||
settings.m_centerFrequency = response.getSoapySdrOutputSettings()->getCenterFrequency();
|
||||
}
|
||||
@ -1550,6 +1553,12 @@ int SoapySDROutput::webapiRun(
|
||||
|
||||
void SoapySDROutput::webapiFormatDeviceSettings(SWGSDRangel::SWGDeviceSettings& response, const SoapySDROutputSettings& settings)
|
||||
{
|
||||
if (response.getSoapySdrOutputSettings()->getTitle()) {
|
||||
*response.getSoapySdrOutputSettings()->getTitle() = settings.m_title;
|
||||
} else {
|
||||
response.getSoapySdrOutputSettings()->setTitle(new QString(settings.m_title));
|
||||
}
|
||||
|
||||
response.getSoapySdrOutputSettings()->setCenterFrequency(settings.m_centerFrequency);
|
||||
response.getSoapySdrOutputSettings()->setLOppmTenths(settings.m_LOppmTenths);
|
||||
response.getSoapySdrOutputSettings()->setDevSampleRate(settings.m_devSampleRate);
|
||||
@ -1851,6 +1860,9 @@ void SoapySDROutput::webapiReverseSendSettings(QList<QString>& deviceSettingsKey
|
||||
|
||||
// transfer data that has been modified. When force is on transfer all data except reverse API data
|
||||
|
||||
if (deviceSettingsKeys.contains("title") || force) {
|
||||
swgSoapySDROutputSettings->setTitle(new QString(settings.m_title));
|
||||
}
|
||||
if (deviceSettingsKeys.contains("centerFrequency") || force) {
|
||||
swgSoapySDROutputSettings->setCenterFrequency(settings.m_centerFrequency);
|
||||
}
|
||||
|
||||
@ -27,6 +27,7 @@
|
||||
#include "gui/glspectrum.h"
|
||||
#include "gui/basicdevicesettingsdialog.h"
|
||||
#include "gui/dialogpositioner.h"
|
||||
#include "mainspectrum/mainspectrumgui.h"
|
||||
#include "soapygui/discreterangegui.h"
|
||||
#include "soapygui/intervalrangegui.h"
|
||||
#include "soapygui/stringrangegui.h"
|
||||
@ -675,6 +676,8 @@ void SoapySDROutputGui::displaySettings()
|
||||
{
|
||||
blockApplySettings(true);
|
||||
|
||||
setTitle(m_settings.m_title);
|
||||
getDeviceUISet()->m_mainSpectrumGUI->setTitle(m_settings.m_title);
|
||||
ui->transverter->setDeltaFrequency(m_settings.m_transverterDeltaFrequency);
|
||||
ui->transverter->setDeltaFrequencyActive(m_settings.m_transverterMode);
|
||||
|
||||
@ -893,17 +896,25 @@ void SoapySDROutputGui::openDeviceSettingsDialog(const QPoint& p)
|
||||
dialog.setReverseAPIAddress(m_settings.m_reverseAPIAddress);
|
||||
dialog.setReverseAPIPort(m_settings.m_reverseAPIPort);
|
||||
dialog.setReverseAPIDeviceIndex(m_settings.m_reverseAPIDeviceIndex);
|
||||
dialog.setTitle(m_settings.m_title);
|
||||
dialog.setDefaultTitle(getDefaultTitle());
|
||||
|
||||
dialog.move(p);
|
||||
new DialogPositioner(&dialog, false);
|
||||
dialog.exec();
|
||||
|
||||
m_settings.m_useReverseAPI = dialog.useReverseAPI();
|
||||
m_settings.m_reverseAPIAddress = dialog.getReverseAPIAddress();
|
||||
m_settings.m_reverseAPIPort = dialog.getReverseAPIPort();
|
||||
m_settings.m_reverseAPIDeviceIndex = dialog.getReverseAPIDeviceIndex();
|
||||
if (dialog.result() == QDialog::Accepted)
|
||||
{
|
||||
m_settings.m_title = dialog.getTitle();
|
||||
setTitle(m_settings.m_title);
|
||||
getDeviceUISet()->m_mainSpectrumGUI->setTitle(m_settings.m_title);
|
||||
m_settings.m_reverseAPIAddress = dialog.getReverseAPIAddress();
|
||||
m_settings.m_reverseAPIPort = dialog.getReverseAPIPort();
|
||||
m_settings.m_reverseAPIDeviceIndex = dialog.getReverseAPIDeviceIndex();
|
||||
m_settings.m_useReverseAPI = dialog.useReverseAPI();
|
||||
|
||||
sendSettings();
|
||||
sendSettings();
|
||||
}
|
||||
}
|
||||
|
||||
resetContextMenuType();
|
||||
|
||||
@ -31,6 +31,7 @@ SoapySDROutputSettings::SoapySDROutputSettings()
|
||||
|
||||
void SoapySDROutputSettings::resetToDefaults()
|
||||
{
|
||||
m_title = "SoapySDROutput";
|
||||
m_centerFrequency = 435000*1000;
|
||||
m_LOppmTenths = 0;
|
||||
m_devSampleRate = 1024000;
|
||||
@ -78,6 +79,7 @@ QByteArray SoapySDROutputSettings::serialize() const
|
||||
s.writeString(24, m_reverseAPIAddress);
|
||||
s.writeU32(25, m_reverseAPIPort);
|
||||
s.writeU32(26, m_reverseAPIDeviceIndex);
|
||||
s.writeString(27, m_title);
|
||||
|
||||
return s.final();
|
||||
}
|
||||
@ -135,6 +137,7 @@ bool SoapySDROutputSettings::deserialize(const QByteArray& data)
|
||||
|
||||
d.readU32(26, &uintval, 0);
|
||||
m_reverseAPIDeviceIndex = uintval > 99 ? 99 : uintval;
|
||||
d.readString(27, &m_title, "SoapySDROutput");
|
||||
|
||||
return true;
|
||||
}
|
||||
@ -178,4 +181,3 @@ void SoapySDROutputSettings::deserializeArgumentMap(const QByteArray& data, QMap
|
||||
(*stream) >> map;
|
||||
delete stream;
|
||||
}
|
||||
|
||||
|
||||
@ -24,7 +24,9 @@
|
||||
#include <QVariant>
|
||||
#include <QMap>
|
||||
|
||||
struct SoapySDROutputSettings {
|
||||
struct SoapySDROutputSettings
|
||||
{
|
||||
QString m_title;
|
||||
quint64 m_centerFrequency;
|
||||
int m_LOppmTenths;
|
||||
qint32 m_devSampleRate;
|
||||
|
||||
@ -28,6 +28,7 @@
|
||||
#include "gui/glspectrum.h"
|
||||
#include "gui/basicdevicesettingsdialog.h"
|
||||
#include "gui/dialogpositioner.h"
|
||||
#include "mainspectrum/mainspectrumgui.h"
|
||||
#include "dsp/spectrumvis.h"
|
||||
#include "dsp/dspcommands.h"
|
||||
|
||||
@ -191,6 +192,8 @@ void TestSinkGui::displaySettings()
|
||||
{
|
||||
ui->centerFrequency->setValue(m_settings.m_centerFrequency / 1000);
|
||||
ui->sampleRate->setValue(m_settings.m_sampleRate);
|
||||
setTitle(m_settings.m_title);
|
||||
getDeviceUISet()->m_mainSpectrumGUI->setTitle(m_settings.m_title);
|
||||
}
|
||||
|
||||
void TestSinkGui::sendSettings()
|
||||
@ -289,21 +292,30 @@ void TestSinkGui::openDeviceSettingsDialog(const QPoint& p)
|
||||
dialog.setReverseAPIAddress(m_settings.m_reverseAPIAddress);
|
||||
dialog.setReverseAPIPort(m_settings.m_reverseAPIPort);
|
||||
dialog.setReverseAPIDeviceIndex(m_settings.m_reverseAPIDeviceIndex);
|
||||
dialog.setTitle(m_settings.m_title);
|
||||
dialog.setDefaultTitle(getDefaultTitle());
|
||||
|
||||
dialog.move(p);
|
||||
new DialogPositioner(&dialog, false);
|
||||
dialog.exec();
|
||||
|
||||
m_settings.m_useReverseAPI = dialog.useReverseAPI();
|
||||
m_settings.m_reverseAPIAddress = dialog.getReverseAPIAddress();
|
||||
m_settings.m_reverseAPIPort = dialog.getReverseAPIPort();
|
||||
m_settings.m_reverseAPIDeviceIndex = dialog.getReverseAPIDeviceIndex();
|
||||
m_settingsKeys.append("useReverseAPI");
|
||||
m_settingsKeys.append("reverseAPIAddress");
|
||||
m_settingsKeys.append("reverseAPIPort");
|
||||
m_settingsKeys.append("reverseAPIDeviceIndex");
|
||||
if (dialog.result() == QDialog::Accepted)
|
||||
{
|
||||
m_settings.m_title = dialog.getTitle();
|
||||
setTitle(m_settings.m_title);
|
||||
getDeviceUISet()->m_mainSpectrumGUI->setTitle(m_settings.m_title);
|
||||
m_settings.m_useReverseAPI = dialog.useReverseAPI();
|
||||
m_settings.m_reverseAPIAddress = dialog.getReverseAPIAddress();
|
||||
m_settings.m_reverseAPIPort = dialog.getReverseAPIPort();
|
||||
m_settings.m_reverseAPIDeviceIndex = dialog.getReverseAPIDeviceIndex();
|
||||
m_settingsKeys.append("title");
|
||||
m_settingsKeys.append("useReverseAPI");
|
||||
m_settingsKeys.append("reverseAPIAddress");
|
||||
m_settingsKeys.append("reverseAPIPort");
|
||||
m_settingsKeys.append("reverseAPIDeviceIndex");
|
||||
|
||||
sendSettings();
|
||||
sendSettings();
|
||||
}
|
||||
}
|
||||
|
||||
resetContextMenuType();
|
||||
|
||||
@ -28,6 +28,7 @@ TestSinkSettings::TestSinkSettings()
|
||||
|
||||
void TestSinkSettings::resetToDefaults()
|
||||
{
|
||||
m_title = "TestSink";
|
||||
m_centerFrequency = 435000*1000;
|
||||
m_sampleRate = 48000;
|
||||
m_log2Interp = 0;
|
||||
@ -54,6 +55,7 @@ QByteArray TestSinkSettings::serialize() const
|
||||
s.writeString(8, m_reverseAPIAddress);
|
||||
s.writeU32(9, m_reverseAPIPort);
|
||||
s.writeU32(10, m_reverseAPIDeviceIndex);
|
||||
s.writeString(11, m_title);
|
||||
return s.final();
|
||||
}
|
||||
|
||||
@ -94,6 +96,7 @@ bool TestSinkSettings::deserialize(const QByteArray& data)
|
||||
|
||||
d.readU32(10, &uintval, 0);
|
||||
m_reverseAPIDeviceIndex = uintval > 99 ? 99 : uintval;
|
||||
d.readString(11, &m_title, "TestSink");
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
@ -24,7 +24,9 @@
|
||||
|
||||
class Serializable;
|
||||
|
||||
struct TestSinkSettings {
|
||||
struct TestSinkSettings
|
||||
{
|
||||
QString m_title;
|
||||
quint64 m_centerFrequency;
|
||||
quint64 m_sampleRate;
|
||||
quint32 m_log2Interp;
|
||||
|
||||
@ -1028,6 +1028,9 @@ void USRPOutput::webapiUpdateDeviceSettings(
|
||||
const QStringList& deviceSettingsKeys,
|
||||
SWGSDRangel::SWGDeviceSettings& response)
|
||||
{
|
||||
if (deviceSettingsKeys.contains("title")) {
|
||||
settings.m_title = *response.getUsrpOutputSettings()->getTitle();
|
||||
}
|
||||
if (deviceSettingsKeys.contains("antennaPath")) {
|
||||
settings.m_antennaPath = *response.getUsrpOutputSettings()->getAntennaPath();
|
||||
}
|
||||
@ -1090,6 +1093,12 @@ int USRPOutput::webapiReportGet(
|
||||
}
|
||||
void USRPOutput::webapiFormatDeviceSettings(SWGSDRangel::SWGDeviceSettings& response, const USRPOutputSettings& settings)
|
||||
{
|
||||
if (response.getUsrpOutputSettings()->getTitle()) {
|
||||
*response.getUsrpOutputSettings()->getTitle() = settings.m_title;
|
||||
} else {
|
||||
response.getUsrpOutputSettings()->setTitle(new QString(settings.m_title));
|
||||
}
|
||||
|
||||
response.getUsrpOutputSettings()->setAntennaPath(new QString(settings.m_antennaPath));
|
||||
response.getUsrpOutputSettings()->setCenterFrequency(settings.m_centerFrequency);
|
||||
response.getUsrpOutputSettings()->setDevSampleRate(settings.m_devSampleRate);
|
||||
@ -1172,6 +1181,9 @@ void USRPOutput::webapiReverseSendSettings(const QList<QString>& deviceSettingsK
|
||||
|
||||
// transfer data that has been modified. When force is on transfer all data except reverse API data
|
||||
|
||||
if (deviceSettingsKeys.contains("title") || force) {
|
||||
swgUsrpOutputSettings->setTitle(new QString(settings.m_title));
|
||||
}
|
||||
if (deviceSettingsKeys.contains("antennaPath") || force) {
|
||||
swgUsrpOutputSettings->setAntennaPath(new QString(settings.m_antennaPath));
|
||||
}
|
||||
|
||||
@ -24,6 +24,7 @@
|
||||
#include "gui/glspectrum.h"
|
||||
#include "gui/basicdevicesettingsdialog.h"
|
||||
#include "gui/dialogpositioner.h"
|
||||
#include "mainspectrum/mainspectrumgui.h"
|
||||
#include "dsp/dspcommands.h"
|
||||
#include "device/deviceapi.h"
|
||||
#include "device/deviceuiset.h"
|
||||
@ -354,6 +355,8 @@ void USRPOutputGUI::displaySampleRate()
|
||||
|
||||
void USRPOutputGUI::displaySettings()
|
||||
{
|
||||
setTitle(m_settings.m_title);
|
||||
getDeviceUISet()->m_mainSpectrumGUI->setTitle(m_settings.m_title);
|
||||
ui->transverter->setDeltaFrequency(m_settings.m_transverterDeltaFrequency);
|
||||
ui->transverter->setDeltaFrequencyActive(m_settings.m_transverterMode);
|
||||
|
||||
@ -589,21 +592,30 @@ void USRPOutputGUI::openDeviceSettingsDialog(const QPoint& p)
|
||||
dialog.setReverseAPIAddress(m_settings.m_reverseAPIAddress);
|
||||
dialog.setReverseAPIPort(m_settings.m_reverseAPIPort);
|
||||
dialog.setReverseAPIDeviceIndex(m_settings.m_reverseAPIDeviceIndex);
|
||||
dialog.setTitle(m_settings.m_title);
|
||||
dialog.setDefaultTitle(getDefaultTitle());
|
||||
|
||||
dialog.move(p);
|
||||
new DialogPositioner(&dialog, false);
|
||||
dialog.exec();
|
||||
|
||||
m_settings.m_useReverseAPI = dialog.useReverseAPI();
|
||||
m_settings.m_reverseAPIAddress = dialog.getReverseAPIAddress();
|
||||
m_settings.m_reverseAPIPort = dialog.getReverseAPIPort();
|
||||
m_settings.m_reverseAPIDeviceIndex = dialog.getReverseAPIDeviceIndex();
|
||||
m_settingsKeys.append("useReverseAPI");
|
||||
m_settingsKeys.append("reverseAPIAddress");
|
||||
m_settingsKeys.append("reverseAPIPort");
|
||||
m_settingsKeys.append("reverseAPIDeviceIndex");
|
||||
if (dialog.result() == QDialog::Accepted)
|
||||
{
|
||||
m_settings.m_title = dialog.getTitle();
|
||||
setTitle(m_settings.m_title);
|
||||
getDeviceUISet()->m_mainSpectrumGUI->setTitle(m_settings.m_title);
|
||||
m_settings.m_useReverseAPI = dialog.useReverseAPI();
|
||||
m_settings.m_reverseAPIAddress = dialog.getReverseAPIAddress();
|
||||
m_settings.m_reverseAPIPort = dialog.getReverseAPIPort();
|
||||
m_settings.m_reverseAPIDeviceIndex = dialog.getReverseAPIDeviceIndex();
|
||||
m_settingsKeys.append("title");
|
||||
m_settingsKeys.append("useReverseAPI");
|
||||
m_settingsKeys.append("reverseAPIAddress");
|
||||
m_settingsKeys.append("reverseAPIPort");
|
||||
m_settingsKeys.append("reverseAPIDeviceIndex");
|
||||
|
||||
sendSettings();
|
||||
sendSettings();
|
||||
}
|
||||
}
|
||||
|
||||
resetContextMenuType();
|
||||
|
||||
@ -29,6 +29,7 @@ USRPOutputSettings::USRPOutputSettings()
|
||||
|
||||
void USRPOutputSettings::resetToDefaults()
|
||||
{
|
||||
m_title = "USRPOutput";
|
||||
m_masterClockRate = -1; // Calculated by UHD
|
||||
m_centerFrequency = 435000*1000;
|
||||
m_devSampleRate = 3000000;
|
||||
@ -67,6 +68,7 @@ QByteArray USRPOutputSettings::serialize() const
|
||||
s.writeS32(13, m_loOffset);
|
||||
s.writeU32(14, m_gpioDir);
|
||||
s.writeU32(15, m_gpioPins);
|
||||
s.writeString(16, m_title);
|
||||
|
||||
return s.final();
|
||||
}
|
||||
@ -110,6 +112,7 @@ bool USRPOutputSettings::deserialize(const QByteArray& data)
|
||||
m_gpioDir = uintval & 0xFF;
|
||||
d.readU32(15, &uintval, 0);
|
||||
m_gpioPins = uintval & 0xFF;
|
||||
d.readString(16, &m_title, "USRPOutput");
|
||||
|
||||
return true;
|
||||
}
|
||||
@ -123,6 +126,9 @@ bool USRPOutputSettings::deserialize(const QByteArray& data)
|
||||
|
||||
void USRPOutputSettings::applySettings(const QStringList& settingsKeys, const USRPOutputSettings& settings)
|
||||
{
|
||||
if (settingsKeys.contains("title")) {
|
||||
m_title = settings.m_title;
|
||||
}
|
||||
if (settingsKeys.contains("masterClockRate")) {
|
||||
m_masterClockRate = settings.m_masterClockRate;
|
||||
}
|
||||
@ -180,6 +186,9 @@ QString USRPOutputSettings::getDebugString(const QStringList& settingsKeys, bool
|
||||
{
|
||||
std::ostringstream ostr;
|
||||
|
||||
if (settingsKeys.contains("title") || force) {
|
||||
ostr << " m_title: " << m_title.toStdString();
|
||||
}
|
||||
if (settingsKeys.contains("masterClockRate") || force) {
|
||||
ostr << " m_masterClockRate: " << m_masterClockRate;
|
||||
}
|
||||
|
||||
@ -32,6 +32,7 @@
|
||||
*/
|
||||
struct USRPOutputSettings
|
||||
{
|
||||
QString m_title;
|
||||
int m_masterClockRate;
|
||||
// global settings to be saved
|
||||
uint64_t m_centerFrequency;
|
||||
|
||||
@ -1170,6 +1170,9 @@ void XTRXOutput::webapiUpdateDeviceSettings(
|
||||
const QStringList& deviceSettingsKeys,
|
||||
SWGSDRangel::SWGDeviceSettings& response)
|
||||
{
|
||||
if (deviceSettingsKeys.contains("title")) {
|
||||
settings.m_title = *response.getXtrxOutputSettings()->getTitle();
|
||||
}
|
||||
if (deviceSettingsKeys.contains("centerFrequency")) {
|
||||
settings.m_centerFrequency = response.getXtrxOutputSettings()->getCenterFrequency();
|
||||
}
|
||||
@ -1222,6 +1225,12 @@ void XTRXOutput::webapiUpdateDeviceSettings(
|
||||
|
||||
void XTRXOutput::webapiFormatDeviceSettings(SWGSDRangel::SWGDeviceSettings& response, const XTRXOutputSettings& settings)
|
||||
{
|
||||
if (response.getXtrxOutputSettings()->getTitle()) {
|
||||
*response.getXtrxOutputSettings()->getTitle() = settings.m_title;
|
||||
} else {
|
||||
response.getXtrxOutputSettings()->setTitle(new QString(settings.m_title));
|
||||
}
|
||||
|
||||
response.getXtrxOutputSettings()->setCenterFrequency(settings.m_centerFrequency);
|
||||
response.getXtrxOutputSettings()->setDevSampleRate(settings.m_devSampleRate);
|
||||
response.getXtrxOutputSettings()->setLog2HardInterp(settings.m_log2HardInterp);
|
||||
@ -1321,6 +1330,9 @@ void XTRXOutput::webapiReverseSendSettings(const QList<QString>& deviceSettingsK
|
||||
|
||||
// transfer data that has been modified. When force is on transfer all data except reverse API data
|
||||
|
||||
if (deviceSettingsKeys.contains("title") || force) {
|
||||
swgXtrxOutputSettings->setTitle(new QString(settings.m_title));
|
||||
}
|
||||
if (deviceSettingsKeys.contains("centerFrequency") || force) {
|
||||
swgXtrxOutputSettings->setCenterFrequency(settings.m_centerFrequency);
|
||||
}
|
||||
|
||||
@ -26,6 +26,7 @@
|
||||
#include "gui/glspectrum.h"
|
||||
#include "gui/basicdevicesettingsdialog.h"
|
||||
#include "gui/dialogpositioner.h"
|
||||
#include "mainspectrum/mainspectrumgui.h"
|
||||
#include "dsp/dspcommands.h"
|
||||
#include "device/deviceapi.h"
|
||||
#include "device/deviceuiset.h"
|
||||
@ -307,6 +308,8 @@ void XTRXOutputGUI::displaySampleRate()
|
||||
|
||||
void XTRXOutputGUI::displaySettings()
|
||||
{
|
||||
setTitle(m_settings.m_title);
|
||||
getDeviceUISet()->m_mainSpectrumGUI->setTitle(m_settings.m_title);
|
||||
ui->extClock->setExternalClockFrequency(m_settings.m_extClockFreq);
|
||||
ui->extClock->setExternalClockActive(m_settings.m_extClock);
|
||||
|
||||
@ -586,21 +589,30 @@ void XTRXOutputGUI::openDeviceSettingsDialog(const QPoint& p)
|
||||
dialog.setReverseAPIAddress(m_settings.m_reverseAPIAddress);
|
||||
dialog.setReverseAPIPort(m_settings.m_reverseAPIPort);
|
||||
dialog.setReverseAPIDeviceIndex(m_settings.m_reverseAPIDeviceIndex);
|
||||
dialog.setTitle(m_settings.m_title);
|
||||
dialog.setDefaultTitle(getDefaultTitle());
|
||||
|
||||
dialog.move(p);
|
||||
new DialogPositioner(&dialog, false);
|
||||
dialog.exec();
|
||||
|
||||
m_settings.m_useReverseAPI = dialog.useReverseAPI();
|
||||
m_settings.m_reverseAPIAddress = dialog.getReverseAPIAddress();
|
||||
m_settings.m_reverseAPIPort = dialog.getReverseAPIPort();
|
||||
m_settings.m_reverseAPIDeviceIndex = dialog.getReverseAPIDeviceIndex();
|
||||
m_settingsKeys.append("useReverseAPI");
|
||||
m_settingsKeys.append("reverseAPIAddress");
|
||||
m_settingsKeys.append("reverseAPIPort");
|
||||
m_settingsKeys.append("reverseAPIDeviceIndex");
|
||||
if (dialog.result() == QDialog::Accepted)
|
||||
{
|
||||
m_settings.m_title = dialog.getTitle();
|
||||
setTitle(m_settings.m_title);
|
||||
getDeviceUISet()->m_mainSpectrumGUI->setTitle(m_settings.m_title);
|
||||
m_settings.m_useReverseAPI = dialog.useReverseAPI();
|
||||
m_settings.m_reverseAPIAddress = dialog.getReverseAPIAddress();
|
||||
m_settings.m_reverseAPIPort = dialog.getReverseAPIPort();
|
||||
m_settings.m_reverseAPIDeviceIndex = dialog.getReverseAPIDeviceIndex();
|
||||
m_settingsKeys.append("title");
|
||||
m_settingsKeys.append("useReverseAPI");
|
||||
m_settingsKeys.append("reverseAPIAddress");
|
||||
m_settingsKeys.append("reverseAPIPort");
|
||||
m_settingsKeys.append("reverseAPIDeviceIndex");
|
||||
|
||||
sendSettings();
|
||||
sendSettings();
|
||||
}
|
||||
}
|
||||
|
||||
resetContextMenuType();
|
||||
|
||||
@ -28,6 +28,7 @@ XTRXOutputSettings::XTRXOutputSettings()
|
||||
|
||||
void XTRXOutputSettings::resetToDefaults()
|
||||
{
|
||||
m_title = "XTRXOutput";
|
||||
m_centerFrequency = 435000*1000;
|
||||
m_devSampleRate = 5e6;
|
||||
m_log2HardInterp = 2;
|
||||
@ -65,6 +66,7 @@ QByteArray XTRXOutputSettings::serialize() const
|
||||
s.writeString(13, m_reverseAPIAddress);
|
||||
s.writeU32(14, m_reverseAPIPort);
|
||||
s.writeU32(15, m_reverseAPIDeviceIndex);
|
||||
s.writeString(16, m_title);
|
||||
|
||||
return s.final();
|
||||
}
|
||||
@ -108,6 +110,7 @@ bool XTRXOutputSettings::deserialize(const QByteArray& data)
|
||||
|
||||
d.readU32(15, &uintval, 0);
|
||||
m_reverseAPIDeviceIndex = uintval > 99 ? 99 : uintval;
|
||||
d.readString(16, &m_title, "XTRXOutput");
|
||||
|
||||
return true;
|
||||
}
|
||||
@ -121,6 +124,9 @@ bool XTRXOutputSettings::deserialize(const QByteArray& data)
|
||||
|
||||
void XTRXOutputSettings::applySettings(const QStringList& settingsKeys, const XTRXOutputSettings& settings)
|
||||
{
|
||||
if (settingsKeys.contains("title")) {
|
||||
m_title = settings.m_title;
|
||||
}
|
||||
if (settingsKeys.contains("centerFrequency")) {
|
||||
m_centerFrequency = settings.m_centerFrequency;
|
||||
}
|
||||
@ -175,6 +181,9 @@ QString XTRXOutputSettings::getDebugString(const QStringList& settingsKeys, bool
|
||||
{
|
||||
std::ostringstream ostr;
|
||||
|
||||
if (settingsKeys.contains("title") || force) {
|
||||
ostr << " m_title: " << m_title.toStdString();
|
||||
}
|
||||
if (settingsKeys.contains("centerFrequency") || force) {
|
||||
ostr << " m_centerFrequency: " << m_centerFrequency;
|
||||
}
|
||||
|
||||
@ -34,6 +34,7 @@
|
||||
struct XTRXOutputSettings
|
||||
{
|
||||
// global settings to be saved
|
||||
QString m_title;
|
||||
uint64_t m_centerFrequency;
|
||||
double m_devSampleRate;
|
||||
uint32_t m_log2HardInterp;
|
||||
|
||||
@ -384,6 +384,9 @@ void AaroniaRTSAInput::webapiUpdateDeviceSettings(
|
||||
const QStringList& deviceSettingsKeys,
|
||||
SWGSDRangel::SWGDeviceSettings& response)
|
||||
{
|
||||
if (deviceSettingsKeys.contains("title")) {
|
||||
settings.m_title = *response.getAaroniaRtsaSettings()->getTitle();;
|
||||
}
|
||||
if (deviceSettingsKeys.contains("centerFrequency")) {
|
||||
settings.m_centerFrequency = response.getAaroniaRtsaSettings()->getCenterFrequency();
|
||||
}
|
||||
@ -420,6 +423,12 @@ int AaroniaRTSAInput::webapiReportGet(
|
||||
|
||||
void AaroniaRTSAInput::webapiFormatDeviceSettings(SWGSDRangel::SWGDeviceSettings& response, const AaroniaRTSAInputSettings& settings)
|
||||
{
|
||||
if (response.getAaroniaRtsaSettings()->getTitle()) {
|
||||
*response.getAaroniaRtsaSettings()->getTitle() = settings.m_title;
|
||||
} else {
|
||||
response.getAaroniaRtsaSettings()->setTitle(new QString(settings.m_title));
|
||||
}
|
||||
|
||||
response.getAaroniaRtsaSettings()->setCenterFrequency(settings.m_centerFrequency);
|
||||
response.getAaroniaRtsaSettings()->setSampleRate(settings.m_sampleRate);
|
||||
|
||||
@ -457,6 +466,9 @@ void AaroniaRTSAInput::webapiReverseSendSettings(const QList<QString>& deviceSet
|
||||
|
||||
// transfer data that has been modified. When force is on transfer all data except reverse API data
|
||||
|
||||
if (deviceSettingsKeys.contains("title") || force) {
|
||||
swgAaroniaRTSASettings->setTitle(new QString(settings.m_title));
|
||||
}
|
||||
if (deviceSettingsKeys.contains("centerFrequency") || force) {
|
||||
swgAaroniaRTSASettings->setCenterFrequency(settings.m_centerFrequency);
|
||||
}
|
||||
|
||||
@ -30,6 +30,7 @@
|
||||
#include "gui/glspectrum.h"
|
||||
#include "gui/basicdevicesettingsdialog.h"
|
||||
#include "gui/dialogpositioner.h"
|
||||
#include "mainspectrum/mainspectrumgui.h"
|
||||
#include "dsp/dspcommands.h"
|
||||
|
||||
#include "aaroniartsainputgui.h"
|
||||
@ -172,6 +173,8 @@ void AaroniaRTSAInputGui::displaySettings()
|
||||
|
||||
ui->centerFrequency->setValue(m_settings.m_centerFrequency / 1000);
|
||||
ui->serverAddress->setText(m_settings.m_serverAddress);
|
||||
setTitle(m_settings.m_title);
|
||||
getDeviceUISet()->m_mainSpectrumGUI->setTitle(m_settings.m_title + " Spectrum");
|
||||
|
||||
blockApplySettings(false);
|
||||
}
|
||||
@ -315,21 +318,30 @@ void AaroniaRTSAInputGui::openDeviceSettingsDialog(const QPoint& p)
|
||||
dialog.setReverseAPIAddress(m_settings.m_reverseAPIAddress);
|
||||
dialog.setReverseAPIPort(m_settings.m_reverseAPIPort);
|
||||
dialog.setReverseAPIDeviceIndex(m_settings.m_reverseAPIDeviceIndex);
|
||||
dialog.setTitle(m_settings.m_title);
|
||||
dialog.setDefaultTitle(getDefaultTitle());
|
||||
|
||||
dialog.move(p);
|
||||
new DialogPositioner(&dialog, false);
|
||||
dialog.exec();
|
||||
|
||||
m_settings.m_useReverseAPI = dialog.useReverseAPI();
|
||||
m_settings.m_reverseAPIAddress = dialog.getReverseAPIAddress();
|
||||
m_settings.m_reverseAPIPort = dialog.getReverseAPIPort();
|
||||
m_settings.m_reverseAPIDeviceIndex = dialog.getReverseAPIDeviceIndex();
|
||||
m_settingsKeys.append("useReverseAPI");
|
||||
m_settingsKeys.append("reverseAPIAddress");
|
||||
m_settingsKeys.append("reverseAPIPort");
|
||||
m_settingsKeys.append("reverseAPIDeviceIndex");
|
||||
if (dialog.result() == QDialog::Accepted)
|
||||
{
|
||||
m_settings.m_title = dialog.getTitle();
|
||||
setTitle(m_settings.m_title);
|
||||
getDeviceUISet()->m_mainSpectrumGUI->setTitle(m_settings.m_title);
|
||||
m_settings.m_useReverseAPI = dialog.useReverseAPI();
|
||||
m_settings.m_reverseAPIAddress = dialog.getReverseAPIAddress();
|
||||
m_settings.m_reverseAPIPort = dialog.getReverseAPIPort();
|
||||
m_settings.m_reverseAPIDeviceIndex = dialog.getReverseAPIDeviceIndex();
|
||||
m_settingsKeys.append("useReverseAPI");
|
||||
m_settingsKeys.append("reverseAPIAddress");
|
||||
m_settingsKeys.append("reverseAPIPort");
|
||||
m_settingsKeys.append("reverseAPIDeviceIndex");
|
||||
m_settingsKeys.append("title");
|
||||
|
||||
sendSettings();
|
||||
sendSettings();
|
||||
}
|
||||
}
|
||||
|
||||
resetContextMenuType();
|
||||
|
||||
@ -28,6 +28,7 @@ AaroniaRTSAInputSettings::AaroniaRTSAInputSettings()
|
||||
|
||||
void AaroniaRTSAInputSettings::resetToDefaults()
|
||||
{
|
||||
m_title = "AaroniaRTSAInput";
|
||||
m_centerFrequency = 1450000;
|
||||
m_sampleRate = 200000;
|
||||
m_serverAddress = "127.0.0.1:8073";
|
||||
@ -41,6 +42,7 @@ QByteArray AaroniaRTSAInputSettings::serialize() const
|
||||
{
|
||||
SimpleSerializer s(2);
|
||||
|
||||
s.writeString(1, m_title);
|
||||
s.writeString(2, m_serverAddress);
|
||||
s.writeS32(3, m_sampleRate);
|
||||
s.writeBool(100, m_useReverseAPI);
|
||||
@ -65,6 +67,7 @@ bool AaroniaRTSAInputSettings::deserialize(const QByteArray& data)
|
||||
{
|
||||
uint32_t utmp;
|
||||
|
||||
d.readString(1, &m_title, "AaroniaRTSAInput");
|
||||
d.readString(2, &m_serverAddress, "127.0.0.1:8073");
|
||||
d.readS32(3, &m_sampleRate, 200000);
|
||||
d.readBool(100, &m_useReverseAPI, false);
|
||||
@ -92,6 +95,9 @@ bool AaroniaRTSAInputSettings::deserialize(const QByteArray& data)
|
||||
|
||||
void AaroniaRTSAInputSettings::applySettings(const QStringList& settingsKeys, const AaroniaRTSAInputSettings& settings)
|
||||
{
|
||||
if (settingsKeys.contains("title")) {
|
||||
m_title = settings.m_title;
|
||||
}
|
||||
if (settingsKeys.contains("centerFrequency")) {
|
||||
m_centerFrequency = settings.m_centerFrequency;
|
||||
}
|
||||
@ -119,6 +125,9 @@ QString AaroniaRTSAInputSettings::getDebugString(const QStringList& settingsKeys
|
||||
{
|
||||
std::ostringstream ostr;
|
||||
|
||||
if (settingsKeys.contains("title") || force) {
|
||||
ostr << " m_title: " << m_title.toStdString();
|
||||
}
|
||||
if (settingsKeys.contains("centerFrequency") || force) {
|
||||
ostr << " m_centerFrequency: " << m_centerFrequency;
|
||||
}
|
||||
|
||||
@ -36,6 +36,7 @@ struct AaroniaRTSAInputSettings {
|
||||
ConnectionDisconnected // 4 - magenta
|
||||
};
|
||||
|
||||
QString m_title;
|
||||
quint64 m_centerFrequency;
|
||||
int m_sampleRate;
|
||||
QString m_serverAddress;
|
||||
|
||||
@ -32,6 +32,7 @@
|
||||
#include "gui/glspectrum.h"
|
||||
#include "gui/basicdevicesettingsdialog.h"
|
||||
#include "gui/dialogpositioner.h"
|
||||
#include "mainspectrum/mainspectrumgui.h"
|
||||
#include "dsp/dspcommands.h"
|
||||
|
||||
AirspyGui::AirspyGui(DeviceUISet *deviceUISet, QWidget* parent) :
|
||||
@ -201,6 +202,8 @@ void AirspyGui::updateFrequencyLimits()
|
||||
|
||||
void AirspyGui::displaySettings()
|
||||
{
|
||||
setTitle(m_settings.m_title);
|
||||
getDeviceUISet()->m_mainSpectrumGUI->setTitle(m_settings.m_title);
|
||||
ui->transverter->setDeltaFrequency(m_settings.m_transverterDeltaFrequency);
|
||||
ui->transverter->setDeltaFrequencyActive(m_settings.m_transverterMode);
|
||||
ui->transverter->setIQOrder(m_settings.m_iqOrder);
|
||||
@ -479,21 +482,29 @@ void AirspyGui::openDeviceSettingsDialog(const QPoint& p)
|
||||
dialog.setReverseAPIAddress(m_settings.m_reverseAPIAddress);
|
||||
dialog.setReverseAPIPort(m_settings.m_reverseAPIPort);
|
||||
dialog.setReverseAPIDeviceIndex(m_settings.m_reverseAPIDeviceIndex);
|
||||
dialog.setTitle(m_settings.m_title);
|
||||
dialog.setDefaultTitle(getDefaultTitle());
|
||||
|
||||
dialog.move(p);
|
||||
new DialogPositioner(&dialog, false);
|
||||
dialog.exec();
|
||||
|
||||
m_settings.m_useReverseAPI = dialog.useReverseAPI();
|
||||
m_settings.m_reverseAPIAddress = dialog.getReverseAPIAddress();
|
||||
m_settings.m_reverseAPIPort = dialog.getReverseAPIPort();
|
||||
m_settings.m_reverseAPIDeviceIndex = dialog.getReverseAPIDeviceIndex();
|
||||
if (dialog.result() == QDialog::Accepted)
|
||||
{
|
||||
m_settings.m_title = dialog.getTitle();
|
||||
getDeviceUISet()->m_mainSpectrumGUI->setTitle(m_settings.m_title);
|
||||
m_settings.m_useReverseAPI = dialog.useReverseAPI();
|
||||
m_settings.m_reverseAPIAddress = dialog.getReverseAPIAddress();
|
||||
m_settings.m_reverseAPIPort = dialog.getReverseAPIPort();
|
||||
m_settings.m_reverseAPIDeviceIndex = dialog.getReverseAPIDeviceIndex();
|
||||
|
||||
m_settingsKeys.append("useReverseAPI");
|
||||
m_settingsKeys.append("reverseAPIAddress");
|
||||
m_settingsKeys.append("reverseAPIPort");
|
||||
m_settingsKeys.append("reverseAPIDeviceIndex");
|
||||
sendSettings();
|
||||
m_settingsKeys.append("title");
|
||||
m_settingsKeys.append("useReverseAPI");
|
||||
m_settingsKeys.append("reverseAPIAddress");
|
||||
m_settingsKeys.append("reverseAPIPort");
|
||||
m_settingsKeys.append("reverseAPIDeviceIndex");
|
||||
sendSettings();
|
||||
}
|
||||
}
|
||||
|
||||
resetContextMenuType();
|
||||
|
||||
@ -664,6 +664,9 @@ void AirspyInput::webapiUpdateDeviceSettings(
|
||||
const QStringList& deviceSettingsKeys,
|
||||
SWGSDRangel::SWGDeviceSettings& response)
|
||||
{
|
||||
if (deviceSettingsKeys.contains("title")) {
|
||||
settings.m_title = *response.getAirspySettings()->getTitle();
|
||||
}
|
||||
if (deviceSettingsKeys.contains("centerFrequency")) {
|
||||
settings.m_centerFrequency = response.getAirspySettings()->getCenterFrequency();
|
||||
}
|
||||
@ -741,6 +744,12 @@ int AirspyInput::webapiReportGet(
|
||||
|
||||
void AirspyInput::webapiFormatDeviceSettings(SWGSDRangel::SWGDeviceSettings& response, const AirspySettings& settings)
|
||||
{
|
||||
if (response.getAirspySettings()->getTitle()) {
|
||||
*response.getAirspySettings()->getTitle() = settings.m_title;
|
||||
} else {
|
||||
response.getAirspySettings()->setTitle(new QString(settings.m_title));
|
||||
}
|
||||
|
||||
response.getAirspySettings()->setCenterFrequency(settings.m_centerFrequency);
|
||||
response.getAirspySettings()->setLOppmTenths(settings.m_LOppmTenths);
|
||||
response.getAirspySettings()->setDevSampleRateIndex(settings.m_devSampleRateIndex);
|
||||
@ -792,6 +801,9 @@ void AirspyInput::webapiReverseSendSettings(const QList<QString>& deviceSettings
|
||||
|
||||
// transfer data that has been modified. When force is on transfer all data except reverse API data
|
||||
|
||||
if (deviceSettingsKeys.contains("title") || force) {
|
||||
swgAirspySettings->setTitle(new QString(settings.m_title));
|
||||
}
|
||||
if (deviceSettingsKeys.contains("centerFrequency") || force) {
|
||||
swgAirspySettings->setCenterFrequency(settings.m_centerFrequency);
|
||||
}
|
||||
|
||||
@ -26,6 +26,7 @@ AirspySettings::AirspySettings()
|
||||
|
||||
void AirspySettings::resetToDefaults()
|
||||
{
|
||||
m_title = "Airspy";
|
||||
m_centerFrequency = 435000*1000;
|
||||
m_devSampleRateIndex = 0;
|
||||
m_LOppmTenths = 0;
|
||||
@ -71,6 +72,7 @@ QByteArray AirspySettings::serialize() const
|
||||
s.writeU32(17, m_reverseAPIPort);
|
||||
s.writeU32(18, m_reverseAPIDeviceIndex);
|
||||
s.writeBool(19, m_iqOrder);
|
||||
s.writeString(20, m_title);
|
||||
|
||||
return s.final();
|
||||
}
|
||||
@ -118,6 +120,7 @@ bool AirspySettings::deserialize(const QByteArray& data)
|
||||
d.readU32(18, &uintval, 0);
|
||||
m_reverseAPIDeviceIndex = uintval > 99 ? 99 : uintval;
|
||||
d.readBool(19, &m_iqOrder, true);
|
||||
d.readString(20, &m_title, "Airspy");
|
||||
|
||||
return true;
|
||||
}
|
||||
@ -130,6 +133,9 @@ bool AirspySettings::deserialize(const QByteArray& data)
|
||||
|
||||
void AirspySettings::applySettings(const QStringList& settingsKeys, const AirspySettings& settings)
|
||||
{
|
||||
if (settingsKeys.contains("title")) {
|
||||
m_title = settings.m_title;
|
||||
}
|
||||
if (settingsKeys.contains("centerFrequency")) {
|
||||
m_centerFrequency = settings.m_centerFrequency;
|
||||
}
|
||||
@ -196,6 +202,9 @@ QString AirspySettings::getDebugString(const QStringList& settingsKeys, bool for
|
||||
{
|
||||
std::ostringstream ostr;
|
||||
|
||||
if (settingsKeys.contains("title") || force) {
|
||||
ostr << " m_title: " << m_title.toStdString();
|
||||
}
|
||||
if (settingsKeys.contains("centerFrequency") || force) {
|
||||
ostr << " m_centerFrequency: " << m_centerFrequency;
|
||||
}
|
||||
|
||||
@ -30,6 +30,7 @@ struct AirspySettings {
|
||||
FC_POS_CENTER
|
||||
} fcPos_t;
|
||||
|
||||
QString m_title;
|
||||
quint64 m_centerFrequency;
|
||||
qint32 m_LOppmTenths;
|
||||
quint32 m_devSampleRateIndex;
|
||||
|
||||
@ -30,6 +30,7 @@
|
||||
#include "gui/glspectrum.h"
|
||||
#include "gui/basicdevicesettingsdialog.h"
|
||||
#include "gui/dialogpositioner.h"
|
||||
#include "mainspectrum/mainspectrumgui.h"
|
||||
#include "dsp/dspcommands.h"
|
||||
#include "airspyhfgui.h"
|
||||
|
||||
@ -216,6 +217,8 @@ void AirspyHFGui::displaySettings()
|
||||
{
|
||||
blockApplySettings(true);
|
||||
ui->band->blockSignals(true);
|
||||
setTitle(m_settings.m_title);
|
||||
getDeviceUISet()->m_mainSpectrumGUI->setTitle(m_settings.m_title);
|
||||
m_settings.m_bandIndex = m_settings.m_centerFrequency <= 31000000UL ? 0 : 1; // override
|
||||
ui->band->setCurrentIndex(m_settings.m_bandIndex);
|
||||
updateFrequencyLimits();
|
||||
@ -510,28 +513,37 @@ void AirspyHFGui::openDeviceSettingsDialog(const QPoint& p)
|
||||
dialog.setReverseAPIAddress(m_settings.m_reverseAPIAddress);
|
||||
dialog.setReverseAPIPort(m_settings.m_reverseAPIPort);
|
||||
dialog.setReverseAPIDeviceIndex(m_settings.m_reverseAPIDeviceIndex);
|
||||
dialog.setTitle(m_settings.m_title);
|
||||
dialog.setDefaultTitle(getDefaultTitle());
|
||||
|
||||
dialog.move(p);
|
||||
new DialogPositioner(&dialog, false);
|
||||
dialog.exec();
|
||||
|
||||
m_settings.m_useReverseAPI = dialog.useReverseAPI();
|
||||
m_settings.m_reverseAPIAddress = dialog.getReverseAPIAddress();
|
||||
m_settings.m_reverseAPIPort = dialog.getReverseAPIPort();
|
||||
m_settings.m_reverseAPIDeviceIndex = dialog.getReverseAPIDeviceIndex();
|
||||
m_settings.m_replayLength = dialog.getReplayLength();
|
||||
m_settings.m_replayStep = dialog.getReplayStep();
|
||||
displayReplayLength();
|
||||
displayReplayOffset();
|
||||
displayReplayStep();
|
||||
m_settingsKeys.append("useReverseAPI");
|
||||
m_settingsKeys.append("reverseAPIAddress");
|
||||
m_settingsKeys.append("reverseAPIPort");
|
||||
m_settingsKeys.append("reverseAPIDeviceIndex");
|
||||
m_settingsKeys.append("replayLength");
|
||||
m_settingsKeys.append("replayStep");
|
||||
if (dialog.result() == QDialog::Accepted)
|
||||
{
|
||||
m_settings.m_title = dialog.getTitle();
|
||||
setTitle(m_settings.m_title);
|
||||
getDeviceUISet()->m_mainSpectrumGUI->setTitle(m_settings.m_title);
|
||||
m_settings.m_useReverseAPI = dialog.useReverseAPI();
|
||||
m_settings.m_reverseAPIAddress = dialog.getReverseAPIAddress();
|
||||
m_settings.m_reverseAPIPort = dialog.getReverseAPIPort();
|
||||
m_settings.m_reverseAPIDeviceIndex = dialog.getReverseAPIDeviceIndex();
|
||||
m_settings.m_replayLength = dialog.getReplayLength();
|
||||
m_settings.m_replayStep = dialog.getReplayStep();
|
||||
displayReplayLength();
|
||||
displayReplayOffset();
|
||||
displayReplayStep();
|
||||
m_settingsKeys.append("title");
|
||||
m_settingsKeys.append("useReverseAPI");
|
||||
m_settingsKeys.append("reverseAPIAddress");
|
||||
m_settingsKeys.append("reverseAPIPort");
|
||||
m_settingsKeys.append("reverseAPIDeviceIndex");
|
||||
m_settingsKeys.append("replayLength");
|
||||
m_settingsKeys.append("replayStep");
|
||||
|
||||
sendSettings();
|
||||
sendSettings();
|
||||
}
|
||||
}
|
||||
|
||||
resetContextMenuType();
|
||||
|
||||
@ -681,6 +681,9 @@ void AirspyHFInput::webapiUpdateDeviceSettings(
|
||||
const QStringList& deviceSettingsKeys,
|
||||
SWGSDRangel::SWGDeviceSettings& response)
|
||||
{
|
||||
if (deviceSettingsKeys.contains("title")) {
|
||||
settings.m_title = *response.getAirspyHfSettings()->getTitle();
|
||||
}
|
||||
if (deviceSettingsKeys.contains("centerFrequency")) {
|
||||
settings.m_centerFrequency = response.getAirspyHfSettings()->getCenterFrequency();
|
||||
}
|
||||
@ -742,6 +745,12 @@ void AirspyHFInput::webapiUpdateDeviceSettings(
|
||||
|
||||
void AirspyHFInput::webapiFormatDeviceSettings(SWGSDRangel::SWGDeviceSettings& response, const AirspyHFSettings& settings)
|
||||
{
|
||||
if (response.getAirspyHfSettings()->getTitle()) {
|
||||
*response.getAirspyHfSettings()->getTitle() = settings.m_title;
|
||||
} else {
|
||||
response.getAirspyHfSettings()->setTitle(new QString(settings.m_title));
|
||||
}
|
||||
|
||||
response.getAirspyHfSettings()->setCenterFrequency(settings.m_centerFrequency);
|
||||
response.getAirspyHfSettings()->setDevSampleRateIndex(settings.m_devSampleRateIndex);
|
||||
response.getAirspyHfSettings()->setLOppmTenths(settings.m_LOppmTenths);
|
||||
@ -831,6 +840,9 @@ void AirspyHFInput::webapiReverseSendSettings(const QList<QString>& deviceSettin
|
||||
|
||||
// transfer data that has been modified. When force is on transfer all data except reverse API data
|
||||
|
||||
if (deviceSettingsKeys.contains("title") || force) {
|
||||
swgAirspyHFSettings->setTitle(new QString(settings.m_title));
|
||||
}
|
||||
if (deviceSettingsKeys.contains("centerFrequency") || force) {
|
||||
swgAirspyHFSettings->setCenterFrequency(settings.m_centerFrequency);
|
||||
}
|
||||
|
||||
@ -27,6 +27,7 @@ AirspyHFSettings::AirspyHFSettings()
|
||||
|
||||
void AirspyHFSettings::resetToDefaults()
|
||||
{
|
||||
m_title = "AirspyHF";
|
||||
m_centerFrequency = 7150*1000;
|
||||
m_LOppmTenths = 0;
|
||||
m_devSampleRateIndex = 0;
|
||||
@ -78,6 +79,7 @@ QByteArray AirspyHFSettings::serialize() const
|
||||
s.writeFloat(23, m_replayLength);
|
||||
s.writeFloat(24, m_replayStep);
|
||||
s.writeBool(25, m_replayLoop);
|
||||
s.writeString(26, m_title);
|
||||
|
||||
return s.final();
|
||||
}
|
||||
@ -129,6 +131,7 @@ bool AirspyHFSettings::deserialize(const QByteArray& data)
|
||||
d.readFloat(23, &m_replayLength, 20.0f);
|
||||
d.readFloat(24, &m_replayStep, 5.0f);
|
||||
d.readBool(25, &m_replayLoop, false);
|
||||
d.readString(26, &m_title, "AirspyHF");
|
||||
|
||||
return true;
|
||||
}
|
||||
@ -141,6 +144,9 @@ bool AirspyHFSettings::deserialize(const QByteArray& data)
|
||||
|
||||
void AirspyHFSettings::applySettings(const QStringList& settingsKeys, const AirspyHFSettings& settings)
|
||||
{
|
||||
if (settingsKeys.contains("title")) {
|
||||
m_title = settings.m_title;
|
||||
}
|
||||
if (settingsKeys.contains("centerFrequency")) {
|
||||
m_centerFrequency = settings.m_centerFrequency;
|
||||
}
|
||||
@ -216,6 +222,9 @@ QString AirspyHFSettings::getDebugString(const QStringList& settingsKeys, bool f
|
||||
{
|
||||
std::ostringstream ostr;
|
||||
|
||||
if (settingsKeys.contains("title") || force) {
|
||||
ostr << " m_title: " << m_title.toStdString();
|
||||
}
|
||||
if (settingsKeys.contains("centerFrequency") || force) {
|
||||
ostr << " m_centerFrequency: " << m_centerFrequency;
|
||||
}
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Loading…
x
Reference in New Issue
Block a user