diff options
author | Romain Forlot <romain.forlot@iot.bzh> | 2017-03-09 10:42:20 +0100 |
---|---|---|
committer | Romain Forlot <romain.forlot@iot.bzh> | 2017-03-16 17:10:40 +0100 |
commit | 5ad1fd6926254db46621e252d0da6dc5ec95c390 (patch) | |
tree | 13d41b8f4e2764609f8f88761c24960718c70dda | |
parent | 3b55101caf70e27cb312f3f7235ed4b30ff6d849 (diff) |
Fix: bugs in class due to the wrapping of C socket
into a class.
Added missing include and adjust methods signature.
Change-Id: Id016b452e0b641a14482c288e4713acae941ee1d
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
-rw-r--r-- | src/can/can-bus-dev.cpp | 10 | ||||
-rw-r--r-- | src/can/can-bus-dev.hpp | 5 |
2 files changed, 8 insertions, 7 deletions
diff --git a/src/can/can-bus-dev.cpp b/src/can/can-bus-dev.cpp index f4595676..157f7de7 100644 --- a/src/can/can-bus-dev.cpp +++ b/src/can/can-bus-dev.cpp @@ -17,7 +17,7 @@ */ - +#include <unistd.h> #include <string.h> #include <net/if.h> #include <sys/ioctl.h> @@ -100,13 +100,13 @@ int can_bus_dev_t::open() } /// @brief Close the bus. -void can_bus_dev_t::close() +int can_bus_dev_t::close() { - can_socket_.close(); + return can_socket_.close(); } /// @brief Read the can socket and retrieve canfd_frame -std::pair<struct canfd_frame&, size_t> can_bus_dev_t::read() +can_message_t can_bus_dev_t::read() { ssize_t nbytes; struct canfd_frame cfd; @@ -197,7 +197,7 @@ int can_bus_dev_t::send_can_message(can_message_t& can_msg) /// @brief Send a can message from a can_message_t object. /// @param[in] can bus used to send the message /// @param[in] can_msg the can message object to send -bool can_bus_dev_t::send_can_message(const uint16_t arbitration_id, const uint8_t* data, const uint8_t size) +bool can_bus_dev_t::send_can_message(const uint32_t arbitration_id, const uint8_t* data, const uint8_t size) { ssize_t nbytes; canfd_frame f; diff --git a/src/can/can-bus-dev.hpp b/src/can/can-bus-dev.hpp index 59d999f1..744f53fa 100644 --- a/src/can/can-bus-dev.hpp +++ b/src/can/can-bus-dev.hpp @@ -18,6 +18,7 @@ #pragma once +#include <stdint.h> #include <string> #include <thread> #include <linux/can.h> @@ -54,8 +55,8 @@ public: void stop_reading(); - std::pair<struct canfd_frame&, size_t> read(); + can_message_t read(); int send_can_message(can_message_t& can_msg); - static bool send_can_message(const uint16_t arbitration_id, const uint8_t* data, const uint8_t size); + static bool send_can_message(const uint32_t arbitration_id, const uint8_t* data, const uint8_t size); }; |