Package Summary Overview Summary

### class:Instrument [NONE]
-     public abstract class Instrument
      extends SoundbankResource
An instrument is a sound-synthesis algorithm with certain parameter settings, usually designed to emulate a specific real-world musical instrument or to achieve a specific sort of sound effect. Instruments are typically stored in collections called soundbanks. Before the instrument can be used to play notes, it must first be loaded onto a synthesizer, and then it must be selected for use on one or more channels, via a program-change command. MIDI notes that are subsequently received on those channels will be played using the sound of the selected instrument. See Also: `Soundbank`, `Soundbank.getInstruments()`, `Patch`, `Synthesizer.loadInstrument(Instrument)`, `MidiChannel.programChange(int, int)`

### constructor:Instrument(javax.sound.midi.Soundbank, javax.sound.midi.Patch, java.lang.String, java.lang.Class) [NONE]
- #### Instrument
      protected Instrument(Soundbank soundbank,
                           Patch patch,
                           String name,
                           Class<?> dataClass)
Constructs a new MIDI instrument from the specified `Patch`. When a subsequent request is made to load the instrument, the sound bank will search its contents for this instrument's `Patch`, and the instrument will be loaded into the synthesizer at the bank and program location indicated by the `Patch` object. Parameters: `soundbank` - sound bank containing the instrument `patch` - the patch of this instrument `name` - the name of this instrument `dataClass` - the class used to represent the sample's data See Also: `Synthesizer.loadInstrument(Instrument)`

### method:getPatch() [NONE]
- #### getPatch
      public Patch getPatch()
Obtains the `Patch` object that indicates the bank and program numbers where this instrument is to be stored in the synthesizer. Returns: this instrument's patch