USBDevice Class |
Namespace: MadWizard.WinUSBNet
The USBDevice type exposes the following members.
Name | Description | |
---|---|---|
USBDevice(String) |
Constructs a new USB device
| |
USBDevice(USBDeviceInfo) |
Constructs a new USB device
|
Name | Description | |
---|---|---|
ControlPipeTimeout |
Specifies the timeout in milliseconds for control pipe operations. If a control transfer does not finish within the specified time it will fail.
When set to zero, no timeout is used. Default value is 5000 milliseconds.
| |
Descriptor |
Device descriptor with information about the device
| |
Interfaces |
Collection of all interfaces available on the USB device
| |
Pipes |
Collection of all pipes available on the USB device
|
Name | Description | |
---|---|---|
BeginControlIn(Byte, Byte, Int32, Int32, AsyncCallback, Object) |
Initiates an asynchronous control transfer without a data stage over the default control endpoint.
The request should have an IN direction (specified by the highest bit of the requestType parameter).
The setup packets' length member will be set to zero. | |
BeginControlIn(Byte, Byte, Int32, Int32, Byte, AsyncCallback, Object) |
Initiates an asynchronous control transfer over the default control endpoint. The request should have an IN direction (specified by the highest bit
of the requestType parameter). | |
BeginControlIn(Byte, Byte, Int32, Int32, Byte, Int32, AsyncCallback, Object) |
Initiates an asynchronous control transfer over the default control endpoint. The request should have an IN direction (specified by the highest bit
of the requestType parameter). | |
BeginControlOut(Byte, Byte, Int32, Int32, AsyncCallback, Object) |
Initiates an asynchronous control transfer without a data stage over the default control endpoint.
The request should have an OUT direction (specified by the highest bit of the requestType parameter).
The setup packets' length member will be set to zero. | |
BeginControlOut(Byte, Byte, Int32, Int32, Byte, AsyncCallback, Object) |
Initiates an asynchronous control transfer over the default control endpoint. The request should have an OUT direction (specified by the highest bit
of the requestType parameter). | |
BeginControlOut(Byte, Byte, Int32, Int32, Byte, Int32, AsyncCallback, Object) |
Initiates an asynchronous control transfer over the default control endpoint. The request should have an OUT direction (specified by the highest bit
of the requestType parameter). | |
BeginControlTransfer(Byte, Byte, Int32, Int32, AsyncCallback, Object) |
Initiates an asynchronous control transfer without a data stage over the default control endpoint. This method allows both IN and OUT direction transfers, depending
on the highest bit of the requestType parameter. Alternatively, BeginControlIn(Byte, Byte, Int32, Int32, Byte, Int32, AsyncCallback, Object) and
BeginControlIn(Byte, Byte, Int32, Int32, Byte, Int32, AsyncCallback, Object) can be used for asynchronous control transfers in a specific direction, which is
the recommended way because it prevents using the wrong direction accidentally. Use the BeginControlTransfer method when the direction is not
known at compile time. | |
BeginControlTransfer(Byte, Byte, Int32, Int32, Byte, AsyncCallback, Object) |
Initiates an asynchronous control transfer over the default control endpoint. This method allows both IN and OUT direction transfers, depending
on the highest bit of the requestType parameter. Alternatively, BeginControlIn(Byte, Byte, Int32, Int32, Byte, Int32, AsyncCallback, Object) and
BeginControlIn(Byte, Byte, Int32, Int32, Byte, Int32, AsyncCallback, Object) can be used for asynchronous control transfers in a specific direction, which is
the recommended way because it prevents using the wrong direction accidentally. Use the BeginControlTransfer method when the direction is not
known at compile time. | |
BeginControlTransfer(Byte, Byte, Int32, Int32, Byte, Int32, AsyncCallback, Object) |
Initiates an asynchronous control transfer over the default control endpoint. This method allows both IN and OUT direction transfers, depending
on the highest bit of the requestType parameter. Alternatively, BeginControlIn(Byte, Byte, Int32, Int32, Byte, Int32, AsyncCallback, Object) and
BeginControlIn(Byte, Byte, Int32, Int32, Byte, Int32, AsyncCallback, Object) can be used for asynchronous control transfers in a specific direction, which is
the recommended way because it prevents using the wrong direction accidentally. Use the BeginControlTransfer method when the direction is not
known at compile time. | |
ControlIn(Byte, Byte, Int32, Int32) |
Initiates a control transfer without a data stage over the default control endpoint. The request should have an IN direction (specified by the highest bit
of the requestType parameter). The setup packets' length member will be set to zero.
| |
ControlIn(Byte, Byte, Int32, Int32, Byte) |
Initiates a control transfer over the default control endpoint. The request should have an IN direction (specified by the highest bit
of the requestType parameter). The length of buffer given by the buffer parameter will dictate
the number of bytes that are transfered and the value of the setup packet's length member.
| |
ControlIn(Byte, Byte, Int32, Int32, Int32) |
Initiates a control transfer over the default control endpoint. The request should have an IN direction (specified by the highest bit
of the requestType parameter). A buffer to receive the data is automatically created by this method.
| |
ControlIn(Byte, Byte, Int32, Int32, Byte, Int32) |
Initiates a control transfer over the default control endpoint. The request should have an IN direction (specified by the highest bit
of the requestType parameter).
| |
ControlOut(Byte, Byte, Int32, Int32) |
Initiates a control transfer without a data stage over the default control endpoint. The request should have an OUT direction (specified by the highest bit
of the requestType parameter. The setup packets' length member will be set to zero.
| |
ControlOut(Byte, Byte, Int32, Int32, Byte) |
Initiates a control transfer over the default control endpoint. The request should have an OUT direction (specified by the highest bit
of the requestType parameter).
| |
ControlOut(Byte, Byte, Int32, Int32, Byte, Int32) |
Initiates a control transfer over the default control endpoint. The request should have an OUT direction (specified by the highest bit
of the requestType parameter).
| |
ControlTransfer(Byte, Byte, Int32, Int32) |
Initiates a control transfer without a data stage over the default control endpoint. This method allows both IN and OUT direction transfers, depending
on the highest bit of the requestType parameter). Alternatively, ControlIn(Byte, Byte, Int32, Int32) and
ControlOut(Byte, Byte, Int32, Int32) can be used for control transfers in a specific direction, which is the recommended way because
it prevents using the wrong direction accidentally. Use the ControlTransfer method when the direction is not known at compile time.
| |
ControlTransfer(Byte, Byte, Int32, Int32, Byte) |
Initiates a control transfer over the default control endpoint. This method allows both IN and OUT direction transfers, depending
on the highest bit of the requestType parameter). Alternatively, ControlIn(Byte, Byte, Int32, Int32, Byte) and
ControlOut(Byte, Byte, Int32, Int32, Byte) can be used for control transfers in a specific direction, which is the recommended way because
it prevents using the wrong direction accidentally. Use the ControlTransfer method when the direction is not known at compile time.
| |
ControlTransfer(Byte, Byte, Int32, Int32, Byte, Int32) |
Initiates a control transfer over the default control endpoint. This method allows both IN and OUT direction transfers, depending
on the highest bit of the requestType parameter. Alternatively, ControlIn(Byte, Byte, Int32, Int32, Byte, Int32) and
ControlOut(Byte, Byte, Int32, Int32, Byte, Int32) can be used for control transfers in a specific direction, which is the recommended way because
it prevents using the wrong direction accidentally. Use the ControlTransfer method when the direction is not known at compile time.
| |
Dispose |
Disposes the UsbDevice including all unmanaged WinUSB handles. This function
should be called when the UsbDevice object is no longer in use, otherwise
unmanaged handles will remain open until the garbage collector finalizes the
object.
| |
Dispose(Boolean) |
Disposes the object
| |
EndControlTransfer |
Waits for a pending asynchronous control transfer to complete.
| |
Equals | (Inherited from Object.) | |
Finalize |
Finalizer for the UsbDevice. Disposes all unmanaged handles.
(Overrides ObjectFinalize.) | |
GetDevices(Guid) |
Finds WinUSB devices with a GUID matching the parameter guid
| |
GetDevices(String) |
Finds WinUSB devices with a GUID matching the parameter guidString
| |
GetHashCode | (Inherited from Object.) | |
GetSingleDevice(Guid) |
Finds the first WinUSB device with a GUID matching the parameter guid.
If multiple WinUSB devices match the GUID only the first one is returned.
| |
GetSingleDevice(String) |
Finds the first WinUSB device with a GUID matching the parameter guidString.
If multiple WinUSB devices match the GUID only the first one is returned.
| |
GetType | (Inherited from Object.) | |
MemberwiseClone | (Inherited from Object.) | |
ToString | (Inherited from Object.) |