aboutsummaryrefslogtreecommitdiffstats
path: root/vendor/github.com/karalabe/hid/hid.go
blob: be75f949d8530888a2091edb9c22fcc54a545d85 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
// hid - Gopher Interface Devices (USB HID)
// Copyright (c) 2017 Péter Szilágyi. All rights reserved.
//
// This file is released under the 3-clause BSD license. Note however that Linux
// support depends on libusb, released under GNU GPL 2.1 or later.

// Package hid provides an interface for USB HID devices.
package hid

import "errors"

// ErrDeviceClosed is returned for operations where the device closed before or
// during the execution.
var ErrDeviceClosed = errors.New("hid: device closed")

// ErrUnsupportedPlatform is returned for all operations where the underlying
// operating system is not supported by the library.
var ErrUnsupportedPlatform = errors.New("hid: unsupported platform")

// DeviceInfo is a hidapi info structure.
type DeviceInfo struct {
    Path         string // Platform-specific device path
    VendorID     uint16 // Device Vendor ID
    ProductID    uint16 // Device Product ID
    Release      uint16 // Device Release Number in binary-coded decimal, also known as Device Version Number
    Serial       string // Serial Number
    Manufacturer string // Manufacturer String
    Product      string // Product string
    UsagePage    uint16 // Usage Page for this Device/Interface (Windows/Mac only)
    Usage        uint16 // Usage for this Device/Interface (Windows/Mac only)

    // The USB interface which this logical device
    // represents. Valid on both Linux implementations
    // in all cases, and valid on the Windows implementation
    // only if the device contains more than one interface.
    Interface int
}