JavaTM 2
Platform
Std. Ed. v1.4.0

javax.sound.midi
クラス Patch

java.lang.Object
  |
  +--javax.sound.midi.Patch

public class Patch
extends Object

Patch オブジェクトは、単一のインストゥルメントが格納される (ロードされる) MIDI シンセサイザ上の位置を表します。すべての Instrument オブジェクトには、そのインストゥルメントがロードされるメモリ位置を指定する固有の Patch オブジェクトがあります。位置は (RAM の特定のアドレスまたは座標に直接関連するスキーマによってではなく) バンクインデックスおよびプログラム番号によって抽象的に指定されます。これは階層型インデックススキーマです。MIDI は最大 128 バンクを提供し、各バンクには最大 128 のプログラム位置が含まれます。たとえば、もっとも小さな種類のシンセサイザはバンクを 1 つだけ持ち、そのバンクにあるインストゥルメント (プログラム) は 32 だけです。

特定の MIDI チャネルでどのインストゥルメントが音を演奏するかを選択するために、パッチ位置を指定する 2 種類の MIDI メッセージが使用されます。つまり、バンク選択コマンドと、プログラム変更チャネルコマンドです。Java Sound と同等なのは、MidiChannelprogramChange(int, int) メソッドです。

関連項目:
Instrument, Instrument.getPatch(), MidiChannel.programChange(int, int), Synthesizer.loadInstruments(Soundbank, Patch[]), Soundbank, Sequence.getPatchList()

コンストラクタの概要
Patch(int bank, int program)
          指定されたバンク番号およびプログラム番号 (0 〜 127 の範囲内) から、新しいパッチオブジェクトを構築します。
 
メソッドの概要
 int getBank()
          この Patch が位置を指定するインストゥルメントを含むバンクの数を返します。
 int getProgram()
          この Patch が位置を指定するインストゥルメントの、バンク内のインデックスを返します。
 
クラス java.lang.Object から継承したメソッド
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

コンストラクタの詳細

Patch

public Patch(int bank,
             int program)
指定されたバンク番号およびプログラム番号 (0 〜 127 の範囲内) から、新しいパッチオブジェクトを構築します。

パラメータ:
bank - バンクインデックス
program - プログラムインデックス
メソッドの詳細

getBank

public int getBank()
この Patch が位置を指定するインストゥルメントを含むバンクの数を返します。

戻り値:
バンク番号、範囲は 0 〜 127
関連項目:
MidiChannel.programChange(int, int)

getProgram

public int getProgram()
この Patch が位置を指定するインストゥルメントの、バンク内のインデックスを返します。

戻り値:
インストゥルメントのプログラム番号、範囲は 0 〜 127
関連項目:
MidiChannel.getProgram(), MidiChannel.programChange(int), MidiChannel.programChange(int, int)

JavaTM 2
Platform
Std. Ed. v1.4.0

バグの報告と機能のリクエスト
これ以外の API リファレンスおよび開発者用ドキュメントについては、 Java 2 SDK SE 開発者用ドキュメントを参照してください。 開発者向けの詳細な解説、概念の概要、用語の定義、バグの回避策、 およびコード実例が含まれています。

Java、Java 2D、および JDBC は米国ならびにその他の国における米国 Sun Microsystems, Inc. の商標もしくは登録商標です。
Copyright 1993-2002 Sun Microsystems, Inc. 901 San Antonio Road
Palo Alto, California, 94303, U.S.A. All Rights Reserved.