UcmConnectorDataDirectionChanged 函数 (ucmmanager.h)

通知 USB 连接器管理器框架扩展 (UcmCx) 新的数据角色更改数据角色。

语法

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

参数

[in] Connector

客户端驱动程序在上一次调用 UcmConnectorCreate 时收到的连接器对象的句柄。

[in] Success

用于指示 UcmCx 使用 EVT_UCM_CONNECTOR_SET_DATA_ROLE 启动的数据角色交换失败。

如果为 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
目标平台 Windows
最低 KMDF 版本 1.15
最低 UMDF 版本 2.15
标头 ucmmanager.h (包括 Ucmcx.h)
Library UcmCxstub.lib
IRQL PASSIVE_LEVEL

另请参阅