Index
ET12
This functor defines a few procedues for a convenient ET 12 pitch notation.

Functor

Import

Export

Define

fun{Acc SymAcc}
Transforms symbolic accidental (atom) into the corresponding accidental integer for 12 ET. The following symbolic accidentals are supported: the empty atom '' is natural (!), '#' is a sharp, 'x' is a double sharp, 'b' is a flat, and 'bb' is a double flat.
Note: Returned value depends on {HS.db.getAccidentalOffset} -- leave this HS database value at its default.


fun{PC SymPC}
Tranforms a conventional symbolic note names to the corresponding 12 ET pitch class. Notation of the symbolic note names: 'C' is c natural, 'C#' is c sharp, 'Cb' is c flat (double sharp and double flat are supported as well).
NB: any flattened C and any raised B are undefined (otherwise, the meaning of octave would become inconsistent).


fun{PCName MyPC}
Expects a PC (an int) and returns a list of the corresponding 12 ET symbolic note names (a list of atoms). Complements function PC.


fun{Pitch SymPC#Octave}
Transforms a symbolic pair SymPC#Octave into the corresponding pitch (an int). SymPC is a pitch class symbol (an atom) as expected by the function PC, octave is an integer. The returned value depends on PitchesPerOctave.


End