Trait MIDIReader

Source
pub trait MIDIReader: Debug {
    type ByteReader: TrackReader;

    // Required methods
    fn read_bytes_to(
        &self,
        pos: u64,
        bytes: Vec<u8>,
    ) -> Result<Vec<u8>, MIDILoadError>;
    fn len(&self) -> u64;
    fn open_reader(
        &self,
        track_number: Option<u32>,
        start: u64,
        len: u64,
    ) -> Self::ByteReader;

    // Provided methods
    fn read_bytes(
        &self,
        pos: u64,
        count: usize,
    ) -> Result<Vec<u8>, MIDILoadError> { ... }
    fn is_empty(&self) -> bool { ... }
}

Required Associated Types§

Required Methods§

Source

fn read_bytes_to( &self, pos: u64, bytes: Vec<u8>, ) -> Result<Vec<u8>, MIDILoadError>

Source

fn len(&self) -> u64

Source

fn open_reader( &self, track_number: Option<u32>, start: u64, len: u64, ) -> Self::ByteReader

Provided Methods§

Source

fn read_bytes(&self, pos: u64, count: usize) -> Result<Vec<u8>, MIDILoadError>

Source

fn is_empty(&self) -> bool

Implementors§