11af4b0280af406cfc7eb46810f6b76e57b983e11destradaa/* 21af4b0280af406cfc7eb46810f6b76e57b983e11destradaa * Copyright (C) 2013 The Android Open Source Project 31af4b0280af406cfc7eb46810f6b76e57b983e11destradaa * 41af4b0280af406cfc7eb46810f6b76e57b983e11destradaa * Licensed under the Apache License, Version 2.0 (the "License"); 51af4b0280af406cfc7eb46810f6b76e57b983e11destradaa * you may not use this file except in compliance with the License. 61af4b0280af406cfc7eb46810f6b76e57b983e11destradaa * You may obtain a copy of the License at 71af4b0280af406cfc7eb46810f6b76e57b983e11destradaa * 81af4b0280af406cfc7eb46810f6b76e57b983e11destradaa * http://www.apache.org/licenses/LICENSE-2.0 91af4b0280af406cfc7eb46810f6b76e57b983e11destradaa * 101af4b0280af406cfc7eb46810f6b76e57b983e11destradaa * Unless required by applicable law or agreed to in writing, software 111af4b0280af406cfc7eb46810f6b76e57b983e11destradaa * distributed under the License is distributed on an "AS IS" BASIS, 121af4b0280af406cfc7eb46810f6b76e57b983e11destradaa * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 131af4b0280af406cfc7eb46810f6b76e57b983e11destradaa * See the License for the specific language governing permissions and 141af4b0280af406cfc7eb46810f6b76e57b983e11destradaa * limitations under the License. 151af4b0280af406cfc7eb46810f6b76e57b983e11destradaa */ 161af4b0280af406cfc7eb46810f6b76e57b983e11destradaa 171af4b0280af406cfc7eb46810f6b76e57b983e11destradaapackage com.android.location.provider; 181af4b0280af406cfc7eb46810f6b76e57b983e11destradaa 191af4b0280af406cfc7eb46810f6b76e57b983e11destradaaimport android.location.FusedBatchOptions; 201af4b0280af406cfc7eb46810f6b76e57b983e11destradaa 211af4b0280af406cfc7eb46810f6b76e57b983e11destradaa/** 221af4b0280af406cfc7eb46810f6b76e57b983e11destradaa * Class that exposes FusedBatchOptions to the GmsCore . 231af4b0280af406cfc7eb46810f6b76e57b983e11destradaa */ 241af4b0280af406cfc7eb46810f6b76e57b983e11destradaapublic class GmsFusedBatchOptions { 251af4b0280af406cfc7eb46810f6b76e57b983e11destradaa private FusedBatchOptions mOptions = new FusedBatchOptions(); 261af4b0280af406cfc7eb46810f6b76e57b983e11destradaa 271af4b0280af406cfc7eb46810f6b76e57b983e11destradaa /* 281af4b0280af406cfc7eb46810f6b76e57b983e11destradaa * Methods that provide a facade for properties in FusedBatchOptions. 291af4b0280af406cfc7eb46810f6b76e57b983e11destradaa */ 301af4b0280af406cfc7eb46810f6b76e57b983e11destradaa public void setMaxPowerAllocationInMW(double value) { 311af4b0280af406cfc7eb46810f6b76e57b983e11destradaa mOptions.setMaxPowerAllocationInMW(value); 321af4b0280af406cfc7eb46810f6b76e57b983e11destradaa } 331af4b0280af406cfc7eb46810f6b76e57b983e11destradaa 341af4b0280af406cfc7eb46810f6b76e57b983e11destradaa public double getMaxPowerAllocationInMW() { 351af4b0280af406cfc7eb46810f6b76e57b983e11destradaa return mOptions.getMaxPowerAllocationInMW(); 361af4b0280af406cfc7eb46810f6b76e57b983e11destradaa } 371af4b0280af406cfc7eb46810f6b76e57b983e11destradaa 381af4b0280af406cfc7eb46810f6b76e57b983e11destradaa public void setPeriodInNS(long value) { 391af4b0280af406cfc7eb46810f6b76e57b983e11destradaa mOptions.setPeriodInNS(value); 401af4b0280af406cfc7eb46810f6b76e57b983e11destradaa } 411af4b0280af406cfc7eb46810f6b76e57b983e11destradaa 421af4b0280af406cfc7eb46810f6b76e57b983e11destradaa public long getPeriodInNS() { 431af4b0280af406cfc7eb46810f6b76e57b983e11destradaa return mOptions.getPeriodInNS(); 441af4b0280af406cfc7eb46810f6b76e57b983e11destradaa } 451af4b0280af406cfc7eb46810f6b76e57b983e11destradaa 46295a93b99f1773638553a0d00898824dc7ba79e5David Christie public void setSmallestDisplacementMeters(float value) { 47295a93b99f1773638553a0d00898824dc7ba79e5David Christie mOptions.setSmallestDisplacementMeters(value); 48295a93b99f1773638553a0d00898824dc7ba79e5David Christie } 49295a93b99f1773638553a0d00898824dc7ba79e5David Christie 50295a93b99f1773638553a0d00898824dc7ba79e5David Christie public float getSmallestDisplacementMeters() { 51295a93b99f1773638553a0d00898824dc7ba79e5David Christie return mOptions.getSmallestDisplacementMeters(); 52295a93b99f1773638553a0d00898824dc7ba79e5David Christie } 53295a93b99f1773638553a0d00898824dc7ba79e5David Christie 541af4b0280af406cfc7eb46810f6b76e57b983e11destradaa public void setSourceToUse(int source) { 551af4b0280af406cfc7eb46810f6b76e57b983e11destradaa mOptions.setSourceToUse(source); 561af4b0280af406cfc7eb46810f6b76e57b983e11destradaa } 571af4b0280af406cfc7eb46810f6b76e57b983e11destradaa 581af4b0280af406cfc7eb46810f6b76e57b983e11destradaa public void resetSourceToUse(int source) { 591af4b0280af406cfc7eb46810f6b76e57b983e11destradaa mOptions.resetSourceToUse(source); 601af4b0280af406cfc7eb46810f6b76e57b983e11destradaa } 611af4b0280af406cfc7eb46810f6b76e57b983e11destradaa 621af4b0280af406cfc7eb46810f6b76e57b983e11destradaa public boolean isSourceToUseSet(int source) { 631af4b0280af406cfc7eb46810f6b76e57b983e11destradaa return mOptions.isSourceToUseSet(source); 641af4b0280af406cfc7eb46810f6b76e57b983e11destradaa } 651af4b0280af406cfc7eb46810f6b76e57b983e11destradaa 661af4b0280af406cfc7eb46810f6b76e57b983e11destradaa public int getSourcesToUse() { 671af4b0280af406cfc7eb46810f6b76e57b983e11destradaa return mOptions.getSourcesToUse(); 681af4b0280af406cfc7eb46810f6b76e57b983e11destradaa } 691af4b0280af406cfc7eb46810f6b76e57b983e11destradaa 701af4b0280af406cfc7eb46810f6b76e57b983e11destradaa public void setFlag(int flag) { 711af4b0280af406cfc7eb46810f6b76e57b983e11destradaa mOptions.setFlag(flag); 721af4b0280af406cfc7eb46810f6b76e57b983e11destradaa } 731af4b0280af406cfc7eb46810f6b76e57b983e11destradaa 741af4b0280af406cfc7eb46810f6b76e57b983e11destradaa public void resetFlag(int flag) { 751af4b0280af406cfc7eb46810f6b76e57b983e11destradaa mOptions.resetFlag(flag); 761af4b0280af406cfc7eb46810f6b76e57b983e11destradaa } 771af4b0280af406cfc7eb46810f6b76e57b983e11destradaa 781af4b0280af406cfc7eb46810f6b76e57b983e11destradaa public boolean isFlagSet(int flag) { 791af4b0280af406cfc7eb46810f6b76e57b983e11destradaa return mOptions.isFlagSet(flag); 801af4b0280af406cfc7eb46810f6b76e57b983e11destradaa } 811af4b0280af406cfc7eb46810f6b76e57b983e11destradaa 821af4b0280af406cfc7eb46810f6b76e57b983e11destradaa public int getFlags() { 831af4b0280af406cfc7eb46810f6b76e57b983e11destradaa return mOptions.getFlags(); 841af4b0280af406cfc7eb46810f6b76e57b983e11destradaa } 851af4b0280af406cfc7eb46810f6b76e57b983e11destradaa 861af4b0280af406cfc7eb46810f6b76e57b983e11destradaa /** 871af4b0280af406cfc7eb46810f6b76e57b983e11destradaa * Definition of enum flag sets needed by this class. 881af4b0280af406cfc7eb46810f6b76e57b983e11destradaa * Such values need to be kept in sync with the ones in fused_location.h 891af4b0280af406cfc7eb46810f6b76e57b983e11destradaa */ 901af4b0280af406cfc7eb46810f6b76e57b983e11destradaa 911af4b0280af406cfc7eb46810f6b76e57b983e11destradaa public static final class SourceTechnologies { 921af4b0280af406cfc7eb46810f6b76e57b983e11destradaa public static int GNSS = 1<<0; 931af4b0280af406cfc7eb46810f6b76e57b983e11destradaa public static int WIFI = 1<<1; 941af4b0280af406cfc7eb46810f6b76e57b983e11destradaa public static int SENSORS = 1<<2; 951af4b0280af406cfc7eb46810f6b76e57b983e11destradaa public static int CELL = 1<<3; 961af4b0280af406cfc7eb46810f6b76e57b983e11destradaa public static int BLUETOOTH = 1<<4; 971af4b0280af406cfc7eb46810f6b76e57b983e11destradaa } 981af4b0280af406cfc7eb46810f6b76e57b983e11destradaa 991af4b0280af406cfc7eb46810f6b76e57b983e11destradaa public static final class BatchFlags { 1001af4b0280af406cfc7eb46810f6b76e57b983e11destradaa public static int WAKEUP_ON_FIFO_FULL = 1<<0; 1011af4b0280af406cfc7eb46810f6b76e57b983e11destradaa public static int CALLBACK_ON_LOCATION_FIX = 1<<1; 1021af4b0280af406cfc7eb46810f6b76e57b983e11destradaa } 1031af4b0280af406cfc7eb46810f6b76e57b983e11destradaa 1041af4b0280af406cfc7eb46810f6b76e57b983e11destradaa /* 1051af4b0280af406cfc7eb46810f6b76e57b983e11destradaa * Method definitions for internal use. 1061af4b0280af406cfc7eb46810f6b76e57b983e11destradaa */ 1071af4b0280af406cfc7eb46810f6b76e57b983e11destradaa 1081af4b0280af406cfc7eb46810f6b76e57b983e11destradaa /* 1091af4b0280af406cfc7eb46810f6b76e57b983e11destradaa * @hide 1101af4b0280af406cfc7eb46810f6b76e57b983e11destradaa */ 1111af4b0280af406cfc7eb46810f6b76e57b983e11destradaa public FusedBatchOptions getParcelableOptions() { 1121af4b0280af406cfc7eb46810f6b76e57b983e11destradaa return mOptions; 1131af4b0280af406cfc7eb46810f6b76e57b983e11destradaa } 1141af4b0280af406cfc7eb46810f6b76e57b983e11destradaa} 115