BatteryProperty.java revision d7b34771cbb89c056e7c0f8976db431cad1ace8c
1d7b34771cbb89c056e7c0f8976db431cad1ace8cTodd Poynor/* Copyright 2013, The Android Open Source Project
2d7b34771cbb89c056e7c0f8976db431cad1ace8cTodd Poynor *
3d7b34771cbb89c056e7c0f8976db431cad1ace8cTodd Poynor * Licensed under the Apache License, Version 2.0 (the "License");
4d7b34771cbb89c056e7c0f8976db431cad1ace8cTodd Poynor * you may not use this file except in compliance with the License.
5d7b34771cbb89c056e7c0f8976db431cad1ace8cTodd Poynor * You may obtain a copy of the License at
6d7b34771cbb89c056e7c0f8976db431cad1ace8cTodd Poynor *
7d7b34771cbb89c056e7c0f8976db431cad1ace8cTodd Poynor *     http://www.apache.org/licenses/LICENSE-2.0
8d7b34771cbb89c056e7c0f8976db431cad1ace8cTodd Poynor *
9d7b34771cbb89c056e7c0f8976db431cad1ace8cTodd Poynor * Unless required by applicable law or agreed to in writing, software
10d7b34771cbb89c056e7c0f8976db431cad1ace8cTodd Poynor * distributed under the License is distributed on an "AS IS" BASIS,
11d7b34771cbb89c056e7c0f8976db431cad1ace8cTodd Poynor * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12d7b34771cbb89c056e7c0f8976db431cad1ace8cTodd Poynor * See the License for the specific language governing permissions and
13d7b34771cbb89c056e7c0f8976db431cad1ace8cTodd Poynor * limitations under the License.
14d7b34771cbb89c056e7c0f8976db431cad1ace8cTodd Poynor*/
15d7b34771cbb89c056e7c0f8976db431cad1ace8cTodd Poynor
16d7b34771cbb89c056e7c0f8976db431cad1ace8cTodd Poynorpackage android.os;
17d7b34771cbb89c056e7c0f8976db431cad1ace8cTodd Poynor
18d7b34771cbb89c056e7c0f8976db431cad1ace8cTodd Poynorimport android.os.Parcel;
19d7b34771cbb89c056e7c0f8976db431cad1ace8cTodd Poynorimport android.os.Parcelable;
20d7b34771cbb89c056e7c0f8976db431cad1ace8cTodd Poynor
21d7b34771cbb89c056e7c0f8976db431cad1ace8cTodd Poynor/**
22d7b34771cbb89c056e7c0f8976db431cad1ace8cTodd Poynor * {@hide}
23d7b34771cbb89c056e7c0f8976db431cad1ace8cTodd Poynor */
24d7b34771cbb89c056e7c0f8976db431cad1ace8cTodd Poynorpublic class BatteryProperty implements Parcelable {
25d7b34771cbb89c056e7c0f8976db431cad1ace8cTodd Poynor    /*
26d7b34771cbb89c056e7c0f8976db431cad1ace8cTodd Poynor     * Battery property identifiers.  These must match the values in
27d7b34771cbb89c056e7c0f8976db431cad1ace8cTodd Poynor     * frameworks/native/include/batteryservice/BatteryService.h
28d7b34771cbb89c056e7c0f8976db431cad1ace8cTodd Poynor     */
29d7b34771cbb89c056e7c0f8976db431cad1ace8cTodd Poynor    public static final int BATTERY_PROP_CHARGE_COUNTER = 1;
30d7b34771cbb89c056e7c0f8976db431cad1ace8cTodd Poynor    public static final int BATTERY_PROP_CURRENT_NOW = 2;
31d7b34771cbb89c056e7c0f8976db431cad1ace8cTodd Poynor
32d7b34771cbb89c056e7c0f8976db431cad1ace8cTodd Poynor    public int valueInt;
33d7b34771cbb89c056e7c0f8976db431cad1ace8cTodd Poynor
34d7b34771cbb89c056e7c0f8976db431cad1ace8cTodd Poynor    public BatteryProperty() {
35d7b34771cbb89c056e7c0f8976db431cad1ace8cTodd Poynor        valueInt = Integer.MIN_VALUE;
36d7b34771cbb89c056e7c0f8976db431cad1ace8cTodd Poynor    }
37d7b34771cbb89c056e7c0f8976db431cad1ace8cTodd Poynor
38d7b34771cbb89c056e7c0f8976db431cad1ace8cTodd Poynor    /*
39d7b34771cbb89c056e7c0f8976db431cad1ace8cTodd Poynor     * Parcel read/write code must be kept in sync with
40d7b34771cbb89c056e7c0f8976db431cad1ace8cTodd Poynor     * frameworks/native/services/batteryservice/BatteryProperty.cpp
41d7b34771cbb89c056e7c0f8976db431cad1ace8cTodd Poynor     */
42d7b34771cbb89c056e7c0f8976db431cad1ace8cTodd Poynor
43d7b34771cbb89c056e7c0f8976db431cad1ace8cTodd Poynor    private BatteryProperty(Parcel p) {
44d7b34771cbb89c056e7c0f8976db431cad1ace8cTodd Poynor        readFromParcel(p);
45d7b34771cbb89c056e7c0f8976db431cad1ace8cTodd Poynor    }
46d7b34771cbb89c056e7c0f8976db431cad1ace8cTodd Poynor
47d7b34771cbb89c056e7c0f8976db431cad1ace8cTodd Poynor    public void readFromParcel(Parcel p) {
48d7b34771cbb89c056e7c0f8976db431cad1ace8cTodd Poynor        valueInt = p.readInt();
49d7b34771cbb89c056e7c0f8976db431cad1ace8cTodd Poynor    }
50d7b34771cbb89c056e7c0f8976db431cad1ace8cTodd Poynor
51d7b34771cbb89c056e7c0f8976db431cad1ace8cTodd Poynor    public void writeToParcel(Parcel p, int flags) {
52d7b34771cbb89c056e7c0f8976db431cad1ace8cTodd Poynor        p.writeInt(valueInt);
53d7b34771cbb89c056e7c0f8976db431cad1ace8cTodd Poynor    }
54d7b34771cbb89c056e7c0f8976db431cad1ace8cTodd Poynor
55d7b34771cbb89c056e7c0f8976db431cad1ace8cTodd Poynor    public static final Parcelable.Creator<BatteryProperty> CREATOR
56d7b34771cbb89c056e7c0f8976db431cad1ace8cTodd Poynor        = new Parcelable.Creator<BatteryProperty>() {
57d7b34771cbb89c056e7c0f8976db431cad1ace8cTodd Poynor        public BatteryProperty createFromParcel(Parcel p) {
58d7b34771cbb89c056e7c0f8976db431cad1ace8cTodd Poynor            return new BatteryProperty(p);
59d7b34771cbb89c056e7c0f8976db431cad1ace8cTodd Poynor        }
60d7b34771cbb89c056e7c0f8976db431cad1ace8cTodd Poynor
61d7b34771cbb89c056e7c0f8976db431cad1ace8cTodd Poynor        public BatteryProperty[] newArray(int size) {
62d7b34771cbb89c056e7c0f8976db431cad1ace8cTodd Poynor            return new BatteryProperty[size];
63d7b34771cbb89c056e7c0f8976db431cad1ace8cTodd Poynor        }
64d7b34771cbb89c056e7c0f8976db431cad1ace8cTodd Poynor    };
65d7b34771cbb89c056e7c0f8976db431cad1ace8cTodd Poynor
66d7b34771cbb89c056e7c0f8976db431cad1ace8cTodd Poynor    public int describeContents() {
67d7b34771cbb89c056e7c0f8976db431cad1ace8cTodd Poynor        return 0;
68d7b34771cbb89c056e7c0f8976db431cad1ace8cTodd Poynor    }
69d7b34771cbb89c056e7c0f8976db431cad1ace8cTodd Poynor}
70