NinjaFlight
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
mavlink_msg_aq_esc_telemetry.h
Go to the documentation of this file.
1 // MESSAGE AQ_ESC_TELEMETRY PACKING
2 
3 #define MAVLINK_MSG_ID_AQ_ESC_TELEMETRY 152
4 
6 {
7  uint32_t time_boot_ms;
8  uint32_t data0[4];
9  uint32_t data1[4];
10  uint16_t status_age[4];
11  uint8_t seq;
12  uint8_t num_motors;
13  uint8_t num_in_seq;
14  uint8_t escid[4];
15  uint8_t data_version[4];
17 
18 #define MAVLINK_MSG_ID_AQ_ESC_TELEMETRY_LEN 55
19 #define MAVLINK_MSG_ID_152_LEN 55
20 
21 #define MAVLINK_MSG_ID_AQ_ESC_TELEMETRY_CRC 115
22 #define MAVLINK_MSG_ID_152_CRC 115
23 
24 #define MAVLINK_MSG_AQ_ESC_TELEMETRY_FIELD_DATA0_LEN 4
25 #define MAVLINK_MSG_AQ_ESC_TELEMETRY_FIELD_DATA1_LEN 4
26 #define MAVLINK_MSG_AQ_ESC_TELEMETRY_FIELD_STATUS_AGE_LEN 4
27 #define MAVLINK_MSG_AQ_ESC_TELEMETRY_FIELD_ESCID_LEN 4
28 #define MAVLINK_MSG_AQ_ESC_TELEMETRY_FIELD_DATA_VERSION_LEN 4
29 
30 #define MAVLINK_MESSAGE_INFO_AQ_ESC_TELEMETRY { \
31  "AQ_ESC_TELEMETRY", \
32  9, \
33  { { "time_boot_ms", NULL, MAVLINK_TYPE_UINT32_T, 0, 0, offsetof(mavlink_aq_esc_telemetry_t, time_boot_ms) }, \
34  { "data0", NULL, MAVLINK_TYPE_UINT32_T, 4, 4, offsetof(mavlink_aq_esc_telemetry_t, data0) }, \
35  { "data1", NULL, MAVLINK_TYPE_UINT32_T, 4, 20, offsetof(mavlink_aq_esc_telemetry_t, data1) }, \
36  { "status_age", NULL, MAVLINK_TYPE_UINT16_T, 4, 36, offsetof(mavlink_aq_esc_telemetry_t, status_age) }, \
37  { "seq", NULL, MAVLINK_TYPE_UINT8_T, 0, 44, offsetof(mavlink_aq_esc_telemetry_t, seq) }, \
38  { "num_motors", NULL, MAVLINK_TYPE_UINT8_T, 0, 45, offsetof(mavlink_aq_esc_telemetry_t, num_motors) }, \
39  { "num_in_seq", NULL, MAVLINK_TYPE_UINT8_T, 0, 46, offsetof(mavlink_aq_esc_telemetry_t, num_in_seq) }, \
40  { "escid", NULL, MAVLINK_TYPE_UINT8_T, 4, 47, offsetof(mavlink_aq_esc_telemetry_t, escid) }, \
41  { "data_version", NULL, MAVLINK_TYPE_UINT8_T, 4, 51, offsetof(mavlink_aq_esc_telemetry_t, data_version) }, \
42  } \
43 }
44 
45 
63 static inline uint16_t mavlink_msg_aq_esc_telemetry_pack(uint8_t system_id, uint8_t component_id, mavlink_message_t* msg,
64  uint32_t time_boot_ms, uint8_t seq, uint8_t num_motors, uint8_t num_in_seq, const uint8_t *escid, const uint16_t *status_age, const uint8_t *data_version, const uint32_t *data0, const uint32_t *data1)
65 {
66 #if MAVLINK_NEED_BYTE_SWAP || !MAVLINK_ALIGNED_FIELDS
68  _mav_put_uint32_t(buf, 0, time_boot_ms);
69  _mav_put_uint8_t(buf, 44, seq);
70  _mav_put_uint8_t(buf, 45, num_motors);
71  _mav_put_uint8_t(buf, 46, num_in_seq);
72  _mav_put_uint32_t_array(buf, 4, data0, 4);
73  _mav_put_uint32_t_array(buf, 20, data1, 4);
74  _mav_put_uint16_t_array(buf, 36, status_age, 4);
75  _mav_put_uint8_t_array(buf, 47, escid, 4);
76  _mav_put_uint8_t_array(buf, 51, data_version, 4);
78 #else
80  packet.time_boot_ms = time_boot_ms;
81  packet.seq = seq;
82  packet.num_motors = num_motors;
83  packet.num_in_seq = num_in_seq;
84  mav_array_memcpy(packet.data0, data0, sizeof(uint32_t)*4);
85  mav_array_memcpy(packet.data1, data1, sizeof(uint32_t)*4);
86  mav_array_memcpy(packet.status_age, status_age, sizeof(uint16_t)*4);
87  mav_array_memcpy(packet.escid, escid, sizeof(uint8_t)*4);
88  mav_array_memcpy(packet.data_version, data_version, sizeof(uint8_t)*4);
90 #endif
91 
93 #if MAVLINK_CRC_EXTRA
95 #else
96  return mavlink_finalize_message(msg, system_id, component_id, MAVLINK_MSG_ID_AQ_ESC_TELEMETRY_LEN);
97 #endif
98 }
99 
117 static inline uint16_t mavlink_msg_aq_esc_telemetry_pack_chan(uint8_t system_id, uint8_t component_id, uint8_t chan,
118  mavlink_message_t* msg,
119  uint32_t time_boot_ms,uint8_t seq,uint8_t num_motors,uint8_t num_in_seq,const uint8_t *escid,const uint16_t *status_age,const uint8_t *data_version,const uint32_t *data0,const uint32_t *data1)
120 {
121 #if MAVLINK_NEED_BYTE_SWAP || !MAVLINK_ALIGNED_FIELDS
123  _mav_put_uint32_t(buf, 0, time_boot_ms);
124  _mav_put_uint8_t(buf, 44, seq);
125  _mav_put_uint8_t(buf, 45, num_motors);
126  _mav_put_uint8_t(buf, 46, num_in_seq);
127  _mav_put_uint32_t_array(buf, 4, data0, 4);
128  _mav_put_uint32_t_array(buf, 20, data1, 4);
129  _mav_put_uint16_t_array(buf, 36, status_age, 4);
130  _mav_put_uint8_t_array(buf, 47, escid, 4);
131  _mav_put_uint8_t_array(buf, 51, data_version, 4);
133 #else
135  packet.time_boot_ms = time_boot_ms;
136  packet.seq = seq;
137  packet.num_motors = num_motors;
138  packet.num_in_seq = num_in_seq;
139  mav_array_memcpy(packet.data0, data0, sizeof(uint32_t)*4);
140  mav_array_memcpy(packet.data1, data1, sizeof(uint32_t)*4);
141  mav_array_memcpy(packet.status_age, status_age, sizeof(uint16_t)*4);
142  mav_array_memcpy(packet.escid, escid, sizeof(uint8_t)*4);
143  mav_array_memcpy(packet.data_version, data_version, sizeof(uint8_t)*4);
145 #endif
146 
147  msg->msgid = MAVLINK_MSG_ID_AQ_ESC_TELEMETRY;
148 #if MAVLINK_CRC_EXTRA
150 #else
151  return mavlink_finalize_message_chan(msg, system_id, component_id, chan, MAVLINK_MSG_ID_AQ_ESC_TELEMETRY_LEN);
152 #endif
153 }
154 
163 static inline uint16_t mavlink_msg_aq_esc_telemetry_encode(uint8_t system_id, uint8_t component_id, mavlink_message_t* msg, const mavlink_aq_esc_telemetry_t* aq_esc_telemetry)
164 {
165  return mavlink_msg_aq_esc_telemetry_pack(system_id, component_id, msg, aq_esc_telemetry->time_boot_ms, aq_esc_telemetry->seq, aq_esc_telemetry->num_motors, aq_esc_telemetry->num_in_seq, aq_esc_telemetry->escid, aq_esc_telemetry->status_age, aq_esc_telemetry->data_version, aq_esc_telemetry->data0, aq_esc_telemetry->data1);
166 }
167 
177 static inline uint16_t mavlink_msg_aq_esc_telemetry_encode_chan(uint8_t system_id, uint8_t component_id, uint8_t chan, mavlink_message_t* msg, const mavlink_aq_esc_telemetry_t* aq_esc_telemetry)
178 {
179  return mavlink_msg_aq_esc_telemetry_pack_chan(system_id, component_id, chan, msg, aq_esc_telemetry->time_boot_ms, aq_esc_telemetry->seq, aq_esc_telemetry->num_motors, aq_esc_telemetry->num_in_seq, aq_esc_telemetry->escid, aq_esc_telemetry->status_age, aq_esc_telemetry->data_version, aq_esc_telemetry->data0, aq_esc_telemetry->data1);
180 }
181 
196 #ifdef MAVLINK_USE_CONVENIENCE_FUNCTIONS
197 
198 static inline void mavlink_msg_aq_esc_telemetry_send(mavlink_channel_t chan, uint32_t time_boot_ms, uint8_t seq, uint8_t num_motors, uint8_t num_in_seq, const uint8_t *escid, const uint16_t *status_age, const uint8_t *data_version, const uint32_t *data0, const uint32_t *data1)
199 {
200 #if MAVLINK_NEED_BYTE_SWAP || !MAVLINK_ALIGNED_FIELDS
202  _mav_put_uint32_t(buf, 0, time_boot_ms);
203  _mav_put_uint8_t(buf, 44, seq);
204  _mav_put_uint8_t(buf, 45, num_motors);
205  _mav_put_uint8_t(buf, 46, num_in_seq);
206  _mav_put_uint32_t_array(buf, 4, data0, 4);
207  _mav_put_uint32_t_array(buf, 20, data1, 4);
208  _mav_put_uint16_t_array(buf, 36, status_age, 4);
209  _mav_put_uint8_t_array(buf, 47, escid, 4);
210  _mav_put_uint8_t_array(buf, 51, data_version, 4);
211 #if MAVLINK_CRC_EXTRA
213 #else
214  _mav_finalize_message_chan_send(chan, MAVLINK_MSG_ID_AQ_ESC_TELEMETRY, buf, MAVLINK_MSG_ID_AQ_ESC_TELEMETRY_LEN);
215 #endif
216 #else
218  packet.time_boot_ms = time_boot_ms;
219  packet.seq = seq;
220  packet.num_motors = num_motors;
221  packet.num_in_seq = num_in_seq;
222  mav_array_memcpy(packet.data0, data0, sizeof(uint32_t)*4);
223  mav_array_memcpy(packet.data1, data1, sizeof(uint32_t)*4);
224  mav_array_memcpy(packet.status_age, status_age, sizeof(uint16_t)*4);
225  mav_array_memcpy(packet.escid, escid, sizeof(uint8_t)*4);
226  mav_array_memcpy(packet.data_version, data_version, sizeof(uint8_t)*4);
227 #if MAVLINK_CRC_EXTRA
228  _mav_finalize_message_chan_send(chan, MAVLINK_MSG_ID_AQ_ESC_TELEMETRY, (const char *)&packet, MAVLINK_MSG_ID_AQ_ESC_TELEMETRY_LEN, MAVLINK_MSG_ID_AQ_ESC_TELEMETRY_CRC);
229 #else
230  _mav_finalize_message_chan_send(chan, MAVLINK_MSG_ID_AQ_ESC_TELEMETRY, (const char *)&packet, MAVLINK_MSG_ID_AQ_ESC_TELEMETRY_LEN);
231 #endif
232 #endif
233 }
234 
235 #if MAVLINK_MSG_ID_AQ_ESC_TELEMETRY_LEN <= MAVLINK_MAX_PAYLOAD_LEN
236 /*
237  This varient of _send() can be used to save stack space by re-using
238  memory from the receive buffer. The caller provides a
239  mavlink_message_t which is the size of a full mavlink message. This
240  is usually the receive buffer for the channel, and allows a reply to an
241  incoming message with minimum stack space usage.
242  */
243 static inline void mavlink_msg_aq_esc_telemetry_send_buf(mavlink_message_t *msgbuf, mavlink_channel_t chan, uint32_t time_boot_ms, uint8_t seq, uint8_t num_motors, uint8_t num_in_seq, const uint8_t *escid, const uint16_t *status_age, const uint8_t *data_version, const uint32_t *data0, const uint32_t *data1)
244 {
245 #if MAVLINK_NEED_BYTE_SWAP || !MAVLINK_ALIGNED_FIELDS
246  char *buf = (char *)msgbuf;
247  _mav_put_uint32_t(buf, 0, time_boot_ms);
248  _mav_put_uint8_t(buf, 44, seq);
249  _mav_put_uint8_t(buf, 45, num_motors);
250  _mav_put_uint8_t(buf, 46, num_in_seq);
251  _mav_put_uint32_t_array(buf, 4, data0, 4);
252  _mav_put_uint32_t_array(buf, 20, data1, 4);
253  _mav_put_uint16_t_array(buf, 36, status_age, 4);
254  _mav_put_uint8_t_array(buf, 47, escid, 4);
255  _mav_put_uint8_t_array(buf, 51, data_version, 4);
256 #if MAVLINK_CRC_EXTRA
258 #else
259  _mav_finalize_message_chan_send(chan, MAVLINK_MSG_ID_AQ_ESC_TELEMETRY, buf, MAVLINK_MSG_ID_AQ_ESC_TELEMETRY_LEN);
260 #endif
261 #else
263  packet->time_boot_ms = time_boot_ms;
264  packet->seq = seq;
265  packet->num_motors = num_motors;
266  packet->num_in_seq = num_in_seq;
267  mav_array_memcpy(packet->data0, data0, sizeof(uint32_t)*4);
268  mav_array_memcpy(packet->data1, data1, sizeof(uint32_t)*4);
269  mav_array_memcpy(packet->status_age, status_age, sizeof(uint16_t)*4);
270  mav_array_memcpy(packet->escid, escid, sizeof(uint8_t)*4);
271  mav_array_memcpy(packet->data_version, data_version, sizeof(uint8_t)*4);
272 #if MAVLINK_CRC_EXTRA
273  _mav_finalize_message_chan_send(chan, MAVLINK_MSG_ID_AQ_ESC_TELEMETRY, (const char *)packet, MAVLINK_MSG_ID_AQ_ESC_TELEMETRY_LEN, MAVLINK_MSG_ID_AQ_ESC_TELEMETRY_CRC);
274 #else
275  _mav_finalize_message_chan_send(chan, MAVLINK_MSG_ID_AQ_ESC_TELEMETRY, (const char *)packet, MAVLINK_MSG_ID_AQ_ESC_TELEMETRY_LEN);
276 #endif
277 #endif
278 }
279 #endif
280 
281 #endif
282 
283 // MESSAGE AQ_ESC_TELEMETRY UNPACKING
284 
285 
291 static inline uint32_t mavlink_msg_aq_esc_telemetry_get_time_boot_ms(const mavlink_message_t* msg)
292 {
293  return _MAV_RETURN_uint32_t(msg, 0);
294 }
295 
301 static inline uint8_t mavlink_msg_aq_esc_telemetry_get_seq(const mavlink_message_t* msg)
302 {
303  return _MAV_RETURN_uint8_t(msg, 44);
304 }
305 
311 static inline uint8_t mavlink_msg_aq_esc_telemetry_get_num_motors(const mavlink_message_t* msg)
312 {
313  return _MAV_RETURN_uint8_t(msg, 45);
314 }
315 
321 static inline uint8_t mavlink_msg_aq_esc_telemetry_get_num_in_seq(const mavlink_message_t* msg)
322 {
323  return _MAV_RETURN_uint8_t(msg, 46);
324 }
325 
331 static inline uint16_t mavlink_msg_aq_esc_telemetry_get_escid(const mavlink_message_t* msg, uint8_t *escid)
332 {
333  return _MAV_RETURN_uint8_t_array(msg, escid, 4, 47);
334 }
335 
341 static inline uint16_t mavlink_msg_aq_esc_telemetry_get_status_age(const mavlink_message_t* msg, uint16_t *status_age)
342 {
343  return _MAV_RETURN_uint16_t_array(msg, status_age, 4, 36);
344 }
345 
351 static inline uint16_t mavlink_msg_aq_esc_telemetry_get_data_version(const mavlink_message_t* msg, uint8_t *data_version)
352 {
353  return _MAV_RETURN_uint8_t_array(msg, data_version, 4, 51);
354 }
355 
361 static inline uint16_t mavlink_msg_aq_esc_telemetry_get_data0(const mavlink_message_t* msg, uint32_t *data0)
362 {
363  return _MAV_RETURN_uint32_t_array(msg, data0, 4, 4);
364 }
365 
371 static inline uint16_t mavlink_msg_aq_esc_telemetry_get_data1(const mavlink_message_t* msg, uint32_t *data1)
372 {
373  return _MAV_RETURN_uint32_t_array(msg, data1, 4, 20);
374 }
375 
382 static inline void mavlink_msg_aq_esc_telemetry_decode(const mavlink_message_t* msg, mavlink_aq_esc_telemetry_t* aq_esc_telemetry)
383 {
384 #if MAVLINK_NEED_BYTE_SWAP
385  aq_esc_telemetry->time_boot_ms = mavlink_msg_aq_esc_telemetry_get_time_boot_ms(msg);
386  mavlink_msg_aq_esc_telemetry_get_data0(msg, aq_esc_telemetry->data0);
387  mavlink_msg_aq_esc_telemetry_get_data1(msg, aq_esc_telemetry->data1);
388  mavlink_msg_aq_esc_telemetry_get_status_age(msg, aq_esc_telemetry->status_age);
389  aq_esc_telemetry->seq = mavlink_msg_aq_esc_telemetry_get_seq(msg);
390  aq_esc_telemetry->num_motors = mavlink_msg_aq_esc_telemetry_get_num_motors(msg);
391  aq_esc_telemetry->num_in_seq = mavlink_msg_aq_esc_telemetry_get_num_in_seq(msg);
392  mavlink_msg_aq_esc_telemetry_get_escid(msg, aq_esc_telemetry->escid);
393  mavlink_msg_aq_esc_telemetry_get_data_version(msg, aq_esc_telemetry->data_version);
394 #else
395  memcpy(aq_esc_telemetry, _MAV_PAYLOAD(msg), MAVLINK_MSG_ID_AQ_ESC_TELEMETRY_LEN);
396 #endif
397 }
#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_uint32_t(buf, wire_offset, b)
Definition: protocol.h:141