✨feat: 更好兼容matlab
uin64->uint32 payload64->payload
This commit is contained in:
@@ -3,23 +3,23 @@
|
||||
|
||||
#define MAVLINK_MSG_ID_ATT_POS_MOCAP 138
|
||||
|
||||
MAVPACKED(
|
||||
|
||||
typedef struct __mavlink_att_pos_mocap_t {
|
||||
uint64_t time_usec; /*< [us] Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude the number.*/
|
||||
uint32_t time_usec; /*< [us] Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude the number.*/
|
||||
float q[4]; /*< Attitude quaternion (w, x, y, z order, zero-rotation is 1, 0, 0, 0)*/
|
||||
float x; /*< [m] X position (NED)*/
|
||||
float y; /*< [m] Y position (NED)*/
|
||||
float z; /*< [m] Z position (NED)*/
|
||||
float covariance[21]; /*< Pose covariance matrix upper right triangular (first six entries are the first ROW, next five entries are the second ROW, etc.)*/
|
||||
}) mavlink_att_pos_mocap_t;
|
||||
} mavlink_att_pos_mocap_t;
|
||||
|
||||
#define MAVLINK_MSG_ID_ATT_POS_MOCAP_LEN 120
|
||||
#define MAVLINK_MSG_ID_ATT_POS_MOCAP_MIN_LEN 36
|
||||
#define MAVLINK_MSG_ID_138_LEN 120
|
||||
#define MAVLINK_MSG_ID_138_MIN_LEN 36
|
||||
#define MAVLINK_MSG_ID_ATT_POS_MOCAP_LEN 116
|
||||
#define MAVLINK_MSG_ID_ATT_POS_MOCAP_MIN_LEN 32
|
||||
#define MAVLINK_MSG_ID_138_LEN 116
|
||||
#define MAVLINK_MSG_ID_138_MIN_LEN 32
|
||||
|
||||
#define MAVLINK_MSG_ID_ATT_POS_MOCAP_CRC 109
|
||||
#define MAVLINK_MSG_ID_138_CRC 109
|
||||
#define MAVLINK_MSG_ID_ATT_POS_MOCAP_CRC 11
|
||||
#define MAVLINK_MSG_ID_138_CRC 11
|
||||
|
||||
#define MAVLINK_MSG_ATT_POS_MOCAP_FIELD_Q_LEN 4
|
||||
#define MAVLINK_MSG_ATT_POS_MOCAP_FIELD_COVARIANCE_LEN 21
|
||||
@@ -29,24 +29,24 @@ typedef struct __mavlink_att_pos_mocap_t {
|
||||
138, \
|
||||
"ATT_POS_MOCAP", \
|
||||
6, \
|
||||
{ { "time_usec", NULL, MAVLINK_TYPE_UINT64_T, 0, 0, offsetof(mavlink_att_pos_mocap_t, time_usec) }, \
|
||||
{ "q", NULL, MAVLINK_TYPE_FLOAT, 4, 8, offsetof(mavlink_att_pos_mocap_t, q) }, \
|
||||
{ "x", NULL, MAVLINK_TYPE_FLOAT, 0, 24, offsetof(mavlink_att_pos_mocap_t, x) }, \
|
||||
{ "y", NULL, MAVLINK_TYPE_FLOAT, 0, 28, offsetof(mavlink_att_pos_mocap_t, y) }, \
|
||||
{ "z", NULL, MAVLINK_TYPE_FLOAT, 0, 32, offsetof(mavlink_att_pos_mocap_t, z) }, \
|
||||
{ "covariance", NULL, MAVLINK_TYPE_FLOAT, 21, 36, offsetof(mavlink_att_pos_mocap_t, covariance) }, \
|
||||
{ { "time_usec", NULL, MAVLINK_TYPE_UINT32_T, 0, 0, offsetof(mavlink_att_pos_mocap_t, time_usec) }, \
|
||||
{ "q", NULL, MAVLINK_TYPE_FLOAT, 4, 4, offsetof(mavlink_att_pos_mocap_t, q) }, \
|
||||
{ "x", NULL, MAVLINK_TYPE_FLOAT, 0, 20, offsetof(mavlink_att_pos_mocap_t, x) }, \
|
||||
{ "y", NULL, MAVLINK_TYPE_FLOAT, 0, 24, offsetof(mavlink_att_pos_mocap_t, y) }, \
|
||||
{ "z", NULL, MAVLINK_TYPE_FLOAT, 0, 28, offsetof(mavlink_att_pos_mocap_t, z) }, \
|
||||
{ "covariance", NULL, MAVLINK_TYPE_FLOAT, 21, 32, offsetof(mavlink_att_pos_mocap_t, covariance) }, \
|
||||
} \
|
||||
}
|
||||
#else
|
||||
#define MAVLINK_MESSAGE_INFO_ATT_POS_MOCAP { \
|
||||
"ATT_POS_MOCAP", \
|
||||
6, \
|
||||
{ { "time_usec", NULL, MAVLINK_TYPE_UINT64_T, 0, 0, offsetof(mavlink_att_pos_mocap_t, time_usec) }, \
|
||||
{ "q", NULL, MAVLINK_TYPE_FLOAT, 4, 8, offsetof(mavlink_att_pos_mocap_t, q) }, \
|
||||
{ "x", NULL, MAVLINK_TYPE_FLOAT, 0, 24, offsetof(mavlink_att_pos_mocap_t, x) }, \
|
||||
{ "y", NULL, MAVLINK_TYPE_FLOAT, 0, 28, offsetof(mavlink_att_pos_mocap_t, y) }, \
|
||||
{ "z", NULL, MAVLINK_TYPE_FLOAT, 0, 32, offsetof(mavlink_att_pos_mocap_t, z) }, \
|
||||
{ "covariance", NULL, MAVLINK_TYPE_FLOAT, 21, 36, offsetof(mavlink_att_pos_mocap_t, covariance) }, \
|
||||
{ { "time_usec", NULL, MAVLINK_TYPE_UINT32_T, 0, 0, offsetof(mavlink_att_pos_mocap_t, time_usec) }, \
|
||||
{ "q", NULL, MAVLINK_TYPE_FLOAT, 4, 4, offsetof(mavlink_att_pos_mocap_t, q) }, \
|
||||
{ "x", NULL, MAVLINK_TYPE_FLOAT, 0, 20, offsetof(mavlink_att_pos_mocap_t, x) }, \
|
||||
{ "y", NULL, MAVLINK_TYPE_FLOAT, 0, 24, offsetof(mavlink_att_pos_mocap_t, y) }, \
|
||||
{ "z", NULL, MAVLINK_TYPE_FLOAT, 0, 28, offsetof(mavlink_att_pos_mocap_t, z) }, \
|
||||
{ "covariance", NULL, MAVLINK_TYPE_FLOAT, 21, 32, offsetof(mavlink_att_pos_mocap_t, covariance) }, \
|
||||
} \
|
||||
}
|
||||
#endif
|
||||
@@ -65,17 +65,17 @@ typedef struct __mavlink_att_pos_mocap_t {
|
||||
* @param covariance Pose covariance matrix upper right triangular (first six entries are the first ROW, next five entries are the second ROW, etc.)
|
||||
* @return length of the message in bytes (excluding serial stream start sign)
|
||||
*/
|
||||
static inline uint16_t mavlink_msg_att_pos_mocap_pack(uint8_t system_id, uint8_t component_id, mavlink_message_t* msg,
|
||||
uint64_t time_usec, const float *q, float x, float y, float z, const float *covariance)
|
||||
static inline uint16_t mavlink_msg_att_pos_mocap_pack(uint16_t system_id, uint8_t component_id, mavlink_message_t* msg,
|
||||
uint32_t time_usec, const float *q, float x, float y, float z, const float *covariance)
|
||||
{
|
||||
#if MAVLINK_NEED_BYTE_SWAP || !MAVLINK_ALIGNED_FIELDS
|
||||
char buf[MAVLINK_MSG_ID_ATT_POS_MOCAP_LEN];
|
||||
_mav_put_uint64_t(buf, 0, time_usec);
|
||||
_mav_put_float(buf, 24, x);
|
||||
_mav_put_float(buf, 28, y);
|
||||
_mav_put_float(buf, 32, z);
|
||||
_mav_put_float_array(buf, 8, q, 4);
|
||||
_mav_put_float_array(buf, 36, covariance, 21);
|
||||
_mav_put_uint32_t(buf, 0, time_usec);
|
||||
_mav_put_float(buf, 20, x);
|
||||
_mav_put_float(buf, 24, y);
|
||||
_mav_put_float(buf, 28, z);
|
||||
_mav_put_float_array(buf, 4, q, 4);
|
||||
_mav_put_float_array(buf, 32, covariance, 21);
|
||||
memcpy(_MAV_PAYLOAD_NON_CONST(msg), buf, MAVLINK_MSG_ID_ATT_POS_MOCAP_LEN);
|
||||
#else
|
||||
mavlink_att_pos_mocap_t packet;
|
||||
@@ -106,18 +106,18 @@ static inline uint16_t mavlink_msg_att_pos_mocap_pack(uint8_t system_id, uint8_t
|
||||
* @param covariance Pose covariance matrix upper right triangular (first six entries are the first ROW, next five entries are the second ROW, etc.)
|
||||
* @return length of the message in bytes (excluding serial stream start sign)
|
||||
*/
|
||||
static inline uint16_t mavlink_msg_att_pos_mocap_pack_chan(uint8_t system_id, uint8_t component_id, uint8_t chan,
|
||||
static inline uint16_t mavlink_msg_att_pos_mocap_pack_chan(uint16_t system_id, uint8_t component_id, uint8_t chan,
|
||||
mavlink_message_t* msg,
|
||||
uint64_t time_usec,const float *q,float x,float y,float z,const float *covariance)
|
||||
uint32_t time_usec,const float *q,float x,float y,float z,const float *covariance)
|
||||
{
|
||||
#if MAVLINK_NEED_BYTE_SWAP || !MAVLINK_ALIGNED_FIELDS
|
||||
char buf[MAVLINK_MSG_ID_ATT_POS_MOCAP_LEN];
|
||||
_mav_put_uint64_t(buf, 0, time_usec);
|
||||
_mav_put_float(buf, 24, x);
|
||||
_mav_put_float(buf, 28, y);
|
||||
_mav_put_float(buf, 32, z);
|
||||
_mav_put_float_array(buf, 8, q, 4);
|
||||
_mav_put_float_array(buf, 36, covariance, 21);
|
||||
_mav_put_uint32_t(buf, 0, time_usec);
|
||||
_mav_put_float(buf, 20, x);
|
||||
_mav_put_float(buf, 24, y);
|
||||
_mav_put_float(buf, 28, z);
|
||||
_mav_put_float_array(buf, 4, q, 4);
|
||||
_mav_put_float_array(buf, 32, covariance, 21);
|
||||
memcpy(_MAV_PAYLOAD_NON_CONST(msg), buf, MAVLINK_MSG_ID_ATT_POS_MOCAP_LEN);
|
||||
#else
|
||||
mavlink_att_pos_mocap_t packet;
|
||||
@@ -142,7 +142,7 @@ static inline uint16_t mavlink_msg_att_pos_mocap_pack_chan(uint8_t system_id, ui
|
||||
* @param msg The MAVLink message to compress the data into
|
||||
* @param att_pos_mocap C-struct to read the message contents from
|
||||
*/
|
||||
static inline uint16_t mavlink_msg_att_pos_mocap_encode(uint8_t system_id, uint8_t component_id, mavlink_message_t* msg, const mavlink_att_pos_mocap_t* att_pos_mocap)
|
||||
static inline uint16_t mavlink_msg_att_pos_mocap_encode(uint16_t system_id, uint8_t component_id, mavlink_message_t* msg, const mavlink_att_pos_mocap_t* att_pos_mocap)
|
||||
{
|
||||
return mavlink_msg_att_pos_mocap_pack(system_id, component_id, msg, att_pos_mocap->time_usec, att_pos_mocap->q, att_pos_mocap->x, att_pos_mocap->y, att_pos_mocap->z, att_pos_mocap->covariance);
|
||||
}
|
||||
@@ -156,7 +156,7 @@ static inline uint16_t mavlink_msg_att_pos_mocap_encode(uint8_t system_id, uint8
|
||||
* @param msg The MAVLink message to compress the data into
|
||||
* @param att_pos_mocap C-struct to read the message contents from
|
||||
*/
|
||||
static inline uint16_t mavlink_msg_att_pos_mocap_encode_chan(uint8_t system_id, uint8_t component_id, uint8_t chan, mavlink_message_t* msg, const mavlink_att_pos_mocap_t* att_pos_mocap)
|
||||
static inline uint16_t mavlink_msg_att_pos_mocap_encode_chan(uint16_t system_id, uint8_t component_id, uint8_t chan, mavlink_message_t* msg, const mavlink_att_pos_mocap_t* att_pos_mocap)
|
||||
{
|
||||
return mavlink_msg_att_pos_mocap_pack_chan(system_id, component_id, chan, msg, att_pos_mocap->time_usec, att_pos_mocap->q, att_pos_mocap->x, att_pos_mocap->y, att_pos_mocap->z, att_pos_mocap->covariance);
|
||||
}
|
||||
@@ -174,16 +174,16 @@ static inline uint16_t mavlink_msg_att_pos_mocap_encode_chan(uint8_t system_id,
|
||||
*/
|
||||
#ifdef MAVLINK_USE_CONVENIENCE_FUNCTIONS
|
||||
|
||||
static inline void mavlink_msg_att_pos_mocap_send(mavlink_channel_t chan, uint64_t time_usec, const float *q, float x, float y, float z, const float *covariance)
|
||||
static inline void mavlink_msg_att_pos_mocap_send(mavlink_channel_t chan, uint32_t time_usec, const float *q, float x, float y, float z, const float *covariance)
|
||||
{
|
||||
#if MAVLINK_NEED_BYTE_SWAP || !MAVLINK_ALIGNED_FIELDS
|
||||
char buf[MAVLINK_MSG_ID_ATT_POS_MOCAP_LEN];
|
||||
_mav_put_uint64_t(buf, 0, time_usec);
|
||||
_mav_put_float(buf, 24, x);
|
||||
_mav_put_float(buf, 28, y);
|
||||
_mav_put_float(buf, 32, z);
|
||||
_mav_put_float_array(buf, 8, q, 4);
|
||||
_mav_put_float_array(buf, 36, covariance, 21);
|
||||
_mav_put_uint32_t(buf, 0, time_usec);
|
||||
_mav_put_float(buf, 20, x);
|
||||
_mav_put_float(buf, 24, y);
|
||||
_mav_put_float(buf, 28, z);
|
||||
_mav_put_float_array(buf, 4, q, 4);
|
||||
_mav_put_float_array(buf, 32, covariance, 21);
|
||||
_mav_finalize_message_chan_send(chan, MAVLINK_MSG_ID_ATT_POS_MOCAP, buf, MAVLINK_MSG_ID_ATT_POS_MOCAP_MIN_LEN, MAVLINK_MSG_ID_ATT_POS_MOCAP_LEN, MAVLINK_MSG_ID_ATT_POS_MOCAP_CRC);
|
||||
#else
|
||||
mavlink_att_pos_mocap_t packet;
|
||||
@@ -219,16 +219,16 @@ static inline void mavlink_msg_att_pos_mocap_send_struct(mavlink_channel_t chan,
|
||||
is usually the receive buffer for the channel, and allows a reply to an
|
||||
incoming message with minimum stack space usage.
|
||||
*/
|
||||
static inline void mavlink_msg_att_pos_mocap_send_buf(mavlink_message_t *msgbuf, mavlink_channel_t chan, uint64_t time_usec, const float *q, float x, float y, float z, const float *covariance)
|
||||
static inline void mavlink_msg_att_pos_mocap_send_buf(mavlink_message_t *msgbuf, mavlink_channel_t chan, uint32_t time_usec, const float *q, float x, float y, float z, const float *covariance)
|
||||
{
|
||||
#if MAVLINK_NEED_BYTE_SWAP || !MAVLINK_ALIGNED_FIELDS
|
||||
char *buf = (char *)msgbuf;
|
||||
_mav_put_uint64_t(buf, 0, time_usec);
|
||||
_mav_put_float(buf, 24, x);
|
||||
_mav_put_float(buf, 28, y);
|
||||
_mav_put_float(buf, 32, z);
|
||||
_mav_put_float_array(buf, 8, q, 4);
|
||||
_mav_put_float_array(buf, 36, covariance, 21);
|
||||
_mav_put_uint32_t(buf, 0, time_usec);
|
||||
_mav_put_float(buf, 20, x);
|
||||
_mav_put_float(buf, 24, y);
|
||||
_mav_put_float(buf, 28, z);
|
||||
_mav_put_float_array(buf, 4, q, 4);
|
||||
_mav_put_float_array(buf, 32, covariance, 21);
|
||||
_mav_finalize_message_chan_send(chan, MAVLINK_MSG_ID_ATT_POS_MOCAP, buf, MAVLINK_MSG_ID_ATT_POS_MOCAP_MIN_LEN, MAVLINK_MSG_ID_ATT_POS_MOCAP_LEN, MAVLINK_MSG_ID_ATT_POS_MOCAP_CRC);
|
||||
#else
|
||||
mavlink_att_pos_mocap_t *packet = (mavlink_att_pos_mocap_t *)msgbuf;
|
||||
@@ -253,9 +253,9 @@ static inline void mavlink_msg_att_pos_mocap_send_buf(mavlink_message_t *msgbuf,
|
||||
*
|
||||
* @return [us] Timestamp (UNIX Epoch time or time since system boot). The receiving end can infer timestamp format (since 1.1.1970 or since system boot) by checking for the magnitude the number.
|
||||
*/
|
||||
static inline uint64_t mavlink_msg_att_pos_mocap_get_time_usec(const mavlink_message_t* msg)
|
||||
static inline uint32_t mavlink_msg_att_pos_mocap_get_time_usec(const mavlink_message_t* msg)
|
||||
{
|
||||
return _MAV_RETURN_uint64_t(msg, 0);
|
||||
return _MAV_RETURN_uint32_t(msg, 0);
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -265,7 +265,7 @@ static inline uint64_t mavlink_msg_att_pos_mocap_get_time_usec(const mavlink_mes
|
||||
*/
|
||||
static inline uint16_t mavlink_msg_att_pos_mocap_get_q(const mavlink_message_t* msg, float *q)
|
||||
{
|
||||
return _MAV_RETURN_float_array(msg, q, 4, 8);
|
||||
return _MAV_RETURN_float_array(msg, q, 4, 4);
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -275,7 +275,7 @@ static inline uint16_t mavlink_msg_att_pos_mocap_get_q(const mavlink_message_t*
|
||||
*/
|
||||
static inline float mavlink_msg_att_pos_mocap_get_x(const mavlink_message_t* msg)
|
||||
{
|
||||
return _MAV_RETURN_float(msg, 24);
|
||||
return _MAV_RETURN_float(msg, 20);
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -285,7 +285,7 @@ static inline float mavlink_msg_att_pos_mocap_get_x(const mavlink_message_t* msg
|
||||
*/
|
||||
static inline float mavlink_msg_att_pos_mocap_get_y(const mavlink_message_t* msg)
|
||||
{
|
||||
return _MAV_RETURN_float(msg, 28);
|
||||
return _MAV_RETURN_float(msg, 24);
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -295,7 +295,7 @@ static inline float mavlink_msg_att_pos_mocap_get_y(const mavlink_message_t* msg
|
||||
*/
|
||||
static inline float mavlink_msg_att_pos_mocap_get_z(const mavlink_message_t* msg)
|
||||
{
|
||||
return _MAV_RETURN_float(msg, 32);
|
||||
return _MAV_RETURN_float(msg, 28);
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -305,7 +305,7 @@ static inline float mavlink_msg_att_pos_mocap_get_z(const mavlink_message_t* msg
|
||||
*/
|
||||
static inline uint16_t mavlink_msg_att_pos_mocap_get_covariance(const mavlink_message_t* msg, float *covariance)
|
||||
{
|
||||
return _MAV_RETURN_float_array(msg, covariance, 21, 36);
|
||||
return _MAV_RETURN_float_array(msg, covariance, 21, 32);
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
Reference in New Issue
Block a user