RadioAccessFamily.java revision 2af2d57d578e0c3a2740628e7c6336b19961cc49
12af2d57d578e0c3a2740628e7c6336b19961cc49Wink Saville/* 22af2d57d578e0c3a2740628e7c6336b19961cc49Wink Saville* Copyright (C) 2014 The Android Open Source Project 32af2d57d578e0c3a2740628e7c6336b19961cc49Wink Saville* 42af2d57d578e0c3a2740628e7c6336b19961cc49Wink Saville* Licensed under the Apache License, Version 2.0 (the "License"); 52af2d57d578e0c3a2740628e7c6336b19961cc49Wink Saville* you may not use this file except in compliance with the License. 62af2d57d578e0c3a2740628e7c6336b19961cc49Wink Saville* You may obtain a copy of the License at 72af2d57d578e0c3a2740628e7c6336b19961cc49Wink Saville* 82af2d57d578e0c3a2740628e7c6336b19961cc49Wink Saville* http://www.apache.org/licenses/LICENSE-2.0 92af2d57d578e0c3a2740628e7c6336b19961cc49Wink Saville* 102af2d57d578e0c3a2740628e7c6336b19961cc49Wink Saville* Unless required by applicable law or agreed to in writing, software 112af2d57d578e0c3a2740628e7c6336b19961cc49Wink Saville* distributed under the License is distributed on an "AS IS" BASIS, 122af2d57d578e0c3a2740628e7c6336b19961cc49Wink Saville* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 132af2d57d578e0c3a2740628e7c6336b19961cc49Wink Saville* See the License for the specific language governing permissions and 142af2d57d578e0c3a2740628e7c6336b19961cc49Wink Saville* limitations under the License. 152af2d57d578e0c3a2740628e7c6336b19961cc49Wink Saville*/ 162af2d57d578e0c3a2740628e7c6336b19961cc49Wink Saville 172af2d57d578e0c3a2740628e7c6336b19961cc49Wink Savillepackage android.telephony; 182af2d57d578e0c3a2740628e7c6336b19961cc49Wink Saville 192af2d57d578e0c3a2740628e7c6336b19961cc49Wink Savilleimport android.os.Parcel; 202af2d57d578e0c3a2740628e7c6336b19961cc49Wink Savilleimport android.os.Parcelable; 212af2d57d578e0c3a2740628e7c6336b19961cc49Wink Saville 222af2d57d578e0c3a2740628e7c6336b19961cc49Wink Saville/** 232af2d57d578e0c3a2740628e7c6336b19961cc49Wink Saville * Object to indicate the phone radio type and access technology. 242af2d57d578e0c3a2740628e7c6336b19961cc49Wink Saville * 252af2d57d578e0c3a2740628e7c6336b19961cc49Wink Saville * @hide 262af2d57d578e0c3a2740628e7c6336b19961cc49Wink Saville */ 272af2d57d578e0c3a2740628e7c6336b19961cc49Wink Savillepublic class RadioAccessFamily implements Parcelable { 282af2d57d578e0c3a2740628e7c6336b19961cc49Wink Saville 292af2d57d578e0c3a2740628e7c6336b19961cc49Wink Saville // Radio Access Family 302af2d57d578e0c3a2740628e7c6336b19961cc49Wink Saville public static final int RAF_UNKNOWN = (1 << ServiceState.RIL_RADIO_TECHNOLOGY_UNKNOWN); 312af2d57d578e0c3a2740628e7c6336b19961cc49Wink Saville public static final int RAF_GPRS = (1 << ServiceState.RIL_RADIO_TECHNOLOGY_GPRS); 322af2d57d578e0c3a2740628e7c6336b19961cc49Wink Saville public static final int RAF_EDGE = (1 << ServiceState.RIL_RADIO_TECHNOLOGY_EDGE); 332af2d57d578e0c3a2740628e7c6336b19961cc49Wink Saville public static final int RAF_UMTS = (1 << ServiceState.RIL_RADIO_TECHNOLOGY_UMTS); 342af2d57d578e0c3a2740628e7c6336b19961cc49Wink Saville public static final int RAF_IS95A = (1 << ServiceState.RIL_RADIO_TECHNOLOGY_IS95A); 352af2d57d578e0c3a2740628e7c6336b19961cc49Wink Saville public static final int RAF_IS95B = (1 << ServiceState.RIL_RADIO_TECHNOLOGY_IS95B); 362af2d57d578e0c3a2740628e7c6336b19961cc49Wink Saville public static final int RAF_1xRTT = (1 << ServiceState.RIL_RADIO_TECHNOLOGY_1xRTT); 372af2d57d578e0c3a2740628e7c6336b19961cc49Wink Saville public static final int RAF_EVDO_0 = (1 << ServiceState.RIL_RADIO_TECHNOLOGY_EVDO_0); 382af2d57d578e0c3a2740628e7c6336b19961cc49Wink Saville public static final int RAF_EVDO_A = (1 << ServiceState.RIL_RADIO_TECHNOLOGY_EVDO_A); 392af2d57d578e0c3a2740628e7c6336b19961cc49Wink Saville public static final int RAF_HSDPA = (1 << ServiceState.RIL_RADIO_TECHNOLOGY_HSDPA); 402af2d57d578e0c3a2740628e7c6336b19961cc49Wink Saville public static final int RAF_HSUPA = (1 << ServiceState.RIL_RADIO_TECHNOLOGY_HSUPA); 412af2d57d578e0c3a2740628e7c6336b19961cc49Wink Saville public static final int RAF_HSPA = (1 << ServiceState.RIL_RADIO_TECHNOLOGY_HSPA); 422af2d57d578e0c3a2740628e7c6336b19961cc49Wink Saville public static final int RAF_EVDO_B = (1 << ServiceState.RIL_RADIO_TECHNOLOGY_EVDO_B); 432af2d57d578e0c3a2740628e7c6336b19961cc49Wink Saville public static final int RAF_EHRPD = (1 << ServiceState.RIL_RADIO_TECHNOLOGY_EHRPD); 442af2d57d578e0c3a2740628e7c6336b19961cc49Wink Saville public static final int RAF_LTE = (1 << ServiceState.RIL_RADIO_TECHNOLOGY_LTE); 452af2d57d578e0c3a2740628e7c6336b19961cc49Wink Saville public static final int RAF_HSPAP = (1 << ServiceState.RIL_RADIO_TECHNOLOGY_HSPAP); 462af2d57d578e0c3a2740628e7c6336b19961cc49Wink Saville public static final int RAF_GSM = (1 << ServiceState.RIL_RADIO_TECHNOLOGY_GSM); 472af2d57d578e0c3a2740628e7c6336b19961cc49Wink Saville public static final int RAF_TD_SCDMA = (1 << ServiceState.RIL_RADIO_TECHNOLOGY_TD_SCDMA); 482af2d57d578e0c3a2740628e7c6336b19961cc49Wink Saville 492af2d57d578e0c3a2740628e7c6336b19961cc49Wink Saville /* Phone ID of phone */ 502af2d57d578e0c3a2740628e7c6336b19961cc49Wink Saville private int mPhoneId; 512af2d57d578e0c3a2740628e7c6336b19961cc49Wink Saville 522af2d57d578e0c3a2740628e7c6336b19961cc49Wink Saville /* Radio Access Family */ 532af2d57d578e0c3a2740628e7c6336b19961cc49Wink Saville private int mRadioAccessFamily; 542af2d57d578e0c3a2740628e7c6336b19961cc49Wink Saville 552af2d57d578e0c3a2740628e7c6336b19961cc49Wink Saville /** 562af2d57d578e0c3a2740628e7c6336b19961cc49Wink Saville * Constructor. 572af2d57d578e0c3a2740628e7c6336b19961cc49Wink Saville * 582af2d57d578e0c3a2740628e7c6336b19961cc49Wink Saville * @param phoneId the phone ID 592af2d57d578e0c3a2740628e7c6336b19961cc49Wink Saville * @param radioAccessFamily the phone radio access family defined 602af2d57d578e0c3a2740628e7c6336b19961cc49Wink Saville * in RadioAccessFamily. It's a bit mask value to represent 612af2d57d578e0c3a2740628e7c6336b19961cc49Wink Saville * the support type. 622af2d57d578e0c3a2740628e7c6336b19961cc49Wink Saville */ 632af2d57d578e0c3a2740628e7c6336b19961cc49Wink Saville public RadioAccessFamily(int phoneId, int radioAccessFamily) { 642af2d57d578e0c3a2740628e7c6336b19961cc49Wink Saville mPhoneId = phoneId; 652af2d57d578e0c3a2740628e7c6336b19961cc49Wink Saville mRadioAccessFamily = radioAccessFamily; 662af2d57d578e0c3a2740628e7c6336b19961cc49Wink Saville } 672af2d57d578e0c3a2740628e7c6336b19961cc49Wink Saville 682af2d57d578e0c3a2740628e7c6336b19961cc49Wink Saville /** 692af2d57d578e0c3a2740628e7c6336b19961cc49Wink Saville * Get phone ID. 702af2d57d578e0c3a2740628e7c6336b19961cc49Wink Saville * 712af2d57d578e0c3a2740628e7c6336b19961cc49Wink Saville * @return phone ID 722af2d57d578e0c3a2740628e7c6336b19961cc49Wink Saville */ 732af2d57d578e0c3a2740628e7c6336b19961cc49Wink Saville public int getPhoneId() { 742af2d57d578e0c3a2740628e7c6336b19961cc49Wink Saville return mPhoneId; 752af2d57d578e0c3a2740628e7c6336b19961cc49Wink Saville } 762af2d57d578e0c3a2740628e7c6336b19961cc49Wink Saville 772af2d57d578e0c3a2740628e7c6336b19961cc49Wink Saville /** 782af2d57d578e0c3a2740628e7c6336b19961cc49Wink Saville * get radio access family. 792af2d57d578e0c3a2740628e7c6336b19961cc49Wink Saville * 802af2d57d578e0c3a2740628e7c6336b19961cc49Wink Saville * @return radio access family 812af2d57d578e0c3a2740628e7c6336b19961cc49Wink Saville */ 822af2d57d578e0c3a2740628e7c6336b19961cc49Wink Saville public int getRadioAccessFamily() { 832af2d57d578e0c3a2740628e7c6336b19961cc49Wink Saville return mRadioAccessFamily; 842af2d57d578e0c3a2740628e7c6336b19961cc49Wink Saville } 852af2d57d578e0c3a2740628e7c6336b19961cc49Wink Saville 862af2d57d578e0c3a2740628e7c6336b19961cc49Wink Saville @Override 872af2d57d578e0c3a2740628e7c6336b19961cc49Wink Saville public String toString() { 882af2d57d578e0c3a2740628e7c6336b19961cc49Wink Saville String ret = "{ mPhoneId = " + mPhoneId 892af2d57d578e0c3a2740628e7c6336b19961cc49Wink Saville + ", mRadioAccessFamily = " + mRadioAccessFamily 902af2d57d578e0c3a2740628e7c6336b19961cc49Wink Saville + "}"; 912af2d57d578e0c3a2740628e7c6336b19961cc49Wink Saville return ret; 922af2d57d578e0c3a2740628e7c6336b19961cc49Wink Saville } 932af2d57d578e0c3a2740628e7c6336b19961cc49Wink Saville 942af2d57d578e0c3a2740628e7c6336b19961cc49Wink Saville /** 952af2d57d578e0c3a2740628e7c6336b19961cc49Wink Saville * Implement the Parcelable interface. 962af2d57d578e0c3a2740628e7c6336b19961cc49Wink Saville * 972af2d57d578e0c3a2740628e7c6336b19961cc49Wink Saville * @return describe content 982af2d57d578e0c3a2740628e7c6336b19961cc49Wink Saville */ 992af2d57d578e0c3a2740628e7c6336b19961cc49Wink Saville @Override 1002af2d57d578e0c3a2740628e7c6336b19961cc49Wink Saville public int describeContents() { 1012af2d57d578e0c3a2740628e7c6336b19961cc49Wink Saville return 0; 1022af2d57d578e0c3a2740628e7c6336b19961cc49Wink Saville } 1032af2d57d578e0c3a2740628e7c6336b19961cc49Wink Saville 1042af2d57d578e0c3a2740628e7c6336b19961cc49Wink Saville /** 1052af2d57d578e0c3a2740628e7c6336b19961cc49Wink Saville * Implement the Parcelable interface. 1062af2d57d578e0c3a2740628e7c6336b19961cc49Wink Saville * 1072af2d57d578e0c3a2740628e7c6336b19961cc49Wink Saville * @param outParcel The Parcel in which the object should be written. 1082af2d57d578e0c3a2740628e7c6336b19961cc49Wink Saville * @param flags Additional flags about how the object should be written. 1092af2d57d578e0c3a2740628e7c6336b19961cc49Wink Saville */ 1102af2d57d578e0c3a2740628e7c6336b19961cc49Wink Saville public void writeToParcel(Parcel outParcel, int flags) { 1112af2d57d578e0c3a2740628e7c6336b19961cc49Wink Saville outParcel.writeInt(mPhoneId); 1122af2d57d578e0c3a2740628e7c6336b19961cc49Wink Saville outParcel.writeInt(mRadioAccessFamily); 1132af2d57d578e0c3a2740628e7c6336b19961cc49Wink Saville } 1142af2d57d578e0c3a2740628e7c6336b19961cc49Wink Saville 1152af2d57d578e0c3a2740628e7c6336b19961cc49Wink Saville /** 1162af2d57d578e0c3a2740628e7c6336b19961cc49Wink Saville * Implement the Parcelable interface. 1172af2d57d578e0c3a2740628e7c6336b19961cc49Wink Saville */ 1182af2d57d578e0c3a2740628e7c6336b19961cc49Wink Saville public static final Creator<RadioAccessFamily> CREATOR = 1192af2d57d578e0c3a2740628e7c6336b19961cc49Wink Saville new Creator<RadioAccessFamily>() { 1202af2d57d578e0c3a2740628e7c6336b19961cc49Wink Saville 1212af2d57d578e0c3a2740628e7c6336b19961cc49Wink Saville @Override 1222af2d57d578e0c3a2740628e7c6336b19961cc49Wink Saville public RadioAccessFamily createFromParcel(Parcel in) { 1232af2d57d578e0c3a2740628e7c6336b19961cc49Wink Saville int phoneId = in.readInt(); 1242af2d57d578e0c3a2740628e7c6336b19961cc49Wink Saville int radioAccessFamily = in.readInt(); 1252af2d57d578e0c3a2740628e7c6336b19961cc49Wink Saville 1262af2d57d578e0c3a2740628e7c6336b19961cc49Wink Saville return new RadioAccessFamily(phoneId, radioAccessFamily); 1272af2d57d578e0c3a2740628e7c6336b19961cc49Wink Saville } 1282af2d57d578e0c3a2740628e7c6336b19961cc49Wink Saville 1292af2d57d578e0c3a2740628e7c6336b19961cc49Wink Saville @Override 1302af2d57d578e0c3a2740628e7c6336b19961cc49Wink Saville public RadioAccessFamily[] newArray(int size) { 1312af2d57d578e0c3a2740628e7c6336b19961cc49Wink Saville return new RadioAccessFamily[size]; 1322af2d57d578e0c3a2740628e7c6336b19961cc49Wink Saville } 1332af2d57d578e0c3a2740628e7c6336b19961cc49Wink Saville }; 1342af2d57d578e0c3a2740628e7c6336b19961cc49Wink Saville} 1352af2d57d578e0c3a2740628e7c6336b19961cc49Wink Saville 136