Maintainer | Bas van Dijk <v.dijk.bas@gmail.com> |
---|---|
Safe Haskell | Trustworthy |
This module provides functionality for enumerating the USB devices currently attached to the system.
- data Device
- getDevices :: Ctx -> IO [Device]
- busNumber :: Device -> Word8
- deviceAddress :: Device -> Word8
- deviceDesc :: Device -> DeviceDesc
Documentation
Abstract type representing a USB device detected on the system.
You can only obtain a USB device from the getDevices
function.
Certain operations can be performed on a device, but in order to do any I/O you
will have to first obtain a DeviceHandle
using openDevice
.
Just because you have a reference to a device does not mean it is necessarily usable. The device may have been unplugged, you may not have permission to operate such device or another process or driver may be using the device.
To get additional information about a device you can retrieve its descriptor
using deviceDesc
.
getDevices :: Ctx -> IO [Device]Source
Returns a list of USB devices currently attached to the system.
This is your entry point into finding a USB device.
Exceptions:
-
NoMemException
on a memory allocation failure.
deviceAddress :: Device -> Word8Source
The address of the device on the bus it is connected to.
deviceDesc :: Device -> DeviceDescSource
Get the descriptor of the device.