WINUSB_ISOCH_WRITE structure

[This documentation is preliminary and is subject to change.]

The WINUSB_ISOCH_WRITE structure is used in a IOCTL_WINUSB_WRITE_ISOCH_PIPE request that writes data to an isochronous OUT endpoint.

Syntax

typedef struct _WINUSB_ISOCH_WRITE {
  UCHAR    InterfaceIndex;
  UCHAR    PipeID;
  ULONG    BufferLength;
  PVOID    Buffer;
  BOOLEAN  StartAsap;
  BOOLEAN  ContinueStream;
  ULONG    StartFrame;
} WINUSB_ISOCH_WRITE, *PWINUSB_ISOCH_WRITE;

Members

  • InterfaceIndex
    Device-defined number of the USB interface that has the isochronous endpoint to which the request writes data.

  • PipeID
    Derived from Bit 3...0 of the bEndpointAddress field in the endpoint descriptor.

  • BufferLength
    Length in bytes of the buffer pointed to by Buffer.

  • Buffer
    Pointer to the buffer that holds the data to write.

  • StartAsap
    If TRUE, the USB driver stack sends the transfer (resulting from the request) in the next appropriate frame. For the first time that the driver stack sends the isochronous packets as soon as it can. The USB driver stack tracks the next frame to use for subsequent requests. If there is a delay in sending a subsequent transfer, the driver stack considers some or all packets to be late and does not transfer those packets.

    If FALSE, you must specify the StartFrame value.

  • ContinueStream
    If TRUE, the USB driver stack fails the request if Winusb.sys cannot schedule a transfer in order to continue with the request without dropping one or more frames.

  • StartFrame
    A frame number in which the first isochronous packet is sent.

Requirements

Header

Winusbio.h (include Winusbio.h)

See also

IOCTL_WINUSB_WRITE_ISOCH_PIPE

 

 

Send comments about this topic to Microsoft

Build date: 7/15/2013