AP_Winch: 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:55:36 +11:00 committed by Peter Barker
parent c452002ae4
commit 6a0250bc85
4 changed files with 7 additions and 1 deletions

View File

@ -59,7 +59,7 @@ public:
float get_rate_max() const { return MAX(config.rate_max, 0.0f); }
// send status to ground station
void send_status(const GCS_MAVLINK &channel);
void send_status(const class GCS_MAVLINK &channel);
// write log
void write_log();

View File

@ -1,5 +1,7 @@
#include <AP_Winch/AP_Winch_Backend.h>
#include <RC_Channel/RC_Channel.h>
#include <SRV_Channel/SRV_Channel.h>
// setup rc input and output
void AP_Winch_Backend::init()

View File

@ -1,4 +1,6 @@
#include <AP_Winch/AP_Winch_Daiwa.h>
#include <AP_Logger/AP_Logger.h>
#include <GCS_MAVLink/GCS.h>
extern const AP_HAL::HAL& hal;

View File

@ -1,4 +1,6 @@
#include "AP_Winch_PWM.h"
#include <AP_Logger/AP_Logger.h>
#include <GCS_MAVLink/GCS.h>
extern const AP_HAL::HAL& hal;