launch pt.6: short format

This commit is contained in:
🪞👃🪞 2024-11-01 22:20:59 +02:00
parent dc015fd5ef
commit 106e09121a
2 changed files with 18 additions and 8 deletions

View file

@ -228,18 +228,28 @@ pub trait MIDITime {
let pulse = pulse as usize;
let ppq = self.ppq().get() as usize;
let (beats, pulses) = if ppq > 0 { (pulse / ppq, pulse % ppq) } else { (0, 0) };
let bars = beats / 4;
let beats = beats % 4;
format!("{bars}.{beats}.{pulses:02}")
format!("{}.{}.{pulses:02}", beats / 4, beats % 4)
}
/// Format a number of pulses into Beat.Bar starting from 0
#[inline] fn format_beats_0_short (&self, pulse: f64) -> String {
let pulse = pulse as usize;
let ppq = self.ppq().get() as usize;
let beats = if ppq > 0 { pulse / ppq } else { 0 };
format!("{}.{}", beats / 4, beats % 4)
}
/// Format a number of pulses into Beat.Bar.Pulse starting from 1
#[inline] fn format_beats_1 (&self, pulse: f64) -> String {
let pulse = pulse as usize;
let ppq = self.ppq().get() as usize;
let (beats, pulses) = if ppq > 0 { (pulse / ppq, pulse % ppq) } else { (0, 0) };
let bars = beats / 4 + 1;
let beats = beats % 4 + 1;
format!("{bars}.{beats}.{pulses:02}")
format!("{}.{}.{pulses:02}", beats / 4 + 1, beats % 4 + 1)
}
/// Format a number of pulses into Beat.Bar.Pulse starting from 1
#[inline] fn format_beats_1_short (&self, pulse: f64) -> String {
let pulse = pulse as usize;
let ppq = self.ppq().get() as usize;
let beats = if ppq > 0 { pulse / ppq } else { 0 };
format!("{}.{}", beats / 4 + 1, beats % 4 + 1)
}
}
impl MIDITime for Timebase {