1 #ifndef __UACALCITEM_H__ 2 #define __UACALCITEM_H__ 4 #include <opcua_basedatavariabletype.h> 8 #include "uadatetime.h" 9 #include "uadatavalue.h" 18 #define isnan(x) std::isnan(x) 22 #define isinf(x) std::isinf(x) 30 typedef ::xsd::cxx::tree::sequence< ITEM_type >
ITEM_sequence;
45 class UaCalcItem:
public UaControlVariable
67 virtual void calculateOnChange(Session *pSession,
const UaDataValue& dataValue, OpcUa_Boolean checkAccessLevel);
86 UaCalcItem(
const UaString&
name, UaNodeId& uaId,
const UaNode *parent,
110 m_var.insert(pair<string, UaControlVariable *>(
name, obd));
130 m_whenVar.insert(pair<string, UaControlVariable *>(
name, obd));
150 OpcUa_StatusCode ret = OpcUa_Good;
151 for (UaControlVariableMap::const_iterator vit = vs.begin(); vit != vs.end(); vit++)
154 ret = uac->value(0).statusCode();
156 if (ret != OpcUa_Good)