1
package org.herac.tuxguitar.io.midi.base;
3
public class MidiMessage{
5
public static final int TYPE_SHORT = 1;
6
public static final int TYPE_META = 2;
8
public static final int NOTE_OFF = 0x80;
9
public static final int NOTE_ON = 0x90;
10
public static final int CONTROL_CHANGE = 0xB0;
11
public static final int PROGRAM_CHANGE = 0xC0;
12
public static final int PITCH_BEND = 0xE0;
13
public static final int SYSTEM_RESET = 0xFF;
14
public static final int TEMPO_CHANGE = 0x51;
15
public static final int TIME_SIGNATURE_CHANGE = 0x58;
21
public MidiMessage(int message, int command) {
22
this.message = message;
23
this.command = command;
26
public void setData(byte[] data) {
30
public byte[] getData() {
38
public int getCommand(){
42
public static MidiMessage shortMessage(int command, int channel, int data1, int data2){
43
MidiMessage message = new MidiMessage(TYPE_SHORT,command);
44
message.setData(new byte[]{ (byte)( (command & 0xF0) | (channel & 0x0F) ),(byte)data1, (byte)data2 });
48
public static MidiMessage shortMessage(int command, int channel, int data){
49
MidiMessage message = new MidiMessage(TYPE_SHORT,command);
50
message.setData(new byte[]{ (byte)( (command & 0xF0) | (channel & 0x0F) ),(byte)data });
54
public static MidiMessage shortMessage(int command){
55
MidiMessage message = new MidiMessage(TYPE_SHORT,command);
56
message.setData(new byte[]{ (byte)command });
60
public static MidiMessage metaMessage(int command, byte[] data){
61
MidiMessage message = new MidiMessage(TYPE_META,command);
62
message.setData(data);