2 * Copyright (c) 2016 Samsung Electronics Co., Ltd All Rights Reserved
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
8 * http://www.apache.org/licenses/LICENSE-2.0
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.
22 /// Route Maneuver information, used in Route Search requests
24 public class RouteManeuver
26 private Interop.RouteDirection _direction;
27 private Interop.RouteTurnType _turntype;
28 private Geocoordinates _coordinates;
30 private string _instruction;
31 private string _locale;
32 private int _timeToNextInstruction;
33 private double _distanceToNextInstruction;
35 internal RouteManeuver(Interop.RouteManeuverHandle handle)
37 _direction = handle.Direction;
38 _turntype = handle.TurnType;
39 _coordinates = new Geocoordinates(handle.Coordinates);
40 _road = handle.RoadName;
41 _instruction = handle.Instruction;
42 _locale = handle.Locale;
43 _timeToNextInstruction = handle.TimeToNextInstruction;
44 _distanceToNextInstruction = handle.DistanceToNextInstruction;
48 /// Gets direction type for this maneuver.
50 public DirectionType Direction { get { return (DirectionType)_direction; } }
53 /// Gets turn type for this maneuver.
55 public TurnInstruction Turn { get { return (TurnInstruction)_turntype; } }
58 /// Gets a geographical coordinates position for this maneuver.
60 public Geocoordinates Position { get { return _coordinates; } }
63 /// Gets a name of the road for this maneuver.
65 public string Road { get { return _road; } }
68 /// Gets an instruction text for this maneuver.
70 public string Instruction { get { return _instruction; } }
73 /// Gets a locale for this maneuver.
75 public string Locale { get { return _locale; } }
78 /// Gets time to next instruction for this maneuver.
80 public int TimeToNextInstruction { get { return _timeToNextInstruction; } }
83 /// Gets distance to next instruction for this maneuver.
85 public double DistanceToNextInstruction { get { return _distanceToNextInstruction; } }