declare namespace javax {
namespace sound {
namespace midi {
/**
* A Transmitter
sends {@link MidiEvent}
objects to one or more
* {@link Receiver Receivers}
. Common MIDI transmitters include sequencers
* and MIDI input ports.
* @see Receiver
* @author Kara Kytle
*/
// @ts-ignore
interface Transmitter extends java.lang.AutoCloseable {
/**
* Sets the receiver to which this transmitter will deliver MIDI messages.
* If a receiver is currently set, it is replaced with this one.
* @param receiver the desired receiver.
*/
// @ts-ignore
setReceiver(receiver: javax.sound.midi.Receiver): void
/**
* Obtains the current receiver to which this transmitter will deliver MIDI messages.
* @return the current receiver. If no receiver is currently set,
* returns null
*/
// @ts-ignore
getReceiver(): javax.sound.midi.Receiver
/**
* Indicates that the application has finished using the transmitter, and
* that limited resources it requires may be released or made available.
*
If the creation of this Transmitter
resulted in
* implicitly opening the underlying device, the device is
* implicitly closed by this method. This is true unless the device is
* kept open by other Receiver
or Transmitter
* instances that opened the device implicitly, and unless the device
* has been opened explicitly. If the device this
* Transmitter
is retrieved from is closed explicitly
* by calling {@link MidiDevice#close MidiDevice.close}, the
* Transmitter
is closed, too. For a detailed
* description of open/close behaviour see the class description
* of {@link javax.sound.midi.MidiDevice MidiDevice}.
* @see javax.sound.midi.MidiSystem#getTransmitter
*/
// @ts-ignore
close(): void
}
}
}
}