From 014ba2dd29eaadb4d61948ca417c25112f76ee0e Mon Sep 17 00:00:00 2001 From: Romain Forlot Date: Tue, 13 Jun 2017 17:20:05 +0200 Subject: Import CAN generator from low-level-can-service Also use the app-templates CMake helpers. Change-Id: I034e5efa9baa0f686a081f60df5c3588e4b3bd51 Signed-off-by: Romain Forlot --- src/openxc/can_message.hpp | 49 ++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 49 insertions(+) create mode 100755 src/openxc/can_message.hpp (limited to 'src/openxc/can_message.hpp') diff --git a/src/openxc/can_message.hpp b/src/openxc/can_message.hpp new file mode 100755 index 0000000..3f7b018 --- /dev/null +++ b/src/openxc/can_message.hpp @@ -0,0 +1,49 @@ +#pragma once + +#include +#include +#include + +#include "signal.hpp" + +namespace openxc +{ + class can_message + { + private: + std::string id_; + std::string bus_; + bool bit_numbering_inverted_; + std::vector signals_; + std::string name_; + std::vector handlers_; + bool enabled_; + float max_frequency_; + float max_signal_frequency_; + bool force_send_changed_; + bool force_send_changed_signals_; + + public: + std::string id() const; + void id(const std::string& id); + std::string bus() const; + bool bit_numbering_inverted() const; + const std::vector& signals() const; + std::string name() const; + std::vector handlers() const; + bool enabled() const; + float max_frequency() const; + float max_signal_frequency() const; + bool force_send_changed() const; + bool force_send_changed_signals() const; + + void from_json(const nlohmann::json& j); + nlohmann::json to_json() const; + + std::uint32_t get_signals_count() const; + }; + + void to_json(nlohmann::json& j, const can_message& p); + void from_json(const nlohmann::json& j, can_message& p); + void from_json(const nlohmann::json& j, can_message& p, const std::string& id); +} -- cgit 1.2.3-korg