2014-11-03 12:13:32 -05:00
|
|
|
#include <QtPlugin>
|
|
|
|
#include <QAction>
|
|
|
|
#include "plugin/pluginapi.h"
|
|
|
|
#include "util/simpleserializer.h"
|
|
|
|
#include "v4lplugin.h"
|
|
|
|
#include "v4lgui.h"
|
|
|
|
|
|
|
|
const PluginDescriptor V4LPlugin::m_pluginDescriptor = {
|
2015-05-21 14:09:12 -04:00
|
|
|
QString("V4L SDRplay Input"),
|
2015-05-18 10:18:00 -04:00
|
|
|
QString("4.0"),
|
2015-05-21 14:09:12 -04:00
|
|
|
QString("(c) 2015 John Greb"),
|
2014-12-03 13:41:38 -05:00
|
|
|
QString("http://palosaari.fi/linux/"),
|
2014-11-03 12:13:32 -05:00
|
|
|
true,
|
2014-12-03 13:41:38 -05:00
|
|
|
QString("github.com/hexameron/rtl-sdrangelove")
|
2014-11-03 12:13:32 -05:00
|
|
|
};
|
|
|
|
|
|
|
|
V4LPlugin::V4LPlugin(QObject* parent) :
|
|
|
|
QObject(parent)
|
|
|
|
{
|
|
|
|
}
|
|
|
|
|
|
|
|
const PluginDescriptor& V4LPlugin::getPluginDescriptor() const
|
|
|
|
{
|
|
|
|
return m_pluginDescriptor;
|
|
|
|
}
|
|
|
|
|
|
|
|
void V4LPlugin::initPlugin(PluginAPI* pluginAPI)
|
|
|
|
{
|
|
|
|
m_pluginAPI = pluginAPI;
|
|
|
|
|
|
|
|
m_pluginAPI->registerSampleSource("org.osmocom.sdr.samplesource.v4l", this);
|
|
|
|
}
|
|
|
|
|
|
|
|
PluginInterface::SampleSourceDevices V4LPlugin::enumSampleSources()
|
|
|
|
{
|
|
|
|
SampleSourceDevices result;
|
|
|
|
|
2015-05-18 10:18:00 -04:00
|
|
|
QString displayedName(QString("Linux V4L (SDRplay)"));
|
2014-11-21 14:44:19 -05:00
|
|
|
SimpleSerializer s(1);
|
|
|
|
s.writeS32(1, 0);
|
|
|
|
result.append(SampleSourceDevice(displayedName, "org.osmocom.sdr.samplesource.v4l", s.final()));
|
2014-11-03 12:13:32 -05:00
|
|
|
|
|
|
|
return result;
|
|
|
|
}
|
|
|
|
|
|
|
|
PluginGUI* V4LPlugin::createSampleSource(const QString& sourceName, const QByteArray& address)
|
|
|
|
{
|
|
|
|
if(sourceName == "org.osmocom.sdr.samplesource.v4l") {
|
|
|
|
V4LGui* gui = new V4LGui(m_pluginAPI);
|
|
|
|
m_pluginAPI->setInputGUI(gui);
|
|
|
|
return gui;
|
|
|
|
} else {
|
|
|
|
return NULL;
|
|
|
|
}
|
|
|
|
}
|