C++ Based OPC UA Client/Server/PubSub SDK  1.7.6.537
AggregateCalculatorMinMax Class Reference

Calculates the value of minumim and maximum aggregates. More...

#include <aggregatecalculatorminmax.h>

Inherits AggregateCalculator.

Public Member Functions

 AggregateCalculatorMinMax (UaNodeId aggregateId, UaDateTime startTime, UaDateTime endTime, double processingInterval, bool stepped, OpcUa_AggregateConfiguration &configuration)
 Initializes the aggregate calculator. More...
 
bool UsesInterpolatedBounds ()
 Indicates whether this aggregate uses Interpolated Bounding Values. More...
 

Static Public Member Functions

static
AggregateCalculatorInterface
CreateCalculator (UaNodeId aggregateId, UaDateTime startTime, UaDateTime endTime, double processingInterval, bool stepped, OpcUa_AggregateConfiguration &configuration)
 Used by the Aggregators factory to create a new instance of the aggregate calculator. More...
 

Protected Member Functions

UaDataValue ComputeValue (TimeSlice &slice)
 Computes the value for the timeslice. More...
 
UaDataValue ComputeMinMax (TimeSlice &slice, int valueType, bool returnActualTime)
 Calculate the Minimum, Maximum, MinimumActualTime and MaximumActualTime aggregates for the timeslice. More...
 
UaDataValue ComputeMinMax2 (TimeSlice &slice, int valueType, bool returnActualTime)
 Calculate the Minimum2, Maximum2, MinimumActualTime2, MaximumActualTime2 and Range2 aggregates for the timeslice. More...
 

Detailed Description

Calculates the value of minumim and maximum aggregates.

This class covers the aggregates Minimum, Maximum, MinimumActualTime, MaximumActualTime, Range, Minimum2, Maximum2, MinimumActualTime2, MaximumActualTime2 and Range2.

Constructor & Destructor Documentation

AggregateCalculatorMinMax::AggregateCalculatorMinMax ( UaNodeId  aggregateId,
UaDateTime  startTime,
UaDateTime  endTime,
double  processingInterval,
bool  stepped,
OpcUa_AggregateConfiguration configuration 
)

Initializes the aggregate calculator.

Parameters
aggregateIdThe aggregate function to apply.
startTimeThe start time.
endTimeThe end time.
processingIntervalThe processing interval.
steppedWhether to use stepped interpolation.
configurationThe aggregate configuration.

Member Function Documentation

UaDataValue AggregateCalculatorMinMax::ComputeMinMax ( TimeSlice slice,
int  valueType,
bool  returnActualTime 
)
protected

Calculate the Minimum, Maximum, MinimumActualTime and MaximumActualTime aggregates for the timeslice.

UaDataValue AggregateCalculatorMinMax::ComputeMinMax2 ( TimeSlice slice,
int  valueType,
bool  returnActualTime 
)
protected

Calculate the Minimum2, Maximum2, MinimumActualTime2, MaximumActualTime2 and Range2 aggregates for the timeslice.

UaDataValue AggregateCalculatorMinMax::ComputeValue ( TimeSlice slice)
protectedvirtual

Computes the value for the timeslice.

Reimplemented from AggregateCalculator.

AggregateCalculatorInterface * AggregateCalculatorMinMax::CreateCalculator ( UaNodeId  aggregateId,
UaDateTime  startTime,
UaDateTime  endTime,
double  processingInterval,
bool  stepped,
OpcUa_AggregateConfiguration configuration 
)
static

Used by the Aggregators factory to create a new instance of the aggregate calculator.

Parameters
aggregateIdThe aggregate function to apply.
startTimeThe start time.
endTimeThe end time.
processingIntervalThe processing interval.
steppedWhether to use stepped interpolation.
configurationThe aggregate configuration.
bool AggregateCalculatorMinMax::UsesInterpolatedBounds ( )
virtual

Indicates whether this aggregate uses Interpolated Bounding Values.

Returns
True if this aggregate uses Interpolated Bounding Values and false if it uses Simple Bounding Values.

Reimplemented from AggregateCalculator.


The documentation for this class was generated from the following files: