/*
 * Copyright (C) 2014 The Android Open Source Project
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */

package android.hardware.hdmi;

import android.annotation.SystemApi;
import android.os.Parcel;
import android.os.Parcelable;

A class that describes the HDMI port hotplug event.
@hide
/** * A class that describes the HDMI port hotplug event. * * @hide */
@SystemApi public final class HdmiHotplugEvent implements Parcelable { private final int mPort; private final boolean mConnected;
Constructor.

Marked as hidden so only system can create the instance.

@hide
/** * Constructor. * * <p>Marked as hidden so only system can create the instance. * * @hide */
public HdmiHotplugEvent(int port, boolean connected) { mPort = port; mConnected = connected; }
Returns the port number for which the event occurred.
Returns:port number
/** * Returns the port number for which the event occurred. * * @return port number */
public int getPort() { return mPort; }
Returns the connection status associated with this event
Returns:true if the device gets connected; otherwise false
/** * Returns the connection status associated with this event * * @return true if the device gets connected; otherwise false */
public boolean isConnected() { return mConnected; }
Describes the kinds of special objects contained in this Parcelable's marshalled representation.
/** * Describes the kinds of special objects contained in this Parcelable's * marshalled representation. */
@Override public int describeContents() { return 0; }
Flattens this object in to a Parcel.
Params:
/** * Flattens this object in to a Parcel. * * @param dest The Parcel in which the object should be written. * @param flags Additional flags about how the object should be written. * May be 0 or {@link Parcelable#PARCELABLE_WRITE_RETURN_VALUE}. */
@Override public void writeToParcel(Parcel dest, int flags) { dest.writeInt(mPort); dest.writeByte((byte) (mConnected ? 1 : 0)); } public static final Parcelable.Creator<HdmiHotplugEvent> CREATOR = new Parcelable.Creator<HdmiHotplugEvent>() {
Rebuilds a HdmiHotplugEvent previously stored with Parcelable.writeToParcel(Parcel, int).
Params:
Returns:a new HdmiHotplugEvent created from the data in the parcel
/** * Rebuilds a {@link HdmiHotplugEvent} previously stored with * {@link Parcelable#writeToParcel(Parcel, int)}. * * @param p {@link HdmiHotplugEvent} object to read the Rating from * @return a new {@link HdmiHotplugEvent} created from the data in the parcel */
@Override public HdmiHotplugEvent createFromParcel(Parcel p) { int port = p.readInt(); boolean connected = p.readByte() == 1; return new HdmiHotplugEvent(port, connected); } @Override public HdmiHotplugEvent[] newArray(int size) { return new HdmiHotplugEvent[size]; } }; }