Class LaneBasedStrategicalRoutePlannerFactory
java.lang.Object
org.opentrafficsim.road.gtu.strategical.LaneBasedStrategicalRoutePlannerFactory
- All Implemented Interfaces:
Serializable
,LaneBasedStrategicalPlannerFactory<LaneBasedStrategicalRoutePlanner>
public class LaneBasedStrategicalRoutePlannerFactory
extends Object
implements LaneBasedStrategicalPlannerFactory<LaneBasedStrategicalRoutePlanner>, Serializable
Factory for creating
LaneBasedStrategicalRoutePlanner
using any LaneBasedTacticalPlannerFactory
.
Copyright (c) 2013-2024 Delft University of Technology, PO Box 5, 2600 AA, Delft, the Netherlands. All rights reserved.
BSD-style license. See OpenTrafficSim License.
- Author:
- Alexander Verbraeck, Peter Knoppers, Wouter Schakel
- See Also:
-
Constructor Summary
ConstructorDescriptionLaneBasedStrategicalRoutePlannerFactory
(LaneBasedTacticalPlannerFactory<? extends LaneBasedTacticalPlanner> tacticalPlannerFactory) Constructor with factory for tactical planners.LaneBasedStrategicalRoutePlannerFactory
(LaneBasedTacticalPlannerFactory<? extends LaneBasedTacticalPlanner> tacticalPlannerFactory, ParameterFactory parametersFactory) Constructor with factory for tactical planners.LaneBasedStrategicalRoutePlannerFactory
(LaneBasedTacticalPlannerFactory<? extends LaneBasedTacticalPlanner> tacticalPlannerFactory, ParameterFactory parametersFactory, RouteGenerator routeGenerator) Constructor with factory for tactical planners. -
Method Summary
Modifier and TypeMethodDescriptioncreate
(LaneBasedGtu gtu, Route route, Node origin, Node destination) Creates a new strategical planner for the given GTU.protected final org.opentrafficsim.base.parameters.Parameters
nextParameters
(GtuType gtuType) Returns the parameters for the next GTU.final org.djunits.value.vdouble.scalar.Length
peekDesiredHeadway
(GtuType gtuType, org.djunits.value.vdouble.scalar.Speed speed) Peek to see the desired headway of the next GTU to be generated at the given speed.final org.djunits.value.vdouble.scalar.Speed
peekDesiredSpeed
(GtuType gtuType, org.djunits.value.vdouble.scalar.Speed speedLimit, org.djunits.value.vdouble.scalar.Speed maxGtuSpeed) Peek to see the desired speed of the next GTU to be generated at the given location.final String
toString()
-
Constructor Details
-
LaneBasedStrategicalRoutePlannerFactory
public LaneBasedStrategicalRoutePlannerFactory(LaneBasedTacticalPlannerFactory<? extends LaneBasedTacticalPlanner> tacticalPlannerFactory) Constructor with factory for tactical planners.- Parameters:
tacticalPlannerFactory
- LaneBasedTacticalPlannerFactory<? extends LaneBasedTacticalPlanner>; factory for tactical planners
-
LaneBasedStrategicalRoutePlannerFactory
public LaneBasedStrategicalRoutePlannerFactory(LaneBasedTacticalPlannerFactory<? extends LaneBasedTacticalPlanner> tacticalPlannerFactory, ParameterFactory parametersFactory) Constructor with factory for tactical planners.- Parameters:
tacticalPlannerFactory
- LaneBasedTacticalPlannerFactory<? extends LaneBasedTacticalPlanner>; factory for tactical plannersparametersFactory
- ParameterFactory; factory for parameters
-
LaneBasedStrategicalRoutePlannerFactory
public LaneBasedStrategicalRoutePlannerFactory(LaneBasedTacticalPlannerFactory<? extends LaneBasedTacticalPlanner> tacticalPlannerFactory, ParameterFactory parametersFactory, RouteGenerator routeGenerator) Constructor with factory for tactical planners.- Parameters:
tacticalPlannerFactory
- LaneBasedTacticalPlannerFactory<? extends LaneBasedTacticalPlanner>; factory for tactical plannersparametersFactory
- ParameterFactory; factory for parametersrouteGenerator
- RouteGenerator; route supplier
-
-
Method Details
-
peekDesiredSpeed
public final org.djunits.value.vdouble.scalar.Speed peekDesiredSpeed(GtuType gtuType, org.djunits.value.vdouble.scalar.Speed speedLimit, org.djunits.value.vdouble.scalar.Speed maxGtuSpeed) throws GtuException Peek to see the desired speed of the next GTU to be generated at the given location. The default implementation returnsnull
, at which point the GTU generator will use some other speed.- Specified by:
peekDesiredSpeed
in interfaceLaneBasedStrategicalPlannerFactory<LaneBasedStrategicalRoutePlanner>
- Parameters:
gtuType
- GtuType; GTU typespeedLimit
- Speed; speed limitmaxGtuSpeed
- Speed; maximum GTU speed- Returns:
- desired speed of the next GTU to be generated at the given location, may be
null
at which point the GTU generator will use some other speed - Throws:
GtuException
- on parameter exception or network exception
-
peekDesiredHeadway
public final org.djunits.value.vdouble.scalar.Length peekDesiredHeadway(GtuType gtuType, org.djunits.value.vdouble.scalar.Speed speed) throws GtuException Peek to see the desired headway of the next GTU to be generated at the given speed. The default implementation returnsnull
, at which point the GTU generator will only generate GTU's at fixed locations.- Specified by:
peekDesiredHeadway
in interfaceLaneBasedStrategicalPlannerFactory<LaneBasedStrategicalRoutePlanner>
- Parameters:
gtuType
- GtuType; GTU typespeed
- Speed; speed the GTU might be generated at- Returns:
- Length; desired headway of the next GTU to be generated at the given speed, may be
null
at which point the GTU generator only generate GTU's at fixed locations - Throws:
GtuException
- on parameter exception or network exception
-
create
public final LaneBasedStrategicalRoutePlanner create(LaneBasedGtu gtu, Route route, Node origin, Node destination) throws GtuException Creates a new strategical planner for the given GTU. This method should also set the parameters at the GTU.- Specified by:
create
in interfaceLaneBasedStrategicalPlannerFactory<LaneBasedStrategicalRoutePlanner>
- Parameters:
gtu
- LaneBasedGtu; GTUroute
- Route; route, may be nullorigin
- Node; origin, may be nulldestination
- Node; destination, may be null- Returns:
- strategical planner for the given GTU
- Throws:
GtuException
- if the gtu is not suitable in any way for the creation of the strategical planner
-
nextParameters
protected final org.opentrafficsim.base.parameters.Parameters nextParameters(GtuType gtuType) throws GtuException Returns the parameters for the next GTU.- Parameters:
gtuType
- GtuType; GTU type of GTU to be generated- Returns:
- Parameters; parameters for the next GTU
- Throws:
GtuException
- on parameter exception
-
toString
-