public override void DestroyPins() { // CALL SLICE DISPOSE METHODS /////////////////////// for (int i = 0; i < FOutputSlices.Count; i++) { FOutputSlices[i].DestroyPins(); } // DELETE ALL SLICES //should already be empty FOutputSlices.Clear(); FOutputSlices = null; FHost = null; }
void NotesParsed() { List <TMidiNote> notes; FOutputSlices.Clear(); for (int i = 0; i < FMidiScore.TrackCount; i++) { notes = FMidiScore.GetNotesOfTrack(i); if (notes.Count > 0) { AddSlice(FOutputSlices.Count); (FOutputSlices[FOutputSlices.Count - 1] as TLMidiSlice).InitializeNotes(FMidiScore.GetNotesOfTrack(i)); (FOutputSlices[FOutputSlices.Count - 1] as TLMidiSlice).TrackName = FMidiScore.GetTrackName(i); (FOutputSlices[FOutputSlices.Count - 1] as TLMidiSlice).MinNote = (int)MinNote.Value; (FOutputSlices[FOutputSlices.Count - 1] as TLMidiSlice).MaxNote = (int)MaxNote.Value; } } Numerator.Value = FMidiScore.TimeSignature.Numerator; Denominator.Value = FMidiScore.TimeSignature.Denominator; BPM.Value = FMidiScore.BPM; this.Refresh(); }