1 package org.opentrafficsim.road.gtu.generator.characteristics;
2
3 import org.opentrafficsim.core.gtu.GTUCharacteristics;
4 import org.opentrafficsim.core.network.Node;
5 import org.opentrafficsim.core.network.route.Route;
6 import org.opentrafficsim.road.gtu.lane.VehicleModel;
7 import org.opentrafficsim.road.gtu.strategical.LaneBasedStrategicalPlannerFactory;
8
9
10
11
12
13
14
15
16
17
18
19 public class LaneBasedGTUCharacteristics extends GTUCharacteristics
20 {
21
22 private static final long serialVersionUID = 1L;
23
24
25 private final LaneBasedStrategicalPlannerFactory<?> strategicalPlannerFactory;
26
27
28 private final Route route;
29
30
31 private final Node origin;
32
33
34 private final Node destination;
35
36
37 private final VehicleModel vehicleModel;
38
39
40
41
42
43
44
45
46
47
48
49 public LaneBasedGTUCharacteristics(final GTUCharacteristics gtuCharacteristics,
50 final LaneBasedStrategicalPlannerFactory<?> laneBasedStrategicalPlannerFactory, final Route route,
51 final Node origin, final Node destination, final VehicleModel vehicleModel)
52 {
53 super(gtuCharacteristics.getGTUType(), gtuCharacteristics.getLength(), gtuCharacteristics.getWidth(),
54 gtuCharacteristics.getMaximumSpeed(), gtuCharacteristics.getMaximumAcceleration(),
55 gtuCharacteristics.getMaximumDeceleration(), gtuCharacteristics.getFront());
56 this.strategicalPlannerFactory = laneBasedStrategicalPlannerFactory;
57 this.route = route;
58 this.origin = origin;
59 this.destination = destination;
60 this.vehicleModel = vehicleModel;
61 }
62
63
64
65
66 public final LaneBasedStrategicalPlannerFactory<?> getStrategicalPlannerFactory()
67 {
68 return this.strategicalPlannerFactory;
69 }
70
71
72
73
74 public final Route getRoute()
75 {
76 return this.route;
77 }
78
79
80
81
82 public Node getOrigin()
83 {
84 return this.origin;
85 }
86
87
88
89
90 public Node getDestination()
91 {
92 return this.destination;
93 }
94
95
96
97
98
99 public VehicleModel getVehicleModel()
100 {
101 return this.vehicleModel;
102 }
103
104 }