Class TaskHeadwayBased
- java.lang.Object
-
- org.opentrafficsim.road.gtu.lane.perception.mental.AbstractTask
-
- org.opentrafficsim.road.gtu.lane.perception.mental.TaskHeadwayBased
-
- All Implemented Interfaces:
Identifiable,Task
- Direct Known Subclasses:
TaskCarFollowing,TaskLaneChanging
public abstract class TaskHeadwayBased extends AbstractTask
Task class that translates a (composite) headway in to a task demand.Copyright (c) 2013-2020 Delft University of Technology, PO Box 5, 2600 AA, Delft, the Netherlands. All rights reserved.
BSD-style license. See OpenTrafficSim License.- Version:
- $Revision$, $LastChangedDate$, by $Author$, initial version 25 jun. 2018
- Author:
- Alexander Verbraeck, Peter Knoppers, Wouter Schakel
-
-
Constructor Summary
Constructors Constructor Description TaskHeadwayBased(String id)Constructor.
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description doublecalculateTaskDemand(LanePerception perception, LaneBasedGTU gtu, Parameters parameters)Returns the gross task demand to be managed by a task manager.protected abstract DurationgetHeadway(LanePerception perception, LaneBasedGTU gtu, Parameters parameters)Returns a collector for the task demand.protected SpeedgetSpeed()Returns the current speed to translate a distance headway to a time headway.-
Methods inherited from class org.opentrafficsim.road.gtu.lane.perception.mental.AbstractTask
getAnticipationReliance, getId, getTaskDemand, setAnticipationReliance, setTaskDemand, toString
-
-
-
-
Constructor Detail
-
TaskHeadwayBased
public TaskHeadwayBased(String id)
Constructor.- Parameters:
id- String; id
-
-
Method Detail
-
calculateTaskDemand
public double calculateTaskDemand(LanePerception perception, LaneBasedGTU gtu, Parameters parameters) throws ParameterException
Returns the gross task demand to be managed by a task manager.- Parameters:
perception- LanePerception; perceptiongtu- LaneBasedGTU; gtuparameters- Parameters; parameters- Returns:
- double; gross task demand
- Throws:
ParameterException- if a parameter is missing or out of bounds
-
getSpeed
protected Speed getSpeed()
Returns the current speed to translate a distance headway to a time headway.- Returns:
- Speed; speed
-
getHeadway
protected abstract Duration getHeadway(LanePerception perception, LaneBasedGTU gtu, Parameters parameters) throws ParameterException
Returns a collector for the task demand.- Parameters:
perception- LanePerception; perceptiongtu- LaneBasedGTU; gtuparameters- Parameters; parameters- Returns:
- Duration; headway,
nullof none. - Throws:
ParameterException- on invalid parameter
-
-