Index: device/core/device_client.h |
diff --git a/device/core/device_client.h b/device/core/device_client.h |
index b4a9934e55b12774b8cb1c7dc5ef0016a2ef7582..00fa17902ab70f58e4ea26467a45085fc227f2f1 100644 |
--- a/device/core/device_client.h |
+++ b/device/core/device_client.h |
@@ -6,12 +6,17 @@ |
#define DEVICE_CORE_DEVICE_CLIENT_H_ |
#include "base/macros.h" |
+#include "third_party/mojo/src/mojo/public/cpp/bindings/interface_request.h" |
namespace device { |
class HidService; |
class UsbService; |
+namespace usb { |
+class DeviceManager; |
+} |
+ |
// Interface used by consumers of //device APIs to get pointers to the service |
// singletons appropriate for a given embedding application. For an example see |
// //chrome/browser/chrome_device_client.h. |
@@ -21,7 +26,7 @@ class DeviceClient { |
DeviceClient(); |
// Destruction clears the single instance. |
- ~DeviceClient(); |
+ virtual ~DeviceClient(); |
// Returns the single instance of |this|. |
static DeviceClient* Get(); |
@@ -29,6 +34,11 @@ class DeviceClient { |
// Returns the UsbService instance for this embedder. |
virtual UsbService* GetUsbService(); |
+ // Connects a USB DeviceManager client to a concrete implementation. If |
+ // no such implementation is available the request is dropped. |
+ virtual void ConnectToUSBDeviceManager( |
+ mojo::InterfaceRequest<usb::DeviceManager> request); |
+ |
// Returns the HidService instance for this embedder. |
virtual HidService* GetHidService(); |