package org.osmdroid.routing; import org.oscim.core.GeoPoint; import android.os.Parcel; import android.os.Parcelable; /** * Road intersection, with instructions to continue. * @author M.Kergall */ public class RoadNode implements Parcelable { /** * @see <a * href="http://open.mapquestapi.com/guidance/#maneuvertypes">Maneuver * Types</a> */ public int maneuverType; /** textual information on what to do at this intersection */ public String instructions; /** index in road links array - internal use only, for MapQuest directions */ public int nextRoadLink; /** in km to the next node */ public double length; /** in seconds to the next node */ public double duration; /** position of the node */ public GeoPoint location; public RoadNode() { maneuverType = 0; nextRoadLink = -1; length = duration = 0.0; } // --- Parcelable implementation @Override public int describeContents() { return 0; } @Override public void writeToParcel(Parcel out, int flags) { out.writeInt(maneuverType); out.writeString(instructions); out.writeDouble(length); out.writeDouble(duration); out.writeParcelable(location, 0); } public static final Parcelable.Creator<RoadNode> CREATOR = new Parcelable.Creator<RoadNode>() { @Override public RoadNode createFromParcel(Parcel in) { RoadNode rn = new RoadNode(); rn.maneuverType = in.readInt(); rn.instructions = in.readString(); rn.length = in.readDouble(); rn.duration = in.readDouble(); rn.location = in.readParcelable(GeoPoint.class.getClassLoader()); return rn; } @Override public RoadNode[] newArray(int size) { return new RoadNode[size]; } }; }