Beispiel #1
0
 private void SetProgram(int channel, int programNumber, ToneItem tone)
 {
     toneParameterList[channel] = tone.ToneParameter;
     programNumbers[channel]    = programNumber;
     toneVolumes[channel]       = tone.Volume;
     SendProgramChange(channel);
 }
Beispiel #2
0
        // ------

        private void SetPercussionProgram(int channel, int programNumber, ToneItem tone)
        {
            if (toneParameterList[channel] == tone.ToneParameter)
            {
                toneVolumes[channel] = tone.Volume;
                SetPanpot(channel, tone.Panpot);
                return;
            }

            toneParameterList[channel] = tone.ToneParameter;
            programNumbers[channel]    = programNumber;
            toneVolumes[channel]       = tone.Volume;
            SetPanpot(channel, tone.Panpot);
            SendProgramChange(channel);
        }
Beispiel #3
0
        public void NotifyChangeTone(ToneItem toneItem)
        {
            if (toneItem == null || !toneItem.ProgramNumberAssigned)
            {
                return;
            }

            var i = 0;

            for (; i < 16; i++)
            {
                if (toneParameterList[i] == toneItem.ToneParameter)
                {
                    break;
                }
            }

            if (i == 16)
            {
                return;
            }

            ProgramChange(i, toneItem.ProgramNumber);
        }