pub struct BusLayout {
pub inputs: SmallVec<[Bus; 2]>,
pub outputs: SmallVec<[Bus; 2]>,
}Expand description
One complete I/O topology the plugin supports.
Hosts iterate over a plugin’s declared layouts and pick one
before activation. After activation the layout is fixed until
crate::PluginCore::deactivate is called.
Fields§
§inputs: SmallVec<[Bus; 2]>Input buses in declaration order. Index 0 is the main input (when present); later indices are sidechains / auxiliaries.
outputs: SmallVec<[Bus; 2]>Output buses in declaration order. Index 0 is the main output; later indices are auxiliaries.
Implementations§
Source§impl BusLayout
impl BusLayout
Sourcepub fn stereo_with_sidechain(sidechain_name: &str) -> Self
pub fn stereo_with_sidechain(sidechain_name: &str) -> Self
Stereo + sidechain input, stereo output. Compressors, gates, vocoders.
Sourcepub fn total_input_channels(&self) -> u32
pub fn total_input_channels(&self) -> u32
Total input channels across every bus.
Sourcepub fn total_output_channels(&self) -> u32
pub fn total_output_channels(&self) -> u32
Total output channels across every bus.
Trait Implementations§
Auto Trait Implementations§
impl Freeze for BusLayout
impl RefUnwindSafe for BusLayout
impl Send for BusLayout
impl Sync for BusLayout
impl Unpin for BusLayout
impl UnsafeUnpin for BusLayout
impl UnwindSafe for BusLayout
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