mirror of
https://github.com/f4exb/sdrangel.git
synced 2026-06-04 06:54:39 -04:00
Make rollup state a serializable object so that it can be dumped in JSON format for the API. Prerequisite tp #1050
This commit is contained in:
@@ -351,6 +351,9 @@ void Interferometer::webapiUpdateChannelSettings(
|
||||
if (settings.m_channelMarker && channelSettingsKeys.contains("channelMarker")) {
|
||||
settings.m_channelMarker->updateFrom(channelSettingsKeys, response.getInterferometerSettings()->getChannelMarker());
|
||||
}
|
||||
if (settings.m_rollupState && channelSettingsKeys.contains("rollupState")) {
|
||||
settings.m_rollupState->updateFrom(channelSettingsKeys, response.getInterferometerSettings()->getRollupState());
|
||||
}
|
||||
}
|
||||
|
||||
void Interferometer::webapiFormatChannelSettings(SWGSDRangel::SWGChannelSettings& response, const InterferometerSettings& settings)
|
||||
@@ -418,6 +421,20 @@ void Interferometer::webapiFormatChannelSettings(SWGSDRangel::SWGChannelSettings
|
||||
response.getInterferometerSettings()->setChannelMarker(swgChannelMarker);
|
||||
}
|
||||
}
|
||||
|
||||
if (settings.m_rollupState)
|
||||
{
|
||||
if (response.getInterferometerSettings()->getRollupState())
|
||||
{
|
||||
settings.m_rollupState->formatTo(response.getInterferometerSettings()->getRollupState());
|
||||
}
|
||||
else
|
||||
{
|
||||
SWGSDRangel::SWGRollupState *swgRollupState = new SWGSDRangel::SWGRollupState();
|
||||
settings.m_rollupState->formatTo(swgRollupState);
|
||||
response.getInterferometerSettings()->setRollupState(swgRollupState);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
void Interferometer::webapiReverseSendSettings(QList<QString>& channelSettingsKeys, const InterferometerSettings& settings, bool force)
|
||||
@@ -516,6 +533,13 @@ void Interferometer::webapiFormatChannelSettings(
|
||||
settings.m_channelMarker->formatTo(swgChannelMarker);
|
||||
swgInterferometerSettings->setChannelMarker(swgChannelMarker);
|
||||
}
|
||||
|
||||
if (settings.m_rollupState && (channelSettingsKeys.contains("rollupState") || force))
|
||||
{
|
||||
SWGSDRangel::SWGRollupState *swgRollupState = new SWGSDRangel::SWGRollupState();
|
||||
settings.m_rollupState->formatTo(swgRollupState);
|
||||
swgInterferometerSettings->setRollupState(swgRollupState);
|
||||
}
|
||||
}
|
||||
|
||||
void Interferometer::networkManagerFinished(QNetworkReply *reply)
|
||||
|
||||
Reference in New Issue
Block a user