diff --git a/pluginssrv/channelrx/CMakeLists.txt b/pluginssrv/channelrx/CMakeLists.txt index 8864a4058..f0b816890 100644 --- a/pluginssrv/channelrx/CMakeLists.txt +++ b/pluginssrv/channelrx/CMakeLists.txt @@ -7,6 +7,11 @@ if((LIBDSDCC_FOUND AND LIBMBE_FOUND) OR BUILD_DEBIAN) add_subdirectory(demoddsd) endif() +find_package(CM256cc) +if(CM256CC_FOUND) + add_subdirectory(daemonsink) +endif(CM256CC_FOUND) + add_subdirectory(demodnfm) add_subdirectory(demodssb) add_subdirectory(demodwfm) diff --git a/pluginssrv/channelrx/daemonsink/CMakeLists.txt b/pluginssrv/channelrx/daemonsink/CMakeLists.txt new file mode 100644 index 000000000..07000cde0 --- /dev/null +++ b/pluginssrv/channelrx/daemonsink/CMakeLists.txt @@ -0,0 +1,48 @@ +project(daemonsink) + +set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11") +set(PLUGIN_PREFIX "../../../plugins/channelrx/daemonsink") + +set(daemonsink_SOURCES + ${PLUGIN_PREFIX}/daemonsink.cpp + ${PLUGIN_PREFIX}/daemonsinksettings.cpp + ${PLUGIN_PREFIX}/daemonsinkthread.cpp + ${PLUGIN_PREFIX}/daemonsinkplugin.cpp +) + +set(daemonsink_HEADERS + ${PLUGIN_PREFIX}/daemonsink.h + ${PLUGIN_PREFIX}/daemonsinksettings.h + ${PLUGIN_PREFIX}/daemonsinkthread.h + ${PLUGIN_PREFIX}/daemonsinkplugin.h +) + +include_directories( + . + ${CMAKE_CURRENT_BINARY_DIR} + ${CMAKE_SOURCE_DIR}/sdrdaemon + ${CM256CC_INCLUDE_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(daemonsinksrv SHARED + ${daemonsink_SOURCES} + ${daemonsink_HEADERS_MOC} +) + +target_link_libraries(daemonsinksrv + ${QT_LIBRARIES} + ${CM256CC_LIBRARIES} + sdrbase + sdrdaemon + swagger +) + +target_link_libraries(daemonsinksrv Qt5::Core) + +install(TARGETS daemonsinksrv DESTINATION lib/pluginssrv/channelrx) diff --git a/sdrbase/resources/webapi/doc/html2/index.html b/sdrbase/resources/webapi/doc/html2/index.html index d0824c2b9..cf816b8ca 100644 --- a/sdrbase/resources/webapi/doc/html2/index.html +++ b/sdrbase/resources/webapi/doc/html2/index.html @@ -1693,6 +1693,12 @@ margin-bottom: 20px; "txDelay" : { "type" : "integer", "description" : "Minimum delay in ms between consecutive USB blocks transmissions" + }, + "rgbColor" : { + "type" : "integer" + }, + "title" : { + "type" : "string" } }, "description" : "Daemon channel sink settings" @@ -28724,7 +28730,7 @@ except ApiException as e:
- Generated 2018-09-06T20:10:22.329+02:00 + Generated 2018-09-08T18:41:07.952+02:00
diff --git a/sdrbase/resources/webapi/doc/swagger/include/DaemonSink.yaml b/sdrbase/resources/webapi/doc/swagger/include/DaemonSink.yaml index 5e4c881d8..f381ced78 100644 --- a/sdrbase/resources/webapi/doc/swagger/include/DaemonSink.yaml +++ b/sdrbase/resources/webapi/doc/swagger/include/DaemonSink.yaml @@ -13,3 +13,7 @@ DaemonSinkSettings: txDelay: description: "Minimum delay in ms between consecutive USB blocks transmissions" type: integer + rgbColor: + type: integer + title: + type: string diff --git a/swagger/sdrangel/api/swagger/include/DaemonSink.yaml b/swagger/sdrangel/api/swagger/include/DaemonSink.yaml index 5e4c881d8..f381ced78 100644 --- a/swagger/sdrangel/api/swagger/include/DaemonSink.yaml +++ b/swagger/sdrangel/api/swagger/include/DaemonSink.yaml @@ -13,3 +13,7 @@ DaemonSinkSettings: txDelay: description: "Minimum delay in ms between consecutive USB blocks transmissions" type: integer + rgbColor: + type: integer + title: + type: string diff --git a/swagger/sdrangel/code/html2/index.html b/swagger/sdrangel/code/html2/index.html index d0824c2b9..cf816b8ca 100644 --- a/swagger/sdrangel/code/html2/index.html +++ b/swagger/sdrangel/code/html2/index.html @@ -1693,6 +1693,12 @@ margin-bottom: 20px; "txDelay" : { "type" : "integer", "description" : "Minimum delay in ms between consecutive USB blocks transmissions" + }, + "rgbColor" : { + "type" : "integer" + }, + "title" : { + "type" : "string" } }, "description" : "Daemon channel sink settings" @@ -28724,7 +28730,7 @@ except ApiException as e:
- Generated 2018-09-06T20:10:22.329+02:00 + Generated 2018-09-08T18:41:07.952+02:00
diff --git a/swagger/sdrangel/code/qt5/client/SWGDaemonSinkSettings.cpp b/swagger/sdrangel/code/qt5/client/SWGDaemonSinkSettings.cpp index 9f848ff0f..e9f21b8e3 100644 --- a/swagger/sdrangel/code/qt5/client/SWGDaemonSinkSettings.cpp +++ b/swagger/sdrangel/code/qt5/client/SWGDaemonSinkSettings.cpp @@ -36,6 +36,10 @@ SWGDaemonSinkSettings::SWGDaemonSinkSettings() { m_data_port_isSet = false; tx_delay = 0; m_tx_delay_isSet = false; + rgb_color = 0; + m_rgb_color_isSet = false; + title = nullptr; + m_title_isSet = false; } SWGDaemonSinkSettings::~SWGDaemonSinkSettings() { @@ -52,6 +56,10 @@ SWGDaemonSinkSettings::init() { m_data_port_isSet = false; tx_delay = 0; m_tx_delay_isSet = false; + rgb_color = 0; + m_rgb_color_isSet = false; + title = new QString(""); + m_title_isSet = false; } void @@ -62,6 +70,10 @@ SWGDaemonSinkSettings::cleanup() { } + + if(title != nullptr) { + delete title; + } } SWGDaemonSinkSettings* @@ -83,6 +95,10 @@ SWGDaemonSinkSettings::fromJsonObject(QJsonObject &pJson) { ::SWGSDRangel::setValue(&tx_delay, pJson["txDelay"], "qint32", ""); + ::SWGSDRangel::setValue(&rgb_color, pJson["rgbColor"], "qint32", ""); + + ::SWGSDRangel::setValue(&title, pJson["title"], "QString", "QString"); + } QString @@ -111,6 +127,12 @@ SWGDaemonSinkSettings::asJsonObject() { if(m_tx_delay_isSet){ obj->insert("txDelay", QJsonValue(tx_delay)); } + if(m_rgb_color_isSet){ + obj->insert("rgbColor", QJsonValue(rgb_color)); + } + if(title != nullptr && *title != QString("")){ + toJsonValue(QString("title"), title, obj, QString("QString")); + } return obj; } @@ -155,6 +177,26 @@ SWGDaemonSinkSettings::setTxDelay(qint32 tx_delay) { this->m_tx_delay_isSet = true; } +qint32 +SWGDaemonSinkSettings::getRgbColor() { + return rgb_color; +} +void +SWGDaemonSinkSettings::setRgbColor(qint32 rgb_color) { + this->rgb_color = rgb_color; + this->m_rgb_color_isSet = true; +} + +QString* +SWGDaemonSinkSettings::getTitle() { + return title; +} +void +SWGDaemonSinkSettings::setTitle(QString* title) { + this->title = title; + this->m_title_isSet = true; +} + bool SWGDaemonSinkSettings::isSet(){ @@ -164,6 +206,8 @@ SWGDaemonSinkSettings::isSet(){ if(data_address != nullptr && *data_address != QString("")){ isObjectUpdated = true; break;} if(m_data_port_isSet){ isObjectUpdated = true; break;} if(m_tx_delay_isSet){ isObjectUpdated = true; break;} + if(m_rgb_color_isSet){ isObjectUpdated = true; break;} + if(title != nullptr && *title != QString("")){ isObjectUpdated = true; break;} }while(false); return isObjectUpdated; } diff --git a/swagger/sdrangel/code/qt5/client/SWGDaemonSinkSettings.h b/swagger/sdrangel/code/qt5/client/SWGDaemonSinkSettings.h index 38750cee9..9af9d232c 100644 --- a/swagger/sdrangel/code/qt5/client/SWGDaemonSinkSettings.h +++ b/swagger/sdrangel/code/qt5/client/SWGDaemonSinkSettings.h @@ -54,6 +54,12 @@ public: qint32 getTxDelay(); void setTxDelay(qint32 tx_delay); + qint32 getRgbColor(); + void setRgbColor(qint32 rgb_color); + + QString* getTitle(); + void setTitle(QString* title); + virtual bool isSet() override; @@ -70,6 +76,12 @@ private: qint32 tx_delay; bool m_tx_delay_isSet; + qint32 rgb_color; + bool m_rgb_color_isSet; + + QString* title; + bool m_title_isSet; + }; }