public class OTSDEVSRealTimeClock extends nl.tudelft.simulation.dsol.simulators.DEVSRealTimeClock<org.djunits.value.vdouble.scalar.DoubleScalar.Abs<org.djunits.unit.TimeUnit>,org.djunits.value.vdouble.scalar.DoubleScalar.Rel<org.djunits.unit.TimeUnit>,OTSSimTimeDouble> implements OTSDEVSSimulatorInterface, OTSAnimatorInterface, OTS_SCALAR
Copyright (c) 2013-2015 Delft University of Technology, PO Box 5, 2600 AA, Delft, the Netherlands. All rights reserved.
BSD-style license. See OpenTrafficSim License.
nl.tudelft.simulation.dsol.simulators.DEVSRealTimeClock.CalendarDouble, nl.tudelft.simulation.dsol.simulators.DEVSRealTimeClock.CalendarFloat, nl.tudelft.simulation.dsol.simulators.DEVSRealTimeClock.CalendarLong, nl.tudelft.simulation.dsol.simulators.DEVSRealTimeClock.TimeDouble, nl.tudelft.simulation.dsol.simulators.DEVSRealTimeClock.TimeDoubleUnit, nl.tudelft.simulation.dsol.simulators.DEVSRealTimeClock.TimeFloat, nl.tudelft.simulation.dsol.simulators.DEVSRealTimeClock.TimeFloatUnit, nl.tudelft.simulation.dsol.simulators.DEVSRealTimeClock.TimeLong, nl.tudelft.simulation.dsol.simulators.DEVSRealTimeClock.TimeLongUnit
nl.tudelft.simulation.dsol.simulators.DEVSSimulatorInterface.CalendarDouble, nl.tudelft.simulation.dsol.simulators.DEVSSimulatorInterface.CalendarFloat, nl.tudelft.simulation.dsol.simulators.DEVSSimulatorInterface.CalendarLong, nl.tudelft.simulation.dsol.simulators.DEVSSimulatorInterface.TimeDouble, nl.tudelft.simulation.dsol.simulators.DEVSSimulatorInterface.TimeDoubleUnit, nl.tudelft.simulation.dsol.simulators.DEVSSimulatorInterface.TimeFloat, nl.tudelft.simulation.dsol.simulators.DEVSSimulatorInterface.TimeFloatUnit, nl.tudelft.simulation.dsol.simulators.DEVSSimulatorInterface.TimeLong, nl.tudelft.simulation.dsol.simulators.DEVSSimulatorInterface.TimeLongUnit
org.djunits.value.vdouble.scalar.DOUBLE_SCALAR.Acceleration, org.djunits.value.vdouble.scalar.DOUBLE_SCALAR.AnglePlane, org.djunits.value.vdouble.scalar.DOUBLE_SCALAR.AngleSlope, org.djunits.value.vdouble.scalar.DOUBLE_SCALAR.AngleSolid, org.djunits.value.vdouble.scalar.DOUBLE_SCALAR.Area, org.djunits.value.vdouble.scalar.DOUBLE_SCALAR.Density, org.djunits.value.vdouble.scalar.DOUBLE_SCALAR.Dimensionless, org.djunits.value.vdouble.scalar.DOUBLE_SCALAR.ElectricalCharge, org.djunits.value.vdouble.scalar.DOUBLE_SCALAR.ElectricalCurrent, org.djunits.value.vdouble.scalar.DOUBLE_SCALAR.ElectricalPotential, org.djunits.value.vdouble.scalar.DOUBLE_SCALAR.ElectricalResistance, org.djunits.value.vdouble.scalar.DOUBLE_SCALAR.Energy, org.djunits.value.vdouble.scalar.DOUBLE_SCALAR.FlowMass, org.djunits.value.vdouble.scalar.DOUBLE_SCALAR.FlowVolume, org.djunits.value.vdouble.scalar.DOUBLE_SCALAR.Force, org.djunits.value.vdouble.scalar.DOUBLE_SCALAR.Frequency, org.djunits.value.vdouble.scalar.DOUBLE_SCALAR.Length, org.djunits.value.vdouble.scalar.DOUBLE_SCALAR.LinearDensity, org.djunits.value.vdouble.scalar.DOUBLE_SCALAR.Mass, org.djunits.value.vdouble.scalar.DOUBLE_SCALAR.Power, org.djunits.value.vdouble.scalar.DOUBLE_SCALAR.Pressure, org.djunits.value.vdouble.scalar.DOUBLE_SCALAR.Speed, org.djunits.value.vdouble.scalar.DOUBLE_SCALAR.Temperature, org.djunits.value.vdouble.scalar.DOUBLE_SCALAR.Time, org.djunits.value.vdouble.scalar.DOUBLE_SCALAR.Torque, org.djunits.value.vdouble.scalar.DOUBLE_SCALAR.Volume
replication, running, semaphore, simulatorTime, worker
EVENTLIST_CHANGED_EVENT
END_OF_REPLICATION_EVENT, START_EVENT, START_REPLICATION_EVENT, STEP_EVENT, STOP_EVENT, TIME_CHANGED_EVENT, WARMUP_EVENT
FIRST_POSITION, LAST_POSITION
ABAMPERE, ABCOULOMB, ABVOLT, ACRE, AMPERE, ARCMINUTE, ARCSECOND, ARE, ATMOSPHERE_STANDARD, ATMOSPHERE_TECHNICAL, ATOMIC_UNIT, BAR, BARYE, BTU_ISO, BTU_IT, CALORIE_IT, CENTESIMAL_ARCMINUTE, CENTESIMAL_ARCSECOND, CENTIMETER, CENTIMETER_MERCURY, COULOMB, CUBIC_CENTIMETER, CUBIC_DECIMETER, CUBIC_FEET_PER_MINUTE, CUBIC_FEET_PER_SECOND, CUBIC_FOOT, CUBIC_INCH, CUBIC_INCH_PER_MINUTE, CUBIC_INCH_PER_SECOND, CUBIC_KM, CUBIC_METER, CUBIC_METER_PER_DAY, CUBIC_METER_PER_HOUR, CUBIC_METER_PER_MINUTE, CUBIC_METER_PER_SECOND, CUBIC_MILE, CUBIC_YARD, DALTON, DAY, DECIMETER, DEG, DEGREE, DEGREE_CELSIUS, DEGREE_FAHRENHEIT, DEGREE_RANKINE, DEGREE_REAUMUR, DEKAMETER, DYNE, ELECTRONVOLT, EMU, ERG, ERG_PER_SECOND, ESU, EXA_ELECTRONVOLT, FARADAY, FOOT, FOOT_MERCURY, FOOT_PER_SECOND, FOOT_PER_SECOND_2, FOOT_POUND_FORCE, FOOT_POUND_FORCE_PER_HOUR, FOOT_POUND_FORCE_PER_MINUTE, FOOT_POUND_FORCE_PER_SECOND, FRANKLIN, GAL, GALLON_IMP, GALLON_PER_DAY, GALLON_PER_HOUR, GALLON_PER_MINUTE, GALLON_PER_SECOND, GALLON_US_FLUID, GIGA_ELECTRONVOLT, GIGAHERTZ, GIGAWATT, GIGAWATT_HOUR, GRAD, GRAM, GRAM_PER_CENTIMETER_3, HECTARE, HECTOMETER, HECTOPASCAL, HERTZ, HORSEPOWER_METRIC, HOUR, INCH, INCH_MERCURY, INCH_PER_SECOND_2, INCH_POUND_FORCE, JOULE, KELVIN, KG_PER_METER_3, KGF_PER_SQUARE_MM, KILO_ELECTRONVOLT, KILOAMPERE, KILOCALORIE, KILOGRAM, KILOGRAM_FORCE, KILOGRAM_PER_SECOND, KILOHERTZ, KILOMETER, KILOOHM, KILOPASCAL, KILOVOLT, KILOWATT, KILOWATT_HOUR, KM_PER_HOUR, KM_PER_HOUR_2, KNOT, KNOT_PER_SECOND, LITER, LITER_PER_DAY, LITER_PER_HOUR, LITER_PER_MINUTE, LITER_PER_SECOND, MEGA_ELECTRONVOLT, MEGAHERTZ, MEGAOHM, MEGAVOLT, MEGAWATT, MEGAWATT_HOUR, METER, METER_KILOGRAM_FORCE, METER_PER_SECOND, METER_PER_SECOND_2, MICROAMPERE, MICROVOLT, MICROWATT_HOUR, MILE, MILE_PER_HOUR, MILE_PER_HOUR_2, MILE_PER_HOUR_PER_SECOND, MILLI_ELECTRONVOLT, MILLIAMPERE, MILLIAMPERE_HOUR, MILLIBAR, MILLIMETER, MILLIMETER_MERCURY, MILLIOHM, MILLISECOND, MILLIVOLT, MILLIWATT_HOUR, MINUTE, NANOAMPERE, NAUTICAL_MILE, NEWTON, NEWTON_METER, OHM, OUNCE, OUNCE_FORCE, OUNCE_IMP_FLUID, OUNCE_US_FLUID, PASCAL, PER_CENTIMETER, PER_DAY, PER_DECIMETER, PER_DEKAMETER, PER_FOOT, PER_HECTOMETER, PER_HOUR, PER_INCH, PER_KILOMETER, PER_METER, PER_MILE, PER_MILLIMETER, PER_MILLISECOND, PER_MINUTE, PER_NAUTICAL_MILE, PER_SECOND, PER_WEEK, PER_YARD, PETA_ELECTRONVOLT, PIEZE, PINT_IMP, PINT_US_FLUID, POUND, POUND_FOOT, POUND_FORCE, POUND_INCH, POUND_PER_SECOND, POUND_PER_SQUARE_FOOT, POUND_PER_SQUARE_INCH, QUART_IMP, QUART_US_FLUID, RAD, RADIAN, RPM, SECOND, SLOPE_ARCMINUTE, SLOPE_ARCSECOND, SLOPE_CENTESIMAL_ARCMINUTE, SLOPE_CENTESIMAL_ARCSECOND, SLOPE_DEGREE, SLOPE_GRAD, SLOPE_RADIAN, SQUARE_CENTIMETER, SQUARE_DEGREE, SQUARE_FOOT, SQUARE_INCH, SQUARE_METER, SQUARE_MILE, SQUARE_MILLIMETER, SQUARE_YARD, STANDARD_GRAVITY, STATAMPERE, STATCOULOMB, STATVOLT, STERADIAN, STHENE, STHENE_METER, STHENE_METER_PER_SECOND, TERA_ELECTRONVOLT, TERAHERTZ, TERAWATT_HOUR, TON_FORCE, TON_LONG, TON_METRIC, TON_SHORT, TONNE, TORR, VOLT, WATT, WATT_HOUR, WEEK, YARD
Constructor and Description |
---|
OTSDEVSRealTimeClock()
Create a new OTSRealTimeClock.
|
Modifier and Type | Method and Description |
---|---|
void |
initialize(nl.tudelft.simulation.dsol.experiment.Replication<org.djunits.value.vdouble.scalar.DoubleScalar.Abs<org.djunits.unit.TimeUnit>,org.djunits.value.vdouble.scalar.DoubleScalar.Rel<org.djunits.unit.TimeUnit>,OTSSimTimeDouble> initReplication,
nl.tudelft.simulation.dsol.experiment.ReplicationMode replicationMode) |
protected org.djunits.value.vdouble.scalar.Time.Rel |
relativeMillis(double factor) |
void |
runUpTo(org.djunits.value.vdouble.scalar.Time.Abs when)
Runs the simulator up to a certain time; events at that time will not yet be executed.
|
void |
scheduleEventAbs(org.djunits.value.vdouble.scalar.Time.Abs absoluteTime,
Object source,
Object target,
String method,
Object[] args)
schedules a methodCall at an absolute time.
|
void |
scheduleEventAbs(org.djunits.value.vdouble.scalar.Time.Abs absoluteTime,
short priority,
Object source,
Object target,
String method,
Object[] args)
schedules a methodCall at an absolute time.
|
void |
scheduleEventRel(org.djunits.value.vdouble.scalar.Time.Rel relativeDelay,
Object source,
Object target,
String method,
Object[] args)
schedules a methodCall at a relative duration.
|
void |
scheduleEventRel(org.djunits.value.vdouble.scalar.Time.Rel relativeDelay,
short priority,
Object source,
Object target,
String method,
Object[] args)
schedules a methodCall at a relative duration.
|
getSpeedFactor, isCatchup, run, setCatchup, setSpeedFactor
getAnimationDelay, setAnimationDelay, updateAnimation
autoPauseSimulator, cancelEvent, getEventList, isPauseOnError, runUpTo, scheduleEvent, scheduleEventAbs, scheduleEventAbs, scheduleEventAbs, scheduleEventAbs, scheduleEventNow, scheduleEventNow, scheduleEventRel, scheduleEventRel, setEventList, setPauseOnError, step, stop
cleanUp, getReplication, getSimulatorTime, isRunning, start
addListener, addListener, addListener, addListener, fireEvent, fireEvent, fireEvent, fireEvent, fireEvent, fireEvent, fireEvent, fireEvent, fireEvent, fireEvent, fireTimedEvent, fireTimedEvent, fireTimedEvent, fireTimedEvent, fireTimedEvent, fireTimedEvent, fireTimedEvent, removeAllListeners, removeAllListeners, removeListener
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
cancelEvent, getEventList, scheduleEvent, scheduleEventAbs, scheduleEventAbs, scheduleEventNow, scheduleEventNow, setEventList
isPauseOnError, runUpTo, scheduleEventAbs, scheduleEventAbs, scheduleEventRel, scheduleEventRel, setPauseOnError
getSimulatorTime, isRunning, start, step, stop
getReplication
public OTSDEVSRealTimeClock()
public final void initialize(nl.tudelft.simulation.dsol.experiment.Replication<org.djunits.value.vdouble.scalar.DoubleScalar.Abs<org.djunits.unit.TimeUnit>,org.djunits.value.vdouble.scalar.DoubleScalar.Rel<org.djunits.unit.TimeUnit>,OTSSimTimeDouble> initReplication, nl.tudelft.simulation.dsol.experiment.ReplicationMode replicationMode) throws nl.tudelft.simulation.dsol.SimRuntimeException
initialize
in interface nl.tudelft.simulation.dsol.simulators.SimulatorInterface<org.djunits.value.vdouble.scalar.DoubleScalar.Abs<org.djunits.unit.TimeUnit>,org.djunits.value.vdouble.scalar.DoubleScalar.Rel<org.djunits.unit.TimeUnit>,OTSSimTimeDouble>
initialize
in interface OTSSimulatorInterface
initialize
in class nl.tudelft.simulation.dsol.simulators.DEVSSimulator<org.djunits.value.vdouble.scalar.DoubleScalar.Abs<org.djunits.unit.TimeUnit>,org.djunits.value.vdouble.scalar.DoubleScalar.Rel<org.djunits.unit.TimeUnit>,OTSSimTimeDouble>
nl.tudelft.simulation.dsol.SimRuntimeException
public final void scheduleEventRel(org.djunits.value.vdouble.scalar.Time.Rel relativeDelay, short priority, Object source, Object target, String method, Object[] args) throws nl.tudelft.simulation.dsol.SimRuntimeException
scheduleEventRel
in interface OTSDEVSSimulatorInterface
relativeDelay
- the relativeDelay in timeUnits of the simulator.priority
- the priority compared to other events scheduled at the same time.source
- the source of the eventtarget
- the targetmethod
- the methodargs
- the arguments.nl.tudelft.simulation.dsol.SimRuntimeException
- whenever the event is scheduled in the past.public final void scheduleEventRel(org.djunits.value.vdouble.scalar.Time.Rel relativeDelay, Object source, Object target, String method, Object[] args) throws nl.tudelft.simulation.dsol.SimRuntimeException
scheduleEventRel
in interface OTSDEVSSimulatorInterface
relativeDelay
- the relativeDelay in timeUnits of the simulator.source
- the source of the eventtarget
- the targetmethod
- the methodargs
- the arguments.nl.tudelft.simulation.dsol.SimRuntimeException
- whenever the event is scheduled in the past.public final void scheduleEventAbs(org.djunits.value.vdouble.scalar.Time.Abs absoluteTime, Object source, Object target, String method, Object[] args) throws nl.tudelft.simulation.dsol.SimRuntimeException
scheduleEventAbs
in interface OTSDEVSSimulatorInterface
absoluteTime
- the exact time to schedule the method on the simulator.source
- the source of the eventtarget
- the targetmethod
- the methodargs
- the arguments.nl.tudelft.simulation.dsol.SimRuntimeException
- whenever the event is scheduled in the past.public final void scheduleEventAbs(org.djunits.value.vdouble.scalar.Time.Abs absoluteTime, short priority, Object source, Object target, String method, Object[] args) throws nl.tudelft.simulation.dsol.SimRuntimeException
scheduleEventAbs
in interface OTSDEVSSimulatorInterface
absoluteTime
- the exact time to schedule the method on the simulator.priority
- the priority compared to other events scheduled at the same time.source
- the source of the eventtarget
- the targetmethod
- the methodargs
- the arguments.nl.tudelft.simulation.dsol.SimRuntimeException
- whenever the event is scheduled in the past.public final void runUpTo(org.djunits.value.vdouble.scalar.Time.Abs when) throws nl.tudelft.simulation.dsol.SimRuntimeException
runUpTo
in interface OTSDEVSSimulatorInterface
when
- the absolute time till when we want to run the simulationnl.tudelft.simulation.dsol.SimRuntimeException
- whenever starting fails. Possible occasions include starting a started simulatorprotected final org.djunits.value.vdouble.scalar.Time.Rel relativeMillis(double factor)
relativeMillis
in class nl.tudelft.simulation.dsol.simulators.DEVSRealTimeClock<org.djunits.value.vdouble.scalar.DoubleScalar.Abs<org.djunits.unit.TimeUnit>,org.djunits.value.vdouble.scalar.DoubleScalar.Rel<org.djunits.unit.TimeUnit>,OTSSimTimeDouble>
Copyright © 2014–2015 Delft University of Technology. All rights reserved.