3 #define MAVLINK_MSG_ID_MANUAL_CONTROL 69
15 #define MAVLINK_MSG_ID_MANUAL_CONTROL_LEN 11
16 #define MAVLINK_MSG_ID_69_LEN 11
18 #define MAVLINK_MSG_ID_MANUAL_CONTROL_CRC 243
19 #define MAVLINK_MSG_ID_69_CRC 243
23 #define MAVLINK_MESSAGE_INFO_MANUAL_CONTROL { \
26 { { "x", NULL, MAVLINK_TYPE_INT16_T, 0, 0, offsetof(mavlink_manual_control_t, x) }, \
27 { "y", NULL, MAVLINK_TYPE_INT16_T, 0, 2, offsetof(mavlink_manual_control_t, y) }, \
28 { "z", NULL, MAVLINK_TYPE_INT16_T, 0, 4, offsetof(mavlink_manual_control_t, z) }, \
29 { "r", NULL, MAVLINK_TYPE_INT16_T, 0, 6, offsetof(mavlink_manual_control_t, r) }, \
30 { "buttons", NULL, MAVLINK_TYPE_UINT16_T, 0, 8, offsetof(mavlink_manual_control_t, buttons) }, \
31 { "target", NULL, MAVLINK_TYPE_UINT8_T, 0, 10, offsetof(mavlink_manual_control_t, target) }, \
50 static inline uint16_t mavlink_msg_manual_control_pack(uint8_t system_id, uint8_t component_id, mavlink_message_t* msg,
51 uint8_t target, int16_t x, int16_t y, int16_t z, int16_t r, uint16_t buttons)
53 #if MAVLINK_NEED_BYTE_SWAP || !MAVLINK_ALIGNED_FIELDS
54 char buf[MAVLINK_MSG_ID_MANUAL_CONTROL_LEN];
55 _mav_put_int16_t(buf, 0, x);
56 _mav_put_int16_t(buf, 2, y);
57 _mav_put_int16_t(buf, 4, z);
58 _mav_put_int16_t(buf, 6, r);
59 _mav_put_uint16_t(buf, 8, buttons);
60 _mav_put_uint8_t(buf, 10, target);
62 memcpy(_MAV_PAYLOAD_NON_CONST(msg), buf, MAVLINK_MSG_ID_MANUAL_CONTROL_LEN);
72 memcpy(_MAV_PAYLOAD_NON_CONST(msg), &packet, MAVLINK_MSG_ID_MANUAL_CONTROL_LEN);
75 msg->msgid = MAVLINK_MSG_ID_MANUAL_CONTROL;
77 return mavlink_finalize_message(msg, system_id, component_id, MAVLINK_MSG_ID_MANUAL_CONTROL_LEN, MAVLINK_MSG_ID_MANUAL_CONTROL_CRC);
79 return mavlink_finalize_message(msg, system_id, component_id, MAVLINK_MSG_ID_MANUAL_CONTROL_LEN);
97 static inline uint16_t mavlink_msg_manual_control_pack_chan(uint8_t system_id, uint8_t component_id, uint8_t chan,
98 mavlink_message_t* msg,
99 uint8_t target,int16_t x,int16_t y,int16_t z,int16_t r,uint16_t buttons)
101 #if MAVLINK_NEED_BYTE_SWAP || !MAVLINK_ALIGNED_FIELDS
102 char buf[MAVLINK_MSG_ID_MANUAL_CONTROL_LEN];
103 _mav_put_int16_t(buf, 0, x);
104 _mav_put_int16_t(buf, 2, y);
105 _mav_put_int16_t(buf, 4, z);
106 _mav_put_int16_t(buf, 6, r);
107 _mav_put_uint16_t(buf, 8, buttons);
108 _mav_put_uint8_t(buf, 10, target);
110 memcpy(_MAV_PAYLOAD_NON_CONST(msg), buf, MAVLINK_MSG_ID_MANUAL_CONTROL_LEN);
120 memcpy(_MAV_PAYLOAD_NON_CONST(msg), &packet, MAVLINK_MSG_ID_MANUAL_CONTROL_LEN);
123 msg->msgid = MAVLINK_MSG_ID_MANUAL_CONTROL;
124 #if MAVLINK_CRC_EXTRA
125 return mavlink_finalize_message_chan(msg, system_id, component_id, chan, MAVLINK_MSG_ID_MANUAL_CONTROL_LEN, MAVLINK_MSG_ID_MANUAL_CONTROL_CRC);
127 return mavlink_finalize_message_chan(msg, system_id, component_id, chan, MAVLINK_MSG_ID_MANUAL_CONTROL_LEN);
139 static inline uint16_t mavlink_msg_manual_control_encode(uint8_t system_id, uint8_t component_id, mavlink_message_t* msg,
const mavlink_manual_control_t* manual_control)
141 return mavlink_msg_manual_control_pack(system_id, component_id, msg, manual_control->
target, manual_control->
x, manual_control->
y, manual_control->
z, manual_control->
r, manual_control->
buttons);
153 static inline uint16_t mavlink_msg_manual_control_encode_chan(uint8_t system_id, uint8_t component_id, uint8_t chan, mavlink_message_t* msg,
const mavlink_manual_control_t* manual_control)
155 return mavlink_msg_manual_control_pack_chan(system_id, component_id, chan, msg, manual_control->
target, manual_control->
x, manual_control->
y, manual_control->
z, manual_control->
r, manual_control->
buttons);
169 #ifdef MAVLINK_USE_CONVENIENCE_FUNCTIONS
171 static inline void mavlink_msg_manual_control_send(mavlink_channel_t chan, uint8_t target, int16_t x, int16_t y, int16_t z, int16_t r, uint16_t buttons)
173 #if MAVLINK_NEED_BYTE_SWAP || !MAVLINK_ALIGNED_FIELDS
174 char buf[MAVLINK_MSG_ID_MANUAL_CONTROL_LEN];
175 _mav_put_int16_t(buf, 0, x);
176 _mav_put_int16_t(buf, 2, y);
177 _mav_put_int16_t(buf, 4, z);
178 _mav_put_int16_t(buf, 6, r);
179 _mav_put_uint16_t(buf, 8, buttons);
180 _mav_put_uint8_t(buf, 10, target);
182 #if MAVLINK_CRC_EXTRA
183 _mav_finalize_message_chan_send(chan, MAVLINK_MSG_ID_MANUAL_CONTROL, buf, MAVLINK_MSG_ID_MANUAL_CONTROL_LEN, MAVLINK_MSG_ID_MANUAL_CONTROL_CRC);
185 _mav_finalize_message_chan_send(chan, MAVLINK_MSG_ID_MANUAL_CONTROL, buf, MAVLINK_MSG_ID_MANUAL_CONTROL_LEN);
196 #if MAVLINK_CRC_EXTRA
197 _mav_finalize_message_chan_send(chan, MAVLINK_MSG_ID_MANUAL_CONTROL, (
const char *)&packet, MAVLINK_MSG_ID_MANUAL_CONTROL_LEN, MAVLINK_MSG_ID_MANUAL_CONTROL_CRC);
199 _mav_finalize_message_chan_send(chan, MAVLINK_MSG_ID_MANUAL_CONTROL, (
const char *)&packet, MAVLINK_MSG_ID_MANUAL_CONTROL_LEN);
204 #if MAVLINK_MSG_ID_MANUAL_CONTROL_LEN <= MAVLINK_MAX_PAYLOAD_LEN
212 static inline void mavlink_msg_manual_control_send_buf(mavlink_message_t *msgbuf, mavlink_channel_t chan, uint8_t target, int16_t x, int16_t y, int16_t z, int16_t r, uint16_t buttons)
214 #if MAVLINK_NEED_BYTE_SWAP || !MAVLINK_ALIGNED_FIELDS
215 char *buf = (
char *)msgbuf;
216 _mav_put_int16_t(buf, 0, x);
217 _mav_put_int16_t(buf, 2, y);
218 _mav_put_int16_t(buf, 4, z);
219 _mav_put_int16_t(buf, 6, r);
220 _mav_put_uint16_t(buf, 8, buttons);
221 _mav_put_uint8_t(buf, 10, target);
223 #if MAVLINK_CRC_EXTRA
224 _mav_finalize_message_chan_send(chan, MAVLINK_MSG_ID_MANUAL_CONTROL, buf, MAVLINK_MSG_ID_MANUAL_CONTROL_LEN, MAVLINK_MSG_ID_MANUAL_CONTROL_CRC);
226 _mav_finalize_message_chan_send(chan, MAVLINK_MSG_ID_MANUAL_CONTROL, buf, MAVLINK_MSG_ID_MANUAL_CONTROL_LEN);
237 #if MAVLINK_CRC_EXTRA
238 _mav_finalize_message_chan_send(chan, MAVLINK_MSG_ID_MANUAL_CONTROL, (
const char *)packet, MAVLINK_MSG_ID_MANUAL_CONTROL_LEN, MAVLINK_MSG_ID_MANUAL_CONTROL_CRC);
240 _mav_finalize_message_chan_send(chan, MAVLINK_MSG_ID_MANUAL_CONTROL, (
const char *)packet, MAVLINK_MSG_ID_MANUAL_CONTROL_LEN);
256 static inline uint8_t mavlink_msg_manual_control_get_target(
const mavlink_message_t* msg)
258 return _MAV_RETURN_uint8_t(msg, 10);
266 static inline int16_t mavlink_msg_manual_control_get_x(
const mavlink_message_t* msg)
268 return _MAV_RETURN_int16_t(msg, 0);
276 static inline int16_t mavlink_msg_manual_control_get_y(
const mavlink_message_t* msg)
278 return _MAV_RETURN_int16_t(msg, 2);
286 static inline int16_t mavlink_msg_manual_control_get_z(
const mavlink_message_t* msg)
288 return _MAV_RETURN_int16_t(msg, 4);
296 static inline int16_t mavlink_msg_manual_control_get_r(
const mavlink_message_t* msg)
298 return _MAV_RETURN_int16_t(msg, 6);
306 static inline uint16_t mavlink_msg_manual_control_get_buttons(
const mavlink_message_t* msg)
308 return _MAV_RETURN_uint16_t(msg, 8);
317 static inline void mavlink_msg_manual_control_decode(
const mavlink_message_t* msg,
mavlink_manual_control_t* manual_control)
319 #if MAVLINK_NEED_BYTE_SWAP
320 manual_control->
x = mavlink_msg_manual_control_get_x(msg);
321 manual_control->
y = mavlink_msg_manual_control_get_y(msg);
322 manual_control->
z = mavlink_msg_manual_control_get_z(msg);
323 manual_control->
r = mavlink_msg_manual_control_get_r(msg);
324 manual_control->
buttons = mavlink_msg_manual_control_get_buttons(msg);
325 manual_control->
target = mavlink_msg_manual_control_get_target(msg);
327 memcpy(manual_control, _MAV_PAYLOAD(msg), MAVLINK_MSG_ID_MANUAL_CONTROL_LEN);
uint16_t buttons
A bitfield corresponding to the joystick buttons' current state, 1 for pressed, 0 for released...
Definition: mavlink_msg_manual_control.h:11
int16_t r
R-axis, normalized to the range [-1000,1000]. A value of INT16_MAX indicates that this axis is invali...
Definition: mavlink_msg_manual_control.h:10
int16_t y
Y-axis, normalized to the range [-1000,1000]. A value of INT16_MAX indicates that this axis is invali...
Definition: mavlink_msg_manual_control.h:8
int16_t x
X-axis, normalized to the range [-1000,1000]. A value of INT16_MAX indicates that this axis is invali...
Definition: mavlink_msg_manual_control.h:7
int16_t z
Z-axis, normalized to the range [-1000,1000]. A value of INT16_MAX indicates that this axis is invali...
Definition: mavlink_msg_manual_control.h:9
Definition: mavlink_msg_manual_control.h:5
uint8_t target
The system to be controlled.
Definition: mavlink_msg_manual_control.h:12