Reference
IOpcNode Members
Defines an interface which can be used to access and change the properties of a node and to notify about the changes performed on it.
Reference
IOpcNode Members
- Type
- IOpcNode
- Namespace
- Opc.UaFx
- Assembly
- Opc.UaFx.Advanced.dll
- Package
- Opc.UaFx.Advanced v2.59.0
- Also in
- Opc.UaFx.Client
Inherits members from IOpcNodeInfo.
Properties
Description
Gets or sets the value of the optional Description attribute which shall explain the meaning of the node.
OpcText Description { get; set; }Property Description As OpcTextProperty value
A localizable instance of the OpcText class which optionally explains the meaning of the node or a null reference (Nothing in Visual Basic) if there is no description associated with the node.
Remarks
The menaning of the node defines the usage, the context and the purpose of the node.
DisplayName
Gets or sets the value of the DisplayName attribute which defines the localizable name of the node.
OpcText DisplayName { get; set; }Property DisplayName As OpcTextProperty value
An instance of the OpcText class which defines the localizable name of the node.
Remarks
Client application should use this attribute if they want to display the name of the node to the user. The string part of the DisplayName is restricted to 512 characters.
HasPendingChanges
Gets a value indicating whether there exists any pending change on the node.
bool HasPendingChanges { get; }ReadOnly Property HasPendingChanges As BooleanProperty value
The value true if PendingChanges is not equals to None; otherwise the value false.
Name
Gets or sets the value of the BrowseName attribute which defines the non-localizable human-readable name used when browsing the address space.
OpcName Name { get; set; }Property Name As OpcNameProperty value
Remarks
The Name should never be used to display the name of the a node. Use the DisplayName instead for this purpose.
Unlike node identifiers the Name cannot be used to unambiguously identify the node. Different nodes may have the same browse name. The namespace is provided to make the browse name unique in some cases in the context of a node (e.g. properties of a node) although not unique in the context of the server. If different organizations define browse names for properties, the namespace of the Name provided by the organization makes the Name unique, although different organizations may use the same string having a slightly different meaning. Servers may often choose to use the same namespace for the node identifier and the browse name. However, if they want to provide a standard property, its browse name shall have the namespace of the standards body although the namespace of the node identifier reflects something else, for example the local server.
It is recommended that standard bodies defining standard type definitions use their namespace for the node identifier of the type definition node as well as for the browse name of the type definition node.
The string-part of the browse name is case sensitive. That is, clients shall consider them case sensitive. Server are allowed to handle browse names passed in service requests as case insensitive.
Use the value of this property to construct browse paths (see OpcNamePath).
Namespace
Gets the namespace of the node.
OpcNamespace Namespace { get; }ReadOnly Property [Namespace] As OpcNamespaceProperty value
The OpcNamespace assigned to the node or, if no namespace has been assigned to the node, the Namespace of its Id.
Parent
Gets the parent node of the node.
IOpcNode Parent { get; }ReadOnly Property Parent As IOpcNodeProperty value
An instance implementing the IOpcNode interface which represents the physical parent of the node, or a null reference (Nothing in Visual Basic) if the node only has logical parent nodes.
PendingChanges
Gets a value indicating the changes performed on the node since their last notification.
OpcNodeChanges PendingChanges { get; }ReadOnly Property PendingChanges As OpcNodeChangesProperty value
A bitwise combination of OpcNodeChanges members identifying the changes made on the node, or None if there was no change on the node since the last notification.
Remarks
Use one of the ApplyChanges overloads to notify about the changes and to reset the value of this property to None.
Tag
Gets or sets the object that contains additional user data about the node.
object Tag { get; set; }Property Tag As ObjectProperty value
An object that contains additional user data about the node. The default is null (Nothing in Visual Basic).
UserWriteAccess
Gets or sets the value of the optional UserWriteAccess attribute which exposes the possibilities of a client to write the attributes of the node taking user access rights into account.
OpcAttributeWriteAccess UserWriteAccess { get; set; }Property UserWriteAccess As OpcAttributeWriteAccessProperty value
A combination of the members defined by the OpcAttributeWriteAccess enumeration.
Remarks
The mask value of this attribute can only further restrict the WriteAccess attribute, when it is set to not writable in the general case that applies for every user.
WriteAccess
Gets or sets the value of the optional WriteAccess attribute which exposes the posibilities of a client to write the attributes of the node.
OpcAttributeWriteAccess WriteAccess { get; set; }Property WriteAccess As OpcAttributeWriteAccessProperty value
A combination of the members defined by the OpcAttributeWriteAccess enumeration.
Remarks
The mask value of this attribute does not take any user access rights into account, that is, altough an attribute is writable this may be restricted to a certain user / user group.
If a server does not have the ability to get the write mask information for a specific attribute from the underlying system, it should state that it is writable. If a write opertation is called on the attribute, the server should transfer this request and return the corresponding OpcStatusCode if such a request is rejected.
Only in case there a corresponding attribute is set in the mask of this attribute the according attribute is writable; otherwise it can not accessed for writing.
Methods
AddNotifier
Adds the node to the collection of notifiers (= event sources) of this node.
void AddNotifier(OpcContext context, IOpcNode node)Sub AddNotifier(context As OpcContext, node As IOpcNode)Parameters
| Name | Type | Description |
|---|---|---|
context | OpcContext | The OpcContext to use to add the node as the notifying event source. |
node | IOpcNode | The IOpcNode instance acting as the notifier. |
Exceptions
| Exception | Condition |
|---|---|
| Argument | The context or node is a null reference ( |
| Not | This node does not support notifiers; only object nodes do. |
ApplyChanges
| Overload | Description |
|---|---|
| ApplyChanges( | Notifies about changes performed on the node since the last notification and resets the pending changes to None. |
| ApplyChanges( | Notifies about changes performed on the node ( |
Exceptions (all overloads)
| Exception | Condition |
|---|---|
| Argument | The context is a null reference ( |
ApplyChanges(OpcContext)
Notifies about changes performed on the node since the last notification and resets the pending changes to None.
void ApplyChanges(OpcContext context)Sub ApplyChanges(context As OpcContext)Parameters
| Name | Type | Description |
|---|---|---|
context | OpcContext | The OpcContext to use to notify about changes performed on the node. |
ApplyChanges(OpcContext, bool)
Notifies about changes performed on the node (and optionally on its children) since the last notification and resets the pending changes to None.
void ApplyChanges(OpcContext context, bool recursive)Sub ApplyChanges(context As OpcContext, recursive As Boolean)Parameters
| Name | Type | Description |
|---|---|---|
context | OpcContext | The OpcContext to use to notify about changes performed on the node. |
recursive | Boolean | The value true if pending changes are to be notified for all children as well; otherwise the value false. |
Child
Retrieves the child node its Name property matches exactly the name specified.
IOpcNode Child(OpcContext context, OpcName name)Function Child(context As OpcContext, name As OpcName) As IOpcNodeParameters
| Name | Type | Description |
|---|---|---|
context | OpcContext | The OpcContext to use to lookup the requested child node. |
name | OpcName | The full qualified OpcName of the node to lookup. |
Returns
An instance implementing the IOpcNode interface its Name exactly matches the name specified, if such a node is a known child node of this node. Otherwise a null reference (Nothing in Visual Basic).
Exceptions
| Exception | Condition |
|---|---|
| Argument | The context or name is a null reference ( |
Children
Retrieves a sequence of all nodes organized as children of this node.
IEnumerable<IOpcNode> Children(OpcContext context)Function Children(context As OpcContext) As IEnumerable(Of IOpcNode)Parameters
| Name | Type | Description |
|---|---|---|
context | OpcContext | The OpcContext to use to lookup the child nodes. |
Returns
A sequence of instances implementing the IOpcNode interface which representing the nodes organized as child nodes of this node.
Exceptions
| Exception | Condition |
|---|---|
| Argument | The context is a null reference ( |
IsChangePending
Determines whether all of the changes specified by the change are pending on the node (see PendingChanges).
bool IsChangePending(OpcNodeChanges change)Function IsChangePending(change As OpcNodeChanges) As BooleanParameters
| Name | Type | Description |
|---|---|---|
change | OpcNodeChanges | A bitwise combination of OpcNodeChanges members identifying the changes to check. |
Returns
The value true if all of the changes specified by the change are pending on the node; otherwise the value false.
RemoveNotifier
Removes the node from the collection of notifiers (= event sources) of this node.
void RemoveNotifier(OpcContext context, IOpcNode node)Sub RemoveNotifier(context As OpcContext, node As IOpcNode)Parameters
| Name | Type | Description |
|---|---|---|
context | OpcContext | The OpcContext to use to remove the node as the notifying event source. |
node | IOpcNode | The IOpcNode instance no longer acting as the notifier. |
Exceptions
| Exception | Condition |
|---|---|
| Argument | The context or node is a null reference ( |

