21 #include <libbladeRF.h> 32 QString(
"BladeRF2 Input"),
34 QString(
"(c) Edouard Griffiths, F4EXB"),
35 QString(
"https://github.com/f4exb/sdrangel"),
37 QString(
"https://github.com/f4exb/sdrangel")
61 struct bladerf_devinfo *devinfo = 0;
63 int count = bladerf_get_device_list(&devinfo);
67 for(
int i = 0;
i < count;
i++)
71 int status = bladerf_open_with_devinfo(&dev, &devinfo[
i]);
73 if (status == BLADERF_ERR_NODEV)
75 qCritical(
"Blderf2InputPlugin::enumSampleSources: No device at index %d", i);
80 qCritical(
"Blderf2InputPlugin::enumSampleSources: Failed to open device at index %d", i);
84 const char *boardName = bladerf_get_board_name(dev);
86 if (strcmp(boardName,
"bladerf2") == 0)
88 unsigned int nbRxChannels = bladerf_get_channel_count(dev, BLADERF_RX);
90 for (
unsigned int j = 0; j < nbRxChannels; j++)
92 qDebug(
"Blderf2InputPlugin::enumSampleSources: device #%d (%s) channel %u", i, devinfo[i].serial, j);
93 QString displayedName(QString(
"BladeRF2[%1:%2] %3").
arg(devinfo[i].instance).
arg(j).
arg(devinfo[i].serial));
97 QString(devinfo[i].serial),
109 bladerf_free_device_list(devinfo);
117 const QString& sourceId,
128 const QString& sourceId,
void registerSampleSource(const QString &sourceName, PluginInterface *plugin)
Fixed< IntType, IntBits > arg(const std::complex< Fixed< IntType, IntBits > > &val)
Exposes a single input stream that can be one of the streams of a physical device.
QList< SamplingDevice > SamplingDevices