MAV'RIC
mavlink_msg_state_correction.h
1 // MESSAGE STATE_CORRECTION PACKING
2 
3 #define MAVLINK_MSG_ID_STATE_CORRECTION 164
4 
6 {
7  float xErr;
8  float yErr;
9  float zErr;
10  float rollErr;
11  float pitchErr;
12  float yawErr;
13  float vxErr;
14  float vyErr;
15  float vzErr;
17 
18 #define MAVLINK_MSG_ID_STATE_CORRECTION_LEN 36
19 #define MAVLINK_MSG_ID_164_LEN 36
20 
21 #define MAVLINK_MSG_ID_STATE_CORRECTION_CRC 130
22 #define MAVLINK_MSG_ID_164_CRC 130
23 
24 
25 
26 #define MAVLINK_MESSAGE_INFO_STATE_CORRECTION { \
27  "STATE_CORRECTION", \
28  9, \
29  { { "xErr", NULL, MAVLINK_TYPE_FLOAT, 0, 0, offsetof(mavlink_state_correction_t, xErr) }, \
30  { "yErr", NULL, MAVLINK_TYPE_FLOAT, 0, 4, offsetof(mavlink_state_correction_t, yErr) }, \
31  { "zErr", NULL, MAVLINK_TYPE_FLOAT, 0, 8, offsetof(mavlink_state_correction_t, zErr) }, \
32  { "rollErr", NULL, MAVLINK_TYPE_FLOAT, 0, 12, offsetof(mavlink_state_correction_t, rollErr) }, \
33  { "pitchErr", NULL, MAVLINK_TYPE_FLOAT, 0, 16, offsetof(mavlink_state_correction_t, pitchErr) }, \
34  { "yawErr", NULL, MAVLINK_TYPE_FLOAT, 0, 20, offsetof(mavlink_state_correction_t, yawErr) }, \
35  { "vxErr", NULL, MAVLINK_TYPE_FLOAT, 0, 24, offsetof(mavlink_state_correction_t, vxErr) }, \
36  { "vyErr", NULL, MAVLINK_TYPE_FLOAT, 0, 28, offsetof(mavlink_state_correction_t, vyErr) }, \
37  { "vzErr", NULL, MAVLINK_TYPE_FLOAT, 0, 32, offsetof(mavlink_state_correction_t, vzErr) }, \
38  } \
39 }
40 
41 
59 static inline uint16_t mavlink_msg_state_correction_pack(uint8_t system_id, uint8_t component_id, mavlink_message_t* msg,
60  float xErr, float yErr, float zErr, float rollErr, float pitchErr, float yawErr, float vxErr, float vyErr, float vzErr)
61 {
62 #if MAVLINK_NEED_BYTE_SWAP || !MAVLINK_ALIGNED_FIELDS
63  char buf[MAVLINK_MSG_ID_STATE_CORRECTION_LEN];
64  _mav_put_float(buf, 0, xErr);
65  _mav_put_float(buf, 4, yErr);
66  _mav_put_float(buf, 8, zErr);
67  _mav_put_float(buf, 12, rollErr);
68  _mav_put_float(buf, 16, pitchErr);
69  _mav_put_float(buf, 20, yawErr);
70  _mav_put_float(buf, 24, vxErr);
71  _mav_put_float(buf, 28, vyErr);
72  _mav_put_float(buf, 32, vzErr);
73 
74  memcpy(_MAV_PAYLOAD_NON_CONST(msg), buf, MAVLINK_MSG_ID_STATE_CORRECTION_LEN);
75 #else
77  packet.xErr = xErr;
78  packet.yErr = yErr;
79  packet.zErr = zErr;
80  packet.rollErr = rollErr;
81  packet.pitchErr = pitchErr;
82  packet.yawErr = yawErr;
83  packet.vxErr = vxErr;
84  packet.vyErr = vyErr;
85  packet.vzErr = vzErr;
86 
87  memcpy(_MAV_PAYLOAD_NON_CONST(msg), &packet, MAVLINK_MSG_ID_STATE_CORRECTION_LEN);
88 #endif
89 
90  msg->msgid = MAVLINK_MSG_ID_STATE_CORRECTION;
91 #if MAVLINK_CRC_EXTRA
92  return mavlink_finalize_message(msg, system_id, component_id, MAVLINK_MSG_ID_STATE_CORRECTION_LEN, MAVLINK_MSG_ID_STATE_CORRECTION_CRC);
93 #else
94  return mavlink_finalize_message(msg, system_id, component_id, MAVLINK_MSG_ID_STATE_CORRECTION_LEN);
95 #endif
96 }
97 
115 static inline uint16_t mavlink_msg_state_correction_pack_chan(uint8_t system_id, uint8_t component_id, uint8_t chan,
116  mavlink_message_t* msg,
117  float xErr,float yErr,float zErr,float rollErr,float pitchErr,float yawErr,float vxErr,float vyErr,float vzErr)
118 {
119 #if MAVLINK_NEED_BYTE_SWAP || !MAVLINK_ALIGNED_FIELDS
120  char buf[MAVLINK_MSG_ID_STATE_CORRECTION_LEN];
121  _mav_put_float(buf, 0, xErr);
122  _mav_put_float(buf, 4, yErr);
123  _mav_put_float(buf, 8, zErr);
124  _mav_put_float(buf, 12, rollErr);
125  _mav_put_float(buf, 16, pitchErr);
126  _mav_put_float(buf, 20, yawErr);
127  _mav_put_float(buf, 24, vxErr);
128  _mav_put_float(buf, 28, vyErr);
129  _mav_put_float(buf, 32, vzErr);
130 
131  memcpy(_MAV_PAYLOAD_NON_CONST(msg), buf, MAVLINK_MSG_ID_STATE_CORRECTION_LEN);
132 #else
134  packet.xErr = xErr;
135  packet.yErr = yErr;
136  packet.zErr = zErr;
137  packet.rollErr = rollErr;
138  packet.pitchErr = pitchErr;
139  packet.yawErr = yawErr;
140  packet.vxErr = vxErr;
141  packet.vyErr = vyErr;
142  packet.vzErr = vzErr;
143 
144  memcpy(_MAV_PAYLOAD_NON_CONST(msg), &packet, MAVLINK_MSG_ID_STATE_CORRECTION_LEN);
145 #endif
146 
147  msg->msgid = MAVLINK_MSG_ID_STATE_CORRECTION;
148 #if MAVLINK_CRC_EXTRA
149  return mavlink_finalize_message_chan(msg, system_id, component_id, chan, MAVLINK_MSG_ID_STATE_CORRECTION_LEN, MAVLINK_MSG_ID_STATE_CORRECTION_CRC);
150 #else
151  return mavlink_finalize_message_chan(msg, system_id, component_id, chan, MAVLINK_MSG_ID_STATE_CORRECTION_LEN);
152 #endif
153 }
154 
163 static inline uint16_t mavlink_msg_state_correction_encode(uint8_t system_id, uint8_t component_id, mavlink_message_t* msg, const mavlink_state_correction_t* state_correction)
164 {
165  return mavlink_msg_state_correction_pack(system_id, component_id, msg, state_correction->xErr, state_correction->yErr, state_correction->zErr, state_correction->rollErr, state_correction->pitchErr, state_correction->yawErr, state_correction->vxErr, state_correction->vyErr, state_correction->vzErr);
166 }
167 
177 static inline uint16_t mavlink_msg_state_correction_encode_chan(uint8_t system_id, uint8_t component_id, uint8_t chan, mavlink_message_t* msg, const mavlink_state_correction_t* state_correction)
178 {
179  return mavlink_msg_state_correction_pack_chan(system_id, component_id, chan, msg, state_correction->xErr, state_correction->yErr, state_correction->zErr, state_correction->rollErr, state_correction->pitchErr, state_correction->yawErr, state_correction->vxErr, state_correction->vyErr, state_correction->vzErr);
180 }
181 
196 #ifdef MAVLINK_USE_CONVENIENCE_FUNCTIONS
197 
198 static inline void mavlink_msg_state_correction_send(mavlink_channel_t chan, float xErr, float yErr, float zErr, float rollErr, float pitchErr, float yawErr, float vxErr, float vyErr, float vzErr)
199 {
200 #if MAVLINK_NEED_BYTE_SWAP || !MAVLINK_ALIGNED_FIELDS
201  char buf[MAVLINK_MSG_ID_STATE_CORRECTION_LEN];
202  _mav_put_float(buf, 0, xErr);
203  _mav_put_float(buf, 4, yErr);
204  _mav_put_float(buf, 8, zErr);
205  _mav_put_float(buf, 12, rollErr);
206  _mav_put_float(buf, 16, pitchErr);
207  _mav_put_float(buf, 20, yawErr);
208  _mav_put_float(buf, 24, vxErr);
209  _mav_put_float(buf, 28, vyErr);
210  _mav_put_float(buf, 32, vzErr);
211 
212 #if MAVLINK_CRC_EXTRA
213  _mav_finalize_message_chan_send(chan, MAVLINK_MSG_ID_STATE_CORRECTION, buf, MAVLINK_MSG_ID_STATE_CORRECTION_LEN, MAVLINK_MSG_ID_STATE_CORRECTION_CRC);
214 #else
215  _mav_finalize_message_chan_send(chan, MAVLINK_MSG_ID_STATE_CORRECTION, buf, MAVLINK_MSG_ID_STATE_CORRECTION_LEN);
216 #endif
217 #else
219  packet.xErr = xErr;
220  packet.yErr = yErr;
221  packet.zErr = zErr;
222  packet.rollErr = rollErr;
223  packet.pitchErr = pitchErr;
224  packet.yawErr = yawErr;
225  packet.vxErr = vxErr;
226  packet.vyErr = vyErr;
227  packet.vzErr = vzErr;
228 
229 #if MAVLINK_CRC_EXTRA
230  _mav_finalize_message_chan_send(chan, MAVLINK_MSG_ID_STATE_CORRECTION, (const char *)&packet, MAVLINK_MSG_ID_STATE_CORRECTION_LEN, MAVLINK_MSG_ID_STATE_CORRECTION_CRC);
231 #else
232  _mav_finalize_message_chan_send(chan, MAVLINK_MSG_ID_STATE_CORRECTION, (const char *)&packet, MAVLINK_MSG_ID_STATE_CORRECTION_LEN);
233 #endif
234 #endif
235 }
236 
237 #if MAVLINK_MSG_ID_STATE_CORRECTION_LEN <= MAVLINK_MAX_PAYLOAD_LEN
238 /*
239  This varient of _send() can be used to save stack space by re-using
240  memory from the receive buffer. The caller provides a
241  mavlink_message_t which is the size of a full mavlink message. This
242  is usually the receive buffer for the channel, and allows a reply to an
243  incoming message with minimum stack space usage.
244  */
245 static inline void mavlink_msg_state_correction_send_buf(mavlink_message_t *msgbuf, mavlink_channel_t chan, float xErr, float yErr, float zErr, float rollErr, float pitchErr, float yawErr, float vxErr, float vyErr, float vzErr)
246 {
247 #if MAVLINK_NEED_BYTE_SWAP || !MAVLINK_ALIGNED_FIELDS
248  char *buf = (char *)msgbuf;
249  _mav_put_float(buf, 0, xErr);
250  _mav_put_float(buf, 4, yErr);
251  _mav_put_float(buf, 8, zErr);
252  _mav_put_float(buf, 12, rollErr);
253  _mav_put_float(buf, 16, pitchErr);
254  _mav_put_float(buf, 20, yawErr);
255  _mav_put_float(buf, 24, vxErr);
256  _mav_put_float(buf, 28, vyErr);
257  _mav_put_float(buf, 32, vzErr);
258 
259 #if MAVLINK_CRC_EXTRA
260  _mav_finalize_message_chan_send(chan, MAVLINK_MSG_ID_STATE_CORRECTION, buf, MAVLINK_MSG_ID_STATE_CORRECTION_LEN, MAVLINK_MSG_ID_STATE_CORRECTION_CRC);
261 #else
262  _mav_finalize_message_chan_send(chan, MAVLINK_MSG_ID_STATE_CORRECTION, buf, MAVLINK_MSG_ID_STATE_CORRECTION_LEN);
263 #endif
264 #else
266  packet->xErr = xErr;
267  packet->yErr = yErr;
268  packet->zErr = zErr;
269  packet->rollErr = rollErr;
270  packet->pitchErr = pitchErr;
271  packet->yawErr = yawErr;
272  packet->vxErr = vxErr;
273  packet->vyErr = vyErr;
274  packet->vzErr = vzErr;
275 
276 #if MAVLINK_CRC_EXTRA
277  _mav_finalize_message_chan_send(chan, MAVLINK_MSG_ID_STATE_CORRECTION, (const char *)packet, MAVLINK_MSG_ID_STATE_CORRECTION_LEN, MAVLINK_MSG_ID_STATE_CORRECTION_CRC);
278 #else
279  _mav_finalize_message_chan_send(chan, MAVLINK_MSG_ID_STATE_CORRECTION, (const char *)packet, MAVLINK_MSG_ID_STATE_CORRECTION_LEN);
280 #endif
281 #endif
282 }
283 #endif
284 
285 #endif
286 
287 // MESSAGE STATE_CORRECTION UNPACKING
288 
289 
295 static inline float mavlink_msg_state_correction_get_xErr(const mavlink_message_t* msg)
296 {
297  return _MAV_RETURN_float(msg, 0);
298 }
299 
305 static inline float mavlink_msg_state_correction_get_yErr(const mavlink_message_t* msg)
306 {
307  return _MAV_RETURN_float(msg, 4);
308 }
309 
315 static inline float mavlink_msg_state_correction_get_zErr(const mavlink_message_t* msg)
316 {
317  return _MAV_RETURN_float(msg, 8);
318 }
319 
325 static inline float mavlink_msg_state_correction_get_rollErr(const mavlink_message_t* msg)
326 {
327  return _MAV_RETURN_float(msg, 12);
328 }
329 
335 static inline float mavlink_msg_state_correction_get_pitchErr(const mavlink_message_t* msg)
336 {
337  return _MAV_RETURN_float(msg, 16);
338 }
339 
345 static inline float mavlink_msg_state_correction_get_yawErr(const mavlink_message_t* msg)
346 {
347  return _MAV_RETURN_float(msg, 20);
348 }
349 
355 static inline float mavlink_msg_state_correction_get_vxErr(const mavlink_message_t* msg)
356 {
357  return _MAV_RETURN_float(msg, 24);
358 }
359 
365 static inline float mavlink_msg_state_correction_get_vyErr(const mavlink_message_t* msg)
366 {
367  return _MAV_RETURN_float(msg, 28);
368 }
369 
375 static inline float mavlink_msg_state_correction_get_vzErr(const mavlink_message_t* msg)
376 {
377  return _MAV_RETURN_float(msg, 32);
378 }
379 
386 static inline void mavlink_msg_state_correction_decode(const mavlink_message_t* msg, mavlink_state_correction_t* state_correction)
387 {
388 #if MAVLINK_NEED_BYTE_SWAP
389  state_correction->xErr = mavlink_msg_state_correction_get_xErr(msg);
390  state_correction->yErr = mavlink_msg_state_correction_get_yErr(msg);
391  state_correction->zErr = mavlink_msg_state_correction_get_zErr(msg);
392  state_correction->rollErr = mavlink_msg_state_correction_get_rollErr(msg);
393  state_correction->pitchErr = mavlink_msg_state_correction_get_pitchErr(msg);
394  state_correction->yawErr = mavlink_msg_state_correction_get_yawErr(msg);
395  state_correction->vxErr = mavlink_msg_state_correction_get_vxErr(msg);
396  state_correction->vyErr = mavlink_msg_state_correction_get_vyErr(msg);
397  state_correction->vzErr = mavlink_msg_state_correction_get_vzErr(msg);
398 #else
399  memcpy(state_correction, _MAV_PAYLOAD(msg), MAVLINK_MSG_ID_STATE_CORRECTION_LEN);
400 #endif
401 }