From 411db781ebfb9ff91275b928e3c238629bc944b2 Mon Sep 17 00:00:00 2001 From: mcsauder Date: Thu, 28 Feb 2019 10:05:43 -0700 Subject: [PATCH] Cut case MAVLINK_MSG_ID_LANDING_TARGET content and paste into handle_message_landing_target() method. --- src/modules/simulator/simulator.h | 2 ++ src/modules/simulator/simulator_mavlink.cpp | 34 ++++++++++++--------- 2 files changed, 21 insertions(+), 15 deletions(-) diff --git a/src/modules/simulator/simulator.h b/src/modules/simulator/simulator.h index 63d0139c8f..0507e65425 100644 --- a/src/modules/simulator/simulator.h +++ b/src/modules/simulator/simulator.h @@ -331,6 +331,8 @@ private: mavlink_hil_actuator_controls_t actuator_controls_from_outputs(const actuator_outputs_s &actuators); void handle_message(mavlink_message_t *msg, bool publish); + void handle_message_landing_target(const mavlink_message_t *msg); + void parameters_update(bool force); void poll_topics(); void pollForMAVLinkMessages(bool publish); diff --git a/src/modules/simulator/simulator_mavlink.cpp b/src/modules/simulator/simulator_mavlink.cpp index b15a354105..1583865288 100644 --- a/src/modules/simulator/simulator_mavlink.cpp +++ b/src/modules/simulator/simulator_mavlink.cpp @@ -398,21 +398,7 @@ void Simulator::handle_message(mavlink_message_t *msg, bool publish) break; case MAVLINK_MSG_ID_LANDING_TARGET: { - mavlink_landing_target_t landing_target_mavlink; - mavlink_msg_landing_target_decode(msg, &landing_target_mavlink); - - struct irlock_report_s report = {}; - - report.timestamp = hrt_absolute_time(); - report.signature = landing_target_mavlink.target_num; - report.pos_x = landing_target_mavlink.angle_x; - report.pos_y = landing_target_mavlink.angle_y; - report.size_x = landing_target_mavlink.size_x; - report.size_y = landing_target_mavlink.size_y; - - int irlock_multi; - orb_publish_auto(ORB_ID(irlock_report), &_irlock_report_pub, &report, &irlock_multi, ORB_PRIO_HIGH); - + handle_message_landing_target(msg); break; } @@ -513,6 +499,24 @@ void Simulator::handle_message(mavlink_message_t *msg, bool publish) } +void Simulator::handle_message_landing_target(const mavlink_message_t *msg) +{ + mavlink_landing_target_t landing_target_mavlink; + mavlink_msg_landing_target_decode(msg, &landing_target_mavlink); + + struct irlock_report_s report = {}; + + report.timestamp = hrt_absolute_time(); + report.signature = landing_target_mavlink.target_num; + report.pos_x = landing_target_mavlink.angle_x; + report.pos_y = landing_target_mavlink.angle_y; + report.size_x = landing_target_mavlink.size_x; + report.size_y = landing_target_mavlink.size_y; + + int irlock_multi; + orb_publish_auto(ORB_ID(irlock_report), &_irlock_report_pub, &report, &irlock_multi, ORB_PRIO_HIGH); +} + void Simulator::send_mavlink_message(const mavlink_message_t &aMsg) { uint8_t buf[MAVLINK_MAX_PACKET_LEN];