Функция UfxDevicePortDetectCompleteEx (ufxclient.h)
Уведомляет UFX об обнаруженном типе порта и при необходимости запрашивает действие.
Синтаксис
void UfxDevicePortDetectCompleteEx(
[in] UFXDEVICE UfxDevice,
[in] USBFN_PORT_TYPE PortType,
[in] USBFN_ACTION Action
);
Параметры
[in] UfxDevice
Дескриптор объекта устройства UFX, созданного драйвером путем вызова UfxDeviceCreate.
[in] PortType
Содержит значение перечисления типа USBFN_PORT_TYPE.
[in] Action
Содержит значение перечисления типа USBFN_ACTION.
Возвращаемое значение
None
Remarks
Драйвер клиента вызывает UfxDevicePortDetectCompleteEx после завершения обнаружения порта, как правило, из функции обратного вызова EVT_UFX_DEVICE_PORT_DETECT . На некоторых платформах UFX может использовать указанный тип порта для уведомления диспетчера батареи о максимальном значении текущего тока, который он может получить из USB-порта.
Если для параметра Action задано значение UsbfnActionNoCad, UFX вообще не уведомляет диспетчер батареи.
Если параметр Action имеет значение UsbfnActionDetectProprietaryCharger, UFX запрашивает, чтобы драйвер клиента инициировал обнаружение собственного зарядного устройства, вызвав функцию обратного вызова EVT_UFX_DEVICE_DETECT_PROPRIETARY_CHARGER драйвера клиента.
В следующем фрагменте кода показано, как драйвер клиента вызывает UfxDevicePortDetectCompleteEx.
switch (OnAttach.AttachAction) {
case UsbfnPortDetected:
TraceInformation("Port Detected");
UfxDevicePortDetectComplete(
ControllerData->UfxDevice,
OnAttach.PortType);
break;
case UsbfnPortDetectedNoCad:
TraceInformation("Port Detected No CAD");
UfxDevicePortDetectCompleteEx(
ControllerData->UfxDevice,
OnAttach.PortType,
UsbfnActionNoCad);
break;
Требования
Требование | Значение |
---|---|
Минимальная версия клиента | Windows 10 |
Целевая платформа | Windows |
Header | ufxclient.h |
Библиотека | ufxstub.lib |
IRQL | DISPATCH_LEVEL |