GCS_MAVLink: correct compilation when AP_Vehicle disabled
This commit is contained in:
parent
8e1fc60550
commit
6515df72f0
@ -71,6 +71,7 @@
|
|||||||
#include "MissionItemProtocol_Fence.h"
|
#include "MissionItemProtocol_Fence.h"
|
||||||
|
|
||||||
#include <AP_Notify/AP_Notify.h>
|
#include <AP_Notify/AP_Notify.h>
|
||||||
|
#include <AP_Vehicle/AP_Vehicle_config.h>
|
||||||
|
|
||||||
#include <stdio.h>
|
#include <stdio.h>
|
||||||
|
|
||||||
@ -656,7 +657,11 @@ void GCS_MAVLINK::send_mission_current(const class AP_Mission &mission, uint16_t
|
|||||||
num_commands -= 1;
|
num_commands -= 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#if AP_VEHICLE_ENABLED
|
||||||
const uint8_t mission_mode = AP::vehicle()->current_mode_requires_mission() ? 1 : 0;
|
const uint8_t mission_mode = AP::vehicle()->current_mode_requires_mission() ? 1 : 0;
|
||||||
|
#else
|
||||||
|
const uint8_t mission_mode = 0;
|
||||||
|
#endif
|
||||||
|
|
||||||
mavlink_msg_mission_current_send(
|
mavlink_msg_mission_current_send(
|
||||||
chan,
|
chan,
|
||||||
@ -2603,6 +2608,7 @@ void GCS_MAVLINK::handle_set_mode(const mavlink_message_t &msg)
|
|||||||
MAV_RESULT GCS_MAVLINK::_set_mode_common(const MAV_MODE _base_mode, const uint32_t _custom_mode)
|
MAV_RESULT GCS_MAVLINK::_set_mode_common(const MAV_MODE _base_mode, const uint32_t _custom_mode)
|
||||||
{
|
{
|
||||||
// only accept custom modes because there is no easy mapping from Mavlink flight modes to AC flight modes
|
// only accept custom modes because there is no easy mapping from Mavlink flight modes to AC flight modes
|
||||||
|
#if AP_VEHICLE_ENABLED
|
||||||
if (uint32_t(_base_mode) & MAV_MODE_FLAG_CUSTOM_MODE_ENABLED) {
|
if (uint32_t(_base_mode) & MAV_MODE_FLAG_CUSTOM_MODE_ENABLED) {
|
||||||
if (!AP::vehicle()->set_mode(_custom_mode, ModeReason::GCS_COMMAND)) {
|
if (!AP::vehicle()->set_mode(_custom_mode, ModeReason::GCS_COMMAND)) {
|
||||||
// often we should be returning DENIED rather than FAILED
|
// often we should be returning DENIED rather than FAILED
|
||||||
@ -2612,6 +2618,7 @@ MAV_RESULT GCS_MAVLINK::_set_mode_common(const MAV_MODE _base_mode, const uint32
|
|||||||
}
|
}
|
||||||
return MAV_RESULT_ACCEPTED;
|
return MAV_RESULT_ACCEPTED;
|
||||||
}
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
if (_base_mode == (MAV_MODE)MAV_MODE_FLAG_DECODE_POSITION_SAFETY) {
|
if (_base_mode == (MAV_MODE)MAV_MODE_FLAG_DECODE_POSITION_SAFETY) {
|
||||||
// set the safety switch position. Must be in a command by itself
|
// set the safety switch position. Must be in a command by itself
|
||||||
@ -3285,7 +3292,11 @@ MAV_RESULT GCS_MAVLINK::handle_preflight_reboot(const mavlink_command_int_t &pac
|
|||||||
// when packet.param1 == 3 we reboot to hold in bootloader
|
// when packet.param1 == 3 we reboot to hold in bootloader
|
||||||
const bool hold_in_bootloader = is_equal(packet.param1, 3.0f);
|
const bool hold_in_bootloader = is_equal(packet.param1, 3.0f);
|
||||||
|
|
||||||
|
#if AP_VEHICLE_ENABLED
|
||||||
AP::vehicle()->reboot(hold_in_bootloader); // not expected to return
|
AP::vehicle()->reboot(hold_in_bootloader); // not expected to return
|
||||||
|
#else
|
||||||
|
hal.scheduler->reboot(hold_in_bootloader);
|
||||||
|
#endif
|
||||||
|
|
||||||
return MAV_RESULT_FAILED;
|
return MAV_RESULT_FAILED;
|
||||||
}
|
}
|
||||||
@ -5629,10 +5640,12 @@ void GCS_MAVLINK::send_autopilot_state_for_gimbal_device() const
|
|||||||
|
|
||||||
// get vehicle earth-frame rotation rate targets
|
// get vehicle earth-frame rotation rate targets
|
||||||
Vector3f rate_ef_targets;
|
Vector3f rate_ef_targets;
|
||||||
|
#if AP_VEHICLE_ENABLED
|
||||||
const AP_Vehicle *vehicle = AP::vehicle();
|
const AP_Vehicle *vehicle = AP::vehicle();
|
||||||
if (vehicle != nullptr) {
|
if (vehicle != nullptr) {
|
||||||
vehicle->get_rate_ef_targets(rate_ef_targets);
|
vehicle->get_rate_ef_targets(rate_ef_targets);
|
||||||
}
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
// get estimator flags
|
// get estimator flags
|
||||||
uint16_t est_status_flags = 0;
|
uint16_t est_status_flags = 0;
|
||||||
|
Loading…
Reference in New Issue
Block a user