2017-02-16 16:36:44 +03:00
|
|
|
// 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
|
2017-08-21 13:45:50 +03:00
|
|
|
// support depends on libusb, released under GNU LGPL 2.1 or later.
|
2017-02-16 16:36:44 +03:00
|
|
|
|
2017-02-27 13:30:17 +03:00
|
|
|
// +build !linux,!darwin,!windows ios !cgo
|
2017-02-16 16:36:44 +03:00
|
|
|
|
|
|
|
package hid
|
|
|
|
|
|
|
|
// Supported returns whether this platform is supported by the HID library or not.
|
|
|
|
// The goal of this method is to allow programatically handling platforms that do
|
|
|
|
// not support USB HID and not having to fall back to build constraints.
|
|
|
|
func Supported() bool {
|
|
|
|
return false
|
|
|
|
}
|
|
|
|
|
|
|
|
// Enumerate returns a list of all the HID devices attached to the system which
|
|
|
|
// match the vendor and product id. On platforms that this file implements the
|
|
|
|
// function is a noop and returns an empty list always.
|
|
|
|
func Enumerate(vendorID uint16, productID uint16) []DeviceInfo {
|
|
|
|
return nil
|
|
|
|
}
|
|
|
|
|
|
|
|
// Device is a live HID USB connected device handle. On platforms that this file
|
|
|
|
// implements the type lacks the actual HID device and all methods are noop.
|
|
|
|
type Device struct {
|
|
|
|
DeviceInfo // Embed the infos for easier access
|
|
|
|
}
|
|
|
|
|
|
|
|
// Open connects to an HID device by its path name. On platforms that this file
|
|
|
|
// implements the method just returns an error.
|
|
|
|
func (info DeviceInfo) Open() (*Device, error) {
|
|
|
|
return nil, ErrUnsupportedPlatform
|
|
|
|
}
|
|
|
|
|
|
|
|
// Close releases the HID USB device handle. On platforms that this file implements
|
|
|
|
// the method is just a noop.
|
2018-11-30 12:22:53 +03:00
|
|
|
func (dev *Device) Close() error { return nil }
|
2017-02-16 16:36:44 +03:00
|
|
|
|
|
|
|
// Write sends an output report to a HID device. On platforms that this file
|
|
|
|
// implements the method just returns an error.
|
|
|
|
func (dev *Device) Write(b []byte) (int, error) {
|
|
|
|
return 0, ErrUnsupportedPlatform
|
|
|
|
}
|
|
|
|
|
|
|
|
// Read retrieves an input report from a HID device. On platforms that this file
|
|
|
|
// implements the method just returns an error.
|
|
|
|
func (dev *Device) Read(b []byte) (int, error) {
|
|
|
|
return 0, ErrUnsupportedPlatform
|
|
|
|
}
|