You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
96 lines
2.6 KiB
96 lines
2.6 KiB
#include "utils.hh"
|
|
|
|
using namespace daisy;
|
|
|
|
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;
|
|
}
|
|
|
|
float scalen_center_range(float val, float center, float range)
|
|
{
|
|
float min = center - (range / 2);
|
|
float ret = min + (val * range);
|
|
return ret;
|
|
}
|
|
} // namespace Heck
|