This commit is contained in:
2025-09-20 10:38:15 -07:00
parent 8e6ed92eea
commit 6d3fbb926e
13 changed files with 72 additions and 70 deletions

View File

@@ -1,21 +1,20 @@
use crate::data::reader::DataReader;
use crate::hardware::error::NotAvailableError;
use anyhow::Result;
pub struct Header {
pub length: u16,
pub channel: u8,
pub sequence_number: u8
pub sequence_number: u8,
}
impl Header {
pub const SIZE: usize = size_of::<u16>() + size_of::<u8>() + size_of::<u8>();
pub fn parse(bytes: &mut impl DataReader) -> Result<Self> {
let length = bytes.read_le::<u16>().ok_or(NotAvailableError)?;
let channel = bytes.read_le::<u8>().ok_or(NotAvailableError)?;
let sequence_number = bytes.read_le::<u8>().ok_or(NotAvailableError)?;
Ok(Self {
length,
channel,