OLD | NEW |
1 // Copyright 2015 The Chromium Authors. All rights reserved. | 1 // Copyright 2015 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #ifndef USB_h | 5 #ifndef USB_h |
6 #define USB_h | 6 #define USB_h |
7 | 7 |
8 #include "bindings/core/v8/ScriptPromise.h" | 8 #include "bindings/core/v8/ScriptPromise.h" |
9 #include "bindings/core/v8/ScriptWrappable.h" | 9 #include "bindings/core/v8/ScriptWrappable.h" |
10 #include "core/events/EventTarget.h" | 10 #include "core/events/EventTarget.h" |
11 #include "core/frame/LocalFrameLifecycleObserver.h" | 11 #include "core/frame/LocalFrameLifecycleObserver.h" |
| 12 #include "platform/heap/Handle.h" |
12 #include "public/platform/modules/webusb/WebUSBClient.h" | 13 #include "public/platform/modules/webusb/WebUSBClient.h" |
13 | 14 |
14 namespace blink { | 15 namespace blink { |
15 | 16 |
16 class LocalFrame; | 17 class LocalFrame; |
17 class ScriptState; | 18 class ScriptState; |
18 class USBDeviceRequestOptions; | 19 class USBDeviceRequestOptions; |
19 class WebUSBDevice; | 20 class WebUSBDevice; |
20 | 21 |
21 class USB final | 22 class USB final |
22 : public RefCountedGarbageCollectedEventTargetWithInlineData<USB> | 23 : public RefCountedGarbageCollectedEventTargetWithInlineData<USB> |
23 , public LocalFrameLifecycleObserver | 24 , public LocalFrameLifecycleObserver |
24 , public WebUSBClient::Observer { | 25 , public WebUSBClient::Observer { |
25 DEFINE_WRAPPERTYPEINFO(); | 26 DEFINE_WRAPPERTYPEINFO(); |
26 REFCOUNTED_GARBAGE_COLLECTED_EVENT_TARGET(USB); | 27 REFCOUNTED_GARBAGE_COLLECTED_EVENT_TARGET(USB); |
| 28 WILL_BE_USING_GARBAGE_COLLECTED_MIXIN(USB); |
27 public: | 29 public: |
28 static USB* create(LocalFrame& frame) | 30 static USB* create(LocalFrame& frame) |
29 { | 31 { |
30 return new USB(frame); | 32 return new USB(frame); |
31 } | 33 } |
32 | 34 |
33 ~USB() override; | 35 ~USB() override; |
34 | 36 |
35 // USB.idl | 37 // USB.idl |
36 ScriptPromise getDevices(ScriptState*); | 38 ScriptPromise getDevices(ScriptState*); |
(...skipping 16 matching lines...) Expand all Loading... |
53 | 55 |
54 private: | 56 private: |
55 explicit USB(LocalFrame& frame); | 57 explicit USB(LocalFrame& frame); |
56 | 58 |
57 WebUSBClient* m_client; | 59 WebUSBClient* m_client; |
58 }; | 60 }; |
59 | 61 |
60 } // namespace blink | 62 } // namespace blink |
61 | 63 |
62 #endif // USB_h | 64 #endif // USB_h |
OLD | NEW |