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 |