From 4db1e6a914237e9bd5540e7bbd2a6238cfc4be37 Mon Sep 17 00:00:00 2001 From: Peter Barker Date: Fri, 4 Mar 2022 14:29:50 +1100 Subject: [PATCH] Rover: stop libraries including AP_Logger.h in .h files AP_Logger.h is a nexus of includes; while this is being improved over time, there's no reason for the library headers to include AP_Logger.h as the logger itself is access by singleton and the structures are in LogStructure.h This necessitated moving The PID_Info structure out of AP_Logger's namespace. This cleans up a pretty nasty bit - that structure is definitely not simply used for logging, but also used to pass pid information around to controllers! There are a lot of patches in here because AP_Logger.h, acting as a nexus, was providing transitive header file inclusion in many (some unlikely!) places. --- Rover/GCS_Mavlink.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Rover/GCS_Mavlink.cpp b/Rover/GCS_Mavlink.cpp index ff2a1e6fc4..6ca3f6b11b 100644 --- a/Rover/GCS_Mavlink.cpp +++ b/Rover/GCS_Mavlink.cpp @@ -185,7 +185,7 @@ void GCS_MAVLINK_Rover::send_pid_tuning() Parameters &g = rover.g; ParametersG2 &g2 = rover.g2; - const AP_Logger::PID_Info *pid_info; + const AP_PIDInfo *pid_info; // steering PID if (g.gcs_pid_mask & 1) {