mirror of
https://github.com/f4exb/sdrangel.git
synced 2026-07-28 13:04:17 -04:00
SoapySDR support: output: manage global and individual gains coupling
This commit is contained in:
@@ -59,6 +59,7 @@ SoapySDROutputGui::SoapySDROutputGui(DeviceUISet *deviceUISet, QWidget* parent)
|
||||
createTunableElementsControl(m_sampleSink->getTunableElements());
|
||||
createGlobalGainControl();
|
||||
createIndividualGainsControl(m_sampleSink->getIndividualGainsRanges());
|
||||
m_sampleSink->initGainSettings(m_settings);
|
||||
|
||||
if (m_sampleRateGUI) {
|
||||
connect(m_sampleRateGUI, SIGNAL(valueChanged(double)), this, SLOT(sampleRateChanged(double)));
|
||||
@@ -282,6 +283,24 @@ bool SoapySDROutputGui::handleMessage(const Message& message)
|
||||
|
||||
return true;
|
||||
}
|
||||
else if (SoapySDROutput::MsgReportGainChange::match(message))
|
||||
{
|
||||
const SoapySDROutput::MsgReportGainChange& report = (SoapySDROutput::MsgReportGainChange&) message;
|
||||
const SoapySDROutputSettings& gainSettings = report.getSettings();
|
||||
|
||||
if (report.getGlobalGain()) {
|
||||
m_settings.m_globalGain = gainSettings.m_globalGain;
|
||||
}
|
||||
if (report.getIndividualGains()) {
|
||||
m_settings.m_individualGains = gainSettings.m_individualGains;
|
||||
}
|
||||
|
||||
blockApplySettings(true);
|
||||
displaySettings();
|
||||
blockApplySettings(false);
|
||||
|
||||
return true;
|
||||
}
|
||||
else if (SoapySDROutput::MsgStartStop::match(message))
|
||||
{
|
||||
SoapySDROutput::MsgStartStop& notif = (SoapySDROutput::MsgStartStop&) message;
|
||||
|
||||
Reference in New Issue
Block a user