Chromium Code Reviews| Index: third_party/WebKit/Source/modules/webusb/USBDevice.h |
| diff --git a/third_party/WebKit/Source/modules/webusb/USBDevice.h b/third_party/WebKit/Source/modules/webusb/USBDevice.h |
| index 9e8afc6cfd4f2b73e25fcad239cac2a215f6a3b7..f724395fcc5de1160087581ca31d107d7aa62e51 100644 |
| --- a/third_party/WebKit/Source/modules/webusb/USBDevice.h |
| +++ b/third_party/WebKit/Source/modules/webusb/USBDevice.h |
| @@ -12,6 +12,7 @@ |
| #include "platform/heap/Handle.h" |
| #include "public/platform/modules/webusb/WebUSBDevice.h" |
| #include "public/platform/modules/webusb/WebUSBDeviceInfo.h" |
| +#include "wtf/BitVector.h" |
| #include "wtf/Vector.h" |
| namespace blink { |
| @@ -43,6 +44,8 @@ public: |
| const WebUSBDeviceInfo& info() const { return m_device->info(); } |
| void onDeviceOpenedOrClosed(bool); |
| void onConfigurationSelected(bool success, int configurationIndex); |
| + void onInterfaceClaimedOrUnclaimed(bool claimed, int interfaceIndex); |
|
juncai
2016/03/17 01:21:12
interfaceIndex is int type in this function, but i
Reilly Grant (use Gerrit)
2016/03/17 17:07:01
Fixed.
|
| + bool isInterfaceClaimed(size_t configurationIndex, size_t interfaceIndex) const; |
| // IDL exposed interface: |
| String guid() const { return info().guid; } |
| @@ -73,7 +76,7 @@ public: |
| ScriptPromise controlTransferIn(ScriptState*, const USBControlTransferParameters& setup, unsigned length); |
| ScriptPromise controlTransferOut(ScriptState*, const USBControlTransferParameters& setup); |
| ScriptPromise controlTransferOut(ScriptState*, const USBControlTransferParameters& setup, const ArrayBufferOrArrayBufferView& data); |
| - ScriptPromise clearHalt(ScriptState*, uint8_t endpointNumber); |
| + ScriptPromise clearHalt(ScriptState*, String direction, uint8_t endpointNumber); |
| ScriptPromise transferIn(ScriptState*, uint8_t endpointNumber, unsigned length); |
| ScriptPromise transferOut(ScriptState*, uint8_t endpointNumber, const ArrayBufferOrArrayBufferView& data); |
| ScriptPromise isochronousTransferIn(ScriptState*, uint8_t endpointNumber, Vector<unsigned> packetLengths); |
| @@ -86,12 +89,18 @@ public: |
| private: |
| int findConfigurationIndex(uint8_t configurationValue) const; |
| + int findInterfaceIndex(uint8_t interfaceNumber) const; |
| bool ensureDeviceConfigured(ScriptPromiseResolver*) const; |
| + bool ensureInterfaceClaimed(uint8_t interfaceNumber, ScriptPromiseResolver*) const; |
| + bool ensureEndpointAvailable(bool inTransfer, uint8_t endpointNumber, ScriptPromiseResolver*) const; |
| + bool anyInterfaceChangeInProgress() const; |
| OwnPtr<WebUSBDevice> m_device; |
| bool m_opened; |
| bool m_deviceStateChangeInProgress; |
| int m_configurationIndex; |
| + WTF::BitVector m_claimedInterfaces; |
| + WTF::BitVector m_interfaceStateChangeInProgress; |
| }; |
| } // namespace blink |