Class DistractionFactory
- java.lang.Object
-
- org.opentrafficsim.road.gtu.lane.perception.mental.sdm.DistractionFactory
-
public class DistractionFactory extends Object
Utility to create a list of default distractions as derived by the research of Manuel Lindorfer.Copyright (c) 2013-2022 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 28 jun. 2018
- Author:
- Alexander Verbraeck, Peter Knoppers, Wouter Schakel
-
-
Constructor Summary
Constructors Constructor Description DistractionFactory(StreamInterface stream)
Constructor.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description DistractionFactory
addDistraction(String id, String description, Frequency frequency, double exposure, Duration averageDuration, Duration stdDuration, double taskDemand)
Helper method to create a distraction.DistractionFactory
addDistraction(String id, String description, Frequency frequency, double exposure, Duration averageDuration, Duration stdDuration, TaskSupplier taskSupplier)
Helper method to create a distraction.DistractionFactory
addDistraction(DefaultDistraction defaultDistraction, double taskDemand)
Adds a default distraction.DistractionFactory
addDistraction(DefaultDistraction defaultDistraction, TaskSupplier taskSupplier)
Adds a default distraction.List<Distraction>
build()
Returns the list of distractions.
-
-
-
Constructor Detail
-
DistractionFactory
public DistractionFactory(StreamInterface stream)
Constructor.- Parameters:
stream
- StreamInterface; random number stream
-
-
Method Detail
-
addDistraction
public final DistractionFactory addDistraction(DefaultDistraction defaultDistraction, double taskDemand)
Adds a default distraction.- Parameters:
defaultDistraction
- DefaultDistraction; default distractiontaskDemand
- double; task demand- Returns:
- DistractionFactory; this factory for method chaining
-
addDistraction
public final DistractionFactory addDistraction(DefaultDistraction defaultDistraction, TaskSupplier taskSupplier)
Adds a default distraction.- Parameters:
defaultDistraction
- DefaultDistraction; default distractiontaskSupplier
- TaskSupplier; task supplier- Returns:
- DistractionFactory; this factory for method chaining
-
addDistraction
public final DistractionFactory addDistraction(String id, String description, Frequency frequency, double exposure, Duration averageDuration, Duration stdDuration, double taskDemand)
Helper method to create a distraction.- Parameters:
id
- String; iddescription
- String; descriptionfrequency
- Frequency; frequency per exposed driverexposure
- double; exposure (value in range [0...1])averageDuration
- Duration; average durationstdDuration
- Duration; standard deviation of durationtaskDemand
- double; task demand- Returns:
- DistractionFactory; this factory for method chaining
-
addDistraction
public final DistractionFactory addDistraction(String id, String description, Frequency frequency, double exposure, Duration averageDuration, Duration stdDuration, TaskSupplier taskSupplier)
Helper method to create a distraction.- Parameters:
id
- String; iddescription
- String; descriptionfrequency
- Frequency; frequency per exposed driverexposure
- double; exposure (value in range [0...1])averageDuration
- Duration; average durationstdDuration
- Duration; standard deviation of durationtaskSupplier
- TaskSupplier; task supplier- Returns:
- DistractionFactory; this factory for method chaining
-
build
public final List<Distraction> build()
Returns the list of distractions.- Returns:
- List; list of distractions
-
-