View Javadoc
1   package org.opentrafficsim.road.gtu.lane;
2   
3   import org.opentrafficsim.core.distributions.ProbabilityException;
4   import org.opentrafficsim.core.dsol.OTSDEVSSimulatorInterface;
5   
6   /**
7    * Interface for objects that can generate a LaneBasedGTUCharacteristics object.
8    * <p>
9    * Copyright (c) 2013-2015 Delft University of Technology, PO Box 5, 2600 AA, Delft, the Netherlands. All rights reserved. <br>
10   * BSD-style license. See <a href="http://opentrafficsim.org/node/13">OpenTrafficSim License</a>.
11   * <p>
12   * @version $Revision$, $LastChangedDate$, by $Author$,
13   *          initial version Mar 9, 2016 <br>
14   * @author <a href="http://www.tbm.tudelft.nl/averbraeck">Alexander Verbraeck</a>
15   * @author <a href="http://www.tudelft.nl/pknoppers">Peter Knoppers</a>
16   */
17  public interface LaneBasedGTUCharacteristicsGenerator
18  {
19      /**
20       * Generate a LaneBasedGTUCharacteristics object.
21       * @return LaneBasedGTUCharacteristics
22       * @throws ProbabilityException when the generator is improperly configured
23       */
24      public LaneBasedGTUCharacteristics draw() throws ProbabilityException;
25      
26      /**
27       * Return the simulator.
28       * @return OTSDEVSSimulatorInterface; the simulator
29       * @throws ProbabilityException when the generator cannot retrieve the simulator
30       */
31      public OTSDEVSSimulatorInterface getSimulator() throws ProbabilityException;
32  }