Beispiel #1
0
        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;
        }
Beispiel #2
0
        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();
        }