OpcNode Members

Namespace: Opc.UaFx
Assemblies: Opc.UaFx.Advanced.dll, Opc.UaFx.Advanced.dll
The OpcNode type exposes the following members.

AfterAdded

Occurs after the node has been added to the address space.

C#

public event OpcNodeAddedEventHandler AfterAdded

AfterApplyChanges

Occurs after one or more changes on the node has been notified.

C#

public event OpcNodeChangesEventHandler AfterApplyChanges


Remarks

The changes notified either belong to the PendingChanges or to changes on behalf of the node.

BeforeAdded

Occurs before the node is added to the address space.

C#

public event OpcNodeAddedEventHandler BeforeAdded

BeforeApplyChanges

Occurs before one or more changes on the node are notified.

C#

public event OpcNodeChangesEventHandler BeforeApplyChanges


Remarks

The changes notified either belong to the PendingChanges or to changes on behalf of the node.

ChangesUnhandled

Occurs when changes applied with ApplyChanges(OpcContext) are not monitored or discarded by all monitored items.

C#

public event OpcNodeChangesEventHandler ChangesUnhandled

Category

Gets the NodeCategoryOpcAttribute which identifies the kind of node and is therefore used to classify the node regarding its use and purpose.

C#

public OpcNodeCategory Category { get; }


Property Value

OpcNodeCategory

One of the members defined by the OpcNodeCategory enumeration.

Description

Gets or sets the value of the optional DescriptionOpcAttribute which shall explain the meaning of the node.

C#

public OpcText Description { get; set; }


Property Value

OpcText

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.

Descriptions

Gets the OpcNodeGlobalization instance used to control the localization and other globalization related tasks for the Description attribute of the current node.

C#

public OpcNodeGlobalization Descriptions { get; }


Property Value

OpcNodeGlobalization

An instance of the OpcNodeGlobalization class used by the current OpcNode to perform localization tasks for its Description.

DisplayName

Gets or sets the value of the DisplayNameOpcAttribute which defines the localizable name of the node.

C#

public OpcText DisplayName { get; set; }


Property Value

OpcText

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.

DisplayNames

Gets the OpcNodeGlobalization instance used to control the localization and other globalization related tasks for the DisplayName attribute of the current node.

C#

public OpcNodeGlobalization DisplayNames { get; }


Property Value

OpcNodeGlobalization

An instance of the OpcNodeGlobalization class used by the current OpcNode to perform localization tasks for its DisplayName.

HasPendingChanges

Gets a value indiciating whether there exists any pending change on the node.

C#

public bool HasPendingChanges { get; }


Property Value

Boolean

The value true if PendingChanges is not equals to None; otherwise the value false.

Id

Gets the value of the NodeIdOpcAttribute which unambiguously identifies the node.

C#

public OpcNodeId Id { get; }


Property Value

OpcNodeId

An instance of the OpcNodeId class representing the unambiguously identifier of the node.



Remarks

Some servers may accept alternative node identifiers in addition to the canonical node identifier represented by this attribute.

A server shall persist the node identifier of a node, that is, it shall not generate new node identifiers when rebooting.

Model

Gets the OpcNodeModel which has been used to model this OpcNode regarding its whole representation in the address space.

C#

public OpcNodeModel Model { get; }


Property Value

OpcNodeModel

An instance of the OpcNodeModel class which provides the modelling directives to use to model the whole node tree of this OpcNode.

Name

Gets or sets the value of the BrowseNameOpcAttribute which defines the non-localizable human-readable name used when browsing the address space.

C#

public OpcName Name { get; set; }


Property Value

OpcName



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

C#

public OpcNamespace Namespace { get; }


Property Value

OpcNamespace

Parent

Gets the parent node of the node.

C#

public virtual IOpcNode Parent { get; }


Property Value

IOpcNode

An instance implementing the IOpcNode interface which represents the phyiscal parent of the node. In general a node can have multiple (logical) parent nodes, but this property provides the only physical parent node of the node. The value can also be a null reference (Nothing in Visual Basic) in case there the node does only have logical parent nodes.

PendingChanges

Gets a value indicating the most recent changes performed on the node since their last notification.

C#

public OpcNodeChanges PendingChanges { get; }


Property Value

OpcNodeChanges

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 change notification.



Remarks

Use one of the ApplyChanges(OpcContext) overloads to reset the value of this property to None or use one of the UpdateChanges(OpcContext, OpcNodeChanges) overloads to partially reset the pending changes.

QueryEventsCallback

Gets or sets a callback used to query any event information which belongs to the node.

C#

public OpcQueryEventsCallback QueryEventsCallback { get; set; }


Property Value

OpcQueryEventsCallback

A OpcQueryEventsCallback used to query any event information which belongs to the node. The value can also be a null reference (Nothing in Visual Basic).

ReadDescriptionCallback

C#

public OpcReadAttributeValueCallback<OpcText> ReadDescriptionCallback { get; set; }


Property Value

OpcReadAttributeValueCallback<OpcText>

ReadDisplayNameCallback

C#

public OpcReadAttributeValueCallback<OpcText> ReadDisplayNameCallback { get; set; }


Property Value

OpcReadAttributeValueCallback<OpcText>

ReadUserWriteAccessCallback

C#

public OpcReadAttributeValueCallback<OpcAttributeWriteAccess> ReadUserWriteAccessCallback { get; set; }


Property Value

OpcReadAttributeValueCallback<OpcAttributeWriteAccess>

ReadWriteAccessCallback

C#

public OpcReadAttributeValueCallback<OpcAttributeWriteAccess> ReadWriteAccessCallback { get; set; }


Property Value

OpcReadAttributeValueCallback<OpcAttributeWriteAccess>

SymbolicName

C#

public string SymbolicName { get; set; }


Property Value

String

Tag

Gets or sets the object that contains additional user data about the node.

C#

public object Tag { get; set; }


Property Value

Object

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 UserWriteAccessOpcAttribute which exposes the possibilities of a client to write the attributes of the node taking user access rights into account.

C#

public OpcAttributeWriteAccess UserWriteAccess { get; set; }


Property Value

OpcAttributeWriteAccess

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 WriteAccessOpcAttribute which exposes the posibilities of a client to write the attributes of the node.

C#

public OpcAttributeWriteAccess WriteAccess { get; set; }


Property Value

OpcAttributeWriteAccess

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.

WriteDescriptionCallback

C#

public OpcWriteAttributeValueCallback<OpcText> WriteDescriptionCallback { get; set; }


Property Value

OpcWriteAttributeValueCallback<OpcText>

WriteDisplayNameCallback

C#

public OpcWriteAttributeValueCallback<OpcText> WriteDisplayNameCallback { get; set; }


Property Value

OpcWriteAttributeValueCallback<OpcText>

WriteUserWriteAccessCallback

C#

public OpcWriteAttributeValueCallback<OpcAttributeWriteAccess> WriteUserWriteAccessCallback { get; set; }


Property Value

OpcWriteAttributeValueCallback<OpcAttributeWriteAccess>

WriteWriteAccessCallback

C#

public OpcWriteAttributeValueCallback<OpcAttributeWriteAccess> WriteWriteAccessCallback { get; set; }


Property Value

OpcWriteAttributeValueCallback<OpcAttributeWriteAccess>

AddNotifier(OpcContext, IOpcNode)

When implemented in a subtype, adds the node to the collection of notifiers (= event sources) of this node.

C#

public virtual void AddNotifier(OpcContext context, IOpcNode node)


Parameters

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

ArgumentNullException

The context or node is null reference (Nothing in Visual Basic).

NotSupportedException

Adding notifiers is only supported on OpcObjectNode and its subclasses.


Remarks

If the node is the first notifier being added to the collection of notifiers the EventNotifier attribute of this OpcObjectNode is set to 'SubscribeToEvents'.

ApplyChanges(OpcContext)

Notifies about changes performed on the node since the last notification and resets the pending changes to None.

C#

public virtual void ApplyChanges(OpcContext context)


Parameters

context OpcContext

The OpcContext to use to notify about changes performed on the node.



Exceptions

ArgumentNullException

The context is a null reference (Nothing in Visual Basic).


Remarks

This method influences the value of the properties PendingChanges and HasPendingChanges. After a call to ApplyChanges(OpcContext) the PendingChanges property returns None and the HasPendingChanges the value false.

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.

C#

public virtual void ApplyChanges(OpcContext context, bool recursive)


Parameters

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.



Exceptions

ArgumentNullException

The context is a null reference (Nothing in Visual Basic).


Remarks

This method influences the value of the properties PendingChanges and HasPendingChanges. After a call to ApplyChanges(OpcContext, Boolean) the PendingChanges property returns None and the HasPendingChanges the value false.

AttributeValue(OpcAttribute)

Retrieves the value of the attribute specified.

C#

public object AttributeValue(OpcAttribute attribute)


Parameters

attribute OpcAttribute

One of the members defined by the OpcAttribute enumeration which identifies the attribute its value is queried.


Returns

Object

The value of the attribute specified or a null reference (Nothing in Visual Basic) in case there the value of the attribute is a null reference or it is not supported by the current OpcNode.

AttributeValue<T>(OpcAttribute)

Retrieves the value of the attribute specified.

C#

public T AttributeValue<T>(OpcAttribute attribute)


Parameters

attribute OpcAttribute

One of the members defined by the OpcAttribute enumeration which identifies the attribute its value is queried.


Returns

T

The value of the attribute as the type T specified or the default value of the type T in case there the value of the attribute is a null reference (Nothing in Visual Basic) or it is not supported by the current OpcNode.

Child(OpcContext, OpcName)

Retrieves the child node its Name property matches exactly the name specified.

C#

public IOpcNode Child(OpcContext context, OpcName name)


Parameters

context OpcContext

The OpcContext to use to lookup the requested child node.

name OpcName

The full qualified OpcName of the node to lookup.


Returns

IOpcNode

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

ArgumentNullException

The context or name is a null reference (Nothing in Visual Basic).

ChildModel(OpcName)

C#

protected OpcNodeModel ChildModel(OpcName name)


Parameters

name OpcName



Returns

OpcNodeModel

ChildModellingDirective(OpcName)

C#

protected OpcModellingDirective ChildModellingDirective(OpcName name)


Parameters

name OpcName



Returns

OpcModellingDirective

Children(OpcContext)

Retrieves a sequence of all nodes organized as children of this node.

C#

public IEnumerable<IOpcNode> Children(OpcContext context)


Parameters

context OpcContext

The OpcContext to use to lookup the child nodes.


Returns

IEnumerable<IOpcNode>

A sequence of instances implementing the IOpcNode interface which representing the nodes organized as child nodes of this node.



Exceptions

ArgumentNullException

The context is a null reference (Nothing in Visual Basic).

DefineModel<T>(OpcModellingRule, OpcNamePath)

Defines a model rule for the model of the node type specified by T using the rule which is to be applied to the node known under the path passed.

C#

protected static void DefineModel<T>(OpcModellingRule rule, OpcNamePath path) where T : OpcNode


Parameters

rule OpcModellingRule

The OpcModellingRule to apply.

path OpcNamePath

The OpcNamePath to the node affected.



Exceptions

ArgumentNullException

The path is a null reference (Nothing in Visual Basic).

DefineModel<T>(OpcModellingRule, params OpcName[])

Defines a model rule for the model of the node type specified by T using the rule which is to be applied to the node known under the pathElements passed.

C#

protected static void DefineModel<T>(OpcModellingRule rule, params OpcName[] pathElements) where T : OpcNode


Parameters

rule OpcModellingRule

The OpcModellingRule to apply.

pathElements OpcName[]

The OpcName's to the node affected.

GetType(OpcNodeId)

Retrieves the Type which implementes the node type which is identified by the typeId specified.

C#

public static Type GetType(OpcNodeId typeId)


Parameters

typeId OpcNodeId

The OpcNodeId which identifies the Type to retrieve.


Returns

Type

The Type which is known under the typeId specified or a null reference (Nothing in Visual Basic) if there doesn't exist a known Type which is associated with the typeId specified.



Exceptions

ArgumentNullException

The typeId is a null reference (Nothing in Visual Basic).

GetTypeInfo(OpcNodeId)

Retrieves the OpcNodeTypeInfo which declares the node type which is identified by the typeId specified.

C#

public static OpcNodeTypeInfo GetTypeInfo(OpcNodeId typeId)


Parameters

typeId OpcNodeId

The OpcNodeId which identifies the OpcNodeTypeInfo to retrieve.


Returns

OpcNodeTypeInfo

The OpcNodeTypeInfo which is known under the typeId specified or a null reference (Nothing in Visual Basic) if there doesn't exist a known OpcNodeTypeInfo which is associated with the typeId specified.



Exceptions

ArgumentNullException

The typeId is a null reference (Nothing in Visual Basic).

GetTypeInfo(Type)

Retrieves the OpcNodeTypeInfo which declares the node type implemented by the underlyingType specified.

C#

public static OpcNodeTypeInfo GetTypeInfo(Type underlyingType)


Parameters

underlyingType Type

The Type which implements the OpcNodeTypeInfo to retrieve.


Returns

OpcNodeTypeInfo

The OpcNodeTypeInfo which declares the underlyingType specified or a null reference (Nothing in Visual Basic) if there isn't a OpcNodeTypeInfo associated with the underlyingType specified.



Exceptions

ArgumentNullException

The underlyingType is a null reference (Nothing in Visual Basic).

GetTypeInfo<T>()

Retrieves the OpcNodeTypeInfo which declares the node type implemented by the T specified.

C#

public static OpcNodeTypeInfo GetTypeInfo<T>()


Returns

OpcNodeTypeInfo

The OpcNodeTypeInfo which declares the T specified or a null reference (Nothing in Visual Basic) if there isn't a OpcNodeTypeInfo associated with the T specified.

Implement(OpcContext)

Performs node specific implementation tasks to finalize the node creation before it can be used for the first time.

C#

protected virtual void Implement(OpcContext context)


Parameters

context OpcContext

The OpcContext to use to implement the node.

InitializeDefaults()

Initializes the default values used by the node implementation represented / required.

C#

protected virtual void InitializeDefaults()


Remarks

This method is always called by the lowest constructor of the OpcNode constructor chain to initialize all default values which are explicitly necessary before the node is (for example) added as a child node of another node. In case there a parent node is passed to constructor this becomes essential to ensure that the node is initialized appropriately before it is added to the parent.

Only implement this method in case there is a custom node setup required (typically performed within the custom constructor). Any code for member field initialization or additional logic can be kept in the constructor.

IsChangePending(OpcNodeChanges)

C#

public bool IsChangePending(OpcNodeChanges change)


Parameters

change OpcNodeChanges



Returns

Boolean

OnAfterAdded(OpcNodeAddedEventArgs)

Raises the AfterAdded event using the event data specified.

C#

protected virtual void OnAfterAdded(OpcNodeAddedEventArgs e)


Parameters

e OpcNodeAddedEventArgs

The OpcNodeAddedEventArgs with the event data.

OnAfterApplyChanges(OpcNodeChangesEventArgs)

Raises the AfterApplyChanges event using the event data specified.

C#

protected virtual void OnAfterApplyChanges(OpcNodeChangesEventArgs e)


Parameters

e OpcNodeChangesEventArgs

The OpcNodeChangesEventArgs with the event data.

OnBeforeAdded(OpcNodeAddedEventArgs)

Raises the BeforeAdded event using the event data specified.

C#

protected virtual void OnBeforeAdded(OpcNodeAddedEventArgs e)


Parameters

e OpcNodeAddedEventArgs

The OpcNodeAddedEventArgs with the event data.

OnBeforeApplyChanges(OpcNodeChangesEventArgs)

Raises the BeforeApplyChanges event using the event data specified.

C#

protected virtual void OnBeforeApplyChanges(OpcNodeChangesEventArgs e)


Parameters

e OpcNodeChangesEventArgs

The OpcNodeChangesEventArgs with the event data.

OnChangesUnhandled(OpcNodeChangesEventArgs)

Raises the ChangesUnhandled event using the event data specified.

C#

protected virtual void OnChangesUnhandled(OpcNodeChangesEventArgs e)


Parameters

e OpcNodeChangesEventArgs

The OpcNodeChangesEventArgs with the event data.

QueryEventsCore(OpcNodeContext, OpcEventCollection)

C#

protected virtual void QueryEventsCore(OpcNodeContext context, OpcEventCollection events)


Parameters

context OpcNodeContext


events OpcEventCollection


ReadAttributeValueCore<T>(OpcReadAttributeValueContext, OpcAttributeValue<T>)

C#

protected virtual OpcAttributeValue<T> ReadAttributeValueCore<T>(OpcReadAttributeValueContext context, OpcAttributeValue<T> value)


Parameters

context OpcReadAttributeValueContext


value OpcAttributeValue<T>



Returns

OpcAttributeValue<T>

References()

Retrieves a sequence of immutable references between this node and other nodes.

C#

public virtual IEnumerable<OpcReference> References()


Returns

IEnumerable<OpcReference>

A sequence of OpcReference instances providing hierarchical and non-hierarchical references from this node to other nodes.

RegisterType(Type)

Registers the nodeType specified as the node object type to create in case there a node instance is to be created for the type node identified by the OpcNodeTypeAttribute defined on the nodeType specified.

C#

public static void RegisterType(Type nodeType)


Parameters

nodeType Type

The Type to use in case there a node object for the node type equals to the node type identifier defined using the OpcNodeTypeAttribute is to be created. The type needs be a subclass of the OpcNode class.



Exceptions

ArgumentException

The nodeType uses any node type specific attribute which offers invalid information about the node type to associate with the Type.

ArgumentNullException

The nodeType is a null reference (Nothing in Visual Basic).

RegisterType(Type, OpcNodeId)

Registers the nodeType specified as the node object type to create in case there a node instance is to be created for the type node identified by the nodeTypeId specified.

C#

public static void RegisterType(Type nodeType, OpcNodeId nodeTypeId)


Parameters

nodeType Type

The Type to use in case there a node object for the node type equals to the node type identifier defined using the OpcNodeTypeAttribute is to be created. The type needs be a subclass of the OpcNode class.

nodeTypeId OpcNodeId

The identifier of the type node for which the nodeType is to be used to create a node object instance.



Exceptions

ArgumentException

The nodeType uses any node type specific attribute which offers invalid information about the node type to associate with the Type.

ArgumentNullException

The nodeType or nodeTypeId is a null reference (Nothing in Visual Basic).


Remarks

It is not possible to register the same or a different node type for the nodeTypeId specified as long there is already a node type registered for the type node specified by nodeTypeId.

RegisterType<T>()

Registers the type defined by T as the node object type to create in case there a node instance is to be created for the type definition identified by the OpcNodeTypeAttribute defined on the T specified.

C#

public static void RegisterType<T>()



Exceptions

ArgumentException

The type T uses any node type specific attribute which offers invalid information about the node type to associate with the Type.

RegisterType<T>(OpcNodeId)

Registers the type defined by T as the node object type to create in case there a node instance is to be created for the type definition identified by the nodeTypeId specified.

C#

public static void RegisterType<T>(OpcNodeId nodeTypeId)


Parameters

nodeTypeId OpcNodeId

The identifier of the type node for which the T is to be used to create a node object instance.



Exceptions

ArgumentException

The type T uses any node type specific attribute which offers invalid information about the node type to associate with the Type.

ArgumentNullException

The nodeTypeId is a null reference (Nothing in Visual Basic).


Remarks

It is not possible to register the same or a different node type for the nodeTypeId specified as long there is already a node type registered for the type node specified by nodeTypeId.

RegisterTypes(Assembly)

Registers all non-abstract types in the assembly specified which defines the OpcNodeTypeAttribute.

C#

public static void RegisterTypes(Assembly assembly)


Parameters

assembly Assembly

The Assembly its types are inspected for types which using the OpcNodeTypeAttribute.



Exceptions

ArgumentException

A Type does not use any node type specific attribute which offers invalid information about the node type to associate with the Type.

ArgumentNullException

The assembly is a null reference (Nothing in Visual Basic).


Remarks

The Type instances to register need to define the OpcNodeTypeAttribute and needs to be a subclass of the OpcNode class.

RegisterTypes(IEnumerable<Type>)

Registers the nodeTypes specified as the node object type to create in case there a node instance is to be created for the type nodes identified by the OpcEventTypeAttribute used on one of the nodeTypes specified.

C#

public static void RegisterTypes(IEnumerable<Type> nodeTypes)


Parameters

nodeTypes IEnumerable<Type>

A sequence of Type instances representing the types to use in case there a node object for the node type equals to the node type identifier defined using the OpcNodeTypeAttribute is to be created.



Exceptions

ArgumentException

A Type does not use any node type specific attribute which offers invalid information about the node type to associate with the Type.

ArgumentNullException

The nodeTypes is a null reference (Nothing in Visual Basic).


Remarks

Any null reference (Nothing in Visual Basic) in nodeTypes is ignored.

RegisterTypes(Type, params Type[])

Registers the nodeType and the further specified nodeTypes as the node object type to create in case there a node instance is to be created for the type node identified by the OpcNodeTypeAttribute used on the nodeType or on one of the nodeTypes specified.

C#

public static void RegisterTypes(Type nodeType, params Type[] nodeTypes)


Parameters

nodeType Type

The Type instance to use in case there a node object for the node type equals to the node type identifier defined using the OpcNodeTypeAttribute is to be created.

nodeTypes Type[]

An array of additional Type instances to use in case there a node object for the node types equals to the node type identifier defined using the OpcNodeTypeAttribute is to be created.



Exceptions

ArgumentException

A Type does not use any node type specific attribute which offers invalid information about the node type to associate with the Type.

ArgumentNullException

The nodeType or nodeTypes is a null reference (Nothing in Visual Basic).

RemoveNotifier(OpcContext, IOpcNode)

Removes the node from the collection of notifiers (= event sources) of this node.

C#

public virtual void RemoveNotifier(OpcContext context, IOpcNode node)


Parameters

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

ArgumentNullException

The context or node is a null reference (Nothing in Visual Basic).

ReportEvent(OpcContext, OpcEvent)

Reports the eventData specified to all nodes this OpcNode is a notifier of.

C#

public void ReportEvent(OpcContext context, OpcEvent eventData)


Parameters

context OpcContext

The OpcContext to use to notify about the eventData.

eventData OpcEvent

The OpcEvent instance to report.



Exceptions

ArgumentException

The eventData does not provide a OpcEventNodeSnapshot.

ArgumentNullException

The context or eventData is a null reference (Nothing in Visual Basic).

ResumeModelChangeEvents(bool)

Resumes model change tracking and events for this OpcNode and optionally for all children.

C#

public void ResumeModelChangeEvents(bool recursive = false)


Parameters

recursive Boolean

The value true if model changes are to be resumed for all children as well; otherwise the value false.

SuspendModelChangeEvents(bool)

Temporarily suspends model change tracking and events for this OpcNode and optionally for all children.

C#

public void SuspendModelChangeEvents(bool recursive = false)


Parameters

recursive Boolean

The value true if model changes are to be suspended for all children as well; otherwise the value false.

UnregisterType<T>()

Unregisters the previously registered (see RegisterType´´1) type defined by T as the Object type to not longer create for the type node identified by the OpcNodeTypeAttribute defined on the T specified.

C#

public static void UnregisterType<T>()

UnregisterType<T>(OpcNodeId)

Unregisters the previously registered (see RegisterType´´1(OpcNodeId)) type defined by T as the Object type to not longer create for the type node identified by the nodeTypeId specified.

C#

public static void UnregisterType<T>(OpcNodeId nodeTypeId)


Parameters

nodeTypeId OpcNodeId

The identifier of the type node for which the T is to be unregistered.



Exceptions

ArgumentNullException

The nodeTypeId is a null reference (Nothing in Visual Basic).

UnregisterTypes(Assembly)

Unregisters all previously registered types (see RegisterTypes(Assembly)) in the assembly specified.

C#

public static void UnregisterTypes(Assembly assembly)


Parameters

assembly Assembly

The Assembly its types are inspected for types using the OpcNodeTypeAttribute.



Exceptions

ArgumentNullException

The assembly is a null reference (Nothing in Visual Basic).

UnregisterTypes(IEnumerable<Type>)

Unregisters the previously registered (see RegisterTypes(IEnumerable)) nodeTypes specified.

C#

public static void UnregisterTypes(IEnumerable<Type> nodeTypes)


Parameters

nodeTypes IEnumerable<Type>

A sequence of Type instances to unregister for the node types equals to the node type identifiers defined using the OpcNodeTypeAttribute.



Exceptions

ArgumentNullException

The nodeTypes is a null reference (Nothing in Visual Basic).

UnregisterTypes(Type, params Type[])

Unregisters the previously registered nodeType and the further specified nodeTypes (see RegisterTypes(Type, Type)).

C#

public static void UnregisterTypes(Type nodeType, params Type[] nodeTypes)


Parameters

nodeType Type

The Type instance to unregister for the node types equals to the node type identifiers defined using the OpcNodeTypeAttribute.

nodeTypes Type[]




Exceptions

ArgumentNullException

The nodeType or nodeTypes is a null reference (Nothing in Visual Basic).

UpdateChanges(OpcContext, OpcNodeChanges)

Notifies about the changes on behalf of the node and removes pending changes which intersect with the changes specified.

C#

public void UpdateChanges(OpcContext context, OpcNodeChanges changes)


Parameters

context OpcContext

The OpcContext to use to notify about the changes.

changes OpcNodeChanges

A bitwise combination of OpcNodeChanges members to use to notify changes on behalf of the node.



Exceptions

ArgumentNullException

The context is a null reference (Nothing in Visual Basic).


Remarks

This method influences the value of the properties PendingChanges and HasPendingChanges.

UpdateChanges(OpcContext, OpcNodeChanges, bool)

Notifies about the changes on behalf of the node (and optionally on its children) and removes pending changes which intersect with the changes specified.

C#

public void UpdateChanges(OpcContext context, OpcNodeChanges changes, bool recursive)


Parameters

context OpcContext

The OpcContext to use to notify about changes performed on the node.

changes OpcNodeChanges

A bitwise combination of OpcNodeChanges members to use to notify changes on behalf of the node (and its children).

recursive Boolean

The value true if the changes are to be notified for all children as well; otherwise the value false.



Exceptions

ArgumentNullException

The context is a null reference (Nothing in Visual Basic).


Remarks

This method influences the value of the properties PendingChanges and HasPendingChanges.

WriteAttributeValueCore<T>(OpcWriteAttributeValueContext, OpcAttributeValue<T>)

C#

protected virtual OpcAttributeValue<T> WriteAttributeValueCore<T>(OpcWriteAttributeValueContext context, OpcAttributeValue<T> value)


Parameters

context OpcWriteAttributeValueContext


value OpcAttributeValue<T>



Returns

OpcAttributeValue<T>