#pragma once #include #include #include #ifndef AP_COMPASS_DIAGONALS_ENABLED #define AP_COMPASS_DIAGONALS_ENABLED 1 #endif // Backend support #ifndef AP_COMPASS_BACKEND_DEFAULT_ENABLED #define AP_COMPASS_BACKEND_DEFAULT_ENABLED 1 #endif #ifndef AP_COMPASS_EXTERNALAHRS_ENABLED #define AP_COMPASS_EXTERNALAHRS_ENABLED (AP_COMPASS_BACKEND_DEFAULT_ENABLED && HAL_EXTERNAL_AHRS_ENABLED) #endif #ifndef AP_COMPASS_MSP_ENABLED #define AP_COMPASS_MSP_ENABLED (AP_COMPASS_BACKEND_DEFAULT_ENABLED && HAL_MSP_SENSORS_ENABLED) #endif #ifndef AP_COMPASS_SITL_ENABLED #define AP_COMPASS_SITL_ENABLED (AP_COMPASS_BACKEND_DEFAULT_ENABLED && AP_SIM_ENABLED) #endif #ifndef AP_COMPASS_UAVCAN_ENABLED #define AP_COMPASS_UAVCAN_ENABLED (AP_COMPASS_BACKEND_DEFAULT_ENABLED && HAL_ENABLE_LIBUAVCAN_DRIVERS) #endif // i2c-based compasses: #ifndef AP_COMPASS_I2C_BACKEND_DEFAULT_ENABLED #define AP_COMPASS_I2C_BACKEND_DEFAULT_ENABLED AP_COMPASS_BACKEND_DEFAULT_ENABLED #endif #ifndef AP_COMPASS_AK8963_ENABLED #define AP_COMPASS_AK8963_ENABLED AP_COMPASS_I2C_BACKEND_DEFAULT_ENABLED #endif #ifndef AP_COMPASS_HMC5843_ENABLED #define AP_COMPASS_HMC5843_ENABLED AP_COMPASS_I2C_BACKEND_DEFAULT_ENABLED #endif #ifndef AP_COMPASS_IST8308_ENABLED #define AP_COMPASS_IST8308_ENABLED AP_COMPASS_I2C_BACKEND_DEFAULT_ENABLED #endif #ifndef AP_COMPASS_LSM303D_ENABLED #define AP_COMPASS_LSM303D_ENABLED AP_COMPASS_I2C_BACKEND_DEFAULT_ENABLED #endif