diff options
author | Romain Forlot <romain.forlot@iot.bzh> | 2019-11-26 16:19:35 +0100 |
---|---|---|
committer | Romain Forlot <romain.forlot@iot.bzh> | 2019-11-28 16:11:47 +0100 |
commit | fee3b49099fb39731e15f9e26ad5a873bc109f59 (patch) | |
tree | f925b8b2a744d9e94cedbd460e47ba533717c36c /low-can-binding/can/message-definition.cpp | |
parent | a8d5f5d3018da0b051dad4c143c6257b2fba9fac (diff) |
Replace all enum types with masks
This commit allows to change all enum types by masks.
Now to implement new protocol you don't need to add
more attribute in class. All can be contained in
the flags field.
Bug-AGL : SPEC-2779
Bug-AGL: SPEC-2976
Change-Id: I814d0052139be5d5efefc9ff1b4b558f46b85e90
Signed-off-by: Arthur Guyader <arthur.guyader@iot.bzh>
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
Diffstat (limited to 'low-can-binding/can/message-definition.cpp')
-rw-r--r-- | low-can-binding/can/message-definition.cpp | 27 |
1 files changed, 8 insertions, 19 deletions
diff --git a/low-can-binding/can/message-definition.cpp b/low-can-binding/can/message-definition.cpp index 064b2c17..407ad750 100644 --- a/low-can-binding/can/message-definition.cpp +++ b/low-can-binding/can/message-definition.cpp @@ -22,16 +22,14 @@ message_definition_t::message_definition_t( const std::string bus, uint32_t id, - bool is_fd, - message_format_t format, + uint32_t flags, frequency_clock_t frequency_clock, bool force_send_changed, const std::vector<std::shared_ptr<signal_t> >& signals) : parent_{nullptr}, bus_{bus}, id_{id}, - is_fd_(is_fd), - format_{format}, + flags_{flags}, frequency_clock_{frequency_clock}, force_send_changed_{force_send_changed}, last_value_{CAN_MESSAGE_SIZE}, @@ -42,8 +40,7 @@ message_definition_t::message_definition_t(const std::string bus, uint32_t id, const std::string name, uint32_t length, - bool is_fd, - message_format_t format, + uint32_t flags, frequency_clock_t frequency_clock, bool force_send_changed, const std::vector<std::shared_ptr<signal_t> >& signals) @@ -52,8 +49,7 @@ message_definition_t::message_definition_t(const std::string bus, id_{id}, name_{name}, length_{length}, - is_fd_(is_fd), - format_{format}, + flags_{flags}, frequency_clock_{frequency_clock}, force_send_changed_{force_send_changed}, last_value_{CAN_MESSAGE_SIZE}, @@ -73,19 +69,12 @@ uint32_t message_definition_t::get_id() const bool message_definition_t::is_fd() const { - return is_fd_; + return (flags_&FD_FRAME); } bool message_definition_t::is_j1939() const { - if(format_ == message_format_t::J1939) - { - return true; - } - else - { - return false; - } + return (flags_&J1939_PROTOCOL); } std::vector<std::shared_ptr<signal_t>>& message_definition_t::get_signals() @@ -108,7 +97,7 @@ uint32_t message_definition_t::get_length() const return length_; } -message_format_t message_definition_t::get_format() const +uint32_t message_definition_t::get_flags() const { - return format_; + return flags_; }
\ No newline at end of file |