1 package net.kreatious.pianoleopard.midi;
2
3 import javax.sound.midi.MidiUnavailableException;
4 import javax.sound.midi.Sequencer;
5
6 /**
7 * Provides the MIDI sequencer available on the system.
8 *
9 * @author Jay-R Studer
10 */
11 @FunctionalInterface
12 interface SequencerFactory {
13 /**
14 * Obtains a new MIDI sequencer that is not connected to a default device.
15 *
16 * @return a {@link Sequencer} for playing back MIDI files
17 * @throws MidiUnavailableException
18 * if no sequencer is available
19 */
20 Sequencer getSequencer() throws MidiUnavailableException;
21 }