}, where {@code T} is the class of underlying info, generally referred to
* as Speed Info or with the parameter name {@code speedInfo}. Often, {@code T} will be {@code Speed}. For this purpose the
* easier {@code SpeedLimitTypeSpeed} should be used. A distinction between legal and non-legal speed limit types
* is made. For legal speed limit types implement interface {@code LegalSpeedLimit}. For legal speed limits which
* have {@code Speed} as info, extend {@code SpeedLimitTypeSpeedLegal}. A list of default {@code SpeedLimitType}'s can be found
* in {@code SpeedLimitTypes}.
*
* At any time a set of {@code SpeedLimitType}'s may be active with an accompanying set of Speed Info's of whatever class. This
* information is stored in {@code SpeedLimitInfo}. Based on such a set, driver models can derive current desired speed.
*
*
* However, deceleration for lower speed limits ahead may also be required. For this purpose {@code SpeedLimitType}'s and
* accompanying Speed Info's are stored together with a distance in a {@code SpeedLimitProspect}. Suggested use of this
* class is:
*
*
* TODO
*
*
* 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 May 3, 2016
* @author Alexander Verbraeck
* @author Wouter Schakel
*/
package org.opentrafficsim.road.network.speed;