QOpcUa Namespace

The QOpcUa namespace contains miscellaneous identifiers used throughout the Qt OPC UA library. More...

Header: #include <QOpcUa>

Namespaces

namespace NodeIds

Types

flags AccessLevel
enum class AccessLevelBit { None, CurrentRead, CurrentWrite, HistoryRead, HistoryWrite, …, TimestampWrite }
enum class AxisScale { Linear, Log, Ln }
enum class ErrorCategory { NoError, NodeError, AttributeError, PermissionError, ArgumentError, …, UnspecifiedError }
flags EventNotifier
enum class EventNotifierBit { None, SubscribeToEvents, HistoryRead, HistoryWrite }
enum class NodeAttribute { None, NodeId, NodeClass, BrowseName, DisplayName, …, DataTypeDefinition }
flags NodeAttributes
enum class NodeClass { Undefined, Object, Variable, Method, ObjectType, …, View }
flags NodeClasses
enum class ReferenceTypeId { Unspecified, References, NonHierarchicalReferences, HierarchicalReferences, HasChild, …, HasPushedSecurityGroup }
(since 6.7) enum class TimestampsToReturn { Source, Server, Both, Neither, Invalid }
TypedVariant
enum Types { Boolean, Int32, UInt32, Double, Float, …, Undefined }
enum UaStatusCode { Good, Uncertain, Bad, BadUnexpectedError, BadInternalError, …, BadDataSetIdInvalid }
flags WriteMask
enum class WriteMaskBit { None, AccessLevel, ArrayDimensions, BrowseName, ContainsNoLoops, …, ValueForVariableType }

Functions

QOpcUa::ErrorCategory errorCategory(QOpcUa::UaStatusCode statusCode)
(since QtOpcUa 5.14) bool isSecurePolicy(const QString &securityPolicy)
bool isSuccessStatus(QOpcUa::UaStatusCode statusCode)
QOpcUa::Types metaTypeToQOpcUaType(QMetaType::Type type)
QString namespace0Id(QOpcUa::NodeIds::Namespace0 id)
QOpcUa::NodeIds::Namespace0 namespace0IdFromNodeId(const QString &nodeId)
QString namespace0IdName(QOpcUa::NodeIds::Namespace0 id)
bool nodeIdEquals(const QString &first, const QString &second)
QString nodeIdFromByteString(quint16 ns, const QByteArray &identifier)
QString nodeIdFromGuid(quint16 ns, const QUuid &identifier)
QString nodeIdFromInteger(quint16 ns, quint32 identifier)
QString nodeIdFromReferenceType(QOpcUa::ReferenceTypeId referenceType)
QString nodeIdFromString(quint16 ns, const QString &identifier)
bool nodeIdStringSplit(const QString &nodeIdString, quint16 *nsIndex, QString *identifier, char *identifierType)
size_t qHash(const QOpcUa::NodeAttribute &attr)
QString statusToString(QOpcUa::UaStatusCode statusCode)

Detailed Description

Namespaces

namespace QOpcUa::NodeIds

Type Documentation

enum class QOpcUa::AccessLevelBit
flags QOpcUa::AccessLevel

This enum contains all possible bits for the AccessLevel and UserAccessLevel node attributes defined in OPC UA 1.05 part 3, 8.60.

ConstantValueDescription
QOpcUa::AccessLevelBit::None0No read access to the Value attribute is permitted.
QOpcUa::AccessLevelBit::CurrentRead(1 << 0)The current value can be read.
QOpcUa::AccessLevelBit::CurrentWrite(1 << 1)The current value can be written.
QOpcUa::AccessLevelBit::HistoryRead(1 << 2)The history of the value is readable.
QOpcUa::AccessLevelBit::HistoryWrite(1 << 3)The history of the value is writable.
QOpcUa::AccessLevelBit::SemanticChange(1 << 4)The property variable generates SemanticChangeEvents.
QOpcUa::AccessLevelBit::StatusWrite(1 << 5)The status code of the value is writable.
QOpcUa::AccessLevelBit::TimestampWrite(1 << 6)The SourceTimestamp is writable.

The AccessLevel type is a typedef for QFlags<AccessLevelBit>. It stores an OR combination of AccessLevelBit values.

enum class QOpcUa::AxisScale

The AxisScale enum as defined by OPC UA 1.05 part 8, 5.6.7.

ConstantValue
QOpcUa::AxisScale::Linear0
QOpcUa::AxisScale::Log1
QOpcUa::AxisScale::Ln2

enum class QOpcUa::ErrorCategory

This enum contains simplified categories for OPC UA errors.

ConstantValueDescription
QOpcUa::ErrorCategory::NoError0The operation has been successful.
QOpcUa::ErrorCategory::NodeError1There is a problem with the node, e. g. it does not exist.
QOpcUa::ErrorCategory::AttributeError2The attributes to operate on where invalid.
QOpcUa::ErrorCategory::PermissionError3The user did not have the permission to perform the operation.
QOpcUa::ErrorCategory::ArgumentError4The arguments supplied by the user were invalid or incomplete.
QOpcUa::ErrorCategory::TypeError5There has been a type mismatch for a write operation.
QOpcUa::ErrorCategory::ConnectionError6Communication with the server did not work as expected.
QOpcUa::ErrorCategory::UnspecifiedError7Any error that is not categorized. The detailed status code must be checked.

enum class QOpcUa::EventNotifierBit
flags QOpcUa::EventNotifier

This enum contains all possible bits for the EventNotifier node attribute defined in OPC UA 1.05 part 3, 8.59.

ConstantValueDescription
QOpcUa::EventNotifierBit::None0The node can't be used to interact with events.
QOpcUa::EventNotifierBit::SubscribeToEvents(1 << 0)A client can subscribe to events.
QOpcUa::EventNotifierBit::HistoryRead(1 << 2)A client can read the event history.
QOpcUa::EventNotifierBit::HistoryWrite(1 << 3)A client can write the event history.

The EventNotifier type is a typedef for QFlags<EventNotifierBit>. It stores an OR combination of EventNotifierBit values.

enum class QOpcUa::NodeAttribute
flags QOpcUa::NodeAttributes

This enum contains the 22 node attributes defined in OPC UA 1.05 part 3, 5.

ConstantValueDescription
QOpcUa::NodeAttribute::None0No node attribute.
QOpcUa::NodeAttribute::NodeId(1 << 0)Mandatory for all nodes. Contains the node's id in the OPC UA address space.
QOpcUa::NodeAttribute::NodeClass(1 << 1)Mandatory for all nodes. Contains the node id describing the node class of the node.
QOpcUa::NodeAttribute::BrowseName(1 << 2)Mandatory for all nodes. Contains a non-localized human readable name of the node.
QOpcUa::NodeAttribute::DisplayName(1 << 3)Mandatory for all nodes. Contains a localized human readable name for display purposes.
QOpcUa::NodeAttribute::Description(1 << 4)Contains a localized human readable description of the node.
QOpcUa::NodeAttribute::WriteMask(1 << 5)Contains a bit mask. Each bit corresponds to a writable attribute (OPC UA 1.05 part 3, 8.60).
QOpcUa::NodeAttribute::UserWriteMask(1 << 6)Same as WriteMask but for the current user.
QOpcUa::NodeAttribute::IsAbstract(1 << 7)True if the node is an abstract type which means that no nodes of this type shall exist.
QOpcUa::NodeAttribute::Symmetric(1 << 8)True if a reference's meaning is the same seen from both ends.
QOpcUa::NodeAttribute::InverseName(1 << 9)The localized inverse name of a reference (for example "HasSubtype" has the InverseName "SubtypeOf").
QOpcUa::NodeAttribute::ContainsNoLoops(1 << 10)True if there is no way to get back to a node following forward references in the current view.
QOpcUa::NodeAttribute::EventNotifier(1 << 11)Contains a bit mask used to indicate if subscribing to events and access to historic events is supported (OPC UA 1.05 part 3, 8.59).
QOpcUa::NodeAttribute::Value(1 << 12)The value of a Variable node.
QOpcUa::NodeAttribute::DataType(1 << 13)The NodeId of the Value attribute's data type (for example "ns=0;i=13" for DateTime, see https://opcfoundation.org/UA/schemas/1.05/NodeIds.csv).
QOpcUa::NodeAttribute::ValueRank(1 << 14)Contains information about the structure of the Value attribute (scalar/array) (OPC UA 1.05 part 3, 5.6.2).
QOpcUa::NodeAttribute::ArrayDimensions(1 << 15)An array containing the length for each dimension of a multi-dimensional array.
QOpcUa::NodeAttribute::AccessLevel(1 << 16)Contains a bit mask. Each bit corresponds to an access capability (OPC UA 1.05 part 3, 5.6.2).
QOpcUa::NodeAttribute::UserAccessLevel(1 << 17)Same as AccessLevel, but for the current user.
QOpcUa::NodeAttribute::MinimumSamplingInterval(1 << 18)Contains the shortest possible interval in which the server is able to sample the value.
QOpcUa::NodeAttribute::Historizing(1 << 19)True if historical data is collected.
QOpcUa::NodeAttribute::Executable(1 << 20)True if the node is currently executable. Only relevant for Method nodes.
QOpcUa::NodeAttribute::UserExecutable(1 << 21)Same as Executable, but for the current user.
QOpcUa::NodeAttribute::DataTypeDefinition (since Qt 6.7)(1 << 22)The data type definition attribute of a data type node.

The NodeAttributes type is a typedef for QFlags<NodeAttribute>. It stores an OR combination of NodeAttribute values.

enum class QOpcUa::NodeClass
flags QOpcUa::NodeClasses

This enum specifies the class a node belongs to. OPC UA specifies a fixed set of eight different classes.

ConstantValueDescription
QOpcUa::NodeClass::Undefined0The node class is not known. This is the case before the NodeClass attribute has been read on the server.
QOpcUa::NodeClass::Object1An Object node.
QOpcUa::NodeClass::Variable2A Variable node.
QOpcUa::NodeClass::Method4A Method node.
QOpcUa::NodeClass::ObjectType8An ObjectType node.
QOpcUa::NodeClass::VariableType16A VariableType node.
QOpcUa::NodeClass::ReferenceType32A ReferenceType node.
QOpcUa::NodeClass::DataType64A DataType node.
QOpcUa::NodeClass::View128A View node.

The NodeClasses type is a typedef for QFlags<NodeClass>. It stores an OR combination of NodeClass values.

enum class QOpcUa::ReferenceTypeId

This enum contains the reference types specified in OPC UA 1.05 part 3, 7. They are used to filter for a certain reference type in QOpcUaNode::browseChildren and for the reference type information in QOpcUaReferenceDescription.

ConstantValueDescription
QOpcUa::ReferenceTypeId::Unspecified0Not a valid reference type.
QOpcUa::ReferenceTypeId::References31The abstract base type for all references.
QOpcUa::ReferenceTypeId::NonHierarchicalReferences32The abstract base type for all non-hierarchical references.
QOpcUa::ReferenceTypeId::HierarchicalReferences33The abstract base type for all hierarchical references.
QOpcUa::ReferenceTypeId::HasChild34The abstract base type for all non-looping hierarchical references.
QOpcUa::ReferenceTypeId::Organizes35The type for hierarchical references that are used to organize nodes.
QOpcUa::ReferenceTypeId::HasEventSource36The type for non-looping hierarchical references that are used to organize event sources.
QOpcUa::ReferenceTypeId::HasModellingRule37The type for references from instance declarations to modelling rule nodes.
QOpcUa::ReferenceTypeId::HasEncoding38The type for references from data type nodes to to data type encoding nodes.
QOpcUa::ReferenceTypeId::HasDescription39The type for references from data type encoding nodes to data type description nodes.
QOpcUa::ReferenceTypeId::HasTypeDefinition40The type for references from a instance node to its type definition node.
QOpcUa::ReferenceTypeId::GeneratesEvent41The type for references from a node to an event type that is raised by node.
QOpcUa::ReferenceTypeId::Aggregates44The type for non-looping hierarchical references that are used to aggregate nodes into complex types.
QOpcUa::ReferenceTypeId::HasSubtype45The type for non-looping hierarchical references that are used to define sub types.
QOpcUa::ReferenceTypeId::HasProperty46The type for non-looping hierarchical reference from a node to its property.
QOpcUa::ReferenceTypeId::HasComponent47The type for non-looping hierarchical reference from a node to its component.
QOpcUa::ReferenceTypeId::HasNotifier48The type for non-looping hierarchical references that are used to indicate how events propagate from node to node.
QOpcUa::ReferenceTypeId::HasOrderedComponent49The type for non-looping hierarchical reference from a node to its component when the order of references matters.
QOpcUa::ReferenceTypeId::FromState51The type for a reference to the state before a transition.
QOpcUa::ReferenceTypeId::ToState52The type for a reference to the state after a transition.
QOpcUa::ReferenceTypeId::HasCause53The type for a reference to a method that can cause a transition to occur.
QOpcUa::ReferenceTypeId::HasEffect54The type for a reference to an event that may be raised when a transition occurs.
QOpcUa::ReferenceTypeId::HasHistoricalConfiguration56The type for a reference to the historical configuration for a data variable.
QOpcUa::ReferenceTypeId::HasSubStateMachine117The type for a reference to a substate for a state.
QOpcUa::ReferenceTypeId::HasArgumentDescription129The type for a reference to an argument description
QOpcUa::ReferenceTypeId::HasOptionalInputArgumentDescription131The type for a reference to an optional input argument description
QOpcUa::ReferenceTypeId::AlwaysGeneratesEvent3065The type for references from a node to an event type that is always raised by node.
QOpcUa::ReferenceTypeId::HasTrueSubState9004The type for references from a TRUE super state node to a subordinate state node.
QOpcUa::ReferenceTypeId::HasFalseSubState9005The type for references from a FALSE super state node to a subordinate state node.
QOpcUa::ReferenceTypeId::HasCondition9006The type for references from a ConditionSource node to a Condition.
QOpcUa::ReferenceTypeId::HasPubSubConnection14476The type for a reference to a PubSub connection
QOpcUa::ReferenceTypeId::DataSetToWriter14936The type for a reference to a data set writer
QOpcUa::ReferenceTypeId::HasGuard15112The type for a reference to a guard
QOpcUa::ReferenceTypeId::HasDataSetWriter15296The type for a reference to a data set writer
QOpcUa::ReferenceTypeId::HasDataSetReader15297The type for a reference to data set reader
QOpcUa::ReferenceTypeId::HasAlarmSuppressionGroup16361The type for a reference to an alarm suppression group
QOpcUa::ReferenceTypeId::AlarmGroupMember16362The type for a reference to an alarm group member
QOpcUa::ReferenceTypeId::HasEffectDisable17276The type for a reference to an alarm which is disabled by a transition
QOpcUa::ReferenceTypeId::HasDictionaryEntry17597The type for a reference to a dictionary entry
QOpcUa::ReferenceTypeId::HasInterface17603The type for a reference to an interface
QOpcUa::ReferenceTypeId::HasAddIn17604The type for a reference to an addin
QOpcUa::ReferenceTypeId::HasEffectEnable17983The type for a reference to an alarm which is enabled by a transition
QOpcUa::ReferenceTypeId::HasEffectSuppressed17984The type for a reference to an alarm which is suppressed by a transition
QOpcUa::ReferenceTypeId::HasEffectUnsuppressed17985The type for a reference to an alarm which is unsuppressed by a transition
QOpcUa::ReferenceTypeId::HasWriterGroup18804The type for a reference to a writer group
QOpcUa::ReferenceTypeId::HasReaderGroup18805The type for a reference to a reader group
QOpcUa::ReferenceTypeId::AliasFor23469The type for a reference to the node represented by an alias
QOpcUa::ReferenceTypeId::IsDeprecated23562The type for a reference to the information model where the starting node was first deprecated
QOpcUa::ReferenceTypeId::HasStructuredComponent24136Indicate that a VariableType or Variable also exposes its Structure fields as Variables in the information model
QOpcUa::ReferenceTypeId::AssociatedWith24137The type for a reference to indicate an association between two nodes
QOpcUa::ReferenceTypeId::UsesPriorityMappingTable25237The type for a reference to indicate usage of a priority mapping table
QOpcUa::ReferenceTypeId::HasLowerLayerInterface25238Virtual interfaces shall reference their physical interfaces with this reference type
QOpcUa::ReferenceTypeId::IsExecutableOn25253The type for a reference to relate a software component to its execution environment
QOpcUa::ReferenceTypeId::Controls25254Relates a controlling component to the components controlled by the controlling component
QOpcUa::ReferenceTypeId::Utilizes25255Relates a component to other components that are needed by the component in order to work
QOpcUa::ReferenceTypeId::Requires25256Relates a component to other components it requires in order to work
QOpcUa::ReferenceTypeId::IsPhysicallyConnectedTo25257Connects two components that are physically connected, without one being a subcomponent of the other
QOpcUa::ReferenceTypeId::RepresentsSameEntityAs25258The type for a reference to indicate that two nodes represent the same entity
QOpcUa::ReferenceTypeId::RepresentsSameHardwareAs25259The type for a reference to indicate that two nodes represent the same hardware
QOpcUa::ReferenceTypeId::RepresentsSameFunctionalityAs25260The type for a reference to indicate that two nodes represent the same functionality
QOpcUa::ReferenceTypeId::IsHostedBy25261Relates functionality represented by an OPC UA Node to the hardware and software needed to provide the functionality
QOpcUa::ReferenceTypeId::HasPhysicalComponent25262Relates a hardware component to its subcomponent, which is also a hardware component
QOpcUa::ReferenceTypeId::HasContainedComponent25263Relates a hardware component to its subcomponent that is inside the component.
QOpcUa::ReferenceTypeId::HasAttachedComponent25264Indicates that the subcomponent is attached to the component
QOpcUa::ReferenceTypeId::IsExecutingOn25265The type for a reference to relate a software component to its current execution environment
QOpcUa::ReferenceTypeId::HasPushedSecurityGroup25345The type for a reference to a pushed security group

[since 6.7] enum class QOpcUa::TimestampsToReturn

This enum contains the options for timestamps to return for service calls. It is specified in OPC UA 1.05, Part 4, 7.40.

ConstantValueDescription
QOpcUa::TimestampsToReturn::Source0Return the source timestamp
QOpcUa::TimestampsToReturn::Server1Return the server timestamp
QOpcUa::TimestampsToReturn::Both2Return the source and the server timestamp
QOpcUa::TimestampsToReturn::Neither4Return no timestamps
QOpcUa::TimestampsToReturn::Invalid5The invalid value specified by OPC UA

This enum was introduced in Qt 6.7.

QOpcUa::TypedVariant

This is QPair<QVariant, QOpcUa::Types>.

enum QOpcUa::Types

Enumerates the types supported by Qt OPC UA.

ConstantValueDescription
QOpcUa::Boolean0 
QOpcUa::Int321 
QOpcUa::UInt322 
QOpcUa::Double3 
QOpcUa::Float4 
QOpcUa::String5 
QOpcUa::LocalizedText6 
QOpcUa::DateTime7 
QOpcUa::UInt168 
QOpcUa::Int169 
QOpcUa::UInt6410 
QOpcUa::Int6411 
QOpcUa::Byte12 
QOpcUa::SByte13 
QOpcUa::ByteString14 
QOpcUa::XmlElement15 
QOpcUa::NodeId16 
QOpcUa::Guid17 
QOpcUa::QualifiedName18A name qualified by an OPC UA namespace index.
QOpcUa::StatusCode19 
QOpcUa::ExtensionObject20A data structure which contains a serialized object.
QOpcUa::Range21A range composed from the two double values low and high.
QOpcUa::EUInformation22The unit of measurement for an analog value.
QOpcUa::ComplexNumber23The OPC UA ComplexNumber type.
QOpcUa::DoubleComplexNumber24The OPC UA DoubleComplexNumber type.
QOpcUa::AxisInformation25Information about an axis.
QOpcUa::XV26A float value with a double precision position on an axis.
QOpcUa::ExpandedNodeId27A node id with additional namespace URI and server index.
QOpcUa::Argument28The OPC UA Argument type.
QOpcUa::StructureDefinition29The OPC UA StructureDefinition type
QOpcUa::StructureField30The OPC UA StructureField type
QOpcUa::EnumDefinition31The OPC UA EnumDefinition type
QOpcUa::EnumField32The OPC UA EnumField type
QOpcUa::DiagnosticInfo33The OPC UA DiagnosticInfo type
QOpcUa::SimpleAttributeOperand34The OPC UA SimpleAttributeOperand type.
QOpcUa::AttributeOperand35The OPC UA AttributeOperand type.
QOpcUa::LiteralOperand36The OPC UA LiteralOperand type.
QOpcUa::ElementOperand37The OPC UA ElementOperand type.
QOpcUa::RelativePathElement38The OPC UA RelativePathElement type.
QOpcUa::ContentFilterElement39The OPC UA ContentFilterElement type.
QOpcUa::EventFilter40The OPC UA EventFilter type.
QOpcUa::Undefined0xFFFFFFFF 

enum QOpcUa::UaStatusCode

Enumerates all status codes from https://opcfoundation.org/UA/schemas/1.05/Opc.Ua.StatusCodes.csv

ConstantValueDescription
QOpcUa::Good0x00000000The operation succeeded.
QOpcUa::Uncertain0x40000000The operation was uncertain.
QOpcUa::Bad0x80000000The operation failed.
QOpcUa::BadUnexpectedError0x80010000An unexpected error occurred.
QOpcUa::BadInternalError0x80020000An internal error occurred as a result of a programming or configuration error.
QOpcUa::BadOutOfMemory0x80030000Not enough memory to complete the operation.
QOpcUa::BadResourceUnavailable0x80040000An operating system resource is not available.
QOpcUa::BadCommunicationError0x80050000A low level communication error occurred.
QOpcUa::BadEncodingError0x80060000Encoding halted because of invalid data in the objects being serialized.
QOpcUa::BadDecodingError0x80070000Decoding halted because of invalid data in the stream.
QOpcUa::BadEncodingLimitsExceeded0x80080000The message encoding/decoding limits imposed by the stack have been exceeded.
QOpcUa::BadRequestTooLarge0x80B80000The request message size exceeds limits set by the server.
QOpcUa::BadResponseTooLarge0x80B90000The response message size exceeds limits set by the client.
QOpcUa::BadUnknownResponse0x80090000An unrecognized response was received from the server.
QOpcUa::BadTimeout0x800A0000The operation timed out.
QOpcUa::BadServiceUnsupported0x800B0000The server does not support the requested service.
QOpcUa::BadShutdown0x800C0000The operation was cancelled because the application is shutting down.
QOpcUa::BadServerNotConnected0x800D0000The operation could not complete because the client is not connected to the server.
QOpcUa::BadServerHalted0x800E0000The server has stopped and cannot process any requests.
QOpcUa::BadNothingToDo0x800F0000No processing could be done because there was nothing to do.
QOpcUa::BadTooManyOperations0x80100000The request could not be processed because it specified too many operations.
QOpcUa::BadTooManyMonitoredItems0x80DB0000The request could not be processed because there are too many monitored items in the subscription.
QOpcUa::BadDataTypeIdUnknown0x80110000The extension object cannot be (de)serialized because the data type id is not recognized.
QOpcUa::BadCertificateInvalid0x80120000The certificate provided as a parameter is not valid.
QOpcUa::BadSecurityChecksFailed0x80130000An error occurred verifying security.
QOpcUa::BadCertificatePolicyCheckFailed0x81140000The certificate does not meet the requirements of the security policy.
QOpcUa::BadCertificateTimeInvalid0x80140000The certificate has expired or is not yet valid.
QOpcUa::BadCertificateIssuerTimeInvalid0x80150000An issuer certificate has expired or is not yet valid.
QOpcUa::BadCertificateHostNameInvalid0x80160000The HostName used to connect to a server does not match a HostName in the certificate.
QOpcUa::BadCertificateUriInvalid0x80170000The URI specified in the ApplicationDescription does not match the URI in the certificate.
QOpcUa::BadCertificateUseNotAllowed0x80180000The certificate may not be used for the requested operation.
QOpcUa::BadCertificateIssuerUseNotAllowed0x80190000The issuer certificate may not be used for the requested operation.
QOpcUa::BadCertificateUntrusted0x801A0000The certificate is not trusted.
QOpcUa::BadCertificateRevocationUnknown0x801B0000It was not possible to determine if the certificate has been revoked.
QOpcUa::BadCertificateIssuerRevocationUnknown0x801C0000It was not possible to determine if the issuer certificate has been revoked.
QOpcUa::BadCertificateRevoked0x801D0000The certificate has been revoked.
QOpcUa::BadCertificateIssuerRevoked0x801E0000The issuer certificate has been revoked.
QOpcUa::BadCertificateChainIncomplete0x810D0000The certificate chain is incomplete.
QOpcUa::BadUserAccessDenied0x801F0000User does not have permission to perform the requested operation.
QOpcUa::BadIdentityTokenInvalid0x80200000The user identity token is not valid.
QOpcUa::BadIdentityTokenRejected0x80210000The user identity token is valid but the server has rejected it.
QOpcUa::BadSecureChannelIdInvalid0x80220000The specified secure channel is no longer valid.
QOpcUa::BadInvalidTimestamp0x80230000The timestamp is outside the range allowed by the server.
QOpcUa::BadNonceInvalid0x80240000The nonce does appear to be not a random value or it is not the correct length.
QOpcUa::BadSessionIdInvalid0x80250000The session id is not valid.
QOpcUa::BadSessionClosed0x80260000The session was closed by the client.
QOpcUa::BadSessionNotActivated0x80270000The session cannot be used because ActivateSession has not been called.
QOpcUa::BadSubscriptionIdInvalid0x80280000The subscription id is not valid.
QOpcUa::BadRequestHeaderInvalid0x802A0000The header for the request is missing or invalid.
QOpcUa::BadTimestampsToReturnInvalid0x802B0000The timestamps to return parameter is invalid.
QOpcUa::BadRequestCancelledByClient0x802C0000The request was cancelled by the client.
QOpcUa::BadTooManyArguments0x80E50000Too many arguments were provided.
QOpcUa::BadLicenseExpired0x810E0000The server requires a license to operate in general or to perform a service or operation, but existing license is expired.
QOpcUa::BadLicenseLimitsExceeded0x810F0000The server has limits on number of allowed operations / objects, based on installed licenses, and these limits where exceeded.
QOpcUa::BadLicenseNotAvailable0x81100000The server does not have a license which is required to operate in general or to perform a service or operation.
QOpcUa::GoodSubscriptionTransferred0x002D0000The subscription was transferred to another session.
QOpcUa::GoodCompletesAsynchronously0x002E0000The processing will complete asynchronously.
QOpcUa::GoodOverload0x002F0000Sampling has slowed down due to resource limitations.
QOpcUa::GoodClamped0x00300000The value written was accepted but was clamped.
QOpcUa::BadNoCommunication0x80310000Communication with the data source is defined, but not established, and there is no last known value available.
QOpcUa::BadWaitingForInitialData0x80320000Waiting for the server to obtain values from the underlying data source.
QOpcUa::BadNodeIdInvalid0x80330000The syntax of the node id is not valid.
QOpcUa::BadNodeIdUnknown0x80340000The node id refers to a node that does not exist in the server address space.
QOpcUa::BadAttributeIdInvalid0x80350000The attribute is not supported for the specified Node.
QOpcUa::BadIndexRangeInvalid0x80360000The syntax of the index range parameter is invalid.
QOpcUa::BadIndexRangeNoData0x80370000No data exists within the range of indexes specified.
QOpcUa::BadDataEncodingInvalid0x80380000The data encoding is invalid.
QOpcUa::BadDataEncodingUnsupported0x80390000The server does not support the requested data encoding for the node.
QOpcUa::BadNotReadable0x803A0000The access level does not allow reading or subscribing to the Node.
QOpcUa::BadNotWritable0x803B0000The access level does not allow writing to the Node.
QOpcUa::BadOutOfRange0x803C0000The value was out of range.
QOpcUa::BadNotSupported0x803D0000The requested operation is not supported.
QOpcUa::BadNotFound0x803E0000A requested item was not found or a search operation ended without success.
QOpcUa::BadObjectDeleted0x803F0000The object cannot be used because it has been deleted.
QOpcUa::BadNotImplemented0x80400000Requested operation is not implemented.
QOpcUa::BadMonitoringModeInvalid0x80410000The monitoring mode is invalid.
QOpcUa::BadMonitoredItemIdInvalid0x80420000The monitoring item id does not refer to a valid monitored item.
QOpcUa::BadMonitoredItemFilterInvalid0x80430000The monitored item filter parameter is not valid.
QOpcUa::BadMonitoredItemFilterUnsupported0x80440000The server does not support the requested monitored item filter.
QOpcUa::BadFilterNotAllowed0x80450000A monitoring filter cannot be used in combination with the attribute specified.
QOpcUa::BadStructureMissing0x80460000A mandatory structured parameter was missing or null.
QOpcUa::BadEventFilterInvalid0x80470000The event filter is not valid.
QOpcUa::BadContentFilterInvalid0x80480000The content filter is not valid.
QOpcUa::BadFilterOperatorInvalid0x80C10000An unrecognized operator was provided in a filter.
QOpcUa::BadFilterOperatorUnsupported0x80C20000A valid operator was provided, but the server does not provide support for this filter operator.
QOpcUa::BadFilterOperandCountMismatch0x80C30000The number of operands provided for the filter operator was less then expected for the operand provided.
QOpcUa::BadFilterOperandInvalid0x80490000The operand used in a content filter is not valid.
QOpcUa::BadFilterElementInvalid0x80C40000The referenced element is not a valid element in the content filter.
QOpcUa::BadFilterLiteralInvalid0x80C50000The referenced literal is not a valid value.
QOpcUa::BadContinuationPointInvalid0x804A0000The continuation point provide is longer valid.
QOpcUa::BadNoContinuationPoints0x804B0000The operation could not be processed because all continuation points have been allocated.
QOpcUa::BadReferenceTypeIdInvalid0x804C0000The reference type id does not refer to a valid reference type node.
QOpcUa::BadBrowseDirectionInvalid0x804D0000The browse direction is not valid.
QOpcUa::BadNodeNotInView0x804E0000The node is not part of the view.
QOpcUa::BadNumericOverflow0x81120000The number was not accepted because of a numeric overflow.
QOpcUa::BadServerUriInvalid0x804F0000The ServerUri is not a valid URI.
QOpcUa::BadServerNameMissing0x80500000No ServerName was specified.
QOpcUa::BadDiscoveryUrlMissing0x80510000No DiscoveryUrl was specified.
QOpcUa::BadSempahoreFileMissing0x80520000The semaphore file specified by the client is not valid.
QOpcUa::BadRequestTypeInvalid0x80530000The security token request type is not valid.
QOpcUa::BadSecurityModeRejected0x80540000The security mode does not meet the requirements set by the server.
QOpcUa::BadSecurityPolicyRejected0x80550000The security policy does not meet the requirements set by the server.
QOpcUa::BadTooManySessions0x80560000The server has reached its maximum number of sessions.
QOpcUa::BadUserSignatureInvalid0x80570000The user token signature is missing or invalid.
QOpcUa::BadApplicationSignatureInvalid0x80580000The signature generated with the client certificate is missing or invalid.
QOpcUa::BadNoValidCertificates0x80590000The client did not provide at least one software certificate that is valid and meets the profile requirements for the server.
QOpcUa::BadIdentityChangeNotSupported0x80C60000The server does not support changing the user identity assigned to the session.
QOpcUa::BadRequestCancelledByRequest0x805A0000The request was cancelled by the client with the Cancel service.
QOpcUa::BadParentNodeIdInvalid0x805B0000The parent node id does not to refer to a valid node.
QOpcUa::BadReferenceNotAllowed0x805C0000The reference could not be created because it violates constraints imposed by the data model.
QOpcUa::BadNodeIdRejected0x805D0000The requested node id was reject because it was either invalid or server does not allow node ids to be specified by the client.
QOpcUa::BadNodeIdExists0x805E0000The requested node id is already used by another node.
QOpcUa::BadNodeClassInvalid0x805F0000The node class is not valid.
QOpcUa::BadBrowseNameInvalid0x80600000The browse name is invalid.
QOpcUa::BadBrowseNameDuplicated0x80610000The browse name is not unique among nodes that share the same relationship with the parent.
QOpcUa::BadNodeAttributesInvalid0x80620000The node attributes are not valid for the node class.
QOpcUa::BadTypeDefinitionInvalid0x80630000The type definition node id does not reference an appropriate type node.
QOpcUa::BadSourceNodeIdInvalid0x80640000The source node id does not reference a valid node.
QOpcUa::BadTargetNodeIdInvalid0x80650000The target node id does not reference a valid node.
QOpcUa::BadDuplicateReferenceNotAllowed0x80660000The reference type between the nodes is already defined.
QOpcUa::BadInvalidSelfReference0x80670000The server does not allow this type of self reference on this node.
QOpcUa::BadReferenceLocalOnly0x80680000The reference type is not valid for a reference to a remote server.
QOpcUa::BadNoDeleteRights0x80690000The server will not allow the node to be deleted.
QOpcUa::UncertainReferenceNotDeleted0x40BC0000The server was not able to delete all target references.
QOpcUa::BadServerIndexInvalid0x806A0000The server index is not valid.
QOpcUa::BadViewIdUnknown0x806B0000The view id does not refer to a valid view node.
QOpcUa::BadViewTimestampInvalid0x80C90000The view timestamp is not available or not supported.
QOpcUa::BadViewParameterMismatch0x80CA0000The view parameters are not consistent with each other.
QOpcUa::BadViewVersionInvalid0x80CB0000The view version is not available or not supported.
QOpcUa::UncertainNotAllNodesAvailable0x40C00000The list of references may not be complete because the underlying system is not available.
QOpcUa::GoodResultsMayBeIncomplete0x00BA0000The server should have followed a reference to a node in a remote server but did not. The result set may be incomplete.
QOpcUa::BadNotTypeDefinition0x80C80000The provided Nodeid was not a type definition nodeid.
QOpcUa::UncertainReferenceOutOfServer0x406C0000One of the references to follow in the relative path references to a node in the address space in another server.
QOpcUa::BadTooManyMatches0x806D0000The requested operation has too many matches to return.
QOpcUa::BadQueryTooComplex0x806E0000The requested operation requires too many resources in the server.
QOpcUa::BadNoMatch0x806F0000The requested operation has no match to return.
QOpcUa::BadMaxAgeInvalid0x80700000The max age parameter is invalid.
QOpcUa::BadSecurityModeInsufficient0x80E60000The operation is not permitted over the current secure channel.
QOpcUa::BadHistoryOperationInvalid0x80710000The history details parameter is not valid.
QOpcUa::BadHistoryOperationUnsupported0x80720000The server does not support the requested operation.
QOpcUa::BadInvalidTimestampArgument0x80BD0000The defined timestamp to return was invalid.
QOpcUa::BadWriteNotSupported0x80730000The server does not support writing the combination of value, status and timestamps provided.
QOpcUa::BadTypeMismatch0x80740000The value supplied for the attribute is not of the same type as the attribute's value.
QOpcUa::BadMethodInvalid0x80750000The method id does not refer to a method for the specified object.
QOpcUa::BadArgumentsMissing0x80760000The client did not specify all of the input arguments for the method.
QOpcUa::BadNotExecutable0x81110000The executable attribute does not allow the execution of the method.
QOpcUa::BadTooManySubscriptions0x80770000The server has reached its maximum number of subscriptions.
QOpcUa::BadTooManyPublishRequests0x80780000The server has reached the maximum number of queued publish requests.
QOpcUa::BadNoSubscription0x80790000There is no subscription available for this session.
QOpcUa::BadSequenceNumberUnknown0x807A0000The sequence number is unknown to the server.
QOpcUa::GoodRetransmissionQueueNotSupported0x00DF0000The Server does not support retransmission queue and acknowledgement of sequence numbers is not available.
QOpcUa::BadMessageNotAvailable0x807B0000The requested notification message is no longer available.
QOpcUa::BadInsufficientClientProfile0x807C0000The client of the current session does not support one or more Profiles that are necessary for the subscription.
QOpcUa::BadStateNotActive0x80BF0000The sub-state machine is not currently active.
QOpcUa::BadAlreadyExists0x81150000An equivalent rule already exists.
QOpcUa::BadTcpServerTooBusy0x807D0000The server cannot process the request because it is too busy.
QOpcUa::BadTcpMessageTypeInvalid0x807E0000The type of the message specified in the header invalid.
QOpcUa::BadTcpSecureChannelUnknown0x807F0000The SecureChannelId and/or TokenId are not currently in use.
QOpcUa::BadTcpMessageTooLarge0x80800000The size of the message chunk specified in the header is too large.
QOpcUa::BadTcpNotEnoughResources0x80810000There are not enough resources to process the request.
QOpcUa::BadTcpInternalError0x80820000An internal error occurred.
QOpcUa::BadTcpEndpointUrlInvalid0x80830000The server does not recognize the QueryString specified.
QOpcUa::BadRequestInterrupted0x80840000The request could not be sent because of a network interruption.
QOpcUa::BadRequestTimeout0x80850000Timeout occurred while processing the request.
QOpcUa::BadSecureChannelClosed0x80860000The secure channel has been closed.
QOpcUa::BadSecureChannelTokenUnknown0x80870000The token has expired or is not recognized.
QOpcUa::BadSequenceNumberInvalid0x80880000The sequence number is not valid.
QOpcUa::BadProtocolVersionUnsupported0x80BE0000The applications do not have compatible protocol versions.
QOpcUa::BadConfigurationError0x80890000There is a problem with the configuration that affects the usefulness of the value.
QOpcUa::BadNotConnected0x808A0000The variable should receive its value from another variable, but has never been configured to do so.
QOpcUa::BadDeviceFailure0x808B0000There has been a failure in the device/data source that generates the value that has affected the value.
QOpcUa::BadSensorFailure0x808C0000There has been a failure in the sensor from which the value is derived by the device/data source.
QOpcUa::BadOutOfService0x808D0000The source of the data is not operational.
QOpcUa::BadDeadbandFilterInvalid0x808E0000The deadband filter is not valid.
QOpcUa::UncertainNoCommunicationLastUsableValue0x408F0000Communication to the data source has failed. The variable value is the last value that had a good quality.
QOpcUa::UncertainLastUsableValue0x40900000Whatever was updating this value has stopped doing so.
QOpcUa::UncertainSubstituteValue0x40910000The value is an operational value that was manually overwritten.
QOpcUa::UncertainInitialValue0x40920000The value is an initial value for a variable that normally receives its value from another variable.
QOpcUa::UncertainSensorNotAccurate0x40930000The value is at one of the sensor limits.
QOpcUa::UncertainEngineeringUnitsExceeded0x40940000The value is outside of the range of values defined for this parameter.
QOpcUa::UncertainSubNormal0x40950000The value is derived from multiple sources and has less than the required number of Good sources.
QOpcUa::GoodLocalOverride0x00960000The value has been overridden.
QOpcUa::BadRefreshInProgress0x80970000This Condition refresh failed, a Condition refresh operation is already in progress.
QOpcUa::BadConditionAlreadyDisabled0x80980000This condition has already been disabled.
QOpcUa::BadConditionAlreadyEnabled0x80CC0000This condition has already been enabled.
QOpcUa::BadConditionDisabled0x80990000Property not available, this condition is disabled.
QOpcUa::BadEventIdUnknown0x809A0000The specified event id is not recognized.
QOpcUa::BadEventNotAcknowledgeable0x80BB0000The event cannot be acknowledged.
QOpcUa::BadDialogNotActive0x80CD0000The dialog condition is not active.
QOpcUa::BadDialogResponseInvalid0x80CE0000The response is not valid for the dialog.
QOpcUa::BadConditionBranchAlreadyAcked0x80CF0000The condition branch has already been acknowledged.
QOpcUa::BadConditionBranchAlreadyConfirmed0x80D00000The condition branch has already been confirmed.
QOpcUa::BadConditionAlreadyShelved0x80D10000The condition has already been shelved.
QOpcUa::BadConditionNotShelved0x80D20000The condition is not currently shelved.
QOpcUa::BadShelvingTimeOutOfRange0x80D30000The shelving time not within an acceptable range.
QOpcUa::BadNoData0x809B0000No data exists for the requested time range or event filter.
QOpcUa::BadBoundNotFound0x80D70000No data found to provide upper or lower bound value.
QOpcUa::BadBoundNotSupported0x80D80000The server cannot retrieve a bound for the variable.
QOpcUa::BadDataLost0x809D0000Data is missing due to collection started/stopped/lost.
QOpcUa::BadDataUnavailable0x809E0000Expected data is unavailable for the requested time range due to an un-mounted volume, an off-line archive or tape, or similar reason for temporary unavailability.
QOpcUa::BadEntryExists0x809F0000The data or event was not successfully inserted because a matching entry exists.
QOpcUa::BadNoEntryExists0x80A00000The data or event was not successfully updated because no matching entry exists.
QOpcUa::BadTimestampNotSupported0x80A10000The client requested history using a timestamp format the server does not support (i.e requested ServerTimestamp when server only supports SourceTimestamp).
QOpcUa::GoodEntryInserted0x00A20000The data or event was successfully inserted into the historical database.
QOpcUa::GoodEntryReplaced0x00A30000The data or event field was successfully replaced in the historical database.
QOpcUa::UncertainDataSubNormal0x40A40000The value is derived from multiple values and has less than the required number of Good values.
QOpcUa::GoodNoData0x00A50000No data exists for the requested time range or event filter.
QOpcUa::GoodMoreData0x00A60000The data or event field was successfully replaced in the historical database.
QOpcUa::BadAggregateListMismatch0x80D40000The requested number of Aggregates does not match the requested number of NodeIds.
QOpcUa::BadAggregateNotSupported0x80D50000The requested Aggregate is not support by the server.
QOpcUa::BadAggregateInvalidInputs0x80D60000The aggregate value could not be derived due to invalid data inputs.
QOpcUa::BadAggregateConfigurationRejected0x80DA0000The aggregate configuration is not valid for specified node.
QOpcUa::GoodDataIgnored0x00D90000The request specifies fields which are not valid for the EventType or cannot be saved by the historian.
QOpcUa::BadRequestNotAllowed0x80E40000The request was rejected by the server because it did not meet the criteria set by the server.
QOpcUa::BadRequestNotComplete0x81130000The request has not been processed by the server yet.
QOpcUa::BadTicketRequired0x811F0000The device identity needs a ticket before it can be accepted.
QOpcUa::BadTicketInvalid0x81200000The device identity needs a ticket before it can be accepted.
QOpcUa::GoodEdited0x00DC0000The value does not come from the real source and has been edited by the server.
QOpcUa::GoodPostActionFailed0x00DD0000There was an error in execution of these post-actions.
QOpcUa::UncertainDominantValueChanged0x40DE0000The related EngineeringUnit has been changed but the Variable Value is still provided based on the previous unit.
QOpcUa::GoodDependentValueChanged0x00E00000A dependent value has been changed but the change has not been applied to the device.
QOpcUa::BadDominantValueChanged0x80E10000The related EngineeringUnit has been changed but this change has not been applied to the device. The Variable Value is still dependent on the previous unit but its status is currently Bad.
QOpcUa::UncertainDependentValueChanged0x40E20000A dependent value has been changed but the change has not been applied to the device. The quality of the dominant variable is uncertain.
QOpcUa::BadDependentValueChanged0x80E30000A dependent value has been changed but the change has not been applied to the device. The quality of the dominant variable is Bad.
QOpcUa::GoodEdited_DependentValueChanged0x01160000It is delivered with a dominant Variable value when a dependent Variable has changed but the change has not been applied.
QOpcUa::GoodEdited_DominantValueChanged0x01170000It is delivered with a dependent Variable value when a dominant Variable has changed but the change has not been applied.
QOpcUa::GoodEdited_DominantValueChanged_DependentValueChanged0x01180000It is delivered with a dependent Variable value when a dominant or dependent Variable has changed but change has not been applied.
QOpcUa::BadEdited_OutOfRange0x81190000It is delivered with a Variable value when Variable has changed but the value is not legal.
QOpcUa::BadInitialValue_OutOfRange0x811A0000It is delivered with a Variable value when a source Variable has changed but the value is not legal.
QOpcUa::BadOutOfRange_DominantValueChanged0x811B0000It is delivered with a dependent Variable value when a dominant Variable has changed and the value is not legal.
QOpcUa::BadEdited_OutOfRange_DominantValueChanged0x811C0000It is delivered with a dependent Variable value when a dominant Variable has changed, the value is not legal and the change has not been applied.
QOpcUa::BadOutOfRange_DominantValueChanged_DependentValueChanged0x811D0000It is delivered with a dependent Variable value when a dominant or dependent Variable has changed and the value is not legal.
QOpcUa::BadEdited_OutOfRange_DominantValueChanged_DependentValueChanged0x811E0000It is delivered with a dependent Variable value when a dominant or dependent Variable has changed, the value is not legal and the change has not been applied.
QOpcUa::GoodCommunicationEvent0x00A70000The communication layer has raised an event.
QOpcUa::GoodShutdownEvent0x00A80000The system is shutting down.
QOpcUa::GoodCallAgain0x00A90000The operation is not finished and needs to be called again.
QOpcUa::GoodNonCriticalTimeout0x00AA0000A non-critical timeout occurred.
QOpcUa::BadInvalidArgument0x80AB0000One or more arguments are invalid.
QOpcUa::BadConnectionRejected0x80AC0000Could not establish a network connection to remote server.
QOpcUa::BadDisconnect0x80AD0000The server has disconnected from the client.
QOpcUa::BadConnectionClosed0x80AE0000The network connection has been closed.
QOpcUa::BadInvalidState0x80AF0000The operation cannot be completed because the object is closed, uninitialized or in some other invalid state.
QOpcUa::BadEndOfStream0x80B00000Cannot move beyond end of the stream.
QOpcUa::BadNoDataAvailable0x80B10000No data is currently available for reading from a non-blocking stream.
QOpcUa::BadWaitingForResponse0x80B20000The asynchronous operation is waiting for a response.
QOpcUa::BadOperationAbandoned0x80B30000The asynchronous operation was abandoned by the caller.
QOpcUa::BadExpectedStreamToBlock0x80B40000The stream did not return all data requested (possibly because it is a non-blocking stream).
QOpcUa::BadWouldBlock0x80B50000Non blocking behaviour is required and the operation would block.
QOpcUa::BadSyntaxError0x80B60000A value had an invalid syntax.
QOpcUa::BadMaxConnectionsReached0x80B70000The operation could not be finished because all available connections are in use.
QOpcUa::UncertainTransducerInManual0x42080000The value may not be accurate because the transducer is in manual mode.
QOpcUa::UncertainSimulatedValue0x42090000The value is simulated.
QOpcUa::UncertainSensorCalibration0x420A0000The value may not be accurate due to a sensor calibration fault.
QOpcUa::UncertainConfigurationError0x420F0000The value may not be accurate due to a configuration issue.
QOpcUa::GoodCascadeInitializationAcknowledged0x04010000The value source supports cascade handshaking and the value has been Initialized based on an initialization request from a cascade secondary.
QOpcUa::GoodCascadeInitializationRequest0x04020000The value source supports cascade handshaking and is requesting initialization of a cascade primary.
QOpcUa::GoodCascadeNotInvited0x04030000The value source supports cascade handshaking, however, the source’s current state does not allow for cascade.
QOpcUa::GoodCascadeNotSelected0x04040000The value source supports cascade handshaking, however, the source has not selected the corresponding cascade primary for use.
QOpcUa::GoodFaultStateActive0x04070000There is a fault state condition active in the value source.
QOpcUa::GoodInitiateFaultState0x04080000A fault state condition is being requested of the destination.
QOpcUa::GoodCascade0x04090000The value is accurate, and the signal source supports cascade handshaking.
QOpcUa::BadDataSetIdInvalid0x80E70000The DataSet specified for the DataSetWriter creation is invalid.

enum class QOpcUa::WriteMaskBit
flags QOpcUa::WriteMask

This enum contains all possible bits for the WriteMask and UserWriteMask node attributes defined in OPC UA 1.05 part 3, 8.60.

ConstantValueDescription
QOpcUa::WriteMaskBit::None0No attribute is writable.
QOpcUa::WriteMaskBit::AccessLevel(1 << 0)The AccessLevel attribute is writable.
QOpcUa::WriteMaskBit::ArrayDimensions(1 << 1)The ArrayDimensions attribute is writable.
QOpcUa::WriteMaskBit::BrowseName(1 << 2)The BrowseName attribute is writable.
QOpcUa::WriteMaskBit::ContainsNoLoops(1 << 3)The ContainsNoLoops attribute is writable.
QOpcUa::WriteMaskBit::DataType(1 << 4)The DataType attribute is writable.
QOpcUa::WriteMaskBit::Description(1 << 5)The Description attribute is writable.
QOpcUa::WriteMaskBit::DisplayName(1 << 6)The DisplayName attribute is writable.
QOpcUa::WriteMaskBit::EventNotifier(1 << 7)The EventNotifier attribute is writable.
QOpcUa::WriteMaskBit::Executable(1 << 8)The Executable attribute is writable.
QOpcUa::WriteMaskBit::Historizing(1 << 9)The Historizing attribute is writable.
QOpcUa::WriteMaskBit::InverseName(1 << 10)The InverseName attribute is writable.
QOpcUa::WriteMaskBit::IsAbstract(1 << 11)The IsAbstract attribute is writable.
QOpcUa::WriteMaskBit::MinimumSamplingInterval(1 << 12)The MinimumSamplingInterval attribute is writable.
QOpcUa::WriteMaskBit::NodeClass(1 << 13)The NodeClass attribute is writable.
QOpcUa::WriteMaskBit::NodeId(1 << 14)The NodeId attribute is writable.
QOpcUa::WriteMaskBit::Symmetric(1 << 15)The Symmetric attribute is writable.
QOpcUa::WriteMaskBit::UserAccessLevel(1 << 16)The UserAccessLevel attribute is writable.
QOpcUa::WriteMaskBit::UserExecutable(1 << 17)The UserExecutable attribute is writable.
QOpcUa::WriteMaskBit::UserWriteMask(1 << 18)The UserWriteMask attribute is writable.
QOpcUa::WriteMaskBit::ValueRank(1 << 19)The ValueRank attribute is writable.
QOpcUa::WriteMaskBit::WriteMask(1 << 20)The WriteMask attribute is writable.
QOpcUa::WriteMaskBit::ValueForVariableType(1 << 21)The Value attribute of a variable type is writable.

The WriteMask type is a typedef for QFlags<WriteMaskBit>. It stores an OR combination of WriteMaskBit values.

Function Documentation

QOpcUa::ErrorCategory QOpcUa::errorCategory(QOpcUa::UaStatusCode statusCode)

Converts statusCode to an ErrorCategory. ErrorCategory can be used in cases where the exact error is not important.

For error handling dependent on status codes, the full status code must be used instead. The meaning of the status codes for the different services is documented in OPC UA part 4.

If statusCode has not been categorized, UnspecifiedError is returned. In this case, the user must check the full status code.

[since QtOpcUa 5.14] bool QOpcUa::isSecurePolicy(const QString &securityPolicy)

Returns true if securityPolicy is a secure policy, false otherwise.

This function was introduced in QtOpcUa 5.14.

bool QOpcUa::isSuccessStatus(QOpcUa::UaStatusCode statusCode)

This method can be used to check if a call has successfully finished.

Returns true if statusCode's severity field is Good.

QOpcUa::Types QOpcUa::metaTypeToQOpcUaType(QMetaType::Type type)

Returns the Qt OPC UA type from type. In case the type does not map, QOpcUa::Undefined is returned.

QString QOpcUa::namespace0Id(QOpcUa::NodeIds::Namespace0 id)

Returns a node id string for the namespace 0 identifier id.

QOpcUa::NodeIds::Namespace0 QOpcUa::namespace0IdFromNodeId(const QString &nodeId)

Returns the enum value from QOpcUa::NodeIds::Namespace0 for nodeId.

If the node id is not in namespace 0 or doesn't have a numeric identifier which is part of the OPC Foundation's NodeIds.csv file, Unknown is returned.

If Qt OPC UA has been configured with -no-feature-ns0idnames, the check if the numeric identifier is part of the NodeIds.csv file is omitted. If the node id is in namespace 0 and has a numeric identifier, the identifier is returned regardless if it is part of the QOpcUa::NodeIds::Namespace0 enum.

QString QOpcUa::namespace0IdName(QOpcUa::NodeIds::Namespace0 id)

Returns the name of the namespace 0 node id id.

If id is unknown or Qt OPC UA has been configured with -no-feature-ns0idnames, an empty string is returned.

bool QOpcUa::nodeIdEquals(const QString &first, const QString &second)

Returns true if the two node ids first and second have the same namespace index and identifier. A node id string without a namespace index is assumed to be in namespace 0.

QString QOpcUa::nodeIdFromByteString(quint16 ns, const QByteArray &identifier)

Creates a node id string from the namespace index ns and the byte string identifier.

See also QOpcUaNode.

QString QOpcUa::nodeIdFromGuid(quint16 ns, const QUuid &identifier)

Creates a node id string from the namespace index ns and the GUID identifier.

See also QOpcUaNode.

QString QOpcUa::nodeIdFromInteger(quint16 ns, quint32 identifier)

Creates a node id string from the namespace index ns and the integer identifier.

See also QOpcUaNode.

QString QOpcUa::nodeIdFromReferenceType(QOpcUa::ReferenceTypeId referenceType)

Creates a node id string for the reference type id referenceType.

QString QOpcUa::nodeIdFromString(quint16 ns, const QString &identifier)

Creates a node id string from the namespace index ns and the string identifier.

See also QOpcUaNode.

bool QOpcUa::nodeIdStringSplit(const QString &nodeIdString, quint16 *nsIndex, QString *identifier, char *identifierType)

Splits the node id string nodeIdString in its components. The namespace index of the node id will be copied into nsIndex. The identifier string is copied into identifier and the identifier type (i, s, g, b) is copied into identifierType.

Returns true if the node id could be split successfully.

For example, "ns=1;s=MyString" is split into 1, 's' and "MyString". If no namespace index is given, ns=0 is assumed.

size_t QOpcUa::qHash(const QOpcUa::NodeAttribute &attr)

Returns a QHash key for attr.

QString QOpcUa::statusToString(QOpcUa::UaStatusCode statusCode)

Returns a textual representation of statusCode.

Currently, this is the name of the enum value but may be a real message in future releases.