From 313370aa443aa842b3c504c4599b509efeec8b7f Mon Sep 17 00:00:00 2001 From: Jon Beniston Date: Wed, 30 Aug 2023 17:34:54 +0100 Subject: [PATCH] Initialise PhaseDiscriminators state, to avoid outputting huge values. --- plugins/channelrx/demodpager/pagerdemodgui.cpp | 2 ++ sdrbase/dsp/phasediscri.h | 14 +++++++++++++- 2 files changed, 15 insertions(+), 1 deletion(-) diff --git a/plugins/channelrx/demodpager/pagerdemodgui.cpp b/plugins/channelrx/demodpager/pagerdemodgui.cpp index f2ae1d7e1..9dfd5a019 100644 --- a/plugins/channelrx/demodpager/pagerdemodgui.cpp +++ b/plugins/channelrx/demodpager/pagerdemodgui.cpp @@ -819,6 +819,8 @@ void PagerDemodGUI::makeUIConnections() QObject::connect(ui->logEnable, &ButtonSwitch::clicked, this, &PagerDemodGUI::on_logEnable_clicked); QObject::connect(ui->logFilename, &QToolButton::clicked, this, &PagerDemodGUI::on_logFilename_clicked); QObject::connect(ui->logOpen, &QToolButton::clicked, this, &PagerDemodGUI::on_logOpen_clicked); + QObject::connect(ui->channel1, QOverload::of(&QComboBox::currentIndexChanged), this, &PagerDemodGUI::on_channel1_currentIndexChanged); + QObject::connect(ui->channel2, QOverload::of(&QComboBox::currentIndexChanged), this, &PagerDemodGUI::on_channel2_currentIndexChanged); } void PagerDemodGUI::updateAbsoluteCenterFrequency() diff --git a/sdrbase/dsp/phasediscri.h b/sdrbase/dsp/phasediscri.h index cb3059936..bac25b71c 100644 --- a/sdrbase/dsp/phasediscri.h +++ b/sdrbase/dsp/phasediscri.h @@ -25,13 +25,25 @@ class PhaseDiscriminators { public: - /** + + PhaseDiscriminators() : + m_fmScaling(1.0f) + { + reset(); + } + + /** * Reset stored values */ void reset() { m_m1Sample = 0; m_m2Sample = 0; + m_fltPreviousI = 0.0f; + m_fltPreviousQ = 0.0f; + m_fltPreviousI2 = 0.0f; + m_fltPreviousQ2 = 0.0f; + m_prevArg = 0.0f; } /**