const CtrlrMidiMessageType midiMessageToType (const MidiMessage &midiMessage) { if (midiMessage.isController()) { return (CC); } else if (midiMessage.isSysEx()) { return (SysEx); } else if (midiMessage.isNoteOn()) { return (NoteOn); } else if (midiMessage.isNoteOff()) { return (NoteOff); } else if (midiMessage.isAftertouch()) { return (Aftertouch); } else if (midiMessage.isChannelPressure()) { return (ChannelPressure); } else if (midiMessage.isProgramChange()) { return (ProgramChange); } else if (midiMessage.isPitchWheel()) { return (PitchWheel); } else if (midiMessage.isMidiClock()) { return (MidiClock); } else if (midiMessage.isMidiContinue()) { return (MidiClockContinue); } else if (midiMessage.isMidiStart()) { return (MidiClockStart); } else if (midiMessage.isMidiStop()) { return (MidiClockStop); } else if (midiMessage.isActiveSense()) { return (ActiveSense); } return (SysEx); }
void CtrlrPanelMIDIInputThread::handleMIDIFromDevice (const MidiMessage &message) { const ScopedWriteLock sl (lock); if (owner.getMidiOptionBool(panelMidiRealtimeIgnore) && message.getRawDataSize() <= 1) return; if (message.isNoteOnOrOff() || message.isMidiClock()) { deviceInputBuffer.addEvent (message, deviceInputBuffer.getNumEvents()+1); } else { deviceInputBuffer.addEvent (message, deviceInputBuffer.getNumEvents()+2); } notify(); }
const String getName(const MidiMessage &m) { if (m.isActiveSense()) { return (" [Active Sense]"); } if (m.isAftertouch()) { return (" [Aftertouch]"); } if (m.isAllNotesOff()) { return (" [All notes off]"); } if (m.isAllSoundOff()) { return (" [All sound off]"); } if (m.isChannelPressure()) { return (" [Channel pressure]"); } if (m.isController()) { return (" [Controller]"); } if (m.isFullFrame()) { return (" [Full frame]"); } if (m.isMetaEvent()) { return (" [Meta event]"); } if (m.isMidiClock()) { return (" [MIDI Clock]"); } if (m.isMidiContinue()) { return (" [MIDI Continue]"); } if (m.isMidiStart()) { return (" [MIDI Start]"); } if (m.isMidiStop()) { return (" [MIDI Stop]"); } if (m.isNoteOff()) { return (" [Note off]"); } if (m.isNoteOn()) { return (" [Note on]"); } if (m.isPitchWheel()) { return (" [Pitch wheel]"); } if (m.isProgramChange()) { return (" [Program change]"); } if (m.isQuarterFrame()) { return (" Quarter frame]"); } if (m.isSysEx()) { return (" [System exclusive]"); } return (" [Yet unknown]"); }