Management of complex variables at runtime

The following option in the "Enhanced" tab of the compiling options dialog box defines how complex variables are managed at runtime:

Store complex variables in a separate segment

If this options is set, then all complex variables are stored separately from other variables in the memory of the T5 runtime. If not, complex variables are stored together with single variables.

Warning: this option is not supported by T5 runtimes version 2.20 or earlier.

This option must be used carefully. Setting upt this option enables more programming possibility regarding complex variables and extends the capacity of the runtime memory. On another hand, the runtime application may have lower performance when this option is set. It is recommended to keep this option off as far as you do not need extra features related to it. This ensures that your application has highest runtiume performances.

Complex variables are arrays, structures, and instances of function blocks. When this option is set, the following features are allowed for programming:

- you can use arrays of structures
- you can use arrays of FB instances
- you can pass any complex data (array, structure, instance) to a UDFB or sub-program
- there is nearly no limitation in the amount of complex data declared
  (theorically up to 4GB - but practically limited by the memory available in the runtime)