Struct midi_msg::GlobalParameterControl

source ·
pub struct GlobalParameterControl {
    pub slot_paths: Vec<SlotPath>,
    pub param_id_width: u8,
    pub value_width: u8,
    pub params: Vec<GlobalParameter>,
}
Expand description

Global Parameter Control, to control parameters on a device that affect all sound. E.g. a global reverb. Used by UniversalRealTimeMsg::GlobalParameterControl.

As defined in CA-024.

This C/A is much more permissive than most, and thus has a pretty awkward interface.

Fields§

§slot_paths: Vec<SlotPath>

Between 0 and 127 SlotPaths, with each successive path representing a child of the preceding value. No paths refers to the “top level” (except if the first value refers to the top level ¯_(ツ)_/¯)

§param_id_width: u8

The number of bytes present in the ids of params, must be greater than 0 Must line up with the values provided in params or output will be massaged

§value_width: u8

The number of bytes present in the values of params, must be greater than 0 Must line up with the values provided in params` or output will be massaged

§params: Vec<GlobalParameter>

Any number of GlobalParameters

Implementations§

source§

impl GlobalParameterControl

source

pub fn reverb(reverb_type: Option<ReverbType>, reverb_time: Option<f32>) -> Self

Constructor for a GlobalParameterControl directed at a GM2 Reverb slot type.

reverb_time is the time in seconds (0.36 - 9.0) for which the low frequency portion of the original sound declines by 60dB

source

pub fn chorus( chorus_type: Option<ChorusType>, mod_rate: Option<f32>, mod_depth: Option<f32>, feedback: Option<f32>, send_to_reverb: Option<f32> ) -> Self

Constructor for a GlobalParameterControl directed at a GM2 Chorus slot type.

mod_rate is the modulation frequency in Hz (0.0-15.5).

mod_depth is the peak-to-peak swing of the modulation in ms (0.3-40.0).

feedback is the amount of feedback from Chorus output in percent (0.0-97.0).

send_to_reverb is the send level from Chorus to Reverb in percent (0.0-100.0).

Trait Implementations§

source§

impl Clone for GlobalParameterControl

source§

fn clone(&self) -> GlobalParameterControl

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl Debug for GlobalParameterControl

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl PartialEq for GlobalParameterControl

source§

fn eq(&self, other: &GlobalParameterControl) -> bool

This method tests for self and other values to be equal, and is used by ==.
1.0.0 · source§

fn ne(&self, other: &Rhs) -> bool

This method tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
source§

impl Eq for GlobalParameterControl

source§

impl StructuralPartialEq for GlobalParameterControl

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for T
where T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

source§

impl<T, U> Into<U> for T
where U: From<T>,

source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

source§

impl<T> ToOwned for T
where T: Clone,

§

type Owned = T

The resulting type after obtaining ownership.
source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

§

type Error = Infallible

The type returned in the event of a conversion error.
source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.