Skip to main content

check/
check.rs

1use bbqueue::BBBuffer;
2use bno08x_rvc;
3use std::borrow::Borrow;
4
5static BB: BBBuffer<{ bno08x_rvc::BUFFER_SIZE }> = BBBuffer::new();
6
7fn main() -> std::io::Result<()> {
8    let test_data: Vec<u8> = vec![
9        0x34, 0x45, 0x32, 0xAA, 0xAA, 0xDE, 0x01, 0x00, 0x92, 0xFF, 0x25, 0x08, 0x8D, 0xFE, 0xEC,
10        0xFF, 0xD1, 0x03, 0x00, 0x00, 0x00, 0xE7, 0xFF, 0xBB, 0xAA,
11    ];
12
13    let (mut proc, mut parser) = match bno08x_rvc::create(BB.borrow()) {
14        Ok((proc, pars)) => (proc, pars),
15        Err(e) => {
16            println!("Can't create bno08x-rvc : {:?}", e);
17            return Ok(());
18        }
19    };
20
21    proc.process_slice(test_data.as_slice()).unwrap();
22
23    println!("Get last raw frame: {:?}", parser.get_last_raw_frame());
24
25    match parser.worker(|frame| {
26        println!("Worker Frame: {:?}", frame);
27    }) {
28        Ok(_) => {}
29        Err(e) => {
30            println!("Worker error: {:?}", e)
31        }
32    }
33
34    println!("Get last raw frame: {:?}", parser.get_last_raw_frame());
35
36    println!(
37        "Get last pretty frame: {:?}",
38        parser.get_last_raw_frame().unwrap().as_pretty_frame()
39    );
40
41    parser
42        .get_last_raw_frame()
43        .unwrap()
44        .as_pretty_closure(|p_f| {
45            println!("Pretty frame in closure: {:?}", p_f);
46        });
47
48    Ok(())
49}