mirror of
https://github.com/f4exb/sdrangel.git
synced 2026-06-07 00:14:49 -04:00
SoapySDR support: output: individual gains GUIs
This commit is contained in:
@@ -831,6 +831,31 @@ bool SoapySDROutput::applySettings(const SoapySDROutputSettings& settings, bool
|
||||
}
|
||||
}
|
||||
|
||||
for (const auto &oname : m_settings.m_individualGains.keys())
|
||||
{
|
||||
auto nvalue = settings.m_individualGains.find(oname);
|
||||
|
||||
if (nvalue != settings.m_individualGains.end() && (m_settings.m_individualGains[oname] != *nvalue))
|
||||
{
|
||||
if (dev != 0)
|
||||
{
|
||||
try
|
||||
{
|
||||
dev->setGain(SOAPY_SDR_TX, requestedChannel, oname.toStdString(), *nvalue);
|
||||
qDebug("SoapySDROutput::applySettings: individual gain %s set to %lf",
|
||||
oname.toStdString().c_str(), *nvalue);
|
||||
}
|
||||
catch (const std::exception &ex)
|
||||
{
|
||||
qCritical("SoapySDROutput::applySettings: cannot set individual gain %s to %lf: %s",
|
||||
oname.toStdString().c_str(), *nvalue, ex.what());
|
||||
}
|
||||
}
|
||||
|
||||
m_settings.m_individualGains[oname] = *nvalue;
|
||||
}
|
||||
}
|
||||
|
||||
if (forwardChangeOwnDSP)
|
||||
{
|
||||
int sampleRate = settings.m_devSampleRate/(1<<settings.m_log2Interp);
|
||||
|
||||
Reference in New Issue
Block a user