10825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville/*
20825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Copyright (C) 2007 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.cat;
180825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville
190825495a331bb44df395a0cdb79fab85e68db5d5Wink Savilleimport android.os.Parcel;
200825495a331bb44df395a0cdb79fab85e68db5d5Wink Savilleimport android.os.Parcelable;
210825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville
220825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville/**
230825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville * Container class for PlayTone commands parameters.
240825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville *
250825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville */
260825495a331bb44df395a0cdb79fab85e68db5d5Wink Savillepublic class ToneSettings implements Parcelable {
270825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville    public Duration duration;
280825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville    public Tone tone;
290825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville    public boolean vibrate;
300825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville
310825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville    public ToneSettings(Duration duration, Tone tone, boolean vibrate) {
320825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville        this.duration = duration;
330825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville        this.tone = tone;
340825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville        this.vibrate = vibrate;
350825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville    }
360825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville
370825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville    private ToneSettings(Parcel in) {
380825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville        duration = in.readParcelable(null);
390825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville        tone = in.readParcelable(null);
400825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville        vibrate = in.readInt() == 1;
410825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville    }
420825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville
43cbaa45bbf2cab852b6c9c3a887e9f803d4e857eaWink Saville    @Override
440825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville    public int describeContents() {
450825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville        return 0;
460825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville    }
470825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville
48cbaa45bbf2cab852b6c9c3a887e9f803d4e857eaWink Saville    @Override
490825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville    public void writeToParcel(Parcel dest, int flags) {
500825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville        dest.writeParcelable(duration, 0);
510825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville        dest.writeParcelable(tone, 0);
520825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville        dest.writeInt(vibrate ? 1 : 0);
530825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville    }
540825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville
550825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville    public static final Parcelable.Creator<ToneSettings> CREATOR = new Parcelable.Creator<ToneSettings>() {
56cbaa45bbf2cab852b6c9c3a887e9f803d4e857eaWink Saville        @Override
570825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville        public ToneSettings createFromParcel(Parcel in) {
580825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville            return new ToneSettings(in);
590825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville        }
600825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville
61cbaa45bbf2cab852b6c9c3a887e9f803d4e857eaWink Saville        @Override
620825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville        public ToneSettings[] newArray(int size) {
630825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville            return new ToneSettings[size];
640825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville        }
650825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville    };
660825495a331bb44df395a0cdb79fab85e68db5d5Wink Saville}