コールバック関数EVT_UDECX_USB_DEVICE_ENDPOINTS_CONFIGURE (udecxusbdevice.h)
USB デバイス エミュレーション クラス拡張機能 (UdeCx) は、代替設定を選択するか、現在のエンドポイントを無効にするか、動的エンドポイントを追加することで、このコールバック関数を呼び出して構成を変更します。
構文
EVT_UDECX_USB_DEVICE_ENDPOINTS_CONFIGURE EvtUdecxUsbDeviceEndpointsConfigure;
void EvtUdecxUsbDeviceEndpointsConfigure(
[in] UDECXUSBDEVICE UdecxUsbDevice,
[in] WDFREQUEST Request,
[in] PUDECX_ENDPOINTS_CONFIGURE_PARAMS Params
)
{...}
パラメーター
[in] UdecxUsbDevice
UDE デバイス オブジェクトへのハンドル。 クライアント ドライバーは、 UdecxUsbDeviceCreate の以前の呼び出しでこのオブジェクトを作成しました。
[in] Request
要求を表すフレームワーク要求オブジェクトへのハンドル。
[in] Params
構成オプションを記述する UDECX_ENDPOINTS_CONFIGURE_PARAMS 構造体へのポインター。
戻り値
なし
解説
クライアント ドライバーは、実装への関数ポインターを指定することで 、UdecxUsbDeviceInitSetStateChangeCallbacks の以前の呼び出しでこのコールバック関数を登録しました。
クラス拡張機能は、このコールバック関数を呼び出して、1 つ以上の新しいエンドポイントをハードウェアに構成するようにクライアント ドライバーに要求したり、1 つ以上の既存のエンドポイントが使用されなくなったときにドライバーに通知したりします。
エンドポイントを作成した後、新しいエンドポイントごとに、クライアント ドライバーは要求を完了する前に UdecxUsbEndpointSetWdfIoQueue を呼び出す必要があります。
エンドポイントを解放した後、クライアント ドライバーはエンドポイントに関連付けられているフレームワーク キュー オブジェクトを使用しないでください。 クラス拡張機能では、将来の要求を防ぐために、これらのキューが消去されたものと見なされます。
クラス拡張機能は、このコールバックを使用して、新しい構成値または代替設定を要求することもできます。
この呼び出しは非同期です。 クライアント ドライバーは、クラス拡張機能によって渡された要求を完了することによって、状態で完了を通知する必要があります。
要件
要件 | 値 |
---|---|
サポートされている最小のクライアント | Windows 10 |
サポートされている最小のサーバー | Windows Server 2016 |
対象プラットフォーム | Windows |
最小 KMDF バージョン | 1.15 |
Header | udecxusbdevice.h (Udecx.h を含む) |
IRQL | <=DISPATCH_LEVEL |