summaryrefslogtreecommitdiff
path: root/plugins
diff options
context:
space:
mode:
authorf4exb <f4exb06@gmail.com>2016-05-12 23:35:30 +0200
committerf4exb <f4exb06@gmail.com>2016-05-12 23:35:30 +0200
commit7707858d579b32e77307baec1ce7fb8b975e61a8 (patch)
tree3b5059fa07d328302332d88c391e7b82a6633caf /plugins
parent7b0e6fd42e0bba6258126b34f8ca601516da1465 (diff)
Multi device support: pass plugin API to devices input handlers to give access to DSP device engine methods
Diffstat (limited to 'plugins')
-rw-r--r--plugins/samplesource/airspy/airspygui.cpp2
-rw-r--r--plugins/samplesource/airspy/airspyinput.cpp6
-rw-r--r--plugins/samplesource/airspy/airspyinput.h4
-rw-r--r--plugins/samplesource/bladerf/bladerfgui.cpp2
-rw-r--r--plugins/samplesource/bladerf/bladerfinput.cpp6
-rw-r--r--plugins/samplesource/bladerf/bladerfinput.h4
-rw-r--r--plugins/samplesource/fcdpro/fcdprogui.cpp2
-rw-r--r--plugins/samplesource/fcdpro/fcdproinput.cpp7
-rw-r--r--plugins/samplesource/fcdpro/fcdproinput.h4
-rw-r--r--plugins/samplesource/fcdproplus/fcdproplusgui.cpp2
-rw-r--r--plugins/samplesource/fcdproplus/fcdproplusinput.cpp10
-rw-r--r--plugins/samplesource/fcdproplus/fcdproplusinput.h4
-rw-r--r--plugins/samplesource/hackrf/hackrfgui.cpp2
-rw-r--r--plugins/samplesource/hackrf/hackrfinput.cpp7
-rw-r--r--plugins/samplesource/hackrf/hackrfinput.h4
-rw-r--r--plugins/samplesource/rtlsdr/rtlsdrgui.cpp2
-rw-r--r--plugins/samplesource/rtlsdr/rtlsdrinput.cpp12
-rw-r--r--plugins/samplesource/rtlsdr/rtlsdrinput.h4
-rw-r--r--plugins/samplesource/sdrdaemon/sdrdaemongui.cpp2
-rw-r--r--plugins/samplesource/sdrdaemon/sdrdaemoninput.cpp4
-rw-r--r--plugins/samplesource/sdrdaemon/sdrdaemoninput.h4
21 files changed, 62 insertions, 32 deletions
diff --git a/plugins/samplesource/airspy/airspygui.cpp b/plugins/samplesource/airspy/airspygui.cpp
index 60b54b2fc..ad55b1345 100644
--- a/plugins/samplesource/airspy/airspygui.cpp
+++ b/plugins/samplesource/airspy/airspygui.cpp
@@ -46,7 +46,7 @@ AirspyGui::AirspyGui(PluginAPI* pluginAPI, QWidget* parent) :
displaySettings();
- m_sampleSource = new AirspyInput();
+ m_sampleSource = new AirspyInput(m_pluginAPI);
m_rates = ((AirspyInput*) m_sampleSource)->getSampleRates();
displaySampleRates();
connect(m_sampleSource->getOutputMessageQueueToGUI(), SIGNAL(messageEnqueued()), this, SLOT(handleSourceMessages()));
diff --git a/plugins/samplesource/airspy/airspyinput.cpp b/plugins/samplesource/airspy/airspyinput.cpp
index d0ad423bf..9811a2c63 100644
--- a/plugins/samplesource/airspy/airspyinput.cpp
+++ b/plugins/samplesource/airspy/airspyinput.cpp
@@ -20,6 +20,7 @@
#include "airspygui.h"
#include "airspyinput.h"
+#include "plugin/pluginapi.h"
#include "dsp/dspcommands.h"
#include "dsp/dspengine.h"
#include "airspysettings.h"
@@ -28,7 +29,8 @@
MESSAGE_CLASS_DEFINITION(AirspyInput::MsgConfigureAirspy, Message)
MESSAGE_CLASS_DEFINITION(AirspyInput::MsgReportAirspy, Message)
-AirspyInput::AirspyInput() :
+AirspyInput::AirspyInput(PluginAPI *pluginAPI) :
+ m_pluginAPI(pluginAPI),
m_settings(),
m_dev(0),
m_airspyThread(0),
@@ -449,7 +451,7 @@ bool AirspyInput::applySettings(const AirspySettings& settings, bool force)
{
int sampleRate = devSampleRate/(1<<m_settings.m_log2Decim);
DSPSignalNotification *notif = new DSPSignalNotification(sampleRate, m_settings.m_centerFrequency);
- DSPEngine::instance()->getInputMessageQueue()->push(notif);
+ m_pluginAPI->getDeviceInputMessageQueue()->push(notif);
}
return true;
diff --git a/plugins/samplesource/airspy/airspyinput.h b/plugins/samplesource/airspy/airspyinput.h
index 2f2527c1c..237a79de8 100644
--- a/plugins/samplesource/airspy/airspyinput.h
+++ b/plugins/samplesource/airspy/airspyinput.h
@@ -22,6 +22,7 @@
#include <libairspy/airspy.h>
#include <QString>
+class PluginAPI;
class AirspyThread;
class AirspyInput : public SampleSource {
@@ -66,7 +67,7 @@ public:
{ }
};
- AirspyInput();
+ AirspyInput(PluginAPI *pluginAPI);
virtual ~AirspyInput();
virtual bool init(const Message& message);
@@ -85,6 +86,7 @@ private:
struct airspy_device *open_airspy_from_sequence(int sequence);
void setCenterFrequency(quint64 freq);
+ PluginAPI *m_pluginAPI;
QMutex m_mutex;
AirspySettings m_settings;
struct airspy_device* m_dev;
diff --git a/plugins/samplesource/bladerf/bladerfgui.cpp b/plugins/samplesource/bladerf/bladerfgui.cpp
index d97c4b8c0..879cc7c23 100644
--- a/plugins/samplesource/bladerf/bladerfgui.cpp
+++ b/plugins/samplesource/bladerf/bladerfgui.cpp
@@ -59,7 +59,7 @@ BladerfGui::BladerfGui(PluginAPI* pluginAPI, QWidget* parent) :
displaySettings();
- m_sampleSource = new BladerfInput();
+ m_sampleSource = new BladerfInput(m_pluginAPI);
DSPEngine::instance()->setSource(m_sampleSource);
char recFileNameCStr[30];
diff --git a/plugins/samplesource/bladerf/bladerfinput.cpp b/plugins/samplesource/bladerf/bladerfinput.cpp
index 18b252aea..f8c66328a 100644
--- a/plugins/samplesource/bladerf/bladerfinput.cpp
+++ b/plugins/samplesource/bladerf/bladerfinput.cpp
@@ -18,6 +18,7 @@
#include <errno.h>
#include <QDebug>
+#include "plugin/pluginapi.h"
#include "util/simpleserializer.h"
#include "dsp/dspcommands.h"
#include "dsp/dspengine.h"
@@ -28,7 +29,8 @@
MESSAGE_CLASS_DEFINITION(BladerfInput::MsgConfigureBladerf, Message)
MESSAGE_CLASS_DEFINITION(BladerfInput::MsgReportBladerf, Message)
-BladerfInput::BladerfInput() :
+BladerfInput::BladerfInput(PluginAPI *pluginAPI) :
+ m_pluginAPI(pluginAPI),
m_settings(),
m_dev(0),
m_bladerfThread(0),
@@ -413,7 +415,7 @@ bool BladerfInput::applySettings(const BladeRFSettings& settings, bool force)
{
int sampleRate = m_settings.m_devSampleRate/(1<<m_settings.m_log2Decim);
DSPSignalNotification *notif = new DSPSignalNotification(sampleRate, m_settings.m_centerFrequency);
- DSPEngine::instance()->getInputMessageQueue()->push(notif);
+ m_pluginAPI->getDeviceInputMessageQueue()->push(notif);
}
qDebug() << "BladerfInput::applySettings: center freq: " << m_settings.m_centerFrequency << " Hz"
diff --git a/plugins/samplesource/bladerf/bladerfinput.h b/plugins/samplesource/bladerf/bladerfinput.h
index 60f6eac91..99c47d8af 100644
--- a/plugins/samplesource/bladerf/bladerfinput.h
+++ b/plugins/samplesource/bladerf/bladerfinput.h
@@ -22,6 +22,7 @@
#include <libbladeRF.h>
#include <QString>
+class PluginAPI;
class BladerfThread;
class BladerfInput : public SampleSource {
@@ -63,7 +64,7 @@ public:
{ }
};
- BladerfInput();
+ BladerfInput(PluginAPI *pluginAPI);
virtual ~BladerfInput();
virtual bool init(const Message& message);
@@ -81,6 +82,7 @@ private:
bladerf_lna_gain getLnaGain(int lnaGain);
struct bladerf *open_bladerf_from_serial(const char *serial);
+ PluginAPI *m_pluginAPI;
QMutex m_mutex;
BladeRFSettings m_settings;
struct bladerf* m_dev;
diff --git a/plugins/samplesource/fcdpro/fcdprogui.cpp b/plugins/samplesource/fcdpro/fcdprogui.cpp
index aeecfb44f..c9561f069 100644
--- a/plugins/samplesource/fcdpro/fcdprogui.cpp
+++ b/plugins/samplesource/fcdpro/fcdprogui.cpp
@@ -140,7 +140,7 @@ FCDProGui::FCDProGui(PluginAPI* pluginAPI, QWidget* parent) :
displaySettings();
- m_sampleSource = new FCDProInput();
+ m_sampleSource = new FCDProInput(m_pluginAPI);
DSPEngine::instance()->setSource(m_sampleSource);
char recFileNameCStr[30];
diff --git a/plugins/samplesource/fcdpro/fcdproinput.cpp b/plugins/samplesource/fcdpro/fcdproinput.cpp
index 750f54318..0a499f80e 100644
--- a/plugins/samplesource/fcdpro/fcdproinput.cpp
+++ b/plugins/samplesource/fcdpro/fcdproinput.cpp
@@ -20,6 +20,8 @@
#include <QDebug>
#include <string.h>
#include <errno.h>
+
+#include "plugin/pluginapi.h"
#include "dsp/dspcommands.h"
#include "dsp/dspengine.h"
#include "fcdproinput.h"
@@ -31,7 +33,8 @@
MESSAGE_CLASS_DEFINITION(FCDProInput::MsgConfigureFCD, Message)
-FCDProInput::FCDProInput() :
+FCDProInput::FCDProInput(PluginAPI *pluginAPI) :
+ m_pluginAPI(pluginAPI),
m_dev(0),
m_settings(),
m_FCDThread(0),
@@ -344,7 +347,7 @@ void FCDProInput::applySettings(const FCDProSettings& settings, bool force)
if (signalChange)
{
DSPSignalNotification *notif = new DSPSignalNotification(fcd_traits<Pro>::sampleRate, m_settings.m_centerFrequency);
- DSPEngine::instance()->getInputMessageQueue()->push(notif);
+ m_pluginAPI->getDeviceInputMessageQueue()->push(notif);
}
}
diff --git a/plugins/samplesource/fcdpro/fcdproinput.h b/plugins/samplesource/fcdpro/fcdproinput.h
index 9c8d7573a..787db25db 100644
--- a/plugins/samplesource/fcdpro/fcdproinput.h
+++ b/plugins/samplesource/fcdpro/fcdproinput.h
@@ -29,6 +29,7 @@ struct fcd_buffer {
std::size_t length;
};
+class PluginAPI;
class FCDProThread;
class FCDProInput : public SampleSource {
@@ -53,7 +54,7 @@ public:
{ }
};
- FCDProInput();
+ FCDProInput(PluginAPI *pluginAPI);
virtual ~FCDProInput();
virtual bool init(const Message& cmd);
@@ -89,6 +90,7 @@ private:
void applySettings(const FCDProSettings& settings, bool force);
void set_lo_ppm();
+ PluginAPI *m_pluginAPI;
hid_device *m_dev;
QMutex m_mutex;
FCDProSettings m_settings;
diff --git a/plugins/samplesource/fcdproplus/fcdproplusgui.cpp b/plugins/samplesource/fcdproplus/fcdproplusgui.cpp
index c4dec99bb..c20cabcfb 100644
--- a/plugins/samplesource/fcdproplus/fcdproplusgui.cpp
+++ b/plugins/samplesource/fcdproplus/fcdproplusgui.cpp
@@ -58,7 +58,7 @@ FCDProPlusGui::FCDProPlusGui(PluginAPI* pluginAPI, QWidget* parent) :
displaySettings();
- m_sampleSource = new FCDProPlusInput();
+ m_sampleSource = new FCDProPlusInput(m_pluginAPI);
DSPEngine::instance()->setSource(m_sampleSource);
char recFileNameCStr[30];
diff --git a/plugins/samplesource/fcdproplus/fcdproplusinput.cpp b/plugins/samplesource/fcdproplus/fcdproplusinput.cpp
index a8fd7acb2..d213ed4bc 100644
--- a/plugins/samplesource/fcdproplus/fcdproplusinput.cpp
+++ b/plugins/samplesource/fcdproplus/fcdproplusinput.cpp
@@ -19,6 +19,8 @@
#include <QDebug>
#include <string.h>
#include <errno.h>
+
+#include "plugin/pluginapi.h"
#include "dsp/dspcommands.h"
#include "dsp/dspengine.h"
#include "fcdproplusinput.h"
@@ -30,7 +32,8 @@
MESSAGE_CLASS_DEFINITION(FCDProPlusInput::MsgConfigureFCD, Message)
-FCDProPlusInput::FCDProPlusInput() :
+FCDProPlusInput::FCDProPlusInput(PluginAPI *pluginAPI) :
+ m_pluginApi(pluginAPI),
m_dev(0),
m_settings(),
m_FCDThread(0),
@@ -177,7 +180,7 @@ void FCDProPlusInput::applySettings(const FCDProPlusSettings& settings, bool for
set_bias_t(settings.m_biasT);
}
}
-
+
if ((m_settings.m_mixGain != settings.m_mixGain) || force)
{
m_settings.m_mixGain = settings.m_mixGain;
@@ -243,7 +246,8 @@ void FCDProPlusInput::applySettings(const FCDProPlusSettings& settings, bool for
if (signalChange)
{
DSPSignalNotification *notif = new DSPSignalNotification(fcd_traits<ProPlus>::sampleRate, m_settings.m_centerFrequency);
- DSPEngine::instance()->getInputMessageQueue()->push(notif);
+ m_pluginApi->getDeviceInputMessageQueue()->push(notif);
+ //DSPEngine::instance()->getInputMessageQueue()->push(notif);
}
}
diff --git a/plugins/samplesource/fcdproplus/fcdproplusinput.h b/plugins/samplesource/fcdproplus/fcdproplusinput.h
index f4af3db1e..ad86290db 100644
--- a/plugins/samplesource/fcdproplus/fcdproplusinput.h
+++ b/plugins/samplesource/fcdproplus/fcdproplusinput.h
@@ -28,6 +28,7 @@ struct fcd_buffer {
std::size_t length;
};
+class PluginAPI;
class FCDProPlusThread;
class FCDProPlusInput : public SampleSource {
@@ -52,7 +53,7 @@ public:
{ }
};
- FCDProPlusInput();
+ FCDProPlusInput(PluginAPI *pluginAPI);
virtual ~FCDProPlusInput();
virtual bool init(const Message& cmd);
@@ -77,6 +78,7 @@ public:
private:
void applySettings(const FCDProPlusSettings& settings, bool force);
+ PluginAPI *m_pluginApi;
hid_device *m_dev;
QMutex m_mutex;
FCDProPlusSettings m_settings;
diff --git a/plugins/samplesource/hackrf/hackrfgui.cpp b/plugins/samplesource/hackrf/hackrfgui.cpp
index 5b489fd54..cd1624db4 100644
--- a/plugins/samplesource/hackrf/hackrfgui.cpp
+++ b/plugins/samplesource/hackrf/hackrfgui.cpp
@@ -46,7 +46,7 @@ HackRFGui::HackRFGui(PluginAPI* pluginAPI, QWidget* parent) :
displaySettings();
- m_sampleSource = new HackRFInput();
+ m_sampleSource = new HackRFInput(m_pluginAPI);
displaySampleRates();
displayBandwidths();
diff --git a/plugins/samplesource/hackrf/hackrfinput.cpp b/plugins/samplesource/hackrf/hackrfinput.cpp
index fefbb1084..7fe2fb7a3 100644
--- a/plugins/samplesource/hackrf/hackrfinput.cpp
+++ b/plugins/samplesource/hackrf/hackrfinput.cpp
@@ -18,6 +18,7 @@
#include <errno.h>
#include <QDebug>
+#include "plugin/pluginapi.h"
#include "util/simpleserializer.h"
#include "dsp/dspcommands.h"
#include "dsp/dspengine.h"
@@ -29,7 +30,8 @@
MESSAGE_CLASS_DEFINITION(HackRFInput::MsgConfigureHackRF, Message)
MESSAGE_CLASS_DEFINITION(HackRFInput::MsgReportHackRF, Message)
-HackRFInput::HackRFInput() :
+HackRFInput::HackRFInput(PluginAPI *pluginAPI) :
+ m_pluginAPI(pluginAPI),
m_settings(),
m_dev(0),
m_hackRFThread(0),
@@ -396,8 +398,7 @@ bool HackRFInput::applySettings(const HackRFSettings& settings, bool force)
{
int sampleRate = devSampleRate/(1<<m_settings.m_log2Decim);
DSPSignalNotification *notif = new DSPSignalNotification(sampleRate, m_settings.m_centerFrequency);
- DSPEngine::instance()->getInputMessageQueue()->push(notif);
- //getOutputMessageQueue()->push(notif);
+ m_pluginAPI->getDeviceInputMessageQueue()->push(notif);
}
return true;
diff --git a/plugins/samplesource/hackrf/hackrfinput.h b/plugins/samplesource/hackrf/hackrfinput.h
index 5349aec6a..24d2bfc6c 100644
--- a/plugins/samplesource/hackrf/hackrfinput.h
+++ b/plugins/samplesource/hackrf/hackrfinput.h
@@ -22,6 +22,7 @@
#include "hackrfsettings.h"
#include <QString>
+class PluginAPI;
class HackRFThread;
class HackRFInput : public SampleSource {
@@ -64,7 +65,7 @@ public:
{ }
};
- HackRFInput();
+ HackRFInput(PluginAPI *pluginAPI);
virtual ~HackRFInput();
virtual bool init(const Message& message);
@@ -82,6 +83,7 @@ private:
hackrf_device *open_hackrf_from_sequence(int sequence);
void setCenterFrequency(quint64 freq);
+ PluginAPI *m_pluginAPI;
QMutex m_mutex;
HackRFSettings m_settings;
struct hackrf_device* m_dev;
diff --git a/plugins/samplesource/rtlsdr/rtlsdrgui.cpp b/plugins/samplesource/rtlsdr/rtlsdrgui.cpp
index fb5bdde7c..9a5750b22 100644
--- a/plugins/samplesource/rtlsdr/rtlsdrgui.cpp
+++ b/plugins/samplesource/rtlsdr/rtlsdrgui.cpp
@@ -51,7 +51,7 @@ RTLSDRGui::RTLSDRGui(PluginAPI* pluginAPI, QWidget* parent) :
displaySettings();
- m_sampleSource = new RTLSDRInput();
+ m_sampleSource = new RTLSDRInput(m_pluginAPI);
connect(m_sampleSource->getOutputMessageQueueToGUI(), SIGNAL(messageEnqueued()), this, SLOT(handleSourceMessages()));
DSPEngine::instance()->setSource(m_sampleSource);
diff --git a/plugins/samplesource/rtlsdr/rtlsdrinput.cpp b/plugins/samplesource/rtlsdr/rtlsdrinput.cpp
index a730f1fe3..f162f82e4 100644
--- a/plugins/samplesource/rtlsdr/rtlsdrinput.cpp
+++ b/plugins/samplesource/rtlsdr/rtlsdrinput.cpp
@@ -21,13 +21,15 @@
#include "rtlsdrinput.h"
#include "rtlsdrthread.h"
#include "rtlsdrgui.h"
+#include "plugin/pluginapi.h"
#include "dsp/dspcommands.h"
#include "dsp/dspengine.h"
MESSAGE_CLASS_DEFINITION(RTLSDRInput::MsgConfigureRTLSDR, Message)
MESSAGE_CLASS_DEFINITION(RTLSDRInput::MsgReportRTLSDR, Message)
-RTLSDRInput::RTLSDRInput() :
+RTLSDRInput::RTLSDRInput(PluginAPI *pluginAPI) :
+ m_pluginAPI(pluginAPI),
m_settings(),
m_dev(0),
m_rtlSDRThread(0),
@@ -230,7 +232,7 @@ bool RTLSDRInput::applySettings(const RTLSDRSettings& settings, bool force)
if ((m_settings.m_devSampleRate != settings.m_devSampleRate) || force)
{
forwardChange = true;
-
+
if(m_dev != 0)
{
if( rtlsdr_set_sample_rate(m_dev, settings.m_devSampleRate) < 0)
@@ -264,7 +266,7 @@ bool RTLSDRInput::applySettings(const RTLSDRSettings& settings, bool force)
if ((m_settings.m_log2Decim != settings.m_log2Decim) || force)
{
forwardChange = true;
-
+
if(m_dev != 0)
{
m_settings.m_log2Decim = settings.m_log2Decim;
@@ -352,7 +354,7 @@ bool RTLSDRInput::applySettings(const RTLSDRSettings& settings, bool force)
qDebug("rtlsdr_set_center_freq(%lld) failed", m_settings.m_centerFrequency);
}
}*/
-
+
if ((m_settings.m_dcBlock != settings.m_dcBlock) || force)
{
m_settings.m_dcBlock = settings.m_dcBlock;
@@ -369,7 +371,7 @@ bool RTLSDRInput::applySettings(const RTLSDRSettings& settings, bool force)
{
int sampleRate = m_settings.m_devSampleRate/(1<<m_settings.m_log2Decim);
DSPSignalNotification *notif = new DSPSignalNotification(sampleRate, m_settings.m_centerFrequency);
- DSPEngine::instance()->getInputMessageQueue()->push(notif);
+ m_pluginAPI->getDeviceInputMessageQueue()->push(notif);
}
return true;
diff --git a/plugins/samplesource/rtlsdr/rtlsdrinput.h b/plugins/samplesource/rtlsdr/rtlsdrinput.h
index 732282e9e..c0f813756 100644
--- a/plugins/samplesource/rtlsdr/rtlsdrinput.h
+++ b/plugins/samplesource/rtlsdr/rtlsdrinput.h
@@ -23,6 +23,7 @@
#include <rtl-sdr.h>
#include <QString>
+class PluginAPI;
class RTLSDRThread;
class RTLSDRInput : public SampleSource {
@@ -67,7 +68,7 @@ public:
{ }
};
- RTLSDRInput();
+ RTLSDRInput(PluginAPI *pluginAPI);
virtual ~RTLSDRInput();
virtual bool init(const Message& message);
@@ -83,6 +84,7 @@ public:
void set_ds_mode(int on);
private:
+ PluginAPI *m_pluginAPI;
QMutex m_mutex;
RTLSDRSettings m_settings;
rtlsdr_dev_t* m_dev;
diff --git a/plugins/samplesource/sdrdaemon/sdrdaemongui.cpp b/plugins/samplesource/sdrdaemon/sdrdaemongui.cpp
index c760b14d9..7c96e84f8 100644
--- a/plugins/samplesource/sdrdaemon/sdrdaemongui.cpp
+++ b/plugins/samplesource/sdrdaemon/sdrdaemongui.cpp
@@ -88,7 +88,7 @@ SDRdaemonGui::SDRdaemonGui(PluginAPI* pluginAPI, QWidget* parent) :
m_statusTimer.start(500);
connect(&(m_pluginAPI->getMainWindow()->getMasterTimer()), SIGNAL(timeout()), this, SLOT(tick()));
- m_sampleSource = new SDRdaemonInput(m_pluginAPI->getMainWindow()->getMasterTimer());
+ m_sampleSource = new SDRdaemonInput(m_pluginAPI->getMainWindow()->getMasterTimer(), m_pluginAPI);
connect(m_sampleSource->getOutputMessageQueueToGUI(), SIGNAL(messageEnqueued()), this, SLOT(handleSourceMessages()));
DSPEngine::instance()->setSource(m_sampleSource);
diff --git a/plugins/samplesource/sdrdaemon/sdrdaemoninput.cpp b/plugins/samplesource/sdrdaemon/sdrdaemoninput.cpp
index a511e1865..6ef78eaef 100644
--- a/plugins/samplesource/sdrdaemon/sdrdaemoninput.cpp
+++ b/plugins/samplesource/sdrdaemon/sdrdaemoninput.cpp
@@ -18,6 +18,7 @@
#include <errno.h>
#include <QDebug>
+#include "plugin/pluginapi.h"
#include "util/simpleserializer.h"
#include "dsp/dspcommands.h"
#include "dsp/dspengine.h"
@@ -37,7 +38,8 @@ MESSAGE_CLASS_DEFINITION(SDRdaemonInput::MsgReportSDRdaemonAcquisition, Message)
MESSAGE_CLASS_DEFINITION(SDRdaemonInput::MsgReportSDRdaemonStreamData, Message)
MESSAGE_CLASS_DEFINITION(SDRdaemonInput::MsgReportSDRdaemonStreamTiming, Message)
-SDRdaemonInput::SDRdaemonInput(const QTimer& masterTimer) :
+SDRdaemonInput::SDRdaemonInput(const QTimer& masterTimer, PluginAPI *pluginAPI) :
+ m_pluginAPI(pluginAPI),
m_address("127.0.0.1"),
m_port(9090),
m_SDRdaemonUDPHandler(0),
diff --git a/plugins/samplesource/sdrdaemon/sdrdaemoninput.h b/plugins/samplesource/sdrdaemon/sdrdaemoninput.h
index 4a8236e70..6aa1b6a72 100644
--- a/plugins/samplesource/sdrdaemon/sdrdaemoninput.h
+++ b/plugins/samplesource/sdrdaemon/sdrdaemoninput.h
@@ -24,6 +24,7 @@
#include <iostream>
#include <stdint.h>
+class PluginAPI;
class SDRdaemonUDPHandler;
class SDRdaemonInput : public SampleSource {
@@ -273,7 +274,7 @@ public:
{ }
};
- SDRdaemonInput(const QTimer& masterTimer);
+ SDRdaemonInput(const QTimer& masterTimer, PluginAPI *pluginAPI);
virtual ~SDRdaemonInput();
virtual bool init(const Message& message);
@@ -289,6 +290,7 @@ public:
virtual bool handleMessage(const Message& message);
private:
+ PluginAPI *m_pluginAPI;
QMutex m_mutex;
QString m_address;
quint16 m_port;