Server: added SDRdaemon source plugin

This commit is contained in:
f4exb 2018-05-29 20:46:52 +02:00
parent 3e31a8b23b
commit ae4ce39126
4 changed files with 104 additions and 4 deletions

View File

@ -39,7 +39,6 @@
#include <device/devicesourceapi.h>
#include <dsp/filerecord.h>
#include "sdrdaemonsourcegui.h"
#include "sdrdaemonsourceinput.h"
#include "sdrdaemonsourceudphandler.h"

View File

@ -15,13 +15,16 @@
///////////////////////////////////////////////////////////////////////////////////
#include <QtPlugin>
#include <QAction>
#include "plugin/pluginapi.h"
#include "util/simpleserializer.h"
#include "device/devicesourceapi.h"
#include <device/devicesourceapi.h>
#ifdef SERVER_MODE
#include "sdrdaemonsourceinput.h"
#else
#include "sdrdaemonsourcegui.h"
#endif
#include "sdrdaemonsourceplugin.h"
const PluginDescriptor SDRdaemonSourcePlugin::m_pluginDescriptor = {
@ -69,6 +72,15 @@ PluginInterface::SamplingDevices SDRdaemonSourcePlugin::enumSampleSources()
return result;
}
#ifdef SERVER_MODE
PluginInstanceGUI* SDRdaemonSourcePlugin::createSampleSourcePluginInstanceGUI(
const QString& sourceId __attribute((unused)),
QWidget **widget __attribute((unused)),
DeviceUISet *deviceUISet __attribute((unused)))
{
return 0;
}
#else
PluginInstanceGUI* SDRdaemonSourcePlugin::createSampleSourcePluginInstanceGUI(
const QString& sourceId,
QWidget **widget,
@ -85,6 +97,7 @@ PluginInstanceGUI* SDRdaemonSourcePlugin::createSampleSourcePluginInstanceGUI(
return 0;
}
}
#endif
DeviceSampleSource *SDRdaemonSourcePlugin::createSampleSourcePluginInstanceInput(const QString& sourceId, DeviceSourceAPI *deviceAPI)
{

View File

@ -63,6 +63,12 @@ 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)
if (BUILD_DEBIAN)
add_subdirectory(airspy)
add_subdirectory(airspyhf)
@ -71,6 +77,9 @@ if (BUILD_DEBIAN)
add_subdirectory(perseus)
add_subdirectory(plutosdrinput)
add_subdirectory(rtlsdr)
if (LIBNANOMSG_FOUND)
add_subdirectory(sdrdaemonsource)
endif (LIBNANOMSG_FOUND)
endif (BUILD_DEBIAN)
add_subdirectory(filesource)

View File

@ -0,0 +1,79 @@
project(sdrdaemonsource)
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11")
set(PLUGIN_PREFIX "../../../plugins/samplesource/sdrdaemonsource")
if (HAS_SSSE3)
message(STATUS "SDRdaemonSource: use SSSE3 SIMD" )
elseif (HAS_NEON)
message(STATUS "SDRdaemonSource: use Neon SIMD" )
else()
message(STATUS "SDRdaemonSource: Unsupported architecture")
return()
endif()
set(sdrdaemonsource_SOURCES
${PLUGIN_PREFIX}/sdrdaemonsourcebuffer.cpp
${PLUGIN_PREFIX}/sdrdaemonsourceinput.cpp
${PLUGIN_PREFIX}/sdrdaemonsourcesettings.cpp
${PLUGIN_PREFIX}/sdrdaemonsourceplugin.cpp
${PLUGIN_PREFIX}/sdrdaemonsourceudphandler.cpp
)
set(sdrdaemonsource_HEADERS
${PLUGIN_PREFIX}/sdrdaemonsourcebuffer.h
${PLUGIN_PREFIX}/sdrdaemonsourceinput.h
${PLUGIN_PREFIX}/sdrdaemonsourcesettings.h
${PLUGIN_PREFIX}/sdrdaemonsourceplugin.h
${PLUGIN_PREFIX}/sdrdaemonsourceudphandler.h
)
add_definitions(${QT_DEFINITIONS})
add_definitions(-DQT_PLUGIN)
add_definitions(-DQT_SHARED)
add_library(inputsdrdaemonsourcesrv SHARED
${sdrdaemonsource_SOURCES}
${sdrdaemonsource_HEADERS_MOC}
)
if (BUILD_DEBIAN)
target_include_directories(inputsdrdaemonsourcesrv PUBLIC
.
${CMAKE_CURRENT_BINARY_DIR}
${CMAKE_SOURCE_DIR}/swagger/sdrangel/code/qt5/client
${LIBCM256CCSRC}
${LIBNANOMSG_INCLUDE_DIR}
)
else (BUILD_DEBIAN)
target_include_directories(inputsdrdaemonsourcesrv PUBLIC
.
${CMAKE_CURRENT_BINARY_DIR}
${CMAKE_SOURCE_DIR}/swagger/sdrangel/code/qt5/client
${CM256CC_INCLUDE_DIR}
${LIBNANOMSG_INCLUDE_DIR}
)
endif (BUILD_DEBIAN)
if (BUILD_DEBIAN)
target_link_libraries(inputsdrdaemonsourcesrv
${QT_LIBRARIES}
cm256cc
${LIBNANOMSG_LIBRARIES}
sdrbase
swagger
)
else (BUILD_DEBIAN)
target_link_libraries(inputsdrdaemonsourcesrv
${QT_LIBRARIES}
${CM256CC_LIBRARIES}
${LIBNANOMSG_LIBRARIES}
sdrbase
swagger
)
endif (BUILD_DEBIAN)
qt5_use_modules(inputsdrdaemonsourcesrv Core)
install(TARGETS inputsdrdaemonsourcesrv DESTINATION lib/pluginssrv/samplesource)