10825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville/*
20825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Copyright (C) 2009 The Android Open Source Project
30825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville *
40825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Licensed under the Apache License, Version 2.0 (the "License");
50825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * you may not use this file except in compliance with the License.
60825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * You may obtain a copy of the License at
70825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville *
80825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville *      http://www.apache.org/licenses/LICENSE-2.0
90825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville *
100825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Unless required by applicable law or agreed to in writing, software
110825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * distributed under the License is distributed on an "AS IS" BASIS,
120825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
130825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * See the License for the specific language governing permissions and
140825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * limitations under the License.
150825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville */
160825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville
170825495a331bb44df395a0cdb79fab85e68db5d5Wink Savillepackage com.android.internal.telephony.cdma;
180825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville
190825495a331bb44df395a0cdb79fab85e68db5d5Wink Savilleimport java.util.HashMap;
200825495a331bb44df395a0cdb79fab85e68db5d5Wink Savilleimport java.util.HashSet;
210825495a331bb44df395a0cdb79fab85e68db5d5Wink Savilleimport android.util.Log;
220825495a331bb44df395a0cdb79fab85e68db5d5Wink Savilleimport android.media.ToneGenerator;
230825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville
240825495a331bb44df395a0cdb79fab85e68db5d5Wink Savillepublic class SignalToneUtil {
250825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville    /** A marker that isn't a valid TONE */
260825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville    public static final int CDMA_INVALID_TONE = -1;
270825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville
280825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville    // public final int int IS95_CONST_IR_SIGNAL_TYPE_TYPE;
290825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville    static public final int IS95_CONST_IR_SIGNAL_TONE = 0;
300825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville    static public final int IS95_CONST_IR_SIGNAL_ISDN = 1;
310825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville    static public final int IS95_CONST_IR_SIGNAL_IS54B = 2;
320825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville    static public final int IS95_CONST_IR_SIGNAL_USR_DEFD_ALERT = 4;
330825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville
340825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville    // public final int int IS95_CONST_IR_ALERT_PITCH_TYPE;
350825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville    static public final int IS95_CONST_IR_ALERT_MED = 0;
360825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville    static public final int IS95_CONST_IR_ALERT_HIGH = 1;
370825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville    static public final int IS95_CONST_IR_ALERT_LOW = 2;
380825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville
390825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville    // Based on 3GPP2 C.S0005-E, seciton 3.7.5.5 Signal,
400825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville    // set TAPIAMSSCDMA_SIGNAL_PITCH_UNKNOWN to 0 to avoid
410825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville    // the alert pitch to be involved in hash calculation for
420825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville    // signal type other than IS54B.
430825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville    static public final int TAPIAMSSCDMA_SIGNAL_PITCH_UNKNOWN = 0;
440825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville
450825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville    // public final int int IS95_CONST_IR_SIGNAL_TYPE;
460825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville    static public final int IS95_CONST_IR_SIG_ISDN_NORMAL = 0;
470825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville    static public final int IS95_CONST_IR_SIG_ISDN_INTGRP = 1;
480825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville    static public final int IS95_CONST_IR_SIG_ISDN_SP_PRI = 2;
490825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville    static public final int IS95_CONST_IR_SIG_ISDN_PAT_3 = 3;
500825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville    static public final int IS95_CONST_IR_SIG_ISDN_PING = 4;
510825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville    static public final int IS95_CONST_IR_SIG_ISDN_PAT_5 = 5;
520825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville    static public final int IS95_CONST_IR_SIG_ISDN_PAT_6 = 6;
530825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville    static public final int IS95_CONST_IR_SIG_ISDN_PAT_7 = 7;
540825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville    static public final int IS95_CONST_IR_SIG_ISDN_OFF = 15;
550825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville    static public final int IS95_CONST_IR_SIG_TONE_DIAL = 0;
560825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville    static public final int IS95_CONST_IR_SIG_TONE_RING = 1;
570825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville    static public final int IS95_CONST_IR_SIG_TONE_INT = 2;
580825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville    static public final int IS95_CONST_IR_SIG_TONE_ABB_INT = 3;
590825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville    static public final int IS95_CONST_IR_SIG_TONE_REORDER = 4;
600825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville    static public final int IS95_CONST_IR_SIG_TONE_ABB_RE = 5;
610825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville    static public final int IS95_CONST_IR_SIG_TONE_BUSY = 6;
620825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville    static public final int IS95_CONST_IR_SIG_TONE_CONFIRM = 7;
630825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville    static public final int IS95_CONST_IR_SIG_TONE_ANSWER = 8;
640825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville    static public final int IS95_CONST_IR_SIG_TONE_CALL_W = 9;
650825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville    static public final int IS95_CONST_IR_SIG_TONE_PIP = 10;
660825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville    static public final int IS95_CONST_IR_SIG_TONE_NO_TONE = 63;
670825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville    static public final int IS95_CONST_IR_SIG_IS54B_NO_TONE = 0;
680825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville    static public final int IS95_CONST_IR_SIG_IS54B_L = 1;
690825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville    static public final int IS95_CONST_IR_SIG_IS54B_SS = 2;
700825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville    static public final int IS95_CONST_IR_SIG_IS54B_SSL = 3;
710825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville    static public final int IS95_CONST_IR_SIG_IS54B_SS_2 = 4;
720825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville    static public final int IS95_CONST_IR_SIG_IS54B_SLS = 5;
730825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville    static public final int IS95_CONST_IR_SIG_IS54B_S_X4 = 6;
740825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville    static public final int IS95_CONST_IR_SIG_IS54B_PBX_L = 7;
750825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville    static public final int IS95_CONST_IR_SIG_IS54B_PBX_SS = 8;
760825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville    static public final int IS95_CONST_IR_SIG_IS54B_PBX_SSL = 9;
770825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville    static public final int IS95_CONST_IR_SIG_IS54B_PBX_SLS = 10;
780825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville    static public final int IS95_CONST_IR_SIG_IS54B_PBX_S_X4 = 11;
790825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville    static public final int IS95_CONST_IR_SIG_TONE_ABBR_ALRT = 0;
800825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville
810825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville    // Hashmap to map signalInfo To AudioTone
820825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville    static private HashMap<Integer, Integer> hm = new HashMap<Integer, Integer>();
830825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville
840825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville    private static Integer signalParamHash(int signalType, int alertPitch, int signal) {
850825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville        if ((signalType < 0) || (signalType > 256) || (alertPitch > 256) ||
860825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville                (alertPitch < 0) || (signal > 256) || (signal < 0)) {
870825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville            return new Integer(CDMA_INVALID_TONE);
880825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville        }
890825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville        // Based on 3GPP2 C.S0005-E, seciton 3.7.5.5 Signal,
900825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville        // the alert pitch field is ignored by the mobile station unless
910825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville        // SIGNAL_TYPE is '10',IS-54B Alerting.
920825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville        // Set alert pitch to TAPIAMSSCDMA_SIGNAL_PITCH_UNKNOWN
930825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville        // so the alert pitch is not involved in hash calculation
940825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville        // when signal type is not IS-54B.
950825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville        if (signalType != IS95_CONST_IR_SIGNAL_IS54B) {
960825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville            alertPitch = TAPIAMSSCDMA_SIGNAL_PITCH_UNKNOWN;
970825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville        }
980825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville        return new Integer(signalType * 256 * 256 + alertPitch * 256 + signal);
990825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville    }
1000825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville
1010825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville    public static int getAudioToneFromSignalInfo(int signalType, int alertPitch, int signal) {
1020825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville        Integer result = hm.get(signalParamHash(signalType, alertPitch, signal));
1030825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville        if (result == null) {
1040825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville            return CDMA_INVALID_TONE;
1050825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville        }
1060825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville        return result;
1070825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville    }
1080825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville
1090825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville    static {
1100825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville
1110825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville        /* SIGNAL_TYPE_ISDN */
1120825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville        hm.put(signalParamHash(IS95_CONST_IR_SIGNAL_ISDN, TAPIAMSSCDMA_SIGNAL_PITCH_UNKNOWN,
1130825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville                IS95_CONST_IR_SIG_ISDN_NORMAL), ToneGenerator.TONE_CDMA_CALL_SIGNAL_ISDN_NORMAL);
1140825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville
1150825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville        hm.put(signalParamHash(IS95_CONST_IR_SIGNAL_ISDN, TAPIAMSSCDMA_SIGNAL_PITCH_UNKNOWN,
1160825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville                        IS95_CONST_IR_SIG_ISDN_INTGRP),
1170825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville                        ToneGenerator.TONE_CDMA_CALL_SIGNAL_ISDN_INTERGROUP);
1180825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville
1190825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville        hm.put(signalParamHash(IS95_CONST_IR_SIGNAL_ISDN, TAPIAMSSCDMA_SIGNAL_PITCH_UNKNOWN,
1200825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville                IS95_CONST_IR_SIG_ISDN_SP_PRI), ToneGenerator.TONE_CDMA_CALL_SIGNAL_ISDN_SP_PRI);
1210825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville
1220825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville        hm.put(signalParamHash(IS95_CONST_IR_SIGNAL_ISDN, TAPIAMSSCDMA_SIGNAL_PITCH_UNKNOWN,
1230825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville                IS95_CONST_IR_SIG_ISDN_PAT_3), ToneGenerator.TONE_CDMA_CALL_SIGNAL_ISDN_PAT3);
1240825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville
1250825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville        hm.put(signalParamHash(IS95_CONST_IR_SIGNAL_ISDN, TAPIAMSSCDMA_SIGNAL_PITCH_UNKNOWN,
1260825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville                IS95_CONST_IR_SIG_ISDN_PING), ToneGenerator.TONE_CDMA_CALL_SIGNAL_ISDN_PING_RING);
1270825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville
1280825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville        hm.put(signalParamHash(IS95_CONST_IR_SIGNAL_ISDN, TAPIAMSSCDMA_SIGNAL_PITCH_UNKNOWN,
1290825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville                IS95_CONST_IR_SIG_ISDN_PAT_5), ToneGenerator.TONE_CDMA_CALL_SIGNAL_ISDN_PAT5);
1300825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville
1310825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville        hm.put(signalParamHash(IS95_CONST_IR_SIGNAL_ISDN, TAPIAMSSCDMA_SIGNAL_PITCH_UNKNOWN,
1320825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville                IS95_CONST_IR_SIG_ISDN_PAT_6), ToneGenerator.TONE_CDMA_CALL_SIGNAL_ISDN_PAT6);
1330825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville
1340825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville        hm.put(signalParamHash(IS95_CONST_IR_SIGNAL_ISDN, TAPIAMSSCDMA_SIGNAL_PITCH_UNKNOWN,
1350825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville                IS95_CONST_IR_SIG_ISDN_PAT_7), ToneGenerator.TONE_CDMA_CALL_SIGNAL_ISDN_PAT7);
1360825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville
1370825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville        hm.put(signalParamHash(IS95_CONST_IR_SIGNAL_ISDN, TAPIAMSSCDMA_SIGNAL_PITCH_UNKNOWN,
1380825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville                IS95_CONST_IR_SIG_ISDN_OFF), ToneGenerator.TONE_CDMA_SIGNAL_OFF);
1390825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville
1400825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville        /* SIGNAL_TYPE_TONE */
1410825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville
1420825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville        hm.put(signalParamHash(IS95_CONST_IR_SIGNAL_TONE, TAPIAMSSCDMA_SIGNAL_PITCH_UNKNOWN,
1430825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville                IS95_CONST_IR_SIG_TONE_DIAL), ToneGenerator.TONE_CDMA_DIAL_TONE_LITE);
1440825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville
1450825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville        hm.put(signalParamHash(IS95_CONST_IR_SIGNAL_TONE, TAPIAMSSCDMA_SIGNAL_PITCH_UNKNOWN,
1460825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville                IS95_CONST_IR_SIG_TONE_RING), ToneGenerator.TONE_CDMA_NETWORK_USA_RINGBACK);
1470825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville
1480825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville        hm.put(signalParamHash(IS95_CONST_IR_SIGNAL_TONE, TAPIAMSSCDMA_SIGNAL_PITCH_UNKNOWN,
1490825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville                IS95_CONST_IR_SIG_TONE_INT), ToneGenerator.TONE_SUP_INTERCEPT);
1500825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville
1510825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville        hm.put(signalParamHash(IS95_CONST_IR_SIGNAL_TONE, TAPIAMSSCDMA_SIGNAL_PITCH_UNKNOWN,
1520825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville                IS95_CONST_IR_SIG_TONE_ABB_INT), ToneGenerator.TONE_SUP_INTERCEPT_ABBREV);
1530825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville
1540825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville        hm.put(signalParamHash(IS95_CONST_IR_SIGNAL_TONE, TAPIAMSSCDMA_SIGNAL_PITCH_UNKNOWN,
1550825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville                IS95_CONST_IR_SIG_TONE_REORDER), ToneGenerator.TONE_CDMA_REORDER);
1560825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville
1570825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville        hm.put(signalParamHash(IS95_CONST_IR_SIGNAL_TONE, TAPIAMSSCDMA_SIGNAL_PITCH_UNKNOWN,
1580825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville                IS95_CONST_IR_SIG_TONE_ABB_RE), ToneGenerator.TONE_CDMA_ABBR_REORDER);
1590825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville
1600825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville        hm.put(signalParamHash(IS95_CONST_IR_SIGNAL_TONE, TAPIAMSSCDMA_SIGNAL_PITCH_UNKNOWN,
1610825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville                IS95_CONST_IR_SIG_TONE_BUSY), ToneGenerator.TONE_CDMA_NETWORK_BUSY);
1620825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville
1630825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville        hm.put(signalParamHash(IS95_CONST_IR_SIGNAL_TONE, TAPIAMSSCDMA_SIGNAL_PITCH_UNKNOWN,
1640825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville                IS95_CONST_IR_SIG_TONE_CONFIRM), ToneGenerator.TONE_SUP_CONFIRM);
1650825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville
1660825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville        hm.put(signalParamHash(IS95_CONST_IR_SIGNAL_TONE, TAPIAMSSCDMA_SIGNAL_PITCH_UNKNOWN,
1670825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville                IS95_CONST_IR_SIG_TONE_ANSWER), ToneGenerator.TONE_CDMA_ANSWER);
1680825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville
1690825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville        hm.put(signalParamHash(IS95_CONST_IR_SIGNAL_TONE, TAPIAMSSCDMA_SIGNAL_PITCH_UNKNOWN,
1700825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville                IS95_CONST_IR_SIG_TONE_CALL_W), ToneGenerator.TONE_CDMA_NETWORK_CALLWAITING);
1710825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville
1720825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville        hm.put(signalParamHash(IS95_CONST_IR_SIGNAL_TONE, TAPIAMSSCDMA_SIGNAL_PITCH_UNKNOWN,
1730825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville                IS95_CONST_IR_SIG_TONE_PIP), ToneGenerator.TONE_CDMA_PIP);
1740825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville
1750825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville        hm.put(signalParamHash(IS95_CONST_IR_SIGNAL_TONE, TAPIAMSSCDMA_SIGNAL_PITCH_UNKNOWN,
1760825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville                IS95_CONST_IR_SIG_TONE_NO_TONE), ToneGenerator.TONE_CDMA_SIGNAL_OFF);
1770825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville
1780825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville        /* SIGNAL_TYPE_IS54B */
1790825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville        hm.put(signalParamHash(IS95_CONST_IR_SIGNAL_IS54B, IS95_CONST_IR_ALERT_HIGH,
1800825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville                IS95_CONST_IR_SIG_IS54B_L), ToneGenerator.TONE_CDMA_HIGH_L);
1810825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville
1820825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville        hm.put(signalParamHash(IS95_CONST_IR_SIGNAL_IS54B, IS95_CONST_IR_ALERT_MED,
1830825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville                IS95_CONST_IR_SIG_IS54B_L), ToneGenerator.TONE_CDMA_MED_L);
1840825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville
1850825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville        hm.put(signalParamHash(IS95_CONST_IR_SIGNAL_IS54B, IS95_CONST_IR_ALERT_LOW,
1860825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville                IS95_CONST_IR_SIG_IS54B_L), ToneGenerator.TONE_CDMA_LOW_L);
1870825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville
1880825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville        hm.put(signalParamHash(IS95_CONST_IR_SIGNAL_IS54B, IS95_CONST_IR_ALERT_HIGH,
1890825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville                IS95_CONST_IR_SIG_IS54B_SS), ToneGenerator.TONE_CDMA_HIGH_SS);
1900825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville
1910825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville        hm.put(signalParamHash(IS95_CONST_IR_SIGNAL_IS54B, IS95_CONST_IR_ALERT_MED,
1920825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville                IS95_CONST_IR_SIG_IS54B_SS), ToneGenerator.TONE_CDMA_MED_SS);
1930825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville
1940825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville        hm.put(signalParamHash(IS95_CONST_IR_SIGNAL_IS54B, IS95_CONST_IR_ALERT_LOW,
1950825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville                IS95_CONST_IR_SIG_IS54B_SS), ToneGenerator.TONE_CDMA_LOW_SS);
1960825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville
1970825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville        hm.put(signalParamHash(IS95_CONST_IR_SIGNAL_IS54B, IS95_CONST_IR_ALERT_HIGH,
1980825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville                IS95_CONST_IR_SIG_IS54B_SSL), ToneGenerator.TONE_CDMA_HIGH_SSL);
1990825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville
2000825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville        hm.put(signalParamHash(IS95_CONST_IR_SIGNAL_IS54B, IS95_CONST_IR_ALERT_MED,
2010825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville                IS95_CONST_IR_SIG_IS54B_SSL), ToneGenerator.TONE_CDMA_MED_SSL);
2020825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville
2030825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville        hm.put(signalParamHash(IS95_CONST_IR_SIGNAL_IS54B, IS95_CONST_IR_ALERT_LOW,
2040825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville                IS95_CONST_IR_SIG_IS54B_SSL), ToneGenerator.TONE_CDMA_LOW_SSL);
2050825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville
2060825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville        hm.put(signalParamHash(IS95_CONST_IR_SIGNAL_IS54B, IS95_CONST_IR_ALERT_HIGH,
2070825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville                IS95_CONST_IR_SIG_IS54B_SS_2), ToneGenerator.TONE_CDMA_HIGH_SS_2);
2080825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville
2090825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville        hm.put(signalParamHash(IS95_CONST_IR_SIGNAL_IS54B, IS95_CONST_IR_ALERT_MED,
2100825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville                IS95_CONST_IR_SIG_IS54B_SS_2), ToneGenerator.TONE_CDMA_MED_SS_2);
2110825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville
2120825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville        hm.put(signalParamHash(IS95_CONST_IR_SIGNAL_IS54B, IS95_CONST_IR_ALERT_LOW,
2130825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville                IS95_CONST_IR_SIG_IS54B_SS_2), ToneGenerator.TONE_CDMA_LOW_SS_2);
2140825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville
2150825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville        hm.put(signalParamHash(IS95_CONST_IR_SIGNAL_IS54B, IS95_CONST_IR_ALERT_HIGH,
2160825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville                IS95_CONST_IR_SIG_IS54B_SLS), ToneGenerator.TONE_CDMA_HIGH_SLS);
2170825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville
2180825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville        hm.put(signalParamHash(IS95_CONST_IR_SIGNAL_IS54B, IS95_CONST_IR_ALERT_MED,
2190825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville                IS95_CONST_IR_SIG_IS54B_SLS), ToneGenerator.TONE_CDMA_MED_SLS);
2200825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville
2210825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville        hm.put(signalParamHash(IS95_CONST_IR_SIGNAL_IS54B, IS95_CONST_IR_ALERT_LOW,
2220825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville                IS95_CONST_IR_SIG_IS54B_SLS), ToneGenerator.TONE_CDMA_LOW_SLS);
2230825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville
2240825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville        hm.put(signalParamHash(IS95_CONST_IR_SIGNAL_IS54B, IS95_CONST_IR_ALERT_HIGH,
2250825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville                IS95_CONST_IR_SIG_IS54B_S_X4), ToneGenerator.TONE_CDMA_HIGH_S_X4);
2260825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville
2270825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville        hm.put(signalParamHash(IS95_CONST_IR_SIGNAL_IS54B, IS95_CONST_IR_ALERT_MED,
2280825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville                IS95_CONST_IR_SIG_IS54B_S_X4), ToneGenerator.TONE_CDMA_MED_S_X4);
2290825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville
2300825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville        hm.put(signalParamHash(IS95_CONST_IR_SIGNAL_IS54B, IS95_CONST_IR_ALERT_LOW,
2310825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville                IS95_CONST_IR_SIG_IS54B_S_X4), ToneGenerator.TONE_CDMA_LOW_S_X4);
2320825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville
2330825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville        hm.put(signalParamHash(IS95_CONST_IR_SIGNAL_IS54B, IS95_CONST_IR_ALERT_HIGH,
2340825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville                IS95_CONST_IR_SIG_IS54B_PBX_L), ToneGenerator.TONE_CDMA_HIGH_PBX_L);
2350825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville
2360825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville        hm.put(signalParamHash(IS95_CONST_IR_SIGNAL_IS54B, IS95_CONST_IR_ALERT_MED,
2370825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville                IS95_CONST_IR_SIG_IS54B_PBX_L), ToneGenerator.TONE_CDMA_MED_PBX_L);
2380825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville
2390825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville        hm.put(signalParamHash(IS95_CONST_IR_SIGNAL_IS54B, IS95_CONST_IR_ALERT_LOW,
2400825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville                IS95_CONST_IR_SIG_IS54B_PBX_L), ToneGenerator.TONE_CDMA_LOW_PBX_L);
2410825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville
2420825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville        hm.put(signalParamHash(IS95_CONST_IR_SIGNAL_IS54B, IS95_CONST_IR_ALERT_HIGH,
2430825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville                IS95_CONST_IR_SIG_IS54B_PBX_SS), ToneGenerator.TONE_CDMA_HIGH_PBX_SS);
2440825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville
2450825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville        hm.put(signalParamHash(IS95_CONST_IR_SIGNAL_IS54B, IS95_CONST_IR_ALERT_MED,
2460825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville                IS95_CONST_IR_SIG_IS54B_PBX_SS), ToneGenerator.TONE_CDMA_MED_PBX_SS);
2470825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville
2480825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville        hm.put(signalParamHash(IS95_CONST_IR_SIGNAL_IS54B, IS95_CONST_IR_ALERT_LOW,
2490825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville                IS95_CONST_IR_SIG_IS54B_PBX_SS), ToneGenerator.TONE_CDMA_LOW_PBX_SS);
2500825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville
2510825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville        hm.put(signalParamHash(IS95_CONST_IR_SIGNAL_IS54B, IS95_CONST_IR_ALERT_HIGH,
2520825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville                IS95_CONST_IR_SIG_IS54B_PBX_SSL), ToneGenerator.TONE_CDMA_HIGH_PBX_SSL);
2530825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville
2540825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville        hm.put(signalParamHash(IS95_CONST_IR_SIGNAL_IS54B, IS95_CONST_IR_ALERT_MED,
2550825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville                IS95_CONST_IR_SIG_IS54B_PBX_SSL), ToneGenerator.TONE_CDMA_MED_PBX_SSL);
2560825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville
2570825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville        hm.put(signalParamHash(IS95_CONST_IR_SIGNAL_IS54B, IS95_CONST_IR_ALERT_LOW,
2580825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville                IS95_CONST_IR_SIG_IS54B_PBX_SSL), ToneGenerator.TONE_CDMA_LOW_PBX_SSL);
2590825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville
2600825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville        hm.put(signalParamHash(IS95_CONST_IR_SIGNAL_IS54B, IS95_CONST_IR_ALERT_HIGH,
2610825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville                IS95_CONST_IR_SIG_IS54B_PBX_SLS), ToneGenerator.TONE_CDMA_HIGH_PBX_SLS);
2620825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville
2630825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville        hm.put(signalParamHash(IS95_CONST_IR_SIGNAL_IS54B, IS95_CONST_IR_ALERT_MED,
2640825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville                IS95_CONST_IR_SIG_IS54B_PBX_SLS), ToneGenerator.TONE_CDMA_MED_PBX_SLS);
2650825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville
2660825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville        hm.put(signalParamHash(IS95_CONST_IR_SIGNAL_IS54B, IS95_CONST_IR_ALERT_LOW,
2670825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville                IS95_CONST_IR_SIG_IS54B_PBX_SLS), ToneGenerator.TONE_CDMA_LOW_PBX_SLS);
2680825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville
2690825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville        hm.put(signalParamHash(IS95_CONST_IR_SIGNAL_IS54B, IS95_CONST_IR_ALERT_HIGH,
2700825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville                IS95_CONST_IR_SIG_IS54B_PBX_S_X4), ToneGenerator.TONE_CDMA_HIGH_PBX_S_X4);
2710825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville
2720825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville        hm.put(signalParamHash(IS95_CONST_IR_SIGNAL_IS54B, IS95_CONST_IR_ALERT_MED,
2730825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville                IS95_CONST_IR_SIG_IS54B_PBX_S_X4), ToneGenerator.TONE_CDMA_MED_PBX_S_X4);
2740825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville
2750825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville        hm.put(signalParamHash(IS95_CONST_IR_SIGNAL_IS54B, IS95_CONST_IR_ALERT_LOW,
2760825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville                IS95_CONST_IR_SIG_IS54B_PBX_S_X4), ToneGenerator.TONE_CDMA_LOW_PBX_S_X4);
2770825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville
2780825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville        hm.put(signalParamHash(IS95_CONST_IR_SIGNAL_IS54B, TAPIAMSSCDMA_SIGNAL_PITCH_UNKNOWN,
2790825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville                IS95_CONST_IR_SIG_IS54B_NO_TONE), ToneGenerator.TONE_CDMA_SIGNAL_OFF);
2800825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville
2810825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville        hm.put(signalParamHash(IS95_CONST_IR_SIGNAL_USR_DEFD_ALERT,
2820825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville                TAPIAMSSCDMA_SIGNAL_PITCH_UNKNOWN, IS95_CONST_IR_SIG_TONE_ABBR_ALRT),
2830825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville                ToneGenerator.TONE_CDMA_ABBR_ALERT);
2840825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville
2850825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville        hm.put(signalParamHash(IS95_CONST_IR_SIGNAL_USR_DEFD_ALERT,
2860825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville                TAPIAMSSCDMA_SIGNAL_PITCH_UNKNOWN, IS95_CONST_IR_SIG_TONE_NO_TONE),
2870825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville                ToneGenerator.TONE_CDMA_ABBR_ALERT);
2880825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville
2890825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville    }
2900825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville
2910825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville    // suppress default constructor for noninstantiability
2920825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville    private SignalToneUtil() {
2930825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville    }
2940825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville}
295