#include <PendingCalculation.h>
When present, a scalar conversion that needs to be applied to every IntervalReading.value contained in IntervalBlock. This conversion results in a new associated ReadingType, reflecting the true dimensions of IntervalReading values after the conversion.
IEC61970::Base::Domain::Boolean IEC61968::Metering::PendingCalculation::multiplyBeforeAdd |
Whether scalars should be applied before adding the 'offset'.
IEC61970::Base::Domain::Integer IEC61968::Metering::PendingCalculation::offset |
(if applicable) Offset to be added as well as multiplication using scalars.
IEC61968::Metering::ReadingType* IEC61968::Metering::PendingCalculation::ReadingType |
Reading type resulting from this pending conversion.
IEC61970::Base::Domain::Integer IEC61968::Metering::PendingCalculation::scalarDenominator |
(if scalar is rational number) When 'IntervalReading.value' is multiplied by 'scalarNumerator' and divided by this value, it causes a unit of measure conversion to occur, resulting in the 'ReadingType.unit'.
IEC61970::Base::Domain::Float IEC61968::Metering::PendingCalculation::scalarFloat |
(if scalar is floating number) When multiplied with 'IntervalReading.value', it causes a unit of measure conversion to occur, according to the 'ReadingType. unit'.
IEC61970::Base::Domain::Integer IEC61968::Metering::PendingCalculation::scalarNumerator |
(if scalar is integer or rational number) When the scalar is a simple integer, and this attribute is presented alone and multiplied with 'IntervalReading. value', it causes a unit of measure conversion to occur, resulting in the 'ReadingType.unit'. It is never used in conjunction with 'scalarFloat', only with 'scalarDenominator'.