From d5d7d401021deda07076121914afea618b9cde20 Mon Sep 17 00:00:00 2001 From: f4exb Date: Wed, 1 Nov 2017 00:00:03 +0100 Subject: [PATCH] Tx Channel plugins now handled via DeviceUISet --- plugins/channeltx/modam/ammodgui.cpp | 19 ++++++++++--------- plugins/channeltx/modam/ammodgui.h | 8 ++++---- plugins/channeltx/modam/ammodplugin.cpp | 10 +++++----- plugins/channeltx/modam/ammodplugin.h | 8 ++++---- plugins/channeltx/modatv/atvmodgui.cpp | 19 ++++++++++--------- plugins/channeltx/modatv/atvmodgui.h | 8 ++++---- plugins/channeltx/modatv/atvmodplugin.cpp | 10 +++++----- plugins/channeltx/modatv/atvmodplugin.h | 6 +++--- plugins/channeltx/modnfm/nfmmodgui.cpp | 19 ++++++++++--------- plugins/channeltx/modnfm/nfmmodgui.h | 8 ++++---- plugins/channeltx/modnfm/nfmmodplugin.cpp | 10 +++++----- plugins/channeltx/modnfm/nfmmodplugin.h | 8 ++++---- plugins/channeltx/modssb/ssbmodgui.cpp | 19 ++++++++++--------- plugins/channeltx/modssb/ssbmodgui.h | 8 ++++---- plugins/channeltx/modssb/ssbmodplugin.cpp | 10 +++++----- plugins/channeltx/modssb/ssbmodplugin.h | 8 ++++---- plugins/channeltx/modwfm/wfmmodgui.cpp | 19 ++++++++++--------- plugins/channeltx/modwfm/wfmmodgui.h | 8 ++++---- plugins/channeltx/modwfm/wfmmodplugin.cpp | 10 +++++----- plugins/channeltx/modwfm/wfmmodplugin.h | 4 ++-- plugins/channeltx/udpsink/udpsinkgui.cpp | 19 ++++++++++--------- plugins/channeltx/udpsink/udpsinkgui.h | 8 ++++---- plugins/channeltx/udpsink/udpsinkplugin.cpp | 10 +++++----- plugins/channeltx/udpsink/udpsinkplugin.h | 6 +++--- sdrgui/device/devicesinkapi.cpp | 2 +- sdrgui/device/deviceuiset.cpp | 3 +-- sdrgui/mainwindow.cpp | 6 +++--- sdrgui/plugin/plugininterface.h | 7 +++++-- sdrgui/plugin/pluginmanager.cpp | 4 ++-- sdrgui/plugin/pluginmanager.h | 2 +- 30 files changed, 147 insertions(+), 139 deletions(-) diff --git a/plugins/channeltx/modam/ammodgui.cpp b/plugins/channeltx/modam/ammodgui.cpp index 2eab227a0..576ca5123 100644 --- a/plugins/channeltx/modam/ammodgui.cpp +++ b/plugins/channeltx/modam/ammodgui.cpp @@ -23,6 +23,7 @@ #include "ammodgui.h" #include "device/devicesinkapi.h" +#include "device/deviceuiset.h" #include "dsp/upchannelizer.h" #include "ui_ammodgui.h" @@ -35,9 +36,9 @@ const QString AMModGUI::m_channelID = "sdrangel.channeltx.modam"; -AMModGUI* AMModGUI::create(PluginAPI* pluginAPI, DeviceSinkAPI *deviceAPI) +AMModGUI* AMModGUI::create(PluginAPI* pluginAPI, DeviceUISet *deviceUISet) { - AMModGUI* gui = new AMModGUI(pluginAPI, deviceAPI); + AMModGUI* gui = new AMModGUI(pluginAPI, deviceUISet); return gui; } @@ -267,11 +268,11 @@ void AMModGUI::onMenuDoubleClicked() } } -AMModGUI::AMModGUI(PluginAPI* pluginAPI, DeviceSinkAPI *deviceAPI, QWidget* parent) : +AMModGUI::AMModGUI(PluginAPI* pluginAPI, DeviceUISet *deviceUISet, QWidget* parent) : RollupWidget(parent), ui(new Ui::AMModGUI), m_pluginAPI(pluginAPI), - m_deviceAPI(deviceAPI), + m_deviceUISet(deviceUISet), m_channelMarker(this), m_basicSettingsShown(false), m_doApplySettings(true), @@ -288,7 +289,7 @@ AMModGUI::AMModGUI(PluginAPI* pluginAPI, DeviceSinkAPI *deviceAPI, QWidget* pare connect(this, SIGNAL(widgetRolled(QWidget*,bool)), this, SLOT(onWidgetRolled(QWidget*,bool))); connect(this, SIGNAL(menuDoubleClickEvent()), this, SLOT(onMenuDoubleClicked())); - m_amMod = new AMMod(m_deviceAPI); + m_amMod = new AMMod(m_deviceUISet->m_deviceSinkAPI); m_amMod->setMessageQueueToGUI(getInputMessageQueue()); connect(&MainWindow::getInstance()->getMasterTimer(), SIGNAL(timeout()), this, SLOT(tick())); @@ -305,9 +306,9 @@ AMModGUI::AMModGUI(PluginAPI* pluginAPI, DeviceSinkAPI *deviceAPI, QWidget* pare connect(&m_channelMarker, SIGNAL(changed()), this, SLOT(channelMarkerChanged())); - m_deviceAPI->registerChannelInstance(m_channelID, this); - m_deviceAPI->addChannelMarker(&m_channelMarker); - m_deviceAPI->addRollupWidget(this); + m_deviceUISet->registerTxChannelInstance(m_channelID, this); + m_deviceUISet->addChannelMarker(&m_channelMarker); + m_deviceUISet->addRollupWidget(this); ui->play->setEnabled(false); ui->play->setChecked(false); @@ -326,7 +327,7 @@ AMModGUI::AMModGUI(PluginAPI* pluginAPI, DeviceSinkAPI *deviceAPI, QWidget* pare AMModGUI::~AMModGUI() { - m_deviceAPI->removeChannelInstance(this); + m_deviceUISet->removeTxChannelInstance(this); delete m_amMod; delete ui; } diff --git a/plugins/channeltx/modam/ammodgui.h b/plugins/channeltx/modam/ammodgui.h index 73f79da94..4d148ee6e 100644 --- a/plugins/channeltx/modam/ammodgui.h +++ b/plugins/channeltx/modam/ammodgui.h @@ -27,7 +27,7 @@ #include "ammodsettings.h" class PluginAPI; -class DeviceSinkAPI; +class DeviceUISet; class AMMod; @@ -39,7 +39,7 @@ class AMModGUI : public RollupWidget, public PluginInstanceGUI { Q_OBJECT public: - static AMModGUI* create(PluginAPI* pluginAPI, DeviceSinkAPI *deviceAPI); + static AMModGUI* create(PluginAPI* pluginAPI, DeviceUISet *deviceUISet); virtual void destroy(); void setName(const QString& name); @@ -83,7 +83,7 @@ private slots: private: Ui::AMModGUI* ui; PluginAPI* m_pluginAPI; - DeviceSinkAPI* m_deviceAPI; + DeviceUISet* m_deviceUISet; ChannelMarker m_channelMarker; AMModSettings m_settings; bool m_basicSettingsShown; @@ -101,7 +101,7 @@ private: AMMod::AMModInputAF m_modAFInput; MessageQueue m_inputMessageQueue; - explicit AMModGUI(PluginAPI* pluginAPI, DeviceSinkAPI *deviceAPI, QWidget* parent = NULL); + explicit AMModGUI(PluginAPI* pluginAPI, DeviceUISet *deviceUISet, QWidget* parent = 0); virtual ~AMModGUI(); void blockApplySettings(bool block); diff --git a/plugins/channeltx/modam/ammodplugin.cpp b/plugins/channeltx/modam/ammodplugin.cpp index 2846d34c6..785a8b3ad 100644 --- a/plugins/channeltx/modam/ammodplugin.cpp +++ b/plugins/channeltx/modam/ammodplugin.cpp @@ -23,7 +23,7 @@ const PluginDescriptor AMModPlugin::m_pluginDescriptor = { QString("AM Modulator"), - QString("3.5.4"), + QString("3.7.9"), QString("(c) Edouard Griffiths, F4EXB"), QString("https://github.com/f4exb/sdrangel"), true, @@ -49,18 +49,18 @@ void AMModPlugin::initPlugin(PluginAPI* pluginAPI) m_pluginAPI->registerTxChannel(AMModGUI::m_channelID, this); } -PluginInstanceGUI* AMModPlugin::createTxChannel(const QString& channelName, DeviceSinkAPI *deviceAPI) +PluginInstanceGUI* AMModPlugin::createTxChannel(const QString& channelName, DeviceUISet *deviceUISet) { if(channelName == AMModGUI::m_channelID) { - AMModGUI* gui = AMModGUI::create(m_pluginAPI, deviceAPI); + AMModGUI* gui = AMModGUI::create(m_pluginAPI, deviceUISet); return gui; } else { return 0; } } -void AMModPlugin::createInstanceModAM(DeviceSinkAPI *deviceAPI) +void AMModPlugin::createInstanceModAM(DeviceUISet *deviceUISet) { - AMModGUI::create(m_pluginAPI, deviceAPI); + AMModGUI::create(m_pluginAPI, deviceUISet); } diff --git a/plugins/channeltx/modam/ammodplugin.h b/plugins/channeltx/modam/ammodplugin.h index ce74622b7..5a795abc8 100644 --- a/plugins/channeltx/modam/ammodplugin.h +++ b/plugins/channeltx/modam/ammodplugin.h @@ -20,7 +20,7 @@ #include #include "plugin/plugininterface.h" -class DeviceSinkAPI; +class DeviceUISet; class AMModPlugin : public QObject, PluginInterface { Q_OBJECT @@ -28,12 +28,12 @@ class AMModPlugin : public QObject, PluginInterface { Q_PLUGIN_METADATA(IID "sdrangel.channeltx.ammod") public: - explicit AMModPlugin(QObject* parent = NULL); + explicit AMModPlugin(QObject* parent = 0); const PluginDescriptor& getPluginDescriptor() const; void initPlugin(PluginAPI* pluginAPI); - PluginInstanceGUI* createTxChannel(const QString& channelName, DeviceSinkAPI *deviceAPI); + PluginInstanceGUI* createTxChannel(const QString& channelName, DeviceUISet *deviceUISet); private: static const PluginDescriptor m_pluginDescriptor; @@ -41,7 +41,7 @@ private: PluginAPI* m_pluginAPI; private slots: - void createInstanceModAM(DeviceSinkAPI *deviceAPI); + void createInstanceModAM(DeviceUISet *deviceUISet); }; #endif // INCLUDE_AMMODPLUGIN_H diff --git a/plugins/channeltx/modatv/atvmodgui.cpp b/plugins/channeltx/modatv/atvmodgui.cpp index 33cf98319..3e15e11a9 100644 --- a/plugins/channeltx/modatv/atvmodgui.cpp +++ b/plugins/channeltx/modatv/atvmodgui.cpp @@ -24,6 +24,7 @@ #include #include "device/devicesinkapi.h" +#include "device/deviceuiset.h" #include "plugin/pluginapi.h" #include "util/simpleserializer.h" #include "gui/basicchannelsettingswidget.h" @@ -36,9 +37,9 @@ const QString ATVModGUI::m_channelID = "sdrangel.channeltx.modatv"; -ATVModGUI* ATVModGUI::create(PluginAPI* pluginAPI, DeviceSinkAPI *deviceAPI) +ATVModGUI* ATVModGUI::create(PluginAPI* pluginAPI, DeviceUISet *deviceUISet) { - ATVModGUI* gui = new ATVModGUI(pluginAPI, deviceAPI); + ATVModGUI* gui = new ATVModGUI(pluginAPI, deviceUISet); return gui; } @@ -586,11 +587,11 @@ void ATVModGUI::onMenuDoubleClicked() } } -ATVModGUI::ATVModGUI(PluginAPI* pluginAPI, DeviceSinkAPI *deviceAPI, QWidget* parent) : +ATVModGUI::ATVModGUI(PluginAPI* pluginAPI, DeviceUISet *deviceUISet, QWidget* parent) : RollupWidget(parent), ui(new Ui::ATVModGUI), m_pluginAPI(pluginAPI), - m_deviceAPI(deviceAPI), + m_deviceUISet(deviceUISet), m_channelMarker(this), m_basicSettingsShown(false), m_doApplySettings(true), @@ -608,7 +609,7 @@ ATVModGUI::ATVModGUI(PluginAPI* pluginAPI, DeviceSinkAPI *deviceAPI, QWidget* pa connect(this, SIGNAL(widgetRolled(QWidget*,bool)), this, SLOT(onWidgetRolled(QWidget*,bool))); connect(this, SIGNAL(menuDoubleClickEvent()), this, SLOT(onMenuDoubleClicked())); - m_atvMod = new ATVMod(m_deviceAPI); + m_atvMod = new ATVMod(m_deviceUISet->m_deviceSinkAPI); m_atvMod->setMessageQueueToGUI(getInputMessageQueue()); connect(&MainWindow::getInstance()->getMasterTimer(), SIGNAL(timeout()), this, SLOT(tick())); @@ -624,9 +625,9 @@ ATVModGUI::ATVModGUI(PluginAPI* pluginAPI, DeviceSinkAPI *deviceAPI, QWidget* pa connect(&m_channelMarker, SIGNAL(changed()), this, SLOT(channelMarkerChanged())); - m_deviceAPI->registerChannelInstance(m_channelID, this); - m_deviceAPI->addChannelMarker(&m_channelMarker); - m_deviceAPI->addRollupWidget(this); + m_deviceUISet->registerTxChannelInstance(m_channelID, this); + m_deviceUISet->addChannelMarker(&m_channelMarker); + m_deviceUISet->addRollupWidget(this); resetToDefaults(); @@ -649,7 +650,7 @@ ATVModGUI::ATVModGUI(PluginAPI* pluginAPI, DeviceSinkAPI *deviceAPI, QWidget* pa ATVModGUI::~ATVModGUI() { - m_deviceAPI->removeChannelInstance(this); + m_deviceUISet->removeTxChannelInstance(this); delete m_atvMod; delete ui; } diff --git a/plugins/channeltx/modatv/atvmodgui.h b/plugins/channeltx/modatv/atvmodgui.h index 1158278ab..75b969181 100644 --- a/plugins/channeltx/modatv/atvmodgui.h +++ b/plugins/channeltx/modatv/atvmodgui.h @@ -27,7 +27,7 @@ #include "atvmodsettings.h" class PluginAPI; -class DeviceSinkAPI; +class DeviceUISet; class ATVMod; class QMessageBox; @@ -40,7 +40,7 @@ class ATVModGUI : public RollupWidget, public PluginInstanceGUI { Q_OBJECT public: - static ATVModGUI* create(PluginAPI* pluginAPI, DeviceSinkAPI *deviceAPI); + static ATVModGUI* create(PluginAPI* pluginAPI, DeviceUISet *deviceUISet); virtual void destroy(); void setName(const QString& name); @@ -99,7 +99,7 @@ private slots: private: Ui::ATVModGUI* ui; PluginAPI* m_pluginAPI; - DeviceSinkAPI* m_deviceAPI; + DeviceUISet* m_deviceUISet; ChannelMarker m_channelMarker; ATVModSettings m_settings; bool m_basicSettingsShown; @@ -119,7 +119,7 @@ private: int m_rfSliderDivisor; MessageQueue m_inputMessageQueue; - explicit ATVModGUI(PluginAPI* pluginAPI, DeviceSinkAPI *deviceAPI, QWidget* parent = NULL); + explicit ATVModGUI(PluginAPI* pluginAPI, DeviceUISet *deviceUISet, QWidget* parent = 0); virtual ~ATVModGUI(); void blockApplySettings(bool block); diff --git a/plugins/channeltx/modatv/atvmodplugin.cpp b/plugins/channeltx/modatv/atvmodplugin.cpp index b007e961c..31ac039bc 100644 --- a/plugins/channeltx/modatv/atvmodplugin.cpp +++ b/plugins/channeltx/modatv/atvmodplugin.cpp @@ -23,7 +23,7 @@ const PluginDescriptor ATVModPlugin::m_pluginDescriptor = { QString("ATV Modulator"), - QString("3.7.5"), + QString("3.7.9"), QString("(c) Edouard Griffiths, F4EXB"), QString("https://github.com/f4exb/sdrangel"), true, @@ -49,20 +49,20 @@ void ATVModPlugin::initPlugin(PluginAPI* pluginAPI) m_pluginAPI->registerTxChannel(ATVModGUI::m_channelID, this); } -PluginInstanceGUI* ATVModPlugin::createTxChannel(const QString& channelName, DeviceSinkAPI *deviceAPI) +PluginInstanceGUI* ATVModPlugin::createTxChannel(const QString& channelName, DeviceUISet *deviceUISet) { if(channelName == ATVModGUI::m_channelID) { - ATVModGUI* gui = ATVModGUI::create(m_pluginAPI, deviceAPI); + ATVModGUI* gui = ATVModGUI::create(m_pluginAPI, deviceUISet); return gui; } else { return 0; } } -void ATVModPlugin::createInstanceModATV(DeviceSinkAPI *deviceAPI) +void ATVModPlugin::createInstanceModATV(DeviceUISet *deviceUISet) { - ATVModGUI::create(m_pluginAPI, deviceAPI); + ATVModGUI::create(m_pluginAPI, deviceUISet); } diff --git a/plugins/channeltx/modatv/atvmodplugin.h b/plugins/channeltx/modatv/atvmodplugin.h index 6061dbd26..76b561699 100644 --- a/plugins/channeltx/modatv/atvmodplugin.h +++ b/plugins/channeltx/modatv/atvmodplugin.h @@ -28,12 +28,12 @@ class ATVModPlugin : public QObject, PluginInterface { Q_PLUGIN_METADATA(IID "sdrangel.channeltx.atvmod") public: - explicit ATVModPlugin(QObject* parent = NULL); + explicit ATVModPlugin(QObject* parent = 0); const PluginDescriptor& getPluginDescriptor() const; void initPlugin(PluginAPI* pluginAPI); - PluginInstanceGUI* createTxChannel(const QString& channelName, DeviceSinkAPI *deviceAPI); + PluginInstanceGUI* createTxChannel(const QString& channelName, DeviceUISet *deviceUISet); private: static const PluginDescriptor m_pluginDescriptor; @@ -41,7 +41,7 @@ private: PluginAPI* m_pluginAPI; private slots: - void createInstanceModATV(DeviceSinkAPI *deviceAPI); + void createInstanceModATV(DeviceUISet *deviceUISet); }; #endif /* PLUGINS_CHANNELTX_MODATV_ATVMODPLUGIN_H_ */ diff --git a/plugins/channeltx/modnfm/nfmmodgui.cpp b/plugins/channeltx/modnfm/nfmmodgui.cpp index a6ec2a9f7..720ac8c44 100644 --- a/plugins/channeltx/modnfm/nfmmodgui.cpp +++ b/plugins/channeltx/modnfm/nfmmodgui.cpp @@ -21,6 +21,7 @@ #include #include "device/devicesinkapi.h" +#include "device/deviceuiset.h" #include "plugin/pluginapi.h" #include "util/simpleserializer.h" #include "util/db.h" @@ -34,9 +35,9 @@ const QString NFMModGUI::m_channelID = "sdrangel.channeltx.modnfm"; -NFMModGUI* NFMModGUI::create(PluginAPI* pluginAPI, DeviceSinkAPI *deviceAPI) +NFMModGUI* NFMModGUI::create(PluginAPI* pluginAPI, DeviceUISet *deviceUISet) { - NFMModGUI* gui = new NFMModGUI(pluginAPI, deviceAPI); + NFMModGUI* gui = new NFMModGUI(pluginAPI, deviceUISet); return gui; } @@ -284,11 +285,11 @@ void NFMModGUI::onMenuDoubleClicked() } } -NFMModGUI::NFMModGUI(PluginAPI* pluginAPI, DeviceSinkAPI *deviceAPI, QWidget* parent) : +NFMModGUI::NFMModGUI(PluginAPI* pluginAPI, DeviceUISet *deviceUISet, QWidget* parent) : RollupWidget(parent), ui(new Ui::NFMModGUI), m_pluginAPI(pluginAPI), - m_deviceAPI(deviceAPI), + m_deviceUISet(deviceUISet), m_channelMarker(this), m_basicSettingsShown(false), m_doApplySettings(true), @@ -316,7 +317,7 @@ NFMModGUI::NFMModGUI(PluginAPI* pluginAPI, DeviceSinkAPI *deviceAPI, QWidget* pa connect(this, SIGNAL(widgetRolled(QWidget*,bool)), this, SLOT(onWidgetRolled(QWidget*,bool))); connect(this, SIGNAL(menuDoubleClickEvent()), this, SLOT(onMenuDoubleClicked())); - m_nfmMod = new NFMMod(m_deviceAPI); + m_nfmMod = new NFMMod(m_deviceUISet->m_deviceSinkAPI); m_nfmMod->setMessageQueueToGUI(getInputMessageQueue()); connect(&MainWindow::getInstance()->getMasterTimer(), SIGNAL(timeout()), this, SLOT(tick())); @@ -330,9 +331,9 @@ NFMModGUI::NFMModGUI(PluginAPI* pluginAPI, DeviceSinkAPI *deviceAPI, QWidget* pa connect(&m_channelMarker, SIGNAL(changed()), this, SLOT(channelMarkerChanged())); - m_deviceAPI->registerChannelInstance(m_channelID, this); - m_deviceAPI->addChannelMarker(&m_channelMarker); - m_deviceAPI->addRollupWidget(this); + m_deviceUISet->registerTxChannelInstance(m_channelID, this); + m_deviceUISet->addChannelMarker(&m_channelMarker); + m_deviceUISet->addRollupWidget(this); ui->play->setEnabled(false); ui->play->setChecked(false); @@ -358,7 +359,7 @@ NFMModGUI::NFMModGUI(PluginAPI* pluginAPI, DeviceSinkAPI *deviceAPI, QWidget* pa NFMModGUI::~NFMModGUI() { - m_deviceAPI->removeChannelInstance(this); + m_deviceUISet->removeTxChannelInstance(this); delete m_nfmMod; delete ui; } diff --git a/plugins/channeltx/modnfm/nfmmodgui.h b/plugins/channeltx/modnfm/nfmmodgui.h index e0fb2829d..c58fb84ea 100644 --- a/plugins/channeltx/modnfm/nfmmodgui.h +++ b/plugins/channeltx/modnfm/nfmmodgui.h @@ -27,7 +27,7 @@ #include "nfmmodsettings.h" class PluginAPI; -class DeviceSinkAPI; +class DeviceUISet; class NFMMod; namespace Ui { @@ -38,7 +38,7 @@ class NFMModGUI : public RollupWidget, public PluginInstanceGUI { Q_OBJECT public: - static NFMModGUI* create(PluginAPI* pluginAPI, DeviceSinkAPI *deviceAPI); + static NFMModGUI* create(PluginAPI* pluginAPI, DeviceUISet *deviceUISet); virtual void destroy(); void setName(const QString& name); @@ -86,7 +86,7 @@ private slots: private: Ui::NFMModGUI* ui; PluginAPI* m_pluginAPI; - DeviceSinkAPI* m_deviceAPI; + DeviceUISet* m_deviceUISet; ChannelMarker m_channelMarker; NFMModSettings m_settings; bool m_basicSettingsShown; @@ -104,7 +104,7 @@ private: NFMMod::NFMModInputAF m_modAFInput; MessageQueue m_inputMessageQueue; - explicit NFMModGUI(PluginAPI* pluginAPI, DeviceSinkAPI *deviceAPI, QWidget* parent = NULL); + explicit NFMModGUI(PluginAPI* pluginAPI, DeviceUISet *deviceUISet, QWidget* parent = 0); virtual ~NFMModGUI(); void blockApplySettings(bool block); diff --git a/plugins/channeltx/modnfm/nfmmodplugin.cpp b/plugins/channeltx/modnfm/nfmmodplugin.cpp index 4d9aa9cc2..cd2c64ce3 100644 --- a/plugins/channeltx/modnfm/nfmmodplugin.cpp +++ b/plugins/channeltx/modnfm/nfmmodplugin.cpp @@ -23,7 +23,7 @@ const PluginDescriptor NFMModPlugin::m_pluginDescriptor = { QString("NFM Modulator"), - QString("3.7.4"), + QString("3.7.9"), QString("(c) Edouard Griffiths, F4EXB"), QString("https://github.com/f4exb/sdrangel"), true, @@ -49,18 +49,18 @@ void NFMModPlugin::initPlugin(PluginAPI* pluginAPI) m_pluginAPI->registerTxChannel(NFMModGUI::m_channelID, this); } -PluginInstanceGUI* NFMModPlugin::createTxChannel(const QString& channelName, DeviceSinkAPI *deviceAPI) +PluginInstanceGUI* NFMModPlugin::createTxChannel(const QString& channelName, DeviceUISet *deviceUISet) { if(channelName == NFMModGUI::m_channelID) { - NFMModGUI* gui = NFMModGUI::create(m_pluginAPI, deviceAPI); + NFMModGUI* gui = NFMModGUI::create(m_pluginAPI, deviceUISet); return gui; } else { return 0; } } -void NFMModPlugin::createInstanceModNFM(DeviceSinkAPI *deviceAPI) +void NFMModPlugin::createInstanceModNFM(DeviceUISet *deviceUISet) { - NFMModGUI::create(m_pluginAPI, deviceAPI); + NFMModGUI::create(m_pluginAPI, deviceUISet); } diff --git a/plugins/channeltx/modnfm/nfmmodplugin.h b/plugins/channeltx/modnfm/nfmmodplugin.h index 8c35aba10..5b544e60f 100644 --- a/plugins/channeltx/modnfm/nfmmodplugin.h +++ b/plugins/channeltx/modnfm/nfmmodplugin.h @@ -20,7 +20,7 @@ #include #include "plugin/plugininterface.h" -class DeviceSinkAPI; +class DeviceUISet; class NFMModPlugin : public QObject, PluginInterface { Q_OBJECT @@ -28,12 +28,12 @@ class NFMModPlugin : public QObject, PluginInterface { Q_PLUGIN_METADATA(IID "sdrangel.channeltx.nfmmod") public: - explicit NFMModPlugin(QObject* parent = NULL); + explicit NFMModPlugin(QObject* parent = 0); const PluginDescriptor& getPluginDescriptor() const; void initPlugin(PluginAPI* pluginAPI); - PluginInstanceGUI* createTxChannel(const QString& channelName, DeviceSinkAPI *deviceAPI); + PluginInstanceGUI* createTxChannel(const QString& channelName, DeviceUISet *deviceUISet); private: static const PluginDescriptor m_pluginDescriptor; @@ -41,7 +41,7 @@ private: PluginAPI* m_pluginAPI; private slots: - void createInstanceModNFM(DeviceSinkAPI *deviceAPI); + void createInstanceModNFM(DeviceUISet *deviceUISet); }; #endif // INCLUDE_NFMMODPLUGIN_H diff --git a/plugins/channeltx/modssb/ssbmodgui.cpp b/plugins/channeltx/modssb/ssbmodgui.cpp index aeba20489..1df535507 100644 --- a/plugins/channeltx/modssb/ssbmodgui.cpp +++ b/plugins/channeltx/modssb/ssbmodgui.cpp @@ -23,6 +23,7 @@ #include "ssbmodgui.h" #include "device/devicesinkapi.h" +#include "device/deviceuiset.h" #include "dsp/spectrumvis.h" #include "ui_ssbmodgui.h" #include "plugin/pluginapi.h" @@ -34,9 +35,9 @@ const QString SSBModGUI::m_channelID = "sdrangel.channeltx.modssb"; -SSBModGUI* SSBModGUI::create(PluginAPI* pluginAPI, DeviceSinkAPI *deviceAPI) +SSBModGUI* SSBModGUI::create(PluginAPI* pluginAPI, DeviceUISet *deviceUISet) { - SSBModGUI* gui = new SSBModGUI(pluginAPI, deviceAPI); + SSBModGUI* gui = new SSBModGUI(pluginAPI, deviceUISet); return gui; } @@ -439,11 +440,11 @@ void SSBModGUI::onMenuDoubleClicked() } } -SSBModGUI::SSBModGUI(PluginAPI* pluginAPI, DeviceSinkAPI *deviceAPI, QWidget* parent) : +SSBModGUI::SSBModGUI(PluginAPI* pluginAPI, DeviceUISet *deviceUISet, QWidget* parent) : RollupWidget(parent), ui(new Ui::SSBModGUI), m_pluginAPI(pluginAPI), - m_deviceAPI(deviceAPI), + m_deviceUISet(deviceUISet), m_channelMarker(this), m_basicSettingsShown(false), m_doApplySettings(true), @@ -462,7 +463,7 @@ SSBModGUI::SSBModGUI(PluginAPI* pluginAPI, DeviceSinkAPI *deviceAPI, QWidget* pa connect(this, SIGNAL(menuDoubleClickEvent()), this, SLOT(onMenuDoubleClicked())); m_spectrumVis = new SpectrumVis(ui->glSpectrum); - m_ssbMod = new SSBMod(m_deviceAPI, m_spectrumVis); + m_ssbMod = new SSBMod(m_deviceUISet->m_deviceSinkAPI, m_spectrumVis); m_ssbMod->setMessageQueueToGUI(getInputMessageQueue()); resetToDefaults(); @@ -488,9 +489,9 @@ SSBModGUI::SSBModGUI(PluginAPI* pluginAPI, DeviceSinkAPI *deviceAPI, QWidget* pa connect(&m_channelMarker, SIGNAL(changed()), this, SLOT(channelMarkerChanged())); - m_deviceAPI->registerChannelInstance(m_channelID, this); - m_deviceAPI->addChannelMarker(&m_channelMarker); - m_deviceAPI->addRollupWidget(this); + m_deviceUISet->registerRxChannelInstance(m_channelID, this); + m_deviceUISet->addChannelMarker(&m_channelMarker); + m_deviceUISet->addRollupWidget(this); ui->cwKeyerGUI->setBuddies(m_ssbMod->getInputMessageQueue(), m_ssbMod->getCWKeyer()); ui->spectrumGUI->setBuddies(m_spectrumVis->getInputMessageQueue(), m_spectrumVis, ui->glSpectrum); @@ -509,7 +510,7 @@ SSBModGUI::SSBModGUI(PluginAPI* pluginAPI, DeviceSinkAPI *deviceAPI, QWidget* pa SSBModGUI::~SSBModGUI() { - m_deviceAPI->removeChannelInstance(this); + m_deviceUISet->removeRxChannelInstance(this); delete m_ssbMod; delete m_spectrumVis; delete ui; diff --git a/plugins/channeltx/modssb/ssbmodgui.h b/plugins/channeltx/modssb/ssbmodgui.h index 8e8e3b4b4..171129bcf 100644 --- a/plugins/channeltx/modssb/ssbmodgui.h +++ b/plugins/channeltx/modssb/ssbmodgui.h @@ -27,7 +27,7 @@ #include "ssbmodsettings.h" class PluginAPI; -class DeviceSinkAPI; +class DeviceUISet; class SSBMod; class SpectrumVis; @@ -40,7 +40,7 @@ class SSBModGUI : public RollupWidget, public PluginInstanceGUI { Q_OBJECT public: - static SSBModGUI* create(PluginAPI* pluginAPI, DeviceSinkAPI *deviceAPI); + static SSBModGUI* create(PluginAPI* pluginAPI, DeviceUISet *deviceUISet); virtual void destroy(); void setName(const QString& name); @@ -93,7 +93,7 @@ private slots: private: Ui::SSBModGUI* ui; PluginAPI* m_pluginAPI; - DeviceSinkAPI* m_deviceAPI; + DeviceUISet* m_deviceUISet; ChannelMarker m_channelMarker; SSBModSettings m_settings; bool m_basicSettingsShown; @@ -113,7 +113,7 @@ private: SSBMod::SSBModInputAF m_modAFInput; MessageQueue m_inputMessageQueue; - explicit SSBModGUI(PluginAPI* pluginAPI, DeviceSinkAPI *deviceAPI, QWidget* parent = NULL); + explicit SSBModGUI(PluginAPI* pluginAPI, DeviceUISet *deviceUISet, QWidget* parent = 0); virtual ~SSBModGUI(); int getEffectiveLowCutoff(int lowCutoff); diff --git a/plugins/channeltx/modssb/ssbmodplugin.cpp b/plugins/channeltx/modssb/ssbmodplugin.cpp index 42c2b7764..08f4b734f 100644 --- a/plugins/channeltx/modssb/ssbmodplugin.cpp +++ b/plugins/channeltx/modssb/ssbmodplugin.cpp @@ -23,7 +23,7 @@ const PluginDescriptor SSBModPlugin::m_pluginDescriptor = { QString("SSB Modulator"), - QString("3.7.5"), + QString("3.7.9"), QString("(c) Edouard Griffiths, F4EXB"), QString("https://github.com/f4exb/sdrangel"), true, @@ -49,18 +49,18 @@ void SSBModPlugin::initPlugin(PluginAPI* pluginAPI) m_pluginAPI->registerTxChannel(SSBModGUI::m_channelID, this); } -PluginInstanceGUI* SSBModPlugin::createTxChannel(const QString& channelName, DeviceSinkAPI *deviceAPI) +PluginInstanceGUI* SSBModPlugin::createTxChannel(const QString& channelName, DeviceUISet *deviceUISet) { if(channelName == SSBModGUI::m_channelID) { - SSBModGUI* gui = SSBModGUI::create(m_pluginAPI, deviceAPI); + SSBModGUI* gui = SSBModGUI::create(m_pluginAPI, deviceUISet); return gui; } else { return 0; } } -void SSBModPlugin::createInstanceModSSB(DeviceSinkAPI *deviceAPI) +void SSBModPlugin::createInstanceModSSB(DeviceUISet *deviceUISet) { - SSBModGUI::create(m_pluginAPI, deviceAPI); + SSBModGUI::create(m_pluginAPI, deviceUISet); } diff --git a/plugins/channeltx/modssb/ssbmodplugin.h b/plugins/channeltx/modssb/ssbmodplugin.h index 3c8ef8c98..51e3b273a 100644 --- a/plugins/channeltx/modssb/ssbmodplugin.h +++ b/plugins/channeltx/modssb/ssbmodplugin.h @@ -20,7 +20,7 @@ #include #include "plugin/plugininterface.h" -class DeviceSinkAPI; +class DeviceUISet; class SSBModPlugin : public QObject, PluginInterface { Q_OBJECT @@ -28,12 +28,12 @@ class SSBModPlugin : public QObject, PluginInterface { Q_PLUGIN_METADATA(IID "sdrangel.channeltx.ssbmod") public: - explicit SSBModPlugin(QObject* parent = NULL); + explicit SSBModPlugin(QObject* parent = 0); const PluginDescriptor& getPluginDescriptor() const; void initPlugin(PluginAPI* pluginAPI); - PluginInstanceGUI* createTxChannel(const QString& channelName, DeviceSinkAPI *deviceAPI); + PluginInstanceGUI* createTxChannel(const QString& channelName, DeviceUISet *deviceUISet); private: static const PluginDescriptor m_pluginDescriptor; @@ -41,7 +41,7 @@ private: PluginAPI* m_pluginAPI; private slots: - void createInstanceModSSB(DeviceSinkAPI *deviceAPI); + void createInstanceModSSB(DeviceUISet *deviceUISet); }; #endif // INCLUDE_SSBMODPLUGIN_H diff --git a/plugins/channeltx/modwfm/wfmmodgui.cpp b/plugins/channeltx/modwfm/wfmmodgui.cpp index 8f95b5694..e6192edd4 100644 --- a/plugins/channeltx/modwfm/wfmmodgui.cpp +++ b/plugins/channeltx/modwfm/wfmmodgui.cpp @@ -21,6 +21,7 @@ #include #include "device/devicesinkapi.h" +#include "device/deviceuiset.h" #include "dsp/upchannelizer.h" #include "dsp/threadedbasebandsamplesource.h" #include "plugin/pluginapi.h" @@ -35,9 +36,9 @@ const QString WFMModGUI::m_channelID = "sdrangel.channeltx.modwfm"; -WFMModGUI* WFMModGUI::create(PluginAPI* pluginAPI, DeviceSinkAPI *deviceAPI) +WFMModGUI* WFMModGUI::create(PluginAPI* pluginAPI, DeviceUISet *deviceUISet) { - WFMModGUI* gui = new WFMModGUI(pluginAPI, deviceAPI); + WFMModGUI* gui = new WFMModGUI(pluginAPI, deviceUISet); return gui; } @@ -273,11 +274,11 @@ void WFMModGUI::onMenuDoubleClicked() } } -WFMModGUI::WFMModGUI(PluginAPI* pluginAPI, DeviceSinkAPI *deviceAPI, QWidget* parent) : +WFMModGUI::WFMModGUI(PluginAPI* pluginAPI, DeviceUISet *deviceUISet, QWidget* parent) : RollupWidget(parent), ui(new Ui::WFMModGUI), m_pluginAPI(pluginAPI), - m_deviceAPI(deviceAPI), + m_deviceUISet(deviceUISet), m_channelMarker(this), m_basicSettingsShown(false), m_doApplySettings(true), @@ -305,7 +306,7 @@ WFMModGUI::WFMModGUI(PluginAPI* pluginAPI, DeviceSinkAPI *deviceAPI, QWidget* pa connect(this, SIGNAL(widgetRolled(QWidget*,bool)), this, SLOT(onWidgetRolled(QWidget*,bool))); connect(this, SIGNAL(menuDoubleClickEvent()), this, SLOT(onMenuDoubleClicked())); - m_wfmMod = new WFMMod(m_deviceAPI); + m_wfmMod = new WFMMod(m_deviceUISet->m_deviceSinkAPI); m_wfmMod->setMessageQueueToGUI(getInputMessageQueue()); connect(&MainWindow::getInstance()->getMasterTimer(), SIGNAL(timeout()), this, SLOT(tick())); @@ -319,9 +320,9 @@ WFMModGUI::WFMModGUI(PluginAPI* pluginAPI, DeviceSinkAPI *deviceAPI, QWidget* pa connect(&m_channelMarker, SIGNAL(changed()), this, SLOT(channelMarkerChanged())); - m_deviceAPI->registerChannelInstance(m_channelID, this); - m_deviceAPI->addChannelMarker(&m_channelMarker); - m_deviceAPI->addRollupWidget(this); + m_deviceUISet->registerTxChannelInstance(m_channelID, this); + m_deviceUISet->addChannelMarker(&m_channelMarker); + m_deviceUISet->addRollupWidget(this); ui->play->setEnabled(false); ui->play->setChecked(false); @@ -342,7 +343,7 @@ WFMModGUI::WFMModGUI(PluginAPI* pluginAPI, DeviceSinkAPI *deviceAPI, QWidget* pa WFMModGUI::~WFMModGUI() { - m_deviceAPI->removeChannelInstance(this); + m_deviceUISet->removeTxChannelInstance(this); delete m_wfmMod; delete ui; } diff --git a/plugins/channeltx/modwfm/wfmmodgui.h b/plugins/channeltx/modwfm/wfmmodgui.h index 5a56efabb..65b8abe09 100644 --- a/plugins/channeltx/modwfm/wfmmodgui.h +++ b/plugins/channeltx/modwfm/wfmmodgui.h @@ -27,7 +27,7 @@ #include "wfmmodsettings.h" class PluginAPI; -class DeviceSinkAPI; +class DeviceUISet; class ThreadedBasebandSampleSource; class UpChannelizer; @@ -41,7 +41,7 @@ class WFMModGUI : public RollupWidget, public PluginInstanceGUI { Q_OBJECT public: - static WFMModGUI* create(PluginAPI* pluginAPI, DeviceSinkAPI *deviceAPI); + static WFMModGUI* create(PluginAPI* pluginAPI, DeviceUISet *deviceUISet); virtual void destroy(); void setName(const QString& name); @@ -86,7 +86,7 @@ private slots: private: Ui::WFMModGUI* ui; PluginAPI* m_pluginAPI; - DeviceSinkAPI* m_deviceAPI; + DeviceUISet* m_deviceUISet; ChannelMarker m_channelMarker; WFMModSettings m_settings; bool m_basicSettingsShown; @@ -106,7 +106,7 @@ private: WFMMod::WFMModInputAF m_modAFInput; MessageQueue m_inputMessageQueue; - explicit WFMModGUI(PluginAPI* pluginAPI, DeviceSinkAPI *deviceAPI, QWidget* parent = NULL); + explicit WFMModGUI(PluginAPI* pluginAPI, DeviceUISet *deviceUISet, QWidget* parent = 0); virtual ~WFMModGUI(); void blockApplySettings(bool block); diff --git a/plugins/channeltx/modwfm/wfmmodplugin.cpp b/plugins/channeltx/modwfm/wfmmodplugin.cpp index 6788a774f..13881d30a 100644 --- a/plugins/channeltx/modwfm/wfmmodplugin.cpp +++ b/plugins/channeltx/modwfm/wfmmodplugin.cpp @@ -23,7 +23,7 @@ const PluginDescriptor WFMModPlugin::m_pluginDescriptor = { QString("WFM Modulator"), - QString("3.7.4"), + QString("3.7.9"), QString("(c) Edouard Griffiths, F4EXB"), QString("https://github.com/f4exb/sdrangel"), true, @@ -49,18 +49,18 @@ void WFMModPlugin::initPlugin(PluginAPI* pluginAPI) m_pluginAPI->registerTxChannel(WFMModGUI::m_channelID, this); } -PluginInstanceGUI* WFMModPlugin::createTxChannel(const QString& channelName, DeviceSinkAPI *deviceAPI) +PluginInstanceGUI* WFMModPlugin::createTxChannel(const QString& channelName, DeviceUISet *deviceUISet) { if(channelName == WFMModGUI::m_channelID) { - WFMModGUI* gui = WFMModGUI::create(m_pluginAPI, deviceAPI); + WFMModGUI* gui = WFMModGUI::create(m_pluginAPI, deviceUISet); return gui; } else { return 0; } } -void WFMModPlugin::createInstanceModWFM(DeviceSinkAPI *deviceAPI) +void WFMModPlugin::createInstanceModWFM(DeviceUISet *deviceUISet) { - WFMModGUI::create(m_pluginAPI, deviceAPI); + WFMModGUI::create(m_pluginAPI, deviceUISet); } diff --git a/plugins/channeltx/modwfm/wfmmodplugin.h b/plugins/channeltx/modwfm/wfmmodplugin.h index e4b67ba1c..36c7e6db6 100644 --- a/plugins/channeltx/modwfm/wfmmodplugin.h +++ b/plugins/channeltx/modwfm/wfmmodplugin.h @@ -33,7 +33,7 @@ public: const PluginDescriptor& getPluginDescriptor() const; void initPlugin(PluginAPI* pluginAPI); - PluginInstanceGUI* createTxChannel(const QString& channelName, DeviceSinkAPI *deviceAPI); + PluginInstanceGUI* createTxChannel(const QString& channelName, DeviceUISet *deviceUISet); private: static const PluginDescriptor m_pluginDescriptor; @@ -41,7 +41,7 @@ private: PluginAPI* m_pluginAPI; private slots: - void createInstanceModWFM(DeviceSinkAPI *deviceAPI); + void createInstanceModWFM(DeviceUISet *deviceUISet); }; #endif // INCLUDE_NFMMODPLUGIN_H diff --git a/plugins/channeltx/udpsink/udpsinkgui.cpp b/plugins/channeltx/udpsink/udpsinkgui.cpp index 36d86750a..d42d0cd9c 100644 --- a/plugins/channeltx/udpsink/udpsinkgui.cpp +++ b/plugins/channeltx/udpsink/udpsinkgui.cpp @@ -15,6 +15,7 @@ /////////////////////////////////////////////////////////////////////////////////// #include "device/devicesinkapi.h" +#include "device/deviceuiset.h" #include "dsp/spectrumvis.h" #include "dsp/dspengine.h" #include "util/simpleserializer.h" @@ -28,9 +29,9 @@ const QString UDPSinkGUI::m_channelID = "sdrangel.channeltx.udpsink"; -UDPSinkGUI* UDPSinkGUI::create(PluginAPI* pluginAPI, DeviceSinkAPI *deviceAPI) +UDPSinkGUI* UDPSinkGUI::create(PluginAPI* pluginAPI, DeviceUISet *deviceUISet) { - UDPSinkGUI* gui = new UDPSinkGUI(pluginAPI, deviceAPI); + UDPSinkGUI* gui = new UDPSinkGUI(pluginAPI, deviceUISet); return gui; } @@ -102,11 +103,11 @@ void UDPSinkGUI::handleSourceMessages() } } -UDPSinkGUI::UDPSinkGUI(PluginAPI* pluginAPI, DeviceSinkAPI *deviceAPI, QWidget* parent) : +UDPSinkGUI::UDPSinkGUI(PluginAPI* pluginAPI, DeviceUISet *deviceUISet, QWidget* parent) : RollupWidget(parent), ui(new Ui::UDPSinkGUI), m_pluginAPI(pluginAPI), - m_deviceAPI(deviceAPI), + m_deviceUISet(deviceUISet), m_channelPowerAvg(4, 1e-10), m_inPowerAvg(4, 1e-10), m_tickCount(0), @@ -120,7 +121,7 @@ UDPSinkGUI::UDPSinkGUI(PluginAPI* pluginAPI, DeviceSinkAPI *deviceAPI, QWidget* setAttribute(Qt::WA_DeleteOnClose, true); m_spectrumVis = new SpectrumVis(ui->glSpectrum); - m_udpSink = new UDPSink(m_deviceAPI, m_spectrumVis); + m_udpSink = new UDPSink(m_deviceUISet->m_deviceSinkAPI, m_spectrumVis); m_udpSink->setMessageQueueToGUI(getInputMessageQueue()); ui->fmDeviation->setEnabled(false); @@ -146,9 +147,9 @@ UDPSinkGUI::UDPSinkGUI(PluginAPI* pluginAPI, DeviceSinkAPI *deviceAPI, QWidget* connect(&m_channelMarker, SIGNAL(changed()), this, SLOT(channelMarkerChanged())); - m_deviceAPI->registerChannelInstance(m_channelID, this); - m_deviceAPI->addChannelMarker(&m_channelMarker); - m_deviceAPI->addRollupWidget(this); + m_deviceUISet->registerTxChannelInstance(m_channelID, this); + m_deviceUISet->addChannelMarker(&m_channelMarker); + m_deviceUISet->addRollupWidget(this); ui->spectrumGUI->setBuddies(m_spectrumVis->getInputMessageQueue(), m_spectrumVis, ui->glSpectrum); @@ -161,7 +162,7 @@ UDPSinkGUI::UDPSinkGUI(PluginAPI* pluginAPI, DeviceSinkAPI *deviceAPI, QWidget* UDPSinkGUI::~UDPSinkGUI() { - m_deviceAPI->removeChannelInstance(this); + m_deviceUISet->removeTxChannelInstance(this); delete m_udpSink; delete m_spectrumVis; delete ui; diff --git a/plugins/channeltx/udpsink/udpsinkgui.h b/plugins/channeltx/udpsink/udpsinkgui.h index 86006a75d..d19c16d9d 100644 --- a/plugins/channeltx/udpsink/udpsinkgui.h +++ b/plugins/channeltx/udpsink/udpsinkgui.h @@ -28,7 +28,7 @@ #include "udpsinksettings.h" class PluginAPI; -class DeviceSinkAPI; +class DeviceUISet; class UDPSink; class SpectrumVis; @@ -40,7 +40,7 @@ class UDPSinkGUI : public RollupWidget, public PluginInstanceGUI { Q_OBJECT public: - static UDPSinkGUI* create(PluginAPI* pluginAPI, DeviceSinkAPI *deviceAPI); + static UDPSinkGUI* create(PluginAPI* pluginAPI, DeviceUISet *deviceUISet); virtual void destroy(); void setName(const QString& name); @@ -80,7 +80,7 @@ private slots: private: Ui::UDPSinkGUI* ui; PluginAPI* m_pluginAPI; - DeviceSinkAPI* m_deviceAPI; + DeviceUISet* m_deviceUISet; SpectrumVis* m_spectrumVis; UDPSink* m_udpSink; MovingAverage m_channelPowerAvg; @@ -94,7 +94,7 @@ private: bool m_doApplySettings; MessageQueue m_inputMessageQueue; - explicit UDPSinkGUI(PluginAPI* pluginAPI, DeviceSinkAPI *deviceAPI, QWidget* parent = NULL); + explicit UDPSinkGUI(PluginAPI* pluginAPI, DeviceUISet *deviceUISet, QWidget* parent = NULL); virtual ~UDPSinkGUI(); void blockApplySettings(bool block); diff --git a/plugins/channeltx/udpsink/udpsinkplugin.cpp b/plugins/channeltx/udpsink/udpsinkplugin.cpp index a40c7f2e6..91c331850 100644 --- a/plugins/channeltx/udpsink/udpsinkplugin.cpp +++ b/plugins/channeltx/udpsink/udpsinkplugin.cpp @@ -24,7 +24,7 @@ const PluginDescriptor UDPSinkPlugin::m_pluginDescriptor = { QString("UDP Channel Sink"), - QString("3.7.5"), + QString("3.7.9"), QString("(c) Edouard Griffiths, F4EXB"), QString("https://github.com/f4exb/sdrangel"), true, @@ -50,11 +50,11 @@ void UDPSinkPlugin::initPlugin(PluginAPI* pluginAPI) m_pluginAPI->registerTxChannel(UDPSinkGUI::m_channelID, this); } -PluginInstanceGUI* UDPSinkPlugin::createTxChannel(const QString& channelName, DeviceSinkAPI *deviceAPI) +PluginInstanceGUI* UDPSinkPlugin::createTxChannel(const QString& channelName, DeviceUISet *deviceUISet) { if(channelName == UDPSinkGUI::m_channelID) { - UDPSinkGUI* gui = UDPSinkGUI::create(m_pluginAPI, deviceAPI); + UDPSinkGUI* gui = UDPSinkGUI::create(m_pluginAPI, deviceUISet); // deviceAPI->registerChannelInstance("sdrangel.channel.udpsrc", gui); // m_pluginAPI->addChannelRollup(gui); return gui; @@ -63,9 +63,9 @@ PluginInstanceGUI* UDPSinkPlugin::createTxChannel(const QString& channelName, De } } -void UDPSinkPlugin::createInstanceUDPSink(DeviceSinkAPI *deviceAPI) +void UDPSinkPlugin::createInstanceUDPSink(DeviceUISet *deviceUISet) { - UDPSinkGUI::create(m_pluginAPI, deviceAPI); + UDPSinkGUI::create(m_pluginAPI, deviceUISet); // deviceAPI->registerChannelInstance("sdrangel.channel.udpsrc", gui); // m_pluginAPI->addChannelRollup(gui); } diff --git a/plugins/channeltx/udpsink/udpsinkplugin.h b/plugins/channeltx/udpsink/udpsinkplugin.h index 7574f2951..d68499ccc 100644 --- a/plugins/channeltx/udpsink/udpsinkplugin.h +++ b/plugins/channeltx/udpsink/udpsinkplugin.h @@ -21,7 +21,7 @@ #include #include "plugin/plugininterface.h" -class DeviceSinkAPI; +class DeviceUISet; class UDPSinkPlugin : public QObject, PluginInterface { Q_OBJECT @@ -34,7 +34,7 @@ public: const PluginDescriptor& getPluginDescriptor() const; void initPlugin(PluginAPI* pluginAPI); - PluginInstanceGUI* createTxChannel(const QString& channelName, DeviceSinkAPI *deviceAPI); + PluginInstanceGUI* createTxChannel(const QString& channelName, DeviceUISet *deviceUISet); private: static const PluginDescriptor m_pluginDescriptor; @@ -42,7 +42,7 @@ private: PluginAPI* m_pluginAPI; private slots: - void createInstanceUDPSink(DeviceSinkAPI *deviceAPI); + void createInstanceUDPSink(DeviceUISet *deviceUISet); }; #endif // INCLUDE_UDPSINKPLUGIN_H diff --git a/sdrgui/device/devicesinkapi.cpp b/sdrgui/device/devicesinkapi.cpp index e7e874894..046afc5e4 100644 --- a/sdrgui/device/devicesinkapi.cpp +++ b/sdrgui/device/devicesinkapi.cpp @@ -319,7 +319,7 @@ void DeviceSinkAPI::loadChannelSettings(const Preset *preset, PluginAPI *pluginA if((*channelRegistrations)[i].m_channelName == channelConfig.m_channel) { qDebug("DeviceSinkAPI::loadChannelSettings: creating new channel [%s]", qPrintable(channelConfig.m_channel)); - reg = ChannelInstanceRegistration(channelConfig.m_channel, (*channelRegistrations)[i].m_plugin->createTxChannel(channelConfig.m_channel, this)); + //reg = ChannelInstanceRegistration(channelConfig.m_channel, (*channelRegistrations)[i].m_plugin->createTxChannel(channelConfig.m_channel, this)); break; } } diff --git a/sdrgui/device/deviceuiset.cpp b/sdrgui/device/deviceuiset.cpp index 2957e97b8..b09659d1c 100644 --- a/sdrgui/device/deviceuiset.cpp +++ b/sdrgui/device/deviceuiset.cpp @@ -273,8 +273,7 @@ void DeviceUISet::loadTxChannelSettings(const Preset *preset, PluginAPI *pluginA if((*channelRegistrations)[i].m_channelName == channelConfig.m_channel) { qDebug("DeviceUISet::loadChannelSettings: creating new channel [%s]", qPrintable(channelConfig.m_channel)); - // TODO: replace m_deviceSinkAPI by this - reg = ChannelInstanceRegistration(channelConfig.m_channel, (*channelRegistrations)[i].m_plugin->createTxChannel(channelConfig.m_channel, m_deviceSinkAPI)); + reg = ChannelInstanceRegistration(channelConfig.m_channel, (*channelRegistrations)[i].m_plugin->createTxChannel(channelConfig.m_channel, this)); break; } } diff --git a/sdrgui/mainwindow.cpp b/sdrgui/mainwindow.cpp index 696927d25..cb519b1ad 100644 --- a/sdrgui/mainwindow.cpp +++ b/sdrgui/mainwindow.cpp @@ -485,7 +485,7 @@ void MainWindow::loadPresetSettings(const Preset* preset, int tabIndex) { deviceUI->m_spectrumGUI->deserialize(preset->getSpectrumConfig()); deviceUI->m_deviceSinkAPI->loadSinkSettings(preset); - deviceUI->m_deviceSinkAPI->loadChannelSettings(preset, m_pluginManager->getPluginAPI()); + deviceUI->loadTxChannelSettings(preset, m_pluginManager->getPluginAPI()); } } @@ -515,7 +515,7 @@ void MainWindow::savePresetSettings(Preset* preset, int tabIndex) preset->setSpectrumConfig(deviceUI->m_spectrumGUI->serialize()); preset->clearChannels(); preset->setSourcePreset(false); - deviceUI->m_deviceSinkAPI->saveChannelSettings(preset); + deviceUI->saveTxChannelSettings(preset); deviceUI->m_deviceSinkAPI->saveSinkSettings(preset); } @@ -1034,7 +1034,7 @@ void MainWindow::on_channel_addClicked(bool checked __attribute__((unused))) QMessageBox::information(this, tr("Message"), tr("%1 channel(s) already in use. Multiple transmission channels is experimental. You may experience performance problems").arg(nbSources)); } - m_pluginManager->createTxChannelInstance(deviceUI->m_samplingDeviceControl->getChannelSelector()->currentIndex(), deviceUI->m_deviceSinkAPI); + m_pluginManager->createTxChannelInstance(deviceUI->m_samplingDeviceControl->getChannelSelector()->currentIndex(), deviceUI); } } diff --git a/sdrgui/plugin/plugininterface.h b/sdrgui/plugin/plugininterface.h index 8abb4dd58..679eccf66 100644 --- a/sdrgui/plugin/plugininterface.h +++ b/sdrgui/plugin/plugininterface.h @@ -61,12 +61,15 @@ public: { return 0; } virtual PluginInstanceGUI* createRxChannel( const QString& channelName __attribute__((unused)), - DeviceUISet *deviceAPI __attribute__((unused)) ) + DeviceUISet *deviceUISet __attribute__((unused)) ) { return 0; } // channel Tx plugins - virtual PluginInstanceGUI* createTxChannel(const QString& channelName __attribute__((unused)), DeviceSinkAPI *deviceAPI __attribute__((unused)) ) { return 0; } + virtual PluginInstanceGUI* createTxChannel( + const QString& channelName __attribute__((unused)), + DeviceUISet *deviceUISet __attribute__((unused)) ) + { return 0; } // device source plugins only diff --git a/sdrgui/plugin/pluginmanager.cpp b/sdrgui/plugin/pluginmanager.cpp index 6892e4ea1..1ff3f9ef2 100644 --- a/sdrgui/plugin/pluginmanager.cpp +++ b/sdrgui/plugin/pluginmanager.cpp @@ -627,11 +627,11 @@ void PluginManager::createRxChannelInstance(int channelPluginIndex, DeviceUISet } } -void PluginManager::createTxChannelInstance(int channelPluginIndex, DeviceSinkAPI *deviceAPI) +void PluginManager::createTxChannelInstance(int channelPluginIndex, DeviceUISet *deviceUISet) { if (channelPluginIndex < m_txChannelRegistrations.size()) { PluginInterface *pluginInterface = m_txChannelRegistrations[channelPluginIndex].m_plugin; - pluginInterface->createTxChannel(m_txChannelRegistrations[channelPluginIndex].m_channelName, deviceAPI); + pluginInterface->createTxChannel(m_txChannelRegistrations[channelPluginIndex].m_channelName, deviceUISet); } } diff --git a/sdrgui/plugin/pluginmanager.h b/sdrgui/plugin/pluginmanager.h index eef75d9f0..2498ed177 100644 --- a/sdrgui/plugin/pluginmanager.h +++ b/sdrgui/plugin/pluginmanager.h @@ -74,7 +74,7 @@ public: void createRxChannelInstance(int channelPluginIndex, DeviceUISet *deviceUISet); void populateTxChannelComboBox(QComboBox *channels); - void createTxChannelInstance(int channelPluginIndex, DeviceSinkAPI *deviceAPI); + void createTxChannelInstance(int channelPluginIndex, DeviceUISet *deviceUISet); private: struct SamplingDeviceRegistration {