1 /*
2  * Copyright (C) 2007 The Android Open Source Project
3  *
4  * Licensed under the Apache License, Version 2.0 (the "License");
5  * you may not use this file except in compliance with the License.
6  * You may obtain a copy of the License at
7  *
8  *      http://www.apache.org/licenses/LICENSE-2.0
9  *
10  * Unless required by applicable law or agreed to in writing, software
11  * distributed under the License is distributed on an "AS IS" BASIS,
12  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13  * See the License for the specific language governing permissions and
14  * limitations under the License.
15  */
16 
17 package com.android.internal.telephony.cat;
18 
19 import android.os.Parcel;
20 import android.os.Parcelable;
21 
22 /**
23  * Container class for PlayTone commands parameters.
24  *
25  */
26 public class ToneSettings implements Parcelable {
27     public Duration duration;
28     public Tone tone;
29     public boolean vibrate;
30 
ToneSettings(Duration duration, Tone tone, boolean vibrate)31     public ToneSettings(Duration duration, Tone tone, boolean vibrate) {
32         this.duration = duration;
33         this.tone = tone;
34         this.vibrate = vibrate;
35     }
36 
ToneSettings(Parcel in)37     private ToneSettings(Parcel in) {
38         duration = in.readParcelable(Duration.class.getClassLoader());
39         tone = in.readParcelable(Tone.class.getClassLoader());
40         vibrate = in.readInt() == 1;
41     }
42 
43     @Override
describeContents()44     public int describeContents() {
45         return 0;
46     }
47 
48     @Override
writeToParcel(Parcel dest, int flags)49     public void writeToParcel(Parcel dest, int flags) {
50         dest.writeParcelable(duration, 0);
51         dest.writeParcelable(tone, 0);
52         dest.writeInt(vibrate ? 1 : 0);
53     }
54 
55     public static final Parcelable.Creator<ToneSettings> CREATOR = new Parcelable.Creator<ToneSettings>() {
56         @Override
57         public ToneSettings createFromParcel(Parcel in) {
58             return new ToneSettings(in);
59         }
60 
61         @Override
62         public ToneSettings[] newArray(int size) {
63             return new ToneSettings[size];
64         }
65     };
66 }