|
@@ -20,12 +20,12 @@ MidiMessage* MidiMessage::parseMessage(std::vector<unsigned char> &messageBytes)
|
|
|
|
|
|
switch(messageType)
|
|
|
{
|
|
|
- case 0x8:
|
|
|
- case 0x9:
|
|
|
+ case NoteOnMessage::messageType:
|
|
|
+ case NoteOffMessage::messageType:
|
|
|
{
|
|
|
unsigned char pitch = messageBytes[1];
|
|
|
unsigned char velocity = messageBytes[2];
|
|
|
- if(messageType == 0x8 || velocity == 0)
|
|
|
+ if(messageType == NoteOffMessage::messageType || velocity == 0)
|
|
|
{
|
|
|
return new NoteOffMessage(channel, pitch, velocity);
|
|
|
}
|
|
@@ -34,11 +34,11 @@ MidiMessage* MidiMessage::parseMessage(std::vector<unsigned char> &messageBytes)
|
|
|
return new NoteOnMessage(channel, pitch, velocity);
|
|
|
}
|
|
|
}
|
|
|
- case 0xB:
|
|
|
+ case ControlChangeMessage::messageType:
|
|
|
return new ControlChangeMessage(channel, messageBytes[1], messageBytes[2]);
|
|
|
- case 0xC:
|
|
|
+ case ProgramChangeMessage::messageType:
|
|
|
return new ProgramChangeMessage(channel, messageBytes[1]);
|
|
|
- case 0xE:
|
|
|
+ case PitchBendChangeMessage::messageType:
|
|
|
// messageBytes[1] are the least significant 7 bits.
|
|
|
// messageBytes[2] are the most significant 7 bits.
|
|
|
return new PitchBendChangeMessage(
|
|
@@ -95,7 +95,7 @@ std::vector<unsigned char> PitchBendChangeMessage::getBytes() const
|
|
|
bytes[0] = messageType << 4 | channel;
|
|
|
// bytes[1] are the seven least significant bits.
|
|
|
// bytes[2] are the seven most significant bits.
|
|
|
- bytes[1] = value & (1 << 7 - 1);
|
|
|
+ bytes[1] = value & ((1 << 7) - 1);
|
|
|
bytes[2] = value >> 7;
|
|
|
return bytes;
|
|
|
}
|