C++ Based OPC UA Client/Server/PubSub SDK
1.7.9.586
|
Interface for getting DataType information. More...
#include <uadatatypedefinition.h>
Inherited by NodeManagerUaNode, TypeDictionariesAccess, UaClientSdk::UaSession, and UaDataTypeDictionaryBase.
Public Types | |
enum | DefinitionType |
Enumeration that indicates the DataType definition type. | |
Interface for getting DataType information.
There are four main groups of OPC UA data types where this interface provides the necessary information for processing of the data types.
Simple data types are subtypes of built-in data types and are transported as the corresponding built-in data type.
Enumerations provide string representations of numeric values but the transport of the value is always done with the built-in data type Int32.
OptionSets are bit masks where the data type provides names for all valid bits in the bit mask. An OptionSet is either a sub-type of one of the UInteger built-in types (Byte, UInt16, UInt32, UInt64) or a sub-type of the OptionSet structure.
Structures are composed of an ordered list of fields where every field has a data type out or the four groups. Structures are transported in an ExtensionObject as byte blob (ByteString) and a type identifier.
|
pure virtual |
Returns the DefinitionType for the specified data type.
Is called by definitionType(const UaVariant &vValue) and definitionType(const UaExtensionObject &vValue).
Implemented in UaClientSdk::UaSession, NodeManagerUaNode, UaDataTypeDictionaryBase, and TypeDictionariesAccess.
UaDataTypeDictionary::DefinitionType UaDataTypeDictionary::definitionType | ( | const UaVariant & | vValue | ) |
Returns the UaDataTypeDictionary::DefinitionType of a variant.
Calls definitionType(const UaExtensionObject &vValue).
vValue | Shall have type ExtensionObject. |
UaDataTypeDictionary::DefinitionType UaDataTypeDictionary::definitionType | ( | const UaExtensionObject & | vValue | ) |
Returns the UaDataTypeDictionary::DefinitionType of an ExtensionObject.
Calls definitionType(const UaNodeId &dataTypeId).
vValue | If the body type of the ExtensionObject is not Binary or XML, UaDataTypeDictionary::DefinitionType_None is returned. |
|
pure virtual |
Returns the UaEnumDefinition for the specified data type.
Returns a null UaEnumDefinition if the data type is unknown or not an enumeration. Use UaEnumDefinition::isNull() to check for a null definition
Implemented in UaClientSdk::UaSession, NodeManagerUaNode, UaDataTypeDictionaryBase, and TypeDictionariesAccess.
|
pure virtual |
Returns the UaOptionSetDefinition for the specified data type.
Returns a null UaOptionSetDefinition if the data type is unknown or not an option set. Use UaOptionSetDefinition::isNull() to check for a null definition
Implemented in UaClientSdk::UaSession, NodeManagerUaNode, UaDataTypeDictionaryBase, and TypeDictionariesAccess.
|
virtual |
Returns the UaSimpleDefinition for a simple DataType.
The default implementation returns a null UaSimpleDefinition. The support for UaSimpleDefinition depends on the implementation of the used DataTypeDictionary.
dataTypeId | NodeId of the simple DataType. |
Reimplemented in UaClientSdk::UaSession, and UaDataTypeDictionaryBase.
|
pure virtual |
Returns the UaStructureDefinition for the specified data type.
Returns a null UaStructureDefinition if the data type is unknown or not a structure. Use UaStructureDefinition::isNull() to check for a null definition
Is called by structureDefinition(const UaVariant &vValue) and structureDefinition(const UaExtensionObject &vValue).
Implemented in UaClientSdk::UaSession, NodeManagerUaNode, UaDataTypeDictionaryBase, and TypeDictionariesAccess.
UaStructureDefinition UaDataTypeDictionary::structureDefinition | ( | const UaVariant & | vValue | ) |
Returns the UaStructureDefinition of a variant.
Calls structureDefinition(const UaExtensionObject &vValue).
vValue | If the type of the UaVariant is not ExtensionObject, an empty definition is returned. |
UaStructureDefinition UaDataTypeDictionary::structureDefinition | ( | const UaExtensionObject & | vValue | ) |
Returns the UaStructureDefinition of an ExtensionObject.
Calls structureDefinition(const UaNodeId &dataTypeId).
vValue | If the body type of the ExtensionObject is not Binary or XML, an empty definition is returned. |