pub struct MessageFormat {
pub msg_type: u8,
pub msg_len: u8,
pub name: String,
pub format: String,
pub labels: Arc<[String]>,
}Expand description
Schema definition for a DataFlash message type, parsed from a FMT message.
Fields§
§msg_type: u8Message type ID (0–255)
msg_len: u8Total message length in bytes (including 3-byte header)
name: StringMessage name (e.g. “ATT”, “GPS”, “IMU”)
format: StringRaw format string (e.g. “QccccCCCC”)
labels: Arc<[String]>Field labels in order (e.g. [“TimeUS”, “Roll”, “Pitch”, …]).
Shared with parsed entries via Arc to avoid per-entry string copies.
Implementations§
Source§impl MessageFormat
impl MessageFormat
Sourcepub fn payload_size(&self) -> usize
pub fn payload_size(&self) -> usize
Return the computed payload size from the format string (sum of field sizes).
Sourcepub fn decode_fields(
&self,
payload: &[u8],
) -> Result<Vec<FieldValue>, BinlogError>
pub fn decode_fields( &self, payload: &[u8], ) -> Result<Vec<FieldValue>, BinlogError>
Decode a raw payload buffer into field values using this format’s type string.
Labels are shared separately via Arc<[String]>.
Trait Implementations§
Source§impl Clone for MessageFormat
impl Clone for MessageFormat
Source§fn clone(&self) -> MessageFormat
fn clone(&self) -> MessageFormat
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreAuto Trait Implementations§
impl Freeze for MessageFormat
impl RefUnwindSafe for MessageFormat
impl Send for MessageFormat
impl Sync for MessageFormat
impl Unpin for MessageFormat
impl UnsafeUnpin for MessageFormat
impl UnwindSafe for MessageFormat
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
Mutably borrows from an owned value. Read more