OpcAutomatism Members

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

AlwaysParseStringIdentifiers

Gets or sets a value indicating whether a new instance of the OpcNodeId, which is created using a String as the Value, have to automatically parse the String passed to the constructor.

C#

public static bool AlwaysParseStringIdentifiers { get; set; }


Property Value

Boolean

The value true if the String passed as the Value is to be parsed automatically to determine any namespace information encoded in the String; otherwise the value false. The default value is false (since version 2.9.0.0).



Remarks

The logic behind this option is legacy and is obsolete. Beginning with version 2.9.0.0 the old automatism (parsing the node identifier value within the constructor) is only enabled if this property is set to the value true. It is recommended to port user code to take aware that the OpcNodeId uses any String passed as its Value and will not longer automatically inline parse the value for more flexibility. Is such a logic required then the node identifier is to be parsed by user code to have more transparency.

AssignDefaultNamespaceOfManager

Gets or sets a value indicating whether the OpcNodeManager base shall ensure that instances created through CreateNodes(OpcNodeReferenceCollection) do not reference a namespace equals to the Default namespace. In cases there the default namespace is referenced by the Id and the Name property of an object implementing the IOpcNode interface they are automatically adjusted to use the DefaultNamespace of their OpcNodeManager instead.

C#

public static bool AssignDefaultNamespaceOfManager { get; set; }


Property Value

Boolean

The value true if the Namespace of the Id property and the Namespace of the Name property of all IOpcNode instances is to be verified and adjusted to use the DefaultNamespace of their OpcNodeManager; otherwise the value false. The default value is true.



Remarks

Changing this property to the value false may improve the startup performance, but also requires manual ensurance of valid OpcNamespace references in OpcName and OpcNodeId instances assigned to the properties of an object implementing the IOpcNode interface.

RaiseModelChangeEvents

Gets or sets a value indicating whether model changes (see OpcModelChangeActions for the change actions supported) are to be tracked and reported for nodes in non-foundation namespaces.

C#

public static bool RaiseModelChangeEvents { get; set; }


Property Value

Boolean

The value true if model changes are to be tracked and reported according the different OpcModelChangeActions supported; otherwise the value false (the default value) to disable tracking and reporting of model changes.



Remarks

If the value of this property is equals true the application will generate OpcGeneralModelChange events for every OpcModelChangeActions performed in the address space. This behaviour can be controlled in detail per node using the methods SuspendModelChangeEvents(Boolean) and ResumeModelChangeEvents(Boolean).

UseAsyncMethodCalls

Gets or sets a value indicating whether all OpcServer objects shall process every method call asynchronously using one worker thread per method call.

C#

public static bool UseAsyncMethodCalls { get; set; }


Property Value

Boolean

The value true if every method call is to be processed parallel to each other; otherwise the value false to process method calls in their sequence. The default value is false.



Remarks

This behavior can be controlled by each node manager on its own. Just override the UseAsyncMethodCalls property and provide the value true in the node managers which shall process method calls in parallel.

Every OpcMethodNode defined with a delegate to a method its return value provides a Tasks.Task is already processed in parallel.

UseDynamic

Gets or sets a value indicating whether the SDK shall use generic types to represent OPC UA server defined custom types. To do so OPC UA client applications will determine the necessary type information from the server directly after a connection to the server has been established.

C#

public static bool UseDynamic { get; set; }


Property Value

Boolean

The value true if the SDK shall use generic types constructed from the type information offered by the server; otherwise the value false. The default value is false.

UseDynamicTypeRegistration

Gets or sets a value indicating whether OpcTypes shall automatically registered by the SDK during the first startup of an OPC UA application start up. Such a startup means in case of a client application that a client will register application defined types on its own before connecting to a server. In case of a server application the server will register application defined types on its own during its startup.

C#

public static bool UseDynamicTypeRegistration { get; set; }


Property Value

Boolean

The value true if application defined types shall automatically registered by the SDK whenever a client application connects to a server or a server starts up for the first time. The default value is true.

UseNodeNameAsDefaultDescription

Gets or sets a value indicating whether the OpcNode shall initialize the Description attribute with the Value of the Name attribute.

C#

public static bool UseNodeNameAsDefaultDescription { get; set; }


Property Value

Boolean

The value true to initialize the Description with the Value of the Name; otherwise the value false. The default value is false.

UseNodeNameAsDefaultSymbolicName

Gets or sets a value indicating whether the OpcNode shall initialize the SymbolicName property with the Value of the Name attribute.

C#

public static bool UseNodeNameAsDefaultSymbolicName { get; set; }


Property Value

Boolean

The value true to initialize the SymbolicName with the Value of the Name; otherwise the value false. The default value is false.

UseNonGenericNodeInstances

Gets or sets a value indicating whether the OpcNodeManager shall import OpcNodeSets by either creating generic base instances for every node in the nodeset defined or creating the best available implementation of the type definition a node in the nodeset points to.

C#

public static bool UseNonGenericNodeInstances { get; set; }


Property Value

Boolean

The value true if the best available implementation of the type definition a node in the nodeset points to is to be created for the node during the import of the OpcNodeSets; otherwise the value false to create generic base instances for every node instead. The default value is false.



Remarks

The 'best available implementation of a type definition' means, that e.g. 'MyFiniteStateMachine' is referenced in the OpcNodeSet however there exists no (creatable) implementation of that type definition. Therefore the creation will fall back to the base type definition. In this case this would be 'FiniteStateMachine' and will look up an implementation for that type definition.

UseNullInsteadOfEmptyArrays

Gets or sets a value indicating whether a null reference (Nothing in Visual Basic) is supported in the getters of several array / list / collection properties. A null reference (Nothing in Visual Basic) is encoded using an array size equals -1; an empty array / list / collection is encoded using an array size equals zero.

C#

public static bool UseNullInsteadOfEmptyArrays { get; set; }


Property Value

Boolean

The value true if several array / list / collection properties support a null reference (Nothing in Visual Basic); otherwise the value false. The default value is false.



Remarks

The array / list / collection properties affected are: ArrayDimensions (Argument.ArrayDimensions), ArrayDimensions (Argument.ArrayDimensions), Elements (ContentFilter.Elements) and NodePath (SimpleAttributeOperand.BrowsePath).