1
0
mirror of https://github.com/f4exb/sdrangel.git synced 2026-06-09 09:25:07 -04:00

Spectrum: implemented linear scale mode

This commit is contained in:
f4exb
2018-07-06 01:34:05 +02:00
parent d5f153ff75
commit f6c596d55a
7 changed files with 95 additions and 37 deletions
+15 -1
View File
@@ -39,6 +39,7 @@ GLSpectrum::GLSpectrum(QWidget* parent) :
m_centerFrequency(100000000),
m_referenceLevel(0),
m_powerRange(100),
m_linear(false),
m_decay(0),
m_sampleRate(500000),
m_timingRate(1),
@@ -291,6 +292,13 @@ void GLSpectrum::setDisplayTraceIntensity(int intensity)
update();
}
void GLSpectrum::setLinear(bool linear)
{
m_linear = linear;
m_changesPending = true;
update();
}
void GLSpectrum::addChannelMarker(ChannelMarker* channelMarker)
{
QMutexLocker mutexLocker(&m_mutex);
@@ -1075,7 +1083,13 @@ void GLSpectrum::applyChanges()
}
m_powerScale.setSize(histogramHeight);
m_powerScale.setRange(Unit::Decibel, m_referenceLevel - m_powerRange, m_referenceLevel);
if (m_linear) {
m_powerScale.setRange(Unit::Scientific, m_referenceLevel - m_powerRange, m_referenceLevel);
} else {
m_powerScale.setRange(Unit::Decibel, m_referenceLevel - m_powerRange, m_referenceLevel);
}
leftMargin = m_timeScale.getScaleWidth();
if(m_powerScale.getScaleWidth() > leftMargin)