Поделиться через


Объекты и дескриптора UFX, используемые драйвером клиента функции USB

Расширение класса функций USB (UFX) использует функциональные возможности объектов WDF для определения этих объектов UFX, относящихся к USB.

Сводка

  • Объекты UFX используются драйвером контроллера функций для обработки передачи в конечные точки и из них.
  • Эти объекты являются дескрипторами объектов WDF и создаются UFX по запросу драйвера клиента. Время существования каждого объекта управляется UFX.

Важные API

Расширение класса функций USB (UFX) использует функциональные возможности объектов WDF для определения этих объектов UFX, относящихся к USB.

Эти объекты являются дескрипторами объектов WDF и создаются UFX по запросу драйвера клиента-функции. При необходимости драйвер клиента может связать контекст с этими объектами, которые можно передать во время создания. Каждый объект WDF, созданный UFX, потенциально может иметь два контекста устройства: один контекст устройства, заданный UFX во время создания объекта; другой контекст устройства, передаваемый драйвером клиента и задается в UFX с помощью WdfObjectAllocateContext после создания объекта WDF.

UFXDEVICE: объект устройства USB

Представляет USB-устройство, созданное контроллером. Объект отвечает за управление состояниями USB в соответствии со спецификацией протокола USB и управление одной или несколькими конечными точками, связанными с USB-устройством. Драйвер контроллера функции создает этот объект в обратном вызове EvtDriverDeviceAdd путем вызова метода UfxDeviceCreate .


EVT_UFX_DEVICE_HOST_CONNECT Инициирует соединение с узлом.


EVT_UFX_DEVICE_HOST_DISCONNECT Отключает связь контроллера функции с узлом.


EVT_UFX_DEVICE_ADDRESSED Назначает адрес контроллеру функции.


EVT_UFX_DEVICE_ENDPOINT_ADD Создает объект конечной точки по умолчанию.


EVT_UFX_DEVICE_DEFAULT_ENDPOINT_ADD Создает объект конечной точки по умолчанию.


EVT_UFX_DEVICE_USB_STATE_CHANGE Обновление состояния USB-устройства.


EVT_UFX_DEVICE_PORT_CHANGE Обновите тип нового порта, к которому подключено USB-устройство.


EVT_UFX_DEVICE_PORT_DETECT Инициируйте обнаружение портов.


EVT_UFX_DEVICE_REMOTE_WAKEUP_SIGNAL инициировать удаленное пробуждение на контроллере функции.


EVT_UFX_DEVICE_DETECT_PROPRIETARY_CHARGER Инициирует обнаружение собственного зарядного устройства.


EVT_UFX_DEVICE_PROPRIETARY_CHARGER_RESET Сбрасывает собственное зарядное устройство.


EVT_UFX_DEVICE_PROPRIETARY_CHARGER_SET_PROPERTY Задает сведения о зарядном устройстве, которые используются для включения зарядки через USB.

UFXENDPOINT: объект конечной точки USB

Представляет логическое соединение между узлом и устройством. Объект отвечает за передачу данных на узел или с узла. Для каждого объекта устройства может быть одна или несколько конечных точек. Конечная точка по умолчанию всегда является конечной точкой управления, а остальные — это объекты, относящиеся к драйверу класса. Драйвер контроллера функции создает объект в обратном вызове EVT_UFX_DEVICE_ENDPOINT_ADD путем вызова метода UfxEndpointCreate .