Class DurationVector

All Implemented Interfaces:
Serializable, Cloneable, Iterable<Duration>, Vector<DurationUnit,​Duration,​DurationVector>, Vector.Rel<DurationUnit,​Duration,​DurationVector>, Vector.RelWithAbs<TimeUnit,​Time,​TimeVector,​DurationUnit,​Duration,​DurationVector>, ValueFunctions<DurationUnit,​DurationVector>, IndexedValue<DurationUnit,​Duration,​DurationVector>, Relative<DurationUnit,​DurationVector>, Value<DurationUnit,​DurationVector>, DoubleVectorInterface<DurationUnit,​Duration,​DurationVector>

@Generated(value="org.djunits.generator.GenerateDJUNIT",
           date="2020-01-19T15:21:24.964166400Z")
public class DurationVector
extends AbstractDoubleVectorRelWithAbs<TimeUnit,​Time,​TimeVector,​DurationUnit,​Duration,​DurationVector>
Double DurationVector, a vector of values with a DurationUnit.

Copyright (c) 2013-2020 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
See Also:
Serialized Form
  • Constructor Details

    • DurationVector

      public DurationVector​(DoubleVectorData data, DurationUnit displayUnit)
      Construct an DurationVector from an internal data object.
      Parameters:
      data - DoubleVectorData; the internal data object for the vector data
      displayUnit - DurationUnit; the display unit of the vector data
  • Method Details

    • getScalarClass

      public Class<Duration> getScalarClass()
      Return the class of the corresponding scalar.
      Returns:
      Class<S>; the class of the corresponding scalar
    • instantiateVector

      public DurationVector instantiateVector​(DoubleVectorData dvd, DurationUnit displayUnit)
      Instantiate a new vector of the class of this vector. This can be used instead of the DoubleVector.instiantiate() methods in case another vector of this class is known. The method is faster than DoubleVector.instantiate, and it will also work if the vector is user-defined.
      Parameters:
      dvd - DoubleVectorData; the data used to instantiate the vector
      displayUnit - U; the display unit of the vector
      Returns:
      V; a vector of the correct type
    • instantiateScalarSI

      public Duration instantiateScalarSI​(double valueSI, DurationUnit displayUnit)
      Instantiate a new scalar for the class of this vector. This can be used instead of the DoubleScalar.instiantiate() methods in case a vector of this class is known. The method is faster than DoubleScalar.instantiate, and it will also work if the vector and/or scalar are user-defined.
      Parameters:
      valueSI - double; the SI value of the scalar
      displayUnit - U; the unit in which the value will be displayed
      Returns:
      S; a scalar of the correct type, belonging to the vector type
    • instantiateVectorAbs

      public TimeVector instantiateVectorAbs​(DoubleVectorData dvd, TimeUnit displayUnit)
      Instantiate a new absolute vector of the class of this relative vector. This can be used instead of the DoubleVector.instiantiate() methods in case another vector of this relative with absolute class is known. The method is faster than DoubleVector.instantiate, and it will also work if the vector is user-defined.
      Specified by:
      instantiateVectorAbs in class AbstractDoubleVectorRelWithAbs<TimeUnit,​Time,​TimeVector,​DurationUnit,​Duration,​DurationVector>
      Parameters:
      dvd - DoubleVectorData; the data used to instantiate the vector
      displayUnit - AU; the display unit of the absolute vector
      Returns:
      AV; an absolute vector of the correct type, belonging to this relative vector type
    • instantiateScalarAbsSI

      public Time instantiateScalarAbsSI​(double valueSI, TimeUnit displayUnit)
      Instantiate a new absolute scalar for the class of this relative vector. This can be used instead of the DoubleScalar.instiantiate() methods in case a vector of this class is known. The method is faster than DoubleScalar.instantiate, and it will also work if the vector and/or scalar are user-defined.
      Specified by:
      instantiateScalarAbsSI in class AbstractDoubleVectorRelWithAbs<TimeUnit,​Time,​TimeVector,​DurationUnit,​Duration,​DurationVector>
      Parameters:
      valueSI - double; the SI value of the absolute scalar
      displayUnit - AU; the unit in which the absolute value will be displayed
      Returns:
      A; an absolute scalar of the correct type, belonging to this relative vector type