#[non_exhaustive]pub enum MidiMessage {
Normal {
status: u8,
data1: u8,
data2: u8,
},
TempoChange {
bytes: [u8; 3],
},
LoopStart,
LoopEnd,
EndOfTrack,
}Expand description
A single event of a merged MIDI file.
Variants (Non-exhaustive)§
This enum is marked as non-exhaustive
Non-exhaustive enums could have additional variants added in future. Therefore, when matching against variants of non-exhaustive enums, an extra wildcard arm must be added to account for any future variants.
Normal
A channel message; status includes the channel in its low nibble.
TempoChange
A tempo change in microseconds per quarter note (FF 51 03).
Only seen while parsing; tempo changes are folded into the event times and never appear in the merged list.
LoopStart
Loop start marker (loop extensions only).
LoopEnd
Loop end marker (loop extensions only).
EndOfTrack
End of track.
Trait Implementations§
Source§impl Clone for MidiMessage
impl Clone for MidiMessage
impl Copy for MidiMessage
Source§impl Debug for MidiMessage
impl Debug for MidiMessage
impl Eq for MidiMessage
Source§impl PartialEq for MidiMessage
impl PartialEq for MidiMessage
impl StructuralPartialEq for MidiMessage
Auto Trait Implementations§
impl Freeze for MidiMessage
impl RefUnwindSafe for MidiMessage
impl Send for MidiMessage
impl Sync for MidiMessage
impl Unpin for MidiMessage
impl UnsafeUnpin for MidiMessage
impl UnwindSafe for MidiMessage
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more