1
0
mirror of https://github.com/f4exb/sdrangel.git synced 2026-07-24 19:14:15 -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:
f4exb
2022-01-09 05:27:12 +01:00
parent e2fc5aa87c
commit 98b305f320
599 changed files with 6183 additions and 640 deletions
@@ -356,6 +356,9 @@ void RemoteSource::webapiUpdateChannelSettings(
if (settings.m_channelMarker && channelSettingsKeys.contains("channelMarker")) {
settings.m_channelMarker->updateFrom(channelSettingsKeys, response.getRemoteSourceSettings()->getChannelMarker());
}
if (settings.m_rollupState && channelSettingsKeys.contains("rollupState")) {
settings.m_rollupState->updateFrom(channelSettingsKeys, response.getRemoteSourceSettings()->getRollupState());
}
}
int RemoteSource::webapiReportGet(
@@ -413,6 +416,20 @@ void RemoteSource::webapiFormatChannelSettings(SWGSDRangel::SWGChannelSettings&
response.getRemoteSourceSettings()->setChannelMarker(swgChannelMarker);
}
}
if (settings.m_rollupState)
{
if (response.getRemoteSourceSettings()->getRollupState())
{
settings.m_rollupState->formatTo(response.getRemoteSourceSettings()->getRollupState());
}
else
{
SWGSDRangel::SWGRollupState *swgRollupState = new SWGSDRangel::SWGRollupState();
settings.m_rollupState->formatTo(swgRollupState);
response.getRemoteSourceSettings()->setRollupState(swgRollupState);
}
}
}
void RemoteSource::webapiFormatChannelReport(SWGSDRangel::SWGChannelReport& response)
@@ -528,6 +545,13 @@ void RemoteSource::webapiFormatChannelSettings(
settings.m_channelMarker->formatTo(swgChannelMarker);
swgRemoteSourceSettings->setChannelMarker(swgChannelMarker);
}
if (settings.m_rollupState && (channelSettingsKeys.contains("rollupState") || force))
{
SWGSDRangel::SWGRollupState *swgRollupState = new SWGSDRangel::SWGRollupState();
settings.m_rollupState->formatTo(swgRollupState);
swgRemoteSourceSettings->setRollupState(swgRollupState);
}
}
void RemoteSource::networkManagerFinished(QNetworkReply *reply)