mirror of
https://github.com/f4exb/sdrangel.git
synced 2025-04-10 13:40:37 -04:00
Removed GLSpectrum getter from DeviceSinkAPI
This commit is contained in:
parent
da3e6dcdfb
commit
35391e0d66
@ -25,13 +25,15 @@
|
||||
#include "dsp/dspengine.h"
|
||||
#include "dsp/dspcommands.h"
|
||||
#include "device/devicesinkapi.h"
|
||||
#include "device/deviceuiset.h"
|
||||
#include "bladerfoutputgui.h"
|
||||
#include "bladerf/devicebladerfvalues.h"
|
||||
|
||||
BladerfOutputGui::BladerfOutputGui(DeviceSinkAPI *deviceAPI, QWidget* parent) :
|
||||
BladerfOutputGui::BladerfOutputGui(DeviceSinkAPI *deviceAPI, DeviceUISet *deviceUISet, QWidget* parent) :
|
||||
QWidget(parent),
|
||||
ui(new Ui::BladerfOutputGui),
|
||||
m_deviceAPI(deviceAPI),
|
||||
m_deviceUISet(deviceUISet),
|
||||
m_forceSettings(true),
|
||||
m_settings(),
|
||||
m_deviceSampleSink(NULL),
|
||||
@ -166,8 +168,8 @@ void BladerfOutputGui::handleInputMessages()
|
||||
|
||||
void BladerfOutputGui::updateSampleRateAndFrequency()
|
||||
{
|
||||
m_deviceAPI->getSpectrum()->setSampleRate(m_sampleRate);
|
||||
m_deviceAPI->getSpectrum()->setCenterFrequency(m_deviceCenterFrequency);
|
||||
m_deviceUISet->getSpectrum()->setSampleRate(m_sampleRate);
|
||||
m_deviceUISet->getSpectrum()->setCenterFrequency(m_deviceCenterFrequency);
|
||||
ui->deviceRateLabel->setText(QString("%1k").arg(QString::number(m_sampleRate/1000.0, 'g', 5)));
|
||||
}
|
||||
|
||||
|
@ -27,6 +27,7 @@
|
||||
|
||||
class DeviceSinkAPI;
|
||||
class DeviceSampleSink;
|
||||
class DeviceUISet;
|
||||
|
||||
namespace Ui {
|
||||
class BladerfOutputGui;
|
||||
@ -36,7 +37,7 @@ class BladerfOutputGui : public QWidget, public PluginInstanceGUI {
|
||||
Q_OBJECT
|
||||
|
||||
public:
|
||||
explicit BladerfOutputGui(DeviceSinkAPI *deviceAPI, QWidget* parent = NULL);
|
||||
explicit BladerfOutputGui(DeviceSinkAPI *deviceAPI, DeviceUISet *deviceUISet, QWidget* parent = 0);
|
||||
virtual ~BladerfOutputGui();
|
||||
virtual void destroy();
|
||||
|
||||
@ -55,6 +56,7 @@ private:
|
||||
Ui::BladerfOutputGui* ui;
|
||||
|
||||
DeviceSinkAPI* m_deviceAPI;
|
||||
DeviceUISet* m_deviceUISet;
|
||||
bool m_forceSettings;
|
||||
BladeRFOutputSettings m_settings;
|
||||
QTimer m_updateTimer;
|
||||
|
@ -77,11 +77,15 @@ PluginInterface::SamplingDevices BladerfOutputPlugin::enumSampleSinks()
|
||||
return result;
|
||||
}
|
||||
|
||||
PluginInstanceGUI* BladerfOutputPlugin::createSampleSinkPluginInstanceGUI(const QString& sinkId,QWidget **widget, DeviceSinkAPI *deviceAPI)
|
||||
PluginInstanceGUI* BladerfOutputPlugin::createSampleSinkPluginInstanceGUI(
|
||||
const QString& sinkId,
|
||||
QWidget **widget,
|
||||
DeviceSinkAPI *deviceAPI,
|
||||
DeviceUISet *deviceUISet)
|
||||
{
|
||||
if(sinkId == m_deviceTypeID)
|
||||
{
|
||||
BladerfOutputGui* gui = new BladerfOutputGui(deviceAPI);
|
||||
BladerfOutputGui* gui = new BladerfOutputGui(deviceAPI, deviceUISet);
|
||||
*widget = gui;
|
||||
return gui;
|
||||
}
|
||||
|
@ -36,7 +36,13 @@ public:
|
||||
void initPlugin(PluginAPI* pluginAPI);
|
||||
|
||||
virtual SamplingDevices enumSampleSinks();
|
||||
virtual PluginInstanceGUI* createSampleSinkPluginInstanceGUI(const QString& sinkId, QWidget **widget, DeviceSinkAPI *deviceAPI);
|
||||
|
||||
virtual PluginInstanceGUI* createSampleSinkPluginInstanceGUI(
|
||||
const QString& sinkId,
|
||||
QWidget **widget,
|
||||
DeviceSinkAPI *deviceAPI,
|
||||
DeviceUISet *deviceUISet);
|
||||
|
||||
virtual DeviceSampleSink* createSampleSinkPluginInstanceOutput(const QString& sinkId, DeviceSinkAPI *deviceAPI);
|
||||
|
||||
static const QString m_hardwareID;
|
||||
|
@ -32,12 +32,14 @@
|
||||
#include "mainwindow.h"
|
||||
|
||||
#include "device/devicesinkapi.h"
|
||||
#include "device/deviceuiset.h"
|
||||
#include "filesinkgui.h"
|
||||
|
||||
FileSinkGui::FileSinkGui(DeviceSinkAPI *deviceAPI, QWidget* parent) :
|
||||
FileSinkGui::FileSinkGui(DeviceSinkAPI *deviceAPI, DeviceUISet *deviceUISet, QWidget* parent) :
|
||||
QWidget(parent),
|
||||
ui(new Ui::FileSinkGui),
|
||||
m_deviceAPI(deviceAPI),
|
||||
m_deviceUISet(deviceUISet),
|
||||
m_forceSettings(true),
|
||||
m_settings(),
|
||||
m_fileName("./test.sdriq"),
|
||||
@ -177,8 +179,8 @@ void FileSinkGui::handleInputMessages()
|
||||
|
||||
void FileSinkGui::updateSampleRateAndFrequency()
|
||||
{
|
||||
m_deviceAPI->getSpectrum()->setSampleRate(m_sampleRate);
|
||||
m_deviceAPI->getSpectrum()->setCenterFrequency(m_deviceCenterFrequency);
|
||||
m_deviceUISet->getSpectrum()->setSampleRate(m_sampleRate);
|
||||
m_deviceUISet->getSpectrum()->setCenterFrequency(m_deviceCenterFrequency);
|
||||
ui->deviceRateText->setText(tr("%1k").arg((float)(m_sampleRate*(1<<m_settings.m_log2Interp)) / 1000));
|
||||
}
|
||||
|
||||
|
@ -29,6 +29,7 @@
|
||||
|
||||
class DeviceSinkAPI;
|
||||
class DeviceSampleSink;
|
||||
class DeviceUISet;
|
||||
|
||||
namespace Ui {
|
||||
class FileSinkGui;
|
||||
@ -38,7 +39,7 @@ class FileSinkGui : public QWidget, public PluginInstanceGUI {
|
||||
Q_OBJECT
|
||||
|
||||
public:
|
||||
explicit FileSinkGui(DeviceSinkAPI *deviceAPI, QWidget* parent = NULL);
|
||||
explicit FileSinkGui(DeviceSinkAPI *deviceAPI, DeviceUISet *deviceUISet, QWidget* parent = 0);
|
||||
virtual ~FileSinkGui();
|
||||
virtual void destroy();
|
||||
|
||||
@ -57,6 +58,7 @@ private:
|
||||
Ui::FileSinkGui* ui;
|
||||
|
||||
DeviceSinkAPI* m_deviceAPI;
|
||||
DeviceUISet* m_deviceUISet;
|
||||
bool m_forceSettings;
|
||||
FileSinkSettings m_settings;
|
||||
QString m_fileName;
|
||||
|
@ -69,11 +69,15 @@ PluginInterface::SamplingDevices FileSinkPlugin::enumSampleSinks()
|
||||
return result;
|
||||
}
|
||||
|
||||
PluginInstanceGUI* FileSinkPlugin::createSampleSinkPluginInstanceGUI(const QString& sinkId, QWidget **widget, DeviceSinkAPI *deviceAPI)
|
||||
PluginInstanceGUI* FileSinkPlugin::createSampleSinkPluginInstanceGUI(
|
||||
const QString& sinkId,
|
||||
QWidget **widget,
|
||||
DeviceSinkAPI *deviceAPI,
|
||||
DeviceUISet *deviceUISet)
|
||||
{
|
||||
if(sinkId == m_deviceTypeID)
|
||||
{
|
||||
FileSinkGui* gui = new FileSinkGui(deviceAPI);
|
||||
FileSinkGui* gui = new FileSinkGui(deviceAPI, deviceUISet);
|
||||
*widget = gui;
|
||||
return gui;
|
||||
}
|
||||
|
@ -37,7 +37,11 @@ public:
|
||||
void initPlugin(PluginAPI* pluginAPI);
|
||||
|
||||
virtual SamplingDevices enumSampleSinks();
|
||||
virtual PluginInstanceGUI* createSampleSinkPluginInstanceGUI(const QString& sinkId, QWidget **widget, DeviceSinkAPI *deviceAPI);
|
||||
virtual PluginInstanceGUI* createSampleSinkPluginInstanceGUI(
|
||||
const QString& sinkId,
|
||||
QWidget **widget,
|
||||
DeviceSinkAPI *deviceAPI,
|
||||
DeviceUISet *deviceUISet);
|
||||
virtual DeviceSampleSink* createSampleSinkPluginInstanceOutput(const QString& sinkId, DeviceSinkAPI *deviceAPI);
|
||||
|
||||
static const QString m_hardwareID;
|
||||
|
@ -27,15 +27,17 @@
|
||||
#include "dsp/dspcommands.h"
|
||||
#include "device/devicesinkapi.h"
|
||||
#include "device/devicesourceapi.h"
|
||||
#include "device/deviceuiset.h"
|
||||
#include "hackrf/devicehackrfvalues.h"
|
||||
#include "hackrf/devicehackrfshared.h"
|
||||
|
||||
#include "ui_hackrfoutputgui.h"
|
||||
|
||||
HackRFOutputGui::HackRFOutputGui(DeviceSinkAPI *deviceAPI, QWidget* parent) :
|
||||
HackRFOutputGui::HackRFOutputGui(DeviceSinkAPI *deviceAPI, DeviceUISet *deviceUISet, QWidget* parent) :
|
||||
QWidget(parent),
|
||||
ui(new Ui::HackRFOutputGui),
|
||||
m_deviceAPI(deviceAPI),
|
||||
m_deviceUISet(deviceUISet),
|
||||
m_forceSettings(true),
|
||||
m_settings(),
|
||||
m_deviceSampleSink(0),
|
||||
@ -180,8 +182,8 @@ void HackRFOutputGui::handleInputMessages()
|
||||
|
||||
void HackRFOutputGui::updateSampleRateAndFrequency()
|
||||
{
|
||||
m_deviceAPI->getSpectrum()->setSampleRate(m_sampleRate);
|
||||
m_deviceAPI->getSpectrum()->setCenterFrequency(m_deviceCenterFrequency);
|
||||
m_deviceUISet->getSpectrum()->setSampleRate(m_sampleRate);
|
||||
m_deviceUISet->getSpectrum()->setCenterFrequency(m_deviceCenterFrequency);
|
||||
ui->deviceRateText->setText(QString("%1k").arg(QString::number(m_sampleRate/1000.0, 'g', 5)));
|
||||
}
|
||||
|
||||
|
@ -29,6 +29,7 @@
|
||||
|
||||
class DeviceSinkAPI;
|
||||
class DeviceSampleSink;
|
||||
class DeviceUISet;
|
||||
|
||||
namespace Ui {
|
||||
class HackRFOutputGui;
|
||||
@ -46,7 +47,7 @@ public:
|
||||
HACKRF_IMGREJ_NB
|
||||
} HackRFImgRejValue;
|
||||
|
||||
explicit HackRFOutputGui(DeviceSinkAPI *deviceAPI, QWidget* parent = NULL);
|
||||
explicit HackRFOutputGui(DeviceSinkAPI *deviceAPI, DeviceUISet *deviceUISet, QWidget* parent = 0);
|
||||
virtual ~HackRFOutputGui();
|
||||
virtual void destroy();
|
||||
|
||||
@ -65,6 +66,7 @@ private:
|
||||
Ui::HackRFOutputGui* ui;
|
||||
|
||||
DeviceSinkAPI* m_deviceAPI;
|
||||
DeviceUISet* m_deviceUISet;
|
||||
bool m_forceSettings;
|
||||
HackRFOutputSettings m_settings;
|
||||
QTimer m_updateTimer;
|
||||
|
@ -116,11 +116,15 @@ PluginInterface::SamplingDevices HackRFOutputPlugin::enumSampleSinks()
|
||||
return result;
|
||||
}
|
||||
|
||||
PluginInstanceGUI* HackRFOutputPlugin::createSampleSinkPluginInstanceGUI(const QString& sinkId, QWidget **widget, DeviceSinkAPI *deviceAPI)
|
||||
PluginInstanceGUI* HackRFOutputPlugin::createSampleSinkPluginInstanceGUI(
|
||||
const QString& sinkId,
|
||||
QWidget **widget,
|
||||
DeviceSinkAPI *deviceAPI,
|
||||
DeviceUISet *deviceUISet)
|
||||
{
|
||||
if(sinkId == m_deviceTypeID)
|
||||
{
|
||||
HackRFOutputGui* gui = new HackRFOutputGui(deviceAPI);
|
||||
HackRFOutputGui* gui = new HackRFOutputGui(deviceAPI, deviceUISet);
|
||||
*widget = gui;
|
||||
return gui;
|
||||
}
|
||||
|
@ -36,7 +36,11 @@ public:
|
||||
void initPlugin(PluginAPI* pluginAPI);
|
||||
|
||||
virtual SamplingDevices enumSampleSinks();
|
||||
virtual PluginInstanceGUI* createSampleSinkPluginInstanceGUI(const QString& sinkId, QWidget **widget, DeviceSinkAPI *deviceAPI);
|
||||
virtual PluginInstanceGUI* createSampleSinkPluginInstanceGUI(
|
||||
const QString& sinkId,
|
||||
QWidget **widget,
|
||||
DeviceSinkAPI *deviceAPI,
|
||||
DeviceUISet *deviceUISet);
|
||||
virtual DeviceSampleSink* createSampleSinkPluginInstanceOutput(const QString& sinkId, DeviceSinkAPI *deviceAPI);
|
||||
|
||||
static const QString m_hardwareID;
|
||||
|
@ -23,12 +23,14 @@
|
||||
#include "dsp/dspengine.h"
|
||||
#include "dsp/dspcommands.h"
|
||||
#include "device/devicesinkapi.h"
|
||||
#include "device/deviceuiset.h"
|
||||
#include "limesdroutputgui.h"
|
||||
|
||||
LimeSDROutputGUI::LimeSDROutputGUI(DeviceSinkAPI *deviceAPI, QWidget* parent) :
|
||||
LimeSDROutputGUI::LimeSDROutputGUI(DeviceSinkAPI *deviceAPI, DeviceUISet *deviceUISet, QWidget* parent) :
|
||||
QWidget(parent),
|
||||
ui(new Ui::LimeSDROutputGUI),
|
||||
m_deviceAPI(deviceAPI),
|
||||
m_deviceUISet(deviceUISet),
|
||||
m_settings(),
|
||||
m_sampleRate(0),
|
||||
m_lastEngineState((DSPDeviceSinkEngine::State)-1),
|
||||
@ -238,8 +240,8 @@ void LimeSDROutputGUI::handleInputMessages()
|
||||
|
||||
void LimeSDROutputGUI::updateSampleRateAndFrequency()
|
||||
{
|
||||
m_deviceAPI->getSpectrum()->setSampleRate(m_sampleRate);
|
||||
m_deviceAPI->getSpectrum()->setCenterFrequency(m_deviceCenterFrequency);
|
||||
m_deviceUISet->getSpectrum()->setSampleRate(m_sampleRate);
|
||||
m_deviceUISet->getSpectrum()->setCenterFrequency(m_deviceCenterFrequency);
|
||||
ui->deviceRateLabel->setText(tr("%1k").arg(QString::number(m_sampleRate / 1000.0f, 'g', 5)));
|
||||
}
|
||||
|
||||
|
@ -27,6 +27,7 @@
|
||||
|
||||
class DeviceSinkAPI;
|
||||
class DeviceSampleSink;
|
||||
class DeviceUISet;
|
||||
|
||||
namespace Ui {
|
||||
class LimeSDROutputGUI;
|
||||
@ -36,7 +37,7 @@ class LimeSDROutputGUI : public QWidget, public PluginInstanceGUI {
|
||||
Q_OBJECT
|
||||
|
||||
public:
|
||||
explicit LimeSDROutputGUI(DeviceSinkAPI *deviceAPI, QWidget* parent = 0);
|
||||
explicit LimeSDROutputGUI(DeviceSinkAPI *deviceAPI, DeviceUISet *deviceUISet, QWidget* parent = 0);
|
||||
virtual ~LimeSDROutputGUI();
|
||||
virtual void destroy();
|
||||
|
||||
@ -55,6 +56,7 @@ private:
|
||||
Ui::LimeSDROutputGUI* ui;
|
||||
|
||||
DeviceSinkAPI* m_deviceAPI;
|
||||
DeviceUISet* m_deviceUISet;
|
||||
LimeSDROutput* m_limeSDROutput; //!< Same object as above but gives easy access to LimeSDROutput methods and attributes that are used intensively
|
||||
LimeSDROutputSettings m_settings;
|
||||
QTimer m_updateTimer;
|
||||
|
@ -96,11 +96,15 @@ PluginInterface::SamplingDevices LimeSDROutputPlugin::enumSampleSinks()
|
||||
return result;
|
||||
}
|
||||
|
||||
PluginInstanceGUI* LimeSDROutputPlugin::createSampleSinkPluginInstanceGUI(const QString& sinkId,QWidget **widget, DeviceSinkAPI *deviceAPI)
|
||||
PluginInstanceGUI* LimeSDROutputPlugin::createSampleSinkPluginInstanceGUI(
|
||||
const QString& sinkId,
|
||||
QWidget **widget,
|
||||
DeviceSinkAPI *deviceAPI,
|
||||
DeviceUISet *deviceUISet)
|
||||
{
|
||||
if(sinkId == m_deviceTypeID)
|
||||
{
|
||||
LimeSDROutputGUI* gui = new LimeSDROutputGUI(deviceAPI);
|
||||
LimeSDROutputGUI* gui = new LimeSDROutputGUI(deviceAPI, deviceUISet);
|
||||
*widget = gui;
|
||||
return gui;
|
||||
}
|
||||
|
@ -36,7 +36,11 @@ public:
|
||||
void initPlugin(PluginAPI* pluginAPI);
|
||||
|
||||
virtual SamplingDevices enumSampleSinks();
|
||||
virtual PluginInstanceGUI* createSampleSinkPluginInstanceGUI(const QString& sinkId, QWidget **widget, DeviceSinkAPI *deviceAPI);
|
||||
virtual PluginInstanceGUI* createSampleSinkPluginInstanceGUI(
|
||||
const QString& sinkId,
|
||||
QWidget **widget,
|
||||
DeviceSinkAPI *deviceAPI,
|
||||
DeviceUISet *deviceUISet);
|
||||
virtual DeviceSampleSink* createSampleSinkPluginInstanceOutput(const QString& sinkId, DeviceSinkAPI *deviceAPI);
|
||||
|
||||
static const QString m_hardwareID;
|
||||
|
@ -22,15 +22,17 @@
|
||||
#include "dsp/dspcommands.h"
|
||||
#include "gui/glspectrum.h"
|
||||
#include "device/devicesinkapi.h"
|
||||
#include "device/deviceuiset.h"
|
||||
#include "plutosdr/deviceplutosdr.h"
|
||||
#include "plutosdroutput.h"
|
||||
#include "plutosdroutputgui.h"
|
||||
#include "ui_plutosdroutputgui.h"
|
||||
|
||||
PlutoSDROutputGUI::PlutoSDROutputGUI(DeviceSinkAPI *deviceAPI, QWidget* parent) :
|
||||
PlutoSDROutputGUI::PlutoSDROutputGUI(DeviceSinkAPI *deviceAPI, DeviceUISet *deviceUISet, QWidget* parent) :
|
||||
QWidget(parent),
|
||||
ui(new Ui::PlutoSDROutputGUI),
|
||||
m_deviceAPI(deviceAPI),
|
||||
m_deviceUISet(deviceUISet),
|
||||
m_settings(),
|
||||
m_forceSettings(true),
|
||||
m_sampleSink(0),
|
||||
@ -421,7 +423,7 @@ void PlutoSDROutputGUI::handleInputMessages()
|
||||
|
||||
void PlutoSDROutputGUI::updateSampleRateAndFrequency()
|
||||
{
|
||||
m_deviceAPI->getSpectrum()->setSampleRate(m_sampleRate);
|
||||
m_deviceAPI->getSpectrum()->setCenterFrequency(m_deviceCenterFrequency);
|
||||
m_deviceUISet->getSpectrum()->setSampleRate(m_sampleRate);
|
||||
m_deviceUISet->getSpectrum()->setCenterFrequency(m_deviceCenterFrequency);
|
||||
ui->deviceRateLabel->setText(tr("%1k").arg(QString::number(m_sampleRate / 1000.0f, 'g', 5)));
|
||||
}
|
||||
|
@ -28,6 +28,7 @@
|
||||
|
||||
class DeviceSinkAPI;
|
||||
class DeviceSampleSink;
|
||||
class DeviceUISet;
|
||||
|
||||
namespace Ui {
|
||||
class PlutoSDROutputGUI;
|
||||
@ -37,7 +38,7 @@ class PlutoSDROutputGUI : public QWidget, public PluginInstanceGUI {
|
||||
Q_OBJECT
|
||||
|
||||
public:
|
||||
explicit PlutoSDROutputGUI(DeviceSinkAPI *deviceAPI, QWidget* parent = 0);
|
||||
explicit PlutoSDROutputGUI(DeviceSinkAPI *deviceAPI, DeviceUISet *deviceUISet, QWidget* parent = 0);
|
||||
virtual ~PlutoSDROutputGUI();
|
||||
|
||||
virtual void destroy();
|
||||
@ -54,6 +55,7 @@ public:
|
||||
private:
|
||||
Ui::PlutoSDROutputGUI* ui;
|
||||
DeviceSinkAPI* m_deviceAPI;
|
||||
DeviceUISet* m_deviceUISet;
|
||||
PlutoSDROutputSettings m_settings;
|
||||
bool m_forceSettings;
|
||||
QTimer m_updateTimer;
|
||||
|
@ -81,11 +81,15 @@ PluginInterface::SamplingDevices PlutoSDROutputPlugin::enumSampleSinks()
|
||||
return result;
|
||||
}
|
||||
|
||||
PluginInstanceGUI* PlutoSDROutputPlugin::createSampleSinkPluginInstanceGUI(const QString& sinkId, QWidget **widget, DeviceSinkAPI *deviceAPI)
|
||||
PluginInstanceGUI* PlutoSDROutputPlugin::createSampleSinkPluginInstanceGUI(
|
||||
const QString& sinkId,
|
||||
QWidget **widget,
|
||||
DeviceSinkAPI *deviceAPI,
|
||||
DeviceUISet *deviceUISet)
|
||||
{
|
||||
if(sinkId == m_deviceTypeID)
|
||||
{
|
||||
PlutoSDROutputGUI* gui = new PlutoSDROutputGUI(deviceAPI);
|
||||
PlutoSDROutputGUI* gui = new PlutoSDROutputGUI(deviceAPI, deviceUISet);
|
||||
*widget = gui;
|
||||
return gui;
|
||||
}
|
||||
|
@ -36,7 +36,11 @@ public:
|
||||
void initPlugin(PluginAPI* pluginAPI);
|
||||
|
||||
virtual SamplingDevices enumSampleSinks();
|
||||
virtual PluginInstanceGUI* createSampleSinkPluginInstanceGUI(const QString& sinkId, QWidget **widget, DeviceSinkAPI *deviceAPI);
|
||||
virtual PluginInstanceGUI* createSampleSinkPluginInstanceGUI(
|
||||
const QString& sinkId,
|
||||
QWidget **widget,
|
||||
DeviceSinkAPI *deviceAPI,
|
||||
DeviceUISet *deviceUISet);
|
||||
virtual DeviceSampleSink* createSampleSinkPluginInstanceOutput(const QString& sinkId, DeviceSinkAPI *deviceAPI);
|
||||
|
||||
static const QString m_hardwareID;
|
||||
|
@ -38,12 +38,14 @@
|
||||
#include "mainwindow.h"
|
||||
|
||||
#include "device/devicesinkapi.h"
|
||||
#include "device/deviceuiset.h"
|
||||
#include "sdrdaemonsinkgui.h"
|
||||
|
||||
SDRdaemonSinkGui::SDRdaemonSinkGui(DeviceSinkAPI *deviceAPI, QWidget* parent) :
|
||||
SDRdaemonSinkGui::SDRdaemonSinkGui(DeviceSinkAPI *deviceAPI, DeviceUISet *deviceUISet, QWidget* parent) :
|
||||
QWidget(parent),
|
||||
ui(new Ui::SDRdaemonSinkGui),
|
||||
m_deviceAPI(deviceAPI),
|
||||
m_deviceUISet(deviceUISet),
|
||||
m_settings(),
|
||||
m_deviceSampleSink(0),
|
||||
m_sampleRate(0),
|
||||
@ -211,8 +213,8 @@ void SDRdaemonSinkGui::handleInputMessages()
|
||||
|
||||
void SDRdaemonSinkGui::updateSampleRateAndFrequency()
|
||||
{
|
||||
m_deviceAPI->getSpectrum()->setSampleRate(m_sampleRate);
|
||||
m_deviceAPI->getSpectrum()->setCenterFrequency(m_deviceCenterFrequency);
|
||||
m_deviceUISet->getSpectrum()->setSampleRate(m_sampleRate);
|
||||
m_deviceUISet->getSpectrum()->setCenterFrequency(m_deviceCenterFrequency);
|
||||
ui->deviceRateText->setText(tr("%1k").arg((float)(m_sampleRate*(1<<m_settings.m_log2Interp)) / 1000));
|
||||
}
|
||||
|
||||
|
@ -30,6 +30,7 @@
|
||||
|
||||
class DeviceSinkAPI;
|
||||
class DeviceSampleSink;
|
||||
class DeviceUISet;
|
||||
|
||||
namespace Ui {
|
||||
class SDRdaemonSinkGui;
|
||||
@ -39,7 +40,7 @@ class SDRdaemonSinkGui : public QWidget, public PluginInstanceGUI {
|
||||
Q_OBJECT
|
||||
|
||||
public:
|
||||
explicit SDRdaemonSinkGui(DeviceSinkAPI *deviceAPI, QWidget* parent = NULL);
|
||||
explicit SDRdaemonSinkGui(DeviceSinkAPI *deviceAPI, DeviceUISet *deviceUISet, QWidget* parent = 0);
|
||||
virtual ~SDRdaemonSinkGui();
|
||||
virtual void destroy();
|
||||
|
||||
@ -58,6 +59,7 @@ private:
|
||||
Ui::SDRdaemonSinkGui* ui;
|
||||
|
||||
DeviceSinkAPI* m_deviceAPI;
|
||||
DeviceUISet* m_deviceUISet;
|
||||
SDRdaemonSinkSettings m_settings; //!< current settings
|
||||
SDRdaemonSinkSettings m_controlSettings; //!< settings last sent to device via control port
|
||||
QTimer m_updateTimer;
|
||||
|
@ -70,11 +70,15 @@ PluginInterface::SamplingDevices SDRdaemonSinkPlugin::enumSampleSinks()
|
||||
return result;
|
||||
}
|
||||
|
||||
PluginInstanceGUI* SDRdaemonSinkPlugin::createSampleSinkPluginInstanceGUI(const QString& sinkId, QWidget **widget, DeviceSinkAPI *deviceAPI)
|
||||
PluginInstanceGUI* SDRdaemonSinkPlugin::createSampleSinkPluginInstanceGUI(
|
||||
const QString& sinkId,
|
||||
QWidget **widget,
|
||||
DeviceSinkAPI *deviceAPI,
|
||||
DeviceUISet *deviceUISet)
|
||||
{
|
||||
if(sinkId == m_deviceTypeID)
|
||||
{
|
||||
SDRdaemonSinkGui* gui = new SDRdaemonSinkGui(deviceAPI);
|
||||
SDRdaemonSinkGui* gui = new SDRdaemonSinkGui(deviceAPI, deviceUISet);
|
||||
*widget = gui;
|
||||
return gui;
|
||||
}
|
||||
|
@ -37,7 +37,11 @@ public:
|
||||
void initPlugin(PluginAPI* pluginAPI);
|
||||
|
||||
virtual SamplingDevices enumSampleSinks();
|
||||
virtual PluginInstanceGUI* createSampleSinkPluginInstanceGUI(const QString& sinkId, QWidget **widget, DeviceSinkAPI *deviceAPI);
|
||||
virtual PluginInstanceGUI* createSampleSinkPluginInstanceGUI(
|
||||
const QString& sinkId,
|
||||
QWidget **widget,
|
||||
DeviceSinkAPI *deviceAPI,
|
||||
DeviceUISet *deviceUISet);
|
||||
virtual DeviceSampleSink* createSampleSinkPluginInstanceOutput(const QString& sinkId, DeviceSinkAPI *deviceAPI);
|
||||
|
||||
static const QString m_hardwareID;
|
||||
|
@ -136,11 +136,6 @@ MessageQueue *DeviceSinkAPI::getSampleSinkGUIMessageQueue()
|
||||
return getSampleSink()->getMessageQueueToGUI();
|
||||
}
|
||||
|
||||
GLSpectrum *DeviceSinkAPI::getSpectrum()
|
||||
{
|
||||
return m_spectrum;
|
||||
}
|
||||
|
||||
void DeviceSinkAPI::addChannelMarker(ChannelMarker* channelMarker)
|
||||
{
|
||||
m_spectrum->addChannelMarker(channelMarker);
|
||||
|
@ -66,8 +66,8 @@ public:
|
||||
MessageQueue *getDeviceEngineInputMessageQueue();
|
||||
MessageQueue *getSampleSinkInputMessageQueue();
|
||||
MessageQueue *getSampleSinkGUIMessageQueue();
|
||||
|
||||
// device related stuff
|
||||
GLSpectrum *getSpectrum(); //!< Direct spectrum getter
|
||||
void addChannelMarker(ChannelMarker* channelMarker); //!< Add channel marker to spectrum
|
||||
void addRollupWidget(QWidget *widget); //!< Add rollup widget to channel window
|
||||
|
||||
|
@ -296,7 +296,10 @@ void MainWindow::addSinkDevice()
|
||||
m_deviceUIs.back()->m_deviceSinkAPI->setSampleSink(sink);
|
||||
QWidget *gui;
|
||||
PluginInstanceGUI *pluginUI = m_deviceUIs.back()->m_deviceSinkAPI->getPluginInterface()->createSampleSinkPluginInstanceGUI(
|
||||
m_deviceUIs.back()->m_deviceSinkAPI->getSampleSinkId(), &gui, m_deviceUIs.back()->m_deviceSinkAPI);
|
||||
m_deviceUIs.back()->m_deviceSinkAPI->getSampleSinkId(),
|
||||
&gui,
|
||||
m_deviceUIs.back()->m_deviceSinkAPI,
|
||||
m_deviceUIs.back());
|
||||
m_deviceUIs.back()->m_deviceSinkAPI->getSampleSink()->setMessageQueueToGUI(pluginUI->getInputMessageQueue());
|
||||
m_deviceUIs.back()->m_deviceSinkAPI->setSampleSinkPluginInstanceUI(pluginUI);
|
||||
setDeviceGUI(deviceTabIndex, gui, m_deviceUIs.back()->m_deviceSinkAPI->getSampleSinkDisplayName(), false);
|
||||
@ -986,7 +989,10 @@ void MainWindow::on_sampleSink_confirmClicked(bool checked __attribute__((unused
|
||||
deviceUI->m_deviceSinkAPI->setSampleSink(sink);
|
||||
QWidget *gui;
|
||||
PluginInstanceGUI *pluginUI = deviceUI->m_deviceSinkAPI->getPluginInterface()->createSampleSinkPluginInstanceGUI(
|
||||
deviceUI->m_deviceSinkAPI->getSampleSinkId(), &gui, deviceUI->m_deviceSinkAPI);
|
||||
deviceUI->m_deviceSinkAPI->getSampleSinkId(),
|
||||
&gui,
|
||||
deviceUI->m_deviceSinkAPI,
|
||||
deviceUI);
|
||||
deviceUI->m_deviceSinkAPI->getSampleSink()->setMessageQueueToGUI(pluginUI->getInputMessageQueue());
|
||||
deviceUI->m_deviceSinkAPI->setSampleSinkPluginInstanceUI(pluginUI);
|
||||
setDeviceGUI(currentSinkTabIndex, gui, deviceUI->m_deviceSinkAPI->getSampleSinkDisplayName(), false);
|
||||
|
@ -53,12 +53,15 @@ public:
|
||||
virtual void initPlugin(PluginAPI* pluginAPI) = 0;
|
||||
|
||||
// channel Rx plugins
|
||||
|
||||
virtual PluginInstanceGUI* createRxChannel(const QString& channelName __attribute__((unused)), DeviceSourceAPI *deviceAPI __attribute__((unused)) ) { return 0; }
|
||||
|
||||
// channel Tx plugins
|
||||
|
||||
virtual PluginInstanceGUI* createTxChannel(const QString& channelName __attribute__((unused)), DeviceSinkAPI *deviceAPI __attribute__((unused)) ) { return 0; }
|
||||
|
||||
// device source plugins only
|
||||
|
||||
virtual SamplingDevices enumSampleSources() { return SamplingDevices(); }
|
||||
|
||||
virtual PluginInstanceGUI* createSampleSourcePluginInstanceGUI(
|
||||
@ -72,9 +75,17 @@ public:
|
||||
virtual void deleteSampleSourcePluginInstanceInput(DeviceSampleSource *source);
|
||||
|
||||
// device sink plugins only
|
||||
|
||||
virtual SamplingDevices enumSampleSinks() { return SamplingDevices(); }
|
||||
virtual PluginInstanceGUI* createSampleSinkPluginInstanceGUI(const QString& sinkId __attribute__((unused)), QWidget **widget __attribute__((unused)), DeviceSinkAPI *deviceAPI __attribute__((unused))) { return 0; }
|
||||
virtual DeviceSampleSink* createSampleSinkPluginInstanceOutput(const QString& sinkId __attribute__((unused)), DeviceSinkAPI *deviceAPI __attribute__((unused))) { return 0; } // creates the output "core"
|
||||
|
||||
virtual PluginInstanceGUI* createSampleSinkPluginInstanceGUI(
|
||||
const QString& sinkId __attribute__((unused)),
|
||||
QWidget **widget __attribute__((unused)),
|
||||
DeviceSinkAPI *deviceAPI __attribute__((unused)),
|
||||
DeviceUISet *deviceUISet __attribute__((unused)))
|
||||
{ return 0; }
|
||||
|
||||
virtual DeviceSampleSink* createSampleSinkPluginInstanceOutput(const QString& sinkId __attribute__((unused)), DeviceSinkAPI *deviceAPI __attribute__((unused))) { return 0; } // creates the output "core"
|
||||
virtual void deleteSampleSinkPluginInstanceGUI(PluginInstanceGUI *ui);
|
||||
virtual void deleteSampleSinkPluginInstanceOutput(DeviceSampleSink *sink);
|
||||
};
|
||||
|
Loading…
Reference in New Issue
Block a user