1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
ix!();
#[enum_dispatch]
pub trait ModulationSourceControl: Debug {
fn get_type(&self) -> ModSrcType;
fn get_output(&self) -> f64;
fn get_output01(&self) -> f64;
fn per_voice(&self) -> bool { false }
fn is_bipolar(&self) -> bool { false }
fn set_bipolar(&mut self, b: bool);
fn process_block(&mut self);
fn attack(&mut self) {}
fn release(&mut self) {}
fn reset(&mut self) {}
fn set_output(&mut self, x: f64);
fn enable(&mut self, v: bool);
fn enabled(&self) -> bool;
}