IssueInterruptTransfer (Compact 2013)
3/26/2014
This function initiates an interrupt transfer with a universal serial bus (USB) device on the specified endpoint.
Syntax
DWORD IssueInterruptTransfer(
LPCUSB_FUNCS UsbFuncs,
USB_PIPE hPipe,
LPTRANSFER_NOTIFY_ROUTINE NotifyRoutine,
PVOID NotifyContext,
DWORD Flags,
LPVOID pBuffer,
ULONG PhysAddr,
DWORD BufferLength,
LPDWORD pBytesTransferred,
DWORD dwTimeout,
PUSB_ERROR pUsbRc
);
Parameters
- UsbFuncs
[in] Pointer to a USB_FUNCS structure.
- hPipe
[in] Handle to an open USB pipe.
- NotifyRoutine
[in] Pointer to a transfer completion routine of type LPTRANSFER_NOTIFY_ROUTINE, or NULL if no callback routine is necessary.
- NotifyContext
[in] Parameter to pass to LPTRANSFER_NOTIFY_ROUTINE.
Flags
[in] Flags for the transfer. These flags shown in the following list are declared in the Usbtypes.h header file.- USB_IN_TRANSFER
- USB_OUT_TRANSFER
- USB_NO_WAIT
- USB_SHORT_TRANSFER_OK
- USB_START_ISOCH_ASAP
- USB_COMPRESS_ISOCH
- USB_SEND_TO_DEVICE
- USB_SEND_TO_INTERFACE
- USB_SEND_TO_ENDPOINT
- USB_DONT_BLOCK_FOR_MEM
- pBuffer
[in] Pointer to the transfer buffer.
- PhysAddr
[in] Physical address, which might be NULL, of the data buffer.
- BufferLength
[in] Length of the transfer buffer, pBuffer.
- pBytesTransferred
[out] Number of bytes transferred.
- dwTimeout
[in] Timeout in milliseconds (ms).
- pUsbRc
[out] Returns USB_ERROR or USB_TRANSFER.
Return Value
A USB_TRANSFER handle indicates success. NULL indicates failure. IssueControlTransfer behaves either synchronously or asynchronously, depending on the value you provide for lpStartAddress and whether dwFlags contains the USB_NO_WAIT flag.
The following table shows the possible flags.
lpStartAddress |
dwFlags & USB_NO_WAIT |
Behavior |
---|---|---|
NULL |
0 |
Synchronous |
NULL |
USB_NO_WAIT |
Asynchronous |
Non-NULL |
0 |
Asynchronous |
Non-NULL |
USB_NO_WAIT |
Asynchronous |
When behaving asynchronously, this function invokes the callback function optionally specified by lpStartAddress when the transfer is complete.
Requirements
Header |
usbclient.h |
See Also
Reference
USB Host Client Driver Functions
AbortTransfer
GetTransferStatus
LPIS_TRANSFER_COMPLETE
LPTRANSFER_NOTIFY_ROUTINE
USB_FUNCS