OLD | NEW |
1 // Copyright 2013 The Chromium Authors. All rights reserved. | 1 // Copyright 2013 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 CHROME_BROWSER_MEDIA_GALLERIES_WIN_PORTABLE_DEVICE_MAP_SERVICE_H_ | 5 #ifndef CHROME_BROWSER_MEDIA_GALLERIES_WIN_PORTABLE_DEVICE_MAP_SERVICE_H_ |
6 #define CHROME_BROWSER_MEDIA_GALLERIES_WIN_PORTABLE_DEVICE_MAP_SERVICE_H_ | 6 #define CHROME_BROWSER_MEDIA_GALLERIES_WIN_PORTABLE_DEVICE_MAP_SERVICE_H_ |
7 | 7 |
8 #include <portabledeviceapi.h> | 8 #include <portabledeviceapi.h> |
9 #include <map> | 9 #include <map> |
10 | 10 |
11 #include "base/lazy_instance.h" | 11 #include "base/lazy_instance.h" |
12 #include "base/strings/string16.h" | 12 #include "base/strings/string16.h" |
13 #include "base/synchronization/lock.h" | 13 #include "base/synchronization/lock.h" |
14 #include "base/win/scoped_comptr.h" | 14 #include "base/win/scoped_comptr.h" |
15 | 15 |
16 namespace chrome { | |
17 | |
18 // PortableDeviceMapService keeps track of initialized portable device | 16 // PortableDeviceMapService keeps track of initialized portable device |
19 // interfaces. PortableDeviceMapService owns the portable device interfaces. | 17 // interfaces. PortableDeviceMapService owns the portable device interfaces. |
20 class PortableDeviceMapService { | 18 class PortableDeviceMapService { |
21 public: | 19 public: |
22 static PortableDeviceMapService* GetInstance(); | 20 static PortableDeviceMapService* GetInstance(); |
23 | 21 |
24 // Adds the portable |device| interface to the map service for the device | 22 // Adds the portable |device| interface to the map service for the device |
25 // specified by the |device_location|. Called on a blocking pool thread. | 23 // specified by the |device_location|. Called on a blocking pool thread. |
26 void AddPortableDevice(const string16& device_location, | 24 void AddPortableDevice(const string16& device_location, |
27 IPortableDevice* device); | 25 IPortableDevice* device); |
(...skipping 40 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
68 PortableDeviceMapService(); | 66 PortableDeviceMapService(); |
69 ~PortableDeviceMapService(); | 67 ~PortableDeviceMapService(); |
70 | 68 |
71 // Mapping of |device_location| and IPortableDevice* object. | 69 // Mapping of |device_location| and IPortableDevice* object. |
72 PortableDeviceMap device_map_; | 70 PortableDeviceMap device_map_; |
73 base::Lock lock_; | 71 base::Lock lock_; |
74 | 72 |
75 DISALLOW_COPY_AND_ASSIGN(PortableDeviceMapService); | 73 DISALLOW_COPY_AND_ASSIGN(PortableDeviceMapService); |
76 }; | 74 }; |
77 | 75 |
78 } // namespace chrome | |
79 | |
80 #endif // CHROME_BROWSER_MEDIA_GALLERIES_WIN_PORTABLE_DEVICE_MAP_SERVICE_H_ | 76 #endif // CHROME_BROWSER_MEDIA_GALLERIES_WIN_PORTABLE_DEVICE_MAP_SERVICE_H_ |
OLD | NEW |