DataChangeFilter Class

class QOpcUaMonitoringParameters::DataChangeFilter

Defines a DataChangeFilter for a monitored item. More...

Public Types

enum class DataChangeTrigger { Status, StatusOrValue, StatusOrValueOrTimestamp }
enum class DeadbandType { None, Absolute, Percent }

Public Functions

DataChangeFilter(DataChangeFilter::DataChangeTrigger trigger, DataChangeFilter::DeadbandType deadbandType, double deadbandValue)
DataChangeFilter(const DataChangeFilter &rhs)
DataChangeFilter()
DataChangeFilter &operator=(const DataChangeFilter &rhs)
DataChangeFilter::DeadbandType deadbandType() const
double deadbandValue() const
void setDeadbandType(DataChangeFilter::DeadbandType deadbandType)
void setDeadbandValue(double deadbandValue)
void setTrigger(DataChangeFilter::DataChangeTrigger trigger)
DataChangeFilter::DataChangeTrigger trigger() const
QVariant operator QVariant() const
bool operator==(const DataChangeFilter &rhs) const

Detailed Description

This class is used to set up filtering for a DataChange monitored item. It is defined in OPC-UA part 4, 7.12.2.

Member Type Documentation

enum class DataChangeFilter::DataChangeTrigger

Enumerates the possible triggers for a DataChangeFilter.

ConstantValueDescription
QOpcUaMonitoringParameters::DataChangeFilter::DataChangeTrigger::Status0Triggers if the value's status code changes.
QOpcUaMonitoringParameters::DataChangeFilter::DataChangeTrigger::StatusOrValue1Triggers if the value's status code or the value itself changes.
QOpcUaMonitoringParameters::DataChangeFilter::DataChangeTrigger::StatusOrValueOrTimestamp2Triggers if the value's status code, the value itself or the source timestamp changes.

enum class DataChangeFilter::DeadbandType

Enumerates the possible deadband types for a DataChangeFilter.

ConstantValueDescription
QOpcUaMonitoringParameters::DataChangeFilter::DeadbandType::None0No deadband filtering.
QOpcUaMonitoringParameters::DataChangeFilter::DeadbandType::Absolute1A notification is generated if the absolute value of the difference between the last cached value and the current value is greater than the deadband value.
QOpcUaMonitoringParameters::DataChangeFilter::DeadbandType::Percent2Only valid for AnalogItems with an EURange property. A notification is generated if the absolute value of the difference between the last cached value and the current value is greater than value percent of the EURange.

Member Function Documentation

DataChangeFilter::DataChangeFilter(DataChangeFilter::DataChangeTrigger trigger, DataChangeFilter::DeadbandType deadbandType, double deadbandValue)

Constructs a data change filter with trigger trigger, deadband type deadbandType and deadband value deadbandValue.

DataChangeFilter::DataChangeFilter(const DataChangeFilter &rhs)

Constructs a data change filter from rhs.

DataChangeFilter::DataChangeFilter()

Constructs a data change filter with trigger on status, deadband type none and deadbandValue 0.

DataChangeFilter &DataChangeFilter::operator=(const DataChangeFilter &rhs)

Sets the values from rhs in this data change filter.

DataChangeFilter::DeadbandType DataChangeFilter::deadbandType() const

Returns the deadband type.

See also setDeadbandType().

double DataChangeFilter::deadbandValue() const

Returns the deadband value.

See also setDeadbandValue().

void DataChangeFilter::setDeadbandType(DataChangeFilter::DeadbandType deadbandType)

Sets the deadband type to deadbandType.

See also deadbandType().

void DataChangeFilter::setDeadbandValue(double deadbandValue)

Sets the deadband value to deadbandValue.

See also deadbandValue().

void DataChangeFilter::setTrigger(DataChangeFilter::DataChangeTrigger trigger)

Sets the trigger to trigger.

See also trigger().

DataChangeFilter::DataChangeTrigger DataChangeFilter::trigger() const

Returns the trigger.

See also setTrigger().

QVariant DataChangeFilter::operator QVariant() const

Converts this data change filter to QVariant.

bool DataChangeFilter::operator==(const DataChangeFilter &rhs) const

Returns true if this data change filter has the same value as rhs.

© 2023 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.