aboutsummaryrefslogtreecommitdiffstats
path: root/low-can-binding/can/message-definition.cpp
diff options
context:
space:
mode:
authorArthur Guyader <arthur.guyader@iot.bzh>2019-08-27 14:43:08 +0200
committerArthur Guyader <arthur.guyader@iot.bzh>2019-08-30 11:53:15 +0200
commit7f038fed824cac9b747c033b441263512421c6b2 (patch)
tree75253683d3d107f19492927247c760566af51677 /low-can-binding/can/message-definition.cpp
parent62083285cdaaab054e940013bc1c20cb4959327f (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 Change-Id: I814d0052139be5d5efefc9ff1b4b558f46b85e90 Signed-off-by: Arthur Guyader <arthur.guyader@iot.bzh>
Diffstat (limited to 'low-can-binding/can/message-definition.cpp')
-rw-r--r--low-can-binding/can/message-definition.cpp27
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