From 13da51fffbeed18c7eebab00060521b023e2768e Mon Sep 17 00:00:00 2001
From: Davide Mor <davide.mor@skywarder.eu>
Date: Tue, 10 Sep 2024 00:37:15 +0200
Subject: [PATCH] [CanProtocol] Added loggable CanEvent

---
 .../canbus/CanProtocol/CanProtocolTypes.h        | 16 ++++++++++++++++
 1 file changed, 16 insertions(+)

diff --git a/src/shared/drivers/canbus/CanProtocol/CanProtocolTypes.h b/src/shared/drivers/canbus/CanProtocol/CanProtocolTypes.h
index 22b12a17f..9c28d60ce 100644
--- a/src/shared/drivers/canbus/CanProtocol/CanProtocolTypes.h
+++ b/src/shared/drivers/canbus/CanProtocol/CanProtocolTypes.h
@@ -283,6 +283,22 @@ struct CanServoFeedback : ServoFeedback
     }
 };
 
+struct CanEvent
+{
+    uint64_t timestamp;
+    uint8_t source = 0;
+    uint8_t target = 0;
+    uint8_t event  = 0;
+
+    static std::string header() { return "timestamp,source,target,event"; }
+
+    void print(std::ostream& os) const
+    {
+        os << timestamp << "," << source << "," << target << "," << event
+           << "\n";
+    }
+};
+
 inline Canbus::CanMessage toCanMessage(const PitotData& data)
 {
     Canbus::CanMessage message;
-- 
GitLab