name: usb version: 1.3.0.2 cabal-version: >=1.6 build-type: Custom license: BSD3 license-file: LICENSE copyright: 2009–2014 Bas van Dijk author: Bas van Dijk maintainer: Bas van Dijk homepage: http://basvandijk.github.com/usb bug-reports: https://github.com/basvandijk/usb/issues category: System, Hardware synopsis: Communicate with USB devices description: This library enables you to communicate with USB devices from userspace. It is implemented as a high-level wrapper around @bindings-libusb@ () which is a low-level binding to the C library: @libusb-1.*@ (). . The USB transfer functions in this library have a simple synchronous interface (they block) but are implemented using the @libusb@ asynchronous interface. They integrate with the GHC event manager making them efficient (no busy-loops) and interruptible (throwing an exception to the thread executing a transfer immediately cancels the transfer). . If the GHC event manager is not available (because you're either not using GHC or because you're on Windows) the library degrades gracefully to the @libusb@ synchronous implementation. . This documentation assumes knowledge of how to operate USB devices from a software standpoint (descriptors, configurations, interfaces, endpoints, control\/bulk\/interrupt\/isochronous transfers, etc). Full information can be found in the USB 2.0 specification (). . For an example how to use this library see the @usb-example@ package () or the @ls-usb@ package (). . Besides this API documentation the following sources might be interesting: . * The @libusb 1.0@ documentation (). . * The USB 2.0 specification (). . * The @bindings-libusb@ documentation (). . * \"USB in a NutShell\" (). extra-source-files: README.markdown, Changelog, default.nix, shell.nix source-repository head Type: git Location: git://github.com/basvandijk/usb.git Library GHC-Options: -Wall build-depends: base >= 4 && < 4.9 , bindings-libusb >= 1.4.5 && < 1.5 , bytestring >= 0.9 && < 0.11 , text >= 0.5 && < 1.3 , vector >= 0.5 && < 0.11 exposed-modules: System.USB System.USB.Initialization System.USB.Misc System.USB.Enumeration System.USB.DeviceHandling System.USB.Descriptors System.USB.IO System.USB.IO.StandardDeviceRequests System.USB.Exceptions other-modules: System.USB.Base, Utils if !os(windows) && impl(ghc>7) cpp-options: -DHAS_EVENT_MANAGER exposed-modules: System.USB.IO.Transfers other-modules: Poll, Event, SystemEventManager build-depends: containers >= 0.1 && < 0.6 if impl(ghc >= 7.2.1) cpp-options: -DGENERICS build-depends: ghc-prim >= 0.2 && < 0.5