pub enum TuningSystem {
Show 28 variants
EqualTemperament {
octave_size: UnsignedIntegerType,
},
WholeTone,
QuarterTone,
CarlosHarmonic,
CarlosHarmonic24,
PythagoreanTuning,
FiveLimit,
ElevenLimit,
FortyThreeTone,
Javanese,
Thai,
PtolemyIntenseDiatonic,
IndianAlt,
Indian22,
QuarterCommaMeantone,
WerckmeisterIII,
Rameau,
KirnbergerIII,
Vallotti,
YoungII,
ThirdCommaMeantone,
SixthCommaMeantone,
WerckmeisterIV,
WerckmeisterV,
KirnbergerI,
NeidhardtI,
Silbermann,
LehmanBach,
}Expand description
Supported tuning systems and ratio tables.
Variants§
EqualTemperament
Equal temperament with a configurable octave size.
Fields
octave_size: UnsignedIntegerTypeNumber of equal divisions in each octave.
WholeTone
Six-tone equal temperament.
QuarterTone
Twenty-four-tone equal temperament.
CarlosHarmonic
Twelve-tone harmonic-series scale (Wendy Carlos’s Harmonic).
Not just intonation, despite its former name: the degrees are the
harmonic series 16:17:18:19:20:21:22:24:26:27:28:30, which reaches the
19-limit. TuningSystem::FiveLimit is the classical 12-tone JI scale.
CarlosHarmonic24
Twenty-four-tone harmonic-series scale.
PythagoreanTuning
Twelve-tone Pythagorean tuning table.
FiveLimit
Twelve-tone five-limit table.
ElevenLimit
Twenty-nine-tone eleven-limit table.
FortyThreeTone
Forty-three-tone ratio table.
Javanese
Five-tone Javanese equal-temperament approximation.
Thai
Seven-tone Thai equal-temperament approximation.
PtolemyIntenseDiatonic
Ptolemy’s intense diatonic, also Zarlino’s just major scale.
Greek and Renaissance European, despite once being filed here as an
Indian scale — the archive names it ptolemy.scl.
IndianAlt
Alternate seven-tone PtolemyIntenseDiatonic scale table.
Indian22
Twenty-two-tone PtolemyIntenseDiatonic scale table.
QuarterCommaMeantone
Twelve-tone quarter-comma meantone temperament (Aaron, 1523).
WerckmeisterIII
Twelve-tone Werckmeister III well temperament (1681).
Rameau
Twelve-tone Rameau modified meantone temperament (1725).
KirnbergerIII
Twelve-tone Kirnberger III well temperament (1744).
Vallotti
Twelve-tone Vallotti well temperament (c. 1754).
YoungII
Twelve-tone Thomas Young well temperament no. 2 (1799).
ThirdCommaMeantone
A twelve-tone third-comma meantone temperament (Salinas, 1577).
SixthCommaMeantone
A twelve-tone sixth-comma meantone temperament (Salinas, 1577).
WerckmeisterIV
A twelve-tone Werckmeister IV well temperament (1681).
WerckmeisterV
A twelve-tone Werckmeister V well temperament (1681).
KirnbergerI
A twelve-tone Kirnberger I well temperament (1766).
NeidhardtI
A twelve-tone Neidhardt I well temperament (1724).
Silbermann
A twelve-tone Gottfried Silbermann temperament no. 1 (c. 1730).
LehmanBach
A twelve-tone Lehman-Bach temperament (2005).
Implementations§
Source§impl TuningSystem
impl TuningSystem
Sourcepub fn display_name(self) -> &'static str
pub fn display_name(self) -> &'static str
Returns a compact display name for this tuning system.
Sourcepub fn description(self) -> &'static str
pub fn description(self) -> &'static str
Returns a short description of this tuning system.
Sourcepub fn label(self, index: UnsignedIntegerType) -> String
pub fn label(self, index: UnsignedIntegerType) -> String
Returns a display label for a degree index.
Sourcepub fn octave(self, index: UnsignedIntegerType) -> UnsignedIntegerType
pub fn octave(self, index: UnsignedIntegerType) -> UnsignedIntegerType
Returns the octave number containing a degree index.
Sourcepub fn frequency(self, index: UnsignedIntegerType) -> FloatType
pub fn frequency(self, index: UnsignedIntegerType) -> FloatType
Returns the frequency in hertz for a degree index.
Sourcepub fn frequency_at(self, index: FloatType) -> FloatType
pub fn frequency_at(self, index: FloatType) -> FloatType
Returns the frequency in hertz for a fractional degree index.
Sourcepub fn cents(self, index: UnsignedIntegerType) -> FloatType
pub fn cents(self, index: UnsignedIntegerType) -> FloatType
Returns cents offset from equal temperament for a degree index.
Sourcepub fn cents_at(self, index: FloatType) -> FloatType
pub fn cents_at(self, index: FloatType) -> FloatType
Returns cents offset from equal temperament for a fractional degree index.
Sourcepub fn octave_size(self) -> UnsignedIntegerType
pub fn octave_size(self) -> UnsignedIntegerType
Returns the number of degrees in one octave for this tuning system.
Trait Implementations§
Source§impl Clone for TuningSystem
impl Clone for TuningSystem
Source§fn clone(&self) -> TuningSystem
fn clone(&self) -> TuningSystem
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreimpl Copy for TuningSystem
Source§impl Debug for TuningSystem
impl Debug for TuningSystem
Source§impl Display for TuningSystem
impl Display for TuningSystem
impl Eq for TuningSystem
Source§impl From<TuningSystem> for AnyTuningSystem
impl From<TuningSystem> for AnyTuningSystem
Source§fn from(tuning_system: TuningSystem) -> Self
fn from(tuning_system: TuningSystem) -> Self
Source§impl FromStr for TuningSystem
impl FromStr for TuningSystem
Source§impl PartialEq for TuningSystem
impl PartialEq for TuningSystem
Source§fn eq(&self, other: &TuningSystem) -> bool
fn eq(&self, other: &TuningSystem) -> bool
self and other values to be equal, and is used by ==.impl StructuralPartialEq for TuningSystem
Auto Trait Implementations§
impl Freeze for TuningSystem
impl RefUnwindSafe for TuningSystem
impl Send for TuningSystem
impl Sync for TuningSystem
impl Unpin for TuningSystem
impl UnsafeUnpin for TuningSystem
impl UnwindSafe for TuningSystem
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<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more