diff options
Diffstat (limited to 'signal-composer')
-rw-r--r-- | signal-composer/CMakeLists.txt | 19 | ||||
-rw-r--r-- | signal-composer/qtappfw-signal-composer.pc.in | 12 | ||||
-rw-r--r-- | signal-composer/signalcomposer.cpp | 102 | ||||
-rw-r--r-- | signal-composer/signalcomposer.h | 60 |
4 files changed, 0 insertions, 193 deletions
diff --git a/signal-composer/CMakeLists.txt b/signal-composer/CMakeLists.txt deleted file mode 100644 index e8c51e3..0000000 --- a/signal-composer/CMakeLists.txt +++ /dev/null @@ -1,19 +0,0 @@ - -CONFIGURE_FILE("qtappfw-signal-composer.pc.in" "qtappfw-signal-composer.pc" @ONLY) -install(FILES ${CMAKE_CURRENT_BINARY_DIR}/qtappfw-signal-composer.pc - DESTINATION ${CMAKE_INSTALL_PREFIX}/lib/pkgconfig) - -add_library(qtappfw-signal-composer SHARED signalcomposer.cpp) - -target_include_directories(qtappfw-signal-composer PUBLIC "${CMAKE_CURRENT_SOURCE_DIR}") -target_include_directories(qtappfw-signal-composer PUBLIC "${CMAKE_INSTALL_INCLUDEDIR}") - -target_link_libraries(qtappfw-signal-composer qtappfw-core) -set_target_properties(qtappfw-signal-composer PROPERTIES - VERSION ${PROJECT_VERSION} - SOVERSION 1 - PUBLIC_HEADER signalcomposer.h) - -install(TARGETS qtappfw-signal-composer - LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR} - PUBLIC_HEADER DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/qtappfw-signal-composer) diff --git a/signal-composer/qtappfw-signal-composer.pc.in b/signal-composer/qtappfw-signal-composer.pc.in deleted file mode 100644 index f00ba19..0000000 --- a/signal-composer/qtappfw-signal-composer.pc.in +++ /dev/null @@ -1,12 +0,0 @@ -prefix=@DEST_DIR@ -exec_prefix=${prefix} -libdir=${prefix}/lib -includedir=${prefix}/include - -Name: qtappfw-signal-composer -Description: Library wrapping AGL AppFW signal composer data in Qt objects -Version: 1.0.0 - -Requires: Qt5Qml -Libs: -L${libdir} -lqtappfw-signal-composer -Cflags: -I${includedir}/qtappfw-signal-composer diff --git a/signal-composer/signalcomposer.cpp b/signal-composer/signalcomposer.cpp deleted file mode 100644 index d10bcc1..0000000 --- a/signal-composer/signalcomposer.cpp +++ /dev/null @@ -1,102 +0,0 @@ -/* - * Copyright (C) 2018-2020 Konsulko Group - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -#include <QDebug> - -#include "callmessage.h" -#include "eventmessage.h" -#include "messagefactory.h" -#include "messageengine.h" -#include "messageenginefactory.h" -#include "signalcomposer.h" - - -SignalComposer::SignalComposer (QUrl &url, QObject * parent) : - QObject(parent) -{ - m_mloop = MessageEngineFactory::getInstance().getMessageEngine(url); - QObject::connect(m_mloop.get(), &MessageEngine::connected, this, &SignalComposer::onConnected); - QObject::connect(m_mloop.get(), &MessageEngine::disconnected, this, &SignalComposer::onDisconnected); - QObject::connect(m_mloop.get(), &MessageEngine::messageReceived, this, &SignalComposer::onMessageReceived); -} - -SignalComposer::~SignalComposer() -{ -} - -void SignalComposer::onConnected() -{ - QStringListIterator eventIterator(events); - - while (eventIterator.hasNext()) { - std::unique_ptr<Message> msg = MessageFactory::getInstance().createOutboundMessage(MessageId::Call); - if (!msg) - return; - - CallMessage* tmsg = static_cast<CallMessage*>(msg.get()); - QJsonObject parameter; - parameter.insert("signal", eventIterator.next()); - tmsg->createRequest("signal-composer", "subscribe", parameter); - m_mloop->sendMessage(std::move(msg)); - } -} - -void SignalComposer::onDisconnected() -{ - QStringListIterator eventIterator(events); - - while (eventIterator.hasNext()) { - std::unique_ptr<Message> msg = MessageFactory::getInstance().createOutboundMessage(MessageId::Call); - if (!msg) - return; - - CallMessage* tmsg = static_cast<CallMessage*>(msg.get()); - QJsonObject parameter; - parameter.insert("signal", eventIterator.next()); - tmsg->createRequest("signal-composer", "unsubscribe", parameter); - m_mloop->sendMessage(std::move(msg)); - } -} - -void SignalComposer::onMessageReceived(std::shared_ptr<Message> msg) -{ - if (!msg) - return; - - if (msg->isEvent()) { - std::shared_ptr<EventMessage> emsg = std::static_pointer_cast<EventMessage>(msg); - if (emsg->eventApi() != "signal-composer") - return; - - QJsonObject data = emsg->eventData(); - QString uid = data.value("uid").toString(); - QVariant v = data.value("value").toVariant(); - QString value; - if(v.canConvert(QMetaType::QString)) - value = v.toString(); - else - qWarning() << "Unconvertible value type for uid " << uid; - QString units = data.value("unit").toString(); - v = data.value("timestamp").toVariant(); - quint64 timestamp = 0; - if(v.canConvert(QMetaType::ULongLong)) - timestamp = v.toULongLong(); - else - qWarning() << "Unconvertible timestamp type for uid " << uid; - - emit signalEvent(uid, value, units, timestamp); - } -} diff --git a/signal-composer/signalcomposer.h b/signal-composer/signalcomposer.h deleted file mode 100644 index a18f5a8..0000000 --- a/signal-composer/signalcomposer.h +++ /dev/null @@ -1,60 +0,0 @@ -/* - * Copyright (C) 2019, 2020 Konsulko Group - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -#ifndef SIGNALCOMPOSER_H -#define SIGNALCOMPOSER_H - -#include <memory> -#include <QObject> -#include <QJsonArray> - -class MessageEngine; -class Message; - -class SignalComposer : public QObject -{ - Q_OBJECT - - public: - explicit SignalComposer(QUrl &url, QObject * parent = Q_NULLPTR); - virtual ~SignalComposer(); - - signals: - void signalEvent(QString uid, QString value, QString units, quint64 timestamp); - - private: - std::shared_ptr<MessageEngine> m_mloop; - - void onConnected(); - void onDisconnected(); - void onMessageReceived(std::shared_ptr<Message>); - - const QStringList events { - "event.vehicle.speed", - "event.engine.speed", - "event.cruise.enable", - "event.cruise.resume", - "event.cruise.set", - "event.cruise.cancel", - "event.cruise.limit", - "event.cruise.distance", - "event.lane_departure_warning.enable", - "event.info", - "event.horn" - }; -}; - -#endif // SIGNALCOMPOSER_H |