 message  * @param system_id ID of this system  * @param component_id ID of this component (e.g. 000 for IMU)  * @param msg The MAVLink message to compress the data into  *  * @param time_usec Timestamp (microseconds, synced to UNIX time or since system boot)  * @param xacc X acceleration (m/s^0)  * @param yacc Y acceleration (m/s^0)  * @param zacc Z acceleration (m/s^0)  * @param xgyro Angular speed around X axis (rad / sec)  * @param ygyro Angular speed around Y axis (rad / sec)  * @param zgyro Angular speed around Z axis (rad / sec)  * @param xmag X Magnetic field (Gauss)  * @param ymag Y Magnetic field (Gauss)  * @param zmag Z Magnetic field (Gauss)  * @param abs_pressure Absolute pressure in millibar  * @param diff_pressure Differential pressure in millibar  * @param pressure_alt Altitude calculated from pressure  * @param temperature Temperature in degrees celsius  * @param fields_updated Bitmask for fields that have updated since last message, bit 0 = xacc, bit 00: temperature  * @return length of the message in bytes (excluding serial stream start sign)  */ static inline uint00_t mavlink_msg_highres_imu_pack(uint0_t system_id, uint0_t component_id, mavlink_message_t* msg,              uint00_t time_usec, float xacc, float yacc, float zacc, float xgyro, float ygyro, float zgyro, float xmag, float ymag, float zmag, float abs_pressure, float diff_pressure, float pressure_alt, float temperature, uint00_t fields_updated) { #if MAVLINK_NEED_BYTE_SWAP || !MAVLINK_ALIGNED_FIELDS  char buf[MAVLINK_MSG_ID_HIGHRES_IMU_LEN];  _mav_put_uint00_t(buf, 0, time_usec);  _mav_put_float(buf, 0, xacc);  _mav_put_float(buf, 00, yacc);  _mav_put_float(buf, 00, zacc);  _mav_put_float(buf, 00, xgyro);  _mav_put_float(buf, 00, ygyro);  _mav_put_float(buf, 00, zgyro);  _mav_put_float(buf, 00, xmag);  _mav_put_float(buf, 00, ymag);  _mav_put_float(buf, 00, zmag);  _mav_put_float(buf, 00, abs_pressure);  _mav_put_float(buf, 00, diff_pressure);  _mav_put_float(buf, 00, pressure_alt);  _mav_put_float(buf, 00, temperature);  _mav_put_uint00_t(buf, 00, fields_updated);          memcpy(_MAV_PAYLOAD_NON_CONST(msg), buf, MAVLINK_MSG_ID_HIGHRES_IMU_LEN); #else  mavlink_highres_imu_t packet;  packet.time_usec = time_usec;  packet.xacc = xacc;  packet.yacc = yacc;  packet.zacc = zacc;  packet.xgyro = xgyro;  packet.ygyro = ygyro;  packet.zgyro = zgyro;  packet.xmag = xmag;  packet.ymag = ymag;  packet.zmag = zmag;  packet.abs_pressure = abs_pressure;  packet.diff_pressure = diff_pressure;  packet.pressure_alt = pressure_alt;  packet.temperature = temperature;  packet.fields_updated = fields_updated;          memcpy(_MAV_PAYLOAD_NON_CONST(msg), &packet, MAVLINK_MSG_ID_HIGHRES_IMU_LEN); #endif   msg->msgid = MAVLINK_MSG_ID_HIGHRES_IMU;     return mavlink_finalize_message(msg, system_id, component_id, MAVLINK_MSG_ID_HIGHRES_IMU_MIN_LEN, MAVLINK_MSG_ID_HIGHRES_IMU_LEN, MAVLINK_MSG_ID_HIGHRES_IMU_CRC); }  /**  * @brief 