Platform SDK: DirectX |
IDirectMusicBuffer::PackStructured メソッドは、固定長データ (通常は MIDI チャンネル メッセージ) を、タイミング情報およびルーティング情報と共にバッファ内に挿入する。
HRESULT PackStructured( REFERENCE_TIME rt, DWORD dwChannelGroup, DWORD dwChannelMessage );
成功すれば S_OK を返す。
失敗すれば次のエラー値のいずれかを返す。
DMUS_E_INVALID_EVENT |
E_OUTOFMEMORY |
バッファ内に少なくとも 32 バイト (DMUS_EVENTHEADER と dwChannelMessage の合計サイズ) の空きが存在しなければならない。
rt パラメータには、データがポートに送信される絶対タイムを設定する必要がある。メッセージを即座に演奏するには、遅延時間クロックからこのタイムを取り出し、rt として使用する。「IDirectMusicPort::GetLatencyClock」を参照すること。
同じタイムのスタンプが付いたメッセージは、バッファ内に置かれた順序と同じ順序で演奏されるとは限らない。
Windows NT/2000 : Windows 2000 が必要。
Windows 95/98 : Windows 95 以降が必要。Windows 95 用に再配布可能な形で使用可能。
ヘッダー : dmusicc.h で宣言。