MAV'RIC
mavlink_msg_radar_raw_data.h
1 // MESSAGE RADAR_RAW_DATA PACKING
2 
3 #define MAVLINK_MSG_ID_RADAR_RAW_DATA 152
4 
6 {
7  uint32_t time_boot_ms;
8  int16_t values[64];
9  uint8_t sensor_id;
11 
12 #define MAVLINK_MSG_ID_RADAR_RAW_DATA_LEN 133
13 #define MAVLINK_MSG_ID_152_LEN 133
14 
15 #define MAVLINK_MSG_ID_RADAR_RAW_DATA_CRC 213
16 #define MAVLINK_MSG_ID_152_CRC 213
17 
18 #define MAVLINK_MSG_RADAR_RAW_DATA_FIELD_VALUES_LEN 64
19 
20 #define MAVLINK_MESSAGE_INFO_RADAR_RAW_DATA { \
21  "RADAR_RAW_DATA", \
22  3, \
23  { { "time_boot_ms", NULL, MAVLINK_TYPE_UINT32_T, 0, 0, offsetof(mavlink_radar_raw_data_t, time_boot_ms) }, \
24  { "values", NULL, MAVLINK_TYPE_INT16_T, 64, 4, offsetof(mavlink_radar_raw_data_t, values) }, \
25  { "sensor_id", NULL, MAVLINK_TYPE_UINT8_T, 0, 132, offsetof(mavlink_radar_raw_data_t, sensor_id) }, \
26  } \
27 }
28 
29 
41 static inline uint16_t mavlink_msg_radar_raw_data_pack(uint8_t system_id, uint8_t component_id, mavlink_message_t* msg,
42  uint32_t time_boot_ms, uint8_t sensor_id, const int16_t *values)
43 {
44 #if MAVLINK_NEED_BYTE_SWAP || !MAVLINK_ALIGNED_FIELDS
45  char buf[MAVLINK_MSG_ID_RADAR_RAW_DATA_LEN];
46  _mav_put_uint32_t(buf, 0, time_boot_ms);
47  _mav_put_uint8_t(buf, 132, sensor_id);
48  _mav_put_int16_t_array(buf, 4, values, 64);
49  memcpy(_MAV_PAYLOAD_NON_CONST(msg), buf, MAVLINK_MSG_ID_RADAR_RAW_DATA_LEN);
50 #else
52  packet.time_boot_ms = time_boot_ms;
53  packet.sensor_id = sensor_id;
54  mav_array_memcpy(packet.values, values, sizeof(int16_t)*64);
55  memcpy(_MAV_PAYLOAD_NON_CONST(msg), &packet, MAVLINK_MSG_ID_RADAR_RAW_DATA_LEN);
56 #endif
57 
58  msg->msgid = MAVLINK_MSG_ID_RADAR_RAW_DATA;
59 #if MAVLINK_CRC_EXTRA
60  return mavlink_finalize_message(msg, system_id, component_id, MAVLINK_MSG_ID_RADAR_RAW_DATA_LEN, MAVLINK_MSG_ID_RADAR_RAW_DATA_CRC);
61 #else
62  return mavlink_finalize_message(msg, system_id, component_id, MAVLINK_MSG_ID_RADAR_RAW_DATA_LEN);
63 #endif
64 }
65 
77 static inline uint16_t mavlink_msg_radar_raw_data_pack_chan(uint8_t system_id, uint8_t component_id, uint8_t chan,
78  mavlink_message_t* msg,
79  uint32_t time_boot_ms,uint8_t sensor_id,const int16_t *values)
80 {
81 #if MAVLINK_NEED_BYTE_SWAP || !MAVLINK_ALIGNED_FIELDS
82  char buf[MAVLINK_MSG_ID_RADAR_RAW_DATA_LEN];
83  _mav_put_uint32_t(buf, 0, time_boot_ms);
84  _mav_put_uint8_t(buf, 132, sensor_id);
85  _mav_put_int16_t_array(buf, 4, values, 64);
86  memcpy(_MAV_PAYLOAD_NON_CONST(msg), buf, MAVLINK_MSG_ID_RADAR_RAW_DATA_LEN);
87 #else
89  packet.time_boot_ms = time_boot_ms;
90  packet.sensor_id = sensor_id;
91  mav_array_memcpy(packet.values, values, sizeof(int16_t)*64);
92  memcpy(_MAV_PAYLOAD_NON_CONST(msg), &packet, MAVLINK_MSG_ID_RADAR_RAW_DATA_LEN);
93 #endif
94 
95  msg->msgid = MAVLINK_MSG_ID_RADAR_RAW_DATA;
96 #if MAVLINK_CRC_EXTRA
97  return mavlink_finalize_message_chan(msg, system_id, component_id, chan, MAVLINK_MSG_ID_RADAR_RAW_DATA_LEN, MAVLINK_MSG_ID_RADAR_RAW_DATA_CRC);
98 #else
99  return mavlink_finalize_message_chan(msg, system_id, component_id, chan, MAVLINK_MSG_ID_RADAR_RAW_DATA_LEN);
100 #endif
101 }
102 
111 static inline uint16_t mavlink_msg_radar_raw_data_encode(uint8_t system_id, uint8_t component_id, mavlink_message_t* msg, const mavlink_radar_raw_data_t* radar_raw_data)
112 {
113  return mavlink_msg_radar_raw_data_pack(system_id, component_id, msg, radar_raw_data->time_boot_ms, radar_raw_data->sensor_id, radar_raw_data->values);
114 }
115 
125 static inline uint16_t mavlink_msg_radar_raw_data_encode_chan(uint8_t system_id, uint8_t component_id, uint8_t chan, mavlink_message_t* msg, const mavlink_radar_raw_data_t* radar_raw_data)
126 {
127  return mavlink_msg_radar_raw_data_pack_chan(system_id, component_id, chan, msg, radar_raw_data->time_boot_ms, radar_raw_data->sensor_id, radar_raw_data->values);
128 }
129 
138 #ifdef MAVLINK_USE_CONVENIENCE_FUNCTIONS
139 
140 static inline void mavlink_msg_radar_raw_data_send(mavlink_channel_t chan, uint32_t time_boot_ms, uint8_t sensor_id, const int16_t *values)
141 {
142 #if MAVLINK_NEED_BYTE_SWAP || !MAVLINK_ALIGNED_FIELDS
143  char buf[MAVLINK_MSG_ID_RADAR_RAW_DATA_LEN];
144  _mav_put_uint32_t(buf, 0, time_boot_ms);
145  _mav_put_uint8_t(buf, 132, sensor_id);
146  _mav_put_int16_t_array(buf, 4, values, 64);
147 #if MAVLINK_CRC_EXTRA
148  _mav_finalize_message_chan_send(chan, MAVLINK_MSG_ID_RADAR_RAW_DATA, buf, MAVLINK_MSG_ID_RADAR_RAW_DATA_LEN, MAVLINK_MSG_ID_RADAR_RAW_DATA_CRC);
149 #else
150  _mav_finalize_message_chan_send(chan, MAVLINK_MSG_ID_RADAR_RAW_DATA, buf, MAVLINK_MSG_ID_RADAR_RAW_DATA_LEN);
151 #endif
152 #else
154  packet.time_boot_ms = time_boot_ms;
155  packet.sensor_id = sensor_id;
156  mav_array_memcpy(packet.values, values, sizeof(int16_t)*64);
157 #if MAVLINK_CRC_EXTRA
158  _mav_finalize_message_chan_send(chan, MAVLINK_MSG_ID_RADAR_RAW_DATA, (const char *)&packet, MAVLINK_MSG_ID_RADAR_RAW_DATA_LEN, MAVLINK_MSG_ID_RADAR_RAW_DATA_CRC);
159 #else
160  _mav_finalize_message_chan_send(chan, MAVLINK_MSG_ID_RADAR_RAW_DATA, (const char *)&packet, MAVLINK_MSG_ID_RADAR_RAW_DATA_LEN);
161 #endif
162 #endif
163 }
164 
165 #if MAVLINK_MSG_ID_RADAR_RAW_DATA_LEN <= MAVLINK_MAX_PAYLOAD_LEN
166 /*
167  This varient of _send() can be used to save stack space by re-using
168  memory from the receive buffer. The caller provides a
169  mavlink_message_t which is the size of a full mavlink message. This
170  is usually the receive buffer for the channel, and allows a reply to an
171  incoming message with minimum stack space usage.
172  */
173 static inline void mavlink_msg_radar_raw_data_send_buf(mavlink_message_t *msgbuf, mavlink_channel_t chan, uint32_t time_boot_ms, uint8_t sensor_id, const int16_t *values)
174 {
175 #if MAVLINK_NEED_BYTE_SWAP || !MAVLINK_ALIGNED_FIELDS
176  char *buf = (char *)msgbuf;
177  _mav_put_uint32_t(buf, 0, time_boot_ms);
178  _mav_put_uint8_t(buf, 132, sensor_id);
179  _mav_put_int16_t_array(buf, 4, values, 64);
180 #if MAVLINK_CRC_EXTRA
181  _mav_finalize_message_chan_send(chan, MAVLINK_MSG_ID_RADAR_RAW_DATA, buf, MAVLINK_MSG_ID_RADAR_RAW_DATA_LEN, MAVLINK_MSG_ID_RADAR_RAW_DATA_CRC);
182 #else
183  _mav_finalize_message_chan_send(chan, MAVLINK_MSG_ID_RADAR_RAW_DATA, buf, MAVLINK_MSG_ID_RADAR_RAW_DATA_LEN);
184 #endif
185 #else
187  packet->time_boot_ms = time_boot_ms;
188  packet->sensor_id = sensor_id;
189  mav_array_memcpy(packet->values, values, sizeof(int16_t)*64);
190 #if MAVLINK_CRC_EXTRA
191  _mav_finalize_message_chan_send(chan, MAVLINK_MSG_ID_RADAR_RAW_DATA, (const char *)packet, MAVLINK_MSG_ID_RADAR_RAW_DATA_LEN, MAVLINK_MSG_ID_RADAR_RAW_DATA_CRC);
192 #else
193  _mav_finalize_message_chan_send(chan, MAVLINK_MSG_ID_RADAR_RAW_DATA, (const char *)packet, MAVLINK_MSG_ID_RADAR_RAW_DATA_LEN);
194 #endif
195 #endif
196 }
197 #endif
198 
199 #endif
200 
201 // MESSAGE RADAR_RAW_DATA UNPACKING
202 
203 
209 static inline uint32_t mavlink_msg_radar_raw_data_get_time_boot_ms(const mavlink_message_t* msg)
210 {
211  return _MAV_RETURN_uint32_t(msg, 0);
212 }
213 
219 static inline uint8_t mavlink_msg_radar_raw_data_get_sensor_id(const mavlink_message_t* msg)
220 {
221  return _MAV_RETURN_uint8_t(msg, 132);
222 }
223 
229 static inline uint16_t mavlink_msg_radar_raw_data_get_values(const mavlink_message_t* msg, int16_t *values)
230 {
231  return _MAV_RETURN_int16_t_array(msg, values, 64, 4);
232 }
233 
240 static inline void mavlink_msg_radar_raw_data_decode(const mavlink_message_t* msg, mavlink_radar_raw_data_t* radar_raw_data)
241 {
242 #if MAVLINK_NEED_BYTE_SWAP
243  radar_raw_data->time_boot_ms = mavlink_msg_radar_raw_data_get_time_boot_ms(msg);
244  mavlink_msg_radar_raw_data_get_values(msg, radar_raw_data->values);
245  radar_raw_data->sensor_id = mavlink_msg_radar_raw_data_get_sensor_id(msg);
246 #else
247  memcpy(radar_raw_data, _MAV_PAYLOAD(msg), MAVLINK_MSG_ID_RADAR_RAW_DATA_LEN);
248 #endif
249 }