| Index: modules/webusb/USBDevice.idl
|
| diff --git a/modules/webusb/USBDevice.idl b/modules/webusb/USBDevice.idl
|
| new file mode 100644
|
| index 0000000000000000000000000000000000000000..6d3846186102d06cb2991b403f494a9d0503548f
|
| --- /dev/null
|
| +++ b/modules/webusb/USBDevice.idl
|
| @@ -0,0 +1,51 @@
|
| +// Copyright 2015 The Chromium Authors. All rights reserved.
|
| +// Use of this source code is governed by a BSD-style license that can be
|
| +// found in the LICENSE file.
|
| +
|
| +// http://wicg.github.io/webusb/#idl-def-usbtransferstatus
|
| +
|
| +enum USBTransferStatus {
|
| + "ok",
|
| + "stall",
|
| + "babble"
|
| +};
|
| +
|
| +// http://wicg.github.io/webusb/#device-usage
|
| +
|
| +[
|
| + GarbageCollected,
|
| + RuntimeEnabled=WebUSB,
|
| +] interface USBDevice {
|
| + readonly attribute DOMString guid;
|
| + readonly attribute octet usbVersionMajor;
|
| + readonly attribute octet usbVersionMinor;
|
| + readonly attribute octet usbVersionSubminor;
|
| + readonly attribute octet deviceClass;
|
| + readonly attribute octet deviceSubclass;
|
| + readonly attribute octet deviceProtocol;
|
| + readonly attribute unsigned short vendorId;
|
| + readonly attribute unsigned short productId;
|
| + readonly attribute octet deviceVersionMajor;
|
| + readonly attribute octet deviceVersionMinor;
|
| + readonly attribute octet deviceVersionSubminor;
|
| + readonly attribute DOMString? manufacturerName;
|
| + readonly attribute DOMString? productName;
|
| + readonly attribute DOMString? serialNumber;
|
| + readonly attribute sequence<USBConfiguration> configurations;
|
| +
|
| + [CallWith=ScriptState] Promise<void> open();
|
| + [CallWith=ScriptState] Promise<void> close();
|
| + [CallWith=ScriptState] Promise<void> getConfiguration();
|
| + [CallWith=ScriptState] Promise<void> setConfiguration(octet configurationValue);
|
| + [CallWith=ScriptState] Promise<void> claimInterface(octet interfaceNumber);
|
| + [CallWith=ScriptState] Promise<void> releaseInterface(octet interfaceNumber);
|
| + [CallWith=ScriptState] Promise<void> setInterface(octet interfaceNumber, octet alternateSetting);
|
| + [CallWith=ScriptState] Promise<USBInTransferResult> controlTransferIn(USBControlTransferParameters setup, unsigned short length);
|
| + [CallWith=ScriptState] Promise<USBOutTransferResult> controlTransferOut(USBControlTransferParameters setup, optional BufferSource data);
|
| + [CallWith=ScriptState] Promise<void> clearHalt(octet endpointNumber);
|
| + [CallWith=ScriptState] Promise<USBInTransferResult> transferIn(octet endpointNumber, unsigned long length);
|
| + [CallWith=ScriptState] Promise<USBOutTransferResult> transferOut(octet endpointNumber, BufferSource data);
|
| + [CallWith=ScriptState] Promise<USBIsochronousInTransferResult> isochronousTransferIn(octet endpointNumber, sequence<unsigned long> packetLengths);
|
| + [CallWith=ScriptState] Promise<UsbIsochronousOutTransferResult> isochronousTransferOut(octet endpointNumber, BufferSource data, sequence<unsigned long> packetLengths);
|
| + [CallWith=ScriptState] Promise<void> reset();
|
| +};
|
|
|