Scope rules – Echelon Neuron C User Manual
Page 121

Neuron C Programmer’s Guide
109
fb_properties {
cpGain,
static
cpUpdateRate,
global
cpBypassTime
};
fblock SFPTopenLoopSensor {
nvoVolt[0] implements nvoValue;
} fbVoltMeter[NUM_PHASES] external_name("AmpereMeter")
fb_properties {
cpGain,
static
cpUpdateRate,
global
cpBypassTime
};
Scope Rules
When adding implementation-specific network variables or configuration
properties to a standard or user functional profile, you must ensure that the
scope of the resource definition for the additional item is numerically less than or
equal to the scope of the functional profile.
For example, if you add an implementation-specific network variable or
configuration property to a standard functional block (SFPT, scope 0), you must
define that configuration property with a standard type (SCPT), and use a
standard network variable type (SNVT) for the implementation-specific network
variable.
A second example: if you implement a functional block based on a manufacturer
scope (scope 3) resource file, you can add an implementation-specific network
variable or configuration property that is defined in the same scope 3 resource
file, and you can also add an implementation-specific network variable or
configuration property defined by a SNVT or SCPT.
You can add implementation-specific members to standard functional profiles
using inheritance by performing the following steps:
1
Use the NodeBuilder Resource Editor to create a user functional profile
with the same functional profile key as the standard functional profile
you wish to inherit from.
2 Set
Inherit Members from Scope 0 in the functional profile definition.
This setting makes all members of the standard functional profile part of
your user functional profile.
3
Declare a functional block based on the new user functional profile.
4
Add implementation-specific members to the functional block. These
members can be implemented using user-defined UNVT or UCPT types,
themselves defined at the same scope as the inheriting functional profile.
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.
Alternatively, you can create a functional profile that inherits members from a
standard functional profile, and add your own profile-specific members to the
functional profile, by performing the following steps: