1 package org.opentrafficsim.kpi.sampling.data;
2
3 import org.djunits.unit.LengthUnit;
4 import org.djunits.value.ValueRuntimeException;
5 import org.djunits.value.storage.StorageType;
6 import org.djunits.value.vfloat.scalar.FloatLength;
7 import org.djunits.value.vfloat.vector.FloatLengthVector;
8 import org.djunits.value.vfloat.vector.base.FloatVector;
9 import org.opentrafficsim.kpi.interfaces.GtuData;
10
11
12
13
14
15
16
17
18
19
20
21
22 public abstract class ExtendedDataLength<G extends GtuData>
23 extends ExtendedDataFloat<LengthUnit, FloatLength, FloatLengthVector, G>
24 {
25
26
27
28
29
30
31 public ExtendedDataLength(final String id, final String description)
32 {
33 super(id, description, FloatLength.class);
34 }
35
36
37 @Override
38 protected final FloatLength convertValue(final float value)
39 {
40 return FloatLength.instantiateSI(value);
41 }
42
43
44 @Override
45 protected final FloatLengthVector convert(final float[] storage) throws ValueRuntimeException
46 {
47 return FloatVector.instantiate(storage, LengthUnit.SI, StorageType.DENSE);
48 }
49
50
51 @Override
52 public FloatLength interpolate(final FloatLength value0, final FloatLength value1, final double f)
53 {
54 return FloatLength.interpolate(value0, value1, (float) f);
55 }
56
57
58 @Override
59 public FloatLength parseValue(final String string)
60 {
61 return FloatLength.instantiateSI(Float.valueOf(string));
62 }
63
64 }