1
0
mirror of https://github.com/f4exb/sdrangel.git synced 2024-11-25 01:18:38 -05:00

SSB demod DNR API support

This commit is contained in:
f4exb 2023-11-05 12:24:32 +01:00
parent 179cd71c54
commit 91815cc87e
10 changed files with 390 additions and 33 deletions

View File

@ -542,6 +542,21 @@ void SSBDemod::webapiUpdateChannelSettings(
if (channelSettingsKeys.contains("agcThresholdGate")) {
settings.m_agcThresholdGate = response.getSsbDemodSettings()->getAgcThresholdGate();
}
if (channelSettingsKeys.contains("dnr")) {
settings.m_dnr = response.getSsbDemodSettings()->getDnr() != 0;
}
if (channelSettingsKeys.contains("dnrAboveAvgFactor")) {
settings.m_dnrAboveAvgFactor = response.getSsbDemodSettings()->getDnrAboveAvgFactor();
}
if (channelSettingsKeys.contains("dnrSigmaFactor")) {
settings.m_dnrSigmaFactor = response.getSsbDemodSettings()->getDnrSigmaFactor();
}
if (channelSettingsKeys.contains("dnrNbPeaks")) {
settings.m_dnrNbPeaks = response.getSsbDemodSettings()->getDnrNbPeaks();
}
if (channelSettingsKeys.contains("dnrAlpha")) {
settings.m_dnrAlpha = response.getSsbDemodSettings()->getDnrAlpha();
}
if (channelSettingsKeys.contains("rgbColor")) {
settings.m_rgbColor = response.getSsbDemodSettings()->getRgbColor();
}
@ -610,6 +625,12 @@ void SSBDemod::webapiFormatChannelSettings(SWGSDRangel::SWGChannelSettings& resp
response.getSsbDemodSettings()->setAgcTimeLog2(settings.m_agcTimeLog2);
response.getSsbDemodSettings()->setAgcPowerThreshold(settings.m_agcPowerThreshold);
response.getSsbDemodSettings()->setAgcThresholdGate(settings.m_agcThresholdGate);
response.getSsbDemodSettings()->setDnr(settings.m_dnr ? 1 : 0);
response.getSsbDemodSettings()->setDnrScheme(settings.m_dnrScheme);
response.getSsbDemodSettings()->setDnrAboveAvgFactor(settings.m_dnrAboveAvgFactor);
response.getSsbDemodSettings()->setDnrSigmaFactor(settings.m_dnrSigmaFactor);
response.getSsbDemodSettings()->setDnrNbPeaks(settings.m_dnrNbPeaks);
response.getSsbDemodSettings()->setDnrAlpha(settings.m_dnrAlpha);
response.getSsbDemodSettings()->setRgbColor(settings.m_rgbColor);
if (response.getSsbDemodSettings()->getTitle()) {
@ -812,6 +833,21 @@ void SSBDemod::webapiFormatChannelSettings(
if (channelSettingsKeys.contains("agcThresholdGate") || force) {
swgSSBDemodSettings->setAgcThresholdGate(settings.m_agcThresholdGate);
}
if (channelSettingsKeys.contains("dnr")) {
swgSSBDemodSettings->setDnr(settings.m_dnr ? 1 : 0);
}
if (channelSettingsKeys.contains("dnrAboveAvgFactor")) {
swgSSBDemodSettings->setDnrAboveAvgFactor(settings.m_dnrAboveAvgFactor);
}
if (channelSettingsKeys.contains("dnrSigmaFactor")) {
swgSSBDemodSettings->setDnrSigmaFactor(settings.m_dnrSigmaFactor);
}
if (channelSettingsKeys.contains("dnrNbPeaks")) {
swgSSBDemodSettings->setDnrNbPeaks(settings.m_dnrNbPeaks);
}
if (channelSettingsKeys.contains("dnrAlpha")) {
swgSSBDemodSettings->setDnrAlpha(settings.m_dnrAlpha);
}
if (channelSettingsKeys.contains("rgbColor") || force) {
swgSSBDemodSettings->setRgbColor(settings.m_rgbColor);
}

View File

@ -1473,6 +1473,19 @@ margin-bottom: 20px;
"type" : "integer",
"description" : "Synchronous AM sidebands mode (DSB, USB, LSB)"
},
"frequencyMode" : {
"type" : "integer",
"description" : "(0 for Offset, 1 for MW, 2 for 25k, 3 for 8.33k)"
},
"frequency" : {
"type" : "integer",
"format" : "int64",
"description" : "Channel center frequency"
},
"snap" : {
"type" : "integer",
"description" : "Snap channel marker to channel center frequencies"
},
"streamIndex" : {
"type" : "integer",
"description" : "MIMO channel. Not relevant when connected to SI (single Rx)."
@ -13603,6 +13616,33 @@ margin-bottom: 20px;
"type" : "integer",
"description" : "Audio squelch gate in ms"
},
"dnr" : {
"type" : "integer",
"description" : "Toggle noise reduction:\n * 0 - Noise reduction off\n * 1 - Noise reduction on\n"
},
"dnrScheme" : {
"type" : "integer",
"description" : "Noise reduction scheme:\n * 0 - Average of magnitudes\n * 1 - Average and standard deviation of magnitudes\n * 2 - Magnitude maxima (peaks)\n"
},
"dnrAboveAvgFactor" : {
"type" : "number",
"format" : "float",
"description" : "Multiplier of the average to deteermine magnitude threshold in average scheme"
},
"dnrSigmaFactor" : {
"type" : "number",
"format" : "float",
"description" : "Standard deviation (sigma) multiplier to deteermine magnitude threshold in average and standard deviation scheme"
},
"dnrNbPeaks" : {
"type" : "integer",
"description" : "Number of magnitude peak maxima selected in peaks scheme"
},
"dnrAlpha" : {
"type" : "number",
"format" : "float",
"description" : "Smoothing constant (alpha) of the exponential smoothing filter. Must be between 0 and 1."
},
"rgbColor" : {
"type" : "integer"
},
@ -58361,7 +58401,7 @@ except ApiException as e:
</div>
<div id="generator">
<div class="content">
Generated 2023-10-26T10:32:08.802+02:00
Generated 2023-11-05T10:45:45.965+01:00
</div>
</div>
</div>

View File

@ -37,6 +37,16 @@ AMDemodSettings:
syncAMOperation:
description: Synchronous AM sidebands mode (DSB, USB, LSB)
type: integer
frequencyMode:
description: (0 for Offset, 1 for MW, 2 for 25k, 3 for 8.33k)
type: integer
frequency:
description: Channel center frequency
type: integer
format: int64
snap:
description: Snap channel marker to channel center frequencies
type: integer
streamIndex:
description: MIMO channel. Not relevant when connected to SI (single Rx).
type: integer

View File

@ -57,6 +57,34 @@ SSBDemodSettings:
agcThresholdGate:
description: Audio squelch gate in ms
type: integer
dnr:
type: integer
description: >
Toggle noise reduction:
* 0 - Noise reduction off
* 1 - Noise reduction on
dnrScheme:
type: integer
description: >
Noise reduction scheme:
* 0 - Average of magnitudes
* 1 - Average and standard deviation of magnitudes
* 2 - Magnitude maxima (peaks)
dnrAboveAvgFactor:
type: number
format: float
description: Multiplier of the average to deteermine magnitude threshold in average scheme
dnrSigmaFactor:
type: number
format: float
description: Standard deviation (sigma) multiplier to deteermine magnitude threshold in average and standard deviation scheme
dnrNbPeaks:
type: integer
description: Number of magnitude peak maxima selected in peaks scheme
dnrAlpha:
type: number
format: float
description: Smoothing constant (alpha) of the exponential smoothing filter. Must be between 0 and 1.
rgbColor:
type: integer
title:

View File

@ -57,6 +57,34 @@ SSBDemodSettings:
agcThresholdGate:
description: Audio squelch gate in ms
type: integer
dnr:
type: integer
description: >
Toggle noise reduction:
* 0 - Noise reduction off
* 1 - Noise reduction on
dnrScheme:
type: integer
description: >
Noise reduction scheme:
* 0 - Average of magnitudes
* 1 - Average and standard deviation of magnitudes
* 2 - Magnitude maxima (peaks)
dnrAboveAvgFactor:
type: number
format: float
description: Multiplier of the average to deteermine magnitude threshold in average scheme
dnrSigmaFactor:
type: number
format: float
description: Standard deviation (sigma) multiplier to deteermine magnitude threshold in average and standard deviation scheme
dnrNbPeaks:
type: integer
description: Number of magnitude peak maxima selected in peaks scheme
dnrAlpha:
type: number
format: float
description: Smoothing constant (alpha) of the exponential smoothing filter. Must be between 0 and 1.
rgbColor:
type: integer
title:

View File

@ -1473,6 +1473,19 @@ margin-bottom: 20px;
"type" : "integer",
"description" : "Synchronous AM sidebands mode (DSB, USB, LSB)"
},
"frequencyMode" : {
"type" : "integer",
"description" : "(0 for Offset, 1 for MW, 2 for 25k, 3 for 8.33k)"
},
"frequency" : {
"type" : "integer",
"format" : "int64",
"description" : "Channel center frequency"
},
"snap" : {
"type" : "integer",
"description" : "Snap channel marker to channel center frequencies"
},
"streamIndex" : {
"type" : "integer",
"description" : "MIMO channel. Not relevant when connected to SI (single Rx)."
@ -13603,6 +13616,33 @@ margin-bottom: 20px;
"type" : "integer",
"description" : "Audio squelch gate in ms"
},
"dnr" : {
"type" : "integer",
"description" : "Toggle noise reduction:\n * 0 - Noise reduction off\n * 1 - Noise reduction on\n"
},
"dnrScheme" : {
"type" : "integer",
"description" : "Noise reduction scheme:\n * 0 - Average of magnitudes\n * 1 - Average and standard deviation of magnitudes\n * 2 - Magnitude maxima (peaks)\n"
},
"dnrAboveAvgFactor" : {
"type" : "number",
"format" : "float",
"description" : "Multiplier of the average to deteermine magnitude threshold in average scheme"
},
"dnrSigmaFactor" : {
"type" : "number",
"format" : "float",
"description" : "Standard deviation (sigma) multiplier to deteermine magnitude threshold in average and standard deviation scheme"
},
"dnrNbPeaks" : {
"type" : "integer",
"description" : "Number of magnitude peak maxima selected in peaks scheme"
},
"dnrAlpha" : {
"type" : "number",
"format" : "float",
"description" : "Smoothing constant (alpha) of the exponential smoothing filter. Must be between 0 and 1."
},
"rgbColor" : {
"type" : "integer"
},
@ -58361,7 +58401,7 @@ except ApiException as e:
</div>
<div id="generator">
<div class="content">
Generated 2023-10-26T10:32:08.802+02:00
Generated 2023-11-05T10:45:45.965+01:00
</div>
</div>
</div>

View File

@ -1,6 +1,6 @@
/**
* SDRangel
* This is the web REST/JSON API of SDRangel SDR software. SDRangel is an Open Source Qt5/OpenGL 3.0+ (4.3+ in Windows) GUI and server Software Defined Radio and signal analyzer in software. It supports Airspy, BladeRF, HackRF, LimeSDR, PlutoSDR, RTL-SDR, SDRplay RSP1 and FunCube --- Limitations and specifcities: * In SDRangel GUI the first Rx device set cannot be deleted. Conversely the server starts with no device sets and its number of device sets can be reduced to zero by as many calls as necessary to /sdrangel/deviceset with DELETE method. * Preset import and export from/to file is a server only feature. * Device set focus is a GUI only feature. * The following channels are not implemented (status 501 is returned): ATV and DATV demodulators, Channel Analyzer NG, LoRa demodulator * The device settings and report structures contains only the sub-structure corresponding to the device type. The DeviceSettings and DeviceReport structures documented here shows all of them but only one will be or should be present at a time * The channel settings and report structures contains only the sub-structure corresponding to the channel type. The ChannelSettings and ChannelReport structures documented here shows all of them but only one will be or should be present at a time ---
* This is the web REST/JSON API of SDRangel SDR software. SDRangel is an Open Source Qt5/OpenGL 3.0+ (4.3+ in Windows) GUI and server Software Defined Radio and signal analyzer in software. It supports Airspy, BladeRF, HackRF, LimeSDR, PlutoSDR, RTL-SDR, SDRplay RSP1 and FunCube --- Limitations and specifcities: * In SDRangel GUI the first Rx device set cannot be deleted. Conversely the server starts with no device sets and its number of device sets can be reduced to zero by as many calls as necessary to /sdrangel/deviceset with DELETE method. * Preset import and export from/to file is a server only feature. * Device set focus is a GUI only feature. * The following channels are not implemented (status 501 is returned): ATV and DATV demodulators, Channel Analyzer NG, LoRa demodulator * The device settings and report structures contains only the sub-structure corresponding to the device type. The DeviceSettings and DeviceReport structures documented here shows all of them but only one will be or should be present at a time * The channel settings and report structures contains only the sub-structure corresponding to the channel type. The ChannelSettings and ChannelReport structures documented here shows all of them but only one will be or should be present at a time ---
*
* OpenAPI spec version: 7.0.0
* Contact: f4exb06@gmail.com
@ -140,10 +140,10 @@ SWGAMDemodSettings::cleanup() {
if(title != nullptr) {
if(title != nullptr) {
delete title;
}
if(audio_device_name != nullptr) {
if(audio_device_name != nullptr) {
delete audio_device_name;
}
@ -153,16 +153,16 @@ SWGAMDemodSettings::cleanup() {
if(reverse_api_address != nullptr) {
if(reverse_api_address != nullptr) {
delete reverse_api_address;
}
if(channel_marker != nullptr) {
if(channel_marker != nullptr) {
delete channel_marker;
}
if(rollup_state != nullptr) {
if(rollup_state != nullptr) {
delete rollup_state;
}
}
@ -179,51 +179,51 @@ SWGAMDemodSettings::fromJson(QString &json) {
void
SWGAMDemodSettings::fromJsonObject(QJsonObject &pJson) {
::SWGSDRangel::setValue(&input_frequency_offset, pJson["inputFrequencyOffset"], "qint64", "");
::SWGSDRangel::setValue(&rf_bandwidth, pJson["rfBandwidth"], "float", "");
::SWGSDRangel::setValue(&af_bandwidth, pJson["afBandwidth"], "float", "");
::SWGSDRangel::setValue(&squelch, pJson["squelch"], "float", "");
::SWGSDRangel::setValue(&volume, pJson["volume"], "float", "");
::SWGSDRangel::setValue(&audio_mute, pJson["audioMute"], "qint32", "");
::SWGSDRangel::setValue(&bandpass_enable, pJson["bandpassEnable"], "qint32", "");
::SWGSDRangel::setValue(&rgb_color, pJson["rgbColor"], "qint32", "");
::SWGSDRangel::setValue(&title, pJson["title"], "QString", "QString");
::SWGSDRangel::setValue(&audio_device_name, pJson["audioDeviceName"], "QString", "QString");
::SWGSDRangel::setValue(&pll, pJson["pll"], "qint32", "");
::SWGSDRangel::setValue(&sync_am_operation, pJson["syncAMOperation"], "qint32", "");
::SWGSDRangel::setValue(&frequency_mode, pJson["frequencyMode"], "qint32", "");
::SWGSDRangel::setValue(&frequency, pJson["frequency"], "qint64", "");
::SWGSDRangel::setValue(&snap, pJson["snap"], "qint32", "");
::SWGSDRangel::setValue(&stream_index, pJson["streamIndex"], "qint32", "");
::SWGSDRangel::setValue(&use_reverse_api, pJson["useReverseAPI"], "qint32", "");
::SWGSDRangel::setValue(&reverse_api_address, pJson["reverseAPIAddress"], "QString", "QString");
::SWGSDRangel::setValue(&reverse_api_port, pJson["reverseAPIPort"], "qint32", "");
::SWGSDRangel::setValue(&reverse_api_device_index, pJson["reverseAPIDeviceIndex"], "qint32", "");
::SWGSDRangel::setValue(&reverse_api_channel_index, pJson["reverseAPIChannelIndex"], "qint32", "");
::SWGSDRangel::setValue(&channel_marker, pJson["channelMarker"], "SWGChannelMarker", "SWGChannelMarker");
::SWGSDRangel::setValue(&rollup_state, pJson["rollupState"], "SWGRollupState", "SWGRollupState");
}
QString
@ -621,3 +621,4 @@ SWGAMDemodSettings::isSet(){
return isObjectUpdated;
}
}

View File

@ -1,6 +1,6 @@
/**
* SDRangel
* This is the web REST/JSON API of SDRangel SDR software. SDRangel is an Open Source Qt5/OpenGL 3.0+ (4.3+ in Windows) GUI and server Software Defined Radio and signal analyzer in software. It supports Airspy, BladeRF, HackRF, LimeSDR, PlutoSDR, RTL-SDR, SDRplay RSP1 and FunCube --- Limitations and specifcities: * In SDRangel GUI the first Rx device set cannot be deleted. Conversely the server starts with no device sets and its number of device sets can be reduced to zero by as many calls as necessary to /sdrangel/deviceset with DELETE method. * Preset import and export from/to file is a server only feature. * Device set focus is a GUI only feature. * The following channels are not implemented (status 501 is returned): ATV and DATV demodulators, Channel Analyzer NG, LoRa demodulator * The device settings and report structures contains only the sub-structure corresponding to the device type. The DeviceSettings and DeviceReport structures documented here shows all of them but only one will be or should be present at a time * The channel settings and report structures contains only the sub-structure corresponding to the channel type. The ChannelSettings and ChannelReport structures documented here shows all of them but only one will be or should be present at a time ---
* This is the web REST/JSON API of SDRangel SDR software. SDRangel is an Open Source Qt5/OpenGL 3.0+ (4.3+ in Windows) GUI and server Software Defined Radio and signal analyzer in software. It supports Airspy, BladeRF, HackRF, LimeSDR, PlutoSDR, RTL-SDR, SDRplay RSP1 and FunCube --- Limitations and specifcities: * In SDRangel GUI the first Rx device set cannot be deleted. Conversely the server starts with no device sets and its number of device sets can be reduced to zero by as many calls as necessary to /sdrangel/deviceset with DELETE method. * Preset import and export from/to file is a server only feature. * Device set focus is a GUI only feature. * The following channels are not implemented (status 501 is returned): ATV and DATV demodulators, Channel Analyzer NG, LoRa demodulator * The device settings and report structures contains only the sub-structure corresponding to the device type. The DeviceSettings and DeviceReport structures documented here shows all of them but only one will be or should be present at a time * The channel settings and report structures contains only the sub-structure corresponding to the channel type. The ChannelSettings and ChannelReport structures documented here shows all of them but only one will be or should be present at a time ---
*
* OpenAPI spec version: 7.0.0
* Contact: f4exb06@gmail.com
@ -190,4 +190,4 @@ private:
}
#endif /* SWGAMDemodSettings_H_ */
#endif /* SWGAMDemodSettings_H_ */

View File

@ -60,6 +60,18 @@ SWGSSBDemodSettings::SWGSSBDemodSettings() {
m_agc_power_threshold_isSet = false;
agc_threshold_gate = 0;
m_agc_threshold_gate_isSet = false;
dnr = 0;
m_dnr_isSet = false;
dnr_scheme = 0;
m_dnr_scheme_isSet = false;
dnr_above_avg_factor = 0.0f;
m_dnr_above_avg_factor_isSet = false;
dnr_sigma_factor = 0.0f;
m_dnr_sigma_factor_isSet = false;
dnr_nb_peaks = 0;
m_dnr_nb_peaks_isSet = false;
dnr_alpha = 0.0f;
m_dnr_alpha_isSet = false;
rgb_color = 0;
m_rgb_color_isSet = false;
title = nullptr;
@ -124,6 +136,18 @@ SWGSSBDemodSettings::init() {
m_agc_power_threshold_isSet = false;
agc_threshold_gate = 0;
m_agc_threshold_gate_isSet = false;
dnr = 0;
m_dnr_isSet = false;
dnr_scheme = 0;
m_dnr_scheme_isSet = false;
dnr_above_avg_factor = 0.0f;
m_dnr_above_avg_factor_isSet = false;
dnr_sigma_factor = 0.0f;
m_dnr_sigma_factor_isSet = false;
dnr_nb_peaks = 0;
m_dnr_nb_peaks_isSet = false;
dnr_alpha = 0.0f;
m_dnr_alpha_isSet = false;
rgb_color = 0;
m_rgb_color_isSet = false;
title = new QString("");
@ -166,6 +190,12 @@ SWGSSBDemodSettings::cleanup() {
@ -237,6 +267,18 @@ SWGSSBDemodSettings::fromJsonObject(QJsonObject &pJson) {
::SWGSDRangel::setValue(&agc_threshold_gate, pJson["agcThresholdGate"], "qint32", "");
::SWGSDRangel::setValue(&dnr, pJson["dnr"], "qint32", "");
::SWGSDRangel::setValue(&dnr_scheme, pJson["dnrScheme"], "qint32", "");
::SWGSDRangel::setValue(&dnr_above_avg_factor, pJson["dnrAboveAvgFactor"], "float", "");
::SWGSDRangel::setValue(&dnr_sigma_factor, pJson["dnrSigmaFactor"], "float", "");
::SWGSDRangel::setValue(&dnr_nb_peaks, pJson["dnrNbPeaks"], "qint32", "");
::SWGSDRangel::setValue(&dnr_alpha, pJson["dnrAlpha"], "float", "");
::SWGSDRangel::setValue(&rgb_color, pJson["rgbColor"], "qint32", "");
::SWGSDRangel::setValue(&title, pJson["title"], "QString", "QString");
@ -325,6 +367,24 @@ SWGSSBDemodSettings::asJsonObject() {
if(m_agc_threshold_gate_isSet){
obj->insert("agcThresholdGate", QJsonValue(agc_threshold_gate));
}
if(m_dnr_isSet){
obj->insert("dnr", QJsonValue(dnr));
}
if(m_dnr_scheme_isSet){
obj->insert("dnrScheme", QJsonValue(dnr_scheme));
}
if(m_dnr_above_avg_factor_isSet){
obj->insert("dnrAboveAvgFactor", QJsonValue(dnr_above_avg_factor));
}
if(m_dnr_sigma_factor_isSet){
obj->insert("dnrSigmaFactor", QJsonValue(dnr_sigma_factor));
}
if(m_dnr_nb_peaks_isSet){
obj->insert("dnrNbPeaks", QJsonValue(dnr_nb_peaks));
}
if(m_dnr_alpha_isSet){
obj->insert("dnrAlpha", QJsonValue(dnr_alpha));
}
if(m_rgb_color_isSet){
obj->insert("rgbColor", QJsonValue(rgb_color));
}
@ -525,6 +585,66 @@ SWGSSBDemodSettings::setAgcThresholdGate(qint32 agc_threshold_gate) {
this->m_agc_threshold_gate_isSet = true;
}
qint32
SWGSSBDemodSettings::getDnr() {
return dnr;
}
void
SWGSSBDemodSettings::setDnr(qint32 dnr) {
this->dnr = dnr;
this->m_dnr_isSet = true;
}
qint32
SWGSSBDemodSettings::getDnrScheme() {
return dnr_scheme;
}
void
SWGSSBDemodSettings::setDnrScheme(qint32 dnr_scheme) {
this->dnr_scheme = dnr_scheme;
this->m_dnr_scheme_isSet = true;
}
float
SWGSSBDemodSettings::getDnrAboveAvgFactor() {
return dnr_above_avg_factor;
}
void
SWGSSBDemodSettings::setDnrAboveAvgFactor(float dnr_above_avg_factor) {
this->dnr_above_avg_factor = dnr_above_avg_factor;
this->m_dnr_above_avg_factor_isSet = true;
}
float
SWGSSBDemodSettings::getDnrSigmaFactor() {
return dnr_sigma_factor;
}
void
SWGSSBDemodSettings::setDnrSigmaFactor(float dnr_sigma_factor) {
this->dnr_sigma_factor = dnr_sigma_factor;
this->m_dnr_sigma_factor_isSet = true;
}
qint32
SWGSSBDemodSettings::getDnrNbPeaks() {
return dnr_nb_peaks;
}
void
SWGSSBDemodSettings::setDnrNbPeaks(qint32 dnr_nb_peaks) {
this->dnr_nb_peaks = dnr_nb_peaks;
this->m_dnr_nb_peaks_isSet = true;
}
float
SWGSSBDemodSettings::getDnrAlpha() {
return dnr_alpha;
}
void
SWGSSBDemodSettings::setDnrAlpha(float dnr_alpha) {
this->dnr_alpha = dnr_alpha;
this->m_dnr_alpha_isSet = true;
}
qint32
SWGSSBDemodSettings::getRgbColor() {
return rgb_color;
@ -698,6 +818,24 @@ SWGSSBDemodSettings::isSet(){
if(m_agc_threshold_gate_isSet){
isObjectUpdated = true; break;
}
if(m_dnr_isSet){
isObjectUpdated = true; break;
}
if(m_dnr_scheme_isSet){
isObjectUpdated = true; break;
}
if(m_dnr_above_avg_factor_isSet){
isObjectUpdated = true; break;
}
if(m_dnr_sigma_factor_isSet){
isObjectUpdated = true; break;
}
if(m_dnr_nb_peaks_isSet){
isObjectUpdated = true; break;
}
if(m_dnr_alpha_isSet){
isObjectUpdated = true; break;
}
if(m_rgb_color_isSet){
isObjectUpdated = true; break;
}

View File

@ -93,6 +93,24 @@ public:
qint32 getAgcThresholdGate();
void setAgcThresholdGate(qint32 agc_threshold_gate);
qint32 getDnr();
void setDnr(qint32 dnr);
qint32 getDnrScheme();
void setDnrScheme(qint32 dnr_scheme);
float getDnrAboveAvgFactor();
void setDnrAboveAvgFactor(float dnr_above_avg_factor);
float getDnrSigmaFactor();
void setDnrSigmaFactor(float dnr_sigma_factor);
qint32 getDnrNbPeaks();
void setDnrNbPeaks(qint32 dnr_nb_peaks);
float getDnrAlpha();
void setDnrAlpha(float dnr_alpha);
qint32 getRgbColor();
void setRgbColor(qint32 rgb_color);
@ -181,6 +199,24 @@ private:
qint32 agc_threshold_gate;
bool m_agc_threshold_gate_isSet;
qint32 dnr;
bool m_dnr_isSet;
qint32 dnr_scheme;
bool m_dnr_scheme_isSet;
float dnr_above_avg_factor;
bool m_dnr_above_avg_factor_isSet;
float dnr_sigma_factor;
bool m_dnr_sigma_factor_isSet;
qint32 dnr_nb_peaks;
bool m_dnr_nb_peaks_isSet;
float dnr_alpha;
bool m_dnr_alpha_isSet;
qint32 rgb_color;
bool m_rgb_color_isSet;