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 double
calculateTaskDemand(LanePerception perception, LaneBasedGTU gtu, Parameters parameters)
Returns the gross task demand to be managed by a task manager.protected abstract Duration
getHeadway(LanePerception perception, LaneBasedGTU gtu, Parameters parameters)
Returns a collector for the task demand.protected Speed
getSpeed()
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,
null
of none. - Throws:
ParameterException
- on invalid parameter
-
-