структура UFX_DEVICE_CALLBACKS (ufxclient.h)

Структура UFX_DEVICE_CALLBACKS используется для определения функций обратного вызова событий, поддерживаемых драйвером клиента.

Синтаксис

typedef struct _UFX_DEVICE_CALLBACKS {
  ULONG                                           Size;
  PFN_UFX_DEVICE_HOST_CONNECT                     EvtDeviceHostConnect;
  PFN_UFX_DEVICE_HOST_DISCONNECT                  EvtDeviceHostDisconnect;
  PFN_UFX_DEVICE_ADDRESSED                        EvtDeviceAddressed;
  PFN_UFX_DEVICE_ENDPOINT_ADD                     EvtDeviceEndpointAdd;
  PFN_UFX_DEVICE_DEFAULT_ENDPOINT_ADD             EvtDeviceDefaultEndpointAdd;
  PFN_UFX_DEVICE_USB_STATE_CHANGE                 EvtDeviceUsbStateChange;
  PFN_UFX_DEVICE_PORT_CHANGE                      EvtDevicePortChange;
  PFN_UFX_DEVICE_PORT_DETECT                      EvtDevicePortDetect;
  PFN_UFX_DEVICE_REMOTE_WAKEUP_SIGNAL             EvtDeviceRemoteWakeupSignal;
  PFN_UFX_DEVICE_CONTROLLER_RESET                 EvtDeviceControllerReset;
  PFN_UFX_DEVICE_TEST_MODE_SET                    EvtDeviceTestModeSet;
  PFN_UFX_DEVICE_TESTHOOK                         EvtDeviceTestHook;
  PFN_UFX_DEVICE_SUPER_SPEED_POWER_FEATURE        EvtDeviceSuperSpeedPowerFeature;
  PFN_UFX_DEVICE_PROPRIETARY_CHARGER_DETECT       EvtDeviceProprietaryChargerDetect;
  PFN_UFX_DEVICE_PROPRIETARY_CHARGER_SET_PROPERTY EvtDeviceProprietaryChargerSetProperty;
  PFN_UFX_DEVICE_PROPRIETARY_CHARGER_RESET        EvtDeviceProprietaryChargerReset;
} UFX_DEVICE_CALLBACKS, *PUFX_DEVICE_CALLBACKS;

Члены

Size

Размер структуры UFX_DEVICE_CALLBACKS .

EvtDeviceHostConnect

Указатель на подпрограмму обратного вызова EVT_UFX_DEVICE_HOST_CONNECT драйвера клиента.

EvtDeviceHostDisconnect

Указатель на EVT_UFX_DEVICE_HOST_DISCONNECT подпрограмму обратного вызова драйвера клиента.

EvtDeviceAddressed

Указатель на процедуру обратного вызова EVT_UFX_DEVICE_ADDRESSED драйвера клиента.

EvtDeviceEndpointAdd

Указатель на процедуру обратного вызова EVT_UFX_DEVICE_ENDPOINT_ADD драйвера клиента.

EvtDeviceDefaultEndpointAdd

Указатель на подпрограмму обратного вызова EVT_UFX_DEVICE_DEFAULT_ENDPOINT_ADD драйвера клиента.

EvtDeviceUsbStateChange

Указатель на подпрограмму обратного вызова EVT_UFX_DEVICE_USB_STATE_CHANGE драйвера клиента.

EvtDevicePortChange

Указатель на EVT_UFX_DEVICE_PORT_CHANGE подпрограмму обратного вызова драйвера клиента.

EvtDevicePortDetect

Указатель на подпрограмму обратного вызова EVT_UFX_DEVICE_PORT_DETECT драйвера клиента.

EvtDeviceRemoteWakeupSignal

Указатель на подпрограмму обратного вызова EVT_UFX_DEVICE_REMOTE_WAKEUP_SIGNAL драйвера клиента.

EvtDeviceControllerReset

Указатель на подпрограмму обратного вызова EVT_UFX_DEVICE_CONTROLLER_RESET драйвера клиента.

EvtDeviceTestModeSet

Указатель на подпрограмму обратного вызова EVT_UFX_DEVICE_TEST_MODE_SET драйвера клиента.

EvtDeviceTestHook

Зарезервировано. Должно быть задано значение NULL.

EvtDeviceSuperSpeedPowerFeature

Указатель на подпрограмму обратного вызова EVT_UFX_DEVICE_SUPER_SPEED_POWER_FEATURE драйвера клиента.

EvtDeviceProprietaryChargerDetect

Указатель на подпрограмму обратного вызова EVT_UFX_DEVICE_DETECT_PROPRIETARY_CHARGER драйвера клиента.

EvtDeviceProprietaryChargerSetProperty

Указатель на процедуру обратного вызова EVT_UFX_DEVICE_PROPRIETARY_CHARGER_SET_PROPERTY драйвера клиента.

EvtDeviceProprietaryChargerReset

Указатель на подпрограмму обратного вызова EVT_UFX_DEVICE_PROPRIETARY_CHARGER_RESET драйвера клиента.

Комментарии

Драйвер клиента должен использовать макрос UFX_DEVICE_CALLBACKS_INIT для инициализации структуры UFX_DEVICE_CALLBACKS , а затем задать поля структуры соответствующим подпрограммам обратного вызова событий перед вызовом функции экспорта UfxDeviceCreate .

Требования

Требование Значение
Заголовок ufxclient.h