USB_PIPE_INFORMATION_0
The USB_PIPE_INFORMATION_0 structure is used in conjunction with the USB_DEVICE_INFORMATION_0 structure and the QueryDeviceInformation routine to report information about a USB device.
typedef struct _USB_PIPE_INFORMATION_0 {
USB_ENDPOINT_DESCRIPTOR EndpointDescriptor;
UCHAR ED_Pad[1];
ULONG ScheduleOffset;
} USB_PIPE_INFORMATION_0, *PUSB_PIPE_INFORMATION_0;
Members
- EndpointDescriptor
- Describes the endpoint descriptor. For more information on the endpoint descriptor, see USB_ENDPOINT_DESCRIPTOR.
- ED_Pad
- Forces double word alignment. This member does not contain meaningful data.
- ScheduleOffset
- Indicates the schedule offset assigned to the endpoint for this pipe. See the comments section for a discussion of the range of values that this member can take.
Headers
Declared in hubbusif.h. Include hubbusif.h.
Comments
- The USB specification labels isochronous and interrupt transfers as "periodic," because certain periods of transmission time are set aside for these types of transfers. The port driver further divides these periods into "schedule offsets" and distributes the available offsets between those endpoints that are doing periodic transfers. The number of offsets that are available depends on the period. The following table lists the offset values that are available for each period.
-
| Period |
Available Offsets |
| 1 |
0 |
| 2 |
0 to 1 |
| 4 |
0 to 3 |
| 8 |
0 to 7 |
| 16 |
0 to 15 |
| 32 |
0 to 31 |
See Also
USB_DEVICE_INFORMATION_0, USB_ENDPOINT_DESCRIPTOR, QueryDeviceInformation