Home    Prev Next    
Contents
Programming For USB Device
Overview
Programmers Guide
Scenario
Data transfer
Synchronous Transfer
Asynchronous Transfer
Reading Descriptors
USB Support Routines And Structures
Common Procedures
UsbEnumerateDevices
OpenRapidUsb
IsRapidUsbOpened
CloseRapidUsb
Descriptors
UsbGetDescriptor
UsbGetDeviceDescriptor
UsbGetStringDescriptor
UsbGetConfigDescriptor
UsbFreeConfigDescriptor
UsbGetInterfaceDescriptor
UsbFreeInterfaceDescriptor
UsbGetEndpointDescriptor
Configure Device
UsbGetDeviceInfo
UsbUnconfigureDevice
UsbSelectConfig
UsbGetConfig
UsbSelectInterface
UsbGetInterface
UsbResetDevice
UsbGetBandwidthInfo
UsbCyclePort
Features and Status
UsbSetFeature
UsbClearFeature
UsbGetStatus
Vendor/Class Requests
UsbVendorRequestIn
UsbVendorRequestOut
UsbClassRequestIn
UsbClassRequestOut
Pipes
IsRapidUsbPipeOpened
UsbPipeOpen
UsbPipeClose
UsbGetPipeCount
UsbPipeGetInfo
UsbPipeDirectionIn
UsbPipeGetType
UsbTransfer
UsbTransferAsync
TRANSFER_COMPLETION_ROUTINE
UsbCancelTransfer
UsbPipeReset
UsbPipeAbort
Other
UsbGetPortStatus
UsbGetCurrentFrameNumber
USB Structures and Types
RDUSB_DEVICE_INFORMATION
RDUSB_PIPE_INFORMATION
RDUSB_PIPE_TYPE
RDUSB_BANDWIDTH_INFORMATION
RDUSB_DEVICE_INFORMATION
Go to RapidDriver Main Page

typedef struct _RDUSB_DEVICE_INFORMATION {
    USHORT Length;
    UCHAR InterfaceNumber;
    UCHAR AlternateSetting;
    UCHAR Class;
    UCHAR SubClass;
    UCHAR Protocol;
    UCHAR Reserved;
    PVOID Reserved1; 
    ULONG NumberOfPipes; 
    RDUSB_PIPE_INFORMATION Pipes[1];
} RDUSB_DEVICE_INFORMATION, *PRDUSB_DEVICE_INFORMATION;


Members
 
Length  
Length of this structure, including all pipe information structures that follow.  
 
InterfaceNumber  
Currently selected interface number.  
 
AlternateSetting  
Currently selected alternate interface number.  
 
Class  
Contains a USB-assigned identifier that specifies a USB-defined class that this interface conforms to.  
 
SubClass  
Contains a USB-assigned identifier that specifies a USB-defined subclass that this interface conforms to. This code is specific to the code in Class.  
 
Protocol  
Contains a USB-assigned identifier that specifies a USB-defined protocol that this interface conforms to. This code is specific to the codes in Class and SubClass.  
 
NumberOfPipes  
Specifies the number of pipes (endpoints) in this interface.  
 
Pipes[1]  
Specifies a variable length array of RDUSB_PIPE_INFORMATION structures to describe each pipe in the interface.