Merged in f5soh/librepilot/update_credits (pull request #529)
[librepilot.git] / flight / libraries / mavlink / v1.0 / common / mavlink_msg_mission_item_reached.h
bloba5b485f80daa55d1eadc0cbd295aede0a6388f6e
1 // MESSAGE MISSION_ITEM_REACHED PACKING
3 #define MAVLINK_MSG_ID_MISSION_ITEM_REACHED 46
5 typedef struct __mavlink_mission_item_reached_t {
6 uint16_t seq; ///< Sequence
7 } mavlink_mission_item_reached_t;
9 #define MAVLINK_MSG_ID_MISSION_ITEM_REACHED_LEN 2
10 #define MAVLINK_MSG_ID_46_LEN 2
13 #define MAVLINK_MESSAGE_INFO_MISSION_ITEM_REACHED \
14 { \
15 "MISSION_ITEM_REACHED", \
16 1, \
17 { \
18 { "seq", NULL, MAVLINK_TYPE_UINT16_T, 0, 0, offsetof(mavlink_mission_item_reached_t, seq) }, \
19 } \
23 /**
24 * @brief Pack a mission_item_reached message
25 * @param system_id ID of this system
26 * @param component_id ID of this component (e.g. 200 for IMU)
27 * @param msg The MAVLink message to compress the data into
29 * @param seq Sequence
30 * @return length of the message in bytes (excluding serial stream start sign)
32 static inline uint16_t mavlink_msg_mission_item_reached_pack(uint8_t system_id, uint8_t component_id, mavlink_message_t *msg,
33 uint16_t seq)
35 #if MAVLINK_NEED_BYTE_SWAP || !MAVLINK_ALIGNED_FIELDS
36 char buf[2];
37 _mav_put_uint16_t(buf, 0, seq);
39 memcpy(_MAV_PAYLOAD_NON_CONST(msg), buf, 2);
40 #else
41 mavlink_mission_item_reached_t packet;
42 packet.seq = seq;
44 memcpy(_MAV_PAYLOAD_NON_CONST(msg), &packet, 2);
45 #endif
47 msg->msgid = MAVLINK_MSG_ID_MISSION_ITEM_REACHED;
48 return mavlink_finalize_message(msg, system_id, component_id, 2, 11);
51 /**
52 * @brief Pack a mission_item_reached message on a channel
53 * @param system_id ID of this system
54 * @param component_id ID of this component (e.g. 200 for IMU)
55 * @param chan The MAVLink channel this message was sent over
56 * @param msg The MAVLink message to compress the data into
57 * @param seq Sequence
58 * @return length of the message in bytes (excluding serial stream start sign)
60 static inline uint16_t mavlink_msg_mission_item_reached_pack_chan(uint8_t system_id, uint8_t component_id, uint8_t chan,
61 mavlink_message_t *msg,
62 uint16_t seq)
64 #if MAVLINK_NEED_BYTE_SWAP || !MAVLINK_ALIGNED_FIELDS
65 char buf[2];
66 _mav_put_uint16_t(buf, 0, seq);
68 memcpy(_MAV_PAYLOAD_NON_CONST(msg), buf, 2);
69 #else
70 mavlink_mission_item_reached_t packet;
71 packet.seq = seq;
73 memcpy(_MAV_PAYLOAD_NON_CONST(msg), &packet, 2);
74 #endif
76 msg->msgid = MAVLINK_MSG_ID_MISSION_ITEM_REACHED;
77 return mavlink_finalize_message_chan(msg, system_id, component_id, chan, 2, 11);
80 /**
81 * @brief Encode a mission_item_reached struct into a message
83 * @param system_id ID of this system
84 * @param component_id ID of this component (e.g. 200 for IMU)
85 * @param msg The MAVLink message to compress the data into
86 * @param mission_item_reached C-struct to read the message contents from
88 static inline uint16_t mavlink_msg_mission_item_reached_encode(uint8_t system_id, uint8_t component_id, mavlink_message_t *msg, const mavlink_mission_item_reached_t *mission_item_reached)
90 return mavlink_msg_mission_item_reached_pack(system_id, component_id, msg, mission_item_reached->seq);
93 /**
94 * @brief Send a mission_item_reached message
95 * @param chan MAVLink channel to send the message
97 * @param seq Sequence
99 #ifdef MAVLINK_USE_CONVENIENCE_FUNCTIONS
101 static inline void mavlink_msg_mission_item_reached_send(mavlink_channel_t chan, uint16_t seq)
103 #if MAVLINK_NEED_BYTE_SWAP || !MAVLINK_ALIGNED_FIELDS
104 char buf[2];
105 _mav_put_uint16_t(buf, 0, seq);
107 _mav_finalize_message_chan_send(chan, MAVLINK_MSG_ID_MISSION_ITEM_REACHED, buf, 2, 11);
108 #else
109 mavlink_mission_item_reached_t packet;
110 packet.seq = seq;
112 _mav_finalize_message_chan_send(chan, MAVLINK_MSG_ID_MISSION_ITEM_REACHED, (const char *)&packet, 2, 11);
113 #endif
116 #endif
118 // MESSAGE MISSION_ITEM_REACHED UNPACKING
122 * @brief Get field seq from mission_item_reached message
124 * @return Sequence
126 static inline uint16_t mavlink_msg_mission_item_reached_get_seq(const mavlink_message_t *msg)
128 return _MAV_RETURN_uint16_t(msg, 0);
132 * @brief Decode a mission_item_reached message into a struct
134 * @param msg The message to decode
135 * @param mission_item_reached C-struct to decode the message contents into
137 static inline void mavlink_msg_mission_item_reached_decode(const mavlink_message_t *msg, mavlink_mission_item_reached_t *mission_item_reached)
139 #if MAVLINK_NEED_BYTE_SWAP
140 mission_item_reached->seq = mavlink_msg_mission_item_reached_get_seq(msg);
141 #else
142 memcpy(mission_item_reached, _MAV_PAYLOAD(msg), 2);
143 #endif