diff options
author | Romain Forlot <romain.forlot@iot.bzh> | 2019-11-26 16:19:04 +0100 |
---|---|---|
committer | Romain Forlot <romain.forlot@iot.bzh> | 2019-11-28 16:11:47 +0100 |
commit | dbc9c9912317185356f0333bd9bb546d4d4f38c7 (patch) | |
tree | d7cfeafbcd8769fb5e0455e9b5ac205bb52d7fe4 /low-can-binding/can/can-encoder.hpp | |
parent | 1ebfa6dc2137bf6cbc487b6efc94ce976cf0ed27 (diff) |
Update function to encode and decode message
This commit update encoder and decoder files.
This new implementation allows to manage larger signals.
Bug-AGL : SPEC-2779
Bug-AGL: SPEC-2976
Change-Id: Iec6dfbd279863aa8b8e8f9e3ce951f0c8aa80dae
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/can-encoder.hpp')
-rw-r--r-- | low-can-binding/can/can-encoder.hpp | 9 |
1 files changed, 4 insertions, 5 deletions
diff --git a/low-can-binding/can/can-encoder.hpp b/low-can-binding/can/can-encoder.hpp index c37521f4..d4505f04 100644 --- a/low-can-binding/can/can-encoder.hpp +++ b/low-can-binding/can/can-encoder.hpp @@ -28,13 +28,12 @@ class encoder_t { public: - static const canfd_frame build_frame(const std::shared_ptr<signal_t>& signal, uint64_t value); - static message_t* build_message(const std::shared_ptr<signal_t>& signal, uint64_t value); - static message_t* build_one_frame_message(const std::shared_ptr<signal_t>& signal, uint64_t value, message_t *message); - static message_t* build_multi_frame_message(const std::shared_ptr<signal_t>& signal, uint64_t value, message_t *message); + static message_t* build_message(const std::shared_ptr<signal_t>& signal, uint64_t value, bool factor=true, bool offset=true); + static message_t* build_frame(const std::shared_ptr<signal_t>& signal, uint64_t value, message_t *message, bool factor=true, bool offset=true); static uint64_t encode_state(const signal_t& signal, const std::string& value, bool* send); static uint64_t encode_boolean(const signal_t& signal, bool value, bool* send); static uint64_t encode_number(const signal_t& signal, float value, bool* send); + static void encode_data(std::shared_ptr<signal_t> sig, std::vector<uint8_t> &data, bool filter=false, bool factor=true, bool offset=true); static uint64_t encode_DynamicField(signal_t& signal, const openxc_DynamicField& field, bool* send); -}; +};
\ No newline at end of file |