NinjaFlight
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
mavlink_msg_raw_pressure.h
Go to the documentation of this file.
1 // MESSAGE RAW_PRESSURE PACKING
2 
3 #define MAVLINK_MSG_ID_RAW_PRESSURE 28
4 
6 {
7  uint64_t time_usec;
8  int16_t press_abs;
9  int16_t press_diff1;
10  int16_t press_diff2;
11  int16_t temperature;
13 
14 #define MAVLINK_MSG_ID_RAW_PRESSURE_LEN 16
15 #define MAVLINK_MSG_ID_28_LEN 16
16 
17 #define MAVLINK_MSG_ID_RAW_PRESSURE_CRC 67
18 #define MAVLINK_MSG_ID_28_CRC 67
19 
20 
21 
22 #define MAVLINK_MESSAGE_INFO_RAW_PRESSURE { \
23  "RAW_PRESSURE", \
24  5, \
25  { { "time_usec", NULL, MAVLINK_TYPE_UINT64_T, 0, 0, offsetof(mavlink_raw_pressure_t, time_usec) }, \
26  { "press_abs", NULL, MAVLINK_TYPE_INT16_T, 0, 8, offsetof(mavlink_raw_pressure_t, press_abs) }, \
27  { "press_diff1", NULL, MAVLINK_TYPE_INT16_T, 0, 10, offsetof(mavlink_raw_pressure_t, press_diff1) }, \
28  { "press_diff2", NULL, MAVLINK_TYPE_INT16_T, 0, 12, offsetof(mavlink_raw_pressure_t, press_diff2) }, \
29  { "temperature", NULL, MAVLINK_TYPE_INT16_T, 0, 14, offsetof(mavlink_raw_pressure_t, temperature) }, \
30  } \
31 }
32 
33 
47 static inline uint16_t mavlink_msg_raw_pressure_pack(uint8_t system_id, uint8_t component_id, mavlink_message_t* msg,
48  uint64_t time_usec, int16_t press_abs, int16_t press_diff1, int16_t press_diff2, int16_t temperature)
49 {
50 #if MAVLINK_NEED_BYTE_SWAP || !MAVLINK_ALIGNED_FIELDS
52  _mav_put_uint64_t(buf, 0, time_usec);
53  _mav_put_int16_t(buf, 8, press_abs);
54  _mav_put_int16_t(buf, 10, press_diff1);
55  _mav_put_int16_t(buf, 12, press_diff2);
56  _mav_put_int16_t(buf, 14, temperature);
57 
59 #else
61  packet.time_usec = time_usec;
62  packet.press_abs = press_abs;
63  packet.press_diff1 = press_diff1;
64  packet.press_diff2 = press_diff2;
65  packet.temperature = temperature;
66 
68 #endif
69 
70  msg->msgid = MAVLINK_MSG_ID_RAW_PRESSURE;
71 #if MAVLINK_CRC_EXTRA
73 #else
74  return mavlink_finalize_message(msg, system_id, component_id, MAVLINK_MSG_ID_RAW_PRESSURE_LEN);
75 #endif
76 }
77 
91 static inline uint16_t mavlink_msg_raw_pressure_pack_chan(uint8_t system_id, uint8_t component_id, uint8_t chan,
92  mavlink_message_t* msg,
93  uint64_t time_usec,int16_t press_abs,int16_t press_diff1,int16_t press_diff2,int16_t temperature)
94 {
95 #if MAVLINK_NEED_BYTE_SWAP || !MAVLINK_ALIGNED_FIELDS
97  _mav_put_uint64_t(buf, 0, time_usec);
98  _mav_put_int16_t(buf, 8, press_abs);
99  _mav_put_int16_t(buf, 10, press_diff1);
100  _mav_put_int16_t(buf, 12, press_diff2);
101  _mav_put_int16_t(buf, 14, temperature);
102 
104 #else
105  mavlink_raw_pressure_t packet;
106  packet.time_usec = time_usec;
107  packet.press_abs = press_abs;
108  packet.press_diff1 = press_diff1;
109  packet.press_diff2 = press_diff2;
110  packet.temperature = temperature;
111 
113 #endif
114 
115  msg->msgid = MAVLINK_MSG_ID_RAW_PRESSURE;
116 #if MAVLINK_CRC_EXTRA
118 #else
119  return mavlink_finalize_message_chan(msg, system_id, component_id, chan, MAVLINK_MSG_ID_RAW_PRESSURE_LEN);
120 #endif
121 }
122 
131 static inline uint16_t mavlink_msg_raw_pressure_encode(uint8_t system_id, uint8_t component_id, mavlink_message_t* msg, const mavlink_raw_pressure_t* raw_pressure)
132 {
133  return mavlink_msg_raw_pressure_pack(system_id, component_id, msg, raw_pressure->time_usec, raw_pressure->press_abs, raw_pressure->press_diff1, raw_pressure->press_diff2, raw_pressure->temperature);
134 }
135 
145 static inline uint16_t mavlink_msg_raw_pressure_encode_chan(uint8_t system_id, uint8_t component_id, uint8_t chan, mavlink_message_t* msg, const mavlink_raw_pressure_t* raw_pressure)
146 {
147  return mavlink_msg_raw_pressure_pack_chan(system_id, component_id, chan, msg, raw_pressure->time_usec, raw_pressure->press_abs, raw_pressure->press_diff1, raw_pressure->press_diff2, raw_pressure->temperature);
148 }
149 
160 #ifdef MAVLINK_USE_CONVENIENCE_FUNCTIONS
161 
162 static inline void mavlink_msg_raw_pressure_send(mavlink_channel_t chan, uint64_t time_usec, int16_t press_abs, int16_t press_diff1, int16_t press_diff2, int16_t temperature)
163 {
164 #if MAVLINK_NEED_BYTE_SWAP || !MAVLINK_ALIGNED_FIELDS
166  _mav_put_uint64_t(buf, 0, time_usec);
167  _mav_put_int16_t(buf, 8, press_abs);
168  _mav_put_int16_t(buf, 10, press_diff1);
169  _mav_put_int16_t(buf, 12, press_diff2);
170  _mav_put_int16_t(buf, 14, temperature);
171 
172 #if MAVLINK_CRC_EXTRA
174 #else
175  _mav_finalize_message_chan_send(chan, MAVLINK_MSG_ID_RAW_PRESSURE, buf, MAVLINK_MSG_ID_RAW_PRESSURE_LEN);
176 #endif
177 #else
178  mavlink_raw_pressure_t packet;
179  packet.time_usec = time_usec;
180  packet.press_abs = press_abs;
181  packet.press_diff1 = press_diff1;
182  packet.press_diff2 = press_diff2;
183  packet.temperature = temperature;
184 
185 #if MAVLINK_CRC_EXTRA
186  _mav_finalize_message_chan_send(chan, MAVLINK_MSG_ID_RAW_PRESSURE, (const char *)&packet, MAVLINK_MSG_ID_RAW_PRESSURE_LEN, MAVLINK_MSG_ID_RAW_PRESSURE_CRC);
187 #else
188  _mav_finalize_message_chan_send(chan, MAVLINK_MSG_ID_RAW_PRESSURE, (const char *)&packet, MAVLINK_MSG_ID_RAW_PRESSURE_LEN);
189 #endif
190 #endif
191 }
192 
193 #if MAVLINK_MSG_ID_RAW_PRESSURE_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_raw_pressure_send_buf(mavlink_message_t *msgbuf, mavlink_channel_t chan, uint64_t time_usec, int16_t press_abs, int16_t press_diff1, int16_t press_diff2, int16_t temperature)
202 {
203 #if MAVLINK_NEED_BYTE_SWAP || !MAVLINK_ALIGNED_FIELDS
204  char *buf = (char *)msgbuf;
205  _mav_put_uint64_t(buf, 0, time_usec);
206  _mav_put_int16_t(buf, 8, press_abs);
207  _mav_put_int16_t(buf, 10, press_diff1);
208  _mav_put_int16_t(buf, 12, press_diff2);
209  _mav_put_int16_t(buf, 14, temperature);
210 
211 #if MAVLINK_CRC_EXTRA
213 #else
214  _mav_finalize_message_chan_send(chan, MAVLINK_MSG_ID_RAW_PRESSURE, buf, MAVLINK_MSG_ID_RAW_PRESSURE_LEN);
215 #endif
216 #else
218  packet->time_usec = time_usec;
219  packet->press_abs = press_abs;
220  packet->press_diff1 = press_diff1;
221  packet->press_diff2 = press_diff2;
222  packet->temperature = temperature;
223 
224 #if MAVLINK_CRC_EXTRA
225  _mav_finalize_message_chan_send(chan, MAVLINK_MSG_ID_RAW_PRESSURE, (const char *)packet, MAVLINK_MSG_ID_RAW_PRESSURE_LEN, MAVLINK_MSG_ID_RAW_PRESSURE_CRC);
226 #else
227  _mav_finalize_message_chan_send(chan, MAVLINK_MSG_ID_RAW_PRESSURE, (const char *)packet, MAVLINK_MSG_ID_RAW_PRESSURE_LEN);
228 #endif
229 #endif
230 }
231 #endif
232 
233 #endif
234 
235 // MESSAGE RAW_PRESSURE UNPACKING
236 
237 
243 static inline uint64_t mavlink_msg_raw_pressure_get_time_usec(const mavlink_message_t* msg)
244 {
245  return _MAV_RETURN_uint64_t(msg, 0);
246 }
247 
253 static inline int16_t mavlink_msg_raw_pressure_get_press_abs(const mavlink_message_t* msg)
254 {
255  return _MAV_RETURN_int16_t(msg, 8);
256 }
257 
263 static inline int16_t mavlink_msg_raw_pressure_get_press_diff1(const mavlink_message_t* msg)
264 {
265  return _MAV_RETURN_int16_t(msg, 10);
266 }
267 
273 static inline int16_t mavlink_msg_raw_pressure_get_press_diff2(const mavlink_message_t* msg)
274 {
275  return _MAV_RETURN_int16_t(msg, 12);
276 }
277 
283 static inline int16_t mavlink_msg_raw_pressure_get_temperature(const mavlink_message_t* msg)
284 {
285  return _MAV_RETURN_int16_t(msg, 14);
286 }
287 
294 static inline void mavlink_msg_raw_pressure_decode(const mavlink_message_t* msg, mavlink_raw_pressure_t* raw_pressure)
295 {
296 #if MAVLINK_NEED_BYTE_SWAP
297  raw_pressure->time_usec = mavlink_msg_raw_pressure_get_time_usec(msg);
298  raw_pressure->press_abs = mavlink_msg_raw_pressure_get_press_abs(msg);
299  raw_pressure->press_diff1 = mavlink_msg_raw_pressure_get_press_diff1(msg);
300  raw_pressure->press_diff2 = mavlink_msg_raw_pressure_get_press_diff2(msg);
301  raw_pressure->temperature = mavlink_msg_raw_pressure_get_temperature(msg);
302 #else
303  memcpy(raw_pressure, _MAV_PAYLOAD(msg), MAVLINK_MSG_ID_RAW_PRESSURE_LEN);
304 #endif
305 }
#define _mav_put_uint64_t(buf, wire_offset, b)
Definition: protocol.h:143
#define _mav_put_int16_t(buf, wire_offset, b)
Definition: protocol.h:140