1
0
mirror of https://github.com/f4exb/sdrangel.git synced 2026-06-01 13:47:01 -04:00

all source and sink plugins except FileSource and SDRdaemonSource: apply settings with force on construction

This commit is contained in:
f4exb
2017-12-24 11:05:16 +01:00
parent 351651c3e5
commit 8e07820e8e
13 changed files with 34 additions and 8 deletions
@@ -53,6 +53,8 @@ FCDProPlusInput::FCDProPlusInput(DeviceSourceAPI *deviceAPI) :
sprintf(recFileNameCStr, "test_%d.sdriq", m_deviceAPI->getDeviceUID());
m_fileSink = new FileRecord(std::string(recFileNameCStr));
m_deviceAPI->addSink(m_fileSink);
applySettings(m_settings, true);
}
FCDProPlusInput::~FCDProPlusInput()
@@ -218,7 +220,7 @@ bool FCDProPlusInput::handleMessage(const Message& message)
void FCDProPlusInput::applySettings(const FCDProPlusSettings& settings, bool force)
{
bool signalChange = false;
bool forwardChange = false;
if (force || (m_settings.m_centerFrequency != settings.m_centerFrequency)
|| (m_settings.m_transverterMode != settings.m_transverterMode)
@@ -236,8 +238,9 @@ void FCDProPlusInput::applySettings(const FCDProPlusSettings& settings, bool for
qDebug() << "FCDProPlusInput::applySettings: center freq: " << settings.m_centerFrequency << " Hz"
<< " device center freq: " << deviceCenterFrequency << " Hz";
forwardChange = (m_settings.m_centerFrequency != settings.m_centerFrequency) || force;
m_settings.m_centerFrequency = settings.m_centerFrequency;
signalChange = true;
}
if ((m_settings.m_lnaGain != settings.m_lnaGain) || force)
@@ -322,7 +325,7 @@ void FCDProPlusInput::applySettings(const FCDProPlusSettings& settings, bool for
m_deviceAPI->configureCorrections(m_settings.m_dcBlock, m_settings.m_iqImbalance);
}
if (signalChange)
if (forwardChange)
{
DSPSignalNotification *notif = new DSPSignalNotification(fcd_traits<ProPlus>::sampleRate, m_settings.m_centerFrequency);
m_fileSink->handleMessage(*notif); // forward to file sink