private static void TempMethod(Fmotiv fmotiv, Fmotiv fmotivBuffer)
{
if (fmotiv.NoteList[fmotiv.NoteList.Count - 1].Tie != Tie.None)
{
// если есть флаг начала лиги, то записываем в буфер все остальные лигованные ноты, пока не будет флага конца лиги
if (fmotiv.NoteList[fmotiv.NoteList.Count - 1].Tie == Tie.Start)
{
// TODO: желательно сделать проверку когда собирается очередная лига,
// не будет ли пуста цепь нот, до того как лига закончится (будет флаг конца лиги)
while (fmotivBuffer.NoteList[0].Tie == Tie.StartStop)
{
// пока продолжается лига, заносим ноты в буфер
fmotiv.NoteList.Add((ValueNote)fmotivBuffer.NoteList[0].Clone());
fmotivBuffer.NoteList.RemoveAt(0);
}
if (fmotivBuffer.NoteList[0].Tie == Tie.Stop)
{
// если есть флаг конца лиги у очередной ноты, то заносим конечную ноту лиги в буфер
fmotiv.NoteList.Add((ValueNote)fmotivBuffer.NoteList[0].Clone());
fmotivBuffer.NoteList.RemoveAt(0);
}
else
{
// когда лига не заканчивается флагом конца, то ошибка
throw new Exception("LibiadaMusic: FmotivDivider, wrong Tie organization!End!");
}
}
else
{
// когда начинается лига не с флага начала, а с какого то другого, то ошибка
throw new Exception("LibiadaMusic: FmotivDivider, wrong Tie organization!Begining!");
}
}
}