#pragma once // MESSAGE XYK_COMMAND_GRD_CHECK PACKING #define MAVLINK_MSG_ID_XYK_COMMAND_GRD_CHECK 30013 MAVPACKED( typedef struct __mavlink_xyk_command_grd_check_t { uint16_t cmd_value; /*< pwm of output (of ap)[1000,2000]*/ uint8_t plane_id; /*< System which should execute the command*/ uint8_t command; /*< Command ID (of command to send).*/ uint8_t sevo_id; /*< suface sevo id or motor id*/ }) mavlink_xyk_command_grd_check_t; #define MAVLINK_MSG_ID_XYK_COMMAND_GRD_CHECK_LEN 5 #define MAVLINK_MSG_ID_XYK_COMMAND_GRD_CHECK_MIN_LEN 5 #define MAVLINK_MSG_ID_30013_LEN 5 #define MAVLINK_MSG_ID_30013_MIN_LEN 5 #define MAVLINK_MSG_ID_XYK_COMMAND_GRD_CHECK_CRC 138 #define MAVLINK_MSG_ID_30013_CRC 138 #if MAVLINK_COMMAND_24BIT #define MAVLINK_MESSAGE_INFO_XYK_COMMAND_GRD_CHECK { \ 30013, \ "XYK_COMMAND_GRD_CHECK", \ 4, \ { { "plane_id", NULL, MAVLINK_TYPE_UINT8_T, 0, 2, offsetof(mavlink_xyk_command_grd_check_t, plane_id) }, \ { "command", NULL, MAVLINK_TYPE_UINT8_T, 0, 3, offsetof(mavlink_xyk_command_grd_check_t, command) }, \ { "sevo_id", NULL, MAVLINK_TYPE_UINT8_T, 0, 4, offsetof(mavlink_xyk_command_grd_check_t, sevo_id) }, \ { "cmd_value", NULL, MAVLINK_TYPE_UINT16_T, 0, 0, offsetof(mavlink_xyk_command_grd_check_t, cmd_value) }, \ } \ } #else #define MAVLINK_MESSAGE_INFO_XYK_COMMAND_GRD_CHECK { \ "XYK_COMMAND_GRD_CHECK", \ 4, \ { { "plane_id", NULL, MAVLINK_TYPE_UINT8_T, 0, 2, offsetof(mavlink_xyk_command_grd_check_t, plane_id) }, \ { "command", NULL, MAVLINK_TYPE_UINT8_T, 0, 3, offsetof(mavlink_xyk_command_grd_check_t, command) }, \ { "sevo_id", NULL, MAVLINK_TYPE_UINT8_T, 0, 4, offsetof(mavlink_xyk_command_grd_check_t, sevo_id) }, \ { "cmd_value", NULL, MAVLINK_TYPE_UINT16_T, 0, 0, offsetof(mavlink_xyk_command_grd_check_t, cmd_value) }, \ } \ } #endif /** * @brief Pack a xyk_command_grd_check message * @param system_id ID of this system * @param component_id ID of this component (e.g. 200 for IMU) * @param msg The MAVLink message to compress the data into * * @param plane_id System which should execute the command * @param command Command ID (of command to send). * @param sevo_id suface sevo id or motor id * @param cmd_value pwm of output (of ap)[1000,2000] * @return length of the message in bytes (excluding serial stream start sign) */ static inline uint16_t mavlink_msg_xyk_command_grd_check_pack(uint8_t system_id, uint8_t component_id, mavlink_message_t* msg, uint8_t plane_id, uint8_t command, uint8_t sevo_id, uint16_t cmd_value) { #if MAVLINK_NEED_BYTE_SWAP || !MAVLINK_ALIGNED_FIELDS char buf[MAVLINK_MSG_ID_XYK_COMMAND_GRD_CHECK_LEN]; _mav_put_uint16_t(buf, 0, cmd_value); _mav_put_uint8_t(buf, 2, plane_id); _mav_put_uint8_t(buf, 3, command); _mav_put_uint8_t(buf, 4, sevo_id); memcpy(_MAV_PAYLOAD_NON_CONST(msg), buf, MAVLINK_MSG_ID_XYK_COMMAND_GRD_CHECK_LEN); #else mavlink_xyk_command_grd_check_t packet; packet.cmd_value = cmd_value; packet.plane_id = plane_id; packet.command = command; packet.sevo_id = sevo_id; memcpy(_MAV_PAYLOAD_NON_CONST(msg), &packet, MAVLINK_MSG_ID_XYK_COMMAND_GRD_CHECK_LEN); #endif msg->msgid = MAVLINK_MSG_ID_XYK_COMMAND_GRD_CHECK; return mavlink_finalize_message(msg, system_id, component_id, MAVLINK_MSG_ID_XYK_COMMAND_GRD_CHECK_MIN_LEN, MAVLINK_MSG_ID_XYK_COMMAND_GRD_CHECK_LEN, MAVLINK_MSG_ID_XYK_COMMAND_GRD_CHECK_CRC); } /** * @brief Pack a xyk_command_grd_check message on a channel * @param system_id ID of this system * @param component_id ID of this component (e.g. 200 for IMU) * @param chan The MAVLink channel this message will be sent over * @param msg The MAVLink message to compress the data into * @param plane_id System which should execute the command * @param command Command ID (of command to send). * @param sevo_id suface sevo id or motor id * @param cmd_value pwm of output (of ap)[1000,2000] * @return length of the message in bytes (excluding serial stream start sign) */ static inline uint16_t mavlink_msg_xyk_command_grd_check_pack_chan(uint8_t system_id, uint8_t component_id, uint8_t chan, mavlink_message_t* msg, uint8_t plane_id,uint8_t command,uint8_t sevo_id,uint16_t cmd_value) { #if MAVLINK_NEED_BYTE_SWAP || !MAVLINK_ALIGNED_FIELDS char buf[MAVLINK_MSG_ID_XYK_COMMAND_GRD_CHECK_LEN]; _mav_put_uint16_t(buf, 0, cmd_value); _mav_put_uint8_t(buf, 2, plane_id); _mav_put_uint8_t(buf, 3, command); _mav_put_uint8_t(buf, 4, sevo_id); memcpy(_MAV_PAYLOAD_NON_CONST(msg), buf, MAVLINK_MSG_ID_XYK_COMMAND_GRD_CHECK_LEN); #else mavlink_xyk_command_grd_check_t packet; packet.cmd_value = cmd_value; packet.plane_id = plane_id; packet.command = command; packet.sevo_id = sevo_id; memcpy(_MAV_PAYLOAD_NON_CONST(msg), &packet, MAVLINK_MSG_ID_XYK_COMMAND_GRD_CHECK_LEN); #endif msg->msgid = MAVLINK_MSG_ID_XYK_COMMAND_GRD_CHECK; return mavlink_finalize_message_chan(msg, system_id, component_id, chan, MAVLINK_MSG_ID_XYK_COMMAND_GRD_CHECK_MIN_LEN, MAVLINK_MSG_ID_XYK_COMMAND_GRD_CHECK_LEN, MAVLINK_MSG_ID_XYK_COMMAND_GRD_CHECK_CRC); } /** * @brief Encode a xyk_command_grd_check struct * * @param system_id ID of this system * @param component_id ID of this component (e.g. 200 for IMU) * @param msg The MAVLink message to compress the data into * @param xyk_command_grd_check C-struct to read the message contents from */ static inline uint16_t mavlink_msg_xyk_command_grd_check_encode(uint8_t system_id, uint8_t component_id, mavlink_message_t* msg, const mavlink_xyk_command_grd_check_t* xyk_command_grd_check) { return mavlink_msg_xyk_command_grd_check_pack(system_id, component_id, msg, xyk_command_grd_check->plane_id, xyk_command_grd_check->command, xyk_command_grd_check->sevo_id, xyk_command_grd_check->cmd_value); } /** * @brief Encode a xyk_command_grd_check struct on a channel * * @param system_id ID of this system * @param component_id ID of this component (e.g. 200 for IMU) * @param chan The MAVLink channel this message will be sent over * @param msg The MAVLink message to compress the data into * @param xyk_command_grd_check C-struct to read the message contents from */ static inline uint16_t mavlink_msg_xyk_command_grd_check_encode_chan(uint8_t system_id, uint8_t component_id, uint8_t chan, mavlink_message_t* msg, const mavlink_xyk_command_grd_check_t* xyk_command_grd_check) { return mavlink_msg_xyk_command_grd_check_pack_chan(system_id, component_id, chan, msg, xyk_command_grd_check->plane_id, xyk_command_grd_check->command, xyk_command_grd_check->sevo_id, xyk_command_grd_check->cmd_value); } /** * @brief Send a xyk_command_grd_check message * @param chan MAVLink channel to send the message * * @param plane_id System which should execute the command * @param command Command ID (of command to send). * @param sevo_id suface sevo id or motor id * @param cmd_value pwm of output (of ap)[1000,2000] */ #ifdef MAVLINK_USE_CONVENIENCE_FUNCTIONS static inline void mavlink_msg_xyk_command_grd_check_send(mavlink_channel_t chan, uint8_t plane_id, uint8_t command, uint8_t sevo_id, uint16_t cmd_value) { #if MAVLINK_NEED_BYTE_SWAP || !MAVLINK_ALIGNED_FIELDS char buf[MAVLINK_MSG_ID_XYK_COMMAND_GRD_CHECK_LEN]; _mav_put_uint16_t(buf, 0, cmd_value); _mav_put_uint8_t(buf, 2, plane_id); _mav_put_uint8_t(buf, 3, command); _mav_put_uint8_t(buf, 4, sevo_id); _mav_finalize_message_chan_send(chan, MAVLINK_MSG_ID_XYK_COMMAND_GRD_CHECK, buf, MAVLINK_MSG_ID_XYK_COMMAND_GRD_CHECK_MIN_LEN, MAVLINK_MSG_ID_XYK_COMMAND_GRD_CHECK_LEN, MAVLINK_MSG_ID_XYK_COMMAND_GRD_CHECK_CRC); #else mavlink_xyk_command_grd_check_t packet; packet.cmd_value = cmd_value; packet.plane_id = plane_id; packet.command = command; packet.sevo_id = sevo_id; _mav_finalize_message_chan_send(chan, MAVLINK_MSG_ID_XYK_COMMAND_GRD_CHECK, (const char *)&packet, MAVLINK_MSG_ID_XYK_COMMAND_GRD_CHECK_MIN_LEN, MAVLINK_MSG_ID_XYK_COMMAND_GRD_CHECK_LEN, MAVLINK_MSG_ID_XYK_COMMAND_GRD_CHECK_CRC); #endif } /** * @brief Send a xyk_command_grd_check message * @param chan MAVLink channel to send the message * @param struct The MAVLink struct to serialize */ static inline void mavlink_msg_xyk_command_grd_check_send_struct(mavlink_channel_t chan, const mavlink_xyk_command_grd_check_t* xyk_command_grd_check) { #if MAVLINK_NEED_BYTE_SWAP || !MAVLINK_ALIGNED_FIELDS mavlink_msg_xyk_command_grd_check_send(chan, xyk_command_grd_check->plane_id, xyk_command_grd_check->command, xyk_command_grd_check->sevo_id, xyk_command_grd_check->cmd_value); #else _mav_finalize_message_chan_send(chan, MAVLINK_MSG_ID_XYK_COMMAND_GRD_CHECK, (const char *)xyk_command_grd_check, MAVLINK_MSG_ID_XYK_COMMAND_GRD_CHECK_MIN_LEN, MAVLINK_MSG_ID_XYK_COMMAND_GRD_CHECK_LEN, MAVLINK_MSG_ID_XYK_COMMAND_GRD_CHECK_CRC); #endif } #if MAVLINK_MSG_ID_XYK_COMMAND_GRD_CHECK_LEN <= MAVLINK_MAX_PAYLOAD_LEN /* This varient of _send() can be used to save stack space by re-using memory from the receive buffer. The caller provides a mavlink_message_t which is the size of a full mavlink message. This is usually the receive buffer for the channel, and allows a reply to an incoming message with minimum stack space usage. */ static inline void mavlink_msg_xyk_command_grd_check_send_buf(mavlink_message_t *msgbuf, mavlink_channel_t chan, uint8_t plane_id, uint8_t command, uint8_t sevo_id, uint16_t cmd_value) { #if MAVLINK_NEED_BYTE_SWAP || !MAVLINK_ALIGNED_FIELDS char *buf = (char *)msgbuf; _mav_put_uint16_t(buf, 0, cmd_value); _mav_put_uint8_t(buf, 2, plane_id); _mav_put_uint8_t(buf, 3, command); _mav_put_uint8_t(buf, 4, sevo_id); _mav_finalize_message_chan_send(chan, MAVLINK_MSG_ID_XYK_COMMAND_GRD_CHECK, buf, MAVLINK_MSG_ID_XYK_COMMAND_GRD_CHECK_MIN_LEN, MAVLINK_MSG_ID_XYK_COMMAND_GRD_CHECK_LEN, MAVLINK_MSG_ID_XYK_COMMAND_GRD_CHECK_CRC); #else mavlink_xyk_command_grd_check_t *packet = (mavlink_xyk_command_grd_check_t *)msgbuf; packet->cmd_value = cmd_value; packet->plane_id = plane_id; packet->command = command; packet->sevo_id = sevo_id; _mav_finalize_message_chan_send(chan, MAVLINK_MSG_ID_XYK_COMMAND_GRD_CHECK, (const char *)packet, MAVLINK_MSG_ID_XYK_COMMAND_GRD_CHECK_MIN_LEN, MAVLINK_MSG_ID_XYK_COMMAND_GRD_CHECK_LEN, MAVLINK_MSG_ID_XYK_COMMAND_GRD_CHECK_CRC); #endif } #endif #endif // MESSAGE XYK_COMMAND_GRD_CHECK UNPACKING /** * @brief Get field plane_id from xyk_command_grd_check message * * @return System which should execute the command */ static inline uint8_t mavlink_msg_xyk_command_grd_check_get_plane_id(const mavlink_message_t* msg) { return _MAV_RETURN_uint8_t(msg, 2); } /** * @brief Get field command from xyk_command_grd_check message * * @return Command ID (of command to send). */ static inline uint8_t mavlink_msg_xyk_command_grd_check_get_command(const mavlink_message_t* msg) { return _MAV_RETURN_uint8_t(msg, 3); } /** * @brief Get field sevo_id from xyk_command_grd_check message * * @return suface sevo id or motor id */ static inline uint8_t mavlink_msg_xyk_command_grd_check_get_sevo_id(const mavlink_message_t* msg) { return _MAV_RETURN_uint8_t(msg, 4); } /** * @brief Get field cmd_value from xyk_command_grd_check message * * @return pwm of output (of ap)[1000,2000] */ static inline uint16_t mavlink_msg_xyk_command_grd_check_get_cmd_value(const mavlink_message_t* msg) { return _MAV_RETURN_uint16_t(msg, 0); } /** * @brief Decode a xyk_command_grd_check message into a struct * * @param msg The message to decode * @param xyk_command_grd_check C-struct to decode the message contents into */ static inline void mavlink_msg_xyk_command_grd_check_decode(const mavlink_message_t* msg, mavlink_xyk_command_grd_check_t* xyk_command_grd_check) { #if MAVLINK_NEED_BYTE_SWAP || !MAVLINK_ALIGNED_FIELDS xyk_command_grd_check->cmd_value = mavlink_msg_xyk_command_grd_check_get_cmd_value(msg); xyk_command_grd_check->plane_id = mavlink_msg_xyk_command_grd_check_get_plane_id(msg); xyk_command_grd_check->command = mavlink_msg_xyk_command_grd_check_get_command(msg); xyk_command_grd_check->sevo_id = mavlink_msg_xyk_command_grd_check_get_sevo_id(msg); #else uint8_t len = msg->len < MAVLINK_MSG_ID_XYK_COMMAND_GRD_CHECK_LEN? msg->len : MAVLINK_MSG_ID_XYK_COMMAND_GRD_CHECK_LEN; memset(xyk_command_grd_check, 0, MAVLINK_MSG_ID_XYK_COMMAND_GRD_CHECK_LEN); memcpy(xyk_command_grd_check, _MAV_PAYLOAD(msg), len); #endif }