Line data Source code
1 : #include "MIDI_MessageTypes.hpp" 2 : #include "Settings/NamespaceSettings.hpp" 3 : 4 : BEGIN_CS_NAMESPACE 5 : 6 6 : FlashString_t enum_to_string(MIDIMessageType m) { 7 : using M = MIDIMessageType; 8 6 : switch (m) { 9 0 : case M::NONE: return F("NONE"); 10 0 : case M::NOTE_OFF: return F("NOTE_OFF"); 11 0 : case M::NOTE_ON: return F("NOTE_ON"); 12 0 : case M::KEY_PRESSURE: return F("KEY_PRESSURE"); 13 0 : case M::CONTROL_CHANGE: return F("CONTROL_CHANGE"); 14 0 : case M::PROGRAM_CHANGE: return F("PROGRAM_CHANGE"); 15 0 : case M::CHANNEL_PRESSURE: return F("CHANNEL_PRESSURE"); 16 0 : case M::PITCH_BEND: return F("PITCH_BEND"); 17 0 : case M::SYSEX_START: return F("SYSEX_START"); 18 1 : case M::MTC_QUARTER_FRAME: return F("MTC_QUARTER_FRAME"); 19 1 : case M::SONG_POSITION_POINTER: return F("SONG_POSITION_POINTER"); 20 1 : case M::SONG_SELECT: return F("SONG_SELECT"); 21 0 : case M::UNDEFINED_SYSCOMMON_1: return F("UNDEFINED_SYSCOMMON_1"); 22 0 : case M::UNDEFINED_SYSCOMMON_2: return F("UNDEFINED_SYSCOMMON_2"); 23 1 : case M::TUNE_REQUEST: return F("TUNE_REQUEST"); 24 0 : case M::SYSEX_END: return F("SYSEX_END"); 25 2 : case M::TIMING_CLOCK: return F("TIMING_CLOCK"); 26 0 : case M::UNDEFINED_REALTIME_1: return F("UNDEFINED_REALTIME_1"); 27 0 : case M::START: return F("START"); 28 0 : case M::CONTINUE: return F("CONTINUE"); 29 0 : case M::STOP: return F("STOP"); 30 0 : case M::UNDEFINED_REALTIME_2: return F("UNDEFINED_REALTIME_2"); 31 0 : case M::ACTIVE_SENSING: return F("ACTIVE_SENSING"); 32 0 : case M::SYSTEM_RESET: return F("SYSTEM_RESET"); 33 0 : default: return F("<invalid>"); 34 : } 35 : } 36 : 37 : END_CS_NAMESPACE