javax.sound.midi
Class SysexMessage

java.lang.Object
  extended by javax.sound.midi.MidiMessage
      extended by javax.sound.midi.SysexMessage
All Implemented Interfaces:
java.lang.Cloneable

public class SysexMessage
extends MidiMessage

Holds the data of a MIDI System Exclusive event. Sysex event are tricking me over and over again. I give my understanding of the expected behaviour for review:


Field Summary
static int SPECIAL_SYSTEM_EXCLUSIVE
          TODO:
static int SYSTEM_EXCLUSIVE
          TODO:
 
Constructor Summary
SysexMessage()
          Create a container for a MIDI system exclusive message.
 
Method Summary
 java.lang.Object clone()
          TODO:
 byte[] getData()
          TODO:
 void setMessage(byte[] abData, int nLength)
          TODO:
 void setMessage(int nStatus, byte[] abData, int nLength)
          TODO:
 
Methods inherited from class javax.sound.midi.MidiMessage
getLength, getMessage, getStatus
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

SYSTEM_EXCLUSIVE

public static final int SYSTEM_EXCLUSIVE
TODO:

See Also:
Constant Field Values

SPECIAL_SYSTEM_EXCLUSIVE

public static final int SPECIAL_SYSTEM_EXCLUSIVE
TODO:

See Also:
Constant Field Values
Constructor Detail

SysexMessage

public SysexMessage()
Create a container for a MIDI system exclusive message. This constructor does not create an object containing a legal MIDI message. You have to use one of the setMessage() methods. Before calling one of these methods, calling retrieval methods (getStatus(), getLength(), getMessage(), getData()) may have undesired results.

See Also:
setMessage(byte[], int), setMessage(int, byte[], int)
Method Detail

setMessage

public void setMessage(byte[] abData,
                       int nLength)
                throws InvalidMidiDataException
TODO:

Parameters:
abData - The bytes to use as MIDI message. This array may contain trailing invalid bytes. nLength gives the number of valid bytes. This means that the length of abData has to be equal or greater than nLength.
nLength - The length of the MIDI message. This is equal to the number of valid bytes in abData. This value may be less than the length of abData. In this case, the remaining bytes have to be considered invalid. This means that the value of nLength has to be equal or less than the length of abData.
Throws:
InvalidMidiDataException

setMessage

public void setMessage(int nStatus,
                       byte[] abData,
                       int nLength)
                throws InvalidMidiDataException
TODO:

Throws:
InvalidMidiDataException

getData

public byte[] getData()
TODO:


clone

public java.lang.Object clone()
TODO:

Specified by:
clone in class MidiMessage
Returns:
A new MidiMessage object that is a copy of this one.