NinjaFlight
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
mavlink_msg_mount_status.h
Go to the documentation of this file.
1 // MESSAGE MOUNT_STATUS PACKING
2 
3 #define MAVLINK_MSG_ID_MOUNT_STATUS 158
4 
6 {
7  int32_t pointing_a;
8  int32_t pointing_b;
9  int32_t pointing_c;
10  uint8_t target_system;
11  uint8_t target_component;
13 
14 #define MAVLINK_MSG_ID_MOUNT_STATUS_LEN 14
15 #define MAVLINK_MSG_ID_158_LEN 14
16 
17 #define MAVLINK_MSG_ID_MOUNT_STATUS_CRC 134
18 #define MAVLINK_MSG_ID_158_CRC 134
19 
20 
21 
22 #define MAVLINK_MESSAGE_INFO_MOUNT_STATUS { \
23  "MOUNT_STATUS", \
24  5, \
25  { { "pointing_a", NULL, MAVLINK_TYPE_INT32_T, 0, 0, offsetof(mavlink_mount_status_t, pointing_a) }, \
26  { "pointing_b", NULL, MAVLINK_TYPE_INT32_T, 0, 4, offsetof(mavlink_mount_status_t, pointing_b) }, \
27  { "pointing_c", NULL, MAVLINK_TYPE_INT32_T, 0, 8, offsetof(mavlink_mount_status_t, pointing_c) }, \
28  { "target_system", NULL, MAVLINK_TYPE_UINT8_T, 0, 12, offsetof(mavlink_mount_status_t, target_system) }, \
29  { "target_component", NULL, MAVLINK_TYPE_UINT8_T, 0, 13, offsetof(mavlink_mount_status_t, target_component) }, \
30  } \
31 }
32 
33 
47 static inline uint16_t mavlink_msg_mount_status_pack(uint8_t system_id, uint8_t component_id, mavlink_message_t* msg,
48  uint8_t target_system, uint8_t target_component, int32_t pointing_a, int32_t pointing_b, int32_t pointing_c)
49 {
50 #if MAVLINK_NEED_BYTE_SWAP || !MAVLINK_ALIGNED_FIELDS
52  _mav_put_int32_t(buf, 0, pointing_a);
53  _mav_put_int32_t(buf, 4, pointing_b);
54  _mav_put_int32_t(buf, 8, pointing_c);
55  _mav_put_uint8_t(buf, 12, target_system);
56  _mav_put_uint8_t(buf, 13, target_component);
57 
59 #else
61  packet.pointing_a = pointing_a;
62  packet.pointing_b = pointing_b;
63  packet.pointing_c = pointing_c;
64  packet.target_system = target_system;
65  packet.target_component = target_component;
66 
68 #endif
69 
70  msg->msgid = MAVLINK_MSG_ID_MOUNT_STATUS;
71 #if MAVLINK_CRC_EXTRA
73 #else
74  return mavlink_finalize_message(msg, system_id, component_id, MAVLINK_MSG_ID_MOUNT_STATUS_LEN);
75 #endif
76 }
77 
91 static inline uint16_t mavlink_msg_mount_status_pack_chan(uint8_t system_id, uint8_t component_id, uint8_t chan,
92  mavlink_message_t* msg,
93  uint8_t target_system,uint8_t target_component,int32_t pointing_a,int32_t pointing_b,int32_t pointing_c)
94 {
95 #if MAVLINK_NEED_BYTE_SWAP || !MAVLINK_ALIGNED_FIELDS
97  _mav_put_int32_t(buf, 0, pointing_a);
98  _mav_put_int32_t(buf, 4, pointing_b);
99  _mav_put_int32_t(buf, 8, pointing_c);
100  _mav_put_uint8_t(buf, 12, target_system);
101  _mav_put_uint8_t(buf, 13, target_component);
102 
104 #else
105  mavlink_mount_status_t packet;
106  packet.pointing_a = pointing_a;
107  packet.pointing_b = pointing_b;
108  packet.pointing_c = pointing_c;
109  packet.target_system = target_system;
110  packet.target_component = target_component;
111 
113 #endif
114 
115  msg->msgid = MAVLINK_MSG_ID_MOUNT_STATUS;
116 #if MAVLINK_CRC_EXTRA
118 #else
119  return mavlink_finalize_message_chan(msg, system_id, component_id, chan, MAVLINK_MSG_ID_MOUNT_STATUS_LEN);
120 #endif
121 }
122 
131 static inline uint16_t mavlink_msg_mount_status_encode(uint8_t system_id, uint8_t component_id, mavlink_message_t* msg, const mavlink_mount_status_t* mount_status)
132 {
133  return mavlink_msg_mount_status_pack(system_id, component_id, msg, mount_status->target_system, mount_status->target_component, mount_status->pointing_a, mount_status->pointing_b, mount_status->pointing_c);
134 }
135 
145 static inline uint16_t mavlink_msg_mount_status_encode_chan(uint8_t system_id, uint8_t component_id, uint8_t chan, mavlink_message_t* msg, const mavlink_mount_status_t* mount_status)
146 {
147  return mavlink_msg_mount_status_pack_chan(system_id, component_id, chan, msg, mount_status->target_system, mount_status->target_component, mount_status->pointing_a, mount_status->pointing_b, mount_status->pointing_c);
148 }
149 
160 #ifdef MAVLINK_USE_CONVENIENCE_FUNCTIONS
161 
162 static inline void mavlink_msg_mount_status_send(mavlink_channel_t chan, uint8_t target_system, uint8_t target_component, int32_t pointing_a, int32_t pointing_b, int32_t pointing_c)
163 {
164 #if MAVLINK_NEED_BYTE_SWAP || !MAVLINK_ALIGNED_FIELDS
166  _mav_put_int32_t(buf, 0, pointing_a);
167  _mav_put_int32_t(buf, 4, pointing_b);
168  _mav_put_int32_t(buf, 8, pointing_c);
169  _mav_put_uint8_t(buf, 12, target_system);
170  _mav_put_uint8_t(buf, 13, target_component);
171 
172 #if MAVLINK_CRC_EXTRA
174 #else
175  _mav_finalize_message_chan_send(chan, MAVLINK_MSG_ID_MOUNT_STATUS, buf, MAVLINK_MSG_ID_MOUNT_STATUS_LEN);
176 #endif
177 #else
178  mavlink_mount_status_t packet;
179  packet.pointing_a = pointing_a;
180  packet.pointing_b = pointing_b;
181  packet.pointing_c = pointing_c;
182  packet.target_system = target_system;
183  packet.target_component = target_component;
184 
185 #if MAVLINK_CRC_EXTRA
186  _mav_finalize_message_chan_send(chan, MAVLINK_MSG_ID_MOUNT_STATUS, (const char *)&packet, MAVLINK_MSG_ID_MOUNT_STATUS_LEN, MAVLINK_MSG_ID_MOUNT_STATUS_CRC);
187 #else
188  _mav_finalize_message_chan_send(chan, MAVLINK_MSG_ID_MOUNT_STATUS, (const char *)&packet, MAVLINK_MSG_ID_MOUNT_STATUS_LEN);
189 #endif
190 #endif
191 }
192 
193 #if MAVLINK_MSG_ID_MOUNT_STATUS_LEN <= MAVLINK_MAX_PAYLOAD_LEN
194 /*
195  This varient of _send() can be used to save stack space by re-using
196  memory from the receive buffer. The caller provides a
197  mavlink_message_t which is the size of a full mavlink message. This
198  is usually the receive buffer for the channel, and allows a reply to an
199  incoming message with minimum stack space usage.
200  */
201 static inline void mavlink_msg_mount_status_send_buf(mavlink_message_t *msgbuf, mavlink_channel_t chan, uint8_t target_system, uint8_t target_component, int32_t pointing_a, int32_t pointing_b, int32_t pointing_c)
202 {
203 #if MAVLINK_NEED_BYTE_SWAP || !MAVLINK_ALIGNED_FIELDS
204  char *buf = (char *)msgbuf;
205  _mav_put_int32_t(buf, 0, pointing_a);
206  _mav_put_int32_t(buf, 4, pointing_b);
207  _mav_put_int32_t(buf, 8, pointing_c);
208  _mav_put_uint8_t(buf, 12, target_system);
209  _mav_put_uint8_t(buf, 13, target_component);
210 
211 #if MAVLINK_CRC_EXTRA
213 #else
214  _mav_finalize_message_chan_send(chan, MAVLINK_MSG_ID_MOUNT_STATUS, buf, MAVLINK_MSG_ID_MOUNT_STATUS_LEN);
215 #endif
216 #else
218  packet->pointing_a = pointing_a;
219  packet->pointing_b = pointing_b;
220  packet->pointing_c = pointing_c;
221  packet->target_system = target_system;
222  packet->target_component = target_component;
223 
224 #if MAVLINK_CRC_EXTRA
225  _mav_finalize_message_chan_send(chan, MAVLINK_MSG_ID_MOUNT_STATUS, (const char *)packet, MAVLINK_MSG_ID_MOUNT_STATUS_LEN, MAVLINK_MSG_ID_MOUNT_STATUS_CRC);
226 #else
227  _mav_finalize_message_chan_send(chan, MAVLINK_MSG_ID_MOUNT_STATUS, (const char *)packet, MAVLINK_MSG_ID_MOUNT_STATUS_LEN);
228 #endif
229 #endif
230 }
231 #endif
232 
233 #endif
234 
235 // MESSAGE MOUNT_STATUS UNPACKING
236 
237 
243 static inline uint8_t mavlink_msg_mount_status_get_target_system(const mavlink_message_t* msg)
244 {
245  return _MAV_RETURN_uint8_t(msg, 12);
246 }
247 
253 static inline uint8_t mavlink_msg_mount_status_get_target_component(const mavlink_message_t* msg)
254 {
255  return _MAV_RETURN_uint8_t(msg, 13);
256 }
257 
263 static inline int32_t mavlink_msg_mount_status_get_pointing_a(const mavlink_message_t* msg)
264 {
265  return _MAV_RETURN_int32_t(msg, 0);
266 }
267 
273 static inline int32_t mavlink_msg_mount_status_get_pointing_b(const mavlink_message_t* msg)
274 {
275  return _MAV_RETURN_int32_t(msg, 4);
276 }
277 
283 static inline int32_t mavlink_msg_mount_status_get_pointing_c(const mavlink_message_t* msg)
284 {
285  return _MAV_RETURN_int32_t(msg, 8);
286 }
287 
294 static inline void mavlink_msg_mount_status_decode(const mavlink_message_t* msg, mavlink_mount_status_t* mount_status)
295 {
296 #if MAVLINK_NEED_BYTE_SWAP
297  mount_status->pointing_a = mavlink_msg_mount_status_get_pointing_a(msg);
298  mount_status->pointing_b = mavlink_msg_mount_status_get_pointing_b(msg);
299  mount_status->pointing_c = mavlink_msg_mount_status_get_pointing_c(msg);
300  mount_status->target_system = mavlink_msg_mount_status_get_target_system(msg);
301  mount_status->target_component = mavlink_msg_mount_status_get_target_component(msg);
302 #else
303  memcpy(mount_status, _MAV_PAYLOAD(msg), MAVLINK_MSG_ID_MOUNT_STATUS_LEN);
304 #endif
305 }
#define _MAV_RETURN_uint8_t(msg, wire_offset)
Definition: protocol.h:238
#define _mav_put_uint8_t(buf, wire_offset, b)
Definition: protocol.h:134
#define _mav_put_int32_t(buf, wire_offset, b)
Definition: protocol.h:142