beautypg.com

Echelon ISI User Manual

Page 66

background image

ISI Programmer’s Guide

64

Function Name

Reason to Override

IsiGetNextAssembly()

This function should be overridden when
providing for compound assemblies

involving multiple network variables,
connections involving functional blocks, or

automatic enrollment. The default

implementation returns the next assembly
number if a complementary network

variable exists for a simple connection,
using standard network variable types. The

default implementation of this function

always returns ISI_NO_ASSEMBLY for an
automatic enrollment request. To support

joining a connection with automatic

enrollment, this callback function must be
overridden.

When overriding this function, also consider
overriding the IsiGetAssembly() function.

IsiGetNextNvIndex()

This function must be overridden in order to
share a single selector among multiple

network variables. The default
implementation always returns

ISI_NO_INDEX.

This function is rarely overridden, but if you

do, consider also overriding the
IsiGetNvIndex() function.

IsiGetNvIndex()

This function must be overridden in order to

provide for compound assemblies involving
multiple network variables. The default

implementation returns

Assembly

+

Offset

.

This function is commonly overridden. Also

consider overriding the
IsiGetNextNvIndex() function.

IsiGetPrimaryDid()

This function can be overridden when using
a non-standard domain ID as the default

domain ID. The default implementation

returns a 3 byte domain, the ASCII values
of the characters “ISI”. Devices using this

override may not be ISI compatible.

IsiGetWidth()

This function must be overridden when an
assembly has a width greater then 1. The

default implementation always returns 1.