SDRAngel  4.11.5
Developer docs for <a href="https://github.com/f4exb/sdrangel">SDRangel<\a>, an Open Source Qt5 / OpenGL 3.0+ SDR and signal analyzer frontend to various hardware.
Public Member Functions | Static Public Attributes | Static Private Attributes | List of all members
XTRXOutputPlugin Class Reference

#include <xtrxoutputplugin.h>

+ Inheritance diagram for XTRXOutputPlugin:
+ Collaboration diagram for XTRXOutputPlugin:

Public Member Functions

 XTRXOutputPlugin (QObject *parent=0)
 
const PluginDescriptorgetPluginDescriptor () const
 
void initPlugin (PluginAPI *pluginAPI)
 
virtual SamplingDevices enumSampleSinks ()
 
virtual PluginInstanceGUIcreateSampleSinkPluginInstanceGUI (const QString &sinkId, QWidget **widget, DeviceUISet *deviceUISet)
 
virtual DeviceSampleSinkcreateSampleSinkPluginInstance (const QString &sinkId, DeviceAPI *deviceAPI)
 
- Public Member Functions inherited from PluginInterface
virtual ~PluginInterface ()
 
virtual PluginInstanceGUIcreateRxChannelGUI (DeviceUISet *deviceUISet, BasebandSampleSink *rxChannel)
 
virtual BasebandSampleSinkcreateRxChannelBS (DeviceAPI *deviceAPI)
 
virtual ChannelAPIcreateRxChannelCS (DeviceAPI *deviceAPI)
 
virtual PluginInstanceGUIcreateTxChannelGUI (DeviceUISet *deviceUISet, BasebandSampleSource *txChannel)
 
virtual BasebandSampleSourcecreateTxChannelBS (DeviceAPI *deviceAPI)
 
virtual ChannelAPIcreateTxChannelCS (DeviceAPI *deviceAPI)
 
virtual SamplingDevices enumSampleSources ()
 
virtual PluginInstanceGUIcreateSampleSourcePluginInstanceGUI (const QString &sourceId, QWidget **widget, DeviceUISet *deviceUISet)
 
virtual DeviceSampleSourcecreateSampleSourcePluginInstance (const QString &sourceId, DeviceAPI *deviceAPI)
 
virtual void deleteSampleSourcePluginInstanceGUI (PluginInstanceGUI *ui)
 
virtual void deleteSampleSourcePluginInstanceInput (DeviceSampleSource *source)
 
virtual void deleteSampleSinkPluginInstanceGUI (PluginInstanceGUI *ui)
 
virtual void deleteSampleSinkPluginInstanceOutput (DeviceSampleSink *sink)
 
virtual SamplingDevices enumSampleMIMO ()
 
virtual PluginInstanceGUIcreateSampleMIMOPluginInstanceGUI (const QString &mimoId, QWidget **widget, DeviceUISet *deviceUISet)
 
virtual DeviceSampleMIMOcreateSampleMIMOPluginInstance (const QString &mimoId, DeviceAPI *deviceAPI)
 
virtual void deleteSampleMIMOPluginInstanceGUI (PluginInstanceGUI *ui)
 
virtual void deleteSampleMIMOPluginInstanceMIMO (DeviceSampleMIMO *mimo)
 

Static Public Attributes

static const QString m_hardwareID = "XTRX"
 
static const QString m_deviceTypeID = XTRXOUTPUT_DEVICE_TYPE_ID
 

Static Private Attributes

static const PluginDescriptor m_pluginDescriptor
 

Additional Inherited Members

- Public Types inherited from PluginInterface
typedef QList< SamplingDeviceSamplingDevices
 

Detailed Description

Definition at line 28 of file xtrxoutputplugin.h.

Constructor & Destructor Documentation

◆ XTRXOutputPlugin()

XTRXOutputPlugin::XTRXOutputPlugin ( QObject *  parent = 0)
explicit

Definition at line 47 of file xtrxoutputplugin.cpp.

47  :
48  QObject(parent)
49 {
50 }

Member Function Documentation

◆ createSampleSinkPluginInstance()

DeviceSampleSink * XTRXOutputPlugin::createSampleSinkPluginInstance ( const QString &  sinkId,
DeviceAPI deviceAPI 
)
virtual

Reimplemented from PluginInterface.

Definition at line 118 of file xtrxoutputplugin.cpp.

References m_deviceTypeID.

119 {
120  if(sinkId == m_deviceTypeID)
121  {
122  XTRXOutput* output = new XTRXOutput(deviceAPI);
123  return output;
124  }
125  else
126  {
127  return 0;
128  }
129 }
static const QString m_deviceTypeID

◆ createSampleSinkPluginInstanceGUI()

PluginInstanceGUI * XTRXOutputPlugin::createSampleSinkPluginInstanceGUI ( const QString &  sinkId,
QWidget **  widget,
DeviceUISet deviceUISet 
)
virtual

Reimplemented from PluginInterface.

Definition at line 100 of file xtrxoutputplugin.cpp.

References m_deviceTypeID.

Referenced by enumSampleSinks().

104 {
105  if(sinkId == m_deviceTypeID)
106  {
107  XTRXOutputGUI* gui = new XTRXOutputGUI(deviceUISet);
108  *widget = gui;
109  return gui;
110  }
111  else
112  {
113  return 0;
114  }
115 }
static const QString m_deviceTypeID
+ Here is the caller graph for this function:

◆ enumSampleSinks()

PluginInterface::SamplingDevices XTRXOutputPlugin::enumSampleSinks ( )
virtual

Reimplemented from PluginInterface.

Definition at line 62 of file xtrxoutputplugin.cpp.

References arg(), createSampleSinkPluginInstanceGUI(), i, m_deviceTypeID, m_hardwareID, DeviceXTRXParams::m_nbTxChannels, PluginInterface::SamplingDevice::PhysicalDevice, and PluginInterface::SamplingDevice::StreamSingleTx.

63 {
64  SamplingDevices result;
65  xtrx_device_info_t devs[32];
66  int res = xtrx_discovery(devs, 32);
67  int i;
68  for (i = 0; i < res; i++) {
69  DeviceXTRXParams XTRXParams;
70  for (unsigned int j = 0; j < XTRXParams.m_nbTxChannels; j++)
71  {
72  qDebug("XTRXInputPlugin::enumSampleSinks: device #%d channel %u: %s", i, j, devs[i].uniqname);
73  QString displayedName(QString("XTRX[%1:%2] %3").arg(i).arg(j).arg(devs[i].uniqname));
74  result.append(SamplingDevice(displayedName,
77  QString(devs[i].uniqname),
78  i,
81  XTRXParams.m_nbTxChannels,
82  j));
83  }
84  }
85  return result;
86 }
static const QString m_deviceTypeID
uint32_t m_nbTxChannels
number of Tx channels
Fixed< IntType, IntBits > arg(const std::complex< Fixed< IntType, IntBits > > &val)
Definition: fixed.h:2401
int32_t i
Definition: decimators.h:244
Exposes a single output stream that can be one of the streams of a physical device.
static const QString m_hardwareID
QList< SamplingDevice > SamplingDevices
+ Here is the call graph for this function:

◆ getPluginDescriptor()

const PluginDescriptor & XTRXOutputPlugin::getPluginDescriptor ( ) const
virtual

Implements PluginInterface.

Definition at line 52 of file xtrxoutputplugin.cpp.

References m_pluginDescriptor.

53 {
54  return m_pluginDescriptor;
55 }
static const PluginDescriptor m_pluginDescriptor

◆ initPlugin()

void XTRXOutputPlugin::initPlugin ( PluginAPI pluginAPI)
virtual

Implements PluginInterface.

Definition at line 57 of file xtrxoutputplugin.cpp.

References m_deviceTypeID, and PluginAPI::registerSampleSink().

58 {
59  pluginAPI->registerSampleSink(m_deviceTypeID, this);
60 }
static const QString m_deviceTypeID
void registerSampleSink(const QString &sinkName, PluginInterface *plugin)
Definition: pluginapi.cpp:24
+ Here is the call graph for this function:

Member Data Documentation

◆ m_deviceTypeID

const QString XTRXOutputPlugin::m_deviceTypeID = XTRXOUTPUT_DEVICE_TYPE_ID
static

◆ m_hardwareID

const QString XTRXOutputPlugin::m_hardwareID = "XTRX"
static

Definition at line 46 of file xtrxoutputplugin.h.

Referenced by enumSampleSinks().

◆ m_pluginDescriptor

const PluginDescriptor XTRXOutputPlugin::m_pluginDescriptor
staticprivate
Initial value:
= {
QString("XTRX Output"),
QString("4.5.4"),
QString("(c) Edouard Griffiths, F4EXB"),
QString("https://github.com/f4exb/sdrangel"),
true,
QString("https://github.com/f4exb/sdrangel")
}

Definition at line 50 of file xtrxoutputplugin.h.

Referenced by getPluginDescriptor().


The documentation for this class was generated from the following files: