diff options
Diffstat (limited to 'device/core/device_client.h')
-rw-r--r-- | device/core/device_client.h | 12 |
1 files changed, 11 insertions, 1 deletions
diff --git a/device/core/device_client.h b/device/core/device_client.h index b4a9934..00fa179 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(); |