From f2487f0b481fae4aa1561e82e8e4aa5b8d0654a0 Mon Sep 17 00:00:00 2001 From: Loïc Collignon Date: Wed, 15 Mar 2017 02:36:22 +0100 Subject: initial commit. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Change-Id: I5e639061c99b7cc6da3da06ccf19bde683a69e9f Signed-off-by: Loïc Collignon --- src/openxc/can_bus.hpp | 43 +++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 43 insertions(+) create mode 100755 src/openxc/can_bus.hpp (limited to 'src/openxc/can_bus.hpp') diff --git a/src/openxc/can_bus.hpp b/src/openxc/can_bus.hpp new file mode 100755 index 00000000..db8e0250 --- /dev/null +++ b/src/openxc/can_bus.hpp @@ -0,0 +1,43 @@ +#pragma once + +#include +#include + +namespace openxc +{ + enum class can_bus_mode + { + off, + filtered, + unfiltered + }; + + class can_bus + { + private: + std::uint32_t controller_; + std::uint32_t speed_; + can_bus_mode raw_can_mode_; + bool raw_writable_; + std::uint32_t max_message_frequency_; + bool force_send_changed_; + + public: + + std::uint32_t controller() const; + std::uint32_t speed() const; + can_bus_mode raw_can_mode() const; + bool raw_writable() const; + std::uint32_t max_message_frequency() const; + bool force_send_changed() const; + + void from_json(const nlohmann::json& j); + nlohmann::json to_json() const; + }; + + void to_json(nlohmann::json& j, const can_bus& p); + void from_json(const nlohmann::json& j, can_bus& p); + + void to_json(nlohmann::json& j, const can_bus_mode& p); + void from_json(const nlohmann::json& j, can_bus_mode& p); +} -- cgit 1.2.3-korg