From 95743452d112608c3132a52a367d4ffdc9afacfe Mon Sep 17 00:00:00 2001 From: Hector van der Aa Date: Tue, 24 Mar 2026 00:02:01 +0100 Subject: [PATCH] Added copy functions for gps_global_data --- src/custom_types.h | 30 +++++++++++++++++++++++++++++- 1 file changed, 29 insertions(+), 1 deletion(-) diff --git a/src/custom_types.h b/src/custom_types.h index b112981..cea3a94 100644 --- a/src/custom_types.h +++ b/src/custom_types.h @@ -6,7 +6,7 @@ struct vehicle_config{ uint16_t magic = CONFIG_MAGIC; bool auto_detect_track = true; uint8_t num_tracks = 0; - uint8_t selected_track = 0; + uint8_t track_fallback = 0; }; struct lat_lng { @@ -35,3 +35,31 @@ struct gps_data { gps_sub_data speed; gps_sub_data course; }; + +inline void gps_sub_copy_from_volatile(gps_sub_data& dst, const volatile gps_sub_data& src) { + dst.age = src.age; + dst.valid = src.valid; + dst.value = src.value; +} + +inline void gps_sub_copy_to_volatile(volatile gps_sub_data& dst, const gps_sub_data& src) { + dst.age = src.age; + dst.valid = src.valid; + dst.value = src.value; +} + +inline void gps_copy_from_volatile(gps_data& dst, const volatile gps_data& src) { + gps_sub_copy_from_volatile(dst.altitude, src.altitude); + gps_sub_copy_from_volatile(dst.lat, src.lat); + gps_sub_copy_from_volatile(dst.lng, src.lng); + gps_sub_copy_from_volatile(dst.speed, src.speed); + gps_sub_copy_from_volatile(dst.course, src.course); +} + +inline void gps_copy_to_volatile(volatile gps_data& dst, const gps_data& src) { + gps_sub_copy_to_volatile(dst.altitude, src.altitude); + gps_sub_copy_to_volatile(dst.lat, src.lat); + gps_sub_copy_to_volatile(dst.lng, src.lng); + gps_sub_copy_to_volatile(dst.speed, src.speed); + gps_sub_copy_to_volatile(dst.course, src.course); +} \ No newline at end of file