Struct mavlink::development::MISSION_CHECKSUM_DATA
source · pub struct MISSION_CHECKSUM_DATA {
pub checksum: u32,
pub mission_type: MavMissionType,
}
development
only.Expand description
id: 53 Checksum for the current mission, rally point or geofence plan, or for the “combined” plan (a GCS can use these checksums to determine if it has matching plans). This message must be broadcast with the appropriate checksum following any change to a mission, geofence or rally point definition (immediately after the MISSION_ACK that completes the upload sequence). It may also be requested using MAV_CMD_REQUEST_MESSAGE, where param 2 indicates the plan type for which the checksum is required. The checksum must be calculated on the autopilot, but may also be calculated by the GCS. The checksum uses the same CRC32 algorithm as MAVLink FTP (https://mavlink.io/en/services/ftp.html#crc32-implementation). The checksum for a mission, geofence or rally point definition is run over each item in the plan in seq order (excluding the home location if present in the plan), and covers the following fields (in order): frame, command, autocontinue, param1, param2, param3, param4, param5, param6, param7. The checksum for the whole plan (MAV_MISSION_TYPE_ALL) is calculated using the same approach, running over each sub-plan in the following order: mission, geofence then rally point..
Fields§
§checksum: u32
CRC32 checksum of current plan for specified type..
mission_type: MavMissionType
Mission type..
Implementations§
source§impl MISSION_CHECKSUM_DATA
impl MISSION_CHECKSUM_DATA
pub const ENCODED_LEN: usize = 5usize
pub const DEFAULT: Self = _
Trait Implementations§
source§impl Clone for MISSION_CHECKSUM_DATA
impl Clone for MISSION_CHECKSUM_DATA
source§fn clone(&self) -> MISSION_CHECKSUM_DATA
fn clone(&self) -> MISSION_CHECKSUM_DATA
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moresource§impl Debug for MISSION_CHECKSUM_DATA
impl Debug for MISSION_CHECKSUM_DATA
source§impl Default for MISSION_CHECKSUM_DATA
impl Default for MISSION_CHECKSUM_DATA
source§impl<'de> Deserialize<'de> for MISSION_CHECKSUM_DATA
impl<'de> Deserialize<'de> for MISSION_CHECKSUM_DATA
source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
source§impl MessageData for MISSION_CHECKSUM_DATA
impl MessageData for MISSION_CHECKSUM_DATA
const ID: u32 = 53u32
const NAME: &'static str = "MISSION_CHECKSUM"
const EXTRA_CRC: u8 = 3u8
const ENCODED_LEN: usize = 5usize
type Message = MavMessage
fn deser(_version: MavlinkVersion, __input: &[u8]) -> Result<Self, ParserError>
fn ser(&self, version: MavlinkVersion, bytes: &mut [u8]) -> usize
source§impl PartialEq for MISSION_CHECKSUM_DATA
impl PartialEq for MISSION_CHECKSUM_DATA
source§impl Serialize for MISSION_CHECKSUM_DATA
impl Serialize for MISSION_CHECKSUM_DATA
impl StructuralPartialEq for MISSION_CHECKSUM_DATA
Auto Trait Implementations§
impl Freeze for MISSION_CHECKSUM_DATA
impl RefUnwindSafe for MISSION_CHECKSUM_DATA
impl Send for MISSION_CHECKSUM_DATA
impl Sync for MISSION_CHECKSUM_DATA
impl Unpin for MISSION_CHECKSUM_DATA
impl UnwindSafe for MISSION_CHECKSUM_DATA
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
source§unsafe fn clone_to_uninit(&self, dst: *mut T)
unsafe fn clone_to_uninit(&self, dst: *mut T)
clone_to_uninit
)