org.tritonus.midi.device.alsa
Class AlsaMidiDevice

java.lang.Object
  extended byorg.tritonus.share.midi.TMidiDevice
      extended byorg.tritonus.midi.device.alsa.AlsaMidiDevice
All Implemented Interfaces:
AlsaMidiIn.AlsaMidiInListener, MidiDevice
Direct Known Subclasses:
AlsaSynthesizer

public class AlsaMidiDevice
extends TMidiDevice
implements AlsaMidiIn.AlsaMidiInListener

A representation of a physical MIDI port based on the ALSA sequencer.


Nested Class Summary
 
Nested classes inherited from class org.tritonus.share.midi.TMidiDevice
TMidiDevice.Info, TMidiDevice.TReceiver, TMidiDevice.TTransmitter
 
Constructor Summary
  AlsaMidiDevice(int nClient, int nPort, boolean bUseIn, boolean bUseOut)
           
protected AlsaMidiDevice(MidiDevice.Info info, int nClient, int nPort, boolean bUseIn, boolean bUseOut)
           
 
Method Summary
protected  void closeImpl()
          Subclasses have to override this method to be notified of closeing.
 void dequeueEvent(MidiMessage message, long lTimestamp)
           
 long getMicroSecondPosition()
           
 Receiver getReceiver()
          Creates a new Receiver object associated with this instance.
 Transmitter getTransmitter()
          Creates a new Transmitter object associated with this instance.
protected  void openImpl()
          Subclasses have to override this method to be notified of opening.
protected  void receive(MidiMessage message, long lTimeStamp)
          Pass MidiMessage from Receivers to physical MIDI port.
 
Methods inherited from class org.tritonus.share.midi.TMidiDevice
close, getDeviceInfo, getMaxReceivers, getMaxTransmitters, getMicrosecondPosition, getReceivers, getTransmitters, getUseIn, getUseOut, isOpen, open, sendImpl
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

AlsaMidiDevice

public AlsaMidiDevice(int nClient,
                      int nPort,
                      boolean bUseIn,
                      boolean bUseOut)

AlsaMidiDevice

protected AlsaMidiDevice(MidiDevice.Info info,
                         int nClient,
                         int nPort,
                         boolean bUseIn,
                         boolean bUseOut)
Method Detail

openImpl

protected void openImpl()
Description copied from class: TMidiDevice
Subclasses have to override this method to be notified of opening.

Overrides:
openImpl in class TMidiDevice

closeImpl

protected void closeImpl()
Description copied from class: TMidiDevice
Subclasses have to override this method to be notified of closeing.

Overrides:
closeImpl in class TMidiDevice

getMicroSecondPosition

public long getMicroSecondPosition()

receive

protected void receive(MidiMessage message,
                       long lTimeStamp)
Pass MidiMessage from Receivers to physical MIDI port.

Overrides:
receive in class TMidiDevice

dequeueEvent

public void dequeueEvent(MidiMessage message,
                         long lTimestamp)
Specified by:
dequeueEvent in interface AlsaMidiIn.AlsaMidiInListener

getReceiver

public Receiver getReceiver()
                     throws MidiUnavailableException
Description copied from class: TMidiDevice
Creates a new Receiver object associated with this instance. In this implementation, an unlimited number of Receivers per MidiDevice can be created.

Specified by:
getReceiver in interface MidiDevice
Overrides:
getReceiver in class TMidiDevice
Throws:
MidiUnavailableException

getTransmitter

public Transmitter getTransmitter()
                           throws MidiUnavailableException
Description copied from class: TMidiDevice
Creates a new Transmitter object associated with this instance. In this implementation, an unlimited number of Transmitters per MidiDevice can be created.

Specified by:
getTransmitter in interface MidiDevice
Overrides:
getTransmitter in class TMidiDevice
Throws:
MidiUnavailableException