Landing Recent QUIC Changes.
[chromium-blink-merge.git] / ui / events / ozone / device / device_manager_manual.h
blobd158365d9dc1e0f16a0defa97b09ecf6b6751eac
1 // Copyright 2014 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
5 #ifndef UI_EVENTS_OZONE_DEVICE_DEVICE_MANAGER_MANUAL_H_
6 #define UI_EVENTS_OZONE_DEVICE_DEVICE_MANAGER_MANUAL_H_
8 #include <vector>
10 #include "base/macros.h"
11 #include "base/observer_list.h"
12 #include "ui/events/ozone/device/device_manager.h"
14 namespace base {
15 class FilePath;
18 namespace ui {
20 class DeviceManagerManual : public DeviceManager {
21 public:
22 DeviceManagerManual();
23 ~DeviceManagerManual() override;
25 private:
26 // DeviceManager overrides:
27 void ScanDevices(DeviceEventObserver* observer) override;
28 void AddObserver(DeviceEventObserver* observer) override;
29 void RemoveObserver(DeviceEventObserver* observer) override;
31 void OnDevicesScanned(std::vector<base::FilePath>* result);
33 bool have_scanned_devices_;
34 std::vector<base::FilePath> devices_;
35 ObserverList<DeviceEventObserver> observers_;
37 base::WeakPtrFactory<DeviceManagerManual> weak_ptr_factory_;
39 DISALLOW_COPY_AND_ASSIGN(DeviceManagerManual);
42 } // namespace ui
44 #endif // UI_EVENTS_OZONE_DEVICE_DEVICE_MANAGER_MANUAL_H_