From 77ba4dac607b7e506e002b05f8f9a3fd4a0f1d05 Mon Sep 17 00:00:00 2001 From: f4exb Date: Tue, 17 Oct 2017 21:08:54 +0200 Subject: [PATCH] UDP sink: separate GUI and sink (1) --- plugins/channeltx/udpsink/udpsink.cpp | 3 ++- plugins/channeltx/udpsink/udpsink.h | 6 +++++- plugins/channeltx/udpsink/udpsinkgui.cpp | 2 +- 3 files changed, 8 insertions(+), 3 deletions(-) diff --git a/plugins/channeltx/udpsink/udpsink.cpp b/plugins/channeltx/udpsink/udpsink.cpp index a4ad999bf..c0c7c9c15 100644 --- a/plugins/channeltx/udpsink/udpsink.cpp +++ b/plugins/channeltx/udpsink/udpsink.cpp @@ -26,7 +26,8 @@ MESSAGE_CLASS_DEFINITION(UDPSink::MsgConfigureChannelizer, Message) MESSAGE_CLASS_DEFINITION(UDPSink::MsgUDPSinkSpectrum, Message) MESSAGE_CLASS_DEFINITION(UDPSink::MsgResetReadIndex, Message) -UDPSink::UDPSink(BasebandSampleSink* spectrum) : +UDPSink::UDPSink(DeviceSinkAPI *deviceAPI, BasebandSampleSink* spectrum) : + m_deviceAPI(deviceAPI), m_squelch(1e-6), m_spectrum(spectrum), m_spectrumEnabled(false), diff --git a/plugins/channeltx/udpsink/udpsink.h b/plugins/channeltx/udpsink/udpsink.h index 163e1e0c5..b72bbc6d7 100644 --- a/plugins/channeltx/udpsink/udpsink.h +++ b/plugins/channeltx/udpsink/udpsink.h @@ -30,6 +30,8 @@ #include "udpsinkudphandler.h" #include "udpsinksettings.h" +class DeviceSinkAPI; + class UDPSink : public BasebandSampleSource { Q_OBJECT @@ -81,7 +83,7 @@ public: { } }; - UDPSink(BasebandSampleSink* spectrum); + UDPSink(DeviceSinkAPI *deviceAPI, BasebandSampleSink* spectrum); virtual ~UDPSink(); virtual void start(); @@ -144,6 +146,8 @@ private: { } }; + DeviceSinkAPI* m_deviceAPI; + UDPSinkSettings m_settings; Real m_squelch; diff --git a/plugins/channeltx/udpsink/udpsinkgui.cpp b/plugins/channeltx/udpsink/udpsinkgui.cpp index 09781b103..c6a64272b 100644 --- a/plugins/channeltx/udpsink/udpsinkgui.cpp +++ b/plugins/channeltx/udpsink/udpsinkgui.cpp @@ -122,7 +122,7 @@ UDPSinkGUI::UDPSinkGUI(PluginAPI* pluginAPI, DeviceSinkAPI *deviceAPI, QWidget* setAttribute(Qt::WA_DeleteOnClose, true); m_spectrumVis = new SpectrumVis(ui->glSpectrum); - m_udpSink = new UDPSink(m_spectrumVis); + m_udpSink = new UDPSink(m_deviceAPI, m_spectrumVis); m_udpSink->setMessageQueueToGUI(getInputMessageQueue()); m_channelizer = new UpChannelizer(m_udpSink); m_threadedChannelizer = new ThreadedBasebandSampleSource(m_channelizer, this);