REGISTER_COMPOSITE_DEVICE structure (usbdlib.h)
The REGISTER_COMPOSITE_DEVICE structure is used with the IOCTL_INTERNAL_USB_REGISTER_COMPOSITE_DEVICE I/O control request to register a parent driver of a Universal Serial Bus (USB) multi-function device (composite driver) with the USB driver stack.
To initialize the REGISTER_COMPOSITE_DEVICE structure, the composite driver must call the USBD_BuildRegisterCompositeDevice routine.
Syntax
typedef struct _REGISTER_COMPOSITE_DEVICE {
USHORT Version;
USHORT Size;
USBDI_HANDLE Reserved;
COMPOSITE_DEVICE_CAPABILITIES CapabilityFlags;
ULONG FunctionCount;
} REGISTER_COMPOSITE_DEVICE, *PREGISTER_COMPOSITE_DEVICE;
Members
Version
The version of this structure. USBD_BuildRegisterCompositeDevice sets this member.
Size
The size of this structure. USBD_BuildRegisterCompositeDevice sets this member.
Reserved
Reserved. USBD_BuildRegisterCompositeDevice sets this member.
CapabilityFlags
The capabilities that are supported by the composite driver. To specify that function suspend is supported by the composite driver, first initialize the COMPOSITE_DEVICE_CAPABILITIES structure by calling the COMPOSITE_DEVICE_CAPABILITIES_INIT macro. Then, set the CompositeDeviceCapabilityFunctionSuspend member of COMPOSITE_DEVICE_CAPABILITIES to 1. Finally, call USBD_BuildRegisterCompositeDevice and pass the initialized structure in the CapabilityFlags parameter.
FunctionCount
The number of functions supported by the composite device. The FunctionCount value must not exceed 255.
Requirements
Minimum supported client | Windows 8 |
Header | usbdlib.h |
See also
COMPOSITE_DEVICE_CAPABILITIES_INIT
Feedback
Submit and view feedback for