mirror of
https://github.com/f4exb/sdrangel.git
synced 2025-11-10 08:10:25 -05:00
GLSpectrum settings: removed confusing invert indicator and added ssb and usb
This commit is contained in:
parent
8364354094
commit
094fdad9ea
@ -39,16 +39,17 @@ void GLSpectrumSettings::resetToDefaults()
|
|||||||
m_histogramStroke = 30;
|
m_histogramStroke = 30;
|
||||||
m_displayGridIntensity = 5,
|
m_displayGridIntensity = 5,
|
||||||
m_displayWaterfall = true;
|
m_displayWaterfall = true;
|
||||||
m_invertedWaterfall = false;
|
m_invertedWaterfall = true;
|
||||||
m_displayMaxHold = false;
|
m_displayMaxHold = false;
|
||||||
m_displayHistogram = false;
|
m_displayHistogram = false;
|
||||||
m_displayGrid = false;
|
m_displayGrid = false;
|
||||||
m_invert = true;
|
|
||||||
m_averagingMode = AvgModeNone;
|
m_averagingMode = AvgModeNone;
|
||||||
m_averagingIndex = 0;
|
m_averagingIndex = 0;
|
||||||
m_linear = false;
|
m_linear = false;
|
||||||
m_wsSpectrumAddress = "127.0.0.1";
|
m_wsSpectrumAddress = "127.0.0.1";
|
||||||
m_wsSpectrumPort = 8887;
|
m_wsSpectrumPort = 8887;
|
||||||
|
m_ssb = false;
|
||||||
|
m_usb = true;
|
||||||
}
|
}
|
||||||
|
|
||||||
QByteArray GLSpectrumSettings::serialize() const
|
QByteArray GLSpectrumSettings::serialize() const
|
||||||
@ -66,7 +67,6 @@ QByteArray GLSpectrumSettings::serialize() const
|
|||||||
s.writeBool(9, m_displayHistogram);
|
s.writeBool(9, m_displayHistogram);
|
||||||
s.writeS32(10, m_decay);
|
s.writeS32(10, m_decay);
|
||||||
s.writeBool(11, m_displayGrid);
|
s.writeBool(11, m_displayGrid);
|
||||||
s.writeBool(12, m_invert);
|
|
||||||
s.writeS32(13, m_displayGridIntensity);
|
s.writeS32(13, m_displayGridIntensity);
|
||||||
s.writeS32(14, m_decayDivisor);
|
s.writeS32(14, m_decayDivisor);
|
||||||
s.writeS32(15, m_histogramStroke);
|
s.writeS32(15, m_histogramStroke);
|
||||||
@ -78,6 +78,8 @@ QByteArray GLSpectrumSettings::serialize() const
|
|||||||
s.writeBool(21, m_linear);
|
s.writeBool(21, m_linear);
|
||||||
s.writeString(22, m_wsSpectrumAddress);
|
s.writeString(22, m_wsSpectrumAddress);
|
||||||
s.writeU32(23, m_wsSpectrumPort);
|
s.writeU32(23, m_wsSpectrumPort);
|
||||||
|
s.writeBool(24, m_ssb);
|
||||||
|
s.writeBool(25, m_usb);
|
||||||
|
|
||||||
return s.final();
|
return s.final();
|
||||||
}
|
}
|
||||||
@ -108,7 +110,6 @@ bool GLSpectrumSettings::deserialize(const QByteArray& data)
|
|||||||
d.readBool(9, &m_displayHistogram, false);
|
d.readBool(9, &m_displayHistogram, false);
|
||||||
d.readS32(10, &m_decay, 1);
|
d.readS32(10, &m_decay, 1);
|
||||||
d.readBool(11, &m_displayGrid, false);
|
d.readBool(11, &m_displayGrid, false);
|
||||||
d.readBool(12, &m_invert, true);
|
|
||||||
d.readS32(13, &m_displayGridIntensity, 5);
|
d.readS32(13, &m_displayGridIntensity, 5);
|
||||||
d.readS32(14, &m_decayDivisor, 1);
|
d.readS32(14, &m_decayDivisor, 1);
|
||||||
d.readS32(15, &m_histogramStroke, 30);
|
d.readS32(15, &m_histogramStroke, 30);
|
||||||
@ -124,6 +125,8 @@ bool GLSpectrumSettings::deserialize(const QByteArray& data)
|
|||||||
d.readString(22, &m_wsSpectrumAddress, "127.0.0.1");
|
d.readString(22, &m_wsSpectrumAddress, "127.0.0.1");
|
||||||
d.readU32(23, &utmp, 8887);
|
d.readU32(23, &utmp, 8887);
|
||||||
m_wsSpectrumPort = utmp < 1024 ? 1024 : utmp > 65535 ? 65535 : utmp;
|
m_wsSpectrumPort = utmp < 1024 ? 1024 : utmp > 65535 ? 65535 : utmp;
|
||||||
|
d.readBool(24, &m_ssb, false);
|
||||||
|
d.readBool(25, &m_usb, true);
|
||||||
|
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|||||||
@ -53,11 +53,12 @@ public:
|
|||||||
bool m_displayCurrent;
|
bool m_displayCurrent;
|
||||||
bool m_displayHistogram;
|
bool m_displayHistogram;
|
||||||
bool m_displayGrid;
|
bool m_displayGrid;
|
||||||
bool m_invert;
|
|
||||||
AveragingMode m_averagingMode;
|
AveragingMode m_averagingMode;
|
||||||
int m_averagingIndex;
|
int m_averagingIndex;
|
||||||
unsigned int m_averagingNb;
|
unsigned int m_averagingNb;
|
||||||
bool m_linear; //!< linear else logarithmic scale
|
bool m_linear; //!< linear else logarithmic scale
|
||||||
|
bool m_ssb; //!< SSB display with spectrum center at start of array or display - else spectrum center is on center
|
||||||
|
bool m_usb; //!< USB display with increasing frequencies towads the right - else decreasing frequencies
|
||||||
QString m_wsSpectrumAddress;
|
QString m_wsSpectrumAddress;
|
||||||
uint16_t m_wsSpectrumPort;
|
uint16_t m_wsSpectrumPort;
|
||||||
|
|
||||||
|
|||||||
@ -142,7 +142,9 @@ void SpectrumVis::feed(const Complex *begin, unsigned int length)
|
|||||||
m_settings.m_fftSize,
|
m_settings.m_fftSize,
|
||||||
m_centerFrequency,
|
m_centerFrequency,
|
||||||
m_sampleRate,
|
m_sampleRate,
|
||||||
m_settings.m_linear
|
m_settings.m_linear,
|
||||||
|
m_settings.m_ssb,
|
||||||
|
m_settings.m_usb
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -175,7 +177,9 @@ void SpectrumVis::feed(const Complex *begin, unsigned int length)
|
|||||||
m_settings.m_fftSize,
|
m_settings.m_fftSize,
|
||||||
m_centerFrequency,
|
m_centerFrequency,
|
||||||
m_sampleRate,
|
m_sampleRate,
|
||||||
m_settings.m_linear
|
m_settings.m_linear,
|
||||||
|
m_settings.m_ssb,
|
||||||
|
m_settings.m_usb
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -219,7 +223,9 @@ void SpectrumVis::feed(const Complex *begin, unsigned int length)
|
|||||||
m_settings.m_fftSize,
|
m_settings.m_fftSize,
|
||||||
m_centerFrequency,
|
m_centerFrequency,
|
||||||
m_sampleRate,
|
m_sampleRate,
|
||||||
m_settings.m_linear
|
m_settings.m_linear,
|
||||||
|
m_settings.m_ssb,
|
||||||
|
m_settings.m_usb
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -262,7 +268,9 @@ void SpectrumVis::feed(const Complex *begin, unsigned int length)
|
|||||||
m_settings.m_fftSize,
|
m_settings.m_fftSize,
|
||||||
m_centerFrequency,
|
m_centerFrequency,
|
||||||
m_sampleRate,
|
m_sampleRate,
|
||||||
m_settings.m_linear
|
m_settings.m_linear,
|
||||||
|
m_settings.m_ssb,
|
||||||
|
m_settings.m_usb
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -354,7 +362,9 @@ void SpectrumVis::feed(const SampleVector::const_iterator& cbegin, const SampleV
|
|||||||
m_settings.m_fftSize,
|
m_settings.m_fftSize,
|
||||||
m_centerFrequency,
|
m_centerFrequency,
|
||||||
m_sampleRate,
|
m_sampleRate,
|
||||||
m_settings.m_linear
|
m_settings.m_linear,
|
||||||
|
m_settings.m_ssb,
|
||||||
|
m_settings.m_usb
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -403,7 +413,9 @@ void SpectrumVis::feed(const SampleVector::const_iterator& cbegin, const SampleV
|
|||||||
m_settings.m_fftSize,
|
m_settings.m_fftSize,
|
||||||
m_centerFrequency,
|
m_centerFrequency,
|
||||||
m_sampleRate,
|
m_sampleRate,
|
||||||
m_settings.m_linear
|
m_settings.m_linear,
|
||||||
|
m_settings.m_ssb,
|
||||||
|
m_settings.m_usb
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -470,7 +482,9 @@ void SpectrumVis::feed(const SampleVector::const_iterator& cbegin, const SampleV
|
|||||||
m_settings.m_fftSize,
|
m_settings.m_fftSize,
|
||||||
m_centerFrequency,
|
m_centerFrequency,
|
||||||
m_sampleRate,
|
m_sampleRate,
|
||||||
m_settings.m_linear
|
m_settings.m_linear,
|
||||||
|
m_settings.m_ssb,
|
||||||
|
m_settings.m_usb
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -536,7 +550,9 @@ void SpectrumVis::feed(const SampleVector::const_iterator& cbegin, const SampleV
|
|||||||
m_settings.m_fftSize,
|
m_settings.m_fftSize,
|
||||||
m_centerFrequency,
|
m_centerFrequency,
|
||||||
m_sampleRate,
|
m_sampleRate,
|
||||||
m_settings.m_linear
|
m_settings.m_linear,
|
||||||
|
m_settings.m_ssb,
|
||||||
|
m_settings.m_usb
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -640,6 +656,8 @@ void SpectrumVis::applySettings(const GLSpectrumSettings& settings, bool force)
|
|||||||
<< " m_refLevel: " << settings.m_refLevel
|
<< " m_refLevel: " << settings.m_refLevel
|
||||||
<< " m_powerRange: " << settings.m_powerRange
|
<< " m_powerRange: " << settings.m_powerRange
|
||||||
<< " m_linear: " << settings.m_linear
|
<< " m_linear: " << settings.m_linear
|
||||||
|
<< " m_ssb: " << settings.m_ssb
|
||||||
|
<< " m_usb: " << settings.m_usb
|
||||||
<< " m_wsSpectrumAddress: " << settings.m_wsSpectrumAddress
|
<< " m_wsSpectrumAddress: " << settings.m_wsSpectrumAddress
|
||||||
<< " m_wsSpectrumPort: " << settings.m_wsSpectrumPort
|
<< " m_wsSpectrumPort: " << settings.m_wsSpectrumPort
|
||||||
<< " force: " << force;
|
<< " force: " << force;
|
||||||
|
|||||||
@ -120,7 +120,6 @@ void WebAPIAdapterBase::webapiFormatPreset(
|
|||||||
swgSpectrumConfig->setDisplayHistogram(m_spectrumSettings.m_displayHistogram ? 1 : 0);
|
swgSpectrumConfig->setDisplayHistogram(m_spectrumSettings.m_displayHistogram ? 1 : 0);
|
||||||
swgSpectrumConfig->setDecay(m_spectrumSettings.m_decay);
|
swgSpectrumConfig->setDecay(m_spectrumSettings.m_decay);
|
||||||
swgSpectrumConfig->setDisplayGrid(m_spectrumSettings.m_displayGrid ? 1 : 0);
|
swgSpectrumConfig->setDisplayGrid(m_spectrumSettings.m_displayGrid ? 1 : 0);
|
||||||
swgSpectrumConfig->setInvert(m_spectrumSettings.m_invert ? 1 : 0);
|
|
||||||
swgSpectrumConfig->setDisplayGridIntensity(m_spectrumSettings.m_displayGridIntensity);
|
swgSpectrumConfig->setDisplayGridIntensity(m_spectrumSettings.m_displayGridIntensity);
|
||||||
swgSpectrumConfig->setDecayDivisor(m_spectrumSettings.m_decayDivisor);
|
swgSpectrumConfig->setDecayDivisor(m_spectrumSettings.m_decayDivisor);
|
||||||
swgSpectrumConfig->setHistogramStroke(m_spectrumSettings.m_histogramStroke);
|
swgSpectrumConfig->setHistogramStroke(m_spectrumSettings.m_histogramStroke);
|
||||||
@ -264,9 +263,6 @@ void WebAPIAdapterBase::webapiUpdatePreset(
|
|||||||
if (spectrumIt->contains("histogramStroke")) {
|
if (spectrumIt->contains("histogramStroke")) {
|
||||||
spectrumSettings.m_histogramStroke = apiPreset->getSpectrumConfig()->getHistogramStroke();
|
spectrumSettings.m_histogramStroke = apiPreset->getSpectrumConfig()->getHistogramStroke();
|
||||||
}
|
}
|
||||||
if (spectrumIt->contains("invert")) {
|
|
||||||
spectrumSettings.m_invert = apiPreset->getSpectrumConfig()->getInvert() != 0;
|
|
||||||
}
|
|
||||||
if (spectrumIt->contains("invertedWaterfall")) {
|
if (spectrumIt->contains("invertedWaterfall")) {
|
||||||
spectrumSettings.m_invertedWaterfall = apiPreset->getSpectrumConfig()->getInvertedWaterfall() != 0;
|
spectrumSettings.m_invertedWaterfall = apiPreset->getSpectrumConfig()->getInvertedWaterfall() != 0;
|
||||||
}
|
}
|
||||||
|
|||||||
@ -117,7 +117,9 @@ void WSSpectrum::newSpectrum(
|
|||||||
int fftSize,
|
int fftSize,
|
||||||
uint64_t centerFrequency,
|
uint64_t centerFrequency,
|
||||||
int bandwidth,
|
int bandwidth,
|
||||||
bool linear
|
bool linear,
|
||||||
|
bool ssb,
|
||||||
|
bool usb
|
||||||
)
|
)
|
||||||
{
|
{
|
||||||
if (m_timer.elapsed() < 200) { // Max 5 frames per second
|
if (m_timer.elapsed() < 200) { // Max 5 frames per second
|
||||||
@ -137,7 +139,9 @@ void WSSpectrum::newSpectrum(
|
|||||||
nowMs,
|
nowMs,
|
||||||
centerFrequency,
|
centerFrequency,
|
||||||
bandwidth,
|
bandwidth,
|
||||||
linear
|
linear,
|
||||||
|
ssb,
|
||||||
|
usb
|
||||||
);
|
);
|
||||||
//qDebug() << "WSSpectrum::newSpectrum: " << payload.size() << " bytes in " << elapsed << " ms";
|
//qDebug() << "WSSpectrum::newSpectrum: " << payload.size() << " bytes in " << elapsed << " ms";
|
||||||
emit payloadToSend(payload);
|
emit payloadToSend(payload);
|
||||||
@ -159,7 +163,9 @@ void WSSpectrum::buildPayload(
|
|||||||
uint64_t timestampMs,
|
uint64_t timestampMs,
|
||||||
uint64_t centerFrequency,
|
uint64_t centerFrequency,
|
||||||
int bandwidth,
|
int bandwidth,
|
||||||
bool linear
|
bool linear,
|
||||||
|
bool ssb,
|
||||||
|
bool usb
|
||||||
)
|
)
|
||||||
{
|
{
|
||||||
QBuffer buffer(&bytes);
|
QBuffer buffer(&bytes);
|
||||||
@ -169,8 +175,8 @@ void WSSpectrum::buildPayload(
|
|||||||
buffer.write((char*) ×tampMs, sizeof(uint64_t)); // 16
|
buffer.write((char*) ×tampMs, sizeof(uint64_t)); // 16
|
||||||
buffer.write((char*) &fftSize, sizeof(int)); // 24
|
buffer.write((char*) &fftSize, sizeof(int)); // 24
|
||||||
buffer.write((char*) &bandwidth, sizeof(int)); // 28
|
buffer.write((char*) &bandwidth, sizeof(int)); // 28
|
||||||
int linearInt = linear ? 1 : 0;
|
int indicators = (linear ? 1 : 0) + (ssb ? 2 : 0) + (usb ? 4 : 0);
|
||||||
buffer.write((char*) &linearInt, sizeof(int)); // 32
|
buffer.write((char*) &indicators, sizeof(int)); // 32
|
||||||
buffer.write((char*) spectrum.data(), fftSize*sizeof(Real)); // 36
|
buffer.write((char*) spectrum.data(), fftSize*sizeof(Real)); // 36
|
||||||
buffer.close();
|
buffer.close();
|
||||||
}
|
}
|
||||||
|
|||||||
@ -49,7 +49,9 @@ public:
|
|||||||
int fftSize,
|
int fftSize,
|
||||||
uint64_t centerFrequency,
|
uint64_t centerFrequency,
|
||||||
int bandwidth,
|
int bandwidth,
|
||||||
bool linear
|
bool linear,
|
||||||
|
bool ssb = false,
|
||||||
|
bool usb = true
|
||||||
);
|
);
|
||||||
|
|
||||||
signals:
|
signals:
|
||||||
@ -77,7 +79,9 @@ private:
|
|||||||
uint64_t timestampMs,
|
uint64_t timestampMs,
|
||||||
uint64_t centerFrequency,
|
uint64_t centerFrequency,
|
||||||
int bandwidth,
|
int bandwidth,
|
||||||
bool linear
|
bool linear,
|
||||||
|
bool ssb,
|
||||||
|
bool usb
|
||||||
);
|
);
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|||||||
@ -110,7 +110,7 @@ void GLSpectrumGUI::displaySettings()
|
|||||||
ui->maxHold->setChecked(m_settings.m_displayMaxHold);
|
ui->maxHold->setChecked(m_settings.m_displayMaxHold);
|
||||||
ui->current->setChecked(m_settings.m_displayCurrent);
|
ui->current->setChecked(m_settings.m_displayCurrent);
|
||||||
ui->histogram->setChecked(m_settings.m_displayHistogram);
|
ui->histogram->setChecked(m_settings.m_displayHistogram);
|
||||||
ui->invert->setChecked(m_settings.m_invert);
|
ui->invertWaterfall->setChecked(m_settings.m_invertedWaterfall);
|
||||||
ui->grid->setChecked(m_settings.m_displayGrid);
|
ui->grid->setChecked(m_settings.m_displayGrid);
|
||||||
ui->gridIntensity->setSliderPosition(m_settings.m_displayGridIntensity);
|
ui->gridIntensity->setSliderPosition(m_settings.m_displayGridIntensity);
|
||||||
|
|
||||||
@ -169,7 +169,7 @@ void GLSpectrumGUI::applySettings()
|
|||||||
m_glSpectrum->setDecay(m_settings.m_decay);
|
m_glSpectrum->setDecay(m_settings.m_decay);
|
||||||
m_glSpectrum->setDecayDivisor(m_settings.m_decayDivisor);
|
m_glSpectrum->setDecayDivisor(m_settings.m_decayDivisor);
|
||||||
m_glSpectrum->setHistoStroke(m_settings.m_histogramStroke);
|
m_glSpectrum->setHistoStroke(m_settings.m_histogramStroke);
|
||||||
m_glSpectrum->setInvertedWaterfall(m_settings.m_invert);
|
m_glSpectrum->setInvertedWaterfall(m_settings.m_invertedWaterfall);
|
||||||
m_glSpectrum->setDisplayGrid(m_settings.m_displayGrid);
|
m_glSpectrum->setDisplayGrid(m_settings.m_displayGrid);
|
||||||
m_glSpectrum->setDisplayGridIntensity(m_settings.m_displayGridIntensity);
|
m_glSpectrum->setDisplayGridIntensity(m_settings.m_displayGridIntensity);
|
||||||
m_glSpectrum->setDisplayTraceIntensity(m_settings.m_displayTraceIntensity);
|
m_glSpectrum->setDisplayTraceIntensity(m_settings.m_displayTraceIntensity);
|
||||||
@ -306,9 +306,9 @@ void GLSpectrumGUI::on_current_toggled(bool checked)
|
|||||||
applySettings();
|
applySettings();
|
||||||
}
|
}
|
||||||
|
|
||||||
void GLSpectrumGUI::on_invert_toggled(bool checked)
|
void GLSpectrumGUI::on_invertWaterfall_toggled(bool checked)
|
||||||
{
|
{
|
||||||
m_settings.m_invert = checked;
|
m_settings.m_invertedWaterfall = checked;
|
||||||
applySettings();
|
applySettings();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@ -99,7 +99,7 @@ private slots:
|
|||||||
void on_histogram_toggled(bool checked);
|
void on_histogram_toggled(bool checked);
|
||||||
void on_maxHold_toggled(bool checked);
|
void on_maxHold_toggled(bool checked);
|
||||||
void on_current_toggled(bool checked);
|
void on_current_toggled(bool checked);
|
||||||
void on_invert_toggled(bool checked);
|
void on_invertWaterfall_toggled(bool checked);
|
||||||
void on_grid_toggled(bool checked);
|
void on_grid_toggled(bool checked);
|
||||||
void on_clearSpectrum_clicked(bool checked);
|
void on_clearSpectrum_clicked(bool checked);
|
||||||
|
|
||||||
|
|||||||
@ -215,7 +215,7 @@
|
|||||||
</widget>
|
</widget>
|
||||||
</item>
|
</item>
|
||||||
<item>
|
<item>
|
||||||
<widget class="ButtonSwitch" name="invert">
|
<widget class="ButtonSwitch" name="invertWaterfall">
|
||||||
<property name="toolTip">
|
<property name="toolTip">
|
||||||
<string>Exchange waterfall and histogram</string>
|
<string>Exchange waterfall and histogram</string>
|
||||||
</property>
|
</property>
|
||||||
@ -748,7 +748,7 @@
|
|||||||
<tabstops>
|
<tabstops>
|
||||||
<tabstop>histogram</tabstop>
|
<tabstop>histogram</tabstop>
|
||||||
<tabstop>maxHold</tabstop>
|
<tabstop>maxHold</tabstop>
|
||||||
<tabstop>invert</tabstop>
|
<tabstop>invertWaterfall</tabstop>
|
||||||
<tabstop>grid</tabstop>
|
<tabstop>grid</tabstop>
|
||||||
</tabstops>
|
</tabstops>
|
||||||
<resources>
|
<resources>
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user