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

Calculates the value of the aggregates DurationGood, DurationBad, PercentGood, PercentBad, WorstQuality and WorstQuality2. More...

#include <aggregatecalculatorstatus.h>

Inherits AggregateCalculator.

Public Member Functions

 AggregateCalculatorStatus (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 ComputeDurationGoodBad (TimeSlice &slice, bool isBad, bool usePercent)
 Calculates the DurationGood and DurationBad aggregates for the timeslice. More...
 
UaDataValue ComputeWorstQuality (TimeSlice &slice, bool includeBounds)
 Calculates the worst status of the raw values for the timeslice. More...
 

Detailed Description

Calculates the value of the aggregates DurationGood, DurationBad, PercentGood, PercentBad, WorstQuality and WorstQuality2.

Constructor & Destructor Documentation

AggregateCalculatorStatus::AggregateCalculatorStatus ( 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 AggregateCalculatorStatus::ComputeDurationGoodBad ( TimeSlice slice,
bool  isBad,
bool  usePercent 
)
protected

Calculates the DurationGood and DurationBad aggregates for the timeslice.

UaDataValue AggregateCalculatorStatus::ComputeValue ( TimeSlice slice)
protectedvirtual

Computes the value for the timeslice.

Reimplemented from AggregateCalculator.

UaDataValue AggregateCalculatorStatus::ComputeWorstQuality ( TimeSlice slice,
bool  includeBounds 
)
protected

Calculates the worst status of the raw values for the timeslice.

AggregateCalculatorInterface * AggregateCalculatorStatus::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 AggregateCalculatorStatus::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: