ULogMessageSource

Trait ULogMessageSource 

Source
pub trait ULogMessageSource {
    // Required method
    fn messages(&mut self) -> ULogMessageIter<'_> ;
}

Required Methods§

Source

fn messages(&mut self) -> ULogMessageIter<'_>

Creates an iterator that reads through every message in the log file

§Examples
use std::iter::*;
use px4_ulog::parser::message::*;
use px4_ulog::models::*;

let filename = format!("{}/tests/fixtures/6ba1abc7-b433-4029-b8f5-3b2bb12d3b6c.ulg", env!("CARGO_MANIFEST_DIR"));
let mut log_file = std::fs::File::open(&filename).unwrap();
let messages: Vec<ULogMessage> = log_file.messages().collect();
assert_eq!(messages[0].position(), 19);
assert_eq!(messages[0].msg_type(), MessageType::FlagBits);
assert_eq!(messages[0].size(), 40);
assert_eq!(messages[1].position(), 62);
assert_eq!(messages[21130].position(), 973045);
assert_eq!(messages.len(), 21131);

Implementations on Foreign Types§

Source§

impl ULogMessageSource for File

Source§

fn messages(&mut self) -> ULogMessageIter<'_>

Implementors§