view formats/src/th06/pos.rs @ 788:f56b10812b77

Remove leftover MSG import This should have been part of a30ce01b9154.
author Link Mauve <linkmauve@linkmauve.fr>
date Sun, 04 Jan 2026 11:47:06 +0100
parents ec1e06402a97
children
line wrap: on
line source

//! POS music track format support.

use nom::{IResult, Parser, number::complete::le_u32};

/// A struct describing the loop points of Touhou background music.
#[derive(Debug, Clone)]
pub struct LoopPoints {
    /// Time to which the music should loop after reaching end.
    pub start: u32,

    /// Time at which to loop back to start.
    pub end: u32,
}

impl LoopPoints {
    /// Parse a slice of bytes into a `LoopPoints` struct.
    pub fn from_slice(input: &[u8]) -> IResult<&[u8], LoopPoints> {
        let (i, (start, end)) = (le_u32, le_u32).parse(input)?;
        Ok((i, LoopPoints { start, end }))
    }
}