pub struct Macro {
pub values: Vec<i16>,
pub step: MacroStep,
pub loop_start: Option<usize>,
}Expand description
An integer instrument sequence. Index zero applies to the first sample. At its
end it holds, or loops to loop_start after playing the initial prefix once.
Volume values are 0..=15; duty values 0..=3 select 12.5/25/50/75 percent;
arpeggio values are -48..=48 semitones; fine pitch is -1200..=1200 cents.
Fields§
§values: Vec<i16>§step: MacroStep§loop_start: Option<usize>Implementations§
Source§impl Macro
impl Macro
pub fn new(values: Vec<i16>, step: MacroStep) -> Result<Self>
pub fn validate(&self) -> Result<()>
Sourcepub fn value_at(
&self,
frame: u64,
sample_rate: u32,
tempo: u16,
ticks_per_quarter: u16,
) -> Result<i16>
pub fn value_at( &self, frame: u64, sample_rate: u32, tempo: u16, ticks_per_quarter: u16, ) -> Result<i16>
Query a validated macro at a relative note age. Steps use a rational clock (no cumulative rounding). Tick boundaries can differ by one sample from globally floor-rounded score note positions.
Trait Implementations§
impl Eq for Macro
impl StructuralPartialEq for Macro
Auto Trait Implementations§
impl Freeze for Macro
impl RefUnwindSafe for Macro
impl Send for Macro
impl Sync for Macro
impl Unpin for Macro
impl UnsafeUnpin for Macro
impl UnwindSafe for Macro
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