diff options
author | Arthur Guyader <arthur.guyader@iot.bzh> | 2019-08-26 16:48:28 +0200 |
---|---|---|
committer | Arthur Guyader <arthur.guyader@iot.bzh> | 2019-08-29 18:02:44 +0200 |
commit | 4693c2e0d9c72d98d4f94e0d756c85e0c1d6cbd5 (patch) | |
tree | 1d667c8a0e240f8a74972de8231bc7ec9c833822 /low-can-binding/can/can-encoder.hpp | |
parent | 923002874271bacdd2e8b12377e8093e628a1756 (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
Change-Id: Iec6dfbd279863aa8b8e8f9e3ce951f0c8aa80dae
Signed-off-by: Arthur Guyader <arthur.guyader@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 |