Class DoubleScalarSerializer<U extends org.djunits.unit.Unit<U>,S extends org.djunits.value.vdouble.scalar.base.DoubleScalarInterface<U,S>>
- java.lang.Object
-
- org.djutils.serialization.serializers.BasicSerializer<T>
-
- org.djutils.serialization.serializers.ObjectSerializer<T>
-
- org.djutils.serialization.serializers.ObjectWithUnitSerializer<U,S>
-
- org.djutils.serialization.serializers.DoubleScalarSerializer<U,S>
-
- Type Parameters:
U
- the unit typeS
- the scalar type
- All Implemented Interfaces:
Serializer<S>
public class DoubleScalarSerializer<U extends org.djunits.unit.Unit<U>,S extends org.djunits.value.vdouble.scalar.base.DoubleScalarInterface<U,S>> extends ObjectWithUnitSerializer<U,S>
(De)serializes a DJUNITS DoubleScalar.Copyright (c) 2019-2023 Delft University of Technology, PO Box 5, 2600 AA, Delft, the Netherlands. All rights reserved.
BSD-style license. See DJUNITS License.- Author:
- Alexander Verbraeck
-
-
Constructor Summary
Constructors Constructor Description DoubleScalarSerializer()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description S
deSerialize(byte[] buffer, Pointer pointer, EndianUtil endianUtil)
Deserialize an object of type T.void
serialize(S ads, byte[] buffer, Pointer pointer, EndianUtil endianUtil)
Serialize an object of type T; not including the prefix byte(s).int
size(S ads)
Compute the number of bytes needed to serialize an object of type T (excluding the byte(s) that indicate that an object of type T is next in the data stream).-
Methods inherited from class org.djutils.serialization.serializers.ObjectWithUnitSerializer
encodeUnit, getUnit
-
Methods inherited from class org.djutils.serialization.serializers.ObjectSerializer
getNumberOfDimensions, serializeWithPrefix, sizeWithPrefix
-
Methods inherited from class org.djutils.serialization.serializers.BasicSerializer
dataClassName, fieldType, toString
-
-
-
-
Method Detail
-
size
public int size(S ads) throws SerializationException
Compute the number of bytes needed to serialize an object of type T (excluding the byte(s) that indicate that an object of type T is next in the data stream).- Parameters:
ads
- T; Instance of the object- Returns:
- int; the number of bytes needed to serialize an object of type T
- Throws:
SerializationException
- when theobject
cannot be serialized
-
serialize
public void serialize(S ads, byte[] buffer, Pointer pointer, EndianUtil endianUtil) throws SerializationException
Serialize an object of type T; not including the prefix byte(s).- Parameters:
ads
- T; the object to serializebuffer
- byte[]; buffer for the serialized Tpointer
- Pointer; position in buffer where the first byte of the serialized T will be storedendianUtil
- EndianUtil; selects bigEndian or littleEndian encoding- Throws:
SerializationException
- when a matrix has size zero or is jagged
-
deSerialize
public S deSerialize(byte[] buffer, Pointer pointer, EndianUtil endianUtil) throws SerializationException
Deserialize an object of type T. Thepointer
should be on the first byte of the object; i.e. just after the prefix byte.- Parameters:
buffer
- byte[]; the bytes with serialized data that must be reconstructed into a Tpointer
- Pointer; position in the buffer where the first byte of the serialized T is locatedendianUtil
- EndianUtil; selects bigEndian or littleEndian encoding- Returns:
- T; a T object constructed from the data in the buffer
- Throws:
SerializationException
- when the input data cannot be deserialized
-
-