summaryrefslogtreecommitdiffstats
path: root/low-can-binding/can/can-encoder.hpp
diff options
context:
space:
mode:
authorArthur Guyader <arthur.guyader@iot.bzh>2019-08-26 16:48:28 +0200
committerArthur Guyader <arthur.guyader@iot.bzh>2019-08-29 18:02:44 +0200
commit4693c2e0d9c72d98d4f94e0d756c85e0c1d6cbd5 (patch)
tree1d667c8a0e240f8a74972de8231bc7ec9c833822 /low-can-binding/can/can-encoder.hpp
parent923002874271bacdd2e8b12377e8093e628a1756 (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.hpp9
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