Microsoft DirectX 8.0 (C++) |
通知のメッセージ データを保持する。
typedef struct DMUS_NOTIFICATION_PMSG { DMUS_PMSG_PART GUID guidNotificationType; DWORD dwNotificationOption; DWORD dwField1; DWORD dwField2; } DMUS_NOTIFICATION_PMSG;
通知タイプが GUID_NOTIFICATION_SEGMENT の場合、このメンバは次のいずれかの値を保持する。
通知タイプが GUID_NOTIFICATION_COMMAND の場合、このメンバは次のいずれかの値を保持する。
通知タイプが GUID_NOTIFICATION_PERFORMANCE の場合、このメンバは次のいずれかの値を保持する。
通知タイプが GUID_NOTIFICATION_MEASUREANDBEAT の場合、このメンバは DMUS_NOTIFICATION_MEASUREBEAT を保持する。その他のサブタイプは定義されない。
通知タイプが GUID_NOTIFICATION_CHORD の場合、このメンバは DMUS_NOTIFICATION_CHORD を保持する。その他のサブタイプは定義されない。
通知タイプが GUID_NOTIFICATION_RECOMPOSE の場合、このメンバは DMUS_NOTIFICATION_RECOMPOSE を保持する。その他のサブタイプは定義されない。
ほとんどの通知について、punkUser メンバ (「DMUS_PMSG」を参照) は、セグメント状態の IUnknown ポインタを保持する。これは、コードおよびコマンドの取得に使用すると非常に便利である。その場合、IDirectMusicSegmentState8 インターフェイスを照会し、IDirectMusicSegmentState8::GetSegment を呼び出して IDirectMusicSegment8 ポインタを取得する。次に、IDirectMusicSegment8::GetParam メソッドを呼び出して、通知メッセージの mtTime メンバで指定されたタイムにコードまたはコマンドを取得する。
GUID_NOTIFICATION_PERFORMANCE タイプの通知の場合、punkUser メンバは常に NULL である。
アプリケーションは独自の通知メッセージ タイプおよびサブタイプを定義でき、それでは不足のデータについては dwField1 と dwField2 を使用できる。そのようなカスタム通知メッセージは、その他のメッセージと同様に、割り当ておよび送信できる。アプリケーションによって定義されたトラックは、GUID (guidNotificationType) が IDirectMusicTrack8::AddNotificationType に渡された後に、特定タイプのメッセージを送信できる。
ヘッダー : dmusici.h で宣言。