LibiadaMusic.BorodaDivider.FmotivDivider.SecondTempMethod C# (CSharp) Method

SecondTempMethod() private method

The second temp method.
private SecondTempMethod ( Fmotiv fmotivBuffer, List fmotivList ) : void
fmotivBuffer Fmotiv /// The fmotiv buffer. ///
fmotivList List /// The fmotiv list. ///
return void
        private void SecondTempMethod(Fmotiv fmotivBuffer, List<Fmotiv> fmotivList)
        {
            if (ExtractNoteList(fmotivBuffer).Count == 1)
            {
                var fm = new Fmotiv("ЧМТ");
                for (int j = 0; j < fmotivBuffer.NoteList.Count; j++)
                {
                    // заносим
                    fm.NoteList.Add((ValueNote)fmotivBuffer.NoteList[j].Clone());
                }

                // добавляем в выходную цепочку получившийся фмотив
                fmotivList.Add((Fmotiv)fm.Clone());
                fmotivBuffer.NoteList.Clear();
            }
            else
            {
                // если больше 1 ноты, то вызываем рекурсию на оставшиеся ноты
                // отправляем последовательность равнодлительных звуков на анализ, получаем цепочку фмотивов и заносим их в выходную последовательность
                List<Fmotiv> dividedSameDuration = DivideSameDurationNotes(fmotivBuffer);
                foreach (Fmotiv fmotiv in dividedSameDuration)
                {
                    // заносим очередной фмотив
                    fmotivList.Add((Fmotiv)fmotiv.Clone());
                }
            }
        }