public static string ToStringEx(this ToneNameEnum tone, bool sharp = false) { var ret = string.Empty; if (tone != ToneNameEnum.NotSet) { if (sharp) { if (tone == ToneNameEnum.Gb) { ret = "F#"; } else if (tone == ToneNameEnum.Ab) { ret = "G#"; } else if (tone == ToneNameEnum.Ab) { ret = "G#"; } ret = tone.ToString(); } else { ret = tone.ToString(); } } return(ret); }
public static ToneNameData1 ToToneNameData1(this ToneNameEnum tone) { if (tone == ToneNameEnum.NotSet) { return(ToneNameData1.NotSet); } return((ToneNameData1)(ToneNameData1.BaseValue.ToInt() + tone.ToInt())); }
public static ToneNameEnum PreviousWholeNote(this ToneNameEnum tone) { var ret = tone.PreviousSemiNote(); if (ret.IsFlat()) { ret = ret.PreviousSemiNote(); } return(ret); }
public static ToneNameEnum PreviousSemiNote(this ToneNameEnum tone) { var prev = tone.ToInt() - 1; if (prev < 0) { prev = ToneNameEnum.Eb.ToInt(); } return((ToneNameEnum)prev); }
public static ToneNameEnum NextWholeNote(this ToneNameEnum tone) { var ret = tone.NextSemiNote(); if (ret.IsFlat()) { ret = ret.NextSemiNote(); } return(ret); }
public static ToneNameEnum NextSemiNote(this ToneNameEnum tone) { var next = tone.ToInt() + 1; if (next > ToneNameEnum.Eb.ToInt()) { next = ToneNameEnum.E.ToInt(); } return((ToneNameEnum)next); }
public static string GetToneLetter(this ToneNameEnum tone, bool sharp = false) { var ret = string.Empty; if (tone.IsNotNull()) { if (sharp && tone.IsFlat()) { ret = tone.PreviousSemiNote().GetToneLetter(); } else { tone.ToStringEx().IfNotEmpty(x => ret = x.First().ToString()); } } return(ret); }
public static bool IsFlat(this ToneNameEnum tone) { return(tone == ToneNameEnum.Gb || tone == ToneNameEnum.Ab || tone == ToneNameEnum.Bb || tone == ToneNameEnum.Db || tone == ToneNameEnum.Eb); }
public static bool IsNull(this ToneNameEnum tone) { return(tone == ToneNameEnum.NotSet); }
static ECToneNameEnum GetECToneName(ToneNameEnum tone) { return (ECToneNameEnum)((((int)tone) + 4) % 12); }
static ECToneNameEnum GetECToneName(ToneNameEnum tone) { return((ECToneNameEnum)((((int)tone) + 4) % 12)); }