private void SetProgram(int channel, int programNumber, ToneItem tone) { toneParameterList[channel] = tone.ToneParameter; programNumbers[channel] = programNumber; toneVolumes[channel] = tone.Volume; SendProgramChange(channel); }
// ------ 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); }
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); }