| OLD | NEW |
| 1 // Copyright (c) 2010 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2010 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 // A device data provider provides data from the device that is used by a | 5 // A device data provider provides data from the device that is used by a |
| 6 // NetworkLocationProvider to obtain a position fix. This data may be either | 6 // NetworkLocationProvider to obtain a position fix. This data may be either |
| 7 // cell radio data or wifi data. For a given type of data, we use a singleton | 7 // cell radio data or wifi data. For a given type of data, we use a singleton |
| 8 // instance of the device data provider, which is used by multiple | 8 // instance of the device data provider, which is used by multiple |
| 9 // NetworkLocationProvider objects. | 9 // NetworkLocationProvider objects. |
| 10 // | 10 // |
| 11 // This file providers DeviceDataProvider, which provides static methods to | 11 // This file providers DeviceDataProvider, which provides static methods to |
| 12 // access the singleton instance. The singleton instance uses a private | 12 // access the singleton instance. The singleton instance uses a private |
| 13 // implementation to abstract across platforms and also to allow mock providers | 13 // implementation to abstract across platforms and also to allow mock providers |
| 14 // to be used for testing. | 14 // to be used for testing. |
| 15 // | 15 // |
| 16 // This file also provides DeviceDataProviderImplBase, a base class which | 16 // This file also provides DeviceDataProviderImplBase, a base class which |
| 17 // provides commom functionality for the private implementations. | 17 // provides commom functionality for the private implementations. |
| 18 // | 18 // |
| 19 // This file also declares the data structures used to represent cell radio data | 19 // This file also declares the data structures used to represent cell radio data |
| 20 // and wifi data. | 20 // and wifi data. |
| 21 | 21 |
| 22 #ifndef CHROME_BROWSER_GEOLOCATION_DEVICE_DATA_PROVIDER_H_ | 22 #ifndef CHROME_BROWSER_GEOLOCATION_DEVICE_DATA_PROVIDER_H_ |
| 23 #define CHROME_BROWSER_GEOLOCATION_DEVICE_DATA_PROVIDER_H_ | 23 #define CHROME_BROWSER_GEOLOCATION_DEVICE_DATA_PROVIDER_H_ |
| 24 #pragma once | 24 #pragma once |
| 25 | 25 |
| 26 #include <algorithm> | 26 #include <algorithm> |
| 27 #include <functional> | 27 #include <functional> |
| 28 #include <set> | 28 #include <set> |
| 29 #include <string> | |
| 30 #include <vector> | 29 #include <vector> |
| 31 | 30 |
| 32 #include "base/basictypes.h" | 31 #include "base/basictypes.h" |
| 33 #include "base/message_loop.h" | 32 #include "base/message_loop.h" |
| 34 #include "base/non_thread_safe.h" | 33 #include "base/non_thread_safe.h" |
| 35 #include "base/string16.h" | 34 #include "base/string16.h" |
| 36 #include "base/string_util.h" | 35 #include "base/string_util.h" |
| 37 #include "base/scoped_ptr.h" | 36 #include "base/scoped_ptr.h" |
| 38 #include "base/task.h" | 37 #include "base/task.h" |
| 39 | 38 |
| (...skipping 365 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 405 | 404 |
| 406 // static | 405 // static |
| 407 template<typename DataType> | 406 template<typename DataType> |
| 408 typename DeviceDataProvider<DataType>::ImplFactoryFunction | 407 typename DeviceDataProvider<DataType>::ImplFactoryFunction |
| 409 DeviceDataProvider<DataType>::factory_function_ = DefaultFactoryFunction; | 408 DeviceDataProvider<DataType>::factory_function_ = DefaultFactoryFunction; |
| 410 | 409 |
| 411 typedef DeviceDataProvider<RadioData> RadioDataProvider; | 410 typedef DeviceDataProvider<RadioData> RadioDataProvider; |
| 412 typedef DeviceDataProvider<WifiData> WifiDataProvider; | 411 typedef DeviceDataProvider<WifiData> WifiDataProvider; |
| 413 | 412 |
| 414 #endif // CHROME_BROWSER_GEOLOCATION_DEVICE_DATA_PROVIDER_H_ | 413 #endif // CHROME_BROWSER_GEOLOCATION_DEVICE_DATA_PROVIDER_H_ |
| OLD | NEW |