Perform a synchronous bulk transfer.
int32_t UsbBulkXfer( 
    int32_t udev, 
    uint32_t pipe, 
    void *data, 
    uint32_t len, 
    uint32_t * actual_length, 
    uint32_t flags, 
    uint32_t timeout 
);
Parameters
- 
udev 
- Device handle from UsbOpenDevice. 
 pipe 
- Value describing the device, endpoint number, type, and transfer direction. 
 data 
- User data buffer. 
 len 
- Length in bytes of expected transfer. 
 actual_length 
- Pointer to a location which receives the count of actual bytes transfered. 
 flags 
- Transfer flags. One of the following:
USB_FORCE_SHORT_XFER - force a short transmit last
USB_SHORT_XFER_OK - allow short reads
USB_DELAY_STATUS_STAGE - insert delay before STATUS
USB_MULTI_SHORT_OK - allow multiple short frames 
 timeout 
- Timeout in milliseconds for the transfer. Use USB_WAIT_FOREVER to wait forever. 
 
 
Return Values
| USB_ERR_NORMAL_COMPLETION | 
Success. The operation was completed. | 
| USB_ERR_NO_STACK | 
The USB stack is not ready. | 
| USB_ERR_MEMORY | 
Memory could not be allocated for the operation. | 
| USB_ERR_TIMEOUT | 
The device did not respond. | 
Requirements
| Versions | 
Defined in | 
Include | 
Link to | 
| INtime 5.0 | 
intime/rt/include/usbif3.h | 
usbif3.h | 
usbif3.lib | 
 
            
            See Also