MidiMessage.common constructor
MidiMessage.common(
- int status,
- int data1, [
- int data2 = 0,
- MidiFileLoopType loopType = MidiFileLoopType.none,
Implementation
factory MidiMessage.common(int status, int data1,
[int data2 = 0, MidiFileLoopType loopType = MidiFileLoopType.none]) {
final channel = status & 0x0F;
final command = status & 0xF0;
if (command == 0xB0) {
switch (loopType) {
case MidiFileLoopType.rpgMaker:
if (data1 == 111) {
return MidiMessage.loopStart();
}
break;
case MidiFileLoopType.incredibleMachine:
if (data1 == 110) {
return MidiMessage.loopStart();
}
if (data1 == 111) {
return MidiMessage.loopEnd();
}
break;
case MidiFileLoopType.finalFantasy:
if (data1 == 116) {
return MidiMessage.loopStart();
}
if (data1 == 117) {
return MidiMessage.loopEnd();
}
break;
default:
}
}
return MidiMessage._(channel, command, data1, data2);
}