Property list declarations – Echelon Neuron C User Manual

Page 237

Advertising
background image

Neuron C Reference Guide

217

The functional block name can specify either a scalar or a single-dimensioned

array (like a network variable declaration). The functional block can also
optionally have an external name, and this external name can either be a string

constant or a resource file reference.

fblock-name-section

:

fblock-name

fblock-external-name

fblock-name

fblock-name

:

variable-identifier

[

constant-expr

]

variable-identifier

fblock-external-name

:

external_name (

concatenated-string-constant

)

external_resource_name (

concatenated-string-constant

)

external_resource_name (

constant-expr

:

constant-expr

)

Property List Declarations

The following is Neuron C syntax for property declarations. The property

declarations for the device, for a network variable, and for a functional block are

identical in syntax except for the introductory keyword. The keywords were
designed to be different to promote readability of the Neuron C code. Although a

network variable or a functional block can only have at most one property list,

there can be any number of device property list declarations throughout a
program, and the lists are merged into a single property list for the device. This

feature promotes modularity of code.

device-property-list-declaration

:

device_properties {

property-instantiation-list

}

nv-property-list-declaration

:

nv_properties {

property-instantiation-list

}

fblock-property-list-declaration

:

fb_properties {

property-instantiation-list

}

The property instantiation list is a comma-separated list of one or more property
instantiations. A property instantiation uses the name of a previously declared

network variable configuration property or the name of a previously declared CP
family. The instantiation can optionally be followed by either an initialization or

a range-modification, or both, in either order.

property-instantiation-list

:

property-instantiation-list

,

complete-property-instantiation

complete-property-instantiation

complete-property-instantiation

:

property-instantiation

[

property-initialization

] [

range-mod

]

property-instantiation

[

range-mod

] [

property-initialization

]

property-initialization

:

=

variable-initialization

Advertising