11namespace tracktion {
inline namespace engine
25 return sharp +
" / " + flat;
44 res.
add (sharp +
" / " + flat);
51 for (
int i = 0; i < 12; ++i)
52 if (getPitchAsStrings (engine, i + 60).contains (str))
62 if (separateSharpFlat)
64 for (
int i = 0; i < 12; ++i)
65 for (
auto s : getPitchAsStrings (engine, i + 60))
66 if (! s.contains (
"/"))
71 for (
int i = 0; i < 12; ++i)
72 pitchChoices.
add (getPitchAsString (engine, i + 60));
79 static float semitonesToRatio (
float semitonesUp)
noexcept
81 if (semitonesUp == 0.0f)
84 auto oneSemitone =
std::pow (2.0, 1.0 / 12.0);
85 return (
float)
std::pow (oneSemitone, (
double) semitonesUp);
static String getMidiNoteName(int noteNumber, bool useSharps, bool includeOctaveNumber, int octaveNumForMiddleC)
void add(String stringToAdd)
The Engine is the central class for all tracktion sessions.
EngineBehaviour & getEngineBehaviour() const
Returns the EngineBehaviour instance.