PFN_REGISTER_DATARATE_NOTIFICATIONS コールバック関数 (netdispumdddi.h)
Miracast 接続のネットワーク品質 (QoS) 通知と現在のネットワーク帯域幅を受信するためにオペレーティング システムに登録するために、ユーザー モード ドライバーによって呼び出されます。この関数のデータ型は PFN_REGISTER_DATARATE_NOTIFICATIONS。
構文
PFN_REGISTER_DATARATE_NOTIFICATIONS PfnRegisterDatarateNotifications;
NTSTATUS PfnRegisterDatarateNotifications(
[in] HANDLE hMiracastDeviceHandle,
[in, optional] PVOID pNotificationContext,
[in, optional] PFN_DATARATE_NOTIFICATION pfnDataRateNotify
)
{...}
パラメーター
[in] hMiracastDeviceHandle
Miracast デバイスを表すハンドル。 Miracast ユーザー モード ドライバーは、CreateMiracastContext 関数の呼び出しで、このハンドルを hMiracastDeviceHandle パラメーターとして以前に取得しました。
[in, optional] pNotificationContext
Miracast データレートが変化したときに pfnDataRateNotify 関数に渡されるコンテキスト。
[in, optional] pfnDataRateNotify
Miracast ネットワーク リンクのビット レートが変更されたときに呼び出されるドライバー ルーチンへのポインター。 詳細については、「解説」を参照してください。
ドライバーは、通知の登録を解除する NULL 値を指定できます。
戻り値
オペレーティング システムが通知のためにドライバーを正常に登録または登録解除すると、 STATUS_SUCCESSが返されます。
それ以外の場合は、次のエラー コードを返すことができます。
リターン コード | 説明 |
---|---|
STATUS_INVALID_PARAMETER | 1 つ以上のパラメーターが無効です。 |
STATUS_NOT_SUPPORTED | オペレーティング システムはサービス品質 (QoS) 通知をサポートできません。または、関数の呼び出しは、 StartMiracastSession または StopMiracastSession 関数と呼ばれるオペレーティング システムが呼び出し元のスレッドの外部で行われます。 |
注釈
ユーザー モード ドライバーは、必要に応じてこの関数を呼び出して、1 秒に 1 回、データ レート通知コールバック関数の自動呼び出しを登録できます。
通知から登録を解除するには、ドライバーが startMiracastSession 関数を呼び出すときに、pfnDataRateNotify パラメーターと pWfdConnectionStats パラメーターによって指されるMIRACAST_WFD_CONNECTION_STATS構造体の CurrentBitRate メンバーに NULL 値を指定する必要があります。 オペレーティング システムが pfnDataRateNotify と CurrentBitRate の両方に対して NULL を受け取ると、通知は提供されなくなります。
また、オペレーティング システムが QoS データを提供できなくなった場合は、pfnDataRateNotify 関数が呼び出されたときに pDataRateStats パラメーターを NULL に設定します。
この関数は、ドライバーが既に登録されている間に登録を試みる場合、または既に登録解除されている場合に登録を解除しようとすると失敗します。 この関数は、オペレーティング システムが StartMiracastSession 関数または StopMiracastSession 関数を呼び出した呼び出し元スレッドの外部で呼び出しが行われた場合に失敗します。
要件
要件 | 値 |
---|---|
サポートされている最小のクライアント | Windows 8.1 |
サポートされている最小のサーバー | Windows Server 2012 R2 |
対象プラットフォーム | デスクトップ |
Header | netdispumdddi.h (Netdispumdddi.h を含む) |