C# project nodes

The code of a NetLogic represents the project nodes by special C# classes that contain and expose properties.

IUANode
class

Displays the following base properties of any project node:
BrowseName
The name of the node in the
FactoryTalk Optix Studio
project. Cannot be localized.
DisplayName
The name of the node, usually visible in the user interface. Can be localized in
FactoryTalk Optix Studio
.
NodeId
The unique ID for the node, automatically assigned by
FactoryTalk Optix Studio
.

IUAObject
class

Displays the properties of any instance of a project object (for example: a graphical object, alarm, driver).
It is an
IUANode
subclass, which displays all of its properties. It also exposes the
ObjectType
property, which is a reference to the object type (
IUAObjectType
class) from which the instance derives.

IUAObjectType
class

Displays the properties of any type of a project object (for example: a graphical object, alarm, driver).
It is an
IUANode
subclass, which displays all of its properties. It also exposes the
SuperType
property, which is the C# object that represents the object type from which the same
IUAObjectType
derives.

IUAVariable
class

Displays the properties of any project variable instance (base variable, analog variable, controller tag, node pointer).
It is an
IUANode
subclass, which displays all of its properties. It also exposes the following properties:
ArrayDimensions
The quantity of cells in the array.
DataType
The data type that the variable can contain (for example:
OpcUa.DataTypes.Boolean
,
OpcUa.DataTypes.Int16
).
Value
The value of the variable (
UAValue
property).
VariableType
The C# object that represents the type of the variable from which the instance derives.

IUAVariableType
class

Displays the properties of any type of a project variable.
It is an
IUANode
subclass, which displays all of its properties. It also exposes the following properties:
ArrayDimensions
The quantity of cells in the array.
DataType
The data type that the variable can contain (for example:
OpcUa.DataTypes.Boolean
,
OpcUa.DataTypes.Int16
).
SuperType
The C# object that represents the variable type from which the same
IUVariableType
derives.

UAValue
class

Displays a value. The value can then be converted to and from different types of C# data.

Classes for custom and default objects and variables

A corresponding C# class is available for any custom or default objects and variables. The class is always a subclass of
IUAObject
or
IUAVariable
, to which any properties specified in the type are added.
For example, if a
Motor
object type is created in
FactoryTalk Optix Studio
with the
Speed
and
Acceleration
properties, the
Motor
C# class is automatically created with the
Speed
,
SpeedVariable
,
Acceleration
, and
AccelerationVariable
properties.
C# default class types are defined in
FTOptix
modules. The C# classes corresponding to custom types are instead automatically created by
FactoryTalk Optix Studio
when you save the project.
TIP: In
FactoryTalk Optix Studio
, you can display the type of an object or variable selected from which an instance derives in the pane by hovering over the
Type
value.

Object properties

For each OPC UA Object Type, these C# property variants are available:
A property which name equals to the
BrowseName
of the property
Represents the value of the property (for example:
"Current speed is: "
). The value of the property is that of the same C# property (for example, string data type for
Text
).
For example, the
Text
class for the
Text
property of a
Label
object.
A property of the
IUAVariable
type which name consists of the
BrowseName
of the property and the
Variable
suffix
Represents the OPC UA node of the property. It is useful for setting dynamic links and other instructions that require access to the
IUAVariable
class of the property.
For example, the
TextVariable
property corresponds to the
Text
property of a
Label
object.
Provide Feedback
Have questions or feedback about this documentation? Please submit your feedback here.