Class NumberValue<T extends java.lang.Number>
- java.lang.Object
-
- com.smartgridready.communicator.common.api.values.Value
-
- com.smartgridready.communicator.common.api.values.NumberValue<T>
-
- Type Parameters:
T- The type of numeric value.
- Direct Known Subclasses:
Float32Value,Float64Value,Int16UValue,Int16Value,Int32UValue,Int32Value,Int64Value,Int8UValue,Int8Value
public abstract class NumberValue<T extends java.lang.Number> extends Value
Base class for numeric SGr value types.
-
-
Field Summary
Fields Modifier and Type Field Description protected TvalueThe internal value.-
Fields inherited from class com.smartgridready.communicator.common.api.values.Value
UNSIGNED_LONG_MASK
-
-
Constructor Summary
Constructors Modifier Constructor Description protectedNumberValue()Constructs a new instance.
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description booleanequals(java.lang.Object o)java.util.Map<java.lang.String,java.lang.Boolean>getBitmap()Gets the value as SGr bitmap.booleangetBoolean()Gets the value as boolean.java.time.InstantgetDateTime()Gets the value as time stamp.EnumRecordgetEnum()Gets the value as SGr enumeration record.floatgetFloat32()Gets the value as 32-bit floating-point.doublegetFloat64()Gets the value as 64-bit floating-point.shortgetInt16()Gets the value as 16-bit integer.intgetInt16U()Gets the value as unsigned 16-bit integer.intgetInt32()Gets the value as 32-bit integer.longgetInt32U()Gets the value as unsigned 32-bit integer.longgetInt64()Gets the value as 64-bit integer.java.math.BigIntegergetInt64U()Gets the value as unsigned 64-bit integer.bytegetInt8()Gets the value as 8-bit integer.shortgetInt8U()Gets the value as unsigned 8-bit integer.com.fasterxml.jackson.databind.JsonNodegetJson()Gets the value as JSON.java.lang.StringgetString()Gets the value as string.inthashCode()NumberValue<? extends java.lang.Number>scaleDown(int mul, int powOf10)Scales down by powers of 10.NumberValue<? extends java.lang.Number>scaleUp(int mul, int powOf10)Scales up by powers of 10.protected abstract voidsetValue(double value)Updates the numeric value.java.lang.StringtoString()-
Methods inherited from class com.smartgridready.communicator.common.api.values.Value
absValue, asArray, enumToOrdinalValue, fromDiscreteInput, fromModbusRegister, fromString, getJson, roundToInt, toModbusDiscreteVal, toModbusRegister
-
-
-
-
Field Detail
-
value
protected T extends java.lang.Number value
The internal value.
-
-
Method Detail
-
getInt8
public byte getInt8()
Description copied from class:ValueGets the value as 8-bit integer.
-
getInt8U
public short getInt8U()
Description copied from class:ValueGets the value as unsigned 8-bit integer.
-
getInt16
public short getInt16()
Description copied from class:ValueGets the value as 16-bit integer.
-
getInt16U
public int getInt16U()
Description copied from class:ValueGets the value as unsigned 16-bit integer.
-
getInt32
public int getInt32()
Description copied from class:ValueGets the value as 32-bit integer.
-
getInt32U
public long getInt32U()
Description copied from class:ValueGets the value as unsigned 32-bit integer.
-
getBoolean
public boolean getBoolean()
Description copied from class:ValueGets the value as boolean.- Specified by:
getBooleanin classValue- Returns:
- a boolean
-
getEnum
public EnumRecord getEnum()
Description copied from class:ValueGets the value as SGr enumeration record.
-
getBitmap
public java.util.Map<java.lang.String,java.lang.Boolean> getBitmap()
Description copied from class:ValueGets the value as SGr bitmap.
-
getInt64
public long getInt64()
Description copied from class:ValueGets the value as 64-bit integer.
-
getInt64U
public java.math.BigInteger getInt64U()
Description copied from class:ValueGets the value as unsigned 64-bit integer.
-
getFloat32
public float getFloat32()
Description copied from class:ValueGets the value as 32-bit floating-point.- Specified by:
getFloat32in classValue- Returns:
- a float
-
getFloat64
public double getFloat64()
Description copied from class:ValueGets the value as 64-bit floating-point.- Specified by:
getFloat64in classValue- Returns:
- a double
-
getString
public java.lang.String getString()
Description copied from class:ValueGets the value as string.
-
getDateTime
public java.time.Instant getDateTime()
Description copied from class:ValueGets the value as time stamp.- Specified by:
getDateTimein classValue- Returns:
- an Instant
-
getJson
public com.fasterxml.jackson.databind.JsonNode getJson()
Description copied from class:ValueGets the value as JSON.
-
toString
public java.lang.String toString()
- Overrides:
toStringin classjava.lang.Object
-
scaleDown
public NumberValue<? extends java.lang.Number> scaleDown(int mul, int powOf10)
Scales down by powers of 10.- Parameters:
mul- the multiplicatorpowOf10- the exponent of the power of 10- Returns:
- a numeric value
-
scaleUp
public NumberValue<? extends java.lang.Number> scaleUp(int mul, int powOf10)
Scales up by powers of 10.- Parameters:
mul- the multiplicatorpowOf10- the exponent of the power of 10- Returns:
- a numeric value
-
setValue
protected abstract void setValue(double value)
Updates the numeric value.- Parameters:
value- a double value
-
equals
public boolean equals(java.lang.Object o)
- Overrides:
equalsin classjava.lang.Object
-
hashCode
public int hashCode()
- Overrides:
hashCodein classjava.lang.Object
-
-