From 2b4f8a0f55bd11fa6abd45f0731fda41f5ada743 Mon Sep 17 00:00:00 2001 From: f4exb Date: Sat, 16 Sep 2017 22:23:31 +0200 Subject: [PATCH] Implemented GUI input message queue and interface --- plugins/channelrx/chanalyzer/chanalyzergui.h | 6 ++++-- plugins/channelrx/chanalyzerng/chanalyzernggui.h | 6 ++++-- plugins/channelrx/demodam/amdemodgui.h | 6 ++++-- plugins/channelrx/demodatv/atvdemodgui.h | 6 ++++-- plugins/channelrx/demodbfm/bfmdemodgui.h | 6 ++++-- plugins/channelrx/demoddsd/dsddemodgui.h | 7 +++++-- plugins/channelrx/demodlora/lorademodgui.h | 6 ++++-- plugins/channelrx/demodnfm/nfmdemodgui.h | 6 ++++-- plugins/channelrx/demodssb/ssbdemodgui.h | 6 ++++-- plugins/channelrx/demodwfm/wfmdemodgui.h | 6 ++++-- plugins/channelrx/tcpsrc/tcpsrcgui.h | 9 ++++++--- plugins/channelrx/udpsrc/udpsrcgui.h | 6 ++++-- plugins/channeltx/modam/ammodgui.h | 7 +++++-- plugins/channeltx/modatv/atvmodgui.h | 7 +++++-- plugins/channeltx/modnfm/nfmmodgui.h | 6 ++++-- plugins/channeltx/modssb/ssbmodgui.h | 8 ++++++-- plugins/channeltx/modwfm/wfmmodgui.h | 6 ++++-- plugins/channeltx/udpsink/udpsinkgui.h | 5 ++++- plugins/samplesink/bladerfoutput/bladerfoutputgui.h | 6 +++++- plugins/samplesink/filesink/filesinkgui.h | 6 +++++- plugins/samplesink/hackrfoutput/hackrfoutputgui.h | 6 +++++- plugins/samplesink/limesdroutput/limesdroutputgui.h | 6 +++++- plugins/samplesink/sdrdaemonsink/sdrdaemonsinkgui.h | 7 ++++++- plugins/samplesource/airspy/airspygui.h | 5 ++++- plugins/samplesource/bladerfinput/bladerfinputgui.h | 6 +++++- plugins/samplesource/fcdpro/fcdprogui.h | 7 +++++-- plugins/samplesource/fcdproplus/fcdproplusgui.h | 7 +++++-- plugins/samplesource/filesource/filesourcegui.h | 6 +++++- plugins/samplesource/hackrfinput/hackrfinputgui.h | 6 +++++- plugins/samplesource/limesdrinput/limesdrinputgui.h | 6 +++++- plugins/samplesource/plutosdrinput/plutosdrinputgui.h | 5 ++++- plugins/samplesource/rtlsdr/rtlsdrgui.h | 6 +++++- .../samplesource/sdrdaemonsource/sdrdaemonsourcegui.h | 8 ++++++-- plugins/samplesource/sdrplay/sdrplaygui.h | 8 ++++++-- sdrbase/plugin/plugininstanceui.h | 3 +++ 35 files changed, 163 insertions(+), 56 deletions(-) diff --git a/plugins/channelrx/chanalyzer/chanalyzergui.h b/plugins/channelrx/chanalyzer/chanalyzergui.h index 9f7975960..24b352dba 100644 --- a/plugins/channelrx/chanalyzer/chanalyzergui.h +++ b/plugins/channelrx/chanalyzer/chanalyzergui.h @@ -17,10 +17,11 @@ #ifndef INCLUDE_CHANNELANALYZERGUI_H #define INCLUDE_CHANNELANALYZERGUI_H -#include #include "gui/rollupwidget.h" #include "dsp/channelmarker.h" #include "dsp/movingaverage.h" +#include "plugin/plugininstanceui.h" +#include "util/messagequeue.h" class PluginAPI; class DeviceSourceAPI; @@ -51,7 +52,7 @@ public: void resetToDefaults(); QByteArray serialize() const; bool deserialize(const QByteArray& data); - + virtual MessageQueue *getInputMessageQueue() { return &m_inputMessageQueue; } virtual bool handleMessage(const Message& message); static const QString m_channelID; @@ -86,6 +87,7 @@ private: SpectrumScopeComboVis* m_spectrumScopeComboVis; SpectrumVis* m_spectrumVis; ScopeVis* m_scopeVis; + MessageQueue m_inputMessageQueue; explicit ChannelAnalyzerGUI(PluginAPI* pluginAPI, DeviceSourceAPI *deviceAPI, QWidget* parent = NULL); virtual ~ChannelAnalyzerGUI(); diff --git a/plugins/channelrx/chanalyzerng/chanalyzernggui.h b/plugins/channelrx/chanalyzerng/chanalyzernggui.h index 7dd0f2ff4..d9797c0d1 100644 --- a/plugins/channelrx/chanalyzerng/chanalyzernggui.h +++ b/plugins/channelrx/chanalyzerng/chanalyzernggui.h @@ -17,10 +17,11 @@ #ifndef INCLUDE_CHANNELANALYZERNGGUI_H #define INCLUDE_CHANNELANALYZERNGGUI_H -#include #include "gui/rollupwidget.h" #include "dsp/channelmarker.h" #include "dsp/movingaverage.h" +#include "plugin/plugininstanceui.h" +#include "util/messagequeue.h" class PluginAPI; class DeviceSourceAPI; @@ -51,7 +52,7 @@ public: void resetToDefaults(); QByteArray serialize() const; bool deserialize(const QByteArray& data); - + virtual MessageQueue *getInputMessageQueue() { return &m_inputMessageQueue; } virtual bool handleMessage(const Message& message); static const QString m_channelID; @@ -87,6 +88,7 @@ private: SpectrumScopeNGComboVis* m_spectrumScopeComboVis; SpectrumVis* m_spectrumVis; ScopeVisNG* m_scopeVis; + MessageQueue m_inputMessageQueue; explicit ChannelAnalyzerNGGUI(PluginAPI* pluginAPI, DeviceSourceAPI *deviceAPI, QWidget* parent = NULL); virtual ~ChannelAnalyzerNGGUI(); diff --git a/plugins/channelrx/demodam/amdemodgui.h b/plugins/channelrx/demodam/amdemodgui.h index 64506cc8c..1133d8bf4 100644 --- a/plugins/channelrx/demodam/amdemodgui.h +++ b/plugins/channelrx/demodam/amdemodgui.h @@ -1,10 +1,11 @@ #ifndef INCLUDE_AMDEMODGUI_H #define INCLUDE_AMDEMODGUI_H -#include #include "gui/rollupwidget.h" #include "dsp/channelmarker.h" #include "dsp/movingaverage.h" +#include "plugin/plugininstanceui.h" +#include "util/messagequeue.h" class PluginAPI; class DeviceSourceAPI; @@ -32,7 +33,7 @@ public: void resetToDefaults(); QByteArray serialize() const; bool deserialize(const QByteArray& data); - + virtual MessageQueue *getInputMessageQueue() { return &m_inputMessageQueue; } virtual bool handleMessage(const Message& message); static const QString m_channelID; @@ -62,6 +63,7 @@ private: AMDemod* m_amDemod; bool m_squelchOpen; uint32_t m_tickCount; + MessageQueue m_inputMessageQueue; explicit AMDemodGUI(PluginAPI* pluginAPI, DeviceSourceAPI *deviceAPI, QWidget* parent = NULL); virtual ~AMDemodGUI(); diff --git a/plugins/channelrx/demodatv/atvdemodgui.h b/plugins/channelrx/demodatv/atvdemodgui.h index 0e270bab2..720a5f19f 100644 --- a/plugins/channelrx/demodatv/atvdemodgui.h +++ b/plugins/channelrx/demodatv/atvdemodgui.h @@ -18,10 +18,11 @@ #ifndef INCLUDE_ATVDEMODGUI_H #define INCLUDE_ATVDEMODGUI_H -#include #include "gui/rollupwidget.h" #include "dsp/channelmarker.h" #include "dsp/movingaverage.h" +#include "plugin/plugininstanceui.h" +#include "util/messagequeue.h" class PluginAPI; class DeviceSourceAPI; @@ -52,7 +53,7 @@ public: void resetToDefaults(); QByteArray serialize() const; bool deserialize(const QByteArray& arrData); - + virtual MessageQueue *getInputMessageQueue() { return &m_inputMessageQueue; } virtual bool handleMessage(const Message& objMessage); static const QString m_strChannelID; @@ -106,6 +107,7 @@ private: float m_fltLineTimeMultiplier; float m_fltTopTimeMultiplier; int m_rfSliderDivisor; + MessageQueue m_inputMessageQueue; explicit ATVDemodGUI(PluginAPI* objPluginAPI, DeviceSourceAPI *objDeviceAPI, QWidget* objParent = NULL); virtual ~ATVDemodGUI(); diff --git a/plugins/channelrx/demodbfm/bfmdemodgui.h b/plugins/channelrx/demodbfm/bfmdemodgui.h index 525897c66..cf3c2d875 100644 --- a/plugins/channelrx/demodbfm/bfmdemodgui.h +++ b/plugins/channelrx/demodbfm/bfmdemodgui.h @@ -18,10 +18,11 @@ #ifndef INCLUDE_BFMDEMODGUI_H #define INCLUDE_BFMDEMODGUI_H -#include #include "gui/rollupwidget.h" #include "dsp/channelmarker.h" #include "dsp/movingaverage.h" +#include "plugin/plugininstanceui.h" +#include "util/messagequeue.h" #include "rdsparser.h" @@ -52,7 +53,7 @@ public: void resetToDefaults(); QByteArray serialize() const; bool deserialize(const QByteArray& data); - + virtual MessageQueue *getInputMessageQueue() { return &m_inputMessageQueue; } virtual bool handleMessage(const Message& message); static const QString m_channelID; @@ -96,6 +97,7 @@ private: MovingAverage m_channelPowerDbAvg; int m_rate; std::vector m_g14ComboIndex; + MessageQueue m_inputMessageQueue; static const int m_rfBW[]; diff --git a/plugins/channelrx/demoddsd/dsddemodgui.h b/plugins/channelrx/demoddsd/dsddemodgui.h index 15786019a..390a835ed 100644 --- a/plugins/channelrx/demoddsd/dsddemodgui.h +++ b/plugins/channelrx/demoddsd/dsddemodgui.h @@ -18,13 +18,14 @@ #ifndef INCLUDE_DSDDEMODGUI_H #define INCLUDE_DSDDEMODGUI_H -#include #include #include "gui/rollupwidget.h" #include "dsp/dsptypes.h" #include "dsp/channelmarker.h" #include "dsp/movingaverage.h" +#include "plugin/plugininstanceui.h" +#include "util/messagequeue.h" class PluginAPI; class DeviceSourceAPI; @@ -53,7 +54,7 @@ public: void resetToDefaults(); QByteArray serialize() const; bool deserialize(const QByteArray& data); - + virtual MessageQueue *getInputMessageQueue() { return &m_inputMessageQueue; } virtual bool handleMessage(const Message& message); static const QString m_channelID; @@ -116,6 +117,8 @@ private: float m_myLatitude; float m_myLongitude; + MessageQueue m_inputMessageQueue; + explicit DSDDemodGUI(PluginAPI* pluginAPI, DeviceSourceAPI *deviceAPI, QWidget* parent = NULL); virtual ~DSDDemodGUI(); diff --git a/plugins/channelrx/demodlora/lorademodgui.h b/plugins/channelrx/demodlora/lorademodgui.h index 93e1f5e00..43884380c 100644 --- a/plugins/channelrx/demodlora/lorademodgui.h +++ b/plugins/channelrx/demodlora/lorademodgui.h @@ -1,9 +1,10 @@ #ifndef INCLUDE_LoRaDEMODGUI_H #define INCLUDE_LoRaDEMODGUI_H -#include #include "gui/rollupwidget.h" #include "dsp/channelmarker.h" +#include "plugin/plugininstanceui.h" +#include "util/messagequeue.h" #define BANDWIDTHSTRING {7813,15625,20833,31250,62500} @@ -33,7 +34,7 @@ public: void resetToDefaults(); QByteArray serialize() const; bool deserialize(const QByteArray& data); - + virtual MessageQueue *getInputMessageQueue() { return &m_inputMessageQueue; } virtual bool handleMessage(const Message& message); static const QString m_channelID; @@ -57,6 +58,7 @@ private: DownChannelizer* m_channelizer; LoRaDemod* m_LoRaDemod; SpectrumVis* m_spectrumVis; + MessageQueue m_inputMessageQueue; explicit LoRaDemodGUI(PluginAPI* pluginAPI, DeviceSourceAPI *deviceAPI, QWidget* parent = NULL); virtual ~LoRaDemodGUI(); diff --git a/plugins/channelrx/demodnfm/nfmdemodgui.h b/plugins/channelrx/demodnfm/nfmdemodgui.h index 1c2df82c9..e986b143b 100644 --- a/plugins/channelrx/demodnfm/nfmdemodgui.h +++ b/plugins/channelrx/demodnfm/nfmdemodgui.h @@ -1,11 +1,12 @@ #ifndef INCLUDE_NFMDEMODGUI_H #define INCLUDE_NFMDEMODGUI_H -#include #include "gui/rollupwidget.h" #include "dsp/dsptypes.h" #include "dsp/channelmarker.h" #include "dsp/movingaverage.h" +#include "plugin/plugininstanceui.h" +#include "util/messagequeue.h" class PluginAPI; class DeviceSourceAPI; @@ -33,7 +34,7 @@ public: void resetToDefaults(); QByteArray serialize() const; bool deserialize(const QByteArray& data); - + virtual MessageQueue *getInputMessageQueue() { return &m_inputMessageQueue; } virtual bool handleMessage(const Message& message); void setCtcssFreq(Real ctcssFreq); @@ -71,6 +72,7 @@ private: bool m_audioMute; bool m_squelchOpen; uint32_t m_tickCount; + MessageQueue m_inputMessageQueue; static const int m_rfBW[]; static const int m_fmDev[]; diff --git a/plugins/channelrx/demodssb/ssbdemodgui.h b/plugins/channelrx/demodssb/ssbdemodgui.h index cf75266e1..0be23c5be 100644 --- a/plugins/channelrx/demodssb/ssbdemodgui.h +++ b/plugins/channelrx/demodssb/ssbdemodgui.h @@ -1,10 +1,11 @@ #ifndef INCLUDE_SSBDEMODGUI_H #define INCLUDE_SSBDEMODGUI_H -#include #include "gui/rollupwidget.h" #include "dsp/channelmarker.h" #include "dsp/movingaverage.h" +#include "plugin/plugininstanceui.h" +#include "util/messagequeue.h" class PluginAPI; class DeviceSourceAPI; @@ -34,7 +35,7 @@ public: void resetToDefaults(); QByteArray serialize() const; bool deserialize(const QByteArray& data); - + virtual MessageQueue *getInputMessageQueue() { return &m_inputMessageQueue; } virtual bool handleMessage(const Message& message); static const QString m_channelID; @@ -79,6 +80,7 @@ private: DownChannelizer* m_channelizer; SSBDemod* m_ssbDemod; SpectrumVis* m_spectrumVis; + MessageQueue m_inputMessageQueue; explicit SSBDemodGUI(PluginAPI* pluginAPI, DeviceSourceAPI* deviceAPI, QWidget* parent = NULL); virtual ~SSBDemodGUI(); diff --git a/plugins/channelrx/demodwfm/wfmdemodgui.h b/plugins/channelrx/demodwfm/wfmdemodgui.h index 9aee10ad0..630fdc1cc 100644 --- a/plugins/channelrx/demodwfm/wfmdemodgui.h +++ b/plugins/channelrx/demodwfm/wfmdemodgui.h @@ -1,10 +1,11 @@ #ifndef INCLUDE_WFMDEMODGUI_H #define INCLUDE_WFMDEMODGUI_H -#include #include "gui/rollupwidget.h" #include "dsp/channelmarker.h" #include "dsp/movingaverage.h" +#include "plugin/plugininstanceui.h" +#include "util/messagequeue.h" class PluginAPI; class DeviceSourceAPI; @@ -32,7 +33,7 @@ public: void resetToDefaults(); QByteArray serialize() const; bool deserialize(const QByteArray& data); - + virtual MessageQueue *getInputMessageQueue() { return &m_inputMessageQueue; } virtual bool handleMessage(const Message& message); static const QString m_channelID; @@ -63,6 +64,7 @@ private: DownChannelizer* m_channelizer; WFMDemod* m_wfmDemod; MovingAverage m_channelPowerDbAvg; + MessageQueue m_inputMessageQueue; static const int m_rfBW[]; static const int m_nbRfBW; diff --git a/plugins/channelrx/tcpsrc/tcpsrcgui.h b/plugins/channelrx/tcpsrc/tcpsrcgui.h index ed35c716e..5986380ef 100644 --- a/plugins/channelrx/tcpsrc/tcpsrcgui.h +++ b/plugins/channelrx/tcpsrc/tcpsrcgui.h @@ -1,13 +1,15 @@ #ifndef INCLUDE_TCPSRCGUI_H #define INCLUDE_TCPSRCGUI_H -#include #include + #include "gui/rollupwidget.h" #include "dsp/channelmarker.h" #include "dsp/movingaverage.h" +#include "plugin/plugininstanceui.h" +#include "util/messagequeue.h" -#include "../../channelrx/tcpsrc/tcpsrc.h" +#include "tcpsrc.h" class PluginAPI; class DeviceSourceAPI; @@ -35,7 +37,7 @@ public: void resetToDefaults(); QByteArray serialize() const; bool deserialize(const QByteArray& data); - + virtual MessageQueue *getInputMessageQueue() { return &m_inputMessageQueue; } virtual bool handleMessage(const Message& message); static const QString m_channelID; @@ -74,6 +76,7 @@ private: ThreadedBasebandSampleSink* m_threadedChannelizer; DownChannelizer* m_channelizer; SpectrumVis* m_spectrumVis; + MessageQueue m_inputMessageQueue; explicit TCPSrcGUI(PluginAPI* pluginAPI, DeviceSourceAPI *deviceAPI, QWidget* parent = 0); virtual ~TCPSrcGUI(); diff --git a/plugins/channelrx/udpsrc/udpsrcgui.h b/plugins/channelrx/udpsrc/udpsrcgui.h index 420191b86..2c3973091 100644 --- a/plugins/channelrx/udpsrc/udpsrcgui.h +++ b/plugins/channelrx/udpsrc/udpsrcgui.h @@ -18,11 +18,12 @@ #ifndef INCLUDE_UDPSRCGUI_H #define INCLUDE_UDPSRCGUI_H -#include #include #include "gui/rollupwidget.h" #include "dsp/channelmarker.h" #include "dsp/movingaverage.h" +#include "plugin/plugininstanceui.h" +#include "util/messagequeue.h" #include "udpsrc.h" @@ -52,7 +53,7 @@ public: void resetToDefaults(); QByteArray serialize() const; bool deserialize(const QByteArray& data); - + virtual MessageQueue *getInputMessageQueue() { return &m_inputMessageQueue; } virtual bool handleMessage(const Message& message); static const QString m_channelID; @@ -99,6 +100,7 @@ private: bool m_audioStereo; int m_volume; bool m_doApplySettings; + MessageQueue m_inputMessageQueue; // RF path ThreadedBasebandSampleSink* m_threadedChannelizer; diff --git a/plugins/channeltx/modam/ammodgui.h b/plugins/channeltx/modam/ammodgui.h index 0bbfdb4a1..6c2c523c2 100644 --- a/plugins/channeltx/modam/ammodgui.h +++ b/plugins/channeltx/modam/ammodgui.h @@ -17,10 +17,12 @@ #ifndef PLUGINS_CHANNELTX_MODAM_AMMODGUI_H_ #define PLUGINS_CHANNELTX_MODAM_AMMODGUI_H_ -#include #include "gui/rollupwidget.h" #include "dsp/channelmarker.h" #include "dsp/movingaverage.h" +#include "plugin/plugininstanceui.h" +#include "util/messagequeue.h" + #include "ammod.h" class PluginAPI; @@ -49,7 +51,7 @@ public: void resetToDefaults(); QByteArray serialize() const; bool deserialize(const QByteArray& data); - + virtual MessageQueue *getInputMessageQueue() { return &m_inputMessageQueue; } virtual bool handleMessage(const Message& message); static const QString m_channelID; @@ -99,6 +101,7 @@ private: std::size_t m_tickCount; bool m_enableNavTime; AMMod::AMModInputAF m_modAFInput; + MessageQueue m_inputMessageQueue; explicit AMModGUI(PluginAPI* pluginAPI, DeviceSinkAPI *deviceAPI, QWidget* parent = NULL); virtual ~AMModGUI(); diff --git a/plugins/channeltx/modatv/atvmodgui.h b/plugins/channeltx/modatv/atvmodgui.h index 84dd439d9..66cd4c38d 100644 --- a/plugins/channeltx/modatv/atvmodgui.h +++ b/plugins/channeltx/modatv/atvmodgui.h @@ -17,10 +17,12 @@ #ifndef PLUGINS_CHANNELTX_MODTV_ATVMODGUI_H_ #define PLUGINS_CHANNELTX_MODTV_ATVMODGUI_H_ -#include #include "gui/rollupwidget.h" #include "dsp/channelmarker.h" #include "dsp/movingaverage.h" +#include "plugin/plugininstanceui.h" +#include "util/messagequeue.h" + #include "atvmod.h" class PluginAPI; @@ -50,7 +52,7 @@ public: void resetToDefaults(); QByteArray serialize() const; bool deserialize(const QByteArray& data); - + virtual MessageQueue *getInputMessageQueue() { return &m_inputMessageQueue; } virtual bool handleMessage(const Message& message); static const QString m_channelID; @@ -118,6 +120,7 @@ private: bool m_enableNavTime; QMessageBox *m_camBusyFPSMessageBox; int m_rfSliderDivisor; + MessageQueue m_inputMessageQueue; explicit ATVModGUI(PluginAPI* pluginAPI, DeviceSinkAPI *deviceAPI, QWidget* parent = NULL); virtual ~ATVModGUI(); diff --git a/plugins/channeltx/modnfm/nfmmodgui.h b/plugins/channeltx/modnfm/nfmmodgui.h index 5d1fad4d9..8e9759e50 100644 --- a/plugins/channeltx/modnfm/nfmmodgui.h +++ b/plugins/channeltx/modnfm/nfmmodgui.h @@ -17,10 +17,11 @@ #ifndef PLUGINS_CHANNELTX_MODNFM_NFMMODGUI_H_ #define PLUGINS_CHANNELTX_MODNFM_NFMMODGUI_H_ -#include #include "gui/rollupwidget.h" #include "dsp/channelmarker.h" #include "dsp/movingaverage.h" +#include "plugin/plugininstanceui.h" +#include "util/messagequeue.h" #include "nfmmod.h" @@ -50,7 +51,7 @@ public: void resetToDefaults(); QByteArray serialize() const; bool deserialize(const QByteArray& data); - + virtual MessageQueue *getInputMessageQueue() { return &m_inputMessageQueue; } virtual bool handleMessage(const Message& message); static const QString m_channelID; @@ -104,6 +105,7 @@ private: std::size_t m_tickCount; bool m_enableNavTime; NFMMod::NFMModInputAF m_modAFInput; + MessageQueue m_inputMessageQueue; static const int m_rfBW[]; static const int m_nbRfBW; diff --git a/plugins/channeltx/modssb/ssbmodgui.h b/plugins/channeltx/modssb/ssbmodgui.h index 49a81796e..098a7e079 100644 --- a/plugins/channeltx/modssb/ssbmodgui.h +++ b/plugins/channeltx/modssb/ssbmodgui.h @@ -17,10 +17,12 @@ #ifndef PLUGINS_CHANNELTX_MODSSB_SSBMODGUI_H_ #define PLUGINS_CHANNELTX_MODSSB_SSBMODGUI_H_ -#include #include "gui/rollupwidget.h" #include "dsp/channelmarker.h" #include "dsp/movingaverage.h" +#include "plugin/plugininstanceui.h" +#include "util/messagequeue.h" + #include "ssbmod.h" class PluginAPI; @@ -50,7 +52,7 @@ public: void resetToDefaults(); QByteArray serialize() const; bool deserialize(const QByteArray& data); - + virtual MessageQueue *getInputMessageQueue() { return &m_inputMessageQueue; } virtual bool handleMessage(const Message& message); static const QString m_channelID; @@ -113,6 +115,8 @@ private: std::size_t m_tickCount; bool m_enableNavTime; SSBMod::SSBModInputAF m_modAFInput; + MessageQueue m_inputMessageQueue; + static const int m_agcTimeConstant[]; //!< time constant index to value in ms explicit SSBModGUI(PluginAPI* pluginAPI, DeviceSinkAPI *deviceAPI, QWidget* parent = NULL); diff --git a/plugins/channeltx/modwfm/wfmmodgui.h b/plugins/channeltx/modwfm/wfmmodgui.h index d4d5cda08..8add57c38 100644 --- a/plugins/channeltx/modwfm/wfmmodgui.h +++ b/plugins/channeltx/modwfm/wfmmodgui.h @@ -17,10 +17,11 @@ #ifndef PLUGINS_CHANNELTX_MODWFM_WFMMODGUI_H_ #define PLUGINS_CHANNELTX_MODWFM_WFMMODGUI_H_ -#include #include "gui/rollupwidget.h" #include "dsp/channelmarker.h" #include "dsp/movingaverage.h" +#include "plugin/plugininstanceui.h" +#include "util/messagequeue.h" #include "wfmmod.h" @@ -50,7 +51,7 @@ public: void resetToDefaults(); QByteArray serialize() const; bool deserialize(const QByteArray& data); - + virtual MessageQueue *getInputMessageQueue() { return &m_inputMessageQueue; } virtual bool handleMessage(const Message& message); static const QString m_channelID; @@ -101,6 +102,7 @@ private: std::size_t m_tickCount; bool m_enableNavTime; WFMMod::WFMModInputAF m_modAFInput; + MessageQueue m_inputMessageQueue; static const int m_rfBW[]; static const int m_nbRfBW; diff --git a/plugins/channeltx/udpsink/udpsinkgui.h b/plugins/channeltx/udpsink/udpsinkgui.h index 958ff178d..f4291ca0f 100644 --- a/plugins/channeltx/udpsink/udpsinkgui.h +++ b/plugins/channeltx/udpsink/udpsinkgui.h @@ -17,11 +17,12 @@ #ifndef PLUGINS_CHANNELTX_UDPSINK_UDPSINKGUI_H_ #define PLUGINS_CHANNELTX_UDPSINK_UDPSINKGUI_H_ -#include #include #include "gui/rollupwidget.h" #include "dsp/channelmarker.h" +#include "plugin/plugininstanceui.h" +#include "util/messagequeue.h" #include "udpsink.h" @@ -50,6 +51,7 @@ public: virtual void resetToDefaults(); virtual QByteArray serialize() const; virtual bool deserialize(const QByteArray& data); + virtual MessageQueue *getInputMessageQueue() { return &m_inputMessageQueue; } virtual bool handleMessage(const Message& message); static const QString m_channelID; @@ -97,6 +99,7 @@ private: Real m_rfBandwidth; int m_fmDeviation; bool m_doApplySettings; + MessageQueue m_inputMessageQueue; explicit UDPSinkGUI(PluginAPI* pluginAPI, DeviceSinkAPI *deviceAPI, QWidget* parent = NULL); virtual ~UDPSinkGUI(); diff --git a/plugins/samplesink/bladerfoutput/bladerfoutputgui.h b/plugins/samplesink/bladerfoutput/bladerfoutputgui.h index 8947022e7..112120b33 100644 --- a/plugins/samplesink/bladerfoutput/bladerfoutputgui.h +++ b/plugins/samplesink/bladerfoutput/bladerfoutputgui.h @@ -17,10 +17,12 @@ #ifndef INCLUDE_BLADERFOUTPUTGUI_H #define INCLUDE_BLADERFOUTPUTGUI_H -#include #include #include +#include "plugin/plugininstanceui.h" +#include "util/messagequeue.h" + #include "bladerfoutput.h" class DeviceSinkAPI; @@ -46,6 +48,7 @@ public: virtual void setCenterFrequency(qint64 centerFrequency); QByteArray serialize() const; bool deserialize(const QByteArray& data); + virtual MessageQueue *getInputMessageQueue() { return &m_inputMessageQueue; } virtual bool handleMessage(const Message& message); private: @@ -59,6 +62,7 @@ private: int m_sampleRate; quint64 m_deviceCenterFrequency; //!< Center frequency in device int m_lastEngineState; + MessageQueue m_inputMessageQueue; void displaySettings(); void sendSettings(); diff --git a/plugins/samplesink/filesink/filesinkgui.h b/plugins/samplesink/filesink/filesinkgui.h index bed2b354c..5a05b37ec 100644 --- a/plugins/samplesink/filesink/filesinkgui.h +++ b/plugins/samplesink/filesink/filesinkgui.h @@ -17,10 +17,12 @@ #ifndef INCLUDE_FILESINKGUI_H #define INCLUDE_FILESINKGUI_H -#include #include #include +#include "plugin/plugininstanceui.h" +#include "util/messagequeue.h" + #include "filesinkoutput.h" #include "filesinksettings.h" @@ -48,6 +50,7 @@ public: virtual void setCenterFrequency(qint64 centerFrequency); QByteArray serialize() const; bool deserialize(const QByteArray& data); + virtual MessageQueue *getInputMessageQueue() { return &m_inputMessageQueue; } virtual bool handleMessage(const Message& message); private: @@ -66,6 +69,7 @@ private: int m_samplesCount; std::size_t m_tickCount; int m_lastEngineState; + MessageQueue m_inputMessageQueue; void displaySettings(); void displayTime(); diff --git a/plugins/samplesink/hackrfoutput/hackrfoutputgui.h b/plugins/samplesink/hackrfoutput/hackrfoutputgui.h index ea998569b..4be86eda2 100644 --- a/plugins/samplesink/hackrfoutput/hackrfoutputgui.h +++ b/plugins/samplesink/hackrfoutput/hackrfoutputgui.h @@ -17,10 +17,12 @@ #ifndef INCLUDE_HACKRFOUTPUTGUI_H #define INCLUDE_HACKRFOUTPUTGUI_H -#include #include #include +#include "plugin/plugininstanceui.h" +#include "util/messagequeue.h" + #include "hackrfoutput.h" #define HACKRF_MAX_DEVICE (32) @@ -56,6 +58,7 @@ public: virtual void setCenterFrequency(qint64 centerFrequency); QByteArray serialize() const; bool deserialize(const QByteArray& data); + virtual MessageQueue *getInputMessageQueue() { return &m_inputMessageQueue; } virtual bool handleMessage(const Message& message); private: @@ -69,6 +72,7 @@ private: int m_sampleRate; quint64 m_deviceCenterFrequency; //!< Center frequency in device int m_lastEngineState; + MessageQueue m_inputMessageQueue; void displaySettings(); void displayBandwidths(); diff --git a/plugins/samplesink/limesdroutput/limesdroutputgui.h b/plugins/samplesink/limesdroutput/limesdroutputgui.h index 6d698a9a0..85c26e5da 100644 --- a/plugins/samplesink/limesdroutput/limesdroutputgui.h +++ b/plugins/samplesink/limesdroutput/limesdroutputgui.h @@ -17,10 +17,12 @@ #ifndef PLUGINS_SAMPLESOURCE_LIMESDROUTPUT_LIMESDROUTPUTGUI_H_ #define PLUGINS_SAMPLESOURCE_LIMESDROUTPUT_LIMESDROUTPUTGUI_H_ -#include #include #include +#include "plugin/plugininstanceui.h" +#include "util/messagequeue.h" + #include "limesdroutput.h" class DeviceSinkAPI; @@ -46,6 +48,7 @@ public: virtual void setCenterFrequency(qint64 centerFrequency); QByteArray serialize() const; bool deserialize(const QByteArray& data); + virtual MessageQueue *getInputMessageQueue() { return &m_inputMessageQueue; } virtual bool handleMessage(const Message& message); private: @@ -63,6 +66,7 @@ private: bool m_doApplySettings; int m_statusCounter; int m_deviceStatusCounter; + MessageQueue m_inputMessageQueue; void displaySettings(); void setNCODisplay(); diff --git a/plugins/samplesink/sdrdaemonsink/sdrdaemonsinkgui.h b/plugins/samplesink/sdrdaemonsink/sdrdaemonsinkgui.h index 15efa5a49..21f9419aa 100644 --- a/plugins/samplesink/sdrdaemonsink/sdrdaemonsinkgui.h +++ b/plugins/samplesink/sdrdaemonsink/sdrdaemonsinkgui.h @@ -17,11 +17,13 @@ #ifndef INCLUDE_SDRDAEMONSINKGUI_H #define INCLUDE_SDRDAEMONSINKGUI_H -#include #include #include #include +#include "plugin/plugininstanceui.h" +#include "util/messagequeue.h" + #include "sdrdaemonsinksettings.h" #include "sdrdaemonsinkoutput.h" @@ -49,6 +51,7 @@ public: virtual void setCenterFrequency(qint64 centerFrequency); QByteArray serialize() const; bool deserialize(const QByteArray& data); + virtual MessageQueue *getInputMessageQueue() { return &m_inputMessageQueue; } virtual bool handleMessage(const Message& message); private: @@ -79,6 +82,8 @@ private: QPalette m_paletteRedText; QPalette m_paletteWhiteText; + MessageQueue m_inputMessageQueue; + void blockApplySettings(bool block); void displaySettings(); void displayTime(); diff --git a/plugins/samplesource/airspy/airspygui.h b/plugins/samplesource/airspy/airspygui.h index 9737f701e..475ea652b 100644 --- a/plugins/samplesource/airspy/airspygui.h +++ b/plugins/samplesource/airspy/airspygui.h @@ -17,10 +17,11 @@ #ifndef INCLUDE_AIRSPYGUI_H #define INCLUDE_AIRSPYGUI_H -#include #include #include +#include "plugin/plugininstanceui.h" +#include "util/messagequeue.h" #include "airspyinput.h" #define AIRSPY_MAX_DEVICE (32) @@ -48,6 +49,7 @@ public: virtual void setCenterFrequency(qint64 centerFrequency); QByteArray serialize() const; bool deserialize(const QByteArray& data); + virtual MessageQueue* getInputMessageQueue() { return &m_inputMessageQueue; } virtual bool handleMessage(const Message& message); uint32_t getDevSampleRate(unsigned int index); int getDevSampleRateIndex(uint32_t sampleRate); @@ -64,6 +66,7 @@ private: int m_sampleRate; quint64 m_deviceCenterFrequency; //!< Center frequency in device int m_lastEngineState; + MessageQueue m_inputMessageQueue; void displaySettings(); void displaySampleRates(); diff --git a/plugins/samplesource/bladerfinput/bladerfinputgui.h b/plugins/samplesource/bladerfinput/bladerfinputgui.h index d340895a6..686516bf6 100644 --- a/plugins/samplesource/bladerfinput/bladerfinputgui.h +++ b/plugins/samplesource/bladerfinput/bladerfinputgui.h @@ -17,10 +17,12 @@ #ifndef INCLUDE_BLADERFINPUTGUI_H #define INCLUDE_BLADERFINPUTGUI_H -#include #include #include +#include "plugin/plugininstanceui.h" +#include "util/messagequeue.h" + #include "bladerfinput.h" class DeviceSourceAPI; @@ -45,6 +47,7 @@ public: virtual void setCenterFrequency(qint64 centerFrequency); QByteArray serialize() const; bool deserialize(const QByteArray& data); + virtual MessageQueue *getInputMessageQueue() { return &m_inputMessageQueue; } virtual bool handleMessage(const Message& message); private: @@ -59,6 +62,7 @@ private: int m_sampleRate; quint64 m_deviceCenterFrequency; //!< Center frequency in device int m_lastEngineState; + MessageQueue m_inputMessageQueue; void displaySettings(); void sendSettings(); diff --git a/plugins/samplesource/fcdpro/fcdprogui.h b/plugins/samplesource/fcdpro/fcdprogui.h index 3c75cf18a..fa371b5e6 100644 --- a/plugins/samplesource/fcdpro/fcdprogui.h +++ b/plugins/samplesource/fcdpro/fcdprogui.h @@ -17,10 +17,12 @@ #ifndef INCLUDE_FCDPROGUI_H #define INCLUDE_FCDPROGUI_H -#include #include #include +#include "plugin/plugininstanceui.h" +#include "util/messagequeue.h" + #include "fcdproinput.h" class DeviceSourceAPI; @@ -46,7 +48,7 @@ public: virtual void setCenterFrequency(qint64 centerFrequency); QByteArray serialize() const; bool deserialize(const QByteArray& data); - + virtual MessageQueue *getInputMessageQueue() { return &m_inputMessageQueue; } virtual bool handleMessage(const Message& message); private: @@ -61,6 +63,7 @@ private: int m_sampleRate; quint64 m_deviceCenterFrequency; //!< Center frequency in device int m_lastEngineState; + MessageQueue m_inputMessageQueue; void displaySettings(); void sendSettings(); diff --git a/plugins/samplesource/fcdproplus/fcdproplusgui.h b/plugins/samplesource/fcdproplus/fcdproplusgui.h index 57c177d80..2a6d68b20 100644 --- a/plugins/samplesource/fcdproplus/fcdproplusgui.h +++ b/plugins/samplesource/fcdproplus/fcdproplusgui.h @@ -17,10 +17,12 @@ #ifndef INCLUDE_FCDGUI_H #define INCLUDE_FCDGUI_H -#include #include #include +#include "plugin/plugininstanceui.h" +#include "util/messagequeue.h" + #include "fcdproplusinput.h" class DeviceSourceAPI; @@ -45,7 +47,7 @@ public: virtual void setCenterFrequency(qint64 centerFrequency); QByteArray serialize() const; bool deserialize(const QByteArray& data); - + virtual MessageQueue *getInputMessageQueue() { return &m_inputMessageQueue; } virtual bool handleMessage(const Message& message); private: @@ -60,6 +62,7 @@ private: int m_sampleRate; quint64 m_deviceCenterFrequency; //!< Center frequency in device int m_lastEngineState; + MessageQueue m_inputMessageQueue; void displaySettings(); void sendSettings(); diff --git a/plugins/samplesource/filesource/filesourcegui.h b/plugins/samplesource/filesource/filesourcegui.h index 44220462d..4f8aaf414 100644 --- a/plugins/samplesource/filesource/filesourcegui.h +++ b/plugins/samplesource/filesource/filesourcegui.h @@ -17,10 +17,12 @@ #ifndef INCLUDE_FILESOURCEGUI_H #define INCLUDE_FILESOURCEGUI_H -#include #include #include +#include "plugin/plugininstanceui.h" +#include "util/messagequeue.h" + #include "filesourceinput.h" class DeviceSourceAPI; @@ -45,6 +47,7 @@ public: virtual void setCenterFrequency(qint64 centerFrequency); QByteArray serialize() const; bool deserialize(const QByteArray& data); + virtual MessageQueue *getInputMessageQueue() { return &m_inputMessageQueue; } virtual bool handleMessage(const Message& message); private: @@ -67,6 +70,7 @@ private: int m_deviceSampleRate; quint64 m_deviceCenterFrequency; //!< Center frequency in device int m_lastEngineState; + MessageQueue m_inputMessageQueue; void displaySettings(); void displayTime(); diff --git a/plugins/samplesource/hackrfinput/hackrfinputgui.h b/plugins/samplesource/hackrfinput/hackrfinputgui.h index 2e4f9786a..08f9e5cc7 100644 --- a/plugins/samplesource/hackrfinput/hackrfinputgui.h +++ b/plugins/samplesource/hackrfinput/hackrfinputgui.h @@ -17,10 +17,12 @@ #ifndef INCLUDE_HACKRFINPUTGUI_H #define INCLUDE_HACKRFINPUTGUI_H -#include #include #include +#include "plugin/plugininstanceui.h" +#include "util/messagequeue.h" + #include "hackrfinput.h" #define HACKRF_MAX_DEVICE (32) @@ -55,6 +57,7 @@ public: virtual void setCenterFrequency(qint64 centerFrequency); QByteArray serialize() const; bool deserialize(const QByteArray& data); + virtual MessageQueue *getInputMessageQueue() { return &m_inputMessageQueue; } virtual bool handleMessage(const Message& message); private: @@ -69,6 +72,7 @@ private: int m_sampleRate; quint64 m_deviceCenterFrequency; //!< Center frequency in device int m_lastEngineState; + MessageQueue m_inputMessageQueue; void displaySettings(); void displayBandwidths(); diff --git a/plugins/samplesource/limesdrinput/limesdrinputgui.h b/plugins/samplesource/limesdrinput/limesdrinputgui.h index 92975a79b..0277e11e7 100644 --- a/plugins/samplesource/limesdrinput/limesdrinputgui.h +++ b/plugins/samplesource/limesdrinput/limesdrinputgui.h @@ -17,10 +17,12 @@ #ifndef PLUGINS_SAMPLESOURCE_LIMESDRINPUT_LIMESDRINPUTGUI_H_ #define PLUGINS_SAMPLESOURCE_LIMESDRINPUT_LIMESDRINPUTGUI_H_ -#include #include #include +#include "plugin/plugininstanceui.h" +#include "util/messagequeue.h" + #include "limesdrinput.h" class DeviceSourceAPI; @@ -45,6 +47,7 @@ public: virtual void setCenterFrequency(qint64 centerFrequency); QByteArray serialize() const; bool deserialize(const QByteArray& data); + virtual MessageQueue *getInputMessageQueue() { return &m_inputMessageQueue; } virtual bool handleMessage(const Message& message); private: @@ -62,6 +65,7 @@ private: bool m_doApplySettings; int m_statusCounter; int m_deviceStatusCounter; + MessageQueue m_inputMessageQueue; void displaySettings(); void setNCODisplay(); diff --git a/plugins/samplesource/plutosdrinput/plutosdrinputgui.h b/plugins/samplesource/plutosdrinput/plutosdrinputgui.h index 8d1f4f3bc..dd865e398 100644 --- a/plugins/samplesource/plutosdrinput/plutosdrinputgui.h +++ b/plugins/samplesource/plutosdrinput/plutosdrinputgui.h @@ -21,7 +21,8 @@ #include #include -#include +#include "plugin/plugininstanceui.h" +#include "util/messagequeue.h" #include "plutosdrinputsettings.h" @@ -47,6 +48,7 @@ public: virtual void setCenterFrequency(qint64 centerFrequency); virtual QByteArray serialize() const; virtual bool deserialize(const QByteArray& data); + virtual MessageQueue *getInputMessageQueue() { return &m_inputMessageQueue; } virtual bool handleMessage(const Message& message); private: @@ -62,6 +64,7 @@ private: int m_lastEngineState; bool m_doApplySettings; uint32_t m_statusCounter; + MessageQueue m_inputMessageQueue; void displaySettings(); void sendSettings(bool forceSettings = false); diff --git a/plugins/samplesource/rtlsdr/rtlsdrgui.h b/plugins/samplesource/rtlsdr/rtlsdrgui.h index e63d772ae..62aea490c 100644 --- a/plugins/samplesource/rtlsdr/rtlsdrgui.h +++ b/plugins/samplesource/rtlsdr/rtlsdrgui.h @@ -17,10 +17,12 @@ #ifndef INCLUDE_RTLSDRGUI_H #define INCLUDE_RTLSDRGUI_H -#include #include #include +#include "plugin/plugininstanceui.h" +#include "util/messagequeue.h" + #include "rtlsdrinput.h" class DeviceSourceAPI; @@ -46,6 +48,7 @@ public: virtual void setCenterFrequency(qint64 centerFrequency); QByteArray serialize() const; bool deserialize(const QByteArray& data); + virtual MessageQueue *getInputMessageQueue() { return &m_inputMessageQueue; } virtual bool handleMessage(const Message& message); private: @@ -60,6 +63,7 @@ private: int m_sampleRate; quint64 m_deviceCenterFrequency; //!< Center frequency in device int m_lastEngineState; + MessageQueue m_inputMessageQueue; void queryDeviceReport(); void displayGains(); diff --git a/plugins/samplesource/sdrdaemonsource/sdrdaemonsourcegui.h b/plugins/samplesource/sdrdaemonsource/sdrdaemonsourcegui.h index 923b457db..3f5fae5cd 100644 --- a/plugins/samplesource/sdrdaemonsource/sdrdaemonsourcegui.h +++ b/plugins/samplesource/sdrdaemonsource/sdrdaemonsourcegui.h @@ -17,11 +17,13 @@ #ifndef INCLUDE_SDRDAEMONSOURCEGUI_H #define INCLUDE_SDRDAEMONSOURCEGUI_H -#include #include #include - #include + +#include "plugin/plugininstanceui.h" +#include "util/messagequeue.h" + #include "sdrdaemonsourceinput.h" class DeviceSourceAPI; @@ -46,6 +48,7 @@ public: bool deserialize(const QByteArray& data); virtual qint64 getCenterFrequency() const; virtual void setCenterFrequency(qint64 centerFrequency); + virtual MessageQueue *getInputMessageQueue() { return &m_inputMessageQueue; } virtual bool handleMessage(const Message& message); private: @@ -61,6 +64,7 @@ private: int m_deviceSampleRate; quint64 m_deviceCenterFrequency; //!< Center frequency in device int m_lastEngineState; + MessageQueue m_inputMessageQueue; int m_sampleRate; quint64 m_centerFrequency; diff --git a/plugins/samplesource/sdrplay/sdrplaygui.h b/plugins/samplesource/sdrplay/sdrplaygui.h index 63453a0b5..b97dc2527 100644 --- a/plugins/samplesource/sdrplay/sdrplaygui.h +++ b/plugins/samplesource/sdrplay/sdrplaygui.h @@ -17,11 +17,13 @@ #ifndef PLUGINS_SAMPLESOURCE_SDRPLAY_SDRPLAYGUI_H_ #define PLUGINS_SAMPLESOURCE_SDRPLAY_SDRPLAYGUI_H_ -#include #include #include - #include + +#include "plugin/plugininstanceui.h" +#include "util/messagequeue.h" + #include "sdrplayinput.h" #include "sdrplaysettings.h" @@ -48,6 +50,7 @@ public: virtual void setCenterFrequency(qint64 centerFrequency); virtual QByteArray serialize() const; virtual bool deserialize(const QByteArray& data); + virtual MessageQueue *getInputMessageQueue() { return &m_inputMessageQueue; } virtual bool handleMessage(const Message& message); private: @@ -61,6 +64,7 @@ private: int m_sampleRate; quint64 m_deviceCenterFrequency; //!< Center frequency in device int m_lastEngineState; + MessageQueue m_inputMessageQueue; void displaySettings(); void sendSettings(); diff --git a/sdrbase/plugin/plugininstanceui.h b/sdrbase/plugin/plugininstanceui.h index dc54260d6..3a6a302c3 100644 --- a/sdrbase/plugin/plugininstanceui.h +++ b/sdrbase/plugin/plugininstanceui.h @@ -8,6 +8,7 @@ #include "util/export.h" class Message; +class MessageQueue; class SDRANGEL_API PluginInstanceUI { public: @@ -27,6 +28,8 @@ public: virtual QByteArray serialize() const = 0; virtual bool deserialize(const QByteArray& data) = 0; + virtual MessageQueue* getInputMessageQueue() = 0; + virtual bool handleMessage(const Message& message) = 0; };