diff --git a/sdrbase/dsp/glspectrumsettings.cpp b/sdrbase/dsp/glspectrumsettings.cpp index a6c9ffcb6..83c001f58 100644 --- a/sdrbase/dsp/glspectrumsettings.cpp +++ b/sdrbase/dsp/glspectrumsettings.cpp @@ -15,7 +15,6 @@ // along with this program. If not, see . // /////////////////////////////////////////////////////////////////////////////////// -#include "fftwindow.h" #include "util/simpleserializer.h" #include "glspectrumsettings.h" @@ -56,7 +55,7 @@ QByteArray GLSpectrumSettings::serialize() const s.writeS32(1, m_fftSize); s.writeS32(2, m_fftOverlap); - s.writeS32(3, m_fftWindow); + s.writeS32(3, (int) m_fftWindow); s.writeReal(4, m_refLevel); s.writeReal(5, m_powerRange); s.writeBool(6, m_displayWaterfall); @@ -94,7 +93,8 @@ bool GLSpectrumSettings::deserialize(const QByteArray& data) { d.readS32(1, &m_fftSize, 1024); d.readS32(2, &m_fftOverlap, 0); - d.readS32(3, &m_fftWindow, FFTWindow::Hanning); + d.readS32(3, &tmp, (int) FFTWindow::Hanning); + m_fftWindow = (FFTWindow::Function) tmp; d.readReal(4, &m_refLevel, 0); d.readReal(5, &m_powerRange, 100); d.readBool(6, &m_displayWaterfall, true); diff --git a/sdrbase/dsp/glspectrumsettings.h b/sdrbase/dsp/glspectrumsettings.h index 4e74f023d..e20a35b37 100644 --- a/sdrbase/dsp/glspectrumsettings.h +++ b/sdrbase/dsp/glspectrumsettings.h @@ -15,10 +15,14 @@ // along with this program. If not, see . // /////////////////////////////////////////////////////////////////////////////////// +#ifndef SDRBASE_DSP_GLSPECTRUMSETTNGS_H +#define SDRBASE_DSP_GLSPECTRUMSETTNGS_H + #include #include "export.h" #include "dsp/dsptypes.h" +#include "dsp/fftwindow.h" #include "settings/serializable.h" class SDRBASE_API GLSpectrumSettings : public Serializable @@ -34,7 +38,7 @@ public: int m_fftSize; int m_fftOverlap; - int m_fftWindow; + FFTWindow::Function m_fftWindow; Real m_refLevel; Real m_powerRange; int m_decay; @@ -67,3 +71,5 @@ public: static int getAveragingValue(int averagingIndex, AveragingMode averagingMode); static int getAveragingIndex(int averagingValue, AveragingMode averagingMode); }; + +#endif // SDRBASE_DSP_GLSPECTRUMSETTNGS_H diff --git a/sdrbase/webapi/webapiadapterbase.cpp b/sdrbase/webapi/webapiadapterbase.cpp index 92303d9cd..603c9fe89 100644 --- a/sdrbase/webapi/webapiadapterbase.cpp +++ b/sdrbase/webapi/webapiadapterbase.cpp @@ -259,7 +259,7 @@ void WebAPIAdapterBase::webapiUpdatePreset( spectrumSettings.m_fftSize = apiPreset->getSpectrumConfig()->getFftSize(); } if (spectrumIt->contains("fftWindow")) { - spectrumSettings.m_fftWindow = apiPreset->getSpectrumConfig()->getFftWindow(); + spectrumSettings.m_fftWindow = (FFTWindow::Function) apiPreset->getSpectrumConfig()->getFftWindow(); } if (spectrumIt->contains("histogramStroke")) { spectrumSettings.m_histogramStroke = apiPreset->getSpectrumConfig()->getHistogramStroke();