From 358f683e375639b83bb45ca2fe25fbe7bde138a4 Mon Sep 17 00:00:00 2001 From: f4exb Date: Tue, 29 May 2018 11:24:20 +0200 Subject: [PATCH] Server: added UDP source plugin --- plugins/channelrx/udpsrc/udpsrc.cpp | 1 - plugins/channelrx/udpsrc/udpsrcplugin.cpp | 11 ++++++ pluginssrv/channelrx/CMakeLists.txt | 7 +++- pluginssrv/channelrx/udpsrc/CMakeLists.txt | 41 ++++++++++++++++++++++ 4 files changed, 58 insertions(+), 2 deletions(-) create mode 100644 pluginssrv/channelrx/udpsrc/CMakeLists.txt diff --git a/plugins/channelrx/udpsrc/udpsrc.cpp b/plugins/channelrx/udpsrc/udpsrc.cpp index bc6e35c2b..dc2e31df8 100644 --- a/plugins/channelrx/udpsrc/udpsrc.cpp +++ b/plugins/channelrx/udpsrc/udpsrc.cpp @@ -30,7 +30,6 @@ #include "dsp/dspcommands.h" #include "device/devicesourceapi.h" -#include "udpsrcgui.h" #include "udpsrc.h" const Real UDPSrc::m_agcTarget = 16384.0f; diff --git a/plugins/channelrx/udpsrc/udpsrcplugin.cpp b/plugins/channelrx/udpsrc/udpsrcplugin.cpp index d623733eb..46e9be6f5 100644 --- a/plugins/channelrx/udpsrc/udpsrcplugin.cpp +++ b/plugins/channelrx/udpsrc/udpsrcplugin.cpp @@ -20,7 +20,9 @@ #include #include "plugin/pluginapi.h" +#ifndef SERVER_MODE #include "udpsrcgui.h" +#endif #include "udpsrc.h" const PluginDescriptor UDPSrcPlugin::m_pluginDescriptor = { @@ -51,10 +53,19 @@ void UDPSrcPlugin::initPlugin(PluginAPI* pluginAPI) m_pluginAPI->registerRxChannel(UDPSrc::m_channelIdURI, UDPSrc::m_channelId, this); } +#ifdef SERVER_MODE +PluginInstanceGUI* UDPSrcPlugin::createRxChannelGUI( + DeviceUISet *deviceUISet __attribute__((unused)), + BasebandSampleSink *rxChannel __attribute__((unused))) +{ + return 0; +} +#else PluginInstanceGUI* UDPSrcPlugin::createRxChannelGUI(DeviceUISet *deviceUISet, BasebandSampleSink *rxChannel) { return UDPSrcGUI::create(m_pluginAPI, deviceUISet, rxChannel); } +#endif BasebandSampleSink* UDPSrcPlugin::createRxChannelBS(DeviceSourceAPI *deviceAPI) { diff --git a/pluginssrv/channelrx/CMakeLists.txt b/pluginssrv/channelrx/CMakeLists.txt index 09ac520ab..8864a4058 100644 --- a/pluginssrv/channelrx/CMakeLists.txt +++ b/pluginssrv/channelrx/CMakeLists.txt @@ -2,7 +2,12 @@ project(demod) add_subdirectory(demodam) add_subdirectory(demodbfm) -add_subdirectory(demoddsd) + +if((LIBDSDCC_FOUND AND LIBMBE_FOUND) OR BUILD_DEBIAN) + add_subdirectory(demoddsd) +endif() + add_subdirectory(demodnfm) add_subdirectory(demodssb) add_subdirectory(demodwfm) +add_subdirectory(udpsrc) diff --git a/pluginssrv/channelrx/udpsrc/CMakeLists.txt b/pluginssrv/channelrx/udpsrc/CMakeLists.txt new file mode 100644 index 000000000..0b0efbf05 --- /dev/null +++ b/pluginssrv/channelrx/udpsrc/CMakeLists.txt @@ -0,0 +1,41 @@ +project(udpsrc) + +set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11") +set(PLUGIN_PREFIX "../../../plugins/channelrx/udpsrc") + +set(udpsrc_SOURCES + ${PLUGIN_PREFIX}/udpsrc.cpp + ${PLUGIN_PREFIX}/udpsrcplugin.cpp + ${PLUGIN_PREFIX}/udpsrcsettings.cpp +) + +set(udpsrc_HEADERS + ${PLUGIN_PREFIX}/udpsrc.h + ${PLUGIN_PREFIX}/udpsrcplugin.h + ${PLUGIN_PREFIX}/udpsrcsettings.h +) + +include_directories( + . + ${CMAKE_CURRENT_BINARY_DIR} + ${CMAKE_SOURCE_DIR}/swagger/sdrangel/code/qt5/client +) + +#include(${QT_USE_FILE}) +add_definitions(${QT_DEFINITIONS}) +add_definitions(-DQT_PLUGIN) +add_definitions(-DQT_SHARED) + +add_library(demodudpsrcsrv SHARED + ${udpsrc_SOURCES} + ${udpsrc_HEADERS_MOC} +) + +target_link_libraries(demodudpsrcsrv + ${QT_LIBRARIES} + sdrbase +) + +qt5_use_modules(demodudpsrcsrv Core Network) + +install(TARGETS demodudpsrcsrv DESTINATION lib/pluginssrv/channelrx)