From d2180abe18533be7cbe68971a6767e5c2a0ecf6d Mon Sep 17 00:00:00 2001 From: Romain Forlot Date: Wed, 26 Jun 2019 10:05:42 +0200 Subject: New constructor j1939 message definition Add a new constructor for the j1939 message definition with additional name and data length member. Bug-AGL: SPEC-2386 Change-Id: Iff531f122942b6741a6a97718e639a4814b8d2bf Signed-off-by: Romain Forlot --- low-can-binding/can/can-message-definition.cpp | 22 ++++++++++++++++++++++ low-can-binding/can/can-message-definition.hpp | 11 +++++++++++ 2 files changed, 33 insertions(+) diff --git a/low-can-binding/can/can-message-definition.cpp b/low-can-binding/can/can-message-definition.cpp index 92040c31..8f2930f6 100644 --- a/low-can-binding/can/can-message-definition.cpp +++ b/low-can-binding/can/can-message-definition.cpp @@ -38,6 +38,28 @@ can_message_definition_t::can_message_definition_t( can_signals_{can_signals} {} +can_message_definition_t::can_message_definition_t(const std::string bus, + uint32_t id, + const std::string name, + uint32_t length, + bool is_fd, + can_message_format_t format, + frequency_clock_t frequency_clock, + bool force_send_changed, + const std::vector >& can_signals) + : parent_{nullptr}, + bus_{bus}, + id_{id}, + name_{name}, + length_{length}, + is_fd_(is_fd), + format_{format}, + frequency_clock_{frequency_clock}, + force_send_changed_{force_send_changed}, + last_value_{CAN_MESSAGE_SIZE}, + can_signals_{can_signals} +{} + const std::string can_message_definition_t::get_bus_device_name() const { return application_t::instance().get_can_bus_manager() diff --git a/low-can-binding/can/can-message-definition.hpp b/low-can-binding/can/can-message-definition.hpp index 689c654c..03c2fbed 100644 --- a/low-can-binding/can/can-message-definition.hpp +++ b/low-can-binding/can/can-message-definition.hpp @@ -43,6 +43,8 @@ private: can_message_set_t* parent_; ///< parent_ - Pointer to the CAN message set holding this CAN message definition */ std::string bus_; ///< bus_ - Address of CAN bus device. */ uint32_t id_; ///< id_ - The ID of the message.*/ + std::string name_; ///< name_ - J1939 PGN name + uint32_t length_; ///< length_ - Message data length in bytes. For J1939 message, this is the expected data size bool is_fd_; /*!< uses_fd_ - Flags to enable an FD CAN message communication*/ can_message_format_t format_; ///< format_ - the format of the message's ID.*/ frequency_clock_t frequency_clock_; ///< clock_ - an optional frequency clock to control the output of this @@ -67,6 +69,15 @@ public: frequency_clock_t frequency_clock, bool force_send_changed, const std::vector >& can_signals); + can_message_definition_t(const std::string bus, + uint32_t id, + std::string name, + uint32_t length, + bool is_fd, + can_message_format_t format, + frequency_clock_t frequency_clock, + bool force_send_changed, + const std::vector >& can_signals); const std::string get_bus_name() const; const std::string get_bus_device_name() const; -- cgit 1.2.3-korg