1 package org.opentrafficsim.road.gtu.lane.tactical.cacc;
2
3 import static org.opentrafficsim.base.parameters.constraint.ConstraintInterface.POSITIVE;
4
5 import org.djunits.unit.LengthUnit;
6 import org.djunits.value.vdouble.scalar.Acceleration;
7 import org.djunits.value.vdouble.scalar.Length;
8 import org.opentrafficsim.base.parameters.ParameterException;
9 import org.opentrafficsim.base.parameters.ParameterTypeLength;
10 import org.opentrafficsim.core.gtu.plan.operational.OperationalPlanException;
11 import org.opentrafficsim.road.gtu.lane.LaneBasedGTU;
12
13
14
15
16
17
18
19
20
21
22
23 public interface LongitudinalController
24 {
25
26
27 ParameterTypeLength SENSOR_RANGE =
28 new ParameterTypeLength("Sensor range", "Maximum sensor range", new Length(300.0, LengthUnit.SI), POSITIVE);
29
30
31
32
33
34
35
36
37 Acceleration calculateAcceleration(LaneBasedGTU gtu) throws OperationalPlanException, ParameterException;
38
39 }