uk.org.toot.midi.sequencer
Class MidiSequencer

java.lang.Object
  extended by java.util.Observable
      extended by uk.org.toot.midi.core.AbstractMidiDevice
          extended by uk.org.toot.midi.sequencer.MidiSequencer
All Implemented Interfaces:
MidiDevice, IObservable, TransportListener

public class MidiSequencer
extends AbstractMidiDevice
implements TransportListener

A Real Time MIDI Sequencer derived from version 1.23, 07/08/03

Author:
Florian Bomers, Steve Taylor, Toot Software

Constructor Summary
MidiSequencer()
           
 
Method Summary
 void closeMidi()
           
 javax.sound.midi.Sequencer.SyncMode getMasterSyncMode()
           
 javax.sound.midi.Sequencer.SyncMode[] getMasterSyncModes()
           
 long getMicrosecondLength()
           
 long getMicrosecondPosition()
           
 MidiSequence getMidiSequence()
           
 javax.sound.midi.Sequencer.SyncMode getSlaveSyncMode()
           
 javax.sound.midi.Sequencer.SyncMode[] getSlaveSyncModes()
           
 float getTempoFactor()
           
 float getTempoInBPM()
           
 float getTempoInMPQ()
           
 long getTickLength()
           
 long getTickPosition()
           
 java.util.List<TrackControls> getTrackControls()
           
 TrackControls getTrackControls(MidiTrack t)
           
 boolean isOpen()
           
 boolean isRecording()
           
 boolean isRunning()
           
 void locate(long microseconds)
          Called when the transport locates to a new microsecond time.
 void open()
           
 void play()
          Called when the transport begins playing.
 void record(boolean rec)
          Called when the transport record mode changes.
 void setMasterSyncMode(javax.sound.midi.Sequencer.SyncMode sync)
           
 void setMicrosecondPosition(long microseconds)
           
 void setMidiSequence(MidiSequence sequence)
           
 void setSlaveSyncMode(javax.sound.midi.Sequencer.SyncMode sync)
           
 void setTempoFactor(float factor)
           
 void setTempoInBPM(float bpm)
           
 void setTempoInMPQ(float mpq)
           
 void setTickPosition(long tick)
           
 void startRecording()
           
 void stop()
          Called when the transport has stopped.
 void stopRecording()
           
 
Methods inherited from class uk.org.toot.midi.core.AbstractMidiDevice
getMidiInputs, getMidiOutputs, getName, toString
 
Methods inherited from class java.util.Observable
addObserver, countObservers, deleteObserver, deleteObservers, hasChanged, notifyObservers, notifyObservers
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface uk.org.toot.misc.IObservable
addObserver, countObservers, deleteObserver, deleteObservers, hasChanged, notifyObservers, notifyObservers
 

Constructor Detail

MidiSequencer

public MidiSequencer()
Method Detail

setMidiSequence

public void setMidiSequence(MidiSequence sequence)
                     throws javax.sound.midi.InvalidMidiDataException
Throws:
javax.sound.midi.InvalidMidiDataException

getMidiSequence

public MidiSequence getMidiSequence()

play

public void play()
Description copied from interface: TransportListener
Called when the transport begins playing.

Specified by:
play in interface TransportListener

stop

public void stop()
Description copied from interface: TransportListener
Called when the transport has stopped.

Specified by:
stop in interface TransportListener

isOpen

public boolean isOpen()

isRunning

public boolean isRunning()

record

public void record(boolean rec)
Description copied from interface: TransportListener
Called when the transport record mode changes.

Specified by:
record in interface TransportListener

startRecording

public void startRecording()

stopRecording

public void stopRecording()

isRecording

public boolean isRecording()

getTempoInBPM

public float getTempoInBPM()

setTempoInBPM

public void setTempoInBPM(float bpm)

getTempoInMPQ

public float getTempoInMPQ()

setTempoInMPQ

public void setTempoInMPQ(float mpq)

setTempoFactor

public void setTempoFactor(float factor)

getTempoFactor

public float getTempoFactor()

getTickLength

public long getTickLength()

getTickPosition

public long getTickPosition()

setTickPosition

public void setTickPosition(long tick)

getMicrosecondLength

public long getMicrosecondLength()

getMicrosecondPosition

public long getMicrosecondPosition()

locate

public void locate(long microseconds)
Description copied from interface: TransportListener
Called when the transport locates to a new microsecond time.

Specified by:
locate in interface TransportListener

setMicrosecondPosition

public void setMicrosecondPosition(long microseconds)

setMasterSyncMode

public void setMasterSyncMode(javax.sound.midi.Sequencer.SyncMode sync)

getMasterSyncMode

public javax.sound.midi.Sequencer.SyncMode getMasterSyncMode()

getMasterSyncModes

public javax.sound.midi.Sequencer.SyncMode[] getMasterSyncModes()

setSlaveSyncMode

public void setSlaveSyncMode(javax.sound.midi.Sequencer.SyncMode sync)

getSlaveSyncMode

public javax.sound.midi.Sequencer.SyncMode getSlaveSyncMode()

getSlaveSyncModes

public javax.sound.midi.Sequencer.SyncMode[] getSlaveSyncModes()

getTrackControls

public java.util.List<TrackControls> getTrackControls()

getTrackControls

public TrackControls getTrackControls(MidiTrack t)

open

public void open()
          throws javax.sound.midi.MidiUnavailableException
Throws:
javax.sound.midi.MidiUnavailableException

closeMidi

public void closeMidi()
Specified by:
closeMidi in interface MidiDevice


Copyright © 2004, 2005, 2006, 2007 Steve Taylor. All Rights Reserved.