ArduSub: 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.
This commit is contained in:
Peter Barker 2022-03-04 14:29:49 +11:00 committed by Peter Barker
parent fd4a00a654
commit 42383dd6f2
1 changed files with 4 additions and 4 deletions

View File

@ -154,7 +154,7 @@ void GCS_MAVLINK_Sub::send_pid_tuning()
const Vector3f &gyro = ahrs.get_gyro();
if (g.gcs_pid_mask & 1) {
const AP_Logger::PID_Info &pid_info = attitude_control.get_rate_roll_pid().get_pid_info();
const AP_PIDInfo &pid_info = attitude_control.get_rate_roll_pid().get_pid_info();
mavlink_msg_pid_tuning_send(chan, PID_TUNING_ROLL,
pid_info.target*0.01f,
degrees(gyro.x),
@ -169,7 +169,7 @@ void GCS_MAVLINK_Sub::send_pid_tuning()
}
}
if (g.gcs_pid_mask & 2) {
const AP_Logger::PID_Info &pid_info = attitude_control.get_rate_pitch_pid().get_pid_info();
const AP_PIDInfo &pid_info = attitude_control.get_rate_pitch_pid().get_pid_info();
mavlink_msg_pid_tuning_send(chan, PID_TUNING_PITCH,
pid_info.target*0.01f,
degrees(gyro.y),
@ -184,7 +184,7 @@ void GCS_MAVLINK_Sub::send_pid_tuning()
}
}
if (g.gcs_pid_mask & 4) {
const AP_Logger::PID_Info &pid_info = attitude_control.get_rate_yaw_pid().get_pid_info();
const AP_PIDInfo &pid_info = attitude_control.get_rate_yaw_pid().get_pid_info();
mavlink_msg_pid_tuning_send(chan, PID_TUNING_YAW,
pid_info.target*0.01f,
degrees(gyro.z),
@ -199,7 +199,7 @@ void GCS_MAVLINK_Sub::send_pid_tuning()
}
}
if (g.gcs_pid_mask & 8) {
const AP_Logger::PID_Info &pid_info = sub.pos_control.get_accel_z_pid().get_pid_info();
const AP_PIDInfo &pid_info = sub.pos_control.get_accel_z_pid().get_pid_info();
mavlink_msg_pid_tuning_send(chan, PID_TUNING_ACCZ,
pid_info.target*0.01f,
-(ahrs.get_accel_ef_blended().z + GRAVITY_MSS),