pub struct BipolarOf<const LIMIT: i16, const UNIT: u8> { /* private fields */ }Expand description
A 0..=127 slot whose musical zero is its centre, reading ±LIMIT of the unit
UNIT codes either side.
The Stage equalizer bands are the clearest case: the manuals give “the boost/cut range
is +/- 15 dB” for all three models, and rendering those on Level’s 0..10 reads a
cut as a small boost.
⚠️ The unit is the declaration’s, not the shape’s: a ±10 modulation amount is not
decibels because an equalizer band is. Name it through EqBand or Bipolar
rather than writing the code out.
⚠️ The centre is taken as 64 — the midpoint of the slot. Inferred from specimens; not confirmed on hardware. The corpus does not distinguish 63 from 64, and no manual states it. A reading is therefore accurate at the endpoints and approximate in between.
Implementations§
Trait Implementations§
impl<const LIMIT: i16, const UNIT: u8> Copy for BipolarOf<LIMIT, UNIT>
Source§impl<const LIMIT: i16, const UNIT: u8> Debug for BipolarOf<LIMIT, UNIT>
The stored byte, so a retype from a plain integer leaves the field dumps alone.
impl<const LIMIT: i16, const UNIT: u8> Debug for BipolarOf<LIMIT, UNIT>
The stored byte, so a retype from a plain integer leaves the field dumps alone.
impl<const LIMIT: i16, const UNIT: u8> Eq for BipolarOf<LIMIT, UNIT>
Source§impl<const LIMIT: i16, const UNIT: u8> Ord for BipolarOf<LIMIT, UNIT>
impl<const LIMIT: i16, const UNIT: u8> Ord for BipolarOf<LIMIT, UNIT>
1.21.0 (const: unstable) · Source§fn max(self, other: Self) -> Selfwhere
Self: Sized,
fn max(self, other: Self) -> Selfwhere
Self: Sized,
1.21.0 (const: unstable) · Source§fn min(self, other: Self) -> Selfwhere
Self: Sized,
fn min(self, other: Self) -> Selfwhere
Self: Sized,
Source§impl<const LIMIT: i16, const UNIT: u8> Packed for BipolarOf<LIMIT, UNIT>
impl<const LIMIT: i16, const UNIT: u8> Packed for BipolarOf<LIMIT, UNIT>
Source§const MAX_BITS: u32 = 7
const MAX_BITS: u32 = 7
Source§const DECODE_BITS: u32 = u8::BITS
const DECODE_BITS: u32 = u8::BITS
Source§const CONTROL: ControlKind
const CONTROL: ControlKind
Source§type Error = ParseError
type Error = ParseError
Infallible when every pattern is.Source§impl<const LIMIT: i16, const UNIT: u8> PartialOrd for BipolarOf<LIMIT, UNIT>
impl<const LIMIT: i16, const UNIT: u8> PartialOrd for BipolarOf<LIMIT, UNIT>
impl<const LIMIT: i16, const UNIT: u8> StructuralPartialEq for BipolarOf<LIMIT, UNIT>
Auto Trait Implementations§
impl<const LIMIT: i16, const UNIT: u8> Freeze for BipolarOf<LIMIT, UNIT>
impl<const LIMIT: i16, const UNIT: u8> RefUnwindSafe for BipolarOf<LIMIT, UNIT>
impl<const LIMIT: i16, const UNIT: u8> Send for BipolarOf<LIMIT, UNIT>
impl<const LIMIT: i16, const UNIT: u8> Sync for BipolarOf<LIMIT, UNIT>
impl<const LIMIT: i16, const UNIT: u8> Unpin for BipolarOf<LIMIT, UNIT>
impl<const LIMIT: i16, const UNIT: u8> UnsafeUnpin for BipolarOf<LIMIT, UNIT>
impl<const LIMIT: i16, const UNIT: u8> UnwindSafe for BipolarOf<LIMIT, UNIT>
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<Q, K> Comparable<K> for Q
impl<Q, K> Comparable<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key and return true if they are equal.