1
0
mirror of https://github.com/f4exb/sdrangel.git synced 2026-06-04 23:14:47 -04:00

Multi device support: migrate device specific stuff outside plugin classes

This commit is contained in:
f4exb
2016-05-16 01:12:37 +02:00
parent a26174eb8b
commit be918a217b
40 changed files with 120 additions and 69 deletions
@@ -33,10 +33,11 @@
#include "filesourcegui.h"
FileSourceGui::FileSourceGui(PluginAPI* pluginAPI, QWidget* parent) :
FileSourceGui::FileSourceGui(PluginAPI* pluginAPI, DeviceAPI *deviceAPI, QWidget* parent) :
QWidget(parent),
ui(new Ui::FileSourceGui),
m_pluginAPI(pluginAPI),
m_deviceAPI(deviceAPI),
m_settings(),
m_sampleSource(NULL),
m_acquisition(false),
@@ -23,6 +23,7 @@
#include "filesourceinput.h"
class PluginAPI;
class DeviceAPI;
namespace Ui {
class FileSourceGui;
@@ -32,7 +33,7 @@ class FileSourceGui : public QWidget, public PluginGUI {
Q_OBJECT
public:
explicit FileSourceGui(PluginAPI* pluginAPI, QWidget* parent = NULL);
explicit FileSourceGui(PluginAPI* pluginAPI, DeviceAPI *deviceAPI, QWidget* parent = NULL);
virtual ~FileSourceGui();
void destroy();
@@ -50,6 +51,7 @@ private:
Ui::FileSourceGui* ui;
PluginAPI* m_pluginAPI;
DeviceAPI* m_deviceAPI;
FileSourceInput::Settings m_settings;
QTimer m_statusTimer;
std::vector<int> m_gains;
@@ -67,11 +67,11 @@ PluginInterface::SampleSourceDevices FileSourcePlugin::enumSampleSources()
return result;
}
PluginGUI* FileSourcePlugin::createSampleSourcePluginGUI(const QString& sourceId, const QString& sourceDisplayName)
PluginGUI* FileSourcePlugin::createSampleSourcePluginGUI(const QString& sourceId, const QString& sourceDisplayName, DeviceAPI *deviceAPI)
{
if(sourceId == m_deviceTypeID)
{
FileSourceGui* gui = new FileSourceGui(m_pluginAPI);
FileSourceGui* gui = new FileSourceGui(m_pluginAPI, deviceAPI);
m_pluginAPI->setInputGUI(gui, sourceDisplayName);
return gui;
}
@@ -34,7 +34,7 @@ public:
void initPlugin(PluginAPI* pluginAPI);
virtual SampleSourceDevices enumSampleSources();
virtual PluginGUI* createSampleSourcePluginGUI(const QString& sourceId, const QString& sourceDisplayName);
virtual PluginGUI* createSampleSourcePluginGUI(const QString& sourceId, const QString& sourceDisplayName, DeviceAPI *deviceAPI);
static const QString m_deviceTypeID;