source: flair-src/branches/mavlink/tools/Controller/Mavlink/src/mavlink_generated_messages/common/mavlink_msg_rc_channels.h @ 46

Last change on this file since 46 was 46, checked in by Thomas Fuhrmann, 5 years ago

Add the mavlink branch

File size: 37.2 KB
Line 
1// MESSAGE RC_CHANNELS PACKING
2
3#define MAVLINK_MSG_ID_RC_CHANNELS 65
4
5MAVPACKED(
6typedef struct __mavlink_rc_channels_t {
7 uint32_t time_boot_ms; /*< Timestamp (milliseconds since system boot)*/
8 uint16_t chan1_raw; /*< RC channel 1 value, in microseconds. A value of UINT16_MAX implies the channel is unused.*/
9 uint16_t chan2_raw; /*< RC channel 2 value, in microseconds. A value of UINT16_MAX implies the channel is unused.*/
10 uint16_t chan3_raw; /*< RC channel 3 value, in microseconds. A value of UINT16_MAX implies the channel is unused.*/
11 uint16_t chan4_raw; /*< RC channel 4 value, in microseconds. A value of UINT16_MAX implies the channel is unused.*/
12 uint16_t chan5_raw; /*< RC channel 5 value, in microseconds. A value of UINT16_MAX implies the channel is unused.*/
13 uint16_t chan6_raw; /*< RC channel 6 value, in microseconds. A value of UINT16_MAX implies the channel is unused.*/
14 uint16_t chan7_raw; /*< RC channel 7 value, in microseconds. A value of UINT16_MAX implies the channel is unused.*/
15 uint16_t chan8_raw; /*< RC channel 8 value, in microseconds. A value of UINT16_MAX implies the channel is unused.*/
16 uint16_t chan9_raw; /*< RC channel 9 value, in microseconds. A value of UINT16_MAX implies the channel is unused.*/
17 uint16_t chan10_raw; /*< RC channel 10 value, in microseconds. A value of UINT16_MAX implies the channel is unused.*/
18 uint16_t chan11_raw; /*< RC channel 11 value, in microseconds. A value of UINT16_MAX implies the channel is unused.*/
19 uint16_t chan12_raw; /*< RC channel 12 value, in microseconds. A value of UINT16_MAX implies the channel is unused.*/
20 uint16_t chan13_raw; /*< RC channel 13 value, in microseconds. A value of UINT16_MAX implies the channel is unused.*/
21 uint16_t chan14_raw; /*< RC channel 14 value, in microseconds. A value of UINT16_MAX implies the channel is unused.*/
22 uint16_t chan15_raw; /*< RC channel 15 value, in microseconds. A value of UINT16_MAX implies the channel is unused.*/
23 uint16_t chan16_raw; /*< RC channel 16 value, in microseconds. A value of UINT16_MAX implies the channel is unused.*/
24 uint16_t chan17_raw; /*< RC channel 17 value, in microseconds. A value of UINT16_MAX implies the channel is unused.*/
25 uint16_t chan18_raw; /*< RC channel 18 value, in microseconds. A value of UINT16_MAX implies the channel is unused.*/
26 uint8_t chancount; /*< Total number of RC channels being received. This can be larger than 18, indicating that more channels are available but not given in this message. This value should be 0 when no RC channels are available.*/
27 uint8_t rssi; /*< Receive signal strength indicator, 0: 0%, 100: 100%, 255: invalid/unknown.*/
28}) mavlink_rc_channels_t;
29
30#define MAVLINK_MSG_ID_RC_CHANNELS_LEN 42
31#define MAVLINK_MSG_ID_RC_CHANNELS_MIN_LEN 42
32#define MAVLINK_MSG_ID_65_LEN 42
33#define MAVLINK_MSG_ID_65_MIN_LEN 42
34
35#define MAVLINK_MSG_ID_RC_CHANNELS_CRC 118
36#define MAVLINK_MSG_ID_65_CRC 118
37
38
39
40#if MAVLINK_COMMAND_24BIT
41#define MAVLINK_MESSAGE_INFO_RC_CHANNELS { \
42        65, \
43        "RC_CHANNELS", \
44        21, \
45        {  { "time_boot_ms", NULL, MAVLINK_TYPE_UINT32_T, 0, 0, offsetof(mavlink_rc_channels_t, time_boot_ms) }, \
46         { "chan1_raw", NULL, MAVLINK_TYPE_UINT16_T, 0, 4, offsetof(mavlink_rc_channels_t, chan1_raw) }, \
47         { "chan2_raw", NULL, MAVLINK_TYPE_UINT16_T, 0, 6, offsetof(mavlink_rc_channels_t, chan2_raw) }, \
48         { "chan3_raw", NULL, MAVLINK_TYPE_UINT16_T, 0, 8, offsetof(mavlink_rc_channels_t, chan3_raw) }, \
49         { "chan4_raw", NULL, MAVLINK_TYPE_UINT16_T, 0, 10, offsetof(mavlink_rc_channels_t, chan4_raw) }, \
50         { "chan5_raw", NULL, MAVLINK_TYPE_UINT16_T, 0, 12, offsetof(mavlink_rc_channels_t, chan5_raw) }, \
51         { "chan6_raw", NULL, MAVLINK_TYPE_UINT16_T, 0, 14, offsetof(mavlink_rc_channels_t, chan6_raw) }, \
52         { "chan7_raw", NULL, MAVLINK_TYPE_UINT16_T, 0, 16, offsetof(mavlink_rc_channels_t, chan7_raw) }, \
53         { "chan8_raw", NULL, MAVLINK_TYPE_UINT16_T, 0, 18, offsetof(mavlink_rc_channels_t, chan8_raw) }, \
54         { "chan9_raw", NULL, MAVLINK_TYPE_UINT16_T, 0, 20, offsetof(mavlink_rc_channels_t, chan9_raw) }, \
55         { "chan10_raw", NULL, MAVLINK_TYPE_UINT16_T, 0, 22, offsetof(mavlink_rc_channels_t, chan10_raw) }, \
56         { "chan11_raw", NULL, MAVLINK_TYPE_UINT16_T, 0, 24, offsetof(mavlink_rc_channels_t, chan11_raw) }, \
57         { "chan12_raw", NULL, MAVLINK_TYPE_UINT16_T, 0, 26, offsetof(mavlink_rc_channels_t, chan12_raw) }, \
58         { "chan13_raw", NULL, MAVLINK_TYPE_UINT16_T, 0, 28, offsetof(mavlink_rc_channels_t, chan13_raw) }, \
59         { "chan14_raw", NULL, MAVLINK_TYPE_UINT16_T, 0, 30, offsetof(mavlink_rc_channels_t, chan14_raw) }, \
60         { "chan15_raw", NULL, MAVLINK_TYPE_UINT16_T, 0, 32, offsetof(mavlink_rc_channels_t, chan15_raw) }, \
61         { "chan16_raw", NULL, MAVLINK_TYPE_UINT16_T, 0, 34, offsetof(mavlink_rc_channels_t, chan16_raw) }, \
62         { "chan17_raw", NULL, MAVLINK_TYPE_UINT16_T, 0, 36, offsetof(mavlink_rc_channels_t, chan17_raw) }, \
63         { "chan18_raw", NULL, MAVLINK_TYPE_UINT16_T, 0, 38, offsetof(mavlink_rc_channels_t, chan18_raw) }, \
64         { "chancount", NULL, MAVLINK_TYPE_UINT8_T, 0, 40, offsetof(mavlink_rc_channels_t, chancount) }, \
65         { "rssi", NULL, MAVLINK_TYPE_UINT8_T, 0, 41, offsetof(mavlink_rc_channels_t, rssi) }, \
66         } \
67}
68#else
69#define MAVLINK_MESSAGE_INFO_RC_CHANNELS { \
70        "RC_CHANNELS", \
71        21, \
72        {  { "time_boot_ms", NULL, MAVLINK_TYPE_UINT32_T, 0, 0, offsetof(mavlink_rc_channels_t, time_boot_ms) }, \
73         { "chan1_raw", NULL, MAVLINK_TYPE_UINT16_T, 0, 4, offsetof(mavlink_rc_channels_t, chan1_raw) }, \
74         { "chan2_raw", NULL, MAVLINK_TYPE_UINT16_T, 0, 6, offsetof(mavlink_rc_channels_t, chan2_raw) }, \
75         { "chan3_raw", NULL, MAVLINK_TYPE_UINT16_T, 0, 8, offsetof(mavlink_rc_channels_t, chan3_raw) }, \
76         { "chan4_raw", NULL, MAVLINK_TYPE_UINT16_T, 0, 10, offsetof(mavlink_rc_channels_t, chan4_raw) }, \
77         { "chan5_raw", NULL, MAVLINK_TYPE_UINT16_T, 0, 12, offsetof(mavlink_rc_channels_t, chan5_raw) }, \
78         { "chan6_raw", NULL, MAVLINK_TYPE_UINT16_T, 0, 14, offsetof(mavlink_rc_channels_t, chan6_raw) }, \
79         { "chan7_raw", NULL, MAVLINK_TYPE_UINT16_T, 0, 16, offsetof(mavlink_rc_channels_t, chan7_raw) }, \
80         { "chan8_raw", NULL, MAVLINK_TYPE_UINT16_T, 0, 18, offsetof(mavlink_rc_channels_t, chan8_raw) }, \
81         { "chan9_raw", NULL, MAVLINK_TYPE_UINT16_T, 0, 20, offsetof(mavlink_rc_channels_t, chan9_raw) }, \
82         { "chan10_raw", NULL, MAVLINK_TYPE_UINT16_T, 0, 22, offsetof(mavlink_rc_channels_t, chan10_raw) }, \
83         { "chan11_raw", NULL, MAVLINK_TYPE_UINT16_T, 0, 24, offsetof(mavlink_rc_channels_t, chan11_raw) }, \
84         { "chan12_raw", NULL, MAVLINK_TYPE_UINT16_T, 0, 26, offsetof(mavlink_rc_channels_t, chan12_raw) }, \
85         { "chan13_raw", NULL, MAVLINK_TYPE_UINT16_T, 0, 28, offsetof(mavlink_rc_channels_t, chan13_raw) }, \
86         { "chan14_raw", NULL, MAVLINK_TYPE_UINT16_T, 0, 30, offsetof(mavlink_rc_channels_t, chan14_raw) }, \
87         { "chan15_raw", NULL, MAVLINK_TYPE_UINT16_T, 0, 32, offsetof(mavlink_rc_channels_t, chan15_raw) }, \
88         { "chan16_raw", NULL, MAVLINK_TYPE_UINT16_T, 0, 34, offsetof(mavlink_rc_channels_t, chan16_raw) }, \
89         { "chan17_raw", NULL, MAVLINK_TYPE_UINT16_T, 0, 36, offsetof(mavlink_rc_channels_t, chan17_raw) }, \
90         { "chan18_raw", NULL, MAVLINK_TYPE_UINT16_T, 0, 38, offsetof(mavlink_rc_channels_t, chan18_raw) }, \
91         { "chancount", NULL, MAVLINK_TYPE_UINT8_T, 0, 40, offsetof(mavlink_rc_channels_t, chancount) }, \
92         { "rssi", NULL, MAVLINK_TYPE_UINT8_T, 0, 41, offsetof(mavlink_rc_channels_t, rssi) }, \
93         } \
94}
95#endif
96
97/**
98 * @brief Pack a rc_channels message
99 * @param system_id ID of this system
100 * @param component_id ID of this component (e.g. 200 for IMU)
101 * @param msg The MAVLink message to compress the data into
102 *
103 * @param time_boot_ms Timestamp (milliseconds since system boot)
104 * @param chancount Total number of RC channels being received. This can be larger than 18, indicating that more channels are available but not given in this message. This value should be 0 when no RC channels are available.
105 * @param chan1_raw RC channel 1 value, in microseconds. A value of UINT16_MAX implies the channel is unused.
106 * @param chan2_raw RC channel 2 value, in microseconds. A value of UINT16_MAX implies the channel is unused.
107 * @param chan3_raw RC channel 3 value, in microseconds. A value of UINT16_MAX implies the channel is unused.
108 * @param chan4_raw RC channel 4 value, in microseconds. A value of UINT16_MAX implies the channel is unused.
109 * @param chan5_raw RC channel 5 value, in microseconds. A value of UINT16_MAX implies the channel is unused.
110 * @param chan6_raw RC channel 6 value, in microseconds. A value of UINT16_MAX implies the channel is unused.
111 * @param chan7_raw RC channel 7 value, in microseconds. A value of UINT16_MAX implies the channel is unused.
112 * @param chan8_raw RC channel 8 value, in microseconds. A value of UINT16_MAX implies the channel is unused.
113 * @param chan9_raw RC channel 9 value, in microseconds. A value of UINT16_MAX implies the channel is unused.
114 * @param chan10_raw RC channel 10 value, in microseconds. A value of UINT16_MAX implies the channel is unused.
115 * @param chan11_raw RC channel 11 value, in microseconds. A value of UINT16_MAX implies the channel is unused.
116 * @param chan12_raw RC channel 12 value, in microseconds. A value of UINT16_MAX implies the channel is unused.
117 * @param chan13_raw RC channel 13 value, in microseconds. A value of UINT16_MAX implies the channel is unused.
118 * @param chan14_raw RC channel 14 value, in microseconds. A value of UINT16_MAX implies the channel is unused.
119 * @param chan15_raw RC channel 15 value, in microseconds. A value of UINT16_MAX implies the channel is unused.
120 * @param chan16_raw RC channel 16 value, in microseconds. A value of UINT16_MAX implies the channel is unused.
121 * @param chan17_raw RC channel 17 value, in microseconds. A value of UINT16_MAX implies the channel is unused.
122 * @param chan18_raw RC channel 18 value, in microseconds. A value of UINT16_MAX implies the channel is unused.
123 * @param rssi Receive signal strength indicator, 0: 0%, 100: 100%, 255: invalid/unknown.
124 * @return length of the message in bytes (excluding serial stream start sign)
125 */
126static inline uint16_t mavlink_msg_rc_channels_pack(uint8_t system_id, uint8_t component_id, mavlink_message_t* msg,
127                                                       uint32_t time_boot_ms, uint8_t chancount, uint16_t chan1_raw, uint16_t chan2_raw, uint16_t chan3_raw, uint16_t chan4_raw, uint16_t chan5_raw, uint16_t chan6_raw, uint16_t chan7_raw, uint16_t chan8_raw, uint16_t chan9_raw, uint16_t chan10_raw, uint16_t chan11_raw, uint16_t chan12_raw, uint16_t chan13_raw, uint16_t chan14_raw, uint16_t chan15_raw, uint16_t chan16_raw, uint16_t chan17_raw, uint16_t chan18_raw, uint8_t rssi)
128{
129#if MAVLINK_NEED_BYTE_SWAP || !MAVLINK_ALIGNED_FIELDS
130        char buf[MAVLINK_MSG_ID_RC_CHANNELS_LEN];
131        _mav_put_uint32_t(buf, 0, time_boot_ms);
132        _mav_put_uint16_t(buf, 4, chan1_raw);
133        _mav_put_uint16_t(buf, 6, chan2_raw);
134        _mav_put_uint16_t(buf, 8, chan3_raw);
135        _mav_put_uint16_t(buf, 10, chan4_raw);
136        _mav_put_uint16_t(buf, 12, chan5_raw);
137        _mav_put_uint16_t(buf, 14, chan6_raw);
138        _mav_put_uint16_t(buf, 16, chan7_raw);
139        _mav_put_uint16_t(buf, 18, chan8_raw);
140        _mav_put_uint16_t(buf, 20, chan9_raw);
141        _mav_put_uint16_t(buf, 22, chan10_raw);
142        _mav_put_uint16_t(buf, 24, chan11_raw);
143        _mav_put_uint16_t(buf, 26, chan12_raw);
144        _mav_put_uint16_t(buf, 28, chan13_raw);
145        _mav_put_uint16_t(buf, 30, chan14_raw);
146        _mav_put_uint16_t(buf, 32, chan15_raw);
147        _mav_put_uint16_t(buf, 34, chan16_raw);
148        _mav_put_uint16_t(buf, 36, chan17_raw);
149        _mav_put_uint16_t(buf, 38, chan18_raw);
150        _mav_put_uint8_t(buf, 40, chancount);
151        _mav_put_uint8_t(buf, 41, rssi);
152
153        memcpy(_MAV_PAYLOAD_NON_CONST(msg), buf, MAVLINK_MSG_ID_RC_CHANNELS_LEN);
154#else
155        mavlink_rc_channels_t packet;
156        packet.time_boot_ms = time_boot_ms;
157        packet.chan1_raw = chan1_raw;
158        packet.chan2_raw = chan2_raw;
159        packet.chan3_raw = chan3_raw;
160        packet.chan4_raw = chan4_raw;
161        packet.chan5_raw = chan5_raw;
162        packet.chan6_raw = chan6_raw;
163        packet.chan7_raw = chan7_raw;
164        packet.chan8_raw = chan8_raw;
165        packet.chan9_raw = chan9_raw;
166        packet.chan10_raw = chan10_raw;
167        packet.chan11_raw = chan11_raw;
168        packet.chan12_raw = chan12_raw;
169        packet.chan13_raw = chan13_raw;
170        packet.chan14_raw = chan14_raw;
171        packet.chan15_raw = chan15_raw;
172        packet.chan16_raw = chan16_raw;
173        packet.chan17_raw = chan17_raw;
174        packet.chan18_raw = chan18_raw;
175        packet.chancount = chancount;
176        packet.rssi = rssi;
177
178        memcpy(_MAV_PAYLOAD_NON_CONST(msg), &packet, MAVLINK_MSG_ID_RC_CHANNELS_LEN);
179#endif
180
181        msg->msgid = MAVLINK_MSG_ID_RC_CHANNELS;
182    return mavlink_finalize_message(msg, system_id, component_id, MAVLINK_MSG_ID_RC_CHANNELS_MIN_LEN, MAVLINK_MSG_ID_RC_CHANNELS_LEN, MAVLINK_MSG_ID_RC_CHANNELS_CRC);
183}
184
185/**
186 * @brief Pack a rc_channels message on a channel
187 * @param system_id ID of this system
188 * @param component_id ID of this component (e.g. 200 for IMU)
189 * @param chan The MAVLink channel this message will be sent over
190 * @param msg The MAVLink message to compress the data into
191 * @param time_boot_ms Timestamp (milliseconds since system boot)
192 * @param chancount Total number of RC channels being received. This can be larger than 18, indicating that more channels are available but not given in this message. This value should be 0 when no RC channels are available.
193 * @param chan1_raw RC channel 1 value, in microseconds. A value of UINT16_MAX implies the channel is unused.
194 * @param chan2_raw RC channel 2 value, in microseconds. A value of UINT16_MAX implies the channel is unused.
195 * @param chan3_raw RC channel 3 value, in microseconds. A value of UINT16_MAX implies the channel is unused.
196 * @param chan4_raw RC channel 4 value, in microseconds. A value of UINT16_MAX implies the channel is unused.
197 * @param chan5_raw RC channel 5 value, in microseconds. A value of UINT16_MAX implies the channel is unused.
198 * @param chan6_raw RC channel 6 value, in microseconds. A value of UINT16_MAX implies the channel is unused.
199 * @param chan7_raw RC channel 7 value, in microseconds. A value of UINT16_MAX implies the channel is unused.
200 * @param chan8_raw RC channel 8 value, in microseconds. A value of UINT16_MAX implies the channel is unused.
201 * @param chan9_raw RC channel 9 value, in microseconds. A value of UINT16_MAX implies the channel is unused.
202 * @param chan10_raw RC channel 10 value, in microseconds. A value of UINT16_MAX implies the channel is unused.
203 * @param chan11_raw RC channel 11 value, in microseconds. A value of UINT16_MAX implies the channel is unused.
204 * @param chan12_raw RC channel 12 value, in microseconds. A value of UINT16_MAX implies the channel is unused.
205 * @param chan13_raw RC channel 13 value, in microseconds. A value of UINT16_MAX implies the channel is unused.
206 * @param chan14_raw RC channel 14 value, in microseconds. A value of UINT16_MAX implies the channel is unused.
207 * @param chan15_raw RC channel 15 value, in microseconds. A value of UINT16_MAX implies the channel is unused.
208 * @param chan16_raw RC channel 16 value, in microseconds. A value of UINT16_MAX implies the channel is unused.
209 * @param chan17_raw RC channel 17 value, in microseconds. A value of UINT16_MAX implies the channel is unused.
210 * @param chan18_raw RC channel 18 value, in microseconds. A value of UINT16_MAX implies the channel is unused.
211 * @param rssi Receive signal strength indicator, 0: 0%, 100: 100%, 255: invalid/unknown.
212 * @return length of the message in bytes (excluding serial stream start sign)
213 */
214static inline uint16_t mavlink_msg_rc_channels_pack_chan(uint8_t system_id, uint8_t component_id, uint8_t chan,
215                                                           mavlink_message_t* msg,
216                                                           uint32_t time_boot_ms,uint8_t chancount,uint16_t chan1_raw,uint16_t chan2_raw,uint16_t chan3_raw,uint16_t chan4_raw,uint16_t chan5_raw,uint16_t chan6_raw,uint16_t chan7_raw,uint16_t chan8_raw,uint16_t chan9_raw,uint16_t chan10_raw,uint16_t chan11_raw,uint16_t chan12_raw,uint16_t chan13_raw,uint16_t chan14_raw,uint16_t chan15_raw,uint16_t chan16_raw,uint16_t chan17_raw,uint16_t chan18_raw,uint8_t rssi)
217{
218#if MAVLINK_NEED_BYTE_SWAP || !MAVLINK_ALIGNED_FIELDS
219        char buf[MAVLINK_MSG_ID_RC_CHANNELS_LEN];
220        _mav_put_uint32_t(buf, 0, time_boot_ms);
221        _mav_put_uint16_t(buf, 4, chan1_raw);
222        _mav_put_uint16_t(buf, 6, chan2_raw);
223        _mav_put_uint16_t(buf, 8, chan3_raw);
224        _mav_put_uint16_t(buf, 10, chan4_raw);
225        _mav_put_uint16_t(buf, 12, chan5_raw);
226        _mav_put_uint16_t(buf, 14, chan6_raw);
227        _mav_put_uint16_t(buf, 16, chan7_raw);
228        _mav_put_uint16_t(buf, 18, chan8_raw);
229        _mav_put_uint16_t(buf, 20, chan9_raw);
230        _mav_put_uint16_t(buf, 22, chan10_raw);
231        _mav_put_uint16_t(buf, 24, chan11_raw);
232        _mav_put_uint16_t(buf, 26, chan12_raw);
233        _mav_put_uint16_t(buf, 28, chan13_raw);
234        _mav_put_uint16_t(buf, 30, chan14_raw);
235        _mav_put_uint16_t(buf, 32, chan15_raw);
236        _mav_put_uint16_t(buf, 34, chan16_raw);
237        _mav_put_uint16_t(buf, 36, chan17_raw);
238        _mav_put_uint16_t(buf, 38, chan18_raw);
239        _mav_put_uint8_t(buf, 40, chancount);
240        _mav_put_uint8_t(buf, 41, rssi);
241
242        memcpy(_MAV_PAYLOAD_NON_CONST(msg), buf, MAVLINK_MSG_ID_RC_CHANNELS_LEN);
243#else
244        mavlink_rc_channels_t packet;
245        packet.time_boot_ms = time_boot_ms;
246        packet.chan1_raw = chan1_raw;
247        packet.chan2_raw = chan2_raw;
248        packet.chan3_raw = chan3_raw;
249        packet.chan4_raw = chan4_raw;
250        packet.chan5_raw = chan5_raw;
251        packet.chan6_raw = chan6_raw;
252        packet.chan7_raw = chan7_raw;
253        packet.chan8_raw = chan8_raw;
254        packet.chan9_raw = chan9_raw;
255        packet.chan10_raw = chan10_raw;
256        packet.chan11_raw = chan11_raw;
257        packet.chan12_raw = chan12_raw;
258        packet.chan13_raw = chan13_raw;
259        packet.chan14_raw = chan14_raw;
260        packet.chan15_raw = chan15_raw;
261        packet.chan16_raw = chan16_raw;
262        packet.chan17_raw = chan17_raw;
263        packet.chan18_raw = chan18_raw;
264        packet.chancount = chancount;
265        packet.rssi = rssi;
266
267        memcpy(_MAV_PAYLOAD_NON_CONST(msg), &packet, MAVLINK_MSG_ID_RC_CHANNELS_LEN);
268#endif
269
270        msg->msgid = MAVLINK_MSG_ID_RC_CHANNELS;
271    return mavlink_finalize_message_chan(msg, system_id, component_id, chan, MAVLINK_MSG_ID_RC_CHANNELS_MIN_LEN, MAVLINK_MSG_ID_RC_CHANNELS_LEN, MAVLINK_MSG_ID_RC_CHANNELS_CRC);
272}
273
274/**
275 * @brief Encode a rc_channels struct
276 *
277 * @param system_id ID of this system
278 * @param component_id ID of this component (e.g. 200 for IMU)
279 * @param msg The MAVLink message to compress the data into
280 * @param rc_channels C-struct to read the message contents from
281 */
282static inline uint16_t mavlink_msg_rc_channels_encode(uint8_t system_id, uint8_t component_id, mavlink_message_t* msg, const mavlink_rc_channels_t* rc_channels)
283{
284        return mavlink_msg_rc_channels_pack(system_id, component_id, msg, rc_channels->time_boot_ms, rc_channels->chancount, rc_channels->chan1_raw, rc_channels->chan2_raw, rc_channels->chan3_raw, rc_channels->chan4_raw, rc_channels->chan5_raw, rc_channels->chan6_raw, rc_channels->chan7_raw, rc_channels->chan8_raw, rc_channels->chan9_raw, rc_channels->chan10_raw, rc_channels->chan11_raw, rc_channels->chan12_raw, rc_channels->chan13_raw, rc_channels->chan14_raw, rc_channels->chan15_raw, rc_channels->chan16_raw, rc_channels->chan17_raw, rc_channels->chan18_raw, rc_channels->rssi);
285}
286
287/**
288 * @brief Encode a rc_channels struct on a channel
289 *
290 * @param system_id ID of this system
291 * @param component_id ID of this component (e.g. 200 for IMU)
292 * @param chan The MAVLink channel this message will be sent over
293 * @param msg The MAVLink message to compress the data into
294 * @param rc_channels C-struct to read the message contents from
295 */
296static inline uint16_t mavlink_msg_rc_channels_encode_chan(uint8_t system_id, uint8_t component_id, uint8_t chan, mavlink_message_t* msg, const mavlink_rc_channels_t* rc_channels)
297{
298        return mavlink_msg_rc_channels_pack_chan(system_id, component_id, chan, msg, rc_channels->time_boot_ms, rc_channels->chancount, rc_channels->chan1_raw, rc_channels->chan2_raw, rc_channels->chan3_raw, rc_channels->chan4_raw, rc_channels->chan5_raw, rc_channels->chan6_raw, rc_channels->chan7_raw, rc_channels->chan8_raw, rc_channels->chan9_raw, rc_channels->chan10_raw, rc_channels->chan11_raw, rc_channels->chan12_raw, rc_channels->chan13_raw, rc_channels->chan14_raw, rc_channels->chan15_raw, rc_channels->chan16_raw, rc_channels->chan17_raw, rc_channels->chan18_raw, rc_channels->rssi);
299}
300
301/**
302 * @brief Send a rc_channels message
303 * @param chan MAVLink channel to send the message
304 *
305 * @param time_boot_ms Timestamp (milliseconds since system boot)
306 * @param chancount Total number of RC channels being received. This can be larger than 18, indicating that more channels are available but not given in this message. This value should be 0 when no RC channels are available.
307 * @param chan1_raw RC channel 1 value, in microseconds. A value of UINT16_MAX implies the channel is unused.
308 * @param chan2_raw RC channel 2 value, in microseconds. A value of UINT16_MAX implies the channel is unused.
309 * @param chan3_raw RC channel 3 value, in microseconds. A value of UINT16_MAX implies the channel is unused.
310 * @param chan4_raw RC channel 4 value, in microseconds. A value of UINT16_MAX implies the channel is unused.
311 * @param chan5_raw RC channel 5 value, in microseconds. A value of UINT16_MAX implies the channel is unused.
312 * @param chan6_raw RC channel 6 value, in microseconds. A value of UINT16_MAX implies the channel is unused.
313 * @param chan7_raw RC channel 7 value, in microseconds. A value of UINT16_MAX implies the channel is unused.
314 * @param chan8_raw RC channel 8 value, in microseconds. A value of UINT16_MAX implies the channel is unused.
315 * @param chan9_raw RC channel 9 value, in microseconds. A value of UINT16_MAX implies the channel is unused.
316 * @param chan10_raw RC channel 10 value, in microseconds. A value of UINT16_MAX implies the channel is unused.
317 * @param chan11_raw RC channel 11 value, in microseconds. A value of UINT16_MAX implies the channel is unused.
318 * @param chan12_raw RC channel 12 value, in microseconds. A value of UINT16_MAX implies the channel is unused.
319 * @param chan13_raw RC channel 13 value, in microseconds. A value of UINT16_MAX implies the channel is unused.
320 * @param chan14_raw RC channel 14 value, in microseconds. A value of UINT16_MAX implies the channel is unused.
321 * @param chan15_raw RC channel 15 value, in microseconds. A value of UINT16_MAX implies the channel is unused.
322 * @param chan16_raw RC channel 16 value, in microseconds. A value of UINT16_MAX implies the channel is unused.
323 * @param chan17_raw RC channel 17 value, in microseconds. A value of UINT16_MAX implies the channel is unused.
324 * @param chan18_raw RC channel 18 value, in microseconds. A value of UINT16_MAX implies the channel is unused.
325 * @param rssi Receive signal strength indicator, 0: 0%, 100: 100%, 255: invalid/unknown.
326 */
327#ifdef MAVLINK_USE_CONVENIENCE_FUNCTIONS
328
329static inline void mavlink_msg_rc_channels_send(mavlink_channel_t chan, uint32_t time_boot_ms, uint8_t chancount, uint16_t chan1_raw, uint16_t chan2_raw, uint16_t chan3_raw, uint16_t chan4_raw, uint16_t chan5_raw, uint16_t chan6_raw, uint16_t chan7_raw, uint16_t chan8_raw, uint16_t chan9_raw, uint16_t chan10_raw, uint16_t chan11_raw, uint16_t chan12_raw, uint16_t chan13_raw, uint16_t chan14_raw, uint16_t chan15_raw, uint16_t chan16_raw, uint16_t chan17_raw, uint16_t chan18_raw, uint8_t rssi)
330{
331#if MAVLINK_NEED_BYTE_SWAP || !MAVLINK_ALIGNED_FIELDS
332        char buf[MAVLINK_MSG_ID_RC_CHANNELS_LEN];
333        _mav_put_uint32_t(buf, 0, time_boot_ms);
334        _mav_put_uint16_t(buf, 4, chan1_raw);
335        _mav_put_uint16_t(buf, 6, chan2_raw);
336        _mav_put_uint16_t(buf, 8, chan3_raw);
337        _mav_put_uint16_t(buf, 10, chan4_raw);
338        _mav_put_uint16_t(buf, 12, chan5_raw);
339        _mav_put_uint16_t(buf, 14, chan6_raw);
340        _mav_put_uint16_t(buf, 16, chan7_raw);
341        _mav_put_uint16_t(buf, 18, chan8_raw);
342        _mav_put_uint16_t(buf, 20, chan9_raw);
343        _mav_put_uint16_t(buf, 22, chan10_raw);
344        _mav_put_uint16_t(buf, 24, chan11_raw);
345        _mav_put_uint16_t(buf, 26, chan12_raw);
346        _mav_put_uint16_t(buf, 28, chan13_raw);
347        _mav_put_uint16_t(buf, 30, chan14_raw);
348        _mav_put_uint16_t(buf, 32, chan15_raw);
349        _mav_put_uint16_t(buf, 34, chan16_raw);
350        _mav_put_uint16_t(buf, 36, chan17_raw);
351        _mav_put_uint16_t(buf, 38, chan18_raw);
352        _mav_put_uint8_t(buf, 40, chancount);
353        _mav_put_uint8_t(buf, 41, rssi);
354
355    _mav_finalize_message_chan_send(chan, MAVLINK_MSG_ID_RC_CHANNELS, buf, MAVLINK_MSG_ID_RC_CHANNELS_MIN_LEN, MAVLINK_MSG_ID_RC_CHANNELS_LEN, MAVLINK_MSG_ID_RC_CHANNELS_CRC);
356#else
357        mavlink_rc_channels_t packet;
358        packet.time_boot_ms = time_boot_ms;
359        packet.chan1_raw = chan1_raw;
360        packet.chan2_raw = chan2_raw;
361        packet.chan3_raw = chan3_raw;
362        packet.chan4_raw = chan4_raw;
363        packet.chan5_raw = chan5_raw;
364        packet.chan6_raw = chan6_raw;
365        packet.chan7_raw = chan7_raw;
366        packet.chan8_raw = chan8_raw;
367        packet.chan9_raw = chan9_raw;
368        packet.chan10_raw = chan10_raw;
369        packet.chan11_raw = chan11_raw;
370        packet.chan12_raw = chan12_raw;
371        packet.chan13_raw = chan13_raw;
372        packet.chan14_raw = chan14_raw;
373        packet.chan15_raw = chan15_raw;
374        packet.chan16_raw = chan16_raw;
375        packet.chan17_raw = chan17_raw;
376        packet.chan18_raw = chan18_raw;
377        packet.chancount = chancount;
378        packet.rssi = rssi;
379
380    _mav_finalize_message_chan_send(chan, MAVLINK_MSG_ID_RC_CHANNELS, (const char *)&packet, MAVLINK_MSG_ID_RC_CHANNELS_MIN_LEN, MAVLINK_MSG_ID_RC_CHANNELS_LEN, MAVLINK_MSG_ID_RC_CHANNELS_CRC);
381#endif
382}
383
384/**
385 * @brief Send a rc_channels message
386 * @param chan MAVLink channel to send the message
387 * @param struct The MAVLink struct to serialize
388 */
389static inline void mavlink_msg_rc_channels_send_struct(mavlink_channel_t chan, const mavlink_rc_channels_t* rc_channels)
390{
391#if MAVLINK_NEED_BYTE_SWAP || !MAVLINK_ALIGNED_FIELDS
392    mavlink_msg_rc_channels_send(chan, rc_channels->time_boot_ms, rc_channels->chancount, rc_channels->chan1_raw, rc_channels->chan2_raw, rc_channels->chan3_raw, rc_channels->chan4_raw, rc_channels->chan5_raw, rc_channels->chan6_raw, rc_channels->chan7_raw, rc_channels->chan8_raw, rc_channels->chan9_raw, rc_channels->chan10_raw, rc_channels->chan11_raw, rc_channels->chan12_raw, rc_channels->chan13_raw, rc_channels->chan14_raw, rc_channels->chan15_raw, rc_channels->chan16_raw, rc_channels->chan17_raw, rc_channels->chan18_raw, rc_channels->rssi);
393#else
394    _mav_finalize_message_chan_send(chan, MAVLINK_MSG_ID_RC_CHANNELS, (const char *)rc_channels, MAVLINK_MSG_ID_RC_CHANNELS_MIN_LEN, MAVLINK_MSG_ID_RC_CHANNELS_LEN, MAVLINK_MSG_ID_RC_CHANNELS_CRC);
395#endif
396}
397
398#if MAVLINK_MSG_ID_RC_CHANNELS_LEN <= MAVLINK_MAX_PAYLOAD_LEN
399/*
400  This varient of _send() can be used to save stack space by re-using
401  memory from the receive buffer.  The caller provides a
402  mavlink_message_t which is the size of a full mavlink message. This
403  is usually the receive buffer for the channel, and allows a reply to an
404  incoming message with minimum stack space usage.
405 */
406static inline void mavlink_msg_rc_channels_send_buf(mavlink_message_t *msgbuf, mavlink_channel_t chan,  uint32_t time_boot_ms, uint8_t chancount, uint16_t chan1_raw, uint16_t chan2_raw, uint16_t chan3_raw, uint16_t chan4_raw, uint16_t chan5_raw, uint16_t chan6_raw, uint16_t chan7_raw, uint16_t chan8_raw, uint16_t chan9_raw, uint16_t chan10_raw, uint16_t chan11_raw, uint16_t chan12_raw, uint16_t chan13_raw, uint16_t chan14_raw, uint16_t chan15_raw, uint16_t chan16_raw, uint16_t chan17_raw, uint16_t chan18_raw, uint8_t rssi)
407{
408#if MAVLINK_NEED_BYTE_SWAP || !MAVLINK_ALIGNED_FIELDS
409        char *buf = (char *)msgbuf;
410        _mav_put_uint32_t(buf, 0, time_boot_ms);
411        _mav_put_uint16_t(buf, 4, chan1_raw);
412        _mav_put_uint16_t(buf, 6, chan2_raw);
413        _mav_put_uint16_t(buf, 8, chan3_raw);
414        _mav_put_uint16_t(buf, 10, chan4_raw);
415        _mav_put_uint16_t(buf, 12, chan5_raw);
416        _mav_put_uint16_t(buf, 14, chan6_raw);
417        _mav_put_uint16_t(buf, 16, chan7_raw);
418        _mav_put_uint16_t(buf, 18, chan8_raw);
419        _mav_put_uint16_t(buf, 20, chan9_raw);
420        _mav_put_uint16_t(buf, 22, chan10_raw);
421        _mav_put_uint16_t(buf, 24, chan11_raw);
422        _mav_put_uint16_t(buf, 26, chan12_raw);
423        _mav_put_uint16_t(buf, 28, chan13_raw);
424        _mav_put_uint16_t(buf, 30, chan14_raw);
425        _mav_put_uint16_t(buf, 32, chan15_raw);
426        _mav_put_uint16_t(buf, 34, chan16_raw);
427        _mav_put_uint16_t(buf, 36, chan17_raw);
428        _mav_put_uint16_t(buf, 38, chan18_raw);
429        _mav_put_uint8_t(buf, 40, chancount);
430        _mav_put_uint8_t(buf, 41, rssi);
431
432    _mav_finalize_message_chan_send(chan, MAVLINK_MSG_ID_RC_CHANNELS, buf, MAVLINK_MSG_ID_RC_CHANNELS_MIN_LEN, MAVLINK_MSG_ID_RC_CHANNELS_LEN, MAVLINK_MSG_ID_RC_CHANNELS_CRC);
433#else
434        mavlink_rc_channels_t *packet = (mavlink_rc_channels_t *)msgbuf;
435        packet->time_boot_ms = time_boot_ms;
436        packet->chan1_raw = chan1_raw;
437        packet->chan2_raw = chan2_raw;
438        packet->chan3_raw = chan3_raw;
439        packet->chan4_raw = chan4_raw;
440        packet->chan5_raw = chan5_raw;
441        packet->chan6_raw = chan6_raw;
442        packet->chan7_raw = chan7_raw;
443        packet->chan8_raw = chan8_raw;
444        packet->chan9_raw = chan9_raw;
445        packet->chan10_raw = chan10_raw;
446        packet->chan11_raw = chan11_raw;
447        packet->chan12_raw = chan12_raw;
448        packet->chan13_raw = chan13_raw;
449        packet->chan14_raw = chan14_raw;
450        packet->chan15_raw = chan15_raw;
451        packet->chan16_raw = chan16_raw;
452        packet->chan17_raw = chan17_raw;
453        packet->chan18_raw = chan18_raw;
454        packet->chancount = chancount;
455        packet->rssi = rssi;
456
457    _mav_finalize_message_chan_send(chan, MAVLINK_MSG_ID_RC_CHANNELS, (const char *)packet, MAVLINK_MSG_ID_RC_CHANNELS_MIN_LEN, MAVLINK_MSG_ID_RC_CHANNELS_LEN, MAVLINK_MSG_ID_RC_CHANNELS_CRC);
458#endif
459}
460#endif
461
462#endif
463
464// MESSAGE RC_CHANNELS UNPACKING
465
466
467/**
468 * @brief Get field time_boot_ms from rc_channels message
469 *
470 * @return Timestamp (milliseconds since system boot)
471 */
472static inline uint32_t mavlink_msg_rc_channels_get_time_boot_ms(const mavlink_message_t* msg)
473{
474        return _MAV_RETURN_uint32_t(msg,  0);
475}
476
477/**
478 * @brief Get field chancount from rc_channels message
479 *
480 * @return Total number of RC channels being received. This can be larger than 18, indicating that more channels are available but not given in this message. This value should be 0 when no RC channels are available.
481 */
482static inline uint8_t mavlink_msg_rc_channels_get_chancount(const mavlink_message_t* msg)
483{
484        return _MAV_RETURN_uint8_t(msg,  40);
485}
486
487/**
488 * @brief Get field chan1_raw from rc_channels message
489 *
490 * @return RC channel 1 value, in microseconds. A value of UINT16_MAX implies the channel is unused.
491 */
492static inline uint16_t mavlink_msg_rc_channels_get_chan1_raw(const mavlink_message_t* msg)
493{
494        return _MAV_RETURN_uint16_t(msg,  4);
495}
496
497/**
498 * @brief Get field chan2_raw from rc_channels message
499 *
500 * @return RC channel 2 value, in microseconds. A value of UINT16_MAX implies the channel is unused.
501 */
502static inline uint16_t mavlink_msg_rc_channels_get_chan2_raw(const mavlink_message_t* msg)
503{
504        return _MAV_RETURN_uint16_t(msg,  6);
505}
506
507/**
508 * @brief Get field chan3_raw from rc_channels message
509 *
510 * @return RC channel 3 value, in microseconds. A value of UINT16_MAX implies the channel is unused.
511 */
512static inline uint16_t mavlink_msg_rc_channels_get_chan3_raw(const mavlink_message_t* msg)
513{
514        return _MAV_RETURN_uint16_t(msg,  8);
515}
516
517/**
518 * @brief Get field chan4_raw from rc_channels message
519 *
520 * @return RC channel 4 value, in microseconds. A value of UINT16_MAX implies the channel is unused.
521 */
522static inline uint16_t mavlink_msg_rc_channels_get_chan4_raw(const mavlink_message_t* msg)
523{
524        return _MAV_RETURN_uint16_t(msg,  10);
525}
526
527/**
528 * @brief Get field chan5_raw from rc_channels message
529 *
530 * @return RC channel 5 value, in microseconds. A value of UINT16_MAX implies the channel is unused.
531 */
532static inline uint16_t mavlink_msg_rc_channels_get_chan5_raw(const mavlink_message_t* msg)
533{
534        return _MAV_RETURN_uint16_t(msg,  12);
535}
536
537/**
538 * @brief Get field chan6_raw from rc_channels message
539 *
540 * @return RC channel 6 value, in microseconds. A value of UINT16_MAX implies the channel is unused.
541 */
542static inline uint16_t mavlink_msg_rc_channels_get_chan6_raw(const mavlink_message_t* msg)
543{
544        return _MAV_RETURN_uint16_t(msg,  14);
545}
546
547/**
548 * @brief Get field chan7_raw from rc_channels message
549 *
550 * @return RC channel 7 value, in microseconds. A value of UINT16_MAX implies the channel is unused.
551 */
552static inline uint16_t mavlink_msg_rc_channels_get_chan7_raw(const mavlink_message_t* msg)
553{
554        return _MAV_RETURN_uint16_t(msg,  16);
555}
556
557/**
558 * @brief Get field chan8_raw from rc_channels message
559 *
560 * @return RC channel 8 value, in microseconds. A value of UINT16_MAX implies the channel is unused.
561 */
562static inline uint16_t mavlink_msg_rc_channels_get_chan8_raw(const mavlink_message_t* msg)
563{
564        return _MAV_RETURN_uint16_t(msg,  18);
565}
566
567/**
568 * @brief Get field chan9_raw from rc_channels message
569 *
570 * @return RC channel 9 value, in microseconds. A value of UINT16_MAX implies the channel is unused.
571 */
572static inline uint16_t mavlink_msg_rc_channels_get_chan9_raw(const mavlink_message_t* msg)
573{
574        return _MAV_RETURN_uint16_t(msg,  20);
575}
576
577/**
578 * @brief Get field chan10_raw from rc_channels message
579 *
580 * @return RC channel 10 value, in microseconds. A value of UINT16_MAX implies the channel is unused.
581 */
582static inline uint16_t mavlink_msg_rc_channels_get_chan10_raw(const mavlink_message_t* msg)
583{
584        return _MAV_RETURN_uint16_t(msg,  22);
585}
586
587/**
588 * @brief Get field chan11_raw from rc_channels message
589 *
590 * @return RC channel 11 value, in microseconds. A value of UINT16_MAX implies the channel is unused.
591 */
592static inline uint16_t mavlink_msg_rc_channels_get_chan11_raw(const mavlink_message_t* msg)
593{
594        return _MAV_RETURN_uint16_t(msg,  24);
595}
596
597/**
598 * @brief Get field chan12_raw from rc_channels message
599 *
600 * @return RC channel 12 value, in microseconds. A value of UINT16_MAX implies the channel is unused.
601 */
602static inline uint16_t mavlink_msg_rc_channels_get_chan12_raw(const mavlink_message_t* msg)
603{
604        return _MAV_RETURN_uint16_t(msg,  26);
605}
606
607/**
608 * @brief Get field chan13_raw from rc_channels message
609 *
610 * @return RC channel 13 value, in microseconds. A value of UINT16_MAX implies the channel is unused.
611 */
612static inline uint16_t mavlink_msg_rc_channels_get_chan13_raw(const mavlink_message_t* msg)
613{
614        return _MAV_RETURN_uint16_t(msg,  28);
615}
616
617/**
618 * @brief Get field chan14_raw from rc_channels message
619 *
620 * @return RC channel 14 value, in microseconds. A value of UINT16_MAX implies the channel is unused.
621 */
622static inline uint16_t mavlink_msg_rc_channels_get_chan14_raw(const mavlink_message_t* msg)
623{
624        return _MAV_RETURN_uint16_t(msg,  30);
625}
626
627/**
628 * @brief Get field chan15_raw from rc_channels message
629 *
630 * @return RC channel 15 value, in microseconds. A value of UINT16_MAX implies the channel is unused.
631 */
632static inline uint16_t mavlink_msg_rc_channels_get_chan15_raw(const mavlink_message_t* msg)
633{
634        return _MAV_RETURN_uint16_t(msg,  32);
635}
636
637/**
638 * @brief Get field chan16_raw from rc_channels message
639 *
640 * @return RC channel 16 value, in microseconds. A value of UINT16_MAX implies the channel is unused.
641 */
642static inline uint16_t mavlink_msg_rc_channels_get_chan16_raw(const mavlink_message_t* msg)
643{
644        return _MAV_RETURN_uint16_t(msg,  34);
645}
646
647/**
648 * @brief Get field chan17_raw from rc_channels message
649 *
650 * @return RC channel 17 value, in microseconds. A value of UINT16_MAX implies the channel is unused.
651 */
652static inline uint16_t mavlink_msg_rc_channels_get_chan17_raw(const mavlink_message_t* msg)
653{
654        return _MAV_RETURN_uint16_t(msg,  36);
655}
656
657/**
658 * @brief Get field chan18_raw from rc_channels message
659 *
660 * @return RC channel 18 value, in microseconds. A value of UINT16_MAX implies the channel is unused.
661 */
662static inline uint16_t mavlink_msg_rc_channels_get_chan18_raw(const mavlink_message_t* msg)
663{
664        return _MAV_RETURN_uint16_t(msg,  38);
665}
666
667/**
668 * @brief Get field rssi from rc_channels message
669 *
670 * @return Receive signal strength indicator, 0: 0%, 100: 100%, 255: invalid/unknown.
671 */
672static inline uint8_t mavlink_msg_rc_channels_get_rssi(const mavlink_message_t* msg)
673{
674        return _MAV_RETURN_uint8_t(msg,  41);
675}
676
677/**
678 * @brief Decode a rc_channels message into a struct
679 *
680 * @param msg The message to decode
681 * @param rc_channels C-struct to decode the message contents into
682 */
683static inline void mavlink_msg_rc_channels_decode(const mavlink_message_t* msg, mavlink_rc_channels_t* rc_channels)
684{
685#if MAVLINK_NEED_BYTE_SWAP || !MAVLINK_ALIGNED_FIELDS
686        rc_channels->time_boot_ms = mavlink_msg_rc_channels_get_time_boot_ms(msg);
687        rc_channels->chan1_raw = mavlink_msg_rc_channels_get_chan1_raw(msg);
688        rc_channels->chan2_raw = mavlink_msg_rc_channels_get_chan2_raw(msg);
689        rc_channels->chan3_raw = mavlink_msg_rc_channels_get_chan3_raw(msg);
690        rc_channels->chan4_raw = mavlink_msg_rc_channels_get_chan4_raw(msg);
691        rc_channels->chan5_raw = mavlink_msg_rc_channels_get_chan5_raw(msg);
692        rc_channels->chan6_raw = mavlink_msg_rc_channels_get_chan6_raw(msg);
693        rc_channels->chan7_raw = mavlink_msg_rc_channels_get_chan7_raw(msg);
694        rc_channels->chan8_raw = mavlink_msg_rc_channels_get_chan8_raw(msg);
695        rc_channels->chan9_raw = mavlink_msg_rc_channels_get_chan9_raw(msg);
696        rc_channels->chan10_raw = mavlink_msg_rc_channels_get_chan10_raw(msg);
697        rc_channels->chan11_raw = mavlink_msg_rc_channels_get_chan11_raw(msg);
698        rc_channels->chan12_raw = mavlink_msg_rc_channels_get_chan12_raw(msg);
699        rc_channels->chan13_raw = mavlink_msg_rc_channels_get_chan13_raw(msg);
700        rc_channels->chan14_raw = mavlink_msg_rc_channels_get_chan14_raw(msg);
701        rc_channels->chan15_raw = mavlink_msg_rc_channels_get_chan15_raw(msg);
702        rc_channels->chan16_raw = mavlink_msg_rc_channels_get_chan16_raw(msg);
703        rc_channels->chan17_raw = mavlink_msg_rc_channels_get_chan17_raw(msg);
704        rc_channels->chan18_raw = mavlink_msg_rc_channels_get_chan18_raw(msg);
705        rc_channels->chancount = mavlink_msg_rc_channels_get_chancount(msg);
706        rc_channels->rssi = mavlink_msg_rc_channels_get_rssi(msg);
707#else
708        uint8_t len = msg->len < MAVLINK_MSG_ID_RC_CHANNELS_LEN? msg->len : MAVLINK_MSG_ID_RC_CHANNELS_LEN;
709        memset(rc_channels, 0, MAVLINK_MSG_ID_RC_CHANNELS_LEN);
710        memcpy(rc_channels, _MAV_PAYLOAD(msg), len);
711#endif
712}
Note: See TracBrowser for help on using the repository browser.