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

Source plugins: put a serializer and deserializer in the core plugin for server. NFM demod: fixed deserializer

This commit is contained in:
f4exb
2017-12-28 03:21:48 +01:00
parent 1ee6abc3d3
commit 8399baeb4e
36 changed files with 682 additions and 69 deletions
+46 -4
View File
@@ -217,6 +217,33 @@ void SDRPlayInput::stop()
m_running = false;
}
QByteArray SDRPlayInput::serialize() const
{
return m_settings.serialize();
}
bool SDRPlayInput::deserialize(const QByteArray& data)
{
bool success = true;
if (!m_settings.deserialize(data))
{
m_settings.resetToDefaults();
success = false;
}
MsgConfigureSDRPlay* message = MsgConfigureSDRPlay::create(m_settings, true);
m_inputMessageQueue.push(message);
if (m_guiMessageQueue)
{
MsgConfigureSDRPlay* messageToGUI = MsgConfigureSDRPlay::create(m_settings, true);
m_guiMessageQueue->push(messageToGUI);
}
return success;
}
const QString& SDRPlayInput::getDeviceDescription() const
{
return m_deviceDescription;
@@ -233,6 +260,21 @@ quint64 SDRPlayInput::getCenterFrequency() const
return m_settings.m_centerFrequency;
}
void SDRPlayInput::setCenterFrequency(qint64 centerFrequency)
{
SDRPlaySettings settings = m_settings;
settings.m_centerFrequency = centerFrequency;
MsgConfigureSDRPlay* message = MsgConfigureSDRPlay::create(settings, false);
m_inputMessageQueue.push(message);
if (m_guiMessageQueue)
{
MsgConfigureSDRPlay* messageToGUI = MsgConfigureSDRPlay::create(settings, false);
m_guiMessageQueue->push(messageToGUI);
}
}
bool SDRPlayInput::handleMessage(const Message& message)
{
if (MsgConfigureSDRPlay::match(message))
@@ -517,7 +559,7 @@ bool SDRPlayInput::applySettings(const SDRPlaySettings& settings, bool forwardCh
if(m_dev != 0)
{
if (setCenterFrequency(deviceCenterFrequency))
if (setDeviceCenterFrequency(deviceCenterFrequency))
{
qDebug() << "SDRPlayInput::applySettings: center freq: " << m_settings.m_centerFrequency << " Hz"
<< " device center freq: " << deviceCenterFrequency << " Hz"
@@ -588,7 +630,7 @@ bool SDRPlayInput::applySettings(const SDRPlaySettings& settings, bool forwardCh
return true;
}
bool SDRPlayInput::setCenterFrequency(quint64 freq_hz)
bool SDRPlayInput::setDeviceCenterFrequency(quint64 freq_hz)
{
qint64 df = ((qint64)freq_hz * m_settings.m_LOppmTenths) / 10000000LL;
freq_hz += df;
@@ -597,12 +639,12 @@ bool SDRPlayInput::setCenterFrequency(quint64 freq_hz)
if (r != 0)
{
qWarning("SDRPlayInput::setCenterFrequency: could not frequency to %llu Hz", freq_hz);
qWarning("SDRPlayInput::setDeviceCenterFrequency: could not frequency to %llu Hz", freq_hz);
return false;
}
else
{
qWarning("SDRPlayInput::setCenterFrequency: frequency set to %llu Hz", freq_hz);
qWarning("SDRPlayInput::setDeviceCenterFrequency: frequency set to %llu Hz", freq_hz);
return true;
}
}