diff options
author | Romain Forlot <romain.forlot@iot.bzh> | 2017-05-31 12:09:27 +0200 |
---|---|---|
committer | Romain Forlot <romain.forlot@iot.bzh> | 2017-06-01 18:26:18 +0200 |
commit | a3ea0574a55751d4df1d784d89bccca5ac76cfd6 (patch) | |
tree | ae69e13fa82e487181a7d8662456f0a22c120954 /CAN-binder/low-can-binding/utils | |
parent | 862a59747245529ae2b6039a00b639e747069aae (diff) |
Consider using char* as well as string.
Change-Id: I08aba32f1273c7be305ceacf121e42fddfca173e
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
Diffstat (limited to 'CAN-binder/low-can-binding/utils')
-rw-r--r-- | CAN-binder/low-can-binding/utils/openxc-utils.cpp | 25 | ||||
-rw-r--r-- | CAN-binder/low-can-binding/utils/openxc-utils.hpp | 1 |
2 files changed, 25 insertions, 1 deletions
diff --git a/CAN-binder/low-can-binding/utils/openxc-utils.cpp b/CAN-binder/low-can-binding/utils/openxc-utils.cpp index 27c2509c..2449c47a 100644 --- a/CAN-binder/low-can-binding/utils/openxc-utils.cpp +++ b/CAN-binder/low-can-binding/utils/openxc-utils.cpp @@ -87,9 +87,10 @@ const openxc_VehicleMessage build_VehicleMessage(active_diagnostic_request_t* re return message; } /// -/// @brief Build a specific VehicleMessage containing a SimpleMessage. +/// @brief Build a specific VehicleMessage containing a SimpleMessage with associated timestamp /// /// @param[in] message - simple message to include into openxc_VehicleMessage +/// @param[in] timestamp - timestamp from ioctl when reading the socket /// /// @return a vehicle message including simple message that will be convert into /// a JSON object before being pushed to the subscribers @@ -188,6 +189,28 @@ const openxc_SimpleMessage build_SimpleMessage(const std::string& name, const op /// /// @return openxc_DynamicField initialized with a string value. /// +const openxc_DynamicField build_DynamicField(const char* value) +{ + openxc_DynamicField d; + d.has_type = true; + d.type = openxc_DynamicField_Type_STRING; + + d.has_string_value = true; + d.has_numeric_value = false; + d.has_boolean_value = false; + ::strncpy(d.string_value, value, 100); + + return d; +} + +/// +/// @brief Build an openxc_DynamicField with a string value +/// +/// @param[in] value - const string reference value to assign to builded +/// openxc_DynamicField. +/// +/// @return openxc_DynamicField initialized with a string value. +/// const openxc_DynamicField build_DynamicField(const std::string& value) { openxc_DynamicField d; diff --git a/CAN-binder/low-can-binding/utils/openxc-utils.hpp b/CAN-binder/low-can-binding/utils/openxc-utils.hpp index edfc497d..34ac3eb3 100644 --- a/CAN-binder/low-can-binding/utils/openxc-utils.hpp +++ b/CAN-binder/low-can-binding/utils/openxc-utils.hpp @@ -32,6 +32,7 @@ openxc_VehicleMessage build_VehicleMessage(); bool is_valid(const openxc_VehicleMessage& v); const openxc_SimpleMessage build_SimpleMessage(const std::string& name, const openxc_DynamicField& value); +const openxc_DynamicField build_DynamicField(const char* value); const openxc_DynamicField build_DynamicField(const std::string& value); const openxc_DynamicField build_DynamicField(double value); const openxc_DynamicField build_DynamicField(bool value); |