Server: added FCDPro input plugin

This commit is contained in:
f4exb 2018-05-29 17:00:53 +02:00
parent d87fb7e348
commit 3542e43b57
5 changed files with 120 additions and 51 deletions

View File

@ -13,25 +13,6 @@ if(V4L-MSI)
# add_subdirectory(v4l-msi)
endif()
if(LIBUSB_FOUND AND UNIX)
FIND_PATH (ASOUNDH alsa/asoundlib.h)
FIND_LIBRARY (LIBASOUND asound)
endif()
if(LIBASOUND AND ASOUNDH)
add_subdirectory(fcdpro)
add_subdirectory(fcdproplus)
endif()
find_package(LibRTLSDR)
if(LIBUSB_FOUND AND LIBRTLSDR_FOUND)
add_subdirectory(rtlsdr)
endif(LIBUSB_FOUND AND LIBRTLSDR_FOUND)
find_package(LibBLADERF)
if(LIBUSB_FOUND AND LIBBLADERF_FOUND)
add_subdirectory(bladerfinput)
endif(LIBUSB_FOUND AND LIBBLADERF_FOUND)
find_package(LibAIRSPY)
if(LIBUSB_FOUND AND LIBAIRSPY_FOUND)
add_subdirectory(airspy)
@ -42,11 +23,52 @@ if(LIBUSB_FOUND AND LIBAIRSPYHF_FOUND)
add_subdirectory(airspyhf)
endif(LIBUSB_FOUND AND LIBAIRSPYHF_FOUND)
find_package(LibBLADERF)
if(LIBUSB_FOUND AND LIBBLADERF_FOUND)
add_subdirectory(bladerfinput)
endif(LIBUSB_FOUND AND LIBBLADERF_FOUND)
if(LIBUSB_FOUND AND UNIX)
FIND_PATH (ASOUNDH alsa/asoundlib.h)
FIND_LIBRARY (LIBASOUND asound)
endif()
if(LIBASOUND AND ASOUNDH)
add_subdirectory(fcdpro)
add_subdirectory(fcdproplus)
endif()
find_package(LibHACKRF)
if(LIBUSB_FOUND AND LIBHACKRF_FOUND)
add_subdirectory(hackrfinput)
endif(LIBUSB_FOUND AND LIBHACKRF_FOUND)
find_package(LimeSuite)
if(LIBUSB_FOUND AND LIMESUITE_FOUND)
add_subdirectory(limesdrinput)
endif(LIBUSB_FOUND AND LIMESUITE_FOUND)
find_package(LibPerseus)
if(LIBUSB_FOUND AND RX_SAMPLE_24BIT AND LIBPERSEUS_FOUND)
message(STATUS "Add Persesus plugin")
add_subdirectory(perseus)
endif(LIBUSB_FOUND AND RX_SAMPLE_24BIT AND LIBPERSEUS_FOUND)
find_package(LibIIO)
if(LIBUSB_FOUND AND LIBIIO_FOUND)
add_subdirectory(plutosdrinput)
endif(LIBUSB_FOUND AND LIBIIO_FOUND)
find_package(LibRTLSDR)
if(LIBUSB_FOUND AND LIBRTLSDR_FOUND)
add_subdirectory(rtlsdr)
endif(LIBUSB_FOUND AND LIBRTLSDR_FOUND)
find_package(CM256cc)
find_package(LibNANOMSG)
if(CM256CC_FOUND AND LIBNANOMSG_FOUND)
add_subdirectory(sdrdaemonsource)
endif(CM256CC_FOUND AND LIBNANOMSG_FOUND)
find_package(LibMiriSDR)
if(LIBUSB_FOUND AND LIBMIRISDR_FOUND)
add_subdirectory(sdrplay)
@ -55,41 +77,19 @@ else(LIBUSB_FOUND AND LIBMIRISDR_FOUND)
message(STATUS "LibMiriSDR NOT found")
endif(LIBUSB_FOUND AND LIBMIRISDR_FOUND)
find_package(LimeSuite)
if(LIBUSB_FOUND AND LIMESUITE_FOUND)
add_subdirectory(limesdrinput)
endif(LIBUSB_FOUND AND LIMESUITE_FOUND)
find_package(LibIIO)
if(LIBUSB_FOUND AND LIBIIO_FOUND)
add_subdirectory(plutosdrinput)
endif(LIBUSB_FOUND AND LIBIIO_FOUND)
find_package(CM256cc)
find_package(LibNANOMSG)
if(CM256CC_FOUND AND LIBNANOMSG_FOUND)
add_subdirectory(sdrdaemonsource)
endif(CM256CC_FOUND AND LIBNANOMSG_FOUND)
find_package(LibPerseus)
if(LIBUSB_FOUND AND RX_SAMPLE_24BIT AND LIBPERSEUS_FOUND)
message(STATUS "Add Persesus plugin")
add_subdirectory(perseus)
endif(LIBUSB_FOUND AND RX_SAMPLE_24BIT AND LIBPERSEUS_FOUND)
if (BUILD_DEBIAN)
add_subdirectory(airspy)
add_subdirectory(airspyhf)
add_subdirectory(bladerfinput)
add_subdirectory(hackrfinput)
add_subdirectory(limesdrinput)
add_subdirectory(perseus)
add_subdirectory(plutosdrinput)
add_subdirectory(rtlsdr)
if (LIBNANOMSG_FOUND)
add_subdirectory(sdrdaemonsource)
endif (LIBNANOMSG_FOUND)
add_subdirectory(airspy)
add_subdirectory(airspyhf)
add_subdirectory(hackrfinput)
add_subdirectory(rtlsdr)
add_subdirectory(bladerfinput)
add_subdirectory(sdrplay)
add_subdirectory(limesdrinput)
add_subdirectory(perseus)
add_subdirectory(plutosdrinput)
endif (BUILD_DEBIAN)
add_subdirectory(filesource)

View File

@ -31,7 +31,6 @@
#include <device/devicesourceapi.h>
#include "fcdprogui.h"
#include "fcdprothread.h"
#include "fcdtraits.h"
#include "fcdproconst.h"

View File

@ -15,14 +15,17 @@
///////////////////////////////////////////////////////////////////////////////////
#include <QtPlugin>
#include <QAction>
#include "plugin/pluginapi.h"
#include "util/simpleserializer.h"
#include "fcdproplugin.h"
#include <device/devicesourceapi.h>
#ifdef SERVER_MODE
#include "fcdproinput.h"
#else
#include "fcdprogui.h"
#endif
#include "fcdtraits.h"
const PluginDescriptor FCDProPlugin::m_pluginDescriptor = {
@ -78,6 +81,15 @@ PluginInterface::SamplingDevices FCDProPlugin::enumSampleSources()
return result;
}
#ifdef SERVER_MODE
PluginInstanceGUI* FCDProPlugin::createSampleSourcePluginInstanceGUI(
const QString& sourceId __attribute__((unused)),
QWidget **widget __attribute__((unused)),
DeviceUISet *deviceUISet __attribute__((unused)))
{
return 0;
}
#else
PluginInstanceGUI* FCDProPlugin::createSampleSourcePluginInstanceGUI(
const QString& sourceId,
QWidget **widget,
@ -94,6 +106,7 @@ PluginInstanceGUI* FCDProPlugin::createSampleSourcePluginInstanceGUI(
return 0;
}
}
#endif
DeviceSampleSource *FCDProPlugin::createSampleSourcePluginInstanceInput(const QString& sourceId, DeviceSourceAPI *deviceAPI)
{

View File

@ -28,6 +28,15 @@ if(LIBUSB_FOUND AND LIBBLADERF_FOUND)
add_subdirectory(bladerfinput)
endif(LIBUSB_FOUND AND LIBBLADERF_FOUND)
if(LIBUSB_FOUND AND UNIX)
FIND_PATH (ASOUNDH alsa/asoundlib.h)
FIND_LIBRARY (LIBASOUND asound)
endif()
if(LIBASOUND AND ASOUNDH)
add_subdirectory(fcdpro)
# add_subdirectory(fcdproplus)
endif()
find_package(LibHACKRF)
if(LIBUSB_FOUND AND LIBHACKRF_FOUND)
add_subdirectory(hackrfinput)

View File

@ -0,0 +1,48 @@
project(fcdpro)
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11")
set(PLUGIN_PREFIX "../../../plugins/samplesource/fcdpro")
set(fcdpro_SOURCES
${PLUGIN_PREFIX}/fcdproinput.cpp
${PLUGIN_PREFIX}/fcdproplugin.cpp
${PLUGIN_PREFIX}/fcdprosettings.cpp
${PLUGIN_PREFIX}/fcdprothread.cpp
)
set(fcdpro_HEADERS
${PLUGIN_PREFIX}/fcdproinput.h
${PLUGIN_PREFIX}/fcdproplugin.h
${PLUGIN_PREFIX}/fcdprosettings.h
${PLUGIN_PREFIX}/fcdprothread.h
)
include_directories(
.
${CMAKE_CURRENT_BINARY_DIR}
${CMAKE_SOURCE_DIR}/swagger/sdrangel/code/qt5/client
${CMAKE_SOURCE_DIR}/fcdhid
${CMAKE_SOURCE_DIR}/fcdlib
)
add_definitions(${QT_DEFINITIONS})
add_definitions(-DQT_PLUGIN)
add_definitions(-DQT_SHARED)
add_library(inputfcdprosrv SHARED
${fcdpro_SOURCES}
${fcdpro_HEADERS_MOC}
)
target_link_libraries(inputfcdprosrv
${QT_LIBRARIES}
asound
fcdhid
fcdlib
sdrbase
swagger
)
qt5_use_modules(inputfcdprosrv Core)
install(TARGETS inputfcdprosrv DESTINATION lib/pluginssrv/samplesource)