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,否则为 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

另请参阅