can: Remove extended flags
authorRomain Forlot <romain.forlot@iot.bzh>
Mon, 4 Nov 2019 16:17:27 +0000 (17:17 +0100)
committerRomain Forlot <romain.forlot@iot.bzh>
Mon, 4 Nov 2019 16:17:27 +0000 (17:17 +0100)
It doesn't matters to know whether or not a can signal is
using standard or extended CAN ID because this could be
retrieved using bit mask on the CAN ID when receiving and
sending.

Change-Id: Id96c576045bf087df51beb011742ad631336f814
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
low-can-binding/can/message/can-message.cpp
low-can-binding/can/message/message.hpp
low-can-binding/diagnostic/diagnostic-manager.cpp

index b274206..1f73c27 100644 (file)
@@ -114,12 +114,10 @@ std::shared_ptr<can_message_t> can_message_t::convert_from_frame(const struct ca
        }
        else if (frame.can_id & CAN_EFF_FLAG)
        {
-               flags = flags|EXTENDED_ID;
                id = frame.can_id & CAN_EFF_MASK;
        }
        else
        {
-               flags = flags|STANDARD_ID;
                id = frame.can_id & CAN_SFF_MASK;
        }
 
index db06eb3..1a31a8d 100644 (file)
  */
 
 #define INVALID_FLAG 0x0001
-#define STANDARD_ID 0x0002
-#define EXTENDED_ID 0x0004
-#define BCM_PROTOCOL 0x0008
-#define J1939_PROTOCOL 0x0010
-#define J1939_ADDR_CLAIM_PROTOCOL 0x0020
-#define ISOTP_PROTOCOL 0x0040
-#define ISOTP_SEND 0x0080
-#define ISOTP_RECEIVE 0x0100
-#define FD_FRAME 0x0800
+#define BCM_PROTOCOL 0x0002
+#define J1939_PROTOCOL 0x0004
+#define J1939_ADDR_CLAIM_PROTOCOL 0x0008
+#define ISOTP_PROTOCOL 0x0010
+#define ISOTP_SEND 0x0020
+#define ISOTP_RECEIVE 0x0040
+#define FD_FRAME 0x0080
 
 /// @class message_t
 ///
@@ -55,7 +53,7 @@ class message_t {
 protected:
        uint32_t maxdlen_; ///< maxdlen_ - Max data length deduce from number of bytes read from the socket.*/
        uint32_t length_; ///< length_ - the length of the data array. */
-       uint32_t flags_; ///< format_ - the format mask of the message*/
+       uint32_t flags_; ///< format_ - the format mask of the message that control which socketcan will used*/
        std::vector<uint8_t> data_; ///< data_ - The message's data field with a size of 8 which is the standard about CAN bus messages.*/
        uint64_t timestamp_; ///< timestamp_ - timestamp of the received message*/
        int sub_id_; ///< sub_id_ - Subscription index. */
index 5242c5b..2b7fa9b 100644 (file)
@@ -526,7 +526,7 @@ openxc_VehicleMessage diagnostic_manager_t::find_and_decode_adr(std::shared_ptr<
 /// @return True if the active diagnostic request match the response.
 bool diagnostic_manager_t::is_diagnostic_response(std::shared_ptr<message_t> m)
 {
-       if(m->get_flags()&STANDARD_ID || m->get_flags()&EXTENDED_ID)
+       if(m->get_id() & CAN_SFF_MASK || m->get_id() & CAN_EFF_MASK)
        {
                if (m->get_id() >= 0x7e8 && m->get_id() <= 0x7ef)
                                return true;