From dfc1d3c08413d713ab31302c825354f17594c08d Mon Sep 17 00:00:00 2001 From: George Beckstein Date: Sun, 16 May 2021 14:43:08 -0400 Subject: [PATCH] Add CANMessage deep comparison operators --- .../include/drivers/interfaces/InterfaceCAN.h | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) diff --git a/drivers/include/drivers/interfaces/InterfaceCAN.h b/drivers/include/drivers/interfaces/InterfaceCAN.h index 54cf0d2c9638..89c06c8ad828 100644 --- a/drivers/include/drivers/interfaces/InterfaceCAN.h +++ b/drivers/include/drivers/interfaces/InterfaceCAN.h @@ -109,6 +109,25 @@ class CANMessage : public CAN_Message { id = _id; memset(data, 0, 8); } + + bool CANMessage::operator ==(const CANMessage &b) const { + if(id != b.id) + return false; + if(len != b.len) + return false; + if(format != b.format) + return false; + if(type != b.type) + return false; + if(memcmp(data, b.data, len) != 0) + return false; + + return true; + } + + bool CANMessage::operator !=(const CANMessage &b) const { + return !(*this == b); + } }; /** @}*/