Overview | Package | Class | Use | Tree | Deprecated | Index | Help
| JavaTM 2 Platform Std. Ed. v1.4.1
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## javax.sound.midi
Class Instrument

    java.lang.Object
      |
      +--javax.sound.midi.SoundbankResource
            |
            +--javax.sound.midi.Instrument

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 Summary
`protected` | `Instrument(Soundbank soundbank, Patch patch, String name, Class dataClass)` Constructs a new MIDI instrument from the specified `Patch`.

Method Summary
`Patch` | `getPatch()` Obtains the `Patch` object that indicates the bank and program numbers where this instrument is to be stored in the synthesizer.

Methods inherited from class javax.sound.midi.SoundbankResource
`getData, getDataClass, getName, getSoundbank`

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Constructor Detail

### 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 Detail

### 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

Overview | Package | Class | Use | Tree | Deprecated | Index | Help
| JavaTM 2 Platform Std. Ed. v1.4.1
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

Submit a bug or feature
For further API reference and developer documentation, see Java 2 SDK SE Developer Documentation. That documentation contains more detailed, developer-targeted descriptions, with conceptual overviews, definitions of terms, workarounds, and working code examples.

Copyright 2002 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms.