1 package org.opentrafficsim.road.network.control.rampmetering;
2
3 import org.djunits.value.vdouble.scalar.Duration;
4
5 /**
6 * Determines whether the controller should be on or off.
7 * <p>
8 * Copyright (c) 2013-2023 Delft University of Technology, PO Box 5, 2600 AA, Delft, the Netherlands. All rights reserved. <br>
9 * BSD-style license. See <a href="https://opentrafficsim.org/docs/license.html">OpenTrafficSim License</a>.
10 * </p>
11 * @author <a href="https://github.com/averbraeck">Alexander Verbraeck</a>
12 * @author <a href="https://tudelft.nl/staff/p.knoppers-1">Peter Knoppers</a>
13 * @author <a href="https://dittlab.tudelft.nl">Wouter Schakel</a>
14 */
15 public interface RampMeteringSwitch
16 {
17
18 /**
19 * Returns the control interval.
20 * @return Duration; the control interval
21 */
22 Duration getInterval();
23
24 /**
25 * Evaluates whether the ramp metering should be enabled.
26 * @return boolean; whether the ramp metering should be enabled
27 */
28 boolean isEnabled();
29
30 /**
31 * Returns the cycle time.
32 * @return Duration; the cycle time
33 */
34 Duration getCycleTime();
35
36 }