pub fn enum_per_sample<I: IntoIterator<Item = TimedValue<u32>, IntoIter: Clone>>(
state: EnumBufferState<I>,
) -> impl Iterator<Item = u32> + Clone
Expand description
Converts an EnumBufferState
into a per-sample iterator.
This provides the value of the parameter at each sample in the buffer.
§Example
let state = EnumBufferState::Varying(TimedEnumValues::new(
vec![
TimedValue { sample_offset: 0, value: 0 },
TimedValue { sample_offset: 3, value: 1 },
],
5,
0..2,
).unwrap());
assert!(
enum_per_sample(state).eq([0, 0, 0, 1, 1].iter().cloned())
);