From 4349a7d622c9d8f90d8c98e5cef2ae9b82e1992d Mon Sep 17 00:00:00 2001 From: f4exb Date: Fri, 9 Jun 2017 00:43:06 +0200 Subject: [PATCH] SDRdaemonFEC: implemented value dial for sample rate --- .../sdrdaemonfec/sdrdaemonfecgui.cpp | 18 ++++--- .../sdrdaemonfec/sdrdaemonfecgui.h | 2 +- .../sdrdaemonfec/sdrdaemonfecgui.ui | 47 +++++++++++-------- 3 files changed, 36 insertions(+), 31 deletions(-) diff --git a/plugins/samplesource/sdrdaemonfec/sdrdaemonfecgui.cpp b/plugins/samplesource/sdrdaemonfec/sdrdaemonfecgui.cpp index fd64ffda5..779b753da 100644 --- a/plugins/samplesource/sdrdaemonfec/sdrdaemonfecgui.cpp +++ b/plugins/samplesource/sdrdaemonfec/sdrdaemonfecgui.cpp @@ -84,9 +84,13 @@ SDRdaemonFECGui::SDRdaemonFECGui(DeviceSourceAPI *deviceAPI, QWidget* parent) : m_startingTimeStamp.tv_sec = 0; m_startingTimeStamp.tv_usec = 0; ui->setupUi(this); + ui->centerFrequency->setColorMapper(ColorMapper(ColorMapper::GrayGold)); ui->centerFrequency->setValueRange(7, 0, pow(10,7)); + ui->sampleRate->setColorMapper(ColorMapper(ColorMapper::GrayGreenYellow)); + ui->sampleRate->setValueRange(7, 32000U, 9000000U); + connect(&m_statusTimer, SIGNAL(timeout()), this, SLOT(updateStatus())); m_statusTimer.start(500); connect(&(deviceAPI->getMainWindow()->getMasterTimer()), SIGNAL(timeout()), this, SLOT(tick())); @@ -310,7 +314,7 @@ void SDRdaemonFECGui::displaySettings() ui->freq->setText(QString::number(m_settings.m_centerFrequency / 1000)); ui->decim->setCurrentIndex(m_settings.m_log2Decim); ui->fcPos->setCurrentIndex(m_settings.m_fcPos); - ui->sampleRate->setText(QString::number(m_settings.m_sampleRate / 1000)); + ui->sampleRate->setValue(m_settings.m_sampleRate); ui->specificParms->setText(m_settings.m_specificParameters); ui->specificParms->setCursorPosition(0); ui->txDelayText->setText(tr("%1").arg(m_settings.m_txDelay*100)); @@ -554,16 +558,10 @@ void SDRdaemonFECGui::on_freq_returnPressed() } } -void SDRdaemonFECGui::on_sampleRate_returnPressed() +void SDRdaemonFECGui::on_sampleRate_changed(quint64 value) { - bool ok; - uint32_t srate = ui->sampleRate->text().toInt(&ok); - - if (ok) - { - m_settings.m_sampleRate = srate * 1000; - sendControl(); - } + m_settings.m_sampleRate = value; + sendControl(); } void SDRdaemonFECGui::on_specificParms_returnPressed() diff --git a/plugins/samplesource/sdrdaemonfec/sdrdaemonfecgui.h b/plugins/samplesource/sdrdaemonfec/sdrdaemonfecgui.h index c7ed7fbba..8634fa682 100644 --- a/plugins/samplesource/sdrdaemonfec/sdrdaemonfecgui.h +++ b/plugins/samplesource/sdrdaemonfec/sdrdaemonfecgui.h @@ -131,7 +131,7 @@ private slots: void on_controlPort_returnPressed(); void on_sendButton_clicked(bool checked); void on_freq_returnPressed(); - void on_sampleRate_returnPressed(); + void on_sampleRate_changed(quint64 value); void on_specificParms_returnPressed(); void on_decim_currentIndexChanged(int index); void on_fcPos_currentIndexChanged(int index); diff --git a/plugins/samplesource/sdrdaemonfec/sdrdaemonfecgui.ui b/plugins/samplesource/sdrdaemonfec/sdrdaemonfecgui.ui index b8fcda936..f1fbb241c 100644 --- a/plugins/samplesource/sdrdaemonfec/sdrdaemonfecgui.ui +++ b/plugins/samplesource/sdrdaemonfec/sdrdaemonfecgui.ui @@ -381,6 +381,9 @@ 24 + + Desired number of FEC blocks per frame + 64 @@ -398,7 +401,7 @@ - Given number of FEC blocks per frame + Desired number of FEC blocks per frame 00 @@ -450,7 +453,7 @@ - Minimum number of blocks retrieved per frame (green: all blocks received) + Minimum number of blocks retrieved per frame 000 @@ -464,7 +467,7 @@ - 24 + 22 0 @@ -472,7 +475,7 @@ Maximum number of recovery blocks used per frame - 000 + 00 Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter @@ -848,34 +851,38 @@ - + + + + 0 + 0 + + - 0 - 0 + 32 + 16 - - - 50 - 16777215 - + + + DejaVu Sans Mono + 12 + false + + + + PointingHandCursor - Sample rate (kS/s) - - - 00000 - - - Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter + Desired remote device sample rate - kS/s + S/s