|
|
@ -2,77 +2,95 @@ |
|
|
|
|
|
|
|
using namespace daisy; |
|
|
|
|
|
|
|
void GetMidiTypeAsString(MidiEvent& msg, char* str) |
|
|
|
{ |
|
|
|
switch (msg.type) { |
|
|
|
case NoteOff: |
|
|
|
strcpy(str, "NoteOff"); |
|
|
|
break; |
|
|
|
case NoteOn: |
|
|
|
strcpy(str, "NoteOn"); |
|
|
|
break; |
|
|
|
case PolyphonicKeyPressure: |
|
|
|
strcpy(str, "PolyKeyPres."); |
|
|
|
break; |
|
|
|
case ControlChange: |
|
|
|
strcpy(str, "CC"); |
|
|
|
break; |
|
|
|
case ProgramChange: |
|
|
|
strcpy(str, "Prog. Change"); |
|
|
|
break; |
|
|
|
case ChannelPressure: |
|
|
|
strcpy(str, "Chn. Pressure"); |
|
|
|
break; |
|
|
|
case PitchBend: |
|
|
|
strcpy(str, "PitchBend"); |
|
|
|
break; |
|
|
|
case SystemCommon: |
|
|
|
strcpy(str, "Sys. Common"); |
|
|
|
break; |
|
|
|
case SystemRealTime: |
|
|
|
strcpy(str, "Sys. Realtime"); |
|
|
|
break; |
|
|
|
case ChannelMode: |
|
|
|
strcpy(str, "Chn. Mode"); |
|
|
|
break; |
|
|
|
default: |
|
|
|
strcpy(str, "Unknown"); |
|
|
|
break; |
|
|
|
namespace Heck { |
|
|
|
|
|
|
|
void GetMidiTypeAsString(MidiEvent& msg, char* str) |
|
|
|
{ |
|
|
|
switch (msg.type) { |
|
|
|
case NoteOff: |
|
|
|
strcpy(str, "NoteOff"); |
|
|
|
break; |
|
|
|
case NoteOn: |
|
|
|
strcpy(str, "NoteOn"); |
|
|
|
break; |
|
|
|
case PolyphonicKeyPressure: |
|
|
|
strcpy(str, "PolyKeyPres."); |
|
|
|
break; |
|
|
|
case ControlChange: |
|
|
|
strcpy(str, "CC"); |
|
|
|
break; |
|
|
|
case ProgramChange: |
|
|
|
strcpy(str, "Prog. Change"); |
|
|
|
break; |
|
|
|
case ChannelPressure: |
|
|
|
strcpy(str, "Chn. Pressure"); |
|
|
|
break; |
|
|
|
case PitchBend: |
|
|
|
strcpy(str, "PitchBend"); |
|
|
|
break; |
|
|
|
case SystemCommon: |
|
|
|
strcpy(str, "Sys. Common"); |
|
|
|
break; |
|
|
|
case SystemRealTime: |
|
|
|
strcpy(str, "Sys. Realtime"); |
|
|
|
break; |
|
|
|
case ChannelMode: |
|
|
|
strcpy(str, "Chn. Mode"); |
|
|
|
break; |
|
|
|
default: |
|
|
|
strcpy(str, "Unknown"); |
|
|
|
break; |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
void GetMidiRTTypeAsString(MidiEvent& msg, char* str) |
|
|
|
{ |
|
|
|
switch (msg.srt_type) { |
|
|
|
case TimingClock: |
|
|
|
strcpy(str, "TimingClock"); |
|
|
|
break; |
|
|
|
case SRTUndefined0: |
|
|
|
strcpy(str, "SRTUndefined0"); |
|
|
|
break; |
|
|
|
case Start: |
|
|
|
strcpy(str, "Start"); |
|
|
|
break; |
|
|
|
case Continue: |
|
|
|
strcpy(str, "Continue"); |
|
|
|
break; |
|
|
|
case Stop: |
|
|
|
strcpy(str, "Stop"); |
|
|
|
break; |
|
|
|
case SRTUndefined1: |
|
|
|
strcpy(str, "SRTUndefined1"); |
|
|
|
break; |
|
|
|
case ActiveSensing: |
|
|
|
strcpy(str, "ActiveSensing"); |
|
|
|
break; |
|
|
|
case Reset: |
|
|
|
strcpy(str, "Reset"); |
|
|
|
break; |
|
|
|
case SystemRealTimeLast: |
|
|
|
strcpy(str, "SystemRealTimeLast"); |
|
|
|
break; |
|
|
|
default: |
|
|
|
strcpy(str, "Unknown"); |
|
|
|
break; |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
float scalen_min_max(float val, float min, float max) |
|
|
|
{ |
|
|
|
float range = max - min; |
|
|
|
float ret = min + (val * range); |
|
|
|
return ret; |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
void GetMidiRTTypeAsString(MidiEvent& msg, char* str) |
|
|
|
{ |
|
|
|
switch (msg.srt_type) { |
|
|
|
case TimingClock: |
|
|
|
strcpy(str, "TimingClock"); |
|
|
|
break; |
|
|
|
case SRTUndefined0: |
|
|
|
strcpy(str, "SRTUndefined0"); |
|
|
|
break; |
|
|
|
case Start: |
|
|
|
strcpy(str, "Start"); |
|
|
|
break; |
|
|
|
case Continue: |
|
|
|
strcpy(str, "Continue"); |
|
|
|
break; |
|
|
|
case Stop: |
|
|
|
strcpy(str, "Stop"); |
|
|
|
break; |
|
|
|
case SRTUndefined1: |
|
|
|
strcpy(str, "SRTUndefined1"); |
|
|
|
break; |
|
|
|
case ActiveSensing: |
|
|
|
strcpy(str, "ActiveSensing"); |
|
|
|
break; |
|
|
|
case Reset: |
|
|
|
strcpy(str, "Reset"); |
|
|
|
break; |
|
|
|
case SystemRealTimeLast: |
|
|
|
strcpy(str, "SystemRealTimeLast"); |
|
|
|
break; |
|
|
|
default: |
|
|
|
strcpy(str, "Unknown"); |
|
|
|
break; |
|
|
|
float scalen_center_range(float val, float center, float range) |
|
|
|
{ |
|
|
|
float min = center - (range / 2); |
|
|
|
float ret = min + (val * range); |
|
|
|
return ret; |
|
|
|
} |
|
|
|
} |
|
|
|
} // namespace Heck
|