Microsoft DirectX 8.0 (C++)

IDirectMusicCollection8::EnumInstrument

コレクション内のインデックスを使って、音色のパッチ番号と名前を取得する。

HRESULT EnumInstrument(
  DWORD dwIndex,
  DWORD* pdwPatch,
  LPWSTR pwszName,
  DWORD dwNameLen
);

パラメータ

dwIndex
コレクション内の音色のインデックス。
pdwPatch
パッチ番号を受け取る変数のアドレス。
pwszName
音色名を受け取るバッファのアドレス。名前が不要な場合は、NULL でもよい。
dwNameLen
音色名バッファに格納される WCHAR 値の数。

戻り値

成功した場合は S_OK を返す。指定されたインデックス番号を持つ音色が存在しない場合は S_FALSE を返す。

失敗した場合は、次のいずれかのエラー値を返す。

E_FAIL
E_OUTOFMEMORY
E_POINTER

注意

コレクション内のすべての音色を列挙するには、dwIndex の値を 0 から始め、EnumInstrument が S_FALSE を返すまで値を大きくする。

pdwPatch に返されるパッチ番号は、バンク セレクトの MSB と LSB の MIDI パラメータも含む、完全なパッチアドレスを記述する。詳細については、「MIDI チャンネル メッセージ」を参照すること。

列挙型の順序は DLS コレクションの 1 つのインスタンス内では整合しているが、この順序はファイル内の音色の順序、パッチ番号、音色名のいずれとも関係はない。

音色の列挙の例については、「音色の操作」を参照すること。

動作環境

  ヘッダー : dmusicc.h で宣言。