| 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 // For OSX 10.5 we use the system API function WirelessScanSplit. This function | 5 // For OSX 10.5 we use the system API function WirelessScanSplit. This function |
| 6 // is not documented or included in the SDK, so we use a reverse-engineered | 6 // is not documented or included in the SDK, so we use a reverse-engineered |
| 7 // header, osx_wifi_.h. This file is taken from the iStumbler project | 7 // header, osx_wifi_.h. This file is taken from the iStumbler project |
| 8 // (http://www.istumbler.net). | 8 // (http://www.istumbler.net). |
| 9 | 9 |
| 10 #include "chrome/browser/geolocation/wifi_data_provider_mac.h" | 10 #include "content/browser/geolocation/wifi_data_provider_mac.h" |
| 11 | 11 |
| 12 #include <dlfcn.h> | 12 #include <dlfcn.h> |
| 13 #include <stdio.h> | 13 #include <stdio.h> |
| 14 |
| 14 #include "base/utf_string_conversions.h" | 15 #include "base/utf_string_conversions.h" |
| 15 #include "chrome/browser/geolocation/osx_wifi.h" | 16 #include "content/browser/geolocation/osx_wifi.h" |
| 16 #include "chrome/browser/geolocation/wifi_data_provider_common.h" | 17 #include "content/browser/geolocation/wifi_data_provider_common.h" |
| 17 | 18 |
| 18 namespace { | 19 namespace { |
| 19 // The time periods, in milliseconds, between successive polls of the wifi data. | 20 // The time periods, in milliseconds, between successive polls of the wifi data. |
| 20 const int kDefaultPollingInterval = 120000; // 2 mins | 21 const int kDefaultPollingInterval = 120000; // 2 mins |
| 21 const int kNoChangePollingInterval = 300000; // 5 mins | 22 const int kNoChangePollingInterval = 300000; // 5 mins |
| 22 const int kTwoNoChangePollingInterval = 600000; // 10 mins | 23 const int kTwoNoChangePollingInterval = 600000; // 10 mins |
| 23 const int kNoWifiPollingIntervalMilliseconds = 20 * 1000; // 20s | 24 const int kNoWifiPollingIntervalMilliseconds = 20 * 1000; // 20s |
| 24 | 25 |
| 25 // Provides the wifi API binding for use when running on OSX 10.5 machines using | 26 // Provides the wifi API binding for use when running on OSX 10.5 machines using |
| 26 // the Apple80211 framework. | 27 // the Apple80211 framework. |
| (...skipping 155 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 182 DVLOG(1) << "MacWifiDataProvider : failed to initialize any wlan api"; | 183 DVLOG(1) << "MacWifiDataProvider : failed to initialize any wlan api"; |
| 183 return NULL; | 184 return NULL; |
| 184 } | 185 } |
| 185 | 186 |
| 186 PollingPolicyInterface* MacWifiDataProvider::NewPollingPolicy() { | 187 PollingPolicyInterface* MacWifiDataProvider::NewPollingPolicy() { |
| 187 return new GenericPollingPolicy<kDefaultPollingInterval, | 188 return new GenericPollingPolicy<kDefaultPollingInterval, |
| 188 kNoChangePollingInterval, | 189 kNoChangePollingInterval, |
| 189 kTwoNoChangePollingInterval, | 190 kTwoNoChangePollingInterval, |
| 190 kNoWifiPollingIntervalMilliseconds>; | 191 kNoWifiPollingIntervalMilliseconds>; |
| 191 } | 192 } |
| OLD | NEW |