User guide

Neuron C Programmer’s Guide 105
Example:
network output SNVT_amp nvoAmpere;
fblock SFPTopenLoopSensor {
nvoAmpere implements nvoValue;
} fbAmpereMeter;
A Neuron C program can also implement
additional
network variables in the
functional block that are not in the lists of mandatory or optional members of the
profile. Such additional network variable members beyond the profile are called
implementation-specific
members. Declare these extra members in the member
list using the implementation_specific keyword, followed by a unique index
number, and a unique name.
Each network variable in a functional profile assigns an index number and a
member name to each profile network variable member, and the implementation-
specific member cannot use any of the index numbers or member names that the
profile has already used.
Example:
network output SNVT_amp nvoAmpere;
network output polled SNVT_time_stamp nvoInstallDate;
fblock SFPTopenLoopSensor {
nvoAmpere implements nvoValue;
nvoInstallDate implementation_specific(128)
nvoInstall;
} fbAmpereMeter;
The above example implements the nvoValue mandatory network variable of the
SFPTopenLoopSensor functional profile, and adds an implementation-specific
SNVT_time_stamp network variable with a member name of nvoInstall. The
member name, nvoInstall in this example, is typically used to refer to the
member network variable, as discussed in
Accessing Members and Properties of a
Functional Block from a Program
on page 110.
The name of the network variable, nvoInstallDate, however, is the name that is
exposed to the network integrator by means of network variable self-
documentation (SD) data and device interface files. In a network tool, the name
nvoInstall appears as the member of the functional block, wherever the network
tool uses the profile definition.
Important: Implementation-specific network variable or configuration properties
are no longer acceptable according to the rules of the interoperability application
layer guidelines, starting with version 3.4.
If you plan to submit your device for certification, you must perform one of the
following tasks:
Remove the implementation-specific items from the interoperable
interface (for example, declare them as device network variables).
Create a user-defined functional profile that includes the desired
additions, listed as mandatory or optional member NV or CP.
The implementation-specific NV member feature can also be used repeatedly to
add each element of an entire NV array to the functional block. One element is