public abstract class AbstractDelayedNeighborsPerception extends AbstractDelayedPerceptionCategory implements NeighborsPerception
Copyright (c) 2013-2017 Delft University of Technology, PO Box 5, 2600 AA, Delft, the Netherlands. All rights reserved.
BSD-style license. See OpenTrafficSim License.
| Modifier and Type | Class and Description |
|---|---|
static class |
AbstractDelayedNeighborsPerception.NeighborsInfoType<T>
Delayed information about the type of the neighbors.
|
AbstractDelayedPerceptionCategory.DelayedInfoType<T>| Modifier and Type | Field and Description |
|---|---|
static AbstractDelayedNeighborsPerception.NeighborsInfoType<SortedSet<RelativeLane>> |
CROSSSECTION
Info type id for cross-section.
|
protected static org.opentrafficsim.base.parameters.ParameterTypeDuration |
DT
Time step parameter type.
|
static String |
FIRSTFOLLOWERS
Info type id base for first followers.
|
static String |
FIRSTLEADERS
Info type id base for first leaders.
|
static String |
FOLLOWERS
Info type id base for followers.
|
static String |
GTUALONGSIDE
Info type id base for gtu alongside.
|
static String |
LEADERS
Info type id base for leaders.
|
static AbstractDelayedNeighborsPerception.NeighborsInfoType<org.djunits.value.vdouble.scalar.Length> |
ODOMETER
Id for odometer info type.
|
protected static org.opentrafficsim.base.parameters.ParameterTypeDuration |
TR
Reaction time parameter type.
|
MAX_RED_DECELERATION, MAX_YELLOW_DECELERATION| Constructor and Description |
|---|
AbstractDelayedNeighborsPerception(LanePerception perception)
Constructor.
|
| Modifier and Type | Method and Description |
|---|---|
SortedSet<RelativeLane> |
getDelayedCrossSection()
Returns the cross-section on which the most recent observed neighbors were determined.
|
boolean |
isGtuAlongsideOverride(org.opentrafficsim.core.network.LateralDirectionality lat)
Returns whether to override the gtu alongside boolean as true.
|
void |
updateAll() |
protected void |
updateAllDelayed()
Performs actual update.
|
void |
updateFirstFollowers(org.opentrafficsim.core.network.LateralDirectionality lat)
Update set of followers on a lane, which is usually 0 or 1, but possibly more in case of an upstream merge with no
intermediate GTU.
|
void |
updateFirstLeaders(org.opentrafficsim.core.network.LateralDirectionality lat)
Update set of leaders on a lane, which is usually 0 or 1, but possibly more in case of a downstream split with no
intermediate GTU.
|
void |
updateFollowers(RelativeLane lane)
Update set of followers on a lane, including adjacent GTU's who's FRONT is back of the own vehicle FRONT.
|
void |
updateGtuAlongside(org.opentrafficsim.core.network.LateralDirectionality lat)
Update whether there is a GTU alongside, i.e.
|
void |
updateLeaders(RelativeLane lane)
Update set of leaders on a lane, including adjacent GTU's who's FRONT is ahead of the own vehicle FRONT.
|
changeLane, getInfo, getInfo, setInfo, setInfogetGtu, getObjectOrNull, getPerception, getTimestampclone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitgetFirstFollowers, getFirstLeaders, getFollowers, getLeaders, isGtuAlongsideprotected static final org.opentrafficsim.base.parameters.ParameterTypeDuration TR
protected static final org.opentrafficsim.base.parameters.ParameterTypeDuration DT
public static final String FIRSTLEADERS
public static final String FIRSTFOLLOWERS
public static final String GTUALONGSIDE
public static final String LEADERS
public static final String FOLLOWERS
public static final AbstractDelayedNeighborsPerception.NeighborsInfoType<SortedSet<RelativeLane>> CROSSSECTION
public static final AbstractDelayedNeighborsPerception.NeighborsInfoType<org.djunits.value.vdouble.scalar.Length> ODOMETER
public AbstractDelayedNeighborsPerception(LanePerception perception)
perception - perceptionpublic final void updateAll()
throws org.opentrafficsim.core.gtu.GTUException,
org.opentrafficsim.core.network.NetworkException,
org.opentrafficsim.base.parameters.ParameterException
updateAll in interface org.opentrafficsim.core.gtu.perception.PerceptionCategory<LaneBasedGTU,LanePerception>org.opentrafficsim.core.gtu.GTUExceptionorg.opentrafficsim.core.network.NetworkExceptionorg.opentrafficsim.base.parameters.ParameterExceptionpublic final boolean isGtuAlongsideOverride(org.opentrafficsim.core.network.LateralDirectionality lat)
lat - lateral directionprotected void updateAllDelayed()
throws org.opentrafficsim.core.gtu.GTUException,
org.opentrafficsim.core.network.NetworkException,
org.opentrafficsim.base.parameters.ParameterException
org.opentrafficsim.base.parameters.ParameterException - if parameter is not present or is given a wrong valueorg.opentrafficsim.core.network.NetworkException - on error in the networkorg.opentrafficsim.core.gtu.GTUException - if not initializedpublic final void updateFirstLeaders(org.opentrafficsim.core.network.LateralDirectionality lat)
throws org.opentrafficsim.base.parameters.ParameterException,
org.opentrafficsim.core.gtu.GTUException,
org.opentrafficsim.core.network.NetworkException
updateFirstLeaders in interface NeighborsPerceptionlat - LEFT or RIGHTorg.opentrafficsim.base.parameters.ParameterException - if a parameter was not present or out of boundsorg.opentrafficsim.core.gtu.GTUException - if the GTU was not initializedorg.opentrafficsim.core.network.NetworkException - in case of a network exceptionpublic final void updateFirstFollowers(org.opentrafficsim.core.network.LateralDirectionality lat)
throws org.opentrafficsim.core.gtu.GTUException,
org.opentrafficsim.base.parameters.ParameterException,
org.opentrafficsim.core.network.NetworkException
updateFirstFollowers in interface NeighborsPerceptionlat - LEFT or RIGHTorg.opentrafficsim.core.gtu.GTUException - if the GTU was not initializedorg.opentrafficsim.base.parameters.ParameterException - if a parameter was not present or out of boundsorg.opentrafficsim.core.network.NetworkException - in case of a network exceptionpublic final void updateGtuAlongside(org.opentrafficsim.core.network.LateralDirectionality lat)
throws org.opentrafficsim.core.gtu.GTUException,
org.opentrafficsim.base.parameters.ParameterException
updateGtuAlongside in interface NeighborsPerceptionlat - LEFT or RIGHTorg.opentrafficsim.core.gtu.GTUException - if the GTU was not initializedorg.opentrafficsim.base.parameters.ParameterException - if parameter is not definedpublic final void updateLeaders(RelativeLane lane) throws org.opentrafficsim.base.parameters.ParameterException, org.opentrafficsim.core.gtu.GTUException, org.opentrafficsim.core.network.NetworkException
updateLeaders in interface NeighborsPerceptionlane - relative lateral laneorg.opentrafficsim.base.parameters.ParameterException - if a parameter was not present or out of boundsorg.opentrafficsim.core.gtu.GTUException - if the GRU was not initializedorg.opentrafficsim.core.network.NetworkException - in case of a network exceptionpublic final void updateFollowers(RelativeLane lane) throws org.opentrafficsim.core.gtu.GTUException, org.opentrafficsim.core.network.NetworkException, org.opentrafficsim.base.parameters.ParameterException
updateFollowers in interface NeighborsPerceptionlane - relative lateral laneorg.opentrafficsim.core.gtu.GTUException - if the GRU was not initializedorg.opentrafficsim.core.network.NetworkException - in case of a network exceptionorg.opentrafficsim.base.parameters.ParameterException - if a parameter was not present or out of boundspublic final SortedSet<RelativeLane> getDelayedCrossSection()
Copyright © 2014–2018 Delft University of Technology. All rights reserved.