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 public class LaneBasedGtuCharacteristics extends GtuCharacteristics
19 {
20
21 private static final long serialVersionUID = 1L;
22
23
24 private final LaneBasedStrategicalPlannerFactory<?> strategicalPlannerFactory;
25
26
27 private final Route route;
28
29
30 private final Node origin;
31
32
33 private final Node destination;
34
35
36 private final VehicleModel vehicleModel;
37
38
39
40
41
42
43
44
45
46
47 public LaneBasedGtuCharacteristics(final GtuCharacteristics gtuCharacteristics,
48 final LaneBasedStrategicalPlannerFactory<?> laneBasedStrategicalPlannerFactory, final Route route,
49 final Node origin, final Node destination, final VehicleModel vehicleModel)
50 {
51 super(gtuCharacteristics.getGtuType(), gtuCharacteristics.getLength(), gtuCharacteristics.getWidth(),
52 gtuCharacteristics.getMaximumSpeed(), gtuCharacteristics.getMaximumAcceleration(),
53 gtuCharacteristics.getMaximumDeceleration(), gtuCharacteristics.getFront());
54 this.strategicalPlannerFactory = laneBasedStrategicalPlannerFactory;
55 this.route = route;
56 this.origin = origin;
57 this.destination = destination;
58 this.vehicleModel = vehicleModel;
59 }
60
61
62
63
64 public final LaneBasedStrategicalPlannerFactory<?> getStrategicalPlannerFactory()
65 {
66 return this.strategicalPlannerFactory;
67 }
68
69
70
71
72 public final Route getRoute()
73 {
74 return this.route;
75 }
76
77
78
79
80 public Node getOrigin()
81 {
82 return this.origin;
83 }
84
85
86
87
88 public Node getDestination()
89 {
90 return this.destination;
91 }
92
93
94
95
96
97 public VehicleModel getVehicleModel()
98 {
99 return this.vehicleModel;
100 }
101
102 }