mirror of
https://github.com/f4exb/sdrangel.git
synced 2025-03-29 15:48:52 -04:00
New preset design (single). Applied to HackRF
This commit is contained in:
parent
2d9c0bcfd2
commit
ded446c43a
@ -123,8 +123,6 @@ private slots:
|
|||||||
void on_action_Stop_triggered();
|
void on_action_Stop_triggered();
|
||||||
void on_action_Start_Recording_triggered();
|
void on_action_Start_Recording_triggered();
|
||||||
void on_action_Stop_Recording_triggered();
|
void on_action_Stop_Recording_triggered();
|
||||||
void on_dcOffset_toggled(bool checked);
|
|
||||||
void on_iqImbalance_toggled(bool checked);
|
|
||||||
void on_action_View_Fullscreen_toggled(bool checked);
|
void on_action_View_Fullscreen_toggled(bool checked);
|
||||||
void on_presetSave_clicked();
|
void on_presetSave_clicked();
|
||||||
void on_presetUpdate_clicked();
|
void on_presetUpdate_clicked();
|
||||||
|
@ -37,15 +37,6 @@ public:
|
|||||||
void setLayout(const QByteArray& data) { m_layout = data; }
|
void setLayout(const QByteArray& data) { m_layout = data; }
|
||||||
const QByteArray& getLayout() const { return m_layout; }
|
const QByteArray& getLayout() const { return m_layout; }
|
||||||
|
|
||||||
void setDCOffsetCorrection(bool value) { m_dcOffsetCorrection = value; }
|
|
||||||
bool getDCOffsetCorrection() const { return m_dcOffsetCorrection; }
|
|
||||||
|
|
||||||
void setIQImbalanceCorrection(bool value) { m_iqImbalanceCorrection = value; }
|
|
||||||
bool getIQImbalanceCorrection() const { return m_iqImbalanceCorrection; }
|
|
||||||
|
|
||||||
void setScopeConfig(const QByteArray& data) { m_scopeConfig = data; }
|
|
||||||
const QByteArray& getScopeConfig() const { return m_scopeConfig; }
|
|
||||||
|
|
||||||
void clearChannels() { m_channelConfigs.clear(); }
|
void clearChannels() { m_channelConfigs.clear(); }
|
||||||
void addChannel(const QString& channel, const QByteArray& config) { m_channelConfigs.append(ChannelConfig(channel, config)); }
|
void addChannel(const QString& channel, const QByteArray& config) { m_channelConfigs.append(ChannelConfig(channel, config)); }
|
||||||
int getChannelCount() const { return m_channelConfigs.count(); }
|
int getChannelCount() const { return m_channelConfigs.count(); }
|
||||||
@ -67,7 +58,6 @@ protected:
|
|||||||
|
|
||||||
// general configuration
|
// general configuration
|
||||||
QByteArray m_spectrumConfig;
|
QByteArray m_spectrumConfig;
|
||||||
QByteArray m_scopeConfig;
|
|
||||||
|
|
||||||
// dc offset and i/q imbalance correction TODO: move it into the source data
|
// dc offset and i/q imbalance correction TODO: move it into the source data
|
||||||
bool m_dcOffsetCorrection;
|
bool m_dcOffsetCorrection;
|
||||||
|
@ -214,6 +214,9 @@ WFMDemodGUI::WFMDemodGUI(PluginAPI* pluginAPI, QWidget* parent) :
|
|||||||
m_basicSettingsShown(false)
|
m_basicSettingsShown(false)
|
||||||
{
|
{
|
||||||
ui->setupUi(this);
|
ui->setupUi(this);
|
||||||
|
ui->deltaFrequency->setColorMapper(ColorMapper(ColorMapper::ReverseGold));
|
||||||
|
ui->deltaFrequency->setValueRange(7, 0U, 9999999U);
|
||||||
|
|
||||||
setAttribute(Qt::WA_DeleteOnClose, true);
|
setAttribute(Qt::WA_DeleteOnClose, true);
|
||||||
connect(this, SIGNAL(widgetRolled(QWidget*,bool)), this, SLOT(onWidgetRolled(QWidget*,bool)));
|
connect(this, SIGNAL(widgetRolled(QWidget*,bool)), this, SLOT(onWidgetRolled(QWidget*,bool)));
|
||||||
connect(this, SIGNAL(menuDoubleClickEvent()), this, SLOT(onMenuDoubleClicked()));
|
connect(this, SIGNAL(menuDoubleClickEvent()), this, SLOT(onMenuDoubleClicked()));
|
||||||
|
@ -113,6 +113,9 @@ void HackRFGui::displaySettings()
|
|||||||
ui->LOppm->setValue(m_settings.m_LOppmTenths);
|
ui->LOppm->setValue(m_settings.m_LOppmTenths);
|
||||||
ui->LOppmText->setText(QString("%1").arg(QString::number(m_settings.m_LOppmTenths/10.0, 'f', 1)));
|
ui->LOppmText->setText(QString("%1").arg(QString::number(m_settings.m_LOppmTenths/10.0, 'f', 1)));
|
||||||
|
|
||||||
|
ui->dcOffset->setChecked(m_settings.m_dcBlock);
|
||||||
|
ui->iqImbalance->setChecked(m_settings.m_iqCorrection);
|
||||||
|
|
||||||
ui->sampleRate->setCurrentIndex(m_settings.m_devSampleRateIndex);
|
ui->sampleRate->setCurrentIndex(m_settings.m_devSampleRateIndex);
|
||||||
|
|
||||||
ui->biasT->setChecked(m_settings.m_biasT);
|
ui->biasT->setChecked(m_settings.m_biasT);
|
||||||
@ -197,6 +200,18 @@ void HackRFGui::on_LOppm_valueChanged(int value)
|
|||||||
sendSettings();
|
sendSettings();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void HackRFGui::on_dcOffset_toggled(bool checked)
|
||||||
|
{
|
||||||
|
m_settings.m_dcBlock = checked;
|
||||||
|
sendSettings();
|
||||||
|
}
|
||||||
|
|
||||||
|
void HackRFGui::on_iqImbalance_toggled(bool checked)
|
||||||
|
{
|
||||||
|
m_settings.m_iqCorrection = checked;
|
||||||
|
sendSettings();
|
||||||
|
}
|
||||||
|
|
||||||
void HackRFGui::on_sampleRate_currentIndexChanged(int index)
|
void HackRFGui::on_sampleRate_currentIndexChanged(int index)
|
||||||
{
|
{
|
||||||
m_settings.m_devSampleRateIndex = index;
|
m_settings.m_devSampleRateIndex = index;
|
||||||
|
@ -72,6 +72,8 @@ private:
|
|||||||
private slots:
|
private slots:
|
||||||
void on_centerFrequency_changed(quint64 value);
|
void on_centerFrequency_changed(quint64 value);
|
||||||
void on_LOppm_valueChanged(int value);
|
void on_LOppm_valueChanged(int value);
|
||||||
|
void on_dcOffset_toggled(bool checked);
|
||||||
|
void on_iqImbalance_toggled(bool checked);
|
||||||
void on_sampleRate_currentIndexChanged(int index);
|
void on_sampleRate_currentIndexChanged(int index);
|
||||||
void on_biasT_stateChanged(int state);
|
void on_biasT_stateChanged(int state);
|
||||||
void on_decim_valueChanged(int value);
|
void on_decim_valueChanged(int value);
|
||||||
|
@ -6,8 +6,8 @@
|
|||||||
<rect>
|
<rect>
|
||||||
<x>0</x>
|
<x>0</x>
|
||||||
<y>0</y>
|
<y>0</y>
|
||||||
<width>215</width>
|
<width>256</width>
|
||||||
<height>220</height>
|
<height>218</height>
|
||||||
</rect>
|
</rect>
|
||||||
</property>
|
</property>
|
||||||
<property name="sizePolicy">
|
<property name="sizePolicy">
|
||||||
@ -136,6 +136,37 @@
|
|||||||
</item>
|
</item>
|
||||||
</layout>
|
</layout>
|
||||||
</item>
|
</item>
|
||||||
|
<item>
|
||||||
|
<layout class="QGridLayout" name="gridLayout_corr">
|
||||||
|
<item row="0" column="1">
|
||||||
|
<widget class="ButtonSwitch" name="dcOffset">
|
||||||
|
<property name="toolTip">
|
||||||
|
<string>DC Offset auto correction</string>
|
||||||
|
</property>
|
||||||
|
<property name="text">
|
||||||
|
<string>DC Offset</string>
|
||||||
|
</property>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
|
<item row="0" column="2">
|
||||||
|
<widget class="ButtonSwitch" name="iqImbalance">
|
||||||
|
<property name="toolTip">
|
||||||
|
<string>IQ Imbalance auto correction</string>
|
||||||
|
</property>
|
||||||
|
<property name="text">
|
||||||
|
<string>IQ Imbalance</string>
|
||||||
|
</property>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
|
<item row="0" column="0">
|
||||||
|
<widget class="QLabel" name="corrLabel">
|
||||||
|
<property name="text">
|
||||||
|
<string>Auto corr</string>
|
||||||
|
</property>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
|
</layout>
|
||||||
|
</item>
|
||||||
<item>
|
<item>
|
||||||
<widget class="Line" name="line_freq">
|
<widget class="Line" name="line_freq">
|
||||||
<property name="orientation">
|
<property name="orientation">
|
||||||
@ -148,13 +179,6 @@
|
|||||||
<property name="spacing">
|
<property name="spacing">
|
||||||
<number>3</number>
|
<number>3</number>
|
||||||
</property>
|
</property>
|
||||||
<item row="0" column="2">
|
|
||||||
<widget class="QCheckBox" name="biasT">
|
|
||||||
<property name="text">
|
|
||||||
<string>Bias T</string>
|
|
||||||
</property>
|
|
||||||
</widget>
|
|
||||||
</item>
|
|
||||||
<item row="0" column="0">
|
<item row="0" column="0">
|
||||||
<widget class="QLabel" name="sampleRateLabel">
|
<widget class="QLabel" name="sampleRateLabel">
|
||||||
<property name="sizePolicy">
|
<property name="sizePolicy">
|
||||||
@ -175,6 +199,29 @@
|
|||||||
</property>
|
</property>
|
||||||
</widget>
|
</widget>
|
||||||
</item>
|
</item>
|
||||||
|
<item row="0" column="2">
|
||||||
|
<widget class="QLabel" name="bbFiltLabel">
|
||||||
|
<property name="text">
|
||||||
|
<string>BBF</string>
|
||||||
|
</property>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
|
<item row="0" column="3">
|
||||||
|
<widget class="QComboBox" name="bbFilter"/>
|
||||||
|
</item>
|
||||||
|
<item row="0" column="4">
|
||||||
|
<spacer name="horizontalSpacer">
|
||||||
|
<property name="orientation">
|
||||||
|
<enum>Qt::Horizontal</enum>
|
||||||
|
</property>
|
||||||
|
<property name="sizeHint" stdset="0">
|
||||||
|
<size>
|
||||||
|
<width>40</width>
|
||||||
|
<height>20</height>
|
||||||
|
</size>
|
||||||
|
</property>
|
||||||
|
</spacer>
|
||||||
|
</item>
|
||||||
</layout>
|
</layout>
|
||||||
</item>
|
</item>
|
||||||
<item>
|
<item>
|
||||||
@ -224,7 +271,7 @@
|
|||||||
</layout>
|
</layout>
|
||||||
</item>
|
</item>
|
||||||
<item>
|
<item>
|
||||||
<layout class="QGridLayout" name="gridLayout_fcPos" columnstretch="0,0,0,0">
|
<layout class="QGridLayout" name="gridLayout_fcPos" columnstretch="0,0,0,0,0">
|
||||||
<property name="spacing">
|
<property name="spacing">
|
||||||
<number>3</number>
|
<number>3</number>
|
||||||
</property>
|
</property>
|
||||||
@ -235,19 +282,6 @@
|
|||||||
</property>
|
</property>
|
||||||
</widget>
|
</widget>
|
||||||
</item>
|
</item>
|
||||||
<item row="0" column="3">
|
|
||||||
<spacer name="fcPosRightSpacer">
|
|
||||||
<property name="orientation">
|
|
||||||
<enum>Qt::Horizontal</enum>
|
|
||||||
</property>
|
|
||||||
<property name="sizeHint" stdset="0">
|
|
||||||
<size>
|
|
||||||
<width>40</width>
|
|
||||||
<height>20</height>
|
|
||||||
</size>
|
|
||||||
</property>
|
|
||||||
</spacer>
|
|
||||||
</item>
|
|
||||||
<item row="0" column="1">
|
<item row="0" column="1">
|
||||||
<widget class="QComboBox" name="fcPos">
|
<widget class="QComboBox" name="fcPos">
|
||||||
<item>
|
<item>
|
||||||
@ -268,6 +302,16 @@
|
|||||||
</widget>
|
</widget>
|
||||||
</item>
|
</item>
|
||||||
<item row="0" column="2">
|
<item row="0" column="2">
|
||||||
|
<widget class="QCheckBox" name="biasT">
|
||||||
|
<property name="layoutDirection">
|
||||||
|
<enum>Qt::RightToLeft</enum>
|
||||||
|
</property>
|
||||||
|
<property name="text">
|
||||||
|
<string>Bias T</string>
|
||||||
|
</property>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
|
<item row="0" column="3">
|
||||||
<widget class="QCheckBox" name="lnaExt">
|
<widget class="QCheckBox" name="lnaExt">
|
||||||
<property name="toolTip">
|
<property name="toolTip">
|
||||||
<string>Extra LNA +14dB</string>
|
<string>Extra LNA +14dB</string>
|
||||||
@ -350,36 +394,6 @@
|
|||||||
</item>
|
</item>
|
||||||
</layout>
|
</layout>
|
||||||
</item>
|
</item>
|
||||||
<item>
|
|
||||||
<layout class="QGridLayout" name="gridLayout_bbf">
|
|
||||||
<property name="spacing">
|
|
||||||
<number>3</number>
|
|
||||||
</property>
|
|
||||||
<item row="0" column="0">
|
|
||||||
<widget class="QLabel" name="bbFiltLabel">
|
|
||||||
<property name="text">
|
|
||||||
<string>BBF</string>
|
|
||||||
</property>
|
|
||||||
</widget>
|
|
||||||
</item>
|
|
||||||
<item row="0" column="1">
|
|
||||||
<widget class="QComboBox" name="bbFilter"/>
|
|
||||||
</item>
|
|
||||||
<item row="0" column="2">
|
|
||||||
<spacer name="bbSpacer">
|
|
||||||
<property name="orientation">
|
|
||||||
<enum>Qt::Horizontal</enum>
|
|
||||||
</property>
|
|
||||||
<property name="sizeHint" stdset="0">
|
|
||||||
<size>
|
|
||||||
<width>40</width>
|
|
||||||
<height>20</height>
|
|
||||||
</size>
|
|
||||||
</property>
|
|
||||||
</spacer>
|
|
||||||
</item>
|
|
||||||
</layout>
|
|
||||||
</item>
|
|
||||||
<item>
|
<item>
|
||||||
<layout class="QGridLayout" name="gridLayout_vga" columnstretch="0,0,0">
|
<layout class="QGridLayout" name="gridLayout_vga" columnstretch="0,0,0">
|
||||||
<property name="spacing">
|
<property name="spacing">
|
||||||
@ -441,6 +455,11 @@
|
|||||||
<header>gui/valuedial.h</header>
|
<header>gui/valuedial.h</header>
|
||||||
<container>1</container>
|
<container>1</container>
|
||||||
</customwidget>
|
</customwidget>
|
||||||
|
<customwidget>
|
||||||
|
<class>ButtonSwitch</class>
|
||||||
|
<extends>QToolButton</extends>
|
||||||
|
<header>gui/buttonswitch.h</header>
|
||||||
|
</customwidget>
|
||||||
</customwidgets>
|
</customwidgets>
|
||||||
<resources/>
|
<resources/>
|
||||||
<connections/>
|
<connections/>
|
||||||
|
@ -180,6 +180,18 @@ bool HackRFInput::applySettings(const HackRFSettings& settings, bool force)
|
|||||||
|
|
||||||
qDebug() << "HackRFInput::applySettings";
|
qDebug() << "HackRFInput::applySettings";
|
||||||
|
|
||||||
|
if (m_settings.m_dcBlock != settings.m_dcBlock)
|
||||||
|
{
|
||||||
|
m_settings.m_dcBlock = settings.m_dcBlock;
|
||||||
|
DSPEngine::instance()->configureCorrections(m_settings.m_dcBlock, m_settings.m_iqCorrection);
|
||||||
|
}
|
||||||
|
|
||||||
|
if (m_settings.m_iqCorrection != settings.m_iqCorrection)
|
||||||
|
{
|
||||||
|
m_settings.m_iqCorrection = settings.m_iqCorrection;
|
||||||
|
DSPEngine::instance()->configureCorrections(m_settings.m_dcBlock, m_settings.m_iqCorrection);
|
||||||
|
}
|
||||||
|
|
||||||
if ((m_settings.m_devSampleRateIndex != settings.m_devSampleRateIndex) || force)
|
if ((m_settings.m_devSampleRateIndex != settings.m_devSampleRateIndex) || force)
|
||||||
{
|
{
|
||||||
forwardChange = true;
|
forwardChange = true;
|
||||||
|
@ -82,6 +82,8 @@ bool HackRFSettings::deserialize(const QByteArray& data)
|
|||||||
d.readU32(7, &m_lnaGain, 16);
|
d.readU32(7, &m_lnaGain, 16);
|
||||||
d.readU32(8, &m_bandwidthIndex, 0);
|
d.readU32(8, &m_bandwidthIndex, 0);
|
||||||
d.readU32(9, &m_vgaGain, 16);
|
d.readU32(9, &m_vgaGain, 16);
|
||||||
|
d.readBool(10, &m_dcBlock, false);
|
||||||
|
d.readBool(11, &m_iqCorrection, false);
|
||||||
|
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
@ -68,21 +68,21 @@ MainWindow::MainWindow(QWidget* parent) :
|
|||||||
|
|
||||||
// work around broken Qt dock widget ordering
|
// work around broken Qt dock widget ordering
|
||||||
removeDockWidget(ui->inputDock);
|
removeDockWidget(ui->inputDock);
|
||||||
removeDockWidget(ui->processingDock);
|
removeDockWidget(ui->rxDisplayDock);
|
||||||
removeDockWidget(ui->presetDock);
|
removeDockWidget(ui->presetDock);
|
||||||
removeDockWidget(ui->channelDock);
|
removeDockWidget(ui->channelDock);
|
||||||
addDockWidget(Qt::LeftDockWidgetArea, ui->inputDock);
|
addDockWidget(Qt::LeftDockWidgetArea, ui->inputDock);
|
||||||
addDockWidget(Qt::LeftDockWidgetArea, ui->processingDock);
|
addDockWidget(Qt::LeftDockWidgetArea, ui->rxDisplayDock);
|
||||||
addDockWidget(Qt::LeftDockWidgetArea, ui->presetDock);
|
addDockWidget(Qt::LeftDockWidgetArea, ui->presetDock);
|
||||||
addDockWidget(Qt::RightDockWidgetArea, ui->channelDock);
|
addDockWidget(Qt::RightDockWidgetArea, ui->channelDock);
|
||||||
|
|
||||||
ui->inputDock->show();
|
ui->inputDock->show();
|
||||||
ui->processingDock->show();
|
ui->rxDisplayDock->show();
|
||||||
ui->presetDock->show();
|
ui->presetDock->show();
|
||||||
ui->channelDock->show();
|
ui->channelDock->show();
|
||||||
|
|
||||||
ui->menu_Window->addAction(ui->inputDock->toggleViewAction());
|
ui->menu_Window->addAction(ui->inputDock->toggleViewAction());
|
||||||
ui->menu_Window->addAction(ui->processingDock->toggleViewAction());
|
ui->menu_Window->addAction(ui->rxDisplayDock->toggleViewAction());
|
||||||
ui->menu_Window->addAction(ui->presetDock->toggleViewAction());
|
ui->menu_Window->addAction(ui->presetDock->toggleViewAction());
|
||||||
ui->menu_Window->addAction(ui->channelDock->toggleViewAction());
|
ui->menu_Window->addAction(ui->channelDock->toggleViewAction());
|
||||||
|
|
||||||
@ -211,8 +211,6 @@ void MainWindow::loadPresetSettings(const Preset* preset)
|
|||||||
qDebug() << "MainWindow::loadPresetSettings: preset: " << preset->getSource().toStdString().c_str();
|
qDebug() << "MainWindow::loadPresetSettings: preset: " << preset->getSource().toStdString().c_str();
|
||||||
|
|
||||||
ui->glSpectrumGUI->deserialize(preset->getSpectrumConfig());
|
ui->glSpectrumGUI->deserialize(preset->getSpectrumConfig());
|
||||||
ui->dcOffset->setChecked(preset->getDCOffsetCorrection());
|
|
||||||
ui->iqImbalance->setChecked(preset->getIQImbalanceCorrection());
|
|
||||||
|
|
||||||
m_pluginManager->loadSettings(preset);
|
m_pluginManager->loadSettings(preset);
|
||||||
|
|
||||||
@ -433,18 +431,6 @@ void MainWindow::on_action_Stop_Recording_triggered()
|
|||||||
m_fileSink->stopRecording();
|
m_fileSink->stopRecording();
|
||||||
}
|
}
|
||||||
|
|
||||||
void MainWindow::on_dcOffset_toggled(bool checked)
|
|
||||||
{
|
|
||||||
m_settings.getCurrent()->setDCOffsetCorrection(checked);
|
|
||||||
m_dspEngine->configureCorrections(m_settings.getCurrent()->getDCOffsetCorrection(), m_settings.getCurrent()->getIQImbalanceCorrection());
|
|
||||||
}
|
|
||||||
|
|
||||||
void MainWindow::on_iqImbalance_toggled(bool checked)
|
|
||||||
{
|
|
||||||
m_settings.getCurrent()->setIQImbalanceCorrection(checked);
|
|
||||||
m_dspEngine->configureCorrections(m_settings.getCurrent()->getDCOffsetCorrection(), m_settings.getCurrent()->getIQImbalanceCorrection());
|
|
||||||
}
|
|
||||||
|
|
||||||
void MainWindow::on_action_View_Fullscreen_toggled(bool checked)
|
void MainWindow::on_action_View_Fullscreen_toggled(bool checked)
|
||||||
{
|
{
|
||||||
if(checked)
|
if(checked)
|
||||||
|
@ -256,9 +256,9 @@
|
|||||||
</layout>
|
</layout>
|
||||||
</widget>
|
</widget>
|
||||||
</widget>
|
</widget>
|
||||||
<widget class="QDockWidget" name="processingDock">
|
<widget class="QDockWidget" name="rxDisplayDock">
|
||||||
<property name="windowTitle">
|
<property name="windowTitle">
|
||||||
<string>Processing and Display</string>
|
<string>Rx Display</string>
|
||||||
</property>
|
</property>
|
||||||
<attribute name="dockWidgetArea">
|
<attribute name="dockWidgetArea">
|
||||||
<number>1</number>
|
<number>1</number>
|
||||||
@ -286,45 +286,6 @@
|
|||||||
<property name="bottomMargin">
|
<property name="bottomMargin">
|
||||||
<number>2</number>
|
<number>2</number>
|
||||||
</property>
|
</property>
|
||||||
<item>
|
|
||||||
<layout class="QHBoxLayout" name="horizontalLayout">
|
|
||||||
<property name="spacing">
|
|
||||||
<number>3</number>
|
|
||||||
</property>
|
|
||||||
<item>
|
|
||||||
<widget class="ButtonSwitch" name="dcOffset">
|
|
||||||
<property name="sizePolicy">
|
|
||||||
<sizepolicy hsizetype="MinimumExpanding" vsizetype="Fixed">
|
|
||||||
<horstretch>0</horstretch>
|
|
||||||
<verstretch>0</verstretch>
|
|
||||||
</sizepolicy>
|
|
||||||
</property>
|
|
||||||
<property name="toolTip">
|
|
||||||
<string>Compensate DC offset</string>
|
|
||||||
</property>
|
|
||||||
<property name="text">
|
|
||||||
<string>DC Offset Corr</string>
|
|
||||||
</property>
|
|
||||||
</widget>
|
|
||||||
</item>
|
|
||||||
<item>
|
|
||||||
<widget class="ButtonSwitch" name="iqImbalance">
|
|
||||||
<property name="sizePolicy">
|
|
||||||
<sizepolicy hsizetype="MinimumExpanding" vsizetype="Fixed">
|
|
||||||
<horstretch>0</horstretch>
|
|
||||||
<verstretch>0</verstretch>
|
|
||||||
</sizepolicy>
|
|
||||||
</property>
|
|
||||||
<property name="toolTip">
|
|
||||||
<string>Compensate I/Q imbalance</string>
|
|
||||||
</property>
|
|
||||||
<property name="text">
|
|
||||||
<string>I/Q Imbal. Corr</string>
|
|
||||||
</property>
|
|
||||||
</widget>
|
|
||||||
</item>
|
|
||||||
</layout>
|
|
||||||
</item>
|
|
||||||
<item>
|
<item>
|
||||||
<widget class="GLSpectrumGUI" name="glSpectrumGUI" native="true"/>
|
<widget class="GLSpectrumGUI" name="glSpectrumGUI" native="true"/>
|
||||||
</item>
|
</item>
|
||||||
@ -492,11 +453,6 @@
|
|||||||
<header>gui/glspectrumgui.h</header>
|
<header>gui/glspectrumgui.h</header>
|
||||||
<container>1</container>
|
<container>1</container>
|
||||||
</customwidget>
|
</customwidget>
|
||||||
<customwidget>
|
|
||||||
<class>ButtonSwitch</class>
|
|
||||||
<extends>QToolButton</extends>
|
|
||||||
<header>gui/buttonswitch.h</header>
|
|
||||||
</customwidget>
|
|
||||||
<customwidget>
|
<customwidget>
|
||||||
<class>ChannelWindow</class>
|
<class>ChannelWindow</class>
|
||||||
<extends>QWidget</extends>
|
<extends>QWidget</extends>
|
||||||
@ -509,8 +465,6 @@
|
|||||||
<tabstop>presetSave</tabstop>
|
<tabstop>presetSave</tabstop>
|
||||||
<tabstop>presetDelete</tabstop>
|
<tabstop>presetDelete</tabstop>
|
||||||
<tabstop>presetLoad</tabstop>
|
<tabstop>presetLoad</tabstop>
|
||||||
<tabstop>dcOffset</tabstop>
|
|
||||||
<tabstop>iqImbalance</tabstop>
|
|
||||||
</tabstops>
|
</tabstops>
|
||||||
<resources>
|
<resources>
|
||||||
<include location="resources/res.qrc"/>
|
<include location="resources/res.qrc"/>
|
||||||
|
@ -14,9 +14,6 @@ void Preset::resetToDefaults()
|
|||||||
m_description = "no name";
|
m_description = "no name";
|
||||||
m_centerFrequency = 0;
|
m_centerFrequency = 0;
|
||||||
m_spectrumConfig.clear();
|
m_spectrumConfig.clear();
|
||||||
m_scopeConfig.clear();
|
|
||||||
m_dcOffsetCorrection = false;
|
|
||||||
m_iqImbalanceCorrection = false;
|
|
||||||
m_layout.clear();
|
m_layout.clear();
|
||||||
m_spectrumConfig.clear();
|
m_spectrumConfig.clear();
|
||||||
m_channelConfigs.clear();
|
m_channelConfigs.clear();
|
||||||
@ -34,11 +31,8 @@ QByteArray Preset::serialize() const
|
|||||||
s.writeU64(3, m_centerFrequency);
|
s.writeU64(3, m_centerFrequency);
|
||||||
s.writeBlob(4, m_layout);
|
s.writeBlob(4, m_layout);
|
||||||
s.writeBlob(5, m_spectrumConfig);
|
s.writeBlob(5, m_spectrumConfig);
|
||||||
s.writeBool(6, m_dcOffsetCorrection);
|
s.writeString(6, m_source);
|
||||||
s.writeBool(7, m_iqImbalanceCorrection);
|
s.writeBlob(7, m_sourceConfig);
|
||||||
s.writeBlob(8, m_scopeConfig);
|
|
||||||
s.writeString(9, m_source);
|
|
||||||
s.writeBlob(10, m_sourceConfig);
|
|
||||||
|
|
||||||
s.writeS32(200, m_channelConfigs.size());
|
s.writeS32(200, m_channelConfigs.size());
|
||||||
|
|
||||||
@ -68,13 +62,10 @@ bool Preset::deserialize(const QByteArray& data)
|
|||||||
d.readU64(3, &m_centerFrequency, 0);
|
d.readU64(3, &m_centerFrequency, 0);
|
||||||
d.readBlob(4, &m_layout);
|
d.readBlob(4, &m_layout);
|
||||||
d.readBlob(5, &m_spectrumConfig);
|
d.readBlob(5, &m_spectrumConfig);
|
||||||
d.readBool(6, &m_dcOffsetCorrection, false);
|
d.readString(6, &m_source);
|
||||||
d.readBool(7, &m_iqImbalanceCorrection, false);
|
d.readBlob(7, &m_sourceConfig);
|
||||||
d.readBlob(8, &m_scopeConfig);
|
|
||||||
d.readString(9, &m_source);
|
|
||||||
d.readBlob(10, &m_sourceConfig);
|
|
||||||
|
|
||||||
qDebug() << " m_group: " << m_group.toStdString().c_str();
|
qDebug() << "Preset::deserialize: m_group: " << m_group.toStdString().c_str();
|
||||||
|
|
||||||
qint32 channelCount = 0;
|
qint32 channelCount = 0;
|
||||||
d.readS32(200, &channelCount, 0);
|
d.readS32(200, &channelCount, 0);
|
||||||
|
Loading…
Reference in New Issue
Block a user