107 |
for (; engineiter != end; engineiter++) (*engineiter)->SendControlChange(Controller, Value); |
for (; engineiter != end; engineiter++) (*engineiter)->SendControlChange(Controller, Value); |
108 |
} |
} |
109 |
|
|
110 |
|
void MidiInputPort::DispatchSysex(void* pData, uint Size) { |
111 |
|
for (uint MidiChannel = 0; MidiChannel <= 16; MidiChannel++) { |
112 |
|
std::set<Engine*>::iterator engineiter = MidiChannelMap[MidiChannel].begin(); |
113 |
|
std::set<Engine*>::iterator end = MidiChannelMap[MidiChannel].end(); |
114 |
|
for (; engineiter != end; engineiter++) (*engineiter)->SendSysex(pData, Size); |
115 |
|
} |
116 |
|
} |
117 |
|
|
118 |
void MidiInputPort::Connect(Engine* pEngine, midi_chan_t MidiChannel) { |
void MidiInputPort::Connect(Engine* pEngine, midi_chan_t MidiChannel) { |
119 |
if (MidiChannel < 0 || MidiChannel > 16) |
if (MidiChannel < 0 || MidiChannel > 16) |
120 |
throw MidiInputException("MIDI channel index out of bounds"); |
throw MidiInputException("MIDI channel index out of bounds"); |