次の方法で共有


UcmConnectorDataDirectionChanged 関数 (ucmmanager.h)

データ ロールの変更の新しいデータ ロールを USB コネクタ マネージャー フレームワーク拡張機能 (UcmCx) に通知します。

構文

VOID UcmConnectorDataDirectionChanged(
  [in] UCMCONNECTOR  Connector,
  [in] BOOLEAN       Success,
  [in] UCM_DATA_ROLE CurrentDataRole
);

パラメーター

[in] Connector

UcmConnectorCreateへの前回の呼び出しでクライアント ドライバーが受信したコネクタ オブジェクトへのハンドル。

[in] Success

EVT_UCM_CONNECTOR_SET_DATA_ROLEを使用して UcmCx によって開始されたデータ ロール スワップの失敗を示すために使用されます。

TRUE の場合、操作は成功しました。 FALSE。それ以外の場合。

[in] CurrentDataRole

新しいデータ ロールを示す UCM_TYPEC_PARTNER 値。

戻り値

何一つ

備考

UcmConnectorDataDirectionChanged 、操作が成功した場合にSTATUS_SUCCESSを返します。 それ以外の場合、このインライン関数は NTSTATUS 適切な値を返すことができます。

コネクタ パートナーがアタッチされている場合、UcmCx は、CurrentDataRole 値に応じてパートナーのデータ ロールを更新します。 たとえば、クライアント ドライバーがデータ ロールを UcmTypeCPortStateUfp に変更した場合、UcmCx はコネクタ パートナーのロールを更新して UcmTypeCPortStateDfp します。

UcmCx はコネクタのデータ ロールを変更し、EVT_UCM_CONNECTOR_SET_DATA_ROLE呼び出すことができます。 その呼び出しに応答して、クライアントはDR_Swap操作を実行し、UcmConnectorDataDirectionChanged 呼び出すことによって、操作の成功/失敗を示す必要があります。

または、クライアント ドライバーがロールスワップを自律的に実行することを選択したり、パートナーがロールスワップを実行したりする場合があります。 どちらの場合も、ロールスワップが完了したら、ドライバーは UcmConnectorDataDirectionChanged を使用して新しいロールUcmCx に報告する必要があります。

必要条件

要件 価値
サポートされる最小クライアント Windows 10
サポートされる最小サーバー Windows Server 2016
ターゲット プラットフォーム ウィンドウズ
最小 KMDF バージョン 1.15
UMDF の最小バージョン する 2.15
ヘッダー ucmmanager.h (Ucmcx.h を含む)
ライブラリ UcmCxstub.lib
IRQL PASSIVE_LEVEL

関連項目

  • UcmConnectorCreate する