LCOV - code coverage report
Current view: top level - AP_Baro - AP_Baro_Logging.cpp (source / functions) Hit Total Coverage
Test: lcov.info Lines: 27 27 100.0 %
Date: 2026-09-09 11:02:08 Functions: 2 2 100.0 %

          Line data    Source code
       1             : #include <AP_Logger/AP_Logger_config.h>
       2             : 
       3             : #if HAL_LOGGING_ENABLED
       4             : 
       5             : #include "AP_Baro.h"
       6             : 
       7             : #include <AP_Logger/AP_Logger.h>
       8             : 
       9     2949525 : void AP_Baro::Write_Baro_instance(uint64_t time_us, uint8_t baro_instance)
      10             : {
      11     2949525 :     const struct log_BARO pkt{
      12             :         LOG_PACKET_HEADER_INIT(LOG_BARO_MSG),
      13             :         time_us       : time_us,
      14             :         instance      : baro_instance,
      15     2949525 :         altitude      : get_altitude(baro_instance),
      16     2949525 :         altitude_AMSL : get_altitude_AMSL(baro_instance),
      17     2949525 :         pressure      : get_pressure(baro_instance),
      18     5899050 :         temperature   : (int16_t)(get_temperature(baro_instance) * 100 + 0.5f),
      19     2949525 :         climbrate     : get_climb_rate(),
      20     2949525 :         sample_time_ms: get_last_update(baro_instance),
      21     2949525 :         drift_offset  : get_baro_drift_offset(),
      22     2949525 :         ground_temp   : get_ground_temperature(),
      23     5899050 :         healthy       : (uint8_t)healthy(baro_instance),
      24             : #if (HAL_BARO_WIND_COMP_ENABLED || AP_BARO_THST_COMP_ENABLED)
      25     2949525 :         corrected_pressure : get_corrected_pressure(baro_instance),
      26             : #else
      27             :         corrected_pressure : get_pressure(baro_instance),
      28             : #endif
      29     2949525 :     };
      30     2949525 :     AP::logger().WriteBlock(&pkt, sizeof(pkt));
      31             : #if HAL_BARO_WIND_COMP_ENABLED
      32     2949525 :     if (!sensors[baro_instance].wind_coeff.enable) {
      33     2948449 :         return;
      34             :     }
      35             : 
      36        1076 :     const struct log_BARD pkt2{
      37             :         LOG_PACKET_HEADER_INIT(LOG_BARD_MSG),
      38             :         time_us       : time_us,
      39             :         instance      : baro_instance,
      40        2152 :         dyn_pressure_x: get_dynamic_pressure(baro_instance).x,
      41        2152 :         dyn_pressure_y: get_dynamic_pressure(baro_instance).y,
      42        2152 :         dyn_pressure_z: get_dynamic_pressure(baro_instance).z,
      43        1076 :     };
      44        1076 :     AP::logger().WriteBlock(&pkt2, sizeof(pkt2));
      45             : #endif
      46             : }
      47             : 
      48             : // Write a BARO packet
      49     1467414 : void AP_Baro::Write_Baro(void)
      50             : {
      51     1467414 :     const uint64_t time_us = AP_HAL::micros64();
      52             : 
      53     4416939 :     for (uint8_t i=0; i< _num_sensors; i++) {
      54     2949525 :         Write_Baro_instance(time_us, i);
      55             :     }
      56     1467414 : }
      57             : 
      58             : #endif

Generated by: LCOV version 1.14