diff options
author | Mitchell Wills <mwills@google.com> | 2016-02-11 17:20:39 -0800 |
---|---|---|
committer | Mitchell Wills <mwills@google.com> | 2016-02-16 10:25:31 -0800 |
commit | 798a997d2e5bf8b3278bfeaa7ca841394e2db4b9 (patch) | |
tree | 9aa428fe8379d247e935efb5337abb6d5c1a2a64 /service/java/com/android/server/wifi/scanner/NoBandChannelHelper.java | |
parent | f2d417a69e52898d976ea01334794357ecdcfcd8 (diff) | |
download | android_frameworks_opt_net_wifi-798a997d2e5bf8b3278bfeaa7ca841394e2db4b9.tar.gz android_frameworks_opt_net_wifi-798a997d2e5bf8b3278bfeaa7ca841394e2db4b9.tar.bz2 android_frameworks_opt_net_wifi-798a997d2e5bf8b3278bfeaa7ca841394e2db4b9.zip |
Add final bits of required functionality for ChannelHelper
Add support for getting the list of available channels for a band if
available.
Add support for estimating the duration of a scan.
Change-Id: I8abe6d857400775f72969abd4b15e8763ec772c5
Diffstat (limited to 'service/java/com/android/server/wifi/scanner/NoBandChannelHelper.java')
-rw-r--r-- | service/java/com/android/server/wifi/scanner/NoBandChannelHelper.java | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/service/java/com/android/server/wifi/scanner/NoBandChannelHelper.java b/service/java/com/android/server/wifi/scanner/NoBandChannelHelper.java index 0d4296ab3..ea1f999ce 100644 --- a/service/java/com/android/server/wifi/scanner/NoBandChannelHelper.java +++ b/service/java/com/android/server/wifi/scanner/NoBandChannelHelper.java @@ -29,6 +29,15 @@ import java.util.Set; */ public class NoBandChannelHelper extends ChannelHelper { + private static final WifiScanner.ChannelSpec[] NO_CHANNELS = new WifiScanner.ChannelSpec[0]; + + /** + * These parameters are used to estimate the scan duration. + * This is a guess at the number of channels the device supports for use when a ScanSettings + * specifies a band instead of a list of channels. + */ + private static final int ALL_BAND_CHANNEL_COUNT_ESTIMATE = 36; + @Override public boolean settingsContainChannel(WifiScanner.ScanSettings settings, int channel) { if (settings.band == WifiScanner.WIFI_BAND_UNSPECIFIED) { @@ -43,6 +52,20 @@ public class NoBandChannelHelper extends ChannelHelper { } } + @Override + public WifiScanner.ChannelSpec[] getAvailableScanChannels(int band) { + return NO_CHANNELS; // not supported + } + + @Override + public int estimateScanDuration(WifiScanner.ScanSettings settings) { + if (settings.band == WifiScanner.WIFI_BAND_UNSPECIFIED) { + return settings.channels.length * SCAN_PERIOD_PER_CHANNEL_MS; + } else { + return ALL_BAND_CHANNEL_COUNT_ESTIMATE * SCAN_PERIOD_PER_CHANNEL_MS; + } + } + /** * ChannelCollection that merges channels without knowing which channels are in each band. In * order to do this if any band is added or the maxChannels is exceeded then all channels will |